space-data-module-sdk 0.8.4 → 0.8.6

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 (354) hide show
  1. package/README.md +117 -20
  2. package/bin/space-data-module.js +263 -0
  3. package/docs/.nojekyll +1 -0
  4. package/docs/AGENTS.md +34 -0
  5. package/docs/architecture.svg +141 -0
  6. package/docs/browser-wasmedge-isomorphic.md +179 -0
  7. package/docs/flatsql-streaming-standard.md +341 -0
  8. package/docs/gpu-module-abi.md +193 -0
  9. package/docs/index.html +125 -0
  10. package/docs/isomorphic-pthreads.md +188 -0
  11. package/docs/isomorphic-sdn-runtime-plan.md +167 -0
  12. package/docs/language-runtime-matrix.md +82 -0
  13. package/docs/manifest-structure.svg +114 -0
  14. package/docs/module-bundle-runtime-plan.md +19 -0
  15. package/docs/module-lifecycle.svg +70 -0
  16. package/docs/module-publication-standard.md +540 -0
  17. package/docs/node-red-default-node-parity.md +88 -0
  18. package/docs/protocol-installation.md +196 -0
  19. package/docs/secrets-capability.md +152 -0
  20. package/docs/styles.css +288 -0
  21. package/docs/testing-harness.md +408 -0
  22. package/docs/tri-runtime-parity.md +132 -0
  23. package/docs/wallet-callback.html +2 -0
  24. package/package.json +25 -6
  25. package/schemas/HttpRequestAbi.fbs +41 -0
  26. package/schemas/HttpResponseAbi.fbs +36 -0
  27. package/schemas/PluginManifest.fbs +2 -1
  28. package/src/AGENTS.md +1 -1
  29. package/src/app/codec.js +548 -0
  30. package/src/app/index.js +6 -0
  31. package/src/browser.js +5 -0
  32. package/src/bundle/constants.js +1 -0
  33. package/src/bundle/index.js +15 -0
  34. package/src/bundle/sigdomain.js +179 -0
  35. package/src/bundle/signing.js +767 -0
  36. package/src/bundle/wasm.js +3 -2
  37. package/src/capabilities.js +3 -0
  38. package/src/compat/index.js +7 -0
  39. package/src/compat/sdnLegacy.js +449 -0
  40. package/src/compiler/compileModule.js +556 -55
  41. package/src/compiler/flatcSupport.js +41 -27
  42. package/src/compiler/index.d.ts +2 -0
  43. package/src/compiler/index.js +18 -0
  44. package/src/compiler/invokeGlue.js +1212 -183
  45. package/src/compiler/pthreadArtifactGuard.js +910 -0
  46. package/src/compiler/sdnShimGenerator.js +323 -0
  47. package/src/compiler/wasiThreadsToolchain.js +150 -0
  48. package/src/compliance/index.js +11 -1
  49. package/src/compliance/legacyWildcardPorts.js +228 -0
  50. package/src/compliance/pluginCompliance.js +1000 -96
  51. package/src/field-stream/index.d.ts +31 -0
  52. package/src/field-stream/index.js +119 -0
  53. package/src/flow/dependencyStreamBridge.js +234 -0
  54. package/src/flow/flatsqlLinkShim.js +304 -0
  55. package/src/flow/flowCodec.js +107 -0
  56. package/src/flow/flowCompiler.js +2900 -0
  57. package/src/flow/flowRuntimeHost.js +877 -0
  58. package/src/flow/index.d.ts +117 -0
  59. package/src/flow/index.js +31 -0
  60. package/src/flow/isomorphicFlowHost.js +384 -0
  61. package/src/flow/jsFlowRuntime.js +275 -0
  62. package/src/flow/normalize.js +294 -0
  63. package/src/flow/runtime-src/flow_runtime.cpp +1699 -0
  64. package/src/flow/vendor/sdn-flow/MethodRegistry.js +400 -0
  65. package/src/flow/vendor/sdn-flow/constants.js +39 -0
  66. package/src/flow/vendor/sdn-flow/index.js +29 -0
  67. package/src/flow/vendor/sdn-flow/normalize.js +506 -0
  68. package/src/flow/vendor/sdn-flow/wasmCompatibility.js +189 -0
  69. package/src/generated/http/cpp/HttpRequestAbi_generated.h +285 -0
  70. package/src/generated/http/cpp/HttpResponseAbi_generated.h +192 -0
  71. package/src/generated/http/sdn/http/http-header.js +53 -0
  72. package/src/generated/http/sdn/http/http-header.ts +67 -0
  73. package/src/generated/http/sdn/http/http-request.js +132 -0
  74. package/src/generated/http/sdn/http/http-request.ts +179 -0
  75. package/src/generated/http/sdn/http/http-response.js +144 -0
  76. package/src/generated/http/sdn/http/http-response.ts +168 -0
  77. package/src/generated/http/sdn/http.js +11 -0
  78. package/src/generated/http/sdn/http.ts +4 -0
  79. package/src/generated/orbpro/flow/backpressure-policy.d.ts +12 -0
  80. package/src/generated/orbpro/flow/backpressure-policy.d.ts.map +1 -0
  81. package/src/generated/orbpro/flow/backpressure-policy.js +17 -0
  82. package/src/generated/orbpro/flow/backpressure-policy.js.map +1 -0
  83. package/src/generated/orbpro/flow/backpressure-policy.ts +15 -0
  84. package/src/generated/orbpro/flow/flow-bundle-manifest.d.ts +142 -0
  85. package/src/generated/orbpro/flow/flow-bundle-manifest.d.ts.map +1 -0
  86. package/src/generated/orbpro/flow/flow-bundle-manifest.js +304 -0
  87. package/src/generated/orbpro/flow/flow-bundle-manifest.js.map +1 -0
  88. package/src/generated/orbpro/flow/flow-bundle-manifest.ts +399 -0
  89. package/src/generated/orbpro/flow/flow-edge.d.ts +113 -0
  90. package/src/generated/orbpro/flow/flow-edge.d.ts.map +1 -0
  91. package/src/generated/orbpro/flow/flow-edge.js +221 -0
  92. package/src/generated/orbpro/flow/flow-edge.js.map +1 -0
  93. package/src/generated/orbpro/flow/flow-edge.ts +292 -0
  94. package/src/generated/orbpro/flow/flow-node.d.ts +80 -0
  95. package/src/generated/orbpro/flow/flow-node.d.ts.map +1 -0
  96. package/src/generated/orbpro/flow/flow-node.js +158 -0
  97. package/src/generated/orbpro/flow/flow-node.js.map +1 -0
  98. package/src/generated/orbpro/flow/flow-node.ts +202 -0
  99. package/src/generated/orbpro/flow/flow-program.d.ts +164 -0
  100. package/src/generated/orbpro/flow/flow-program.d.ts.map +1 -0
  101. package/src/generated/orbpro/flow/flow-program.js +350 -0
  102. package/src/generated/orbpro/flow/flow-program.js.map +1 -0
  103. package/src/generated/orbpro/flow/flow-program.ts +477 -0
  104. package/src/generated/orbpro/flow/flow-trigger.d.ts +108 -0
  105. package/src/generated/orbpro/flow/flow-trigger.d.ts.map +1 -0
  106. package/src/generated/orbpro/flow/flow-trigger.js +207 -0
  107. package/src/generated/orbpro/flow/flow-trigger.js.map +1 -0
  108. package/src/generated/orbpro/flow/flow-trigger.ts +276 -0
  109. package/src/generated/orbpro/flow/node-kind.d.ts +13 -0
  110. package/src/generated/orbpro/flow/node-kind.d.ts.map +1 -0
  111. package/src/generated/orbpro/flow/node-kind.js +16 -0
  112. package/src/generated/orbpro/flow/node-kind.js.map +1 -0
  113. package/src/generated/orbpro/{invoke.ts → flow/node-kind.ts} +12 -2
  114. package/src/generated/orbpro/flow/plugin-version-binding.d.ts +52 -0
  115. package/src/generated/orbpro/flow/plugin-version-binding.d.ts.map +1 -0
  116. package/src/generated/orbpro/flow/plugin-version-binding.js +85 -0
  117. package/src/generated/orbpro/flow/plugin-version-binding.js.map +1 -0
  118. package/src/generated/orbpro/flow/plugin-version-binding.ts +121 -0
  119. package/src/generated/orbpro/flow/schema-hash-binding.d.ts +70 -0
  120. package/src/generated/orbpro/flow/schema-hash-binding.d.ts.map +1 -0
  121. package/src/generated/orbpro/flow/schema-hash-binding.js +143 -0
  122. package/src/generated/orbpro/flow/schema-hash-binding.js.map +1 -0
  123. package/src/generated/orbpro/flow/schema-hash-binding.ts +189 -0
  124. package/src/generated/orbpro/flow/trigger-binding.d.ts +71 -0
  125. package/src/generated/orbpro/flow/trigger-binding.d.ts.map +1 -0
  126. package/src/generated/orbpro/flow/trigger-binding.js +142 -0
  127. package/src/generated/orbpro/flow/trigger-binding.js.map +1 -0
  128. package/src/generated/orbpro/flow/trigger-binding.ts +181 -0
  129. package/src/generated/orbpro/flow/trigger-kind.d.ts +14 -0
  130. package/src/generated/orbpro/flow/trigger-kind.d.ts.map +1 -0
  131. package/src/generated/orbpro/flow/trigger-kind.js +17 -0
  132. package/src/generated/orbpro/flow/trigger-kind.js.map +1 -0
  133. package/src/generated/orbpro/flow/trigger-kind.ts +17 -0
  134. package/src/generated/orbpro/flow.d.ts +21 -0
  135. package/src/generated/orbpro/flow.d.ts.map +1 -0
  136. package/src/generated/orbpro/flow.js +23 -0
  137. package/src/generated/orbpro/flow.js.map +1 -0
  138. package/src/generated/orbpro/flow.ts +24 -0
  139. package/src/generated/orbpro/manifest/capability-kind.d.ts +2 -1
  140. package/src/generated/orbpro/manifest/capability-kind.js +1 -0
  141. package/src/generated/orbpro/manifest/capability-kind.ts +1 -0
  142. package/src/generated/orbpro/plugin/stream-invoke-request.d.ts +93 -0
  143. package/src/generated/orbpro/plugin/stream-invoke-request.js +160 -0
  144. package/src/generated/orbpro/plugin/stream-invoke-request.ts +211 -0
  145. package/src/generated/orbpro/plugin/stream-invoke-response.d.ts +99 -0
  146. package/src/generated/orbpro/plugin/stream-invoke-response.js +175 -0
  147. package/src/generated/orbpro/plugin/stream-invoke-response.ts +226 -0
  148. package/src/generated/orbpro/plugin.js +8 -0
  149. package/src/generated/orbpro/stream.d.ts +12 -0
  150. package/src/generated/orbpro/stream.js +14 -0
  151. package/src/generated/orbpro/stream.ts +15 -0
  152. package/src/generated/spacedatastandards/plg/EntryFunction.d.ts +52 -0
  153. package/src/generated/spacedatastandards/plg/EntryFunction.d.ts.map +1 -0
  154. package/src/generated/spacedatastandards/plg/EntryFunction.js +106 -0
  155. package/src/generated/spacedatastandards/plg/EntryFunction.ts +162 -0
  156. package/src/generated/spacedatastandards/plg/FlatBufferTypeRef.d.ts +90 -0
  157. package/src/generated/spacedatastandards/plg/FlatBufferTypeRef.d.ts.map +1 -0
  158. package/src/generated/spacedatastandards/plg/FlatBufferTypeRef.js +189 -0
  159. package/src/generated/spacedatastandards/plg/FlatBufferTypeRef.ts +270 -0
  160. package/src/generated/spacedatastandards/plg/PLG.d.ts +492 -0
  161. package/src/generated/spacedatastandards/plg/PLG.d.ts.map +1 -0
  162. package/src/generated/spacedatastandards/plg/PLG.js +1139 -0
  163. package/src/generated/spacedatastandards/plg/PLG.ts +1600 -0
  164. package/src/generated/spacedatastandards/plg/PLGAcceptedTypeSet.d.ts +63 -0
  165. package/src/generated/spacedatastandards/plg/PLGAcceptedTypeSet.d.ts.map +1 -0
  166. package/src/generated/spacedatastandards/plg/PLGAcceptedTypeSet.js +138 -0
  167. package/src/generated/spacedatastandards/plg/PLGAcceptedTypeSet.ts +189 -0
  168. package/src/generated/spacedatastandards/plg/PLGBuildArtifact.d.ts +41 -0
  169. package/src/generated/spacedatastandards/plg/PLGBuildArtifact.d.ts.map +1 -0
  170. package/src/generated/spacedatastandards/plg/PLGBuildArtifact.js +104 -0
  171. package/src/generated/spacedatastandards/plg/PLGBuildArtifact.ts +151 -0
  172. package/src/generated/spacedatastandards/plg/PLGFlowEdge.d.ts +68 -0
  173. package/src/generated/spacedatastandards/plg/PLGFlowEdge.d.ts.map +1 -0
  174. package/src/generated/spacedatastandards/plg/PLGFlowEdge.js +124 -0
  175. package/src/generated/spacedatastandards/plg/PLGFlowEdge.ts +184 -0
  176. package/src/generated/spacedatastandards/plg/PLGFlowEdgeContract.d.ts +58 -0
  177. package/src/generated/spacedatastandards/plg/PLGFlowEdgeContract.d.ts.map +1 -0
  178. package/src/generated/spacedatastandards/plg/PLGFlowEdgeContract.js +126 -0
  179. package/src/generated/spacedatastandards/plg/PLGFlowEdgeContract.ts +161 -0
  180. package/src/generated/spacedatastandards/plg/PLGFlowNode.d.ts +82 -0
  181. package/src/generated/spacedatastandards/plg/PLGFlowNode.d.ts.map +1 -0
  182. package/src/generated/spacedatastandards/plg/PLGFlowNode.js +164 -0
  183. package/src/generated/spacedatastandards/plg/PLGFlowNode.ts +244 -0
  184. package/src/generated/spacedatastandards/plg/PLGFlowTrigger.d.ts +55 -0
  185. package/src/generated/spacedatastandards/plg/PLGFlowTrigger.d.ts.map +1 -0
  186. package/src/generated/spacedatastandards/plg/PLGFlowTrigger.js +105 -0
  187. package/src/generated/spacedatastandards/plg/PLGFlowTrigger.ts +162 -0
  188. package/src/generated/spacedatastandards/plg/PLGFlowTriggerBinding.d.ts +42 -0
  189. package/src/generated/spacedatastandards/plg/PLGFlowTriggerBinding.d.ts.map +1 -0
  190. package/src/generated/spacedatastandards/plg/PLGFlowTriggerBinding.js +83 -0
  191. package/src/generated/spacedatastandards/plg/PLGFlowTriggerBinding.ts +127 -0
  192. package/src/generated/spacedatastandards/plg/PLGHostCapability.d.ts +36 -0
  193. package/src/generated/spacedatastandards/plg/PLGHostCapability.d.ts.map +1 -0
  194. package/src/generated/spacedatastandards/plg/PLGHostCapability.js +90 -0
  195. package/src/generated/spacedatastandards/plg/PLGHostCapability.ts +127 -0
  196. package/src/generated/spacedatastandards/plg/PLGMethodManifest.d.ts +53 -0
  197. package/src/generated/spacedatastandards/plg/PLGMethodManifest.d.ts.map +1 -0
  198. package/src/generated/spacedatastandards/plg/PLGMethodManifest.js +153 -0
  199. package/src/generated/spacedatastandards/plg/PLGMethodManifest.ts +210 -0
  200. package/src/generated/spacedatastandards/plg/PLGPortManifest.d.ts +70 -0
  201. package/src/generated/spacedatastandards/plg/PLGPortManifest.d.ts.map +1 -0
  202. package/src/generated/spacedatastandards/plg/PLGPortManifest.js +149 -0
  203. package/src/generated/spacedatastandards/plg/PLGPortManifest.ts +212 -0
  204. package/src/generated/spacedatastandards/plg/PLGProtocolSpec.d.ts +73 -0
  205. package/src/generated/spacedatastandards/plg/PLGProtocolSpec.d.ts.map +1 -0
  206. package/src/generated/spacedatastandards/plg/PLGProtocolSpec.js +199 -0
  207. package/src/generated/spacedatastandards/plg/PLGProtocolSpec.ts +292 -0
  208. package/src/generated/spacedatastandards/plg/PLGTimerSpec.d.ts +40 -0
  209. package/src/generated/spacedatastandards/plg/PLGTimerSpec.d.ts.map +1 -0
  210. package/src/generated/spacedatastandards/plg/PLGTimerSpec.js +103 -0
  211. package/src/generated/spacedatastandards/plg/PLGTimerSpec.ts +148 -0
  212. package/src/generated/spacedatastandards/plg/PluginCapability.d.ts +41 -0
  213. package/src/generated/spacedatastandards/plg/PluginCapability.d.ts.map +1 -0
  214. package/src/generated/spacedatastandards/plg/PluginCapability.js +82 -0
  215. package/src/generated/spacedatastandards/plg/{plugin-capability.ts → PluginCapability.ts} +55 -18
  216. package/src/generated/spacedatastandards/plg/PluginDependency.d.ts +42 -0
  217. package/src/generated/spacedatastandards/plg/PluginDependency.d.ts.map +1 -0
  218. package/src/generated/spacedatastandards/plg/PluginDependency.js +80 -0
  219. package/src/generated/spacedatastandards/plg/PluginDependency.ts +124 -0
  220. package/src/generated/spacedatastandards/plg/TAB.d.ts +85 -0
  221. package/src/generated/spacedatastandards/plg/TAB.d.ts.map +1 -0
  222. package/src/generated/spacedatastandards/plg/TAB.js +173 -0
  223. package/src/generated/spacedatastandards/plg/TAB.ts +228 -0
  224. package/src/generated/spacedatastandards/plg/bufferMutability.d.ts +18 -0
  225. package/src/generated/spacedatastandards/plg/bufferMutability.d.ts.map +1 -0
  226. package/src/generated/spacedatastandards/plg/bufferMutability.js +20 -0
  227. package/src/generated/spacedatastandards/plg/bufferMutability.ts +23 -0
  228. package/src/generated/spacedatastandards/plg/bufferOwnership.d.ts +18 -0
  229. package/src/generated/spacedatastandards/plg/bufferOwnership.d.ts.map +1 -0
  230. package/src/generated/spacedatastandards/plg/bufferOwnership.js +20 -0
  231. package/src/generated/spacedatastandards/plg/bufferOwnership.ts +23 -0
  232. package/src/generated/spacedatastandards/plg/drainBehavior.d.ts +20 -0
  233. package/src/generated/spacedatastandards/plg/drainBehavior.d.ts.map +1 -0
  234. package/src/generated/spacedatastandards/plg/drainBehavior.js +22 -0
  235. package/src/generated/spacedatastandards/plg/drainBehavior.ts +25 -0
  236. package/src/generated/spacedatastandards/plg/flowEdgeRoutePolicy.d.ts +10 -0
  237. package/src/generated/spacedatastandards/plg/flowEdgeRoutePolicy.d.ts.map +1 -0
  238. package/src/generated/spacedatastandards/plg/flowEdgeRoutePolicy.js +12 -0
  239. package/src/generated/spacedatastandards/plg/flowEdgeRoutePolicy.ts +13 -0
  240. package/src/generated/spacedatastandards/plg/hostCapabilityKind.d.ts +51 -0
  241. package/src/generated/spacedatastandards/plg/hostCapabilityKind.d.ts.map +1 -0
  242. package/src/generated/spacedatastandards/plg/hostCapabilityKind.js +53 -0
  243. package/src/generated/spacedatastandards/plg/hostCapabilityKind.ts +55 -0
  244. package/src/generated/spacedatastandards/plg/invokeSurfaceKind.d.ts +15 -0
  245. package/src/generated/spacedatastandards/plg/invokeSurfaceKind.d.ts.map +1 -0
  246. package/src/generated/spacedatastandards/plg/invokeSurfaceKind.js +17 -0
  247. package/src/generated/spacedatastandards/plg/invokeSurfaceKind.ts +19 -0
  248. package/src/generated/spacedatastandards/plg/main.d.ts +29 -0
  249. package/src/generated/spacedatastandards/plg/main.d.ts.map +1 -0
  250. package/src/generated/spacedatastandards/plg/main.js +30 -0
  251. package/src/generated/spacedatastandards/plg/main.ts +32 -0
  252. package/src/generated/spacedatastandards/plg/payloadWireFormat.d.ts +17 -0
  253. package/src/generated/spacedatastandards/plg/payloadWireFormat.d.ts.map +1 -0
  254. package/src/generated/spacedatastandards/plg/payloadWireFormat.js +19 -0
  255. package/src/generated/spacedatastandards/plg/payloadWireFormat.ts +21 -0
  256. package/src/generated/spacedatastandards/plg/pluginCategory.d.ts +82 -0
  257. package/src/generated/spacedatastandards/plg/pluginCategory.d.ts.map +1 -0
  258. package/src/generated/spacedatastandards/plg/pluginCategory.js +84 -0
  259. package/src/generated/spacedatastandards/plg/pluginCategory.ts +103 -0
  260. package/src/generated/spacedatastandards/plg/publicationState.d.ts +18 -0
  261. package/src/generated/spacedatastandards/plg/publicationState.d.ts.map +1 -0
  262. package/src/generated/spacedatastandards/plg/publicationState.js +20 -0
  263. package/src/generated/spacedatastandards/plg/purchaseTier.d.ts +18 -0
  264. package/src/generated/spacedatastandards/plg/purchaseTier.d.ts.map +1 -0
  265. package/src/generated/spacedatastandards/plg/purchaseTier.js +20 -0
  266. package/src/host/AGENTS.md +2 -2
  267. package/src/host/abi.js +53 -66
  268. package/src/host/browserHost.js +355 -8
  269. package/src/host/cpp/keyslotClient.hpp +231 -0
  270. package/src/host/cpp/secretsClient.hpp +583 -0
  271. package/src/host/hostcallWire.js +183 -0
  272. package/src/host/index.js +2 -0
  273. package/src/host/isomorphicLoader.js +44 -7
  274. package/src/host/nodeHost.js +227 -8
  275. package/src/host/sabHostcallChannel.js +206 -0
  276. package/src/host/timerDriver.js +203 -0
  277. package/src/host/wasiShim.js +41 -1
  278. package/src/host/wasiThreadBrowserWorker.mjs +48 -0
  279. package/src/host/wasiThreadHost.js +393 -0
  280. package/src/host/wasiThreadWorker.mjs +32 -0
  281. package/src/host/wasiThreadWorkerRuntime.js +93 -0
  282. package/src/http/index.js +339 -0
  283. package/src/index.d.ts +725 -11
  284. package/src/index.js +4 -0
  285. package/src/invoke/codec.js +1202 -128
  286. package/src/invoke/index.js +5 -1
  287. package/src/licensing/index.d.ts +2 -0
  288. package/src/licensing/index.js +2 -0
  289. package/src/licensing/records.js +287 -8
  290. package/src/manifest/codec.js +62 -14
  291. package/src/manifest/index.js +2 -0
  292. package/src/manifest/legacyToPlg.js +164 -25
  293. package/src/manifest/normalize.js +1 -0
  294. package/src/manifest/plgCodec.js +1303 -62
  295. package/src/manifest/typeRefs.js +162 -24
  296. package/src/runtime/compiledRuntimeAbi.js +47 -0
  297. package/src/runtime/compiledRuntimeAbi.json +33 -0
  298. package/src/runtime/index.d.ts +32 -0
  299. package/src/runtime/index.js +1 -0
  300. package/src/runtime-host/index.js +3 -0
  301. package/src/runtime-host/methodRegistry.js +55 -0
  302. package/src/standards/index.js +200 -56
  303. package/src/standards/sharedCatalog.js +16 -0
  304. package/src/testing/browserModuleHarness.js +604 -31
  305. package/src/testing/docker/wasmedge-parity.Dockerfile +39 -0
  306. package/src/testing/index.d.ts +151 -0
  307. package/src/testing/index.js +21 -0
  308. package/src/testing/native/wasmedge_emscripten_pthread_runner.c +25 -1
  309. package/src/testing/parityBrowserRunner.js +138 -0
  310. package/src/testing/parityHarness.js +616 -0
  311. package/src/testing/parityLanes.js +537 -0
  312. package/src/testing/processInvoke.js +29 -21
  313. package/src/testing/streamInvokeCodec.js +10 -175
  314. package/src/testing/wasmedgePin.json +6 -0
  315. package/src/testing/workerModuleHarness.js +242 -0
  316. package/src/testing/workerModuleHarnessWorker.js +176 -0
  317. package/src/transport/index.js +3 -0
  318. package/src/transport/pki.js +352 -14
  319. package/src/transport/records.js +16 -7
  320. package/src/utils/ecdsaDer.js +106 -0
  321. package/src/utils/wasmCrypto.js +0 -43
  322. package/templates/gpu-module/README.md +48 -0
  323. package/templates/gpu-module/include/space_data_gpu_abi.h +122 -0
  324. package/templates/gpu-module/manifest.json +84 -0
  325. package/schemas/PluginInvokeRequest.fbs +0 -18
  326. package/schemas/PluginInvokeResponse.fbs +0 -30
  327. package/schemas/spacedatastandards/PLG.fbs +0 -191
  328. package/src/generated/orbpro/invoke/plugin-invoke-request.d.ts +0 -51
  329. package/src/generated/orbpro/invoke/plugin-invoke-request.d.ts.map +0 -1
  330. package/src/generated/orbpro/invoke/plugin-invoke-request.js +0 -131
  331. package/src/generated/orbpro/invoke/plugin-invoke-request.js.map +0 -1
  332. package/src/generated/orbpro/invoke/plugin-invoke-request.ts +0 -173
  333. package/src/generated/orbpro/invoke/plugin-invoke-response.d.ts +0 -76
  334. package/src/generated/orbpro/invoke/plugin-invoke-response.d.ts.map +0 -1
  335. package/src/generated/orbpro/invoke/plugin-invoke-response.js +0 -184
  336. package/src/generated/orbpro/invoke/plugin-invoke-response.js.map +0 -1
  337. package/src/generated/orbpro/invoke/plugin-invoke-response.ts +0 -243
  338. package/src/generated/orbpro/invoke.d.ts +0 -3
  339. package/src/generated/orbpro/invoke.js +0 -5
  340. package/src/generated/spacedatastandards/plg/entry-function.js +0 -86
  341. package/src/generated/spacedatastandards/plg/entry-function.ts +0 -119
  342. package/src/generated/spacedatastandards/plg/index.js +0 -16
  343. package/src/generated/spacedatastandards/plg/index.ts +0 -11
  344. package/src/generated/spacedatastandards/plg/plg.js +0 -657
  345. package/src/generated/spacedatastandards/plg/plg.ts +0 -924
  346. package/src/generated/spacedatastandards/plg/plugin-capability.js +0 -66
  347. package/src/generated/spacedatastandards/plg/plugin-category.js +0 -15
  348. package/src/generated/spacedatastandards/plg/plugin-category.ts +0 -53
  349. package/src/generated/spacedatastandards/plg/plugin-dependency.js +0 -63
  350. package/src/generated/spacedatastandards/plg/plugin-dependency.ts +0 -86
  351. package/src/generated/spacedatastandards/plg/publication-state.js +0 -9
  352. package/src/generated/spacedatastandards/plg/purchase-tier.js +0 -9
  353. /package/src/generated/spacedatastandards/plg/{publication-state.ts → publicationState.ts} +0 -0
  354. /package/src/generated/spacedatastandards/plg/{purchase-tier.ts → purchaseTier.ts} +0 -0
