@leaflow/sdk 0.192.0 → 0.194.0

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 (207) hide show
  1. package/dist/fleet/v1/generated/functions.d.ts +49 -7
  2. package/dist/fleet/v1/generated/functions.js +46 -3
  3. package/dist/fleet/v1/generated/models.d.ts +21 -5
  4. package/dist/fleet/v1/generated/schemas.zod.d.ts +43 -6
  5. package/dist/fleet/v1/generated/schemas.zod.js +52 -6
  6. package/dist/fleet/v1/generated/validators/accountList.zod.d.ts +6 -3
  7. package/dist/fleet/v1/generated/validators/accountList.zod.js +6 -3
  8. package/dist/fleet/v1/generated/validators/accountResource.zod.d.ts +6 -3
  9. package/dist/fleet/v1/generated/validators/accountResource.zod.js +6 -3
  10. package/dist/fleet/v1/generated/validators/approveEnrollmentRequest.zod.d.ts +6 -3
  11. package/dist/fleet/v1/generated/validators/approveEnrollmentRequest.zod.js +6 -3
  12. package/dist/fleet/v1/generated/validators/callMcpToolRequest.zod.d.ts +6 -3
  13. package/dist/fleet/v1/generated/validators/callMcpToolRequest.zod.js +6 -3
  14. package/dist/fleet/v1/generated/validators/callMcpToolResponse.zod.d.ts +6 -3
  15. package/dist/fleet/v1/generated/validators/callMcpToolResponse.zod.js +6 -3
  16. package/dist/fleet/v1/generated/validators/createGroupMemberRequest.zod.d.ts +6 -3
  17. package/dist/fleet/v1/generated/validators/createGroupMemberRequest.zod.js +6 -3
  18. package/dist/fleet/v1/generated/validators/createGroupRequest.zod.d.ts +6 -3
  19. package/dist/fleet/v1/generated/validators/createGroupRequest.zod.js +6 -3
  20. package/dist/fleet/v1/generated/validators/createMachineRegistrationRequest.zod.d.ts +6 -3
  21. package/dist/fleet/v1/generated/validators/createMachineRegistrationRequest.zod.js +6 -3
  22. package/dist/fleet/v1/generated/validators/createMachineRegistrationResponse.zod.d.ts +6 -3
  23. package/dist/fleet/v1/generated/validators/createMachineRegistrationResponse.zod.js +6 -3
  24. package/dist/fleet/v1/generated/validators/createParticipantRequest.zod.d.ts +6 -3
  25. package/dist/fleet/v1/generated/validators/createParticipantRequest.zod.js +6 -3
  26. package/dist/fleet/v1/generated/validators/createParticipantResponse.zod.d.ts +7 -3
  27. package/dist/fleet/v1/generated/validators/createParticipantResponse.zod.js +6 -3
  28. package/dist/fleet/v1/generated/validators/createPeerConnectionCandidatesRequest.zod.d.ts +6 -3
  29. package/dist/fleet/v1/generated/validators/createPeerConnectionCandidatesRequest.zod.js +6 -3
  30. package/dist/fleet/v1/generated/validators/createPeerConnectionRequest.zod.d.ts +6 -3
  31. package/dist/fleet/v1/generated/validators/createPeerConnectionRequest.zod.js +6 -3
  32. package/dist/fleet/v1/generated/validators/createSessionRequest.zod.d.ts +6 -3
  33. package/dist/fleet/v1/generated/validators/createSessionRequest.zod.js +6 -3
  34. package/dist/fleet/v1/generated/validators/cursorPagination.zod.d.ts +6 -3
  35. package/dist/fleet/v1/generated/validators/cursorPagination.zod.js +6 -3
  36. package/dist/fleet/v1/generated/validators/deleteMcpServerParams.zod.d.ts +6 -3
  37. package/dist/fleet/v1/generated/validators/deleteMcpServerParams.zod.js +6 -3
  38. package/dist/fleet/v1/generated/validators/denyPrivilegeRequestRequest.zod.d.ts +6 -3
  39. package/dist/fleet/v1/generated/validators/denyPrivilegeRequestRequest.zod.js +6 -3
  40. package/dist/fleet/v1/generated/validators/desktopOptions.zod.d.ts +6 -3
  41. package/dist/fleet/v1/generated/validators/desktopOptions.zod.js +6 -3
  42. package/dist/fleet/v1/generated/validators/desktopState.zod.d.ts +6 -3
  43. package/dist/fleet/v1/generated/validators/desktopState.zod.js +6 -3
  44. package/dist/fleet/v1/generated/validators/directoryName.zod.d.ts +6 -3
  45. package/dist/fleet/v1/generated/validators/directoryName.zod.js +6 -3
  46. package/dist/fleet/v1/generated/validators/enrollmentResource.zod.d.ts +6 -3
  47. package/dist/fleet/v1/generated/validators/enrollmentResource.zod.js +6 -3
  48. package/dist/fleet/v1/generated/validators/enrollmentState.zod.d.ts +6 -3
  49. package/dist/fleet/v1/generated/validators/enrollmentState.zod.js +6 -3
  50. package/dist/fleet/v1/generated/validators/error.zod.d.ts +6 -3
  51. package/dist/fleet/v1/generated/validators/error.zod.js +6 -3
  52. package/dist/fleet/v1/generated/validators/errorStatus.zod.d.ts +6 -3
  53. package/dist/fleet/v1/generated/validators/errorStatus.zod.js +6 -3
  54. package/dist/fleet/v1/generated/validators/featureState.zod.d.ts +6 -3
  55. package/dist/fleet/v1/generated/validators/featureState.zod.js +6 -3
  56. package/dist/fleet/v1/generated/validators/fieldViolation.zod.d.ts +6 -3
  57. package/dist/fleet/v1/generated/validators/fieldViolation.zod.js +6 -3
  58. package/dist/fleet/v1/generated/validators/findEnrollmentByPairingCodeParams.zod.d.ts +6 -3
  59. package/dist/fleet/v1/generated/validators/findEnrollmentByPairingCodeParams.zod.js +6 -3
  60. package/dist/fleet/v1/generated/validators/findEnrollmentResponse.zod.d.ts +6 -3
  61. package/dist/fleet/v1/generated/validators/findEnrollmentResponse.zod.js +6 -3
  62. package/dist/fleet/v1/generated/validators/getPeerConnectionParams.zod.d.ts +248 -0
  63. package/dist/fleet/v1/generated/validators/getPeerConnectionParams.zod.js +250 -0
  64. package/dist/fleet/v1/generated/validators/groupList.zod.d.ts +6 -3
  65. package/dist/fleet/v1/generated/validators/groupList.zod.js +6 -3
  66. package/dist/fleet/v1/generated/validators/groupResource.zod.d.ts +6 -3
  67. package/dist/fleet/v1/generated/validators/groupResource.zod.js +6 -3
  68. package/dist/fleet/v1/generated/validators/iceCandidate.zod.d.ts +6 -3
  69. package/dist/fleet/v1/generated/validators/iceCandidate.zod.js +6 -3
  70. package/dist/fleet/v1/generated/validators/iceServer.zod.d.ts +6 -3
  71. package/dist/fleet/v1/generated/validators/iceServer.zod.js +6 -3
  72. package/dist/fleet/v1/generated/validators/listAccountsParams.zod.d.ts +6 -3
  73. package/dist/fleet/v1/generated/validators/listAccountsParams.zod.js +6 -3
  74. package/dist/fleet/v1/generated/validators/listGroupMembersParams.zod.d.ts +6 -3
  75. package/dist/fleet/v1/generated/validators/listGroupMembersParams.zod.js +6 -3
  76. package/dist/fleet/v1/generated/validators/listGroupsParams.zod.d.ts +6 -3
  77. package/dist/fleet/v1/generated/validators/listGroupsParams.zod.js +6 -3
  78. package/dist/fleet/v1/generated/validators/listMachineEventsParams.zod.d.ts +6 -3
  79. package/dist/fleet/v1/generated/validators/listMachineEventsParams.zod.js +6 -3
  80. package/dist/fleet/v1/generated/validators/listMachineRegistrationsParams.zod.d.ts +6 -3
  81. package/dist/fleet/v1/generated/validators/listMachineRegistrationsParams.zod.js +6 -3
  82. package/dist/fleet/v1/generated/validators/listMachinesParams.zod.d.ts +6 -3
  83. package/dist/fleet/v1/generated/validators/listMachinesParams.zod.js +6 -3
  84. package/dist/fleet/v1/generated/validators/listMcpToolsParams.zod.d.ts +6 -3
  85. package/dist/fleet/v1/generated/validators/listMcpToolsParams.zod.js +6 -3
  86. package/dist/fleet/v1/generated/validators/listPrivilegeAutoApprovalsParams.zod.d.ts +6 -3
  87. package/dist/fleet/v1/generated/validators/listPrivilegeAutoApprovalsParams.zod.js +6 -3
  88. package/dist/fleet/v1/generated/validators/listPrivilegeRequestsParams.zod.d.ts +6 -3
  89. package/dist/fleet/v1/generated/validators/listPrivilegeRequestsParams.zod.js +6 -3
  90. package/dist/fleet/v1/generated/validators/listSessionsParams.zod.d.ts +6 -3
  91. package/dist/fleet/v1/generated/validators/listSessionsParams.zod.js +6 -3
  92. package/dist/fleet/v1/generated/validators/machineEventList.zod.d.ts +6 -3
  93. package/dist/fleet/v1/generated/validators/machineEventList.zod.js +6 -3
  94. package/dist/fleet/v1/generated/validators/machineEventResource.zod.d.ts +6 -3
  95. package/dist/fleet/v1/generated/validators/machineEventResource.zod.js +6 -3
  96. package/dist/fleet/v1/generated/validators/machineEventType.zod.d.ts +6 -3
  97. package/dist/fleet/v1/generated/validators/machineEventType.zod.js +6 -3
  98. package/dist/fleet/v1/generated/validators/machineFeature.zod.d.ts +6 -3
  99. package/dist/fleet/v1/generated/validators/machineFeature.zod.js +6 -3
  100. package/dist/fleet/v1/generated/validators/machineList.zod.d.ts +6 -3
  101. package/dist/fleet/v1/generated/validators/machineList.zod.js +6 -3
  102. package/dist/fleet/v1/generated/validators/machineRegistrationList.zod.d.ts +6 -3
  103. package/dist/fleet/v1/generated/validators/machineRegistrationList.zod.js +6 -3
  104. package/dist/fleet/v1/generated/validators/machineRegistrationResource.zod.d.ts +6 -3
  105. package/dist/fleet/v1/generated/validators/machineRegistrationResource.zod.js +6 -3
  106. package/dist/fleet/v1/generated/validators/machineRegistrationState.zod.d.ts +6 -3
  107. package/dist/fleet/v1/generated/validators/machineRegistrationState.zod.js +6 -3
  108. package/dist/fleet/v1/generated/validators/machineResource.zod.d.ts +6 -3
  109. package/dist/fleet/v1/generated/validators/machineResource.zod.js +6 -3
  110. package/dist/fleet/v1/generated/validators/mcpConfigurationFile.zod.d.ts +6 -3
  111. package/dist/fleet/v1/generated/validators/mcpConfigurationFile.zod.js +6 -3
  112. package/dist/fleet/v1/generated/validators/mcpConfigurationResource.zod.d.ts +6 -3
  113. package/dist/fleet/v1/generated/validators/mcpConfigurationResource.zod.js +6 -3
  114. package/dist/fleet/v1/generated/validators/mcpImplementation.zod.d.ts +6 -3
  115. package/dist/fleet/v1/generated/validators/mcpImplementation.zod.js +6 -3
  116. package/dist/fleet/v1/generated/validators/mcpServerFailure.zod.d.ts +6 -3
  117. package/dist/fleet/v1/generated/validators/mcpServerFailure.zod.js +6 -3
  118. package/dist/fleet/v1/generated/validators/mcpServerResource.zod.d.ts +6 -3
  119. package/dist/fleet/v1/generated/validators/mcpServerResource.zod.js +6 -3
  120. package/dist/fleet/v1/generated/validators/mcpToolList.zod.d.ts +6 -3
  121. package/dist/fleet/v1/generated/validators/mcpToolList.zod.js +6 -3
  122. package/dist/fleet/v1/generated/validators/mcpToolResource.zod.d.ts +6 -3
  123. package/dist/fleet/v1/generated/validators/mcpToolResource.zod.js +6 -3
  124. package/dist/fleet/v1/generated/validators/mcpTransport.zod.d.ts +6 -3
  125. package/dist/fleet/v1/generated/validators/mcpTransport.zod.js +6 -3
  126. package/dist/fleet/v1/generated/validators/mcpUnavailableServer.zod.d.ts +6 -3
  127. package/dist/fleet/v1/generated/validators/mcpUnavailableServer.zod.js +6 -3
  128. package/dist/fleet/v1/generated/validators/migrationStep.zod.d.ts +6 -3
  129. package/dist/fleet/v1/generated/validators/migrationStep.zod.js +6 -3
  130. package/dist/fleet/v1/generated/validators/namedIdentity.zod.d.ts +6 -3
  131. package/dist/fleet/v1/generated/validators/namedIdentity.zod.js +6 -3
  132. package/dist/fleet/v1/generated/validators/offsetPagination.zod.d.ts +6 -3
  133. package/dist/fleet/v1/generated/validators/offsetPagination.zod.js +6 -3
  134. package/dist/fleet/v1/generated/validators/operatingSystem.zod.d.ts +6 -3
  135. package/dist/fleet/v1/generated/validators/operatingSystem.zod.js +6 -3
  136. package/dist/fleet/v1/generated/validators/participantList.zod.d.ts +6 -3
  137. package/dist/fleet/v1/generated/validators/participantList.zod.js +6 -3
  138. package/dist/fleet/v1/generated/validators/participantResource.zod.d.ts +6 -3
  139. package/dist/fleet/v1/generated/validators/participantResource.zod.js +6 -3
  140. package/dist/fleet/v1/generated/validators/peerConnection.zod.d.ts +8 -3
  141. package/dist/fleet/v1/generated/validators/peerConnection.zod.js +12 -4
  142. package/dist/fleet/v1/generated/validators/privilegeAutoApprovalList.zod.d.ts +6 -3
  143. package/dist/fleet/v1/generated/validators/privilegeAutoApprovalList.zod.js +6 -3
  144. package/dist/fleet/v1/generated/validators/privilegeAutoApprovalMode.zod.d.ts +6 -3
  145. package/dist/fleet/v1/generated/validators/privilegeAutoApprovalMode.zod.js +6 -3
  146. package/dist/fleet/v1/generated/validators/privilegeAutoApprovalResource.zod.d.ts +6 -3
  147. package/dist/fleet/v1/generated/validators/privilegeAutoApprovalResource.zod.js +6 -3
  148. package/dist/fleet/v1/generated/validators/privilegeDecider.zod.d.ts +6 -3
  149. package/dist/fleet/v1/generated/validators/privilegeDecider.zod.js +6 -3
  150. package/dist/fleet/v1/generated/validators/privilegeRequestList.zod.d.ts +6 -3
  151. package/dist/fleet/v1/generated/validators/privilegeRequestList.zod.js +6 -3
  152. package/dist/fleet/v1/generated/validators/privilegeRequestResource.zod.d.ts +6 -3
  153. package/dist/fleet/v1/generated/validators/privilegeRequestResource.zod.js +6 -3
  154. package/dist/fleet/v1/generated/validators/privilegeRequestState.zod.d.ts +6 -3
  155. package/dist/fleet/v1/generated/validators/privilegeRequestState.zod.js +6 -3
  156. package/dist/fleet/v1/generated/validators/publicKey.zod.d.ts +6 -3
  157. package/dist/fleet/v1/generated/validators/publicKey.zod.js +6 -3
  158. package/dist/fleet/v1/generated/validators/renewParticipantRequest.zod.d.ts +6 -3
  159. package/dist/fleet/v1/generated/validators/renewParticipantRequest.zod.js +6 -3
  160. package/dist/fleet/v1/generated/validators/renewParticipantResponse.zod.d.ts +6 -3
  161. package/dist/fleet/v1/generated/validators/renewParticipantResponse.zod.js +6 -3
  162. package/dist/fleet/v1/generated/validators/replaceMcpConfigurationRequest.zod.d.ts +6 -3
  163. package/dist/fleet/v1/generated/validators/replaceMcpConfigurationRequest.zod.js +6 -3
  164. package/dist/fleet/v1/generated/validators/rtcConfiguration.zod.d.ts +6 -3
  165. package/dist/fleet/v1/generated/validators/rtcConfiguration.zod.js +6 -3
  166. package/dist/fleet/v1/generated/validators/runCommandRequest.zod.d.ts +6 -3
  167. package/dist/fleet/v1/generated/validators/runCommandRequest.zod.js +6 -3
  168. package/dist/fleet/v1/generated/validators/runCommandResponse.zod.d.ts +6 -3
  169. package/dist/fleet/v1/generated/validators/runCommandResponse.zod.js +6 -3
  170. package/dist/fleet/v1/generated/validators/sendMcpRequestRequest.zod.d.ts +6 -3
  171. package/dist/fleet/v1/generated/validators/sendMcpRequestRequest.zod.js +6 -3
  172. package/dist/fleet/v1/generated/validators/sendMcpRequestResponse.zod.d.ts +6 -3
  173. package/dist/fleet/v1/generated/validators/sendMcpRequestResponse.zod.js +6 -3
  174. package/dist/fleet/v1/generated/validators/sessionCloseReason.zod.d.ts +6 -3
  175. package/dist/fleet/v1/generated/validators/sessionCloseReason.zod.js +6 -3
  176. package/dist/fleet/v1/generated/validators/sessionList.zod.d.ts +6 -3
  177. package/dist/fleet/v1/generated/validators/sessionList.zod.js +6 -3
  178. package/dist/fleet/v1/generated/validators/sessionMode.zod.d.ts +6 -3
  179. package/dist/fleet/v1/generated/validators/sessionMode.zod.js +6 -3
  180. package/dist/fleet/v1/generated/validators/sessionResource.zod.d.ts +6 -3
  181. package/dist/fleet/v1/generated/validators/sessionResource.zod.js +6 -3
  182. package/dist/fleet/v1/generated/validators/sessionState.zod.d.ts +6 -3
  183. package/dist/fleet/v1/generated/validators/sessionState.zod.js +6 -3
  184. package/dist/fleet/v1/generated/validators/signedMessage.zod.d.ts +6 -3
  185. package/dist/fleet/v1/generated/validators/signedMessage.zod.js +6 -3
  186. package/dist/fleet/v1/generated/validators/signingKey.zod.d.ts +6 -3
  187. package/dist/fleet/v1/generated/validators/signingKey.zod.js +6 -3
  188. package/dist/fleet/v1/generated/validators/updateAccountRequest.zod.d.ts +6 -3
  189. package/dist/fleet/v1/generated/validators/updateAccountRequest.zod.js +6 -3
  190. package/dist/fleet/v1/generated/validators/updateGroupRequest.zod.d.ts +6 -3
  191. package/dist/fleet/v1/generated/validators/updateGroupRequest.zod.js +6 -3
  192. package/dist/fleet/v1/generated/validators/updateMachineRequest.zod.d.ts +6 -3
  193. package/dist/fleet/v1/generated/validators/updateMachineRequest.zod.js +6 -3
  194. package/dist/fleet/v1/generated/validators/updateMcpServerRequest.zod.d.ts +6 -3
  195. package/dist/fleet/v1/generated/validators/updateMcpServerRequest.zod.js +6 -3
  196. package/dist/fleet/v1/generated/validators/updateMcpServerResponse.zod.d.ts +6 -3
  197. package/dist/fleet/v1/generated/validators/updateMcpServerResponse.zod.js +6 -3
  198. package/dist/fleet/v1/generated/validators/updatePrivilegeAutoApprovalRequest.zod.d.ts +6 -3
  199. package/dist/fleet/v1/generated/validators/updatePrivilegeAutoApprovalRequest.zod.js +6 -3
  200. package/dist/proto/leaflow/fleet/control/v1/control_pb.d.ts +13 -0
  201. package/dist/proto/leaflow/fleet/control/v1/control_pb.js +1 -1
  202. package/dist/proto/leaflow/fleet/terminal/v1/terminal_pb.d.ts +42 -0
  203. package/dist/proto/leaflow/fleet/terminal/v1/terminal_pb.js +10 -5
  204. package/dist/proto/leaflow/fleet/transport/v1/transport_pb.d.ts +6 -6
  205. package/dist/routes.d.ts +8 -0
  206. package/dist/routes.js +9 -0
  207. package/package.json +1 -1
