on-zero 0.6.8 → 0.6.9

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 (108) hide show
  1. package/dist/cjs/combineZeroClients.native.js.map +1 -1
  2. package/dist/cjs/createPermissions.native.js.map +1 -1
  3. package/dist/cjs/createSchemaFromDrizzle.native.js.map +1 -1
  4. package/dist/cjs/createUseQuery.native.js.map +1 -1
  5. package/dist/cjs/createUseQueryDirect.native.js.map +1 -1
  6. package/dist/cjs/createZeroClient.authData.test.native.js.map +1 -1
  7. package/dist/cjs/createZeroClient.cjs +6 -8
  8. package/dist/cjs/createZeroClient.connection.test.native.js.map +1 -1
  9. package/dist/cjs/createZeroClient.native.js +11 -8
  10. package/dist/cjs/createZeroClient.native.js.map +1 -1
  11. package/dist/cjs/createZeroClient.recovery.test.native.js.map +1 -1
  12. package/dist/cjs/createZeroServer.native.js.map +1 -1
  13. package/dist/cjs/createZeroServer.test.native.js.map +1 -1
  14. package/dist/cjs/generate-helpers.native.js.map +1 -1
  15. package/dist/cjs/generate-lite.native.js.map +1 -1
  16. package/dist/cjs/generate-lite.test.native.js.map +1 -1
  17. package/dist/cjs/generate.cjs +6 -0
  18. package/dist/cjs/generate.native.js +11 -2
  19. package/dist/cjs/generate.native.js.map +1 -1
  20. package/dist/cjs/generate.test.native.js.map +1 -1
  21. package/dist/cjs/helpers/batchQuery.native.js.map +1 -1
  22. package/dist/cjs/helpers/clearZeroClientData.native.js.map +1 -1
  23. package/dist/cjs/helpers/createMutators.native.js.map +1 -1
  24. package/dist/cjs/helpers/createMutators.test.native.js.map +1 -1
  25. package/dist/cjs/helpers/didRunPermissionCheck.native.js.map +1 -1
  26. package/dist/cjs/helpers/ensureLoggedIn.native.js.map +1 -1
  27. package/dist/cjs/helpers/getAuth.native.js.map +1 -1
  28. package/dist/cjs/helpers/mutatorContext.native.js.map +1 -1
  29. package/dist/cjs/helpers/prettyFormatZeroQuery.native.js.map +1 -1
  30. package/dist/cjs/helpers/queryContext.native.js.map +1 -1
  31. package/dist/cjs/helpers/recoverZeroClient.native.js.map +1 -1
  32. package/dist/cjs/helpers/recoverZeroClient.test.native.js.map +1 -1
  33. package/dist/cjs/helpers/showZeroClientError.native.js.map +1 -1
  34. package/dist/cjs/helpers/useMutation.native.js.map +1 -1
  35. package/dist/cjs/helpers/useMutation.test.native.js.map +1 -1
  36. package/dist/cjs/helpers/useZeroDebug.native.js.map +1 -1
  37. package/dist/cjs/httpPull/auth.test.native.js.map +1 -1
  38. package/dist/cjs/httpPull/churn.test.native.js.map +1 -1
  39. package/dist/cjs/httpPull/completeAck.test.native.js.map +1 -1
  40. package/dist/cjs/httpPull/fixtureSchema.native.js.map +1 -1
  41. package/dist/cjs/httpPull/fixtureServer.native.js.map +1 -1
  42. package/dist/cjs/httpPull/integration.test.native.js.map +1 -1
  43. package/dist/cjs/httpPull/rebase.test.native.js.map +1 -1
  44. package/dist/cjs/httpPull/relations.test.native.js.map +1 -1
  45. package/dist/cjs/httpPull/testHarness.native.js.map +1 -1
  46. package/dist/cjs/httpPull/transport.test.native.js.map +1 -1
  47. package/dist/cjs/httpPullTransport.native.js.map +1 -1
  48. package/dist/cjs/index.native.js.map +1 -1
  49. package/dist/cjs/instanceRegistry.cjs +18 -1
  50. package/dist/cjs/instanceRegistry.native.js +71 -12
  51. package/dist/cjs/instanceRegistry.native.js.map +1 -1
  52. package/dist/cjs/modelRegistry.native.js.map +1 -1
  53. package/dist/cjs/multi.native.js.map +1 -1
  54. package/dist/cjs/multiInstance.test.cjs +6 -6
  55. package/dist/cjs/multiInstance.test.native.js +7 -7
  56. package/dist/cjs/multiInstance.test.native.js.map +1 -1
  57. package/dist/cjs/multiInstanceNested.test.native.js.map +1 -1
  58. package/dist/cjs/multiPartition.test.native.js.map +1 -1
  59. package/dist/cjs/mutations.native.js.map +1 -1
  60. package/dist/cjs/provideZero.hydration.test.native.js.map +1 -1
  61. package/dist/cjs/queryRegistry.native.js.map +1 -1
  62. package/dist/cjs/resolveQuery.native.js.map +1 -1
  63. package/dist/cjs/run.native.js.map +1 -1
  64. package/dist/cjs/serverWhere.native.js.map +1 -1
  65. package/dist/cjs/serverWhere.test.native.js.map +1 -1
  66. package/dist/cjs/state.native.js.map +1 -1
  67. package/dist/cjs/testSetup.native.js.map +1 -1
  68. package/dist/cjs/types.native.js.map +1 -1
  69. package/dist/cjs/usePermission.test.native.js.map +1 -1
  70. package/dist/cjs/useQuery.empty.test.cjs +10 -3
  71. package/dist/cjs/useQuery.empty.test.native.js +12 -3
  72. package/dist/cjs/useQuery.empty.test.native.js.map +1 -1
  73. package/dist/cjs/useQuery.ssr.test.native.js.map +1 -1
  74. package/dist/cjs/vite-plugin.native.js.map +1 -1
  75. package/dist/cjs/where.native.js.map +1 -1
  76. package/dist/cjs/zeroRunner.native.js.map +1 -1
  77. package/dist/cjs/zql.native.js.map +1 -1
  78. package/dist/esm/createZeroClient.mjs +6 -8
  79. package/dist/esm/createZeroClient.mjs.map +1 -1
  80. package/dist/esm/createZeroClient.native.js +11 -8
  81. package/dist/esm/createZeroClient.native.js.map +1 -1
  82. package/dist/esm/generate.mjs +6 -0
  83. package/dist/esm/generate.mjs.map +1 -1
  84. package/dist/esm/generate.native.js +11 -2
  85. package/dist/esm/generate.native.js.map +1 -1
  86. package/dist/esm/instanceRegistry.mjs +18 -1
  87. package/dist/esm/instanceRegistry.mjs.map +1 -1
  88. package/dist/esm/instanceRegistry.native.js +71 -12
  89. package/dist/esm/instanceRegistry.native.js.map +1 -1
  90. package/dist/esm/multiInstance.test.mjs +7 -7
  91. package/dist/esm/multiInstance.test.mjs.map +1 -1
  92. package/dist/esm/multiInstance.test.native.js +8 -8
  93. package/dist/esm/multiInstance.test.native.js.map +1 -1
  94. package/dist/esm/useQuery.empty.test.mjs +7 -0
  95. package/dist/esm/useQuery.empty.test.mjs.map +1 -1
  96. package/dist/esm/useQuery.empty.test.native.js +9 -0
  97. package/dist/esm/useQuery.empty.test.native.js.map +1 -1
  98. package/package.json +2 -2
  99. package/src/createZeroClient.tsx +7 -6
  100. package/src/generate.ts +10 -1
  101. package/src/instanceRegistry.ts +27 -2
  102. package/src/multiInstance.test.tsx +11 -9
  103. package/src/useQuery.empty.test.tsx +8 -0
  104. package/types/createZeroClient.d.ts.map +1 -1
  105. package/types/generate.d.ts.map +1 -1
  106. package/types/instanceRegistry.d.ts +2 -1
  107. package/types/instanceRegistry.d.ts.map +1 -1
  108. package/types/useQuery.empty.test.d.ts.map +1 -1
