@highstate/designer 0.3.2 → 0.3.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 (972) hide show
  1. package/.output/nitro.json +15 -0
  2. package/.output/public/_nuxt/BiOpBOhF.js +69 -0
  3. package/.output/public/_nuxt/Cbvq2xei.js +1 -0
  4. package/.output/public/_nuxt/DVgDGs8k.js +1 -0
  5. package/.output/public/_nuxt/builds/latest.json +1 -0
  6. package/.output/public/_nuxt/builds/meta/4e80df08-b017-4dd3-92a5-670b9c4b88d5.json +1 -0
  7. package/.output/public/_nuxt/entry.D7UJUp71.css +5 -0
  8. package/.output/public/_nuxt/error-404.SWzu_puR.css +1 -0
  9. package/.output/public/_nuxt/error-500.Bkv_zTjr.css +1 -0
  10. package/.output/public/_nuxt/rjBY3mWU.js +1 -0
  11. package/.output/public/favicon.ico +0 -0
  12. package/.output/public/robots.txt +1 -0
  13. package/.output/server/chunks/_/error-500.mjs +8 -0
  14. package/.output/server/chunks/_/error-500.mjs.map +1 -0
  15. package/.output/server/chunks/build/client.manifest.mjs +85 -0
  16. package/.output/server/chunks/build/client.manifest.mjs.map +1 -0
  17. package/.output/server/chunks/nitro/nitro.mjs +6161 -0
  18. package/.output/server/chunks/nitro/nitro.mjs.map +1 -0
  19. package/.output/server/chunks/routes/api/_trpc_.mjs +1067 -0
  20. package/.output/server/chunks/routes/api/_trpc_.mjs.map +1 -0
  21. package/.output/server/chunks/routes/renderer.mjs +341 -0
  22. package/.output/server/chunks/routes/renderer.mjs.map +1 -0
  23. package/.output/server/chunks/virtual/_virtual_spa-template.mjs +4 -0
  24. package/.output/server/chunks/virtual/_virtual_spa-template.mjs.map +1 -0
  25. package/.output/server/index.mjs +7 -0
  26. package/.output/server/index.mjs.map +1 -0
  27. package/.output/server/node_modules/.nitro/get-stream@5.2.0/buffer-stream.js +52 -0
  28. package/.output/server/node_modules/.nitro/get-stream@5.2.0/index.js +60 -0
  29. package/.output/server/node_modules/.nitro/get-stream@5.2.0/package.json +50 -0
  30. package/.output/server/node_modules/.nitro/get-stream@6.0.1/buffer-stream.js +52 -0
  31. package/.output/server/node_modules/.nitro/get-stream@6.0.1/index.js +61 -0
  32. package/.output/server/node_modules/.nitro/get-stream@6.0.1/package.json +47 -0
  33. package/.output/server/node_modules/.nitro/mimic-response@1.0.1/index.js +32 -0
  34. package/.output/server/node_modules/.nitro/mimic-response@1.0.1/package.json +37 -0
  35. package/.output/server/node_modules/.nitro/mimic-response@3.1.0/index.js +77 -0
  36. package/.output/server/node_modules/.nitro/mimic-response@3.1.0/package.json +42 -0
  37. package/.output/server/node_modules/@babel/parser/lib/index.js +14027 -0
  38. package/.output/server/node_modules/@babel/parser/package.json +50 -0
  39. package/.output/server/node_modules/@grpc/grpc-js/build/src/admin.js +31 -0
  40. package/.output/server/node_modules/@grpc/grpc-js/build/src/backoff-timeout.js +174 -0
  41. package/.output/server/node_modules/@grpc/grpc-js/build/src/call-credentials.js +153 -0
  42. package/.output/server/node_modules/@grpc/grpc-js/build/src/call-interface.js +84 -0
  43. package/.output/server/node_modules/@grpc/grpc-js/build/src/call-number.js +25 -0
  44. package/.output/server/node_modules/@grpc/grpc-js/build/src/call.js +136 -0
  45. package/.output/server/node_modules/@grpc/grpc-js/build/src/certificate-provider.js +134 -0
  46. package/.output/server/node_modules/@grpc/grpc-js/build/src/channel-credentials.js +272 -0
  47. package/.output/server/node_modules/@grpc/grpc-js/build/src/channel-options.js +71 -0
  48. package/.output/server/node_modules/@grpc/grpc-js/build/src/channel.js +68 -0
  49. package/.output/server/node_modules/@grpc/grpc-js/build/src/channelz.js +584 -0
  50. package/.output/server/node_modules/@grpc/grpc-js/build/src/client-interceptors.js +428 -0
  51. package/.output/server/node_modules/@grpc/grpc-js/build/src/client.js +433 -0
  52. package/.output/server/node_modules/@grpc/grpc-js/build/src/compression-algorithms.js +26 -0
  53. package/.output/server/node_modules/@grpc/grpc-js/build/src/compression-filter.js +295 -0
  54. package/.output/server/node_modules/@grpc/grpc-js/build/src/connectivity-state.js +28 -0
  55. package/.output/server/node_modules/@grpc/grpc-js/build/src/constants.js +64 -0
  56. package/.output/server/node_modules/@grpc/grpc-js/build/src/control-plane-status.js +43 -0
  57. package/.output/server/node_modules/@grpc/grpc-js/build/src/deadline.js +109 -0
  58. package/.output/server/node_modules/@grpc/grpc-js/build/src/duration.js +47 -0
  59. package/.output/server/node_modules/@grpc/grpc-js/build/src/environment.js +22 -0
  60. package/.output/server/node_modules/@grpc/grpc-js/build/src/error.js +41 -0
  61. package/.output/server/node_modules/@grpc/grpc-js/build/src/experimental.js +52 -0
  62. package/.output/server/node_modules/@grpc/grpc-js/build/src/filter-stack.js +82 -0
  63. package/.output/server/node_modules/@grpc/grpc-js/build/src/filter.js +38 -0
  64. package/.output/server/node_modules/@grpc/grpc-js/build/src/http_proxy.js +266 -0
  65. package/.output/server/node_modules/@grpc/grpc-js/build/src/index.js +144 -0
  66. package/.output/server/node_modules/@grpc/grpc-js/build/src/internal-channel.js +572 -0
  67. package/.output/server/node_modules/@grpc/grpc-js/build/src/load-balancer-child-handler.js +153 -0
  68. package/.output/server/node_modules/@grpc/grpc-js/build/src/load-balancer-outlier-detection.js +567 -0
  69. package/.output/server/node_modules/@grpc/grpc-js/build/src/load-balancer-pick-first.js +482 -0
  70. package/.output/server/node_modules/@grpc/grpc-js/build/src/load-balancer-round-robin.js +182 -0
  71. package/.output/server/node_modules/@grpc/grpc-js/build/src/load-balancer.js +117 -0
  72. package/.output/server/node_modules/@grpc/grpc-js/build/src/load-balancing-call.js +294 -0
  73. package/.output/server/node_modules/@grpc/grpc-js/build/src/logging.js +122 -0
  74. package/.output/server/node_modules/@grpc/grpc-js/build/src/make-client.js +144 -0
  75. package/.output/server/node_modules/@grpc/grpc-js/build/src/metadata.js +249 -0
  76. package/.output/server/node_modules/@grpc/grpc-js/build/src/picker.js +86 -0
  77. package/.output/server/node_modules/@grpc/grpc-js/build/src/resolver-dns.js +349 -0
  78. package/.output/server/node_modules/@grpc/grpc-js/build/src/resolver-ip.js +105 -0
  79. package/.output/server/node_modules/@grpc/grpc-js/build/src/resolver-uds.js +51 -0
  80. package/.output/server/node_modules/@grpc/grpc-js/build/src/resolver.js +88 -0
  81. package/.output/server/node_modules/@grpc/grpc-js/build/src/resolving-call.js +305 -0
  82. package/.output/server/node_modules/@grpc/grpc-js/build/src/resolving-load-balancer.js +309 -0
  83. package/.output/server/node_modules/@grpc/grpc-js/build/src/retrying-call.js +665 -0
  84. package/.output/server/node_modules/@grpc/grpc-js/build/src/server-call.js +202 -0
  85. package/.output/server/node_modules/@grpc/grpc-js/build/src/server-credentials.js +305 -0
  86. package/.output/server/node_modules/@grpc/grpc-js/build/src/server-interceptors.js +770 -0
  87. package/.output/server/node_modules/@grpc/grpc-js/build/src/server.js +1569 -0
  88. package/.output/server/node_modules/@grpc/grpc-js/build/src/service-config.js +431 -0
  89. package/.output/server/node_modules/@grpc/grpc-js/build/src/status-builder.js +68 -0
  90. package/.output/server/node_modules/@grpc/grpc-js/build/src/stream-decoder.js +100 -0
  91. package/.output/server/node_modules/@grpc/grpc-js/build/src/subchannel-address.js +202 -0
  92. package/.output/server/node_modules/@grpc/grpc-js/build/src/subchannel-call.js +526 -0
  93. package/.output/server/node_modules/@grpc/grpc-js/build/src/subchannel-interface.js +92 -0
  94. package/.output/server/node_modules/@grpc/grpc-js/build/src/subchannel-pool.js +137 -0
  95. package/.output/server/node_modules/@grpc/grpc-js/build/src/subchannel.js +371 -0
  96. package/.output/server/node_modules/@grpc/grpc-js/build/src/tls-helpers.js +34 -0
  97. package/.output/server/node_modules/@grpc/grpc-js/build/src/transport.js +662 -0
  98. package/.output/server/node_modules/@grpc/grpc-js/build/src/uri-parser.js +126 -0
  99. package/.output/server/node_modules/@grpc/grpc-js/package.json +87 -0
  100. package/.output/server/node_modules/@grpc/grpc-js/proto/channelz.proto +564 -0
  101. package/.output/server/node_modules/@grpc/proto-loader/build/src/index.js +244 -0
  102. package/.output/server/node_modules/@grpc/proto-loader/build/src/util.js +89 -0
  103. package/.output/server/node_modules/@grpc/proto-loader/package.json +69 -0
  104. package/.output/server/node_modules/@js-sdsl/ordered-map/dist/cjs/index.js +795 -0
  105. package/.output/server/node_modules/@js-sdsl/ordered-map/package.json +138 -0
  106. package/.output/server/node_modules/@logdna/tail-file/index.js +3 -0
  107. package/.output/server/node_modules/@logdna/tail-file/lib/tail-file.js +326 -0
  108. package/.output/server/node_modules/@logdna/tail-file/package.json +162 -0
  109. package/.output/server/node_modules/@protobufjs/aspromise/index.js +52 -0
  110. package/.output/server/node_modules/@protobufjs/aspromise/package.json +21 -0
  111. package/.output/server/node_modules/@protobufjs/base64/index.js +139 -0
  112. package/.output/server/node_modules/@protobufjs/base64/package.json +21 -0
  113. package/.output/server/node_modules/@protobufjs/codegen/index.js +99 -0
  114. package/.output/server/node_modules/@protobufjs/codegen/package.json +13 -0
  115. package/.output/server/node_modules/@protobufjs/eventemitter/index.js +76 -0
  116. package/.output/server/node_modules/@protobufjs/eventemitter/package.json +21 -0
  117. package/.output/server/node_modules/@protobufjs/fetch/index.js +115 -0
  118. package/.output/server/node_modules/@protobufjs/fetch/package.json +25 -0
  119. package/.output/server/node_modules/@protobufjs/float/index.js +335 -0
  120. package/.output/server/node_modules/@protobufjs/float/package.json +26 -0
  121. package/.output/server/node_modules/@protobufjs/inquire/index.js +17 -0
  122. package/.output/server/node_modules/@protobufjs/inquire/package.json +21 -0
  123. package/.output/server/node_modules/@protobufjs/path/index.js +65 -0
  124. package/.output/server/node_modules/@protobufjs/path/package.json +21 -0
  125. package/.output/server/node_modules/@protobufjs/pool/index.js +48 -0
  126. package/.output/server/node_modules/@protobufjs/pool/package.json +21 -0
  127. package/.output/server/node_modules/@protobufjs/utf8/index.js +105 -0
  128. package/.output/server/node_modules/@protobufjs/utf8/package.json +21 -0
  129. package/.output/server/node_modules/@pulumi/pulumi/asset/archive.js +84 -0
  130. package/.output/server/node_modules/@pulumi/pulumi/asset/asset.js +84 -0
  131. package/.output/server/node_modules/@pulumi/pulumi/asset/index.js +21 -0
  132. package/.output/server/node_modules/@pulumi/pulumi/automation/cmd.js +270 -0
  133. package/.output/server/node_modules/@pulumi/pulumi/automation/errors.js +84 -0
  134. package/.output/server/node_modules/@pulumi/pulumi/automation/events.js +47 -0
  135. package/.output/server/node_modules/@pulumi/pulumi/automation/index.js +27 -0
  136. package/.output/server/node_modules/@pulumi/pulumi/automation/localWorkspace.js +1049 -0
  137. package/.output/server/node_modules/@pulumi/pulumi/automation/minimumVersion.js +28 -0
  138. package/.output/server/node_modules/@pulumi/pulumi/automation/remoteStack.js +130 -0
  139. package/.output/server/node_modules/@pulumi/pulumi/automation/remoteWorkspace.js +131 -0
  140. package/.output/server/node_modules/@pulumi/pulumi/automation/server.js +170 -0
  141. package/.output/server/node_modules/@pulumi/pulumi/automation/stack.js +991 -0
  142. package/.output/server/node_modules/@pulumi/pulumi/automation/stackSettings.js +24 -0
  143. package/.output/server/node_modules/@pulumi/pulumi/errors.js +126 -0
  144. package/.output/server/node_modules/@pulumi/pulumi/log/index.js +132 -0
  145. package/.output/server/node_modules/@pulumi/pulumi/metadata.js +46 -0
  146. package/.output/server/node_modules/@pulumi/pulumi/output.js +677 -0
  147. package/.output/server/node_modules/@pulumi/pulumi/package.json +93 -0
  148. package/.output/server/node_modules/@pulumi/pulumi/proto/alias_pb.js +631 -0
  149. package/.output/server/node_modules/@pulumi/pulumi/proto/callback_grpc_pb.js +61 -0
  150. package/.output/server/node_modules/@pulumi/pulumi/proto/callback_pb.js +582 -0
  151. package/.output/server/node_modules/@pulumi/pulumi/proto/codegen/hcl_pb.js +808 -0
  152. package/.output/server/node_modules/@pulumi/pulumi/proto/engine_grpc_pb.js +158 -0
  153. package/.output/server/node_modules/@pulumi/pulumi/proto/engine_pb.js +1058 -0
  154. package/.output/server/node_modules/@pulumi/pulumi/proto/language_grpc_pb.js +510 -0
  155. package/.output/server/node_modules/@pulumi/pulumi/proto/language_pb.js +7222 -0
  156. package/.output/server/node_modules/@pulumi/pulumi/proto/plugin_pb.js +1159 -0
  157. package/.output/server/node_modules/@pulumi/pulumi/proto/provider_pb.js +11300 -0
  158. package/.output/server/node_modules/@pulumi/pulumi/proto/resource_grpc_pb.js +310 -0
  159. package/.output/server/node_modules/@pulumi/pulumi/proto/resource_pb.js +7447 -0
  160. package/.output/server/node_modules/@pulumi/pulumi/proto/source_pb.js +230 -0
  161. package/.output/server/node_modules/@pulumi/pulumi/resource.js +774 -0
  162. package/.output/server/node_modules/@pulumi/pulumi/runtime/asyncIterableUtil.js +103 -0
  163. package/.output/server/node_modules/@pulumi/pulumi/runtime/callbacks.js +456 -0
  164. package/.output/server/node_modules/@pulumi/pulumi/runtime/config.js +129 -0
  165. package/.output/server/node_modules/@pulumi/pulumi/runtime/debuggable.js +137 -0
  166. package/.output/server/node_modules/@pulumi/pulumi/runtime/dependsOn.js +64 -0
  167. package/.output/server/node_modules/@pulumi/pulumi/runtime/invoke.js +498 -0
  168. package/.output/server/node_modules/@pulumi/pulumi/runtime/resource.js +928 -0
  169. package/.output/server/node_modules/@pulumi/pulumi/runtime/rpc.js +844 -0
  170. package/.output/server/node_modules/@pulumi/pulumi/runtime/settings.js +551 -0
  171. package/.output/server/node_modules/@pulumi/pulumi/runtime/stack.js +276 -0
  172. package/.output/server/node_modules/@pulumi/pulumi/runtime/state.js +187 -0
  173. package/.output/server/node_modules/@pulumi/pulumi/utils.js +89 -0
  174. package/.output/server/node_modules/@pulumi/pulumi/version.js +17 -0
  175. package/.output/server/node_modules/@pulumi/query/asyncQueryable.js +279 -0
  176. package/.output/server/node_modules/@pulumi/query/base.js +34 -0
  177. package/.output/server/node_modules/@pulumi/query/index.js +87 -0
  178. package/.output/server/node_modules/@pulumi/query/interfaces.js +24 -0
  179. package/.output/server/node_modules/@pulumi/query/operators.js +1269 -0
  180. package/.output/server/node_modules/@pulumi/query/package.json +22 -0
  181. package/.output/server/node_modules/@pulumi/query/sources.js +81 -0
  182. package/.output/server/node_modules/@pulumi/query/util.js +23 -0
  183. package/.output/server/node_modules/@sinclair/typebox/build/esm/index.mjs +78 -0
  184. package/.output/server/node_modules/@sinclair/typebox/build/esm/system/policy.mjs +54 -0
  185. package/.output/server/node_modules/@sinclair/typebox/build/esm/type/any/any.mjs +6 -0
  186. package/.output/server/node_modules/@sinclair/typebox/build/esm/type/any/index.mjs +1 -0
  187. package/.output/server/node_modules/@sinclair/typebox/build/esm/type/array/array.mjs +6 -0
  188. package/.output/server/node_modules/@sinclair/typebox/build/esm/type/array/index.mjs +1 -0
  189. package/.output/server/node_modules/@sinclair/typebox/build/esm/type/async-iterator/async-iterator.mjs +6 -0
  190. package/.output/server/node_modules/@sinclair/typebox/build/esm/type/async-iterator/index.mjs +1 -0
  191. package/.output/server/node_modules/@sinclair/typebox/build/esm/type/awaited/awaited.mjs +37 -0
  192. package/.output/server/node_modules/@sinclair/typebox/build/esm/type/awaited/index.mjs +1 -0
  193. package/.output/server/node_modules/@sinclair/typebox/build/esm/type/bigint/bigint.mjs +6 -0
  194. package/.output/server/node_modules/@sinclair/typebox/build/esm/type/bigint/index.mjs +1 -0
  195. package/.output/server/node_modules/@sinclair/typebox/build/esm/type/boolean/boolean.mjs +6 -0
  196. package/.output/server/node_modules/@sinclair/typebox/build/esm/type/boolean/index.mjs +1 -0
  197. package/.output/server/node_modules/@sinclair/typebox/build/esm/type/clone/index.mjs +2 -0
  198. package/.output/server/node_modules/@sinclair/typebox/build/esm/type/clone/type.mjs +9 -0
  199. package/.output/server/node_modules/@sinclair/typebox/build/esm/type/clone/value.mjs +36 -0
  200. package/.output/server/node_modules/@sinclair/typebox/build/esm/type/composite/composite.mjs +42 -0
  201. package/.output/server/node_modules/@sinclair/typebox/build/esm/type/composite/index.mjs +1 -0
  202. package/.output/server/node_modules/@sinclair/typebox/build/esm/type/computed/computed.mjs +6 -0
  203. package/.output/server/node_modules/@sinclair/typebox/build/esm/type/computed/index.mjs +1 -0
  204. package/.output/server/node_modules/@sinclair/typebox/build/esm/type/const/const.mjs +54 -0
  205. package/.output/server/node_modules/@sinclair/typebox/build/esm/type/const/index.mjs +1 -0
  206. package/.output/server/node_modules/@sinclair/typebox/build/esm/type/constructor/constructor.mjs +6 -0
  207. package/.output/server/node_modules/@sinclair/typebox/build/esm/type/constructor/index.mjs +1 -0
  208. package/.output/server/node_modules/@sinclair/typebox/build/esm/type/constructor-parameters/constructor-parameters.mjs +5 -0
  209. package/.output/server/node_modules/@sinclair/typebox/build/esm/type/constructor-parameters/index.mjs +1 -0
  210. package/.output/server/node_modules/@sinclair/typebox/build/esm/type/create/immutable.mjs +33 -0
  211. package/.output/server/node_modules/@sinclair/typebox/build/esm/type/create/index.mjs +1 -0
  212. package/.output/server/node_modules/@sinclair/typebox/build/esm/type/create/type.mjs +15 -0
  213. package/.output/server/node_modules/@sinclair/typebox/build/esm/type/date/date.mjs +6 -0
  214. package/.output/server/node_modules/@sinclair/typebox/build/esm/type/date/index.mjs +1 -0
  215. package/.output/server/node_modules/@sinclair/typebox/build/esm/type/discard/discard.mjs +8 -0
  216. package/.output/server/node_modules/@sinclair/typebox/build/esm/type/discard/index.mjs +1 -0
  217. package/.output/server/node_modules/@sinclair/typebox/build/esm/type/enum/enum.mjs +18 -0
  218. package/.output/server/node_modules/@sinclair/typebox/build/esm/type/enum/index.mjs +1 -0
  219. package/.output/server/node_modules/@sinclair/typebox/build/esm/type/error/error.mjs +6 -0
  220. package/.output/server/node_modules/@sinclair/typebox/build/esm/type/error/index.mjs +1 -0
  221. package/.output/server/node_modules/@sinclair/typebox/build/esm/type/exclude/exclude-from-mapped-result.mjs +18 -0
  222. package/.output/server/node_modules/@sinclair/typebox/build/esm/type/exclude/exclude-from-template-literal.mjs +5 -0
  223. package/.output/server/node_modules/@sinclair/typebox/build/esm/type/exclude/exclude.mjs +25 -0
  224. package/.output/server/node_modules/@sinclair/typebox/build/esm/type/exclude/index.mjs +3 -0
  225. package/.output/server/node_modules/@sinclair/typebox/build/esm/type/extends/extends-check.mjs +635 -0
  226. package/.output/server/node_modules/@sinclair/typebox/build/esm/type/extends/extends-from-mapped-key.mjs +25 -0
  227. package/.output/server/node_modules/@sinclair/typebox/build/esm/type/extends/extends-from-mapped-result.mjs +19 -0
  228. package/.output/server/node_modules/@sinclair/typebox/build/esm/type/extends/extends-undefined.mjs +20 -0
  229. package/.output/server/node_modules/@sinclair/typebox/build/esm/type/extends/extends.mjs +23 -0
  230. package/.output/server/node_modules/@sinclair/typebox/build/esm/type/extends/index.mjs +5 -0
  231. package/.output/server/node_modules/@sinclair/typebox/build/esm/type/extract/extract-from-mapped-result.mjs +18 -0
  232. package/.output/server/node_modules/@sinclair/typebox/build/esm/type/extract/extract-from-template-literal.mjs +5 -0
  233. package/.output/server/node_modules/@sinclair/typebox/build/esm/type/extract/extract.mjs +25 -0
  234. package/.output/server/node_modules/@sinclair/typebox/build/esm/type/extract/index.mjs +3 -0
  235. package/.output/server/node_modules/@sinclair/typebox/build/esm/type/function/function.mjs +6 -0
  236. package/.output/server/node_modules/@sinclair/typebox/build/esm/type/function/index.mjs +1 -0
  237. package/.output/server/node_modules/@sinclair/typebox/build/esm/type/guard/index.mjs +3 -0
  238. package/.output/server/node_modules/@sinclair/typebox/build/esm/type/guard/kind.mjs +230 -0
  239. package/.output/server/node_modules/@sinclair/typebox/build/esm/type/guard/type.mjs +501 -0
  240. package/.output/server/node_modules/@sinclair/typebox/build/esm/type/guard/value.mjs +70 -0
  241. package/.output/server/node_modules/@sinclair/typebox/build/esm/type/helpers/helpers.mjs +4 -0
  242. package/.output/server/node_modules/@sinclair/typebox/build/esm/type/helpers/index.mjs +1 -0
  243. package/.output/server/node_modules/@sinclair/typebox/build/esm/type/indexed/index.mjs +4 -0
  244. package/.output/server/node_modules/@sinclair/typebox/build/esm/type/indexed/indexed-from-mapped-key.mjs +22 -0
  245. package/.output/server/node_modules/@sinclair/typebox/build/esm/type/indexed/indexed-from-mapped-result.mjs +20 -0
  246. package/.output/server/node_modules/@sinclair/typebox/build/esm/type/indexed/indexed-property-keys.mjs +32 -0
  247. package/.output/server/node_modules/@sinclair/typebox/build/esm/type/indexed/indexed.mjs +91 -0
  248. package/.output/server/node_modules/@sinclair/typebox/build/esm/type/instance-type/index.mjs +1 -0
  249. package/.output/server/node_modules/@sinclair/typebox/build/esm/type/instance-type/instance-type.mjs +5 -0
  250. package/.output/server/node_modules/@sinclair/typebox/build/esm/type/integer/index.mjs +1 -0
  251. package/.output/server/node_modules/@sinclair/typebox/build/esm/type/integer/integer.mjs +6 -0
  252. package/.output/server/node_modules/@sinclair/typebox/build/esm/type/intersect/index.mjs +3 -0
  253. package/.output/server/node_modules/@sinclair/typebox/build/esm/type/intersect/intersect-create.mjs +19 -0
  254. package/.output/server/node_modules/@sinclair/typebox/build/esm/type/intersect/intersect-evaluated.mjs +38 -0
  255. package/.output/server/node_modules/@sinclair/typebox/build/esm/type/intersect/intersect-type.mjs +1 -0
  256. package/.output/server/node_modules/@sinclair/typebox/build/esm/type/intersect/intersect.mjs +17 -0
  257. package/.output/server/node_modules/@sinclair/typebox/build/esm/type/intrinsic/capitalize.mjs +5 -0
  258. package/.output/server/node_modules/@sinclair/typebox/build/esm/type/intrinsic/index.mjs +6 -0
  259. package/.output/server/node_modules/@sinclair/typebox/build/esm/type/intrinsic/intrinsic-from-mapped-key.mjs +26 -0
  260. package/.output/server/node_modules/@sinclair/typebox/build/esm/type/intrinsic/intrinsic.mjs +64 -0
  261. package/.output/server/node_modules/@sinclair/typebox/build/esm/type/intrinsic/lowercase.mjs +5 -0
  262. package/.output/server/node_modules/@sinclair/typebox/build/esm/type/intrinsic/uncapitalize.mjs +5 -0
  263. package/.output/server/node_modules/@sinclair/typebox/build/esm/type/intrinsic/uppercase.mjs +5 -0
  264. package/.output/server/node_modules/@sinclair/typebox/build/esm/type/iterator/index.mjs +1 -0
  265. package/.output/server/node_modules/@sinclair/typebox/build/esm/type/iterator/iterator.mjs +6 -0
  266. package/.output/server/node_modules/@sinclair/typebox/build/esm/type/keyof/index.mjs +4 -0
  267. package/.output/server/node_modules/@sinclair/typebox/build/esm/type/keyof/keyof-from-mapped-result.mjs +19 -0
  268. package/.output/server/node_modules/@sinclair/typebox/build/esm/type/keyof/keyof-property-entries.mjs +12 -0
  269. package/.output/server/node_modules/@sinclair/typebox/build/esm/type/keyof/keyof-property-keys.mjs +73 -0
  270. package/.output/server/node_modules/@sinclair/typebox/build/esm/type/keyof/keyof.mjs +35 -0
  271. package/.output/server/node_modules/@sinclair/typebox/build/esm/type/literal/index.mjs +1 -0
  272. package/.output/server/node_modules/@sinclair/typebox/build/esm/type/literal/literal.mjs +10 -0
  273. package/.output/server/node_modules/@sinclair/typebox/build/esm/type/mapped/index.mjs +3 -0
  274. package/.output/server/node_modules/@sinclair/typebox/build/esm/type/mapped/mapped-key.mjs +9 -0
  275. package/.output/server/node_modules/@sinclair/typebox/build/esm/type/mapped/mapped-result.mjs +9 -0
  276. package/.output/server/node_modules/@sinclair/typebox/build/esm/type/mapped/mapped.mjs +102 -0
  277. package/.output/server/node_modules/@sinclair/typebox/build/esm/type/module/compute.mjs +151 -0
  278. package/.output/server/node_modules/@sinclair/typebox/build/esm/type/module/index.mjs +1 -0
  279. package/.output/server/node_modules/@sinclair/typebox/build/esm/type/module/module.mjs +32 -0
  280. package/.output/server/node_modules/@sinclair/typebox/build/esm/type/never/index.mjs +1 -0
  281. package/.output/server/node_modules/@sinclair/typebox/build/esm/type/never/never.mjs +6 -0
  282. package/.output/server/node_modules/@sinclair/typebox/build/esm/type/not/index.mjs +1 -0
  283. package/.output/server/node_modules/@sinclair/typebox/build/esm/type/not/not.mjs +6 -0
  284. package/.output/server/node_modules/@sinclair/typebox/build/esm/type/null/index.mjs +1 -0
  285. package/.output/server/node_modules/@sinclair/typebox/build/esm/type/null/null.mjs +6 -0
  286. package/.output/server/node_modules/@sinclair/typebox/build/esm/type/number/index.mjs +1 -0
  287. package/.output/server/node_modules/@sinclair/typebox/build/esm/type/number/number.mjs +6 -0
  288. package/.output/server/node_modules/@sinclair/typebox/build/esm/type/object/index.mjs +1 -0
  289. package/.output/server/node_modules/@sinclair/typebox/build/esm/type/object/object.mjs +22 -0
  290. package/.output/server/node_modules/@sinclair/typebox/build/esm/type/omit/index.mjs +3 -0
  291. package/.output/server/node_modules/@sinclair/typebox/build/esm/type/omit/omit-from-mapped-key.mjs +22 -0
  292. package/.output/server/node_modules/@sinclair/typebox/build/esm/type/omit/omit-from-mapped-result.mjs +19 -0
  293. package/.output/server/node_modules/@sinclair/typebox/build/esm/type/omit/omit.mjs +71 -0
  294. package/.output/server/node_modules/@sinclair/typebox/build/esm/type/optional/index.mjs +2 -0
  295. package/.output/server/node_modules/@sinclair/typebox/build/esm/type/optional/optional-from-mapped-result.mjs +18 -0
  296. package/.output/server/node_modules/@sinclair/typebox/build/esm/type/optional/optional.mjs +22 -0
  297. package/.output/server/node_modules/@sinclair/typebox/build/esm/type/parameters/index.mjs +1 -0
  298. package/.output/server/node_modules/@sinclair/typebox/build/esm/type/parameters/parameters.mjs +5 -0
  299. package/.output/server/node_modules/@sinclair/typebox/build/esm/type/partial/index.mjs +2 -0
  300. package/.output/server/node_modules/@sinclair/typebox/build/esm/type/partial/partial-from-mapped-result.mjs +19 -0
  301. package/.output/server/node_modules/@sinclair/typebox/build/esm/type/partial/partial.mjs +61 -0
  302. package/.output/server/node_modules/@sinclair/typebox/build/esm/type/patterns/index.mjs +1 -0
  303. package/.output/server/node_modules/@sinclair/typebox/build/esm/type/patterns/patterns.mjs +8 -0
  304. package/.output/server/node_modules/@sinclair/typebox/build/esm/type/pick/index.mjs +3 -0
  305. package/.output/server/node_modules/@sinclair/typebox/build/esm/type/pick/pick-from-mapped-key.mjs +24 -0
  306. package/.output/server/node_modules/@sinclair/typebox/build/esm/type/pick/pick-from-mapped-result.mjs +19 -0
  307. package/.output/server/node_modules/@sinclair/typebox/build/esm/type/pick/pick.mjs +66 -0
  308. package/.output/server/node_modules/@sinclair/typebox/build/esm/type/promise/index.mjs +1 -0
  309. package/.output/server/node_modules/@sinclair/typebox/build/esm/type/promise/promise.mjs +6 -0
  310. package/.output/server/node_modules/@sinclair/typebox/build/esm/type/readonly/index.mjs +2 -0
  311. package/.output/server/node_modules/@sinclair/typebox/build/esm/type/readonly/readonly-from-mapped-result.mjs +18 -0
  312. package/.output/server/node_modules/@sinclair/typebox/build/esm/type/readonly/readonly.mjs +22 -0
  313. package/.output/server/node_modules/@sinclair/typebox/build/esm/type/readonly-optional/index.mjs +1 -0
  314. package/.output/server/node_modules/@sinclair/typebox/build/esm/type/readonly-optional/readonly-optional.mjs +6 -0
  315. package/.output/server/node_modules/@sinclair/typebox/build/esm/type/record/index.mjs +1 -0
  316. package/.output/server/node_modules/@sinclair/typebox/build/esm/type/record/record.mjs +94 -0
  317. package/.output/server/node_modules/@sinclair/typebox/build/esm/type/recursive/index.mjs +1 -0
  318. package/.output/server/node_modules/@sinclair/typebox/build/esm/type/recursive/recursive.mjs +15 -0
  319. package/.output/server/node_modules/@sinclair/typebox/build/esm/type/ref/index.mjs +1 -0
  320. package/.output/server/node_modules/@sinclair/typebox/build/esm/type/ref/ref.mjs +10 -0
  321. package/.output/server/node_modules/@sinclair/typebox/build/esm/type/regexp/index.mjs +1 -0
  322. package/.output/server/node_modules/@sinclair/typebox/build/esm/type/regexp/regexp.mjs +8 -0
  323. package/.output/server/node_modules/@sinclair/typebox/build/esm/type/registry/format.mjs +26 -0
  324. package/.output/server/node_modules/@sinclair/typebox/build/esm/type/registry/index.mjs +2 -0
  325. package/.output/server/node_modules/@sinclair/typebox/build/esm/type/registry/type.mjs +26 -0
  326. package/.output/server/node_modules/@sinclair/typebox/build/esm/type/required/index.mjs +2 -0
  327. package/.output/server/node_modules/@sinclair/typebox/build/esm/type/required/required-from-mapped-result.mjs +18 -0
  328. package/.output/server/node_modules/@sinclair/typebox/build/esm/type/required/required.mjs +60 -0
  329. package/.output/server/node_modules/@sinclair/typebox/build/esm/type/rest/index.mjs +1 -0
  330. package/.output/server/node_modules/@sinclair/typebox/build/esm/type/rest/rest.mjs +15 -0
  331. package/.output/server/node_modules/@sinclair/typebox/build/esm/type/return-type/index.mjs +1 -0
  332. package/.output/server/node_modules/@sinclair/typebox/build/esm/type/return-type/return-type.mjs +5 -0
  333. package/.output/server/node_modules/@sinclair/typebox/build/esm/type/schema/anyschema.mjs +1 -0
  334. package/.output/server/node_modules/@sinclair/typebox/build/esm/type/schema/index.mjs +2 -0
  335. package/.output/server/node_modules/@sinclair/typebox/build/esm/type/schema/schema.mjs +1 -0
  336. package/.output/server/node_modules/@sinclair/typebox/build/esm/type/sets/index.mjs +1 -0
  337. package/.output/server/node_modules/@sinclair/typebox/build/esm/type/sets/set.mjs +48 -0
  338. package/.output/server/node_modules/@sinclair/typebox/build/esm/type/static/index.mjs +1 -0
  339. package/.output/server/node_modules/@sinclair/typebox/build/esm/type/static/static.mjs +1 -0
  340. package/.output/server/node_modules/@sinclair/typebox/build/esm/type/string/index.mjs +1 -0
  341. package/.output/server/node_modules/@sinclair/typebox/build/esm/type/string/string.mjs +6 -0
  342. package/.output/server/node_modules/@sinclair/typebox/build/esm/type/symbol/index.mjs +1 -0
  343. package/.output/server/node_modules/@sinclair/typebox/build/esm/type/symbol/symbol.mjs +6 -0
  344. package/.output/server/node_modules/@sinclair/typebox/build/esm/type/symbols/index.mjs +1 -0
  345. package/.output/server/node_modules/@sinclair/typebox/build/esm/type/symbols/symbols.mjs +10 -0
  346. package/.output/server/node_modules/@sinclair/typebox/build/esm/type/template-literal/finite.mjs +49 -0
  347. package/.output/server/node_modules/@sinclair/typebox/build/esm/type/template-literal/generate.mjs +53 -0
  348. package/.output/server/node_modules/@sinclair/typebox/build/esm/type/template-literal/index.mjs +7 -0
  349. package/.output/server/node_modules/@sinclair/typebox/build/esm/type/template-literal/parse.mjs +167 -0
  350. package/.output/server/node_modules/@sinclair/typebox/build/esm/type/template-literal/pattern.mjs +33 -0
  351. package/.output/server/node_modules/@sinclair/typebox/build/esm/type/template-literal/syntax.mjs +55 -0
  352. package/.output/server/node_modules/@sinclair/typebox/build/esm/type/template-literal/template-literal.mjs +13 -0
  353. package/.output/server/node_modules/@sinclair/typebox/build/esm/type/template-literal/union.mjs +9 -0
  354. package/.output/server/node_modules/@sinclair/typebox/build/esm/type/transform/index.mjs +1 -0
  355. package/.output/server/node_modules/@sinclair/typebox/build/esm/type/transform/transform.mjs +40 -0
  356. package/.output/server/node_modules/@sinclair/typebox/build/esm/type/tuple/index.mjs +1 -0
  357. package/.output/server/node_modules/@sinclair/typebox/build/esm/type/tuple/tuple.mjs +9 -0
  358. package/.output/server/node_modules/@sinclair/typebox/build/esm/type/type/index.mjs +13 -0
  359. package/.output/server/node_modules/@sinclair/typebox/build/esm/type/type/javascript.mjs +89 -0
  360. package/.output/server/node_modules/@sinclair/typebox/build/esm/type/type/json.mjs +221 -0
  361. package/.output/server/node_modules/@sinclair/typebox/build/esm/type/type/type.mjs +60 -0
  362. package/.output/server/node_modules/@sinclair/typebox/build/esm/type/uint8array/index.mjs +1 -0
  363. package/.output/server/node_modules/@sinclair/typebox/build/esm/type/uint8array/uint8array.mjs +6 -0
  364. package/.output/server/node_modules/@sinclair/typebox/build/esm/type/undefined/index.mjs +1 -0
  365. package/.output/server/node_modules/@sinclair/typebox/build/esm/type/undefined/undefined.mjs +6 -0
  366. package/.output/server/node_modules/@sinclair/typebox/build/esm/type/union/index.mjs +3 -0
  367. package/.output/server/node_modules/@sinclair/typebox/build/esm/type/union/union-create.mjs +5 -0
  368. package/.output/server/node_modules/@sinclair/typebox/build/esm/type/union/union-evaluated.mjs +36 -0
  369. package/.output/server/node_modules/@sinclair/typebox/build/esm/type/union/union-type.mjs +1 -0
  370. package/.output/server/node_modules/@sinclair/typebox/build/esm/type/union/union.mjs +10 -0
  371. package/.output/server/node_modules/@sinclair/typebox/build/esm/type/unknown/index.mjs +1 -0
  372. package/.output/server/node_modules/@sinclair/typebox/build/esm/type/unknown/unknown.mjs +6 -0
  373. package/.output/server/node_modules/@sinclair/typebox/build/esm/type/unsafe/index.mjs +1 -0
  374. package/.output/server/node_modules/@sinclair/typebox/build/esm/type/unsafe/unsafe.mjs +6 -0
  375. package/.output/server/node_modules/@sinclair/typebox/build/esm/type/void/index.mjs +1 -0
  376. package/.output/server/node_modules/@sinclair/typebox/build/esm/type/void/void.mjs +6 -0
  377. package/.output/server/node_modules/@sinclair/typebox/build/esm/value/guard/guard.mjs +158 -0
  378. package/.output/server/node_modules/@sinclair/typebox/build/esm/value/guard/index.mjs +1 -0
  379. package/.output/server/node_modules/@sinclair/typebox/package.json +106 -0
  380. package/.output/server/node_modules/@sindresorhus/is/dist/index.js +434 -0
  381. package/.output/server/node_modules/@sindresorhus/is/package.json +96 -0
  382. package/.output/server/node_modules/@szmarczak/http-timer/dist/source/index.js +126 -0
  383. package/.output/server/node_modules/@szmarczak/http-timer/package.json +72 -0
  384. package/.output/server/node_modules/@trpc/server/dist/http.mjs +7 -0
  385. package/.output/server/node_modules/@trpc/server/dist/index.mjs +11 -0
  386. package/.output/server/node_modules/@trpc/server/dist/observable/observable.mjs +175 -0
  387. package/.output/server/node_modules/@trpc/server/dist/unstable-core-do-not-import/createProxy.mjs +73 -0
  388. package/.output/server/node_modules/@trpc/server/dist/unstable-core-do-not-import/error/TRPCError.mjs +78 -0
  389. package/.output/server/node_modules/@trpc/server/dist/unstable-core-do-not-import/error/formatter.mjs +5 -0
  390. package/.output/server/node_modules/@trpc/server/dist/unstable-core-do-not-import/error/getErrorShape.mjs +29 -0
  391. package/.output/server/node_modules/@trpc/server/dist/unstable-core-do-not-import/http/contentType.mjs +224 -0
  392. package/.output/server/node_modules/@trpc/server/dist/unstable-core-do-not-import/http/contentTypeParsers.mjs +12 -0
  393. package/.output/server/node_modules/@trpc/server/dist/unstable-core-do-not-import/http/getHTTPStatusCode.mjs +76 -0
  394. package/.output/server/node_modules/@trpc/server/dist/unstable-core-do-not-import/http/isAbortError.mjs +7 -0
  395. package/.output/server/node_modules/@trpc/server/dist/unstable-core-do-not-import/http/parseConnectionParams.mjs +39 -0
  396. package/.output/server/node_modules/@trpc/server/dist/unstable-core-do-not-import/http/resolveResponse.mjs +569 -0
  397. package/.output/server/node_modules/@trpc/server/dist/unstable-core-do-not-import/initTRPC.mjs +80 -0
  398. package/.output/server/node_modules/@trpc/server/dist/unstable-core-do-not-import/middleware.mjs +90 -0
  399. package/.output/server/node_modules/@trpc/server/dist/unstable-core-do-not-import/parser.mjs +40 -0
  400. package/.output/server/node_modules/@trpc/server/dist/unstable-core-do-not-import/procedureBuilder.mjs +194 -0
  401. package/.output/server/node_modules/@trpc/server/dist/unstable-core-do-not-import/rootConfig.mjs +6 -0
  402. package/.output/server/node_modules/@trpc/server/dist/unstable-core-do-not-import/router.mjs +176 -0
  403. package/.output/server/node_modules/@trpc/server/dist/unstable-core-do-not-import/rpc/codes.mjs +54 -0
  404. package/.output/server/node_modules/@trpc/server/dist/unstable-core-do-not-import/stream/jsonl.mjs +631 -0
  405. package/.output/server/node_modules/@trpc/server/dist/unstable-core-do-not-import/stream/sse.mjs +355 -0
  406. package/.output/server/node_modules/@trpc/server/dist/unstable-core-do-not-import/stream/tracked.mjs +25 -0
  407. package/.output/server/node_modules/@trpc/server/dist/unstable-core-do-not-import/stream/utils/asyncIterable.mjs +167 -0
  408. package/.output/server/node_modules/@trpc/server/dist/unstable-core-do-not-import/stream/utils/createDeferred.mjs +15 -0
  409. package/.output/server/node_modules/@trpc/server/dist/unstable-core-do-not-import/stream/utils/disposable.mjs +41 -0
  410. package/.output/server/node_modules/@trpc/server/dist/unstable-core-do-not-import/stream/utils/readableStreamFrom.mjs +23 -0
  411. package/.output/server/node_modules/@trpc/server/dist/unstable-core-do-not-import/stream/utils/timerResource.mjs +23 -0
  412. package/.output/server/node_modules/@trpc/server/dist/unstable-core-do-not-import/stream/utils/withPing.mjs +127 -0
  413. package/.output/server/node_modules/@trpc/server/dist/unstable-core-do-not-import/transformer.mjs +101 -0
  414. package/.output/server/node_modules/@trpc/server/dist/unstable-core-do-not-import/utils.mjs +83 -0
  415. package/.output/server/node_modules/@trpc/server/dist/vendor/unpromise/unpromise.mjs +289 -0
  416. package/.output/server/node_modules/@trpc/server/package.json +156 -0
  417. package/.output/server/node_modules/@unhead/dom/dist/index.mjs +197 -0
  418. package/.output/server/node_modules/@unhead/dom/package.json +40 -0
  419. package/.output/server/node_modules/@unhead/shared/dist/index.mjs +731 -0
  420. package/.output/server/node_modules/@unhead/shared/package.json +47 -0
  421. package/.output/server/node_modules/@unhead/ssr/dist/index.mjs +95 -0
  422. package/.output/server/node_modules/@unhead/ssr/package.json +40 -0
  423. package/.output/server/node_modules/@vue/compiler-core/dist/compiler-core.cjs.prod.js +6690 -0
  424. package/.output/server/node_modules/@vue/compiler-core/package.json +58 -0
  425. package/.output/server/node_modules/@vue/compiler-dom/dist/compiler-dom.cjs.prod.js +686 -0
  426. package/.output/server/node_modules/@vue/compiler-dom/package.json +57 -0
  427. package/.output/server/node_modules/@vue/compiler-ssr/dist/compiler-ssr.cjs.js +1404 -0
  428. package/.output/server/node_modules/@vue/compiler-ssr/package.json +34 -0
  429. package/.output/server/node_modules/@vue/reactivity/dist/reactivity.cjs.prod.js +1789 -0
  430. package/.output/server/node_modules/@vue/reactivity/package.json +55 -0
  431. package/.output/server/node_modules/@vue/runtime-core/dist/runtime-core.cjs.prod.js +6654 -0
  432. package/.output/server/node_modules/@vue/runtime-core/package.json +52 -0
  433. package/.output/server/node_modules/@vue/runtime-dom/dist/runtime-dom.cjs.prod.js +1669 -0
  434. package/.output/server/node_modules/@vue/runtime-dom/package.json +60 -0
  435. package/.output/server/node_modules/@vue/server-renderer/dist/server-renderer.cjs.prod.js +857 -0
  436. package/.output/server/node_modules/@vue/server-renderer/package.json +55 -0
  437. package/.output/server/node_modules/@vue/shared/dist/shared.cjs.prod.js +594 -0
  438. package/.output/server/node_modules/@vue/shared/package.json +47 -0
  439. package/.output/server/node_modules/acorn/dist/acorn.mjs +6145 -0
  440. package/.output/server/node_modules/acorn/package.json +50 -0
  441. package/.output/server/node_modules/better-lock/dist/better_lock.js +377 -0
  442. package/.output/server/node_modules/better-lock/dist/errors.js +136 -0
  443. package/.output/server/node_modules/better-lock/dist/index.js +28 -0
  444. package/.output/server/node_modules/better-lock/dist/internals.js +75 -0
  445. package/.output/server/node_modules/better-lock/dist/tools.js +109 -0
  446. package/.output/server/node_modules/better-lock/package.json +60 -0
  447. package/.output/server/node_modules/cacheable-lookup/package.json +45 -0
  448. package/.output/server/node_modules/cacheable-lookup/source/index.js +436 -0
  449. package/.output/server/node_modules/cacheable-request/package.json +56 -0
  450. package/.output/server/node_modules/cacheable-request/src/index.js +251 -0
  451. package/.output/server/node_modules/clone-response/package.json +41 -0
  452. package/.output/server/node_modules/clone-response/src/index.js +17 -0
  453. package/.output/server/node_modules/confbox/dist/index.mjs +1 -0
  454. package/.output/server/node_modules/confbox/dist/json5.mjs +14 -0
  455. package/.output/server/node_modules/confbox/dist/shared/confbox.9388d834.mjs +1 -0
  456. package/.output/server/node_modules/confbox/dist/shared/confbox.f9f03f05.mjs +7 -0
  457. package/.output/server/node_modules/confbox/dist/toml.mjs +239 -0
  458. package/.output/server/node_modules/confbox/dist/yaml.mjs +32 -0
  459. package/.output/server/node_modules/confbox/package.json +86 -0
  460. package/.output/server/node_modules/consola/dist/core.mjs +410 -0
  461. package/.output/server/node_modules/consola/package.json +101 -0
  462. package/.output/server/node_modules/cross-spawn/index.js +39 -0
  463. package/.output/server/node_modules/cross-spawn/lib/enoent.js +59 -0
  464. package/.output/server/node_modules/cross-spawn/lib/parse.js +91 -0
  465. package/.output/server/node_modules/cross-spawn/lib/util/escape.js +47 -0
  466. package/.output/server/node_modules/cross-spawn/lib/util/readShebang.js +23 -0
  467. package/.output/server/node_modules/cross-spawn/lib/util/resolveCommand.js +52 -0
  468. package/.output/server/node_modules/cross-spawn/package.json +73 -0
  469. package/.output/server/node_modules/decompress-response/index.js +58 -0
  470. package/.output/server/node_modules/decompress-response/package.json +56 -0
  471. package/.output/server/node_modules/defer-to-connect/dist/source/index.js +47 -0
  472. package/.output/server/node_modules/defer-to-connect/package.json +71 -0
  473. package/.output/server/node_modules/dettle/dist/debounce.js +91 -0
  474. package/.output/server/node_modules/dettle/dist/index.js +5 -0
  475. package/.output/server/node_modules/dettle/dist/throttle.js +12 -0
  476. package/.output/server/node_modules/dettle/package.json +28 -0
  477. package/.output/server/node_modules/devalue/index.js +3 -0
  478. package/.output/server/node_modules/devalue/package.json +34 -0
  479. package/.output/server/node_modules/devalue/src/base64.js +110 -0
  480. package/.output/server/node_modules/devalue/src/constants.js +6 -0
  481. package/.output/server/node_modules/devalue/src/parse.js +160 -0
  482. package/.output/server/node_modules/devalue/src/stringify.js +232 -0
  483. package/.output/server/node_modules/devalue/src/uneval.js +351 -0
  484. package/.output/server/node_modules/devalue/src/utils.js +113 -0
  485. package/.output/server/node_modules/dotenv/config.js +9 -0
  486. package/.output/server/node_modules/dotenv/lib/cli-options.js +11 -0
  487. package/.output/server/node_modules/dotenv/lib/env-options.js +24 -0
  488. package/.output/server/node_modules/dotenv/lib/main.js +361 -0
  489. package/.output/server/node_modules/dotenv/package.json +61 -0
  490. package/.output/server/node_modules/end-of-stream/index.js +94 -0
  491. package/.output/server/node_modules/end-of-stream/package.json +37 -0
  492. package/.output/server/node_modules/entities/lib/decode.js +536 -0
  493. package/.output/server/node_modules/entities/lib/decode_codepoint.js +76 -0
  494. package/.output/server/node_modules/entities/lib/generated/decode-data-html.js +9 -0
  495. package/.output/server/node_modules/entities/lib/generated/decode-data-xml.js +9 -0
  496. package/.output/server/node_modules/entities/package.json +90 -0
  497. package/.output/server/node_modules/esprima/dist/esprima.js +6709 -0
  498. package/.output/server/node_modules/esprima/package.json +112 -0
  499. package/.output/server/node_modules/estree-walker/dist/umd/estree-walker.js +344 -0
  500. package/.output/server/node_modules/estree-walker/package.json +37 -0
  501. package/.output/server/node_modules/execa/index.js +268 -0
  502. package/.output/server/node_modules/execa/lib/command.js +52 -0
  503. package/.output/server/node_modules/execa/lib/error.js +88 -0
  504. package/.output/server/node_modules/execa/lib/kill.js +115 -0
  505. package/.output/server/node_modules/execa/lib/promise.js +46 -0
  506. package/.output/server/node_modules/execa/lib/stdio.js +52 -0
  507. package/.output/server/node_modules/execa/lib/stream.js +97 -0
  508. package/.output/server/node_modules/execa/package.json +74 -0
  509. package/.output/server/node_modules/google-protobuf/google/protobuf/empty_pb.js +147 -0
  510. package/.output/server/node_modules/google-protobuf/google/protobuf/struct_pb.js +955 -0
  511. package/.output/server/node_modules/google-protobuf/google-protobuf.js +149 -0
  512. package/.output/server/node_modules/google-protobuf/package.json +35 -0
  513. package/.output/server/node_modules/got/dist/source/as-promise/create-rejection.js +30 -0
  514. package/.output/server/node_modules/got/dist/source/as-promise/index.js +176 -0
  515. package/.output/server/node_modules/got/dist/source/as-promise/normalize-arguments.js +78 -0
  516. package/.output/server/node_modules/got/dist/source/as-promise/parse-body.js +25 -0
  517. package/.output/server/node_modules/got/dist/source/as-promise/types.js +42 -0
  518. package/.output/server/node_modules/got/dist/source/core/calculate-retry-delay.js +29 -0
  519. package/.output/server/node_modules/got/dist/source/core/index.js +1505 -0
  520. package/.output/server/node_modules/got/dist/source/core/utils/dns-ip-version.js +17 -0
  521. package/.output/server/node_modules/got/dist/source/core/utils/get-body-size.js +32 -0
  522. package/.output/server/node_modules/got/dist/source/core/utils/get-buffer.js +16 -0
  523. package/.output/server/node_modules/got/dist/source/core/utils/is-form-data.js +4 -0
  524. package/.output/server/node_modules/got/dist/source/core/utils/is-response-ok.js +8 -0
  525. package/.output/server/node_modules/got/dist/source/core/utils/options-to-url.js +53 -0
  526. package/.output/server/node_modules/got/dist/source/core/utils/proxy-events.js +17 -0
  527. package/.output/server/node_modules/got/dist/source/core/utils/timed-out.js +121 -0
  528. package/.output/server/node_modules/got/dist/source/core/utils/unhandle.js +22 -0
  529. package/.output/server/node_modules/got/dist/source/core/utils/url-to-options.js +24 -0
  530. package/.output/server/node_modules/got/dist/source/core/utils/weakable-map.js +29 -0
  531. package/.output/server/node_modules/got/dist/source/create.js +240 -0
  532. package/.output/server/node_modules/got/dist/source/index.js +132 -0
  533. package/.output/server/node_modules/got/dist/source/types.js +2 -0
  534. package/.output/server/node_modules/got/dist/source/utils/deep-freeze.js +12 -0
  535. package/.output/server/node_modules/got/dist/source/utils/deprecation-warning.js +13 -0
  536. package/.output/server/node_modules/got/package.json +131 -0
  537. package/.output/server/node_modules/hookable/dist/index.mjs +290 -0
  538. package/.output/server/node_modules/hookable/package.json +49 -0
  539. package/.output/server/node_modules/http-cache-semantics/index.js +674 -0
  540. package/.output/server/node_modules/http-cache-semantics/package.json +18 -0
  541. package/.output/server/node_modules/http2-wrapper/package.json +54 -0
  542. package/.output/server/node_modules/http2-wrapper/source/agent.js +670 -0
  543. package/.output/server/node_modules/http2-wrapper/source/auto.js +149 -0
  544. package/.output/server/node_modules/http2-wrapper/source/client-request.js +445 -0
  545. package/.output/server/node_modules/http2-wrapper/source/incoming-message.js +58 -0
  546. package/.output/server/node_modules/http2-wrapper/source/index.js +28 -0
  547. package/.output/server/node_modules/http2-wrapper/source/utils/calculate-server-name.js +27 -0
  548. package/.output/server/node_modules/http2-wrapper/source/utils/errors.js +45 -0
  549. package/.output/server/node_modules/http2-wrapper/source/utils/is-request-pseudo-header.js +13 -0
  550. package/.output/server/node_modules/http2-wrapper/source/utils/proxy-events.js +7 -0
  551. package/.output/server/node_modules/http2-wrapper/source/utils/url-to-options.js +25 -0
  552. package/.output/server/node_modules/human-signals/build/src/core.js +273 -0
  553. package/.output/server/node_modules/human-signals/build/src/main.js +71 -0
  554. package/.output/server/node_modules/human-signals/build/src/realtime.js +19 -0
  555. package/.output/server/node_modules/human-signals/build/src/signals.js +35 -0
  556. package/.output/server/node_modules/human-signals/package.json +64 -0
  557. package/.output/server/node_modules/import-meta-resolve/index.js +47 -0
  558. package/.output/server/node_modules/import-meta-resolve/lib/errors.js +507 -0
  559. package/.output/server/node_modules/import-meta-resolve/lib/get-format.js +159 -0
  560. package/.output/server/node_modules/import-meta-resolve/lib/package-json-reader.js +177 -0
  561. package/.output/server/node_modules/import-meta-resolve/lib/resolve.js +1297 -0
  562. package/.output/server/node_modules/import-meta-resolve/lib/utils.js +47 -0
  563. package/.output/server/node_modules/import-meta-resolve/package.json +95 -0
  564. package/.output/server/node_modules/is-stream/index.js +28 -0
  565. package/.output/server/node_modules/is-stream/package.json +42 -0
  566. package/.output/server/node_modules/isexe/index.js +57 -0
  567. package/.output/server/node_modules/isexe/mode.js +41 -0
  568. package/.output/server/node_modules/isexe/package.json +31 -0
  569. package/.output/server/node_modules/isexe/windows.js +42 -0
  570. package/.output/server/node_modules/js-yaml/index.js +7 -0
  571. package/.output/server/node_modules/js-yaml/lib/js-yaml/common.js +59 -0
  572. package/.output/server/node_modules/js-yaml/lib/js-yaml/dumper.js +850 -0
  573. package/.output/server/node_modules/js-yaml/lib/js-yaml/exception.js +43 -0
  574. package/.output/server/node_modules/js-yaml/lib/js-yaml/loader.js +1644 -0
  575. package/.output/server/node_modules/js-yaml/lib/js-yaml/mark.js +76 -0
  576. package/.output/server/node_modules/js-yaml/lib/js-yaml/schema/core.js +18 -0
  577. package/.output/server/node_modules/js-yaml/lib/js-yaml/schema/default_full.js +25 -0
  578. package/.output/server/node_modules/js-yaml/lib/js-yaml/schema/default_safe.js +28 -0
  579. package/.output/server/node_modules/js-yaml/lib/js-yaml/schema/failsafe.js +17 -0
  580. package/.output/server/node_modules/js-yaml/lib/js-yaml/schema/json.js +25 -0
  581. package/.output/server/node_modules/js-yaml/lib/js-yaml/schema.js +108 -0
  582. package/.output/server/node_modules/js-yaml/lib/js-yaml/type/binary.js +138 -0
  583. package/.output/server/node_modules/js-yaml/lib/js-yaml/type/bool.js +35 -0
  584. package/.output/server/node_modules/js-yaml/lib/js-yaml/type/float.js +116 -0
  585. package/.output/server/node_modules/js-yaml/lib/js-yaml/type/int.js +173 -0
  586. package/.output/server/node_modules/js-yaml/lib/js-yaml/type/js/function.js +93 -0
  587. package/.output/server/node_modules/js-yaml/lib/js-yaml/type/js/regexp.js +60 -0
  588. package/.output/server/node_modules/js-yaml/lib/js-yaml/type/js/undefined.js +28 -0
  589. package/.output/server/node_modules/js-yaml/lib/js-yaml/type/map.js +8 -0
  590. package/.output/server/node_modules/js-yaml/lib/js-yaml/type/merge.js +12 -0
  591. package/.output/server/node_modules/js-yaml/lib/js-yaml/type/null.js +34 -0
  592. package/.output/server/node_modules/js-yaml/lib/js-yaml/type/omap.js +44 -0
  593. package/.output/server/node_modules/js-yaml/lib/js-yaml/type/pairs.js +53 -0
  594. package/.output/server/node_modules/js-yaml/lib/js-yaml/type/seq.js +8 -0
  595. package/.output/server/node_modules/js-yaml/lib/js-yaml/type/set.js +29 -0
  596. package/.output/server/node_modules/js-yaml/lib/js-yaml/type/str.js +8 -0
  597. package/.output/server/node_modules/js-yaml/lib/js-yaml/type/timestamp.js +88 -0
  598. package/.output/server/node_modules/js-yaml/lib/js-yaml/type.js +61 -0
  599. package/.output/server/node_modules/js-yaml/lib/js-yaml.js +39 -0
  600. package/.output/server/node_modules/js-yaml/package.json +49 -0
  601. package/.output/server/node_modules/json-buffer/index.js +58 -0
  602. package/.output/server/node_modules/json-buffer/package.json +34 -0
  603. package/.output/server/node_modules/keyv/package.json +57 -0
  604. package/.output/server/node_modules/keyv/src/index.js +259 -0
  605. package/.output/server/node_modules/lodash.camelcase/index.js +599 -0
  606. package/.output/server/node_modules/lodash.camelcase/package.json +19 -0
  607. package/.output/server/node_modules/long/package.json +50 -0
  608. package/.output/server/node_modules/long/umd/index.js +1432 -0
  609. package/.output/server/node_modules/long/umd/package.json +3 -0
  610. package/.output/server/node_modules/lowercase-keys/index.js +10 -0
  611. package/.output/server/node_modules/lowercase-keys/package.json +38 -0
  612. package/.output/server/node_modules/merge-stream/index.js +41 -0
  613. package/.output/server/node_modules/merge-stream/package.json +19 -0
  614. package/.output/server/node_modules/mimic-fn/index.js +13 -0
  615. package/.output/server/node_modules/mimic-fn/package.json +42 -0
  616. package/.output/server/node_modules/mlly/dist/index.mjs +2606 -0
  617. package/.output/server/node_modules/mlly/package.json +50 -0
  618. package/.output/server/node_modules/normalize-url/index.js +216 -0
  619. package/.output/server/node_modules/normalize-url/package.json +50 -0
  620. package/.output/server/node_modules/npm-run-path/index.js +47 -0
  621. package/.output/server/node_modules/npm-run-path/package.json +44 -0
  622. package/.output/server/node_modules/nypm/dist/index.mjs +306 -0
  623. package/.output/server/node_modules/nypm/package.json +60 -0
  624. package/.output/server/node_modules/once/once.js +42 -0
  625. package/.output/server/node_modules/once/package.json +33 -0
  626. package/.output/server/node_modules/onetime/index.js +44 -0
  627. package/.output/server/node_modules/onetime/package.json +43 -0
  628. package/.output/server/node_modules/p-cancelable/index.js +111 -0
  629. package/.output/server/node_modules/p-cancelable/package.json +49 -0
  630. package/.output/server/node_modules/path-key/index.js +16 -0
  631. package/.output/server/node_modules/path-key/package.json +39 -0
  632. package/.output/server/node_modules/pathe/dist/index.mjs +1 -0
  633. package/.output/server/node_modules/pathe/dist/shared/pathe.ff20891b.mjs +221 -0
  634. package/.output/server/node_modules/pathe/package.json +48 -0
  635. package/.output/server/node_modules/pkg-types/dist/index.mjs +156 -0
  636. package/.output/server/node_modules/pkg-types/package.json +47 -0
  637. package/.output/server/node_modules/promise-make-counter/dist/index.js +24 -0
  638. package/.output/server/node_modules/promise-make-counter/package.json +32 -0
  639. package/.output/server/node_modules/promise-make-naked/dist/index.js +25 -0
  640. package/.output/server/node_modules/promise-make-naked/dist/utils.js +4 -0
  641. package/.output/server/node_modules/promise-make-naked/package.json +27 -0
  642. package/.output/server/node_modules/protobufjs/ext/descriptor/index.js +1052 -0
  643. package/.output/server/node_modules/protobufjs/google/protobuf/api.json +118 -0
  644. package/.output/server/node_modules/protobufjs/google/protobuf/descriptor.json +739 -0
  645. package/.output/server/node_modules/protobufjs/google/protobuf/source_context.json +20 -0
  646. package/.output/server/node_modules/protobufjs/google/protobuf/type.json +202 -0
  647. package/.output/server/node_modules/protobufjs/index.js +4 -0
  648. package/.output/server/node_modules/protobufjs/package.json +112 -0
  649. package/.output/server/node_modules/protobufjs/src/common.js +399 -0
  650. package/.output/server/node_modules/protobufjs/src/converter.js +301 -0
  651. package/.output/server/node_modules/protobufjs/src/decoder.js +129 -0
  652. package/.output/server/node_modules/protobufjs/src/encoder.js +100 -0
  653. package/.output/server/node_modules/protobufjs/src/enum.js +198 -0
  654. package/.output/server/node_modules/protobufjs/src/field.js +377 -0
  655. package/.output/server/node_modules/protobufjs/src/index-light.js +104 -0
  656. package/.output/server/node_modules/protobufjs/src/index-minimal.js +36 -0
  657. package/.output/server/node_modules/protobufjs/src/index.js +12 -0
  658. package/.output/server/node_modules/protobufjs/src/mapfield.js +126 -0
  659. package/.output/server/node_modules/protobufjs/src/message.js +139 -0
  660. package/.output/server/node_modules/protobufjs/src/method.js +160 -0
  661. package/.output/server/node_modules/protobufjs/src/namespace.js +433 -0
  662. package/.output/server/node_modules/protobufjs/src/object.js +243 -0
  663. package/.output/server/node_modules/protobufjs/src/oneof.js +203 -0
  664. package/.output/server/node_modules/protobufjs/src/parse.js +893 -0
  665. package/.output/server/node_modules/protobufjs/src/reader.js +416 -0
  666. package/.output/server/node_modules/protobufjs/src/reader_buffer.js +51 -0
  667. package/.output/server/node_modules/protobufjs/src/root.js +368 -0
  668. package/.output/server/node_modules/protobufjs/src/roots.js +18 -0
  669. package/.output/server/node_modules/protobufjs/src/rpc/service.js +142 -0
  670. package/.output/server/node_modules/protobufjs/src/rpc.js +36 -0
  671. package/.output/server/node_modules/protobufjs/src/service.js +167 -0
  672. package/.output/server/node_modules/protobufjs/src/tokenize.js +416 -0
  673. package/.output/server/node_modules/protobufjs/src/type.js +589 -0
  674. package/.output/server/node_modules/protobufjs/src/types.js +196 -0
  675. package/.output/server/node_modules/protobufjs/src/util/longbits.js +200 -0
  676. package/.output/server/node_modules/protobufjs/src/util/minimal.js +438 -0
  677. package/.output/server/node_modules/protobufjs/src/util.js +212 -0
  678. package/.output/server/node_modules/protobufjs/src/verifier.js +177 -0
  679. package/.output/server/node_modules/protobufjs/src/wrappers.js +102 -0
  680. package/.output/server/node_modules/protobufjs/src/writer.js +465 -0
  681. package/.output/server/node_modules/protobufjs/src/writer_buffer.js +85 -0
  682. package/.output/server/node_modules/pump/index.js +86 -0
  683. package/.output/server/node_modules/pump/package.json +24 -0
  684. package/.output/server/node_modules/quick-lru/index.js +123 -0
  685. package/.output/server/node_modules/quick-lru/package.json +43 -0
  686. package/.output/server/node_modules/remeda/dist/chunk-23J5WHPE.js +1 -0
  687. package/.output/server/node_modules/remeda/dist/chunk-2H7222YL.js +1 -0
  688. package/.output/server/node_modules/remeda/dist/chunk-2TTHCYUC.js +1 -0
  689. package/.output/server/node_modules/remeda/dist/chunk-3AO76THC.js +1 -0
  690. package/.output/server/node_modules/remeda/dist/chunk-3MWN2VHC.js +1 -0
  691. package/.output/server/node_modules/remeda/dist/chunk-3X47EJDR.js +1 -0
  692. package/.output/server/node_modules/remeda/dist/chunk-54BCGHSM.js +1 -0
  693. package/.output/server/node_modules/remeda/dist/chunk-5DU4ITSF.js +1 -0
  694. package/.output/server/node_modules/remeda/dist/chunk-5G3KY7YR.js +1 -0
  695. package/.output/server/node_modules/remeda/dist/chunk-5K4XWC27.js +1 -0
  696. package/.output/server/node_modules/remeda/dist/chunk-5LYW332I.js +1 -0
  697. package/.output/server/node_modules/remeda/dist/chunk-5O3FBXU6.js +1 -0
  698. package/.output/server/node_modules/remeda/dist/chunk-5VD5RID3.js +1 -0
  699. package/.output/server/node_modules/remeda/dist/chunk-6GTAPB47.js +1 -0
  700. package/.output/server/node_modules/remeda/dist/chunk-6HBEBUDI.js +1 -0
  701. package/.output/server/node_modules/remeda/dist/chunk-6IHL7GXT.js +1 -0
  702. package/.output/server/node_modules/remeda/dist/chunk-6MJCR2TC.js +1 -0
  703. package/.output/server/node_modules/remeda/dist/chunk-73TZMTEA.js +1 -0
  704. package/.output/server/node_modules/remeda/dist/chunk-7BKSRZNG.js +1 -0
  705. package/.output/server/node_modules/remeda/dist/chunk-7EFS5WOU.js +1 -0
  706. package/.output/server/node_modules/remeda/dist/chunk-7KI2QQIQ.js +1 -0
  707. package/.output/server/node_modules/remeda/dist/chunk-7LYAC624.js +1 -0
  708. package/.output/server/node_modules/remeda/dist/chunk-7QX4DO53.js +1 -0
  709. package/.output/server/node_modules/remeda/dist/chunk-7ROMSESG.js +1 -0
  710. package/.output/server/node_modules/remeda/dist/chunk-A3FCILQE.js +1 -0
  711. package/.output/server/node_modules/remeda/dist/chunk-ANXBDSUI.js +1 -0
  712. package/.output/server/node_modules/remeda/dist/chunk-ATQJ6737.js +1 -0
  713. package/.output/server/node_modules/remeda/dist/chunk-AWX7RJXY.js +1 -0
  714. package/.output/server/node_modules/remeda/dist/chunk-BLEEZ23Z.js +1 -0
  715. package/.output/server/node_modules/remeda/dist/chunk-BO3LQZNF.js +1 -0
  716. package/.output/server/node_modules/remeda/dist/chunk-BONXESQ2.js +1 -0
  717. package/.output/server/node_modules/remeda/dist/chunk-BQ7TSIFE.js +1 -0
  718. package/.output/server/node_modules/remeda/dist/chunk-BTFWISLJ.js +1 -0
  719. package/.output/server/node_modules/remeda/dist/chunk-BYFE4FDX.js +1 -0
  720. package/.output/server/node_modules/remeda/dist/chunk-BZNENX2T.js +1 -0
  721. package/.output/server/node_modules/remeda/dist/chunk-C4ACUJGS.js +1 -0
  722. package/.output/server/node_modules/remeda/dist/chunk-C4OSHTCI.js +1 -0
  723. package/.output/server/node_modules/remeda/dist/chunk-C6IMN7SF.js +1 -0
  724. package/.output/server/node_modules/remeda/dist/chunk-CAZXBO45.js +1 -0
  725. package/.output/server/node_modules/remeda/dist/chunk-CETFG6TX.js +1 -0
  726. package/.output/server/node_modules/remeda/dist/chunk-CGDTCOHY.js +1 -0
  727. package/.output/server/node_modules/remeda/dist/chunk-CGU6DJQK.js +1 -0
  728. package/.output/server/node_modules/remeda/dist/chunk-COZRMC32.js +1 -0
  729. package/.output/server/node_modules/remeda/dist/chunk-DAHUGBAA.js +1 -0
  730. package/.output/server/node_modules/remeda/dist/chunk-DAQH7UR3.js +1 -0
  731. package/.output/server/node_modules/remeda/dist/chunk-DEVKGLTN.js +2 -0
  732. package/.output/server/node_modules/remeda/dist/chunk-DH3BPT6T.js +1 -0
  733. package/.output/server/node_modules/remeda/dist/chunk-DSLWSGID.js +1 -0
  734. package/.output/server/node_modules/remeda/dist/chunk-DUDVLQA2.js +1 -0
  735. package/.output/server/node_modules/remeda/dist/chunk-E3EM3KJY.js +1 -0
  736. package/.output/server/node_modules/remeda/dist/chunk-E5GMYZMA.js +1 -0
  737. package/.output/server/node_modules/remeda/dist/chunk-EJCQEWX4.js +1 -0
  738. package/.output/server/node_modules/remeda/dist/chunk-EKGXROMD.js +1 -0
  739. package/.output/server/node_modules/remeda/dist/chunk-EM24PB7A.js +1 -0
  740. package/.output/server/node_modules/remeda/dist/chunk-EMIEIAAH.js +1 -0
  741. package/.output/server/node_modules/remeda/dist/chunk-ENOHV5LT.js +1 -0
  742. package/.output/server/node_modules/remeda/dist/chunk-ENXBNJ36.js +1 -0
  743. package/.output/server/node_modules/remeda/dist/chunk-F6MOVT3B.js +1 -0
  744. package/.output/server/node_modules/remeda/dist/chunk-FB2ENREB.js +1 -0
  745. package/.output/server/node_modules/remeda/dist/chunk-FDH4IRIM.js +1 -0
  746. package/.output/server/node_modules/remeda/dist/chunk-FFFVS7XT.js +1 -0
  747. package/.output/server/node_modules/remeda/dist/chunk-FJ47D26D.js +1 -0
  748. package/.output/server/node_modules/remeda/dist/chunk-FMPZ2CLX.js +1 -0
  749. package/.output/server/node_modules/remeda/dist/chunk-FTGV3QMT.js +1 -0
  750. package/.output/server/node_modules/remeda/dist/chunk-FW6RZCGF.js +1 -0
  751. package/.output/server/node_modules/remeda/dist/chunk-G4OU46SC.js +1 -0
  752. package/.output/server/node_modules/remeda/dist/chunk-GJJNKHO2.js +1 -0
  753. package/.output/server/node_modules/remeda/dist/chunk-GK5I7C4J.js +1 -0
  754. package/.output/server/node_modules/remeda/dist/chunk-H2MMZB4H.js +1 -0
  755. package/.output/server/node_modules/remeda/dist/chunk-HBSRBOZK.js +1 -0
  756. package/.output/server/node_modules/remeda/dist/chunk-HJSE3ESO.js +1 -0
  757. package/.output/server/node_modules/remeda/dist/chunk-HO4FFX2R.js +1 -0
  758. package/.output/server/node_modules/remeda/dist/chunk-HQOQUMZV.js +1 -0
  759. package/.output/server/node_modules/remeda/dist/chunk-HV3WACXG.js +1 -0
  760. package/.output/server/node_modules/remeda/dist/chunk-I3D2BSWJ.js +1 -0
  761. package/.output/server/node_modules/remeda/dist/chunk-I76XIBD5.js +1 -0
  762. package/.output/server/node_modules/remeda/dist/chunk-ICQWNDYD.js +1 -0
  763. package/.output/server/node_modules/remeda/dist/chunk-IEE7G5JG.js +1 -0
  764. package/.output/server/node_modules/remeda/dist/chunk-IFSMCGFE.js +1 -0
  765. package/.output/server/node_modules/remeda/dist/chunk-IUVYQYF2.js +1 -0
  766. package/.output/server/node_modules/remeda/dist/chunk-J3IRE4DI.js +1 -0
  767. package/.output/server/node_modules/remeda/dist/chunk-JET27MOQ.js +1 -0
  768. package/.output/server/node_modules/remeda/dist/chunk-JJZ7E4YG.js +1 -0
  769. package/.output/server/node_modules/remeda/dist/chunk-JK3VNB42.js +1 -0
  770. package/.output/server/node_modules/remeda/dist/chunk-JWKJXNB2.js +1 -0
  771. package/.output/server/node_modules/remeda/dist/chunk-JYNHUNML.js +1 -0
  772. package/.output/server/node_modules/remeda/dist/chunk-K26VP6CL.js +1 -0
  773. package/.output/server/node_modules/remeda/dist/chunk-K3UJMX27.js +1 -0
  774. package/.output/server/node_modules/remeda/dist/chunk-K5HTIQFL.js +1 -0
  775. package/.output/server/node_modules/remeda/dist/chunk-K5LCXBBG.js +1 -0
  776. package/.output/server/node_modules/remeda/dist/chunk-KCAOR2LA.js +1 -0
  777. package/.output/server/node_modules/remeda/dist/chunk-KIA3HX3M.js +1 -0
  778. package/.output/server/node_modules/remeda/dist/chunk-KQINSXIJ.js +1 -0
  779. package/.output/server/node_modules/remeda/dist/chunk-KSDEFWLH.js +1 -0
  780. package/.output/server/node_modules/remeda/dist/chunk-LAI77QME.js +1 -0
  781. package/.output/server/node_modules/remeda/dist/chunk-LFEOZTJ2.js +1 -0
  782. package/.output/server/node_modules/remeda/dist/chunk-LIVAT3FO.js +1 -0
  783. package/.output/server/node_modules/remeda/dist/chunk-LKOWEUPS.js +1 -0
  784. package/.output/server/node_modules/remeda/dist/chunk-MD7HNZ54.js +1 -0
  785. package/.output/server/node_modules/remeda/dist/chunk-MQWMWXZY.js +1 -0
  786. package/.output/server/node_modules/remeda/dist/chunk-N4JUOEMS.js +1 -0
  787. package/.output/server/node_modules/remeda/dist/chunk-NGEN63UD.js +1 -0
  788. package/.output/server/node_modules/remeda/dist/chunk-NJXNQM3G.js +1 -0
  789. package/.output/server/node_modules/remeda/dist/chunk-NMC53JVB.js +1 -0
  790. package/.output/server/node_modules/remeda/dist/chunk-NMJS7ULY.js +1 -0
  791. package/.output/server/node_modules/remeda/dist/chunk-NP7PEDI6.js +1 -0
  792. package/.output/server/node_modules/remeda/dist/chunk-OC26KGXM.js +1 -0
  793. package/.output/server/node_modules/remeda/dist/chunk-OEI2BOBZ.js +1 -0
  794. package/.output/server/node_modules/remeda/dist/chunk-OIQJEOF7.js +1 -0
  795. package/.output/server/node_modules/remeda/dist/chunk-OWH4IQQW.js +1 -0
  796. package/.output/server/node_modules/remeda/dist/chunk-OYJAL6JK.js +1 -0
  797. package/.output/server/node_modules/remeda/dist/chunk-PJOV2RDB.js +1 -0
  798. package/.output/server/node_modules/remeda/dist/chunk-PULGOXDA.js +1 -0
  799. package/.output/server/node_modules/remeda/dist/chunk-PWMUXL7T.js +1 -0
  800. package/.output/server/node_modules/remeda/dist/chunk-PZOXR343.js +1 -0
  801. package/.output/server/node_modules/remeda/dist/chunk-QEKOZYJ5.js +1 -0
  802. package/.output/server/node_modules/remeda/dist/chunk-R72GEKLP.js +1 -0
  803. package/.output/server/node_modules/remeda/dist/chunk-RAAYCPUM.js +1 -0
  804. package/.output/server/node_modules/remeda/dist/chunk-RBODUO3Q.js +1 -0
  805. package/.output/server/node_modules/remeda/dist/chunk-RIKUOZVG.js +1 -0
  806. package/.output/server/node_modules/remeda/dist/chunk-RLZQTLGN.js +1 -0
  807. package/.output/server/node_modules/remeda/dist/chunk-RTWSSDNQ.js +1 -0
  808. package/.output/server/node_modules/remeda/dist/chunk-RU7WR4KH.js +1 -0
  809. package/.output/server/node_modules/remeda/dist/chunk-RUHQUI2Z.js +1 -0
  810. package/.output/server/node_modules/remeda/dist/chunk-RXDTYBQM.js +1 -0
  811. package/.output/server/node_modules/remeda/dist/chunk-S23N53O3.js +1 -0
  812. package/.output/server/node_modules/remeda/dist/chunk-S3CYJTB5.js +1 -0
  813. package/.output/server/node_modules/remeda/dist/chunk-SFZGYJFI.js +1 -0
  814. package/.output/server/node_modules/remeda/dist/chunk-SGAFZVQH.js +1 -0
  815. package/.output/server/node_modules/remeda/dist/chunk-SIBGEYD6.js +1 -0
  816. package/.output/server/node_modules/remeda/dist/chunk-SIQPZPLZ.js +1 -0
  817. package/.output/server/node_modules/remeda/dist/chunk-SOGKZP3K.js +1 -0
  818. package/.output/server/node_modules/remeda/dist/chunk-T5XG33UI.js +1 -0
  819. package/.output/server/node_modules/remeda/dist/chunk-TOHMEB3C.js +1 -0
  820. package/.output/server/node_modules/remeda/dist/chunk-U2GFW3LV.js +1 -0
  821. package/.output/server/node_modules/remeda/dist/chunk-U54ONDS6.js +1 -0
  822. package/.output/server/node_modules/remeda/dist/chunk-U753ZCO5.js +1 -0
  823. package/.output/server/node_modules/remeda/dist/chunk-UA6DVSZ3.js +1 -0
  824. package/.output/server/node_modules/remeda/dist/chunk-UEZTW4YU.js +1 -0
  825. package/.output/server/node_modules/remeda/dist/chunk-UIZMRUOL.js +1 -0
  826. package/.output/server/node_modules/remeda/dist/chunk-UWLP4KOD.js +1 -0
  827. package/.output/server/node_modules/remeda/dist/chunk-V6HCOU6T.js +1 -0
  828. package/.output/server/node_modules/remeda/dist/chunk-VBBPTWMC.js +1 -0
  829. package/.output/server/node_modules/remeda/dist/chunk-VCURCCIJ.js +1 -0
  830. package/.output/server/node_modules/remeda/dist/chunk-VCYTMP4D.js +1 -0
  831. package/.output/server/node_modules/remeda/dist/chunk-VFKB5IBK.js +1 -0
  832. package/.output/server/node_modules/remeda/dist/chunk-VFSOOVKJ.js +1 -0
  833. package/.output/server/node_modules/remeda/dist/chunk-VMV5GVZ5.js +1 -0
  834. package/.output/server/node_modules/remeda/dist/chunk-VPCXVUT7.js +1 -0
  835. package/.output/server/node_modules/remeda/dist/chunk-W2HQ33EO.js +1 -0
  836. package/.output/server/node_modules/remeda/dist/chunk-W3QI2BKC.js +1 -0
  837. package/.output/server/node_modules/remeda/dist/chunk-WIMS2EYK.js +1 -0
  838. package/.output/server/node_modules/remeda/dist/chunk-WT5BLBHJ.js +1 -0
  839. package/.output/server/node_modules/remeda/dist/chunk-WY3JJUR4.js +1 -0
  840. package/.output/server/node_modules/remeda/dist/chunk-WZSGNJRX.js +1 -0
  841. package/.output/server/node_modules/remeda/dist/chunk-X5E5CJJQ.js +1 -0
  842. package/.output/server/node_modules/remeda/dist/chunk-XBEN2OB2.js +1 -0
  843. package/.output/server/node_modules/remeda/dist/chunk-XJHR6NID.js +1 -0
  844. package/.output/server/node_modules/remeda/dist/chunk-XMLUDZIW.js +1 -0
  845. package/.output/server/node_modules/remeda/dist/chunk-XSF7OVJO.js +1 -0
  846. package/.output/server/node_modules/remeda/dist/chunk-XZ6COQKM.js +1 -0
  847. package/.output/server/node_modules/remeda/dist/chunk-Y67GVJD3.js +1 -0
  848. package/.output/server/node_modules/remeda/dist/chunk-YL2OFO3L.js +1 -0
  849. package/.output/server/node_modules/remeda/dist/chunk-YVMG2XEU.js +1 -0
  850. package/.output/server/node_modules/remeda/dist/chunk-ZF7KX2VP.js +1 -0
  851. package/.output/server/node_modules/remeda/dist/index.js +1 -0
  852. package/.output/server/node_modules/remeda/package.json +88 -0
  853. package/.output/server/node_modules/resolve-alpn/index.js +43 -0
  854. package/.output/server/node_modules/resolve-alpn/package.json +34 -0
  855. package/.output/server/node_modules/responselike/package.json +39 -0
  856. package/.output/server/node_modules/responselike/src/index.js +34 -0
  857. package/.output/server/node_modules/semver/classes/comparator.js +141 -0
  858. package/.output/server/node_modules/semver/classes/range.js +554 -0
  859. package/.output/server/node_modules/semver/classes/semver.js +302 -0
  860. package/.output/server/node_modules/semver/functions/clean.js +6 -0
  861. package/.output/server/node_modules/semver/functions/cmp.js +52 -0
  862. package/.output/server/node_modules/semver/functions/coerce.js +60 -0
  863. package/.output/server/node_modules/semver/functions/compare-build.js +7 -0
  864. package/.output/server/node_modules/semver/functions/compare-loose.js +3 -0
  865. package/.output/server/node_modules/semver/functions/compare.js +5 -0
  866. package/.output/server/node_modules/semver/functions/diff.js +65 -0
  867. package/.output/server/node_modules/semver/functions/eq.js +3 -0
  868. package/.output/server/node_modules/semver/functions/gt.js +3 -0
  869. package/.output/server/node_modules/semver/functions/gte.js +3 -0
  870. package/.output/server/node_modules/semver/functions/inc.js +19 -0
  871. package/.output/server/node_modules/semver/functions/lt.js +3 -0
  872. package/.output/server/node_modules/semver/functions/lte.js +3 -0
  873. package/.output/server/node_modules/semver/functions/major.js +3 -0
  874. package/.output/server/node_modules/semver/functions/minor.js +3 -0
  875. package/.output/server/node_modules/semver/functions/neq.js +3 -0
  876. package/.output/server/node_modules/semver/functions/parse.js +16 -0
  877. package/.output/server/node_modules/semver/functions/patch.js +3 -0
  878. package/.output/server/node_modules/semver/functions/prerelease.js +6 -0
  879. package/.output/server/node_modules/semver/functions/rcompare.js +3 -0
  880. package/.output/server/node_modules/semver/functions/rsort.js +3 -0
  881. package/.output/server/node_modules/semver/functions/satisfies.js +10 -0
  882. package/.output/server/node_modules/semver/functions/sort.js +3 -0
  883. package/.output/server/node_modules/semver/functions/valid.js +6 -0
  884. package/.output/server/node_modules/semver/index.js +89 -0
  885. package/.output/server/node_modules/semver/internal/constants.js +35 -0
  886. package/.output/server/node_modules/semver/internal/debug.js +9 -0
  887. package/.output/server/node_modules/semver/internal/identifiers.js +23 -0
  888. package/.output/server/node_modules/semver/internal/lrucache.js +40 -0
  889. package/.output/server/node_modules/semver/internal/parse-options.js +15 -0
  890. package/.output/server/node_modules/semver/internal/re.js +217 -0
  891. package/.output/server/node_modules/semver/package.json +77 -0
  892. package/.output/server/node_modules/semver/preload.js +2 -0
  893. package/.output/server/node_modules/semver/ranges/gtr.js +4 -0
  894. package/.output/server/node_modules/semver/ranges/intersects.js +7 -0
  895. package/.output/server/node_modules/semver/ranges/ltr.js +4 -0
  896. package/.output/server/node_modules/semver/ranges/max-satisfying.js +25 -0
  897. package/.output/server/node_modules/semver/ranges/min-satisfying.js +24 -0
  898. package/.output/server/node_modules/semver/ranges/min-version.js +61 -0
  899. package/.output/server/node_modules/semver/ranges/outside.js +80 -0
  900. package/.output/server/node_modules/semver/ranges/simplify.js +47 -0
  901. package/.output/server/node_modules/semver/ranges/subset.js +247 -0
  902. package/.output/server/node_modules/semver/ranges/to-comparators.js +8 -0
  903. package/.output/server/node_modules/semver/ranges/valid.js +11 -0
  904. package/.output/server/node_modules/shebang-command/index.js +19 -0
  905. package/.output/server/node_modules/shebang-command/package.json +34 -0
  906. package/.output/server/node_modules/shebang-regex/index.js +2 -0
  907. package/.output/server/node_modules/shebang-regex/package.json +35 -0
  908. package/.output/server/node_modules/signal-exit/index.js +202 -0
  909. package/.output/server/node_modules/signal-exit/package.json +38 -0
  910. package/.output/server/node_modules/signal-exit/signals.js +53 -0
  911. package/.output/server/node_modules/source-map-js/lib/array-set.js +121 -0
  912. package/.output/server/node_modules/source-map-js/lib/base64-vlq.js +140 -0
  913. package/.output/server/node_modules/source-map-js/lib/base64.js +67 -0
  914. package/.output/server/node_modules/source-map-js/lib/binary-search.js +111 -0
  915. package/.output/server/node_modules/source-map-js/lib/mapping-list.js +79 -0
  916. package/.output/server/node_modules/source-map-js/lib/quick-sort.js +132 -0
  917. package/.output/server/node_modules/source-map-js/lib/source-map-consumer.js +1188 -0
  918. package/.output/server/node_modules/source-map-js/lib/source-map-generator.js +444 -0
  919. package/.output/server/node_modules/source-map-js/lib/source-node.js +413 -0
  920. package/.output/server/node_modules/source-map-js/lib/util.js +594 -0
  921. package/.output/server/node_modules/source-map-js/package.json +71 -0
  922. package/.output/server/node_modules/source-map-js/source-map.js +8 -0
  923. package/.output/server/node_modules/strip-final-newline/index.js +16 -0
  924. package/.output/server/node_modules/strip-final-newline/package.json +40 -0
  925. package/.output/server/node_modules/stubborn-fs/dist/attemptify.js +19 -0
  926. package/.output/server/node_modules/stubborn-fs/dist/constants.js +8 -0
  927. package/.output/server/node_modules/stubborn-fs/dist/handlers.js +36 -0
  928. package/.output/server/node_modules/stubborn-fs/dist/index.js +53 -0
  929. package/.output/server/node_modules/stubborn-fs/dist/retryify.js +46 -0
  930. package/.output/server/node_modules/stubborn-fs/dist/retryify_queue.js +62 -0
  931. package/.output/server/node_modules/stubborn-fs/package.json +28 -0
  932. package/.output/server/node_modules/tiny-readdir/dist/constants.js +9 -0
  933. package/.output/server/node_modules/tiny-readdir/dist/index.js +185 -0
  934. package/.output/server/node_modules/tiny-readdir/dist/utils.js +9 -0
  935. package/.output/server/node_modules/tiny-readdir/package.json +34 -0
  936. package/.output/server/node_modules/tinyexec/dist/main.js +578 -0
  937. package/.output/server/node_modules/tinyexec/package.json +66 -0
  938. package/.output/server/node_modules/tmp/lib/tmp.js +784 -0
  939. package/.output/server/node_modules/tmp/package.json +56 -0
  940. package/.output/server/node_modules/ufo/dist/index.mjs +630 -0
  941. package/.output/server/node_modules/ufo/package.json +47 -0
  942. package/.output/server/node_modules/unhead/dist/index.mjs +748 -0
  943. package/.output/server/node_modules/unhead/package.json +46 -0
  944. package/.output/server/node_modules/upath/build/code/upath.js +171 -0
  945. package/.output/server/node_modules/upath/package.json +60 -0
  946. package/.output/server/node_modules/vue/dist/vue.cjs.js +80 -0
  947. package/.output/server/node_modules/vue/dist/vue.cjs.prod.js +66 -0
  948. package/.output/server/node_modules/vue/index.js +7 -0
  949. package/.output/server/node_modules/vue/index.mjs +1 -0
  950. package/.output/server/node_modules/vue/package.json +112 -0
  951. package/.output/server/node_modules/vue/server-renderer/index.mjs +1 -0
  952. package/.output/server/node_modules/vue-bundle-renderer/dist/runtime.mjs +196 -0
  953. package/.output/server/node_modules/vue-bundle-renderer/package.json +50 -0
  954. package/.output/server/node_modules/watcher/dist/constants.js +16 -0
  955. package/.output/server/node_modules/watcher/dist/enums.js +35 -0
  956. package/.output/server/node_modules/watcher/dist/lazy_map_set.js +81 -0
  957. package/.output/server/node_modules/watcher/dist/utils.js +120 -0
  958. package/.output/server/node_modules/watcher/dist/watcher.js +396 -0
  959. package/.output/server/node_modules/watcher/dist/watcher_handler.js +248 -0
  960. package/.output/server/node_modules/watcher/dist/watcher_locker.js +139 -0
  961. package/.output/server/node_modules/watcher/dist/watcher_locks_resolver.js +42 -0
  962. package/.output/server/node_modules/watcher/dist/watcher_poller.js +116 -0
  963. package/.output/server/node_modules/watcher/dist/watcher_stats.js +29 -0
  964. package/.output/server/node_modules/watcher/package.json +37 -0
  965. package/.output/server/node_modules/which/package.json +43 -0
  966. package/.output/server/node_modules/which/which.js +125 -0
  967. package/.output/server/node_modules/wrappy/package.json +29 -0
  968. package/.output/server/node_modules/wrappy/wrappy.js +33 -0
  969. package/.output/server/node_modules/zod/lib/index.mjs +4382 -0
  970. package/.output/server/node_modules/zod/package.json +122 -0
  971. package/.output/server/package.json +1 -0
  972. package/package.json +4 -4
