temp-disposable-email 1.12.5 → 1.13.1

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.
Files changed (78) hide show
  1. package/README.md +4 -48
  2. package/dist/{esm/utils → cjs}/api.d.ts +1 -11
  3. package/dist/cjs/api.d.ts.map +1 -0
  4. package/dist/cjs/{utils/api.js → api.js} +39 -30
  5. package/dist/cjs/api.js.map +1 -0
  6. package/dist/cjs/index.d.ts +78 -4
  7. package/dist/cjs/index.d.ts.map +1 -1
  8. package/dist/cjs/index.js +132 -10
  9. package/dist/cjs/index.js.map +1 -1
  10. package/dist/{cjs/utils → esm}/api.d.ts +1 -11
  11. package/dist/esm/api.d.ts.map +1 -0
  12. package/dist/esm/{utils/api.js → api.js} +37 -29
  13. package/dist/esm/api.js.map +1 -0
  14. package/dist/esm/index.d.ts +78 -4
  15. package/dist/esm/index.d.ts.map +1 -1
  16. package/dist/esm/index.js +127 -4
  17. package/dist/esm/index.js.map +1 -1
  18. package/package.json +1 -2
  19. package/dist/cjs/services/accountService.d.ts +0 -20
  20. package/dist/cjs/services/accountService.d.ts.map +0 -1
  21. package/dist/cjs/services/accountService.js +0 -58
  22. package/dist/cjs/services/accountService.js.map +0 -1
  23. package/dist/cjs/services/authService.d.ts +0 -3
  24. package/dist/cjs/services/authService.d.ts.map +0 -1
  25. package/dist/cjs/services/authService.js +0 -22
  26. package/dist/cjs/services/authService.js.map +0 -1
  27. package/dist/cjs/services/messageService.d.ts +0 -60
  28. package/dist/cjs/services/messageService.d.ts.map +0 -1
  29. package/dist/cjs/services/messageService.js +0 -99
  30. package/dist/cjs/services/messageService.js.map +0 -1
  31. package/dist/cjs/utils/api.d.ts.map +0 -1
  32. package/dist/cjs/utils/api.js.map +0 -1
  33. package/dist/cjs/utils/constant.d.ts +0 -2
  34. package/dist/cjs/utils/constant.d.ts.map +0 -1
  35. package/dist/cjs/utils/constant.js +0 -5
  36. package/dist/cjs/utils/constant.js.map +0 -1
  37. package/dist/cjs/utils/delay.d.ts +0 -2
  38. package/dist/cjs/utils/delay.d.ts.map +0 -1
  39. package/dist/cjs/utils/delay.js +0 -6
  40. package/dist/cjs/utils/delay.js.map +0 -1
  41. package/dist/cjs/utils/generateRandomName.d.ts +0 -2
  42. package/dist/cjs/utils/generateRandomName.d.ts.map +0 -1
  43. package/dist/cjs/utils/generateRandomName.js +0 -6
  44. package/dist/cjs/utils/generateRandomName.js.map +0 -1
  45. package/dist/cjs/utils/getVerificationCode.d.ts +0 -17
  46. package/dist/cjs/utils/getVerificationCode.d.ts.map +0 -1
  47. package/dist/cjs/utils/getVerificationCode.js +0 -28
  48. package/dist/cjs/utils/getVerificationCode.js.map +0 -1
  49. package/dist/esm/services/accountService.d.ts +0 -20
  50. package/dist/esm/services/accountService.d.ts.map +0 -1
  51. package/dist/esm/services/accountService.js +0 -54
  52. package/dist/esm/services/accountService.js.map +0 -1
  53. package/dist/esm/services/authService.d.ts +0 -3
  54. package/dist/esm/services/authService.d.ts.map +0 -1
  55. package/dist/esm/services/authService.js +0 -14
  56. package/dist/esm/services/authService.js.map +0 -1
  57. package/dist/esm/services/messageService.d.ts +0 -60
  58. package/dist/esm/services/messageService.d.ts.map +0 -1
  59. package/dist/esm/services/messageService.js +0 -91
  60. package/dist/esm/services/messageService.js.map +0 -1
  61. package/dist/esm/utils/api.d.ts.map +0 -1
  62. package/dist/esm/utils/api.js.map +0 -1
  63. package/dist/esm/utils/constant.d.ts +0 -2
  64. package/dist/esm/utils/constant.d.ts.map +0 -1
  65. package/dist/esm/utils/constant.js +0 -2
  66. package/dist/esm/utils/constant.js.map +0 -1
  67. package/dist/esm/utils/delay.d.ts +0 -2
  68. package/dist/esm/utils/delay.d.ts.map +0 -1
  69. package/dist/esm/utils/delay.js +0 -2
  70. package/dist/esm/utils/delay.js.map +0 -1
  71. package/dist/esm/utils/generateRandomName.d.ts +0 -2
  72. package/dist/esm/utils/generateRandomName.d.ts.map +0 -1
  73. package/dist/esm/utils/generateRandomName.js +0 -2
  74. package/dist/esm/utils/generateRandomName.js.map +0 -1
  75. package/dist/esm/utils/getVerificationCode.d.ts +0 -17
  76. package/dist/esm/utils/getVerificationCode.d.ts.map +0 -1
  77. package/dist/esm/utils/getVerificationCode.js +0 -24
  78. package/dist/esm/utils/getVerificationCode.js.map +0 -1
