on-zero 0.4.3 → 0.4.4
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.cjs +46 -41
- package/dist/cjs/cli.native.js +48 -43
- package/dist/cjs/cli.native.js.map +1 -1
- package/dist/cjs/constants.cjs +14 -12
- package/dist/cjs/constants.native.js +14 -12
- package/dist/cjs/constants.native.js.map +1 -1
- package/dist/cjs/createPermissions.cjs +66 -34
- package/dist/cjs/createPermissions.native.js +143 -87
- package/dist/cjs/createPermissions.native.js.map +1 -1
- package/dist/cjs/createSchemaFromDrizzle.cjs +15 -13
- package/dist/cjs/createSchemaFromDrizzle.native.js +15 -13
- package/dist/cjs/createSchemaFromDrizzle.native.js.map +1 -1
- package/dist/cjs/createUseQuery.cjs +48 -35
- package/dist/cjs/createUseQuery.native.js +52 -38
- package/dist/cjs/createUseQuery.native.js.map +1 -1
- package/dist/cjs/createZeroClient.cjs +177 -135
- package/dist/cjs/createZeroClient.native.js +246 -195
- package/dist/cjs/createZeroClient.native.js.map +1 -1
- package/dist/cjs/createZeroServer.cjs +175 -129
- package/dist/cjs/createZeroServer.native.js +170 -138
- package/dist/cjs/createZeroServer.native.js.map +1 -1
- package/dist/cjs/generate-helpers.cjs +122 -88
- package/dist/cjs/generate-helpers.native.js +209 -174
- package/dist/cjs/generate-helpers.native.js.map +1 -1
- package/dist/cjs/generate-lite.cjs +90 -58
- package/dist/cjs/generate-lite.native.js +200 -140
- package/dist/cjs/generate-lite.native.js.map +1 -1
- package/dist/cjs/generate-lite.test.cjs +229 -192
- package/dist/cjs/generate-lite.test.native.js +229 -194
- package/dist/cjs/generate-lite.test.native.js.map +1 -1
- package/dist/cjs/generate.cjs +455 -291
- package/dist/cjs/generate.native.js +747 -565
- package/dist/cjs/generate.native.js.map +1 -1
- package/dist/cjs/generate.test.cjs +170 -106
- package/dist/cjs/generate.test.native.js +171 -107
- package/dist/cjs/generate.test.native.js.map +1 -1
- package/dist/cjs/helpers/batchQuery.cjs +29 -18
- package/dist/cjs/helpers/batchQuery.native.js +36 -21
- package/dist/cjs/helpers/batchQuery.native.js.map +1 -1
- package/dist/cjs/helpers/clearZeroClientData.cjs +30 -21
- package/dist/cjs/helpers/clearZeroClientData.native.js +42 -33
- package/dist/cjs/helpers/clearZeroClientData.native.js.map +1 -1
- package/dist/cjs/helpers/createMutators.cjs +80 -42
- package/dist/cjs/helpers/createMutators.native.js +139 -87
- package/dist/cjs/helpers/createMutators.native.js.map +1 -1
- package/dist/cjs/helpers/didRunPermissionCheck.cjs +19 -13
- package/dist/cjs/helpers/didRunPermissionCheck.native.js +22 -20
- package/dist/cjs/helpers/didRunPermissionCheck.native.js.map +1 -1
- package/dist/cjs/helpers/ensureLoggedIn.cjs +16 -13
- package/dist/cjs/helpers/ensureLoggedIn.native.js +21 -18
- package/dist/cjs/helpers/ensureLoggedIn.native.js.map +1 -1
- package/dist/cjs/helpers/getAuth.cjs +25 -15
- package/dist/cjs/helpers/getAuth.native.js +25 -15
- package/dist/cjs/helpers/getAuth.native.js.map +1 -1
- package/dist/cjs/helpers/mutatorContext.cjs +21 -14
- package/dist/cjs/helpers/mutatorContext.native.js +21 -15
- package/dist/cjs/helpers/mutatorContext.native.js.map +1 -1
- package/dist/cjs/helpers/prettyFormatZeroQuery.cjs +126 -81
- package/dist/cjs/helpers/prettyFormatZeroQuery.native.js +135 -92
- package/dist/cjs/helpers/prettyFormatZeroQuery.native.js.map +1 -1
- package/dist/cjs/helpers/queryContext.cjs +12 -10
- package/dist/cjs/helpers/queryContext.native.js +16 -13
- package/dist/cjs/helpers/queryContext.native.js.map +1 -1
- package/dist/cjs/helpers/showZeroClientError.cjs +24 -19
- package/dist/cjs/helpers/showZeroClientError.native.js +38 -34
- package/dist/cjs/helpers/showZeroClientError.native.js.map +1 -1
- package/dist/cjs/helpers/useZeroDebug.cjs +82 -49
- package/dist/cjs/helpers/useZeroDebug.native.js +83 -55
- package/dist/cjs/helpers/useZeroDebug.native.js.map +1 -1
- package/dist/cjs/index.cjs +17 -15
- package/dist/cjs/index.native.js +17 -15
- package/dist/cjs/index.native.js.map +1 -1
- package/dist/cjs/modelRegistry.cjs +12 -10
- package/dist/cjs/modelRegistry.native.js +12 -10
- package/dist/cjs/modelRegistry.native.js.map +1 -1
- package/dist/cjs/mutations.cjs +66 -42
- package/dist/cjs/mutations.native.js +68 -46
- package/dist/cjs/mutations.native.js.map +1 -1
- package/dist/cjs/queryRegistry.cjs +13 -10
- package/dist/cjs/queryRegistry.native.js +14 -11
- package/dist/cjs/queryRegistry.native.js.map +1 -1
- package/dist/cjs/resolveQuery.cjs +22 -18
- package/dist/cjs/resolveQuery.native.js +32 -28
- package/dist/cjs/resolveQuery.native.js.map +1 -1
- package/dist/cjs/run.cjs +35 -28
- package/dist/cjs/run.native.js +35 -29
- package/dist/cjs/run.native.js.map +1 -1
- package/dist/cjs/server.cjs +7 -5
- package/dist/cjs/serverWhere.cjs +13 -11
- package/dist/cjs/serverWhere.native.js +13 -11
- package/dist/cjs/serverWhere.native.js.map +1 -1
- package/dist/cjs/serverWhere.test.cjs +83 -55
- package/dist/cjs/serverWhere.test.native.js +72 -50
- package/dist/cjs/serverWhere.test.native.js.map +1 -1
- package/dist/cjs/state.cjs +49 -44
- package/dist/cjs/state.native.js +56 -53
- package/dist/cjs/state.native.js.map +1 -1
- package/dist/cjs/types.cjs +7 -5
- package/dist/cjs/types.native.js +7 -5
- package/dist/cjs/types.native.js.map +1 -1
- package/dist/cjs/usePermission.test.cjs +58 -45
- package/dist/cjs/usePermission.test.native.js +59 -48
- package/dist/cjs/usePermission.test.native.js.map +1 -1
- package/dist/cjs/vite-plugin.cjs +41 -21
- package/dist/cjs/vite-plugin.native.js +61 -47
- package/dist/cjs/vite-plugin.native.js.map +1 -1
- package/dist/cjs/where.cjs +39 -24
- package/dist/cjs/where.native.js +44 -29
- package/dist/cjs/where.native.js.map +1 -1
- package/dist/cjs/zeroRunner.cjs +18 -12
- package/dist/cjs/zeroRunner.native.js +22 -16
- package/dist/cjs/zeroRunner.native.js.map +1 -1
- package/dist/cjs/zql.cjs +14 -11
- package/dist/cjs/zql.native.js +19 -17
- package/dist/cjs/zql.native.js.map +1 -1
- package/dist/esm/cli.mjs +43 -38
- package/dist/esm/cli.mjs.map +1 -1
- package/dist/esm/cli.native.js +44 -39
- package/dist/esm/cli.native.js.map +1 -1
- package/dist/esm/constants.mjs +2 -2
- package/dist/esm/constants.mjs.map +1 -1
- package/dist/esm/constants.native.js +2 -2
- package/dist/esm/constants.native.js.map +1 -1
- package/dist/esm/createPermissions.mjs +48 -18
- package/dist/esm/createPermissions.mjs.map +1 -1
- package/dist/esm/createPermissions.native.js +125 -71
- package/dist/esm/createPermissions.native.js.map +1 -1
- package/dist/esm/createUseQuery.mjs +32 -21
- package/dist/esm/createUseQuery.mjs.map +1 -1
- package/dist/esm/createUseQuery.native.js +36 -24
- package/dist/esm/createUseQuery.native.js.map +1 -1
- package/dist/esm/createZeroClient.mjs +148 -108
- package/dist/esm/createZeroClient.mjs.map +1 -1
- package/dist/esm/createZeroClient.native.js +217 -168
- package/dist/esm/createZeroClient.native.js.map +1 -1
- package/dist/esm/createZeroServer.mjs +148 -104
- package/dist/esm/createZeroServer.mjs.map +1 -1
- package/dist/esm/createZeroServer.native.js +143 -113
- package/dist/esm/createZeroServer.native.js.map +1 -1
- package/dist/esm/generate-helpers.mjs +110 -78
- package/dist/esm/generate-helpers.mjs.map +1 -1
- package/dist/esm/generate-helpers.native.js +197 -164
- package/dist/esm/generate-helpers.native.js.map +1 -1
- package/dist/esm/generate-lite.mjs +78 -48
- package/dist/esm/generate-lite.mjs.map +1 -1
- package/dist/esm/generate-lite.native.js +188 -130
- package/dist/esm/generate-lite.native.js.map +1 -1
- package/dist/esm/generate-lite.test.mjs +227 -190
- package/dist/esm/generate-lite.test.mjs.map +1 -1
- package/dist/esm/generate-lite.test.native.js +227 -192
- package/dist/esm/generate-lite.test.native.js.map +1 -1
- package/dist/esm/generate.mjs +427 -265
- package/dist/esm/generate.mjs.map +1 -1
- package/dist/esm/generate.native.js +718 -538
- package/dist/esm/generate.native.js.map +1 -1
- package/dist/esm/generate.test.mjs +165 -101
- package/dist/esm/generate.test.mjs.map +1 -1
- package/dist/esm/generate.test.native.js +165 -101
- package/dist/esm/generate.test.native.js.map +1 -1
- package/dist/esm/helpers/batchQuery.mjs +17 -8
- package/dist/esm/helpers/batchQuery.mjs.map +1 -1
- package/dist/esm/helpers/batchQuery.native.js +24 -11
- package/dist/esm/helpers/batchQuery.native.js.map +1 -1
- package/dist/esm/helpers/clearZeroClientData.mjs +18 -11
- package/dist/esm/helpers/clearZeroClientData.mjs.map +1 -1
- package/dist/esm/helpers/clearZeroClientData.native.js +30 -23
- package/dist/esm/helpers/clearZeroClientData.native.js.map +1 -1
- package/dist/esm/helpers/createMutators.mjs +53 -17
- package/dist/esm/helpers/createMutators.mjs.map +1 -1
- package/dist/esm/helpers/createMutators.native.js +112 -62
- package/dist/esm/helpers/createMutators.native.js.map +1 -1
- package/dist/esm/helpers/didRunPermissionCheck.mjs +7 -3
- package/dist/esm/helpers/didRunPermissionCheck.mjs.map +1 -1
- package/dist/esm/helpers/didRunPermissionCheck.native.js +9 -9
- package/dist/esm/helpers/didRunPermissionCheck.native.js.map +1 -1
- package/dist/esm/helpers/ensureLoggedIn.mjs +2 -1
- package/dist/esm/helpers/ensureLoggedIn.mjs.map +1 -1
- package/dist/esm/helpers/ensureLoggedIn.native.js +2 -1
- package/dist/esm/helpers/ensureLoggedIn.native.js.map +1 -1
- package/dist/esm/helpers/getAuth.mjs +10 -2
- package/dist/esm/helpers/getAuth.mjs.map +1 -1
- package/dist/esm/helpers/getAuth.native.js +10 -2
- package/dist/esm/helpers/getAuth.native.js.map +1 -1
- package/dist/esm/helpers/mutatorContext.mjs +9 -4
- package/dist/esm/helpers/mutatorContext.mjs.map +1 -1
- package/dist/esm/helpers/mutatorContext.native.js +8 -4
- package/dist/esm/helpers/mutatorContext.native.js.map +1 -1
- package/dist/esm/helpers/prettyFormatZeroQuery.mjs +114 -71
- package/dist/esm/helpers/prettyFormatZeroQuery.mjs.map +1 -1
- package/dist/esm/helpers/prettyFormatZeroQuery.native.js +121 -80
- package/dist/esm/helpers/prettyFormatZeroQuery.native.js.map +1 -1
- package/dist/esm/helpers/queryContext.native.js +2 -1
- package/dist/esm/helpers/queryContext.native.js.map +1 -1
- package/dist/esm/helpers/showZeroClientError.mjs +12 -9
- package/dist/esm/helpers/showZeroClientError.mjs.map +1 -1
- package/dist/esm/helpers/showZeroClientError.native.js +25 -23
- package/dist/esm/helpers/showZeroClientError.native.js.map +1 -1
- package/dist/esm/helpers/useZeroDebug.mjs +67 -36
- package/dist/esm/helpers/useZeroDebug.mjs.map +1 -1
- package/dist/esm/helpers/useZeroDebug.native.js +68 -42
- package/dist/esm/helpers/useZeroDebug.native.js.map +1 -1
- package/dist/esm/mutations.mjs +51 -29
- package/dist/esm/mutations.mjs.map +1 -1
- package/dist/esm/mutations.native.js +53 -33
- package/dist/esm/mutations.native.js.map +1 -1
- package/dist/esm/queryRegistry.mjs +1 -0
- package/dist/esm/queryRegistry.mjs.map +1 -1
- package/dist/esm/queryRegistry.native.js +2 -1
- package/dist/esm/queryRegistry.native.js.map +1 -1
- package/dist/esm/resolveQuery.mjs +10 -8
- package/dist/esm/resolveQuery.mjs.map +1 -1
- package/dist/esm/resolveQuery.native.js +20 -18
- package/dist/esm/resolveQuery.native.js.map +1 -1
- package/dist/esm/run.mjs +21 -16
- package/dist/esm/run.mjs.map +1 -1
- package/dist/esm/run.native.js +20 -16
- package/dist/esm/run.native.js.map +1 -1
- package/dist/esm/serverWhere.mjs +1 -1
- package/dist/esm/serverWhere.mjs.map +1 -1
- package/dist/esm/serverWhere.native.js +1 -1
- package/dist/esm/serverWhere.native.js.map +1 -1
- package/dist/esm/serverWhere.test.mjs +79 -51
- package/dist/esm/serverWhere.test.mjs.map +1 -1
- package/dist/esm/serverWhere.test.native.js +68 -46
- package/dist/esm/serverWhere.test.native.js.map +1 -1
- package/dist/esm/state.mjs +35 -32
- package/dist/esm/state.mjs.map +1 -1
- package/dist/esm/state.native.js +41 -40
- package/dist/esm/state.native.js.map +1 -1
- package/dist/esm/usePermission.test.mjs +53 -40
- package/dist/esm/usePermission.test.mjs.map +1 -1
- package/dist/esm/usePermission.test.native.js +54 -43
- package/dist/esm/usePermission.test.native.js.map +1 -1
- package/dist/esm/vite-plugin.mjs +27 -9
- package/dist/esm/vite-plugin.mjs.map +1 -1
- package/dist/esm/vite-plugin.native.js +47 -35
- package/dist/esm/vite-plugin.native.js.map +1 -1
- package/dist/esm/where.mjs +24 -11
- package/dist/esm/where.mjs.map +1 -1
- package/dist/esm/where.native.js +29 -16
- package/dist/esm/where.native.js.map +1 -1
- package/dist/esm/zeroRunner.mjs +6 -2
- package/dist/esm/zeroRunner.mjs.map +1 -1
- package/dist/esm/zeroRunner.native.js +8 -4
- package/dist/esm/zeroRunner.native.js.map +1 -1
- package/dist/esm/zql.mjs +2 -1
- package/dist/esm/zql.mjs.map +1 -1
- package/dist/esm/zql.native.js.map +1 -1
- package/package.json +3 -3
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["createHash","existsSync","mkdirSync","readFileSync","readdirSync","writeFileSync","basename","dirname","resolve","formatObjectKey","generateGroupedQueriesFile","generateModelsFile","generateReadmeFile","generateSyncedMutationsFile","generateSyncedQueriesFile","generateTablesFile","generateTypesFile","parseColumnType","parseTypeString","shouldSkipObjectKey","hash","s","update","digest","generateCache","generateCachePath","getCacheDir","dir","process","cwd","nm","cacheDir","recursive","loadCache","JSON","parse","saveCache","stringify","writeFileIfChanged","filePath","content","contentHash","cachedHash","createTypeResolver","ts","files","configPath","findConfigFile","sys","fileExists","compilerOptions","target","ScriptTarget","Latest","module","ModuleKind","ESNext","moduleResolution","ModuleResolutionKind","Bundler","strict","skipLibCheck","noEmit","configFile","readConfigFile","readFile","config","parsed","parseJsonConfigFileContent","options","fileMap","Map","_iteratorNormalCompletion","_didIteratorError","_iteratorError","_iterator","Symbol","iterator","_step","next","done","f","value","set","path","err","return","host","createCompilerHost","originalGetSourceFile","getSourceFile","bind","fileName","languageVersion","onError","get","createSourceFile","has","_fileMap_get","program","createProgram","map","f2","checker","getTypeChecker","resolveType","node","getTypeFromTypeNode","typeToValibot","type","tsTypeToValibot","resolveParamType","resolver","sourceFile","exportName","paramIndex","result","forEachChild","_node_modifiers","isVariableStatement","modifiers","some","m","kind","SyntaxKind","ExportKeyword","decl","declarationList","declarations","isVariableDeclaration","name","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","hasCRUD","columns","primaryKeys","custom","call","extractSchemaColumns","_secondParam_type","push","paramType","valibotCode","secondParam","resolvedType","visit","text","expression","endsWith","arg","isStringLiteral","obj","_iteratorNormalCompletion1","_didIteratorError1","_iteratorError1","_iterator1","_step1","colName","initText","colType","seen","Set","flags","getFlags","TypeFlags","Object","Intersection","add","recurse","t","String","Number","Boolean","Void","Undefined","Null","Any","Unknown","Never","StringLiteral","NumberLiteral","BooleanLiteral","intrinsicName","isUnion","members","types","hasNull","hasUndefined","rest","filter","every","inner","inner1","join","resolveSymbolType","prop2","_prop_declarations","valueDeclaration","getTypeOfSymbolAtLocation","getDeclaredTypeOfSymbol","isIntersection","props","getProperties","entries","name1","getName","propType","isOptional","SymbolFlags","Optional","val","startsWith","props1","objectFlags","_type_objectFlags","ObjectFlags","Reference","_typeRef_typeArguments","typeRef","symbol","getSymbol","name2","typeArguments","Tuple","typeRef1","typeArgs","entries1","prop1","name3","propType1","isOptional1","val1","stringIndex","getStringIndexType","numberIndex","getNumberIndexType","serializeColumnBuilder","col","zeroType","expr","serverName","optional","generateDrizzleSchemaFile","schema","lines","tableNames","keys","tables","sort","tableName","colEntries","pkArgs","primaryKey","k","relTableNames","relationships","tableName1","rels","relEntries","relBody","relName","hops","hop","fn","cardinality","sf","sourceField","df","destField","destSchema","hopCode","hop2","fn2","sf2","df2","tableList","n","relList","generate","after","baseDir","mutationsDir","usesMutationsDir","modelsDir","modelsDirName","generatedDir","queriesDir","allModelFiles","filesWithSchema","includes","allModelNames","schemaModelNames","writeResults","filesChanged","queryCount","mutationCount","trim","queryFiles","allQueries","queryResolver","getQueryResolver","allFiles2","_loop"],"sources":["../../src/generate.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"names":["createHash","existsSync","mkdirSync","readFileSync","readdirSync","writeFileSync","basename","dirname","resolve","formatObjectKey","generateGroupedQueriesFile","generateModelsFile","generateReadmeFile","generateSyncedMutationsFile","generateSyncedQueriesFile","generateTablesFile","generateTypesFile","parseColumnType","parseTypeString","shouldSkipObjectKey","hash","s","update","digest","generateCache","generateCachePath","getCacheDir","dir","process","cwd","nm","cacheDir","recursive","loadCache","JSON","parse","e","saveCache","stringify","writeFileIfChanged","filePath","content","contentHash","cachedHash","createTypeResolver","ts","files","configPath","findConfigFile","sys","fileExists","compilerOptions","target","ScriptTarget","Latest","module","ModuleKind","ESNext","moduleResolution","ModuleResolutionKind","Bundler","strict","skipLibCheck","noEmit","configFile","readConfigFile","readFile","config","parsed","parseJsonConfigFileContent","options","fileMap","Map","_iteratorNormalCompletion","_didIteratorError","_iteratorError","_iterator","Symbol","iterator","_step","next","done","f","value","set","path","err","return","host","createCompilerHost","originalGetSourceFile","getSourceFile","bind","fileName","languageVersion","onError","get","createSourceFile","has","_fileMap_get","program","createProgram","map","f2","checker","getTypeChecker","resolveType","node","getTypeFromTypeNode","typeToValibot","type","tsTypeToValibot","resolveParamType","resolver","sourceFile","exportName","paramIndex","result","forEachChild","_node_modifiers","isVariableStatement","modifiers","some","m","kind","SyntaxKind","ExportKeyword","decl","declarationList","declarations","isVariableDeclaration","name","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","hasCRUD","columns","primaryKeys","custom","call","extractSchemaColumns","_secondParam_type","push","paramType","valibotCode","secondParam","resolvedType","visit","text","expression","endsWith","arg","isStringLiteral","obj","_iteratorNormalCompletion1","_didIteratorError1","_iteratorError1","_iterator1","_step1","colName","initText","colType","seen","Set","flags","getFlags","TypeFlags","Object","Intersection","add","recurse","t","String","Number","Boolean","Void","Undefined","Null","Any","Unknown","Never","StringLiteral","NumberLiteral","BooleanLiteral","intrinsicName","isUnion","members","types","hasNull","hasUndefined","rest","filter","every","inner","inner1","join","resolveSymbolType","prop2","_prop_declarations","valueDeclaration","getTypeOfSymbolAtLocation","getDeclaredTypeOfSymbol","isIntersection","props","getProperties","entries","name1","getName","propType","isOptional","SymbolFlags","Optional","val","startsWith","props1","objectFlags","_type_objectFlags","ObjectFlags","Reference","_typeRef_typeArguments","typeRef","symbol","getSymbol","name2","typeArguments","Tuple","typeRef1","typeArgs","entries1","prop1","name3","propType1","isOptional1","val1","stringIndex","getStringIndexType","numberIndex","getNumberIndexType","serializeColumnBuilder","col","zeroType","expr","serverName","optional","generateDrizzleSchemaFile","schema","lines","tableNames","keys","tables","sort","tableName","colEntries","pkArgs","primaryKey","k","relTableNames","relationships","tableName1","rels","relEntries","relBody","relName","hops","hop","fn","cardinality","sf","sourceField","df","destField","destSchema","hopCode","hop2","fn2","sf2","df2","tableList","n","relList","generate","after","baseDir","mutationsDir","usesMutationsDir","modelsDir","modelsDirName","generatedDir","queriesDir","allModelFiles","filesWithSchema","includes","allModelNames","schemaModelNames","writeResults","filesChanged","queryCount","mutationCount","trim","queryFiles","allQueries","queryResolver","getQueryResolver","allFiles2","_loop","file2","filePath2","fileBaseName2","content2","sourceFile2","exportModifier","find","declaration","_param_type"],"sources":["../../src/generate.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
|
|
@@ -6,15 +6,16 @@ import { generate } from "./generate.mjs";
|
|
|
6
6
|
const testDir = join(tmpdir(), "on-zero-test-" + Date.now());
|
|
7
7
|
beforeEach(() => {
|
|
8
8
|
mkdirSync(join(testDir, "models"), {
|
|
9
|
-
recursive:
|
|
10
|
-
})
|
|
11
|
-
|
|
9
|
+
recursive: true
|
|
10
|
+
});
|
|
11
|
+
mkdirSync(join(testDir, "queries"), {
|
|
12
|
+
recursive: true
|
|
12
13
|
});
|
|
13
14
|
});
|
|
14
15
|
afterEach(() => {
|
|
15
16
|
rmSync(testDir, {
|
|
16
|
-
recursive:
|
|
17
|
-
force:
|
|
17
|
+
recursive: true,
|
|
18
|
+
force: true
|
|
18
19
|
});
|
|
19
20
|
});
|
|
20
21
|
describe("generate", () => {
|
|
@@ -27,7 +28,8 @@ export const schema = table('post', {
|
|
|
27
28
|
title: string(),
|
|
28
29
|
published: boolean(),
|
|
29
30
|
})
|
|
30
|
-
`)
|
|
31
|
+
`);
|
|
32
|
+
writeFileSync(join(testDir, "models/comment.ts"), `
|
|
31
33
|
import { table, string } from 'on-zero'
|
|
32
34
|
|
|
33
35
|
export const schema = table('comment', {
|
|
@@ -38,17 +40,28 @@ export const schema = table('comment', {
|
|
|
38
40
|
`);
|
|
39
41
|
const result = await generate({
|
|
40
42
|
dir: testDir,
|
|
41
|
-
silent:
|
|
43
|
+
silent: true
|
|
42
44
|
});
|
|
43
|
-
expect(result.modelCount).toBe(2)
|
|
45
|
+
expect(result.modelCount).toBe(2);
|
|
46
|
+
expect(result.schemaCount).toBe(2);
|
|
47
|
+
expect(result.filesChanged).toBeGreaterThan(0);
|
|
48
|
+
expect(existsSync(join(testDir, "generated/models.ts"))).toBe(true);
|
|
49
|
+
expect(existsSync(join(testDir, "generated/types.ts"))).toBe(true);
|
|
50
|
+
expect(existsSync(join(testDir, "generated/tables.ts"))).toBe(true);
|
|
44
51
|
const modelsContent = readFileSync(join(testDir, "generated/models.ts"), "utf-8");
|
|
45
|
-
expect(modelsContent).toContain("import * as comment from '../models/comment'")
|
|
52
|
+
expect(modelsContent).toContain("import * as comment from '../models/comment'");
|
|
53
|
+
expect(modelsContent).toContain("import * as post from '../models/post'");
|
|
54
|
+
expect(modelsContent).toContain("export const models = {");
|
|
46
55
|
const typesContent = readFileSync(join(testDir, "generated/types.ts"), "utf-8");
|
|
47
|
-
expect(typesContent).toContain("export type Post = TableInsertRow<typeof schema.post>")
|
|
56
|
+
expect(typesContent).toContain("export type Post = TableInsertRow<typeof schema.post>");
|
|
57
|
+
expect(typesContent).toContain("export type Comment = TableInsertRow<typeof schema.comment>");
|
|
48
58
|
const tablesContent = readFileSync(join(testDir, "generated/tables.ts"), "utf-8");
|
|
49
|
-
expect(tablesContent).toContain("export { schema as post } from '../models/post'")
|
|
50
|
-
|
|
51
|
-
|
|
59
|
+
expect(tablesContent).toContain("export { schema as post } from '../models/post'");
|
|
60
|
+
expect(tablesContent).toContain("export { schema as comment } from '../models/comment'");
|
|
61
|
+
});
|
|
62
|
+
test("generates query validators from query files", async () => {
|
|
63
|
+
writeFileSync(join(testDir, "models/post.ts"), `export const schema = table('post', { id: string() })`);
|
|
64
|
+
writeFileSync(join(testDir, "queries/post.ts"), `
|
|
52
65
|
import { zero } from '../zero'
|
|
53
66
|
|
|
54
67
|
export const allPosts = () => zero.query.post
|
|
@@ -60,53 +73,67 @@ export const postsByAuthor = ({ authorId, limit }: { authorId: string; limit?: n
|
|
|
60
73
|
`);
|
|
61
74
|
const result = await generate({
|
|
62
75
|
dir: testDir,
|
|
63
|
-
silent:
|
|
76
|
+
silent: true
|
|
64
77
|
});
|
|
65
|
-
expect(result.queryCount).toBe(3)
|
|
78
|
+
expect(result.queryCount).toBe(3);
|
|
79
|
+
expect(existsSync(join(testDir, "generated/groupedQueries.ts"))).toBe(true);
|
|
80
|
+
expect(existsSync(join(testDir, "generated/syncedQueries.ts"))).toBe(true);
|
|
66
81
|
const groupedContent = readFileSync(join(testDir, "generated/groupedQueries.ts"), "utf-8");
|
|
67
82
|
expect(groupedContent).toContain("export * as post from '../queries/post'");
|
|
68
83
|
const syncedContent = readFileSync(join(testDir, "generated/syncedQueries.ts"), "utf-8");
|
|
69
|
-
expect(syncedContent).toContain("allPosts: defineQuery")
|
|
70
|
-
|
|
71
|
-
|
|
84
|
+
expect(syncedContent).toContain("allPosts: defineQuery");
|
|
85
|
+
expect(syncedContent).toContain("postById: defineQuery");
|
|
86
|
+
expect(syncedContent).toContain("postsByAuthor: defineQuery");
|
|
87
|
+
expect(syncedContent).toContain("v.object");
|
|
88
|
+
});
|
|
89
|
+
test("skips permission exports in queries", async () => {
|
|
90
|
+
writeFileSync(join(testDir, "models/post.ts"), `export const schema = table('post', { id: string() })`);
|
|
91
|
+
writeFileSync(join(testDir, "queries/post.ts"), `
|
|
72
92
|
export const permission = () => ({ canRead: true })
|
|
73
93
|
export const allPosts = () => zero.query.post
|
|
74
94
|
`);
|
|
75
95
|
const result = await generate({
|
|
76
96
|
dir: testDir,
|
|
77
|
-
silent:
|
|
97
|
+
silent: true
|
|
78
98
|
});
|
|
79
99
|
expect(result.queryCount).toBe(1);
|
|
80
100
|
const syncedContent = readFileSync(join(testDir, "generated/syncedQueries.ts"), "utf-8");
|
|
81
|
-
expect(syncedContent).toContain("allPosts")
|
|
82
|
-
|
|
83
|
-
|
|
101
|
+
expect(syncedContent).toContain("allPosts");
|
|
102
|
+
expect(syncedContent).not.toContain("permission:");
|
|
103
|
+
});
|
|
104
|
+
test("handles user model special case (userPublic)", async () => {
|
|
105
|
+
writeFileSync(join(testDir, "models/user.ts"), `export const schema = table('user', { id: string(), name: string() })`);
|
|
106
|
+
await generate({
|
|
84
107
|
dir: testDir,
|
|
85
|
-
silent:
|
|
108
|
+
silent: true
|
|
86
109
|
});
|
|
87
110
|
const modelsContent = readFileSync(join(testDir, "generated/models.ts"), "utf-8");
|
|
88
|
-
expect(modelsContent).toContain("import * as userPublic from '../models/user'")
|
|
111
|
+
expect(modelsContent).toContain("import * as userPublic from '../models/user'");
|
|
112
|
+
expect(modelsContent).toContain("userPublic,");
|
|
89
113
|
const typesContent = readFileSync(join(testDir, "generated/types.ts"), "utf-8");
|
|
90
114
|
expect(typesContent).toContain("typeof schema.userPublic");
|
|
91
|
-
})
|
|
92
|
-
|
|
93
|
-
const
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
}
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
115
|
+
});
|
|
116
|
+
test("runs after command when files change", async () => {
|
|
117
|
+
writeFileSync(join(testDir, "models/post.ts"), `export const schema = table('post', { id: string() })`);
|
|
118
|
+
const markerFile = join(testDir, "after-ran");
|
|
119
|
+
const result = await generate({
|
|
120
|
+
dir: testDir,
|
|
121
|
+
silent: true,
|
|
122
|
+
after: `touch ${markerFile}`
|
|
123
|
+
});
|
|
124
|
+
expect(result.filesChanged).toBeGreaterThan(0);
|
|
125
|
+
expect(existsSync(markerFile)).toBe(true);
|
|
126
|
+
});
|
|
127
|
+
test("does not regenerate when nothing changed", async () => {
|
|
128
|
+
writeFileSync(join(testDir, "models/post.ts"), `export const schema = table('post', { id: string() })`);
|
|
102
129
|
const first = await generate({
|
|
103
130
|
dir: testDir,
|
|
104
|
-
silent:
|
|
131
|
+
silent: true
|
|
105
132
|
});
|
|
106
133
|
expect(first.filesChanged).toBeGreaterThan(0);
|
|
107
134
|
const second = await generate({
|
|
108
135
|
dir: testDir,
|
|
109
|
-
silent:
|
|
136
|
+
silent: true
|
|
110
137
|
});
|
|
111
138
|
expect(second.filesChanged).toBe(0);
|
|
112
139
|
});
|
|
@@ -132,12 +159,16 @@ export const mutate = mutations(schema, perm, {
|
|
|
132
159
|
`);
|
|
133
160
|
const result = await generate({
|
|
134
161
|
dir: testDir,
|
|
135
|
-
silent:
|
|
162
|
+
silent: true
|
|
136
163
|
});
|
|
137
|
-
expect(result.mutationCount).toBeGreaterThan(0)
|
|
164
|
+
expect(result.mutationCount).toBeGreaterThan(0);
|
|
165
|
+
expect(existsSync(join(testDir, "generated/syncedMutations.ts"))).toBe(true);
|
|
138
166
|
const content = readFileSync(join(testDir, "generated/syncedMutations.ts"), "utf-8");
|
|
139
|
-
expect(content).toContain("archive")
|
|
140
|
-
|
|
167
|
+
expect(content).toContain("archive");
|
|
168
|
+
expect(content).toContain("v.object");
|
|
169
|
+
expect(content).toContain("v.string()");
|
|
170
|
+
});
|
|
171
|
+
test("generates CRUD validators from schema columns", async () => {
|
|
141
172
|
writeFileSync(join(testDir, "models/task.ts"), `
|
|
142
173
|
import { table, string, number, boolean } from 'on-zero'
|
|
143
174
|
import { mutations, serverWhere } from 'on-zero'
|
|
@@ -155,12 +186,16 @@ const perm = serverWhere('task', () => true)
|
|
|
155
186
|
export const mutate = mutations(schema, perm)
|
|
156
187
|
`);
|
|
157
188
|
const result = await generate({
|
|
158
|
-
|
|
159
|
-
|
|
160
|
-
|
|
161
|
-
|
|
162
|
-
expect(content).toContain("insert:")
|
|
163
|
-
|
|
189
|
+
dir: testDir,
|
|
190
|
+
silent: true
|
|
191
|
+
});
|
|
192
|
+
const content = readFileSync(join(testDir, "generated/syncedMutations.ts"), "utf-8");
|
|
193
|
+
expect(content).toContain("insert:");
|
|
194
|
+
expect(content).toMatch(/insert:.*v\.object/);
|
|
195
|
+
expect(content).toContain("update:");
|
|
196
|
+
expect(content).toContain("delete:");
|
|
197
|
+
});
|
|
198
|
+
test("treats models without export const mutate as empty mutations", async () => {
|
|
164
199
|
writeFileSync(join(testDir, "models/readonly.ts"), `
|
|
165
200
|
import { table, string } from 'on-zero'
|
|
166
201
|
|
|
@@ -171,12 +206,13 @@ export const schema = table('readonly').columns({
|
|
|
171
206
|
`);
|
|
172
207
|
const result = await generate({
|
|
173
208
|
dir: testDir,
|
|
174
|
-
silent:
|
|
209
|
+
silent: true
|
|
175
210
|
});
|
|
176
211
|
expect(result.mutationCount).toBe(0);
|
|
177
212
|
const content = readFileSync(join(testDir, "generated/syncedMutations.ts"), "utf-8");
|
|
178
213
|
expect(content).toContain("readonly: {");
|
|
179
|
-
})
|
|
214
|
+
});
|
|
215
|
+
test("extracts custom mutations from bare mutations({})", async () => {
|
|
180
216
|
writeFileSync(join(testDir, "models/admin.ts"), `
|
|
181
217
|
import { mutations } from 'on-zero'
|
|
182
218
|
|
|
@@ -187,12 +223,14 @@ export const mutate = mutations({
|
|
|
187
223
|
})
|
|
188
224
|
`);
|
|
189
225
|
const result = await generate({
|
|
190
|
-
|
|
191
|
-
|
|
192
|
-
|
|
193
|
-
|
|
194
|
-
expect(content).toContain("reset")
|
|
195
|
-
|
|
226
|
+
dir: testDir,
|
|
227
|
+
silent: true
|
|
228
|
+
});
|
|
229
|
+
const content = readFileSync(join(testDir, "generated/syncedMutations.ts"), "utf-8");
|
|
230
|
+
expect(content).toContain("reset");
|
|
231
|
+
expect(content).toContain("v.string()");
|
|
232
|
+
});
|
|
233
|
+
test("handles mutations with only context param (void)", async () => {
|
|
196
234
|
writeFileSync(join(testDir, "models/user.ts"), `
|
|
197
235
|
import { table, string } from 'on-zero'
|
|
198
236
|
import { mutations, serverWhere } from 'on-zero'
|
|
@@ -211,12 +249,13 @@ export const mutate = mutations(schema, perm, {
|
|
|
211
249
|
})
|
|
212
250
|
`);
|
|
213
251
|
const result = await generate({
|
|
214
|
-
|
|
215
|
-
|
|
216
|
-
|
|
217
|
-
|
|
252
|
+
dir: testDir,
|
|
253
|
+
silent: true
|
|
254
|
+
});
|
|
255
|
+
const content = readFileSync(join(testDir, "generated/syncedMutations.ts"), "utf-8");
|
|
218
256
|
expect(content).toContain("finishOnboarding");
|
|
219
|
-
})
|
|
257
|
+
});
|
|
258
|
+
test("handles primitive param type", async () => {
|
|
220
259
|
writeFileSync(join(testDir, "models/user.ts"), `
|
|
221
260
|
import { table, string } from 'on-zero'
|
|
222
261
|
import { mutations, serverWhere } from 'on-zero'
|
|
@@ -235,12 +274,14 @@ export const mutate = mutations(schema, perm, {
|
|
|
235
274
|
})
|
|
236
275
|
`);
|
|
237
276
|
const result = await generate({
|
|
238
|
-
|
|
239
|
-
|
|
240
|
-
|
|
241
|
-
|
|
242
|
-
expect(content).toContain("completeSignup")
|
|
243
|
-
|
|
277
|
+
dir: testDir,
|
|
278
|
+
silent: true
|
|
279
|
+
});
|
|
280
|
+
const content = readFileSync(join(testDir, "generated/syncedMutations.ts"), "utf-8");
|
|
281
|
+
expect(content).toContain("completeSignup");
|
|
282
|
+
expect(content).toContain("v.string()");
|
|
283
|
+
});
|
|
284
|
+
test("handles array param type", async () => {
|
|
244
285
|
writeFileSync(join(testDir, "models/batch.ts"), `
|
|
245
286
|
import { mutations } from 'on-zero'
|
|
246
287
|
|
|
@@ -251,12 +292,14 @@ export const mutate = mutations({
|
|
|
251
292
|
})
|
|
252
293
|
`);
|
|
253
294
|
const result = await generate({
|
|
254
|
-
|
|
255
|
-
|
|
256
|
-
|
|
257
|
-
|
|
258
|
-
expect(content).toContain("bulkDelete")
|
|
259
|
-
|
|
295
|
+
dir: testDir,
|
|
296
|
+
silent: true
|
|
297
|
+
});
|
|
298
|
+
const content = readFileSync(join(testDir, "generated/syncedMutations.ts"), "utf-8");
|
|
299
|
+
expect(content).toContain("bulkDelete");
|
|
300
|
+
expect(content).toContain("v.array");
|
|
301
|
+
});
|
|
302
|
+
test("populates mutationCount and caching works", async () => {
|
|
260
303
|
writeFileSync(join(testDir, "models/item.ts"), `
|
|
261
304
|
import { table, string } from 'on-zero'
|
|
262
305
|
import { mutations, serverWhere } from 'on-zero'
|
|
@@ -276,14 +319,15 @@ export const mutate = mutations(schema, perm, {
|
|
|
276
319
|
`);
|
|
277
320
|
const first = await generate({
|
|
278
321
|
dir: testDir,
|
|
279
|
-
silent:
|
|
322
|
+
silent: true
|
|
280
323
|
});
|
|
281
324
|
expect(first.mutationCount).toBeGreaterThan(0);
|
|
282
325
|
const second = await generate({
|
|
283
326
|
dir: testDir,
|
|
284
|
-
silent:
|
|
327
|
+
silent: true
|
|
285
328
|
});
|
|
286
|
-
expect(second.filesChanged).toBe(0)
|
|
329
|
+
expect(second.filesChanged).toBe(0);
|
|
330
|
+
expect(second.mutationCount).toBe(first.mutationCount);
|
|
287
331
|
});
|
|
288
332
|
});
|
|
289
333
|
describe("type resolution", () => {
|
|
@@ -294,7 +338,8 @@ export type ArchiveParams = {
|
|
|
294
338
|
reason: string
|
|
295
339
|
archived: boolean
|
|
296
340
|
}
|
|
297
|
-
`)
|
|
341
|
+
`);
|
|
342
|
+
writeFileSync(join(testDir, "models/post.ts"), `
|
|
298
343
|
import { table, string, boolean } from 'on-zero'
|
|
299
344
|
import { mutations } from 'on-zero'
|
|
300
345
|
import type { ArchiveParams } from './types'
|
|
@@ -306,12 +351,16 @@ export const mutate = mutations({
|
|
|
306
351
|
})
|
|
307
352
|
`);
|
|
308
353
|
const result = await generate({
|
|
309
|
-
|
|
310
|
-
|
|
311
|
-
|
|
312
|
-
|
|
313
|
-
expect(content).toContain("v.string()")
|
|
314
|
-
|
|
354
|
+
dir: testDir,
|
|
355
|
+
silent: true
|
|
356
|
+
});
|
|
357
|
+
const content = readFileSync(join(testDir, "generated/syncedMutations.ts"), "utf-8");
|
|
358
|
+
expect(content).toContain("v.string()");
|
|
359
|
+
expect(content).toContain("v.boolean()");
|
|
360
|
+
expect(content).toContain("reason");
|
|
361
|
+
expect(content).toContain("archived");
|
|
362
|
+
});
|
|
363
|
+
test("resolves utility types like Pick", async () => {
|
|
315
364
|
writeFileSync(join(testDir, "models/types.ts"), `
|
|
316
365
|
export type Item = {
|
|
317
366
|
id: string
|
|
@@ -319,7 +368,8 @@ export type Item = {
|
|
|
319
368
|
description: string
|
|
320
369
|
count: number
|
|
321
370
|
}
|
|
322
|
-
`)
|
|
371
|
+
`);
|
|
372
|
+
writeFileSync(join(testDir, "models/item.ts"), `
|
|
323
373
|
import { table, string, number } from 'on-zero'
|
|
324
374
|
import { mutations, serverWhere } from 'on-zero'
|
|
325
375
|
import type { Item } from './types'
|
|
@@ -340,18 +390,23 @@ export const mutate = mutations(schema, perm, {
|
|
|
340
390
|
})
|
|
341
391
|
`);
|
|
342
392
|
const result = await generate({
|
|
343
|
-
|
|
344
|
-
|
|
345
|
-
|
|
346
|
-
|
|
347
|
-
expect(content).toContain("id")
|
|
348
|
-
|
|
393
|
+
dir: testDir,
|
|
394
|
+
silent: true
|
|
395
|
+
});
|
|
396
|
+
const content = readFileSync(join(testDir, "generated/syncedMutations.ts"), "utf-8");
|
|
397
|
+
expect(content).toContain("id");
|
|
398
|
+
expect(content).toContain("name");
|
|
399
|
+
expect(content).not.toMatch(/rename:[\s\S]*description/);
|
|
400
|
+
expect(content).not.toMatch(/rename:[\s\S]*count/);
|
|
401
|
+
});
|
|
402
|
+
test("skips symbol-keyed properties when resolving imported mutation param types", async () => {
|
|
349
403
|
writeFileSync(join(testDir, "models/types.ts"), `
|
|
350
404
|
export type WeirdParams = {
|
|
351
405
|
id: string
|
|
352
406
|
[Symbol.iterator]?: () => Iterator<string>
|
|
353
407
|
}
|
|
354
|
-
`)
|
|
408
|
+
`);
|
|
409
|
+
writeFileSync(join(testDir, "models/item.ts"), `
|
|
355
410
|
import { mutations } from 'on-zero'
|
|
356
411
|
import type { WeirdParams } from './types'
|
|
357
412
|
|
|
@@ -360,29 +415,38 @@ export const mutate = mutations({
|
|
|
360
415
|
await tx.mutate.item.delete({ id: params.id })
|
|
361
416
|
},
|
|
362
417
|
})
|
|
363
|
-
`)
|
|
418
|
+
`);
|
|
419
|
+
await generate({
|
|
364
420
|
dir: testDir,
|
|
365
|
-
silent:
|
|
421
|
+
silent: true
|
|
366
422
|
});
|
|
367
423
|
const content = readFileSync(join(testDir, "generated/syncedMutations.ts"), "utf-8");
|
|
368
|
-
expect(content).toContain("run")
|
|
369
|
-
|
|
370
|
-
|
|
424
|
+
expect(content).toContain("run");
|
|
425
|
+
expect(content).toContain("id: v.string()");
|
|
426
|
+
expect(content).not.toContain("__@iterator");
|
|
427
|
+
});
|
|
428
|
+
test("resolves imported types in query params", async () => {
|
|
429
|
+
writeFileSync(join(testDir, "models/post.ts"), `export const schema = table('post', { id: string() })`);
|
|
430
|
+
writeFileSync(join(testDir, "queries/types.ts"), `
|
|
371
431
|
export type PostFilter = {
|
|
372
432
|
authorId: string
|
|
373
433
|
published: boolean
|
|
374
434
|
}
|
|
375
|
-
`)
|
|
435
|
+
`);
|
|
436
|
+
writeFileSync(join(testDir, "queries/post.ts"), `
|
|
376
437
|
import type { PostFilter } from './types'
|
|
377
438
|
|
|
378
439
|
export const filteredPosts = (filter: PostFilter) => zero.query.post
|
|
379
440
|
`);
|
|
380
441
|
const result = await generate({
|
|
381
|
-
|
|
382
|
-
|
|
383
|
-
|
|
384
|
-
|
|
385
|
-
expect(content).toContain("filteredPosts")
|
|
442
|
+
dir: testDir,
|
|
443
|
+
silent: true
|
|
444
|
+
});
|
|
445
|
+
const content = readFileSync(join(testDir, "generated/syncedQueries.ts"), "utf-8");
|
|
446
|
+
expect(content).toContain("filteredPosts");
|
|
447
|
+
expect(content).toContain("v.object");
|
|
448
|
+
expect(content).toContain("authorId");
|
|
449
|
+
expect(content).toContain("v.boolean()");
|
|
386
450
|
});
|
|
387
451
|
});
|
|
388
452
|
//# sourceMappingURL=generate.test.mjs.map
|