on-zero 0.11.0 → 0.11.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (78) hide show
  1. package/dist/cjs/cli.native.js.map +1 -1
  2. package/dist/cjs/combineZeroClients.native.js.map +1 -1
  3. package/dist/cjs/config.native.js.map +1 -1
  4. package/dist/cjs/createPermissions.native.js.map +1 -1
  5. package/dist/cjs/createSchemaFromDrizzle.native.js.map +1 -1
  6. package/dist/cjs/createUseQuery.native.js.map +1 -1
  7. package/dist/cjs/createUseQueryDirect.native.js.map +1 -1
  8. package/dist/cjs/createZeroClient.authData.test.native.js.map +1 -1
  9. package/dist/cjs/createZeroClient.connection.test.native.js.map +1 -1
  10. package/dist/cjs/createZeroClient.headless.test.native.js.map +1 -1
  11. package/dist/cjs/createZeroClient.native.js.map +1 -1
  12. package/dist/cjs/createZeroClient.recovery.test.native.js.map +1 -1
  13. package/dist/cjs/generate-helpers.native.js.map +1 -1
  14. package/dist/cjs/generate-helpers.test.native.js.map +1 -1
  15. package/dist/cjs/generate-layout.native.js.map +1 -1
  16. package/dist/cjs/generate-lite.native.js.map +1 -1
  17. package/dist/cjs/generate-lite.test.native.js.map +1 -1
  18. package/dist/cjs/generate.native.js.map +1 -1
  19. package/dist/cjs/generate.test.native.js.map +1 -1
  20. package/dist/cjs/helpers/NullToOptional.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/ellipsis.native.js.map +1 -1
  26. package/dist/cjs/helpers/emitter.native.js.map +1 -1
  27. package/dist/cjs/helpers/ensure.native.js.map +1 -1
  28. package/dist/cjs/helpers/ensureLoggedIn.native.js.map +1 -1
  29. package/dist/cjs/helpers/errors.native.js.map +1 -1
  30. package/dist/cjs/helpers/getAuth.native.js.map +1 -1
  31. package/dist/cjs/helpers/getCurrentComponentStack.native.js.map +1 -1
  32. package/dist/cjs/helpers/globalValue.native.js.map +1 -1
  33. package/dist/cjs/helpers/hostStorageScope.native.js.map +1 -1
  34. package/dist/cjs/helpers/mapObject.native.js.map +1 -1
  35. package/dist/cjs/helpers/mutationLifecycle.native.js.map +1 -1
  36. package/dist/cjs/helpers/mutationLifecycle.test.native.js.map +1 -1
  37. package/dist/cjs/helpers/mutatorContext.native.js.map +1 -1
  38. package/dist/cjs/helpers/prettyFormatZeroQuery.native.js.map +1 -1
  39. package/dist/cjs/helpers/queryContext.native.js.map +1 -1
  40. package/dist/cjs/helpers/recoverZeroClient.native.js.map +1 -1
  41. package/dist/cjs/helpers/recoverZeroClient.test.native.js.map +1 -1
  42. package/dist/cjs/helpers/showZeroClientError.native.js.map +1 -1
  43. package/dist/cjs/helpers/sleep.native.js.map +1 -1
  44. package/dist/cjs/helpers/time.native.js.map +1 -1
  45. package/dist/cjs/helpers/tuple.native.js.map +1 -1
  46. package/dist/cjs/helpers/useMutation.native.js.map +1 -1
  47. package/dist/cjs/helpers/useMutation.test.native.js.map +1 -1
  48. package/dist/cjs/helpers/useZeroDebug.native.js.map +1 -1
  49. package/dist/cjs/index.native.js.map +1 -1
  50. package/dist/cjs/instanceRegistry.native.js.map +1 -1
  51. package/dist/cjs/modelRegistry.native.js.map +1 -1
  52. package/dist/cjs/multi.native.js.map +1 -1
  53. package/dist/cjs/multiInstance.test.native.js.map +1 -1
  54. package/dist/cjs/multiInstanceNested.test.native.js.map +1 -1
  55. package/dist/cjs/multiPartition.test.native.js.map +1 -1
  56. package/dist/cjs/mutations.native.js.map +1 -1
  57. package/dist/cjs/mutations.test.native.js.map +1 -1
  58. package/dist/cjs/provideZero.hydration.test.native.js.map +1 -1
  59. package/dist/cjs/queryRegistry.native.js.map +1 -1
  60. package/dist/cjs/resolveQuery.native.js.map +1 -1
  61. package/dist/cjs/run.native.js.map +1 -1
  62. package/dist/cjs/server.native.js.map +1 -1
  63. package/dist/cjs/server.test.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/streaming.native.js.map +1 -1
  68. package/dist/cjs/testSetup.native.js.map +1 -1
  69. package/dist/cjs/types.native.js.map +1 -1
  70. package/dist/cjs/usePermission.test.native.js.map +1 -1
  71. package/dist/cjs/useQuery.empty.test.native.js.map +1 -1
  72. package/dist/cjs/useQuery.ssr.test.native.js.map +1 -1
  73. package/dist/cjs/useStreamingField.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/package.json +2 -2
