@milaboratories/pl-client 2.16.8 → 2.16.9

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 (253) hide show
  1. package/dist/__external/.pnpm/{@rollup_plugin-typescript@12.1.4_rollup@4.52.4_tslib@2.7.0_typescript@5.6.3 → @rollup_plugin-typescript@12.1.4_rollup@4.52.4_tslib@2.8.1_typescript@5.6.3}/__external/tslib/tslib.es6.cjs +2 -2
  2. package/dist/__external/.pnpm/{@rollup_plugin-typescript@12.1.4_rollup@4.52.4_tslib@2.7.0_typescript@5.6.3 → @rollup_plugin-typescript@12.1.4_rollup@4.52.4_tslib@2.8.1_typescript@5.6.3}/__external/tslib/tslib.es6.cjs.map +1 -1
  3. package/dist/__external/.pnpm/{@rollup_plugin-typescript@12.1.4_rollup@4.52.4_tslib@2.7.0_typescript@5.6.3 → @rollup_plugin-typescript@12.1.4_rollup@4.52.4_tslib@2.8.1_typescript@5.6.3}/__external/tslib/tslib.es6.js +2 -2
  4. package/dist/__external/.pnpm/{@rollup_plugin-typescript@12.1.4_rollup@4.52.4_tslib@2.7.0_typescript@5.6.3 → @rollup_plugin-typescript@12.1.4_rollup@4.52.4_tslib@2.8.1_typescript@5.6.3}/__external/tslib/tslib.es6.js.map +1 -1
  5. package/dist/core/abstract_stream.d.ts +18 -0
  6. package/dist/core/abstract_stream.d.ts.map +1 -0
  7. package/dist/core/client.cjs +6 -6
  8. package/dist/core/client.cjs.map +1 -1
  9. package/dist/core/client.d.ts +3 -3
  10. package/dist/core/client.d.ts.map +1 -1
  11. package/dist/core/client.js +6 -6
  12. package/dist/core/client.js.map +1 -1
  13. package/dist/core/config.cjs +3 -0
  14. package/dist/core/config.cjs.map +1 -1
  15. package/dist/core/config.d.ts +4 -0
  16. package/dist/core/config.d.ts.map +1 -1
  17. package/dist/core/config.js +3 -1
  18. package/dist/core/config.js.map +1 -1
  19. package/dist/core/driver.cjs +11 -0
  20. package/dist/core/driver.cjs.map +1 -1
  21. package/dist/core/driver.d.ts +8 -2
  22. package/dist/core/driver.d.ts.map +1 -1
  23. package/dist/core/driver.js +11 -1
  24. package/dist/core/driver.js.map +1 -1
  25. package/dist/core/errors.cjs +9 -0
  26. package/dist/core/errors.cjs.map +1 -1
  27. package/dist/core/errors.d.ts +1 -1
  28. package/dist/core/errors.d.ts.map +1 -1
  29. package/dist/core/errors.js +9 -0
  30. package/dist/core/errors.js.map +1 -1
  31. package/dist/core/ll_client.cjs +194 -39
  32. package/dist/core/ll_client.cjs.map +1 -1
  33. package/dist/core/ll_client.d.ts +36 -15
  34. package/dist/core/ll_client.d.ts.map +1 -1
  35. package/dist/core/ll_client.js +195 -40
  36. package/dist/core/ll_client.js.map +1 -1
  37. package/dist/core/ll_transaction.cjs.map +1 -1
  38. package/dist/core/ll_transaction.d.ts +3 -3
  39. package/dist/core/ll_transaction.d.ts.map +1 -1
  40. package/dist/core/ll_transaction.js.map +1 -1
  41. package/dist/core/transaction.cjs +2 -2
  42. package/dist/core/transaction.cjs.map +1 -1
  43. package/dist/core/transaction.js +2 -2
  44. package/dist/core/transaction.js.map +1 -1
  45. package/dist/core/type_conversion.cjs +2 -2
  46. package/dist/core/type_conversion.cjs.map +1 -1
  47. package/dist/core/type_conversion.d.ts +2 -2
  48. package/dist/core/type_conversion.d.ts.map +1 -1
  49. package/dist/core/type_conversion.js +2 -2
  50. package/dist/core/type_conversion.js.map +1 -1
  51. package/dist/core/unauth_client.cjs +4 -8
  52. package/dist/core/unauth_client.cjs.map +1 -1
  53. package/dist/core/unauth_client.d.ts +1 -1
  54. package/dist/core/unauth_client.d.ts.map +1 -1
  55. package/dist/core/unauth_client.js +4 -8
  56. package/dist/core/unauth_client.js.map +1 -1
  57. package/dist/core/wire.d.ts +34 -0
  58. package/dist/core/wire.d.ts.map +1 -0
  59. package/dist/index.cjs +4 -0
  60. package/dist/index.cjs.map +1 -1
  61. package/dist/index.d.ts +2 -1
  62. package/dist/index.d.ts.map +1 -1
  63. package/dist/index.js +4 -2
  64. package/dist/index.js.map +1 -1
  65. package/dist/proto-grpc/github.com/googleapis/googleapis/google/rpc/status.cjs.map +1 -0
  66. package/dist/{proto → proto-grpc}/github.com/googleapis/googleapis/google/rpc/status.d.ts +4 -2
  67. package/dist/proto-grpc/github.com/googleapis/googleapis/google/rpc/status.d.ts.map +1 -0
  68. package/dist/proto-grpc/github.com/googleapis/googleapis/google/rpc/status.js.map +1 -0
  69. package/dist/{proto → proto-grpc}/github.com/milaboratory/pl/plapi/plapiproto/api.cjs +25 -25
  70. package/dist/proto-grpc/github.com/milaboratory/pl/plapi/plapiproto/api.cjs.map +1 -0
  71. package/dist/proto-grpc/github.com/milaboratory/pl/plapi/plapiproto/api.client.cjs.map +1 -0
  72. package/dist/proto-grpc/github.com/milaboratory/pl/plapi/plapiproto/api.client.d.ts.map +1 -0
  73. package/dist/proto-grpc/github.com/milaboratory/pl/plapi/plapiproto/api.client.js.map +1 -0
  74. package/dist/proto-grpc/github.com/milaboratory/pl/plapi/plapiproto/api.d.ts.map +1 -0
  75. package/dist/{proto → proto-grpc}/github.com/milaboratory/pl/plapi/plapiproto/api.js +25 -25
  76. package/dist/proto-grpc/github.com/milaboratory/pl/plapi/plapiproto/api.js.map +1 -0
  77. package/dist/proto-grpc/github.com/milaboratory/pl/plapi/plapiproto/api_types.cjs.map +1 -0
  78. package/dist/proto-grpc/github.com/milaboratory/pl/plapi/plapiproto/api_types.d.ts.map +1 -0
  79. package/dist/proto-grpc/github.com/milaboratory/pl/plapi/plapiproto/api_types.js.map +1 -0
  80. package/dist/proto-grpc/github.com/milaboratory/pl/plapi/plapiproto/base_types.cjs.map +1 -0
  81. package/dist/proto-grpc/github.com/milaboratory/pl/plapi/plapiproto/base_types.d.ts.map +1 -0
  82. package/dist/proto-grpc/github.com/milaboratory/pl/plapi/plapiproto/base_types.js.map +1 -0
  83. package/dist/proto-grpc/github.com/milaboratory/pl/plapi/plapiproto/import.d.ts.map +1 -0
  84. package/dist/proto-grpc/github.com/milaboratory/pl/plapi/plapiproto/resource_types.cjs.map +1 -0
  85. package/dist/proto-grpc/github.com/milaboratory/pl/plapi/plapiproto/resource_types.d.ts.map +1 -0
  86. package/dist/proto-grpc/github.com/milaboratory/pl/plapi/plapiproto/resource_types.js.map +1 -0
  87. package/dist/proto-grpc/github.com/milaboratory/pl/plapi/plapiproto/ws-test.d.ts +73 -0
  88. package/dist/proto-grpc/github.com/milaboratory/pl/plapi/plapiproto/ws-test.d.ts.map +1 -0
  89. package/dist/{proto → proto-grpc}/google/api/http.d.ts +28 -32
  90. package/dist/proto-grpc/google/api/http.d.ts.map +1 -0
  91. package/dist/proto-grpc/google/protobuf/any.cjs.map +1 -0
  92. package/dist/proto-grpc/google/protobuf/any.d.ts.map +1 -0
  93. package/dist/proto-grpc/google/protobuf/any.js.map +1 -0
  94. package/dist/{proto → proto-grpc}/google/protobuf/descriptor.d.ts +6 -152
  95. package/dist/proto-grpc/google/protobuf/descriptor.d.ts.map +1 -0
  96. package/dist/proto-grpc/google/protobuf/duration.cjs.map +1 -0
  97. package/dist/proto-grpc/google/protobuf/duration.d.ts.map +1 -0
  98. package/dist/proto-grpc/google/protobuf/duration.js.map +1 -0
  99. package/dist/proto-grpc/google/protobuf/empty.d.ts.map +1 -0
  100. package/dist/proto-grpc/google/protobuf/struct.d.ts.map +1 -0
  101. package/dist/proto-grpc/google/protobuf/timestamp.cjs.map +1 -0
  102. package/dist/proto-grpc/google/protobuf/timestamp.d.ts.map +1 -0
  103. package/dist/proto-grpc/google/protobuf/timestamp.js.map +1 -0
  104. package/dist/{proto → proto-grpc}/google/protobuf/wrappers.d.ts +0 -27
  105. package/dist/proto-grpc/google/protobuf/wrappers.d.ts.map +1 -0
  106. package/dist/proto-grpc/google/rpc/code.cjs +240 -0
  107. package/dist/proto-grpc/google/rpc/code.cjs.map +1 -0
  108. package/dist/proto-grpc/google/rpc/code.d.ts +219 -0
  109. package/dist/proto-grpc/google/rpc/code.d.ts.map +1 -0
  110. package/dist/proto-grpc/google/rpc/code.js +240 -0
  111. package/dist/proto-grpc/google/rpc/code.js.map +1 -0
  112. package/dist/proto-grpc/google/rpc/error_details.d.ts +654 -0
  113. package/dist/proto-grpc/google/rpc/error_details.d.ts.map +1 -0
  114. package/dist/proto-grpc/google/rpc/http.d.ts +121 -0
  115. package/dist/proto-grpc/google/rpc/http.d.ts.map +1 -0
  116. package/dist/proto-grpc/google/rpc/status.d.ts +55 -0
  117. package/dist/proto-grpc/google/rpc/status.d.ts.map +1 -0
  118. package/dist/proto-rest/index.cjs +64 -0
  119. package/dist/proto-rest/index.cjs.map +1 -0
  120. package/dist/proto-rest/index.d.ts +23 -0
  121. package/dist/proto-rest/index.d.ts.map +1 -0
  122. package/dist/proto-rest/index.js +61 -0
  123. package/dist/proto-rest/index.js.map +1 -0
  124. package/dist/proto-rest/plapi.d.ts +1488 -0
  125. package/dist/proto-rest/plapi.d.ts.map +1 -0
  126. package/package.json +7 -4
  127. package/src/core/abstract_stream.ts +25 -0
  128. package/src/core/client.ts +8 -8
  129. package/src/core/config.ts +9 -0
  130. package/src/core/driver.ts +13 -2
  131. package/src/core/errors.ts +7 -1
  132. package/src/core/ll_client.test.ts +1 -1
  133. package/src/core/ll_client.ts +212 -42
  134. package/src/core/ll_transaction.test.ts +1 -1
  135. package/src/core/ll_transaction.ts +4 -4
  136. package/src/core/transaction.ts +1 -1
  137. package/src/core/type_conversion.ts +3 -3
  138. package/src/core/unauth_client.test.ts +6 -0
  139. package/src/core/unauth_client.ts +8 -12
  140. package/src/core/wire.ts +40 -0
  141. package/src/index.ts +3 -1
  142. package/src/{proto → proto-grpc}/github.com/googleapis/googleapis/google/rpc/status.ts +5 -3
  143. package/src/{proto → proto-grpc}/github.com/milaboratory/pl/plapi/plapiproto/api.ts +25 -25
  144. package/src/proto-grpc/github.com/milaboratory/pl/plapi/plapiproto/ws-test.ts +209 -0
  145. package/src/{proto → proto-grpc}/google/api/http.ts +29 -33
  146. package/src/{proto → proto-grpc}/google/protobuf/descriptor.ts +11 -221
  147. package/src/{proto → proto-grpc}/google/protobuf/wrappers.ts +4 -38
  148. package/src/proto-grpc/google/rpc/code.ts +236 -0
  149. package/src/proto-grpc/google/rpc/error_details.ts +1386 -0
  150. package/src/proto-grpc/google/rpc/http.ts +307 -0
  151. package/src/proto-grpc/google/rpc/status.ts +127 -0
  152. package/src/proto-rest/index.ts +83 -0
  153. package/src/proto-rest/plapi.ts +1488 -0
  154. package/dist/core/grpc.d.ts +0 -16
  155. package/dist/core/grpc.d.ts.map +0 -1
  156. package/dist/core/http.d.ts +0 -2
  157. package/dist/core/http.d.ts.map +0 -1
  158. package/dist/proto/github.com/googleapis/googleapis/google/rpc/status.cjs.map +0 -1
  159. package/dist/proto/github.com/googleapis/googleapis/google/rpc/status.d.ts.map +0 -1
  160. package/dist/proto/github.com/googleapis/googleapis/google/rpc/status.js.map +0 -1
  161. package/dist/proto/github.com/milaboratory/pl/controllers/shared/grpc/downloadapi/protocol.client.d.ts +0 -40
  162. package/dist/proto/github.com/milaboratory/pl/controllers/shared/grpc/downloadapi/protocol.client.d.ts.map +0 -1
  163. package/dist/proto/github.com/milaboratory/pl/controllers/shared/grpc/downloadapi/protocol.d.ts +0 -116
  164. package/dist/proto/github.com/milaboratory/pl/controllers/shared/grpc/downloadapi/protocol.d.ts.map +0 -1
  165. package/dist/proto/github.com/milaboratory/pl/controllers/shared/grpc/lsapi/protocol.client.d.ts +0 -46
  166. package/dist/proto/github.com/milaboratory/pl/controllers/shared/grpc/lsapi/protocol.client.d.ts.map +0 -1
  167. package/dist/proto/github.com/milaboratory/pl/controllers/shared/grpc/lsapi/protocol.d.ts +0 -170
  168. package/dist/proto/github.com/milaboratory/pl/controllers/shared/grpc/lsapi/protocol.d.ts.map +0 -1
  169. package/dist/proto/github.com/milaboratory/pl/controllers/shared/grpc/progressapi/protocol.client.d.ts +0 -51
  170. package/dist/proto/github.com/milaboratory/pl/controllers/shared/grpc/progressapi/protocol.client.d.ts.map +0 -1
  171. package/dist/proto/github.com/milaboratory/pl/controllers/shared/grpc/progressapi/protocol.d.ts +0 -176
  172. package/dist/proto/github.com/milaboratory/pl/controllers/shared/grpc/progressapi/protocol.d.ts.map +0 -1
  173. package/dist/proto/github.com/milaboratory/pl/controllers/shared/grpc/streamingapi/protocol.client.d.ts +0 -131
  174. package/dist/proto/github.com/milaboratory/pl/controllers/shared/grpc/streamingapi/protocol.client.d.ts.map +0 -1
  175. package/dist/proto/github.com/milaboratory/pl/controllers/shared/grpc/streamingapi/protocol.d.ts +0 -320
  176. package/dist/proto/github.com/milaboratory/pl/controllers/shared/grpc/streamingapi/protocol.d.ts.map +0 -1
  177. package/dist/proto/github.com/milaboratory/pl/plapi/plapiproto/api.cjs.map +0 -1
  178. package/dist/proto/github.com/milaboratory/pl/plapi/plapiproto/api.client.cjs.map +0 -1
  179. package/dist/proto/github.com/milaboratory/pl/plapi/plapiproto/api.client.d.ts.map +0 -1
  180. package/dist/proto/github.com/milaboratory/pl/plapi/plapiproto/api.client.js.map +0 -1
  181. package/dist/proto/github.com/milaboratory/pl/plapi/plapiproto/api.d.ts.map +0 -1
  182. package/dist/proto/github.com/milaboratory/pl/plapi/plapiproto/api.js.map +0 -1
  183. package/dist/proto/github.com/milaboratory/pl/plapi/plapiproto/api_types.cjs.map +0 -1
  184. package/dist/proto/github.com/milaboratory/pl/plapi/plapiproto/api_types.d.ts.map +0 -1
  185. package/dist/proto/github.com/milaboratory/pl/plapi/plapiproto/api_types.js.map +0 -1
  186. package/dist/proto/github.com/milaboratory/pl/plapi/plapiproto/base_types.cjs.map +0 -1
  187. package/dist/proto/github.com/milaboratory/pl/plapi/plapiproto/base_types.d.ts.map +0 -1
  188. package/dist/proto/github.com/milaboratory/pl/plapi/plapiproto/base_types.js.map +0 -1
  189. package/dist/proto/github.com/milaboratory/pl/plapi/plapiproto/import.d.ts.map +0 -1
  190. package/dist/proto/github.com/milaboratory/pl/plapi/plapiproto/resource_types.cjs.map +0 -1
  191. package/dist/proto/github.com/milaboratory/pl/plapi/plapiproto/resource_types.d.ts.map +0 -1
  192. package/dist/proto/github.com/milaboratory/pl/plapi/plapiproto/resource_types.js.map +0 -1
  193. package/dist/proto/google/api/http.d.ts.map +0 -1
  194. package/dist/proto/google/protobuf/any.cjs.map +0 -1
  195. package/dist/proto/google/protobuf/any.d.ts.map +0 -1
  196. package/dist/proto/google/protobuf/any.js.map +0 -1
  197. package/dist/proto/google/protobuf/descriptor.d.ts.map +0 -1
  198. package/dist/proto/google/protobuf/duration.cjs.map +0 -1
  199. package/dist/proto/google/protobuf/duration.d.ts.map +0 -1
  200. package/dist/proto/google/protobuf/duration.js.map +0 -1
  201. package/dist/proto/google/protobuf/empty.d.ts.map +0 -1
  202. package/dist/proto/google/protobuf/struct.d.ts.map +0 -1
  203. package/dist/proto/google/protobuf/timestamp.cjs.map +0 -1
  204. package/dist/proto/google/protobuf/timestamp.d.ts.map +0 -1
  205. package/dist/proto/google/protobuf/timestamp.js.map +0 -1
  206. package/dist/proto/google/protobuf/wrappers.d.ts.map +0 -1
  207. package/src/core/grpc.ts +0 -17
  208. package/src/core/http.ts +0 -178
  209. package/src/proto/github.com/milaboratory/pl/controllers/shared/grpc/downloadapi/protocol.client.ts +0 -45
  210. package/src/proto/github.com/milaboratory/pl/controllers/shared/grpc/downloadapi/protocol.ts +0 -313
  211. package/src/proto/github.com/milaboratory/pl/controllers/shared/grpc/lsapi/protocol.client.ts +0 -51
  212. package/src/proto/github.com/milaboratory/pl/controllers/shared/grpc/lsapi/protocol.ts +0 -406
  213. package/src/proto/github.com/milaboratory/pl/controllers/shared/grpc/progressapi/protocol.client.ts +0 -59
  214. package/src/proto/github.com/milaboratory/pl/controllers/shared/grpc/progressapi/protocol.ts +0 -489
  215. package/src/proto/github.com/milaboratory/pl/controllers/shared/grpc/streamingapi/protocol.client.ts +0 -148
  216. package/src/proto/github.com/milaboratory/pl/controllers/shared/grpc/streamingapi/protocol.ts +0 -719
  217. /package/dist/{proto → proto-grpc}/github.com/googleapis/googleapis/google/rpc/status.cjs +0 -0
  218. /package/dist/{proto → proto-grpc}/github.com/googleapis/googleapis/google/rpc/status.js +0 -0
  219. /package/dist/{proto → proto-grpc}/github.com/milaboratory/pl/plapi/plapiproto/api.client.cjs +0 -0
  220. /package/dist/{proto → proto-grpc}/github.com/milaboratory/pl/plapi/plapiproto/api.client.d.ts +0 -0
  221. /package/dist/{proto → proto-grpc}/github.com/milaboratory/pl/plapi/plapiproto/api.client.js +0 -0
  222. /package/dist/{proto → proto-grpc}/github.com/milaboratory/pl/plapi/plapiproto/api.d.ts +0 -0
  223. /package/dist/{proto → proto-grpc}/github.com/milaboratory/pl/plapi/plapiproto/api_types.cjs +0 -0
  224. /package/dist/{proto → proto-grpc}/github.com/milaboratory/pl/plapi/plapiproto/api_types.d.ts +0 -0
  225. /package/dist/{proto → proto-grpc}/github.com/milaboratory/pl/plapi/plapiproto/api_types.js +0 -0
  226. /package/dist/{proto → proto-grpc}/github.com/milaboratory/pl/plapi/plapiproto/base_types.cjs +0 -0
  227. /package/dist/{proto → proto-grpc}/github.com/milaboratory/pl/plapi/plapiproto/base_types.d.ts +0 -0
  228. /package/dist/{proto → proto-grpc}/github.com/milaboratory/pl/plapi/plapiproto/base_types.js +0 -0
  229. /package/dist/{proto → proto-grpc}/github.com/milaboratory/pl/plapi/plapiproto/import.d.ts +0 -0
  230. /package/dist/{proto → proto-grpc}/github.com/milaboratory/pl/plapi/plapiproto/resource_types.cjs +0 -0
  231. /package/dist/{proto → proto-grpc}/github.com/milaboratory/pl/plapi/plapiproto/resource_types.d.ts +0 -0
  232. /package/dist/{proto → proto-grpc}/github.com/milaboratory/pl/plapi/plapiproto/resource_types.js +0 -0
  233. /package/dist/{proto → proto-grpc}/google/protobuf/any.cjs +0 -0
  234. /package/dist/{proto → proto-grpc}/google/protobuf/any.d.ts +0 -0
  235. /package/dist/{proto → proto-grpc}/google/protobuf/any.js +0 -0
  236. /package/dist/{proto → proto-grpc}/google/protobuf/duration.cjs +0 -0
  237. /package/dist/{proto → proto-grpc}/google/protobuf/duration.d.ts +0 -0
  238. /package/dist/{proto → proto-grpc}/google/protobuf/duration.js +0 -0
  239. /package/dist/{proto → proto-grpc}/google/protobuf/empty.d.ts +0 -0
  240. /package/dist/{proto → proto-grpc}/google/protobuf/struct.d.ts +0 -0
  241. /package/dist/{proto → proto-grpc}/google/protobuf/timestamp.cjs +0 -0
  242. /package/dist/{proto → proto-grpc}/google/protobuf/timestamp.d.ts +0 -0
  243. /package/dist/{proto → proto-grpc}/google/protobuf/timestamp.js +0 -0
  244. /package/src/{proto → proto-grpc}/github.com/milaboratory/pl/plapi/plapiproto/api.client.ts +0 -0
  245. /package/src/{proto → proto-grpc}/github.com/milaboratory/pl/plapi/plapiproto/api_types.ts +0 -0
  246. /package/src/{proto → proto-grpc}/github.com/milaboratory/pl/plapi/plapiproto/base_types.ts +0 -0
  247. /package/src/{proto → proto-grpc}/github.com/milaboratory/pl/plapi/plapiproto/import.ts +0 -0
  248. /package/src/{proto → proto-grpc}/github.com/milaboratory/pl/plapi/plapiproto/resource_types.ts +0 -0
  249. /package/src/{proto → proto-grpc}/google/protobuf/any.ts +0 -0
  250. /package/src/{proto → proto-grpc}/google/protobuf/duration.ts +0 -0
  251. /package/src/{proto → proto-grpc}/google/protobuf/empty.ts +0 -0
  252. /package/src/{proto → proto-grpc}/google/protobuf/struct.ts +0 -0
  253. /package/src/{proto → proto-grpc}/google/protobuf/timestamp.ts +0 -0
