@bleedingdev/modern-js-plugin-bff 3.8.3-ultramodern.1 → 3.8.3-ultramodern.3

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 (340) hide show
  1. package/dist/cjs/cli/generator.js +45 -53
  2. package/dist/cjs/cli/serverGlobalVars.js +1 -1
  3. package/dist/cjs/cli.js +1 -0
  4. package/dist/cjs/loader.js +7 -18
  5. package/dist/cjs/runtime/data-platform/index.js +32 -94
  6. package/dist/cjs/runtime/effect/edge-dispatcher.js +5 -91
  7. package/dist/cjs/runtime/effect/edge.js +11 -45
  8. package/dist/cjs/runtime/effect/index.js +173 -55
  9. package/dist/cjs/runtime/effect-client/index.js +32 -166
  10. package/dist/cjs/runtime/effect-client/runtime.js +32 -70
  11. package/dist/cjs/runtime/hono/adapter.js +13 -54
  12. package/dist/cjs/server.js +2 -2
  13. package/dist/cjs/utils/client-generator/generate.js +9 -6
  14. package/dist/cjs/utils/crossProjectApiPlugin.js +5 -1
  15. package/dist/cjs/utils/pluginGenerator.js +4 -4
  16. package/dist/cjs/utils/runtimeGenerator.js +4 -16
  17. package/dist/esm/cli/generator.mjs +45 -53
  18. package/dist/esm/cli/serverGlobalVars.mjs +1 -1
  19. package/dist/esm/cli.mjs +1 -0
  20. package/dist/esm/loader.mjs +5 -16
  21. package/dist/esm/runtime/data-platform/index.mjs +1 -7
  22. package/dist/esm/runtime/effect/edge-dispatcher.mjs +1 -38
  23. package/dist/esm/runtime/effect/edge.mjs +2 -2
  24. package/dist/esm/runtime/effect/index.mjs +16 -8
  25. package/dist/esm/runtime/effect-client/index.mjs +1 -98
  26. package/dist/esm/runtime/effect-client/runtime.mjs +1 -62
  27. package/dist/esm/runtime/hono/adapter.mjs +13 -54
  28. package/dist/esm/server.mjs +2 -2
  29. package/dist/esm/utils/client-generator/generate.mjs +8 -5
  30. package/dist/esm/utils/crossProjectApiPlugin.mjs +3 -2
  31. package/dist/esm/utils/pluginGenerator.mjs +5 -5
  32. package/dist/esm/utils/runtimeGenerator.mjs +4 -16
  33. package/dist/esm-node/cli/generator.mjs +45 -53
  34. package/dist/esm-node/cli/serverGlobalVars.mjs +1 -1
  35. package/dist/esm-node/cli.mjs +1 -0
  36. package/dist/esm-node/loader.mjs +5 -16
  37. package/dist/esm-node/runtime/data-platform/index.mjs +1 -7
  38. package/dist/esm-node/runtime/effect/edge-dispatcher.mjs +1 -38
  39. package/dist/esm-node/runtime/effect/edge.mjs +2 -2
  40. package/dist/esm-node/runtime/effect/index.mjs +16 -8
  41. package/dist/esm-node/runtime/effect-client/index.mjs +1 -98
  42. package/dist/esm-node/runtime/effect-client/runtime.mjs +1 -62
  43. package/dist/esm-node/runtime/hono/adapter.mjs +13 -54
  44. package/dist/esm-node/server.mjs +2 -2
  45. package/dist/esm-node/utils/client-generator/generate.mjs +8 -5
  46. package/dist/esm-node/utils/crossProjectApiPlugin.mjs +3 -2
  47. package/dist/esm-node/utils/pluginGenerator.mjs +5 -5
  48. package/dist/esm-node/utils/runtimeGenerator.mjs +4 -16
  49. package/dist/types/loader.d.ts +1 -0
  50. package/dist/types/runtime/data-platform/index.d.ts +1 -8
  51. package/dist/types/runtime/effect/edge-dispatcher.d.ts +1 -26
  52. package/dist/types/runtime/effect/edge.d.ts +2 -2
  53. package/dist/types/runtime/effect/index.d.ts +15 -7
  54. package/dist/types/runtime/effect-client/index.d.ts +1 -58
  55. package/dist/types/runtime/effect-client/runtime.d.ts +1 -5
  56. package/dist/types/runtime/hono/adapter.d.ts +1 -11
  57. package/dist/types/utils/client-generator/generate.d.ts +2 -1
  58. package/dist/types/utils/crossProjectApiPlugin.d.ts +1 -0
  59. package/dist/types/utils/pluginGenerator.d.ts +2 -1
  60. package/package.json +29 -28
  61. package/dist/cjs/runtime/data-platform/batch/queue.js +0 -284
  62. package/dist/cjs/runtime/data-platform/batch/request.js +0 -98
  63. package/dist/cjs/runtime/data-platform/batch/response.js +0 -64
  64. package/dist/cjs/runtime/data-platform/batch/telemetry.js +0 -67
  65. package/dist/cjs/runtime/data-platform/batch/url.js +0 -69
  66. package/dist/cjs/runtime/data-platform/batch-transport.js +0 -59
  67. package/dist/cjs/runtime/data-platform/codec.js +0 -155
  68. package/dist/cjs/runtime/data-platform/invalidation.js +0 -61
  69. package/dist/cjs/runtime/data-platform/trace.js +0 -73
  70. package/dist/cjs/runtime/data-platform/types.js +0 -48
  71. package/dist/cjs/runtime/data-platform/validation.js +0 -178
  72. package/dist/cjs/runtime/effect/adapter/constants.js +0 -44
  73. package/dist/cjs/runtime/effect/adapter/cross-project-policy.js +0 -66
  74. package/dist/cjs/runtime/effect/adapter/entry.js +0 -100
  75. package/dist/cjs/runtime/effect/adapter/error-response.js +0 -81
  76. package/dist/cjs/runtime/effect/adapter/handler.js +0 -53
  77. package/dist/cjs/runtime/effect/adapter.js +0 -155
  78. package/dist/cjs/runtime/effect/backend-federation/entry.js +0 -99
  79. package/dist/cjs/runtime/effect/backend-federation/identity.js +0 -82
  80. package/dist/cjs/runtime/effect/backend-federation/load.js +0 -75
  81. package/dist/cjs/runtime/effect/backend-federation/plugin.js +0 -63
  82. package/dist/cjs/runtime/effect/backend-federation/remotes.js +0 -51
  83. package/dist/cjs/runtime/effect/backend-federation/runtime.js +0 -128
  84. package/dist/cjs/runtime/effect/backend-federation/types.js +0 -18
  85. package/dist/cjs/runtime/effect/backend-federation/utils.js +0 -48
  86. package/dist/cjs/runtime/effect/backend-federation-manifest/errors.js +0 -83
  87. package/dist/cjs/runtime/effect/backend-federation-manifest/index.js +0 -55
  88. package/dist/cjs/runtime/effect/backend-federation-manifest/load.js +0 -94
  89. package/dist/cjs/runtime/effect/backend-federation-manifest/metadata.js +0 -101
  90. package/dist/cjs/runtime/effect/backend-federation-manifest/reference.js +0 -120
  91. package/dist/cjs/runtime/effect/backend-federation-manifest/remote.js +0 -68
  92. package/dist/cjs/runtime/effect/backend-federation-manifest/types.js +0 -18
  93. package/dist/cjs/runtime/effect/backend-federation-manifest/validation.js +0 -109
  94. package/dist/cjs/runtime/effect/backend-federation-manifest.js +0 -62
  95. package/dist/cjs/runtime/effect/backend-federation.js +0 -65
  96. package/dist/cjs/runtime/effect/context.js +0 -60
  97. package/dist/cjs/runtime/effect/dispatch.js +0 -101
  98. package/dist/cjs/runtime/effect/edge-context.js +0 -81
  99. package/dist/cjs/runtime/effect/endpoint-contracts.js +0 -121
  100. package/dist/cjs/runtime/effect/entry-shape.js +0 -84
  101. package/dist/cjs/runtime/effect/handler/batch-handler.js +0 -161
  102. package/dist/cjs/runtime/effect/handler/batch.js +0 -159
  103. package/dist/cjs/runtime/effect/handler/definition.js +0 -102
  104. package/dist/cjs/runtime/effect/handler/envelope.js +0 -104
  105. package/dist/cjs/runtime/effect/handler/http.js +0 -107
  106. package/dist/cjs/runtime/effect/handler/openapi.js +0 -57
  107. package/dist/cjs/runtime/effect/handler/routing.js +0 -100
  108. package/dist/cjs/runtime/effect/handler/rpc.js +0 -63
  109. package/dist/cjs/runtime/effect/handler/types.js +0 -43
  110. package/dist/cjs/runtime/effect/handler.js +0 -189
  111. package/dist/cjs/runtime/effect/module.js +0 -113
  112. package/dist/cjs/runtime/effect/operation-context.js +0 -103
  113. package/dist/cjs/runtime/effect/rpcSerialization.js +0 -54
  114. package/dist/cjs/runtime/effect-client/batch.js +0 -73
  115. package/dist/cjs/runtime/effect-client/envelope.js +0 -145
  116. package/dist/cjs/runtime/effect-client/guards.js +0 -44
  117. package/dist/cjs/runtime/effect-client/request-context.js +0 -64
  118. package/dist/cjs/runtime/effect-client/request.js +0 -66
  119. package/dist/cjs/runtime/effect-client/types.js +0 -18
  120. package/dist/cjs/runtime/safe-failure.js +0 -84
  121. package/dist/cjs/utils/crossProjectServerPolicy.js +0 -98
  122. package/dist/cjs/utils/effect-client-generator/generator.js +0 -69
  123. package/dist/cjs/utils/effect-client-generator/index.js +0 -51
  124. package/dist/cjs/utils/effect-client-generator/paths.js +0 -62
  125. package/dist/cjs/utils/effect-client-generator/rendering.js +0 -220
  126. package/dist/cjs/utils/effect-client-generator/runtime.js +0 -68
  127. package/dist/cjs/utils/effect-client-generator/types.js +0 -18
  128. package/dist/cjs/utils/effectClientGenerator.js +0 -49
  129. package/dist/cjs/utils/effectSourceLoader.js +0 -312
  130. package/dist/cjs/utils/headers.js +0 -46
  131. package/dist/esm/runtime/data-platform/batch/queue.mjs +0 -246
  132. package/dist/esm/runtime/data-platform/batch/request.mjs +0 -45
  133. package/dist/esm/runtime/data-platform/batch/response.mjs +0 -23
  134. package/dist/esm/runtime/data-platform/batch/telemetry.mjs +0 -23
  135. package/dist/esm/runtime/data-platform/batch/url.mjs +0 -25
  136. package/dist/esm/runtime/data-platform/batch-transport.mjs +0 -12
  137. package/dist/esm/runtime/data-platform/codec.mjs +0 -90
  138. package/dist/esm/runtime/data-platform/invalidation.mjs +0 -20
  139. package/dist/esm/runtime/data-platform/trace.mjs +0 -29
  140. package/dist/esm/runtime/data-platform/types.mjs +0 -4
  141. package/dist/esm/runtime/data-platform/validation.mjs +0 -128
  142. package/dist/esm/runtime/effect/adapter/constants.mjs +0 -6
  143. package/dist/esm/runtime/effect/adapter/cross-project-policy.mjs +0 -28
  144. package/dist/esm/runtime/effect/adapter/entry.mjs +0 -52
  145. package/dist/esm/runtime/effect/adapter/error-response.mjs +0 -43
  146. package/dist/esm/runtime/effect/adapter/handler.mjs +0 -15
  147. package/dist/esm/runtime/effect/adapter.mjs +0 -107
  148. package/dist/esm/runtime/effect/backend-federation/entry.mjs +0 -61
  149. package/dist/esm/runtime/effect/backend-federation/identity.mjs +0 -41
  150. package/dist/esm/runtime/effect/backend-federation/load.mjs +0 -37
  151. package/dist/esm/runtime/effect/backend-federation/plugin.mjs +0 -25
  152. package/dist/esm/runtime/effect/backend-federation/remotes.mjs +0 -13
  153. package/dist/esm/runtime/effect/backend-federation/runtime.mjs +0 -90
  154. package/dist/esm/runtime/effect/backend-federation/types.mjs +0 -0
  155. package/dist/esm/runtime/effect/backend-federation/utils.mjs +0 -7
  156. package/dist/esm/runtime/effect/backend-federation-manifest/errors.mjs +0 -32
  157. package/dist/esm/runtime/effect/backend-federation-manifest/index.mjs +0 -4
  158. package/dist/esm/runtime/effect/backend-federation-manifest/load.mjs +0 -56
  159. package/dist/esm/runtime/effect/backend-federation-manifest/metadata.mjs +0 -42
  160. package/dist/esm/runtime/effect/backend-federation-manifest/reference.mjs +0 -76
  161. package/dist/esm/runtime/effect/backend-federation-manifest/remote.mjs +0 -30
  162. package/dist/esm/runtime/effect/backend-federation-manifest/types.mjs +0 -0
  163. package/dist/esm/runtime/effect/backend-federation-manifest/validation.mjs +0 -65
  164. package/dist/esm/runtime/effect/backend-federation-manifest.mjs +0 -1
  165. package/dist/esm/runtime/effect/backend-federation.mjs +0 -5
  166. package/dist/esm/runtime/effect/context.mjs +0 -13
  167. package/dist/esm/runtime/effect/dispatch.mjs +0 -63
  168. package/dist/esm/runtime/effect/edge-context.mjs +0 -34
  169. package/dist/esm/runtime/effect/endpoint-contracts.mjs +0 -68
  170. package/dist/esm/runtime/effect/entry-shape.mjs +0 -36
  171. package/dist/esm/runtime/effect/handler/batch-handler.mjs +0 -123
  172. package/dist/esm/runtime/effect/handler/batch.mjs +0 -97
  173. package/dist/esm/runtime/effect/handler/definition.mjs +0 -61
  174. package/dist/esm/runtime/effect/handler/envelope.mjs +0 -63
  175. package/dist/esm/runtime/effect/handler/http.mjs +0 -69
  176. package/dist/esm/runtime/effect/handler/openapi.mjs +0 -19
  177. package/dist/esm/runtime/effect/handler/routing.mjs +0 -50
  178. package/dist/esm/runtime/effect/handler/rpc.mjs +0 -22
  179. package/dist/esm/runtime/effect/handler/types.mjs +0 -5
  180. package/dist/esm/runtime/effect/handler.mjs +0 -14
  181. package/dist/esm/runtime/effect/module.mjs +0 -75
  182. package/dist/esm/runtime/effect/operation-context.mjs +0 -65
  183. package/dist/esm/runtime/effect/rpcSerialization.mjs +0 -16
  184. package/dist/esm/runtime/effect-client/batch.mjs +0 -35
  185. package/dist/esm/runtime/effect-client/envelope.mjs +0 -104
  186. package/dist/esm/runtime/effect-client/guards.mjs +0 -3
  187. package/dist/esm/runtime/effect-client/request-context.mjs +0 -23
  188. package/dist/esm/runtime/effect-client/request.mjs +0 -28
  189. package/dist/esm/runtime/effect-client/types.mjs +0 -0
  190. package/dist/esm/runtime/safe-failure.mjs +0 -46
  191. package/dist/esm/utils/crossProjectServerPolicy.mjs +0 -44
  192. package/dist/esm/utils/effect-client-generator/generator.mjs +0 -28
  193. package/dist/esm/utils/effect-client-generator/index.mjs +0 -3
  194. package/dist/esm/utils/effect-client-generator/paths.mjs +0 -24
  195. package/dist/esm/utils/effect-client-generator/rendering.mjs +0 -179
  196. package/dist/esm/utils/effect-client-generator/runtime.mjs +0 -27
  197. package/dist/esm/utils/effect-client-generator/types.mjs +0 -0
  198. package/dist/esm/utils/effectClientGenerator.mjs +0 -1
  199. package/dist/esm/utils/effectSourceLoader.mjs +0 -256
  200. package/dist/esm/utils/headers.mjs +0 -8
  201. package/dist/esm-node/runtime/data-platform/batch/queue.mjs +0 -247
  202. package/dist/esm-node/runtime/data-platform/batch/request.mjs +0 -46
  203. package/dist/esm-node/runtime/data-platform/batch/response.mjs +0 -24
  204. package/dist/esm-node/runtime/data-platform/batch/telemetry.mjs +0 -24
  205. package/dist/esm-node/runtime/data-platform/batch/url.mjs +0 -26
  206. package/dist/esm-node/runtime/data-platform/batch-transport.mjs +0 -13
  207. package/dist/esm-node/runtime/data-platform/codec.mjs +0 -91
  208. package/dist/esm-node/runtime/data-platform/invalidation.mjs +0 -21
  209. package/dist/esm-node/runtime/data-platform/trace.mjs +0 -30
  210. package/dist/esm-node/runtime/data-platform/types.mjs +0 -5
  211. package/dist/esm-node/runtime/data-platform/validation.mjs +0 -129
  212. package/dist/esm-node/runtime/effect/adapter/constants.mjs +0 -7
  213. package/dist/esm-node/runtime/effect/adapter/cross-project-policy.mjs +0 -29
  214. package/dist/esm-node/runtime/effect/adapter/entry.mjs +0 -53
  215. package/dist/esm-node/runtime/effect/adapter/error-response.mjs +0 -44
  216. package/dist/esm-node/runtime/effect/adapter/handler.mjs +0 -16
  217. package/dist/esm-node/runtime/effect/adapter.mjs +0 -108
  218. package/dist/esm-node/runtime/effect/backend-federation/entry.mjs +0 -62
  219. package/dist/esm-node/runtime/effect/backend-federation/identity.mjs +0 -42
  220. package/dist/esm-node/runtime/effect/backend-federation/load.mjs +0 -38
  221. package/dist/esm-node/runtime/effect/backend-federation/plugin.mjs +0 -26
  222. package/dist/esm-node/runtime/effect/backend-federation/remotes.mjs +0 -14
  223. package/dist/esm-node/runtime/effect/backend-federation/runtime.mjs +0 -91
  224. package/dist/esm-node/runtime/effect/backend-federation/types.mjs +0 -1
  225. package/dist/esm-node/runtime/effect/backend-federation/utils.mjs +0 -8
  226. package/dist/esm-node/runtime/effect/backend-federation-manifest/errors.mjs +0 -33
  227. package/dist/esm-node/runtime/effect/backend-federation-manifest/index.mjs +0 -5
  228. package/dist/esm-node/runtime/effect/backend-federation-manifest/load.mjs +0 -57
  229. package/dist/esm-node/runtime/effect/backend-federation-manifest/metadata.mjs +0 -43
  230. package/dist/esm-node/runtime/effect/backend-federation-manifest/reference.mjs +0 -77
  231. package/dist/esm-node/runtime/effect/backend-federation-manifest/remote.mjs +0 -31
  232. package/dist/esm-node/runtime/effect/backend-federation-manifest/types.mjs +0 -1
  233. package/dist/esm-node/runtime/effect/backend-federation-manifest/validation.mjs +0 -66
  234. package/dist/esm-node/runtime/effect/backend-federation-manifest.mjs +0 -2
  235. package/dist/esm-node/runtime/effect/backend-federation.mjs +0 -6
  236. package/dist/esm-node/runtime/effect/context.mjs +0 -14
  237. package/dist/esm-node/runtime/effect/dispatch.mjs +0 -64
  238. package/dist/esm-node/runtime/effect/edge-context.mjs +0 -35
  239. package/dist/esm-node/runtime/effect/endpoint-contracts.mjs +0 -69
  240. package/dist/esm-node/runtime/effect/entry-shape.mjs +0 -37
  241. package/dist/esm-node/runtime/effect/handler/batch-handler.mjs +0 -124
  242. package/dist/esm-node/runtime/effect/handler/batch.mjs +0 -98
  243. package/dist/esm-node/runtime/effect/handler/definition.mjs +0 -62
  244. package/dist/esm-node/runtime/effect/handler/envelope.mjs +0 -64
  245. package/dist/esm-node/runtime/effect/handler/http.mjs +0 -70
  246. package/dist/esm-node/runtime/effect/handler/openapi.mjs +0 -20
  247. package/dist/esm-node/runtime/effect/handler/routing.mjs +0 -51
  248. package/dist/esm-node/runtime/effect/handler/rpc.mjs +0 -23
  249. package/dist/esm-node/runtime/effect/handler/types.mjs +0 -6
  250. package/dist/esm-node/runtime/effect/handler.mjs +0 -15
  251. package/dist/esm-node/runtime/effect/module.mjs +0 -76
  252. package/dist/esm-node/runtime/effect/operation-context.mjs +0 -66
  253. package/dist/esm-node/runtime/effect/rpcSerialization.mjs +0 -17
  254. package/dist/esm-node/runtime/effect-client/batch.mjs +0 -36
  255. package/dist/esm-node/runtime/effect-client/envelope.mjs +0 -105
  256. package/dist/esm-node/runtime/effect-client/guards.mjs +0 -4
  257. package/dist/esm-node/runtime/effect-client/request-context.mjs +0 -24
  258. package/dist/esm-node/runtime/effect-client/request.mjs +0 -29
  259. package/dist/esm-node/runtime/effect-client/types.mjs +0 -1
  260. package/dist/esm-node/runtime/safe-failure.mjs +0 -47
  261. package/dist/esm-node/utils/crossProjectServerPolicy.mjs +0 -46
  262. package/dist/esm-node/utils/effect-client-generator/generator.mjs +0 -29
  263. package/dist/esm-node/utils/effect-client-generator/index.mjs +0 -4
  264. package/dist/esm-node/utils/effect-client-generator/paths.mjs +0 -25
  265. package/dist/esm-node/utils/effect-client-generator/rendering.mjs +0 -180
  266. package/dist/esm-node/utils/effect-client-generator/runtime.mjs +0 -29
  267. package/dist/esm-node/utils/effect-client-generator/types.mjs +0 -1
  268. package/dist/esm-node/utils/effectClientGenerator.mjs +0 -2
  269. package/dist/esm-node/utils/effectSourceLoader.mjs +0 -257
  270. package/dist/esm-node/utils/headers.mjs +0 -9
  271. package/dist/types/runtime/data-platform/batch/queue.d.ts +0 -8
  272. package/dist/types/runtime/data-platform/batch/request.d.ts +0 -13
  273. package/dist/types/runtime/data-platform/batch/response.d.ts +0 -3
  274. package/dist/types/runtime/data-platform/batch/telemetry.d.ts +0 -4
  275. package/dist/types/runtime/data-platform/batch/url.d.ts +0 -4
  276. package/dist/types/runtime/data-platform/batch-transport.d.ts +0 -3
  277. package/dist/types/runtime/data-platform/codec.d.ts +0 -17
  278. package/dist/types/runtime/data-platform/invalidation.d.ts +0 -8
  279. package/dist/types/runtime/data-platform/trace.d.ts +0 -4
  280. package/dist/types/runtime/data-platform/types.d.ts +0 -146
  281. package/dist/types/runtime/data-platform/validation.d.ts +0 -29
  282. package/dist/types/runtime/effect/adapter/constants.d.ts +0 -1
  283. package/dist/types/runtime/effect/adapter/cross-project-policy.d.ts +0 -4
  284. package/dist/types/runtime/effect/adapter/entry.d.ts +0 -2
  285. package/dist/types/runtime/effect/adapter/error-response.d.ts +0 -2
  286. package/dist/types/runtime/effect/adapter/handler.d.ts +0 -7
  287. package/dist/types/runtime/effect/adapter.d.ts +0 -22
  288. package/dist/types/runtime/effect/backend-federation/entry.d.ts +0 -2
  289. package/dist/types/runtime/effect/backend-federation/identity.d.ts +0 -30
  290. package/dist/types/runtime/effect/backend-federation/load.d.ts +0 -13
  291. package/dist/types/runtime/effect/backend-federation/plugin.d.ts +0 -3
  292. package/dist/types/runtime/effect/backend-federation/remotes.d.ts +0 -2
  293. package/dist/types/runtime/effect/backend-federation/runtime.d.ts +0 -3
  294. package/dist/types/runtime/effect/backend-federation/types.d.ts +0 -73
  295. package/dist/types/runtime/effect/backend-federation/utils.d.ts +0 -2
  296. package/dist/types/runtime/effect/backend-federation-manifest/errors.d.ts +0 -11
  297. package/dist/types/runtime/effect/backend-federation-manifest/index.d.ts +0 -6
  298. package/dist/types/runtime/effect/backend-federation-manifest/load.d.ts +0 -3
  299. package/dist/types/runtime/effect/backend-federation-manifest/metadata.d.ts +0 -18
  300. package/dist/types/runtime/effect/backend-federation-manifest/reference.d.ts +0 -4
  301. package/dist/types/runtime/effect/backend-federation-manifest/remote.d.ts +0 -3
  302. package/dist/types/runtime/effect/backend-federation-manifest/types.d.ts +0 -51
  303. package/dist/types/runtime/effect/backend-federation-manifest/validation.d.ts +0 -5
  304. package/dist/types/runtime/effect/backend-federation-manifest.d.ts +0 -1
  305. package/dist/types/runtime/effect/backend-federation.d.ts +0 -7
  306. package/dist/types/runtime/effect/context.d.ts +0 -5
  307. package/dist/types/runtime/effect/dispatch.d.ts +0 -13
  308. package/dist/types/runtime/effect/edge-context.d.ts +0 -5
  309. package/dist/types/runtime/effect/endpoint-contracts.d.ts +0 -66
  310. package/dist/types/runtime/effect/entry-shape.d.ts +0 -31
  311. package/dist/types/runtime/effect/handler/batch-handler.d.ts +0 -11
  312. package/dist/types/runtime/effect/handler/batch.d.ts +0 -13
  313. package/dist/types/runtime/effect/handler/definition.d.ts +0 -7
  314. package/dist/types/runtime/effect/handler/envelope.d.ts +0 -13
  315. package/dist/types/runtime/effect/handler/http.d.ts +0 -15
  316. package/dist/types/runtime/effect/handler/openapi.d.ts +0 -4
  317. package/dist/types/runtime/effect/handler/routing.d.ts +0 -5
  318. package/dist/types/runtime/effect/handler/rpc.d.ts +0 -7
  319. package/dist/types/runtime/effect/handler/types.d.ts +0 -153
  320. package/dist/types/runtime/effect/handler.d.ts +0 -14
  321. package/dist/types/runtime/effect/module.d.ts +0 -36
  322. package/dist/types/runtime/effect/operation-context.d.ts +0 -10
  323. package/dist/types/runtime/effect/rpcSerialization.d.ts +0 -3
  324. package/dist/types/runtime/effect-client/batch.d.ts +0 -2
  325. package/dist/types/runtime/effect-client/envelope.d.ts +0 -15
  326. package/dist/types/runtime/effect-client/guards.d.ts +0 -2
  327. package/dist/types/runtime/effect-client/request-context.d.ts +0 -3
  328. package/dist/types/runtime/effect-client/request.d.ts +0 -1
  329. package/dist/types/runtime/effect-client/types.d.ts +0 -68
  330. package/dist/types/runtime/safe-failure.d.ts +0 -1
  331. package/dist/types/utils/crossProjectServerPolicy.d.ts +0 -36
  332. package/dist/types/utils/effect-client-generator/generator.d.ts +0 -10
  333. package/dist/types/utils/effect-client-generator/index.d.ts +0 -4
  334. package/dist/types/utils/effect-client-generator/paths.d.ts +0 -5
  335. package/dist/types/utils/effect-client-generator/rendering.d.ts +0 -4
  336. package/dist/types/utils/effect-client-generator/runtime.d.ts +0 -12
  337. package/dist/types/utils/effect-client-generator/types.d.ts +0 -27
  338. package/dist/types/utils/effectClientGenerator.d.ts +0 -2
  339. package/dist/types/utils/effectSourceLoader.d.ts +0 -25
  340. package/dist/types/utils/headers.d.ts +0 -1
