@hartl-services/medusa-base 2.8.0 → 2.10.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 (50) hide show
  1. package/.medusa/server/src/admin/admin-components/features/plugin-features/components/PluginSettingsForm.js +4 -5
  2. package/.medusa/server/src/admin/admin-components/features/plugin-features/lib/plugin-view.d.ts +0 -5
  3. package/.medusa/server/src/admin/admin-components/features/plugin-features/lib/plugin-view.js +0 -5
  4. package/.medusa/server/src/admin/admin-components/i18n/texts.d.ts +1 -2
  5. package/.medusa/server/src/admin/admin-components/i18n/texts.js +1 -2
  6. package/.medusa/server/src/admin/index.js +106 -69
  7. package/.medusa/server/src/admin/index.mjs +107 -70
  8. package/.medusa/server/src/api/admin/email/templates/[kind]/send-test/route.js +7 -1
  9. package/.medusa/server/src/documents/templates/financial-document.js +23 -4
  10. package/.medusa/server/src/email/application/warn-credential-expiry.js +77 -0
  11. package/.medusa/server/src/email/config/index.js +8 -2
  12. package/.medusa/server/src/email/config/notification-module.js +28 -2
  13. package/.medusa/server/src/email/domain/business-keys.js +5 -2
  14. package/.medusa/server/src/email/domain/failure-classification.js +9 -1
  15. package/.medusa/server/src/email/plugin-features.js +123 -1
  16. package/.medusa/server/src/email/rendering/default-templates.js +16 -1
  17. package/.medusa/server/src/email/rendering/render-email.js +2 -1
  18. package/.medusa/server/src/email/types/email-kinds.js +2 -1
  19. package/.medusa/server/src/email/types/template-data.js +8 -1
  20. package/.medusa/server/src/jobs/email-credential-expiry.js +27 -0
  21. package/.medusa/server/src/modules/documents/domain/cancellation-snapshot.js +4 -1
  22. package/.medusa/server/src/modules/documents/domain/tax-breakdown.js +103 -29
  23. package/.medusa/server/src/modules/email/domain/message-state.js +3 -1
  24. package/.medusa/server/src/modules/email/migrations/Migration20261011120000.js +20 -0
  25. package/.medusa/server/src/providers/smtp/delivery-settings.js +75 -0
  26. package/.medusa/server/src/providers/smtp/graph-transport.js +150 -0
  27. package/.medusa/server/src/providers/smtp/service.js +105 -37
  28. package/.medusa/server/src/providers/smtp/types.js +7 -1
  29. package/.medusa/server/src/shared/lib/index.js +2 -1
  30. package/.medusa/server/src/shared/lib/shipping-tax.js +12 -0
  31. package/.medusa/server/src/shop-config/build-food-shop-config.js +3 -5
  32. package/.medusa/server/src/workflows/documents/issue-invoice-after-shipment.js +44 -33
  33. package/README.md +118 -69
  34. package/dist/documents/templates/financial-document.js +22 -3
  35. package/dist/documents/types/documents.d.ts +13 -0
  36. package/dist/email/config/index.d.ts +6 -1
  37. package/dist/email/config/index.js +7 -1
  38. package/dist/email/config/notification-module.d.ts +25 -0
  39. package/dist/email/config/notification-module.js +27 -1
  40. package/dist/email/types/email-kinds.d.ts +2 -1
  41. package/dist/email/types/email-kinds.js +1 -0
  42. package/dist/email/types/template-data.d.ts +10 -0
  43. package/dist/email/types/template-data.js +7 -0
  44. package/dist/shared/lib/index.d.ts +1 -0
  45. package/dist/shared/lib/index.js +1 -0
  46. package/dist/shared/lib/shipping-tax.d.ts +8 -0
  47. package/dist/shared/lib/shipping-tax.js +11 -0
  48. package/dist/shop-config/build-food-shop-config.d.ts +1 -1
  49. package/dist/shop-config/build-food-shop-config.js +2 -4
  50. package/package.json +2 -2
@@ -4,11 +4,16 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
4
4
  };
5
5
  Object.defineProperty(exports, "__esModule", { value: true });
6
6
  exports.SmtpNotificationService = exports.SMTP_TIMEOUTS = void 0;
7
+ const framework_1 = require("@medusajs/framework");
7
8
  const utils_1 = require("@medusajs/framework/utils");
8
9
  const nodemailer_1 = __importDefault(require("nodemailer"));
9
10
  const sender_1 = require("../../email/domain/sender");
11
+ const plugin_features_1 = require("../../email/plugin-features");
10
12
  const service_1 = require("../../modules/email/service");
13
+ const settings_1 = require("../../public/settings");
11
14
  const lib_1 = require("../../shared/lib");
15
+ const delivery_settings_1 = require("./delivery-settings");
16
+ const graph_transport_1 = require("./graph-transport");
12
17
  const types_1 = require("./types");
