diff --git a/Frameworks/Bindings.txt b/Frameworks/Bindings.txt index abefa3d76d3d78893e07f970b43adf4b3de67953..71d4cdcc695cfa1f74475cb87bf938d990484b98 100644 --- a/Frameworks/Bindings.txt +++ b/Frameworks/Bindings.txt @@ -1,4 +1,4 @@ -https://git.xx.network/elixxir/client/-/commit/a3ffe7a64ae4dd92739db291eede0353a5366551 +https://git.xx.network/elixxir/client/-/commit/12144ff4fa0bb0bf0308094c1353033cc75af3a0 go version go1.17.13 darwin/arm64 Xcode 13.4.1 Build version 13F100 gomobile bind target: ios,iossimulator,macos diff --git a/Frameworks/Bindings.xcframework/Info.plist b/Frameworks/Bindings.xcframework/Info.plist index 1e6b67e7e5ab26303902b1288f432c61b61a6f28..ab0338a02ded757edb59566001da4efa827302aa 100644 --- a/Frameworks/Bindings.xcframework/Info.plist +++ b/Frameworks/Bindings.xcframework/Info.plist @@ -18,7 +18,7 @@ </dict> <dict> <key>LibraryIdentifier</key> - <string>ios-arm64_x86_64-simulator</string> + <string>macos-arm64_x86_64</string> <key>LibraryPath</key> <string>Bindings.framework</string> <key>SupportedArchitectures</key> @@ -27,13 +27,11 @@ <string>x86_64</string> </array> <key>SupportedPlatform</key> - <string>ios</string> - <key>SupportedPlatformVariant</key> - <string>simulator</string> + <string>macos</string> </dict> <dict> <key>LibraryIdentifier</key> - <string>macos-arm64_x86_64</string> + <string>ios-arm64_x86_64-simulator</string> <key>LibraryPath</key> <string>Bindings.framework</string> <key>SupportedArchitectures</key> @@ -42,7 +40,9 @@ <string>x86_64</string> </array> <key>SupportedPlatform</key> - <string>macos</string> + <string>ios</string> + <key>SupportedPlatformVariant</key> + <string>simulator</string> </dict> </array> <key>CFBundlePackageType</key> diff --git a/Frameworks/Bindings.xcframework/ios-arm64/Bindings.framework/Versions/A/Bindings b/Frameworks/Bindings.xcframework/ios-arm64/Bindings.framework/Versions/A/Bindings index 4b12ea6fae25a8c97dbc64956836e59af6b937e9..8bbfe7e9f322e837ec6665ffd1ea4a478a98133b 100644 Binary files a/Frameworks/Bindings.xcframework/ios-arm64/Bindings.framework/Versions/A/Bindings and b/Frameworks/Bindings.xcframework/ios-arm64/Bindings.framework/Versions/A/Bindings differ diff --git a/Frameworks/Bindings.xcframework/ios-arm64/Bindings.framework/Versions/A/Headers/Bindings.objc.h b/Frameworks/Bindings.xcframework/ios-arm64/Bindings.framework/Versions/A/Headers/Bindings.objc.h index 5d794b630d29654c2d7f48ca38792a9745cb0ddc..1d32aaf959f293467ac499bdc8cd5dd39fabc980 100644 --- a/Frameworks/Bindings.xcframework/ios-arm64/Bindings.framework/Versions/A/Headers/Bindings.objc.h +++ b/Frameworks/Bindings.xcframework/ios-arm64/Bindings.framework/Versions/A/Headers/Bindings.objc.h @@ -298,9 +298,11 @@ Example BackupReport: /** * BroadcastMessage is the bindings representation of a broadcast message. -Example JSON: - {"RoundID":42, +BroadcastMessage Example JSON: + { + "RoundID":42, "EphID":[0,0,0,0,0,0,24,61], + "RoundURL":"https://dashboard.xx.network/rounds/25?xxmessenger=true", "Payload":"SGVsbG8sIGJyb2FkY2FzdCBmcmllbmRzIQ==" } */ @@ -320,9 +322,11 @@ Example JSON: * BroadcastReport is the bindings representation of the info on how a broadcast message was sent -Example JSON: - {"RoundID":42, - "EphID":[0,0,0,0,0,0,24,61] +BroadcastReport Example JSON: + { + "Rounds": [25, 26, 29], + "EphID":[0,0,0,0,0,0,24,61], + "RoundURL":"https://dashboard.xx.network/rounds/25?xxmessenger=true" } */ @interface BindingsBroadcastReport : NSObject <goSeqRefInterface> { @@ -333,6 +337,7 @@ Example JSON: - (nonnull instancetype)init; // skipped field BroadcastReport.RoundsList with unsupported type: gitlab.com/elixxir/client/bindings.RoundsList +@property (nonatomic) NSString* _Nonnull roundURL; // skipped field BroadcastReport.EphID with unsupported type: gitlab.com/xx_network/primitives/id/ephemeral.Id - (NSData* _Nullable)marshal:(NSError* _Nullable* _Nullable)error; @@ -697,13 +702,14 @@ Returns: * E2ESendReport is the bindings' representation of the return values of SendE2E. -Example E2ESendReport: -{ -"Rounds": [ 1, 4, 9], -"MessageID": "iM34yCIr4Je8ZIzL9iAAG1UWAeDiHybxMTioMAaezvs=", -"Timestamp": 1661532254302612000, -"KeyResidue": "9q2/A69EAuFM1hFAT7Bzy5uGOQ4T6bPFF72h5PlgCWE=" -} +E2ESendReport Example JSON: + { + "Rounds": [ 1, 4, 9], + "RoundURL":"https://dashboard.xx.network/rounds/25?xxmessenger=true", + "MessageID": "iM34yCIr4Je8ZIzL9iAAG1UWAeDiHybxMTioMAaezvs=", + "Timestamp": 1661532254302612000, + "KeyResidue": "9q2/A69EAuFM1hFAT7Bzy5uGOQ4T6bPFF72h5PlgCWE=" + } */ @interface BindingsE2ESendReport : NSObject <goSeqRefInterface> { } @@ -713,6 +719,7 @@ Example E2ESendReport: - (nonnull instancetype)init; // skipped field E2ESendReport.RoundsList with unsupported type: gitlab.com/elixxir/client/bindings.RoundsList +@property (nonatomic) NSString* _Nonnull roundURL; @property (nonatomic) NSData* _Nullable messageID; @property (nonatomic) int64_t timestamp; @property (nonatomic) NSData* _Nullable keyResidue; @@ -1346,6 +1353,14 @@ Returns: * GroupReport is returned when creating a new group and contains the ID of the group, a list of rounds that the group requests were sent on, and the status of the send operation. + +Example GroupReport JSON: + { + "Id": "AAAAAAAAAM0AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAE", + "Rounds": [25, 64], + "RoundURL": "https://dashboard.xx.network/rounds/25?xxmessenger=true", + "Status": 1 + } */ @interface BindingsGroupReport : NSObject <goSeqRefInterface> { } @@ -1356,6 +1371,7 @@ status of the send operation. @property (nonatomic) NSData* _Nullable id_; // skipped field GroupReport.RoundsList with unsupported type: gitlab.com/elixxir/client/bindings.RoundsList +@property (nonatomic) NSString* _Nonnull roundURL; @property (nonatomic) long status; - (NSData* _Nullable)marshal:(NSError* _Nullable* _Nullable)error; @end @@ -1363,6 +1379,14 @@ status of the send operation. /** * GroupSendReport is returned when sending a group message. It contains the round ID sent on and the timestamp of the send operation. + +Example GroupSendReport JSON: + { + "Rounds": [25, 64], + "RoundURL": "https://dashboard.xx.network/rounds/25?xxmessenger=true", + "Timestamp": 1662577352813112000, + "MessageID": "69ug6FA50UT2q6MWH3hne9PkHQ+H9DnEDsBhc0m0Aww=" + } */ @interface BindingsGroupSendReport : NSObject <goSeqRefInterface> { } @@ -1372,6 +1396,7 @@ round ID sent on and the timestamp of the send operation. - (nonnull instancetype)init; // skipped field GroupSendReport.RoundsList with unsupported type: gitlab.com/elixxir/client/bindings.RoundsList +@property (nonatomic) NSString* _Nonnull roundURL; @property (nonatomic) int64_t timestamp; @property (nonatomic) NSData* _Nullable messageID; - (NSData* _Nullable)marshal:(NSError* _Nullable* _Nullable)error; @@ -1579,7 +1604,7 @@ JSON example: /** * RoundsList contains a list of round IDs. -Example marshalled roundList object: +JSON Example: [1001,1003,1006] */ @interface BindingsRoundsList : NSObject <goSeqRefInterface> { @@ -1600,14 +1625,15 @@ Example marshalled roundList object: * SingleUseCallbackReport is the bindings-layer struct used to represent single -use messages received by a callback passed into single.Listen. -JSON example: - { - "Rounds":[1,5,9], - "Payload":"rSuPD35ELWwm5KTR9ViKIz/r1YGRgXIl5792SF8o8piZzN6sT4Liq4rUU/nfOPvQEjbfWNh/NYxdJ72VctDnWw==", - "Partner":"emV6aW1hAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD", - "EphID":1655533, - "ReceptionID":"emV6aW1hAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD"} - } +SingleUseCallbackReport JSON example: + { + "Rounds":[1,5,9], + "RoundURL": "https://dashboard.xx.network/rounds/25?xxmessenger=true", + "Payload":"rSuPD35ELWwm5KTR9ViKIz/r1YGRgXIl5792SF8o8piZzN6sT4Liq4rUU/nfOPvQEjbfWNh/NYxdJ72VctDnWw==", + "Partner":"emV6aW1hAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD", + "EphID":1655533, + "ReceptionID":"emV6aW1hAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD"} + } */ @interface BindingsSingleUseCallbackReport : NSObject <goSeqRefInterface> { } @@ -1617,6 +1643,7 @@ JSON example: - (nonnull instancetype)init; // skipped field SingleUseCallbackReport.RoundsList with unsupported type: gitlab.com/elixxir/client/bindings.RoundsList +@property (nonatomic) NSString* _Nonnull roundURL; @property (nonatomic) NSData* _Nullable payload; // skipped field SingleUseCallbackReport.Partner with unsupported type: *gitlab.com/xx_network/primitives/id.ID @@ -1631,9 +1658,10 @@ JSON example: information passed to the single.Response callback interface in response to single.TransmitRequest. -JSON example: +SingleUseResponseReport JSON example: { "Rounds":[1,5,9], + "RoundURL": "https://dashboard.xx.network/rounds/25?xxmessenger=true", "Payload":"rSuPD35ELWwm5KTR9ViKIz/r1YGRgXIl5792SF8o8piZzN6sT4Liq4rUU/nfOPvQEjbfWNh/NYxdJ72VctDnWw==", "EphID":1655533, "ReceptionID":"emV6aW1hAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD"}, @@ -1648,6 +1676,7 @@ JSON example: - (nonnull instancetype)init; // skipped field SingleUseResponseReport.RoundsList with unsupported type: gitlab.com/elixxir/client/bindings.RoundsList +@property (nonatomic) NSString* _Nonnull roundURL; @property (nonatomic) NSData* _Nullable payload; // skipped field SingleUseResponseReport.ReceptionID with unsupported type: *gitlab.com/xx_network/primitives/id.ID @@ -1660,9 +1689,10 @@ JSON example: * SingleUseSendReport is the bindings-layer struct used to represent information returned by single.TransmitRequest. -JSON example: +SingleUseSendReport JSON example: { "Rounds":[1,5,9], + "RoundURL": "https://dashboard.xx.network/rounds/25?xxmessenger=true", "EphID":1655533, "ReceptionID":"emV6aW1hAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD"} } @@ -1675,6 +1705,7 @@ JSON example: - (nonnull instancetype)init; // skipped field SingleUseSendReport.RoundsList with unsupported type: gitlab.com/elixxir/client/bindings.RoundsList +@property (nonatomic) NSString* _Nonnull roundURL; // skipped field SingleUseSendReport.ReceptionID with unsupported type: *gitlab.com/xx_network/primitives/id.ID @property (nonatomic) int64_t ephID; @@ -2268,6 +2299,19 @@ Returns: */ FOUNDATION_EXPORT NSData* _Nullable BindingsSearchUD(long e2eID, NSData* _Nullable udContact, id<BindingsUdSearchCallback> _Nullable cb, NSData* _Nullable factListJSON, NSData* _Nullable singleRequestParamsJSON, NSError* _Nullable* _Nullable error); +/** + * SetDashboardURL is a function which modifies the base dashboard URL +that is returned as part of any send report. Internally, this is defaulted +to "https://dashboard.xx.network". This should only be called if the user +explicitly wants to modify the dashboard URL. This function is not +thread-safe, and as such should only be called on setup. + +Parameters: + - newURL - A valid URL that will be used for round look up on any send + report. + */ +FOUNDATION_EXPORT void BindingsSetDashboardURL(NSString* _Nullable newURL); + /** * SetFactsOnContact replaces the facts on the contact with the passed in facts pass in empty facts in order to clear the facts. diff --git a/Frameworks/Bindings.xcframework/ios-arm64_x86_64-simulator/Bindings.framework/Versions/A/Bindings b/Frameworks/Bindings.xcframework/ios-arm64_x86_64-simulator/Bindings.framework/Versions/A/Bindings index b43201b5eb4033863f2b69e56e634b3b7a5ca117..0409f2c54516429447f076c565e9682988e099b1 100644 Binary files a/Frameworks/Bindings.xcframework/ios-arm64_x86_64-simulator/Bindings.framework/Versions/A/Bindings and b/Frameworks/Bindings.xcframework/ios-arm64_x86_64-simulator/Bindings.framework/Versions/A/Bindings differ diff --git a/Frameworks/Bindings.xcframework/ios-arm64_x86_64-simulator/Bindings.framework/Versions/A/Headers/Bindings.objc.h b/Frameworks/Bindings.xcframework/ios-arm64_x86_64-simulator/Bindings.framework/Versions/A/Headers/Bindings.objc.h index 5d794b630d29654c2d7f48ca38792a9745cb0ddc..1d32aaf959f293467ac499bdc8cd5dd39fabc980 100644 --- a/Frameworks/Bindings.xcframework/ios-arm64_x86_64-simulator/Bindings.framework/Versions/A/Headers/Bindings.objc.h +++ b/Frameworks/Bindings.xcframework/ios-arm64_x86_64-simulator/Bindings.framework/Versions/A/Headers/Bindings.objc.h @@ -298,9 +298,11 @@ Example BackupReport: /** * BroadcastMessage is the bindings representation of a broadcast message. -Example JSON: - {"RoundID":42, +BroadcastMessage Example JSON: + { + "RoundID":42, "EphID":[0,0,0,0,0,0,24,61], + "RoundURL":"https://dashboard.xx.network/rounds/25?xxmessenger=true", "Payload":"SGVsbG8sIGJyb2FkY2FzdCBmcmllbmRzIQ==" } */ @@ -320,9 +322,11 @@ Example JSON: * BroadcastReport is the bindings representation of the info on how a broadcast message was sent -Example JSON: - {"RoundID":42, - "EphID":[0,0,0,0,0,0,24,61] +BroadcastReport Example JSON: + { + "Rounds": [25, 26, 29], + "EphID":[0,0,0,0,0,0,24,61], + "RoundURL":"https://dashboard.xx.network/rounds/25?xxmessenger=true" } */ @interface BindingsBroadcastReport : NSObject <goSeqRefInterface> { @@ -333,6 +337,7 @@ Example JSON: - (nonnull instancetype)init; // skipped field BroadcastReport.RoundsList with unsupported type: gitlab.com/elixxir/client/bindings.RoundsList +@property (nonatomic) NSString* _Nonnull roundURL; // skipped field BroadcastReport.EphID with unsupported type: gitlab.com/xx_network/primitives/id/ephemeral.Id - (NSData* _Nullable)marshal:(NSError* _Nullable* _Nullable)error; @@ -697,13 +702,14 @@ Returns: * E2ESendReport is the bindings' representation of the return values of SendE2E. -Example E2ESendReport: -{ -"Rounds": [ 1, 4, 9], -"MessageID": "iM34yCIr4Je8ZIzL9iAAG1UWAeDiHybxMTioMAaezvs=", -"Timestamp": 1661532254302612000, -"KeyResidue": "9q2/A69EAuFM1hFAT7Bzy5uGOQ4T6bPFF72h5PlgCWE=" -} +E2ESendReport Example JSON: + { + "Rounds": [ 1, 4, 9], + "RoundURL":"https://dashboard.xx.network/rounds/25?xxmessenger=true", + "MessageID": "iM34yCIr4Je8ZIzL9iAAG1UWAeDiHybxMTioMAaezvs=", + "Timestamp": 1661532254302612000, + "KeyResidue": "9q2/A69EAuFM1hFAT7Bzy5uGOQ4T6bPFF72h5PlgCWE=" + } */ @interface BindingsE2ESendReport : NSObject <goSeqRefInterface> { } @@ -713,6 +719,7 @@ Example E2ESendReport: - (nonnull instancetype)init; // skipped field E2ESendReport.RoundsList with unsupported type: gitlab.com/elixxir/client/bindings.RoundsList +@property (nonatomic) NSString* _Nonnull roundURL; @property (nonatomic) NSData* _Nullable messageID; @property (nonatomic) int64_t timestamp; @property (nonatomic) NSData* _Nullable keyResidue; @@ -1346,6 +1353,14 @@ Returns: * GroupReport is returned when creating a new group and contains the ID of the group, a list of rounds that the group requests were sent on, and the status of the send operation. + +Example GroupReport JSON: + { + "Id": "AAAAAAAAAM0AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAE", + "Rounds": [25, 64], + "RoundURL": "https://dashboard.xx.network/rounds/25?xxmessenger=true", + "Status": 1 + } */ @interface BindingsGroupReport : NSObject <goSeqRefInterface> { } @@ -1356,6 +1371,7 @@ status of the send operation. @property (nonatomic) NSData* _Nullable id_; // skipped field GroupReport.RoundsList with unsupported type: gitlab.com/elixxir/client/bindings.RoundsList +@property (nonatomic) NSString* _Nonnull roundURL; @property (nonatomic) long status; - (NSData* _Nullable)marshal:(NSError* _Nullable* _Nullable)error; @end @@ -1363,6 +1379,14 @@ status of the send operation. /** * GroupSendReport is returned when sending a group message. It contains the round ID sent on and the timestamp of the send operation. + +Example GroupSendReport JSON: + { + "Rounds": [25, 64], + "RoundURL": "https://dashboard.xx.network/rounds/25?xxmessenger=true", + "Timestamp": 1662577352813112000, + "MessageID": "69ug6FA50UT2q6MWH3hne9PkHQ+H9DnEDsBhc0m0Aww=" + } */ @interface BindingsGroupSendReport : NSObject <goSeqRefInterface> { } @@ -1372,6 +1396,7 @@ round ID sent on and the timestamp of the send operation. - (nonnull instancetype)init; // skipped field GroupSendReport.RoundsList with unsupported type: gitlab.com/elixxir/client/bindings.RoundsList +@property (nonatomic) NSString* _Nonnull roundURL; @property (nonatomic) int64_t timestamp; @property (nonatomic) NSData* _Nullable messageID; - (NSData* _Nullable)marshal:(NSError* _Nullable* _Nullable)error; @@ -1579,7 +1604,7 @@ JSON example: /** * RoundsList contains a list of round IDs. -Example marshalled roundList object: +JSON Example: [1001,1003,1006] */ @interface BindingsRoundsList : NSObject <goSeqRefInterface> { @@ -1600,14 +1625,15 @@ Example marshalled roundList object: * SingleUseCallbackReport is the bindings-layer struct used to represent single -use messages received by a callback passed into single.Listen. -JSON example: - { - "Rounds":[1,5,9], - "Payload":"rSuPD35ELWwm5KTR9ViKIz/r1YGRgXIl5792SF8o8piZzN6sT4Liq4rUU/nfOPvQEjbfWNh/NYxdJ72VctDnWw==", - "Partner":"emV6aW1hAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD", - "EphID":1655533, - "ReceptionID":"emV6aW1hAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD"} - } +SingleUseCallbackReport JSON example: + { + "Rounds":[1,5,9], + "RoundURL": "https://dashboard.xx.network/rounds/25?xxmessenger=true", + "Payload":"rSuPD35ELWwm5KTR9ViKIz/r1YGRgXIl5792SF8o8piZzN6sT4Liq4rUU/nfOPvQEjbfWNh/NYxdJ72VctDnWw==", + "Partner":"emV6aW1hAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD", + "EphID":1655533, + "ReceptionID":"emV6aW1hAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD"} + } */ @interface BindingsSingleUseCallbackReport : NSObject <goSeqRefInterface> { } @@ -1617,6 +1643,7 @@ JSON example: - (nonnull instancetype)init; // skipped field SingleUseCallbackReport.RoundsList with unsupported type: gitlab.com/elixxir/client/bindings.RoundsList +@property (nonatomic) NSString* _Nonnull roundURL; @property (nonatomic) NSData* _Nullable payload; // skipped field SingleUseCallbackReport.Partner with unsupported type: *gitlab.com/xx_network/primitives/id.ID @@ -1631,9 +1658,10 @@ JSON example: information passed to the single.Response callback interface in response to single.TransmitRequest. -JSON example: +SingleUseResponseReport JSON example: { "Rounds":[1,5,9], + "RoundURL": "https://dashboard.xx.network/rounds/25?xxmessenger=true", "Payload":"rSuPD35ELWwm5KTR9ViKIz/r1YGRgXIl5792SF8o8piZzN6sT4Liq4rUU/nfOPvQEjbfWNh/NYxdJ72VctDnWw==", "EphID":1655533, "ReceptionID":"emV6aW1hAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD"}, @@ -1648,6 +1676,7 @@ JSON example: - (nonnull instancetype)init; // skipped field SingleUseResponseReport.RoundsList with unsupported type: gitlab.com/elixxir/client/bindings.RoundsList +@property (nonatomic) NSString* _Nonnull roundURL; @property (nonatomic) NSData* _Nullable payload; // skipped field SingleUseResponseReport.ReceptionID with unsupported type: *gitlab.com/xx_network/primitives/id.ID @@ -1660,9 +1689,10 @@ JSON example: * SingleUseSendReport is the bindings-layer struct used to represent information returned by single.TransmitRequest. -JSON example: +SingleUseSendReport JSON example: { "Rounds":[1,5,9], + "RoundURL": "https://dashboard.xx.network/rounds/25?xxmessenger=true", "EphID":1655533, "ReceptionID":"emV6aW1hAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD"} } @@ -1675,6 +1705,7 @@ JSON example: - (nonnull instancetype)init; // skipped field SingleUseSendReport.RoundsList with unsupported type: gitlab.com/elixxir/client/bindings.RoundsList +@property (nonatomic) NSString* _Nonnull roundURL; // skipped field SingleUseSendReport.ReceptionID with unsupported type: *gitlab.com/xx_network/primitives/id.ID @property (nonatomic) int64_t ephID; @@ -2268,6 +2299,19 @@ Returns: */ FOUNDATION_EXPORT NSData* _Nullable BindingsSearchUD(long e2eID, NSData* _Nullable udContact, id<BindingsUdSearchCallback> _Nullable cb, NSData* _Nullable factListJSON, NSData* _Nullable singleRequestParamsJSON, NSError* _Nullable* _Nullable error); +/** + * SetDashboardURL is a function which modifies the base dashboard URL +that is returned as part of any send report. Internally, this is defaulted +to "https://dashboard.xx.network". This should only be called if the user +explicitly wants to modify the dashboard URL. This function is not +thread-safe, and as such should only be called on setup. + +Parameters: + - newURL - A valid URL that will be used for round look up on any send + report. + */ +FOUNDATION_EXPORT void BindingsSetDashboardURL(NSString* _Nullable newURL); + /** * SetFactsOnContact replaces the facts on the contact with the passed in facts pass in empty facts in order to clear the facts. diff --git a/Frameworks/Bindings.xcframework/macos-arm64_x86_64/Bindings.framework/Versions/A/Bindings b/Frameworks/Bindings.xcframework/macos-arm64_x86_64/Bindings.framework/Versions/A/Bindings index 8ccbabd6f164766ec582b23221e997bc34ed7593..d59df29aaa7b4f2d93a378b4c129b1a5069ef869 100644 Binary files a/Frameworks/Bindings.xcframework/macos-arm64_x86_64/Bindings.framework/Versions/A/Bindings and b/Frameworks/Bindings.xcframework/macos-arm64_x86_64/Bindings.framework/Versions/A/Bindings differ diff --git a/Frameworks/Bindings.xcframework/macos-arm64_x86_64/Bindings.framework/Versions/A/Headers/Bindings.objc.h b/Frameworks/Bindings.xcframework/macos-arm64_x86_64/Bindings.framework/Versions/A/Headers/Bindings.objc.h index 5d794b630d29654c2d7f48ca38792a9745cb0ddc..1d32aaf959f293467ac499bdc8cd5dd39fabc980 100644 --- a/Frameworks/Bindings.xcframework/macos-arm64_x86_64/Bindings.framework/Versions/A/Headers/Bindings.objc.h +++ b/Frameworks/Bindings.xcframework/macos-arm64_x86_64/Bindings.framework/Versions/A/Headers/Bindings.objc.h @@ -298,9 +298,11 @@ Example BackupReport: /** * BroadcastMessage is the bindings representation of a broadcast message. -Example JSON: - {"RoundID":42, +BroadcastMessage Example JSON: + { + "RoundID":42, "EphID":[0,0,0,0,0,0,24,61], + "RoundURL":"https://dashboard.xx.network/rounds/25?xxmessenger=true", "Payload":"SGVsbG8sIGJyb2FkY2FzdCBmcmllbmRzIQ==" } */ @@ -320,9 +322,11 @@ Example JSON: * BroadcastReport is the bindings representation of the info on how a broadcast message was sent -Example JSON: - {"RoundID":42, - "EphID":[0,0,0,0,0,0,24,61] +BroadcastReport Example JSON: + { + "Rounds": [25, 26, 29], + "EphID":[0,0,0,0,0,0,24,61], + "RoundURL":"https://dashboard.xx.network/rounds/25?xxmessenger=true" } */ @interface BindingsBroadcastReport : NSObject <goSeqRefInterface> { @@ -333,6 +337,7 @@ Example JSON: - (nonnull instancetype)init; // skipped field BroadcastReport.RoundsList with unsupported type: gitlab.com/elixxir/client/bindings.RoundsList +@property (nonatomic) NSString* _Nonnull roundURL; // skipped field BroadcastReport.EphID with unsupported type: gitlab.com/xx_network/primitives/id/ephemeral.Id - (NSData* _Nullable)marshal:(NSError* _Nullable* _Nullable)error; @@ -697,13 +702,14 @@ Returns: * E2ESendReport is the bindings' representation of the return values of SendE2E. -Example E2ESendReport: -{ -"Rounds": [ 1, 4, 9], -"MessageID": "iM34yCIr4Je8ZIzL9iAAG1UWAeDiHybxMTioMAaezvs=", -"Timestamp": 1661532254302612000, -"KeyResidue": "9q2/A69EAuFM1hFAT7Bzy5uGOQ4T6bPFF72h5PlgCWE=" -} +E2ESendReport Example JSON: + { + "Rounds": [ 1, 4, 9], + "RoundURL":"https://dashboard.xx.network/rounds/25?xxmessenger=true", + "MessageID": "iM34yCIr4Je8ZIzL9iAAG1UWAeDiHybxMTioMAaezvs=", + "Timestamp": 1661532254302612000, + "KeyResidue": "9q2/A69EAuFM1hFAT7Bzy5uGOQ4T6bPFF72h5PlgCWE=" + } */ @interface BindingsE2ESendReport : NSObject <goSeqRefInterface> { } @@ -713,6 +719,7 @@ Example E2ESendReport: - (nonnull instancetype)init; // skipped field E2ESendReport.RoundsList with unsupported type: gitlab.com/elixxir/client/bindings.RoundsList +@property (nonatomic) NSString* _Nonnull roundURL; @property (nonatomic) NSData* _Nullable messageID; @property (nonatomic) int64_t timestamp; @property (nonatomic) NSData* _Nullable keyResidue; @@ -1346,6 +1353,14 @@ Returns: * GroupReport is returned when creating a new group and contains the ID of the group, a list of rounds that the group requests were sent on, and the status of the send operation. + +Example GroupReport JSON: + { + "Id": "AAAAAAAAAM0AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAE", + "Rounds": [25, 64], + "RoundURL": "https://dashboard.xx.network/rounds/25?xxmessenger=true", + "Status": 1 + } */ @interface BindingsGroupReport : NSObject <goSeqRefInterface> { } @@ -1356,6 +1371,7 @@ status of the send operation. @property (nonatomic) NSData* _Nullable id_; // skipped field GroupReport.RoundsList with unsupported type: gitlab.com/elixxir/client/bindings.RoundsList +@property (nonatomic) NSString* _Nonnull roundURL; @property (nonatomic) long status; - (NSData* _Nullable)marshal:(NSError* _Nullable* _Nullable)error; @end @@ -1363,6 +1379,14 @@ status of the send operation. /** * GroupSendReport is returned when sending a group message. It contains the round ID sent on and the timestamp of the send operation. + +Example GroupSendReport JSON: + { + "Rounds": [25, 64], + "RoundURL": "https://dashboard.xx.network/rounds/25?xxmessenger=true", + "Timestamp": 1662577352813112000, + "MessageID": "69ug6FA50UT2q6MWH3hne9PkHQ+H9DnEDsBhc0m0Aww=" + } */ @interface BindingsGroupSendReport : NSObject <goSeqRefInterface> { } @@ -1372,6 +1396,7 @@ round ID sent on and the timestamp of the send operation. - (nonnull instancetype)init; // skipped field GroupSendReport.RoundsList with unsupported type: gitlab.com/elixxir/client/bindings.RoundsList +@property (nonatomic) NSString* _Nonnull roundURL; @property (nonatomic) int64_t timestamp; @property (nonatomic) NSData* _Nullable messageID; - (NSData* _Nullable)marshal:(NSError* _Nullable* _Nullable)error; @@ -1579,7 +1604,7 @@ JSON example: /** * RoundsList contains a list of round IDs. -Example marshalled roundList object: +JSON Example: [1001,1003,1006] */ @interface BindingsRoundsList : NSObject <goSeqRefInterface> { @@ -1600,14 +1625,15 @@ Example marshalled roundList object: * SingleUseCallbackReport is the bindings-layer struct used to represent single -use messages received by a callback passed into single.Listen. -JSON example: - { - "Rounds":[1,5,9], - "Payload":"rSuPD35ELWwm5KTR9ViKIz/r1YGRgXIl5792SF8o8piZzN6sT4Liq4rUU/nfOPvQEjbfWNh/NYxdJ72VctDnWw==", - "Partner":"emV6aW1hAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD", - "EphID":1655533, - "ReceptionID":"emV6aW1hAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD"} - } +SingleUseCallbackReport JSON example: + { + "Rounds":[1,5,9], + "RoundURL": "https://dashboard.xx.network/rounds/25?xxmessenger=true", + "Payload":"rSuPD35ELWwm5KTR9ViKIz/r1YGRgXIl5792SF8o8piZzN6sT4Liq4rUU/nfOPvQEjbfWNh/NYxdJ72VctDnWw==", + "Partner":"emV6aW1hAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD", + "EphID":1655533, + "ReceptionID":"emV6aW1hAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD"} + } */ @interface BindingsSingleUseCallbackReport : NSObject <goSeqRefInterface> { } @@ -1617,6 +1643,7 @@ JSON example: - (nonnull instancetype)init; // skipped field SingleUseCallbackReport.RoundsList with unsupported type: gitlab.com/elixxir/client/bindings.RoundsList +@property (nonatomic) NSString* _Nonnull roundURL; @property (nonatomic) NSData* _Nullable payload; // skipped field SingleUseCallbackReport.Partner with unsupported type: *gitlab.com/xx_network/primitives/id.ID @@ -1631,9 +1658,10 @@ JSON example: information passed to the single.Response callback interface in response to single.TransmitRequest. -JSON example: +SingleUseResponseReport JSON example: { "Rounds":[1,5,9], + "RoundURL": "https://dashboard.xx.network/rounds/25?xxmessenger=true", "Payload":"rSuPD35ELWwm5KTR9ViKIz/r1YGRgXIl5792SF8o8piZzN6sT4Liq4rUU/nfOPvQEjbfWNh/NYxdJ72VctDnWw==", "EphID":1655533, "ReceptionID":"emV6aW1hAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD"}, @@ -1648,6 +1676,7 @@ JSON example: - (nonnull instancetype)init; // skipped field SingleUseResponseReport.RoundsList with unsupported type: gitlab.com/elixxir/client/bindings.RoundsList +@property (nonatomic) NSString* _Nonnull roundURL; @property (nonatomic) NSData* _Nullable payload; // skipped field SingleUseResponseReport.ReceptionID with unsupported type: *gitlab.com/xx_network/primitives/id.ID @@ -1660,9 +1689,10 @@ JSON example: * SingleUseSendReport is the bindings-layer struct used to represent information returned by single.TransmitRequest. -JSON example: +SingleUseSendReport JSON example: { "Rounds":[1,5,9], + "RoundURL": "https://dashboard.xx.network/rounds/25?xxmessenger=true", "EphID":1655533, "ReceptionID":"emV6aW1hAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD"} } @@ -1675,6 +1705,7 @@ JSON example: - (nonnull instancetype)init; // skipped field SingleUseSendReport.RoundsList with unsupported type: gitlab.com/elixxir/client/bindings.RoundsList +@property (nonatomic) NSString* _Nonnull roundURL; // skipped field SingleUseSendReport.ReceptionID with unsupported type: *gitlab.com/xx_network/primitives/id.ID @property (nonatomic) int64_t ephID; @@ -2268,6 +2299,19 @@ Returns: */ FOUNDATION_EXPORT NSData* _Nullable BindingsSearchUD(long e2eID, NSData* _Nullable udContact, id<BindingsUdSearchCallback> _Nullable cb, NSData* _Nullable factListJSON, NSData* _Nullable singleRequestParamsJSON, NSError* _Nullable* _Nullable error); +/** + * SetDashboardURL is a function which modifies the base dashboard URL +that is returned as part of any send report. Internally, this is defaulted +to "https://dashboard.xx.network". This should only be called if the user +explicitly wants to modify the dashboard URL. This function is not +thread-safe, and as such should only be called on setup. + +Parameters: + - newURL - A valid URL that will be used for round look up on any send + report. + */ +FOUNDATION_EXPORT void BindingsSetDashboardURL(NSString* _Nullable newURL); + /** * SetFactsOnContact replaces the facts on the contact with the passed in facts pass in empty facts in order to clear the facts.