@@ -201,9 +201,12 @@
201
201
  * one second has passed, so that the offer carries them.
202
202
  * 3. Join with `POST /api/v1/sessions/{sessionId}/participants`, sending the public key and the
203
203
  * offer. The answer carries the participant's signed authorization, the keys the service
204
- * signs with, and the first PeerConnection: the session's SDP answer, its ICE candidates and
205
- * the signed PeerAuthorization. Pass candidates gathered later with
206
- * `POST …/participants/{participantId}/peer-connections/{peerConnectionId}/candidates`.
204
+ * signs with, and the first PeerConnection: the session's SDP answer, the ICE candidates it
205
+ * has passed so far and the signed PeerAuthorization. Pass candidates gathered later with
206
+ * `POST …/participants/{participantId}/peer-connections/{peerConnectionId}/candidates`, and
207
+ * read the session's later ones with
208
+ * `GET …/participants/{participantId}/peer-connections/{peerConnectionId}` until
209
+ * `candidates_complete`.
207
210
  * 4. Renew the participant with `POST …/participants/{participantId}:renew` well before
208
211
  * `lease_expires_at`, every 15 seconds, presenting the PeerAuthorization of each
209
212
  * PeerConnection; the answer renews them. A participant whose lease runs out ends, and its
@@ -201,9 +201,12 @@
201
201
  * one second has passed, so that the offer carries them.
202
202
  * 3. Join with `POST /api/v1/sessions/{sessionId}/participants`, sending the public key and the
203
203
  * offer. The answer carries the participant's signed authorization, the keys the service
204
- * signs with, and the first PeerConnection: the session's SDP answer, its ICE candidates and
205
- * the signed PeerAuthorization. Pass candidates gathered later with
206
- * `POST …/participants/{participantId}/peer-connections/{peerConnectionId}/candidates`.
204
+ * signs with, and the first PeerConnection: the session's SDP answer, the ICE candidates it
205
+ * has passed so far and the signed PeerAuthorization. Pass candidates gathered later with
206
+ * `POST …/participants/{participantId}/peer-connections/{peerConnectionId}/candidates`, and
207
+ * read the session's later ones with
208
+ * `GET …/participants/{participantId}/peer-connections/{peerConnectionId}` until
209
+ * `candidates_complete`.
207
210
  * 4. Renew the participant with `POST …/participants/{participantId}:renew` well before
208
211
  * `lease_expires_at`, every 15 seconds, presenting the PeerAuthorization of each
209
212
  * PeerConnection; the answer renews them. A participant whose lease runs out ends, and its
@@ -201,9 +201,12 @@
201
201
  * one second has passed, so that the offer carries them.
202
202
  * 3. Join with `POST /api/v1/sessions/{sessionId}/participants`, sending the public key and the
203
203
  * offer. The answer carries the participant's signed authorization, the keys the service