@@ -1 +1 @@
1
- {"version":3,"names":["__toCommonJS","mod","__copyProps","__defProp","value","generate_lite_exports","__export","generateLite","module","exports","import_generate_helpers","require","stripTrailingSlash","s","endsWith","slice","baseName","path","ext","idx","lastIndexOf","base","length","listDirectTsFiles","files","dirPrefix","prefix","out","_iteratorNormalCompletion","_didIteratorError","_iteratorError","_iterator","Object","keys","Symbol","iterator","_step","next","done","startsWith","rest","includes","push","err","return","sort","opts","parse","baseDir","dir","modelsDirName","modelsDir","mutationsPrefix","hasMutationsDir","some","p","modelsDirPath","queriesDirPath","modelFilePaths","queryFilePaths","allModelMutations","modelNamesWithSchema","filePath","modelName","content","parsed","_parsed_mutations_","mutationExport","mutations","columns","primaryKeys","hasSchema","schema","_iteratorNormalCompletion1","_didIteratorError1","_iteratorError1","_iterator1","_step1","pk","_iteratorNormalCompletion2","_didIteratorError2","_iteratorError2","_iterator2","_step2","col","name","parseColumnType","builderText","hasCRUD","_mutationExport_handlers","custom","handlers","map","h","paramTypeText","paramType","valibotCode","paramType2","trim","valibotCode2","parseTypeString","e"],"sources":["../../src/generate-lite.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["__defProp","Object","defineProperty","__getOwnPropDesc","getOwnPropertyDescriptor","__getOwnPropNames","getOwnPropertyNames","__hasOwnProp","prototype","hasOwnProperty","__export","target","all","name","get","enumerable","__copyProps","to","from","except","desc","key","call","__toCommonJS","mod","value","generate_lite_exports","generateLite","module","exports","import_generate_helpers","require","stripTrailingSlash","s","endsWith","slice","baseName","path","ext","idx","lastIndexOf","base","length","listDirectTsFiles","files","dirPrefix","prefix","out","_iteratorNormalCompletion","_didIteratorError","_iteratorError","_iterator","keys","Symbol","iterator","_step","next","done","startsWith","rest","includes","push","err","return","sort","opts","parse","baseDir","dir","modelsDirName","modelsDir","mutationsPrefix","hasMutationsDir","some","p","modelsDirPath","queriesDirPath","modelFilePaths","queryFilePaths","allModelMutations","modelNamesWithSchema","filePath","modelName","content","parsed","_parsed_mutations_","mutationExport","mutations","columns","primaryKeys","hasSchema","schema","_iteratorNormalCompletion1","_didIteratorError1","_iteratorError1","_iterator1","_step1","pk","_iteratorNormalCompletion2","_didIteratorError2","_iteratorError2","_iterator2","_step2","col","parseColumnType","builderText","hasCRUD","_mutationExport_handlers","custom","handlers","map","h","paramTypeText","paramType","valibotCode","paramType2","trim","valibotCode2","parseTypeString","e","allQueries","_iteratorNormalCompletion3","_didIteratorError3","_iteratorError3","_iterator3","_step3","filePath1","fileBaseName","content1","parsed1","_iteratorNormalCompletion4","_didIteratorError4","_iteratorError4","_iterator4","queries","_step4","q","params","sourceFile","modelNames","generateModelsFile","generateTypesFile","generateTablesFile","generateReadmeFile","generateGroupedQueriesFile","generateSyncedQueriesFile","generateSyncedMutationsFile","mutationCount","_iteratorNormalCompletion5","_didIteratorError5","_iteratorError5","_loop","m","_step5","filter","mut","_iterator5","modelCount","queryCount","schemaCount"],"sources":["generate-lite.native.js"],"sourcesContent":["\"use strict\";\nvar __defProp = Object.defineProperty;\nvar __getOwnPropDesc = Object.getOwnPropertyDescriptor;\nvar __getOwnPropNames = Object.getOwnPropertyNames;\nvar __hasOwnProp = Object.prototype.hasOwnProperty;\nvar __export = (target, all) => {\n for (var name in all)\n __defProp(target, name, { get: all[name], enumerable: true });\n};\nvar __copyProps = (to, from, except, desc) => {\n if (from && typeof from === \"object\" || typeof from === \"function\") {\n for (let key of __getOwnPropNames(from))\n if (!__hasOwnProp.call(to, key) && key !== except)\n __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });\n }\n return to;\n};\nvar __toCommonJS = (mod) => __copyProps(__defProp({}, \"__esModule\", { value: true }), mod);\nvar generate_lite_exports = {};\n__export(generate_lite_exports, {\n generateLite: () => generateLite\n});\nmodule.exports = __toCommonJS(generate_lite_exports);\nvar import_generate_helpers = require(\"./generate-helpers\");\nfunction stripTrailingSlash(s) {\n return s.endsWith(\"/\") ? s.slice(0, -1) : s;\n}\nfunction baseName(path, ext) {\n var idx = path.lastIndexOf(\"/\");\n var base = idx >= 0 ? path.slice(idx + 1) : path;\n if (ext && base.endsWith(ext)) base = base.slice(0, -ext.length);\n return base;\n}\nfunction listDirectTsFiles(files, dirPrefix) {\n var prefix = stripTrailingSlash(dirPrefix) + \"/\";\n var out = [];\n var _iteratorNormalCompletion = true, _didIteratorError = false, _iteratorError = void 0;\n try {\n for (var _iterator = Object.keys(files)[Symbol.iterator](), _step; !(_iteratorNormalCompletion = (_step = _iterator.next()).done); _iteratorNormalCompletion = true) {\n var path = _step.value;\n if (!path.startsWith(prefix)) continue;\n var rest = path.slice(prefix.length);\n if (rest.includes(\"/\")) continue;\n if (!rest.endsWith(\".ts\")) continue;\n if (rest.endsWith(\".d.ts\")) continue;\n out.push(path);\n }\n } catch (err) {\n _didIteratorError = true;\n _iteratorError = err;\n } finally {\n try {\n if (!_iteratorNormalCompletion && _iterator.return != null) {\n _iterator.return();\n }\n } finally {\n if (_didIteratorError) {\n throw _iteratorError;\n }\n }\n }\n return out.sort();\n}\nfunction generateLite(opts) {\n var { files, parse } = opts;\n var baseDir = stripTrailingSlash(opts.dir);\n var modelsDirName;\n if (opts.modelsDir) {\n modelsDirName = opts.modelsDir;\n } else {\n var mutationsPrefix = `${baseDir}/mutations/`;\n var hasMutationsDir = Object.keys(files).some(function(p) {\n return p.startsWith(mutationsPrefix);\n });\n modelsDirName = hasMutationsDir ? \"mutations\" : \"models\";\n }\n var modelsDirPath = `${baseDir}/${modelsDirName}`;\n var queriesDirPath = `${baseDir}/queries`;\n var modelFilePaths = listDirectTsFiles(files, modelsDirPath);\n var queryFilePaths = listDirectTsFiles(files, queriesDirPath);\n var allModelMutations = [];\n var modelNamesWithSchema = [];\n var _iteratorNormalCompletion = true, _didIteratorError = false, _iteratorError = void 0;\n try {\n for (var _iterator = modelFilePaths[Symbol.iterator](), _step; !(_iteratorNormalCompletion = (_step = _iterator.next()).done); _iteratorNormalCompletion = true) {\n var filePath = _step.value;\n var modelName = baseName(filePath, \".ts\");\n var content = files[filePath];\n var parsed = parse(content, filePath);\n var _parsed_mutations_;\n var mutationExport = (_parsed_mutations_ = parsed.mutations[0]) !== null && _parsed_mutations_ !== void 0 ? _parsed_mutations_ : null;\n var columns = {};\n var primaryKeys = [];\n var hasSchema = false;\n if (mutationExport === null || mutationExport === void 0 ? void 0 : mutationExport.schema) {\n hasSchema = true;\n modelNamesWithSchema.push(modelName);\n var _iteratorNormalCompletion1 = true, _didIteratorError1 = false, _iteratorError1 = void 0;\n try {\n for (var _iterator1 = mutationExport.schema.primaryKeys[Symbol.iterator](), _step1; !(_iteratorNormalCompletion1 = (_step1 = _iterator1.next()).done); _iteratorNormalCompletion1 = true) {\n var pk = _step1.value;\n primaryKeys.push(pk);\n }\n } catch (err) {\n _didIteratorError1 = true;\n _iteratorError1 = err;\n } finally {\n try {\n if (!_iteratorNormalCompletion1 && _iterator1.return != null) {\n _iterator1.return();\n }\n } finally {\n if (_didIteratorError1) {\n throw _iteratorError1;\n }\n }\n }\n var _iteratorNormalCompletion2 = true, _didIteratorError2 = false, _iteratorError2 = void 0;\n try {\n for (var _iterator2 = mutationExport.schema.columns[Symbol.iterator](), _step2; !(_iteratorNormalCompletion2 = (_step2 = _iterator2.next()).done); _iteratorNormalCompletion2 = true) {\n var col = _step2.value;\n columns[col.name] = (0, import_generate_helpers.parseColumnType)(col.builderText);\n }\n } catch (err) {\n _didIteratorError2 = true;\n _iteratorError2 = err;\n } finally {\n try {\n if (!_iteratorNormalCompletion2 && _iterator2.return != null) {\n _iterator2.return();\n }\n } finally {\n if (_didIteratorError2) {\n throw _iteratorError2;\n }\n }\n }\n }\n var hasCRUD = hasSchema && mutationExport !== null;\n var _mutationExport_handlers;\n var custom = ((_mutationExport_handlers = mutationExport === null || mutationExport === void 0 ? void 0 : mutationExport.handlers) !== null && _mutationExport_handlers !== void 0 ? _mutationExport_handlers : []).map(function(h) {\n if (h.paramTypeText == null) {\n return {\n name: h.name,\n paramType: \"void\",\n valibotCode: \"\"\n };\n }\n var paramType2 = h.paramTypeText.trim();\n if (paramType2 === \"unknown\") {\n return {\n name: h.name,\n paramType: \"unknown\",\n valibotCode: \"\"\n };\n }\n var valibotCode2 = null;\n try {\n valibotCode2 = (0, import_generate_helpers.parseTypeString)(paramType2);\n } catch (e) {\n valibotCode2 = null;\n }\n return {\n name: h.name,\n paramType: paramType2,\n valibotCode: valibotCode2 !== null && valibotCode2 !== void 0 ? valibotCode2 : \"v.unknown()\"\n };\n });\n allModelMutations.push({\n modelName,\n hasCRUD,\n columns,\n primaryKeys,\n custom\n });\n }\n } catch (err) {\n _didIteratorError = true;\n _iteratorError = err;\n } finally {\n try {\n if (!_iteratorNormalCompletion && _iterator.return != null) {\n _iterator.return();\n }\n } finally {\n if (_didIteratorError) {\n throw _iteratorError;\n }\n }\n }\n var allQueries = [];\n var _iteratorNormalCompletion3 = true, _didIteratorError3 = false, _iteratorError3 = void 0;\n try {\n for (var _iterator3 = queryFilePaths[Symbol.iterator](), _step3; !(_iteratorNormalCompletion3 = (_step3 = _iterator3.next()).done); _iteratorNormalCompletion3 = true) {\n var filePath1 = _step3.value;\n var fileBaseName = baseName(filePath1, \".ts\");\n var content1 = files[filePath1];\n var parsed1 = parse(content1, filePath1);\n var _iteratorNormalCompletion4 = true, _didIteratorError4 = false, _iteratorError4 = void 0;\n try {\n for (var _iterator4 = parsed1.queries[Symbol.iterator](), _step4; !(_iteratorNormalCompletion4 = (_step4 = _iterator4.next()).done); _iteratorNormalCompletion4 = true) {\n var q = _step4.value;\n if (q.name === \"permission\") continue;\n if (q.paramTypeText == null) {\n allQueries.push({\n name: q.name,\n params: \"void\",\n valibotCode: \"\",\n sourceFile: fileBaseName\n });\n continue;\n }\n var paramType = q.paramTypeText.trim();\n var valibotCode = null;\n try {\n valibotCode = (0, import_generate_helpers.parseTypeString)(paramType);\n } catch (e) {\n valibotCode = null;\n }\n allQueries.push({\n name: q.name,\n params: paramType,\n valibotCode: valibotCode !== null && valibotCode !== void 0 ? valibotCode : \"v.unknown()\",\n sourceFile: fileBaseName\n });\n }\n } catch (err) {\n _didIteratorError4 = true;\n _iteratorError4 = err;\n } finally {\n try {\n if (!_iteratorNormalCompletion4 && _iterator4.return != null) {\n _iterator4.return();\n }\n } finally {\n if (_didIteratorError4) {\n throw _iteratorError4;\n }\n }\n }\n }\n } catch (err) {\n _didIteratorError3 = true;\n _iteratorError3 = err;\n } finally {\n try {\n if (!_iteratorNormalCompletion3 && _iterator3.return != null) {\n _iterator3.return();\n }\n } finally {\n if (_didIteratorError3) {\n throw _iteratorError3;\n }\n }\n }\n var modelNames = modelFilePaths.map(function(p) {\n return baseName(p, \".ts\");\n });\n var out = {};\n out[\"models.ts\"] = (0, import_generate_helpers.generateModelsFile)(modelNames, modelsDirName);\n if (modelNamesWithSchema.length > 0) {\n out[\"types.ts\"] = (0, import_generate_helpers.generateTypesFile)(modelNamesWithSchema);\n out[\"tables.ts\"] = (0, import_generate_helpers.generateTablesFile)(modelNamesWithSchema, modelsDirName);\n }\n out[\"README.md\"] = (0, import_generate_helpers.generateReadmeFile)();\n if (queryFilePaths.length > 0) {\n out[\"groupedQueries.ts\"] = (0, import_generate_helpers.generateGroupedQueriesFile)(allQueries);\n out[\"syncedQueries.ts\"] = (0, import_generate_helpers.generateSyncedQueriesFile)(allQueries);\n }\n if (allModelMutations.length > 0) {\n out[\"syncedMutations.ts\"] = (0, import_generate_helpers.generateSyncedMutationsFile)(allModelMutations);\n }\n var mutationCount = 0;\n var _iteratorNormalCompletion5 = true, _didIteratorError5 = false, _iteratorError5 = void 0;\n try {\n var _loop = function() {\n var m = _step5.value;\n if (m.hasCRUD) mutationCount += 3;\n mutationCount += m.custom.filter(function(mut) {\n return !m.hasCRUD || ![\n \"insert\",\n \"update\",\n \"delete\",\n \"upsert\"\n ].includes(mut.name);\n }).length;\n };\n for (var _iterator5 = allModelMutations[Symbol.iterator](), _step5; !(_iteratorNormalCompletion5 = (_step5 = _iterator5.next()).done); _iteratorNormalCompletion5 = true) _loop();\n } catch (err) {\n _didIteratorError5 = true;\n _iteratorError5 = err;\n } finally {\n try {\n if (!_iteratorNormalCompletion5 && _iterator5.return != null) {\n _iterator5.return();\n }\n } finally {\n if (_didIteratorError5) {\n throw _iteratorError5;\n }\n }\n }\n return {\n files: out,\n modelCount: modelNames.length,\n queryCount: allQueries.length,\n mutationCount,\n schemaCount: modelNamesWithSchema.length\n };\n}\n//# sourceMappingURL=generate-lite.js.map\n"],"mappings":"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","ignoreList":[]}
@@ -1 +1 @@
1
- {"version":3,"names":["import_vitest","require","import_generate_lite","makeParse","table","_src","path","entry","Error","DIR","describe","test","files","fixtures","mutations","modelName","handlers","name","paramTypeText","schema","queries","result","generateLite","dir","parse","expect","Object","keys","sort","toEqual","models","toContain","not","syncedMutations","modelCount","toBe","schemaCount","mutationCount","synced","toBeDefined","grouped","toMatch","queryCount","tableName","primaryKeys","columns","builderText","types","tables"],"sources":["../../src/generate-lite.test.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["import_vitest","require","import_generate_lite","makeParse","table","_src","path","entry","Error","DIR","describe","test","files","fixtures","mutations","modelName","handlers","name","paramTypeText","schema","queries","result","generateLite","dir","parse","expect","Object","keys","sort","toEqual","models","toContain","not","syncedMutations","modelCount","toBe","schemaCount","mutationCount","synced","toBeDefined","grouped","toMatch","queryCount","tableName","primaryKeys","columns","builderText","types","tables"],"sources":["generate-lite.test.native.js"],"sourcesContent":["\"use strict\";\nvar import_vitest = require(\"vitest\");\nvar import_generate_lite = require(\"./generate-lite\");\nfunction makeParse(table) {\n return function(_src, path) {\n var entry = table[path];\n if (!entry) {\n throw new Error(`no lite ast fixture for ${path}`);\n }\n return entry;\n };\n}\nvar DIR = \"/proj/src/data\";\n(0, import_vitest.describe)(\"generateLite\", function() {\n (0, import_vitest.test)(\"emits models.ts, syncedMutations.ts, and README.md from inline types\", function() {\n var files = {\n [`${DIR}/models/todo.ts`]: \"// fake source, parser returns fixture\",\n [`${DIR}/models/user.ts`]: \"// fake source, parser returns fixture\"\n };\n var fixtures = {\n [`${DIR}/models/todo.ts`]: {\n mutations: [\n {\n modelName: \"todo\",\n handlers: [\n {\n name: \"toggle\",\n paramTypeText: \"{ id: string; isActive: boolean }\"\n },\n {\n name: \"rename\",\n paramTypeText: \"{ id: string; title: string }\"\n }\n ],\n schema: null\n }\n ],\n queries: []\n },\n [`${DIR}/models/user.ts`]: {\n mutations: [\n {\n modelName: \"user\",\n handlers: [\n {\n name: \"finishOnboarding\",\n // null = no second param / void\n paramTypeText: null\n }\n ],\n schema: null\n }\n ],\n queries: []\n }\n };\n var result = (0, import_generate_lite.generateLite)({\n files,\n dir: DIR,\n parse: makeParse(fixtures)\n });\n (0, import_vitest.expect)(Object.keys(result.files).sort()).toEqual([\n \"README.md\",\n \"models.ts\",\n \"syncedMutations.ts\"\n ]);\n var models = result.files[\"models.ts\"];\n (0, import_vitest.expect)(models).toContain(\"import * as todo from '../models/todo'\");\n (0, import_vitest.expect)(models).toContain(\"import * as userPublic from '../models/user'\");\n (0, import_vitest.expect)(models).toContain(\"user: userPublic,\");\n (0, import_vitest.expect)(models).not.toContain(\"\\n userPublic,\");\n (0, import_vitest.expect)(models).toContain(\"export const models = {\");\n var syncedMutations = result.files[\"syncedMutations.ts\"];\n (0, import_vitest.expect)(syncedMutations).toContain(\"toggle:\");\n (0, import_vitest.expect)(syncedMutations).toContain(\"v.object({\");\n (0, import_vitest.expect)(syncedMutations).toContain(\"id: v.string()\");\n (0, import_vitest.expect)(syncedMutations).toContain(\"isActive: v.boolean()\");\n (0, import_vitest.expect)(syncedMutations).toContain(\"rename:\");\n (0, import_vitest.expect)(syncedMutations).toContain(\"title: v.string()\");\n (0, import_vitest.expect)(syncedMutations).toContain(\"finishOnboarding: v.void_()\");\n (0, import_vitest.expect)(result.modelCount).toBe(2);\n (0, import_vitest.expect)(result.schemaCount).toBe(0);\n (0, import_vitest.expect)(result.mutationCount).toBe(3);\n });\n (0, import_vitest.test)(\"parses newline-separated mutation object types\", function() {\n var files = {\n [`${DIR}/models/agentEvent.ts`]: \"// fake\",\n [`${DIR}/models/deployment.ts`]: \"// fake\"\n };\n var fixtures = {\n [`${DIR}/models/agentEvent.ts`]: {\n mutations: [\n {\n modelName: \"agentEvent\",\n handlers: [\n {\n name: \"claimReviewLease\",\n paramTypeText: `{\n id: string\n projectId: string\n createdAt: number\n }`\n }\n ],\n schema: null\n }\n ],\n queries: []\n },\n [`${DIR}/models/deployment.ts`]: {\n mutations: [\n {\n modelName: \"deployment\",\n handlers: [\n {\n name: \"deploy\",\n paramTypeText: `{\n id: string\n platform?: string // 'web' | 'ios'\n buildTier?: string // 'dev' | 'testflight' | 'production'\n }`\n }\n ],\n schema: null\n }\n ],\n queries: []\n }\n };\n var result = (0, import_generate_lite.generateLite)({\n files,\n dir: DIR,\n parse: makeParse(fixtures)\n });\n var synced = result.files[\"syncedMutations.ts\"];\n (0, import_vitest.expect)(synced).toContain(\"claimReviewLease:\");\n (0, import_vitest.expect)(synced).toContain(\"projectId: v.string()\");\n (0, import_vitest.expect)(synced).toContain(\"createdAt: v.number()\");\n (0, import_vitest.expect)(synced).toContain(\"deploy:\");\n (0, import_vitest.expect)(synced).toContain(\"platform: v.optional(v.string())\");\n (0, import_vitest.expect)(synced).toContain(\"buildTier: v.optional(v.string())\");\n (0, import_vitest.expect)(synced).not.toContain(\"claimReviewLease: v.object({})\");\n (0, import_vitest.expect)(synced).not.toContain(\"deploy: v.object({})\");\n });\n (0, import_vitest.test)(\"parses object intersections and skips index signatures\", function() {\n var files = {\n [`${DIR}/models/agent.ts`]: \"// fake\"\n };\n var fixtures = {\n [`${DIR}/models/agent.ts`]: {\n mutations: [\n {\n modelName: \"agent\",\n handlers: [\n {\n name: \"update\",\n paramTypeText: `{\n id: string\n } & {\n status?: string\n currentTaskId?: string\n [key: string]: unknown\n }`\n }\n ],\n schema: null\n }\n ],\n queries: []\n }\n };\n var result = (0, import_generate_lite.generateLite)({\n files,\n dir: DIR,\n parse: makeParse(fixtures)\n });\n var synced = result.files[\"syncedMutations.ts\"];\n (0, import_vitest.expect)(synced).toContain(\"update:\");\n (0, import_vitest.expect)(synced).toContain(\"id: v.string()\");\n (0, import_vitest.expect)(synced).toContain(\"status: v.optional(v.string())\");\n (0, import_vitest.expect)(synced).toContain(\"currentTaskId: v.optional(v.string())\");\n (0, import_vitest.expect)(synced).not.toContain(\"[key\");\n (0, import_vitest.expect)(synced).not.toContain(\"update: v.object({})\");\n });\n (0, import_vitest.test)(\"falls back to v.unknown() for type references\", function() {\n var files = {\n [`${DIR}/models/post.ts`]: \"// fake\"\n };\n var fixtures = {\n [`${DIR}/models/post.ts`]: {\n mutations: [\n {\n modelName: \"post\",\n handlers: [\n {\n name: \"archive\",\n // bare type reference — parseTypeString returns null, so\n // generate-lite should fall back to v.unknown() rather than\n // attempting cross-file type resolution.\n paramTypeText: \"ArchiveParams\"\n },\n {\n name: \"publish\",\n // primitive, should resolve\n paramTypeText: \"string\"\n }\n ],\n schema: null\n }\n ],\n queries: []\n }\n };\n var result = (0, import_generate_lite.generateLite)({\n files,\n dir: DIR,\n parse: makeParse(fixtures)\n });\n var synced = result.files[\"syncedMutations.ts\"];\n (0, import_vitest.expect)(synced).toContain(\"archive: v.unknown()\");\n (0, import_vitest.expect)(synced).toContain(\"publish: v.string()\");\n });\n (0, import_vitest.test)(\"uses v.unknown() for explicitly unknown mutation params\", function() {\n var files = {\n [`${DIR}/models/project.ts`]: \"// fake\"\n };\n var fixtures = {\n [`${DIR}/models/project.ts`]: {\n mutations: [\n {\n modelName: \"project\",\n handlers: [\n {\n name: \"insert\",\n paramTypeText: \"unknown\"\n }\n ],\n schema: null\n }\n ],\n queries: []\n }\n };\n var result = (0, import_generate_lite.generateLite)({\n files,\n dir: DIR,\n parse: makeParse(fixtures)\n });\n (0, import_vitest.expect)(result.files[\"syncedMutations.ts\"]).toContain(\"insert: v.unknown()\");\n });\n (0, import_vitest.test)(\"emits query files with v.unknown() fallback for references\", function() {\n var files = {\n [`${DIR}/models/post.ts`]: \"// fake\",\n [`${DIR}/queries/post.ts`]: \"// fake\"\n };\n var fixtures = {\n [`${DIR}/models/post.ts`]: {\n mutations: [],\n queries: []\n },\n [`${DIR}/queries/post.ts`]: {\n mutations: [],\n queries: [\n // no-arg query → void\n {\n name: \"allPosts\",\n paramTypeText: null\n },\n // inline object → real validator\n {\n name: \"postById\",\n paramTypeText: \"{ id: string }\"\n },\n // primitive\n {\n name: \"byAuthorId\",\n paramTypeText: \"string\"\n },\n // optional nullable inline object\n {\n name: \"paged\",\n paramTypeText: \"{ pageSize: number; cursor?: { id: string; createdAt: number } | null }\"\n },\n // type reference → fallback\n {\n name: \"filtered\",\n paramTypeText: \"PostFilter\"\n },\n // permission should be skipped\n {\n name: \"permission\",\n paramTypeText: null\n }\n ]\n }\n };\n var result = (0, import_generate_lite.generateLite)({\n files,\n dir: DIR,\n parse: makeParse(fixtures)\n });\n (0, import_vitest.expect)(result.files[\"groupedQueries.ts\"]).toBeDefined();\n (0, import_vitest.expect)(result.files[\"syncedQueries.ts\"]).toBeDefined();\n var grouped = result.files[\"groupedQueries.ts\"];\n (0, import_vitest.expect)(grouped).toContain(\"export * as post from '../queries/post'\");\n var synced = result.files[\"syncedQueries.ts\"];\n (0, import_vitest.expect)(synced).toContain(\"allPosts: defineQuery(() => Queries.post.allPosts())\");\n (0, import_vitest.expect)(synced).toContain(\"postById: defineQuery(\");\n (0, import_vitest.expect)(synced).toContain(\"id: v.string()\");\n (0, import_vitest.expect)(synced).toContain(\"byAuthorId: defineQuery(\");\n (0, import_vitest.expect)(synced).toMatch(/byAuthorId: defineQuery\\(\\s*v\\.string\\(\\)/);\n (0, import_vitest.expect)(synced).toContain(\"paged: defineQuery(\");\n (0, import_vitest.expect)(synced).toContain(\"cursor: v.optional(v.nullable(v.object({\");\n (0, import_vitest.expect)(synced).toContain(\"filtered: defineQuery(\");\n (0, import_vitest.expect)(synced).toMatch(/filtered: defineQuery\\(\\s*v\\.unknown\\(\\)/);\n (0, import_vitest.expect)(synced).not.toContain(\"permission: defineQuery\");\n (0, import_vitest.expect)(result.queryCount).toBe(5);\n });\n (0, import_vitest.test)(\"emits types.ts and tables.ts when a model declares a schema inline\", function() {\n var files = {\n [`${DIR}/models/task.ts`]: \"// fake\"\n };\n var fixtures = {\n [`${DIR}/models/task.ts`]: {\n mutations: [\n {\n modelName: \"task\",\n handlers: [],\n schema: {\n tableName: \"task\",\n primaryKeys: [\n \"id\"\n ],\n columns: [\n {\n name: \"id\",\n builderText: \"string()\"\n },\n {\n name: \"title\",\n builderText: \"string()\"\n },\n {\n name: \"priority\",\n builderText: \"number()\"\n },\n {\n name: \"done\",\n builderText: \"boolean()\"\n },\n {\n name: \"note\",\n builderText: \"string().optional()\"\n }\n ]\n }\n }\n ],\n queries: []\n }\n };\n var result = (0, import_generate_lite.generateLite)({\n files,\n dir: DIR,\n parse: makeParse(fixtures)\n });\n (0, import_vitest.expect)(result.schemaCount).toBe(1);\n (0, import_vitest.expect)(result.files[\"types.ts\"]).toBeDefined();\n (0, import_vitest.expect)(result.files[\"tables.ts\"]).toBeDefined();\n var types = result.files[\"types.ts\"];\n (0, import_vitest.expect)(types).toContain(\"export type Task = TableInsertRow<typeof schema.task>\");\n var tables = result.files[\"tables.ts\"];\n (0, import_vitest.expect)(tables).toContain(\"export { schema as task } from '../models/task'\");\n var synced = result.files[\"syncedMutations.ts\"];\n (0, import_vitest.expect)(synced).toContain(\"insert:\");\n (0, import_vitest.expect)(synced).toContain(\"update:\");\n (0, import_vitest.expect)(synced).toContain(\"delete:\");\n (0, import_vitest.expect)(result.mutationCount).toBe(3);\n });\n (0, import_vitest.test)(\"ignores nested files and non-ts files inside the models directory\", function() {\n var files = {\n [`${DIR}/models/post.ts`]: \"// fake\",\n [`${DIR}/models/README.md`]: \"not a model\",\n [`${DIR}/models/helpers/util.ts`]: \"nested should be ignored\",\n [`${DIR}/models/post.d.ts`]: \"declaration file, ignored\"\n };\n var fixtures = {\n [`${DIR}/models/post.ts`]: {\n mutations: [\n {\n modelName: \"post\",\n handlers: [],\n schema: null\n }\n ],\n queries: []\n }\n };\n var result = (0, import_generate_lite.generateLite)({\n files,\n dir: DIR,\n parse: makeParse(fixtures)\n });\n (0, import_vitest.expect)(result.modelCount).toBe(1);\n var models = result.files[\"models.ts\"];\n (0, import_vitest.expect)(models).toContain(\"import * as post from '../models/post'\");\n (0, import_vitest.expect)(models).not.toContain(\"util\");\n (0, import_vitest.expect)(models).not.toContain(\"README\");\n });\n (0, import_vitest.test)(\"infers mutations/ directory when present\", function() {\n var files = {\n [`${DIR}/mutations/post.ts`]: \"// fake\"\n };\n var fixtures = {\n [`${DIR}/mutations/post.ts`]: {\n mutations: [\n {\n modelName: \"post\",\n handlers: [\n {\n name: \"publish\",\n paramTypeText: \"{ id: string }\"\n }\n ],\n schema: null\n }\n ],\n queries: []\n }\n };\n var result = (0, import_generate_lite.generateLite)({\n files,\n dir: DIR,\n parse: makeParse(fixtures)\n });\n var models = result.files[\"models.ts\"];\n (0, import_vitest.expect)(models).toContain(\"from '../mutations/post'\");\n });\n});\n//# sourceMappingURL=generate-lite.test.js.map\n"],"mappings":"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","ignoreList":[]}
@@ -364,6 +364,12 @@ function tsTypeToValibot(ts, checker, type, seen) {
364
364
  if (flags & ts.TypeFlags.Null) return "v.null_()";
365
365
  if (flags & ts.TypeFlags.Any || flags & ts.TypeFlags.Unknown) return "v.unknown()";
366
366
  if (flags & ts.TypeFlags.Never) return "v.never()";
367
+ if (flags & ts.TypeFlags.TemplateLiteral) return "v.string()";
368
+ if (flags & ts.TypeFlags.Object && (checker.isArrayType?.(type) || checker.isArrayLikeType?.(type))) {
369
+ const typeArgs = checker.getTypeArguments?.(type) ?? [];
370
+ const elementType = typeArgs.length === 1 ? typeArgs[0] : type.getNumberIndexType?.();
371
+ return `v.array(${elementType ? recurse(elementType) : "v.unknown()"})`;
372
+ }
367
373
  if (flags & ts.TypeFlags.StringLiteral) {
368
374
  return `v.literal(${JSON.stringify(type.value)})`;
369
375
  }
@@ -489,6 +489,7 @@ function extractSchemaColumns(ts, sourceFile, columns, primaryKeys) {
489
489
  visit(sourceFile);
490
490
  }
491
491
  function tsTypeToValibot(ts, checker, type, seen) {
492
+ var _checker_isArrayType, _checker_isArrayLikeType;
492
493
  if (!seen) seen = /* @__PURE__ */new Set();
493
494
  var flags = type.getFlags();
494
495
  if (flags & (ts.TypeFlags.Object | ts.TypeFlags.Intersection)) {
@@ -505,6 +506,14 @@ function tsTypeToValibot(ts, checker, type, seen) {
505
506
  if (flags & ts.TypeFlags.Null) return "v.null_()";
506
507
  if (flags & ts.TypeFlags.Any || flags & ts.TypeFlags.Unknown) return "v.unknown()";
507
508
  if (flags & ts.TypeFlags.Never) return "v.never()";
509
+ if (flags & ts.TypeFlags.TemplateLiteral) return "v.string()";
510
+ if (flags & ts.TypeFlags.Object && (((_checker_isArrayType = checker.isArrayType) === null || _checker_isArrayType === void 0 ? void 0 : _checker_isArrayType.call(checker, type)) || ((_checker_isArrayLikeType = checker.isArrayLikeType) === null || _checker_isArrayLikeType === void 0 ? void 0 : _checker_isArrayLikeType.call(checker, type)))) {
511
+ var _checker_getTypeArguments, _type_getNumberIndexType;
512
+ var _checker_getTypeArguments1;
513
+ var typeArgs = (_checker_getTypeArguments1 = (_checker_getTypeArguments = checker.getTypeArguments) === null || _checker_getTypeArguments === void 0 ? void 0 : _checker_getTypeArguments.call(checker, type)) !== null && _checker_getTypeArguments1 !== void 0 ? _checker_getTypeArguments1 : [];
514
+ var elementType = typeArgs.length === 1 ? typeArgs[0] : (_type_getNumberIndexType = type.getNumberIndexType) === null || _type_getNumberIndexType === void 0 ? void 0 : _type_getNumberIndexType.call(type);
515
+ return `v.array(${elementType ? recurse(elementType) : "v.unknown()"})`;
516
+ }
508
517
  if (flags & ts.TypeFlags.StringLiteral) {
509
518
  return `v.literal(${JSON.stringify(type.value)})`;
510
519
  }
@@ -602,8 +611,8 @@ function tsTypeToValibot(ts, checker, type, seen) {
602
611
  }
603
612
  if (objectFlags & ts.ObjectFlags.Tuple) {
604
613
  var typeRef1 = type;
605
- var typeArgs = typeRef1.typeArguments || [];
606
- return `v.tuple([${typeArgs.map(function (t) {
614
+ var typeArgs1 = typeRef1.typeArguments || [];
615
+ return `v.tuple([${typeArgs1.map(function (t) {
607
616
  return recurse(t);
608
617
  }).join(", ")}])`;
609
618
  }
@@ -1 +1 @@
1
- {"version":3,"names":["__toCommonJS","mod","__copyProps","__defProp","value","generate_exports","__export","generate","generateDrizzleSchemaFile","watch","module","exports","import_crypto","require","import_fs","import_path","import_generate_helpers","hash","s","createHash","update","digest","hashInputTree","baseDir","generatedDir","parts","walk","dir","existsSync","entries","readdirSync","withFileTypes","sort","a","b","name","_iteratorNormalCompletion","_didIteratorError","_iteratorError","_iterator","Symbol","iterator","_step","next","done","entry","full","resolve","isDirectory","isFile","endsWith","push","readFileSync","err","return","join","generateCache","generateCachePath","getCacheDir","process","cwd","nm","cacheDir","mkdirSync","recursive","loadCache","JSON","parse","e","saveCache","writeFileSync","stringify","writeFileIfChanged","filePath","content","contentHash","cachedHash","createTypeResolver","ts","files","configPath","findConfigFile","sys","fileExists","compilerOptions","target","ScriptTarget","Latest","ModuleKind","ESNext","moduleResolution","ModuleResolutionKind","Bundler","strict","skipLibCheck","noEmit","configFile","readConfigFile","readFile","config","parsed","parseJsonConfigFileContent","dirname","options","fileMap","Map","f","set","path","host","createCompilerHost","originalGetSourceFile","getSourceFile","bind","fileName","languageVersion","onError","get","createSourceFile","has","_fileMap_get","program","createProgram","map","f2","checker","getTypeChecker","resolveType","node","getTypeFromTypeNode","typeToValibot","type","tsTypeToValibot","resolveParamType","resolver","sourceFile","exportName","paramIndex","result","forEachChild","_node_modifiers","isVariableStatement","modifiers","some","m","kind","SyntaxKind","ExportKeyword","decl","declarationList","declarations","isVariableDeclaration","getText","initializer","isArrowFunction","param","parameters","resolveMutationParamTypes","resolved","isCallExpression","args","arguments","handlersArg","i","length","isObjectLiteralExpression","properties","prop","_prop_name","isPropertyAssignment","isMethodDeclaration","params","init","isFunctionExpression","typeNode","expanded","extractMutationsFromModel","silent","resolvedTypes","resolvedTypeToValibot","mutateNode","modelName","basename","hasCRUD","columns","primaryKeys","custom","call","firstArg","hasNamedModel","Boolean","isStringLiteralLike","extractSchemaColumns","_secondParam_type","paramType","valibotCode","secondParam","resolvedType","visit","text","expression","arg","isStringLiteral","obj","_iteratorNormalCompletion1","_didIteratorError1","_iteratorError1","_iterator1","_step1","colName","initText","colType","parseColumnType","seen","Set","flags","getFlags","TypeFlags","Object","Intersection","add","recurse","t","String","Number","Void","Undefined","Null","Any","Unknown","Never","StringLiteral","NumberLiteral","BooleanLiteral","intrinsicName","isUnion","members","types","hasNull","hasUndefined","rest","filter","every","inner","inner1","resolveSymbolType","prop2","_prop_declarations","valueDeclaration","getTypeOfSymbolAtLocation","getDeclaredTypeOfSymbol","isIntersection","props","getProperties","name1","getName","shouldSkipObjectKey","propType","isOptional","SymbolFlags","Optional","val","startsWith","formatObjectKey","props1","objectFlags","_type_objectFlags","ObjectFlags","Reference","_typeRef_typeArguments","typeRef","symbol","getSymbol","name2","typeArguments","Tuple","typeRef1","typeArgs","entries1","prop1","name3","propType1","isOptional1","val1","stringIndex","getStringIndexType","numberIndex","getNumberIndexType","serializeColumnBuilder","col","zeroType","expr","serverName","optional","schema","lines","tableNames","keys","tables","tableName","colEntries","pkArgs","primaryKey","k","relTableNames","relationships","tableName1","rels","relEntries","relBody","relName","hops","hop","fn","cardinality","sf","sourceField","df","destField","destSchema","hopCode","hop2","fn2","sf2","df2","tableList","n","relList","after","mutationsDir","usesMutationsDir","modelsDir","modelsDirName","queriesDir","inputHash","__inputHash","counts","__counts","_counts_modelCount","_counts_schemaCount","_counts_queryCount","_counts_mutationCount","filesChanged","modelCount","schemaCount","queryCount","mutationCount","allModelFiles","filesWithSchema","includes","allModelNames","schemaModelNames","writeResults","generateModelsFile","generateTypesFile","generateTablesFile","generateReadmeFile","parseTypeString","trim","queryFiles","allQueries","queryResolver","getQueryResolver","allFiles2"],"sources":["../../src/generate.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["__create","Object","create","__defProp","defineProperty","__getOwnPropDesc","getOwnPropertyDescriptor","__getOwnPropNames","getOwnPropertyNames","__getProtoOf","getPrototypeOf","__hasOwnProp","prototype","hasOwnProperty","__export","target","all","name","get","enumerable","__copyProps","to","from","except","desc","key","call","__toESM","mod","isNodeMode","__esModule","value","__toCommonJS","generate_exports","generate","generateDrizzleSchemaFile","watch","module","exports","import_crypto","require","import_fs","import_path","import_generate_helpers","hash","s","createHash","update","digest","hashInputTree","baseDir","generatedDir","parts","walk","dir","existsSync","entries","readdirSync","withFileTypes","sort","a","b","_iteratorNormalCompletion","_didIteratorError","_iteratorError","_iterator","Symbol","iterator","_step","next","done","entry","full","resolve","isDirectory","isFile","endsWith","push","readFileSync","err","return","join","generateCache","generateCachePath","getCacheDir","process","cwd","nm","cacheDir","mkdirSync","recursive","loadCache","JSON","parse","e","saveCache","writeFileSync","stringify","writeFileIfChanged","filePath","content","contentHash","cachedHash","createTypeResolver","ts","files","configPath","findConfigFile","sys","fileExists","compilerOptions","ScriptTarget","Latest","ModuleKind","ESNext","moduleResolution","ModuleResolutionKind","Bundler","strict","skipLibCheck","noEmit","configFile","readConfigFile","readFile","config","parsed","parseJsonConfigFileContent","dirname","options","fileMap","Map","f","set","path","host","createCompilerHost","originalGetSourceFile","getSourceFile","bind","fileName","languageVersion","onError","createSourceFile","has","_fileMap_get","program","createProgram","map","f2","checker","getTypeChecker","resolveType","node","getTypeFromTypeNode","typeToValibot","type","tsTypeToValibot","resolveParamType","resolver","sourceFile","exportName","paramIndex","result","forEachChild","_node_modifiers","isVariableStatement","modifiers","some","m","kind","SyntaxKind","ExportKeyword","decl","declarationList","declarations","isVariableDeclaration","getText","initializer","isArrowFunction","param","parameters","resolveMutationParamTypes","resolved","isCallExpression","args","arguments","handlersArg","i","length","isObjectLiteralExpression","properties","prop","_prop_name","isPropertyAssignment","isMethodDeclaration","params","init","isFunctionExpression","typeNode","expanded","extractMutationsFromModel","silent","resolvedTypes","resolvedTypeToValibot","mutateNode","modelName","basename","hasCRUD","columns","primaryKeys","custom","firstArg","hasNamedModel","Boolean","isStringLiteralLike","extractSchemaColumns","_secondParam_type","paramType","valibotCode","secondParam","resolvedType","visit","text","expression","arg","isStringLiteral","obj","_iteratorNormalCompletion1","_didIteratorError1","_iteratorError1","_iterator1","_step1","colName","initText","colType","parseColumnType","seen","_checker_isArrayType","_checker_isArrayLikeType","Set","flags","getFlags","TypeFlags","Intersection","add","recurse","t","String","Number","Void","Undefined","Null","Any","Unknown","Never","TemplateLiteral","isArrayType","isArrayLikeType","_checker_getTypeArguments","_type_getNumberIndexType","_checker_getTypeArguments1","typeArgs","getTypeArguments","elementType","getNumberIndexType","StringLiteral","NumberLiteral","BooleanLiteral","intrinsicName","isUnion","members","types","hasNull","hasUndefined","rest","filter","every","inner","inner1","resolveSymbolType","prop2","_prop_declarations","valueDeclaration","getTypeOfSymbolAtLocation","getDeclaredTypeOfSymbol","isIntersection","props","getProperties","name1","getName","shouldSkipObjectKey","propType","isOptional","SymbolFlags","Optional","val","startsWith","formatObjectKey","props1","objectFlags","_type_objectFlags","ObjectFlags","Reference","_typeRef_typeArguments","typeRef","symbol","getSymbol","name2","typeArguments","Tuple","typeRef1","typeArgs1","entries1","prop1","name3","propType1","isOptional1","val1","stringIndex","getStringIndexType","numberIndex","serializeColumnBuilder","col","zeroType","expr","serverName","optional","schema","lines","tableNames","keys","tables","tableName","colEntries","pkArgs","primaryKey","k","relTableNames","relationships","tableName1","rels","relEntries","relBody","relName","hops","hop","fn","cardinality","sf","sourceField","df","destField","destSchema","hopCode","hop2","fn2","sf2","df2","tableList","n","relList","after","mutationsDir","usesMutationsDir","modelsDir","modelsDirName","queriesDir","inputHash","__inputHash","counts","__counts","_counts_modelCount","_counts_schemaCount","_counts_queryCount","_counts_mutationCount","filesChanged","modelCount","schemaCount","queryCount","mutationCount","allModelFiles","filesWithSchema","includes","allModelNames","schemaModelNames","writeResults","generateModelsFile","generateTypesFile","generateTablesFile","generateReadmeFile","parseTypeString","trim","queryFiles","allQueries","queryResolver","getQueryResolver","allFiles2","_loop","file2","filePath2","fileBaseName2","content2","sourceFile2","exportModifier","find","declaration","_param_type","resolverSourceFile","console","error","groupedChanged","generateGroupedQueriesFile","syncedChanged","generateSyncedQueriesFile","allModelMutations","mutationFiles","unresolvedModels","file","fileBaseName","baseName","hasUnresolved","collectTsFiles","dir2","results","_iteratorNormalCompletion4","_didIteratorError4","_iteratorError4","_iterator4","_step4","fullPath","allFiles","modelResolver","_iteratorNormalCompletion2","_didIteratorError2","_iteratorError2","_loop1","_step2","size","result2","idx","findIndex","_iterator2","_iteratorNormalCompletion3","_didIteratorError3","_iteratorError3","_loop2","model","_step3","_iterator3","mutationsChanged","generateSyncedMutationsFile","info","execSync","stdio","env","ON_ZERO_GENERATED_DIR","debounce","chokidar","debounceTimer","debouncedRegenerate","event","clearTimeout","setTimeout","watcher","persistent","ignoreInitial","ignored","on"],"sources":["generate.native.js"],"sourcesContent":["\"use strict\";\nvar __create = Object.create;\nvar __defProp = Object.defineProperty;\nvar __getOwnPropDesc = Object.getOwnPropertyDescriptor;\nvar __getOwnPropNames = Object.getOwnPropertyNames;\nvar __getProtoOf = Object.getPrototypeOf;\nvar __hasOwnProp = Object.prototype.hasOwnProperty;\nvar __export = (target, all) => {\n for (var name in all)\n __defProp(target, name, { get: all[name], enumerable: true });\n};\nvar __copyProps = (to, from, except, desc) => {\n if (from && typeof from === \"object\" || typeof from === \"function\") {\n for (let key of __getOwnPropNames(from))\n if (!__hasOwnProp.call(to, key) && key !== except)\n __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });\n }\n return to;\n};\nvar __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(\n // If the importer is in node compatibility mode or this is not an ESM\n // file that has been converted to a CommonJS file using a Babel-\n // compatible transform (i.e. \"__esModule\" has not been set), then set\n // \"default\" to the CommonJS \"module.exports\" for node compatibility.\n isNodeMode || !mod || !mod.__esModule ? __defProp(target, \"default\", { value: mod, enumerable: true }) : target,\n mod\n));\nvar __toCommonJS = (mod) => __copyProps(__defProp({}, \"__esModule\", { value: true }), mod);\nvar generate_exports = {};\n__export(generate_exports, {\n generate: () => generate,\n generateDrizzleSchemaFile: () => generateDrizzleSchemaFile,\n watch: () => watch\n});\nmodule.exports = __toCommonJS(generate_exports);\nvar import_crypto = require(\"crypto\");\nvar import_fs = require(\"fs\");\nvar import_path = require(\"path\");\nvar import_generate_helpers = require(\"./generate-helpers\");\nvar hash = function(s) {\n return (0, import_crypto.createHash)(\"sha256\").update(s).digest(\"hex\");\n};\nfunction hashInputTree(baseDir, generatedDir) {\n var parts = [];\n var walk = function(dir) {\n if (!(0, import_fs.existsSync)(dir)) return;\n var entries = (0, import_fs.readdirSync)(dir, {\n withFileTypes: true\n }).sort(function(a, b) {\n return a.name < b.name ? -1 : 1;\n });\n var _iteratorNormalCompletion = true, _didIteratorError = false, _iteratorError = void 0;\n try {\n for (var _iterator = entries[Symbol.iterator](), _step; !(_iteratorNormalCompletion = (_step = _iterator.next()).done); _iteratorNormalCompletion = true) {\n var entry = _step.value;\n var full = (0, import_path.resolve)(dir, entry.name);\n if (entry.isDirectory()) {\n if (entry.name === \"node_modules\" || full === generatedDir) continue;\n walk(full);\n } else if (entry.isFile() && entry.name.endsWith(\".ts\") && !entry.name.endsWith(\".d.ts\")) {\n parts.push(`${full}\\0${(0, import_fs.readFileSync)(full, \"utf-8\")}`);\n }\n }\n } catch (err) {\n _didIteratorError = true;\n _iteratorError = err;\n } finally {\n try {\n if (!_iteratorNormalCompletion && _iterator.return != null) {\n _iterator.return();\n }\n } finally {\n if (_didIteratorError) {\n throw _iteratorError;\n }\n }\n }\n };\n walk(baseDir);\n return hash(parts.join(\"\\0\"));\n}\nvar generateCache = {};\nvar generateCachePath = \"\";\nfunction getCacheDir() {\n var dir = process.cwd();\n while (dir !== \"/\") {\n var nm = (0, import_path.resolve)(dir, \"node_modules\");\n if ((0, import_fs.existsSync)(nm)) {\n var cacheDir = (0, import_path.resolve)(nm, \".on-zero\");\n if (!(0, import_fs.existsSync)(cacheDir)) {\n (0, import_fs.mkdirSync)(cacheDir, {\n recursive: true\n });\n }\n return cacheDir;\n }\n dir = (0, import_path.resolve)(dir, \"..\");\n }\n return null;\n}\nfunction loadCache() {\n var cacheDir = getCacheDir();\n if (!cacheDir) return;\n generateCachePath = (0, import_path.resolve)(cacheDir, \"generate-cache.json\");\n try {\n generateCache = JSON.parse((0, import_fs.readFileSync)(generateCachePath, \"utf-8\"));\n } catch (e) {\n generateCache = {};\n }\n}\nfunction saveCache() {\n if (generateCachePath) {\n (0, import_fs.writeFileSync)(generateCachePath, JSON.stringify(generateCache) + \"\\n\", \"utf-8\");\n }\n}\nfunction writeFileIfChanged(filePath, content) {\n var contentHash = hash(content);\n var cachedHash = generateCache[filePath];\n if (cachedHash === contentHash && (0, import_fs.existsSync)(filePath)) {\n return false;\n }\n (0, import_fs.writeFileSync)(filePath, content, \"utf-8\");\n generateCache[filePath] = contentHash;\n return true;\n}\nfunction createTypeResolver(ts, files, dir) {\n var configPath = ts.findConfigFile(dir, ts.sys.fileExists, \"tsconfig.json\");\n var compilerOptions = {\n target: ts.ScriptTarget.Latest,\n module: ts.ModuleKind.ESNext,\n moduleResolution: ts.ModuleResolutionKind.Bundler,\n strict: false,\n skipLibCheck: true,\n noEmit: true\n };\n if (configPath) {\n var configFile = ts.readConfigFile(configPath, ts.sys.readFile);\n if (configFile.config) {\n var parsed = ts.parseJsonConfigFileContent(configFile.config, ts.sys, (0, import_path.dirname)(configPath));\n compilerOptions = {\n ...compilerOptions,\n ...parsed.options\n };\n }\n }\n var fileMap = /* @__PURE__ */ new Map();\n var _iteratorNormalCompletion = true, _didIteratorError = false, _iteratorError = void 0;\n try {\n for (var _iterator = files[Symbol.iterator](), _step; !(_iteratorNormalCompletion = (_step = _iterator.next()).done); _iteratorNormalCompletion = true) {\n var f = _step.value;\n fileMap.set(f.path, f.content);\n }\n } catch (err) {\n _didIteratorError = true;\n _iteratorError = err;\n } finally {\n try {\n if (!_iteratorNormalCompletion && _iterator.return != null) {\n _iterator.return();\n }\n } finally {\n if (_didIteratorError) {\n throw _iteratorError;\n }\n }\n }\n var host = ts.createCompilerHost(compilerOptions);\n var originalGetSourceFile = host.getSourceFile.bind(host);\n host.getSourceFile = function(fileName, languageVersion, onError) {\n var content = fileMap.get(fileName);\n if (content !== void 0) {\n return ts.createSourceFile(fileName, content, languageVersion, true);\n }\n return originalGetSourceFile(fileName, languageVersion, onError);\n };\n host.fileExists = function(fileName) {\n return fileMap.has(fileName) || ts.sys.fileExists(fileName);\n };\n host.readFile = function(fileName) {\n var _fileMap_get;\n return (_fileMap_get = fileMap.get(fileName)) !== null && _fileMap_get !== void 0 ? _fileMap_get : ts.sys.readFile(fileName);\n };\n var program = ts.createProgram(files.map(function(f2) {\n return f2.path;\n }), compilerOptions, host);\n var checker = program.getTypeChecker();\n return {\n program,\n checker,\n // resolve a type annotation node to a ts.Type\n resolveType(node) {\n try {\n return checker.getTypeFromTypeNode(node);\n } catch (e) {\n return null;\n }\n },\n // convert a resolved type to valibot code\n typeToValibot(type) {\n return tsTypeToValibot(ts, checker, type);\n }\n };\n}\nfunction resolveParamType(ts, resolver, sourceFile, exportName, paramIndex) {\n var result = null;\n ts.forEachChild(sourceFile, function(node) {\n var _node_modifiers;\n if (result) return;\n if (!ts.isVariableStatement(node)) return;\n if (!((_node_modifiers = node.modifiers) === null || _node_modifiers === void 0 ? void 0 : _node_modifiers.some(function(m) {\n return m.kind === ts.SyntaxKind.ExportKeyword;\n }))) return;\n var decl = node.declarationList.declarations[0];\n if (!decl || !ts.isVariableDeclaration(decl)) return;\n if (decl.name.getText(sourceFile) !== exportName) return;\n if (decl.initializer && ts.isArrowFunction(decl.initializer)) {\n var param = decl.initializer.parameters[paramIndex];\n if (param === null || param === void 0 ? void 0 : param.type) {\n result = resolver.resolveType(param.type);\n }\n }\n });\n return result;\n}\nfunction resolveMutationParamTypes(ts, resolver, sourceFile) {\n var resolved = /* @__PURE__ */ new Map();\n ts.forEachChild(sourceFile, function(node) {\n var _node_modifiers;\n if (!ts.isVariableStatement(node)) return;\n if (!((_node_modifiers = node.modifiers) === null || _node_modifiers === void 0 ? void 0 : _node_modifiers.some(function(m) {\n return m.kind === ts.SyntaxKind.ExportKeyword;\n }))) return;\n var decl = node.declarationList.declarations[0];\n if (!decl || !ts.isVariableDeclaration(decl)) return;\n if (decl.name.getText(sourceFile) !== \"mutate\") return;\n if (!decl.initializer || !ts.isCallExpression(decl.initializer)) return;\n var args = decl.initializer.arguments;\n var handlersArg = null;\n for (var i = args.length - 1; i >= 0; i--) {\n if (ts.isObjectLiteralExpression(args[i])) {\n handlersArg = args[i];\n break;\n }\n }\n if (!handlersArg) return;\n var _iteratorNormalCompletion = true, _didIteratorError = false, _iteratorError = void 0;\n try {\n for (var _iterator = handlersArg.properties[Symbol.iterator](), _step; !(_iteratorNormalCompletion = (_step = _iterator.next()).done); _iteratorNormalCompletion = true) {\n var prop = _step.value;\n var _prop_name;\n if (!ts.isPropertyAssignment(prop) && !ts.isMethodDeclaration(prop)) continue;\n var name = (_prop_name = prop.name) === null || _prop_name === void 0 ? void 0 : _prop_name.getText(sourceFile);\n if (!name) continue;\n var params = null;\n if (ts.isPropertyAssignment(prop)) {\n var init = prop.initializer;\n if (ts.isArrowFunction(init) || ts.isFunctionExpression(init)) {\n params = init.parameters;\n }\n } else if (ts.isMethodDeclaration(prop)) {\n params = prop.parameters;\n }\n if (!params || params.length < 2) continue;\n var typeNode = params[1].type;\n if (!typeNode) continue;\n var expanded = resolver.resolveType(typeNode);\n if (expanded) {\n resolved.set(name, expanded);\n }\n }\n } catch (err) {\n _didIteratorError = true;\n _iteratorError = err;\n } finally {\n try {\n if (!_iteratorNormalCompletion && _iterator.return != null) {\n _iterator.return();\n }\n } finally {\n if (_didIteratorError) {\n throw _iteratorError;\n }\n }\n }\n });\n return resolved;\n}\nfunction extractMutationsFromModel(ts, sourceFile, content, fileName, silent, typeToValibot, resolvedTypes, resolvedTypeToValibot) {\n var mutateNode = null;\n ts.forEachChild(sourceFile, function(node) {\n var _node_modifiers;\n if (!ts.isVariableStatement(node)) return;\n if (!((_node_modifiers = node.modifiers) === null || _node_modifiers === void 0 ? void 0 : _node_modifiers.some(function(m) {\n return m.kind === ts.SyntaxKind.ExportKeyword;\n }))) return;\n var decl = node.declarationList.declarations[0];\n if (!decl || !ts.isVariableDeclaration(decl)) return;\n if (decl.name.getText(sourceFile) !== \"mutate\") return;\n if (decl.initializer && ts.isCallExpression(decl.initializer)) {\n mutateNode = decl.initializer;\n }\n });\n if (!mutateNode) {\n return {\n modelName: (0, import_path.basename)(fileName, \".ts\"),\n hasCRUD: false,\n columns: {},\n primaryKeys: [],\n custom: []\n };\n }\n var call = mutateNode;\n var args = call.arguments;\n var firstArg = args[0];\n var hasNamedModel = Boolean(firstArg && ts.isStringLiteralLike(firstArg));\n var hasCRUD = args.length >= 2 && !hasNamedModel;\n var handlersArg = null;\n if (args.length === 1 && ts.isObjectLiteralExpression(args[0])) {\n handlersArg = args[0];\n } else if (hasNamedModel) {\n if (args.length >= 3 && ts.isObjectLiteralExpression(args[2])) {\n handlersArg = args[2];\n } else if (args.length >= 2 && ts.isObjectLiteralExpression(args[1])) {\n handlersArg = args[1];\n }\n } else if (args.length === 3 && ts.isObjectLiteralExpression(args[2])) {\n handlersArg = args[2];\n }\n var columns = {};\n var primaryKeys = [];\n if (hasCRUD) {\n extractSchemaColumns(ts, sourceFile, columns, primaryKeys);\n }\n var custom = [];\n if (handlersArg) {\n var _iteratorNormalCompletion = true, _didIteratorError = false, _iteratorError = void 0;\n try {\n for (var _iterator = handlersArg.properties[Symbol.iterator](), _step; !(_iteratorNormalCompletion = (_step = _iterator.next()).done); _iteratorNormalCompletion = true) {\n var prop = _step.value;\n var _prop_name, _secondParam_type;\n if (!ts.isPropertyAssignment(prop) && !ts.isMethodDeclaration(prop)) continue;\n var name = (_prop_name = prop.name) === null || _prop_name === void 0 ? void 0 : _prop_name.getText(sourceFile);\n if (!name) continue;\n var params = null;\n if (ts.isPropertyAssignment(prop)) {\n var init = prop.initializer;\n if (ts.isArrowFunction(init) || ts.isFunctionExpression(init)) {\n params = init.parameters;\n }\n } else if (ts.isMethodDeclaration(prop)) {\n params = prop.parameters;\n }\n if (!params) continue;\n if (params.length < 2) {\n custom.push({\n name,\n paramType: \"void\",\n valibotCode: \"\"\n });\n continue;\n }\n var secondParam = params[1];\n var paramType = ((_secondParam_type = secondParam.type) === null || _secondParam_type === void 0 ? void 0 : _secondParam_type.getText(sourceFile)) || \"unknown\";\n if (paramType === \"unknown\") {\n custom.push({\n name,\n paramType: \"unknown\",\n valibotCode: \"\"\n });\n continue;\n }\n var valibotCode = typeToValibot(paramType);\n if (!valibotCode && resolvedTypes && resolvedTypeToValibot) {\n var resolvedType = resolvedTypes.get(name);\n if (resolvedType) {\n valibotCode = resolvedTypeToValibot(resolvedType);\n }\n }\n custom.push({\n name,\n paramType,\n valibotCode: valibotCode || \"\"\n });\n }\n } catch (err) {\n _didIteratorError = true;\n _iteratorError = err;\n } finally {\n try {\n if (!_iteratorNormalCompletion && _iterator.return != null) {\n _iterator.return();\n }\n } finally {\n if (_didIteratorError) {\n throw _iteratorError;\n }\n }\n }\n }\n return {\n modelName: \"\",\n hasCRUD,\n columns,\n primaryKeys,\n custom\n };\n}\nfunction extractSchemaColumns(ts, sourceFile, columns, primaryKeys) {\n function visit(node) {\n if (ts.isCallExpression(node)) {\n var text = node.expression.getText(sourceFile);\n if (text.endsWith(\".primaryKey\")) {\n var _iteratorNormalCompletion = true, _didIteratorError = false, _iteratorError = void 0;\n try {\n for (var _iterator = node.arguments[Symbol.iterator](), _step; !(_iteratorNormalCompletion = (_step = _iterator.next()).done); _iteratorNormalCompletion = true) {\n var arg = _step.value;\n if (ts.isStringLiteral(arg)) {\n primaryKeys.push(arg.text);\n }\n }\n } catch (err) {\n _didIteratorError = true;\n _iteratorError = err;\n } finally {\n try {\n if (!_iteratorNormalCompletion && _iterator.return != null) {\n _iterator.return();\n }\n } finally {\n if (_didIteratorError) {\n throw _iteratorError;\n }\n }\n }\n }\n if (text.endsWith(\".columns\") && node.arguments.length === 1) {\n var obj = node.arguments[0];\n if (ts.isObjectLiteralExpression(obj)) {\n var _iteratorNormalCompletion1 = true, _didIteratorError1 = false, _iteratorError1 = void 0;\n try {\n for (var _iterator1 = obj.properties[Symbol.iterator](), _step1; !(_iteratorNormalCompletion1 = (_step1 = _iterator1.next()).done); _iteratorNormalCompletion1 = true) {\n var prop = _step1.value;\n var _prop_name;\n if (!ts.isPropertyAssignment(prop)) continue;\n var colName = (_prop_name = prop.name) === null || _prop_name === void 0 ? void 0 : _prop_name.getText(sourceFile);\n if (!colName) continue;\n var initText = prop.initializer.getText(sourceFile);\n var colType = (0, import_generate_helpers.parseColumnType)(initText);\n columns[colName] = colType;\n }\n } catch (err) {\n _didIteratorError1 = true;\n _iteratorError1 = err;\n } finally {\n try {\n if (!_iteratorNormalCompletion1 && _iterator1.return != null) {\n _iterator1.return();\n }\n } finally {\n if (_didIteratorError1) {\n throw _iteratorError1;\n }\n }\n }\n }\n }\n }\n ts.forEachChild(node, visit);\n }\n visit(sourceFile);\n}\nfunction tsTypeToValibot(ts, checker, type, seen) {\n var _checker_isArrayType, _checker_isArrayLikeType;\n if (!seen) seen = /* @__PURE__ */ new Set();\n var flags = type.getFlags();\n if (flags & (ts.TypeFlags.Object | ts.TypeFlags.Intersection)) {\n if (seen.has(type)) return \"v.unknown()\";\n seen.add(type);\n }\n var recurse = function(t) {\n return tsTypeToValibot(ts, checker, t, seen);\n };\n if (flags & ts.TypeFlags.String) return \"v.string()\";\n if (flags & ts.TypeFlags.Number) return \"v.number()\";\n if (flags & ts.TypeFlags.Boolean) return \"v.boolean()\";\n if (flags & ts.TypeFlags.Void || flags & ts.TypeFlags.Undefined) return \"v.void_()\";\n if (flags & ts.TypeFlags.Null) return \"v.null_()\";\n if (flags & ts.TypeFlags.Any || flags & ts.TypeFlags.Unknown) return \"v.unknown()\";\n if (flags & ts.TypeFlags.Never) return \"v.never()\";\n if (flags & ts.TypeFlags.TemplateLiteral) return \"v.string()\";\n if (flags & ts.TypeFlags.Object && (((_checker_isArrayType = checker.isArrayType) === null || _checker_isArrayType === void 0 ? void 0 : _checker_isArrayType.call(checker, type)) || ((_checker_isArrayLikeType = checker.isArrayLikeType) === null || _checker_isArrayLikeType === void 0 ? void 0 : _checker_isArrayLikeType.call(checker, type)))) {\n var _checker_getTypeArguments, _type_getNumberIndexType;\n var _checker_getTypeArguments1;\n var typeArgs = (_checker_getTypeArguments1 = (_checker_getTypeArguments = checker.getTypeArguments) === null || _checker_getTypeArguments === void 0 ? void 0 : _checker_getTypeArguments.call(checker, type)) !== null && _checker_getTypeArguments1 !== void 0 ? _checker_getTypeArguments1 : [];\n var elementType = typeArgs.length === 1 ? typeArgs[0] : (_type_getNumberIndexType = type.getNumberIndexType) === null || _type_getNumberIndexType === void 0 ? void 0 : _type_getNumberIndexType.call(type);\n return `v.array(${elementType ? recurse(elementType) : \"v.unknown()\"})`;\n }\n if (flags & ts.TypeFlags.StringLiteral) {\n return `v.literal(${JSON.stringify(type.value)})`;\n }\n if (flags & ts.TypeFlags.NumberLiteral) {\n return `v.literal(${type.value})`;\n }\n if (flags & ts.TypeFlags.BooleanLiteral) {\n var name = type.intrinsicName;\n return `v.literal(${name === \"true\"})`;\n }\n if (type.isUnion()) {\n var members = type.types;\n var hasNull = members.some(function(t) {\n return t.getFlags() & ts.TypeFlags.Null;\n });\n var hasUndefined = members.some(function(t) {\n return t.getFlags() & (ts.TypeFlags.Undefined | ts.TypeFlags.Void);\n });\n var rest = members.filter(function(t) {\n return !(t.getFlags() & (ts.TypeFlags.Null | ts.TypeFlags.Undefined | ts.TypeFlags.Void));\n });\n if (rest.length === 2 && rest.every(function(t) {\n return t.getFlags() & ts.TypeFlags.BooleanLiteral;\n })) {\n var inner = \"v.boolean()\";\n if (hasNull) inner = `v.nullable(${inner})`;\n if (hasUndefined) inner = `v.optional(${inner})`;\n return inner;\n }\n if (rest.length === 0) return \"v.unknown()\";\n var inner1 = rest.length === 1 ? recurse(rest[0]) : `v.union([${rest.map(function(t) {\n return recurse(t);\n }).join(\", \")}])`;\n if (hasNull) inner1 = `v.nullable(${inner1})`;\n if (hasUndefined) inner1 = `v.optional(${inner1})`;\n return inner1;\n }\n var resolveSymbolType = function(prop2) {\n var _prop_declarations;\n if (prop2.valueDeclaration) return checker.getTypeOfSymbolAtLocation(prop2, prop2.valueDeclaration);\n if ((_prop_declarations = prop2.declarations) === null || _prop_declarations === void 0 ? void 0 : _prop_declarations[0]) return checker.getTypeOfSymbolAtLocation(prop2, prop2.declarations[0]);\n return checker.getDeclaredTypeOfSymbol(prop2);\n };\n if (type.isIntersection()) {\n var props = type.getProperties();\n if (props.length === 0) return \"v.object({})\";\n var entries = [];\n var _iteratorNormalCompletion = true, _didIteratorError = false, _iteratorError = void 0;\n try {\n for (var _iterator = props[Symbol.iterator](), _step; !(_iteratorNormalCompletion = (_step = _iterator.next()).done); _iteratorNormalCompletion = true) {\n var prop = _step.value;\n var name1 = prop.getName();\n if ((0, import_generate_helpers.shouldSkipObjectKey)(name1)) continue;\n var propType = resolveSymbolType(prop);\n var isOptional = !!(prop.getFlags() & ts.SymbolFlags.Optional);\n var val = recurse(propType);\n if (isOptional && !val.startsWith(\"v.optional(\")) {\n val = `v.optional(${val})`;\n }\n entries.push(`${(0, import_generate_helpers.formatObjectKey)(name1)}: ${val}`);\n }\n } catch (err) {\n _didIteratorError = true;\n _iteratorError = err;\n } finally {\n try {\n if (!_iteratorNormalCompletion && _iterator.return != null) {\n _iterator.return();\n }\n } finally {\n if (_didIteratorError) {\n throw _iteratorError;\n }\n }\n }\n if (entries.length === 0) return \"v.object({})\";\n return `v.object({\n ${entries.join(\",\\n \")},\n })`;\n }\n var props1 = type.getProperties();\n if (props1.length > 0 && (type.getFlags() & ts.TypeFlags.Object || type.objectFlags)) {\n var _type_objectFlags;\n var objectFlags = (_type_objectFlags = type.objectFlags) !== null && _type_objectFlags !== void 0 ? _type_objectFlags : 0;\n if (objectFlags & ts.ObjectFlags.Reference) {\n var _typeRef_typeArguments;\n var typeRef = type;\n var symbol = type.getSymbol();\n var name2 = symbol === null || symbol === void 0 ? void 0 : symbol.getName();\n if ((name2 === \"Array\" || name2 === \"ReadonlyArray\") && ((_typeRef_typeArguments = typeRef.typeArguments) === null || _typeRef_typeArguments === void 0 ? void 0 : _typeRef_typeArguments.length) === 1) {\n return `v.array(${recurse(typeRef.typeArguments[0])})`;\n }\n }\n if (objectFlags & ts.ObjectFlags.Tuple) {\n var typeRef1 = type;\n var typeArgs1 = typeRef1.typeArguments || [];\n return `v.tuple([${typeArgs1.map(function(t) {\n return recurse(t);\n }).join(\", \")}])`;\n }\n var entries1 = [];\n var _iteratorNormalCompletion1 = true, _didIteratorError1 = false, _iteratorError1 = void 0;\n try {\n for (var _iterator1 = props1[Symbol.iterator](), _step1; !(_iteratorNormalCompletion1 = (_step1 = _iterator1.next()).done); _iteratorNormalCompletion1 = true) {\n var prop1 = _step1.value;\n var name3 = prop1.getName();\n if ((0, import_generate_helpers.shouldSkipObjectKey)(name3)) continue;\n var propType1 = resolveSymbolType(prop1);\n var isOptional1 = !!(prop1.getFlags() & ts.SymbolFlags.Optional);\n var val1 = recurse(propType1);\n if (isOptional1 && !val1.startsWith(\"v.optional(\")) {\n val1 = `v.optional(${val1})`;\n }\n entries1.push(`${(0, import_generate_helpers.formatObjectKey)(name3)}: ${val1}`);\n }\n } catch (err) {\n _didIteratorError1 = true;\n _iteratorError1 = err;\n } finally {\n try {\n if (!_iteratorNormalCompletion1 && _iterator1.return != null) {\n _iterator1.return();\n }\n } finally {\n if (_didIteratorError1) {\n throw _iteratorError1;\n }\n }\n }\n if (entries1.length === 0) return \"v.object({})\";\n return `v.object({\n ${entries1.join(\",\\n \")},\n })`;\n }\n var stringIndex = type.getStringIndexType();\n if (stringIndex) {\n return `v.record(v.string(), ${recurse(stringIndex)})`;\n }\n var numberIndex = type.getNumberIndexType();\n if (numberIndex) {\n return `v.record(v.number(), ${recurse(numberIndex)})`;\n }\n return \"v.unknown()\";\n}\nfunction serializeColumnBuilder(col) {\n var zeroType = col.type === \"string\" ? \"string\" : col.type === \"number\" ? \"number\" : col.type === \"boolean\" ? \"boolean\" : \"json\";\n var expr = `${zeroType}()`;\n if (col.serverName) {\n expr += `.from('${col.serverName}')`;\n }\n if (col.optional) {\n expr += \".optional()\";\n }\n return expr;\n}\nfunction generateDrizzleSchemaFile(schema) {\n var lines = [\n `// auto-generated by: on-zero generate (from drizzle schema)`,\n `import { boolean, createSchema, json, number, relationships, string, table } from '@rocicorp/zero'`,\n ``\n ];\n var tableNames = Object.keys(schema.tables).sort();\n var _iteratorNormalCompletion = true, _didIteratorError = false, _iteratorError = void 0;\n try {\n for (var _iterator = tableNames[Symbol.iterator](), _step; !(_iteratorNormalCompletion = (_step = _iterator.next()).done); _iteratorNormalCompletion = true) {\n var tableName = _step.value;\n var t = schema.tables[tableName];\n var colEntries = Object.entries(t.columns).map(function(param) {\n var [colName, col] = param;\n return ` ${colName}: ${serializeColumnBuilder(col)},`;\n }).join(\"\\n\");\n var pkArgs = t.primaryKey.map(function(k) {\n return `'${k}'`;\n }).join(\", \");\n lines.push(`const ${tableName}Table = table('${t.name}')`);\n lines.push(` .columns({`);\n lines.push(colEntries);\n lines.push(` })`);\n lines.push(` .primaryKey(${pkArgs})`);\n lines.push(``);\n }\n } catch (err) {\n _didIteratorError = true;\n _iteratorError = err;\n } finally {\n try {\n if (!_iteratorNormalCompletion && _iterator.return != null) {\n _iterator.return();\n }\n } finally {\n if (_didIteratorError) {\n throw _iteratorError;\n }\n }\n }\n var relTableNames = Object.keys(schema.relationships).sort();\n var _iteratorNormalCompletion1 = true, _didIteratorError1 = false, _iteratorError1 = void 0;\n try {\n for (var _iterator1 = relTableNames[Symbol.iterator](), _step1; !(_iteratorNormalCompletion1 = (_step1 = _iterator1.next()).done); _iteratorNormalCompletion1 = true) {\n var tableName1 = _step1.value;\n var rels = schema.relationships[tableName1];\n var relEntries = Object.entries(rels);\n if (relEntries.length === 0) continue;\n var relBody = relEntries.map(function(param) {\n var [relName, hops] = param;\n if (hops.length === 1) {\n var hop = hops[0];\n var fn = hop.cardinality === \"one\" ? \"one\" : \"many\";\n var sf = hop.sourceField.map(function(f) {\n return `'${f}'`;\n }).join(\", \");\n var df = hop.destField.map(function(f) {\n return `'${f}'`;\n }).join(\", \");\n return ` ${relName}: ${fn}({\n sourceField: [${sf}],\n destSchema: ${hop.destSchema}Table,\n destField: [${df}],\n })`;\n }\n var hopCode = hops.map(function(hop2) {\n var fn2 = hop2.cardinality === \"one\" ? \"one\" : \"many\";\n var sf2 = hop2.sourceField.map(function(f) {\n return `'${f}'`;\n }).join(\", \");\n var df2 = hop2.destField.map(function(f) {\n return `'${f}'`;\n }).join(\", \");\n return `${fn2}({ sourceField: [${sf2}], destSchema: ${hop2.destSchema}Table, destField: [${df2}] })`;\n }).join(\", \");\n return ` ${relName}: [${hopCode}]`;\n }).join(\",\\n\");\n lines.push(`const ${tableName1}Relationships = relationships(${tableName1}Table, ({ one, many }) => ({`);\n lines.push(relBody);\n lines.push(`}))`);\n lines.push(``);\n }\n } catch (err) {\n _didIteratorError1 = true;\n _iteratorError1 = err;\n } finally {\n try {\n if (!_iteratorNormalCompletion1 && _iterator1.return != null) {\n _iterator1.return();\n }\n } finally {\n if (_didIteratorError1) {\n throw _iteratorError1;\n }\n }\n }\n var tableList = tableNames.map(function(n) {\n return ` ${n}Table,`;\n }).join(\"\\n\");\n var relList = relTableNames.filter(function(n) {\n return Object.keys(schema.relationships[n]).length > 0;\n }).map(function(n) {\n return ` ${n}Relationships,`;\n }).join(\"\\n\");\n lines.push(`export const schema = createSchema({`);\n lines.push(` tables: [`);\n lines.push(tableList);\n lines.push(` ],`);\n lines.push(` relationships: [`);\n lines.push(relList);\n lines.push(` ],`);\n lines.push(`})`);\n lines.push(``);\n return lines.join(\"\\n\");\n}\nasync function generate(options) {\n var { dir, after, silent } = options;\n var baseDir = (0, import_path.resolve)(dir);\n var mutationsDir = (0, import_path.resolve)(baseDir, \"mutations\");\n var usesMutationsDir = (0, import_fs.existsSync)(mutationsDir);\n var modelsDir = usesMutationsDir ? mutationsDir : (0, import_path.resolve)(baseDir, \"models\");\n var modelsDirName = usesMutationsDir ? \"mutations\" : \"models\";\n var generatedDir = (0, import_path.resolve)(baseDir, \"generated\");\n var queriesDir = (0, import_path.resolve)(baseDir, \"queries\");\n if (!(0, import_fs.existsSync)(generatedDir)) {\n (0, import_fs.mkdirSync)(generatedDir, {\n recursive: true\n });\n }\n loadCache();\n var inputHash = hashInputTree(baseDir, generatedDir);\n if (generateCache.__inputHash === inputHash && (0, import_fs.existsSync)((0, import_path.resolve)(generatedDir, \"models.ts\"))) {\n var counts = {};\n try {\n counts = JSON.parse(generateCache.__counts || \"{}\");\n } catch (e) {\n }\n var _counts_modelCount, _counts_schemaCount, _counts_queryCount, _counts_mutationCount;\n return {\n filesChanged: 0,\n modelCount: (_counts_modelCount = counts.modelCount) !== null && _counts_modelCount !== void 0 ? _counts_modelCount : 0,\n schemaCount: (_counts_schemaCount = counts.schemaCount) !== null && _counts_schemaCount !== void 0 ? _counts_schemaCount : 0,\n queryCount: (_counts_queryCount = counts.queryCount) !== null && _counts_queryCount !== void 0 ? _counts_queryCount : 0,\n mutationCount: (_counts_mutationCount = counts.mutationCount) !== null && _counts_mutationCount !== void 0 ? _counts_mutationCount : 0\n };\n }\n var allModelFiles = (0, import_fs.readdirSync)(modelsDir).filter(function(f) {\n return f.endsWith(\".ts\");\n }).sort();\n var filesWithSchema = allModelFiles.filter(function(f) {\n return (0, import_fs.readFileSync)((0, import_path.resolve)(modelsDir, f), \"utf-8\").includes(\"export const schema = table(\");\n });\n var allModelNames = allModelFiles.map(function(f) {\n return (0, import_path.basename)(f, \".ts\");\n });\n var schemaModelNames = filesWithSchema.map(function(f) {\n return (0, import_path.basename)(f, \".ts\");\n });\n var writeResults = [\n writeFileIfChanged((0, import_path.resolve)(generatedDir, \"models.ts\"), (0, import_generate_helpers.generateModelsFile)(allModelNames, modelsDirName)),\n // only generate types.ts and tables.ts when model files define schemas.\n // when using drizzle-zero CLI for schema generation, these files are\n // managed externally and should not be overwritten.\n ...filesWithSchema.length > 0 ? [\n writeFileIfChanged((0, import_path.resolve)(generatedDir, \"types.ts\"), (0, import_generate_helpers.generateTypesFile)(schemaModelNames)),\n writeFileIfChanged((0, import_path.resolve)(generatedDir, \"tables.ts\"), (0, import_generate_helpers.generateTablesFile)(schemaModelNames, modelsDirName))\n ] : [],\n writeFileIfChanged((0, import_path.resolve)(generatedDir, \"README.md\"), (0, import_generate_helpers.generateReadmeFile)())\n ];\n var filesChanged = writeResults.filter(Boolean).length;\n var queryCount = 0;\n var mutationCount = 0;\n var ts = await import(\"typescript\");\n var typeToValibot = function(paramType) {\n try {\n return (0, import_generate_helpers.parseTypeString)(paramType.trim());\n } catch (e) {\n return null;\n }\n };\n if ((0, import_fs.existsSync)(queriesDir)) {\n var queryFiles = (0, import_fs.readdirSync)(queriesDir).filter(function(f) {\n return f.endsWith(\".ts\");\n });\n var allQueries = [];\n var queryResolver = null;\n var getQueryResolver = function() {\n if (!queryResolver) {\n var allFiles2 = (0, import_fs.readdirSync)(queriesDir).filter(function(f) {\n return f.endsWith(\".ts\");\n }).map(function(f) {\n return {\n path: (0, import_path.resolve)(queriesDir, f),\n content: (0, import_fs.readFileSync)((0, import_path.resolve)(queriesDir, f), \"utf-8\")\n };\n });\n queryResolver = createTypeResolver(ts, allFiles2, queriesDir);\n }\n return queryResolver;\n };\n var _iteratorNormalCompletion = true, _didIteratorError = false, _iteratorError = void 0;\n try {\n var _loop = function() {\n var file2 = _step.value;\n var filePath2 = (0, import_path.resolve)(queriesDir, file2);\n var fileBaseName2 = (0, import_path.basename)(file2, \".ts\");\n try {\n var content2 = (0, import_fs.readFileSync)(filePath2, \"utf-8\");\n var sourceFile2 = ts.createSourceFile(filePath2, content2, ts.ScriptTarget.Latest, true);\n ts.forEachChild(sourceFile2, function(node) {\n if (ts.isVariableStatement(node)) {\n var _node_modifiers;\n var exportModifier = (_node_modifiers = node.modifiers) === null || _node_modifiers === void 0 ? void 0 : _node_modifiers.find(function(m) {\n return m.kind === ts.SyntaxKind.ExportKeyword;\n });\n if (!exportModifier) return;\n var declaration = node.declarationList.declarations[0];\n if (!declaration || !ts.isVariableDeclaration(declaration)) return;\n var name = declaration.name.getText(sourceFile2);\n if (name === \"permission\") return;\n if (declaration.initializer && ts.isArrowFunction(declaration.initializer)) {\n var params = declaration.initializer.parameters;\n var paramType = \"void\";\n if (params.length > 0) {\n var _param_type;\n var param = params[0];\n paramType = ((_param_type = param.type) === null || _param_type === void 0 ? void 0 : _param_type.getText(sourceFile2)) || \"unknown\";\n }\n var valibotCode = typeToValibot(paramType);\n if (!valibotCode && params.length > 0 && params[0].type) {\n var resolver = getQueryResolver();\n var resolverSourceFile = resolver.program.getSourceFile(filePath2);\n if (resolverSourceFile) {\n var resolvedType = resolveParamType(ts, resolver, resolverSourceFile, name, 0);\n if (resolvedType) {\n valibotCode = resolver.typeToValibot(resolvedType);\n }\n }\n }\n if (valibotCode) {\n allQueries.push({\n name,\n params: paramType,\n valibotCode,\n sourceFile: fileBaseName2\n });\n } else if (!silent && paramType !== \"void\") {\n console.error(`\\u2717 ${name}: could not resolve type \"${paramType}\"`);\n }\n }\n }\n });\n } catch (err) {\n if (!silent) console.error(`Error processing ${file2}:`, err);\n }\n };\n for (var _iterator = queryFiles[Symbol.iterator](), _step; !(_iteratorNormalCompletion = (_step = _iterator.next()).done); _iteratorNormalCompletion = true) _loop();\n } catch (err) {\n _didIteratorError = true;\n _iteratorError = err;\n } finally {\n try {\n if (!_iteratorNormalCompletion && _iterator.return != null) {\n _iterator.return();\n }\n } finally {\n if (_didIteratorError) {\n throw _iteratorError;\n }\n }\n }\n queryCount = allQueries.length;\n var groupedChanged = writeFileIfChanged((0, import_path.resolve)(generatedDir, \"groupedQueries.ts\"), (0, import_generate_helpers.generateGroupedQueriesFile)(allQueries));\n var syncedChanged = writeFileIfChanged((0, import_path.resolve)(generatedDir, \"syncedQueries.ts\"), (0, import_generate_helpers.generateSyncedQueriesFile)(allQueries));\n if (groupedChanged) filesChanged++;\n if (syncedChanged) filesChanged++;\n }\n var allModelMutations = [];\n var mutationFiles = [];\n var unresolvedModels = [];\n var _iteratorNormalCompletion1 = true, _didIteratorError1 = false, _iteratorError1 = void 0;\n try {\n for (var _iterator1 = allModelFiles[Symbol.iterator](), _step1; !(_iteratorNormalCompletion1 = (_step1 = _iterator1.next()).done); _iteratorNormalCompletion1 = true) {\n var file = _step1.value;\n var filePath = (0, import_path.resolve)(modelsDir, file);\n var fileBaseName = (0, import_path.basename)(file, \".ts\");\n try {\n var content = (0, import_fs.readFileSync)(filePath, \"utf-8\");\n mutationFiles.push({\n path: filePath,\n content,\n baseName: fileBaseName\n });\n var sourceFile = ts.createSourceFile(filePath, content, ts.ScriptTarget.Latest, true);\n var result = extractMutationsFromModel(ts, sourceFile, content, filePath, !!silent, typeToValibot);\n if (result) {\n result.modelName = fileBaseName;\n allModelMutations.push(result);\n var hasUnresolved = result.custom.some(function(m) {\n return m.paramType !== \"void\" && m.paramType !== \"unknown\" && !m.valibotCode;\n });\n if (hasUnresolved) {\n unresolvedModels.push({\n baseName: fileBaseName,\n filePath\n });\n }\n }\n } catch (err) {\n if (!silent) console.error(`Error extracting mutations from ${file}:`, err);\n }\n }\n } catch (err) {\n _didIteratorError1 = true;\n _iteratorError1 = err;\n } finally {\n try {\n if (!_iteratorNormalCompletion1 && _iterator1.return != null) {\n _iterator1.return();\n }\n } finally {\n if (_didIteratorError1) {\n throw _iteratorError1;\n }\n }\n }\n if (unresolvedModels.length > 0) {\n var collectTsFiles = function(dir2) {\n var results = [];\n var _iteratorNormalCompletion4 = true, _didIteratorError4 = false, _iteratorError4 = void 0;\n try {\n for (var _iterator4 = (0, import_fs.readdirSync)(dir2, {\n withFileTypes: true\n })[Symbol.iterator](), _step4; !(_iteratorNormalCompletion4 = (_step4 = _iterator4.next()).done); _iteratorNormalCompletion4 = true) {\n var entry = _step4.value;\n var fullPath = (0, import_path.resolve)(dir2, entry.name);\n if (entry.isDirectory() && entry.name !== \"node_modules\") {\n results.push(...collectTsFiles(fullPath));\n } else if (entry.isFile() && entry.name.endsWith(\".ts\") && !entry.name.endsWith(\".d.ts\")) {\n results.push({\n path: fullPath,\n content: (0, import_fs.readFileSync)(fullPath, \"utf-8\")\n });\n }\n }\n } catch (err) {\n _didIteratorError4 = true;\n _iteratorError4 = err;\n } finally {\n try {\n if (!_iteratorNormalCompletion4 && _iterator4.return != null) {\n _iterator4.return();\n }\n } finally {\n if (_didIteratorError4) {\n throw _iteratorError4;\n }\n }\n }\n return results;\n };\n var allFiles = collectTsFiles(baseDir);\n var modelResolver = createTypeResolver(ts, allFiles, baseDir);\n var _iteratorNormalCompletion2 = true, _didIteratorError2 = false, _iteratorError2 = void 0;\n try {\n var _loop1 = function() {\n var { baseName, filePath: filePath2 } = _step2.value;\n var resolverSourceFile = modelResolver.program.getSourceFile(filePath2);\n if (!resolverSourceFile) return \"continue\";\n var resolvedTypes = resolveMutationParamTypes(ts, modelResolver, resolverSourceFile);\n if (resolvedTypes.size === 0) return \"continue\";\n var content2 = (0, import_fs.readFileSync)(filePath2, \"utf-8\");\n var sourceFile2 = ts.createSourceFile(filePath2, content2, ts.ScriptTarget.Latest, true);\n var result2 = extractMutationsFromModel(ts, sourceFile2, content2, filePath2, !!silent, typeToValibot, resolvedTypes, modelResolver.typeToValibot);\n if (result2) {\n result2.modelName = baseName;\n var idx = allModelMutations.findIndex(function(m) {\n return m.modelName === baseName;\n });\n if (idx >= 0) allModelMutations[idx] = result2;\n }\n };\n for (var _iterator2 = unresolvedModels[Symbol.iterator](), _step2; !(_iteratorNormalCompletion2 = (_step2 = _iterator2.next()).done); _iteratorNormalCompletion2 = true) _loop1();\n } catch (err) {\n _didIteratorError2 = true;\n _iteratorError2 = err;\n } finally {\n try {\n if (!_iteratorNormalCompletion2 && _iterator2.return != null) {\n _iterator2.return();\n }\n } finally {\n if (_didIteratorError2) {\n throw _iteratorError2;\n }\n }\n }\n }\n var _iteratorNormalCompletion3 = true, _didIteratorError3 = false, _iteratorError3 = void 0;\n try {\n var _loop2 = function() {\n var model = _step3.value;\n if (model.hasCRUD) mutationCount += 3;\n mutationCount += model.custom.filter(function(m) {\n return !model.hasCRUD || ![\n \"insert\",\n \"update\",\n \"delete\",\n \"upsert\"\n ].includes(m.name);\n }).length;\n };\n for (var _iterator3 = allModelMutations[Symbol.iterator](), _step3; !(_iteratorNormalCompletion3 = (_step3 = _iterator3.next()).done); _iteratorNormalCompletion3 = true) _loop2();\n } catch (err) {\n _didIteratorError3 = true;\n _iteratorError3 = err;\n } finally {\n try {\n if (!_iteratorNormalCompletion3 && _iterator3.return != null) {\n _iterator3.return();\n }\n } finally {\n if (_didIteratorError3) {\n throw _iteratorError3;\n }\n }\n }\n if (allModelMutations.length > 0) {\n var mutationsChanged = writeFileIfChanged((0, import_path.resolve)(generatedDir, \"syncedMutations.ts\"), (0, import_generate_helpers.generateSyncedMutationsFile)(allModelMutations));\n if (mutationsChanged) filesChanged++;\n }\n if (filesChanged > 0 && !silent) {\n console.info(`\\u2713 ${allModelFiles.length} models (${filesWithSchema.length} schemas)${queryCount ? `, ${queryCount} queries` : \"\"}${mutationCount ? `, ${mutationCount} mutations` : \"\"}`);\n }\n if (filesChanged > 0 && after) {\n var { execSync } = await import(\"child_process\");\n try {\n execSync(after, {\n stdio: \"inherit\",\n env: {\n ...process.env,\n ON_ZERO_GENERATED_DIR: generatedDir\n }\n });\n } catch (err) {\n if (!silent) console.error(`Error running after command: ${err}`);\n }\n }\n generateCache.__inputHash = inputHash;\n generateCache.__counts = JSON.stringify({\n modelCount: allModelFiles.length,\n schemaCount: filesWithSchema.length,\n queryCount,\n mutationCount\n });\n saveCache();\n return {\n filesChanged,\n modelCount: allModelFiles.length,\n schemaCount: filesWithSchema.length,\n queryCount,\n mutationCount\n };\n}\nasync function watch(options) {\n var { dir, debounce = 1e3 } = options;\n var baseDir = (0, import_path.resolve)(dir);\n var mutationsDir = (0, import_path.resolve)(baseDir, \"mutations\");\n var modelsDir = (0, import_fs.existsSync)(mutationsDir) ? mutationsDir : (0, import_path.resolve)(baseDir, \"models\");\n var queriesDir = (0, import_path.resolve)(baseDir, \"queries\");\n var generatedDir = (0, import_path.resolve)(baseDir, \"generated\");\n await generate({\n ...options,\n silent: true\n });\n console.info(\"\\u{1F440} watching...\\n\");\n var chokidar = await import(\"chokidar\");\n var debounceTimer = null;\n var debouncedRegenerate = function(path, event) {\n if (debounceTimer) clearTimeout(debounceTimer);\n console.info(`\n${event} ${path}`);\n debounceTimer = setTimeout(function() {\n generate({\n ...options,\n silent: false\n });\n }, debounce);\n };\n var watcher = chokidar.watch([\n modelsDir,\n queriesDir\n ], {\n persistent: true,\n ignoreInitial: true,\n ignored: [\n generatedDir\n ]\n });\n watcher.on(\"change\", function(path) {\n return debouncedRegenerate(path, \"\\u{1F4DD}\");\n });\n watcher.on(\"add\", function(path) {\n return debouncedRegenerate(path, \"\\u2795\");\n });\n watcher.on(\"unlink\", function(path) {\n return debouncedRegenerate(path, \"\\u{1F5D1}\\uFE0F \");\n });\n return watcher;\n}\n//# sourceMappingURL=generate.js.map\n"],"mappings":"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","ignoreList":[]}