package/README.md CHANGED
@@ -61,21 +61,13 @@ To use the package, import the functions in your TypeScript or JavaScript projec
61
61
  #### Using ES Modules (Recommended)
62
62
 
63
63
  ```typescript
64
- import {
65
- generateEmail,
66
- getRecentEmail,
67
- deleteAccount,
68
- } from 'temp-disposable-email';
64
+ import { generateEmail, getRecentEmail } from 'temp-disposable-email';
69
65
  ```
70
66
 
71
67
  #### Using CommonJS
72
68
 
73
69
  ```javascript
74
- const {
75
- generateEmail,
76
- getRecentEmail,
77
- deleteAccount,
78
- } = require('temp-disposable-email');
70
+ const { generateEmail, getRecentEmail } = require('temp-disposable-email');
79
71
  ```
80
72
 
81
73
  ### 2\. Create an Inbox
@@ -116,23 +108,6 @@ console.log('Message received:', message);
116
108
 
117
109
  - `Promise<object | null>`: An object containing email details like `from`, `to`, `subject`, `intro`, `text`, `html`, `createdAt`, and `updatedAt`.
118
110
 
119
- ### 4\. Delete the Created Account
120
-
121
- Once you're done with the email inbox, you can delete the account to clean up resources.
122
-
123
- ```typescript
124
- const res = await deleteAccount('accountId');
125
- console.log(res); // status code
126
- ```
127
-
128
- #### Parameters
129
-
130
- - `accountId`: `accountId` from `generateEmail()`
131
-
132
- #### Returns
133
-
134
- - `Promise<number>`: status code.
135
-
136
111
  <p id="example"></p>
137
112
 
138
113
  ## Example Workflow
