@atproto/pds 0.4.59 → 0.4.60

Sign up to get free protection for your applications and to get access to all the features.
Files changed (118) hide show
  1. package/CHANGELOG.md +31 -0
  2. package/dist/api/app/bsky/actor/getProfile.d.ts.map +1 -1
  3. package/dist/api/app/bsky/actor/getProfile.js +2 -9
  4. package/dist/api/app/bsky/actor/getProfile.js.map +1 -1
  5. package/dist/api/app/bsky/actor/getProfiles.d.ts.map +1 -1
  6. package/dist/api/app/bsky/actor/getProfiles.js +2 -6
  7. package/dist/api/app/bsky/actor/getProfiles.js.map +1 -1
  8. package/dist/api/app/bsky/feed/getActorLikes.d.ts.map +1 -1
  9. package/dist/api/app/bsky/feed/getActorLikes.js +2 -9
  10. package/dist/api/app/bsky/feed/getActorLikes.js.map +1 -1
  11. package/dist/api/app/bsky/feed/getAuthorFeed.d.ts.map +1 -1
  12. package/dist/api/app/bsky/feed/getAuthorFeed.js +2 -9
  13. package/dist/api/app/bsky/feed/getAuthorFeed.js.map +1 -1
  14. package/dist/api/app/bsky/feed/getFeed.d.ts.map +1 -1
  15. package/dist/api/app/bsky/feed/getFeed.js +2 -1
  16. package/dist/api/app/bsky/feed/getFeed.js.map +1 -1
  17. package/dist/api/app/bsky/feed/getPostThread.d.ts.map +1 -1
  18. package/dist/api/app/bsky/feed/getPostThread.js +12 -14
  19. package/dist/api/app/bsky/feed/getPostThread.js.map +1 -1
  20. package/dist/api/app/bsky/feed/getTimeline.d.ts.map +1 -1
  21. package/dist/api/app/bsky/feed/getTimeline.js +2 -6
  22. package/dist/api/app/bsky/feed/getTimeline.js.map +1 -1
  23. package/dist/api/com/atproto/repo/getRecord.js +1 -1
  24. package/dist/api/com/atproto/repo/getRecord.js.map +1 -1
  25. package/dist/api/com/atproto/server/requestPasswordReset.js +1 -1
  26. package/dist/api/com/atproto/server/requestPasswordReset.js.map +1 -1
  27. package/dist/config/config.d.ts +9 -0
  28. package/dist/config/config.d.ts.map +1 -1
  29. package/dist/config/config.js +10 -1
  30. package/dist/config/config.js.map +1 -1
  31. package/dist/config/env.d.ts +6 -1
  32. package/dist/config/env.d.ts.map +1 -1
  33. package/dist/config/env.js +8 -1
  34. package/dist/config/env.js.map +1 -1
  35. package/dist/context.d.ts +6 -2
  36. package/dist/context.d.ts.map +1 -1
  37. package/dist/context.js +55 -11
  38. package/dist/context.js.map +1 -1
  39. package/dist/index.d.ts.map +1 -1
  40. package/dist/index.js +1 -0
  41. package/dist/index.js.map +1 -1
  42. package/dist/lexicon/lexicons.d.ts +33 -0
  43. package/dist/lexicon/lexicons.d.ts.map +1 -1
  44. package/dist/lexicon/lexicons.js +42 -3
  45. package/dist/lexicon/lexicons.js.map +1 -1
  46. package/dist/lexicon/types/app/bsky/actor/defs.d.ts +2 -0
  47. package/dist/lexicon/types/app/bsky/actor/defs.d.ts.map +1 -1
  48. package/dist/lexicon/types/app/bsky/actor/defs.js.map +1 -1
  49. package/dist/lexicon/types/app/bsky/actor/profile.d.ts +1 -0
  50. package/dist/lexicon/types/app/bsky/actor/profile.d.ts.map +1 -1
  51. package/dist/lexicon/types/app/bsky/actor/profile.js.map +1 -1
  52. package/dist/lexicon/types/app/bsky/feed/defs.d.ts +13 -2
  53. package/dist/lexicon/types/app/bsky/feed/defs.d.ts.map +1 -1
  54. package/dist/lexicon/types/app/bsky/feed/defs.js +21 -1
  55. package/dist/lexicon/types/app/bsky/feed/defs.js.map +1 -1
  56. package/dist/lexicon/types/app/bsky/feed/getAuthorFeed.d.ts +1 -0
  57. package/dist/lexicon/types/app/bsky/feed/getAuthorFeed.d.ts.map +1 -1
  58. package/dist/lexicon/types/app/bsky/graph/getSuggestedFollowsByActor.d.ts +2 -0
  59. package/dist/lexicon/types/app/bsky/graph/getSuggestedFollowsByActor.d.ts.map +1 -1
  60. package/dist/lexicon/types/app/bsky/unspecced/getSuggestionsSkeleton.d.ts +2 -0
  61. package/dist/lexicon/types/app/bsky/unspecced/getSuggestionsSkeleton.d.ts.map +1 -1
  62. package/dist/mailer/index.d.ts +1 -1
  63. package/dist/mailer/index.d.ts.map +1 -1
  64. package/dist/mailer/index.js.map +1 -1
  65. package/dist/mailer/templates/confirm-email.js +1 -1
  66. package/dist/mailer/templates/confirm-email.js.map +2 -2
  67. package/dist/mailer/templates/delete-account.js +1 -1
  68. package/dist/mailer/templates/delete-account.js.map +2 -2
  69. package/dist/mailer/templates/plc-operation.js +1 -1
  70. package/dist/mailer/templates/plc-operation.js.map +2 -2
  71. package/dist/mailer/templates/reset-password.js +1 -1
  72. package/dist/mailer/templates/reset-password.js.map +2 -2
  73. package/dist/mailer/templates/update-email.js +1 -1
  74. package/dist/mailer/templates/update-email.js.map +2 -2
  75. package/dist/pipethrough.d.ts +26 -26
  76. package/dist/pipethrough.d.ts.map +1 -1
  77. package/dist/pipethrough.js +328 -228
  78. package/dist/pipethrough.js.map +1 -1
  79. package/dist/read-after-write/util.d.ts +13 -5
  80. package/dist/read-after-write/util.d.ts.map +1 -1
  81. package/dist/read-after-write/util.js +37 -22
  82. package/dist/read-after-write/util.js.map +1 -1
  83. package/package.json +16 -15
  84. package/src/api/app/bsky/actor/getProfile.ts +3 -17
  85. package/src/api/app/bsky/actor/getProfiles.ts +3 -15
  86. package/src/api/app/bsky/feed/getActorLikes.ts +3 -19
  87. package/src/api/app/bsky/feed/getAuthorFeed.ts +3 -17
  88. package/src/api/app/bsky/feed/getFeed.ts +3 -1
  89. package/src/api/app/bsky/feed/getPostThread.ts +16 -23
  90. package/src/api/app/bsky/feed/getTimeline.ts +3 -14
  91. package/src/api/com/atproto/repo/getRecord.ts +1 -1
  92. package/src/api/com/atproto/server/requestPasswordReset.ts +1 -1
  93. package/src/config/config.ts +21 -1
  94. package/src/config/env.ts +20 -2
  95. package/src/context.ts +62 -17
  96. package/src/index.ts +1 -0
  97. package/src/lexicon/lexicons.ts +44 -3
  98. package/src/lexicon/types/app/bsky/actor/defs.ts +2 -0
  99. package/src/lexicon/types/app/bsky/actor/profile.ts +1 -0
  100. package/src/lexicon/types/app/bsky/feed/defs.ts +38 -2
  101. package/src/lexicon/types/app/bsky/feed/getAuthorFeed.ts +1 -0
  102. package/src/lexicon/types/app/bsky/graph/getSuggestedFollowsByActor.ts +2 -0
  103. package/src/lexicon/types/app/bsky/unspecced/getSuggestionsSkeleton.ts +2 -0
  104. package/src/mailer/index.ts +1 -1
  105. package/src/mailer/templates/confirm-email.hbs +106 -336
  106. package/src/mailer/templates/delete-account.hbs +110 -346
  107. package/src/mailer/templates/plc-operation.hbs +107 -338
  108. package/src/mailer/templates/reset-password.d.ts +1 -1
  109. package/src/mailer/templates/reset-password.hbs +108 -344
  110. package/src/mailer/templates/update-email.hbs +107 -337
  111. package/src/pipethrough.ts +489 -233
  112. package/src/read-after-write/util.ts +58 -32
  113. package/tests/account-deletion.test.ts +1 -1
  114. package/tests/account.test.ts +2 -2
  115. package/tests/email-confirmation.test.ts +2 -2
  116. package/tests/plc-operations.test.ts +1 -1
  117. package/tests/proxied/proxy-catchall.test.ts +255 -0
  118. package/tests/proxied/proxy-header.test.ts +31 -1
