node-red-contrib-tak-registration 0.15.0 → 0.16.1

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 (374) hide show
  1. package/node_modules/@types/node/README.md +2 -2
  2. package/node_modules/@types/node/assert.d.ts +8 -6
  3. package/node_modules/@types/node/async_hooks.d.ts +26 -6
  4. package/node_modules/@types/node/buffer.d.ts +7 -3
  5. package/node_modules/@types/node/child_process.d.ts +28 -124
  6. package/node_modules/@types/node/cluster.d.ts +15 -15
  7. package/node_modules/@types/node/console.d.ts +17 -17
  8. package/node_modules/@types/node/crypto.d.ts +95 -38
  9. package/node_modules/@types/node/dgram.d.ts +1 -1
  10. package/node_modules/@types/node/diagnostics_channel.d.ts +18 -13
  11. package/node_modules/@types/node/dns/promises.d.ts +36 -9
  12. package/node_modules/@types/node/dns.d.ts +89 -36
  13. package/node_modules/@types/node/domain.d.ts +1 -1
  14. package/node_modules/@types/node/events.d.ts +1 -2
  15. package/node_modules/@types/node/fs/promises.d.ts +67 -40
  16. package/node_modules/@types/node/fs.d.ts +88 -52
  17. package/node_modules/@types/node/globals.d.ts +148 -351
  18. package/node_modules/@types/node/globals.typedarray.d.ts +1 -0
  19. package/node_modules/@types/node/http.d.ts +73 -7
  20. package/node_modules/@types/node/http2.d.ts +88 -15
  21. package/node_modules/@types/node/https.d.ts +1 -1
  22. package/node_modules/@types/node/index.d.ts +13 -6
  23. package/node_modules/@types/node/inspector.d.ts +222 -13
  24. package/node_modules/@types/node/module.d.ts +153 -31
  25. package/node_modules/@types/node/net.d.ts +3 -6
  26. package/node_modules/@types/node/os.d.ts +8 -7
  27. package/node_modules/@types/node/package.json +14 -84
  28. package/node_modules/@types/node/path.d.ts +1 -1
  29. package/node_modules/@types/node/perf_hooks.d.ts +24 -10
  30. package/node_modules/@types/node/process.d.ts +21 -11
  31. package/node_modules/@types/node/punycode.d.ts +1 -1
  32. package/node_modules/@types/node/querystring.d.ts +1 -1
  33. package/node_modules/@types/node/readline/promises.d.ts +0 -1
  34. package/node_modules/@types/node/readline.d.ts +13 -13
  35. package/node_modules/@types/node/repl.d.ts +25 -17
  36. package/node_modules/@types/node/sea.d.ts +1 -1
  37. package/node_modules/@types/node/sqlite.d.ts +209 -3
  38. package/node_modules/@types/node/stream/web.d.ts +8 -0
  39. package/node_modules/@types/node/stream.d.ts +30 -24
  40. package/node_modules/@types/node/string_decoder.d.ts +1 -1
  41. package/node_modules/@types/node/test.d.ts +2029 -1975
  42. package/node_modules/@types/node/timers/promises.d.ts +1 -1
  43. package/node_modules/@types/node/timers.d.ts +1 -3
  44. package/node_modules/@types/node/tls.d.ts +2 -48
  45. package/node_modules/@types/node/trace_events.d.ts +6 -6
  46. package/node_modules/@types/node/ts5.6/compatibility/float16array.d.ts +71 -0
  47. package/node_modules/@types/node/ts5.6/globals.typedarray.d.ts +1 -0
  48. package/node_modules/@types/node/ts5.6/index.d.ts +15 -6
  49. package/node_modules/@types/node/ts5.7/compatibility/float16array.d.ts +72 -0
  50. package/node_modules/@types/node/ts5.7/index.d.ts +101 -0
  51. package/node_modules/@types/node/tty.d.ts +1 -1
  52. package/node_modules/@types/node/url.d.ts +73 -20
  53. package/node_modules/@types/node/util.d.ts +23 -298
  54. package/node_modules/@types/node/v8.d.ts +62 -32
  55. package/node_modules/@types/node/vm.d.ts +132 -24
  56. package/node_modules/@types/node/wasi.d.ts +22 -1
  57. package/node_modules/@types/node/web-globals/abortcontroller.d.ts +34 -0
  58. package/node_modules/@types/node/web-globals/domexception.d.ts +68 -0
  59. package/node_modules/@types/node/web-globals/events.d.ts +94 -0
  60. package/node_modules/@types/node/web-globals/fetch.d.ts +50 -0
  61. package/node_modules/@types/node/web-globals/navigator.d.ts +22 -0
  62. package/node_modules/@types/node/web-globals/storage.d.ts +24 -0
  63. package/node_modules/@types/node/worker_threads.d.ts +85 -26
  64. package/node_modules/@types/node/zlib.d.ts +13 -9
  65. package/node_modules/axios/CHANGELOG.md +99 -0
  66. package/node_modules/axios/README.md +105 -28
  67. package/node_modules/axios/dist/axios.js +395 -292
  68. package/node_modules/axios/dist/axios.js.map +1 -1
  69. package/node_modules/axios/dist/axios.min.js +2 -2
  70. package/node_modules/axios/dist/axios.min.js.map +1 -1
  71. package/node_modules/axios/dist/browser/axios.cjs +333 -219
  72. package/node_modules/axios/dist/browser/axios.cjs.map +1 -1
  73. package/node_modules/axios/dist/esm/axios.js +333 -219
  74. package/node_modules/axios/dist/esm/axios.js.map +1 -1
  75. package/node_modules/axios/dist/esm/axios.min.js +2 -2
  76. package/node_modules/axios/dist/esm/axios.min.js.map +1 -1
  77. package/node_modules/axios/dist/node/axios.cjs +424 -219
  78. package/node_modules/axios/dist/node/axios.cjs.map +1 -1
  79. package/node_modules/axios/index.d.cts +26 -8
  80. package/node_modules/axios/index.d.ts +14 -5
  81. package/node_modules/axios/lib/adapters/adapters.js +6 -4
  82. package/node_modules/axios/lib/adapters/fetch.js +221 -162
  83. package/node_modules/axios/lib/adapters/http.js +18 -0
  84. package/node_modules/axios/lib/adapters/xhr.js +11 -8
  85. package/node_modules/axios/lib/core/Axios.js +2 -4
  86. package/node_modules/axios/lib/core/AxiosError.js +10 -3
  87. package/node_modules/axios/lib/core/dispatchRequest.js +1 -1
  88. package/node_modules/axios/lib/core/mergeConfig.js +1 -1
  89. package/node_modules/axios/lib/defaults/index.js +1 -1
  90. package/node_modules/axios/lib/env/data.js +1 -1
  91. package/node_modules/axios/lib/helpers/buildURL.js +1 -3
  92. package/node_modules/axios/lib/helpers/estimateDataURLDecodedBytes.js +73 -0
  93. package/node_modules/axios/lib/helpers/resolveConfig.js +13 -9
  94. package/node_modules/axios/lib/helpers/throttle.js +1 -1
  95. package/node_modules/axios/lib/helpers/toFormData.js +4 -0
  96. package/node_modules/axios/lib/helpers/toURLEncodedForm.js +4 -3
  97. package/node_modules/axios/lib/utils.js +40 -2
  98. package/node_modules/axios/package.json +30 -15
  99. package/node_modules/bignumber.js/CHANGELOG.md +6 -1
  100. package/node_modules/bignumber.js/README.md +5 -4
  101. package/node_modules/bignumber.js/bignumber.js +2 -2
  102. package/node_modules/bignumber.js/bignumber.mjs +2 -2
  103. package/node_modules/bignumber.js/package.json +1 -1
  104. package/node_modules/fast-xml-parser/CHANGELOG.md +7 -0
  105. package/node_modules/fast-xml-parser/lib/fxp.cjs +1 -1
  106. package/node_modules/fast-xml-parser/lib/fxp.min.js +1 -1
  107. package/node_modules/fast-xml-parser/lib/fxp.min.js.map +1 -1
  108. package/node_modules/fast-xml-parser/lib/fxparser.min.js +1 -1
  109. package/node_modules/fast-xml-parser/lib/fxparser.min.js.map +1 -1
  110. package/node_modules/fast-xml-parser/package.json +1 -2
  111. package/node_modules/fast-xml-parser/src/cli/cli.js +4 -0
  112. package/node_modules/fast-xml-parser/src/fxp.d.ts +5 -5
  113. package/node_modules/fast-xml-parser/src/xmlparser/DocTypeReader.js +3 -3
  114. package/node_modules/follow-redirects/package.json +1 -1
  115. package/node_modules/form-data/CHANGELOG.md +601 -0
  116. package/node_modules/form-data/{Readme.md → README.md} +34 -37
  117. package/node_modules/form-data/lib/browser.js +3 -1
  118. package/node_modules/form-data/lib/form_data.js +126 -135
  119. package/node_modules/form-data/lib/populate.js +5 -5
  120. package/node_modules/form-data/package.json +24 -16
  121. package/node_modules/protobufjs/dist/light/protobuf.js +8 -7
  122. package/node_modules/protobufjs/dist/light/protobuf.js.map +1 -1
  123. package/node_modules/protobufjs/dist/light/protobuf.min.js +3 -3
  124. package/node_modules/protobufjs/dist/light/protobuf.min.js.map +1 -1
  125. package/node_modules/protobufjs/dist/minimal/protobuf.js +2 -2
  126. package/node_modules/protobufjs/dist/minimal/protobuf.min.js +2 -2
  127. package/node_modules/protobufjs/dist/protobuf.js +8 -7
  128. package/node_modules/protobufjs/dist/protobuf.js.map +1 -1
  129. package/node_modules/protobufjs/dist/protobuf.min.js +3 -3
  130. package/node_modules/protobufjs/dist/protobuf.min.js.map +1 -1
  131. package/node_modules/protobufjs/ext/descriptor/index.js +179 -69
  132. package/node_modules/protobufjs/google/protobuf/descriptor.json +660 -17
  133. package/node_modules/protobufjs/google/protobuf/descriptor.proto +255 -6
  134. package/node_modules/protobufjs/package.json +1 -1
  135. package/node_modules/protobufjs/src/namespace.js +3 -1
  136. package/node_modules/protobufjs/src/root.js +3 -4
  137. package/node_modules/undici-types/agent.d.ts +11 -7
  138. package/node_modules/undici-types/api.d.ts +24 -24
  139. package/node_modules/undici-types/balanced-pool.d.ts +11 -11
  140. package/node_modules/undici-types/cache-interceptor.d.ts +172 -0
  141. package/node_modules/undici-types/client-stats.d.ts +15 -0
  142. package/node_modules/undici-types/client.d.ts +18 -16
  143. package/node_modules/undici-types/cookies.d.ts +2 -0
  144. package/node_modules/undici-types/diagnostics-channel.d.ts +19 -10
  145. package/node_modules/undici-types/dispatcher.d.ts +119 -93
  146. package/node_modules/undici-types/env-http-proxy-agent.d.ts +4 -3
  147. package/node_modules/undici-types/errors.d.ts +69 -47
  148. package/node_modules/undici-types/eventsource.d.ts +3 -3
  149. package/node_modules/undici-types/fetch.d.ts +18 -16
  150. package/node_modules/undici-types/formdata.d.ts +7 -7
  151. package/node_modules/undici-types/global-dispatcher.d.ts +4 -4
  152. package/node_modules/undici-types/global-origin.d.ts +5 -5
  153. package/node_modules/undici-types/h2c-client.d.ts +75 -0
  154. package/node_modules/undici-types/handlers.d.ts +8 -8
  155. package/node_modules/undici-types/header.d.ts +157 -1
  156. package/node_modules/undici-types/index.d.ts +51 -47
  157. package/node_modules/undici-types/interceptors.d.ts +25 -8
  158. package/node_modules/undici-types/mock-agent.d.ts +36 -18
  159. package/node_modules/undici-types/mock-call-history.d.ts +111 -0
  160. package/node_modules/undici-types/mock-client.d.ts +6 -4
  161. package/node_modules/undici-types/mock-errors.d.ts +3 -3
  162. package/node_modules/undici-types/mock-interceptor.d.ts +21 -19
  163. package/node_modules/undici-types/mock-pool.d.ts +6 -4
  164. package/node_modules/undici-types/package.json +1 -1
  165. package/node_modules/undici-types/patch.d.ts +0 -4
  166. package/node_modules/undici-types/pool-stats.d.ts +8 -8
  167. package/node_modules/undici-types/pool.d.ts +14 -12
  168. package/node_modules/undici-types/proxy-agent.d.ts +5 -4
  169. package/node_modules/undici-types/readable.d.ts +18 -15
  170. package/node_modules/undici-types/retry-agent.d.ts +1 -1
  171. package/node_modules/undici-types/retry-handler.d.ts +19 -10
  172. package/node_modules/undici-types/util.d.ts +3 -3
  173. package/node_modules/undici-types/utility.d.ts +7 -0
  174. package/node_modules/undici-types/webidl.d.ts +50 -8
  175. package/node_modules/undici-types/websocket.d.ts +36 -2
  176. package/node_modules/uuid/README.md +8 -19
  177. package/node_modules/uuid/dist/{esm-browser/uuid-bin.js → uuid-bin.js} +1 -1
  178. package/node_modules/uuid/dist/{esm-browser/v4.js → v4.js} +7 -4
  179. package/node_modules/uuid/{dist/esm → dist-node}/md5.js +1 -1
  180. package/node_modules/uuid/dist-node/native.js +2 -0
  181. package/node_modules/uuid/{dist/esm → dist-node}/rng.js +1 -1
  182. package/node_modules/uuid/{dist/esm → dist-node}/sha1.js +1 -1
  183. package/node_modules/uuid/{dist/esm → dist-node}/uuid-bin.js +1 -1
  184. package/node_modules/uuid/{dist/esm → dist-node}/v4.js +7 -4
  185. package/node_modules/uuid/package.json +28 -41
  186. package/package.json +6 -6
  187. package/tak-registration.bak +557 -0
  188. package/tak-registration.js +14 -12
  189. package/node_modules/@types/node/compatibility/disposable.d.ts +0 -16
  190. package/node_modules/@types/node/compatibility/index.d.ts +0 -9
  191. package/node_modules/@types/node/compatibility/indexable.d.ts +0 -23
  192. package/node_modules/@types/node/dom-events.d.ts +0 -124
  193. package/node_modules/undici-types/file.d.ts +0 -39
  194. package/node_modules/undici-types/filereader.d.ts +0 -54
  195. package/node_modules/uuid/dist/cjs/index.d.ts +0 -15
  196. package/node_modules/uuid/dist/cjs/index.js +0 -31
  197. package/node_modules/uuid/dist/cjs/max.d.ts +0 -2
  198. package/node_modules/uuid/dist/cjs/max.js +0 -3
  199. package/node_modules/uuid/dist/cjs/md5.d.ts +0 -4
  200. package/node_modules/uuid/dist/cjs/md5.js +0 -13
  201. package/node_modules/uuid/dist/cjs/native.d.ts +0 -6
  202. package/node_modules/uuid/dist/cjs/native.js +0 -4
  203. package/node_modules/uuid/dist/cjs/nil.d.ts +0 -2
  204. package/node_modules/uuid/dist/cjs/nil.js +0 -3
  205. package/node_modules/uuid/dist/cjs/package.json +0 -1
  206. package/node_modules/uuid/dist/cjs/parse.d.ts +0 -2
  207. package/node_modules/uuid/dist/cjs/parse.js +0 -11
  208. package/node_modules/uuid/dist/cjs/regex.d.ts +0 -2
  209. package/node_modules/uuid/dist/cjs/regex.js +0 -3
  210. package/node_modules/uuid/dist/cjs/rng.d.ts +0 -1
  211. package/node_modules/uuid/dist/cjs/rng.js +0 -13
  212. package/node_modules/uuid/dist/cjs/sha1.d.ts +0 -4
  213. package/node_modules/uuid/dist/cjs/sha1.js +0 -13
  214. package/node_modules/uuid/dist/cjs/stringify.d.ts +0 -3
  215. package/node_modules/uuid/dist/cjs/stringify.js +0 -39
  216. package/node_modules/uuid/dist/cjs/types.d.ts +0 -21
  217. package/node_modules/uuid/dist/cjs/types.js +0 -2
  218. package/node_modules/uuid/dist/cjs/uuid-bin.d.ts +0 -1
  219. package/node_modules/uuid/dist/cjs/uuid-bin.js +0 -72
  220. package/node_modules/uuid/dist/cjs/v1.d.ts +0 -11
  221. package/node_modules/uuid/dist/cjs/v1.js +0 -87
  222. package/node_modules/uuid/dist/cjs/v1ToV6.d.ts +0 -2
  223. package/node_modules/uuid/dist/cjs/v1ToV6.js +0 -13
  224. package/node_modules/uuid/dist/cjs/v3.d.ts +0 -9
  225. package/node_modules/uuid/dist/cjs/v3.js +0 -14
  226. package/node_modules/uuid/dist/cjs/v35.d.ts +0 -7
  227. package/node_modules/uuid/dist/cjs/v35.js +0 -41
  228. package/node_modules/uuid/dist/cjs/v4.d.ts +0 -4
  229. package/node_modules/uuid/dist/cjs/v4.js +0 -29
  230. package/node_modules/uuid/dist/cjs/v5.d.ts +0 -9
  231. package/node_modules/uuid/dist/cjs/v5.js +0 -14
  232. package/node_modules/uuid/dist/cjs/v6.d.ts +0 -4
  233. package/node_modules/uuid/dist/cjs/v6.js +0 -19
  234. package/node_modules/uuid/dist/cjs/v6ToV1.d.ts +0 -2
  235. package/node_modules/uuid/dist/cjs/v6ToV1.js +0 -13
  236. package/node_modules/uuid/dist/cjs/v7.d.ts +0 -9
  237. package/node_modules/uuid/dist/cjs/v7.js +0 -69
  238. package/node_modules/uuid/dist/cjs/validate.d.ts +0 -2
  239. package/node_modules/uuid/dist/cjs/validate.js +0 -7
  240. package/node_modules/uuid/dist/cjs/version.d.ts +0 -2
  241. package/node_modules/uuid/dist/cjs/version.js +0 -10
  242. package/node_modules/uuid/dist/cjs-browser/index.js +0 -31
  243. package/node_modules/uuid/dist/cjs-browser/max.js +0 -3
  244. package/node_modules/uuid/dist/cjs-browser/md5.js +0 -137
  245. package/node_modules/uuid/dist/cjs-browser/native.js +0 -4
  246. package/node_modules/uuid/dist/cjs-browser/nil.js +0 -3
  247. package/node_modules/uuid/dist/cjs-browser/package.json +0 -1
  248. package/node_modules/uuid/dist/cjs-browser/parse.js +0 -11
  249. package/node_modules/uuid/dist/cjs-browser/regex.js +0 -3
  250. package/node_modules/uuid/dist/cjs-browser/rng.js +0 -14
  251. package/node_modules/uuid/dist/cjs-browser/sha1.js +0 -72
  252. package/node_modules/uuid/dist/cjs-browser/stringify.js +0 -39
  253. package/node_modules/uuid/dist/cjs-browser/types.js +0 -2
  254. package/node_modules/uuid/dist/cjs-browser/uuid-bin.js +0 -72
  255. package/node_modules/uuid/dist/cjs-browser/v1.js +0 -87
  256. package/node_modules/uuid/dist/cjs-browser/v1ToV6.js +0 -13
  257. package/node_modules/uuid/dist/cjs-browser/v3.js +0 -14
  258. package/node_modules/uuid/dist/cjs-browser/v35.js +0 -41
  259. package/node_modules/uuid/dist/cjs-browser/v4.js +0 -29
  260. package/node_modules/uuid/dist/cjs-browser/v5.js +0 -14
  261. package/node_modules/uuid/dist/cjs-browser/v6.js +0 -19
  262. package/node_modules/uuid/dist/cjs-browser/v6ToV1.js +0 -13
  263. package/node_modules/uuid/dist/cjs-browser/v7.js +0 -69
  264. package/node_modules/uuid/dist/cjs-browser/validate.js +0 -7
  265. package/node_modules/uuid/dist/cjs-browser/version.js +0 -10
  266. package/node_modules/uuid/dist/esm/index.d.ts +0 -15
  267. package/node_modules/uuid/dist/esm/max.d.ts +0 -2
  268. package/node_modules/uuid/dist/esm/md5.d.ts +0 -4
  269. package/node_modules/uuid/dist/esm/native.d.ts +0 -6
  270. package/node_modules/uuid/dist/esm/native.js +0 -2
  271. package/node_modules/uuid/dist/esm/nil.d.ts +0 -2
  272. package/node_modules/uuid/dist/esm/parse.d.ts +0 -2
  273. package/node_modules/uuid/dist/esm/regex.d.ts +0 -2
  274. package/node_modules/uuid/dist/esm/rng.d.ts +0 -1
  275. package/node_modules/uuid/dist/esm/sha1.d.ts +0 -4
  276. package/node_modules/uuid/dist/esm/stringify.d.ts +0 -3
  277. package/node_modules/uuid/dist/esm/types.d.ts +0 -21
  278. package/node_modules/uuid/dist/esm/uuid-bin.d.ts +0 -1
  279. package/node_modules/uuid/dist/esm/v1.d.ts +0 -11
  280. package/node_modules/uuid/dist/esm/v1ToV6.d.ts +0 -2
  281. package/node_modules/uuid/dist/esm/v3.d.ts +0 -9
  282. package/node_modules/uuid/dist/esm/v35.d.ts +0 -7
  283. package/node_modules/uuid/dist/esm/v4.d.ts +0 -4
  284. package/node_modules/uuid/dist/esm/v5.d.ts +0 -9
  285. package/node_modules/uuid/dist/esm/v6.d.ts +0 -4
  286. package/node_modules/uuid/dist/esm/v6ToV1.d.ts +0 -2
  287. package/node_modules/uuid/dist/esm/v7.d.ts +0 -9
  288. package/node_modules/uuid/dist/esm/validate.d.ts +0 -2
  289. package/node_modules/uuid/dist/esm/version.d.ts +0 -2
  290. package/node_modules/uuid/dist/esm-browser/index.d.ts +0 -15
  291. package/node_modules/uuid/dist/esm-browser/max.d.ts +0 -2
  292. package/node_modules/uuid/dist/esm-browser/md5.d.ts +0 -2
  293. package/node_modules/uuid/dist/esm-browser/native.d.ts +0 -4
  294. package/node_modules/uuid/dist/esm-browser/nil.d.ts +0 -2
  295. package/node_modules/uuid/dist/esm-browser/parse.d.ts +0 -2
  296. package/node_modules/uuid/dist/esm-browser/regex.d.ts +0 -2
  297. package/node_modules/uuid/dist/esm-browser/rng.d.ts +0 -1
  298. package/node_modules/uuid/dist/esm-browser/sha1.d.ts +0 -2
  299. package/node_modules/uuid/dist/esm-browser/stringify.d.ts +0 -3
  300. package/node_modules/uuid/dist/esm-browser/types.d.ts +0 -21
  301. package/node_modules/uuid/dist/esm-browser/uuid-bin.d.ts +0 -1
  302. package/node_modules/uuid/dist/esm-browser/v1.d.ts +0 -11
  303. package/node_modules/uuid/dist/esm-browser/v1ToV6.d.ts +0 -2
  304. package/node_modules/uuid/dist/esm-browser/v3.d.ts +0 -9
  305. package/node_modules/uuid/dist/esm-browser/v35.d.ts +0 -7
  306. package/node_modules/uuid/dist/esm-browser/v4.d.ts +0 -4
  307. package/node_modules/uuid/dist/esm-browser/v5.d.ts +0 -9
  308. package/node_modules/uuid/dist/esm-browser/v6.d.ts +0 -4
  309. package/node_modules/uuid/dist/esm-browser/v6ToV1.d.ts +0 -2
  310. package/node_modules/uuid/dist/esm-browser/v7.d.ts +0 -9
  311. package/node_modules/uuid/dist/esm-browser/validate.d.ts +0 -2
  312. package/node_modules/uuid/dist/esm-browser/version.d.ts +0 -2
  313. /package/node_modules/uuid/dist/{cjs-browser/index.d.ts → index.d.ts} +0 -0
  314. /package/node_modules/uuid/dist/{esm/index.js → index.js} +0 -0
  315. /package/node_modules/uuid/dist/{cjs-browser/max.d.ts → max.d.ts} +0 -0
  316. /package/node_modules/uuid/dist/{esm/max.js → max.js} +0 -0
  317. /package/node_modules/uuid/dist/{cjs-browser/md5.d.ts → md5.d.ts} +0 -0
  318. /package/node_modules/uuid/dist/{esm-browser/md5.js → md5.js} +0 -0
  319. /package/node_modules/uuid/dist/{cjs-browser/native.d.ts → native.d.ts} +0 -0
  320. /package/node_modules/uuid/dist/{esm-browser/native.js → native.js} +0 -0
  321. /package/node_modules/uuid/dist/{cjs-browser/nil.d.ts → nil.d.ts} +0 -0
  322. /package/node_modules/uuid/dist/{esm/nil.js → nil.js} +0 -0
  323. /package/node_modules/uuid/dist/{cjs-browser/parse.d.ts → parse.d.ts} +0 -0
  324. /package/node_modules/uuid/dist/{esm/parse.js → parse.js} +0 -0
  325. /package/node_modules/uuid/dist/{cjs-browser/regex.d.ts → regex.d.ts} +0 -0
  326. /package/node_modules/uuid/dist/{esm/regex.js → regex.js} +0 -0
  327. /package/node_modules/uuid/dist/{cjs-browser/rng.d.ts → rng.d.ts} +0 -0
  328. /package/node_modules/uuid/dist/{esm-browser/rng.js → rng.js} +0 -0
  329. /package/node_modules/uuid/dist/{cjs-browser/sha1.d.ts → sha1.d.ts} +0 -0
  330. /package/node_modules/uuid/dist/{esm-browser/sha1.js → sha1.js} +0 -0
  331. /package/node_modules/uuid/dist/{cjs-browser/stringify.d.ts → stringify.d.ts} +0 -0
  332. /package/node_modules/uuid/dist/{esm/stringify.js → stringify.js} +0 -0
  333. /package/node_modules/uuid/dist/{cjs-browser/types.d.ts → types.d.ts} +0 -0
  334. /package/node_modules/uuid/dist/{esm/types.js → types.js} +0 -0
  335. /package/node_modules/uuid/dist/{cjs-browser/uuid-bin.d.ts → uuid-bin.d.ts} +0 -0
  336. /package/node_modules/uuid/dist/{cjs-browser/v1.d.ts → v1.d.ts} +0 -0
  337. /package/node_modules/uuid/dist/{esm/v1.js → v1.js} +0 -0
  338. /package/node_modules/uuid/dist/{cjs-browser/v1ToV6.d.ts → v1ToV6.d.ts} +0 -0
  339. /package/node_modules/uuid/dist/{esm/v1ToV6.js → v1ToV6.js} +0 -0
  340. /package/node_modules/uuid/dist/{cjs-browser/v3.d.ts → v3.d.ts} +0 -0
  341. /package/node_modules/uuid/dist/{esm/v3.js → v3.js} +0 -0
  342. /package/node_modules/uuid/dist/{cjs-browser/v35.d.ts → v35.d.ts} +0 -0
  343. /package/node_modules/uuid/dist/{esm/v35.js → v35.js} +0 -0
  344. /package/node_modules/uuid/dist/{cjs-browser/v4.d.ts → v4.d.ts} +0 -0
  345. /package/node_modules/uuid/dist/{cjs-browser/v5.d.ts → v5.d.ts} +0 -0
  346. /package/node_modules/uuid/dist/{esm/v5.js → v5.js} +0 -0
  347. /package/node_modules/uuid/dist/{cjs-browser/v6.d.ts → v6.d.ts} +0 -0
  348. /package/node_modules/uuid/dist/{esm/v6.js → v6.js} +0 -0
  349. /package/node_modules/uuid/dist/{cjs-browser/v6ToV1.d.ts → v6ToV1.d.ts} +0 -0
  350. /package/node_modules/uuid/dist/{esm/v6ToV1.js → v6ToV1.js} +0 -0
  351. /package/node_modules/uuid/dist/{cjs-browser/v7.d.ts → v7.d.ts} +0 -0
  352. /package/node_modules/uuid/dist/{esm/v7.js → v7.js} +0 -0
  353. /package/node_modules/uuid/dist/{cjs-browser/validate.d.ts → validate.d.ts} +0 -0
  354. /package/node_modules/uuid/dist/{esm/validate.js → validate.js} +0 -0
  355. /package/node_modules/uuid/dist/{cjs-browser/version.d.ts → version.d.ts} +0 -0
  356. /package/node_modules/uuid/dist/{esm/version.js → version.js} +0 -0
  357. /package/node_modules/uuid/{dist/esm → dist-node}/bin/uuid +0 -0
  358. /package/node_modules/uuid/{dist/esm-browser → dist-node}/index.js +0 -0
  359. /package/node_modules/uuid/{dist/esm-browser → dist-node}/max.js +0 -0
  360. /package/node_modules/uuid/{dist/esm-browser → dist-node}/nil.js +0 -0
  361. /package/node_modules/uuid/{dist/esm-browser → dist-node}/parse.js +0 -0
  362. /package/node_modules/uuid/{dist/esm-browser → dist-node}/regex.js +0 -0
  363. /package/node_modules/uuid/{dist/esm-browser → dist-node}/stringify.js +0 -0
  364. /package/node_modules/uuid/{dist/esm-browser → dist-node}/types.js +0 -0
  365. /package/node_modules/uuid/{dist/esm-browser → dist-node}/v1.js +0 -0
  366. /package/node_modules/uuid/{dist/esm-browser → dist-node}/v1ToV6.js +0 -0
  367. /package/node_modules/uuid/{dist/esm-browser → dist-node}/v3.js +0 -0
  368. /package/node_modules/uuid/{dist/esm-browser → dist-node}/v35.js +0 -0
  369. /package/node_modules/uuid/{dist/esm-browser → dist-node}/v5.js +0 -0
  370. /package/node_modules/uuid/{dist/esm-browser → dist-node}/v6.js +0 -0
  371. /package/node_modules/uuid/{dist/esm-browser → dist-node}/v6ToV1.js +0 -0
  372. /package/node_modules/uuid/{dist/esm-browser → dist-node}/v7.js +0 -0
  373. /package/node_modules/uuid/{dist/esm-browser → dist-node}/validate.js +0 -0
  374. /package/node_modules/uuid/{dist/esm-browser → dist-node}/version.js +0 -0