@@ -1,312 +0,0 @@
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
- bundleEffectEntryForNode: ()=>bundleEffectEntryForNode,
41
- loadEffectBuiltModule: ()=>loadEffectBuiltModule,
42
- loadEffectSourceModule: ()=>loadEffectSourceModule
43
- });
44
- const external_node_crypto_namespaceObject = require("node:crypto");
45
- var external_node_crypto_default = /*#__PURE__*/ __webpack_require__.n(external_node_crypto_namespaceObject);
46
- const external_node_fs_namespaceObject = require("node:fs");
47
- var external_node_fs_default = /*#__PURE__*/ __webpack_require__.n(external_node_fs_namespaceObject);
48
- const external_node_module_namespaceObject = require("node:module");
49
- const external_node_path_namespaceObject = require("node:path");
50
- var external_node_path_default = /*#__PURE__*/ __webpack_require__.n(external_node_path_namespaceObject);
51
- const external_node_url_namespaceObject = require("node:url");
52
- const external_esbuild_namespaceObject = require("esbuild");
53
- const dynamicImport = new Function('specifier', 'return import(specifier)');
54
- const SOURCE_LOADERS = new Map([
55
- [
56
- '.js',
57
- 'js'
58
- ],
59
- [
60
- '.jsx',
61
- 'jsx'
62
- ],
63
- [
64
- '.mjs',
65
- 'js'
66
- ],
67
- [
68
- '.cjs',
69
- 'js'
70
- ],
71
- [
72
- '.ts',
73
- 'ts'
74
- ],
75
- [
76
- '.tsx',
77
- 'tsx'
78
- ],
79
- [
80
- '.mts',
81
- 'ts'
82
- ],
83
- [
84
- '.cts',
85
- 'ts'
86
- ]
87
- ]);
88
- function sourceLoader(args) {
89
- return SOURCE_LOADERS.get(external_node_path_default().extname(args.path).toLowerCase());
90
- }
91
- function preserveSourceModuleSemantics() {
92
- return {
93
- name: 'modern-js-effect-source-semantics',
94
- setup (buildApi) {
95
- buildApi.onLoad({
96
- filter: /\.[cm]?[jt]sx?$/
97
- }, async (args)=>{
98
- const loader = sourceLoader(args);
99
- if (!loader) return;
100
- const source = await external_node_fs_default().promises.readFile(args.path, 'utf8');
101
- const compiled = await (0, external_esbuild_namespaceObject.transform)(source, {
102
- define: {
103
- 'import.meta.url': JSON.stringify((0, external_node_url_namespaceObject.pathToFileURL)(args.path).href)
104
- },
105
- jsx: 'automatic',
106
- loader,
107
- sourcefile: args.path,
108
- target: 'node20'
109
- });
110
- return {
111
- contents: compiled.code,
112
- loader: 'js',
113
- resolveDir: external_node_path_default().dirname(args.path)
114
- };
115
- });
116
- }
117
- };
118
- }
119
- const nodeBuiltins = new Set([
120
- ...external_node_module_namespaceObject.builtinModules,
121
- ...external_node_module_namespaceObject.builtinModules.map((name)=>`node:${name}`)
122
- ]);
123
- const dependencyResolutionMarker = 'modern-js-effect-dependency-resolution';
124
- async function isEsmOnlyFile(filename) {
125
- const extension = external_node_path_default().extname(filename).toLowerCase();
126
- if ('.mjs' === extension || '.mts' === extension) return true;
127
- if ('.cjs' === extension || '.cts' === extension) return false;
128
- let directory = external_node_path_default().dirname(filename);
129
- while(true){
130
- const packagePath = external_node_path_default().join(directory, 'package.json');
131
- try {
132
- const packageJson = JSON.parse(await external_node_fs_default().promises.readFile(packagePath, 'utf8'));
133
- return 'module' === packageJson.type;
134
- } catch (error) {
135
- if (!error || 'object' != typeof error || !('code' in error) || 'ENOENT' !== error.code) throw error;
136
- }
137
- const parent = external_node_path_default().dirname(directory);
138
- if (parent === directory) return false;
139
- directory = parent;
140
- }
141
- }
142
- function isBareSpecifier(specifier) {
143
- return !specifier.startsWith('.') && !specifier.startsWith('/') && !external_node_path_default().isAbsolute(specifier);
144
- }
145
- function externalizeInstalledDependencies(options) {
146
- const runtimeRequire = (0, external_node_module_namespaceObject.createRequire)(external_node_path_default().join(options.runtimeResolveDir, '__modern_effect_entry.cjs'));
147
- return {
148
- name: 'modern-js-effect-installed-dependencies',
149
- setup (buildApi) {
150
- buildApi.onResolve({
151
- filter: /.*/
152
- }, async (args)=>{
153
- if (!isBareSpecifier(args.path) || nodeBuiltins.has(args.path) || args.pluginData?.[dependencyResolutionMarker] === true) return nodeBuiltins.has(args.path) ? {
154
- external: true,
155
- path: args.path
156
- } : void 0;
157
- const resolution = await buildApi.resolve(args.path, {
158
- importer: args.importer,
159
- kind: args.kind,
160
- namespace: args.namespace,
161
- pluginData: {
162
- ...args.pluginData,
163
- [dependencyResolutionMarker]: true
164
- },
165
- resolveDir: args.resolveDir
166
- });
167
- if (resolution.errors.length > 0) return {
168
- external: true,
169
- path: args.path
170
- };
171
- if (resolution.external || !resolution.path) return {
172
- external: true,
173
- path: args.path
174
- };
175
- const realPath = await external_node_fs_default().promises.realpath(resolution.path).catch(()=>resolution.path);
176
- if (realPath.includes(`${external_node_path_default().sep}node_modules${external_node_path_default().sep}`)) {
177
- const runtimeResolution = await buildApi.resolve(args.path, {
178
- importer: '',
179
- kind: args.kind,
180
- namespace: 'file',
181
- pluginData: {
182
- [dependencyResolutionMarker]: true
183
- },
184
- resolveDir: options.runtimeResolveDir
185
- });
186
- if (0 === runtimeResolution.errors.length && runtimeResolution.path) {
187
- if ('cjs' === options.format) {
188
- let requiredPath;
189
- try {
190
- requiredPath = runtimeRequire.resolve(args.path);
191
- } catch {
192
- requiredPath = runtimeResolution.path;
193
- }
194
- if (await isEsmOnlyFile(requiredPath)) return {
195
- namespace: resolution.namespace,
196
- path: resolution.path,
197
- pluginData: resolution.pluginData,
198
- sideEffects: resolution.sideEffects,
199
- suffix: resolution.suffix,
200
- warnings: resolution.warnings
201
- };
202
- }
203
- return {
204
- external: true,
205
- path: args.path
206
- };
207
- }
208
- }
209
- return {
210
- namespace: resolution.namespace,
211
- path: resolution.path,
212
- pluginData: resolution.pluginData,
213
- sideEffects: resolution.sideEffects,
214
- suffix: resolution.suffix,
215
- warnings: resolution.warnings
216
- };
217
- });
218
- }
219
- };
220
- }
221
- async function bundleEffectEntryForNode(options) {
222
- await (0, external_esbuild_namespaceObject.build)({
223
- absWorkingDir: options.appDir,
224
- allowOverwrite: true,
225
- bundle: true,
226
- entryPoints: [
227
- options.entryPath
228
- ],
229
- format: options.format,
230
- logLevel: 'silent',
231
- outfile: options.entryPath,
232
- platform: 'node',
233
- plugins: [
234
- externalizeInstalledDependencies({
235
- format: options.format,
236
- runtimeResolveDir: options.appDir
237
- }),
238
- preserveSourceModuleSemantics()
239
- ],
240
- target: 'node20'
241
- });
242
- }
243
- function isWatchableInput(filename) {
244
- return !filename.includes(`${external_node_path_default().sep}node_modules${external_node_path_default().sep}`) && (SOURCE_LOADERS.has(external_node_path_default().extname(filename).toLowerCase()) || '.json' === external_node_path_default().extname(filename).toLowerCase());
245
- }
246
- function normalizeImportedModule(module) {
247
- if (!module || 'object' != typeof module) return module;
248
- const namespace = module;
249
- const commonJsModule = namespace.default;
250
- if (1 === Object.keys(namespace).length && null !== commonJsModule && 'object' == typeof commonJsModule && true === commonJsModule.__esModule) return commonJsModule;
251
- return module;
252
- }
253
- async function loadEffectBuiltModule(resourcePath) {
254
- const canonicalPath = await external_node_fs_default().promises.realpath(external_node_path_default().resolve(resourcePath));
255
- if (!await isEsmOnlyFile(canonicalPath)) return (0, external_node_module_namespaceObject.createRequire)(canonicalPath)(canonicalPath);
256
- return normalizeImportedModule(await dynamicImport((0, external_node_url_namespaceObject.pathToFileURL)(canonicalPath).href));
257
- }
258
- async function loadEffectSourceModule(options) {
259
- const resourcePath = external_node_path_default().resolve(options.resourcePath);
260
- const appDir = external_node_path_default().resolve(options.appDir ?? external_node_path_default().dirname(resourcePath));
261
- const tsconfigPath = external_node_path_default().join(appDir, 'tsconfig.json');
262
- const cacheDirectory = external_node_path_default().join(appDir, 'node_modules', '.cache', 'modern-js', 'effect-source-loader');
263
- const outputName = external_node_crypto_default().createHash('sha256').update(resourcePath).digest('hex').slice(0, 24);
264
- const outputPath = external_node_path_default().join(cacheDirectory, `${outputName}.mjs`);
265
- await external_node_fs_default().promises.mkdir(cacheDirectory, {
266
- recursive: true
267
- });
268
- const result = await (0, external_esbuild_namespaceObject.build)({
269
- absWorkingDir: appDir,
270
- banner: {
271
- js: `import { createRequire as __modernCreateEffectRequire } from 'node:module'; const require = __modernCreateEffectRequire(${JSON.stringify((0, external_node_url_namespaceObject.pathToFileURL)(resourcePath).href)});`
272
- },
273
- bundle: true,
274
- entryPoints: [
275
- resourcePath
276
- ],
277
- format: 'esm',
278
- jsx: 'automatic',
279
- logLevel: 'silent',
280
- metafile: true,
281
- outfile: outputPath,
282
- platform: 'node',
283
- plugins: [
284
- externalizeInstalledDependencies({
285
- format: 'esm',
286
- runtimeResolveDir: appDir
287
- }),
288
- preserveSourceModuleSemantics()
289
- ],
290
- sourcemap: 'inline',
291
- target: 'node20',
292
- tsconfig: external_node_fs_default().existsSync(tsconfigPath) ? tsconfigPath : void 0
293
- });
294
- for (const input of Object.keys(result.metafile.inputs)){
295
- const dependency = external_node_path_default().isAbsolute(input) ? external_node_path_default().normalize(input) : external_node_path_default().resolve(appDir, input);
296
- if (isWatchableInput(dependency)) options.onDependency?.(dependency);
297
- }
298
- const output = await external_node_fs_default().promises.readFile(outputPath);
299
- const revision = external_node_crypto_default().createHash('sha256').update(output).digest('hex');
300
- return normalizeImportedModule(await dynamicImport(`${(0, external_node_url_namespaceObject.pathToFileURL)(outputPath).href}?v=${revision}`));
301
- }
302
- exports.bundleEffectEntryForNode = __webpack_exports__.bundleEffectEntryForNode;
303
- exports.loadEffectBuiltModule = __webpack_exports__.loadEffectBuiltModule;
304
- exports.loadEffectSourceModule = __webpack_exports__.loadEffectSourceModule;
305
- for(var __rspack_i in __webpack_exports__)if (-1 === [
306
- "bundleEffectEntryForNode",
307
- "loadEffectBuiltModule",
308
- "loadEffectSourceModule"
309
- ].indexOf(__rspack_i)) exports[__rspack_i] = __webpack_exports__[__rspack_i];
310
- Object.defineProperty(exports, '__esModule', {
311
- value: true
312
- });
@@ -1,46 +0,0 @@
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
- function toHeaderRecord(headers) {
31
- const record = {};
32
- headers.forEach((value, key)=>{
33
- record[key] = value;
34
- });
35
- return record;
36
- }
37
- __webpack_require__.d(__webpack_exports__, {
38
- toHeaderRecord: ()=>toHeaderRecord
39
- });
40
- exports.toHeaderRecord = __webpack_exports__.toHeaderRecord;
41
- for(var __rspack_i in __webpack_exports__)if (-1 === [
42
- "toHeaderRecord"
43
- ].indexOf(__rspack_i)) exports[__rspack_i] = __webpack_exports__[__rspack_i];
44
- Object.defineProperty(exports, '__esModule', {
45
- value: true
46
- });
@@ -1,246 +0,0 @@
1
- import { stableStringify } from "../codec.mjs";
2
- import { DEFAULT_DATA_BATCH_HEADER } from "../types.mjs";
3
- import { createBatchId, measureTextBytes, normalizeMethod, shouldBatchRequest, toHeaderRecord, toRequestBody } from "./request.mjs";
4
- import { isBatchResponsePayload, parseResponseLikeCreateRequest } from "./response.mjs";
5
- import { emitDataBatchTransportEvent } from "./telemetry.mjs";
6
- import { normalizeBatchEndpoint, toAbsoluteUrl } from "./url.mjs";
7
- function ensureBucket(buckets, endpoint) {
8
- const existing = buckets.get(endpoint);
9
- if (existing) return existing;
10
- const next = {
11
- items: [],
12
- bytes: 0,
13
- timer: null,
14
- flushing: false
15
- };
16
- buckets.set(endpoint, next);
17
- return next;
18
- }
19
- function createBatchTransportQueue({ options, baseFetch }) {
20
- const flushIntervalMs = Math.max(0, options.flushIntervalMs ?? 8);
21
- const maxBatchSize = Math.max(1, options.maxBatchSize ?? 16);
22
- const maxBatchBytes = Math.max(1024, options.maxBatchBytes ?? 65536);
23
- const requestTimeoutMs = options.requestTimeoutMs;
24
- const allowedMethods = new Set((options.allowedMethods && options.allowedMethods.length > 0 ? options.allowedMethods : [
25
- 'GET'
26
- ]).map((method)=>method.toUpperCase()));
27
- const onEvent = options.onEvent;
28
- const buckets = new Map();
29
- const pendingByKey = new Map();
30
- const disabledEndpoints = new Set();
31
- let nextItemId = 0;
32
- const runSingle = async (request)=>{
33
- const response = await baseFetch(request.requestUrl, request.requestInit);
34
- return parseResponseLikeCreateRequest(response);
35
- };
36
- const settleRequests = async (items, runner)=>{
37
- await Promise.all(items.map(async (item)=>{
38
- try {
39
- const value = await runner(item);
40
- item.resolve(value);
41
- } catch (error) {
42
- item.reject(error);
43
- } finally{
44
- pendingByKey.delete(item.key);
45
- }
46
- }));
47
- };
48
- const flushBucket = async (endpoint)=>{
49
- const bucket = buckets.get(endpoint);
50
- if (!bucket || bucket.flushing) return;
51
- if (bucket.timer) {
52
- clearTimeout(bucket.timer);
53
- bucket.timer = null;
54
- }
55
- if (0 === bucket.items.length) return;
56
- bucket.flushing = true;
57
- const items = bucket.items;
58
- bucket.items = [];
59
- bucket.bytes = 0;
60
- if (1 === items.length || disabledEndpoints.has(endpoint)) {
61
- emitDataBatchTransportEvent(onEvent, {
62
- type: disabledEndpoints.has(endpoint) ? 'fallback' : 'flush',
63
- endpoint,
64
- size: items.length,
65
- reason: disabledEndpoints.has(endpoint) ? 'batch-disabled' : void 0
66
- });
67
- await settleRequests(items, runSingle);
68
- bucket.flushing = false;
69
- if (bucket.items.length > 0 && !bucket.timer) flushBucket(endpoint);
70
- return;
71
- }
72
- const batchId = createBatchId();
73
- const payload = {
74
- protocolVersion: 1,
75
- batchId,
76
- sentAt: Date.now(),
77
- items: items.map((item)=>item.item)
78
- };
79
- emitDataBatchTransportEvent(onEvent, {
80
- type: 'flush',
81
- endpoint,
82
- batchId,
83
- size: items.length
84
- });
85
- const payloadJson = JSON.stringify(payload);
86
- const traceparent = items.find((item)=>'string' == typeof item.item.headers?.traceparent)?.item.headers?.traceparent || void 0;
87
- const requestInit = {
88
- method: 'POST',
89
- headers: {
90
- accept: 'application/json, */*;q=0.8',
91
- 'content-type': 'application/json; charset=utf-8',
92
- [DEFAULT_DATA_BATCH_HEADER]: '1',
93
- ...traceparent ? {
94
- traceparent
95
- } : {}
96
- },
97
- body: payloadJson
98
- };
99
- let timeoutHandle = null;
100
- try {
101
- const controller = requestTimeoutMs && requestTimeoutMs > 0 ? new AbortController() : void 0;
102
- if (controller) {
103
- requestInit.signal = controller.signal;
104
- timeoutHandle = setTimeout(()=>{
105
- controller.abort();
106
- emitDataBatchTransportEvent(onEvent, {
107
- type: 'fallback',
108
- endpoint,
109
- batchId,
110
- size: items.length,
111
- reason: 'batch-timeout'
112
- });
113
- }, requestTimeoutMs);
114
- }
115
- const response = await baseFetch(endpoint, requestInit);
116
- if (!response.ok) {
117
- if (404 === response.status || 405 === response.status) {
118
- disabledEndpoints.add(endpoint);
119
- emitDataBatchTransportEvent(onEvent, {
120
- type: 'disable',
121
- endpoint,
122
- batchId,
123
- reason: `batch-endpoint-unavailable-${String(response.status)}`
124
- });
125
- } else emitDataBatchTransportEvent(onEvent, {
126
- type: 'fallback',
127
- endpoint,
128
- batchId,
129
- size: items.length,
130
- reason: `batch-response-${String(response.status)}`
131
- });
132
- await settleRequests(items, runSingle);
133
- bucket.flushing = false;
134
- return;
135
- }
136
- const result = await response.json();
137
- if (!isBatchResponsePayload(result)) {
138
- emitDataBatchTransportEvent(onEvent, {
139
- type: 'fallback',
140
- endpoint,
141
- batchId,
142
- size: items.length,
143
- reason: 'invalid-batch-response'
144
- });
145
- await settleRequests(items, runSingle);
146
- bucket.flushing = false;
147
- return;
148
- }
149
- const itemMap = new Map();
150
- for (const item of result.items)itemMap.set(item.id, item);
151
- await settleRequests(items, async (request)=>{
152
- const resultItem = itemMap.get(request.item.id);
153
- if (!resultItem) return runSingle(request);
154
- const reconstructedResponse = new Response(resultItem.body ?? '', {
155
- status: resultItem.status,
156
- headers: resultItem.headers
157
- });
158
- return parseResponseLikeCreateRequest(reconstructedResponse);
159
- });
160
- } catch (error) {
161
- emitDataBatchTransportEvent(onEvent, {
162
- type: 'fallback',
163
- endpoint,
164
- batchId,
165
- size: items.length,
166
- reason: 'batch-transport-error'
167
- });
168
- await settleRequests(items, runSingle);
169
- } finally{
170
- if (timeoutHandle) clearTimeout(timeoutHandle);
171
- bucket.flushing = false;
172
- if (bucket.items.length > 0 && !bucket.timer) flushBucket(endpoint);
173
- }
174
- };
175
- return (input, init)=>{
176
- const requestUrl = toAbsoluteUrl(input);
177
- const batchEndpointUrl = normalizeBatchEndpoint(requestUrl, options.endpoint);
178
- const endpoint = batchEndpointUrl.toString();
179
- const method = normalizeMethod(init?.method);
180
- const body = toRequestBody(init?.body ?? null);
181
- const headers = toHeaderRecord(init?.headers);
182
- const normalizedInit = {
183
- ...init,
184
- method,
185
- headers,
186
- body
187
- };
188
- if (disabledEndpoints.has(endpoint) || !shouldBatchRequest({
189
- method,
190
- body,
191
- headers,
192
- allowedMethods,
193
- batchEndpoint: endpoint,
194
- requestUrl
195
- })) return baseFetch(requestUrl.toString(), normalizedInit).then(parseResponseLikeCreateRequest);
196
- const itemId = `${Date.now().toString(36)}_${nextItemId.toString(36)}_${Math.random().toString(16).slice(2, 8)}`;
197
- nextItemId += 1;
198
- const item = {
199
- id: itemId,
200
- path: `${requestUrl.pathname}${requestUrl.search}`,
201
- method,
202
- headers,
203
- ...body ? {
204
- body
205
- } : {}
206
- };
207
- const key = stableStringify({
208
- endpoint,
209
- path: item.path,
210
- method: item.method,
211
- headers: item.headers,
212
- body: item.body ?? null
213
- });
214
- const existing = pendingByKey.get(key);
215
- if (existing) return existing;
216
- const size = measureTextBytes(stableStringify(item));
217
- const promise = new Promise((resolve, reject)=>{
218
- const bucket = ensureBucket(buckets, endpoint);
219
- const queued = {
220
- key,
221
- endpoint,
222
- requestUrl: requestUrl.toString(),
223
- requestInit: normalizedInit,
224
- item,
225
- size,
226
- resolve,
227
- reject
228
- };
229
- bucket.items.push(queued);
230
- bucket.bytes += size;
231
- emitDataBatchTransportEvent(onEvent, {
232
- type: 'enqueue',
233
- endpoint,
234
- size: bucket.items.length
235
- });
236
- if (bucket.items.length >= maxBatchSize || bucket.bytes >= maxBatchBytes) return void flushBucket(endpoint);
237
- if (!bucket.timer) bucket.timer = setTimeout(()=>{
238
- bucket.timer = null;
239
- flushBucket(endpoint);
240
- }, flushIntervalMs);
241
- });
242
- pendingByKey.set(key, promise);
243
- return promise;
244
- };
245
- }
246
- export { createBatchTransportQueue };
@@ -1,45 +0,0 @@
1
- import { DEFAULT_DATA_BATCH_HEADER } from "../types.mjs";
2
- function toHeaderRecord(headers) {
3
- if (!headers) return {};
4
- if (headers instanceof Headers) {
5
- const next = {};
6
- headers.forEach((value, key)=>{
7
- next[key.toLowerCase()] = value;
8
- });
9
- return next;
10
- }
11
- if (Array.isArray(headers)) return headers.reduce((acc, [key, value])=>{
12
- acc[String(key).toLowerCase()] = String(value);
13
- return acc;
14
- }, {});
15
- return Object.entries(headers).reduce((acc, [key, value])=>{
16
- if (void 0 === value) return acc;
17
- acc[String(key).toLowerCase()] = Array.isArray(value) ? value.join(', ') : String(value);
18
- return acc;
19
- }, {});
20
- }
21
- function measureTextBytes(value) {
22
- if ("u" > typeof TextEncoder) return new TextEncoder().encode(value).length;
23
- if ("u" > typeof Buffer) return Buffer.byteLength(value);
24
- return value.length;
25
- }
26
- function createBatchId() {
27
- const now = Date.now().toString(36);
28
- const random = Math.random().toString(16).slice(2, 10);
29
- return `batch_${now}_${random}`;
30
- }
31
- function normalizeMethod(method) {
32
- return (method || 'GET').toUpperCase();
33
- }
34
- function toRequestBody(initBody) {
35
- if ('string' == typeof initBody) return initBody;
36
- if ("u" > typeof URLSearchParams && initBody instanceof URLSearchParams) return initBody.toString();
37
- }
38
- function shouldBatchRequest(input) {
39
- if (input.requestUrl.href === input.batchEndpoint) return false;
40
- if ('off' === input.headers[DEFAULT_DATA_BATCH_HEADER]) return false;
41
- if (!input.allowedMethods.has(input.method)) return false;
42
- if (void 0 !== input.body) return false;
43
- return true;
44
- }
45
- export { createBatchId, measureTextBytes, normalizeMethod, shouldBatchRequest, toHeaderRecord, toRequestBody };
@@ -1,23 +0,0 @@
1
- import { isPlainObject } from "../codec.mjs";
2
- function isBatchResponseItem(value) {
3
- return isPlainObject(value) && 'string' == typeof value.id && 'number' == typeof value.status;
4
- }
5
- function isBatchResponsePayload(value) {
6
- return isPlainObject(value) && 1 === value.protocolVersion && 'string' == typeof value.batchId && 'number' == typeof value.receivedAt && Array.isArray(value.items) && value.items.every((item)=>isBatchResponseItem(item));
7
- }
8
- async function parseResponseLikeCreateRequest(response) {
9
- const contentType = (response.headers.get('content-type') || '').toLowerCase();
10
- if (!response.ok) {
11
- let data = null;
12
- data = contentType.includes('application/json') ? await response.json() : await response.text();
13
- response.data = data;
14
- throw response;
15
- }
16
- if (contentType.includes('application/json') || contentType.includes('text/json')) return response.json();
17
- if (contentType.includes('text/html') || contentType.includes('text/plain')) return response.text();
18
- if (contentType.includes('application/x-www-form-urlencoded') || contentType.includes('multipart/form-data')) return response.formData();
19
- if (contentType.includes('application/octet-stream')) return response.arrayBuffer();
20
- if (contentType.includes('image/png')) return response;
21
- return response.text();
22
- }
23
- export { isBatchResponsePayload, parseResponseLikeCreateRequest };