@infuro/cms-core 1.0.58 → 1.0.59
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 +1 -1
- package/dist/admin.js +1 -1
- package/dist/api.cjs +36 -32
- package/dist/api.d.cts +2 -1
- package/dist/api.d.ts +2 -1
- package/dist/api.js +1 -1
- package/dist/{chunk-AGU3B5JW.js → chunk-BTUEUA5H.js} +133 -4
- package/dist/{chunk-BHUEXLD2.cjs → chunk-MCCA7WLQ.cjs} +133 -3
- package/dist/index.cjs +217 -213
- package/dist/index.d.cts +2 -1
- package/dist/index.d.ts +2 -1
- package/dist/index.js +2 -2
- package/package.json +1 -1
package/dist/admin.cjs
CHANGED
|
@@ -887,7 +887,7 @@ var init_admin_config_context = __esm({
|
|
|
887
887
|
var CMS_VERSION;
|
|
888
888
|
var init_cms_version = __esm({
|
|
889
889
|
"src/lib/cms-version.ts"() {
|
|
890
|
-
CMS_VERSION = "1.0.
|
|
890
|
+
CMS_VERSION = "1.0.59" ;
|
|
891
891
|
}
|
|
892
892
|
});
|
|
893
893
|
function useCatalogCategories(enabled = true) {
|
package/dist/admin.js
CHANGED
|
@@ -853,7 +853,7 @@ var init_admin_config_context = __esm({
|
|
|
853
853
|
var CMS_VERSION;
|
|
854
854
|
var init_cms_version = __esm({
|
|
855
855
|
"src/lib/cms-version.ts"() {
|
|
856
|
-
CMS_VERSION = "1.0.
|
|
856
|
+
CMS_VERSION = "1.0.59" ;
|
|
857
857
|
}
|
|
858
858
|
});
|
|
859
859
|
function useCatalogCategories(enabled = true) {
|
package/dist/api.cjs
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
'use strict';
|
|
2
2
|
|
|
3
|
-
var
|
|
3
|
+
var chunkMCCA7WLQ_cjs = require('./chunk-MCCA7WLQ.cjs');
|
|
4
4
|
require('./chunk-XQ3QUHWR.cjs');
|
|
5
5
|
require('./chunk-HY3AXLOI.cjs');
|
|
6
6
|
require('./chunk-HXLC56ZK.cjs');
|
|
@@ -20,129 +20,133 @@ require('./chunk-USNT2KNT.cjs');
|
|
|
20
20
|
|
|
21
21
|
|
|
22
22
|
|
|
23
|
+
Object.defineProperty(exports, "autoExpireOrderIfPaymentTimeExceeded", {
|
|
24
|
+
enumerable: true,
|
|
25
|
+
get: function () { return chunkMCCA7WLQ_cjs.autoExpireOrderIfPaymentTimeExceeded; }
|
|
26
|
+
});
|
|
23
27
|
Object.defineProperty(exports, "createAnalyticsHandlers", {
|
|
24
28
|
enumerable: true,
|
|
25
|
-
get: function () { return
|
|
29
|
+
get: function () { return chunkMCCA7WLQ_cjs.createAnalyticsHandlers; }
|
|
26
30
|
});
|
|
27
31
|
Object.defineProperty(exports, "createBlogBySlugHandler", {
|
|
28
32
|
enumerable: true,
|
|
29
|
-
get: function () { return
|
|
33
|
+
get: function () { return chunkMCCA7WLQ_cjs.createBlogBySlugHandler; }
|
|
30
34
|
});
|
|
31
35
|
Object.defineProperty(exports, "createChangePasswordHandler", {
|
|
32
36
|
enumerable: true,
|
|
33
|
-
get: function () { return
|
|
37
|
+
get: function () { return chunkMCCA7WLQ_cjs.createChangePasswordHandler; }
|
|
34
38
|
});
|
|
35
39
|
Object.defineProperty(exports, "createCmsApiHandler", {
|
|
36
40
|
enumerable: true,
|
|
37
|
-
get: function () { return
|
|
41
|
+
get: function () { return chunkMCCA7WLQ_cjs.createCmsApiHandler; }
|
|
38
42
|
});
|
|
39
43
|
Object.defineProperty(exports, "createCrudByIdHandler", {
|
|
40
44
|
enumerable: true,
|
|
41
|
-
get: function () { return
|
|
45
|
+
get: function () { return chunkMCCA7WLQ_cjs.createCrudByIdHandler; }
|
|
42
46
|
});
|
|
43
47
|
Object.defineProperty(exports, "createCrudHandler", {
|
|
44
48
|
enumerable: true,
|
|
45
|
-
get: function () { return
|
|
49
|
+
get: function () { return chunkMCCA7WLQ_cjs.createCrudHandler; }
|
|
46
50
|
});
|
|
47
51
|
Object.defineProperty(exports, "createDashboardStatsHandler", {
|
|
48
52
|
enumerable: true,
|
|
49
|
-
get: function () { return
|
|
53
|
+
get: function () { return chunkMCCA7WLQ_cjs.createDashboardStatsHandler; }
|
|
50
54
|
});
|
|
51
55
|
Object.defineProperty(exports, "createEcommerceAnalyticsHandler", {
|
|
52
56
|
enumerable: true,
|
|
53
|
-
get: function () { return
|
|
57
|
+
get: function () { return chunkMCCA7WLQ_cjs.createEcommerceAnalyticsHandler; }
|
|
54
58
|
});
|
|
55
59
|
Object.defineProperty(exports, "createForgotPasswordHandler", {
|
|
56
60
|
enumerable: true,
|
|
57
|
-
get: function () { return
|
|
61
|
+
get: function () { return chunkMCCA7WLQ_cjs.createForgotPasswordHandler; }
|
|
58
62
|
});
|
|
59
63
|
Object.defineProperty(exports, "createFormBySlugHandler", {
|
|
60
64
|
enumerable: true,
|
|
61
|
-
get: function () { return
|
|
65
|
+
get: function () { return chunkMCCA7WLQ_cjs.createFormBySlugHandler; }
|
|
62
66
|
});
|
|
63
67
|
Object.defineProperty(exports, "createInviteAcceptHandler", {
|
|
64
68
|
enumerable: true,
|
|
65
|
-
get: function () { return
|
|
69
|
+
get: function () { return chunkMCCA7WLQ_cjs.createInviteAcceptHandler; }
|
|
66
70
|
});
|
|
67
71
|
Object.defineProperty(exports, "createJobScheduleHandlers", {
|
|
68
72
|
enumerable: true,
|
|
69
|
-
get: function () { return
|
|
73
|
+
get: function () { return chunkMCCA7WLQ_cjs.createJobScheduleHandlers; }
|
|
70
74
|
});
|
|
71
75
|
Object.defineProperty(exports, "createLlmAgentKnowledgeHandlers", {
|
|
72
76
|
enumerable: true,
|
|
73
|
-
get: function () { return
|
|
77
|
+
get: function () { return chunkMCCA7WLQ_cjs.createLlmAgentKnowledgeHandlers; }
|
|
74
78
|
});
|
|
75
79
|
Object.defineProperty(exports, "createMediaZipExtractHandler", {
|
|
76
80
|
enumerable: true,
|
|
77
|
-
get: function () { return
|
|
81
|
+
get: function () { return chunkMCCA7WLQ_cjs.createMediaZipExtractHandler; }
|
|
78
82
|
});
|
|
79
83
|
Object.defineProperty(exports, "createSetPasswordHandler", {
|
|
80
84
|
enumerable: true,
|
|
81
|
-
get: function () { return
|
|
85
|
+
get: function () { return chunkMCCA7WLQ_cjs.createSetPasswordHandler; }
|
|
82
86
|
});
|
|
83
87
|
Object.defineProperty(exports, "createSettingsApiHandlers", {
|
|
84
88
|
enumerable: true,
|
|
85
|
-
get: function () { return
|
|
89
|
+
get: function () { return chunkMCCA7WLQ_cjs.createSettingsApiHandlers; }
|
|
86
90
|
});
|
|
87
91
|
Object.defineProperty(exports, "createStorefrontApiHandler", {
|
|
88
92
|
enumerable: true,
|
|
89
|
-
get: function () { return
|
|
93
|
+
get: function () { return chunkMCCA7WLQ_cjs.createStorefrontApiHandler; }
|
|
90
94
|
});
|
|
91
95
|
Object.defineProperty(exports, "createUploadHandler", {
|
|
92
96
|
enumerable: true,
|
|
93
|
-
get: function () { return
|
|
97
|
+
get: function () { return chunkMCCA7WLQ_cjs.createUploadHandler; }
|
|
94
98
|
});
|
|
95
99
|
Object.defineProperty(exports, "createUserAuthApiRouter", {
|
|
96
100
|
enumerable: true,
|
|
97
|
-
get: function () { return
|
|
101
|
+
get: function () { return chunkMCCA7WLQ_cjs.createUserAuthApiRouter; }
|
|
98
102
|
});
|
|
99
103
|
Object.defineProperty(exports, "createUserAvatarHandler", {
|
|
100
104
|
enumerable: true,
|
|
101
|
-
get: function () { return
|
|
105
|
+
get: function () { return chunkMCCA7WLQ_cjs.createUserAvatarHandler; }
|
|
102
106
|
});
|
|
103
107
|
Object.defineProperty(exports, "createUserProfileHandler", {
|
|
104
108
|
enumerable: true,
|
|
105
|
-
get: function () { return
|
|
109
|
+
get: function () { return chunkMCCA7WLQ_cjs.createUserProfileHandler; }
|
|
106
110
|
});
|
|
107
111
|
Object.defineProperty(exports, "createUsersApiHandlers", {
|
|
108
112
|
enumerable: true,
|
|
109
|
-
get: function () { return
|
|
113
|
+
get: function () { return chunkMCCA7WLQ_cjs.createUsersApiHandlers; }
|
|
110
114
|
});
|
|
111
115
|
Object.defineProperty(exports, "createVendorDashboardHandler", {
|
|
112
116
|
enumerable: true,
|
|
113
|
-
get: function () { return
|
|
117
|
+
get: function () { return chunkMCCA7WLQ_cjs.createVendorDashboardHandler; }
|
|
114
118
|
});
|
|
115
119
|
Object.defineProperty(exports, "createVendorOnboardHandlers", {
|
|
116
120
|
enumerable: true,
|
|
117
|
-
get: function () { return
|
|
121
|
+
get: function () { return chunkMCCA7WLQ_cjs.createVendorOnboardHandlers; }
|
|
118
122
|
});
|
|
119
123
|
Object.defineProperty(exports, "getPublicSettingsGroup", {
|
|
120
124
|
enumerable: true,
|
|
121
|
-
get: function () { return
|
|
125
|
+
get: function () { return chunkMCCA7WLQ_cjs.getPublicSettingsGroup; }
|
|
122
126
|
});
|
|
123
127
|
Object.defineProperty(exports, "mergeGuardrailsIntoSystemPrompt", {
|
|
124
128
|
enumerable: true,
|
|
125
|
-
get: function () { return
|
|
129
|
+
get: function () { return chunkMCCA7WLQ_cjs.mergeGuardrailsIntoSystemPrompt; }
|
|
126
130
|
});
|
|
127
131
|
Object.defineProperty(exports, "parseLlmAgentValidationRules", {
|
|
128
132
|
enumerable: true,
|
|
129
|
-
get: function () { return
|
|
133
|
+
get: function () { return chunkMCCA7WLQ_cjs.parseLlmAgentValidationRules; }
|
|
130
134
|
});
|
|
131
135
|
Object.defineProperty(exports, "simpleDecrypt", {
|
|
132
136
|
enumerable: true,
|
|
133
|
-
get: function () { return
|
|
137
|
+
get: function () { return chunkMCCA7WLQ_cjs.simpleDecrypt; }
|
|
134
138
|
});
|
|
135
139
|
Object.defineProperty(exports, "simpleEncrypt", {
|
|
136
140
|
enumerable: true,
|
|
137
|
-
get: function () { return
|
|
141
|
+
get: function () { return chunkMCCA7WLQ_cjs.simpleEncrypt; }
|
|
138
142
|
});
|
|
139
143
|
Object.defineProperty(exports, "validateUserMessageAgainstAgentRules", {
|
|
140
144
|
enumerable: true,
|
|
141
|
-
get: function () { return
|
|
145
|
+
get: function () { return chunkMCCA7WLQ_cjs.validateUserMessageAgainstAgentRules; }
|
|
142
146
|
});
|
|
143
147
|
Object.defineProperty(exports, "validateUserMessageAgainstStructuredRules", {
|
|
144
148
|
enumerable: true,
|
|
145
|
-
get: function () { return
|
|
149
|
+
get: function () { return chunkMCCA7WLQ_cjs.validateUserMessageAgainstStructuredRules; }
|
|
146
150
|
});
|
|
147
151
|
Object.defineProperty(exports, "createCmsAuthBundle", {
|
|
148
152
|
enumerable: true,
|
package/dist/api.d.cts
CHANGED
|
@@ -68,6 +68,7 @@ type VendorScope = {
|
|
|
68
68
|
};
|
|
69
69
|
|
|
70
70
|
type EntityMap = Record<string, typeorm.EntityTarget<typeorm.ObjectLiteral>>;
|
|
71
|
+
declare function autoExpireOrderIfPaymentTimeExceeded(dataSource: typeorm.DataSource, entityMap: Record<string, unknown>, order: Record<string, unknown> | null | undefined): Promise<Record<string, unknown> | null | undefined>;
|
|
71
72
|
interface CrudHandlerOptions {
|
|
72
73
|
requireAuth: (req: Request) => Promise<Response | null>;
|
|
73
74
|
json: (body: unknown, init?: {
|
|
@@ -641,4 +642,4 @@ declare function createStorefrontApiHandler(config: StorefrontApiConfig): {
|
|
|
641
642
|
handle(method: string, path: string[], req: Request): Promise<Response>;
|
|
642
643
|
};
|
|
643
644
|
|
|
644
|
-
export { type AnalyticsHandlerConfig, type AuthHandlersConfig, type BlogBySlugConfig, type ChangePasswordConfig, type ChatPublicConfig, type CmsApiHandlerConfig, type CmsGetter, type CrudHandlerOptions, type DashboardStatsConfig, type EcommerceAnalyticsConfig, type EntityMap, type ForgotPasswordConfig, type FormBySlugConfig, type GetPublicSettingsGroupConfig, type GetPublicSettingsGroupDataSource, type InviteAcceptConfig, type JobScheduleApiConfig, type LlmAgentKnowledgeApiConfig, type LlmAgentValidationRulesJson, type ParsedLlmAgentValidation, type SetPasswordConfig, type SettingsApiConfig, type StorefrontApiConfig, type StorefrontOtpFlags, type UploadHandlerConfig, type UserAuthApiConfig, type UserAvatarConfig, type UserProfileConfig, type UsersApiConfig, type VendorDashboardConfig, type VendorOnboardHandlersConfig, type VendorOwnerActivation, createAnalyticsHandlers, createBlogBySlugHandler, createChangePasswordHandler, createCmsApiHandler, createCmsAuthBundle, 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 };
|
|
645
|
+
export { type AnalyticsHandlerConfig, type AuthHandlersConfig, type BlogBySlugConfig, type ChangePasswordConfig, type ChatPublicConfig, type CmsApiHandlerConfig, type CmsGetter, type CrudHandlerOptions, type DashboardStatsConfig, type EcommerceAnalyticsConfig, type EntityMap, type ForgotPasswordConfig, type FormBySlugConfig, type GetPublicSettingsGroupConfig, type GetPublicSettingsGroupDataSource, type InviteAcceptConfig, type JobScheduleApiConfig, type LlmAgentKnowledgeApiConfig, type LlmAgentValidationRulesJson, type ParsedLlmAgentValidation, type SetPasswordConfig, type SettingsApiConfig, type StorefrontApiConfig, type StorefrontOtpFlags, type UploadHandlerConfig, type UserAuthApiConfig, type UserAvatarConfig, type UserProfileConfig, type UsersApiConfig, type VendorDashboardConfig, type VendorOnboardHandlersConfig, type VendorOwnerActivation, autoExpireOrderIfPaymentTimeExceeded, createAnalyticsHandlers, createBlogBySlugHandler, createChangePasswordHandler, createCmsApiHandler, createCmsAuthBundle, 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 };
|
package/dist/api.d.ts
CHANGED
|
@@ -68,6 +68,7 @@ type VendorScope = {
|
|
|
68
68
|
};
|
|
69
69
|
|
|
70
70
|
type EntityMap = Record<string, typeorm.EntityTarget<typeorm.ObjectLiteral>>;
|
|
71
|
+
declare function autoExpireOrderIfPaymentTimeExceeded(dataSource: typeorm.DataSource, entityMap: Record<string, unknown>, order: Record<string, unknown> | null | undefined): Promise<Record<string, unknown> | null | undefined>;
|
|
71
72
|
interface CrudHandlerOptions {
|
|
72
73
|
requireAuth: (req: Request) => Promise<Response | null>;
|
|
73
74
|
json: (body: unknown, init?: {
|
|
@@ -641,4 +642,4 @@ declare function createStorefrontApiHandler(config: StorefrontApiConfig): {
|
|
|
641
642
|
handle(method: string, path: string[], req: Request): Promise<Response>;
|
|
642
643
|
};
|
|
643
644
|
|
|
644
|
-
export { type AnalyticsHandlerConfig, type AuthHandlersConfig, type BlogBySlugConfig, type ChangePasswordConfig, type ChatPublicConfig, type CmsApiHandlerConfig, type CmsGetter, type CrudHandlerOptions, type DashboardStatsConfig, type EcommerceAnalyticsConfig, type EntityMap, type ForgotPasswordConfig, type FormBySlugConfig, type GetPublicSettingsGroupConfig, type GetPublicSettingsGroupDataSource, type InviteAcceptConfig, type JobScheduleApiConfig, type LlmAgentKnowledgeApiConfig, type LlmAgentValidationRulesJson, type ParsedLlmAgentValidation, type SetPasswordConfig, type SettingsApiConfig, type StorefrontApiConfig, type StorefrontOtpFlags, type UploadHandlerConfig, type UserAuthApiConfig, type UserAvatarConfig, type UserProfileConfig, type UsersApiConfig, type VendorDashboardConfig, type VendorOnboardHandlersConfig, type VendorOwnerActivation, createAnalyticsHandlers, createBlogBySlugHandler, createChangePasswordHandler, createCmsApiHandler, createCmsAuthBundle, 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 };
|
|
645
|
+
export { type AnalyticsHandlerConfig, type AuthHandlersConfig, type BlogBySlugConfig, type ChangePasswordConfig, type ChatPublicConfig, type CmsApiHandlerConfig, type CmsGetter, type CrudHandlerOptions, type DashboardStatsConfig, type EcommerceAnalyticsConfig, type EntityMap, type ForgotPasswordConfig, type FormBySlugConfig, type GetPublicSettingsGroupConfig, type GetPublicSettingsGroupDataSource, type InviteAcceptConfig, type JobScheduleApiConfig, type LlmAgentKnowledgeApiConfig, type LlmAgentValidationRulesJson, type ParsedLlmAgentValidation, type SetPasswordConfig, type SettingsApiConfig, type StorefrontApiConfig, type StorefrontOtpFlags, type UploadHandlerConfig, type UserAuthApiConfig, type UserAvatarConfig, type UserProfileConfig, type UsersApiConfig, type VendorDashboardConfig, type VendorOnboardHandlersConfig, type VendorOwnerActivation, autoExpireOrderIfPaymentTimeExceeded, createAnalyticsHandlers, createBlogBySlugHandler, createChangePasswordHandler, createCmsApiHandler, createCmsAuthBundle, 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 };
|
package/dist/api.js
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
export { 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-BTUEUA5H.js';
|
|
2
2
|
import './chunk-GO7PPYNU.js';
|
|
3
3
|
import './chunk-3K5AIEIZ.js';
|
|
4
4
|
import './chunk-HYW3MUXT.js';
|
|
@@ -1510,6 +1510,36 @@ async function validateLlmAgentScopeForWrite(dataSource, entityMap, scope, exclu
|
|
|
1510
1510
|
__name(validateLlmAgentScopeForWrite, "validateLlmAgentScopeForWrite");
|
|
1511
1511
|
|
|
1512
1512
|
// src/api/crud.ts
|
|
1513
|
+
async function autoExpireOrderIfPaymentTimeExceeded(dataSource, entityMap, order) {
|
|
1514
|
+
if (!order || typeof order !== "object") return order;
|
|
1515
|
+
const status = String(order.status ?? "").toLowerCase();
|
|
1516
|
+
if (status !== "pending") return order;
|
|
1517
|
+
const meta = typeof order.metadata === "object" && order.metadata ? order.metadata : {};
|
|
1518
|
+
const expiresAtStr = meta.paymentExpiresAt ? String(meta.paymentExpiresAt) : null;
|
|
1519
|
+
if (!expiresAtStr) return order;
|
|
1520
|
+
const expiresMs = new Date(expiresAtStr).getTime();
|
|
1521
|
+
if (Number.isNaN(expiresMs) || Date.now() <= expiresMs) return order;
|
|
1522
|
+
try {
|
|
1523
|
+
const orderId = Number(order.id);
|
|
1524
|
+
if (orderId && entityMap.orders) {
|
|
1525
|
+
const orderRepo = dataSource.getRepository(entityMap.orders);
|
|
1526
|
+
const updatedMeta = {
|
|
1527
|
+
...meta,
|
|
1528
|
+
cancelReason: "Payment window expired (10 minutes)"
|
|
1529
|
+
};
|
|
1530
|
+
await orderRepo.update(orderId, {
|
|
1531
|
+
status: "cancelled",
|
|
1532
|
+
metadata: updatedMeta
|
|
1533
|
+
});
|
|
1534
|
+
order.status = "cancelled";
|
|
1535
|
+
order.metadata = updatedMeta;
|
|
1536
|
+
}
|
|
1537
|
+
} catch (err) {
|
|
1538
|
+
console.error("[payment-expiry] Auto-cancelling expired order failed", err);
|
|
1539
|
+
}
|
|
1540
|
+
return order;
|
|
1541
|
+
}
|
|
1542
|
+
__name(autoExpireOrderIfPaymentTimeExceeded, "autoExpireOrderIfPaymentTimeExceeded");
|
|
1513
1543
|
var CRUD_LOG = "[cms-crud]";
|
|
1514
1544
|
function logCrudClientError(op, detail) {
|
|
1515
1545
|
console.warn(CRUD_LOG, op, detail);
|
|
@@ -3554,6 +3584,12 @@ function createCrudHandler(dataSource, entityMap, options) {
|
|
|
3554
3584
|
}
|
|
3555
3585
|
const itemsSummary = parts.join(", ") || "\u2014";
|
|
3556
3586
|
const { payments: _payments, ...orderWithoutPayments } = order;
|
|
3587
|
+
const rawPayStatus = String(orderPayments[0]?.status ?? "unpaid").toLowerCase();
|
|
3588
|
+
const orderStatus = String(order.status ?? "").toLowerCase();
|
|
3589
|
+
let paymentStatus2 = rawPayStatus;
|
|
3590
|
+
if (orderStatus === "cancelled" && rawPayStatus !== "paid" && rawPayStatus !== "captured" && rawPayStatus !== "refunded") {
|
|
3591
|
+
paymentStatus2 = "unpaid";
|
|
3592
|
+
}
|
|
3557
3593
|
return {
|
|
3558
3594
|
...orderWithoutPayments,
|
|
3559
3595
|
contact: contact ? {
|
|
@@ -3563,7 +3599,7 @@ function createCrudHandler(dataSource, entityMap, options) {
|
|
|
3563
3599
|
phone: contact.phone
|
|
3564
3600
|
} : null,
|
|
3565
3601
|
itemsSummary,
|
|
3566
|
-
paymentStatus:
|
|
3602
|
+
paymentStatus: paymentStatus2
|
|
3567
3603
|
};
|
|
3568
3604
|
}));
|
|
3569
3605
|
return json({
|
|
@@ -5448,6 +5484,9 @@ function createCrudByIdHandler(dataSource, entityMap, options) {
|
|
|
5448
5484
|
"payments"
|
|
5449
5485
|
]
|
|
5450
5486
|
});
|
|
5487
|
+
if (order) {
|
|
5488
|
+
await autoExpireOrderIfPaymentTimeExceeded(dataSource, entityMap, order);
|
|
5489
|
+
}
|
|
5451
5490
|
const orderDenied = await vendorScopeAccessJson(order, scope2, resource);
|
|
5452
5491
|
if (orderDenied) return orderDenied;
|
|
5453
5492
|
const relatedOrders = await repo.find({
|
|
@@ -32884,6 +32923,23 @@ function createStorefrontApiHandler(config) {
|
|
|
32884
32923
|
});
|
|
32885
32924
|
return json(body);
|
|
32886
32925
|
}
|
|
32926
|
+
if (path2[0] === "cart" && path2.length === 1 && method === "DELETE") {
|
|
32927
|
+
const { cart, err } = await getOrCreateCart(req);
|
|
32928
|
+
if (err) return err;
|
|
32929
|
+
const cartId = cart?.id;
|
|
32930
|
+
if (cartId && Number.isFinite(cartId) && cartId > 0) {
|
|
32931
|
+
await cartItemRepo().delete({
|
|
32932
|
+
cartId
|
|
32933
|
+
});
|
|
32934
|
+
await cartRepo().update(cartId, {
|
|
32935
|
+
updatedAt: /* @__PURE__ */ new Date()
|
|
32936
|
+
});
|
|
32937
|
+
}
|
|
32938
|
+
return json({
|
|
32939
|
+
ok: true,
|
|
32940
|
+
message: "Cart cleared"
|
|
32941
|
+
});
|
|
32942
|
+
}
|
|
32887
32943
|
if (path2[0] === "cart" && path2[1] === "items" && path2.length === 2 && method === "POST") {
|
|
32888
32944
|
const body = await req.json().catch(() => ({}));
|
|
32889
32945
|
const capCart = await assertCaptchaOk(getCms, body, req, json);
|
|
@@ -33403,7 +33459,8 @@ function createStorefrontApiHandler(config) {
|
|
|
33403
33459
|
total: prepOrd.orderTotal,
|
|
33404
33460
|
currency: cart.currency || "INR",
|
|
33405
33461
|
metadata: {
|
|
33406
|
-
cartId
|
|
33462
|
+
cartId,
|
|
33463
|
+
paymentExpiresAt: new Date(Date.now() + 10 * 60 * 1e3).toISOString()
|
|
33407
33464
|
}
|
|
33408
33465
|
}));
|
|
33409
33466
|
const oid = ord.id;
|
|
@@ -33476,7 +33533,11 @@ function createStorefrontApiHandler(config) {
|
|
|
33476
33533
|
tax: prepChk.orderTax,
|
|
33477
33534
|
discount: 0,
|
|
33478
33535
|
total: prepChk.orderTotal,
|
|
33479
|
-
currency: cart.currency || "INR"
|
|
33536
|
+
currency: cart.currency || "INR",
|
|
33537
|
+
metadata: {
|
|
33538
|
+
cartId: cart.id,
|
|
33539
|
+
paymentExpiresAt: new Date(Date.now() + 10 * 60 * 1e3).toISOString()
|
|
33540
|
+
}
|
|
33480
33541
|
}));
|
|
33481
33542
|
const oid = ord.id;
|
|
33482
33543
|
await orderRepo().update(oid, {
|
|
@@ -33722,6 +33783,7 @@ function createStorefrontApiHandler(config) {
|
|
|
33722
33783
|
status: 404
|
|
33723
33784
|
});
|
|
33724
33785
|
const o = order;
|
|
33786
|
+
await autoExpireOrderIfPaymentTimeExceeded(dataSource, entityMap, o);
|
|
33725
33787
|
const lines = (o.items || []).map((line) => {
|
|
33726
33788
|
const p = line.product;
|
|
33727
33789
|
return {
|
|
@@ -33782,6 +33844,73 @@ function createStorefrontApiHandler(config) {
|
|
|
33782
33844
|
fulfillmentPreview: fulfillmentPreview || void 0
|
|
33783
33845
|
});
|
|
33784
33846
|
}
|
|
33847
|
+
if (path2[0] === "orders" && path2.length === 3 && path2[2] === "cancel" && method === "POST") {
|
|
33848
|
+
const orderId = parseInt(path2[1], 10);
|
|
33849
|
+
if (!Number.isFinite(orderId)) return json({
|
|
33850
|
+
error: "Invalid order id"
|
|
33851
|
+
}, {
|
|
33852
|
+
status: 400
|
|
33853
|
+
});
|
|
33854
|
+
const order = await orderRepo().findOne({
|
|
33855
|
+
where: {
|
|
33856
|
+
id: orderId,
|
|
33857
|
+
deleted: false
|
|
33858
|
+
}
|
|
33859
|
+
});
|
|
33860
|
+
if (!order) return json({
|
|
33861
|
+
error: "Not found"
|
|
33862
|
+
}, {
|
|
33863
|
+
status: 404
|
|
33864
|
+
});
|
|
33865
|
+
const o = order;
|
|
33866
|
+
const status = String(o.status || "").toLowerCase();
|
|
33867
|
+
if (status === "pending") {
|
|
33868
|
+
const meta = typeof o.metadata === "object" && o.metadata ? o.metadata : {};
|
|
33869
|
+
const updatedMeta = {
|
|
33870
|
+
...meta,
|
|
33871
|
+
cancelReason: "Cancelled by user during payment window"
|
|
33872
|
+
};
|
|
33873
|
+
await orderRepo().update(orderId, {
|
|
33874
|
+
status: "cancelled",
|
|
33875
|
+
metadata: updatedMeta
|
|
33876
|
+
});
|
|
33877
|
+
try {
|
|
33878
|
+
if (entityMap.payments) {
|
|
33879
|
+
const payRepo = dataSource.getRepository(entityMap.payments);
|
|
33880
|
+
const pendingPayment = await payRepo.findOne({
|
|
33881
|
+
where: {
|
|
33882
|
+
orderId,
|
|
33883
|
+
status: "pending"
|
|
33884
|
+
}
|
|
33885
|
+
});
|
|
33886
|
+
if (pendingPayment) {
|
|
33887
|
+
await payRepo.update(pendingPayment.id, {
|
|
33888
|
+
status: "unpaid"
|
|
33889
|
+
});
|
|
33890
|
+
}
|
|
33891
|
+
}
|
|
33892
|
+
} catch {
|
|
33893
|
+
}
|
|
33894
|
+
try {
|
|
33895
|
+
const { cart } = await getOrCreateCart(req);
|
|
33896
|
+
const cartId = cart?.id;
|
|
33897
|
+
if (cartId && Number.isFinite(cartId) && cartId > 0) {
|
|
33898
|
+
await cartItemRepo().delete({
|
|
33899
|
+
cartId
|
|
33900
|
+
});
|
|
33901
|
+
await cartRepo().update(cartId, {
|
|
33902
|
+
updatedAt: /* @__PURE__ */ new Date()
|
|
33903
|
+
});
|
|
33904
|
+
}
|
|
33905
|
+
} catch {
|
|
33906
|
+
}
|
|
33907
|
+
}
|
|
33908
|
+
return json({
|
|
33909
|
+
ok: true,
|
|
33910
|
+
orderId,
|
|
33911
|
+
status: "cancelled"
|
|
33912
|
+
});
|
|
33913
|
+
}
|
|
33785
33914
|
return json({
|
|
33786
33915
|
error: "Not found"
|
|
33787
33916
|
}, {
|
|
@@ -33799,4 +33928,4 @@ function createStorefrontApiHandler(config) {
|
|
|
33799
33928
|
}
|
|
33800
33929
|
__name(createStorefrontApiHandler, "createStorefrontApiHandler");
|
|
33801
33930
|
|
|
33802
|
-
export { Address, Attendee, Attribute, BLOG_GENERATOR_AGENT_NAME, BLOG_GENERATOR_DEFAULT_SYSTEM_INSTRUCTION, BLOG_GENERATOR_DEFAULT_VALIDATION_RULES, BLOG_GENERATOR_LLM_AGENT_SLUG, BLOG_GENERATOR_MARKDOWN_ARTICLE_SEPARATOR, BLOG_METADATA_ENRICHER_AGENT_NAME, BLOG_METADATA_ENRICHER_DEFAULT_SYSTEM_INSTRUCTION, BLOG_METADATA_ENRICHER_DEFAULT_VALIDATION_RULES, BLOG_METADATA_ENRICHER_LLM_AGENT_SLUG, Blog, BlogGeneratorService, Brand, CMS_ENTITY_MAP, Cart, CartItem, Category, ChatConversation, ChatMessage, Collection, Combo, ComboItem, Comment, Config, Contact, Currency, CurrencyExchange, Customer, Customer_Contacts, Discount, DiscountRules, Event, EventProduct, Form, FormField, FormSubmission, JobSchedule, JobScheduleRun, KnowledgeBaseChunk, KnowledgeBaseDocument, LlmAgent, LlmAgentKnowledgeDocument, Media, MessageTemplate, Order, OrderAddresses, OrderDiscounts, OrderItem, OrderNotificationBinding, OrderNotificationTrigger, OtpChallenge, Page, PasswordResetToken, Payment, Permission, Product, ProductAttribute, ProductCategory, ProductConfig, ProductVariant, RefundPolicy, RefundRequest, RssArticle, RssFeed, Seo, Tag, Tax, User, UserDeviceToken, UserGroup, Vendor, VendorCustomer, VendorRole, VendorRolePermission, VendorUser, VendorUserProfile, Wishlist, WishlistItem, ZIP_MIME_TYPES, applyApprovalStatusSideEffects, applyEventApprovalStatusSideEffects, applyRotatingVendorInvite, applyVendorCustomersContactFilter, applyVendorEventCreateApproval, applyVendorProductCreateApproval, assertCaptchaOk, assertContactAllowedForVendorOrder, assertEventApprovalUpdate, assertProductApprovalUpdate, buildBlogMetadataUserPrompt, buildCronFromSchedule, buildRssUserPromptFromFeeds, buildUserInviteLink, buildVendorInviteLink, calculateOrderRefundPreview, calculateRefundFromPolicy, checkAndIncrementDiscountUsage, checkEventsEnabled, checkMultiVendorEnabled, completeUserInviteAccept, consumeAppliedDiscountUsages, contactIsVendorCustomer, countDiscountOrdersForContact, countRecentOtpSends, createAnalyticsHandlers, createBlogBySlugHandler, createChangePasswordHandler, createCmsApiHandler, createCmsApp, createCmsAppWithMessaging, createCrudByIdHandler, createCrudHandler, createDashboardStatsHandler, createEcommerceAnalyticsHandler, createEventOrderMessageTemplateHandlers, createForgotPasswordHandler, createFormBySlugHandler, createInviteAcceptHandler, createJobScheduleHandlers, createLlmAgentKnowledgeHandlers, createMediaZipExtractHandler, createMessageTemplateRowLoader, createOtpChallenge, createSetPasswordHandler, createSettingsApiHandlers, createSocialMediaHandlers, createStorefrontApiHandler, createUploadHandler, createUserAuthApiRouter, createUserAvatarHandler, createUserProfileHandler, createUsersApiHandlers, createVendorDashboardHandler, createVendorOnboardHandlers, daysBeforeEventStart, decrementDiscountUsage, describeEventTierPolicy, ensureMessagingPluginsOnCms, ensureScheduleQueueWorker, ensureVendorCustomerForOrderContact, ensureVendorCustomersForOrder, findActiveRefundPolicyForVendor, findUserByInviteToken, findVendorByInviteToken, formatTierRange, generateNumericOtp, getPublicSettingsGroup, getRequireEventApproval, getRequireProductApproval, getRssArticleSummaryFromItem, getVendorCatalogCreateFlags, hashOtpCode, hydrateVendorSessionUser, invalidateEventsCache, invalidateMultiVendorCache, invalidateRequireEventApprovalCache, invalidateRequireProductApprovalCache, invalidateVendorCatalogCreateFlagsCache, isCustomerTypeContact, isMaxPerUserUsageReached, isMaxTotalUsageReached, isZipMedia, llmAgentToChatAgentOptions, loadSettingsGroupFromDb, loadUserVendorContext, mergeGuardrailsIntoSystemPrompt, messagingPlugins, metaFetchUserManagedPages, metaPostPageFeed, metaPostPagePhoto, metaResolvePageAccessToken, newUserInviteToken, normalizePhoneE164, normalizeRefundTiers, overlayCmsPlugins, parseBlogGeneratorAgentContent, parseBlogGeneratorModelOutput, parseBlogMetadataEnrichmentJson, parseLlmAgentValidationRules, pgBossScheduleNameForId, queueErpCreateContactIfEnabled, queueJobScheduleNow, queuePlugin, queueSms, recordDiscountUsage, registerJobRunnerWorker, registerMessagingQueueProcessors, registerSmsQueueProcessor, relativePathFromMediaParentId, resolveBlogCategoryIdByName, resolveSettingsEncryptionKey, resolveVendorIdForContactCheck, sanitizeMediaFolderPath, sanitizeStorageSegment, sendVendorOnboardEmails, simpleDecrypt, simpleEncrypt, syncJobScheduleToPgBoss, validateRefundTiers, validateScheduleInput, validateUserMessageAgainstAgentRules, validateUserMessageAgainstStructuredRules, verifyAndConsumeOtpChallenge, verifyOtpCodeHash, whatsappPlugin, wrapGetCmsWithMessaging };
|
|
33931
|
+
export { Address, Attendee, Attribute, BLOG_GENERATOR_AGENT_NAME, BLOG_GENERATOR_DEFAULT_SYSTEM_INSTRUCTION, BLOG_GENERATOR_DEFAULT_VALIDATION_RULES, BLOG_GENERATOR_LLM_AGENT_SLUG, BLOG_GENERATOR_MARKDOWN_ARTICLE_SEPARATOR, BLOG_METADATA_ENRICHER_AGENT_NAME, BLOG_METADATA_ENRICHER_DEFAULT_SYSTEM_INSTRUCTION, BLOG_METADATA_ENRICHER_DEFAULT_VALIDATION_RULES, BLOG_METADATA_ENRICHER_LLM_AGENT_SLUG, Blog, BlogGeneratorService, Brand, CMS_ENTITY_MAP, Cart, CartItem, Category, ChatConversation, ChatMessage, Collection, Combo, ComboItem, Comment, Config, Contact, Currency, CurrencyExchange, Customer, Customer_Contacts, Discount, DiscountRules, Event, EventProduct, Form, FormField, FormSubmission, JobSchedule, JobScheduleRun, KnowledgeBaseChunk, KnowledgeBaseDocument, LlmAgent, LlmAgentKnowledgeDocument, Media, MessageTemplate, Order, OrderAddresses, OrderDiscounts, OrderItem, OrderNotificationBinding, OrderNotificationTrigger, OtpChallenge, Page, PasswordResetToken, Payment, Permission, Product, ProductAttribute, ProductCategory, ProductConfig, ProductVariant, RefundPolicy, RefundRequest, RssArticle, RssFeed, Seo, Tag, Tax, User, UserDeviceToken, UserGroup, Vendor, VendorCustomer, VendorRole, VendorRolePermission, VendorUser, VendorUserProfile, Wishlist, WishlistItem, ZIP_MIME_TYPES, applyApprovalStatusSideEffects, applyEventApprovalStatusSideEffects, applyRotatingVendorInvite, applyVendorCustomersContactFilter, applyVendorEventCreateApproval, applyVendorProductCreateApproval, assertCaptchaOk, assertContactAllowedForVendorOrder, assertEventApprovalUpdate, assertProductApprovalUpdate, autoExpireOrderIfPaymentTimeExceeded, buildBlogMetadataUserPrompt, buildCronFromSchedule, buildRssUserPromptFromFeeds, buildUserInviteLink, buildVendorInviteLink, calculateOrderRefundPreview, calculateRefundFromPolicy, checkAndIncrementDiscountUsage, checkEventsEnabled, checkMultiVendorEnabled, completeUserInviteAccept, consumeAppliedDiscountUsages, contactIsVendorCustomer, countDiscountOrdersForContact, countRecentOtpSends, createAnalyticsHandlers, createBlogBySlugHandler, createChangePasswordHandler, createCmsApiHandler, createCmsApp, createCmsAppWithMessaging, createCrudByIdHandler, createCrudHandler, createDashboardStatsHandler, createEcommerceAnalyticsHandler, createEventOrderMessageTemplateHandlers, createForgotPasswordHandler, createFormBySlugHandler, createInviteAcceptHandler, createJobScheduleHandlers, createLlmAgentKnowledgeHandlers, createMediaZipExtractHandler, createMessageTemplateRowLoader, createOtpChallenge, createSetPasswordHandler, createSettingsApiHandlers, createSocialMediaHandlers, createStorefrontApiHandler, createUploadHandler, createUserAuthApiRouter, createUserAvatarHandler, createUserProfileHandler, createUsersApiHandlers, createVendorDashboardHandler, createVendorOnboardHandlers, daysBeforeEventStart, decrementDiscountUsage, describeEventTierPolicy, ensureMessagingPluginsOnCms, ensureScheduleQueueWorker, ensureVendorCustomerForOrderContact, ensureVendorCustomersForOrder, findActiveRefundPolicyForVendor, findUserByInviteToken, findVendorByInviteToken, formatTierRange, generateNumericOtp, getPublicSettingsGroup, getRequireEventApproval, getRequireProductApproval, getRssArticleSummaryFromItem, getVendorCatalogCreateFlags, hashOtpCode, hydrateVendorSessionUser, invalidateEventsCache, invalidateMultiVendorCache, invalidateRequireEventApprovalCache, invalidateRequireProductApprovalCache, invalidateVendorCatalogCreateFlagsCache, isCustomerTypeContact, isMaxPerUserUsageReached, isMaxTotalUsageReached, isZipMedia, llmAgentToChatAgentOptions, loadSettingsGroupFromDb, loadUserVendorContext, mergeGuardrailsIntoSystemPrompt, messagingPlugins, metaFetchUserManagedPages, metaPostPageFeed, metaPostPagePhoto, metaResolvePageAccessToken, newUserInviteToken, normalizePhoneE164, normalizeRefundTiers, overlayCmsPlugins, parseBlogGeneratorAgentContent, parseBlogGeneratorModelOutput, parseBlogMetadataEnrichmentJson, parseLlmAgentValidationRules, pgBossScheduleNameForId, queueErpCreateContactIfEnabled, queueJobScheduleNow, queuePlugin, queueSms, recordDiscountUsage, registerJobRunnerWorker, registerMessagingQueueProcessors, registerSmsQueueProcessor, relativePathFromMediaParentId, resolveBlogCategoryIdByName, resolveSettingsEncryptionKey, resolveVendorIdForContactCheck, sanitizeMediaFolderPath, sanitizeStorageSegment, sendVendorOnboardEmails, simpleDecrypt, simpleEncrypt, syncJobScheduleToPgBoss, validateRefundTiers, validateScheduleInput, validateUserMessageAgainstAgentRules, validateUserMessageAgainstStructuredRules, verifyAndConsumeOtpChallenge, verifyOtpCodeHash, whatsappPlugin, wrapGetCmsWithMessaging };
|
|
@@ -1520,6 +1520,36 @@ async function validateLlmAgentScopeForWrite(dataSource, entityMap, scope, exclu
|
|
|
1520
1520
|
chunkUSNT2KNT_cjs.__name(validateLlmAgentScopeForWrite, "validateLlmAgentScopeForWrite");
|
|
1521
1521
|
|
|
1522
1522
|
// src/api/crud.ts
|
|
1523
|
+
async function autoExpireOrderIfPaymentTimeExceeded(dataSource, entityMap, order) {
|
|
1524
|
+
if (!order || typeof order !== "object") return order;
|
|
1525
|
+
const status = String(order.status ?? "").toLowerCase();
|
|
1526
|
+
if (status !== "pending") return order;
|
|
1527
|
+
const meta = typeof order.metadata === "object" && order.metadata ? order.metadata : {};
|
|
1528
|
+
const expiresAtStr = meta.paymentExpiresAt ? String(meta.paymentExpiresAt) : null;
|
|
1529
|
+
if (!expiresAtStr) return order;
|
|
1530
|
+
const expiresMs = new Date(expiresAtStr).getTime();
|
|
1531
|
+
if (Number.isNaN(expiresMs) || Date.now() <= expiresMs) return order;
|
|
1532
|
+
try {
|
|
1533
|
+
const orderId = Number(order.id);
|
|
1534
|
+
if (orderId && entityMap.orders) {
|
|
1535
|
+
const orderRepo = dataSource.getRepository(entityMap.orders);
|
|
1536
|
+
const updatedMeta = {
|
|
1537
|
+
...meta,
|
|
1538
|
+
cancelReason: "Payment window expired (10 minutes)"
|
|
1539
|
+
};
|
|
1540
|
+
await orderRepo.update(orderId, {
|
|
1541
|
+
status: "cancelled",
|
|
1542
|
+
metadata: updatedMeta
|
|
1543
|
+
});
|
|
1544
|
+
order.status = "cancelled";
|
|
1545
|
+
order.metadata = updatedMeta;
|
|
1546
|
+
}
|
|
1547
|
+
} catch (err) {
|
|
1548
|
+
console.error("[payment-expiry] Auto-cancelling expired order failed", err);
|
|
1549
|
+
}
|
|
1550
|
+
return order;
|
|
1551
|
+
}
|
|
1552
|
+
chunkUSNT2KNT_cjs.__name(autoExpireOrderIfPaymentTimeExceeded, "autoExpireOrderIfPaymentTimeExceeded");
|
|
1523
1553
|
var CRUD_LOG = "[cms-crud]";
|
|
1524
1554
|
function logCrudClientError(op, detail) {
|
|
1525
1555
|
console.warn(CRUD_LOG, op, detail);
|
|
@@ -3564,6 +3594,12 @@ function createCrudHandler(dataSource, entityMap, options) {
|
|
|
3564
3594
|
}
|
|
3565
3595
|
const itemsSummary = parts.join(", ") || "\u2014";
|
|
3566
3596
|
const { payments: _payments, ...orderWithoutPayments } = order;
|
|
3597
|
+
const rawPayStatus = String(orderPayments[0]?.status ?? "unpaid").toLowerCase();
|
|
3598
|
+
const orderStatus = String(order.status ?? "").toLowerCase();
|
|
3599
|
+
let paymentStatus2 = rawPayStatus;
|
|
3600
|
+
if (orderStatus === "cancelled" && rawPayStatus !== "paid" && rawPayStatus !== "captured" && rawPayStatus !== "refunded") {
|
|
3601
|
+
paymentStatus2 = "unpaid";
|
|
3602
|
+
}
|
|
3567
3603
|
return {
|
|
3568
3604
|
...orderWithoutPayments,
|
|
3569
3605
|
contact: contact ? {
|
|
@@ -3573,7 +3609,7 @@ function createCrudHandler(dataSource, entityMap, options) {
|
|
|
3573
3609
|
phone: contact.phone
|
|
3574
3610
|
} : null,
|
|
3575
3611
|
itemsSummary,
|
|
3576
|
-
paymentStatus:
|
|
3612
|
+
paymentStatus: paymentStatus2
|
|
3577
3613
|
};
|
|
3578
3614
|
}));
|
|
3579
3615
|
return json({
|
|
@@ -5458,6 +5494,9 @@ function createCrudByIdHandler(dataSource, entityMap, options) {
|
|
|
5458
5494
|
"payments"
|
|
5459
5495
|
]
|
|
5460
5496
|
});
|
|
5497
|
+
if (order) {
|
|
5498
|
+
await autoExpireOrderIfPaymentTimeExceeded(dataSource, entityMap, order);
|
|
5499
|
+
}
|
|
5461
5500
|
const orderDenied = await vendorScopeAccessJson(order, scope2, resource);
|
|
5462
5501
|
if (orderDenied) return orderDenied;
|
|
5463
5502
|
const relatedOrders = await repo.find({
|
|
@@ -32894,6 +32933,23 @@ function createStorefrontApiHandler(config) {
|
|
|
32894
32933
|
});
|
|
32895
32934
|
return json(body);
|
|
32896
32935
|
}
|
|
32936
|
+
if (path2[0] === "cart" && path2.length === 1 && method === "DELETE") {
|
|
32937
|
+
const { cart, err } = await getOrCreateCart(req);
|
|
32938
|
+
if (err) return err;
|
|
32939
|
+
const cartId = cart?.id;
|
|
32940
|
+
if (cartId && Number.isFinite(cartId) && cartId > 0) {
|
|
32941
|
+
await cartItemRepo().delete({
|
|
32942
|
+
cartId
|
|
32943
|
+
});
|
|
32944
|
+
await cartRepo().update(cartId, {
|
|
32945
|
+
updatedAt: /* @__PURE__ */ new Date()
|
|
32946
|
+
});
|
|
32947
|
+
}
|
|
32948
|
+
return json({
|
|
32949
|
+
ok: true,
|
|
32950
|
+
message: "Cart cleared"
|
|
32951
|
+
});
|
|
32952
|
+
}
|
|
32897
32953
|
if (path2[0] === "cart" && path2[1] === "items" && path2.length === 2 && method === "POST") {
|
|
32898
32954
|
const body = await req.json().catch(() => ({}));
|
|
32899
32955
|
const capCart = await assertCaptchaOk(getCms, body, req, json);
|
|
@@ -33413,7 +33469,8 @@ function createStorefrontApiHandler(config) {
|
|
|
33413
33469
|
total: prepOrd.orderTotal,
|
|
33414
33470
|
currency: cart.currency || "INR",
|
|
33415
33471
|
metadata: {
|
|
33416
|
-
cartId
|
|
33472
|
+
cartId,
|
|
33473
|
+
paymentExpiresAt: new Date(Date.now() + 10 * 60 * 1e3).toISOString()
|
|
33417
33474
|
}
|
|
33418
33475
|
}));
|
|
33419
33476
|
const oid = ord.id;
|
|
@@ -33486,7 +33543,11 @@ function createStorefrontApiHandler(config) {
|
|
|
33486
33543
|
tax: prepChk.orderTax,
|
|
33487
33544
|
discount: 0,
|
|
33488
33545
|
total: prepChk.orderTotal,
|
|
33489
|
-
currency: cart.currency || "INR"
|
|
33546
|
+
currency: cart.currency || "INR",
|
|
33547
|
+
metadata: {
|
|
33548
|
+
cartId: cart.id,
|
|
33549
|
+
paymentExpiresAt: new Date(Date.now() + 10 * 60 * 1e3).toISOString()
|
|
33550
|
+
}
|
|
33490
33551
|
}));
|
|
33491
33552
|
const oid = ord.id;
|
|
33492
33553
|
await orderRepo().update(oid, {
|
|
@@ -33732,6 +33793,7 @@ function createStorefrontApiHandler(config) {
|
|
|
33732
33793
|
status: 404
|
|
33733
33794
|
});
|
|
33734
33795
|
const o = order;
|
|
33796
|
+
await autoExpireOrderIfPaymentTimeExceeded(dataSource, entityMap, o);
|
|
33735
33797
|
const lines = (o.items || []).map((line) => {
|
|
33736
33798
|
const p = line.product;
|
|
33737
33799
|
return {
|
|
@@ -33792,6 +33854,73 @@ function createStorefrontApiHandler(config) {
|
|
|
33792
33854
|
fulfillmentPreview: fulfillmentPreview || void 0
|
|
33793
33855
|
});
|
|
33794
33856
|
}
|
|
33857
|
+
if (path2[0] === "orders" && path2.length === 3 && path2[2] === "cancel" && method === "POST") {
|
|
33858
|
+
const orderId = parseInt(path2[1], 10);
|
|
33859
|
+
if (!Number.isFinite(orderId)) return json({
|
|
33860
|
+
error: "Invalid order id"
|
|
33861
|
+
}, {
|
|
33862
|
+
status: 400
|
|
33863
|
+
});
|
|
33864
|
+
const order = await orderRepo().findOne({
|
|
33865
|
+
where: {
|
|
33866
|
+
id: orderId,
|
|
33867
|
+
deleted: false
|
|
33868
|
+
}
|
|
33869
|
+
});
|
|
33870
|
+
if (!order) return json({
|
|
33871
|
+
error: "Not found"
|
|
33872
|
+
}, {
|
|
33873
|
+
status: 404
|
|
33874
|
+
});
|
|
33875
|
+
const o = order;
|
|
33876
|
+
const status = String(o.status || "").toLowerCase();
|
|
33877
|
+
if (status === "pending") {
|
|
33878
|
+
const meta = typeof o.metadata === "object" && o.metadata ? o.metadata : {};
|
|
33879
|
+
const updatedMeta = {
|
|
33880
|
+
...meta,
|
|
33881
|
+
cancelReason: "Cancelled by user during payment window"
|
|
33882
|
+
};
|
|
33883
|
+
await orderRepo().update(orderId, {
|
|
33884
|
+
status: "cancelled",
|
|
33885
|
+
metadata: updatedMeta
|
|
33886
|
+
});
|
|
33887
|
+
try {
|
|
33888
|
+
if (entityMap.payments) {
|
|
33889
|
+
const payRepo = dataSource.getRepository(entityMap.payments);
|
|
33890
|
+
const pendingPayment = await payRepo.findOne({
|
|
33891
|
+
where: {
|
|
33892
|
+
orderId,
|
|
33893
|
+
status: "pending"
|
|
33894
|
+
}
|
|
33895
|
+
});
|
|
33896
|
+
if (pendingPayment) {
|
|
33897
|
+
await payRepo.update(pendingPayment.id, {
|
|
33898
|
+
status: "unpaid"
|
|
33899
|
+
});
|
|
33900
|
+
}
|
|
33901
|
+
}
|
|
33902
|
+
} catch {
|
|
33903
|
+
}
|
|
33904
|
+
try {
|
|
33905
|
+
const { cart } = await getOrCreateCart(req);
|
|
33906
|
+
const cartId = cart?.id;
|
|
33907
|
+
if (cartId && Number.isFinite(cartId) && cartId > 0) {
|
|
33908
|
+
await cartItemRepo().delete({
|
|
33909
|
+
cartId
|
|
33910
|
+
});
|
|
33911
|
+
await cartRepo().update(cartId, {
|
|
33912
|
+
updatedAt: /* @__PURE__ */ new Date()
|
|
33913
|
+
});
|
|
33914
|
+
}
|
|
33915
|
+
} catch {
|
|
33916
|
+
}
|
|
33917
|
+
}
|
|
33918
|
+
return json({
|
|
33919
|
+
ok: true,
|
|
33920
|
+
orderId,
|
|
33921
|
+
status: "cancelled"
|
|
33922
|
+
});
|
|
33923
|
+
}
|
|
33795
33924
|
return json({
|
|
33796
33925
|
error: "Not found"
|
|
33797
33926
|
}, {
|
|
@@ -33831,6 +33960,7 @@ exports.assertCaptchaOk = assertCaptchaOk;
|
|
|
33831
33960
|
exports.assertContactAllowedForVendorOrder = assertContactAllowedForVendorOrder;
|
|
33832
33961
|
exports.assertEventApprovalUpdate = assertEventApprovalUpdate;
|
|
33833
33962
|
exports.assertProductApprovalUpdate = assertProductApprovalUpdate;
|
|
33963
|
+
exports.autoExpireOrderIfPaymentTimeExceeded = autoExpireOrderIfPaymentTimeExceeded;
|
|
33834
33964
|
exports.buildBlogMetadataUserPrompt = buildBlogMetadataUserPrompt;
|
|
33835
33965
|
exports.buildCronFromSchedule = buildCronFromSchedule;
|
|
33836
33966
|
exports.buildRssUserPromptFromFeeds = buildRssUserPromptFromFeeds;
|