@@ -35,6 +35,25 @@ var Namespace = $protobuf.Namespace,
35
35
  * @property {IFileOptions} [options] Options
36
36
  * @property {*} [sourceCodeInfo] Not supported
37
37
  * @property {string} [syntax="proto2"] Syntax
38
+ * @property {IEdition} [edition] Edition
39
+ */
40
+
41
+ /**
42
+ * Values of the Edition enum.
43
+ * @typedef IEdition
44
+ * @type {number}
45
+ * @property {number} EDITION_UNKNOWN=0
46
+ * @property {number} EDITION_LEGACY=900
47
+ * @property {number} EDITION_PROTO2=998
48
+ * @property {number} EDITION_PROTO3=999
49
+ * @property {number} EDITION_2023=1000
50
+ * @property {number} EDITION_2024=1001
51
+ * @property {number} EDITION_1_TEST_ONLY=1
52
+ * @property {number} EDITION_2_TEST_ONLY=2
53
+ * @property {number} EDITION_99997_TEST_ONLY=99997
54
+ * @property {number} EDITION_99998_TEST_ONLY=99998
55
+ * @property {number} EDITION_99998_TEST_ONLY=99999
56
+ * @property {number} EDITION_MAX=2147483647
38
57
  */
39
58
 
40
59
  /**
@@ -85,20 +104,21 @@ Root.fromDescriptor = function fromDescriptor(descriptor) {
85
104
  filePackage = root;
86
105
  if ((fileDescriptor = descriptor.file[j])["package"] && fileDescriptor["package"].length)
87
106
  filePackage = root.define(fileDescriptor["package"]);
107
+ var edition = editionFromDescriptor(fileDescriptor);
88
108
  if (fileDescriptor.name && fileDescriptor.name.length)
89
109
  root.files.push(filePackage.filename = fileDescriptor.name);
90
110
  if (fileDescriptor.messageType)
91
111
  for (i = 0; i < fileDescriptor.messageType.length; ++i)
92
- filePackage.add(Type.fromDescriptor(fileDescriptor.messageType[i], fileDescriptor.syntax));
112
+ filePackage.add(Type.fromDescriptor(fileDescriptor.messageType[i], edition));
93
113
  if (fileDescriptor.enumType)
94
114
  for (i = 0; i < fileDescriptor.enumType.length; ++i)
95
- filePackage.add(Enum.fromDescriptor(fileDescriptor.enumType[i]));
115
+ filePackage.add(Enum.fromDescriptor(fileDescriptor.enumType[i], edition));
96
116
  if (fileDescriptor.extension)
97
117
  for (i = 0; i < fileDescriptor.extension.length; ++i)
98
- filePackage.add(Field.fromDescriptor(fileDescriptor.extension[i]));
118
+ filePackage.add(Field.fromDescriptor(fileDescriptor.extension[i], edition));
99
119
  if (fileDescriptor.service)
100
120
  for (i = 0; i < fileDescriptor.service.length; ++i)
101
- filePackage.add(Service.fromDescriptor(fileDescriptor.service[i]));
121
+ filePackage.add(Service.fromDescriptor(fileDescriptor.service[i], edition));
102
122
  var opts = fromDescriptorOptions(fileDescriptor.options, exports.FileOptions);
103
123
  if (opts) {
104
124
  var ks = Object.keys(opts);
@@ -108,42 +128,41 @@ Root.fromDescriptor = function fromDescriptor(descriptor) {
108
128
  }
109
129
  }
110
130
 
111
- return root;
131
+ return root.resolveAll();
112
132
  };
113
133
 
114
134
  /**
115
135
  * Converts a root to a descriptor set.
116
136
  * @returns {Message<IFileDescriptorSet>} Descriptor
117
- * @param {string} [syntax="proto2"] Syntax
137
+ * @param {string} [edition="proto2"] The syntax or edition to use
118
138
  */
