@bleedingdev/modern-js-plugin-bff 3.5.0-ultramodern.10 → 3.5.0-ultramodern.101

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 (339) hide show
  1. package/dist/cjs/cli/compress.js +52 -0
  2. package/dist/cjs/cli/generator.js +184 -0
  3. package/dist/cjs/cli/prefix.js +50 -0
  4. package/dist/cjs/cli/serverGlobalVars.js +127 -0
  5. package/dist/cjs/cli/watch.js +51 -0
  6. package/dist/cjs/cli.js +11 -130
  7. package/dist/cjs/loader.js +19 -2
  8. package/dist/cjs/runtime/data-platform/batch/queue.js +284 -0
  9. package/dist/cjs/runtime/data-platform/batch/request.js +98 -0
  10. package/dist/cjs/runtime/data-platform/batch/response.js +64 -0
  11. package/dist/cjs/runtime/data-platform/batch/telemetry.js +67 -0
  12. package/dist/cjs/runtime/data-platform/batch/url.js +69 -0
  13. package/dist/cjs/runtime/data-platform/batch-transport.js +59 -0
  14. package/dist/cjs/runtime/data-platform/codec.js +155 -0
  15. package/dist/cjs/runtime/data-platform/index.js +30 -633
  16. package/dist/cjs/runtime/data-platform/invalidation.js +61 -0
  17. package/dist/cjs/runtime/data-platform/trace.js +73 -0
  18. package/dist/cjs/runtime/data-platform/types.js +48 -0
  19. package/dist/cjs/runtime/data-platform/validation.js +178 -0
  20. package/dist/cjs/runtime/effect/adapter/constants.js +44 -0
  21. package/dist/cjs/runtime/effect/adapter/cross-project-policy.js +61 -0
  22. package/dist/cjs/runtime/effect/adapter/entry.js +92 -0
  23. package/dist/cjs/runtime/effect/adapter/error-response.js +79 -0
  24. package/dist/cjs/runtime/effect/adapter/handler.js +53 -0
  25. package/dist/cjs/runtime/effect/adapter.js +26 -146
  26. package/dist/cjs/runtime/effect/backend-federation/entry.js +99 -0
  27. package/dist/cjs/runtime/effect/backend-federation/identity.js +82 -0
  28. package/dist/cjs/runtime/effect/backend-federation/load.js +66 -0
  29. package/dist/cjs/runtime/effect/backend-federation/plugin.js +53 -0
  30. package/dist/cjs/runtime/effect/backend-federation/remotes.js +50 -0
  31. package/dist/cjs/runtime/effect/backend-federation/runtime.js +64 -0
  32. package/dist/cjs/runtime/effect/backend-federation/types.js +18 -0
  33. package/dist/cjs/runtime/effect/backend-federation/utils.js +48 -0
  34. package/dist/cjs/runtime/effect/backend-federation-manifest/errors.js +83 -0
  35. package/dist/cjs/runtime/effect/backend-federation-manifest/index.js +55 -0
  36. package/dist/cjs/runtime/effect/backend-federation-manifest/load.js +94 -0
  37. package/dist/cjs/runtime/effect/backend-federation-manifest/metadata.js +101 -0
  38. package/dist/cjs/runtime/effect/backend-federation-manifest/reference.js +120 -0
  39. package/dist/cjs/runtime/effect/backend-federation-manifest/remote.js +68 -0
  40. package/dist/cjs/runtime/effect/backend-federation-manifest/types.js +18 -0
  41. package/dist/cjs/runtime/effect/backend-federation-manifest/validation.js +109 -0
  42. package/dist/cjs/runtime/effect/backend-federation-manifest.js +62 -0
  43. package/dist/cjs/runtime/effect/backend-federation.js +65 -0
  44. package/dist/cjs/runtime/effect/dispatch.js +101 -0
  45. package/dist/cjs/runtime/effect/edge.js +64 -71
  46. package/dist/cjs/runtime/effect/endpoint-contracts.js +13 -22
  47. package/dist/cjs/runtime/effect/entry-shape.js +84 -0
  48. package/dist/cjs/runtime/effect/handler/batch-handler.js +161 -0
  49. package/dist/cjs/runtime/effect/handler/batch.js +195 -0
  50. package/dist/cjs/runtime/effect/handler/definition.js +101 -0
  51. package/dist/cjs/runtime/effect/handler/envelope.js +104 -0
  52. package/dist/cjs/runtime/effect/handler/http.js +96 -0
  53. package/dist/cjs/runtime/effect/handler/openapi.js +57 -0
  54. package/dist/cjs/runtime/effect/handler/routing.js +100 -0
  55. package/dist/cjs/runtime/effect/handler/rpc.js +63 -0
  56. package/dist/cjs/runtime/effect/handler/types.js +43 -0
  57. package/dist/cjs/runtime/effect/handler.js +37 -529
  58. package/dist/cjs/runtime/effect/index.js +91 -15
  59. package/dist/cjs/runtime/effect/module.js +23 -80
  60. package/dist/cjs/runtime/effect/rpcSerialization.js +54 -0
  61. package/dist/cjs/runtime/effect-client/batch.js +73 -0
  62. package/dist/cjs/runtime/effect-client/envelope.js +145 -0
  63. package/dist/cjs/runtime/effect-client/guards.js +44 -0
  64. package/dist/cjs/runtime/effect-client/index.js +6 -16
  65. package/dist/cjs/runtime/effect-client/request-context.js +64 -0
  66. package/dist/cjs/runtime/effect-client/request.js +66 -0
  67. package/dist/cjs/runtime/effect-client/runtime.js +12 -178
  68. package/dist/cjs/runtime/effect-client/types.js +18 -0
  69. package/dist/cjs/runtime/hono/adapter.js +32 -79
  70. package/dist/cjs/runtime/safe-failure.js +2 -1
  71. package/dist/cjs/server.js +19 -30
  72. package/dist/cjs/utils/client-generator/files.js +152 -0
  73. package/dist/cjs/utils/client-generator/generate.js +138 -0
  74. package/dist/cjs/utils/client-generator/index.js +83 -0
  75. package/dist/cjs/utils/client-generator/package-json.js +132 -0
  76. package/dist/cjs/utils/client-generator/write-package.js +125 -0
  77. package/dist/cjs/utils/clientGenerator.js +26 -303
  78. package/dist/cjs/utils/effect-client-generator/generator.js +68 -0
  79. package/dist/cjs/utils/effect-client-generator/index.js +51 -0
  80. package/dist/cjs/utils/effect-client-generator/paths.js +73 -0
  81. package/dist/cjs/utils/effect-client-generator/rendering.js +231 -0
  82. package/dist/cjs/utils/effect-client-generator/runtime.js +85 -0
  83. package/dist/cjs/utils/effect-client-generator/types.js +18 -0
  84. package/dist/cjs/utils/effectClientGenerator.js +5 -262
  85. package/dist/cjs/utils/effectSourceLoader.js +252 -0
  86. package/dist/esm/cli/compress.mjs +14 -0
  87. package/dist/esm/cli/generator.mjs +133 -0
  88. package/dist/esm/cli/prefix.mjs +9 -0
  89. package/dist/esm/cli/serverGlobalVars.mjs +76 -0
  90. package/dist/esm/cli/watch.mjs +13 -0
  91. package/dist/esm/cli.mjs +7 -121
  92. package/dist/esm/loader.mjs +19 -2
  93. package/dist/esm/runtime/data-platform/batch/queue.mjs +246 -0
  94. package/dist/esm/runtime/data-platform/batch/request.mjs +45 -0
  95. package/dist/esm/runtime/data-platform/batch/response.mjs +23 -0
  96. package/dist/esm/runtime/data-platform/batch/telemetry.mjs +23 -0
  97. package/dist/esm/runtime/data-platform/batch/url.mjs +25 -0
  98. package/dist/esm/runtime/data-platform/batch-transport.mjs +12 -0
  99. package/dist/esm/runtime/data-platform/codec.mjs +90 -0
  100. package/dist/esm/runtime/data-platform/index.mjs +6 -610
  101. package/dist/esm/runtime/data-platform/invalidation.mjs +20 -0
  102. package/dist/esm/runtime/data-platform/trace.mjs +29 -0
  103. package/dist/esm/runtime/data-platform/types.mjs +4 -0
  104. package/dist/esm/runtime/data-platform/validation.mjs +128 -0
  105. package/dist/esm/runtime/effect/adapter/constants.mjs +6 -0
  106. package/dist/esm/runtime/effect/adapter/cross-project-policy.mjs +23 -0
  107. package/dist/esm/runtime/effect/adapter/entry.mjs +44 -0
  108. package/dist/esm/runtime/effect/adapter/error-response.mjs +41 -0
  109. package/dist/esm/runtime/effect/adapter/handler.mjs +15 -0
  110. package/dist/esm/runtime/effect/adapter.mjs +27 -147
  111. package/dist/esm/runtime/effect/backend-federation/entry.mjs +61 -0
  112. package/dist/esm/runtime/effect/backend-federation/identity.mjs +41 -0
  113. package/dist/esm/runtime/effect/backend-federation/load.mjs +28 -0
  114. package/dist/esm/runtime/effect/backend-federation/plugin.mjs +15 -0
  115. package/dist/esm/runtime/effect/backend-federation/remotes.mjs +12 -0
  116. package/dist/esm/runtime/effect/backend-federation/runtime.mjs +26 -0
  117. package/dist/esm/runtime/effect/backend-federation/types.mjs +0 -0
  118. package/dist/esm/runtime/effect/backend-federation/utils.mjs +7 -0
  119. package/dist/esm/runtime/effect/backend-federation-manifest/errors.mjs +32 -0
  120. package/dist/esm/runtime/effect/backend-federation-manifest/index.mjs +4 -0
  121. package/dist/esm/runtime/effect/backend-federation-manifest/load.mjs +56 -0
  122. package/dist/esm/runtime/effect/backend-federation-manifest/metadata.mjs +42 -0
  123. package/dist/esm/runtime/effect/backend-federation-manifest/reference.mjs +76 -0
  124. package/dist/esm/runtime/effect/backend-federation-manifest/remote.mjs +30 -0
  125. package/dist/esm/runtime/effect/backend-federation-manifest/types.mjs +0 -0
  126. package/dist/esm/runtime/effect/backend-federation-manifest/validation.mjs +65 -0
  127. package/dist/esm/runtime/effect/backend-federation-manifest.mjs +1 -0
  128. package/dist/esm/runtime/effect/backend-federation.mjs +5 -0
  129. package/dist/esm/runtime/effect/dispatch.mjs +63 -0
  130. package/dist/esm/runtime/effect/edge.mjs +17 -63
  131. package/dist/esm/runtime/effect/endpoint-contracts.mjs +14 -14
  132. package/dist/esm/runtime/effect/entry-shape.mjs +36 -0
  133. package/dist/esm/runtime/effect/handler/batch-handler.mjs +123 -0
  134. package/dist/esm/runtime/effect/handler/batch.mjs +124 -0
  135. package/dist/esm/runtime/effect/handler/definition.mjs +60 -0
  136. package/dist/esm/runtime/effect/handler/envelope.mjs +63 -0
  137. package/dist/esm/runtime/effect/handler/http.mjs +58 -0
  138. package/dist/esm/runtime/effect/handler/openapi.mjs +19 -0
  139. package/dist/esm/runtime/effect/handler/routing.mjs +50 -0
  140. package/dist/esm/runtime/effect/handler/rpc.mjs +22 -0
  141. package/dist/esm/runtime/effect/handler/types.mjs +5 -0
  142. package/dist/esm/runtime/effect/handler.mjs +11 -506
  143. package/dist/esm/runtime/effect/index.mjs +5 -2
  144. package/dist/esm/runtime/effect/module.mjs +25 -82
  145. package/dist/esm/runtime/effect/rpcSerialization.mjs +16 -0
  146. package/dist/esm/runtime/effect-client/batch.mjs +35 -0
  147. package/dist/esm/runtime/effect-client/envelope.mjs +104 -0
  148. package/dist/esm/runtime/effect-client/guards.mjs +3 -0
  149. package/dist/esm/runtime/effect-client/index.mjs +27 -37
  150. package/dist/esm/runtime/effect-client/request-context.mjs +23 -0
  151. package/dist/esm/runtime/effect-client/request.mjs +28 -0
  152. package/dist/esm/runtime/effect-client/runtime.mjs +12 -178
  153. package/dist/esm/runtime/effect-client/types.mjs +0 -0
  154. package/dist/esm/runtime/hono/adapter.mjs +33 -80
  155. package/dist/esm/runtime/safe-failure.mjs +2 -1
  156. package/dist/esm/server.mjs +18 -29
  157. package/dist/esm/utils/client-generator/files.mjs +68 -0
  158. package/dist/esm/utils/client-generator/generate.mjs +88 -0
  159. package/dist/esm/utils/client-generator/index.mjs +4 -0
  160. package/dist/esm/utils/client-generator/package-json.mjs +78 -0
  161. package/dist/esm/utils/client-generator/write-package.mjs +74 -0
  162. package/dist/esm/utils/clientGenerator.mjs +2 -293
  163. package/dist/esm/utils/effect-client-generator/generator.mjs +27 -0
  164. package/dist/esm/utils/effect-client-generator/index.mjs +3 -0
  165. package/dist/esm/utils/effect-client-generator/paths.mjs +25 -0
  166. package/dist/esm/utils/effect-client-generator/rendering.mjs +180 -0
  167. package/dist/esm/utils/effect-client-generator/runtime.mjs +34 -0
  168. package/dist/esm/utils/effect-client-generator/types.mjs +0 -0
  169. package/dist/esm/utils/effectClientGenerator.mjs +1 -249
  170. package/dist/esm/utils/effectSourceLoader.mjs +199 -0
  171. package/dist/esm-node/cli/compress.mjs +15 -0
  172. package/dist/esm-node/cli/generator.mjs +134 -0
  173. package/dist/esm-node/cli/prefix.mjs +10 -0
  174. package/dist/esm-node/cli/serverGlobalVars.mjs +77 -0
  175. package/dist/esm-node/cli/watch.mjs +14 -0
  176. package/dist/esm-node/cli.mjs +7 -121
  177. package/dist/esm-node/loader.mjs +19 -2
  178. package/dist/esm-node/runtime/data-platform/batch/queue.mjs +247 -0
  179. package/dist/esm-node/runtime/data-platform/batch/request.mjs +46 -0
  180. package/dist/esm-node/runtime/data-platform/batch/response.mjs +24 -0
  181. package/dist/esm-node/runtime/data-platform/batch/telemetry.mjs +24 -0
  182. package/dist/esm-node/runtime/data-platform/batch/url.mjs +26 -0
  183. package/dist/esm-node/runtime/data-platform/batch-transport.mjs +13 -0
  184. package/dist/esm-node/runtime/data-platform/codec.mjs +91 -0
  185. package/dist/esm-node/runtime/data-platform/index.mjs +6 -610
  186. package/dist/esm-node/runtime/data-platform/invalidation.mjs +21 -0
  187. package/dist/esm-node/runtime/data-platform/trace.mjs +30 -0
  188. package/dist/esm-node/runtime/data-platform/types.mjs +5 -0
  189. package/dist/esm-node/runtime/data-platform/validation.mjs +129 -0
  190. package/dist/esm-node/runtime/effect/adapter/constants.mjs +7 -0
  191. package/dist/esm-node/runtime/effect/adapter/cross-project-policy.mjs +24 -0
  192. package/dist/esm-node/runtime/effect/adapter/entry.mjs +45 -0
  193. package/dist/esm-node/runtime/effect/adapter/error-response.mjs +42 -0
  194. package/dist/esm-node/runtime/effect/adapter/handler.mjs +16 -0
  195. package/dist/esm-node/runtime/effect/adapter.mjs +28 -149
  196. package/dist/esm-node/runtime/effect/backend-federation/entry.mjs +62 -0
  197. package/dist/esm-node/runtime/effect/backend-federation/identity.mjs +42 -0
  198. package/dist/esm-node/runtime/effect/backend-federation/load.mjs +29 -0
  199. package/dist/esm-node/runtime/effect/backend-federation/plugin.mjs +16 -0
  200. package/dist/esm-node/runtime/effect/backend-federation/remotes.mjs +13 -0
  201. package/dist/esm-node/runtime/effect/backend-federation/runtime.mjs +27 -0
  202. package/dist/esm-node/runtime/effect/backend-federation/types.mjs +1 -0
  203. package/dist/esm-node/runtime/effect/backend-federation/utils.mjs +8 -0
  204. package/dist/esm-node/runtime/effect/backend-federation-manifest/errors.mjs +33 -0
  205. package/dist/esm-node/runtime/effect/backend-federation-manifest/index.mjs +5 -0
  206. package/dist/esm-node/runtime/effect/backend-federation-manifest/load.mjs +57 -0
  207. package/dist/esm-node/runtime/effect/backend-federation-manifest/metadata.mjs +43 -0
  208. package/dist/esm-node/runtime/effect/backend-federation-manifest/reference.mjs +77 -0
  209. package/dist/esm-node/runtime/effect/backend-federation-manifest/remote.mjs +31 -0
  210. package/dist/esm-node/runtime/effect/backend-federation-manifest/types.mjs +1 -0
  211. package/dist/esm-node/runtime/effect/backend-federation-manifest/validation.mjs +66 -0
  212. package/dist/esm-node/runtime/effect/backend-federation-manifest.mjs +2 -0
  213. package/dist/esm-node/runtime/effect/backend-federation.mjs +6 -0
  214. package/dist/esm-node/runtime/effect/dispatch.mjs +64 -0
  215. package/dist/esm-node/runtime/effect/edge.mjs +17 -63
  216. package/dist/esm-node/runtime/effect/endpoint-contracts.mjs +14 -14
  217. package/dist/esm-node/runtime/effect/entry-shape.mjs +37 -0
  218. package/dist/esm-node/runtime/effect/handler/batch-handler.mjs +124 -0
  219. package/dist/esm-node/runtime/effect/handler/batch.mjs +125 -0
  220. package/dist/esm-node/runtime/effect/handler/definition.mjs +61 -0
  221. package/dist/esm-node/runtime/effect/handler/envelope.mjs +64 -0
  222. package/dist/esm-node/runtime/effect/handler/http.mjs +59 -0
  223. package/dist/esm-node/runtime/effect/handler/openapi.mjs +20 -0
  224. package/dist/esm-node/runtime/effect/handler/routing.mjs +51 -0
  225. package/dist/esm-node/runtime/effect/handler/rpc.mjs +23 -0
  226. package/dist/esm-node/runtime/effect/handler/types.mjs +6 -0
  227. package/dist/esm-node/runtime/effect/handler.mjs +11 -506
  228. package/dist/esm-node/runtime/effect/index.mjs +5 -2
  229. package/dist/esm-node/runtime/effect/module.mjs +25 -82
  230. package/dist/esm-node/runtime/effect/rpcSerialization.mjs +17 -0
  231. package/dist/esm-node/runtime/effect-client/batch.mjs +36 -0
  232. package/dist/esm-node/runtime/effect-client/envelope.mjs +105 -0
  233. package/dist/esm-node/runtime/effect-client/guards.mjs +4 -0
  234. package/dist/esm-node/runtime/effect-client/index.mjs +27 -37
  235. package/dist/esm-node/runtime/effect-client/request-context.mjs +24 -0
  236. package/dist/esm-node/runtime/effect-client/request.mjs +29 -0
  237. package/dist/esm-node/runtime/effect-client/runtime.mjs +12 -178
  238. package/dist/esm-node/runtime/effect-client/types.mjs +1 -0
  239. package/dist/esm-node/runtime/hono/adapter.mjs +33 -80
  240. package/dist/esm-node/runtime/safe-failure.mjs +2 -1
  241. package/dist/esm-node/server.mjs +18 -29
  242. package/dist/esm-node/utils/client-generator/files.mjs +69 -0
  243. package/dist/esm-node/utils/client-generator/generate.mjs +89 -0
  244. package/dist/esm-node/utils/client-generator/index.mjs +5 -0
  245. package/dist/esm-node/utils/client-generator/package-json.mjs +79 -0
  246. package/dist/esm-node/utils/client-generator/write-package.mjs +75 -0
  247. package/dist/esm-node/utils/clientGenerator.mjs +2 -293
  248. package/dist/esm-node/utils/effect-client-generator/generator.mjs +28 -0
  249. package/dist/esm-node/utils/effect-client-generator/index.mjs +4 -0
  250. package/dist/esm-node/utils/effect-client-generator/paths.mjs +26 -0
  251. package/dist/esm-node/utils/effect-client-generator/rendering.mjs +181 -0
  252. package/dist/esm-node/utils/effect-client-generator/runtime.mjs +36 -0
  253. package/dist/esm-node/utils/effect-client-generator/types.mjs +1 -0
  254. package/dist/esm-node/utils/effectClientGenerator.mjs +2 -251
  255. package/dist/esm-node/utils/effectSourceLoader.mjs +200 -0
  256. package/dist/types/cli/compress.d.ts +2 -0
  257. package/dist/types/cli/generator.d.ts +7 -0
  258. package/dist/types/cli/prefix.d.ts +2 -0
  259. package/dist/types/cli/serverGlobalVars.d.ts +4 -0
  260. package/dist/types/cli/watch.d.ts +1 -0
  261. package/dist/types/cli.d.ts +0 -1
  262. package/dist/types/runtime/data-platform/batch/queue.d.ts +8 -0
  263. package/dist/types/runtime/data-platform/batch/request.d.ts +13 -0
  264. package/dist/types/runtime/data-platform/batch/response.d.ts +3 -0
  265. package/dist/types/runtime/data-platform/batch/telemetry.d.ts +4 -0
  266. package/dist/types/runtime/data-platform/batch/url.d.ts +4 -0
  267. package/dist/types/runtime/data-platform/batch-transport.d.ts +3 -0
  268. package/dist/types/runtime/data-platform/codec.d.ts +17 -0
  269. package/dist/types/runtime/data-platform/index.d.ts +7 -191
  270. package/dist/types/runtime/data-platform/invalidation.d.ts +8 -0
  271. package/dist/types/runtime/data-platform/trace.d.ts +4 -0
  272. package/dist/types/runtime/data-platform/types.d.ts +146 -0
  273. package/dist/types/runtime/data-platform/validation.d.ts +29 -0
  274. package/dist/types/runtime/effect/adapter/constants.d.ts +1 -0
  275. package/dist/types/runtime/effect/adapter/cross-project-policy.d.ts +4 -0
  276. package/dist/types/runtime/effect/adapter/entry.d.ts +2 -0
  277. package/dist/types/runtime/effect/adapter/error-response.d.ts +2 -0
  278. package/dist/types/runtime/effect/adapter/handler.d.ts +7 -0
  279. package/dist/types/runtime/effect/adapter.d.ts +4 -13
  280. package/dist/types/runtime/effect/backend-federation/entry.d.ts +2 -0
  281. package/dist/types/runtime/effect/backend-federation/identity.d.ts +30 -0
  282. package/dist/types/runtime/effect/backend-federation/load.d.ts +13 -0
  283. package/dist/types/runtime/effect/backend-federation/plugin.d.ts +3 -0
  284. package/dist/types/runtime/effect/backend-federation/remotes.d.ts +2 -0
  285. package/dist/types/runtime/effect/backend-federation/runtime.d.ts +3 -0
  286. package/dist/types/runtime/effect/backend-federation/types.d.ts +73 -0
  287. package/dist/types/runtime/effect/backend-federation/utils.d.ts +2 -0
  288. package/dist/types/runtime/effect/backend-federation-manifest/errors.d.ts +11 -0
  289. package/dist/types/runtime/effect/backend-federation-manifest/index.d.ts +6 -0
  290. package/dist/types/runtime/effect/backend-federation-manifest/load.d.ts +3 -0
  291. package/dist/types/runtime/effect/backend-federation-manifest/metadata.d.ts +18 -0
  292. package/dist/types/runtime/effect/backend-federation-manifest/reference.d.ts +4 -0
  293. package/dist/types/runtime/effect/backend-federation-manifest/remote.d.ts +3 -0
  294. package/dist/types/runtime/effect/backend-federation-manifest/types.d.ts +51 -0
  295. package/dist/types/runtime/effect/backend-federation-manifest/validation.d.ts +5 -0
  296. package/dist/types/runtime/effect/backend-federation-manifest.d.ts +1 -0
  297. package/dist/types/runtime/effect/backend-federation.d.ts +7 -0
  298. package/dist/types/runtime/effect/dispatch.d.ts +13 -0
  299. package/dist/types/runtime/effect/edge.d.ts +8 -8
  300. package/dist/types/runtime/effect/endpoint-contracts.d.ts +11 -7
  301. package/dist/types/runtime/effect/entry-shape.d.ts +31 -0
  302. package/dist/types/runtime/effect/handler/batch-handler.d.ts +11 -0
  303. package/dist/types/runtime/effect/handler/batch.d.ts +17 -0
  304. package/dist/types/runtime/effect/handler/definition.d.ts +17 -0
  305. package/dist/types/runtime/effect/handler/envelope.d.ts +13 -0
  306. package/dist/types/runtime/effect/handler/http.d.ts +14 -0
  307. package/dist/types/runtime/effect/handler/openapi.d.ts +4 -0
  308. package/dist/types/runtime/effect/handler/routing.d.ts +5 -0
  309. package/dist/types/runtime/effect/handler/rpc.d.ts +7 -0
  310. package/dist/types/runtime/effect/handler/types.d.ts +148 -0
  311. package/dist/types/runtime/effect/handler.d.ts +4 -190
  312. package/dist/types/runtime/effect/index.d.ts +3 -0
  313. package/dist/types/runtime/effect/module.d.ts +3 -2
  314. package/dist/types/runtime/effect/rpcSerialization.d.ts +3 -0
  315. package/dist/types/runtime/effect-client/batch.d.ts +2 -0
  316. package/dist/types/runtime/effect-client/envelope.d.ts +15 -0
  317. package/dist/types/runtime/effect-client/guards.d.ts +2 -0
  318. package/dist/types/runtime/effect-client/index.d.ts +1 -1
  319. package/dist/types/runtime/effect-client/request-context.d.ts +3 -0
  320. package/dist/types/runtime/effect-client/request.d.ts +1 -0
  321. package/dist/types/runtime/effect-client/runtime.d.ts +2 -68
  322. package/dist/types/runtime/effect-client/types.d.ts +68 -0
  323. package/dist/types/runtime/hono/adapter.d.ts +14 -8
  324. package/dist/types/utils/client-generator/files.d.ts +28 -0
  325. package/dist/types/utils/client-generator/generate.d.ts +26 -0
  326. package/dist/types/utils/client-generator/index.d.ts +7 -0
  327. package/dist/types/utils/client-generator/package-json.d.ts +16 -0
  328. package/dist/types/utils/client-generator/write-package.d.ts +6 -0
  329. package/dist/types/utils/clientGenerator.d.ts +2 -37
  330. package/dist/types/utils/crossProjectServerPolicy.d.ts +3 -2
  331. package/dist/types/utils/effect-client-generator/generator.d.ts +10 -0
  332. package/dist/types/utils/effect-client-generator/index.d.ts +4 -0
  333. package/dist/types/utils/effect-client-generator/paths.d.ts +5 -0
  334. package/dist/types/utils/effect-client-generator/rendering.d.ts +4 -0
  335. package/dist/types/utils/effect-client-generator/runtime.d.ts +12 -0
  336. package/dist/types/utils/effect-client-generator/types.d.ts +27 -0
  337. package/dist/types/utils/effectClientGenerator.d.ts +2 -41
  338. package/dist/types/utils/effectSourceLoader.d.ts +15 -0
  339. package/package.json +57 -33
