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.
Files changed (249) hide show
  1. package/dist/cjs/cli.cjs +46 -41
  2. package/dist/cjs/cli.native.js +48 -43
  3. package/dist/cjs/cli.native.js.map +1 -1
  4. package/dist/cjs/constants.cjs +14 -12
  5. package/dist/cjs/constants.native.js +14 -12
  6. package/dist/cjs/constants.native.js.map +1 -1
  7. package/dist/cjs/createPermissions.cjs +66 -34
  8. package/dist/cjs/createPermissions.native.js +143 -87
  9. package/dist/cjs/createPermissions.native.js.map +1 -1
  10. package/dist/cjs/createSchemaFromDrizzle.cjs +15 -13
  11. package/dist/cjs/createSchemaFromDrizzle.native.js +15 -13
  12. package/dist/cjs/createSchemaFromDrizzle.native.js.map +1 -1
  13. package/dist/cjs/createUseQuery.cjs +48 -35
  14. package/dist/cjs/createUseQuery.native.js +52 -38
  15. package/dist/cjs/createUseQuery.native.js.map +1 -1
  16. package/dist/cjs/createZeroClient.cjs +177 -135
  17. package/dist/cjs/createZeroClient.native.js +246 -195
  18. package/dist/cjs/createZeroClient.native.js.map +1 -1
  19. package/dist/cjs/createZeroServer.cjs +175 -129
  20. package/dist/cjs/createZeroServer.native.js +170 -138
  21. package/dist/cjs/createZeroServer.native.js.map +1 -1
  22. package/dist/cjs/generate-helpers.cjs +122 -88
  23. package/dist/cjs/generate-helpers.native.js +209 -174
  24. package/dist/cjs/generate-helpers.native.js.map +1 -1
  25. package/dist/cjs/generate-lite.cjs +90 -58
  26. package/dist/cjs/generate-lite.native.js +200 -140
  27. package/dist/cjs/generate-lite.native.js.map +1 -1
  28. package/dist/cjs/generate-lite.test.cjs +229 -192
  29. package/dist/cjs/generate-lite.test.native.js +229 -194
  30. package/dist/cjs/generate-lite.test.native.js.map +1 -1
  31. package/dist/cjs/generate.cjs +455 -291
  32. package/dist/cjs/generate.native.js +747 -565
  33. package/dist/cjs/generate.native.js.map +1 -1
  34. package/dist/cjs/generate.test.cjs +170 -106
  35. package/dist/cjs/generate.test.native.js +171 -107
  36. package/dist/cjs/generate.test.native.js.map +1 -1
  37. package/dist/cjs/helpers/batchQuery.cjs +29 -18
  38. package/dist/cjs/helpers/batchQuery.native.js +36 -21
  39. package/dist/cjs/helpers/batchQuery.native.js.map +1 -1
  40. package/dist/cjs/helpers/clearZeroClientData.cjs +30 -21
  41. package/dist/cjs/helpers/clearZeroClientData.native.js +42 -33
  42. package/dist/cjs/helpers/clearZeroClientData.native.js.map +1 -1
  43. package/dist/cjs/helpers/createMutators.cjs +80 -42
  44. package/dist/cjs/helpers/createMutators.native.js +139 -87
  45. package/dist/cjs/helpers/createMutators.native.js.map +1 -1
  46. package/dist/cjs/helpers/didRunPermissionCheck.cjs +19 -13
  47. package/dist/cjs/helpers/didRunPermissionCheck.native.js +22 -20
  48. package/dist/cjs/helpers/didRunPermissionCheck.native.js.map +1 -1
  49. package/dist/cjs/helpers/ensureLoggedIn.cjs +16 -13
  50. package/dist/cjs/helpers/ensureLoggedIn.native.js +21 -18
  51. package/dist/cjs/helpers/ensureLoggedIn.native.js.map +1 -1
  52. package/dist/cjs/helpers/getAuth.cjs +25 -15
  53. package/dist/cjs/helpers/getAuth.native.js +25 -15
  54. package/dist/cjs/helpers/getAuth.native.js.map +1 -1
  55. package/dist/cjs/helpers/mutatorContext.cjs +21 -14
  56. package/dist/cjs/helpers/mutatorContext.native.js +21 -15
  57. package/dist/cjs/helpers/mutatorContext.native.js.map +1 -1
  58. package/dist/cjs/helpers/prettyFormatZeroQuery.cjs +126 -81
  59. package/dist/cjs/helpers/prettyFormatZeroQuery.native.js +135 -92
  60. package/dist/cjs/helpers/prettyFormatZeroQuery.native.js.map +1 -1
  61. package/dist/cjs/helpers/queryContext.cjs +12 -10
  62. package/dist/cjs/helpers/queryContext.native.js +16 -13
  63. package/dist/cjs/helpers/queryContext.native.js.map +1 -1
  64. package/dist/cjs/helpers/showZeroClientError.cjs +24 -19
  65. package/dist/cjs/helpers/showZeroClientError.native.js +38 -34
  66. package/dist/cjs/helpers/showZeroClientError.native.js.map +1 -1
  67. package/dist/cjs/helpers/useZeroDebug.cjs +82 -49
  68. package/dist/cjs/helpers/useZeroDebug.native.js +83 -55
  69. package/dist/cjs/helpers/useZeroDebug.native.js.map +1 -1
  70. package/dist/cjs/index.cjs +17 -15
  71. package/dist/cjs/index.native.js +17 -15
  72. package/dist/cjs/index.native.js.map +1 -1
  73. package/dist/cjs/modelRegistry.cjs +12 -10
  74. package/dist/cjs/modelRegistry.native.js +12 -10
  75. package/dist/cjs/modelRegistry.native.js.map +1 -1
  76. package/dist/cjs/mutations.cjs +66 -42
  77. package/dist/cjs/mutations.native.js +68 -46
  78. package/dist/cjs/mutations.native.js.map +1 -1
  79. package/dist/cjs/queryRegistry.cjs +13 -10
  80. package/dist/cjs/queryRegistry.native.js +14 -11
  81. package/dist/cjs/queryRegistry.native.js.map +1 -1
  82. package/dist/cjs/resolveQuery.cjs +22 -18
  83. package/dist/cjs/resolveQuery.native.js +32 -28
  84. package/dist/cjs/resolveQuery.native.js.map +1 -1
  85. package/dist/cjs/run.cjs +35 -28
  86. package/dist/cjs/run.native.js +35 -29
  87. package/dist/cjs/run.native.js.map +1 -1
  88. package/dist/cjs/server.cjs +7 -5
  89. package/dist/cjs/serverWhere.cjs +13 -11
  90. package/dist/cjs/serverWhere.native.js +13 -11
  91. package/dist/cjs/serverWhere.native.js.map +1 -1
  92. package/dist/cjs/serverWhere.test.cjs +83 -55
  93. package/dist/cjs/serverWhere.test.native.js +72 -50
  94. package/dist/cjs/serverWhere.test.native.js.map +1 -1
  95. package/dist/cjs/state.cjs +49 -44
  96. package/dist/cjs/state.native.js +56 -53
  97. package/dist/cjs/state.native.js.map +1 -1
  98. package/dist/cjs/types.cjs +7 -5
  99. package/dist/cjs/types.native.js +7 -5
  100. package/dist/cjs/types.native.js.map +1 -1
  101. package/dist/cjs/usePermission.test.cjs +58 -45
  102. package/dist/cjs/usePermission.test.native.js +59 -48
  103. package/dist/cjs/usePermission.test.native.js.map +1 -1
  104. package/dist/cjs/vite-plugin.cjs +41 -21
  105. package/dist/cjs/vite-plugin.native.js +61 -47
  106. package/dist/cjs/vite-plugin.native.js.map +1 -1
  107. package/dist/cjs/where.cjs +39 -24
  108. package/dist/cjs/where.native.js +44 -29
  109. package/dist/cjs/where.native.js.map +1 -1
  110. package/dist/cjs/zeroRunner.cjs +18 -12
  111. package/dist/cjs/zeroRunner.native.js +22 -16
  112. package/dist/cjs/zeroRunner.native.js.map +1 -1
  113. package/dist/cjs/zql.cjs +14 -11
  114. package/dist/cjs/zql.native.js +19 -17
  115. package/dist/cjs/zql.native.js.map +1 -1
  116. package/dist/esm/cli.mjs +43 -38
  117. package/dist/esm/cli.mjs.map +1 -1
  118. package/dist/esm/cli.native.js +44 -39
  119. package/dist/esm/cli.native.js.map +1 -1
  120. package/dist/esm/constants.mjs +2 -2
  121. package/dist/esm/constants.mjs.map +1 -1
  122. package/dist/esm/constants.native.js +2 -2
  123. package/dist/esm/constants.native.js.map +1 -1
  124. package/dist/esm/createPermissions.mjs +48 -18
  125. package/dist/esm/createPermissions.mjs.map +1 -1
  126. package/dist/esm/createPermissions.native.js +125 -71
  127. package/dist/esm/createPermissions.native.js.map +1 -1
  128. package/dist/esm/createUseQuery.mjs +32 -21
  129. package/dist/esm/createUseQuery.mjs.map +1 -1
  130. package/dist/esm/createUseQuery.native.js +36 -24
  131. package/dist/esm/createUseQuery.native.js.map +1 -1
  132. package/dist/esm/createZeroClient.mjs +148 -108
  133. package/dist/esm/createZeroClient.mjs.map +1 -1
  134. package/dist/esm/createZeroClient.native.js +217 -168
  135. package/dist/esm/createZeroClient.native.js.map +1 -1
  136. package/dist/esm/createZeroServer.mjs +148 -104
  137. package/dist/esm/createZeroServer.mjs.map +1 -1
  138. package/dist/esm/createZeroServer.native.js +143 -113
  139. package/dist/esm/createZeroServer.native.js.map +1 -1
  140. package/dist/esm/generate-helpers.mjs +110 -78
  141. package/dist/esm/generate-helpers.mjs.map +1 -1
  142. package/dist/esm/generate-helpers.native.js +197 -164
  143. package/dist/esm/generate-helpers.native.js.map +1 -1
  144. package/dist/esm/generate-lite.mjs +78 -48
  145. package/dist/esm/generate-lite.mjs.map +1 -1
  146. package/dist/esm/generate-lite.native.js +188 -130
  147. package/dist/esm/generate-lite.native.js.map +1 -1
  148. package/dist/esm/generate-lite.test.mjs +227 -190
  149. package/dist/esm/generate-lite.test.mjs.map +1 -1
  150. package/dist/esm/generate-lite.test.native.js +227 -192
  151. package/dist/esm/generate-lite.test.native.js.map +1 -1
  152. package/dist/esm/generate.mjs +427 -265
  153. package/dist/esm/generate.mjs.map +1 -1
  154. package/dist/esm/generate.native.js +718 -538
  155. package/dist/esm/generate.native.js.map +1 -1
  156. package/dist/esm/generate.test.mjs +165 -101
  157. package/dist/esm/generate.test.mjs.map +1 -1
  158. package/dist/esm/generate.test.native.js +165 -101
  159. package/dist/esm/generate.test.native.js.map +1 -1
  160. package/dist/esm/helpers/batchQuery.mjs +17 -8
  161. package/dist/esm/helpers/batchQuery.mjs.map +1 -1
  162. package/dist/esm/helpers/batchQuery.native.js +24 -11
  163. package/dist/esm/helpers/batchQuery.native.js.map +1 -1
  164. package/dist/esm/helpers/clearZeroClientData.mjs +18 -11
  165. package/dist/esm/helpers/clearZeroClientData.mjs.map +1 -1
  166. package/dist/esm/helpers/clearZeroClientData.native.js +30 -23
  167. package/dist/esm/helpers/clearZeroClientData.native.js.map +1 -1
  168. package/dist/esm/helpers/createMutators.mjs +53 -17
  169. package/dist/esm/helpers/createMutators.mjs.map +1 -1
  170. package/dist/esm/helpers/createMutators.native.js +112 -62
  171. package/dist/esm/helpers/createMutators.native.js.map +1 -1
  172. package/dist/esm/helpers/didRunPermissionCheck.mjs +7 -3
  173. package/dist/esm/helpers/didRunPermissionCheck.mjs.map +1 -1
  174. package/dist/esm/helpers/didRunPermissionCheck.native.js +9 -9
  175. package/dist/esm/helpers/didRunPermissionCheck.native.js.map +1 -1
  176. package/dist/esm/helpers/ensureLoggedIn.mjs +2 -1
  177. package/dist/esm/helpers/ensureLoggedIn.mjs.map +1 -1
  178. package/dist/esm/helpers/ensureLoggedIn.native.js +2 -1
  179. package/dist/esm/helpers/ensureLoggedIn.native.js.map +1 -1
  180. package/dist/esm/helpers/getAuth.mjs +10 -2
  181. package/dist/esm/helpers/getAuth.mjs.map +1 -1
  182. package/dist/esm/helpers/getAuth.native.js +10 -2
  183. package/dist/esm/helpers/getAuth.native.js.map +1 -1
  184. package/dist/esm/helpers/mutatorContext.mjs +9 -4
  185. package/dist/esm/helpers/mutatorContext.mjs.map +1 -1
  186. package/dist/esm/helpers/mutatorContext.native.js +8 -4
  187. package/dist/esm/helpers/mutatorContext.native.js.map +1 -1
  188. package/dist/esm/helpers/prettyFormatZeroQuery.mjs +114 -71
  189. package/dist/esm/helpers/prettyFormatZeroQuery.mjs.map +1 -1
  190. package/dist/esm/helpers/prettyFormatZeroQuery.native.js +121 -80
  191. package/dist/esm/helpers/prettyFormatZeroQuery.native.js.map +1 -1
  192. package/dist/esm/helpers/queryContext.native.js +2 -1
  193. package/dist/esm/helpers/queryContext.native.js.map +1 -1
  194. package/dist/esm/helpers/showZeroClientError.mjs +12 -9
  195. package/dist/esm/helpers/showZeroClientError.mjs.map +1 -1
  196. package/dist/esm/helpers/showZeroClientError.native.js +25 -23
  197. package/dist/esm/helpers/showZeroClientError.native.js.map +1 -1
  198. package/dist/esm/helpers/useZeroDebug.mjs +67 -36
  199. package/dist/esm/helpers/useZeroDebug.mjs.map +1 -1
  200. package/dist/esm/helpers/useZeroDebug.native.js +68 -42
  201. package/dist/esm/helpers/useZeroDebug.native.js.map +1 -1
  202. package/dist/esm/mutations.mjs +51 -29
  203. package/dist/esm/mutations.mjs.map +1 -1
  204. package/dist/esm/mutations.native.js +53 -33
  205. package/dist/esm/mutations.native.js.map +1 -1
  206. package/dist/esm/queryRegistry.mjs +1 -0
  207. package/dist/esm/queryRegistry.mjs.map +1 -1
  208. package/dist/esm/queryRegistry.native.js +2 -1
  209. package/dist/esm/queryRegistry.native.js.map +1 -1
  210. package/dist/esm/resolveQuery.mjs +10 -8
  211. package/dist/esm/resolveQuery.mjs.map +1 -1
  212. package/dist/esm/resolveQuery.native.js +20 -18
  213. package/dist/esm/resolveQuery.native.js.map +1 -1
  214. package/dist/esm/run.mjs +21 -16
  215. package/dist/esm/run.mjs.map +1 -1
  216. package/dist/esm/run.native.js +20 -16
  217. package/dist/esm/run.native.js.map +1 -1
  218. package/dist/esm/serverWhere.mjs +1 -1
  219. package/dist/esm/serverWhere.mjs.map +1 -1
  220. package/dist/esm/serverWhere.native.js +1 -1
  221. package/dist/esm/serverWhere.native.js.map +1 -1
  222. package/dist/esm/serverWhere.test.mjs +79 -51
  223. package/dist/esm/serverWhere.test.mjs.map +1 -1
  224. package/dist/esm/serverWhere.test.native.js +68 -46
  225. package/dist/esm/serverWhere.test.native.js.map +1 -1
  226. package/dist/esm/state.mjs +35 -32
  227. package/dist/esm/state.mjs.map +1 -1
  228. package/dist/esm/state.native.js +41 -40
  229. package/dist/esm/state.native.js.map +1 -1
  230. package/dist/esm/usePermission.test.mjs +53 -40
  231. package/dist/esm/usePermission.test.mjs.map +1 -1
  232. package/dist/esm/usePermission.test.native.js +54 -43
  233. package/dist/esm/usePermission.test.native.js.map +1 -1
  234. package/dist/esm/vite-plugin.mjs +27 -9
  235. package/dist/esm/vite-plugin.mjs.map +1 -1
  236. package/dist/esm/vite-plugin.native.js +47 -35
  237. package/dist/esm/vite-plugin.native.js.map +1 -1
  238. package/dist/esm/where.mjs +24 -11
  239. package/dist/esm/where.mjs.map +1 -1
  240. package/dist/esm/where.native.js +29 -16
  241. package/dist/esm/where.native.js.map +1 -1
  242. package/dist/esm/zeroRunner.mjs +6 -2
  243. package/dist/esm/zeroRunner.mjs.map +1 -1
  244. package/dist/esm/zeroRunner.native.js +8 -4
  245. package/dist/esm/zeroRunner.native.js.map +1 -1
  246. package/dist/esm/zql.mjs +2 -1
  247. package/dist/esm/zql.mjs.map +1 -1
  248. package/dist/esm/zql.native.js.map +1 -1
  249. package/package.json +3 -3
