@company-semantics/contracts 31.0.0 → 32.0.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/package.json +4 -4
- package/src/email/__tests__/registry.test.ts +3 -3
- package/src/email/registry.ts +6 -4
- package/src/email/render/__tests__/__snapshots__/render-snapshot.test.ts.snap +1141 -454
- package/src/email/render/__tests__/render-snapshot.test.ts +11 -7
- package/src/email/render/auth-otp.ts +14 -7
- package/src/email/render/blocks.ts +291 -104
- package/src/email/render/chat-shared.ts +16 -18
- package/src/email/render/company-md-access-approved.ts +17 -10
- package/src/email/render/company-md-access-denied.ts +11 -9
- package/src/email/render/company-md-access-requested.ts +21 -20
- package/src/email/render/index.ts +6 -0
- package/src/email/render/org-invite.ts +16 -7
- package/src/email/render/ownership-transfer-completed.ts +20 -11
- package/src/email/render/ownership-transfer.ts +22 -22
- package/src/email/render/render-email.ts +39 -1
- package/src/email/render/security-alert.ts +11 -12
- package/src/email/render/share-granted.ts +13 -16
- package/src/email/render/unit-owner-granted.ts +38 -24
- package/src/email/types.ts +10 -3
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@company-semantics/contracts",
|
|
3
|
-
"version": "
|
|
3
|
+
"version": "32.0.0",
|
|
4
4
|
"private": false,
|
|
5
5
|
"repository": {
|
|
6
6
|
"type": "git",
|
|
@@ -125,13 +125,13 @@
|
|
|
125
125
|
"zod": "^4.4.3"
|
|
126
126
|
},
|
|
127
127
|
"devDependencies": {
|
|
128
|
-
"@types/node": "^
|
|
128
|
+
"@types/node": "^26.1.1",
|
|
129
129
|
"husky": "^9.1.7",
|
|
130
130
|
"lint-staged": "^17.0.8",
|
|
131
131
|
"markdownlint-cli2": "^0.23.0",
|
|
132
132
|
"openapi-typescript": "^7.13.0",
|
|
133
|
-
"prettier": "^3.9.
|
|
134
|
-
"tsx": "^4.23.
|
|
133
|
+
"prettier": "^3.9.5",
|
|
134
|
+
"tsx": "^4.23.1",
|
|
135
135
|
"typescript": "^5.8.3",
|
|
136
136
|
"vitest": "^4.1.10",
|
|
137
137
|
"yaml": "^2.9.0"
|
|
@@ -10,7 +10,7 @@ describe("EMAIL_KINDS golden snapshot", () => {
|
|
|
10
10
|
expect(EMAIL_KINDS).toStrictEqual({
|
|
11
11
|
"auth.otp": {
|
|
12
12
|
kind: "auth.otp",
|
|
13
|
-
subject: "Your login code",
|
|
13
|
+
subject: "Your login code for Company Semantics",
|
|
14
14
|
plainTextRequired: true,
|
|
15
15
|
htmlSupported: false,
|
|
16
16
|
},
|
|
@@ -22,13 +22,13 @@ describe("EMAIL_KINDS golden snapshot", () => {
|
|
|
22
22
|
},
|
|
23
23
|
"org.invite": {
|
|
24
24
|
kind: "org.invite",
|
|
25
|
-
subject: "You
|
|
25
|
+
subject: "You've been invited to join {orgName} on Company Semantics",
|
|
26
26
|
plainTextRequired: true,
|
|
27
27
|
htmlSupported: true,
|
|
28
28
|
},
|
|
29
29
|
"org.unit_owner_granted": {
|
|
30
30
|
kind: "org.unit_owner_granted",
|
|
31
|
-
subject: "You've been added to
|
|
31
|
+
subject: "You've been added as {roleWord} to {unitName} in {orgName}",
|
|
32
32
|
plainTextRequired: true,
|
|
33
33
|
htmlSupported: true,
|
|
34
34
|
},
|
package/src/email/registry.ts
CHANGED
|
@@ -32,7 +32,9 @@ import type { EmailKind } from "./types";
|
|
|
32
32
|
export interface EmailKindDefinition {
|
|
33
33
|
/** The email kind this definition describes */
|
|
34
34
|
kind: EmailKind;
|
|
35
|
-
/** Email subject line (single source of truth)
|
|
35
|
+
/** Email subject line (single source of truth). May contain `{field}`
|
|
36
|
+
* placeholders that `renderEmail` fills from the payload (e.g. `{orgName}`);
|
|
37
|
+
* an unmatched placeholder is left verbatim. */
|
|
36
38
|
subject: string;
|
|
37
39
|
/** Whether plain text body is required */
|
|
38
40
|
plainTextRequired: boolean;
|
|
@@ -60,7 +62,7 @@ export interface EmailKindDefinition {
|
|
|
60
62
|
export const EMAIL_KINDS = {
|
|
61
63
|
"auth.otp": {
|
|
62
64
|
kind: "auth.otp",
|
|
63
|
-
subject: "Your login code",
|
|
65
|
+
subject: "Your login code for Company Semantics",
|
|
64
66
|
plainTextRequired: true,
|
|
65
67
|
htmlSupported: false,
|
|
66
68
|
},
|
|
@@ -72,13 +74,13 @@ export const EMAIL_KINDS = {
|
|
|
72
74
|
},
|
|
73
75
|
"org.invite": {
|
|
74
76
|
kind: "org.invite",
|
|
75
|
-
subject: "You
|
|
77
|
+
subject: "You've been invited to join {orgName} on Company Semantics",
|
|
76
78
|
plainTextRequired: true,
|
|
77
79
|
htmlSupported: true,
|
|
78
80
|
},
|
|
79
81
|
"org.unit_owner_granted": {
|
|
80
82
|
kind: "org.unit_owner_granted",
|
|
81
|
-
subject: "You've been added to
|
|
83
|
+
subject: "You've been added as {roleWord} to {unitName} in {orgName}",
|
|
82
84
|
plainTextRequired: true,
|
|
83
85
|
htmlSupported: true,
|
|
84
86
|
},
|