@@ -0,0 +1,52 @@
1
+ "use strict";
2
+ var __webpack_require__ = {};
3
+ (()=>{
4
+ __webpack_require__.d = (exports1, getters, values)=>{
5
+ var define = (defs, kind)=>{
6
+ for(var key in defs)if (__webpack_require__.o(defs, key) && !__webpack_require__.o(exports1, key)) Object.defineProperty(exports1, key, {
7
+ enumerable: true,
8
+ [kind]: defs[key]
9
+ });
10
+ };
11
+ define(getters, "get");
12
+ define(values, "value");
13
+ };
14
+ })();
15
+ (()=>{
16
+ __webpack_require__.o = (obj, prop)=>Object.prototype.hasOwnProperty.call(obj, prop);
17
+ })();
18
+ (()=>{
19
+ __webpack_require__.r = (exports1)=>{
20
+ if ("u" > typeof Symbol && Symbol.toStringTag) Object.defineProperty(exports1, Symbol.toStringTag, {
21
+ value: 'Module'
22
+ });
23
+ Object.defineProperty(exports1, '__esModule', {
24
+ value: true
25
+ });
26
+ };
27
+ })();
28
+ var __webpack_exports__ = {};
29
+ __webpack_require__.r(__webpack_exports__);
30
+ __webpack_require__.d(__webpack_exports__, {
31
+ createCompressConfig: ()=>createCompressConfig
32
+ });
33
+ const external_prefix_js_namespaceObject = require("./prefix.js");
34
+ const createCompressConfig = (devServer, prefix)=>{
35
+ if (!devServer || 'object' != typeof devServer || Array.isArray(devServer)) return;
36
+ const { compress } = devServer;
37
+ if (void 0 === compress || true === compress) {
38
+ const prefixes = (0, external_prefix_js_namespaceObject.normalizePrefixList)(prefix);
39
+ return {
40
+ filter: (req)=>!prefixes.some((item)=>req.url?.includes(item))
41
+ };
42
+ }
43
+ if (false === compress) return false;
44
+ return compress;
45
+ };
46
+ exports.createCompressConfig = __webpack_exports__.createCompressConfig;
47
+ for(var __rspack_i in __webpack_exports__)if (-1 === [
48
+ "createCompressConfig"
49
+ ].indexOf(__rspack_i)) exports[__rspack_i] = __webpack_exports__[__rspack_i];
50
+ Object.defineProperty(exports, '__esModule', {
51
+ value: true
52
+ });
@@ -0,0 +1,184 @@
1
+ "use strict";
2
+ var __webpack_require__ = {};
3
+ (()=>{
4
+ __webpack_require__.n = (module)=>{
5
+ var getter = module && module.__esModule ? ()=>module['default'] : ()=>module;
6
+ __webpack_require__.d(getter, {
7
+ a: getter
8
+ });
9
+ return getter;
10
+ };
11
+ })();
12
+ (()=>{
13
+ __webpack_require__.d = (exports1, getters, values)=>{
14
+ var define = (defs, kind)=>{
15
+ for(var key in defs)if (__webpack_require__.o(defs, key) && !__webpack_require__.o(exports1, key)) Object.defineProperty(exports1, key, {
16
+ enumerable: true,
17
+ [kind]: defs[key]
18
+ });
19
+ };
20
+ define(getters, "get");
21
+ define(values, "value");
22
+ };
23
+ })();
24
+ (()=>{
25
+ __webpack_require__.o = (obj, prop)=>Object.prototype.hasOwnProperty.call(obj, prop);
26
+ })();
27
+ (()=>{
28
+ __webpack_require__.r = (exports1)=>{
29
+ if ("u" > typeof Symbol && Symbol.toStringTag) Object.defineProperty(exports1, Symbol.toStringTag, {
30
+ value: 'Module'
31
+ });
32
+ Object.defineProperty(exports1, '__esModule', {
33
+ value: true
34
+ });
35
+ };
36
+ })();
37
+ var __webpack_exports__ = {};
38
+ __webpack_require__.r(__webpack_exports__);
39
+ __webpack_require__.d(__webpack_exports__, {
40
+ createBffGenerator: ()=>createBffGenerator
41
+ });
42
+ const bff_core_namespaceObject = require("@modern-js/bff-core");
43
+ const server_utils_namespaceObject = require("@modern-js/server-utils");
44
+ const utils_namespaceObject = require("@modern-js/utils");
45
+ const external_path_namespaceObject = require("path");
46
+ var external_path_default = /*#__PURE__*/ __webpack_require__.n(external_path_namespaceObject);
47
+ const clientGenerator_js_namespaceObject = require("../utils/clientGenerator.js");
48
+ var clientGenerator_js_default = /*#__PURE__*/ __webpack_require__.n(clientGenerator_js_namespaceObject);
49
+ const effectSourceLoader_js_namespaceObject = require("../utils/effectSourceLoader.js");
50
+ const pluginGenerator_js_namespaceObject = require("../utils/pluginGenerator.js");
51
+ var pluginGenerator_js_default = /*#__PURE__*/ __webpack_require__.n(pluginGenerator_js_namespaceObject);
52
+ const runtimeGenerator_js_namespaceObject = require("../utils/runtimeGenerator.js");
53
+ var runtimeGenerator_js_default = /*#__PURE__*/ __webpack_require__.n(runtimeGenerator_js_namespaceObject);
54
+ const external_prefix_js_namespaceObject = require("./prefix.js");
55
+ const external_serverGlobalVars_js_namespaceObject = require("./serverGlobalVars.js");
56
+ const RUNTIME_CREATE_REQUEST = '@modern-js/plugin-bff/client';
57
+ const effectEntryExtensions = [
58
+ '.js',
59
+ '.jsx',
60
+ '.ts',
61
+ '.tsx',
62
+ '.mjs',
63
+ '.mts',
64
+ '.cjs',
65
+ '.cts'
66
+ ];
67
+ function resolveEffectSourceEntry(appDirectory, apiDirectory, configuredEntry) {
68
+ const entry = configuredEntry ? external_path_default().isAbsolute(configuredEntry) ? configuredEntry : external_path_default().resolve(appDirectory, configuredEntry) : external_path_default().resolve(apiDirectory, 'index');
69
+ return external_path_default().extname(entry) ? entry : effectEntryExtensions.map((extension)=>`${entry}${extension}`).find((candidate)=>utils_namespaceObject.fs.existsSync(candidate));
70
+ }
71
+ function resolveBuiltEffectEntry(appDirectory, distDirectory, sourceEntry) {
72
+ if (!sourceEntry) return;
73
+ const relativeEntry = external_path_default().relative(appDirectory, sourceEntry);
74
+ if ('..' === relativeEntry || relativeEntry.startsWith(`..${external_path_default().sep}`)) throw new Error(`Effect BFF entry must be inside the application directory: ${sourceEntry}`);
75
+ const builtEntry = external_path_default().resolve(distDirectory, relativeEntry).replace(/\.(?:[cm]?ts|tsx|jsx)$/u, '.js');
76
+ return utils_namespaceObject.fs.existsSync(builtEntry) ? builtEntry : void 0;
77
+ }
78
+ const createBffGenerator = (api)=>{
79
+ const compileApi = async ()=>{
80
+ const { appDirectory, distDirectory, apiDirectory, bffRuntimeFramework, sharedDirectory, moduleType } = api.getAppContext();
81
+ const modernConfig = api.getNormalizedConfig();
82
+ const distDir = external_path_default().resolve(distDirectory);
83
+ const apiDir = apiDirectory || external_path_default().resolve(appDirectory, utils_namespaceObject.API_DIR);
84
+ const sharedDir = sharedDirectory || external_path_default().resolve(appDirectory, utils_namespaceObject.SHARED_DIR);
85
+ const tsconfigPath = (0, utils_namespaceObject.resolveServerTsconfig)(appDirectory, modernConfig?.server?.tsconfigPath);
86
+ const sourceDirs = [];
87
+ if (await utils_namespaceObject.fs.pathExists(apiDir)) sourceDirs.push(apiDir);
88
+ if (await utils_namespaceObject.fs.pathExists(sharedDir)) sourceDirs.push(sharedDir);
89
+ const { alias, globalVars } = modernConfig.source;
90
+ const { alias: resolveAlias } = modernConfig.resolve;
91
+ if (sourceDirs.length > 0) {
92
+ const combinedAlias = [].concat(alias ?? []).concat(resolveAlias ?? []);
93
+ const serializedGlobalVars = (0, external_serverGlobalVars_js_namespaceObject.serializeServerGlobalVars)(globalVars);
94
+ await (0, server_utils_namespaceObject.compile)(appDirectory, {
95
+ alias: combinedAlias
96
+ }, {
97
+ sourceDirs,
98
+ distDir,
99
+ tsconfigPath,
100
+ moduleType,
101
+ throwErrorInsteadOfExit: true
102
+ });
103
+ await (0, external_serverGlobalVars_js_namespaceObject.transformServerGlobalVars)(sourceDirs.map((sourceDir)=>external_path_default().resolve(distDir, external_path_default().relative(appDirectory, sourceDir))), serializedGlobalVars);
104
+ if ('effect' === bffRuntimeFramework) {
105
+ const sourceEntry = resolveEffectSourceEntry(appDirectory, apiDir, modernConfig.bff?.effect?.entry);
106
+ const builtEntry = resolveBuiltEffectEntry(appDirectory, distDir, sourceEntry);
107
+ if (!builtEntry) throw new Error(`Effect BFF entry was not emitted into ${distDir}: ${sourceEntry ?? external_path_default().resolve(apiDir, 'index')}`);
108
+ await (0, effectSourceLoader_js_namespaceObject.bundleEffectEntryForNode)({
109
+ appDir: appDirectory,
110
+ entryPath: builtEntry,
111
+ format: 'module' === moduleType ? 'esm' : 'cjs'
112
+ });
113
+ }
114
+ }
115
+ };
116
+ const generate = async ()=>{
117
+ const { appDirectory, apiDirectory, lambdaDirectory, port, bffRuntimeFramework } = api.getAppContext();
118
+ const modernConfig = api.getNormalizedConfig();
119
+ const relativeDistPath = modernConfig?.output?.distPath?.root || 'dist';
120
+ const { bff } = modernConfig || {};
121
+ const prefix = (0, external_prefix_js_namespaceObject.getPrimaryPrefix)(bff?.prefix);
122
+ const httpMethodDecider = bff?.httpMethodDecider;
123
+ const apiRouter = new bff_core_namespaceObject.ApiRouter({
124
+ apiDir: apiDirectory,
125
+ appDir: appDirectory,
126
+ lambdaDir: lambdaDirectory,
127
+ prefix,
128
+ httpMethodDecider,
129
+ isBuild: true
130
+ });
131
+ const lambdaDir = apiRouter.getLambdaDir();
132
+ const existLambda = apiRouter.isExistLambda();
133
+ const runtime = bff?.runtimeCreateRequest || RUNTIME_CREATE_REQUEST;
134
+ const relativeApiPath = external_path_default().relative(appDirectory, apiDirectory);
135
+ const relativeLambdaPath = external_path_default().relative(appDirectory, lambdaDir);
136
+ await pluginGenerator_js_default()({
137
+ prefix,
138
+ appDirectory,
139
+ relativeDistPath,
140
+ relativeApiPath,
141
+ relativeLambdaPath,
142
+ runtimeFramework: 'hono' === bffRuntimeFramework ? 'hono' : 'effect'
143
+ });
144
+ await clientGenerator_js_default()({
145
+ prefix,
146
+ appDir: appDirectory,
147
+ apiDir: apiDirectory,
148
+ lambdaDir,
149
+ existLambda,
150
+ port,
151
+ requestCreator: bff?.requestCreator,
152
+ httpMethodDecider,
153
+ relativeDistPath,
154
+ relativeApiPath,
155
+ bffRuntimeFramework,
156
+ effectEntry: bff?.effect?.entry,
157
+ effectDataPlatformBatch: bff?.effect?.dataPlatform?.batch
158
+ });
159
+ await runtimeGenerator_js_default()({
160
+ runtime,
161
+ appDirectory,
162
+ relativeDistPath
163
+ });
164
+ };
165
+ const handleCrossProjectInvocation = async (isBuild = false)=>{
166
+ const { bff } = api.getNormalizedConfig();
167
+ if (bff?.crossProject) {
168
+ if (!isBuild) await compileApi();
169
+ await generate();
170
+ }
171
+ };
172
+ return {
173
+ compileApi,
174
+ generate,
175
+ handleCrossProjectInvocation
176
+ };
177
+ };
178
+ exports.createBffGenerator = __webpack_exports__.createBffGenerator;
179
+ for(var __rspack_i in __webpack_exports__)if (-1 === [
180
+ "createBffGenerator"
181
+ ].indexOf(__rspack_i)) exports[__rspack_i] = __webpack_exports__[__rspack_i];
182
+ Object.defineProperty(exports, '__esModule', {
183
+ value: true
184
+ });
@@ -0,0 +1,50 @@
1
+ "use strict";
2
+ var __webpack_require__ = {};
3
+ (()=>{
4
+ __webpack_require__.d = (exports1, getters, values)=>{
5
+ var define = (defs, kind)=>{
6
+ for(var key in defs)if (__webpack_require__.o(defs, key) && !__webpack_require__.o(exports1, key)) Object.defineProperty(exports1, key, {
7
+ enumerable: true,
8
+ [kind]: defs[key]
9
+ });
10
+ };
11
+ define(getters, "get");
12
+ define(values, "value");
13
+ };
14
+ })();
15
+ (()=>{
16
+ __webpack_require__.o = (obj, prop)=>Object.prototype.hasOwnProperty.call(obj, prop);
17
+ })();
18
+ (()=>{
19
+ __webpack_require__.r = (exports1)=>{
20
+ if ("u" > typeof Symbol && Symbol.toStringTag) Object.defineProperty(exports1, Symbol.toStringTag, {
21
+ value: 'Module'
22
+ });
23
+ Object.defineProperty(exports1, '__esModule', {
24
+ value: true
25
+ });
26
+ };
27
+ })();
28
+ var __webpack_exports__ = {};
29
+ __webpack_require__.r(__webpack_exports__);
30
+ __webpack_require__.d(__webpack_exports__, {
31
+ getPrimaryPrefix: ()=>getPrimaryPrefix,
32
+ normalizePrefixList: ()=>normalizePrefixList
33
+ });
34
+ const utils_namespaceObject = require("@modern-js/utils");
35
+ const normalizePrefixList = (prefix)=>{
36
+ if (Array.isArray(prefix)) return prefix.filter(Boolean);
37
+ return [
38
+ prefix || utils_namespaceObject.DEFAULT_API_PREFIX
39
+ ];
40
+ };
41
+ const getPrimaryPrefix = (prefix)=>normalizePrefixList(prefix)[0] || utils_namespaceObject.DEFAULT_API_PREFIX;
42
+ exports.getPrimaryPrefix = __webpack_exports__.getPrimaryPrefix;
43
+ exports.normalizePrefixList = __webpack_exports__.normalizePrefixList;
44
+ for(var __rspack_i in __webpack_exports__)if (-1 === [
45
+ "getPrimaryPrefix",
46
+ "normalizePrefixList"
47
+ ].indexOf(__rspack_i)) exports[__rspack_i] = __webpack_exports__[__rspack_i];
48
+ Object.defineProperty(exports, '__esModule', {
49
+ value: true
50
+ });
@@ -0,0 +1,127 @@
1
+ "use strict";
2
+ var __webpack_require__ = {};
3
+ (()=>{
4
+ __webpack_require__.n = (module)=>{
5
+ var getter = module && module.__esModule ? ()=>module['default'] : ()=>module;
6
+ __webpack_require__.d(getter, {
7
+ a: getter
8
+ });
9
+ return getter;
10
+ };
11
+ })();
12
+ (()=>{
13
+ __webpack_require__.d = (exports1, getters, values)=>{
14
+ var define = (defs, kind)=>{
15
+ for(var key in defs)if (__webpack_require__.o(defs, key) && !__webpack_require__.o(exports1, key)) Object.defineProperty(exports1, key, {
16
+ enumerable: true,
17
+ [kind]: defs[key]
18
+ });
19
+ };
20
+ define(getters, "get");
21
+ define(values, "value");
22
+ };
23
+ })();
24
+ (()=>{
25
+ __webpack_require__.o = (obj, prop)=>Object.prototype.hasOwnProperty.call(obj, prop);
26
+ })();
27
+ (()=>{
28
+ __webpack_require__.r = (exports1)=>{
29
+ if ("u" > typeof Symbol && Symbol.toStringTag) Object.defineProperty(exports1, Symbol.toStringTag, {
30
+ value: 'Module'
31
+ });
32
+ Object.defineProperty(exports1, '__esModule', {
33
+ value: true
34
+ });
35
+ };
36
+ })();
37
+ var __webpack_exports__ = {};
38
+ __webpack_require__.r(__webpack_exports__);
39
+ __webpack_require__.d(__webpack_exports__, {
40
+ serializeServerGlobalVars: ()=>serializeServerGlobalVars,
41
+ transformServerGlobalVars: ()=>transformServerGlobalVars
42
+ });
43
+ const utils_namespaceObject = require("@modern-js/utils");
44
+ const core_namespaceObject = require("@swc/core");
45
+ const external_path_namespaceObject = require("path");
46
+ var external_path_default = /*#__PURE__*/ __webpack_require__.n(external_path_namespaceObject);
47
+ const RELEASE_IDENTITY_GLOBAL_NAMES = [
48
+ 'ULTRAMODERN_BUILD_MARKER',
49
+ 'ULTRAMODERN_SOURCE_REVISION',
50
+ 'ULTRAMODERN_RELEASE_VERSION'
51
+ ];
52
+ const collectJavaScriptFiles = async (directory)=>{
53
+ const entries = await utils_namespaceObject.fs.readdir(directory, {
54
+ withFileTypes: true
55
+ });
56
+ const nested = await Promise.all(entries.map(async (entry)=>{
57
+ const absolutePath = external_path_default().join(directory, entry.name);
58
+ if (entry.isDirectory()) return collectJavaScriptFiles(absolutePath);
59
+ return /\.(?:c|m)?js$/u.test(entry.name) ? [
60
+ absolutePath
61
+ ] : [];
62
+ }));
63
+ return nested.flat();
64
+ };
65
+ const serializeServerGlobalVars = (options)=>{
66
+ const globalVars = (0, utils_namespaceObject.applyOptionsChain)({}, options, {
67
+ env: 'server',
68
+ target: 'node'
69
+ });
70
+ return Object.fromEntries(Object.entries(globalVars).map(([key, value])=>{
71
+ let serialized;
72
+ try {
73
+ serialized = JSON.stringify(value);
74
+ } catch (error) {
75
+ throw new Error(`source.globalVars["${key}"] cannot be serialized exactly for BFF compilation.`, {
76
+ cause: error
77
+ });
78
+ }
79
+ if (void 0 === serialized) throw new Error(`source.globalVars["${key}"] cannot be serialized exactly for BFF compilation.`);
80
+ return [
81
+ key,
82
+ serialized
83
+ ];
84
+ }));
85
+ };
86
+ const transformServerGlobalVars = async (outputDirectories, globalVars)=>{
87
+ if (0 === Object.keys(globalVars).length) return;
88
+ const existingDirectories = (await Promise.all(outputDirectories.map(async (directory)=>await utils_namespaceObject.fs.pathExists(directory) ? directory : void 0))).filter((directory)=>Boolean(directory));
89
+ const files = (await Promise.all(existingDirectories.map(collectJavaScriptFiles))).flat();
90
+ const releaseIdentityBanner = RELEASE_IDENTITY_GLOBAL_NAMES.every((name)=>Object.hasOwn(globalVars, name)) ? `${RELEASE_IDENTITY_GLOBAL_NAMES.map((name)=>`void ${globalVars[name]};`).join('')}\n` : '';
91
+ await Promise.all(files.map(async (filename)=>{
92
+ const source = await utils_namespaceObject.fs.readFile(filename, 'utf8');
93
+ const sourceMapFilename = `${filename}.map`;
94
+ const sourceMapExists = await utils_namespaceObject.fs.pathExists(sourceMapFilename);
95
+ const inputSourceMap = sourceMapExists ? await utils_namespaceObject.fs.readFile(sourceMapFilename, 'utf8') : void 0;
96
+ const result = await (0, core_namespaceObject.transform)(`${releaseIdentityBanner}${source}`, {
97
+ filename,
98
+ inputSourceMap,
99
+ sourceMaps: sourceMapExists,
100
+ jsc: {
101
+ parser: {
102
+ syntax: "ecmascript"
103
+ },
104
+ preserveAllComments: true,
105
+ target: 'es2022',
106
+ transform: {
107
+ optimizer: {
108
+ globals: {
109
+ vars: globalVars
110
+ }
111
+ }
112
+ }
113
+ }
114
+ });
115
+ await utils_namespaceObject.fs.writeFile(filename, result.code);
116
+ if (sourceMapExists && result.map) await utils_namespaceObject.fs.writeFile(sourceMapFilename, result.map);
117
+ }));
118
+ };
119
+ exports.serializeServerGlobalVars = __webpack_exports__.serializeServerGlobalVars;
120
+ exports.transformServerGlobalVars = __webpack_exports__.transformServerGlobalVars;
121
+ for(var __rspack_i in __webpack_exports__)if (-1 === [
122
+ "serializeServerGlobalVars",
123
+ "transformServerGlobalVars"
124
+ ].indexOf(__rspack_i)) exports[__rspack_i] = __webpack_exports__[__rspack_i];
125
+ Object.defineProperty(exports, '__esModule', {
126
+ value: true
127
+ });
@@ -0,0 +1,51 @@
1
+ "use strict";
2
+ var __webpack_require__ = {};
3
+ (()=>{
4
+ __webpack_require__.d = (exports1, getters, values)=>{
5
+ var define = (defs, kind)=>{
6
+ for(var key in defs)if (__webpack_require__.o(defs, key) && !__webpack_require__.o(exports1, key)) Object.defineProperty(exports1, key, {
7
+ enumerable: true,
8
+ [kind]: defs[key]
9
+ });
10
+ };
11
+ define(getters, "get");
12
+ define(values, "value");
13
+ };
14
+ })();
15
+ (()=>{
16
+ __webpack_require__.o = (obj, prop)=>Object.prototype.hasOwnProperty.call(obj, prop);
17
+ })();
18
+ (()=>{
19
+ __webpack_require__.r = (exports1)=>{
20
+ if ("u" > typeof Symbol && Symbol.toStringTag) Object.defineProperty(exports1, Symbol.toStringTag, {
21
+ value: 'Module'
22
+ });
23
+ Object.defineProperty(exports1, '__esModule', {
24
+ value: true
25
+ });
26
+ };
27
+ })();
28
+ var __webpack_exports__ = {};
29
+ __webpack_require__.r(__webpack_exports__);
30
+ const WATCHABLE_EXTENSIONS = [
31
+ '.ts',
32
+ '.tsx',
33
+ '.js',
34
+ '.jsx',
35
+ '.mts',
36
+ '.cts',
37
+ '.mjs',
38
+ '.cjs',
39
+ '.json'
40
+ ];
41
+ const isWatchableBffFile = (filename)=>WATCHABLE_EXTENSIONS.some((ext)=>filename.endsWith(ext));
42
+ __webpack_require__.d(__webpack_exports__, {}, {
43
+ isWatchableBffFile: isWatchableBffFile
44
+ });
45
+ exports.isWatchableBffFile = __webpack_exports__.isWatchableBffFile;
46
+ for(var __rspack_i in __webpack_exports__)if (-1 === [
47
+ "isWatchableBffFile"
48
+ ].indexOf(__rspack_i)) exports[__rspack_i] = __webpack_exports__[__rspack_i];
49
+ Object.defineProperty(exports, '__esModule', {
50
+ value: true
51
+ });
package/dist/cjs/cli.js CHANGED
@@ -37,40 +37,16 @@ var __webpack_require__ = {};
37
37
  var __webpack_exports__ = {};
