@iexec/web3mail 1.6.0-nightly-b2a0e93 → 1.7.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/dist/utils/subgraphQuery.js +1 -2
- package/dist/utils/subgraphQuery.js.map +1 -1
- package/dist/utils/validators.d.ts +35 -0
- package/dist/utils/validators.js +45 -1
- package/dist/utils/validators.js.map +1 -1
- package/dist/web3mail/IExecWeb3mail.d.ts +4 -2
- package/dist/web3mail/IExecWeb3mail.js +24 -1
- package/dist/web3mail/IExecWeb3mail.js.map +1 -1
- package/dist/web3mail/fetchMyContacts.js +2 -1
- package/dist/web3mail/fetchMyContacts.js.map +1 -1
- package/dist/web3mail/fetchUserContacts.js +1 -1
- package/dist/web3mail/fetchUserContacts.js.map +1 -1
- package/dist/web3mail/internalTypes.d.ts +4 -4
- package/dist/web3mail/prepareEmailCampaign.d.ts +4 -0
- package/dist/web3mail/prepareEmailCampaign.js +106 -0
- package/dist/web3mail/prepareEmailCampaign.js.map +1 -0
- package/dist/web3mail/sendEmail.d.ts +2 -2
- package/dist/web3mail/sendEmail.js +191 -135
- package/dist/web3mail/sendEmail.js.map +1 -1
- package/dist/web3mail/sendEmailCampaign.d.ts +4 -0
- package/dist/web3mail/sendEmailCampaign.js +43 -0
- package/dist/web3mail/sendEmailCampaign.js.map +1 -0
- package/dist/web3mail/types.d.ts +83 -24
- package/package.json +3 -4
- package/src/utils/subgraphQuery.ts +1 -2
- package/src/utils/validators.ts +68 -1
- package/src/web3mail/IExecWeb3mail.ts +38 -5
- package/src/web3mail/fetchMyContacts.ts +2 -1
- package/src/web3mail/fetchUserContacts.ts +7 -5
- package/src/web3mail/internalTypes.ts +5 -3
- package/src/web3mail/prepareEmailCampaign.ts +170 -0
- package/src/web3mail/sendEmail.ts +246 -150
- package/src/web3mail/sendEmailCampaign.ts +69 -0
- package/src/web3mail/types.ts +88 -26
|
@@ -66,9 +66,8 @@ export const getValidContact = async (graphQLClient, contacts) => {
|
|
|
66
66
|
grantedAccess: contact.grantedAccess,
|
|
67
67
|
};
|
|
68
68
|
}
|
|
69
|
-
return null;
|
|
70
69
|
})
|
|
71
|
-
.filter((contact) => contact
|
|
70
|
+
.filter((contact) => !!contact);
|
|
72
71
|
}
|
|
73
72
|
catch (error) {
|
|
74
73
|
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;aACrB,GAAG,CAAC,CAAC,EAAE,EAAE,EAAE,IAAI,EAAE,EAAE,EAAE;YACpB,MAAM,OAAO,GAAG,WAAW,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;YACpC,IAAI,OAAO,EAAE,CAAC;gBACZ,OAAO;oBACL,OAAO,EAAE,EAAE;oBACX,IAAI,EAAE,IAAI;oBACV,eAAe,EAAE,OAAO,CAAC,eAAe;oBACxC,WAAW,EAAE,OAAO,CAAC,WAAW;oBAChC,KAAK,EAAE,OAAO,CAAC,KAAK;oBACpB,oBAAoB,EAAE,OAAO,CAAC,oBAAoB;oBAClD,YAAY,EAAE,OAAO,CAAC,YAAY;oBAClC,aAAa,EAAE,OAAO,CAAC,aAAa;iBACrC,CAAC;YACJ,CAAC;
|
|
1
|
+
{"version":3,"file":"subgraphQuery.js","sourceRoot":"","sources":["../../src/utils/subgraphQuery.ts"],"names":[],"mappings":"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"}
|
|
@@ -11,3 +11,38 @@ export declare const senderNameSchema: () => import("yup").StringSchema<string,
|
|
|
11
11
|
export declare const labelSchema: () => import("yup").StringSchema<string, import("yup").AnyObject, undefined, "">;
|
|
12
12
|
export declare const positiveNumberSchema: () => import("yup").NumberSchema<number, import("yup").AnyObject, undefined, "">;
|
|
13
13
|
export declare const booleanSchema: () => import("yup").BooleanSchema<boolean, import("yup").AnyObject, undefined, "">;
|
|
14
|
+
export declare const campaignRequestSchema: () => import("yup").ObjectSchema<{
|
|
15
|
+
app: string;
|
|
16
|
+
appmaxprice: string;
|
|
17
|
+
workerpool: string;
|
|
18
|
+
workerpoolmaxprice: string;
|
|
19
|
+
dataset: string;
|
|
20
|
+
datasetmaxprice: "0";
|
|
21
|
+
params: string;
|
|
22
|
+
requester: string;
|
|
23
|
+
beneficiary: string;
|
|
24
|
+
callback: string;
|
|
25
|
+
category: string;
|
|
26
|
+
volume: string;
|
|
27
|
+
tag: string;
|
|
28
|
+
trust: string;
|
|
29
|
+
salt: string;
|
|
30
|
+
sign: string;
|
|
31
|
+
}, import("yup").AnyObject, {
|
|
32
|
+
app: undefined;
|
|
33
|
+
appmaxprice: undefined;
|
|
34
|
+
workerpool: undefined;
|
|
35
|
+
workerpoolmaxprice: undefined;
|
|
36
|
+
dataset: undefined;
|
|
37
|
+
datasetmaxprice: undefined;
|
|
38
|
+
params: undefined;
|
|
39
|
+
requester: undefined;
|
|
40
|
+
beneficiary: undefined;
|
|
41
|
+
callback: undefined;
|
|
42
|
+
category: undefined;
|
|
43
|
+
volume: undefined;
|
|
44
|
+
tag: undefined;
|
|
45
|
+
trust: undefined;
|
|
46
|
+
salt: undefined;
|
|
47
|
+
sign: undefined;
|
|
48
|
+
}, "">;
|
package/dist/utils/validators.js
CHANGED
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import { isAddress } from 'ethers';
|
|
2
|
-
import {
|
|
2
|
+
import { NULL_ADDRESS } from 'iexec/utils';
|
|
3
|
+
import { ValidationError, boolean, number, object, string } from 'yup';
|
|
3
4
|
export const isValidProvider = async (iexec) => {
|
|
4
5
|
const client = await iexec.config.resolveContractsClient();
|
|
5
6
|
if (!client.signer) {
|
|
@@ -31,4 +32,47 @@ export const senderNameSchema = () => string().trim().min(3).max(20).optional();
|
|
|
31
32
|
export const labelSchema = () => string().trim().min(3).max(10).optional();
|
|
32
33
|
export const positiveNumberSchema = () => number().integer().min(0).typeError('${path} must be a non-negative number');
|
|
33
34
|
export const booleanSchema = () => boolean().strict().typeError('${path} should be a boolean');
|
|
35
|
+
const isPositiveIntegerStringTest = (value) => /^\d+$/.test(value);
|
|
36
|
+
const stringSchema = () => string().strict().typeError('${path} should be a string');
|
|
37
|
+
const positiveIntegerStringSchema = () => string().test('is-positive-int', '${path} should be a positive integer', (value) => isUndefined(value) || isPositiveIntegerStringTest(value));
|
|
38
|
+
const positiveStrictIntegerStringSchema = () => string().test('is-positive-strict-int', '${path} should be a strictly positive integer', (value) => isUndefined(value) ||
|
|
39
|
+
(value !== '0' && isPositiveIntegerStringTest(value)));
|
|
40
|
+
export const campaignRequestSchema = () => object({
|
|
41
|
+
app: addressSchema().required(),
|
|
42
|
+
appmaxprice: positiveIntegerStringSchema().required(),
|
|
43
|
+
workerpool: addressSchema().required(),
|
|
44
|
+
workerpoolmaxprice: positiveIntegerStringSchema().required(),
|
|
45
|
+
dataset: addressSchema().oneOf([NULL_ADDRESS]).required(),
|
|
46
|
+
datasetmaxprice: positiveIntegerStringSchema().oneOf(['0']).required(),
|
|
47
|
+
params: stringSchema()
|
|
48
|
+
.test('is-valid-bulk-params', '${path} should be a valid JSON string with bulk_cid field', (value) => {
|
|
49
|
+
try {
|
|
50
|
+
// eslint-disable-next-line @typescript-eslint/naming-convention
|
|
51
|
+
const { bulk_cid } = JSON.parse(value);
|
|
52
|
+
if (typeof bulk_cid === 'string') {
|
|
53
|
+
return true;
|
|
54
|
+
}
|
|
55
|
+
}
|
|
56
|
+
catch { }
|
|
57
|
+
return false;
|
|
58
|
+
})
|
|
59
|
+
.required(),
|
|
60
|
+
requester: addressSchema().required(),
|
|
61
|
+
beneficiary: addressSchema().required(),
|
|
62
|
+
callback: addressSchema().required(),
|
|
63
|
+
category: positiveIntegerStringSchema().required(),
|
|
64
|
+
volume: positiveStrictIntegerStringSchema().required(),
|
|
65
|
+
tag: stringSchema().required(),
|
|
66
|
+
trust: positiveIntegerStringSchema().required(),
|
|
67
|
+
salt: stringSchema().required(),
|
|
68
|
+
sign: stringSchema().required(),
|
|
69
|
+
})
|
|
70
|
+
.strict()
|
|
71
|
+
.typeError('${path} should be a BulkRequest object')
|
|
72
|
+
.test('is-defined', '${path} is required', (value) => {
|
|
73
|
+
// Check if value is undefined, null, or an empty object (which would be coerced from undefined)
|
|
74
|
+
return (value !== undefined &&
|
|
75
|
+
value !== null &&
|
|
76
|
+
!(typeof value === 'object' && Object.keys(value).length === 0));
|
|
77
|
+
});
|
|
34
78
|
//# sourceMappingURL=validators.js.map
|
|
@@ -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,eAAe,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,KAAK,CAAC;
|
|
1
|
+
{"version":3,"file":"validators.js","sourceRoot":"","sources":["../../src/utils/validators.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { AbstractProvider, AbstractSigner, Eip1193Provider } from 'ethers';
|
|
2
|
-
import { Contact, FetchUserContactsParams, SendEmailParams, Web3MailConfigOptions, SendEmailResponse, Web3SignerProvider, FetchMyContactsParams } from './types.js';
|
|
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
5
|
private dappAddressOrENS;
|
|
@@ -17,7 +17,9 @@ export declare class IExecWeb3mail {
|
|
|
17
17
|
init(): Promise<void>;
|
|
18
18
|
fetchMyContacts(args?: FetchMyContactsParams): Promise<Contact[]>;
|
|
19
19
|
fetchUserContacts(args: FetchUserContactsParams): Promise<Contact[]>;
|
|
20
|
-
sendEmail
|
|
20
|
+
sendEmail(args: SendEmailParams): Promise<SendEmailResponse>;
|
|
21
|
+
prepareEmailCampaign(args: PrepareEmailCampaignParams): Promise<PrepareEmailCampaignResponse>;
|
|
22
|
+
sendEmailCampaign(args: SendEmailCampaignParams): Promise<SendEmailCampaignResponse>;
|
|
21
23
|
private resolveConfig;
|
|
22
24
|
}
|
|
23
25
|
export {};
|
|
@@ -4,6 +4,8 @@ import { GraphQLClient } from 'graphql-request';
|
|
|
4
4
|
import { fetchUserContacts } from './fetchUserContacts.js';
|
|
5
5
|
import { fetchMyContacts } from './fetchMyContacts.js';
|
|
6
6
|
import { sendEmail } from './sendEmail.js';
|
|
7
|
+
import { prepareEmailCampaign } from './prepareEmailCampaign.js';
|
|
8
|
+
import { sendEmailCampaign } from './sendEmailCampaign.js';
|
|
7
9
|
import { isValidProvider } from '../utils/validators.js';
|
|
8
10
|
import { getChainIdFromProvider } from '../utils/getChainId.js';
|
|
9
11
|
import { getChainDefaultConfig } from '../config/config.js';
|
|
@@ -67,7 +69,6 @@ export class IExecWeb3mail {
|
|
|
67
69
|
...args,
|
|
68
70
|
workerpoolAddressOrEns: args.workerpoolAddressOrEns || this.defaultWorkerpool,
|
|
69
71
|
iexec: this.iexec,
|
|
70
|
-
dataProtector: this.dataProtector,
|
|
71
72
|
ipfsNode: this.ipfsNode,
|
|
72
73
|
ipfsGateway: this.ipfsGateway,
|
|
73
74
|
dappAddressOrENS: this.dappAddressOrENS,
|
|
@@ -75,6 +76,28 @@ export class IExecWeb3mail {
|
|
|
75
76
|
graphQLClient: this.graphQLClient,
|
|
76
77
|
});
|
|
77
78
|
}
|
|
79
|
+
async prepareEmailCampaign(args) {
|
|
80
|
+
await this.init();
|
|
81
|
+
await isValidProvider(this.iexec);
|
|
82
|
+
return prepareEmailCampaign({
|
|
83
|
+
...args,
|
|
84
|
+
workerpoolAddressOrEns: args.workerpoolAddressOrEns || this.defaultWorkerpool,
|
|
85
|
+
iexec: this.iexec,
|
|
86
|
+
dataProtector: this.dataProtector,
|
|
87
|
+
ipfsNode: this.ipfsNode,
|
|
88
|
+
ipfsGateway: this.ipfsGateway,
|
|
89
|
+
dappAddressOrENS: this.dappAddressOrENS,
|
|
90
|
+
});
|
|
91
|
+
}
|
|
92
|
+
async sendEmailCampaign(args) {
|
|
93
|
+
await this.init();
|
|
94
|
+
await isValidProvider(this.iexec);
|
|
95
|
+
return sendEmailCampaign({
|
|
96
|
+
...args,
|
|
97
|
+
workerpoolAddressOrEns: args.workerpoolAddressOrEns || this.defaultWorkerpool,
|
|
98
|
+
dataProtector: this.dataProtector,
|
|
99
|
+
});
|
|
100
|
+
}
|
|
78
101
|
async resolveConfig() {
|
|
79
102
|
const chainId = await getChainIdFromProvider(this.ethProvider);
|
|
80
103
|
const chainDefaultConfig = getChainDefaultConfig(chainId, {
|
|
@@ -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;
|
|
1
|
+
{"version":3,"file":"IExecWeb3mail.js","sourceRoot":"","sources":["../../src/web3mail/IExecWeb3mail.ts"],"names":[],"mappings":"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"}
|
|
@@ -4,6 +4,7 @@ export const fetchMyContacts = async ({ graphQLClient = throwIfMissing(), iexec
|
|
|
4
4
|
const vIsUserStrict = booleanSchema()
|
|
5
5
|
.label('isUserStrict')
|
|
6
6
|
.validateSync(isUserStrict);
|
|
7
|
+
const vBulkOnly = booleanSchema().label('bulkOnly').validateSync(bulkOnly);
|
|
7
8
|
const userAddress = await iexec.wallet.getAddress();
|
|
8
9
|
return fetchUserContacts({
|
|
9
10
|
iexec,
|
|
@@ -12,7 +13,7 @@ export const fetchMyContacts = async ({ graphQLClient = throwIfMissing(), iexec
|
|
|
12
13
|
dappWhitelistAddress,
|
|
13
14
|
userAddress,
|
|
14
15
|
isUserStrict: vIsUserStrict,
|
|
15
|
-
bulkOnly,
|
|
16
|
+
bulkOnly: vBulkOnly,
|
|
16
17
|
});
|
|
17
18
|
};
|
|
18
19
|
//# 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,EACpB,QAAQ,GAAG,KAAK,GAKK,EAAsB,EAAE;IAC7C,MAAM,aAAa,GAAG,aAAa,EAAE;SAClC,KAAK,CAAC,cAAc,CAAC;SACrB,YAAY,CAAC,YAAY,CAAC,CAAC;
|
|
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;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,gBAAgB;QAChB,oBAAoB;QACpB,WAAW;QACX,YAAY,EAAE,aAAa;QAC3B,QAAQ,EAAE,SAAS;KACpB,CAAC,CAAC;AACL,CAAC,CAAC"}
|
|
@@ -60,7 +60,7 @@ export const fetchUserContacts = async ({ graphQLClient = throwIfMissing(), iexe
|
|
|
60
60
|
dataset: order.order.dataset,
|
|
61
61
|
datasetprice: order.order.datasetprice.toString(),
|
|
62
62
|
volume: order.order.volume.toString(),
|
|
63
|
-
tag: order.order.tag,
|
|
63
|
+
tag: order.order.tag.toString(),
|
|
64
64
|
apprestrict: order.order.apprestrict,
|
|
65
65
|
workerpoolrestrict: order.order.workerpoolrestrict,
|
|
66
66
|
requesterrestrict: order.order.requesterrestrict,
|
|
@@ -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,EACpB,QAAQ,GAAG,KAAK,GAKO,EAAsB,EAAE;IAC/C,MAAM,iBAAiB,GAAG,kBAAkB,EAAE;SAC3C,QAAQ,EAAE;SACV,KAAK,CAAC,kBAAkB,CAAC;SACzB,YAAY,CAAC,gBAAgB,CAAC,CAAC;IAClC,MAAM,qBAAqB,GAAG,aAAa,EAAE;SAC1C,QAAQ,EAAE;SACV,KAAK,CAAC,sBAAsB,CAAC;SAC7B,YAAY,CAAC,oBAAoB,CAAC,CAAC;IACtC,MAAM,YAAY,GAAG,kBAAkB,EAAE;SACtC,QAAQ,EAAE;SACV,KAAK,CAAC,aAAa,CAAC;SACpB,YAAY,CAAC,WAAW,CAAC,CAAC;IAC7B,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,IAAI,CAAC;QACH,MAAM,CAAC,UAAU,EAAE,eAAe,CAAC,GAAG,MAAM,OAAO,CAAC,GAAG,CAAC;YACtD,mBAAmB,CAAC;gBAClB,KAAK;gBACL,WAAW,EAAE,YAAY;gBACzB,UAAU,EAAE,iBAAiB;gBAC7B,YAAY,EAAE,aAAa;gBAC3B,QAAQ,EAAE,SAAS;aACpB,CAAC;YACF,mBAAmB,CAAC;gBAClB,KAAK;gBACL,WAAW,EAAE,YAAY;gBACzB,UAAU,EAAE,qBAAqB;gBACjC,YAAY,EAAE,aAAa;gBAC3B,QAAQ,EAAE,SAAS;aACpB,CAAC;SACH,CAAC,CAAC;
|
|
1
|
+
{"version":3,"file":"fetchUserContacts.js","sourceRoot":"","sources":["../../src/web3mail/fetchUserContacts.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { IExec } from 'iexec';
|
|
2
|
+
import { IExecDataProtectorCore } from '@iexec/dataprotector';
|
|
2
3
|
import { AddressOrENS } from './types.js';
|
|
3
4
|
import { GraphQLClient } from 'graphql-request';
|
|
4
|
-
import { IExecDataProtectorCore } from '@iexec/dataprotector';
|
|
5
5
|
export type ProtectedDataQuery = {
|
|
6
6
|
id: string;
|
|
7
7
|
name: string;
|
|
@@ -24,9 +24,9 @@ export type DappWhitelistAddressConsumer = {
|
|
|
24
24
|
export type IExecConsumer = {
|
|
25
25
|
iexec: IExec;
|
|
26
26
|
};
|
|
27
|
-
export type DataProtectorConsumer = {
|
|
28
|
-
dataProtector: IExecDataProtectorCore;
|
|
29
|
-
};
|
|
30
27
|
export type SubgraphConsumer = {
|
|
31
28
|
graphQLClient: GraphQLClient;
|
|
32
29
|
};
|
|
30
|
+
export type DataProtectorConsumer = {
|
|
31
|
+
dataProtector: IExecDataProtectorCore;
|
|
32
|
+
};
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
import { PrepareEmailCampaignParams, PrepareEmailCampaignResponse } from './types.js';
|
|
2
|
+
import { DappAddressConsumer, DataProtectorConsumer, IExecConsumer, IpfsGatewayConfigConsumer, IpfsNodeConfigConsumer } from './internalTypes.js';
|
|
3
|
+
export type PrepareEmailCampaign = typeof prepareEmailCampaign;
|
|
4
|
+
export declare const prepareEmailCampaign: ({ iexec, dataProtector, workerpoolAddressOrEns, dappAddressOrENS, ipfsNode, ipfsGateway, senderName, emailSubject, emailContent, contentType, label, appMaxPrice, workerpoolMaxPrice, grantedAccesses, maxProtectedDataPerTask, }: IExecConsumer & DappAddressConsumer & IpfsNodeConfigConsumer & IpfsGatewayConfigConsumer & DataProtectorConsumer & PrepareEmailCampaignParams) => Promise<PrepareEmailCampaignResponse>;
|
|
@@ -0,0 +1,106 @@
|
|
|
1
|
+
import { Buffer } from 'buffer';
|
|
2
|
+
import { DEFAULT_CONTENT_TYPE, MAX_DESIRED_APP_ORDER_PRICE, MAX_DESIRED_WORKERPOOL_ORDER_PRICE, } from '../config/config.js';
|
|
3
|
+
import { handleIfProtocolError, WorkflowError } from '../utils/errors.js';
|
|
4
|
+
import * as ipfs from '../utils/ipfs-service.js';
|
|
5
|
+
import { addressOrEnsSchema, contentTypeSchema, emailContentSchema, emailSubjectSchema, labelSchema, positiveNumberSchema, senderNameSchema, throwIfMissing, } from '../utils/validators.js';
|
|
6
|
+
export const prepareEmailCampaign = async ({ iexec = throwIfMissing(), dataProtector = throwIfMissing(), workerpoolAddressOrEns, dappAddressOrENS, ipfsNode, ipfsGateway, senderName, emailSubject, emailContent, contentType = DEFAULT_CONTENT_TYPE, label, appMaxPrice = MAX_DESIRED_APP_ORDER_PRICE, workerpoolMaxPrice = MAX_DESIRED_WORKERPOOL_ORDER_PRICE, grantedAccesses, maxProtectedDataPerTask, }) => {
|
|
7
|
+
try {
|
|
8
|
+
const vWorkerpoolAddressOrEns = addressOrEnsSchema()
|
|
9
|
+
.label('WorkerpoolAddressOrEns')
|
|
10
|
+
.validateSync(workerpoolAddressOrEns);
|
|
11
|
+
const vSenderName = senderNameSchema()
|
|
12
|
+
.label('senderName')
|
|
13
|
+
.validateSync(senderName);
|
|
14
|
+
const vEmailSubject = emailSubjectSchema()
|
|
15
|
+
.required()
|
|
16
|
+
.label('emailSubject')
|
|
17
|
+
.validateSync(emailSubject);
|
|
18
|
+
const vEmailContent = emailContentSchema()
|
|
19
|
+
.required()
|
|
20
|
+
.label('emailContent')
|
|
21
|
+
.validateSync(emailContent);
|
|
22
|
+
const vContentType = contentTypeSchema()
|
|
23
|
+
.label('contentType')
|
|
24
|
+
.validateSync(contentType);
|
|
25
|
+
const vLabel = labelSchema().label('label').validateSync(label);
|
|
26
|
+
const vDappAddressOrENS = addressOrEnsSchema()
|
|
27
|
+
.required()
|
|
28
|
+
.label('dappAddressOrENS')
|
|
29
|
+
.validateSync(dappAddressOrENS);
|
|
30
|
+
const vAppMaxPrice = positiveNumberSchema()
|
|
31
|
+
.label('appMaxPrice')
|
|
32
|
+
.validateSync(appMaxPrice);
|
|
33
|
+
const vWorkerpoolMaxPrice = positiveNumberSchema()
|
|
34
|
+
.label('workerpoolMaxPrice')
|
|
35
|
+
.validateSync(workerpoolMaxPrice);
|
|
36
|
+
const vMaxProtectedDataPerTask = positiveNumberSchema()
|
|
37
|
+
.label('maxProtectedDataPerTask')
|
|
38
|
+
.validateSync(maxProtectedDataPerTask);
|
|
39
|
+
// TODO: factor this
|
|
40
|
+
// Encrypt email content
|
|
41
|
+
const emailContentEncryptionKey = iexec.dataset.generateEncryptionKey();
|
|
42
|
+
const encryptedFile = await iexec.dataset
|
|
43
|
+
.encrypt(Buffer.from(vEmailContent, 'utf8'), emailContentEncryptionKey)
|
|
44
|
+
.catch((e) => {
|
|
45
|
+
throw new WorkflowError({
|
|
46
|
+
message: 'Failed to encrypt email content',
|
|
47
|
+
errorCause: e,
|
|
48
|
+
});
|
|
49
|
+
});
|
|
50
|
+
// Push email content to IPFS
|
|
51
|
+
const cid = await ipfs
|
|
52
|
+
.add(encryptedFile, {
|
|
53
|
+
ipfsNode,
|
|
54
|
+
ipfsGateway,
|
|
55
|
+
})
|
|
56
|
+
.catch((e) => {
|
|
57
|
+
throw new WorkflowError({
|
|
58
|
+
message: 'Failed to upload encrypted email content',
|
|
59
|
+
errorCause: e,
|
|
60
|
+
});
|
|
61
|
+
});
|
|
62
|
+
const multiaddr = `/ipfs/${cid}`;
|
|
63
|
+
// Prepare secrets for the requester
|
|
64
|
+
// Use a positive integer as secret ID (required by iexec)
|
|
65
|
+
// Using "1" as a fixed ID for the requester secret
|
|
66
|
+
const requesterSecretId = 1;
|
|
67
|
+
const secrets = {
|
|
68
|
+
[requesterSecretId]: JSON.stringify({
|
|
69
|
+
emailSubject: vEmailSubject,
|
|
70
|
+
emailContentMultiAddr: multiaddr,
|
|
71
|
+
contentType: vContentType,
|
|
72
|
+
senderName: vSenderName,
|
|
73
|
+
emailContentEncryptionKey,
|
|
74
|
+
useCallback: true,
|
|
75
|
+
}),
|
|
76
|
+
};
|
|
77
|
+
// TODO: end factor this
|
|
78
|
+
const { bulkRequest: campaignRequest } = await dataProtector.prepareBulkRequest({
|
|
79
|
+
app: vDappAddressOrENS,
|
|
80
|
+
appMaxPrice: vAppMaxPrice,
|
|
81
|
+
workerpoolMaxPrice: vWorkerpoolMaxPrice,
|
|
82
|
+
workerpool: vWorkerpoolAddressOrEns,
|
|
83
|
+
args: vLabel,
|
|
84
|
+
inputFiles: [],
|
|
85
|
+
secrets,
|
|
86
|
+
bulkAccesses: grantedAccesses,
|
|
87
|
+
maxProtectedDataPerTask: vMaxProtectedDataPerTask,
|
|
88
|
+
});
|
|
89
|
+
return { campaignRequest };
|
|
90
|
+
}
|
|
91
|
+
catch (error) {
|
|
92
|
+
// Protocol error detected, re-throwing as-is
|
|
93
|
+
if (error?.isProtocolError === true) {
|
|
94
|
+
throw error;
|
|
95
|
+
}
|
|
96
|
+
// Handle protocol errors - this will throw if it's an ApiCallError
|
|
97
|
+
// handleIfProtocolError transforms ApiCallError into a WorkflowError with isProtocolError=true
|
|
98
|
+
handleIfProtocolError(error);
|
|
99
|
+
// For all other errors
|
|
100
|
+
throw new WorkflowError({
|
|
101
|
+
message: 'Failed to prepareEmailCampaign',
|
|
102
|
+
errorCause: error,
|
|
103
|
+
});
|
|
104
|
+
}
|
|
105
|
+
};
|
|
106
|
+
//# sourceMappingURL=prepareEmailCampaign.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"prepareEmailCampaign.js","sourceRoot":"","sources":["../../src/web3mail/prepareEmailCampaign.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;AAChC,OAAO,EACL,oBAAoB,EACpB,2BAA2B,EAC3B,kCAAkC,GACnC,MAAM,qBAAqB,CAAC;AAC7B,OAAO,EAAE,qBAAqB,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AAC1E,OAAO,KAAK,IAAI,MAAM,0BAA0B,CAAC;AACjD,OAAO,EACL,kBAAkB,EAClB,iBAAiB,EACjB,kBAAkB,EAClB,kBAAkB,EAClB,WAAW,EACX,oBAAoB,EACpB,gBAAgB,EAChB,cAAc,GACf,MAAM,wBAAwB,CAAC;AAehC,MAAM,CAAC,MAAM,oBAAoB,GAAG,KAAK,EAAE,EACzC,KAAK,GAAG,cAAc,EAAE,EACxB,aAAa,GAAG,cAAc,EAAE,EAChC,sBAAsB,EACtB,gBAAgB,EAChB,QAAQ,EACR,WAAW,EACX,UAAU,EACV,YAAY,EACZ,YAAY,EACZ,WAAW,GAAG,oBAAoB,EAClC,KAAK,EACL,WAAW,GAAG,2BAA2B,EACzC,kBAAkB,GAAG,kCAAkC,EACvD,eAAe,EACf,uBAAuB,GAMG,EAAyC,EAAE;IACrE,IAAI,CAAC;QACH,MAAM,uBAAuB,GAAG,kBAAkB,EAAE;aACjD,KAAK,CAAC,wBAAwB,CAAC;aAC/B,YAAY,CAAC,sBAAsB,CAAC,CAAC;QAExC,MAAM,WAAW,GAAG,gBAAgB,EAAE;aACnC,KAAK,CAAC,YAAY,CAAC;aACnB,YAAY,CAAC,UAAU,CAAC,CAAC;QAE5B,MAAM,aAAa,GAAG,kBAAkB,EAAE;aACvC,QAAQ,EAAE;aACV,KAAK,CAAC,cAAc,CAAC;aACrB,YAAY,CAAC,YAAY,CAAC,CAAC;QAE9B,MAAM,aAAa,GAAG,kBAAkB,EAAE;aACvC,QAAQ,EAAE;aACV,KAAK,CAAC,cAAc,CAAC;aACrB,YAAY,CAAC,YAAY,CAAC,CAAC;QAE9B,MAAM,YAAY,GAAG,iBAAiB,EAAE;aACrC,KAAK,CAAC,aAAa,CAAC;aACpB,YAAY,CAAC,WAAW,CAAC,CAAC;QAE7B,MAAM,MAAM,GAAG,WAAW,EAAE,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,YAAY,CAAC,KAAK,CAAC,CAAC;QAEhE,MAAM,iBAAiB,GAAG,kBAAkB,EAAE;aAC3C,QAAQ,EAAE;aACV,KAAK,CAAC,kBAAkB,CAAC;aACzB,YAAY,CAAC,gBAAgB,CAAC,CAAC;QAElC,MAAM,YAAY,GAAG,oBAAoB,EAAE;aACxC,KAAK,CAAC,aAAa,CAAC;aACpB,YAAY,CAAC,WAAW,CAAC,CAAC;QAE7B,MAAM,mBAAmB,GAAG,oBAAoB,EAAE;aAC/C,KAAK,CAAC,oBAAoB,CAAC;aAC3B,YAAY,CAAC,kBAAkB,CAAC,CAAC;QAEpC,MAAM,wBAAwB,GAAG,oBAAoB,EAAE;aACpD,KAAK,CAAC,yBAAyB,CAAC;aAChC,YAAY,CAAC,uBAAuB,CAAC,CAAC;QAEzC,oBAAoB;QACpB,wBAAwB;QACxB,MAAM,yBAAyB,GAAG,KAAK,CAAC,OAAO,CAAC,qBAAqB,EAAE,CAAC;QACxE,MAAM,aAAa,GAAG,MAAM,KAAK,CAAC,OAAO;aACtC,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC,aAAa,EAAE,MAAM,CAAC,EAAE,yBAAyB,CAAC;aACtE,KAAK,CAAC,CAAC,CAAC,EAAE,EAAE;YACX,MAAM,IAAI,aAAa,CAAC;gBACtB,OAAO,EAAE,iCAAiC;gBAC1C,UAAU,EAAE,CAAC;aACd,CAAC,CAAC;QACL,CAAC,CAAC,CAAC;QAEL,6BAA6B;QAC7B,MAAM,GAAG,GAAG,MAAM,IAAI;aACnB,GAAG,CAAC,aAAa,EAAE;YAClB,QAAQ;YACR,WAAW;SACZ,CAAC;aACD,KAAK,CAAC,CAAC,CAAC,EAAE,EAAE;YACX,MAAM,IAAI,aAAa,CAAC;gBACtB,OAAO,EAAE,0CAA0C;gBACnD,UAAU,EAAE,CAAC;aACd,CAAC,CAAC;QACL,CAAC,CAAC,CAAC;QAEL,MAAM,SAAS,GAAG,SAAS,GAAG,EAAE,CAAC;QAEjC,oCAAoC;QACpC,0DAA0D;QAC1D,mDAAmD;QACnD,MAAM,iBAAiB,GAAG,CAAC,CAAC;QAC5B,MAAM,OAAO,GAAG;YACd,CAAC,iBAAiB,CAAC,EAAE,IAAI,CAAC,SAAS,CAAC;gBAClC,YAAY,EAAE,aAAa;gBAC3B,qBAAqB,EAAE,SAAS;gBAChC,WAAW,EAAE,YAAY;gBACzB,UAAU,EAAE,WAAW;gBACvB,yBAAyB;gBACzB,WAAW,EAAE,IAAI;aAClB,CAAC;SACH,CAAC;QAEF,wBAAwB;QACxB,MAAM,EAAE,WAAW,EAAE,eAAe,EAAE,GACpC,MAAM,aAAa,CAAC,kBAAkB,CAAC;YACrC,GAAG,EAAE,iBAAiB;YACtB,WAAW,EAAE,YAAY;YACzB,kBAAkB,EAAE,mBAAmB;YACvC,UAAU,EAAE,uBAAuB;YACnC,IAAI,EAAE,MAAM;YACZ,UAAU,EAAE,EAAE;YACd,OAAO;YACP,YAAY,EAAE,eAAe;YAC7B,uBAAuB,EAAE,wBAAwB;SAClD,CAAC,CAAC;QAEL,OAAO,EAAE,eAAe,EAAE,CAAC;IAC7B,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,6CAA6C;QAC7C,IAAK,KAAa,EAAE,eAAe,KAAK,IAAI,EAAE,CAAC;YAC7C,MAAM,KAAK,CAAC;QACd,CAAC;QAED,mEAAmE;QACnE,+FAA+F;QAC/F,qBAAqB,CAAC,KAAK,CAAC,CAAC;QAE7B,uBAAuB;QACvB,MAAM,IAAI,aAAa,CAAC;YACtB,OAAO,EAAE,gCAAgC;YACzC,UAAU,EAAE,KAAK;SAClB,CAAC,CAAC;IACL,CAAC;AACH,CAAC,CAAC"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
1
|
import { SendEmailParams, SendEmailResponse } from './types.js';
|
|
2
|
-
import { DappAddressConsumer, DappWhitelistAddressConsumer,
|
|
2
|
+
import { DappAddressConsumer, DappWhitelistAddressConsumer, IExecConsumer, IpfsGatewayConfigConsumer, IpfsNodeConfigConsumer, SubgraphConsumer } from './internalTypes.js';
|
|
3
3
|
export type SendEmail = typeof sendEmail;
|
|
4
|
-
export declare const sendEmail: ({ graphQLClient, iexec,
|
|
4
|
+
export declare const sendEmail: ({ graphQLClient, iexec, workerpoolAddressOrEns, dappAddressOrENS, dappWhitelistAddress, ipfsNode, ipfsGateway, emailSubject, emailContent, contentType, label, dataMaxPrice, appMaxPrice, workerpoolMaxPrice, senderName, protectedData, useVoucher, }: IExecConsumer & SubgraphConsumer & DappAddressConsumer & DappWhitelistAddressConsumer & IpfsNodeConfigConsumer & IpfsGatewayConfigConsumer & SendEmailParams) => Promise<SendEmailResponse>;
|