@porulle/core 0.1.0 → 0.6.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (166) hide show
  1. package/LICENSE +21 -0
  2. package/dist/auth/middleware.d.ts.map +1 -1
  3. package/dist/auth/middleware.js +17 -1
  4. package/dist/config/define-config.d.ts.map +1 -1
  5. package/dist/config/define-config.js +6 -0
  6. package/dist/config/types.d.ts +12 -0
  7. package/dist/config/types.d.ts.map +1 -1
  8. package/dist/hooks/checkout.d.ts +3 -3
  9. package/dist/hooks/checkout.js +4 -4
  10. package/dist/index.d.ts +9 -1
  11. package/dist/index.d.ts.map +1 -1
  12. package/dist/index.js +6 -1
  13. package/dist/interfaces/rest/audit-middleware.d.ts +46 -0
  14. package/dist/interfaces/rest/audit-middleware.d.ts.map +1 -0
  15. package/dist/interfaces/rest/audit-middleware.js +82 -0
  16. package/dist/interfaces/rest/parse-json.d.ts +39 -0
  17. package/dist/interfaces/rest/parse-json.d.ts.map +1 -0
  18. package/dist/interfaces/rest/parse-json.js +45 -0
  19. package/dist/interfaces/rest/routes/catalog.d.ts.map +1 -1
  20. package/dist/interfaces/rest/routes/catalog.js +17 -2
  21. package/dist/interfaces/rest/routes/customers.d.ts.map +1 -1
  22. package/dist/interfaces/rest/routes/customers.js +59 -4
  23. package/dist/interfaces/rest/routes/inventory.d.ts.map +1 -1
  24. package/dist/interfaces/rest/routes/inventory.js +4 -2
  25. package/dist/interfaces/rest/routes/media.d.ts.map +1 -1
  26. package/dist/interfaces/rest/routes/media.js +6 -0
  27. package/dist/interfaces/rest/routes/orders.d.ts.map +1 -1
  28. package/dist/interfaces/rest/routes/orders.js +23 -1
  29. package/dist/interfaces/rest/routes/promotions.d.ts.map +1 -1
  30. package/dist/interfaces/rest/routes/promotions.js +21 -1
  31. package/dist/interfaces/rest/schemas/carts.d.ts +175 -0
  32. package/dist/interfaces/rest/schemas/carts.d.ts.map +1 -1
  33. package/dist/interfaces/rest/schemas/catalog.d.ts +1410 -0
  34. package/dist/interfaces/rest/schemas/catalog.d.ts.map +1 -1
  35. package/dist/interfaces/rest/schemas/catalog.js +28 -1
  36. package/dist/interfaces/rest/schemas/checkout.d.ts +35 -0
  37. package/dist/interfaces/rest/schemas/checkout.d.ts.map +1 -1
  38. package/dist/interfaces/rest/schemas/customer-portal.d.ts +280 -0
  39. package/dist/interfaces/rest/schemas/customer-portal.d.ts.map +1 -1
  40. package/dist/interfaces/rest/schemas/customers.d.ts +863 -0
  41. package/dist/interfaces/rest/schemas/customers.d.ts.map +1 -1
  42. package/dist/interfaces/rest/schemas/customers.js +88 -0
  43. package/dist/interfaces/rest/schemas/inventory.d.ts +182 -1
  44. package/dist/interfaces/rest/schemas/inventory.d.ts.map +1 -1
  45. package/dist/interfaces/rest/schemas/media.d.ts +105 -0
  46. package/dist/interfaces/rest/schemas/media.d.ts.map +1 -1
  47. package/dist/interfaces/rest/schemas/orders.d.ts +136 -0
  48. package/dist/interfaces/rest/schemas/orders.d.ts.map +1 -1
  49. package/dist/interfaces/rest/schemas/orders.js +20 -0
  50. package/dist/interfaces/rest/schemas/pricing.d.ts +70 -0
  51. package/dist/interfaces/rest/schemas/pricing.d.ts.map +1 -1
  52. package/dist/interfaces/rest/schemas/promotions.d.ts +298 -0
  53. package/dist/interfaces/rest/schemas/promotions.d.ts.map +1 -1
  54. package/dist/interfaces/rest/schemas/promotions.js +25 -1
  55. package/dist/interfaces/rest/schemas/shared.d.ts +47 -0
  56. package/dist/interfaces/rest/schemas/shared.d.ts.map +1 -1
  57. package/dist/interfaces/rest/schemas/shared.js +8 -0
  58. package/dist/interfaces/rest/schemas/webhooks.d.ts +70 -0
  59. package/dist/interfaces/rest/schemas/webhooks.d.ts.map +1 -1
  60. package/dist/kernel/database/adapter.d.ts +6 -0
  61. package/dist/kernel/database/adapter.d.ts.map +1 -1
  62. package/dist/kernel/database/adapter.js +62 -1
  63. package/dist/kernel/database/migrate.d.ts +22 -2
  64. package/dist/kernel/database/migrate.d.ts.map +1 -1
  65. package/dist/kernel/database/migrate.js +42 -2
  66. package/dist/modules/analytics/hooks.d.ts +5 -5
  67. package/dist/modules/analytics/hooks.js +5 -5
  68. package/dist/modules/analytics/repository/index.d.ts.map +1 -1
  69. package/dist/modules/catalog/category-service.d.ts +6 -1
  70. package/dist/modules/catalog/category-service.d.ts.map +1 -1
  71. package/dist/modules/catalog/category-service.js +35 -5
  72. package/dist/modules/catalog/schema.d.ts +17 -0
  73. package/dist/modules/catalog/schema.d.ts.map +1 -1
  74. package/dist/modules/catalog/schema.js +2 -0
  75. package/dist/modules/catalog/service.d.ts +11 -2
  76. package/dist/modules/catalog/service.d.ts.map +1 -1
  77. package/dist/modules/catalog/service.js +8 -2
  78. package/dist/modules/customers/repository/index.d.ts +8 -1
  79. package/dist/modules/customers/repository/index.d.ts.map +1 -1
  80. package/dist/modules/customers/repository/index.js +42 -2
  81. package/dist/modules/customers/schema.d.ts +162 -0
  82. package/dist/modules/customers/schema.d.ts.map +1 -1
  83. package/dist/modules/customers/schema.js +18 -0
  84. package/dist/modules/customers/service.d.ts +32 -2
  85. package/dist/modules/customers/service.d.ts.map +1 -1
  86. package/dist/modules/customers/service.js +119 -3
  87. package/dist/modules/inventory/schemas.d.ts +7 -1
  88. package/dist/modules/inventory/schemas.d.ts.map +1 -1
  89. package/dist/modules/inventory/schemas.js +6 -1
  90. package/dist/modules/inventory/service.d.ts +18 -0
  91. package/dist/modules/inventory/service.d.ts.map +1 -1
  92. package/dist/modules/inventory/service.js +58 -21
  93. package/dist/modules/media/noop-adapter.d.ts +11 -0
  94. package/dist/modules/media/noop-adapter.d.ts.map +1 -0
  95. package/dist/modules/media/noop-adapter.js +31 -0
  96. package/dist/modules/orders/repository/index.d.ts +19 -0
  97. package/dist/modules/orders/repository/index.d.ts.map +1 -1
  98. package/dist/modules/orders/repository/index.js +42 -1
  99. package/dist/modules/orders/service.d.ts +31 -0
  100. package/dist/modules/orders/service.d.ts.map +1 -1
  101. package/dist/modules/orders/service.js +52 -2
  102. package/dist/modules/payments/repository/index.d.ts.map +1 -1
  103. package/dist/modules/promotions/schemas.d.ts +46 -0
  104. package/dist/modules/promotions/schemas.d.ts.map +1 -1
  105. package/dist/modules/promotions/schemas.js +19 -8
  106. package/dist/modules/promotions/service.d.ts +8 -2
  107. package/dist/modules/promotions/service.d.ts.map +1 -1
  108. package/dist/modules/promotions/service.js +74 -9
  109. package/dist/modules/search/repository/index.d.ts.map +1 -1
  110. package/dist/modules/shipping/repository/index.d.ts.map +1 -1
  111. package/dist/modules/tax/repository/index.d.ts.map +1 -1
  112. package/dist/runtime/client-ip.d.ts +31 -0
  113. package/dist/runtime/client-ip.d.ts.map +1 -0
  114. package/dist/runtime/client-ip.js +31 -0
  115. package/dist/runtime/server.d.ts +4 -0
  116. package/dist/runtime/server.d.ts.map +1 -1
  117. package/dist/runtime/server.js +35 -19
  118. package/dist/test-utils/create-plugin-test-app.d.ts.map +1 -1
  119. package/dist/test-utils/create-plugin-test-app.js +4 -1
  120. package/dist/test-utils/test-actors.d.ts +3 -2
  121. package/dist/test-utils/test-actors.d.ts.map +1 -1
  122. package/dist/test-utils/test-actors.js +3 -2
  123. package/package.json +15 -15
  124. package/src/auth/middleware.ts +18 -1
  125. package/src/config/define-config.ts +7 -0
  126. package/src/config/types.ts +12 -0
  127. package/src/hooks/checkout.ts +4 -4
  128. package/src/index.ts +18 -1
  129. package/src/interfaces/rest/audit-middleware.ts +110 -0
  130. package/src/interfaces/rest/parse-json.ts +81 -0
  131. package/src/interfaces/rest/routes/catalog.ts +21 -1
  132. package/src/interfaces/rest/routes/customers.ts +64 -3
  133. package/src/interfaces/rest/routes/inventory.ts +4 -2
  134. package/src/interfaces/rest/routes/media.ts +7 -0
  135. package/src/interfaces/rest/routes/orders.ts +21 -1
  136. package/src/interfaces/rest/routes/promotions.ts +22 -1
  137. package/src/interfaces/rest/schemas/catalog.ts +30 -1
  138. package/src/interfaces/rest/schemas/customers.ts +99 -0
  139. package/src/interfaces/rest/schemas/orders.ts +21 -0
  140. package/src/interfaces/rest/schemas/promotions.ts +32 -1
  141. package/src/interfaces/rest/schemas/shared.ts +9 -0
  142. package/src/kernel/database/adapter.ts +64 -1
  143. package/src/kernel/database/migrate.ts +50 -2
  144. package/src/modules/analytics/hooks.ts +5 -5
  145. package/src/modules/analytics/repository/index.ts +0 -1
  146. package/src/modules/catalog/category-service.ts +26 -5
  147. package/src/modules/catalog/schema.ts +2 -0
  148. package/src/modules/catalog/service.ts +25 -3
  149. package/src/modules/customers/repository/index.ts +55 -1
  150. package/src/modules/customers/schema.ts +19 -0
  151. package/src/modules/customers/service.ts +137 -2
  152. package/src/modules/inventory/schemas.ts +6 -1
  153. package/src/modules/inventory/service.ts +84 -29
  154. package/src/modules/media/noop-adapter.ts +36 -0
  155. package/src/modules/orders/repository/index.ts +63 -1
  156. package/src/modules/orders/service.ts +86 -3
  157. package/src/modules/payments/repository/index.ts +0 -1
  158. package/src/modules/promotions/schemas.ts +21 -4
  159. package/src/modules/promotions/service.ts +90 -18
  160. package/src/modules/search/repository/index.ts +0 -1
  161. package/src/modules/shipping/repository/index.ts +0 -1
  162. package/src/modules/tax/repository/index.ts +0 -1
  163. package/src/runtime/client-ip.ts +49 -0
  164. package/src/runtime/server.ts +39 -18
  165. package/src/test-utils/create-plugin-test-app.ts +3 -1
  166. package/src/test-utils/test-actors.ts +3 -2