38
38
  __webpack_require__.r(__webpack_exports__);
39
39
  __webpack_require__.d(__webpack_exports__, {
40
- bffPlugin: ()=>bffPlugin,
41
- default: ()=>cli
40
+ bffPlugin: ()=>bffPlugin
42
41
  });
43
42
  const bff_core_namespaceObject = require("@modern-js/bff-core");
44
- const server_utils_namespaceObject = require("@modern-js/server-utils");
45
43
  const utils_namespaceObject = require("@modern-js/utils");
46
44
  const external_path_namespaceObject = require("path");
47
45
  var external_path_default = /*#__PURE__*/ __webpack_require__.n(external_path_namespaceObject);
48
- const clientGenerator_js_namespaceObject = require("./utils/clientGenerator.js");
49
- var clientGenerator_js_default = /*#__PURE__*/ __webpack_require__.n(clientGenerator_js_namespaceObject);
50
- const pluginGenerator_js_namespaceObject = require("./utils/pluginGenerator.js");
51
- var pluginGenerator_js_default = /*#__PURE__*/ __webpack_require__.n(pluginGenerator_js_namespaceObject);
52
- const runtimeGenerator_js_namespaceObject = require("./utils/runtimeGenerator.js");
53
- var runtimeGenerator_js_default = /*#__PURE__*/ __webpack_require__.n(runtimeGenerator_js_namespaceObject);
54
- const RUNTIME_CREATE_REQUEST = '@modern-js/plugin-bff/client';
55
- const WATCHABLE_EXTENSIONS = [
56
- '.ts',
57
- '.tsx',
58
- '.js',
59
- '.jsx',
60
- '.mts',
61
- '.cts',
62
- '.mjs',
63
- '.cjs',
64
- '.json'
65
- ];
66
- const isWatchableBffFile = (filename)=>WATCHABLE_EXTENSIONS.some((ext)=>filename.endsWith(ext));
67
- const normalizePrefixList = (prefix)=>{
68
- if (Array.isArray(prefix)) return prefix.filter(Boolean);
69
- return [
70
- prefix || utils_namespaceObject.DEFAULT_API_PREFIX
71
- ];
72
- };
73
- const getPrimaryPrefix = (prefix)=>normalizePrefixList(prefix)[0] || utils_namespaceObject.DEFAULT_API_PREFIX;
46
+ const compress_js_namespaceObject = require("./cli/compress.js");
47
+ const generator_js_namespaceObject = require("./cli/generator.js");
48
+ const prefix_js_namespaceObject = require("./cli/prefix.js");
49
+ const watch_js_namespaceObject = require("./cli/watch.js");
74
50
  const bffPlugin = ()=>({
75
51
  name: '@modern-js/plugin-bff',
76
52
  setup: (api)=>{
@@ -82,107 +58,15 @@ const bffPlugin = ()=>({
82
58
  bffRuntimeFramework: 'hono' === userRuntimeFramework ? 'hono' : 'effect'
83
59
  });
84
60
  }
85
- const compileApi = async ()=>{
86
- const { appDirectory, distDirectory, apiDirectory, sharedDirectory, moduleType } = api.getAppContext();
87
- const modernConfig = api.getNormalizedConfig();
88
- const distDir = external_path_default().resolve(distDirectory);
89
- const apiDir = apiDirectory || external_path_default().resolve(appDirectory, utils_namespaceObject.API_DIR);
90
- const sharedDir = sharedDirectory || external_path_default().resolve(appDirectory, utils_namespaceObject.SHARED_DIR);
91
- const tsconfigPath = (0, utils_namespaceObject.resolveServerTsconfig)(appDirectory, modernConfig?.server?.tsconfigPath);
92
- const sourceDirs = [];
93
- if (await utils_namespaceObject.fs.pathExists(apiDir)) sourceDirs.push(apiDir);
94
- if (await utils_namespaceObject.fs.pathExists(sharedDir)) sourceDirs.push(sharedDir);
95
- const { alias } = modernConfig.source;
96
- const { alias: resolveAlias } = modernConfig.resolve;
97
- if (sourceDirs.length > 0) {
98
- const combinedAlias = [].concat(alias ?? []).concat(resolveAlias ?? []);
99
- await (0, server_utils_namespaceObject.compile)(appDirectory, {
100
- alias: combinedAlias
101
- }, {
102
- sourceDirs,
103
- distDir,
104
- tsconfigPath,
105
- moduleType,
106
- throwErrorInsteadOfExit: true
107
- });
108
- }
109
- };
110
- const generator = async ()=>{
111
- const { appDirectory, apiDirectory, lambdaDirectory, port, bffRuntimeFramework } = api.getAppContext();
112
- const modernConfig = api.getNormalizedConfig();
113
- const relativeDistPath = modernConfig?.output?.distPath?.root || 'dist';
114
- const { bff } = modernConfig || {};
115
- const prefix = getPrimaryPrefix(bff?.prefix);
116
- const httpMethodDecider = bff?.httpMethodDecider;
117
- const apiRouter = new bff_core_namespaceObject.ApiRouter({
118
- apiDir: apiDirectory,
119
- appDir: appDirectory,
120
- lambdaDir: lambdaDirectory,
121
- prefix,
122
- httpMethodDecider,
123
- isBuild: true
124
- });
125
- const lambdaDir = apiRouter.getLambdaDir();
126
- const existLambda = apiRouter.isExistLambda();
127
- const runtime = bff?.runtimeCreateRequest || RUNTIME_CREATE_REQUEST;
128
- const relativeApiPath = external_path_default().relative(appDirectory, apiDirectory);
129
- const relativeLambdaPath = external_path_default().relative(appDirectory, lambdaDir);
130
- await pluginGenerator_js_default()({
131
- prefix,
132
- appDirectory,
133
- relativeDistPath,
134
- relativeApiPath,
135
- relativeLambdaPath,
136
- runtimeFramework: 'hono' === bffRuntimeFramework ? 'hono' : 'effect'
137
- });
138
- await clientGenerator_js_default()({
139
- prefix,
140
- appDir: appDirectory,
141
- apiDir: apiDirectory,
142
- lambdaDir,
143
- existLambda,
144
- port,
145
- requestCreator: bff?.requestCreator,
146
- httpMethodDecider,
147
- relativeDistPath,
148
- relativeApiPath,
149
- bffRuntimeFramework,
150
- effectEntry: bff?.effect?.entry,
151
- effectDataPlatformBatch: bff?.effect?.dataPlatform?.batch
152
- });
153
- await runtimeGenerator_js_default()({
154
- runtime,
155
- appDirectory,
156
- relativeDistPath
157
- });
158
- };
159
- const handleCrossProjectInvocation = async (isBuild = false)=>{
160
- const { bff } = api.getNormalizedConfig();
161
- if (bff?.crossProject) {
162
- if (!isBuild) await compileApi();
163
- await generator();
164
- }
165
- };
61
+ const { compileApi, handleCrossProjectInvocation } = (0, generator_js_namespaceObject.createBffGenerator)(api);
166
62
  const isHono = ()=>{
167
63
  const { bffRuntimeFramework } = api.getAppContext();
168
64
  return 'hono' === bffRuntimeFramework;
169
65
  };
170
- const createCompressConfig = (devServer, prefix)=>{
171
- if (!devServer || 'object' != typeof devServer || Array.isArray(devServer)) return;
172
- const { compress } = devServer;
173
- if (void 0 === compress || true === compress) {
174
- const prefixes = normalizePrefixList(prefix);
175
- return {
176
- filter: (req)=>!prefixes.some((item)=>req.url?.includes(item))
177
- };
178
- }
179
- if (false === compress) return false;
180
- return compress;
181
- };
182
66
  api.config(async ()=>{
183
67
  const devServer = api.getConfig()?.tools?.devServer;
184
- const prefix = api.getConfig()?.bff?.prefix || utils_namespaceObject.DEFAULT_API_PREFIX;
185
- const compress = createCompressConfig(devServer, prefix);
68
+ const prefix = api.getConfig()?.bff?.prefix;
69
+ const compress = (0, compress_js_namespaceObject.createCompressConfig)(devServer, prefix);
186
70
  return {
187
71
  tools: {
188
72
  devServer: {
@@ -192,7 +76,7 @@ const bffPlugin = ()=>({
192
76
  const { port, appDirectory, apiDirectory, lambdaDirectory, bffRuntimeFramework } = api.getAppContext();
193
77
  const modernConfig = api.getNormalizedConfig();
194
78
  const { bff } = modernConfig || {};
195
- const prefix = getPrimaryPrefix(bff?.prefix);
79
+ const prefix = (0, prefix_js_namespaceObject.getPrimaryPrefix)(bff?.prefix);
196
80
  const httpMethodDecider = bff?.httpMethodDecider;
197
81
  const apiRouter = new bff_core_namespaceObject.ApiRouter({
198
82
  apiDir: apiDirectory,
@@ -282,16 +166,13 @@ const bffPlugin = ()=>({
282
166
  const relativeSharedPath = sharedDirectory ? external_path_default().relative(appDirectory, sharedDirectory) : '';
283
167
  const isApiFile = filename.startsWith(`${relativeApiPath}/`);
284
168
  const isSharedFile = relativeSharedPath ? filename.startsWith(`${relativeSharedPath}/`) : false;
285
- if (!isPrivate && ('add' === eventType || 'change' === eventType || 'unlink' === eventType) && (isApiFile || isSharedFile) && isWatchableBffFile(filename)) await handleCrossProjectInvocation();
169
+ if (!isPrivate && ('add' === eventType || 'change' === eventType || 'unlink' === eventType) && (isApiFile || isSharedFile) && (0, watch_js_namespaceObject.isWatchableBffFile)(filename)) await handleCrossProjectInvocation();
286
170
  });
287
171
  }
288
172
  });
289
- const cli = bffPlugin;
290
173
  exports.bffPlugin = __webpack_exports__.bffPlugin;
291
- exports["default"] = __webpack_exports__["default"];
292
174
  for(var __rspack_i in __webpack_exports__)if (-1 === [
293
- "bffPlugin",
294
- "default"
175
+ "bffPlugin"
295
176
  ].indexOf(__rspack_i)) exports[__rspack_i] = __webpack_exports__[__rspack_i];
296
177
  Object.defineProperty(exports, '__esModule', {
297
178
  value: true