@iexec/web3mail 1.4.0 → 1.6.0-nightly-8729cd2
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/config/config.js +9 -1
- package/dist/config/config.js.map +1 -1
- package/dist/utils/subgraphQuery.js +6 -2
- package/dist/utils/subgraphQuery.js.map +1 -1
- package/dist/web3mail/IExecWeb3mail.d.ts +4 -2
- package/dist/web3mail/IExecWeb3mail.js +15 -0
- package/dist/web3mail/IExecWeb3mail.js.map +1 -1
- package/dist/web3mail/fetchMyContacts.d.ts +1 -1
- package/dist/web3mail/fetchMyContacts.js +2 -1
- package/dist/web3mail/fetchMyContacts.js.map +1 -1
- package/dist/web3mail/fetchUserContacts.d.ts +1 -1
- package/dist/web3mail/fetchUserContacts.js +20 -3
- package/dist/web3mail/fetchUserContacts.js.map +1 -1
- package/dist/web3mail/internalTypes.d.ts +4 -0
- package/dist/web3mail/sendEmail.d.ts +4 -3
- package/dist/web3mail/sendEmail.js +129 -187
- package/dist/web3mail/sendEmail.js.map +1 -1
- package/dist/web3mail/types.d.ts +24 -3
- package/package.json +3 -3
- package/src/config/config.ts +10 -1
- package/src/utils/subgraphQuery.ts +18 -14
- package/src/web3mail/IExecWeb3mail.ts +25 -2
- package/src/web3mail/fetchMyContacts.ts +2 -0
- package/src/web3mail/fetchUserContacts.ts +30 -15
- package/src/web3mail/internalTypes.ts +3 -0
- package/src/web3mail/sendEmail.ts +145 -219
- package/src/web3mail/types.ts +25 -3
package/dist/config/config.js
CHANGED
|
@@ -23,7 +23,15 @@ const CHAIN_CONFIG = {
|
|
|
23
23
|
ipfsGateway: 'https://ipfs-gateway.arbitrum-sepolia-testnet.iex.ec',
|
|
24
24
|
ipfsUploadUrl: 'https://ipfs-upload.arbitrum-sepolia-testnet.iex.ec',
|
|
25
25
|
whitelistSmartContract: '0x8d46d40840f1Aa2264F96184Ffadf04e5D573B9B',
|
|
26
|
-
|
|
26
|
+
},
|
|
27
|
+
42161: {
|
|
28
|
+
name: 'arbitrum-mainnet',
|
|
29
|
+
dappAddress: undefined, // ENS not supported on this network, address will be resolved from Compass
|
|
30
|
+
prodWorkerpoolAddress: '0x2C06263943180Cc024dAFfeEe15612DB6e5fD248',
|
|
31
|
+
dataProtectorSubgraph: 'https://thegraph.arbitrum.iex.ec/api/subgraphs/id/Ep5zs5zVr4tDiVuQJepUu51e5eWYJpka624X4DMBxe3u',
|
|
32
|
+
ipfsGateway: 'https://ipfs-gateway.arbitrum-mainnet.iex.ec',
|
|
33
|
+
ipfsUploadUrl: 'https://ipfs-upload.arbitrum-mainnet.iex.ec',
|
|
34
|
+
whitelistSmartContract: '0xD5054a18565c4a9E5c1aa3cEB53258bd59d4c78C',
|
|
27
35
|
},
|
|
28
36
|
};
|
|
29
37
|
export const getChainDefaultConfig = (chainId, options) => {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"config.js","sourceRoot":"","sources":["../../src/config/config.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,MAAM,4BAA4B,GAAG,CAAC,CAAC;AAC9C,MAAM,CAAC,MAAM,2BAA2B,GAAG,CAAC,CAAC;AAC7C,MAAM,CAAC,MAAM,kCAAkC,GAAG,CAAC,CAAC;AACpD,MAAM,CAAC,MAAM,oBAAoB,GAAG,YAAY,CAAC;AACjD,MAAM,CAAC,MAAM,mBAAmB,GAAG,KAAK,CAAC;AACzC,MAAM,CAAC,MAAM,iBAAiB,GAAG,4CAA4C,CAAC;AAE9E,MAAM,CAAC,MAAM,gBAAgB,GAAG,GAAG,CAAC;AAapC,MAAM,YAAY,GAAgC;IAChD,GAAG,EAAE;QACH,IAAI,EAAE,WAAW;QACjB,WAAW,EAAE,yBAAyB;QACtC,qBAAqB,EAAE,wCAAwC;QAC/D,qBAAqB,EACnB,mEAAmE;QACrE,aAAa,EAAE,6CAA6C;QAC5D,WAAW,EAAE,0CAA0C;QACvD,sBAAsB,EAAE,4CAA4C;KACrE;IACD,MAAM,EAAE;QACN,IAAI,EAAE,0BAA0B;QAChC,WAAW,EAAE,SAAS,EAAE,2EAA2E;QACnG,qBAAqB,EAAE,4CAA4C;QACnE,qBAAqB,EACnB,+GAA+G;QACjH,WAAW,EAAE,sDAAsD;QACnE,aAAa,EAAE,qDAAqD;QACpE,sBAAsB,EAAE,4CAA4C;
|
|
1
|
+
{"version":3,"file":"config.js","sourceRoot":"","sources":["../../src/config/config.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,MAAM,4BAA4B,GAAG,CAAC,CAAC;AAC9C,MAAM,CAAC,MAAM,2BAA2B,GAAG,CAAC,CAAC;AAC7C,MAAM,CAAC,MAAM,kCAAkC,GAAG,CAAC,CAAC;AACpD,MAAM,CAAC,MAAM,oBAAoB,GAAG,YAAY,CAAC;AACjD,MAAM,CAAC,MAAM,mBAAmB,GAAG,KAAK,CAAC;AACzC,MAAM,CAAC,MAAM,iBAAiB,GAAG,4CAA4C,CAAC;AAE9E,MAAM,CAAC,MAAM,gBAAgB,GAAG,GAAG,CAAC;AAapC,MAAM,YAAY,GAAgC;IAChD,GAAG,EAAE;QACH,IAAI,EAAE,WAAW;QACjB,WAAW,EAAE,yBAAyB;QACtC,qBAAqB,EAAE,wCAAwC;QAC/D,qBAAqB,EACnB,mEAAmE;QACrE,aAAa,EAAE,6CAA6C;QAC5D,WAAW,EAAE,0CAA0C;QACvD,sBAAsB,EAAE,4CAA4C;KACrE;IACD,MAAM,EAAE;QACN,IAAI,EAAE,0BAA0B;QAChC,WAAW,EAAE,SAAS,EAAE,2EAA2E;QACnG,qBAAqB,EAAE,4CAA4C;QACnE,qBAAqB,EACnB,+GAA+G;QACjH,WAAW,EAAE,sDAAsD;QACnE,aAAa,EAAE,qDAAqD;QACpE,sBAAsB,EAAE,4CAA4C;KACrE;IACD,KAAK,EAAE;QACL,IAAI,EAAE,kBAAkB;QACxB,WAAW,EAAE,SAAS,EAAE,2EAA2E;QACnG,qBAAqB,EAAE,4CAA4C;QACnE,qBAAqB,EACnB,gGAAgG;QAClG,WAAW,EAAE,8CAA8C;QAC3D,aAAa,EAAE,6CAA6C;QAC5D,sBAAsB,EAAE,4CAA4C;KACrE;CACF,CAAC;AAEF,MAAM,CAAC,MAAM,qBAAqB,GAAG,CACnC,OAAe,EACf,OAAiD,EAC7B,EAAE;IACtB,MAAM,MAAM,GAAG,YAAY,CAAC,OAAO,CAAC,CAAC;IAErC,IAAI,CAAC,MAAM,EAAE,CAAC;QACZ,OAAO,IAAI,CAAC;IACd,CAAC;IAED,IAAI,MAAM,CAAC,cAAc,IAAI,CAAC,OAAO,EAAE,yBAAyB,EAAE,CAAC;QACjE,OAAO,IAAI,CAAC;IACd,CAAC;IAED,OAAO,MAAM,CAAC;AAChB,CAAC,CAAC"}
|
|
@@ -51,7 +51,8 @@ export const getValidContact = async (graphQLClient, contacts) => {
|
|
|
51
51
|
// Convert contacts array into a map where the key is the contact's address
|
|
52
52
|
const contactsMap = new Map(contacts.map((contact) => [contact.address, contact]));
|
|
53
53
|
// Convert protectedData[] into Contact[] using the map for constant time lookups
|
|
54
|
-
return protectedDataList
|
|
54
|
+
return protectedDataList
|
|
55
|
+
.map(({ id, name }) => {
|
|
55
56
|
const contact = contactsMap.get(id);
|
|
56
57
|
if (contact) {
|
|
57
58
|
return {
|
|
@@ -62,9 +63,12 @@ export const getValidContact = async (graphQLClient, contacts) => {
|
|
|
62
63
|
owner: contact.owner,
|
|
63
64
|
accessGrantTimestamp: contact.accessGrantTimestamp,
|
|
64
65
|
isUserStrict: contact.isUserStrict,
|
|
66
|
+
grantedAccess: contact.grantedAccess,
|
|
65
67
|
};
|
|
66
68
|
}
|
|
67
|
-
|
|
69
|
+
return null;
|
|
70
|
+
})
|
|
71
|
+
.filter((contact) => contact !== null && contact !== undefined);
|
|
68
72
|
}
|
|
69
73
|
catch (error) {
|
|
70
74
|
throw new WorkflowError({
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"subgraphQuery.js","sourceRoot":"","sources":["../../src/utils/subgraphQuery.ts"],"names":[],"mappings":"AAAA,OAAO,EAAiB,GAAG,EAAE,MAAM,iBAAiB,CAAC;AAErD,OAAO,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAM5C,MAAM,uBAAuB,GAAG,GAAG,CAAA;;;;;;;;;;;;;;;;;;;;;;CAsBlC,CAAC;AAEF,MAAM,CAAC,MAAM,eAAe,GAAG,KAAK,EAClC,aAA4B,EAC5B,QAAiC,EACb,EAAE;IACtB,IAAI,QAAQ,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAC1B,OAAO,EAAE,CAAC;IACZ,CAAC;IACD,IAAI,CAAC;QACH,qBAAqB;QACrB,MAAM,iBAAiB,GAAG,QAAQ,CAAC,GAAG,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;QAErE,aAAa;QACb,MAAM,iBAAiB,GAAyB,EAAE,CAAC;QACnD,IAAI,KAAK,GAAG,CAAC,CAAC;QACd,MAAM,KAAK,GAAG,IAAI,CAAC;QACnB,IAAI,kBAAkB,GAAG,IAAI,CAAC;QAE9B,GAAG,CAAC;YACF,MAAM,SAAS,GAAG;gBAChB,cAAc,EAAE,CAAC,cAAc,CAAC;gBAChC,EAAE,EAAE,iBAAiB;gBACrB,KAAK;gBACL,KAAK;aACN,CAAC;YAEF,MAAM,wBAAwB,GAC5B,MAAM,aAAa,CAAC,OAAO,CAAC,uBAAuB,EAAE,SAAS,CAAC,CAAC;YAElE,MAAM,EAAE,cAAc,EAAE,GAAG,wBAAwB,CAAC;YACpD,iBAAiB,CAAC,IAAI,CAAC,GAAG,cAAc,CAAC,CAAC;YAE1C,kBAAkB,GAAG,cAAc,CAAC,MAAM,KAAK,KAAK,CAAC;YACrD,KAAK,IAAI,KAAK,CAAC;QACjB,CAAC,QAAQ,kBAAkB,EAAE;QAE7B,2EAA2E;QAC3E,MAAM,WAAW,GAAG,IAAI,GAAG,CACzB,QAAQ,CAAC,GAAG,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC,OAAO,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC,CACtD,CAAC;QAEF,iFAAiF;QACjF,OAAO,iBAAiB,
|
|
1
|
+
{"version":3,"file":"subgraphQuery.js","sourceRoot":"","sources":["../../src/utils/subgraphQuery.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import { AbstractProvider, AbstractSigner, Eip1193Provider } from 'ethers';
|
|
2
|
-
import {
|
|
2
|
+
import { ProcessBulkRequestResponse } from '@iexec/dataprotector';
|
|
3
|
+
import { Contact, FetchUserContactsParams, SendEmailParams, Web3MailConfigOptions, SendEmailSingleResponse, Web3SignerProvider, FetchMyContactsParams } from './types.js';
|
|
3
4
|
type EthersCompatibleProvider = AbstractProvider | AbstractSigner | Eip1193Provider | Web3SignerProvider | string;
|
|
4
5
|
export declare class IExecWeb3mail {
|
|
5
6
|
private dappAddressOrENS;
|
|
@@ -9,6 +10,7 @@ export declare class IExecWeb3mail {
|
|
|
9
10
|
private ipfsGateway;
|
|
10
11
|
private defaultWorkerpool;
|
|
11
12
|
private iexec;
|
|
13
|
+
private dataProtector;
|
|
12
14
|
private initPromise;
|
|
13
15
|
private ethProvider;
|
|
14
16
|
private options;
|
|
@@ -16,7 +18,7 @@ export declare class IExecWeb3mail {
|
|
|
16
18
|
init(): Promise<void>;
|
|
17
19
|
fetchMyContacts(args?: FetchMyContactsParams): Promise<Contact[]>;
|
|
18
20
|
fetchUserContacts(args: FetchUserContactsParams): Promise<Contact[]>;
|
|
19
|
-
sendEmail(args: SendEmailParams): Promise<
|
|
21
|
+
sendEmail(args: SendEmailParams): Promise<ProcessBulkRequestResponse | SendEmailSingleResponse>;
|
|
20
22
|
private resolveConfig;
|
|
21
23
|
}
|
|
22
24
|
export {};
|
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import { IExec } from 'iexec';
|
|
2
|
+
import { IExecDataProtectorCore, } from '@iexec/dataprotector';
|
|
2
3
|
import { GraphQLClient } from 'graphql-request';
|
|
3
4
|
import { fetchUserContacts } from './fetchUserContacts.js';
|
|
4
5
|
import { fetchMyContacts } from './fetchMyContacts.js';
|
|
@@ -15,6 +16,7 @@ export class IExecWeb3mail {
|
|
|
15
16
|
ipfsGateway;
|
|
16
17
|
defaultWorkerpool;
|
|
17
18
|
iexec;
|
|
19
|
+
dataProtector;
|
|
18
20
|
initPromise = null;
|
|
19
21
|
ethProvider;
|
|
20
22
|
options;
|
|
@@ -32,6 +34,7 @@ export class IExecWeb3mail {
|
|
|
32
34
|
this.ipfsGateway = config.ipfsGateway;
|
|
33
35
|
this.defaultWorkerpool = config.defaultWorkerpool;
|
|
34
36
|
this.iexec = config.iexec;
|
|
37
|
+
this.dataProtector = config.dataProtector;
|
|
35
38
|
});
|
|
36
39
|
}
|
|
37
40
|
return this.initPromise;
|
|
@@ -64,6 +67,7 @@ export class IExecWeb3mail {
|
|
|
64
67
|
...args,
|
|
65
68
|
workerpoolAddressOrEns: args.workerpoolAddressOrEns || this.defaultWorkerpool,
|
|
66
69
|
iexec: this.iexec,
|
|
70
|
+
dataProtector: this.dataProtector,
|
|
67
71
|
ipfsNode: this.ipfsNode,
|
|
68
72
|
ipfsGateway: this.ipfsGateway,
|
|
69
73
|
dappAddressOrENS: this.dappAddressOrENS,
|
|
@@ -119,6 +123,16 @@ export class IExecWeb3mail {
|
|
|
119
123
|
catch (error) {
|
|
120
124
|
throw new Error(`Failed to create GraphQLClient: ${error.message}`);
|
|
121
125
|
}
|
|
126
|
+
const dataProtector = new IExecDataProtectorCore(this.ethProvider, {
|
|
127
|
+
iexecOptions: {
|
|
128
|
+
ipfsGatewayURL: ipfsGateway,
|
|
129
|
+
...this.options?.iexecOptions,
|
|
130
|
+
allowExperimentalNetworks: this.options.allowExperimentalNetworks,
|
|
131
|
+
},
|
|
132
|
+
ipfsGateway,
|
|
133
|
+
ipfsNode,
|
|
134
|
+
subgraphUrl,
|
|
135
|
+
});
|
|
122
136
|
return {
|
|
123
137
|
dappAddressOrENS,
|
|
124
138
|
dappWhitelistAddress: dappWhitelistAddress.toLowerCase(),
|
|
@@ -127,6 +141,7 @@ export class IExecWeb3mail {
|
|
|
127
141
|
ipfsNode,
|
|
128
142
|
ipfsGateway,
|
|
129
143
|
iexec,
|
|
144
|
+
dataProtector,
|
|
130
145
|
};
|
|
131
146
|
}
|
|
132
147
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"IExecWeb3mail.js","sourceRoot":"","sources":["../../src/web3mail/IExecWeb3mail.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,KAAK,EAAE,MAAM,OAAO,CAAC;AAC9B,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAChD,OAAO,EAAE,iBAAiB,EAAE,MAAM,wBAAwB,CAAC;AAC3D,OAAO,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAC;AACvD,OAAO,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAW3C,OAAO,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAC;AACzD,OAAO,EAAE,sBAAsB,EAAE,MAAM,wBAAwB,CAAC;AAChE,OAAO,EAAE,qBAAqB,EAAE,MAAM,qBAAqB,CAAC;AAC5D,OAAO,EAAE,6BAA6B,EAAE,MAAM,2CAA2C,CAAC;
|
|
1
|
+
{"version":3,"file":"IExecWeb3mail.js","sourceRoot":"","sources":["../../src/web3mail/IExecWeb3mail.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,KAAK,EAAE,MAAM,OAAO,CAAC;AAC9B,OAAO,EACL,sBAAsB,GAEvB,MAAM,sBAAsB,CAAC;AAC9B,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAChD,OAAO,EAAE,iBAAiB,EAAE,MAAM,wBAAwB,CAAC;AAC3D,OAAO,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAC;AACvD,OAAO,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAW3C,OAAO,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAC;AACzD,OAAO,EAAE,sBAAsB,EAAE,MAAM,wBAAwB,CAAC;AAChE,OAAO,EAAE,qBAAqB,EAAE,MAAM,qBAAqB,CAAC;AAC5D,OAAO,EAAE,6BAA6B,EAAE,MAAM,2CAA2C,CAAC;AAoB1F,MAAM,OAAO,aAAa;IAChB,gBAAgB,CAAgB;IAEhC,oBAAoB,CAAgB;IAEpC,aAAa,CAAiB;IAE9B,QAAQ,CAAU;IAElB,WAAW,CAAU;IAErB,iBAAiB,CAAU;IAE3B,KAAK,CAAS;IAEd,aAAa,CAA0B;IAEvC,WAAW,GAAyB,IAAI,CAAC;IAEzC,WAAW,CAA2B;IAEtC,OAAO,CAAwB;IAEvC,YACE,WAAsC,EACtC,OAA+B;QAE/B,IAAI,CAAC,WAAW,GAAG,WAAW,IAAI,WAAW,CAAC;QAC9C,IAAI,CAAC,OAAO,GAAG,OAAO,IAAI,EAAE,CAAC;IAC/B,CAAC;IAED,KAAK,CAAC,IAAI;QACR,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC;YACtB,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC,aAAa,EAAE,CAAC,IAAI,CAAC,CAAC,MAAM,EAAE,EAAE;gBACtD,IAAI,CAAC,gBAAgB,GAAG,MAAM,CAAC,gBAAgB,CAAC;gBAChD,IAAI,CAAC,oBAAoB,GAAG,MAAM,CAAC,oBAAoB,CAAC;gBACxD,IAAI,CAAC,aAAa,GAAG,MAAM,CAAC,aAAa,CAAC;gBAC1C,IAAI,CAAC,QAAQ,GAAG,MAAM,CAAC,QAAQ,CAAC;gBAChC,IAAI,CAAC,WAAW,GAAG,MAAM,CAAC,WAAW,CAAC;gBACtC,IAAI,CAAC,iBAAiB,GAAG,MAAM,CAAC,iBAAiB,CAAC;gBAClD,IAAI,CAAC,KAAK,GAAG,MAAM,CAAC,KAAK,CAAC;gBAC1B,IAAI,CAAC,aAAa,GAAG,MAAM,CAAC,aAAa,CAAC;YAC5C,CAAC,CAAC,CAAC;QACL,CAAC;QACD,OAAO,IAAI,CAAC,WAAW,CAAC;IAC1B,CAAC;IAED,KAAK,CAAC,eAAe,CAAC,IAA4B;QAChD,MAAM,IAAI,CAAC,IAAI,EAAE,CAAC;QAClB,MAAM,eAAe,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QAElC,OAAO,eAAe,CAAC;YACrB,GAAG,IAAI;YACP,KAAK,EAAE,IAAI,CAAC,KAAK;YACjB,aAAa,EAAE,IAAI,CAAC,aAAa;YACjC,gBAAgB,EAAE,IAAI,CAAC,gBAAgB;YACvC,oBAAoB,EAAE,IAAI,CAAC,oBAAoB;SAChD,CAAC,CAAC;IACL,CAAC;IAED,KAAK,CAAC,iBAAiB,CAAC,IAA6B;QACnD,MAAM,IAAI,CAAC,IAAI,EAAE,CAAC;QAElB,OAAO,iBAAiB,CAAC;YACvB,GAAG,IAAI;YACP,KAAK,EAAE,IAAI,CAAC,KAAK;YACjB,aAAa,EAAE,IAAI,CAAC,aAAa;YACjC,gBAAgB,EAAE,IAAI,CAAC,gBAAgB;YACvC,oBAAoB,EAAE,IAAI,CAAC,oBAAoB;SAChD,CAAC,CAAC;IACL,CAAC;IAED,KAAK,CAAC,SAAS,CACb,IAAqB;QAErB,MAAM,IAAI,CAAC,IAAI,EAAE,CAAC;QAClB,MAAM,eAAe,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QAClC,OAAO,SAAS,CAAC;YACf,GAAG,IAAI;YACP,sBAAsB,EACpB,IAAI,CAAC,sBAAsB,IAAI,IAAI,CAAC,iBAAiB;YACvD,KAAK,EAAE,IAAI,CAAC,KAAK;YACjB,aAAa,EAAE,IAAI,CAAC,aAAa;YACjC,QAAQ,EAAE,IAAI,CAAC,QAAQ;YACvB,WAAW,EAAE,IAAI,CAAC,WAAW;YAC7B,gBAAgB,EAAE,IAAI,CAAC,gBAAgB;YACvC,oBAAoB,EAAE,IAAI,CAAC,oBAAoB;YAC/C,aAAa,EAAE,IAAI,CAAC,aAAa;SAClC,CAAC,CAAC;IACL,CAAC;IAEO,KAAK,CAAC,aAAa;QACzB,MAAM,OAAO,GAAG,MAAM,sBAAsB,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;QAC/D,MAAM,kBAAkB,GAAG,qBAAqB,CAAC,OAAO,EAAE;YACxD,yBAAyB,EAAE,IAAI,CAAC,OAAO,CAAC,yBAAyB;SAClE,CAAC,CAAC;QAEH,MAAM,WAAW,GACf,IAAI,CAAC,OAAO,EAAE,WAAW,IAAI,kBAAkB,EAAE,WAAW,CAAC;QAE/D,IAAI,KAAY,EAAE,aAA4B,CAAC;QAE/C,IAAI,CAAC;YACH,KAAK,GAAG,IAAI,KAAK,CACf,EAAE,WAAW,EAAE,IAAI,CAAC,WAAW,EAAE,EACjC;gBACE,cAAc,EAAE,WAAW;gBAC3B,GAAG,IAAI,CAAC,OAAO,EAAE,YAAY;gBAC7B,yBAAyB,EAAE,IAAI,CAAC,OAAO,CAAC,yBAAyB;aAClE,CACF,CAAC;QACJ,CAAC;QAAC,OAAO,CAAM,EAAE,CAAC;YAChB,MAAM,IAAI,KAAK,CAAC,4BAA4B,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC;QAC3D,CAAC;QAED,MAAM,WAAW,GACf,IAAI,CAAC,OAAO,EAAE,qBAAqB;YACnC,kBAAkB,EAAE,qBAAqB,CAAC;QAC5C,MAAM,gBAAgB,GACpB,IAAI,CAAC,OAAO,EAAE,gBAAgB;YAC9B,kBAAkB,EAAE,WAAW;YAC/B,CAAC,MAAM,6BAA6B,CAClC,MAAM,KAAK,CAAC,MAAM,CAAC,iBAAiB,EAAE,EACtC,OAAO,CACR,CAAC,CAAC;QACL,MAAM,oBAAoB,GACxB,IAAI,CAAC,OAAO,EAAE,oBAAoB;YAClC,kBAAkB,EAAE,sBAAsB,CAAC;QAC7C,MAAM,iBAAiB,GAAG,kBAAkB,EAAE,qBAAqB,CAAC;QACpE,MAAM,QAAQ,GACZ,IAAI,CAAC,OAAO,EAAE,QAAQ,IAAI,kBAAkB,EAAE,aAAa,CAAC;QAE9D,MAAM,OAAO,GAAG,EAAE,CAAC;QACnB,IAAI,CAAC,WAAW;YAAE,OAAO,CAAC,IAAI,CAAC,uBAAuB,CAAC,CAAC;QACxD,IAAI,CAAC,gBAAgB;YAAE,OAAO,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;QACnD,IAAI,CAAC,oBAAoB;YAAE,OAAO,CAAC,IAAI,CAAC,wBAAwB,CAAC,CAAC;QAClE,IAAI,CAAC,WAAW;YAAE,OAAO,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;QAC9C,IAAI,CAAC,iBAAiB;YAAE,OAAO,CAAC,IAAI,CAAC,uBAAuB,CAAC,CAAC;QAC9D,IAAI,CAAC,QAAQ;YAAE,OAAO,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC;QAE7C,IAAI,OAAO,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACvB,MAAM,IAAI,KAAK,CACb,8CAA8C,OAAO,KAAK,OAAO,CAAC,IAAI,CACpE,IAAI,CACL,EAAE,CACJ,CAAC;QACJ,CAAC;QAED,IAAI,CAAC;YACH,aAAa,GAAG,IAAI,aAAa,CAAC,WAAW,CAAC,CAAC;QACjD,CAAC;QAAC,OAAO,KAAU,EAAE,CAAC;YACpB,MAAM,IAAI,KAAK,CAAC,mCAAmC,KAAK,CAAC,OAAO,EAAE,CAAC,CAAC;QACtE,CAAC;QAED,MAAM,aAAa,GAAG,IAAI,sBAAsB,CAAC,IAAI,CAAC,WAAW,EAAE;YACjE,YAAY,EAAE;gBACZ,cAAc,EAAE,WAAW;gBAC3B,GAAG,IAAI,CAAC,OAAO,EAAE,YAAY;gBAC7B,yBAAyB,EAAE,IAAI,CAAC,OAAO,CAAC,yBAAyB;aAClE;YACD,WAAW;YACX,QAAQ;YACR,WAAW;SACZ,CAAC,CAAC;QAEH,OAAO;YACL,gBAAgB;YAChB,oBAAoB,EAAE,oBAAoB,CAAC,WAAW,EAAE;YACxD,iBAAiB;YACjB,aAAa;YACb,QAAQ;YACR,WAAW;YACX,KAAK;YACL,aAAa;SACd,CAAC;IACJ,CAAC;CACF"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
1
|
import { DappAddressConsumer, DappWhitelistAddressConsumer, IExecConsumer, SubgraphConsumer } from './internalTypes.js';
|
|
2
2
|
import { Contact, FetchMyContactsParams } from './types.js';
|
|
3
3
|
export type FetchMyContacts = typeof fetchMyContacts;
|
|
4
|
-
export declare const fetchMyContacts: ({ graphQLClient, iexec, dappAddressOrENS, dappWhitelistAddress, isUserStrict, }: IExecConsumer & SubgraphConsumer & DappAddressConsumer & DappWhitelistAddressConsumer & FetchMyContactsParams) => Promise<Contact[]>;
|
|
4
|
+
export declare const fetchMyContacts: ({ graphQLClient, iexec, dappAddressOrENS, dappWhitelistAddress, isUserStrict, bulkOnly, }: IExecConsumer & SubgraphConsumer & DappAddressConsumer & DappWhitelistAddressConsumer & FetchMyContactsParams) => Promise<Contact[]>;
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { booleanSchema, throwIfMissing } from '../utils/validators.js';
|
|
2
2
|
import { fetchUserContacts } from './fetchUserContacts.js';
|
|
3
|
-
export const fetchMyContacts = async ({ graphQLClient = throwIfMissing(), iexec = throwIfMissing(), dappAddressOrENS = throwIfMissing(), dappWhitelistAddress = throwIfMissing(), isUserStrict = false, }) => {
|
|
3
|
+
export const fetchMyContacts = async ({ graphQLClient = throwIfMissing(), iexec = throwIfMissing(), dappAddressOrENS = throwIfMissing(), dappWhitelistAddress = throwIfMissing(), isUserStrict = false, bulkOnly = false, }) => {
|
|
4
4
|
const vIsUserStrict = booleanSchema()
|
|
5
5
|
.label('isUserStrict')
|
|
6
6
|
.validateSync(isUserStrict);
|
|
@@ -12,6 +12,7 @@ export const fetchMyContacts = async ({ graphQLClient = throwIfMissing(), iexec
|
|
|
12
12
|
dappWhitelistAddress,
|
|
13
13
|
userAddress,
|
|
14
14
|
isUserStrict: vIsUserStrict,
|
|
15
|
+
bulkOnly,
|
|
15
16
|
});
|
|
16
17
|
};
|
|
17
18
|
//# sourceMappingURL=fetchMyContacts.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"fetchMyContacts.js","sourceRoot":"","sources":["../../src/web3mail/fetchMyContacts.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,cAAc,EAAE,MAAM,wBAAwB,CAAC;AACvE,OAAO,EAAE,iBAAiB,EAAE,MAAM,wBAAwB,CAAC;AAW3D,MAAM,CAAC,MAAM,eAAe,GAAG,KAAK,EAAE,EACpC,aAAa,GAAG,cAAc,EAAE,EAChC,KAAK,GAAG,cAAc,EAAE,EACxB,gBAAgB,GAAG,cAAc,EAAE,EACnC,oBAAoB,GAAG,cAAc,EAAE,EACvC,YAAY,GAAG,KAAK,
|
|
1
|
+
{"version":3,"file":"fetchMyContacts.js","sourceRoot":"","sources":["../../src/web3mail/fetchMyContacts.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,cAAc,EAAE,MAAM,wBAAwB,CAAC;AACvE,OAAO,EAAE,iBAAiB,EAAE,MAAM,wBAAwB,CAAC;AAW3D,MAAM,CAAC,MAAM,eAAe,GAAG,KAAK,EAAE,EACpC,aAAa,GAAG,cAAc,EAAE,EAChC,KAAK,GAAG,cAAc,EAAE,EACxB,gBAAgB,GAAG,cAAc,EAAE,EACnC,oBAAoB,GAAG,cAAc,EAAE,EACvC,YAAY,GAAG,KAAK,EACpB,QAAQ,GAAG,KAAK,GAKK,EAAsB,EAAE;IAC7C,MAAM,aAAa,GAAG,aAAa,EAAE;SAClC,KAAK,CAAC,cAAc,CAAC;SACrB,YAAY,CAAC,YAAY,CAAC,CAAC;IAE9B,MAAM,WAAW,GAAG,MAAM,KAAK,CAAC,MAAM,CAAC,UAAU,EAAE,CAAC;IACpD,OAAO,iBAAiB,CAAC;QACvB,KAAK;QACL,aAAa;QACb,gBAAgB;QAChB,oBAAoB;QACpB,WAAW;QACX,YAAY,EAAE,aAAa;QAC3B,QAAQ;KACT,CAAC,CAAC;AACL,CAAC,CAAC"}
|
|
@@ -1,3 +1,3 @@
|
|
|
1
1
|
import { Contact, FetchUserContactsParams } from './types.js';
|
|
2
2
|
import { DappAddressConsumer, DappWhitelistAddressConsumer, IExecConsumer, SubgraphConsumer } from './internalTypes.js';
|
|
3
|
-
export declare const fetchUserContacts: ({ graphQLClient, iexec, dappAddressOrENS, dappWhitelistAddress, userAddress, isUserStrict, }: IExecConsumer & SubgraphConsumer & DappAddressConsumer & DappWhitelistAddressConsumer & FetchUserContactsParams) => Promise<Contact[]>;
|
|
3
|
+
export declare const fetchUserContacts: ({ graphQLClient, iexec, dappAddressOrENS, dappWhitelistAddress, userAddress, isUserStrict, bulkOnly, }: IExecConsumer & SubgraphConsumer & DappAddressConsumer & DappWhitelistAddressConsumer & FetchUserContactsParams) => Promise<Contact[]>;
|
|
@@ -4,7 +4,7 @@ import { handleIfProtocolError, WorkflowError } from '../utils/errors.js';
|
|
|
4
4
|
import { autoPaginateRequest } from '../utils/paginate.js';
|
|
5
5
|
import { getValidContact } from '../utils/subgraphQuery.js';
|
|
6
6
|
import { addressOrEnsSchema, addressSchema, booleanSchema, isEnsTest, throwIfMissing, } from '../utils/validators.js';
|
|
7
|
-
export const fetchUserContacts = async ({ graphQLClient = throwIfMissing(), iexec = throwIfMissing(), dappAddressOrENS = throwIfMissing(), dappWhitelistAddress = throwIfMissing(), userAddress, isUserStrict = false, }) => {
|
|
7
|
+
export const fetchUserContacts = async ({ graphQLClient = throwIfMissing(), iexec = throwIfMissing(), dappAddressOrENS = throwIfMissing(), dappWhitelistAddress = throwIfMissing(), userAddress, isUserStrict = false, bulkOnly = false, }) => {
|
|
8
8
|
const vDappAddressOrENS = addressOrEnsSchema()
|
|
9
9
|
.required()
|
|
10
10
|
.label('dappAddressOrENS')
|
|
@@ -20,6 +20,7 @@ export const fetchUserContacts = async ({ graphQLClient = throwIfMissing(), iexe
|
|
|
20
20
|
const vIsUserStrict = booleanSchema()
|
|
21
21
|
.label('isUserStrict')
|
|
22
22
|
.validateSync(isUserStrict);
|
|
23
|
+
const vBulkOnly = booleanSchema().label('bulkOnly').validateSync(bulkOnly);
|
|
23
24
|
try {
|
|
24
25
|
const [dappOrders, whitelistOrders] = await Promise.all([
|
|
25
26
|
fetchAllOrdersByApp({
|
|
@@ -27,12 +28,14 @@ export const fetchUserContacts = async ({ graphQLClient = throwIfMissing(), iexe
|
|
|
27
28
|
userAddress: vUserAddress,
|
|
28
29
|
appAddress: vDappAddressOrENS,
|
|
29
30
|
isUserStrict: vIsUserStrict,
|
|
31
|
+
bulkOnly: vBulkOnly,
|
|
30
32
|
}),
|
|
31
33
|
fetchAllOrdersByApp({
|
|
32
34
|
iexec,
|
|
33
35
|
userAddress: vUserAddress,
|
|
34
36
|
appAddress: vDappWhitelistAddress,
|
|
35
37
|
isUserStrict: vIsUserStrict,
|
|
38
|
+
bulkOnly: vBulkOnly,
|
|
36
39
|
}),
|
|
37
40
|
]);
|
|
38
41
|
const orders = dappOrders.concat(whitelistOrders);
|
|
@@ -53,6 +56,18 @@ export const fetchUserContacts = async ({ graphQLClient = throwIfMissing(), iexe
|
|
|
53
56
|
accessPrice: order.order.datasetprice,
|
|
54
57
|
accessGrantTimestamp: order.publicationTimestamp,
|
|
55
58
|
isUserStrict: order.order.requesterrestrict !== ZeroAddress,
|
|
59
|
+
grantedAccess: {
|
|
60
|
+
dataset: order.order.dataset,
|
|
61
|
+
datasetprice: order.order.datasetprice.toString(),
|
|
62
|
+
volume: order.order.volume.toString(),
|
|
63
|
+
tag: order.order.tag,
|
|
64
|
+
apprestrict: order.order.apprestrict,
|
|
65
|
+
workerpoolrestrict: order.order.workerpoolrestrict,
|
|
66
|
+
requesterrestrict: order.order.requesterrestrict,
|
|
67
|
+
salt: order.order.salt,
|
|
68
|
+
sign: order.order.sign,
|
|
69
|
+
remainingAccess: order.remaining,
|
|
70
|
+
},
|
|
56
71
|
};
|
|
57
72
|
myContacts.push(contact);
|
|
58
73
|
}
|
|
@@ -69,12 +84,14 @@ export const fetchUserContacts = async ({ graphQLClient = throwIfMissing(), iexe
|
|
|
69
84
|
});
|
|
70
85
|
}
|
|
71
86
|
};
|
|
72
|
-
async function fetchAllOrdersByApp({ iexec, userAddress, appAddress, isUserStrict, }) {
|
|
73
|
-
const ordersFirstPage = iexec.orderbook.fetchDatasetOrderbook(
|
|
87
|
+
async function fetchAllOrdersByApp({ iexec, userAddress, appAddress, isUserStrict, bulkOnly, }) {
|
|
88
|
+
const ordersFirstPage = iexec.orderbook.fetchDatasetOrderbook({
|
|
89
|
+
dataset: ANY_DATASET_ADDRESS,
|
|
74
90
|
app: appAddress,
|
|
75
91
|
requester: userAddress,
|
|
76
92
|
isAppStrict: true,
|
|
77
93
|
isRequesterStrict: isUserStrict,
|
|
94
|
+
bulkOnly,
|
|
78
95
|
// Use maxPageSize here to avoid too many round-trips (we want everything anyway)
|
|
79
96
|
pageSize: 1000,
|
|
80
97
|
});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"fetchUserContacts.js","sourceRoot":"","sources":["../../src/web3mail/fetchUserContacts.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,WAAW,EAAE,MAAM,QAAQ,CAAC;AAErC,OAAO,EAAE,mBAAmB,EAAE,MAAM,qBAAqB,CAAC;AAC1D,OAAO,EAAE,qBAAqB,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AAC1E,OAAO,EAAE,mBAAmB,EAAE,MAAM,sBAAsB,CAAC;AAC3D,OAAO,EAAE,eAAe,EAAE,MAAM,2BAA2B,CAAC;AAC5D,OAAO,EACL,kBAAkB,EAClB,aAAa,EACb,aAAa,EACb,SAAS,EACT,cAAc,GACf,MAAM,wBAAwB,CAAC;AAShC,MAAM,CAAC,MAAM,iBAAiB,GAAG,KAAK,EAAE,EACtC,aAAa,GAAG,cAAc,EAAE,EAChC,KAAK,GAAG,cAAc,EAAE,EACxB,gBAAgB,GAAG,cAAc,EAAE,EACnC,oBAAoB,GAAG,cAAc,EAAE,EACvC,WAAW,EACX,YAAY,GAAG,KAAK,
|
|
1
|
+
{"version":3,"file":"fetchUserContacts.js","sourceRoot":"","sources":["../../src/web3mail/fetchUserContacts.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import { IExec } from 'iexec';
|
|
2
2
|
import { AddressOrENS } from './types.js';
|
|
3
3
|
import { GraphQLClient } from 'graphql-request';
|
|
4
|
+
import { IExecDataProtectorCore } from '@iexec/dataprotector';
|
|
4
5
|
export type ProtectedDataQuery = {
|
|
5
6
|
id: string;
|
|
6
7
|
name: string;
|
|
@@ -23,6 +24,9 @@ export type DappWhitelistAddressConsumer = {
|
|
|
23
24
|
export type IExecConsumer = {
|
|
24
25
|
iexec: IExec;
|
|
25
26
|
};
|
|
27
|
+
export type DataProtectorConsumer = {
|
|
28
|
+
dataProtector: IExecDataProtectorCore;
|
|
29
|
+
};
|
|
26
30
|
export type SubgraphConsumer = {
|
|
27
31
|
graphQLClient: GraphQLClient;
|
|
28
32
|
};
|
|
@@ -1,4 +1,5 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import {
|
|
1
|
+
import { ProcessBulkRequestResponse } from '@iexec/dataprotector';
|
|
2
|
+
import { SendEmailParams, SendEmailSingleResponse } from './types.js';
|
|
3
|
+
import { DappAddressConsumer, DappWhitelistAddressConsumer, DataProtectorConsumer, IExecConsumer, IpfsGatewayConfigConsumer, IpfsNodeConfigConsumer, SubgraphConsumer } from './internalTypes.js';
|
|
3
4
|
export type SendEmail = typeof sendEmail;
|
|
4
|
-
export declare const sendEmail: ({ graphQLClient, iexec, workerpoolAddressOrEns, dappAddressOrENS,
|
|
5
|
+
export declare const sendEmail: ({ graphQLClient, iexec, dataProtector, workerpoolAddressOrEns, dappAddressOrENS, ipfsNode, ipfsGateway, emailSubject, emailContent, contentType, label, dataMaxPrice, appMaxPrice, workerpoolMaxPrice, senderName, protectedData, grantedAccess, maxProtectedDataPerTask, useVoucher, }: IExecConsumer & SubgraphConsumer & DappAddressConsumer & DappWhitelistAddressConsumer & IpfsNodeConfigConsumer & IpfsGatewayConfigConsumer & SendEmailParams & DataProtectorConsumer) => Promise<ProcessBulkRequestResponse | SendEmailSingleResponse>;
|