@@ -1,363 +1,123 @@
1
- <html>
1
+ <html dir="ltr" lang="en">
2
+
2
3
  <head>
3
- <!-- Compiled with Bootstrap Email version: 1.3.1 --><meta
4
- http-equiv="x-ua-compatible"
5
- content="ie=edge"
6
- />
4
+ <meta content="text/html; charset=UTF-8" http-equiv="Content-Type" />
7
5
  <meta name="x-apple-disable-message-reformatting" />
8
- <meta name="viewport" content="width=device-width, initial-scale=1" />
6
+ <title>Update your email</title>
9
7
  <meta
10
- name="format-detection"
11
- content="telephone=no, date=no, address=no, email=no"
8
+ name="description"
9
+ content="To update the email for your account, enter the code provided in the app along with your new email."
12
10
  />
13
- <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
14
- <style type="text/css">
15
- body,table,td{font-family:Helvetica,Arial,sans-serif
16
- !important}.ExternalClass{width:100%}.ExternalClass,.ExternalClass
17
- p,.ExternalClass span,.ExternalClass font,.ExternalClass td,.ExternalClass
18
- div{line-height:150%}a{text-decoration:none}*{color:inherit}a[x-apple-data-detectors],u+#body
19
- a,#MessageViewBody
20
- a{color:inherit;text-decoration:none;font-size:inherit;font-family:inherit;font-weight:inherit;line-height:inherit}img{-ms-interpolation-mode:bicubic}table:not([class^=s-]){font-family:Helvetica,Arial,sans-serif;mso-table-lspace:0pt;mso-table-rspace:0pt;border-spacing:0px;border-collapse:collapse}table:not([class^=s-])
21
- td{border-spacing:0px;border-collapse:collapse}@media screen and
22
- (max-width: 600px){.w-full,.w-full>tbody>tr>td{width:100%
23
- !important}*[class*=s-lg-]>tbody>tr>td{font-size:0
24
- !important;line-height:0 !important;height:0
25
- !important}.s-2>tbody>tr>td{font-size:8px !important;line-height:8px
26
- !important;height:8px !important}.s-5>tbody>tr>td{font-size:20px
27
- !important;line-height:20px !important;height:20px
28
- !important}.s-10>tbody>tr>td{font-size:40px !important;line-height:40px
29
- !important;height:40px !important}}
30
- </style>
31
11
  </head>