@@ -43,6 +43,13 @@ export declare const deleteWebhookEndpointRoute: {
43
43
  error: z.ZodObject<{
44
44
  code: z.ZodString;
45
45
  message: z.ZodString;
46
+ details: z.ZodOptional<z.ZodObject<{
47
+ issues: z.ZodOptional<z.ZodArray<z.ZodObject<{
48
+ path: z.ZodString;
49
+ message: z.ZodString;
50
+ code: z.ZodString;
51
+ }, z.core.$strip>>>;
52
+ }, z.core.$strip>>;
46
53
  }, z.core.$strip>;
47
54
  }, z.core.$strip>;
48
55
  };
@@ -56,6 +63,13 @@ export declare const deleteWebhookEndpointRoute: {
56
63
  error: z.ZodObject<{
57
64
  code: z.ZodString;
58
65
  message: z.ZodString;
66
+ details: z.ZodOptional<z.ZodObject<{
67
+ issues: z.ZodOptional<z.ZodArray<z.ZodObject<{
68
+ path: z.ZodString;
69
+ message: z.ZodString;
70
+ code: z.ZodString;
71
+ }, z.core.$strip>>>;
72
+ }, z.core.$strip>>;
59
73
  }, z.core.$strip>;
60
74
  }, z.core.$strip>;
61
75
  };