@@ -0,0 +1 @@
1
+ {"version":3,"file":"plapi.d.ts","sourceRoot":"","sources":["../../src/proto-rest/plapi.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@milaboratories/pl-client",
3
- "version": "2.16.8",
3
+ "version": "2.16.9",
4
4
  "engines": {
5
5
  "node": ">=22.19.0"
6
6
  },
@@ -31,22 +31,24 @@
31
31
  "long": "^5.3.2",
32
32
  "lru-cache": "^11.2.2",
33
33
  "tslib": "~2.7.0",
34
+ "openapi-fetch": "^0.15.0",
34
35
  "undici": "~7.16.0",
35
36
  "utility-types": "^3.11.0",
36
37
  "yaml": "^2.8.0",
37
- "@milaboratories/ts-helpers": "1.5.4",
38
38
  "@milaboratories/pl-http": "1.2.0",
39
- "@milaboratories/pl-model-common": "1.21.7"
39
+ "@milaboratories/ts-helpers": "1.5.4",
40
+ "@milaboratories/pl-model-common": "1.21.8"
40
41
  },
41
42
  "devDependencies": {
42
43
  "@protobuf-ts/plugin": "2.11.1",
44
+ "openapi-typescript": "^7.10.0",
43
45
  "@types/http-proxy": "^1.17.16",
44
46
  "@types/node": "~24.5.2",
45
47
  "@vitest/coverage-v8": "^4.0.7",
46
48
  "vitest": "^4.0.7",
47
49
  "typescript": "~5.6.3",
48
- "@milaboratories/ts-builder": "1.0.5",
49
50
  "@milaboratories/build-configs": "1.0.8",
51
+ "@milaboratories/ts-builder": "1.0.5",
50
52
  "@milaboratories/ts-configs": "1.0.6"
51
53
  },
52
54
  "scripts": {
@@ -55,6 +57,7 @@
55
57
  "watch": "ts-builder build --target node --watch",
56
58
  "lint": "eslint .",
57
59
  "test": "vitest run --coverage",
60
+ "update-proto": "./sync-proto.sh && ./generate-grpc.sh && ./generate-rest.sh",
58
61
  "do-pack": "rm -f *.tgz && pnpm pack && mv *.tgz package.tgz"
59
62
  }
60
63
  }
