@mochabug/adapt-core 1.0.1-rc.1 → 1.0.1-rc.3
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
|
@@ -20,7 +20,7 @@ import { file_mochabugapis_adapt_graph_signal_data } from "../../graph/signal_da
|
|
|
20
20
|
/**
|
|
21
21
|
* Describes the file mochabugapis/adapt/automations/v1/automations.proto.
|
|
22
22
|
*/
|
|
23
|
-
export const file_mochabugapis_adapt_automations_v1_automations = /*@__PURE__*/ fileDesc("CjNtb2NoYWJ1Z2FwaXMvYWRhcHQvYXV0b21hdGlvbnMvdjEvYXV0b21hdGlvbnMucHJvdG8SIW1vY2hhYnVnYXBpcy5hZGFwdC5hdXRvbWF0aW9ucy52MSIwChZDcmVhdGVDaGFsbGVuZ2VSZXF1ZXN0EhYKAmlkGAEgASgJQgq6SAdyBRABGPQDIqIBChdDcmVhdGVDaGFsbGVuZ2VSZXNwb25zZRINCgVjb3VudBgBIAEoDRIMCgRzaXplGAIgASgNEhIKCmRpZmZpY3VsdHkYAyABKA0SKwoHZXhwaXJlcxgEIAEoCzIaLmdvb2dsZS5wcm90b2J1Zi5UaW1lc3RhbXASDQoFdG9rZW4YBSABKAkSGgoSdmVyaWZpY2F0aW9uX3Rva2VuGAYgASgJIngKFlJlZGVlbUNoYWxsZW5nZVJlcXVlc3QSFgoCaWQYASABKAlCCrpIB3IFEAEY9AMSJgoSdmVyaWZpY2F0aW9uX3Rva2VuGAIgASgJQgq6SAdyBRABGNAPEh4KCXNvbHV0aW9ucxgDIAMoA0ILukgIkgEFCAEQ6AciVQoXUmVkZWVtQ2hhbGxlbmdlUmVzcG9uc2USDQoFdG9rZW4YASABKAkSKwoHZXhwaXJlcxgCIAEoCzIaLmdvb2dsZS5wcm90b2J1Zi5UaW1lc3RhbXAiLwoVSW5oZXJpdFNlc3Npb25SZXF1ZXN0EhYKAmlkGAEgASgJQgq6SAdyBRABGPQDImUKFkluaGVyaXRTZXNzaW9uUmVzcG9uc2USDQoFdG9rZW4YASABKAkSMAoHZXhwaXJlcxgCIAEoCzIaLmdvb2dsZS5wcm90b2J1Zi5UaW1lc3RhbXBIAIgBAUIKCghfZXhwaXJlcyKvAQoRUmVhZE91dHB1dFJlcXVlc3QSFgoCaWQYASABKAlCCrpIB3IFEAEY9AMSGgoJcGFnZV9zaXplGAIgASgNQge6SAQqAhhkEikKBnZlcnRleBgDIAEoCUIUukgRcg8yDV5bMC05YS16XXs0fSRIAIgBARIhCgpuZXdlcl90aGFuGAQgASgJQgi6SAVyA7ABAUgBiAEBQgkKB192ZXJ0ZXhCDQoLX25ld2VyX3RoYW4iywEKElJlYWRPdXRwdXRSZXNwb25zZRI7CgdzZXNzaW9uGAEgASgLMioubW9jaGFidWdhcGlzLmFkYXB0LmF1dG9tYXRpb25zLnYxLlNlc3Npb24SOgoHb3V0cHV0cxgCIAMoCzIpLm1vY2hhYnVnYXBpcy5hZGFwdC5hdXRvbWF0aW9ucy52MS5PdXRwdXQSJwoQbmV4dF9wYWdlX2N1cnNvchgDIAEoCUIIukgFcgOwAQFIAIgBAUITChFfbmV4dF9wYWdlX2N1cnNvciJ3Cg9SZWFkVXJsc1JlcXVlc3QSFgoCaWQYASABKAlCCrpIB3IFEAEY9AMSGgoJcGFnZV9zaXplGAIgASgNQge6SAQqAhhkEiEKCm5ld2VyX3RoYW4YAyABKAlCCLpIBXIDsAEBSACIAQFCDQoLX25ld2VyX3RoYW4iwwEKEFJlYWRVcmxzUmVzcG9uc2USOwoHc2Vzc2lvbhgBIAEoCzIqLm1vY2hhYnVnYXBpcy5hZGFwdC5hdXRvbWF0aW9ucy52MS5TZXNzaW9uEjQKBHVybHMYAiADKAsyJi5tb2NoYWJ1Z2FwaXMuYWRhcHQuYXV0b21hdGlvbnMudjEuVXJsEicKEG5leHRfcGFnZV9jdXJzb3IYAyABKAlCCLpIBXIDsAEBSACIAQFCEwoRX25leHRfcGFnZV9jdXJzb3IikQMKE1N0YXJ0U2Vzc2lvblJlcXVlc3QSFgoCaWQYASABKAlCCrpIB3IFEAEY9AMSOwoLdHJhbnNtaXR0ZXIYAiABKAlCIbpIHnIcEAEYZDIWXlthLXpBLVowLTlfLV17MSwxMDB9JEgAiAEBEoABCgdzaWduYWxzGAMgAygLMkMubW9jaGFidWdhcGlzLmFkYXB0LmF1dG9tYXRpb25zLnYxLlN0YXJ0U2Vzc2lvblJlcXVlc3QuU2lnbmFsc0VudHJ5Qiq6SCeaASQiInIgEAEYZDIaXltfJGEtekEtWl1bXyRhLXpBLVowLTldKiQSKAoPY2hhbGxlbmdlX3Rva2VuGAQgASgJQgq6SAdyBRABGPQDSAGIAQEaVAoMU2lnbmFsc0VudHJ5EgsKA2tleRgBIAEoCRIzCgV2YWx1ZRgCIAEoCzIkLm1vY2hhYnVnYXBpcy5hZGFwdC5ncmFwaC5TaWduYWxEYXRhOgI4AUIOCgxfdHJhbnNtaXR0ZXJCEgoQX2NoYWxsZW5nZV90b2tlbiJjChRTdGFydFNlc3Npb25SZXNwb25zZRINCgV0b2tlbhgBIAEoCRIwCgdleHBpcmVzGAIgASgLMhouZ29vZ2xlLnByb3RvYnVmLlRpbWVzdGFtcEgAiAEBQgoKCF9leHBpcmVzIlIKElN0b3BTZXNzaW9uUmVxdWVzdBIWCgJpZBgBIAEoCUIKukgHcgUQARj0AxIbCgRmb3JrGAIgASgJQgi6SAVyAxjoB0gAiAEBQgcKBV9mb3JrIhUKE1N0b3BTZXNzaW9uUmVzcG9uc2UiKwoRR2V0U2Vzc2lvblJlcXVlc3QSFgoCaWQYASABKAlCCrpIB3IFEAEY9AMiWQoSR2V0U2Vzc2lvblJlc3BvbnNlEkMKB3Nlc3Npb24YASABKAsyKi5tb2NoYWJ1Z2FwaXMuYWRhcHQuYXV0b21hdGlvbnMudjEuU2Vzc2lvbkIGukgDyAEBIukBCgZPdXRwdXQSDgoGdmVydGV4GAEgASgJEgwKBGZvcmsYAiABKAkSQQoEZGF0YRgDIAMoCzIzLm1vY2hhYnVnYXBpcy5hZGFwdC5hdXRvbWF0aW9ucy52MS5PdXRwdXQuRGF0YUVudHJ5EisKB2NyZWF0ZWQYBCABKAsyGi5nb29nbGUucHJvdG9idWYuVGltZXN0YW1wGlEKCURhdGFFbnRyeRILCgNrZXkYASABKAkSMwoFdmFsdWUYAiABKAsyJC5tb2NoYWJ1Z2FwaXMuYWRhcHQuZ3JhcGguU2lnbmFsRGF0YToCOAEiiwEKA1VybBILCgN1cmwYASABKAkSDAoEZm9yaxgCIAEoCRIOCgZ2ZXJ0ZXgYAyABKAkSDAoEZG9uZRgEIAEoCBIrCgdjcmVhdGVkGAUgASgLMhouZ29vZ2xlLnByb3RvYnVmLlRpbWVzdGFtcBINCgV0b2tlbhgGIAEoCRIPCgdzdG9wcGVkGAcgASgIIlIKB1Nlc3Npb24SDAoEZm9yaxgBIAEoCRI5CgZzdGF0dXMYAiABKA4yKS5tb2NoYWJ1Z2FwaXMuYWRhcHQuYXV0b21hdGlvbnMudjEuU3RhdHVzIi4KFFN0cmVhbVNlc3Npb25SZXF1ZXN0EhYKAmlkGAEgASgJQgq6SAdyBRABGPQDIkkKEUFja01lc3NhZ2VSZXF1ZXN0EhYKAmlkGAEgASgJQgq6SAdyBRABGPQDEhwKCm1lc3NhZ2VfaWQYAiABKAlCCLpIBXIDsAEBIhQKEkFja01lc3NhZ2VSZXNwb25zZSLrAQoVU3RyZWFtU2Vzc2lvblJlc3BvbnNlEhQKAmlkGAEgASgJQgi6SAVyA7ABARI7CgZvdXRwdXQYAiABKAsyKS5tb2NoYWJ1Z2FwaXMuYWRhcHQuYXV0b21hdGlvbnMudjEuT3V0cHV0SAASNQoDdXJsGAMgASgLMiYubW9jaGFidWdhcGlzLmFkYXB0LmF1dG9tYXRpb25zLnYxLlVybEgAEj0KB3Nlc3Npb24YBCABKAsyKi5tb2NoYWJ1Z2FwaXMuYWRhcHQuYXV0b21hdGlvbnMudjEuU2Vzc2lvbkgAQgkKB21lc3NhZ2UijAMKEVJ1blNlc3Npb25SZXF1ZXN0EhYKAmlkGAEgASgJQgq6SAdyBRABGPQDEjsKC3RyYW5zbWl0dGVyGAIgASgJQiG6SB5yHBABGGQyFl5bYS16QS1aMC05Xy1dezEsMTAwfSRIAIgBARJ+CgdzaWduYWxzGAMgAygLMkEubW9jaGFidWdhcGlzLmFkYXB0LmF1dG9tYXRpb25zLnYxLlJ1blNlc3Npb25SZXF1ZXN0LlNpZ25hbHNFbnRyeUIqukgnmgEkIiJyIBABGGQyGl5bXyRhLXpBLVpdW18kYS16QS1aMC05XSokEigKD2NoYWxsZW5nZV90b2tlbhgEIAEoCUIKukgHcgUQARj0A0gBiAEBGlQKDFNpZ25hbHNFbnRyeRILCgNrZXkYASABKAkSMwoFdmFsdWUYAiABKAsyJC5tb2NoYWJ1Z2FwaXMuYWRhcHQuZ3JhcGguU2lnbmFsRGF0YToCOAFCDgoMX3RyYW5zbWl0dGVyQhIKEF9jaGFsbGVuZ2VfdG9rZW4isQIKElJ1blNlc3Npb25SZXNwb25zZRIUCgJpZBgBIAEoCUIIukgFcgOwAQESRwoHc3RhcnRlZBgCIAEoCzI0Lm1vY2hhYnVnYXBpcy5hZGFwdC5hdXRvbWF0aW9ucy52MS5SdW5TZXNzaW9uU3RhcnRlZEgAEjsKBm91dHB1dBgDIAEoCzIpLm1vY2hhYnVnYXBpcy5hZGFwdC5hdXRvbWF0aW9ucy52MS5PdXRwdXRIABI1CgN1cmwYBCABKAsyJi5tb2NoYWJ1Z2FwaXMuYWRhcHQuYXV0b21hdGlvbnMudjEuVXJsSAASPQoHc2Vzc2lvbhgFIAEoCzIqLm1vY2hhYnVnYXBpcy5hZGFwdC5hdXRvbWF0aW9ucy52MS5TZXNzaW9uSABCCQoHbWVzc2FnZSJgChFSdW5TZXNzaW9uU3RhcnRlZBINCgV0b2tlbhgBIAEoCRIwCgdleHBpcmVzGAIgASgLMhouZ29vZ2xlLnByb3RvYnVmLlRpbWVzdGFtcEgAiAEBQgoKCF9leHBpcmVzIisKEVJ1bkluaGVyaXRSZXF1ZXN0EhYKAmlkGAEgASgJQgq6SAdyBRABGPQDIrMCChJSdW5Jbmhlcml0UmVzcG9uc2USFAoCaWQYASABKAlCCLpIBXIDsAEBEkkKCWluaGVyaXRlZBgCIAEoCzI0Lm1vY2hhYnVnYXBpcy5hZGFwdC5hdXRvbWF0aW9ucy52MS5SdW5Jbmhlcml0U3RhcnRlZEgAEjsKBm91dHB1dBgDIAEoCzIpLm1vY2hhYnVnYXBpcy5hZGFwdC5hdXRvbWF0aW9ucy52MS5PdXRwdXRIABI1CgN1cmwYBCABKAsyJi5tb2NoYWJ1Z2FwaXMuYWRhcHQuYXV0b21hdGlvbnMudjEuVXJsSAASPQoHc2Vzc2lvbhgFIAEoCzIqLm1vY2hhYnVnYXBpcy5hZGFwdC5hdXRvbWF0aW9ucy52MS5TZXNzaW9uSABCCQoHbWVzc2FnZSJgChFSdW5Jbmhlcml0U3RhcnRlZBINCgV0b2tlbhgBIAEoCRIwCgdleHBpcmVzGAIgASgLMhouZ29vZ2xlLnByb3RvYnVmLlRpbWVzdGFtcEgAiAEBQgoKCF9leHBpcmVzKsgBCgZTdGF0dXMSFgoSU1RBVFVTX1VOU1BFQ0lGSUVEEAASEgoOU1RBVFVTX1JVTk5JTkcQARISCg5TVEFUVVNfU1RPUFBFRBACEhMKD1NUQVRVU19TVE9QUElORxADEhQKEFNUQVRVU19DT01QTEVURUQQBBISCg5TVEFUVVNfRVhQSVJFRBAFEhIKDlNUQVRVU19FUlJPUkVEEAYSFQoRU1RBVFVTX0RFTEVHQVRJTkcQBxIUChBTVEFUVVNfREVMRUdBVEVEEAgyyBEKEUF1dG9tYXRpb25TZXJ2aWNlErMBCg9DcmVhdGVDaGFsbGVuZ2USOS5tb2NoYWJ1Z2FwaXMuYWRhcHQuYXV0b21hdGlvbnMudjEuQ3JlYXRlQ2hhbGxlbmdlUmVxdWVzdBo6Lm1vY2hhYnVnYXBpcy5hZGFwdC5hdXRvbWF0aW9ucy52MS5DcmVhdGVDaGFsbGVuZ2VSZXNwb25zZSIpgtPkkwIjOgEqIh4vdjEvYXV0b21hdGlvbnMve2lkfS9jaGFsbGVuZ2USugEKD1JlZGVlbUNoYWxsZW5nZRI5Lm1vY2hhYnVnYXBpcy5hZGFwdC5hdXRvbWF0aW9ucy52MS5SZWRlZW1DaGFsbGVuZ2VSZXF1ZXN0GjoubW9jaGFidWdhcGlzLmFkYXB0LmF1dG9tYXRpb25zLnYxLlJlZGVlbUNoYWxsZW5nZVJlc3BvbnNlIjCC0+STAio6ASoiJS92MS9hdXRvbWF0aW9ucy97aWR9L2NoYWxsZW5nZS9yZWRlZW0SrgEKDFN0YXJ0U2Vzc2lvbhI2Lm1vY2hhYnVnYXBpcy5hZGFwdC5hdXRvbWF0aW9ucy52MS5TdGFydFNlc3Npb25SZXF1ZXN0GjcubW9jaGFidWdhcGlzLmFkYXB0LmF1dG9tYXRpb25zLnYxLlN0YXJ0U2Vzc2lvblJlc3BvbnNlIi2C0+STAic6ASoiIi92MS9hdXRvbWF0aW9ucy97aWR9L3Nlc3Npb24vc3RhcnQSogEKC1N0b3BTZXNzaW9uEjUubW9jaGFidWdhcGlzLmFkYXB0LmF1dG9tYXRpb25zLnYxLlN0b3BTZXNzaW9uUmVxdWVzdBo2Lm1vY2hhYnVnYXBpcy5hZGFwdC5hdXRvbWF0aW9ucy52MS5TdG9wU2Vzc2lvblJlc3BvbnNlIiSC0+STAh4qHC92MS9hdXRvbWF0aW9ucy97aWR9L3Nlc3Npb24StgEKDkluaGVyaXRTZXNzaW9uEjgubW9jaGFidWdhcGlzLmFkYXB0LmF1dG9tYXRpb25zLnYxLkluaGVyaXRTZXNzaW9uUmVxdWVzdBo5Lm1vY2hhYnVnYXBpcy5hZGFwdC5hdXRvbWF0aW9ucy52MS5Jbmhlcml0U2Vzc2lvblJlc3BvbnNlIi+C0+STAik6ASoiJC92MS9hdXRvbWF0aW9ucy97aWR9L3Nlc3Npb24vaW5oZXJpdBKfAQoKR2V0U2Vzc2lvbhI0Lm1vY2hhYnVnYXBpcy5hZGFwdC5hdXRvbWF0aW9ucy52MS5HZXRTZXNzaW9uUmVxdWVzdBo1Lm1vY2hhYnVnYXBpcy5hZGFwdC5hdXRvbWF0aW9ucy52MS5HZXRTZXNzaW9uUmVzcG9uc2UiJILT5JMCHhIcL3YxL2F1dG9tYXRpb25zL3tpZH0vc2Vzc2lvbhKmAQoKUmVhZE91dHB1dBI0Lm1vY2hhYnVnYXBpcy5hZGFwdC5hdXRvbWF0aW9ucy52MS5SZWFkT3V0cHV0UmVxdWVzdBo1Lm1vY2hhYnVnYXBpcy5hZGFwdC5hdXRvbWF0aW9ucy52MS5SZWFkT3V0cHV0UmVzcG9uc2UiK4LT5JMCJRIjL3YxL2F1dG9tYXRpb25zL3tpZH0vc2Vzc2lvbi9vdXRwdXQSngEKCFJlYWRVcmxzEjIubW9jaGFidWdhcGlzLmFkYXB0LmF1dG9tYXRpb25zLnYxLlJlYWRVcmxzUmVxdWVzdBozLm1vY2hhYnVnYXBpcy5hZGFwdC5hdXRvbWF0aW9ucy52MS5SZWFkVXJsc1Jlc3BvbnNlIimC0+STAiMSIS92MS9hdXRvbWF0aW9ucy97aWR9L3Nlc3Npb24vdXJscxKxAQoNU3RyZWFtU2Vzc2lvbhI3Lm1vY2hhYnVnYXBpcy5hZGFwdC5hdXRvbWF0aW9ucy52MS5TdHJlYW1TZXNzaW9uUmVxdWVzdBo4Lm1vY2hhYnVnYXBpcy5hZGFwdC5hdXRvbWF0aW9ucy52MS5TdHJlYW1TZXNzaW9uUmVzcG9uc2UiK4LT5JMCJRIjL3YxL2F1dG9tYXRpb25zL3tpZH0vc2Vzc2lvbi9zdHJlYW0wARKmAQoKQWNrTWVzc2FnZRI0Lm1vY2hhYnVnYXBpcy5hZGFwdC5hdXRvbWF0aW9ucy52MS5BY2tNZXNzYWdlUmVxdWVzdBo1Lm1vY2hhYnVnYXBpcy5hZGFwdC5hdXRvbWF0aW9ucy52MS5BY2tNZXNzYWdlUmVzcG9uc2UiK4LT5JMCJToBKiIgL3YxL2F1dG9tYXRpb25zL3tpZH0vc2Vzc2lvbi9hY2sSqAEKClJ1blNlc3Npb24SNC5tb2NoYWJ1Z2FwaXMuYWRhcHQuYXV0b21hdGlvbnMudjEuUnVuU2Vzc2lvblJlcXVlc3QaNS5tb2NoYWJ1Z2FwaXMuYWRhcHQuYXV0b21hdGlvbnMudjEuUnVuU2Vzc2lvblJlc3BvbnNlIiuC0+STAiU6ASoiIC92MS9hdXRvbWF0aW9ucy97aWR9L3Nlc3Npb24vcnVuMAESsAEKClJ1bkluaGVyaXQSNC5tb2NoYWJ1Z2FwaXMuYWRhcHQuYXV0b21hdGlvbnMudjEuUnVuSW5oZXJpdFJlcXVlc3QaNS5tb2NoYWJ1Z2FwaXMuYWRhcHQuYXV0b21hdGlvbnMudjEuUnVuSW5oZXJpdFJlc3BvbnNlIjOC0+STAi06ASoiKC92MS9hdXRvbWF0aW9ucy97aWR9L3Nlc3Npb24vcnVuLWluaGVyaXQwARqJAcpBFmFkYXB0Lm1vY2hhYnVnYXBpcy5jb23SQW1odHRwczovL3d3dy5tb2NoYWJ1Z2FwaXMuY29tL2F1dGgvYWRhcHQuYXV0b21hdGlvbnMsaHR0cHM6Ly93d3cubW9jaGFidWdhcGlzLmNvbS9hdXRoL2FkYXB0LmF1dG9tYXRpb25zLnN0YXJ0YgZwcm90bzM", [file_buf_validate_validate, file_google_api_annotations, file_google_api_client, file_google_protobuf_timestamp, file_mochabugapis_adapt_graph_signal_data]);
|
|
23
|
+
export const file_mochabugapis_adapt_automations_v1_automations = /*@__PURE__*/ fileDesc("CjNtb2NoYWJ1Z2FwaXMvYWRhcHQvYXV0b21hdGlvbnMvdjEvYXV0b21hdGlvbnMucHJvdG8SIW1vY2hhYnVnYXBpcy5hZGFwdC5hdXRvbWF0aW9ucy52MSIwChZDcmVhdGVDaGFsbGVuZ2VSZXF1ZXN0EhYKAmlkGAEgASgJQgq6SAdyBRABGPQDIqIBChdDcmVhdGVDaGFsbGVuZ2VSZXNwb25zZRINCgVjb3VudBgBIAEoDRIMCgRzaXplGAIgASgNEhIKCmRpZmZpY3VsdHkYAyABKA0SKwoHZXhwaXJlcxgEIAEoCzIaLmdvb2dsZS5wcm90b2J1Zi5UaW1lc3RhbXASDQoFdG9rZW4YBSABKAkSGgoSdmVyaWZpY2F0aW9uX3Rva2VuGAYgASgJIngKFlJlZGVlbUNoYWxsZW5nZVJlcXVlc3QSFgoCaWQYASABKAlCCrpIB3IFEAEY9AMSJgoSdmVyaWZpY2F0aW9uX3Rva2VuGAIgASgJQgq6SAdyBRABGNAPEh4KCXNvbHV0aW9ucxgDIAMoA0ILukgIkgEFCAEQ6AciVQoXUmVkZWVtQ2hhbGxlbmdlUmVzcG9uc2USDQoFdG9rZW4YASABKAkSKwoHZXhwaXJlcxgCIAEoCzIaLmdvb2dsZS5wcm90b2J1Zi5UaW1lc3RhbXAiLwoVSW5oZXJpdFNlc3Npb25SZXF1ZXN0EhYKAmlkGAEgASgJQgq6SAdyBRABGPQDImUKFkluaGVyaXRTZXNzaW9uUmVzcG9uc2USDQoFdG9rZW4YASABKAkSMAoHZXhwaXJlcxgCIAEoCzIaLmdvb2dsZS5wcm90b2J1Zi5UaW1lc3RhbXBIAIgBAUIKCghfZXhwaXJlcyKvAQoRUmVhZE91dHB1dFJlcXVlc3QSFgoCaWQYASABKAlCCrpIB3IFEAEY9AMSGgoJcGFnZV9zaXplGAIgASgNQge6SAQqAhhkEikKBnZlcnRleBgDIAEoCUIUukgRcg8yDV5bMC05YS16XXs0fSRIAIgBARIhCgpuZXdlcl90aGFuGAQgASgJQgi6SAVyA7ABAUgBiAEBQgkKB192ZXJ0ZXhCDQoLX25ld2VyX3RoYW4iywEKElJlYWRPdXRwdXRSZXNwb25zZRI7CgdzZXNzaW9uGAEgASgLMioubW9jaGFidWdhcGlzLmFkYXB0LmF1dG9tYXRpb25zLnYxLlNlc3Npb24SOgoHb3V0cHV0cxgCIAMoCzIpLm1vY2hhYnVnYXBpcy5hZGFwdC5hdXRvbWF0aW9ucy52MS5PdXRwdXQSJwoQbmV4dF9wYWdlX2N1cnNvchgDIAEoCUIIukgFcgOwAQFIAIgBAUITChFfbmV4dF9wYWdlX2N1cnNvciJ3Cg9SZWFkVXJsc1JlcXVlc3QSFgoCaWQYASABKAlCCrpIB3IFEAEY9AMSGgoJcGFnZV9zaXplGAIgASgNQge6SAQqAhhkEiEKCm5ld2VyX3RoYW4YAyABKAlCCLpIBXIDsAEBSACIAQFCDQoLX25ld2VyX3RoYW4iwwEKEFJlYWRVcmxzUmVzcG9uc2USOwoHc2Vzc2lvbhgBIAEoCzIqLm1vY2hhYnVnYXBpcy5hZGFwdC5hdXRvbWF0aW9ucy52MS5TZXNzaW9uEjQKBHVybHMYAiADKAsyJi5tb2NoYWJ1Z2FwaXMuYWRhcHQuYXV0b21hdGlvbnMudjEuVXJsEicKEG5leHRfcGFnZV9jdXJzb3IYAyABKAlCCLpIBXIDsAEBSACIAQFCEwoRX25leHRfcGFnZV9jdXJzb3IikQMKE1N0YXJ0U2Vzc2lvblJlcXVlc3QSFgoCaWQYASABKAlCCrpIB3IFEAEY9AMSOwoLdHJhbnNtaXR0ZXIYAiABKAlCIbpIHnIcEAEYZDIWXlthLXpBLVowLTlfLV17MSwxMDB9JEgAiAEBEoABCgdzaWduYWxzGAMgAygLMkMubW9jaGFidWdhcGlzLmFkYXB0LmF1dG9tYXRpb25zLnYxLlN0YXJ0U2Vzc2lvblJlcXVlc3QuU2lnbmFsc0VudHJ5Qiq6SCeaASQiInIgEAEYZDIaXltfJGEtekEtWl1bXyRhLXpBLVowLTldKiQSKAoPY2hhbGxlbmdlX3Rva2VuGAQgASgJQgq6SAdyBRABGPQDSAGIAQEaVAoMU2lnbmFsc0VudHJ5EgsKA2tleRgBIAEoCRIzCgV2YWx1ZRgCIAEoCzIkLm1vY2hhYnVnYXBpcy5hZGFwdC5ncmFwaC5TaWduYWxEYXRhOgI4AUIOCgxfdHJhbnNtaXR0ZXJCEgoQX2NoYWxsZW5nZV90b2tlbiJjChRTdGFydFNlc3Npb25SZXNwb25zZRINCgV0b2tlbhgBIAEoCRIwCgdleHBpcmVzGAIgASgLMhouZ29vZ2xlLnByb3RvYnVmLlRpbWVzdGFtcEgAiAEBQgoKCF9leHBpcmVzIlIKElN0b3BTZXNzaW9uUmVxdWVzdBIWCgJpZBgBIAEoCUIKukgHcgUQARj0AxIbCgRmb3JrGAIgASgJQgi6SAVyAxjoB0gAiAEBQgcKBV9mb3JrIhUKE1N0b3BTZXNzaW9uUmVzcG9uc2UiKwoRR2V0U2Vzc2lvblJlcXVlc3QSFgoCaWQYASABKAlCCrpIB3IFEAEY9AMiWQoSR2V0U2Vzc2lvblJlc3BvbnNlEkMKB3Nlc3Npb24YASABKAsyKi5tb2NoYWJ1Z2FwaXMuYWRhcHQuYXV0b21hdGlvbnMudjEuU2Vzc2lvbkIGukgDyAEBIukBCgZPdXRwdXQSDgoGdmVydGV4GAEgASgJEgwKBGZvcmsYAiABKAkSQQoEZGF0YRgDIAMoCzIzLm1vY2hhYnVnYXBpcy5hZGFwdC5hdXRvbWF0aW9ucy52MS5PdXRwdXQuRGF0YUVudHJ5EisKB2NyZWF0ZWQYBCABKAsyGi5nb29nbGUucHJvdG9idWYuVGltZXN0YW1wGlEKCURhdGFFbnRyeRILCgNrZXkYASABKAkSMwoFdmFsdWUYAiABKAsyJC5tb2NoYWJ1Z2FwaXMuYWRhcHQuZ3JhcGguU2lnbmFsRGF0YToCOAEiiwEKA1VybBILCgN1cmwYASABKAkSDAoEZm9yaxgCIAEoCRIOCgZ2ZXJ0ZXgYAyABKAkSDAoEZG9uZRgEIAEoCBIrCgdjcmVhdGVkGAUgASgLMhouZ29vZ2xlLnByb3RvYnVmLlRpbWVzdGFtcBINCgV0b2tlbhgGIAEoCRIPCgdzdG9wcGVkGAcgASgIIlIKB1Nlc3Npb24SDAoEZm9yaxgBIAEoCRI5CgZzdGF0dXMYAiABKA4yKS5tb2NoYWJ1Z2FwaXMuYWRhcHQuYXV0b21hdGlvbnMudjEuU3RhdHVzIi4KFFN0cmVhbVNlc3Npb25SZXF1ZXN0EhYKAmlkGAEgASgJQgq6SAdyBRABGPQDIkkKEUFja01lc3NhZ2VSZXF1ZXN0EhYKAmlkGAEgASgJQgq6SAdyBRABGPQDEhwKCm1lc3NhZ2VfaWQYAiABKAlCCLpIBXIDsAEBIhQKEkFja01lc3NhZ2VSZXNwb25zZSISChBSZWNvbm5lY3RNZXNzYWdlIusBChVTdHJlYW1TZXNzaW9uUmVzcG9uc2USFAoCaWQYASABKAlCCLpIBXIDsAEBEjsKBm91dHB1dBgCIAEoCzIpLm1vY2hhYnVnYXBpcy5hZGFwdC5hdXRvbWF0aW9ucy52MS5PdXRwdXRIABI1CgN1cmwYAyABKAsyJi5tb2NoYWJ1Z2FwaXMuYWRhcHQuYXV0b21hdGlvbnMudjEuVXJsSAASPQoHc2Vzc2lvbhgEIAEoCzIqLm1vY2hhYnVnYXBpcy5hZGFwdC5hdXRvbWF0aW9ucy52MS5TZXNzaW9uSABCCQoHbWVzc2FnZSKMAwoRUnVuU2Vzc2lvblJlcXVlc3QSFgoCaWQYASABKAlCCrpIB3IFEAEY9AMSOwoLdHJhbnNtaXR0ZXIYAiABKAlCIbpIHnIcEAEYZDIWXlthLXpBLVowLTlfLV17MSwxMDB9JEgAiAEBEn4KB3NpZ25hbHMYAyADKAsyQS5tb2NoYWJ1Z2FwaXMuYWRhcHQuYXV0b21hdGlvbnMudjEuUnVuU2Vzc2lvblJlcXVlc3QuU2lnbmFsc0VudHJ5Qiq6SCeaASQiInIgEAEYZDIaXltfJGEtekEtWl1bXyRhLXpBLVowLTldKiQSKAoPY2hhbGxlbmdlX3Rva2VuGAQgASgJQgq6SAdyBRABGPQDSAGIAQEaVAoMU2lnbmFsc0VudHJ5EgsKA2tleRgBIAEoCRIzCgV2YWx1ZRgCIAEoCzIkLm1vY2hhYnVnYXBpcy5hZGFwdC5ncmFwaC5TaWduYWxEYXRhOgI4AUIOCgxfdHJhbnNtaXR0ZXJCEgoQX2NoYWxsZW5nZV90b2tlbiKxAgoSUnVuU2Vzc2lvblJlc3BvbnNlEhQKAmlkGAEgASgJQgi6SAVyA7ABARJHCgdzdGFydGVkGAIgASgLMjQubW9jaGFidWdhcGlzLmFkYXB0LmF1dG9tYXRpb25zLnYxLlJ1blNlc3Npb25TdGFydGVkSAASOwoGb3V0cHV0GAMgASgLMikubW9jaGFidWdhcGlzLmFkYXB0LmF1dG9tYXRpb25zLnYxLk91dHB1dEgAEjUKA3VybBgEIAEoCzImLm1vY2hhYnVnYXBpcy5hZGFwdC5hdXRvbWF0aW9ucy52MS5VcmxIABI9CgdzZXNzaW9uGAUgASgLMioubW9jaGFidWdhcGlzLmFkYXB0LmF1dG9tYXRpb25zLnYxLlNlc3Npb25IAEIJCgdtZXNzYWdlImAKEVJ1blNlc3Npb25TdGFydGVkEg0KBXRva2VuGAEgASgJEjAKB2V4cGlyZXMYAiABKAsyGi5nb29nbGUucHJvdG9idWYuVGltZXN0YW1wSACIAQFCCgoIX2V4cGlyZXMiKwoRUnVuSW5oZXJpdFJlcXVlc3QSFgoCaWQYASABKAlCCrpIB3IFEAEY9AMiswIKElJ1bkluaGVyaXRSZXNwb25zZRIUCgJpZBgBIAEoCUIIukgFcgOwAQESSQoJaW5oZXJpdGVkGAIgASgLMjQubW9jaGFidWdhcGlzLmFkYXB0LmF1dG9tYXRpb25zLnYxLlJ1bkluaGVyaXRTdGFydGVkSAASOwoGb3V0cHV0GAMgASgLMikubW9jaGFidWdhcGlzLmFkYXB0LmF1dG9tYXRpb25zLnYxLk91dHB1dEgAEjUKA3VybBgEIAEoCzImLm1vY2hhYnVnYXBpcy5hZGFwdC5hdXRvbWF0aW9ucy52MS5VcmxIABI9CgdzZXNzaW9uGAUgASgLMioubW9jaGFidWdhcGlzLmFkYXB0LmF1dG9tYXRpb25zLnYxLlNlc3Npb25IAEIJCgdtZXNzYWdlImAKEVJ1bkluaGVyaXRTdGFydGVkEg0KBXRva2VuGAEgASgJEjAKB2V4cGlyZXMYAiABKAsyGi5nb29nbGUucHJvdG9idWYuVGltZXN0YW1wSACIAQFCCgoIX2V4cGlyZXMiLQoTV2F0Y2hTZXNzaW9uUmVxdWVzdBIWCgJpZBgBIAEoCUIKukgHcgUQARj0AyK0AgoUV2F0Y2hTZXNzaW9uUmVzcG9uc2USFAoCaWQYASABKAlCCLpIBXIDsAEBEjsKBm91dHB1dBgCIAEoCzIpLm1vY2hhYnVnYXBpcy5hZGFwdC5hdXRvbWF0aW9ucy52MS5PdXRwdXRIABI1CgN1cmwYAyABKAsyJi5tb2NoYWJ1Z2FwaXMuYWRhcHQuYXV0b21hdGlvbnMudjEuVXJsSAASPQoHc2Vzc2lvbhgEIAEoCzIqLm1vY2hhYnVnYXBpcy5hZGFwdC5hdXRvbWF0aW9ucy52MS5TZXNzaW9uSAASSAoJcmVjb25uZWN0GAUgASgLMjMubW9jaGFidWdhcGlzLmFkYXB0LmF1dG9tYXRpb25zLnYxLlJlY29ubmVjdE1lc3NhZ2VIAEIJCgdtZXNzYWdlIogDCg9XYXRjaFJ1blJlcXVlc3QSFgoCaWQYASABKAlCCrpIB3IFEAEY9AMSOwoLdHJhbnNtaXR0ZXIYAiABKAlCIbpIHnIcEAEYZDIWXlthLXpBLVowLTlfLV17MSwxMDB9JEgAiAEBEnwKB3NpZ25hbHMYAyADKAsyPy5tb2NoYWJ1Z2FwaXMuYWRhcHQuYXV0b21hdGlvbnMudjEuV2F0Y2hSdW5SZXF1ZXN0LlNpZ25hbHNFbnRyeUIqukgnmgEkIiJyIBABGGQyGl5bXyRhLXpBLVpdW18kYS16QS1aMC05XSokEigKD2NoYWxsZW5nZV90b2tlbhgEIAEoCUIKukgHcgUQARj0A0gBiAEBGlQKDFNpZ25hbHNFbnRyeRILCgNrZXkYASABKAkSMwoFdmFsdWUYAiABKAsyJC5tb2NoYWJ1Z2FwaXMuYWRhcHQuZ3JhcGguU2lnbmFsRGF0YToCOAFCDgoMX3RyYW5zbWl0dGVyQhIKEF9jaGFsbGVuZ2VfdG9rZW4i9wIKEFdhdGNoUnVuUmVzcG9uc2USFAoCaWQYASABKAlCCLpIBXIDsAEBEkUKB3N0YXJ0ZWQYAiABKAsyMi5tb2NoYWJ1Z2FwaXMuYWRhcHQuYXV0b21hdGlvbnMudjEuV2F0Y2hSdW5TdGFydGVkSAASOwoGb3V0cHV0GAMgASgLMikubW9jaGFidWdhcGlzLmFkYXB0LmF1dG9tYXRpb25zLnYxLk91dHB1dEgAEjUKA3VybBgEIAEoCzImLm1vY2hhYnVnYXBpcy5hZGFwdC5hdXRvbWF0aW9ucy52MS5VcmxIABI9CgdzZXNzaW9uGAUgASgLMioubW9jaGFidWdhcGlzLmFkYXB0LmF1dG9tYXRpb25zLnYxLlNlc3Npb25IABJICglyZWNvbm5lY3QYBiABKAsyMy5tb2NoYWJ1Z2FwaXMuYWRhcHQuYXV0b21hdGlvbnMudjEuUmVjb25uZWN0TWVzc2FnZUgAQgkKB21lc3NhZ2UiXgoPV2F0Y2hSdW5TdGFydGVkEg0KBXRva2VuGAEgASgJEjAKB2V4cGlyZXMYAiABKAsyGi5nb29nbGUucHJvdG9idWYuVGltZXN0YW1wSACIAQFCCgoIX2V4cGlyZXMiLQoTV2F0Y2hJbmhlcml0UmVxdWVzdBIWCgJpZBgBIAEoCUIKukgHcgUQARj0AyKBAwoUV2F0Y2hJbmhlcml0UmVzcG9uc2USFAoCaWQYASABKAlCCLpIBXIDsAEBEksKCWluaGVyaXRlZBgCIAEoCzI2Lm1vY2hhYnVnYXBpcy5hZGFwdC5hdXRvbWF0aW9ucy52MS5XYXRjaEluaGVyaXRTdGFydGVkSAASOwoGb3V0cHV0GAMgASgLMikubW9jaGFidWdhcGlzLmFkYXB0LmF1dG9tYXRpb25zLnYxLk91dHB1dEgAEjUKA3VybBgEIAEoCzImLm1vY2hhYnVnYXBpcy5hZGFwdC5hdXRvbWF0aW9ucy52MS5VcmxIABI9CgdzZXNzaW9uGAUgASgLMioubW9jaGFidWdhcGlzLmFkYXB0LmF1dG9tYXRpb25zLnYxLlNlc3Npb25IABJICglyZWNvbm5lY3QYBiABKAsyMy5tb2NoYWJ1Z2FwaXMuYWRhcHQuYXV0b21hdGlvbnMudjEuUmVjb25uZWN0TWVzc2FnZUgAQgkKB21lc3NhZ2UiYgoTV2F0Y2hJbmhlcml0U3RhcnRlZBINCgV0b2tlbhgBIAEoCRIwCgdleHBpcmVzGAIgASgLMhouZ29vZ2xlLnByb3RvYnVmLlRpbWVzdGFtcEgAiAEBQgoKCF9leHBpcmVzKsgBCgZTdGF0dXMSFgoSU1RBVFVTX1VOU1BFQ0lGSUVEEAASEgoOU1RBVFVTX1JVTk5JTkcQARISCg5TVEFUVVNfU1RPUFBFRBACEhMKD1NUQVRVU19TVE9QUElORxADEhQKEFNUQVRVU19DT01QTEVURUQQBBISCg5TVEFUVVNfRVhQSVJFRBAFEhIKDlNUQVRVU19FUlJPUkVEEAYSFQoRU1RBVFVTX0RFTEVHQVRJTkcQBxIUChBTVEFUVVNfREVMRUdBVEVEEAgyyRUKEUF1dG9tYXRpb25TZXJ2aWNlErMBCg9DcmVhdGVDaGFsbGVuZ2USOS5tb2NoYWJ1Z2FwaXMuYWRhcHQuYXV0b21hdGlvbnMudjEuQ3JlYXRlQ2hhbGxlbmdlUmVxdWVzdBo6Lm1vY2hhYnVnYXBpcy5hZGFwdC5hdXRvbWF0aW9ucy52MS5DcmVhdGVDaGFsbGVuZ2VSZXNwb25zZSIpgtPkkwIjOgEqIh4vdjEvYXV0b21hdGlvbnMve2lkfS9jaGFsbGVuZ2USugEKD1JlZGVlbUNoYWxsZW5nZRI5Lm1vY2hhYnVnYXBpcy5hZGFwdC5hdXRvbWF0aW9ucy52MS5SZWRlZW1DaGFsbGVuZ2VSZXF1ZXN0GjoubW9jaGFidWdhcGlzLmFkYXB0LmF1dG9tYXRpb25zLnYxLlJlZGVlbUNoYWxsZW5nZVJlc3BvbnNlIjCC0+STAio6ASoiJS92MS9hdXRvbWF0aW9ucy97aWR9L2NoYWxsZW5nZS9yZWRlZW0SrgEKDFN0YXJ0U2Vzc2lvbhI2Lm1vY2hhYnVnYXBpcy5hZGFwdC5hdXRvbWF0aW9ucy52MS5TdGFydFNlc3Npb25SZXF1ZXN0GjcubW9jaGFidWdhcGlzLmFkYXB0LmF1dG9tYXRpb25zLnYxLlN0YXJ0U2Vzc2lvblJlc3BvbnNlIi2C0+STAic6ASoiIi92MS9hdXRvbWF0aW9ucy97aWR9L3Nlc3Npb24vc3RhcnQSogEKC1N0b3BTZXNzaW9uEjUubW9jaGFidWdhcGlzLmFkYXB0LmF1dG9tYXRpb25zLnYxLlN0b3BTZXNzaW9uUmVxdWVzdBo2Lm1vY2hhYnVnYXBpcy5hZGFwdC5hdXRvbWF0aW9ucy52MS5TdG9wU2Vzc2lvblJlc3BvbnNlIiSC0+STAh4qHC92MS9hdXRvbWF0aW9ucy97aWR9L3Nlc3Npb24StgEKDkluaGVyaXRTZXNzaW9uEjgubW9jaGFidWdhcGlzLmFkYXB0LmF1dG9tYXRpb25zLnYxLkluaGVyaXRTZXNzaW9uUmVxdWVzdBo5Lm1vY2hhYnVnYXBpcy5hZGFwdC5hdXRvbWF0aW9ucy52MS5Jbmhlcml0U2Vzc2lvblJlc3BvbnNlIi+C0+STAik6ASoiJC92MS9hdXRvbWF0aW9ucy97aWR9L3Nlc3Npb24vaW5oZXJpdBKfAQoKR2V0U2Vzc2lvbhI0Lm1vY2hhYnVnYXBpcy5hZGFwdC5hdXRvbWF0aW9ucy52MS5HZXRTZXNzaW9uUmVxdWVzdBo1Lm1vY2hhYnVnYXBpcy5hZGFwdC5hdXRvbWF0aW9ucy52MS5HZXRTZXNzaW9uUmVzcG9uc2UiJILT5JMCHhIcL3YxL2F1dG9tYXRpb25zL3tpZH0vc2Vzc2lvbhKmAQoKUmVhZE91dHB1dBI0Lm1vY2hhYnVnYXBpcy5hZGFwdC5hdXRvbWF0aW9ucy52MS5SZWFkT3V0cHV0UmVxdWVzdBo1Lm1vY2hhYnVnYXBpcy5hZGFwdC5hdXRvbWF0aW9ucy52MS5SZWFkT3V0cHV0UmVzcG9uc2UiK4LT5JMCJRIjL3YxL2F1dG9tYXRpb25zL3tpZH0vc2Vzc2lvbi9vdXRwdXQSngEKCFJlYWRVcmxzEjIubW9jaGFidWdhcGlzLmFkYXB0LmF1dG9tYXRpb25zLnYxLlJlYWRVcmxzUmVxdWVzdBozLm1vY2hhYnVnYXBpcy5hZGFwdC5hdXRvbWF0aW9ucy52MS5SZWFkVXJsc1Jlc3BvbnNlIimC0+STAiMSIS92MS9hdXRvbWF0aW9ucy97aWR9L3Nlc3Npb24vdXJscxKxAQoNU3RyZWFtU2Vzc2lvbhI3Lm1vY2hhYnVnYXBpcy5hZGFwdC5hdXRvbWF0aW9ucy52MS5TdHJlYW1TZXNzaW9uUmVxdWVzdBo4Lm1vY2hhYnVnYXBpcy5hZGFwdC5hdXRvbWF0aW9ucy52MS5TdHJlYW1TZXNzaW9uUmVzcG9uc2UiK4LT5JMCJRIjL3YxL2F1dG9tYXRpb25zL3tpZH0vc2Vzc2lvbi9zdHJlYW0wARKmAQoKQWNrTWVzc2FnZRI0Lm1vY2hhYnVnYXBpcy5hZGFwdC5hdXRvbWF0aW9ucy52MS5BY2tNZXNzYWdlUmVxdWVzdBo1Lm1vY2hhYnVnYXBpcy5hZGFwdC5hdXRvbWF0aW9ucy52MS5BY2tNZXNzYWdlUmVzcG9uc2UiK4LT5JMCJToBKiIgL3YxL2F1dG9tYXRpb25zL3tpZH0vc2Vzc2lvbi9hY2sSqAEKClJ1blNlc3Npb24SNC5tb2NoYWJ1Z2FwaXMuYWRhcHQuYXV0b21hdGlvbnMudjEuUnVuU2Vzc2lvblJlcXVlc3QaNS5tb2NoYWJ1Z2FwaXMuYWRhcHQuYXV0b21hdGlvbnMudjEuUnVuU2Vzc2lvblJlc3BvbnNlIiuC0+STAiU6ASoiIC92MS9hdXRvbWF0aW9ucy97aWR9L3Nlc3Npb24vcnVuMAESsAEKClJ1bkluaGVyaXQSNC5tb2NoYWJ1Z2FwaXMuYWRhcHQuYXV0b21hdGlvbnMudjEuUnVuSW5oZXJpdFJlcXVlc3QaNS5tb2NoYWJ1Z2FwaXMuYWRhcHQuYXV0b21hdGlvbnMudjEuUnVuSW5oZXJpdFJlc3BvbnNlIjOC0+STAi06ASoiKC92MS9hdXRvbWF0aW9ucy97aWR9L3Nlc3Npb24vcnVuLWluaGVyaXQwARKoAQoMV2F0Y2hTZXNzaW9uEjYubW9jaGFidWdhcGlzLmFkYXB0LmF1dG9tYXRpb25zLnYxLldhdGNoU2Vzc2lvblJlcXVlc3QaNy5tb2NoYWJ1Z2FwaXMuYWRhcHQuYXV0b21hdGlvbnMudjEuV2F0Y2hTZXNzaW9uUmVzcG9uc2UiJYLT5JMCHzoBKiIaL3YxL2F1dG9tYXRpb25zL3tpZH0vd2F0Y2gwARKgAQoIV2F0Y2hSdW4SMi5tb2NoYWJ1Z2FwaXMuYWRhcHQuYXV0b21hdGlvbnMudjEuV2F0Y2hSdW5SZXF1ZXN0GjMubW9jaGFidWdhcGlzLmFkYXB0LmF1dG9tYXRpb25zLnYxLldhdGNoUnVuUmVzcG9uc2UiKYLT5JMCIzoBKiIeL3YxL2F1dG9tYXRpb25zL3tpZH0vd2F0Y2gtcnVuMAESsAEKDFdhdGNoSW5oZXJpdBI2Lm1vY2hhYnVnYXBpcy5hZGFwdC5hdXRvbWF0aW9ucy52MS5XYXRjaEluaGVyaXRSZXF1ZXN0GjcubW9jaGFidWdhcGlzLmFkYXB0LmF1dG9tYXRpb25zLnYxLldhdGNoSW5oZXJpdFJlc3BvbnNlIi2C0+STAic6ASoiIi92MS9hdXRvbWF0aW9ucy97aWR9L3dhdGNoLWluaGVyaXQwARqJAcpBFmFkYXB0Lm1vY2hhYnVnYXBpcy5jb23SQW1odHRwczovL3d3dy5tb2NoYWJ1Z2FwaXMuY29tL2F1dGgvYWRhcHQuYXV0b21hdGlvbnMsaHR0cHM6Ly93d3cubW9jaGFidWdhcGlzLmNvbS9hdXRoL2FkYXB0LmF1dG9tYXRpb25zLnN0YXJ0YgZwcm90bzM", [file_buf_validate_validate, file_google_api_annotations, file_google_api_client, file_google_protobuf_timestamp, file_mochabugapis_adapt_graph_signal_data]);
|
|
24
24
|
/**
|
|
25
25
|
* Describes the message mochabugapis.adapt.automations.v1.CreateChallengeRequest.
|
|
26
26
|
* Use `create(CreateChallengeRequestSchema)` to create a new message.
|
|
@@ -131,41 +131,86 @@ export const AckMessageRequestSchema = /*@__PURE__*/ messageDesc(file_mochabugap
|
|
|
131
131
|
* Use `create(AckMessageResponseSchema)` to create a new message.
|
|
132
132
|
*/
|
|
133
133
|
export const AckMessageResponseSchema = /*@__PURE__*/ messageDesc(file_mochabugapis_adapt_automations_v1_automations, 21);
|
|
134
|
+
/**
|
|
135
|
+
* Describes the message mochabugapis.adapt.automations.v1.ReconnectMessage.
|
|
136
|
+
* Use `create(ReconnectMessageSchema)` to create a new message.
|
|
137
|
+
*/
|
|
138
|
+
export const ReconnectMessageSchema = /*@__PURE__*/ messageDesc(file_mochabugapis_adapt_automations_v1_automations, 22);
|
|
134
139
|
/**
|
|
135
140
|
* Describes the message mochabugapis.adapt.automations.v1.StreamSessionResponse.
|
|
136
141
|
* Use `create(StreamSessionResponseSchema)` to create a new message.
|
|
137
142
|
*/
|
|
138
|
-
export const StreamSessionResponseSchema = /*@__PURE__*/ messageDesc(file_mochabugapis_adapt_automations_v1_automations,
|
|
143
|
+
export const StreamSessionResponseSchema = /*@__PURE__*/ messageDesc(file_mochabugapis_adapt_automations_v1_automations, 23);
|
|
139
144
|
/**
|
|
140
145
|
* Describes the message mochabugapis.adapt.automations.v1.RunSessionRequest.
|
|
141
146
|
* Use `create(RunSessionRequestSchema)` to create a new message.
|
|
142
147
|
*/
|
|
143
|
-
export const RunSessionRequestSchema = /*@__PURE__*/ messageDesc(file_mochabugapis_adapt_automations_v1_automations,
|
|
148
|
+
export const RunSessionRequestSchema = /*@__PURE__*/ messageDesc(file_mochabugapis_adapt_automations_v1_automations, 24);
|
|
144
149
|
/**
|
|
145
150
|
* Describes the message mochabugapis.adapt.automations.v1.RunSessionResponse.
|
|
146
151
|
* Use `create(RunSessionResponseSchema)` to create a new message.
|
|
147
152
|
*/
|
|
148
|
-
export const RunSessionResponseSchema = /*@__PURE__*/ messageDesc(file_mochabugapis_adapt_automations_v1_automations,
|
|
153
|
+
export const RunSessionResponseSchema = /*@__PURE__*/ messageDesc(file_mochabugapis_adapt_automations_v1_automations, 25);
|
|
149
154
|
/**
|
|
150
155
|
* Describes the message mochabugapis.adapt.automations.v1.RunSessionStarted.
|
|
151
156
|
* Use `create(RunSessionStartedSchema)` to create a new message.
|
|
152
157
|
*/
|
|
153
|
-
export const RunSessionStartedSchema = /*@__PURE__*/ messageDesc(file_mochabugapis_adapt_automations_v1_automations,
|
|
158
|
+
export const RunSessionStartedSchema = /*@__PURE__*/ messageDesc(file_mochabugapis_adapt_automations_v1_automations, 26);
|
|
154
159
|
/**
|
|
155
160
|
* Describes the message mochabugapis.adapt.automations.v1.RunInheritRequest.
|
|
156
161
|
* Use `create(RunInheritRequestSchema)` to create a new message.
|
|
157
162
|
*/
|
|
158
|
-
export const RunInheritRequestSchema = /*@__PURE__*/ messageDesc(file_mochabugapis_adapt_automations_v1_automations,
|
|
163
|
+
export const RunInheritRequestSchema = /*@__PURE__*/ messageDesc(file_mochabugapis_adapt_automations_v1_automations, 27);
|
|
159
164
|
/**
|
|
160
165
|
* Describes the message mochabugapis.adapt.automations.v1.RunInheritResponse.
|
|
161
166
|
* Use `create(RunInheritResponseSchema)` to create a new message.
|
|
162
167
|
*/
|
|
163
|
-
export const RunInheritResponseSchema = /*@__PURE__*/ messageDesc(file_mochabugapis_adapt_automations_v1_automations,
|
|
168
|
+
export const RunInheritResponseSchema = /*@__PURE__*/ messageDesc(file_mochabugapis_adapt_automations_v1_automations, 28);
|
|
164
169
|
/**
|
|
165
170
|
* Describes the message mochabugapis.adapt.automations.v1.RunInheritStarted.
|
|
166
171
|
* Use `create(RunInheritStartedSchema)` to create a new message.
|
|
167
172
|
*/
|
|
168
|
-
export const RunInheritStartedSchema = /*@__PURE__*/ messageDesc(file_mochabugapis_adapt_automations_v1_automations,
|
|
173
|
+
export const RunInheritStartedSchema = /*@__PURE__*/ messageDesc(file_mochabugapis_adapt_automations_v1_automations, 29);
|
|
174
|
+
/**
|
|
175
|
+
* Describes the message mochabugapis.adapt.automations.v1.WatchSessionRequest.
|
|
176
|
+
* Use `create(WatchSessionRequestSchema)` to create a new message.
|
|
177
|
+
*/
|
|
178
|
+
export const WatchSessionRequestSchema = /*@__PURE__*/ messageDesc(file_mochabugapis_adapt_automations_v1_automations, 30);
|
|
179
|
+
/**
|
|
180
|
+
* Describes the message mochabugapis.adapt.automations.v1.WatchSessionResponse.
|
|
181
|
+
* Use `create(WatchSessionResponseSchema)` to create a new message.
|
|
182
|
+
*/
|
|
183
|
+
export const WatchSessionResponseSchema = /*@__PURE__*/ messageDesc(file_mochabugapis_adapt_automations_v1_automations, 31);
|
|
184
|
+
/**
|
|
185
|
+
* Describes the message mochabugapis.adapt.automations.v1.WatchRunRequest.
|
|
186
|
+
* Use `create(WatchRunRequestSchema)` to create a new message.
|
|
187
|
+
*/
|
|
188
|
+
export const WatchRunRequestSchema = /*@__PURE__*/ messageDesc(file_mochabugapis_adapt_automations_v1_automations, 32);
|
|
189
|
+
/**
|
|
190
|
+
* Describes the message mochabugapis.adapt.automations.v1.WatchRunResponse.
|
|
191
|
+
* Use `create(WatchRunResponseSchema)` to create a new message.
|
|
192
|
+
*/
|
|
193
|
+
export const WatchRunResponseSchema = /*@__PURE__*/ messageDesc(file_mochabugapis_adapt_automations_v1_automations, 33);
|
|
194
|
+
/**
|
|
195
|
+
* Describes the message mochabugapis.adapt.automations.v1.WatchRunStarted.
|
|
196
|
+
* Use `create(WatchRunStartedSchema)` to create a new message.
|
|
197
|
+
*/
|
|
198
|
+
export const WatchRunStartedSchema = /*@__PURE__*/ messageDesc(file_mochabugapis_adapt_automations_v1_automations, 34);
|
|
199
|
+
/**
|
|
200
|
+
* Describes the message mochabugapis.adapt.automations.v1.WatchInheritRequest.
|
|
201
|
+
* Use `create(WatchInheritRequestSchema)` to create a new message.
|
|
202
|
+
*/
|
|
203
|
+
export const WatchInheritRequestSchema = /*@__PURE__*/ messageDesc(file_mochabugapis_adapt_automations_v1_automations, 35);
|
|
204
|
+
/**
|
|
205
|
+
* Describes the message mochabugapis.adapt.automations.v1.WatchInheritResponse.
|
|
206
|
+
* Use `create(WatchInheritResponseSchema)` to create a new message.
|
|
207
|
+
*/
|
|
208
|
+
export const WatchInheritResponseSchema = /*@__PURE__*/ messageDesc(file_mochabugapis_adapt_automations_v1_automations, 36);
|
|
209
|
+
/**
|
|
210
|
+
* Describes the message mochabugapis.adapt.automations.v1.WatchInheritStarted.
|
|
211
|
+
* Use `create(WatchInheritStartedSchema)` to create a new message.
|
|
212
|
+
*/
|
|
213
|
+
export const WatchInheritStartedSchema = /*@__PURE__*/ messageDesc(file_mochabugapis_adapt_automations_v1_automations, 37);
|
|
169
214
|
/**
|
|
170
215
|
* The session enum status
|
|
171
216
|
*
|
package/dist/esm/index.js
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { create, enumToJson } from "@bufbuild/protobuf";
|
|
2
2
|
import { timestampDate } from "@bufbuild/protobuf/wkt";
|
|
3
3
|
import { Code, ConnectError } from "@connectrpc/connect";
|
|
4
|
-
import {
|
|
4
|
+
import { StartSessionRequestSchema, Status, StatusSchema, WatchInheritRequestSchema, WatchRunRequestSchema, } from "./genproto/mochabugapis/adapt/automations/v1/automations_pb.js";
|
|
5
5
|
import { SignalDataSchema } from "./genproto/mochabugapis/adapt/graph/signal_data_pb.js";
|
|
6
6
|
// Re-export configuration
|
|
7
7
|
export { configure, getConfig, resetConfig } from "./config.js";
|
|
@@ -106,7 +106,7 @@ export function createAdaptClient(raw, id, options) {
|
|
|
106
106
|
const isMessageSeen = (messageId) => {
|
|
107
107
|
return seenMessages.has(messageId);
|
|
108
108
|
};
|
|
109
|
-
// Process a message from any stream type (
|
|
109
|
+
// Process a message from any stream type (WatchSession, WatchRun, WatchInherit)
|
|
110
110
|
const processMessage = (message) => {
|
|
111
111
|
const { case: type, value } = message.message;
|
|
112
112
|
switch (type) {
|
|
@@ -143,6 +143,9 @@ export function createAdaptClient(raw, id, options) {
|
|
|
143
143
|
}
|
|
144
144
|
return isTerminal;
|
|
145
145
|
}
|
|
146
|
+
case "reconnect":
|
|
147
|
+
log("info", "Reconnect message received");
|
|
148
|
+
return false;
|
|
146
149
|
case "started":
|
|
147
150
|
case "inherited":
|
|
148
151
|
// These should only appear as the first message, which is already
|
|
@@ -161,7 +164,10 @@ export function createAdaptClient(raw, id, options) {
|
|
|
161
164
|
// Process only non-duplicates
|
|
162
165
|
const isTerminal = isDuplicate ? false : processMessage(message);
|
|
163
166
|
// ACK non-terminal messages (including duplicates - server expects ACK on resend)
|
|
164
|
-
|
|
167
|
+
// Don't ACK reconnect messages — they're not stored server-side
|
|
168
|
+
if (!isTerminal &&
|
|
169
|
+
currentHandlers &&
|
|
170
|
+
message.message.case !== "reconnect") {
|
|
165
171
|
raw
|
|
166
172
|
.ackMessage({ id, messageId: message.id }, { headers })
|
|
167
173
|
.catch((e) => log("error", `ACK failed: ${message.id}`, e));
|
|
@@ -178,17 +184,12 @@ export function createAdaptClient(raw, id, options) {
|
|
|
178
184
|
? 0
|
|
179
185
|
: Math.min(50 * Math.pow(2, reconnectAttempts - 2), 30000);
|
|
180
186
|
log("info", `Reconnecting in ${delay}ms (attempt ${reconnectAttempts})`);
|
|
181
|
-
|
|
187
|
+
reconnectTimer = setTimeout(() => {
|
|
188
|
+
reconnectTimer = null;
|
|
182
189
|
connectToStream();
|
|
183
|
-
}
|
|
184
|
-
else {
|
|
185
|
-
reconnectTimer = setTimeout(() => {
|
|
186
|
-
reconnectTimer = null;
|
|
187
|
-
connectToStream();
|
|
188
|
-
}, delay);
|
|
189
|
-
}
|
|
190
|
+
}, delay);
|
|
190
191
|
};
|
|
191
|
-
// Connect to
|
|
192
|
+
// Connect to WatchSession (used for subscribe and reconnection)
|
|
192
193
|
const connectToStream = async () => {
|
|
193
194
|
if (!currentHandlers || !storedToken)
|
|
194
195
|
return;
|
|
@@ -210,15 +211,23 @@ export function createAdaptClient(raw, id, options) {
|
|
|
210
211
|
}
|
|
211
212
|
};
|
|
212
213
|
try {
|
|
213
|
-
const stream = raw.
|
|
214
|
+
const stream = raw.watchSession({ id }, { signal: controller.signal, headers });
|
|
214
215
|
// Start 1-second timer - reset backoff if we stay connected
|
|
215
216
|
resetTimer = setTimeout(resetBackoff, 1000);
|
|
217
|
+
let receivedTerminal = false;
|
|
216
218
|
for await (const message of stream) {
|
|
217
219
|
resetBackoff(); // Reset on first message received
|
|
218
|
-
if (handleMessage(message, headers))
|
|
220
|
+
if (handleMessage(message, headers)) {
|
|
221
|
+
receivedTerminal = true;
|
|
219
222
|
break;
|
|
223
|
+
}
|
|
220
224
|
}
|
|
221
225
|
log("info", "Stream ended normally");
|
|
226
|
+
// Clean close — reconnect immediately if session still active
|
|
227
|
+
if (!receivedTerminal && currentHandlers && storedToken) {
|
|
228
|
+
reconnectAttempts = 0;
|
|
229
|
+
scheduleReconnect();
|
|
230
|
+
}
|
|
222
231
|
}
|
|
223
232
|
catch (error) {
|
|
224
233
|
// Clear timer on error (don't reset backoff if we failed quickly)
|
|
@@ -267,7 +276,7 @@ export function createAdaptClient(raw, id, options) {
|
|
|
267
276
|
log("info", "run", { transmitter: options?.transmitter });
|
|
268
277
|
if (abortController)
|
|
269
278
|
await this.unsubscribe();
|
|
270
|
-
const request = create(
|
|
279
|
+
const request = create(WatchRunRequestSchema, {
|
|
271
280
|
id,
|
|
272
281
|
transmitter: options?.transmitter,
|
|
273
282
|
signals: buildSignals(options?.signals),
|
|
@@ -288,9 +297,9 @@ export function createAdaptClient(raw, id, options) {
|
|
|
288
297
|
resolve = res;
|
|
289
298
|
reject = rej;
|
|
290
299
|
});
|
|
291
|
-
// Helper to attempt
|
|
300
|
+
// Helper to attempt watchRun with retries for pre-token failures
|
|
292
301
|
const attemptRunSession = async () => {
|
|
293
|
-
const stream = raw.
|
|
302
|
+
const stream = raw.watchRun(request, {
|
|
294
303
|
signal: controller.signal,
|
|
295
304
|
headers: runHeaders,
|
|
296
305
|
});
|
|
@@ -311,6 +320,7 @@ export function createAdaptClient(raw, id, options) {
|
|
|
311
320
|
try {
|
|
312
321
|
// Start 1-second timer - reset backoff if we stay connected
|
|
313
322
|
resetTimer = setTimeout(resetBackoff, 1000);
|
|
323
|
+
let receivedTerminal = false;
|
|
314
324
|
for await (const message of stream) {
|
|
315
325
|
resetBackoff(); // Reset on first message received
|
|
316
326
|
if (!token) {
|
|
@@ -330,10 +340,16 @@ export function createAdaptClient(raw, id, options) {
|
|
|
330
340
|
});
|
|
331
341
|
continue;
|
|
332
342
|
}
|
|
333
|
-
if (handleMessage(message, authHeader(token)))
|
|
343
|
+
if (handleMessage(message, authHeader(token))) {
|
|
344
|
+
receivedTerminal = true;
|
|
334
345
|
break;
|
|
346
|
+
}
|
|
335
347
|
}
|
|
336
348
|
log("info", "Stream ended normally");
|
|
349
|
+
if (token && !receivedTerminal && currentHandlers && storedToken) {
|
|
350
|
+
reconnectAttempts = 0;
|
|
351
|
+
scheduleReconnect();
|
|
352
|
+
}
|
|
337
353
|
}
|
|
338
354
|
catch (error) {
|
|
339
355
|
// Clear timer on error
|
|
@@ -347,12 +363,12 @@ export function createAdaptClient(raw, id, options) {
|
|
|
347
363
|
if (!token) {
|
|
348
364
|
// Before token: retry retriable errors, reject non-retriable
|
|
349
365
|
if (isRetriableError(error)) {
|
|
350
|
-
// Schedule retry of
|
|
366
|
+
// Schedule retry of watchRun itself
|
|
351
367
|
reconnectAttempts++;
|
|
352
368
|
const delay = reconnectAttempts === 1
|
|
353
369
|
? 0
|
|
354
370
|
: Math.min(50 * Math.pow(2, reconnectAttempts - 2), 30000);
|
|
355
|
-
log("info", `Retrying
|
|
371
|
+
log("info", `Retrying watchRun in ${delay}ms (attempt ${reconnectAttempts})`);
|
|
356
372
|
if (delay === 0) {
|
|
357
373
|
attemptRunSession();
|
|
358
374
|
}
|
|
@@ -368,7 +384,7 @@ export function createAdaptClient(raw, id, options) {
|
|
|
368
384
|
}
|
|
369
385
|
}
|
|
370
386
|
else {
|
|
371
|
-
// After token: use standard reconnect logic (
|
|
387
|
+
// After token: use standard reconnect logic (watchSession)
|
|
372
388
|
if (isRetriableError(error)) {
|
|
373
389
|
scheduleReconnect();
|
|
374
390
|
}
|
|
@@ -398,16 +414,16 @@ export function createAdaptClient(raw, id, options) {
|
|
|
398
414
|
abortController = controller;
|
|
399
415
|
currentHandlers = handlers ?? {};
|
|
400
416
|
reconnectAttempts = 0;
|
|
401
|
-
const request = create(
|
|
417
|
+
const request = create(WatchInheritRequestSchema, { id });
|
|
402
418
|
let resolve;
|
|
403
419
|
let reject;
|
|
404
420
|
const sessionPromise = new Promise((res, rej) => {
|
|
405
421
|
resolve = res;
|
|
406
422
|
reject = rej;
|
|
407
423
|
});
|
|
408
|
-
// Helper to attempt
|
|
424
|
+
// Helper to attempt watchInherit with retries for pre-token failures
|
|
409
425
|
const attemptRunInherit = async () => {
|
|
410
|
-
const stream = raw.
|
|
426
|
+
const stream = raw.watchInherit(request, {
|
|
411
427
|
signal: controller.signal,
|
|
412
428
|
headers: authHeader(parentToken),
|
|
413
429
|
});
|
|
@@ -428,6 +444,7 @@ export function createAdaptClient(raw, id, options) {
|
|
|
428
444
|
try {
|
|
429
445
|
// Start 1-second timer - reset backoff if we stay connected
|
|
430
446
|
resetTimer = setTimeout(resetBackoff, 1000);
|
|
447
|
+
let receivedTerminal = false;
|
|
431
448
|
for await (const message of stream) {
|
|
432
449
|
resetBackoff(); // Reset on first message received
|
|
433
450
|
if (!token) {
|
|
@@ -447,10 +464,16 @@ export function createAdaptClient(raw, id, options) {
|
|
|
447
464
|
});
|
|
448
465
|
continue;
|
|
449
466
|
}
|
|
450
|
-
if (handleMessage(message, authHeader(token)))
|
|
467
|
+
if (handleMessage(message, authHeader(token))) {
|
|
468
|
+
receivedTerminal = true;
|
|
451
469
|
break;
|
|
470
|
+
}
|
|
452
471
|
}
|
|
453
472
|
log("info", "Stream ended normally");
|
|
473
|
+
if (token && !receivedTerminal && currentHandlers && storedToken) {
|
|
474
|
+
reconnectAttempts = 0;
|
|
475
|
+
scheduleReconnect();
|
|
476
|
+
}
|
|
454
477
|
}
|
|
455
478
|
catch (error) {
|
|
456
479
|
// Clear timer on error
|
|
@@ -464,12 +487,12 @@ export function createAdaptClient(raw, id, options) {
|
|
|
464
487
|
if (!token) {
|
|
465
488
|
// Before token: retry retriable errors, reject non-retriable
|
|
466
489
|
if (isRetriableError(error)) {
|
|
467
|
-
// Schedule retry of
|
|
490
|
+
// Schedule retry of watchInherit itself
|
|
468
491
|
reconnectAttempts++;
|
|
469
492
|
const delay = reconnectAttempts === 1
|
|
470
493
|
? 0
|
|
471
494
|
: Math.min(50 * Math.pow(2, reconnectAttempts - 2), 30000);
|
|
472
|
-
log("info", `Retrying
|
|
495
|
+
log("info", `Retrying watchInherit in ${delay}ms (attempt ${reconnectAttempts})`);
|
|
473
496
|
if (delay === 0) {
|
|
474
497
|
attemptRunInherit();
|
|
475
498
|
}
|
|
@@ -485,7 +508,7 @@ export function createAdaptClient(raw, id, options) {
|
|
|
485
508
|
}
|
|
486
509
|
}
|
|
487
510
|
else {
|
|
488
|
-
// After token: use standard reconnect logic (
|
|
511
|
+
// After token: use standard reconnect logic (watchSession)
|
|
489
512
|
if (isRetriableError(error)) {
|
|
490
513
|
scheduleReconnect();
|
|
491
514
|
}
|
|
@@ -1142,6 +1142,27 @@ export type AckMessageResponseJson = {};
|
|
|
1142
1142
|
export declare const AckMessageResponseSchema: GenMessage<AckMessageResponse, {
|
|
1143
1143
|
jsonType: AckMessageResponseJson;
|
|
1144
1144
|
}>;
|
|
1145
|
+
/**
|
|
1146
|
+
* ReconnectMessage signals the client to reconnect.
|
|
1147
|
+
* Sent before stream close to allow clean reconnection.
|
|
1148
|
+
*
|
|
1149
|
+
* @generated from message mochabugapis.adapt.automations.v1.ReconnectMessage
|
|
1150
|
+
*/
|
|
1151
|
+
export type ReconnectMessage = Message<"mochabugapis.adapt.automations.v1.ReconnectMessage"> & {};
|
|
1152
|
+
/**
|
|
1153
|
+
* ReconnectMessage signals the client to reconnect.
|
|
1154
|
+
* Sent before stream close to allow clean reconnection.
|
|
1155
|
+
*
|
|
1156
|
+
* @generated from message mochabugapis.adapt.automations.v1.ReconnectMessage
|
|
1157
|
+
*/
|
|
1158
|
+
export type ReconnectMessageJson = {};
|
|
1159
|
+
/**
|
|
1160
|
+
* Describes the message mochabugapis.adapt.automations.v1.ReconnectMessage.
|
|
1161
|
+
* Use `create(ReconnectMessageSchema)` to create a new message.
|
|
1162
|
+
*/
|
|
1163
|
+
export declare const ReconnectMessageSchema: GenMessage<ReconnectMessage, {
|
|
1164
|
+
jsonType: ReconnectMessageJson;
|
|
1165
|
+
}>;
|
|
1145
1166
|
/**
|
|
1146
1167
|
* StreamSessionResponse wraps all possible message types sent via streaming
|
|
1147
1168
|
*
|
|
@@ -1624,6 +1645,561 @@ export type RunInheritStartedJson = {
|
|
|
1624
1645
|
export declare const RunInheritStartedSchema: GenMessage<RunInheritStarted, {
|
|
1625
1646
|
jsonType: RunInheritStartedJson;
|
|
1626
1647
|
}>;
|
|
1648
|
+
/**
|
|
1649
|
+
* WatchSessionRequest to start watching session messages with reconnect support
|
|
1650
|
+
*
|
|
1651
|
+
* @generated from message mochabugapis.adapt.automations.v1.WatchSessionRequest
|
|
1652
|
+
*/
|
|
1653
|
+
export type WatchSessionRequest = Message<"mochabugapis.adapt.automations.v1.WatchSessionRequest"> & {
|
|
1654
|
+
/**
|
|
1655
|
+
* The automation id to watch
|
|
1656
|
+
*
|
|
1657
|
+
* @generated from field: string id = 1;
|
|
1658
|
+
*/
|
|
1659
|
+
id: string;
|
|
1660
|
+
};
|
|
1661
|
+
/**
|
|
1662
|
+
* WatchSessionRequest to start watching session messages with reconnect support
|
|
1663
|
+
*
|
|
1664
|
+
* @generated from message mochabugapis.adapt.automations.v1.WatchSessionRequest
|
|
1665
|
+
*/
|
|
1666
|
+
export type WatchSessionRequestJson = {
|
|
1667
|
+
/**
|
|
1668
|
+
* The automation id to watch
|
|
1669
|
+
*
|
|
1670
|
+
* @generated from field: string id = 1;
|
|
1671
|
+
*/
|
|
1672
|
+
id?: string;
|
|
1673
|
+
};
|
|
1674
|
+
/**
|
|
1675
|
+
* Describes the message mochabugapis.adapt.automations.v1.WatchSessionRequest.
|
|
1676
|
+
* Use `create(WatchSessionRequestSchema)` to create a new message.
|
|
1677
|
+
*/
|
|
1678
|
+
export declare const WatchSessionRequestSchema: GenMessage<WatchSessionRequest, {
|
|
1679
|
+
jsonType: WatchSessionRequestJson;
|
|
1680
|
+
}>;
|
|
1681
|
+
/**
|
|
1682
|
+
* WatchSessionResponse wraps all possible message types sent via watch streaming
|
|
1683
|
+
*
|
|
1684
|
+
* @generated from message mochabugapis.adapt.automations.v1.WatchSessionResponse
|
|
1685
|
+
*/
|
|
1686
|
+
export type WatchSessionResponse = Message<"mochabugapis.adapt.automations.v1.WatchSessionResponse"> & {
|
|
1687
|
+
/**
|
|
1688
|
+
* A timesortable uuid for the message
|
|
1689
|
+
*
|
|
1690
|
+
* @generated from field: string id = 1;
|
|
1691
|
+
*/
|
|
1692
|
+
id: string;
|
|
1693
|
+
/**
|
|
1694
|
+
* The actual message, one of the following types
|
|
1695
|
+
*
|
|
1696
|
+
* @generated from oneof mochabugapis.adapt.automations.v1.WatchSessionResponse.message
|
|
1697
|
+
*/
|
|
1698
|
+
message: {
|
|
1699
|
+
/**
|
|
1700
|
+
* Output message from a vertex
|
|
1701
|
+
*
|
|
1702
|
+
* @generated from field: mochabugapis.adapt.automations.v1.Output output = 2;
|
|
1703
|
+
*/
|
|
1704
|
+
value: Output;
|
|
1705
|
+
case: "output";
|
|
1706
|
+
} | {
|
|
1707
|
+
/**
|
|
1708
|
+
* URL message for browser interaction
|
|
1709
|
+
*
|
|
1710
|
+
* @generated from field: mochabugapis.adapt.automations.v1.Url url = 3;
|
|
1711
|
+
*/
|
|
1712
|
+
value: Url;
|
|
1713
|
+
case: "url";
|
|
1714
|
+
} | {
|
|
1715
|
+
/**
|
|
1716
|
+
* Session status update
|
|
1717
|
+
*
|
|
1718
|
+
* @generated from field: mochabugapis.adapt.automations.v1.Session session = 4;
|
|
1719
|
+
*/
|
|
1720
|
+
value: Session;
|
|
1721
|
+
case: "session";
|
|
1722
|
+
} | {
|
|
1723
|
+
/**
|
|
1724
|
+
* Reconnect message — client should reconnect after stream closes
|
|
1725
|
+
*
|
|
1726
|
+
* @generated from field: mochabugapis.adapt.automations.v1.ReconnectMessage reconnect = 5;
|
|
1727
|
+
*/
|
|
1728
|
+
value: ReconnectMessage;
|
|
1729
|
+
case: "reconnect";
|
|
1730
|
+
} | {
|
|
1731
|
+
case: undefined;
|
|
1732
|
+
value?: undefined;
|
|
1733
|
+
};
|
|
1734
|
+
};
|
|
1735
|
+
/**
|
|
1736
|
+
* WatchSessionResponse wraps all possible message types sent via watch streaming
|
|
1737
|
+
*
|
|
1738
|
+
* @generated from message mochabugapis.adapt.automations.v1.WatchSessionResponse
|
|
1739
|
+
*/
|
|
1740
|
+
export type WatchSessionResponseJson = {
|
|
1741
|
+
/**
|
|
1742
|
+
* A timesortable uuid for the message
|
|
1743
|
+
*
|
|
1744
|
+
* @generated from field: string id = 1;
|
|
1745
|
+
*/
|
|
1746
|
+
id?: string;
|
|
1747
|
+
/**
|
|
1748
|
+
* Output message from a vertex
|
|
1749
|
+
*
|
|
1750
|
+
* @generated from field: mochabugapis.adapt.automations.v1.Output output = 2;
|
|
1751
|
+
*/
|
|
1752
|
+
output?: OutputJson;
|
|
1753
|
+
/**
|
|
1754
|
+
* URL message for browser interaction
|
|
1755
|
+
*
|
|
1756
|
+
* @generated from field: mochabugapis.adapt.automations.v1.Url url = 3;
|
|
1757
|
+
*/
|
|
1758
|
+
url?: UrlJson;
|
|
1759
|
+
/**
|
|
1760
|
+
* Session status update
|
|
1761
|
+
*
|
|
1762
|
+
* @generated from field: mochabugapis.adapt.automations.v1.Session session = 4;
|
|
1763
|
+
*/
|
|
1764
|
+
session?: SessionJson;
|
|
1765
|
+
/**
|
|
1766
|
+
* Reconnect message — client should reconnect after stream closes
|
|
1767
|
+
*
|
|
1768
|
+
* @generated from field: mochabugapis.adapt.automations.v1.ReconnectMessage reconnect = 5;
|
|
1769
|
+
*/
|
|
1770
|
+
reconnect?: ReconnectMessageJson;
|
|
1771
|
+
};
|
|
1772
|
+
/**
|
|
1773
|
+
* Describes the message mochabugapis.adapt.automations.v1.WatchSessionResponse.
|
|
1774
|
+
* Use `create(WatchSessionResponseSchema)` to create a new message.
|
|
1775
|
+
*/
|
|
1776
|
+
export declare const WatchSessionResponseSchema: GenMessage<WatchSessionResponse, {
|
|
1777
|
+
jsonType: WatchSessionResponseJson;
|
|
1778
|
+
}>;
|
|
1779
|
+
/**
|
|
1780
|
+
* WatchRunRequest to start and watch a session in one request
|
|
1781
|
+
*
|
|
1782
|
+
* @generated from message mochabugapis.adapt.automations.v1.WatchRunRequest
|
|
1783
|
+
*/
|
|
1784
|
+
export type WatchRunRequest = Message<"mochabugapis.adapt.automations.v1.WatchRunRequest"> & {
|
|
1785
|
+
/**
|
|
1786
|
+
* The automation id to run
|
|
1787
|
+
*
|
|
1788
|
+
* @generated from field: string id = 1;
|
|
1789
|
+
*/
|
|
1790
|
+
id: string;
|
|
1791
|
+
/**
|
|
1792
|
+
* The transmitter to start from (optional, it defaults to the first one, always)
|
|
1793
|
+
*
|
|
1794
|
+
* @generated from field: optional string transmitter = 2;
|
|
1795
|
+
*/
|
|
1796
|
+
transmitter?: string;
|
|
1797
|
+
/**
|
|
1798
|
+
* The signals on the transmitter you wish to start with
|
|
1799
|
+
*
|
|
1800
|
+
* @generated from field: map<string, mochabugapis.adapt.graph.SignalData> signals = 3;
|
|
1801
|
+
*/
|
|
1802
|
+
signals: {
|
|
1803
|
+
[key: string]: SignalData;
|
|
1804
|
+
};
|
|
1805
|
+
/**
|
|
1806
|
+
* An optional token to redeem a challenge before starting, if the automation requires it
|
|
1807
|
+
*
|
|
1808
|
+
* @generated from field: optional string challenge_token = 4;
|
|
1809
|
+
*/
|
|
1810
|
+
challengeToken?: string;
|
|
1811
|
+
};
|
|
1812
|
+
/**
|
|
1813
|
+
* WatchRunRequest to start and watch a session in one request
|
|
1814
|
+
*
|
|
1815
|
+
* @generated from message mochabugapis.adapt.automations.v1.WatchRunRequest
|
|
1816
|
+
*/
|
|
1817
|
+
export type WatchRunRequestJson = {
|
|
1818
|
+
/**
|
|
1819
|
+
* The automation id to run
|
|
1820
|
+
*
|
|
1821
|
+
* @generated from field: string id = 1;
|
|
1822
|
+
*/
|
|
1823
|
+
id?: string;
|
|
1824
|
+
/**
|
|
1825
|
+
* The transmitter to start from (optional, it defaults to the first one, always)
|
|
1826
|
+
*
|
|
1827
|
+
* @generated from field: optional string transmitter = 2;
|
|
1828
|
+
*/
|
|
1829
|
+
transmitter?: string;
|
|
1830
|
+
/**
|
|
1831
|
+
* The signals on the transmitter you wish to start with
|
|
1832
|
+
*
|
|
1833
|
+
* @generated from field: map<string, mochabugapis.adapt.graph.SignalData> signals = 3;
|
|
1834
|
+
*/
|
|
1835
|
+
signals?: {
|
|
1836
|
+
[key: string]: SignalDataJson;
|
|
1837
|
+
};
|
|
1838
|
+
/**
|
|
1839
|
+
* An optional token to redeem a challenge before starting, if the automation requires it
|
|
1840
|
+
*
|
|
1841
|
+
* @generated from field: optional string challenge_token = 4;
|
|
1842
|
+
*/
|
|
1843
|
+
challengeToken?: string;
|
|
1844
|
+
};
|
|
1845
|
+
/**
|
|
1846
|
+
* Describes the message mochabugapis.adapt.automations.v1.WatchRunRequest.
|
|
1847
|
+
* Use `create(WatchRunRequestSchema)` to create a new message.
|
|
1848
|
+
*/
|
|
1849
|
+
export declare const WatchRunRequestSchema: GenMessage<WatchRunRequest, {
|
|
1850
|
+
jsonType: WatchRunRequestJson;
|
|
1851
|
+
}>;
|
|
1852
|
+
/**
|
|
1853
|
+
* WatchRunResponse wraps all possible message types sent via watch streaming
|
|
1854
|
+
* The first message will always be a started message containing the session token
|
|
1855
|
+
*
|
|
1856
|
+
* @generated from message mochabugapis.adapt.automations.v1.WatchRunResponse
|
|
1857
|
+
*/
|
|
1858
|
+
export type WatchRunResponse = Message<"mochabugapis.adapt.automations.v1.WatchRunResponse"> & {
|
|
1859
|
+
/**
|
|
1860
|
+
* A timesortable uuid for the message
|
|
1861
|
+
*
|
|
1862
|
+
* @generated from field: string id = 1;
|
|
1863
|
+
*/
|
|
1864
|
+
id: string;
|
|
1865
|
+
/**
|
|
1866
|
+
* The actual message, one of the following types
|
|
1867
|
+
*
|
|
1868
|
+
* @generated from oneof mochabugapis.adapt.automations.v1.WatchRunResponse.message
|
|
1869
|
+
*/
|
|
1870
|
+
message: {
|
|
1871
|
+
/**
|
|
1872
|
+
* Session started message (always first)
|
|
1873
|
+
*
|
|
1874
|
+
* @generated from field: mochabugapis.adapt.automations.v1.WatchRunStarted started = 2;
|
|
1875
|
+
*/
|
|
1876
|
+
value: WatchRunStarted;
|
|
1877
|
+
case: "started";
|
|
1878
|
+
} | {
|
|
1879
|
+
/**
|
|
1880
|
+
* Output message from a vertex
|
|
1881
|
+
*
|
|
1882
|
+
* @generated from field: mochabugapis.adapt.automations.v1.Output output = 3;
|
|
1883
|
+
*/
|
|
1884
|
+
value: Output;
|
|
1885
|
+
case: "output";
|
|
1886
|
+
} | {
|
|
1887
|
+
/**
|
|
1888
|
+
* URL message for browser interaction
|
|
1889
|
+
*
|
|
1890
|
+
* @generated from field: mochabugapis.adapt.automations.v1.Url url = 4;
|
|
1891
|
+
*/
|
|
1892
|
+
value: Url;
|
|
1893
|
+
case: "url";
|
|
1894
|
+
} | {
|
|
1895
|
+
/**
|
|
1896
|
+
* Session status update
|
|
1897
|
+
*
|
|
1898
|
+
* @generated from field: mochabugapis.adapt.automations.v1.Session session = 5;
|
|
1899
|
+
*/
|
|
1900
|
+
value: Session;
|
|
1901
|
+
case: "session";
|
|
1902
|
+
} | {
|
|
1903
|
+
/**
|
|
1904
|
+
* Reconnect message — client should reconnect after stream closes
|
|
1905
|
+
*
|
|
1906
|
+
* @generated from field: mochabugapis.adapt.automations.v1.ReconnectMessage reconnect = 6;
|
|
1907
|
+
*/
|
|
1908
|
+
value: ReconnectMessage;
|
|
1909
|
+
case: "reconnect";
|
|
1910
|
+
} | {
|
|
1911
|
+
case: undefined;
|
|
1912
|
+
value?: undefined;
|
|
1913
|
+
};
|
|
1914
|
+
};
|
|
1915
|
+
/**
|
|
1916
|
+
* WatchRunResponse wraps all possible message types sent via watch streaming
|
|
1917
|
+
* The first message will always be a started message containing the session token
|
|
1918
|
+
*
|
|
1919
|
+
* @generated from message mochabugapis.adapt.automations.v1.WatchRunResponse
|
|
1920
|
+
*/
|
|
1921
|
+
export type WatchRunResponseJson = {
|
|
1922
|
+
/**
|
|
1923
|
+
* A timesortable uuid for the message
|
|
1924
|
+
*
|
|
1925
|
+
* @generated from field: string id = 1;
|
|
1926
|
+
*/
|
|
1927
|
+
id?: string;
|
|
1928
|
+
/**
|
|
1929
|
+
* Session started message (always first)
|
|
1930
|
+
*
|
|
1931
|
+
* @generated from field: mochabugapis.adapt.automations.v1.WatchRunStarted started = 2;
|
|
1932
|
+
*/
|
|
1933
|
+
started?: WatchRunStartedJson;
|
|
1934
|
+
/**
|
|
1935
|
+
* Output message from a vertex
|
|
1936
|
+
*
|
|
1937
|
+
* @generated from field: mochabugapis.adapt.automations.v1.Output output = 3;
|
|
1938
|
+
*/
|
|
1939
|
+
output?: OutputJson;
|
|
1940
|
+
/**
|
|
1941
|
+
* URL message for browser interaction
|
|
1942
|
+
*
|
|
1943
|
+
* @generated from field: mochabugapis.adapt.automations.v1.Url url = 4;
|
|
1944
|
+
*/
|
|
1945
|
+
url?: UrlJson;
|
|
1946
|
+
/**
|
|
1947
|
+
* Session status update
|
|
1948
|
+
*
|
|
1949
|
+
* @generated from field: mochabugapis.adapt.automations.v1.Session session = 5;
|
|
1950
|
+
*/
|
|
1951
|
+
session?: SessionJson;
|
|
1952
|
+
/**
|
|
1953
|
+
* Reconnect message — client should reconnect after stream closes
|
|
1954
|
+
*
|
|
1955
|
+
* @generated from field: mochabugapis.adapt.automations.v1.ReconnectMessage reconnect = 6;
|
|
1956
|
+
*/
|
|
1957
|
+
reconnect?: ReconnectMessageJson;
|
|
1958
|
+
};
|
|
1959
|
+
/**
|
|
1960
|
+
* Describes the message mochabugapis.adapt.automations.v1.WatchRunResponse.
|
|
1961
|
+
* Use `create(WatchRunResponseSchema)` to create a new message.
|
|
1962
|
+
*/
|
|
1963
|
+
export declare const WatchRunResponseSchema: GenMessage<WatchRunResponse, {
|
|
1964
|
+
jsonType: WatchRunResponseJson;
|
|
1965
|
+
}>;
|
|
1966
|
+
/**
|
|
1967
|
+
* WatchRunStarted is sent as the first message when a watch-run session starts
|
|
1968
|
+
*
|
|
1969
|
+
* @generated from message mochabugapis.adapt.automations.v1.WatchRunStarted
|
|
1970
|
+
*/
|
|
1971
|
+
export type WatchRunStarted = Message<"mochabugapis.adapt.automations.v1.WatchRunStarted"> & {
|
|
1972
|
+
/**
|
|
1973
|
+
* The access token for the session
|
|
1974
|
+
*
|
|
1975
|
+
* @generated from field: string token = 1;
|
|
1976
|
+
*/
|
|
1977
|
+
token: string;
|
|
1978
|
+
/**
|
|
1979
|
+
* The timestamp when the session expires, if not set, the session never expires
|
|
1980
|
+
*
|
|
1981
|
+
* @generated from field: optional google.protobuf.Timestamp expires = 2;
|
|
1982
|
+
*/
|
|
1983
|
+
expires?: Timestamp;
|
|
1984
|
+
};
|
|
1985
|
+
/**
|
|
1986
|
+
* WatchRunStarted is sent as the first message when a watch-run session starts
|
|
1987
|
+
*
|
|
1988
|
+
* @generated from message mochabugapis.adapt.automations.v1.WatchRunStarted
|
|
1989
|
+
*/
|
|
1990
|
+
export type WatchRunStartedJson = {
|
|
1991
|
+
/**
|
|
1992
|
+
* The access token for the session
|
|
1993
|
+
*
|
|
1994
|
+
* @generated from field: string token = 1;
|
|
1995
|
+
*/
|
|
1996
|
+
token?: string;
|
|
1997
|
+
/**
|
|
1998
|
+
* The timestamp when the session expires, if not set, the session never expires
|
|
1999
|
+
*
|
|
2000
|
+
* @generated from field: optional google.protobuf.Timestamp expires = 2;
|
|
2001
|
+
*/
|
|
2002
|
+
expires?: TimestampJson;
|
|
2003
|
+
};
|
|
2004
|
+
/**
|
|
2005
|
+
* Describes the message mochabugapis.adapt.automations.v1.WatchRunStarted.
|
|
2006
|
+
* Use `create(WatchRunStartedSchema)` to create a new message.
|
|
2007
|
+
*/
|
|
2008
|
+
export declare const WatchRunStartedSchema: GenMessage<WatchRunStarted, {
|
|
2009
|
+
jsonType: WatchRunStartedJson;
|
|
2010
|
+
}>;
|
|
2011
|
+
/**
|
|
2012
|
+
* WatchInheritRequest to inherit and watch a session in one request
|
|
2013
|
+
*
|
|
2014
|
+
* @generated from message mochabugapis.adapt.automations.v1.WatchInheritRequest
|
|
2015
|
+
*/
|
|
2016
|
+
export type WatchInheritRequest = Message<"mochabugapis.adapt.automations.v1.WatchInheritRequest"> & {
|
|
2017
|
+
/**
|
|
2018
|
+
* The automation id to inherit
|
|
2019
|
+
*
|
|
2020
|
+
* @generated from field: string id = 1;
|
|
2021
|
+
*/
|
|
2022
|
+
id: string;
|
|
2023
|
+
};
|
|
2024
|
+
/**
|
|
2025
|
+
* WatchInheritRequest to inherit and watch a session in one request
|
|
2026
|
+
*
|
|
2027
|
+
* @generated from message mochabugapis.adapt.automations.v1.WatchInheritRequest
|
|
2028
|
+
*/
|
|
2029
|
+
export type WatchInheritRequestJson = {
|
|
2030
|
+
/**
|
|
2031
|
+
* The automation id to inherit
|
|
2032
|
+
*
|
|
2033
|
+
* @generated from field: string id = 1;
|
|
2034
|
+
*/
|
|
2035
|
+
id?: string;
|
|
2036
|
+
};
|
|
2037
|
+
/**
|
|
2038
|
+
* Describes the message mochabugapis.adapt.automations.v1.WatchInheritRequest.
|
|
2039
|
+
* Use `create(WatchInheritRequestSchema)` to create a new message.
|
|
2040
|
+
*/
|
|
2041
|
+
export declare const WatchInheritRequestSchema: GenMessage<WatchInheritRequest, {
|
|
2042
|
+
jsonType: WatchInheritRequestJson;
|
|
2043
|
+
}>;
|
|
2044
|
+
/**
|
|
2045
|
+
* WatchInheritResponse wraps all possible message types sent via watch streaming
|
|
2046
|
+
* The first message will always be an inherited message containing the session token
|
|
2047
|
+
*
|
|
2048
|
+
* @generated from message mochabugapis.adapt.automations.v1.WatchInheritResponse
|
|
2049
|
+
*/
|
|
2050
|
+
export type WatchInheritResponse = Message<"mochabugapis.adapt.automations.v1.WatchInheritResponse"> & {
|
|
2051
|
+
/**
|
|
2052
|
+
* A timesortable uuid for the message
|
|
2053
|
+
*
|
|
2054
|
+
* @generated from field: string id = 1;
|
|
2055
|
+
*/
|
|
2056
|
+
id: string;
|
|
2057
|
+
/**
|
|
2058
|
+
* The actual message, one of the following types
|
|
2059
|
+
*
|
|
2060
|
+
* @generated from oneof mochabugapis.adapt.automations.v1.WatchInheritResponse.message
|
|
2061
|
+
*/
|
|
2062
|
+
message: {
|
|
2063
|
+
/**
|
|
2064
|
+
* Session inherited message (always first)
|
|
2065
|
+
*
|
|
2066
|
+
* @generated from field: mochabugapis.adapt.automations.v1.WatchInheritStarted inherited = 2;
|
|
2067
|
+
*/
|
|
2068
|
+
value: WatchInheritStarted;
|
|
2069
|
+
case: "inherited";
|
|
2070
|
+
} | {
|
|
2071
|
+
/**
|
|
2072
|
+
* Output message from a vertex
|
|
2073
|
+
*
|
|
2074
|
+
* @generated from field: mochabugapis.adapt.automations.v1.Output output = 3;
|
|
2075
|
+
*/
|
|
2076
|
+
value: Output;
|
|
2077
|
+
case: "output";
|
|
2078
|
+
} | {
|
|
2079
|
+
/**
|
|
2080
|
+
* URL message for browser interaction
|
|
2081
|
+
*
|
|
2082
|
+
* @generated from field: mochabugapis.adapt.automations.v1.Url url = 4;
|
|
2083
|
+
*/
|
|
2084
|
+
value: Url;
|
|
2085
|
+
case: "url";
|
|
2086
|
+
} | {
|
|
2087
|
+
/**
|
|
2088
|
+
* Session status update
|
|
2089
|
+
*
|
|
2090
|
+
* @generated from field: mochabugapis.adapt.automations.v1.Session session = 5;
|
|
2091
|
+
*/
|
|
2092
|
+
value: Session;
|
|
2093
|
+
case: "session";
|
|
2094
|
+
} | {
|
|
2095
|
+
/**
|
|
2096
|
+
* Reconnect message — client should reconnect after stream closes
|
|
2097
|
+
*
|
|
2098
|
+
* @generated from field: mochabugapis.adapt.automations.v1.ReconnectMessage reconnect = 6;
|
|
2099
|
+
*/
|
|
2100
|
+
value: ReconnectMessage;
|
|
2101
|
+
case: "reconnect";
|
|
2102
|
+
} | {
|
|
2103
|
+
case: undefined;
|
|
2104
|
+
value?: undefined;
|
|
2105
|
+
};
|
|
2106
|
+
};
|
|
2107
|
+
/**
|
|
2108
|
+
* WatchInheritResponse wraps all possible message types sent via watch streaming
|
|
2109
|
+
* The first message will always be an inherited message containing the session token
|
|
2110
|
+
*
|
|
2111
|
+
* @generated from message mochabugapis.adapt.automations.v1.WatchInheritResponse
|
|
2112
|
+
*/
|
|
2113
|
+
export type WatchInheritResponseJson = {
|
|
2114
|
+
/**
|
|
2115
|
+
* A timesortable uuid for the message
|
|
2116
|
+
*
|
|
2117
|
+
* @generated from field: string id = 1;
|
|
2118
|
+
*/
|
|
2119
|
+
id?: string;
|
|
2120
|
+
/**
|
|
2121
|
+
* Session inherited message (always first)
|
|
2122
|
+
*
|
|
2123
|
+
* @generated from field: mochabugapis.adapt.automations.v1.WatchInheritStarted inherited = 2;
|
|
2124
|
+
*/
|
|
2125
|
+
inherited?: WatchInheritStartedJson;
|
|
2126
|
+
/**
|
|
2127
|
+
* Output message from a vertex
|
|
2128
|
+
*
|
|
2129
|
+
* @generated from field: mochabugapis.adapt.automations.v1.Output output = 3;
|
|
2130
|
+
*/
|
|
2131
|
+
output?: OutputJson;
|
|
2132
|
+
/**
|
|
2133
|
+
* URL message for browser interaction
|
|
2134
|
+
*
|
|
2135
|
+
* @generated from field: mochabugapis.adapt.automations.v1.Url url = 4;
|
|
2136
|
+
*/
|
|
2137
|
+
url?: UrlJson;
|
|
2138
|
+
/**
|
|
2139
|
+
* Session status update
|
|
2140
|
+
*
|
|
2141
|
+
* @generated from field: mochabugapis.adapt.automations.v1.Session session = 5;
|
|
2142
|
+
*/
|
|
2143
|
+
session?: SessionJson;
|
|
2144
|
+
/**
|
|
2145
|
+
* Reconnect message — client should reconnect after stream closes
|
|
2146
|
+
*
|
|
2147
|
+
* @generated from field: mochabugapis.adapt.automations.v1.ReconnectMessage reconnect = 6;
|
|
2148
|
+
*/
|
|
2149
|
+
reconnect?: ReconnectMessageJson;
|
|
2150
|
+
};
|
|
2151
|
+
/**
|
|
2152
|
+
* Describes the message mochabugapis.adapt.automations.v1.WatchInheritResponse.
|
|
2153
|
+
* Use `create(WatchInheritResponseSchema)` to create a new message.
|
|
2154
|
+
*/
|
|
2155
|
+
export declare const WatchInheritResponseSchema: GenMessage<WatchInheritResponse, {
|
|
2156
|
+
jsonType: WatchInheritResponseJson;
|
|
2157
|
+
}>;
|
|
2158
|
+
/**
|
|
2159
|
+
* WatchInheritStarted is sent as the first message when a watch-inherit session is inherited
|
|
2160
|
+
*
|
|
2161
|
+
* @generated from message mochabugapis.adapt.automations.v1.WatchInheritStarted
|
|
2162
|
+
*/
|
|
2163
|
+
export type WatchInheritStarted = Message<"mochabugapis.adapt.automations.v1.WatchInheritStarted"> & {
|
|
2164
|
+
/**
|
|
2165
|
+
* The access token for the session
|
|
2166
|
+
*
|
|
2167
|
+
* @generated from field: string token = 1;
|
|
2168
|
+
*/
|
|
2169
|
+
token: string;
|
|
2170
|
+
/**
|
|
2171
|
+
* The timestamp when the session expires, if not set, the session never expires
|
|
2172
|
+
*
|
|
2173
|
+
* @generated from field: optional google.protobuf.Timestamp expires = 2;
|
|
2174
|
+
*/
|
|
2175
|
+
expires?: Timestamp;
|
|
2176
|
+
};
|
|
2177
|
+
/**
|
|
2178
|
+
* WatchInheritStarted is sent as the first message when a watch-inherit session is inherited
|
|
2179
|
+
*
|
|
2180
|
+
* @generated from message mochabugapis.adapt.automations.v1.WatchInheritStarted
|
|
2181
|
+
*/
|
|
2182
|
+
export type WatchInheritStartedJson = {
|
|
2183
|
+
/**
|
|
2184
|
+
* The access token for the session
|
|
2185
|
+
*
|
|
2186
|
+
* @generated from field: string token = 1;
|
|
2187
|
+
*/
|
|
2188
|
+
token?: string;
|
|
2189
|
+
/**
|
|
2190
|
+
* The timestamp when the session expires, if not set, the session never expires
|
|
2191
|
+
*
|
|
2192
|
+
* @generated from field: optional google.protobuf.Timestamp expires = 2;
|
|
2193
|
+
*/
|
|
2194
|
+
expires?: TimestampJson;
|
|
2195
|
+
};
|
|
2196
|
+
/**
|
|
2197
|
+
* Describes the message mochabugapis.adapt.automations.v1.WatchInheritStarted.
|
|
2198
|
+
* Use `create(WatchInheritStartedSchema)` to create a new message.
|
|
2199
|
+
*/
|
|
2200
|
+
export declare const WatchInheritStartedSchema: GenMessage<WatchInheritStarted, {
|
|
2201
|
+
jsonType: WatchInheritStartedJson;
|
|
2202
|
+
}>;
|
|
1627
2203
|
/**
|
|
1628
2204
|
* The session enum status
|
|
1629
2205
|
*
|
|
@@ -1786,6 +2362,7 @@ export declare const AutomationService: GenService<{
|
|
|
1786
2362
|
output: typeof ReadUrlsResponseSchema;
|
|
1787
2363
|
};
|
|
1788
2364
|
/**
|
|
2365
|
+
* DEPRECATED: Use WatchSession instead. Remove once all clients have migrated.
|
|
1789
2366
|
* Stream session messages in real-time (replaces WebSocket)
|
|
1790
2367
|
*
|
|
1791
2368
|
* @generated from rpc mochabugapis.adapt.automations.v1.AutomationService.StreamSession
|
|
@@ -1806,6 +2383,7 @@ export declare const AutomationService: GenService<{
|
|
|
1806
2383
|
output: typeof AckMessageResponseSchema;
|
|
1807
2384
|
};
|
|
1808
2385
|
/**
|
|
2386
|
+
* DEPRECATED: Use WatchRun instead. Remove once all clients have migrated.
|
|
1809
2387
|
* Run a session: starts the automation and streams messages until completion.
|
|
1810
2388
|
* This combines StartSession and StreamSession for lower latency.
|
|
1811
2389
|
* Idempotency: OPTIONAL (will become REQUIRED in a future release). Callers should
|
|
@@ -1822,6 +2400,7 @@ export declare const AutomationService: GenService<{
|
|
|
1822
2400
|
output: typeof RunSessionResponseSchema;
|
|
1823
2401
|
};
|
|
1824
2402
|
/**
|
|
2403
|
+
* DEPRECATED: Use WatchInherit instead. Remove once all clients have migrated.
|
|
1825
2404
|
* Run inherit: inherits ownership and streams messages until completion
|
|
1826
2405
|
* This combines InheritSession and StreamSession for lower latency
|
|
1827
2406
|
*
|
|
@@ -1832,4 +2411,37 @@ export declare const AutomationService: GenService<{
|
|
|
1832
2411
|
input: typeof RunInheritRequestSchema;
|
|
1833
2412
|
output: typeof RunInheritResponseSchema;
|
|
1834
2413
|
};
|
|
2414
|
+
/**
|
|
2415
|
+
* WatchSession streams session messages with reconnect support.
|
|
2416
|
+
* Replaces StreamSession — sends ReconnectMessage before closing.
|
|
2417
|
+
*
|
|
2418
|
+
* @generated from rpc mochabugapis.adapt.automations.v1.AutomationService.WatchSession
|
|
2419
|
+
*/
|
|
2420
|
+
watchSession: {
|
|
2421
|
+
methodKind: "server_streaming";
|
|
2422
|
+
input: typeof WatchSessionRequestSchema;
|
|
2423
|
+
output: typeof WatchSessionResponseSchema;
|
|
2424
|
+
};
|
|
2425
|
+
/**
|
|
2426
|
+
* WatchRun starts a session and streams with reconnect support.
|
|
2427
|
+
* Replaces RunSession — sends ReconnectMessage before closing.
|
|
2428
|
+
*
|
|
2429
|
+
* @generated from rpc mochabugapis.adapt.automations.v1.AutomationService.WatchRun
|
|
2430
|
+
*/
|
|
2431
|
+
watchRun: {
|
|
2432
|
+
methodKind: "server_streaming";
|
|
2433
|
+
input: typeof WatchRunRequestSchema;
|
|
2434
|
+
output: typeof WatchRunResponseSchema;
|
|
2435
|
+
};
|
|
2436
|
+
/**
|
|
2437
|
+
* WatchInherit inherits a session and streams with reconnect support.
|
|
2438
|
+
* Replaces RunInherit — sends ReconnectMessage before closing.
|
|
2439
|
+
*
|
|
2440
|
+
* @generated from rpc mochabugapis.adapt.automations.v1.AutomationService.WatchInherit
|
|
2441
|
+
*/
|
|
2442
|
+
watchInherit: {
|
|
2443
|
+
methodKind: "server_streaming";
|
|
2444
|
+
input: typeof WatchInheritRequestSchema;
|
|
2445
|
+
output: typeof WatchInheritResponseSchema;
|
|
2446
|
+
};
|
|
1835
2447
|
}>;
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@mochabug/adapt-core",
|
|
3
|
-
"version": "1.0.1-rc.
|
|
3
|
+
"version": "1.0.1-rc.3",
|
|
4
4
|
"description": "Cross-platform core client library for Adapt automation platform",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"main": "./dist/esm/index.js",
|
|
@@ -38,7 +38,7 @@
|
|
|
38
38
|
"author": "mochabug AB",
|
|
39
39
|
"license": "ISC",
|
|
40
40
|
"devDependencies": {
|
|
41
|
-
"@types/node": "^25.
|
|
41
|
+
"@types/node": "^25.4.0",
|
|
42
42
|
"@vitest/ui": "^4.0.18",
|
|
43
43
|
"typescript": "^5.9.3",
|
|
44
44
|
"vitest": "^4.0.18"
|