@infuro/cms-core 1.0.62 → 1.0.63
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/admin.cjs +4 -4
- package/dist/admin.js +4 -4
- package/dist/api.cjs +38 -38
- package/dist/api.js +6 -6
- package/dist/{chunk-NMYGQWHV.js → chunk-3VZAAQUV.js} +18 -5
- package/dist/{chunk-R6Q67HAS.js → chunk-77YWLP4X.js} +19 -19
- package/dist/{chunk-AXMP2U43.cjs → chunk-7L556RGL.cjs} +3 -3
- package/dist/{chunk-6LV36PCL.js → chunk-BWOITUNI.js} +7 -6
- package/dist/{chunk-QA5C477U.cjs → chunk-CJEOH6QC.cjs} +64 -64
- package/dist/{chunk-6XAVZE4I.js → chunk-DTUL3Q5L.js} +1 -1
- package/dist/{chunk-TWTISTZB.cjs → chunk-EWXG4E74.cjs} +14 -13
- package/dist/{chunk-CTIEAHQL.cjs → chunk-JLDHK2QE.cjs} +18 -5
- package/dist/{chunk-GZGFNVTK.js → chunk-KAOHOHCA.js} +55 -40
- package/dist/{chunk-HMLVPIJR.js → chunk-MWEK7N3F.js} +1 -1
- package/dist/{chunk-LRD4CGOG.cjs → chunk-MXABMVF7.cjs} +4 -4
- package/dist/{chunk-LVQSG25Y.cjs → chunk-RHYVNRYG.cjs} +1 -1
- package/dist/{chunk-YW7EF7K7.js → chunk-RXTUSF3R.js} +2 -2
- package/dist/{chunk-ZPAPCGCR.cjs → chunk-YVP4NQII.cjs} +56 -41
- package/dist/{email-queue-J7DXYNCE.cjs → email-queue-VTYL2KFA.cjs} +7 -7
- package/dist/{email-queue-65PQAG4C.js → email-queue-YPRSVG56.js} +3 -3
- package/dist/{email-service-RDOTY3CO.cjs → email-service-ATCPJFWG.cjs} +7 -7
- package/dist/{email-service-F7HA4X63.js → email-service-DPKVQOKP.js} +2 -2
- package/dist/{emit-order-notification-trigger-K7URAZHJ.cjs → emit-order-notification-trigger-WI4HGMKH.cjs} +3 -3
- package/dist/{emit-order-notification-trigger-MD7EBODC.js → emit-order-notification-trigger-XVG2B5ZF.js} +1 -1
- package/dist/{erp-order-invoice-MYFCXOCY.js → erp-order-invoice-3UGWLICU.js} +2 -2
- package/dist/{erp-order-invoice-C5GZCOBM.cjs → erp-order-invoice-KJYJNWMG.cjs} +6 -6
- package/dist/index.cjs +246 -245
- package/dist/index.d.cts +8 -2
- package/dist/index.d.ts +8 -2
- package/dist/index.js +15 -14
- package/dist/{order-completion-otp-handlers-4EOLYLAP.cjs → order-completion-otp-handlers-IMMQGHDR.cjs} +6 -6
- package/dist/{order-completion-otp-handlers-3NTOGEA5.js → order-completion-otp-handlers-WGM7HWG4.js} +4 -4
- package/dist/{order-notification-dispatcher-X2XM5VUY.cjs → order-notification-dispatcher-5TUFCDU7.cjs} +10 -10
- package/dist/{order-notification-dispatcher-IYMOS4VY.js → order-notification-dispatcher-JKFQJYGG.js} +5 -5
- package/package.json +1 -1
package/dist/admin.cjs
CHANGED
|
@@ -895,7 +895,7 @@ var init_admin_config_context = __esm({
|
|
|
895
895
|
var CMS_VERSION;
|
|
896
896
|
var init_cms_version = __esm({
|
|
897
897
|
"src/lib/cms-version.ts"() {
|
|
898
|
-
CMS_VERSION = "1.0.
|
|
898
|
+
CMS_VERSION = "1.0.63" ;
|
|
899
899
|
}
|
|
900
900
|
});
|
|
901
901
|
function useCatalogCategories(enabled = true) {
|
|
@@ -20879,14 +20879,14 @@ function PluginSettingsPanel({ descriptor, onSaved }) {
|
|
|
20879
20879
|
placeholder: "e.g. crm@example.com"
|
|
20880
20880
|
}), /* @__PURE__ */ React.createElement("p", {
|
|
20881
20881
|
className: "text-xs text-gray-500 dark:text-gray-400"
|
|
20882
|
-
}, "Layout below merges with Branding settings
|
|
20882
|
+
}, "Layout below merges with Branding and Store settings. Upload a logo here (or in Settings \u2192 Store \u2192 Company Logo) \u2014 email uses that image in the header. Prefer a publicly reachable URL in production."), /* @__PURE__ */ React.createElement("div", {
|
|
20883
20883
|
className: "space-y-1"
|
|
20884
20884
|
}, /* @__PURE__ */ React.createElement(ImageOrUrlField, {
|
|
20885
|
-
label: "
|
|
20885
|
+
label: "Email logo (upload or URL)",
|
|
20886
20886
|
value: logoUrl,
|
|
20887
20887
|
onChange: setLogoUrl,
|
|
20888
20888
|
previewVariant: "logo",
|
|
20889
|
-
placeholder: "https://\u2026",
|
|
20889
|
+
placeholder: "Upload image or paste https://\u2026",
|
|
20890
20890
|
inputClassName: "h-8 text-sm w-full rounded-md border border-input bg-background px-3"
|
|
20891
20891
|
})), /* @__PURE__ */ React.createElement("div", {
|
|
20892
20892
|
className: "space-y-1"
|
package/dist/admin.js
CHANGED
|
@@ -861,7 +861,7 @@ var init_admin_config_context = __esm({
|
|
|
861
861
|
var CMS_VERSION;
|
|
862
862
|
var init_cms_version = __esm({
|
|
863
863
|
"src/lib/cms-version.ts"() {
|
|
864
|
-
CMS_VERSION = "1.0.
|
|
864
|
+
CMS_VERSION = "1.0.63" ;
|
|
865
865
|
}
|
|
866
866
|
});
|
|
867
867
|
function useCatalogCategories(enabled = true) {
|
|
@@ -20845,14 +20845,14 @@ function PluginSettingsPanel({ descriptor, onSaved }) {
|
|
|
20845
20845
|
placeholder: "e.g. crm@example.com"
|
|
20846
20846
|
}), /* @__PURE__ */ React.createElement("p", {
|
|
20847
20847
|
className: "text-xs text-gray-500 dark:text-gray-400"
|
|
20848
|
-
}, "Layout below merges with Branding settings
|
|
20848
|
+
}, "Layout below merges with Branding and Store settings. Upload a logo here (or in Settings \u2192 Store \u2192 Company Logo) \u2014 email uses that image in the header. Prefer a publicly reachable URL in production."), /* @__PURE__ */ React.createElement("div", {
|
|
20849
20849
|
className: "space-y-1"
|
|
20850
20850
|
}, /* @__PURE__ */ React.createElement(ImageOrUrlField, {
|
|
20851
|
-
label: "
|
|
20851
|
+
label: "Email logo (upload or URL)",
|
|
20852
20852
|
value: logoUrl,
|
|
20853
20853
|
onChange: setLogoUrl,
|
|
20854
20854
|
previewVariant: "logo",
|
|
20855
|
-
placeholder: "https://\u2026",
|
|
20855
|
+
placeholder: "Upload image or paste https://\u2026",
|
|
20856
20856
|
inputClassName: "h-8 text-sm w-full rounded-md border border-input bg-background px-3"
|
|
20857
20857
|
})), /* @__PURE__ */ React.createElement("div", {
|
|
20858
20858
|
className: "space-y-1"
|
package/dist/api.cjs
CHANGED
|
@@ -1,18 +1,18 @@
|
|
|
1
1
|
'use strict';
|
|
2
2
|
|
|
3
|
-
var
|
|
3
|
+
var chunkCJEOH6QC_cjs = require('./chunk-CJEOH6QC.cjs');
|
|
4
4
|
require('./chunk-WFMVD567.cjs');
|
|
5
5
|
require('./chunk-XQ3QUHWR.cjs');
|
|
6
6
|
require('./chunk-HY3AXLOI.cjs');
|
|
7
|
-
require('./chunk-
|
|
7
|
+
require('./chunk-EWXG4E74.cjs');
|
|
8
8
|
require('./chunk-H3IVLIPR.cjs');
|
|
9
9
|
require('./chunk-UEE4PTTB.cjs');
|
|
10
10
|
require('./chunk-7NMT3GBR.cjs');
|
|
11
|
-
require('./chunk-
|
|
12
|
-
require('./chunk-
|
|
13
|
-
require('./chunk-
|
|
11
|
+
require('./chunk-YVP4NQII.cjs');
|
|
12
|
+
require('./chunk-MXABMVF7.cjs');
|
|
13
|
+
require('./chunk-7L556RGL.cjs');
|
|
14
14
|
require('./chunk-UPLVMVRX.cjs');
|
|
15
|
-
require('./chunk-
|
|
15
|
+
require('./chunk-JLDHK2QE.cjs');
|
|
16
16
|
require('./chunk-3DZRIZOD.cjs');
|
|
17
17
|
require('./chunk-OOTLNH63.cjs');
|
|
18
18
|
require('./chunk-TJ2MIQUT.cjs');
|
|
@@ -26,131 +26,131 @@ require('./chunk-USNT2KNT.cjs');
|
|
|
26
26
|
|
|
27
27
|
Object.defineProperty(exports, "autoExpireOrderIfPaymentTimeExceeded", {
|
|
28
28
|
enumerable: true,
|
|
29
|
-
get: function () { return
|
|
29
|
+
get: function () { return chunkCJEOH6QC_cjs.autoExpireOrderIfPaymentTimeExceeded; }
|
|
30
30
|
});
|
|
31
31
|
Object.defineProperty(exports, "createAnalyticsHandlers", {
|
|
32
32
|
enumerable: true,
|
|
33
|
-
get: function () { return
|
|
33
|
+
get: function () { return chunkCJEOH6QC_cjs.createAnalyticsHandlers; }
|
|
34
34
|
});
|
|
35
35
|
Object.defineProperty(exports, "createBlogBySlugHandler", {
|
|
36
36
|
enumerable: true,
|
|
37
|
-
get: function () { return
|
|
37
|
+
get: function () { return chunkCJEOH6QC_cjs.createBlogBySlugHandler; }
|
|
38
38
|
});
|
|
39
39
|
Object.defineProperty(exports, "createChangePasswordHandler", {
|
|
40
40
|
enumerable: true,
|
|
41
|
-
get: function () { return
|
|
41
|
+
get: function () { return chunkCJEOH6QC_cjs.createChangePasswordHandler; }
|
|
42
42
|
});
|
|
43
43
|
Object.defineProperty(exports, "createCmsApiHandler", {
|
|
44
44
|
enumerable: true,
|
|
45
|
-
get: function () { return
|
|
45
|
+
get: function () { return chunkCJEOH6QC_cjs.createCmsApiHandler; }
|
|
46
46
|
});
|
|
47
47
|
Object.defineProperty(exports, "createCrudByIdHandler", {
|
|
48
48
|
enumerable: true,
|
|
49
|
-
get: function () { return
|
|
49
|
+
get: function () { return chunkCJEOH6QC_cjs.createCrudByIdHandler; }
|
|
50
50
|
});
|
|
51
51
|
Object.defineProperty(exports, "createCrudHandler", {
|
|
52
52
|
enumerable: true,
|
|
53
|
-
get: function () { return
|
|
53
|
+
get: function () { return chunkCJEOH6QC_cjs.createCrudHandler; }
|
|
54
54
|
});
|
|
55
55
|
Object.defineProperty(exports, "createDashboardStatsHandler", {
|
|
56
56
|
enumerable: true,
|
|
57
|
-
get: function () { return
|
|
57
|
+
get: function () { return chunkCJEOH6QC_cjs.createDashboardStatsHandler; }
|
|
58
58
|
});
|
|
59
59
|
Object.defineProperty(exports, "createEcommerceAnalyticsHandler", {
|
|
60
60
|
enumerable: true,
|
|
61
|
-
get: function () { return
|
|
61
|
+
get: function () { return chunkCJEOH6QC_cjs.createEcommerceAnalyticsHandler; }
|
|
62
62
|
});
|
|
63
63
|
Object.defineProperty(exports, "createForgotPasswordHandler", {
|
|
64
64
|
enumerable: true,
|
|
65
|
-
get: function () { return
|
|
65
|
+
get: function () { return chunkCJEOH6QC_cjs.createForgotPasswordHandler; }
|
|
66
66
|
});
|
|
67
67
|
Object.defineProperty(exports, "createFormBySlugHandler", {
|
|
68
68
|
enumerable: true,
|
|
69
|
-
get: function () { return
|
|
69
|
+
get: function () { return chunkCJEOH6QC_cjs.createFormBySlugHandler; }
|
|
70
70
|
});
|
|
71
71
|
Object.defineProperty(exports, "createInviteAcceptHandler", {
|
|
72
72
|
enumerable: true,
|
|
73
|
-
get: function () { return
|
|
73
|
+
get: function () { return chunkCJEOH6QC_cjs.createInviteAcceptHandler; }
|
|
74
74
|
});
|
|
75
75
|
Object.defineProperty(exports, "createJobScheduleHandlers", {
|
|
76
76
|
enumerable: true,
|
|
77
|
-
get: function () { return
|
|
77
|
+
get: function () { return chunkCJEOH6QC_cjs.createJobScheduleHandlers; }
|
|
78
78
|
});
|
|
79
79
|
Object.defineProperty(exports, "createLlmAgentKnowledgeHandlers", {
|
|
80
80
|
enumerable: true,
|
|
81
|
-
get: function () { return
|
|
81
|
+
get: function () { return chunkCJEOH6QC_cjs.createLlmAgentKnowledgeHandlers; }
|
|
82
82
|
});
|
|
83
83
|
Object.defineProperty(exports, "createMediaZipExtractHandler", {
|
|
84
84
|
enumerable: true,
|
|
85
|
-
get: function () { return
|
|
85
|
+
get: function () { return chunkCJEOH6QC_cjs.createMediaZipExtractHandler; }
|
|
86
86
|
});
|
|
87
87
|
Object.defineProperty(exports, "createSetPasswordHandler", {
|
|
88
88
|
enumerable: true,
|
|
89
|
-
get: function () { return
|
|
89
|
+
get: function () { return chunkCJEOH6QC_cjs.createSetPasswordHandler; }
|
|
90
90
|
});
|
|
91
91
|
Object.defineProperty(exports, "createSettingsApiHandlers", {
|
|
92
92
|
enumerable: true,
|
|
93
|
-
get: function () { return
|
|
93
|
+
get: function () { return chunkCJEOH6QC_cjs.createSettingsApiHandlers; }
|
|
94
94
|
});
|
|
95
95
|
Object.defineProperty(exports, "createStorefrontApiHandler", {
|
|
96
96
|
enumerable: true,
|
|
97
|
-
get: function () { return
|
|
97
|
+
get: function () { return chunkCJEOH6QC_cjs.createStorefrontApiHandler; }
|
|
98
98
|
});
|
|
99
99
|
Object.defineProperty(exports, "createUploadHandler", {
|
|
100
100
|
enumerable: true,
|
|
101
|
-
get: function () { return
|
|
101
|
+
get: function () { return chunkCJEOH6QC_cjs.createUploadHandler; }
|
|
102
102
|
});
|
|
103
103
|
Object.defineProperty(exports, "createUserAuthApiRouter", {
|
|
104
104
|
enumerable: true,
|
|
105
|
-
get: function () { return
|
|
105
|
+
get: function () { return chunkCJEOH6QC_cjs.createUserAuthApiRouter; }
|
|
106
106
|
});
|
|
107
107
|
Object.defineProperty(exports, "createUserAvatarHandler", {
|
|
108
108
|
enumerable: true,
|
|
109
|
-
get: function () { return
|
|
109
|
+
get: function () { return chunkCJEOH6QC_cjs.createUserAvatarHandler; }
|
|
110
110
|
});
|
|
111
111
|
Object.defineProperty(exports, "createUserProfileHandler", {
|
|
112
112
|
enumerable: true,
|
|
113
|
-
get: function () { return
|
|
113
|
+
get: function () { return chunkCJEOH6QC_cjs.createUserProfileHandler; }
|
|
114
114
|
});
|
|
115
115
|
Object.defineProperty(exports, "createUsersApiHandlers", {
|
|
116
116
|
enumerable: true,
|
|
117
|
-
get: function () { return
|
|
117
|
+
get: function () { return chunkCJEOH6QC_cjs.createUsersApiHandlers; }
|
|
118
118
|
});
|
|
119
119
|
Object.defineProperty(exports, "createVendorDashboardHandler", {
|
|
120
120
|
enumerable: true,
|
|
121
|
-
get: function () { return
|
|
121
|
+
get: function () { return chunkCJEOH6QC_cjs.createVendorDashboardHandler; }
|
|
122
122
|
});
|
|
123
123
|
Object.defineProperty(exports, "createVendorOnboardHandlers", {
|
|
124
124
|
enumerable: true,
|
|
125
|
-
get: function () { return
|
|
125
|
+
get: function () { return chunkCJEOH6QC_cjs.createVendorOnboardHandlers; }
|
|
126
126
|
});
|
|
127
127
|
Object.defineProperty(exports, "getPublicSettingsGroup", {
|
|
128
128
|
enumerable: true,
|
|
129
|
-
get: function () { return
|
|
129
|
+
get: function () { return chunkCJEOH6QC_cjs.getPublicSettingsGroup; }
|
|
130
130
|
});
|
|
131
131
|
Object.defineProperty(exports, "mergeGuardrailsIntoSystemPrompt", {
|
|
132
132
|
enumerable: true,
|
|
133
|
-
get: function () { return
|
|
133
|
+
get: function () { return chunkCJEOH6QC_cjs.mergeGuardrailsIntoSystemPrompt; }
|
|
134
134
|
});
|
|
135
135
|
Object.defineProperty(exports, "parseLlmAgentValidationRules", {
|
|
136
136
|
enumerable: true,
|
|
137
|
-
get: function () { return
|
|
137
|
+
get: function () { return chunkCJEOH6QC_cjs.parseLlmAgentValidationRules; }
|
|
138
138
|
});
|
|
139
139
|
Object.defineProperty(exports, "simpleDecrypt", {
|
|
140
140
|
enumerable: true,
|
|
141
|
-
get: function () { return
|
|
141
|
+
get: function () { return chunkCJEOH6QC_cjs.simpleDecrypt; }
|
|
142
142
|
});
|
|
143
143
|
Object.defineProperty(exports, "simpleEncrypt", {
|
|
144
144
|
enumerable: true,
|
|
145
|
-
get: function () { return
|
|
145
|
+
get: function () { return chunkCJEOH6QC_cjs.simpleEncrypt; }
|
|
146
146
|
});
|
|
147
147
|
Object.defineProperty(exports, "validateUserMessageAgainstAgentRules", {
|
|
148
148
|
enumerable: true,
|
|
149
|
-
get: function () { return
|
|
149
|
+
get: function () { return chunkCJEOH6QC_cjs.validateUserMessageAgainstAgentRules; }
|
|
150
150
|
});
|
|
151
151
|
Object.defineProperty(exports, "validateUserMessageAgainstStructuredRules", {
|
|
152
152
|
enumerable: true,
|
|
153
|
-
get: function () { return
|
|
153
|
+
get: function () { return chunkCJEOH6QC_cjs.validateUserMessageAgainstStructuredRules; }
|
|
154
154
|
});
|
|
155
155
|
Object.defineProperty(exports, "createCmsAuthBundle", {
|
|
156
156
|
enumerable: true,
|
package/dist/api.js
CHANGED
|
@@ -1,16 +1,16 @@
|
|
|
1
|
-
export { autoExpireOrderIfPaymentTimeExceeded, createAnalyticsHandlers, createBlogBySlugHandler, createChangePasswordHandler, createCmsApiHandler, createCrudByIdHandler, createCrudHandler, createDashboardStatsHandler, createEcommerceAnalyticsHandler, createForgotPasswordHandler, createFormBySlugHandler, createInviteAcceptHandler, createJobScheduleHandlers, createLlmAgentKnowledgeHandlers, createMediaZipExtractHandler, createSetPasswordHandler, createSettingsApiHandlers, createStorefrontApiHandler, createUploadHandler, createUserAuthApiRouter, createUserAvatarHandler, createUserProfileHandler, createUsersApiHandlers, createVendorDashboardHandler, createVendorOnboardHandlers, getPublicSettingsGroup, mergeGuardrailsIntoSystemPrompt, parseLlmAgentValidationRules, simpleDecrypt, simpleEncrypt, validateUserMessageAgainstAgentRules, validateUserMessageAgainstStructuredRules } from './chunk-
|
|
1
|
+
export { autoExpireOrderIfPaymentTimeExceeded, createAnalyticsHandlers, createBlogBySlugHandler, createChangePasswordHandler, createCmsApiHandler, createCrudByIdHandler, createCrudHandler, createDashboardStatsHandler, createEcommerceAnalyticsHandler, createForgotPasswordHandler, createFormBySlugHandler, createInviteAcceptHandler, createJobScheduleHandlers, createLlmAgentKnowledgeHandlers, createMediaZipExtractHandler, createSetPasswordHandler, createSettingsApiHandlers, createStorefrontApiHandler, createUploadHandler, createUserAuthApiRouter, createUserAvatarHandler, createUserProfileHandler, createUsersApiHandlers, createVendorDashboardHandler, createVendorOnboardHandlers, getPublicSettingsGroup, mergeGuardrailsIntoSystemPrompt, parseLlmAgentValidationRules, simpleDecrypt, simpleEncrypt, validateUserMessageAgainstAgentRules, validateUserMessageAgainstStructuredRules } from './chunk-77YWLP4X.js';
|
|
2
2
|
import './chunk-OVTOP42W.js';
|
|
3
3
|
import './chunk-GO7PPYNU.js';
|
|
4
4
|
import './chunk-3K5AIEIZ.js';
|
|
5
|
-
import './chunk-
|
|
5
|
+
import './chunk-BWOITUNI.js';
|
|
6
6
|
import './chunk-GWDI752Q.js';
|
|
7
7
|
import './chunk-AYWDQFJZ.js';
|
|
8
8
|
import './chunk-JXF23MPG.js';
|
|
9
|
-
import './chunk-
|
|
10
|
-
import './chunk-
|
|
11
|
-
import './chunk-
|
|
9
|
+
import './chunk-KAOHOHCA.js';
|
|
10
|
+
import './chunk-RXTUSF3R.js';
|
|
11
|
+
import './chunk-MWEK7N3F.js';
|
|
12
12
|
import './chunk-JC6DLWTE.js';
|
|
13
|
-
import './chunk-
|
|
13
|
+
import './chunk-3VZAAQUV.js';
|
|
14
14
|
import './chunk-MQBT33IV.js';
|
|
15
15
|
import './chunk-CRFV5WJK.js';
|
|
16
16
|
import './chunk-AYERBA7I.js';
|
|
@@ -36,16 +36,29 @@ function parseSocialLinksJson(raw) {
|
|
|
36
36
|
}
|
|
37
37
|
}
|
|
38
38
|
__name(parseSocialLinksJson, "parseSocialLinksJson");
|
|
39
|
-
function
|
|
39
|
+
function absolutizeEmailAssetUrl(url) {
|
|
40
|
+
const t = url?.trim();
|
|
41
|
+
if (!t) return void 0;
|
|
42
|
+
if (/^(https?:|cid:|data:)/i.test(t)) return t;
|
|
43
|
+
const base = (process.env.NEXTAUTH_URL || process.env.NEXT_PUBLIC_APP_URL || process.env.APP_URL || "").trim().replace(/\/$/, "");
|
|
44
|
+
if (!base) return t;
|
|
45
|
+
return `${base}${t.startsWith("/") ? t : `/${t}`}`;
|
|
46
|
+
}
|
|
47
|
+
__name(absolutizeEmailAssetUrl, "absolutizeEmailAssetUrl");
|
|
48
|
+
function mergeEmailLayoutCompanyDetails(branding, emailSettings, storeSettings) {
|
|
40
49
|
const fromBranding = getCompanyDetailsFromSettings(branding);
|
|
41
50
|
const pick = /* @__PURE__ */ __name((emailVal, fallback) => {
|
|
42
51
|
const t = emailVal?.trim();
|
|
43
52
|
return t || fallback?.trim() || void 0;
|
|
44
53
|
}, "pick");
|
|
45
|
-
const
|
|
46
|
-
const
|
|
47
|
-
const
|
|
48
|
-
const
|
|
54
|
+
const storeLogo = storeSettings?.invoiceLogoUrl || storeSettings?.companyLogo || storeSettings?.logo || "";
|
|
55
|
+
const storeName = storeSettings?.companyName || storeSettings?.storeName || "";
|
|
56
|
+
const storeEmail = storeSettings?.companyEmail || "";
|
|
57
|
+
const storePhone = storeSettings?.companyPhone || "";
|
|
58
|
+
const logoUrl = absolutizeEmailAssetUrl(pick(emailSettings.logoUrl ?? emailSettings.emailLogoUrl, fromBranding.logoUrl || storeLogo));
|
|
59
|
+
const companyName = pick(emailSettings.companyName ?? emailSettings.emailCompanyName, fromBranding.companyName || storeName);
|
|
60
|
+
const supportEmail = pick(emailSettings.supportEmail ?? emailSettings.emailSupportEmail, fromBranding.supportEmail || storeEmail);
|
|
61
|
+
const supportPhone = pick(emailSettings.supportPhone, storePhone || void 0);
|
|
49
62
|
const footerDisclaimer = pick(emailSettings.footerDisclaimer, void 0);
|
|
50
63
|
const followUsTitle = pick(emailSettings.followUsTitle, "Follow Us") || "Follow Us";
|
|
51
64
|
const socialFromEmail = parseSocialLinksJson(emailSettings.socialLinks);
|
|
@@ -1,13 +1,13 @@
|
|
|
1
1
|
import { normalizePhoneE164, generateNumericOtp, createOtpChallenge, queueSms, verifyAndConsumeOtpChallenge } from './chunk-OVTOP42W.js';
|
|
2
2
|
import { JOB_RUNNER_QUEUE } from './chunk-GO7PPYNU.js';
|
|
3
3
|
import { validateInventoryForConfirmedOrderLines, orderStatusHoldsStock, reconcileOrderInventoryBetweenSnapshots, orderInventorySnapshotFromRow, validateInventoryForOrderBecomingConfirmed } from './chunk-3K5AIEIZ.js';
|
|
4
|
-
import { resolveChatEmailToolSettings, CHAT_EMAIL_LOG, detectChatLeadIntent, parseIntentRecipientEmails, sendChatLeadEmail, buildTranscriptForLeadEmail, buildChatbotSystemPromptWithEmailTool, validateFcmCredentials, sendFcmPushNotification, parseEmailRecipientsFromConfig, isWhatsAppPluginEnabled, WhatsAppService, emailPlugin, initWhatsappTriggerDispatcher } from './chunk-
|
|
4
|
+
import { resolveChatEmailToolSettings, CHAT_EMAIL_LOG, detectChatLeadIntent, parseIntentRecipientEmails, sendChatLeadEmail, buildTranscriptForLeadEmail, buildChatbotSystemPromptWithEmailTool, validateFcmCredentials, sendFcmPushNotification, parseEmailRecipientsFromConfig, isWhatsAppPluginEnabled, WhatsAppService, emailPlugin, initWhatsappTriggerDispatcher } from './chunk-BWOITUNI.js';
|
|
5
5
|
import { registerWhatsAppQueueProcessor } from './chunk-GWDI752Q.js';
|
|
6
6
|
import { inviteStatusForActivation } from './chunk-JXF23MPG.js';
|
|
7
|
-
import { queueEmail, queueVendorOnboardEmails, registerEmailQueueProcessor } from './chunk-
|
|
8
|
-
import { unwrapErpReadData, mapErpPayloadToFulfillment, extractChildOrderRefsFromSalePayload, mapErpPayloadToInvoiceNumber, streamOrderInvoicePdf } from './chunk-
|
|
7
|
+
import { queueEmail, queueVendorOnboardEmails, registerEmailQueueProcessor } from './chunk-RXTUSF3R.js';
|
|
8
|
+
import { unwrapErpReadData, mapErpPayloadToFulfillment, extractChildOrderRefsFromSalePayload, mapErpPayloadToInvoiceNumber, streamOrderInvoicePdf } from './chunk-MWEK7N3F.js';
|
|
9
9
|
import { isErpIntegrationEnabled } from './chunk-JC6DLWTE.js';
|
|
10
|
-
import { mergeEmailLayoutCompanyDetails } from './chunk-
|
|
10
|
+
import { mergeEmailLayoutCompanyDetails } from './chunk-3VZAAQUV.js';
|
|
11
11
|
import { getSmsTemplateDefault, SMS_MESSAGE_TEMPLATE_DEFAULTS } from './chunk-MQBT33IV.js';
|
|
12
12
|
import { EVENT_ORDER_MESSAGE_TEMPLATE_DEFAULTS, EVENT_ORDER_TEMPLATE_KEY, EVENT_ORDER_TEMPLATE_VARIABLES } from './chunk-AYERBA7I.js';
|
|
13
13
|
import { ensureCustomerRecord, linkUnclaimedContactToUser, ensureCustomerForUser, canManageRoles, sessionHasEntityAccess } from './chunk-NR44CK5E.js';
|
|
@@ -5229,7 +5229,7 @@ function createCrudHandler(dataSource, entityMap, options) {
|
|
|
5229
5229
|
const orderIdForNotify = created.id;
|
|
5230
5230
|
const finalCreatedStatus = String(created.status ?? createdStatus ?? "pending").toLowerCase();
|
|
5231
5231
|
const initialPayStatus = String(persistBody.paymentStatus ?? body.paymentStatus ?? "unpaid").toLowerCase();
|
|
5232
|
-
void import('./emit-order-notification-trigger-
|
|
5232
|
+
void import('./emit-order-notification-trigger-XVG2B5ZF.js').then(({ fireOrderNotificationTrigger }) => {
|
|
5233
5233
|
if (finalCreatedStatus === "pending") {
|
|
5234
5234
|
if (initialPayStatus === "failed") {
|
|
5235
5235
|
fireOrderNotificationTrigger("payment_failed", orderIdForNotify, {
|
|
@@ -6313,7 +6313,7 @@ function createCrudByIdHandler(dataSource, entityMap, options) {
|
|
|
6313
6313
|
const payments = Array.isArray(updatedOrder.payments) ? updatedOrder.payments : [];
|
|
6314
6314
|
const bodyPayStatus = rawBody && typeof rawBody === "object" && rawBody.paymentStatus != null ? String(rawBody.paymentStatus).toLowerCase() : null;
|
|
6315
6315
|
const curPayStatus = bodyPayStatus || String(payments[0]?.status || "unpaid").toLowerCase();
|
|
6316
|
-
void import('./emit-order-notification-trigger-
|
|
6316
|
+
void import('./emit-order-notification-trigger-XVG2B5ZF.js').then(({ fireOrderNotificationTrigger }) => {
|
|
6317
6317
|
if (newStatus === "pending") {
|
|
6318
6318
|
if (curPayStatus === "failed") {
|
|
6319
6319
|
fireOrderNotificationTrigger("payment_failed", updatedOrder.id, {
|
|
@@ -6970,7 +6970,7 @@ function createCrudByIdHandler(dataSource, entityMap, options) {
|
|
|
6970
6970
|
});
|
|
6971
6971
|
}
|
|
6972
6972
|
if (ordStatus === "pending" || ordStatus === "confirmed") {
|
|
6973
|
-
void import('./emit-order-notification-trigger-
|
|
6973
|
+
void import('./emit-order-notification-trigger-XVG2B5ZF.js').then(({ fireOrderNotificationTrigger }) => {
|
|
6974
6974
|
fireOrderNotificationTrigger("order_placed", pOrder, {
|
|
6975
6975
|
dataSource,
|
|
6976
6976
|
entityMap
|
|
@@ -6984,7 +6984,7 @@ function createCrudByIdHandler(dataSource, entityMap, options) {
|
|
|
6984
6984
|
}
|
|
6985
6985
|
}
|
|
6986
6986
|
} else if (newPayStatus === "failed") {
|
|
6987
|
-
void import('./emit-order-notification-trigger-
|
|
6987
|
+
void import('./emit-order-notification-trigger-XVG2B5ZF.js').then(({ fireOrderNotificationTrigger }) => {
|
|
6988
6988
|
fireOrderNotificationTrigger("payment_failed", pOrder, {
|
|
6989
6989
|
dataSource,
|
|
6990
6990
|
entityMap
|
|
@@ -6992,7 +6992,7 @@ function createCrudByIdHandler(dataSource, entityMap, options) {
|
|
|
6992
6992
|
}).catch(() => {
|
|
6993
6993
|
});
|
|
6994
6994
|
} else if (newPayStatus === "refunded") {
|
|
6995
|
-
void import('./emit-order-notification-trigger-
|
|
6995
|
+
void import('./emit-order-notification-trigger-XVG2B5ZF.js').then(({ fireOrderNotificationTrigger }) => {
|
|
6996
6996
|
fireOrderNotificationTrigger("payment_refund_initiated", pOrder, {
|
|
6997
6997
|
dataSource,
|
|
6998
6998
|
entityMap
|
|
@@ -7122,7 +7122,7 @@ function createCrudByIdHandler(dataSource, entityMap, options) {
|
|
|
7122
7122
|
const payments = Array.isArray(ord.payments) ? ord.payments : [];
|
|
7123
7123
|
const bodyPayStatus = rawBody && typeof rawBody === "object" && rawBody.paymentStatus != null ? String(rawBody.paymentStatus).toLowerCase() : null;
|
|
7124
7124
|
const curPayStatus = bodyPayStatus || String(payments[0]?.status || "unpaid").toLowerCase();
|
|
7125
|
-
void import('./emit-order-notification-trigger-
|
|
7125
|
+
void import('./emit-order-notification-trigger-XVG2B5ZF.js').then(({ fireOrderNotificationTrigger }) => {
|
|
7126
7126
|
if (newStatus === "pending") {
|
|
7127
7127
|
if (curPayStatus === "failed") {
|
|
7128
7128
|
fireOrderNotificationTrigger("payment_failed", ord.id, {
|
|
@@ -29005,7 +29005,7 @@ function createCmsApiHandler(config) {
|
|
|
29005
29005
|
companyDetails
|
|
29006
29006
|
};
|
|
29007
29007
|
if (queue) {
|
|
29008
|
-
const { queueEmail: queueEmail2 } = await import('./email-queue-
|
|
29008
|
+
const { queueEmail: queueEmail2 } = await import('./email-queue-YPRSVG56.js');
|
|
29009
29009
|
await queueEmail2(cms, {
|
|
29010
29010
|
to: opts.to,
|
|
29011
29011
|
templateName: "passwordReset",
|
|
@@ -30305,7 +30305,7 @@ function createCmsApiHandler(config) {
|
|
|
30305
30305
|
const pe = await requireEntityPermissionEffective(req, "orders", "read");
|
|
30306
30306
|
if (pe) return pe;
|
|
30307
30307
|
const cms = await getCms();
|
|
30308
|
-
const { streamOrderInvoicePdf: streamOrderInvoicePdf2 } = await import('./erp-order-invoice-
|
|
30308
|
+
const { streamOrderInvoicePdf: streamOrderInvoicePdf2 } = await import('./erp-order-invoice-3UGWLICU.js');
|
|
30309
30309
|
const oid = Number(path2[1]);
|
|
30310
30310
|
if (!Number.isFinite(oid)) return config.json({
|
|
30311
30311
|
error: "Invalid id"
|
|
@@ -30687,7 +30687,7 @@ function createCmsApiHandler(config) {
|
|
|
30687
30687
|
status: 400
|
|
30688
30688
|
});
|
|
30689
30689
|
}
|
|
30690
|
-
const { resendOrderNotification } = await import('./order-notification-dispatcher-
|
|
30690
|
+
const { resendOrderNotification } = await import('./order-notification-dispatcher-JKFQJYGG.js');
|
|
30691
30691
|
const result = await resendOrderNotification(triggerKey, orderId, {
|
|
30692
30692
|
dataSource,
|
|
30693
30693
|
entityMap,
|
|
@@ -30786,7 +30786,7 @@ function createCmsApiHandler(config) {
|
|
|
30786
30786
|
status: "cancelled"
|
|
30787
30787
|
});
|
|
30788
30788
|
const fireOrderCancelledNotification = /* @__PURE__ */ __name((refundAmount) => {
|
|
30789
|
-
void import('./emit-order-notification-trigger-
|
|
30789
|
+
void import('./emit-order-notification-trigger-XVG2B5ZF.js').then(({ fireOrderNotificationTrigger }) => {
|
|
30790
30790
|
fireOrderNotificationTrigger("order_cancelled", orderId, {
|
|
30791
30791
|
dataSource,
|
|
30792
30792
|
entityMap
|
|
@@ -31031,7 +31031,7 @@ function createCmsApiHandler(config) {
|
|
|
31031
31031
|
}, {
|
|
31032
31032
|
status: 400
|
|
31033
31033
|
});
|
|
31034
|
-
const { createOrderCompletionOtpHandlers } = await import('./order-completion-otp-handlers-
|
|
31034
|
+
const { createOrderCompletionOtpHandlers } = await import('./order-completion-otp-handlers-WGM7HWG4.js');
|
|
31035
31035
|
const handlers = createOrderCompletionOtpHandlers(dataSource, entityMap, getCms);
|
|
31036
31036
|
return handlers.getChannels(req, orderId);
|
|
31037
31037
|
}
|
|
@@ -31046,7 +31046,7 @@ function createCmsApiHandler(config) {
|
|
|
31046
31046
|
}, {
|
|
31047
31047
|
status: 400
|
|
31048
31048
|
});
|
|
31049
|
-
const { createOrderCompletionOtpHandlers } = await import('./order-completion-otp-handlers-
|
|
31049
|
+
const { createOrderCompletionOtpHandlers } = await import('./order-completion-otp-handlers-WGM7HWG4.js');
|
|
31050
31050
|
const handlers = createOrderCompletionOtpHandlers(dataSource, entityMap, getCms);
|
|
31051
31051
|
return handlers.sendOtp(req, orderId);
|
|
31052
31052
|
}
|
|
@@ -31061,7 +31061,7 @@ function createCmsApiHandler(config) {
|
|
|
31061
31061
|
}, {
|
|
31062
31062
|
status: 400
|
|
31063
31063
|
});
|
|
31064
|
-
const { createOrderCompletionOtpHandlers } = await import('./order-completion-otp-handlers-
|
|
31064
|
+
const { createOrderCompletionOtpHandlers } = await import('./order-completion-otp-handlers-WGM7HWG4.js');
|
|
31065
31065
|
const handlers = createOrderCompletionOtpHandlers(dataSource, entityMap, getCms);
|
|
31066
31066
|
return handlers.verifyOtp(req, orderId);
|
|
31067
31067
|
}
|
|
@@ -31693,7 +31693,7 @@ function createStorefrontApiHandler(config) {
|
|
|
31693
31693
|
const otpPepper = config.otpPepper;
|
|
31694
31694
|
const defaultPhoneCc = config.defaultPhoneCountryCode;
|
|
31695
31695
|
function fireOrderPlacedNotification(orderId, isPaid) {
|
|
31696
|
-
void import('./emit-order-notification-trigger-
|
|
31696
|
+
void import('./emit-order-notification-trigger-XVG2B5ZF.js').then(({ fireOrderNotificationTrigger }) => {
|
|
31697
31697
|
fireOrderNotificationTrigger("order_placed", orderId, {
|
|
31698
31698
|
dataSource,
|
|
31699
31699
|
entityMap
|
|
@@ -34630,7 +34630,7 @@ function createStorefrontApiHandler(config) {
|
|
|
34630
34630
|
} catch {
|
|
34631
34631
|
}
|
|
34632
34632
|
try {
|
|
34633
|
-
void import('./emit-order-notification-trigger-
|
|
34633
|
+
void import('./emit-order-notification-trigger-XVG2B5ZF.js').then(({ fireOrderNotificationTrigger }) => {
|
|
34634
34634
|
fireOrderNotificationTrigger("order_cancelled", orderId, {
|
|
34635
34635
|
dataSource,
|
|
34636
34636
|
entityMap
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
'use strict';
|
|
2
2
|
|
|
3
3
|
var chunkUPLVMVRX_cjs = require('./chunk-UPLVMVRX.cjs');
|
|
4
|
-
var
|
|
4
|
+
var chunkJLDHK2QE_cjs = require('./chunk-JLDHK2QE.cjs');
|
|
5
5
|
var chunkUSNT2KNT_cjs = require('./chunk-USNT2KNT.cjs');
|
|
6
6
|
var pdfLib = require('pdf-lib');
|
|
7
7
|
|
|
@@ -666,8 +666,8 @@ async function buildLocalInvoicePdfForOrder(ds, entityMap, orderId) {
|
|
|
666
666
|
loadSettingsGroup(ds, entityMap, "branding"),
|
|
667
667
|
loadSettingsGroup(ds, entityMap, "email")
|
|
668
668
|
]);
|
|
669
|
-
const companyDetails =
|
|
670
|
-
const fromBranding =
|
|
669
|
+
const companyDetails = chunkJLDHK2QE_cjs.mergeEmailLayoutCompanyDetails(branding, email);
|
|
670
|
+
const fromBranding = chunkJLDHK2QE_cjs.getCompanyDetailsFromSettings(branding);
|
|
671
671
|
const rawLogo = store.invoiceLogoUrl || store.companyLogo || store.logo || companyDetails.logoUrl || fromBranding.logoUrl || null;
|
|
672
672
|
const logoUrl = resolveInvoiceAssetUrl(rawLogo);
|
|
673
673
|
const companyName = store.companyName || store.invoiceCompanyName || store.name || companyDetails.companyName || fromBranding.companyName || "Store";
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
import { queueWhatsApp } from './chunk-GWDI752Q.js';
|
|
2
2
|
import { notificationTriggerEmitter } from './chunk-AYWDQFJZ.js';
|
|
3
|
-
import { sesRegionSupportsSmtp, sesSmtpHost, EmailService, renderLayout } from './chunk-
|
|
4
|
-
import { queueEmail } from './chunk-
|
|
5
|
-
import { mergeEmailLayoutCompanyDetails } from './chunk-
|
|
3
|
+
import { sesRegionSupportsSmtp, sesSmtpHost, EmailService, renderLayout } from './chunk-KAOHOHCA.js';
|
|
4
|
+
import { queueEmail } from './chunk-RXTUSF3R.js';
|
|
5
|
+
import { mergeEmailLayoutCompanyDetails } from './chunk-3VZAAQUV.js';
|
|
6
6
|
import { applyTemplateVars } from './chunk-CRFV5WJK.js';
|
|
7
7
|
import { __name } from './chunk-SHUYVCID.js';
|
|
8
8
|
import * as crypto from 'crypto';
|
|
@@ -1757,11 +1757,12 @@ __name(formatBodyForEmailHtml, "formatBodyForEmailHtml");
|
|
|
1757
1757
|
async function sendEmailForTrigger(triggerKey, orderId, audienceType, variables, contactEmail, dataSource, entityMap, getCms) {
|
|
1758
1758
|
const template = await loadBoundTemplate(triggerKey, "email", audienceType, dataSource, entityMap);
|
|
1759
1759
|
if (!template) return;
|
|
1760
|
-
const [branding, emailSettings] = await Promise.all([
|
|
1760
|
+
const [branding, emailSettings, storeSettings] = await Promise.all([
|
|
1761
1761
|
getSettingsGroup(dataSource, entityMap, "branding"),
|
|
1762
|
-
getSettingsGroup(dataSource, entityMap, "email")
|
|
1762
|
+
getSettingsGroup(dataSource, entityMap, "email"),
|
|
1763
|
+
getSettingsGroup(dataSource, entityMap, "store")
|
|
1763
1764
|
]);
|
|
1764
|
-
const companyDetails = mergeEmailLayoutCompanyDetails(branding, emailSettings);
|
|
1765
|
+
const companyDetails = mergeEmailLayoutCompanyDetails(branding, emailSettings, storeSettings);
|
|
1765
1766
|
const templateContent = (template.body ?? "") + (template.subject ?? "");
|
|
1766
1767
|
const shouldAttachInvoice = /\{\{\s*(invoiceAttachment|invoicePdf|invoice|attachInvoice)\s*\}\}/i.test(templateContent);
|
|
1767
1768
|
const cleanVariables = {
|