@@ -1 +1 @@
1
- {"version":3,"names":["import_vm","require","import_vitest","import_generate_lite","makeParse","table","_src","path","entry","Error","DIR","afterEach","vi","restoreAllMocks","describe","test","files","result","generateLite","dir","parse","mutations","queries","name","rootTable","paramTypeText","relatedPaths","expect","modelCount","toBe","queryCount","warn","spyOn","console","mockImplementation","source","endsWith","includes","toHaveBeenCalledOnce","toHaveBeenCalledWith","mockRestore","toThrow","_result_instances_","instances","syncTables","toEqual","_context_instances_default","_context_instances","empty","modelName","handlers","schema","imports","supportTables","runnable","replace","context","groupedQueries","models","post","runInNewContext","default","_context_instances_control","_context_instances_project","_context_instances1","dataConfig","control","project","scope","tableName","primaryKeys","columns","builderText","tables","account","message"],"sources":["generate-lite.test.native.js"],"sourcesContent":["\"use strict\";\nvar import_vm = require(\"vm\");\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.afterEach)(function() {\n import_vitest.vi.restoreAllMocks();\n});\n(0, import_vitest.describe)(\"generateLite\", function() {\n (0, import_vitest.test)(\"derives single-file namespaces from data exports\", function() {\n var files = {\n [`${DIR}/server.ts`]: `export const serverRows = () => zql.server`,\n [`${DIR}/types.ts`]: `export const formatRow = (value: string) => value`\n };\n var result = (0, import_generate_lite.generateLite)({\n files,\n dir: DIR,\n parse: makeParse({\n [`${DIR}/server.ts`]: {\n mutations: [],\n queries: [\n {\n name: \"serverRows\",\n rootTable: \"server\",\n paramTypeText: null,\n relatedPaths: []\n }\n ]\n },\n [`${DIR}/types.ts`]: {\n mutations: [],\n queries: []\n }\n })\n });\n (0, import_vitest.expect)(result.modelCount).toBe(1);\n (0, import_vitest.expect)(result.queryCount).toBe(1);\n });\n (0, import_vitest.test)(\"warns once and ignores an unparseable non-data file\", function() {\n var warn = import_vitest.vi.spyOn(console, \"warn\").mockImplementation(function() {\n });\n var result = (0, import_generate_lite.generateLite)({\n files: {\n [`${DIR}/server.ts`]: `export const serverRows = () => zql.server`,\n [`${DIR}/types.ts`]: `export type Broken = {`\n },\n dir: DIR,\n parse: function parse(source, path) {\n if (path.endsWith(\"/types.ts\")) throw new Error(\"parse failed\");\n return {\n mutations: [],\n queries: source.includes(\"zql.server\") ? [\n {\n name: \"serverRows\",\n rootTable: \"server\",\n paramTypeText: null,\n relatedPaths: []\n }\n ] : []\n };\n }\n });\n (0, import_vitest.expect)(result.modelCount).toBe(1);\n (0, import_vitest.expect)(warn).toHaveBeenCalledOnce();\n (0, import_vitest.expect)(warn).toHaveBeenCalledWith(\"[on-zero] ignoring data/types.ts: no recognized data exports\");\n warn.mockRestore();\n });\n (0, import_vitest.test)(\"rejects the removed top-level layout\", function() {\n (0, import_vitest.expect)(function() {\n return (0, import_generate_lite.generateLite)({\n files: {\n [`${DIR}/queries/post.ts`]: \"// fake\"\n },\n dir: DIR,\n parse: makeParse({})\n });\n }).toThrow(/removed top-level queries\\/ layout/);\n });\n (0, import_vitest.test)(\"ignores related syntax mentioned only in a query-file comment\", function() {\n var _result_instances_;\n var files = {\n [`${DIR}/dashboard/queries.ts`]: `// monthSummary moved to category/queries.ts because it uses .related()`\n };\n var result = (0, import_generate_lite.generateLite)({\n files,\n dir: DIR,\n parse: makeParse({\n [`${DIR}/dashboard/queries.ts`]: {\n mutations: [],\n queries: []\n }\n })\n });\n (0, import_vitest.expect)(result.queryCount).toBe(0);\n (0, import_vitest.expect)((_result_instances_ = result.instances[0]) === null || _result_instances_ === void 0 ? void 0 : _result_instances_.syncTables).toEqual([]);\n });\n (0, import_vitest.test)(\"derives fileless support tables through parsed mutation helpers\", function() {\n var _context_instances_default, _context_instances;\n var files = {\n [`${DIR}/post.ts`]: \"// namespace\",\n [`${DIR}/helpers/writeAudit.ts`]: \"// helper\",\n [`${DIR}/helpers/readSettings.ts`]: \"// nested helper\"\n };\n var empty = {\n mutations: [],\n queries: []\n };\n var result = (0, import_generate_lite.generateLite)({\n files,\n dir: DIR,\n parse: makeParse({\n [`${DIR}/post.ts`]: {\n ...empty,\n mutations: [\n {\n modelName: \"post\",\n handlers: [],\n schema: null\n }\n ],\n imports: [\n \"./helpers/writeAudit\"\n ],\n supportTables: [\n \"post\"\n ]\n },\n [`${DIR}/helpers/writeAudit.ts`]: {\n ...empty,\n imports: [\n \"./readSettings\"\n ],\n supportTables: [\n \"audit\"\n ]\n },\n [`${DIR}/helpers/readSettings.ts`]: {\n ...empty,\n supportTables: [\n \"settings\"\n ]\n }\n })\n });\n var runnable = result.files[\"instances.ts\"].replace(\"import { schema } from './schema'\", \"\").replace(\"import * as groupedQueries from './groupedQueries'\", \"\").replace(\"import { models } from './models'\", \"\").replace(\"export const instances =\", \"globalThis.instances =\").replace(/: string/g, \"\").replace(\" as const\", \"\");\n var context = {\n groupedQueries: {},\n models: {\n post: {}\n },\n schema: {}\n };\n (0, import_vm.runInNewContext)(runnable, context);\n (0, import_vitest.expect)((_context_instances = context.instances) === null || _context_instances === void 0 ? void 0 : (_context_instances_default = _context_instances.default) === null || _context_instances_default === void 0 ? void 0 : _context_instances_default.supportTables).toEqual([\n \"audit\",\n \"settings\"\n ]);\n });\n (0, import_vitest.test)(\"includes a fileless support table in every lite instance that uses it\", function() {\n var _context_instances_control, _context_instances, _context_instances_project, _context_instances1;\n var files = {\n [`${DIR}/on-zero.config.ts`]: `export default defineConfig({ instances: { control: { dir: './planes/control', supportTables: ['manual'] }, project: { scope: 'projectId' } } })`,\n [`${DIR}/planes/control/account.ts`]: \"// control namespace\",\n [`${DIR}/project/message.ts`]: \"// project namespace\",\n [\"/proj/src/database/schema.ts\"]: \"// table columns\"\n };\n var empty = {\n mutations: [],\n queries: []\n };\n var result = (0, import_generate_lite.generateLite)({\n files,\n dir: DIR,\n parse: makeParse({\n [`${DIR}/on-zero.config.ts`]: {\n ...empty,\n dataConfig: {\n instances: {\n control: {\n dir: \"./planes/control\",\n supportTables: [\n \"manual\"\n ]\n },\n project: {\n scope: \"projectId\"\n }\n }\n }\n },\n [`${DIR}/planes/control/account.ts`]: {\n ...empty,\n mutations: [\n {\n modelName: \"account\",\n handlers: [],\n schema: null\n }\n ],\n supportTables: [\n \"audit\"\n ]\n },\n [`${DIR}/project/message.ts`]: {\n ...empty,\n mutations: [\n {\n modelName: \"message\",\n handlers: [],\n schema: {\n tableName: \"message\",\n primaryKeys: [\n \"id\"\n ],\n columns: [\n {\n name: \"id\",\n builderText: \"string()\"\n },\n {\n name: \"projectId\",\n builderText: \"string()\"\n }\n ]\n }\n }\n ],\n supportTables: [\n \"audit\"\n ]\n },\n \"/proj/src/database/schema.ts\": {\n ...empty,\n tables: [\n {\n name: \"message\",\n columns: [\n \"id\",\n \"projectId\"\n ]\n }\n ]\n }\n })\n });\n var runnable = result.files[\"instances.ts\"].replace(\"import { schema } from './schema'\", \"\").replace(\"import * as groupedQueries from './groupedQueries'\", \"\").replace(\"import { models } from './models'\", \"\").replace(\"export const instances =\", \"globalThis.instances =\").replace(/: string/g, \"\").replace(\" as const\", \"\");\n var context = {\n groupedQueries: {},\n models: {\n account: {},\n message: {}\n },\n schema: {}\n };\n (0, import_vm.runInNewContext)(runnable, context);\n (0, import_vitest.expect)((_context_instances = context.instances) === null || _context_instances === void 0 ? void 0 : (_context_instances_control = _context_instances.control) === null || _context_instances_control === void 0 ? void 0 : _context_instances_control.supportTables).toEqual([\n \"audit\",\n \"manual\"\n ]);\n (0, import_vitest.expect)((_context_instances1 = context.instances) === null || _context_instances1 === void 0 ? void 0 : (_context_instances_project = _context_instances1.project) === null || _context_instances_project === void 0 ? void 0 : _context_instances_project.supportTables).toEqual([\n \"audit\"\n ]);\n });\n (0, import_vitest.test)(\"keeps a configured default lite instance at the data root\", function() {\n var _context_instances_default, _context_instances, _context_instances_project, _context_instances1;\n var files = {\n [`${DIR}/on-zero.config.ts`]: `export default defineConfig({ instances: { default: { dir: '.', supportTables: ['accountRepo', 'usageLedger'] }, project: { scope: 'projectId' } } })`,\n [`${DIR}/account.ts`]: \"// control namespace\",\n [`${DIR}/project/message.ts`]: \"// project namespace\"\n };\n var empty = {\n mutations: [],\n queries: []\n };\n var result = (0, import_generate_lite.generateLite)({\n files,\n dir: DIR,\n parse: makeParse({\n [`${DIR}/on-zero.config.ts`]: {\n ...empty,\n dataConfig: {\n instances: {\n default: {\n dir: \".\",\n supportTables: [\n \"accountRepo\",\n \"usageLedger\"\n ]\n },\n project: {\n scope: \"projectId\"\n }\n }\n }\n },\n [`${DIR}/account.ts`]: {\n ...empty,\n queries: [\n {\n name: \"accounts\",\n rootTable: \"account\",\n paramTypeText: null,\n relatedPaths: []\n }\n ]\n },\n [`${DIR}/project/message.ts`]: {\n ...empty,\n mutations: [\n {\n modelName: \"message\",\n handlers: [],\n schema: {\n tableName: \"message\",\n primaryKeys: [\n \"id\"\n ],\n columns: [\n {\n name: \"id\",\n builderText: \"string()\"\n },\n {\n name: \"projectId\",\n builderText: \"string()\"\n }\n ]\n }\n }\n ]\n }\n })\n });\n var runnable = result.files[\"instances.ts\"].replace(\"import { schema } from './schema'\", \"\").replace(\"import * as groupedQueries from './groupedQueries'\", \"\").replace(\"import { models } from './models'\", \"\").replace(\"export const instances =\", \"globalThis.instances =\").replace(/: string/g, \"\").replace(\" as const\", \"\");\n var context = {\n groupedQueries: {},\n models: {\n message: {}\n },\n schema: {}\n };\n (0, import_vm.runInNewContext)(runnable, context);\n (0, import_vitest.expect)((_context_instances = context.instances) === null || _context_instances === void 0 ? void 0 : (_context_instances_default = _context_instances.default) === null || _context_instances_default === void 0 ? void 0 : _context_instances_default.supportTables).toEqual([\n \"accountRepo\",\n \"usageLedger\"\n ]);\n (0, import_vitest.expect)((_context_instances1 = context.instances) === null || _context_instances1 === void 0 ? void 0 : (_context_instances_project = _context_instances1.project) === null || _context_instances_project === void 0 ? void 0 : _context_instances_project.supportTables).toEqual([]);\n });\n (0, import_vitest.test)(\"rejects missing configured directories and instance.ts remnants\", function() {\n var empty = {\n mutations: [],\n queries: []\n };\n (0, import_vitest.expect)(function() {\n return (0, import_generate_lite.generateLite)({\n files: {\n [`${DIR}/on-zero.config.ts`]: `export default defineConfig({ instances: { project: {} } })`\n },\n dir: DIR,\n parse: makeParse({\n [`${DIR}/on-zero.config.ts`]: {\n ...empty,\n dataConfig: {\n instances: {\n project: {}\n }\n }\n }\n })\n });\n }).toThrow(/instance 'project' directory does not exist/);\n (0, import_vitest.expect)(function() {\n return (0, import_generate_lite.generateLite)({\n files: {\n [`${DIR}/on-zero.config.ts`]: `export default defineConfig({ instances: { control: { dir: './shared' }, project: { dir: './shared' } } })`,\n [`${DIR}/shared/account.ts`]: \"// namespace\"\n },\n dir: DIR,\n parse: makeParse({\n [`${DIR}/on-zero.config.ts`]: {\n ...empty,\n dataConfig: {\n instances: {\n control: {\n dir: \"./shared\"\n },\n project: {\n dir: \"./shared\"\n }\n }\n }\n }\n })\n });\n }).toThrow(/instances 'control' and 'project' resolve to the same directory/);\n (0, import_vitest.expect)(function() {\n return (0, import_generate_lite.generateLite)({\n files: {\n [`${DIR}/post.ts`]: \"// namespace\",\n [`${DIR}/project/instance.ts`]: `export default defineInstance({})`\n },\n dir: DIR,\n parse: makeParse({\n [`${DIR}/post.ts`]: {\n ...empty,\n mutations: [\n {\n modelName: \"post\",\n handlers: [],\n schema: null\n }\n ]\n }\n })\n });\n }).toThrow(/uses removed instance\\.ts configuration/);\n });\n});\n//# sourceMappingURL=generate-lite.test.js.map\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["import_vm","require","import_vitest","import_generate_lite","makeParse","table","_src","path","entry","Error","DIR","afterEach","vi","restoreAllMocks","describe","test","files","result","generateLite","dir","parse","mutations","queries","name","rootTable","paramTypeText","relatedPaths","expect","modelCount","toBe","queryCount","warn","spyOn","console","mockImplementation","source","endsWith","includes","toHaveBeenCalledOnce","toHaveBeenCalledWith","mockRestore","toThrow","_result_instances_","instances","syncTables","toEqual","_context_instances_default","_context_instances","empty","modelName","handlers","schema","imports","supportTables","runnable","replace","context","groupedQueries","models","post","runInNewContext","default","_context_instances_control","_context_instances_project","_context_instances1","dataConfig","control","project","scope","tableName","primaryKeys","columns","builderText","tables","account","message"],"sources":["../../src/generate-lite.test.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
@@ -1 +1 @@
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","deriveDataMembership","generate","generateDrizzleSchemaFile","generateDrizzleSchemaInputFile","watch","module","exports","import_crypto","require","import_fs","import_path","import_generate_helpers","import_generate_layout","hash","hash2","s","createHash","update","digest","GENERATOR_CACHE_VERSION","isGeneratorSourceFile","isGeneratorSourceFile2","endsWith","hashInputTree","sourceRoots","generatedDir","parts","seen","Set","walk","walk1","dir","existsSync","entries","readdirSync","withFileTypes","sort","a","b","_iteratorNormalCompletion2","_didIteratorError2","_iteratorError2","_iterator2","Symbol","iterator","_step2","next","done","entry","full","resolve","isDirectory","isFile","has","add","push","readFileSync","err","return","_iteratorNormalCompletion","_didIteratorError","_iteratorError","_iterator","_step","root","join","generateCache","generateCachePath","getCacheDir","process","cwd","nm","cacheDir","mkdirSync","recursive","loadCache","JSON","parse","unused","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","_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","getInstantiatedPropertyType","parent","resolveProperty","Reflect","apply","_checker_isArrayType","_checker_isArrayLikeType","flags","getFlags","TypeFlags","Intersection","recurse","recurse2","t","String","Number","Void","Undefined","Null","Any","Unknown","Never","TemplateLiteral","isArrayType","isArrayLikeType","_ref","_checker_getTypeArguments","_type_getNumberIndexType","typeArgs","getTypeArguments","elementType","getNumberIndexType","StringLiteral","NumberLiteral","BooleanLiteral","intrinsicName","isUnion","members","types","hasNull","hasUndefined","rest","filter","every","inner","inner1","resolveSymbolType","resolveSymbolType2","prop2","_prop_declarations","instantiated","getName","valueDeclaration","getTypeOfSymbolAtLocation","getDeclaredTypeOfSymbol","isIntersection","props","getProperties","name1","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","tableSource","relTableNames","relationships","_loop","tableName2","rels","relEntries","relBody","relName","hops","hop","fn","cardinality","sf","sourceField","df","destField","destSchema","Error","hop2","fn1","hopCode","sf2","df2","tableList","n","relList","dataMembershipFromLayout","layout","instances","fromEntries","instance","syncTables","supportTables","scope","allTables","flatMap","discoverDataLayout","_layout_metadataPaths_find","baseDir","relationsPath","metadataPaths","find","relationEntries","source","included","visit1","factory","body","isParenthesizedExpression","tableProperty","table","replace","relations","relationProperty","isPropertyAccessExpression","relation","schemaImportPath","after","force","metadataHash","inputHash","__generatorVersion","__inputHash","_counts_modelCount","_counts_schemaCount","_counts_queryCount","_counts_mutationCount","counts","__counts","filesChanged","modelCount","schemaCount","queryCount","mutationCount","modelNamespaces","namespaces","namespace2","modelPath","filesWithSchema","includes","modelModules","importPath","namespaceImportPath","schemaModules","writeResults","generateModelsFile","generateTypesFile","module2","generateTablesFile","generateReadmeFile","typeToValibot2","parseTypeString","trim","allQueries","queryResolver","getQueryResolver","getQueryResolver2","allFiles2","sourcePaths","filePath2","queryPath","content2","sourceFile2","exportModifier","declaration","_param_type","resolverSourceFile","console","error","groupedChanged","generateGroupedQueriesFile","syncedChanged","generateSyncedQueriesFile","instancesChanged","generateInstancesFile","queryNames","query","modelNames","allModelMutations","mutationFiles","unresolvedModels","namespace","fileBaseName","baseName","hasUnresolved","collectTsFiles","collectTsFiles1","dir2","results","_iteratorNormalCompletion4","_didIteratorError4","_iteratorError4","_iterator4","_step4","fullPath","allFiles","file","values","modelResolver","_loop1","size","result2","idx","findIndex","_iteratorNormalCompletion3","_didIteratorError3","_iteratorError3","_loop2","model","_step3","_iterator3","mutationsChanged","generateSyncedMutationsFile","info","execSync","stdio","env","ON_ZERO_GENERATED_DIR","debounce","chokidar","debounceTimer","debouncedRegenerate","debouncedRegenerate2","event","clearTimeout","setTimeout","databaseDir","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 deriveDataMembership: () => deriveDataMembership,\n generate: () => generate,\n generateDrizzleSchemaFile: () => generateDrizzleSchemaFile,\n generateDrizzleSchemaInputFile: () => generateDrizzleSchemaInputFile,\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 import_generate_layout = require(\"./generate-layout\");\nvar hash = function hash2(s) {\n return (0, import_crypto.createHash)(\"sha256\").update(s).digest(\"hex\");\n};\nvar GENERATOR_CACHE_VERSION = \"5\";\nvar isGeneratorSourceFile = function isGeneratorSourceFile2(name) {\n return name.endsWith(\".ts\") && !name.endsWith(\".d.ts\") && !name.endsWith(\".test.ts\") && !name.endsWith(\".spec.ts\");\n};\nfunction hashInputTree(sourceRoots, generatedDir) {\n var parts = [];\n var seen = /* @__PURE__ */ new Set();\n var walk = function walk1(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 _iteratorNormalCompletion2 = true, _didIteratorError2 = false, _iteratorError2 = void 0;\n try {\n for (var _iterator2 = entries[Symbol.iterator](), _step2; !(_iteratorNormalCompletion2 = (_step2 = _iterator2.next()).done); _iteratorNormalCompletion2 = true) {\n var entry = _step2.value;\n var full = (0, import_path.resolve)(dir, entry.name);\n if (entry.isDirectory()) {\n if (entry.name === \"node_modules\" || entry.name === \"generated\" || full === generatedDir) continue;\n walk(full);\n } else if (entry.isFile() && isGeneratorSourceFile(entry.name)) {\n if (seen.has(full)) continue;\n seen.add(full);\n parts.push(`${full}\\0${(0, import_fs.readFileSync)(full, \"utf-8\")}`);\n }\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 _iteratorNormalCompletion = true, _didIteratorError = false, _iteratorError = void 0;\n try {\n for (var _iterator = sourceRoots[Symbol.iterator](), _step; !(_iteratorNormalCompletion = (_step = _iterator.next()).done); _iteratorNormalCompletion = true) {\n var root = _step.value;\n walk(root);\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 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 (unused) {\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 (unused) {\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 getInstantiatedPropertyType(checker, parent, name) {\n var resolveProperty = Reflect.get(checker, \"getTypeOfPropertyOfType\");\n if (typeof resolveProperty !== \"function\") return void 0;\n return Reflect.apply(resolveProperty, checker, [\n parent,\n name\n ]);\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 recurse2(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 _ref;\n var _checker_getTypeArguments, _type_getNumberIndexType;\n var typeArgs = (_ref = (_checker_getTypeArguments = checker.getTypeArguments) === null || _checker_getTypeArguments === void 0 ? void 0 : _checker_getTypeArguments.call(checker, type)) !== null && _ref !== void 0 ? _ref : [];\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 resolveSymbolType2(parent, prop2) {\n var _prop_declarations;\n var instantiated = getInstantiatedPropertyType(checker, parent, prop2.getName());\n if (instantiated) return instantiated;\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(type, 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(type, 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 var tableSource = t.serverName ? `table(${JSON.stringify(t.name)}).from(${JSON.stringify(t.serverName)})` : `table(${JSON.stringify(t.name)})`;\n lines.push(`const ${tableName}Table = ${tableSource}`);\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 var _loop = function() {\n var tableName2 = _step1.value;\n var rels = schema.relationships[tableName2];\n var relEntries = Object.entries(rels);\n if (relEntries.length === 0) return \"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 if (hops.length !== 2) {\n throw new Error(`Relationship ${tableName2}.${relName} must have one or two hops`);\n }\n var cardinality = hops[0].cardinality;\n if (hops.some(function(hop2) {\n return hop2.cardinality !== cardinality;\n })) {\n throw new Error(`Relationship ${tableName2}.${relName} must use one cardinality`);\n }\n var fn1 = cardinality === \"one\" ? \"one\" : \"many\";\n var hopCode = hops.map(function(hop2) {\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 `{ sourceField: [${sf2}], destSchema: ${hop2.destSchema}Table, destField: [${df2}] }`;\n }).join(\", \");\n return ` ${relName}: ${fn1}(${hopCode})`;\n }).join(\",\\n\");\n lines.push(`const ${tableName2}Relationships = relationships(${tableName2}Table, ({ one, many }) => ({`);\n lines.push(relBody);\n lines.push(`}))`);\n lines.push(``);\n };\n for (var _iterator1 = relTableNames[Symbol.iterator](), _step1; !(_iteratorNormalCompletion1 = (_step1 = _iterator1.next()).done); _iteratorNormalCompletion1 = true) _loop();\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}\nfunction dataMembershipFromLayout(layout) {\n return {\n instances: Object.fromEntries(layout.instances.map(function(instance) {\n return [\n instance.name,\n {\n tables: [\n ...instance.tables\n ],\n syncTables: [\n ...instance.syncTables\n ],\n supportTables: [\n ...instance.supportTables\n ],\n scope: instance.scope\n }\n ];\n })),\n allTables: [\n ...new Set(layout.instances.flatMap(function(instance) {\n return [\n ...instance.syncTables,\n ...instance.supportTables\n ];\n }))\n ].sort()\n };\n}\nasync function deriveDataMembership(options) {\n var ts = await import(\"typescript\");\n var layout = (0, import_generate_layout.discoverDataLayout)(ts, (0, import_path.resolve)(options.dir), options.config ? (0, import_path.resolve)(options.config) : void 0);\n return dataMembershipFromLayout(layout);\n}\nasync function generateDrizzleSchemaInputFile(options) {\n var _layout_metadataPaths_find;\n var ts = await import(\"typescript\");\n var baseDir = (0, import_path.resolve)(options.dir);\n var layout = (0, import_generate_layout.discoverDataLayout)(ts, baseDir, options.config ? (0, import_path.resolve)(options.config) : void 0);\n var tableNames = dataMembershipFromLayout(layout).allTables;\n var relationsPath = (_layout_metadataPaths_find = layout.metadataPaths.find(function(path) {\n return (0, import_path.basename)(path) === \"relations.ts\" && (0, import_path.dirname)(path) === (0, import_path.resolve)((0, import_path.dirname)(baseDir), \"database\");\n })) !== null && _layout_metadataPaths_find !== void 0 ? _layout_metadataPaths_find : layout.metadataPaths.find(function(path) {\n return (0, import_path.basename)(path) === \"relations.ts\";\n });\n var relationEntries = [];\n if (relationsPath) {\n var source = ts.createSourceFile(relationsPath, (0, import_fs.readFileSync)(relationsPath, \"utf8\"), ts.ScriptTarget.Latest, true);\n var included = new Set(tableNames);\n var visit = function visit1(node) {\n if (!ts.isCallExpression(node) || node.expression.getText(source) !== \"defineRelations\") {\n ts.forEachChild(node, visit);\n return;\n }\n var factory = node.arguments[1];\n if (!factory || !ts.isArrowFunction(factory) && !ts.isFunctionExpression(factory)) {\n return;\n }\n var body = ts.isParenthesizedExpression(factory.body) ? factory.body.expression : factory.body;\n if (!ts.isObjectLiteralExpression(body)) return;\n var _iteratorNormalCompletion = true, _didIteratorError = false, _iteratorError = void 0;\n try {\n for (var _iterator = body.properties[Symbol.iterator](), _step; !(_iteratorNormalCompletion = (_step = _iterator.next()).done); _iteratorNormalCompletion = true) {\n var tableProperty = _step.value;\n if (!ts.isPropertyAssignment(tableProperty) || !ts.isObjectLiteralExpression(tableProperty.initializer)) {\n continue;\n }\n var table = tableProperty.name.getText(source).replace(/^['\"]|['\"]$/g, \"\");\n if (!included.has(table)) continue;\n var relations = [];\n var _iteratorNormalCompletion1 = true, _didIteratorError1 = false, _iteratorError1 = void 0;\n try {\n for (var _iterator1 = tableProperty.initializer.properties[Symbol.iterator](), _step1; !(_iteratorNormalCompletion1 = (_step1 = _iterator1.next()).done); _iteratorNormalCompletion1 = true) {\n var relationProperty = _step1.value;\n if (!ts.isPropertyAssignment(relationProperty) || !ts.isCallExpression(relationProperty.initializer) || !ts.isPropertyAccessExpression(relationProperty.initializer.expression)) {\n continue;\n }\n var target = relationProperty.initializer.expression.name.text;\n if (included.has(target)) relations.push(relationProperty.getText(source));\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 relationEntries.push(` ${tableProperty.name.getText(source)}: {${relations.length ? `\n${relations.map(function(relation) {\n return ` ${relation},`;\n }).join(\"\\n\")}\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 visit(source);\n }\n var schemaImportPath = JSON.stringify(options.schemaImportPath);\n return [\n \"// auto-generated from the on-zero data layout\",\n `import { defineRelations } from 'drizzle-orm'`,\n `import * as schema from ${schemaImportPath}`,\n \"\",\n `export { ${tableNames.join(\", \")} } from ${schemaImportPath}`,\n `export const relations = defineRelations(schema, (r) => ({`,\n ...relationEntries,\n `}))`,\n \"\"\n ].join(\"\\n\");\n}\nasync function generate(options) {\n var { dir, after, silent, force, config } = options;\n var baseDir = (0, import_path.resolve)(dir);\n var generatedDir = (0, import_path.resolve)(baseDir, \"generated\");\n if (!(0, import_fs.existsSync)(generatedDir)) {\n (0, import_fs.mkdirSync)(generatedDir, {\n recursive: true\n });\n }\n loadCache();\n var ts = await import(\"typescript\");\n var layout = (0, import_generate_layout.discoverDataLayout)(ts, baseDir, config ? (0, import_path.resolve)(config) : void 0);\n var metadataHash = hash(layout.metadataPaths.map(function(path) {\n return `${path}\\0${(0, import_fs.readFileSync)(path, \"utf8\")}`;\n }).join(\"\\0\"));\n var inputHash = hash(`${hashInputTree(layout.sourceRoots, generatedDir)}\\0${metadataHash}`);\n if (!force && generateCache.__generatorVersion === GENERATOR_CACHE_VERSION && generateCache.__inputHash === inputHash && (0, import_fs.existsSync)((0, import_path.resolve)(generatedDir, \"models.ts\"))) {\n var _counts_modelCount, _counts_schemaCount, _counts_queryCount, _counts_mutationCount;\n var counts = {};\n try {\n counts = JSON.parse(generateCache.__counts || \"{}\");\n } catch (unused) {\n }\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 modelNamespaces = layout.namespaces.filter(function(namespace2) {\n return namespace2.modelPath !== null;\n });\n var filesWithSchema = modelNamespaces.filter(function(namespace2) {\n return (0, import_fs.readFileSync)(namespace2.modelPath, \"utf-8\").includes(\"export const schema = table(\");\n });\n var modelModules = modelNamespaces.map(function(namespace2) {\n return {\n name: namespace2.name,\n importPath: (0, import_generate_layout.namespaceImportPath)(baseDir, namespace2.modelPath)\n };\n });\n var schemaModules = filesWithSchema.map(function(namespace2) {\n return {\n name: namespace2.name,\n importPath: (0, import_generate_layout.namespaceImportPath)(baseDir, namespace2.modelPath)\n };\n });\n var writeResults = [\n writeFileIfChanged((0, import_path.resolve)(generatedDir, \"models.ts\"), (0, import_generate_helpers.generateModelsFile)(modelModules)),\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)(schemaModules.map(function(module2) {\n return module2.name;\n }))),\n writeFileIfChanged((0, import_path.resolve)(generatedDir, \"tables.ts\"), (0, import_generate_helpers.generateTablesFile)(schemaModules))\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 typeToValibot = function typeToValibot2(paramType) {\n try {\n return (0, import_generate_helpers.parseTypeString)(paramType.trim());\n } catch (unused) {\n return null;\n }\n };\n var allQueries = [];\n var queryResolver = null;\n var getQueryResolver = function getQueryResolver2() {\n if (!queryResolver) {\n var allFiles2 = [\n ...new Set(layout.namespaces.flatMap(function(namespace2) {\n return namespace2.sourcePaths;\n }))\n ].map(function(path) {\n return {\n path,\n content: (0, import_fs.readFileSync)(path, \"utf-8\")\n };\n });\n queryResolver = createTypeResolver(ts, allFiles2, baseDir);\n }\n return queryResolver;\n };\n var _iteratorNormalCompletion = true, _didIteratorError = false, _iteratorError = void 0;\n try {\n var _loop = function() {\n var namespace2 = _step.value;\n var filePath2 = namespace2.queryPath;\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 ([\n \"mutate\",\n \"permission\",\n \"schema\",\n \"where\"\n ].includes(name)) 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: namespace2.name,\n importPath: (0, import_generate_layout.namespaceImportPath)(baseDir, filePath2)\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 ${filePath2}:`, err);\n }\n };\n for (var _iterator = layout.namespaces.filter(function(namespace2) {\n return namespace2.queryPath !== null;\n })[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 var instancesChanged = writeFileIfChanged((0, import_path.resolve)(generatedDir, \"instances.ts\"), (0, import_generate_helpers.generateInstancesFile)(layout.instances.map(function(instance) {\n return {\n name: instance.name,\n scope: instance.scope,\n queryNames: instance.namespaces.map(function(namespace2) {\n return namespace2.name;\n }).filter(function(name) {\n return allQueries.some(function(query) {\n return query.sourceFile === name;\n });\n }),\n modelNames: instance.namespaces.filter(function(namespace2) {\n return namespace2.modelPath;\n }).map(function(namespace2) {\n return namespace2.name;\n }),\n tables: instance.tables,\n syncTables: instance.syncTables,\n supportTables: instance.supportTables\n };\n })));\n if (instancesChanged) filesChanged++;\n var allModelMutations = [];\n var mutationFiles = [];\n var unresolvedModels = [];\n var _iteratorNormalCompletion1 = true, _didIteratorError1 = false, _iteratorError1 = void 0;\n try {\n for (var _iterator1 = modelNamespaces[Symbol.iterator](), _step1; !(_iteratorNormalCompletion1 = (_step1 = _iterator1.next()).done); _iteratorNormalCompletion1 = true) {\n var namespace = _step1.value;\n var filePath = namespace.modelPath;\n var fileBaseName = namespace.name;\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 ${filePath}:`, 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 collectTsFiles1(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() && isGeneratorSourceFile(entry.name)) {\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 = [\n ...new Map(layout.sourceRoots.flatMap(collectTsFiles).map(function(file) {\n return [\n file.path,\n file\n ];\n })).values()\n ];\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 ${modelNamespaces.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.__generatorVersion = GENERATOR_CACHE_VERSION;\n generateCache.__inputHash = inputHash;\n generateCache.__counts = JSON.stringify({\n modelCount: modelNamespaces.length,\n schemaCount: filesWithSchema.length,\n queryCount,\n mutationCount\n });\n saveCache();\n return {\n filesChanged,\n modelCount: modelNamespaces.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 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 debouncedRegenerate2(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 databaseDir = (0, import_path.resolve)((0, import_path.dirname)(baseDir), \"database\");\n var ts = await import(\"typescript\");\n var layout = (0, import_generate_layout.discoverDataLayout)(ts, baseDir, options.config ? (0, import_path.resolve)(options.config) : void 0);\n var watcher = chokidar.watch([\n .../* @__PURE__ */ new Set([\n ...layout.sourceRoots,\n ...(0, import_fs.existsSync)(databaseDir) ? [\n databaseDir\n ] : []\n ])\n ], {\n persistent: true,\n ignoreInitial: true,\n ignored: [\n generatedDir,\n /node_modules/\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":[]}
1
+ {"version":3,"names":["__toCommonJS","mod","__copyProps","__defProp","value","generate_exports","__export","deriveDataMembership","generate","generateDrizzleSchemaFile","generateDrizzleSchemaInputFile","watch","module","exports","import_crypto","require","import_fs","import_path","import_generate_helpers","import_generate_layout","hash","hash2","s","createHash","update","digest","GENERATOR_CACHE_VERSION","isGeneratorSourceFile","isGeneratorSourceFile2","name","endsWith","hashInputTree","sourceRoots","generatedDir","parts","seen","Set","walk","walk1","dir","existsSync","entries","readdirSync","withFileTypes","sort","a","b","_iteratorNormalCompletion2","_didIteratorError2","_iteratorError2","_iterator2","Symbol","iterator","_step2","next","done","entry","full","resolve","isDirectory","isFile","has","add","push","readFileSync","err","return","_iteratorNormalCompletion","_didIteratorError","_iteratorError","_iterator","_step","root","join","generateCache","generateCachePath","getCacheDir","process","cwd","nm","cacheDir","mkdirSync","recursive","loadCache","JSON","parse","unused","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","_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","getInstantiatedPropertyType","parent","resolveProperty","Reflect","apply","_checker_isArrayType","_checker_isArrayLikeType","flags","getFlags","TypeFlags","Object","Intersection","recurse","recurse2","t","String","Number","Void","Undefined","Null","Any","Unknown","Never","TemplateLiteral","isArrayType","isArrayLikeType","_ref","_checker_getTypeArguments","_type_getNumberIndexType","typeArgs","getTypeArguments","elementType","getNumberIndexType","StringLiteral","NumberLiteral","BooleanLiteral","intrinsicName","isUnion","members","types","hasNull","hasUndefined","rest","filter","every","inner","inner1","resolveSymbolType","resolveSymbolType2","prop2","_prop_declarations","instantiated","getName","valueDeclaration","getTypeOfSymbolAtLocation","getDeclaredTypeOfSymbol","isIntersection","props","getProperties","name1","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","tableSource","relTableNames","relationships","_loop","tableName2","rels","relEntries","relBody","relName","hops","hop","fn","cardinality","sf","sourceField","df","destField","destSchema","Error","hop2","fn1","hopCode","sf2","df2","tableList","n","relList","dataMembershipFromLayout","layout","instances","fromEntries","instance","syncTables","supportTables","scope","allTables","flatMap","discoverDataLayout","_layout_metadataPaths_find","baseDir","relationsPath","metadataPaths","find","relationEntries","source","included","visit1","factory","body","isParenthesizedExpression","tableProperty","table","replace","relations","relationProperty","isPropertyAccessExpression","relation","schemaImportPath","after","force","metadataHash","inputHash","__generatorVersion","__inputHash","_counts_modelCount","_counts_schemaCount","_counts_queryCount","_counts_mutationCount","counts","__counts","filesChanged","modelCount","schemaCount","queryCount","mutationCount","modelNamespaces","namespaces","namespace2","modelPath","filesWithSchema","includes","modelModules","importPath","namespaceImportPath","schemaModules","writeResults","generateModelsFile","generateTypesFile","module2","generateTablesFile","generateReadmeFile","typeToValibot2"],"sources":["../../src/generate.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}