@codee-sh/medusa-plugin-notification-emails 0.0.2 → 0.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (55) hide show
  1. package/.medusa/server/emails-previews/contact-form.js +5 -7
  2. package/.medusa/server/emails-previews/inventory-level.js +23 -0
  3. package/.medusa/server/emails-previews/order-completed.js +20 -14
  4. package/.medusa/server/emails-previews/order-placed.js +19 -13
  5. package/.medusa/server/src/admin/index.js +385 -2364
  6. package/.medusa/server/src/admin/index.mjs +307 -2286
  7. package/.medusa/server/src/api/admin/notification-plugin/render-template/route.js +2 -2
  8. package/.medusa/server/src/hooks/api/orders.js +3 -2
  9. package/.medusa/server/src/templates/emails/base-template/index.js +23 -0
  10. package/.medusa/server/src/templates/emails/base-template/template.js +25 -0
  11. package/.medusa/server/src/templates/emails/blocks/components/heading.js +15 -0
  12. package/.medusa/server/src/templates/emails/blocks/components/product-item.js +14 -0
  13. package/.medusa/server/src/templates/emails/blocks/components/repeater.js +26 -0
  14. package/.medusa/server/src/templates/emails/blocks/components/row.js +13 -0
  15. package/.medusa/server/src/templates/emails/blocks/components/section.js +14 -0
  16. package/.medusa/server/src/templates/emails/blocks/components/separator.js +13 -0
  17. package/.medusa/server/src/templates/emails/blocks/components/text.js +15 -0
  18. package/.medusa/server/src/templates/emails/blocks/index.js +41 -0
  19. package/.medusa/server/src/templates/{shared/i18n → emails/blocks}/types.js +1 -1
  20. package/.medusa/server/src/templates/emails/contact-form/config.js +95 -0
  21. package/.medusa/server/src/templates/emails/contact-form/index.js +6 -17
  22. package/.medusa/server/src/templates/emails/contact-form/translations/de.json +14 -0
  23. package/.medusa/server/src/templates/emails/contact-form/translations/en.json +12 -14
  24. package/.medusa/server/src/templates/emails/contact-form/translations/pl.json +8 -10
  25. package/.medusa/server/src/templates/emails/index.js +183 -92
  26. package/.medusa/server/src/templates/emails/inventory-level/config.js +126 -0
  27. package/.medusa/server/src/templates/emails/inventory-level/index.js +6 -17
  28. package/.medusa/server/src/templates/emails/order-completed/config.js +233 -0
  29. package/.medusa/server/src/templates/emails/order-completed/index.js +6 -17
  30. package/.medusa/server/src/templates/emails/order-completed/translations/en.json +2 -1
  31. package/.medusa/server/src/templates/emails/order-completed/translations/pl.json +2 -1
  32. package/.medusa/server/src/templates/emails/order-placed/config.js +221 -0
  33. package/.medusa/server/src/templates/emails/order-placed/index.js +6 -17
  34. package/.medusa/server/src/templates/emails/order-placed/translations/en.json +1 -1
  35. package/.medusa/server/src/templates/emails/order-placed/translations/pl.json +1 -1
  36. package/.medusa/server/src/templates/emails/types.js +2 -1
  37. package/.medusa/server/src/utils/i18n/i18n.js +194 -0
  38. package/.medusa/server/src/utils/i18n/index.js +18 -0
  39. package/.medusa/server/src/utils/index.js +5 -1
  40. package/.medusa/server/src/utils/is-defined.js +7 -0
  41. package/.medusa/server/src/utils/is-object.js +7 -0
  42. package/.medusa/server/src/utils/pick-value-from-object.js +28 -0
  43. package/package.json +18 -11
  44. package/.medusa/server/src/templates/emails/contact-form/template.js +0 -28
  45. package/.medusa/server/src/templates/emails/contact-form/translations/index.js +0 -15
  46. package/.medusa/server/src/templates/emails/contact-form/types.js +0 -3
  47. package/.medusa/server/src/templates/emails/inventory-level/template.js +0 -28
  48. package/.medusa/server/src/templates/emails/inventory-level/types.js +0 -3
  49. package/.medusa/server/src/templates/emails/order-completed/template.js +0 -36
  50. package/.medusa/server/src/templates/emails/order-completed/types.js +0 -3
  51. package/.medusa/server/src/templates/emails/order-placed/template.js +0 -36
  52. package/.medusa/server/src/templates/emails/order-placed/types.js +0 -3
  53. package/.medusa/server/src/templates/shared/i18n/index.js +0 -6
  54. package/.medusa/server/src/templates/shared/i18n/languages.js +0 -187
  55. package/.medusa/server/src/templates/shared/i18n/utils.js +0 -186
@@ -2,9 +2,9 @@
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.POST = POST;
4
4
  const utils_1 = require("@medusajs/framework/utils");
5
- const emails_1 = require("../../../../templates/emails");
6
5
  const plugins_1 = require("../../../../utils/plugins");
7
6
  const theme_1 = require("../../../../templates/shared/theme");
7
+ const emails_1 = require("../../../../templates/emails");
8
8
  async function POST(req, res) {
9
9
  const pluginOptions = (0, plugins_1.getPluginOptions)(req.scope, "@codee-sh/medusa-plugin-notification");
10
10
  const templateName = req.body?.templateName;
@@ -23,4 +23,4 @@ async function POST(req, res) {
23
23
  text,
24
24
  });
25
25
  }
