@codee-sh/medusa-plugin-notification-emails 0.0.1 → 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 (56) 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 +392 -2528
  6. package/.medusa/server/src/admin/index.mjs +314 -2450
  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 +191 -45
  26. package/.medusa/server/src/templates/emails/inventory-level/config.js +126 -0
  27. package/.medusa/server/src/templates/emails/inventory-level/index.js +8 -0
  28. package/.medusa/server/src/templates/emails/inventory-level/translations/en.json +12 -0
  29. package/.medusa/server/src/templates/emails/{contact-form → inventory-level}/translations/index.js +1 -1
  30. package/.medusa/server/src/templates/emails/inventory-level/translations/pl.json +14 -0
  31. package/.medusa/server/src/templates/emails/order-completed/config.js +233 -0
  32. package/.medusa/server/src/templates/emails/order-completed/index.js +6 -17
  33. package/.medusa/server/src/templates/emails/order-completed/translations/en.json +2 -1
  34. package/.medusa/server/src/templates/emails/order-completed/translations/pl.json +2 -1
  35. package/.medusa/server/src/templates/emails/order-placed/config.js +221 -0
  36. package/.medusa/server/src/templates/emails/order-placed/index.js +6 -17
  37. package/.medusa/server/src/templates/emails/order-placed/translations/en.json +1 -1
  38. package/.medusa/server/src/templates/emails/order-placed/translations/pl.json +1 -1
  39. package/.medusa/server/src/templates/emails/types.js +3 -1
  40. package/.medusa/server/src/utils/i18n/i18n.js +194 -0
  41. package/.medusa/server/src/utils/i18n/index.js +18 -0
  42. package/.medusa/server/src/utils/index.js +5 -1
  43. package/.medusa/server/src/utils/is-defined.js +7 -0
  44. package/.medusa/server/src/utils/is-object.js +7 -0
  45. package/.medusa/server/src/utils/pick-value-from-object.js +28 -0
  46. package/README.md +8 -8
  47. package/package.json +18 -11
  48. package/.medusa/server/src/templates/emails/contact-form/template.js +0 -28
  49. package/.medusa/server/src/templates/emails/contact-form/types.js +0 -3
  50. package/.medusa/server/src/templates/emails/order-completed/template.js +0 -36
  51. package/.medusa/server/src/templates/emails/order-completed/types.js +0 -3
  52. package/.medusa/server/src/templates/emails/order-placed/template.js +0 -36
  53. package/.medusa/server/src/templates/emails/order-placed/types.js +0 -3
  54. package/.medusa/server/src/templates/shared/i18n/index.js +0 -6
  55. package/.medusa/server/src/templates/shared/i18n/languages.js +0 -187
  56. package/.medusa/server/src/templates/shared/i18n/utils.js +0 -186
@@ -1,54 +1,127 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.TEMPLATES_NAMES = void 0;
4
+ exports.interpolateBlocks = interpolateBlocks;
4
5
  exports.getTemplate = getTemplate;
5
6
  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");
7
+ exports.renderTemplateSync = renderTemplateSync;
8
+ const index_1 = require("./base-template/index");
9
9
  const types_1 = require("./types");
10
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");
11
+ const contact_form_1 = require("./contact-form");
12
+ const inventory_level_1 = require("./inventory-level");
13
+ const order_placed_1 = require("./order-placed");
14
+ const order_completed_1 = require("./order-completed");
15
+ const utils_1 = require("../../utils");
15
16
  /**
16
17
  * Template translations registry mapping template names to their translations
17
18
  */
18
19
  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,
20
+ [types_1.TEMPLATES_NAMES.INVENTORY_LEVEL]: inventory_level_1.translations,
21
+ };
22
+ const baseTemplateConfig = {
23
+ [types_1.TEMPLATES_NAMES.BASE_TEMPLATE]: {
24
+ getHtml: async (data, options) => {
25
+ return await (0, index_1.getBaseTemplateHtml)(data, options);
26
+ },
27
+ getText: async (data, options) => {
28
+ return await (0, index_1.getBaseTemplateText)(data, options);
29
+ },
30
+ getReactNode: (data, options) => {
31
+ return (0, index_1.getBaseTemplateReactNode)(data, options);
32
+ },
33
+ }
22
34
  };
