@atproto/pds 0.4.58 → 0.4.60

Sign up to get free protection for your applications and to get access to all the features.
Files changed (130) hide show
  1. package/CHANGELOG.md +46 -0
  2. package/dist/actor-store/repo/sql-repo-reader.d.ts.map +1 -1
  3. package/dist/actor-store/repo/sql-repo-reader.js +2 -5
  4. package/dist/actor-store/repo/sql-repo-reader.js.map +1 -1
  5. package/dist/api/app/bsky/actor/getProfile.d.ts.map +1 -1
  6. package/dist/api/app/bsky/actor/getProfile.js +2 -9
  7. package/dist/api/app/bsky/actor/getProfile.js.map +1 -1
  8. package/dist/api/app/bsky/actor/getProfiles.d.ts.map +1 -1
  9. package/dist/api/app/bsky/actor/getProfiles.js +2 -6
  10. package/dist/api/app/bsky/actor/getProfiles.js.map +1 -1
  11. package/dist/api/app/bsky/feed/getActorLikes.d.ts.map +1 -1
  12. package/dist/api/app/bsky/feed/getActorLikes.js +2 -9
  13. package/dist/api/app/bsky/feed/getActorLikes.js.map +1 -1
  14. package/dist/api/app/bsky/feed/getAuthorFeed.d.ts.map +1 -1
  15. package/dist/api/app/bsky/feed/getAuthorFeed.js +2 -9
  16. package/dist/api/app/bsky/feed/getAuthorFeed.js.map +1 -1
  17. package/dist/api/app/bsky/feed/getFeed.d.ts.map +1 -1
  18. package/dist/api/app/bsky/feed/getFeed.js +2 -1
  19. package/dist/api/app/bsky/feed/getFeed.js.map +1 -1
  20. package/dist/api/app/bsky/feed/getPostThread.d.ts.map +1 -1
  21. package/dist/api/app/bsky/feed/getPostThread.js +12 -14
  22. package/dist/api/app/bsky/feed/getPostThread.js.map +1 -1
  23. package/dist/api/app/bsky/feed/getTimeline.d.ts.map +1 -1
  24. package/dist/api/app/bsky/feed/getTimeline.js +2 -6
  25. package/dist/api/app/bsky/feed/getTimeline.js.map +1 -1
  26. package/dist/api/com/atproto/repo/getRecord.js +1 -1
  27. package/dist/api/com/atproto/repo/getRecord.js.map +1 -1
  28. package/dist/api/com/atproto/server/requestPasswordReset.js +1 -1
  29. package/dist/api/com/atproto/server/requestPasswordReset.js.map +1 -1
  30. package/dist/config/config.d.ts +9 -0
  31. package/dist/config/config.d.ts.map +1 -1
  32. package/dist/config/config.js +10 -1
  33. package/dist/config/config.js.map +1 -1
  34. package/dist/config/env.d.ts +6 -1
  35. package/dist/config/env.d.ts.map +1 -1
  36. package/dist/config/env.js +8 -1
  37. package/dist/config/env.js.map +1 -1
  38. package/dist/context.d.ts +6 -2
  39. package/dist/context.d.ts.map +1 -1
  40. package/dist/context.js +55 -11
  41. package/dist/context.js.map +1 -1
  42. package/dist/index.d.ts.map +1 -1
  43. package/dist/index.js +1 -0
  44. package/dist/index.js.map +1 -1
  45. package/dist/lexicon/lexicons.d.ts +77 -0
  46. package/dist/lexicon/lexicons.d.ts.map +1 -1
  47. package/dist/lexicon/lexicons.js +86 -3
  48. package/dist/lexicon/lexicons.js.map +1 -1
  49. package/dist/lexicon/types/app/bsky/actor/defs.d.ts +16 -0
  50. package/dist/lexicon/types/app/bsky/actor/defs.d.ts.map +1 -1
  51. package/dist/lexicon/types/app/bsky/actor/defs.js +9 -1
  52. package/dist/lexicon/types/app/bsky/actor/defs.js.map +1 -1
  53. package/dist/lexicon/types/app/bsky/actor/profile.d.ts +1 -0
  54. package/dist/lexicon/types/app/bsky/actor/profile.d.ts.map +1 -1
  55. package/dist/lexicon/types/app/bsky/actor/profile.js.map +1 -1
  56. package/dist/lexicon/types/app/bsky/feed/defs.d.ts +13 -2
  57. package/dist/lexicon/types/app/bsky/feed/defs.d.ts.map +1 -1
  58. package/dist/lexicon/types/app/bsky/feed/defs.js +21 -1
  59. package/dist/lexicon/types/app/bsky/feed/defs.js.map +1 -1
  60. package/dist/lexicon/types/app/bsky/feed/getAuthorFeed.d.ts +1 -0
  61. package/dist/lexicon/types/app/bsky/feed/getAuthorFeed.d.ts.map +1 -1
  62. package/dist/lexicon/types/app/bsky/graph/getSuggestedFollowsByActor.d.ts +2 -0
  63. package/dist/lexicon/types/app/bsky/graph/getSuggestedFollowsByActor.d.ts.map +1 -1
  64. package/dist/lexicon/types/app/bsky/unspecced/getSuggestionsSkeleton.d.ts +2 -0
  65. package/dist/lexicon/types/app/bsky/unspecced/getSuggestionsSkeleton.d.ts.map +1 -1
  66. package/dist/lexicon/types/tools/ozone/moderation/defs.d.ts +2 -0
  67. package/dist/lexicon/types/tools/ozone/moderation/defs.d.ts.map +1 -1
  68. package/dist/lexicon/types/tools/ozone/moderation/defs.js.map +1 -1
  69. package/dist/lexicon/types/tools/ozone/moderation/queryStatuses.d.ts +3 -0
  70. package/dist/lexicon/types/tools/ozone/moderation/queryStatuses.d.ts.map +1 -1
  71. package/dist/mailer/index.d.ts +1 -1
  72. package/dist/mailer/index.d.ts.map +1 -1
  73. package/dist/mailer/index.js.map +1 -1
  74. package/dist/mailer/templates/confirm-email.js +1 -1
  75. package/dist/mailer/templates/confirm-email.js.map +2 -2
  76. package/dist/mailer/templates/delete-account.js +1 -1
  77. package/dist/mailer/templates/delete-account.js.map +2 -2
  78. package/dist/mailer/templates/plc-operation.js +1 -1
  79. package/dist/mailer/templates/plc-operation.js.map +2 -2
  80. package/dist/mailer/templates/reset-password.js +1 -1
  81. package/dist/mailer/templates/reset-password.js.map +2 -2
  82. package/dist/mailer/templates/update-email.js +1 -1
  83. package/dist/mailer/templates/update-email.js.map +2 -2
  84. package/dist/pipethrough.d.ts +26 -26
  85. package/dist/pipethrough.d.ts.map +1 -1
  86. package/dist/pipethrough.js +328 -228
  87. package/dist/pipethrough.js.map +1 -1
  88. package/dist/read-after-write/util.d.ts +13 -5
  89. package/dist/read-after-write/util.d.ts.map +1 -1
  90. package/dist/read-after-write/util.js +37 -22
  91. package/dist/read-after-write/util.js.map +1 -1
  92. package/package.json +16 -15
  93. package/src/actor-store/repo/sql-repo-reader.ts +3 -6
  94. package/src/api/app/bsky/actor/getProfile.ts +3 -17
  95. package/src/api/app/bsky/actor/getProfiles.ts +3 -15
  96. package/src/api/app/bsky/feed/getActorLikes.ts +3 -19
  97. package/src/api/app/bsky/feed/getAuthorFeed.ts +3 -17
  98. package/src/api/app/bsky/feed/getFeed.ts +3 -1
  99. package/src/api/app/bsky/feed/getPostThread.ts +16 -23
  100. package/src/api/app/bsky/feed/getTimeline.ts +3 -14
  101. package/src/api/com/atproto/repo/getRecord.ts +1 -1
  102. package/src/api/com/atproto/server/requestPasswordReset.ts +1 -1
  103. package/src/config/config.ts +21 -1
  104. package/src/config/env.ts +20 -2
  105. package/src/context.ts +62 -17
  106. package/src/index.ts +1 -0
  107. package/src/lexicon/lexicons.ts +92 -3
  108. package/src/lexicon/types/app/bsky/actor/defs.ts +25 -0
  109. package/src/lexicon/types/app/bsky/actor/profile.ts +1 -0
  110. package/src/lexicon/types/app/bsky/feed/defs.ts +38 -2
  111. package/src/lexicon/types/app/bsky/feed/getAuthorFeed.ts +1 -0
  112. package/src/lexicon/types/app/bsky/graph/getSuggestedFollowsByActor.ts +2 -0
  113. package/src/lexicon/types/app/bsky/unspecced/getSuggestionsSkeleton.ts +2 -0
  114. package/src/lexicon/types/tools/ozone/moderation/defs.ts +2 -0
  115. package/src/lexicon/types/tools/ozone/moderation/queryStatuses.ts +3 -0
  116. package/src/mailer/index.ts +1 -1
  117. package/src/mailer/templates/confirm-email.hbs +106 -336
  118. package/src/mailer/templates/delete-account.hbs +110 -346
  119. package/src/mailer/templates/plc-operation.hbs +107 -338
  120. package/src/mailer/templates/reset-password.d.ts +1 -1
  121. package/src/mailer/templates/reset-password.hbs +108 -344
  122. package/src/mailer/templates/update-email.hbs +107 -337
  123. package/src/pipethrough.ts +489 -233
  124. package/src/read-after-write/util.ts +58 -32
  125. package/tests/account-deletion.test.ts +1 -1
  126. package/tests/account.test.ts +2 -2
  127. package/tests/email-confirmation.test.ts +2 -2
  128. package/tests/plc-operations.test.ts +1 -1
  129. package/tests/proxied/proxy-catchall.test.ts +255 -0
  130. package/tests/proxied/proxy-header.test.ts +31 -1
