on-zero 0.6.15 → 0.6.16

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 (134) hide show
  1. package/dist/cjs/asyncTasks.cjs +51 -0
  2. package/dist/cjs/asyncTasks.native.js +84 -0
  3. package/dist/cjs/asyncTasks.native.js.map +1 -0
  4. package/dist/cjs/cli.cjs +8 -1
  5. package/dist/cjs/cli.native.js +8 -1
  6. package/dist/cjs/cli.native.js.map +1 -1
  7. package/dist/cjs/createZeroDirectServer.cjs +20 -30
  8. package/dist/cjs/createZeroDirectServer.native.js +28 -33
  9. package/dist/cjs/createZeroDirectServer.native.js.map +1 -1
  10. package/dist/cjs/createZeroSQLiteServer.test.cjs +6 -6
  11. package/dist/cjs/createZeroSQLiteServer.test.native.js +6 -6
  12. package/dist/cjs/createZeroSQLiteServer.test.native.js.map +1 -1
  13. package/dist/cjs/createZeroServer.test.cjs +79 -1
  14. package/dist/cjs/createZeroServer.test.native.js +85 -1
  15. package/dist/cjs/createZeroServer.test.native.js.map +1 -1
  16. package/dist/cjs/createZeroServerCore.cjs +8 -3
  17. package/dist/cjs/createZeroServerCore.native.js +14 -5
  18. package/dist/cjs/createZeroServerCore.native.js.map +1 -1
  19. package/dist/cjs/generate.cjs +5 -2
  20. package/dist/cjs/generate.native.js +5 -2
  21. package/dist/cjs/generate.native.js.map +1 -1
  22. package/dist/cjs/generate.test.cjs +16 -0
  23. package/dist/cjs/generate.test.native.js +16 -0
  24. package/dist/cjs/generate.test.native.js.map +1 -1
  25. package/dist/cjs/helpers/createMutators.cjs +2 -2
  26. package/dist/cjs/helpers/createMutators.native.js +2 -2
  27. package/dist/cjs/helpers/createMutators.native.js.map +1 -1
  28. package/dist/cjs/index.cjs +1 -0
  29. package/dist/cjs/index.native.js +1 -0
  30. package/dist/cjs/index.native.js.map +1 -1
  31. package/dist/cjs/server.cjs +2 -1
  32. package/dist/cjs/syncHost.cjs +10 -3
  33. package/dist/cjs/syncHost.native.js +11 -4
  34. package/dist/cjs/syncHost.native.js.map +1 -1
  35. package/dist/cjs/syncHost.test.cjs +2 -2
  36. package/dist/cjs/syncHost.test.native.js +2 -2
  37. package/dist/cjs/syncHost.test.native.js.map +1 -1
  38. package/dist/cjs/vite-plugin.cjs +2 -1
  39. package/dist/cjs/vite-plugin.native.js +2 -1
  40. package/dist/cjs/vite-plugin.native.js.map +1 -1
  41. package/dist/esm/asyncTasks.mjs +26 -0
  42. package/dist/esm/asyncTasks.mjs.map +1 -0
  43. package/dist/esm/asyncTasks.native.js +56 -0
  44. package/dist/esm/asyncTasks.native.js.map +1 -0
  45. package/dist/esm/cli.mjs +8 -1
  46. package/dist/esm/cli.mjs.map +1 -1
  47. package/dist/esm/cli.native.js +8 -1
  48. package/dist/esm/cli.native.js.map +1 -1
  49. package/dist/esm/createZeroDirectServer.mjs +20 -30
  50. package/dist/esm/createZeroDirectServer.mjs.map +1 -1
  51. package/dist/esm/createZeroDirectServer.native.js +28 -33
  52. package/dist/esm/createZeroDirectServer.native.js.map +1 -1
  53. package/dist/esm/createZeroSQLiteServer.test.mjs +6 -6
  54. package/dist/esm/createZeroSQLiteServer.test.mjs.map +1 -1
  55. package/dist/esm/createZeroSQLiteServer.test.native.js +6 -6
  56. package/dist/esm/createZeroSQLiteServer.test.native.js.map +1 -1
  57. package/dist/esm/createZeroServer.test.mjs +80 -2
  58. package/dist/esm/createZeroServer.test.mjs.map +1 -1
  59. package/dist/esm/createZeroServer.test.native.js +86 -2
  60. package/dist/esm/createZeroServer.test.native.js.map +1 -1
  61. package/dist/esm/createZeroServerCore.mjs +8 -3
  62. package/dist/esm/createZeroServerCore.mjs.map +1 -1
  63. package/dist/esm/createZeroServerCore.native.js +14 -5
  64. package/dist/esm/createZeroServerCore.native.js.map +1 -1
  65. package/dist/esm/generate.mjs +5 -2
  66. package/dist/esm/generate.mjs.map +1 -1
  67. package/dist/esm/generate.native.js +5 -2
  68. package/dist/esm/generate.native.js.map +1 -1
  69. package/dist/esm/generate.test.mjs +16 -0
  70. package/dist/esm/generate.test.mjs.map +1 -1
  71. package/dist/esm/generate.test.native.js +16 -0
  72. package/dist/esm/generate.test.native.js.map +1 -1
  73. package/dist/esm/helpers/createMutators.mjs +2 -2
  74. package/dist/esm/helpers/createMutators.mjs.map +1 -1
  75. package/dist/esm/helpers/createMutators.native.js +2 -2
  76. package/dist/esm/helpers/createMutators.native.js.map +1 -1
  77. package/dist/esm/index.js +1 -0
  78. package/dist/esm/index.js.map +1 -1
  79. package/dist/esm/index.mjs +1 -0
  80. package/dist/esm/index.mjs.map +1 -1
  81. package/dist/esm/index.native.js +1 -0
  82. package/dist/esm/index.native.js.map +1 -1
  83. package/dist/esm/server.mjs +1 -0
  84. package/dist/esm/server.mjs.map +1 -1
  85. package/dist/esm/syncHost.mjs +10 -3
  86. package/dist/esm/syncHost.mjs.map +1 -1
  87. package/dist/esm/syncHost.native.js +11 -4
  88. package/dist/esm/syncHost.native.js.map +1 -1
  89. package/dist/esm/syncHost.test.mjs +2 -2
  90. package/dist/esm/syncHost.test.mjs.map +1 -1
  91. package/dist/esm/syncHost.test.native.js +2 -2
  92. package/dist/esm/syncHost.test.native.js.map +1 -1
  93. package/dist/esm/vite-plugin.mjs +2 -1
  94. package/dist/esm/vite-plugin.mjs.map +1 -1
  95. package/dist/esm/vite-plugin.native.js +2 -1
  96. package/dist/esm/vite-plugin.native.js.map +1 -1
  97. package/lint/ssr-guards.js +8 -7
  98. package/package.json +2 -2
  99. package/readme.md +13 -4
  100. package/src/asyncTasks.ts +33 -0
  101. package/src/cli.ts +7 -1
  102. package/src/createZeroDirectServer.ts +20 -36
  103. package/src/createZeroSQLiteServer.test.ts +8 -7
  104. package/src/createZeroServer.test.ts +86 -2
  105. package/src/createZeroServerCore.ts +7 -6
  106. package/src/generate.test.ts +18 -0
  107. package/src/generate.ts +7 -1
  108. package/src/helpers/createMutators.ts +3 -3
  109. package/src/helpers/mutatorContext.ts +1 -1
  110. package/src/index.ts +1 -0
  111. package/src/server.ts +2 -0
  112. package/src/syncHost.test.ts +2 -2
  113. package/src/syncHost.ts +6 -4
  114. package/src/types.ts +21 -3
  115. package/src/vite-plugin.ts +1 -0
  116. package/test-fixtures/server-return-types.ts +12 -1
  117. package/types/asyncTasks.d.ts +7 -0
  118. package/types/asyncTasks.d.ts.map +1 -0
  119. package/types/createZeroDirectServer.d.ts +3 -3
  120. package/types/createZeroDirectServer.d.ts.map +1 -1
  121. package/types/createZeroServerCore.d.ts +1 -1
  122. package/types/createZeroServerCore.d.ts.map +1 -1
  123. package/types/generate.d.ts +2 -0
  124. package/types/generate.d.ts.map +1 -1
  125. package/types/helpers/createMutators.d.ts +3 -3
  126. package/types/helpers/createMutators.d.ts.map +1 -1
  127. package/types/index.d.ts +1 -0
  128. package/types/index.d.ts.map +1 -1
  129. package/types/server.d.ts +2 -0
  130. package/types/server.d.ts.map +1 -1
  131. package/types/syncHost.d.ts.map +1 -1
  132. package/types/types.d.ts +18 -2
  133. package/types/types.d.ts.map +1 -1
  134. package/types/vite-plugin.d.ts.map +1 -1
