@learncard/email-templates 1.0.6 → 1.2.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.
- package/dist/index.d.ts +1 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js.map +1 -1
- package/dist/previews/credential-updated-scenarios.d.ts +9 -0
- package/dist/previews/credential-updated-scenarios.d.ts.map +1 -0
- package/dist/previews/credential-updated-scenarios.js +7 -0
- package/dist/previews/credential-updated-scenarios.js.map +1 -0
- package/dist/previews/recovery-key-scenarios.d.ts.map +1 -1
- package/dist/previews/recovery-key-scenarios.js +1 -1
- package/dist/previews/recovery-key-scenarios.js.map +1 -1
- package/dist/render.d.ts +16 -0
- package/dist/render.d.ts.map +1 -1
- package/dist/render.js +16 -1
- package/dist/render.js.map +1 -1
- package/dist/templates/account-sign-in-changed.d.ts +11 -0
- package/dist/templates/account-sign-in-changed.d.ts.map +1 -0
- package/dist/templates/account-sign-in-changed.js +70 -0
- package/dist/templates/account-sign-in-changed.js.map +1 -0
- package/dist/templates/credential-updated.d.ts +33 -0
- package/dist/templates/credential-updated.d.ts.map +1 -0
- package/dist/templates/credential-updated.js +104 -0
- package/dist/templates/credential-updated.js.map +1 -0
- package/dist/templates/index.d.ts +7 -3
- package/dist/templates/index.d.ts.map +1 -1
- package/dist/templates/index.js +5 -3
- package/dist/templates/index.js.map +1 -1
- package/dist/templates/recovery-key.d.ts +1 -0
- package/dist/templates/recovery-key.d.ts.map +1 -1
- package/dist/templates/recovery-key.js +11 -3
- package/dist/templates/recovery-key.js.map +1 -1
- package/package.json +2 -2
- package/src/__tests__/i18n.test.ts +9 -2
- package/src/__tests__/render.test.ts +151 -26
- package/src/index.ts +2 -0
- package/src/previews/credential-updated-scenarios.tsx +61 -0
- package/src/previews/recovery-key-scenarios.tsx +3 -0
- package/src/render.ts +39 -0
- package/src/templates/account-sign-in-changed.tsx +113 -0
- package/src/templates/credential-updated.tsx +309 -0
- package/src/templates/index.ts +17 -3
- package/src/templates/recovery-key.tsx +26 -1
package/dist/index.d.ts
CHANGED
|
@@ -18,7 +18,7 @@ export { resolveCatalogLocale } from './i18n';
|
|
|
18
18
|
export type { NotificationLocale } from './i18n';
|
|
19
19
|
export { renderEmail } from './render';
|
|
20
20
|
export type { RenderedEmail, TemplateId, TemplateDataMap } from './render';
|
|
21
|
-
export type { VerificationCodeData, EmailVerificationData, InboxClaimData, GuardianApprovalData, AccountApprovedData, RecoveryKeyData, EndorsementRequestData, CredentialAwaitingGuardianData, GuardianApprovedClaimData, GuardianCredentialApprovalData, GuardianEmailOtpData, GuardianRejectedCredentialData, } from './render';
|
|
21
|
+
export type { VerificationCodeData, EmailVerificationData, InboxClaimData, GuardianApprovalData, AccountApprovedData, RecoveryKeyData, EndorsementRequestData, CredentialAwaitingGuardianData, GuardianApprovedClaimData, GuardianCredentialApprovalData, GuardianEmailOtpData, GuardianRejectedCredentialData, CredentialUpdatedData, AccountSignInChangedData, } from './render';
|
|
22
22
|
export { renderSms } from './sms';
|
|
23
23
|
export type { SmsTemplateId, SmsTemplateDataMap, SmsInboxClaimData, SmsVerificationData, } from './sms';
|
|
24
24
|
export { resolveTenantFromRequest, registerOriginMapping, registerTenantBranding, } from './tenant-registry';
|
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;GAaG;AAGH,OAAO,EAAE,eAAe,EAAE,gBAAgB,EAAE,MAAM,YAAY,CAAC;AAC/D,YAAY,EAAE,cAAc,EAAE,MAAM,YAAY,CAAC;AAGjD,OAAO,EAAE,oBAAoB,EAAE,MAAM,QAAQ,CAAC;AAC9C,YAAY,EAAE,kBAAkB,EAAE,MAAM,QAAQ,CAAC;AAGjD,OAAO,EAAE,WAAW,EAAE,MAAM,UAAU,CAAC;AACvC,YAAY,EAAE,aAAa,EAAE,UAAU,EAAE,eAAe,EAAE,MAAM,UAAU,CAAC;AAC3E,YAAY,EACR,oBAAoB,EACpB,qBAAqB,EACrB,cAAc,EACd,oBAAoB,EACpB,mBAAmB,EACnB,eAAe,EACf,sBAAsB,EACtB,8BAA8B,EAC9B,yBAAyB,EACzB,8BAA8B,EAC9B,oBAAoB,EACpB,8BAA8B,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;GAaG;AAGH,OAAO,EAAE,eAAe,EAAE,gBAAgB,EAAE,MAAM,YAAY,CAAC;AAC/D,YAAY,EAAE,cAAc,EAAE,MAAM,YAAY,CAAC;AAGjD,OAAO,EAAE,oBAAoB,EAAE,MAAM,QAAQ,CAAC;AAC9C,YAAY,EAAE,kBAAkB,EAAE,MAAM,QAAQ,CAAC;AAGjD,OAAO,EAAE,WAAW,EAAE,MAAM,UAAU,CAAC;AACvC,YAAY,EAAE,aAAa,EAAE,UAAU,EAAE,eAAe,EAAE,MAAM,UAAU,CAAC;AAC3E,YAAY,EACR,oBAAoB,EACpB,qBAAqB,EACrB,cAAc,EACd,oBAAoB,EACpB,mBAAmB,EACnB,eAAe,EACf,sBAAsB,EACtB,8BAA8B,EAC9B,yBAAyB,EACzB,8BAA8B,EAC9B,oBAAoB,EACpB,8BAA8B,EAC9B,qBAAqB,EACrB,wBAAwB,GAC3B,MAAM,UAAU,CAAC;AAGlB,OAAO,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AAClC,YAAY,EACR,aAAa,EACb,kBAAkB,EAClB,iBAAiB,EACjB,mBAAmB,GACtB,MAAM,OAAO,CAAC;AAGf,OAAO,EACH,wBAAwB,EACxB,qBAAqB,EACrB,sBAAsB,GACzB,MAAM,mBAAmB,CAAC;AAC3B,YAAY,EAAE,cAAc,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAC"}
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;GAaG;AAEH,WAAW;AACX,OAAO,EAAE,eAAe,EAAE,gBAAgB,EAAE,MAAM,YAAY,CAAC;AAG/D,iBAAiB;AACjB,OAAO,EAAE,oBAAoB,EAAE,MAAM,QAAQ,CAAC;AAG9C,kBAAkB;AAClB,OAAO,EAAE,WAAW,EAAE,MAAM,UAAU,CAAC;
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;GAaG;AAEH,WAAW;AACX,OAAO,EAAE,eAAe,EAAE,gBAAgB,EAAE,MAAM,YAAY,CAAC;AAG/D,iBAAiB;AACjB,OAAO,EAAE,oBAAoB,EAAE,MAAM,QAAQ,CAAC;AAG9C,kBAAkB;AAClB,OAAO,EAAE,WAAW,EAAE,MAAM,UAAU,CAAC;AAmBvC,gBAAgB;AAChB,OAAO,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AAQlC,gCAAgC;AAChC,OAAO,EACH,wBAAwB,EACxB,qBAAqB,EACrB,sBAAsB,GACzB,MAAM,mBAAmB,CAAC;AAG3B,yEAAyE;AACzE,uEAAuE;AACvE,8EAA8E;AAC9E,+DAA+D;AAC/D,yDAAyD"}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* credential-updated — minimal-context update notice scenarios.
|
|
3
|
+
*
|
|
4
|
+
* Shows the title/no-title fallback and locale variants so reviewers can verify
|
|
5
|
+
* the email never renders grades, subject details, or issuer summaries.
|
|
6
|
+
*/
|
|
7
|
+
import * as React from 'react';
|
|
8
|
+
export default function CredentialUpdatedScenarios(): React.JSX.Element;
|
|
9
|
+
//# sourceMappingURL=credential-updated-scenarios.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"credential-updated-scenarios.d.ts","sourceRoot":"","sources":["../../src/previews/credential-updated-scenarios.tsx"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAK/B,MAAM,CAAC,OAAO,UAAU,0BAA0B,sBAgDjD"}
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import { jsx as _jsx, Fragment as _Fragment, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
|
+
import { CredentialUpdated } from '../templates/credential-updated';
|
|
3
|
+
import { LEARNCARD_BRANDING, VETPASS_BRANDING, ScenarioDivider } from './_fixtures';
|
|
4
|
+
export default function CredentialUpdatedScenarios() {
|
|
5
|
+
return (_jsxs(_Fragment, { children: [_jsx(ScenarioDivider, { label: "English \u2014 with credential title" }), _jsx(CredentialUpdated, { branding: LEARNCARD_BRANDING, issuer: { name: 'Inbox Demo School' }, credential: { name: 'Introduction to Biology' } }), _jsx(ScenarioDivider, { label: "English \u2014 title unavailable (generic fallback)" }), _jsx(CredentialUpdated, { branding: LEARNCARD_BRANDING, issuer: { name: 'Inbox Demo School' } }), _jsx(ScenarioDivider, { label: "Spanish" }), _jsx(CredentialUpdated, { branding: LEARNCARD_BRANDING, issuer: { name: 'Escuela Demo' }, credential: { name: 'Introducción a la Biología' }, locale: "es" }), _jsx(ScenarioDivider, { label: "French" }), _jsx(CredentialUpdated, { branding: LEARNCARD_BRANDING, issuer: { name: 'École Démo' }, credential: { name: 'Introduction à la biologie' }, locale: "fr" }), _jsx(ScenarioDivider, { label: "Arabic (RTL)" }), _jsx(CredentialUpdated, { branding: LEARNCARD_BRANDING, issuer: { name: 'مدرسة تجريبية' }, credential: { name: 'مقدمة في علم الأحياء' }, locale: "ar" }), _jsx(ScenarioDivider, { label: "VetPass branding" }), _jsx(CredentialUpdated, { branding: VETPASS_BRANDING, issuer: { name: 'VetPass Academy' }, credential: { name: 'Veterinary Ethics' } })] }));
|
|
6
|
+
}
|
|
7
|
+
//# sourceMappingURL=credential-updated-scenarios.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"credential-updated-scenarios.js","sourceRoot":"","sources":["../../src/previews/credential-updated-scenarios.tsx"],"names":[],"mappings":";AASA,OAAO,EAAE,iBAAiB,EAAE,MAAM,iCAAiC,CAAC;AACpE,OAAO,EAAE,kBAAkB,EAAE,gBAAgB,EAAE,eAAe,EAAE,MAAM,aAAa,CAAC;AAEpF,MAAM,CAAC,OAAO,UAAU,0BAA0B;IAC9C,OAAO,CACH,8BACI,KAAC,eAAe,IAAC,KAAK,EAAC,sCAAiC,GAAG,EAC3D,KAAC,iBAAiB,IACd,QAAQ,EAAE,kBAAkB,EAC5B,MAAM,EAAE,EAAE,IAAI,EAAE,mBAAmB,EAAE,EACrC,UAAU,EAAE,EAAE,IAAI,EAAE,yBAAyB,EAAE,GACjD,EAEF,KAAC,eAAe,IAAC,KAAK,EAAC,qDAAgD,GAAG,EAC1E,KAAC,iBAAiB,IACd,QAAQ,EAAE,kBAAkB,EAC5B,MAAM,EAAE,EAAE,IAAI,EAAE,mBAAmB,EAAE,GACvC,EAEF,KAAC,eAAe,IAAC,KAAK,EAAC,SAAS,GAAG,EACnC,KAAC,iBAAiB,IACd,QAAQ,EAAE,kBAAkB,EAC5B,MAAM,EAAE,EAAE,IAAI,EAAE,cAAc,EAAE,EAChC,UAAU,EAAE,EAAE,IAAI,EAAE,4BAA4B,EAAE,EAClD,MAAM,EAAC,IAAI,GACb,EAEF,KAAC,eAAe,IAAC,KAAK,EAAC,QAAQ,GAAG,EAClC,KAAC,iBAAiB,IACd,QAAQ,EAAE,kBAAkB,EAC5B,MAAM,EAAE,EAAE,IAAI,EAAE,YAAY,EAAE,EAC9B,UAAU,EAAE,EAAE,IAAI,EAAE,4BAA4B,EAAE,EAClD,MAAM,EAAC,IAAI,GACb,EAEF,KAAC,eAAe,IAAC,KAAK,EAAC,cAAc,GAAG,EACxC,KAAC,iBAAiB,IACd,QAAQ,EAAE,kBAAkB,EAC5B,MAAM,EAAE,EAAE,IAAI,EAAE,eAAe,EAAE,EACjC,UAAU,EAAE,EAAE,IAAI,EAAE,sBAAsB,EAAE,EAC5C,MAAM,EAAC,IAAI,GACb,EAEF,KAAC,eAAe,IAAC,KAAK,EAAC,kBAAkB,GAAG,EAC5C,KAAC,iBAAiB,IACd,QAAQ,EAAE,gBAAgB,EAC1B,MAAM,EAAE,EAAE,IAAI,EAAE,iBAAiB,EAAE,EACnC,UAAU,EAAE,EAAE,IAAI,EAAE,mBAAmB,EAAE,GAC3C,IACH,CACN,CAAC;AACN,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"recovery-key-scenarios.d.ts","sourceRoot":"","sources":["../../src/previews/recovery-key-scenarios.tsx"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAK/B,MAAM,CAAC,OAAO,UAAU,oBAAoB,
|
|
1
|
+
{"version":3,"file":"recovery-key-scenarios.d.ts","sourceRoot":"","sources":["../../src/previews/recovery-key-scenarios.tsx"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAK/B,MAAM,CAAC,OAAO,UAAU,oBAAoB,sBAyB3C"}
|
|
@@ -2,6 +2,6 @@ import { jsx as _jsx, Fragment as _Fragment, jsxs as _jsxs } from "react/jsx-run
|
|
|
2
2
|
import { RecoveryKey } from '../templates/recovery-key';
|
|
3
3
|
import { LEARNCARD_BRANDING, VETPASS_BRANDING, ScenarioDivider } from './_fixtures';
|
|
4
4
|
export default function RecoveryKeyScenarios() {
|
|
5
|
-
return (_jsxs(_Fragment, { children: [_jsx(ScenarioDivider, { label: "Default \u2014 LearnCard branding" }), _jsx(RecoveryKey, { branding: LEARNCARD_BRANDING, recoveryKey: "mango-delta-fox-echo-bravo-seven-lima-niner" }), _jsx(ScenarioDivider, { label: "Long recovery key (wrapping test)" }), _jsx(RecoveryKey, { branding: LEARNCARD_BRANDING, recoveryKey: "alpha-bravo-charlie-delta-echo-foxtrot-golf-hotel-india-juliet-kilo-lima" }), _jsx(ScenarioDivider, { label: "VetPass tenant branding" }), _jsx(RecoveryKey, { branding: VETPASS_BRANDING, recoveryKey: "sierra-tango-uniform-victor-whiskey-xray" })] }));
|
|
5
|
+
return (_jsxs(_Fragment, { children: [_jsx(ScenarioDivider, { label: "Default \u2014 LearnCard branding" }), _jsx(RecoveryKey, { branding: LEARNCARD_BRANDING, recoveryKey: "mango-delta-fox-echo-bravo-seven-lima-niner", confirmationCode: "123456" }), _jsx(ScenarioDivider, { label: "Long recovery key (wrapping test)" }), _jsx(RecoveryKey, { branding: LEARNCARD_BRANDING, recoveryKey: "alpha-bravo-charlie-delta-echo-foxtrot-golf-hotel-india-juliet-kilo-lima", confirmationCode: "654321" }), _jsx(ScenarioDivider, { label: "VetPass tenant branding" }), _jsx(RecoveryKey, { branding: VETPASS_BRANDING, recoveryKey: "sierra-tango-uniform-victor-whiskey-xray", confirmationCode: "987654" })] }));
|
|
6
6
|
}
|
|
7
7
|
//# sourceMappingURL=recovery-key-scenarios.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"recovery-key-scenarios.js","sourceRoot":"","sources":["../../src/previews/recovery-key-scenarios.tsx"],"names":[],"mappings":";AAMA,OAAO,EAAE,WAAW,EAAE,MAAM,2BAA2B,CAAC;AACxD,OAAO,EAAE,kBAAkB,EAAE,gBAAgB,EAAE,eAAe,EAAE,MAAM,aAAa,CAAC;AAEpF,MAAM,CAAC,OAAO,UAAU,oBAAoB;IACxC,OAAO,CACH,8BACI,KAAC,eAAe,IAAC,KAAK,EAAC,mCAA8B,GAAG,EACxD,KAAC,WAAW,IACR,QAAQ,EAAE,kBAAkB,EAC5B,WAAW,EAAC,6CAA6C,
|
|
1
|
+
{"version":3,"file":"recovery-key-scenarios.js","sourceRoot":"","sources":["../../src/previews/recovery-key-scenarios.tsx"],"names":[],"mappings":";AAMA,OAAO,EAAE,WAAW,EAAE,MAAM,2BAA2B,CAAC;AACxD,OAAO,EAAE,kBAAkB,EAAE,gBAAgB,EAAE,eAAe,EAAE,MAAM,aAAa,CAAC;AAEpF,MAAM,CAAC,OAAO,UAAU,oBAAoB;IACxC,OAAO,CACH,8BACI,KAAC,eAAe,IAAC,KAAK,EAAC,mCAA8B,GAAG,EACxD,KAAC,WAAW,IACR,QAAQ,EAAE,kBAAkB,EAC5B,WAAW,EAAC,6CAA6C,EACzD,gBAAgB,EAAC,QAAQ,GAC3B,EAEF,KAAC,eAAe,IAAC,KAAK,EAAC,mCAAmC,GAAG,EAC7D,KAAC,WAAW,IACR,QAAQ,EAAE,kBAAkB,EAC5B,WAAW,EAAC,0EAA0E,EACtF,gBAAgB,EAAC,QAAQ,GAC3B,EAEF,KAAC,eAAe,IAAC,KAAK,EAAC,yBAAyB,GAAG,EACnD,KAAC,WAAW,IACR,QAAQ,EAAE,gBAAgB,EAC1B,WAAW,EAAC,0CAA0C,EACtD,gBAAgB,EAAC,QAAQ,GAC3B,IACH,CACN,CAAC;AACN,CAAC"}
|
package/dist/render.d.ts
CHANGED
|
@@ -61,6 +61,10 @@ export interface TemplateDataMap {
|
|
|
61
61
|
'guardian-email-otp': GuardianEmailOtpData;
|
|
62
62
|
/** Sent to student: guardian rejected credential */
|
|
63
63
|
'guardian-rejected-credential': GuardianRejectedCredentialData;
|
|
64
|
+
/** brain-service: managed credential refresh update notice (LC-2198) */
|
|
65
|
+
'credential-updated': CredentialUpdatedData;
|
|
66
|
+
/** lca-api: lost-login identity rebind security notification */
|
|
67
|
+
'account-sign-in-changed': AccountSignInChangedData;
|
|
64
68
|
}
|
|
65
69
|
export type TemplateId = keyof TemplateDataMap;
|
|
66
70
|
export interface VerificationCodeData {
|
|
@@ -107,6 +111,7 @@ export interface AccountApprovedData {
|
|
|
107
111
|
}
|
|
108
112
|
export interface RecoveryKeyData {
|
|
109
113
|
recoveryKey: string;
|
|
114
|
+
confirmationCode: string;
|
|
110
115
|
}
|
|
111
116
|
export interface EndorsementRequestData {
|
|
112
117
|
shareLink: string;
|
|
@@ -173,6 +178,17 @@ export interface GuardianRejectedCredentialData {
|
|
|
173
178
|
email?: string;
|
|
174
179
|
};
|
|
175
180
|
}
|
|
181
|
+
export interface CredentialUpdatedData {
|
|
182
|
+
issuer?: {
|
|
183
|
+
name?: string;
|
|
184
|
+
logoUrl?: string;
|
|
185
|
+
};
|
|
186
|
+
/** Bounded credential display title. Omitted when unavailable. */
|
|
187
|
+
credential?: {
|
|
188
|
+
name?: string;
|
|
189
|
+
};
|
|
190
|
+
}
|
|
191
|
+
export type AccountSignInChangedData = Record<string, never>;
|
|
176
192
|
/**
|
|
177
193
|
* Render a fully branded email for the given template.
|
|
178
194
|
*
|
package/dist/render.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"render.d.ts","sourceRoot":"","sources":["../src/render.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAKH,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,YAAY,CAAC;
|
|
1
|
+
{"version":3,"file":"render.d.ts","sourceRoot":"","sources":["../src/render.ts"],"names":[],"mappings":"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"}
|
package/dist/render.js
CHANGED
|
@@ -10,7 +10,7 @@
|
|
|
10
10
|
import { render } from '@react-email/render';
|
|
11
11
|
import * as React from 'react';
|
|
12
12
|
import { resolveBranding } from './branding';
|
|
13
|
-
import { VerificationCode, getVerificationCodeSubject, InboxClaim, getInboxClaimSubject, GuardianApproval, getGuardianApprovalSubject, AccountApproved, getAccountApprovedSubject, RecoveryKey, getRecoveryKeySubject, EndorsementRequest, getEndorsementRequestSubject, CredentialAwaitingGuardian, getCredentialAwaitingGuardianSubject, GuardianApprovedClaim, getGuardianApprovedClaimSubject, GuardianCredentialApproval, getGuardianCredentialApprovalSubject, GuardianEmailOtp, getGuardianEmailOtpSubject, GuardianRejectedCredential, getGuardianRejectedCredentialSubject, EmailVerification, getEmailVerificationSubject, } from './templates';
|
|
13
|
+
import { VerificationCode, getVerificationCodeSubject, InboxClaim, getInboxClaimSubject, GuardianApproval, getGuardianApprovalSubject, AccountApproved, getAccountApprovedSubject, RecoveryKey, getRecoveryKeySubject, EndorsementRequest, getEndorsementRequestSubject, CredentialAwaitingGuardian, getCredentialAwaitingGuardianSubject, GuardianApprovedClaim, getGuardianApprovedClaimSubject, GuardianCredentialApproval, getGuardianCredentialApprovalSubject, GuardianEmailOtp, getGuardianEmailOtpSubject, GuardianRejectedCredential, getGuardianRejectedCredentialSubject, EmailVerification, getEmailVerificationSubject, CredentialUpdated, getCredentialUpdatedSubject, AccountSignInChanged, getAccountSignInChangedSubject, } from './templates';
|
|
14
14
|
// ---------------------------------------------------------------------------
|
|
15
15
|
// renderEmail()
|
|
16
16
|
// ---------------------------------------------------------------------------
|
|
@@ -147,6 +147,21 @@ function buildElement(templateId, branding, data, locale) {
|
|
|
147
147
|
subject: getGuardianRejectedCredentialSubject(branding, locale),
|
|
148
148
|
};
|
|
149
149
|
}
|
|
150
|
+
case 'credential-updated': {
|
|
151
|
+
const d = data;
|
|
152
|
+
const props = { branding, ...d, locale };
|
|
153
|
+
return {
|
|
154
|
+
element: React.createElement(CredentialUpdated, props),
|
|
155
|
+
subject: getCredentialUpdatedSubject(branding, locale),
|
|
156
|
+
};
|
|
157
|
+
}
|
|
158
|
+
case 'account-sign-in-changed': {
|
|
159
|
+
const props = { branding, locale };
|
|
160
|
+
return {
|
|
161
|
+
element: React.createElement(AccountSignInChanged, props),
|
|
162
|
+
subject: getAccountSignInChangedSubject(branding, locale),
|
|
163
|
+
};
|
|
164
|
+
}
|
|
150
165
|
default: {
|
|
151
166
|
const _exhaustive = templateId;
|
|
152
167
|
throw new Error(`Unknown template: ${_exhaustive}`);
|
package/dist/render.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"render.js","sourceRoot":"","sources":["../src/render.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,OAAO,EAAE,MAAM,EAAE,MAAM,qBAAqB,CAAC;AAC7C,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAG/B,OAAO,EAAE,eAAe,EAAE,MAAM,YAAY,CAAC;AAE7C,OAAO,EACH,gBAAgB,EAChB,0BAA0B,EAC1B,UAAU,EACV,oBAAoB,EACpB,gBAAgB,EAChB,0BAA0B,EAC1B,eAAe,EACf,yBAAyB,EACzB,WAAW,EACX,qBAAqB,EACrB,kBAAkB,EAClB,4BAA4B,EAC5B,0BAA0B,EAC1B,oCAAoC,EACpC,qBAAqB,EACrB,+BAA+B,EAC/B,0BAA0B,EAC1B,oCAAoC,EACpC,gBAAgB,EAChB,0BAA0B,EAC1B,0BAA0B,EAC1B,oCAAoC,EACpC,iBAAiB,EACjB,2BAA2B,
|
|
1
|
+
{"version":3,"file":"render.js","sourceRoot":"","sources":["../src/render.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import * as React from 'react';
|
|
2
|
+
import type { TenantBranding } from '../branding';
|
|
3
|
+
export interface AccountSignInChangedProps {
|
|
4
|
+
branding: TenantBranding;
|
|
5
|
+
locale?: string;
|
|
6
|
+
}
|
|
7
|
+
export declare const AccountSignInChanged: React.FC<AccountSignInChangedProps>;
|
|
8
|
+
/** Return the localized subject for an account sign-in change notification. */
|
|
9
|
+
export declare const getAccountSignInChangedSubject: (_branding: TenantBranding, locale?: string) => string;
|
|
10
|
+
export default function Preview(): React.ReactElement;
|
|
11
|
+
//# sourceMappingURL=account-sign-in-changed.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"account-sign-in-changed.d.ts","sourceRoot":"","sources":["../../src/templates/account-sign-in-changed.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAE/B,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC;AAMlD,MAAM,WAAW,yBAAyB;IACtC,QAAQ,EAAE,cAAc,CAAC;IACzB,MAAM,CAAC,EAAE,MAAM,CAAC;CACnB;AAgDD,eAAO,MAAM,oBAAoB,EAAE,KAAK,CAAC,EAAE,CAAC,yBAAyB,CAmBpE,CAAC;AAEF,+EAA+E;AAC/E,eAAO,MAAM,8BAA8B,GACvC,WAAW,cAAc,EACzB,SAAS,MAAM,KAChB,MAAuD,CAAC;AAyB3D,MAAM,CAAC,OAAO,UAAU,OAAO,IAAI,KAAK,CAAC,YAAY,CAEpD"}
|
|
@@ -0,0 +1,70 @@
|
|
|
1
|
+
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
|
+
import { Text } from '@react-email/components';
|
|
3
|
+
import { DEFAULT_BRANDING } from '../branding';
|
|
4
|
+
import { Layout } from '../components/Layout';
|
|
5
|
+
import { interpolate, resolveCatalogLocale, SHARED } from '../i18n';
|
|
6
|
+
const STRINGS = {
|
|
7
|
+
en: {
|
|
8
|
+
preview: 'Your account sign-in was changed',
|
|
9
|
+
heading: 'Your Sign-In Was Changed',
|
|
10
|
+
body: 'Your {brandName} account was restored and connected to a new sign-in.',
|
|
11
|
+
warning: 'If this was not you, contact support immediately.',
|
|
12
|
+
subject: 'Your account sign-in was changed',
|
|
13
|
+
sincerely: 'Sincerely,',
|
|
14
|
+
},
|
|
15
|
+
es: {
|
|
16
|
+
preview: 'Se cambió el inicio de sesión de tu cuenta',
|
|
17
|
+
heading: 'Se cambió tu inicio de sesión',
|
|
18
|
+
body: 'Tu cuenta de {brandName} se restauró y se conectó a un nuevo inicio de sesión.',
|
|
19
|
+
warning: 'Si no fuiste tú, comunícate con soporte de inmediato.',
|
|
20
|
+
subject: 'Se cambió el inicio de sesión de tu cuenta',
|
|
21
|
+
sincerely: 'Atentamente,',
|
|
22
|
+
},
|
|
23
|
+
fr: {
|
|
24
|
+
preview: 'La connexion à votre compte a été modifiée',
|
|
25
|
+
heading: 'Votre connexion a été modifiée',
|
|
26
|
+
body: 'Votre compte {brandName} a été restauré et associé à une nouvelle connexion.',
|
|
27
|
+
warning: 'Si vous n’êtes pas à l’origine de cette action, contactez immédiatement l’assistance.',
|
|
28
|
+
subject: 'La connexion à votre compte a été modifiée',
|
|
29
|
+
sincerely: 'Cordialement,',
|
|
30
|
+
},
|
|
31
|
+
ar: {
|
|
32
|
+
preview: 'تم تغيير تسجيل الدخول إلى حسابك',
|
|
33
|
+
heading: 'تم تغيير تسجيل الدخول',
|
|
34
|
+
body: 'تمت استعادة حسابك في {brandName} وربطه بتسجيل دخول جديد.',
|
|
35
|
+
warning: 'إذا لم تكن أنت من أجرى هذا التغيير، فتواصل مع الدعم فورًا.',
|
|
36
|
+
subject: 'تم تغيير تسجيل الدخول إلى حسابك',
|
|
37
|
+
sincerely: 'مع التحيات،',
|
|
38
|
+
},
|
|
39
|
+
};
|
|
40
|
+
export const AccountSignInChanged = ({ branding, locale }) => {
|
|
41
|
+
const strings = STRINGS[resolveCatalogLocale(locale)];
|
|
42
|
+
return (_jsxs(Layout, { branding: branding, locale: locale, preview: strings.preview, children: [_jsx(Text, { style: heading, children: strings.heading }), _jsx(Text, { style: paragraph, children: interpolate(strings.body, { brandName: branding.brandName }) }), _jsx(Text, { style: warning, children: strings.warning }), _jsxs(Text, { style: signOff, children: [strings.sincerely, _jsx("br", {}), interpolate(SHARED[resolveCatalogLocale(locale)].teamSignature, {
|
|
43
|
+
brandName: branding.brandName,
|
|
44
|
+
})] })] }));
|
|
45
|
+
};
|
|
46
|
+
/** Return the localized subject for an account sign-in change notification. */
|
|
47
|
+
export const getAccountSignInChangedSubject = (_branding, locale) => STRINGS[resolveCatalogLocale(locale)].subject;
|
|
48
|
+
const heading = {
|
|
49
|
+
color: '#111827',
|
|
50
|
+
fontSize: '24px',
|
|
51
|
+
fontWeight: 600,
|
|
52
|
+
lineHeight: '32px',
|
|
53
|
+
};
|
|
54
|
+
const paragraph = {
|
|
55
|
+
color: '#374151',
|
|
56
|
+
fontSize: '16px',
|
|
57
|
+
lineHeight: '24px',
|
|
58
|
+
};
|
|
59
|
+
const warning = {
|
|
60
|
+
...paragraph,
|
|
61
|
+
fontWeight: 600,
|
|
62
|
+
};
|
|
63
|
+
const signOff = {
|
|
64
|
+
...paragraph,
|
|
65
|
+
marginTop: '24px',
|
|
66
|
+
};
|
|
67
|
+
export default function Preview() {
|
|
68
|
+
return _jsx(AccountSignInChanged, { branding: DEFAULT_BRANDING });
|
|
69
|
+
}
|
|
70
|
+
//# sourceMappingURL=account-sign-in-changed.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"account-sign-in-changed.js","sourceRoot":"","sources":["../../src/templates/account-sign-in-changed.tsx"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* CredentialUpdated — privacy-minimal notice that an issuer published a new
|
|
3
|
+
* version of a credential.
|
|
4
|
+
*
|
|
5
|
+
* Used by: brain-service credential-refresh publication (templateId:
|
|
6
|
+
* 'credential-updated').
|
|
7
|
+
*
|
|
8
|
+
* Deliberately minimal context: the issuer display name and the credential
|
|
9
|
+
* display title are the only dynamic values. No grades, subject/recipient
|
|
10
|
+
* details, evidence, body, or issuer-authored update summary is rendered. The
|
|
11
|
+
* CTA points at the recipient's own notifications page (never a claim URL and
|
|
12
|
+
* never a bearer token), so a forwarded email cannot be used to access the
|
|
13
|
+
* credential.
|
|
14
|
+
*/
|
|
15
|
+
import * as React from 'react';
|
|
16
|
+
import type { TenantBranding } from '../branding';
|
|
17
|
+
export interface CredentialUpdatedProps {
|
|
18
|
+
branding: TenantBranding;
|
|
19
|
+
issuer?: {
|
|
20
|
+
name?: string;
|
|
21
|
+
logoUrl?: string;
|
|
22
|
+
};
|
|
23
|
+
/** Bounded credential display title. Omitted when unavailable. */
|
|
24
|
+
credential?: {
|
|
25
|
+
name?: string;
|
|
26
|
+
};
|
|
27
|
+
/** Recipient locale (BCP-47). Defaults to English. */
|
|
28
|
+
locale?: string;
|
|
29
|
+
}
|
|
30
|
+
export declare const CredentialUpdated: React.FC<CredentialUpdatedProps>;
|
|
31
|
+
export declare const getCredentialUpdatedSubject: (_branding: TenantBranding, locale?: string) => string;
|
|
32
|
+
export default function Preview(): React.JSX.Element;
|
|
33
|
+
//# sourceMappingURL=credential-updated.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"credential-updated.d.ts","sourceRoot":"","sources":["../../src/templates/credential-updated.tsx"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;GAaG;AAGH,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAE/B,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC;AASlD,MAAM,WAAW,sBAAsB;IACnC,QAAQ,EAAE,cAAc,CAAC;IACzB,MAAM,CAAC,EAAE;QACL,IAAI,CAAC,EAAE,MAAM,CAAC;QACd,OAAO,CAAC,EAAE,MAAM,CAAC;KACpB,CAAC;IACF,kEAAkE;IAClE,UAAU,CAAC,EAAE;QACT,IAAI,CAAC,EAAE,MAAM,CAAC;KACjB,CAAC;IACF,sDAAsD;IACtD,MAAM,CAAC,EAAE,MAAM,CAAC;CACnB;AAiLD,eAAO,MAAM,iBAAiB,EAAE,KAAK,CAAC,EAAE,CAAC,sBAAsB,CA8C9D,CAAC;AAEF,eAAO,MAAM,2BAA2B,GAAI,WAAW,cAAc,EAAE,SAAS,MAAM,KAAG,MACxC,CAAC;AAmClD,MAAM,CAAC,OAAO,UAAU,OAAO,sBAQ9B"}
|
|
@@ -0,0 +1,104 @@
|
|
|
1
|
+
import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from "react/jsx-runtime";
|
|
2
|
+
/**
|
|
3
|
+
* CredentialUpdated — privacy-minimal notice that an issuer published a new
|
|
4
|
+
* version of a credential.
|
|
5
|
+
*
|
|
6
|
+
* Used by: brain-service credential-refresh publication (templateId:
|
|
7
|
+
* 'credential-updated').
|
|
8
|
+
*
|
|
9
|
+
* Deliberately minimal context: the issuer display name and the credential
|
|
10
|
+
* display title are the only dynamic values. No grades, subject/recipient
|
|
11
|
+
* details, evidence, body, or issuer-authored update summary is rendered. The
|
|
12
|
+
* CTA points at the recipient's own notifications page (never a claim URL and
|
|
13
|
+
* never a bearer token), so a forwarded email cannot be used to access the
|
|
14
|
+
* credential.
|
|
15
|
+
*/
|
|
16
|
+
import { Text, Section } from '@react-email/components';
|
|
17
|
+
import { DEFAULT_BRANDING } from '../branding';
|
|
18
|
+
import { Layout } from '../components/Layout';
|
|
19
|
+
import { EmailButton } from '../components/EmailButton';
|
|
20
|
+
import { IssuerLogo } from '../components/IssuerLogo';
|
|
21
|
+
import { LinkFallback } from '../components/LinkFallback';
|
|
22
|
+
import { resolveCatalogLocale, interpolate, SHARED } from '../i18n';
|
|
23
|
+
const ldquo = '\u201C';
|
|
24
|
+
const rdquo = '\u201D';
|
|
25
|
+
const EN = {
|
|
26
|
+
preview: 'Your credential has been updated',
|
|
27
|
+
heading: 'Your credential was updated',
|
|
28
|
+
body: (issuerName, credentialName) => issuerName ? (credentialName ? (_jsxs(_Fragment, { children: [_jsx("strong", { children: issuerName }), " updated your", ' ', _jsxs("strong", { children: [ldquo, credentialName, rdquo] }), ' ', "certificate."] })) : (_jsxs(_Fragment, { children: [_jsx("strong", { children: issuerName }), " updated one of your credentials."] }))) : credentialName ? (_jsxs(_Fragment, { children: ["Your", ' ', _jsxs("strong", { children: [ldquo, credentialName, rdquo] }), ' ', "certificate was updated."] })) : (_jsx(_Fragment, { children: "One of your credentials was updated." })),
|
|
29
|
+
signIn: 'Sign in to view the latest version.',
|
|
30
|
+
button: 'View Updates',
|
|
31
|
+
sincerely: 'Sincerely,',
|
|
32
|
+
subject: 'Your credential was updated',
|
|
33
|
+
};
|
|
34
|
+
const ES = {
|
|
35
|
+
preview: 'Tu credencial se ha actualizado',
|
|
36
|
+
heading: 'Tu credencial se actualizó',
|
|
37
|
+
body: (issuerName, credentialName) => issuerName ? (credentialName ? (_jsxs(_Fragment, { children: [_jsx("strong", { children: issuerName }), " actualiz\u00F3 tu certificado", ' ', _jsxs("strong", { children: [ldquo, credentialName, rdquo] }), "."] })) : (_jsxs(_Fragment, { children: [_jsx("strong", { children: issuerName }), " actualiz\u00F3 una de tus credenciales."] }))) : credentialName ? (_jsxs(_Fragment, { children: ["Tu certificado", ' ', _jsxs("strong", { children: [ldquo, credentialName, rdquo] }), ' ', "se actualiz\u00F3."] })) : (_jsx(_Fragment, { children: "Una de tus credenciales se actualiz\u00F3." })),
|
|
38
|
+
signIn: 'Inicia sesión para ver la última versión.',
|
|
39
|
+
button: 'Ver actualizaciones',
|
|
40
|
+
sincerely: 'Atentamente,',
|
|
41
|
+
subject: 'Tu credencial se actualizó',
|
|
42
|
+
};
|
|
43
|
+
const FR = {
|
|
44
|
+
preview: 'Votre titre a été mis à jour',
|
|
45
|
+
heading: 'Votre titre a été mis à jour',
|
|
46
|
+
body: (issuerName, credentialName) => issuerName ? (credentialName ? (_jsxs(_Fragment, { children: [_jsx("strong", { children: issuerName }), " a mis \u00E0 jour votre certificat", ' ', _jsxs("strong", { children: [ldquo, credentialName, rdquo] }), "."] })) : (_jsxs(_Fragment, { children: [_jsx("strong", { children: issuerName }), " a mis \u00E0 jour l'un de vos titres."] }))) : credentialName ? (_jsxs(_Fragment, { children: ["Votre certificat", ' ', _jsxs("strong", { children: [ldquo, credentialName, rdquo] }), ' ', "a \u00E9t\u00E9 mis \u00E0 jour."] })) : (_jsx(_Fragment, { children: "L'un de vos titres a \u00E9t\u00E9 mis \u00E0 jour." })),
|
|
47
|
+
signIn: 'Connectez-vous pour voir la dernière version.',
|
|
48
|
+
button: 'Voir les mises à jour',
|
|
49
|
+
sincerely: 'Cordialement,',
|
|
50
|
+
subject: 'Votre titre a été mis à jour',
|
|
51
|
+
};
|
|
52
|
+
const AR = {
|
|
53
|
+
preview: 'تم تحديث شهادتك',
|
|
54
|
+
heading: 'تم تحديث شهادتك',
|
|
55
|
+
body: (issuerName, credentialName) => issuerName ? (credentialName ? (_jsxs(_Fragment, { children: ["\u0642\u0627\u0645 ", _jsx("strong", { children: issuerName }), " \u0628\u062A\u062D\u062F\u064A\u062B \u0634\u0647\u0627\u062F\u062A\u0643", ' ', _jsxs("strong", { children: [ldquo, credentialName, rdquo] }), "."] })) : (_jsxs(_Fragment, { children: ["\u0642\u0627\u0645 ", _jsx("strong", { children: issuerName }), " \u0628\u062A\u062D\u062F\u064A\u062B \u0625\u062D\u062F\u0649 \u0634\u0647\u0627\u062F\u0627\u062A\u0643."] }))) : credentialName ? (_jsxs(_Fragment, { children: ["\u062A\u0645 \u062A\u062D\u062F\u064A\u062B \u0634\u0647\u0627\u062F\u062A\u0643", ' ', _jsxs("strong", { children: [ldquo, credentialName, rdquo] }), "."] })) : (_jsx(_Fragment, { children: "\u062A\u0645 \u062A\u062D\u062F\u064A\u062B \u0625\u062D\u062F\u0649 \u0634\u0647\u0627\u062F\u0627\u062A\u0643." })),
|
|
56
|
+
signIn: 'سجّل الدخول لعرض أحدث إصدار.',
|
|
57
|
+
button: 'عرض التحديثات',
|
|
58
|
+
sincerely: 'مع التحيات،',
|
|
59
|
+
subject: 'تم تحديث شهادتك',
|
|
60
|
+
};
|
|
61
|
+
const STRINGS = { en: EN, es: ES, fr: FR, ar: AR };
|
|
62
|
+
/** Notifications page of the configured app (never a claim or token URL). */
|
|
63
|
+
const notificationsUrl = (branding) => `${branding.appUrl.replace(/\/+$/, '')}/notifications`;
|
|
64
|
+
export const CredentialUpdated = ({ branding, issuer, credential, locale, }) => {
|
|
65
|
+
const s = STRINGS[resolveCatalogLocale(locale)];
|
|
66
|
+
const issuerName = issuer?.name;
|
|
67
|
+
const credentialName = credential?.name;
|
|
68
|
+
const updatesUrl = notificationsUrl(branding);
|
|
69
|
+
return (_jsxs(Layout, { branding: branding, locale: locale, preview: s.preview, showHeaderLogo: !issuer?.logoUrl, children: [_jsx(IssuerLogo, { logoUrl: issuer?.logoUrl, alt: issuerName ? `${issuerName} logo` : undefined }), _jsx(Text, { style: heading, children: s.heading }), _jsx(Text, { style: paragraph, children: s.body(issuerName, credentialName) }), _jsx(Text, { style: paragraph, children: s.signIn }), _jsx(Section, { style: buttonWrapper, children: _jsx(EmailButton, { href: updatesUrl, branding: branding, children: s.button }) }), _jsxs(Text, { style: signOff, children: [s.sincerely, _jsx("br", {}), interpolate(SHARED[resolveCatalogLocale(locale)].teamSignature, {
|
|
70
|
+
brandName: branding.brandName,
|
|
71
|
+
})] }), _jsx(LinkFallback, { href: updatesUrl, locale: locale })] }));
|
|
72
|
+
};
|
|
73
|
+
export const getCredentialUpdatedSubject = (_branding, locale) => STRINGS[resolveCatalogLocale(locale)].subject;
|
|
74
|
+
// ---------------------------------------------------------------------------
|
|
75
|
+
// Styles
|
|
76
|
+
// ---------------------------------------------------------------------------
|
|
77
|
+
const heading = {
|
|
78
|
+
fontSize: 24,
|
|
79
|
+
fontWeight: 600,
|
|
80
|
+
color: '#111827',
|
|
81
|
+
margin: '0 0 24px',
|
|
82
|
+
};
|
|
83
|
+
const paragraph = {
|
|
84
|
+
fontSize: 16,
|
|
85
|
+
color: '#374151',
|
|
86
|
+
lineHeight: '24px',
|
|
87
|
+
margin: '0 0 24px',
|
|
88
|
+
};
|
|
89
|
+
const buttonWrapper = {
|
|
90
|
+
margin: '0 0 24px',
|
|
91
|
+
};
|
|
92
|
+
const signOff = {
|
|
93
|
+
fontSize: 14,
|
|
94
|
+
color: '#374151',
|
|
95
|
+
lineHeight: '20px',
|
|
96
|
+
margin: '24px 0 0',
|
|
97
|
+
};
|
|
98
|
+
// ---------------------------------------------------------------------------
|
|
99
|
+
// Preview
|
|
100
|
+
// ---------------------------------------------------------------------------
|
|
101
|
+
export default function Preview() {
|
|
102
|
+
return (_jsx(CredentialUpdated, { branding: DEFAULT_BRANDING, issuer: { name: 'Inbox Demo School' }, credential: { name: 'Introduction to Biology' } }));
|
|
103
|
+
}
|
|
104
|
+
//# sourceMappingURL=credential-updated.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"credential-updated.js","sourceRoot":"","sources":["../../src/templates/credential-updated.tsx"],"names":[],"mappings":"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"}
|
|
@@ -10,16 +10,20 @@ export { RecoveryKey, getRecoveryKeySubject } from './recovery-key';
|
|
|
10
10
|
export type { RecoveryKeyProps } from './recovery-key';
|
|
11
11
|
export { EndorsementRequest, getEndorsementRequestSubject } from './endorsement-request';
|
|
12
12
|
export type { EndorsementRequestProps } from './endorsement-request';
|
|
13
|
-
export { CredentialAwaitingGuardian, getCredentialAwaitingGuardianSubject } from './credential-awaiting-guardian';
|
|
13
|
+
export { CredentialAwaitingGuardian, getCredentialAwaitingGuardianSubject, } from './credential-awaiting-guardian';
|
|
14
14
|
export type { CredentialAwaitingGuardianProps } from './credential-awaiting-guardian';
|
|
15
15
|
export { GuardianApprovedClaim, getGuardianApprovedClaimSubject } from './guardian-approved-claim';
|
|
16
16
|
export type { GuardianApprovedClaimProps } from './guardian-approved-claim';
|
|
17
|
-
export { GuardianCredentialApproval, getGuardianCredentialApprovalSubject } from './guardian-credential-approval';
|
|
17
|
+
export { GuardianCredentialApproval, getGuardianCredentialApprovalSubject, } from './guardian-credential-approval';
|
|
18
18
|
export type { GuardianCredentialApprovalProps } from './guardian-credential-approval';
|
|
19
19
|
export { GuardianEmailOtp, getGuardianEmailOtpSubject } from './guardian-email-otp';
|
|
20
20
|
export type { GuardianEmailOtpProps } from './guardian-email-otp';
|
|
21
|
-
export { GuardianRejectedCredential, getGuardianRejectedCredentialSubject } from './guardian-rejected-credential';
|
|
21
|
+
export { GuardianRejectedCredential, getGuardianRejectedCredentialSubject, } from './guardian-rejected-credential';
|
|
22
22
|
export type { GuardianRejectedCredentialProps } from './guardian-rejected-credential';
|
|
23
23
|
export { EmailVerification, getEmailVerificationSubject } from './email-verification';
|
|
24
24
|
export type { EmailVerificationProps } from './email-verification';
|
|
25
|
+
export { CredentialUpdated, getCredentialUpdatedSubject } from './credential-updated';
|
|
26
|
+
export type { CredentialUpdatedProps } from './credential-updated';
|
|
27
|
+
export { AccountSignInChanged, getAccountSignInChangedSubject } from './account-sign-in-changed';
|
|
28
|
+
export type { AccountSignInChangedProps } from './account-sign-in-changed';
|
|
25
29
|
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/templates/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,0BAA0B,EAAE,MAAM,qBAAqB,CAAC;AACnF,YAAY,EAAE,qBAAqB,EAAE,uBAAuB,EAAE,MAAM,qBAAqB,CAAC;AAE1F,OAAO,EAAE,UAAU,EAAE,oBAAoB,EAAE,MAAM,eAAe,CAAC;AACjE,YAAY,EAAE,eAAe,EAAE,MAAM,eAAe,CAAC;AAErD,OAAO,EAAE,gBAAgB,EAAE,0BAA0B,EAAE,MAAM,qBAAqB,CAAC;AACnF,YAAY,EAAE,qBAAqB,EAAE,MAAM,qBAAqB,CAAC;AAEjE,OAAO,EAAE,eAAe,EAAE,yBAAyB,EAAE,MAAM,oBAAoB,CAAC;AAChF,YAAY,EAAE,oBAAoB,EAAE,MAAM,oBAAoB,CAAC;AAE/D,OAAO,EAAE,WAAW,EAAE,qBAAqB,EAAE,MAAM,gBAAgB,CAAC;AACpE,YAAY,EAAE,gBAAgB,EAAE,MAAM,gBAAgB,CAAC;AAEvD,OAAO,EAAE,kBAAkB,EAAE,4BAA4B,EAAE,MAAM,uBAAuB,CAAC;AACzF,YAAY,EAAE,uBAAuB,EAAE,MAAM,uBAAuB,CAAC;AAErE,OAAO,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/templates/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,0BAA0B,EAAE,MAAM,qBAAqB,CAAC;AACnF,YAAY,EAAE,qBAAqB,EAAE,uBAAuB,EAAE,MAAM,qBAAqB,CAAC;AAE1F,OAAO,EAAE,UAAU,EAAE,oBAAoB,EAAE,MAAM,eAAe,CAAC;AACjE,YAAY,EAAE,eAAe,EAAE,MAAM,eAAe,CAAC;AAErD,OAAO,EAAE,gBAAgB,EAAE,0BAA0B,EAAE,MAAM,qBAAqB,CAAC;AACnF,YAAY,EAAE,qBAAqB,EAAE,MAAM,qBAAqB,CAAC;AAEjE,OAAO,EAAE,eAAe,EAAE,yBAAyB,EAAE,MAAM,oBAAoB,CAAC;AAChF,YAAY,EAAE,oBAAoB,EAAE,MAAM,oBAAoB,CAAC;AAE/D,OAAO,EAAE,WAAW,EAAE,qBAAqB,EAAE,MAAM,gBAAgB,CAAC;AACpE,YAAY,EAAE,gBAAgB,EAAE,MAAM,gBAAgB,CAAC;AAEvD,OAAO,EAAE,kBAAkB,EAAE,4BAA4B,EAAE,MAAM,uBAAuB,CAAC;AACzF,YAAY,EAAE,uBAAuB,EAAE,MAAM,uBAAuB,CAAC;AAErE,OAAO,EACH,0BAA0B,EAC1B,oCAAoC,GACvC,MAAM,gCAAgC,CAAC;AACxC,YAAY,EAAE,+BAA+B,EAAE,MAAM,gCAAgC,CAAC;AAEtF,OAAO,EAAE,qBAAqB,EAAE,+BAA+B,EAAE,MAAM,2BAA2B,CAAC;AACnG,YAAY,EAAE,0BAA0B,EAAE,MAAM,2BAA2B,CAAC;AAE5E,OAAO,EACH,0BAA0B,EAC1B,oCAAoC,GACvC,MAAM,gCAAgC,CAAC;AACxC,YAAY,EAAE,+BAA+B,EAAE,MAAM,gCAAgC,CAAC;AAEtF,OAAO,EAAE,gBAAgB,EAAE,0BAA0B,EAAE,MAAM,sBAAsB,CAAC;AACpF,YAAY,EAAE,qBAAqB,EAAE,MAAM,sBAAsB,CAAC;AAElE,OAAO,EACH,0BAA0B,EAC1B,oCAAoC,GACvC,MAAM,gCAAgC,CAAC;AACxC,YAAY,EAAE,+BAA+B,EAAE,MAAM,gCAAgC,CAAC;AAEtF,OAAO,EAAE,iBAAiB,EAAE,2BAA2B,EAAE,MAAM,sBAAsB,CAAC;AACtF,YAAY,EAAE,sBAAsB,EAAE,MAAM,sBAAsB,CAAC;AAEnE,OAAO,EAAE,iBAAiB,EAAE,2BAA2B,EAAE,MAAM,sBAAsB,CAAC;AACtF,YAAY,EAAE,sBAAsB,EAAE,MAAM,sBAAsB,CAAC;AACnE,OAAO,EAAE,oBAAoB,EAAE,8BAA8B,EAAE,MAAM,2BAA2B,CAAC;AACjG,YAAY,EAAE,yBAAyB,EAAE,MAAM,2BAA2B,CAAC"}
|
package/dist/templates/index.js
CHANGED
|
@@ -4,10 +4,12 @@ export { GuardianApproval, getGuardianApprovalSubject } from './guardian-approva
|
|
|
4
4
|
export { AccountApproved, getAccountApprovedSubject } from './account-approved';
|
|
5
5
|
export { RecoveryKey, getRecoveryKeySubject } from './recovery-key';
|
|
6
6
|
export { EndorsementRequest, getEndorsementRequestSubject } from './endorsement-request';
|
|
7
|
-
export { CredentialAwaitingGuardian, getCredentialAwaitingGuardianSubject } from './credential-awaiting-guardian';
|
|
7
|
+
export { CredentialAwaitingGuardian, getCredentialAwaitingGuardianSubject, } from './credential-awaiting-guardian';
|
|
8
8
|
export { GuardianApprovedClaim, getGuardianApprovedClaimSubject } from './guardian-approved-claim';
|
|
9
|
-
export { GuardianCredentialApproval, getGuardianCredentialApprovalSubject } from './guardian-credential-approval';
|
|
9
|
+
export { GuardianCredentialApproval, getGuardianCredentialApprovalSubject, } from './guardian-credential-approval';
|
|
10
10
|
export { GuardianEmailOtp, getGuardianEmailOtpSubject } from './guardian-email-otp';
|
|
11
|
-
export { GuardianRejectedCredential, getGuardianRejectedCredentialSubject } from './guardian-rejected-credential';
|
|
11
|
+
export { GuardianRejectedCredential, getGuardianRejectedCredentialSubject, } from './guardian-rejected-credential';
|
|
12
12
|
export { EmailVerification, getEmailVerificationSubject } from './email-verification';
|
|
13
|
+
export { CredentialUpdated, getCredentialUpdatedSubject } from './credential-updated';
|
|
14
|
+
export { AccountSignInChanged, getAccountSignInChangedSubject } from './account-sign-in-changed';
|
|
13
15
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/templates/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,0BAA0B,EAAE,MAAM,qBAAqB,CAAC;AAGnF,OAAO,EAAE,UAAU,EAAE,oBAAoB,EAAE,MAAM,eAAe,CAAC;AAGjE,OAAO,EAAE,gBAAgB,EAAE,0BAA0B,EAAE,MAAM,qBAAqB,CAAC;AAGnF,OAAO,EAAE,eAAe,EAAE,yBAAyB,EAAE,MAAM,oBAAoB,CAAC;AAGhF,OAAO,EAAE,WAAW,EAAE,qBAAqB,EAAE,MAAM,gBAAgB,CAAC;AAGpE,OAAO,EAAE,kBAAkB,EAAE,4BAA4B,EAAE,MAAM,uBAAuB,CAAC;AAGzF,OAAO,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/templates/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,0BAA0B,EAAE,MAAM,qBAAqB,CAAC;AAGnF,OAAO,EAAE,UAAU,EAAE,oBAAoB,EAAE,MAAM,eAAe,CAAC;AAGjE,OAAO,EAAE,gBAAgB,EAAE,0BAA0B,EAAE,MAAM,qBAAqB,CAAC;AAGnF,OAAO,EAAE,eAAe,EAAE,yBAAyB,EAAE,MAAM,oBAAoB,CAAC;AAGhF,OAAO,EAAE,WAAW,EAAE,qBAAqB,EAAE,MAAM,gBAAgB,CAAC;AAGpE,OAAO,EAAE,kBAAkB,EAAE,4BAA4B,EAAE,MAAM,uBAAuB,CAAC;AAGzF,OAAO,EACH,0BAA0B,EAC1B,oCAAoC,GACvC,MAAM,gCAAgC,CAAC;AAGxC,OAAO,EAAE,qBAAqB,EAAE,+BAA+B,EAAE,MAAM,2BAA2B,CAAC;AAGnG,OAAO,EACH,0BAA0B,EAC1B,oCAAoC,GACvC,MAAM,gCAAgC,CAAC;AAGxC,OAAO,EAAE,gBAAgB,EAAE,0BAA0B,EAAE,MAAM,sBAAsB,CAAC;AAGpF,OAAO,EACH,0BAA0B,EAC1B,oCAAoC,GACvC,MAAM,gCAAgC,CAAC;AAGxC,OAAO,EAAE,iBAAiB,EAAE,2BAA2B,EAAE,MAAM,sBAAsB,CAAC;AAGtF,OAAO,EAAE,iBAAiB,EAAE,2BAA2B,EAAE,MAAM,sBAAsB,CAAC;AAEtF,OAAO,EAAE,oBAAoB,EAAE,8BAA8B,EAAE,MAAM,2BAA2B,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"recovery-key.d.ts","sourceRoot":"","sources":["../../src/templates/recovery-key.tsx"],"names":[],"mappings":"AAAA;;;;GAIG;AAGH,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAE/B,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC;AAOlD,MAAM,WAAW,gBAAgB;IAC7B,QAAQ,EAAE,cAAc,CAAC;IACzB,WAAW,EAAE,MAAM,CAAC;IACpB,sDAAsD;IACtD,MAAM,CAAC,EAAE,MAAM,CAAC;CACnB;
|
|
1
|
+
{"version":3,"file":"recovery-key.d.ts","sourceRoot":"","sources":["../../src/templates/recovery-key.tsx"],"names":[],"mappings":"AAAA;;;;GAIG;AAGH,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAE/B,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC;AAOlD,MAAM,WAAW,gBAAgB;IAC7B,QAAQ,EAAE,cAAc,CAAC;IACzB,WAAW,EAAE,MAAM,CAAC;IACpB,gBAAgB,EAAE,MAAM,CAAC;IACzB,sDAAsD;IACtD,MAAM,CAAC,EAAE,MAAM,CAAC;CACnB;AAgHD,eAAO,MAAM,WAAW,EAAE,KAAK,CAAC,EAAE,CAAC,gBAAgB,CAuClD,CAAC;AAEF,eAAO,MAAM,qBAAqB,GAAI,UAAU,cAAc,EAAE,SAAS,MAAM,KAAG,MACb,CAAC;AAsCtE,MAAM,CAAC,OAAO,UAAU,OAAO,sBAQ9B"}
|
|
@@ -16,6 +16,8 @@ const STRINGS = {
|
|
|
16
16
|
greeting: 'Hello,',
|
|
17
17
|
body: b => `Keep this email safe. You can use the recovery key below to regain access to your ${b} account if you lose your device.`,
|
|
18
18
|
codeLabel: 'Recovery Key \u2014 do NOT share this with anyone',
|
|
19
|
+
confirmationCodeLabel: 'Confirmation code',
|
|
20
|
+
confirmationInstruction: 'Enter this code in the app to confirm that you received your recovery key.',
|
|
19
21
|
recoverInstruction: () => (_jsxs(_Fragment, { children: ["To recover your account, choose ", _jsx("strong", { children: "\u201CRecover via Email\u201D" }), " in the app and paste the recovery key above when prompted."] })),
|
|
20
22
|
notRequested: 'If you did not request this, you can safely ignore this email.',
|
|
21
23
|
passport: '{brandName} is your private, digital passport for learning and work. It lets you securely collect and share your verified skills and achievements online.',
|
|
@@ -28,6 +30,8 @@ const STRINGS = {
|
|
|
28
30
|
greeting: 'Hola,',
|
|
29
31
|
body: b => `Guarda este correo en un lugar seguro. Puedes usar la clave de recuperación siguiente para recuperar el acceso a tu cuenta de ${b} si pierdes tu dispositivo.`,
|
|
30
32
|
codeLabel: 'Clave de recuperación \u2014 NO la compartas con nadie',
|
|
33
|
+
confirmationCodeLabel: 'Código de confirmación',
|
|
34
|
+
confirmationInstruction: 'Introduce este código en la aplicación para confirmar que recibiste tu clave de recuperación.',
|
|
31
35
|
recoverInstruction: () => (_jsxs(_Fragment, { children: ["Para recuperar tu cuenta, elige ", _jsx("strong", { children: "\u201CRecuperar por correo\u201D" }), ' ', "en la app y pega la clave de recuperaci\u00F3n anterior cuando se te solicite."] })),
|
|
32
36
|
notRequested: 'Si no solicitaste esto, puedes ignorar este correo con seguridad.',
|
|
33
37
|
passport: '{brandName} es tu pasaporte digital y privado para el aprendizaje y el trabajo. Te permite recopilar y compartir de forma segura tus habilidades y logros verificados en línea.',
|
|
@@ -40,6 +44,8 @@ const STRINGS = {
|
|
|
40
44
|
greeting: 'Bonjour,',
|
|
41
45
|
body: b => `Conservez cet e-mail en sécurité. Vous pouvez utiliser la clé de récupération ci-dessous pour retrouver l\u2019accès à votre compte ${b} si vous perdez votre appareil.`,
|
|
42
46
|
codeLabel: 'Clé de récupération \u2014 NE la partagez avec PERSONNE',
|
|
47
|
+
confirmationCodeLabel: 'Code de confirmation',
|
|
48
|
+
confirmationInstruction: 'Saisissez ce code dans l’application pour confirmer que vous avez reçu votre clé de récupération.',
|
|
43
49
|
recoverInstruction: () => (_jsxs(_Fragment, { children: ["Pour r\u00E9cup\u00E9rer votre compte, choisissez", ' ', _jsx("strong", { children: "\u00AB\u00A0R\u00E9cup\u00E9rer par e-mail\u00A0\u00BB" }), " dans l\\u2019application et collez la cl\u00E9 de r\u00E9cup\u00E9ration ci-dessus lorsque cela vous est demand\u00E9."] })),
|
|
44
50
|
notRequested: 'Si vous n\u2019êtes pas à l\u2019origine de cette demande, vous pouvez ignorer cet e-mail en toute sécurité.',
|
|
45
51
|
passport: '{brandName} est votre passeport numérique privé pour l\u2019apprentissage et le travail. Il vous permet de collecter et de partager en toute sécurité vos compétences et réalisations vérifiées en ligne.',
|
|
@@ -52,6 +58,8 @@ const STRINGS = {
|
|
|
52
58
|
greeting: 'مرحبًا،',
|
|
53
59
|
body: b => `احتفظ بهذا البريد في مكان آمن. يمكنك استخدام مفتاح الاستعادة أدناه لاستعادة الوصول إلى حسابك في ${b} إذا فقدت جهازك.`,
|
|
54
60
|
codeLabel: 'مفتاح الاستعادة \u2014 لا تشاركه مع أي شخص إطلاقًا',
|
|
61
|
+
confirmationCodeLabel: 'رمز التأكيد',
|
|
62
|
+
confirmationInstruction: 'أدخل هذا الرمز في التطبيق لتأكيد استلام مفتاح الاستعادة الخاص بك.',
|
|
55
63
|
recoverInstruction: () => (_jsxs(_Fragment, { children: ["\u0644\u0627\u0633\u062A\u0639\u0627\u062F\u0629 \u062D\u0633\u0627\u0628\u0643\u060C \u0627\u062E\u062A\u0631 ", _jsx("strong", { children: "\u00AB\u0627\u0644\u0627\u0633\u062A\u0639\u0627\u062F\u0629 \u0639\u0628\u0631 \u0627\u0644\u0628\u0631\u064A\u062F\u00BB" }), " \u0641\u064A \u0627\u0644\u062A\u0637\u0628\u064A\u0642 \u0648\u0627\u0644\u0635\u0642 \u0645\u0641\u062A\u0627\u062D \u0627\u0644\u0627\u0633\u062A\u0639\u0627\u062F\u0629 \u0623\u0639\u0644\u0627\u0647 \u0639\u0646\u062F \u0627\u0644\u0645\u0637\u0627\u0644\u0628\u0629 \u0628\u0630\u0644\u0643."] })),
|
|
56
64
|
notRequested: 'إذا لم تطلب ذلك، يمكنك تجاهل هذه الرسالة بأمان.',
|
|
57
65
|
passport: '{brandName} هو جواز سفرك الرقمي والخاص للتعلّم والعمل. يتيح لك جمع ومشاركة مهاراتك وإنجازاتك الموثّقة بأمان عبر الإنترنت.',
|
|
@@ -59,9 +67,9 @@ const STRINGS = {
|
|
|
59
67
|
subject: b => `مفتاح الاستعادة الخاص بك في ${b}`,
|
|
60
68
|
},
|
|
61
69
|
};
|
|
62
|
-
export const RecoveryKey = ({ branding, recoveryKey, locale }) => {
|
|
70
|
+
export const RecoveryKey = ({ branding, recoveryKey, confirmationCode, locale, }) => {
|
|
63
71
|
const s = STRINGS[resolveCatalogLocale(locale)];
|
|
64
|
-
return (_jsxs(Layout, { branding: branding, locale: locale, preview: s.preview(branding.brandName), children: [_jsx(Text, { style: heading, children: s.heading(branding.brandName) }), _jsx(Text, { style: paragraph, children: s.greeting }), _jsx(Text, { style: paragraph, children: s.body(branding.brandName) }), _jsx(CodeBlock, { code: recoveryKey, label: s.codeLabel, variant: "key" }), _jsx(Text, { style: paragraph, children: s.recoverInstruction() }), _jsx(Text, { style: muted, children: s.notRequested }), _jsx(Text, { style: paragraph, children: interpolate(s.passport, { brandName: branding.brandName }) }), _jsxs(Text, { style: signOff, children: [s.sincerely, _jsx("br", {}), interpolate(SHARED[resolveCatalogLocale(locale)].teamSignature, {
|
|
72
|
+
return (_jsxs(Layout, { branding: branding, locale: locale, preview: s.preview(branding.brandName), children: [_jsx(Text, { style: heading, children: s.heading(branding.brandName) }), _jsx(Text, { style: paragraph, children: s.greeting }), _jsx(Text, { style: paragraph, children: s.body(branding.brandName) }), _jsx(CodeBlock, { code: recoveryKey, label: s.codeLabel, variant: "key" }), _jsx(CodeBlock, { code: confirmationCode, label: s.confirmationCodeLabel, variant: "code" }), _jsx(Text, { style: paragraph, children: s.confirmationInstruction }), _jsx(Text, { style: paragraph, children: s.recoverInstruction() }), _jsx(Text, { style: muted, children: s.notRequested }), _jsx(Text, { style: paragraph, children: interpolate(s.passport, { brandName: branding.brandName }) }), _jsxs(Text, { style: signOff, children: [s.sincerely, _jsx("br", {}), interpolate(SHARED[resolveCatalogLocale(locale)].teamSignature, {
|
|
65
73
|
brandName: branding.brandName,
|
|
66
74
|
})] })] }));
|
|
67
75
|
};
|
|
@@ -97,6 +105,6 @@ const signOff = {
|
|
|
97
105
|
// Preview
|
|
98
106
|
// ---------------------------------------------------------------------------
|
|
99
107
|
export default function Preview() {
|
|
100
|
-
return (_jsx(RecoveryKey, { branding: DEFAULT_BRANDING, recoveryKey: "mango-delta-fox-echo-bravo-seven-lima-niner" }));
|
|
108
|
+
return (_jsx(RecoveryKey, { branding: DEFAULT_BRANDING, recoveryKey: "mango-delta-fox-echo-bravo-seven-lima-niner", confirmationCode: "123456" }));
|
|
101
109
|
}
|
|
102
110
|
//# sourceMappingURL=recovery-key.js.map
|