@@ -0,0 +1,1569 @@
1
+ "use strict";
2
+ /*
3
+ * Copyright 2019 gRPC authors.
4
+ *
5
+ * Licensed under the Apache License, Version 2.0 (the "License");
6
+ * you may not use this file except in compliance with the License.
7
+ * You may obtain a copy of the License at
8
+ *
9
+ * http://www.apache.org/licenses/LICENSE-2.0
10
+ *
11
+ * Unless required by applicable law or agreed to in writing, software
12
+ * distributed under the License is distributed on an "AS IS" BASIS,
13
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14
+ * See the License for the specific language governing permissions and
15
+ * limitations under the License.
16
+ *
17
+ */
18
+ var __runInitializers = (this && this.__runInitializers) || function (thisArg, initializers, value) {
19
+ var useValue = arguments.length > 2;
20
+ for (var i = 0; i < initializers.length; i++) {
21
+ value = useValue ? initializers[i].call(thisArg, value) : initializers[i].call(thisArg);
22
+ }
23
+ return useValue ? value : void 0;
24
+ };
25
+ var __esDecorate = (this && this.__esDecorate) || function (ctor, descriptorIn, decorators, contextIn, initializers, extraInitializers) {
26
+ function accept(f) { if (f !== void 0 && typeof f !== "function") throw new TypeError("Function expected"); return f; }
27
+ var kind = contextIn.kind, key = kind === "getter" ? "get" : kind === "setter" ? "set" : "value";
28
+ var target = !descriptorIn && ctor ? contextIn["static"] ? ctor : ctor.prototype : null;
29
+ var descriptor = descriptorIn || (target ? Object.getOwnPropertyDescriptor(target, contextIn.name) : {});
30
+ var _, done = false;
31
+ for (var i = decorators.length - 1; i >= 0; i--) {
32
+ var context = {};
33
+ for (var p in contextIn) context[p] = p === "access" ? {} : contextIn[p];
34
+ for (var p in contextIn.access) context.access[p] = contextIn.access[p];
35
+ context.addInitializer = function (f) { if (done) throw new TypeError("Cannot add initializers after decoration has completed"); extraInitializers.push(accept(f || null)); };
36
+ var result = (0, decorators[i])(kind === "accessor" ? { get: descriptor.get, set: descriptor.set } : descriptor[key], context);
37
+ if (kind === "accessor") {
38
+ if (result === void 0) continue;
39
+ if (result === null || typeof result !== "object") throw new TypeError("Object expected");
40
+ if (_ = accept(result.get)) descriptor.get = _;
41
+ if (_ = accept(result.set)) descriptor.set = _;
42
+ if (_ = accept(result.init)) initializers.unshift(_);
43
+ }
44
+ else if (_ = accept(result)) {
45
+ if (kind === "field") initializers.unshift(_);
46
+ else descriptor[key] = _;
47
+ }
48
+ }
49
+ if (target) Object.defineProperty(target, contextIn.name, descriptor);
50
+ done = true;
51
+ };
52
+ Object.defineProperty(exports, "__esModule", { value: true });
53
+ exports.Server = void 0;
54
+ const http2 = require("http2");
55
+ const util = require("util");
56
+ const constants_1 = require("./constants");
57
+ const server_call_1 = require("./server-call");
58
+ const server_credentials_1 = require("./server-credentials");
59
+ const resolver_1 = require("./resolver");
60
+ const logging = require("./logging");
61
+ const subchannel_address_1 = require("./subchannel-address");
62
+ const uri_parser_1 = require("./uri-parser");
63
+ const channelz_1 = require("./channelz");
64
+ const server_interceptors_1 = require("./server-interceptors");
65
+ const UNLIMITED_CONNECTION_AGE_MS = ~(1 << 31);
66
+ const KEEPALIVE_MAX_TIME_MS = ~(1 << 31);
67
+ const KEEPALIVE_TIMEOUT_MS = 20000;
68
+ const MAX_CONNECTION_IDLE_MS = ~(1 << 31);
69
+ const { HTTP2_HEADER_PATH } = http2.constants;
70
+ const TRACER_NAME = 'server';
71
+ const kMaxAge = Buffer.from('max_age');
72
+ function noop() { }
73
+ /**
74
+ * Decorator to wrap a class method with util.deprecate
75
+ * @param message The message to output if the deprecated method is called
76
+ * @returns
77
+ */
78
+ function deprecate(message) {
79
+ return function (target, context) {
80
+ return util.deprecate(target, message);
81
+ };
82
+ }
83
+ function getUnimplementedStatusResponse(methodName) {
84
+ return {
85
+ code: constants_1.Status.UNIMPLEMENTED,
86
+ details: `The server does not implement the method ${methodName}`,
87
+ };
88
+ }
89
+ function getDefaultHandler(handlerType, methodName) {
90
+ const unimplementedStatusResponse = getUnimplementedStatusResponse(methodName);
91
+ switch (handlerType) {
92
+ case 'unary':
93
+ return (call, callback) => {
94
+ callback(unimplementedStatusResponse, null);
95
+ };
96
+ case 'clientStream':
97
+ return (call, callback) => {
98
+ callback(unimplementedStatusResponse, null);
99
+ };
100
+ case 'serverStream':
101
+ return (call) => {
102
+ call.emit('error', unimplementedStatusResponse);
103
+ };
104
+ case 'bidi':
105
+ return (call) => {
106
+ call.emit('error', unimplementedStatusResponse);
107
+ };
108
+ default:
109
+ throw new Error(`Invalid handlerType ${handlerType}`);
110
+ }
111
+ }
112
+ let Server = (() => {
113
+ var _a;
114
+ let _instanceExtraInitializers = [];
115
+ let _start_decorators;
116
+ return _a = class Server {
117
+ constructor(options) {
118
+ var _b, _c, _d, _e, _f, _g;
119
+ this.boundPorts = (__runInitializers(this, _instanceExtraInitializers), new Map());
120
+ this.http2Servers = new Map();
121
+ this.sessionIdleTimeouts = new Map();
122
+ this.handlers = new Map();
123
+ this.sessions = new Map();
124
+ /**
125
+ * This field only exists to ensure that the start method throws an error if
126
+ * it is called twice, as it did previously.
127
+ */
128
+ this.started = false;
129
+ this.shutdown = false;
130
+ this.serverAddressString = 'null';
131
+ // Channelz Info
132
+ this.channelzEnabled = true;
133
+ this.options = options !== null && options !== void 0 ? options : {};
134
+ if (this.options['grpc.enable_channelz'] === 0) {
135
+ this.channelzEnabled = false;
136
+ this.channelzTrace = new channelz_1.ChannelzTraceStub();
137
+ this.callTracker = new channelz_1.ChannelzCallTrackerStub();
138
+ this.listenerChildrenTracker = new channelz_1.ChannelzChildrenTrackerStub();
139
+ this.sessionChildrenTracker = new channelz_1.ChannelzChildrenTrackerStub();
140
+ }
141
+ else {
142
+ this.channelzTrace = new channelz_1.ChannelzTrace();
143
+ this.callTracker = new channelz_1.ChannelzCallTracker();
144
+ this.listenerChildrenTracker = new channelz_1.ChannelzChildrenTracker();
145
+ this.sessionChildrenTracker = new channelz_1.ChannelzChildrenTracker();
146
+ }
147
+ this.channelzRef = (0, channelz_1.registerChannelzServer)('server', () => this.getChannelzInfo(), this.channelzEnabled);
148
+ this.channelzTrace.addTrace('CT_INFO', 'Server created');
149
+ this.maxConnectionAgeMs =
150
+ (_b = this.options['grpc.max_connection_age_ms']) !== null && _b !== void 0 ? _b : UNLIMITED_CONNECTION_AGE_MS;
151
+ this.maxConnectionAgeGraceMs =
152
+ (_c = this.options['grpc.max_connection_age_grace_ms']) !== null && _c !== void 0 ? _c : UNLIMITED_CONNECTION_AGE_MS;
153
+ this.keepaliveTimeMs =
154
+ (_d = this.options['grpc.keepalive_time_ms']) !== null && _d !== void 0 ? _d : KEEPALIVE_MAX_TIME_MS;
155
+ this.keepaliveTimeoutMs =
156
+ (_e = this.options['grpc.keepalive_timeout_ms']) !== null && _e !== void 0 ? _e : KEEPALIVE_TIMEOUT_MS;
157
+ this.sessionIdleTimeout =
158
+ (_f = this.options['grpc.max_connection_idle_ms']) !== null && _f !== void 0 ? _f : MAX_CONNECTION_IDLE_MS;
159
+ this.commonServerOptions = {
160
+ maxSendHeaderBlockLength: Number.MAX_SAFE_INTEGER,
161
+ };
162
+ if ('grpc-node.max_session_memory' in this.options) {
163
+ this.commonServerOptions.maxSessionMemory =
164
+ this.options['grpc-node.max_session_memory'];
165
+ }
166
+ else {
167
+ /* By default, set a very large max session memory limit, to effectively
168
+ * disable enforcement of the limit. Some testing indicates that Node's
169
+ * behavior degrades badly when this limit is reached, so we solve that
170
+ * by disabling the check entirely. */
171
+ this.commonServerOptions.maxSessionMemory = Number.MAX_SAFE_INTEGER;
172
+ }
173
+ if ('grpc.max_concurrent_streams' in this.options) {
174
+ this.commonServerOptions.settings = {
175
+ maxConcurrentStreams: this.options['grpc.max_concurrent_streams'],
176
+ };
177
+ }
178
+ this.interceptors = (_g = this.options.interceptors) !== null && _g !== void 0 ? _g : [];
179
+ this.trace('Server constructed');
180
+ }
181
+ getChannelzInfo() {
182
+ return {
183
+ trace: this.channelzTrace,
184
+ callTracker: this.callTracker,
185
+ listenerChildren: this.listenerChildrenTracker.getChildLists(),
186
+ sessionChildren: this.sessionChildrenTracker.getChildLists(),
187
+ };
188
+ }
189
+ getChannelzSessionInfo(session) {
190
+ var _b, _c, _d;
191
+ const sessionInfo = this.sessions.get(session);
192
+ const sessionSocket = session.socket;
193
+ const remoteAddress = sessionSocket.remoteAddress
194
+ ? (0, subchannel_address_1.stringToSubchannelAddress)(sessionSocket.remoteAddress, sessionSocket.remotePort)
195
+ : null;
196
+ const localAddress = sessionSocket.localAddress
197
+ ? (0, subchannel_address_1.stringToSubchannelAddress)(sessionSocket.localAddress, sessionSocket.localPort)
198
+ : null;
199
+ let tlsInfo;
200
+ if (session.encrypted) {
201
+ const tlsSocket = sessionSocket;
202
+ const cipherInfo = tlsSocket.getCipher();
203
+ const certificate = tlsSocket.getCertificate();
204
+ const peerCertificate = tlsSocket.getPeerCertificate();
205
+ tlsInfo = {
206
+ cipherSuiteStandardName: (_b = cipherInfo.standardName) !== null && _b !== void 0 ? _b : null,
207
+ cipherSuiteOtherName: cipherInfo.standardName ? null : cipherInfo.name,
208
+ localCertificate: certificate && 'raw' in certificate ? certificate.raw : null,
209
+ remoteCertificate: peerCertificate && 'raw' in peerCertificate
210
+ ? peerCertificate.raw
211
+ : null,
212
+ };
213
+ }
214
+ else {
215
+ tlsInfo = null;
216
+ }
217
+ const socketInfo = {
218
+ remoteAddress: remoteAddress,
219
+ localAddress: localAddress,
220
+ security: tlsInfo,
221
+ remoteName: null,
222
+ streamsStarted: sessionInfo.streamTracker.callsStarted,
223
+ streamsSucceeded: sessionInfo.streamTracker.callsSucceeded,
224
+ streamsFailed: sessionInfo.streamTracker.callsFailed,
225
+ messagesSent: sessionInfo.messagesSent,
226
+ messagesReceived: sessionInfo.messagesReceived,
227
+ keepAlivesSent: sessionInfo.keepAlivesSent,
228
+ lastLocalStreamCreatedTimestamp: null,
229
+ lastRemoteStreamCreatedTimestamp: sessionInfo.streamTracker.lastCallStartedTimestamp,
230
+ lastMessageSentTimestamp: sessionInfo.lastMessageSentTimestamp,
231
+ lastMessageReceivedTimestamp: sessionInfo.lastMessageReceivedTimestamp,
232
+ localFlowControlWindow: (_c = session.state.localWindowSize) !== null && _c !== void 0 ? _c : null,
233
+ remoteFlowControlWindow: (_d = session.state.remoteWindowSize) !== null && _d !== void 0 ? _d : null,
234
+ };
235
+ return socketInfo;
236
+ }
237
+ trace(text) {
238
+ logging.trace(constants_1.LogVerbosity.DEBUG, TRACER_NAME, '(' + this.channelzRef.id + ') ' + text);
239
+ }
240
+ keepaliveTrace(text) {
241
+ logging.trace(constants_1.LogVerbosity.DEBUG, 'keepalive', '(' + this.channelzRef.id + ') ' + text);
242
+ }
243
+ addProtoService() {
244
+ throw new Error('Not implemented. Use addService() instead');
245
+ }
246
+ addService(service, implementation) {
247
+ if (service === null ||
248
+ typeof service !== 'object' ||
249
+ implementation === null ||
250
+ typeof implementation !== 'object') {
251
+ throw new Error('addService() requires two objects as arguments');
252
+ }
253
+ const serviceKeys = Object.keys(service);
254
+ if (serviceKeys.length === 0) {
255
+ throw new Error('Cannot add an empty service to a server');
256
+ }
257
+ serviceKeys.forEach(name => {
258
+ const attrs = service[name];
259
+ let methodType;
260
+ if (attrs.requestStream) {
261
+ if (attrs.responseStream) {
262
+ methodType = 'bidi';
263
+ }
264
+ else {
265
+ methodType = 'clientStream';
266
+ }
267
+ }
268
+ else {
269
+ if (attrs.responseStream) {
270
+ methodType = 'serverStream';
271
+ }
272
+ else {
273
+ methodType = 'unary';
274
+ }
275
+ }
276
+ let implFn = implementation[name];
277
+ let impl;
278
+ if (implFn === undefined && typeof attrs.originalName === 'string') {
279
+ implFn = implementation[attrs.originalName];
280
+ }
281
+ if (implFn !== undefined) {
282
+ impl = implFn.bind(implementation);
283
+ }
284
+ else {
285
+ impl = getDefaultHandler(methodType, name);
286
+ }
287
+ const success = this.register(attrs.path, impl, attrs.responseSerialize, attrs.requestDeserialize, methodType);
288
+ if (success === false) {
289
+ throw new Error(`Method handler for ${attrs.path} already provided.`);
290
+ }
291
+ });
292
+ }
293
+ removeService(service) {
294
+ if (service === null || typeof service !== 'object') {
295
+ throw new Error('removeService() requires object as argument');
296
+ }
297
+ const serviceKeys = Object.keys(service);
298
+ serviceKeys.forEach(name => {
299
+ const attrs = service[name];
300
+ this.unregister(attrs.path);
301
+ });
302
+ }
303
+ bind(port, creds) {
304
+ throw new Error('Not implemented. Use bindAsync() instead');
305
+ }
306
+ registerListenerToChannelz(boundAddress) {
307
+ return (0, channelz_1.registerChannelzSocket)((0, subchannel_address_1.subchannelAddressToString)(boundAddress), () => {
308
+ return {
309
+ localAddress: boundAddress,
310
+ remoteAddress: null,
311
+ security: null,
312
+ remoteName: null,
313
+ streamsStarted: 0,
314
+ streamsSucceeded: 0,
315
+ streamsFailed: 0,
316
+ messagesSent: 0,
317
+ messagesReceived: 0,
318
+ keepAlivesSent: 0,
319
+ lastLocalStreamCreatedTimestamp: null,
320
+ lastRemoteStreamCreatedTimestamp: null,
321
+ lastMessageSentTimestamp: null,
322
+ lastMessageReceivedTimestamp: null,
323
+ localFlowControlWindow: null,
324
+ remoteFlowControlWindow: null,
325
+ };
326
+ }, this.channelzEnabled);
327
+ }
328
+ createHttp2Server(credentials) {
329
+ let http2Server;
330
+ if (credentials._isSecure()) {
331
+ const credentialsSettings = credentials._getSettings();
332
+ const secureServerOptions = Object.assign(Object.assign(Object.assign({}, this.commonServerOptions), credentialsSettings), { enableTrace: this.options['grpc-node.tls_enable_trace'] === 1 });
333
+ let areCredentialsValid = credentialsSettings !== null;
334
+ http2Server = http2.createSecureServer(secureServerOptions);
335
+ http2Server.on('connection', (socket) => {
336
+ if (!areCredentialsValid) {
337
+ socket.destroy();
338
+ }
339
+ });
340
+ http2Server.on('secureConnection', (socket) => {
341
+ /* These errors need to be handled by the user of Http2SecureServer,
342
+ * according to https://github.com/nodejs/node/issues/35824 */
343
+ socket.on('error', (e) => {
344
+ this.trace('An incoming TLS connection closed with error: ' + e.message);
345
+ });
346
+ });
347
+ const credsWatcher = options => {
348
+ if (options) {
349
+ http2Server.setSecureContext(options);
350
+ }
351
+ areCredentialsValid = options !== null;
352
+ };
353
+ credentials._addWatcher(credsWatcher);
354
+ http2Server.on('close', () => {
355
+ credentials._removeWatcher(credsWatcher);
356
+ });
357
+ }
358
+ else {
359
+ http2Server = http2.createServer(this.commonServerOptions);
360
+ }
361
+ http2Server.setTimeout(0, noop);
362
+ this._setupHandlers(http2Server, credentials._getInterceptors());
363
+ return http2Server;
364
+ }
365
+ bindOneAddress(address, boundPortObject) {
366
+ this.trace('Attempting to bind ' + (0, subchannel_address_1.subchannelAddressToString)(address));
367
+ const http2Server = this.createHttp2Server(boundPortObject.credentials);
368
+ return new Promise((resolve, reject) => {
369
+ const onError = (err) => {
370
+ this.trace('Failed to bind ' +
371
+ (0, subchannel_address_1.subchannelAddressToString)(address) +
372
+ ' with error ' +
373
+ err.message);
374
+ resolve({
375
+ port: 'port' in address ? address.port : 1,
376
+ error: err.message,
377
+ });
378
+ };
379
+ http2Server.once('error', onError);
380
+ http2Server.listen(address, () => {
381
+ const boundAddress = http2Server.address();
382
+ let boundSubchannelAddress;
383
+ if (typeof boundAddress === 'string') {
384
+ boundSubchannelAddress = {
385
+ path: boundAddress,
386
+ };
387
+ }
388
+ else {
389
+ boundSubchannelAddress = {
390
+ host: boundAddress.address,
391
+ port: boundAddress.port,
392
+ };
393
+ }
394
+ const channelzRef = this.registerListenerToChannelz(boundSubchannelAddress);
395
+ this.listenerChildrenTracker.refChild(channelzRef);
396
+ this.http2Servers.set(http2Server, {
397
+ channelzRef: channelzRef,
398
+ sessions: new Set(),
399
+ });
400
+ boundPortObject.listeningServers.add(http2Server);
401
+ this.trace('Successfully bound ' +
402
+ (0, subchannel_address_1.subchannelAddressToString)(boundSubchannelAddress));
403
+ resolve({
404
+ port: 'port' in boundSubchannelAddress ? boundSubchannelAddress.port : 1,
405
+ });
406
+ http2Server.removeListener('error', onError);
407
+ });
408
+ });
409
+ }
410
+ async bindManyPorts(addressList, boundPortObject) {
411
+ if (addressList.length === 0) {
412
+ return {
413
+ count: 0,
414
+ port: 0,
415
+ errors: [],
416
+ };
417
+ }
418
+ if ((0, subchannel_address_1.isTcpSubchannelAddress)(addressList[0]) && addressList[0].port === 0) {
419
+ /* If binding to port 0, first try to bind the first address, then bind
420
+ * the rest of the address list to the specific port that it binds. */
421
+ const firstAddressResult = await this.bindOneAddress(addressList[0], boundPortObject);
422
+ if (firstAddressResult.error) {
423
+ /* If the first address fails to bind, try the same operation starting
424
+ * from the second item in the list. */
425
+ const restAddressResult = await this.bindManyPorts(addressList.slice(1), boundPortObject);
426
+ return Object.assign(Object.assign({}, restAddressResult), { errors: [firstAddressResult.error, ...restAddressResult.errors] });
427
+ }
428
+ else {
429
+ const restAddresses = addressList
430
+ .slice(1)
431
+ .map(address => (0, subchannel_address_1.isTcpSubchannelAddress)(address)
432
+ ? { host: address.host, port: firstAddressResult.port }
433
+ : address);
434
+ const restAddressResult = await Promise.all(restAddresses.map(address => this.bindOneAddress(address, boundPortObject)));
435
+ const allResults = [firstAddressResult, ...restAddressResult];
436
+ return {
437
+ count: allResults.filter(result => result.error === undefined).length,
438
+ port: firstAddressResult.port,
439
+ errors: allResults
440
+ .filter(result => result.error)
441
+ .map(result => result.error),
442
+ };
443
+ }
444
+ }
445
+ else {
446
+ const allResults = await Promise.all(addressList.map(address => this.bindOneAddress(address, boundPortObject)));
447
+ return {
448
+ count: allResults.filter(result => result.error === undefined).length,
449
+ port: allResults[0].port,
450
+ errors: allResults
451
+ .filter(result => result.error)
452
+ .map(result => result.error),
453
+ };
454
+ }
455
+ }
456
+ async bindAddressList(addressList, boundPortObject) {
457
+ const bindResult = await this.bindManyPorts(addressList, boundPortObject);
458
+ if (bindResult.count > 0) {
459
+ if (bindResult.count < addressList.length) {
460
+ logging.log(constants_1.LogVerbosity.INFO, `WARNING Only ${bindResult.count} addresses added out of total ${addressList.length} resolved`);
461
+ }
462
+ return bindResult.port;
463
+ }
464
+ else {
465
+ const errorString = `No address added out of total ${addressList.length} resolved`;
466
+ logging.log(constants_1.LogVerbosity.ERROR, errorString);
467
+ throw new Error(`${errorString} errors: [${bindResult.errors.join(',')}]`);
468
+ }
469
+ }
470
+ resolvePort(port) {
471
+ return new Promise((resolve, reject) => {
472
+ const resolverListener = {
473
+ onSuccessfulResolution: (endpointList, serviceConfig, serviceConfigError) => {
474
+ // We only want one resolution result. Discard all future results
475
+ resolverListener.onSuccessfulResolution = () => { };
476
+ const addressList = [].concat(...endpointList.map(endpoint => endpoint.addresses));
477
+ if (addressList.length === 0) {
478
+ reject(new Error(`No addresses resolved for port ${port}`));
479
+ return;
480
+ }
481
+ resolve(addressList);
482
+ },
483
+ onError: error => {
484
+ reject(new Error(error.details));
485
+ },
486
+ };
487
+ const resolver = (0, resolver_1.createResolver)(port, resolverListener, this.options);
488
+ resolver.updateResolution();
489
+ });
490
+ }
491
+ async bindPort(port, boundPortObject) {
492
+ const addressList = await this.resolvePort(port);
493
+ if (boundPortObject.cancelled) {
494
+ this.completeUnbind(boundPortObject);
495
+ throw new Error('bindAsync operation cancelled by unbind call');
496
+ }
497
+ const portNumber = await this.bindAddressList(addressList, boundPortObject);
498
+ if (boundPortObject.cancelled) {
499
+ this.completeUnbind(boundPortObject);
500
+ throw new Error('bindAsync operation cancelled by unbind call');
501
+ }
502
+ return portNumber;
503
+ }
504
+ normalizePort(port) {
505
+ const initialPortUri = (0, uri_parser_1.parseUri)(port);
506
+ if (initialPortUri === null) {
507
+ throw new Error(`Could not parse port "${port}"`);
508
+ }
509
+ const portUri = (0, resolver_1.mapUriDefaultScheme)(initialPortUri);
510
+ if (portUri === null) {
511
+ throw new Error(`Could not get a default scheme for port "${port}"`);
512
+ }
513
+ return portUri;
514
+ }
515
+ bindAsync(port, creds, callback) {
516
+ if (this.shutdown) {
517
+ throw new Error('bindAsync called after shutdown');
518
+ }
519
+ if (typeof port !== 'string') {
520
+ throw new TypeError('port must be a string');
521
+ }
522
+ if (creds === null || !(creds instanceof server_credentials_1.ServerCredentials)) {
523
+ throw new TypeError('creds must be a ServerCredentials object');
524
+ }
525
+ if (typeof callback !== 'function') {
526
+ throw new TypeError('callback must be a function');
527
+ }
528
+ this.trace('bindAsync port=' + port);
529
+ const portUri = this.normalizePort(port);
530
+ const deferredCallback = (error, port) => {
531
+ process.nextTick(() => callback(error, port));
532
+ };
533
+ /* First, if this port is already bound or that bind operation is in
534
+ * progress, use that result. */
535
+ let boundPortObject = this.boundPorts.get((0, uri_parser_1.uriToString)(portUri));
536
+ if (boundPortObject) {
537
+ if (!creds._equals(boundPortObject.credentials)) {
538
+ deferredCallback(new Error(`${port} already bound with incompatible credentials`), 0);
539
+ return;
540
+ }
541
+ /* If that operation has previously been cancelled by an unbind call,
542
+ * uncancel it. */
543
+ boundPortObject.cancelled = false;
544
+ if (boundPortObject.completionPromise) {
545
+ boundPortObject.completionPromise.then(portNum => callback(null, portNum), error => callback(error, 0));
546
+ }
547
+ else {
548
+ deferredCallback(null, boundPortObject.portNumber);
549
+ }
550
+ return;
551
+ }
552
+ boundPortObject = {
553
+ mapKey: (0, uri_parser_1.uriToString)(portUri),
554
+ originalUri: portUri,
555
+ completionPromise: null,
556
+ cancelled: false,
557
+ portNumber: 0,
558
+ credentials: creds,
559
+ listeningServers: new Set(),
560
+ };
561
+ const splitPort = (0, uri_parser_1.splitHostPort)(portUri.path);
562
+ const completionPromise = this.bindPort(portUri, boundPortObject);
563
+ boundPortObject.completionPromise = completionPromise;
564
+ /* If the port number is 0, defer populating the map entry until after the
565
+ * bind operation completes and we have a specific port number. Otherwise,
566
+ * populate it immediately. */
567
+ if ((splitPort === null || splitPort === void 0 ? void 0 : splitPort.port) === 0) {
568
+ completionPromise.then(portNum => {
569
+ const finalUri = {
570
+ scheme: portUri.scheme,
571
+ authority: portUri.authority,
572
+ path: (0, uri_parser_1.combineHostPort)({ host: splitPort.host, port: portNum }),
573
+ };
574
+ boundPortObject.mapKey = (0, uri_parser_1.uriToString)(finalUri);
575
+ boundPortObject.completionPromise = null;
576
+ boundPortObject.portNumber = portNum;
577
+ this.boundPorts.set(boundPortObject.mapKey, boundPortObject);
578
+ callback(null, portNum);
579
+ }, error => {
580
+ callback(error, 0);
581
+ });
582
+ }
583
+ else {
584
+ this.boundPorts.set(boundPortObject.mapKey, boundPortObject);
585
+ completionPromise.then(portNum => {
586
+ boundPortObject.completionPromise = null;
587
+ boundPortObject.portNumber = portNum;
588
+ callback(null, portNum);
589
+ }, error => {
590
+ callback(error, 0);
591
+ });
592
+ }
593
+ }
594
+ registerInjectorToChannelz() {
595
+ return (0, channelz_1.registerChannelzSocket)('injector', () => {
596
+ return {
597
+ localAddress: null,
598
+ remoteAddress: null,
599
+ security: null,
600
+ remoteName: null,
601
+ streamsStarted: 0,
602
+ streamsSucceeded: 0,
603
+ streamsFailed: 0,
604
+ messagesSent: 0,
605
+ messagesReceived: 0,
606
+ keepAlivesSent: 0,
607
+ lastLocalStreamCreatedTimestamp: null,
608
+ lastRemoteStreamCreatedTimestamp: null,
609
+ lastMessageSentTimestamp: null,
610
+ lastMessageReceivedTimestamp: null,
611
+ localFlowControlWindow: null,
612
+ remoteFlowControlWindow: null,
613
+ };
614
+ }, this.channelzEnabled);
615
+ }
616
+ createConnectionInjector(credentials) {
617
+ if (credentials === null || !(credentials instanceof server_credentials_1.ServerCredentials)) {
618
+ throw new TypeError('creds must be a ServerCredentials object');
619
+ }
620
+ const server = this.createHttp2Server(credentials);
621
+ const channelzRef = this.registerInjectorToChannelz();
622
+ if (this.channelzEnabled) {
623
+ this.listenerChildrenTracker.refChild(channelzRef);
624
+ }
625
+ const sessionsSet = new Set();
626
+ this.http2Servers.set(server, {
627
+ channelzRef: channelzRef,
628
+ sessions: sessionsSet
629
+ });
630
+ return {
631
+ injectConnection: (connection) => {
632
+ server.emit('connection', connection);
633
+ },
634
+ drain: (graceTimeMs) => {
635
+ var _b, _c;
636
+ for (const session of sessionsSet) {
637
+ this.closeSession(session);
638
+ }
639
+ (_c = (_b = setTimeout(() => {
640
+ for (const session of sessionsSet) {
641
+ session.destroy(http2.constants.NGHTTP2_CANCEL);
642
+ }
643
+ }, graceTimeMs)).unref) === null || _c === void 0 ? void 0 : _c.call(_b);
644
+ },
645
+ destroy: () => {
646
+ this.closeServer(server);
647
+ for (const session of sessionsSet) {
648
+ this.closeSession(session);
649
+ }
650
+ }
651
+ };
652
+ }
653
+ closeServer(server, callback) {
654
+ this.trace('Closing server with address ' + JSON.stringify(server.address()));
655
+ const serverInfo = this.http2Servers.get(server);
656
+ server.close(() => {
657
+ if (serverInfo) {
658
+ this.listenerChildrenTracker.unrefChild(serverInfo.channelzRef);
659
+ (0, channelz_1.unregisterChannelzRef)(serverInfo.channelzRef);
660
+ }
661
+ this.http2Servers.delete(server);
662
+ callback === null || callback === void 0 ? void 0 : callback();
663
+ });
664
+ }
665
+ closeSession(session, callback) {
666
+ var _b;
667
+ this.trace('Closing session initiated by ' + ((_b = session.socket) === null || _b === void 0 ? void 0 : _b.remoteAddress));
668
+ const sessionInfo = this.sessions.get(session);
669
+ const closeCallback = () => {
670
+ if (sessionInfo) {
671
+ this.sessionChildrenTracker.unrefChild(sessionInfo.ref);
672
+ (0, channelz_1.unregisterChannelzRef)(sessionInfo.ref);
673
+ }
674
+ callback === null || callback === void 0 ? void 0 : callback();
675
+ };
676
+ if (session.closed) {
677
+ queueMicrotask(closeCallback);
678
+ }
679
+ else {
680
+ session.close(closeCallback);
681
+ }
682
+ }
683
+ completeUnbind(boundPortObject) {
684
+ for (const server of boundPortObject.listeningServers) {
685
+ const serverInfo = this.http2Servers.get(server);
686
+ this.closeServer(server, () => {
687
+ boundPortObject.listeningServers.delete(server);
688
+ });
689
+ if (serverInfo) {
690
+ for (const session of serverInfo.sessions) {
691
+ this.closeSession(session);
692
+ }
693
+ }
694
+ }
695
+ this.boundPorts.delete(boundPortObject.mapKey);
696
+ }
697
+ /**
698
+ * Unbind a previously bound port, or cancel an in-progress bindAsync
699
+ * operation. If port 0 was bound, only the actual bound port can be
700
+ * unbound. For example, if bindAsync was called with "localhost:0" and the
701
+ * bound port result was 54321, it can be unbound as "localhost:54321".
702
+ * @param port
703
+ */
704
+ unbind(port) {
705
+ this.trace('unbind port=' + port);
706
+ const portUri = this.normalizePort(port);
707
+ const splitPort = (0, uri_parser_1.splitHostPort)(portUri.path);
708
+ if ((splitPort === null || splitPort === void 0 ? void 0 : splitPort.port) === 0) {
709
+ throw new Error('Cannot unbind port 0');
710
+ }
711
+ const boundPortObject = this.boundPorts.get((0, uri_parser_1.uriToString)(portUri));
712
+ if (boundPortObject) {
713
+ this.trace('unbinding ' +
714
+ boundPortObject.mapKey +
715
+ ' originally bound as ' +
716
+ (0, uri_parser_1.uriToString)(boundPortObject.originalUri));
717
+ /* If the bind operation is pending, the cancelled flag will trigger
718
+ * the unbind operation later. */
719
+ if (boundPortObject.completionPromise) {
720
+ boundPortObject.cancelled = true;
721
+ }
722
+ else {
723
+ this.completeUnbind(boundPortObject);
724
+ }
725
+ }
726
+ }
727
+ /**
728
+ * Gracefully close all connections associated with a previously bound port.
729
+ * After the grace time, forcefully close all remaining open connections.
730
+ *
731
+ * If port 0 was bound, only the actual bound port can be
732
+ * drained. For example, if bindAsync was called with "localhost:0" and the
733
+ * bound port result was 54321, it can be drained as "localhost:54321".
734
+ * @param port
735
+ * @param graceTimeMs
736
+ * @returns
737
+ */
738
+ drain(port, graceTimeMs) {
739
+ var _b, _c;
740
+ this.trace('drain port=' + port + ' graceTimeMs=' + graceTimeMs);
741
+ const portUri = this.normalizePort(port);
742
+ const splitPort = (0, uri_parser_1.splitHostPort)(portUri.path);
743
+ if ((splitPort === null || splitPort === void 0 ? void 0 : splitPort.port) === 0) {
744
+ throw new Error('Cannot drain port 0');
745
+ }
746
+ const boundPortObject = this.boundPorts.get((0, uri_parser_1.uriToString)(portUri));
747
+ if (!boundPortObject) {
748
+ return;
749
+ }
750
+ const allSessions = new Set();
751
+ for (const http2Server of boundPortObject.listeningServers) {
752
+ const serverEntry = this.http2Servers.get(http2Server);
753
+ if (serverEntry) {
754
+ for (const session of serverEntry.sessions) {
755
+ allSessions.add(session);
756
+ this.closeSession(session, () => {
757
+ allSessions.delete(session);
758
+ });
759
+ }
760
+ }
761
+ }
762
+ /* After the grace time ends, send another goaway to all remaining sessions
763
+ * with the CANCEL code. */
764
+ (_c = (_b = setTimeout(() => {
765
+ for (const session of allSessions) {
766
+ session.destroy(http2.constants.NGHTTP2_CANCEL);
767
+ }
768
+ }, graceTimeMs)).unref) === null || _c === void 0 ? void 0 : _c.call(_b);
769
+ }
770
+ forceShutdown() {
771
+ for (const boundPortObject of this.boundPorts.values()) {
772
+ boundPortObject.cancelled = true;
773
+ }
774
+ this.boundPorts.clear();
775
+ // Close the server if it is still running.
776
+ for (const server of this.http2Servers.keys()) {
777
+ this.closeServer(server);
778
+ }
779
+ // Always destroy any available sessions. It's possible that one or more
780
+ // tryShutdown() calls are in progress. Don't wait on them to finish.
781
+ this.sessions.forEach((channelzInfo, session) => {
782
+ this.closeSession(session);
783
+ // Cast NGHTTP2_CANCEL to any because TypeScript doesn't seem to
784
+ // recognize destroy(code) as a valid signature.
785
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
786
+ session.destroy(http2.constants.NGHTTP2_CANCEL);
787
+ });
788
+ this.sessions.clear();
789
+ (0, channelz_1.unregisterChannelzRef)(this.channelzRef);
790
+ this.shutdown = true;
791
+ }
792
+ register(name, handler, serialize, deserialize, type) {
793
+ if (this.handlers.has(name)) {
794
+ return false;
795
+ }
796
+ this.handlers.set(name, {
797
+ func: handler,
798
+ serialize,
799
+ deserialize,
800
+ type,
801
+ path: name,
802
+ });
803
+ return true;
804
+ }
805
+ unregister(name) {
806
+ return this.handlers.delete(name);
807
+ }
808
+ /**
809
+ * @deprecated No longer needed as of version 1.10.x
810
+ */
811
+ start() {
812
+ if (this.http2Servers.size === 0 ||
813
+ [...this.http2Servers.keys()].every(server => !server.listening)) {
814
+ throw new Error('server must be bound in order to start');
815
+ }
816
+ if (this.started === true) {
817
+ throw new Error('server is already started');
818
+ }
819
+ this.started = true;
820
+ }
821
+ tryShutdown(callback) {
822
+ var _b;
823
+ const wrappedCallback = (error) => {
824
+ (0, channelz_1.unregisterChannelzRef)(this.channelzRef);
825
+ callback(error);
826
+ };
827
+ let pendingChecks = 0;
828
+ function maybeCallback() {
829
+ pendingChecks--;
830
+ if (pendingChecks === 0) {
831
+ wrappedCallback();
832
+ }
833
+ }
834
+ this.shutdown = true;
835
+ for (const [serverKey, server] of this.http2Servers.entries()) {
836
+ pendingChecks++;
837
+ const serverString = server.channelzRef.name;
838
+ this.trace('Waiting for server ' + serverString + ' to close');
839
+ this.closeServer(serverKey, () => {
840
+ this.trace('Server ' + serverString + ' finished closing');
841
+ maybeCallback();
842
+ });
843
+ for (const session of server.sessions.keys()) {
844
+ pendingChecks++;
845
+ const sessionString = (_b = session.socket) === null || _b === void 0 ? void 0 : _b.remoteAddress;
846
+ this.trace('Waiting for session ' + sessionString + ' to close');
847
+ this.closeSession(session, () => {
848
+ this.trace('Session ' + sessionString + ' finished closing');
849
+ maybeCallback();
850
+ });
851
+ }
852
+ }
853
+ if (pendingChecks === 0) {
854
+ wrappedCallback();
855
+ }
856
+ }
857
+ addHttp2Port() {
858
+ throw new Error('Not yet implemented');
859
+ }
860
+ /**
861
+ * Get the channelz reference object for this server. The returned value is
862
+ * garbage if channelz is disabled for this server.
863
+ * @returns
864
+ */
865
+ getChannelzRef() {
866
+ return this.channelzRef;
867
+ }
868
+ _verifyContentType(stream, headers) {
869
+ const contentType = headers[http2.constants.HTTP2_HEADER_CONTENT_TYPE];
870
+ if (typeof contentType !== 'string' ||
871
+ !contentType.startsWith('application/grpc')) {
872
+ stream.respond({
873
+ [http2.constants.HTTP2_HEADER_STATUS]: http2.constants.HTTP_STATUS_UNSUPPORTED_MEDIA_TYPE,
874
+ }, { endStream: true });
875
+ return false;
876
+ }
877
+ return true;
878
+ }
879
+ _retrieveHandler(path) {
880
+ this.trace('Received call to method ' +
881
+ path +
882
+ ' at address ' +
883
+ this.serverAddressString);
884
+ const handler = this.handlers.get(path);
885
+ if (handler === undefined) {
886
+ this.trace('No handler registered for method ' +
887
+ path +
888
+ '. Sending UNIMPLEMENTED status.');
889
+ return null;
890
+ }
891
+ return handler;
892
+ }
893
+ _respondWithError(err, stream, channelzSessionInfo = null) {
894
+ var _b, _c;
895
+ const trailersToSend = Object.assign({ 'grpc-status': (_b = err.code) !== null && _b !== void 0 ? _b : constants_1.Status.INTERNAL, 'grpc-message': err.details, [http2.constants.HTTP2_HEADER_STATUS]: http2.constants.HTTP_STATUS_OK, [http2.constants.HTTP2_HEADER_CONTENT_TYPE]: 'application/grpc+proto' }, (_c = err.metadata) === null || _c === void 0 ? void 0 : _c.toHttp2Headers());
896
+ stream.respond(trailersToSend, { endStream: true });
897
+ this.callTracker.addCallFailed();
898
+ channelzSessionInfo === null || channelzSessionInfo === void 0 ? void 0 : channelzSessionInfo.streamTracker.addCallFailed();
899
+ }
900
+ _channelzHandler(extraInterceptors, stream, headers) {
901
+ // for handling idle timeout
902
+ this.onStreamOpened(stream);
903
+ const channelzSessionInfo = this.sessions.get(stream.session);
904
+ this.callTracker.addCallStarted();
905
+ channelzSessionInfo === null || channelzSessionInfo === void 0 ? void 0 : channelzSessionInfo.streamTracker.addCallStarted();
906
+ if (!this._verifyContentType(stream, headers)) {
907
+ this.callTracker.addCallFailed();
908
+ channelzSessionInfo === null || channelzSessionInfo === void 0 ? void 0 : channelzSessionInfo.streamTracker.addCallFailed();
909
+ return;
910
+ }
911
+ const path = headers[HTTP2_HEADER_PATH];
912
+ const handler = this._retrieveHandler(path);
913
+ if (!handler) {
914
+ this._respondWithError(getUnimplementedStatusResponse(path), stream, channelzSessionInfo);
915
+ return;
916
+ }
917
+ const callEventTracker = {
918
+ addMessageSent: () => {
919
+ if (channelzSessionInfo) {
920
+ channelzSessionInfo.messagesSent += 1;
921
+ channelzSessionInfo.lastMessageSentTimestamp = new Date();
922
+ }
923
+ },
924
+ addMessageReceived: () => {
925
+ if (channelzSessionInfo) {
926
+ channelzSessionInfo.messagesReceived += 1;
927
+ channelzSessionInfo.lastMessageReceivedTimestamp = new Date();
928
+ }
929
+ },
930
+ onCallEnd: status => {
931
+ if (status.code === constants_1.Status.OK) {
932
+ this.callTracker.addCallSucceeded();
933
+ }
934
+ else {
935
+ this.callTracker.addCallFailed();
936
+ }
937
+ },
938
+ onStreamEnd: success => {
939
+ if (channelzSessionInfo) {
940
+ if (success) {
941
+ channelzSessionInfo.streamTracker.addCallSucceeded();
942
+ }
943
+ else {
944
+ channelzSessionInfo.streamTracker.addCallFailed();
945
+ }
946
+ }
947
+ },
948
+ };
949
+ const call = (0, server_interceptors_1.getServerInterceptingCall)([...extraInterceptors, ...this.interceptors], stream, headers, callEventTracker, handler, this.options);
950
+ if (!this._runHandlerForCall(call, handler)) {
951
+ this.callTracker.addCallFailed();
952
+ channelzSessionInfo === null || channelzSessionInfo === void 0 ? void 0 : channelzSessionInfo.streamTracker.addCallFailed();
953
+ call.sendStatus({
954
+ code: constants_1.Status.INTERNAL,
955
+ details: `Unknown handler type: ${handler.type}`,
956
+ });
957
+ }
958
+ }
959
+ _streamHandler(extraInterceptors, stream, headers) {
960
+ // for handling idle timeout
961
+ this.onStreamOpened(stream);
962
+ if (this._verifyContentType(stream, headers) !== true) {
963
+ return;
964
+ }
965
+ const path = headers[HTTP2_HEADER_PATH];
966
+ const handler = this._retrieveHandler(path);
967
+ if (!handler) {
968
+ this._respondWithError(getUnimplementedStatusResponse(path), stream, null);
969
+ return;
970
+ }
971
+ const call = (0, server_interceptors_1.getServerInterceptingCall)([...extraInterceptors, ...this.interceptors], stream, headers, null, handler, this.options);
972
+ if (!this._runHandlerForCall(call, handler)) {
973
+ call.sendStatus({
974
+ code: constants_1.Status.INTERNAL,
975
+ details: `Unknown handler type: ${handler.type}`,
976
+ });
977
+ }
978
+ }
979
+ _runHandlerForCall(call, handler) {
980
+ const { type } = handler;
981
+ if (type === 'unary') {
982
+ handleUnary(call, handler);
983
+ }
984
+ else if (type === 'clientStream') {
985
+ handleClientStreaming(call, handler);
986
+ }
987
+ else if (type === 'serverStream') {
988
+ handleServerStreaming(call, handler);
989
+ }
990
+ else if (type === 'bidi') {
991
+ handleBidiStreaming(call, handler);
992
+ }
993
+ else {
994
+ return false;
995
+ }
996
+ return true;
997
+ }
998
+ _setupHandlers(http2Server, extraInterceptors) {
999
+ if (http2Server === null) {
1000
+ return;
1001
+ }
1002
+ const serverAddress = http2Server.address();
1003
+ let serverAddressString = 'null';
1004
+ if (serverAddress) {
1005
+ if (typeof serverAddress === 'string') {
1006
+ serverAddressString = serverAddress;
1007
+ }
1008
+ else {
1009
+ serverAddressString = serverAddress.address + ':' + serverAddress.port;
1010
+ }
1011
+ }
1012
+ this.serverAddressString = serverAddressString;
1013
+ const handler = this.channelzEnabled
1014
+ ? this._channelzHandler
1015
+ : this._streamHandler;
1016
+ const sessionHandler = this.channelzEnabled
1017
+ ? this._channelzSessionHandler(http2Server)
1018
+ : this._sessionHandler(http2Server);
1019
+ http2Server.on('stream', handler.bind(this, extraInterceptors));
1020
+ http2Server.on('session', sessionHandler);
1021
+ }
1022
+ _sessionHandler(http2Server) {
1023
+ return (session) => {
1024
+ var _b, _c;
1025
+ (_b = this.http2Servers.get(http2Server)) === null || _b === void 0 ? void 0 : _b.sessions.add(session);
1026
+ let connectionAgeTimer = null;
1027
+ let connectionAgeGraceTimer = null;
1028
+ let keepaliveTimer = null;
1029
+ let sessionClosedByServer = false;
1030
+ const idleTimeoutObj = this.enableIdleTimeout(session);
1031
+ if (this.maxConnectionAgeMs !== UNLIMITED_CONNECTION_AGE_MS) {
1032
+ // Apply a random jitter within a +/-10% range
1033
+ const jitterMagnitude = this.maxConnectionAgeMs / 10;
1034
+ const jitter = Math.random() * jitterMagnitude * 2 - jitterMagnitude;
1035
+ connectionAgeTimer = setTimeout(() => {
1036
+ var _b, _c;
1037
+ sessionClosedByServer = true;
1038
+ this.trace('Connection dropped by max connection age: ' +
1039
+ ((_b = session.socket) === null || _b === void 0 ? void 0 : _b.remoteAddress));
1040
+ try {
1041
+ session.goaway(http2.constants.NGHTTP2_NO_ERROR, ~(1 << 31), kMaxAge);
1042
+ }
1043
+ catch (e) {
1044
+ // The goaway can't be sent because the session is already closed
1045
+ session.destroy();
1046
+ return;
1047
+ }
1048
+ session.close();
1049
+ /* Allow a grace period after sending the GOAWAY before forcibly
1050
+ * closing the connection. */
1051
+ if (this.maxConnectionAgeGraceMs !== UNLIMITED_CONNECTION_AGE_MS) {
1052
+ connectionAgeGraceTimer = setTimeout(() => {
1053
+ session.destroy();
1054
+ }, this.maxConnectionAgeGraceMs);
1055
+ (_c = connectionAgeGraceTimer.unref) === null || _c === void 0 ? void 0 : _c.call(connectionAgeGraceTimer);
1056
+ }
1057
+ }, this.maxConnectionAgeMs + jitter);
1058
+ (_c = connectionAgeTimer.unref) === null || _c === void 0 ? void 0 : _c.call(connectionAgeTimer);
1059
+ }
1060
+ const clearKeepaliveTimeout = () => {
1061
+ if (keepaliveTimer) {
1062
+ clearTimeout(keepaliveTimer);
1063
+ keepaliveTimer = null;
1064
+ }
1065
+ };
1066
+ const canSendPing = () => {
1067
+ return (!session.destroyed &&
1068
+ this.keepaliveTimeMs < KEEPALIVE_MAX_TIME_MS &&
1069
+ this.keepaliveTimeMs > 0);
1070
+ };
1071
+ /* eslint-disable-next-line prefer-const */
1072
+ let sendPing; // hoisted for use in maybeStartKeepalivePingTimer
1073
+ const maybeStartKeepalivePingTimer = () => {
1074
+ var _b;
1075
+ if (!canSendPing()) {
1076
+ return;
1077
+ }
1078
+ this.keepaliveTrace('Starting keepalive timer for ' + this.keepaliveTimeMs + 'ms');
1079
+ keepaliveTimer = setTimeout(() => {
1080
+ clearKeepaliveTimeout();
1081
+ sendPing();
1082
+ }, this.keepaliveTimeMs);
1083
+ (_b = keepaliveTimer.unref) === null || _b === void 0 ? void 0 : _b.call(keepaliveTimer);
1084
+ };
1085
+ sendPing = () => {
1086
+ var _b;
1087
+ if (!canSendPing()) {
1088
+ return;
1089
+ }
1090
+ this.keepaliveTrace('Sending ping with timeout ' + this.keepaliveTimeoutMs + 'ms');
1091
+ let pingSendError = '';
1092
+ try {
1093
+ const pingSentSuccessfully = session.ping((err, duration, payload) => {
1094
+ clearKeepaliveTimeout();
1095
+ if (err) {
1096
+ this.keepaliveTrace('Ping failed with error: ' + err.message);
1097
+ sessionClosedByServer = true;
1098
+ session.close();
1099
+ }
1100
+ else {
1101
+ this.keepaliveTrace('Received ping response');
1102
+ maybeStartKeepalivePingTimer();
1103
+ }
1104
+ });
1105
+ if (!pingSentSuccessfully) {
1106
+ pingSendError = 'Ping returned false';
1107
+ }
1108
+ }
1109
+ catch (e) {
1110
+ // grpc/grpc-node#2139
1111
+ pingSendError =
1112
+ (e instanceof Error ? e.message : '') || 'Unknown error';
1113
+ }
1114
+ if (pingSendError) {
1115
+ this.keepaliveTrace('Ping send failed: ' + pingSendError);
1116
+ this.trace('Connection dropped due to ping send error: ' + pingSendError);
1117
+ sessionClosedByServer = true;
1118
+ session.close();
1119
+ return;
1120
+ }
1121
+ keepaliveTimer = setTimeout(() => {
1122
+ clearKeepaliveTimeout();
1123
+ this.keepaliveTrace('Ping timeout passed without response');
1124
+ this.trace('Connection dropped by keepalive timeout');
1125
+ sessionClosedByServer = true;
1126
+ session.close();
1127
+ }, this.keepaliveTimeoutMs);
1128
+ (_b = keepaliveTimer.unref) === null || _b === void 0 ? void 0 : _b.call(keepaliveTimer);
1129
+ };
1130
+ maybeStartKeepalivePingTimer();
1131
+ session.on('close', () => {
1132
+ var _b, _c;
1133
+ if (!sessionClosedByServer) {
1134
+ this.trace(`Connection dropped by client ${(_b = session.socket) === null || _b === void 0 ? void 0 : _b.remoteAddress}`);
1135
+ }
1136
+ if (connectionAgeTimer) {
1137
+ clearTimeout(connectionAgeTimer);
1138
+ }
1139
+ if (connectionAgeGraceTimer) {
1140
+ clearTimeout(connectionAgeGraceTimer);
1141
+ }
1142
+ clearKeepaliveTimeout();
1143
+ if (idleTimeoutObj !== null) {
1144
+ clearTimeout(idleTimeoutObj.timeout);
1145
+ this.sessionIdleTimeouts.delete(session);
1146
+ }
1147
+ (_c = this.http2Servers.get(http2Server)) === null || _c === void 0 ? void 0 : _c.sessions.delete(session);
1148
+ });
1149
+ };
1150
+ }
1151
+ _channelzSessionHandler(http2Server) {
1152
+ return (session) => {
1153
+ var _b, _c, _d, _e;
1154
+ const channelzRef = (0, channelz_1.registerChannelzSocket)((_c = (_b = session.socket) === null || _b === void 0 ? void 0 : _b.remoteAddress) !== null && _c !== void 0 ? _c : 'unknown', this.getChannelzSessionInfo.bind(this, session), this.channelzEnabled);
1155
+ const channelzSessionInfo = {
1156
+ ref: channelzRef,
1157
+ streamTracker: new channelz_1.ChannelzCallTracker(),
1158
+ messagesSent: 0,
1159
+ messagesReceived: 0,
1160
+ keepAlivesSent: 0,
1161
+ lastMessageSentTimestamp: null,
1162
+ lastMessageReceivedTimestamp: null,
1163
+ };
1164
+ (_d = this.http2Servers.get(http2Server)) === null || _d === void 0 ? void 0 : _d.sessions.add(session);
1165
+ this.sessions.set(session, channelzSessionInfo);
1166
+ const clientAddress = `${session.socket.remoteAddress}:${session.socket.remotePort}`;
1167
+ this.channelzTrace.addTrace('CT_INFO', 'Connection established by client ' + clientAddress);
1168
+ this.trace('Connection established by client ' + clientAddress);
1169
+ this.sessionChildrenTracker.refChild(channelzRef);
1170
+ let connectionAgeTimer = null;
1171
+ let connectionAgeGraceTimer = null;
1172
+ let keepaliveTimeout = null;
1173
+ let sessionClosedByServer = false;
1174
+ const idleTimeoutObj = this.enableIdleTimeout(session);
1175
+ if (this.maxConnectionAgeMs !== UNLIMITED_CONNECTION_AGE_MS) {
1176
+ // Apply a random jitter within a +/-10% range
1177
+ const jitterMagnitude = this.maxConnectionAgeMs / 10;
1178
+ const jitter = Math.random() * jitterMagnitude * 2 - jitterMagnitude;
1179
+ connectionAgeTimer = setTimeout(() => {
1180
+ var _b;
1181
+ sessionClosedByServer = true;
1182
+ this.channelzTrace.addTrace('CT_INFO', 'Connection dropped by max connection age from ' + clientAddress);
1183
+ try {
1184
+ session.goaway(http2.constants.NGHTTP2_NO_ERROR, ~(1 << 31), kMaxAge);
1185
+ }
1186
+ catch (e) {
1187
+ // The goaway can't be sent because the session is already closed
1188
+ session.destroy();
1189
+ return;
1190
+ }
1191
+ session.close();
1192
+ /* Allow a grace period after sending the GOAWAY before forcibly
1193
+ * closing the connection. */
1194
+ if (this.maxConnectionAgeGraceMs !== UNLIMITED_CONNECTION_AGE_MS) {
1195
+ connectionAgeGraceTimer = setTimeout(() => {
1196
+ session.destroy();
1197
+ }, this.maxConnectionAgeGraceMs);
1198
+ (_b = connectionAgeGraceTimer.unref) === null || _b === void 0 ? void 0 : _b.call(connectionAgeGraceTimer);
1199
+ }
1200
+ }, this.maxConnectionAgeMs + jitter);
1201
+ (_e = connectionAgeTimer.unref) === null || _e === void 0 ? void 0 : _e.call(connectionAgeTimer);
1202
+ }
1203
+ const clearKeepaliveTimeout = () => {
1204
+ if (keepaliveTimeout) {
1205
+ clearTimeout(keepaliveTimeout);
1206
+ keepaliveTimeout = null;
1207
+ }
1208
+ };
1209
+ const canSendPing = () => {
1210
+ return (!session.destroyed &&
1211
+ this.keepaliveTimeMs < KEEPALIVE_MAX_TIME_MS &&
1212
+ this.keepaliveTimeMs > 0);
1213
+ };
1214
+ /* eslint-disable-next-line prefer-const */
1215
+ let sendPing; // hoisted for use in maybeStartKeepalivePingTimer
1216
+ const maybeStartKeepalivePingTimer = () => {
1217
+ var _b;
1218
+ if (!canSendPing()) {
1219
+ return;
1220
+ }
1221
+ this.keepaliveTrace('Starting keepalive timer for ' + this.keepaliveTimeMs + 'ms');
1222
+ keepaliveTimeout = setTimeout(() => {
1223
+ clearKeepaliveTimeout();
1224
+ sendPing();
1225
+ }, this.keepaliveTimeMs);
1226
+ (_b = keepaliveTimeout.unref) === null || _b === void 0 ? void 0 : _b.call(keepaliveTimeout);
1227
+ };
1228
+ sendPing = () => {
1229
+ var _b;
1230
+ if (!canSendPing()) {
1231
+ return;
1232
+ }
1233
+ this.keepaliveTrace('Sending ping with timeout ' + this.keepaliveTimeoutMs + 'ms');
1234
+ let pingSendError = '';
1235
+ try {
1236
+ const pingSentSuccessfully = session.ping((err, duration, payload) => {
1237
+ clearKeepaliveTimeout();
1238
+ if (err) {
1239
+ this.keepaliveTrace('Ping failed with error: ' + err.message);
1240
+ this.channelzTrace.addTrace('CT_INFO', 'Connection dropped due to error of a ping frame ' +
1241
+ err.message +
1242
+ ' return in ' +
1243
+ duration);
1244
+ sessionClosedByServer = true;
1245
+ session.close();
1246
+ }
1247
+ else {
1248
+ this.keepaliveTrace('Received ping response');
1249
+ maybeStartKeepalivePingTimer();
1250
+ }
1251
+ });
1252
+ if (!pingSentSuccessfully) {
1253
+ pingSendError = 'Ping returned false';
1254
+ }
1255
+ }
1256
+ catch (e) {
1257
+ // grpc/grpc-node#2139
1258
+ pingSendError =
1259
+ (e instanceof Error ? e.message : '') || 'Unknown error';
1260
+ }
1261
+ if (pingSendError) {
1262
+ this.keepaliveTrace('Ping send failed: ' + pingSendError);
1263
+ this.channelzTrace.addTrace('CT_INFO', 'Connection dropped due to ping send error: ' + pingSendError);
1264
+ sessionClosedByServer = true;
1265
+ session.close();
1266
+ return;
1267
+ }
1268
+ channelzSessionInfo.keepAlivesSent += 1;
1269
+ keepaliveTimeout = setTimeout(() => {
1270
+ clearKeepaliveTimeout();
1271
+ this.keepaliveTrace('Ping timeout passed without response');
1272
+ this.channelzTrace.addTrace('CT_INFO', 'Connection dropped by keepalive timeout from ' + clientAddress);
1273
+ sessionClosedByServer = true;
1274
+ session.close();
1275
+ }, this.keepaliveTimeoutMs);
1276
+ (_b = keepaliveTimeout.unref) === null || _b === void 0 ? void 0 : _b.call(keepaliveTimeout);
1277
+ };
1278
+ maybeStartKeepalivePingTimer();
1279
+ session.on('close', () => {
1280
+ var _b;
1281
+ if (!sessionClosedByServer) {
1282
+ this.channelzTrace.addTrace('CT_INFO', 'Connection dropped by client ' + clientAddress);
1283
+ }
1284
+ this.sessionChildrenTracker.unrefChild(channelzRef);
1285
+ (0, channelz_1.unregisterChannelzRef)(channelzRef);
1286
+ if (connectionAgeTimer) {
1287
+ clearTimeout(connectionAgeTimer);
1288
+ }
1289
+ if (connectionAgeGraceTimer) {
1290
+ clearTimeout(connectionAgeGraceTimer);
1291
+ }
1292
+ clearKeepaliveTimeout();
1293
+ if (idleTimeoutObj !== null) {
1294
+ clearTimeout(idleTimeoutObj.timeout);
1295
+ this.sessionIdleTimeouts.delete(session);
1296
+ }
1297
+ (_b = this.http2Servers.get(http2Server)) === null || _b === void 0 ? void 0 : _b.sessions.delete(session);
1298
+ this.sessions.delete(session);
1299
+ });
1300
+ };
1301
+ }
1302
+ enableIdleTimeout(session) {
1303
+ var _b, _c;
1304
+ if (this.sessionIdleTimeout >= MAX_CONNECTION_IDLE_MS) {
1305
+ return null;
1306
+ }
1307
+ const idleTimeoutObj = {
1308
+ activeStreams: 0,
1309
+ lastIdle: Date.now(),
1310
+ onClose: this.onStreamClose.bind(this, session),
1311
+ timeout: setTimeout(this.onIdleTimeout, this.sessionIdleTimeout, this, session),
1312
+ };
1313
+ (_c = (_b = idleTimeoutObj.timeout).unref) === null || _c === void 0 ? void 0 : _c.call(_b);
1314
+ this.sessionIdleTimeouts.set(session, idleTimeoutObj);
1315
+ const { socket } = session;
1316
+ this.trace('Enable idle timeout for ' +
1317
+ socket.remoteAddress +
1318
+ ':' +
1319
+ socket.remotePort);
1320
+ return idleTimeoutObj;
1321
+ }
1322
+ onIdleTimeout(ctx, session) {
1323
+ const { socket } = session;
1324
+ const sessionInfo = ctx.sessionIdleTimeouts.get(session);
1325
+ // if it is called while we have activeStreams - timer will not be rescheduled
1326
+ // until last active stream is closed, then it will call .refresh() on the timer
1327
+ // important part is to not clearTimeout(timer) or it becomes unusable
1328
+ // for future refreshes
1329
+ if (sessionInfo !== undefined &&
1330
+ sessionInfo.activeStreams === 0) {
1331
+ if (Date.now() - sessionInfo.lastIdle >= ctx.sessionIdleTimeout) {
1332
+ ctx.trace('Session idle timeout triggered for ' +
1333
+ (socket === null || socket === void 0 ? void 0 : socket.remoteAddress) +
1334
+ ':' +
1335
+ (socket === null || socket === void 0 ? void 0 : socket.remotePort) +
1336
+ ' last idle at ' +
1337
+ sessionInfo.lastIdle);
1338
+ ctx.closeSession(session);
1339
+ }
1340
+ else {
1341
+ sessionInfo.timeout.refresh();
1342
+ }
1343
+ }
1344
+ }
1345
+ onStreamOpened(stream) {
1346
+ const session = stream.session;
1347
+ const idleTimeoutObj = this.sessionIdleTimeouts.get(session);
1348
+ if (idleTimeoutObj) {
1349
+ idleTimeoutObj.activeStreams += 1;
1350
+ stream.once('close', idleTimeoutObj.onClose);
1351
+ }
1352
+ }
1353
+ onStreamClose(session) {
1354
+ var _b, _c;
1355
+ const idleTimeoutObj = this.sessionIdleTimeouts.get(session);
1356
+ if (idleTimeoutObj) {
1357
+ idleTimeoutObj.activeStreams -= 1;
1358
+ if (idleTimeoutObj.activeStreams === 0) {
1359
+ idleTimeoutObj.lastIdle = Date.now();
1360
+ idleTimeoutObj.timeout.refresh();
1361
+ this.trace('Session onStreamClose' +
1362
+ ((_b = session.socket) === null || _b === void 0 ? void 0 : _b.remoteAddress) +
1363
+ ':' +
1364
+ ((_c = session.socket) === null || _c === void 0 ? void 0 : _c.remotePort) +
1365
+ ' at ' +
1366
+ idleTimeoutObj.lastIdle);
1367
+ }
1368
+ }
1369
+ }
1370
+ },
1371
+ (() => {
1372
+ const _metadata = typeof Symbol === "function" && Symbol.metadata ? Object.create(null) : void 0;
1373
+ _start_decorators = [deprecate('Calling start() is no longer necessary. It can be safely omitted.')];
1374
+ __esDecorate(_a, null, _start_decorators, { kind: "method", name: "start", static: false, private: false, access: { has: obj => "start" in obj, get: obj => obj.start }, metadata: _metadata }, null, _instanceExtraInitializers);
1375
+ if (_metadata) Object.defineProperty(_a, Symbol.metadata, { enumerable: true, configurable: true, writable: true, value: _metadata });
1376
+ })(),
1377
+ _a;
1378
+ })();
1379
+ exports.Server = Server;
1380
+ async function handleUnary(call, handler) {
1381
+ let stream;
1382
+ function respond(err, value, trailer, flags) {
1383
+ if (err) {
1384
+ call.sendStatus((0, server_call_1.serverErrorToStatus)(err, trailer));
1385
+ return;
1386
+ }
1387
+ call.sendMessage(value, () => {
1388
+ call.sendStatus({
1389
+ code: constants_1.Status.OK,
1390
+ details: 'OK',
1391
+ metadata: trailer !== null && trailer !== void 0 ? trailer : null,
1392
+ });
1393
+ });
1394
+ }
1395
+ let requestMetadata;
1396
+ let requestMessage = null;
1397
+ call.start({
1398
+ onReceiveMetadata(metadata) {
1399
+ requestMetadata = metadata;
1400
+ call.startRead();
1401
+ },
1402
+ onReceiveMessage(message) {
1403
+ if (requestMessage) {
1404
+ call.sendStatus({
1405
+ code: constants_1.Status.UNIMPLEMENTED,
1406
+ details: `Received a second request message for server streaming method ${handler.path}`,
1407
+ metadata: null,
1408
+ });
1409
+ return;
1410
+ }
1411
+ requestMessage = message;
1412
+ call.startRead();
1413
+ },
1414
+ onReceiveHalfClose() {
1415
+ if (!requestMessage) {
1416
+ call.sendStatus({
1417
+ code: constants_1.Status.UNIMPLEMENTED,
1418
+ details: `Received no request message for server streaming method ${handler.path}`,
1419
+ metadata: null,
1420
+ });
1421
+ return;
1422
+ }
1423
+ stream = new server_call_1.ServerWritableStreamImpl(handler.path, call, requestMetadata, requestMessage);
1424
+ try {
1425
+ handler.func(stream, respond);
1426
+ }
1427
+ catch (err) {
1428
+ call.sendStatus({
1429
+ code: constants_1.Status.UNKNOWN,
1430
+ details: `Server method handler threw error ${err.message}`,
1431
+ metadata: null,
1432
+ });
1433
+ }
1434
+ },
1435
+ onCancel() {
1436
+ if (stream) {
1437
+ stream.cancelled = true;
1438
+ stream.emit('cancelled', 'cancelled');
1439
+ }
1440
+ },
1441
+ });
1442
+ }
1443
+ function handleClientStreaming(call, handler) {
1444
+ let stream;
1445
+ function respond(err, value, trailer, flags) {
1446
+ if (err) {
1447
+ call.sendStatus((0, server_call_1.serverErrorToStatus)(err, trailer));
1448
+ return;
1449
+ }
1450
+ call.sendMessage(value, () => {
1451
+ call.sendStatus({
1452
+ code: constants_1.Status.OK,
1453
+ details: 'OK',
1454
+ metadata: trailer !== null && trailer !== void 0 ? trailer : null,
1455
+ });
1456
+ });
1457
+ }
1458
+ call.start({
1459
+ onReceiveMetadata(metadata) {
1460
+ stream = new server_call_1.ServerDuplexStreamImpl(handler.path, call, metadata);
1461
+ try {
1462
+ handler.func(stream, respond);
1463
+ }
1464
+ catch (err) {
1465
+ call.sendStatus({
1466
+ code: constants_1.Status.UNKNOWN,
1467
+ details: `Server method handler threw error ${err.message}`,
1468
+ metadata: null,
1469
+ });
1470
+ }
1471
+ },
1472
+ onReceiveMessage(message) {
1473
+ stream.push(message);
1474
+ },
1475
+ onReceiveHalfClose() {
1476
+ stream.push(null);
1477
+ },
1478
+ onCancel() {
1479
+ if (stream) {
1480
+ stream.cancelled = true;
1481
+ stream.emit('cancelled', 'cancelled');
1482
+ stream.destroy();
1483
+ }
1484
+ },
1485
+ });
1486
+ }
1487
+ function handleServerStreaming(call, handler) {
1488
+ let stream;
1489
+ let requestMetadata;
1490
+ let requestMessage = null;
1491
+ call.start({
1492
+ onReceiveMetadata(metadata) {
1493
+ requestMetadata = metadata;
1494
+ call.startRead();
1495
+ },
1496
+ onReceiveMessage(message) {
1497
+ if (requestMessage) {
1498
+ call.sendStatus({
1499
+ code: constants_1.Status.UNIMPLEMENTED,
1500
+ details: `Received a second request message for server streaming method ${handler.path}`,
1501
+ metadata: null,
1502
+ });
1503
+ return;
1504
+ }
1505
+ requestMessage = message;
1506
+ call.startRead();
1507
+ },
1508
+ onReceiveHalfClose() {
1509
+ if (!requestMessage) {
1510
+ call.sendStatus({
1511
+ code: constants_1.Status.UNIMPLEMENTED,
1512
+ details: `Received no request message for server streaming method ${handler.path}`,
1513
+ metadata: null,
1514
+ });
1515
+ return;
1516
+ }
1517
+ stream = new server_call_1.ServerWritableStreamImpl(handler.path, call, requestMetadata, requestMessage);
1518
+ try {
1519
+ handler.func(stream);
1520
+ }
1521
+ catch (err) {
1522
+ call.sendStatus({
1523
+ code: constants_1.Status.UNKNOWN,
1524
+ details: `Server method handler threw error ${err.message}`,
1525
+ metadata: null,
1526
+ });
1527
+ }
1528
+ },
1529
+ onCancel() {
1530
+ if (stream) {
1531
+ stream.cancelled = true;
1532
+ stream.emit('cancelled', 'cancelled');
1533
+ stream.destroy();
1534
+ }
1535
+ },
1536
+ });
1537
+ }
1538
+ function handleBidiStreaming(call, handler) {
1539
+ let stream;
1540
+ call.start({
1541
+ onReceiveMetadata(metadata) {
1542
+ stream = new server_call_1.ServerDuplexStreamImpl(handler.path, call, metadata);
1543
+ try {
1544
+ handler.func(stream);
1545
+ }
1546
+ catch (err) {
1547
+ call.sendStatus({
1548
+ code: constants_1.Status.UNKNOWN,
1549
+ details: `Server method handler threw error ${err.message}`,
1550
+ metadata: null,
1551
+ });
1552
+ }
1553
+ },
1554
+ onReceiveMessage(message) {
1555
+ stream.push(message);
1556
+ },
1557
+ onReceiveHalfClose() {
1558
+ stream.push(null);
1559
+ },
1560
+ onCancel() {
1561
+ if (stream) {
1562
+ stream.cancelled = true;
1563
+ stream.emit('cancelled', 'cancelled');
1564
+ stream.destroy();
1565
+ }
1566
+ },
1567
+ });
1568
+ }
1569
+ //# sourceMappingURL=server.js.map