on-zero 0.16.7 → 0.16.8
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.
- package/dist/cjs/cli.native.js.map +1 -1
- package/dist/cjs/combineZeroClients.native.js.map +1 -1
- package/dist/cjs/config.native.js.map +1 -1
- package/dist/cjs/createPermissions.native.js.map +1 -1
- package/dist/cjs/createSchemaFromDrizzle.native.js.map +1 -1
- package/dist/cjs/createUseQuery.native.js.map +1 -1
- package/dist/cjs/createUseQueryDirect.native.js.map +1 -1
- package/dist/cjs/createZeroClient.authData.test.native.js.map +1 -1
- package/dist/cjs/createZeroClient.cjs +32 -6
- package/dist/cjs/createZeroClient.connection.test.cjs +52 -0
- package/dist/cjs/createZeroClient.connection.test.native.js +56 -0
- package/dist/cjs/createZeroClient.connection.test.native.js.map +1 -1
- package/dist/cjs/createZeroClient.exportProbe.test.native.js.map +1 -1
- package/dist/cjs/createZeroClient.headless.test.native.js.map +1 -1
- package/dist/cjs/createZeroClient.httpAuth.test.cjs +144 -0
- package/dist/cjs/createZeroClient.httpAuth.test.native.js +167 -0
- package/dist/cjs/createZeroClient.httpAuth.test.native.js.map +1 -0
- package/dist/cjs/createZeroClient.native.js +32 -6
- package/dist/cjs/createZeroClient.native.js.map +1 -1
- package/dist/cjs/createZeroClient.recovery.test.cjs +53 -0
- package/dist/cjs/createZeroClient.recovery.test.native.js +53 -0
- package/dist/cjs/createZeroClient.recovery.test.native.js.map +1 -1
- package/dist/cjs/generate-helpers.native.js.map +1 -1
- package/dist/cjs/generate-helpers.test.native.js.map +1 -1
- package/dist/cjs/generate-layout.native.js.map +1 -1
- package/dist/cjs/generate-lite.native.js.map +1 -1
- package/dist/cjs/generate-lite.test.native.js.map +1 -1
- package/dist/cjs/generate.native.js.map +1 -1
- package/dist/cjs/generate.test.native.js.map +1 -1
- package/dist/cjs/helpers/NullToOptional.native.js.map +1 -1
- package/dist/cjs/helpers/asyncContext.hostStorage.test.native.js.map +1 -1
- package/dist/cjs/helpers/batchQuery.native.js.map +1 -1
- package/dist/cjs/helpers/clearZeroClientData.native.js.map +1 -1
- package/dist/cjs/helpers/createMutators.native.js.map +1 -1
- package/dist/cjs/helpers/createMutators.test.native.js.map +1 -1
- package/dist/cjs/helpers/ellipsis.native.js.map +1 -1
- package/dist/cjs/helpers/emitter.native.js.map +1 -1
- package/dist/cjs/helpers/ensure.native.js.map +1 -1
- package/dist/cjs/helpers/ensureLoggedIn.native.js.map +1 -1
- package/dist/cjs/helpers/errors.native.js.map +1 -1
- package/dist/cjs/helpers/getAuth.native.js.map +1 -1
- package/dist/cjs/helpers/getCurrentComponentStack.native.js.map +1 -1
- package/dist/cjs/helpers/globalValue.native.js.map +1 -1
- package/dist/cjs/helpers/hostStorageScope.native.js.map +1 -1
- package/dist/cjs/helpers/mapObject.native.js.map +1 -1
- package/dist/cjs/helpers/mutationLifecycle.native.js.map +1 -1
- package/dist/cjs/helpers/mutationLifecycle.test.native.js.map +1 -1
- package/dist/cjs/helpers/mutatorContext.native.js.map +1 -1
- package/dist/cjs/helpers/mutatorContext.test.native.js.map +1 -1
- package/dist/cjs/helpers/prettyFormatZeroQuery.native.js.map +1 -1
- package/dist/cjs/helpers/queryContext.native.js.map +1 -1
- package/dist/cjs/helpers/recoverZeroClient.native.js.map +1 -1
- package/dist/cjs/helpers/recoverZeroClient.test.native.js.map +1 -1
- package/dist/cjs/helpers/showZeroClientError.native.js.map +1 -1
- package/dist/cjs/helpers/sleep.native.js.map +1 -1
- package/dist/cjs/helpers/time.native.js.map +1 -1
- package/dist/cjs/helpers/tuple.native.js.map +1 -1
- package/dist/cjs/helpers/useMutation.native.js.map +1 -1
- package/dist/cjs/helpers/useMutation.test.native.js.map +1 -1
- package/dist/cjs/helpers/useZeroDebug.native.js.map +1 -1
- package/dist/cjs/index.native.js.map +1 -1
- package/dist/cjs/instanceRegistry.native.js.map +1 -1
- package/dist/cjs/modelRegistry.native.js.map +1 -1
- package/dist/cjs/multi.native.js.map +1 -1
- package/dist/cjs/multiInstance.test.native.js.map +1 -1
- package/dist/cjs/multiInstanceMutations.test.native.js.map +1 -1
- package/dist/cjs/multiInstanceNested.test.native.js.map +1 -1
- package/dist/cjs/multiPartition.test.native.js.map +1 -1
- package/dist/cjs/mutations.native.js.map +1 -1
- package/dist/cjs/mutations.test.native.js.map +1 -1
- package/dist/cjs/provideZero.eagerInstance.test.native.js.map +1 -1
- package/dist/cjs/provideZero.hydration.test.native.js.map +1 -1
- package/dist/cjs/provideZero.ssr.test.native.js.map +1 -1
- package/dist/cjs/queryRegistry.native.js.map +1 -1
- package/dist/cjs/resolveQuery.native.js.map +1 -1
- package/dist/cjs/run.native.js.map +1 -1
- package/dist/cjs/server.native.js.map +1 -1
- package/dist/cjs/server.test.native.js.map +1 -1
- package/dist/cjs/serverWhere.native.js.map +1 -1
- package/dist/cjs/serverWhere.test.native.js.map +1 -1
- package/dist/cjs/state.native.js.map +1 -1
- package/dist/cjs/streaming.native.js.map +1 -1
- package/dist/cjs/testSetup.native.js.map +1 -1
- package/dist/cjs/types.native.js.map +1 -1
- package/dist/cjs/usePermission.test.native.js.map +1 -1
- package/dist/cjs/useQuery.empty.test.native.js.map +1 -1
- package/dist/cjs/useQuery.ssr.test.native.js.map +1 -1
- package/dist/cjs/useStreamingField.loop.test.native.js.map +1 -1
- package/dist/cjs/useStreamingField.native.js.map +1 -1
- package/dist/cjs/vite-plugin.native.js.map +1 -1
- package/dist/cjs/where.native.js.map +1 -1
- package/dist/cjs/zeroRunner.native.js.map +1 -1
- package/dist/cjs/zql.native.js.map +1 -1
- package/dist/esm/createZeroClient.connection.test.mjs +52 -0
- package/dist/esm/createZeroClient.connection.test.mjs.map +1 -1
- package/dist/esm/createZeroClient.connection.test.native.js +56 -0
- package/dist/esm/createZeroClient.connection.test.native.js.map +1 -1
- package/dist/esm/createZeroClient.httpAuth.test.mjs +145 -0
- package/dist/esm/createZeroClient.httpAuth.test.mjs.map +1 -0
- package/dist/esm/createZeroClient.httpAuth.test.native.js +165 -0
- package/dist/esm/createZeroClient.httpAuth.test.native.js.map +1 -0
- package/dist/esm/createZeroClient.mjs +33 -7
- package/dist/esm/createZeroClient.mjs.map +1 -1
- package/dist/esm/createZeroClient.native.js +33 -7
- package/dist/esm/createZeroClient.native.js.map +1 -1
- package/dist/esm/createZeroClient.recovery.test.mjs +54 -1
- package/dist/esm/createZeroClient.recovery.test.mjs.map +1 -1
- package/dist/esm/createZeroClient.recovery.test.native.js +54 -1
- package/dist/esm/createZeroClient.recovery.test.native.js.map +1 -1
- package/dist/esm/index.native.js.map +1 -1
- package/package.json +2 -2
- package/src/createZeroClient.connection.test.tsx +50 -1
- package/src/createZeroClient.httpAuth.test.ts +144 -0
- package/src/createZeroClient.recovery.test.tsx +61 -1
- package/src/createZeroClient.tsx +58 -14
- package/types/createZeroClient.d.ts +2 -1
- package/types/createZeroClient.d.ts.map +1 -1
- package/types/createZeroClient.httpAuth.test.d.ts +2 -0
- package/types/createZeroClient.httpAuth.test.d.ts.map +1 -0
|
@@ -1 +1 @@
|
|
|
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_layout_exports","discoverDataLayout","namespaceImportPath","module","exports","import_fs","require","import_path","_type_of","obj","Symbol","constructor","isSourceFile","isSourceFile2","endsWith","toImportPath","toImportPath2","baseDir","path","relative","split","sep","join","replace","isWithin","isWithin2","root","child","startsWith","propertyName","ts","isIdentifier","isStringLiteral","isNumericLiteral","text","readDataConfig","configPath","resolve","existsSync","Error","dirname","source","createSourceFile","readFileSync","ScriptTarget","Latest","hasParseErrors","config","_iteratorNormalCompletion","_didIteratorError","_iteratorError","_iterator","statements","iterator","_step","next","done","statement","isExportAssignment","isExportEquals","expression","isCallExpression","getText","arguments","isObjectLiteralExpression","err","return","rootOptions","Map","_iteratorNormalCompletion1","_didIteratorError1","_iteratorError1","_iterator1","properties","_step1","option","isPropertyAssignment","has","set","initializer","_iteratorNormalCompletion2","_didIteratorError2","_iteratorError2","_iterator2","keys","_step2","name1","instancesNode","instances","_iteratorNormalCompletion3","_didIteratorError3","_iteratorError3","_loop","property","_step3","name2","some","instance","dir","scope","supportTables","seen","Set","_iteratorNormalCompletion5","_didIteratorError5","_iteratorError5","_iterator5","_step5","option2","optionName","add","isArrayLiteralExpression","_iteratorNormalCompletion12","_didIteratorError12","_iteratorError12","_iterator12","elements","_step12","table","push","statSync","isDirectory","_iterator3","length","_iteratorNormalCompletion4","_didIteratorError4","_iteratorError4","_loop1","_step4","duplicate","find","candidate","_iterator4","_source_parseDiagnostics","Boolean","parseDiagnostics","namespaceExportKinds","none","model","query","displayPath","console","warn","functions","exported","isVariableStatement","_statement_modifiers","isExported","modifiers","modifier","kind","SyntaxKind","ExportKeyword","declarationList","declarations","declaration","initializerText","isArrowFunction","isFunctionExpression","body","isFunctionDeclaration","_statement_modifiers1","visiting","reachesQuery","reachesQuery1","node","isPropertyAccessExpression","helper","found","delete","found1","forEachChild","mutationTable","namespace","schemaTable","firstArgument","isStringLiteralLike","v","visit","visit1","_ret","discoverNamespaces","instanceDirs","namespaces","readdirSync","withFileTypes","sort","a","b","localeCompare","entry","isFile","kinds","basename","queryPath","modelPath","aggregatePath","sourcePaths","folder","hasQueries","hasMutations","hasAggregates","includes","filter","path2","metadataPaths","paths","relations","databaseDir","relationTargets","factory","isParenthesizedExpression","tableProperty","_relations_get","tableRelations","relationProperty","tableColumns","columns","sources","flatMap","isVariableDeclaration","tableNames","foundColumns","inspect","inspect1","argument","test","names","map","_property_name","tableName","queriedTables","reached","rootTable","rootTable2","_ref","_text_match","match","currentTable","_rootTable","nameArg","sourceTable","callback","helperRoot","queryRoot","mutationSupportTables","sourceRoots","tables","visited","scan","scan1","transaction","isImportDeclaration","isExportDeclaration","moduleSpecifier","specifier","unresolved","slice","_i2","_iter2","_i","_iter","assertNoInstanceFiles","roots","walk","walk1","assertNoUnclaimedNamespaces","instanceDir","configured","instance2","syncTables","declaredSupportTables","namespaceOwners","owner","tableOwners","namespace1","owner1","metadata","relatedOwners","instance1","namespace3","table2","namespace2","_tableOwners_get","owner2","_iteratorNormalCompletion6","_didIteratorError6","_iteratorError6","_iterator6","_step6","_columns_get","_iteratorNormalCompletion7","_didIteratorError7","_iteratorError7","_step7","_iteratorNormalCompletion8","_didIteratorError8","_iteratorError8","_iterator8","_step8","table3","_iterator7"],"sources":["generate-layout.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_layout_exports = {};\n__export(generate_layout_exports, {\n discoverDataLayout: () => discoverDataLayout,\n namespaceImportPath: () => namespaceImportPath\n});\nmodule.exports = __toCommonJS(generate_layout_exports);\nvar import_fs = require(\"fs\");\nvar import_path = require(\"path\");\nfunction _type_of(obj) {\n \"@swc/helpers - typeof\";\n return obj && typeof Symbol !== \"undefined\" && obj.constructor === Symbol ? \"symbol\" : typeof obj;\n}\nvar isSourceFile = function isSourceFile2(name) {\n return name.endsWith(\".ts\") && !name.endsWith(\".d.ts\") && !name.endsWith(\".test.ts\") && !name.endsWith(\".spec.ts\");\n};\nvar toImportPath = function toImportPath2(baseDir, path) {\n return (0, import_path.relative)(baseDir, path).split(import_path.sep).join(\"/\").replace(/\\.ts$/, \"\");\n};\nvar isWithin = function isWithin2(root, path) {\n var child = (0, import_path.relative)(root, path);\n return child === \"\" || child !== \"..\" && !child.startsWith(`..${import_path.sep}`);\n};\nfunction propertyName(ts, name) {\n if (ts.isIdentifier(name) || ts.isStringLiteral(name) || ts.isNumericLiteral(name)) {\n return name.text;\n }\n return null;\n}\nfunction readDataConfig(ts, baseDir, configPath) {\n var path = configPath ? (0, import_path.resolve)(configPath) : (0, import_path.resolve)(baseDir, \"on-zero.config.ts\");\n if (!(0, import_fs.existsSync)(path)) {\n if (configPath) throw new Error(`[on-zero] config file does not exist: ${path}`);\n return null;\n }\n if ((0, import_path.dirname)(path) !== baseDir) {\n throw new Error(`[on-zero] ${path} must be at the data root ${baseDir}`);\n }\n var source = ts.createSourceFile(path, (0, import_fs.readFileSync)(path, \"utf8\"), ts.ScriptTarget.Latest, true);\n if (hasParseErrors(source)) throw new Error(`[on-zero] unable to parse ${path}`);\n var config = null;\n var _iteratorNormalCompletion = true, _didIteratorError = false, _iteratorError = void 0;\n try {\n for (var _iterator = source.statements[Symbol.iterator](), _step; !(_iteratorNormalCompletion = (_step = _iterator.next()).done); _iteratorNormalCompletion = true) {\n var statement = _step.value;\n if (!ts.isExportAssignment(statement) || statement.isExportEquals) continue;\n var call = statement.expression;\n if (!ts.isCallExpression(call) || call.expression.getText(source) !== \"defineConfig\") {\n continue;\n }\n var value = call.arguments[0];\n if (value && ts.isObjectLiteralExpression(value)) config = value;\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 (!config) {\n throw new Error(`[on-zero] ${path} must default export defineConfig({ instances: { ... } })`);\n }\n var rootOptions = /* @__PURE__ */ new Map();\n var _iteratorNormalCompletion1 = true, _didIteratorError1 = false, _iteratorError1 = void 0;\n try {\n for (var _iterator1 = config.properties[Symbol.iterator](), _step1; !(_iteratorNormalCompletion1 = (_step1 = _iterator1.next()).done); _iteratorNormalCompletion1 = true) {\n var option = _step1.value;\n if (!ts.isPropertyAssignment(option)) {\n throw new Error(`[on-zero] ${path} options must use explicit property assignments`);\n }\n var name = propertyName(ts, option.name);\n if (!name) throw new Error(`[on-zero] ${path} has an unsupported option name`);\n if (rootOptions.has(name)) throw new Error(`[on-zero] ${path} repeats option '${name}'`);\n rootOptions.set(name, option.initializer);\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 = rootOptions.keys()[Symbol.iterator](), _step2; !(_iteratorNormalCompletion2 = (_step2 = _iterator2.next()).done); _iteratorNormalCompletion2 = true) {\n var name1 = _step2.value;\n if (name1 !== \"instances\") throw new Error(`[on-zero] ${path} has unknown option '${name1}'`);\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 var instancesNode = rootOptions.get(\"instances\");\n if (!instancesNode || !ts.isObjectLiteralExpression(instancesNode)) {\n throw new Error(`[on-zero] ${path} must declare a non-empty instances object`);\n }\n var instances = [];\n var _iteratorNormalCompletion3 = true, _didIteratorError3 = false, _iteratorError3 = void 0;\n try {\n var _loop = function() {\n var property = _step3.value;\n if (!ts.isPropertyAssignment(property)) {\n throw new Error(`[on-zero] ${path} instances must use explicit property assignments`);\n }\n var name2 = propertyName(ts, property.name);\n if (!name2) throw new Error(`[on-zero] ${path} has an unsupported instance name`);\n if (!ts.isObjectLiteralExpression(property.initializer)) {\n throw new Error(`[on-zero] instance '${name2}' must be an object`);\n }\n if (instances.some(function(instance) {\n return instance.name === name2;\n })) {\n throw new Error(`[on-zero] duplicate instance name '${name2}'`);\n }\n var dir = (0, import_path.resolve)((0, import_path.dirname)(path), name2);\n var scope = null;\n var supportTables = [];\n var seen = /* @__PURE__ */ new Set();\n var _iteratorNormalCompletion5 = true, _didIteratorError5 = false, _iteratorError5 = void 0;\n try {\n for (var _iterator5 = property.initializer.properties[Symbol.iterator](), _step5; !(_iteratorNormalCompletion5 = (_step5 = _iterator5.next()).done); _iteratorNormalCompletion5 = true) {\n var option2 = _step5.value;\n if (!ts.isPropertyAssignment(option2)) {\n throw new Error(`[on-zero] instance '${name2}' options must be assignments`);\n }\n var optionName = propertyName(ts, option2.name);\n if (!optionName) throw new Error(`[on-zero] instance '${name2}' has an invalid option`);\n if (seen.has(optionName)) {\n throw new Error(`[on-zero] instance '${name2}' repeats option '${optionName}'`);\n }\n seen.add(optionName);\n if (optionName === \"dir\") {\n if (!ts.isStringLiteral(option2.initializer)) {\n throw new Error(`[on-zero] instance '${name2}' dir must be a string literal`);\n }\n if (option2.initializer.text.startsWith(\"/\")) {\n throw new Error(`[on-zero] instance '${name2}' dir must be relative to ${path}`);\n }\n dir = (0, import_path.resolve)((0, import_path.dirname)(path), option2.initializer.text);\n continue;\n }\n if (optionName === \"scope\") {\n if (!ts.isStringLiteral(option2.initializer)) {\n throw new Error(`[on-zero] instance '${name2}' scope must be a string literal`);\n }\n if (!option2.initializer.text) {\n throw new Error(`[on-zero] instance '${name2}' scope cannot be empty`);\n }\n scope = option2.initializer.text;\n continue;\n }\n if (optionName === \"supportTables\") {\n if (!ts.isArrayLiteralExpression(option2.initializer)) {\n throw new Error(`[on-zero] instance '${name2}' supportTables must be an array`);\n }\n var _iteratorNormalCompletion12 = true, _didIteratorError12 = false, _iteratorError12 = void 0;\n try {\n for (var _iterator12 = option2.initializer.elements[Symbol.iterator](), _step12; !(_iteratorNormalCompletion12 = (_step12 = _iterator12.next()).done); _iteratorNormalCompletion12 = true) {\n var table = _step12.value;\n if (!ts.isStringLiteral(table)) {\n throw new Error(`[on-zero] instance '${name2}' supportTables must contain string literals`);\n }\n if (!table.text) {\n throw new Error(`[on-zero] instance '${name2}' supportTables cannot contain an empty table name`);\n }\n supportTables.push(table.text);\n }\n } catch (err) {\n _didIteratorError12 = true;\n _iteratorError12 = err;\n } finally {\n try {\n if (!_iteratorNormalCompletion12 && _iterator12.return != null) {\n _iterator12.return();\n }\n } finally {\n if (_didIteratorError12) {\n throw _iteratorError12;\n }\n }\n }\n continue;\n }\n throw new Error(`[on-zero] instance '${name2}' has unknown option '${optionName}'`);\n }\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 if (!(0, import_fs.existsSync)(dir) || !(0, import_fs.statSync)(dir).isDirectory()) {\n throw new Error(`[on-zero] instance '${name2}' directory does not exist: ${dir}`);\n }\n instances.push({\n name: name2,\n dir,\n scope,\n supportTables\n });\n };\n for (var _iterator3 = instancesNode.properties[Symbol.iterator](), _step3; !(_iteratorNormalCompletion3 = (_step3 = _iterator3.next()).done); _iteratorNormalCompletion3 = true) _loop();\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 (instances.length === 0) {\n throw new Error(`[on-zero] ${path} must declare at least one instance`);\n }\n var _iteratorNormalCompletion4 = true, _didIteratorError4 = false, _iteratorError4 = void 0;\n try {\n var _loop1 = function() {\n var instance = _step4.value;\n var duplicate = instances.find(function(candidate) {\n return candidate !== instance && candidate.dir === instance.dir;\n });\n if (duplicate) {\n throw new Error(`[on-zero] instances '${instance.name}' and '${duplicate.name}' resolve to the same directory: ${instance.dir}`);\n }\n };\n for (var _iterator4 = instances[Symbol.iterator](), _step4; !(_iteratorNormalCompletion4 = (_step4 = _iterator4.next()).done); _iteratorNormalCompletion4 = true) _loop1();\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 {\n path,\n instances\n };\n}\nfunction hasParseErrors(source) {\n var _source_parseDiagnostics;\n return Boolean((_source_parseDiagnostics = source.parseDiagnostics) === null || _source_parseDiagnostics === void 0 ? void 0 : _source_parseDiagnostics.length);\n}\nfunction namespaceExportKinds(ts, baseDir, path) {\n var none = {\n model: false,\n query: false\n };\n var source = ts.createSourceFile(path, (0, import_fs.readFileSync)(path, \"utf8\"), ts.ScriptTarget.Latest, true);\n if (hasParseErrors(source)) {\n var displayPath = (0, import_path.relative)((0, import_path.dirname)(baseDir), path).split(import_path.sep).join(\"/\");\n console.warn(`[on-zero] ignoring ${displayPath}: no recognized data exports`);\n return none;\n }\n var functions = /* @__PURE__ */ new Map();\n var exported = /* @__PURE__ */ new Set();\n var _iteratorNormalCompletion = true, _didIteratorError = false, _iteratorError = void 0;\n try {\n for (var _iterator = source.statements[Symbol.iterator](), _step; !(_iteratorNormalCompletion = (_step = _iterator.next()).done); _iteratorNormalCompletion = true) {\n var statement = _step.value;\n if (ts.isVariableStatement(statement)) {\n var _statement_modifiers;\n var isExported = (_statement_modifiers = statement.modifiers) === null || _statement_modifiers === void 0 ? void 0 : _statement_modifiers.some(function(modifier) {\n return modifier.kind === ts.SyntaxKind.ExportKeyword;\n });\n var _iteratorNormalCompletion1 = true, _didIteratorError1 = false, _iteratorError1 = void 0;\n try {\n for (var _iterator1 = statement.declarationList.declarations[Symbol.iterator](), _step1; !(_iteratorNormalCompletion1 = (_step1 = _iterator1.next()).done); _iteratorNormalCompletion1 = true) {\n var declaration = _step1.value;\n if (!ts.isIdentifier(declaration.name) || !declaration.initializer) continue;\n var name = declaration.name.text;\n var initializer = declaration.initializer;\n if (isExported && ts.isCallExpression(initializer)) {\n var initializerText = initializer.getText(source);\n if (name === \"mutate\" && initializerText.startsWith(\"mutations(\") || name === \"where\" && initializerText.startsWith(\"serverWhere(\") || name === \"schema\" && initializerText.startsWith(\"table(\")) {\n return {\n model: true,\n query: false\n };\n }\n }\n if (ts.isArrowFunction(initializer) || ts.isFunctionExpression(initializer)) {\n functions.set(name, initializer.body);\n if (isExported) exported.add(name);\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 continue;\n }\n if (ts.isFunctionDeclaration(statement) && statement.name && statement.body) {\n var _statement_modifiers1;\n functions.set(statement.name.text, statement.body);\n if ((_statement_modifiers1 = statement.modifiers) === null || _statement_modifiers1 === void 0 ? void 0 : _statement_modifiers1.some(function(modifier) {\n return modifier.kind === ts.SyntaxKind.ExportKeyword;\n })) {\n exported.add(statement.name.text);\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 var visiting = /* @__PURE__ */ new Set();\n var reachesQuery = function reachesQuery1(node) {\n if (ts.isPropertyAccessExpression(node)) {\n if (ts.isIdentifier(node.expression) && node.expression.text === \"zql\") return true;\n if (ts.isPropertyAccessExpression(node.expression) && node.expression.name.text === \"query\") return true;\n }\n if (ts.isCallExpression(node) && ts.isIdentifier(node.expression)) {\n var name2 = node.expression.text;\n var helper = functions.get(name2);\n if (helper && !visiting.has(name2)) {\n visiting.add(name2);\n var found = reachesQuery(helper);\n visiting.delete(name2);\n if (found) return true;\n }\n }\n var found1 = false;\n ts.forEachChild(node, function(child) {\n if (!found1 && reachesQuery(child)) found1 = true;\n });\n return found1;\n };\n var query = [\n ...exported\n ].some(function(name2) {\n return reachesQuery(functions.get(name2));\n });\n return {\n model: false,\n query\n };\n}\nfunction mutationTable(ts, path, namespace) {\n var source = ts.createSourceFile(path, (0, import_fs.readFileSync)(path, \"utf8\"), ts.ScriptTarget.Latest, true);\n var schemaTable = null;\n var _iteratorNormalCompletion = true, _didIteratorError = false, _iteratorError = void 0;\n try {\n for (var _iterator = source.statements[Symbol.iterator](), _step; !(_iteratorNormalCompletion = (_step = _iterator.next()).done); _iteratorNormalCompletion = true) {\n var statement = _step.value;\n var _statement_modifiers;\n if (!ts.isVariableStatement(statement)) continue;\n if (!((_statement_modifiers = statement.modifiers) === null || _statement_modifiers === void 0 ? void 0 : _statement_modifiers.some(function(modifier) {\n return modifier.kind === ts.SyntaxKind.ExportKeyword;\n }))) {\n continue;\n }\n var _iteratorNormalCompletion1 = true, _didIteratorError1 = false, _iteratorError1 = void 0;\n try {\n var _loop = function() {\n var declaration = _step1.value;\n if (!ts.isIdentifier(declaration.name) || !declaration.initializer) return \"continue\";\n if (declaration.name.text === \"mutate\" && ts.isCallExpression(declaration.initializer)) {\n var firstArgument = declaration.initializer.arguments[0];\n if (firstArgument && ts.isStringLiteralLike(firstArgument)) {\n return {\n v: firstArgument.text\n };\n }\n }\n if (declaration.name.text !== \"schema\") return \"continue\";\n var visit = function visit1(node) {\n if (ts.isCallExpression(node) && node.expression.getText(source) === \"table\" && node.arguments[0] && ts.isStringLiteralLike(node.arguments[0])) {\n schemaTable = node.arguments[0].text;\n return;\n }\n ts.forEachChild(node, visit);\n };\n visit(declaration.initializer);\n };\n for (var _iterator1 = statement.declarationList.declarations[Symbol.iterator](), _step1; !(_iteratorNormalCompletion1 = (_step1 = _iterator1.next()).done); _iteratorNormalCompletion1 = true) {\n var _ret = _loop();\n if (_type_of(_ret) === \"object\") return _ret.v;\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 } 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 schemaTable !== null && schemaTable !== void 0 ? schemaTable : namespace;\n}\nfunction discoverNamespaces(ts, baseDir, instance, instanceDirs) {\n var namespaces = [];\n var _iteratorNormalCompletion = true, _didIteratorError = false, _iteratorError = void 0;\n try {\n for (var _iterator = (0, import_fs.readdirSync)(instance.dir, {\n withFileTypes: true\n }).sort(function(a, b) {\n return a.name.localeCompare(b.name);\n })[Symbol.iterator](), _step; !(_iteratorNormalCompletion = (_step = _iterator.next()).done); _iteratorNormalCompletion = true) {\n var entry = _step.value;\n if (entry.isFile()) {\n if (!isSourceFile(entry.name) || entry.name === \"on-zero.config.ts\") continue;\n var path = (0, import_path.resolve)(instance.dir, entry.name);\n var kinds = namespaceExportKinds(ts, baseDir, path);\n if (!kinds.model && !kinds.query) continue;\n var name = (0, import_path.basename)(entry.name, \".ts\");\n namespaces.push({\n name,\n instance: instance.name,\n queryPath: path,\n // a query-only file is not a model, matching the folder layout where a\n // missing mutations.ts leaves modelPath null\n modelPath: kinds.model ? path : null,\n aggregatePath: null,\n table: kinds.model ? mutationTable(ts, path, name) : null,\n sourcePaths: [\n path\n ]\n });\n continue;\n }\n if (!entry.isDirectory()) continue;\n var folder = (0, import_path.resolve)(instance.dir, entry.name);\n if (entry.name === \"generated\" || instanceDirs.has(folder)) continue;\n var queryPath = (0, import_path.resolve)(folder, \"queries.ts\");\n var modelPath = (0, import_path.resolve)(folder, \"mutations.ts\");\n var aggregatePath = (0, import_path.resolve)(folder, \"aggregates.ts\");\n var hasQueries = (0, import_fs.existsSync)(queryPath);\n var hasMutations = (0, import_fs.existsSync)(modelPath);\n var hasAggregates = (0, import_fs.existsSync)(aggregatePath);\n if (!hasQueries && !hasMutations && !hasAggregates) {\n if ([\n \"models\",\n \"mutations\",\n \"queries\"\n ].includes(entry.name) && (0, import_fs.readdirSync)(folder).some(isSourceFile)) {\n throw new Error(`[on-zero] ${folder} uses the removed top-level ${entry.name}/ layout; move each namespace to <name>.ts or <name>/queries.ts + mutations.ts`);\n }\n continue;\n }\n namespaces.push({\n name: entry.name,\n instance: instance.name,\n queryPath: hasQueries ? queryPath : null,\n modelPath: hasMutations ? modelPath : null,\n aggregatePath: hasAggregates ? aggregatePath : null,\n table: hasMutations ? mutationTable(ts, modelPath, entry.name) : null,\n sourcePaths: [\n hasQueries && queryPath,\n hasMutations && modelPath,\n hasAggregates && aggregatePath\n ].filter(function(path2) {\n return Boolean(path2);\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 return namespaces;\n}\nfunction metadataPaths(baseDir) {\n var paths = [];\n var relations = (0, import_path.resolve)(baseDir, \"relations.ts\");\n if ((0, import_fs.existsSync)(relations)) paths.push(relations);\n var databaseDir = (0, import_path.resolve)((0, import_path.dirname)(baseDir), \"database\");\n if (!(0, import_fs.existsSync)(databaseDir)) return paths;\n var _iteratorNormalCompletion = true, _didIteratorError = false, _iteratorError = void 0;\n try {\n for (var _iterator = (0, import_fs.readdirSync)(databaseDir, {\n withFileTypes: true\n })[Symbol.iterator](), _step; !(_iteratorNormalCompletion = (_step = _iterator.next()).done); _iteratorNormalCompletion = true) {\n var entry = _step.value;\n if (!entry.isFile() || !isSourceFile(entry.name)) continue;\n if (entry.name === \"relations.ts\" || entry.name === \"zeroSchemaInput.ts\" || entry.name.startsWith(\"schema\")) {\n paths.push((0, import_path.resolve)(databaseDir, entry.name));\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 return paths.sort();\n}\nfunction relationTargets(ts, paths) {\n var relations = /* @__PURE__ */ new Map();\n var _iteratorNormalCompletion = true, _didIteratorError = false, _iteratorError = void 0;\n try {\n var _loop = function() {\n var path = _step.value;\n var source = ts.createSourceFile(path, (0, import_fs.readFileSync)(path, \"utf8\"), ts.ScriptTarget.Latest, true);\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)) return;\n var body = ts.isParenthesizedExpression(factory.body) ? factory.body.expression : factory.body;\n if (!ts.isObjectLiteralExpression(body)) return;\n var _iteratorNormalCompletion2 = true, _didIteratorError2 = false, _iteratorError2 = void 0;\n try {\n for (var _iterator2 = body.properties[Symbol.iterator](), _step2; !(_iteratorNormalCompletion2 = (_step2 = _iterator2.next()).done); _iteratorNormalCompletion2 = true) {\n var tableProperty = _step2.value;\n var _relations_get;\n if (!ts.isPropertyAssignment(tableProperty) || !ts.isObjectLiteralExpression(tableProperty.initializer)) {\n continue;\n }\n var table = tableProperty.name.getText(source).replace(/^['\"]|['\"]$/g, \"\");\n var tableRelations = (_relations_get = relations.get(table)) !== null && _relations_get !== void 0 ? _relations_get : /* @__PURE__ */ new Map();\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)) {\n continue;\n }\n var expression = relationProperty.initializer.expression;\n if (!ts.isPropertyAccessExpression(expression)) continue;\n var name = relationProperty.name.getText(source).replace(/^['\"]|['\"]$/g, \"\");\n tableRelations.set(name, expression.name.text);\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 relations.set(table, tableRelations);\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 visit(source);\n };\n for (var _iterator = paths.filter(function(path) {\n return (0, import_path.basename)(path) === \"relations.ts\";\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 return relations;\n}\nfunction tableColumns(ts, paths, namespaces) {\n var columns = /* @__PURE__ */ new Map();\n var sources = /* @__PURE__ */ new Set([\n ...paths,\n ...namespaces.flatMap(function(namespace) {\n return namespace.sourcePaths;\n })\n ]);\n var _iteratorNormalCompletion = true, _didIteratorError = false, _iteratorError = void 0;\n try {\n var _loop = function() {\n var path = _step.value;\n var source = ts.createSourceFile(path, (0, import_fs.readFileSync)(path, \"utf8\"), ts.ScriptTarget.Latest, true);\n var visit = function visit1(node) {\n if (!ts.isVariableDeclaration(node) || !ts.isIdentifier(node.name) || !node.initializer) {\n ts.forEachChild(node, visit);\n return;\n }\n var tableNames = /* @__PURE__ */ new Set([\n node.name.text\n ]);\n var foundColumns = null;\n var inspect = function inspect1(candidate) {\n if (!ts.isCallExpression(candidate)) {\n ts.forEachChild(candidate, inspect);\n return;\n }\n var _iteratorNormalCompletion3 = true, _didIteratorError3 = false, _iteratorError3 = void 0;\n try {\n for (var _iterator3 = candidate.arguments[Symbol.iterator](), _step3; !(_iteratorNormalCompletion3 = (_step3 = _iterator3.next()).done); _iteratorNormalCompletion3 = true) {\n var argument = _step3.value;\n if (ts.isStringLiteral(argument) && /table/i.test(candidate.expression.getText(source))) {\n tableNames.add(argument.text);\n }\n if (ts.isObjectLiteralExpression(argument)) foundColumns = argument;\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 inspect(candidate.expression);\n };\n inspect(node.initializer);\n if (foundColumns) {\n var names = new Set(foundColumns.properties.map(function(property) {\n var _property_name;\n return (_property_name = property.name) === null || _property_name === void 0 ? void 0 : _property_name.getText(source).replace(/^['\"]|['\"]$/g, \"\");\n }).filter(function(name) {\n return Boolean(name);\n }));\n var _iteratorNormalCompletion2 = true, _didIteratorError2 = false, _iteratorError2 = void 0;\n try {\n for (var _iterator2 = tableNames[Symbol.iterator](), _step2; !(_iteratorNormalCompletion2 = (_step2 = _iterator2.next()).done); _iteratorNormalCompletion2 = true) {\n var tableName = _step2.value;\n columns.set(tableName, names);\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 ts.forEachChild(node, visit);\n };\n visit(source);\n };\n for (var _iterator = sources[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 return columns;\n}\nfunction queriedTables(ts, namespace, relations) {\n if (!namespace.queryPath) return [];\n var source = ts.createSourceFile(namespace.queryPath, (0, import_fs.readFileSync)(namespace.queryPath, \"utf8\"), ts.ScriptTarget.Latest, true);\n var reached = [];\n var functions = /* @__PURE__ */ new Map();\n var exported = /* @__PURE__ */ new Set();\n var _iteratorNormalCompletion = true, _didIteratorError = false, _iteratorError = void 0;\n try {\n for (var _iterator = source.statements[Symbol.iterator](), _step; !(_iteratorNormalCompletion = (_step = _iterator.next()).done); _iteratorNormalCompletion = true) {\n var statement = _step.value;\n if (ts.isVariableStatement(statement)) {\n var _statement_modifiers;\n var isExported = (_statement_modifiers = statement.modifiers) === null || _statement_modifiers === void 0 ? void 0 : _statement_modifiers.some(function(modifier) {\n return modifier.kind === ts.SyntaxKind.ExportKeyword;\n });\n var _iteratorNormalCompletion1 = true, _didIteratorError1 = false, _iteratorError1 = void 0;\n try {\n for (var _iterator1 = statement.declarationList.declarations[Symbol.iterator](), _step1; !(_iteratorNormalCompletion1 = (_step1 = _iterator1.next()).done); _iteratorNormalCompletion1 = true) {\n var declaration = _step1.value;\n if (ts.isIdentifier(declaration.name) && declaration.initializer && (ts.isArrowFunction(declaration.initializer) || ts.isFunctionExpression(declaration.initializer))) {\n functions.set(declaration.name.text, declaration.initializer.body);\n if (isExported) exported.add(declaration.name.text);\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 } else if (ts.isFunctionDeclaration(statement) && statement.name && statement.body) {\n var _statement_modifiers1;\n functions.set(statement.name.text, statement.body);\n if ((_statement_modifiers1 = statement.modifiers) === null || _statement_modifiers1 === void 0 ? void 0 : _statement_modifiers1.some(function(modifier) {\n return modifier.kind === ts.SyntaxKind.ExportKeyword;\n })) {\n exported.add(statement.name.text);\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 var rootTable = function rootTable2(node) {\n var _ref;\n var _text_match;\n var text = node.getText(source);\n return (_ref = (_text_match = text.match(/(?:\\bzql|\\.query)\\.([A-Za-z_$][\\w$]*)/)) === null || _text_match === void 0 ? void 0 : _text_match[1]) !== null && _ref !== void 0 ? _ref : null;\n };\n var visiting = /* @__PURE__ */ new Set();\n var visit = function visit1(node, currentTable, query) {\n if (ts.isCallExpression(node) && ts.isPropertyAccessExpression(node.expression) && node.expression.name.text === \"related\") {\n var _rootTable;\n var _relations_get;\n var nameArg = node.arguments[0];\n if (!nameArg || !ts.isStringLiteral(nameArg)) {\n throw new Error(`[on-zero] ${namespace.name}.${query} uses related() without a string literal; sync membership must be statically derivable`);\n }\n var sourceTable = (_rootTable = rootTable(node.expression.expression)) !== null && _rootTable !== void 0 ? _rootTable : currentTable;\n var target = (_relations_get = relations.get(sourceTable)) === null || _relations_get === void 0 ? void 0 : _relations_get.get(nameArg.text);\n if (!target) {\n throw new Error(`[on-zero] ${namespace.name}.${query} related('${nameArg.text}') cannot be resolved from table '${sourceTable}' through relations.ts`);\n }\n reached.push({\n table: target,\n query,\n root: false\n });\n visit(node.expression.expression, currentTable, query);\n var callback = node.arguments[1];\n if (callback && (ts.isArrowFunction(callback) || ts.isFunctionExpression(callback))) {\n visit(callback.body, target, query);\n }\n return;\n }\n if (ts.isCallExpression(node) && ts.isIdentifier(node.expression)) {\n var helper = functions.get(node.expression.text);\n var key = `${query}:${node.expression.text}`;\n if (helper && !visiting.has(key)) {\n visiting.add(key);\n var helperRoot = rootTable(helper);\n if (helperRoot) reached.push({\n table: helperRoot,\n query,\n root: true\n });\n visit(helper, helperRoot !== null && helperRoot !== void 0 ? helperRoot : currentTable, query);\n visiting.delete(key);\n }\n }\n ts.forEachChild(node, function(child) {\n return visit(child, currentTable, query);\n });\n };\n var _iteratorNormalCompletion2 = true, _didIteratorError2 = false, _iteratorError2 = void 0;\n try {\n for (var _iterator2 = exported[Symbol.iterator](), _step2; !(_iteratorNormalCompletion2 = (_step2 = _iterator2.next()).done); _iteratorNormalCompletion2 = true) {\n var name = _step2.value;\n if ([\n \"mutate\",\n \"schema\",\n \"where\"\n ].includes(name)) continue;\n var body = functions.get(name);\n var queryRoot = rootTable(body);\n if (queryRoot) reached.push({\n table: queryRoot,\n query: name,\n root: true\n });\n visit(body, queryRoot !== null && queryRoot !== void 0 ? queryRoot : namespace.name, name);\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 return reached;\n}\nfunction mutationSupportTables(ts, baseDir, sourceRoots, namespace) {\n if (!namespace.modelPath) return [];\n var tables = /* @__PURE__ */ new Set();\n var visited = /* @__PURE__ */ new Set();\n var scan = function scan1(path) {\n if (visited.has(path)) return;\n visited.add(path);\n var source = ts.createSourceFile(path, (0, import_fs.readFileSync)(path, \"utf8\"), ts.ScriptTarget.Latest, true);\n var visit = function visit1(node) {\n if (ts.isPropertyAccessExpression(node) && ts.isPropertyAccessExpression(node.expression) && [\n \"mutate\",\n \"query\"\n ].includes(node.expression.name.text)) {\n var transaction = node.expression.expression;\n if (ts.isIdentifier(transaction) && transaction.text === \"tx\" || ts.isPropertyAccessExpression(transaction) && transaction.name.text === \"tx\") {\n tables.add(node.name.text);\n }\n }\n if ((ts.isImportDeclaration(node) || ts.isExportDeclaration(node)) && node.moduleSpecifier && ts.isStringLiteral(node.moduleSpecifier)) {\n var specifier = node.moduleSpecifier.text;\n var unresolved = specifier.startsWith(\"~/data/\") ? (0, import_path.resolve)(baseDir, specifier.slice(\"~/data/\".length)) : specifier.startsWith(\".\") ? (0, import_path.resolve)((0, import_path.dirname)(path), specifier) : null;\n if (unresolved) {\n var _loop = function(_i2, _iter2) {\n var candidate = _iter2[_i2];\n if ((0, import_fs.existsSync)(candidate) && sourceRoots.some(function(root) {\n return isWithin(root, candidate);\n })) {\n scan(candidate);\n return \"break\";\n }\n };\n for (var _i = 0, _iter = [\n unresolved.endsWith(\".ts\") ? unresolved : `${unresolved}.ts`,\n (0, import_path.resolve)(unresolved, \"index.ts\")\n ]; _i < _iter.length; _i++) {\n var _ret = _loop(_i, _iter);\n if (_ret === \"break\") break;\n }\n }\n }\n ts.forEachChild(node, visit);\n };\n visit(source);\n };\n scan(namespace.modelPath);\n return [\n ...tables\n ].sort();\n}\nfunction assertNoInstanceFiles(roots) {\n var visited = /* @__PURE__ */ new Set();\n var walk = function walk1(dir) {\n if (visited.has(dir) || !(0, import_fs.existsSync)(dir)) return;\n visited.add(dir);\n var _iteratorNormalCompletion2 = true, _didIteratorError2 = false, _iteratorError2 = void 0;\n try {\n for (var _iterator2 = (0, import_fs.readdirSync)(dir, {\n withFileTypes: true\n })[Symbol.iterator](), _step2; !(_iteratorNormalCompletion2 = (_step2 = _iterator2.next()).done); _iteratorNormalCompletion2 = true) {\n var entry = _step2.value;\n if (entry.name === \"node_modules\" || entry.name === \"generated\") continue;\n var path = (0, import_path.resolve)(dir, entry.name);\n if (entry.isDirectory()) {\n walk(path);\n } else if (entry.isFile() && entry.name === \"instance.ts\") {\n throw new Error(`[on-zero] ${path} uses removed instance.ts configuration; delete it and configure instances in on-zero.config.ts`);\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 = roots[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}\nfunction assertNoUnclaimedNamespaces(ts, baseDir, configPath, instanceDirs) {\n var walk = function walk1(dir) {\n if (instanceDirs.some(function(instanceDir) {\n return isWithin(instanceDir, dir);\n })) return;\n var _iteratorNormalCompletion = true, _didIteratorError = false, _iteratorError = void 0;\n try {\n for (var _iterator = (0, import_fs.readdirSync)(dir, {\n withFileTypes: true\n })[Symbol.iterator](), _step; !(_iteratorNormalCompletion = (_step = _iterator.next()).done); _iteratorNormalCompletion = true) {\n var entry = _step.value;\n if (entry.name === \"node_modules\" || entry.name === \"generated\") continue;\n var path = (0, import_path.resolve)(dir, entry.name);\n if (entry.isDirectory()) {\n walk(path);\n continue;\n }\n if (!entry.isFile() || !isSourceFile(entry.name) || path === configPath || entry.name === \"instance.ts\") {\n continue;\n }\n var kinds = namespaceExportKinds(ts, baseDir, path);\n if (kinds.model || kinds.query) {\n throw new Error(`[on-zero] data namespace ${path} is outside every instance directory declared in ${configPath}`);\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}\nfunction discoverDataLayout(ts, baseDir, configPath) {\n var _ref;\n var config = readDataConfig(ts, baseDir, configPath);\n var configured = (_ref = config === null || config === void 0 ? void 0 : config.instances) !== null && _ref !== void 0 ? _ref : [\n {\n name: \"default\",\n dir: baseDir,\n scope: null,\n supportTables: []\n }\n ];\n var sourceRoots = [\n .../* @__PURE__ */ new Set([\n baseDir,\n ...configured.map(function(instance2) {\n return instance2.dir;\n })\n ])\n ];\n assertNoInstanceFiles(sourceRoots);\n if (config) {\n assertNoUnclaimedNamespaces(ts, baseDir, config.path, configured.map(function(instance2) {\n return instance2.dir;\n }));\n }\n var instances = configured.map(function(instance2) {\n return {\n name: instance2.name,\n dir: instance2.dir,\n scope: instance2.scope,\n namespaces: [],\n tables: [],\n syncTables: [],\n supportTables: [],\n declaredSupportTables: instance2.supportTables\n };\n });\n var instanceDirs = new Set(instances.map(function(instance2) {\n return instance2.dir;\n }));\n var _iteratorNormalCompletion = true, _didIteratorError = false, _iteratorError = void 0;\n try {\n for (var _iterator = instances[Symbol.iterator](), _step; !(_iteratorNormalCompletion = (_step = _iterator.next()).done); _iteratorNormalCompletion = true) {\n var instance = _step.value;\n instance.namespaces = discoverNamespaces(ts, baseDir, instance, instanceDirs);\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 namespaces = instances.flatMap(function(instance2) {\n return instance2.namespaces;\n });\n var namespaceOwners = /* @__PURE__ */ new Map();\n var _iteratorNormalCompletion1 = true, _didIteratorError1 = false, _iteratorError1 = void 0;\n try {\n for (var _iterator1 = namespaces[Symbol.iterator](), _step1; !(_iteratorNormalCompletion1 = (_step1 = _iterator1.next()).done); _iteratorNormalCompletion1 = true) {\n var namespace = _step1.value;\n var owner = namespaceOwners.get(namespace.name);\n if (owner) {\n throw new Error(`[on-zero] namespace '${namespace.name}' is claimed by instances '${owner}' and '${namespace.instance}'`);\n }\n namespaceOwners.set(namespace.name, namespace.instance);\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 tableOwners = /* @__PURE__ */ new Map();\n var _iteratorNormalCompletion2 = true, _didIteratorError2 = false, _iteratorError2 = void 0;\n try {\n for (var _iterator2 = namespaces[Symbol.iterator](), _step2; !(_iteratorNormalCompletion2 = (_step2 = _iterator2.next()).done); _iteratorNormalCompletion2 = true) {\n var namespace1 = _step2.value;\n if (namespace1.table === null) continue;\n var owner1 = tableOwners.get(namespace1.table);\n if (owner1 && owner1 !== namespace1.instance) {\n throw new Error(`[on-zero] table '${namespace1.table}' is claimed by instances '${owner1}' and '${namespace1.instance}'`);\n }\n tableOwners.set(namespace1.table, namespace1.instance);\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 var metadata = metadataPaths(baseDir);\n var relations = relationTargets(ts, metadata);\n var columns = tableColumns(ts, metadata, namespaces);\n var relatedOwners = /* @__PURE__ */ new Map();\n var _iteratorNormalCompletion3 = true, _didIteratorError3 = false, _iteratorError3 = void 0;\n try {\n for (var _iterator3 = instances[Symbol.iterator](), _step3; !(_iteratorNormalCompletion3 = (_step3 = _iterator3.next()).done); _iteratorNormalCompletion3 = true) {\n var instance1 = _step3.value;\n var tables = new Set(instance1.namespaces.map(function(namespace3) {\n return namespace3.table;\n }).filter(function(table2) {\n return table2 !== null;\n }));\n var syncTables = new Set(tables);\n var _iteratorNormalCompletion4 = true, _didIteratorError4 = false, _iteratorError4 = void 0;\n try {\n for (var _iterator4 = instance1.namespaces[Symbol.iterator](), _step4; !(_iteratorNormalCompletion4 = (_step4 = _iterator4.next()).done); _iteratorNormalCompletion4 = true) {\n var namespace2 = _step4.value;\n var _iteratorNormalCompletion5 = true, _didIteratorError5 = false, _iteratorError5 = void 0;\n try {\n for (var _iterator5 = queriedTables(ts, namespace2, relations)[Symbol.iterator](), _step5; !(_iteratorNormalCompletion5 = (_step5 = _iterator5.next()).done); _iteratorNormalCompletion5 = true) {\n var reached = _step5.value;\n var _tableOwners_get;\n var owner2 = (_tableOwners_get = tableOwners.get(reached.table)) !== null && _tableOwners_get !== void 0 ? _tableOwners_get : relatedOwners.get(reached.table);\n if (owner2 && owner2 !== instance1.name) {\n throw new Error(`[on-zero] ${namespace2.name}.${reached.query} in instance '${instance1.name}' reaches table '${reached.table}' owned by instance '${owner2}'`);\n }\n relatedOwners.set(reached.table, instance1.name);\n if (reached.root) tables.add(reached.table);\n syncTables.add(reached.table);\n }\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 }\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 instance1.tables = [\n ...tables\n ].sort();\n instance1.syncTables = [\n ...syncTables\n ].sort();\n if (instance1.scope) {\n var _iteratorNormalCompletion6 = true, _didIteratorError6 = false, _iteratorError6 = void 0;\n try {\n for (var _iterator6 = instance1.syncTables[Symbol.iterator](), _step6; !(_iteratorNormalCompletion6 = (_step6 = _iterator6.next()).done); _iteratorNormalCompletion6 = true) {\n var table = _step6.value;\n var _columns_get;\n if (!((_columns_get = columns.get(table)) === null || _columns_get === void 0 ? void 0 : _columns_get.has(instance1.scope))) {\n throw new Error(`[on-zero] table '${table}' in instance '${instance1.name}' is missing scope column '${instance1.scope}'`);\n }\n }\n } catch (err) {\n _didIteratorError6 = true;\n _iteratorError6 = err;\n } finally {\n try {\n if (!_iteratorNormalCompletion6 && _iterator6.return != null) {\n _iterator6.return();\n }\n } finally {\n if (_didIteratorError6) {\n throw _iteratorError6;\n }\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 _iteratorNormalCompletion7 = true, _didIteratorError7 = false, _iteratorError7 = void 0;\n try {\n var _loop = function() {\n var instance2 = _step7.value;\n var supportTables = new Set(instance2.declaredSupportTables);\n var _iteratorNormalCompletion8 = true, _didIteratorError8 = false, _iteratorError8 = void 0;\n try {\n for (var _iterator8 = instance2.namespaces[Symbol.iterator](), _step8; !(_iteratorNormalCompletion8 = (_step8 = _iterator8.next()).done); _iteratorNormalCompletion8 = true) {\n var namespace3 = _step8.value;\n var _iteratorNormalCompletion12 = true, _didIteratorError12 = false, _iteratorError12 = void 0;\n try {\n for (var _iterator12 = mutationSupportTables(ts, baseDir, sourceRoots, namespace3)[Symbol.iterator](), _step12; !(_iteratorNormalCompletion12 = (_step12 = _iterator12.next()).done); _iteratorNormalCompletion12 = true) {\n var table2 = _step12.value;\n if (tableOwners.has(table2) || relatedOwners.has(table2)) continue;\n if (!instance2.syncTables.includes(table2)) {\n supportTables.add(table2);\n }\n }\n } catch (err) {\n _didIteratorError12 = true;\n _iteratorError12 = err;\n } finally {\n try {\n if (!_iteratorNormalCompletion12 && _iterator12.return != null) {\n _iterator12.return();\n }\n } finally {\n if (_didIteratorError12) {\n throw _iteratorError12;\n }\n }\n }\n }\n } catch (err) {\n _didIteratorError8 = true;\n _iteratorError8 = err;\n } finally {\n try {\n if (!_iteratorNormalCompletion8 && _iterator8.return != null) {\n _iterator8.return();\n }\n } finally {\n if (_didIteratorError8) {\n throw _iteratorError8;\n }\n }\n }\n instance2.supportTables = [\n ...supportTables\n ].filter(function(table3) {\n return !instance2.syncTables.includes(table3);\n }).sort();\n };\n for (var _iterator7 = instances[Symbol.iterator](), _step7; !(_iteratorNormalCompletion7 = (_step7 = _iterator7.next()).done); _iteratorNormalCompletion7 = true) _loop();\n } catch (err) {\n _didIteratorError7 = true;\n _iteratorError7 = err;\n } finally {\n try {\n if (!_iteratorNormalCompletion7 && _iterator7.return != null) {\n _iterator7.return();\n }\n } finally {\n if (_didIteratorError7) {\n throw _iteratorError7;\n }\n }\n }\n return {\n instances,\n namespaces,\n metadataPaths: config ? [\n ...metadata,\n config.path\n ].sort() : metadata,\n sourceRoots\n };\n}\nfunction namespaceImportPath(baseDir, path) {\n return `../${toImportPath(baseDir, path)}`;\n}\n//# sourceMappingURL=generate-layout.js.map\n"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"names":["__toCommonJS","mod","__copyProps","__defProp","value","generate_layout_exports","__export","discoverDataLayout","namespaceImportPath","module","exports","import_fs","require","import_path","_type_of","obj","Symbol","constructor","isSourceFile","isSourceFile2","name","endsWith","toImportPath","toImportPath2","baseDir","path","relative","split","sep","join","replace","isWithin","isWithin2","root","child","startsWith","propertyName","ts","isIdentifier","isStringLiteral","isNumericLiteral","text","readDataConfig","configPath","resolve","existsSync","Error","dirname","source","createSourceFile","readFileSync","ScriptTarget","Latest","hasParseErrors","config","_iteratorNormalCompletion","_didIteratorError","_iteratorError","_iterator","statements","iterator","_step","next","done","statement","isExportAssignment","isExportEquals","call","expression","isCallExpression","getText","arguments","isObjectLiteralExpression","err","return","rootOptions","Map","_iteratorNormalCompletion1","_didIteratorError1","_iteratorError1","_iterator1","properties","_step1","option","isPropertyAssignment","has","set","initializer","_iteratorNormalCompletion2","_didIteratorError2","_iteratorError2","_iterator2","keys","_step2","name1","instancesNode","get","instances","_iteratorNormalCompletion3","_didIteratorError3","_iteratorError3","_loop","property","_step3","name2","some","instance","dir","scope","supportTables","seen","Set","_iteratorNormalCompletion5","_didIteratorError5","_iteratorError5","_iterator5","_step5","option2","optionName","add","isArrayLiteralExpression","_iteratorNormalCompletion12","_didIteratorError12","_iteratorError12","_iterator12","elements","_step12","table","push","statSync","isDirectory","_iterator3","length","_iteratorNormalCompletion4","_didIteratorError4","_iteratorError4","_loop1","_step4","duplicate","find","candidate","_iterator4","_source_parseDiagnostics","Boolean","parseDiagnostics","namespaceExportKinds","none","model","query","displayPath","console","warn","functions","exported","isVariableStatement","_statement_modifiers","isExported","modifiers","modifier","kind","SyntaxKind","ExportKeyword","declarationList","declarations","declaration","initializerText","isArrowFunction","isFunctionExpression","body","isFunctionDeclaration","_statement_modifiers1","visiting","reachesQuery","reachesQuery1","node","isPropertyAccessExpression","helper","found","delete","found1","forEachChild","mutationTable","namespace","schemaTable","firstArgument","isStringLiteralLike","v","visit","visit1","_ret","discoverNamespaces","instanceDirs","namespaces","readdirSync","withFileTypes","sort","a","b","localeCompare","entry","isFile","kinds","basename","queryPath","modelPath","aggregatePath","sourcePaths","folder","hasQueries","hasMutations","hasAggregates","includes","filter","path2","metadataPaths","paths","relations","databaseDir","relationTargets","factory","isParenthesizedExpression","tableProperty","_relations_get","tableRelations","relationProperty","tableColumns","columns","sources","flatMap","isVariableDeclaration","tableNames","foundColumns","inspect","inspect1"],"sources":["../../src/generate-layout.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
|