204
- * signs with, and the first PeerConnection: the session's SDP answer, its ICE candidates and
205
- * the signed PeerAuthorization. Pass candidates gathered later with
206
- * `POST …/participants/{participantId}/peer-connections/{peerConnectionId}/candidates`.
204
+ * signs with, and the first PeerConnection: the session's SDP answer, the ICE candidates it
205
+ * has passed so far and the signed PeerAuthorization. Pass candidates gathered later with
206
+ * `POST …/participants/{participantId}/peer-connections/{peerConnectionId}/candidates`, and
207
+ * read the session's later ones with
208
+ * `GET …/participants/{participantId}/peer-connections/{peerConnectionId}` until
209
+ * `candidates_complete`.
207
210
  * 4. Renew the participant with `POST …/participants/{participantId}:renew` well before
208
211
  * `lease_expires_at`, every 15 seconds, presenting the PeerAuthorization of each
209
212
  * PeerConnection; the answer renews them. A participant whose lease runs out ends, and its
@@ -201,9 +201,12 @@
201
201
  * one second has passed, so that the offer carries them.
202
202
  * 3. Join with `POST /api/v1/sessions/{sessionId}/participants`, sending the public key and the
203
203
  * offer. The answer carries the participant's signed authorization, the keys the service
204
- * signs with, and the first PeerConnection: the session's SDP answer, its ICE candidates and
205
- * the signed PeerAuthorization. Pass candidates gathered later with
206
- * `POST …/participants/{participantId}/peer-connections/{peerConnectionId}/candidates`.
204
+ * signs with, and the first PeerConnection: the session's SDP answer, the ICE candidates it
205
+ * has passed so far and the signed PeerAuthorization. Pass candidates gathered later with
206
+ * `POST …/participants/{participantId}/peer-connections/{peerConnectionId}/candidates`, and
207
+ * read the session's later ones with
208
+ * `GET …/participants/{participantId}/peer-connections/{peerConnectionId}` until
209
+ * `candidates_complete`.
207
210
  * 4. Renew the participant with `POST …/participants/{participantId}:renew` well before
208
211
  * `lease_expires_at`, every 15 seconds, presenting the PeerAuthorization of each
209
212
  * PeerConnection; the answer renews them. A participant whose lease runs out ends, and its
@@ -201,9 +201,12 @@
201
201
  * one second has passed, so that the offer carries them.
202
202
  * 3. Join with `POST /api/v1/sessions/{sessionId}/participants`, sending the public key and the
203
203
  * offer. The answer carries the participant's signed authorization, the keys the service
204
- * signs with, and the first PeerConnection: the session's SDP answer, its ICE candidates and
205
- * the signed PeerAuthorization. Pass candidates gathered later with
206
- * `POST …/participants/{participantId}/peer-connections/{peerConnectionId}/candidates`.
204
+ * signs with, and the first PeerConnection: the session's SDP answer, the ICE candidates it
205
+ * has passed so far and the signed PeerAuthorization. Pass candidates gathered later with
206
+ * `POST …/participants/{participantId}/peer-connections/{peerConnectionId}/candidates`, and
207
+ * read the session's later ones with
208
+ * `GET …/participants/{participantId}/peer-connections/{peerConnectionId}` until
209
+ * `candidates_complete`.
207
210
  * 4. Renew the participant with `POST …/participants/{participantId}:renew` well before
208
211
  * `lease_expires_at`, every 15 seconds, presenting the PeerAuthorization of each
209
212
  * PeerConnection; the answer renews them. A participant whose lease runs out ends, and its
@@ -201,9 +201,12 @@
201
201
  * one second has passed, so that the offer carries them.
202
202
  * 3. Join with `POST /api/v1/sessions/{sessionId}/participants`, sending the public key and the
203
203
  * offer. The answer carries the participant's signed authorization, the keys the service
204
- * signs with, and the first PeerConnection: the session's SDP answer, its ICE candidates and
205
- * the signed PeerAuthorization. Pass candidates gathered later with
206
- * `POST …/participants/{participantId}/peer-connections/{peerConnectionId}/candidates`.
204
+ * signs with, and the first PeerConnection: the session's SDP answer, the ICE candidates it
205
+ * has passed so far and the signed PeerAuthorization. Pass candidates gathered later with
206
+ * `POST …/participants/{participantId}/peer-connections/{peerConnectionId}/candidates`, and
207
+ * read the session's later ones with
208
+ * `GET …/participants/{participantId}/peer-connections/{peerConnectionId}` until
209
+ * `candidates_complete`.
207
210
  * 4. Renew the participant with `POST …/participants/{participantId}:renew` well before
208
211
  * `lease_expires_at`, every 15 seconds, presenting the PeerAuthorization of each
209
212
  * PeerConnection; the answer renews them. A participant whose lease runs out ends, and its
@@ -201,9 +201,12 @@
201
201
  * one second has passed, so that the offer carries them.
202
202
  * 3. Join with `POST /api/v1/sessions/{sessionId}/participants`, sending the public key and the
203
203
  * offer. The answer carries the participant's signed authorization, the keys the service
204
- * signs with, and the first PeerConnection: the session's SDP answer, its ICE candidates and
205
- * the signed PeerAuthorization. Pass candidates gathered later with
206
- * `POST …/participants/{participantId}/peer-connections/{peerConnectionId}/candidates`.
204
+ * signs with, and the first PeerConnection: the session's SDP answer, the ICE candidates it
205
+ * has passed so far and the signed PeerAuthorization. Pass candidates gathered later with
206
+ * `POST …/participants/{participantId}/peer-connections/{peerConnectionId}/candidates`, and
207
+ * read the session's later ones with
208
+ * `GET …/participants/{participantId}/peer-connections/{peerConnectionId}` until
209
+ * `candidates_complete`.
207
210
  * 4. Renew the participant with `POST …/participants/{participantId}:renew` well before
208
211
  * `lease_expires_at`, every 15 seconds, presenting the PeerAuthorization of each
209
212
  * PeerConnection; the answer renews them. A participant whose lease runs out ends, and its
@@ -201,9 +201,12 @@
201
201
  * one second has passed, so that the offer carries them.
202
202
  * 3. Join with `POST /api/v1/sessions/{sessionId}/participants`, sending the public key and the
203
203
  * offer. The answer carries the participant's signed authorization, the keys the service
204
- * signs with, and the first PeerConnection: the session's SDP answer, its ICE candidates and
205
- * the signed PeerAuthorization. Pass candidates gathered later with
206
- * `POST …/participants/{participantId}/peer-connections/{peerConnectionId}/candidates`.
204
+ * signs with, and the first PeerConnection: the session's SDP answer, the ICE candidates it
205
+ * has passed so far and the signed PeerAuthorization. Pass candidates gathered later with
206
+ * `POST …/participants/{participantId}/peer-connections/{peerConnectionId}/candidates`, and
207
+ * read the session's later ones with
208
+ * `GET …/participants/{participantId}/peer-connections/{peerConnectionId}` until
209
+ * `candidates_complete`.
207
210
  * 4. Renew the participant with `POST …/participants/{participantId}:renew` well before
208
211
  * `lease_expires_at`, every 15 seconds, presenting the PeerAuthorization of each
209
212
  * PeerConnection; the answer renews them. A participant whose lease runs out ends, and its
@@ -201,9 +201,12 @@
201
201
  * one second has passed, so that the offer carries them.
202
202
  * 3. Join with `POST /api/v1/sessions/{sessionId}/participants`, sending the public key and the
203
203
  * offer. The answer carries the participant's signed authorization, the keys the service
204
- * signs with, and the first PeerConnection: the session's SDP answer, its ICE candidates and
205
- * the signed PeerAuthorization. Pass candidates gathered later with
206
- * `POST …/participants/{participantId}/peer-connections/{peerConnectionId}/candidates`.
204
+ * signs with, and the first PeerConnection: the session's SDP answer, the ICE candidates it
205
+ * has passed so far and the signed PeerAuthorization. Pass candidates gathered later with
206
+ * `POST …/participants/{participantId}/peer-connections/{peerConnectionId}/candidates`, and
207
+ * read the session's later ones with
208
+ * `GET …/participants/{participantId}/peer-connections/{peerConnectionId}` until
209
+ * `candidates_complete`.
207
210
  * 4. Renew the participant with `POST …/participants/{participantId}:renew` well before
208
211
  * `lease_expires_at`, every 15 seconds, presenting the PeerAuthorization of each
209
212
  * PeerConnection; the answer renews them. A participant whose lease runs out ends, and its
@@ -201,9 +201,12 @@
201
201
  * one second has passed, so that the offer carries them.
202
202
  * 3. Join with `POST /api/v1/sessions/{sessionId}/participants`, sending the public key and the
203
203
  * offer. The answer carries the participant's signed authorization, the keys the service
204
- * signs with, and the first PeerConnection: the session's SDP answer, its ICE candidates and
205
- * the signed PeerAuthorization. Pass candidates gathered later with
206
- * `POST …/participants/{participantId}/peer-connections/{peerConnectionId}/candidates`.
204
+ * signs with, and the first PeerConnection: the session's SDP answer, the ICE candidates it
205
+ * has passed so far and the signed PeerAuthorization. Pass candidates gathered later with
206
+ * `POST …/participants/{participantId}/peer-connections/{peerConnectionId}/candidates`, and
207
+ * read the session's later ones with
208
+ * `GET …/participants/{participantId}/peer-connections/{peerConnectionId}` until
209
+ * `candidates_complete`.
207
210
  * 4. Renew the participant with `POST …/participants/{participantId}:renew` well before
208
211
  * `lease_expires_at`, every 15 seconds, presenting the PeerAuthorization of each
209
212
  * PeerConnection; the answer renews them. A participant whose lease runs out ends, and its
@@ -201,9 +201,12 @@
201
201
  * one second has passed, so that the offer carries them.
202
202
  * 3. Join with `POST /api/v1/sessions/{sessionId}/participants`, sending the public key and the
203
203
  * offer. The answer carries the participant's signed authorization, the keys the service
204
- * signs with, and the first PeerConnection: the session's SDP answer, its ICE candidates and
205
- * the signed PeerAuthorization. Pass candidates gathered later with
206
- * `POST …/participants/{participantId}/peer-connections/{peerConnectionId}/candidates`.
204
+ * signs with, and the first PeerConnection: the session's SDP answer, the ICE candidates it
205
+ * has passed so far and the signed PeerAuthorization. Pass candidates gathered later with
206
+ * `POST …/participants/{participantId}/peer-connections/{peerConnectionId}/candidates`, and
207
+ * read the session's later ones with
208
+ * `GET …/participants/{participantId}/peer-connections/{peerConnectionId}` until
209
+ * `candidates_complete`.
207
210
  * 4. Renew the participant with `POST …/participants/{participantId}:renew` well before
208
211
  * `lease_expires_at`, every 15 seconds, presenting the PeerAuthorization of each
209
212
  * PeerConnection; the answer renews them. A participant whose lease runs out ends, and its
@@ -201,9 +201,12 @@
201
201
  * one second has passed, so that the offer carries them.
202
202
  * 3. Join with `POST /api/v1/sessions/{sessionId}/participants`, sending the public key and the
203
203
  * offer. The answer carries the participant's signed authorization, the keys the service
204
- * signs with, and the first PeerConnection: the session's SDP answer, its ICE candidates and
205
- * the signed PeerAuthorization. Pass candidates gathered later with
206
- * `POST …/participants/{participantId}/peer-connections/{peerConnectionId}/candidates`.
204
+ * signs with, and the first PeerConnection: the session's SDP answer, the ICE candidates it
205
+ * has passed so far and the signed PeerAuthorization. Pass candidates gathered later with
206
+ * `POST …/participants/{participantId}/peer-connections/{peerConnectionId}/candidates`, and
207
+ * read the session's later ones with
208
+ * `GET …/participants/{participantId}/peer-connections/{peerConnectionId}` until
209
+ * `candidates_complete`.
207
210
  * 4. Renew the participant with `POST …/participants/{participantId}:renew` well before