26
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicm91dGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9zcmMvYXBpL2FkbWluL25vdGlmaWNhdGlvbi1wbHVnaW4vcmVuZGVyLXRlbXBsYXRlL3JvdXRlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7O0FBT0Esb0JBNEJDO0FBbENELHFEQUF1RDtBQUN2RCx5REFBNkQ7QUFDN0QsdURBQTREO0FBQzVELDhEQUFpRTtBQUcxRCxLQUFLLFVBQVUsSUFBSSxDQUN4QixHQUErRSxFQUMvRSxHQUFtQjtJQUVuQixNQUFNLGFBQWEsR0FBRyxJQUFBLDBCQUFnQixFQUFDLEdBQUcsQ0FBQyxLQUFLLEVBQUUsc0NBQXNDLENBQUMsQ0FBQTtJQUV6RixNQUFNLFlBQVksR0FBRyxHQUFHLENBQUMsSUFBSSxFQUFFLFlBQTRCLENBQUE7SUFDM0QsTUFBTSxZQUFZLEdBQUcsR0FBRyxDQUFDLElBQUksRUFBRSxZQUFtQixDQUFBO0lBQ2xELE1BQU0sTUFBTSxHQUFHLEdBQUcsQ0FBQyxJQUFJLEVBQUUsTUFBTSxJQUFJLElBQUksQ0FBQTtJQUV2QyxJQUFJLENBQUMsWUFBWSxJQUFJLENBQUMsWUFBWSxJQUFJLENBQUMsTUFBTSxFQUFFLENBQUM7UUFDOUMsTUFBTSxJQUFJLG1CQUFXLENBQUMsbUJBQVcsQ0FBQyxLQUFLLENBQUMsZ0JBQWdCLEVBQUUsc0RBQXNELENBQUMsQ0FBQTtJQUNuSCxDQUFDO0lBRUQsTUFBTSxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUUsR0FBRyxNQUFNLElBQUEsdUJBQWMsRUFDekMsWUFBWSxFQUNaLFlBQVksRUFDWjtRQUNFLE1BQU0sRUFBRSxNQUFNO1FBQ2QsS0FBSyxFQUFFLGFBQWEsRUFBRSxLQUFLLElBQUksb0JBQVk7UUFDM0Msa0JBQWtCLEVBQUUsYUFBYSxFQUFFLGtCQUFrQixFQUFFLENBQUMsWUFBWSxDQUFDO0tBQ3RFLENBQ0YsQ0FBQTtJQUVELEdBQUcsQ0FBQyxNQUFNLENBQUMsR0FBRyxDQUFDLENBQUMsSUFBSSxDQUFDO1FBQ25CLElBQUk7UUFDSixJQUFJO0tBQ0wsQ0FBQyxDQUFBO0FBQ0osQ0FBQyJ9
26
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicm91dGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9zcmMvYXBpL2FkbWluL25vdGlmaWNhdGlvbi1wbHVnaW4vcmVuZGVyLXRlbXBsYXRlL3JvdXRlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7O0FBTUEsb0JBNEJDO0FBakNELHFEQUF1RDtBQUN2RCx1REFBNEQ7QUFDNUQsOERBQWlFO0FBQ2pFLHlEQUF5RjtBQUVsRixLQUFLLFVBQVUsSUFBSSxDQUN4QixHQUErRSxFQUMvRSxHQUFtQjtJQUVuQixNQUFNLGFBQWEsR0FBRyxJQUFBLDBCQUFnQixFQUFDLEdBQUcsQ0FBQyxLQUFLLEVBQUUsc0NBQXNDLENBQUMsQ0FBQTtJQUV6RixNQUFNLFlBQVksR0FBRyxHQUFHLENBQUMsSUFBSSxFQUFFLFlBQTRCLENBQUE7SUFDM0QsTUFBTSxZQUFZLEdBQUcsR0FBRyxDQUFDLElBQUksRUFBRSxZQUE0QixDQUFBO0lBQzNELE1BQU0sTUFBTSxHQUFHLEdBQUcsQ0FBQyxJQUFJLEVBQUUsTUFBTSxJQUFJLElBQUksQ0FBQTtJQUV2QyxJQUFJLENBQUMsWUFBWSxJQUFJLENBQUMsWUFBWSxJQUFJLENBQUMsTUFBTSxFQUFFLENBQUM7UUFDOUMsTUFBTSxJQUFJLG1CQUFXLENBQUMsbUJBQVcsQ0FBQyxLQUFLLENBQUMsZ0JBQWdCLEVBQUUsc0RBQXNELENBQUMsQ0FBQTtJQUNuSCxDQUFDO0lBRUQsTUFBTSxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUUsR0FBRyxNQUFNLElBQUEsdUJBQWMsRUFDekMsWUFBWSxFQUNaLFlBQVksRUFDWjtRQUNFLE1BQU0sRUFBRSxNQUFNO1FBQ2QsS0FBSyxFQUFFLGFBQWEsRUFBRSxLQUFLLElBQUksb0JBQVk7UUFDM0Msa0JBQWtCLEVBQUUsYUFBYSxFQUFFLGtCQUFrQixFQUFFLENBQUMsWUFBWSxDQUFDO0tBQ3RFLENBQ0YsQ0FBQTtJQUVELEdBQUcsQ0FBQyxNQUFNLENBQUMsR0FBRyxDQUFDLENBQUMsSUFBSSxDQUFDO1FBQ25CLElBQUk7UUFDSixJQUFJO0tBQ0wsQ0FBQyxDQUFBO0FBQ0osQ0FBQyJ9
@@ -4,7 +4,7 @@ exports.useOrder = exports.useOrders = void 0;
4
4
  const react_query_1 = require("@tanstack/react-query");
5
5
  const sdk_1 = require("../../admin/lib/sdk");
