From 0756db344f66c167b59f7139cc820cc8e680f4ba Mon Sep 17 00:00:00 2001 From: clegirar Date: Tue, 8 Dec 2020 13:41:13 +0100 Subject: [PATCH] fix: naming proto Signed-off-by: clegirar Signed-off-by: Manfred Touron <94029+moul@users.noreply.github.com> --- js/gen.sum | 7 +- js/packages/api/index.d.ts | 3 +- js/packages/api/index.js | 1 - .../chat/message/MessageMonitorMetadata.tsx | 2 +- js/packages/components/settings/Mode.tsx | 2 +- .../components/settings/NetworkMap.tsx | 16 +- js/packages/store/gen-type-utils.js | 6 +- js/packages/store/services.tsx | 2 +- js/packages/store/types.gen.ts | 505 ++++++++++++++++-- js/packages/web-dev-app/src/App.tsx | 22 +- 10 files changed, 499 insertions(+), 67 deletions(-) diff --git a/js/gen.sum b/js/gen.sum index 94408ef0ce..8620183608 100644 --- a/js/gen.sum +++ b/js/gen.sum @@ -1,4 +1,3 @@ -15bab772b80f15b5af4f7049de1e70e13f7b8b00 ../api/bertytypes.proto -35ebc74ab251dbb359ba0d04a3dafbcb99b10f67 ../api/bertyprotocol.proto -5ffa102d3dd5d784a8e1818c57e27e315aa000b4 ../api/bertymessenger.proto -97233bdafb7b04fb29f42c401feb1f3cb9c4a3d7 Makefile +19efd0680cb3e7e33dbe397591f73f47f015db6d Makefile +82be117c46950434fc992ba05d184101ab7029ca ../api/protocoltypes.proto +ec5e41f8fe7f13dc277026f7e1f332eb174da020 ../api/messengertypes.proto diff --git a/js/packages/api/index.d.ts b/js/packages/api/index.d.ts index 85ac50e784..126ff9d695 100644 --- a/js/packages/api/index.d.ts +++ b/js/packages/api/index.d.ts @@ -5,7 +5,6 @@ import pb from './root.pb' import account = pb.berty.account.v1 import messenger = pb.berty.messenger.v1 import protocol = pb.berty.protocol.v1 -import types = pb.berty.types.v1 import errcode = pb.berty.errcode -export { account, messenger, protocol, types, errcode } +export { account, messenger, protocol, errcode } diff --git a/js/packages/api/index.js b/js/packages/api/index.js index 4d49446283..5910cda8c6 100644 --- a/js/packages/api/index.js +++ b/js/packages/api/index.js @@ -4,6 +4,5 @@ export default { account: pb.lookup('berty.account.v1'), messenger: pb.lookup('.berty.messenger.v1'), protocol: pb.lookup('.berty.protocol.v1'), - types: pb.lookup('.berty.types.v1'), errcode: pb.lookup('.berty.errcode'), } diff --git a/js/packages/components/chat/message/MessageMonitorMetadata.tsx b/js/packages/components/chat/message/MessageMonitorMetadata.tsx index 5115c65d25..7fd29bcd25 100644 --- a/js/packages/components/chat/message/MessageMonitorMetadata.tsx +++ b/js/packages/components/chat/message/MessageMonitorMetadata.tsx @@ -8,7 +8,7 @@ import beapi from '@berty-tech/api' import { pbDateToNum, timeFormat } from '../../helpers' import { InteractionMonitorMetadata } from '@berty-tech/store/types.gen' -const eventMonitorTypes = beapi.types.MonitorGroup.TypeEventMonitor +const eventMonitorTypes = beapi.protocol.MonitorGroup.TypeEventMonitor export const MessageMonitorMetadata: React.FC<{ inte: InteractionMonitorMetadata }> = ({ inte, diff --git a/js/packages/components/settings/Mode.tsx b/js/packages/components/settings/Mode.tsx index e7bf8f55ec..8ae5fa6b05 100644 --- a/js/packages/components/settings/Mode.tsx +++ b/js/packages/components/settings/Mode.tsx @@ -194,7 +194,7 @@ const BodyMode: React.FC = ({ isMode }) => { return } - await ctx.client.replicationSetAutoEnable({ + await ctx.client?.replicationSetAutoEnable({ enabled: !account.replicateNewGroupsAutomatically, }) }} diff --git a/js/packages/components/settings/NetworkMap.tsx b/js/packages/components/settings/NetworkMap.tsx index 5a6ad9ee2d..5eb6fafe79 100644 --- a/js/packages/components/settings/NetworkMap.tsx +++ b/js/packages/components/settings/NetworkMap.tsx @@ -19,7 +19,7 @@ import { usePrevious } from '../hooks' import { pbDateToNum } from '../helpers' import { SwipeNavRecognizer } from '../shared-components/SwipeNavRecognizer' -const PeerItem: React.FC<{ item: beapi.types.PeerList.IPeer; highlighted: boolean }> = ({ +const PeerItem: React.FC<{ item: beapi.protocol.PeerList.IPeer; highlighted: boolean }> = ({ item, highlighted, }) => { @@ -54,11 +54,11 @@ const PeerItem: React.FC<{ item: beapi.types.PeerList.IPeer; highlighted: boolea ? features.map((value) => { let name, pack, fill switch (value) { - case beapi.types.PeerList.Feature.BertyFeature: + case beapi.protocol.PeerList.Feature.BertyFeature: name = 'berty' pack = 'custom' break - case beapi.types.PeerList.Feature.QuicFeature: + case beapi.protocol.PeerList.Feature.QuicFeature: name = 'network' pack = 'custom' fill = color.dark.grey @@ -103,7 +103,7 @@ type PeersTypes = { ble: number } -function getPeersTypes(peers: beapi.types.PeerList.IPeer[] | null) { +function getPeersTypes(peers: beapi.protocol.PeerList.IPeer[] | null) { let peersTypes = { berty: 0, quic: 0, @@ -113,10 +113,10 @@ function getPeersTypes(peers: beapi.types.PeerList.IPeer[] | null) { peers?.forEach((value) => { value?.features?.forEach((feature) => { switch (feature) { - case beapi.types.PeerList.Feature.BertyFeature: + case beapi.protocol.PeerList.Feature.BertyFeature: peersTypes.berty += 1 break - case beapi.types.PeerList.Feature.QuicFeature: + case beapi.protocol.PeerList.Feature.QuicFeature: peersTypes.quic += 1 break } @@ -127,9 +127,9 @@ function getPeersTypes(peers: beapi.types.PeerList.IPeer[] | null) { return peersTypes } -const NetworkMapBody: React.FC<{ peers: beapi.types.PeerList.IReply | null }> = ({ peers }) => { +const NetworkMapBody: React.FC<{ peers: beapi.protocol.PeerList.IReply | null }> = ({ peers }) => { const [{ margin, text, color }] = useStyles() - const [sortPeers, setSortPeers] = useState(null) + const [sortPeers, setSortPeers] = useState(null) const [typesPeers, setTypesPeers] = useState(null) const prevPeers = usePrevious(sortPeers) diff --git a/js/packages/store/gen-type-utils.js b/js/packages/store/gen-type-utils.js index e65039cbf5..7c31a83ea5 100644 --- a/js/packages/store/gen-type-utils.js +++ b/js/packages/store/gen-type-utils.js @@ -36,8 +36,8 @@ enumMapping( ) enumMapping( 'MonitorGroupPayloadType', - 'berty.types.v1.MonitorGroup.TypeEventMonitor', - 'beapi.types.MonitorGroup', + 'berty.protocol.v1.MonitorGroup.TypeEventMonitor', + 'beapi.protocol.MonitorGroup', 'EventMonitor', ) @@ -82,4 +82,4 @@ const methodsHooks = (name, svcType, prefix) => { } methodsHooks('MessengerMethodsHooks', 'berty.messenger.v1.MessengerService', 'beapi.messenger') -methodsHooks('ProtocolMethodsHooks', 'berty.protocol.v1.ProtocolService', 'beapi.types') +methodsHooks('ProtocolMethodsHooks', 'berty.protocol.v1.ProtocolService', 'beapi.protocol') diff --git a/js/packages/store/services.tsx b/js/packages/store/services.tsx index 31be9ea30e..8b42b7a842 100644 --- a/js/packages/store/services.tsx +++ b/js/packages/store/services.tsx @@ -138,7 +138,7 @@ export const replicateGroup = async ( } try { - await ctx.client.replicationServiceRegisterGroup({ + await ctx.client?.replicationServiceRegisterGroup({ tokenId: tokenID, conversationPublicKey: conversationPublicKey, }) diff --git a/js/packages/store/types.gen.ts b/js/packages/store/types.gen.ts index 8fe8948eef..fdc8aea3e5 100644 --- a/js/packages/store/types.gen.ts +++ b/js/packages/store/types.gen.ts @@ -1,38 +1,477 @@ import beapi from '@berty-tech/api' -export type StreamEventPayloadType = -T extends beapi.messenger.StreamEvent.Type.Undefined ? undefined : -T extends beapi.messenger.StreamEvent.Type.TypeListEnded ? beapi.messenger.StreamEvent.IListEnded : -T extends beapi.messenger.StreamEvent.Type.TypeConversationUpdated ? beapi.messenger.StreamEvent.IConversationUpdated : -T extends beapi.messenger.StreamEvent.Type.TypeConversationDeleted ? beapi.messenger.StreamEvent.IConversationDeleted : -T extends beapi.messenger.StreamEvent.Type.TypeInteractionUpdated ? beapi.messenger.StreamEvent.IInteractionUpdated : -T extends beapi.messenger.StreamEvent.Type.TypeInteractionDeleted ? beapi.messenger.StreamEvent.IInteractionDeleted : -T extends beapi.messenger.StreamEvent.Type.TypeContactUpdated ? beapi.messenger.StreamEvent.IContactUpdated : -T extends beapi.messenger.StreamEvent.Type.TypeAccountUpdated ? beapi.messenger.StreamEvent.IAccountUpdated : -T extends beapi.messenger.StreamEvent.Type.TypeMemberUpdated ? beapi.messenger.StreamEvent.IMemberUpdated : -T extends beapi.messenger.StreamEvent.Type.TypeDeviceUpdated ? beapi.messenger.StreamEvent.IDeviceUpdated : -T extends beapi.messenger.StreamEvent.Type.TypeNotified ? beapi.messenger.StreamEvent.INotified : -T extends beapi.messenger.StreamEvent.Type.TypeMediaUpdated ? beapi.messenger.StreamEvent.IMediaUpdated : -never +export type StreamEventPayloadType = T extends beapi.messenger.StreamEvent.Type.Undefined + ? undefined + : T extends beapi.messenger.StreamEvent.Type.TypeListEnded + ? beapi.messenger.StreamEvent.IListEnded + : T extends beapi.messenger.StreamEvent.Type.TypeConversationUpdated + ? beapi.messenger.StreamEvent.IConversationUpdated + : T extends beapi.messenger.StreamEvent.Type.TypeConversationDeleted + ? beapi.messenger.StreamEvent.IConversationDeleted + : T extends beapi.messenger.StreamEvent.Type.TypeInteractionUpdated + ? beapi.messenger.StreamEvent.IInteractionUpdated + : T extends beapi.messenger.StreamEvent.Type.TypeInteractionDeleted + ? beapi.messenger.StreamEvent.IInteractionDeleted + : T extends beapi.messenger.StreamEvent.Type.TypeContactUpdated + ? beapi.messenger.StreamEvent.IContactUpdated + : T extends beapi.messenger.StreamEvent.Type.TypeAccountUpdated + ? beapi.messenger.StreamEvent.IAccountUpdated + : T extends beapi.messenger.StreamEvent.Type.TypeMemberUpdated + ? beapi.messenger.StreamEvent.IMemberUpdated + : T extends beapi.messenger.StreamEvent.Type.TypeDeviceUpdated + ? beapi.messenger.StreamEvent.IDeviceUpdated + : T extends beapi.messenger.StreamEvent.Type.TypeNotified + ? beapi.messenger.StreamEvent.INotified + : T extends beapi.messenger.StreamEvent.Type.TypeMediaUpdated + ? beapi.messenger.StreamEvent.IMediaUpdated + : never -export type StreamEventNotifiedPayloadType = -T extends beapi.messenger.StreamEvent.Notified.Type.Unknown ? undefined : -T extends beapi.messenger.StreamEvent.Notified.Type.TypeBasic ? beapi.messenger.StreamEvent.Notified.IBasic : -T extends beapi.messenger.StreamEvent.Notified.Type.TypeMessageReceived ? beapi.messenger.StreamEvent.Notified.IMessageReceived : -T extends beapi.messenger.StreamEvent.Notified.Type.TypeContactRequestSent ? beapi.messenger.StreamEvent.Notified.IContactRequestSent : -T extends beapi.messenger.StreamEvent.Notified.Type.TypeContactRequestReceived ? beapi.messenger.StreamEvent.Notified.IContactRequestReceived : -never +export type StreamEventNotifiedPayloadType< + T +> = T extends beapi.messenger.StreamEvent.Notified.Type.Unknown + ? undefined + : T extends beapi.messenger.StreamEvent.Notified.Type.TypeBasic + ? beapi.messenger.StreamEvent.Notified.IBasic + : T extends beapi.messenger.StreamEvent.Notified.Type.TypeMessageReceived + ? beapi.messenger.StreamEvent.Notified.IMessageReceived + : T extends beapi.messenger.StreamEvent.Notified.Type.TypeContactRequestSent + ? beapi.messenger.StreamEvent.Notified.IContactRequestSent + : T extends beapi.messenger.StreamEvent.Notified.Type.TypeContactRequestReceived + ? beapi.messenger.StreamEvent.Notified.IContactRequestReceived + : never -export type AppMessagePayloadType = -T extends beapi.messenger.AppMessage.Type.Undefined ? undefined : -T extends beapi.messenger.AppMessage.Type.TypeUserMessage ? beapi.messenger.AppMessage.IUserMessage : -T extends beapi.messenger.AppMessage.Type.TypeUserReaction ? beapi.messenger.AppMessage.IUserReaction : -T extends beapi.messenger.AppMessage.Type.TypeGroupInvitation ? beapi.messenger.AppMessage.IGroupInvitation : -T extends beapi.messenger.AppMessage.Type.TypeSetGroupInfo ? beapi.messenger.AppMessage.ISetGroupInfo : -T extends beapi.messenger.AppMessage.Type.TypeSetUserInfo ? beapi.messenger.AppMessage.ISetUserInfo : -T extends beapi.messenger.AppMessage.Type.TypeAcknowledge ? beapi.messenger.AppMessage.IAcknowledge : -T extends beapi.messenger.AppMessage.Type.TypeReplyOptions ? beapi.messenger.AppMessage.IReplyOptions : -T extends beapi.messenger.AppMessage.Type.TypeMonitorMetadata ? beapi.messenger.AppMessage.IMonitorMetadata : -never +export type AppMessagePayloadType = T extends beapi.messenger.AppMessage.Type.Undefined + ? undefined + : T extends beapi.messenger.AppMessage.Type.TypeUserMessage + ? beapi.messenger.AppMessage.IUserMessage + : T extends beapi.messenger.AppMessage.Type.TypeUserReaction + ? beapi.messenger.AppMessage.IUserReaction + : T extends beapi.messenger.AppMessage.Type.TypeGroupInvitation + ? beapi.messenger.AppMessage.IGroupInvitation + : T extends beapi.messenger.AppMessage.Type.TypeSetGroupInfo + ? beapi.messenger.AppMessage.ISetGroupInfo + : T extends beapi.messenger.AppMessage.Type.TypeSetUserInfo + ? beapi.messenger.AppMessage.ISetUserInfo + : T extends beapi.messenger.AppMessage.Type.TypeAcknowledge + ? beapi.messenger.AppMessage.IAcknowledge + : T extends beapi.messenger.AppMessage.Type.TypeReplyOptions + ? beapi.messenger.AppMessage.IReplyOptions + : T extends beapi.messenger.AppMessage.Type.TypeMonitorMetadata + ? beapi.messenger.AppMessage.IMonitorMetadata + : never -export type MonitorGroupPayloadType = +export type MonitorGroupPayloadType< + T +> = T extends beapi.protocol.MonitorGroup.TypeEventMonitor.TypeEventMonitorUndefined + ? undefined + : T extends beapi.protocol.MonitorGroup.TypeEventMonitor.TypeEventMonitorAdvertiseGroup + ? beapi.protocol.MonitorGroup.IEventMonitorAdvertiseGroup + : T extends beapi.protocol.MonitorGroup.TypeEventMonitor.TypeEventMonitorPeerFound + ? beapi.protocol.MonitorGroup.IEventMonitorPeerFound + : T extends beapi.protocol.MonitorGroup.TypeEventMonitor.TypeEventMonitorPeerJoin + ? beapi.protocol.MonitorGroup.IEventMonitorPeerJoin + : T extends beapi.protocol.MonitorGroup.TypeEventMonitor.TypeEventMonitorPeerLeave + ? beapi.protocol.MonitorGroup.IEventMonitorPeerLeave + : never + +export type InteractionUndefined = { + type: beapi.messenger.AppMessage.Type.Undefined + payload: undefined +} & Omit +export type InteractionUserMessage = { + type: beapi.messenger.AppMessage.Type.TypeUserMessage + payload: beapi.messenger.AppMessage.IUserMessage +} & Omit +export type InteractionUserReaction = { + type: beapi.messenger.AppMessage.Type.TypeUserReaction + payload: beapi.messenger.AppMessage.IUserReaction +} & Omit +export type InteractionGroupInvitation = { + type: beapi.messenger.AppMessage.Type.TypeGroupInvitation + payload: beapi.messenger.AppMessage.IGroupInvitation +} & Omit +export type InteractionSetGroupInfo = { + type: beapi.messenger.AppMessage.Type.TypeSetGroupInfo + payload: beapi.messenger.AppMessage.ISetGroupInfo +} & Omit +export type InteractionSetUserInfo = { + type: beapi.messenger.AppMessage.Type.TypeSetUserInfo + payload: beapi.messenger.AppMessage.ISetUserInfo +} & Omit +export type InteractionAcknowledge = { + type: beapi.messenger.AppMessage.Type.TypeAcknowledge + payload: beapi.messenger.AppMessage.IAcknowledge +} & Omit +export type InteractionReplyOptions = { + type: beapi.messenger.AppMessage.Type.TypeReplyOptions + payload: beapi.messenger.AppMessage.IReplyOptions +} & Omit +export type InteractionMonitorMetadata = { + type: beapi.messenger.AppMessage.Type.TypeMonitorMetadata + payload: beapi.messenger.AppMessage.IMonitorMetadata +} & Omit + +export type ParsedInteraction = + | InteractionUndefined + | InteractionUserMessage + | InteractionUserReaction + | InteractionGroupInvitation + | InteractionSetGroupInfo + | InteractionSetUserInfo + | InteractionAcknowledge + | InteractionReplyOptions + | InteractionMonitorMetadata +export type MessengerMethodsHooks = { + useInstanceShareableBertyID: () => { + error: any + call: (req?: beapi.messenger.InstanceShareableBertyID.IRequest) => void + reply: beapi.messenger.InstanceShareableBertyID.IReply | null + done: boolean + called: boolean + } + useShareableBertyGroup: () => { + error: any + call: (req?: beapi.messenger.ShareableBertyGroup.IRequest) => void + reply: beapi.messenger.ShareableBertyGroup.IReply | null + done: boolean + called: boolean + } + useDevShareInstanceBertyID: () => { + error: any + call: (req?: beapi.messenger.DevShareInstanceBertyID.IRequest) => void + reply: beapi.messenger.DevShareInstanceBertyID.IReply | null + done: boolean + called: boolean + } + useParseDeepLink: () => { + error: any + call: (req?: beapi.messenger.ParseDeepLink.IRequest) => void + reply: beapi.messenger.ParseDeepLink.IReply | null + done: boolean + called: boolean + } + useSendContactRequest: () => { + error: any + call: (req?: beapi.messenger.SendContactRequest.IRequest) => void + reply: beapi.messenger.SendContactRequest.IReply | null + done: boolean + called: boolean + } + useSendMessage: () => { + error: any + call: (req?: beapi.messenger.SendMessage.IRequest) => void + reply: beapi.messenger.SendMessage.IReply | null + done: boolean + called: boolean + } + useSendReplyOptions: () => { + error: any + call: (req?: beapi.messenger.SendReplyOptions.IRequest) => void + reply: beapi.messenger.SendReplyOptions.IReply | null + done: boolean + called: boolean + } + useSendAck: () => { + error: any + call: (req?: beapi.messenger.SendAck.IRequest) => void + reply: beapi.messenger.SendAck.IReply | null + done: boolean + called: boolean + } + useSystemInfo: () => { + error: any + call: (req?: beapi.messenger.SystemInfo.IRequest) => void + reply: beapi.messenger.SystemInfo.IReply | null + done: boolean + called: boolean + } + useConversationCreate: () => { + error: any + call: (req?: beapi.messenger.ConversationCreate.IRequest) => void + reply: beapi.messenger.ConversationCreate.IReply | null + done: boolean + called: boolean + } + useConversationJoin: () => { + error: any + call: (req?: beapi.messenger.ConversationJoin.IRequest) => void + reply: beapi.messenger.ConversationJoin.IReply | null + done: boolean + called: boolean + } + useAccountGet: () => { + error: any + call: (req?: beapi.messenger.AccountGet.IRequest) => void + reply: beapi.messenger.AccountGet.IReply | null + done: boolean + called: boolean + } + useAccountUpdate: () => { + error: any + call: (req?: beapi.messenger.AccountUpdate.IRequest) => void + reply: beapi.messenger.AccountUpdate.IReply | null + done: boolean + called: boolean + } + useContactRequest: () => { + error: any + call: (req?: beapi.messenger.ContactRequest.IRequest) => void + reply: beapi.messenger.ContactRequest.IReply | null + done: boolean + called: boolean + } + useContactAccept: () => { + error: any + call: (req?: beapi.messenger.ContactAccept.IRequest) => void + reply: beapi.messenger.ContactAccept.IReply | null + done: boolean + called: boolean + } + useInteract: () => { + error: any + call: (req?: beapi.messenger.Interact.IRequest) => void + reply: beapi.messenger.Interact.IReply | null + done: boolean + called: boolean + } + useConversationOpen: () => { + error: any + call: (req?: beapi.messenger.ConversationOpen.IRequest) => void + reply: beapi.messenger.ConversationOpen.IReply | null + done: boolean + called: boolean + } + useConversationClose: () => { + error: any + call: (req?: beapi.messenger.ConversationClose.IRequest) => void + reply: beapi.messenger.ConversationClose.IReply | null + done: boolean + called: boolean + } + useReplicationServiceRegisterGroup: () => { + error: any + call: (req?: beapi.messenger.ReplicationServiceRegisterGroup.IRequest) => void + reply: beapi.messenger.ReplicationServiceRegisterGroup.IReply | null + done: boolean + called: boolean + } + useReplicationSetAutoEnable: () => { + error: any + call: (req?: beapi.messenger.ReplicationSetAutoEnable.IRequest) => void + reply: beapi.messenger.ReplicationSetAutoEnable.IReply | null + done: boolean + called: boolean + } + useBannerQuote: () => { + error: any + call: (req?: beapi.messenger.BannerQuote.IRequest) => void + reply: beapi.messenger.BannerQuote.IReply | null + done: boolean + called: boolean + } + useGetUsername: () => { + error: any + call: (req?: beapi.messenger.GetUsername.IRequest) => void + reply: beapi.messenger.GetUsername.IReply | null + done: boolean + called: boolean + } +} +export type ProtocolMethodsHooks = { + useInstanceGetConfiguration: () => { + error: any + call: (req?: beapi.protocol.InstanceGetConfiguration.IRequest) => void + reply: beapi.protocol.InstanceGetConfiguration.IReply | null + done: boolean + called: boolean + } + useContactRequestReference: () => { + error: any + call: (req?: beapi.protocol.ContactRequestReference.IRequest) => void + reply: beapi.protocol.ContactRequestReference.IReply | null + done: boolean + called: boolean + } + useContactRequestDisable: () => { + error: any + call: (req?: beapi.protocol.ContactRequestDisable.IRequest) => void + reply: beapi.protocol.ContactRequestDisable.IReply | null + done: boolean + called: boolean + } + useContactRequestEnable: () => { + error: any + call: (req?: beapi.protocol.ContactRequestEnable.IRequest) => void + reply: beapi.protocol.ContactRequestEnable.IReply | null + done: boolean + called: boolean + } + useContactRequestResetReference: () => { + error: any + call: (req?: beapi.protocol.ContactRequestResetReference.IRequest) => void + reply: beapi.protocol.ContactRequestResetReference.IReply | null + done: boolean + called: boolean + } + useContactRequestSend: () => { + error: any + call: (req?: beapi.protocol.ContactRequestSend.IRequest) => void + reply: beapi.protocol.ContactRequestSend.IReply | null + done: boolean + called: boolean + } + useContactRequestAccept: () => { + error: any + call: (req?: beapi.protocol.ContactRequestAccept.IRequest) => void + reply: beapi.protocol.ContactRequestAccept.IReply | null + done: boolean + called: boolean + } + useContactRequestDiscard: () => { + error: any + call: (req?: beapi.protocol.ContactRequestDiscard.IRequest) => void + reply: beapi.protocol.ContactRequestDiscard.IReply | null + done: boolean + called: boolean + } + useContactBlock: () => { + error: any + call: (req?: beapi.protocol.ContactBlock.IRequest) => void + reply: beapi.protocol.ContactBlock.IReply | null + done: boolean + called: boolean + } + useContactUnblock: () => { + error: any + call: (req?: beapi.protocol.ContactUnblock.IRequest) => void + reply: beapi.protocol.ContactUnblock.IReply | null + done: boolean + called: boolean + } + useContactAliasKeySend: () => { + error: any + call: (req?: beapi.protocol.ContactAliasKeySend.IRequest) => void + reply: beapi.protocol.ContactAliasKeySend.IReply | null + done: boolean + called: boolean + } + useMultiMemberGroupCreate: () => { + error: any + call: (req?: beapi.protocol.MultiMemberGroupCreate.IRequest) => void + reply: beapi.protocol.MultiMemberGroupCreate.IReply | null + done: boolean + called: boolean + } + useMultiMemberGroupJoin: () => { + error: any + call: (req?: beapi.protocol.MultiMemberGroupJoin.IRequest) => void + reply: beapi.protocol.MultiMemberGroupJoin.IReply | null + done: boolean + called: boolean + } + useMultiMemberGroupLeave: () => { + error: any + call: (req?: beapi.protocol.MultiMemberGroupLeave.IRequest) => void + reply: beapi.protocol.MultiMemberGroupLeave.IReply | null + done: boolean + called: boolean + } + useMultiMemberGroupAliasResolverDisclose: () => { + error: any + call: (req?: beapi.protocol.MultiMemberGroupAliasResolverDisclose.IRequest) => void + reply: beapi.protocol.MultiMemberGroupAliasResolverDisclose.IReply | null + done: boolean + called: boolean + } + useMultiMemberGroupAdminRoleGrant: () => { + error: any + call: (req?: beapi.protocol.MultiMemberGroupAdminRoleGrant.IRequest) => void + reply: beapi.protocol.MultiMemberGroupAdminRoleGrant.IReply | null + done: boolean + called: boolean + } + useMultiMemberGroupInvitationCreate: () => { + error: any + call: (req?: beapi.protocol.MultiMemberGroupInvitationCreate.IRequest) => void + reply: beapi.protocol.MultiMemberGroupInvitationCreate.IReply | null + done: boolean + called: boolean + } + useAppMetadataSend: () => { + error: any + call: (req?: beapi.protocol.AppMetadataSend.IRequest) => void + reply: beapi.protocol.AppMetadataSend.IReply | null + done: boolean + called: boolean + } + useAppMessageSend: () => { + error: any + call: (req?: beapi.protocol.AppMessageSend.IRequest) => void + reply: beapi.protocol.AppMessageSend.IReply | null + done: boolean + called: boolean + } + useGroupInfo: () => { + error: any + call: (req?: beapi.protocol.GroupInfo.IRequest) => void + reply: beapi.protocol.GroupInfo.IReply | null + done: boolean + called: boolean + } + useActivateGroup: () => { + error: any + call: (req?: beapi.protocol.ActivateGroup.IRequest) => void + reply: beapi.protocol.ActivateGroup.IReply | null + done: boolean + called: boolean + } + useDeactivateGroup: () => { + error: any + call: (req?: beapi.protocol.DeactivateGroup.IRequest) => void + reply: beapi.protocol.DeactivateGroup.IReply | null + done: boolean + called: boolean + } + useDebugGroup: () => { + error: any + call: (req?: beapi.protocol.DebugGroup.IRequest) => void + reply: beapi.protocol.DebugGroup.IReply | null + done: boolean + called: boolean + } + useSystemInfo: () => { + error: any + call: (req?: beapi.protocol.SystemInfo.IRequest) => void + reply: beapi.protocol.SystemInfo.IReply | null + done: boolean + called: boolean + } + useAuthServiceInitFlow: () => { + error: any + call: (req?: beapi.protocol.AuthServiceInitFlow.IRequest) => void + reply: beapi.protocol.AuthServiceInitFlow.IReply | null + done: boolean + called: boolean + } + useAuthServiceCompleteFlow: () => { + error: any + call: (req?: beapi.protocol.AuthServiceCompleteFlow.IRequest) => void + reply: beapi.protocol.AuthServiceCompleteFlow.IReply | null + done: boolean + called: boolean + } + useReplicationServiceRegisterGroup: () => { + error: any + call: (req?: beapi.protocol.ReplicationServiceRegisterGroup.IRequest) => void + reply: beapi.protocol.ReplicationServiceRegisterGroup.IReply | null + done: boolean + called: boolean + } + usePeerList: () => { + error: any + call: (req?: beapi.protocol.PeerList.IRequest) => void + reply: beapi.protocol.PeerList.IReply | null + done: boolean + called: boolean + } +} diff --git a/js/packages/web-dev-app/src/App.tsx b/js/packages/web-dev-app/src/App.tsx index 308d119044..3c6a8857fc 100644 --- a/js/packages/web-dev-app/src/App.tsx +++ b/js/packages/web-dev-app/src/App.tsx @@ -18,7 +18,7 @@ const CreateAccount: React.FC = () => { const ctx = React.useContext(MsgrContext) const handleCreate = React.useCallback(() => { setError(null) - ctx.client.accountUpdate({ displayName: name }).catch((err: any) => setError(err)) + ctx.client?.accountUpdate({ displayName: name }).catch((err: any) => setError(err)) }, [ctx.client, name]) return ( <> @@ -56,7 +56,7 @@ const AddContact: React.FC = () => { const ctx = React.useContext(MsgrContext) const handleAdd = React.useCallback(() => { setError(null) - ctx.client.contactRequest({ link }).catch((err: any) => setError(err)) + ctx.client?.contactRequest({ link }).catch((err: any) => setError(err)) }, [ctx.client, link]) return ( <> @@ -134,7 +134,7 @@ const AcceptButton: React.FC<{ publicKey: string }> = ({ publicKey }) => { const [error, setError] = React.useState(null) const handleAccept = React.useCallback(() => { setError(null) - ctx.client.contactAccept({ publicKey }).catch((err: any) => setError(err)) + ctx.client?.contactAccept({ publicKey }).catch((err: any) => setError(err)) }, [ctx.client, publicKey]) return ( <> @@ -173,7 +173,7 @@ const Interaction: React.FC<{ value: any }> = ({ value }) => { const handleJoin = React.useCallback( ({ link }) => { setError(null) - ctx.client.conversationJoin({ link }).catch((err: any) => setError(err)) + ctx.client?.conversationJoin({ link }).catch((err: any) => setError(err)) }, [ctx.client], ) @@ -218,11 +218,11 @@ const Conversation: React.FC<{ publicKey: string }> = ({ publicKey }) => { const [message, setMessage] = useState('') const [error, setError] = useState(null) useMountEffect(() => { - ctx.client.conversationOpen({ groupPk: conv.publicKey }).catch((err) => { + ctx.client?.conversationOpen({ groupPk: conv.publicKey }).catch((err) => { console.warn('failed to open conversation,', err) }) return () => { - ctx.client.conversationClose({ groupPk: conv.publicKey }).catch((err) => { + ctx.client?.conversationClose({ groupPk: conv.publicKey }).catch((err) => { console.warn('failed to close conversation,', err) }) } @@ -342,11 +342,7 @@ const CreateMultiMember = () => { const [groupName, setGroupName] = useState('My group') const [error, setError] = useState(null) const [members, setMembers] = useState([]) - const { - call, - error: errorReply, - done, - } = (messengerMethodsHooks as any).useConversationCreate() + const { call, error: errorReply, done } = (messengerMethodsHooks as any).useConversationCreate() const createGroup = React.useCallback( () => call({ displayName: groupName, contactsToInvite: members.map((m) => m.publicKey) }), [groupName, members, call], @@ -408,7 +404,7 @@ const SendToAll: React.FC = () => { let names = [] for (const conv of convs) { try { - await ctx.client.interact({ + await ctx.client?.interact({ conversationPublicKey: conv.publicKey, type: beapi.messenger.AppMessage.Type.TypeUserMessage, payload: buf, @@ -445,7 +441,7 @@ const JoinMultiMember = () => { const ctx = React.useContext(MsgrContext) const handleJoin = React.useCallback(() => { setError(null) - ctx.client.conversationJoin({ link }).catch((err: any) => setError(err)) + ctx.client?.conversationJoin({ link }).catch((err: any) => setError(err)) }, [ctx.client, link]) return ( <>