@@ -0,0 +1,285 @@
1
+ // automatically generated by the FlatBuffers compiler, do not modify
2
+
3
+
4
+ #ifndef FLATBUFFERS_GENERATED_HTTPREQUESTABI_SDN_HTTP_H_
5
+ #define FLATBUFFERS_GENERATED_HTTPREQUESTABI_SDN_HTTP_H_
6
+
7
+ #include "flatbuffers/flatbuffers.h"
8
+
9
+ // Ensure the included flatbuffers.h is the same version as when this file was
10
+ // generated, otherwise it may not be compatible.
11
+ // flatc version static_assert relaxed by generate-http-abi-bindings.mjs:
12
+ // the HTTP envelope tables use only basic FlatBuffers features and are
13
+ // inlined next to spacedatastandards.org headers pinned to a different
14
+ // flatbuffers runtime version.
15
+
16
+ namespace sdn {
17
+ namespace http {
18
+
19
+ struct HttpHeader;
20
+ struct HttpHeaderBuilder;
21
+
22
+ struct HttpRequest;
23
+ struct HttpRequestBuilder;
24
+
25
+ struct HttpHeader FLATBUFFERS_FINAL_CLASS : private ::flatbuffers::Table {
26
+ typedef HttpHeaderBuilder Builder;
27
+ enum FlatBuffersVTableOffset FLATBUFFERS_VTABLE_UNDERLYING_TYPE {
28
+ VT_NAME = 4,
29
+ VT_VALUE = 6
30
+ };
31
+ /// Lower-cased header name. NAME is a FlatBuffers key so header vectors
32
+ /// are sorted and binary-searchable; encoders must sort by NAME.
33
+ const ::flatbuffers::String *NAME() const {
34
+ return GetPointer<const ::flatbuffers::String *>(VT_NAME);
35
+ }
36
+ bool KeyCompareLessThan(const HttpHeader * const o) const {
37
+ return *NAME() < *o->NAME();
38
+ }
39
+ int KeyCompareWithValue(const char *_NAME) const {
40
+ return strcmp(NAME()->c_str(), _NAME);
41
+ }
42
+ template<typename StringType>
43
+ int KeyCompareWithValue(const StringType& _NAME) const {
44
+ if (NAME()->c_str() < _NAME) return -1;
45
+ if (_NAME < NAME()->c_str()) return 1;
46
+ return 0;
47
+ }
48
+ const ::flatbuffers::String *VALUE() const {
49
+ return GetPointer<const ::flatbuffers::String *>(VT_VALUE);
50
+ }
51
+ template <bool B = false>
52
+ bool Verify(::flatbuffers::VerifierTemplate<B> &verifier) const {
53
+ return VerifyTableStart(verifier) &&
54
+ VerifyOffsetRequired(verifier, VT_NAME) &&
55
+ verifier.VerifyString(NAME()) &&
56
+ VerifyOffset(verifier, VT_VALUE) &&
57
+ verifier.VerifyString(VALUE()) &&
58
+ verifier.EndTable();
59
+ }
60
+ };
61
+
62
+ struct HttpHeaderBuilder {
63
+ typedef HttpHeader Table;
64
+ ::flatbuffers::FlatBufferBuilder &fbb_;
65
+ ::flatbuffers::uoffset_t start_;
66
+ void add_NAME(::flatbuffers::Offset<::flatbuffers::String> NAME) {
67
+ fbb_.AddOffset(HttpHeader::VT_NAME, NAME);
68
+ }
69
+ void add_VALUE(::flatbuffers::Offset<::flatbuffers::String> VALUE) {
70
+ fbb_.AddOffset(HttpHeader::VT_VALUE, VALUE);
71
+ }
72
+ explicit HttpHeaderBuilder(::flatbuffers::FlatBufferBuilder &_fbb)
73
+ : fbb_(_fbb) {
74
+ start_ = fbb_.StartTable();
75
+ }
76
+ ::flatbuffers::Offset<HttpHeader> Finish() {
77
+ const auto end = fbb_.EndTable(start_);
78
+ auto o = ::flatbuffers::Offset<HttpHeader>(end);
79
+ fbb_.Required(o, HttpHeader::VT_NAME);
80
+ return o;
81
+ }
82
+ };
83
+
84
+ inline ::flatbuffers::Offset<HttpHeader> CreateHttpHeader(
85
+ ::flatbuffers::FlatBufferBuilder &_fbb,
86
+ ::flatbuffers::Offset<::flatbuffers::String> NAME = 0,
87
+ ::flatbuffers::Offset<::flatbuffers::String> VALUE = 0) {
88
+ HttpHeaderBuilder builder_(_fbb);
89
+ builder_.add_VALUE(VALUE);
90
+ builder_.add_NAME(NAME);
91
+ return builder_.Finish();
92
+ }
93
+
94
+ inline ::flatbuffers::Offset<HttpHeader> CreateHttpHeaderDirect(
95
+ ::flatbuffers::FlatBufferBuilder &_fbb,
96
+ const char *NAME = nullptr,
97
+ const char *VALUE = nullptr) {
98
+ auto NAME__ = NAME ? _fbb.CreateString(NAME) : 0;
99
+ auto VALUE__ = VALUE ? _fbb.CreateString(VALUE) : 0;
100
+ return sdn::http::CreateHttpHeader(
101
+ _fbb,
102
+ NAME__,
103
+ VALUE__);
104
+ }
105
+
106
+ struct HttpRequest FLATBUFFERS_FINAL_CLASS : private ::flatbuffers::Table {
107
+ typedef HttpRequestBuilder Builder;
108
+ enum FlatBuffersVTableOffset FLATBUFFERS_VTABLE_UNDERLYING_TYPE {
109
+ VT_METHOD = 4,
110
+ VT_PATH = 6,
111
+ VT_QUERY = 8,
112
+ VT_HEADERS = 10,
113
+ VT_BODY = 12,
114
+ VT_REMOTE = 14
115
+ };
116
+ /// HTTP method verb, upper-case (GET, POST, ...).
117
+ const ::flatbuffers::String *METHOD() const {
118
+ return GetPointer<const ::flatbuffers::String *>(VT_METHOD);
119
+ }
120
+ /// URL path only (no query string), e.g. "/api/v1/omm/bulk".
121
+ const ::flatbuffers::String *PATH() const {
122
+ return GetPointer<const ::flatbuffers::String *>(VT_PATH);
123
+ }
124
+ /// Raw query string without the leading "?", still URL-encoded. The module
125
+ /// owns all parsing.
126
+ const ::flatbuffers::String *QUERY() const {
127
+ return GetPointer<const ::flatbuffers::String *>(VT_QUERY);
128
+ }
129
+ /// Request headers, sorted by NAME.
130
+ const ::flatbuffers::Vector<::flatbuffers::Offset<sdn::http::HttpHeader>> *HEADERS() const {
131
+ return GetPointer<const ::flatbuffers::Vector<::flatbuffers::Offset<sdn::http::HttpHeader>> *>(VT_HEADERS);
132
+ }
133
+ /// Raw request body bytes (may be absent).
134
+ const ::flatbuffers::Vector<uint8_t> *BODY() const {
135
+ return GetPointer<const ::flatbuffers::Vector<uint8_t> *>(VT_BODY);
136
+ }
137
+ /// Remote address ("ip:port") as observed by the host pipe.
138
+ const ::flatbuffers::String *REMOTE() const {
139
+ return GetPointer<const ::flatbuffers::String *>(VT_REMOTE);
140
+ }
141
+ template <bool B = false>
142
+ bool Verify(::flatbuffers::VerifierTemplate<B> &verifier) const {
143
+ return VerifyTableStart(verifier) &&
144
+ VerifyOffset(verifier, VT_METHOD) &&
145
+ verifier.VerifyString(METHOD()) &&
146
+ VerifyOffset(verifier, VT_PATH) &&
147
+ verifier.VerifyString(PATH()) &&
148
+ VerifyOffset(verifier, VT_QUERY) &&
149
+ verifier.VerifyString(QUERY()) &&
150
+ VerifyOffset(verifier, VT_HEADERS) &&
151
+ verifier.VerifyVector(HEADERS()) &&
152
+ verifier.VerifyVectorOfTables(HEADERS()) &&
153
+ VerifyOffset(verifier, VT_BODY) &&
154
+ verifier.VerifyVector(BODY()) &&
155
+ VerifyOffset(verifier, VT_REMOTE) &&
156
+ verifier.VerifyString(REMOTE()) &&
157
+ verifier.EndTable();
158
+ }
159
+ };
160
+
161
+ struct HttpRequestBuilder {
162
+ typedef HttpRequest Table;
163
+ ::flatbuffers::FlatBufferBuilder &fbb_;
164
+ ::flatbuffers::uoffset_t start_;
165
+ void add_METHOD(::flatbuffers::Offset<::flatbuffers::String> METHOD) {
166
+ fbb_.AddOffset(HttpRequest::VT_METHOD, METHOD);
167
+ }
168
+ void add_PATH(::flatbuffers::Offset<::flatbuffers::String> PATH) {
169
+ fbb_.AddOffset(HttpRequest::VT_PATH, PATH);
170
+ }
171
+ void add_QUERY(::flatbuffers::Offset<::flatbuffers::String> QUERY) {
172
+ fbb_.AddOffset(HttpRequest::VT_QUERY, QUERY);
173
+ }
174
+ void add_HEADERS(::flatbuffers::Offset<::flatbuffers::Vector<::flatbuffers::Offset<sdn::http::HttpHeader>>> HEADERS) {
175
+ fbb_.AddOffset(HttpRequest::VT_HEADERS, HEADERS);
176
+ }
177
+ void add_BODY(::flatbuffers::Offset<::flatbuffers::Vector<uint8_t>> BODY) {
178
+ fbb_.AddOffset(HttpRequest::VT_BODY, BODY);
179
+ }
180
+ void add_REMOTE(::flatbuffers::Offset<::flatbuffers::String> REMOTE) {
181
+ fbb_.AddOffset(HttpRequest::VT_REMOTE, REMOTE);
182
+ }
183
+ explicit HttpRequestBuilder(::flatbuffers::FlatBufferBuilder &_fbb)
184
+ : fbb_(_fbb) {
185
+ start_ = fbb_.StartTable();
186
+ }
187
+ ::flatbuffers::Offset<HttpRequest> Finish() {
188
+ const auto end = fbb_.EndTable(start_);
189
+ auto o = ::flatbuffers::Offset<HttpRequest>(end);
190
+ return o;
191
+ }
192
+ };
193
+
194
+ inline ::flatbuffers::Offset<HttpRequest> CreateHttpRequest(
195
+ ::flatbuffers::FlatBufferBuilder &_fbb,
196
+ ::flatbuffers::Offset<::flatbuffers::String> METHOD = 0,
197
+ ::flatbuffers::Offset<::flatbuffers::String> PATH = 0,
198
+ ::flatbuffers::Offset<::flatbuffers::String> QUERY = 0,
199
+ ::flatbuffers::Offset<::flatbuffers::Vector<::flatbuffers::Offset<sdn::http::HttpHeader>>> HEADERS = 0,
200
+ ::flatbuffers::Offset<::flatbuffers::Vector<uint8_t>> BODY = 0,
201
+ ::flatbuffers::Offset<::flatbuffers::String> REMOTE = 0) {
202
+ HttpRequestBuilder builder_(_fbb);
203
+ builder_.add_REMOTE(REMOTE);
204
+ builder_.add_BODY(BODY);
205
+ builder_.add_HEADERS(HEADERS);
206
+ builder_.add_QUERY(QUERY);
207
+ builder_.add_PATH(PATH);
208
+ builder_.add_METHOD(METHOD);
209
+ return builder_.Finish();
210
+ }
211
+
212
+ inline ::flatbuffers::Offset<HttpRequest> CreateHttpRequestDirect(
213
+ ::flatbuffers::FlatBufferBuilder &_fbb,
214
+ const char *METHOD = nullptr,
215
+ const char *PATH = nullptr,
216
+ const char *QUERY = nullptr,
217
+ std::vector<::flatbuffers::Offset<sdn::http::HttpHeader>> *HEADERS = nullptr,
218
+ const std::vector<uint8_t> *BODY = nullptr,
219
+ const char *REMOTE = nullptr) {
220
+ auto METHOD__ = METHOD ? _fbb.CreateString(METHOD) : 0;
221
+ auto PATH__ = PATH ? _fbb.CreateString(PATH) : 0;
222
+ auto QUERY__ = QUERY ? _fbb.CreateString(QUERY) : 0;
223
+ auto HEADERS__ = HEADERS ? _fbb.CreateVectorOfSortedTables<sdn::http::HttpHeader>(HEADERS) : 0;
224
+ auto BODY__ = BODY ? _fbb.CreateVector<uint8_t>(*BODY) : 0;
225
+ auto REMOTE__ = REMOTE ? _fbb.CreateString(REMOTE) : 0;
226
+ return sdn::http::CreateHttpRequest(
227
+ _fbb,
228
+ METHOD__,
229
+ PATH__,
230
+ QUERY__,
231
+ HEADERS__,
232
+ BODY__,
233
+ REMOTE__);
234
+ }
235
+
236
+ inline const sdn::http::HttpRequest *GetHttpRequest(const void *buf) {
237
+ return ::flatbuffers::GetRoot<sdn::http::HttpRequest>(buf);
238
+ }
239
+
240
+ inline const sdn::http::HttpRequest *GetSizePrefixedHttpRequest(const void *buf) {
241
+ return ::flatbuffers::GetSizePrefixedRoot<sdn::http::HttpRequest>(buf);
242
+ }
243
+
244
+ inline const char *HttpRequestIdentifier() {
245
+ return "$HTQ";
246
+ }
247
+
248
+ inline bool HttpRequestBufferHasIdentifier(const void *buf) {
249
+ return ::flatbuffers::BufferHasIdentifier(
250
+ buf, HttpRequestIdentifier());
251
+ }
252
+
253
+ inline bool SizePrefixedHttpRequestBufferHasIdentifier(const void *buf) {
254
+ return ::flatbuffers::BufferHasIdentifier(
255
+ buf, HttpRequestIdentifier(), true);
256
+ }
257
+
258
+ template <bool B = false>
259
+ inline bool VerifyHttpRequestBuffer(
260
+ ::flatbuffers::VerifierTemplate<B> &verifier) {
261
+ return verifier.template VerifyBuffer<sdn::http::HttpRequest>(HttpRequestIdentifier());
262
+ }
263
+
264
+ template <bool B = false>
265
+ inline bool VerifySizePrefixedHttpRequestBuffer(
266
+ ::flatbuffers::VerifierTemplate<B> &verifier) {
267
+ return verifier.template VerifySizePrefixedBuffer<sdn::http::HttpRequest>(HttpRequestIdentifier());
268
+ }
269
+
270
+ inline void FinishHttpRequestBuffer(
271
+ ::flatbuffers::FlatBufferBuilder &fbb,
272
+ ::flatbuffers::Offset<sdn::http::HttpRequest> root) {
273
+ fbb.Finish(root, HttpRequestIdentifier());
274
+ }
275
+
276
+ inline void FinishSizePrefixedHttpRequestBuffer(
277
+ ::flatbuffers::FlatBufferBuilder &fbb,
278
+ ::flatbuffers::Offset<sdn::http::HttpRequest> root) {
279
+ fbb.FinishSizePrefixed(root, HttpRequestIdentifier());
280
+ }
281
+
282
+ } // namespace http
283
+ } // namespace sdn
284
+
285
+ #endif // FLATBUFFERS_GENERATED_HTTPREQUESTABI_SDN_HTTP_H_
@@ -0,0 +1,192 @@
1
+ // automatically generated by the FlatBuffers compiler, do not modify
2
+
3
+
4
+ #ifndef FLATBUFFERS_GENERATED_HTTPRESPONSEABI_SDN_HTTP_H_
5
+ #define FLATBUFFERS_GENERATED_HTTPRESPONSEABI_SDN_HTTP_H_
6
+
7
+ #include "flatbuffers/flatbuffers.h"
8
+
9
+ // Ensure the included flatbuffers.h is the same version as when this file was
10
+ // generated, otherwise it may not be compatible.
11
+ // flatc version static_assert relaxed by generate-http-abi-bindings.mjs:
12
+ // the HTTP envelope tables use only basic FlatBuffers features and are
13
+ // inlined next to spacedatastandards.org headers pinned to a different
14
+ // flatbuffers runtime version.
15
+
16
+ #include "HttpRequestAbi_generated.h"
17
+
18
+ namespace sdn {
19
+ namespace http {
20
+
21
+ struct HttpResponse;
22
+ struct HttpResponseBuilder;
23
+
24
+ struct HttpResponse FLATBUFFERS_FINAL_CLASS : private ::flatbuffers::Table {
25
+ typedef HttpResponseBuilder Builder;
26
+ enum FlatBuffersVTableOffset FLATBUFFERS_VTABLE_UNDERLYING_TYPE {
27
+ VT_STATUS = 4,
28
+ VT_HEADERS = 6,
29
+ VT_BODY = 8,
30
+ VT_BODY_REF_TOKEN = 10,
31
+ VT_BODY_REF_SIZE = 12
32
+ };
33
+ /// HTTP status code (200, 304, 400, 404, 502, ...).
34
+ uint16_t STATUS() const {
35
+ return GetField<uint16_t>(VT_STATUS, 0);
36
+ }
37
+ /// Response headers, sorted by NAME. All content-type / caching / count
38
+ /// headers are decided inside the module.
39
+ const ::flatbuffers::Vector<::flatbuffers::Offset<sdn::http::HttpHeader>> *HEADERS() const {
40
+ return GetPointer<const ::flatbuffers::Vector<::flatbuffers::Offset<sdn::http::HttpHeader>> *>(VT_HEADERS);
41
+ }
42
+ /// Raw response body bytes (empty for 304).
43
+ const ::flatbuffers::Vector<uint8_t> *BODY() const {
44
+ return GetPointer<const ::flatbuffers::Vector<uint8_t> *>(VT_BODY);
45
+ }
46
+ /// OPTIONAL out-of-band body reference (near-zero-copy egress, loop C.5c).
47
+ /// When BODY_REF_SIZE > 0 (and BODY is absent), the body bytes do NOT
48
+ /// travel through the flow's linear memory: the module passes through the
49
+ /// opaque token it received from a capability hostcall that answered in
50
+ /// reference mode (e.g. storage.flatsql_*_stream with "deliver":"ref"),
51
+ /// and the host substitutes the exact byte buffer it registered under
52
+ /// that token. Still the dumb-pipe contract: the module DECIDED the body
53
+ /// (it made the query and forwarded the result reference); the host only
54
+ /// resolves its own token — a descriptor read, never a decision. Tokens
55
+ /// are scoped to the module instance's hostcall bridge and to the current
56
+ /// exchange.
57
+ uint64_t BODY_REF_TOKEN() const {
58
+ return GetField<uint64_t>(VT_BODY_REF_TOKEN, 0);
59
+ }
60
+ /// Byte length of the referenced body (0 = no reference present).
61
+ uint64_t BODY_REF_SIZE() const {
62
+ return GetField<uint64_t>(VT_BODY_REF_SIZE, 0);
63
+ }
64
+ template <bool B = false>
65
+ bool Verify(::flatbuffers::VerifierTemplate<B> &verifier) const {
66
+ return VerifyTableStart(verifier) &&
67
+ VerifyField<uint16_t>(verifier, VT_STATUS, 2) &&
68
+ VerifyOffset(verifier, VT_HEADERS) &&
69
+ verifier.VerifyVector(HEADERS()) &&
70
+ verifier.VerifyVectorOfTables(HEADERS()) &&
71
+ VerifyOffset(verifier, VT_BODY) &&
72
+ verifier.VerifyVector(BODY()) &&
73
+ VerifyField<uint64_t>(verifier, VT_BODY_REF_TOKEN, 8) &&
74
+ VerifyField<uint64_t>(verifier, VT_BODY_REF_SIZE, 8) &&
75
+ verifier.EndTable();
76
+ }
77
+ };
78
+
79
+ struct HttpResponseBuilder {
80
+ typedef HttpResponse Table;
81
+ ::flatbuffers::FlatBufferBuilder &fbb_;
82
+ ::flatbuffers::uoffset_t start_;
83
+ void add_STATUS(uint16_t STATUS) {
84
+ fbb_.AddElement<uint16_t>(HttpResponse::VT_STATUS, STATUS, 0);
85
+ }
86
+ void add_HEADERS(::flatbuffers::Offset<::flatbuffers::Vector<::flatbuffers::Offset<sdn::http::HttpHeader>>> HEADERS) {
87
+ fbb_.AddOffset(HttpResponse::VT_HEADERS, HEADERS);
88
+ }
89
+ void add_BODY(::flatbuffers::Offset<::flatbuffers::Vector<uint8_t>> BODY) {
90
+ fbb_.AddOffset(HttpResponse::VT_BODY, BODY);
91
+ }
92
+ void add_BODY_REF_TOKEN(uint64_t BODY_REF_TOKEN) {
93
+ fbb_.AddElement<uint64_t>(HttpResponse::VT_BODY_REF_TOKEN, BODY_REF_TOKEN, 0);
94
+ }
95
+ void add_BODY_REF_SIZE(uint64_t BODY_REF_SIZE) {
96
+ fbb_.AddElement<uint64_t>(HttpResponse::VT_BODY_REF_SIZE, BODY_REF_SIZE, 0);
97
+ }
98
+ explicit HttpResponseBuilder(::flatbuffers::FlatBufferBuilder &_fbb)
99
+ : fbb_(_fbb) {
100
+ start_ = fbb_.StartTable();
101
+ }
102
+ ::flatbuffers::Offset<HttpResponse> Finish() {
103
+ const auto end = fbb_.EndTable(start_);
104
+ auto o = ::flatbuffers::Offset<HttpResponse>(end);
105
+ return o;
106
+ }
107
+ };
108
+
109
+ inline ::flatbuffers::Offset<HttpResponse> CreateHttpResponse(
110
+ ::flatbuffers::FlatBufferBuilder &_fbb,
111
+ uint16_t STATUS = 0,
112
+ ::flatbuffers::Offset<::flatbuffers::Vector<::flatbuffers::Offset<sdn::http::HttpHeader>>> HEADERS = 0,
113
+ ::flatbuffers::Offset<::flatbuffers::Vector<uint8_t>> BODY = 0,
114
+ uint64_t BODY_REF_TOKEN = 0,
115
+ uint64_t BODY_REF_SIZE = 0) {
116
+ HttpResponseBuilder builder_(_fbb);
117
+ builder_.add_BODY_REF_SIZE(BODY_REF_SIZE);
118
+ builder_.add_BODY_REF_TOKEN(BODY_REF_TOKEN);
119
+ builder_.add_BODY(BODY);
120
+ builder_.add_HEADERS(HEADERS);
121
+ builder_.add_STATUS(STATUS);
122
+ return builder_.Finish();
123
+ }
124
+
125
+ inline ::flatbuffers::Offset<HttpResponse> CreateHttpResponseDirect(
126
+ ::flatbuffers::FlatBufferBuilder &_fbb,
127
+ uint16_t STATUS = 0,
128
+ std::vector<::flatbuffers::Offset<sdn::http::HttpHeader>> *HEADERS = nullptr,
129
+ const std::vector<uint8_t> *BODY = nullptr,
130
+ uint64_t BODY_REF_TOKEN = 0,
131
+ uint64_t BODY_REF_SIZE = 0) {
132
+ auto HEADERS__ = HEADERS ? _fbb.CreateVectorOfSortedTables<sdn::http::HttpHeader>(HEADERS) : 0;
133
+ auto BODY__ = BODY ? _fbb.CreateVector<uint8_t>(*BODY) : 0;
134
+ return sdn::http::CreateHttpResponse(
135
+ _fbb,
136
+ STATUS,
137
+ HEADERS__,
138
+ BODY__,
139
+ BODY_REF_TOKEN,
140
+ BODY_REF_SIZE);
141
+ }
142
+
143
+ inline const sdn::http::HttpResponse *GetHttpResponse(const void *buf) {
144
+ return ::flatbuffers::GetRoot<sdn::http::HttpResponse>(buf);
145
+ }
146
+
147
+ inline const sdn::http::HttpResponse *GetSizePrefixedHttpResponse(const void *buf) {
148
+ return ::flatbuffers::GetSizePrefixedRoot<sdn::http::HttpResponse>(buf);
149
+ }
150
+
151
+ inline const char *HttpResponseIdentifier() {
152
+ return "$HTR";
153
+ }
154
+
155
+ inline bool HttpResponseBufferHasIdentifier(const void *buf) {
156
+ return ::flatbuffers::BufferHasIdentifier(
157
+ buf, HttpResponseIdentifier());
158
+ }
159
+
160
+ inline bool SizePrefixedHttpResponseBufferHasIdentifier(const void *buf) {
161
+ return ::flatbuffers::BufferHasIdentifier(
162
+ buf, HttpResponseIdentifier(), true);
163
+ }
164
+
165
+ template <bool B = false>
166
+ inline bool VerifyHttpResponseBuffer(
167
+ ::flatbuffers::VerifierTemplate<B> &verifier) {
168
+ return verifier.template VerifyBuffer<sdn::http::HttpResponse>(HttpResponseIdentifier());
169
+ }
170
+
171
+ template <bool B = false>
172
+ inline bool VerifySizePrefixedHttpResponseBuffer(
173
+ ::flatbuffers::VerifierTemplate<B> &verifier) {
174
+ return verifier.template VerifySizePrefixedBuffer<sdn::http::HttpResponse>(HttpResponseIdentifier());
175
+ }
176
+
177
+ inline void FinishHttpResponseBuffer(
178
+ ::flatbuffers::FlatBufferBuilder &fbb,
179
+ ::flatbuffers::Offset<sdn::http::HttpResponse> root) {
180
+ fbb.Finish(root, HttpResponseIdentifier());
181
+ }
182
+
183
+ inline void FinishSizePrefixedHttpResponseBuffer(
184
+ ::flatbuffers::FlatBufferBuilder &fbb,
185
+ ::flatbuffers::Offset<sdn::http::HttpResponse> root) {
186
+ fbb.FinishSizePrefixed(root, HttpResponseIdentifier());
187
+ }
188
+
189
+ } // namespace http
190
+ } // namespace sdn
191
+
192
+ #endif // FLATBUFFERS_GENERATED_HTTPRESPONSEABI_SDN_HTTP_H_
@@ -0,0 +1,53 @@
1
+ var __defProp = Object.defineProperty;
2
+ var __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
3
+ var __publicField = (obj, key, value) => __defNormalProp(obj, typeof key !== "symbol" ? key + "" : key, value);
4
+ import * as flatbuffers from "flatbuffers";
5
+ class HttpHeader {
6
+ constructor() {
7
+ __publicField(this, "bb", null);
8
+ __publicField(this, "bb_pos", 0);
9
+ }
10
+ __init(i, bb) {
11
+ this.bb_pos = i;
12
+ this.bb = bb;
13
+ return this;
14
+ }
15
+ static getRootAsHttpHeader(bb, obj) {
16
+ return (obj || new HttpHeader()).__init(bb.readInt32(bb.position()) + bb.position(), bb);
17
+ }
18
+ static getSizePrefixedRootAsHttpHeader(bb, obj) {
19
+ bb.setPosition(bb.position() + flatbuffers.SIZE_PREFIX_LENGTH);
20
+ return (obj || new HttpHeader()).__init(bb.readInt32(bb.position()) + bb.position(), bb);
21
+ }
22
+ name(optionalEncoding) {
23
+ const offset = this.bb.__offset(this.bb_pos, 4);
24
+ return this.bb.__string(this.bb_pos + offset, optionalEncoding);
25
+ }
26
+ value(optionalEncoding) {
27
+ const offset = this.bb.__offset(this.bb_pos, 6);
28
+ return offset ? this.bb.__string(this.bb_pos + offset, optionalEncoding) : null;
29
+ }
30
+ static startHttpHeader(builder) {
31
+ builder.startObject(2);
32
+ }
33
+ static addName(builder, nameOffset) {
34
+ builder.addFieldOffset(0, nameOffset, 0);
35
+ }
36
+ static addValue(builder, valueOffset) {
37
+ builder.addFieldOffset(1, valueOffset, 0);
38
+ }
39
+ static endHttpHeader(builder) {
40
+ const offset = builder.endObject();
41
+ builder.requiredField(offset, 4);
42
+ return offset;
43
+ }
44
+ static createHttpHeader(builder, nameOffset, valueOffset) {
45
+ HttpHeader.startHttpHeader(builder);
46
+ HttpHeader.addName(builder, nameOffset);
47
+ HttpHeader.addValue(builder, valueOffset);
48
+ return HttpHeader.endHttpHeader(builder);
49
+ }
50
+ }
51
+ export {
52
+ HttpHeader
53
+ };
@@ -0,0 +1,67 @@
1
+ // automatically generated by the FlatBuffers compiler, do not modify
2
+
3
+ /* eslint-disable @typescript-eslint/no-unused-vars, @typescript-eslint/no-explicit-any, @typescript-eslint/no-non-null-assertion */
4
+
5
+ import * as flatbuffers from 'flatbuffers';
6
+
7
+ export class HttpHeader {
8
+ bb: flatbuffers.ByteBuffer|null = null;
9
+ bb_pos = 0;
10
+ __init(i:number, bb:flatbuffers.ByteBuffer):HttpHeader {
11
+ this.bb_pos = i;
12
+ this.bb = bb;
13
+ return this;
14
+ }
15
+
16
+ static getRootAsHttpHeader(bb:flatbuffers.ByteBuffer, obj?:HttpHeader):HttpHeader {
17
+ return (obj || new HttpHeader()).__init(bb.readInt32(bb.position()) + bb.position(), bb);
18
+ }
19
+
20
+ static getSizePrefixedRootAsHttpHeader(bb:flatbuffers.ByteBuffer, obj?:HttpHeader):HttpHeader {
21
+ bb.setPosition(bb.position() + flatbuffers.SIZE_PREFIX_LENGTH);
22
+ return (obj || new HttpHeader()).__init(bb.readInt32(bb.position()) + bb.position(), bb);
23
+ }
24
+
25
+ /**
26
+ * Lower-cased header name. NAME is a FlatBuffers key so header vectors
27
+ * are sorted and binary-searchable; encoders must sort by NAME.
28
+ */
29
+ name():string
30
+ name(optionalEncoding:flatbuffers.Encoding):string|Uint8Array
31
+ name(optionalEncoding?:any):string|Uint8Array {
32
+ const offset = this.bb!.__offset(this.bb_pos, 4);
33
+ return this.bb!.__string(this.bb_pos + offset, optionalEncoding);
34
+ }
35
+
36
+ value():string|null
37
+ value(optionalEncoding:flatbuffers.Encoding):string|Uint8Array|null
38
+ value(optionalEncoding?:any):string|Uint8Array|null {
39
+ const offset = this.bb!.__offset(this.bb_pos, 6);
40
+ return offset ? this.bb!.__string(this.bb_pos + offset, optionalEncoding) : null;
41
+ }
42
+
43
+ static startHttpHeader(builder:flatbuffers.Builder) {
44
+ builder.startObject(2);
45
+ }
46
+
47
+ static addName(builder:flatbuffers.Builder, nameOffset:flatbuffers.Offset) {
48
+ builder.addFieldOffset(0, nameOffset, 0);
49
+ }
50
+
51
+ static addValue(builder:flatbuffers.Builder, valueOffset:flatbuffers.Offset) {
52
+ builder.addFieldOffset(1, valueOffset, 0);
53
+ }
54
+
55
+ static endHttpHeader(builder:flatbuffers.Builder):flatbuffers.Offset {
56
+ const offset = builder.endObject();
57
+ builder.requiredField(offset, 4) // NAME
58
+ return offset;
59
+ }
60
+
61
+ static createHttpHeader(builder:flatbuffers.Builder, nameOffset:flatbuffers.Offset, valueOffset:flatbuffers.Offset):flatbuffers.Offset {
62
+ HttpHeader.startHttpHeader(builder);
63
+ HttpHeader.addName(builder, nameOffset);
64
+ HttpHeader.addValue(builder, valueOffset);
65
+ return HttpHeader.endHttpHeader(builder);
66
+ }
67
+ }