@@ -1,372 +1,126 @@
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>Delete your account</title>
9
7
  <meta
10
- name="format-detection"
11
- content="telephone=no, date=no, address=no, email=no"
8
+ name="description"
9
+ content="To permanently delete your account, please enter the code provided in the app along with your password."
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 permanently delete your account, please enter the code provided in the app
15
+ along with your password.<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
+ >Delete your account</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
+ ><span style="font-weight:600">To permanently delete your
71
+ account,</span>
72
+ <!-- -->please enter the code below in the app along with
73
+ your password.</p><code
74
+ 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"
75
+ >{{token}}</code>
76
+ <p
77
+ 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;padding-right:32px"
78
+ >👉 If you didn&#x27;t request an account deletion,<!-- -->
79
+ <span style="font-weight:600">you should update your
80
+ password immediately.</span></p>
75
81
  <table
76
82
  align="center"
77
- role="presentation"
83
+ width="100%"
78
84
  border="0"
79
- cellpadding="0"
80
- cellspacing="0"
81
- style="width: 100%; max-width: 600px; margin: 0 auto;"
85
+ cellPadding="0"
86
+ cellSpacing="0"
87
+ role="presentation"
88
+ style="padding-top:24px"
82
89
  >
83
90
  <tbody>
84
91
  <tr>