208
211
  * `lease_expires_at`, every 15 seconds, presenting the PeerAuthorization of each
209
212
  * PeerConnection; the answer renews them. A participant whose lease runs out ends, and its
@@ -201,9 +201,12 @@
201
201
  * one second has passed, so that the offer carries them.
202
202
  * 3. Join with `POST /api/v1/sessions/{sessionId}/participants`, sending the public key and the
203
203
  * offer. The answer carries the participant's signed authorization, the keys the service
204
- * signs with, and the first PeerConnection: the session's SDP answer, its ICE candidates and
205
- * the signed PeerAuthorization. Pass candidates gathered later with
206
- * `POST …/participants/{participantId}/peer-connections/{peerConnectionId}/candidates`.
204
+ * signs with, and the first PeerConnection: the session's SDP answer, the ICE candidates it
205
+ * has passed so far and the signed PeerAuthorization. Pass candidates gathered later with
206
+ * `POST …/participants/{participantId}/peer-connections/{peerConnectionId}/candidates`, and
207
+ * read the session's later ones with
208
+ * `GET …/participants/{participantId}/peer-connections/{peerConnectionId}` until
209
+ * `candidates_complete`.
207
210
  * 4. Renew the participant with `POST …/participants/{participantId}:renew` well before
208
211
  * `lease_expires_at`, every 15 seconds, presenting the PeerAuthorization of each
209
212
  * PeerConnection; the answer renews them. A participant whose lease runs out ends, and its
@@ -201,9 +201,12 @@
201
201
  * one second has passed, so that the offer carries them.
202
202
  * 3. Join with `POST /api/v1/sessions/{sessionId}/participants`, sending the public key and the
203
203
  * offer. The answer carries the participant's signed authorization, the keys the service
204
- * signs with, and the first PeerConnection: the session's SDP answer, its ICE candidates and
205
- * the signed PeerAuthorization. Pass candidates gathered later with
206
- * `POST …/participants/{participantId}/peer-connections/{peerConnectionId}/candidates`.
204
+ * signs with, and the first PeerConnection: the session's SDP answer, the ICE candidates it
205
+ * has passed so far and the signed PeerAuthorization. Pass candidates gathered later with
206
+ * `POST …/participants/{participantId}/peer-connections/{peerConnectionId}/candidates`, and
207
+ * read the session's later ones with
208
+ * `GET …/participants/{participantId}/peer-connections/{peerConnectionId}` until
209
+ * `candidates_complete`.
207
210
  * 4. Renew the participant with `POST …/participants/{participantId}:renew` well before
208
211
  * `lease_expires_at`, every 15 seconds, presenting the PeerAuthorization of each
209
212
  * PeerConnection; the answer renews them. A participant whose lease runs out ends, and its
@@ -201,9 +201,12 @@
201
201
  * one second has passed, so that the offer carries them.
202
202
  * 3. Join with `POST /api/v1/sessions/{sessionId}/participants`, sending the public key and the
203
203
  * offer. The answer carries the participant's signed authorization, the keys the service
204
- * signs with, and the first PeerConnection: the session's SDP answer, its ICE candidates and
205
- * the signed PeerAuthorization. Pass candidates gathered later with
206
- * `POST …/participants/{participantId}/peer-connections/{peerConnectionId}/candidates`.
204
+ * signs with, and the first PeerConnection: the session's SDP answer, the ICE candidates it
205
+ * has passed so far and the signed PeerAuthorization. Pass candidates gathered later with
206
+ * `POST …/participants/{participantId}/peer-connections/{peerConnectionId}/candidates`, and
207
+ * read the session's later ones with
208
+ * `GET …/participants/{participantId}/peer-connections/{peerConnectionId}` until
209
+ * `candidates_complete`.
207
210
  * 4. Renew the participant with `POST …/participants/{participantId}:renew` well before
208
211
  * `lease_expires_at`, every 15 seconds, presenting the PeerAuthorization of each
209
212
  * PeerConnection; the answer renews them. A participant whose lease runs out ends, and its
@@ -201,9 +201,12 @@
201
201
  * one second has passed, so that the offer carries them.
202
202
  * 3. Join with `POST /api/v1/sessions/{sessionId}/participants`, sending the public key and the
203
203
  * offer. The answer carries the participant's signed authorization, the keys the service
204
- * signs with, and the first PeerConnection: the session's SDP answer, its ICE candidates and
205
- * the signed PeerAuthorization. Pass candidates gathered later with
206
- * `POST …/participants/{participantId}/peer-connections/{peerConnectionId}/candidates`.
204
+ * signs with, and the first PeerConnection: the session's SDP answer, the ICE candidates it
205
+ * has passed so far and the signed PeerAuthorization. Pass candidates gathered later with
206
+ * `POST …/participants/{participantId}/peer-connections/{peerConnectionId}/candidates`, and
207
+ * read the session's later ones with
208
+ * `GET …/participants/{participantId}/peer-connections/{peerConnectionId}` until
209
+ * `candidates_complete`.
207
210
  * 4. Renew the participant with `POST …/participants/{participantId}:renew` well before
208
211
  * `lease_expires_at`, every 15 seconds, presenting the PeerAuthorization of each
209
212
  * PeerConnection; the answer renews them. A participant whose lease runs out ends, and its
@@ -201,9 +201,12 @@
201
201
  * one second has passed, so that the offer carries them.
202
202
  * 3. Join with `POST /api/v1/sessions/{sessionId}/participants`, sending the public key and the
203
203
  * offer. The answer carries the participant's signed authorization, the keys the service
204
- * signs with, and the first PeerConnection: the session's SDP answer, its ICE candidates and
205
- * the signed PeerAuthorization. Pass candidates gathered later with
206
- * `POST …/participants/{participantId}/peer-connections/{peerConnectionId}/candidates`.
204
+ * signs with, and the first PeerConnection: the session's SDP answer, the ICE candidates it
205
+ * has passed so far and the signed PeerAuthorization. Pass candidates gathered later with
206
+ * `POST …/participants/{participantId}/peer-connections/{peerConnectionId}/candidates`, and
207
+ * read the session's later ones with
208
+ * `GET …/participants/{participantId}/peer-connections/{peerConnectionId}` until
209
+ * `candidates_complete`.
207
210
  * 4. Renew the participant with `POST …/participants/{participantId}:renew` well before
208
211
  * `lease_expires_at`, every 15 seconds, presenting the PeerAuthorization of each
209
212
  * PeerConnection; the answer renews them. A participant whose lease runs out ends, and its
@@ -561,6 +561,19 @@ export type Welcome = Message<"leaflow.fleet.control.v1.Welcome"> & {
561
561
  * @generated from field: bool resumed = 6;
562
562
  */
563
563
  resumed: boolean;
564
+ /**
565
+ * The STUN servers (RFC 7064 stun: URLs) from which a session process learns
566
+ * its server-reflexive addresses ahead of its PeerConnections. A session
567
+ * process shares one UDP socket per address family among its PeerConnections,
568
+ * asks these servers for the socket's mapping when it starts and again at
569
+ * most every 20 seconds, which also keeps the mapping alive, and gives each
570
+ * PeerConnection the known address as its srflx candidate at once instead of
571
+ * asking the servers again. Session processes only; empty when
572
+ * PeerConnections relay only.
573
+ *
574
+ * @generated from field: repeated string stun_urls = 7;
575
+ */
576
+ stunUrls: string[];
564
577
  };
565
578
  /**
566
579
  * Describes the message leaflow.fleet.control.v1.Welcome.
@@ -8,7 +8,7 @@ import { file_leaflow_fleet_transport_v1_transport } from "../../transport/v1/tr
8
8
  /**
9
9
  * Describes the file leaflow/fleet/control/v1/control.proto.
10
10
  */