@@ -1 +1 @@
1
- {"version":3,"names":["generateGroupedQueriesFile","generateModelsFile","generateReadmeFile","generateSyncedMutationsFile","generateSyncedQueriesFile","generateTablesFile","generateTypesFile","parseColumnType","parseTypeString","stripTrailingSlash","s","endsWith","slice","baseName","path","ext","idx","lastIndexOf","base","length","listDirectTsFiles","files","dirPrefix","prefix","out","_iteratorNormalCompletion","_didIteratorError","_iteratorError","_iterator","Object","keys","Symbol","iterator","_step","next","done","value","startsWith","rest","includes","push","err","return","sort","generateLite","opts","parse","baseDir","dir","modelsDirName","modelsDir","mutationsPrefix","hasMutationsDir","some","p","modelsDirPath","queriesDirPath","modelFilePaths","queryFilePaths","allModelMutations","modelNamesWithSchema","filePath","modelName","content","parsed","_parsed_mutations_","mutationExport","mutations","columns","primaryKeys","hasSchema","schema","_iteratorNormalCompletion1","_didIteratorError1","_iteratorError1","_iterator1","_step1","pk","_iteratorNormalCompletion2","_didIteratorError2","_iteratorError2","_iterator2","_step2","col","name","builderText","hasCRUD","_mutationExport_handlers","custom","handlers","map","h","paramTypeText","paramType","valibotCode","paramType2","trim","valibotCode2"],"sources":["../../src/generate-lite.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["generateGroupedQueriesFile","generateModelsFile","generateReadmeFile","generateSyncedMutationsFile","generateSyncedQueriesFile","generateTablesFile","generateTypesFile","parseColumnType","parseTypeString","stripTrailingSlash","s","endsWith","slice","baseName","path","ext","idx","lastIndexOf","base","length","listDirectTsFiles","files","dirPrefix","prefix","out","_iteratorNormalCompletion","_didIteratorError","_iteratorError","_iterator","Object","keys","Symbol","iterator","_step","next","done","value","startsWith","rest","includes","push","err","return","sort","generateLite","opts","parse","baseDir","dir","modelsDirName","modelsDir","mutationsPrefix","hasMutationsDir","some","p","modelsDirPath","queriesDirPath","modelFilePaths","queryFilePaths","allModelMutations","modelNamesWithSchema","filePath","modelName","content","parsed","_parsed_mutations_","mutationExport","mutations","columns","primaryKeys","hasSchema","schema","_iteratorNormalCompletion1","_didIteratorError1","_iteratorError1","_iterator1","_step1","pk","_iteratorNormalCompletion2","_didIteratorError2","_iteratorError2","_iterator2","_step2","col","name","builderText","hasCRUD","_mutationExport_handlers","custom","handlers","map","h","paramTypeText","paramType","valibotCode","paramType2","trim","valibotCode2","e"],"sources":["../../src/generate-lite.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
@@ -3,7 +3,9 @@ import { generateLite } from "./generate-lite.mjs";
3
3
  function makeParse(table) {
4
4
  return (_src, path) => {
5
5
  const entry = table[path];
6
- if (!entry) throw new Error(`no lite ast fixture for ${path}`);
6
+ if (!entry) {
7
+ throw new Error(`no lite ast fixture for ${path}`);
8
+ }
7
9
  return entry;
8
10
  };
9
11
  }
@@ -11,219 +13,254 @@ const DIR = "/proj/src/data";
11
13
  describe("generateLite", () => {
12
14
  test("emits models.ts, syncedMutations.ts, and README.md from inline types", () => {
13
15
  const files = {
14
- [`${DIR}/models/todo.ts`]: "// fake source, parser returns fixture",
15
- [`${DIR}/models/user.ts`]: "// fake source, parser returns fixture"
16
- },
17
- fixtures = {
18
- [`${DIR}/models/todo.ts`]: {
19
- mutations: [{
20
- modelName: "todo",
21
- handlers: [{
22
- name: "toggle",
23
- paramTypeText: "{ id: string; isActive: boolean }"
24
- }, {
25
- name: "rename",
26
- paramTypeText: "{ id: string; title: string }"
27
- }],
28
- schema: null
16
+ [`${DIR}/models/todo.ts`]: "// fake source, parser returns fixture",
17
+ [`${DIR}/models/user.ts`]: "// fake source, parser returns fixture"
18
+ };
19
+ const fixtures = {
20
+ [`${DIR}/models/todo.ts`]: {
21
+ mutations: [{
22
+ modelName: "todo",
23
+ handlers: [{
24
+ name: "toggle",
25
+ paramTypeText: "{ id: string; isActive: boolean }"
26
+ }, {
27
+ name: "rename",
28
+ paramTypeText: "{ id: string; title: string }"
29
29
  }],
30
- queries: []
31
- },
32
- [`${DIR}/models/user.ts`]: {
33
- mutations: [{
34
- modelName: "user",
35
- handlers: [{
36
- name: "finishOnboarding",
37
- // null = no second param / void
38
- paramTypeText: null
39
- }],
40
- schema: null
41
- }],
42
- queries: []
43
- }
30
+ schema: null
31
+ }],
32
+ queries: []
44
33
  },
45
- result = generateLite({
46
- files,
47
- dir: DIR,
48
- parse: makeParse(fixtures)
49
- });
34
+ [`${DIR}/models/user.ts`]: {
35
+ mutations: [{
36
+ modelName: "user",
37
+ handlers: [{
38
+ name: "finishOnboarding",
39
+ // null = no second param / void
40
+ paramTypeText: null
41
+ }],
42
+ schema: null
43
+ }],
44
+ queries: []
45
+ }
46
+ };
47
+ const result = generateLite({
48
+ files,
49
+ dir: DIR,
50
+ parse: makeParse(fixtures)
51
+ });
50
52
  expect(Object.keys(result.files).sort()).toEqual(["README.md", "models.ts", "syncedMutations.ts"]);
51
53
  const models = result.files["models.ts"];
52
- expect(models).toContain("import * as todo from '../models/todo'"), expect(models).toContain("import * as userPublic from '../models/user'"), expect(models).toContain("export const models = {");
54
+ expect(models).toContain("import * as todo from '../models/todo'");
55
+ expect(models).toContain("import * as userPublic from '../models/user'");
56
+ expect(models).toContain("export const models = {");
53
57
  const syncedMutations = result.files["syncedMutations.ts"];
54
- expect(syncedMutations).toContain("toggle:"), expect(syncedMutations).toContain("v.object({"), expect(syncedMutations).toContain("id: v.string()"), expect(syncedMutations).toContain("isActive: v.boolean()"), expect(syncedMutations).toContain("rename:"), expect(syncedMutations).toContain("title: v.string()"), expect(syncedMutations).toContain("finishOnboarding: v.void_()"), expect(result.modelCount).toBe(2), expect(result.schemaCount).toBe(0), expect(result.mutationCount).toBe(3);
55
- }), test("falls back to v.unknown() for type references", () => {
58
+ expect(syncedMutations).toContain("toggle:");
59
+ expect(syncedMutations).toContain("v.object({");
60
+ expect(syncedMutations).toContain("id: v.string()");
61
+ expect(syncedMutations).toContain("isActive: v.boolean()");
62
+ expect(syncedMutations).toContain("rename:");
63
+ expect(syncedMutations).toContain("title: v.string()");
64
+ expect(syncedMutations).toContain("finishOnboarding: v.void_()");
65
+ expect(result.modelCount).toBe(2);
66
+ expect(result.schemaCount).toBe(0);
67
+ expect(result.mutationCount).toBe(3);
68
+ });
69
+ test("falls back to v.unknown() for type references", () => {
56
70
  const files = {
57
- [`${DIR}/models/post.ts`]: "// fake"
58
- },
59
- fixtures = {
60
- [`${DIR}/models/post.ts`]: {
61
- mutations: [{
62
- modelName: "post",
63
- handlers: [{
64
- name: "archive",
65
- // bare type reference — parseTypeString returns null, so
66
- // generate-lite should fall back to v.unknown() rather than
67
- // attempting cross-file type resolution.
68
- paramTypeText: "ArchiveParams"
69
- }, {
70
- name: "publish",
71
- // primitive, should resolve
72
- paramTypeText: "string"
73
- }],
74
- schema: null
71
+ [`${DIR}/models/post.ts`]: "// fake"
72
+ };
73
+ const fixtures = {
74
+ [`${DIR}/models/post.ts`]: {
75
+ mutations: [{
76
+ modelName: "post",
77
+ handlers: [{
78
+ name: "archive",
79
+ // bare type reference — parseTypeString returns null, so
80
+ // generate-lite should fall back to v.unknown() rather than
81
+ // attempting cross-file type resolution.
82
+ paramTypeText: "ArchiveParams"
83
+ }, {
84
+ name: "publish",
85
+ // primitive, should resolve
86
+ paramTypeText: "string"
75
87
  }],
76
- queries: []
77
- }
78
- },
79
- synced = generateLite({
80
- files,
81
- dir: DIR,
82
- parse: makeParse(fixtures)
83
- }).files["syncedMutations.ts"];
84
- expect(synced).toContain("archive: v.unknown()"), expect(synced).toContain("publish: v.string()");
85
- }), test("emits query files with v.unknown() fallback for references", () => {
88
+ schema: null
89
+ }],
90
+ queries: []
91
+ }
92
+ };
93
+ const result = generateLite({
94
+ files,
95
+ dir: DIR,
96
+ parse: makeParse(fixtures)
97
+ });
98
+ const synced = result.files["syncedMutations.ts"];
99
+ expect(synced).toContain("archive: v.unknown()");
100
+ expect(synced).toContain("publish: v.string()");
101
+ });
102
+ test("emits query files with v.unknown() fallback for references", () => {
86
103
  const files = {
87
- [`${DIR}/models/post.ts`]: "// fake",
88
- [`${DIR}/queries/post.ts`]: "// fake"
104
+ [`${DIR}/models/post.ts`]: "// fake",
105
+ [`${DIR}/queries/post.ts`]: "// fake"
106
+ };
107
+ const fixtures = {
108
+ [`${DIR}/models/post.ts`]: {
109
+ mutations: [],
110
+ queries: []
89
111
  },
90
- fixtures = {
91
- [`${DIR}/models/post.ts`]: {
92
- mutations: [],
93
- queries: []
112
+ [`${DIR}/queries/post.ts`]: {
113
+ mutations: [],
114
+ queries: [
115
+ // no-arg query → void
116
+ {
117
+ name: "allPosts",
118
+ paramTypeText: null
94
119
  },
95
- [`${DIR}/queries/post.ts`]: {
96
- mutations: [],
97
- queries: [
98
- // no-arg query void
99
- {
100
- name: "allPosts",
101
- paramTypeText: null
102
- },
103
- // inline object → real validator
104
- {
105
- name: "postById",
106
- paramTypeText: "{ id: string }"
107
- },
108
- // primitive
109
- {
110
- name: "byAuthorId",
111
- paramTypeText: "string"
112
- },
113
- // type reference → fallback
114
- {
115
- name: "filtered",
116
- paramTypeText: "PostFilter"
117
- },
118
- // permission should be skipped
119
- {
120
- name: "permission",
121
- paramTypeText: null
122
- }]
123
- }
124
- },
125
- result = generateLite({
126
- files,
127
- dir: DIR,
128
- parse: makeParse(fixtures)
129
- });
130
- expect(result.files["groupedQueries.ts"]).toBeDefined(), expect(result.files["syncedQueries.ts"]).toBeDefined();
120
+ // inline object → real validator
121
+ {
122
+ name: "postById",
123
+ paramTypeText: "{ id: string }"
124
+ },
125
+ // primitive
126
+ {
127
+ name: "byAuthorId",
128
+ paramTypeText: "string"
129
+ },
130
+ // type reference → fallback
131
+ {
132
+ name: "filtered",
133
+ paramTypeText: "PostFilter"
134
+ },
135
+ // permission should be skipped
136
+ {
137
+ name: "permission",
138
+ paramTypeText: null
139
+ }]
140
+ }
141
+ };
142
+ const result = generateLite({
143
+ files,
144
+ dir: DIR,
145
+ parse: makeParse(fixtures)
146
+ });
147
+ expect(result.files["groupedQueries.ts"]).toBeDefined();
148
+ expect(result.files["syncedQueries.ts"]).toBeDefined();
131
149
  const grouped = result.files["groupedQueries.ts"];
132
150
  expect(grouped).toContain("export * as post from '../queries/post'");
133
151
  const synced = result.files["syncedQueries.ts"];
134
- expect(synced).toContain("allPosts: defineQuery(() => Queries.post.allPosts())"), expect(synced).toContain("postById: defineQuery("), expect(synced).toContain("id: v.string()"), expect(synced).toContain("byAuthorId: defineQuery("), expect(synced).toMatch(/byAuthorId: defineQuery\(\s*v\.string\(\)/), expect(synced).toContain("filtered: defineQuery("), expect(synced).toMatch(/filtered: defineQuery\(\s*v\.unknown\(\)/), expect(synced).not.toContain("permission: defineQuery"), expect(result.queryCount).toBe(4);
135
- }), test("emits types.ts and tables.ts when a model declares a schema inline", () => {
152
+ expect(synced).toContain("allPosts: defineQuery(() => Queries.post.allPosts())");
153
+ expect(synced).toContain("postById: defineQuery(");
154
+ expect(synced).toContain("id: v.string()");
155
+ expect(synced).toContain("byAuthorId: defineQuery(");
156
+ expect(synced).toMatch(/byAuthorId: defineQuery\(\s*v\.string\(\)/);
157
+ expect(synced).toContain("filtered: defineQuery(");
158
+ expect(synced).toMatch(/filtered: defineQuery\(\s*v\.unknown\(\)/);
159
+ expect(synced).not.toContain("permission: defineQuery");
160
+ expect(result.queryCount).toBe(4);
161
+ });
162
+ test("emits types.ts and tables.ts when a model declares a schema inline", () => {
136
163
  const files = {
137
- [`${DIR}/models/task.ts`]: "// fake"
138
- },
139
- fixtures = {
140
- [`${DIR}/models/task.ts`]: {
141
- mutations: [{
142
- modelName: "task",
143
- handlers: [],
144
- schema: {
145
- tableName: "task",
146
- primaryKeys: ["id"],
147
- columns: [{
148
- name: "id",
149
- builderText: "string()"
150
- }, {
151
- name: "title",
152
- builderText: "string()"
153
- }, {
154
- name: "priority",
155
- builderText: "number()"
156
- }, {
157
- name: "done",
158
- builderText: "boolean()"
159
- }, {
160
- name: "note",
161
- builderText: "string().optional()"
162
- }]
163
- }
164
- }],
165
- queries: []
166
- }
167
- },
168
- result = generateLite({
169
- files,
170
- dir: DIR,
171
- parse: makeParse(fixtures)
172
- });
173
- expect(result.schemaCount).toBe(1), expect(result.files["types.ts"]).toBeDefined(), expect(result.files["tables.ts"]).toBeDefined();
164
+ [`${DIR}/models/task.ts`]: "// fake"
165
+ };
166
+ const fixtures = {
167
+ [`${DIR}/models/task.ts`]: {
168
+ mutations: [{
169
+ modelName: "task",
170
+ handlers: [],
171
+ schema: {
172
+ tableName: "task",
173
+ primaryKeys: ["id"],
174
+ columns: [{
175
+ name: "id",
176
+ builderText: "string()"
177
+ }, {
178
+ name: "title",
179
+ builderText: "string()"
180
+ }, {
181
+ name: "priority",
182
+ builderText: "number()"
183
+ }, {
184
+ name: "done",
185
+ builderText: "boolean()"
186
+ }, {
187
+ name: "note",
188
+ builderText: "string().optional()"
189
+ }]
190
+ }
191
+ }],
192
+ queries: []
193
+ }
194
+ };
195
+ const result = generateLite({
196
+ files,
197
+ dir: DIR,
198
+ parse: makeParse(fixtures)
199
+ });
200
+ expect(result.schemaCount).toBe(1);
201
+ expect(result.files["types.ts"]).toBeDefined();
202
+ expect(result.files["tables.ts"]).toBeDefined();
174
203
  const types = result.files["types.ts"];
175
204
  expect(types).toContain("export type Task = TableInsertRow<typeof schema.task>");
176
205
  const tables = result.files["tables.ts"];
177
206
  expect(tables).toContain("export { schema as task } from '../models/task'");
178
207
  const synced = result.files["syncedMutations.ts"];
179
- expect(synced).toContain("insert:"), expect(synced).toContain("update:"), expect(synced).toContain("delete:"), expect(result.mutationCount).toBe(3);
180
- }), test("ignores nested files and non-ts files inside the models directory", () => {
208
+ expect(synced).toContain("insert:");
209
+ expect(synced).toContain("update:");
210
+ expect(synced).toContain("delete:");
211
+ expect(result.mutationCount).toBe(3);
212
+ });
213
+ test("ignores nested files and non-ts files inside the models directory", () => {
181
214
  const files = {
182
- [`${DIR}/models/post.ts`]: "// fake",
183
- [`${DIR}/models/README.md`]: "not a model",
184
- [`${DIR}/models/helpers/util.ts`]: "nested should be ignored",
185
- [`${DIR}/models/post.d.ts`]: "declaration file, ignored"
186
- },
187
- fixtures = {
188
- [`${DIR}/models/post.ts`]: {
189
- mutations: [{
190
- modelName: "post",
191
- handlers: [],
192
- schema: null
193
- }],
194
- queries: []
195
- }
196
- },
197
- result = generateLite({
198
- files,
199
- dir: DIR,
200
- parse: makeParse(fixtures)
201
- });
215
+ [`${DIR}/models/post.ts`]: "// fake",
216
+ [`${DIR}/models/README.md`]: "not a model",
217
+ [`${DIR}/models/helpers/util.ts`]: "nested should be ignored",
218
+ [`${DIR}/models/post.d.ts`]: "declaration file, ignored"
219
+ };
220
+ const fixtures = {
221
+ [`${DIR}/models/post.ts`]: {
222
+ mutations: [{
223
+ modelName: "post",
224
+ handlers: [],
225
+ schema: null
226
+ }],
227
+ queries: []
228
+ }
229
+ };
230
+ const result = generateLite({
231
+ files,
232
+ dir: DIR,
233
+ parse: makeParse(fixtures)
234
+ });
202
235
  expect(result.modelCount).toBe(1);
203
236
  const models = result.files["models.ts"];
204
- expect(models).toContain("import * as post from '../models/post'"), expect(models).not.toContain("util"), expect(models).not.toContain("README");
205
- }), test("infers mutations/ directory when present", () => {
237
+ expect(models).toContain("import * as post from '../models/post'");
238
+ expect(models).not.toContain("util");
239
+ expect(models).not.toContain("README");
240
+ });
241
+ test("infers mutations/ directory when present", () => {
206
242
  const files = {
207
- [`${DIR}/mutations/post.ts`]: "// fake"
208
- },
209
- fixtures = {
210
- [`${DIR}/mutations/post.ts`]: {
211
- mutations: [{
212
- modelName: "post",
213
- handlers: [{
214
- name: "publish",
215
- paramTypeText: "{ id: string }"
216
- }],
217
- schema: null
243
+ [`${DIR}/mutations/post.ts`]: "// fake"
244
+ };
245
+ const fixtures = {
246
+ [`${DIR}/mutations/post.ts`]: {
247
+ mutations: [{
248
+ modelName: "post",
249
+ handlers: [{
250
+ name: "publish",
251
+ paramTypeText: "{ id: string }"
218
252
  }],
219
- queries: []
220
- }
221
- },
222
- models = generateLite({
223
- files,
224
- dir: DIR,
225
- parse: makeParse(fixtures)
226
- }).files["models.ts"];
253
+ schema: null
254
+ }],
255
+ queries: []
256
+ }
257
+ };
258
+ const result = generateLite({
259
+ files,
260
+ dir: DIR,
261
+ parse: makeParse(fixtures)
262
+ });
263
+ const models = result.files["models.ts"];
227
264
  expect(models).toContain("from '../mutations/post'");
228
265
  });
229
266
  });
@@ -1 +1 @@
1
- {"version":3,"names":["describe","expect","test","generateLite","makeParse","table","_src","path","entry","Error","DIR","files","fixtures","mutations","modelName","handlers","name","paramTypeText","schema","queries","result","dir","parse","Object","keys","sort","toEqual","models","toContain","syncedMutations","modelCount","toBe","schemaCount","mutationCount","synced","toBeDefined","grouped","toMatch","not","queryCount","tableName","primaryKeys","columns","builderText","types","tables"],"sources":["../../src/generate-lite.test.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["describe","expect","test","generateLite","makeParse","table","_src","path","entry","Error","DIR","files","fixtures","mutations","modelName","handlers","name","paramTypeText","schema","queries","result","dir","parse","Object","keys","sort","toEqual","models","toContain","syncedMutations","modelCount","toBe","schemaCount","mutationCount","synced","toBeDefined","grouped","toMatch","not","queryCount","tableName","primaryKeys","columns","builderText","types","tables"],"sources":["../../src/generate-lite.test.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}