@powerhousedao/reactor-api 6.0.0-dev.153 → 6.0.0-dev.154

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 (402) hide show
  1. package/dist/index.d.mts +2948 -0
  2. package/dist/index.d.mts.map +1 -0
  3. package/dist/index.mjs +6353 -0
  4. package/dist/index.mjs.map +1 -0
  5. package/dist/src/packages/vite-loader.mjs +142 -0
  6. package/dist/src/packages/vite-loader.mjs.map +1 -0
  7. package/dist/types-Do4QTfT3.d.mts +37 -0
  8. package/dist/types-Do4QTfT3.d.mts.map +1 -0
  9. package/dist/utils-DEEhP99G.mjs +286 -0
  10. package/dist/utils-DEEhP99G.mjs.map +1 -0
  11. package/dist/vite-loader.d.mts +29 -0
  12. package/dist/vite-loader.d.mts.map +1 -0
  13. package/package.json +17 -25
  14. package/dist/codegen.d.ts +0 -4
  15. package/dist/codegen.d.ts.map +0 -1
  16. package/dist/codegen.js +0 -38
  17. package/dist/codegen.js.map +0 -1
  18. package/dist/index.d.ts +0 -15
  19. package/dist/index.d.ts.map +0 -1
  20. package/dist/index.js +0 -15
  21. package/dist/index.js.map +0 -1
  22. package/dist/src/config.d.ts +0 -6
  23. package/dist/src/config.d.ts.map +0 -1
  24. package/dist/src/config.js +0 -6
  25. package/dist/src/config.js.map +0 -1
  26. package/dist/src/dev.d.ts +0 -2
  27. package/dist/src/dev.d.ts.map +0 -1
  28. package/dist/src/dev.js +0 -51
  29. package/dist/src/dev.js.map +0 -1
  30. package/dist/src/graphql/analytics-subgraph.d.ts +0 -14
  31. package/dist/src/graphql/analytics-subgraph.d.ts.map +0 -1
  32. package/dist/src/graphql/analytics-subgraph.js +0 -26
  33. package/dist/src/graphql/analytics-subgraph.js.map +0 -1
  34. package/dist/src/graphql/auth/index.d.ts +0 -2
  35. package/dist/src/graphql/auth/index.d.ts.map +0 -1
  36. package/dist/src/graphql/auth/index.js +0 -2
  37. package/dist/src/graphql/auth/index.js.map +0 -1
  38. package/dist/src/graphql/auth/resolvers.d.ts +0 -166
  39. package/dist/src/graphql/auth/resolvers.d.ts.map +0 -1
  40. package/dist/src/graphql/auth/resolvers.js +0 -227
  41. package/dist/src/graphql/auth/resolvers.js.map +0 -1
  42. package/dist/src/graphql/auth/schema.graphql +0 -195
  43. package/dist/src/graphql/auth/subgraph.d.ts +0 -202
  44. package/dist/src/graphql/auth/subgraph.d.ts.map +0 -1
  45. package/dist/src/graphql/auth/subgraph.js +0 -384
  46. package/dist/src/graphql/auth/subgraph.js.map +0 -1
  47. package/dist/src/graphql/base-subgraph.d.ts +0 -27
  48. package/dist/src/graphql/base-subgraph.d.ts.map +0 -1
  49. package/dist/src/graphql/base-subgraph.js +0 -126
  50. package/dist/src/graphql/base-subgraph.js.map +0 -1
  51. package/dist/src/graphql/document-model-subgraph.d.ts +0 -110
  52. package/dist/src/graphql/document-model-subgraph.d.ts.map +0 -1
  53. package/dist/src/graphql/document-model-subgraph.js +0 -336
  54. package/dist/src/graphql/document-model-subgraph.js.map +0 -1
  55. package/dist/src/graphql/gateway/adapter-gateway-apollo.d.ts +0 -23
  56. package/dist/src/graphql/gateway/adapter-gateway-apollo.d.ts.map +0 -1
  57. package/dist/src/graphql/gateway/adapter-gateway-apollo.js +0 -156
  58. package/dist/src/graphql/gateway/adapter-gateway-apollo.js.map +0 -1
  59. package/dist/src/graphql/gateway/adapter-gateway-mercurius.d.ts +0 -17
  60. package/dist/src/graphql/gateway/adapter-gateway-mercurius.d.ts.map +0 -1
  61. package/dist/src/graphql/gateway/adapter-gateway-mercurius.js +0 -154
  62. package/dist/src/graphql/gateway/adapter-gateway-mercurius.js.map +0 -1
  63. package/dist/src/graphql/gateway/adapter-http-express.d.ts +0 -25
  64. package/dist/src/graphql/gateway/adapter-http-express.d.ts.map +0 -1
  65. package/dist/src/graphql/gateway/adapter-http-express.js +0 -163
  66. package/dist/src/graphql/gateway/adapter-http-express.js.map +0 -1
  67. package/dist/src/graphql/gateway/adapter-http-fastify.d.ts +0 -23
  68. package/dist/src/graphql/gateway/adapter-http-fastify.d.ts.map +0 -1
  69. package/dist/src/graphql/gateway/adapter-http-fastify.js +0 -228
  70. package/dist/src/graphql/gateway/adapter-http-fastify.js.map +0 -1
  71. package/dist/src/graphql/gateway/auth-middleware.d.ts +0 -7
  72. package/dist/src/graphql/gateway/auth-middleware.d.ts.map +0 -1
  73. package/dist/src/graphql/gateway/auth-middleware.js +0 -15
  74. package/dist/src/graphql/gateway/auth-middleware.js.map +0 -1
  75. package/dist/src/graphql/gateway/factory.d.ts +0 -11
  76. package/dist/src/graphql/gateway/factory.d.ts.map +0 -1
  77. package/dist/src/graphql/gateway/factory.js +0 -21
  78. package/dist/src/graphql/gateway/factory.js.map +0 -1
  79. package/dist/src/graphql/gateway/types.d.ts +0 -100
  80. package/dist/src/graphql/gateway/types.d.ts.map +0 -1
  81. package/dist/src/graphql/gateway/types.js +0 -2
  82. package/dist/src/graphql/gateway/types.js.map +0 -1
  83. package/dist/src/graphql/graphql-manager.d.ts +0 -65
  84. package/dist/src/graphql/graphql-manager.d.ts.map +0 -1
  85. package/dist/src/graphql/graphql-manager.js +0 -483
  86. package/dist/src/graphql/graphql-manager.js.map +0 -1
  87. package/dist/src/graphql/index.d.ts +0 -13
  88. package/dist/src/graphql/index.d.ts.map +0 -1
  89. package/dist/src/graphql/index.js +0 -13
  90. package/dist/src/graphql/index.js.map +0 -1
  91. package/dist/src/graphql/packages/index.d.ts +0 -2
  92. package/dist/src/graphql/packages/index.d.ts.map +0 -1
  93. package/dist/src/graphql/packages/index.js +0 -2
  94. package/dist/src/graphql/packages/index.js.map +0 -1
  95. package/dist/src/graphql/packages/resolvers.d.ts +0 -31
  96. package/dist/src/graphql/packages/resolvers.d.ts.map +0 -1
  97. package/dist/src/graphql/packages/resolvers.js +0 -37
  98. package/dist/src/graphql/packages/resolvers.js.map +0 -1
  99. package/dist/src/graphql/packages/schema.graphql +0 -50
  100. package/dist/src/graphql/packages/subgraph.d.ts +0 -55
  101. package/dist/src/graphql/packages/subgraph.d.ts.map +0 -1
  102. package/dist/src/graphql/packages/subgraph.js +0 -73
  103. package/dist/src/graphql/packages/subgraph.js.map +0 -1
  104. package/dist/src/graphql/playground.d.ts +0 -2
  105. package/dist/src/graphql/playground.d.ts.map +0 -1
  106. package/dist/src/graphql/playground.js +0 -81
  107. package/dist/src/graphql/playground.js.map +0 -1
  108. package/dist/src/graphql/reactor/adapters.d.ts +0 -62
  109. package/dist/src/graphql/reactor/adapters.d.ts.map +0 -1
  110. package/dist/src/graphql/reactor/adapters.js +0 -271
  111. package/dist/src/graphql/reactor/adapters.js.map +0 -1
  112. package/dist/src/graphql/reactor/factory.d.ts +0 -105
  113. package/dist/src/graphql/reactor/factory.d.ts.map +0 -1
  114. package/dist/src/graphql/reactor/factory.js +0 -7
  115. package/dist/src/graphql/reactor/factory.js.map +0 -1
  116. package/dist/src/graphql/reactor/gen/graphql.d.ts +0 -1489
  117. package/dist/src/graphql/reactor/gen/graphql.d.ts.map +0 -1
  118. package/dist/src/graphql/reactor/gen/graphql.js +0 -731
  119. package/dist/src/graphql/reactor/gen/graphql.js.map +0 -1
  120. package/dist/src/graphql/reactor/index.d.ts +0 -4
  121. package/dist/src/graphql/reactor/index.d.ts.map +0 -1
  122. package/dist/src/graphql/reactor/index.js +0 -4
  123. package/dist/src/graphql/reactor/index.js.map +0 -1
  124. package/dist/src/graphql/reactor/operations.graphql +0 -443
  125. package/dist/src/graphql/reactor/pubsub.d.ts +0 -27
  126. package/dist/src/graphql/reactor/pubsub.d.ts.map +0 -1
  127. package/dist/src/graphql/reactor/pubsub.js +0 -93
  128. package/dist/src/graphql/reactor/pubsub.js.map +0 -1
  129. package/dist/src/graphql/reactor/requester.d.ts +0 -4
  130. package/dist/src/graphql/reactor/requester.d.ts.map +0 -1
  131. package/dist/src/graphql/reactor/requester.js +0 -22
  132. package/dist/src/graphql/reactor/requester.js.map +0 -1
  133. package/dist/src/graphql/reactor/requester.with-zod.d.ts +0 -4
  134. package/dist/src/graphql/reactor/requester.with-zod.d.ts.map +0 -1
  135. package/dist/src/graphql/reactor/requester.with-zod.js +0 -129
  136. package/dist/src/graphql/reactor/requester.with-zod.js.map +0 -1
  137. package/dist/src/graphql/reactor/resolvers.d.ts +0 -223
  138. package/dist/src/graphql/reactor/resolvers.d.ts.map +0 -1
  139. package/dist/src/graphql/reactor/resolvers.js +0 -682
  140. package/dist/src/graphql/reactor/resolvers.js.map +0 -1
  141. package/dist/src/graphql/reactor/schema.graphql +0 -475
  142. package/dist/src/graphql/reactor/subgraph.d.ts +0 -18
  143. package/dist/src/graphql/reactor/subgraph.d.ts.map +0 -1
  144. package/dist/src/graphql/reactor/subgraph.js +0 -460
  145. package/dist/src/graphql/reactor/subgraph.js.map +0 -1
  146. package/dist/src/graphql/reactor/validation.d.ts +0 -348
  147. package/dist/src/graphql/reactor/validation.d.ts.map +0 -1
  148. package/dist/src/graphql/reactor/validation.js +0 -167
  149. package/dist/src/graphql/reactor/validation.js.map +0 -1
  150. package/dist/src/graphql/sse.d.ts +0 -35
  151. package/dist/src/graphql/sse.d.ts.map +0 -1
  152. package/dist/src/graphql/sse.js +0 -29
  153. package/dist/src/graphql/sse.js.map +0 -1
  154. package/dist/src/graphql/system/env/getters.d.ts +0 -2
  155. package/dist/src/graphql/system/env/getters.d.ts.map +0 -1
  156. package/dist/src/graphql/system/env/getters.js +0 -4
  157. package/dist/src/graphql/system/env/getters.js.map +0 -1
  158. package/dist/src/graphql/system/env/index.d.ts +0 -2
  159. package/dist/src/graphql/system/env/index.d.ts.map +0 -1
  160. package/dist/src/graphql/system/env/index.js +0 -5
  161. package/dist/src/graphql/system/env/index.js.map +0 -1
  162. package/dist/src/graphql/system/index.d.ts +0 -2
  163. package/dist/src/graphql/system/index.d.ts.map +0 -1
  164. package/dist/src/graphql/system/index.js +0 -2
  165. package/dist/src/graphql/system/index.js.map +0 -1
  166. package/dist/src/graphql/system/types.d.ts +0 -2
  167. package/dist/src/graphql/system/types.d.ts.map +0 -1
  168. package/dist/src/graphql/system/types.js +0 -2
  169. package/dist/src/graphql/system/types.js.map +0 -1
  170. package/dist/src/graphql/temp-hack-rwa-type-defs.d.ts +0 -57
  171. package/dist/src/graphql/temp-hack-rwa-type-defs.d.ts.map +0 -1
  172. package/dist/src/graphql/temp-hack-rwa-type-defs.js +0 -2
  173. package/dist/src/graphql/temp-hack-rwa-type-defs.js.map +0 -1
  174. package/dist/src/graphql/types.d.ts +0 -102
  175. package/dist/src/graphql/types.d.ts.map +0 -1
  176. package/dist/src/graphql/types.js +0 -2
  177. package/dist/src/graphql/types.js.map +0 -1
  178. package/dist/src/graphql/utils.d.ts +0 -9
  179. package/dist/src/graphql/utils.d.ts.map +0 -1
  180. package/dist/src/graphql/utils.js +0 -72
  181. package/dist/src/graphql/utils.js.map +0 -1
  182. package/dist/src/graphql/websocket.d.ts +0 -3
  183. package/dist/src/graphql/websocket.d.ts.map +0 -1
  184. package/dist/src/graphql/websocket.js +0 -15
  185. package/dist/src/graphql/websocket.js.map +0 -1
  186. package/dist/src/migrations/001_create_document_permissions.d.ts +0 -4
  187. package/dist/src/migrations/001_create_document_permissions.d.ts.map +0 -1
  188. package/dist/src/migrations/001_create_document_permissions.js +0 -91
  189. package/dist/src/migrations/001_create_document_permissions.js.map +0 -1
  190. package/dist/src/migrations/002_add_document_protection.d.ts +0 -4
  191. package/dist/src/migrations/002_add_document_protection.d.ts.map +0 -1
  192. package/dist/src/migrations/002_add_document_protection.js +0 -18
  193. package/dist/src/migrations/002_add_document_protection.js.map +0 -1
  194. package/dist/src/migrations/index.d.ts +0 -10
  195. package/dist/src/migrations/index.d.ts.map +0 -1
  196. package/dist/src/migrations/index.js +0 -58
  197. package/dist/src/migrations/index.js.map +0 -1
  198. package/dist/src/packages/http-loader.d.ts +0 -59
  199. package/dist/src/packages/http-loader.d.ts.map +0 -1
  200. package/dist/src/packages/http-loader.js +0 -203
  201. package/dist/src/packages/http-loader.js.map +0 -1
  202. package/dist/src/packages/https-hooks.d.mts +0 -37
  203. package/dist/src/packages/https-hooks.d.mts.map +0 -1
  204. package/dist/src/packages/https-hooks.mjs +0 -95
  205. package/dist/src/packages/https-hooks.mjs.map +0 -1
  206. package/dist/src/packages/import-loader.d.ts +0 -14
  207. package/dist/src/packages/import-loader.d.ts.map +0 -1
  208. package/dist/src/packages/import-loader.js +0 -47
  209. package/dist/src/packages/import-loader.js.map +0 -1
  210. package/dist/src/packages/import-resolver.d.ts +0 -5
  211. package/dist/src/packages/import-resolver.d.ts.map +0 -1
  212. package/dist/src/packages/import-resolver.js +0 -127
  213. package/dist/src/packages/import-resolver.js.map +0 -1
  214. package/dist/src/packages/package-manager.d.ts +0 -33
  215. package/dist/src/packages/package-manager.d.ts.map +0 -1
  216. package/dist/src/packages/package-manager.js +0 -216
  217. package/dist/src/packages/package-manager.js.map +0 -1
  218. package/dist/src/packages/types.d.ts +0 -39
  219. package/dist/src/packages/types.d.ts.map +0 -1
  220. package/dist/src/packages/types.js +0 -2
  221. package/dist/src/packages/types.js.map +0 -1
  222. package/dist/src/packages/util.d.ts +0 -26
  223. package/dist/src/packages/util.d.ts.map +0 -1
  224. package/dist/src/packages/util.js +0 -85
  225. package/dist/src/packages/util.js.map +0 -1
  226. package/dist/src/packages/vite-loader.d.ts +0 -25
  227. package/dist/src/packages/vite-loader.d.ts.map +0 -1
  228. package/dist/src/packages/vite-loader.js +0 -171
  229. package/dist/src/packages/vite-loader.js.map +0 -1
  230. package/dist/src/server.d.ts +0 -55
  231. package/dist/src/server.d.ts.map +0 -1
  232. package/dist/src/server.js +0 -351
  233. package/dist/src/server.js.map +0 -1
  234. package/dist/src/services/auth.service.d.ts +0 -53
  235. package/dist/src/services/auth.service.d.ts.map +0 -1
  236. package/dist/src/services/auth.service.js +0 -165
  237. package/dist/src/services/auth.service.js.map +0 -1
  238. package/dist/src/services/authorization.service.d.ts +0 -70
  239. package/dist/src/services/authorization.service.d.ts.map +0 -1
  240. package/dist/src/services/authorization.service.js +0 -155
  241. package/dist/src/services/authorization.service.js.map +0 -1
  242. package/dist/src/services/document-permission.service.d.ts +0 -241
  243. package/dist/src/services/document-permission.service.d.ts.map +0 -1
  244. package/dist/src/services/document-permission.service.js +0 -791
  245. package/dist/src/services/document-permission.service.js.map +0 -1
  246. package/dist/src/services/package-management.service.d.ts +0 -32
  247. package/dist/src/services/package-management.service.d.ts.map +0 -1
  248. package/dist/src/services/package-management.service.js +0 -95
  249. package/dist/src/services/package-management.service.js.map +0 -1
  250. package/dist/src/services/package-storage.d.ts +0 -23
  251. package/dist/src/services/package-storage.d.ts.map +0 -1
  252. package/dist/src/services/package-storage.js +0 -19
  253. package/dist/src/services/package-storage.js.map +0 -1
  254. package/dist/src/tracing.d.ts +0 -4
  255. package/dist/src/tracing.d.ts.map +0 -1
  256. package/dist/src/tracing.js +0 -146
  257. package/dist/src/tracing.js.map +0 -1
  258. package/dist/src/types.d.ts +0 -26
  259. package/dist/src/types.d.ts.map +0 -1
  260. package/dist/src/types.js +0 -2
  261. package/dist/src/types.js.map +0 -1
  262. package/dist/src/utils/create-schema.d.ts +0 -36
  263. package/dist/src/utils/create-schema.d.ts.map +0 -1
  264. package/dist/src/utils/create-schema.js +0 -728
  265. package/dist/src/utils/create-schema.js.map +0 -1
  266. package/dist/src/utils/db.d.ts +0 -82
  267. package/dist/src/utils/db.d.ts.map +0 -1
  268. package/dist/src/utils/db.js +0 -101
  269. package/dist/src/utils/db.js.map +0 -1
  270. package/dist/src/utils/drive-url.d.ts +0 -2
  271. package/dist/src/utils/drive-url.d.ts.map +0 -1
  272. package/dist/src/utils/drive-url.js +0 -3
  273. package/dist/src/utils/drive-url.js.map +0 -1
  274. package/dist/src/utils/index.d.ts +0 -4
  275. package/dist/src/utils/index.d.ts.map +0 -1
  276. package/dist/src/utils/index.js +0 -4
  277. package/dist/src/utils/index.js.map +0 -1
  278. package/dist/test/auth-chain.test.d.ts +0 -12
  279. package/dist/test/auth-chain.test.d.ts.map +0 -1
  280. package/dist/test/auth-chain.test.js +0 -157
  281. package/dist/test/auth-chain.test.js.map +0 -1
  282. package/dist/test/auth.service.test.d.ts +0 -10
  283. package/dist/test/auth.service.test.d.ts.map +0 -1
  284. package/dist/test/auth.service.test.js +0 -141
  285. package/dist/test/auth.service.test.js.map +0 -1
  286. package/dist/test/authorization.service.test.d.ts +0 -2
  287. package/dist/test/authorization.service.test.d.ts.map +0 -1
  288. package/dist/test/authorization.service.test.js +0 -252
  289. package/dist/test/authorization.service.test.js.map +0 -1
  290. package/dist/test/connect-switchboard-reshuffle-convergence.test.d.ts +0 -2
  291. package/dist/test/connect-switchboard-reshuffle-convergence.test.d.ts.map +0 -1
  292. package/dist/test/connect-switchboard-reshuffle-convergence.test.js +0 -204
  293. package/dist/test/connect-switchboard-reshuffle-convergence.test.js.map +0 -1
  294. package/dist/test/connect-switchboard-sync.test.d.ts +0 -2
  295. package/dist/test/connect-switchboard-sync.test.d.ts.map +0 -1
  296. package/dist/test/connect-switchboard-sync.test.js +0 -633
  297. package/dist/test/connect-switchboard-sync.test.js.map +0 -1
  298. package/dist/test/document-drive-subgraph.test.d.ts +0 -2
  299. package/dist/test/document-drive-subgraph.test.d.ts.map +0 -1
  300. package/dist/test/document-drive-subgraph.test.js +0 -244
  301. package/dist/test/document-drive-subgraph.test.js.map +0 -1
  302. package/dist/test/document-model-subgraph-permissions.test.d.ts +0 -2
  303. package/dist/test/document-model-subgraph-permissions.test.d.ts.map +0 -1
  304. package/dist/test/document-model-subgraph-permissions.test.js +0 -587
  305. package/dist/test/document-model-subgraph-permissions.test.js.map +0 -1
  306. package/dist/test/document-permission.service.test.d.ts +0 -2
  307. package/dist/test/document-permission.service.test.d.ts.map +0 -1
  308. package/dist/test/document-permission.service.test.js +0 -480
  309. package/dist/test/document-permission.service.test.js.map +0 -1
  310. package/dist/test/drive-info-endpoint.test.d.ts +0 -2
  311. package/dist/test/drive-info-endpoint.test.d.ts.map +0 -1
  312. package/dist/test/drive-info-endpoint.test.js +0 -123
  313. package/dist/test/drive-info-endpoint.test.js.map +0 -1
  314. package/dist/test/fault-injection-sync.test.d.ts +0 -2
  315. package/dist/test/fault-injection-sync.test.d.ts.map +0 -1
  316. package/dist/test/fault-injection-sync.test.js +0 -197
  317. package/dist/test/fault-injection-sync.test.js.map +0 -1
  318. package/dist/test/gateway/adapter-gateway-apollo.test.d.ts +0 -2
  319. package/dist/test/gateway/adapter-gateway-apollo.test.d.ts.map +0 -1
  320. package/dist/test/gateway/adapter-gateway-apollo.test.js +0 -206
  321. package/dist/test/gateway/adapter-gateway-apollo.test.js.map +0 -1
  322. package/dist/test/gateway/adapter-gateway-mercurius.test.d.ts +0 -2
  323. package/dist/test/gateway/adapter-gateway-mercurius.test.d.ts.map +0 -1
  324. package/dist/test/gateway/adapter-gateway-mercurius.test.js +0 -23
  325. package/dist/test/gateway/adapter-gateway-mercurius.test.js.map +0 -1
  326. package/dist/test/gateway/adapter-http-express.test.d.ts +0 -2
  327. package/dist/test/gateway/adapter-http-express.test.d.ts.map +0 -1
  328. package/dist/test/gateway/adapter-http-express.test.js +0 -17
  329. package/dist/test/gateway/adapter-http-express.test.js.map +0 -1
  330. package/dist/test/gateway/adapter-http-fastify.test.d.ts +0 -2
  331. package/dist/test/gateway/adapter-http-fastify.test.d.ts.map +0 -1
  332. package/dist/test/gateway/adapter-http-fastify.test.js +0 -17
  333. package/dist/test/gateway/adapter-http-fastify.test.js.map +0 -1
  334. package/dist/test/gateway/auth-middleware.test.d.ts +0 -8
  335. package/dist/test/gateway/auth-middleware.test.d.ts.map +0 -1
  336. package/dist/test/gateway/auth-middleware.test.js +0 -73
  337. package/dist/test/gateway/auth-middleware.test.js.map +0 -1
  338. package/dist/test/gateway/gateway-adapter-contract.d.ts +0 -30
  339. package/dist/test/gateway/gateway-adapter-contract.d.ts.map +0 -1
  340. package/dist/test/gateway/gateway-adapter-contract.js +0 -347
  341. package/dist/test/gateway/gateway-adapter-contract.js.map +0 -1
  342. package/dist/test/gateway/http-adapter-contract.d.ts +0 -30
  343. package/dist/test/gateway/http-adapter-contract.d.ts.map +0 -1
  344. package/dist/test/gateway/http-adapter-contract.js +0 -277
  345. package/dist/test/gateway/http-adapter-contract.js.map +0 -1
  346. package/dist/test/graphql-manager.test.d.ts +0 -12
  347. package/dist/test/graphql-manager.test.d.ts.map +0 -1
  348. package/dist/test/graphql-manager.test.js +0 -576
  349. package/dist/test/graphql-manager.test.js.map +0 -1
  350. package/dist/test/index.d.ts +0 -2
  351. package/dist/test/index.d.ts.map +0 -1
  352. package/dist/test/index.js +0 -2
  353. package/dist/test/index.js.map +0 -1
  354. package/dist/test/permissions-integration.test.d.ts +0 -2
  355. package/dist/test/permissions-integration.test.d.ts.map +0 -1
  356. package/dist/test/permissions-integration.test.js +0 -407
  357. package/dist/test/permissions-integration.test.js.map +0 -1
  358. package/dist/test/push-backfill.test.d.ts +0 -2
  359. package/dist/test/push-backfill.test.d.ts.map +0 -1
  360. package/dist/test/push-backfill.test.js +0 -299
  361. package/dist/test/push-backfill.test.js.map +0 -1
  362. package/dist/test/reactor-adapters.test.d.ts +0 -2
  363. package/dist/test/reactor-adapters.test.d.ts.map +0 -1
  364. package/dist/test/reactor-adapters.test.js +0 -380
  365. package/dist/test/reactor-adapters.test.js.map +0 -1
  366. package/dist/test/reactor-client.test.d.ts +0 -2
  367. package/dist/test/reactor-client.test.d.ts.map +0 -1
  368. package/dist/test/reactor-client.test.js +0 -371
  369. package/dist/test/reactor-client.test.js.map +0 -1
  370. package/dist/test/reactor-resolvers.test.d.ts +0 -2
  371. package/dist/test/reactor-resolvers.test.d.ts.map +0 -1
  372. package/dist/test/reactor-resolvers.test.js +0 -259
  373. package/dist/test/reactor-resolvers.test.js.map +0 -1
  374. package/dist/test/reactor-subgraph-permissions.test.d.ts +0 -2
  375. package/dist/test/reactor-subgraph-permissions.test.d.ts.map +0 -1
  376. package/dist/test/reactor-subgraph-permissions.test.js +0 -371
  377. package/dist/test/reactor-subgraph-permissions.test.js.map +0 -1
  378. package/dist/test/router.test.d.ts +0 -2
  379. package/dist/test/router.test.d.ts.map +0 -1
  380. package/dist/test/router.test.js +0 -38
  381. package/dist/test/router.test.js.map +0 -1
  382. package/dist/test/subscriptions-sse.test.d.ts +0 -2
  383. package/dist/test/subscriptions-sse.test.d.ts.map +0 -1
  384. package/dist/test/subscriptions-sse.test.js +0 -264
  385. package/dist/test/subscriptions-sse.test.js.map +0 -1
  386. package/dist/test/subscriptions.test.d.ts +0 -2
  387. package/dist/test/subscriptions.test.d.ts.map +0 -1
  388. package/dist/test/subscriptions.test.js +0 -248
  389. package/dist/test/subscriptions.test.js.map +0 -1
  390. package/dist/test/utils/gql-resolver-bridge.d.ts +0 -15
  391. package/dist/test/utils/gql-resolver-bridge.d.ts.map +0 -1
  392. package/dist/test/utils/gql-resolver-bridge.js +0 -89
  393. package/dist/test/utils/gql-resolver-bridge.js.map +0 -1
  394. package/dist/test/utils.d.ts +0 -6
  395. package/dist/test/utils.d.ts.map +0 -1
  396. package/dist/test/utils.js +0 -13
  397. package/dist/test/utils.js.map +0 -1
  398. package/dist/tsconfig.tsbuildinfo +0 -1
  399. package/dist/vitest.config.d.ts +0 -3
  400. package/dist/vitest.config.d.ts.map +0 -1
  401. package/dist/vitest.config.js +0 -39
  402. package/dist/vitest.config.js.map +0 -1