11
- export const file_leaflow_fleet_control_v1_control = /*@__PURE__*/ fileDesc("CiZsZWFmbG93L2ZsZWV0L2NvbnRyb2wvdjEvY29udHJvbC5wcm90bxIYbGVhZmxvdy5mbGVldC5jb250cm9sLnYxIrMECg1DbGllbnRNZXNzYWdlEj0KDGNsaWVudF9oZWxsbxgBIAEoCzIlLmxlYWZsb3cuZmxlZXQuY29udHJvbC52MS5DbGllbnRIZWxsb0gAEi4KBHBpbmcYAiABKAsyHi5sZWFmbG93LmZsZWV0LmNvbnRyb2wudjEuUGluZ0gAEi4KBHBvbmcYAyABKAsyHi5sZWFmbG93LmZsZWV0LmNvbnRyb2wudjEuUG9uZ0gAEioKBGNhbGwYBCABKAsyGi5sZWFmbG93LmZsZWV0LnJwYy52MS5DYWxsSAASNwoLY2FsbF9yZXN1bHQYBSABKAsyIC5sZWFmbG93LmZsZWV0LnJwYy52MS5DYWxsUmVzdWx0SAASNwoLY2FsbF9jYW5jZWwYBiABKAsyIC5sZWFmbG93LmZsZWV0LnJwYy52MS5DYWxsQ2FuY2VsSAASNAoGc2lnbmFsGAcgASgLMiIubGVhZmxvdy5mbGVldC50cmFuc3BvcnQudjEuU2lnbmFsSAASOgoJbWlncmF0aW9uGAggASgLMiUubGVhZmxvdy5mbGVldC50cmFuc3BvcnQudjEuTWlncmF0aW9uSAASMAoFY2xvc2UYCSABKAsyHy5sZWFmbG93LmZsZWV0LmNvbnRyb2wudjEuQ2xvc2VIABI2CghmcmFnbWVudBgKIAEoCzIiLmxlYWZsb3cuZmxlZXQuY29udHJvbC52MS5GcmFnbWVudEgAQgkKB21lc3NhZ2UiqAUKDVNlcnZlck1lc3NhZ2USPQoMc2VydmVyX2hlbGxvGAEgASgLMiUubGVhZmxvdy5mbGVldC5jb250cm9sLnYxLlNlcnZlckhlbGxvSAASNAoHd2VsY29tZRgCIAEoCzIhLmxlYWZsb3cuZmxlZXQuY29udHJvbC52MS5XZWxjb21lSAASLgoEcGluZxgDIAEoCzIeLmxlYWZsb3cuZmxlZXQuY29udHJvbC52MS5QaW5nSAASLgoEcG9uZxgEIAEoCzIeLmxlYWZsb3cuZmxlZXQuY29udHJvbC52MS5Qb25nSAASKgoEY2FsbBgFIAEoCzIaLmxlYWZsb3cuZmxlZXQucnBjLnYxLkNhbGxIABI3CgtjYWxsX3Jlc3VsdBgGIAEoCzIgLmxlYWZsb3cuZmxlZXQucnBjLnYxLkNhbGxSZXN1bHRIABI3CgtjYWxsX2NhbmNlbBgHIAEoCzIgLmxlYWZsb3cuZmxlZXQucnBjLnYxLkNhbGxDYW5jZWxIABI0CgZzaWduYWwYCCABKAsyIi5sZWFmbG93LmZsZWV0LnRyYW5zcG9ydC52MS5TaWduYWxIABI6CgltaWdyYXRpb24YCSABKAsyJS5sZWFmbG93LmZsZWV0LnRyYW5zcG9ydC52MS5NaWdyYXRpb25IABI9CgxzaWduaW5nX2tleXMYCiABKAsyJS5sZWFmbG93LmZsZWV0LmNvbnRyb2wudjEuU2lnbmluZ0tleXNIABIwCgVjbG9zZRgLIAEoCzIfLmxlYWZsb3cuZmxlZXQuY29udHJvbC52MS5DbG9zZUgAEjYKCGZyYWdtZW50GAwgASgLMiIubGVhZmxvdy5mbGVldC5jb250cm9sLnYxLkZyYWdtZW50SABCCQoHbWVzc2FnZSKtAgoLU2VydmVySGVsbG8SDgoGaXNzdWVyGAEgASgJEhEKCWNoYWxsZW5nZRgCIAEoDBIwCg1waW5nX2ludGVydmFsGAMgASgLMhkuZ29vZ2xlLnByb3RvYnVmLkR1cmF0aW9uEi8KDGlkbGVfdGltZW91dBgEIAEoCzIZLmdvb2dsZS5wcm90b2J1Zi5EdXJhdGlvbhIYChBtYXhfbWVzc2FnZV9zaXplGAUgASgNEhwKFG1heF9jb25jdXJyZW50X2NhbGxzGAYgASgNEhsKE21lc3NhZ2VzX3Blcl9zZWNvbmQYByABKA0SFQoNbWVzc2FnZV9idXJzdBgIIAEoDRIYChBieXRlc19wZXJfc2Vjb25kGAkgASgNEhIKCmJ5dGVfYnVyc3QYCiABKA0iqAIKC0NsaWVudEhlbGxvEj4KB21hY2hpbmUYASABKAsyKy5sZWFmbG93LmZsZWV0LmNvbnRyb2wudjEuTWFjaGluZUNyZWRlbnRpYWxIABJECgplbnJvbGxtZW50GAIgASgLMi4ubGVhZmxvdy5mbGVldC5jb250cm9sLnYxLkVucm9sbG1lbnRDcmVkZW50aWFsSAASPgoHc2Vzc2lvbhgDIAEoCzIrLmxlYWZsb3cuZmxlZXQuY29udHJvbC52MS5TZXNzaW9uQ3JlZGVudGlhbEgAEhIKCnVzZXJfYWdlbnQYBSABKAkSEwoLaW5zdGFuY2VfaWQYBiABKAwSHAoUcmVjZWl2ZWRfcmVxdWVzdF9pZHMYByADKAlCDAoKY3JlZGVudGlhbCI6ChFNYWNoaW5lQ3JlZGVudGlhbBISCgptYWNoaW5lX2lkGAEgASgJEhEKCXNpZ25hdHVyZRgCIAEoDCI9ChRFbnJvbGxtZW50Q3JlZGVudGlhbBISCgpwdWJsaWNfa2V5GAEgASgMEhEKCXNpZ25hdHVyZRgCIAEoDCJYChFTZXNzaW9uQ3JlZGVudGlhbBISCgpkZWxlZ2F0aW9uGAEgASgMEhwKFGRlbGVnYXRpb25fc2lnbmF0dXJlGAIgASgMEhEKCXNpZ25hdHVyZRgDIAEoDCK2AQoRU2Vzc2lvbkRlbGVnYXRpb24SEgoKbWFjaGluZV9pZBgBIAEoCRISCgpzZXNzaW9uX2lkGAIgASgJEhoKEnNlc3Npb25fcHVibGljX2tleRgDIAEoDBItCglpc3N1ZWRfYXQYBCABKAsyGi5nb29nbGUucHJvdG9idWYuVGltZXN0YW1wEi4KCmV4cGlyZXNfYXQYBSABKAsyGi5nb29nbGUucHJvdG9idWYuVGltZXN0YW1wIscBCgdXZWxjb21lEhUKDWNvbm5lY3Rpb25faWQYASABKAQSEgoKbWFjaGluZV9pZBgCIAEoCRISCgpzZXNzaW9uX2lkGAMgASgJEjsKDHNpZ25pbmdfa2V5cxgEIAEoCzIlLmxlYWZsb3cuZmxlZXQuY29udHJvbC52MS5TaWduaW5nS2V5cxIvCgxyZXN1bWVfZ3JhY2UYBSABKAsyGS5nb29nbGUucHJvdG9idWYuRHVyYXRpb24SDwoHcmVzdW1lZBgGIAEoCCJACgtTaWduaW5nS2V5cxIxCgRrZXlzGAEgAygLMiMubGVhZmxvdy5mbGVldC5jb250cm9sLnYxLlB1YmxpY0tleSI1CglQdWJsaWNLZXkSDgoGa2V5X2lkGAEgASgJEhEKB2VkMjU1MTkYAiABKAxIAEIFCgNrZXki1QIKDUF1dGhvcml6YXRpb24SDgoGaXNzdWVyGAEgASgJEhIKCm1hY2hpbmVfaWQYAiABKAkSEgoKc2Vzc2lvbl9pZBgDIAEoCRIWCg5wYXJ0aWNpcGFudF9pZBgEIAEoBBIPCgd1c2VyX2lkGAUgASgJEhQKDGRpc3BsYXlfbmFtZRgGIAEoCRITCgtjbGllbnRfbmFtZRgHIAEoCRIeChZwYXJ0aWNpcGFudF9wdWJsaWNfa2V5GAkgASgMEhEKCXJlYWRfb25seRgLIAEoCBImCghwb2xpY2llcxgMIAMoCzIULmdvb2dsZS5wcm90b2J1Zi5BbnkSLQoJaXNzdWVkX2F0GA0gASgLMhouZ29vZ2xlLnByb3RvYnVmLlRpbWVzdGFtcBIuCgpleHBpcmVzX2F0GA4gASgLMhouZ29vZ2xlLnByb3RvYnVmLlRpbWVzdGFtcCJPChNTaWduZWRBdXRob3JpemF0aW9uEg4KBmtleV9pZBgBIAEoCRIVCg1hdXRob3JpemF0aW9uGAIgASgMEhEKCXNpZ25hdHVyZRgDIAEoDCIcCgRQaW5nEhQKDG1vbm90b25pY19tcxgBIAEoBCIcCgRQb25nEhQKDG1vbm90b25pY19tcxgBIAEoBCI7CghGcmFnbWVudBISCgptZXNzYWdlX2lkGAEgASgEEgwKBGRhdGEYAiABKAwSDQoFZmluYWwYAyABKAgihQEKBUNsb3NlEjUKBnJlYXNvbhgBIAEoDjIlLmxlYWZsb3cuZmxlZXQuY29udHJvbC52MS5DbG9zZVJlYXNvbhIVCg1yZWFzb25fcGhyYXNlGAIgASgJEi4KC3JldHJ5X2RlbGF5GAMgASgLMhkuZ29vZ2xlLnByb3RvYnVmLkR1cmF0aW9uImAKGEF0dGFjaFBhcnRpY2lwYW50UmVxdWVzdBJECg1hdXRob3JpemF0aW9uGAEgASgLMi0ubGVhZmxvdy5mbGVldC5jb250cm9sLnYxLlNpZ25lZEF1dGhvcml6YXRpb24iGwoZQXR0YWNoUGFydGljaXBhbnRSZXNwb25zZSJtCiVVcGRhdGVQYXJ0aWNpcGFudEF1dGhvcml6YXRpb25SZXF1ZXN0EkQKDWF1dGhvcml6YXRpb24YASABKAsyLS5sZWFmbG93LmZsZWV0LmNvbnRyb2wudjEuU2lnbmVkQXV0aG9yaXphdGlvbiIoCiZVcGRhdGVQYXJ0aWNpcGFudEF1dGhvcml6YXRpb25SZXNwb25zZSJyChhEZXRhY2hQYXJ0aWNpcGFudFJlcXVlc3QSFgoOcGFydGljaXBhbnRfaWQYASABKAQSPgoGcmVhc29uGAIgASgOMi4ubGVhZmxvdy5mbGVldC5jb250cm9sLnYxLlBhcnRpY2lwYW50RW5kUmVhc29uIhsKGURldGFjaFBhcnRpY2lwYW50UmVzcG9uc2Uq3wQKC0Nsb3NlUmVhc29uEhwKGENMT1NFX1JFQVNPTl9VTlNQRUNJRklFRBAAEhUKEUNMT1NFX1JFQVNPTl9ET05FEAESHAoYQ0xPU0VfUkVBU09OX0NMSUVOVF9FWElUEAISIAocQ0xPU0VfUkVBU09OX1NFUlZFUl9TSFVURE9XThADEh8KG0NMT1NFX1JFQVNPTl9TRVJWRVJfVVBHUkFERRAEEh0KGUNMT1NFX1JFQVNPTl9QSU5HX1RJTUVPVVQQBRIeChpDTE9TRV9SRUFTT05fSEVMTE9fVElNRU9VVBAGEh8KG0NMT1NFX1JFQVNPTl9QUk9UT0NPTF9FUlJPUhAHEiAKHENMT1NFX1JFQVNPTl9NRVNTQUdFX1RPT19CSUcQCBImCiJDTE9TRV9SRUFTT05fQVVUSEVOVElDQVRJT05fRkFJTEVEEAkSIgoeQ0xPU0VfUkVBU09OX1BFUk1JU1NJT05fREVOSUVEEAoSIgoeQ0xPU0VfUkVBU09OX1NFU1NJT05fTk9UX0ZPVU5EEAsSJAogQ0xPU0VfUkVBU09OX0NPTk5FQ1RJT05fUkVQTEFDRUQQDBIdChlDTE9TRV9SRUFTT05fU0VTU0lPTl9FWElUEA0SIQodQ0xPU0VfUkVBU09OX1BPTElDWV9WSU9MQVRJT04QEBIfChtDTE9TRV9SRUFTT05fSU5URVJOQUxfRVJST1IQERIbChdDTE9TRV9SRUFTT05fT1ZFUkxPQURFRBASEiIKHkNMT1NFX1JFQVNPTl9FTkRQT0lOVF9UT09fU0xPVxATKsIEChRQYXJ0aWNpcGFudEVuZFJlYXNvbhImCiJQQVJUSUNJUEFOVF9FTkRfUkVBU09OX1VOU1BFQ0lGSUVEEAASHwobUEFSVElDSVBBTlRfRU5EX1JFQVNPTl9MRUZUEAESIgoeUEFSVElDSVBBTlRfRU5EX1JFQVNPTl9SRU1PVkVEEAISKAokUEFSVElDSVBBTlRfRU5EX1JFQVNPTl9MRUFTRV9FWFBJUkVEEAMSKAokUEFSVElDSVBBTlRfRU5EX1JFQVNPTl9TRVNTSU9OX0VOREVEEAQSLworUEFSVElDSVBBTlRfRU5EX1JFQVNPTl9TRVNTSU9OX1BST0NFU1NfTE9TVBAFEi0KKVBBUlRJQ0lQQU5UX0VORF9SRUFTT05fUEVSTUlTU0lPTl9SRVZPS0VEEAYSKgomUEFSVElDSVBBTlRfRU5EX1JFQVNPTl9NQUNISU5FX1JFTU9WRUQQBxImCiJQQVJUSUNJUEFOVF9FTkRfUkVBU09OX0tFWV9SRVZPS0VEEAgSJwojUEFSVElDSVBBTlRfRU5EX1JFQVNPTl9OT1RfQURNSVRURUQQCRIrCidQQVJUSUNJUEFOVF9FTkRfUkVBU09OX01FTUJFUlNISVBfRU5ERUQQChIoCiRQQVJUSUNJUEFOVF9FTkRfUkVBU09OX1VTRVJfSU5BQ1RJVkUQCxI1CjFQQVJUSUNJUEFOVF9FTkRfUkVBU09OX1BST0pFQ1RfREVMRVRJT05fUkVRVUVTVEVEEAwyxwMKElBhcnRpY2lwYW50U2VydmljZRKBAQoRQXR0YWNoUGFydGljaXBhbnQSMi5sZWFmbG93LmZsZWV0LmNvbnRyb2wudjEuQXR0YWNoUGFydGljaXBhbnRSZXF1ZXN0GjMubGVhZmxvdy5mbGVldC5jb250cm9sLnYxLkF0dGFjaFBhcnRpY2lwYW50UmVzcG9uc2UiA5ACAhKoAQoeVXBkYXRlUGFydGljaXBhbnRBdXRob3JpemF0aW9uEj8ubGVhZmxvdy5mbGVldC5jb250cm9sLnYxLlVwZGF0ZVBhcnRpY2lwYW50QXV0aG9yaXphdGlvblJlcXVlc3QaQC5sZWFmbG93LmZsZWV0LmNvbnRyb2wudjEuVXBkYXRlUGFydGljaXBhbnRBdXRob3JpemF0aW9uUmVzcG9uc2UiA5ACAhKBAQoRRGV0YWNoUGFydGljaXBhbnQSMi5sZWFmbG93LmZsZWV0LmNvbnRyb2wudjEuRGV0YWNoUGFydGljaXBhbnRSZXF1ZXN0GjMubGVhZmxvdy5mbGVldC5jb250cm9sLnYxLkRldGFjaFBhcnRpY2lwYW50UmVzcG9uc2UiA5ACAkI+WjxnaXRodWIuY29tL2xlYWZsb3dhcGlzL2xlYWZsb3ctZ28vZmxlZXQvY29udHJvbC92MTtjb250cm9sdjFiBnByb3RvMw", [file_google_protobuf_any, file_google_protobuf_duration, file_google_protobuf_timestamp, file_leaflow_fleet_rpc_v1_rpc, file_leaflow_fleet_transport_v1_transport]);
11
+ export const file_leaflow_fleet_control_v1_control = /*@__PURE__*/ fileDesc("CiZsZWFmbG93L2ZsZWV0L2NvbnRyb2wvdjEvY29udHJvbC5wcm90bxIYbGVhZmxvdy5mbGVldC5jb250cm9sLnYxIrMECg1DbGllbnRNZXNzYWdlEj0KDGNsaWVudF9oZWxsbxgBIAEoCzIlLmxlYWZsb3cuZmxlZXQuY29udHJvbC52MS5DbGllbnRIZWxsb0gAEi4KBHBpbmcYAiABKAsyHi5sZWFmbG93LmZsZWV0LmNvbnRyb2wudjEuUGluZ0gAEi4KBHBvbmcYAyABKAsyHi5sZWFmbG93LmZsZWV0LmNvbnRyb2wudjEuUG9uZ0gAEioKBGNhbGwYBCABKAsyGi5sZWFmbG93LmZsZWV0LnJwYy52MS5DYWxsSAASNwoLY2FsbF9yZXN1bHQYBSABKAsyIC5sZWFmbG93LmZsZWV0LnJwYy52MS5DYWxsUmVzdWx0SAASNwoLY2FsbF9jYW5jZWwYBiABKAsyIC5sZWFmbG93LmZsZWV0LnJwYy52MS5DYWxsQ2FuY2VsSAASNAoGc2lnbmFsGAcgASgLMiIubGVhZmxvdy5mbGVldC50cmFuc3BvcnQudjEuU2lnbmFsSAASOgoJbWlncmF0aW9uGAggASgLMiUubGVhZmxvdy5mbGVldC50cmFuc3BvcnQudjEuTWlncmF0aW9uSAASMAoFY2xvc2UYCSABKAsyHy5sZWFmbG93LmZsZWV0LmNvbnRyb2wudjEuQ2xvc2VIABI2CghmcmFnbWVudBgKIAEoCzIiLmxlYWZsb3cuZmxlZXQuY29udHJvbC52MS5GcmFnbWVudEgAQgkKB21lc3NhZ2UiqAUKDVNlcnZlck1lc3NhZ2USPQoMc2VydmVyX2hlbGxvGAEgASgLMiUubGVhZmxvdy5mbGVldC5jb250cm9sLnYxLlNlcnZlckhlbGxvSAASNAoHd2VsY29tZRgCIAEoCzIhLmxlYWZsb3cuZmxlZXQuY29udHJvbC52MS5XZWxjb21lSAASLgoEcGluZxgDIAEoCzIeLmxlYWZsb3cuZmxlZXQuY29udHJvbC52MS5QaW5nSAASLgoEcG9uZxgEIAEoCzIeLmxlYWZsb3cuZmxlZXQuY29udHJvbC52MS5Qb25nSAASKgoEY2FsbBgFIAEoCzIaLmxlYWZsb3cuZmxlZXQucnBjLnYxLkNhbGxIABI3CgtjYWxsX3Jlc3VsdBgGIAEoCzIgLmxlYWZsb3cuZmxlZXQucnBjLnYxLkNhbGxSZXN1bHRIABI3CgtjYWxsX2NhbmNlbBgHIAEoCzIgLmxlYWZsb3cuZmxlZXQucnBjLnYxLkNhbGxDYW5jZWxIABI0CgZzaWduYWwYCCABKAsyIi5sZWFmbG93LmZsZWV0LnRyYW5zcG9ydC52MS5TaWduYWxIABI6CgltaWdyYXRpb24YCSABKAsyJS5sZWFmbG93LmZsZWV0LnRyYW5zcG9ydC52MS5NaWdyYXRpb25IABI9CgxzaWduaW5nX2tleXMYCiABKAsyJS5sZWFmbG93LmZsZWV0LmNvbnRyb2wudjEuU2lnbmluZ0tleXNIABIwCgVjbG9zZRgLIAEoCzIfLmxlYWZsb3cuZmxlZXQuY29udHJvbC52MS5DbG9zZUgAEjYKCGZyYWdtZW50GAwgASgLMiIubGVhZmxvdy5mbGVldC5jb250cm9sLnYxLkZyYWdtZW50SABCCQoHbWVzc2FnZSKtAgoLU2VydmVySGVsbG8SDgoGaXNzdWVyGAEgASgJEhEKCWNoYWxsZW5nZRgCIAEoDBIwCg1waW5nX2ludGVydmFsGAMgASgLMhkuZ29vZ2xlLnByb3RvYnVmLkR1cmF0aW9uEi8KDGlkbGVfdGltZW91dBgEIAEoCzIZLmdvb2dsZS5wcm90b2J1Zi5EdXJhdGlvbhIYChBtYXhfbWVzc2FnZV9zaXplGAUgASgNEhwKFG1heF9jb25jdXJyZW50X2NhbGxzGAYgASgNEhsKE21lc3NhZ2VzX3Blcl9zZWNvbmQYByABKA0SFQoNbWVzc2FnZV9idXJzdBgIIAEoDRIYChBieXRlc19wZXJfc2Vjb25kGAkgASgNEhIKCmJ5dGVfYnVyc3QYCiABKA0iqAIKC0NsaWVudEhlbGxvEj4KB21hY2hpbmUYASABKAsyKy5sZWFmbG93LmZsZWV0LmNvbnRyb2wudjEuTWFjaGluZUNyZWRlbnRpYWxIABJECgplbnJvbGxtZW50GAIgASgLMi4ubGVhZmxvdy5mbGVldC5jb250cm9sLnYxLkVucm9sbG1lbnRDcmVkZW50aWFsSAASPgoHc2Vzc2lvbhgDIAEoCzIrLmxlYWZsb3cuZmxlZXQuY29udHJvbC52MS5TZXNzaW9uQ3JlZGVudGlhbEgAEhIKCnVzZXJfYWdlbnQYBSABKAkSEwoLaW5zdGFuY2VfaWQYBiABKAwSHAoUcmVjZWl2ZWRfcmVxdWVzdF9pZHMYByADKAlCDAoKY3JlZGVudGlhbCI6ChFNYWNoaW5lQ3JlZGVudGlhbBISCgptYWNoaW5lX2lkGAEgASgJEhEKCXNpZ25hdHVyZRgCIAEoDCI9ChRFbnJvbGxtZW50Q3JlZGVudGlhbBISCgpwdWJsaWNfa2V5GAEgASgMEhEKCXNpZ25hdHVyZRgCIAEoDCJYChFTZXNzaW9uQ3JlZGVudGlhbBISCgpkZWxlZ2F0aW9uGAEgASgMEhwKFGRlbGVnYXRpb25fc2lnbmF0dXJlGAIgASgMEhEKCXNpZ25hdHVyZRgDIAEoDCK2AQoRU2Vzc2lvbkRlbGVnYXRpb24SEgoKbWFjaGluZV9pZBgBIAEoCRISCgpzZXNzaW9uX2lkGAIgASgJEhoKEnNlc3Npb25fcHVibGljX2tleRgDIAEoDBItCglpc3N1ZWRfYXQYBCABKAsyGi5nb29nbGUucHJvdG9idWYuVGltZXN0YW1wEi4KCmV4cGlyZXNfYXQYBSABKAsyGi5nb29nbGUucHJvdG9idWYuVGltZXN0YW1wItoBCgdXZWxjb21lEhUKDWNvbm5lY3Rpb25faWQYASABKAQSEgoKbWFjaGluZV9pZBgCIAEoCRISCgpzZXNzaW9uX2lkGAMgASgJEjsKDHNpZ25pbmdfa2V5cxgEIAEoCzIlLmxlYWZsb3cuZmxlZXQuY29udHJvbC52MS5TaWduaW5nS2V5cxIvCgxyZXN1bWVfZ3JhY2UYBSABKAsyGS5nb29nbGUucHJvdG9idWYuRHVyYXRpb24SDwoHcmVzdW1lZBgGIAEoCBIRCglzdHVuX3VybHMYByADKAkiQAoLU2lnbmluZ0tleXMSMQoEa2V5cxgBIAMoCzIjLmxlYWZsb3cuZmxlZXQuY29udHJvbC52MS5QdWJsaWNLZXkiNQoJUHVibGljS2V5Eg4KBmtleV9pZBgBIAEoCRIRCgdlZDI1NTE5GAIgASgMSABCBQoDa2V5ItUCCg1BdXRob3JpemF0aW9uEg4KBmlzc3VlchgBIAEoCRISCgptYWNoaW5lX2lkGAIgASgJEhIKCnNlc3Npb25faWQYAyABKAkSFgoOcGFydGljaXBhbnRfaWQYBCABKAQSDwoHdXNlcl9pZBgFIAEoCRIUCgxkaXNwbGF5X25hbWUYBiABKAkSEwoLY2xpZW50X25hbWUYByABKAkSHgoWcGFydGljaXBhbnRfcHVibGljX2tleRgJIAEoDBIRCglyZWFkX29ubHkYCyABKAgSJgoIcG9saWNpZXMYDCADKAsyFC5nb29nbGUucHJvdG9idWYuQW55Ei0KCWlzc3VlZF9hdBgNIAEoCzIaLmdvb2dsZS5wcm90b2J1Zi5UaW1lc3RhbXASLgoKZXhwaXJlc19hdBgOIAEoCzIaLmdvb2dsZS5wcm90b2J1Zi5UaW1lc3RhbXAiTwoTU2lnbmVkQXV0aG9yaXphdGlvbhIOCgZrZXlfaWQYASABKAkSFQoNYXV0aG9yaXphdGlvbhgCIAEoDBIRCglzaWduYXR1cmUYAyABKAwiHAoEUGluZxIUCgxtb25vdG9uaWNfbXMYASABKAQiHAoEUG9uZxIUCgxtb25vdG9uaWNfbXMYASABKAQiOwoIRnJhZ21lbnQSEgoKbWVzc2FnZV9pZBgBIAEoBBIMCgRkYXRhGAIgASgMEg0KBWZpbmFsGAMgASgIIoUBCgVDbG9zZRI1CgZyZWFzb24YASABKA4yJS5sZWFmbG93LmZsZWV0LmNvbnRyb2wudjEuQ2xvc2VSZWFzb24SFQoNcmVhc29uX3BocmFzZRgCIAEoCRIuCgtyZXRyeV9kZWxheRgDIAEoCzIZLmdvb2dsZS5wcm90b2J1Zi5EdXJhdGlvbiJgChhBdHRhY2hQYXJ0aWNpcGFudFJlcXVlc3QSRAoNYXV0aG9yaXphdGlvbhgBIAEoCzItLmxlYWZsb3cuZmxlZXQuY29udHJvbC52MS5TaWduZWRBdXRob3JpemF0aW9uIhsKGUF0dGFjaFBhcnRpY2lwYW50UmVzcG9uc2UibQolVXBkYXRlUGFydGljaXBhbnRBdXRob3JpemF0aW9uUmVxdWVzdBJECg1hdXRob3JpemF0aW9uGAEgASgLMi0ubGVhZmxvdy5mbGVldC5jb250cm9sLnYxLlNpZ25lZEF1dGhvcml6YXRpb24iKAomVXBkYXRlUGFydGljaXBhbnRBdXRob3JpemF0aW9uUmVzcG9uc2UicgoYRGV0YWNoUGFydGljaXBhbnRSZXF1ZXN0EhYKDnBhcnRpY2lwYW50X2lkGAEgASgEEj4KBnJlYXNvbhgCIAEoDjIuLmxlYWZsb3cuZmxlZXQuY29udHJvbC52MS5QYXJ0aWNpcGFudEVuZFJlYXNvbiIbChlEZXRhY2hQYXJ0aWNpcGFudFJlc3BvbnNlKt8ECgtDbG9zZVJlYXNvbhIcChhDTE9TRV9SRUFTT05fVU5TUEVDSUZJRUQQABIVChFDTE9TRV9SRUFTT05fRE9ORRABEhwKGENMT1NFX1JFQVNPTl9DTElFTlRfRVhJVBACEiAKHENMT1NFX1JFQVNPTl9TRVJWRVJfU0hVVERPV04QAxIfChtDTE9TRV9SRUFTT05fU0VSVkVSX1VQR1JBREUQBBIdChlDTE9TRV9SRUFTT05fUElOR19USU1FT1VUEAUSHgoaQ0xPU0VfUkVBU09OX0hFTExPX1RJTUVPVVQQBhIfChtDTE9TRV9SRUFTT05fUFJPVE9DT0xfRVJST1IQBxIgChxDTE9TRV9SRUFTT05fTUVTU0FHRV9UT09fQklHEAgSJgoiQ0xPU0VfUkVBU09OX0FVVEhFTlRJQ0FUSU9OX0ZBSUxFRBAJEiIKHkNMT1NFX1JFQVNPTl9QRVJNSVNTSU9OX0RFTklFRBAKEiIKHkNMT1NFX1JFQVNPTl9TRVNTSU9OX05PVF9GT1VORBALEiQKIENMT1NFX1JFQVNPTl9DT05ORUNUSU9OX1JFUExBQ0VEEAwSHQoZQ0xPU0VfUkVBU09OX1NFU1NJT05fRVhJVBANEiEKHUNMT1NFX1JFQVNPTl9QT0xJQ1lfVklPTEFUSU9OEBASHwobQ0xPU0VfUkVBU09OX0lOVEVSTkFMX0VSUk9SEBESGwoXQ0xPU0VfUkVBU09OX09WRVJMT0FERUQQEhIiCh5DTE9TRV9SRUFTT05fRU5EUE9JTlRfVE9PX1NMT1cQEyrCBAoUUGFydGljaXBhbnRFbmRSZWFzb24SJgoiUEFSVElDSVBBTlRfRU5EX1JFQVNPTl9VTlNQRUNJRklFRBAAEh8KG1BBUlRJQ0lQQU5UX0VORF9SRUFTT05fTEVGVBABEiIKHlBBUlRJQ0lQQU5UX0VORF9SRUFTT05fUkVNT1ZFRBACEigKJFBBUlRJQ0lQQU5UX0VORF9SRUFTT05fTEVBU0VfRVhQSVJFRBADEigKJFBBUlRJQ0lQQU5UX0VORF9SRUFTT05fU0VTU0lPTl9FTkRFRBAEEi8KK1BBUlRJQ0lQQU5UX0VORF9SRUFTT05fU0VTU0lPTl9QUk9DRVNTX0xPU1QQBRItCilQQVJUSUNJUEFOVF9FTkRfUkVBU09OX1BFUk1JU1NJT05fUkVWT0tFRBAGEioKJlBBUlRJQ0lQQU5UX0VORF9SRUFTT05fTUFDSElORV9SRU1PVkVEEAcSJgoiUEFSVElDSVBBTlRfRU5EX1JFQVNPTl9LRVlfUkVWT0tFRBAIEicKI1BBUlRJQ0lQQU5UX0VORF9SRUFTT05fTk9UX0FETUlUVEVEEAkSKwonUEFSVElDSVBBTlRfRU5EX1JFQVNPTl9NRU1CRVJTSElQX0VOREVEEAoSKAokUEFSVElDSVBBTlRfRU5EX1JFQVNPTl9VU0VSX0lOQUNUSVZFEAsSNQoxUEFSVElDSVBBTlRfRU5EX1JFQVNPTl9QUk9KRUNUX0RFTEVUSU9OX1JFUVVFU1RFRBAMMscDChJQYXJ0aWNpcGFudFNlcnZpY2USgQEKEUF0dGFjaFBhcnRpY2lwYW50EjIubGVhZmxvdy5mbGVldC5jb250cm9sLnYxLkF0dGFjaFBhcnRpY2lwYW50UmVxdWVzdBozLmxlYWZsb3cuZmxlZXQuY29udHJvbC52MS5BdHRhY2hQYXJ0aWNpcGFudFJlc3BvbnNlIgOQAgISqAEKHlVwZGF0ZVBhcnRpY2lwYW50QXV0aG9yaXphdGlvbhI/LmxlYWZsb3cuZmxlZXQuY29udHJvbC52MS5VcGRhdGVQYXJ0aWNpcGFudEF1dGhvcml6YXRpb25SZXF1ZXN0GkAubGVhZmxvdy5mbGVldC5jb250cm9sLnYxLlVwZGF0ZVBhcnRpY2lwYW50QXV0aG9yaXphdGlvblJlc3BvbnNlIgOQAgISgQEKEURldGFjaFBhcnRpY2lwYW50EjIubGVhZmxvdy5mbGVldC5jb250cm9sLnYxLkRldGFjaFBhcnRpY2lwYW50UmVxdWVzdBozLmxlYWZsb3cuZmxlZXQuY29udHJvbC52MS5EZXRhY2hQYXJ0aWNpcGFudFJlc3BvbnNlIgOQAgJCPlo8Z2l0aHViLmNvbS9sZWFmbG93YXBpcy9sZWFmbG93LWdvL2ZsZWV0L2NvbnRyb2wvdjE7Y29udHJvbHYxYgZwcm90bzM", [file_google_protobuf_any, file_google_protobuf_duration, file_google_protobuf_timestamp, file_leaflow_fleet_rpc_v1_rpc, file_leaflow_fleet_transport_v1_transport]);
12
12
  /**
13
13
  * Describes the message leaflow.fleet.control.v1.ClientMessage.
14
14
  * Use `create(ClientMessageSchema)` to create a new message.
@@ -41,6 +41,15 @@ export type ClientMessage = Message<"leaflow.fleet.terminal.v1.ClientMessage"> &
41
41
  */
