emailengine-app 2.61.0 → 2.61.2

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 (137) hide show
  1. package/CHANGELOG.md +16 -0
  2. package/data/google-crawlers.json +1 -1
  3. package/lib/account/account-state.js +248 -0
  4. package/lib/account.js +17 -178
  5. package/lib/api-routes/account-routes.js +1006 -0
  6. package/lib/api-routes/message-routes.js +1377 -0
  7. package/lib/consts.js +12 -2
  8. package/lib/email-client/base-client.js +282 -771
  9. package/lib/email-client/gmail/gmail-api.js +243 -0
  10. package/lib/email-client/gmail-client.js +145 -53
  11. package/lib/email-client/imap/mailbox.js +24 -698
  12. package/lib/email-client/imap/sync-operations.js +812 -0
  13. package/lib/email-client/imap-client.js +3 -1
  14. package/lib/email-client/message-builder.js +566 -0
  15. package/lib/email-client/notification-handler.js +314 -0
  16. package/lib/email-client/outlook/graph-api.js +326 -0
  17. package/lib/email-client/outlook-client.js +159 -113
  18. package/lib/email-client/smtp-pool-manager.js +196 -0
  19. package/lib/imapproxy/imap-server.js +3 -12
  20. package/lib/oauth/gmail.js +4 -4
  21. package/lib/oauth/mail-ru.js +30 -5
  22. package/lib/oauth/outlook.js +57 -3
  23. package/lib/oauth/pubsub/google.js +30 -11
  24. package/lib/oauth/scope-checker.js +202 -0
  25. package/lib/oauth2-apps.js +8 -4
  26. package/lib/redis-operations.js +484 -0
  27. package/lib/routes-ui.js +283 -2582
  28. package/lib/tools.js +5 -196
  29. package/lib/ui-routes/account-routes.js +1931 -0
  30. package/lib/ui-routes/admin-config-routes.js +1233 -0
  31. package/lib/ui-routes/admin-entities-routes.js +2367 -0
  32. package/lib/ui-routes/oauth-routes.js +992 -0
  33. package/lib/utils/network.js +237 -0
  34. package/package.json +12 -12
  35. package/sbom.json +1 -1
  36. package/static/js/app.js +5 -5
  37. package/static/licenses.html +91 -21
  38. package/translations/de.mo +0 -0
  39. package/translations/de.po +85 -82
  40. package/translations/en.mo +0 -0
  41. package/translations/en.po +63 -71
  42. package/translations/et.mo +0 -0
  43. package/translations/et.po +84 -82
  44. package/translations/fr.mo +0 -0
  45. package/translations/fr.po +85 -82
  46. package/translations/ja.mo +0 -0
  47. package/translations/ja.po +84 -82
  48. package/translations/messages.pot +67 -80
  49. package/translations/nl.mo +0 -0
  50. package/translations/nl.po +86 -82
  51. package/translations/pl.mo +0 -0
  52. package/translations/pl.po +84 -82
  53. package/views/account/security.hbs +4 -4
  54. package/views/accounts/account.hbs +13 -13
  55. package/views/accounts/register/imap-server.hbs +12 -12
  56. package/views/config/document-store/pre-processing/index.hbs +4 -2
  57. package/views/config/oauth/app.hbs +6 -7
  58. package/views/config/oauth/index.hbs +2 -2
  59. package/views/config/service.hbs +3 -4
  60. package/views/dashboard.hbs +5 -7
  61. package/views/error.hbs +22 -7
  62. package/views/gateways/gateway.hbs +2 -2
  63. package/views/partials/add_account_modal.hbs +7 -10
  64. package/views/partials/document_store_header.hbs +1 -1
  65. package/views/partials/editor_scope_info.hbs +0 -1
  66. package/views/partials/oauth_config_header.hbs +1 -1
  67. package/views/partials/side_menu.hbs +3 -3
  68. package/views/partials/webhook_form.hbs +2 -2
  69. package/views/templates/index.hbs +1 -1
  70. package/views/templates/template.hbs +8 -8
  71. package/views/tokens/index.hbs +6 -6
  72. package/views/tokens/new.hbs +1 -1
  73. package/views/webhooks/index.hbs +4 -4
  74. package/views/webhooks/webhook.hbs +7 -7
  75. package/workers/api.js +148 -2436
  76. package/workers/smtp.js +2 -1
  77. package/workers/webhooks.js +6 -0
  78. package/lib/imapproxy/imap-core/test/client.js +0 -46
  79. package/lib/imapproxy/imap-core/test/fixtures/append.eml +0 -1196
  80. package/lib/imapproxy/imap-core/test/fixtures/chunks.js +0 -44
  81. package/lib/imapproxy/imap-core/test/fixtures/fix1.eml +0 -6
  82. package/lib/imapproxy/imap-core/test/fixtures/fix2.eml +0 -599
  83. package/lib/imapproxy/imap-core/test/fixtures/fix3.eml +0 -32
  84. package/lib/imapproxy/imap-core/test/fixtures/fix4.eml +0 -6
  85. package/lib/imapproxy/imap-core/test/fixtures/mimetorture.eml +0 -599
  86. package/lib/imapproxy/imap-core/test/fixtures/mimetorture.js +0 -2740
  87. package/lib/imapproxy/imap-core/test/fixtures/mimetorture.json +0 -1411
  88. package/lib/imapproxy/imap-core/test/fixtures/mimetree.js +0 -85
  89. package/lib/imapproxy/imap-core/test/fixtures/nodemailer.eml +0 -582
  90. package/lib/imapproxy/imap-core/test/fixtures/ryan_finnie_mime_torture.eml +0 -599
  91. package/lib/imapproxy/imap-core/test/fixtures/simple.eml +0 -42
  92. package/lib/imapproxy/imap-core/test/fixtures/simple.json +0 -164
  93. package/lib/imapproxy/imap-core/test/imap-compile-stream-test.js +0 -671
  94. package/lib/imapproxy/imap-core/test/imap-compiler-test.js +0 -272
  95. package/lib/imapproxy/imap-core/test/imap-indexer-test.js +0 -236
  96. package/lib/imapproxy/imap-core/test/imap-parser-test.js +0 -922
  97. package/lib/imapproxy/imap-core/test/memory-notifier.js +0 -129
  98. package/lib/imapproxy/imap-core/test/prepare.sh +0 -74
  99. package/lib/imapproxy/imap-core/test/protocol-test.js +0 -1756
  100. package/lib/imapproxy/imap-core/test/search-test.js +0 -1356
  101. package/lib/imapproxy/imap-core/test/test-client.js +0 -152
  102. package/lib/imapproxy/imap-core/test/test-server.js +0 -623
  103. package/lib/imapproxy/imap-core/test/tools-test.js +0 -22
  104. package/test/api-test.js +0 -899
  105. package/test/autoreply-test.js +0 -327
  106. package/test/bounce-test.js +0 -151
  107. package/test/complaint-test.js +0 -256
  108. package/test/fixtures/autoreply/LICENSE +0 -27
  109. package/test/fixtures/autoreply/rfc3834-01.eml +0 -23
  110. package/test/fixtures/autoreply/rfc3834-02.eml +0 -24
  111. package/test/fixtures/autoreply/rfc3834-03.eml +0 -26
  112. package/test/fixtures/autoreply/rfc3834-04.eml +0 -48
  113. package/test/fixtures/autoreply/rfc3834-05.eml +0 -19
  114. package/test/fixtures/autoreply/rfc3834-06.eml +0 -59
  115. package/test/fixtures/bounces/163.eml +0 -2521
  116. package/test/fixtures/bounces/fastmail.eml +0 -242
  117. package/test/fixtures/bounces/gmail.eml +0 -252
  118. package/test/fixtures/bounces/hotmail.eml +0 -655
  119. package/test/fixtures/bounces/mailru.eml +0 -121
  120. package/test/fixtures/bounces/outlook.eml +0 -1107
  121. package/test/fixtures/bounces/postfix.eml +0 -101
  122. package/test/fixtures/bounces/rambler.eml +0 -116
  123. package/test/fixtures/bounces/workmail.eml +0 -142
  124. package/test/fixtures/bounces/yahoo.eml +0 -139
  125. package/test/fixtures/bounces/zoho.eml +0 -83
  126. package/test/fixtures/bounces/zonemta.eml +0 -100
  127. package/test/fixtures/complaints/LICENSE +0 -27
  128. package/test/fixtures/complaints/amazonses.eml +0 -72
  129. package/test/fixtures/complaints/dmarc.eml +0 -59
  130. package/test/fixtures/complaints/hotmail.eml +0 -49
  131. package/test/fixtures/complaints/optout.eml +0 -40
  132. package/test/fixtures/complaints/standard-arf.eml +0 -68
  133. package/test/fixtures/complaints/yahoo.eml +0 -68
  134. package/test/oauth2-apps-test.js +0 -301
  135. package/test/sendonly-test.js +0 -160
  136. package/test/test-config.js +0 -34
  137. package/test/webhooks-server.js +0 -39