@@ -0,0 +1,25 @@
1
+ import type { DuplexStreamingCall } from '@protobuf-ts/runtime-rpc';
2
+
3
+ export interface RequestsStream<T> {
4
+ /**
5
+ * Send a message down the stream.
6
+ * Only one message can be send at a time.
7
+ */
8
+ send(message: T): Promise<void>;
9
+ /**
10
+ * Complete / close the stream.
11
+ * Can only be called if there is no pending send().
12
+ * No send() should follow this call.
13
+ */
14
+ complete(): Promise<void>;
15
+ }
16
+
17
+ export interface BiDiStream<I extends object, O extends object> {
18
+ requests: RequestsStream<I>;
19
+ responses: AsyncIterable<O>;
20
+ }
21
+
22
+ // Compile-time type compatibility check: BiDiStream is compatible with DuplexStreamingCall implementaions.
23
+ type _CompatibilityTest<I extends object, O extends object> = DuplexStreamingCall<I, O> extends BiDiStream<I, O>
24
+ ? true
25
+ : never;
@@ -10,8 +10,8 @@ import { ClientRoot } from '../helpers/pl';
10
10
  import type { RetryOptions } from '@milaboratories/ts-helpers';
11
11
  import { assertNever, createRetryState, nextRetryStateOrError } from '@milaboratories/ts-helpers';