42
42
  value: TerminalSize;
43
43
  case: "resize";
44
+ } | {
45
+ /**
46
+ * Answers of the participant's terminal to terminal queries, written to
47
+ * the terminal only when the participant is the answerer.
48
+ *
49
+ * @generated from field: leaflow.fleet.terminal.v1.TerminalAnswer answer = 4;
50
+ */
51
+ value: TerminalAnswer;
52
+ case: "answer";
44
53
  } | {
45
54
  case: undefined;
46
55
  value?: undefined;
@@ -127,6 +136,13 @@ export type TerminalAttach = Message<"leaflow.fleet.terminal.v1.TerminalAttach">
127
136
  * @generated from field: uint64 offset = 1;
128
137
  */
129
138
  offset: bigint;
139
+ /**
140
+ * The participant's terminal answers terminal queries in the output, and
141
+ * the participant sends those answers as TerminalAnswer.
142
+ *
143
+ * @generated from field: bool answers_queries = 2;
144
+ */
145
+ answersQueries: boolean;
130
146
  };
131
147
  /**
132
148
  * Describes the message leaflow.fleet.terminal.v1.TerminalAttach.
@@ -160,6 +176,14 @@ export type TerminalAttached = Message<"leaflow.fleet.terminal.v1.TerminalAttach
160
176
  * @generated from field: leaflow.fleet.terminal.v1.TerminalSize size = 3;
161
177
  */
