@agentdomain/shared 0.3.0 → 0.4.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/constants.d.ts +37 -14
- package/dist/constants.d.ts.map +1 -1
- package/dist/constants.js +40 -14
- package/dist/constants.js.map +1 -1
- package/dist/schemas.d.ts +59 -4
- package/dist/schemas.d.ts.map +1 -1
- package/dist/schemas.js +23 -12
- package/dist/schemas.js.map +1 -1
- package/dist/types.d.ts +7 -2
- package/dist/types.d.ts.map +1 -1
- package/dist/utils.d.ts +8 -2
- package/dist/utils.d.ts.map +1 -1
- package/dist/utils.js +35 -2
- package/dist/utils.js.map +1 -1
- package/package.json +1 -1
package/dist/constants.d.ts
CHANGED
|
@@ -21,35 +21,53 @@ export declare const USDC_BASE_SEPOLIA = "0x036CbD53842c5426634e7929541eC2318f3d
|
|
|
21
21
|
export declare const X402_PAYMENT_HEADER = "X-Payment";
|
|
22
22
|
export declare const X402_PAYMENT_REQUIRED_HEADER = "X-Payment-Required";
|
|
23
23
|
export declare const AGENTDOMAIN_API_BASE_URL = "https://agentdomain.app/api/v1";
|
|
24
|
-
export declare const SERVICE_PLAN_KEYS: readonly ["included", "pro", "enterprise"];
|
|
24
|
+
export declare const SERVICE_PLAN_KEYS: readonly ["included", "starter", "pro", "enterprise"];
|
|
25
25
|
export declare const SERVICE_PLAN_INTERVALS: readonly ["yearly"];
|
|
26
|
+
export declare const EMAIL_RETENTION_DAYS = 30;
|
|
27
|
+
export declare const EMAIL_REQUESTS_PER_SECOND = 12;
|
|
28
|
+
export declare const ENTERPRISE_EMAIL_TIERS: readonly [100000, 150000, 200000, 300000, 400000, 500000, 600000, 700000, 800000, 900000, 1000000, 1500000, 2000000, 2500000, 3000000, 3500000, 4000000, 4500000, 5000000];
|
|
26
29
|
export declare const SERVICE_PLAN_CATALOG: {
|
|
27
30
|
readonly included: {
|
|
28
31
|
readonly key: "included";
|
|
29
32
|
readonly label: "Included";
|
|
30
33
|
readonly yearlyPriceUsdcAtomic: 0n;
|
|
31
34
|
readonly limits: {
|
|
32
|
-
readonly
|
|
33
|
-
readonly
|
|
35
|
+
readonly monthlyEmails: 3000;
|
|
36
|
+
readonly requestsPerSecond: 12;
|
|
34
37
|
readonly apiKeys: 1;
|
|
35
38
|
readonly dnsRecords: 20;
|
|
36
39
|
readonly emailAliases: 0;
|
|
37
|
-
readonly emailRetentionDays:
|
|
40
|
+
readonly emailRetentionDays: 30;
|
|
38
41
|
};
|
|
39
42
|
readonly supportTier: "standard";
|
|
40
43
|
readonly registryPriority: false;
|
|
41
44
|
};
|
|
42
|
-
readonly
|
|
43
|
-
readonly key: "
|
|
44
|
-
readonly label: "
|
|
45
|
+
readonly starter: {
|
|
46
|
+
readonly key: "starter";
|
|
47
|
+
readonly label: "Starter";
|
|
45
48
|
readonly yearlyPriceUsdcAtomic: 59000000n;
|
|
46
49
|
readonly limits: {
|
|
47
|
-
readonly
|
|
48
|
-
readonly
|
|
50
|
+
readonly monthlyEmails: 25000;
|
|
51
|
+
readonly requestsPerSecond: 12;
|
|
49
52
|
readonly apiKeys: 5;
|
|
50
53
|
readonly dnsRecords: 100;
|
|
51
54
|
readonly emailAliases: 5;
|
|
52
|
-
readonly emailRetentionDays:
|
|
55
|
+
readonly emailRetentionDays: 30;
|
|
56
|
+
};
|
|
57
|
+
readonly supportTier: "standard";
|
|
58
|
+
readonly registryPriority: false;
|
|
59
|
+
};
|
|
60
|
+
readonly pro: {
|
|
61
|
+
readonly key: "pro";
|
|
62
|
+
readonly label: "Pro";
|
|
63
|
+
readonly yearlyPriceUsdcAtomic: 120000000n;
|
|
64
|
+
readonly limits: {
|
|
65
|
+
readonly monthlyEmails: 50000;
|
|
66
|
+
readonly requestsPerSecond: 12;
|
|
67
|
+
readonly apiKeys: 10;
|
|
68
|
+
readonly dnsRecords: 250;
|
|
69
|
+
readonly emailAliases: 10;
|
|
70
|
+
readonly emailRetentionDays: 30;
|
|
53
71
|
};
|
|
54
72
|
readonly supportTier: "priority";
|
|
55
73
|
readonly registryPriority: false;
|
|
@@ -57,19 +75,24 @@ export declare const SERVICE_PLAN_CATALOG: {
|
|
|
57
75
|
readonly enterprise: {
|
|
58
76
|
readonly key: "enterprise";
|
|
59
77
|
readonly label: "Enterprise";
|
|
60
|
-
readonly yearlyPriceUsdcAtomic:
|
|
78
|
+
readonly yearlyPriceUsdcAtomic: 240000000n;
|
|
61
79
|
readonly limits: {
|
|
62
|
-
readonly
|
|
63
|
-
readonly
|
|
80
|
+
readonly monthlyEmails: 100000;
|
|
81
|
+
readonly requestsPerSecond: 12;
|
|
64
82
|
readonly apiKeys: 25;
|
|
65
83
|
readonly dnsRecords: 500;
|
|
66
84
|
readonly emailAliases: 20;
|
|
67
|
-
readonly emailRetentionDays:
|
|
85
|
+
readonly emailRetentionDays: 30;
|
|
68
86
|
};
|
|
69
87
|
readonly supportTier: "enterprise";
|
|
70
88
|
readonly registryPriority: true;
|
|
71
89
|
};
|
|
72
90
|
};
|
|
91
|
+
export declare const ENTERPRISE_PLAN_OFFERS: {
|
|
92
|
+
sku: "enterprise-100000" | "enterprise-150000" | "enterprise-200000" | "enterprise-300000" | "enterprise-400000" | "enterprise-500000" | "enterprise-600000" | "enterprise-700000" | "enterprise-800000" | "enterprise-900000" | "enterprise-1000000" | "enterprise-1500000" | "enterprise-2000000" | "enterprise-2500000" | "enterprise-3000000" | "enterprise-3500000" | "enterprise-4000000" | "enterprise-4500000" | "enterprise-5000000";
|
|
93
|
+
monthlyEmails: 100000 | 150000 | 200000 | 300000 | 400000 | 500000 | 600000 | 700000 | 800000 | 900000 | 1000000 | 1500000 | 2000000 | 2500000 | 3000000 | 3500000 | 4000000 | 4500000 | 5000000;
|
|
94
|
+
yearlyPriceUsdcAtomic: bigint;
|
|
95
|
+
}[];
|
|
73
96
|
export declare const ENS_MAINNET: {
|
|
74
97
|
readonly registrarController: "0x253553366Da8546fC250F225fe3d25d0C782303b";
|
|
75
98
|
readonly publicResolver: "0x231b0Ee14048e9dCcD1d247744d114a4EB5E8E63";
|
package/dist/constants.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"constants.d.ts","sourceRoot":"","sources":["../src/constants.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,yBAAyB,IAAI,CAAC;AAC3C,eAAO,MAAM,aAAa,OAAO,CAAC;AAClC,eAAO,MAAM,aAAa,IAAI,CAAC;AAC/B,eAAO,MAAM,2BAA2B,KAAK,CAAC;AAC9C,eAAO,MAAM,0BAA0B,KAAK,CAAC;AAC7C,eAAO,MAAM,iCAAiC,WAAa,CAAC;AAC5D,eAAO,MAAM,uBAAuB,WAAa,CAAC;AAClD,eAAO,MAAM,qBAAqB,KAAK,CAAC;AACxC,eAAO,MAAM,iCAAiC,KAAK,CAAC;AACpD,eAAO,MAAM,+BAA+B,WAA0B,CAAC;AACvE,eAAO,MAAM,wBAAwB,KAAK,CAAC;AAC3C,eAAO,MAAM,mBAAmB,KAAK,CAAC;AACtC,eAAO,MAAM,yBAAyB,SAAU,CAAC;AACjD,eAAO,MAAM,+BAA+B,UAAW,CAAC;AACxD,eAAO,MAAM,0BAA0B,UAAW,CAAC;AACnD,eAAO,MAAM,oBAAoB,SAAU,CAAC;AAC5C,eAAO,MAAM,6BAA6B,UAAW,CAAC;AACtD,eAAO,MAAM,wBAAwB,UAAW,CAAC;AACjD,eAAO,MAAM,SAAS,+CAA+C,CAAC;AACtE,eAAO,MAAM,iBAAiB,+CAA+C,CAAC;AAC9E,eAAO,MAAM,mBAAmB,cAAc,CAAC;AAC/C,eAAO,MAAM,4BAA4B,uBAAuB,CAAC;AACjE,eAAO,MAAM,wBAAwB,mCAAmC,CAAC;AAEzE,eAAO,MAAM,iBAAiB,
|
|
1
|
+
{"version":3,"file":"constants.d.ts","sourceRoot":"","sources":["../src/constants.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,yBAAyB,IAAI,CAAC;AAC3C,eAAO,MAAM,aAAa,OAAO,CAAC;AAClC,eAAO,MAAM,aAAa,IAAI,CAAC;AAC/B,eAAO,MAAM,2BAA2B,KAAK,CAAC;AAC9C,eAAO,MAAM,0BAA0B,KAAK,CAAC;AAC7C,eAAO,MAAM,iCAAiC,WAAa,CAAC;AAC5D,eAAO,MAAM,uBAAuB,WAAa,CAAC;AAClD,eAAO,MAAM,qBAAqB,KAAK,CAAC;AACxC,eAAO,MAAM,iCAAiC,KAAK,CAAC;AACpD,eAAO,MAAM,+BAA+B,WAA0B,CAAC;AACvE,eAAO,MAAM,wBAAwB,KAAK,CAAC;AAC3C,eAAO,MAAM,mBAAmB,KAAK,CAAC;AACtC,eAAO,MAAM,yBAAyB,SAAU,CAAC;AACjD,eAAO,MAAM,+BAA+B,UAAW,CAAC;AACxD,eAAO,MAAM,0BAA0B,UAAW,CAAC;AACnD,eAAO,MAAM,oBAAoB,SAAU,CAAC;AAC5C,eAAO,MAAM,6BAA6B,UAAW,CAAC;AACtD,eAAO,MAAM,wBAAwB,UAAW,CAAC;AACjD,eAAO,MAAM,SAAS,+CAA+C,CAAC;AACtE,eAAO,MAAM,iBAAiB,+CAA+C,CAAC;AAC9E,eAAO,MAAM,mBAAmB,cAAc,CAAC;AAC/C,eAAO,MAAM,4BAA4B,uBAAuB,CAAC;AACjE,eAAO,MAAM,wBAAwB,mCAAmC,CAAC;AAEzE,eAAO,MAAM,iBAAiB,uDAAwD,CAAC;AACvF,eAAO,MAAM,sBAAsB,qBAAsB,CAAC;AAC1D,eAAO,MAAM,oBAAoB,KAAK,CAAC;AACvC,eAAO,MAAM,yBAAyB,KAAK,CAAC;AAC5C,eAAO,MAAM,sBAAsB,4KAGzB,CAAC;AAEX,eAAO,MAAM,oBAAoB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA6DvB,CAAC;AAEX,eAAO,MAAM,sBAAsB;;;;GAIhC,CAAC;AAEJ,eAAO,MAAM,WAAW;;;;;;CAMd,CAAC;AAEX,eAAO,MAAM,iBAAiB;;;;CAIpB,CAAC;AAEX,eAAO,MAAM,iBAAiB;;;;CAIpB,CAAC;AAEX,eAAO,MAAM,cAAc,gEAAiE,CAAC;AAE7F,eAAO,MAAM,sBAAsB,gEAAiB,CAAC;AAErD,eAAO,MAAM,oBAAoB,8EAOvB,CAAC"}
|
package/dist/constants.js
CHANGED
|
@@ -21,35 +21,56 @@ export const USDC_BASE_SEPOLIA = '0x036CbD53842c5426634e7929541eC2318f3dCF7e';
|
|
|
21
21
|
export const X402_PAYMENT_HEADER = 'X-Payment';
|
|
22
22
|
export const X402_PAYMENT_REQUIRED_HEADER = 'X-Payment-Required';
|
|
23
23
|
export const AGENTDOMAIN_API_BASE_URL = 'https://agentdomain.app/api/v1';
|
|
24
|
-
export const SERVICE_PLAN_KEYS = ['included', 'pro', 'enterprise'];
|
|
24
|
+
export const SERVICE_PLAN_KEYS = ['included', 'starter', 'pro', 'enterprise'];
|
|
25
25
|
export const SERVICE_PLAN_INTERVALS = ['yearly'];
|
|
26
|
+
export const EMAIL_RETENTION_DAYS = 30;
|
|
27
|
+
export const EMAIL_REQUESTS_PER_SECOND = 12;
|
|
28
|
+
export const ENTERPRISE_EMAIL_TIERS = [
|
|
29
|
+
100_000, 150_000, 200_000, 300_000, 400_000, 500_000, 600_000, 700_000, 800_000, 900_000,
|
|
30
|
+
1_000_000, 1_500_000, 2_000_000, 2_500_000, 3_000_000, 3_500_000, 4_000_000, 4_500_000, 5_000_000,
|
|
31
|
+
];
|
|
26
32
|
export const SERVICE_PLAN_CATALOG = {
|
|
27
33
|
included: {
|
|
28
34
|
key: 'included',
|
|
29
35
|
label: 'Included',
|
|
30
36
|
yearlyPriceUsdcAtomic: 0n,
|
|
31
37
|
limits: {
|
|
32
|
-
|
|
33
|
-
|
|
38
|
+
monthlyEmails: 3_000,
|
|
39
|
+
requestsPerSecond: EMAIL_REQUESTS_PER_SECOND,
|
|
34
40
|
apiKeys: 1,
|
|
35
41
|
dnsRecords: 20,
|
|
36
42
|
emailAliases: 0,
|
|
37
|
-
emailRetentionDays:
|
|
43
|
+
emailRetentionDays: EMAIL_RETENTION_DAYS,
|
|
38
44
|
},
|
|
39
45
|
supportTier: 'standard',
|
|
40
46
|
registryPriority: false,
|
|
41
47
|
},
|
|
42
|
-
|
|
43
|
-
key: '
|
|
44
|
-
label: '
|
|
48
|
+
starter: {
|
|
49
|
+
key: 'starter',
|
|
50
|
+
label: 'Starter',
|
|
45
51
|
yearlyPriceUsdcAtomic: 59000000n,
|
|
46
52
|
limits: {
|
|
47
|
-
|
|
48
|
-
|
|
53
|
+
monthlyEmails: 25_000,
|
|
54
|
+
requestsPerSecond: EMAIL_REQUESTS_PER_SECOND,
|
|
49
55
|
apiKeys: 5,
|
|
50
56
|
dnsRecords: 100,
|
|
51
57
|
emailAliases: 5,
|
|
52
|
-
emailRetentionDays:
|
|
58
|
+
emailRetentionDays: EMAIL_RETENTION_DAYS,
|
|
59
|
+
},
|
|
60
|
+
supportTier: 'standard',
|
|
61
|
+
registryPriority: false,
|
|
62
|
+
},
|
|
63
|
+
pro: {
|
|
64
|
+
key: 'pro',
|
|
65
|
+
label: 'Pro',
|
|
66
|
+
yearlyPriceUsdcAtomic: 120000000n,
|
|
67
|
+
limits: {
|
|
68
|
+
monthlyEmails: 50_000,
|
|
69
|
+
requestsPerSecond: EMAIL_REQUESTS_PER_SECOND,
|
|
70
|
+
apiKeys: 10,
|
|
71
|
+
dnsRecords: 250,
|
|
72
|
+
emailAliases: 10,
|
|
73
|
+
emailRetentionDays: EMAIL_RETENTION_DAYS,
|
|
53
74
|
},
|
|
54
75
|
supportTier: 'priority',
|
|
55
76
|
registryPriority: false,
|
|
@@ -57,19 +78,24 @@ export const SERVICE_PLAN_CATALOG = {
|
|
|
57
78
|
enterprise: {
|
|
58
79
|
key: 'enterprise',
|
|
59
80
|
label: 'Enterprise',
|
|
60
|
-
yearlyPriceUsdcAtomic:
|
|
81
|
+
yearlyPriceUsdcAtomic: 240000000n,
|
|
61
82
|
limits: {
|
|
62
|
-
|
|
63
|
-
|
|
83
|
+
monthlyEmails: 100_000,
|
|
84
|
+
requestsPerSecond: EMAIL_REQUESTS_PER_SECOND,
|
|
64
85
|
apiKeys: 25,
|
|
65
86
|
dnsRecords: 500,
|
|
66
87
|
emailAliases: 20,
|
|
67
|
-
emailRetentionDays:
|
|
88
|
+
emailRetentionDays: EMAIL_RETENTION_DAYS,
|
|
68
89
|
},
|
|
69
90
|
supportTier: 'enterprise',
|
|
70
91
|
registryPriority: true,
|
|
71
92
|
},
|
|
72
93
|
};
|
|
94
|
+
export const ENTERPRISE_PLAN_OFFERS = ENTERPRISE_EMAIL_TIERS.map((monthlyEmails) => ({
|
|
95
|
+
sku: `enterprise-${monthlyEmails}`,
|
|
96
|
+
monthlyEmails,
|
|
97
|
+
yearlyPriceUsdcAtomic: BigInt(monthlyEmails / 50_000) * 120000000n,
|
|
98
|
+
}));
|
|
73
99
|
export const ENS_MAINNET = {
|
|
74
100
|
registrarController: '0x253553366Da8546fC250F225fe3d25d0C782303b',
|
|
75
101
|
publicResolver: '0x231b0Ee14048e9dCcD1d247744d114a4EB5E8E63',
|
package/dist/constants.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"constants.js","sourceRoot":"","sources":["../src/constants.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,MAAM,yBAAyB,GAAG,CAAC,CAAC;AAC3C,MAAM,CAAC,MAAM,aAAa,GAAG,IAAI,CAAC;AAClC,MAAM,CAAC,MAAM,aAAa,GAAG,CAAC,CAAC;AAC/B,MAAM,CAAC,MAAM,2BAA2B,GAAG,EAAE,CAAC;AAC9C,MAAM,CAAC,MAAM,0BAA0B,GAAG,EAAE,CAAC;AAC7C,MAAM,CAAC,MAAM,iCAAiC,GAAG,UAAU,CAAC;AAC5D,MAAM,CAAC,MAAM,uBAAuB,GAAG,QAAU,CAAC;AAClD,MAAM,CAAC,MAAM,qBAAqB,GAAG,EAAE,CAAC;AACxC,MAAM,CAAC,MAAM,iCAAiC,GAAG,EAAE,CAAC;AACpD,MAAM,CAAC,MAAM,+BAA+B,GAAG,uBAAuB,CAAC;AACvE,MAAM,CAAC,MAAM,wBAAwB,GAAG,EAAE,CAAC;AAC3C,MAAM,CAAC,MAAM,mBAAmB,GAAG,EAAE,CAAC;AACtC,MAAM,CAAC,MAAM,yBAAyB,GAAG,MAAO,CAAC;AACjD,MAAM,CAAC,MAAM,+BAA+B,GAAG,OAAQ,CAAC;AACxD,MAAM,CAAC,MAAM,0BAA0B,GAAG,OAAQ,CAAC;AACnD,MAAM,CAAC,MAAM,oBAAoB,GAAG,MAAO,CAAC;AAC5C,MAAM,CAAC,MAAM,6BAA6B,GAAG,OAAQ,CAAC;AACtD,MAAM,CAAC,MAAM,wBAAwB,GAAG,OAAQ,CAAC;AACjD,MAAM,CAAC,MAAM,SAAS,GAAG,4CAA4C,CAAC;AACtE,MAAM,CAAC,MAAM,iBAAiB,GAAG,4CAA4C,CAAC;AAC9E,MAAM,CAAC,MAAM,mBAAmB,GAAG,WAAW,CAAC;AAC/C,MAAM,CAAC,MAAM,4BAA4B,GAAG,oBAAoB,CAAC;AACjE,MAAM,CAAC,MAAM,wBAAwB,GAAG,gCAAgC,CAAC;AAEzE,MAAM,CAAC,MAAM,iBAAiB,GAAG,CAAC,UAAU,EAAE,KAAK,EAAE,YAAY,CAAU,CAAC;
|
|
1
|
+
{"version":3,"file":"constants.js","sourceRoot":"","sources":["../src/constants.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,MAAM,yBAAyB,GAAG,CAAC,CAAC;AAC3C,MAAM,CAAC,MAAM,aAAa,GAAG,IAAI,CAAC;AAClC,MAAM,CAAC,MAAM,aAAa,GAAG,CAAC,CAAC;AAC/B,MAAM,CAAC,MAAM,2BAA2B,GAAG,EAAE,CAAC;AAC9C,MAAM,CAAC,MAAM,0BAA0B,GAAG,EAAE,CAAC;AAC7C,MAAM,CAAC,MAAM,iCAAiC,GAAG,UAAU,CAAC;AAC5D,MAAM,CAAC,MAAM,uBAAuB,GAAG,QAAU,CAAC;AAClD,MAAM,CAAC,MAAM,qBAAqB,GAAG,EAAE,CAAC;AACxC,MAAM,CAAC,MAAM,iCAAiC,GAAG,EAAE,CAAC;AACpD,MAAM,CAAC,MAAM,+BAA+B,GAAG,uBAAuB,CAAC;AACvE,MAAM,CAAC,MAAM,wBAAwB,GAAG,EAAE,CAAC;AAC3C,MAAM,CAAC,MAAM,mBAAmB,GAAG,EAAE,CAAC;AACtC,MAAM,CAAC,MAAM,yBAAyB,GAAG,MAAO,CAAC;AACjD,MAAM,CAAC,MAAM,+BAA+B,GAAG,OAAQ,CAAC;AACxD,MAAM,CAAC,MAAM,0BAA0B,GAAG,OAAQ,CAAC;AACnD,MAAM,CAAC,MAAM,oBAAoB,GAAG,MAAO,CAAC;AAC5C,MAAM,CAAC,MAAM,6BAA6B,GAAG,OAAQ,CAAC;AACtD,MAAM,CAAC,MAAM,wBAAwB,GAAG,OAAQ,CAAC;AACjD,MAAM,CAAC,MAAM,SAAS,GAAG,4CAA4C,CAAC;AACtE,MAAM,CAAC,MAAM,iBAAiB,GAAG,4CAA4C,CAAC;AAC9E,MAAM,CAAC,MAAM,mBAAmB,GAAG,WAAW,CAAC;AAC/C,MAAM,CAAC,MAAM,4BAA4B,GAAG,oBAAoB,CAAC;AACjE,MAAM,CAAC,MAAM,wBAAwB,GAAG,gCAAgC,CAAC;AAEzE,MAAM,CAAC,MAAM,iBAAiB,GAAG,CAAC,UAAU,EAAE,SAAS,EAAE,KAAK,EAAE,YAAY,CAAU,CAAC;AACvF,MAAM,CAAC,MAAM,sBAAsB,GAAG,CAAC,QAAQ,CAAU,CAAC;AAC1D,MAAM,CAAC,MAAM,oBAAoB,GAAG,EAAE,CAAC;AACvC,MAAM,CAAC,MAAM,yBAAyB,GAAG,EAAE,CAAC;AAC5C,MAAM,CAAC,MAAM,sBAAsB,GAAG;IACpC,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,OAAO;IACxF,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS;CACzF,CAAC;AAEX,MAAM,CAAC,MAAM,oBAAoB,GAAG;IAClC,QAAQ,EAAE;QACR,GAAG,EAAE,UAAU;QACf,KAAK,EAAE,UAAU;QACjB,qBAAqB,EAAE,EAAE;QACzB,MAAM,EAAE;YACN,aAAa,EAAE,KAAK;YACpB,iBAAiB,EAAE,yBAAyB;YAC5C,OAAO,EAAE,CAAC;YACV,UAAU,EAAE,EAAE;YACd,YAAY,EAAE,CAAC;YACf,kBAAkB,EAAE,oBAAoB;SACzC;QACD,WAAW,EAAE,UAAU;QACvB,gBAAgB,EAAE,KAAK;KACxB;IACD,OAAO,EAAE;QACP,GAAG,EAAE,SAAS;QACd,KAAK,EAAE,SAAS;QAChB,qBAAqB,EAAE,SAAW;QAClC,MAAM,EAAE;YACN,aAAa,EAAE,MAAM;YACrB,iBAAiB,EAAE,yBAAyB;YAC5C,OAAO,EAAE,CAAC;YACV,UAAU,EAAE,GAAG;YACf,YAAY,EAAE,CAAC;YACf,kBAAkB,EAAE,oBAAoB;SACzC;QACD,WAAW,EAAE,UAAU;QACvB,gBAAgB,EAAE,KAAK;KACxB;IACD,GAAG,EAAE;QACH,GAAG,EAAE,KAAK;QACV,KAAK,EAAE,KAAK;QACZ,qBAAqB,EAAE,UAAY;QACnC,MAAM,EAAE;YACN,aAAa,EAAE,MAAM;YACrB,iBAAiB,EAAE,yBAAyB;YAC5C,OAAO,EAAE,EAAE;YACX,UAAU,EAAE,GAAG;YACf,YAAY,EAAE,EAAE;YAChB,kBAAkB,EAAE,oBAAoB;SACzC;QACD,WAAW,EAAE,UAAU;QACvB,gBAAgB,EAAE,KAAK;KACxB;IACD,UAAU,EAAE;QACV,GAAG,EAAE,YAAY;QACjB,KAAK,EAAE,YAAY;QACnB,qBAAqB,EAAE,UAAY;QACnC,MAAM,EAAE;YACN,aAAa,EAAE,OAAO;YACtB,iBAAiB,EAAE,yBAAyB;YAC5C,OAAO,EAAE,EAAE;YACX,UAAU,EAAE,GAAG;YACf,YAAY,EAAE,EAAE;YAChB,kBAAkB,EAAE,oBAAoB;SACzC;QACD,WAAW,EAAE,YAAY;QACzB,gBAAgB,EAAE,IAAI;KACvB;CACO,CAAC;AAEX,MAAM,CAAC,MAAM,sBAAsB,GAAG,sBAAsB,CAAC,GAAG,CAAC,CAAC,aAAa,EAAE,EAAE,CAAC,CAAC;IACnF,GAAG,EAAE,cAAc,aAAa,EAAW;IAC3C,aAAa;IACb,qBAAqB,EAAE,MAAM,CAAC,aAAa,GAAG,MAAM,CAAC,GAAG,UAAY;CACrE,CAAC,CAAC,CAAC;AAEJ,MAAM,CAAC,MAAM,WAAW,GAAG;IACzB,mBAAmB,EAAE,4CAA4C;IACjE,cAAc,EAAE,4CAA4C;IAC5D,QAAQ,EAAE,4CAA4C;IACtD,aAAa,EAAE,4CAA4C;IAC3D,eAAe,EAAE,4CAA4C;CACrD,CAAC;AAEX,MAAM,CAAC,MAAM,iBAAiB,GAAG;IAC/B,aAAa,EAAE,4CAA4C;IAC3D,mBAAmB,EAAE,4CAA4C;IACjE,UAAU,EAAE,4CAA4C;CAChD,CAAC;AAEX,MAAM,CAAC,MAAM,iBAAiB,GAAG;IAC/B,aAAa,EAAE,4CAA4C;IAC3D,mBAAmB,EAAE,4CAA4C;IACjE,UAAU,EAAE,4CAA4C;CAChD,CAAC;AAEX,MAAM,CAAC,MAAM,cAAc,GAAG,CAAC,KAAK,EAAE,KAAK,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,KAAK,CAAU,CAAC;AAE7F,MAAM,CAAC,MAAM,sBAAsB,GAAG,cAAc,CAAC;AAErD,MAAM,CAAC,MAAM,oBAAoB,GAAG;IAClC,UAAU;IACV,OAAO;IACP,QAAQ;IACR,WAAW;IACX,QAAQ;IACR,WAAW;CACH,CAAC"}
|
package/dist/schemas.d.ts
CHANGED
|
@@ -3,7 +3,7 @@ export declare const addressSchema: z.ZodEffects<z.ZodString, `0x${string}`, str
|
|
|
3
3
|
export declare const domainLabelSchema: z.ZodString;
|
|
4
4
|
export declare const emailUsernameSchema: z.ZodEffects<z.ZodString, string, string>;
|
|
5
5
|
export declare const tldSchema: z.ZodEnum<["xyz", "com", "ai", "org", "io", "net", "co", "app"]>;
|
|
6
|
-
export declare const registrationParamsSchema: z.ZodObject<{
|
|
6
|
+
export declare const registrationParamsSchema: z.ZodEffects<z.ZodObject<{
|
|
7
7
|
preferredName: z.ZodString;
|
|
8
8
|
tld: z.ZodEnum<["xyz", "com", "ai", "org", "io", "net", "co", "app"]>;
|
|
9
9
|
registerBasename: z.ZodDefault<z.ZodBoolean>;
|
|
@@ -13,7 +13,8 @@ export declare const registrationParamsSchema: z.ZodObject<{
|
|
|
13
13
|
ownerAddress: z.ZodOptional<z.ZodEffects<z.ZodString, `0x${string}`, string>>;
|
|
14
14
|
emailEnabled: z.ZodDefault<z.ZodBoolean>;
|
|
15
15
|
emailUsername: z.ZodDefault<z.ZodEffects<z.ZodString, string, string>>;
|
|
16
|
-
premiumPlan: z.ZodDefault<z.ZodEnum<["included", "pro", "enterprise"]>>;
|
|
16
|
+
premiumPlan: z.ZodDefault<z.ZodEnum<["included", "starter", "pro", "enterprise"]>>;
|
|
17
|
+
premiumPlanSku: z.ZodOptional<z.ZodUnion<[z.ZodEnum<["included", "starter", "pro"]>, z.ZodEffects<z.ZodEffects<z.ZodString, string, string>, "included" | "starter" | "pro" | "enterprise-100000" | "enterprise-150000" | "enterprise-200000" | "enterprise-300000" | "enterprise-400000" | "enterprise-500000" | "enterprise-600000" | "enterprise-700000" | "enterprise-800000" | "enterprise-900000" | "enterprise-1000000" | "enterprise-1500000" | "enterprise-2000000" | "enterprise-2500000" | "enterprise-3000000" | "enterprise-3500000" | "enterprise-4000000" | "enterprise-4500000" | "enterprise-5000000", string>]>>;
|
|
17
18
|
years: z.ZodDefault<z.ZodNumber>;
|
|
18
19
|
autoRenew: z.ZodDefault<z.ZodBoolean>;
|
|
19
20
|
dnsTarget: z.ZodOptional<z.ZodString>;
|
|
@@ -51,13 +52,14 @@ export declare const registrationParamsSchema: z.ZodObject<{
|
|
|
51
52
|
registerEns: boolean;
|
|
52
53
|
emailEnabled: boolean;
|
|
53
54
|
emailUsername: string;
|
|
54
|
-
premiumPlan: "included" | "pro" | "enterprise";
|
|
55
|
+
premiumPlan: "included" | "starter" | "pro" | "enterprise";
|
|
55
56
|
years: number;
|
|
56
57
|
autoRenew: boolean;
|
|
57
58
|
wallet: `0x${string}`;
|
|
58
59
|
basenameLabel?: string | undefined;
|
|
59
60
|
ensLabel?: string | undefined;
|
|
60
61
|
ownerAddress?: `0x${string}` | undefined;
|
|
62
|
+
premiumPlanSku?: "included" | "starter" | "pro" | "enterprise-100000" | "enterprise-150000" | "enterprise-200000" | "enterprise-300000" | "enterprise-400000" | "enterprise-500000" | "enterprise-600000" | "enterprise-700000" | "enterprise-800000" | "enterprise-900000" | "enterprise-1000000" | "enterprise-1500000" | "enterprise-2000000" | "enterprise-2500000" | "enterprise-3000000" | "enterprise-3500000" | "enterprise-4000000" | "enterprise-4500000" | "enterprise-5000000" | undefined;
|
|
61
63
|
dnsTarget?: string | undefined;
|
|
62
64
|
metadata?: {
|
|
63
65
|
name?: string | undefined;
|
|
@@ -80,7 +82,60 @@ export declare const registrationParamsSchema: z.ZodObject<{
|
|
|
80
82
|
ownerAddress?: string | undefined;
|
|
81
83
|
emailEnabled?: boolean | undefined;
|
|
82
84
|
emailUsername?: string | undefined;
|
|
83
|
-
premiumPlan?: "included" | "pro" | "enterprise" | undefined;
|
|
85
|
+
premiumPlan?: "included" | "starter" | "pro" | "enterprise" | undefined;
|
|
86
|
+
premiumPlanSku?: string | undefined;
|
|
87
|
+
years?: number | undefined;
|
|
88
|
+
autoRenew?: boolean | undefined;
|
|
89
|
+
dnsTarget?: string | undefined;
|
|
90
|
+
metadata?: {
|
|
91
|
+
name?: unknown;
|
|
92
|
+
description?: unknown;
|
|
93
|
+
imageUri?: unknown;
|
|
94
|
+
framework?: unknown;
|
|
95
|
+
capabilities?: string[] | undefined;
|
|
96
|
+
x402Endpoint?: unknown;
|
|
97
|
+
socials?: Record<string, string> | undefined;
|
|
98
|
+
} | undefined;
|
|
99
|
+
turnstileToken?: string | undefined;
|
|
100
|
+
}>, {
|
|
101
|
+
preferredName: string;
|
|
102
|
+
tld: "xyz" | "com" | "ai" | "org" | "io" | "net" | "co" | "app";
|
|
103
|
+
registerBasename: boolean;
|
|
104
|
+
registerEns: boolean;
|
|
105
|
+
emailEnabled: boolean;
|
|
106
|
+
emailUsername: string;
|
|
107
|
+
premiumPlan: "included" | "starter" | "pro" | "enterprise";
|
|
108
|
+
years: number;
|
|
109
|
+
autoRenew: boolean;
|
|
110
|
+
wallet: `0x${string}`;
|
|
111
|
+
basenameLabel?: string | undefined;
|
|
112
|
+
ensLabel?: string | undefined;
|
|
113
|
+
ownerAddress?: `0x${string}` | undefined;
|
|
114
|
+
premiumPlanSku?: "included" | "starter" | "pro" | "enterprise-100000" | "enterprise-150000" | "enterprise-200000" | "enterprise-300000" | "enterprise-400000" | "enterprise-500000" | "enterprise-600000" | "enterprise-700000" | "enterprise-800000" | "enterprise-900000" | "enterprise-1000000" | "enterprise-1500000" | "enterprise-2000000" | "enterprise-2500000" | "enterprise-3000000" | "enterprise-3500000" | "enterprise-4000000" | "enterprise-4500000" | "enterprise-5000000" | undefined;
|
|
115
|
+
dnsTarget?: string | undefined;
|
|
116
|
+
metadata?: {
|
|
117
|
+
name?: string | undefined;
|
|
118
|
+
description?: string | undefined;
|
|
119
|
+
imageUri?: string | undefined;
|
|
120
|
+
framework?: string | undefined;
|
|
121
|
+
capabilities?: string[] | undefined;
|
|
122
|
+
x402Endpoint?: string | undefined;
|
|
123
|
+
socials?: Record<string, string> | undefined;
|
|
124
|
+
} | undefined;
|
|
125
|
+
turnstileToken?: string | undefined;
|
|
126
|
+
}, {
|
|
127
|
+
preferredName: string;
|
|
128
|
+
tld: "xyz" | "com" | "ai" | "org" | "io" | "net" | "co" | "app";
|
|
129
|
+
wallet: string;
|
|
130
|
+
registerBasename?: boolean | undefined;
|
|
131
|
+
basenameLabel?: string | undefined;
|
|
132
|
+
registerEns?: boolean | undefined;
|
|
133
|
+
ensLabel?: string | undefined;
|
|
134
|
+
ownerAddress?: string | undefined;
|
|
135
|
+
emailEnabled?: boolean | undefined;
|
|
136
|
+
emailUsername?: string | undefined;
|
|
137
|
+
premiumPlan?: "included" | "starter" | "pro" | "enterprise" | undefined;
|
|
138
|
+
premiumPlanSku?: string | undefined;
|
|
84
139
|
years?: number | undefined;
|
|
85
140
|
autoRenew?: boolean | undefined;
|
|
86
141
|
dnsTarget?: string | undefined;
|
package/dist/schemas.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"schemas.d.ts","sourceRoot":"","sources":["../src/schemas.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;
|
|
1
|
+
{"version":3,"file":"schemas.d.ts","sourceRoot":"","sources":["../src/schemas.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAexB,eAAO,MAAM,aAAa,kDAGO,CAAC;AAElC,eAAO,MAAM,iBAAiB,aAO3B,CAAC;AAEJ,eAAO,MAAM,mBAAmB,2CAU6D,CAAC;AAE9F,eAAO,MAAM,SAAS,kEAAgE,CAAC;AAEvF,eAAO,MAAM,wBAAwB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAiDjC,CAAC;AAEL,eAAO,MAAM,iBAAiB;;;;;;;;;;;;;;;;;;EAM5B,CAAC;AAEH,eAAO,MAAM,eAAe;;;;;;;;;;;;;;;;;;EAM1B,CAAC"}
|
package/dist/schemas.js
CHANGED
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import { z } from 'zod';
|
|
2
|
-
import { SERVICE_PLAN_KEYS } from './constants.js';
|
|
2
|
+
import { ENTERPRISE_EMAIL_TIERS, SERVICE_PLAN_KEYS } from './constants.js';
|
|
3
|
+
import { isServicePlanSkuForPlan } from './utils.js';
|
|
3
4
|
const emptyStringToUndefined = (value) => typeof value === 'string' && value.trim() === '' ? undefined : value;
|
|
4
5
|
const optionalMetadataString = (maxLength) => z.preprocess(emptyStringToUndefined, z.string().trim().max(maxLength).optional());
|
|
5
6
|
const optionalMetadataUrl = (maxLength) => z.preprocess(emptyStringToUndefined, z.string().trim().url().max(maxLength).optional());
|
|
@@ -20,17 +21,9 @@ export const emailUsernameSchema = z
|
|
|
20
21
|
.max(64)
|
|
21
22
|
.regex(/^[a-z0-9](?:[a-z0-9._+-]*[a-z0-9])?$/, 'Use lowercase letters, numbers, dot, underscore, plus, or hyphen')
|
|
22
23
|
.refine((value) => !value.includes('..'), 'Email username cannot contain consecutive dots');
|
|
23
|
-
export const tldSchema = z.enum([
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
'ai',
|
|
27
|
-
'org',
|
|
28
|
-
'io',
|
|
29
|
-
'net',
|
|
30
|
-
'co',
|
|
31
|
-
'app',
|
|
32
|
-
]);
|
|
33
|
-
export const registrationParamsSchema = z.object({
|
|
24
|
+
export const tldSchema = z.enum(['xyz', 'com', 'ai', 'org', 'io', 'net', 'co', 'app']);
|
|
25
|
+
export const registrationParamsSchema = z
|
|
26
|
+
.object({
|
|
34
27
|
preferredName: domainLabelSchema,
|
|
35
28
|
tld: tldSchema,
|
|
36
29
|
registerBasename: z.boolean().default(true),
|
|
@@ -41,6 +34,16 @@ export const registrationParamsSchema = z.object({
|
|
|
41
34
|
emailEnabled: z.boolean().default(true),
|
|
42
35
|
emailUsername: emailUsernameSchema.default('agent'),
|
|
43
36
|
premiumPlan: z.enum(SERVICE_PLAN_KEYS).default('included'),
|
|
37
|
+
premiumPlanSku: z
|
|
38
|
+
.union([
|
|
39
|
+
z.enum(['included', 'starter', 'pro']),
|
|
40
|
+
z
|
|
41
|
+
.string()
|
|
42
|
+
.refine((value) => value.startsWith('enterprise-') &&
|
|
43
|
+
ENTERPRISE_EMAIL_TIERS.includes(Number(value.slice(11))))
|
|
44
|
+
.transform((value) => value),
|
|
45
|
+
])
|
|
46
|
+
.optional(),
|
|
44
47
|
years: z.number().int().min(1).max(10).default(1),
|
|
45
48
|
autoRenew: z.boolean().default(false),
|
|
46
49
|
dnsTarget: z.string().optional(),
|
|
@@ -57,6 +60,14 @@ export const registrationParamsSchema = z.object({
|
|
|
57
60
|
.optional(),
|
|
58
61
|
wallet: addressSchema,
|
|
59
62
|
turnstileToken: z.string().optional(),
|
|
63
|
+
})
|
|
64
|
+
.superRefine((value, ctx) => {
|
|
65
|
+
if (!isServicePlanSkuForPlan(value.premiumPlan, value.premiumPlanSku))
|
|
66
|
+
ctx.addIssue({
|
|
67
|
+
code: z.ZodIssueCode.custom,
|
|
68
|
+
path: ['premiumPlanSku'],
|
|
69
|
+
message: 'premiumPlanSku must match premiumPlan',
|
|
70
|
+
});
|
|
60
71
|
});
|
|
61
72
|
export const searchQuerySchema = z.object({
|
|
62
73
|
q: z.string().optional(),
|
package/dist/schemas.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"schemas.js","sourceRoot":"","sources":["../src/schemas.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,iBAAiB,EAAE,MAAM,gBAAgB,CAAC;
|
|
1
|
+
{"version":3,"file":"schemas.js","sourceRoot":"","sources":["../src/schemas.ts"],"names":[],"mappings":"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"}
|
package/dist/types.d.ts
CHANGED
|
@@ -3,9 +3,11 @@ import { SERVICE_PLAN_INTERVALS, SERVICE_PLAN_KEYS, SUPPORTED_TLDS } from './con
|
|
|
3
3
|
export type SupportedTld = (typeof SUPPORTED_TLDS)[number];
|
|
4
4
|
export type ServicePlanKey = (typeof SERVICE_PLAN_KEYS)[number];
|
|
5
5
|
export type ServicePlanInterval = (typeof SERVICE_PLAN_INTERVALS)[number];
|
|
6
|
+
export type EnterpriseEmailTier = (typeof import('./constants.js').ENTERPRISE_EMAIL_TIERS)[number];
|
|
7
|
+
export type ServicePlanSku = 'included' | 'starter' | 'pro' | `enterprise-${EnterpriseEmailTier}`;
|
|
6
8
|
export interface ServicePlanLimits {
|
|
7
|
-
|
|
8
|
-
|
|
9
|
+
monthlyEmails: number;
|
|
10
|
+
requestsPerSecond: number;
|
|
9
11
|
apiKeys: number;
|
|
10
12
|
dnsRecords: number;
|
|
11
13
|
emailAliases: number;
|
|
@@ -13,6 +15,7 @@ export interface ServicePlanLimits {
|
|
|
13
15
|
}
|
|
14
16
|
export interface ServicePlanEntitlement {
|
|
15
17
|
plan: ServicePlanKey;
|
|
18
|
+
planSku?: ServicePlanSku;
|
|
16
19
|
status: 'included' | 'active' | 'expired' | 'canceled';
|
|
17
20
|
interval: ServicePlanInterval | null;
|
|
18
21
|
autoRenew: boolean;
|
|
@@ -33,6 +36,7 @@ export interface RegistrationParams {
|
|
|
33
36
|
emailEnabled: boolean;
|
|
34
37
|
emailUsername?: string;
|
|
35
38
|
premiumPlan?: ServicePlanKey;
|
|
39
|
+
premiumPlanSku?: ServicePlanSku;
|
|
36
40
|
years: number;
|
|
37
41
|
autoRenew: boolean;
|
|
38
42
|
dnsTarget?: string;
|
|
@@ -71,6 +75,7 @@ export interface PricingBreakdown {
|
|
|
71
75
|
serviceFeeUsdc: string;
|
|
72
76
|
platformFeeUsdc: string;
|
|
73
77
|
premiumPlan: ServicePlanKey;
|
|
78
|
+
premiumPlanSku?: ServicePlanSku;
|
|
74
79
|
premiumPlanLabel: string;
|
|
75
80
|
premiumPlanFeeUsdc: string;
|
|
76
81
|
emailFeeUsdc: string;
|
package/dist/types.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,GAAG,EAAE,MAAM,MAAM,CAAC;AACzC,OAAO,EAAE,sBAAsB,EAAE,iBAAiB,EAAE,cAAc,EAAE,MAAM,gBAAgB,CAAC;AAE3F,MAAM,MAAM,YAAY,GAAG,CAAC,OAAO,cAAc,CAAC,CAAC,MAAM,CAAC,CAAC;AAC3D,MAAM,MAAM,cAAc,GAAG,CAAC,OAAO,iBAAiB,CAAC,CAAC,MAAM,CAAC,CAAC;AAChE,MAAM,MAAM,mBAAmB,GAAG,CAAC,OAAO,sBAAsB,CAAC,CAAC,MAAM,CAAC,CAAC;
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"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"}
|
package/dist/utils.d.ts
CHANGED
|
@@ -1,8 +1,14 @@
|
|
|
1
|
-
import type { ServicePlanInterval, ServicePlanKey } from './types.js';
|
|
1
|
+
import type { ServicePlanInterval, ServicePlanKey, ServicePlanSku } from './types.js';
|
|
2
2
|
export declare function parseUsdc(amount: string): bigint;
|
|
3
3
|
export declare function formatUsdcAtomic(value: bigint): string;
|
|
4
|
-
export declare function getServicePlanPriceAtomic(plan: ServicePlanKey, _interval: ServicePlanInterval): bigint;
|
|
4
|
+
export declare function getServicePlanPriceAtomic(plan: ServicePlanKey, _interval: ServicePlanInterval, sku?: ServicePlanSku): bigint;
|
|
5
|
+
export declare function normalizeServicePlanSku(plan: ServicePlanKey, sku?: ServicePlanSku): ServicePlanSku;
|
|
6
|
+
export declare function isServicePlanSkuForPlan(plan: ServicePlanKey, sku: string | undefined): sku is ServicePlanSku | undefined;
|
|
5
7
|
export declare function addServicePlanInterval(date: Date, _interval: ServicePlanInterval): Date;
|
|
8
|
+
export declare function getMonthlyUsageCycle(anchor: Date, now: Date): {
|
|
9
|
+
start: Date;
|
|
10
|
+
end: Date;
|
|
11
|
+
};
|
|
6
12
|
export declare function sleep(ms: number): Promise<void>;
|
|
7
13
|
export declare function retry<T>(fn: () => Promise<T>, opts?: {
|
|
8
14
|
attempts?: number;
|
package/dist/utils.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../src/utils.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../src/utils.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,mBAAmB,EAAE,cAAc,EAAE,cAAc,EAAE,MAAM,YAAY,CAAC;AAEtF,wBAAgB,SAAS,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,CAIhD;AAED,wBAAgB,gBAAgB,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CAMtD;AAED,wBAAgB,yBAAyB,CACvC,IAAI,EAAE,cAAc,EACpB,SAAS,EAAE,mBAAmB,EAC9B,GAAG,CAAC,EAAE,cAAc,GACnB,MAAM,CASR;AAED,wBAAgB,uBAAuB,CACrC,IAAI,EAAE,cAAc,EACpB,GAAG,CAAC,EAAE,cAAc,GACnB,cAAc,CAGhB;AAED,wBAAgB,uBAAuB,CACrC,IAAI,EAAE,cAAc,EACpB,GAAG,EAAE,MAAM,GAAG,SAAS,GACtB,GAAG,IAAI,cAAc,GAAG,SAAS,CAMnC;AAED,wBAAgB,sBAAsB,CAAC,IAAI,EAAE,IAAI,EAAE,SAAS,EAAE,mBAAmB,GAAG,IAAI,CAIvF;AAED,wBAAgB,oBAAoB,CAAC,MAAM,EAAE,IAAI,EAAE,GAAG,EAAE,IAAI;;;EAS3D;AAED,wBAAgB,KAAK,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAE/C;AAED,wBAAsB,KAAK,CAAC,CAAC,EAC3B,EAAE,EAAE,MAAM,OAAO,CAAC,CAAC,CAAC,EACpB,IAAI,CAAC,EAAE;IAAE,QAAQ,CAAC,EAAE,MAAM,CAAC;IAAC,WAAW,CAAC,EAAE,MAAM,CAAA;CAAE,GACjD,OAAO,CAAC,CAAC,CAAC,CAeZ;AAED,wBAAgB,WAAW,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,GAAG,MAAM,CAE7D;AAED,wBAAgB,aAAa,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CAEnD;AAED,wBAAgB,YAAY,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CAElD;AAED,wBAAgB,4BAA4B,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAKjE;AAkBD,wBAAgB,cAAc,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAEpD;AAED,MAAM,WAAW,8BAA8B;IAC7C,GAAG,EAAE,MAAM,CAAC;IACZ,gBAAgB,EAAE,OAAO,CAAC;IAC1B,WAAW,EAAE,OAAO,CAAC;IACrB,YAAY,CAAC,EAAE,OAAO,CAAC;IACvB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,UAAU,EAAE,MAAM,CAAC;IACnB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,mBAAmB,CAAC,EAAE,MAAM,CAAC;IAC7B,YAAY,EAAE,MAAM,CAAC;IACrB,UAAU,EAAE,MAAM,CAAC;IACnB,WAAW,EAAE,MAAM,CAAC;IACpB,YAAY,EAAE,MAAM,CAAC;IACrB,MAAM,EAAE,MAAM,CAAC;IACf,OAAO,EAAE,MAAM,CAAC;CACjB;AAED,MAAM,WAAW,6BAA6B;IAC5C,UAAU,EAAE,MAAM,CAAC;IACnB,YAAY,EAAE,MAAM,CAAC;IACrB,OAAO,EAAE,MAAM,CAAC;IAChB,UAAU,EAAE,MAAM,CAAC;IACnB,cAAc,EAAE,MAAM,CAAC;IACvB,QAAQ,EAAE,MAAM,CAAC;IACjB,mBAAmB,EAAE,MAAM,CAAC;IAC5B,KAAK,EAAE,MAAM,CAAC;CACf;AAED,wBAAgB,uBAAuB,CACrC,IAAI,EAAE,8BAA8B,GACnC,6BAA6B,CAkC/B"}
|
package/dist/utils.js
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { SERVICE_PLAN_CATALOG, USDC_DECIMALS
|
|
1
|
+
import { ENTERPRISE_PLAN_OFFERS, SERVICE_PLAN_CATALOG, USDC_DECIMALS } from './constants.js';
|
|
2
2
|
export function parseUsdc(amount) {
|
|
3
3
|
const [whole, frac = ''] = amount.replace(/[^0-9.]/g, '').split('.');
|
|
4
4
|
const padded = (frac || '').padEnd(USDC_DECIMALS, '0').slice(0, USDC_DECIMALS);
|
|
@@ -12,15 +12,48 @@ export function formatUsdcAtomic(value) {
|
|
|
12
12
|
return whole.toString();
|
|
13
13
|
return `${whole}.${fraction.toString().padStart(USDC_DECIMALS, '0').replace(/0+$/, '')}`;
|
|
14
14
|
}
|
|
15
|
-
export function getServicePlanPriceAtomic(plan, _interval) {
|
|
15
|
+
export function getServicePlanPriceAtomic(plan, _interval, sku) {
|
|
16
|
+
if (plan === 'enterprise' && sku?.startsWith('enterprise-')) {
|
|
17
|
+
const monthly = Number(sku.slice('enterprise-'.length));
|
|
18
|
+
const offer = ENTERPRISE_PLAN_OFFERS.find((entry) => entry.monthlyEmails === monthly);
|
|
19
|
+
if (!offer)
|
|
20
|
+
throw new Error('Unsupported Enterprise email tier');
|
|
21
|
+
return offer.yearlyPriceUsdcAtomic;
|
|
22
|
+
}
|
|
16
23
|
const entry = SERVICE_PLAN_CATALOG[plan];
|
|
17
24
|
return entry.yearlyPriceUsdcAtomic;
|
|
18
25
|
}
|
|
26
|
+
export function normalizeServicePlanSku(plan, sku) {
|
|
27
|
+
if (plan === 'enterprise')
|
|
28
|
+
return sku?.startsWith('enterprise-') ? sku : 'enterprise-100000';
|
|
29
|
+
return plan;
|
|
30
|
+
}
|
|
31
|
+
export function isServicePlanSkuForPlan(plan, sku) {
|
|
32
|
+
if (!sku)
|
|
33
|
+
return true;
|
|
34
|
+
if (plan !== 'enterprise')
|
|
35
|
+
return sku === plan;
|
|
36
|
+
if (!sku.startsWith('enterprise-'))
|
|
37
|
+
return false;
|
|
38
|
+
const monthlyEmails = Number(sku.slice('enterprise-'.length));
|
|
39
|
+
return ENTERPRISE_PLAN_OFFERS.some((offer) => offer.monthlyEmails === monthlyEmails);
|
|
40
|
+
}
|
|
19
41
|
export function addServicePlanInterval(date, _interval) {
|
|
20
42
|
const out = new Date(date);
|
|
21
43
|
out.setUTCFullYear(out.getUTCFullYear() + 1);
|
|
22
44
|
return out;
|
|
23
45
|
}
|
|
46
|
+
export function getMonthlyUsageCycle(anchor, now) {
|
|
47
|
+
const day = anchor.getUTCDate();
|
|
48
|
+
const boundary = (year, month) => {
|
|
49
|
+
const last = new Date(Date.UTC(year, month + 1, 0)).getUTCDate();
|
|
50
|
+
return new Date(Date.UTC(year, month, Math.min(day, last)));
|
|
51
|
+
};
|
|
52
|
+
let start = boundary(now.getUTCFullYear(), now.getUTCMonth());
|
|
53
|
+
if (start > now)
|
|
54
|
+
start = boundary(now.getUTCFullYear(), now.getUTCMonth() - 1);
|
|
55
|
+
return { start, end: boundary(start.getUTCFullYear(), start.getUTCMonth() + 1) };
|
|
56
|
+
}
|
|
24
57
|
export function sleep(ms) {
|
|
25
58
|
return new Promise((resolve) => setTimeout(resolve, ms));
|
|
26
59
|
}
|
package/dist/utils.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"utils.js","sourceRoot":"","sources":["../src/utils.ts"],"names":[],"mappings":"AAAA,OAAO,
|
|
1
|
+
{"version":3,"file":"utils.js","sourceRoot":"","sources":["../src/utils.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,sBAAsB,EAAE,oBAAoB,EAAE,aAAa,EAAE,MAAM,gBAAgB,CAAC;AAG7F,MAAM,UAAU,SAAS,CAAC,MAAc;IACtC,MAAM,CAAC,KAAK,EAAE,IAAI,GAAG,EAAE,CAAC,GAAG,MAAM,CAAC,OAAO,CAAC,UAAU,EAAE,EAAE,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;IACrE,MAAM,MAAM,GAAG,CAAC,IAAI,IAAI,EAAE,CAAC,CAAC,MAAM,CAAC,aAAa,EAAE,GAAG,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,aAAa,CAAC,CAAC;IAC/E,OAAO,MAAM,CAAC,KAAK,GAAG,MAAM,CAAC,CAAC;AAChC,CAAC;AAED,MAAM,UAAU,gBAAgB,CAAC,KAAa;IAC5C,MAAM,IAAI,GAAG,GAAG,IAAI,MAAM,CAAC,aAAa,CAAC,CAAC;IAC1C,MAAM,KAAK,GAAG,KAAK,GAAG,IAAI,CAAC;IAC3B,MAAM,QAAQ,GAAG,KAAK,GAAG,IAAI,CAAC;IAC9B,IAAI,QAAQ,KAAK,EAAE;QAAE,OAAO,KAAK,CAAC,QAAQ,EAAE,CAAC;IAC7C,OAAO,GAAG,KAAK,IAAI,QAAQ,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,aAAa,EAAE,GAAG,CAAC,CAAC,OAAO,CAAC,KAAK,EAAE,EAAE,CAAC,EAAE,CAAC;AAC3F,CAAC;AAED,MAAM,UAAU,yBAAyB,CACvC,IAAoB,EACpB,SAA8B,EAC9B,GAAoB;IAEpB,IAAI,IAAI,KAAK,YAAY,IAAI,GAAG,EAAE,UAAU,CAAC,aAAa,CAAC,EAAE,CAAC;QAC5D,MAAM,OAAO,GAAG,MAAM,CAAC,GAAG,CAAC,KAAK,CAAC,aAAa,CAAC,MAAM,CAAC,CAAC,CAAC;QACxD,MAAM,KAAK,GAAG,sBAAsB,CAAC,IAAI,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,aAAa,KAAK,OAAO,CAAC,CAAC;QACtF,IAAI,CAAC,KAAK;YAAE,MAAM,IAAI,KAAK,CAAC,mCAAmC,CAAC,CAAC;QACjE,OAAO,KAAK,CAAC,qBAAqB,CAAC;IACrC,CAAC;IACD,MAAM,KAAK,GAAG,oBAAoB,CAAC,IAAI,CAAC,CAAC;IACzC,OAAO,KAAK,CAAC,qBAAqB,CAAC;AACrC,CAAC;AAED,MAAM,UAAU,uBAAuB,CACrC,IAAoB,EACpB,GAAoB;IAEpB,IAAI,IAAI,KAAK,YAAY;QAAE,OAAO,GAAG,EAAE,UAAU,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,mBAAmB,CAAC;IAC7F,OAAO,IAAI,CAAC;AACd,CAAC;AAED,MAAM,UAAU,uBAAuB,CACrC,IAAoB,EACpB,GAAuB;IAEvB,IAAI,CAAC,GAAG;QAAE,OAAO,IAAI,CAAC;IACtB,IAAI,IAAI,KAAK,YAAY;QAAE,OAAO,GAAG,KAAK,IAAI,CAAC;IAC/C,IAAI,CAAC,GAAG,CAAC,UAAU,CAAC,aAAa,CAAC;QAAE,OAAO,KAAK,CAAC;IACjD,MAAM,aAAa,GAAG,MAAM,CAAC,GAAG,CAAC,KAAK,CAAC,aAAa,CAAC,MAAM,CAAC,CAAC,CAAC;IAC9D,OAAO,sBAAsB,CAAC,IAAI,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,aAAa,KAAK,aAAa,CAAC,CAAC;AACvF,CAAC;AAED,MAAM,UAAU,sBAAsB,CAAC,IAAU,EAAE,SAA8B;IAC/E,MAAM,GAAG,GAAG,IAAI,IAAI,CAAC,IAAI,CAAC,CAAC;IAC3B,GAAG,CAAC,cAAc,CAAC,GAAG,CAAC,cAAc,EAAE,GAAG,CAAC,CAAC,CAAC;IAC7C,OAAO,GAAG,CAAC;AACb,CAAC;AAED,MAAM,UAAU,oBAAoB,CAAC,MAAY,EAAE,GAAS;IAC1D,MAAM,GAAG,GAAG,MAAM,CAAC,UAAU,EAAE,CAAC;IAChC,MAAM,QAAQ,GAAG,CAAC,IAAY,EAAE,KAAa,EAAE,EAAE;QAC/C,MAAM,IAAI,GAAG,IAAI,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,UAAU,EAAE,CAAC;QACjE,OAAO,IAAI,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,EAAE,KAAK,EAAE,IAAI,CAAC,GAAG,CAAC,GAAG,EAAE,IAAI,CAAC,CAAC,CAAC,CAAC;IAC9D,CAAC,CAAC;IACF,IAAI,KAAK,GAAG,QAAQ,CAAC,GAAG,CAAC,cAAc,EAAE,EAAE,GAAG,CAAC,WAAW,EAAE,CAAC,CAAC;IAC9D,IAAI,KAAK,GAAG,GAAG;QAAE,KAAK,GAAG,QAAQ,CAAC,GAAG,CAAC,cAAc,EAAE,EAAE,GAAG,CAAC,WAAW,EAAE,GAAG,CAAC,CAAC,CAAC;IAC/E,OAAO,EAAE,KAAK,EAAE,GAAG,EAAE,QAAQ,CAAC,KAAK,CAAC,cAAc,EAAE,EAAE,KAAK,CAAC,WAAW,EAAE,GAAG,CAAC,CAAC,EAAE,CAAC;AACnF,CAAC;AAED,MAAM,UAAU,KAAK,CAAC,EAAU;IAC9B,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,UAAU,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC,CAAC;AAC3D,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,KAAK,CACzB,EAAoB,EACpB,IAAkD;IAElD,MAAM,WAAW,GAAG,IAAI,EAAE,QAAQ,IAAI,CAAC,CAAC;IACxC,MAAM,SAAS,GAAG,IAAI,EAAE,WAAW,IAAI,IAAI,CAAC;IAC5C,IAAI,SAAkB,CAAC;IACvB,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,WAAW,EAAE,CAAC,EAAE,EAAE,CAAC;QACrC,IAAI,CAAC;YACH,OAAO,MAAM,EAAE,EAAE,CAAC;QACpB,CAAC;QAAC,OAAO,CAAC,EAAE,CAAC;YACX,SAAS,GAAG,CAAC,CAAC;YACd,IAAI,CAAC,GAAG,WAAW,GAAG,CAAC,EAAE,CAAC;gBACxB,MAAM,KAAK,CAAC,SAAS,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;YAC1C,CAAC;QACH,CAAC;IACH,CAAC;IACD,MAAM,SAAS,CAAC;AAClB,CAAC;AAED,MAAM,UAAU,WAAW,CAAC,IAAY,EAAE,GAAW;IACnD,OAAO,GAAG,IAAI,IAAI,GAAG,EAAE,CAAC;AAC1B,CAAC;AAED,MAAM,UAAU,aAAa,CAAC,KAAa;IACzC,OAAO,GAAG,KAAK,WAAW,CAAC;AAC7B,CAAC;AAED,MAAM,UAAU,YAAY,CAAC,KAAa;IACxC,OAAO,GAAG,KAAK,MAAM,CAAC;AACxB,CAAC;AAED,MAAM,UAAU,4BAA4B,CAAC,GAAW;IACtD,qFAAqF;IACrF,uEAAuE;IACvE,MAAM,WAAW,GAAG,IAAI,GAAG,CAAC,CAAC,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC,CAAC;IACrE,OAAO,WAAW,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;AAC9B,CAAC;AAED,MAAM,cAAc,GAAG,IAAI,GAAG,CAAC;IAC7B,OAAO;IACP,MAAM;IACN,QAAQ;IACR,KAAK;IACL,MAAM;IACN,MAAM;IACN,KAAK;IACL,MAAM;IACN,KAAK;IACL,KAAK;IACL,KAAK;IACL,KAAK;IACL,KAAK;CACN,CAAC,CAAC;AAEH,MAAM,UAAU,cAAc,CAAC,IAAY;IACzC,OAAO,cAAc,CAAC,GAAG,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC,CAAC;AAChD,CAAC;AA+BD,MAAM,UAAU,uBAAuB,CACrC,IAAoC;IAEpC,MAAM,KAAK,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,KAAK,IAAI,CAAC,CAAC,CAAC;IAC3C,MAAM,gBAAgB,GAAG,IAAI,CAAC,UAAU,CAAC;IACzC,MAAM,UAAU,GAAG,gBAAgB,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC;IACpD,MAAM,cAAc,GAAG,IAAI,CAAC,cAAc,IAAI,EAAE,CAAC;IACjD,MAAM,QAAQ,GAAG,EAAE,CAAC;IACpB,MAAM,mBAAmB,GAAG,EAAE,CAAC;IAC/B,IAAI,KAAK,GACP,IAAI,CAAC,UAAU;QACf,IAAI,CAAC,YAAY;QACjB,UAAU;QACV,cAAc;QACd,QAAQ;QACR,mBAAmB,CAAC;IACtB,MAAM,MAAM,GAAkC;QAC5C,UAAU,EAAE,IAAI,CAAC,UAAU;QAC3B,YAAY,EAAE,EAAE;QAChB,OAAO,EAAE,EAAE;QACX,UAAU;QACV,cAAc;QACd,QAAQ;QACR,mBAAmB;QACnB,KAAK,EAAE,EAAE;KACV,CAAC;IACF,IAAI,IAAI,CAAC,gBAAgB,EAAE,CAAC;QAC1B,KAAK,IAAI,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC,YAAY,CAAC;QAC9C,MAAM,CAAC,YAAY,GAAG,IAAI,CAAC,YAAY,CAAC;IAC1C,CAAC;IACD,IAAI,IAAI,CAAC,WAAW,EAAE,CAAC;QACrB,KAAK,IAAI,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,OAAO,CAAC;QACpC,MAAM,CAAC,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC;IAChC,CAAC;IACD,MAAM,CAAC,KAAK,GAAG,KAAK,CAAC;IACrB,OAAO,MAAM,CAAC;AAChB,CAAC"}
|
package/package.json
CHANGED