@graphprotocol/hypergraph 0.0.1 → 0.0.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/connect/abis/MainVotingPlugin.json +1865 -0
- package/dist/connect/abis/PersonalSpaceAdminPlugin.json +531 -0
- package/dist/connect/abis.d.ts +115 -0
- package/dist/connect/abis.d.ts.map +1 -0
- package/dist/connect/abis.js +141 -0
- package/dist/connect/abis.js.map +1 -0
- package/dist/connect/auth-storage.d.ts +15 -0
- package/dist/connect/auth-storage.js +53 -0
- package/dist/connect/auth-storage.js.map +1 -0
- package/dist/connect/create-app-identity.d.ts +7 -0
- package/dist/connect/create-app-identity.js +15 -0
- package/dist/connect/create-app-identity.js.map +1 -0
- package/dist/connect/create-auth-url.d.ts +15 -0
- package/dist/connect/create-callback-params.d.ts +28 -0
- package/dist/connect/create-callback-params.d.ts.map +1 -1
- package/dist/connect/create-callback-params.js.map +1 -1
- package/dist/connect/create-identity-keys.d.ts +3 -0
- package/dist/connect/create-identity-keys.js +20 -0
- package/dist/connect/create-identity-keys.js.map +1 -0
- package/dist/connect/identity-encryption.d.ts +12 -0
- package/dist/connect/identity-encryption.d.ts.map +1 -1
- package/dist/connect/identity-encryption.js +187 -0
- package/dist/connect/identity-encryption.js.map +1 -0
- package/dist/connect/index.d.ts +11 -0
- package/dist/connect/index.d.ts.map +1 -1
- package/dist/connect/index.js +11 -0
- package/dist/connect/index.js.map +1 -0
- package/dist/connect/login.d.ts +22 -0
- package/dist/connect/login.d.ts.map +1 -1
- package/dist/connect/login.js +172 -0
- package/dist/connect/login.js.map +1 -0
- package/dist/connect/parse-auth-params.d.ts +14 -0
- package/dist/connect/parse-auth-params.d.ts.map +1 -0
- package/dist/connect/parse-auth-params.js +40 -0
- package/dist/connect/parse-auth-params.js.map +1 -0
- package/dist/connect/parse-callback-params.d.ts +13 -0
- package/dist/connect/parse-callback-params.d.ts.map +1 -1
- package/dist/connect/parse-callback-params.js +4 -1
- package/dist/connect/parse-callback-params.js.map +1 -1
- package/dist/connect/smart-account.d.ts +96 -0
- package/dist/connect/smart-account.d.ts.map +1 -0
- package/dist/connect/smart-account.js +761 -0
- package/dist/connect/smart-account.js.map +1 -0
- package/dist/connect/types.d.ts +2 -0
- package/dist/connect/types.d.ts.map +1 -1
- package/dist/connect/types.js.map +1 -1
- package/dist/entity/create.d.ts +8 -0
- package/dist/entity/create.js +51 -0
- package/dist/entity/create.js.map +1 -0
- package/dist/entity/decodedEntitiesCache.d.ts +23 -0
- package/dist/entity/decodedEntitiesCache.d.ts.map +1 -1
- package/dist/entity/decodedEntitiesCache.js +2 -0
- package/dist/entity/decodedEntitiesCache.js.map +1 -0
- package/dist/entity/delete.d.ts +12 -0
- package/dist/entity/delete.js +44 -0
- package/dist/entity/delete.js.map +1 -0
- package/dist/entity/entity.d.ts +18 -0
- package/dist/entity/entity.js +19 -0
- package/dist/entity/entity.js.map +1 -0
- package/dist/entity/entityRelationParentsMap.d.ts +4 -0
- package/dist/entity/entityRelationParentsMap.js +2 -0
- package/dist/entity/entityRelationParentsMap.js.map +1 -0
- package/dist/entity/findMany.d.ts +22 -0
- package/dist/entity/findMany.d.ts.map +1 -1
- package/dist/entity/findMany.js +8 -8
- package/dist/entity/findMany.js.map +1 -1
- package/dist/entity/findOne.d.ts +8 -0
- package/dist/entity/findOne.js +31 -0
- package/dist/entity/findOne.js.map +1 -0
- package/dist/entity/getEntityRelations.d.ts +4 -0
- package/dist/entity/getEntityRelations.d.ts.map +1 -1
- package/dist/entity/getEntityRelations.js +35 -0
- package/dist/entity/getEntityRelations.js.map +1 -0
- package/dist/entity/hasValidTypesProperty.d.ts +2 -0
- package/dist/entity/hasValidTypesProperty.d.ts.map +1 -0
- package/dist/entity/hasValidTypesProperty.js +4 -0
- package/dist/entity/hasValidTypesProperty.js.map +1 -0
- package/dist/entity/index.d.ts +9 -0
- package/dist/entity/index.js +9 -0
- package/dist/entity/index.js.map +1 -0
- package/dist/entity/relationParentsMap.d.ts +4 -0
- package/dist/entity/relationParentsMap.js +2 -0
- package/dist/entity/relationParentsMap.js.map +1 -0
- package/dist/entity/removeRelation.d.ts +7 -0
- package/dist/entity/removeRelation.js +17 -0
- package/dist/entity/removeRelation.js.map +1 -0
- package/dist/entity/test.d.ts +2 -0
- package/dist/entity/test.d.ts.map +1 -0
- package/dist/entity/test.js +2 -0
- package/dist/entity/test.js.map +1 -0
- package/dist/entity/types.d.ts +8 -8
- package/dist/entity/update.d.ts +8 -0
- package/dist/entity/update.js +58 -0
- package/dist/entity/update.js.map +1 -0
- package/dist/entity/variant-schema.d.ts +247 -0
- package/dist/entity/variant-schema.d.ts.map +1 -0
- package/dist/entity/variant-schema.js +204 -0
- package/dist/entity/variant-schema.js.map +1 -0
- package/dist/identity/auth-storage.d.ts +6 -0
- package/dist/identity/auth-storage.d.ts.map +1 -1
- package/dist/identity/auth-storage.js +52 -0
- package/dist/identity/auth-storage.js.map +1 -0
- package/dist/identity/get-verified-identity.d.ts +7 -0
- package/dist/identity/get-verified-identity.d.ts.map +1 -1
- package/dist/identity/get-verified-identity.js +37 -0
- package/dist/identity/get-verified-identity.js.map +1 -0
- package/dist/identity/identity-encryption.d.ts +7 -0
- package/dist/identity/identity-encryption.js +120 -0
- package/dist/identity/identity-encryption.js.map +1 -0
- package/dist/identity/index.d.ts +7 -0
- package/dist/identity/index.d.ts.map +1 -1
- package/dist/identity/index.js +7 -0
- package/dist/identity/index.js.map +1 -0
- package/dist/identity/logout.d.ts +3 -0
- package/dist/identity/logout.js +9 -0
- package/dist/identity/logout.js.map +1 -0
- package/dist/identity/prove-ownership.d.ts +15 -0
- package/dist/identity/prove-ownership.d.ts.map +1 -1
- package/dist/identity/prove-ownership.js +90 -0
- package/dist/identity/prove-ownership.js.map +1 -0
- package/dist/identity/types.d.ts +37 -0
- package/dist/identity/types.d.ts.map +1 -0
- package/dist/identity/types.js +11 -0
- package/dist/identity/types.js.map +1 -0
- package/dist/inboxes/create-inbox.d.ts +22 -0
- package/dist/inboxes/create-inbox.js +76 -0
- package/dist/inboxes/create-inbox.js.map +1 -0
- package/dist/inboxes/get-list-inboxes.d.ts +20 -0
- package/dist/inboxes/get-list-inboxes.js +45 -0
- package/dist/inboxes/get-list-inboxes.js.map +1 -0
- package/dist/inboxes/index.d.ts +11 -0
- package/dist/inboxes/index.js +11 -0
- package/dist/inboxes/index.js.map +1 -0
- package/dist/inboxes/merge-messages.d.ts +6 -0
- package/dist/inboxes/merge-messages.js +23 -0
- package/dist/inboxes/merge-messages.js.map +1 -0
- package/dist/inboxes/message-encryption.d.ts +15 -0
- package/dist/inboxes/message-encryption.js +29 -0
- package/dist/inboxes/message-encryption.js.map +1 -0
- package/dist/inboxes/message-validation.d.ts +6 -0
- package/dist/inboxes/message-validation.d.ts.map +1 -1
- package/dist/inboxes/message-validation.js +53 -0
- package/dist/inboxes/message-validation.js.map +1 -0
- package/dist/inboxes/prepare-message.d.ts +2 -2
- package/dist/inboxes/prepare-message.js +78 -0
- package/dist/inboxes/prepare-message.js.map +1 -0
- package/dist/inboxes/recover-inbox-creator.d.ts +5 -0
- package/dist/inboxes/recover-inbox-creator.js +24 -0
- package/dist/inboxes/recover-inbox-creator.js.map +1 -0
- package/dist/inboxes/recover-inbox-message-signer.d.ts +4 -0
- package/dist/inboxes/recover-inbox-message-signer.js +32 -0
- package/dist/inboxes/recover-inbox-message-signer.js.map +1 -0
- package/dist/inboxes/send-message.d.ts +19 -0
- package/dist/inboxes/send-message.js +58 -0
- package/dist/inboxes/send-message.js.map +1 -0
- package/dist/inboxes/types.d.ts +4 -0
- package/dist/inboxes/types.d.ts.map +1 -0
- package/dist/inboxes/types.js +3 -0
- package/dist/inboxes/types.js.map +1 -0
- package/dist/index.d.ts +14 -0
- package/dist/index.js +14 -0
- package/dist/index.js.map +1 -0
- package/dist/key/create-key.d.ts +11 -0
- package/dist/key/create-key.d.ts.map +1 -0
- package/dist/key/create-key.js +22 -0
- package/dist/key/create-key.js.map +1 -0
- package/dist/key/decrypt-key.d.ts +9 -0
- package/dist/key/decrypt-key.d.ts.map +1 -0
- package/dist/key/decrypt-key.js +16 -0
- package/dist/key/decrypt-key.js.map +1 -0
- package/dist/key/encrypt-key.d.ts +11 -0
- package/dist/key/encrypt-key.d.ts.map +1 -0
- package/dist/key/encrypt-key.js +20 -0
- package/dist/key/encrypt-key.js.map +1 -0
- package/dist/key/index.d.ts +5 -0
- package/dist/key/index.d.ts.map +1 -0
- package/dist/key/index.js +5 -0
- package/dist/key/index.js.map +1 -0
- package/dist/key/key-box.d.ts +19 -0
- package/dist/key/key-box.d.ts.map +1 -0
- package/dist/key/key-box.js +38 -0
- package/dist/key/key-box.js.map +1 -0
- package/dist/messages/decrypt-message.d.ts +7 -0
- package/dist/messages/decrypt-message.d.ts.map +1 -0
- package/dist/messages/decrypt-message.js +11 -0
- package/dist/messages/decrypt-message.js.map +1 -0
- package/dist/messages/encrypt-message.d.ts +7 -0
- package/dist/messages/encrypt-message.d.ts.map +1 -0
- package/dist/messages/encrypt-message.js +12 -0
- package/dist/messages/encrypt-message.js.map +1 -0
- package/dist/messages/index.d.ts +6 -0
- package/dist/messages/index.js +6 -0
- package/dist/messages/index.js.map +1 -0
- package/dist/messages/serialize.d.ts +3 -0
- package/dist/messages/serialize.d.ts.map +1 -0
- package/dist/messages/serialize.js +30 -0
- package/dist/messages/serialize.js.map +1 -0
- package/dist/messages/signed-update-message.d.ts +23 -0
- package/dist/messages/signed-update-message.js +56 -0
- package/dist/messages/signed-update-message.js.map +1 -0
- package/dist/messages/types.d.ts +1268 -0
- package/dist/messages/types.d.ts.map +1 -1
- package/dist/messages/types.js +312 -0
- package/dist/messages/types.js.map +1 -0
- package/dist/space-events/accept-invitation.d.ts +9 -0
- package/dist/space-events/accept-invitation.js +28 -0
- package/dist/space-events/accept-invitation.js.map +1 -0
- package/dist/space-events/apply-event.d.ts +11 -0
- package/dist/space-events/apply-event.js +130 -0
- package/dist/space-events/apply-event.js.map +1 -0
- package/dist/space-events/create-inbox.d.ts +14 -0
- package/dist/space-events/create-inbox.js +41 -0
- package/dist/space-events/create-inbox.js.map +1 -0
- package/dist/space-events/create-invitation.d.ts +12 -0
- package/dist/space-events/create-invitation.js +30 -0
- package/dist/space-events/create-invitation.js.map +1 -0
- package/dist/space-events/create-space.d.ts +9 -0
- package/dist/space-events/create-space.js +29 -0
- package/dist/space-events/create-space.js.map +1 -0
- package/dist/space-events/delete-space.d.ts +10 -0
- package/dist/space-events/delete-space.js +30 -0
- package/dist/space-events/delete-space.js.map +1 -0
- package/dist/space-events/hash-event.d.ts +3 -0
- package/dist/space-events/hash-event.js +7 -0
- package/dist/space-events/hash-event.js.map +1 -0
- package/dist/space-events/index.d.ts +9 -0
- package/dist/space-events/index.js +9 -0
- package/dist/space-events/index.js.map +1 -0
- package/dist/space-events/types.d.ts +222 -0
- package/dist/space-events/types.d.ts.map +1 -0
- package/dist/space-events/types.js +102 -0
- package/dist/space-events/types.js.map +1 -0
- package/dist/space-info/decrypt-space-info.d.ts +7 -0
- package/dist/space-info/decrypt-space-info.js +18 -0
- package/dist/space-info/decrypt-space-info.js.map +1 -0
- package/dist/space-info/encrypt-and-sign-space-info.d.ts +17 -0
- package/dist/space-info/encrypt-and-sign-space-info.js +39 -0
- package/dist/space-info/encrypt-and-sign-space-info.js.map +1 -0
- package/dist/space-info/index.d.ts +4 -0
- package/dist/space-info/index.js +4 -0
- package/dist/space-info/index.js.map +1 -0
- package/dist/space-info/types.d.ts +6 -0
- package/dist/space-info/types.d.ts.map +1 -0
- package/dist/space-info/types.js +5 -0
- package/dist/space-info/types.js.map +1 -0
- package/dist/store-connect.d.ts +149 -0
- package/dist/store-connect.d.ts.map +1 -1
- package/dist/store-connect.js +289 -0
- package/dist/store-connect.js.map +1 -0
- package/dist/store.d.ts +158 -0
- package/dist/store.d.ts.map +1 -1
- package/dist/store.js +354 -0
- package/dist/store.js.map +1 -0
- package/dist/type/type.d.ts +14 -0
- package/dist/type/type.d.ts.map +1 -1
- package/dist/type/type.js +25 -0
- package/dist/type/type.js.map +1 -0
- package/dist/types.d.ts +80 -0
- package/dist/types.d.ts.map +1 -0
- package/dist/types.js +37 -0
- package/dist/types.js.map +1 -0
- package/dist/utils/assertExhaustive.d.ts +2 -0
- package/dist/utils/assertExhaustive.d.ts.map +1 -0
- package/dist/utils/assertExhaustive.js +4 -0
- package/dist/utils/assertExhaustive.js.map +1 -0
- package/dist/utils/automergeId.d.ts +1 -1
- package/dist/utils/automergeId.d.ts.map +1 -1
- package/dist/utils/automergeId.js +1 -1
- package/dist/utils/automergeId.js.map +1 -1
- package/dist/utils/base58.d.ts +36 -0
- package/dist/utils/base58.d.ts.map +1 -0
- package/dist/utils/base58.js +62 -0
- package/dist/utils/base58.js.map +1 -0
- package/dist/utils/hexBytesAddressUtils.d.ts +4 -0
- package/dist/utils/hexBytesAddressUtils.d.ts.map +1 -0
- package/dist/utils/hexBytesAddressUtils.js +21 -0
- package/dist/utils/hexBytesAddressUtils.js.map +1 -0
- package/dist/utils/index.d.ts +9 -0
- package/dist/utils/index.js +9 -0
- package/dist/utils/index.js.map +1 -0
- package/dist/utils/internal/base58Utils.d.ts +4 -0
- package/dist/utils/internal/base58Utils.d.ts.map +1 -0
- package/dist/utils/internal/base58Utils.js +40 -0
- package/dist/utils/internal/base58Utils.js.map +1 -0
- package/dist/utils/internal/deep-merge.d.ts +7 -0
- package/dist/utils/internal/deep-merge.d.ts.map +1 -0
- package/dist/utils/internal/deep-merge.js +33 -0
- package/dist/utils/internal/deep-merge.js.map +1 -0
- package/dist/utils/isRelationField.d.ts +3 -0
- package/dist/utils/isRelationField.d.ts.map +1 -0
- package/dist/utils/isRelationField.js +8 -0
- package/dist/utils/isRelationField.js.map +1 -0
- package/dist/utils/jsc.d.ts +49 -0
- package/dist/utils/jsc.d.ts.map +1 -0
- package/dist/utils/jsc.js +88 -0
- package/dist/utils/jsc.js.map +1 -0
- package/dist/utils/stringToUint8Array.d.ts +3 -0
- package/dist/utils/stringToUint8Array.d.ts.map +1 -0
- package/dist/utils/stringToUint8Array.js +9 -0
- package/dist/utils/stringToUint8Array.js.map +1 -0
- package/package.json +5 -2
- package/src/connect/abis/MainVotingPlugin.json +1865 -0
- package/src/connect/abis/PersonalSpaceAdminPlugin.json +531 -0
- package/src/connect/abis.ts +183 -0
- package/src/connect/create-callback-params.ts +4 -1
- package/src/connect/identity-encryption.ts +10 -14
- package/src/connect/index.ts +1 -1
- package/src/connect/login.ts +106 -18
- package/src/connect/parse-callback-params.ts +4 -1
- package/src/connect/smart-account.ts +915 -0
- package/src/connect/types.ts +2 -0
- package/src/entity/decodedEntitiesCache.ts +1 -1
- package/src/entity/findMany.ts +16 -14
- package/src/entity/getEntityRelations.ts +1 -1
- package/src/entity/types.ts +8 -8
- package/src/identity/auth-storage.ts +11 -1
- package/src/identity/get-verified-identity.ts +6 -1
- package/src/identity/index.ts +1 -1
- package/src/identity/prove-ownership.ts +52 -8
- package/src/inboxes/message-validation.ts +17 -2
- package/src/messages/types.ts +6 -0
- package/src/store-connect.ts +1 -52
- package/src/store.ts +78 -48
- package/src/type/type.ts +4 -2
- package/src/types.ts +19 -1
- package/src/utils/automergeId.ts +1 -1
- package/dist/connect/prove-ownership.d.ts.map +0 -1
- package/src/connect/prove-ownership.ts +0 -58
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"create-inbox.js","names":["secp256k1","randomBytes","cryptoBoxKeyPair","Effect","Messages","SpaceEvents","bytesToHex","canonicalize","hexToBytes","stringToUint8Array","createAccountInboxCreationMessage","accountAddress","isPublic","authPolicy","encryptionPublicKey","signaturePrivateKey","inboxId","messageToSign","signature","sign","prehash","type","hex","toCompactHex","recovery","createSpaceInboxCreationMessage","author","spaceId","spaceSecretKey","previousEventHash","publicKey","privateKey","encryptedInboxSecretKey","encryptMessage","message","secretKey","spaceEvent","runPromise","createInbox","event"],"sources":["../../src/inboxes/create-inbox.ts"],"sourcesContent":[null],"mappings":"AAAA,SAASA,SAAS,QAAQ,yBAAyB;AACnD,SAASC,WAAW,QAAQ,qBAAqB;AACjD,SAASC,gBAAgB,QAAQ,4BAA4B;AAC7D,SAASC,MAAM,QAAQ,QAAQ;AAC/B,OAAO,KAAKC,QAAQ,MAAM,sBAAsB;AAChD,OAAO,KAAKC,WAAW,MAAM,0BAA0B;AACvD,SAASC,UAAU,EAAEC,YAAY,EAAEC,UAAU,EAAEC,kBAAkB,QAAQ,mBAAmB;AAsB5F;AACA,OAAM,SAAUC,iCAAiCA,CAAC;EAChDC,cAAc;EACdC,QAAQ;EACRC,UAAU;EACVC,mBAAmB;EACnBC;AAAmB,CACM;EACzB;EACA,MAAMC,OAAO,GAAGV,UAAU,CAACL,WAAW,CAAC,EAAE,CAAC,CAAC;EAE3C;EACA;EACA,MAAMgB,aAAa,GAAGR,kBAAkB,CACtCF,YAAY,CAAC;IACXI,cAAc;IACdK,OAAO;IACPF;GACD,CAAC,CACH;EAED,MAAMI,SAAS,GAAGlB,SAAS,CAACmB,IAAI,CAACF,aAAa,EAAET,UAAU,CAACO,mBAAmB,CAAC,EAAE;IAAEK,OAAO,EAAE;EAAI,CAAE,CAAC;EAEnG,OAAO;IACLC,IAAI,EAAE,sBAAsB;IAC5BL,OAAO,EAAEA,OAAO;IAChBL,cAAc;IACdC,QAAQ;IACRC,UAAU;IACVC,mBAAmB;IACnBI,SAAS,EAAE;MACTI,GAAG,EAAEJ,SAAS,CAACK,YAAY,EAAE;MAC7BC,QAAQ,EAAEN,SAAS,CAACM;;GAEsB;AAChD;AAEA,OAAO,eAAeC,+BAA+BA,CAAC;EACpDC,MAAM;EACNC,OAAO;EACPf,QAAQ;EACRC,UAAU;EACVe,cAAc;EACdC;AAAiB,CACM;EACvB;EACA,MAAMb,OAAO,GAAGV,UAAU,CAACL,WAAW,CAAC,EAAE,CAAC,CAAC;EAC3C,MAAM;IAAE6B,SAAS;IAAEC;EAAU,CAAE,GAAG7B,gBAAgB,EAAE;EAEpD;EACA,MAAM8B,uBAAuB,GAAG5B,QAAQ,CAAC6B,cAAc,CAAC;IACtDC,OAAO,EAAEH,UAAU;IACnBI,SAAS,EAAE3B,UAAU,CAACoB,cAAc;GACrC,CAAC;EAEF,MAAMQ,UAAU,GAAG,MAAMjC,MAAM,CAACkC,UAAU,CACxChC,WAAW,CAACiC,WAAW,CAAC;IACtBX,OAAO;IACPX,OAAO;IACPF,mBAAmB,EAAER,UAAU,CAACwB,SAAS,CAAC;IAC1CK,SAAS,EAAE7B,UAAU,CAAC0B,uBAAuB,CAAC;IAC9CpB,QAAQ;IACRC,UAAU;IACVa,MAAM;IACNG;GACD,CAAC,CACH;EAED,OAAO;IACLR,IAAI,EAAE,0BAA0B;IAChCM,OAAO;IACPY,KAAK,EAAEH;GACwC;AACnD","ignoreList":[]}
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
import * as Messages from '../messages/index.js';
|
|
2
|
+
export declare const listPublicSpaceInboxes: ({ spaceId, syncServerUri, }: Readonly<{
|
|
3
|
+
spaceId: string;
|
|
4
|
+
syncServerUri: string;
|
|
5
|
+
}>) => Promise<readonly Messages.SpaceInboxPublic[]>;
|
|
6
|
+
export declare const listPublicAccountInboxes: ({ accountAddress, syncServerUri, }: Readonly<{
|
|
7
|
+
accountAddress: string;
|
|
8
|
+
syncServerUri: string;
|
|
9
|
+
}>) => Promise<readonly Messages.AccountInboxPublic[]>;
|
|
10
|
+
export declare const getSpaceInbox: ({ spaceId, inboxId, syncServerUri, }: Readonly<{
|
|
11
|
+
spaceId: string;
|
|
12
|
+
inboxId: string;
|
|
13
|
+
syncServerUri: string;
|
|
14
|
+
}>) => Promise<Messages.SpaceInboxPublic>;
|
|
15
|
+
export declare const getAccountInbox: ({ accountAddress, inboxId, syncServerUri, }: Readonly<{
|
|
16
|
+
accountAddress: string;
|
|
17
|
+
inboxId: string;
|
|
18
|
+
syncServerUri: string;
|
|
19
|
+
}>) => Promise<Messages.AccountInboxPublic>;
|
|
20
|
+
//# sourceMappingURL=get-list-inboxes.d.ts.map
|
|
@@ -0,0 +1,45 @@
|
|
|
1
|
+
import { Schema } from 'effect';
|
|
2
|
+
import * as Messages from '../messages/index.js';
|
|
3
|
+
export const listPublicSpaceInboxes = async ({
|
|
4
|
+
spaceId,
|
|
5
|
+
syncServerUri
|
|
6
|
+
}) => {
|
|
7
|
+
const res = await fetch(new URL(`/spaces/${spaceId}/inboxes`, syncServerUri), {
|
|
8
|
+
method: 'GET'
|
|
9
|
+
});
|
|
10
|
+
const decoded = Schema.decodeUnknownSync(Messages.ResponseListSpaceInboxesPublic)(await res.json());
|
|
11
|
+
return decoded.inboxes;
|
|
12
|
+
};
|
|
13
|
+
export const listPublicAccountInboxes = async ({
|
|
14
|
+
accountAddress,
|
|
15
|
+
syncServerUri
|
|
16
|
+
}) => {
|
|
17
|
+
const res = await fetch(new URL(`/accounts/${accountAddress}/inboxes`, syncServerUri), {
|
|
18
|
+
method: 'GET'
|
|
19
|
+
});
|
|
20
|
+
const decoded = Schema.decodeUnknownSync(Messages.ResponseListAccountInboxesPublic)(await res.json());
|
|
21
|
+
return decoded.inboxes;
|
|
22
|
+
};
|
|
23
|
+
export const getSpaceInbox = async ({
|
|
24
|
+
spaceId,
|
|
25
|
+
inboxId,
|
|
26
|
+
syncServerUri
|
|
27
|
+
}) => {
|
|
28
|
+
const res = await fetch(new URL(`/spaces/${spaceId}/inboxes/${inboxId}`, syncServerUri), {
|
|
29
|
+
method: 'GET'
|
|
30
|
+
});
|
|
31
|
+
const decoded = Schema.decodeUnknownSync(Messages.ResponseSpaceInboxPublic)(await res.json());
|
|
32
|
+
return decoded.inbox;
|
|
33
|
+
};
|
|
34
|
+
export const getAccountInbox = async ({
|
|
35
|
+
accountAddress,
|
|
36
|
+
inboxId,
|
|
37
|
+
syncServerUri
|
|
38
|
+
}) => {
|
|
39
|
+
const res = await fetch(new URL(`/accounts/${accountAddress}/inboxes/${inboxId}`, syncServerUri), {
|
|
40
|
+
method: 'GET'
|
|
41
|
+
});
|
|
42
|
+
const decoded = Schema.decodeUnknownSync(Messages.ResponseAccountInboxPublic)(await res.json());
|
|
43
|
+
return decoded.inbox;
|
|
44
|
+
};
|
|
45
|
+
//# sourceMappingURL=get-list-inboxes.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"get-list-inboxes.js","names":["Schema","Messages","listPublicSpaceInboxes","spaceId","syncServerUri","res","fetch","URL","method","decoded","decodeUnknownSync","ResponseListSpaceInboxesPublic","json","inboxes","listPublicAccountInboxes","accountAddress","ResponseListAccountInboxesPublic","getSpaceInbox","inboxId","ResponseSpaceInboxPublic","inbox","getAccountInbox","ResponseAccountInboxPublic"],"sources":["../../src/inboxes/get-list-inboxes.ts"],"sourcesContent":[null],"mappings":"AAAA,SAASA,MAAM,QAAQ,QAAQ;AAC/B,OAAO,KAAKC,QAAQ,MAAM,sBAAsB;AAEhD,OAAO,MAAMC,sBAAsB,GAAG,MAAAA,CAAO;EAC3CC,OAAO;EACPC;AAAa,CACwC,KAAmD;EACxG,MAAMC,GAAG,GAAG,MAAMC,KAAK,CAAC,IAAIC,GAAG,CAAC,WAAWJ,OAAO,UAAU,EAAEC,aAAa,CAAC,EAAE;IAC5EI,MAAM,EAAE;GACT,CAAC;EACF,MAAMC,OAAO,GAAGT,MAAM,CAACU,iBAAiB,CAACT,QAAQ,CAACU,8BAA8B,CAAC,CAAC,MAAMN,GAAG,CAACO,IAAI,EAAE,CAAC;EACnG,OAAOH,OAAO,CAACI,OAAO;AACxB,CAAC;AAED,OAAO,MAAMC,wBAAwB,GAAG,MAAAA,CAAO;EAC7CC,cAAc;EACdX;AAAa,CAC+C,KAAqD;EACjH,MAAMC,GAAG,GAAG,MAAMC,KAAK,CAAC,IAAIC,GAAG,CAAC,aAAaQ,cAAc,UAAU,EAAEX,aAAa,CAAC,EAAE;IACrFI,MAAM,EAAE;GACT,CAAC;EACF,MAAMC,OAAO,GAAGT,MAAM,CAACU,iBAAiB,CAACT,QAAQ,CAACe,gCAAgC,CAAC,CAAC,MAAMX,GAAG,CAACO,IAAI,EAAE,CAAC;EACrG,OAAOH,OAAO,CAACI,OAAO;AACxB,CAAC;AAED,OAAO,MAAMI,aAAa,GAAG,MAAAA,CAAO;EAClCd,OAAO;EACPe,OAAO;EACPd;AAAa,CACyD,KAAwC;EAC9G,MAAMC,GAAG,GAAG,MAAMC,KAAK,CAAC,IAAIC,GAAG,CAAC,WAAWJ,OAAO,YAAYe,OAAO,EAAE,EAAEd,aAAa,CAAC,EAAE;IACvFI,MAAM,EAAE;GACT,CAAC;EACF,MAAMC,OAAO,GAAGT,MAAM,CAACU,iBAAiB,CAACT,QAAQ,CAACkB,wBAAwB,CAAC,CAAC,MAAMd,GAAG,CAACO,IAAI,EAAE,CAAC;EAC7F,OAAOH,OAAO,CAACW,KAAK;AACtB,CAAC;AAED,OAAO,MAAMC,eAAe,GAAG,MAAAA,CAAO;EACpCN,cAAc;EACdG,OAAO;EACPd;AAAa,CAKb,KAA0C;EAC1C,MAAMC,GAAG,GAAG,MAAMC,KAAK,CAAC,IAAIC,GAAG,CAAC,aAAaQ,cAAc,YAAYG,OAAO,EAAE,EAAEd,aAAa,CAAC,EAAE;IAChGI,MAAM,EAAE;GACT,CAAC;EACF,MAAMC,OAAO,GAAGT,MAAM,CAACU,iBAAiB,CAACT,QAAQ,CAACqB,0BAA0B,CAAC,CAAC,MAAMjB,GAAG,CAACO,IAAI,EAAE,CAAC;EAC/F,OAAOH,OAAO,CAACW,KAAK;AACtB,CAAC","ignoreList":[]}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
export * from './create-inbox.js';
|
|
2
|
+
export * from './get-list-inboxes.js';
|
|
3
|
+
export * from './message-encryption.js';
|
|
4
|
+
export * from './message-validation.js';
|
|
5
|
+
export * from './prepare-message.js';
|
|
6
|
+
export * from './recover-inbox-creator.js';
|
|
7
|
+
export * from './recover-inbox-message-signer.js';
|
|
8
|
+
export * from './send-message.js';
|
|
9
|
+
export * from './merge-messages.js';
|
|
10
|
+
export * from './types.js';
|
|
11
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
export * from './create-inbox.js';
|
|
2
|
+
export * from './get-list-inboxes.js';
|
|
3
|
+
export * from './message-encryption.js';
|
|
4
|
+
export * from './message-validation.js';
|
|
5
|
+
export * from './prepare-message.js';
|
|
6
|
+
export * from './recover-inbox-creator.js';
|
|
7
|
+
export * from './recover-inbox-message-signer.js';
|
|
8
|
+
export * from './send-message.js';
|
|
9
|
+
export * from './merge-messages.js';
|
|
10
|
+
export * from './types.js';
|
|
11
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","names":[],"sources":["../../src/inboxes/index.ts"],"sourcesContent":[null],"mappings":"AAAA,cAAc,mBAAmB;AACjC,cAAc,uBAAuB;AACrC,cAAc,yBAAyB;AACvC,cAAc,yBAAyB;AACvC,cAAc,sBAAsB;AACpC,cAAc,4BAA4B;AAC1C,cAAc,mCAAmC;AACjD,cAAc,mBAAmB;AACjC,cAAc,qBAAqB;AACnC,cAAc,YAAY","ignoreList":[]}
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
import type { InboxMessageStorageEntry } from '../store.js';
|
|
2
|
+
export declare function mergeMessages(existingMessages: InboxMessageStorageEntry[], existingSeenIds: Set<string>, newMessages: InboxMessageStorageEntry[]): {
|
|
3
|
+
messages: InboxMessageStorageEntry[];
|
|
4
|
+
seenMessageIds: Set<string>;
|
|
5
|
+
};
|
|
6
|
+
//# sourceMappingURL=merge-messages.d.ts.map
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
export function mergeMessages(existingMessages, existingSeenIds, newMessages) {
|
|
2
|
+
const messages = [...existingMessages];
|
|
3
|
+
const seenMessageIds = new Set(existingSeenIds);
|
|
4
|
+
// Filter and add new messages
|
|
5
|
+
const newFilteredMessages = newMessages.filter(msg => !seenMessageIds.has(msg.id));
|
|
6
|
+
for (const msg of newFilteredMessages) {
|
|
7
|
+
seenMessageIds.add(msg.id);
|
|
8
|
+
}
|
|
9
|
+
if (newFilteredMessages.length > 0) {
|
|
10
|
+
// Only sort if the last new message is earlier than the last existing message
|
|
11
|
+
if (messages.length > 0 && newFilteredMessages[0].createdAt < messages[messages.length - 1].createdAt) {
|
|
12
|
+
messages.push(...newFilteredMessages);
|
|
13
|
+
messages.sort((a, b) => a.createdAt < b.createdAt ? -1 : 1);
|
|
14
|
+
} else {
|
|
15
|
+
messages.push(...newFilteredMessages);
|
|
16
|
+
}
|
|
17
|
+
}
|
|
18
|
+
return {
|
|
19
|
+
messages,
|
|
20
|
+
seenMessageIds
|
|
21
|
+
};
|
|
22
|
+
}
|
|
23
|
+
//# sourceMappingURL=merge-messages.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"merge-messages.js","names":["mergeMessages","existingMessages","existingSeenIds","newMessages","messages","seenMessageIds","Set","newFilteredMessages","filter","msg","has","id","add","length","createdAt","push","sort","a","b"],"sources":["../../src/inboxes/merge-messages.ts"],"sourcesContent":[null],"mappings":"AAEA,OAAM,SAAUA,aAAaA,CAC3BC,gBAA4C,EAC5CC,eAA4B,EAC5BC,WAAuC;EAEvC,MAAMC,QAAQ,GAAG,CAAC,GAAGH,gBAAgB,CAAC;EACtC,MAAMI,cAAc,GAAG,IAAIC,GAAG,CAACJ,eAAe,CAAC;EAE/C;EACA,MAAMK,mBAAmB,GAAGJ,WAAW,CAACK,MAAM,CAAEC,GAAG,IAAK,CAACJ,cAAc,CAACK,GAAG,CAACD,GAAG,CAACE,EAAE,CAAC,CAAC;EACpF,KAAK,MAAMF,GAAG,IAAIF,mBAAmB,EAAE;IACrCF,cAAc,CAACO,GAAG,CAACH,GAAG,CAACE,EAAE,CAAC;EAC5B;EAEA,IAAIJ,mBAAmB,CAACM,MAAM,GAAG,CAAC,EAAE;IAClC;IACA,IAAIT,QAAQ,CAACS,MAAM,GAAG,CAAC,IAAIN,mBAAmB,CAAC,CAAC,CAAC,CAACO,SAAS,GAAGV,QAAQ,CAACA,QAAQ,CAACS,MAAM,GAAG,CAAC,CAAC,CAACC,SAAS,EAAE;MACrGV,QAAQ,CAACW,IAAI,CAAC,GAAGR,mBAAmB,CAAC;MACrCH,QAAQ,CAACY,IAAI,CAAC,CAACC,CAAC,EAAEC,CAAC,KAAMD,CAAC,CAACH,SAAS,GAAGI,CAAC,CAACJ,SAAS,GAAG,CAAC,CAAC,GAAG,CAAE,CAAC;IAC/D,CAAC,MAAM;MACLV,QAAQ,CAACW,IAAI,CAAC,GAAGR,mBAAmB,CAAC;IACvC;EACF;EAEA,OAAO;IAAEH,QAAQ;IAAEC;EAAc,CAAE;AACrC","ignoreList":[]}
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
type EncryptParams = {
|
|
2
|
+
message: string;
|
|
3
|
+
encryptionPublicKey: string;
|
|
4
|
+
};
|
|
5
|
+
type DecryptParams = {
|
|
6
|
+
ciphertext: string;
|
|
7
|
+
encryptionPrivateKey: string;
|
|
8
|
+
encryptionPublicKey: string;
|
|
9
|
+
};
|
|
10
|
+
export declare function encryptInboxMessage({ message, encryptionPublicKey }: EncryptParams): {
|
|
11
|
+
ciphertext: string;
|
|
12
|
+
};
|
|
13
|
+
export declare function decryptInboxMessage({ ciphertext, encryptionPrivateKey, encryptionPublicKey }: DecryptParams): string;
|
|
14
|
+
export {};
|
|
15
|
+
//# sourceMappingURL=message-encryption.d.ts.map
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
import { cryptoBoxSeal, cryptoBoxSealOpen } from '@serenity-kit/noble-sodium';
|
|
2
|
+
import { bytesToHex, hexToBytes, stringToUint8Array, uint8ArrayToString } from '../utils/index.js';
|
|
3
|
+
export function encryptInboxMessage({
|
|
4
|
+
message,
|
|
5
|
+
encryptionPublicKey
|
|
6
|
+
}) {
|
|
7
|
+
const ciphertext = cryptoBoxSeal({
|
|
8
|
+
message: stringToUint8Array(message),
|
|
9
|
+
publicKey: hexToBytes(encryptionPublicKey)
|
|
10
|
+
});
|
|
11
|
+
return {
|
|
12
|
+
ciphertext: bytesToHex(ciphertext)
|
|
13
|
+
};
|
|
14
|
+
}
|
|
15
|
+
export function decryptInboxMessage({
|
|
16
|
+
ciphertext,
|
|
17
|
+
encryptionPrivateKey,
|
|
18
|
+
encryptionPublicKey
|
|
19
|
+
}) {
|
|
20
|
+
const publicKey = hexToBytes(encryptionPublicKey);
|
|
21
|
+
const privateKey = hexToBytes(encryptionPrivateKey);
|
|
22
|
+
const message = cryptoBoxSealOpen({
|
|
23
|
+
ciphertext: hexToBytes(ciphertext),
|
|
24
|
+
privateKey,
|
|
25
|
+
publicKey
|
|
26
|
+
});
|
|
27
|
+
return uint8ArrayToString(message);
|
|
28
|
+
}
|
|
29
|
+
//# sourceMappingURL=message-encryption.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"message-encryption.js","names":["cryptoBoxSeal","cryptoBoxSealOpen","bytesToHex","hexToBytes","stringToUint8Array","uint8ArrayToString","encryptInboxMessage","message","encryptionPublicKey","ciphertext","publicKey","decryptInboxMessage","encryptionPrivateKey","privateKey"],"sources":["../../src/inboxes/message-encryption.ts"],"sourcesContent":[null],"mappings":"AAAA,SAASA,aAAa,EAAEC,iBAAiB,QAAQ,4BAA4B;AAC7E,SAASC,UAAU,EAAEC,UAAU,EAAEC,kBAAkB,EAAEC,kBAAkB,QAAQ,mBAAmB;AAalG,OAAM,SAAUC,mBAAmBA,CAAC;EAAEC,OAAO;EAAEC;AAAmB,CAAiB;EAGjF,MAAMC,UAAU,GAAGT,aAAa,CAAC;IAC/BO,OAAO,EAAEH,kBAAkB,CAACG,OAAO,CAAC;IACpCG,SAAS,EAAEP,UAAU,CAACK,mBAAmB;GAC1C,CAAC;EAEF,OAAO;IAAEC,UAAU,EAAEP,UAAU,CAACO,UAAU;EAAC,CAAE;AAC/C;AAEA,OAAM,SAAUE,mBAAmBA,CAAC;EAAEF,UAAU;EAAEG,oBAAoB;EAAEJ;AAAmB,CAAiB;EAC1G,MAAME,SAAS,GAAGP,UAAU,CAACK,mBAAmB,CAAC;EACjD,MAAMK,UAAU,GAAGV,UAAU,CAACS,oBAAoB,CAAC;EACnD,MAAML,OAAO,GAAGN,iBAAiB,CAAC;IAChCQ,UAAU,EAAEN,UAAU,CAACM,UAAU,CAAC;IAClCI,UAAU;IACVH;GACD,CAAC;EACF,OAAOL,kBAAkB,CAACE,OAAO,CAAC;AACpC","ignoreList":[]}
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
import type { Chain } from 'viem';
|
|
2
|
+
import type * as Messages from '../messages/index.js';
|
|
3
|
+
import type { AccountInboxStorageEntry, SpaceInboxStorageEntry } from '../store.js';
|
|
4
|
+
export declare const validateSpaceInboxMessage: (message: Messages.InboxMessage, inbox: SpaceInboxStorageEntry, spaceId: string, syncServerUri: string, chain: Chain, rpcUrl: string) => Promise<boolean>;
|
|
5
|
+
export declare const validateAccountInboxMessage: (message: Messages.InboxMessage, inbox: AccountInboxStorageEntry, accountAddress: string, syncServerUri: string, chain: Chain, rpcUrl: string) => Promise<boolean>;
|
|
6
|
+
//# sourceMappingURL=message-validation.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"message-validation.d.ts","sourceRoot":"","sources":["../../src/inboxes/message-validation.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"message-validation.d.ts","sourceRoot":"","sources":["../../src/inboxes/message-validation.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,MAAM,CAAC;AAElC,OAAO,KAAK,KAAK,QAAQ,MAAM,sBAAsB,CAAC;AACtD,OAAO,KAAK,EAAE,wBAAwB,EAAE,sBAAsB,EAAE,MAAM,aAAa,CAAC;AAGpF,eAAO,MAAM,yBAAyB,GACpC,SAAS,QAAQ,CAAC,YAAY,EAC9B,OAAO,sBAAsB,EAC7B,SAAS,MAAM,EACf,eAAe,MAAM,EACrB,OAAO,KAAK,EACZ,QAAQ,MAAM,qBA8Bf,CAAC;AAEF,eAAO,MAAM,2BAA2B,GACtC,SAAS,QAAQ,CAAC,YAAY,EAC9B,OAAO,wBAAwB,EAC/B,gBAAgB,MAAM,EACtB,eAAe,MAAM,EACrB,OAAO,KAAK,EACZ,QAAQ,MAAM,qBA8Bf,CAAC"}
|
|
@@ -0,0 +1,53 @@
|
|
|
1
|
+
import * as Identity from '../identity/index.js';
|
|
2
|
+
import { recoverAccountInboxMessageSigner, recoverSpaceInboxMessageSigner } from './recover-inbox-message-signer.js';
|
|
3
|
+
export const validateSpaceInboxMessage = async (message, inbox, spaceId, syncServerUri, chain, rpcUrl) => {
|
|
4
|
+
if (message.signature) {
|
|
5
|
+
if (inbox.authPolicy === 'anonymous') {
|
|
6
|
+
console.error('Signed message in anonymous inbox');
|
|
7
|
+
return false;
|
|
8
|
+
}
|
|
9
|
+
if (!message.authorAccountAddress) {
|
|
10
|
+
console.error('Signed message without authorAccountAddress');
|
|
11
|
+
return false;
|
|
12
|
+
}
|
|
13
|
+
const signer = recoverSpaceInboxMessageSigner(message, spaceId, inbox.inboxId);
|
|
14
|
+
const verifiedIdentity = await Identity.getVerifiedIdentity(message.authorAccountAddress, syncServerUri, chain, rpcUrl);
|
|
15
|
+
const isValid = signer === verifiedIdentity.signaturePublicKey;
|
|
16
|
+
if (!isValid) {
|
|
17
|
+
console.error('Invalid signature', signer, verifiedIdentity.signaturePublicKey);
|
|
18
|
+
}
|
|
19
|
+
return isValid;
|
|
20
|
+
}
|
|
21
|
+
// Unsigned message is valid if the inbox is anonymous or optional auth
|
|
22
|
+
const isValid = inbox.authPolicy !== 'requires_auth';
|
|
23
|
+
if (!isValid) {
|
|
24
|
+
console.error('Unsigned message in required auth inbox');
|
|
25
|
+
}
|
|
26
|
+
return isValid;
|
|
27
|
+
};
|
|
28
|
+
export const validateAccountInboxMessage = async (message, inbox, accountAddress, syncServerUri, chain, rpcUrl) => {
|
|
29
|
+
if (message.signature) {
|
|
30
|
+
if (inbox.authPolicy === 'anonymous') {
|
|
31
|
+
console.error('Signed message in anonymous inbox');
|
|
32
|
+
return false;
|
|
33
|
+
}
|
|
34
|
+
if (!message.authorAccountAddress) {
|
|
35
|
+
console.error('Signed message without authorAccountAddress');
|
|
36
|
+
return false;
|
|
37
|
+
}
|
|
38
|
+
const signer = recoverAccountInboxMessageSigner(message, accountAddress, inbox.inboxId);
|
|
39
|
+
const verifiedIdentity = await Identity.getVerifiedIdentity(message.authorAccountAddress, syncServerUri, chain, rpcUrl);
|
|
40
|
+
const isValid = signer === verifiedIdentity.signaturePublicKey;
|
|
41
|
+
if (!isValid) {
|
|
42
|
+
console.error('Invalid signature', signer, verifiedIdentity.signaturePublicKey);
|
|
43
|
+
}
|
|
44
|
+
return isValid;
|
|
45
|
+
}
|
|
46
|
+
// Unsigned message is valid if the inbox is anonymous or optional auth
|
|
47
|
+
const isValid = inbox.authPolicy !== 'requires_auth';
|
|
48
|
+
if (!isValid) {
|
|
49
|
+
console.error('Unsigned message in required auth inbox');
|
|
50
|
+
}
|
|
51
|
+
return isValid;
|
|
52
|
+
};
|
|
53
|
+
//# sourceMappingURL=message-validation.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"message-validation.js","names":["Identity","recoverAccountInboxMessageSigner","recoverSpaceInboxMessageSigner","validateSpaceInboxMessage","message","inbox","spaceId","syncServerUri","chain","rpcUrl","signature","authPolicy","console","error","authorAccountAddress","signer","inboxId","verifiedIdentity","getVerifiedIdentity","isValid","signaturePublicKey","validateAccountInboxMessage","accountAddress"],"sources":["../../src/inboxes/message-validation.ts"],"sourcesContent":[null],"mappings":"AACA,OAAO,KAAKA,QAAQ,MAAM,sBAAsB;AAGhD,SAASC,gCAAgC,EAAEC,8BAA8B,QAAQ,mCAAmC;AAEpH,OAAO,MAAMC,yBAAyB,GAAG,MAAAA,CACvCC,OAA8B,EAC9BC,KAA6B,EAC7BC,OAAe,EACfC,aAAqB,EACrBC,KAAY,EACZC,MAAc,KACZ;EACF,IAAIL,OAAO,CAACM,SAAS,EAAE;IACrB,IAAIL,KAAK,CAACM,UAAU,KAAK,WAAW,EAAE;MACpCC,OAAO,CAACC,KAAK,CAAC,mCAAmC,CAAC;MAClD,OAAO,KAAK;IACd;IACA,IAAI,CAACT,OAAO,CAACU,oBAAoB,EAAE;MACjCF,OAAO,CAACC,KAAK,CAAC,6CAA6C,CAAC;MAC5D,OAAO,KAAK;IACd;IACA,MAAME,MAAM,GAAGb,8BAA8B,CAACE,OAAO,EAAEE,OAAO,EAAED,KAAK,CAACW,OAAO,CAAC;IAC9E,MAAMC,gBAAgB,GAAG,MAAMjB,QAAQ,CAACkB,mBAAmB,CACzDd,OAAO,CAACU,oBAAoB,EAC5BP,aAAa,EACbC,KAAK,EACLC,MAAM,CACP;IACD,MAAMU,OAAO,GAAGJ,MAAM,KAAKE,gBAAgB,CAACG,kBAAkB;IAC9D,IAAI,CAACD,OAAO,EAAE;MACZP,OAAO,CAACC,KAAK,CAAC,mBAAmB,EAAEE,MAAM,EAAEE,gBAAgB,CAACG,kBAAkB,CAAC;IACjF;IACA,OAAOD,OAAO;EAChB;EACA;EACA,MAAMA,OAAO,GAAGd,KAAK,CAACM,UAAU,KAAK,eAAe;EACpD,IAAI,CAACQ,OAAO,EAAE;IACZP,OAAO,CAACC,KAAK,CAAC,yCAAyC,CAAC;EAC1D;EACA,OAAOM,OAAO;AAChB,CAAC;AAED,OAAO,MAAME,2BAA2B,GAAG,MAAAA,CACzCjB,OAA8B,EAC9BC,KAA+B,EAC/BiB,cAAsB,EACtBf,aAAqB,EACrBC,KAAY,EACZC,MAAc,KACZ;EACF,IAAIL,OAAO,CAACM,SAAS,EAAE;IACrB,IAAIL,KAAK,CAACM,UAAU,KAAK,WAAW,EAAE;MACpCC,OAAO,CAACC,KAAK,CAAC,mCAAmC,CAAC;MAClD,OAAO,KAAK;IACd;IACA,IAAI,CAACT,OAAO,CAACU,oBAAoB,EAAE;MACjCF,OAAO,CAACC,KAAK,CAAC,6CAA6C,CAAC;MAC5D,OAAO,KAAK;IACd;IACA,MAAME,MAAM,GAAGd,gCAAgC,CAACG,OAAO,EAAEkB,cAAc,EAAEjB,KAAK,CAACW,OAAO,CAAC;IACvF,MAAMC,gBAAgB,GAAG,MAAMjB,QAAQ,CAACkB,mBAAmB,CACzDd,OAAO,CAACU,oBAAoB,EAC5BP,aAAa,EACbC,KAAK,EACLC,MAAM,CACP;IACD,MAAMU,OAAO,GAAGJ,MAAM,KAAKE,gBAAgB,CAACG,kBAAkB;IAC9D,IAAI,CAACD,OAAO,EAAE;MACZP,OAAO,CAACC,KAAK,CAAC,mBAAmB,EAAEE,MAAM,EAAEE,gBAAgB,CAACG,kBAAkB,CAAC;IACjF;IACA,OAAOD,OAAO;EAChB;EACA;EACA,MAAMA,OAAO,GAAGd,KAAK,CAACM,UAAU,KAAK,eAAe;EACpD,IAAI,CAACQ,OAAO,EAAE;IACZP,OAAO,CAACC,KAAK,CAAC,yCAAyC,CAAC;EAC1D;EACA,OAAOM,OAAO;AAChB,CAAC","ignoreList":[]}
|
|
@@ -6,11 +6,11 @@ export declare function prepareSpaceInboxMessage({ message, spaceId, inboxId, en
|
|
|
6
6
|
signaturePrivateKey: string | null;
|
|
7
7
|
authorAccountAddress: string | null;
|
|
8
8
|
}>): Promise<{
|
|
9
|
-
readonly ciphertext: string;
|
|
10
9
|
readonly signature?: {
|
|
11
10
|
readonly hex: string;
|
|
12
11
|
readonly recovery: number;
|
|
13
12
|
} | undefined;
|
|
13
|
+
readonly ciphertext: string;
|
|
14
14
|
readonly authorAccountAddress?: string | undefined;
|
|
15
15
|
}>;
|
|
16
16
|
export declare function prepareAccountInboxMessage({ message, accountAddress, inboxId, encryptionPublicKey, signaturePrivateKey, authorAccountAddress, }: Readonly<{
|
|
@@ -21,11 +21,11 @@ export declare function prepareAccountInboxMessage({ message, accountAddress, in
|
|
|
21
21
|
signaturePrivateKey: string | null;
|
|
22
22
|
authorAccountAddress: string | null;
|
|
23
23
|
}>): Promise<{
|
|
24
|
-
readonly ciphertext: string;
|
|
25
24
|
readonly signature?: {
|
|
26
25
|
readonly hex: string;
|
|
27
26
|
readonly recovery: number;
|
|
28
27
|
} | undefined;
|
|
28
|
+
readonly ciphertext: string;
|
|
29
29
|
readonly authorAccountAddress?: string | undefined;
|
|
30
30
|
}>;
|
|
31
31
|
//# sourceMappingURL=prepare-message.d.ts.map
|
|
@@ -0,0 +1,78 @@
|
|
|
1
|
+
import { secp256k1 } from '@noble/curves/secp256k1';
|
|
2
|
+
import { canonicalize, hexToBytes, stringToUint8Array } from '../utils/index.js';
|
|
3
|
+
import { encryptInboxMessage } from './message-encryption.js';
|
|
4
|
+
export async function prepareSpaceInboxMessage({
|
|
5
|
+
message,
|
|
6
|
+
spaceId,
|
|
7
|
+
inboxId,
|
|
8
|
+
encryptionPublicKey,
|
|
9
|
+
signaturePrivateKey,
|
|
10
|
+
authorAccountAddress
|
|
11
|
+
}) {
|
|
12
|
+
const {
|
|
13
|
+
ciphertext
|
|
14
|
+
} = encryptInboxMessage({
|
|
15
|
+
message,
|
|
16
|
+
encryptionPublicKey
|
|
17
|
+
});
|
|
18
|
+
let signature;
|
|
19
|
+
if (signaturePrivateKey && authorAccountAddress) {
|
|
20
|
+
const messageToSign = stringToUint8Array(canonicalize({
|
|
21
|
+
spaceId,
|
|
22
|
+
inboxId,
|
|
23
|
+
ciphertext,
|
|
24
|
+
authorAccountAddress
|
|
25
|
+
}));
|
|
26
|
+
const signatureInstance = secp256k1.sign(messageToSign, hexToBytes(signaturePrivateKey), {
|
|
27
|
+
prehash: true
|
|
28
|
+
});
|
|
29
|
+
signature = {
|
|
30
|
+
hex: signatureInstance.toCompactHex(),
|
|
31
|
+
recovery: signatureInstance.recovery
|
|
32
|
+
};
|
|
33
|
+
}
|
|
34
|
+
const messageToSend = {
|
|
35
|
+
ciphertext,
|
|
36
|
+
signature,
|
|
37
|
+
authorAccountAddress: authorAccountAddress ?? undefined
|
|
38
|
+
};
|
|
39
|
+
return messageToSend;
|
|
40
|
+
}
|
|
41
|
+
export async function prepareAccountInboxMessage({
|
|
42
|
+
message,
|
|
43
|
+
accountAddress,
|
|
44
|
+
inboxId,
|
|
45
|
+
encryptionPublicKey,
|
|
46
|
+
signaturePrivateKey,
|
|
47
|
+
authorAccountAddress
|
|
48
|
+
}) {
|
|
49
|
+
const {
|
|
50
|
+
ciphertext
|
|
51
|
+
} = encryptInboxMessage({
|
|
52
|
+
message,
|
|
53
|
+
encryptionPublicKey
|
|
54
|
+
});
|
|
55
|
+
let signature;
|
|
56
|
+
if (signaturePrivateKey && authorAccountAddress) {
|
|
57
|
+
const messageToSign = stringToUint8Array(canonicalize({
|
|
58
|
+
accountAddress,
|
|
59
|
+
inboxId,
|
|
60
|
+
ciphertext,
|
|
61
|
+
authorAccountAddress
|
|
62
|
+
}));
|
|
63
|
+
const signatureInstance = secp256k1.sign(messageToSign, hexToBytes(signaturePrivateKey), {
|
|
64
|
+
prehash: true
|
|
65
|
+
});
|
|
66
|
+
signature = {
|
|
67
|
+
hex: signatureInstance.toCompactHex(),
|
|
68
|
+
recovery: signatureInstance.recovery
|
|
69
|
+
};
|
|
70
|
+
}
|
|
71
|
+
const messageToSend = {
|
|
72
|
+
ciphertext,
|
|
73
|
+
signature,
|
|
74
|
+
authorAccountAddress: authorAccountAddress ?? undefined
|
|
75
|
+
};
|
|
76
|
+
return messageToSend;
|
|
77
|
+
}
|
|
78
|
+
//# sourceMappingURL=prepare-message.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"prepare-message.js","names":["secp256k1","canonicalize","hexToBytes","stringToUint8Array","encryptInboxMessage","prepareSpaceInboxMessage","message","spaceId","inboxId","encryptionPublicKey","signaturePrivateKey","authorAccountAddress","ciphertext","signature","messageToSign","signatureInstance","sign","prehash","hex","toCompactHex","recovery","messageToSend","undefined","prepareAccountInboxMessage","accountAddress"],"sources":["../../src/inboxes/prepare-message.ts"],"sourcesContent":[null],"mappings":"AAAA,SAASA,SAAS,QAAQ,yBAAyB;AAGnD,SAASC,YAAY,EAAEC,UAAU,EAAEC,kBAAkB,QAAQ,mBAAmB;AAChF,SAASC,mBAAmB,QAAQ,yBAAyB;AAE7D,OAAO,eAAeC,wBAAwBA,CAAC;EAC7CC,OAAO;EACPC,OAAO;EACPC,OAAO;EACPC,mBAAmB;EACnBC,mBAAmB;EACnBC;AAAoB,CAQpB;EACA,MAAM;IAAEC;EAAU,CAAE,GAAGR,mBAAmB,CAAC;IAAEE,OAAO;IAAEG;EAAmB,CAAE,CAAC;EAC5E,IAAII,SAA4C;EAChD,IAAIH,mBAAmB,IAAIC,oBAAoB,EAAE;IAC/C,MAAMG,aAAa,GAAGX,kBAAkB,CACtCF,YAAY,CAAC;MACXM,OAAO;MACPC,OAAO;MACPI,UAAU;MACVD;KACD,CAAC,CACH;IACD,MAAMI,iBAAiB,GAAGf,SAAS,CAACgB,IAAI,CAACF,aAAa,EAAEZ,UAAU,CAACQ,mBAAmB,CAAC,EAAE;MAAEO,OAAO,EAAE;IAAI,CAAE,CAAC;IAC3GJ,SAAS,GAAG;MACVK,GAAG,EAAEH,iBAAiB,CAACI,YAAY,EAAE;MACrCC,QAAQ,EAAEL,iBAAiB,CAACK;KAC7B;EACH;EACA,MAAMC,aAAa,GAA4C;IAC7DT,UAAU;IACVC,SAAS;IACTF,oBAAoB,EAAEA,oBAAoB,IAAIW;GAC/C;EACD,OAAOD,aAAa;AACtB;AAEA,OAAO,eAAeE,0BAA0BA,CAAC;EAC/CjB,OAAO;EACPkB,cAAc;EACdhB,OAAO;EACPC,mBAAmB;EACnBC,mBAAmB;EACnBC;AAAoB,CAQpB;EACA,MAAM;IAAEC;EAAU,CAAE,GAAGR,mBAAmB,CAAC;IAAEE,OAAO;IAAEG;EAAmB,CAAE,CAAC;EAC5E,IAAII,SAA4C;EAChD,IAAIH,mBAAmB,IAAIC,oBAAoB,EAAE;IAC/C,MAAMG,aAAa,GAAGX,kBAAkB,CACtCF,YAAY,CAAC;MACXuB,cAAc;MACdhB,OAAO;MACPI,UAAU;MACVD;KACD,CAAC,CACH;IACD,MAAMI,iBAAiB,GAAGf,SAAS,CAACgB,IAAI,CAACF,aAAa,EAAEZ,UAAU,CAACQ,mBAAmB,CAAC,EAAE;MAAEO,OAAO,EAAE;IAAI,CAAE,CAAC;IAC3GJ,SAAS,GAAG;MACVK,GAAG,EAAEH,iBAAiB,CAACI,YAAY,EAAE;MACrCC,QAAQ,EAAEL,iBAAiB,CAACK;KAC7B;EACH;EACA,MAAMC,aAAa,GAA8C;IAC/DT,UAAU;IACVC,SAAS;IACTF,oBAAoB,EAAEA,oBAAoB,IAAIW;GAC/C;EACD,OAAOD,aAAa;AACtB","ignoreList":[]}
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
import type { AccountInbox } from '../messages/index.js';
|
|
2
|
+
import type { CreateSpaceInboxEvent } from '../space-events/index.js';
|
|
3
|
+
export declare const recoverAccountInboxCreatorKey: (inbox: AccountInbox) => string;
|
|
4
|
+
export declare const recoverSpaceInboxCreatorKey: (event: CreateSpaceInboxEvent) => string;
|
|
5
|
+
//# sourceMappingURL=recover-inbox-creator.d.ts.map
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
import { secp256k1 } from '@noble/curves/secp256k1';
|
|
2
|
+
import { sha256 } from '@noble/hashes/sha256';
|
|
3
|
+
import { canonicalize, stringToUint8Array } from '../utils/index.js';
|
|
4
|
+
export const recoverAccountInboxCreatorKey = inbox => {
|
|
5
|
+
const messageToVerify = stringToUint8Array(canonicalize({
|
|
6
|
+
accountAddress: inbox.accountAddress,
|
|
7
|
+
inboxId: inbox.inboxId,
|
|
8
|
+
encryptionPublicKey: inbox.encryptionPublicKey
|
|
9
|
+
}));
|
|
10
|
+
const signature = inbox.signature;
|
|
11
|
+
let signatureInstance = secp256k1.Signature.fromCompact(signature.hex);
|
|
12
|
+
signatureInstance = signatureInstance.addRecoveryBit(signature.recovery);
|
|
13
|
+
const authorPublicKey = `0x${signatureInstance.recoverPublicKey(sha256(messageToVerify)).toHex()}`;
|
|
14
|
+
return authorPublicKey;
|
|
15
|
+
};
|
|
16
|
+
export const recoverSpaceInboxCreatorKey = event => {
|
|
17
|
+
const messageToVerify = stringToUint8Array(canonicalize(event.transaction));
|
|
18
|
+
const signature = event.author.signature;
|
|
19
|
+
let signatureInstance = secp256k1.Signature.fromCompact(signature.hex);
|
|
20
|
+
signatureInstance = signatureInstance.addRecoveryBit(signature.recovery);
|
|
21
|
+
const authorPublicKey = `0x${signatureInstance.recoverPublicKey(sha256(messageToVerify)).toHex()}`;
|
|
22
|
+
return authorPublicKey;
|
|
23
|
+
};
|
|
24
|
+
//# sourceMappingURL=recover-inbox-creator.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"recover-inbox-creator.js","names":["secp256k1","sha256","canonicalize","stringToUint8Array","recoverAccountInboxCreatorKey","inbox","messageToVerify","accountAddress","inboxId","encryptionPublicKey","signature","signatureInstance","Signature","fromCompact","hex","addRecoveryBit","recovery","authorPublicKey","recoverPublicKey","toHex","recoverSpaceInboxCreatorKey","event","transaction","author"],"sources":["../../src/inboxes/recover-inbox-creator.ts"],"sourcesContent":[null],"mappings":"AAAA,SAASA,SAAS,QAAQ,yBAAyB;AACnD,SAASC,MAAM,QAAQ,sBAAsB;AAG7C,SAASC,YAAY,EAAEC,kBAAkB,QAAQ,mBAAmB;AAEpE,OAAO,MAAMC,6BAA6B,GAAIC,KAAmB,IAAY;EAC3E,MAAMC,eAAe,GAAGH,kBAAkB,CACxCD,YAAY,CAAC;IACXK,cAAc,EAAEF,KAAK,CAACE,cAAc;IACpCC,OAAO,EAAEH,KAAK,CAACG,OAAO;IACtBC,mBAAmB,EAAEJ,KAAK,CAACI;GAC5B,CAAC,CACH;EACD,MAAMC,SAAS,GAAGL,KAAK,CAACK,SAAS;EACjC,IAAIC,iBAAiB,GAAGX,SAAS,CAACY,SAAS,CAACC,WAAW,CAACH,SAAS,CAACI,GAAG,CAAC;EACtEH,iBAAiB,GAAGA,iBAAiB,CAACI,cAAc,CAACL,SAAS,CAACM,QAAQ,CAAC;EACxE,MAAMC,eAAe,GAAG,KAAKN,iBAAiB,CAACO,gBAAgB,CAACjB,MAAM,CAACK,eAAe,CAAC,CAAC,CAACa,KAAK,EAAE,EAAE;EAClG,OAAOF,eAAe;AACxB,CAAC;AAED,OAAO,MAAMG,2BAA2B,GAAIC,KAA4B,IAAY;EAClF,MAAMf,eAAe,GAAGH,kBAAkB,CAACD,YAAY,CAACmB,KAAK,CAACC,WAAW,CAAC,CAAC;EAC3E,MAAMZ,SAAS,GAAGW,KAAK,CAACE,MAAM,CAACb,SAAS;EACxC,IAAIC,iBAAiB,GAAGX,SAAS,CAACY,SAAS,CAACC,WAAW,CAACH,SAAS,CAACI,GAAG,CAAC;EACtEH,iBAAiB,GAAGA,iBAAiB,CAACI,cAAc,CAACL,SAAS,CAACM,QAAQ,CAAC;EACxE,MAAMC,eAAe,GAAG,KAAKN,iBAAiB,CAACO,gBAAgB,CAACjB,MAAM,CAACK,eAAe,CAAC,CAAC,CAACa,KAAK,EAAE,EAAE;EAClG,OAAOF,eAAe;AACxB,CAAC","ignoreList":[]}
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
import type * as Messages from '../messages/index.js';
|
|
2
|
+
export declare const recoverSpaceInboxMessageSigner: (message: Messages.RequestCreateSpaceInboxMessage, spaceId: string, inboxId: string) => string;
|
|
3
|
+
export declare const recoverAccountInboxMessageSigner: (message: Messages.RequestCreateAccountInboxMessage, accountAddress: string, inboxId: string) => string;
|
|
4
|
+
//# sourceMappingURL=recover-inbox-message-signer.d.ts.map
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
import { secp256k1 } from '@noble/curves/secp256k1';
|
|
2
|
+
import { sha256 } from '@noble/hashes/sha256';
|
|
3
|
+
import * as Utils from '../utils/index.js';
|
|
4
|
+
export const recoverSpaceInboxMessageSigner = (message, spaceId, inboxId) => {
|
|
5
|
+
if (!message.signature) {
|
|
6
|
+
throw new Error('Signature is required');
|
|
7
|
+
}
|
|
8
|
+
let signatureInstance = secp256k1.Signature.fromCompact(message.signature.hex);
|
|
9
|
+
signatureInstance = signatureInstance.addRecoveryBit(message.signature.recovery);
|
|
10
|
+
const signedMessage = {
|
|
11
|
+
spaceId,
|
|
12
|
+
inboxId,
|
|
13
|
+
ciphertext: message.ciphertext,
|
|
14
|
+
authorAccountAddress: message.authorAccountAddress
|
|
15
|
+
};
|
|
16
|
+
return `0x${signatureInstance.recoverPublicKey(sha256(Utils.stringToUint8Array(Utils.canonicalize(signedMessage)))).toHex()}`;
|
|
17
|
+
};
|
|
18
|
+
export const recoverAccountInboxMessageSigner = (message, accountAddress, inboxId) => {
|
|
19
|
+
if (!message.signature) {
|
|
20
|
+
throw new Error('Signature is required');
|
|
21
|
+
}
|
|
22
|
+
let signatureInstance = secp256k1.Signature.fromCompact(message.signature.hex);
|
|
23
|
+
signatureInstance = signatureInstance.addRecoveryBit(message.signature.recovery);
|
|
24
|
+
const signedMessage = {
|
|
25
|
+
accountAddress,
|
|
26
|
+
inboxId,
|
|
27
|
+
ciphertext: message.ciphertext,
|
|
28
|
+
authorAccountAddress: message.authorAccountAddress
|
|
29
|
+
};
|
|
30
|
+
return `0x${signatureInstance.recoverPublicKey(sha256(Utils.stringToUint8Array(Utils.canonicalize(signedMessage)))).toHex()}`;
|
|
31
|
+
};
|
|
32
|
+
//# sourceMappingURL=recover-inbox-message-signer.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"recover-inbox-message-signer.js","names":["secp256k1","sha256","Utils","recoverSpaceInboxMessageSigner","message","spaceId","inboxId","signature","Error","signatureInstance","Signature","fromCompact","hex","addRecoveryBit","recovery","signedMessage","ciphertext","authorAccountAddress","recoverPublicKey","stringToUint8Array","canonicalize","toHex","recoverAccountInboxMessageSigner","accountAddress"],"sources":["../../src/inboxes/recover-inbox-message-signer.ts"],"sourcesContent":[null],"mappings":"AAAA,SAASA,SAAS,QAAQ,yBAAyB;AACnD,SAASC,MAAM,QAAQ,sBAAsB;AAE7C,OAAO,KAAKC,KAAK,MAAM,mBAAmB;AAE1C,OAAO,MAAMC,8BAA8B,GAAGA,CAC5CC,OAAgD,EAChDC,OAAe,EACfC,OAAe,KACb;EACF,IAAI,CAACF,OAAO,CAACG,SAAS,EAAE;IACtB,MAAM,IAAIC,KAAK,CAAC,uBAAuB,CAAC;EAC1C;EACA,IAAIC,iBAAiB,GAAGT,SAAS,CAACU,SAAS,CAACC,WAAW,CAACP,OAAO,CAACG,SAAS,CAACK,GAAG,CAAC;EAC9EH,iBAAiB,GAAGA,iBAAiB,CAACI,cAAc,CAACT,OAAO,CAACG,SAAS,CAACO,QAAQ,CAAC;EAChF,MAAMC,aAAa,GAAG;IACpBV,OAAO;IACPC,OAAO;IACPU,UAAU,EAAEZ,OAAO,CAACY,UAAU;IAC9BC,oBAAoB,EAAEb,OAAO,CAACa;GAC/B;EACD,OAAO,KAAKR,iBAAiB,CAACS,gBAAgB,CAACjB,MAAM,CAACC,KAAK,CAACiB,kBAAkB,CAACjB,KAAK,CAACkB,YAAY,CAACL,aAAa,CAAC,CAAC,CAAC,CAAC,CAACM,KAAK,EAAE,EAAE;AAC/H,CAAC;AAED,OAAO,MAAMC,gCAAgC,GAAGA,CAC9ClB,OAAkD,EAClDmB,cAAsB,EACtBjB,OAAe,KACb;EACF,IAAI,CAACF,OAAO,CAACG,SAAS,EAAE;IACtB,MAAM,IAAIC,KAAK,CAAC,uBAAuB,CAAC;EAC1C;EACA,IAAIC,iBAAiB,GAAGT,SAAS,CAACU,SAAS,CAACC,WAAW,CAACP,OAAO,CAACG,SAAS,CAACK,GAAG,CAAC;EAC9EH,iBAAiB,GAAGA,iBAAiB,CAACI,cAAc,CAACT,OAAO,CAACG,SAAS,CAACO,QAAQ,CAAC;EAChF,MAAMC,aAAa,GAAG;IACpBQ,cAAc;IACdjB,OAAO;IACPU,UAAU,EAAEZ,OAAO,CAACY,UAAU;IAC9BC,oBAAoB,EAAEb,OAAO,CAACa;GAC/B;EACD,OAAO,KAAKR,iBAAiB,CAACS,gBAAgB,CAACjB,MAAM,CAACC,KAAK,CAACiB,kBAAkB,CAACjB,KAAK,CAACkB,YAAY,CAACL,aAAa,CAAC,CAAC,CAAC,CAAC,CAACM,KAAK,EAAE,EAAE;AAC/H,CAAC","ignoreList":[]}
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
export declare function sendSpaceInboxMessage({ message, spaceId, inboxId, encryptionPublicKey, signaturePrivateKey, authorAccountAddress, syncServerUri, }: Readonly<{
|
|
2
|
+
message: string;
|
|
3
|
+
spaceId: string;
|
|
4
|
+
inboxId: string;
|
|
5
|
+
encryptionPublicKey: string;
|
|
6
|
+
signaturePrivateKey: string | null;
|
|
7
|
+
authorAccountAddress: string | null;
|
|
8
|
+
syncServerUri: string;
|
|
9
|
+
}>): Promise<void>;
|
|
10
|
+
export declare function sendAccountInboxMessage({ message, accountAddress, inboxId, encryptionPublicKey, signaturePrivateKey, authorAccountAddress, syncServerUri, }: Readonly<{
|
|
11
|
+
message: string;
|
|
12
|
+
accountAddress: string;
|
|
13
|
+
inboxId: string;
|
|
14
|
+
encryptionPublicKey: string;
|
|
15
|
+
signaturePrivateKey: string | null;
|
|
16
|
+
authorAccountAddress: string | null;
|
|
17
|
+
syncServerUri: string;
|
|
18
|
+
}>): Promise<void>;
|
|
19
|
+
//# sourceMappingURL=send-message.d.ts.map
|
|
@@ -0,0 +1,58 @@
|
|
|
1
|
+
import { prepareAccountInboxMessage, prepareSpaceInboxMessage } from './prepare-message.js';
|
|
2
|
+
export async function sendSpaceInboxMessage({
|
|
3
|
+
message,
|
|
4
|
+
spaceId,
|
|
5
|
+
inboxId,
|
|
6
|
+
encryptionPublicKey,
|
|
7
|
+
signaturePrivateKey,
|
|
8
|
+
authorAccountAddress,
|
|
9
|
+
syncServerUri
|
|
10
|
+
}) {
|
|
11
|
+
const messageToSend = await prepareSpaceInboxMessage({
|
|
12
|
+
message,
|
|
13
|
+
spaceId,
|
|
14
|
+
inboxId,
|
|
15
|
+
encryptionPublicKey,
|
|
16
|
+
signaturePrivateKey,
|
|
17
|
+
authorAccountAddress
|
|
18
|
+
});
|
|
19
|
+
const res = await fetch(new URL(`/spaces/${spaceId}/inboxes/${inboxId}/messages`, syncServerUri), {
|
|
20
|
+
method: 'POST',
|
|
21
|
+
headers: {
|
|
22
|
+
'Content-Type': 'application/json'
|
|
23
|
+
},
|
|
24
|
+
body: JSON.stringify(messageToSend)
|
|
25
|
+
});
|
|
26
|
+
if (!res.ok) {
|
|
27
|
+
throw new Error('Failed to send message');
|
|
28
|
+
}
|
|
29
|
+
}
|
|
30
|
+
export async function sendAccountInboxMessage({
|
|
31
|
+
message,
|
|
32
|
+
accountAddress,
|
|
33
|
+
inboxId,
|
|
34
|
+
encryptionPublicKey,
|
|
35
|
+
signaturePrivateKey,
|
|
36
|
+
authorAccountAddress,
|
|
37
|
+
syncServerUri
|
|
38
|
+
}) {
|
|
39
|
+
const messageToSend = await prepareAccountInboxMessage({
|
|
40
|
+
message,
|
|
41
|
+
accountAddress,
|
|
42
|
+
inboxId,
|
|
43
|
+
encryptionPublicKey,
|
|
44
|
+
signaturePrivateKey,
|
|
45
|
+
authorAccountAddress
|
|
46
|
+
});
|
|
47
|
+
const res = await fetch(new URL(`/accounts/${accountAddress}/inboxes/${inboxId}/messages`, syncServerUri), {
|
|
48
|
+
method: 'POST',
|
|
49
|
+
headers: {
|
|
50
|
+
'Content-Type': 'application/json'
|
|
51
|
+
},
|
|
52
|
+
body: JSON.stringify(messageToSend)
|
|
53
|
+
});
|
|
54
|
+
if (!res.ok) {
|
|
55
|
+
throw new Error('Failed to send message');
|
|
56
|
+
}
|
|
57
|
+
}
|
|
58
|
+
//# sourceMappingURL=send-message.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"send-message.js","names":["prepareAccountInboxMessage","prepareSpaceInboxMessage","sendSpaceInboxMessage","message","spaceId","inboxId","encryptionPublicKey","signaturePrivateKey","authorAccountAddress","syncServerUri","messageToSend","res","fetch","URL","method","headers","body","JSON","stringify","ok","Error","sendAccountInboxMessage","accountAddress"],"sources":["../../src/inboxes/send-message.ts"],"sourcesContent":[null],"mappings":"AAAA,SAASA,0BAA0B,EAAEC,wBAAwB,QAAQ,sBAAsB;AAE3F,OAAO,eAAeC,qBAAqBA,CAAC;EAC1CC,OAAO;EACPC,OAAO;EACPC,OAAO;EACPC,mBAAmB;EACnBC,mBAAmB;EACnBC,oBAAoB;EACpBC;AAAa,CASb;EACA,MAAMC,aAAa,GAAG,MAAMT,wBAAwB,CAAC;IACnDE,OAAO;IACPC,OAAO;IACPC,OAAO;IACPC,mBAAmB;IACnBC,mBAAmB;IACnBC;GACD,CAAC;EACF,MAAMG,GAAG,GAAG,MAAMC,KAAK,CAAC,IAAIC,GAAG,CAAC,WAAWT,OAAO,YAAYC,OAAO,WAAW,EAAEI,aAAa,CAAC,EAAE;IAChGK,MAAM,EAAE,MAAM;IACdC,OAAO,EAAE;MACP,cAAc,EAAE;KACjB;IACDC,IAAI,EAAEC,IAAI,CAACC,SAAS,CAACR,aAAa;GACnC,CAAC;EACF,IAAI,CAACC,GAAG,CAACQ,EAAE,EAAE;IACX,MAAM,IAAIC,KAAK,CAAC,wBAAwB,CAAC;EAC3C;AACF;AAEA,OAAO,eAAeC,uBAAuBA,CAAC;EAC5ClB,OAAO;EACPmB,cAAc;EACdjB,OAAO;EACPC,mBAAmB;EACnBC,mBAAmB;EACnBC,oBAAoB;EACpBC;AAAa,CASb;EACA,MAAMC,aAAa,GAAG,MAAMV,0BAA0B,CAAC;IACrDG,OAAO;IACPmB,cAAc;IACdjB,OAAO;IACPC,mBAAmB;IACnBC,mBAAmB;IACnBC;GACD,CAAC;EACF,MAAMG,GAAG,GAAG,MAAMC,KAAK,CAAC,IAAIC,GAAG,CAAC,aAAaS,cAAc,YAAYjB,OAAO,WAAW,EAAEI,aAAa,CAAC,EAAE;IACzGK,MAAM,EAAE,MAAM;IACdC,OAAO,EAAE;MACP,cAAc,EAAE;KACjB;IACDC,IAAI,EAAEC,IAAI,CAACC,SAAS,CAACR,aAAa;GACnC,CAAC;EACF,IAAI,CAACC,GAAG,CAACQ,EAAE,EAAE;IACX,MAAM,IAAIC,KAAK,CAAC,wBAAwB,CAAC;EAC3C;AACF","ignoreList":[]}
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
import * as Schema from 'effect/Schema';
|
|
2
|
+
export declare const InboxSenderAuthPolicy: Schema.Union<[Schema.Literal<["anonymous"]>, Schema.Literal<["optional_auth"]>, Schema.Literal<["requires_auth"]>]>;
|
|
3
|
+
export type InboxSenderAuthPolicy = Schema.Schema.Type<typeof InboxSenderAuthPolicy>;
|
|
4
|
+
//# sourceMappingURL=types.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/inboxes/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,MAAM,eAAe,CAAC;AAExC,eAAO,MAAM,qBAAqB,qHAIjC,CAAC;AAEF,MAAM,MAAM,qBAAqB,GAAG,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,OAAO,qBAAqB,CAAC,CAAC"}
|
|
@@ -0,0 +1,3 @@
|
|
|
1
|
+
import * as Schema from 'effect/Schema';
|
|
2
|
+
export const InboxSenderAuthPolicy = /*#__PURE__*/Schema.Union(/*#__PURE__*/Schema.Literal('anonymous'), /*#__PURE__*/Schema.Literal('optional_auth'), /*#__PURE__*/Schema.Literal('requires_auth'));
|
|
3
|
+
//# sourceMappingURL=types.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.js","names":["Schema","InboxSenderAuthPolicy","Union","Literal"],"sources":["../../src/inboxes/types.ts"],"sourcesContent":[null],"mappings":"AAAA,OAAO,KAAKA,MAAM,MAAM,eAAe;AAEvC,OAAO,MAAMC,qBAAqB,gBAAGD,MAAM,CAACE,KAAK,cAC/CF,MAAM,CAACG,OAAO,CAAC,WAAW,CAAC,eAC3BH,MAAM,CAACG,OAAO,CAAC,eAAe,CAAC,eAC/BH,MAAM,CAACG,OAAO,CAAC,eAAe,CAAC,CAChC","ignoreList":[]}
|
package/dist/index.d.ts
ADDED
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
export * as Connect from './connect/index.js';
|
|
2
|
+
export * as Entity from './entity/index.js';
|
|
3
|
+
export * as Identity from './identity/index.js';
|
|
4
|
+
export * as Inboxes from './inboxes/index.js';
|
|
5
|
+
export * as Key from './key/index.js';
|
|
6
|
+
export * as Messages from './messages/index.js';
|
|
7
|
+
export * as SpaceEvents from './space-events/index.js';
|
|
8
|
+
export * as SpaceInfo from './space-info/index.js';
|
|
9
|
+
export * as StoreConnect from './store-connect.js';
|
|
10
|
+
export * from './store.js';
|
|
11
|
+
export * as Type from './type/type.js';
|
|
12
|
+
export * from './types.js';
|
|
13
|
+
export * as Utils from './utils/index.js';
|
|
14
|
+
//# sourceMappingURL=index.d.ts.map
|
package/dist/index.js
ADDED
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
export * as Connect from './connect/index.js';
|
|
2
|
+
export * as Entity from './entity/index.js';
|
|
3
|
+
export * as Identity from './identity/index.js';
|
|
4
|
+
export * as Inboxes from './inboxes/index.js';
|
|
5
|
+
export * as Key from './key/index.js';
|
|
6
|
+
export * as Messages from './messages/index.js';
|
|
7
|
+
export * as SpaceEvents from './space-events/index.js';
|
|
8
|
+
export * as SpaceInfo from './space-info/index.js';
|
|
9
|
+
export * as StoreConnect from './store-connect.js';
|
|
10
|
+
export * from './store.js';
|
|
11
|
+
export * as Type from './type/type.js';
|
|
12
|
+
export * from './types.js';
|
|
13
|
+
export * as Utils from './utils/index.js';
|
|
14
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","names":["Connect","Entity","Identity","Inboxes","Key","Messages","SpaceEvents","SpaceInfo","StoreConnect","Type","Utils"],"sources":["../src/index.ts"],"sourcesContent":[null],"mappings":"AAAA,OAAO,KAAKA,OAAO,MAAM,oBAAoB;AAC7C,OAAO,KAAKC,MAAM,MAAM,mBAAmB;AAC3C,OAAO,KAAKC,QAAQ,MAAM,qBAAqB;AAC/C,OAAO,KAAKC,OAAO,MAAM,oBAAoB;AAC7C,OAAO,KAAKC,GAAG,MAAM,gBAAgB;AACrC,OAAO,KAAKC,QAAQ,MAAM,qBAAqB;AAC/C,OAAO,KAAKC,WAAW,MAAM,yBAAyB;AACtD,OAAO,KAAKC,SAAS,MAAM,uBAAuB;AAClD,OAAO,KAAKC,YAAY,MAAM,oBAAoB;AAClD,cAAc,YAAY;AAC1B,OAAO,KAAKC,IAAI,MAAM,gBAAgB;AACtC,cAAc,YAAY;AAC1B,OAAO,KAAKC,KAAK,MAAM,kBAAkB","ignoreList":[]}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
type Params = {
|
|
2
|
+
privateKey: Uint8Array;
|
|
3
|
+
publicKey: Uint8Array;
|
|
4
|
+
};
|
|
5
|
+
export declare function createKey({ privateKey, publicKey }: Params): {
|
|
6
|
+
key: Uint8Array;
|
|
7
|
+
keyBoxCiphertext: Uint8Array;
|
|
8
|
+
keyBoxNonce: Uint8Array;
|
|
9
|
+
};
|
|
10
|
+
export {};
|
|
11
|
+
//# sourceMappingURL=create-key.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"create-key.d.ts","sourceRoot":"","sources":["../../src/key/create-key.ts"],"names":[],"mappings":"AAGA,KAAK,MAAM,GAAG;IACZ,UAAU,EAAE,UAAU,CAAC;IACvB,SAAS,EAAE,UAAU,CAAC;CACvB,CAAC;AAEF,wBAAgB,SAAS,CAAC,EAAE,UAAU,EAAE,SAAS,EAAE,EAAE,MAAM,GAAG;IAC5D,GAAG,EAAE,UAAU,CAAC;IAChB,gBAAgB,EAAE,UAAU,CAAC;IAC7B,WAAW,EAAE,UAAU,CAAC;CACzB,CAcA"}
|