85
- <td
86
- style="line-height: 24px; font-size: 16px; margin: 0;"
87
- align="left"
88
- >
92
+ <td>
93
+ <hr
94
+ style="width:100%;border:none;border-top:1px solid #eaeaea;margin:0"
95
+ />
89
96
  <table
90
- class="s-10 w-full"
91
- role="presentation"
92
- border="0"
93
- cellpadding="0"
94
- cellspacing="0"
95
- style="width: 100%;"
97
+ align="center"
96
98
  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
99
  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
- >Delete your Bluesky account</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
- <h5
169
- class="text-red-700"
170
- style="color: #b91c1c; padding-top: 0; padding-bottom: 0; font-weight: 500; vertical-align: baseline; font-size: 20px; line-height: 24px; margin: 0;"
171
- align="left"
172
- >This will permanently delete your
173
- Bluesky account. If you did not
174
- issue this request, please update
175
- your password.</h5>
176
- <table
177
- class="s-5 w-full"
178
- role="presentation"
179
- border="0"
180
- cellpadding="0"
181
- cellspacing="0"
182
- style="width: 100%;"
183
- width="100%"
184
- >
185
- <tbody>
186
- <tr>
187
- <td
188
- style="line-height: 20px; font-size: 20px; width: 100%; height: 20px; margin: 0;"
189
- align="left"
190
- width="100%"
191
- height="20"
192
- >
193
- &#160;
194
- </td>
195
- </tr>
196
- </tbody>
197
- </table>
198
- <table
199
- class="hr"
200
- role="presentation"
201
- border="0"
202
- cellpadding="0"
203
- cellspacing="0"
204
- style="width: 100%;"
205
- >
206
- <tbody>
207
- <tr>
208
- <td
209
- 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;"
210
- align="left"
211
- >
212
- </td>
213
- </tr>
214
- </tbody>
215
- </table>
216
- <table
217
- class="s-5 w-full"
218
- role="presentation"
219
- border="0"
220
- cellpadding="0"
221
- cellspacing="0"
222
- style="width: 100%;"
223
- width="100%"
224
- >
225
- <tbody>
226
- <tr>
227
- <td
228
- style="line-height: 20px; font-size: 20px; width: 100%; height: 20px; margin: 0;"
229
- align="left"
230
- width="100%"
231
- height="20"
232
- >
233
- &#160;
234
- </td>
235
- </tr>
236
- </tbody>
237
- </table>
238
- <div class="space-y-3">
239
- <p
240
- class="text-gray-700"
241
- style="line-height: 24px; font-size: 16px; color: #4a5568; width: 100%; margin: 0;"
242
- align="left"
243
- >Deletion code:</p>
244
- </div>
245
- <table
246
- class="s-2 w-full"
247
- role="presentation"
248
- border="0"
249
- cellpadding="0"
250
- cellspacing="0"
251
- style="width: 100%;"
252
- width="100%"
253
- >
254
- <tbody>
255
- <tr>
256
- <td
257
- style="line-height: 8px; font-size: 8px; width: 100%; height: 8px; margin: 0;"
258
- align="left"
259
- width="100%"
260
- height="8"
261
- >
262
- &#160;
263
- </td>
264
- </tr>
265
- </tbody>
266
- </table>
267
- <table
268
- class="card"
269
- role="presentation"
270
- border="0"
271
- cellpadding="0"
272
- cellspacing="0"
273
- style="border-radius: 6px; border-collapse: separate !important; width: 100%; overflow: hidden; border: 1px solid #e2e8f0;"
274
- bgcolor="#ffffff"
275
- >
276
- <tbody>
277
- <tr>
278
- <td
279
- style="line-height: 24px; font-size: 16px; width: 100%; margin: 0;"
280
- align="left"
281
- bgcolor="#ffffff"
282
- >
283
- <table
284
- class="card-body"
285
- role="presentation"
286
- border="0"
287
- cellpadding="0"
288
- cellspacing="0"
289
- style="width: 100%;"
290
- >
291
- <tbody>
292
- <tr>
293
- <td
294
- style="line-height: 24px; font-size: 16px; width: 100%; margin: 0; padding: 20px;"
295
- align="left"
296
- >
297
- <h4
298
- class="fw-900"
299
- style="padding-top: 0; padding-bottom: 0; font-weight: 900 !important; vertical-align: baseline; font-size: 24px; line-height: 28.8px; margin: 0;"
300
- align="left"
301
- >{{token}}</h4>
302
- </td>
303
- </tr>
304
- </tbody>
305
- </table>
306
- </td>
307
- </tr>
308
- </tbody>
309
- </table>
310
- <table
311
- class="s-2 w-full"
312
- role="presentation"
313
- border="0"
314
- cellpadding="0"
315
- cellspacing="0"
316
- style="width: 100%;"
317
- width="100%"
318
- >
319
- <tbody>
320
- <tr>
321
- <td
322
- style="line-height: 8px; font-size: 8px; width: 100%; height: 8px; margin: 0;"
323
- align="left"
324
- width="100%"
325
- height="8"
326
- >
327
- &#160;
328
- </td>
329
- </tr>
330
- </tbody>
331
- </table>
332
- <div class="space-y-3">
333
- <p
334
- class="text-gray-700"
335
- style="line-height: 24px; font-size: 16px; color: #4a5568; width: 100%; margin: 0;"
336
- align="left"
337
- >To
338
- <strong>permanently delete</strong>
339
- your account, please enter the
340
- above "reset code" in the app
341
- along with your password.</p>
342
- </div>
343
- </td>
344
- </tr>
345
- </tbody>
346
- </table>
347
- </td>
348
- </tr>
349
- </tbody>
350
- </table>
351
- <table
352
- class="s-10 w-full"
100
+ cellPadding="0"
101
+ cellSpacing="0"
353
102
  role="presentation"