12
+ <div
13
+ style="display:none;overflow:hidden;line-height:1px;opacity:0;max-height:0;max-width:0"
14
+ >To update the email for your account, enter the code provided in the app
15
+ along with your new email.<div
16
+ > ‌​‍‎‏ ‌​‍‎‏ ‌​‍‎‏ ‌​‍‎‏ ‌​‍‎‏ ‌​‍‎‏ ‌​‍‎‏ ‌​‍‎‏ ‌​‍‎‏ ‌​‍‎‏ ‌​‍‎‏ ‌​‍‎‏ ‌​‍‎‏ ‌​‍‎‏ ‌​‍‎‏ ‌​‍‎‏ ‌​‍‎‏ ‌​‍‎‏ ‌​‍‎‏ ‌​‍‎‏ ‌​‍‎‏ ‌​‍‎‏ ‌​‍‎‏ ‌​‍‎‏ ‌​‍‎‏ ‌​‍‎‏ ‌​‍‎‏ ‌​‍‎‏ ‌​‍‎‏ ‌​‍‎‏ ‌​‍‎‏ ‌​‍‎‏ ‌​‍‎‏ ‌​‍‎‏ ‌​‍‎‏ ‌​‍‎‏ ‌​‍‎‏ ‌​‍‎‏ ‌​‍‎‏ ‌​‍‎‏ ‌​‍‎‏ ‌​‍‎‏ ‌​‍‎‏ ‌​‍‎‏ ‌​‍‎‏ ‌​‍‎‏ ‌​‍‎‏ ‌​‍‎‏ ‌​‍‎‏ ‌​‍‎‏ ‌​‍‎‏</div>
17
+ </div>
18
+
32
19
  <body
