@skyapp-labs/blueprint-backend-core 1.3.1 → 1.5.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.
Files changed (282) hide show
  1. package/CHANGELOG.md +158 -3
  2. package/dist/common/guards/permissions.guard.d.ts +4 -2
  3. package/dist/common/guards/permissions.guard.d.ts.map +1 -1
  4. package/dist/common/guards/permissions.guard.js +9 -3
  5. package/dist/common/guards/permissions.guard.js.map +1 -1
  6. package/dist/common/interfaces/request-user.interface.d.ts +11 -1
  7. package/dist/common/interfaces/request-user.interface.d.ts.map +1 -1
  8. package/dist/core.module.d.ts.map +1 -1
  9. package/dist/core.module.js +2 -0
  10. package/dist/core.module.js.map +1 -1
  11. package/dist/database/migrations/{1778562584345-update.d.ts → 1779687443632-full-schema.d.ts} +2 -2
  12. package/dist/database/migrations/1779687443632-full-schema.d.ts.map +1 -0
  13. package/dist/database/migrations/{1778562584345-update.js → 1779687443632-full-schema.js} +37 -7
  14. package/dist/database/migrations/1779687443632-full-schema.js.map +1 -0
  15. package/dist/database/seeds/settings.seed.d.ts +3 -0
  16. package/dist/database/seeds/settings.seed.d.ts.map +1 -1
  17. package/dist/database/seeds/settings.seed.js +16 -0
  18. package/dist/database/seeds/settings.seed.js.map +1 -1
  19. package/dist/database/seeds/templates/emails/change-email-verification.html +243 -0
  20. package/dist/database/seeds/templates/emails/emails/change-email-verification.html +243 -0
  21. package/dist/database/seeds/templates/emails/emails/password-reset.html +242 -0
  22. package/dist/database/seeds/templates/emails/emails/reply-notification.html +242 -0
  23. package/dist/database/seeds/templates/emails/emails/resetpassword.html +245 -0
  24. package/dist/database/seeds/templates/emails/emails/verify-email.html +242 -0
  25. package/dist/database/seeds/templates/emails/password-reset.html +242 -0
  26. package/dist/database/seeds/templates/emails/reply-notification.html +242 -0
  27. package/dist/database/seeds/templates/emails/resetpassword.html +245 -0
  28. package/dist/database/seeds/templates/emails/verify-email.html +242 -0
  29. package/dist/database/seeds/templates/html-template.reader.d.ts +9 -0
  30. package/dist/database/seeds/templates/html-template.reader.d.ts.map +1 -0
  31. package/dist/database/seeds/templates/html-template.reader.js +66 -0
  32. package/dist/database/seeds/templates/html-template.reader.js.map +1 -0
  33. package/dist/database/seeds/user.seed.d.ts +1 -0
  34. package/dist/database/seeds/user.seed.d.ts.map +1 -1
  35. package/dist/database/seeds/user.seed.js +9 -2
  36. package/dist/database/seeds/user.seed.js.map +1 -1
  37. package/dist/database/typeorm.service.d.ts +8 -9
  38. package/dist/database/typeorm.service.d.ts.map +1 -1
  39. package/dist/database/typeorm.service.js +23 -22
  40. package/dist/database/typeorm.service.js.map +1 -1
  41. package/dist/index.d.ts +2 -0
  42. package/dist/index.d.ts.map +1 -1
  43. package/dist/index.js +4 -1
  44. package/dist/index.js.map +1 -1
  45. package/dist/jobs/processors/jobs.processor.d.ts.map +1 -1
  46. package/dist/jobs/processors/jobs.processor.js +6 -1
  47. package/dist/jobs/processors/jobs.processor.js.map +1 -1
  48. package/dist/jobs/queues/jobs.queue.d.ts +1 -1
  49. package/dist/jobs/queues/jobs.queue.d.ts.map +1 -1
  50. package/dist/modules/admin/entities/admin-log.entity.d.ts +4 -1
  51. package/dist/modules/admin/entities/admin-log.entity.d.ts.map +1 -1
  52. package/dist/modules/admin/entities/admin-log.entity.js.map +1 -1
  53. package/dist/modules/admin/services/admin-log.service.d.ts.map +1 -1
  54. package/dist/modules/admin/services/admin-log.service.js +2 -1
  55. package/dist/modules/admin/services/admin-log.service.js.map +1 -1
  56. package/dist/modules/auth/auth-core/strategies/jwt.strategy.d.ts +3 -3
  57. package/dist/modules/auth/auth-core/strategies/jwt.strategy.d.ts.map +1 -1
  58. package/dist/modules/auth/auth-core/strategies/jwt.strategy.js +5 -1
  59. package/dist/modules/auth/auth-core/strategies/jwt.strategy.js.map +1 -1
  60. package/dist/modules/auth/auth.module.d.ts.map +1 -1
  61. package/dist/modules/auth/auth.module.js +11 -1
  62. package/dist/modules/auth/auth.module.js.map +1 -1
  63. package/dist/modules/auth/controllers/account.controller.d.ts +1 -13
  64. package/dist/modules/auth/controllers/account.controller.d.ts.map +1 -1
  65. package/dist/modules/auth/controllers/account.controller.js +2 -80
  66. package/dist/modules/auth/controllers/account.controller.js.map +1 -1
  67. package/dist/modules/auth/controllers/auth.controller.d.ts +2 -15
  68. package/dist/modules/auth/controllers/auth.controller.d.ts.map +1 -1
  69. package/dist/modules/auth/controllers/auth.controller.js +1 -88
  70. package/dist/modules/auth/controllers/auth.controller.js.map +1 -1
  71. package/dist/modules/auth/controllers/forgot-password.controller.d.ts +17 -0
  72. package/dist/modules/auth/controllers/forgot-password.controller.d.ts.map +1 -0
  73. package/dist/modules/auth/controllers/forgot-password.controller.js +95 -0
  74. package/dist/modules/auth/controllers/forgot-password.controller.js.map +1 -0
  75. package/dist/modules/auth/controllers/session.controller.d.ts +19 -0
  76. package/dist/modules/auth/controllers/session.controller.d.ts.map +1 -0
  77. package/dist/modules/auth/controllers/session.controller.js +113 -0
  78. package/dist/modules/auth/controllers/session.controller.js.map +1 -0
  79. package/dist/modules/auth/dto/forgot-password.dto.d.ts +12 -0
  80. package/dist/modules/auth/dto/forgot-password.dto.d.ts.map +1 -0
  81. package/dist/modules/auth/dto/forgot-password.dto.js +45 -0
  82. package/dist/modules/auth/dto/forgot-password.dto.js.map +1 -0
  83. package/dist/modules/auth/dto/login-email.dto.d.ts +5 -0
  84. package/dist/modules/auth/dto/login-email.dto.d.ts.map +1 -0
  85. package/dist/modules/auth/dto/login-email.dto.js +26 -0
  86. package/dist/modules/auth/dto/login-email.dto.js.map +1 -0
  87. package/dist/modules/auth/dto/login-phone.dto.d.ts +6 -0
  88. package/dist/modules/auth/dto/login-phone.dto.d.ts.map +1 -0
  89. package/dist/modules/auth/dto/login-phone.dto.js +33 -0
  90. package/dist/modules/auth/dto/login-phone.dto.js.map +1 -0
  91. package/dist/modules/auth/dto/refresh-token.dto.d.ts +4 -0
  92. package/dist/modules/auth/dto/refresh-token.dto.d.ts.map +1 -0
  93. package/dist/modules/auth/dto/refresh-token.dto.js +21 -0
  94. package/dist/modules/auth/dto/refresh-token.dto.js.map +1 -0
  95. package/dist/modules/auth/dto/register-email.dto.d.ts +7 -0
  96. package/dist/modules/auth/dto/register-email.dto.d.ts.map +1 -0
  97. package/dist/modules/auth/dto/register-email.dto.js +34 -0
  98. package/dist/modules/auth/dto/register-email.dto.js.map +1 -0
  99. package/dist/modules/auth/dto/register-phone.dto.d.ts +8 -0
  100. package/dist/modules/auth/dto/register-phone.dto.d.ts.map +1 -0
  101. package/dist/modules/auth/dto/register-phone.dto.js +42 -0
  102. package/dist/modules/auth/dto/register-phone.dto.js.map +1 -0
  103. package/dist/modules/auth/dto/register.dto.d.ts +6 -17
  104. package/dist/modules/auth/dto/register.dto.d.ts.map +1 -1
  105. package/dist/modules/auth/dto/register.dto.js +16 -103
  106. package/dist/modules/auth/dto/register.dto.js.map +1 -1
  107. package/dist/modules/auth/dto/token.dto.d.ts +3 -1
  108. package/dist/modules/auth/dto/token.dto.d.ts.map +1 -1
  109. package/dist/modules/auth/dto/token.dto.js.map +1 -1
  110. package/dist/modules/auth/providers/interfaces/auth-provider.interface.d.ts +6 -9
  111. package/dist/modules/auth/providers/interfaces/auth-provider.interface.d.ts.map +1 -1
  112. package/dist/modules/auth/providers/keycloak/keycloak-verify-email.strategy.d.ts.map +1 -1
  113. package/dist/modules/auth/providers/keycloak/keycloak-verify-email.strategy.js +1 -0
  114. package/dist/modules/auth/providers/keycloak/keycloak-verify-email.strategy.js.map +1 -1
  115. package/dist/modules/auth/providers/keycloak/keycloak.auth-provider.d.ts +3 -3
  116. package/dist/modules/auth/providers/keycloak/keycloak.auth-provider.d.ts.map +1 -1
  117. package/dist/modules/auth/providers/keycloak/keycloak.auth-provider.js +5 -13
  118. package/dist/modules/auth/providers/keycloak/keycloak.auth-provider.js.map +1 -1
  119. package/dist/modules/auth/providers/native/native.auth-provider.d.ts +3 -3
  120. package/dist/modules/auth/providers/native/native.auth-provider.d.ts.map +1 -1
  121. package/dist/modules/auth/providers/native/native.auth-provider.js +15 -29
  122. package/dist/modules/auth/providers/native/native.auth-provider.js.map +1 -1
  123. package/dist/modules/auth/services/login.service.d.ts.map +1 -1
  124. package/dist/modules/auth/services/login.service.js +9 -4
  125. package/dist/modules/auth/services/login.service.js.map +1 -1
  126. package/dist/modules/auth/services/otp-auth.service.d.ts.map +1 -1
  127. package/dist/modules/auth/services/otp-auth.service.js.map +1 -1
  128. package/dist/modules/auth/services/password.service.js +1 -1
  129. package/dist/modules/auth/services/password.service.js.map +1 -1
  130. package/dist/modules/auth/services/registration.service.d.ts +5 -5
  131. package/dist/modules/auth/services/registration.service.d.ts.map +1 -1
  132. package/dist/modules/auth/services/registration.service.js +106 -100
  133. package/dist/modules/auth/services/registration.service.js.map +1 -1
  134. package/dist/modules/invitations/controllers/invitations.controller.d.ts +20 -0
  135. package/dist/modules/invitations/controllers/invitations.controller.d.ts.map +1 -0
  136. package/dist/modules/invitations/controllers/invitations.controller.js +116 -0
  137. package/dist/modules/invitations/controllers/invitations.controller.js.map +1 -0
  138. package/dist/modules/invitations/dto/invitation.dto.d.ts +25 -0
  139. package/dist/modules/invitations/dto/invitation.dto.d.ts.map +1 -0
  140. package/dist/modules/invitations/dto/invitation.dto.js +139 -0
  141. package/dist/modules/invitations/dto/invitation.dto.js.map +1 -0
  142. package/dist/modules/invitations/entities/invitation.entity.d.ts +41 -0
  143. package/dist/modules/invitations/entities/invitation.entity.d.ts.map +1 -0
  144. package/dist/modules/invitations/entities/invitation.entity.js +136 -0
  145. package/dist/modules/invitations/entities/invitation.entity.js.map +1 -0
  146. package/dist/modules/invitations/index.d.ts +6 -0
  147. package/dist/modules/invitations/index.d.ts.map +1 -0
  148. package/dist/modules/invitations/index.js +22 -0
  149. package/dist/modules/invitations/index.js.map +1 -0
  150. package/dist/modules/invitations/invitations.manifest.d.ts +9 -0
  151. package/dist/modules/invitations/invitations.manifest.d.ts.map +1 -0
  152. package/dist/modules/invitations/invitations.manifest.js +37 -0
  153. package/dist/modules/invitations/invitations.manifest.js.map +1 -0
  154. package/dist/modules/invitations/invitations.module.d.ts +3 -0
  155. package/dist/modules/invitations/invitations.module.d.ts.map +1 -0
  156. package/dist/modules/invitations/invitations.module.js +27 -0
  157. package/dist/modules/invitations/invitations.module.js.map +1 -0
  158. package/dist/modules/invitations/services/invitations.service.d.ts +38 -0
  159. package/dist/modules/invitations/services/invitations.service.d.ts.map +1 -0
  160. package/dist/modules/invitations/services/invitations.service.js +270 -0
  161. package/dist/modules/invitations/services/invitations.service.js.map +1 -0
  162. package/dist/modules/otp/dto/send-otp.dto.d.ts +11 -0
  163. package/dist/modules/otp/dto/send-otp.dto.d.ts.map +1 -0
  164. package/dist/modules/otp/dto/send-otp.dto.js +39 -0
  165. package/dist/modules/otp/dto/send-otp.dto.js.map +1 -0
  166. package/dist/modules/otp/dto/verify-email.dto.d.ts +5 -0
  167. package/dist/modules/otp/dto/verify-email.dto.d.ts.map +1 -0
  168. package/dist/modules/otp/dto/verify-email.dto.js +26 -0
  169. package/dist/modules/otp/dto/verify-email.dto.js.map +1 -0
  170. package/dist/modules/otp/dto/verify-otp.dto.d.ts +5 -0
  171. package/dist/modules/otp/dto/verify-otp.dto.d.ts.map +1 -0
  172. package/dist/modules/otp/dto/verify-otp.dto.js +27 -0
  173. package/dist/modules/otp/dto/verify-otp.dto.js.map +1 -0
  174. package/dist/modules/otp/services/otp.session.store.js +1 -1
  175. package/dist/modules/otp/services/otp.session.store.js.map +1 -1
  176. package/dist/modules/profile/controllers/profile.controller.d.ts +9 -9
  177. package/dist/modules/profile/controllers/profile.controller.d.ts.map +1 -1
  178. package/dist/modules/profile/controllers/profile.controller.js +35 -19
  179. package/dist/modules/profile/controllers/profile.controller.js.map +1 -1
  180. package/dist/modules/profile/dto/address.dto.d.ts +9 -0
  181. package/dist/modules/profile/dto/address.dto.d.ts.map +1 -0
  182. package/dist/modules/profile/dto/{profile.dto.js → address.dto.js} +22 -19
  183. package/dist/modules/profile/dto/address.dto.js.map +1 -0
  184. package/dist/modules/profile/dto/create-user-profile.dto.d.ts +32 -0
  185. package/dist/modules/profile/dto/create-user-profile.dto.d.ts.map +1 -0
  186. package/dist/modules/profile/dto/create-user-profile.dto.js +151 -0
  187. package/dist/modules/profile/dto/create-user-profile.dto.js.map +1 -0
  188. package/dist/modules/profile/dto/user-profile-filter.dto.d.ts +10 -0
  189. package/dist/modules/profile/dto/user-profile-filter.dto.d.ts.map +1 -0
  190. package/dist/modules/profile/dto/user-profile-filter.dto.js +64 -0
  191. package/dist/modules/profile/dto/user-profile-filter.dto.js.map +1 -0
  192. package/dist/modules/profile/dto/user-profile-response.dto.d.ts +30 -0
  193. package/dist/modules/profile/dto/user-profile-response.dto.d.ts.map +1 -0
  194. package/dist/modules/profile/dto/user-profile-response.dto.js +7 -0
  195. package/dist/modules/profile/dto/user-profile-response.dto.js.map +1 -0
  196. package/dist/modules/profile/entities/index.d.ts +2 -0
  197. package/dist/modules/profile/entities/index.d.ts.map +1 -0
  198. package/dist/modules/profile/entities/index.js +18 -0
  199. package/dist/modules/profile/entities/index.js.map +1 -0
  200. package/dist/modules/profile/entities/user-profiles.entity.d.ts +38 -0
  201. package/dist/modules/profile/entities/user-profiles.entity.d.ts.map +1 -0
  202. package/dist/modules/profile/entities/user-profiles.entity.js +212 -0
  203. package/dist/modules/profile/entities/user-profiles.entity.js.map +1 -0
  204. package/dist/modules/profile/index.d.ts +6 -0
  205. package/dist/modules/profile/index.d.ts.map +1 -1
  206. package/dist/modules/profile/index.js +6 -0
  207. package/dist/modules/profile/index.js.map +1 -1
  208. package/dist/modules/profile/profile.manifest.d.ts +7 -0
  209. package/dist/modules/profile/profile.manifest.d.ts.map +1 -0
  210. package/dist/modules/profile/profile.manifest.js +25 -0
  211. package/dist/modules/profile/profile.manifest.js.map +1 -0
  212. package/dist/modules/profile/profile.module.d.ts.map +1 -1
  213. package/dist/modules/profile/profile.module.js +10 -3
  214. package/dist/modules/profile/profile.module.js.map +1 -1
  215. package/dist/modules/profile/services/profile.service.d.ts +17 -9
  216. package/dist/modules/profile/services/profile.service.d.ts.map +1 -1
  217. package/dist/modules/profile/services/profile.service.js +127 -29
  218. package/dist/modules/profile/services/profile.service.js.map +1 -1
  219. package/dist/modules/roles/roles.module.d.ts +3 -2
  220. package/dist/modules/roles/roles.module.d.ts.map +1 -1
  221. package/dist/modules/roles/roles.module.js +6 -2
  222. package/dist/modules/roles/roles.module.js.map +1 -1
  223. package/dist/modules/roles/services/permissions.service.d.ts +3 -1
  224. package/dist/modules/roles/services/permissions.service.d.ts.map +1 -1
  225. package/dist/modules/roles/services/permissions.service.js +9 -3
  226. package/dist/modules/roles/services/permissions.service.js.map +1 -1
  227. package/dist/modules/roles/services/roles.service.d.ts +8 -2
  228. package/dist/modules/roles/services/roles.service.d.ts.map +1 -1
  229. package/dist/modules/roles/services/roles.service.js +41 -7
  230. package/dist/modules/roles/services/roles.service.js.map +1 -1
  231. package/dist/modules/roles/services/user-roles.service.d.ts +12 -2
  232. package/dist/modules/roles/services/user-roles.service.d.ts.map +1 -1
  233. package/dist/modules/roles/services/user-roles.service.js +28 -7
  234. package/dist/modules/roles/services/user-roles.service.js.map +1 -1
  235. package/dist/modules/sessions/services/token.service.d.ts +4 -2
  236. package/dist/modules/sessions/services/token.service.d.ts.map +1 -1
  237. package/dist/modules/sessions/services/token.service.js +27 -23
  238. package/dist/modules/sessions/services/token.service.js.map +1 -1
  239. package/dist/modules/settings/constants/settings.defaults.d.ts +4 -4
  240. package/dist/modules/settings/constants/settings.defaults.js +4 -4
  241. package/dist/modules/settings/constants/settings.defaults.js.map +1 -1
  242. package/dist/modules/settings/constants/settings.keys.d.ts +7 -0
  243. package/dist/modules/settings/constants/settings.keys.d.ts.map +1 -1
  244. package/dist/modules/settings/constants/settings.keys.js +7 -0
  245. package/dist/modules/settings/constants/settings.keys.js.map +1 -1
  246. package/dist/modules/settings/entities/app-setting.entity.d.ts +1 -1
  247. package/dist/modules/settings/entities/app-setting.entity.d.ts.map +1 -1
  248. package/dist/modules/users/controllers/users.controller.d.ts +10 -21
  249. package/dist/modules/users/controllers/users.controller.d.ts.map +1 -1
  250. package/dist/modules/users/controllers/users.controller.js +2 -51
  251. package/dist/modules/users/controllers/users.controller.js.map +1 -1
  252. package/dist/modules/users/dto/user.dto.d.ts +15 -15
  253. package/dist/modules/users/dto/user.dto.d.ts.map +1 -1
  254. package/dist/modules/users/dto/user.dto.js +31 -30
  255. package/dist/modules/users/dto/user.dto.js.map +1 -1
  256. package/dist/modules/users/entities/user.entity.d.ts +16 -9
  257. package/dist/modules/users/entities/user.entity.d.ts.map +1 -1
  258. package/dist/modules/users/entities/user.entity.js +164 -44
  259. package/dist/modules/users/entities/user.entity.js.map +1 -1
  260. package/dist/modules/users/index.d.ts +0 -1
  261. package/dist/modules/users/index.d.ts.map +1 -1
  262. package/dist/modules/users/index.js +0 -1
  263. package/dist/modules/users/index.js.map +1 -1
  264. package/dist/modules/users/services/users.service.d.ts +28 -14
  265. package/dist/modules/users/services/users.service.d.ts.map +1 -1
  266. package/dist/modules/users/services/users.service.js +269 -89
  267. package/dist/modules/users/services/users.service.js.map +1 -1
  268. package/dist/modules/users/users.module.d.ts.map +1 -1
  269. package/dist/modules/users/users.module.js +4 -3
  270. package/dist/modules/users/users.module.js.map +1 -1
  271. package/dist/tsconfig.build.tsbuildinfo +1 -1
  272. package/dist/tsconfig.tsbuildinfo +1 -1
  273. package/package.json +138 -138
  274. package/dist/database/migrations/1778562584345-update.d.ts.map +0 -1
  275. package/dist/database/migrations/1778562584345-update.js.map +0 -1
  276. package/dist/modules/profile/dto/profile.dto.d.ts +0 -11
  277. package/dist/modules/profile/dto/profile.dto.d.ts.map +0 -1
  278. package/dist/modules/profile/dto/profile.dto.js.map +0 -1
  279. package/dist/modules/users/services/invite.service.d.ts +0 -35
  280. package/dist/modules/users/services/invite.service.d.ts.map +0 -1
  281. package/dist/modules/users/services/invite.service.js +0 -236
  282. package/dist/modules/users/services/invite.service.js.map +0 -1