162
178
  size?: TerminalSize | undefined;
179
+ /**
180
+ * The end of the output when the participant attached: the output from
181
+ * offset up to here is replayed, what follows is new. Equal to offset when
182
+ * nothing is replayed.
183
+ *
184
+ * @generated from field: uint64 replay_end = 4;
185
+ */
186
+ replayEnd: bigint;
163
187
  };
164
188
  /**
165
189
  * Describes the message leaflow.fleet.terminal.v1.TerminalAttached.
@@ -184,6 +208,24 @@ export type TerminalInput = Message<"leaflow.fleet.terminal.v1.TerminalInput"> &
184
208
  * Use `create(TerminalInputSchema)` to create a new message.
185
209
  */
186
210
  export declare const TerminalInputSchema: GenMessage<TerminalInput>;
211
+ /**
212
+ * Answers of the participant's terminal to terminal queries in the output.
213
+ *
214
+ * @generated from message leaflow.fleet.terminal.v1.TerminalAnswer
215
+ */
216
+ export type TerminalAnswer = Message<"leaflow.fleet.terminal.v1.TerminalAnswer"> & {
217
+ /**
218
+ * The bytes, at most 64 KiB.
219
+ *
220
+ * @generated from field: bytes data = 1;
221
+ */
222
+ data: Uint8Array;
223
+ };
224
+ /**
225
+ * Describes the message leaflow.fleet.terminal.v1.TerminalAnswer.
226
+ * Use `create(TerminalAnswerSchema)` to create a new message.
227
+ */
228
+ export declare const TerminalAnswerSchema: GenMessage<TerminalAnswer>;
187
229
  /**
188
230
  * Output of the terminal.
189
231
  *
@@ -6,7 +6,7 @@ import { file_google_rpc_status } from "../../../../google/rpc/status_pb.js";
6
6
  /**
7
7
  * Describes the file leaflow/fleet/terminal/v1/terminal.proto.
8
8
  */