33
- class="bg-light"
34
- style="outline: 0; width: 100%; min-width: 100%; height: 100%; -webkit-text-size-adjust: 100%; -ms-text-size-adjust: 100%; font-family: Helvetica, Arial, sans-serif; line-height: 24px; font-weight: normal; font-size: 16px; -moz-box-sizing: border-box; -webkit-box-sizing: border-box; box-sizing: border-box; color: #000000; margin: 0; padding: 0; border-width: 0;"
35
- bgcolor="#f7fafc"
20
+ style="padding:12px;padding-bottom:40px;background-color:hsl(211, 20%, 95.3%)"
36
21
  >
37
22
  <table
38
- class="bg-light body"
39
- valign="top"
40
- role="presentation"
23
+ align="center"
24
+ width="100%"
41
25
  border="0"
42
- cellpadding="0"
43
- cellspacing="0"
44
- style="outline: 0; width: 100%; min-width: 100%; height: 100%; -webkit-text-size-adjust: 100%; -ms-text-size-adjust: 100%; font-family: Helvetica, Arial, sans-serif; line-height: 24px; font-weight: normal; font-size: 16px; -moz-box-sizing: border-box; -webkit-box-sizing: border-box; box-sizing: border-box; color: #000000; margin: 0; padding: 0; border-width: 0;"
45
- bgcolor="#f7fafc"
26
+ cellPadding="0"
27
+ cellSpacing="0"
28
+ role="presentation"
29
+ style="max-width:37.5em"
46
30
  >
47
31
  <tbody>
48
- <tr>
49
- <td
50
- valign="top"
51
- style="line-height: 24px; font-size: 16px; margin: 0;"
52
- align="left"
53
- bgcolor="#f7fafc"
54
- >
32
+ <tr style="width:100%">
33
+ <td>
55
34
  <table
56
- class="container"
35
+ align="center"
36
+ width="100%"
37
+ border="0"
38
+ cellPadding="0"
39
+ cellSpacing="0"
57
40
  role="presentation"
41
+ style="padding-top:24px;padding-bottom:24px"
42
+ >
43
+ <tbody>
44
+ <tr>
45
+ <td><img
46
+ alt="Bluesky"
47
+ src="https://bsky.social/about/images/email/email_logo_default.png"
48
+ style="display:block;outline:none;border:none;text-decoration:none;width:110px;margin:0 auto"
49
+ /></td>
50
+ </tr>
51
+ </tbody>
52
+ </table>
53
+ <table
54
+ align="center"
55
+ width="100%"
58
56
  border="0"
59
- cellpadding="0"
60
- cellspacing="0"
61
- style="width: 100%;"
57
+ cellPadding="0"
58
+ cellSpacing="0"
59
+ role="presentation"
60
+ style="padding:24px;padding-bottom:16px;border-radius:12px;background-color:#FFFFFF"
62
61
  >
63
62
  <tbody>
64
63
  <tr>