@@ -1 +1 @@
1
- {"version":3,"names":["describe","expect","test","createZeroServer","zeroHttpFixtureSchema","FakePgClient","lastMutationID","pendingLastMutationID","mutationResultInserts","query","sql","params","rows","includes","nextMutationID","schemaRows","push","Error","table","columns","map","column","schema","dataType","length","precision","scale","typtype","typename","elemTyptype","elemTypname","pushRequest","mutationIDs","ids","Array","isArray","Request","method","headers","body","JSON","stringify","clientGroupID","mutations","mutationID","type","id","clientID","name","args","timestamp","pushVersion","requestID","join","pg","effectRuns","zeroServer","models","project","mutate","touch","server","asyncTasks","createServerActions","pool","result","handleMutationRequest","authData","request","skipAsyncTasks","response","toMatchObject","error","message","toEqual","toBe","first","duplicate","duplicateResult","details","mixed","results","mutation"],"sources":["../../src/createZeroServer.test.ts"],"sourcesContent":[null],"mappings":"AAAA,SAASA,QAAA,EAAUC,MAAA,EAAQC,IAAA,QAAY;AAEvC,SAASC,gBAAA,QAAwB;AACjC,SAASC,qBAAA,QAA6B;AAEtC,MAAMC,YAAA,CAAa;EACjBC,cAAA,GAAiB;EACjBC,qBAAA;EACAC,qBAAA,GAAqC,EAAC;EAEtC,MAAMC,MAAMC,GAAA,EAAaC,MAAA,GAAoB,EAAC,EAAG;IAC/C,IAAID,GAAA,KAAQ,SAAS;MACnB,KAAKH,qBAAA,GAAwB;MAC7B,OAAO;QAAEK,IAAA,EAAM;MAAG;IACpB;IAEA,IAAIF,GAAA,KAAQ,UAAU;MACpB,IAAI,KAAKH,qBAAA,KAA0B,QAAW;QAC5C,KAAKD,cAAA,GAAiB,KAAKC,qBAAA;MAC7B;MACA,KAAKA,qBAAA,GAAwB;MAC7B,OAAO;QAAEK,IAAA,EAAM;MAAG;IACpB;IAEA,IAAIF,GAAA,KAAQ,YAAY;MACtB,KAAKH,qBAAA,GAAwB;MAC7B,OAAO;QAAEK,IAAA,EAAM;MAAG;IACpB;IAEA,IAAIF,GAAA,CAAIG,QAAA,CAAS,UAAU,KAAKH,GAAA,CAAIG,QAAA,CAAS,4BAA4B,GAAG;MAC1E,MAAMC,cAAA,GAAiB,KAAKR,cAAA,GAAiB;MAC7C,KAAKC,qBAAA,GAAwBO,cAAA;MAC7B,OAAO;QAAEF,IAAA,EAAM,CAAC;UAAEN,cAAA,EAAgBQ;QAAe,CAAC;MAAE;IACtD;IAEA,IAAIJ,GAAA,CAAIG,QAAA,CAAS,4BAA4B,GAAG;MAC9C,OAAO;QACLD,IAAA,EAAM,CACJ,GAAGG,UAAA,CAAW,QAAQ,CAAC,MAAM,MAAM,CAAC,GACpC,GAAGA,UAAA,CAAW,WAAW,CAAC,MAAM,WAAW,MAAM,CAAC,GAClD,GAAGA,UAAA,CAAW,UAAU,CAAC,MAAM,aAAa,QAAQ,CAAC;MAEzD;IACF;IAEA,IACEL,GAAA,CAAIG,QAAA,CAAS,kCAAkC,KAC/CH,GAAA,CAAIG,QAAA,CAAS,gCAAgC,GAC7C;MACA,KAAKL,qBAAA,CAAsBQ,IAAA,CAAKL,MAAM;MACtC,OAAO;QAAEC,IAAA,EAAM;MAAG;IACpB;IAEA,MAAM,IAAIK,KAAA,CAAM,6BAA6BP,GAAG,EAAE;EACpD;AACF;AAEA,SAASK,WAAWG,KAAA,EAAeC,OAAA,EAAmB;EACpD,OAAOA,OAAA,CAAQC,GAAA,CAAKC,MAAA,KAAY;IAC9BC,MAAA,EAAQ;IACRJ,KAAA;IACAG,MAAA;IACAE,QAAA,EAAU;IACVC,MAAA,EAAQ;IACRC,SAAA,EAAW;IACXC,KAAA,EAAO;IACPC,OAAA,EAAS;IACTC,QAAA,EAAU;IACVC,WAAA,EAAa;IACbC,WAAA,EAAa;EACf,EAAE;AACJ;AAEA,SAASC,YAAYC,WAAA,EAAgC;EACnD,MAAMC,GAAA,GAAMC,KAAA,CAAMC,OAAA,CAAQH,WAAW,IAAIA,WAAA,GAAc,CAACA,WAAW;EACnE,OAAO,IAAII,OAAA,CAAQ,kDAAkD;IACnEC,MAAA,EAAQ;IACRC,OAAA,EAAS;MAAE,gBAAgB;IAAmB;IAC9CC,IAAA,EAAMC,IAAA,CAAKC,SAAA,CAAU;MACnBC,aAAA,EAAe;MACfC,SAAA,EAAWV,GAAA,CAAIb,GAAA,CAAKwB,UAAA,KAAgB;QAClCC,IAAA,EAAM;QACNC,EAAA,EAAIF,UAAA;QACJG,QAAA,EAAU;QACVC,IAAA,EAAM;QACNC,IAAA,EAAM,CAAC,CAAC,CAAC;QACTC,SAAA,EAAW;MACb,EAAE;MACFC,WAAA,EAAa;MACbD,SAAA,EAAW;MACXE,SAAA,EAAW,OAAOnB,GAAA,CAAIoB,IAAA,CAAK,GAAG,CAAC;IACjC,CAAC;EACH,CAAC;AACH;AAEArD,QAAA,CAAS,sCAAsC,MAAM;EACnDE,IAAA,CAAK,+DAA+D,YAAY;IAC9E,MAAMoD,EAAA,GAAK,IAAIjD,YAAA,CAAa;IAC5B,IAAIkD,UAAA,GAAa;IACjB,MAAMC,UAAA,GAAarD,gBAAA,CAAiB;MAClCmB,MAAA,EAAQlB,qBAAA;MACRqD,MAAA,EAAQ;QACNC,OAAA,EAAS;UACPC,MAAA,EAAQ;YACNC,KAAA,EAAO,MAAAA,CAAO;cAAEC;YAAO,MAAM;cAC3BA,MAAA,EAAQC,UAAA,CAAW9C,IAAA,CAAK,YAAY;gBAClCuC,UAAA;cACF,CAAC;cACD,MAAM,IAAItC,KAAA,CAAM,UAAU;YAC5B;UACF;QACF;MACF;MACA8C,mBAAA,EAAqBA,CAAA,MAAO,CAAC;MAC7BC,IAAA,EAAMV;IACR,CAAC;IAED,MAAMW,MAAA,GAAS,MAAMT,UAAA,CAAWU,qBAAA,CAAsB;MACpDC,QAAA,EAAU;MACVC,OAAA,EAASrC,WAAA,CAAY,CAAC;MACtBsC,cAAA,EAAgB;IAClB,CAAC;IAEDpE,MAAA,CAAQgE,MAAA,CAAOK,QAAA,CAAiB3B,SAAA,CAAU,CAAC,EAAEsB,MAAM,EAAEM,aAAA,CAAc;MACjEC,KAAA,EAAO;MACPC,OAAA,EAAS;IACX,CAAC;IACDxE,MAAA,CAAOgE,MAAA,CAAOH,UAAU,EAAEY,OAAA,CAAQ,EAAE;IACpCzE,MAAA,CAAOsD,UAAU,EAAEoB,IAAA,CAAK,CAAC;EAC3B,CAAC;EAEDzE,IAAA,CAAK,4EAA4E,YAAY;IAC3F,MAAMoD,EAAA,GAAK,IAAIjD,YAAA,CAAa;IAC5B,MAAMmD,UAAA,GAAarD,gBAAA,CAAiB;MAClCmB,MAAA,EAAQlB,qBAAA;MACRqD,MAAA,EAAQ;QACNC,OAAA,EAAS;UACPC,MAAA,EAAQ;YACNC,KAAA,EAAO,MAAAA,CAAA,KAAY,CAAC;UACtB;QACF;MACF;MACAG,mBAAA,EAAqBA,CAAA,MAAO,CAAC;MAC7BC,IAAA,EAAMV;IACR,CAAC;IAED,MAAMsB,KAAA,GAAQ,MAAMpB,UAAA,CAAWU,qBAAA,CAAsB;MACnDC,QAAA,EAAU;MACVC,OAAA,EAASrC,WAAA,CAAY,CAAC;IACxB,CAAC;IAED9B,MAAA,CAAQ2E,KAAA,CAAMN,QAAA,CAAiB3B,SAAA,CAAU,CAAC,EAAEsB,MAAM,EAAES,OAAA,CAAQ,CAAC,CAAC;IAC9DzE,MAAA,CAAOqD,EAAA,CAAGhD,cAAc,EAAEqE,IAAA,CAAK,CAAC;IAChC1E,MAAA,CAAOqD,EAAA,CAAG9C,qBAAqB,EAAEkE,OAAA,CAAQ,EAAE;IAE3C,MAAMG,SAAA,GAAY,MAAMrB,UAAA,CAAWU,qBAAA,CAAsB;MACvDC,QAAA,EAAU;MACVC,OAAA,EAASrC,WAAA,CAAY,CAAC;IACxB,CAAC;IAED,MAAM+C,eAAA,GAAmBD,SAAA,CAAUP,QAAA,CAAiB3B,SAAA,CAAU,CAAC,EAAEsB,MAAA;IACjEhE,MAAA,CAAO6E,eAAA,CAAgBN,KAAK,EAAEG,IAAA,CAAK,kBAAkB;IACrD1E,MAAA,CAAOqD,EAAA,CAAGhD,cAAc,EAAEqE,IAAA,CAAK,CAAC;IAChC1E,MAAA,CAAOqD,EAAA,CAAG9C,qBAAqB,EAAEkE,OAAA,CAAQ,CACvC,CACE,OACA,YACA,GACAlC,IAAA,CAAKC,SAAA,CAAU;MACb+B,KAAA,EAAO;MACPO,OAAA,EAASD,eAAA,CAAgBC;IAC3B,CAAC,EACH,CACD;EACH,CAAC;EAED7E,IAAA,CAAK,mEAAmE,YAAY;IAClF,MAAMoD,EAAA,GAAK,IAAIjD,YAAA,CAAa;IAC5B,MAAMmD,UAAA,GAAarD,gBAAA,CAAiB;MAClCmB,MAAA,EAAQlB,qBAAA;MACRqD,MAAA,EAAQ;QACNC,OAAA,EAAS;UACPC,MAAA,EAAQ;YACNC,KAAA,EAAO,MAAAA,CAAA,KAAY,CAAC;UACtB;QACF;MACF;MACAG,mBAAA,EAAqBA,CAAA,MAAO,CAAC;MAC7BC,IAAA,EAAMV;IACR,CAAC;IAED,MAAME,UAAA,CAAWU,qBAAA,CAAsB;MACrCC,QAAA,EAAU;MACVC,OAAA,EAASrC,WAAA,CAAY,CAAC;IACxB,CAAC;IAED,MAAMiD,KAAA,GAAQ,MAAMxB,UAAA,CAAWU,qBAAA,CAAsB;MACnDC,QAAA,EAAU;MACVC,OAAA,EAASrC,WAAA,CAAY,CAAC,GAAG,CAAC,CAAC;IAC7B,CAAC;IAED,MAAMkD,OAAA,GAAWD,KAAA,CAAMV,QAAA,CAAiB3B,SAAA,CAAUvB,GAAA,CAAK8D,QAAA,KAAmB;MACxEpC,EAAA,EAAIoC,QAAA,CAASpC,EAAA,CAAGA,EAAA;MAChBmB,MAAA,EAAQiB,QAAA,CAASjB;IACnB,EAAE;IACFhE,MAAA,CAAOgF,OAAA,CAAQ,CAAC,EAAEhB,MAAA,CAAOO,KAAK,EAAEG,IAAA,CAAK,kBAAkB;IACvD1E,MAAA,CAAOgF,OAAA,CAAQ,CAAC,CAAC,EAAEP,OAAA,CAAQ;MAAE5B,EAAA,EAAI;MAAGmB,MAAA,EAAQ,CAAC;IAAE,CAAC;IAChDhE,MAAA,CAAOqD,EAAA,CAAGhD,cAAc,EAAEqE,IAAA,CAAK,CAAC;IAChC1E,MAAA,CAAOqD,EAAA,CAAG9C,qBAAqB,EAAEkE,OAAA,CAAQ,CACvC,CACE,OACA,YACA,GACAlC,IAAA,CAAKC,SAAA,CAAU;MACb+B,KAAA,EAAO;MACPO,OAAA,EAASE,OAAA,CAAQ,CAAC,EAAEhB,MAAA,CAAOc;IAC7B,CAAC,EACH,CACD;EACH,CAAC;AACH,CAAC","ignoreList":[]}
1
+ {"version":3,"names":["describe","expect","test","vi","createZeroServer","zeroHttpFixtureSchema","FakePgClient","lastMutationID","pendingLastMutationID","mutationResultInserts","query","sql","params","rows","includes","nextMutationID","schemaRows","push","Error","table","columns","map","column","schema","dataType","length","precision","scale","typtype","typename","elemTyptype","elemTypname","pushRequest","mutationIDs","ids","Array","isArray","Request","method","headers","body","JSON","stringify","clientGroupID","mutations","mutationID","type","id","clientID","name","args","timestamp","pushVersion","requestID","join","pg","effectRuns","zeroServer","models","project","mutate","touch","server","enqueueTask","createServerActions","pool","result","handleMutationRequest","authData","request","skipAsyncTasks","response","toMatchObject","error","message","asyncTasks","toEqual","toBe","releaseBarrier","markBarrierStarted","barrierStarted","Promise","resolve","barrier","responseResolved","resultPromise","then","result2","consoleError","spyOn","console","mockImplementation","waitFor","toHaveBeenCalledWith","mockRestore","first","duplicate","duplicateResult","details","mixed","results","mutation"],"sources":["../../src/createZeroServer.test.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
@@ -1,4 +1,4 @@
1
- import { describe, expect, test } from "vitest";
1
+ import { describe, expect, test, vi } from "vitest";
2
2
  import { createZeroServer } from "./createZeroServer.native.js";
3
3
  import { zeroHttpFixtureSchema } from "./httpPull/fixtureSchema.native.js";
4
4
  function _class_call_check(instance, Constructor) {
@@ -147,7 +147,7 @@ describe("createZeroServer mutation recovery", function () {
147
147
  var {
148
148
  server
149
149
  } = param;
150
- server === null || server === void 0 ? void 0 : server.asyncTasks.push(async function () {
150
+ server === null || server === void 0 ? void 0 : server.enqueueTask(async function () {
151
151
  effectRuns++;
152
152
  });
153
153
  throw new Error("rejected");
@@ -172,6 +172,90 @@ describe("createZeroServer mutation recovery", function () {
172
172
  expect(result.asyncTasks).toEqual([]);
173
173
  expect(effectRuns).toBe(0);
174
174
  });
175
+ test("awaits barrier tasks before resolving the push response", async function () {
176
+ var pg = new FakePgClient();
177
+ var releaseBarrier;
178
+ var markBarrierStarted;
179
+ var barrierStarted = new Promise(function (resolve) {
180
+ markBarrierStarted = resolve;
181
+ });
182
+ var barrier = new Promise(function (resolve) {
183
+ releaseBarrier = resolve;
184
+ });
185
+ var zeroServer = createZeroServer({
186
+ schema: zeroHttpFixtureSchema,
187
+ models: {
188
+ project: {
189
+ mutate: {
190
+ touch: async function (param) {
191
+ var {
192
+ server
193
+ } = param;
194
+ server === null || server === void 0 ? void 0 : server.enqueueTask(async function () {
195
+ markBarrierStarted();
196
+ await barrier;
197
+ }, {
198
+ barrier: true
199
+ });
200
+ }
201
+ }
202
+ }
203
+ },
204
+ createServerActions: function () {
205
+ return {};
206
+ },
207
+ pool: pg
208
+ });
209
+ var responseResolved = false;
210
+ var resultPromise = zeroServer.handleMutationRequest({
211
+ authData: null,
212
+ request: pushRequest(1)
213
+ }).then(function (result2) {
214
+ responseResolved = true;
215
+ return result2;
216
+ });
217
+ await barrierStarted;
218
+ await Promise.resolve();
219
+ expect(responseResolved).toBe(false);
220
+ releaseBarrier();
221
+ var result = await resultPromise;
222
+ expect(result.response.mutations[0].result).toEqual({});
223
+ });
224
+ test("does not fail the push when a background task rejects", async function () {
225
+ var pg = new FakePgClient();
226
+ var error = new Error("background failed");
227
+ var consoleError = vi.spyOn(console, "error").mockImplementation(function () {});
228
+ var zeroServer = createZeroServer({
229
+ schema: zeroHttpFixtureSchema,
230
+ models: {
231
+ project: {
232
+ mutate: {
233
+ touch: async function (param) {
234
+ var {
235
+ server
236
+ } = param;
237
+ server === null || server === void 0 ? void 0 : server.enqueueTask(async function () {
238
+ throw error;
239
+ });
240
+ }
241
+ }
242
+ }
243
+ },
244
+ createServerActions: function () {
245
+ return {};
246
+ },
247
+ pool: pg
248
+ });
249
+ var result = await zeroServer.handleMutationRequest({
250
+ authData: null,
251
+ request: pushRequest(1)
252
+ });
253
+ expect(result.response.mutations[0].result).toEqual({});
254
+ await vi.waitFor(function () {
255
+ expect(consoleError).toHaveBeenCalledWith("[on-zero] async task failed", error);
256
+ });
257
+ consoleError.mockRestore();
258
+ });
175
259
  test("persists alreadyProcessed duplicate results for zero-cache recovery rows", async function () {
176
260
  var pg = new FakePgClient();
177
261
  var zeroServer = createZeroServer({
@@ -1 +1 @@
1
- {"version":3,"names":["describe","expect","test","createZeroServer","zeroHttpFixtureSchema","_class_call_check","instance","Constructor","TypeError","_defineProperties","target","props","i","length","descriptor","enumerable","configurable","writable","Object","defineProperty","key","_create_class","protoProps","staticProps","prototype","_define_property","obj","value","FakePgClient","FakePgClient2","query","sql","params","arguments","pendingLastMutationID","rows","lastMutationID","includes","nextMutationID","schemaRows","mutationResultInserts","push","Error","table","columns","map","column","schema","dataType","precision","scale","typtype","typename","elemTyptype","elemTypname","pushRequest","mutationIDs","ids","Array","isArray","Request","method","headers","body","JSON","stringify","clientGroupID","mutations","mutationID","type","id","clientID","name","args","timestamp","pushVersion","requestID","join","pg","effectRuns","zeroServer","models","project","mutate","touch","param","server","asyncTasks","createServerActions","pool","result","handleMutationRequest","authData","request","skipAsyncTasks","response","toMatchObject","error","message","toEqual","toBe"],"sources":["../../src/createZeroServer.test.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["describe","expect","test","vi","createZeroServer","zeroHttpFixtureSchema","_class_call_check","instance","Constructor","TypeError","_defineProperties","target","props","i","length","descriptor","enumerable","configurable","writable","Object","defineProperty","key","_create_class","protoProps","staticProps","prototype","_define_property","obj","value","FakePgClient","FakePgClient2","query","sql","params","arguments","pendingLastMutationID","rows","lastMutationID","includes","nextMutationID","schemaRows","mutationResultInserts","push","Error","table","columns","map","column","schema","dataType","precision","scale","typtype","typename","elemTyptype","elemTypname","pushRequest","mutationIDs","ids","Array","isArray","Request","method","headers","body","JSON","stringify","clientGroupID","mutations","mutationID","type","id","clientID","name","args","timestamp","pushVersion","requestID","join","pg","effectRuns","zeroServer","models","project","mutate","touch","param","server","enqueueTask","createServerActions","pool","result","handleMutationRequest","authData","request","skipAsyncTasks","response","toMatchObject","error","message","asyncTasks","toEqual","toBe","releaseBarrier","markBarrierStarted","barrierStarted","Promise","resolve","barrier","responseResolved","resultPromise","then","result2","consoleError","spyOn","console","mockImplementation","waitFor","toHaveBeenCalledWith"],"sources":["../../src/createZeroServer.test.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
@@ -1,4 +1,5 @@
1
1
  import { PushProcessor, handleQueryRequest as zeroHandleQueryRequest } from "@rocicorp/zero/server";
2
+ import { runAsyncTaskEntries } from "./asyncTasks.mjs";
2
3
  import { createAsyncTaskCollector, createZeroDirectServerRuntime, resolveServerQuery } from "./createZeroDirectServer.mjs";
3
4
  import { createMutators } from "./helpers/createMutators.mjs";
4
5
  import { runWithAuthScope } from "./helpers/mutatorContext.mjs";
@@ -39,7 +40,7 @@ function createZeroServerCore({
39
40
  const tasks = createAsyncTaskCollector();
40
41
  const recoveryRequest = request.clone();
41
42
  const mutators = createMutators({
42
- asyncTasks: tasks.queue,
43
+ enqueueTask: tasks.enqueueTask,
43
44
  can: permissions.can,
44
45
  createServerActions,
45
46
  environment: "server",
@@ -55,8 +56,12 @@ function createZeroServerCore({
55
56
  if (parsed) await persistAlreadyProcessed(parsed);
56
57
  }
57
58
  if (!skipAsyncTasks && tasks.committed.length) {
58
- Promise.all(tasks.committed.map(task => runWithAuthScope(authData, task))).catch(err => {
59
- console.error("[push] async tasks failed", err);
59
+ const entries = tasks.committed.map(entry => ({
60
+ ...entry,
61
+ task: () => runWithAuthScope(authData, entry.task)
62
+ }));
63
+ await runAsyncTaskEntries(entries, {
64
+ background: () => void 0
60
65
  });
61
66
  }
62
67
  return {
@@ -1 +1 @@
1
- {"version":3,"names":["PushProcessor","handleQueryRequest","zeroHandleQueryRequest","createAsyncTaskCollector","createZeroDirectServerRuntime","resolveServerQuery","createMutators","runWithAuthScope","runWithQueryContext","createZeroServerCore","createDatabase","createServerActions","defaultAllowAdminRole","defaultMutateAuthData","models","mutations","mutationValidators","persistAlreadyProcessed","queries","schema","validateMutation","validateQuery","permissions","server","handleMutationRequest","authData","request","skipAsyncTasks","tasks","recoveryRequest","clone","mutators","asyncTasks","queue","can","environment","processor","withTransactionLifecycle","lifecycle","response","process","parsed","parseAlreadyProcessed","committed","length","Promise","all","map","task","catch","err","console","error","Error","handler","name","args","userID","id","database","transaction","callback","input","value","tx","hooks","beginAttempt","result","completeAttempt","rollbackAttempt","commitTransaction","rollbackTransaction","alreadyProcessedMutations","upstreamSchema","URL","url","searchParams","get","body","json","clientGroupID","Array","isArray","filter","mutation","clientID"],"sources":["../../src/createZeroServerCore.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["PushProcessor","handleQueryRequest","zeroHandleQueryRequest","runAsyncTaskEntries","createAsyncTaskCollector","createZeroDirectServerRuntime","resolveServerQuery","createMutators","runWithAuthScope","runWithQueryContext","createZeroServerCore","createDatabase","createServerActions","defaultAllowAdminRole","defaultMutateAuthData","models","mutations","mutationValidators","persistAlreadyProcessed","queries","schema","validateMutation","validateQuery","permissions","server","handleMutationRequest","authData","request","skipAsyncTasks","tasks","recoveryRequest","clone","mutators","enqueueTask","can","environment","processor","withTransactionLifecycle","lifecycle","response","process","parsed","parseAlreadyProcessed","committed","length","entries","map","entry","task","background","asyncTasks","Error","handler","name","args","userID","id","database","transaction","callback","input","value","tx","hooks","beginAttempt","result","completeAttempt","error","rollbackAttempt","commitTransaction","rollbackTransaction","alreadyProcessedMutations","upstreamSchema","URL","url","searchParams","get","body","json","clientGroupID","Array","isArray","filter","mutation","clientID"],"sources":["../../src/createZeroServerCore.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
@@ -1,4 +1,5 @@
1
1
  import { PushProcessor, handleQueryRequest as zeroHandleQueryRequest } from "@rocicorp/zero/server";
2
+ import { runAsyncTaskEntries } from "./asyncTasks.native.js";
2
3
  import { createAsyncTaskCollector, createZeroDirectServerRuntime, resolveServerQuery } from "./createZeroDirectServer.native.js";
3
4
  import { createMutators } from "./helpers/createMutators.native.js";
4
5
  import { runWithAuthScope } from "./helpers/mutatorContext.native.js";
@@ -46,7 +47,7 @@ function createZeroServerCore(param) {
46
47
  var tasks = createAsyncTaskCollector();
47
48
  var recoveryRequest = request.clone();
48
49
  var mutators = createMutators({
49
- asyncTasks: tasks.queue,
50
+ enqueueTask: tasks.enqueueTask,
50
51
  can: permissions.can,
51
52
  createServerActions,
52
53
  environment: "server",
@@ -62,10 +63,18 @@ function createZeroServerCore(param) {
62
63
  if (parsed) await persistAlreadyProcessed(parsed);
63
64
  }
64
65
  if (!skipAsyncTasks && tasks.committed.length) {
65
- Promise.all(tasks.committed.map(function (task) {
66
- return runWithAuthScope(authData, task);
67
- })).catch(function (err) {
68
- console.error("[push] async tasks failed", err);
66
+ var entries = tasks.committed.map(function (entry) {
67
+ return {
68
+ ...entry,
69
+ task: function () {
70
+ return runWithAuthScope(authData, entry.task);
71
+ }
72
+ };
73
+ });
74
+ await runAsyncTaskEntries(entries, {
75
+ background: function () {
76
+ return void 0;
77
+ }
69
78
  });
70
79
  }
71
80
  return {
@@ -1 +1 @@
1
- {"version":3,"names":["PushProcessor","handleQueryRequest","zeroHandleQueryRequest","createAsyncTaskCollector","createZeroDirectServerRuntime","resolveServerQuery","createMutators","runWithAuthScope","runWithQueryContext","_type_of","obj","Symbol","constructor","createZeroServerCore","param","createDatabase","createServerActions","defaultAllowAdminRole","defaultMutateAuthData","models","mutations","mutationValidators","persistAlreadyProcessed","queries","schema","validateMutation","validateQuery","permissions","server","handleMutationRequest","param2","authData","request","skipAsyncTasks","tasks","recoveryRequest","clone","mutators","asyncTasks","queue","can","environment","processor","withTransactionLifecycle","lifecycle","response","process","parsed","parseAlreadyProcessed","committed","length","Promise","all","map","task","catch","err","console","error","Error","handler","name","args","userID","id","database","transaction","callback","input","value","tx","hooks","beginAttempt","result","completeAttempt","rollbackAttempt","commitTransaction","rollbackTransaction","alreadyProcessedMutations","upstreamSchema","URL","url","searchParams","get","body","json","clientGroupID","Array","isArray","filter","mutation","clientID"],"sources":["../../src/createZeroServerCore.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["PushProcessor","handleQueryRequest","zeroHandleQueryRequest","runAsyncTaskEntries","createAsyncTaskCollector","createZeroDirectServerRuntime","resolveServerQuery","createMutators","runWithAuthScope","runWithQueryContext","_type_of","obj","Symbol","constructor","createZeroServerCore","param","createDatabase","createServerActions","defaultAllowAdminRole","defaultMutateAuthData","models","mutations","mutationValidators","persistAlreadyProcessed","queries","schema","validateMutation","validateQuery","permissions","server","handleMutationRequest","param2","authData","request","skipAsyncTasks","tasks","recoveryRequest","clone","mutators","enqueueTask","can","environment","processor","withTransactionLifecycle","lifecycle","response","process","parsed","parseAlreadyProcessed","committed","length","entries","map","entry","task","background","asyncTasks","Error","handler","name","args","userID","id","database","transaction","callback","input","value","tx","hooks","beginAttempt","result","completeAttempt","error","rollbackAttempt","commitTransaction","rollbackTransaction","alreadyProcessedMutations","upstreamSchema","URL","url","searchParams","get","body","json","clientGroupID","Array","isArray","filter","mutation","clientID"],"sources":["../../src/createZeroServerCore.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
@@ -3,6 +3,7 @@ import { existsSync, mkdirSync, readFileSync, readdirSync, writeFileSync } from
3
3
  import { basename, dirname, resolve } from "node:path";
4
4
  import { formatObjectKey, generateGroupedQueriesFile, generateModelsFile, generateReadmeFile, generateSyncedMutationsFile, generateSyncedQueriesFile, generateTablesFile, generateTypesFile, parseColumnType, parseTypeString, shouldSkipObjectKey } from "./generate-helpers.mjs";
5
5
  const hash = s => createHash("sha256").update(s).digest("hex");
6
+ const GENERATOR_CACHE_VERSION = "1";
6
7
  const isGeneratorSourceFile = name => name.endsWith(".ts") && !name.endsWith(".d.ts") && !name.endsWith(".test.ts") && !name.endsWith(".spec.ts");
7
8
  function hashInputTree(baseDir, generatedDir) {
8
9
  const parts = [];
@@ -513,7 +514,8 @@ async function generate(options) {
513
514
  const {
514
515
  dir,
515
516
  after,
516
- silent
517
+ silent,
518
+ force
517
519
  } = options;
518
520
  const baseDir = resolve(dir);
519
521
  const mutationsDir = resolve(baseDir, "mutations");
@@ -529,7 +531,7 @@ async function generate(options) {
529
531
  }
530
532
  loadCache();
531
533
  const inputHash = hashInputTree(baseDir, generatedDir);
532
- if (generateCache.__inputHash === inputHash && existsSync(resolve(generatedDir, "models.ts"))) {
534
+ if (!force && generateCache.__generatorVersion === GENERATOR_CACHE_VERSION && generateCache.__inputHash === inputHash && existsSync(resolve(generatedDir, "models.ts"))) {
533
535
  let counts = {};
534
536
  try {
535
537
  counts = JSON.parse(generateCache.__counts || "{}");
@@ -726,6 +728,7 @@ async function generate(options) {
726
728
  if (!silent) console.error(`Error running after command: ${err}`);
727
729
  }
728
730
  }
731
+ generateCache.__generatorVersion = GENERATOR_CACHE_VERSION;
729
732
  generateCache.__inputHash = inputHash;
730
733
  generateCache.__counts = JSON.stringify({
731
734
  modelCount: allModelFiles.length,
@@ -1 +1 @@
1
- {"version":3,"names":["createHash","existsSync","mkdirSync","readFileSync","readdirSync","writeFileSync","basename","dirname","resolve","formatObjectKey","generateGroupedQueriesFile","generateModelsFile","generateReadmeFile","generateSyncedMutationsFile","generateSyncedQueriesFile","generateTablesFile","generateTypesFile","parseColumnType","parseTypeString","shouldSkipObjectKey","hash","s","update","digest","isGeneratorSourceFile","name","endsWith","hashInputTree","baseDir","generatedDir","parts","walk","dir","entries","withFileTypes","sort","a","b","entry","full","isDirectory","isFile","push","join","generateCache","generateCachePath","getCacheDir","process","cwd","nm","cacheDir","recursive","loadCache","JSON","parse","saveCache","stringify","writeFileIfChanged","filePath","content","contentHash","cachedHash","createTypeResolver","ts","files","configPath","findConfigFile","sys","fileExists","compilerOptions","target","ScriptTarget","Latest","module","ModuleKind","ESNext","moduleResolution","ModuleResolutionKind","Bundler","strict","skipLibCheck","noEmit","configFile","readConfigFile","readFile","config","parsed","parseJsonConfigFileContent","options","fileMap","Map","f","set","path","host","createCompilerHost","originalGetSourceFile","getSourceFile","bind","fileName","languageVersion","onError","get","createSourceFile","has","program","createProgram","map","checker","getTypeChecker","resolveType","node","getTypeFromTypeNode","typeToValibot","type","tsTypeToValibot","resolveParamType","resolver","sourceFile","exportName","paramIndex","result","forEachChild","isVariableStatement","modifiers","some","m","kind","SyntaxKind","ExportKeyword","decl","declarationList","declarations","isVariableDeclaration","getText","initializer","isArrowFunction","param","parameters","resolveMutationParamTypes","resolved","isCallExpression","args","arguments","handlersArg","i","length","isObjectLiteralExpression","prop","properties","isPropertyAssignment","isMethodDeclaration","params","init","isFunctionExpression","typeNode","expanded","extractMutationsFromModel","silent","resolvedTypes","resolvedTypeToValibot","mutateNode","modelName","hasCRUD","columns","primaryKeys","custom","call","firstArg","hasNamedModel","Boolean","isStringLiteralLike","extractSchemaColumns","paramType","valibotCode","secondParam","resolvedType","visit","text","expression","arg","isStringLiteral","obj","colName","initText","colType","getInstantiatedPropertyType","parent","resolveProperty","Reflect","apply","seen","Set","flags","getFlags","TypeFlags","Object","Intersection","add","recurse","t","String","Number","Void","Undefined","Null","Any","Unknown","Never","TemplateLiteral","isArrayType","isArrayLikeType","typeArgs","getTypeArguments","elementType","getNumberIndexType","StringLiteral","value","NumberLiteral","BooleanLiteral","intrinsicName","isUnion","members","types","hasNull","hasUndefined","rest","filter","every","inner2","inner","resolveSymbolType","instantiated","getName","valueDeclaration","getTypeOfSymbolAtLocation","getDeclaredTypeOfSymbol","isIntersection","props2","getProperties","propType","isOptional","SymbolFlags","Optional","val","startsWith","props","objectFlags","ObjectFlags","Reference","typeRef","symbol","getSymbol","typeArguments","Tuple","stringIndex","getStringIndexType","numberIndex","serializeColumnBuilder","col","zeroType","expr","serverName","optional","generateDrizzleSchemaFile","schema","lines","tableNames","keys","tables","tableName","colEntries","pkArgs","primaryKey","k","tableSource","relTableNames","relationships","rels","relEntries","relBody","relName","hops","hop","fn2","cardinality","sf","sourceField","df","destField","destSchema","Error","fn","hopCode","tableList","n","relList","generate","after","mutationsDir","usesMutationsDir","modelsDir","modelsDirName","queriesDir","inputHash","__inputHash","counts","__counts","filesChanged","modelCount","schemaCount","queryCount","mutationCount","allModelFiles","filesWithSchema","includes","allModelNames","schemaModelNames","writeResults","trim","queryFiles","allQueries","queryResolver","getQueryResolver","allFiles","file","fileBaseName","exportModifier","find","declaration","resolverSourceFile","console","error","err","groupedChanged","syncedChanged","allModelMutations","mutationFiles","unresolvedModels","baseName","hasUnresolved","collectTsFiles","dir2","results","fullPath","modelResolver","size","idx","findIndex","model","mutationsChanged","info","execSync","stdio","env","ON_ZERO_GENERATED_DIR","watch","debounce","chokidar","debounceTimer","debouncedRegenerate","event","clearTimeout","setTimeout","watcher","persistent","ignoreInitial","ignored","on"],"sources":["../../src/generate.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["createHash","existsSync","mkdirSync","readFileSync","readdirSync","writeFileSync","basename","dirname","resolve","formatObjectKey","generateGroupedQueriesFile","generateModelsFile","generateReadmeFile","generateSyncedMutationsFile","generateSyncedQueriesFile","generateTablesFile","generateTypesFile","parseColumnType","parseTypeString","shouldSkipObjectKey","hash","s","update","digest","GENERATOR_CACHE_VERSION","isGeneratorSourceFile","name","endsWith","hashInputTree","baseDir","generatedDir","parts","walk","dir","entries","withFileTypes","sort","a","b","entry","full","isDirectory","isFile","push","join","generateCache","generateCachePath","getCacheDir","process","cwd","nm","cacheDir","recursive","loadCache","JSON","parse","saveCache","stringify","writeFileIfChanged","filePath","content","contentHash","cachedHash","createTypeResolver","ts","files","configPath","findConfigFile","sys","fileExists","compilerOptions","target","ScriptTarget","Latest","module","ModuleKind","ESNext","moduleResolution","ModuleResolutionKind","Bundler","strict","skipLibCheck","noEmit","configFile","readConfigFile","readFile","config","parsed","parseJsonConfigFileContent","options","fileMap","Map","f","set","path","host","createCompilerHost","originalGetSourceFile","getSourceFile","bind","fileName","languageVersion","onError","get","createSourceFile","has","program","createProgram","map","checker","getTypeChecker","resolveType","node","getTypeFromTypeNode","typeToValibot","type","tsTypeToValibot","resolveParamType","resolver","sourceFile","exportName","paramIndex","result","forEachChild","isVariableStatement","modifiers","some","m","kind","SyntaxKind","ExportKeyword","decl","declarationList","declarations","isVariableDeclaration","getText","initializer","isArrowFunction","param","parameters","resolveMutationParamTypes","resolved","isCallExpression","args","arguments","handlersArg","i","length","isObjectLiteralExpression","prop","properties","isPropertyAssignment","isMethodDeclaration","params","init","isFunctionExpression","typeNode","expanded","extractMutationsFromModel","silent","resolvedTypes","resolvedTypeToValibot","mutateNode","modelName","hasCRUD","columns","primaryKeys","custom","call","firstArg","hasNamedModel","Boolean","isStringLiteralLike","extractSchemaColumns","paramType","valibotCode","secondParam","resolvedType","visit","text","expression","arg","isStringLiteral","obj","colName","initText","colType","getInstantiatedPropertyType","parent","resolveProperty","Reflect","apply","seen","Set","flags","getFlags","TypeFlags","Object","Intersection","add","recurse","t","String","Number","Void","Undefined","Null","Any","Unknown","Never","TemplateLiteral","isArrayType","isArrayLikeType","typeArgs","getTypeArguments","elementType","getNumberIndexType","StringLiteral","value","NumberLiteral","BooleanLiteral","intrinsicName","isUnion","members","types","hasNull","hasUndefined","rest","filter","every","inner2","inner","resolveSymbolType","instantiated","getName","valueDeclaration","getTypeOfSymbolAtLocation","getDeclaredTypeOfSymbol","isIntersection","props2","getProperties","propType","isOptional","SymbolFlags","Optional","val","startsWith","props","objectFlags","ObjectFlags","Reference","typeRef","symbol","getSymbol","typeArguments","Tuple","stringIndex","getStringIndexType","numberIndex","serializeColumnBuilder","col","zeroType","expr","serverName","optional","generateDrizzleSchemaFile","schema","lines","tableNames","keys","tables","tableName","colEntries","pkArgs","primaryKey","k","tableSource","relTableNames","relationships","rels","relEntries","relBody","relName","hops","hop","fn2","cardinality","sf","sourceField","df","destField","destSchema","Error","fn","hopCode","tableList","n","relList","generate","after","force","mutationsDir","usesMutationsDir","modelsDir","modelsDirName","queriesDir","inputHash","__generatorVersion","__inputHash","counts","__counts","filesChanged","modelCount","schemaCount","queryCount","mutationCount","allModelFiles","filesWithSchema","includes","allModelNames","schemaModelNames","writeResults","trim","queryFiles","allQueries","queryResolver","getQueryResolver","allFiles","file","fileBaseName","exportModifier","find","declaration","resolverSourceFile","console","error","err","groupedChanged","syncedChanged","allModelMutations","mutationFiles","unresolvedModels","baseName","hasUnresolved","collectTsFiles","dir2","results","fullPath","modelResolver","size","idx","findIndex","model","mutationsChanged","info","execSync","stdio","env","ON_ZERO_GENERATED_DIR","watch","debounce","chokidar","debounceTimer","debouncedRegenerate","event","clearTimeout","setTimeout","watcher","persistent","ignoreInitial","ignored","on"],"sources":["../../src/generate.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
@@ -5,6 +5,7 @@ import { formatObjectKey, generateGroupedQueriesFile, generateModelsFile, genera
5
5
  var hash = function (s) {
6
6
  return createHash("sha256").update(s).digest("hex");
7
7
  };
8
+ var GENERATOR_CACHE_VERSION = "1";
8
9
  var isGeneratorSourceFile = function (name) {
9
10
  return name.endsWith(".ts") && !name.endsWith(".d.ts") && !name.endsWith(".test.ts") && !name.endsWith(".spec.ts");
10
11
  };
@@ -771,7 +772,8 @@ async function generate(options) {
771
772
  var {
772
773
  dir,
773
774
  after,
774
- silent
775
+ silent,
776
+ force
775
777
  } = options;
776
778
  var baseDir = resolve(dir);
777
779
  var mutationsDir = resolve(baseDir, "mutations");
@@ -787,7 +789,7 @@ async function generate(options) {
787
789
  }
788
790
  loadCache();
789
791
  var inputHash = hashInputTree(baseDir, generatedDir);
790
- if (generateCache.__inputHash === inputHash && existsSync(resolve(generatedDir, "models.ts"))) {
792
+ if (!force && generateCache.__generatorVersion === GENERATOR_CACHE_VERSION && generateCache.__inputHash === inputHash && existsSync(resolve(generatedDir, "models.ts"))) {
791
793
  var counts = {};
792
794
  try {
793
795
  counts = JSON.parse(generateCache.__counts || "{}");
@@ -1101,6 +1103,7 @@ async function generate(options) {
1101
1103
  if (!silent) console.error(`Error running after command: ${err}`);
1102
1104
  }
1103
1105
  }
1106
+ generateCache.__generatorVersion = GENERATOR_CACHE_VERSION;
1104
1107
  generateCache.__inputHash = inputHash;
1105
1108
  generateCache.__counts = JSON.stringify({
1106
1109
  modelCount: allModelFiles.length,