@@ -150,16 +125,12 @@ For using temp-disposable-email with Cypress, see the example in the [Cypress fo
150
125
  Here's a complete example of creating an inbox, retrieving a message, and deleting the account:
151
126
 
152
127
  ```typescript
153
- import {
154
- generateEmail,
155
- getRecentEmail,
156
- deleteAccount,
157
- } from 'temp-disposable-email';
128
+ import { generateEmail, getRecentEmail } from 'temp-disposable-email';
158
129
 
159
130
  async function run() {
160
131
  try {
161
132
  // Create a new inbox
162
- const { emailAddress, accountId } = await generateEmail();
133
+ const { emailAddress } = await generateEmail();
163
134
  console.log('Created email:', emailAddress);
164
135
 
165
136
  // Get the first available message from the inbox
@@ -169,14 +140,6 @@ async function run() {
169
140
  logPolling: true,
170
141
  });
171
142
  console.log('Received message:', message);
172
-
173
- // Delete the inbox
174
- const res = await deleteAccount(accountId);
175
- if (res === 204) {
176
- console.log('Account deleted successfully');
177
- } else {
178
- console.log('Account deleted failed');
179
- }
180
143
  } catch (error) {
181
144
  console.error('Error:', error);
182
145
  }
@@ -203,13 +166,6 @@ run();
203
166
  - `options` (Optional): Polling configuration for waiting for messages. See GetEmailOptions.
204
167
  - **Returns**: A promise that resolves to the message content (or `null` if no messages are found).
205
168
 
206
- ### `deleteAccount(): Promise<void>`
207
-
208
- - **Description**: Deletes the inbox and its associated account.
209
- - **Parameters**:
210
- - `accountId` accountId from `generateEmail()`
211
- - **Returns**: A promise that resolves when the account is successfully deleted.
212
-
213
169
  ## Get Email Options
214
170
 
215
171
  You can configure polling behavior by passing an options object to `getRecentEmail`. The available options are:
@@ -73,6 +73,7 @@ interface EmailResource {
73
73
  updatedAt: string;
74
74
  accountId: string;
75
75
  }
76
+ export declare const authenticate: (email: string, password: string) => Promise<void>;
76
77
  export declare const getAuthHeaders: () => {
77
78
  accept: string;
78
79
  Authorization: string;
@@ -86,17 +87,6 @@ export declare const createAccount: (payload: {
86
87
  address: string;
87
88
  password: string;
88
89
  }) => Promise<EmailAccount>;
89
- /**
90
- * Deletes the account created during `generateEmail`.
91
- *
92
- * @returns {Promise<number>} status code of 204 when the account is successfully deleted.
93
- *
94
- * @throws {Error} If no account is authenticated or deletion fails.
95
- *
96
- * @example
97
- * await deleteAccount();
98
- * console.log("Account deleted successfully.");
99
- */
100
90
  export declare const deleteAccount: (accountId: string) => Promise<number>;
101
91
  export {};
102
92
  //# sourceMappingURL=api.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"api.d.ts","sourceRoot":"","sources":["../../src/api.ts"],"names":[],"mappings":"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"}
@@ -3,12 +3,25 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
3
3
  return (mod && mod.__esModule) ? mod : { "default": mod };
4
4
  };
5
5
  Object.defineProperty(exports, "__esModule", { value: true });
6
- exports.deleteAccount = exports.createAccount = exports.deleteMessage = exports.getMessageAttachments = exports.getMessagesContent = exports.getMessages = exports.getDomains = exports.getAuthHeaders = void 0;
6
+ exports.deleteAccount = exports.createAccount = exports.deleteMessage = exports.getMessageAttachments = exports.getMessagesContent = exports.getMessages = exports.getDomains = exports.getAuthHeaders = exports.authenticate = void 0;
7
7
  const axios_1 = __importDefault(require("axios"));
8
- const constant_1 = require("./constant");
9
- const authService_1 = require("../services/authService");
8
+ const _1 = require(".");
9
+ let token = null;
10
+ const apiClient = axios_1.default.create({
11
+ baseURL: process.env.BASE_URL || 'https://api.mail.tm',
12
+ headers: { accept: 'application/json' },
13
+ });
14
+ const authenticate = async (email, password) => {
15
+ const response = await apiClient.post('/token', { address: email, password }, {
16
+ headers: {
17
+ accept: 'application/json',
18
+ 'Content-Type': 'application/json',
19
+ },
20
+ });
21
+ token = response.data.token;
22
+ };
23
+ exports.authenticate = authenticate;
10
24
  const getAuthHeaders = () => {
11
- const token = (0, authService_1.getToken)();
12
25
  if (!token) {
13
26
  throw new Error('Authentication required. Token not found.');
14
27
  }
@@ -20,7 +33,7 @@ const getAuthHeaders = () => {
20
33
  exports.getAuthHeaders = getAuthHeaders;
21
34
  const getDomains = async () => {
22
35
  try {
23
- const { data } = await axios_1.default.get(`${constant_1.BASE_URL}/domains`, {
36
+ const { data } = await apiClient.get('/domains', {
24
37
  headers: { accept: 'application/json' },
25
38
  });
26
39
  return data;
@@ -32,21 +45,28 @@ const getDomains = async () => {
32
45
  };
33
46
  exports.getDomains = getDomains;
34
47
  const getMessages = async () => {
35
- try {
36
- const { data } = await axios_1.default.get(`${constant_1.BASE_URL}/messages`, {
37
- headers: (0, exports.getAuthHeaders)(),
38
- });
39
- return data;
40
- }
41
- catch (error) {
42
- console.error('Error fetching messages:', error);
43
- throw new Error('Failed to fetch messages. Please try again later.');
48
+ while (true) {
49
+ try {
50
+ const { data } = await apiClient.get('/messages?page=1', {
51
+ headers: (0, exports.getAuthHeaders)(),
52
+ });
53
+ return data;
54
+ }
55
+ catch (error) {
56
+ if (error.response?.status === 429) {
57
+ await (0, _1.delay)(10 * 1000);
58
+ }
59
+ else {
60
+ console.error('Error fetching messages:', error);
61
+ throw new Error('Failed to fetch messages. Please try again later.');
62
+ }
63
+ }
44
64
  }
45
65
  };
46
66
  exports.getMessages = getMessages;
47
67
  const getMessagesContent = async (messageId) => {
48
68
  try {
49
- const { data } = await axios_1.default.get(`${constant_1.BASE_URL}/messages/${messageId}`, {
69
+ const { data } = await apiClient.get(`/messages/${messageId}`, {
50
70
  headers: (0, exports.getAuthHeaders)(),
51
71
  });
52
72
  return data;
@@ -59,7 +79,7 @@ const getMessagesContent = async (messageId) => {
59
79
  exports.getMessagesContent = getMessagesContent;
60
80
  const getMessageAttachments = async (messageId, attachmentsId) => {
61
81
  try {
62
- const { data } = await axios_1.default.get(`${constant_1.BASE_URL}/messages/${messageId}/attachment/${attachmentsId}`, {
82
+ const { data } = await apiClient.get(`/messages/${messageId}/attachment/${attachmentsId}`, {
63
83
  headers: (0, exports.getAuthHeaders)(),
64
84
  });
65
85
  return data;
@@ -72,7 +92,7 @@ const getMessageAttachments = async (messageId, attachmentsId) => {
72
92
  exports.getMessageAttachments = getMessageAttachments;
73
93
  const deleteMessage = async (messageId) => {
74
94
  try {
75
- const { status } = await axios_1.default.delete(`${constant_1.BASE_URL}/messages/${messageId}`, {
95
+ const { status } = await apiClient.delete(`/messages/${messageId}`, {
76
96
  headers: (0, exports.getAuthHeaders)(),
77
97
  });
78
98
  return status;
@@ -84,26 +104,15 @@ const deleteMessage = async (messageId) => {
84
104
  };
85
105
  exports.deleteMessage = deleteMessage;
86
106
  const createAccount = async (payload) => {
87
- const { data } = await axios_1.default.post(`${constant_1.BASE_URL}/accounts`, payload, {
107
+ const { data } = await apiClient.post(`/accounts`, payload, {
88
108
  headers: { accept: 'application/json' },
89
109
  });
90
110
  return data;
91
111
  };
92
112
  exports.createAccount = createAccount;
93
- /**
94
- * Deletes the account created during `generateEmail`.
95
- *
96
- * @returns {Promise<number>} status code of 204 when the account is successfully deleted.
97
- *
98
- * @throws {Error} If no account is authenticated or deletion fails.
99
- *
100
- * @example
101
- * await deleteAccount();
102
- * console.log("Account deleted successfully.");
103
- */
104
113
  const deleteAccount = async (accountId) => {
105
114
  try {
106
- const { status } = await axios_1.default.delete(`${constant_1.BASE_URL}/accounts/${accountId}`, {
115
+ const { status } = await apiClient.delete(`/accounts/${accountId}`, {
107
116
  headers: (0, exports.getAuthHeaders)(),
108
117
  });
109
118
  return status;
@@ -0,0 +1 @@
1
+ {"version":3,"file":"api.js","sourceRoot":"","sources":["../../src/api.ts"],"names":[],"mappings":"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"}
@@ -1,5 +1,79 @@
1
- export { generateEmail, GeneratedEmail } from './services/accountService';
2
- export { deleteAccount } from './utils/api';
3
- export { getRecentEmail, deleteMessage, MessageContent, GetEmailOptions, } from './services/messageService';
4
- export { getVerificationCode } from './utils/getVerificationCode';
1
+ export interface GeneratedEmail {
2
+ emailAddress: string;
3
+ accountId: string;
4
+ }
5
+ export interface MessageContent {
6
+ from: {
7
+ address: string;
8
+ };
9
+ to: {
10
+ address: string;
11
+ }[];
12
+ subject: string;
13
+ intro: string;
14
+ text: string;
15
+ html: string[];
16
+ createdAt: string;
17
+ updatedAt: string;
18
+ }
19
+ export interface GetEmailOptions {
20
+ maxWaitTime?: number;
21
+ waitInterval?: number;
22
+ logPolling?: boolean;
23
+ deleteAfterRead?: boolean;
24
+ }
25
+ export declare const delay: (ms: number) => Promise<void>;
26
+ /**
27
+ * Creates a new email inbox with a unique address.
28
+ *
29
+ * This function generates an temp inbox & email address
30
+ *
31
+ * @param {string} [emailPrefix] - Optional emailPrefix; a random one is generated if not provided.
32
+ * @returns {Promise<GeneratedEmail>} The generated email address & account ID.
33
+ *
34
+ * @throws {Error} If no domains are available or account creation fails.
35
+ *
36
+ * @example
37
+ * const email = await generateEmail("customUser");
38
+ * console.log(email); // Outputs: {"emailAddress": "customUser@mail.tm" , "accountId": "1234"}
39
+ */
40
+ export declare const generateEmail: (emailPrefix?: string) => Promise<GeneratedEmail>;
41
+ /**
42
+ * Retrieves the latest message from the inbox.
43
+ *
44
+ * If messages are available, this function fetches the first one and
45
+ * returns its details. Polling options can be specified to wait for
46
+ * messages if the inbox is empty. Optionally, the message can be
47
+ * deleted after reading.
48
+ *
49
+ * @param {GetEmailOptions} [options] - Optional settings for polling and deletion.
50
+ * @param {number} [options.maxWaitTime=30000] - Maximum time to wait for messages (in milliseconds). Default is 30 seconds.
51
+ * @param {number} [options.waitInterval=2000] - Time interval between polling attempts (in milliseconds). Default is 2 seconds.
52
+ * @param {boolean} [options.logPolling=false] - Whether to log polling attempts. Default is `false`.
53
+ * @param {boolean} [options.deleteAfterRead=false] - Whether to delete the message after reading. Default is `false`.
54
+ * @returns {Promise<MessageContent | null>} The email content (sender, recipient, subject, text, HTML), or `null` if no messages are found.
55
+ *
56
+ * @throws {Error} If no messages are available within the polling timeout or authentication fails.
57
+ *
58
+ * @example
59
+ * const message = await getRecentEmail({ maxWaitTime: 5000, waitInterval: 1000, logPolling: true });
60
+ * console.log(message.subject); // Outputs: "Hello!"
61
+ */
62
+ export declare const getRecentEmail: (options?: GetEmailOptions) => Promise<MessageContent | null>;
63
+ /**
64
+ * Extracts a verification code from the provided email content.
65
+ *
66
+ * This function scans the given text for a sequence of 5 or more
67
+ * consecutive digits and returns the first valid verification code.
68
+ * If no valid sequence is found, the function returns `null`.
69
+ *
70
+ * @param {string} text - The content of the email, typically the body.
71
+ * @returns {Promise<string | null>} The first verification code found, or `null` if no valid code exists.
72
+ *
73
+ * @example
74
+ * const emailContent = "Your code is 123456.";
75
+ * const verificationCode = await getVerificationCode(emailContent);
76
+ * console.log(verificationCode); // Output: "123456"
77
+ */
78
+ export declare const getVerificationCode: (text: string | undefined) => Promise<string>;
5
79
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,aAAa,EAAE,cAAc,EAAE,MAAM,2BAA2B,CAAC;AAC1E,OAAO,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAC5C,OAAO,EACL,cAAc,EACd,aAAa,EACb,cAAc,EACd,eAAe,GAChB,MAAM,2BAA2B,CAAC;AACnC,OAAO,EAAE,mBAAmB,EAAE,MAAM,6BAA6B,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAeA,MAAM,WAAW,cAAc;IAC7B,YAAY,EAAE,MAAM,CAAC;IACrB,SAAS,EAAE,MAAM,CAAC;CACnB;AACD,MAAM,WAAW,cAAc;IAC7B,IAAI,EAAE;QAAE,OAAO,EAAE,MAAM,CAAA;KAAE,CAAC;IAC1B,EAAE,EAAE;QAAE,OAAO,EAAE,MAAM,CAAA;KAAE,EAAE,CAAC;IAC1B,OAAO,EAAE,MAAM,CAAC;IAChB,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,EAAE,CAAC;IACf,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,MAAM,CAAC;CACnB;AACD,MAAM,WAAW,eAAe;IAC9B,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,eAAe,CAAC,EAAE,OAAO,CAAC;CAC3B;AAED,eAAO,MAAM,KAAK,OAAQ,MAAM,KAAG,OAAO,CAAC,IAAI,CACI,CAAC;AAIpD;;;;;;;;;;;;;GAaG;AAEH,eAAO,MAAM,aAAa,iBACV,MAAM,KACnB,OAAO,CAAC,cAAc,CA2BxB,CAAC;AAEF;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,eAAO,MAAM,cAAc,aACf,eAAe,KACxB,OAAO,CAAC,cAAc,GAAG,IAAI,CA4D/B,CAAC;AAEF;;;;;;;;;;;;;;GAcG;AAEH,eAAO,MAAM,mBAAmB,SACxB,MAAM,GAAG,SAAS,KACvB,OAAO,CAAC,MAAM,CAOhB,CAAC"}
package/dist/cjs/index.js CHANGED
@@ -33,16 +33,138 @@ var __importStar = (this && this.__importStar) || (function () {
33
33
  };
34
34
  })();
35
35
  Object.defineProperty(exports, "__esModule", { value: true });
36
- exports.getVerificationCode = exports.deleteMessage = exports.getRecentEmail = exports.deleteAccount = exports.generateEmail = void 0;
36
+ exports.getVerificationCode = exports.getRecentEmail = exports.generateEmail = exports.delay = void 0;
37
37
  const dotenv = __importStar(require("dotenv"));
38
38
  dotenv.config();
39
- var accountService_1 = require("./services/accountService");
40
- Object.defineProperty(exports, "generateEmail", { enumerable: true, get: function () { return accountService_1.generateEmail; } });
41
- var api_1 = require("./utils/api");
42
- Object.defineProperty(exports, "deleteAccount", { enumerable: true, get: function () { return api_1.deleteAccount; } });
43
- var messageService_1 = require("./services/messageService");
44
- Object.defineProperty(exports, "getRecentEmail", { enumerable: true, get: function () { return messageService_1.getRecentEmail; } });
45
- Object.defineProperty(exports, "deleteMessage", { enumerable: true, get: function () { return messageService_1.deleteMessage; } });
46
- var getVerificationCode_1 = require("./utils/getVerificationCode");
47
- Object.defineProperty(exports, "getVerificationCode", { enumerable: true, get: function () { return getVerificationCode_1.getVerificationCode; } });
39
+ const api_1 = require("./api");
40
+ const api_2 = require("./api");
41
+ let accountId;
42
+ const delay = (ms) => new Promise((resolve) => setTimeout(resolve, ms));
43
+ exports.delay = delay;
44
+ const generateRandomName = () => Math.random().toString(36).substring(2, 15);
45
+ /**
46
+ * Creates a new email inbox with a unique address.
47
+ *
48
+ * This function generates an temp inbox & email address
49
+ *
50
+ * @param {string} [emailPrefix] - Optional emailPrefix; a random one is generated if not provided.
51
+ * @returns {Promise<GeneratedEmail>} The generated email address & account ID.
52
+ *
53
+ * @throws {Error} If no domains are available or account creation fails.
54
+ *
55
+ * @example
56
+ * const email = await generateEmail("customUser");
57
+ * console.log(email); // Outputs: {"emailAddress": "customUser@mail.tm" , "accountId": "1234"}
58
+ */
59
+ const generateEmail = async (emailPrefix) => {
60
+ const domainsResponse = await (0, api_2.getDomains)();
61
+ const domains = domainsResponse
62
+ .filter((domain) => domain.isActive)
63
+ .map((domain) => domain.domain);
64
+ if (domains.length === 0)
65
+ throw new Error('No available domains.');
66
+ const emailAddress = `${emailPrefix || generateRandomName()}@${domains[0]}`;
67
+ const password = generateRandomName();
68
+ while (true) {
69
+ try {
70
+ const accountResponse = await (0, api_2.createAccount)({
71
+ address: emailAddress,
72
+ password,
73
+ });
74
+ accountId = accountResponse.id;
75
+ await (0, api_1.authenticate)(emailAddress, password);
76
+ return { emailAddress, accountId: accountResponse.id };
77
+ }
78
+ catch (error) {
79
+ if (error.response?.status === 429) {
80
+ await (0, exports.delay)(10 * 1000);
81
+ }
82
+ else {
83
+ throw error;
84
+ }
85
+ }
86
+ }
87
+ };
88
+ exports.generateEmail = generateEmail;
89
+ /**
90
+ * Retrieves the latest message from the inbox.
91
+ *
92
+ * If messages are available, this function fetches the first one and
93
+ * returns its details. Polling options can be specified to wait for
94
+ * messages if the inbox is empty. Optionally, the message can be
95
+ * deleted after reading.
96
+ *
97
+ * @param {GetEmailOptions} [options] - Optional settings for polling and deletion.
98
+ * @param {number} [options.maxWaitTime=30000] - Maximum time to wait for messages (in milliseconds). Default is 30 seconds.
99
+ * @param {number} [options.waitInterval=2000] - Time interval between polling attempts (in milliseconds). Default is 2 seconds.
100
+ * @param {boolean} [options.logPolling=false] - Whether to log polling attempts. Default is `false`.
101
+ * @param {boolean} [options.deleteAfterRead=false] - Whether to delete the message after reading. Default is `false`.
102
+ * @returns {Promise<MessageContent | null>} The email content (sender, recipient, subject, text, HTML), or `null` if no messages are found.
103
+ *
104
+ * @throws {Error} If no messages are available within the polling timeout or authentication fails.
105
+ *
106
+ * @example
107
+ * const message = await getRecentEmail({ maxWaitTime: 5000, waitInterval: 1000, logPolling: true });
108
+ * console.log(message.subject); // Outputs: "Hello!"
109
+ */
110
+ const getRecentEmail = async (options) => {
111
+ const { maxWaitTime = 30000, waitInterval = 2000, logPolling = false, deleteAfterRead = false, } = options || {};
112
+ const startTime = Date.now();
113
+ const logger = (message) => logPolling && console.log(message);
114
+ logger(`Polling started with a timeout of ${maxWaitTime / 1000}sec and interval of ${waitInterval / 1000}sec.`);
115
+ while (Date.now() - startTime < maxWaitTime) {
116
+ const messages = await (0, api_2.getMessages)();
117
+ if (messages.length > 0) {
118
+ logger(`Found ${messages.length} message(s), fetching details...`);
119
+ const sortedMessages = messages.sort((a, b) => new Date(a.createdAt).getTime() - new Date(b.createdAt).getTime());
120
+ const messageId = sortedMessages[0].id;
121
+ logger(`Found ${messageId}`);
122
+ const { from, to, subject, intro, text, html, createdAt, updatedAt } = await (0, api_2.getMessagesContent)(messageId);
123
+ if (deleteAfterRead) {
124
+ await (0, api_2.deleteMessage)(messageId);
125
+ }
126
+ await (0, api_2.deleteAccount)(accountId);
127
+ return {
128
+ from: from,
129
+ to: to,
130
+ subject,
131
+ intro,
132
+ text,
133
+ html,
134
+ createdAt,
135
+ updatedAt,
136
+ };
137
+ }
138
+ await new Promise((resolve) => setTimeout(resolve, waitInterval));
139
+ logger(`No messages found, waiting for ${waitInterval / 1000} seconds...`);
140
+ }
141
+ logger(`Waiting timeout of ${maxWaitTime / 1000} seconds reached. No messages found.`);
142
+ await (0, api_2.deleteAccount)(accountId);
143
+ throw new Error(`No messages available within ${maxWaitTime / 1000} seconds timeout`);
144
+ };
145
+ exports.getRecentEmail = getRecentEmail;
146
+ /**
147
+ * Extracts a verification code from the provided email content.
148
+ *
149
+ * This function scans the given text for a sequence of 5 or more
150
+ * consecutive digits and returns the first valid verification code.
151
+ * If no valid sequence is found, the function returns `null`.
152
+ *
153
+ * @param {string} text - The content of the email, typically the body.
154
+ * @returns {Promise<string | null>} The first verification code found, or `null` if no valid code exists.
155
+ *
156
+ * @example
157
+ * const emailContent = "Your code is 123456.";
158
+ * const verificationCode = await getVerificationCode(emailContent);
159
+ * console.log(verificationCode); // Output: "123456"
160
+ */
161
+ const getVerificationCode = async (text) => {
162
+ console.log('Extracting the verification code from the email content...');
163
+ const matches = text.match(/\b\d{5,}\b/);
164
+ if (matches) {
165
+ return matches[0];
166
+ }
167
+ throw new Error('No verification code found in the provided email content.');
168
+ };
169
+ exports.getVerificationCode = getVerificationCode;
48
170
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,+CAAiC;AACjC,MAAM,CAAC,MAAM,EAAE,CAAC;AAEhB,4DAA0E;AAAjE,+GAAA,aAAa,OAAA;AACtB,mCAA4C;AAAnC,oGAAA,aAAa,OAAA;AACtB,4DAKmC;AAJjC,gHAAA,cAAc,OAAA;AACd,+GAAA,aAAa,OAAA;AAIf,mEAAkE;AAAzD,0HAAA,mBAAmB,OAAA"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"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"}
@@ -73,6 +73,7 @@ interface EmailResource {
73
73
  updatedAt: string;
74
74
  accountId: string;
75
75
  }
76
+ export declare const authenticate: (email: string, password: string) => Promise<void>;
76
77
  export declare const getAuthHeaders: () => {
77
78
  accept: string;
78
79
  Authorization: string;
@@ -86,17 +87,6 @@ export declare const createAccount: (payload: {
86
87
  address: string;
87
88
  password: string;
88
89
  }) => Promise<EmailAccount>;
89
- /**
90
- * Deletes the account created during `generateEmail`.
91
- *
92
- * @returns {Promise<number>} status code of 204 when the account is successfully deleted.
93
- *
94
- * @throws {Error} If no account is authenticated or deletion fails.
95
- *
96
- * @example
97
- * await deleteAccount();
98
- * console.log("Account deleted successfully.");
99
- */
100
90
  export declare const deleteAccount: (accountId: string) => Promise<number>;
101
91
  export {};
102
92
  //# sourceMappingURL=api.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"api.d.ts","sourceRoot":"","sources":["../../src/api.ts"],"names":[],"mappings":"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"}