@iexec/web3mail 1.8.0 → 2.0.0
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/README.md +7 -7
- package/dist/config/config.d.ts +6 -1
- package/dist/config/config.js +23 -12
- package/dist/config/config.js.map +1 -1
- package/dist/utils/getChainId.js +7 -2
- package/dist/utils/getChainId.js.map +1 -1
- package/dist/utils/getWeb3Provider.d.ts +10 -2
- package/dist/utils/getWeb3Provider.js +12 -7
- package/dist/utils/getWeb3Provider.js.map +1 -1
- package/dist/utils/resolveDappAddressFromCompass.d.ts +2 -2
- package/dist/utils/resolveDappAddressFromCompass.js +1 -1
- package/dist/utils/resolveDappAddressFromCompass.js.map +1 -1
- package/dist/utils/validators.d.ts +0 -2
- package/dist/utils/validators.js +0 -4
- package/dist/utils/validators.js.map +1 -1
- package/dist/web3mail/IExecWeb3mail.d.ts +2 -2
- package/dist/web3mail/IExecWeb3mail.js +13 -14
- package/dist/web3mail/IExecWeb3mail.js.map +1 -1
- package/dist/web3mail/fetchMyContacts.d.ts +1 -1
- package/dist/web3mail/fetchMyContacts.js +2 -2
- package/dist/web3mail/fetchMyContacts.js.map +1 -1
- package/dist/web3mail/fetchUserContacts.d.ts +1 -1
- package/dist/web3mail/fetchUserContacts.js +20 -25
- package/dist/web3mail/fetchUserContacts.js.map +1 -1
- package/dist/web3mail/internalTypes.d.ts +2 -2
- package/dist/web3mail/prepareEmailCampaign.d.ts +1 -1
- package/dist/web3mail/prepareEmailCampaign.js +10 -10
- package/dist/web3mail/prepareEmailCampaign.js.map +1 -1
- package/dist/web3mail/sendEmail.d.ts +1 -1
- package/dist/web3mail/sendEmail.js +21 -41
- package/dist/web3mail/sendEmail.js.map +1 -1
- package/dist/web3mail/sendEmail.models.d.ts +8 -27
- package/dist/web3mail/sendEmail.models.js +5 -28
- package/dist/web3mail/sendEmail.models.js.map +1 -1
- package/dist/web3mail/sendEmailCampaign.d.ts +1 -1
- package/dist/web3mail/sendEmailCampaign.js +8 -9
- package/dist/web3mail/sendEmailCampaign.js.map +1 -1
- package/dist/web3mail/types.d.ts +8 -11
- package/package.json +4 -4
- package/src/config/config.ts +26 -14
- package/src/utils/getChainId.ts +11 -2
- package/src/utils/getWeb3Provider.ts +13 -6
- package/src/utils/resolveDappAddressFromCompass.ts +3 -3
- package/src/utils/validators.ts +0 -11
- package/src/web3mail/IExecWeb3mail.ts +20 -23
- package/src/web3mail/fetchMyContacts.ts +2 -2
- package/src/web3mail/fetchUserContacts.ts +21 -27
- package/src/web3mail/internalTypes.ts +2 -2
- package/src/web3mail/prepareEmailCampaign.ts +11 -11
- package/src/web3mail/sendEmail.models.ts +6 -68
- package/src/web3mail/sendEmail.ts +26 -58
- package/src/web3mail/sendEmailCampaign.ts +10 -11
- package/src/web3mail/types.ts +8 -13
package/README.md
CHANGED
|
@@ -41,21 +41,21 @@ yarn add @iexec/web3mail
|
|
|
41
41
|
### Browser
|
|
42
42
|
|
|
43
43
|
```ts
|
|
44
|
-
import { IExecWeb3mail } from
|
|
44
|
+
import { IExecWeb3mail } from '@iexec/web3mail';
|
|
45
45
|
|
|
46
|
-
const
|
|
47
|
-
const
|
|
46
|
+
const web3Provider = window.ethereum;
|
|
47
|
+
const web3mail = new IExecWeb3mail(web3Provider);
|
|
48
48
|
```
|
|
49
49
|
|
|
50
50
|
### NodeJS
|
|
51
51
|
|
|
52
52
|
```ts
|
|
53
|
-
import { IExecWeb3mail, getWeb3Provider } from
|
|
53
|
+
import { IExecWeb3mail, getWeb3Provider } from '@iexec/web3mail';
|
|
54
54
|
|
|
55
|
-
const { PRIVATE_KEY } = process.env;
|
|
55
|
+
const { PRIVATE_KEY } = process.env;
|
|
56
56
|
|
|
57
|
-
const
|
|
58
|
-
const
|
|
57
|
+
const web3Provider = getWeb3Provider(PRIVATE_KEY, 421614);
|
|
58
|
+
const web3mail = new IExecWeb3mail(web3Provider);
|
|
59
59
|
```
|
|
60
60
|
|
|
61
61
|
## Documentation
|
package/dist/config/config.d.ts
CHANGED
|
@@ -4,7 +4,6 @@ export declare const MAX_DESIRED_WORKERPOOL_ORDER_PRICE = 0;
|
|
|
4
4
|
export declare const DEFAULT_CONTENT_TYPE = "text/plain";
|
|
5
5
|
export declare const ANY_DATASET_ADDRESS = "any";
|
|
6
6
|
export declare const CALLBACK_WEB3MAIL = "0x5f936db7ad6d29371808e42a87015595d90509ba";
|
|
7
|
-
export declare const DEFAULT_CHAIN_ID = 134;
|
|
8
7
|
interface ChainConfig {
|
|
9
8
|
name: string;
|
|
10
9
|
dappAddress?: string;
|
|
@@ -18,4 +17,10 @@ interface ChainConfig {
|
|
|
18
17
|
export declare const getChainDefaultConfig: (chainId: number, options?: {
|
|
19
18
|
allowExperimentalNetworks?: boolean;
|
|
20
19
|
}) => ChainConfig | null;
|
|
20
|
+
/**
|
|
21
|
+
* When `ethProvider` is a string, it may be an RPC URL, a decimal chain id, or an
|
|
22
|
+
* iExec chain host name (see each chain's `name` in CHAIN_CONFIG). RPC URLs are not
|
|
23
|
+
* resolved here (returns undefined); JsonRpcProvider handles those.
|
|
24
|
+
*/
|
|
25
|
+
export declare function tryResolveChainIdFromProviderString(hint: string): number | undefined;
|
|
21
26
|
export {};
|
package/dist/config/config.js
CHANGED
|
@@ -4,21 +4,11 @@ export const MAX_DESIRED_WORKERPOOL_ORDER_PRICE = 0;
|
|
|
4
4
|
export const DEFAULT_CONTENT_TYPE = 'text/plain';
|
|
5
5
|
export const ANY_DATASET_ADDRESS = 'any';
|
|
6
6
|
export const CALLBACK_WEB3MAIL = '0x5f936db7ad6d29371808e42a87015595d90509ba';
|
|
7
|
-
export const DEFAULT_CHAIN_ID = 134;
|
|
8
7
|
const CHAIN_CONFIG = {
|
|
9
|
-
134: {
|
|
10
|
-
name: 'bellecour',
|
|
11
|
-
dappAddress: 'web3mail.apps.iexec.eth',
|
|
12
|
-
prodWorkerpoolAddress: 'prod-v8-bellecour.main.pools.iexec.eth',
|
|
13
|
-
dataProtectorSubgraph: 'https://thegraph.iex.ec/subgraphs/name/bellecour/dataprotector-v2',
|
|
14
|
-
ipfsUploadUrl: '/dns4/ipfs-upload.v8-bellecour.iex.ec/https',
|
|
15
|
-
ipfsGateway: 'https://ipfs-gateway.v8-bellecour.iex.ec',
|
|
16
|
-
whitelistSmartContract: '0x781482C39CcE25546583EaC4957Fb7Bf04C277D2',
|
|
17
|
-
},
|
|
18
8
|
421614: {
|
|
19
9
|
name: 'arbitrum-sepolia-testnet',
|
|
20
10
|
dappAddress: undefined, // ENS not supported on this network, address will be resolved from Compass
|
|
21
|
-
prodWorkerpoolAddress: '
|
|
11
|
+
prodWorkerpoolAddress: '0x2956f0cb779904795a5f30d3b3ea88b714c3123f', // TDX workerpool
|
|
22
12
|
dataProtectorSubgraph: 'https://thegraph.arbitrum-sepolia-testnet.iex.ec/api/subgraphs/id/5YjRPLtjS6GH6bB4yY55Qg4HzwtRGQ8TaHtGf9UBWWd',
|
|
23
13
|
ipfsGateway: 'https://ipfs-gateway.arbitrum-sepolia-testnet.iex.ec',
|
|
24
14
|
ipfsUploadUrl: 'https://ipfs-upload.arbitrum-sepolia-testnet.iex.ec',
|
|
@@ -27,7 +17,7 @@ const CHAIN_CONFIG = {
|
|
|
27
17
|
42161: {
|
|
28
18
|
name: 'arbitrum-mainnet',
|
|
29
19
|
dappAddress: undefined, // ENS not supported on this network, address will be resolved from Compass
|
|
30
|
-
prodWorkerpoolAddress: '
|
|
20
|
+
prodWorkerpoolAddress: '0x8ef2ec3ef9535d4b4349bfec7d8b31a580e60244', // TDX workerpool
|
|
31
21
|
dataProtectorSubgraph: 'https://thegraph.arbitrum.iex.ec/api/subgraphs/id/Ep5zs5zVr4tDiVuQJepUu51e5eWYJpka624X4DMBxe3u',
|
|
32
22
|
ipfsGateway: 'https://ipfs-gateway.arbitrum-mainnet.iex.ec',
|
|
33
23
|
ipfsUploadUrl: 'https://ipfs-upload.arbitrum-mainnet.iex.ec',
|
|
@@ -44,4 +34,25 @@ export const getChainDefaultConfig = (chainId, options) => {
|
|
|
44
34
|
}
|
|
45
35
|
return config;
|
|
46
36
|
};
|
|
37
|
+
/**
|
|
38
|
+
* When `ethProvider` is a string, it may be an RPC URL, a decimal chain id, or an
|
|
39
|
+
* iExec chain host name (see each chain's `name` in CHAIN_CONFIG). RPC URLs are not
|
|
40
|
+
* resolved here (returns undefined); JsonRpcProvider handles those.
|
|
41
|
+
*/
|
|
42
|
+
export function tryResolveChainIdFromProviderString(hint) {
|
|
43
|
+
const trimmed = hint.trim();
|
|
44
|
+
if (/^https?:\/\//i.test(trimmed)) {
|
|
45
|
+
return undefined;
|
|
46
|
+
}
|
|
47
|
+
if (/^\d+$/.test(trimmed)) {
|
|
48
|
+
return Number(trimmed);
|
|
49
|
+
}
|
|
50
|
+
const lower = trimmed.toLowerCase();
|
|
51
|
+
for (const [id, cfg] of Object.entries(CHAIN_CONFIG)) {
|
|
52
|
+
if (cfg.name.toLowerCase() === lower) {
|
|
53
|
+
return Number(id);
|
|
54
|
+
}
|
|
55
|
+
}
|
|
56
|
+
return undefined;
|
|
57
|
+
}
|
|
47
58
|
//# sourceMappingURL=config.js.map
|
|
@@ -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;
|
|
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;AAa9E,MAAM,YAAY,GAAgC;IAChD,MAAM,EAAE;QACN,IAAI,EAAE,0BAA0B;QAChC,WAAW,EAAE,SAAS,EAAE,2EAA2E;QACnG,qBAAqB,EAAE,4CAA4C,EAAE,iBAAiB;QACtF,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,EAAE,iBAAiB;QACtF,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;AAEF;;;;GAIG;AACH,MAAM,UAAU,mCAAmC,CACjD,IAAY;IAEZ,MAAM,OAAO,GAAG,IAAI,CAAC,IAAI,EAAE,CAAC;IAC5B,IAAI,eAAe,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC;QAClC,OAAO,SAAS,CAAC;IACnB,CAAC;IACD,IAAI,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC;QAC1B,OAAO,MAAM,CAAC,OAAO,CAAC,CAAC;IACzB,CAAC;IACD,MAAM,KAAK,GAAG,OAAO,CAAC,WAAW,EAAE,CAAC;IACpC,KAAK,MAAM,CAAC,EAAE,EAAE,GAAG,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,YAAY,CAAC,EAAE,CAAC;QACrD,IAAI,GAAG,CAAC,IAAI,CAAC,WAAW,EAAE,KAAK,KAAK,EAAE,CAAC;YACrC,OAAO,MAAM,CAAC,EAAE,CAAC,CAAC;QACpB,CAAC;IACH,CAAC;IACD,OAAO,SAAS,CAAC;AACnB,CAAC"}
|
package/dist/utils/getChainId.js
CHANGED
|
@@ -1,8 +1,12 @@
|
|
|
1
1
|
import { JsonRpcProvider, BrowserProvider, AbstractProvider, AbstractSigner, } from 'ethers';
|
|
2
|
-
import {
|
|
2
|
+
import { tryResolveChainIdFromProviderString } from '../config/config.js';
|
|
3
3
|
export async function getChainIdFromProvider(ethProvider) {
|
|
4
4
|
try {
|
|
5
5
|
if (typeof ethProvider === 'string') {
|
|
6
|
+
const resolved = tryResolveChainIdFromProviderString(ethProvider);
|
|
7
|
+
if (resolved !== undefined) {
|
|
8
|
+
return resolved;
|
|
9
|
+
}
|
|
6
10
|
const provider = new JsonRpcProvider(ethProvider);
|
|
7
11
|
const network = await provider.getNetwork();
|
|
8
12
|
return Number(network.chainId);
|
|
@@ -27,7 +31,8 @@ export async function getChainIdFromProvider(ethProvider) {
|
|
|
27
31
|
}
|
|
28
32
|
catch (e) {
|
|
29
33
|
console.warn('Failed to detect chainId:', e);
|
|
34
|
+
throw new Error(`Failed to detect chainId from ethProvider: ${e instanceof Error ? e.message : String(e)}`);
|
|
30
35
|
}
|
|
31
|
-
|
|
36
|
+
throw new Error('Unsupported ethProvider for chain ID detection');
|
|
32
37
|
}
|
|
33
38
|
//# sourceMappingURL=getChainId.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"getChainId.js","sourceRoot":"","sources":["../../src/utils/getChainId.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,eAAe,EACf,eAAe,EACf,gBAAgB,EAChB,cAAc,GAEf,MAAM,QAAQ,CAAC;AAChB,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"getChainId.js","sourceRoot":"","sources":["../../src/utils/getChainId.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,eAAe,EACf,eAAe,EACf,gBAAgB,EAChB,cAAc,GAEf,MAAM,QAAQ,CAAC;AAChB,OAAO,EAAE,mCAAmC,EAAE,MAAM,qBAAqB,CAAC;AAQ1E,MAAM,CAAC,KAAK,UAAU,sBAAsB,CAC1C,WAAqC;IAErC,IAAI,CAAC;QACH,IAAI,OAAO,WAAW,KAAK,QAAQ,EAAE,CAAC;YACpC,MAAM,QAAQ,GAAG,mCAAmC,CAAC,WAAW,CAAC,CAAC;YAClE,IAAI,QAAQ,KAAK,SAAS,EAAE,CAAC;gBAC3B,OAAO,QAAQ,CAAC;YAClB,CAAC;YACD,MAAM,QAAQ,GAAG,IAAI,eAAe,CAAC,WAAW,CAAC,CAAC;YAClD,MAAM,OAAO,GAAG,MAAM,QAAQ,CAAC,UAAU,EAAE,CAAC;YAC5C,OAAO,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;QACjC,CAAC;aAAM,IAAI,WAAW,YAAY,gBAAgB,EAAE,CAAC;YACnD,MAAM,OAAO,GAAG,MAAM,WAAW,CAAC,UAAU,EAAE,CAAC;YAC/C,OAAO,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;QACjC,CAAC;aAAM,IAAI,WAAW,YAAY,cAAc,EAAE,CAAC;YACjD,MAAM,EAAE,QAAQ,EAAE,GAAG,WAAW,CAAC;YACjC,IAAI,CAAC,QAAQ,EAAE,CAAC;gBACd,MAAM,KAAK,CAAC,uCAAuC,CAAC,CAAC;YACvD,CAAC;YACD,MAAM,OAAO,GAAG,MAAM,QAAQ,CAAC,UAAU,EAAE,CAAC;YAC5C,OAAO,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;QACjC,CAAC;aAAM,IAAI,SAAS,IAAI,WAAW,EAAE,CAAC;YACpC,MAAM,QAAQ,GAAG,IAAI,eAAe,CAAC,WAA8B,CAAC,CAAC;YACrE,MAAM,OAAO,GAAG,MAAM,QAAQ,CAAC,UAAU,EAAE,CAAC;YAC5C,OAAO,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;QACjC,CAAC;IACH,CAAC;IAAC,OAAO,CAAC,EAAE,CAAC;QACX,OAAO,CAAC,IAAI,CAAC,2BAA2B,EAAE,CAAC,CAAC,CAAC;QAC7C,MAAM,IAAI,KAAK,CACb,8CACE,CAAC,YAAY,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAC3C,EAAE,CACH,CAAC;IACJ,CAAC;IACD,MAAM,IAAI,KAAK,CAAC,gDAAgD,CAAC,CAAC;AACpE,CAAC"}
|
|
@@ -1,5 +1,13 @@
|
|
|
1
1
|
import { Web3SignerProvider } from '../web3mail/types.js';
|
|
2
|
-
|
|
2
|
+
/**
|
|
3
|
+
* Build an ethers signer for Node.js from a private key and an explicit chain.
|
|
4
|
+
*
|
|
5
|
+
* `host` must be provided (chain id or iExec chain host string). There is no default
|
|
6
|
+
* chain: omitting it used to fall back to Arbitrum Sepolia and could migrate users
|
|
7
|
+
* silently when defaults change.
|
|
8
|
+
*
|
|
9
|
+
* @see https://github.com/iExecBlockchainComputing/dataprotector-sdk/blob/dataprotector-v2.0.0-beta.27/packages/sdk/src/utils/getWeb3Provider.ts
|
|
10
|
+
*/
|
|
11
|
+
export declare const getWeb3Provider: (privateKey: string, host: number | string, options?: {
|
|
3
12
|
allowExperimentalNetworks?: boolean;
|
|
4
|
-
host?: number | string;
|
|
5
13
|
}) => Web3SignerProvider;
|
|
@@ -1,9 +1,14 @@
|
|
|
1
1
|
import { getSignerFromPrivateKey } from 'iexec/utils';
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
2
|
+
/**
|
|
3
|
+
* Build an ethers signer for Node.js from a private key and an explicit chain.
|
|
4
|
+
*
|
|
5
|
+
* `host` must be provided (chain id or iExec chain host string). There is no default
|
|
6
|
+
* chain: omitting it used to fall back to Arbitrum Sepolia and could migrate users
|
|
7
|
+
* silently when defaults change.
|
|
8
|
+
*
|
|
9
|
+
* @see https://github.com/iExecBlockchainComputing/dataprotector-sdk/blob/dataprotector-v2.0.0-beta.27/packages/sdk/src/utils/getWeb3Provider.ts
|
|
10
|
+
*/
|
|
11
|
+
export const getWeb3Provider = (privateKey, host, options = {}) => getSignerFromPrivateKey(`${host}`, privateKey, {
|
|
12
|
+
allowExperimentalNetworks: options?.allowExperimentalNetworks,
|
|
13
|
+
});
|
|
9
14
|
//# sourceMappingURL=getWeb3Provider.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"getWeb3Provider.js","sourceRoot":"","sources":["../../src/utils/getWeb3Provider.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,uBAAuB,EAAE,MAAM,aAAa,CAAC;AAGtD,MAAM,CAAC,MAAM,eAAe,GAAG,CAC7B,UAAkB,EAClB,
|
|
1
|
+
{"version":3,"file":"getWeb3Provider.js","sourceRoot":"","sources":["../../src/utils/getWeb3Provider.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,uBAAuB,EAAE,MAAM,aAAa,CAAC;AAGtD;;;;;;;;GAQG;AACH,MAAM,CAAC,MAAM,eAAe,GAAG,CAC7B,UAAkB,EAClB,IAAqB,EACrB,UAAmD,EAAE,EACjC,EAAE,CACtB,uBAAuB,CAAC,GAAG,IAAI,EAAE,EAAE,UAAU,EAAE;IAC7C,yBAAyB,EAAE,OAAO,EAAE,yBAAyB;CAC9D,CAAC,CAAC"}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import {
|
|
2
|
-
export declare function resolveDappAddressFromCompass(compassUrl: string, chainId: number): Promise<
|
|
1
|
+
import { Address } from '../web3mail/types.js';
|
|
2
|
+
export declare function resolveDappAddressFromCompass(compassUrl: string, chainId: number): Promise<Address | undefined>;
|
|
@@ -3,7 +3,7 @@ export async function resolveDappAddressFromCompass(compassUrl, chainId) {
|
|
|
3
3
|
if (!compassUrl) {
|
|
4
4
|
return undefined;
|
|
5
5
|
}
|
|
6
|
-
const address = await fetch(`${compassUrl}/${chainId}/iapps/web3mail`)
|
|
6
|
+
const address = await fetch(`${compassUrl}/${chainId}/iapps/web3mail-tdx`)
|
|
7
7
|
// Handle network errors
|
|
8
8
|
.catch((error) => {
|
|
9
9
|
throw new CompassCallError(`Connection to ${compassUrl} failed with a network error`, error);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"resolveDappAddressFromCompass.js","sourceRoot":"","sources":["../../src/utils/resolveDappAddressFromCompass.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,MAAM,cAAc,CAAC;AAGhD,MAAM,CAAC,KAAK,UAAU,6BAA6B,CACjD,UAAkB,EAClB,OAAe;IAEf,IAAI,CAAC,UAAU,EAAE,CAAC;QAChB,OAAO,SAAS,CAAC;IACnB,CAAC;IAED,MAAM,OAAO,GAAG,MAAM,KAAK,CAAC,GAAG,UAAU,IAAI,OAAO,
|
|
1
|
+
{"version":3,"file":"resolveDappAddressFromCompass.js","sourceRoot":"","sources":["../../src/utils/resolveDappAddressFromCompass.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,MAAM,cAAc,CAAC;AAGhD,MAAM,CAAC,KAAK,UAAU,6BAA6B,CACjD,UAAkB,EAClB,OAAe;IAEf,IAAI,CAAC,UAAU,EAAE,CAAC;QAChB,OAAO,SAAS,CAAC;IACnB,CAAC;IAED,MAAM,OAAO,GAAG,MAAM,KAAK,CAAC,GAAG,UAAU,IAAI,OAAO,qBAAqB,CAAC;QACxE,wBAAwB;SACvB,KAAK,CAAC,CAAC,KAAK,EAAE,EAAE;QACf,MAAM,IAAI,gBAAgB,CACxB,iBAAiB,UAAU,8BAA8B,EACzD,KAAK,CACN,CAAC;IACJ,CAAC,CAAC;QACF,uBAAuB;SACtB,IAAI,CAAC,CAAC,QAAQ,EAAE,EAAE;QACjB,IAAI,QAAQ,CAAC,MAAM,IAAI,GAAG,IAAI,QAAQ,CAAC,MAAM,IAAI,GAAG,EAAE,CAAC;YACrD,MAAM,IAAI,gBAAgB,CACxB,aAAa,UAAU,gCAAgC,EACvD,KAAK,CACH,0BAA0B,QAAQ,CAAC,MAAM,IAAI,QAAQ,CAAC,UAAU,EAAE,CACnE,CACF,CAAC;QACJ,CAAC;QACD,OAAO,QAAQ,CAAC;IAClB,CAAC,CAAC;QACF,qCAAqC;SACpC,IAAI,CAAC,CAAC,QAAQ,EAAE,EAAE;QACjB,IAAI,QAAQ,CAAC,MAAM,KAAK,GAAG,EAAE,CAAC;YAC5B,MAAM,IAAI,KAAK,CACb,8CAA8C,QAAQ,CAAC,UAAU,EAAE,CACpE,CAAC;QACJ,CAAC;QACD,MAAM,WAAW,GAAG,QAAQ,CAAC,OAAO,CAAC,GAAG,CAAC,cAAc,CAAC,CAAC;QACzD,IAAI,CAAC,WAAW,IAAI,WAAW,CAAC,OAAO,CAAC,kBAAkB,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC;YACnE,MAAM,IAAI,KAAK,CACb,iEAAiE,CAClE,CAAC;QACJ,CAAC;QACD,OAAO,QAAQ,CAAC,IAAI,EAAE,CAAC;IACzB,CAAC,CAAC;SACD,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE;QACb,IAAI,CAAC,IAAI,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,CAAC;YAC3B,MAAM,IAAI,KAAK,CAAC,2CAA2C,CAAC,CAAC;QAC/D,CAAC;QACD,OAAO,IAAI,CAAC,OAAO,CAAC;IACtB,CAAC,CAAC,CAAC;IAEL,OAAO,OAAO,CAAC;AACjB,CAAC"}
|
|
@@ -1,8 +1,6 @@
|
|
|
1
1
|
import { IExec } from 'iexec';
|
|
2
2
|
export declare const isValidProvider: (iexec: IExec) => Promise<void>;
|
|
3
3
|
export declare const throwIfMissing: () => never;
|
|
4
|
-
export declare const isEnsTest: (value: string) => boolean;
|
|
5
|
-
export declare const addressOrEnsSchema: () => import("yup").StringSchema<string, import("yup").AnyObject, undefined, "">;
|
|
6
4
|
export declare const addressSchema: () => import("yup").StringSchema<string, import("yup").AnyObject, undefined, "">;
|
|
7
5
|
export declare const emailSubjectSchema: () => import("yup").StringSchema<string, import("yup").AnyObject, undefined, "">;
|
|
8
6
|
export declare const emailContentSchema: () => import("yup").StringSchema<string, import("yup").AnyObject, undefined, "">;
|
package/dist/utils/validators.js
CHANGED
|
@@ -12,10 +12,6 @@ export const throwIfMissing = () => {
|
|
|
12
12
|
};
|
|
13
13
|
const isUndefined = (value) => value === undefined;
|
|
14
14
|
const isAddressTest = (value) => isAddress(value);
|
|
15
|
-
export const isEnsTest = (value) => value.endsWith('.eth') && value.length > 6;
|
|
16
|
-
export const addressOrEnsSchema = () => string()
|
|
17
|
-
.transform((value) => value?.toLowerCase() || value)
|
|
18
|
-
.test('is-address-or-ens', '${path} should be an ethereum address or a ENS name', (value) => isUndefined(value) || isAddressTest(value) || isEnsTest(value));
|
|
19
15
|
export const addressSchema = () => string()
|
|
20
16
|
.transform((value) => value?.toLowerCase() || value)
|
|
21
17
|
.test('is-address', '${path} should be an ethereum address', (value) => isUndefined(value) || isAddressTest(value));
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"validators.js","sourceRoot":"","sources":["../../src/utils/validators.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,QAAQ,CAAC;AAEnC,OAAO,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAC3C,OAAO,EAAE,eAAe,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,KAAK,CAAC;AAEvE,MAAM,CAAC,MAAM,eAAe,GAAG,KAAK,EAAE,KAAY,EAAE,EAAE;IACpD,MAAM,MAAM,GAAG,MAAM,KAAK,CAAC,MAAM,CAAC,sBAAsB,EAAE,CAAC;IAC3D,IAAI,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC;QACnB,MAAM,IAAI,KAAK,CACb,mGAAmG,CACpG,CAAC;IACJ,CAAC;AACH,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,cAAc,GAAG,GAAU,EAAE;IACxC,MAAM,IAAI,eAAe,CAAC,mBAAmB,CAAC,CAAC;AACjD,CAAC,CAAC;AAEF,MAAM,WAAW,GAAG,CAAC,KAAc,EAAE,EAAE,CAAC,KAAK,KAAK,SAAS,CAAC;AAC5D,MAAM,aAAa,GAAG,CAAC,KAAa,EAAE,EAAE,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC;
|
|
1
|
+
{"version":3,"file":"validators.js","sourceRoot":"","sources":["../../src/utils/validators.ts"],"names":[],"mappings":"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"}
|
|
@@ -2,7 +2,7 @@ import { AbstractProvider, AbstractSigner, Eip1193Provider } from 'ethers';
|
|
|
2
2
|
import { Contact, FetchUserContactsParams, SendEmailParams, Web3MailConfigOptions, SendEmailResponse, Web3SignerProvider, FetchMyContactsParams, PrepareEmailCampaignParams, PrepareEmailCampaignResponse, SendEmailCampaignParams, SendEmailCampaignResponse } from './types.js';
|
|
3
3
|
type EthersCompatibleProvider = AbstractProvider | AbstractSigner | Eip1193Provider | Web3SignerProvider | string;
|
|
4
4
|
export declare class IExecWeb3mail {
|
|
5
|
-
private
|
|
5
|
+
private dappAddress;
|
|
6
6
|
private dappWhitelistAddress;
|
|
7
7
|
private graphQLClient;
|
|
8
8
|
private ipfsNode;
|
|
@@ -13,7 +13,7 @@ export declare class IExecWeb3mail {
|
|
|
13
13
|
private initPromise;
|
|
14
14
|
private ethProvider;
|
|
15
15
|
private options;
|
|
16
|
-
constructor(ethProvider
|
|
16
|
+
constructor(ethProvider: EthersCompatibleProvider, options?: Web3MailConfigOptions);
|
|
17
17
|
init(): Promise<void>;
|
|
18
18
|
fetchMyContacts(args?: FetchMyContactsParams): Promise<Contact[]>;
|
|
19
19
|
fetchUserContacts(args: FetchUserContactsParams): Promise<Contact[]>;
|
|
@@ -11,7 +11,7 @@ import { getChainIdFromProvider } from '../utils/getChainId.js';
|
|
|
11
11
|
import { getChainDefaultConfig } from '../config/config.js';
|
|
12
12
|
import { resolveDappAddressFromCompass } from '../utils/resolveDappAddressFromCompass.js';
|
|
13
13
|
export class IExecWeb3mail {
|
|
14
|
-
|
|
14
|
+
dappAddress;
|
|
15
15
|
dappWhitelistAddress;
|
|
16
16
|
graphQLClient;
|
|
17
17
|
ipfsNode;
|
|
@@ -23,13 +23,13 @@ export class IExecWeb3mail {
|
|
|
23
23
|
ethProvider;
|
|
24
24
|
options;
|
|
25
25
|
constructor(ethProvider, options) {
|
|
26
|
-
this.ethProvider = ethProvider
|
|
26
|
+
this.ethProvider = ethProvider;
|
|
27
27
|
this.options = options || {};
|
|
28
28
|
}
|
|
29
29
|
async init() {
|
|
30
30
|
if (!this.initPromise) {
|
|
31
31
|
this.initPromise = this.resolveConfig().then((config) => {
|
|
32
|
-
this.
|
|
32
|
+
this.dappAddress = config.dappAddress;
|
|
33
33
|
this.dappWhitelistAddress = config.dappWhitelistAddress;
|
|
34
34
|
this.graphQLClient = config.graphQLClient;
|
|
35
35
|
this.ipfsNode = config.ipfsNode;
|
|
@@ -48,7 +48,7 @@ export class IExecWeb3mail {
|
|
|
48
48
|
...args,
|
|
49
49
|
iexec: this.iexec,
|
|
50
50
|
graphQLClient: this.graphQLClient,
|
|
51
|
-
|
|
51
|
+
dappAddress: this.dappAddress,
|
|
52
52
|
dappWhitelistAddress: this.dappWhitelistAddress,
|
|
53
53
|
});
|
|
54
54
|
}
|
|
@@ -58,7 +58,7 @@ export class IExecWeb3mail {
|
|
|
58
58
|
...args,
|
|
59
59
|
iexec: this.iexec,
|
|
60
60
|
graphQLClient: this.graphQLClient,
|
|
61
|
-
|
|
61
|
+
dappAddress: this.dappAddress,
|
|
62
62
|
dappWhitelistAddress: this.dappWhitelistAddress,
|
|
63
63
|
});
|
|
64
64
|
}
|
|
@@ -67,26 +67,25 @@ export class IExecWeb3mail {
|
|
|
67
67
|
await isValidProvider(this.iexec);
|
|
68
68
|
return sendEmail({
|
|
69
69
|
...args,
|
|
70
|
-
|
|
70
|
+
workerpoolAddress: args.workerpoolAddress || this.defaultWorkerpool,
|
|
71
71
|
iexec: this.iexec,
|
|
72
72
|
ipfsNode: this.ipfsNode,
|
|
73
73
|
ipfsGateway: this.ipfsGateway,
|
|
74
|
-
|
|
74
|
+
dappAddress: this.dappAddress,
|
|
75
75
|
dappWhitelistAddress: this.dappWhitelistAddress,
|
|
76
76
|
graphQLClient: this.graphQLClient,
|
|
77
77
|
});
|
|
78
78
|
}
|
|
79
79
|
async prepareEmailCampaign(args) {
|
|
80
80
|
await this.init();
|
|
81
|
-
await isValidProvider(this.iexec);
|
|
82
81
|
return prepareEmailCampaign({
|
|
83
82
|
...args,
|
|
84
|
-
|
|
83
|
+
workerpoolAddress: args.workerpoolAddress || this.defaultWorkerpool,
|
|
85
84
|
iexec: this.iexec,
|
|
86
85
|
dataProtector: this.dataProtector,
|
|
87
86
|
ipfsNode: this.ipfsNode,
|
|
88
87
|
ipfsGateway: this.ipfsGateway,
|
|
89
|
-
|
|
88
|
+
dappAddress: this.dappAddress,
|
|
90
89
|
});
|
|
91
90
|
}
|
|
92
91
|
async sendEmailCampaign(args) {
|
|
@@ -94,7 +93,7 @@ export class IExecWeb3mail {
|
|
|
94
93
|
await isValidProvider(this.iexec);
|
|
95
94
|
return sendEmailCampaign({
|
|
96
95
|
...args,
|
|
97
|
-
|
|
96
|
+
workerpoolAddress: args.workerpoolAddress || this.defaultWorkerpool,
|
|
98
97
|
dataProtector: this.dataProtector,
|
|
99
98
|
});
|
|
100
99
|
}
|
|
@@ -117,7 +116,7 @@ export class IExecWeb3mail {
|
|
|
117
116
|
}
|
|
118
117
|
const subgraphUrl = this.options?.dataProtectorSubgraph ||
|
|
119
118
|
chainDefaultConfig?.dataProtectorSubgraph;
|
|
120
|
-
const
|
|
119
|
+
const dappAddress = this.options?.dappAddress ||
|
|
121
120
|
chainDefaultConfig?.dappAddress ||
|
|
122
121
|
(await resolveDappAddressFromCompass(await iexec.config.resolveCompassURL(), chainId));
|
|
123
122
|
const dappWhitelistAddress = this.options?.dappWhitelistAddress ||
|
|
@@ -127,7 +126,7 @@ export class IExecWeb3mail {
|
|
|
127
126
|
const missing = [];
|
|
128
127
|
if (!subgraphUrl)
|
|
129
128
|
missing.push('dataProtectorSubgraph');
|
|
130
|
-
if (!
|
|
129
|
+
if (!dappAddress)
|
|
131
130
|
missing.push('dappAddress');
|
|
132
131
|
if (!dappWhitelistAddress)
|
|
133
132
|
missing.push('whitelistSmartContract');
|
|
@@ -157,7 +156,7 @@ export class IExecWeb3mail {
|
|
|
157
156
|
subgraphUrl,
|
|
158
157
|
});
|
|
159
158
|
return {
|
|
160
|
-
|
|
159
|
+
dappAddress,
|
|
161
160
|
dappWhitelistAddress: dappWhitelistAddress.toLowerCase(),
|
|
162
161
|
defaultWorkerpool,
|
|
163
162
|
graphQLClient,
|
|
@@ -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,sBAAsB,EAAE,MAAM,sBAAsB,CAAC;AAC9D,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;AAC3C,OAAO,EAAE,oBAAoB,EAAE,MAAM,2BAA2B,CAAC;AACjE,OAAO,EAAE,iBAAiB,EAAE,MAAM,wBAAwB,CAAC;AAe3D,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,
|
|
1
|
+
{"version":3,"file":"IExecWeb3mail.js","sourceRoot":"","sources":["../../src/web3mail/IExecWeb3mail.ts"],"names":[],"mappings":"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"}
|
|
@@ -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,
|
|
4
|
+
export declare const fetchMyContacts: ({ graphQLClient, iexec, dappAddress, 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(),
|
|
3
|
+
export const fetchMyContacts = async ({ graphQLClient = throwIfMissing(), iexec = throwIfMissing(), dappAddress = throwIfMissing(), dappWhitelistAddress = throwIfMissing(), isUserStrict = false, bulkOnly = false, }) => {
|
|
4
4
|
const vIsUserStrict = booleanSchema()
|
|
5
5
|
.label('isUserStrict')
|
|
6
6
|
.validateSync(isUserStrict);
|
|
@@ -9,7 +9,7 @@ export const fetchMyContacts = async ({ graphQLClient = throwIfMissing(), iexec
|
|
|
9
9
|
return fetchUserContacts({
|
|
10
10
|
iexec,
|
|
11
11
|
graphQLClient,
|
|
12
|
-
|
|
12
|
+
dappAddress,
|
|
13
13
|
dappWhitelistAddress,
|
|
14
14
|
userAddress,
|
|
15
15
|
isUserStrict: vIsUserStrict,
|
|
@@ -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,
|
|
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,WAAW,GAAG,cAAc,EAAE,EAC9B,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;IAC9B,MAAM,SAAS,GAAG,aAAa,EAAE,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC,YAAY,CAAC,QAAQ,CAAC,CAAC;IAE3E,MAAM,WAAW,GAAG,MAAM,KAAK,CAAC,MAAM,CAAC,UAAU,EAAE,CAAC;IACpD,OAAO,iBAAiB,CAAC;QACvB,KAAK;QACL,aAAa;QACb,WAAW;QACX,oBAAoB;QACpB,WAAW;QACX,YAAY,EAAE,aAAa;QAC3B,QAAQ,EAAE,SAAS;KACpB,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,
|
|
3
|
+
export declare const fetchUserContacts: ({ graphQLClient, iexec, dappAddress, dappWhitelistAddress, userAddress, isUserStrict, bulkOnly, }: IExecConsumer & SubgraphConsumer & DappAddressConsumer & DappWhitelistAddressConsumer & FetchUserContactsParams) => Promise<Contact[]>;
|
|
@@ -3,30 +3,30 @@ import { ANY_DATASET_ADDRESS } from '../config/config.js';
|
|
|
3
3
|
import { handleIfProtocolError, WorkflowError } from '../utils/errors.js';
|
|
4
4
|
import { autoPaginateRequest } from '../utils/paginate.js';
|
|
5
5
|
import { getValidContact } from '../utils/subgraphQuery.js';
|
|
6
|
-
import {
|
|
7
|
-
export const fetchUserContacts = async ({ graphQLClient = throwIfMissing(), iexec = throwIfMissing(),
|
|
8
|
-
const vDappAddressOrENS = addressOrEnsSchema()
|
|
9
|
-
.required()
|
|
10
|
-
.label('dappAddressOrENS')
|
|
11
|
-
.validateSync(dappAddressOrENS);
|
|
12
|
-
const vDappWhitelistAddress = addressSchema()
|
|
13
|
-
.required()
|
|
14
|
-
.label('dappWhitelistAddress')
|
|
15
|
-
.validateSync(dappWhitelistAddress);
|
|
16
|
-
const vUserAddress = addressOrEnsSchema()
|
|
17
|
-
.required()
|
|
18
|
-
.label('userAddress')
|
|
19
|
-
.validateSync(userAddress);
|
|
20
|
-
const vIsUserStrict = booleanSchema()
|
|
21
|
-
.label('isUserStrict')
|
|
22
|
-
.validateSync(isUserStrict);
|
|
23
|
-
const vBulkOnly = booleanSchema().label('bulkOnly').validateSync(bulkOnly);
|
|
6
|
+
import { addressSchema, booleanSchema, throwIfMissing, } from '../utils/validators.js';
|
|
7
|
+
export const fetchUserContacts = async ({ graphQLClient = throwIfMissing(), iexec = throwIfMissing(), dappAddress = throwIfMissing(), dappWhitelistAddress = throwIfMissing(), userAddress, isUserStrict = false, bulkOnly = false, }) => {
|
|
24
8
|
try {
|
|
9
|
+
const address = addressSchema()
|
|
10
|
+
.required()
|
|
11
|
+
.label('dappAddress')
|
|
12
|
+
.validateSync(dappAddress);
|
|
13
|
+
const vDappWhitelistAddress = addressSchema()
|
|
14
|
+
.required()
|
|
15
|
+
.label('dappWhitelistAddress')
|
|
16
|
+
.validateSync(dappWhitelistAddress);
|
|
17
|
+
const vUserAddress = addressSchema()
|
|
18
|
+
.required()
|
|
19
|
+
.label('userAddress')
|
|
20
|
+
.validateSync(userAddress);
|
|
21
|
+
const vIsUserStrict = booleanSchema()
|
|
22
|
+
.label('isUserStrict')
|
|
23
|
+
.validateSync(isUserStrict);
|
|
24
|
+
const vBulkOnly = booleanSchema().label('bulkOnly').validateSync(bulkOnly);
|
|
25
25
|
const [dappOrders, whitelistOrders] = await Promise.all([
|
|
26
26
|
fetchAllOrdersByApp({
|
|
27
27
|
iexec,
|
|
28
28
|
userAddress: vUserAddress,
|
|
29
|
-
appAddress:
|
|
29
|
+
appAddress: address,
|
|
30
30
|
isUserStrict: vIsUserStrict,
|
|
31
31
|
bulkOnly: vBulkOnly,
|
|
32
32
|
}),
|
|
@@ -40,13 +40,8 @@ export const fetchUserContacts = async ({ graphQLClient = throwIfMissing(), iexe
|
|
|
40
40
|
]);
|
|
41
41
|
const orders = dappOrders.concat(whitelistOrders);
|
|
42
42
|
const myContacts = [];
|
|
43
|
-
let web3DappResolvedAddress = vDappAddressOrENS;
|
|
44
|
-
if (isEnsTest(vDappAddressOrENS)) {
|
|
45
|
-
web3DappResolvedAddress = await iexec.ens.resolveName(vDappAddressOrENS);
|
|
46
|
-
}
|
|
47
43
|
orders.forEach((order) => {
|
|
48
|
-
if (order.order.apprestrict.toLowerCase() ===
|
|
49
|
-
web3DappResolvedAddress.toLowerCase() ||
|
|
44
|
+
if (order.order.apprestrict.toLowerCase() === address.toLowerCase() ||
|
|
50
45
|
order.order.apprestrict.toLowerCase() ===
|
|
51
46
|
vDappWhitelistAddress.toLowerCase()) {
|
|
52
47
|
const contact = {
|
|
@@ -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,
|
|
1
|
+
{"version":3,"file":"fetchUserContacts.js","sourceRoot":"","sources":["../../src/web3mail/fetchUserContacts.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { IExec } from 'iexec';
|
|
2
2
|
import { IExecDataProtectorCore } from '@iexec/dataprotector';
|
|
3
|
-
import {
|
|
3
|
+
import { Address } from './types.js';
|
|
4
4
|
import { GraphQLClient } from 'graphql-request';
|
|
5
5
|
export type ProtectedDataQuery = {
|
|
6
6
|
id: string;
|
|
@@ -10,7 +10,7 @@ export type GraphQLResponse = {
|
|
|
10
10
|
protectedDatas: ProtectedDataQuery[];
|
|
11
11
|
};
|
|
12
12
|
export type DappAddressConsumer = {
|
|
13
|
-
|
|
13
|
+
dappAddress: Address;
|
|
14
14
|
};
|
|
15
15
|
export type IpfsNodeConfigConsumer = {
|
|
16
16
|
ipfsNode: string;
|
|
@@ -1,4 +1,4 @@
|
|
|
1
1
|
import { PrepareEmailCampaignParams, PrepareEmailCampaignResponse } from './types.js';
|
|
2
2
|
import { DappAddressConsumer, DataProtectorConsumer, IExecConsumer, IpfsGatewayConfigConsumer, IpfsNodeConfigConsumer } from './internalTypes.js';
|
|
3
3
|
export type PrepareEmailCampaign = typeof prepareEmailCampaign;
|
|
4
|
-
export declare const prepareEmailCampaign: ({ iexec, dataProtector,
|
|
4
|
+
export declare const prepareEmailCampaign: ({ iexec, dataProtector, workerpoolAddress, dappAddress, ipfsNode, ipfsGateway, senderName, emailSubject, emailContent, contentType, label, appMaxPrice, workerpoolMaxPrice, grantedAccesses, maxProtectedDataPerTask, }: IExecConsumer & DappAddressConsumer & IpfsNodeConfigConsumer & IpfsGatewayConfigConsumer & DataProtectorConsumer & PrepareEmailCampaignParams) => Promise<PrepareEmailCampaignResponse>;
|