12
12
  import type { PlDriver, PlDriverDefinition } from './driver';
13
- import type { MaintenanceAPI_Ping_Response, MaintenanceAPI_License_Response } from '../proto/github.com/milaboratory/pl/plapi/plapiproto/api';
14
- import { MaintenanceAPI_Ping_Response_Compression } from '../proto/github.com/milaboratory/pl/plapi/plapiproto/api';
13
+ import type { MaintenanceAPI_Ping_Response, MaintenanceAPI_License_Response } from '../proto-grpc/github.com/milaboratory/pl/plapi/plapiproto/api';
14
+ import { MaintenanceAPI_Ping_Response_Compression } from '../proto-grpc/github.com/milaboratory/pl/plapi/plapiproto/api';
15
15
  import * as tp from 'node:timers/promises';
16
16
  import type { Dispatcher } from 'undici';
17
17
  import { LRUCache } from 'lru-cache';
@@ -20,7 +20,7 @@ import type { FinalResourceDataPredicate } from './final';
20
20
  import { DefaultFinalResourceDataPredicate } from './final';
21
21
  import type { AllTxStat, TxStat } from './stat';
22
22
  import { addStat, initialTxStat } from './stat';
23
- import type { GrpcTransport } from '@protobuf-ts/grpc-transport';
23
+ import type { WireConnection } from './wire';
24
24
  import { advisoryLock } from './advisory_locks';