13
18
  exports.SMTP_TIMEOUTS = {
14
19
  connection: 10_000,
@@ -45,6 +50,9 @@ const classifySmtpFailure = (error) => {
45
50
  return types_1.SMTP_FAILURE_SENTINELS.outcomeUnknown;
46
51
  }
47
52
  const smtpError = error;
53
+ if (smtpError.code === "EAUTH") {
54
+ return types_1.SMTP_FAILURE_SENTINELS.authFailed;
55
+ }
48
56
  const responseCode = Number(smtpError.responseCode);
49
57
  if (responseCode >= 400 && responseCode < 500) {
50
58
  return types_1.SMTP_FAILURE_SENTINELS.transientRejection;
@@ -68,45 +76,51 @@ const classifySmtpFailure = (error) => {
68
76
  const throwSentinel = (sentinel) => {
69
77
  throw new utils_1.MedusaError(utils_1.MedusaError.Types.UNEXPECTED_STATE, sentinel);
70
78
  };
79
+ const smtpTransportFor = (smtp) => {
80
+ const transport = nodemailer_1.default.createTransport({
81
+ auth: smtp.user ? { pass: smtp.password, user: smtp.user } : undefined,
82
+ connectionTimeout: exports.SMTP_TIMEOUTS.connection,
83
+ greetingTimeout: exports.SMTP_TIMEOUTS.greeting,
84
+ host: smtp.host,
85
+ port: smtp.port,
86
+ requireTLS: smtp.requireTls,
87
+ secure: smtp.secure,
88
+ socketTimeout: exports.SMTP_TIMEOUTS.socket,
89
+ });
90
+ return { sendMail: (message) => transport.sendMail(message) };
91
+ };
92
+ /**
93
+ * The shop's mail provider (id `smtp`). Which service it sends through, SMTP
94
+ * or Microsoft 365 (Graph), and the credentials come from the E-Mail plugin's
95
+ * settings ("Versand"), read on every send; nothing is read at boot.
96
+ */
71
97
  class SmtpNotificationService extends utils_1.AbstractNotificationProviderService {
72
98
  constructor(dependencies, options) {
73
99
  super();
100
+ this.smtpTransport_ = null;
74
101
  this.logger_ = dependencies.logger;
75
102
  this.options_ = options;
76
103
  this.pgConnection_ = dependencies[utils_1.ContainerRegistrationKeys.PG_CONNECTION];
77
- if (options.transport) {
78
- this.transport_ = options.transport;
79
- return;
80
- }
81
- const transport = nodemailer_1.default.createTransport({
82
- auth: {
83
- pass: options.smtp.password,
84
- user: options.smtp.user,
85
- },
86
- connectionTimeout: exports.SMTP_TIMEOUTS.connection,
87
- greetingTimeout: exports.SMTP_TIMEOUTS.greeting,
88
- host: options.smtp.host,
89
- port: options.smtp.port,
90
- requireTLS: options.smtp.requireTls,
91
- secure: options.smtp.secure,
92
- socketTimeout: exports.SMTP_TIMEOUTS.socket,
93
- });
94
- this.transport_ = {
95
- sendMail: (message) => transport.sendMail(message),
96
- };
104
+ this.graph_ = new graph_transport_1.GraphTransport(options.graphFetch ??
105
+ ((url, init) => fetch(url, init)));
97
106
  }
98
107
  static validateOptions(options) {
99
108
  if (!options || typeof options !== "object" || Array.isArray(options)) {
100
109
  invalidOptions();
101
110
  }
102
111
  const channels = options.channels;
103
- const smtp = options.smtp;
104
112
  if (!Array.isArray(channels) ||
105
113
  channels.length !== 1 ||
106
114
  channels[0] !== "email" ||
107
- typeof smtp !== "object" ||
108
- smtp === null ||
109
- Array.isArray(smtp)) {
115
+ (options.allowInsecure !== undefined &&
116
+ typeof options.allowInsecure !== "boolean")) {
117
+ invalidOptions();
118
+ }
119
+ const smtp = options.smtp;
120
+ if (smtp === undefined) {
121
+ return;
122
+ }
123
+ if (typeof smtp !== "object" || smtp === null || Array.isArray(smtp)) {
110
124
  invalidOptions();
111
125
  }
112
126
  const configuration = smtp;
@@ -123,6 +137,33 @@ class SmtpNotificationService extends utils_1.AbstractNotificationProviderServic
123
137
  invalidOptions();
124
138
  }
125
139
  }
140
+ /** The settings of "Versand"; a read failure counts as unreachable. */
141
+ async deliverySettings() {
142
+ let settings;
143
+ try {
144
+ settings = await (this.options_.loadSettings
145
+ ? this.options_.loadSettings()
146
+ : (0, settings_1.getPluginSettings)(framework_1.container, plugin_features_1.emailPluginFeatures, (0, delivery_settings_1.smtpSettingsFallback)(this.options_.smtp)));
147
+ }
148
+ catch {
149
+ this.logger_.error(`smtp: settings unavailable (${types_1.SMTP_FAILURE_SENTINELS.connectionFailed})`);
150
+ return throwSentinel(types_1.SMTP_FAILURE_SENTINELS.connectionFailed);
151
+ }
152
+ const allowInsecure = this.options_.allowInsecure === true ||
153
+ // A deprecated medusa-config SMTP value was already checked there.
154
+ Boolean(this.options_.smtp);
155
+ return (0, delivery_settings_1.toDeliverySettings)(settings, allowInsecure);
156
+ }
157
+ smtpTransport(smtp) {
158
+ if (this.options_.transport) {
159
+ return this.options_.transport;
160
+ }
161
+ const key = JSON.stringify(smtp);
162
+ if (this.smtpTransport_?.key !== key) {
163
+ this.smtpTransport_ = { key, transport: smtpTransportFor(smtp) };
164
+ }
165
+ return this.smtpTransport_.transport;
166
+ }
126
167
  async send(notification) {
127
168
  const content = notification.content;
128
169
  const html = content?.html;
@@ -145,22 +186,47 @@ class SmtpNotificationService extends utils_1.AbstractNotificationProviderServic
145
186
  filename: attachment.filename,
146
187
  };
147
188
  });
148
- const from = notification.from && (0, sender_1.parseEmailSender)(notification.from)
149
- ? notification.from
150
- : this.options_.smtp.from;
151
189
  const identity = deliveryIdentity(notification);
190
+ // Settings and the Graph token are read before the delivery fence, so
191
+ // the fenced transaction holds only the send itself.
192
+ const settings = await this.deliverySettings();
193
+ if (settings.kind === "not_configured") {
194
+ this.logger_.warn(`smtp: delivery not configured (${settings.reason}); set it up under E-Mail > Versand`);
195
+ return throwSentinel(types_1.SMTP_FAILURE_SENTINELS.notConfigured);
196
+ }
197
+ if (settings.kind === "microsoft365") {
198
+ try {
199
+ await this.graph_.prepare(settings.graph);
200
+ }
201
+ catch (error) {
202
+ const sentinel = error instanceof graph_transport_1.GraphDeliveryError
203
+ ? error.sentinel
204
+ : types_1.SMTP_FAILURE_SENTINELS.outcomeUnknown;
205
+ this.logger_.error(`smtp: send failed (${sentinel})`);
206
+ return throwSentinel(sentinel);
207
+ }
208
+ }
209
+ const message = {
210
+ attachments,
211
+ from: settings.kind === "smtp"
212
+ ? notification.from && (0, sender_1.parseEmailSender)(notification.from)
213
+ ? notification.from
214
+ : settings.smtp.from
215
+ : settings.graph.mailbox,
216
+ html,
217
+ subject,
218
+ text,
219
+ to: notification.to,
220
+ };
152
221
  const sendMail = async () => {
153
222
  try {
223
+ if (settings.kind === "microsoft365") {
224
+ await this.graph_.send(settings.graph, message);
225
+ return { outcome: "sent", result: {} };
226
+ }
154
227
  return {
155
228
  outcome: "sent",
156
- result: await this.transport_.sendMail({
157
- attachments,
158
- from,
159
- html,
160
- subject,
161
- text,
162
- to: notification.to,
163
- }),
229
+ result: await this.smtpTransport(settings.smtp).sendMail(message),
164
230
  };
165
231
  }
166
232
  catch (error) {
@@ -226,11 +292,13 @@ class SmtpNotificationService extends utils_1.AbstractNotificationProviderServic
226
292
  if (delivery.outcome === "sent") {
227
293
  return delivery.result.messageId ? { id: delivery.result.messageId } : {};
228
294
  }
229
- const sentinel = classifySmtpFailure(delivery.error);
295
+ const sentinel = delivery.error instanceof graph_transport_1.GraphDeliveryError
296
+ ? delivery.error.sentinel
297
+ : classifySmtpFailure(delivery.error);
230
298
  this.logger_.error(`smtp: send failed (${sentinel})`);
231
299
  return throwSentinel(sentinel);
232
300
  }
233
301
  }
234
302
  exports.SmtpNotificationService = SmtpNotificationService;
235
303
  SmtpNotificationService.identifier = "smtp";
236
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3NyYy9wcm92aWRlcnMvc210cC9zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7OztBQUNBLHFEQUltQztBQUNuQyw0REFBb0M7QUFFcEMsc0RBQTZEO0FBQzdELHlEQUFxRTtBQUNyRSwwQ0FBb0Q7QUFDcEQsbUNBTWlCO0FBa0NKLFFBQUEsYUFBYSxHQUFHO0lBQzNCLFVBQVUsRUFBRSxNQUFNO0lBQ2xCLFFBQVEsRUFBRSxNQUFNO0lBQ2hCLE1BQU0sRUFBRSxNQUFNO0NBQ04sQ0FBQztBQUVYLE1BQU0sc0JBQXNCLEdBQUcsSUFBSSxHQUFHLENBQUMsQ0FBQyxjQUFjLEVBQUUsTUFBTSxDQUFDLENBQUMsQ0FBQztBQUVqRSxNQUFNLGNBQWMsR0FBRyxHQUFVLEVBQUU7SUFDakMsTUFBTSxJQUFJLG1CQUFXLENBQ25CLG1CQUFXLENBQUMsS0FBSyxDQUFDLFlBQVksRUFDOUIsNkNBQTZDLENBQzlDLENBQUM7QUFDSixDQUFDLENBQUM7QUFFRixNQUFNLGdCQUFnQixHQUFHLENBQ3ZCLFlBQTJELEVBQ2xDLEVBQUU7SUFDM0IsTUFBTSxZQUFZLEdBQUcsWUFBWSxDQUFDLGFBQWEsQ0FBQztJQUNoRCxNQUFNLFdBQVcsR0FBRyxPQUFPLENBQUMsWUFBWSxJQUFJLFlBQVksSUFBSSxZQUFZLENBQUMsQ0FBQztJQUMxRSxJQUFJLENBQUMsV0FBVyxFQUFFLENBQUM7UUFDakIsT0FBTyxJQUFJLENBQUM7SUFDZCxDQUFDO0lBQ0QsTUFBTSxjQUFjLEdBQUksWUFBaUMsQ0FBQyxFQUFFLENBQUM7SUFDN0QsSUFDRSxDQUFDLFlBQVk7UUFDYixDQUFDLElBQUEsc0JBQWdCLEVBQUMsWUFBWSxDQUFDLFVBQVUsQ0FBQztRQUMxQyxDQUFDLElBQUEsc0JBQWdCLEVBQUMsWUFBWSxDQUFDLElBQUksQ0FBQztRQUNwQyxDQUFDLElBQUEsc0JBQWdCLEVB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
304
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3NyYy9wcm92aWRlcnMvc210cC9zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7OztBQUFBLG1EQUFzRTtBQUV0RSxxREFJbUM7QUFDbkMsNERBQW9DO0FBRXBDLHNEQUE2RDtBQUM3RCxpRUFBa0U7QUFFbEUseURBQXFFO0FBQ3JFLG9EQUEwRDtBQUMxRCwwQ0FBb0Q7QUFDcEQsMkRBSTZCO0FBQzdCLHVEQUF1RTtBQUN2RSxtQ0FPaUI7QUFrQ0osUUFBQSxhQUFhLEdBQUc7SUFDM0IsVUFBVSxFQUFFLE1BQU07SUFDbEIsUUFBUSxFQUFFLE1BQU07SUFDaEIsTUFBTSxFQUFFLE1BQU07Q0FDTixDQUFDO0FBRVgsTUFBTSxzQkFBc0IsR0FBRyxJQUFJLEdBQUcsQ0FBQyxDQUFDLGNBQWMsRUFBRSxNQUFNLENBQUMsQ0FBQyxDQUFDO0FBRWpFLE1BQU0sY0FBYyxHQUFHLEdBQVUsRUFBRTtJQUNqQyxNQUFNLElBQUksbUJBQVcsQ0FDbkIsbUJBQVcsQ0FBQyxLQUFLLENBQUMsWUFBWSxFQUM5Qiw2Q0FBNkMsQ0FDOUMsQ0FBQztBQUNKLENBQUMsQ0FBQztBQUVGLE1BQU0sZ0JBQWdCLEdBQUcsQ0FDdkIsWUFBMkQsRUFDbEMsRUFBRTtJQUMzQixNQUFNLFlBQVksR0FBRyxZQUFZLENBQUMsYUFBYSxDQUFDO0lBQ2hELE1BQU0sV0FBVyxHQUFHLE9BQU8sQ0FBQyxZQUFZLElBQUksWUFBWSxJQUFJLFlBQVksQ0FBQyxDQUFDO0lBQzFFLElBQUksQ0FBQyxXQUFXLEVBQUUsQ0FBQztRQUNqQixPQUFPLElBQUksQ0FBQztJQUNkLENBQUM7SUFDRCxNQUFNLGNBQWMsR0FBSSxZQUFpQyxDQUFDLEVBQUUsQ0FBQztJQUM3RCxJQUNFLENBQUMsWUFBWTtRQUNiLENBQUMsSUFBQSxzQkFBZ0IsRUFBQyxZQUFZLENBQUMsVUFBVSxDQUFDO1FBQzFDLENB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
@@ -1,11 +1,17 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.SMTP_FAILURE_SENTINELS = void 0;
4
+ /**
5
+ * The only failure texts the provider throws (one line each, so the dispatch
6
+ * can classify them); the SMTP names are kept for the Graph transport too.
7
+ */
4
8
  exports.SMTP_FAILURE_SENTINELS = {
9
+ authFailed: "EMAIL_PROVIDER_AUTH_FAILED",
5
10
  connectionFailed: "EMAIL_SMTP_CONNECTION_FAILED",
6
11
  invalidContent: "EMAIL_SMTP_INVALID_CONTENT",
12
+ notConfigured: "EMAIL_PROVIDER_NOT_CONFIGURED",
7
13
  outcomeUnknown: "EMAIL_SMTP_OUTCOME_UNKNOWN",
8
14
  permanentRejection: "EMAIL_SMTP_PERMANENT_REJECTION",
9
15
  transientRejection: "EMAIL_SMTP_TRANSIENT_REJECTION",
10
16
  };
11
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHlwZXMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9zcmMvcHJvdmlkZXJzL3NtdHAvdHlwZXMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBRWEsUUFBQSxzQkFBc0IsR0FBRztJQUNwQyxnQkFBZ0IsRUFBRSw4QkFBOEI7SUFDaEQsY0FBYyxFQUFFLDRCQUE0QjtJQUM1QyxjQUFjLEVBQUUsNEJBQTRCO0lBQzVDLGtCQUFrQixFQUFFLGdDQUFnQztJQUNwRCxrQkFBa0IsRUFBRSxnQ0FBZ0M7Q0FDNUMsQ0FBQyJ9
17
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHlwZXMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9zcmMvcHJvdmlkZXJzL3NtdHAvdHlwZXMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBS0E7OztHQUdHO0FBQ1UsUUFBQSxzQkFBc0IsR0FBRztJQUNwQyxVQUFVLEVBQUUsNEJBQTRCO0lBQ3hDLGdCQUFnQixFQUFFLDhCQUE4QjtJQUNoRCxjQUFjLEVBQUUsNEJBQTRCO0lBQzVDLGFBQWEsRUFBRSwrQkFBK0I7SUFDOUMsY0FBYyxFQUFFLDRCQUE0QjtJQUM1QyxrQkFBa0IsRUFBRSxnQ0FBZ0M7SUFDcEQsa0JBQWtCLEVBQUUsZ0NBQWdDO0NBQzVDLENBQUMifQ==
@@ -24,7 +24,8 @@ __exportStar(require("./hash"), exports);
24
24
  __exportStar(require("./logging"), exports);
25
25
  __exportStar(require("./money"), exports);
26
26
  __exportStar(require("./refreshing-snapshot"), exports);
27
+ __exportStar(require("./shipping-tax"), exports);
27
28
  __exportStar(require("./text"), exports);
28
29
  __exportStar(require("./transaction"), exports);
29
30
  __exportStar(require("./wire-response"), exports);
30
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9zcmMvc2hhcmVkL2xpYi9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7O0FBQUEsdUVBQXVFO0FBQ3ZFLHFDQUFxQztBQUNyQywyQ0FBd0I7QUFDeEIsZ0RBQTZCO0FBQzdCLDBDQUF1QjtBQUN2QiwyQ0FBd0I7QUFDeEIseUNBQXNCO0FBQ3RCLDRDQUF5QjtBQUN6QiwwQ0FBdUI7QUFDdkIsd0RBQXFDO0FBQ3JDLHlDQUFzQjtBQUN0QixnREFBNkI7QUFDN0Isa0RBQStCIn0=
31
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9zcmMvc2hhcmVkL2xpYi9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7O0FBQUEsdUVBQXVFO0FBQ3ZFLHFDQUFxQztBQUNyQywyQ0FBd0I7QUFDeEIsZ0RBQTZCO0FBQzdCLDBDQUF1QjtBQUN2QiwyQ0FBd0I7QUFDeEIseUNBQXNCO0FBQ3RCLDRDQUF5QjtBQUN6QiwwQ0FBdUI7QUFDdkIsd0RBQXFDO0FBQ3JDLGlEQUE4QjtBQUM5Qix5Q0FBc0I7QUFDdEIsZ0RBQTZCO0FBQzdCLGtEQUErQiJ9
@@ -0,0 +1,12 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.APPORTIONED_SHIPPING_TAX_CODE = void 0;
4
+ /**
5
+ * Code of a shipping tax line whose rate is the item rates weighted by the
6
+ * items' net amount after discounts (shipping follows the main supplies,
7
+ * split by their Entgelt). Tax Compliance writes it; Documents splits such a
8
+ * line back onto the item tax rates by the same key, because an invoice
9
+ * states the tax per actual rate.
10
+ */
11
+ exports.APPORTIONED_SHIPPING_TAX_CODE = "shipping_blended";
12
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2hpcHBpbmctdGF4LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vc3JjL3NoYXJlZC9saWIvc2hpcHBpbmctdGF4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7OztBQUFBOzs7Ozs7R0FNRztBQUNVLFFBQUEsNkJBQTZCLEdBQUcsa0JBQWtCLENBQUEifQ==
@@ -12,7 +12,7 @@ const sentry_logger_1 = require("../public/sentry-logger");
12
12
  const options_1 = require("./options");
13
13
  /**
14
14
  * Builds the plain `medusa-config.ts` input of a food shop: Medusa core
15
- * settings, the Redis event bus, SMTP notifications, S3 file storage, tax and
15
+ * settings, the Redis event bus, the mail provider (set up in the Admin), S3 file storage, tax and
16
16
  * Stripe payment providers, and the Hartl Services plugins (the base plugin
17
17
  * with its E-Mail, Documents and file storage modules plus five feature
18
18
  * plugins). Deployment
@@ -35,7 +35,6 @@ function buildFoodShopConfig(options, environment = process.env) {
35
35
  "COOKIE_SECRET",
36
36
  "MEDUSA_BACKEND_URL",
37
37
  "STOREFRONT_URL",
38
- ...config_1.SMTP_ENVIRONMENT_VARIABLES,
39
38
  "STRIPE_API_KEY",
40
39
  "STRIPE_WEBHOOK_SECRET",
41
40
  "S3_CACHE_STORAGE_BUCKET",
@@ -43,7 +42,6 @@ function buildFoodShopConfig(options, environment = process.env) {
43
42
  "DOCUMENT_PDF_EXECUTABLE",
44
43
  ], phase, {
45
44
  ...config_1.MEDUSA_BUILD_PLACEHOLDERS,
46
- ...config_1.SMTP_BUILD_PLACEHOLDERS,
47
45
  ...config_1.S3_BUILD_PLACEHOLDERS,
48
46
  ...config_1.DOCUMENTS_BUILD_PLACEHOLDERS,
49
47
  });
@@ -101,7 +99,7 @@ function buildFoodShopConfig(options, environment = process.env) {
101
99
  },
102
100
  ]
103
101
  : []),
104
- (0, config_1.createSmtpNotificationModuleConfig)((0, config_1.resolveSmtp)(env, allowInsecure)),
102
+ (0, config_1.createEmailNotificationModuleConfig)({ allowInsecure }),
105
103
  s3CacheStorage.fileModule,
106
104
  {
107
105
  // Replaces Medusa's default auth entry (same module key): the same
@@ -299,4 +297,4 @@ function buildFoodShopConfig(options, environment = process.env) {
299
297
  function defineFoodShopConfig(options, environment = process.env) {
300
298
  return (0, utils_1.defineConfig)(buildFoodShopConfig(options, environment));
301
299
  }
302
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYnVpbGQtZm9vZC1zaG9wLWNvbmZpZy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9zaG9wLWNvbmZpZy9idWlsZC1mb29kLXNob3AtY29uZmlnLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7O0FBNEVBLGtEQW1WQztBQUdELG9EQUtDO0FBdmFELHVEQUFvRDtBQUNwRCwyR0FBa0g7QUFDbEgscURBQTJFO0FBRTNFLDZDQW9CMEI7QUFDMUIsb0dBQXNGO0FBQ3RGLDRGQUFxRjtBQUNyRiwyREFBbUU7QUFFbkUsdUNBR21CO0FBbUNuQjs7Ozs7Ozs7R0FRRztBQUNILFNBQWdCLG1CQUFtQixDQUNqQyxPQUE4QixFQUM5QixjQUFpQyxPQUFPLENBQUMsR0FBRztJQUU1QyxJQUFBLHFDQUEyQixFQUFDLE9BQU8sQ0FBQyxDQUFDO0lBRXJDLElBQUksT0FBTyxDQUFDLFdBQVcsS0FBSyxLQUFLLEVBQUUsQ0FBQztRQUNsQyxJQUFBLGVBQU8sRUFBQyxPQUFPLENBQUMsR0FBRyxDQUFDLFFBQVEsSUFBSSxhQUFhLEVBQUUsT0FBTyxDQUFDLEdBQUcsRUFBRSxDQUFDLENBQUM7SUFDaEUsQ0FBQztJQUVELE1BQU0sS0FBSyxHQUFHLFdBQVcsQ0FBQyxrQkFBa0IsS0FBSyxNQUFNLENBQUMsQ0FBQyxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUMsU0FBUyxDQUFDO0lBQzlFLE1BQU0sYUFBYSxHQUFHLElBQUEsb0NBQTJCLEVBQUMsV0FBVyxFQUFFLEtBQUssQ0FBQyxDQUFDO0lBRXRFLE1BQU0sR0FBRyxHQUFHLElBQUEsMkJBQWtCLEVBQzVCLFdBQVcsRUFDWDtRQUNFLGNBQWM7UUFDZCxZQUFZO1FBQ1osWUFBWTtRQUNaLFdBQVc7UUFDWCxZQUFZO1FBQ1osZUFBZTtRQUNmLG9CQUFvQjtRQUNwQixnQkFBZ0I7UUFDaEIsR0FBRyxtQ0FBMEI7UUFDN0IsZ0JBQWdCO1FBQ2hCLHVCQUF1QjtRQUN2Qix5QkFBeUI7UUFDekIseUJBQXlCO1FBQ3pCLHlCQUF5QjtLQUMxQixFQUNELEtBQUssRUFDTDtRQUNFLEdBQUcsa0NBQXlCO1FBQzVCLEdBQUcsZ0NBQXVCO1FBQzFCLEdBQUcsOEJBQXFCO1FBQ3hCLEdBQUcscUNBQTRCO0tBQ2hDLENBQ0YsQ0FBQztJQUVGLE1BQU0sZ0JBQWdCLEdBQUcsSUFBQSw0QkFBbUIsRUFDMUMsR0FBRyxDQUFDLGNBQWMsRUFDbEIsZ0JBQWdCLEVBQ2hCLGFBQWEsQ0FDZCxDQUFDO0lBQ0YsTUFBTSxhQUFhLEdBQUcsSUFBQSw0QkFBbUIsRUFDdkMsR0FBRyxDQUFDLGtCQUFrQixFQUN0QixvQkFBb0IsRUFDcEIsYUFBYSxDQUNkLENBQUM7SUFDRixNQUFNLEtBQUssR0FBRyxJQUFBLDZCQUFvQixFQUFDLFdBQVcsRUFBRSxLQUFLLENBQUMsQ0FBQztJQUN2RCxNQUFNLE1BQU0sR0FBRyxJQUFBLHNCQUFhLEVBQUMsR0FBRyxDQUFDLENBQUM7SUFDbEMsTUFBTSxjQUFjLEdBQUcsSUFBSSxPQUFPLENBQUMscUJBQXFCLEVBQUUsQ0FBQztJQUUzRCw0RUFBNEU7SUFDNUUsNEVBQTRFO0lBQzVFLGlCQUFpQjtJQUNqQixNQUFNLGNBQWMsR0FBRyxJQUFBLG1DQUEwQixFQUFDO1FBQ2hELEtBQUssRUFBRTtZQUNMLGlCQUFpQixFQUNmLElBQUEsMkJBQWtCLEVBQ2hCLFdBQVcsRUFDWCxzQ0FBc0MsRUFDdEMsQ0FBQyxFQUNELFVBQVUsQ0FDWCxJQUFJLE9BQU87WUFDZCxHQUFHLEVBQ0QsSUFBQSw0QkFBbUIsRUFBQyxXQUFXLEVBQUUsNEJBQTRCLENBQUM7Z0JBQzlELG9CQUFvQjtZQUN0QixrQkFBa0IsRUFBRSxJQUFBLGtDQUF5QixFQUFDLFdBQVcsRUFBRSxVQUFVLENBQUM7WUFDdEUsS0FBSyxFQUNILElBQUEsMkJBQWtCLEVBQ2hCLFdBQVcsRUFDWCx5QkFBeUIsRUFDekIsQ0FBQyxFQUNELFdBQVcsQ0FDWixJQUFJLFNBQVM7U0FDakI7UUFDRCxPQUFPLEVBQUU7WUFDUCxPQUFPLEVBQUUsR0FBRyxhQUFhLFFBQVE7WUFDakMsOEJBQThCLEVBQzVCLElBQUEsMkJBQWtCLEVBQ2hCLFdBQVcsRUFDWCxnREFBZ0QsRUFDaEQsQ0FBQyxFQUNELE9BQU8sQ0FDUixJQUFJLEtBQUs7WUFDWixhQUFhLEVBQUUsR0FBRyxDQUFDLFVBQVU7U0FDOUI7UUFDRCxFQUFFLEVBQUU7WUFDRixNQUFNLEVBQUUsR0FBRyxDQUFDLHVCQUF1QjtZQUNuQyxXQUFXLEVBQUUsSUFBQSw2QkFBb0IsRUFBQyxXQUFXLEVBQUUsS0FBSyxDQUFDO1lBQ3JELFFBQVEsRUFBRSxJQUFBLDRCQUFtQixFQUFDLFdBQVcsRUFBRSwyQkFBMkIsQ0FBQztZQUN2RSxjQUFjLEVBQUUsSUFBQSwyQkFBa0IsRUFDaEMsV0FBVyxFQUNYLG1DQUFtQyxFQUNuQyxLQUFLLENBQ047WUFDRCxNQUFNLEVBQUUsR0FBRyxDQUFDLHVCQUF1QjtZQUNuQyxhQUFhLEVBQUUsSUFBQSw0QkFBbUIsRUFDaEMsV0FBVyxFQUNYLHlCQUF5QixDQUMxQjtTQUNGO0tBQ0YsQ0FBQyxDQUFDO0lBRUgsTUFBTSxPQUFPLEdBQXFCO1FBQ2hDLEdBQUcsQ0FBQyxLQUFLO1lBQ1AsQ0FBQyxDQUFDO2dCQUNFO29CQUNFLEdBQUcsRUFBRSxlQUFPLENBQUMsU0FBUztvQkFDdEIsT0FBTyxFQUFFLDJCQUEyQjtvQkFDcEMsT0FBTyxFQUFFO3dCQUNQLFFBQVEsRUFBRSxLQUFLLENBQUMsR0FBRzt3QkFDbkIsVUFBVSxFQUFFOzRCQUNWLFFBQVEsRUFBRSxDQUFDOzRCQUNYLE9BQU8sRUFBRTtnQ0FDUCxLQUFLLEVBQUUsS0FBSztnQ0FDWixJQUFJLEVBQUUsYUFBYTs2QkFDcEI7NEJBQ0QsZ0JBQWdCLEVBQUUsSUFBSTs0QkFDdEIsWUFBWSxFQUFFO2dDQUNaLEdBQUcsRUFBRSxLQUFLO2dDQUNWLEtBQUssRUFBRSxLQUFLOzZCQUNiO3lCQUNGO3FCQUNGO2lCQUNGO2FBQ0Y7WUFDSCxDQUFDLENBQUMsRUFBRSxDQUFDO1FBQ1AsSUFBQSwyQ0FBa0MsRUFBQyxJQUFBLG9CQUFXLEVBQUMsR0FBRyxFQUFFLGFBQWEsQ0FBQyxDQUFDO1FBQ25FLGNBQWMsQ0FBQyxVQUFVO1FBQ3pCO1lBQ0UsbUVBQW1FO1lBQ25FLHdFQUF3RTtZQUN4RSxtRUFBbUU7WUFDbkUsbUVBQW1FO1lBQ25FLDhDQUE4QztZQUM5QyxPQUFPLEVBQUUsdUJBQXVCO1lBQ2hDLE9BQU8sRUFBRTtnQkFDUCxTQUFTLEVBQUU7b0JBQ1Q7d0JBQ0UsT0FBTyxFQUFFLGlDQUFpQzt3QkFDMUMsRUFBRSxFQUFFLFdBQVc7cUJBQ2hCO29CQUNEO3dCQUNFLE9BQU8sRUFBRSxpREFBaUQ7d0JBQzFELEVBQUUsRUFBRSx1Q0FBdUI7d0JBQzNCLDREQUE0RDt3QkFDNUQsK0RBQStEO3dCQUMvRCw4Q0FBOEM7d0JBQzlDLE9BQU8sRUFBRSxFQUFFLFVBQVUsRUFBRSxHQUFHLENBQUMsVUFBVSxFQUFFO3FCQUN4QztpQkFDRjthQUNGO1NBQ0Y7UUFDRDtZQUNFLE9BQU8sRUFBRSxzQkFBc0I7WUFDL0IsT0FBTyxFQUFFO2dCQUNQLFNBQVMsRUFBRTtvQkFDVDt3QkFDRSxPQUFPLEVBQ0wsZ0VBQWdFO3FCQUNuRTtpQkFDRjthQUNGO1NBQ0Y7UUFDRDtZQUNFLE9BQU8sRUFBRSwwQkFBMEI7WUFDbkMsT0FBTyxFQUFFO2dCQUNQLFNBQVMsRUFBRTtvQkFDVDt3QkFDRSxPQUFPLEVBQUUsaUNBQWlDO3dCQUMxQyxFQUFFLEVBQUUsUUFBUTt3QkFDWixPQUFPLEVBQUU7NEJBQ1AsTUFBTSxFQUFFLE1BQU0sQ0FBQyxNQUFNOzRCQUNyQixhQUFhLEVBQUUsTUFBTSxDQUFDLGFBQWE7NEJBQ25DLDJEQUEyRDs0QkFDM0QseURBQXlEOzRCQUN6RCwrREFBK0Q7NEJBQy9ELDREQUE0RDs0QkFDNUQsT0FBTyxFQUFFLElBQUk7NEJBQ2IsZ0VBQWdFOzRCQUNoRSw2REFBNkQ7NEJBQzdELHVCQUF1QixFQUFFLElBQUk7eUJBQzlCO3FCQUNGO2lCQUNGO2FBQ0Y7U0FDRjtLQUNGLENBQUM7SUFFRixNQUFNLE9BQU8sR0FBcUI7UUFDaEM7WUFDRSx1RUFBdUU7WUFDdkUsNERBQTREO1lBQzVELE9BQU8sRUFBRSw2QkFBNkI7WUFDdEMsT0FBTyxFQUFFO2dCQUNQLEtBQUssRUFBRTtvQkFDTCxTQUFTLEVBQUUsR0FBRyxDQUFDLFVBQVU7b0JBQ3pCLElBQUksRUFBRTt3QkFDSix3RUFBd0U7d0JBQ3hFLDZCQUE2QixFQUFFLEdBQUcsRUFBRSxDQUNsQyxJQUFJLEdBQUcsQ0FDTCw4QkFBOEIsRUFDOUIsYUFBYSxDQUNkLENBQUMsUUFBUSxFQUFFO3dCQUNkLHdEQUF3RDt3QkFDeEQsYUFBYSxFQUFFLENBQUMsRUFBRSxPQUFPLEVBQXVCLEVBQUUsRUFBRSxDQUNsRCxJQUFJLEdBQUcsQ0FDTCxlQUFlLGtCQUFrQixDQUFDLE9BQU8sQ0FBQyxFQUFFLEVBQzVDLGFBQWEsQ0FDZCxDQUFDLFFBQVEsRUFBRTt3QkFDZCxXQUFXLEVBQUUsT0FBTyxDQUFDLFdBQVc7d0JBQ2hDLGtCQUFrQixFQUFFLElBQUEsZ0JBQU8sRUFDekIsZ0JBQWdCLEVBQ2hCLEdBQUcsY0FBYyxnQkFBZ0IsQ0FDbEM7d0JBQ0Qsa0VBQWtFO3dCQUNsRSxTQUFTLEVBQUUsQ0FBQyxFQUFFLEtBQUssRUFBcUIsRUFBRSxFQUFFOzRCQUMxQyxNQUFNLEdBQUcsR0FBRyxJQUFJLEdBQUcsQ0FBQyxhQUFhLEVBQUUsYUFBYSxDQUFDLENBQUM7NEJBQ2xELEdBQUcsQ0FBQyxZQUFZLENBQUMsR0FBRyxDQUFDLE9BQU8sRUFBRSxLQUFLLENBQUMsQ0FBQzs0QkFDckMsT0FBTyxHQUFHLENBQUMsUUFBUSxFQUFFLENBQUM7d0JBQ3hCLENBQUM7d0JBQ0Qsc0JBQXNCLEVBQUUsT0FBTyxDQUFDLHNCQUFzQjt3QkFDdEQsOENBQThDO3dCQUM5QyxnQkFBZ0IsRUFBRSxHQUFHLEVBQUUsQ0FDckIsSUFBQSxnQkFBTyxFQUFDLGdCQUFnQixFQUFFLEdBQUcsY0FBYyxpQkFBaUIsQ0FBQzt3QkFDL0QsZ0VBQWdFO3dCQUNoRSw4Q0FBOEM7d0JBQzlDLGdCQUFnQixFQUFFLEdBQUcsRUFBRSxDQUNyQixJQUFBLGdCQUFPLEVBQUMsZ0JBQWdCLEVBQUUsR0FBRyxjQUFjLGlCQUFpQixDQUFDO3dCQUMvRCxRQUFRLEVBQUUsT0FBTyxDQUFDLFFBQVE7cUJBQzNCO2lCQUNGO2dCQUNELFNBQVMsRUFBRTtvQkFDVCxXQUFXLEVBQUUsT0FBTyxDQUFDLG1CQUFtQjtvQkFDeEMsU0FBUyxFQUFFO3dCQUNULGtFQUFrRTt3QkFDbEUsdUJBQXVCO3dCQUN2QixRQUFRLEVBQUUsT0FBTyxDQUFDLFFBQVE7cUJBQzNCO29CQUNELEdBQUcsRUFBRTt3QkFDSCxjQUFjLEVBQUUsR0FBRyxDQUFDLHVCQUF1QjtxQkFDNUM7aUJBQ0Y7Z0JBQ0QsS0FBSyxFQUFFLEVBQUUsT0FBTyxFQUFFLGNBQWMsQ0FBQyxPQUFPLEVBQUU7YUFDM0M7U0FDRjtRQUNEO1lBQ0UsT0FBTyxFQUFFLHVDQUF1QztZQUNoRCxPQUFPLEVBQUUsRUFBRTtTQUNaO1FBQ0Q7WUFDRSxPQUFPLEVBQUUsc0NBQXNDO1lBQy9DLE9BQU8sRUFBRSxFQUFFO1NBQ1o7UUFDRDtZQUNFLE9BQU8sRUFBRSx5Q0FBeUM7WUFDbEQsT0FBTyxFQUFFLEVBQUU7U0FDWjtRQUNEO1lBQ0UsT0FBTyxFQUFFLGtDQUFrQztZQUMzQyxPQUFPLEVBQUU7Z0JBQ1AscUJBQXFCLEVBQUU7b0JBQ3JCLE9BQU8sRUFBRSxFQUFFO29CQUNYLFFBQVEsRUFBRSxPQUFPLENBQUMsUUFBUTtpQkFDM0I7Z0JBQ0QsTUFBTSxFQUFFO29CQUNOLGlCQUFpQixFQUFFLElBQUEsZ0JBQU8sRUFBQyxnQkFBZ0IsRUFBRSxjQUFjLENBQUM7aUJBQzdEO2FBQ0Y7U0FDRjtRQUNEO1lBQ0UsT0FBTyxFQUFFLHFDQUFxQztZQUM5QyxrRUFBa0U7WUFDbEUsd0VBQXdFO1lBQ3hFLGdEQUFnRDtZQUNoRCxPQUFPLEVBQUUsRUFBRTtTQUNaO0tBQ0YsQ0FBQztJQUVGLE9BQU87UUFDTCxLQUFLLEVBQUU7WUFDTCxxRUFBcUU7WUFDckUsdUVBQXVFO1lBQ3ZFLHNFQUFzRTtZQUN0RSxhQUFhO1lBQ2IsSUFBSSxFQUFFLE1BQU07U0FDYjtRQUNELDBFQUEwRTtRQUMxRSx5RUFBeUU7UUFDekUseUVBQXlFO1FBQ3pFLHNFQUFzRTtRQUN0RSxzQkFBc0I7UUFDdEIsTUFBTSxFQUFFLElBQUEsd0NBQXdCLEVBQUMsZUFBTSxDQUFDO1FBQ3hDLGFBQWEsRUFBRTtZQUNiLFdBQVcsRUFBRSxHQUFHLENBQUMsWUFBWTtZQUM3QixJQUFJLEVBQUU7Z0JBQ0osU0FBUyxFQUFFLEdBQUcsQ0FBQyxVQUFVO2dCQUN6QixTQUFTLEVBQUUsR0FBRyxDQUFDLFVBQVU7Z0JBQ3pCLFFBQVEsRUFBRSxHQUFHLENBQUMsU0FBUztnQkFDdkIsU0FBUyxFQUFFLEdBQUcsQ0FBQyxVQUFVO2dCQUN6QixZQUFZLEVBQUUsR0FBRyxDQUFDLGFBQWE7Z0JBQy9CLCtEQUErRDtnQkFDL0QscUVBQXFFO2dCQUNyRSxzRUFBc0U7Z0JBQ3RFLHNFQUFzRTtnQkFDdEUsbUVBQW1FO2dCQUNuRSwyREFBMkQ7Z0JBQzNELHlCQUF5QixFQUFFO29CQUN6QixJQUFJLFFBQVE7d0JBQ1YsT0FBTyxJQUFBLDJEQUEwQixHQUFFLENBQUM7b0JBQ3RDLENBQUM7aUJBQ0Y7Z0JBQ0Qsb0VBQW9FO2dCQUNwRSxvRUFBb0U7Z0JBQ3BFLG9FQUFvRTtnQkFDcEUsaUVBQWlFO2dCQUNqRSwrREFBK0Q7Z0JBQy9ELG1CQUFtQixFQUFFO29CQUNuQixJQUFJLFFBQVE7d0JBQ1YsT0FBTyxJQUFBLG9EQUFtQixHQUFFLENBQUM7b0JBQy9CLENBQUM7b0JBQ0QsSUFBSSxFQUFFLENBQUMsV0FBVyxDQUFDO2lCQUNwQjthQUNGO1lBQ0Qsc0VBQXNFO1lBQ3RFLGlFQUFpRTtZQUNqRSxvRUFBb0U7WUFDcEUsdUVBQXVFO1lBQ3ZFLGdCQUFnQjtZQUNoQixjQUFjLEVBQUU7Z0JBQ2QsR0FBRyxFQUFFLEVBQUUsR0FBRyxFQUFFLEdBQUcsRUFBRSxHQUFHLElBQUk7YUFDekI7U0FDRjtRQUNELE9BQU87UUFDUCxPQUFPO0tBQ1IsQ0FBQztBQUNKLENBQUM7QUFFRCx5RUFBeUU7QUFDekUsU0FBZ0Isb0JBQW9CLENBQ2xDLE9BQThCLEVBQzlCLGNBQWlDLE9BQU8sQ0FBQyxHQUFHO0lBRTVDLE9BQU8sSUFBQSxvQkFBWSxFQUFDLG1CQUFtQixDQUFDLE9BQU8sRUFBRSxXQUFXLENBQUMsQ0FBQyxDQUFDO0FBQ2pFLENBQUMifQ==
300
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYnVpbGQtZm9vZC1zaG9wLWNvbmZpZy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9zaG9wLWNvbmZpZy9idWlsZC1mb29kLXNob3AtY29uZmlnLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7O0FBeUVBLGtEQWlWQztBQUdELG9EQUtDO0FBbGFELHVEQUFvRDtBQUNwRCwyR0FBa0g7QUFDbEgscURBQTJFO0FBRTNFLDZDQWlCMEI7QUFDMUIsb0dBQXNGO0FBQ3RGLDRGQUFxRjtBQUNyRiwyREFBbUU7QUFFbkUsdUNBR21CO0FBbUNuQjs7Ozs7Ozs7R0FRRztBQUNILFNBQWdCLG1CQUFtQixDQUNqQyxPQUE4QixFQUM5QixjQUFpQyxPQUFPLENBQUMsR0FBRztJQUU1QyxJQUFBLHFDQUEyQixFQUFDLE9BQU8sQ0FBQyxDQUFDO0lBRXJDLElBQUksT0FBTyxDQUFDLFdBQVcsS0FBSyxLQUFLLEVBQUUsQ0FBQztRQUNsQyxJQUFBLGVBQU8sRUFBQyxPQUFPLENBQUMsR0FBRyxDQUFDLFFBQVEsSUFBSSxhQUFhLEVBQUUsT0FBTyxDQUFDLEdBQUcsRUFBRSxDQUFDLENBQUM7SUFDaEUsQ0FBQztJQUVELE1BQU0sS0FBSyxHQUFHLFdBQVcsQ0FBQyxrQkFBa0IsS0FBSyxNQUFNLENBQUMsQ0FBQyxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUMsU0FBUyxDQUFDO0lBQzlFLE1BQU0sYUFBYSxHQUFHLElBQUEsb0NBQTJCLEVBQUMsV0FBVyxFQUFFLEtBQUssQ0FBQyxDQUFDO0lBRXRFLE1BQU0sR0FBRyxHQUFHLElBQUEsMkJBQWtCLEVBQzVCLFdBQVcsRUFDWDtRQUNFLGNBQWM7UUFDZCxZQUFZO1FBQ1osWUFBWTtRQUNaLFdBQVc7UUFDWCxZQUFZO1FBQ1osZUFBZTtRQUNmLG9CQUFvQjtRQUNwQixnQkFBZ0I7UUFDaEIsZ0JBQWdCO1FBQ2hCLHVCQUF1QjtRQUN2Qix5QkFBeUI7UUFDekIseUJBQXlCO1FBQ3pCLHlCQUF5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
@@ -77,29 +77,32 @@ const asTaxRate = (value, field) => {
77
77
  return rate;
78
78
  };
79
79
  /** Reads the calculated tax lines of order items and shipping methods. */
80
- const toTaxLineAmounts = (owners, field) => {
81
- if (!Array.isArray(owners)) {
80
+ /** Net amount of an item or shipping method after discounts. */
81
+ const netAfterDiscounts = (owner) => utils_1.MathBN.sub(asAmount(owner.total), asAmount(owner.tax_total)).toFixed();
82
+ const toTaxLineAmountsOf = (owner, field) => {
83
+ const taxLines = owner.tax_lines;
84
+ if (!Array.isArray(taxLines) || taxLines.length === 0) {
82
85
  return [];
83
86
  }
84
- return owners.flatMap((owner) => {
85
- const taxLines = asRecord(owner, `order.${field}[]`).tax_lines;
86
- if (!Array.isArray(taxLines)) {
87
- return [];
88
- }
89
- return taxLines.map((value) => {
90
- const taxLine = asRecord(value, `order.${field}[].tax_lines[]`);
91
- const code = asOptionalString(taxLine.code);
92
- return {
93
- name: asOptionalString(taxLine.description)?.trim() ||
94
- code?.trim() ||
95
- "Umsatzsteuer",
96
- code,
97
- rate: asTaxRate(taxLine.rate, `order.${field}[].tax_lines[].rate`),
98
- amount: asAmount(taxLine.total),
99
- };
100
- });
87
+ const taxableAmount = netAfterDiscounts(owner);
88
+ return taxLines.map((value) => {
89
+ const taxLine = asRecord(value, `order.${field}[].tax_lines[]`);
90
+ const code = asOptionalString(taxLine.code);
91
+ return {
92
+ name: asOptionalString(taxLine.description)?.trim() ||
93
+ code?.trim() ||
94
+ "Umsatzsteuer",
95
+ code,
96
+ rate: asTaxRate(taxLine.rate, `order.${field}[].tax_lines[].rate`),
97
+ amount: asAmount(taxLine.total),
98
+ taxable_amount: taxableAmount,
99
+ };
101
100
  });
102
101
  };
102
+ const toItemTaxLineAmounts = (items) => items.flatMap((value) => toTaxLineAmountsOf(asRecord(value, "order.items[]"), "items"));
103
+ const toShippingTaxLineAmounts = (shippingMethods) => Array.isArray(shippingMethods)
104
+ ? shippingMethods.flatMap((value) => toTaxLineAmountsOf(asRecord(value, "order.shipping_methods[]"), "shipping_methods"))
105
+ : [];
103
106
  const toAddress = (value) => {
104
107
  const address = (0, lib_1.asRecordOrNull)(value);
105
108
  if (!address) {
@@ -182,23 +185,27 @@ const toInvoiceSource = (rawOrder, batchAllocations, taxCompliance) => {
182
185
  const lineId = asRequiredString(item.id, "order.items[].id");
183
186
  const variant = (0, lib_1.asRecordOrNull)(item.variant);
184
187
  const batchAllocations = allocationsByLine[lineId] ?? [];
188
+ const quantity = asQuantity(item.quantity, "order.items[].quantity");
189
+ const subtotal = toMoney(item.subtotal, currencyCode);
185
190
  return {
186
191
  id: lineId,
187
192
  title: asRequiredString(item.title, "order.items[].title"),
188
193
  sku: asOptionalString(variant?.sku) ?? asOptionalString(item.variant_sku),
189
- quantity: asQuantity(item.quantity, "order.items[].quantity"),
190
- unit_price: toMoney(item.unit_price, currencyCode),
191
- subtotal: toMoney(item.subtotal, currencyCode),
194
+ quantity,
195
+ // Net like the subtotal it multiplies to; Medusa's unit_price is gross
196
+ // for tax-inclusive prices.
197
+ unit_price: {
198
+ amount: utils_1.MathBN.div(subtotal.amount, quantity).toFixed(),
199
+ currency_code: currencyCode,
200
+ },
201
+ subtotal,
192
202
  tax_total: toMoney(item.tax_total, currencyCode),
193
203
  total: toMoney(item.total, currencyCode),
194
204
  batch_allocations: batchAllocations.map((allocation) => ({ ...allocation })),
195
205
  };
196
206
  });
197
207
  const taxTotal = toMoney(rawOrder.tax_total, currencyCode);
198
- const taxBreakdown = (0, tax_breakdown_1.roundTaxBreakdown)((0, tax_breakdown_1.groupTaxLines)([
199
- ...toTaxLineAmounts(rawItems, "items"),
200
- ...toTaxLineAmounts(rawOrder.shipping_methods, "shipping_methods"),
201
- ], currencyCode), taxTotal);
208
+ const taxBreakdown = (0, tax_breakdown_1.roundTaxBreakdown)((0, tax_breakdown_1.groupTaxLines)(toItemTaxLineAmounts(rawItems), toShippingTaxLineAmounts(rawOrder.shipping_methods), currencyCode), taxTotal);
202
209
  return {
203
210
  order: {
204
211
  id: asRequiredString(rawOrder.id, "order.id"),
@@ -210,11 +217,14 @@ const toInvoiceSource = (rawOrder, batchAllocations, taxCompliance) => {
210
217
  },
211
218
  lines,
212
219
  totals: {
213
- subtotal: toMoney(rawOrder.subtotal, currencyCode),
220
+ // Net amounts before discounts, so Zwischensumme + Versand - Rabatt +
221
+ // USt adds up to the total. Medusa's order `subtotal` already includes
222
+ // shipping, and its `shipping_total`/`discount_total` are gross.
223
+ subtotal: toMoney(rawOrder.item_subtotal, currencyCode),
214
224
  tax_total: taxTotal,
215
225
  tax_breakdown: taxBreakdown,
216
- shipping_total: toMoney(rawOrder.shipping_total, currencyCode),
217
- discount_total: toMoney(rawOrder.discount_total, currencyCode),
226
+ shipping_total: toMoney(rawOrder.shipping_subtotal, currencyCode),
227
+ discount_total: toMoney(rawOrder.discount_subtotal, currencyCode),
218
228
  total: toMoney(rawOrder.total, currencyCode),
219
229
  },
220
230
  };
@@ -260,11 +270,12 @@ const resolveInvoiceCandidateStep = (0, workflows_sdk_1.createStep)("documents-r
260
270
  "items.*",
261
271
  "items.variant.sku",
262
272
  "items.tax_lines.*",
273
+ "shipping_methods.*",
263
274
  "shipping_methods.tax_lines.*",
264
- "subtotal",
275
+ "item_subtotal",
265
276
  "tax_total",
266
- "shipping_total",
267
- "discount_total",
277
+ "shipping_subtotal",
278
+ "discount_subtotal",
268
279
  "total",
269
280
  ],
270
281
  },
@@ -516,4 +527,4 @@ exports.issueInvoiceAfterShipmentWorkflow = (0, workflows_sdk_1.createWorkflow)(
516
527
  });
517
528
  return new workflows_sdk_1.WorkflowResponse(issuedDocumentId);
518
529
  });
519
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaXNzdWUtaW52b2ljZS1hZnRlci1zaGlwbWVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3NyYy93b3JrZmxvd3MvZG9jdW1lbnRzL2lzc3VlLWludm9pY2UtYWZ0ZXItc2hpcG1lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBQ0EscURBSWtDO0FBQ2xDLHFFQU0wQztBQUMxQyw0REFBb0U7QUFTcEUsa0ZBSXNEO0FBQ3RELGdGQUlxRDtBQUNyRCw0RkFBbUc7QUFDbkcsNEZBQThGO0FBQzlGLDZFQUFnRjtBQUNoRiwwQ0FJeUI7QUFDekIscURBT3lCO0FBQ3pCLHFFQUFtRTtBQTREbkUsTUFBTSxRQUFRLEdBQUcsQ0FBQyxLQUFjLEVBQUUsS0FBYSxFQUEyQixFQUFFO0lBQzFFLElBQUksQ0FBQyxLQUFLLElBQUksT0FBTyxLQUFLLEtBQUssUUFBUSxJQUFJLEtBQUssQ0FBQyxPQUFPLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQztRQUNoRSxNQUFNLElBQUksbUJBQVcsQ0FDbkIsbUJBQVcsQ0FBQyxLQUFLLENBQUMsZ0JBQWdCLEVBQ2xDLGFBQWEsS0FBSyxvQkFBb0IsQ0FDdkMsQ0FBQTtJQUNILENBQUM7SUFFRCxPQUFPLEtBQWdDLENBQUE7QUFDekMsQ0FBQyxDQUFBO0FBRUQsTUFBTSxnQkFBZ0IsR0FBRyxDQUFDLEtBQWMsRUFBRSxLQUFhLEVBQVUsRUFBRTtJQUNqRSxJQUFJLE9BQU8sS0FBSyxLQUFLLFFBQVEsSUFBSSxDQUFDLEtBQUssQ0FBQyxJQUFJLEVBQUUsRUFBRSxDQUFDO1FBQy9DLE1BQU0sSUFBSSxtQkFBVyxDQUNuQixtQkFBVyxDQUFDLEtBQUssQ0FBQyxnQkFBZ0IsRUFDbEMsYUFBYSxLQUFLLDZCQUE2QixDQUNoRCxDQUFBO0lBQ0gsQ0FBQztJQUVELE9BQU8sS0FBSyxDQUFBO0FBQ2QsQ0FBQyxDQUFBO0FBRUQsMkRBQTJEO0FBQzNELE1BQU0sZ0JBQWdCLEdBQUcsQ0FB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
530
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaXNzdWUtaW52b2ljZS1hZnRlci1zaGlwbWVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3NyYy93b3JrZmxvd3MvZG9jdW1lbnRzL2lzc3VlLWludm9pY2UtYWZ0ZXItc2hpcG1lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBQ0EscURBS2tDO0FBQ2xDLHFFQU0wQztBQUMxQyw0REFBb0U7QUFTcEUsa0ZBSXNEO0FBQ3RELGdGQUlxRDtBQUNyRCw0RkFBbUc7QUFDbkcsNEZBQThGO0FBQzlGLDZFQUFnRjtBQUNoRiwwQ0FJeUI7QUFDekIscURBT3lCO0FBQ3pCLHFFQUFtRTtBQTREbkUsTUFBTSxRQUFRLEdBQUcsQ0FBQyxLQUFjLEVBQUUsS0FBYSxFQUEyQixFQUFFO0lBQzFFLElBQUksQ0FBQyxLQUFLLElBQUksT0FBTyxLQUFLLEtBQUssUUFBUSxJQUFJLEtBQUssQ0FBQyxPQUFPLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQztRQUNoRSxNQUFNLElBQUksbUJBQVcsQ0FDbkIsbUJBQVcsQ0FBQyxLQUFLLENBQUMsZ0JBQWdCLEVBQ2xDLGFBQWEsS0FBSyxvQkFBb0IsQ0FDdkMsQ0FBQTtJQUNILENBQUM7SUFFRCxPQUFPLEtBQWdDLENBQUE7QUFDekMsQ0FBQyxDQUFBO0FBRUQsTUFBTSxnQkFBZ0IsR0FBRyxDQUFDLEtBQWMsRUFBRSxLQUFhLEVBQVUsRUFBRTtJQUNqRSxJQUFJLE9BQU8sS0FBSyxLQUFLLFFBQVEsSUFBSSxDQUFDLEtBQUssQ0FBQyxJQUFJLEVBQUUsRUFBRSxDQUFDO1FBQy9DLE1BQU0sSUFBSSxtQkFBVyxDQUNuQixtQkFBVyxDQUFDLEtBQUssQ0FBQyxnQkFBZ0IsRUFDbEMsYUFBYSxLQUFLLDZCQUE2QixDQUNoRCxDQUFBO0lBQ0gsQ0FBQztJQUVELE9BQU8sS0FBSyxDQUFBO0FBQ2QsQ0FBQyxDQUFBO0FBRUQsMkRBQTJEO0FBQzNELE1BQU0sZ0JBQWdCLEdBQUcsQ0FB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