65
- <td
66
- align="center"
67
- style="line-height: 24px; font-size: 16px; margin: 0; padding: 0 16px;"
68
- >
69
- <!--[if (gte mso 9)|(IE)]>
70
- <table align="center" role="presentation">
71
- <tbody>
72
- <tr>
73
- <td width="600">
74
- <![endif]-->
64
+ <td>
65
+ <h1
66
+ style="font-size:26px;letter-spacing:0.25px;color:#000000;font-family:-apple-system, BlinkMacSystemFont, &#x27;Roboto&#x27;, &#x27;Oxygen&#x27;, &#x27;Ubuntu&#x27;, &#x27;Cantarell&#x27;, &#x27;Fira Sans&#x27;, &#x27;Droid Sans&#x27;, &#x27;Helvetica Neue&#x27;, sans-serif;margin:0px 0px;line-height:1.0"
67
+ >Update your email</h1>
68
+ <p
69
+ style="font-size:16px;line-height:1.4;margin:0px 0px;letter-spacing:0.25px;color:hsl(211, 24%, 34.2%);font-family:-apple-system, BlinkMacSystemFont, &#x27;Roboto&#x27;, &#x27;Oxygen&#x27;, &#x27;Ubuntu&#x27;, &#x27;Cantarell&#x27;, &#x27;Fira Sans&#x27;, &#x27;Droid Sans&#x27;, &#x27;Helvetica Neue&#x27;, sans-serif;padding-top:12px;padding-bottom:12px;padding-right:32px"
70
+ >To update the email for your account, enter the code below
71
+ in the app along with your new email.</p><code
72
+ style="display:block;padding:16px;border-radius:8px;border-width:1px;border-style:solid;background-color:hsl(211, 20%, 95.3%);border-color:hsl(211, 20%, 85.89999999999999%);font-size:14px;letter-spacing:0.25px;font-family:monospace;text-transform:lowercase"
73
+ >{{token}}</code>
74
+ <p
75
+ style="font-size:14px;line-height:1.4;margin:0px 0px;letter-spacing:0.25px;color:hsl(211, 20%, 53%);font-family:-apple-system, BlinkMacSystemFont, &#x27;Roboto&#x27;, &#x27;Oxygen&#x27;, &#x27;Ubuntu&#x27;, &#x27;Cantarell&#x27;, &#x27;Fira Sans&#x27;, &#x27;Droid Sans&#x27;, &#x27;Helvetica Neue&#x27;, sans-serif;padding-top:12px"
76
+ >If you didn&#x27;t request an email update, you can safely
77
+ ignore this email.</p>
75
78
  <table
76
79
  align="center"
77
- role="presentation"
80
+ width="100%"
78
81
  border="0"
79
- cellpadding="0"
80
- cellspacing="0"
81
- style="width: 100%; max-width: 600px; margin: 0 auto;"
82
+ cellPadding="0"
83
+ cellSpacing="0"
84
+ role="presentation"
85
+ style="padding-top:24px"
82
86
  >
83
87
  <tbody>
84
88
  <tr>
85
- <td
86
- style="line-height: 24px; font-size: 16px; margin: 0;"
87
- align="left"
88
- >
89
+ <td>
90
+ <hr
91
+ style="width:100%;border:none;border-top:1px solid #eaeaea;margin:0"
92
+ />
89
93
  <table
90
- class="s-10 w-full"
91
- role="presentation"
92
- border="0"
93
- cellpadding="0"
94
- cellspacing="0"
95
- style="width: 100%;"
94
+ align="center"
96
95
  width="100%"
97
- >
98
- <tbody>
99
- <tr>
100
- <td
101
- style="line-height: 40px; font-size: 40px; width: 100%; height: 40px; margin: 0;"
102
- align="left"
103
- width="100%"
104
- height="40"
105
- >
106
- &#160;
107
- </td>
108
- </tr>
109
- </tbody>
110
- </table>
111
- <table
112
- class="card"
113
- role="presentation"
114
96
  border="0"