25
25
 
26
26
  export type TxOps = PlCallOps & {
@@ -145,11 +145,11 @@ export class PlClient {
145
145
  }
146
146
 
147
147
  public async ping(): Promise<MaintenanceAPI_Ping_Response> {
148
- return (await this._ll.grpcPl.get().ping({})).response;
148
+ return await this._ll.ping();
149
149
  }
150
150
 
151
151
  public async license(): Promise<MaintenanceAPI_License_Response> {
152
- return (await this._ll.grpcPl.get().license({})).response;
152
+ return await this._ll.license();
153
153
  }
154
154
 
155
155
  public get conf(): PlClientConfig {
@@ -160,8 +160,8 @@ export class PlClient {
160
160
  return this._ll.httpDispatcher;
161
161
  }
162
162
 
163
- public get grpcTransport(): GrpcTransport {
164
- return this._ll.grpcTransport;
163
+ public get connectionOpts(): WireConnection {
164
+ return this._ll.wireConnection;
165
165
  }
166
166
 
167
167
  private get initialized() {
@@ -306,7 +306,7 @@ export class PlClient {
306
306
  if (ok) {
307
307
  // syncing on transaction if requested
308
308
  if (ops?.sync === undefined ? this.forceSync : ops?.sync)
309
- await this._ll.grpcPl.get().txSync({ txId });
309
+ await this._ll.txSync(txId);
310
310
 
311
311
  // introducing artificial delay, if requested
312
312
  if (writable && this.txDelay > 0)
@@ -1,11 +1,17 @@
1
1
  import type { ProxySettings } from '@milaboratories/pl-http';
2
2
  import type { ExponentialBackoffRetryOptions } from '@milaboratories/ts-helpers';
3
3
 
4
+ export const SUPPORTED_WIRE_PROTOCOLS = ['grpc', 'rest'] as const;
5
+ export type wireProtocol = (typeof SUPPORTED_WIRE_PROTOCOLS)[number];
6
+
4
7
  /** Base configuration structure for PL client */
5
8
  export interface PlClientConfig {
6
9
  /** Port and host of remote pl server */
7
10
  hostAndPort: string;
8
11
 
12
+ /** Type of wire connection (protocol server uses for communication) */
13
+ wireProtocol?: wireProtocol;
14
+
9
15
  /** If set, client will expose a nested object under a field with name `alternative_root_${alternativeRoot}` as a
10
16
  * client root. */
11
17
  alternativeRoot?: string;
@@ -185,6 +191,9 @@ export function plAddressToConfig(
185
191
  hostAndPort: `${url.hostname}:${port}`,
186
192
  alternativeRoot: url.searchParams.get('alternative-root') ?? undefined,
187
193
  ssl: url.protocol === 'https:' || url.protocol === 'tls:',
194
+
195
+ wireProtocol: url.searchParams.get('wire-protocol') as wireProtocol ?? undefined,
196
+
188
197
  defaultRequestTimeout:
189
198
  parseInt(url.searchParams.get('request-timeout')) ?? DEFAULT_REQUEST_TIMEOUT,
190
199
  defaultROTransactionTimeout:
@@ -2,7 +2,7 @@ import type { PlClient } from './client';
2
2
  import type { RpcOptions } from '@protobuf-ts/runtime-rpc';
3
3
  import type { Dispatcher } from 'undici';
4
4
  import type { ResourceType } from './types';
5
- import type { GrpcClientProviderFactory } from './grpc';
5
+ import type { WireClientProviderFactory } from './wire';
6
6
 
7
7
  /** Drivers must implement this interface */
8
8
  export interface PlDriver {
@@ -15,7 +15,7 @@ export interface PlDriverDefinition<Drv extends PlDriver> {
15
15
  readonly name: string;
16
16
 
17
17
  /** Initialization routine, will be executed only once for each driver in a specific client */
18
- init(pl: PlClient, grpcClientProviderFactory: GrpcClientProviderFactory, httpDispatcher: Dispatcher): Drv;
18
+ init(pl: PlClient, wireClientFactory: WireClientProviderFactory, httpDispatcher: Dispatcher): Drv;
19
19
  }
20
20
 
21
21
  // addRTypeToMetadata adds a metadata with resource type
@@ -28,3 +28,14 @@ export function addRTypeToMetadata(rType: ResourceType, options?: RpcOptions) {
28
28
 
29
29
  return options;
30
30
  }
31
+
32
+ /**
33
+ * addRTypeToHeaders adds a header that helps to route request to the right resource and controller.
34
+ * Without this header, API router on server side cannot route request to proper controller in internal
35
+ * RPC proxy.
36
+ */
37
+ export function createRTypeRoutingHeader(rType: ResourceType): Record<string, string> {
38
+ return {
39
+ resourcetype: `${rType.name}:${rType.version}`,
40
+ };
41
+ }
@@ -1,9 +1,11 @@
1
- import type { Status } from '../proto/github.com/googleapis/googleapis/google/rpc/status';
1
+ import type { Status } from '../proto-grpc/github.com/googleapis/googleapis/google/rpc/status';
2
2
  import { Aborted } from '@milaboratories/ts-helpers';
3
+ import { Code } from '../proto-grpc/google/rpc/code';
3
4
 
4
5
  export function isConnectionProblem(err: unknown, nested: boolean = false): boolean {
5
6
  if (err instanceof DisconnectedError) return true;
6
7
  if ((err as any).name == 'RpcError' && (err as any).code == 'UNAVAILABLE') return true;
8
+ if ((err as any).code == Code.UNAVAILABLE) return true;
7
9
  if ((err as any).cause !== undefined && !nested)
8
10
  // nested limits the depth of search
9
11
  return isConnectionProblem((err as any).cause, true);
@@ -13,6 +15,7 @@ export function isConnectionProblem(err: unknown, nested: boolean = false): bool
13
15
  export function isUnauthenticated(err: unknown, nested: boolean = false): boolean {
14
16
  if (err instanceof UnauthenticatedError) return true;
15
17
  if ((err as any).name == 'RpcError' && (err as any).code == 'UNAUTHENTICATED') return true;
18
+ if ((err as any).code == Code.UNAUTHENTICATED) return true;
16
19
  if ((err as any).cause !== undefined && !nested)
17
20
  // nested limits the depth of search
18
21
  return isUnauthenticated((err as any).cause, true);
@@ -22,11 +25,14 @@ export function isUnauthenticated(err: unknown, nested: boolean = false): boolea
22
25
  export function isTimeoutOrCancelError(err: unknown, nested: boolean = false): boolean {
23
26
  if (err instanceof Aborted || (err as any).name == 'AbortError') return true;
24
27
  if ((err as any).code == 'ABORT_ERR') return true;
28
+ if ((err as any).code == Code.ABORTED) return true;
25
29
  if (
26
30
  (err as any).name == 'RpcError'
27
31
  && ((err as any).code == 'CANCELLED' || (err as any).code == 'DEADLINE_EXCEEDED')
28
32
  )
29
33
  return true;
34
+ if ((err as any).code == Code.CANCELLED || (err as any).code == Code.DEADLINE_EXCEEDED)
35
+ return true;
30
36
  if ((err as any).cause !== undefined && !nested)
31
37
  // nested limits the depth of search
32
38
  return isTimeoutOrCancelError((err as any).cause, true);
@@ -1,6 +1,6 @@
1
1
  import { LLPlClient } from './ll_client';
2
2
  import { getTestConfig, getTestLLClient, getTestClientConf } from '../test/test_config';
3
- import { TxAPI_Open_Request_WritableTx } from '../proto/github.com/milaboratory/pl/plapi/plapiproto/api';
3
+ import { TxAPI_Open_Request_WritableTx } from '../proto-grpc/github.com/milaboratory/pl/plapi/plapiproto/api';
4
4
  import { request } from 'undici';
5
5
  import * as tp from 'node:timers/promises';
6
6
  import { test, expect } from 'vitest';