9
- export const file_leaflow_fleet_terminal_v1_terminal = /*@__PURE__*/ fileDesc("CihsZWFmbG93L2ZsZWV0L3Rlcm1pbmFsL3YxL3Rlcm1pbmFsLnByb3RvEhlsZWFmbG93LmZsZWV0LnRlcm1pbmFsLnYxIs0BCg1DbGllbnRNZXNzYWdlEjsKBmF0dGFjaBgBIAEoCzIpLmxlYWZsb3cuZmxlZXQudGVybWluYWwudjEuVGVybWluYWxBdHRhY2hIABI5CgVpbnB1dBgCIAEoCzIoLmxlYWZsb3cuZmxlZXQudGVybWluYWwudjEuVGVybWluYWxJbnB1dEgAEjkKBnJlc2l6ZRgDIAEoCzInLmxlYWZsb3cuZmxlZXQudGVybWluYWwudjEuVGVybWluYWxTaXplSABCCQoHbWVzc2FnZSKxAgoNU2VydmVyTWVzc2FnZRI/CghhdHRhY2hlZBgBIAEoCzIrLmxlYWZsb3cuZmxlZXQudGVybWluYWwudjEuVGVybWluYWxBdHRhY2hlZEgAEjsKBm91dHB1dBgCIAEoCzIpLmxlYWZsb3cuZmxlZXQudGVybWluYWwudjEuVGVybWluYWxPdXRwdXRIABI5CgZyZXNpemUYAyABKAsyJy5sZWFmbG93LmZsZWV0LnRlcm1pbmFsLnYxLlRlcm1pbmFsU2l6ZUgAEjcKBGV4aXQYBCABKAsyJy5sZWFmbG93LmZsZWV0LnRlcm1pbmFsLnYxLlRlcm1pbmFsRXhpdEgAEiMKBWVycm9yGAUgASgLMhIuZ29vZ2xlLnJwYy5TdGF0dXNIAEIJCgdtZXNzYWdlIiAKDlRlcm1pbmFsQXR0YWNoEg4KBm9mZnNldBgBIAEoBCJoChBUZXJtaW5hbEF0dGFjaGVkEg4KBm9mZnNldBgBIAEoBBINCgVyZXNldBgCIAEoCBI1CgRzaXplGAMgASgLMicubGVhZmxvdy5mbGVldC50ZXJtaW5hbC52MS5UZXJtaW5hbFNpemUiHQoNVGVybWluYWxJbnB1dBIMCgRkYXRhGAEgASgMIh4KDlRlcm1pbmFsT3V0cHV0EgwKBGRhdGEYASABKAwiUgoMVGVybWluYWxTaXplEg8KB2NvbHVtbnMYASABKA0SDAoEcm93cxgCIAEoDRIQCgh3aWR0aF9weBgDIAEoDRIRCgloZWlnaHRfcHgYBCABKA0iWQoMVGVybWluYWxFeGl0EhMKCWV4aXRfY29kZRgBIAEoDUgAEhUKC3NpZ25hbF9uYW1lGAIgASgJSAASEwoLY29yZV9kdW1wZWQYAyABKAhCCAoGc3RhdHVzIhAKDlRlcm1pbmFsUG9saWN5QkBaPmdpdGh1Yi5jb20vbGVhZmxvd2FwaXMvbGVhZmxvdy1nby9mbGVldC90ZXJtaW5hbC92MTt0ZXJtaW5hbHYxYgZwcm90bzM", [file_google_rpc_status]);
9
+ export const file_leaflow_fleet_terminal_v1_terminal = /*@__PURE__*/ fileDesc("CihsZWFmbG93L2ZsZWV0L3Rlcm1pbmFsL3YxL3Rlcm1pbmFsLnByb3RvEhlsZWFmbG93LmZsZWV0LnRlcm1pbmFsLnYxIooCCg1DbGllbnRNZXNzYWdlEjsKBmF0dGFjaBgBIAEoCzIpLmxlYWZsb3cuZmxlZXQudGVybWluYWwudjEuVGVybWluYWxBdHRhY2hIABI5CgVpbnB1dBgCIAEoCzIoLmxlYWZsb3cuZmxlZXQudGVybWluYWwudjEuVGVybWluYWxJbnB1dEgAEjkKBnJlc2l6ZRgDIAEoCzInLmxlYWZsb3cuZmxlZXQudGVybWluYWwudjEuVGVybWluYWxTaXplSAASOwoGYW5zd2VyGAQgASgLMikubGVhZmxvdy5mbGVldC50ZXJtaW5hbC52MS5UZXJtaW5hbEFuc3dlckgAQgkKB21lc3NhZ2UisQIKDVNlcnZlck1lc3NhZ2USPwoIYXR0YWNoZWQYASABKAsyKy5sZWFmbG93LmZsZWV0LnRlcm1pbmFsLnYxLlRlcm1pbmFsQXR0YWNoZWRIABI7CgZvdXRwdXQYAiABKAsyKS5sZWFmbG93LmZsZWV0LnRlcm1pbmFsLnYxLlRlcm1pbmFsT3V0cHV0SAASOQoGcmVzaXplGAMgASgLMicubGVhZmxvdy5mbGVldC50ZXJtaW5hbC52MS5UZXJtaW5hbFNpemVIABI3CgRleGl0GAQgASgLMicubGVhZmxvdy5mbGVldC50ZXJtaW5hbC52MS5UZXJtaW5hbEV4aXRIABIjCgVlcnJvchgFIAEoCzISLmdvb2dsZS5ycGMuU3RhdHVzSABCCQoHbWVzc2FnZSI5Cg5UZXJtaW5hbEF0dGFjaBIOCgZvZmZzZXQYASABKAQSFwoPYW5zd2Vyc19xdWVyaWVzGAIgASgIInwKEFRlcm1pbmFsQXR0YWNoZWQSDgoGb2Zmc2V0GAEgASgEEg0KBXJlc2V0GAIgASgIEjUKBHNpemUYAyABKAsyJy5sZWFmbG93LmZsZWV0LnRlcm1pbmFsLnYxLlRlcm1pbmFsU2l6ZRISCgpyZXBsYXlfZW5kGAQgASgEIh0KDVRlcm1pbmFsSW5wdXQSDAoEZGF0YRgBIAEoDCIeCg5UZXJtaW5hbEFuc3dlchIMCgRkYXRhGAEgASgMIh4KDlRlcm1pbmFsT3V0cHV0EgwKBGRhdGEYASABKAwiUgoMVGVybWluYWxTaXplEg8KB2NvbHVtbnMYASABKA0SDAoEcm93cxgCIAEoDRIQCgh3aWR0aF9weBgDIAEoDRIRCgloZWlnaHRfcHgYBCABKA0iWQoMVGVybWluYWxFeGl0EhMKCWV4aXRfY29kZRgBIAEoDUgAEhUKC3NpZ25hbF9uYW1lGAIgASgJSAASEwoLY29yZV9kdW1wZWQYAyABKAhCCAoGc3RhdHVzIhAKDlRlcm1pbmFsUG9saWN5QkBaPmdpdGh1Yi5jb20vbGVhZmxvd2FwaXMvbGVhZmxvdy1nby9mbGVldC90ZXJtaW5hbC92MTt0ZXJtaW5hbHYxYgZwcm90bzM", [file_google_rpc_status]);
10
10
  /**
11
11
  * Describes the message leaflow.fleet.terminal.v1.ClientMessage.
12
12
  * Use `create(ClientMessageSchema)` to create a new message.
@@ -32,23 +32,28 @@ export const TerminalAttachedSchema = /*@__PURE__*/ messageDesc(file_leaflow_fle
32
32
  * Use `create(TerminalInputSchema)` to create a new message.
33
33
  */
34
34
  export const TerminalInputSchema = /*@__PURE__*/ messageDesc(file_leaflow_fleet_terminal_v1_terminal, 4);
35
+ /**
36
+ * Describes the message leaflow.fleet.terminal.v1.TerminalAnswer.
37
+ * Use `create(TerminalAnswerSchema)` to create a new message.
38
+ */
39
+ export const TerminalAnswerSchema = /*@__PURE__*/ messageDesc(file_leaflow_fleet_terminal_v1_terminal, 5);
35
40
  /**
36
41
  * Describes the message leaflow.fleet.terminal.v1.TerminalOutput.
37
42
  * Use `create(TerminalOutputSchema)` to create a new message.
38
43
  */
39
- export const TerminalOutputSchema = /*@__PURE__*/ messageDesc(file_leaflow_fleet_terminal_v1_terminal, 5);
44
+ export const TerminalOutputSchema = /*@__PURE__*/ messageDesc(file_leaflow_fleet_terminal_v1_terminal, 6);
40
45
  /**
41
46
  * Describes the message leaflow.fleet.terminal.v1.TerminalSize.
42
47
  * Use `create(TerminalSizeSchema)` to create a new message.
43
48
  */
44
- export const TerminalSizeSchema = /*@__PURE__*/ messageDesc(file_leaflow_fleet_terminal_v1_terminal, 6);
49
+ export const TerminalSizeSchema = /*@__PURE__*/ messageDesc(file_leaflow_fleet_terminal_v1_terminal, 7);
45
50
  /**
46
51
  * Describes the message leaflow.fleet.terminal.v1.TerminalExit.
47
52
  * Use `create(TerminalExitSchema)` to create a new message.
48
53
  */
49
- export const TerminalExitSchema = /*@__PURE__*/ messageDesc(file_leaflow_fleet_terminal_v1_terminal, 7);
54
+ export const TerminalExitSchema = /*@__PURE__*/ messageDesc(file_leaflow_fleet_terminal_v1_terminal, 8);
50
55
  /**
51
56
  * Describes the message leaflow.fleet.terminal.v1.TerminalPolicy.
52
57
  * Use `create(TerminalPolicySchema)` to create a new message.
53
58
  */
54
- export const TerminalPolicySchema = /*@__PURE__*/ messageDesc(file_leaflow_fleet_terminal_v1_terminal, 8);
59
+ export const TerminalPolicySchema = /*@__PURE__*/ messageDesc(file_leaflow_fleet_terminal_v1_terminal, 9);
@@ -580,12 +580,12 @@ export declare const CloseSchema: GenMessage<Close>;
580
580
  * Signaling for one PeerConnection (RFC 9429 JSEP; RFC 8838 trickle ICE)
581
581
  * between the session process and the service, which stands for the
582
582
  * participant: the participant sends its offer, its candidates and the end of
583
- * a PeerConnection through the Fleet API, and receives the session's answer,
584
- * candidates and the PeerAuthorization in the answer of its request. The
585
- * service passes on the session's candidates that arrive until the session
586
- * sends end_of_candidates, and at most 10 seconds after the answer; the
587
- * session therefore sends end_of_candidates as soon as it gathered, and the
588
- * participant's request waits no longer than that.
583
+ * a PeerConnection through the Fleet API, and receives the session's answer
584
+ * and the PeerAuthorization in the answer of its request. The service keeps
585
+ * the session's candidates and end_of_candidates, at most 64 candidates, and
586
+ * the participant reads them through the Fleet API as they arrive. The session
587
+ * therefore sends each candidate as soon as it has it and end_of_candidates as
588
+ * soon as it gathered.
589
589
  *
590
590
  * The offer is the first signal of a PeerConnection: the service sends it
591
591
  * before any other signal of that PeerConnection. The participant's later
package/dist/routes.d.ts CHANGED
@@ -3309,6 +3309,14 @@ export declare const routes: readonly [{
3309
3309
  readonly operationId: "create-peer-connection";
3310
3310
  readonly securityScheme: "ScopedToken";
3311
3311
  readonly upstreamUrl: "https://fleet.leaflow.cloud";
3312
+ }, {
3313
+ readonly service: "fleet";
3314
+ readonly contract: "fleet";
3315
+ readonly method: "GET";
3316
+ readonly path: "/api/v1/sessions/{sessionId}/participants/{participantId}/peer-connections/{peerConnectionId}";
3317
+ readonly operationId: "get-peer-connection";
3318
+ readonly securityScheme: "ScopedToken";
3319
+ readonly upstreamUrl: "https://fleet.leaflow.cloud";
3312
3320
  }, {
3313
3321
  readonly service: "fleet";
3314
3322
  readonly contract: "fleet";
package/dist/routes.js CHANGED
@@ -3723,6 +3723,15 @@ export const routes = [
3723
3723
  securityScheme: "ScopedToken",
3724
3724
  upstreamUrl: "https://fleet.leaflow.cloud",
3725
3725
  },
3726
+ {
3727
+ service: "fleet",
3728
+ contract: "fleet",
3729
+ method: "GET",
3730
+ path: "/api/v1/sessions/{sessionId}/participants/{participantId}/peer-connections/{peerConnectionId}",
3731
+ operationId: "get-peer-connection",
3732
+ securityScheme: "ScopedToken",
3733
+ upstreamUrl: "https://fleet.leaflow.cloud",
3734
+ },
3726
3735
  {
3727
3736
  service: "fleet",
3728
3737
  contract: "fleet",
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@leaflow/sdk",
3
- "version": "0.192.0",
3
+ "version": "0.194.0",
4
4
  "description": "Leaflow 平台 API 的 TypeScript SDK",
5
5
  "license": "MIT",
6
6
  "repository": {