115
- cellpadding="0"
116
- cellspacing="0"
117
- style="border-radius: 6px; border-collapse: separate !important; width: 100%; overflow: hidden; border: 1px solid #e2e8f0;"
118
- bgcolor="#ffffff"
119
- >
120
- <tbody>
121
- <tr>
122
- <td
123
- style="line-height: 24px; font-size: 16px; width: 100%; margin: 0;"
124
- align="left"
125
- bgcolor="#ffffff"
126
- >
127
- <table
128
- class="card-body"
129
- role="presentation"
130
- border="0"
131
- cellpadding="0"
132
- cellspacing="0"
133
- style="width: 100%;"
134
- >
135
- <tbody>
136
- <tr>
137
- <td
138
- style="line-height: 24px; font-size: 16px; width: 100%; margin: 0; padding: 20px;"
139
- align="left"
140
- >
141
- <h1
142
- class="h3"
143
- style="padding-top: 0; padding-bottom: 0; font-weight: 500; vertical-align: baseline; font-size: 28px; line-height: 33.6px; margin: 0;"
144
- align="left"
145
- >Update your Bluesky email</h1>
146
- <table
147
- class="s-2 w-full"
148
- role="presentation"
149
- border="0"
150
- cellpadding="0"
151
- cellspacing="0"
152
- style="width: 100%;"
153
- width="100%"
154
- >
155
- <tbody>
156
- <tr>
157
- <td
158
- style="line-height: 8px; font-size: 8px; width: 100%; height: 8px; margin: 0;"
159
- align="left"
160
- width="100%"
161
- height="8"
162
- >
163
- &#160;
164
- </td>
165
- </tr>
166
- </tbody>
167
- </table>
168
- <table
169
- class="s-5 w-full"
170
- role="presentation"
171
- border="0"
172
- cellpadding="0"
173
- cellspacing="0"
174
- style="width: 100%;"
175
- width="100%"
176
- >
177
- <tbody>
178
- <tr>
179
- <td
180
- style="line-height: 20px; font-size: 20px; width: 100%; height: 20px; margin: 0;"
181
- align="left"
182
- width="100%"
183
- height="20"
184
- >
185
- &#160;
186
- </td>
187
- </tr>
188
- </tbody>
189
- </table>
190
- <table
191
- class="hr"
192
- role="presentation"
193
- border="0"
194
- cellpadding="0"
195
- cellspacing="0"
196
- style="width: 100%;"
197
- >
198
- <tbody>
199
- <tr>
200
- <td
201
- style="line-height: 24px; font-size: 16px; border-top-width: 1px; border-top-color: #e2e8f0; border-top-style: solid; height: 1px; width: 100%; margin: 0;"
202
- align="left"
203
- >
204
- </td>
205
- </tr>
206
- </tbody>
207
- </table>
208
- <table
209
- class="s-5 w-full"
210
- role="presentation"
211
- border="0"
212
- cellpadding="0"
213
- cellspacing="0"
214
- style="width: 100%;"
215
- width="100%"
216
- >
217
- <tbody>
218
- <tr>
219
- <td
220
- style="line-height: 20px; font-size: 20px; width: 100%; height: 20px; margin: 0;"
221
- align="left"
222
- width="100%"
223
- height="20"
224
- >
225
- &#160;
226
- </td>
227
- </tr>
228
- </tbody>
229
- </table>
230
- <div class="space-y-3">
231
- <p
232
- class="text-gray-700"
233
- style="line-height: 24px; font-size: 16px; color: #4a5568; width: 100%; margin: 0;"
234
- align="left"
235
- >Confirmation code:</p>
236
- </div>
237
- <table
238
- class="s-2 w-full"
239
- role="presentation"
240
- border="0"
241
- cellpadding="0"
242
- cellspacing="0"
243
- style="width: 100%;"
244
- width="100%"
245
- >
246
- <tbody>
247
- <tr>
248
- <td
249
- style="line-height: 8px; font-size: 8px; width: 100%; height: 8px; margin: 0;"
250
- align="left"
251
- width="100%"
252
- height="8"
253
- >
254
- &#160;
255
- </td>
256
- </tr>
257
- </tbody>
258
- </table>
259
- <table
260
- class="card"
261
- role="presentation"
262
- border="0"
263
- cellpadding="0"
264
- cellspacing="0"
265
- style="border-radius: 6px; border-collapse: separate !important; width: 100%; overflow: hidden; border: 1px solid #e2e8f0;"
266
- bgcolor="#ffffff"
267
- >
268
- <tbody>
269
- <tr>
270
- <td
271
- style="line-height: 24px; font-size: 16px; width: 100%; margin: 0;"
272
- align="left"
273
- bgcolor="#ffffff"
274
- >
275
- <table
276
- class="card-body"
277
- role="presentation"
278
- border="0"
279
- cellpadding="0"
280
- cellspacing="0"
281
- style="width: 100%;"
282
- >
283
- <tbody>
284
- <tr>
285
- <td
286
- style="line-height: 24px; font-size: 16px; width: 100%; margin: 0; padding: 20px;"
287
- align="left"
288
- >
289
- <h4
290
- class="fw-900"
291
- style="padding-top: 0; padding-bottom: 0; font-weight: 900 !important; vertical-align: baseline; font-size: 24px; line-height: 28.8px; margin: 0;"
292
- align="left"
293
- >{{token}}</h4>
294
- </td>
295
- </tr>
296
- </tbody>
297
- </table>
298
- </td>
299
- </tr>
300
- </tbody>
301
- </table>
302
- <table
303
- class="s-2 w-full"
304
- role="presentation"
305
- border="0"
306
- cellpadding="0"
307
- cellspacing="0"
308
- style="width: 100%;"
309
- width="100%"
310
- >
311
- <tbody>
312
- <tr>
313
- <td
314
- style="line-height: 8px; font-size: 8px; width: 100%; height: 8px; margin: 0;"
315
- align="left"
316
- width="100%"
317
- height="8"
318
- >
319
- &#160;
320
- </td>
321
- </tr>
322
- </tbody>
323
- </table>
324
- <div class="space-y-3">
325
- <p
326
- class="text-gray-700"
327
- style="line-height: 24px; font-size: 16px; color: #4a5568; width: 100%; margin: 0;"
328
- align="left"
329
- >To the email for your account,
330
- please enter the above code
331
- alongside your new email in the
332
- app.</p>
333
- </div>
334
- </td>
335
- </tr>
336
- </tbody>
337
- </table>
338
- </td>
339
- </tr>
340
- </tbody>
341
- </table>
342
- <table
343
- class="s-10 w-full"
97
+ cellPadding="0"
98
+ cellSpacing="0"
344
99
  role="presentation"