@@ -1,216 +0,0 @@
1
- import { getConfig } from "@powerhousedao/config/node";
2
- import { driveDocumentModelModule } from "@powerhousedao/shared/document-drive";
3
- import { childLogger, documentModelDocumentModelModule } from "document-model";
4
- import EventEmitter from "node:events";
5
- import { watchFile } from "node:fs";
6
- import { debounce } from "./util.js";
7
- export function getUniqueDocumentModels(...documentModels) {
8
- const uniqueModels = new Map();
9
- for (const models of documentModels) {
10
- for (const model of models) {
11
- uniqueModels.set(model.documentModel.global.id, model);
12
- }
13
- }
14
- return Array.from(uniqueModels.values());
15
- }
16
- export class PackageManager {
17
- options;
18
- logger = childLogger(["reactor-api", "package-manager"]);
19
- loaders;
20
- docModelsMap = new Map();
21
- subgraphsMap = new Map();
22
- processorMap = new Map();
23
- configWatcher;
24
- debouncedUpdateCallbacks = new Map();
25
- eventEmitter = new EventEmitter();
26
- constructor(loaders, options) {
27
- this.options = options;
28
- this.loaders = loaders;
29
- this.eventEmitter.setMaxListeners(0);
30
- }
31
- async init() {
32
- if (this.options.configFile) {
33
- this.initConfigFileWatcher(this.options.configFile);
34
- }
35
- return await this.loadPackages(this.getAllPackageNames());
36
- }
37
- async loadPackages(packages) {
38
- this.logger.info("Loading packages: @packages", packages.join(", "));
39
- const documentModelsMap = await this.loadDocumentModels(packages);
40
- const subgraphsMap = await this.loadSubgraphs(packages);
41
- const processorsMap = await this.loadProcessors(packages);
42
- this.updatePackagesMap(documentModelsMap);
43
- this.updateSubgraphsMap(subgraphsMap);
44
- this.updateProcessorsMap(processorsMap);
45
- try {
46
- this.subscribePackages(packages);
47
- }
48
- catch (error) {
49
- this.logger.error("Failed to subscribe to packages", error);
50
- }
51
- return {
52
- documentModels: getUniqueDocumentModels(...Array.from(documentModelsMap.values())),
53
- subgraphs: subgraphsMap,
54
- processors: processorsMap,
55
- };
56
- }
57
- async loadDocumentModels(packages) {
58
- this.logger.debug(`Loading document models from packages: ${packages.join(", ")}`);
59
- const documentModelModuleMap = new Map();
60
- // static prereqs
61
- documentModelModuleMap.set("document-drive", [
62
- driveDocumentModelModule,
63
- ]);
64
- documentModelModuleMap.set("document-model", [
65
- documentModelDocumentModelModule,
66
- ]);
67
- for (const pkg of packages) {
68
- const allDocumentModels = [];
69
- for (const loader of this.loaders) {
70
- try {
71
- const documentModels = await loader.loadDocumentModels(pkg);
72
- allDocumentModels.push(...documentModels);
73
- this.logger.debug(`[${loader.name}] Loaded document models from package ${pkg}`, documentModels.map((dm) => dm.documentModel.global.id));
74
- break;
75
- }
76
- catch (error) {
77
- this.logger.debug(`[${loader.name}] Failed to load document models from package ${pkg}`, error);
78
- }
79
- }
80
- documentModelModuleMap.set(pkg, allDocumentModels);
81
- }
82
- return documentModelModuleMap;
83
- }
84
- async loadSubgraphs(packages) {
85
- this.logger.debug(`Loading subgraphs from packages: ${packages.join(", ")}`);
86
- const subgraphsMap = new Map();
87
- for (const pkg of packages) {
88
- const allSubgraphs = [];
89
- for (const loader of this.loaders) {
90
- try {
91
- const subgraphs = await loader.loadSubgraphs(pkg);
92
- allSubgraphs.push(...subgraphs);
93
- break;
94
- }
95
- catch (error) {
96
- this.logger.debug(`[${loader.name}] Failed to load subgraphs from package ${pkg}`, error);
97
- }
98
- }
99
- subgraphsMap.set(pkg, allSubgraphs);
100
- }
101
- return subgraphsMap;
102
- }
103
- async loadProcessors(packages) {
104
- this.logger.debug(`Loading processors from packages: ${packages.join(", ")}`);
105
- const processorsMap = new Map();
106
- for (const pkg of packages) {
107
- const allProcessors = [];
108
- for (const loader of this.loaders) {
109
- try {
110
- const processors = await loader.loadProcessors(pkg);
111
- if (processors) {
112
- allProcessors.push(processors);
113
- }
114
- break;
115
- }
116
- catch (error) {
117
- this.logger.debug(`[${loader.name}] Failed to load processors from package ${pkg}`, error);
118
- }
119
- }
120
- processorsMap.set(pkg, allProcessors);
121
- }
122
- this.updateProcessorsMap(processorsMap);
123
- return processorsMap;
124
- }
125
- async updateDocumentModelsForPackage(pkg) {
126
- this.logger.debug(`Updating document models for package: ${pkg}`);
127
- const documentModels = await this.loadDocumentModels([pkg]);
128
- const documentModelsMap = new Map(this.docModelsMap);
129
- documentModelsMap.set(pkg, documentModels.get(pkg) ?? []);
130
- this.updatePackagesMap(documentModelsMap);
131
- }
132
- subscribePackages(packages) {
133
- const unsubs = [];
134
- for (const pkg of packages) {
135
- if (!this.debouncedUpdateCallbacks.has(pkg)) {
136
- this.debouncedUpdateCallbacks.set(pkg, debounce(() => this.updateDocumentModelsForPackage(pkg), 1000));
137
- }
138
- const debouncedCallback = this.debouncedUpdateCallbacks.get(pkg);
139
- for (const loader of this.loaders) {
140
- if (loader.onDocumentModelsChange) {
141
- const unsub = loader.onDocumentModelsChange(pkg, debouncedCallback);
142
- unsubs.push(unsub);
143
- }
144
- }
145
- }
146
- return () => {
147
- for (const unsub of unsubs) {
148
- unsub();
149
- }
150
- };
151
- }
152
- getAllPackageNames() {
153
- const packageNames = this.options.packages ?? [];
154
- if (this.options.configFile) {
155
- packageNames.push(...this.getPackageNamesFromConfigFile(this.options.configFile));
156
- }
157
- return packageNames;
158
- }
159
- getPackageNamesFromConfigFile(configFile) {
160
- const loadedConfig = getConfig(configFile);
161
- return loadedConfig.packages?.map((pkg) => pkg.packageName) ?? [];
162
- }
163
- initConfigFileWatcher(configFile) {
164
- if (!this.configWatcher) {
165
- this.configWatcher = watchFile(configFile, { interval: 100 }, (curr, prev) => {
166
- if (curr.mtime === prev.mtime) {
167
- return;
168
- }
169
- void this.loadPackages(this.getAllPackageNames());
170
- });
171
- }
172
- }
173
- updatePackagesMap(packagesMap) {
174
- const oldPackages = Array.from(this.docModelsMap.keys());
175
- const newPackages = Array.from(packagesMap.keys());
176
- oldPackages
177
- .filter((pkg) => !newPackages.includes(pkg))
178
- .forEach((pkg) => {
179
- this.logger.info(`Removed package: ${pkg}`);
180
- });
181
- this.docModelsMap = packagesMap;
182
- this.eventEmitter.emit("documentModelsChange", Object.fromEntries(packagesMap));
183
- }
184
- updateSubgraphsMap(subgraphsMap) {
185
- const oldPackages = Array.from(this.subgraphsMap.keys());
186
- const newPackages = Array.from(subgraphsMap.keys());
187
- oldPackages
188
- .filter((pkg) => !newPackages.includes(pkg))
189
- .forEach((pkg) => {
190
- this.logger.info(`Removed Subgraphs from: ${pkg}`);
191
- });
192
- this.subgraphsMap = subgraphsMap;
193
- this.eventEmitter.emit("subgraphsChange", subgraphsMap);
194
- }
195
- updateProcessorsMap(processorsMap) {
196
- const oldPackages = Array.from(this.processorMap.keys());
197
- const newPackages = Array.from(processorsMap.keys());
198
- oldPackages
199
- .filter((pkg) => !newPackages.includes(pkg))
200
- .forEach((pkg) => {
201
- this.logger.info(`Removed Processor Factories from: ${pkg}`);
202
- });
203
- this.processorMap = processorsMap;
204
- this.eventEmitter.emit("processorsChange", processorsMap);
205
- }
206
- onDocumentModelsChange(handler) {
207
- this.eventEmitter.on("documentModelsChange", handler);
208
- }
209
- onSubgraphsChange(handler) {
210
- this.eventEmitter.on("subgraphsChange", handler);
211
- }
212
- onProcessorsChange(handler) {
213
- this.eventEmitter.on("processorsChange", handler);
214
- }
215
- }
216
- //# sourceMappingURL=package-manager.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"package-manager.js","sourceRoot":"","sources":["../../../src/packages/package-manager.ts"],"names":[],"mappings":"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"}
@@ -1,39 +0,0 @@
1
- import type { ProcessorFactoryBuilder, SubgraphClass } from "@powerhousedao/reactor-api";
2
- import type { DocumentModelModule } from "@powerhousedao/shared/document-model";
3
- import type { ILogger } from "document-model";
4
- export interface IPackageLoader {
5
- name: string;
6
- loadDocumentModels(identifier: string, immediate?: boolean): Promise<DocumentModelModule[]>;
7
- loadSubgraphs(identifier: string, immediate?: boolean): Promise<SubgraphClass[]>;
8
- loadProcessors(identifier: string, immediate?: boolean): Promise<ProcessorFactoryBuilder | null>;
9
- }
10
- export interface ISubscriptionOptions {
11
- debounce?: number;
12
- }
13
- export interface ISubscribablePackageLoader extends IPackageLoader {
14
- onDocumentModelsChange?(identifier: string, handler: (documentModels: DocumentModelModule[]) => void, options?: ISubscriptionOptions): () => void;
15
- onSubgraphsChange?(identifier: string, handler: (subgraphs: SubgraphClass[]) => void, options?: ISubscriptionOptions): () => void;
16
- onProcessorsChange?(identifier: string, handler: (processors: ProcessorFactoryBuilder | null) => void, options?: ISubscriptionOptions): () => void;
17
- }
18
- export interface IPackageManager {
19
- onDocumentModelsChange(handler: (documentModels: Record<string, DocumentModelModule[]>) => void): void;
20
- }
21
- export type IPackageLoaderOptions = {
22
- logger?: ILogger;
23
- };
24
- export type IPackageManagerOptions = {
25
- packages?: string[];
26
- configFile?: string;
27
- };
28
- export interface PackageConfig {
29
- packageName: string;
30
- }
31
- export interface PowerhouseConfig {
32
- packages?: PackageConfig[];
33
- }
34
- export type PackageManagerResult = {
35
- documentModels: DocumentModelModule[];
36
- subgraphs: Map<string, SubgraphClass[]>;
37
- processors: Map<string, ProcessorFactoryBuilder[]>;
38
- };
39
- //# sourceMappingURL=types.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/packages/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,uBAAuB,EACvB,aAAa,EACd,MAAM,4BAA4B,CAAC;AACpC,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,sCAAsC,CAAC;AAChF,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,gBAAgB,CAAC;AAE9C,MAAM,WAAW,cAAc;IAC7B,IAAI,EAAE,MAAM,CAAC;IACb,kBAAkB,CAChB,UAAU,EAAE,MAAM,EAClB,SAAS,CAAC,EAAE,OAAO,GAClB,OAAO,CAAC,mBAAmB,EAAE,CAAC,CAAC;IAClC,aAAa,CACX,UAAU,EAAE,MAAM,EAClB,SAAS,CAAC,EAAE,OAAO,GAClB,OAAO,CAAC,aAAa,EAAE,CAAC,CAAC;IAC5B,cAAc,CACZ,UAAU,EAAE,MAAM,EAClB,SAAS,CAAC,EAAE,OAAO,GAClB,OAAO,CAAC,uBAAuB,GAAG,IAAI,CAAC,CAAC;CAC5C;AAED,MAAM,WAAW,oBAAoB;IACnC,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB;AAED,MAAM,WAAW,0BAA2B,SAAQ,cAAc;IAChE,sBAAsB,CAAC,CACrB,UAAU,EAAE,MAAM,EAClB,OAAO,EAAE,CAAC,cAAc,EAAE,mBAAmB,EAAE,KAAK,IAAI,EACxD,OAAO,CAAC,EAAE,oBAAoB,GAC7B,MAAM,IAAI,CAAC;IACd,iBAAiB,CAAC,CAChB,UAAU,EAAE,MAAM,EAClB,OAAO,EAAE,CAAC,SAAS,EAAE,aAAa,EAAE,KAAK,IAAI,EAC7C,OAAO,CAAC,EAAE,oBAAoB,GAC7B,MAAM,IAAI,CAAC;IACd,kBAAkB,CAAC,CACjB,UAAU,EAAE,MAAM,EAClB,OAAO,EAAE,CAAC,UAAU,EAAE,uBAAuB,GAAG,IAAI,KAAK,IAAI,EAC7D,OAAO,CAAC,EAAE,oBAAoB,GAC7B,MAAM,IAAI,CAAC;CACf;AAED,MAAM,WAAW,eAAe;IAC9B,sBAAsB,CACpB,OAAO,EAAE,CAAC,cAAc,EAAE,MAAM,CAAC,MAAM,EAAE,mBAAmB,EAAE,CAAC,KAAK,IAAI,GACvE,IAAI,CAAC;CACT;AAED,MAAM,MAAM,qBAAqB,GAAG;IAClC,MAAM,CAAC,EAAE,OAAO,CAAC;CAClB,CAAC;AAEF,MAAM,MAAM,sBAAsB,GAAG;IACnC,QAAQ,CAAC,EAAE,MAAM,EAAE,CAAC;IACpB,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB,CAAC;AAEF,MAAM,WAAW,aAAa;IAC5B,WAAW,EAAE,MAAM,CAAC;CACrB;AAED,MAAM,WAAW,gBAAgB;IAC/B,QAAQ,CAAC,EAAE,aAAa,EAAE,CAAC;CAC5B;AAED,MAAM,MAAM,oBAAoB,GAAG;IACjC,cAAc,EAAE,mBAAmB,EAAE,CAAC;IACtC,SAAS,EAAE,GAAG,CAAC,MAAM,EAAE,aAAa,EAAE,CAAC,CAAC;IACxC,UAAU,EAAE,GAAG,CAAC,MAAM,EAAE,uBAAuB,EAAE,CAAC,CAAC;CACpD,CAAC"}
@@ -1,2 +0,0 @@
1
- export {};
2
- //# sourceMappingURL=types.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"types.js","sourceRoot":"","sources":["../../../src/packages/types.ts"],"names":[],"mappings":""}
@@ -1,26 +0,0 @@
1
- import type { ProcessorFactoryBuilder, SubgraphClass } from "@powerhousedao/reactor-api";
2
- import type { DocumentModelModule } from "@powerhousedao/shared/document-model";
3
- type DocumentModelsExport = Record<string, DocumentModelModule>;
4
- type SubgraphsExport = Record<string, Record<string, SubgraphClass>>;
5
- type ProcessorsExport = {
6
- processorFactory?: ProcessorFactoryBuilder;
7
- processorFactoryLegacy?: ProcessorFactoryBuilder;
8
- };
9
- export declare const installPackages: (packages: string[]) => Promise<void>;
10
- export declare const readManifest: () => string;
11
- /**
12
- * Tries to import document models from a package. This function cannot throw.
13
- */
14
- export declare function loadDocumentModels(packageName: string): Promise<DocumentModelsExport | null>;
15
- /**
16
- * Tries to import subgraphs from a package. This function cannot throw.
17
- */
18
- export declare function loadSubgraphs(packageName: string): Promise<SubgraphsExport | null>;
19
- /**
20
- * Tries to import processors from a package. This function cannot throw.
21
- */
22
- export declare function loadProcessors(packageName: string): Promise<ProcessorsExport | null>;
23
- export declare function debounce<T extends unknown[], R>(func: (...args: T) => Promise<R>, delay?: number): (immediate?: boolean, ...args: T) => Promise<R>;
24
- export declare function isSubpath(parent: string, dir: string): boolean | "";
25
- export {};
26
- //# sourceMappingURL=util.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"util.d.ts","sourceRoot":"","sources":["../../../src/packages/util.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,uBAAuB,EACvB,aAAa,EACd,MAAM,4BAA4B,CAAC;AACpC,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,sCAAsC,CAAC;AAOhF,KAAK,oBAAoB,GAAG,MAAM,CAAC,MAAM,EAAE,mBAAmB,CAAC,CAAC;AAChE,KAAK,eAAe,GAAG,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,aAAa,CAAC,CAAC,CAAC;AACrE,KAAK,gBAAgB,GAAG;IACtB,gBAAgB,CAAC,EAAE,uBAAuB,CAAC;IAC3C,sBAAsB,CAAC,EAAE,uBAAuB,CAAC;CAClD,CAAC;AAIF,eAAO,MAAM,eAAe,GAAU,UAAU,MAAM,EAAE,kBAIvD,CAAC;AAEF,eAAO,MAAM,YAAY,cAGxB,CAAC;AAEF;;GAEG;AACH,wBAAsB,kBAAkB,CACtC,WAAW,EAAE,MAAM,GAClB,OAAO,CAAC,oBAAoB,GAAG,IAAI,CAAC,CAEtC;AAED;;GAEG;AACH,wBAAsB,aAAa,CACjC,WAAW,EAAE,MAAM,GAClB,OAAO,CAAC,eAAe,GAAG,IAAI,CAAC,CAEjC;AAED;;GAEG;AACH,wBAAsB,cAAc,CAClC,WAAW,EAAE,MAAM,GAClB,OAAO,CAAC,gBAAgB,GAAG,IAAI,CAAC,CAElC;AAkCD,wBAAgB,QAAQ,CAAC,CAAC,SAAS,OAAO,EAAE,EAAE,CAAC,EAC7C,IAAI,EAAE,CAAC,GAAG,IAAI,EAAE,CAAC,KAAK,OAAO,CAAC,CAAC,CAAC,EAChC,KAAK,SAAM,IAGH,mBAAiB,EAAE,GAAG,MAAM,CAAC,gBAkBtC;AAED,wBAAgB,SAAS,CAAC,MAAM,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,gBAGpD"}
@@ -1,85 +0,0 @@
1
- import { childLogger } from "document-model";
2
- import { execSync } from "node:child_process";
3
- import path from "node:path";
4
- import { resolveLinkedPackage } from "./import-resolver.js";
5
- const logger = childLogger(["reactor-api", "packages/util"]);
6
- export const installPackages = async (packages) => {
7
- for (const packageName of packages) {
8
- execSync(`ph install ${packageName}`);
9
- }
10
- };
11
- export const readManifest = () => {
12
- const manifest = execSync(`ph manifest`).toString();
13
- return manifest;
14
- };
15
- /**
16
- * Tries to import document models from a package. This function cannot throw.
17
- */
18
- export async function loadDocumentModels(packageName) {
19
- return loadDependency(packageName, "document-models");
20
- }
21
- /**
22
- * Tries to import subgraphs from a package. This function cannot throw.
23
- */
24
- export async function loadSubgraphs(packageName) {
25
- return loadDependency(packageName, "subgraphs");
26
- }
27
- /**
28
- * Tries to import processors from a package. This function cannot throw.
29
- */
30
- export async function loadProcessors(packageName) {
31
- return loadDependency(packageName, "processors");
32
- }
33
- /**
34
- * Generic dependency loader - tries to import a dependency from a package. This function cannot throw.
35
- * Returns null if the dependency cannot be loaded.
36
- */
37
- async function loadDependency(packageName, subPath) {
38
- const fullPath = `${packageName}/${subPath}`;
39
- // Try the standard import first
40
- try {
41
- // vite does not support this, but that's okay as we have provided the
42
- // vite-loader for this purpose
43
- const module = (await import(/* @vite-ignore */ fullPath));
44
- return module;
45
- }
46
- catch (e) {
47
- // Handle module not found errors with fallback resolution
48
- if (e instanceof Error &&
49
- "code" in e &&
50
- (e.code === "ERR_MODULE_NOT_FOUND" ||
51
- e.code === "ERR_UNSUPPORTED_DIR_IMPORT")) {
52
- const result = await resolveLinkedPackage(packageName, subPath);
53
- if (result)
54
- return result;
55
- }
56
- throw e;
57
- }
58
- }
59
- export function debounce(func, delay = 250) {
60
- let timer;
61
- return (immediate = false, ...args) => {
62
- if (timer) {
63
- clearTimeout(timer);
64
- }
65
- return new Promise((resolve, reject) => {
66
- if (immediate) {
67
- func(...args)
68
- .then(resolve)
69
- .catch(reject);
70
- }
71
- else {
72
- timer = setTimeout(() => {
73
- func(...args)
74
- .then(resolve)
75
- .catch(reject);
76
- }, delay);
77
- }
78
- });
79
- };
80
- }
81
- export function isSubpath(parent, dir) {
82
- const relative = path.relative(parent, dir);
83
- return relative && !relative.startsWith("..") && !path.isAbsolute(relative);
84
- }
85
- //# sourceMappingURL=util.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"util.js","sourceRoot":"","sources":["../../../src/packages/util.ts"],"names":[],"mappings":"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"}
@@ -1,25 +0,0 @@
1
- import type { ProcessorFactoryBuilder, SubgraphClass } from "@powerhousedao/reactor-api";
2
- import type { DocumentModelModule } from "@powerhousedao/shared/document-model";
3
- import { type ILogger } from "document-model";
4
- import type { Logger, ViteDevServer } from "vite";
5
- import type { ISubscribablePackageLoader, ISubscriptionOptions } from "./types.js";
6
- export declare function createViteLogger(logger: ILogger, prefix?: string): Logger;
7
- export declare class VitePackageLoader implements ISubscribablePackageLoader {
8
- #private;
9
- private readonly logger;
10
- private readonly vite;
11
- readonly name = "VitePackageLoader";
12
- static build(vite: ViteDevServer): VitePackageLoader;
13
- constructor(vite: ViteDevServer);
14
- private getDocumentModelsPath;
15
- private getSubgraphsPath;
16
- private getProcessorsPath;
17
- loadDocumentModels(identifier: string, immediate?: boolean): Promise<DocumentModelModule[]>;
18
- loadSubgraphs(identifier: string): Promise<SubgraphClass[]>;
19
- loadProcessors(identifier: string): Promise<ProcessorFactoryBuilder | null>;
20
- onDocumentModelsChange(identifier: string, handler: (documentModels: DocumentModelModule[]) => void, options?: ISubscriptionOptions): () => void;
21
- onSubgraphsChange(identifier: string, handler: (subgraphs: SubgraphClass[]) => void, options?: ISubscriptionOptions): () => void;
22
- onProcessorsChange(identifier: string, handler: (processors: ProcessorFactoryBuilder | null) => void, options?: ISubscriptionOptions): () => void;
23
- }
24
- export declare function startViteServer(root: string, logger?: Logger): Promise<ViteDevServer>;
25
- //# sourceMappingURL=vite-loader.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"vite-loader.d.ts","sourceRoot":"","sources":["../../../src/packages/vite-loader.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EACV,uBAAuB,EACvB,aAAa,EACd,MAAM,4BAA4B,CAAC;AACpC,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,sCAAsC,CAAC;AAChF,OAAO,EAAe,KAAK,OAAO,EAAE,MAAM,gBAAgB,CAAC;AAG3D,OAAO,KAAK,EAAE,MAAM,EAAE,aAAa,EAAE,MAAM,MAAM,CAAC;AAGlD,OAAO,KAAK,EACV,0BAA0B,EAC1B,oBAAoB,EACrB,MAAM,YAAY,CAAC;AAGpB,wBAAgB,gBAAgB,CAAC,MAAM,EAAE,OAAO,EAAE,MAAM,SAAK,UAQ5D;AAED,qBAAa,iBAAkB,YAAW,0BAA0B;;IAClE,OAAO,CAAC,QAAQ,CAAC,MAAM,CAA+C;IAEtE,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAgB;IAErC,QAAQ,CAAC,IAAI,uBAAuB;IAEpC,MAAM,CAAC,KAAK,CAAC,IAAI,EAAE,aAAa;gBAIpB,IAAI,EAAE,aAAa;IAI/B,OAAO,CAAC,qBAAqB;IAI7B,OAAO,CAAC,gBAAgB;IAIxB,OAAO,CAAC,iBAAiB;IAIlB,kBAAkB,CAAC,UAAU,EAAE,MAAM,EAAE,SAAS,UAAQ;IA2CzD,aAAa,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,aAAa,EAAE,CAAC;IA4B3D,cAAc,CAClB,UAAU,EAAE,MAAM,GACjB,OAAO,CAAC,uBAAuB,GAAG,IAAI,CAAC;IA+B1C,sBAAsB,CACpB,UAAU,EAAE,MAAM,EAClB,OAAO,EAAE,CAAC,cAAc,EAAE,mBAAmB,EAAE,KAAK,IAAI,EACxD,OAAO,CAAC,EAAE,oBAAoB,GAC7B,MAAM,IAAI;IAgBb,iBAAiB,CACf,UAAU,EAAE,MAAM,EAClB,OAAO,EAAE,CAAC,SAAS,EAAE,aAAa,EAAE,KAAK,IAAI,EAC7C,OAAO,CAAC,EAAE,oBAAoB,GAC7B,MAAM,IAAI;IAeb,kBAAkB,CAChB,UAAU,EAAE,MAAM,EAClB,OAAO,EAAE,CAAC,UAAU,EAAE,uBAAuB,GAAG,IAAI,KAAK,IAAI,EAC7D,OAAO,CAAC,EAAE,oBAAoB,GAC7B,MAAM,IAAI;CAcd;AAED,wBAAsB,eAAe,CAAC,IAAI,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,MAAM,0BAgClE"}
@@ -1,171 +0,0 @@
1
- import { viteCommonjs } from "@originjs/vite-plugin-commonjs";
2
- import { childLogger } from "document-model";
3
- import path from "node:path";
4
- import { readPackage } from "read-pkg";
5
- import { createLogger, createServer } from "vite";
6
- import { isSubgraphClass } from "../graphql/utils.js";
7
- import { debounce, isSubpath } from "./util.js";
8
- export function createViteLogger(logger, prefix = "") {
9
- const customLogger = createLogger("info", {
10
- prefix,
11
- });
12
- customLogger.info = logger.info;
13
- customLogger.warn = logger.warn;
14
- customLogger.error = logger.error;
15
- return customLogger;
16
- }
17
- export class VitePackageLoader {
18
- logger = childLogger(["reactor-api", "vite-loader"]);
19
- vite;
20
- name = "VitePackageLoader";
21
- static build(vite) {
22
- return new VitePackageLoader(vite);
23
- }
24
- constructor(vite) {
25
- this.vite = vite;
26
- }
27
- getDocumentModelsPath(identifier) {
28
- return path.join(identifier, "./document-models");
29
- }
30
- getSubgraphsPath(identifier) {
31
- return path.join(identifier, "./subgraphs");
32
- }
33
- getProcessorsPath(identifier) {
34
- return path.join(identifier, "./processors");
35
- }
36
- loadDocumentModels(identifier, immediate = false) {
37
- return this.#loadDocumentModelsWithDebounce(immediate, identifier);
38
- }
39
- #loadDocumentModelsWithDebounce = debounce(this.#loadDocumentModels.bind(this), 500);
40
- async #loadDocumentModels(identifier) {
41
- const fullPath = this.getDocumentModelsPath(identifier);
42
- this.logger.debug("Loading document models from", fullPath);
43
- try {
44
- const localDMs = (await this.vite.ssrLoadModule(fullPath));
45
- const exports = Object.values(localDMs);
46
- // duck type
47
- const documentModels = [];
48
- for (const dm of exports) {
49
- if (dm.documentModel) {
50
- documentModels.push(dm);
51
- }
52
- }
53
- this.logger.verbose(` ➜ Loaded ${documentModels.length} Document Models from: ${identifier}`);
54
- return documentModels;
55
- }
56
- catch (e) {
57
- this.logger.debug(` ➜ No Document Models found for: ${identifier}`, e);
58
- }
59
- return [];
60
- }
61
- async loadSubgraphs(identifier) {
62
- const fullPath = this.getSubgraphsPath(identifier);
63
- this.logger.verbose("Loading subgraphs from", fullPath);
64
- let localSubgraphs = {};
65
- try {
66
- localSubgraphs = await this.vite.ssrLoadModule(fullPath);
67
- }
68
- catch (e) {
69
- this.logger.debug(` ➜ No Subgraphs found for: ${identifier}`, e);
70
- return [];
71
- }
72
- const subgraphs = [];
73
- for (const [name, subgraph] of Object.entries(localSubgraphs)) {
74
- const SubgraphClass = subgraph[name];
75
- if (isSubgraphClass(SubgraphClass)) {
76
- subgraphs.push(SubgraphClass);
77
- }
78
- }
79
- this.logger.debug(` ➜ Loaded ${subgraphs.length} Subgraphs from: ${identifier}`);
80
- return subgraphs;
81
- }
82
- async loadProcessors(identifier) {
83
- const fullPath = this.getProcessorsPath(identifier);
84
- this.logger.verbose("Loading processors from", fullPath);
85
- try {
86
- const pkgModule = await this.vite.ssrLoadModule(fullPath);
87
- const factory = pkgModule?.processorFactory;
88
- if (factory && typeof factory === "function") {
89
- this.logger.verbose(` ➜ Loaded Processor Factory from: ${identifier}`);
90
- return factory;
91
- }
92
- }
93
- catch (e) {
94
- this.logger.debug(` ➜ No Processor Factory found for: ${identifier}`, e);
95
- }
96
- this.logger.verbose(` ➜ No Processor Factory found for: ${identifier}`);
97
- // return empty processor factory
98
- return null;
99
- }
100
- onDocumentModelsChange(identifier, handler, options) {
101
- const listener = async (changedPath) => {
102
- const documentModelsPath = this.getDocumentModelsPath(identifier);
103
- if (isSubpath(documentModelsPath, changedPath)) {
104
- const documentModels = await this.loadDocumentModels(identifier);
105
- handler(documentModels);
106
- }
107
- };
108
- this.vite.watcher.on("change", listener);
109
- return () => {
110
- this.vite.watcher.off("change", listener);
111
- };
112
- }
113
- onSubgraphsChange(identifier, handler, options) {
114
- const subgraphsPath = this.getSubgraphsPath(identifier);
115
- const listener = debounce(async (changedPath) => {
116
- if (isSubpath(subgraphsPath, changedPath)) {
117
- const subgraphs = await this.loadSubgraphs(identifier);
118
- handler(subgraphs);
119
- }
120
- }, options?.debounce ?? 100);
121
- this.vite.watcher.on("change", listener);
122
- return () => {
123
- this.vite.watcher.off("change", listener);
124
- };
125
- }
126
- onProcessorsChange(identifier, handler, options) {
127
- const processorsPath = this.getProcessorsPath(identifier);
128
- const listener = async (changedPath) => {
129
- if (isSubpath(processorsPath, changedPath)) {
130
- const processors = await this.loadProcessors(identifier);
131
- handler(processors);
132
- }
133
- };
134
- this.vite.watcher.on("change", listener);
135
- return () => {
136
- this.vite.watcher.off("change", listener);
137
- };
138
- }
139
- }
140
- export async function startViteServer(root, logger) {
141
- const packageJson = await readPackage({ cwd: root });
142
- const vite = await createServer({
143
- root,
144
- configFile: false,
145
- logger,
146
- server: { middlewareMode: true, watch: { ignored: ["**/.ph/**"] } },
147
- appType: "custom",
148
- build: {
149
- rollupOptions: {
150
- input: [],
151
- },
152
- },
153
- resolve: {
154
- tsconfigPaths: true,
155
- alias: {
156
- [packageJson.name]: root,
157
- },
158
- },
159
- plugins: [
160
- viteCommonjs(),
161
- {
162
- name: "suppress-hmr",
163
- handleHotUpdate() {
164
- return []; // return empty array to suppress server refresh
165
- },
166
- },
167
- ],
168
- });
169
- return vite;
170
- }
171
- //# sourceMappingURL=vite-loader.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"vite-loader.js","sourceRoot":"","sources":["../../../src/packages/vite-loader.ts"],"names":[],"mappings":"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"}