@@ -69,6 +83,13 @@ export declare const deleteWebhookEndpointRoute: {
69
83
  error: z.ZodObject<{
70
84
  code: z.ZodString;
71
85
  message: z.ZodString;
86
+ details: z.ZodOptional<z.ZodObject<{
87
+ issues: z.ZodOptional<z.ZodArray<z.ZodObject<{
88
+ path: z.ZodString;
89
+ message: z.ZodString;
90
+ code: z.ZodString;
91
+ }, z.core.$strip>>>;
92
+ }, z.core.$strip>>;
72
93
  }, z.core.$strip>;
73
94
  }, z.core.$strip>;
74
95
  };
@@ -82,6 +103,13 @@ export declare const deleteWebhookEndpointRoute: {
82
103
  error: z.ZodObject<{
83
104
  code: z.ZodString;
84
105
  message: z.ZodString;
106
+ details: z.ZodOptional<z.ZodObject<{
107
+ issues: z.ZodOptional<z.ZodArray<z.ZodObject<{
108
+ path: z.ZodString;
109
+ message: z.ZodString;
110
+ code: z.ZodString;
111
+ }, z.core.$strip>>>;
112
+ }, z.core.$strip>>;
85
113
  }, z.core.$strip>;
86
114
  }, z.core.$strip>;
87
115
  };
@@ -95,6 +123,13 @@ export declare const deleteWebhookEndpointRoute: {
95
123
  error: z.ZodObject<{
96
124
  code: z.ZodString;
97
125
  message: z.ZodString;
126
+ details: z.ZodOptional<z.ZodObject<{
127
+ issues: z.ZodOptional<z.ZodArray<z.ZodObject<{
128
+ path: z.ZodString;
129
+ message: z.ZodString;
130
+ code: z.ZodString;
131
+ }, z.core.$strip>>>;
132
+ }, z.core.$strip>>;
98
133
  }, z.core.$strip>;
99
134
  }, z.core.$strip>;
100
135
  };
@@ -146,6 +181,13 @@ export declare const createWebhookEndpointRoute: {
146
181
  error: z.ZodObject<{
147
182
  code: z.ZodString;
148
183
  message: z.ZodString;
184
+ details: z.ZodOptional<z.ZodObject<{
185
+ issues: z.ZodOptional<z.ZodArray<z.ZodObject<{
186
+ path: z.ZodString;
187
+ message: z.ZodString;
188
+ code: z.ZodString;
189
+ }, z.core.$strip>>>;
190
+ }, z.core.$strip>>;
149
191
  }, z.core.$strip>;
150
192
  }, z.core.$strip>;
151
193
  };
@@ -159,6 +201,13 @@ export declare const createWebhookEndpointRoute: {
159
201
  error: z.ZodObject<{
160
202
  code: z.ZodString;
161
203
  message: z.ZodString;
204
+ details: z.ZodOptional<z.ZodObject<{
205
+ issues: z.ZodOptional<z.ZodArray<z.ZodObject<{
206
+ path: z.ZodString;
207
+ message: z.ZodString;
208
+ code: z.ZodString;
209
+ }, z.core.$strip>>>;
210
+ }, z.core.$strip>>;
162
211
  }, z.core.$strip>;
163
212
  }, z.core.$strip>;
164
213
  };
@@ -172,6 +221,13 @@ export declare const createWebhookEndpointRoute: {
172
221
  error: z.ZodObject<{
173
222
  code: z.ZodString;
174
223
  message: z.ZodString;
224
+ details: z.ZodOptional<z.ZodObject<{
225
+ issues: z.ZodOptional<z.ZodArray<z.ZodObject<{
226
+ path: z.ZodString;
227
+ message: z.ZodString;
228
+ code: z.ZodString;
229
+ }, z.core.$strip>>>;
230
+ }, z.core.$strip>>;
175
231
  }, z.core.$strip>;
176
232
  }, z.core.$strip>;
177
233
  };
@@ -185,6 +241,13 @@ export declare const createWebhookEndpointRoute: {
185
241
  error: z.ZodObject<{
186
242
  code: z.ZodString;
187
243
  message: z.ZodString;
244
+ details: z.ZodOptional<z.ZodObject<{
245
+ issues: z.ZodOptional<z.ZodArray<z.ZodObject<{
246
+ path: z.ZodString;
247
+ message: z.ZodString;
248
+ code: z.ZodString;
249
+ }, z.core.$strip>>>;
250
+ }, z.core.$strip>>;
188
251
  }, z.core.$strip>;
189
252
  }, z.core.$strip>;
190
253
  };
@@ -198,6 +261,13 @@ export declare const createWebhookEndpointRoute: {
198
261
  error: z.ZodObject<{
199
262
  code: z.ZodString;
200
263
  message: z.ZodString;
264
+ details: z.ZodOptional<z.ZodObject<{
265
+ issues: z.ZodOptional<z.ZodArray<z.ZodObject<{
266
+ path: z.ZodString;
267
+ message: z.ZodString;
268
+ code: z.ZodString;
269
+ }, z.core.$strip>>>;
270
+ }, z.core.$strip>>;
201
271
  }, z.core.$strip>;
202
272
  }, z.core.$strip>;
203
273
  };
