@codee-sh/medusa-plugin-notification-emails 0.0.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (55) hide show
  1. package/.medusa/server/emails-previews/contact-form.js +22 -0
  2. package/.medusa/server/emails-previews/order-completed.js +44 -0
  3. package/.medusa/server/emails-previews/order-placed.js +43 -0
  4. package/.medusa/server/src/admin/index.js +10002 -0
  5. package/.medusa/server/src/admin/index.mjs +10001 -0
  6. package/.medusa/server/src/admin/lib/sdk.js +15 -0
  7. package/.medusa/server/src/api/admin/notification-plugin/events/route.js +20 -0
  8. package/.medusa/server/src/api/admin/notification-plugin/notifications/route.js +31 -0
  9. package/.medusa/server/src/api/admin/notification-plugin/render-template/route.js +26 -0
  10. package/.medusa/server/src/api/middlewares.js +42 -0
  11. package/.medusa/server/src/hooks/api/events.js +27 -0
  12. package/.medusa/server/src/hooks/api/notifications.js +42 -0
  13. package/.medusa/server/src/hooks/api/orders.js +50 -0
  14. package/.medusa/server/src/hooks/api/preview.js +33 -0
  15. package/.medusa/server/src/subscribers/order-completed.js +99 -0
  16. package/.medusa/server/src/subscribers/order-placed.js +97 -0
  17. package/.medusa/server/src/subscribers/payment-captured.js +86 -0
  18. package/.medusa/server/src/templates/emails/contact-form/index.js +19 -0
  19. package/.medusa/server/src/templates/emails/contact-form/template.js +28 -0
  20. package/.medusa/server/src/templates/emails/contact-form/translations/en.json +16 -0
  21. package/.medusa/server/src/templates/emails/contact-form/translations/index.js +15 -0
  22. package/.medusa/server/src/templates/emails/contact-form/translations/pl.json +12 -0
  23. package/.medusa/server/src/templates/emails/contact-form/types.js +3 -0
  24. package/.medusa/server/src/templates/emails/index.js +98 -0
  25. package/.medusa/server/src/templates/emails/order-completed/index.js +19 -0
  26. package/.medusa/server/src/templates/emails/order-completed/template.js +36 -0
  27. package/.medusa/server/src/templates/emails/order-completed/translations/en.json +25 -0
  28. package/.medusa/server/src/templates/emails/order-completed/translations/index.js +15 -0
  29. package/.medusa/server/src/templates/emails/order-completed/translations/pl.json +25 -0
  30. package/.medusa/server/src/templates/emails/order-completed/types.js +3 -0
  31. package/.medusa/server/src/templates/emails/order-placed/index.js +19 -0
  32. package/.medusa/server/src/templates/emails/order-placed/template.js +36 -0
  33. package/.medusa/server/src/templates/emails/order-placed/translations/en.json +24 -0
  34. package/.medusa/server/src/templates/emails/order-placed/translations/index.js +15 -0
  35. package/.medusa/server/src/templates/emails/order-placed/translations/pl.json +24 -0
  36. package/.medusa/server/src/templates/emails/order-placed/types.js +3 -0
  37. package/.medusa/server/src/templates/emails/types.js +9 -0
  38. package/.medusa/server/src/templates/shared/i18n/index.js +6 -0
  39. package/.medusa/server/src/templates/shared/i18n/languages.js +187 -0
  40. package/.medusa/server/src/templates/shared/i18n/types.js +3 -0
  41. package/.medusa/server/src/templates/shared/i18n/utils.js +186 -0
  42. package/.medusa/server/src/templates/shared/theme/index.js +6 -0
  43. package/.medusa/server/src/templates/shared/theme/presets/default/index.js +36 -0
  44. package/.medusa/server/src/templates/shared/utils/index.js +24 -0
  45. package/.medusa/server/src/utils/addresses.js +67 -0
  46. package/.medusa/server/src/utils/data/countries.js +1763 -0
  47. package/.medusa/server/src/utils/data/country-states.js +1283 -0
  48. package/.medusa/server/src/utils/data/currencies.js +748 -0
  49. package/.medusa/server/src/utils/date.js +26 -0
  50. package/.medusa/server/src/utils/index.js +21 -0
  51. package/.medusa/server/src/utils/money-amount-helpers.js +68 -0
  52. package/.medusa/server/src/utils/payment.js +21 -0
  53. package/.medusa/server/src/utils/plugins.js +20 -0
  54. package/README.md +114 -0
  55. package/package.json +86 -0