23
35
  /**
24
36
  * Template registry mapping template names to their renderers
25
37
  */
26
38
  const templateRegistry = {
39
+ ...baseTemplateConfig,
27
40
  [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);
41
+ ...baseTemplateConfig[types_1.TEMPLATES_NAMES.BASE_TEMPLATE],
42
+ getConfig: () => {
43
+ return {
44
+ blocks: contact_form_1.templateBlocks,
45
+ translations: contact_form_1.translations,
46
+ };
33
47
  },
34
48
  },
35
49
  [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);
50
+ ...baseTemplateConfig[types_1.TEMPLATES_NAMES.BASE_TEMPLATE],
51
+ getConfig: () => {
52
+ return {
53
+ blocks: order_placed_1.templateBlocks,
54
+ translations: order_placed_1.translations,
55
+ };
41
56
  },
42
57
  },
43
58
  [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);
59
+ ...baseTemplateConfig[types_1.TEMPLATES_NAMES.BASE_TEMPLATE],
60
+ getConfig: () => {
61
+ return {
62
+ blocks: order_completed_1.templateBlocks,
63
+ translations: order_completed_1.translations,
64
+ };
49
65
  },
50
66
  },
67
+ [types_1.TEMPLATES_NAMES.INVENTORY_LEVEL]: {
68
+ ...baseTemplateConfig[types_1.TEMPLATES_NAMES.BASE_TEMPLATE],
69
+ getConfig: () => {
70
+ return {
71
+ blocks: inventory_level_1.templateBlocks,
72
+ translations: inventory_level_1.translations,
73
+ };
74
+ },
75
+ }
51
76
  };
77
+ /**
78
+ * Recursively interpolate text in blocks
79
+ * Processes props.text in each block and nested blocks
80
+ */
81
+ function interpolateBlocks(blocks, data, translator, config) {
82
+ return blocks.map((block) => {
83
+ const processedBlock = { ...block };
84
+ // Process all string properties in props
85
+ if (processedBlock.props && typeof processedBlock.props === "object") {
86
+ const processedProps = { ...processedBlock.props };
87
+ // Iterate over all properties in props
88
+ for (const [key, value] of Object.entries(processedProps)) {
89
+ // Skip non-string values and special properties (blocks, itemBlocks, separator, arrayPath)
90
+ if ((typeof value === "string") &&
91
+ key !== "blocks" &&
92
+ key !== "itemBlocks" &&
93
+ key !== "arrayPath") {
94
+ processedProps[key] = (0, utils_1.multiInterpolate)(value, data, translator, config);
95
+ }
96
+ }
97
+ processedBlock.props = processedProps;
98
+ }
99
+ // Recursively process nested blocks
100
+ if (processedBlock.props?.blocks &&
101
+ Array.isArray(processedBlock.props.blocks)) {
102
+ processedBlock.props = {
103
+ ...processedBlock.props,
104
+ blocks: interpolateBlocks(processedBlock.props.blocks, data, translator),
105
+ };
106
+ }
107
+ if (processedBlock.type === "repeater") {
108
+ const { arrayPath, itemBlocks } = processedBlock.props || {};
109
+ if (arrayPath && itemBlocks) {
110
+ const array = (0, utils_1.pickValueFromObject)(arrayPath, data);
111
+ if (Array.isArray(array) && array.length > 0) {
112
+ const interpolatedItemBlocks = array.map((item) => interpolateBlocks(itemBlocks, item, translator, {
113
+ arrayPath: arrayPath,
114
+ })[0]);
115
+ processedBlock.props = {
116
+ ...processedBlock.props,
117
+ itemBlocks: interpolatedItemBlocks,
118
+ };
119
+ }
120
+ }
121
+ }
122
+ return processedBlock;
123
+ });
124
+ }
52
125
  /**
53
126
  * Get template renderer by template name
54
127
  *
@@ -64,35 +137,108 @@ function getTemplate(templateName) {
64
137
  return template;
65
138
  }
66
139
  /**
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
140
+ * Prepare template data (translations, blocks, translator, processedBlocks)
141
+ * Shared logic for renderTemplate and renderTemplateSync
73
142
  */