354
- border="0"
355
- cellpadding="0"
356
- cellspacing="0"
357
- style="width: 100%;"
358
- width="100%"
103
+ style="padding-top:16px;vertical-align:middle"
359
104
  >
360
- <tbody>
361
- <tr>
362
- <td
363
- style="line-height: 40px; font-size: 40px; width: 100%; height: 40px; margin: 0;"
364
- align="left"
365
- width="100%"
366
- height="40"
367
- >
368
- &#160;
105
+ <tbody style="width:100%">
106
+ <tr style="width:100%">
107
+ <td data-id="__react-email-column">
108
+ <p
109
+ 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"
110
+ ><a
111
+ href="https://bsky.app"
112
+ 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"
113
+ target="_blank"
114
+ >Bluesky</a>, the social internet</p>
369
115
  </td>
116
+ <td
117
+ data-id="__react-email-column"
118
+ style="width:24px"
119
+ ><img
120
+ alt="🦋"
121
+ src="https://bsky.social/about/images/email/email_mark_dark.png"
122
+ style="display:block;outline:none;border:none;text-decoration:none;width:24px"
123
+ /></td>
370
124
  </tr>
371
125
  </tbody>
372
126
  </table>
@@ -374,19 +128,29 @@
374
128
  </tr>
375
129
  </tbody>
376
130
  </table>
377
- <!--[if (gte mso 9)|(IE)]>
378
- </td>
379
- </tr>
380
- </tbody>
381
- </table>
382
- <![endif]-->
383
131
  </td>
384
132
  </tr>
385
133
  </tbody>
386
134
  </table>
135
+ <table
136
+ align="center"
137
+ width="100%"
138
+ border="0"
139
+ cellPadding="0"
140
+ cellSpacing="0"
141
+ role="presentation"
142
+ style="height:500px"
143
+ >
144
+ <tbody>
145
+ <tr>
146
+ <td></td>
147
+ </tr>
148
+ </tbody>
149
+ </table>
387
150
  </td>
388
151
  </tr>
389
152
  </tbody>
390
153
  </table>
391
154
  </body>
155
+
392
156
  </html>