@@ -0,0 +1,28 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.renderHTMLReact = renderHTMLReact;
4
+ exports.renderHTML = renderHTML;
5
+ exports.renderText = renderText;
6
+ const jsx_runtime_1 = require("react/jsx-runtime");
7
+ const components_1 = require("@react-email/components");
8
+ const render_1 = require("@react-email/render");
9
+ const utils_1 = require("../../shared/utils");
10
+ function renderHTMLReact(data, options) {
11
+ const theme = options.theme || {};
12
+ const i18n = options.i18n;
13
+ if (!i18n) {
14
+ throw new Error("i18n is required in options. It should be provided by renderTemplate.");
15
+ }
16
+ return ((0, jsx_runtime_1.jsxs)(components_1.Html, { children: [(0, jsx_runtime_1.jsx)(components_1.Head, {}), (0, jsx_runtime_1.jsx)(components_1.Tailwind, { config: {
17
+ presets: [components_1.pixelBasedPreset],
18
+ theme: theme
19
+ }, children: (0, jsx_runtime_1.jsx)(components_1.Body, { className: "mx-auto my-auto px-4 font-arial font-normal text-base bg-ui-bg text-ui-text", children: (0, jsx_runtime_1.jsxs)(components_1.Container, { children: [(0, jsx_runtime_1.jsx)(components_1.Section, { children: (0, jsx_runtime_1.jsx)(components_1.Heading, { className: "text-xl text-center font-bold mb-4", children: i18n.t('headerTitle', data) }) }), (0, jsx_runtime_1.jsx)(components_1.Hr, { className: "my-4 border-ui-border" }), (0, jsx_runtime_1.jsx)(components_1.Section, { children: (0, jsx_runtime_1.jsxs)(components_1.Row, { children: [(0, jsx_runtime_1.jsx)(components_1.Column, { className: "font-semibold", children: i18n.t('labels.name', data) }), (0, jsx_runtime_1.jsx)(components_1.Column, { className: "text-right", children: (0, utils_1.escapeHtml)(data.name) })] }) }), (0, jsx_runtime_1.jsx)(components_1.Hr, { className: "my-4 border-ui-border" }), (0, jsx_runtime_1.jsx)(components_1.Section, { children: (0, jsx_runtime_1.jsxs)(components_1.Row, { children: [(0, jsx_runtime_1.jsx)(components_1.Column, { className: "font-semibold", children: i18n.t('labels.email', data) }), (0, jsx_runtime_1.jsx)(components_1.Column, { className: "text-right", children: (0, utils_1.escapeHtml)(data.email) })] }) }), (0, jsx_runtime_1.jsx)(components_1.Hr, { className: "my-4 border-ui-border" }), data.phone && ((0, jsx_runtime_1.jsxs)(jsx_runtime_1.Fragment, { children: [(0, jsx_runtime_1.jsx)(components_1.Section, { children: (0, jsx_runtime_1.jsxs)(components_1.Row, { children: [(0, jsx_runtime_1.jsx)(components_1.Column, { className: "font-semibold", children: i18n.t('labels.phone', data) }), (0, jsx_runtime_1.jsx)(components_1.Column, { className: "text-right", children: (0, utils_1.escapeHtml)(data.phone) })] }) }), (0, jsx_runtime_1.jsx)(components_1.Hr, { className: "my-4 border-ui-border" })] })), (0, jsx_runtime_1.jsxs)(components_1.Section, { children: [(0, jsx_runtime_1.jsx)(components_1.Text, { className: "font-semibold m-0 p-0", children: i18n.t('labels.message', data) }), (0, jsx_runtime_1.jsx)(components_1.Text, { className: "m-0 p-0", children: (0, utils_1.escapeHtml)(data.message) })] }), (0, jsx_runtime_1.jsx)(components_1.Hr, { className: "my-4 border-ui-border" }), (0, jsx_runtime_1.jsx)(components_1.Section, { children: (0, jsx_runtime_1.jsx)(components_1.Text, { className: "text-sm text-ui-text text-center", children: i18n.t('footer', data) }) })] }) }) })] }));
20
+ }
21
+ async function renderHTML(data, options) {
22
+ return await (0, render_1.pretty)(await (0, render_1.render)(renderHTMLReact(data, options)));
23
+ }
24
+ async function renderText(data, options) {
25
+ const html = await (0, render_1.render)(renderHTMLReact(data, options));
26
+ return (0, render_1.toPlainText)(html);
27
+ }
28
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGVtcGxhdGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9zcmMvdGVtcGxhdGVzL2VtYWlscy9jb250YWN0LWZvcm0vdGVtcGxhdGUudHN4Il0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7O0FBT0EsMENBa0ZDO0FBRUQsZ0NBS0M7QUFFRCxnQ0FNQzs7QUF2R0Qsd0RBQTJJO0FBQzNJLGdEQUFrRTtBQUdsRSw4Q0FBZ0Q7QUFFaEQsU0FBZ0IsZUFBZSxDQUM3QixJQUFpQyxFQUNqQyxPQUE0QjtJQUU1QixNQUFNLEtBQUssR0FBRyxPQUFPLENBQUMsS0FBSyxJQUFJLEVBQUUsQ0FBQztJQUNsQyxNQUFNLElBQUksR0FBRyxPQUFPLENBQUMsSUFBSSxDQUFDO0lBRTFCLElBQUksQ0FBQyxJQUFJLEVBQUUsQ0FBQztRQUNWLE1BQU0sSUFBSSxLQUFLLENBQUMsdUVBQXVFLENBQUMsQ0FBQztJQUMzRixDQUFDO0lBRUQsT0FBTyxDQUNMLHdCQUFDLGlCQUFJLGVBQ0gsdUJBQUMsaUJBQUksS0FBRyxFQUNSLHVCQUFDLHFCQUFRLElBQ1AsTUFBTSxFQUFFO29CQUNOLE9BQU8sRUFBRSxDQUFDLDZCQUFnQixDQUFDO29CQUMzQixLQUFLLEVBQUUsS0FBSztpQkFDYixZQUVELHVCQUFDLGlCQUFJLElBQUMsU0FBUyxFQUFDLDZFQUE2RSxZQUMzRix3QkFBQyxzQkFBUyxlQUNSLHVCQUFDLG9CQUFPLGNBQ04sdUJBQUMsb0JBQU8sSUFBQyxTQUFTLEVBQUMsb0NBQW9DLFlBQ3BELElBQUksQ0FBQyxDQUFDLENBQUMsYUFBYSxFQUFFLElBQUksQ0FBQyxHQUNwQixHQUNGLEVBRVYsdUJBQUMsZUFBRSxJQUFDLFNBQVMsRUFBQyx1QkFBdUIsR0FBRyxFQUd4Qyx1QkFBQyxvQkFBTyxjQUNOLHdCQUFDLGdCQUFHLGVBQ0YsdUJBQUMsbUJBQU0sSUFBQyxTQUFTLEVBQUMsZUFBZSxZQUFFLElBQUksQ0FBQyxDQUFDLENBQUMsYUFBYSxFQUFFLElBQUksQ0FBQyxHQUFVLEVBQ3hFLHVCQUFDLG1CQUFNLElBQUMsU0FBUyxFQUFDLFlBQVksWUFBRSxJQUFBLGtCQUFVLEVBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxHQUFVLElBQzNELEdBQ0UsRUFFVix1QkFBQyxlQUFFLElBQUMsU0FBUyxFQUFDLHVCQUF1QixHQUFHLEVBR3hDLHVCQUFDLG9CQUFPLGNBQ04sd0JBQUMsZ0JBQUcsZUFDRix1QkFBQyxtQkFBTSxJQUFDLFNBQVMsRUFBQyxlQUFlLFlBQUUsSUFBSSxDQUFDLENBQUMsQ0FBQyxjQUFjLEVBQUUsSUFBSSxDQUFDLEdBQVUsRUFDekUsdUJBQUMsbUJBQU0sSUFBQyxTQUFTLEVBQUMsWUFBWSxZQUFFLElBQUEsa0JBQVUsRUFBQyxJQUFJLENBQUMsS0FBSyxDQUFDLEdBQVUsSUFDNUQsR0FDRSxFQUVWLHVCQUFDLGVBQUUsSUFBQyxTQUFTLEVBQUMsdUJBQXVCLEdBQUcsRUFHdkMsSUFBSSxDQUFDLEtBQUssSUFBSSxDQUNiLDZEQUNFLHVCQUFDLG9CQUFPLGNBQ04sd0JBQUMsZ0JBQUcsZUFDRix1QkFBQyxtQkFBTSxJQUFDLFNBQVMsRUFBQyxlQUFlLFlBQUUsSUFBSSxDQUFDLENBQUMsQ0FBQyxjQUFjLEVBQUUsSUFBSSxDQUFDLEdBQVUsRUFDekUsdUJBQUMsbUJBQU0sSUFBQyxTQUFTLEVBQUMsWUFBWSxZQUFFLElBQUEsa0JBQVUsRUFBQyxJQUFJLENBQUMsS0FBSyxDQUFDLEdBQVUsSUFDNUQsR0FDRSxFQUNWLHVCQUFDLGVBQUUsSUFBQyxTQUFTLEVBQUMsdUJBQXVCLEdBQUcsSUFDdkMsQ0FDSixFQUdELHdCQUFDLG9CQUFPLGVBQ04sdUJBQUMsaUJBQUksSUFBQyxTQUFTLEVBQUMsdUJBQXVCLFlBQUUsSUFBSSxDQUFDLENBQUMsQ0FBQyxnQkFBZ0IsRUFBRSxJQUFJLENBQUMsR0FBUSxFQUMvRSx1QkFBQyxpQkFBSSxJQUFDLFNBQVMsRUFBQyxTQUFTLFlBQUUsSUFBQSxrQkFBVSxFQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsR0FBUSxJQUNuRCxFQUVWLHVCQUFDLGVBQUUsSUFBQyxTQUFTLEVBQUMsdUJBQXVCLEdBQUcsRUFHeEMsdUJBQUMsb0JBQU8sY0FDTix1QkFBQyxpQkFBSSxJQUFDLFNBQVMsRUFBQyxrQ0FBa0MsWUFDL0MsSUFBSSxDQUFDLENBQUMsQ0FBQyxRQUFRLEVBQUUsSUFBSSxDQUFDLEdBQ2xCLEdBQ0MsSUFDQSxHQUNQLEdBQ0UsSUFDTixDQUNSLENBQUM7QUFDSixDQUFDO0FBRU0sS0FBSyxVQUFVLFVBQVUsQ0FDOUIsSUFBaUMsRUFDakMsT0FBNEI7SUFFNUIsT0FBTyxNQUFNLElBQUEsZUFBTSxFQUFDLE1BQU0sSUFBQSxlQUFNLEVBQUMsZUFBZSxDQUFDLElBQUksRUFBRSxPQUFPLENBQUMsQ0FBQyxDQUFDLENBQUM7QUFDcEUsQ0FBQztBQUVNLEtBQUssVUFBVSxVQUFVLENBQzlCLElBQWlDLEVBQ2pDLE9BQTRCO0lBRTVCLE1BQU0sSUFBSSxHQUFHLE1BQU0sSUFBQSxlQUFNLEVBQUMsZUFBZSxDQUFDLElBQUksRUFBRSxPQUFPLENBQUMsQ0FBQyxDQUFDO0lBQzFELE9BQU8sSUFBQSxvQkFBVyxFQUFDLElBQUksQ0FBQyxDQUFDO0FBQzNCLENBQUMifQ==
@@ -0,0 +1,16 @@
1
+ {
2
+ "general": {
3
+ "headerTitle": "New message from contact form",
4
+ "labels": {
5
+ "name": "Name",
6
+ "email": "Email",
7
+ "phone": "Phone",
8
+ "message": "Message"
9
+ },
10
+ "header": {
11
+ "title": "New message from contact form",
12
+ "description": "This message was sent automatically from the contact form"
13
+ },
14
+ "footer": "This message was sent automatically from the contact form"
15
+ }
16
+ }
@@ -0,0 +1,15 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.en = exports.pl = exports.translations = void 0;
7
+ const pl_json_1 = __importDefault(require("./pl.json"));
8
+ exports.pl = pl_json_1.default;
9
+ const en_json_1 = __importDefault(require("./en.json"));
10
+ exports.en = en_json_1.default;
11
+ exports.translations = {
12
+ pl: pl_json_1.default,
13
+ en: en_json_1.default,
14
+ };
15
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9zcmMvdGVtcGxhdGVzL2VtYWlscy9jb250YWN0LWZvcm0vdHJhbnNsYXRpb25zL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7OztBQUFBLHdEQUEyQjtBQVFsQixhQVJGLGlCQUFFLENBUUU7QUFQWCx3REFBMkI7QUFPZCxhQVBOLGlCQUFFLENBT007QUFMRixRQUFBLFlBQVksR0FBcUI7SUFDNUMsRUFBRSxFQUFFLGlCQUFFO0lBQ04sRUFBRSxFQUFFLGlCQUFFO0NBQ1AsQ0FBQyJ9
@@ -0,0 +1,12 @@
1
+ {
2
+ "general": {
3
+ "headerTitle": "Nowa wiadomość z formularza kontaktowego",
4
+ "labels": {
5
+ "name": "Imię i nazwisko",
6
+ "email": "Email",
7
+ "phone": "Telefon",
8
+ "message": "Wiadomość"
9
+ },
10
+ "footer": "Ta wiadomość została wysłana automatycznie z formularza kontaktowego"
11
+ }
12
+ }
@@ -0,0 +1,3 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHlwZXMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9zcmMvdGVtcGxhdGVzL2VtYWlscy9jb250YWN0LWZvcm0vdHlwZXMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiJ9
@@ -0,0 +1,98 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.TEMPLATES_NAMES = void 0;
4
+ exports.getTemplate = getTemplate;
5
+ exports.renderTemplate = renderTemplate;
6
+ const index_1 = require("./contact-form/index");
7
+ const index_2 = require("./order-placed/index");
8
+ const index_3 = require("./order-completed/index");
9
+ const types_1 = require("./types");
10
+ Object.defineProperty(exports, "TEMPLATES_NAMES", { enumerable: true, get: function () { return types_1.TEMPLATES_NAMES; } });
11
+ const i18n_1 = require("../shared/i18n");
12
+ const translations_1 = require("./contact-form/translations");
13
+ const translations_2 = require("./order-placed/translations");
14
+ const translations_3 = require("./order-completed/translations");
15
+ /**
16
+ * Template translations registry mapping template names to their translations
17
+ */
18
+ const templateTranslationsRegistry = {
19
+ [types_1.TEMPLATES_NAMES.CONTACT_FORM]: translations_1.translations,
20
+ [types_1.TEMPLATES_NAMES.ORDER_PLACED]: translations_2.translations,
21
+ [types_1.TEMPLATES_NAMES.ORDER_COMPLETED]: translations_3.translations,
22
+ };
23
+ /**
24
+ * Template registry mapping template names to their renderers
25
+ */
26
+ const templateRegistry = {
27
+ [types_1.TEMPLATES_NAMES.CONTACT_FORM]: {
28
+ getHtml: async (data, options) => {
29
+ return await (0, index_1.getContactFormHtml)(data, options);
30
+ },
31
+ getText: async (data, options) => {
32
+ return await (0, index_1.getContactFormText)(data, options);
33
+ },
34
+ },
35
+ [types_1.TEMPLATES_NAMES.ORDER_PLACED]: {
36
+ getHtml: async (data, options) => {
37
+ return await (0, index_2.getOrderCreatedHtml)(data, options);
38
+ },
39
+ getText: async (data, options) => {
40
+ return await (0, index_2.getOrderCreatedText)(data, options);
41
+ },
42
+ },
43
+ [types_1.TEMPLATES_NAMES.ORDER_COMPLETED]: {
44
+ getHtml: async (data, options) => {
45
+ return await (0, index_3.getOrderCompletedHtml)(data, options);
46
+ },
47
+ getText: async (data, options) => {
48
+ return await (0, index_3.getOrderCompletedText)(data, options);
49
+ },
50
+ },
51
+ };
52
+ /**
53
+ * Get template renderer by template name
54
+ *
55
+ * @param templateName - Name of the template
56
+ * @returns Template renderer with getHtml and getText methods
57
+ * @throws Error if template name is not found
58
+ */
59
+ function getTemplate(templateName) {
60
+ const template = templateRegistry[templateName];
61
+ if (!template) {
62
+ throw new Error(`Template "${templateName}" not found. Available templates: ${Object.keys(templateRegistry).join(", ")}`);
63
+ }
64
+ return template;
65
+ }
66
+ /**
67
+ * Generate HTML and text for a template
68
+ *
69
+ * @param templateName - Name of the template
70
+ * @param data - Template data
71
+ * @param options - Optional theme and locale configuration
72
+ * @returns Object with html, text, and subject properties
73
+ */
74
+ async function renderTemplate(templateName, data, options) {
75
+ const template = getTemplate(templateName);
76
+ const locale = options?.locale || "pl";
77
+ // Get translations for this template
78
+ const translations = templateTranslationsRegistry[templateName];
79
+ if (!translations) {
80
+ throw new Error(`Translations not found for template: ${templateName}`);
81
+ }
82
+ // Process translations once in renderTemplate
83
+ const customTranslations = options?.customTranslations?.[templateName];
84
+ const i18n = (0, i18n_1.getTranslations)(locale, translations, customTranslations ? { [locale]: customTranslations } : undefined, templateName);
85
+ // Get subject from translations
86
+ const subject = i18n.t("headerTitle", data);
87
+ // Pass processed i18n in options to render functions
88
+ const renderOptions = {
89
+ ...options,
90
+ i18n,
91
+ };
92
+ return {
93
+ html: await template.getHtml(data, renderOptions),
94
+ text: await template.getText(data, renderOptions),
95
+ subject,
96
+ };
97
+ }
98
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9zcmMvdGVtcGxhdGVzL2VtYWlscy9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUErRUEsa0NBVUM7QUFVRCx3Q0FxQ0M7QUF2SUQsZ0RBQThFO0FBQzlFLGdEQUFnRjtBQUNoRixtREFBdUY7QUFDdkYsbUNBQTBDO0FBU2pDLGdHQVRBLHVCQUFlLE9BU0E7QUFSeEIseUNBQWlEO0FBQ2pELDhEQUFzRjtBQUN0Riw4REFBc0Y7QUFDdEYsaUVBQTRGO0FBaUI1Rjs7R0FFRztBQUNILE1BQU0sNEJBQTRCLEdBQThDO0lBQzlFLENBQUMsdUJBQWUsQ0FBQyxZQUFZLENBQUMsRUFBRSwyQkFBdUI7SUFDdkQsQ0FBQyx1QkFBZSxDQUFDLFlBQVksQ0FBQyxFQUFFLDJCQUF1QjtJQUN2RCxDQUFDLHVCQUFlLENBQUMsZUFBZSxDQUFDLEVBQUUsMkJBQTBCO0NBQzlELENBQUM7QUFFRjs7R0FFRztBQUNILE1BQU0sZ0JBQWdCLEdBQTJDO0lBQy9ELENBQUMsdUJBQWUsQ0FBQyxZQUFZLENBQUMsRUFBRTtRQUM5QixPQUFPLEVBQUUsS0FBSyxFQUFFLElBQVMsRUFBRSxPQUE2QixFQUFtQixFQUFFO1lBQzNFLE9BQU8sTUFBTSxJQUFBLDBCQUFrQixFQUFDLElBQUksRUFBRSxPQUFjLENBQUMsQ0FBQztRQUN4RCxDQUFDO1FBQ0QsT0FBTyxFQUFFLEtBQUssRUFBRSxJQUFTLEVBQUUsT0FBNkIsRUFBbUIsRUFBRTtZQUMzRSxPQUFPLE1BQU0sSUFBQSwwQkFBa0IsRUFBQyxJQUFJLEVBQUUsT0FBYyxDQUFDLENBQUM7UUFDeEQsQ0FBQztLQUNGO0lBQ0QsQ0FBQyx1QkFBZSxDQUFDLFlBQVksQ0FBQyxFQUFFO1FBQzlCLE9BQU8sRUFBRSxLQUFLLEVBQUUsSUFBUyxFQUFFLE9BQTZCLEVBQW1CLEVBQUU7WUFDM0UsT0FBTyxNQUFNLElBQUEsMkJBQW1CLEVB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
@@ -0,0 +1,19 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.getOrderCompletedHtml = getOrderCompletedHtml;
4
+ exports.getOrderCompletedText = getOrderCompletedText;
5
+ const template_1 = require("./template");
6
+ /**
7
+ * Generates HTML email for order completed notification
8
+ *
9
+ * @param data - Order data (includes subject)
10
+ * @param options - Optional theme and locale configuration
11
+ * @returns HTML string ready to send
12
+ */
13
+ async function getOrderCompletedHtml(data, options) {
14
+ return await (0, template_1.renderHTML)(data, options);
15
+ }
16
+ async function getOrderCompletedText(data, options) {
17
+ return await (0, template_1.renderText)(data, options);
18
+ }
19
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9zcmMvdGVtcGxhdGVzL2VtYWlscy9vcmRlci1jb21wbGV0ZWQvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7QUFXQSxzREFLQztBQUVELHNEQUtDO0FBckJELHlDQUFvRDtBQUVwRDs7Ozs7O0dBTUc7QUFDSSxLQUFLLFVBQVUscUJBQXFCLENBQ3pDLElBQW9DLEVBQ3BDLE9BQTRCO0lBRTVCLE9BQU8sTUFBTSxJQUFBLHFCQUFVLEVBQUMsSUFBSSxFQUFFLE9BQU8sQ0FBQyxDQUFDO0FBQ3pDLENBQUM7QUFFTSxLQUFLLFVBQVUscUJBQXFCLENBQ3pDLElBQW9DLEVBQ3BDLE9BQTRCO0lBRTVCLE9BQU8sTUFBTSxJQUFBLHFCQUFVLEVBQUMsSUFBSSxFQUFFLE9BQU8sQ0FBQyxDQUFDO0FBQ3pDLENBQUMifQ==
@@ -0,0 +1,36 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.renderHTMLReact = renderHTMLReact;
7
+ exports.renderHTML = renderHTML;
8
+ exports.renderText = renderText;
9
+ const jsx_runtime_1 = require("react/jsx-runtime");
10
+ const react_1 = __importDefault(require("react"));
11
+ const components_1 = require("@react-email/components");
12
+ const render_1 = require("@react-email/render");
13
+ const utils_1 = require("../../shared/utils");
14
+ function renderHTMLReact(data, options) {
15
+ const theme = options.theme || {};
16
+ const i18n = options.i18n;
17
+ if (!i18n) {
18
+ throw new Error("i18n is required in options. It should be provided by renderTemplate.");
19
+ }
20
+ // Prepare items list
21
+ const itemsList = data.items.map((item) => `${(0, utils_1.escapeHtml)(item.title)} - ${item.quantity}x ${(0, utils_1.escapeHtml)(item.price)}`);
22
+ return ((0, jsx_runtime_1.jsxs)(components_1.Html, { children: [(0, jsx_runtime_1.jsx)(components_1.Head, {}), (0, jsx_runtime_1.jsx)(components_1.Tailwind, { config: {
23
+ presets: [components_1.pixelBasedPreset],
24
+ theme: theme
25
+ }, children: (0, jsx_runtime_1.jsx)(components_1.Body, { className: "mx-auto my-auto px-4 font-arial font-normal text-base bg-ui-bg text-ui-text", children: (0, jsx_runtime_1.jsxs)(components_1.Container, { children: [(0, jsx_runtime_1.jsxs)(components_1.Section, { children: [(0, jsx_runtime_1.jsx)(components_1.Heading, { className: "text-xl text-center font-bold mb-4", children: i18n.t('headerTitle', data) }), (0, jsx_runtime_1.jsx)(components_1.Text, { className: "text-center mb-4", children: i18n.t('headerDescription', data) })] }), (0, jsx_runtime_1.jsx)(components_1.Hr, { className: "my-4 border-ui-border" }), (0, jsx_runtime_1.jsx)(components_1.Section, { children: (0, jsx_runtime_1.jsxs)(components_1.Row, { children: [(0, jsx_runtime_1.jsx)(components_1.Column, { className: "font-semibold", children: i18n.t('labels.salesChannel', data) }), (0, jsx_runtime_1.jsx)(components_1.Column, { className: "text-right", children: (0, utils_1.escapeHtml)(data.sales_channel.name) })] }) }), (0, jsx_runtime_1.jsx)(components_1.Hr, { className: "my-4 border-ui-border" }), (0, jsx_runtime_1.jsx)(components_1.Section, { children: (0, jsx_runtime_1.jsxs)(components_1.Row, { children: [(0, jsx_runtime_1.jsx)(components_1.Column, { className: "font-semibold", children: i18n.t('labels.orderNumber', data) }), (0, jsx_runtime_1.jsx)(components_1.Column, { className: "text-right", children: (0, utils_1.escapeHtml)(data.orderNumber) })] }) }), (0, jsx_runtime_1.jsx)(components_1.Hr, { className: "my-4 border-ui-border" }), (0, jsx_runtime_1.jsx)(components_1.Section, { children: (0, jsx_runtime_1.jsxs)(components_1.Row, { children: [(0, jsx_runtime_1.jsx)(components_1.Column, { className: "font-semibold", children: i18n.t('labels.orderDate', data) }), (0, jsx_runtime_1.jsx)(components_1.Column, { className: "text-right", children: (0, utils_1.escapeHtml)(data.orderDate) })] }) }), (0, jsx_runtime_1.jsx)(components_1.Hr, { className: "my-4 border-ui-border" }), (0, jsx_runtime_1.jsx)(components_1.Section, { children: (0, jsx_runtime_1.jsxs)(components_1.Row, { children: [(0, jsx_runtime_1.jsx)(components_1.Column, { className: "font-semibold", children: i18n.t('labels.completedDate', data) }), (0, jsx_runtime_1.jsx)(components_1.Column, { className: "text-right", children: (0, utils_1.escapeHtml)(data.completedDate) })] }) }), (0, jsx_runtime_1.jsx)(components_1.Hr, { className: "my-4 border-ui-border" }), (0, jsx_runtime_1.jsxs)(components_1.Section, { className: "p-0", children: [(0, jsx_runtime_1.jsx)(components_1.Text, { className: "font-semibold m-0 p-0", children: i18n.t('labels.products', data) }), (0, jsx_runtime_1.jsx)(components_1.Text, { className: "m-0 p-0", children: itemsList.map((item, index) => ((0, jsx_runtime_1.jsxs)(react_1.default.Fragment, { children: [item, index < itemsList.length - 1 && (0, jsx_runtime_1.jsx)("br", {})] }, index))) })] }), (0, jsx_runtime_1.jsx)(components_1.Hr, { className: "my-4 border-ui-border" }), (0, jsx_runtime_1.jsxs)(components_1.Section, { children: [(0, jsx_runtime_1.jsx)(components_1.Text, { className: "font-semibold m-0 p-0", children: i18n.t('labels.shippingAddress', data) }), (0, jsx_runtime_1.jsx)(components_1.Text, { className: "m-0 p-0", dangerouslySetInnerHTML: {
26
+ __html: data?.shippingAddress || i18n.noData
27
+ } })] }), (0, jsx_runtime_1.jsx)(components_1.Hr, { className: "my-4 border-ui-border" }), (0, jsx_runtime_1.jsxs)(components_1.Section, { className: "bg-gray-50 p-4 rounded", children: [(0, jsx_runtime_1.jsxs)(components_1.Row, { children: [(0, jsx_runtime_1.jsx)(components_1.Column, { className: "font-semibold", children: i18n.t('labels.discountTotal', data) }), (0, jsx_runtime_1.jsx)(components_1.Column, { className: "text-right", children: (0, utils_1.escapeHtml)(data.summary.discount_total) })] }), (0, jsx_runtime_1.jsxs)(components_1.Row, { className: "mt-2", children: [(0, jsx_runtime_1.jsx)(components_1.Column, { className: "font-semibold", children: i18n.t('labels.orderTotal', data) }), (0, jsx_runtime_1.jsxs)(components_1.Column, { className: "text-right", children: [(0, utils_1.escapeHtml)(data.summary.total), " ", (0, utils_1.escapeHtml)(data.summary.currency_code)] })] }), (0, jsx_runtime_1.jsxs)(components_1.Row, { className: "mt-2", children: [(0, jsx_runtime_1.jsx)(components_1.Column, { className: "font-semibold", children: i18n.t('labels.paidTotal', data) }), (0, jsx_runtime_1.jsxs)(components_1.Column, { className: "text-right", children: [(0, utils_1.escapeHtml)(data.summary.paid_total), " ", (0, utils_1.escapeHtml)(data.summary.currency_code)] })] }), (0, jsx_runtime_1.jsxs)(components_1.Row, { className: "mt-2", children: [(0, jsx_runtime_1.jsx)(components_1.Column, { className: "font-semibold", children: i18n.t('labels.taxTotal', data) }), (0, jsx_runtime_1.jsx)(components_1.Column, { className: "text-right", children: (0, utils_1.escapeHtml)(data.summary.tax_total) })] })] }), (0, jsx_runtime_1.jsx)(components_1.Hr, { className: "my-4 border-ui-border" }), data.orderUrl && ((0, jsx_runtime_1.jsxs)(jsx_runtime_1.Fragment, { children: [(0, jsx_runtime_1.jsx)(components_1.Section, { className: "text-center", children: (0, jsx_runtime_1.jsx)(components_1.Button, { href: data.orderUrl, className: "bg-ui-button text-ui-button-text py-3 px-8 inline-block rounded", children: i18n.t('viewOrderButton', data) }) }), (0, jsx_runtime_1.jsx)(components_1.Hr, { className: "my-4 border-ui-border" })] })), (0, jsx_runtime_1.jsx)(components_1.Section, { children: (0, jsx_runtime_1.jsx)(components_1.Text, { className: "text-sm text-gray-600 text-center", children: i18n.t('footer', data) }) })] }) }) })] }));
28
+ }
29
+ async function renderHTML(data, options) {
30
+ return await (0, render_1.pretty)(await (0, render_1.render)(renderHTMLReact(data, options)));
31
+ }
32
+ async function renderText(data, options) {
33
+ const html = await (0, render_1.render)(renderHTMLReact(data, options));
34
+ return (0, render_1.toPlainText)(html);
35
+ }
36
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGVtcGxhdGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9zcmMvdGVtcGxhdGVzL2VtYWlscy9vcmRlci1jb21wbGV0ZWQvdGVtcGxhdGUudHN4Il0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7O0FBT0EsMENBZ0tDO0FBRUQsZ0NBS0M7QUFFRCxnQ0FNQzs7QUF0TEQsa0RBQTBCO0FBQzFCLHdEQUFtSjtBQUNuSixnREFBa0U7QUFHbEUsOENBQWdEO0FBRWhELFNBQWdCLGVBQWUsQ0FDN0IsSUFBb0MsRUFDcEMsT0FBNEI7SUFFNUIsTUFBTSxLQUFLLEdBQUcsT0FBTyxDQUFDLEtBQUssSUFBSSxFQUFFLENBQUM7SUFDbEMsTUFBTSxJQUFJLEdBQUcsT0FBTyxDQUFDLElBQUksQ0FBQztJQUUxQixJQUFJLENBQUMsSUFBSSxFQUFFLENBQUM7UUFDVixNQUFNLElBQUksS0FBSyxDQUFDLHVFQUF1RSxDQUFDLENBQUM7SUFDM0YsQ0FBQztJQUVELHFCQUFxQjtJQUNyQixNQUFNLFNBQVMsR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDLEdBQUcsQ0FDOUIsQ0FBQyxJQUFJLEVBQUUsRUFBRSxDQUFDLEdBQUcsSUFBQSxrQkFBVSxFQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsTUFBTSxJQUFJLENBQUMsUUFBUSxLQUFLLElBQUEsa0JBQVUsRUFBQyxJQUFJLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FDcEYsQ0FBQztJQUVGLE9BQU8sQ0FDTCx3QkFBQyxpQkFBSSxlQUNILHVCQUFDLGlCQUFJLEtBQUcsRUFDUix1QkFBQyxxQkFBUSxJQUNQLE1BQU0sRUFBRTtvQkFDTixPQUFPLEVBQUUsQ0FBQyw2QkFBZ0IsQ0FBQztvQkFDM0IsS0FBSyxFQUFFLEtBQUs7aUJBQ2IsWUFFRCx1QkFBQyxpQkFBSSxJQUFDLFNBQVMsRUFBQyw2RUFBNkUsWUFDM0Ysd0JBQUMsc0JBQVMsZUFDUix3QkFBQyxvQkFBTyxlQUNOLHVCQUFDLG9C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
@@ -0,0 +1,25 @@
1
+ {
2
+ "general": {
3
+ "headerTitle": "#{{orderNumber}} - Order completed",
4
+ "headerDescription": "Your order has been completed and shipped. Thank you for your purchase!",
5
+ "labels": {
6
+ "salesChannel": "Sales Channel",
7
+ "salesChannelDescription": "Sales Channel Description",
8
+ "orderNumber": "Order Number",
9
+ "orderDate": "Order Date",
10
+ "completedDate": "Completion Date",
11
+ "products": "Products",
12
+ "shippingAddress": "Shipping Address",
13
+ "orderTotal": "Order Total",
14
+ "taxTotal": "VAT",
15
+ "discountTotal": "Discount",
16
+ "paidTotal": "Paid",
17
+ "currency": "Currency",
18
+ "currencyCode": "Currency Code",
19
+ "currencySymbol": "Currency Symbol"
20
+ },
21
+ "noData": "No data",
22
+ "viewOrderButton": "View Order Details",
23
+ "footer": "If you have any questions about your order, please contact us."
24
+ }
25
+ }
@@ -0,0 +1,15 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.en = exports.pl = exports.translations = void 0;
7
+ const pl_json_1 = __importDefault(require("./pl.json"));
8
+ exports.pl = pl_json_1.default;
9
+ const en_json_1 = __importDefault(require("./en.json"));
10
+ exports.en = en_json_1.default;
11
+ exports.translations = {
12
+ pl: pl_json_1.default,
13
+ en: en_json_1.default,
14
+ };
15
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9zcmMvdGVtcGxhdGVzL2VtYWlscy9vcmRlci1jb21wbGV0ZWQvdHJhbnNsYXRpb25zL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7OztBQUFBLHdEQUEyQjtBQVFsQixhQVJGLGlCQUFFLENBUUU7QUFQWCx3REFBMkI7QUFPZCxhQVBOLGlCQUFFLENBT007QUFMRixRQUFBLFlBQVksR0FBcUI7SUFDNUMsRUFBRSxFQUFFLGlCQUFFO0lBQ04sRUFBRSxFQUFFLGlCQUFFO0NBQ1AsQ0FBQyJ9
@@ -0,0 +1,25 @@
1
+ {
2
+ "general": {
3
+ "headerTitle": "#{{orderNumber}} - Zamówienie zostało zrealizowane",
4
+ "headerDescription": "Twoje zamówienie zostało zrealizowane i wysłane. Dziękujemy za zakupy!",
5
+ "labels": {
6
+ "salesChannel": "Kanał sprzedaży",
7
+ "salesChannelDescription": "Opis kanału sprzedaży",
8
+ "orderNumber": "Numer zamówienia",
9
+ "orderDate": "Data zamówienia",
10
+ "completedDate": "Data realizacji",
11
+ "products": "Produkty",
12
+ "shippingAddress": "Adres dostawy",
13
+ "orderTotal": "Wartość zamówienia",
14
+ "taxTotal": "VAT",
15
+ "discountTotal": "Rabat",
16
+ "paidTotal": "Zapłacone",
17
+ "currency": "Waluta",
18
+ "currencyCode": "Kod waluty",
19
+ "currencySymbol": "Symbol waluty"
20
+ },
21
+ "noData": "Brak danych",
22
+ "viewOrderButton": "Zobacz szczegóły zamówienia",
23
+ "footer": "Jeśli masz pytania dotyczące zamówienia, skontaktuj się z nami."
24
+ }
25
+ }
@@ -0,0 +1,3 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHlwZXMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9zcmMvdGVtcGxhdGVzL2VtYWlscy9vcmRlci1jb21wbGV0ZWQvdHlwZXMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiJ9
@@ -0,0 +1,19 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.getOrderCreatedHtml = getOrderCreatedHtml;
4
+ exports.getOrderCreatedText = getOrderCreatedText;
5
+ const template_1 = require("./template");
6
+ /**
7
+ * Generates HTML email for order created notificat
8
+ *
9
+ * @param data - Order data (includes subject)
10
+ * @param options - Optional theme and locale configuration
11
+ * @returns HTML string ready to send
12
+ */
13
+ async function getOrderCreatedHtml(data, options) {
14
+ return await (0, template_1.renderHTML)(data, options);
15
+ }
16
+ async function getOrderCreatedText(data, options) {
17
+ return await (0, template_1.renderText)(data, options);
18
+ }
19
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9zcmMvdGVtcGxhdGVzL2VtYWlscy9vcmRlci1wbGFjZWQvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7QUFXQSxrREFLQztBQUVELGtEQUtDO0FBckJELHlDQUFvRDtBQUVwRDs7Ozs7O0dBTUc7QUFDSSxLQUFLLFVBQVUsbUJBQW1CLENBQ3ZDLElBQWtDLEVBQ2xDLE9BQTRCO0lBRTVCLE9BQU8sTUFBTSxJQUFBLHFCQUFVLEVBQUMsSUFBSSxFQUFFLE9BQU8sQ0FBQyxDQUFDO0FBQ3pDLENBQUM7QUFFTSxLQUFLLFVBQVUsbUJBQW1CLENBQ3ZDLElBQWtDLEVBQ2xDLE9BQTRCO0lBRTVCLE9BQU8sTUFBTSxJQUFBLHFCQUFVLEVBQUMsSUFBSSxFQUFFLE9BQU8sQ0FBQyxDQUFDO0FBQ3pDLENBQUMifQ==
@@ -0,0 +1,36 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.renderHTMLReact = renderHTMLReact;
7
+ exports.renderHTML = renderHTML;
8
+ exports.renderText = renderText;
9
+ const jsx_runtime_1 = require("react/jsx-runtime");
10
+ const react_1 = __importDefault(require("react"));
11
+ const components_1 = require("@react-email/components");
12
+ const render_1 = require("@react-email/render");
13
+ const utils_1 = require("../../shared/utils");
14
+ function renderHTMLReact(data, options) {
15
+ const theme = options.theme || {};
16
+ const i18n = options.i18n;
17
+ if (!i18n) {
18
+ throw new Error("i18n is required in options. It should be provided by renderTemplate.");
19
+ }
20
+ // Prepare items list
21
+ const itemsList = data.items.map((item) => `${(0, utils_1.escapeHtml)(item.title)} - ${item.quantity}x ${(0, utils_1.escapeHtml)(item.price)}`);
22
+ return ((0, jsx_runtime_1.jsxs)(components_1.Html, { children: [(0, jsx_runtime_1.jsx)(components_1.Head, {}), (0, jsx_runtime_1.jsx)(components_1.Tailwind, { config: {
23
+ presets: [components_1.pixelBasedPreset],
24
+ theme: theme
25
+ }, children: (0, jsx_runtime_1.jsx)(components_1.Body, { className: "mx-auto my-auto px-4 font-arial font-normal text-base bg-ui-bg text-ui-text", children: (0, jsx_runtime_1.jsxs)(components_1.Container, { children: [(0, jsx_runtime_1.jsxs)(components_1.Section, { children: [(0, jsx_runtime_1.jsx)(components_1.Heading, { className: "text-xl text-center font-bold mb-4", children: i18n.t('headerTitle', data) }), (0, jsx_runtime_1.jsx)(components_1.Text, { className: "text-center mb-4", children: i18n.t('headerDescription', data) })] }), (0, jsx_runtime_1.jsx)(components_1.Hr, { className: "my-4 border-ui-border" }), (0, jsx_runtime_1.jsx)(components_1.Section, { children: (0, jsx_runtime_1.jsxs)(components_1.Row, { children: [(0, jsx_runtime_1.jsx)(components_1.Column, { className: "font-semibold", children: i18n.t('labels.salesChannel', data) }), (0, jsx_runtime_1.jsx)(components_1.Column, { className: "text-right", children: (0, utils_1.escapeHtml)(data.sales_channel.name) })] }) }), (0, jsx_runtime_1.jsx)(components_1.Hr, { className: "my-4 border-ui-border" }), (0, jsx_runtime_1.jsx)(components_1.Section, { children: (0, jsx_runtime_1.jsxs)(components_1.Row, { children: [(0, jsx_runtime_1.jsx)(components_1.Column, { className: "font-semibold", children: i18n.t('labels.orderNumber', data) }), (0, jsx_runtime_1.jsx)(components_1.Column, { className: "text-right", children: (0, utils_1.escapeHtml)(data.orderNumber) })] }) }), (0, jsx_runtime_1.jsx)(components_1.Hr, { className: "my-4 border-ui-border" }), (0, jsx_runtime_1.jsx)(components_1.Section, { children: (0, jsx_runtime_1.jsxs)(components_1.Row, { children: [(0, jsx_runtime_1.jsx)(components_1.Column, { className: "font-semibold", children: i18n.t('labels.orderDate', data) }), (0, jsx_runtime_1.jsx)(components_1.Column, { className: "text-right", children: (0, utils_1.escapeHtml)(data.orderDate) })] }) }), (0, jsx_runtime_1.jsx)(components_1.Hr, { className: "my-4 border-ui-border" }), (0, jsx_runtime_1.jsxs)(components_1.Section, { className: "p-0", children: [(0, jsx_runtime_1.jsx)(components_1.Text, { className: "font-semibold m-0 p-0", children: i18n.t('labels.products', data) }), (0, jsx_runtime_1.jsx)(components_1.Text, { className: "m-0 p-0", children: itemsList.map((item, index) => ((0, jsx_runtime_1.jsxs)(react_1.default.Fragment, { children: [item, index < itemsList.length - 1 && (0, jsx_runtime_1.jsx)("br", {})] }, index))) })] }), (0, jsx_runtime_1.jsx)(components_1.Hr, { className: "my-4 border-ui-border" }), (0, jsx_runtime_1.jsxs)(components_1.Section, { children: [(0, jsx_runtime_1.jsx)(components_1.Text, { className: "font-semibold m-0 p-0", children: i18n.t('labels.shippingAddress', data) }), (0, jsx_runtime_1.jsx)(components_1.Text, { className: "m-0 p-0", dangerouslySetInnerHTML: {
26
+ __html: data?.shippingAddress || i18n.noData
27
+ } })] }), (0, jsx_runtime_1.jsx)(components_1.Hr, { className: "my-4 border-ui-border" }), (0, jsx_runtime_1.jsxs)(components_1.Section, { className: "bg-gray-50 p-4 rounded", children: [(0, jsx_runtime_1.jsxs)(components_1.Row, { children: [(0, jsx_runtime_1.jsx)(components_1.Column, { className: "font-semibold", children: i18n.t('labels.discountTotal', data) }), (0, jsx_runtime_1.jsx)(components_1.Column, { className: "text-right", children: (0, utils_1.escapeHtml)(data.summary.discount_total) })] }), (0, jsx_runtime_1.jsxs)(components_1.Row, { className: "mt-2", children: [(0, jsx_runtime_1.jsx)(components_1.Column, { className: "font-semibold", children: i18n.t('labels.orderTotal', data) }), (0, jsx_runtime_1.jsxs)(components_1.Column, { className: "text-right", children: [(0, utils_1.escapeHtml)(data.summary.total), " ", (0, utils_1.escapeHtml)(data.summary.currency_code)] })] }), (0, jsx_runtime_1.jsxs)(components_1.Row, { className: "mt-2", children: [(0, jsx_runtime_1.jsx)(components_1.Column, { className: "font-semibold", children: i18n.t('labels.paidTotal', data) }), (0, jsx_runtime_1.jsxs)(components_1.Column, { className: "text-right", children: [(0, utils_1.escapeHtml)(data.summary.paid_total), " ", (0, utils_1.escapeHtml)(data.summary.currency_code)] })] }), (0, jsx_runtime_1.jsxs)(components_1.Row, { className: "mt-2", children: [(0, jsx_runtime_1.jsx)(components_1.Column, { className: "font-semibold", children: i18n.t('labels.taxTotal', data) }), (0, jsx_runtime_1.jsx)(components_1.Column, { className: "text-right", children: (0, utils_1.escapeHtml)(data.summary.tax_total) })] })] }), (0, jsx_runtime_1.jsx)(components_1.Hr, { className: "my-4 border-ui-border" }), data.orderUrl && ((0, jsx_runtime_1.jsxs)(jsx_runtime_1.Fragment, { children: [(0, jsx_runtime_1.jsx)(components_1.Section, { className: "text-center", children: (0, jsx_runtime_1.jsx)(components_1.Button, { href: data.orderUrl, className: "bg-ui-button text-ui-button-text py-3 px-8 inline-block rounded", children: i18n.t('viewOrderButton', data) }) }), (0, jsx_runtime_1.jsx)(components_1.Hr, { className: "my-4 border-ui-border" })] })), (0, jsx_runtime_1.jsx)(components_1.Section, { children: (0, jsx_runtime_1.jsx)(components_1.Text, { className: "text-sm text-gray-600 text-center", children: i18n.t('footer', data) }) })] }) }) })] }));
28
+ }
29
+ async function renderHTML(data, options) {
30
+ return await (0, render_1.pretty)(await (0, render_1.render)(renderHTMLReact(data, options)));
31
+ }
32
+ async function renderText(data, options) {
33
+ const html = await (0, render_1.render)(renderHTMLReact(data, options));
34
+ return (0, render_1.toPlainText)(html);
35
+ }
36
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGVtcGxhdGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9zcmMvdGVtcGxhdGVzL2VtYWlscy9vcmRlci1wbGFjZWQvdGVtcGxhdGUudHN4Il0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7O0FBT0EsMENBc0pDO0FBRUQsZ0NBS0M7QUFFRCxnQ0FNQzs7QUE1S0Qsa0RBQTBCO0FBQzFCLHdEQUFtSjtBQUNuSixnREFBa0U7QUFHbEUsOENBQWdEO0FBRWhELFNBQWdCLGVBQWUsQ0FDN0IsSUFBa0MsRUFDbEMsT0FBNEI7SUFFNUIsTUFBTSxLQUFLLEdBQUcsT0FBTyxDQUFDLEtBQUssSUFBSSxFQUFFLENBQUM7SUFDbEMsTUFBTSxJQUFJLEdBQUcsT0FBTyxDQUFDLElBQUksQ0FBQztJQUUxQixJQUFJLENBQUMsSUFBSSxFQUFFLENBQUM7UUFDVixNQUFNLElBQUksS0FBSyxDQUFDLHVFQUF1RSxDQUFDLENBQUM7SUFDM0YsQ0FBQztJQUVELHFCQUFxQjtJQUNyQixNQUFNLFNBQVMsR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDLEdBQUcsQ0FDOUIsQ0FBQyxJQUFJLEVBQUUsRUFBRSxDQUFDLEdBQUcsSUFBQSxrQkFBVSxFQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsTUFBTSxJQUFJLENBQUMsUUFBUSxLQUFLLElBQUEsa0JBQVUsRUFBQyxJQUFJLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FDcEYsQ0FBQztJQUVGLE9BQU8sQ0FDTCx3QkFBQyxpQkFBSSxlQUNILHVCQUFDLGlCQUFJLEtBQUcsRUFDUix1QkFBQyxxQkFBUSxJQUNQLE1BQU0sRUFBRTtvQkFDTixPQUFPLEVBQUUsQ0FBQyw2QkFBZ0IsQ0FBQztvQkFDM0IsS0FBSyxFQUFFLEtBQUs7aUJBQ2IsWUFFRCx1QkFBQyxpQkFBSSxJQUFDLFNBQVMsRUFBQyw2RUFBNkUsWUFDM0Ysd0JBQUMsc0JBQVMsZUFDUix3QkFBQyxvQkFBTyxlQUNOLHVCQUFDLG9CQUFP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
@@ -0,0 +1,24 @@
1
+ {
2
+ "general": {
3
+ "headerTitle": "#{{orderNumber}} - Order placed",
4
+ "headerDescription": "Your order has been received and is being processed. You will receive an email with information about the status of your order shortly.",
5
+ "labels": {
6
+ "salesChannel": "Sales Channel",
7
+ "salesChannelDescription": "Sales Channel Description",
8
+ "orderNumber": "Order Number",
9
+ "orderDate": "Order Date",
10
+ "products": "Products",
11
+ "shippingAddress": "Shipping Address",
12
+ "orderTotal": "Order Total",
13
+ "taxTotal": "VAT",
14
+ "discountTotal": "Discount",
15
+ "paidTotal": "Paid",
16
+ "currency": "Currency",
17
+ "currencyCode": "Currency Code",
18
+ "currencySymbol": "Currency Symbol"
19
+ },
20
+ "noData": "No data",
21
+ "viewOrderButton": "View Order Details",
22
+ "footer": "If you have any questions about your order, please contact us."
23
+ }
24
+ }
@@ -0,0 +1,15 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.en = exports.pl = exports.translations = void 0;
7
+ const pl_json_1 = __importDefault(require("./pl.json"));
8
+ exports.pl = pl_json_1.default;
9
+ const en_json_1 = __importDefault(require("./en.json"));
10
+ exports.en = en_json_1.default;
11
+ exports.translations = {
12
+ pl: pl_json_1.default,
13
+ en: en_json_1.default,
14
+ };
15
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9zcmMvdGVtcGxhdGVzL2VtYWlscy9vcmRlci1wbGFjZWQvdHJhbnNsYXRpb25zL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7OztBQUFBLHdEQUEyQjtBQVFsQixhQVJGLGlCQUFFLENBUUU7QUFQWCx3REFBMkI7QUFPZCxhQVBOLGlCQUFFLENBT007QUFMRixRQUFBLFlBQVksR0FBcUI7SUFDNUMsRUFBRSxFQUFFLGlCQUFFO0lBQ04sRUFBRSxFQUFFLGlCQUFFO0NBQ1AsQ0FBQyJ9
@@ -0,0 +1,24 @@
1
+ {
2
+ "general": {
3
+ "headerTitle": "#{{orderNumber}} - Zamówienie zostało złożone",
4
+ "headerDescription": "Twoje zamówienie zostało przyjęte i jest w trakcie realizacji. Wkrótce otrzymasz e-mail z informacją o statusie zamówienia.",
5
+ "labels": {
6
+ "salesChannel": "Kanał sprzedaży",
7
+ "salesChannelDescription": "Opis kanału sprzedaży",
8
+ "orderNumber": "Numer zamówienia",
9
+ "orderDate": "Data zamówienia",
10
+ "products": "Produkty",
11
+ "shippingAddress": "Adres dostawy",
12
+ "orderTotal": "Wartość zamówienia",
13
+ "taxTotal": "VAT",
14
+ "discountTotal": "Rabat",
15
+ "paidTotal": "Zapłacone",
16
+ "currency": "Waluta",
17
+ "currencyCode": "Kod waluty",
18
+ "currencySymbol": "Symbol waluty"
19
+ },
20
+ "noData": "Brak danych",
21
+ "viewOrderButton": "Zobacz szczegóły zamówienia",
22
+ "footer": "Jeśli masz pytania dotyczące zamówienia, skontaktuj się z nami."
23
+ }
24
+ }
@@ -0,0 +1,3 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHlwZXMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9zcmMvdGVtcGxhdGVzL2VtYWlscy9vcmRlci1wbGFjZWQvdHlwZXMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiJ9
@@ -0,0 +1,9 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.TEMPLATES_NAMES = void 0;
4
+ exports.TEMPLATES_NAMES = {
5
+ ORDER_PLACED: "order-placed",
6
+ ORDER_COMPLETED: "order-completed",
7
+ CONTACT_FORM: "contact-form",
8
+ };
9
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHlwZXMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9zcmMvdGVtcGxhdGVzL2VtYWlscy90eXBlcy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFBYSxRQUFBLGVBQWUsR0FBRztJQUM3QixZQUFZLEVBQUUsY0FBYztJQUM1QixlQUFlLEVBQUUsaUJBQWlCO0lBQ2xDLFlBQVksRUFBRSxjQUFjO0NBQ3BCLENBQUMifQ==
@@ -0,0 +1,6 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.getTranslations = void 0;
4
+ var utils_1 = require("./utils");
5
+ Object.defineProperty(exports, "getTranslations", { enumerable: true, get: function () { return utils_1.getTranslations; } });
6
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9zcmMvdGVtcGxhdGVzL3NoYXJlZC9pMThuL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7OztBQUVBLGlDQUEwQztBQUFqQyx3R0FBQSxlQUFlLE9BQUEifQ==