@aglyn/shared-util-email 1.0.0-beta.219 → 1.0.0-beta.220
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 +3 -3
- package/src/lib/hosted-page-screen.d.ts +27 -0
- package/src/lib/hosted-page-screen.js +228 -23
- package/src/lib/hosted-page-screen.js.map +1 -1
- package/src/lib/outbound-phishing-screen.d.ts +80 -3
- package/src/lib/outbound-phishing-screen.js +457 -29
- package/src/lib/outbound-phishing-screen.js.map +1 -1
- package/src/lib/risk-notice-catalog.d.ts +32 -2
- package/src/lib/risk-notice-catalog.js +86 -55
- package/src/lib/risk-notice-catalog.js.map +1 -1
- package/src/lib/send-email.d.ts +23 -0
- package/src/lib/send-email.js +30 -3
- package/src/lib/send-email.js.map +1 -1
- package/src/lib/sending-domain.d.ts +15 -0
- package/src/lib/sending-domain.js.map +1 -1
- package/src/lib/system-email-catalog.js +34 -8
- package/src/lib/system-email-catalog.js.map +1 -1
- package/src/lib/tenant-emails.generated.js +73 -18
- package/src/lib/tenant-emails.generated.js.map +1 -1
|
@@ -34,7 +34,12 @@
|
|
|
34
34
|
{
|
|
35
35
|
"name": "timezone",
|
|
36
36
|
"description": "Timezone the time is shown in",
|
|
37
|
-
"sample": "
|
|
37
|
+
"sample": "America/Chicago"
|
|
38
|
+
},
|
|
39
|
+
{
|
|
40
|
+
"name": "booking.payment",
|
|
41
|
+
"description": "What a paid booking charged, as a sentence; empty for a free booking",
|
|
42
|
+
"sample": "You paid $95.00."
|
|
38
43
|
},
|
|
39
44
|
{
|
|
40
45
|
"name": "booking.ref",
|
|
@@ -50,7 +55,12 @@
|
|
|
50
55
|
},
|
|
51
56
|
{
|
|
52
57
|
"block": "text",
|
|
53
|
-
"text": "Hi {{name}}, your booking
|
|
58
|
+
"text": "Hi {{name}}, your booking with {{host.businessName}} is confirmed: \"{{service.name}}\" on {{when}} ({{timezone}}).",
|
|
59
|
+
"variant": "body"
|
|
60
|
+
},
|
|
61
|
+
{
|
|
62
|
+
"block": "text",
|
|
63
|
+
"text": "{{booking.payment}}",
|
|
54
64
|
"variant": "body"
|
|
55
65
|
},
|
|
56
66
|
{
|
|
@@ -83,13 +93,18 @@
|
|
|
83
93
|
{
|
|
84
94
|
"name": "when",
|
|
85
95
|
"description": "Formatted date and time of the booking",
|
|
86
|
-
"sample": "
|
|
96
|
+
"sample": "Tuesday, June 2, 2026 at 9:00 AM"
|
|
97
|
+
},
|
|
98
|
+
{
|
|
99
|
+
"name": "timezone",
|
|
100
|
+
"description": "Timezone the time is shown in",
|
|
101
|
+
"sample": "America/Chicago"
|
|
87
102
|
}
|
|
88
103
|
],
|
|
89
104
|
"defaultBody": [
|
|
90
105
|
{
|
|
91
106
|
"block": "text",
|
|
92
|
-
"text": "Hi {{name}}, this is a reminder
|
|
107
|
+
"text": "Hi {{name}}, this is a reminder of your booking with {{host.businessName}}: \"{{service.name}}\" on {{when}} ({{timezone}}).",
|
|
93
108
|
"variant": "body"
|
|
94
109
|
}
|
|
95
110
|
],
|
|
@@ -118,6 +133,11 @@
|
|
|
118
133
|
"name": "order.ref",
|
|
119
134
|
"description": "Order reference id",
|
|
120
135
|
"sample": "cs_test_123"
|
|
136
|
+
},
|
|
137
|
+
{
|
|
138
|
+
"name": "store.receiptFooter",
|
|
139
|
+
"description": "The Receipt footer from the store settings; empty when none is set",
|
|
140
|
+
"sample": "Returns are accepted within 30 days."
|
|
121
141
|
}
|
|
122
142
|
],
|
|
123
143
|
"defaultBody": [
|
|
@@ -126,6 +146,11 @@
|
|
|
126
146
|
"text": "Thanks for your purchase!",
|
|
127
147
|
"variant": "heading"
|
|
128
148
|
},
|
|
149
|
+
{
|
|
150
|
+
"block": "text",
|
|
151
|
+
"text": "Here is the receipt for your order from {{host.businessName}}.",
|
|
152
|
+
"variant": "body"
|
|
153
|
+
},
|
|
129
154
|
{
|
|
130
155
|
"block": "text",
|
|
131
156
|
"text": "{{order.summary}}",
|
|
@@ -133,7 +158,12 @@
|
|
|
133
158
|
},
|
|
134
159
|
{
|
|
135
160
|
"block": "text",
|
|
136
|
-
"text": "Total: {{order.total}}",
|
|
161
|
+
"text": "Total charged: {{order.total}}",
|
|
162
|
+
"variant": "body"
|
|
163
|
+
},
|
|
164
|
+
{
|
|
165
|
+
"block": "text",
|
|
166
|
+
"text": "{{store.receiptFooter}}",
|
|
137
167
|
"variant": "body"
|
|
138
168
|
},
|
|
139
169
|
{
|
|
@@ -229,9 +259,14 @@
|
|
|
229
259
|
},
|
|
230
260
|
{
|
|
231
261
|
"name": "reservation.paid",
|
|
232
|
-
"description": "
|
|
262
|
+
"description": "What the guest was charged today, lodging tax included; a charge that carried lodging tax names it, as in “$254.40, including $14.40 lodging tax”",
|
|
233
263
|
"sample": "$240.00"
|
|
234
264
|
},
|
|
265
|
+
{
|
|
266
|
+
"name": "reservation.balance",
|
|
267
|
+
"description": "What is still owed for the stay and where it is paid, as a sentence; empty when the stay is paid in full",
|
|
268
|
+
"sample": "Still to pay: $360.00, at the property. It has not been charged."
|
|
269
|
+
},
|
|
235
270
|
{
|
|
236
271
|
"name": "reservation.ref",
|
|
237
272
|
"description": "Reservation reference id",
|
|
@@ -246,7 +281,7 @@
|
|
|
246
281
|
},
|
|
247
282
|
{
|
|
248
283
|
"block": "text",
|
|
249
|
-
"text": "Your stay is confirmed
|
|
284
|
+
"text": "Your stay at {{host.businessName}} is confirmed.",
|
|
250
285
|
"variant": "body"
|
|
251
286
|
},
|
|
252
287
|
{
|
|
@@ -264,6 +299,11 @@
|
|
|
264
299
|
"text": "Paid today: {{reservation.paid}}",
|
|
265
300
|
"variant": "body"
|
|
266
301
|
},
|
|
302
|
+
{
|
|
303
|
+
"block": "text",
|
|
304
|
+
"text": "{{reservation.balance}}",
|
|
305
|
+
"variant": "body"
|
|
306
|
+
},
|
|
267
307
|
{
|
|
268
308
|
"block": "text",
|
|
269
309
|
"text": "Reference: {{reservation.ref}}",
|
|
@@ -279,7 +319,7 @@
|
|
|
279
319
|
"pluginId": "commerce",
|
|
280
320
|
"plugin": "Commerce",
|
|
281
321
|
"control": "besigner",
|
|
282
|
-
"defaultSubject": "Your gift card",
|
|
322
|
+
"defaultSubject": "Your gift card for {{host.businessName}}",
|
|
283
323
|
"mergeTokens": [
|
|
284
324
|
{
|
|
285
325
|
"name": "giftcard.code",
|
|
@@ -290,6 +330,11 @@
|
|
|
290
330
|
"name": "giftcard.value",
|
|
291
331
|
"description": "The gift card value",
|
|
292
332
|
"sample": "$25.00"
|
|
333
|
+
},
|
|
334
|
+
{
|
|
335
|
+
"name": "giftcard.note",
|
|
336
|
+
"description": "The note written when the card was issued by hand; empty for a card bought at checkout",
|
|
337
|
+
"sample": "Happy birthday, Sam!"
|
|
293
338
|
}
|
|
294
339
|
],
|
|
295
340
|
"defaultBody": [
|
|
@@ -300,18 +345,28 @@
|
|
|
300
345
|
},
|
|
301
346
|
{
|
|
302
347
|
"block": "text",
|
|
303
|
-
"text": "
|
|
348
|
+
"text": "You have a {{giftcard.value}} gift card for {{host.businessName}}.",
|
|
304
349
|
"variant": "body"
|
|
305
350
|
},
|
|
306
351
|
{
|
|
307
352
|
"block": "text",
|
|
308
|
-
"text": "
|
|
353
|
+
"text": "{{giftcard.note}}",
|
|
309
354
|
"variant": "body"
|
|
310
355
|
},
|
|
311
356
|
{
|
|
312
357
|
"block": "text",
|
|
313
|
-
"text": "
|
|
358
|
+
"text": "Gift card code: {{giftcard.code}}",
|
|
314
359
|
"variant": "body"
|
|
360
|
+
},
|
|
361
|
+
{
|
|
362
|
+
"block": "text",
|
|
363
|
+
"text": "Enter the code at checkout on {{host.url}} to use its balance.",
|
|
364
|
+
"variant": "body"
|
|
365
|
+
},
|
|
366
|
+
{
|
|
367
|
+
"block": "button",
|
|
368
|
+
"label": "Visit {{host.businessName}}",
|
|
369
|
+
"href": "{{host.url}}"
|
|
315
370
|
}
|
|
316
371
|
],
|
|
317
372
|
"footerReason": "You’re receiving this because a gift card from {{host.businessName}} was sent to this address."
|
|
@@ -341,13 +396,13 @@
|
|
|
341
396
|
{
|
|
342
397
|
"name": "product.url",
|
|
343
398
|
"description": "Link to the product page",
|
|
344
|
-
"sample": "/products/house-blend"
|
|
399
|
+
"sample": "https://shop.example.com/products/house-blend"
|
|
345
400
|
}
|
|
346
401
|
],
|
|
347
402
|
"defaultBody": [
|
|
348
403
|
{
|
|
349
404
|
"block": "text",
|
|
350
|
-
"text": "{{product.name}} is
|
|
405
|
+
"text": "{{product.name}} is back in stock at {{host.businessName}}.",
|
|
351
406
|
"variant": "body"
|
|
352
407
|
},
|
|
353
408
|
{
|
|
@@ -377,7 +432,7 @@
|
|
|
377
432
|
"defaultBody": [
|
|
378
433
|
{
|
|
379
434
|
"block": "text",
|
|
380
|
-
"text": "
|
|
435
|
+
"text": "You left items in your cart at {{host.businessName}}. Pick up where you left off.",
|
|
381
436
|
"variant": "body"
|
|
382
437
|
},
|
|
383
438
|
{
|
|
@@ -387,7 +442,7 @@
|
|
|
387
442
|
},
|
|
388
443
|
{
|
|
389
444
|
"block": "text",
|
|
390
|
-
"text": "
|
|
445
|
+
"text": "Nothing in your cart is held for you.",
|
|
391
446
|
"variant": "caption"
|
|
392
447
|
}
|
|
393
448
|
],
|
|
@@ -509,7 +564,7 @@
|
|
|
509
564
|
},
|
|
510
565
|
{
|
|
511
566
|
"block": "text",
|
|
512
|
-
"text": "An administrator of {{site.name}} set a new password on your account
|
|
567
|
+
"text": "An administrator of {{site.name}} set a new password on your account and signed you out on every device. To sign back in, get the new password from them, or choose \"Forgot password?\" on the sign-in page to set your own.",
|
|
513
568
|
"variant": "body"
|
|
514
569
|
},
|
|
515
570
|
{
|
|
@@ -537,7 +592,7 @@
|
|
|
537
592
|
{
|
|
538
593
|
"name": "stream.name",
|
|
539
594
|
"description": "What they signed up for",
|
|
540
|
-
"sample": "
|
|
595
|
+
"sample": "Newsletter"
|
|
541
596
|
},
|
|
542
597
|
{
|
|
543
598
|
"name": "confirmUrl",
|
|
@@ -553,7 +608,7 @@
|
|
|
553
608
|
},
|
|
554
609
|
{
|
|
555
610
|
"block": "text",
|
|
556
|
-
"text": "Please confirm that you want to
|
|
611
|
+
"text": "Please confirm that you want to get {{stream.name}} emails from {{host.businessName}} at this address.",
|
|
557
612
|
"variant": "body"
|
|
558
613
|
},
|
|
559
614
|
{
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../../../../../libs/shared/util/email/src/lib/tenant-emails.generated.ts"],"sourcesContent":["/**\n * GENERATED FILE — do not edit. Regenerate with:\n * node tools/scripts/generate-plugin-manifests.mjs\n *\n * The emails sites send their own customers (AGL-3080): what each plugin's\n * `tenantEmails` entry returned when this file was generated, in config\n * order. `TENANT_EMAILS` in `tenant-email-catalog.ts` is this list.\n * Source of truth: plugins.config.json and the entries it names.\n */\n\nimport type { TenantEmailEntry } from './tenant-email-catalog'\n\nexport const PLUGIN_TENANT_EMAILS: readonly TenantEmailEntry[] = [\n {\n \"key\": \"booking-confirmed\",\n \"name\": \"Booking confirmed\",\n \"description\": \"Confirms a booking to the customer, for paid and free services.\",\n \"pluginId\": \"bookings\",\n \"plugin\": \"Bookings\",\n \"control\": \"besigner\",\n \"defaultSubject\": \"Booking confirmed: {{service.name}}\",\n \"mergeTokens\": [\n {\n \"name\": \"name\",\n \"description\": \"The customer's name\",\n \"sample\": \"Alex\"\n },\n {\n \"name\": \"service.name\",\n \"description\": \"The booked service\",\n \"sample\": \"Consultation\"\n },\n {\n \"name\": \"when\",\n \"description\": \"Formatted date and time of the booking\",\n \"sample\": \"Monday, June 1, 2026 at 9:00 AM\"\n },\n {\n \"name\": \"timezone\",\n \"description\": \"Timezone the time is shown in\",\n \"sample\": \"UTC\"\n },\n {\n \"name\": \"booking.ref\",\n \"description\": \"Booking reference id\",\n \"sample\": \"bk_123\"\n }\n ],\n \"defaultBody\": [\n {\n \"block\": \"text\",\n \"text\": \"Booking confirmed\",\n \"variant\": \"heading\"\n },\n {\n \"block\": \"text\",\n \"text\": \"Hi {{name}}, your booking for \\\"{{service.name}}\\\" is confirmed for {{when}} ({{timezone}}).\",\n \"variant\": \"body\"\n },\n {\n \"block\": \"text\",\n \"text\": \"Reference: {{booking.ref}}\",\n \"variant\": \"caption\"\n }\n ],\n \"footerReason\": \"You’re receiving this because you booked with {{host.businessName}}.\"\n },\n {\n \"key\": \"booking-reminder\",\n \"name\": \"Booking reminder\",\n \"description\": \"Reminds the customer of an upcoming booking.\",\n \"pluginId\": \"bookings\",\n \"plugin\": \"Bookings\",\n \"control\": \"besigner\",\n \"defaultSubject\": \"Reminder: {{service.name}} is coming up\",\n \"mergeTokens\": [\n {\n \"name\": \"name\",\n \"description\": \"The customer's name\",\n \"sample\": \"Alex\"\n },\n {\n \"name\": \"service.name\",\n \"description\": \"The booked service\",\n \"sample\": \"Consultation\"\n },\n {\n \"name\": \"when\",\n \"description\": \"Formatted date and time of the booking\",\n \"sample\": \"Tomorrow at 9:00 AM\"\n }\n ],\n \"defaultBody\": [\n {\n \"block\": \"text\",\n \"text\": \"Hi {{name}}, this is a reminder that \\\"{{service.name}}\\\" is coming up on {{when}}.\",\n \"variant\": \"body\"\n }\n ],\n \"footerReason\": \"You’re receiving this because you have a booking with {{host.businessName}}.\"\n },\n {\n \"key\": \"order-receipt\",\n \"name\": \"Order receipt\",\n \"description\": \"Sent to the buyer after a successful order or checkout.\",\n \"pluginId\": \"commerce\",\n \"plugin\": \"Commerce\",\n \"control\": \"besigner\",\n \"defaultSubject\": \"Receipt for your order\",\n \"mergeTokens\": [\n {\n \"name\": \"order.summary\",\n \"description\": \"The ordered items, one per line (with any license/download links)\",\n \"sample\": \"House Blend × 2 — $24.00\"\n },\n {\n \"name\": \"order.total\",\n \"description\": \"Order total\",\n \"sample\": \"$24.00\"\n },\n {\n \"name\": \"order.ref\",\n \"description\": \"Order reference id\",\n \"sample\": \"cs_test_123\"\n }\n ],\n \"defaultBody\": [\n {\n \"block\": \"text\",\n \"text\": \"Thanks for your purchase!\",\n \"variant\": \"heading\"\n },\n {\n \"block\": \"text\",\n \"text\": \"{{order.summary}}\",\n \"variant\": \"body\"\n },\n {\n \"block\": \"text\",\n \"text\": \"Total: {{order.total}}\",\n \"variant\": \"body\"\n },\n {\n \"block\": \"text\",\n \"text\": \"Order reference: {{order.ref}}\",\n \"variant\": \"caption\"\n }\n ],\n \"footerReason\": \"You’re receiving this because you placed an order with {{host.businessName}}.\"\n },\n {\n \"key\": \"sale-notification\",\n \"name\": \"New sale\",\n \"description\": \"Notifies the seller when an order is placed.\",\n \"pluginId\": \"commerce\",\n \"plugin\": \"Commerce\",\n \"control\": \"besigner\",\n \"defaultSubject\": \"New order on {{site.name}}\",\n \"mergeTokens\": [\n {\n \"name\": \"site.name\",\n \"description\": \"The site the sale happened on\",\n \"sample\": \"Northwind Coffee\"\n },\n {\n \"name\": \"order.summary\",\n \"description\": \"The ordered items\",\n \"sample\": \"House Blend — $12.00\"\n },\n {\n \"name\": \"order.total\",\n \"description\": \"Order total\",\n \"sample\": \"$12.00\"\n },\n {\n \"name\": \"buyer.email\",\n \"description\": \"The buyer's email\",\n \"sample\": \"buyer@example.com\"\n },\n {\n \"name\": \"order.ref\",\n \"description\": \"Order reference id\",\n \"sample\": \"cs_test_123\"\n }\n ],\n \"defaultBody\": [\n {\n \"block\": \"text\",\n \"text\": \"You made a sale\",\n \"variant\": \"heading\"\n },\n {\n \"block\": \"text\",\n \"text\": \"A new order came in on {{site.name}}.\",\n \"variant\": \"body\"\n },\n {\n \"block\": \"text\",\n \"text\": \"{{order.summary}}\",\n \"variant\": \"body\"\n },\n {\n \"block\": \"text\",\n \"text\": \"Total: {{order.total}}\",\n \"variant\": \"body\"\n },\n {\n \"block\": \"text\",\n \"text\": \"Buyer: {{buyer.email}} · Order {{order.ref}}\",\n \"variant\": \"caption\"\n }\n ],\n \"footerReason\": \"You’re receiving this because you manage {{host.businessName}}.\"\n },\n {\n \"key\": \"reservation-confirmed\",\n \"name\": \"Reservation confirmed\",\n \"description\": \"Confirms a paid reservation to the customer.\",\n \"pluginId\": \"commerce\",\n \"plugin\": \"Commerce\",\n \"control\": \"besigner\",\n \"defaultSubject\": \"Reservation confirmed\",\n \"mergeTokens\": [\n {\n \"name\": \"reservation.checkIn\",\n \"description\": \"Check-in date\",\n \"sample\": \"Mon, 01 Jun 2026\"\n },\n {\n \"name\": \"reservation.nights\",\n \"description\": \"Number of nights\",\n \"sample\": \"2\"\n },\n {\n \"name\": \"reservation.paid\",\n \"description\": \"Amount paid today\",\n \"sample\": \"$240.00\"\n },\n {\n \"name\": \"reservation.ref\",\n \"description\": \"Reservation reference id\",\n \"sample\": \"resv_123\"\n }\n ],\n \"defaultBody\": [\n {\n \"block\": \"text\",\n \"text\": \"Reservation confirmed\",\n \"variant\": \"heading\"\n },\n {\n \"block\": \"text\",\n \"text\": \"Your stay is confirmed!\",\n \"variant\": \"body\"\n },\n {\n \"block\": \"text\",\n \"text\": \"Check-in: {{reservation.checkIn}}\",\n \"variant\": \"body\"\n },\n {\n \"block\": \"text\",\n \"text\": \"Nights: {{reservation.nights}}\",\n \"variant\": \"body\"\n },\n {\n \"block\": \"text\",\n \"text\": \"Paid today: {{reservation.paid}}\",\n \"variant\": \"body\"\n },\n {\n \"block\": \"text\",\n \"text\": \"Reference: {{reservation.ref}}\",\n \"variant\": \"caption\"\n }\n ],\n \"footerReason\": \"You’re receiving this because you made a reservation with {{host.businessName}}.\"\n },\n {\n \"key\": \"gift-card\",\n \"name\": \"Gift card delivery\",\n \"description\": \"Delivers a purchased gift card to its recipient.\",\n \"pluginId\": \"commerce\",\n \"plugin\": \"Commerce\",\n \"control\": \"besigner\",\n \"defaultSubject\": \"Your gift card\",\n \"mergeTokens\": [\n {\n \"name\": \"giftcard.code\",\n \"description\": \"The gift card code\",\n \"sample\": \"GC-ABC123DEF456\"\n },\n {\n \"name\": \"giftcard.value\",\n \"description\": \"The gift card value\",\n \"sample\": \"$25.00\"\n }\n ],\n \"defaultBody\": [\n {\n \"block\": \"text\",\n \"text\": \"Your gift card\",\n \"variant\": \"heading\"\n },\n {\n \"block\": \"text\",\n \"text\": \"Gift card code: {{giftcard.code}}\",\n \"variant\": \"body\"\n },\n {\n \"block\": \"text\",\n \"text\": \"Value: {{giftcard.value}}\",\n \"variant\": \"body\"\n },\n {\n \"block\": \"text\",\n \"text\": \"Enter it at checkout to apply the balance.\",\n \"variant\": \"body\"\n }\n ],\n \"footerReason\": \"You’re receiving this because a gift card from {{host.businessName}} was sent to this address.\"\n },\n {\n \"key\": \"supplier-fulfillment\",\n \"name\": \"Supplier fulfillment\",\n \"description\": \"Tells a dropship supplier there is a new order to fulfill.\",\n \"pluginId\": \"commerce\",\n \"plugin\": \"Commerce\",\n \"control\": \"fixed\"\n },\n {\n \"key\": \"back-in-stock\",\n \"name\": \"Back in stock\",\n \"description\": \"Tells a customer a product they watched is available again.\",\n \"pluginId\": \"commerce\",\n \"plugin\": \"Commerce\",\n \"control\": \"besigner\",\n \"defaultSubject\": \"Back in stock: {{product.name}}\",\n \"mergeTokens\": [\n {\n \"name\": \"product.name\",\n \"description\": \"The product that restocked\",\n \"sample\": \"House Blend\"\n },\n {\n \"name\": \"product.url\",\n \"description\": \"Link to the product page\",\n \"sample\": \"/products/house-blend\"\n }\n ],\n \"defaultBody\": [\n {\n \"block\": \"text\",\n \"text\": \"{{product.name}} is available again — grab it before it sells out.\",\n \"variant\": \"body\"\n },\n {\n \"block\": \"button\",\n \"label\": \"View product\",\n \"href\": \"{{product.url}}\"\n }\n ],\n \"footerReason\": \"You’re receiving this because you asked {{host.businessName}} to tell you when this was back.\"\n },\n {\n \"key\": \"abandoned-cart\",\n \"name\": \"Abandoned cart\",\n \"description\": \"Reminds a shopper of items left in their cart.\",\n \"requiresFeature\": \"abandonedCart\",\n \"pluginId\": \"commerce\",\n \"plugin\": \"Commerce\",\n \"control\": \"besigner\",\n \"defaultSubject\": \"You left something in your cart\",\n \"mergeTokens\": [\n {\n \"name\": \"cart.url\",\n \"description\": \"Link back to the shopper cart\",\n \"sample\": \"https://shop.example.com/cart\"\n }\n ],\n \"defaultBody\": [\n {\n \"block\": \"text\",\n \"text\": \"Your cart is still waiting — pick up where you left off.\",\n \"variant\": \"body\"\n },\n {\n \"block\": \"button\",\n \"label\": \"Return to cart\",\n \"href\": \"{{cart.url}}\"\n },\n {\n \"block\": \"text\",\n \"text\": \"Your items are held but not reserved, so they may sell out.\",\n \"variant\": \"caption\"\n }\n ],\n \"footerReason\": \"You’re receiving this because you started a checkout with {{host.businessName}}.\"\n },\n {\n \"key\": \"member-post\",\n \"name\": \"New member post\",\n \"description\": \"Notifies members when new members-only content is posted.\",\n \"pluginId\": \"commerce\",\n \"plugin\": \"Commerce\",\n \"control\": \"besigner\",\n \"defaultSubject\": \"{{post.title}}\",\n \"mergeTokens\": [\n {\n \"name\": \"post.title\",\n \"description\": \"The post’s title\",\n \"sample\": \"This month in the studio\"\n },\n {\n \"name\": \"post.body\",\n \"description\": \"The post, as its author wrote it\",\n \"sample\": \"Three new pieces are up for members first.\"\n }\n ],\n \"defaultBody\": [\n {\n \"block\": \"text\",\n \"text\": \"{{post.title}}\",\n \"variant\": \"heading\"\n },\n {\n \"block\": \"text\",\n \"text\": \"{{post.body}}\",\n \"variant\": \"body\"\n }\n ],\n \"footerReason\": \"You’re receiving this because you’re a member of {{host.businessName}}.\"\n },\n {\n \"key\": \"member-password-reset\",\n \"name\": \"Member password reset\",\n \"description\": \"Resets a site member's password — a store-member account, separate from a console login. Sent when the member asks, and when a site administrator starts a reset for them.\",\n \"pluginId\": \"commerce\",\n \"plugin\": \"Commerce\",\n \"control\": \"besigner\",\n \"defaultSubject\": \"Reset your {{site.name}} password\",\n \"mergeTokens\": [\n {\n \"name\": \"site.name\",\n \"description\": \"The site’s name\",\n \"sample\": \"Northwind Coffee\"\n },\n {\n \"name\": \"reset.intro\",\n \"description\": \"Who started the reset\",\n \"sample\": \"Someone asked to reset the password for your Northwind Coffee account.\"\n },\n {\n \"name\": \"resetUrl\",\n \"description\": \"The one-time reset link\",\n \"sample\": \"https://shop.example.com/recover?token=…\"\n },\n {\n \"name\": \"reset.note\",\n \"description\": \"How long the link lasts, and what to do if unexpected\",\n \"sample\": \"The link works once and expires in 1 hour. If you did not ask for this, you can safely ignore this email — your password is unchanged.\"\n }\n ],\n \"defaultBody\": [\n {\n \"block\": \"text\",\n \"text\": \"Reset your password\",\n \"variant\": \"heading\"\n },\n {\n \"block\": \"text\",\n \"text\": \"{{reset.intro}}\",\n \"variant\": \"body\"\n },\n {\n \"block\": \"button\",\n \"label\": \"Set a new password\",\n \"href\": \"{{resetUrl}}\"\n },\n {\n \"block\": \"text\",\n \"text\": \"{{reset.note}}\",\n \"variant\": \"caption\"\n }\n ],\n \"footerReason\": \"You’re receiving this because a password reset was started for your {{host.businessName}} account.\"\n },\n {\n \"key\": \"member-password-changed\",\n \"name\": \"Member password changed\",\n \"description\": \"Tells a site member that a site administrator set a new password on their account.\",\n \"pluginId\": \"commerce\",\n \"plugin\": \"Commerce\",\n \"control\": \"besigner\",\n \"defaultSubject\": \"Your {{site.name}} password was changed\",\n \"mergeTokens\": [\n {\n \"name\": \"site.name\",\n \"description\": \"The site’s name\",\n \"sample\": \"Northwind Coffee\"\n },\n {\n \"name\": \"signInUrl\",\n \"description\": \"Where the member signs back in\",\n \"sample\": \"https://shop.example.com\"\n }\n ],\n \"defaultBody\": [\n {\n \"block\": \"text\",\n \"text\": \"Your password was changed\",\n \"variant\": \"heading\"\n },\n {\n \"block\": \"text\",\n \"text\": \"An administrator of {{site.name}} set a new password on your account. You have been signed out on every device and will need the new password to sign back in.\",\n \"variant\": \"body\"\n },\n {\n \"block\": \"button\",\n \"label\": \"Sign in\",\n \"href\": \"{{signInUrl}}\"\n },\n {\n \"block\": \"text\",\n \"text\": \"If you did not expect this, contact the site owner.\",\n \"variant\": \"caption\"\n }\n ],\n \"footerReason\": \"You’re receiving this because the password on your {{host.businessName}} account was changed.\"\n },\n {\n \"key\": \"newsletter-confirmation\",\n \"name\": \"Subscription confirmation\",\n \"description\": \"Asks someone who signed up for a site’s emails to confirm the address before anything is sent to it.\",\n \"pluginId\": \"commerce\",\n \"plugin\": \"Commerce\",\n \"control\": \"besigner\",\n \"defaultSubject\": \"Confirm your subscription\",\n \"mergeTokens\": [\n {\n \"name\": \"stream.name\",\n \"description\": \"What they signed up for\",\n \"sample\": \"our newsletter\"\n },\n {\n \"name\": \"confirmUrl\",\n \"description\": \"The confirmation link\",\n \"sample\": \"https://shop.example.com/subscribe/confirm?token=…\"\n }\n ],\n \"defaultBody\": [\n {\n \"block\": \"text\",\n \"text\": \"Confirm your subscription\",\n \"variant\": \"heading\"\n },\n {\n \"block\": \"text\",\n \"text\": \"Please confirm that you want to receive {{stream.name}} at this address.\",\n \"variant\": \"body\"\n },\n {\n \"block\": \"button\",\n \"label\": \"Confirm my subscription\",\n \"href\": \"{{confirmUrl}}\"\n },\n {\n \"block\": \"text\",\n \"text\": \"The link works for three days. If you did not sign up, ignore this message — nothing will be sent.\",\n \"variant\": \"caption\"\n }\n ],\n \"footerReason\": \"You’re receiving this because this address was entered on {{host.businessName}}’s signup form.\"\n },\n {\n \"key\": \"campaign\",\n \"name\": \"Campaign broadcast\",\n \"description\": \"A campaign sent to the site's subscriber list.\",\n \"pluginId\": \"marketing\",\n \"plugin\": \"Marketing\",\n \"control\": \"external\",\n \"authoredIn\": \"Marketing → Campaigns\",\n \"footerReason\": \"You’re receiving this email from {{host.businessName}}.\"\n },\n {\n \"key\": \"workflow-email\",\n \"name\": \"Workflow email step\",\n \"description\": \"An email sent by a workflow's send-email action when its trigger fires.\",\n \"pluginId\": \"workflows\",\n \"plugin\": \"Workflows\",\n \"control\": \"external\",\n \"authoredIn\": \"the workflow that sends it\",\n \"footerReason\": \"You’re receiving this because you’re in touch with {{host.businessName}}.\"\n }\n]\n"],"names":["PLUGIN_TENANT_EMAILS"],"mappings":"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"}
|
|
1
|
+
{"version":3,"sources":["../../../../../../../libs/shared/util/email/src/lib/tenant-emails.generated.ts"],"sourcesContent":["/**\n * GENERATED FILE — do not edit. Regenerate with:\n * node tools/scripts/generate-plugin-manifests.mjs\n *\n * The emails sites send their own customers (AGL-3080): what each plugin's\n * `tenantEmails` entry returned when this file was generated, in config\n * order. `TENANT_EMAILS` in `tenant-email-catalog.ts` is this list.\n * Source of truth: plugins.config.json and the entries it names.\n */\n\nimport type { TenantEmailEntry } from './tenant-email-catalog'\n\nexport const PLUGIN_TENANT_EMAILS: readonly TenantEmailEntry[] = [\n {\n \"key\": \"booking-confirmed\",\n \"name\": \"Booking confirmed\",\n \"description\": \"Confirms a booking to the customer, for paid and free services.\",\n \"pluginId\": \"bookings\",\n \"plugin\": \"Bookings\",\n \"control\": \"besigner\",\n \"defaultSubject\": \"Booking confirmed: {{service.name}}\",\n \"mergeTokens\": [\n {\n \"name\": \"name\",\n \"description\": \"The customer's name\",\n \"sample\": \"Alex\"\n },\n {\n \"name\": \"service.name\",\n \"description\": \"The booked service\",\n \"sample\": \"Consultation\"\n },\n {\n \"name\": \"when\",\n \"description\": \"Formatted date and time of the booking\",\n \"sample\": \"Monday, June 1, 2026 at 9:00 AM\"\n },\n {\n \"name\": \"timezone\",\n \"description\": \"Timezone the time is shown in\",\n \"sample\": \"America/Chicago\"\n },\n {\n \"name\": \"booking.payment\",\n \"description\": \"What a paid booking charged, as a sentence; empty for a free booking\",\n \"sample\": \"You paid $95.00.\"\n },\n {\n \"name\": \"booking.ref\",\n \"description\": \"Booking reference id\",\n \"sample\": \"bk_123\"\n }\n ],\n \"defaultBody\": [\n {\n \"block\": \"text\",\n \"text\": \"Booking confirmed\",\n \"variant\": \"heading\"\n },\n {\n \"block\": \"text\",\n \"text\": \"Hi {{name}}, your booking with {{host.businessName}} is confirmed: \\\"{{service.name}}\\\" on {{when}} ({{timezone}}).\",\n \"variant\": \"body\"\n },\n {\n \"block\": \"text\",\n \"text\": \"{{booking.payment}}\",\n \"variant\": \"body\"\n },\n {\n \"block\": \"text\",\n \"text\": \"Reference: {{booking.ref}}\",\n \"variant\": \"caption\"\n }\n ],\n \"footerReason\": \"You’re receiving this because you booked with {{host.businessName}}.\"\n },\n {\n \"key\": \"booking-reminder\",\n \"name\": \"Booking reminder\",\n \"description\": \"Reminds the customer of an upcoming booking.\",\n \"pluginId\": \"bookings\",\n \"plugin\": \"Bookings\",\n \"control\": \"besigner\",\n \"defaultSubject\": \"Reminder: {{service.name}} is coming up\",\n \"mergeTokens\": [\n {\n \"name\": \"name\",\n \"description\": \"The customer's name\",\n \"sample\": \"Alex\"\n },\n {\n \"name\": \"service.name\",\n \"description\": \"The booked service\",\n \"sample\": \"Consultation\"\n },\n {\n \"name\": \"when\",\n \"description\": \"Formatted date and time of the booking\",\n \"sample\": \"Tuesday, June 2, 2026 at 9:00 AM\"\n },\n {\n \"name\": \"timezone\",\n \"description\": \"Timezone the time is shown in\",\n \"sample\": \"America/Chicago\"\n }\n ],\n \"defaultBody\": [\n {\n \"block\": \"text\",\n \"text\": \"Hi {{name}}, this is a reminder of your booking with {{host.businessName}}: \\\"{{service.name}}\\\" on {{when}} ({{timezone}}).\",\n \"variant\": \"body\"\n }\n ],\n \"footerReason\": \"You’re receiving this because you have a booking with {{host.businessName}}.\"\n },\n {\n \"key\": \"order-receipt\",\n \"name\": \"Order receipt\",\n \"description\": \"Sent to the buyer after a successful order or checkout.\",\n \"pluginId\": \"commerce\",\n \"plugin\": \"Commerce\",\n \"control\": \"besigner\",\n \"defaultSubject\": \"Receipt for your order\",\n \"mergeTokens\": [\n {\n \"name\": \"order.summary\",\n \"description\": \"The ordered items, one per line (with any license/download links)\",\n \"sample\": \"House Blend × 2 — $24.00\"\n },\n {\n \"name\": \"order.total\",\n \"description\": \"Order total\",\n \"sample\": \"$24.00\"\n },\n {\n \"name\": \"order.ref\",\n \"description\": \"Order reference id\",\n \"sample\": \"cs_test_123\"\n },\n {\n \"name\": \"store.receiptFooter\",\n \"description\": \"The Receipt footer from the store settings; empty when none is set\",\n \"sample\": \"Returns are accepted within 30 days.\"\n }\n ],\n \"defaultBody\": [\n {\n \"block\": \"text\",\n \"text\": \"Thanks for your purchase!\",\n \"variant\": \"heading\"\n },\n {\n \"block\": \"text\",\n \"text\": \"Here is the receipt for your order from {{host.businessName}}.\",\n \"variant\": \"body\"\n },\n {\n \"block\": \"text\",\n \"text\": \"{{order.summary}}\",\n \"variant\": \"body\"\n },\n {\n \"block\": \"text\",\n \"text\": \"Total charged: {{order.total}}\",\n \"variant\": \"body\"\n },\n {\n \"block\": \"text\",\n \"text\": \"{{store.receiptFooter}}\",\n \"variant\": \"body\"\n },\n {\n \"block\": \"text\",\n \"text\": \"Order reference: {{order.ref}}\",\n \"variant\": \"caption\"\n }\n ],\n \"footerReason\": \"You’re receiving this because you placed an order with {{host.businessName}}.\"\n },\n {\n \"key\": \"sale-notification\",\n \"name\": \"New sale\",\n \"description\": \"Notifies the seller when an order is placed.\",\n \"pluginId\": \"commerce\",\n \"plugin\": \"Commerce\",\n \"control\": \"besigner\",\n \"defaultSubject\": \"New order on {{site.name}}\",\n \"mergeTokens\": [\n {\n \"name\": \"site.name\",\n \"description\": \"The site the sale happened on\",\n \"sample\": \"Northwind Coffee\"\n },\n {\n \"name\": \"order.summary\",\n \"description\": \"The ordered items\",\n \"sample\": \"House Blend — $12.00\"\n },\n {\n \"name\": \"order.total\",\n \"description\": \"Order total\",\n \"sample\": \"$12.00\"\n },\n {\n \"name\": \"buyer.email\",\n \"description\": \"The buyer's email\",\n \"sample\": \"buyer@example.com\"\n },\n {\n \"name\": \"order.ref\",\n \"description\": \"Order reference id\",\n \"sample\": \"cs_test_123\"\n }\n ],\n \"defaultBody\": [\n {\n \"block\": \"text\",\n \"text\": \"You made a sale\",\n \"variant\": \"heading\"\n },\n {\n \"block\": \"text\",\n \"text\": \"A new order came in on {{site.name}}.\",\n \"variant\": \"body\"\n },\n {\n \"block\": \"text\",\n \"text\": \"{{order.summary}}\",\n \"variant\": \"body\"\n },\n {\n \"block\": \"text\",\n \"text\": \"Total: {{order.total}}\",\n \"variant\": \"body\"\n },\n {\n \"block\": \"text\",\n \"text\": \"Buyer: {{buyer.email}} · Order {{order.ref}}\",\n \"variant\": \"caption\"\n }\n ],\n \"footerReason\": \"You’re receiving this because you manage {{host.businessName}}.\"\n },\n {\n \"key\": \"reservation-confirmed\",\n \"name\": \"Reservation confirmed\",\n \"description\": \"Confirms a paid reservation to the customer.\",\n \"pluginId\": \"commerce\",\n \"plugin\": \"Commerce\",\n \"control\": \"besigner\",\n \"defaultSubject\": \"Reservation confirmed\",\n \"mergeTokens\": [\n {\n \"name\": \"reservation.checkIn\",\n \"description\": \"Check-in date\",\n \"sample\": \"Mon, 01 Jun 2026\"\n },\n {\n \"name\": \"reservation.nights\",\n \"description\": \"Number of nights\",\n \"sample\": \"2\"\n },\n {\n \"name\": \"reservation.paid\",\n \"description\": \"What the guest was charged today, lodging tax included; a charge that carried lodging tax names it, as in “$254.40, including $14.40 lodging tax”\",\n \"sample\": \"$240.00\"\n },\n {\n \"name\": \"reservation.balance\",\n \"description\": \"What is still owed for the stay and where it is paid, as a sentence; empty when the stay is paid in full\",\n \"sample\": \"Still to pay: $360.00, at the property. It has not been charged.\"\n },\n {\n \"name\": \"reservation.ref\",\n \"description\": \"Reservation reference id\",\n \"sample\": \"resv_123\"\n }\n ],\n \"defaultBody\": [\n {\n \"block\": \"text\",\n \"text\": \"Reservation confirmed\",\n \"variant\": \"heading\"\n },\n {\n \"block\": \"text\",\n \"text\": \"Your stay at {{host.businessName}} is confirmed.\",\n \"variant\": \"body\"\n },\n {\n \"block\": \"text\",\n \"text\": \"Check-in: {{reservation.checkIn}}\",\n \"variant\": \"body\"\n },\n {\n \"block\": \"text\",\n \"text\": \"Nights: {{reservation.nights}}\",\n \"variant\": \"body\"\n },\n {\n \"block\": \"text\",\n \"text\": \"Paid today: {{reservation.paid}}\",\n \"variant\": \"body\"\n },\n {\n \"block\": \"text\",\n \"text\": \"{{reservation.balance}}\",\n \"variant\": \"body\"\n },\n {\n \"block\": \"text\",\n \"text\": \"Reference: {{reservation.ref}}\",\n \"variant\": \"caption\"\n }\n ],\n \"footerReason\": \"You’re receiving this because you made a reservation with {{host.businessName}}.\"\n },\n {\n \"key\": \"gift-card\",\n \"name\": \"Gift card delivery\",\n \"description\": \"Delivers a purchased gift card to its recipient.\",\n \"pluginId\": \"commerce\",\n \"plugin\": \"Commerce\",\n \"control\": \"besigner\",\n \"defaultSubject\": \"Your gift card for {{host.businessName}}\",\n \"mergeTokens\": [\n {\n \"name\": \"giftcard.code\",\n \"description\": \"The gift card code\",\n \"sample\": \"GC-ABC123DEF456\"\n },\n {\n \"name\": \"giftcard.value\",\n \"description\": \"The gift card value\",\n \"sample\": \"$25.00\"\n },\n {\n \"name\": \"giftcard.note\",\n \"description\": \"The note written when the card was issued by hand; empty for a card bought at checkout\",\n \"sample\": \"Happy birthday, Sam!\"\n }\n ],\n \"defaultBody\": [\n {\n \"block\": \"text\",\n \"text\": \"Your gift card\",\n \"variant\": \"heading\"\n },\n {\n \"block\": \"text\",\n \"text\": \"You have a {{giftcard.value}} gift card for {{host.businessName}}.\",\n \"variant\": \"body\"\n },\n {\n \"block\": \"text\",\n \"text\": \"{{giftcard.note}}\",\n \"variant\": \"body\"\n },\n {\n \"block\": \"text\",\n \"text\": \"Gift card code: {{giftcard.code}}\",\n \"variant\": \"body\"\n },\n {\n \"block\": \"text\",\n \"text\": \"Enter the code at checkout on {{host.url}} to use its balance.\",\n \"variant\": \"body\"\n },\n {\n \"block\": \"button\",\n \"label\": \"Visit {{host.businessName}}\",\n \"href\": \"{{host.url}}\"\n }\n ],\n \"footerReason\": \"You’re receiving this because a gift card from {{host.businessName}} was sent to this address.\"\n },\n {\n \"key\": \"supplier-fulfillment\",\n \"name\": \"Supplier fulfillment\",\n \"description\": \"Tells a dropship supplier there is a new order to fulfill.\",\n \"pluginId\": \"commerce\",\n \"plugin\": \"Commerce\",\n \"control\": \"fixed\"\n },\n {\n \"key\": \"back-in-stock\",\n \"name\": \"Back in stock\",\n \"description\": \"Tells a customer a product they watched is available again.\",\n \"pluginId\": \"commerce\",\n \"plugin\": \"Commerce\",\n \"control\": \"besigner\",\n \"defaultSubject\": \"Back in stock: {{product.name}}\",\n \"mergeTokens\": [\n {\n \"name\": \"product.name\",\n \"description\": \"The product that restocked\",\n \"sample\": \"House Blend\"\n },\n {\n \"name\": \"product.url\",\n \"description\": \"Link to the product page\",\n \"sample\": \"https://shop.example.com/products/house-blend\"\n }\n ],\n \"defaultBody\": [\n {\n \"block\": \"text\",\n \"text\": \"{{product.name}} is back in stock at {{host.businessName}}.\",\n \"variant\": \"body\"\n },\n {\n \"block\": \"button\",\n \"label\": \"View product\",\n \"href\": \"{{product.url}}\"\n }\n ],\n \"footerReason\": \"You’re receiving this because you asked {{host.businessName}} to tell you when this was back.\"\n },\n {\n \"key\": \"abandoned-cart\",\n \"name\": \"Abandoned cart\",\n \"description\": \"Reminds a shopper of items left in their cart.\",\n \"requiresFeature\": \"abandonedCart\",\n \"pluginId\": \"commerce\",\n \"plugin\": \"Commerce\",\n \"control\": \"besigner\",\n \"defaultSubject\": \"You left something in your cart\",\n \"mergeTokens\": [\n {\n \"name\": \"cart.url\",\n \"description\": \"Link back to the shopper cart\",\n \"sample\": \"https://shop.example.com/cart\"\n }\n ],\n \"defaultBody\": [\n {\n \"block\": \"text\",\n \"text\": \"You left items in your cart at {{host.businessName}}. Pick up where you left off.\",\n \"variant\": \"body\"\n },\n {\n \"block\": \"button\",\n \"label\": \"Return to cart\",\n \"href\": \"{{cart.url}}\"\n },\n {\n \"block\": \"text\",\n \"text\": \"Nothing in your cart is held for you.\",\n \"variant\": \"caption\"\n }\n ],\n \"footerReason\": \"You’re receiving this because you started a checkout with {{host.businessName}}.\"\n },\n {\n \"key\": \"member-post\",\n \"name\": \"New member post\",\n \"description\": \"Notifies members when new members-only content is posted.\",\n \"pluginId\": \"commerce\",\n \"plugin\": \"Commerce\",\n \"control\": \"besigner\",\n \"defaultSubject\": \"{{post.title}}\",\n \"mergeTokens\": [\n {\n \"name\": \"post.title\",\n \"description\": \"The post’s title\",\n \"sample\": \"This month in the studio\"\n },\n {\n \"name\": \"post.body\",\n \"description\": \"The post, as its author wrote it\",\n \"sample\": \"Three new pieces are up for members first.\"\n }\n ],\n \"defaultBody\": [\n {\n \"block\": \"text\",\n \"text\": \"{{post.title}}\",\n \"variant\": \"heading\"\n },\n {\n \"block\": \"text\",\n \"text\": \"{{post.body}}\",\n \"variant\": \"body\"\n }\n ],\n \"footerReason\": \"You’re receiving this because you’re a member of {{host.businessName}}.\"\n },\n {\n \"key\": \"member-password-reset\",\n \"name\": \"Member password reset\",\n \"description\": \"Resets a site member's password — a store-member account, separate from a console login. Sent when the member asks, and when a site administrator starts a reset for them.\",\n \"pluginId\": \"commerce\",\n \"plugin\": \"Commerce\",\n \"control\": \"besigner\",\n \"defaultSubject\": \"Reset your {{site.name}} password\",\n \"mergeTokens\": [\n {\n \"name\": \"site.name\",\n \"description\": \"The site’s name\",\n \"sample\": \"Northwind Coffee\"\n },\n {\n \"name\": \"reset.intro\",\n \"description\": \"Who started the reset\",\n \"sample\": \"Someone asked to reset the password for your Northwind Coffee account.\"\n },\n {\n \"name\": \"resetUrl\",\n \"description\": \"The one-time reset link\",\n \"sample\": \"https://shop.example.com/recover?token=…\"\n },\n {\n \"name\": \"reset.note\",\n \"description\": \"How long the link lasts, and what to do if unexpected\",\n \"sample\": \"The link works once and expires in 1 hour. If you did not ask for this, you can safely ignore this email — your password is unchanged.\"\n }\n ],\n \"defaultBody\": [\n {\n \"block\": \"text\",\n \"text\": \"Reset your password\",\n \"variant\": \"heading\"\n },\n {\n \"block\": \"text\",\n \"text\": \"{{reset.intro}}\",\n \"variant\": \"body\"\n },\n {\n \"block\": \"button\",\n \"label\": \"Set a new password\",\n \"href\": \"{{resetUrl}}\"\n },\n {\n \"block\": \"text\",\n \"text\": \"{{reset.note}}\",\n \"variant\": \"caption\"\n }\n ],\n \"footerReason\": \"You’re receiving this because a password reset was started for your {{host.businessName}} account.\"\n },\n {\n \"key\": \"member-password-changed\",\n \"name\": \"Member password changed\",\n \"description\": \"Tells a site member that a site administrator set a new password on their account.\",\n \"pluginId\": \"commerce\",\n \"plugin\": \"Commerce\",\n \"control\": \"besigner\",\n \"defaultSubject\": \"Your {{site.name}} password was changed\",\n \"mergeTokens\": [\n {\n \"name\": \"site.name\",\n \"description\": \"The site’s name\",\n \"sample\": \"Northwind Coffee\"\n },\n {\n \"name\": \"signInUrl\",\n \"description\": \"Where the member signs back in\",\n \"sample\": \"https://shop.example.com\"\n }\n ],\n \"defaultBody\": [\n {\n \"block\": \"text\",\n \"text\": \"Your password was changed\",\n \"variant\": \"heading\"\n },\n {\n \"block\": \"text\",\n \"text\": \"An administrator of {{site.name}} set a new password on your account and signed you out on every device. To sign back in, get the new password from them, or choose \\\"Forgot password?\\\" on the sign-in page to set your own.\",\n \"variant\": \"body\"\n },\n {\n \"block\": \"button\",\n \"label\": \"Sign in\",\n \"href\": \"{{signInUrl}}\"\n },\n {\n \"block\": \"text\",\n \"text\": \"If you did not expect this, contact the site owner.\",\n \"variant\": \"caption\"\n }\n ],\n \"footerReason\": \"You’re receiving this because the password on your {{host.businessName}} account was changed.\"\n },\n {\n \"key\": \"newsletter-confirmation\",\n \"name\": \"Subscription confirmation\",\n \"description\": \"Asks someone who signed up for a site’s emails to confirm the address before anything is sent to it.\",\n \"pluginId\": \"commerce\",\n \"plugin\": \"Commerce\",\n \"control\": \"besigner\",\n \"defaultSubject\": \"Confirm your subscription\",\n \"mergeTokens\": [\n {\n \"name\": \"stream.name\",\n \"description\": \"What they signed up for\",\n \"sample\": \"Newsletter\"\n },\n {\n \"name\": \"confirmUrl\",\n \"description\": \"The confirmation link\",\n \"sample\": \"https://shop.example.com/subscribe/confirm?token=…\"\n }\n ],\n \"defaultBody\": [\n {\n \"block\": \"text\",\n \"text\": \"Confirm your subscription\",\n \"variant\": \"heading\"\n },\n {\n \"block\": \"text\",\n \"text\": \"Please confirm that you want to get {{stream.name}} emails from {{host.businessName}} at this address.\",\n \"variant\": \"body\"\n },\n {\n \"block\": \"button\",\n \"label\": \"Confirm my subscription\",\n \"href\": \"{{confirmUrl}}\"\n },\n {\n \"block\": \"text\",\n \"text\": \"The link works for three days. If you did not sign up, ignore this message — nothing will be sent.\",\n \"variant\": \"caption\"\n }\n ],\n \"footerReason\": \"You’re receiving this because this address was entered on {{host.businessName}}’s signup form.\"\n },\n {\n \"key\": \"campaign\",\n \"name\": \"Campaign broadcast\",\n \"description\": \"A campaign sent to the site's subscriber list.\",\n \"pluginId\": \"marketing\",\n \"plugin\": \"Marketing\",\n \"control\": \"external\",\n \"authoredIn\": \"Marketing → Campaigns\",\n \"footerReason\": \"You’re receiving this email from {{host.businessName}}.\"\n },\n {\n \"key\": \"workflow-email\",\n \"name\": \"Workflow email step\",\n \"description\": \"An email sent by a workflow's send-email action when its trigger fires.\",\n \"pluginId\": \"workflows\",\n \"plugin\": \"Workflows\",\n \"control\": \"external\",\n \"authoredIn\": \"the workflow that sends it\",\n \"footerReason\": \"You’re receiving this because you’re in touch with {{host.businessName}}.\"\n }\n]\n"],"names":["PLUGIN_TENANT_EMAILS"],"mappings":"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"}
|