119
- Root.prototype.toDescriptor = function toDescriptor(syntax) {
139
+ Root.prototype.toDescriptor = function toDescriptor(edition) {
120
140
  var set = exports.FileDescriptorSet.create();
121
- Root_toDescriptorRecursive(this, set.file, syntax);
141
+ Root_toDescriptorRecursive(this, set.file, edition);
122
142
  return set;
123
143
  };
124
144
 
125
145
  // Traverses a namespace and assembles the descriptor set
126
- function Root_toDescriptorRecursive(ns, files, syntax) {
146
+ function Root_toDescriptorRecursive(ns, files, edition) {
127
147
 
128
148
  // Create a new file
129
149
  var file = exports.FileDescriptorProto.create({ name: ns.filename || (ns.fullName.substring(1).replace(/\./g, "_") || "root") + ".proto" });
130
- if (syntax)
131
- file.syntax = syntax;
150
+ editionToDescriptor(edition, file);
132
151
  if (!(ns instanceof Root))
133
152
  file["package"] = ns.fullName.substring(1);
134
153
 
135
154
  // Add nested types
136
155
  for (var i = 0, nested; i < ns.nestedArray.length; ++i)
137
156
  if ((nested = ns._nestedArray[i]) instanceof Type)
138
- file.messageType.push(nested.toDescriptor(syntax));
157
+ file.messageType.push(nested.toDescriptor(edition));
139
158
  else if (nested instanceof Enum)
140
159
  file.enumType.push(nested.toDescriptor());
141
160
  else if (nested instanceof Field)
142
- file.extension.push(nested.toDescriptor(syntax));
161
+ file.extension.push(nested.toDescriptor(edition));
143
162
  else if (nested instanceof Service)
144
163
  file.service.push(nested.toDescriptor());
145
164
  else if (nested instanceof /* plain */ Namespace)
146
- Root_toDescriptorRecursive(nested, files, syntax); // requires new file
165
+ Root_toDescriptorRecursive(nested, files, edition); // requires new file
147
166
 
148
167
  // Keep package-level options
149
168
  file.options = toDescriptorOptions(ns.options, exports.FileOptions);
@@ -194,12 +213,15 @@ var unnamedMessageIndex = 0;
194
213
 
195
214
  /**
196
215
  * Creates a type from a descriptor.
216
+ *
217
+ * Warning: this is not safe to use with editions protos, since it discards relevant file context.
218
+ *
197
219
  * @param {IDescriptorProto|Reader|Uint8Array} descriptor Descriptor
198
- * @param {string} [syntax="proto2"] Syntax
220
+ * @param {string} [edition="proto2"] The syntax or edition to use
221
+ * @param {boolean} [nested=false] Whether or not this is a nested object
199
222
  * @returns {Type} Type instance
200
223
  */
201
- Type.fromDescriptor = function fromDescriptor(descriptor, syntax) {
202
-
224
+ Type.fromDescriptor = function fromDescriptor(descriptor, edition, nested) {
203
225
  // Decode the descriptor message if specified as a buffer:
204
226
  if (typeof descriptor.length === "number")
205
227
  descriptor = exports.DescriptorProto.decode(descriptor);
@@ -208,28 +230,31 @@ Type.fromDescriptor = function fromDescriptor(descriptor, syntax) {
208
230
  var type = new Type(descriptor.name.length ? descriptor.name : "Type" + unnamedMessageIndex++, fromDescriptorOptions(descriptor.options, exports.MessageOptions)),
209
231
  i;
210
232
 
233
+ if (!nested)
234
+ type._edition = edition;
235
+
211
236
  /* Oneofs */ if (descriptor.oneofDecl)
212
237
  for (i = 0; i < descriptor.oneofDecl.length; ++i)
213
238
  type.add(OneOf.fromDescriptor(descriptor.oneofDecl[i]));
214
239
  /* Fields */ if (descriptor.field)
215
240
  for (i = 0; i < descriptor.field.length; ++i) {
216
- var field = Field.fromDescriptor(descriptor.field[i], syntax);
241
+ var field = Field.fromDescriptor(descriptor.field[i], edition, true);
217
242
  type.add(field);
218
243
  if (descriptor.field[i].hasOwnProperty("oneofIndex")) // eslint-disable-line no-prototype-builtins
219
244
  type.oneofsArray[descriptor.field[i].oneofIndex].add(field);
220
245
  }
221
246
  /* Extension fields */ if (descriptor.extension)
222
247
  for (i = 0; i < descriptor.extension.length; ++i)
223
- type.add(Field.fromDescriptor(descriptor.extension[i], syntax));
248
+ type.add(Field.fromDescriptor(descriptor.extension[i], edition, true));
224
249
  /* Nested types */ if (descriptor.nestedType)
225
250
  for (i = 0; i < descriptor.nestedType.length; ++i) {
226
- type.add(Type.fromDescriptor(descriptor.nestedType[i], syntax));
251
+ type.add(Type.fromDescriptor(descriptor.nestedType[i], edition, true));
227
252
  if (descriptor.nestedType[i].options && descriptor.nestedType[i].options.mapEntry)
228
253
  type.setOption("map_entry", true);
229
254
  }
230
255
  /* Nested enums */ if (descriptor.enumType)
231
256
  for (i = 0; i < descriptor.enumType.length; ++i)
232
- type.add(Enum.fromDescriptor(descriptor.enumType[i]));
257
+ type.add(Enum.fromDescriptor(descriptor.enumType[i], edition, true));
233
258
  /* Extension ranges */ if (descriptor.extensionRange && descriptor.extensionRange.length) {
234
259
  type.extensions = [];
235
260
  for (i = 0; i < descriptor.extensionRange.length; ++i)
@@ -251,18 +276,18 @@ Type.fromDescriptor = function fromDescriptor(descriptor, syntax) {
251
276
  /**
252
277
  * Converts a type to a descriptor.
253
278
  * @returns {Message<IDescriptorProto>} Descriptor
254
- * @param {string} [syntax="proto2"] Syntax
279
+ * @param {string} [edition="proto2"] The syntax or edition to use
255
280
  */
256
- Type.prototype.toDescriptor = function toDescriptor(syntax) {
281
+ Type.prototype.toDescriptor = function toDescriptor(edition) {
257
282
  var descriptor = exports.DescriptorProto.create({ name: this.name }),
258
283
  i;
259
284
 
260
285
  /* Fields */ for (i = 0; i < this.fieldsArray.length; ++i) {
261
286
  var fieldDescriptor;
262
- descriptor.field.push(fieldDescriptor = this._fieldsArray[i].toDescriptor(syntax));
287
+ descriptor.field.push(fieldDescriptor = this._fieldsArray[i].toDescriptor(edition));
263
288
  if (this._fieldsArray[i] instanceof MapField) { // map fields are repeated FieldNameEntry
264
- var keyType = toDescriptorType(this._fieldsArray[i].keyType, this._fieldsArray[i].resolvedKeyType),
265
- valueType = toDescriptorType(this._fieldsArray[i].type, this._fieldsArray[i].resolvedType),
289
+ var keyType = toDescriptorType(this._fieldsArray[i].keyType, this._fieldsArray[i].resolvedKeyType, false),
290
+ valueType = toDescriptorType(this._fieldsArray[i].type, this._fieldsArray[i].resolvedType, false),
266
291
  valueTypeName = valueType === /* type */ 11 || valueType === /* enum */ 14
267
292
  ? this._fieldsArray[i].resolvedType && shortname(this.parent, this._fieldsArray[i].resolvedType) || this._fieldsArray[i].type
268
293
  : undefined;
@@ -280,9 +305,9 @@ Type.prototype.toDescriptor = function toDescriptor(syntax) {
280
305
  descriptor.oneofDecl.push(this._oneofsArray[i].toDescriptor());
281
306
  /* Nested... */ for (i = 0; i < this.nestedArray.length; ++i) {
282
307
  /* Extension fields */ if (this._nestedArray[i] instanceof Field)
283
- descriptor.field.push(this._nestedArray[i].toDescriptor(syntax));
308
+ descriptor.field.push(this._nestedArray[i].toDescriptor(edition));
284
309
  /* Types */ else if (this._nestedArray[i] instanceof Type)
285
- descriptor.nestedType.push(this._nestedArray[i].toDescriptor(syntax));
310
+ descriptor.nestedType.push(this._nestedArray[i].toDescriptor(edition));
286
311
  /* Enums */ else if (this._nestedArray[i] instanceof Enum)
287
312
  descriptor.enumType.push(this._nestedArray[i].toDescriptor());
288
313
  // plain nested namespaces become packages instead in Root#toDescriptor
@@ -373,11 +398,15 @@ var numberRe = /^(?![eE])[0-9]*(?:\.[0-9]*)?(?:[eE][+-]?[0-9]+)?$/;
373
398
 
374
399
  /**
375
400
  * Creates a field from a descriptor.
401
+ *
402
+ * Warning: this is not safe to use with editions protos, since it discards relevant file context.
403
+ *
376
404
  * @param {IFieldDescriptorProto|Reader|Uint8Array} descriptor Descriptor
377
- * @param {string} [syntax="proto2"] Syntax
405
+ * @param {string} [edition="proto2"] The syntax or edition to use
406
+ * @param {boolean} [nested=false] Whether or not this is a top-level object
378
407
  * @returns {Field} Field instance
379
408
  */
380
- Field.fromDescriptor = function fromDescriptor(descriptor, syntax) {
409
+ Field.fromDescriptor = function fromDescriptor(descriptor, edition, nested) {
381
410
 
382
411
  // Decode the descriptor message if specified as a buffer:
383
412
  if (typeof descriptor.length === "number")
@@ -415,7 +444,12 @@ Field.fromDescriptor = function fromDescriptor(descriptor, syntax) {
415
444
  extendee
416
445
  );
417
446
 
447
+ if (!nested)
448
+ field._edition = edition;
449
+
418
450
  field.options = fromDescriptorOptions(descriptor.options, exports.FieldOptions);
451
+ if (descriptor.proto3_optional)
452
+ field.options.proto3_optional = true;
419
453
 
420
454
  if (descriptor.defaultValue && descriptor.defaultValue.length) {
421
455
  var defaultValue = descriptor.defaultValue;
@@ -436,11 +470,11 @@ Field.fromDescriptor = function fromDescriptor(descriptor, syntax) {
436
470
  }
437
471
 
438
472
  if (packableDescriptorType(descriptor.type)) {
439
- if (syntax === "proto3") { // defaults to packed=true (internal preset is packed=true)
473
+ if (edition === "proto3") { // defaults to packed=true (internal preset is packed=true)
440
474
  if (descriptor.options && !descriptor.options.packed)
441
475
  field.setOption("packed", false);
442
- } else if (!(descriptor.options && descriptor.options.packed)) // defaults to packed=false
443
- field.setOption("packed", false);
476
+ } else if ((!edition || edition === "proto2") && descriptor.options && descriptor.options.packed) // defaults to packed=false
477
+ field.setOption("packed", true);
444
478
  }
445
479
 
446
480
  return field;
@@ -449,9 +483,9 @@ Field.fromDescriptor = function fromDescriptor(descriptor, syntax) {
449
483
  /**
450
484
  * Converts a field to a descriptor.
451
485
  * @returns {Message<IFieldDescriptorProto>} Descriptor
452
- * @param {string} [syntax="proto2"] Syntax
486
+ * @param {string} [edition="proto2"] The syntax or edition to use
453
487
  */
454
- Field.prototype.toDescriptor = function toDescriptor(syntax) {
488
+ Field.prototype.toDescriptor = function toDescriptor(edition) {
455
489
  var descriptor = exports.FieldDescriptorProto.create({ name: this.name, number: this.id });
456
490
 
457
491
  if (this.map) {
@@ -463,7 +497,7 @@ Field.prototype.toDescriptor = function toDescriptor(syntax) {
463
497
  } else {
464
498
 
465
499
  // Rewire field type
466
- switch (descriptor.type = toDescriptorType(this.type, this.resolve().resolvedType)) {
500
+ switch (descriptor.type = toDescriptorType(this.type, this.resolve().resolvedType, this.delimited)) {
467
501
  case 10: // group
468
502
  case 11: // type
469
503
  case 14: // enum
@@ -472,12 +506,13 @@ Field.prototype.toDescriptor = function toDescriptor(syntax) {
472
506
  }
473
507
 
474
508
  // Rewire field rule
475
- switch (this.rule) {
476
- case "repeated": descriptor.label = 3; break;
477
- case "required": descriptor.label = 2; break;
478
- default: descriptor.label = 1; break;
509
+ if (this.rule === "repeated") {
510
+ descriptor.label = 3;
511
+ } else if (this.required && edition === "proto2") {
512
+ descriptor.label = 2;
513
+ } else {
514
+ descriptor.label = 1;
479
515
  }
480
-
481
516
  }
482
517
 
483
518
  // Handle extension field
@@ -492,12 +527,14 @@ Field.prototype.toDescriptor = function toDescriptor(syntax) {
492
527
  descriptor.options = toDescriptorOptions(this.options, exports.FieldOptions);
493
528
  if (this.options["default"] != null)
494
529
  descriptor.defaultValue = String(this.options["default"]);
530
+ if (this.options.proto3_optional)
531
+ descriptor.proto3_optional = true;
495
532
  }
496
533
 
497
- if (syntax === "proto3") { // defaults to packed=true
534
+ if (edition === "proto3") { // defaults to packed=true
498
535
  if (!this.packed)
499
536
  (descriptor.options || (descriptor.options = exports.FieldOptions.create())).packed = false;
500
- } else if (this.packed) // defaults to packed=false
537
+ } else if ((!edition || edition === "proto2") && this.packed) // defaults to packed=false
501
538
  (descriptor.options || (descriptor.options = exports.FieldOptions.create())).packed = true;
502
539
 
503
540
  return descriptor;
@@ -532,10 +569,15 @@ var unnamedEnumIndex = 0;
532
569
 
533
570
  /**
534
571
  * Creates an enum from a descriptor.
572
+ *
573
+ * Warning: this is not safe to use with editions protos, since it discards relevant file context.
574
+ *
535
575
  * @param {IEnumDescriptorProto|Reader|Uint8Array} descriptor Descriptor
576
+ * @param {string} [edition="proto2"] The syntax or edition to use
577
+ * @param {boolean} [nested=false] Whether or not this is a top-level object
536
578
  * @returns {Enum} Enum instance
537
579
  */
538
- Enum.fromDescriptor = function fromDescriptor(descriptor) {
580
+ Enum.fromDescriptor = function fromDescriptor(descriptor, edition, nested) {
539
581
 
540
582
  // Decode the descriptor message if specified as a buffer:
541
583
  if (typeof descriptor.length === "number")
@@ -550,11 +592,16 @@ Enum.fromDescriptor = function fromDescriptor(descriptor) {
550
592
  values[name && name.length ? name : "NAME" + value] = value;
551
593
  }
552
594
 
553
- return new Enum(
595
+ var enm = new Enum(
554
596
  descriptor.name && descriptor.name.length ? descriptor.name : "Enum" + unnamedEnumIndex++,
555
597
  values,
556
598
  fromDescriptorOptions(descriptor.options, exports.EnumOptions)
557
599
  );
600
+
601
+ if (!nested)
602
+ enm._edition = edition;
603
+
604
+ return enm;
558
605
  };
559
606
 
560
607
  /**
@@ -588,6 +635,9 @@ var unnamedOneofIndex = 0;
588
635
 
589
636
  /**
590
637
  * Creates a oneof from a descriptor.
638
+ *
639
+ * Warning: this is not safe to use with editions protos, since it discards relevant file context.
640
+ *
591
641
  * @param {IOneofDescriptorProto|Reader|Uint8Array} descriptor Descriptor
592
642
  * @returns {OneOf} OneOf instance
593
643
  */
@@ -635,16 +685,23 @@ var unnamedServiceIndex = 0;
635
685
 
636
686
  /**
637
687
  * Creates a service from a descriptor.
688
+ *
689
+ * Warning: this is not safe to use with editions protos, since it discards relevant file context.
690
+ *
638
691
  * @param {IServiceDescriptorProto|Reader|Uint8Array} descriptor Descriptor
692
+ * @param {string} [edition="proto2"] The syntax or edition to use
693
+ * @param {boolean} [nested=false] Whether or not this is a top-level object
639
694
  * @returns {Service} Service instance
640
695
  */
641
- Service.fromDescriptor = function fromDescriptor(descriptor) {
696
+ Service.fromDescriptor = function fromDescriptor(descriptor, edition, nested) {
642
697
 
643
698
  // Decode the descriptor message if specified as a buffer:
644
699
  if (typeof descriptor.length === "number")
645
700
  descriptor = exports.ServiceDescriptorProto.decode(descriptor);
646
701
 
647
702
  var service = new Service(descriptor.name && descriptor.name.length ? descriptor.name : "Service" + unnamedServiceIndex++, fromDescriptorOptions(descriptor.options, exports.ServiceOptions));
703
+ if (!nested)
704
+ service._edition = edition;
648
705
  if (descriptor.method)
649
706
  for (var i = 0; i < descriptor.method.length; ++i)
650
707
  service.add(Method.fromDescriptor(descriptor.method[i]));
@@ -685,6 +742,9 @@ Service.prototype.toDescriptor = function toDescriptor() {
685
742
 
686
743
  /**
687
744
  * Properties of a MethodOptions message.
745
+ *
746
+ * Warning: this is not safe to use with editions protos, since it discards relevant file context.
747
+ *
688
748
  * @interface IMethodOptions
689
749
  * @property {boolean} [deprecated]
690
750
  */
@@ -777,7 +837,7 @@ function packableDescriptorType(type) {
777
837
  }
778
838
 
779
839
  // Converts a protobuf.js basic type to a descriptor type
780
- function toDescriptorType(type, resolvedType) {
840
+ function toDescriptorType(type, resolvedType, delimited) {
781
841
  switch (type) {
782
842
  // 0 is reserved for errors
783
843
  case "double": return 1;
@@ -799,41 +859,60 @@ function toDescriptorType(type, resolvedType) {
799
859
  if (resolvedType instanceof Enum)
800
860
  return 14;
801
861
  if (resolvedType instanceof Type)
802
- return resolvedType.group ? 10 : 11;
862
+ return delimited ? 10 : 11;
803
863
  throw Error("illegal type: " + type);
804
864
  }
805
865
 
866
+ function fromDescriptorOptionsRecursive(obj, type) {
867
+ var val = {};
868
+ for (var i = 0, field, key; i < type.fieldsArray.length; ++i) {
869
+ if ((key = (field = type._fieldsArray[i]).name) === "uninterpretedOption") continue;
870
+ if (!Object.prototype.hasOwnProperty.call(obj, key)) continue;
871
+
872
+ var newKey = underScore(key);
873
+ if (field.resolvedType instanceof Type) {
874
+ val[newKey] = fromDescriptorOptionsRecursive(obj[key], field.resolvedType);
875
+ } else if(field.resolvedType instanceof Enum) {
876
+ val[newKey] = field.resolvedType.valuesById[obj[key]];
877
+ } else {
878
+ val[newKey] = obj[key];
879
+ }
880
+ }
881
+ return val;
882
+ }
883
+
806
884
  // Converts descriptor options to an options object
807
885
  function fromDescriptorOptions(options, type) {
808
886
  if (!options)
809
887
  return undefined;
810
- var out = [];
811
- for (var i = 0, field, key, val; i < type.fieldsArray.length; ++i)
812
- if ((key = (field = type._fieldsArray[i]).name) !== "uninterpretedOption")
813
- if (options.hasOwnProperty(key)) { // eslint-disable-line no-prototype-builtins
814
- val = options[key];
815
- if (field.resolvedType instanceof Enum && typeof val === "number" && field.resolvedType.valuesById[val] !== undefined)
816
- val = field.resolvedType.valuesById[val];
817
- out.push(underScore(key), val);
818
- }
819
- return out.length ? $protobuf.util.toObject(out) : undefined;
888
+ return fromDescriptorOptionsRecursive(type.toObject(options), type);
889
+ }
890
+
891
+ function toDescriptorOptionsRecursive(obj, type) {
892
+ var val = {};
893
+ var keys = Object.keys(obj);
894
+ for (var i = 0; i < keys.length; ++i) {
895
+ var key = keys[i];
896
+ var newKey = $protobuf.util.camelCase(key);
897
+ if (!Object.prototype.hasOwnProperty.call(type.fields, newKey)) continue;
898
+ var field = type.fields[newKey];
899
+ if (field.resolvedType instanceof Type) {
900
+ val[newKey] = toDescriptorOptionsRecursive(obj[key], field.resolvedType);
901
+ } else {
902
+ val[newKey] = obj[key];
903
+ }
904
+ if (field.repeated && !Array.isArray(val[newKey])) {
905
+ val[newKey] = [val[newKey]];
906
+ }
907
+ }
908
+ return val;
820
909
  }
821
910
 
822
911
  // Converts an options object to descriptor options
823
912
  function toDescriptorOptions(options, type) {
824
913
  if (!options)
825
914
  return undefined;
826
- var out = [];
827
- for (var i = 0, ks = Object.keys(options), key, val; i < ks.length; ++i) {
828
- val = options[key = ks[i]];
829
- if (key === "default")
830
- continue;
831
- var field = type.fields[key];
832
- if (!field && !(field = type.fields[key = $protobuf.util.camelCase(key)]))
833
- continue;
834
- out.push(key, val);
835
- }
836
- return out.length ? type.fromObject($protobuf.util.toObject(out)) : undefined;
915
+ return type.fromObject(toDescriptorOptionsRecursive(options, type));
837
916
  }
838
917
 
839
918
  // Calculates the shortest relative path from `from` to `to`.
@@ -862,6 +941,37 @@ function underScore(str) {
862
941
  .replace(/([A-Z])(?=[a-z]|$)/g, function($0, $1) { return "_" + $1.toLowerCase(); });
863
942
  }
864
943
 
944
+ function editionFromDescriptor(fileDescriptor) {
945
+ if (fileDescriptor.syntax === "editions") {
946
+ switch(fileDescriptor.edition) {
947
+ case exports.Edition.EDITION_2023:
948
+ return "2023";
949
+ default:
950
+ throw new Error("Unsupported edition " + fileDescriptor.edition);
951
+ }
952
+ }
953
+ if (fileDescriptor.syntax === "proto3") {
954
+ return "proto3";
955
+ }
956
+ return "proto2";
957
+ }
958
+
959
+ function editionToDescriptor(edition, fileDescriptor) {
960
+ if (!edition) return;
961
+ if (edition === "proto2" || edition === "proto3") {
962
+ fileDescriptor.syntax = edition;
963
+ } else {
964
+ fileDescriptor.syntax = "editions";
965
+ switch(edition) {
966
+ case "2023":
967
+ fileDescriptor.edition = exports.Edition.EDITION_2023;
968
+ break;
969
+ default:
970
+ throw new Error("Unsupported edition " + edition);
971
+ }
972
+ }
973
+ }
974
+
865
975
  // --- exports ---
866
976
 
867
977
  /**