@infuro/cms-core 1.0.43 → 1.0.44

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 CHANGED
@@ -492,7 +492,7 @@ var init_admin_config_context = __esm({
492
492
  var CMS_VERSION;
493
493
  var init_cms_version = __esm({
494
494
  "src/lib/cms-version.ts"() {
495
- CMS_VERSION = "1.0.43" ;
495
+ CMS_VERSION = "1.0.44" ;
496
496
  }
497
497
  });
498
498
  function useCatalogCategories(enabled = true) {
@@ -27083,7 +27083,7 @@ function variantsFromForm(rows, defaultCurrency) {
27083
27083
  };
27084
27084
  }).filter((row) => row != null);
27085
27085
  }
27086
- function ProductVariantsSection({ hasVariants, onHasVariantsChange, variantOptionRows, onVariantOptionRowsChange, variantRows, onVariantRowsChange, defaultCurrency, currencySymbol: currencySymbol3 }) {
27086
+ function ProductVariantsSection({ hasVariants, onHasVariantsChange, variantOptionRows, onVariantOptionRowsChange, variantRows, onVariantRowsChange, defaultCurrency, currencySymbol: currencySymbol3, lockVariantStatus = false }) {
27087
27087
  const parsedOptions = variantOptionsFromForm(variantOptionRows);
27088
27088
  const baseCurrency = defaultCurrency.trim().toUpperCase() || "INR";
27089
27089
  const setOptionName = /* @__PURE__ */ __name((index, value) => {
@@ -27318,9 +27318,11 @@ function ProductVariantsSection({ hasVariants, onHasVariantsChange, variantOptio
27318
27318
  })), /* @__PURE__ */ React.createElement("td", {
27319
27319
  className: "px-3 py-2 align-top"
27320
27320
  }, /* @__PURE__ */ React.createElement("select", {
27321
- value: row.status,
27321
+ value: lockVariantStatus ? "draft" : row.status,
27322
27322
  onChange: /* @__PURE__ */ __name((e) => setVariantField(i, "status", e.target.value), "onChange"),
27323
- className: inputCls2
27323
+ className: inputCls2,
27324
+ disabled: lockVariantStatus,
27325
+ title: lockVariantStatus ? "Variant status stays draft until the product is approved" : void 0
27324
27326
  }, /* @__PURE__ */ React.createElement("option", {
27325
27327
  value: "draft"
27326
27328
  }, "Draft"), /* @__PURE__ */ React.createElement("option", {
@@ -27329,7 +27331,9 @@ function ProductVariantsSection({ hasVariants, onHasVariantsChange, variantOptio
27329
27331
  value: "reserved"
27330
27332
  }, "Reserved"), /* @__PURE__ */ React.createElement("option", {
27331
27333
  value: "sold"
27332
- }, "Sold"))), /* @__PURE__ */ React.createElement("td", {
27334
+ }, "Sold")), lockVariantStatus ? /* @__PURE__ */ React.createElement("p", {
27335
+ className: "mt-1 text-[11px] text-gray-500"
27336
+ }, "Locked until product approval") : null), /* @__PURE__ */ React.createElement("td", {
27333
27337
  className: "px-3 py-2 align-top min-w-[240px]"
27334
27338
  }, (() => {
27335
27339
  const lines = row.imageUrlsText === "" ? [
@@ -27504,13 +27508,14 @@ function apiVariantsToDrafts(rows, _defaultCurrency) {
27504
27508
  };
27505
27509
  });
27506
27510
  }
27507
- async function syncProductVariants(productId, drafts) {
27511
+ async function syncProductVariants(productId, drafts, productStatus) {
27508
27512
  const listRes = await fetch(`/api/product_variants?productId=${productId}&limit=500`);
27509
27513
  const listData = listRes.ok ? await listRes.json() : {
27510
27514
  data: []
27511
27515
  };
27512
27516
  const existing = Array.isArray(listData.data) ? listData.data : [];
27513
27517
  const wantedIds = new Set(drafts.filter((d) => d.id != null).map((d) => d.id));
27518
+ const forceDraft = productStatus !== "available";
27514
27519
  for (const row of existing) {
27515
27520
  if (!wantedIds.has(row.id)) {
27516
27521
  const del = await fetch(`/api/product_variants/${row.id}`, {
@@ -27520,6 +27525,7 @@ async function syncProductVariants(productId, drafts) {
27520
27525
  }
27521
27526
  }
27522
27527
  for (const draft of drafts) {
27528
+ const nextStatus = forceDraft ? "draft" : draft.status === "reserved" || draft.status === "sold" ? draft.status : "available";
27523
27529
  const payload = {
27524
27530
  productId,
27525
27531
  sku: draft.sku,
@@ -27527,7 +27533,7 @@ async function syncProductVariants(productId, drafts) {
27527
27533
  compareAtPrice: draft.compareAtPrice,
27528
27534
  currencyPrices: null,
27529
27535
  inventory: draft.inventory,
27530
- status: draft.status,
27536
+ status: nextStatus,
27531
27537
  attributes: draft.attributes,
27532
27538
  imageUrls: draft.imageUrls.length ? draft.imageUrls : null
27533
27539
  };
@@ -28342,7 +28348,7 @@ function ProductEditPage({ productId }) {
28342
28348
  }
28343
28349
  }
28344
28350
  if (hasVariants) {
28345
- const variantErr = await syncProductVariants(Number(savedId), variantsFromForm(variantRows, pricingConfig.defaultCurrency));
28351
+ const variantErr = await syncProductVariants(Number(savedId), variantsFromForm(variantRows, pricingConfig.defaultCurrency), String(savedProduct.status ?? status));
28346
28352
  if (variantErr) {
28347
28353
  setErrors([
28348
28354
  variantErr
@@ -28356,7 +28362,7 @@ function ProductEditPage({ productId }) {
28356
28362
  setVariantRows(variantsToForm(apiVariantsToDrafts(reloadRows, pricingConfig.defaultCurrency), pricingConfig.defaultCurrency));
28357
28363
  }
28358
28364
  } else {
28359
- const variantErr = await syncProductVariants(Number(savedId), []);
28365
+ const variantErr = await syncProductVariants(Number(savedId), [], String(savedProduct.status ?? status));
28360
28366
  if (variantErr) {
28361
28367
  setErrors([
28362
28368
  variantErr
@@ -28768,7 +28774,8 @@ function ProductEditPage({ productId }) {
28768
28774
  variantRows,
28769
28775
  onVariantRowsChange: setVariantRows,
28770
28776
  defaultCurrency: pricingConfig.defaultCurrency,
28771
- currencySymbol: defaultCurrencySymbol
28777
+ currencySymbol: defaultCurrencySymbol,
28778
+ lockVariantStatus: vendorPortal && (status !== "available" || approvalOn && approvalStatus !== "approved")
28772
28779
  }), /* @__PURE__ */ React.createElement("section", null, /* @__PURE__ */ React.createElement("h2", {
28773
28780
  className: "text-xs font-semibold text-gray-400 uppercase tracking-wider mb-2"
28774
28781
  }, "Taxes & Policy"), /* @__PURE__ */ React.createElement("p", {
package/dist/admin.js CHANGED
@@ -457,7 +457,7 @@ var init_admin_config_context = __esm({
457
457
  var CMS_VERSION;
458
458
  var init_cms_version = __esm({
459
459
  "src/lib/cms-version.ts"() {
460
- CMS_VERSION = "1.0.43" ;
460
+ CMS_VERSION = "1.0.44" ;
461
461
  }
462
462
  });
463
463
  function useCatalogCategories(enabled = true) {
@@ -27048,7 +27048,7 @@ function variantsFromForm(rows, defaultCurrency) {
27048
27048
  };
27049
27049
  }).filter((row) => row != null);
27050
27050
  }
27051
- function ProductVariantsSection({ hasVariants, onHasVariantsChange, variantOptionRows, onVariantOptionRowsChange, variantRows, onVariantRowsChange, defaultCurrency, currencySymbol: currencySymbol3 }) {
27051
+ function ProductVariantsSection({ hasVariants, onHasVariantsChange, variantOptionRows, onVariantOptionRowsChange, variantRows, onVariantRowsChange, defaultCurrency, currencySymbol: currencySymbol3, lockVariantStatus = false }) {
27052
27052
  const parsedOptions = variantOptionsFromForm(variantOptionRows);
27053
27053
  const baseCurrency = defaultCurrency.trim().toUpperCase() || "INR";
27054
27054
  const setOptionName = /* @__PURE__ */ __name((index, value) => {
@@ -27283,9 +27283,11 @@ function ProductVariantsSection({ hasVariants, onHasVariantsChange, variantOptio
27283
27283
  })), /* @__PURE__ */ React.createElement("td", {
27284
27284
  className: "px-3 py-2 align-top"
27285
27285
  }, /* @__PURE__ */ React.createElement("select", {
27286
- value: row.status,
27286
+ value: lockVariantStatus ? "draft" : row.status,
27287
27287
  onChange: /* @__PURE__ */ __name((e) => setVariantField(i, "status", e.target.value), "onChange"),
27288
- className: inputCls2
27288
+ className: inputCls2,
27289
+ disabled: lockVariantStatus,
27290
+ title: lockVariantStatus ? "Variant status stays draft until the product is approved" : void 0
27289
27291
  }, /* @__PURE__ */ React.createElement("option", {
27290
27292
  value: "draft"
27291
27293
  }, "Draft"), /* @__PURE__ */ React.createElement("option", {
@@ -27294,7 +27296,9 @@ function ProductVariantsSection({ hasVariants, onHasVariantsChange, variantOptio
27294
27296
  value: "reserved"
27295
27297
  }, "Reserved"), /* @__PURE__ */ React.createElement("option", {
27296
27298
  value: "sold"
27297
- }, "Sold"))), /* @__PURE__ */ React.createElement("td", {
27299
+ }, "Sold")), lockVariantStatus ? /* @__PURE__ */ React.createElement("p", {
27300
+ className: "mt-1 text-[11px] text-gray-500"
27301
+ }, "Locked until product approval") : null), /* @__PURE__ */ React.createElement("td", {
27298
27302
  className: "px-3 py-2 align-top min-w-[240px]"
27299
27303
  }, (() => {
27300
27304
  const lines = row.imageUrlsText === "" ? [
@@ -27469,13 +27473,14 @@ function apiVariantsToDrafts(rows, _defaultCurrency) {
27469
27473
  };
27470
27474
  });
27471
27475
  }
27472
- async function syncProductVariants(productId, drafts) {
27476
+ async function syncProductVariants(productId, drafts, productStatus) {
27473
27477
  const listRes = await fetch(`/api/product_variants?productId=${productId}&limit=500`);
27474
27478
  const listData = listRes.ok ? await listRes.json() : {
27475
27479
  data: []
27476
27480
  };
27477
27481
  const existing = Array.isArray(listData.data) ? listData.data : [];
27478
27482
  const wantedIds = new Set(drafts.filter((d) => d.id != null).map((d) => d.id));
27483
+ const forceDraft = productStatus !== "available";
27479
27484
  for (const row of existing) {
27480
27485
  if (!wantedIds.has(row.id)) {
27481
27486
  const del = await fetch(`/api/product_variants/${row.id}`, {
@@ -27485,6 +27490,7 @@ async function syncProductVariants(productId, drafts) {
27485
27490
  }
27486
27491
  }
27487
27492
  for (const draft of drafts) {
27493
+ const nextStatus = forceDraft ? "draft" : draft.status === "reserved" || draft.status === "sold" ? draft.status : "available";
27488
27494
  const payload = {
27489
27495
  productId,
27490
27496
  sku: draft.sku,
@@ -27492,7 +27498,7 @@ async function syncProductVariants(productId, drafts) {
27492
27498
  compareAtPrice: draft.compareAtPrice,
27493
27499
  currencyPrices: null,
27494
27500
  inventory: draft.inventory,
27495
- status: draft.status,
27501
+ status: nextStatus,
27496
27502
  attributes: draft.attributes,
27497
27503
  imageUrls: draft.imageUrls.length ? draft.imageUrls : null
27498
27504
  };
@@ -28307,7 +28313,7 @@ function ProductEditPage({ productId }) {
28307
28313
  }
28308
28314
  }
28309
28315
  if (hasVariants) {
28310
- const variantErr = await syncProductVariants(Number(savedId), variantsFromForm(variantRows, pricingConfig.defaultCurrency));
28316
+ const variantErr = await syncProductVariants(Number(savedId), variantsFromForm(variantRows, pricingConfig.defaultCurrency), String(savedProduct.status ?? status));
28311
28317
  if (variantErr) {
28312
28318
  setErrors([
28313
28319
  variantErr
@@ -28321,7 +28327,7 @@ function ProductEditPage({ productId }) {
28321
28327
  setVariantRows(variantsToForm(apiVariantsToDrafts(reloadRows, pricingConfig.defaultCurrency), pricingConfig.defaultCurrency));
28322
28328
  }
28323
28329
  } else {
28324
- const variantErr = await syncProductVariants(Number(savedId), []);
28330
+ const variantErr = await syncProductVariants(Number(savedId), [], String(savedProduct.status ?? status));
28325
28331
  if (variantErr) {
28326
28332
  setErrors([
28327
28333
  variantErr
@@ -28733,7 +28739,8 @@ function ProductEditPage({ productId }) {
28733
28739
  variantRows,
28734
28740
  onVariantRowsChange: setVariantRows,
28735
28741
  defaultCurrency: pricingConfig.defaultCurrency,
28736
- currencySymbol: defaultCurrencySymbol
28742
+ currencySymbol: defaultCurrencySymbol,
28743
+ lockVariantStatus: vendorPortal && (status !== "available" || approvalOn && approvalStatus !== "approved")
28737
28744
  }), /* @__PURE__ */ React.createElement("section", null, /* @__PURE__ */ React.createElement("h2", {
28738
28745
  className: "text-xs font-semibold text-gray-400 uppercase tracking-wider mb-2"
28739
28746
  }, "Taxes & Policy"), /* @__PURE__ */ React.createElement("p", {
package/dist/api.cjs CHANGED
@@ -1,6 +1,6 @@
1
1
  'use strict';
2
2
 
3
- var chunkSCPKMZG5_cjs = require('./chunk-SCPKMZG5.cjs');
3
+ var chunkP2IWWBJV_cjs = require('./chunk-P2IWWBJV.cjs');
4
4
  require('./chunk-22FFHLTO.cjs');
5
5
  require('./chunk-UCKN4BBY.cjs');
6
6
  require('./chunk-7NMT3GBR.cjs');
@@ -20,127 +20,127 @@ require('./chunk-USNT2KNT.cjs');
20
20
 
21
21
  Object.defineProperty(exports, "createAnalyticsHandlers", {
22
22
  enumerable: true,
23
- get: function () { return chunkSCPKMZG5_cjs.createAnalyticsHandlers; }
23
+ get: function () { return chunkP2IWWBJV_cjs.createAnalyticsHandlers; }
24
24
  });
25
25
  Object.defineProperty(exports, "createBlogBySlugHandler", {
26
26
  enumerable: true,
27
- get: function () { return chunkSCPKMZG5_cjs.createBlogBySlugHandler; }
27
+ get: function () { return chunkP2IWWBJV_cjs.createBlogBySlugHandler; }
28
28
  });
29
29
  Object.defineProperty(exports, "createChangePasswordHandler", {
30
30
  enumerable: true,
31
- get: function () { return chunkSCPKMZG5_cjs.createChangePasswordHandler; }
31
+ get: function () { return chunkP2IWWBJV_cjs.createChangePasswordHandler; }
32
32
  });
33
33
  Object.defineProperty(exports, "createCmsApiHandler", {
34
34
  enumerable: true,
35
- get: function () { return chunkSCPKMZG5_cjs.createCmsApiHandler; }
35
+ get: function () { return chunkP2IWWBJV_cjs.createCmsApiHandler; }
36
36
  });
37
37
  Object.defineProperty(exports, "createCrudByIdHandler", {
38
38
  enumerable: true,
39
- get: function () { return chunkSCPKMZG5_cjs.createCrudByIdHandler; }
39
+ get: function () { return chunkP2IWWBJV_cjs.createCrudByIdHandler; }
40
40
  });
41
41
  Object.defineProperty(exports, "createCrudHandler", {
42
42
  enumerable: true,
43
- get: function () { return chunkSCPKMZG5_cjs.createCrudHandler; }
43
+ get: function () { return chunkP2IWWBJV_cjs.createCrudHandler; }
44
44
  });
45
45
  Object.defineProperty(exports, "createDashboardStatsHandler", {
46
46
  enumerable: true,
47
- get: function () { return chunkSCPKMZG5_cjs.createDashboardStatsHandler; }
47
+ get: function () { return chunkP2IWWBJV_cjs.createDashboardStatsHandler; }
48
48
  });
49
49
  Object.defineProperty(exports, "createEcommerceAnalyticsHandler", {
50
50
  enumerable: true,
51
- get: function () { return chunkSCPKMZG5_cjs.createEcommerceAnalyticsHandler; }
51
+ get: function () { return chunkP2IWWBJV_cjs.createEcommerceAnalyticsHandler; }
52
52
  });
53
53
  Object.defineProperty(exports, "createForgotPasswordHandler", {
54
54
  enumerable: true,
55
- get: function () { return chunkSCPKMZG5_cjs.createForgotPasswordHandler; }
55
+ get: function () { return chunkP2IWWBJV_cjs.createForgotPasswordHandler; }
56
56
  });
57
57
  Object.defineProperty(exports, "createFormBySlugHandler", {
58
58
  enumerable: true,
59
- get: function () { return chunkSCPKMZG5_cjs.createFormBySlugHandler; }
59
+ get: function () { return chunkP2IWWBJV_cjs.createFormBySlugHandler; }
60
60
  });
61
61
  Object.defineProperty(exports, "createInviteAcceptHandler", {
62
62
  enumerable: true,
63
- get: function () { return chunkSCPKMZG5_cjs.createInviteAcceptHandler; }
63
+ get: function () { return chunkP2IWWBJV_cjs.createInviteAcceptHandler; }
64
64
  });
65
65
  Object.defineProperty(exports, "createJobScheduleHandlers", {
66
66
  enumerable: true,
67
- get: function () { return chunkSCPKMZG5_cjs.createJobScheduleHandlers; }
67
+ get: function () { return chunkP2IWWBJV_cjs.createJobScheduleHandlers; }
68
68
  });
69
69
  Object.defineProperty(exports, "createLlmAgentKnowledgeHandlers", {
70
70
  enumerable: true,
71
- get: function () { return chunkSCPKMZG5_cjs.createLlmAgentKnowledgeHandlers; }
71
+ get: function () { return chunkP2IWWBJV_cjs.createLlmAgentKnowledgeHandlers; }
72
72
  });
73
73
  Object.defineProperty(exports, "createMediaZipExtractHandler", {
74
74
  enumerable: true,
75
- get: function () { return chunkSCPKMZG5_cjs.createMediaZipExtractHandler; }
75
+ get: function () { return chunkP2IWWBJV_cjs.createMediaZipExtractHandler; }
76
76
  });
77
77
  Object.defineProperty(exports, "createSetPasswordHandler", {
78
78
  enumerable: true,
79
- get: function () { return chunkSCPKMZG5_cjs.createSetPasswordHandler; }
79
+ get: function () { return chunkP2IWWBJV_cjs.createSetPasswordHandler; }
80
80
  });
81
81
  Object.defineProperty(exports, "createSettingsApiHandlers", {
82
82
  enumerable: true,
83
- get: function () { return chunkSCPKMZG5_cjs.createSettingsApiHandlers; }
83
+ get: function () { return chunkP2IWWBJV_cjs.createSettingsApiHandlers; }
84
84
  });
85
85
  Object.defineProperty(exports, "createStorefrontApiHandler", {
86
86
  enumerable: true,
87
- get: function () { return chunkSCPKMZG5_cjs.createStorefrontApiHandler; }
87
+ get: function () { return chunkP2IWWBJV_cjs.createStorefrontApiHandler; }
88
88
  });
89
89
  Object.defineProperty(exports, "createUploadHandler", {
90
90
  enumerable: true,
91
- get: function () { return chunkSCPKMZG5_cjs.createUploadHandler; }
91
+ get: function () { return chunkP2IWWBJV_cjs.createUploadHandler; }
92
92
  });
93
93
  Object.defineProperty(exports, "createUserAuthApiRouter", {
94
94
  enumerable: true,
95
- get: function () { return chunkSCPKMZG5_cjs.createUserAuthApiRouter; }
95
+ get: function () { return chunkP2IWWBJV_cjs.createUserAuthApiRouter; }
96
96
  });
97
97
  Object.defineProperty(exports, "createUserAvatarHandler", {
98
98
  enumerable: true,
99
- get: function () { return chunkSCPKMZG5_cjs.createUserAvatarHandler; }
99
+ get: function () { return chunkP2IWWBJV_cjs.createUserAvatarHandler; }
100
100
  });
101
101
  Object.defineProperty(exports, "createUserProfileHandler", {
102
102
  enumerable: true,
103
- get: function () { return chunkSCPKMZG5_cjs.createUserProfileHandler; }
103
+ get: function () { return chunkP2IWWBJV_cjs.createUserProfileHandler; }
104
104
  });
105
105
  Object.defineProperty(exports, "createUsersApiHandlers", {
106
106
  enumerable: true,
107
- get: function () { return chunkSCPKMZG5_cjs.createUsersApiHandlers; }
107
+ get: function () { return chunkP2IWWBJV_cjs.createUsersApiHandlers; }
108
108
  });
109
109
  Object.defineProperty(exports, "createVendorDashboardHandler", {
110
110
  enumerable: true,
111
- get: function () { return chunkSCPKMZG5_cjs.createVendorDashboardHandler; }
111
+ get: function () { return chunkP2IWWBJV_cjs.createVendorDashboardHandler; }
112
112
  });
113
113
  Object.defineProperty(exports, "createVendorOnboardHandlers", {
114
114
  enumerable: true,
115
- get: function () { return chunkSCPKMZG5_cjs.createVendorOnboardHandlers; }
115
+ get: function () { return chunkP2IWWBJV_cjs.createVendorOnboardHandlers; }
116
116
  });
117
117
  Object.defineProperty(exports, "getPublicSettingsGroup", {
118
118
  enumerable: true,
119
- get: function () { return chunkSCPKMZG5_cjs.getPublicSettingsGroup; }
119
+ get: function () { return chunkP2IWWBJV_cjs.getPublicSettingsGroup; }
120
120
  });
121
121
  Object.defineProperty(exports, "mergeGuardrailsIntoSystemPrompt", {
122
122
  enumerable: true,
123
- get: function () { return chunkSCPKMZG5_cjs.mergeGuardrailsIntoSystemPrompt; }
123
+ get: function () { return chunkP2IWWBJV_cjs.mergeGuardrailsIntoSystemPrompt; }
124
124
  });
125
125
  Object.defineProperty(exports, "parseLlmAgentValidationRules", {
126
126
  enumerable: true,
127
- get: function () { return chunkSCPKMZG5_cjs.parseLlmAgentValidationRules; }
127
+ get: function () { return chunkP2IWWBJV_cjs.parseLlmAgentValidationRules; }
128
128
  });
129
129
  Object.defineProperty(exports, "simpleDecrypt", {
130
130
  enumerable: true,
131
- get: function () { return chunkSCPKMZG5_cjs.simpleDecrypt; }
131
+ get: function () { return chunkP2IWWBJV_cjs.simpleDecrypt; }
132
132
  });
133
133
  Object.defineProperty(exports, "simpleEncrypt", {
134
134
  enumerable: true,
135
- get: function () { return chunkSCPKMZG5_cjs.simpleEncrypt; }
135
+ get: function () { return chunkP2IWWBJV_cjs.simpleEncrypt; }
136
136
  });
137
137
  Object.defineProperty(exports, "validateUserMessageAgainstAgentRules", {
138
138
  enumerable: true,
139
- get: function () { return chunkSCPKMZG5_cjs.validateUserMessageAgainstAgentRules; }
139
+ get: function () { return chunkP2IWWBJV_cjs.validateUserMessageAgainstAgentRules; }
140
140
  });
141
141
  Object.defineProperty(exports, "validateUserMessageAgainstStructuredRules", {
142
142
  enumerable: true,
143
- get: function () { return chunkSCPKMZG5_cjs.validateUserMessageAgainstStructuredRules; }
143
+ get: function () { return chunkP2IWWBJV_cjs.validateUserMessageAgainstStructuredRules; }
144
144
  });
145
145
  Object.defineProperty(exports, "createCmsAuthBundle", {
146
146
  enumerable: true,
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-IX7X4ILO.js';
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-SQGBHYJF.js';
2
2
  import './chunk-NNQBWDCI.js';
3
3
  import './chunk-HCIRL37O.js';
4
4
  import './chunk-JXF23MPG.js';