on-zero 0.16.20 → 0.16.21
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 +6 -0
- package/dist/cjs/cli.native.js +6 -0
- 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.cjs +14 -4
- package/dist/cjs/createUseQuery.native.js +18 -5
- package/dist/cjs/createUseQuery.native.js.map +1 -1
- package/dist/cjs/createUseQueryDirect.cjs +13 -2
- package/dist/cjs/createUseQueryDirect.native.js +14 -2
- 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 +21 -3
- 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.native.js.map +1 -1
- package/dist/cjs/createZeroClient.native.js +28 -3
- package/dist/cjs/createZeroClient.native.js.map +1 -1
- 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.cjs +57 -30
- package/dist/cjs/generate.native.js +92 -31
- package/dist/cjs/generate.native.js.map +1 -1
- package/dist/cjs/generate.test.cjs +147 -0
- package/dist/cjs/generate.test.native.js +147 -0
- 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.cjs +10 -5
- package/dist/cjs/multi.native.js +10 -5
- 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.cjs +46 -2
- package/dist/cjs/multiPartition.test.native.js +50 -2
- 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/native-typescript.cjs +50 -11
- package/dist/cjs/native-typescript.native.js +158 -30
- package/dist/cjs/native-typescript.native.js.map +1 -1
- package/dist/cjs/provideZero.eagerInstance.test.cjs +22 -0
- package/dist/cjs/provideZero.eagerInstance.test.native.js +30 -0
- 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/queryErrorRecovery.cjs +93 -0
- package/dist/cjs/queryErrorRecovery.native.js +205 -0
- package/dist/cjs/queryErrorRecovery.native.js.map +1 -0
- package/dist/cjs/queryJson.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.aggregate.zero.test.cjs +199 -4
- package/dist/cjs/useQuery.aggregate.zero.test.native.js +212 -4
- package/dist/cjs/useQuery.aggregate.zero.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.cjs +10 -0
- package/dist/cjs/vite-plugin.native.js +10 -0
- 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/cli.mjs +6 -0
- package/dist/esm/cli.mjs.map +1 -1
- package/dist/esm/cli.native.js +7 -1
- package/dist/esm/cli.native.js.map +1 -1
- package/dist/esm/combineZeroClients.native.js +4 -4
- package/dist/esm/combineZeroClients.native.js.map +1 -1
- package/dist/esm/config.native.js.map +1 -1
- package/dist/esm/createPermissions.native.js +4 -4
- package/dist/esm/createPermissions.native.js.map +1 -1
- package/dist/esm/createSchemaFromDrizzle.native.js +1 -1
- package/dist/esm/createSchemaFromDrizzle.native.js.map +1 -1
- package/dist/esm/createUseQuery.mjs +16 -6
- package/dist/esm/createUseQuery.mjs.map +1 -1
- package/dist/esm/createUseQuery.native.js +24 -11
- package/dist/esm/createUseQuery.native.js.map +1 -1
- package/dist/esm/createUseQueryDirect.mjs +13 -2
- package/dist/esm/createUseQueryDirect.mjs.map +1 -1
- package/dist/esm/createUseQueryDirect.native.js +19 -7
- package/dist/esm/createUseQueryDirect.native.js.map +1 -1
- package/dist/esm/createZeroClient.authData.test.native.js +2 -2
- package/dist/esm/createZeroClient.authData.test.native.js.map +1 -1
- package/dist/esm/createZeroClient.connection.test.native.js +1 -1
- package/dist/esm/createZeroClient.connection.test.native.js.map +1 -1
- package/dist/esm/createZeroClient.exportProbe.test.native.js +1 -1
- package/dist/esm/createZeroClient.exportProbe.test.native.js.map +1 -1
- package/dist/esm/createZeroClient.headless.test.native.js +2 -2
- package/dist/esm/createZeroClient.headless.test.native.js.map +1 -1
- package/dist/esm/createZeroClient.httpAuth.test.native.js +1 -1
- package/dist/esm/createZeroClient.httpAuth.test.native.js.map +1 -1
- package/dist/esm/createZeroClient.mjs +21 -3
- package/dist/esm/createZeroClient.mjs.map +1 -1
- package/dist/esm/createZeroClient.native.js +49 -24
- package/dist/esm/createZeroClient.native.js.map +1 -1
- package/dist/esm/createZeroClient.recovery.test.native.js +2 -2
- package/dist/esm/createZeroClient.recovery.test.native.js.map +1 -1
- package/dist/esm/generate-helpers.native.js.map +1 -1
- package/dist/esm/generate-helpers.test.native.js +1 -1
- package/dist/esm/generate-helpers.test.native.js.map +1 -1
- package/dist/esm/generate-layout.native.js.map +1 -1
- package/dist/esm/generate-lite.native.js +1 -1
- package/dist/esm/generate-lite.native.js.map +1 -1
- package/dist/esm/generate-lite.test.native.js +1 -1
- package/dist/esm/generate-lite.test.native.js.map +1 -1
- package/dist/esm/generate.mjs +57 -30
- package/dist/esm/generate.mjs.map +1 -1
- package/dist/esm/generate.native.js +95 -34
- package/dist/esm/generate.native.js.map +1 -1
- package/dist/esm/generate.test.mjs +147 -0
- package/dist/esm/generate.test.mjs.map +1 -1
- package/dist/esm/generate.test.native.js +148 -1
- package/dist/esm/generate.test.native.js.map +1 -1
- package/dist/esm/helpers/NullToOptional.native.js.map +1 -1
- package/dist/esm/helpers/asyncContext.hostStorage.test.native.js +7 -7
- package/dist/esm/helpers/asyncContext.hostStorage.test.native.js.map +1 -1
- package/dist/esm/helpers/batchQuery.native.js +1 -1
- package/dist/esm/helpers/batchQuery.native.js.map +1 -1
- package/dist/esm/helpers/clearZeroClientData.native.js.map +1 -1
- package/dist/esm/helpers/createMutators.native.js +4 -4
- package/dist/esm/helpers/createMutators.native.js.map +1 -1
- package/dist/esm/helpers/createMutators.test.native.js +2 -2
- package/dist/esm/helpers/createMutators.test.native.js.map +1 -1
- package/dist/esm/helpers/ellipsis.native.js.map +1 -1
- package/dist/esm/helpers/emitter.native.js.map +1 -1
- package/dist/esm/helpers/ensure.native.js +1 -1
- package/dist/esm/helpers/ensure.native.js.map +1 -1
- package/dist/esm/helpers/ensureLoggedIn.native.js +2 -2
- package/dist/esm/helpers/ensureLoggedIn.native.js.map +1 -1
- package/dist/esm/helpers/errors.native.js.map +1 -1
- package/dist/esm/helpers/getAuth.native.js +3 -3
- package/dist/esm/helpers/getAuth.native.js.map +1 -1
- package/dist/esm/helpers/getCurrentComponentStack.native.js.map +1 -1
- package/dist/esm/helpers/globalValue.native.js.map +1 -1
- package/dist/esm/helpers/hostStorageScope.native.js.map +1 -1
- package/dist/esm/helpers/mapObject.native.js.map +1 -1
- package/dist/esm/helpers/mutationLifecycle.native.js +1 -1
- package/dist/esm/helpers/mutationLifecycle.native.js.map +1 -1
- package/dist/esm/helpers/mutationLifecycle.test.native.js +1 -1
- package/dist/esm/helpers/mutationLifecycle.test.native.js.map +1 -1
- package/dist/esm/helpers/mutatorContext.native.js +1 -1
- package/dist/esm/helpers/mutatorContext.native.js.map +1 -1
- package/dist/esm/helpers/mutatorContext.test.native.js +6 -6
- package/dist/esm/helpers/mutatorContext.test.native.js.map +1 -1
- package/dist/esm/helpers/prettyFormatZeroQuery.native.js +1 -1
- package/dist/esm/helpers/prettyFormatZeroQuery.native.js.map +1 -1
- package/dist/esm/helpers/queryContext.native.js +1 -1
- package/dist/esm/helpers/queryContext.native.js.map +1 -1
- package/dist/esm/helpers/recoverZeroClient.native.js +1 -1
- package/dist/esm/helpers/recoverZeroClient.native.js.map +1 -1
- package/dist/esm/helpers/recoverZeroClient.test.native.js +2 -2
- package/dist/esm/helpers/recoverZeroClient.test.native.js.map +1 -1
- package/dist/esm/helpers/showZeroClientError.native.js +1 -1
- package/dist/esm/helpers/showZeroClientError.native.js.map +1 -1
- package/dist/esm/helpers/sleep.native.js +1 -1
- package/dist/esm/helpers/sleep.native.js.map +1 -1
- package/dist/esm/helpers/time.native.js.map +1 -1
- package/dist/esm/helpers/tuple.native.js.map +1 -1
- package/dist/esm/helpers/useMutation.native.js.map +1 -1
- package/dist/esm/helpers/useMutation.test.native.js +1 -1
- package/dist/esm/helpers/useMutation.test.native.js.map +1 -1
- package/dist/esm/helpers/useZeroDebug.native.js +2 -2
- package/dist/esm/helpers/useZeroDebug.native.js.map +1 -1
- package/dist/esm/index.native.js +23 -23
- package/dist/esm/index.native.js.map +1 -1
- package/dist/esm/instanceRegistry.native.js +2 -2
- package/dist/esm/instanceRegistry.native.js.map +1 -1
- package/dist/esm/modelRegistry.native.js.map +1 -1
- package/dist/esm/multi.mjs +10 -5
- package/dist/esm/multi.mjs.map +1 -1
- package/dist/esm/multi.native.js +15 -10
- package/dist/esm/multi.native.js.map +1 -1
- package/dist/esm/multiInstance.test.native.js +10 -10
- package/dist/esm/multiInstance.test.native.js.map +1 -1
- package/dist/esm/multiInstanceMutations.test.native.js +4 -4
- package/dist/esm/multiInstanceMutations.test.native.js.map +1 -1
- package/dist/esm/multiInstanceNested.test.native.js +3 -3
- package/dist/esm/multiInstanceNested.test.native.js.map +1 -1
- package/dist/esm/multiPartition.test.mjs +47 -3
- package/dist/esm/multiPartition.test.mjs.map +1 -1
- package/dist/esm/multiPartition.test.native.js +52 -4
- package/dist/esm/multiPartition.test.native.js.map +1 -1
- package/dist/esm/mutations.native.js +2 -2
- package/dist/esm/mutations.native.js.map +1 -1
- package/dist/esm/mutations.test.native.js +4 -4
- package/dist/esm/mutations.test.native.js.map +1 -1
- package/dist/esm/native-typescript.mjs +50 -11
- package/dist/esm/native-typescript.mjs.map +1 -1
- package/dist/esm/native-typescript.native.js +158 -30
- package/dist/esm/native-typescript.native.js.map +1 -1
- package/dist/esm/provideZero.eagerInstance.test.mjs +22 -0
- package/dist/esm/provideZero.eagerInstance.test.mjs.map +1 -1
- package/dist/esm/provideZero.eagerInstance.test.native.js +31 -1
- package/dist/esm/provideZero.eagerInstance.test.native.js.map +1 -1
- package/dist/esm/provideZero.hydration.test.native.js +2 -2
- package/dist/esm/provideZero.hydration.test.native.js.map +1 -1
- package/dist/esm/provideZero.ssr.test.native.js +2 -2
- package/dist/esm/provideZero.ssr.test.native.js.map +1 -1
- package/dist/esm/queryErrorRecovery.mjs +66 -0
- package/dist/esm/queryErrorRecovery.mjs.map +1 -0
- package/dist/esm/queryErrorRecovery.native.js +175 -0
- package/dist/esm/queryErrorRecovery.native.js.map +1 -0
- package/dist/esm/queryJson.native.js +1 -1
- package/dist/esm/queryJson.native.js.map +1 -1
- package/dist/esm/queryRegistry.native.js.map +1 -1
- package/dist/esm/resolveQuery.native.js +2 -2
- package/dist/esm/resolveQuery.native.js.map +1 -1
- package/dist/esm/run.native.js +4 -4
- package/dist/esm/run.native.js.map +1 -1
- package/dist/esm/server.native.js +10 -10
- package/dist/esm/server.native.js.map +1 -1
- package/dist/esm/server.test.native.js +2 -2
- package/dist/esm/server.test.native.js.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.native.js +3 -3
- package/dist/esm/serverWhere.test.native.js.map +1 -1
- package/dist/esm/state.native.js +1 -1
- package/dist/esm/state.native.js.map +1 -1
- package/dist/esm/streaming.native.js +1 -1
- package/dist/esm/streaming.native.js.map +1 -1
- package/dist/esm/testSetup.native.js.map +1 -1
- package/dist/esm/types.native.js.map +1 -1
- package/dist/esm/usePermission.test.native.js +3 -3
- package/dist/esm/usePermission.test.native.js.map +1 -1
- package/dist/esm/useQuery.aggregate.zero.test.mjs +197 -2
- package/dist/esm/useQuery.aggregate.zero.test.mjs.map +1 -1
- package/dist/esm/useQuery.aggregate.zero.test.native.js +212 -4
- package/dist/esm/useQuery.aggregate.zero.test.native.js.map +1 -1
- package/dist/esm/useQuery.empty.test.native.js +3 -3
- package/dist/esm/useQuery.empty.test.native.js.map +1 -1
- package/dist/esm/useQuery.ssr.test.native.js +2 -2
- package/dist/esm/useQuery.ssr.test.native.js.map +1 -1
- package/dist/esm/useStreamingField.loop.test.native.js +1 -1
- package/dist/esm/useStreamingField.loop.test.native.js.map +1 -1
- package/dist/esm/useStreamingField.native.js.map +1 -1
- package/dist/esm/vite-plugin.mjs +10 -0
- package/dist/esm/vite-plugin.mjs.map +1 -1
- package/dist/esm/vite-plugin.native.js +11 -1
- package/dist/esm/vite-plugin.native.js.map +1 -1
- package/dist/esm/where.native.js +3 -3
- package/dist/esm/where.native.js.map +1 -1
- package/dist/esm/zeroRunner.native.js +1 -1
- package/dist/esm/zeroRunner.native.js.map +1 -1
- package/dist/esm/zql.native.js +1 -1
- package/dist/esm/zql.native.js.map +1 -1
- package/package.json +4 -4
- package/src/cli.ts +6 -0
- package/src/createUseQuery.tsx +20 -5
- package/src/createUseQueryDirect.tsx +17 -1
- package/src/createZeroClient.tsx +37 -4
- package/src/generate.test.ts +116 -0
- package/src/generate.ts +109 -52
- package/src/multi.ts +11 -3
- package/src/multiPartition.test.ts +55 -11
- package/src/native-typescript.ts +64 -11
- package/src/provideZero.eagerInstance.test.tsx +27 -0
- package/src/queryErrorRecovery.ts +95 -0
- package/src/useQuery.aggregate.zero.test.tsx +187 -2
- package/src/vite-plugin.ts +10 -0
- package/types/createUseQuery.d.ts +3 -1
- package/types/createUseQuery.d.ts.map +1 -1
- package/types/createUseQueryDirect.d.ts +3 -1
- package/types/createUseQueryDirect.d.ts.map +1 -1
- package/types/createZeroClient.d.ts +3 -1
- package/types/createZeroClient.d.ts.map +1 -1
- package/types/generate.d.ts +4 -0
- package/types/generate.d.ts.map +1 -1
- package/types/multi.d.ts +3 -1
- package/types/multi.d.ts.map +1 -1
- package/types/native-typescript.d.ts +7 -1
- package/types/native-typescript.d.ts.map +1 -1
- package/types/queryErrorRecovery.d.ts +33 -0
- package/types/queryErrorRecovery.d.ts.map +1 -0
- package/types/useQuery.aggregate.zero.test.d.ts.map +1 -1
- package/types/vite-plugin.d.ts.map +1 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["shouldSkipObjectKey","name","startsWith","formatObjectKey","test","JSON","stringify","getModelImportName","uniqueModuleAliases","names","alias","taken","Set","aliases","Map","_iteratorNormalCompletion","_didIteratorError","_iteratorError","_iterator","Symbol","iterator","_step","next","done","value","candidate","has","add","set","err","return","splitTopLevelTypeUnion","type","parts","depth","start","quote","i","length","char","Math","max","push","slice","trim","filter","Boolean","splitTopLevelTypeIntersection","stripTypeComments","out","nextNonWhitespace","splitTopLevelObjectEntries","_nextNonWhitespace","includes","parseInlineObjectEntries","endsWith","inner","entries","part","trimmed","replace","match","RegExp","opt","typeStr","parsed","parseTypeString","val","objectEntries","unionParts","hasNull","hasUndefined","valueParts","part2","parsedParts","map","some","join","intersectionParts","objectEntries1","entries1","generateModelsFile","modules","sorted","sort","a","b","localeCompare","param","imports","importPath","get","sortedByImportName","modelsObj","importName","generateTypesFile","modelNames","typeExports","pascalName","charAt","toUpperCase","schemaName","generateTablesFile","exports","generateReadmeFile","generateGroupedQueriesFile","queries","queryByFile","query","sourceFile","sortedFiles","keys","file","query2","generateInstancesFile","instances","instance","queryNames","modelEntries","scope","visibility","tables","syncTables","supportTables","generateAggregatesFile","namespaces","namespace","merged","generateSyncedQueriesFile","q","Array","from","namespaceDefs","fileQueries","queryDefs","q2","validatorDef","valibotCode","params","indentedValidator","indentContinuationLines","queriesObject","columnTypeToValibot","col","base","optional","CRUD_MUTATION_NAMES","schemaColumnsToValibot","columns","primaryKeys","mode","pk"],"sources":["../../src/generate-helpers.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"names":["shouldSkipObjectKey","name","startsWith","formatObjectKey","test","JSON","stringify","getModelImportName","uniqueModuleAliases","names","alias","taken","Set","aliases","Map","_iteratorNormalCompletion","_didIteratorError","_iteratorError","_iterator","Symbol","iterator","_step","next","done","value","candidate","has","add","set","err","return","splitTopLevelTypeUnion","type","parts","depth","start","quote","i","length","char","Math","max","push","slice","trim","filter","Boolean","splitTopLevelTypeIntersection","stripTypeComments","out","nextNonWhitespace","splitTopLevelObjectEntries","_nextNonWhitespace","includes","parseInlineObjectEntries","endsWith","inner","entries","part","trimmed","replace","match","RegExp","opt","typeStr","parsed","parseTypeString","val","unionParts","hasNull","hasUndefined","valueParts","part2","parsedParts","map","some","join","intersectionParts","objectEntries","objectEntries1","entries1","generateModelsFile","modules","sorted","sort","a","b","localeCompare","param","imports","importPath","get","sortedByImportName","modelsObj","importName","generateTypesFile","modelNames","typeExports","pascalName","charAt","toUpperCase","schemaName","generateTablesFile","exports","generateReadmeFile","generateGroupedQueriesFile","queries","queryByFile","query","sourceFile","sortedFiles","keys","file","query2","generateInstancesFile","instances","instance","queryNames","modelEntries","scope","visibility","tables","syncTables","supportTables","generateAggregatesFile","namespaces","namespace","merged","generateSyncedQueriesFile","q","Array","from","namespaceDefs","fileQueries","queryDefs","q2","validatorDef","valibotCode","params","indentedValidator","indentContinuationLines","queriesObject","columnTypeToValibot","col","base","optional","CRUD_MUTATION_NAMES","schemaColumnsToValibot","columns","primaryKeys","mode","pk","_iteratorNormalCompletion1","_didIteratorError1","_iteratorError1","_iterator1","Object","_step1","col1","isPK","_iteratorNormalCompletion2","_didIteratorError2","_iteratorError2","_iterator2","_step2","name1","col2","extractValibotExpression","spaces","indentation","repeat","split","line","index","parseColumnType","initText","customType","generateSyncedMutationsFile","modelMutations","modelName","modelDefs","model","emitted","canDeriveCRUD","hasCRUD","_loop","customMut","custom","find","m","paramType","mut","renderDrizzleSchemaInputModule","options","tableNames","relationEntries","relationTables","table","properties","body","property","key","schemaImportPath","renderDrizzleZeroSqliteSchemaModule","typeNames","rowAliases","tableName","typeName","_","character","TypeError"],"sources":["generate-helpers.native.js"],"sourcesContent":["function shouldSkipObjectKey(name) {\n return name.startsWith(\"__@\");\n}\nfunction formatObjectKey(name) {\n return /^[$A-Z_a-z][$\\w]*$/.test(name) ? name : JSON.stringify(name);\n}\nfunction getModelImportName(name) {\n return name === \"user\" ? \"userPublic\" : name;\n}\nfunction uniqueModuleAliases(names, alias) {\n var taken = new Set(names);\n var aliases = /* @__PURE__ */ new Map();\n var _iteratorNormalCompletion = true, _didIteratorError = false, _iteratorError = void 0;\n try {\n for (var _iterator = names[Symbol.iterator](), _step; !(_iteratorNormalCompletion = (_step = _iterator.next()).done); _iteratorNormalCompletion = true) {\n var name = _step.value;\n var candidate = alias(name);\n while (candidate !== name && taken.has(candidate)) candidate += \"_\";\n taken.add(candidate);\n aliases.set(name, candidate);\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 aliases;\n}\nfunction splitTopLevelTypeUnion(type) {\n var parts = [];\n var depth = 0;\n var start = 0;\n var quote = null;\n for (var i = 0; i < type.length; i++) {\n var char = type[i];\n if (quote) {\n if (char === \"\\\\\") {\n i++;\n continue;\n }\n if (char === quote) quote = null;\n continue;\n }\n if (char === '\"' || char === \"'\" || char === \"`\") {\n quote = char;\n continue;\n }\n if (char === \"<\" || char === \"(\" || char === \"{\" || char === \"[\") {\n depth++;\n continue;\n }\n if (char === \">\" || char === \")\" || char === \"}\" || char === \"]\") {\n depth = Math.max(0, depth - 1);\n continue;\n }\n if (char === \"|\" && depth === 0) {\n parts.push(type.slice(start, i).trim());\n start = i + 1;\n }\n }\n parts.push(type.slice(start).trim());\n return parts.filter(Boolean);\n}\nfunction splitTopLevelTypeIntersection(type) {\n var parts = [];\n var depth = 0;\n var start = 0;\n var quote = null;\n for (var i = 0; i < type.length; i++) {\n var char = type[i];\n if (quote) {\n if (char === \"\\\\\") {\n i++;\n continue;\n }\n if (char === quote) quote = null;\n continue;\n }\n if (char === '\"' || char === \"'\" || char === \"`\") {\n quote = char;\n continue;\n }\n if (char === \"<\" || char === \"(\" || char === \"{\" || char === \"[\") {\n depth++;\n continue;\n }\n if (char === \">\" || char === \")\" || char === \"}\" || char === \"]\") {\n depth = Math.max(0, depth - 1);\n continue;\n }\n if (char === \"&\" && depth === 0 && type[i - 1] !== \"&\" && type[i + 1] !== \"&\") {\n parts.push(type.slice(start, i).trim());\n start = i + 1;\n }\n }\n parts.push(type.slice(start).trim());\n return parts.filter(Boolean);\n}\nfunction stripTypeComments(type) {\n var out = \"\";\n var quote = null;\n for (var i = 0; i < type.length; i++) {\n var char = type[i];\n var next = type[i + 1];\n if (quote) {\n out += char;\n if (char === \"\\\\\") {\n if (next) {\n out += next;\n i++;\n }\n continue;\n }\n if (char === quote) quote = null;\n continue;\n }\n if (char === '\"' || char === \"'\" || char === \"`\") {\n quote = char;\n out += char;\n continue;\n }\n if (char === \"/\" && next === \"/\") {\n while (i < type.length && type[i] !== \"\\n\") i++;\n if (i < type.length) out += \"\\n\";\n continue;\n }\n if (char === \"/\" && next === \"*\") {\n i += 2;\n while (i < type.length && !(type[i] === \"*\" && type[i + 1] === \"/\")) i++;\n i++;\n continue;\n }\n out += char;\n }\n return out;\n}\nfunction nextNonWhitespace(type, start) {\n for (var i = start; i < type.length; i++) {\n var char = type[i];\n if (char && !/\\s/.test(char)) return char;\n }\n return void 0;\n}\nfunction splitTopLevelObjectEntries(type) {\n var parts = [];\n var depth = 0;\n var start = 0;\n var quote = null;\n for (var i = 0; i < type.length; i++) {\n var _nextNonWhitespace;\n var char = type[i];\n if (quote) {\n if (char === \"\\\\\") {\n i++;\n continue;\n }\n if (char === quote) quote = null;\n continue;\n }\n if (char === '\"' || char === \"'\" || char === \"`\") {\n quote = char;\n continue;\n }\n if (char === \"<\" || char === \"(\" || char === \"{\" || char === \"[\") {\n depth++;\n continue;\n }\n if (char === \">\" || char === \")\" || char === \"}\" || char === \"]\") {\n depth = Math.max(0, depth - 1);\n continue;\n }\n if (depth === 0 && (char === \";\" || char === \",\" || char === \"\\n\" && type.slice(start, i).includes(\":\") && ![\n \"|\",\n \"&\"\n ].includes((_nextNonWhitespace = nextNonWhitespace(type, i + 1)) !== null && _nextNonWhitespace !== void 0 ? _nextNonWhitespace : \"\"))) {\n parts.push(type.slice(start, i).trim());\n start = i + 1;\n }\n }\n parts.push(type.slice(start).trim());\n return parts.filter(Boolean);\n}\nfunction parseInlineObjectEntries(type) {\n if (!type.startsWith(\"{\") || !type.endsWith(\"}\")) return void 0;\n var inner = type.slice(1, -1).trim();\n if (!inner) return [];\n var entries = [];\n var _iteratorNormalCompletion = true, _didIteratorError = false, _iteratorError = void 0;\n try {\n for (var _iterator = splitTopLevelObjectEntries(inner)[Symbol.iterator](), _step; !(_iteratorNormalCompletion = (_step = _iterator.next()).done); _iteratorNormalCompletion = true) {\n var part = _step.value;\n var trimmed = part.trim().replace(/[;,]\\s*$/, \"\");\n if (!trimmed || trimmed.startsWith(\"[\")) continue;\n var match = trimmed.match(RegExp(\"^(?:readonly\\\\s+)?(\\\\w+)(\\\\?)?:\\\\s*(.+)$\", \"s\"));\n if (!match) continue;\n var [, name, opt, typeStr] = match;\n var parsed = parseTypeString(typeStr.trim());\n if (!parsed) return null;\n var val = parsed;\n if (opt) val = `v.optional(${val})`;\n entries.push(`${formatObjectKey(name)}: ${val}`);\n }\n } catch (err) {\n _didIteratorError = true;\n _iteratorError = err;\n } finally {\n try {\n if (!_iteratorNormalCompletion && _iterator.return != null) {\n _iterator.return();\n }\n } finally {\n if (_didIteratorError) {\n throw _iteratorError;\n }\n }\n }\n return entries;\n}\nfunction parseTypeString(type) {\n type = stripTypeComments(type.trim()).trim();\n var unionParts = splitTopLevelTypeUnion(type);\n if (unionParts.length > 1) {\n var hasNull = unionParts.includes(\"null\");\n var hasUndefined = unionParts.includes(\"undefined\") || unionParts.includes(\"void\");\n var valueParts = unionParts.filter(function(part2) {\n return part2 !== \"null\" && part2 !== \"undefined\" && part2 !== \"void\";\n });\n if (valueParts.length === 0) return hasNull ? \"v.null_()\" : \"v.void_()\";\n var parsedParts = valueParts.map(function(part2) {\n return parseTypeString(part2);\n });\n if (parsedParts.some(function(part2) {\n return !part2;\n })) return null;\n var val = parsedParts.length === 1 ? parsedParts[0] : `v.union([${parsedParts.join(\", \")}])`;\n if (hasNull) val = `v.nullable(${val})`;\n if (hasUndefined) val = `v.optional(${val})`;\n return val;\n }\n var intersectionParts = splitTopLevelTypeIntersection(type);\n if (intersectionParts.length > 1) {\n var entries = [];\n var _iteratorNormalCompletion = true, _didIteratorError = false, _iteratorError = void 0;\n try {\n for (var _iterator = intersectionParts[Symbol.iterator](), _step; !(_iteratorNormalCompletion = (_step = _iterator.next()).done); _iteratorNormalCompletion = true) {\n var part = _step.value;\n var objectEntries = parseInlineObjectEntries(part);\n if (!objectEntries) return null;\n entries.push(...objectEntries);\n }\n } catch (err) {\n _didIteratorError = true;\n _iteratorError = err;\n } finally {\n try {\n if (!_iteratorNormalCompletion && _iterator.return != null) {\n _iterator.return();\n }\n } finally {\n if (_didIteratorError) {\n throw _iteratorError;\n }\n }\n }\n if (entries.length === 0) return \"v.object({})\";\n return `v.object({\n ${entries.join(\",\\n \")},\n })`;\n }\n if (type === \"string\") return \"v.string()\";\n if (type === \"number\") return \"v.number()\";\n if (type === \"boolean\") return \"v.boolean()\";\n if (type === \"void\" || type === \"undefined\") return \"v.void_()\";\n if (type === \"null\") return \"v.null_()\";\n if (type === \"any\" || type === \"unknown\") return \"v.unknown()\";\n var objectEntries1 = parseInlineObjectEntries(type);\n if (objectEntries1) {\n var entries1 = objectEntries1;\n if (entries1.length === 0) return \"v.object({})\";\n return `v.object({\n ${entries1.join(\",\\n \")},\n })`;\n }\n if (objectEntries1 === null) return null;\n if (type.endsWith(\"[]\")) {\n var inner = parseTypeString(type.slice(0, -2).trim());\n return inner ? `v.array(${inner})` : null;\n }\n return null;\n}\nfunction generateModelsFile(modules) {\n var sorted = [\n ...modules\n ].sort(function(a, b) {\n return a.name.localeCompare(b.name);\n });\n var aliases = uniqueModuleAliases(sorted.map(function(param) {\n var { name } = param;\n return name;\n }), getModelImportName);\n var imports = sorted.map(function(param) {\n var { name, importPath } = param;\n return `import * as ${aliases.get(name)} from '${importPath}'`;\n }).join(\"\\n\");\n var sortedByImportName = [\n ...sorted\n ].sort(function(a, b) {\n return aliases.get(a.name).localeCompare(aliases.get(b.name));\n });\n var modelsObj = `export const models = {\n${sortedByImportName.map(function(param) {\n var { name } = param;\n var importName = aliases.get(name);\n return importName === name ? ` ${name},` : ` ${name}: ${importName},`;\n }).join(\"\\n\")}\n}`;\n return `// auto-generated by: on-zero generate\n${imports}\n\n${modelsObj}\n`;\n}\nfunction generateTypesFile(modelNames) {\n var sorted = [\n ...modelNames\n ].sort(function(a, b) {\n return a.localeCompare(b);\n });\n var aliases = uniqueModuleAliases(sorted, getModelImportName);\n var typeExports = sorted.map(function(name) {\n var pascalName = name.charAt(0).toUpperCase() + name.slice(1);\n var schemaName = aliases.get(name);\n return `export type ${pascalName} = TableInsertRow<typeof schema.${schemaName}>\nexport type ${pascalName}Update = TableUpdateRow<typeof schema.${schemaName}>`;\n }).join(\"\\n\\n\");\n return `import type { TableInsertRow, TableUpdateRow } from 'on-zero'\nimport type * as schema from './tables'\n\n${typeExports}\n`;\n}\nfunction generateTablesFile(modules) {\n var sorted = [\n ...modules\n ].sort(function(a, b) {\n return a.name.localeCompare(b.name);\n });\n var aliases = uniqueModuleAliases(sorted.map(function(param) {\n var { name } = param;\n return name;\n }), getModelImportName);\n var exports = sorted.map(function(param) {\n var { name, importPath } = param;\n return `export { schema as ${aliases.get(name)} } from '${importPath}'`;\n }).join(\"\\n\");\n return `// auto-generated by: on-zero generate\n\n${exports}\n`;\n}\nfunction generateReadmeFile() {\n return `# generated\n\nthis folder is auto-generated by on-zero. do not edit files here directly.\n\n## what's generated\n\n- \\`models.ts\\` - exports every namespace's mutation module\n- \\`types.ts\\` - typescript types derived from table schemas\n- \\`tables.ts\\` - exports table schemas for type inference\n- \\`groupedQueries.ts\\` - namespaced query re-exports for client setup\n- \\`syncedQueries.ts\\` - namespaced syncedQuery wrappers for server setup\n- \\`syncedMutations.ts\\` - valibot validators for mutation args (server auto-validation)\n- \\`instances.ts\\` - generated client partitions, sync tables, and server-only support tables\n- \\`aggregates.ts\\` - every namespace's aggregate declarations compiled into one set\n\n## usage guidelines\n\n**do not import generated files outside of the data folder.**\n\n### queries\n\nwrite small namespaces in one file, or split a large namespace into\n\\`queries.ts\\` and \\`mutations.ts\\` inside a folder:\n\n\\`\\`\\`ts\n// \\u2705 good - import from queries\nimport { channelMessages } from '~/data/message/queries'\n\\`\\`\\`\n\nthe generated query files are only used internally by zero client/server setup.\n\n### types\n\nyou can import types from this folder, but prefer re-exporting from your app's public types barrel:\n\n\\`\\`\\`ts\n// \\u274C okay but not preferred\nimport type { Message } from '~/data/generated/types'\n\n// \\u2705 better - re-export from the app types barrel\nimport type { Message } from '~/types'\n\\`\\`\\`\n\n## regeneration\n\nfiles are regenerated when you run:\n\n\\`\\`\\`bash\nbun on-zero generate\n\\`\\`\\`\n\nor in watch mode:\n\n\\`\\`\\`bash\nbun on-zero generate --watch\n\\`\\`\\`\n\n## more info\n\nsee the [on-zero readme](./node_modules/on-zero/README.md) for full documentation.\n`;\n}\nfunction generateGroupedQueriesFile(queries) {\n var queryByFile = /* @__PURE__ */ new Map();\n var _iteratorNormalCompletion = true, _didIteratorError = false, _iteratorError = void 0;\n try {\n for (var _iterator = queries[Symbol.iterator](), _step; !(_iteratorNormalCompletion = (_step = _iterator.next()).done); _iteratorNormalCompletion = true) {\n var query = _step.value;\n if (!queryByFile.has(query.sourceFile)) queryByFile.set(query.sourceFile, []);\n queryByFile.get(query.sourceFile).push(query);\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 sortedFiles = [\n ...queryByFile.keys()\n ].sort();\n var aliases = uniqueModuleAliases(sortedFiles, function(file) {\n return `${file}Source`;\n });\n var imports = sortedFiles.map(function(file) {\n return `import * as ${aliases.get(file)} from '${queryByFile.get(file)[0].importPath}'`;\n }).join(\"\\n\");\n var exports = sortedFiles.map(function(file) {\n var alias = aliases.get(file);\n var names = queryByFile.get(file).map(function(query2) {\n return query2.name;\n }).sort();\n return `export const ${file} = {\n${names.map(function(name) {\n return ` ${name}: ${alias}.${name},`;\n }).join(\"\\n\")}\n}`;\n }).join(\"\\n\\n\");\n return `/**\n * auto-generated by: on-zero generate\n *\n * grouped query re-exports for minification-safe query identity.\n * this file re-exports all query modules - while this breaks tree-shaking,\n * queries are typically small and few in number even in larger apps.\n */\n${imports}${imports ? \"\\n\\n\" : \"\"}${exports}\n`;\n}\nfunction generateInstancesFile(instances) {\n var entries = [\n ...instances\n ].sort(function(a, b) {\n return a.name === \"default\" ? -1 : b.name === \"default\" ? 1 : a.name.localeCompare(b.name);\n }).map(function(instance) {\n var queries = instance.queryNames.sort().map(function(name) {\n return ` ${formatObjectKey(name)}: groupedQueries.${name},`;\n }).join(\"\\n\");\n var modelEntries = instance.modelNames.sort().map(function(name) {\n return ` ${formatObjectKey(name)}: models.${name},`;\n }).join(\"\\n\");\n var scope = instance.scope ? JSON.stringify(instance.scope) : \"null\";\n var visibility = instance.scope ? `(value: string) => ({ column: ${JSON.stringify(instance.scope)}, value })` : \"null\";\n return ` ${formatObjectKey(instance.name)}: {\n schema,\n queries: {\n${queries}\n },\n models: {\n${modelEntries}\n },\n tables: ${JSON.stringify([\n ...instance.tables\n ].sort())},\n syncTables: ${JSON.stringify([\n ...instance.syncTables\n ].sort())},\n supportTables: ${JSON.stringify([\n ...instance.supportTables\n ].sort())},\n scope: ${scope},\n defaultVisibility: ${visibility},\n },`;\n }).join(\"\\n\");\n return `// auto-generated by: on-zero generate\nimport { schema } from './schema'\nimport * as groupedQueries from './groupedQueries'\nimport { models } from './models'\n\nexport const instances = {\n${entries}\n} as const\n`;\n}\nfunction generateAggregatesFile(namespaces) {\n var sorted = [\n ...namespaces\n ].sort(function(a, b) {\n return a.name.localeCompare(b.name);\n });\n var imports = sorted.map(function(namespace) {\n return `import { aggregates as ${namespace.name}Aggregates } from '${namespace.importPath}'`;\n }).join(\"\\n\");\n var merged = sorted.map(function(namespace) {\n return `${namespace.name}Aggregates`;\n }).join(\", \");\n return `// auto-generated by: on-zero generate\nimport { defineAggregates, mergeAggregateDefinitions } from 'orez-lite/aggregate'\n${imports}\nimport { schema } from './schema'\n\nexport const aggregates = defineAggregates(\n schema,\n mergeAggregateDefinitions(${merged}),\n)\n`;\n}\nfunction generateSyncedQueriesFile(queries) {\n var queryByFile = /* @__PURE__ */ new Map();\n var _iteratorNormalCompletion = true, _didIteratorError = false, _iteratorError = void 0;\n try {\n for (var _iterator = queries[Symbol.iterator](), _step; !(_iteratorNormalCompletion = (_step = _iterator.next()).done); _iteratorNormalCompletion = true) {\n var q = _step.value;\n if (!queryByFile.has(q.sourceFile)) {\n queryByFile.set(q.sourceFile, []);\n }\n queryByFile.get(q.sourceFile).push(q);\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 sortedFiles = Array.from(queryByFile.keys()).sort();\n var imports = `// auto-generated by: on-zero generate\n// server-side query definitions with validators\nimport { defineQuery, defineQueries } from 'on-zero'\nimport * as v from 'valibot'\nimport * as Queries from './groupedQueries'\n`;\n var namespaceDefs = sortedFiles.map(function(file) {\n var fileQueries = queryByFile.get(file).sort(function(a, b) {\n return a.name.localeCompare(b.name);\n });\n var queryDefs = fileQueries.map(function(q2) {\n var validatorDef = q2.valibotCode.trim();\n if (q2.params === \"void\" || !validatorDef) {\n return ` ${q2.name}: defineQuery(() => Queries.${file}.${q2.name}()),`;\n }\n var indentedValidator = indentContinuationLines(validatorDef, 2);\n return ` ${q2.name}: defineQuery(\n ${indentedValidator},\n ({ args }) => Queries.${file}.${q2.name}(args)\n ),`;\n }).join(\"\\n\");\n return `const ${file} = {\n${queryDefs}\n}`;\n }).join(\"\\n\\n\");\n var queriesObject = sortedFiles.map(function(file) {\n return ` ${file},`;\n }).join(\"\\n\");\n return `${imports}\n${namespaceDefs}\n\nexport const queries = defineQueries({\n${queriesObject}\n})\n`;\n}\nfunction columnTypeToValibot(col) {\n var base = \"v.string()\";\n switch (col.type) {\n case \"string\":\n base = \"v.string()\";\n break;\n case \"number\":\n base = \"v.number()\";\n break;\n case \"boolean\":\n base = \"v.boolean()\";\n break;\n case \"json\":\n base = \"v.unknown()\";\n break;\n case \"enum\":\n base = \"v.string()\";\n break;\n }\n return col.optional ? `v.optional(v.nullable(${base}))` : base;\n}\nvar CRUD_MUTATION_NAMES = [\n \"insert\",\n \"update\",\n \"delete\",\n \"upsert\"\n];\nfunction schemaColumnsToValibot(columns, primaryKeys, mode) {\n var entries = [];\n if (mode === \"delete\") {\n var _iteratorNormalCompletion = true, _didIteratorError = false, _iteratorError = void 0;\n try {\n for (var _iterator = primaryKeys[Symbol.iterator](), _step; !(_iteratorNormalCompletion = (_step = _iterator.next()).done); _iteratorNormalCompletion = true) {\n var pk = _step.value;\n var col = columns[pk];\n if (col) entries.push(`${formatObjectKey(pk)}: ${columnTypeToValibot({\n ...col,\n optional: false\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 } else if (mode === \"update\") {\n var _iteratorNormalCompletion1 = true, _didIteratorError1 = false, _iteratorError1 = void 0;\n try {\n for (var _iterator1 = Object.entries(columns)[Symbol.iterator](), _step1; !(_iteratorNormalCompletion1 = (_step1 = _iterator1.next()).done); _iteratorNormalCompletion1 = true) {\n var [name, col1] = _step1.value;\n var isPK = primaryKeys.includes(name);\n if (isPK) {\n entries.push(`${formatObjectKey(name)}: ${columnTypeToValibot({\n ...col1,\n optional: false\n })}`);\n } else {\n entries.push(`${formatObjectKey(name)}: ${columnTypeToValibot({\n ...col1,\n optional: true\n })}`);\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 {\n var _iteratorNormalCompletion2 = true, _didIteratorError2 = false, _iteratorError2 = void 0;\n try {\n for (var _iterator2 = Object.entries(columns)[Symbol.iterator](), _step2; !(_iteratorNormalCompletion2 = (_step2 = _iterator2.next()).done); _iteratorNormalCompletion2 = true) {\n var [name1, col2] = _step2.value;\n entries.push(`${formatObjectKey(name1)}: ${columnTypeToValibot(col2)}`);\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 if (entries.length === 0) return \"v.object({})\";\n return `v.object({\n ${entries.join(\",\\n \")},\n })`;\n}\nfunction extractValibotExpression(valibotCode) {\n return valibotCode.trim() || \"v.unknown()\";\n}\nfunction indentContinuationLines(value, spaces) {\n var indentation = \" \".repeat(spaces);\n return value.split(\"\\n\").map(function(line, index) {\n return index === 0 ? line : `${indentation}${line}`;\n }).join(\"\\n\");\n}\nfunction parseColumnType(initText) {\n var optional = initText.includes(\".optional()\");\n var type = \"string\";\n if (initText.startsWith(\"number(\")) type = \"number\";\n else if (initText.startsWith(\"boolean(\")) type = \"boolean\";\n else if (initText.startsWith(\"json(\") || initText.startsWith(\"json<\")) type = \"json\";\n else if (initText.startsWith(\"enumeration(\")) type = \"enum\";\n return {\n type,\n optional,\n customType: void 0\n };\n}\nfunction generateSyncedMutationsFile(modelMutations) {\n var sorted = [\n ...modelMutations\n ].sort(function(a, b) {\n return a.modelName.localeCompare(b.modelName);\n });\n var modelDefs = sorted.map(function(model) {\n var entries = [];\n var emitted = /* @__PURE__ */ new Set();\n var canDeriveCRUD = model.hasCRUD && Object.keys(model.columns).length > 0;\n var _iteratorNormalCompletion = true, _didIteratorError = false, _iteratorError = void 0;\n try {\n var _loop = function() {\n var mode = _step.value;\n var customMut = model.custom.find(function(m) {\n return m.name === mode;\n });\n if (customMut === null || customMut === void 0 ? void 0 : customMut.valibotCode) {\n entries.push(` ${mode}: ${indentContinuationLines(extractValibotExpression(customMut.valibotCode), 2)},`);\n emitted.add(mode);\n return \"continue\";\n }\n if ((customMut === null || customMut === void 0 ? void 0 : customMut.paramType) === \"void\") {\n entries.push(` ${mode}: v.void_(),`);\n emitted.add(mode);\n return \"continue\";\n }\n if (canDeriveCRUD && !customMut) {\n entries.push(` ${mode}: ${schemaColumnsToValibot(model.columns, model.primaryKeys, mode)},`);\n emitted.add(mode);\n }\n };\n for (var _iterator = CRUD_MUTATION_NAMES[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 var _iteratorNormalCompletion1 = true, _didIteratorError1 = false, _iteratorError1 = void 0;\n try {\n for (var _iterator1 = model.custom[Symbol.iterator](), _step1; !(_iteratorNormalCompletion1 = (_step1 = _iterator1.next()).done); _iteratorNormalCompletion1 = true) {\n var mut = _step1.value;\n if (emitted.has(mut.name)) continue;\n if (mut.paramType === \"void\") {\n entries.push(` ${mut.name}: v.void_(),`);\n continue;\n }\n if (!mut.valibotCode) {\n entries.push(` ${mut.name}: v.unknown(),`);\n continue;\n }\n entries.push(` ${mut.name}: ${indentContinuationLines(extractValibotExpression(mut.valibotCode), 2)},`);\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 return ` ${model.modelName}: {\n${entries.join(\"\\n\")}\n },`;\n }).join(\"\\n\");\n return `// auto-generated by: on-zero generate\n// mutation validators derived from model schemas and handler types\nimport * as v from 'valibot'\n\nexport const mutationValidators = {\n${modelDefs}\n}\n`;\n}\nfunction renderDrizzleSchemaInputModule(options) {\n var tableNames = [\n ...new Set(options.tableNames)\n ].sort();\n var relationEntries = options.relationTables.filter(function(table) {\n return table.properties.length > 0;\n }).map(function(table) {\n var body = table.properties.map(function(property) {\n return ` ${property},`;\n }).join(\"\\n\");\n return ` ${table.key}: {\n${body}\n },`;\n });\n return [\n \"// auto-generated from the on-zero data layout\",\n `import { defineRelations } from 'drizzle-orm'`,\n `import * as schema from ${JSON.stringify(options.schemaImportPath)}`,\n \"\",\n `export { ${tableNames.join(\", \")} } from ${JSON.stringify(options.schemaImportPath)}`,\n `export const relations = defineRelations(schema, (r) => ({`,\n ...relationEntries,\n `}))`,\n \"\"\n ].join(\"\\n\");\n}\nfunction renderDrizzleZeroSqliteSchemaModule(options) {\n var tableNames = [\n ...new Set(options.tableNames)\n ].sort();\n var typeNames = /* @__PURE__ */ new Set();\n var rowAliases = tableNames.map(function(tableName) {\n var typeName = tableName.replace(/(?:^|[^A-Za-z0-9]+)([A-Za-z0-9])/g, function(_, character) {\n return character.toUpperCase();\n }).replace(/^([a-z])/, function(character) {\n return character.toUpperCase();\n });\n if (!/^[$A-Z_a-z][$\\w]*$/.test(typeName)) {\n throw new TypeError(`table name cannot produce a TypeScript alias: ${tableName}`);\n }\n if (typeNames.has(typeName)) {\n throw new TypeError(`table names produce duplicate TypeScript alias: ${typeName}`);\n }\n typeNames.add(typeName);\n return `export type ${typeName} = Row<(typeof schema)['tables'][${JSON.stringify(tableName)}]>`;\n });\n return [\n \"// auto-generated by drizzle-zero-sqlite\",\n `import { createBuilder, type Row } from '@rocicorp/zero'`,\n `import { drizzleZeroConfig } from 'drizzle-zero-sqlite'`,\n `import * as drizzleSchema from ${JSON.stringify(options.importPath)}`,\n \"\",\n `export const schema = drizzleZeroConfig(drizzleSchema, { suppressDefaultsWarning: true })`,\n \"\",\n `export type Schema = typeof schema`,\n ...rowAliases,\n \"\",\n `export const zql = createBuilder(schema)`,\n \"export const builder = zql\",\n \"\",\n `declare module '@rocicorp/zero' {`,\n \" interface DefaultTypes {\",\n \" schema: Schema\",\n \" }\",\n \"}\",\n \"\"\n ].join(\"\\n\");\n}\nexport {\n CRUD_MUTATION_NAMES,\n columnTypeToValibot,\n extractValibotExpression,\n formatObjectKey,\n generateAggregatesFile,\n generateGroupedQueriesFile,\n generateInstancesFile,\n generateModelsFile,\n generateReadmeFile,\n generateSyncedMutationsFile,\n generateSyncedQueriesFile,\n generateTablesFile,\n generateTypesFile,\n getModelImportName,\n parseColumnType,\n parseTypeString,\n renderDrizzleSchemaInputModule,\n renderDrizzleZeroSqliteSchemaModule,\n schemaColumnsToValibot,\n shouldSkipObjectKey,\n uniqueModuleAliases\n};\n//# sourceMappingURL=generate-helpers.js.map\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { runInNewContext } from "vm";
|
|
2
2
|
import * as v from "valibot";
|
|
3
3
|
import { describe, expect, test } from "vitest";
|
|
4
|
-
import { generateSyncedMutationsFile, generateTablesFile } from "./generate-helpers
|
|
4
|
+
import { generateSyncedMutationsFile, generateTablesFile } from "./generate-helpers";
|
|
5
5
|
function declaredIdentifiers(source) {
|
|
6
6
|
var names = [];
|
|
7
7
|
var _iteratorNormalCompletion = true,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["runInNewContext","v","describe","expect","test","generateSyncedMutationsFile","generateTablesFile","declaredIdentifiers","source","names","_iteratorNormalCompletion","_didIteratorError","_iteratorError","_iterator","split","Symbol","iterator","_step","next","done","line","value","imported","match","push","declared","reexported","err","return","expectNoDuplicates","duplicates","filter","name","index","indexOf","toEqual","importPath","modelName","hasCRUD","columns","id","type","optional","customType","primaryKeys","custom","paramType","valibotCode","toContain","title","toHaveLength"],"sources":["../../src/generate-helpers.test.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"names":["runInNewContext","v","describe","expect","test","generateSyncedMutationsFile","generateTablesFile","declaredIdentifiers","source","names","_iteratorNormalCompletion","_didIteratorError","_iteratorError","_iterator","split","Symbol","iterator","_step","next","done","line","value","imported","match","push","declared","reexported","err","return","expectNoDuplicates","duplicates","filter","name","index","indexOf","toEqual","importPath","modelName","hasCRUD","columns","id","type","optional","customType","primaryKeys","custom","paramType","valibotCode","toContain","title","toHaveLength","validators","replace","parse","post","upsert","customInput","insert","toThrow","_i","_iter","length","slot","not"],"sources":["generate-helpers.test.native.js"],"sourcesContent":["import { runInNewContext } from \"vm\";\nimport * as v from \"valibot\";\nimport { describe, expect, test } from \"vitest\";\nimport { generateSyncedMutationsFile, generateTablesFile } from \"./generate-helpers\";\nfunction declaredIdentifiers(source) {\n var names = [];\n var _iteratorNormalCompletion = true, _didIteratorError = false, _iteratorError = void 0;\n try {\n for (var _iterator = source.split(\"\\n\")[Symbol.iterator](), _step; !(_iteratorNormalCompletion = (_step = _iterator.next()).done); _iteratorNormalCompletion = true) {\n var line = _step.value;\n var imported = line.match(/^import \\* as ([$\\w]+) from /);\n if (imported) names.push(imported[1]);\n var declared = line.match(/^export const ([$\\w]+) = /);\n if (declared) names.push(declared[1]);\n var reexported = line.match(/^export \\{ \\w+ as ([$\\w]+) \\} from /);\n if (reexported) names.push(reexported[1]);\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 names;\n}\nfunction expectNoDuplicates(source) {\n var names = declaredIdentifiers(source);\n var duplicates = names.filter(function(name, index) {\n return names.indexOf(name) !== index;\n });\n expect(duplicates).toEqual([]);\n return names;\n}\ndescribe(\"generated module identifiers\", function() {\n test(\"table re-exports keep distinct names when user and userPublic both exist\", function() {\n var source = generateTablesFile([\n {\n name: \"user\",\n importPath: \"../user\"\n },\n {\n name: \"userPublic\",\n importPath: \"../userPublic\"\n }\n ]);\n expectNoDuplicates(source);\n });\n});\ndescribe(\"generated mutation validators\", function() {\n test(\"indents multiline custom validators inside their mutation entries\", function() {\n var source = generateSyncedMutationsFile([\n {\n modelName: \"post\",\n hasCRUD: true,\n columns: {\n id: {\n type: \"string\",\n optional: false,\n customType: void 0\n }\n },\n primaryKeys: [\n \"id\"\n ],\n custom: [\n {\n name: \"update\",\n paramType: \"{ id: string }\",\n valibotCode: \"v.object({\\n id: v.string(),\\n })\"\n },\n {\n name: \"publish\",\n paramType: \"{ id: string }\",\n valibotCode: \"v.object({\\n id: v.string(),\\n })\"\n }\n ]\n }\n ]);\n expect(source).toContain(` update: v.object({\n id: v.string(),\n }),`);\n expect(source).toContain(` publish: v.object({\n id: v.string(),\n }),`);\n });\n test(\"emits an upsert validator alongside the other generated crud slots\", function() {\n var source = generateSyncedMutationsFile([\n {\n modelName: \"post\",\n hasCRUD: true,\n columns: {\n id: {\n type: \"string\",\n optional: false,\n customType: void 0\n },\n title: {\n type: \"string\",\n optional: true,\n customType: void 0\n }\n },\n primaryKeys: [\n \"id\"\n ],\n custom: []\n }\n ]);\n expect(source).toContain(` upsert: v.object({\n id: v.string(),\n title: v.optional(v.nullable(v.string())),\n }),`);\n expect(source).toContain(\" insert: v.object({\");\n expect(source).toContain(\" update: v.object({\");\n expect(source).toContain(\" delete: v.object({\");\n });\n test(\"keeps a custom upsert override instead of dropping it\", function() {\n var source = generateSyncedMutationsFile([\n {\n modelName: \"post\",\n hasCRUD: true,\n columns: {\n id: {\n type: \"string\",\n optional: false,\n customType: void 0\n }\n },\n primaryKeys: [\n \"id\"\n ],\n custom: [\n {\n name: \"upsert\",\n paramType: \"{ id: string; draft: boolean }\",\n valibotCode: \"v.object({\\n id: v.string(),\\n draft: v.boolean(),\\n })\"\n }\n ]\n }\n ]);\n expect(source).toContain(` upsert: v.object({\n id: v.string(),\n draft: v.boolean(),\n }),`);\n expect(source.match(/upsert:/g)).toHaveLength(1);\n });\n test(\"honors a custom unknown payload even when table columns are available\", function() {\n var source = generateSyncedMutationsFile([\n {\n modelName: \"post\",\n hasCRUD: true,\n columns: {\n id: {\n type: \"string\",\n optional: false,\n customType: void 0\n }\n },\n primaryKeys: [\n \"id\"\n ],\n custom: [\n {\n name: \"upsert\",\n paramType: \"unknown\",\n valibotCode: \"\"\n }\n ]\n }\n ]);\n var validators = runInNewContext(source.replace(\"import * as v from 'valibot'\", \"\").replace(\"export const mutationValidators\", \"const mutationValidators\") + \"\\nmutationValidators\", {\n v\n });\n expect(v.parse(validators.post.upsert, {\n customInput: true\n })).toEqual({\n customInput: true\n });\n expect(function() {\n return v.parse(validators.post.insert, {\n customInput: true\n });\n }).toThrow();\n });\n test(\"emits only authored handlers when the model opted out of crud\", function() {\n var source = generateSyncedMutationsFile([\n {\n modelName: \"appNotification\",\n hasCRUD: false,\n columns: {\n id: {\n type: \"string\",\n optional: false,\n customType: void 0\n }\n },\n primaryKeys: [\n \"id\"\n ],\n custom: [\n {\n name: \"markRead\",\n paramType: \"{ id: string }\",\n valibotCode: \"v.object({\\n id: v.string(),\\n })\"\n }\n ]\n }\n ]);\n expect(source).toContain(\" markRead: v.object({\");\n for (var _i = 0, _iter = [\n \"insert\",\n \"update\",\n \"delete\",\n \"upsert\"\n ]; _i < _iter.length; _i++) {\n var slot = _iter[_i];\n expect(source).not.toContain(` ${slot}:`);\n }\n });\n test(\"keeps an authored crud-named handler when there are no schema columns\", function() {\n var source = generateSyncedMutationsFile([\n {\n modelName: \"post\",\n hasCRUD: true,\n columns: {},\n primaryKeys: [],\n custom: [\n {\n name: \"insert\",\n paramType: \"{ id: string }\",\n valibotCode: \"v.object({\\n id: v.string(),\\n })\"\n }\n ]\n }\n ]);\n expect(source).toContain(` insert: v.object({\n id: v.string(),\n }),`);\n });\n});\n//# sourceMappingURL=generate-helpers.test.js.map\n"],"mappings":"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","ignoreList":[]}
|