towns-agent 4.1.0 → 4.1.2
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.
- package/dist/index.js +126 -38
- package/dist/index.js.map +1 -1
- package/package.json +8 -8
package/dist/index.js
CHANGED
|
@@ -7777,7 +7777,7 @@ var Err;
|
|
|
7777
7777
|
var StreamService = /* @__PURE__ */ (0, import_codegenv22.serviceDesc)(file_protocol, 0);
|
|
7778
7778
|
|
|
7779
7779
|
// ../proto/dist/gen/apps_pb.js
|
|
7780
|
-
var file_apps = /* @__PURE__ */ (0, import_codegenv23.fileDesc)("CgphcHBzLnByb3RvEgVyaXZlciKFAQoLQXBwU2V0dGluZ3MSMwoPZm9yd2FyZF9zZXR0aW5nGAEgASgOMhoucml2ZXIuRm9yd2FyZFNldHRpbmdWYWx1ZRIUCgh0cmFkYWJsZRgCIAEoCEICGAESKwoOc3VwcG9ydGVkX2FwaXMYAyADKA4yEy5yaXZlci5TdXBwb3J0ZWRBcGkigwEKD1JlZ2lzdGVyUmVxdWVzdBIOCgZhcHBfaWQYASABKAwSFAoMYXBwX293bmVyX2lkGAIgASgMEiQKCHNldHRpbmdzGAMgASgLMhIucml2ZXIuQXBwU2V0dGluZ3MSJAoIbWV0YWRhdGEYBCABKAsyEi5yaXZlci5BcHBNZXRhZGF0YSIvChBSZWdpc3RlclJlc3BvbnNlEhsKE2hzMjU2X3NoYXJlZF9zZWNyZXQYASABKAwiPQoWUmVnaXN0ZXJXZWJob29rUmVxdWVzdBIOCgZhcHBfaWQYASABKAwSEwoLd2ViaG9va191cmwYAiABKAkiGQoXUmVnaXN0ZXJXZWJob29rUmVzcG9uc2UiTQoVU2V0QXBwU2V0dGluZ3NSZXF1ZXN0Eg4KBmFwcF9pZBgBIAEoDBIkCghzZXR0aW5ncxgCIAEoCzISLnJpdmVyLkFwcFNldHRpbmdzIhgKFlNldEFwcFNldHRpbmdzUmVzcG9uc2UiugEKGFVwZGF0ZUFwcFNldHRpbmdzUmVxdWVzdBIOCgZhcHBfaWQYASABKAwSOAoPZm9yd2FyZF9zZXR0aW5nGAIgASgOMhoucml2ZXIuRm9yd2FyZFNldHRpbmdWYWx1ZUgAiAEBEisKDnN1cHBvcnRlZF9hcGlzGAMgAygOMhMucml2ZXIuU3VwcG9ydGVkQXBpEhMKC3VwZGF0ZV9tYXNrGAQgAygJQhIKEF9mb3J3YXJkX3NldHRpbmciGwoZVXBkYXRlQXBwU2V0dGluZ3NSZXNwb25zZSInChVHZXRBcHBTZXR0aW5nc1JlcXVlc3QSDgoGYXBwX2lkGAEgASgMImgKFkdldEFwcFNldHRpbmdzUmVzcG9uc2USJAoIc2V0dGluZ3MYASABKAsyEi5yaXZlci5BcHBTZXR0aW5ncxIYCgt3ZWJob29rX3VybBgCIAEoCUgAiAEBQg4KDF93ZWJob29rX3VybCIlChNSb3RhdGVTZWNyZXRSZXF1ZXN0Eg4KBmFwcF9pZBgBIAEoDCIzChRSb3RhdGVTZWNyZXRSZXNwb25zZRIbChNoczI1Nl9zaGFyZWRfc2VjcmV0GAEgASgMIiIKEEdldFN0YXR1c1JlcXVlc3QSDgoGYXBwX2lkGAEgASgMIowBChFHZXRTdGF0dXNSZXNwb25zZRIVCg1pc19yZWdpc3RlcmVkGAEgASgIEhYKDnZhbGlkX3Jlc3BvbnNlGAIgASgIEjgKBnN0YXR1cxgDIAEoCzIoLnJpdmVyLkFwcFNlcnZpY2VSZXNwb25zZS5TdGF0dXNSZXNwb25zZRIOCgZhY3RpdmUYBCABKAgiXAoRR2V0U2Vzc2lvblJlcXVlc3QSDgoGYXBwX2lkGAEgASgMEhQKCnNlc3Npb25faWQYAiABKAlIABITCglzdHJlYW1faWQYAyABKAxIAEIMCgppZGVudGlmaWVyIkgKEkdldFNlc3Npb25SZXNwb25zZRIyChlncm91cF9lbmNyeXB0aW9uX3Nlc3Npb25zGAEgASgLMg8ucml2ZXIuRW52ZWxvcGUiugIKDEV2ZW50UGF5bG9hZBIwCghtZXNzYWdlcxgBIAEoCzIcLnJpdmVyLkV2ZW50UGF5bG9hZC5NZXNzYWdlc0gAEjcKDHNvbGljaXRhdGlvbhgCIAEoCzIfLnJpdmVyLkV2ZW50UGF5bG9hZC5Tb2xpY2l0S2V5c0gAGn0KCE1lc3NhZ2VzEhEKCXN0cmVhbV9pZBgBIAEoDBIhCghtZXNzYWdlcxgCIAMoCzIPLnJpdmVyLkVudmVsb3BlEjsKImdyb3VwX2VuY3J5cHRpb25fc2Vzc2lvbnNfbWVzc2FnZXMYAyADKAsyDy5yaXZlci5FbnZlbG9wZRo1CgtTb2xpY2l0S2V5cxIRCglzdHJlYW1faWQYASABKAwSEwoLc2Vzc2lvbl9pZHMYAiADKAlCCQoHcGF5bG9hZCI0Cg1FdmVudHNQYXlsb2FkEiMKBmV2ZW50cxgBIAMoCzITLnJpdmVyLkV2ZW50UGF5bG9hZCKIBwoRQXBwU2VydmljZVJlcXVlc3QSLAoKaW5pdGlhbGl6ZRhlIAEoCzIWLmdvb2dsZS5wcm90b2J1Zi5FbXB0eUgAEigKBnN0YXR1cxhmIAEoCzIWLmdvb2dsZS5wcm90b2J1Zi5FbXB0eUgAEiYKBmV2ZW50cxhnIAEoCzIULnJpdmVyLkV2ZW50c1BheWxvYWRIABIsCglwb3NpdGlvbnMYaCABKAsyFy5yaXZlci5Qb3NpdGlvbnNSZXF1ZXN0SAASPgoJcHJvcG9zYWxzGGkgASgLMikucml2ZXIuQXBwU2VydmljZVJlcXVlc3QuUHJvcG9zYWxzUmVxdWVzdEgAEkYKEWNvbmNpZXJnZV9yZXF1ZXN0GGogASgLMikucml2ZXIuQXBwU2VydmljZVJlcXVlc3QuQ29uY2llcmdlUmVxdWVzdEgAGvgBChBQcm9wb3NhbHNSZXF1ZXN0EhwKFGNvbnZlcnNhdGlvbl9zZWVkX2lkGAEgASgJEhIKCnVzZXJfcXVlcnkYAiABKAkSFAoHY29udGV4dBgDIAEoCUgAiAEBEjoKC2ludm9jYXRpb25zGAQgAygLMiUucml2ZXIuU3BlY2lhbGlzdENhcGFiaWxpdHlJbnZvY2F0aW9uEhcKCnRpbWVvdXRfbXMYBSABKAVIAYgBARIaCg11c2VyX3RpbWV6b25lGAYgASgJSAKIAQFCCgoIX2NvbnRleHRCDQoLX3RpbWVvdXRfbXNCEAoOX3VzZXJfdGltZXpvbmUatgIKEENvbmNpZXJnZVJlcXVlc3QSHAoUY29udmVyc2F0aW9uX3NlZWRfaWQYASABKAkSEgoKdXNlcl9xdWVyeRgCIAEoCRIUCgdjb250ZXh0GAMgASgJSACIAQESGQoMZXh0ZXJuYWxfcmVmGAQgASgJSAGIAQESIAoTcHJvcG9zYWxfdGltZW91dF9tcxgFIAEoA0gCiAEBEiEKFGNvbmNpZXJnZV90aW1lb3V0X21zGAYgASgDSAOIAQESGgoNdXNlcl90aW1lem9uZRgHIAEoCUgEiAEBQgoKCF9jb250ZXh0Qg8KDV9leHRlcm5hbF9yZWZCFgoUX3Byb3Bvc2FsX3RpbWVvdXRfbXNCFwoVX2NvbmNpZXJnZV90aW1lb3V0X21zQhAKDl91c2VyX3RpbWV6b25lQgkKB3BheWxvYWQijwUKEkFwcFNlcnZpY2VSZXNwb25zZRJCCgppbml0aWFsaXplGGUgASgLMiwucml2ZXIuQXBwU2VydmljZVJlc3BvbnNlLkluaXRpYWxpemVSZXNwb25zZUgAEjoKBnN0YXR1cxhmIAEoCzIoLnJpdmVyLkFwcFNlcnZpY2VSZXNwb25zZS5TdGF0dXNSZXNwb25zZUgAEi0KCXBvc2l0aW9ucxhnIAEoCzIYLnJpdmVyLlBvc2l0aW9uc1Jlc3BvbnNlSAASQAoJcHJvcG9zYWxzGGggASgLMisucml2ZXIuQXBwU2VydmljZVJlc3BvbnNlLlByb3Bvc2Fsc1Jlc3BvbnNlSAASSQoSY29uY2llcmdlX3Jlc3BvbnNlGGkgASgLMisucml2ZXIuQXBwU2VydmljZVJlc3BvbnNlLkNvbmNpZXJnZVJlc3BvbnNlSAAaXAoSSW5pdGlhbGl6ZVJlc3BvbnNlEkYKEWVuY3J5cHRpb25fZGV2aWNlGAEgASgLMisucml2ZXIuVXNlck1ldGFkYXRhUGF5bG9hZC5FbmNyeXB0aW9uRGV2aWNlGoUBCg5TdGF0dXNSZXNwb25zZRIZChFmcmFtZXdvcmtfdmVyc2lvbhgBIAEoBRISCgpkZXZpY2Vfa2V5GAIgASgJEhQKDGZhbGxiYWNrX2tleRgDIAEoCRIbCg5jbGllbnRfdmVyc2lvbhgEIAEoCUgAiAEBQhEKD19jbGllbnRfdmVyc2lvbholChFQcm9wb3NhbHNSZXNwb25zZRIQCghhY2NlcHRlZBgBIAEoCBolChFDb25jaWVyZ2VSZXNwb25zZRIQCghhY2NlcHRlZBgBIAEoCEIJCgdwYXlsb2FkIvABCghQb3NpdGlvbhINCgVsYWJlbBgBIAEoCRIYCgtkZXNjcmlwdGlvbhgCIAEoCUgAiAEBEg4KBnN5bWJvbBgDIAEoCRIhCgR0eXBlGAQgASgOMhMucml2ZXIuUG9zaXRpb25UeXBlEhMKC2JhbGFuY2VfdXNkGAUgASgJEg8KB3BubF91c2QYBiABKAkSFQoIY2hhaW5faWQYByABKARIAYgBARIbCg5uYXRpdmVfYmFsYW5jZRgIIAEoCUgCiAEBQg4KDF9kZXNjcmlwdGlvbkILCglfY2hhaW5faWRCEQoPX25hdGl2ZV9iYWxhbmNlIiMKEFBvc2l0aW9uc1JlcXVlc3QSDwoHdXNlcl9pZBgBIAEoDCJ7ChFQb3NpdGlvbnNSZXNwb25zZRIRCglzdXBwb3J0ZWQYASABKAgSEgoFZXJyb3IYAiABKAlIAIgBARIiCglwb3NpdGlvbnMYAyADKAsyDy5yaXZlci5Qb3NpdGlvbhIRCgl0aW1lc3RhbXAYBCABKANCCAoGX2Vycm9yIjEKDFNsYXNoQ29tbWFuZBIMCgRuYW1lGAEgASgJEhMKC2Rlc2NyaXB0aW9uGAIgASgJIjsKEUNhcGFiaWxpdHlFeGFtcGxlEhIKCnVzZXJfcXVlcnkYASABKAkSEgoKcGFyYW1ldGVycxgCIAEoCSJxCgpDYXBhYmlsaXR5EgwKBG5hbWUYASABKAkSEwoLZGVzY3JpcHRpb24YAiABKAkSFAoMaW5wdXRfc2NoZW1hGAMgASgJEioKCGV4YW1wbGVzGAQgAygLMhgucml2ZXIuQ2FwYWJpbGl0eUV4YW1wbGUijwEKEkNhcGFiaWxpdHlNYW5pZmVzdBIQCghhZ2VudF9pZBgBIAEoDBISCgphZ2VudF9uYW1lGAIgASgJEhkKEWFnZW50X2Rlc2NyaXB0aW9uGAMgASgJEicKDGNhcGFiaWxpdGllcxgEIAMoCzIRLnJpdmVyLkNhcGFiaWxpdHkSDwoHdmVyc2lvbhgFIAEoCSKAAgoLQXBwTWV0YWRhdGESEAoIdXNlcm5hbWUYASABKAkSEwoLZGVzY3JpcHRpb24YAiABKAkSEQoJaW1hZ2VfdXJsGAMgASgJEhkKDGV4dGVybmFsX3VybBgEIAEoCUgAiAEBEisKDnNsYXNoX2NvbW1hbmRzGAYgAygLMhMucml2ZXIuU2xhc2hDb21tYW5kEhQKDGRpc3BsYXlfbmFtZRgHIAEoCRINCgVtb3R0bxgIIAEoCRInCgxjYXBhYmlsaXRpZXMYCSADKAsyES5yaXZlci5DYXBhYmlsaXR5Qg8KDV9leHRlcm5hbF91cmxKBAgFEAZSCmF2YXRhcl91cmwi5QIKEUFwcE1ldGFkYXRhVXBkYXRlEhUKCHVzZXJuYW1lGAEgASgJSACIAQESGAoLZGVzY3JpcHRpb24YAiABKAlIAYgBARIWCglpbWFnZV91cmwYAyABKAlIAogBARIZCgxleHRlcm5hbF91cmwYBCABKAlIA4gBARIrCg5zbGFzaF9jb21tYW5kcxgGIAMoCzITLnJpdmVyLlNsYXNoQ29tbWFuZBIZCgxkaXNwbGF5X25hbWUYByABKAlIBIgBARISCgVtb3R0bxgIIAEoCUgFiAEBEicKDGNhcGFiaWxpdGllcxgJIAMoCzIRLnJpdmVyLkNhcGFiaWxpdHlCCwoJX3VzZXJuYW1lQg4KDF9kZXNjcmlwdGlvbkIMCgpfaW1hZ2VfdXJsQg8KDV9leHRlcm5hbF91cmxCDwoNX2Rpc3BsYXlfbmFtZUIICgZfbW90dG9KBAgFEAZSCmF2YXRhcl91cmwiawoYVXBkYXRlQXBwTWV0YWRhdGFSZXF1ZXN0Eg4KBmFwcF9pZBgBIAEoDBIqCghtZXRhZGF0YRgCIAEoCzIYLnJpdmVyLkFwcE1ldGFkYXRhVXBkYXRlEhMKC3VwZGF0ZV9tYXNrGAMgAygJIhsKGVVwZGF0ZUFwcE1ldGFkYXRhUmVzcG9uc2UiJwoVR2V0QXBwTWV0YWRhdGFSZXF1ZXN0Eg4KBmFwcF9pZBgBIAEoDCI+ChZHZXRBcHBNZXRhZGF0YVJlc3BvbnNlEiQKCG1ldGFkYXRhGAEgASgLMhIucml2ZXIuQXBwTWV0YWRhdGEiKgoWVmFsaWRhdGVCb3ROYW1lUmVxdWVzdBIQCgh1c2VybmFtZRgBIAEoCSJGChdWYWxpZGF0ZUJvdE5hbWVSZXNwb25zZRIUCgxpc19hdmFpbGFibGUYASABKAgSFQoNZXJyb3JfbWVzc2FnZRgCIAEoCSI7ChlTZXRBcHBBY3RpdmVTdGF0dXNSZXF1ZXN0Eg4KBmFwcF9pZBgBIAEoDBIOCgZhY3RpdmUYAiABKAgiHAoaU2V0QXBwQWN0aXZlU3RhdHVzUmVzcG9uc2UiPwobU2V0QXBwUHJvbW90ZWRTdGF0dXNSZXF1ZXN0Eg4KBmFwcF9pZBgBIAEoDBIQCghwcm9tb3RlZBgCIAEoCCIeChxTZXRBcHBQcm9tb3RlZFN0YXR1c1Jlc3BvbnNlIj8KG1NldEFwcFZlcmlmaWVkU3RhdHVzUmVxdWVzdBIOCgZhcHBfaWQYASABKAwSEAoIdmVyaWZpZWQYAiABKAgiHgocU2V0QXBwVmVyaWZpZWRTdGF0dXNSZXNwb25zZSI8ChJTZXRVc2VyTmFtZVJlcXVlc3QSEAoIdXNlcm5hbWUYASABKAkSFAoMZGlzcGxheV9uYW1lGAIgASgJIhUKE1NldFVzZXJOYW1lUmVzcG9uc2UiKQoUR2V0RW50aXR5TmFtZVJlcXVlc3QSEQoJZW50aXR5X2lkGAEgASgMIlQKFUdldEVudGl0eU5hbWVSZXNwb25zZRIQCgh1c2VybmFtZRgBIAEoCRIUCgxkaXNwbGF5X25hbWUYAiABKAkSEwoLZW50aXR5X3R5cGUYAyABKAUiMAoaR2V0QmF0Y2hFbnRpdHlOYW1lc1JlcXVlc3QSEgoKZW50aXR5X2lkcxgBIAMoDCJgCg5FbnRpdHlOYW1lSW5mbxIRCgllbnRpdHlfaWQYASABKAwSEAoIdXNlcm5hbWUYAiABKAkSFAoMZGlzcGxheV9uYW1lGAMgASgJEhMKC2VudGl0eV90eXBlGAQgASgFIkYKG0dldEJhdGNoRW50aXR5TmFtZXNSZXNwb25zZRInCghlbnRpdGllcxgBIAMoCzIVLnJpdmVyLkVudGl0eU5hbWVJbmZvIkIKF0ludml0ZUVuY3J5cHRpb25TZXNzaW9uEhIKCnNlc3Npb25faWQYASABKAkSEwoLc2Vzc2lvbl9rZXkYAiABKAkibgoUSW52aXRlRW5jcnlwdGlvbkRhdGESEQoJc3RyZWFtX2lkGAEgASgMEhEKCWFsZ29yaXRobRgCIAEoCRIwCghzZXNzaW9ucxgDIAMoCzIeLnJpdmVyLkludml0ZUVuY3J5cHRpb25TZXNzaW9uIrsBChdDcmVhdGVJbnZpdGVMaW5rUmVxdWVzdBIRCglzdHJlYW1faWQYASABKAwSOwoWaW52aXRlX2VuY3J5cHRpb25fZGF0YRgCIAEoCzIbLnJpdmVyLkludml0ZUVuY3J5cHRpb25EYXRhEjkKEmNoYW5uZWxfcHJvcGVydGllcxgDIAEoCzIYLnJpdmVyLkNoYW5uZWxQcm9wZXJ0aWVzSACIAQFCFQoTX2NoYW5uZWxfcHJvcGVydGllcyIvChhDcmVhdGVJbnZpdGVMaW5rUmVzcG9uc2USEwoLaW52aXRlX2NvZGUYASABKAkiLAoXUmV2b2tlSW52aXRlTGlua1JlcXVlc3QSEQoJc3RyZWFtX2lkGAEgASgMIhoKGFJldm9rZUludml0ZUxpbmtSZXNwb25zZSIuChdSZWRlZW1JbnZpdGVMaW5rUmVxdWVzdBITCgtpbnZpdGVfY29kZRgBIAEoCSLdAQoYUmVkZWVtSW52aXRlTGlua1Jlc3BvbnNlEjIKDnNpZ25lZF9wYXlsb2FkGAEgASgLMhoucml2ZXIuSW52aXRlU2lnbmVkUGF5bG9hZBI7ChZpbnZpdGVfZW5jcnlwdGlvbl9kYXRhGAIgASgLMhsucml2ZXIuSW52aXRlRW5jcnlwdGlvbkRhdGESOQoSY2hhbm5lbF9wcm9wZXJ0aWVzGAMgASgLMhgucml2ZXIuQ2hhbm5lbFByb3BlcnRpZXNIAIgBAUIVChNfY2hhbm5lbF9wcm9wZXJ0aWVzIikKFEdldEludml0ZUxpbmtSZXF1ZXN0EhEKCXN0cmVhbV9pZBgBIAEoDCJ7ChVHZXRJbnZpdGVMaW5rUmVzcG9uc2USGAoLaW52aXRlX2NvZGUYASABKAlIAIgBARIgChNjcmVhdGVkX2F0X2Vwb2NoX21zGAIgASgDSAGIAQFCDgoMX2ludml0ZV9jb2RlQhYKFF9jcmVhdGVkX2F0X2Vwb2NoX21zIjgKD0FwcEluc3RhbGxTdGF0cxIOCgZhcHBfaWQYASABKAwSFQoNaW5zdGFsbF9jb3VudBgCIAEoBSKNAQoJQXBwUmV2aWV3EgoKAmlkGAEgASgJEg4KBmFwcF9pZBgCIAEoDBIYChByZXZpZXdlcl9hZGRyZXNzGAMgASgMEg4KBnJhdGluZxgEIAEoBRIPCgdjb21tZW50GAUgASgJEhUKDWNyZWF0ZWRfYXRfbXMYBiABKAMSEgoKaXNfcmV2b2tlZBgHIAEoCCJpChBBcHBSZXZpZXdTdW1tYXJ5Eg4KBmFwcF9pZBgBIAEoDBIVCg10b3RhbF9yZXZpZXdzGAIgASgFEhYKDmFjdGl2ZV9yZXZpZXdzGAMgASgFEhYKDmF2ZXJhZ2VfcmF0aW5nGAQgASgCIu8BCgtBcHBJbmZvRnVsbBIOCgZhcHBfaWQYASABKAwSDQoFb3duZXIYAiABKAwSJAoIbWV0YWRhdGEYAyABKAsyEi5yaXZlci5BcHBNZXRhZGF0YRItCg1pbnN0YWxsX3N0YXRzGAQgASgLMhYucml2ZXIuQXBwSW5zdGFsbFN0YXRzEi8KDnJldmlld19zdW1tYXJ5GAUgASgLMhcucml2ZXIuQXBwUmV2aWV3U3VtbWFyeRIRCglpc19hY3RpdmUYBiABKAgSEwoLaXNfcHJvbW90ZWQYByABKAgSEwoLaXNfdmVyaWZpZWQYCCABKAgi5gEKGUxpc3RSZWdpc3RlcmVkQXBwc1JlcXVlc3QSDQoFbGltaXQYASABKAUSDgoGb2Zmc2V0GAIgASgFEhMKC2FjdGl2ZV9vbmx5GAMgASgIEhoKDW93bmVyX2FkZHJlc3MYBCABKAxIAIgBARIWCglzdHJlYW1faWQYBSABKAxIAYgBARIVCg1wcm9tb3RlZF9vbmx5GAYgASgIEhkKDHNlYXJjaF9xdWVyeRgHIAEoCUgCiAEBQhAKDl9vd25lcl9hZGRyZXNzQgwKCl9zdHJlYW1faWRCDwoNX3NlYXJjaF9xdWVyeSJTChpMaXN0UmVnaXN0ZXJlZEFwcHNSZXNwb25zZRIgCgRhcHBzGAEgAygLMhIucml2ZXIuQXBwSW5mb0Z1bGwSEwoLdG90YWxfY291bnQYAiABKAUiKAoVR2V0QnVsa0FwcERhdGFSZXF1ZXN0Eg8KB2FwcF9pZHMYASADKAwiOgoWR2V0QnVsa0FwcERhdGFSZXNwb25zZRIgCgRhcHBzGAEgAygLMhIucml2ZXIuQXBwSW5mb0Z1bGwiKwoZR2V0QXBwSW5zdGFsbFN0YXRzUmVxdWVzdBIOCgZhcHBfaWQYASABKAwiQwoaR2V0QXBwSW5zdGFsbFN0YXRzUmVzcG9uc2USJQoFc3RhdHMYASABKAsyFi5yaXZlci5BcHBJbnN0YWxsU3RhdHMiMAodR2V0QnVsa0FwcEluc3RhbGxTdGF0c1JlcXVlc3QSDwoHYXBwX2lkcxgBIAMoDCJHCh5HZXRCdWxrQXBwSW5zdGFsbFN0YXRzUmVzcG9uc2USJQoFc3RhdHMYASADKAsyFi5yaXZlci5BcHBJbnN0YWxsU3RhdHMiSQoWU3VibWl0QXBwUmV2aWV3UmVxdWVzdBIOCgZhcHBfaWQYASABKAwSDgoGcmF0aW5nGAIgASgFEg8KB2NvbW1lbnQYAyABKAkiLAoXU3VibWl0QXBwUmV2aWV3UmVzcG9uc2USEQoJcmV2aWV3X2lkGAEgASgJIkUKFEdldEFwcFJldmlld3NSZXF1ZXN0Eg4KBmFwcF9pZBgBIAEoDBINCgVsaW1pdBgCIAEoBRIOCgZvZmZzZXQYAyABKAUiTwoVR2V0QXBwUmV2aWV3c1Jlc3BvbnNlEiEKB3Jldmlld3MYASADKAsyEC5yaXZlci5BcHBSZXZpZXcSEwoLdG90YWxfY291bnQYAiABKAUiKAoWUmV2b2tlQXBwUmV2aWV3UmVxdWVzdBIOCgZhcHBfaWQYASABKAwiGQoXUmV2b2tlQXBwUmV2aWV3UmVzcG9uc2UiLAoaR2V0QXBwUmV2aWV3U3VtbWFyeVJlcXVlc3QSDgoGYXBwX2lkGAEgASgMIkcKG0dldEFwcFJldmlld1N1bW1hcnlSZXNwb25zZRIoCgdzdW1tYXJ5GAEgASgLMhcucml2ZXIuQXBwUmV2aWV3U3VtbWFyeSIzCiBHZXRCdWxrQXBwUmV2aWV3U3VtbWFyaWVzUmVxdWVzdBIPCgdhcHBfaWRzGAEgAygMIk8KIUdldEJ1bGtBcHBSZXZpZXdTdW1tYXJpZXNSZXNwb25zZRIqCglzdW1tYXJpZXMYASADKAsyFy5yaXZlci5BcHBSZXZpZXdTdW1tYXJ5IigKFkdldEFwcFBvc2l0aW9uc1JlcXVlc3QSDgoGYXBwX2lkGAEgASgMIlYKF0dldEFwcFBvc2l0aW9uc1Jlc3BvbnNlEg4KBmFwcF9pZBgBIAEoDBIrCglwb3NpdGlvbnMYAiABKAsyGC5yaXZlci5Qb3NpdGlvbnNSZXNwb25zZSIuChtHZXRCYXRjaEFwcFBvc2l0aW9uc1JlcXVlc3QSDwoHYXBwX2lkcxgBIAMoDCJJChxHZXRCYXRjaEFwcFBvc2l0aW9uc1Jlc3BvbnNlEikKB2VudHJpZXMYASADKAsyGC5yaXZlci5BcHBQb3NpdGlvbnNFbnRyeSJuChFBcHBQb3NpdGlvbnNFbnRyeRIOCgZhcHBfaWQYASABKAwSKwoJcG9zaXRpb25zGAIgASgLMhgucml2ZXIuUG9zaXRpb25zUmVzcG9uc2USEgoFZXJyb3IYAyABKAlIAIgBAUIICgZfZXJyb3IiNAofR2V0QnVsa0FnZW50Q2FwYWJpbGl0aWVzUmVxdWVzdBIRCglhZ2VudF9pZHMYASADKAwiUAogR2V0QnVsa0FnZW50Q2FwYWJpbGl0aWVzUmVzcG9uc2USLAoJbWFuaWZlc3RzGAEgAygLMhkucml2ZXIuQ2FwYWJpbGl0eU1hbmlmZXN0IssBChxHZXRCdWxrQWdlbnRQcm9wb3NhbHNSZXF1ZXN0EhwKFGNvbnZlcnNhdGlvbl9zZWVkX2lkGAEgASgJEjcKCHJlcXVlc3RzGAIgAygLMiUucml2ZXIuU3BlY2lhbGlzdENhcGFiaWxpdHlJbnZvY2F0aW9uEhcKCnRpbWVvdXRfbXMYAyABKAVIAIgBARIaCg11c2VyX3RpbWV6b25lGAQgASgJSAGIAQFCDQoLX3RpbWVvdXRfbXNCEAoOX3VzZXJfdGltZXpvbmUiMQodR2V0QnVsa0FnZW50UHJvcG9zYWxzUmVzcG9uc2USEAoIYWNjZXB0ZWQYASABKAgioAEKFVF1ZXJ5Q29uY2llcmdlUmVxdWVzdBINCgVxdWVyeRgBIAEoCRITCgZzb3VyY2UYAiABKAlIAIgBARIZCgxleHRlcm5hbF9yZWYYAyABKAlIAYgBARIaCg11c2VyX3RpbWV6b25lGAQgASgJSAKIAQFCCQoHX3NvdXJjZUIPCg1fZXh0ZXJuYWxfcmVmQhAKDl91c2VyX3RpbWV6b25lIjYKFlF1ZXJ5Q29uY2llcmdlUmVzcG9uc2USHAoUY29udmVyc2F0aW9uX3NlZWRfaWQYASABKAkiLQoaR2V0Q29udmVyc2F0aW9uU2VlZFJlcXVlc3QSDwoHc2VlZF9pZBgBIAEoCSKjAQobR2V0Q29udmVyc2F0aW9uU2VlZFJlc3BvbnNlEiUKBHNlZWQYASABKAsyFy5yaXZlci5Db252ZXJzYXRpb25TZWVkEi0KBnN0YXR1cxgCIAEoDjIdLnJpdmVyLkNvbnZlcnNhdGlvblNlZWRTdGF0dXMSLgoPcHJvcG9zYWxfc3RhdHVzGAMgASgOMhUucml2ZXIuUHJvcG9zYWxTdGF0dXMiigEKG1N1Ym1pdEFnZW50UHJvcG9zYWxzUmVxdWVzdBIcChRjb252ZXJzYXRpb25fc2VlZF9pZBgBIAEoCRIiCglwcm9wb3NhbHMYAiADKAsyDy5yaXZlci5Qcm9wb3NhbBIpCgZlcnJvcnMYAyADKAsyGS5yaXZlci5BZ2VudFByb3Bvc2FsRXJyb3IiHgocU3VibWl0QWdlbnRQcm9wb3NhbHNSZXNwb25zZSK/AQodRmluaXNoQ29udmVyc2F0aW9uU2VlZFJlcXVlc3QSHAoUY29udmVyc2F0aW9uX3NlZWRfaWQYASABKAkSFQoNcmVzcG9uc2VfdGV4dBgCIAEoCRIdChVzZWxlY3RlZF9wcm9wb3NhbF9pZHMYAyADKAkSHAoUY2xhcmlmeWluZ19xdWVzdGlvbnMYBCADKAkSLAoGc3RhdHVzGAUgASgOMhwucml2ZXIuQ29uY2llcmdlRmluaXNoU3RhdHVzIiAKHkZpbmlzaENvbnZlcnNhdGlvblNlZWRSZXNwb25zZSIoChZHZXRFbnRpdGxlbWVudHNSZXF1ZXN0Eg4KBmFwcF9pZBgBIAEoDCKmAQoXR2V0RW50aXRsZW1lbnRzUmVzcG9uc2USGAoQY2FuX3NldF9wcm9tb3RlZBgBIAEoCBIYChBjYW5fc2V0X3ZlcmlmaWVkGAIgASgIEhYKDmNhbl9zZXRfYWN0aXZlGAMgASgIEhsKE2Nhbl91cGRhdGVfbWV0YWRhdGEYBCABKAgSEAoIaXNfb3duZXIYBSABKAgSEAoIaXNfYWRtaW4YBiABKAgqqQEKE0ZvcndhcmRTZXR0aW5nVmFsdWUSHwobRk9SV0FSRF9TRVRUSU5HX1VOU1BFQ0lGSUVEEAASIAocRk9SV0FSRF9TRVRUSU5HX0FMTF9NRVNTQUdFUxABEi4KKkZPUldBUkRfU0VUVElOR19NRU5USU9OU19SRVBMSUVTX1JFQUNUSU9OUxACEh8KG0ZPUldBUkRfU0VUVElOR19OT19NRVNTQUdFUxADKkoKDFN1cHBvcnRlZEFwaRIdChlTVVBQT1JURURfQVBJX1VOU1BFQ0lGSUVEEAASGwoXU1VQUE9SVEVEX0FQSV9QT1NJVElPTlMQASpoCgxQb3NpdGlvblR5cGUSHQoZUE9TSVRJT05fVFlQRV9VTlNQRUNJRklFRBAAEhsKF1BPU0lUSU9OX1RZUEVfUEVSUEVUVUFMEAESHAoYUE9TSVRJT05fVFlQRV9QUkVESUNUSU9OEAIqigEKFUNvbmNpZXJnZUZpbmlzaFN0YXR1cxInCiNDT05DSUVSR0VfRklOSVNIX1NUQVRVU19VTlNQRUNJRklFRBAAEiMKH0NPTkNJRVJHRV9GSU5JU0hfU1RBVFVTX1NVQ0NFU1MQARIjCh9DT05DSUVSR0VfRklOSVNIX1NUQVRVU19GQUlMVVJFEAIyqxoKEkFwcFJlZ2lzdHJ5U2VydmljZRI7CghSZWdpc3RlchIWLnJpdmVyLlJlZ2lzdGVyUmVxdWVzdBoXLnJpdmVyLlJlZ2lzdGVyUmVzcG9uc2USUAoPUmVnaXN0ZXJXZWJob29rEh0ucml2ZXIuUmVnaXN0ZXJXZWJob29rUmVxdWVzdBoeLnJpdmVyLlJlZ2lzdGVyV2ViaG9va1Jlc3BvbnNlEj4KCUdldFN0YXR1cxIXLnJpdmVyLkdldFN0YXR1c1JlcXVlc3QaGC5yaXZlci5HZXRTdGF0dXNSZXNwb25zZRJNCg5TZXRBcHBTZXR0aW5ncxIcLnJpdmVyLlNldEFwcFNldHRpbmdzUmVxdWVzdBodLnJpdmVyLlNldEFwcFNldHRpbmdzUmVzcG9uc2USVgoRVXBkYXRlQXBwU2V0dGluZ3MSHy5yaXZlci5VcGRhdGVBcHBTZXR0aW5nc1JlcXVlc3QaIC5yaXZlci5VcGRhdGVBcHBTZXR0aW5nc1Jlc3BvbnNlEk0KDkdldEFwcFNldHRpbmdzEhwucml2ZXIuR2V0QXBwU2V0dGluZ3NSZXF1ZXN0Gh0ucml2ZXIuR2V0QXBwU2V0dGluZ3NSZXNwb25zZRJWChFVcGRhdGVBcHBNZXRhZGF0YRIfLnJpdmVyLlVwZGF0ZUFwcE1ldGFkYXRhUmVxdWVzdBogLnJpdmVyLlVwZGF0ZUFwcE1ldGFkYXRhUmVzcG9uc2USTQoOR2V0QXBwTWV0YWRhdGESHC5yaXZlci5HZXRBcHBNZXRhZGF0YVJlcXVlc3QaHS5yaXZlci5HZXRBcHBNZXRhZGF0YVJlc3BvbnNlEkcKDFJvdGF0ZVNlY3JldBIaLnJpdmVyLlJvdGF0ZVNlY3JldFJlcXVlc3QaGy5yaXZlci5Sb3RhdGVTZWNyZXRSZXNwb25zZRJBCgpHZXRTZXNzaW9uEhgucml2ZXIuR2V0U2Vzc2lvblJlcXVlc3QaGS5yaXZlci5HZXRTZXNzaW9uUmVzcG9uc2USUAoPVmFsaWRhdGVCb3ROYW1lEh0ucml2ZXIuVmFsaWRhdGVCb3ROYW1lUmVxdWVzdBoeLnJpdmVyLlZhbGlkYXRlQm90TmFtZVJlc3BvbnNlElkKElNldEFwcEFjdGl2ZVN0YXR1cxIgLnJpdmVyLlNldEFwcEFjdGl2ZVN0YXR1c1JlcXVlc3QaIS5yaXZlci5TZXRBcHBBY3RpdmVTdGF0dXNSZXNwb25zZRJfChRTZXRBcHBQcm9tb3RlZFN0YXR1cxIiLnJpdmVyLlNldEFwcFByb21vdGVkU3RhdHVzUmVxdWVzdBojLnJpdmVyLlNldEFwcFByb21vdGVkU3RhdHVzUmVzcG9uc2USXwoUU2V0QXBwVmVyaWZpZWRTdGF0dXMSIi5yaXZlci5TZXRBcHBWZXJpZmllZFN0YXR1c1JlcXVlc3QaIy5yaXZlci5TZXRBcHBWZXJpZmllZFN0YXR1c1Jlc3BvbnNlElAKD0dldEVudGl0bGVtZW50cxIdLnJpdmVyLkdldEVudGl0bGVtZW50c1JlcXVlc3QaHi5yaXZlci5HZXRFbnRpdGxlbWVudHNSZXNwb25zZRJECgtTZXRVc2VyTmFtZRIZLnJpdmVyLlNldFVzZXJOYW1lUmVxdWVzdBoaLnJpdmVyLlNldFVzZXJOYW1lUmVzcG9uc2USSgoNR2V0RW50aXR5TmFtZRIbLnJpdmVyLkdldEVudGl0eU5hbWVSZXF1ZXN0Ghwucml2ZXIuR2V0RW50aXR5TmFtZVJlc3BvbnNlElwKE0dldEJhdGNoRW50aXR5TmFtZXMSIS5yaXZlci5HZXRCYXRjaEVudGl0eU5hbWVzUmVxdWVzdBoiLnJpdmVyLkdldEJhdGNoRW50aXR5TmFtZXNSZXNwb25zZRJTChBDcmVhdGVJbnZpdGVMaW5rEh4ucml2ZXIuQ3JlYXRlSW52aXRlTGlua1JlcXVlc3QaHy5yaXZlci5DcmVhdGVJbnZpdGVMaW5rUmVzcG9uc2USUwoQUmV2b2tlSW52aXRlTGluaxIeLnJpdmVyLlJldm9rZUludml0ZUxpbmtSZXF1ZXN0Gh8ucml2ZXIuUmV2b2tlSW52aXRlTGlua1Jlc3BvbnNlElMKEFJlZGVlbUludml0ZUxpbmsSHi5yaXZlci5SZWRlZW1JbnZpdGVMaW5rUmVxdWVzdBofLnJpdmVyLlJlZGVlbUludml0ZUxpbmtSZXNwb25zZRJKCg1HZXRJbnZpdGVMaW5rEhsucml2ZXIuR2V0SW52aXRlTGlua1JlcXVlc3QaHC5yaXZlci5HZXRJbnZpdGVMaW5rUmVzcG9uc2USWQoSTGlzdFJlZ2lzdGVyZWRBcHBzEiAucml2ZXIuTGlzdFJlZ2lzdGVyZWRBcHBzUmVxdWVzdBohLnJpdmVyLkxpc3RSZWdpc3RlcmVkQXBwc1Jlc3BvbnNlEk0KDkdldEJ1bGtBcHBEYXRhEhwucml2ZXIuR2V0QnVsa0FwcERhdGFSZXF1ZXN0Gh0ucml2ZXIuR2V0QnVsa0FwcERhdGFSZXNwb25zZRJZChJHZXRBcHBJbnN0YWxsU3RhdHMSIC5yaXZlci5HZXRBcHBJbnN0YWxsU3RhdHNSZXF1ZXN0GiEucml2ZXIuR2V0QXBwSW5zdGFsbFN0YXRzUmVzcG9uc2USZQoWR2V0QnVsa0FwcEluc3RhbGxTdGF0cxIkLnJpdmVyLkdldEJ1bGtBcHBJbnN0YWxsU3RhdHNSZXF1ZXN0GiUucml2ZXIuR2V0QnVsa0FwcEluc3RhbGxTdGF0c1Jlc3BvbnNlElAKD1N1Ym1pdEFwcFJldmlldxIdLnJpdmVyLlN1Ym1pdEFwcFJldmlld1JlcXVlc3QaHi5yaXZlci5TdWJtaXRBcHBSZXZpZXdSZXNwb25zZRJKCg1HZXRBcHBSZXZpZXdzEhsucml2ZXIuR2V0QXBwUmV2aWV3c1JlcXVlc3QaHC5yaXZlci5HZXRBcHBSZXZpZXdzUmVzcG9uc2USUAoPUmV2b2tlQXBwUmV2aWV3Eh0ucml2ZXIuUmV2b2tlQXBwUmV2aWV3UmVxdWVzdBoeLnJpdmVyLlJldm9rZUFwcFJldmlld1Jlc3BvbnNlElwKE0dldEFwcFJldmlld1N1bW1hcnkSIS5yaXZlci5HZXRBcHBSZXZpZXdTdW1tYXJ5UmVxdWVzdBoiLnJpdmVyLkdldEFwcFJldmlld1N1bW1hcnlSZXNwb25zZRJuChlHZXRCdWxrQXBwUmV2aWV3U3VtbWFyaWVzEicucml2ZXIuR2V0QnVsa0FwcFJldmlld1N1bW1hcmllc1JlcXVlc3QaKC5yaXZlci5HZXRCdWxrQXBwUmV2aWV3U3VtbWFyaWVzUmVzcG9uc2USUAoPR2V0QXBwUG9zaXRpb25zEh0ucml2ZXIuR2V0QXBwUG9zaXRpb25zUmVxdWVzdBoeLnJpdmVyLkdldEFwcFBvc2l0aW9uc1Jlc3BvbnNlEl8KFEdldEJhdGNoQXBwUG9zaXRpb25zEiIucml2ZXIuR2V0QmF0Y2hBcHBQb3NpdGlvbnNSZXF1ZXN0GiMucml2ZXIuR2V0QmF0Y2hBcHBQb3NpdGlvbnNSZXNwb25zZRJrChhHZXRCdWxrQWdlbnRDYXBhYmlsaXRpZXMSJi5yaXZlci5HZXRCdWxrQWdlbnRDYXBhYmlsaXRpZXNSZXF1ZXN0Gicucml2ZXIuR2V0QnVsa0FnZW50Q2FwYWJpbGl0aWVzUmVzcG9uc2USYgoVR2V0QnVsa0FnZW50UHJvcG9zYWxzEiMucml2ZXIuR2V0QnVsa0FnZW50UHJvcG9zYWxzUmVxdWVzdBokLnJpdmVyLkdldEJ1bGtBZ2VudFByb3Bvc2Fsc1Jlc3BvbnNlEk0KDlF1ZXJ5Q29uY2llcmdlEhwucml2ZXIuUXVlcnlDb25jaWVyZ2VSZXF1ZXN0Gh0ucml2ZXIuUXVlcnlDb25jaWVyZ2VSZXNwb25zZRJcChNHZXRDb252ZXJzYXRpb25TZWVkEiEucml2ZXIuR2V0Q29udmVyc2F0aW9uU2VlZFJlcXVlc3QaIi5yaXZlci5HZXRDb252ZXJzYXRpb25TZWVkUmVzcG9uc2USXwoUU3VibWl0QWdlbnRQcm9wb3NhbHMSIi5yaXZlci5TdWJtaXRBZ2VudFByb3Bvc2Fsc1JlcXVlc3QaIy5yaXZlci5TdWJtaXRBZ2VudFByb3Bvc2Fsc1Jlc3BvbnNlEmUKFkZpbmlzaENvbnZlcnNhdGlvblNlZWQSJC5yaXZlci5GaW5pc2hDb252ZXJzYXRpb25TZWVkUmVxdWVzdBolLnJpdmVyLkZpbmlzaENvbnZlcnNhdGlvblNlZWRSZXNwb25zZUI0WjJnaXRodWIuY29tL3Rvd25zLXByb3RvY29sL3Rvd25zL2NvcmUvbm9kZS9wcm90b2NvbGIGcHJvdG8z", [import_wkt3.file_google_protobuf_empty, file_payloads, file_protocol]);
|
|
7780
|
+
var file_apps = /* @__PURE__ */ (0, import_codegenv23.fileDesc)("CgphcHBzLnByb3RvEgVyaXZlciKFAQoLQXBwU2V0dGluZ3MSMwoPZm9yd2FyZF9zZXR0aW5nGAEgASgOMhoucml2ZXIuRm9yd2FyZFNldHRpbmdWYWx1ZRIUCgh0cmFkYWJsZRgCIAEoCEICGAESKwoOc3VwcG9ydGVkX2FwaXMYAyADKA4yEy5yaXZlci5TdXBwb3J0ZWRBcGkigwEKD1JlZ2lzdGVyUmVxdWVzdBIOCgZhcHBfaWQYASABKAwSFAoMYXBwX293bmVyX2lkGAIgASgMEiQKCHNldHRpbmdzGAMgASgLMhIucml2ZXIuQXBwU2V0dGluZ3MSJAoIbWV0YWRhdGEYBCABKAsyEi5yaXZlci5BcHBNZXRhZGF0YSIvChBSZWdpc3RlclJlc3BvbnNlEhsKE2hzMjU2X3NoYXJlZF9zZWNyZXQYASABKAwiPQoWUmVnaXN0ZXJXZWJob29rUmVxdWVzdBIOCgZhcHBfaWQYASABKAwSEwoLd2ViaG9va191cmwYAiABKAkiGQoXUmVnaXN0ZXJXZWJob29rUmVzcG9uc2UiTQoVU2V0QXBwU2V0dGluZ3NSZXF1ZXN0Eg4KBmFwcF9pZBgBIAEoDBIkCghzZXR0aW5ncxgCIAEoCzISLnJpdmVyLkFwcFNldHRpbmdzIhgKFlNldEFwcFNldHRpbmdzUmVzcG9uc2UiugEKGFVwZGF0ZUFwcFNldHRpbmdzUmVxdWVzdBIOCgZhcHBfaWQYASABKAwSOAoPZm9yd2FyZF9zZXR0aW5nGAIgASgOMhoucml2ZXIuRm9yd2FyZFNldHRpbmdWYWx1ZUgAiAEBEisKDnN1cHBvcnRlZF9hcGlzGAMgAygOMhMucml2ZXIuU3VwcG9ydGVkQXBpEhMKC3VwZGF0ZV9tYXNrGAQgAygJQhIKEF9mb3J3YXJkX3NldHRpbmciGwoZVXBkYXRlQXBwU2V0dGluZ3NSZXNwb25zZSInChVHZXRBcHBTZXR0aW5nc1JlcXVlc3QSDgoGYXBwX2lkGAEgASgMImgKFkdldEFwcFNldHRpbmdzUmVzcG9uc2USJAoIc2V0dGluZ3MYASABKAsyEi5yaXZlci5BcHBTZXR0aW5ncxIYCgt3ZWJob29rX3VybBgCIAEoCUgAiAEBQg4KDF93ZWJob29rX3VybCIlChNSb3RhdGVTZWNyZXRSZXF1ZXN0Eg4KBmFwcF9pZBgBIAEoDCIzChRSb3RhdGVTZWNyZXRSZXNwb25zZRIbChNoczI1Nl9zaGFyZWRfc2VjcmV0GAEgASgMIiIKEEdldFN0YXR1c1JlcXVlc3QSDgoGYXBwX2lkGAEgASgMIowBChFHZXRTdGF0dXNSZXNwb25zZRIVCg1pc19yZWdpc3RlcmVkGAEgASgIEhYKDnZhbGlkX3Jlc3BvbnNlGAIgASgIEjgKBnN0YXR1cxgDIAEoCzIoLnJpdmVyLkFwcFNlcnZpY2VSZXNwb25zZS5TdGF0dXNSZXNwb25zZRIOCgZhY3RpdmUYBCABKAgiXAoRR2V0U2Vzc2lvblJlcXVlc3QSDgoGYXBwX2lkGAEgASgMEhQKCnNlc3Npb25faWQYAiABKAlIABITCglzdHJlYW1faWQYAyABKAxIAEIMCgppZGVudGlmaWVyIkgKEkdldFNlc3Npb25SZXNwb25zZRIyChlncm91cF9lbmNyeXB0aW9uX3Nlc3Npb25zGAEgASgLMg8ucml2ZXIuRW52ZWxvcGUiugIKDEV2ZW50UGF5bG9hZBIwCghtZXNzYWdlcxgBIAEoCzIcLnJpdmVyLkV2ZW50UGF5bG9hZC5NZXNzYWdlc0gAEjcKDHNvbGljaXRhdGlvbhgCIAEoCzIfLnJpdmVyLkV2ZW50UGF5bG9hZC5Tb2xpY2l0S2V5c0gAGn0KCE1lc3NhZ2VzEhEKCXN0cmVhbV9pZBgBIAEoDBIhCghtZXNzYWdlcxgCIAMoCzIPLnJpdmVyLkVudmVsb3BlEjsKImdyb3VwX2VuY3J5cHRpb25fc2Vzc2lvbnNfbWVzc2FnZXMYAyADKAsyDy5yaXZlci5FbnZlbG9wZRo1CgtTb2xpY2l0S2V5cxIRCglzdHJlYW1faWQYASABKAwSEwoLc2Vzc2lvbl9pZHMYAiADKAlCCQoHcGF5bG9hZCI0Cg1FdmVudHNQYXlsb2FkEiMKBmV2ZW50cxgBIAMoCzITLnJpdmVyLkV2ZW50UGF5bG9hZCKECAoRQXBwU2VydmljZVJlcXVlc3QSLAoKaW5pdGlhbGl6ZRhlIAEoCzIWLmdvb2dsZS5wcm90b2J1Zi5FbXB0eUgAEigKBnN0YXR1cxhmIAEoCzIWLmdvb2dsZS5wcm90b2J1Zi5FbXB0eUgAEiYKBmV2ZW50cxhnIAEoCzIULnJpdmVyLkV2ZW50c1BheWxvYWRIABIsCglwb3NpdGlvbnMYaCABKAsyFy5yaXZlci5Qb3NpdGlvbnNSZXF1ZXN0SAASPgoJcHJvcG9zYWxzGGkgASgLMikucml2ZXIuQXBwU2VydmljZVJlcXVlc3QuUHJvcG9zYWxzUmVxdWVzdEgAEkYKEWNvbmNpZXJnZV9yZXF1ZXN0GGogASgLMikucml2ZXIuQXBwU2VydmljZVJlcXVlc3QuQ29uY2llcmdlUmVxdWVzdEgAGvQCChBQcm9wb3NhbHNSZXF1ZXN0EhwKFGNvbnZlcnNhdGlvbl9zZWVkX2lkGAEgASgJEhIKCnVzZXJfcXVlcnkYAiABKAkSFAoHY29udGV4dBgDIAEoCUgAiAEBEjoKC2ludm9jYXRpb25zGAQgAygLMiUucml2ZXIuU3BlY2lhbGlzdENhcGFiaWxpdHlJbnZvY2F0aW9uEhcKCnRpbWVvdXRfbXMYBSABKAVIAYgBARIaCg11c2VyX3RpbWV6b25lGAYgASgJSAKIAQESSQoIbWV0YWRhdGEYByADKAsyNy5yaXZlci5BcHBTZXJ2aWNlUmVxdWVzdC5Qcm9wb3NhbHNSZXF1ZXN0Lk1ldGFkYXRhRW50cnkaLwoNTWV0YWRhdGFFbnRyeRILCgNrZXkYASABKAkSDQoFdmFsdWUYAiABKAk6AjgBQgoKCF9jb250ZXh0Qg0KC190aW1lb3V0X21zQhAKDl91c2VyX3RpbWV6b25lGrYCChBDb25jaWVyZ2VSZXF1ZXN0EhwKFGNvbnZlcnNhdGlvbl9zZWVkX2lkGAEgASgJEhIKCnVzZXJfcXVlcnkYAiABKAkSFAoHY29udGV4dBgDIAEoCUgAiAEBEhkKDGV4dGVybmFsX3JlZhgEIAEoCUgBiAEBEiAKE3Byb3Bvc2FsX3RpbWVvdXRfbXMYBSABKANIAogBARIhChRjb25jaWVyZ2VfdGltZW91dF9tcxgGIAEoA0gDiAEBEhoKDXVzZXJfdGltZXpvbmUYByABKAlIBIgBAUIKCghfY29udGV4dEIPCg1fZXh0ZXJuYWxfcmVmQhYKFF9wcm9wb3NhbF90aW1lb3V0X21zQhcKFV9jb25jaWVyZ2VfdGltZW91dF9tc0IQCg5fdXNlcl90aW1lem9uZUIJCgdwYXlsb2FkIo8FChJBcHBTZXJ2aWNlUmVzcG9uc2USQgoKaW5pdGlhbGl6ZRhlIAEoCzIsLnJpdmVyLkFwcFNlcnZpY2VSZXNwb25zZS5Jbml0aWFsaXplUmVzcG9uc2VIABI6CgZzdGF0dXMYZiABKAsyKC5yaXZlci5BcHBTZXJ2aWNlUmVzcG9uc2UuU3RhdHVzUmVzcG9uc2VIABItCglwb3NpdGlvbnMYZyABKAsyGC5yaXZlci5Qb3NpdGlvbnNSZXNwb25zZUgAEkAKCXByb3Bvc2FscxhoIAEoCzIrLnJpdmVyLkFwcFNlcnZpY2VSZXNwb25zZS5Qcm9wb3NhbHNSZXNwb25zZUgAEkkKEmNvbmNpZXJnZV9yZXNwb25zZRhpIAEoCzIrLnJpdmVyLkFwcFNlcnZpY2VSZXNwb25zZS5Db25jaWVyZ2VSZXNwb25zZUgAGlwKEkluaXRpYWxpemVSZXNwb25zZRJGChFlbmNyeXB0aW9uX2RldmljZRgBIAEoCzIrLnJpdmVyLlVzZXJNZXRhZGF0YVBheWxvYWQuRW5jcnlwdGlvbkRldmljZRqFAQoOU3RhdHVzUmVzcG9uc2USGQoRZnJhbWV3b3JrX3ZlcnNpb24YASABKAUSEgoKZGV2aWNlX2tleRgCIAEoCRIUCgxmYWxsYmFja19rZXkYAyABKAkSGwoOY2xpZW50X3ZlcnNpb24YBCABKAlIAIgBAUIRCg9fY2xpZW50X3ZlcnNpb24aJQoRUHJvcG9zYWxzUmVzcG9uc2USEAoIYWNjZXB0ZWQYASABKAgaJQoRQ29uY2llcmdlUmVzcG9uc2USEAoIYWNjZXB0ZWQYASABKAhCCQoHcGF5bG9hZCLwAQoIUG9zaXRpb24SDQoFbGFiZWwYASABKAkSGAoLZGVzY3JpcHRpb24YAiABKAlIAIgBARIOCgZzeW1ib2wYAyABKAkSIQoEdHlwZRgEIAEoDjITLnJpdmVyLlBvc2l0aW9uVHlwZRITCgtiYWxhbmNlX3VzZBgFIAEoCRIPCgdwbmxfdXNkGAYgASgJEhUKCGNoYWluX2lkGAcgASgESAGIAQESGwoObmF0aXZlX2JhbGFuY2UYCCABKAlIAogBAUIOCgxfZGVzY3JpcHRpb25CCwoJX2NoYWluX2lkQhEKD19uYXRpdmVfYmFsYW5jZSIjChBQb3NpdGlvbnNSZXF1ZXN0Eg8KB3VzZXJfaWQYASABKAwiewoRUG9zaXRpb25zUmVzcG9uc2USEQoJc3VwcG9ydGVkGAEgASgIEhIKBWVycm9yGAIgASgJSACIAQESIgoJcG9zaXRpb25zGAMgAygLMg8ucml2ZXIuUG9zaXRpb24SEQoJdGltZXN0YW1wGAQgASgDQggKBl9lcnJvciIxCgxTbGFzaENvbW1hbmQSDAoEbmFtZRgBIAEoCRITCgtkZXNjcmlwdGlvbhgCIAEoCSI7ChFDYXBhYmlsaXR5RXhhbXBsZRISCgp1c2VyX3F1ZXJ5GAEgASgJEhIKCnBhcmFtZXRlcnMYAiABKAkicQoKQ2FwYWJpbGl0eRIMCgRuYW1lGAEgASgJEhMKC2Rlc2NyaXB0aW9uGAIgASgJEhQKDGlucHV0X3NjaGVtYRgDIAEoCRIqCghleGFtcGxlcxgEIAMoCzIYLnJpdmVyLkNhcGFiaWxpdHlFeGFtcGxlIo8BChJDYXBhYmlsaXR5TWFuaWZlc3QSEAoIYWdlbnRfaWQYASABKAwSEgoKYWdlbnRfbmFtZRgCIAEoCRIZChFhZ2VudF9kZXNjcmlwdGlvbhgDIAEoCRInCgxjYXBhYmlsaXRpZXMYBCADKAsyES5yaXZlci5DYXBhYmlsaXR5Eg8KB3ZlcnNpb24YBSABKAkigAIKC0FwcE1ldGFkYXRhEhAKCHVzZXJuYW1lGAEgASgJEhMKC2Rlc2NyaXB0aW9uGAIgASgJEhEKCWltYWdlX3VybBgDIAEoCRIZCgxleHRlcm5hbF91cmwYBCABKAlIAIgBARIrCg5zbGFzaF9jb21tYW5kcxgGIAMoCzITLnJpdmVyLlNsYXNoQ29tbWFuZBIUCgxkaXNwbGF5X25hbWUYByABKAkSDQoFbW90dG8YCCABKAkSJwoMY2FwYWJpbGl0aWVzGAkgAygLMhEucml2ZXIuQ2FwYWJpbGl0eUIPCg1fZXh0ZXJuYWxfdXJsSgQIBRAGUgphdmF0YXJfdXJsIuUCChFBcHBNZXRhZGF0YVVwZGF0ZRIVCgh1c2VybmFtZRgBIAEoCUgAiAEBEhgKC2Rlc2NyaXB0aW9uGAIgASgJSAGIAQESFgoJaW1hZ2VfdXJsGAMgASgJSAKIAQESGQoMZXh0ZXJuYWxfdXJsGAQgASgJSAOIAQESKwoOc2xhc2hfY29tbWFuZHMYBiADKAsyEy5yaXZlci5TbGFzaENvbW1hbmQSGQoMZGlzcGxheV9uYW1lGAcgASgJSASIAQESEgoFbW90dG8YCCABKAlIBYgBARInCgxjYXBhYmlsaXRpZXMYCSADKAsyES5yaXZlci5DYXBhYmlsaXR5QgsKCV91c2VybmFtZUIOCgxfZGVzY3JpcHRpb25CDAoKX2ltYWdlX3VybEIPCg1fZXh0ZXJuYWxfdXJsQg8KDV9kaXNwbGF5X25hbWVCCAoGX21vdHRvSgQIBRAGUgphdmF0YXJfdXJsImsKGFVwZGF0ZUFwcE1ldGFkYXRhUmVxdWVzdBIOCgZhcHBfaWQYASABKAwSKgoIbWV0YWRhdGEYAiABKAsyGC5yaXZlci5BcHBNZXRhZGF0YVVwZGF0ZRITCgt1cGRhdGVfbWFzaxgDIAMoCSIbChlVcGRhdGVBcHBNZXRhZGF0YVJlc3BvbnNlIicKFUdldEFwcE1ldGFkYXRhUmVxdWVzdBIOCgZhcHBfaWQYASABKAwiPgoWR2V0QXBwTWV0YWRhdGFSZXNwb25zZRIkCghtZXRhZGF0YRgBIAEoCzISLnJpdmVyLkFwcE1ldGFkYXRhIioKFlZhbGlkYXRlQm90TmFtZVJlcXVlc3QSEAoIdXNlcm5hbWUYASABKAkiRgoXVmFsaWRhdGVCb3ROYW1lUmVzcG9uc2USFAoMaXNfYXZhaWxhYmxlGAEgASgIEhUKDWVycm9yX21lc3NhZ2UYAiABKAkiOwoZU2V0QXBwQWN0aXZlU3RhdHVzUmVxdWVzdBIOCgZhcHBfaWQYASABKAwSDgoGYWN0aXZlGAIgASgIIhwKGlNldEFwcEFjdGl2ZVN0YXR1c1Jlc3BvbnNlIj8KG1NldEFwcFByb21vdGVkU3RhdHVzUmVxdWVzdBIOCgZhcHBfaWQYASABKAwSEAoIcHJvbW90ZWQYAiABKAgiHgocU2V0QXBwUHJvbW90ZWRTdGF0dXNSZXNwb25zZSI/ChtTZXRBcHBWZXJpZmllZFN0YXR1c1JlcXVlc3QSDgoGYXBwX2lkGAEgASgMEhAKCHZlcmlmaWVkGAIgASgIIh4KHFNldEFwcFZlcmlmaWVkU3RhdHVzUmVzcG9uc2UiPAoSU2V0VXNlck5hbWVSZXF1ZXN0EhAKCHVzZXJuYW1lGAEgASgJEhQKDGRpc3BsYXlfbmFtZRgCIAEoCSIVChNTZXRVc2VyTmFtZVJlc3BvbnNlIikKFEdldEVudGl0eU5hbWVSZXF1ZXN0EhEKCWVudGl0eV9pZBgBIAEoDCJUChVHZXRFbnRpdHlOYW1lUmVzcG9uc2USEAoIdXNlcm5hbWUYASABKAkSFAoMZGlzcGxheV9uYW1lGAIgASgJEhMKC2VudGl0eV90eXBlGAMgASgFIjAKGkdldEJhdGNoRW50aXR5TmFtZXNSZXF1ZXN0EhIKCmVudGl0eV9pZHMYASADKAwiYAoORW50aXR5TmFtZUluZm8SEQoJZW50aXR5X2lkGAEgASgMEhAKCHVzZXJuYW1lGAIgASgJEhQKDGRpc3BsYXlfbmFtZRgDIAEoCRITCgtlbnRpdHlfdHlwZRgEIAEoBSJGChtHZXRCYXRjaEVudGl0eU5hbWVzUmVzcG9uc2USJwoIZW50aXRpZXMYASADKAsyFS5yaXZlci5FbnRpdHlOYW1lSW5mbyJCChdJbnZpdGVFbmNyeXB0aW9uU2Vzc2lvbhISCgpzZXNzaW9uX2lkGAEgASgJEhMKC3Nlc3Npb25fa2V5GAIgASgJIm4KFEludml0ZUVuY3J5cHRpb25EYXRhEhEKCXN0cmVhbV9pZBgBIAEoDBIRCglhbGdvcml0aG0YAiABKAkSMAoIc2Vzc2lvbnMYAyADKAsyHi5yaXZlci5JbnZpdGVFbmNyeXB0aW9uU2Vzc2lvbiK7AQoXQ3JlYXRlSW52aXRlTGlua1JlcXVlc3QSEQoJc3RyZWFtX2lkGAEgASgMEjsKFmludml0ZV9lbmNyeXB0aW9uX2RhdGEYAiABKAsyGy5yaXZlci5JbnZpdGVFbmNyeXB0aW9uRGF0YRI5ChJjaGFubmVsX3Byb3BlcnRpZXMYAyABKAsyGC5yaXZlci5DaGFubmVsUHJvcGVydGllc0gAiAEBQhUKE19jaGFubmVsX3Byb3BlcnRpZXMiLwoYQ3JlYXRlSW52aXRlTGlua1Jlc3BvbnNlEhMKC2ludml0ZV9jb2RlGAEgASgJIiwKF1Jldm9rZUludml0ZUxpbmtSZXF1ZXN0EhEKCXN0cmVhbV9pZBgBIAEoDCIaChhSZXZva2VJbnZpdGVMaW5rUmVzcG9uc2UiLgoXUmVkZWVtSW52aXRlTGlua1JlcXVlc3QSEwoLaW52aXRlX2NvZGUYASABKAki3QEKGFJlZGVlbUludml0ZUxpbmtSZXNwb25zZRIyCg5zaWduZWRfcGF5bG9hZBgBIAEoCzIaLnJpdmVyLkludml0ZVNpZ25lZFBheWxvYWQSOwoWaW52aXRlX2VuY3J5cHRpb25fZGF0YRgCIAEoCzIbLnJpdmVyLkludml0ZUVuY3J5cHRpb25EYXRhEjkKEmNoYW5uZWxfcHJvcGVydGllcxgDIAEoCzIYLnJpdmVyLkNoYW5uZWxQcm9wZXJ0aWVzSACIAQFCFQoTX2NoYW5uZWxfcHJvcGVydGllcyIpChRHZXRJbnZpdGVMaW5rUmVxdWVzdBIRCglzdHJlYW1faWQYASABKAwiewoVR2V0SW52aXRlTGlua1Jlc3BvbnNlEhgKC2ludml0ZV9jb2RlGAEgASgJSACIAQESIAoTY3JlYXRlZF9hdF9lcG9jaF9tcxgCIAEoA0gBiAEBQg4KDF9pbnZpdGVfY29kZUIWChRfY3JlYXRlZF9hdF9lcG9jaF9tcyI4Cg9BcHBJbnN0YWxsU3RhdHMSDgoGYXBwX2lkGAEgASgMEhUKDWluc3RhbGxfY291bnQYAiABKAUijQEKCUFwcFJldmlldxIKCgJpZBgBIAEoCRIOCgZhcHBfaWQYAiABKAwSGAoQcmV2aWV3ZXJfYWRkcmVzcxgDIAEoDBIOCgZyYXRpbmcYBCABKAUSDwoHY29tbWVudBgFIAEoCRIVCg1jcmVhdGVkX2F0X21zGAYgASgDEhIKCmlzX3Jldm9rZWQYByABKAgiaQoQQXBwUmV2aWV3U3VtbWFyeRIOCgZhcHBfaWQYASABKAwSFQoNdG90YWxfcmV2aWV3cxgCIAEoBRIWCg5hY3RpdmVfcmV2aWV3cxgDIAEoBRIWCg5hdmVyYWdlX3JhdGluZxgEIAEoAiLvAQoLQXBwSW5mb0Z1bGwSDgoGYXBwX2lkGAEgASgMEg0KBW93bmVyGAIgASgMEiQKCG1ldGFkYXRhGAMgASgLMhIucml2ZXIuQXBwTWV0YWRhdGESLQoNaW5zdGFsbF9zdGF0cxgEIAEoCzIWLnJpdmVyLkFwcEluc3RhbGxTdGF0cxIvCg5yZXZpZXdfc3VtbWFyeRgFIAEoCzIXLnJpdmVyLkFwcFJldmlld1N1bW1hcnkSEQoJaXNfYWN0aXZlGAYgASgIEhMKC2lzX3Byb21vdGVkGAcgASgIEhMKC2lzX3ZlcmlmaWVkGAggASgIIuYBChlMaXN0UmVnaXN0ZXJlZEFwcHNSZXF1ZXN0Eg0KBWxpbWl0GAEgASgFEg4KBm9mZnNldBgCIAEoBRITCgthY3RpdmVfb25seRgDIAEoCBIaCg1vd25lcl9hZGRyZXNzGAQgASgMSACIAQESFgoJc3RyZWFtX2lkGAUgASgMSAGIAQESFQoNcHJvbW90ZWRfb25seRgGIAEoCBIZCgxzZWFyY2hfcXVlcnkYByABKAlIAogBAUIQCg5fb3duZXJfYWRkcmVzc0IMCgpfc3RyZWFtX2lkQg8KDV9zZWFyY2hfcXVlcnkiUwoaTGlzdFJlZ2lzdGVyZWRBcHBzUmVzcG9uc2USIAoEYXBwcxgBIAMoCzISLnJpdmVyLkFwcEluZm9GdWxsEhMKC3RvdGFsX2NvdW50GAIgASgFIigKFUdldEJ1bGtBcHBEYXRhUmVxdWVzdBIPCgdhcHBfaWRzGAEgAygMIjoKFkdldEJ1bGtBcHBEYXRhUmVzcG9uc2USIAoEYXBwcxgBIAMoCzISLnJpdmVyLkFwcEluZm9GdWxsIisKGUdldEFwcEluc3RhbGxTdGF0c1JlcXVlc3QSDgoGYXBwX2lkGAEgASgMIkMKGkdldEFwcEluc3RhbGxTdGF0c1Jlc3BvbnNlEiUKBXN0YXRzGAEgASgLMhYucml2ZXIuQXBwSW5zdGFsbFN0YXRzIjAKHUdldEJ1bGtBcHBJbnN0YWxsU3RhdHNSZXF1ZXN0Eg8KB2FwcF9pZHMYASADKAwiRwoeR2V0QnVsa0FwcEluc3RhbGxTdGF0c1Jlc3BvbnNlEiUKBXN0YXRzGAEgAygLMhYucml2ZXIuQXBwSW5zdGFsbFN0YXRzIkkKFlN1Ym1pdEFwcFJldmlld1JlcXVlc3QSDgoGYXBwX2lkGAEgASgMEg4KBnJhdGluZxgCIAEoBRIPCgdjb21tZW50GAMgASgJIiwKF1N1Ym1pdEFwcFJldmlld1Jlc3BvbnNlEhEKCXJldmlld19pZBgBIAEoCSJFChRHZXRBcHBSZXZpZXdzUmVxdWVzdBIOCgZhcHBfaWQYASABKAwSDQoFbGltaXQYAiABKAUSDgoGb2Zmc2V0GAMgASgFIk8KFUdldEFwcFJldmlld3NSZXNwb25zZRIhCgdyZXZpZXdzGAEgAygLMhAucml2ZXIuQXBwUmV2aWV3EhMKC3RvdGFsX2NvdW50GAIgASgFIigKFlJldm9rZUFwcFJldmlld1JlcXVlc3QSDgoGYXBwX2lkGAEgASgMIhkKF1Jldm9rZUFwcFJldmlld1Jlc3BvbnNlIiwKGkdldEFwcFJldmlld1N1bW1hcnlSZXF1ZXN0Eg4KBmFwcF9pZBgBIAEoDCJHChtHZXRBcHBSZXZpZXdTdW1tYXJ5UmVzcG9uc2USKAoHc3VtbWFyeRgBIAEoCzIXLnJpdmVyLkFwcFJldmlld1N1bW1hcnkiMwogR2V0QnVsa0FwcFJldmlld1N1bW1hcmllc1JlcXVlc3QSDwoHYXBwX2lkcxgBIAMoDCJPCiFHZXRCdWxrQXBwUmV2aWV3U3VtbWFyaWVzUmVzcG9uc2USKgoJc3VtbWFyaWVzGAEgAygLMhcucml2ZXIuQXBwUmV2aWV3U3VtbWFyeSIoChZHZXRBcHBQb3NpdGlvbnNSZXF1ZXN0Eg4KBmFwcF9pZBgBIAEoDCJWChdHZXRBcHBQb3NpdGlvbnNSZXNwb25zZRIOCgZhcHBfaWQYASABKAwSKwoJcG9zaXRpb25zGAIgASgLMhgucml2ZXIuUG9zaXRpb25zUmVzcG9uc2UiLgobR2V0QmF0Y2hBcHBQb3NpdGlvbnNSZXF1ZXN0Eg8KB2FwcF9pZHMYASADKAwiSQocR2V0QmF0Y2hBcHBQb3NpdGlvbnNSZXNwb25zZRIpCgdlbnRyaWVzGAEgAygLMhgucml2ZXIuQXBwUG9zaXRpb25zRW50cnkibgoRQXBwUG9zaXRpb25zRW50cnkSDgoGYXBwX2lkGAEgASgMEisKCXBvc2l0aW9ucxgCIAEoCzIYLnJpdmVyLlBvc2l0aW9uc1Jlc3BvbnNlEhIKBWVycm9yGAMgASgJSACIAQFCCAoGX2Vycm9yIjQKH0dldEJ1bGtBZ2VudENhcGFiaWxpdGllc1JlcXVlc3QSEQoJYWdlbnRfaWRzGAEgAygMIlAKIEdldEJ1bGtBZ2VudENhcGFiaWxpdGllc1Jlc3BvbnNlEiwKCW1hbmlmZXN0cxgBIAMoCzIZLnJpdmVyLkNhcGFiaWxpdHlNYW5pZmVzdCLBAgocR2V0QnVsa0FnZW50UHJvcG9zYWxzUmVxdWVzdBIcChRjb252ZXJzYXRpb25fc2VlZF9pZBgBIAEoCRI3CghyZXF1ZXN0cxgCIAMoCzIlLnJpdmVyLlNwZWNpYWxpc3RDYXBhYmlsaXR5SW52b2NhdGlvbhIXCgp0aW1lb3V0X21zGAMgASgFSACIAQESGgoNdXNlcl90aW1lem9uZRgEIAEoCUgBiAEBEkMKCG1ldGFkYXRhGAUgAygLMjEucml2ZXIuR2V0QnVsa0FnZW50UHJvcG9zYWxzUmVxdWVzdC5NZXRhZGF0YUVudHJ5Gi8KDU1ldGFkYXRhRW50cnkSCwoDa2V5GAEgASgJEg0KBXZhbHVlGAIgASgJOgI4AUINCgtfdGltZW91dF9tc0IQCg5fdXNlcl90aW1lem9uZSIxCh1HZXRCdWxrQWdlbnRQcm9wb3NhbHNSZXNwb25zZRIQCghhY2NlcHRlZBgBIAEoCCKgAQoVUXVlcnlDb25jaWVyZ2VSZXF1ZXN0Eg0KBXF1ZXJ5GAEgASgJEhMKBnNvdXJjZRgCIAEoCUgAiAEBEhkKDGV4dGVybmFsX3JlZhgDIAEoCUgBiAEBEhoKDXVzZXJfdGltZXpvbmUYBCABKAlIAogBAUIJCgdfc291cmNlQg8KDV9leHRlcm5hbF9yZWZCEAoOX3VzZXJfdGltZXpvbmUiNgoWUXVlcnlDb25jaWVyZ2VSZXNwb25zZRIcChRjb252ZXJzYXRpb25fc2VlZF9pZBgBIAEoCSItChpHZXRDb252ZXJzYXRpb25TZWVkUmVxdWVzdBIPCgdzZWVkX2lkGAEgASgJIqMBChtHZXRDb252ZXJzYXRpb25TZWVkUmVzcG9uc2USJQoEc2VlZBgBIAEoCzIXLnJpdmVyLkNvbnZlcnNhdGlvblNlZWQSLQoGc3RhdHVzGAIgASgOMh0ucml2ZXIuQ29udmVyc2F0aW9uU2VlZFN0YXR1cxIuCg9wcm9wb3NhbF9zdGF0dXMYAyABKA4yFS5yaXZlci5Qcm9wb3NhbFN0YXR1cyKKAQobU3VibWl0QWdlbnRQcm9wb3NhbHNSZXF1ZXN0EhwKFGNvbnZlcnNhdGlvbl9zZWVkX2lkGAEgASgJEiIKCXByb3Bvc2FscxgCIAMoCzIPLnJpdmVyLlByb3Bvc2FsEikKBmVycm9ycxgDIAMoCzIZLnJpdmVyLkFnZW50UHJvcG9zYWxFcnJvciIeChxTdWJtaXRBZ2VudFByb3Bvc2Fsc1Jlc3BvbnNlIr8BCh1GaW5pc2hDb252ZXJzYXRpb25TZWVkUmVxdWVzdBIcChRjb252ZXJzYXRpb25fc2VlZF9pZBgBIAEoCRIVCg1yZXNwb25zZV90ZXh0GAIgASgJEh0KFXNlbGVjdGVkX3Byb3Bvc2FsX2lkcxgDIAMoCRIcChRjbGFyaWZ5aW5nX3F1ZXN0aW9ucxgEIAMoCRIsCgZzdGF0dXMYBSABKA4yHC5yaXZlci5Db25jaWVyZ2VGaW5pc2hTdGF0dXMiRwoeRmluaXNoQ29udmVyc2F0aW9uU2VlZFJlc3BvbnNlEiUKBHNlZWQYASABKAsyFy5yaXZlci5Db252ZXJzYXRpb25TZWVkIigKFkdldEVudGl0bGVtZW50c1JlcXVlc3QSDgoGYXBwX2lkGAEgASgMIqYBChdHZXRFbnRpdGxlbWVudHNSZXNwb25zZRIYChBjYW5fc2V0X3Byb21vdGVkGAEgASgIEhgKEGNhbl9zZXRfdmVyaWZpZWQYAiABKAgSFgoOY2FuX3NldF9hY3RpdmUYAyABKAgSGwoTY2FuX3VwZGF0ZV9tZXRhZGF0YRgEIAEoCBIQCghpc19vd25lchgFIAEoCBIQCghpc19hZG1pbhgGIAEoCCqpAQoTRm9yd2FyZFNldHRpbmdWYWx1ZRIfChtGT1JXQVJEX1NFVFRJTkdfVU5TUEVDSUZJRUQQABIgChxGT1JXQVJEX1NFVFRJTkdfQUxMX01FU1NBR0VTEAESLgoqRk9SV0FSRF9TRVRUSU5HX01FTlRJT05TX1JFUExJRVNfUkVBQ1RJT05TEAISHwobRk9SV0FSRF9TRVRUSU5HX05PX01FU1NBR0VTEAMqSgoMU3VwcG9ydGVkQXBpEh0KGVNVUFBPUlRFRF9BUElfVU5TUEVDSUZJRUQQABIbChdTVVBQT1JURURfQVBJX1BPU0lUSU9OUxABKmgKDFBvc2l0aW9uVHlwZRIdChlQT1NJVElPTl9UWVBFX1VOU1BFQ0lGSUVEEAASGwoXUE9TSVRJT05fVFlQRV9QRVJQRVRVQUwQARIcChhQT1NJVElPTl9UWVBFX1BSRURJQ1RJT04QAiqKAQoVQ29uY2llcmdlRmluaXNoU3RhdHVzEicKI0NPTkNJRVJHRV9GSU5JU0hfU1RBVFVTX1VOU1BFQ0lGSUVEEAASIwofQ09OQ0lFUkdFX0ZJTklTSF9TVEFUVVNfU1VDQ0VTUxABEiMKH0NPTkNJRVJHRV9GSU5JU0hfU1RBVFVTX0ZBSUxVUkUQAjKrGgoSQXBwUmVnaXN0cnlTZXJ2aWNlEjsKCFJlZ2lzdGVyEhYucml2ZXIuUmVnaXN0ZXJSZXF1ZXN0Ghcucml2ZXIuUmVnaXN0ZXJSZXNwb25zZRJQCg9SZWdpc3RlcldlYmhvb2sSHS5yaXZlci5SZWdpc3RlcldlYmhvb2tSZXF1ZXN0Gh4ucml2ZXIuUmVnaXN0ZXJXZWJob29rUmVzcG9uc2USPgoJR2V0U3RhdHVzEhcucml2ZXIuR2V0U3RhdHVzUmVxdWVzdBoYLnJpdmVyLkdldFN0YXR1c1Jlc3BvbnNlEk0KDlNldEFwcFNldHRpbmdzEhwucml2ZXIuU2V0QXBwU2V0dGluZ3NSZXF1ZXN0Gh0ucml2ZXIuU2V0QXBwU2V0dGluZ3NSZXNwb25zZRJWChFVcGRhdGVBcHBTZXR0aW5ncxIfLnJpdmVyLlVwZGF0ZUFwcFNldHRpbmdzUmVxdWVzdBogLnJpdmVyLlVwZGF0ZUFwcFNldHRpbmdzUmVzcG9uc2USTQoOR2V0QXBwU2V0dGluZ3MSHC5yaXZlci5HZXRBcHBTZXR0aW5nc1JlcXVlc3QaHS5yaXZlci5HZXRBcHBTZXR0aW5nc1Jlc3BvbnNlElYKEVVwZGF0ZUFwcE1ldGFkYXRhEh8ucml2ZXIuVXBkYXRlQXBwTWV0YWRhdGFSZXF1ZXN0GiAucml2ZXIuVXBkYXRlQXBwTWV0YWRhdGFSZXNwb25zZRJNCg5HZXRBcHBNZXRhZGF0YRIcLnJpdmVyLkdldEFwcE1ldGFkYXRhUmVxdWVzdBodLnJpdmVyLkdldEFwcE1ldGFkYXRhUmVzcG9uc2USRwoMUm90YXRlU2VjcmV0Ehoucml2ZXIuUm90YXRlU2VjcmV0UmVxdWVzdBobLnJpdmVyLlJvdGF0ZVNlY3JldFJlc3BvbnNlEkEKCkdldFNlc3Npb24SGC5yaXZlci5HZXRTZXNzaW9uUmVxdWVzdBoZLnJpdmVyLkdldFNlc3Npb25SZXNwb25zZRJQCg9WYWxpZGF0ZUJvdE5hbWUSHS5yaXZlci5WYWxpZGF0ZUJvdE5hbWVSZXF1ZXN0Gh4ucml2ZXIuVmFsaWRhdGVCb3ROYW1lUmVzcG9uc2USWQoSU2V0QXBwQWN0aXZlU3RhdHVzEiAucml2ZXIuU2V0QXBwQWN0aXZlU3RhdHVzUmVxdWVzdBohLnJpdmVyLlNldEFwcEFjdGl2ZVN0YXR1c1Jlc3BvbnNlEl8KFFNldEFwcFByb21vdGVkU3RhdHVzEiIucml2ZXIuU2V0QXBwUHJvbW90ZWRTdGF0dXNSZXF1ZXN0GiMucml2ZXIuU2V0QXBwUHJvbW90ZWRTdGF0dXNSZXNwb25zZRJfChRTZXRBcHBWZXJpZmllZFN0YXR1cxIiLnJpdmVyLlNldEFwcFZlcmlmaWVkU3RhdHVzUmVxdWVzdBojLnJpdmVyLlNldEFwcFZlcmlmaWVkU3RhdHVzUmVzcG9uc2USUAoPR2V0RW50aXRsZW1lbnRzEh0ucml2ZXIuR2V0RW50aXRsZW1lbnRzUmVxdWVzdBoeLnJpdmVyLkdldEVudGl0bGVtZW50c1Jlc3BvbnNlEkQKC1NldFVzZXJOYW1lEhkucml2ZXIuU2V0VXNlck5hbWVSZXF1ZXN0Ghoucml2ZXIuU2V0VXNlck5hbWVSZXNwb25zZRJKCg1HZXRFbnRpdHlOYW1lEhsucml2ZXIuR2V0RW50aXR5TmFtZVJlcXVlc3QaHC5yaXZlci5HZXRFbnRpdHlOYW1lUmVzcG9uc2USXAoTR2V0QmF0Y2hFbnRpdHlOYW1lcxIhLnJpdmVyLkdldEJhdGNoRW50aXR5TmFtZXNSZXF1ZXN0GiIucml2ZXIuR2V0QmF0Y2hFbnRpdHlOYW1lc1Jlc3BvbnNlElMKEENyZWF0ZUludml0ZUxpbmsSHi5yaXZlci5DcmVhdGVJbnZpdGVMaW5rUmVxdWVzdBofLnJpdmVyLkNyZWF0ZUludml0ZUxpbmtSZXNwb25zZRJTChBSZXZva2VJbnZpdGVMaW5rEh4ucml2ZXIuUmV2b2tlSW52aXRlTGlua1JlcXVlc3QaHy5yaXZlci5SZXZva2VJbnZpdGVMaW5rUmVzcG9uc2USUwoQUmVkZWVtSW52aXRlTGluaxIeLnJpdmVyLlJlZGVlbUludml0ZUxpbmtSZXF1ZXN0Gh8ucml2ZXIuUmVkZWVtSW52aXRlTGlua1Jlc3BvbnNlEkoKDUdldEludml0ZUxpbmsSGy5yaXZlci5HZXRJbnZpdGVMaW5rUmVxdWVzdBocLnJpdmVyLkdldEludml0ZUxpbmtSZXNwb25zZRJZChJMaXN0UmVnaXN0ZXJlZEFwcHMSIC5yaXZlci5MaXN0UmVnaXN0ZXJlZEFwcHNSZXF1ZXN0GiEucml2ZXIuTGlzdFJlZ2lzdGVyZWRBcHBzUmVzcG9uc2USTQoOR2V0QnVsa0FwcERhdGESHC5yaXZlci5HZXRCdWxrQXBwRGF0YVJlcXVlc3QaHS5yaXZlci5HZXRCdWxrQXBwRGF0YVJlc3BvbnNlElkKEkdldEFwcEluc3RhbGxTdGF0cxIgLnJpdmVyLkdldEFwcEluc3RhbGxTdGF0c1JlcXVlc3QaIS5yaXZlci5HZXRBcHBJbnN0YWxsU3RhdHNSZXNwb25zZRJlChZHZXRCdWxrQXBwSW5zdGFsbFN0YXRzEiQucml2ZXIuR2V0QnVsa0FwcEluc3RhbGxTdGF0c1JlcXVlc3QaJS5yaXZlci5HZXRCdWxrQXBwSW5zdGFsbFN0YXRzUmVzcG9uc2USUAoPU3VibWl0QXBwUmV2aWV3Eh0ucml2ZXIuU3VibWl0QXBwUmV2aWV3UmVxdWVzdBoeLnJpdmVyLlN1Ym1pdEFwcFJldmlld1Jlc3BvbnNlEkoKDUdldEFwcFJldmlld3MSGy5yaXZlci5HZXRBcHBSZXZpZXdzUmVxdWVzdBocLnJpdmVyLkdldEFwcFJldmlld3NSZXNwb25zZRJQCg9SZXZva2VBcHBSZXZpZXcSHS5yaXZlci5SZXZva2VBcHBSZXZpZXdSZXF1ZXN0Gh4ucml2ZXIuUmV2b2tlQXBwUmV2aWV3UmVzcG9uc2USXAoTR2V0QXBwUmV2aWV3U3VtbWFyeRIhLnJpdmVyLkdldEFwcFJldmlld1N1bW1hcnlSZXF1ZXN0GiIucml2ZXIuR2V0QXBwUmV2aWV3U3VtbWFyeVJlc3BvbnNlEm4KGUdldEJ1bGtBcHBSZXZpZXdTdW1tYXJpZXMSJy5yaXZlci5HZXRCdWxrQXBwUmV2aWV3U3VtbWFyaWVzUmVxdWVzdBooLnJpdmVyLkdldEJ1bGtBcHBSZXZpZXdTdW1tYXJpZXNSZXNwb25zZRJQCg9HZXRBcHBQb3NpdGlvbnMSHS5yaXZlci5HZXRBcHBQb3NpdGlvbnNSZXF1ZXN0Gh4ucml2ZXIuR2V0QXBwUG9zaXRpb25zUmVzcG9uc2USXwoUR2V0QmF0Y2hBcHBQb3NpdGlvbnMSIi5yaXZlci5HZXRCYXRjaEFwcFBvc2l0aW9uc1JlcXVlc3QaIy5yaXZlci5HZXRCYXRjaEFwcFBvc2l0aW9uc1Jlc3BvbnNlEmsKGEdldEJ1bGtBZ2VudENhcGFiaWxpdGllcxImLnJpdmVyLkdldEJ1bGtBZ2VudENhcGFiaWxpdGllc1JlcXVlc3QaJy5yaXZlci5HZXRCdWxrQWdlbnRDYXBhYmlsaXRpZXNSZXNwb25zZRJiChVHZXRCdWxrQWdlbnRQcm9wb3NhbHMSIy5yaXZlci5HZXRCdWxrQWdlbnRQcm9wb3NhbHNSZXF1ZXN0GiQucml2ZXIuR2V0QnVsa0FnZW50UHJvcG9zYWxzUmVzcG9uc2USTQoOUXVlcnlDb25jaWVyZ2USHC5yaXZlci5RdWVyeUNvbmNpZXJnZVJlcXVlc3QaHS5yaXZlci5RdWVyeUNvbmNpZXJnZVJlc3BvbnNlElwKE0dldENvbnZlcnNhdGlvblNlZWQSIS5yaXZlci5HZXRDb252ZXJzYXRpb25TZWVkUmVxdWVzdBoiLnJpdmVyLkdldENvbnZlcnNhdGlvblNlZWRSZXNwb25zZRJfChRTdWJtaXRBZ2VudFByb3Bvc2FscxIiLnJpdmVyLlN1Ym1pdEFnZW50UHJvcG9zYWxzUmVxdWVzdBojLnJpdmVyLlN1Ym1pdEFnZW50UHJvcG9zYWxzUmVzcG9uc2USZQoWRmluaXNoQ29udmVyc2F0aW9uU2VlZBIkLnJpdmVyLkZpbmlzaENvbnZlcnNhdGlvblNlZWRSZXF1ZXN0GiUucml2ZXIuRmluaXNoQ29udmVyc2F0aW9uU2VlZFJlc3BvbnNlQjRaMmdpdGh1Yi5jb20vdG93bnMtcHJvdG9jb2wvdG93bnMvY29yZS9ub2RlL3Byb3RvY29sYgZwcm90bzM", [import_wkt3.file_google_protobuf_empty, file_payloads, file_protocol]);
|
|
7781
7781
|
var ForwardSettingValue;
|
|
7782
7782
|
(function(ForwardSettingValue2) {
|
|
7783
7783
|
ForwardSettingValue2[ForwardSettingValue2["FORWARD_SETTING_UNSPECIFIED"] = 0] = "FORWARD_SETTING_UNSPECIFIED";
|
|
@@ -23782,7 +23782,13 @@ function getThreadParentId(content) {
|
|
|
23782
23782
|
return void 0;
|
|
23783
23783
|
}
|
|
23784
23784
|
function getReplyParentId(content) {
|
|
23785
|
-
|
|
23785
|
+
if (content?.kind === RiverTimelineEvent.ChannelMessage) {
|
|
23786
|
+
return content.replyId;
|
|
23787
|
+
}
|
|
23788
|
+
if (content?.kind === RiverTimelineEvent.ConversationSeedResponse) {
|
|
23789
|
+
return content.replyId;
|
|
23790
|
+
}
|
|
23791
|
+
return void 0;
|
|
23786
23792
|
}
|
|
23787
23793
|
function getReactionParentId(content) {
|
|
23788
23794
|
return content?.kind === RiverTimelineEvent.Reaction ? content.targetEventId : void 0;
|
|
@@ -24362,7 +24368,8 @@ function toTownsContent_ChannelPayload_Message_Post(value, eventId, editsEventId
|
|
|
24362
24368
|
kind: RiverTimelineEvent.ConversationSeedResponse,
|
|
24363
24369
|
seedId: seedResponse.seedId,
|
|
24364
24370
|
seed: seedResponse.seed,
|
|
24365
|
-
response: seedResponse.response
|
|
24371
|
+
response: seedResponse.response,
|
|
24372
|
+
replyId: value.replyId
|
|
24366
24373
|
}
|
|
24367
24374
|
};
|
|
24368
24375
|
}
|
|
@@ -26823,6 +26830,8 @@ var StreamStateView = class {
|
|
|
26823
26830
|
streamsView;
|
|
26824
26831
|
contentKind;
|
|
26825
26832
|
minipoolEvents = /* @__PURE__ */ new Map();
|
|
26833
|
+
// Ephemeral events pending decryption — keyed by hashStr, cleaned up after decrypt
|
|
26834
|
+
ephemeralEvents = /* @__PURE__ */ new Map();
|
|
26826
26835
|
prevMiniblockHash;
|
|
26827
26836
|
prevMiniblockNum;
|
|
26828
26837
|
lastEventNum = 0n;
|
|
@@ -26937,7 +26946,7 @@ var StreamStateView = class {
|
|
|
26937
26946
|
const confirmed = [];
|
|
26938
26947
|
for (const parsedEvent of minipoolEvents) {
|
|
26939
26948
|
if (parsedEvent.ephemeral) {
|
|
26940
|
-
this.processEphemeralEvent(parsedEvent, encryptionEmitter);
|
|
26949
|
+
this.processEphemeralEvent(parsedEvent, encryptionEmitter, stateEmitter);
|
|
26941
26950
|
continue;
|
|
26942
26951
|
}
|
|
26943
26952
|
const existingEvent = this.minipoolEvents.get(parsedEvent.hashStr);
|
|
@@ -26962,18 +26971,27 @@ var StreamStateView = class {
|
|
|
26962
26971
|
this.syncCookie = nextSyncCookie;
|
|
26963
26972
|
return { appended, updated, confirmed };
|
|
26964
26973
|
}
|
|
26965
|
-
processEphemeralEvent(event, encryptionEmitter) {
|
|
26974
|
+
processEphemeralEvent(event, encryptionEmitter, stateEmitter) {
|
|
26966
26975
|
const payload = event.event.payload;
|
|
26967
26976
|
check(isDefined(payload), `Event has no payload ${event.hashStr}`, Err.STREAM_BAD_EVENT);
|
|
26968
|
-
|
|
26969
|
-
|
|
26977
|
+
switch (payload.case) {
|
|
26978
|
+
case "memberPayload":
|
|
26979
|
+
this.processEphemeralMemberPayload(event, payload.value, encryptionEmitter);
|
|
26980
|
+
break;
|
|
26981
|
+
case "gdmChannelPayload":
|
|
26982
|
+
this.processEphemeralChannelPayload(event, payload.value.content, encryptionEmitter, stateEmitter);
|
|
26983
|
+
break;
|
|
26984
|
+
default:
|
|
26985
|
+
break;
|
|
26970
26986
|
}
|
|
26971
|
-
|
|
26987
|
+
}
|
|
26988
|
+
processEphemeralMemberPayload(event, payload, encryptionEmitter) {
|
|
26989
|
+
switch (payload.content.case) {
|
|
26972
26990
|
case "keySolicitation":
|
|
26973
|
-
encryptionEmitter?.emit("newKeySolicitation", this.streamId, event.hashStr, event.creatorUserId, payload.
|
|
26991
|
+
encryptionEmitter?.emit("newKeySolicitation", this.streamId, event.hashStr, event.creatorUserId, payload.content.value, getEventSignature(event), true);
|
|
26974
26992
|
break;
|
|
26975
26993
|
case "keyFulfillment": {
|
|
26976
|
-
const fulfillment = payload.
|
|
26994
|
+
const fulfillment = payload.content.value;
|
|
26977
26995
|
encryptionEmitter?.emit("ephemeralKeyFulfillment", {
|
|
26978
26996
|
streamId: this.streamId,
|
|
26979
26997
|
userId: userIdFromAddress(fulfillment.userAddress),
|
|
@@ -26989,6 +27007,24 @@ var StreamStateView = class {
|
|
|
26989
27007
|
break;
|
|
26990
27008
|
}
|
|
26991
27009
|
}
|
|
27010
|
+
processEphemeralChannelPayload(event, content, encryptionEmitter, _stateEmitter) {
|
|
27011
|
+
if (content.case !== "message") {
|
|
27012
|
+
return;
|
|
27013
|
+
}
|
|
27014
|
+
const encryptedData = content.value;
|
|
27015
|
+
if (!encryptedData) {
|
|
27016
|
+
return;
|
|
27017
|
+
}
|
|
27018
|
+
const encryptedContent = {
|
|
27019
|
+
kind: "channelMessage",
|
|
27020
|
+
content: encryptedData
|
|
27021
|
+
};
|
|
27022
|
+
this.ephemeralEvents.set(event.hashStr, {
|
|
27023
|
+
creatorUserId: event.creatorUserId,
|
|
27024
|
+
encryptedContent
|
|
27025
|
+
});
|
|
27026
|
+
encryptionEmitter?.emit("newEncryptedContent", this.streamId, event.hashStr, encryptedContent);
|
|
27027
|
+
}
|
|
26992
27028
|
processAppendedEvent(timelineEvent, cleartext, encryptionEmitter, stateEmitter) {
|
|
26993
27029
|
check(!this.minipoolEvents.has(timelineEvent.hashStr));
|
|
26994
27030
|
if (timelineEvent.remoteEvent.event.payload.case !== "miniblockHeader") {
|
|
@@ -27094,6 +27130,17 @@ var StreamStateView = class {
|
|
|
27094
27130
|
}
|
|
27095
27131
|
// update streeam state with successfully decrypted events by hashStr event id
|
|
27096
27132
|
updateDecryptedContent(eventId, content, emitter) {
|
|
27133
|
+
const ephemeral = this.ephemeralEvents.get(eventId);
|
|
27134
|
+
if (ephemeral) {
|
|
27135
|
+
this.ephemeralEvents.delete(eventId);
|
|
27136
|
+
emitter.emit("ephemeralEvent", this.streamId, {
|
|
27137
|
+
hashStr: eventId,
|
|
27138
|
+
creatorUserId: ephemeral.creatorUserId,
|
|
27139
|
+
content,
|
|
27140
|
+
encryptedContent: void 0
|
|
27141
|
+
});
|
|
27142
|
+
return;
|
|
27143
|
+
}
|
|
27097
27144
|
this.membershipContent.onDecryptedContent(eventId, content, emitter);
|
|
27098
27145
|
this.getContent().onDecryptedContent(eventId, content, emitter);
|
|
27099
27146
|
const minipoolEvent = this.minipoolEvents.get(eventId);
|
|
@@ -27107,6 +27154,7 @@ var StreamStateView = class {
|
|
|
27107
27154
|
}
|
|
27108
27155
|
// update stream with decryption status
|
|
27109
27156
|
updateDecryptedContentError(eventId, content, _emitter) {
|
|
27157
|
+
this.ephemeralEvents.delete(eventId);
|
|
27110
27158
|
this.streamsView.timelinesView.streamEventDecryptedContentError(this.streamId, eventId, content);
|
|
27111
27159
|
}
|
|
27112
27160
|
initialize(nextSyncCookie, minipoolEvents, snapshot, miniblocks, prependedMiniblocks, prevSnapshotMiniblockNum, cleartexts, localEvents, emitter) {
|
|
@@ -30195,14 +30243,17 @@ var Client = class extends import_events2.default {
|
|
|
30195
30243
|
const stream = this.stream(streamId);
|
|
30196
30244
|
check(stream !== void 0, "stream not found");
|
|
30197
30245
|
const payload = (0, import_protobuf21.create)(ChannelMessageSchema, inPayload);
|
|
30198
|
-
const localId = stream.appendLocalEvent(payload, "sending", opts?.appClientAddress);
|
|
30199
|
-
|
|
30246
|
+
const localId = opts?.ephemeral ? void 0 : stream.appendLocalEvent(payload, "sending", opts?.appClientAddress);
|
|
30247
|
+
if (localId) {
|
|
30248
|
+
opts?.onLocalEventAppended?.(localId);
|
|
30249
|
+
}
|
|
30200
30250
|
if (opts?.beforeSendEventHook) {
|
|
30201
30251
|
await opts?.beforeSendEventHook;
|
|
30202
30252
|
}
|
|
30203
30253
|
return this.makeAndSendChannelMessageEvent(streamId, payload, localId, {
|
|
30204
30254
|
disableTags: opts?.disableTags,
|
|
30205
|
-
appClientAddress: opts?.appClientAddress
|
|
30255
|
+
appClientAddress: opts?.appClientAddress,
|
|
30256
|
+
ephemeral: opts?.ephemeral
|
|
30206
30257
|
});
|
|
30207
30258
|
}
|
|
30208
30259
|
async makeAndSendChannelMessageEvent(streamId, payload, localId, opts) {
|
|
@@ -30223,8 +30274,9 @@ var Client = class extends import_events2.default {
|
|
|
30223
30274
|
return this.makeEventAndAddToStream(streamId, make_GDMChannelPayload_Message(message), {
|
|
30224
30275
|
method: "sendMessageGDM",
|
|
30225
30276
|
localId,
|
|
30226
|
-
cleartext,
|
|
30227
|
-
tags
|
|
30277
|
+
cleartext: opts?.ephemeral ? void 0 : cleartext,
|
|
30278
|
+
tags,
|
|
30279
|
+
ephemeral: opts?.ephemeral
|
|
30228
30280
|
});
|
|
30229
30281
|
}
|
|
30230
30282
|
throw new Error(`invalid streamId: ${streamId}`);
|
|
@@ -31370,7 +31422,7 @@ var import_debug3 = __toESM(require_src(), 1);
|
|
|
31370
31422
|
var import_protobuf22 = require("@bufbuild/protobuf");
|
|
31371
31423
|
|
|
31372
31424
|
// package.json
|
|
31373
|
-
var version = "4.1.
|
|
31425
|
+
var version = "4.1.2";
|
|
31374
31426
|
|
|
31375
31427
|
// src/modules/utils.ts
|
|
31376
31428
|
var getPackageManager = () => {
|
|
@@ -32189,8 +32241,8 @@ async function installSkill(projectDir) {
|
|
|
32189
32241
|
// src/modules/create.ts
|
|
32190
32242
|
var import_prompts3 = __toESM(require("prompts"));
|
|
32191
32243
|
var import_picocolors5 = require("picocolors");
|
|
32192
|
-
var
|
|
32193
|
-
var
|
|
32244
|
+
var import_viem16 = require("viem");
|
|
32245
|
+
var import_accounts8 = require("viem/accounts");
|
|
32194
32246
|
|
|
32195
32247
|
// ../../node_modules/.bun/@slicekit+erc8128@0.1.0/node_modules/@slicekit/erc8128/dist/esm/index.js
|
|
32196
32248
|
var j = class extends Error {
|
|
@@ -32561,7 +32613,11 @@ async function postJson(relayerUrl, body, options) {
|
|
|
32561
32613
|
headers: { "Content-Type": "application/json" },
|
|
32562
32614
|
body
|
|
32563
32615
|
});
|
|
32564
|
-
const
|
|
32616
|
+
const httpAuth = options?.httpAuth;
|
|
32617
|
+
if (!httpAuth) {
|
|
32618
|
+
return fetch(request);
|
|
32619
|
+
}
|
|
32620
|
+
const signedRequest = await t(request, httpAuth.signer, httpAuth.signOptions);
|
|
32565
32621
|
return fetch(signedRequest);
|
|
32566
32622
|
}
|
|
32567
32623
|
function createJsonRpcTransport(relayerUrl, options) {
|
|
@@ -32615,11 +32671,22 @@ function createJsonRpcTransport(relayerUrl, options) {
|
|
|
32615
32671
|
};
|
|
32616
32672
|
}
|
|
32617
32673
|
|
|
32674
|
+
// ../relayer-client/dist/httpAuth.js
|
|
32675
|
+
function getHttpAuthOptions(config) {
|
|
32676
|
+
if (!config.authSigner) {
|
|
32677
|
+
return void 0;
|
|
32678
|
+
}
|
|
32679
|
+
return {
|
|
32680
|
+
signer: config.authSigner,
|
|
32681
|
+
signOptions: config.authSignOptions
|
|
32682
|
+
};
|
|
32683
|
+
}
|
|
32684
|
+
|
|
32618
32685
|
// ../relayer-client/dist/actions/checkHealth.js
|
|
32619
32686
|
async function checkHealth(client) {
|
|
32620
32687
|
try {
|
|
32621
32688
|
const transport = createJsonRpcTransport(client.relayerConfig.relayerUrl, {
|
|
32622
|
-
httpAuth: client.relayerConfig
|
|
32689
|
+
httpAuth: getHttpAuthOptions(client.relayerConfig)
|
|
32623
32690
|
});
|
|
32624
32691
|
await transport.request("wallet_health");
|
|
32625
32692
|
return {
|
|
@@ -32650,7 +32717,7 @@ async function checkHealth(client) {
|
|
|
32650
32717
|
async function getCapabilities(client, params) {
|
|
32651
32718
|
try {
|
|
32652
32719
|
const transport = createJsonRpcTransport(client.relayerConfig.relayerUrl, {
|
|
32653
|
-
httpAuth: client.relayerConfig
|
|
32720
|
+
httpAuth: getHttpAuthOptions(client.relayerConfig)
|
|
32654
32721
|
});
|
|
32655
32722
|
const rpcParams = params?.chainIds && params.chainIds.length > 0 ? {
|
|
32656
32723
|
...params,
|
|
@@ -32718,7 +32785,7 @@ var getNonceAbi = [
|
|
|
32718
32785
|
];
|
|
32719
32786
|
async function prepareCalls(client, params) {
|
|
32720
32787
|
const transport = createJsonRpcTransport(client.relayerConfig.relayerUrl, {
|
|
32721
|
-
httpAuth: client.relayerConfig
|
|
32788
|
+
httpAuth: getHttpAuthOptions(client.relayerConfig)
|
|
32722
32789
|
});
|
|
32723
32790
|
const chainId = params.chainId ?? client.relayerConfig.chainId ?? client.chain?.id ?? 1;
|
|
32724
32791
|
let resolvedNonce = params.nonce;
|
|
@@ -32798,7 +32865,7 @@ async function prepareCalls(client, params) {
|
|
|
32798
32865
|
// ../relayer-client/dist/actions/sendPreparedCalls.js
|
|
32799
32866
|
async function sendPreparedCalls(client, params) {
|
|
32800
32867
|
const transport = createJsonRpcTransport(client.relayerConfig.relayerUrl, {
|
|
32801
|
-
httpAuth: client.relayerConfig
|
|
32868
|
+
httpAuth: getHttpAuthOptions(client.relayerConfig)
|
|
32802
32869
|
});
|
|
32803
32870
|
const rpcParams = {
|
|
32804
32871
|
context: params.context,
|
|
@@ -32833,7 +32900,7 @@ function statusCodeToString(code) {
|
|
|
32833
32900
|
async function getCallsStatus(client, params) {
|
|
32834
32901
|
try {
|
|
32835
32902
|
const transport = createJsonRpcTransport(client.relayerConfig.relayerUrl, {
|
|
32836
|
-
httpAuth: client.relayerConfig
|
|
32903
|
+
httpAuth: getHttpAuthOptions(client.relayerConfig)
|
|
32837
32904
|
});
|
|
32838
32905
|
const chainId = params.chainId ?? client.relayerConfig.chainId ?? client.chain?.id;
|
|
32839
32906
|
const rpcParams = chainId !== void 0 ? {
|
|
@@ -32926,7 +32993,7 @@ async function upgradeAccount(client, params) {
|
|
|
32926
32993
|
throw new Error("Must provide either signerKey or walletClient");
|
|
32927
32994
|
}
|
|
32928
32995
|
const transport = createJsonRpcTransport(client.relayerConfig.relayerUrl, {
|
|
32929
|
-
httpAuth: client.relayerConfig
|
|
32996
|
+
httpAuth: getHttpAuthOptions(client.relayerConfig)
|
|
32930
32997
|
});
|
|
32931
32998
|
const chainId = params.chainId ?? client.relayerConfig.chainId ?? client.chain?.id;
|
|
32932
32999
|
const prepared = await transport.request("wallet_prepareUpgradeAccount", {
|
|
@@ -32996,7 +33063,7 @@ async function upgradeAccount(client, params) {
|
|
|
32996
33063
|
// ../relayer-client/dist/actions/getKeys.js
|
|
32997
33064
|
async function getKeys2(client, params) {
|
|
32998
33065
|
const transport = createJsonRpcTransport(client.relayerConfig.relayerUrl, {
|
|
32999
|
-
httpAuth: client.relayerConfig
|
|
33066
|
+
httpAuth: getHttpAuthOptions(client.relayerConfig)
|
|
33000
33067
|
});
|
|
33001
33068
|
const rpcParams = {
|
|
33002
33069
|
address: params.address
|
|
@@ -33011,7 +33078,7 @@ async function getKeys2(client, params) {
|
|
|
33011
33078
|
// ../relayer-client/dist/actions/verifySignature.js
|
|
33012
33079
|
async function verifySignature(client, params) {
|
|
33013
33080
|
const transport = createJsonRpcTransport(client.relayerConfig.relayerUrl, {
|
|
33014
|
-
httpAuth: client.relayerConfig
|
|
33081
|
+
httpAuth: getHttpAuthOptions(client.relayerConfig)
|
|
33015
33082
|
});
|
|
33016
33083
|
const chainId = params.chainId ?? client.relayerConfig.chainId ?? client.chain?.id ?? 1;
|
|
33017
33084
|
const hexChainId = `0x${chainId.toString(16)}`;
|
|
@@ -33105,6 +33172,27 @@ function getChain(chainId, rpcUrl) {
|
|
|
33105
33172
|
};
|
|
33106
33173
|
}
|
|
33107
33174
|
|
|
33175
|
+
// ../relayer-client/dist/escrow/computeEscrowId.js
|
|
33176
|
+
var import_viem12 = require("viem");
|
|
33177
|
+
|
|
33178
|
+
// ../relayer-client/dist/escrow/buildEscrowStruct.js
|
|
33179
|
+
var import_viem11 = require("viem");
|
|
33180
|
+
|
|
33181
|
+
// ../relayer-client/dist/escrow/createEscrowCalls.js
|
|
33182
|
+
var import_viem13 = require("viem");
|
|
33183
|
+
var ERC20_APPROVE_ABI = (0, import_viem13.parseAbi)([
|
|
33184
|
+
"function approve(address spender, uint256 amount) returns (bool)"
|
|
33185
|
+
]);
|
|
33186
|
+
|
|
33187
|
+
// ../relayer-client/dist/escrow/refundEscrowCalls.js
|
|
33188
|
+
var import_viem14 = require("viem");
|
|
33189
|
+
|
|
33190
|
+
// ../relayer-client/dist/escrow/signSettlement.js
|
|
33191
|
+
var import_accounts7 = require("viem/accounts");
|
|
33192
|
+
|
|
33193
|
+
// ../relayer-client/dist/escrow/writeSettlementCalls.js
|
|
33194
|
+
var import_viem15 = require("viem");
|
|
33195
|
+
|
|
33108
33196
|
// ../contracts/dist/addresses.json
|
|
33109
33197
|
var addresses_default = {
|
|
33110
33198
|
dev: {
|
|
@@ -35868,16 +35956,16 @@ async function create17(argv) {
|
|
|
35868
35956
|
throw new Error(`No accountProxy address found for ${townsConfig.environmentId}/${chainId}`);
|
|
35869
35957
|
}
|
|
35870
35958
|
const relayerUrl = townsConfig.services.relayer.url;
|
|
35871
|
-
const relayerClient = (0,
|
|
35959
|
+
const relayerClient = (0, import_viem16.createPublicClient)({
|
|
35872
35960
|
chain: {
|
|
35873
35961
|
id: chainId,
|
|
35874
35962
|
name: "Local",
|
|
35875
35963
|
nativeCurrency: { name: "Ether", symbol: "ETH", decimals: 18 },
|
|
35876
35964
|
rpcUrls: { default: { http: [townsConfig.base.rpcUrl] } }
|
|
35877
35965
|
},
|
|
35878
|
-
transport: (0,
|
|
35966
|
+
transport: (0, import_viem16.http)(townsConfig.base.rpcUrl)
|
|
35879
35967
|
}).extend(relayerActions({ relayerUrl }));
|
|
35880
|
-
const botPrivateKey = argv.botPrivateKey || (0,
|
|
35968
|
+
const botPrivateKey = argv.botPrivateKey || (0, import_accounts8.generatePrivateKey)();
|
|
35881
35969
|
const { result: createResult, auth: authUsedForCreate } = await executeWithAuthRetry(
|
|
35882
35970
|
auth,
|
|
35883
35971
|
async (activeAuth) => {
|
|
@@ -36345,8 +36433,8 @@ async function promptNotify() {
|
|
|
36345
36433
|
|
|
36346
36434
|
// src/modules/delegate.ts
|
|
36347
36435
|
var import_picocolors8 = require("picocolors");
|
|
36348
|
-
var
|
|
36349
|
-
var
|
|
36436
|
+
var import_viem17 = require("viem");
|
|
36437
|
+
var import_accounts9 = require("viem/accounts");
|
|
36350
36438
|
var import_chains4 = require("viem/chains");
|
|
36351
36439
|
var CHAIN_NAME_TO_ID = {
|
|
36352
36440
|
base: 8453,
|
|
@@ -36426,11 +36514,11 @@ Use a chain name (${Object.keys(CHAIN_NAME_TO_ID).join(", ")}) or a numeric chai
|
|
|
36426
36514
|
);
|
|
36427
36515
|
process.exit(1);
|
|
36428
36516
|
}
|
|
36429
|
-
const account = (0,
|
|
36517
|
+
const account = (0, import_accounts9.privateKeyToAccount)(appPrivateKey);
|
|
36430
36518
|
const chain = getChain(chainId, rpcUrl);
|
|
36431
|
-
const relayerClient = (0,
|
|
36519
|
+
const relayerClient = (0, import_viem17.createPublicClient)({
|
|
36432
36520
|
chain,
|
|
36433
|
-
transport: (0,
|
|
36521
|
+
transport: (0, import_viem17.http)(rpcUrl)
|
|
36434
36522
|
}).extend(relayerActions({ relayerUrl }));
|
|
36435
36523
|
console.log((0, import_picocolors8.dim)(`Delegating account ${account.address} on chain ${chainId}...`));
|
|
36436
36524
|
const result = await relayerClient.upgradeAccount({
|
|
@@ -36498,7 +36586,7 @@ async function rotateSecret(argv) {
|
|
|
36498
36586
|
// src/modules/admin.ts
|
|
36499
36587
|
var import_prompts6 = __toESM(require("prompts"));
|
|
36500
36588
|
var import_picocolors10 = require("picocolors");
|
|
36501
|
-
var
|
|
36589
|
+
var import_viem18 = require("viem");
|
|
36502
36590
|
var FIELD_DEFS2 = METADATA_FIELD_DEFS;
|
|
36503
36591
|
var FIELD_BY_ALIAS = {
|
|
36504
36592
|
username: "username",
|
|
@@ -36649,14 +36737,14 @@ async function admin(argv) {
|
|
|
36649
36737
|
}
|
|
36650
36738
|
async function resolveAdminAppAddress(argv) {
|
|
36651
36739
|
const resolved = resolveAppAddress(argv._[1]);
|
|
36652
|
-
if (resolved && (0,
|
|
36740
|
+
if (resolved && (0, import_viem18.isAddress)(resolved)) {
|
|
36653
36741
|
return resolved;
|
|
36654
36742
|
}
|
|
36655
36743
|
const { value } = await (0, import_prompts6.default)({
|
|
36656
36744
|
type: "text",
|
|
36657
36745
|
name: "value",
|
|
36658
36746
|
message: "Paste app address (0x...)",
|
|
36659
|
-
validate: (v) => (0,
|
|
36747
|
+
validate: (v) => (0, import_viem18.isAddress)(v) ? true : "Enter a valid EVM address"
|
|
36660
36748
|
});
|
|
36661
36749
|
if (!value) {
|
|
36662
36750
|
return void 0;
|