@@ -1,164 +0,0 @@
1
- {
2
- "childNodes": [{
3
- "childNodes": [{
4
- "header": [
5
- "Content-Type: text/plain",
6
- "Content-Transfer-Encoding: 7bit"
7
- ],
8
- "parsedHeader": {
9
- "content-transfer-encoding": "7bit",
10
- "content-type": {
11
- "value": "text/plain",
12
- "type": "text",
13
- "subtype": "plain",
14
- "params": {}
15
- }
16
- },
17
- "body": "hello",
18
- "multipart": false,
19
- "boundary": false,
20
- "lineCount": 1,
21
- "size": 5
22
- }, {
23
- "header": [
24
- "Content-Type: text/html",
25
- "Content-Transfer-Encoding: 7bit"
26
- ],
27
- "parsedHeader": {
28
- "content-transfer-encoding": "7bit",
29
- "content-type": {
30
- "value": "text/html",
31
- "type": "text",
32
- "subtype": "html",
33
- "params": {}
34
- }
35
- },
36
- "body": "<p>hello</p>",
37
- "multipart": false,
38
- "boundary": false,
39
- "lineCount": 1,
40
- "size": 12
41
- }],
42
- "header": [
43
- "Content-Type: multipart/alternative;\r\n boundary=\"----sinikael-?=_2-14508625179060.6947296333964914\""
44
- ],
45
- "parsedHeader": {
46
- "content-type": {
47
- "value": "multipart/alternative",
48
- "type": "multipart",
49
- "subtype": "alternative",
50
- "params": {
51
- "boundary": "----sinikael-?=_2-14508625179060.6947296333964914"
52
- },
53
- "hasParams": true
54
- }
55
- },
56
- "body": "",
57
- "multipart": "alternative",
58
- "boundary": "----sinikael-?=_2-14508625179060.6947296333964914",
59
- "lineCount": 1,
60
- "size": 0
61
- }, {
62
- "header": [
63
- "Content-Type: text/plain; charset=utf-8; name=\"notes\r\n =?UTF-8?Q?=F0=9F=95=B6=2Etxt?=\"",
64
- "Content-Disposition: attachment;\r\n filename*0*=utf-8''notes%20%F0%9F%95%B6.txt",
65
- "Content-Transfer-Encoding: quoted-printable"
66
- ],
67
- "parsedHeader": {
68
- "content-transfer-encoding": "quoted-printable",
69
- "content-disposition": {
70
- "value": "attachment",
71
- "type": "attachment",
72
- "subtype": "",
73
- "params": {
74
- "filename": "=?UTF-8?Q?notes=20=F0=9F=95=B6.txt?="
75
- },
76
- "hasParams": true
77
- },
78
- "content-type": {
79
- "value": "text/plain",
80
- "type": "text",
81
- "subtype": "plain",
82
- "params": {
83
- "charset": "utf-8",
84
- "name": "notes =?UTF-8?Q?=F0=9F=95=B6=2Etxt?="
85
- },
86
- "hasParams": true
87
- }
88
- },
89
- "body": "Some notes about this e-mail =F0=9F=90=B1",
90
- "multipart": false,
91
- "boundary": false,
92
- "lineCount": 1,
93
- "size": 41
94
- }, {
95
- "header": [
96
- "Content-Type: image/png; name=image.png",
97
- "Content-Disposition: attachment; filename=image.png",
98
- "Content-Transfer-Encoding: base64"
99
- ],
100
- "parsedHeader": {
101
- "content-transfer-encoding": "base64",
102
- "content-disposition": {
103
- "value": "attachment",
104
- "type": "attachment",
105
- "subtype": "",
106
- "params": {
107
- "filename": "image.png"
108
- },
109
- "hasParams": true
110
- },
111
- "content-type": {
112
- "value": "image/png",
113
- "type": "image",
114
- "subtype": "png",
115
- "params": {
116
- "name": "image.png"
117
- },
118
- "hasParams": true
119
- }
120
- },
121
- "body": "iVBORw0KGgoAAAANSUhEUgAAABAAAAAQAQMAAAAlPW0iAAAABlBMVEUAAAD///+l2Z/dAAAAM0lE\r\nQVR4nGP4/5/h/1+G/58ZDrAz3D/McH8yw83NDDeNGe4Ug9C9zwz3gVLMDA/A6P9/AFGGFyjOXZtQ\r\nAAAAAElFTkSuQmCC",
122
- "multipart": false,
123
- "boundary": false,
124
- "lineCount": 3,
125
- "size": 172
126
- }],
127
- "header": [
128
- "Content-Type: multipart/mixed;\r\n boundary=\"----sinikael-?=_1-14508625179060.6947296333964914\"",
129
- "From: =?UTF-8?Q?Sender_Name_=F0=9F=91=BB?= <sender@example.com>",
130
- "To: =?UTF-8?Q?Receiver_Name_=F0=9F=91=A5?= <receiver@example.com>",
131
- "Subject: Nodemailer is unicode friendly =?UTF-8?Q?=E2=9C=94?=",
132
- "Date: Wed, 23 Dec 2015 09:21:57 +0000",
133
- "Message-Id: <1450862517911-ebf3ac1e-e421bda1-4d17b820@example.com>",
134
- "MIME-Version: 1.0"
135
- ],
136
- "parsedHeader": {
137
- "mime-version": "1.0",
138
- "message-id": "<1450862517911-ebf3ac1e-e421bda1-4d17b820@example.com>",
139
- "date": "Wed, 23 Dec 2015 09:21:57 +0000",
140
- "subject": "Nodemailer is unicode friendly =?UTF-8?Q?=E2=9C=94?=",
141
- "to": [{
142
- "address": "receiver@example.com",
143
- "name": "=?UTF-8?Q?Receiver_Name_=F0=9F=91=A5?="
144
- }],
145
- "from": [{
146
- "address": "sender@example.com",
147
- "name": "=?UTF-8?Q?Sender_Name_=F0=9F=91=BB?="
148
- }],
149
- "content-type": {
150
- "value": "multipart/mixed",
151
- "type": "multipart",
152
- "subtype": "mixed",
153
- "params": {
154
- "boundary": "----sinikael-?=_1-14508625179060.6947296333964914"
155
- },
156
- "hasParams": true
157
- }
158
- },
159
- "body": "",
160
- "multipart": "mixed",
161
- "boundary": "----sinikael-?=_1-14508625179060.6947296333964914",
162
- "lineCount": 1,
163
- "size": 0
164
- }