345
- border="0"
346
- cellpadding="0"
347
- cellspacing="0"
348
- style="width: 100%;"
349
- width="100%"
100
+ style="padding-top:16px;vertical-align:middle"
350
101
  >
351
- <tbody>
352
- <tr>
353
- <td
354
- style="line-height: 40px; font-size: 40px; width: 100%; height: 40px; margin: 0;"
355
- align="left"
356
- width="100%"
357
- height="40"
358
- >
359
- &#160;
102
+ <tbody style="width:100%">
103
+ <tr style="width:100%">
104
+ <td data-id="__react-email-column">
105
+ <p
106
+ style="font-size:14px;line-height:1.4;margin:0px 0px;color:hsl(211, 20%, 53%);font-family:-apple-system, BlinkMacSystemFont, &#x27;Roboto&#x27;, &#x27;Oxygen&#x27;, &#x27;Ubuntu&#x27;, &#x27;Cantarell&#x27;, &#x27;Fira Sans&#x27;, &#x27;Droid Sans&#x27;, &#x27;Helvetica Neue&#x27;, sans-serif;letter-spacing:0.25px"
107
+ ><a
108
+ href="https://bsky.app"
109
+ style="color:hsl(211, 20%, 53%);text-decoration:none;text-decoration-line:underline;font-family:-apple-system, BlinkMacSystemFont, &#x27;Roboto&#x27;, &#x27;Oxygen&#x27;, &#x27;Ubuntu&#x27;, &#x27;Cantarell&#x27;, &#x27;Fira Sans&#x27;, &#x27;Droid Sans&#x27;, &#x27;Helvetica Neue&#x27;, sans-serif;margin:0px 0px;line-height:1.0;font-size:14px;letter-spacing:0.25px"
110
+ target="_blank"
111
+ >Bluesky</a>, the social internet</p>
360
112
  </td>
113
+ <td
114
+ data-id="__react-email-column"
115
+ style="width:24px"
116
+ ><img
117
+ alt="🦋"
118
+ src="https://bsky.social/about/images/email/email_mark_dark.png"
119
+ style="display:block;outline:none;border:none;text-decoration:none;width:24px"
120
+ /></td>
361
121
  </tr>
362
122
  </tbody>
363
123
  </table>
@@ -365,19 +125,29 @@
365
125
  </tr>
366
126
  </tbody>
367
127
  </table>
368
- <!--[if (gte mso 9)|(IE)]>
369
- </td>
370
- </tr>
371
- </tbody>
372
- </table>
373
- <![endif]-->
374
128
  </td>
375
129
  </tr>
376
130
  </tbody>
377
131
  </table>
132
+ <table
133
+ align="center"
134
+ width="100%"
135
+ border="0"
136
+ cellPadding="0"
137
+ cellSpacing="0"
138
+ role="presentation"
139
+ style="height:500px"
140
+ >
141
+ <tbody>
142
+ <tr>
143
+ <td></td>
144
+ </tr>
145
+ </tbody>
146
+ </table>
378
147
  </td>
379
148
  </tr>
380
149
  </tbody>
381
150
  </table>
382
151
  </body>
152
+
383
153
  </html>