6
6
  const useOrders = (params = {}, options) => {
7
- const { limit = 100, offset = 0, extraKey = [], enabled, fields = "id,display_id" } = params;
7
+ const { limit = 100, offset = 0, extraKey = [], enabled, fields = "id,display_id", order = "-created_at" } = params;
8
8
  const queryKey = [
9
9
  "orders",
10
10
  ...extraKey
@@ -13,6 +13,7 @@ const useOrders = (params = {}, options) => {
13
13
  limit,
14
14
  offset,
15
15
  fields,
16
+ order,
16
17
  };
17
18
  const { data, ...rest } = (0, react_query_1.useQuery)({
18
19
  queryKey,
@@ -47,4 +48,4 @@ const useOrder = (params, options) => {
47
48
  return { data, ...rest };
48
49
  };
49
50
  exports.useOrder = useOrder;
50
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoib3JkZXJzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vc3JjL2hvb2tzL2FwaS9vcmRlcnMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBRUEsdURBTThCO0FBQzlCLDZDQUF5QztBQWVsQyxNQUFNLFNBQVMsR0FBRyxDQUN2QixTQUEwQixFQUFFLEVBQzVCLE9BR0MsRUFDRCxFQUFFO0lBQ0YsTUFBTSxFQUFFLEtBQUssR0FBRyxHQUFHLEVBQUUsTUFBTSxHQUFHLENBQUMsRUFBRSxRQUFRLEdBQUcsRUFBRSxFQUFFLE9BQU8sRUFBRSxNQUFNLEdBQUcsZUFBZSxFQUFFLEdBQUcsTUFBTSxDQUFDO0lBRTdGLE1BQU0sUUFBUSxHQUFhO1FBQ3pCLFFBQVE7UUFDUixHQUFHLFFBQVE7S0FDWixDQUFDO0lBRUYsTUFBTSxLQUFLLEdBQUc7UUFDWixLQUFLO1FBQ0wsTUFBTTtRQUNOLE1BQU07S0FDQSxDQUFDO0lBRVQsTUFBTSxFQUFFLElBQUksRUFBRSxHQUFHLElBQUksRUFBRSxHQUFHLElBQUEsc0JBQVEsRUFLaEM7UUFDQSxRQUFRO1FBQ1IsT0FBTyxFQUFFLEtBQUssSUFBSSxFQUFFO1lBQ2xCLE9BQU8sTUFBTSxTQUFHLENBQUMsS0FBSyxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUE7UUFDMUMsQ0FBQztRQUNELE9BQU87UUFDUCxHQUFJLE9BQWU7S0FDcEIsQ0FBQyxDQUFDO0lBRUgsT0FBTyxFQUFFLElBQUksRUFBRSxHQUFHLElBQUksRUFBRSxDQUFDO0FBQzNCLENBQUMsQ0FBQztBQW5DVyxRQUFBLFNBQVMsYUFtQ3BCO0FBV0ssTUFBTSxRQUFRLEdBQUcsQ0FDdEIsTUFBc0IsRUFDdEIsT0FRQyxFQUNELEVBQUU7SUFDRixNQUFNLEVBQ0osUUFBUSxFQUNSLFFBQVEsR0FBRyxFQUFFLEVBQ2IsT0FBTyxHQUFHLEtBQUssR0FDaEIsR0FBRyxNQUFNLENBQUE7SUFFVixNQUFNLFFBQVEsR0FBYTtRQUN6QixPQUFPO1FBQ1AsUUFBUTtRQUNSLEdBQUcsUUFBUTtLQUNaLENBQUE7SUFFRCxNQUFNLEVBQUUsSUFBSSxFQUFFLEdBQUcsSUFBSSxFQUFFLEdBQUcsSUFBQSxzQkFBUSxFQUtoQztRQUNBLFFBQVE7UUFDUixPQUFPLEVBQUUsS0FBSyxJQUFJLEVBQUU7WUFDbEIsTUFBTSxFQUFFLEtBQUssRUFBRSxHQUFHLE1BQU0sU0FBRyxDQUFDLEtBQUssQ0FBQyxLQUFLLENBQUMsUUFBUSxDQUFDLFFBQVEsRUFBRTtnQkFDekQsTUFBTSxFQUFFLGkyQkFBaTJCO2FBQzEyQixDQUFDLENBQUE7WUFFRixPQUFPLEtBQUssQ0FBQTtRQUNkLENBQUM7UUFDRCxTQUFTLEVBQUUsQ0FBQztRQUNaLE9BQU8sRUFBRSxPQUFPO1FBQ2hCLEdBQUksT0FBZTtLQUNwQixDQUFDLENBQUE7SUFFRixPQUFPLEVBQUUsSUFBSSxFQUFFLEdBQUcsSUFBSSxFQUFFLENBQUE7QUFDMUIsQ0FBQyxDQUFBO0FBNUNZLFFBQUEsUUFBUSxZQTRDcEIifQ==
51
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoib3JkZXJzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vc3JjL2hvb2tzL2FwaS9vcmRlcnMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBRUEsdURBTThCO0FBQzlCLDZDQUF5QztBQWdCbEMsTUFBTSxTQUFTLEdBQUcsQ0FDdkIsU0FBMEIsRUFBRSxFQUM1QixPQUdDLEVBQ0QsRUFBRTtJQUNGLE1BQU0sRUFBRSxLQUFLLEdBQUcsR0FBRyxFQUFFLE1BQU0sR0FBRyxDQUFDLEVBQUUsUUFBUSxHQUFHLEVBQUUsRUFBRSxPQUFPLEVBQUUsTUFBTSxHQUFHLGVBQWUsRUFBRSxLQUFLLEdBQUcsYUFBYSxFQUFFLEdBQUcsTUFBTSxDQUFDO0lBRXBILE1BQU0sUUFBUSxHQUFhO1FBQ3pCLFFBQVE7UUFDUixHQUFHLFFBQVE7S0FDWixDQUFDO0lBRUYsTUFBTSxLQUFLLEdBQUc7UUFDWixLQUFLO1FBQ0wsTUFBTTtRQUNOLE1BQU07UUFDTixLQUFLO0tBQ0MsQ0FBQztJQUVULE1BQU0sRUFBRSxJQUFJLEVBQUUsR0FBRyxJQUFJLEVBQUUsR0FBRyxJQUFBLHNCQUFRLEVBS2hDO1FBQ0EsUUFBUTtRQUNSLE9BQU8sRUFBRSxLQUFLLElBQUksRUFBRTtZQUNsQixPQUFPLE1BQU0sU0FBRyxDQUFDLEtBQUssQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFBO1FBQzFDLENBQUM7UUFDRCxPQUFPO1FBQ1AsR0FBSSxPQUFlO0tBQ3BCLENBQUMsQ0FBQztJQUVILE9BQU8sRUFBRSxJQUFJLEVBQUUsR0FBRyxJQUFJLEVBQUUsQ0FBQztBQUMzQixDQUFDLENBQUM7QUFwQ1csUUFBQSxTQUFTLGFBb0NwQjtBQVdLLE1BQU0sUUFBUSxHQUFHLENBQ3RCLE1BQXNCLEVBQ3RCLE9BUUMsRUFDRCxFQUFFO0lBQ0YsTUFBTSxFQUNKLFFBQVEsRUFDUixRQUFRLEdBQUcsRUFBRSxFQUNiLE9BQU8sR0FBRyxLQUFLLEdBQ2hCLEdBQUcsTUFBTSxDQUFBO0lBRVYsTUFBTSxRQUFRLEdBQWE7UUFDekIsT0FBTztRQUNQLFFBQVE7UUFDUixHQUFHLFFBQVE7S0FDWixDQUFBO0lBRUQsTUFBTSxFQUFFLElBQUksRUFBRSxHQUFHLElBQUksRUFBRSxHQUFHLElBQUEsc0JBQVEsRUFLaEM7UUFDQSxRQUFRO1FBQ1IsT0FBTyxFQUFFLEtBQUssSUFBSSxFQUFFO1lBQ2xCLE1BQU0sRUFBRSxLQUFLLEVBQUUsR0FBRyxNQUFNLFNBQUcsQ0FBQyxLQUFLLENBQUMsS0FBSyxDQUFDLFFBQVEsQ0FBQyxRQUFRLEVBQUU7Z0JBQ3pELE1BQU0sRUFBRSxpMkJBQWkyQjthQUMxMkIsQ0FBQyxDQUFBO1lBRUYsT0FBTyxLQUFLLENBQUE7UUFDZCxDQUFDO1FBQ0QsU0FBUyxFQUFFLENBQUM7UUFDWixPQUFPLEVBQUUsT0FBTztRQUNoQixHQUFJLE9BQWU7S0FDcEIsQ0FBQyxDQUFBO0lBRUYsT0FBTyxFQUFFLElBQUksRUFBRSxHQUFHLElBQUksRUFBRSxDQUFBO0FBQzFCLENBQUMsQ0FBQTtBQTVDWSxRQUFBLFFBQVEsWUE0Q3BCIn0=
@@ -0,0 +1,23 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.getBaseTemplateHtml = getBaseTemplateHtml;
4
+ exports.getBaseTemplateText = getBaseTemplateText;
5
+ exports.getBaseTemplateReactNode = getBaseTemplateReactNode;
6
+ const template_1 = require("./template");
7
+ /**
8
+ * Generates HTML for base template
9
+ *
10
+ * @param data - Base template data
11
+ * @param options - Optional theme and locale configuration
12
+ * @returns HTML string ready to send
13
+ */
14
+ async function getBaseTemplateHtml(data, options) {
15
+ return await (0, template_1.renderHTML)(data, options);
16
+ }
17
+ async function getBaseTemplateText(data, options) {
18
+ return await (0, template_1.renderText)(data, options);
19
+ }
20
+ function getBaseTemplateReactNode(data, options) {
21
+ return (0, template_1.renderHTMLReact)(data, options);
22
+ }
23
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9zcmMvdGVtcGxhdGVzL2VtYWlscy9iYXNlLXRlbXBsYXRlL2luZGV4LnRzeCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOztBQVVBLGtEQUtDO0FBRUQsa0RBS0M7QUFFRCw0REFLQztBQTVCRCx5Q0FBcUU7QUFFckU7Ozs7OztHQU1HO0FBQ0ksS0FBSyxVQUFVLG1CQUFtQixDQUN2QyxJQUFTLEVBQ1QsT0FBNEI7SUFFNUIsT0FBTyxNQUFNLElBQUEscUJBQVUsRUFBQyxJQUFJLEVBQUUsT0FBTyxDQUFDLENBQUM7QUFDekMsQ0FBQztBQUVNLEtBQUssVUFBVSxtQkFBbUIsQ0FDdkMsSUFBUyxFQUNULE9BQTRCO0lBRTVCLE9BQU8sTUFBTSxJQUFBLHFCQUFVLEVBQUMsSUFBSSxFQUFFLE9BQU8sQ0FBQyxDQUFDO0FBQ3pDLENBQUM7QUFFRCxTQUFnQix3QkFBd0IsQ0FDdEMsSUFBUyxFQUNULE9BQTRCO0lBRTVCLE9BQU8sSUFBQSwwQkFBZSxFQUFDLElBQUksRUFBRSxPQUFPLENBQUMsQ0FBQztBQUN4QyxDQUFDIn0=
@@ -0,0 +1,25 @@
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 blocks_1 = require("../blocks");
10
+ function renderHTMLReact(data, options) {
11
+ const theme = options.theme || {};
12
+ const blocks = options.blocks || [];
13
+ 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: {
14
+ presets: [components_1.pixelBasedPreset],
15
+ theme: theme
16
+ }, 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.jsx)(components_1.Container, { className: "py-4", children: (0, jsx_runtime_1.jsx)(blocks_1.BlockRenderer, { blocks: blocks, data: data }) }) }) })] }));
17
+ }
18
+ async function renderHTML(data, options) {
19
+ return await (0, render_1.pretty)(await (0, render_1.render)(renderHTMLReact(data, options)));
20
+ }
21
+ async function renderText(data, options) {
22
+ const html = await (0, render_1.render)(renderHTMLReact(data, options));
23
+ return (0, render_1.toPlainText)(html);
24
+ }
25
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGVtcGxhdGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9zcmMvdGVtcGxhdGVzL2VtYWlscy9iYXNlLXRlbXBsYXRlL3RlbXBsYXRlLnRzeCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOztBQU1BLDBDQXdCQztBQUVELGdDQUtDO0FBRUQsZ0NBTUM7O0FBNUNELHdEQUEySTtBQUMzSSxnREFBa0U7QUFFbEUsc0NBQTBDO0FBRTFDLFNBQWdCLGVBQWUsQ0FDN0IsSUFBUyxFQUNULE9BQTRCO0lBRTVCLE1BQU0sS0FBSyxHQUFHLE9BQU8sQ0FBQyxLQUFLLElBQUksRUFBRSxDQUFDO0lBQ2xDLE1BQU0sTUFBTSxHQUFHLE9BQU8sQ0FBQyxNQUFNLElBQUksRUFBRSxDQUFDO0lBRXBDLE9BQU8sQ0FDTCx3QkFBQyxpQkFBSSxlQUNILHVCQUFDLGlCQUFJLEtBQUcsRUFDUix1QkFBQyxxQkFBUSxJQUNQLE1BQU0sRUFBRTtvQkFDTixPQUFPLEVBQUUsQ0FBQyw2QkFBZ0IsQ0FBQztvQkFDM0IsS0FBSyxFQUFFLEtBQUs7aUJBQ2IsWUFFRCx1QkFBQyxpQkFBSSxJQUFDLFNBQVMsRUFBQyw2RUFBNkUsWUFDM0YsdUJBQUMsc0JBQVMsSUFBQyxTQUFTLEVBQUMsTUFBTSxZQUN6Qix1QkFBQyxzQkFBYSxJQUFDLE1BQU0sRUFBRSxNQUFNLEVBQUUsSUFBSSxFQUFFLElBQUksR0FBSSxHQUNuQyxHQUNQLEdBQ0UsSUFDTixDQUNSLENBQUM7QUFDSixDQUFDO0FBRU0sS0FBSyxVQUFVLFVBQVUsQ0FDOUIsSUFBUyxFQUNULE9BQTRCO0lBRTVCLE9BQU8sTUFBTSxJQUFBLGVBQU0sRUFBQyxNQUFNLElBQUEsZUFBTSxFQUFDLGVBQWUsQ0FBQyxJQUFJLEVBQUUsT0FBTyxDQUFDLENBQUMsQ0FBQyxDQUFDO0FBQ3BFLENBQUM7QUFFTSxLQUFLLFVBQVUsVUFBVSxDQUM5QixJQUFTLEVBQ1QsT0FBNEI7SUFFNUIsTUFBTSxJQUFJLEdBQUcsTUFBTSxJQUFBLGVBQU0sRUFBQyxlQUFlLENBQUMsSUFBSSxFQUFFLE9BQU8sQ0FBQyxDQUFDLENBQUM7SUFDMUQsT0FBTyxJQUFBLG9CQUFXLEVBQUMsSUFBSSxDQUFDLENBQUM7QUFDM0IsQ0FBQyJ9
@@ -0,0 +1,15 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.HeadingBlock = HeadingBlock;
4
+ const jsx_runtime_1 = require("react/jsx-runtime");
5
+ const components_1 = require("@react-email/components");
6
+ const ui_1 = require("@medusajs/ui");
7
+ /**
8
+ * HeadingBlock - Heading block component
9
+ *
10
+ */
11
+ function HeadingBlock({ id, props, data, isLastBlock, isFirstBlock, }) {
12
+ const className = (0, ui_1.clx)("text-xl", "font-bold", isLastBlock ? "mb-0" : "mb-4", isFirstBlock ? "mt-0" : "mt-4");
13
+ return ((0, jsx_runtime_1.jsx)(components_1.Heading, { className: className, children: props.value }));
14
+ }
15
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaGVhZGluZy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3NyYy90ZW1wbGF0ZXMvZW1haWxzL2Jsb2Nrcy9jb21wb25lbnRzL2hlYWRpbmcudHN4Il0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7O0FBT0Esb0NBeUJDOztBQWhDRCx3REFBa0Q7QUFDbEQscUNBQW1DO0FBRW5DOzs7R0FHRztBQUNILFNBQWdCLFlBQVksQ0FBQyxFQUMzQixFQUFFLEVBQ0YsS0FBSyxFQUNMLElBQUksRUFDSixXQUFXLEVBQ1gsWUFBWSxHQU9iO0lBQ0MsTUFBTSxTQUFTLEdBQUcsSUFBQSxRQUFHLEVBQ25CLFNBQVMsRUFDVCxXQUFXLEVBQ1gsV0FBVyxDQUFDLENBQUMsQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLE1BQU0sRUFDN0IsWUFBWSxDQUFDLENBQUMsQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLE1BQU0sQ0FDL0IsQ0FBQztJQUVGLE9BQU8sQ0FDTCx1QkFBQyxvQkFBTyxJQUFDLFNBQVMsRUFBRSxTQUFTLFlBQzFCLEtBQUssQ0FBQyxLQUFLLEdBQ0osQ0FDWCxDQUFDO0FBQ0osQ0FBQyJ9
@@ -0,0 +1,14 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.ProductItemBlock = ProductItemBlock;
4
+ const jsx_runtime_1 = require("react/jsx-runtime");
5
+ const components_1 = require("@react-email/components");
6
+ /**
7
+ * ProductItemBlock - Product item block component
8
+ *
9
+ */
10
+ function ProductItemBlock({ props, data, isLastBlock, isFirstBlock, }) {
11
+ return ((0, jsx_runtime_1.jsxs)(components_1.Row, { children: [props.thumbnail &&
12
+ (0, jsx_runtime_1.jsxs)(jsx_runtime_1.Fragment, { children: [(0, jsx_runtime_1.jsx)(components_1.Column, { className: "w-[50px]", children: (0, jsx_runtime_1.jsx)("img", { src: props.thumbnail, width: 50, height: 50 }) }), (0, jsx_runtime_1.jsx)(components_1.Column, { className: "w-[12px]" })] }), (0, jsx_runtime_1.jsx)(components_1.Column, { className: "text-left", children: typeof props.value === "string" ? (0, jsx_runtime_1.jsx)("span", { dangerouslySetInnerHTML: { __html: props.value } }) : props.value })] }));
13
+ }
14
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJvZHVjdC1pdGVtLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vc3JjL3RlbXBsYXRlcy9lbWFpbHMvYmxvY2tzL2NvbXBvbmVudHMvcHJvZHVjdC1pdGVtLnRzeCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOztBQU1BLDRDQW9CQzs7QUExQkQsd0RBQTREO0FBRTVEOzs7R0FHRztBQUNILFNBQWdCLGdCQUFnQixDQUFDLEVBQy9CLEtBQUssRUFDTCxJQUFJLEVBQ0osV0FBVyxFQUNYLFlBQVksR0FDd0U7SUFDcEYsT0FBTyxDQUNMLHdCQUFDLGdCQUFHLGVBQ0QsS0FBSyxDQUFDLFNBQVM7Z0JBQ2QsNkRBQ0UsdUJBQUMsbUJBQU0sSUFBQyxTQUFTLEVBQUMsVUFBVSxZQUFDLGdDQUFLLEdBQUcsRUFBRSxLQUFLLENBQUMsU0FBUyxFQUFFLEtBQUssRUFBRSxFQUFFLEVBQUUsTUFBTSxFQUFFLEVBQUUsR0FBSSxHQUFTLEVBQzFGLHVCQUFDLG1CQUFNLElBQUMsU0FBUyxFQUFDLFVBQVUsR0FBVSxJQUNyQyxFQUdMLHVCQUFDLG1CQUFNLElBQUMsU0FBUyxFQUFDLFdBQVcsWUFDMUIsT0FBTyxLQUFLLENBQUMsS0FBSyxLQUFLLFFBQVEsQ0FBQyxDQUFDLENBQUMsaUNBQU0sdUJBQXVCLEVBQUUsRUFBRSxNQUFNLEVBQUUsS0FBSyxDQUFDLEtBQUssRUFBRSxHQUFJLENBQUMsQ0FBQyxDQUFDLEtBQUssQ0FBQyxLQUFLLEdBQ3BHLElBQ0wsQ0FDUCxDQUFDO0FBQ0osQ0FBQyJ9
@@ -0,0 +1,26 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.RepeaterBlock = RepeaterBlock;
4
+ const jsx_runtime_1 = require("react/jsx-runtime");
5
+ const index_1 = require("../index");
6
+ /**
7
+ * RepeaterBlock - Iterates over an array and renders blocks for each item
8
+ *
9
+ * Example:
10
+ * {
11
+ * type: "repeater",
12
+ * props: {
13
+ * arrayPath: "items",
14
+ * itemBlocks: [
15
+ * { type: "text", props: { text: "{{label}}" } }
16
+ * ],
17
+ * separator: { type: "separator" } // optional
18
+ * }
19
+ * }
20
+ */
21
+ function RepeaterBlock({ id, props, data, }) {
22
+ // Retrieve array from data
23
+ const array = props.itemBlocks;
24
+ return (0, jsx_runtime_1.jsx)(index_1.BlockRenderer, { blocks: array, data: data });
25
+ }
26
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVwZWF0ZXIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9zcmMvdGVtcGxhdGVzL2VtYWlscy9ibG9ja3MvY29tcG9uZW50cy9yZXBlYXRlci50c3giXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7QUFvQkEsc0NBaUJDOztBQXBDRCxvQ0FBeUM7QUFJekM7Ozs7Ozs7Ozs7Ozs7O0dBY0c7QUFDSCxTQUFnQixhQUFhLENBQUMsRUFDNUIsRUFBRSxFQUNGLEtBQUssRUFDTCxJQUFJLEdBU0w7SUFDQywyQkFBMkI7SUFDM0IsTUFBTSxLQUFLLEdBQUcsS0FBSyxDQUFDLFVBQVUsQ0FBQztJQUUvQixPQUFPLHVCQUFDLHFCQUFhLElBQUMsTUFBTSxFQUFFLEtBQUssRUFBRSxJQUFJLEVBQUUsSUFBSSxHQUFJLENBQUE7QUFDckQsQ0FBQyJ9
@@ -0,0 +1,13 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.RowBlock = RowBlock;
4
+ const jsx_runtime_1 = require("react/jsx-runtime");
5
+ const components_1 = require("@react-email/components");
6
+ /**
7
+ * RowBlock - Row block component
8
+ *
9
+ */
10
+ function RowBlock({ id, props, data, isLastBlock, isFirstBlock, }) {
11
+ return ((0, jsx_runtime_1.jsxs)(components_1.Row, { children: [(0, jsx_runtime_1.jsx)(components_1.Column, { className: "font-semibold", children: props.label }), (0, jsx_runtime_1.jsx)(components_1.Column, { className: "text-right", children: typeof props.value === "string" ? (0, jsx_runtime_1.jsx)("span", { dangerouslySetInnerHTML: { __html: props.value } }) : props.value })] }));
12
+ }
13
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicm93LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vc3JjL3RlbXBsYXRlcy9lbWFpbHMvYmxvY2tzL2NvbXBvbmVudHMvcm93LnRzeCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOztBQU1BLDRCQXFCQzs7QUEzQkQsd0RBQXNEO0FBRXREOzs7R0FHRztBQUNILFNBQWdCLFFBQVEsQ0FBQyxFQUN2QixFQUFFLEVBQ0YsS0FBSyxFQUNMLElBQUksRUFDSixXQUFXLEVBQ1gsWUFBWSxHQU9iO0lBQ0MsT0FBTyxDQUNMLHdCQUFDLGdCQUFHLGVBQ0YsdUJBQUMsbUJBQU0sSUFBQyxTQUFTLEVBQUMsZUFBZSxZQUFFLEtBQUssQ0FBQyxLQUFLLEdBQVUsRUFDeEQsdUJBQUMsbUJBQU0sSUFBQyxTQUFTLEVBQUMsWUFBWSxZQUMzQixPQUFPLEtBQUssQ0FBQyxLQUFLLEtBQUssUUFBUSxDQUFDLENBQUMsQ0FBQyxpQ0FBTSx1QkFBdUIsRUFBRSxFQUFFLE1BQU0sRUFBRSxLQUFLLENBQUMsS0FBSyxFQUFFLEdBQUksQ0FBQyxDQUFDLENBQUMsS0FBSyxDQUFDLEtBQUssR0FDcEcsSUFDTCxDQUNQLENBQUM7QUFDSixDQUFDIn0=
@@ -0,0 +1,14 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.SectionBlock = SectionBlock;
4
+ const jsx_runtime_1 = require("react/jsx-runtime");
5
+ const components_1 = require("@react-email/components");
6
+ const index_1 = require("../index");
7
+ /**
8
+ * SectionBlock - Container for other blocks with optional title and styles
9
+ *
10
+ */
11
+ function SectionBlock({ id, props, data, isLastBlock, isFirstBlock, }) {
12
+ return ((0, jsx_runtime_1.jsx)(components_1.Section, { className: "m-0 p-0", children: (0, jsx_runtime_1.jsx)(index_1.BlockRenderer, { blocks: props.blocks || [], data: data }) }));
13
+ }
14
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VjdGlvbi5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3NyYy90ZW1wbGF0ZXMvZW1haWxzL2Jsb2Nrcy9jb21wb25lbnRzL3NlY3Rpb24udHN4Il0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7O0FBT0Esb0NBWUM7O0FBbkJELHdEQUFrRDtBQUNsRCxvQ0FBeUM7QUFFekM7OztHQUdHO0FBQ0gsU0FBZ0IsWUFBWSxDQUFDLEVBQzNCLEVBQUUsRUFDRixLQUFLLEVBQ0wsSUFBSSxFQUNKLFdBQVcsRUFDWCxZQUFZLEdBQ3lFO0lBQ3JGLE9BQU8sQ0FDTCx1QkFBQyxvQkFBTyxJQUFDLFNBQVMsRUFBQyxTQUFTLFlBQzFCLHVCQUFDLHFCQUFhLElBQUMsTUFBTSxFQUFFLEtBQUssQ0FBQyxNQUFNLElBQUksRUFBRSxFQUFFLElBQUksRUFBRSxJQUFJLEdBQUksR0FDakQsQ0FDWCxDQUFDO0FBQ0osQ0FBQyJ9
@@ -0,0 +1,13 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.SeparatorBlock = SeparatorBlock;
4
+ const jsx_runtime_1 = require("react/jsx-runtime");
5
+ const components_1 = require("@react-email/components");
6
+ /**
7
+ * SeparatorBlock - Separator block component
8
+ *
9
+ */
10
+ function SeparatorBlock({ id, props, isLastBlock, isFirstBlock, }) {
11
+ return ((0, jsx_runtime_1.jsx)(components_1.Hr, { className: "my-4 border-ui-border" }));
12
+ }
13
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VwYXJhdG9yLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vc3JjL3RlbXBsYXRlcy9lbWFpbHMvYmxvY2tzL2NvbXBvbmVudHMvc2VwYXJhdG9yLnRzeCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOztBQU1BLHdDQWNDOztBQXBCRCx3REFBNkM7QUFFN0M7OztHQUdHO0FBQ0gsU0FBZ0IsY0FBYyxDQUFDLEVBQzdCLEVBQUUsRUFDRixLQUFLLEVBQ0wsV0FBVyxFQUNYLFlBQVksR0FNYjtJQUNDLE9BQU8sQ0FDTCx1QkFBQyxlQUFFLElBQUMsU0FBUyxFQUFDLHVCQUF1QixHQUFHLENBQ3pDLENBQUM7QUFDSixDQUFDIn0=
@@ -0,0 +1,15 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.TextBlock = TextBlock;
4
+ const jsx_runtime_1 = require("react/jsx-runtime");
5
+ const components_1 = require("@react-email/components");
6
+ const ui_1 = require("@medusajs/ui");
7
+ /**
8
+ * TextBlock - Text block component
9
+ *
10
+ */
11
+ function TextBlock({ id, props, isLastBlock, isFirstBlock, }) {
12
+ const className = (0, ui_1.clx)(isLastBlock ? "mb-0" : "mb-4", isFirstBlock && "mt-0");
13
+ return ((0, jsx_runtime_1.jsx)(components_1.Text, { className: className, children: typeof props.value === "string" ? (0, jsx_runtime_1.jsx)("span", { dangerouslySetInnerHTML: { __html: props.value } }) : props.value }, id));
14
+ }
15
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGV4dC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3NyYy90ZW1wbGF0ZXMvZW1haWxzL2Jsb2Nrcy9jb21wb25lbnRzL3RleHQudHN4Il0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7O0FBT0EsOEJBZ0JDOztBQXZCRCx3REFBK0M7QUFDL0MscUNBQW1DO0FBRW5DOzs7R0FHRztBQUNILFNBQWdCLFNBQVMsQ0FBQyxFQUN4QixFQUFFLEVBQ0YsS0FBSyxFQUNMLFdBQVcsRUFDWCxZQUFZLEdBQzREO0lBQ3hFLE1BQU0sU0FBUyxHQUFHLElBQUEsUUFBRyxFQUNuQixXQUFXLENBQUMsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsTUFBTSxFQUM3QixZQUFZLElBQUksTUFBTSxDQUN2QixDQUFDO0lBRUYsT0FBTyxDQUNMLHVCQUFDLGlCQUFJLElBQVUsU0FBUyxFQUFFLFNBQVMsWUFDaEMsT0FBTyxLQUFLLENBQUMsS0FBSyxLQUFLLFFBQVEsQ0FBQyxDQUFDLENBQUMsaUNBQU0sdUJBQXVCLEVBQUUsRUFBRSxNQUFNLEVBQUUsS0FBSyxDQUFDLEtBQUssRUFBRSxHQUFJLENBQUMsQ0FBQyxDQUFDLEtBQUssQ0FBQyxLQUFLLElBRGxHLEVBQUUsQ0FFTixDQUNSLENBQUM7QUFDSixDQUFDIn0=
@@ -0,0 +1,41 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.BlockRenderer = BlockRenderer;
4
+ const jsx_runtime_1 = require("react/jsx-runtime");
5
+ const section_1 = require("./components/section");
6
+ const text_1 = require("./components/text");
7
+ const repeater_1 = require("./components/repeater");
8
+ const heading_1 = require("./components/heading");
9
+ const row_1 = require("./components/row");
10
+ const separator_1 = require("./components/separator");
11
+ const product_item_1 = require("./components/product-item");
12
+ function BlockRenderer({ blocks, data }) {
13
+ return blocks.map((block, index) => {
14
+ const blockKey = block.id || `block-${index}`;
15
+ const isLastBlock = index === blocks.length - 1;
16
+ const isFirstBlock = index === 0;
17
+ switch (block.type) {
18
+ case "section":
19
+ return ((0, jsx_runtime_1.jsx)(section_1.SectionBlock, { id: blockKey, props: block.props, data: data, isLastBlock: isLastBlock, isFirstBlock: isFirstBlock }, blockKey));
20
+ case "row":
21
+ return ((0, jsx_runtime_1.jsx)(row_1.RowBlock, { id: blockKey, props: block.props, data: data, isLastBlock: isLastBlock, isFirstBlock: isFirstBlock }, blockKey));
22
+ case "product-item":
23
+ return ((0, jsx_runtime_1.jsx)(product_item_1.ProductItemBlock, { id: blockKey, props: block.props, data: data, isLastBlock: isLastBlock, isFirstBlock: isFirstBlock }, blockKey));
24
+ case "heading":
25
+ return ((0, jsx_runtime_1.jsx)(heading_1.HeadingBlock, { id: blockKey, props: block.props, data: data, isLastBlock: isLastBlock, isFirstBlock: isFirstBlock }, blockKey));
26
+ case "text":
27
+ return ((0, jsx_runtime_1.jsx)(text_1.TextBlock, { id: blockKey, props: block.props, isLastBlock: isLastBlock, isFirstBlock: isFirstBlock }, blockKey));
28
+ case "separator":
29
+ return ((0, jsx_runtime_1.jsx)(separator_1.SeparatorBlock, { id: blockKey, props: block.props, isLastBlock: isLastBlock, isFirstBlock: isFirstBlock }, blockKey));
30
+ case "repeater":
31
+ if (!data) {
32
+ console.warn("RepeaterBlock requires data prop");
33
+ return null;
34
+ }
35
+ return ((0, jsx_runtime_1.jsx)(repeater_1.RepeaterBlock, { id: blockKey, props: block.props, data: data }, blockKey));
36
+ default:
37
+ return null;
38
+ }
39
+ });
40
+ }
41
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9zcmMvdGVtcGxhdGVzL2VtYWlscy9ibG9ja3MvaW5kZXgudHN4Il0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7O0FBUUEsc0NBd0ZDOztBQWhHRCxrREFBb0Q7QUFDcEQsNENBQThDO0FBQzlDLG9EQUFzRDtBQUN0RCxrREFBb0Q7QUFDcEQsMENBQTRDO0FBQzVDLHNEQUF3RDtBQUN4RCw0REFBNkQ7QUFFN0QsU0FBZ0IsYUFBYSxDQUFDLEVBQUUsTUFBTSxFQUFFLElBQUksRUFBaUM7SUFDM0UsT0FBTyxNQUFNLENBQUMsR0FBRyxDQUFDLENBQUMsS0FBSyxFQUFFLEtBQUssRUFBRSxFQUFFO1FBQ2pDLE1BQU0sUUFBUSxHQUFHLEtBQUssQ0FBQyxFQUFFLElBQUksU0FBUyxLQUFLLEVBQUUsQ0FBQztRQUM5QyxNQUFNLFdBQVcsR0FBRyxLQUFLLEtBQUssTUFBTSxDQUFDLE1BQU0sR0FBRyxDQUFDLENBQUM7UUFDaEQsTUFBTSxZQUFZLEdBQUcsS0FBSyxLQUFLLENBQUMsQ0FBQztRQUVqQyxRQUFRLEtBQUssQ0FBQyxJQUFJLEVBQUUsQ0FBQztZQUNuQixLQUFLLFNBQVM7Z0JBQ1osT0FBTyxDQUNMLHVCQUFDLHNCQUFZLElBRVgsRUFBRSxFQUFFLFFBQVEsRUFDWixLQUFLLEVBQUUsS0FBSyxDQUFDLEtBQUssRUFDbEIsSUFBSSxFQUFFLElBQUksRUFDVixXQUFXLEVBQUUsV0FBVyxFQUN4QixZQUFZLEVBQUUsWUFBWSxJQUxyQixRQUFRLENBTWIsQ0FDSCxDQUFDO1lBQ0osS0FBSyxLQUFLO2dCQUNSLE9BQU8sQ0FDTCx1QkFBQyxjQUFRLElBRVAsRUFBRSxFQUFFLFFBQVEsRUFDWixLQUFLLEVBQUUsS0FBSyxDQUFDLEtBQUssRUFDbEIsSUFBSSxFQUFFLElBQUksRUFDVixXQUFXLEVBQUUsV0FBVyxFQUN4QixZQUFZLEVBQUUsWUFBWSxJQUxyQixRQUFRLENBTWIsQ0FDSCxDQUFDO1lBQ0osS0FBSyxjQUFjO2dCQUNqQixPQUFPLENBQ0wsdUJBQUMsK0JBQWdCLElBRWYsRUFBRSxFQUFFLFFBQVEsRUFDWixLQUFLLEVBQUUsS0FBSyxDQUFDLEtBQUssRUFDbEIsSUFBSSxFQUFFLElBQUksRUFDVixXQUFXLEVBQUUsV0FBVyxFQUN4QixZQUFZLEVBQUUsWUFBWSxJQUxyQixRQUFRLENBTWIsQ0FDSCxDQUFDO1lBQ0osS0FBSyxTQUFTO2dCQUNaLE9BQU8sQ0FDTCx1QkFBQyxzQkFBWSxJQUVYLEVBQUUsRUFBRSxRQUFRLEVBQ1osS0FBSyxFQUFFLEtBQUssQ0FBQyxLQUFLLEVBQ2xCLElBQUksRUFBRSxJQUFJLEVBQ1YsV0FBVyxFQUFFLFdBQVcsRUFDeEIsWUFBWSxFQUFFLFlBQVksSUFMckIsUUFBUSxDQU1iLENBQ0gsQ0FBQztZQUNKLEtBQUssTUFBTTtnQkFDVCxPQUFPLENBQ0wsdUJBQUMsZ0JBQVMsSUFFUixFQUFFLEVBQUUsUUFBUSxFQUNaLEtBQUssRUFBRSxLQUFLLENBQUMsS0FBSyxFQUNsQixXQUFXLEVBQUUsV0FBVyxFQUN4QixZQUFZLEVBQUUsWUFBWSxJQUpyQixRQUFRLENBS2IsQ0FDSCxDQUFDO1lBQ0osS0FBSyxXQUFXO2dCQUNkLE9BQU8sQ0FDTCx1QkFBQywwQkFBYyxJQUViLEVBQUUsRUFBRSxRQUFRLEVBQ1osS0FBSyxFQUFFLEtBQUssQ0FBQyxLQUFLLEVBQ2xCLFdBQVcsRUFBRSxXQUFXLEVBQ3hCLFlBQVksRUFBRSxZQUFZLElBSnJCLFFBQVEsQ0FLYixDQUNILENBQUM7WUFDSixLQUFLLFVBQVU7Z0JBQ2IsSUFBSSxDQUFDLElBQUksRUFBRSxDQUFDO29CQUNWLE9BQU8sQ0FBQyxJQUFJLENBQUMsa0NBQWtDLENBQUMsQ0FBQztvQkFDakQsT0FBTyxJQUFJLENBQUM7Z0JBQ2QsQ0FBQztnQkFDRCxPQUFPLENBQ0wsdUJBQUMsd0JBQWEsSUFFWixFQUFFLEVBQUUsUUFBUSxFQUNaLEtBQUssRUFBRSxLQUFLLENBQUMsS0FBSyxFQUNsQixJQUFJLEVBQUUsSUFBSSxJQUhMLFFBQVEsQ0FJYixDQUNILENBQUM7WUFDSjtnQkFDRSxPQUFPLElBQUksQ0FBQztRQUNoQixDQUFDO0lBQ0gsQ0FBQyxDQUF5QixDQUFDO0FBQzdCLENBQUMifQ==
@@ -1,3 +1,3 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHlwZXMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9zcmMvdGVtcGxhdGVzL3NoYXJlZC9pMThuL3R5cGVzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiIifQ==
3
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHlwZXMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9zcmMvdGVtcGxhdGVzL2VtYWlscy9ibG9ja3MvdHlwZXMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiJ9
@@ -0,0 +1,95 @@
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.templateBlocks = exports.translations = exports.de = exports.en = exports.pl = void 0;
7
+ const pl_json_1 = __importDefault(require("./translations/pl.json"));
8
+ exports.pl = pl_json_1.default;
9
+ const en_json_1 = __importDefault(require("./translations/en.json"));
10
+ exports.en = en_json_1.default;
11
+ const de_json_1 = __importDefault(require("./translations/de.json"));
12
+ exports.de = de_json_1.default;
13
+ exports.translations = {
14
+ pl: pl_json_1.default,
15
+ en: en_json_1.default,
16
+ de: de_json_1.default,
17
+ };
18
+ exports.templateBlocks = [
19
+ {
20
+ type: "section",
21
+ id: "section-1",
22
+ props: {
23
+ blocks: [
24
+ {
25
+ id: "heading-1",
26
+ type: "heading",
27
+ props: {
28
+ value: "{{translations.headerTitle}}",
29
+ },
30
+ },
31
+ ],
32
+ },
33
+ },
34
+ {
35
+ id: "separator-1",
36
+ type: "separator",
37
+ },
38
+ {
39
+ type: "section",
40
+ id: "section-1",
41
+ props: {
42
+ blocks: [
43
+ {
44
+ id: "row-1",
45
+ type: "row",
46
+ props: {
47
+ label: "{{translations.labels.email}}",
48
+ value: "{{data.email}}",
49
+ },
50
+ },
51
+ {
52
+ id: "separator-1",
53
+ type: "separator",
54
+ },
55
+ {
56
+ id: "row-2",
57
+ type: "row",
58
+ props: {
59
+ label: "{{translations.labels.phone}}",
60
+ value: "{{data.phone}}",
61
+ },
62
+ },
63
+ {
64
+ id: "separator-2",
65
+ type: "separator",
66
+ },
67
+ {
68
+ id: "row-3",
69
+ type: "row",
70
+ props: {
71
+ label: "{{translations.labels.message}}",
72
+ value: "{{data.message}}",
73
+ },
74
+ },
75
+ // {
76
+ // id: "repeater-1",
77
+ // type: "repeater",
78
+ // props: {
79
+ // arrayPath: "items",
80
+ // itemBlocks: [
81
+ // {
82
+ // id: "text-3",
83
+ // type: "text",
84
+ // props: {
85
+ // value: "{{data.items.label}} - {{data.items.value}} {{translations.email}}",
86
+ // },
87
+ // },
88
+ // ]
89
+ // },
90
+ // },
91
+ ],
92
+ },
93
+ },
94
+ ];
95
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29uZmlnLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vc3JjL3RlbXBsYXRlcy9lbWFpbHMvY29udGFjdC1mb3JtL2NvbmZpZy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7QUFBQSxxRUFBd0M7QUFJL0IsYUFKRixpQkFBRSxDQUlFO0FBSFgscUVBQXdDO0FBRzNCLGFBSE4saUJBQUUsQ0FHTTtBQUZmLHFFQUF3QztBQUV2QixhQUZWLGlCQUFFLENBRVU7QUFFTixRQUFBLFlBQVksR0FBcUI7SUFDNUMsRUFBRSxFQUFFLGlCQUFFO0lBQ04sRUFBRSxFQUFFLGlCQUFFO0lBQ04sRUFBRSxFQUFFLGlCQUFFO0NBQ1AsQ0FBQztBQUVXLFFBQUEsY0FBYyxHQUFHO0lBQzVCO1FBQ0UsSUFBSSxFQUFFLFNBQVM7UUFDZixFQUFFLEVBQUUsV0FBVztRQUNmLEtBQUssRUFBRTtZQUNMLE1BQU0sRUFBRTtnQkFDTjtvQkFDRSxFQUFFLEVBQUUsV0FBVztvQkFDZixJQUFJLEVBQUUsU0FBUztvQkFDZixLQUFLLEVBQUU7d0JBQ0wsS0FBSyxFQUFFLDhCQUE4QjtxQkFDdEM7aUJBQ0Y7YUFDRjtTQUNGO0tBQ0Y7SUFDRDtRQUNFLEVBQUUsRUFBRSxhQUFhO1FBQ2pCLElBQUksRUFBRSxXQUFXO0tBQ2xCO0lBQ0Q7UUFDRSxJQUFJLEVBQUUsU0FBUztRQUNmLEVBQUUsRUFBRSxXQUFXO1FBQ2YsS0FBSyxFQUFFO1lBQ0wsTUFBTSxFQUFFO2dCQUNOO29CQUNFLEVBQUUsRUFBRSxPQUFPO29CQUNYLElBQUksRUFBRSxLQUFLO29CQUNYLEtBQUssRUFBRTt3QkFDTCxLQUFLLEVBQUUsK0JBQStCO3dCQUN0QyxLQUFLLEVBQUUsZ0JBQWdCO3FCQUN4QjtpQkFDRjtnQkFDRDtvQkFDRSxFQUFFLEVBQUUsYUFBYTtvQkFDakIsSUFBSSxFQUFFLFdBQVc7aUJBQ2xCO2dCQUNEO29CQUNFLEVBQUUsRUFBRSxPQUFPO29CQUNYLElBQUksRUFBRSxLQUFLO29CQUNYLEtBQUssRUFBRTt3QkFDTCxLQUFLLEVBQUUsK0JBQStCO3dCQUN0QyxLQUFLLEVBQUUsZ0JBQWdCO3FCQUN4QjtpQkFDRjtnQkFDRDtvQkFDRSxFQUFFLEVBQUUsYUFBYTtvQkFDakIsSUFBSSxFQUFFLFdBQVc7aUJBQ2xCO2dCQUNEO29CQUNFLEVBQUUsRUFBRSxPQUFPO29CQUNYLElBQUksRUFBRSxLQUFLO29CQUNYLEtBQUssRUFBRTt3QkFDTCxLQUFLLEVBQUUsaUNBQWlDO3dCQUN4QyxLQUFLLEVBQUUsa0JBQWtCO3FCQUMxQjtpQkFDRjtnQkFDRCxJQUFJO2dCQUNKLHNCQUFzQjtnQkFDdEIsc0JBQXNCO2dCQUN0QixhQUFhO2dCQUNiLDBCQUEwQjtnQkFDMUIsb0JBQW9CO2dCQUNwQixVQUFVO2dCQUNWLHdCQUF3QjtnQkFDeEIsd0JBQXdCO2dCQUN4QixtQkFBbUI7Z0JBQ25CLHlGQUF5RjtnQkFDekYsYUFBYTtnQkFDYixXQUFXO2dCQUNYLFFBQVE7Z0JBQ1IsT0FBTztnQkFDUCxLQUFLO2FBQ047U0FDRjtLQUNGO0NBQ0YsQ0FBQyJ9
@@ -1,19 +1,8 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.getContactFormHtml = getContactFormHtml;
4
- exports.getContactFormText = getContactFormText;
5
- const template_1 = require("./template");
6
- /**
7
- * Generates HTML email for contact form notification
8
- *
9
- * @param data - Contact form data (includes subject)
10
- * @param options - Optional theme and locale configuration
11
- * @returns HTML string ready to send
12
- */
13
- async function getContactFormHtml(data, options) {
14
- return await (0, template_1.renderHTML)(data, options);
15
- }
16
- async function getContactFormText(data, options) {
17
- return await (0, template_1.renderText)(data, options);
18
- }
19
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9zcmMvdGVtcGxhdGVzL2VtYWlscy9jb250YWN0LWZvcm0vaW5kZXgudHN4Il0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7O0FBV0EsZ0RBS0M7QUFFRCxnREFLQztBQXJCRCx5Q0FBb0Q7QUFFcEQ7Ozs7OztHQU1HO0FBQ0ksS0FBSyxVQUFVLGtCQUFrQixDQUN0QyxJQUFpQyxFQUNqQyxPQUE0QjtJQUU1QixPQUFPLE1BQU0sSUFBQSxxQkFBVSxFQUFDLElBQUksRUFBRSxPQUFPLENBQUMsQ0FBQztBQUN6QyxDQUFDO0FBRU0sS0FBSyxVQUFVLGtCQUFrQixDQUN0QyxJQUFpQyxFQUNqQyxPQUE0QjtJQUU1QixPQUFPLE1BQU0sSUFBQSxxQkFBVSxFQUFDLElBQUksRUFBRSxPQUFPLENBQUMsQ0FBQztBQUN6QyxDQUFDIn0=
3
+ exports.translations = exports.templateBlocks = void 0;
4
+ // import { templateBlocks, translations } from "./config";
5
+ var config_1 = require("./config");
6
+ Object.defineProperty(exports, "templateBlocks", { enumerable: true, get: function () { return config_1.templateBlocks; } });
7
+ Object.defineProperty(exports, "translations", { enumerable: true, get: function () { return config_1.translations; } });
8
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9zcmMvdGVtcGxhdGVzL2VtYWlscy9jb250YWN0LWZvcm0vaW5kZXgudHN4Il0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7OztBQUFBLDJEQUEyRDtBQUMzRCxtQ0FBd0Q7QUFBL0Msd0dBQUEsY0FBYyxPQUFBO0FBQUUsc0dBQUEsWUFBWSxPQUFBIn0=
@@ -0,0 +1,14 @@
1
+ {
2
+ "headerTitle": "New message from contact form",
3
+ "labels": {
4
+ "name": "Name",
5
+ "email": "Email",
6
+ "phone": "Phone",
7
+ "message": "Message"
8
+ },
9
+ "header": {
10
+ "title": "New message from contact form",
11
+ "description": "This message was sent automatically from the contact form"
12
+ },
13
+ "footer": "This message was sent automatically from the contact form"
14
+ }
@@ -1,16 +1,14 @@
1
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
- }
2
+ "headerTitle": "New message from contact form",
3
+ "labels": {
4
+ "name": "Name",
5
+ "email": "Email",
6
+ "phone": "Phone",
7
+ "message": "Message"
8
+ },
9
+ "header": {
10
+ "title": "New message from contact form",
11
+ "description": "This message was sent automatically from the contact form"
12
+ },
13
+ "footer": "This message was sent automatically from the contact form"
16
14
  }
@@ -1,12 +1,10 @@
1
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
- }
2
+ "headerTitle": "Nowa wiadomość z formularza kontaktowego",
3
+ "labels": {
4
+ "name": "Imię i nazwisko",
5
+ "email": "Email",
6
+ "phone": "Telefon",
7
+ "message": "Wiadomość"
8
+ },
9
+ "footer": "Ta wiadomość została wysłana automatycznie z formularza kontaktowego"
12
10
  }