@@ -0,0 +1,243 @@
1
+ <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
2
+ <html xmlns="http://www.w3.org/1999/xhtml">
3
+ <head>
4
+ <meta name="viewport" content="width=device-width, initial-scale=1.0" />
5
+ <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
6
+ <title>Verify your new email address</title>
7
+ <style type="text/css" rel="stylesheet" media="all">
8
+ /* Base ------------------------------ */
9
+ *:not(br):not(tr):not(html) {
10
+ font-family: Arial, 'Helvetica Neue', Helvetica, sans-serif;
11
+ -webkit-box-sizing: border-box;
12
+ box-sizing: border-box;
13
+ }
14
+ body {
15
+ width: 100% !important;
16
+ height: 100%;
17
+ margin: 0;
18
+ line-height: 1.4;
19
+ background-color: #F5F7F9;
20
+ color: #839197;
21
+ -webkit-text-size-adjust: none;
22
+ }
23
+ a {
24
+ color: #414EF9;
25
+ }
26
+
27
+ /* Layout ------------------------------ */
28
+ .email-wrapper {
29
+ width: 100%;
30
+ margin: 0;
31
+ padding: 0;
32
+ background-color: #F5F7F9;
33
+ }
34
+ .email-content {
35
+ width: 100%;
36
+ margin: 0;
37
+ padding: 0;
38
+ }
39
+
40
+ /* Masthead ----------------------- */
41
+ .email-masthead {
42
+ padding: 25px 0;
43
+ text-align: center;
44
+ }
45
+ .email-masthead_logo {
46
+ max-width: 400px;
47
+ border: 0;
48
+ }
49
+ .email-masthead_name {
50
+ font-size: 16px;
51
+ font-weight: bold;
52
+ color: #839197;
53
+ text-decoration: none;
54
+ text-shadow: 0 1px 0 white;
55
+ }
56
+
57
+ /* Body ------------------------------ */
58
+ .email-body {
59
+ width: 100%;
60
+ margin: 0;
61
+ padding: 0;
62
+ border-top: 1px solid #E7EAEC;
63
+ border-bottom: 1px solid #E7EAEC;
64
+ background-color: #FFFFFF;
65
+ }
66
+ .email-body_inner {
67
+ width: 570px;
68
+ margin: 0 auto;
69
+ padding: 0;
70
+ }
71
+ .email-footer {
72
+ width: 570px;
73
+ margin: 0 auto;
74
+ padding: 0;
75
+ text-align: center;
76
+ }
77
+ .email-footer p {
78
+ color: #839197;
79
+ }
80
+ .body-action {
81
+ width: 100%;
82
+ margin: 30px auto;
83
+ padding: 0;
84
+ text-align: center;
85
+ }
86
+ .body-sub {
87
+ margin-top: 25px;
88
+ padding-top: 25px;
89
+ border-top: 1px solid #E7EAEC;
90
+ }
91
+ .content-cell {
92
+ padding: 35px;
93
+ }
94
+ .align-right {
95
+ text-align: right;
96
+ }
97
+
98
+ /* Type ------------------------------ */
99
+ h1 {
100
+ margin-top: 0;
101
+ color: #292E31;
102
+ font-size: 19px;
103
+ font-weight: bold;
104
+ text-align: left;
105
+ }
106
+ h2 {
107
+ margin-top: 0;
108
+ color: #292E31;
109
+ font-size: 16px;
110
+ font-weight: bold;
111
+ text-align: left;
112
+ }
113
+ h3 {
114
+ margin-top: 0;
115
+ color: #292E31;
116
+ font-size: 14px;
117
+ font-weight: bold;
118
+ text-align: left;
119
+ }
120
+ p {
121
+ margin-top: 0;
122
+ color: #839197;
123
+ font-size: 16px;
124
+ line-height: 1.5em;
125
+ text-align: left;
126
+ }
127
+ p.sub {
128
+ font-size: 12px;
129
+ }
130
+ p.center {
131
+ text-align: center;
132
+ }
133
+
134
+ /* Buttons ------------------------------ */
135
+ .button {
136
+ display: inline-block;
137
+ width: 200px;
138
+ background-color: #414EF9;
139
+ border-radius: 3px;
140
+ color: #ffffff;
141
+ font-size: 15px;
142
+ line-height: 45px;
143
+ text-align: center;
144
+ text-decoration: none;
145
+ -webkit-text-size-adjust: none;
146
+ mso-hide: all;
147
+ }
148
+ .button--green {
149
+ background-color: #28DB67;
150
+ }
151
+ .button--red {
152
+ background-color: #FF3665;
153
+ }
154
+ .button--blue {
155
+ background-color: #414EF9;
156
+ }
157
+
158
+ /*Media Queries ------------------------------ */
159
+ @media only screen and (max-width: 600px) {
160
+ .email-body_inner,
161
+ .email-footer {
162
+ width: 100% !important;
163
+ }
164
+ }
165
+ @media only screen and (max-width: 500px) {
166
+ .button {
167
+ width: 100% !important;
168
+ }
169
+ }
170
+ </style>
171
+ </head>
172
+ <body>
173
+ <table class="email-wrapper" width="100%" cellpadding="0" cellspacing="0">
174
+ <tr>
175
+ <td align="center">
176
+ <table class="email-content" width="100%" cellpadding="0" cellspacing="0">
177
+ <!-- Logo -->
178
+ <tr>
179
+ <td class="email-masthead">
180
+ <a class="email-masthead_name">Canvas</a>
181
+ </td>
182
+ </tr>
183
+ <!-- Email Body -->
184
+ <tr>
185
+ <td class="email-body" width="100%">
186
+ <table class="email-body_inner" align="center" width="570" cellpadding="0" cellspacing="0">
187
+ <!-- Body content -->
188
+ <tr>
189
+ <td class="content-cell">
190
+ <h1>Verify your new email address</h1>
191
+ <p>You recently requested that we change your email address. Click the link to verify this is the right address.</p>
192
+ <!-- Action -->
193
+ <table class="body-action" align="center" width="100%" cellpadding="0" cellspacing="0">
194
+ <tr>
195
+ <td align="center">
196
+ <div>
197
+ <!--[if mso]><v:roundrect xmlns:v="urn:schemas-microsoft-com:vml" xmlns:w="urn:schemas-microsoft-com:office:word" href="{{action_url}}" style="height:45px;v-text-anchor:middle;width:200px;" arcsize="7%" stroke="f" fill="t">
198
+ <v:fill type="tile" color="#414EF9" />
199
+ <w:anchorlock/>
200
+ <center style="color:#ffffff;font-family:sans-serif;font-size:15px;">Verify Email</center>
201
+ </v:roundrect><![endif]-->
202
+ <a href="{{action_url}}" class="button button--blue">Verify Email</a>
203
+ </div>
204
+ </td>
205
+ </tr>
206
+ </table>
207
+ <p>If you didn't request a change to your email, please let us know at <a href="mailto:hello@usecanvas.com">hello@usecanvas.com</a>.</p>
208
+ <p>Thanks,<br>The Canvas Team</p>
209
+ <!-- Sub copy -->
210
+ <table class="body-sub">
211
+ <tr>
212
+ <td>
213
+ <p class="sub">If you’re having trouble clicking the button, copy and paste the URL below into your web browser.
214
+ </p>
215
+ <p class="sub"><a href="{{action_url}}">{{action_url}}</a></p>
216
+ </td>
217
+ </tr>
218
+ </table>
219
+ </td>
220
+ </tr>
221
+ </table>
222
+ </td>
223
+ </tr>
224
+ <tr>
225
+ <td>
226
+ <table class="email-footer" align="center" width="570" cellpadding="0" cellspacing="0">
227
+ <tr>
228
+ <td class="content-cell">
229
+ <p class="sub center">
230
+ Canvas Labs, Inc.
231
+ <br>325 9th St, San Francisco, CA 94103
232
+ </p>
233
+ </td>
234
+ </tr>
235
+ </table>
236
+ </td>
237
+ </tr>
238
+ </table>
239
+ </td>
240
+ </tr>
241
+ </table>
242
+ </body>
243
+ </html>
@@ -0,0 +1,243 @@
1
+ <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
2
+ <html xmlns="http://www.w3.org/1999/xhtml">
3
+ <head>
4
+ <meta name="viewport" content="width=device-width, initial-scale=1.0" />
5
+ <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
6
+ <title>Verify your new email address</title>
7
+ <style type="text/css" rel="stylesheet" media="all">
8
+ /* Base ------------------------------ */
9
+ *:not(br):not(tr):not(html) {
10
+ font-family: Arial, 'Helvetica Neue', Helvetica, sans-serif;
11
+ -webkit-box-sizing: border-box;
12
+ box-sizing: border-box;
13
+ }
14
+ body {
15
+ width: 100% !important;
16
+ height: 100%;
17
+ margin: 0;
18
+ line-height: 1.4;
19
+ background-color: #F5F7F9;
20
+ color: #839197;
21
+ -webkit-text-size-adjust: none;
22
+ }
23
+ a {
24
+ color: #414EF9;
25
+ }
26
+
27
+ /* Layout ------------------------------ */
28
+ .email-wrapper {
29
+ width: 100%;
30
+ margin: 0;
31
+ padding: 0;
32
+ background-color: #F5F7F9;
33
+ }
34
+ .email-content {
35
+ width: 100%;
36
+ margin: 0;
37
+ padding: 0;
38
+ }
39
+
40
+ /* Masthead ----------------------- */
41
+ .email-masthead {
42
+ padding: 25px 0;
43
+ text-align: center;
44
+ }
45
+ .email-masthead_logo {
46
+ max-width: 400px;
47
+ border: 0;
48
+ }
49
+ .email-masthead_name {
50
+ font-size: 16px;
51
+ font-weight: bold;
52
+ color: #839197;
53
+ text-decoration: none;
54
+ text-shadow: 0 1px 0 white;
55
+ }
56
+
57
+ /* Body ------------------------------ */
58
+ .email-body {
59
+ width: 100%;
60
+ margin: 0;
61
+ padding: 0;
62
+ border-top: 1px solid #E7EAEC;
63
+ border-bottom: 1px solid #E7EAEC;
64
+ background-color: #FFFFFF;
65
+ }
66
+ .email-body_inner {
67
+ width: 570px;
68
+ margin: 0 auto;
69
+ padding: 0;
70
+ }
71
+ .email-footer {
72
+ width: 570px;
73
+ margin: 0 auto;
74
+ padding: 0;
75
+ text-align: center;
76
+ }
77
+ .email-footer p {
78
+ color: #839197;
79
+ }
80
+ .body-action {
81
+ width: 100%;
82
+ margin: 30px auto;
83
+ padding: 0;
84
+ text-align: center;
85
+ }
86
+ .body-sub {
87
+ margin-top: 25px;
88
+ padding-top: 25px;
89
+ border-top: 1px solid #E7EAEC;
90
+ }
91
+ .content-cell {
92
+ padding: 35px;
93
+ }
94
+ .align-right {
95
+ text-align: right;
96
+ }
97
+
98
+ /* Type ------------------------------ */
99
+ h1 {
100
+ margin-top: 0;
101
+ color: #292E31;
102
+ font-size: 19px;
103
+ font-weight: bold;
104
+ text-align: left;
105
+ }
106
+ h2 {
107
+ margin-top: 0;
108
+ color: #292E31;
109
+ font-size: 16px;
110
+ font-weight: bold;
111
+ text-align: left;
112
+ }
113
+ h3 {
114
+ margin-top: 0;
115
+ color: #292E31;
116
+ font-size: 14px;
117
+ font-weight: bold;
118
+ text-align: left;
119
+ }
120
+ p {
121
+ margin-top: 0;
122
+ color: #839197;
123
+ font-size: 16px;
124
+ line-height: 1.5em;
125
+ text-align: left;
126
+ }
127
+ p.sub {
128
+ font-size: 12px;
129
+ }
130
+ p.center {
131
+ text-align: center;
132
+ }
133
+
134
+ /* Buttons ------------------------------ */
135
+ .button {
136
+ display: inline-block;
137
+ width: 200px;
138
+ background-color: #414EF9;
139
+ border-radius: 3px;
140
+ color: #ffffff;
141
+ font-size: 15px;
142
+ line-height: 45px;
143
+ text-align: center;
144
+ text-decoration: none;
145
+ -webkit-text-size-adjust: none;
146
+ mso-hide: all;
147
+ }
148
+ .button--green {
149
+ background-color: #28DB67;
150
+ }
151
+ .button--red {
152
+ background-color: #FF3665;
153
+ }
154
+ .button--blue {
155
+ background-color: #414EF9;
156
+ }
157
+
158
+ /*Media Queries ------------------------------ */
159
+ @media only screen and (max-width: 600px) {
160
+ .email-body_inner,
161
+ .email-footer {
162
+ width: 100% !important;
163
+ }
164
+ }
165
+ @media only screen and (max-width: 500px) {
166
+ .button {
167
+ width: 100% !important;
168
+ }
169
+ }
170
+ </style>
171
+ </head>
172
+ <body>
173
+ <table class="email-wrapper" width="100%" cellpadding="0" cellspacing="0">
174
+ <tr>
175
+ <td align="center">
176
+ <table class="email-content" width="100%" cellpadding="0" cellspacing="0">
177
+ <!-- Logo -->
178
+ <tr>
179
+ <td class="email-masthead">
180
+ <a class="email-masthead_name">Canvas</a>
181
+ </td>
182
+ </tr>
183
+ <!-- Email Body -->
184
+ <tr>
185
+ <td class="email-body" width="100%">
186
+ <table class="email-body_inner" align="center" width="570" cellpadding="0" cellspacing="0">
187
+ <!-- Body content -->
188
+ <tr>
189
+ <td class="content-cell">
190
+ <h1>Verify your new email address</h1>
191
+ <p>You recently requested that we change your email address. Click the link to verify this is the right address.</p>
192
+ <!-- Action -->
193
+ <table class="body-action" align="center" width="100%" cellpadding="0" cellspacing="0">
194
+ <tr>
195
+ <td align="center">
196
+ <div>
197
+ <!--[if mso]><v:roundrect xmlns:v="urn:schemas-microsoft-com:vml" xmlns:w="urn:schemas-microsoft-com:office:word" href="{{action_url}}" style="height:45px;v-text-anchor:middle;width:200px;" arcsize="7%" stroke="f" fill="t">
198
+ <v:fill type="tile" color="#414EF9" />
199
+ <w:anchorlock/>
200
+ <center style="color:#ffffff;font-family:sans-serif;font-size:15px;">Verify Email</center>
201
+ </v:roundrect><![endif]-->
202
+ <a href="{{action_url}}" class="button button--blue">Verify Email</a>
203
+ </div>
204
+ </td>
205
+ </tr>
206
+ </table>
207
+ <p>If you didn't request a change to your email, please let us know at <a href="mailto:hello@usecanvas.com">hello@usecanvas.com</a>.</p>
208
+ <p>Thanks,<br>The Canvas Team</p>
209
+ <!-- Sub copy -->
210
+ <table class="body-sub">
211
+ <tr>
212
+ <td>
213
+ <p class="sub">If you’re having trouble clicking the button, copy and paste the URL below into your web browser.
214
+ </p>
215
+ <p class="sub"><a href="{{action_url}}">{{action_url}}</a></p>
216
+ </td>
217
+ </tr>
218
+ </table>
219
+ </td>
220
+ </tr>
221
+ </table>
222
+ </td>
223
+ </tr>
224
+ <tr>
225
+ <td>
226
+ <table class="email-footer" align="center" width="570" cellpadding="0" cellspacing="0">
227
+ <tr>
228
+ <td class="content-cell">
229
+ <p class="sub center">
230
+ Canvas Labs, Inc.
231
+ <br>325 9th St, San Francisco, CA 94103
232
+ </p>
233
+ </td>
234
+ </tr>
235
+ </table>
236
+ </td>
237
+ </tr>
238
+ </table>
239
+ </td>
240
+ </tr>
241
+ </table>
242
+ </body>
243
+ </html>