74
- async function renderTemplate(templateName, data, options) {
75
- const template = getTemplate(templateName);
143
+ function prepareTemplateData(templateName, data, options) {
76
144
  const locale = options?.locale || "pl";
145
+ const template = getTemplate(templateName);
146
+ const config = template.getConfig?.() || {};
77
147
  // 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
148
+ const translations = config?.translations || templateTranslationsRegistry[templateName] || {};
149
+ // If blocks are not provided, use basic blocks from config
150
+ const providedBlocks = options?.blocks || [];
151
+ let blocks = providedBlocks.length > 0 ? providedBlocks : config?.blocks || [];
152
+ // Process translations once
83
153
  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
154
+ // Merge translations
155
+ const mergedTranslations = (0, utils_1.mergeTranslations)(translations, customTranslations);
156
+ // Create translator function
157
+ const translator = (0, utils_1.createTranslator)(locale, mergedTranslations);
158
+ // Interpolate blocks if provided
159
+ const processedBlocks = blocks.length > 0 ? interpolateBlocks(blocks, data, translator) : blocks;
160
+ // Pass processed blocks in options to render functions
88
161
  const renderOptions = {
89
162
  ...options,
90
- i18n,
163
+ blocks: processedBlocks,
164
+ };
165
+ return {
166
+ template,
167
+ translator,
168
+ processedBlocks,
169
+ renderOptions,
91
170
  };
171
+ }
172
+ /**
173
+ * Generate HTML and text for a template
174
+ *
175
+ * @param templateName - Name of the template (optional if createTemplate is provided)
176
+ * @param data - Template data
177
+ * @param options - Optional theme and locale configuration
178
+ * @param createTemplate - Optional custom template function that takes data and options, returns React.ReactElement
179
+ * @returns Object with html, text, and subject properties
180
+ */
181
+ async function renderTemplate(templateName, data, options, createTemplate) {
182
+ // // If createTemplate is provided, use custom template
183
+ // if (createTemplate) {
184
+ // // Create basic i18n if not provided (for custom templates)
185
+ // let i18n = options?.customTranslations?.[templateName];
186
+ // if (!i18n) {
187
+ // // Create a simple i18n object for custom templates
188
+ // i18n = {
189
+ // t: (key: string, data?: any) => {
190
+ // // Try to get from customTranslations if available
191
+ // if (options?.customTranslations && templateName) {
192
+ // const custom = options.customTranslations[templateName];
193
+ // if (custom && custom[key]) {
194
+ // return typeof custom[key] === "function"
195
+ // ? custom[key](data)
196
+ // : custom[key];
197
+ // }
198
+ // }
199
+ // // Fallback to key or empty string
200
+ // return key;
201
+ // },
202
+ // };
203
+ // }
204
+ // // Pass processed i18n in options to render functions
205
+ // const renderOptions: TemplateOptionsType = {
206
+ // ...options,
207
+ // i18n,
208
+ // };
209
+ // // Render React component to HTML
210
+ // const reactNode = createTemplate(data, renderOptions);
211
+ // const htmlRendered = await render(reactNode);
212
+ // const html = await pretty(htmlRendered);
213
+ // const text = toPlainText(htmlRendered);
214
+ // // Get subject from i18n or use default
215
+ // const subject = i18n.t("headerTitle", data) || "Email";
216
+ // return {
217
+ // html,
218
+ // text,
219
+ // subject,
220
+ // };
221
+ // }
222
+ // Original behavior: use template from registry
223
+ if (!templateName) {
224
+ throw new Error("Either templateName or createTemplate must be provided");
225
+ }
226
+ const { template, translator, renderOptions } = prepareTemplateData(templateName, data, options);
92
227
  return {
93
228
  html: await template.getHtml(data, renderOptions),
94
229
  text: await template.getText(data, renderOptions),
95
- subject,
230
+ subject: (0, utils_1.multiInterpolate)("{{translations.headerTitle}}", data, translator),
231
+ };
232
+ }
233
+ function renderTemplateSync(templateName, data, options) {
234
+ if (!templateName) {
235
+ throw new Error("Either templateName or createTemplate must be provided");
236
+ }
237
+ const { template, renderOptions } = prepareTemplateData(templateName, data, options);
238
+ return {
239
+ reactNode: template.getReactNode
240
+ ? template.getReactNode(data, renderOptions)
241
+ : undefined,
96
242
  };
97
243
  }
98
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9zcmMvdGVtcGxhdGVzL2VtYWlscy9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUErRUEsa0NBVUM7QUFVRCx3Q0FxQ0M7QUF2SUQsZ0RBQThFO0FBQzlFLGdEQUFnRjtBQUNoRixtREFBdUY7QUFDdkYsbUNBQTBDO0FBU2pDLGdHQVRBLHVCQUFlLE9BU0E7QUFSeEIseUNBQWlEO0FBQ2pELDhEQUFzRjtBQUN0Riw4REFBc0Y7QUFDdEYsaUVBQTRGO0FBaUI1Rjs7R0FFRztBQUNILE1BQU0sNEJBQTRCLEdBQThDO0lBQzlFLENBQUMsdUJBQWUsQ0FBQyxZQUFZLENBQUMsRUFBRSwyQkFBdUI7SUFDdkQsQ0FBQyx1QkFBZSxDQUFDLFlBQVksQ0FBQyxFQUFFLDJCQUF1QjtJQUN2RCxDQUFDLHVCQUFlLENBQUMsZUFBZSxDQUFDLEVBQUUsMkJBQTBCO0NBQzlELENBQUM7QUFFRjs7R0FFRztBQUNILE1BQU0sZ0JBQWdCLEdBQTJDO0lBQy9ELENBQUMsdUJBQWUsQ0FBQyxZQUFZLENBQUMsRUFBRTtRQUM5QixPQUFPLEVBQUUsS0FBSyxFQUFFLElBQVMsRUFBRSxPQUE2QixFQUFtQixFQUFFO1lBQzNFLE9BQU8sTUFBTSxJQUFBLDBCQUFrQixFQUFDLElBQUksRUFBRSxPQUFjLENBQUMsQ0FBQztRQUN4RCxDQUFDO1FBQ0QsT0FBTyxFQUFFLEtBQUssRUFBRSxJQUFTLEVBQUUsT0FBNkIsRUFBbUIsRUFBRTtZQUMzRSxPQUFPLE1BQU0sSUFBQSwwQkFBa0IsRUFBQyxJQUFJLEVBQUUsT0FBYyxDQUFDLENBQUM7UUFDeEQsQ0FBQztLQUNGO0lBQ0QsQ0FBQyx1QkFBZSxDQUFDLFlBQVksQ0FBQyxFQUFFO1FBQzlCLE9BQU8sRUFBRSxLQUFLLEVBQUUsSUFBUyxFQUFFLE9BQTZCLEVBQW1CLEVBQUU7WUFDM0UsT0FBTyxNQUFNLElBQUEsMkJBQW1CLEVB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
244
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9zcmMvdGVtcGxhdGVzL2VtYWlscy9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFrSkEsOENBd0VDO0FBU0Qsa0NBVUM7QUFrRUQsd0NBdUVDO0FBRUQsZ0RBZ0JDO0FBdFlELGlEQUkrQjtBQUUvQixtQ0FBMEM7QUE2QmpDLGdHQTdCQSx1QkFBZSxPQTZCQTtBQTNCeEIsaURBR3dCO0FBQ3hCLHVEQUcyQjtBQUMzQixpREFHd0I7QUFDeEIsdURBRzJCO0FBRTNCLHVDQUtxQjtBQWlCckI7O0dBRUc7QUFDSCxNQUFNLDRCQUE0QixHQUU5QjtJQUNGLENBQUMsdUJBQWUsQ0FBQyxlQUFlLENBQUMsRUFBRSw4QkFBMEI7Q0FDOUQsQ0FBQztBQUVGLE1BQU0sa0JBQWtCLEdBQTJDO0lBQ2pFLENBQUMsdUJBQWUsQ0FBQyxhQUFhLENBQUMsRUFBRTtRQUMvQixPQUFPLEVBQUUsS0FBSyxFQUNaLElBQVMsRUFDVCxPQUE2QixFQUNaLEVBQUU7WUFDbkIsT0FBTyxNQUFNLElBQUEsMkJBQW1CLEVBQUMsSUFBSSxFQUFFLE9BQWMsQ0FBQyxDQUFDO1FBQ3pELENBQUM7UUFDRCxPQUFPLEVBQUUsS0FBSyxFQUNaLElBQVMsRUFDVCxPQUE2QixFQUNaLEVBQUU7WUFDbkIsT0FBTyxNQUFNLElBQUEsMkJBQW1CLEVBQUMsSUFBSSxFQUFFLE9BQWMsQ0FBQyxDQUFDO1FBQ3pELENBQUM7UUFDRCxZQUFZLEVBQUUsQ0FDWixJQUFTLEVBQ1QsT0FBNkIsRUFDWixFQUFFO1lBQ25CLE9BQU8sSUFBQSxnQ0FBd0IsRUFBQyxJQUFJLEVBQUUsT0FBYyxDQUFDLENBQUM7UUFDeEQsQ0FBQztLQUNGO0NBQ0YsQ0FBQztBQUVGOztHQUVHO0FBQ0gsTUFBTSxnQkFBZ0IsR0FRbEI7SUFDRixHQUFHLGtCQUFrQjtJQUNyQixDQUFDLHVCQUFlLENBQUMsWUFBWSxDQUFDLEVB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
@@ -0,0 +1,126 @@
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.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
+ exports.translations = {
12
+ pl: pl_json_1.default,
13
+ en: en_json_1.default,
14
+ };
15
+ exports.templateBlocks = [
16
+ {
17
+ type: "section",
18
+ id: "section-1",
19
+ props: {
20
+ blocks: [
21
+ {
22
+ id: "heading-1",
23
+ type: "heading",
24
+ props: {
25
+ value: "{{translations.headerTitle}}",
26
+ },
27
+ },
28
+ {
29
+ id: "text-1",
30
+ type: "text",
31
+ props: {
32
+ value: "{{translations.headerDescription}}",
33
+ },
34
+ },
35
+ ],
36
+ },
37
+ },
38
+ {
39
+ id: "separator-1",
40
+ type: "separator",
41
+ },
42
+ {
43
+ type: "section",
44
+ id: "section-2",
45
+ props: {
46
+ blocks: [
47
+ {
48
+ id: "row-1",
49
+ type: "row",
50
+ props: {
51
+ label: "{{translations.labels.inventoryLevelId}}",
52
+ value: "{{data.inventory_level.id}}",
53
+ },
54
+ },
55
+ {
56
+ id: "separator-1",
57
+ type: "separator",
58
+ },
59
+ {
60
+ id: "row-2",
61
+ type: "row",
62
+ props: {
63
+ label: "{{translations.labels.inventoryLevelLocation}}",
64
+ value: "{{data.inventory_level.location_id}}",
65
+ },
66
+ },
67
+ {
68
+ id: "separator-2",
69
+ type: "separator",
70
+ },
71
+ {
72
+ id: "row-3",
73
+ type: "row",
74
+ props: {
75
+ label: "{{translations.labels.inventoryLevelStockedQuantity}}",
76
+ value: "{{data.inventory_level.stocked_quantity}}",
77
+ },
78
+ },
79
+ {
80
+ id: "separator-3",
81
+ type: "separator",
82
+ },
83
+ {
84
+ id: "row-4",
85
+ type: "row",
86
+ props: {
87
+ label: "{{translations.labels.inventoryLevelReservedQuantity}}",
88
+ value: "{{data.inventory_level.reserved_quantity}}",
89
+ },
90
+ },
91
+ {
92
+ id: "separator-4",
93
+ type: "separator",
94
+ },
95
+ {
96
+ id: "row-5",
97
+ type: "row",
98
+ props: {
99
+ label: "{{translations.labels.inventoryLevelAvailableQuantity}}",
100
+ value: "{{data.inventory_level.available_quantity}}",
101
+ },
102
+ },
103
+ ],
104
+ },
105
+ },
106
+ {
107
+ id: "separator-1",
108
+ type: "separator",
109
+ },
110
+ {
111
+ type: "section",
112
+ id: "section-3",
113
+ props: {
114
+ blocks: [
115
+ {
116
+ id: "text-2",
117
+ type: "text",
118
+ props: {
119
+ value: "{{translations.footer}}",
120
+ },
121
+ },
122
+ ],
123
+ },
124
+ },
125
+ ];
126
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29uZmlnLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vc3JjL3RlbXBsYXRlcy9lbWFpbHMvaW52ZW50b3J5LWxldmVsL2NvbmZpZy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7QUFBQSxxRUFBd0M7QUFHL0IsYUFIRixpQkFBRSxDQUdFO0FBRlgscUVBQXdDO0FBRTNCLGFBRk4saUJBQUUsQ0FFTTtBQUVGLFFBQUEsWUFBWSxHQUFxQjtJQUM1QyxFQUFFLEVBQUUsaUJBQUU7SUFDTixFQUFFLEVBQUUsaUJBQUU7Q0FDUCxDQUFDO0FBRVcsUUFBQSxjQUFjLEdBQUc7SUFDNUI7UUFDRSxJQUFJLEVBQUUsU0FBUztRQUNmLEVBQUUsRUFBRSxXQUFXO1FBQ2YsS0FBSyxFQUFFO1lBQ0wsTUFBTSxFQUFFO2dCQUNOO29CQUNFLEVBQUUsRUFBRSxXQUFXO29CQUNmLElBQUksRUFBRSxTQUFTO29CQUNmLEtBQUssRUFBRTt3QkFDTCxLQUFLLEVBQUUsOEJBQThCO3FCQUN0QztpQkFDRjtnQkFDRDtvQkFDRSxFQUFFLEVBQUUsUUFBUTtvQkFDWixJQUFJLEVBQUUsTUFBTTtvQkFDWixLQUFLLEVBQUU7d0JBQ0wsS0FBSyxFQUFFLG9DQUFvQztxQkFDNUM7aUJBQ0Y7YUFDRjtTQUNGO0tBQ0Y7SUFDRDtRQUNFLEVBQUUsRUFBRSxhQUFhO1FBQ2pCLElBQUksRUFBRSxXQUFXO0tBQ2xCO0lBQ0Q7UUFDRSxJQUFJLEVBQUUsU0FBUztRQUNmLEVBQUUsRUFBRSxXQUFXO1FBQ2YsS0FBSyxFQUFFO1lBQ0wsTUFBTSxFQUFFO2dCQUNOO29CQUNFLEVBQUUsRUFBRSxPQUFPO29CQUNYLElBQUksRUFBRSxLQUFLO29CQUNYLEtBQUssRUFBRTt3QkFDTCxLQUFLLEVBQUUsMENBQTBDO3dCQUNqRCxLQUFLLEVBQUUsNkJBQTZCO3FCQUNyQztpQkFDRjtnQkFDRDtvQkFDRSxFQUFFLEVBQUUsYUFBYTtvQkFDakIsSUFBSSxFQUFFLFdBQVc7aUJBQ2xCO2dCQUNEO29CQUNFLEVBQUUsRUFBRSxPQUFPO29CQUNYLElBQUksRUFBRSxLQUFLO29CQUNYLEtBQUssRUFBRTt3QkFDTCxLQUFLLEVBQUUsZ0RBQWdEO3dCQUN2RCxLQUFLLEVBQUUsc0NBQXNDO3FCQUM5QztpQkFDRjtnQkFDRDtvQkFDRSxFQUFFLEVBQUUsYUFBYTtvQkFDakIsSUFBSSxFQUFFLFdBQVc7aUJBQ2xCO2dCQUNEO29CQUNFLEVBQUUsRUFBRSxPQUFPO29CQUNYLElBQUksRUFBRSxLQUFLO29CQUNYLEtBQUssRUFBRTt3QkFDTCxLQUFLLEVBQUUsdURBQXVEO3dCQUM5RCxLQUFLLEVBQUUsMkNBQTJDO3FCQUNuRDtpQkFDRjtnQkFDRDtvQkFDRSxFQUFFLEVBQUUsYUFBYTtvQkFDakIsSUFBSSxFQUFFLFdBQVc7aUJBQ2xCO2dCQUNEO29CQUNFLEVBQUUsRUFBRSxPQUFPO29CQUNYLElBQUksRUFBRSxLQUFLO29CQUNYLEtBQUssRUFBRTt3QkFDTCxLQUFLLEVBQUUsd0RBQXdEO3dCQUMvRCxLQUFLLEVBQUUsNENBQTRDO3FCQUNwRDtpQkFDRjtnQkFDRDtvQkFDRSxFQUFFLEVBQUUsYUFBYTtvQkFDakIsSUFBSSxFQUFFLFdBQVc7aUJBQ2xCO2dCQUNEO29CQUNFLEVBQUUsRUFBRSxPQUFPO29CQUNYLElBQUksRUFBRSxLQUFLO29CQUNYLEtBQUssRUFBRTt3QkFDTCxLQUFLLEVBQUUseURBQXlEO3dCQUNoRSxLQUFLLEVBQUUsNkNBQTZDO3FCQUNyRDtpQkFDRjthQUNGO1NBQ0Y7S0FDRjtJQUNEO1FBQ0UsRUFBRSxFQUFFLGFBQWE7UUFDakIsSUFBSSxFQUFFLFdBQVc7S0FDbEI7SUFDRDtRQUNFLElBQUksRUFBRSxTQUFTO1FBQ2YsRUFBRSxFQUFFLFdBQVc7UUFDZixLQUFLLEVBQUU7WUFDTCxNQUFNLEVBQUU7Z0JBQ047b0JBQ0UsRUFBRSxFQUFFLFFBQVE7b0JBQ1osSUFBSSxFQUFFLE1BQU07b0JBQ1osS0FBSyxFQUFFO3dCQUNMLEtBQUssRUFBRSx5QkFBeUI7cUJBQ2pDO2lCQUNGO2FBQ0Y7U0FDRjtLQUNGO0NBQ0YsQ0FBQyJ9
@@ -0,0 +1,8 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
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,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9zcmMvdGVtcGxhdGVzL2VtYWlscy9pbnZlbnRvcnktbGV2ZWwvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBQUEsMkRBQTJEO0FBQzNELG1DQUF3RDtBQUEvQyx3R0FBQSxjQUFjLE9BQUE7QUFBRSxzR0FBQSxZQUFZLE9BQUEifQ==
@@ -0,0 +1,12 @@
1
+ {
2
+ "general": {
3
+ "headerTitle": "#{{inventoryLevelId}} - Inventory level has been updated",
4
+ "headerDescription": "Inventory level has been updated. Check the details.",
5
+ "labels": {
6
+ "inventoryLevelId": "Inventory Level ID",
7
+ "inventoryLevelLocation": "Inventory Level Location",
8
+ "inventoryLevelDate": "Inventory Level Date"
9
+ },
10
+ "footer": "If you have any questions, please contact us."
11
+ }
12
+ }
@@ -12,4 +12,4 @@ exports.translations = {
12
12
  pl: pl_json_1.default,
13
13
  en: en_json_1.default,
14
14
  };
15
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9zcmMvdGVtcGxhdGVzL2VtYWlscy9jb250YWN0LWZvcm0vdHJhbnNsYXRpb25zL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7OztBQUFBLHdEQUEyQjtBQVFsQixhQVJGLGlCQUFFLENBUUU7QUFQWCx3REFBMkI7QUFPZCxhQVBOLGlCQUFFLENBT007QUFMRixRQUFBLFlBQVksR0FBcUI7SUFDNUMsRUFBRSxFQUFFLGlCQUFFO0lBQ04sRUFBRSxFQUFFLGlCQUFFO0NBQ1AsQ0FBQyJ9
15
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9zcmMvdGVtcGxhdGVzL2VtYWlscy9pbnZlbnRvcnktbGV2ZWwvdHJhbnNsYXRpb25zL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7OztBQUFBLHdEQUEyQjtBQVFsQixhQVJGLGlCQUFFLENBUUU7QUFQWCx3REFBMkI7QUFPZCxhQVBOLGlCQUFFLENBT007QUFMRixRQUFBLFlBQVksR0FBcUI7SUFDNUMsRUFBRSxFQUFFLGlCQUFFO0lBQ04sRUFBRSxFQUFFLGlCQUFFO0NBQ1AsQ0FBQyJ9
@@ -0,0 +1,14 @@
1
+ {
2
+ "general": {
3
+ "headerTitle": "Poziom magazynowy został zmieniony",
4
+ "headerDescription": "Poziom magazynowy został zmieniony. Sprawdź szczegóły.",
5
+ "labels": {
6
+ "inventoryLevelId": "ID",
7
+ "inventoryLevelLocation": "Lokalizacja",
8
+ "inventoryLevelStockedQuantity": "Ilość na stanie",
9
+ "inventoryLevelReservedQuantity": "Ilość zarezerwowana",
10
+ "inventoryLevelAvailableQuantity": "Ilość dostępna"
11
+ },
12
+ "footer": "Jeśli masz pytania dotyczące poziomu magazynowego, skontaktuj się z nami."
13
+ }
14
+ }