@@ -1 +1 @@
1
- {"version":3,"file":"webhooks.d.ts","sourceRoot":"","sources":["../../../../src/interfaces/rest/schemas/webhooks.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAe,MAAM,mBAAmB,CAAC;AAKnD,eAAO,MAAM,+BAA+B;;;;;iBAKF,CAAC;AAI3C,eAAO,MAAM,yBAAyB;;;;;;;;;;;;;;;;;;;CAWpC,CAAC;AAEH,eAAO,MAAM,0BAA0B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAiBrC,CAAC;AAEH,eAAO,MAAM,0BAA0B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAqBrC,CAAC"}
1
+ {"version":3,"file":"webhooks.d.ts","sourceRoot":"","sources":["../../../../src/interfaces/rest/schemas/webhooks.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAe,MAAM,mBAAmB,CAAC;AAKnD,eAAO,MAAM,+BAA+B;;;;;iBAKF,CAAC;AAI3C,eAAO,MAAM,yBAAyB;;;;;;;;;;;;;;;;;;;CAWpC,CAAC;AAEH,eAAO,MAAM,0BAA0B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAiBrC,CAAC;AAEH,eAAO,MAAM,0BAA0B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAqBrC,CAAC"}
@@ -14,5 +14,11 @@ export interface DatabaseAdapter<TDatabase = unknown, TTransaction = unknown> {
14
14
  export interface DatabaseConnectionFactoryInput {
15
15
  adapter: DatabaseAdapter;
16
16
  }
17
+ /**
18
+ * Return the raw driver behind a db normalized by {@link normalizeExecuteShape}.
19
+ * If `db` isn't wrapped, it is returned unchanged. Use before handing a db to
20
+ * drizzle-kit (`pushSchema`/introspection), which needs the native result shape.
21
+ */
22
+ export declare function unwrapDb<T>(db: T): T;
17
23
  export declare function createDatabaseConnection(input: DatabaseConnectionFactoryInput): DatabaseAdapter;
18
24
  //# sourceMappingURL=adapter.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"adapter.d.ts","sourceRoot":"","sources":["../../../src/kernel/database/adapter.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AACH,MAAM,WAAW,eAAe,CAAC,SAAS,GAAG,OAAO,EAAE,YAAY,GAAG,OAAO;IAC1E,QAAQ,EAAE,MAAM,CAAC;IACjB,EAAE,EAAE,SAAS,CAAC;IACd,WAAW,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,EAAE,YAAY,KAAK,OAAO,CAAC,CAAC,CAAC,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC;CAClE;AAED,MAAM,WAAW,8BAA8B;IAC7C,OAAO,EAAE,eAAe,CAAC;CAC1B;AAED,wBAAgB,wBAAwB,CAAC,KAAK,EAAE,8BAA8B,GAAG,eAAe,CAE/F"}
1
+ {"version":3,"file":"adapter.d.ts","sourceRoot":"","sources":["../../../src/kernel/database/adapter.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AACH,MAAM,WAAW,eAAe,CAAC,SAAS,GAAG,OAAO,EAAE,YAAY,GAAG,OAAO;IAC1E,QAAQ,EAAE,MAAM,CAAC;IACjB,EAAE,EAAE,SAAS,CAAC;IACd,WAAW,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,EAAE,YAAY,KAAK,OAAO,CAAC,CAAC,CAAC,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC;CAClE;AAED,MAAM,WAAW,8BAA8B;IAC7C,OAAO,EAAE,eAAe,CAAC;CAC1B;AASD;;;;GAIG;AACH,wBAAgB,QAAQ,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,GAAG,CAAC,CAMpC;AAsCD,wBAAgB,wBAAwB,CAAC,KAAK,EAAE,8BAA8B,GAAG,eAAe,CAS/F"}
@@ -1,3 +1,64 @@
1
+ /**
2
+ * Marker used to retrieve the raw, un-normalized driver from a wrapped db.
3
+ * Tools that drive the driver directly (drizzle-kit's `pushSchema`, which
4
+ * relies on the native `db.execute()` shape) must unwrap first via {@link unwrapDb}.
5
+ */
6
+ const RAW_DB = Symbol.for("porulle.rawDb");
7
+ /**
8
+ * Return the raw driver behind a db normalized by {@link normalizeExecuteShape}.
9
+ * If `db` isn't wrapped, it is returned unchanged. Use before handing a db to
10
+ * drizzle-kit (`pushSchema`/introspection), which needs the native result shape.
11
+ */
12
+ export function unwrapDb(db) {
13
+ if (db != null && typeof db === "object") {
14
+ const raw = db[RAW_DB];
15
+ if (raw)
16
+ return raw;
17
+ }
18
+ return db;
19
+ }
20
+ /**
21
+ * Normalize `db.execute()` so it returns a row array regardless of the
22
+ * underlying driver. postgres-js returns the rows directly, while neon-http
23
+ * and node-postgres (and PGlite) return `{ rows, command, rowCount }`.
24
+ * Without this, raw-SQL code that destructures the result as an array breaks
25
+ * on the `{ rows }` drivers. We intercept only `execute`; every other method
26
+ * is bound to the real driver instance so its internals are untouched.
27
+ */
28
+ function normalizeExecuteShape(db) {
29
+ return new Proxy(db, {
30
+ get(target, prop, receiver) {
31
+ if (prop === RAW_DB)
32
+ return target;
33
+ if (prop === "execute") {
34
+ const orig = Reflect.get(target, prop, receiver);
35
+ if (typeof orig !== "function")
36
+ return orig;
37
+ return async (...args) => {
38
+ const result = await orig.apply(target, args);
39
+ if (result != null &&
40
+ typeof result === "object" &&
41
+ !Array.isArray(result) &&
42
+ Array.isArray(result.rows)) {
43
+ return result.rows;
44
+ }
45
+ return result;
46
+ };
47
+ }
48
+ const value = Reflect.get(target, prop, target);
49
+ // Bind methods to the real instance so drizzle's internals (incl. any
50
+ // private fields) are never accessed through the proxy.
51
+ return typeof value === "function" ? value.bind(target) : value;
52
+ },
53
+ });
54
+ }
1
55
  export function createDatabaseConnection(input) {
2
- return input.adapter;
56
+ const adapter = input.adapter;
57
+ return {
58
+ provider: adapter.provider,
59
+ db: normalizeExecuteShape(adapter.db),
60
+ transaction(fn) {
61
+ return adapter.transaction((tx) => fn(normalizeExecuteShape(tx)));
62
+ },
63
+ };
3
64
  }
@@ -10,12 +10,12 @@
10
10
  *
11
11
  * Usage in consumer's drizzle.config.ts:
12
12
  *
13
- * import { getSchema } from "@porulle/core";
13
+ * import { getSchemaFiles } from "@porulle/core";
14
14
  * import { defineConfig } from "drizzle-kit";
15
15
  *
16
16
  * export default defineConfig({
17
17
  * dialect: "postgresql",
18
- * schema: getSchema(),
18
+ * schema: getSchemaFiles(),
19
19
  * dbCredentials: { url: process.env.DATABASE_URL! },
20
20
  * });
21
21
  */
@@ -35,4 +35,24 @@ export declare function buildSchema(config?: CommerceConfig): Record<string, unk
35
35
  * Returns a list of all schema table names defined by the commerce engine.
36
36
  */
37
37
  export declare function getTableNames(): string[];
38
+ /**
39
+ * Returns the absolute filesystem path(s) of the combined schema module for
40
+ * use as drizzle-kit's `schema` option in a consumer's `drizzle.config.ts`.
41
+ *
42
+ * npm consumers don't have the raw `.ts` sources, so a relative path into
43
+ * `node_modules` is brittle. This resolves the installed schema module
44
+ * (compiled `schema.js` for published consumers, `schema.ts` under Bun) so
45
+ * `drizzle-kit push` / `generate` discover every core table.
46
+ */
47
+ export declare function getSchemaFiles(): string[];
48
+ /**
49
+ * Programmatically creates the core tables in the target database
50
+ * (creates tables if they don't exist), without migration files.
51
+ *
52
+ * Uses `drizzle-kit/api` — drizzle-kit introspects the live database and
53
+ * generates the minimal DDL to converge it on the core schema. Pass a
54
+ * Drizzle instance bound to your database. `drizzle-kit` must be available
55
+ * (it is the standard schema tool); a clear error is thrown if it is not.
56
+ */
57
+ export declare function pushSchema(drizzleInstance: unknown): Promise<void>;
38
58
  //# sourceMappingURL=migrate.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"migrate.d.ts","sourceRoot":"","sources":["../../../src/kernel/database/migrate.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;GAoBG;AAEH,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAC;AAC5D,OAAO,KAAK,MAAM,MAAM,aAAa,CAAC;AAEtC;;;GAGG;AACH,wBAAgB,SAAS,kBAExB;AAED;;;GAGG;AACH,wBAAgB,WAAW,CAAC,MAAM,CAAC,EAAE,cAAc,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAwB5E;AAED;;GAEG;AACH,wBAAgB,aAAa,IAAI,MAAM,EAAE,CASxC"}
1
+ {"version":3,"file":"migrate.d.ts","sourceRoot":"","sources":["../../../src/kernel/database/migrate.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;GAoBG;AAIH,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAC;AAE5D,OAAO,KAAK,MAAM,MAAM,aAAa,CAAC;AAEtC;;;GAGG;AACH,wBAAgB,SAAS,kBAExB;AAED;;;GAGG;AACH,wBAAgB,WAAW,CAAC,MAAM,CAAC,EAAE,cAAc,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAwB5E;AAED;;GAEG;AACH,wBAAgB,aAAa,IAAI,MAAM,EAAE,CASxC;AAED;;;;;;;;GAQG;AACH,wBAAgB,cAAc,IAAI,MAAM,EAAE,CAKzC;AAED;;;;;;;;GAQG;AACH,wBAAsB,UAAU,CAAC,eAAe,EAAE,OAAO,GAAG,OAAO,CAAC,IAAI,CAAC,CAkBxE"}
@@ -10,15 +10,18 @@
10
10
  *
11
11
  * Usage in consumer's drizzle.config.ts:
12
12
  *
13
- * import { getSchema } from "@porulle/core";
13
+ * import { getSchemaFiles } from "@porulle/core";
14
14
  * import { defineConfig } from "drizzle-kit";
15
15
  *
16
16
  * export default defineConfig({
17
17
  * dialect: "postgresql",
18
- * schema: getSchema(),
18
+ * schema: getSchemaFiles(),
19
19
  * dbCredentials: { url: process.env.DATABASE_URL! },
20
20
  * });
21
21
  */
22
+ import { createRequire } from "node:module";
23
+ import { fileURLToPath } from "node:url";
24
+ import { unwrapDb } from "./adapter.js";
22
25
  import * as schema from "./schema.js";
23
26
  /**
24
27
  * Returns the combined Drizzle schema object with all table definitions.
@@ -59,3 +62,40 @@ export function getTableNames() {
59
62
  "getSQL" in value)
60
63
  .map(([key]) => key);
61
64
  }
65
+ /**
66
+ * Returns the absolute filesystem path(s) of the combined schema module for
67
+ * use as drizzle-kit's `schema` option in a consumer's `drizzle.config.ts`.
68
+ *
69
+ * npm consumers don't have the raw `.ts` sources, so a relative path into
70
+ * `node_modules` is brittle. This resolves the installed schema module
71
+ * (compiled `schema.js` for published consumers, `schema.ts` under Bun) so
72
+ * `drizzle-kit push` / `generate` discover every core table.
73
+ */
74
+ export function getSchemaFiles() {
75
+ // Resolve the sibling schema module that actually exists: `.ts` when running
76
+ // from source (Bun export condition), `.js` for published/compiled consumers.
77
+ const ext = fileURLToPath(import.meta.url).endsWith(".ts") ? ".ts" : ".js";
78
+ return [fileURLToPath(new URL(`./schema${ext}`, import.meta.url))];
79
+ }
80
+ /**
81
+ * Programmatically creates the core tables in the target database
82
+ * (creates tables if they don't exist), without migration files.
83
+ *
84
+ * Uses `drizzle-kit/api` — drizzle-kit introspects the live database and
85
+ * generates the minimal DDL to converge it on the core schema. Pass a
86
+ * Drizzle instance bound to your database. `drizzle-kit` must be available
87
+ * (it is the standard schema tool); a clear error is thrown if it is not.
88
+ */
89
+ export async function pushSchema(drizzleInstance) {
90
+ const require = createRequire(import.meta.url);
91
+ let drizzleKit;
92
+ try {
93
+ drizzleKit = require("drizzle-kit/api");
94
+ }
95
+ catch {
96
+ throw new Error("pushSchema() requires `drizzle-kit` to be installed. Add it to your project: bun add -d drizzle-kit");
97
+ }
98
+ // drizzle-kit needs the native driver result shape; unwrap a normalized db.
99
+ const { apply } = await drizzleKit.pushSchema(getSchema(), unwrapDb(drizzleInstance));
100
+ await apply();
101
+ }
@@ -1,13 +1,13 @@
1
1
  export {};
2
2
  /**
3
- * Analytics hooks — RFC-006
3
+ * Analytics hooks — legacy compatibility surface.
4
4
  *
5
5
  * The in-memory event recording hooks (recordOrderAnalyticsEvent,
6
6
  * recordInventoryAnalyticsEvent) have been removed. The source tables
7
- * (orders, inventory_levels, customers) ARE the source of truth.
8
- * The DrizzleAnalyticsAdapter queries them directly via SQL.
7
+ * (orders, inventory_levels, customers) ARE the source of truth; the
8
+ * DrizzleAnalyticsAdapter queries them directly via SQL.
9
9
  *
10
- * These empty exports preserve backwards compatibility for any code
11
- * that imports from this module.
10
+ * The empty exports below preserve backwards compatibility for code
11
+ * still importing from this module.
12
12
  */
13
13
  //# sourceMappingURL=hooks.d.ts.map
@@ -1,12 +1,12 @@
1
1
  export {};
2
2
  /**
3
- * Analytics hooks — RFC-006
3
+ * Analytics hooks — legacy compatibility surface.
4
4
  *
5
5
  * The in-memory event recording hooks (recordOrderAnalyticsEvent,
6
6
  * recordInventoryAnalyticsEvent) have been removed. The source tables
7
- * (orders, inventory_levels, customers) ARE the source of truth.
8
- * The DrizzleAnalyticsAdapter queries them directly via SQL.
7
+ * (orders, inventory_levels, customers) ARE the source of truth; the
8
+ * DrizzleAnalyticsAdapter queries them directly via SQL.
9
9
  *
10
- * These empty exports preserve backwards compatibility for any code
11
- * that imports from this module.
10
+ * The empty exports below preserve backwards compatibility for code
11
+ * still importing from this module.
12
12
  */
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/modules/analytics/repository/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,wCAAwC,CAAC;AAExE,MAAM,WAAW,mBAAmB;IAElC,IAAI,CAAC,GAAG,EAAE,SAAS,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;CACrC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/modules/analytics/repository/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,wCAAwC,CAAC;AAExE,MAAM,WAAW,mBAAmB;IAClC,IAAI,CAAC,GAAG,EAAE,SAAS,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;CACrC"}
@@ -7,7 +7,12 @@ export declare class CategoryService {
7
7
  constructor(deps: CatalogServiceDeps);
8
8
  private get repo();
9
9
  private assertSameOrg;
10
- listCategories(ctx?: TxContext): Promise<Result<CategorySummary[]>>;
10
+ listCategories(ctx?: TxContext, opts?: {
11
+ includeArchived?: boolean;
12
+ }): Promise<Result<CategorySummary[]>>;
13
+ private setStatus;
14
+ archiveCategory(id: string, actor: Actor | null, ctx?: TxContext): Promise<Result<CategorySummary>>;
15
+ restoreCategory(id: string, actor: Actor | null, ctx?: TxContext): Promise<Result<CategorySummary>>;
11
16
  createCategory(input: CreateCategoryInput, actor: Actor | null, ctx?: TxContext): Promise<Result<CategorySummary>>;
12
17
  updateCategory(id: string, input: UpdateCategoryInput, actor: Actor | null, ctx?: TxContext): Promise<Result<CategorySummary>>;
13
18
  deleteCategory(id: string, actor: Actor | null, ctx?: TxContext): Promise<Result<void>>;
@@ -1 +1 @@
1
- {"version":3,"file":"category-service.d.ts","sourceRoot":"","sources":["../../../src/modules/catalog/category-service.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,qBAAqB,CAAC;AAMjD,OAAO,EAAW,KAAK,MAAM,EAAE,MAAM,wBAAwB,CAAC;AAC9D,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,qCAAqC,CAAC;AACrE,OAAO,KAAK,EACV,kBAAkB,EAClB,eAAe,EACf,mBAAmB,EACnB,mBAAmB,EACpB,MAAM,cAAc,CAAC;AACtB,qBAAa,eAAe;IACd,OAAO,CAAC,QAAQ,CAAC,IAAI;gBAAJ,IAAI,EAAE,kBAAkB;IAErD,OAAO,KAAK,IAAI,GAEf;IAED,OAAO,CAAC,aAAa;IAQf,cAAc,CAAC,GAAG,CAAC,EAAE,SAAS,GAAG,OAAO,CAAC,MAAM,CAAC,eAAe,EAAE,CAAC,CAAC;IAMnE,cAAc,CAAC,KAAK,EAAE,mBAAmB,EAAE,KAAK,EAAE,KAAK,GAAG,IAAI,EAAE,GAAG,CAAC,EAAE,SAAS,GAAG,OAAO,CAAC,MAAM,CAAC,eAAe,CAAC,CAAC;IAalH,cAAc,CAAC,EAAE,EAAE,MAAM,EAAE,KAAK,EAAE,mBAAmB,EAAE,KAAK,EAAE,KAAK,GAAG,IAAI,EAAE,GAAG,CAAC,EAAE,SAAS,GAAG,OAAO,CAAC,MAAM,CAAC,eAAe,CAAC,CAAC;IAc9H,cAAc,CAAC,EAAE,EAAE,MAAM,EAAE,KAAK,EAAE,KAAK,GAAG,IAAI,EAAE,GAAG,CAAC,EAAE,SAAS,GAAG,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;IAUvF,aAAa,CAAC,QAAQ,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,EAAE,KAAK,EAAE,KAAK,GAAG,IAAI,EAAE,GAAG,CAAC,EAAE,SAAS,GAAG,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;IAgBhH,kBAAkB,CAAC,QAAQ,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,EAAE,KAAK,EAAE,KAAK,GAAG,IAAI,EAAE,GAAG,CAAC,EAAE,SAAS,GAAG,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;CAY5H"}
1
+ {"version":3,"file":"category-service.d.ts","sourceRoot":"","sources":["../../../src/modules/catalog/category-service.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,qBAAqB,CAAC;AAMjD,OAAO,EAAW,KAAK,MAAM,EAAE,MAAM,wBAAwB,CAAC;AAC9D,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,qCAAqC,CAAC;AACrE,OAAO,KAAK,EACV,kBAAkB,EAClB,eAAe,EACf,mBAAmB,EACnB,mBAAmB,EACpB,MAAM,cAAc,CAAC;AACtB,qBAAa,eAAe;IACd,OAAO,CAAC,QAAQ,CAAC,IAAI;gBAAJ,IAAI,EAAE,kBAAkB;IAErD,OAAO,KAAK,IAAI,GAEf;IAED,OAAO,CAAC,aAAa;IAQf,cAAc,CAAC,GAAG,CAAC,EAAE,SAAS,EAAE,IAAI,CAAC,EAAE;QAAE,eAAe,CAAC,EAAE,OAAO,CAAA;KAAE,GAAG,OAAO,CAAC,MAAM,CAAC,eAAe,EAAE,CAAC,CAAC;YASjG,SAAS;IAUjB,eAAe,CAAC,EAAE,EAAE,MAAM,EAAE,KAAK,EAAE,KAAK,GAAG,IAAI,EAAE,GAAG,CAAC,EAAE,SAAS,GAAG,OAAO,CAAC,MAAM,CAAC,eAAe,CAAC,CAAC;IAInG,eAAe,CAAC,EAAE,EAAE,MAAM,EAAE,KAAK,EAAE,KAAK,GAAG,IAAI,EAAE,GAAG,CAAC,EAAE,SAAS,GAAG,OAAO,CAAC,MAAM,CAAC,eAAe,CAAC,CAAC;IAInG,cAAc,CAAC,KAAK,EAAE,mBAAmB,EAAE,KAAK,EAAE,KAAK,GAAG,IAAI,EAAE,GAAG,CAAC,EAAE,SAAS,GAAG,OAAO,CAAC,MAAM,CAAC,eAAe,CAAC,CAAC;IAalH,cAAc,CAAC,EAAE,EAAE,MAAM,EAAE,KAAK,EAAE,mBAAmB,EAAE,KAAK,EAAE,KAAK,GAAG,IAAI,EAAE,GAAG,CAAC,EAAE,SAAS,GAAG,OAAO,CAAC,MAAM,CAAC,eAAe,CAAC,CAAC;IAc9H,cAAc,CAAC,EAAE,EAAE,MAAM,EAAE,KAAK,EAAE,KAAK,GAAG,IAAI,EAAE,GAAG,CAAC,EAAE,SAAS,GAAG,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;IAUvF,aAAa,CAAC,QAAQ,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,EAAE,KAAK,EAAE,KAAK,GAAG,IAAI,EAAE,GAAG,CAAC,EAAE,SAAS,GAAG,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;IAgBhH,kBAAkB,CAAC,QAAQ,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,EAAE,KAAK,EAAE,KAAK,GAAG,IAAI,EAAE,GAAG,CAAC,EAAE,SAAS,GAAG,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;CAY5H"}
@@ -18,10 +18,40 @@ export class CategoryService {
18
18
  throw new CommerceNotFoundError("Entity not found.");
19
19
  }
20
20
  }
21
- async listCategories(ctx) {
21
+ async listCategories(ctx, opts) {
22
22
  const allCategories = await this.repo.findAllCategories(resolveOrgId(ctx?.actor ?? null), ctx);
23
- const sorted = allCategories.sort((a, b) => a.sortOrder - b.sortOrder || a.slug.localeCompare(b.slug));
24
- return Ok(sorted.map((c) => ({ id: c.id, parentId: c.parentId, slug: c.slug, sortOrder: c.sortOrder, metadata: c.metadata ?? {} })));
23
+ const visible = opts?.includeArchived
24
+ ? allCategories
25
+ : allCategories.filter((c) => (c.status ?? "active") === "active");
26
+ const sorted = visible.sort((a, b) => a.sortOrder - b.sortOrder || a.slug.localeCompare(b.slug));
27
+ return Ok(sorted.map((c) => ({ id: c.id, parentId: c.parentId, slug: c.slug, sortOrder: c.sortOrder, status: c.status ?? "active", metadata: c.metadata ?? {} })));
28
+ }
29
+ async setStatus(id, status, actor, ctx) {
30
+ try {
31
+ assertPermission(actor, "catalog:update");
32
+ }
33
+ catch (error) {
34
+ return Err(toCommerceError(error));
35
+ }
36
+ const existing = await this.repo.findCategoryById(id, ctx);
37
+ if (!existing)
38
+ return Err(new CommerceNotFoundError("Category not found."));
39
+ try {
40
+ this.assertSameOrg(existing, actor);
41
+ }
42
+ catch (error) {
43
+ return Err(toCommerceError(error));
44
+ }
45
+ const updated = await this.repo.updateCategory(id, { status }, ctx);
46
+ if (!updated)
47
+ return Err(new CommerceNotFoundError("Category not found."));
48
+ return Ok({ id: updated.id, parentId: updated.parentId, slug: updated.slug, sortOrder: updated.sortOrder, status: updated.status ?? status, metadata: updated.metadata ?? {} });
49
+ }
50
+ async archiveCategory(id, actor, ctx) {
51
+ return this.setStatus(id, "archived", actor, ctx);
52
+ }
53
+ async restoreCategory(id, actor, ctx) {
54
+ return this.setStatus(id, "active", actor, ctx);
25
55
  }
26
56
  async createCategory(input, actor, ctx) {
27
57
  assertPermission(actor, "catalog:update");
@@ -35,7 +65,7 @@ export class CategoryService {
35
65
  if (existingBySlug)
36
66
  return Err(new CommerceConflictError(`Category with slug ${input.slug} already exists.`));
37
67
  const category = await this.repo.createCategory({ organizationId: orgId, ...(input.id ? { id: input.id } : {}), slug: input.slug, sortOrder: input.sortOrder ?? 0, metadata: input.metadata ?? {}, ...(input.parentId !== undefined ? { parentId: input.parentId } : {}) }, ctx);
38
- return Ok({ id: category.id, parentId: category.parentId, slug: category.slug, sortOrder: category.sortOrder, metadata: category.metadata ?? {} });
68
+ return Ok({ id: category.id, parentId: category.parentId, slug: category.slug, sortOrder: category.sortOrder, status: category.status ?? "active", metadata: category.metadata ?? {} });
39
69
  }
40
70
  async updateCategory(id, input, actor, ctx) {
41
71
  assertPermission(actor, "catalog:update");
@@ -56,7 +86,7 @@ export class CategoryService {
56
86
  const updated = await this.repo.updateCategory(id, { ...(input.slug !== undefined ? { slug: input.slug } : {}), ...(input.sortOrder !== undefined ? { sortOrder: input.sortOrder } : {}), ...(input.metadata !== undefined ? { metadata: input.metadata } : {}), ...(input.parentId !== undefined ? { parentId: input.parentId } : {}) }, ctx);
57
87
  if (!updated)
58
88
  return Err(new CommerceNotFoundError("Category not found."));
59
- return Ok({ id: updated.id, parentId: updated.parentId, slug: updated.slug, sortOrder: updated.sortOrder, metadata: updated.metadata ?? {} });
89
+ return Ok({ id: updated.id, parentId: updated.parentId, slug: updated.slug, sortOrder: updated.sortOrder, status: updated.status ?? "active", metadata: updated.metadata ?? {} });
60
90
  }
61
91
  async deleteCategory(id, actor, ctx) {
62
92
  assertPermission(actor, "catalog:update");
@@ -586,6 +586,23 @@ export declare const categories: import("drizzle-orm/pg-core").PgTableWithColumn
586
586
  identity: undefined;
587
587
  generated: undefined;
588
588
  }, {}, {}>;
589
+ status: import("drizzle-orm/pg-core").PgColumn<{
590
+ name: "status";
591
+ tableName: "categories";
592
+ dataType: "string";
593
+ columnType: "PgText";
594
+ data: string;
595
+ driverParam: string;
596
+ notNull: true;
597
+ hasDefault: true;
598
+ isPrimaryKey: false;
599
+ isAutoincrement: false;
600
+ hasRuntimeDefault: false;
601
+ enumValues: [string, ...string[]];
602
+ baseColumn: never;
603
+ identity: undefined;
604
+ generated: undefined;
605
+ }, {}, {}>;
589
606
  metadata: import("drizzle-orm/pg-core").PgColumn<{
590
607
  name: "metadata";
591
608
  tableName: "categories";
@@ -1 +1 @@
1
- {"version":3,"file":"schema.d.ts","sourceRoot":"","sources":["../../../src/modules/catalog/schema.ts"],"names":[],"mappings":"AAcA,eAAO,MAAM,gBAAgB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAyB5B,CAAC;AAEF,eAAO,MAAM,kBAAkB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAqB9B,CAAC;AAEF,eAAO,MAAM,oBAAoB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EA+BhC,CAAC;AAEF,eAAO,MAAM,UAAU;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAiBtB,CAAC;AAEF,eAAO,MAAM,gBAAgB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAU1B,CAAC;AAEJ,eAAO,MAAM,MAAM;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAalB,CAAC;AAEF,eAAO,MAAM,YAAY;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAUtB,CAAC;AAEJ,eAAO,MAAM,WAAW;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAQtB,CAAC;AAEH,eAAO,MAAM,YAAY;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EASvB,CAAC;AAEH,eAAO,MAAM,QAAQ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAelB,CAAC;AAEJ,eAAO,MAAM,mBAAmB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAS7B,CAAC"}
1
+ {"version":3,"file":"schema.d.ts","sourceRoot":"","sources":["../../../src/modules/catalog/schema.ts"],"names":[],"mappings":"AAcA,eAAO,MAAM,gBAAgB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAyB5B,CAAC;AAEF,eAAO,MAAM,kBAAkB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAqB9B,CAAC;AAEF,eAAO,MAAM,oBAAoB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EA+BhC,CAAC;AAEF,eAAO,MAAM,UAAU;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAmBtB,CAAC;AAEF,eAAO,MAAM,gBAAgB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAU1B,CAAC;AAEJ,eAAO,MAAM,MAAM;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAalB,CAAC;AAEF,eAAO,MAAM,YAAY;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAUtB,CAAC;AAEJ,eAAO,MAAM,WAAW;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAQtB,CAAC;AAEH,eAAO,MAAM,YAAY;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EASvB,CAAC;AAEH,eAAO,MAAM,QAAQ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAelB,CAAC;AAEJ,eAAO,MAAM,mBAAmB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAS7B,CAAC"}
@@ -65,6 +65,8 @@ export const categories = pgTable("categories", {
65
65
  }),
66
66
  slug: text("slug").notNull(),
67
67
  sortOrder: integer("sort_order").notNull().default(0),
68
+ // active | archived. Soft-delete without cascading entity_categories.
69
+ status: text("status").notNull().default("active"),
68
70
  metadata: jsonb("metadata").$type().default({}),
69
71
  }, (table) => ({
70
72
  orgIdx: index("idx_categories_org").on(table.organizationId),
@@ -95,8 +95,12 @@ export interface CatalogService {
95
95
  discontinue(id: string, actor: Actor | null, ctx?: TxContext): Promise<Result<CatalogEntityHydrated>>;
96
96
  setAttributes(entityId: string, locale: string, attrs: SetAttributesInput, actor: Actor | null, ctx?: TxContext): Promise<Result<void>>;
97
97
  getAttributes(entityId: string, locale: string, ctx?: TxContext): Promise<Result<SellableAttribute>>;
98
- listCategories(ctx?: TxContext): Promise<Result<CategorySummary[]>>;
98
+ listCategories(ctx?: TxContext, opts?: {
99
+ includeArchived?: boolean;
100
+ }): Promise<Result<CategorySummary[]>>;
99
101
  createCategory(input: CreateCategoryInput, actor: Actor | null, ctx?: TxContext): Promise<Result<CategorySummary>>;
102
+ archiveCategory(id: string, actor: Actor | null, ctx?: TxContext): Promise<Result<CategorySummary>>;
103
+ restoreCategory(id: string, actor: Actor | null, ctx?: TxContext): Promise<Result<CategorySummary>>;
100
104
  updateCategory(id: string, input: UpdateCategoryInput, actor: Actor | null, ctx?: TxContext): Promise<Result<CategorySummary>>;
101
105
  deleteCategory(id: string, actor: Actor | null, ctx?: TxContext): Promise<Result<void>>;
102
106
  addToCategory(entityId: string, categoryId: string, actor: Actor | null, ctx?: TxContext): Promise<Result<void>>;
@@ -128,6 +132,7 @@ export type CategorySummary = {
128
132
  parentId?: string | null;
129
133
  slug: string;
130
134
  sortOrder: number;
135
+ status: string;
131
136
  metadata: Record<string, unknown>;
132
137
  };
133
138
  export declare class CatalogServiceImpl implements CatalogService {
@@ -147,8 +152,12 @@ export declare class CatalogServiceImpl implements CatalogService {
147
152
  discontinue(id: string, actor: Actor | null, ctx?: TxContext): Promise<Result<CatalogEntityHydrated>>;
148
153
  setAttributes(entityId: string, locale: string, attrs: SetAttributesInput, actor: Actor | null, ctx?: TxContext): Promise<Result<void>>;
149
154
  getAttributes(entityId: string, locale: string, ctx?: TxContext): Promise<Result<SellableAttribute>>;
150
- listCategories(ctx?: TxContext): Promise<Result<CategorySummary[]>>;
155
+ listCategories(ctx?: TxContext, opts?: {
156
+ includeArchived?: boolean;
157
+ }): Promise<Result<CategorySummary[]>>;
151
158
  createCategory(input: CreateCategoryInput, actor: Actor | null, ctx?: TxContext): Promise<Result<CategorySummary>>;
159
+ archiveCategory(id: string, actor: Actor | null, ctx?: TxContext): Promise<Result<CategorySummary>>;
160
+ restoreCategory(id: string, actor: Actor | null, ctx?: TxContext): Promise<Result<CategorySummary>>;
152
161
  updateCategory(id: string, input: UpdateCategoryInput, actor: Actor | null, ctx?: TxContext): Promise<Result<CategorySummary>>;
153
162
  deleteCategory(id: string, actor: Actor | null, ctx?: TxContext): Promise<Result<void>>;
154
163
  addToCategory(entityId: string, categoryId: string, actor: Actor | null, ctx?: TxContext): Promise<Result<void>>;
@@ -1 +1 @@
1
- {"version":3,"file":"service.d.ts","sourceRoot":"","sources":["../../../src/modules/catalog/service.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"service.d.ts","sourceRoot":"","sources":["../../../src/modules/catalog/service.ts"],"names":[],"mappings":"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"}
@@ -45,12 +45,18 @@ export class CatalogServiceImpl {
45
45
  getAttributes(entityId, locale, ctx) {
46
46
  return this.entities.getAttributes(entityId, locale, ctx);
47
47
  }
48
- listCategories(ctx) {
49
- return this.categories.listCategories(ctx);
48
+ listCategories(ctx, opts) {
49
+ return this.categories.listCategories(ctx, opts);
50
50
  }
51
51
  createCategory(input, actor, ctx) {
52
52
  return this.categories.createCategory(input, actor, ctx);
53
53
  }
54
+ archiveCategory(id, actor, ctx) {
55
+ return this.categories.archiveCategory(id, actor, ctx);
56
+ }
57
+ restoreCategory(id, actor, ctx) {
58
+ return this.categories.restoreCategory(id, actor, ctx);
59
+ }
54
60
  updateCategory(id, input, actor, ctx) {
55
61
  return this.categories.updateCategory(id, input, actor, ctx);
56
62
  }