@rovela-ai/sdk 0.3.27 → 0.3.33
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/api/products.d.ts.map +1 -1
- package/dist/admin/api/products.js +20 -6
- package/dist/admin/api/products.js.map +1 -1
- package/dist/admin/api/setup-guide.d.ts.map +1 -1
- package/dist/admin/api/setup-guide.js +24 -7
- package/dist/admin/api/setup-guide.js.map +1 -1
- package/dist/admin/components/ProductTable.js +1 -1
- package/dist/admin/components/ProductTable.js.map +1 -1
- package/dist/admin/styles/admin-theme.css +35 -0
- package/dist/cart/store.d.ts +27 -0
- package/dist/cart/store.d.ts.map +1 -1
- package/dist/cart/store.js +59 -2
- package/dist/cart/store.js.map +1 -1
- package/dist/checkout/server/coupons.d.ts +91 -0
- package/dist/checkout/server/coupons.d.ts.map +1 -0
- package/dist/checkout/server/coupons.js +192 -0
- package/dist/checkout/server/coupons.js.map +1 -0
- package/dist/checkout/server/index.d.ts +2 -0
- package/dist/checkout/server/index.d.ts.map +1 -1
- package/dist/checkout/server/index.js +1 -0
- package/dist/checkout/server/index.js.map +1 -1
- package/dist/core/cookie-consent/CookieBanner.d.ts.map +1 -1
- package/dist/core/cookie-consent/CookieBanner.js +51 -15
- package/dist/core/cookie-consent/CookieBanner.js.map +1 -1
- package/dist/core/db/queries.d.ts +93 -15
- package/dist/core/db/queries.d.ts.map +1 -1
- package/dist/core/db/queries.js +147 -5
- package/dist/core/db/queries.js.map +1 -1
- package/dist/media/components/ImageGalleryUpload.d.ts.map +1 -1
- package/dist/media/components/ImageGalleryUpload.js +9 -2
- package/dist/media/components/ImageGalleryUpload.js.map +1 -1
- package/dist/products/components/ProductCard.d.ts.map +1 -1
- package/dist/products/components/ProductCard.js +8 -1
- package/dist/products/components/ProductCard.js.map +1 -1
- package/dist/products/components/ProductGallery.d.ts.map +1 -1
- package/dist/products/components/ProductGallery.js +14 -3
- package/dist/products/components/ProductGallery.js.map +1 -1
- package/package.json +5 -1
|
@@ -18,6 +18,19 @@ export interface FindProductsOptions {
|
|
|
18
18
|
* For variant products: no variant has `inventory > 0`.
|
|
19
19
|
*/
|
|
20
20
|
outOfStock?: boolean;
|
|
21
|
+
/**
|
|
22
|
+
* When true, return only products with a sale price (compare_price > price).
|
|
23
|
+
* Used by the auto-curated /sale collection card. Cheap to evaluate — no
|
|
24
|
+
* subquery, just a column comparison.
|
|
25
|
+
*/
|
|
26
|
+
onSale?: boolean;
|
|
27
|
+
/**
|
|
28
|
+
* When set, return only products whose `tags` JSONB array overlaps any of
|
|
29
|
+
* the provided tags. Used by the product-quiz card to filter to products
|
|
30
|
+
* matching the merchant's quiz answer→tag mapping. Empty array is a
|
|
31
|
+
* no-op (returns all products).
|
|
32
|
+
*/
|
|
33
|
+
tags?: string[];
|
|
21
34
|
}
|
|
22
35
|
/**
|
|
23
36
|
* Find products with filtering, sorting, and pagination
|
|
@@ -160,6 +173,71 @@ export declare function getBestSellerProduct(days?: number): Promise<{
|
|
|
160
173
|
unitsSold: number;
|
|
161
174
|
revenue: string;
|
|
162
175
|
} | null>;
|
|
176
|
+
/**
|
|
177
|
+
* Best-selling products in the last N days, capped to `limit`.
|
|
178
|
+
*
|
|
179
|
+
* Same SQL shape as `getBestSellerProduct` (paid+shipped+delivered window,
|
|
180
|
+
* ordered by units sold desc) but returns up to `limit` rows. Used by the
|
|
181
|
+
* Best Sellers homepage section card. Returns an empty array when no
|
|
182
|
+
* qualifying orders exist — callers MUST hide their UI when length === 0
|
|
183
|
+
* (don't render an empty rail).
|
|
184
|
+
*
|
|
185
|
+
* `order_items_product_id_idx` covers the JOIN; cost is the same as the
|
|
186
|
+
* existing single-row helper.
|
|
187
|
+
*/
|
|
188
|
+
export declare function getBestSellers(days?: number, limit?: number): Promise<Array<{
|
|
189
|
+
id: string;
|
|
190
|
+
slug: string;
|
|
191
|
+
name: string;
|
|
192
|
+
price: string;
|
|
193
|
+
comparePrice: string | null;
|
|
194
|
+
images: string[];
|
|
195
|
+
unitsSold: number;
|
|
196
|
+
}>>;
|
|
197
|
+
/**
|
|
198
|
+
* Most-popular products by distinct buyer count (last N days), capped.
|
|
199
|
+
*
|
|
200
|
+
* Different from best sellers — best sellers is units sold (revenue lens);
|
|
201
|
+
* this is buyer reach (how many distinct customers bought it). Used by the
|
|
202
|
+
* Most Popular homepage section card. Same JOIN path; same status window.
|
|
203
|
+
*
|
|
204
|
+
* Excludes guest orders (`customer_id IS NULL`) so we count real distinct
|
|
205
|
+
* buyers, not anonymous sessions. Returns empty array when no data — UI
|
|
206
|
+
* must hide.
|
|
207
|
+
*/
|
|
208
|
+
export declare function getMostPopularProducts(days?: number, limit?: number): Promise<Array<{
|
|
209
|
+
id: string;
|
|
210
|
+
slug: string;
|
|
211
|
+
name: string;
|
|
212
|
+
price: string;
|
|
213
|
+
comparePrice: string | null;
|
|
214
|
+
images: string[];
|
|
215
|
+
buyerCount: number;
|
|
216
|
+
}>>;
|
|
217
|
+
/**
|
|
218
|
+
* Distinct-buyer count for a single product within the last N hours.
|
|
219
|
+
*
|
|
220
|
+
* Powers the "X people bought this in the last 24h" social-proof card on
|
|
221
|
+
* PDPs. Server-only — caller MUST cache via Server Component + ISR
|
|
222
|
+
* (`revalidate: 300`); calling this per page view is a perf trap.
|
|
223
|
+
*
|
|
224
|
+
* Returns 0 when no qualifying orders exist. UI gates on a `minThreshold`
|
|
225
|
+
* (default 5) — never render "1 person bought this" (awkward + reads as
|
|
226
|
+
* dead store).
|
|
227
|
+
*/
|
|
228
|
+
export declare function getProductRecentBuyerCount(productId: string, hours?: number): Promise<number>;
|
|
229
|
+
/**
|
|
230
|
+
* Check whether a customer has purchased a specific product.
|
|
231
|
+
*
|
|
232
|
+
* Powers the verified-purchase badge on the C2 reviews card. Returns true
|
|
233
|
+
* iff the customer has at least one paid+shipped+delivered order containing
|
|
234
|
+
* the product (variant-agnostic — buying any variant counts).
|
|
235
|
+
*
|
|
236
|
+
* Uses EXISTS for short-circuit evaluation; cheap even on large order
|
|
237
|
+
* histories. Index `order_items_product_id_idx` covers the inner lookup;
|
|
238
|
+
* `orders_customer_id_idx` covers the join.
|
|
239
|
+
*/
|
|
240
|
+
export declare function hasCustomerPurchasedProduct(customerId: string, productId: string): Promise<boolean>;
|
|
163
241
|
/**
|
|
164
242
|
* Find all categories
|
|
165
243
|
*/
|
|
@@ -199,7 +277,7 @@ export declare function findOrders(options?: FindOrdersOptions): Promise<{
|
|
|
199
277
|
id: string;
|
|
200
278
|
customerId: string | null;
|
|
201
279
|
email: string;
|
|
202
|
-
status: "
|
|
280
|
+
status: "pending" | "paid" | "shipped" | "delivered" | "cancelled" | "refunded" | "return_requested";
|
|
203
281
|
subtotal: string;
|
|
204
282
|
tax: string;
|
|
205
283
|
shipping: string;
|
|
@@ -262,7 +340,7 @@ export declare function findOrderById(id: string): Promise<{
|
|
|
262
340
|
id: string;
|
|
263
341
|
customerId: string | null;
|
|
264
342
|
email: string;
|
|
265
|
-
status: "
|
|
343
|
+
status: "pending" | "paid" | "shipped" | "delivered" | "cancelled" | "refunded" | "return_requested";
|
|
266
344
|
subtotal: string;
|
|
267
345
|
tax: string;
|
|
268
346
|
shipping: string;
|
|
@@ -368,7 +446,7 @@ export declare function findAdminByEmail(email: string): Promise<{
|
|
|
368
446
|
email: string;
|
|
369
447
|
name: string;
|
|
370
448
|
passwordHash: string | null;
|
|
371
|
-
role: "
|
|
449
|
+
role: "owner" | "admin" | "administrator" | "manager" | "user";
|
|
372
450
|
status: "active" | "invited" | "deactivated";
|
|
373
451
|
createdBy: string | null;
|
|
374
452
|
createdAt: Date;
|
|
@@ -508,7 +586,7 @@ export declare function getRecentOrders(limit?: number): Promise<{
|
|
|
508
586
|
id: string;
|
|
509
587
|
customerId: string | null;
|
|
510
588
|
email: string;
|
|
511
|
-
status: "
|
|
589
|
+
status: "pending" | "paid" | "shipped" | "delivered" | "cancelled" | "refunded" | "return_requested";
|
|
512
590
|
subtotal: string;
|
|
513
591
|
tax: string;
|
|
514
592
|
shipping: string;
|
|
@@ -556,16 +634,16 @@ export declare function getRecentOrders(limit?: number): Promise<{
|
|
|
556
634
|
* Create a new order
|
|
557
635
|
*/
|
|
558
636
|
export declare function createOrder(data: schema.NewOrder): Promise<{
|
|
559
|
-
status: "paid" | "pending" | "shipped" | "delivered" | "cancelled" | "refunded" | "return_requested";
|
|
560
637
|
id: string;
|
|
638
|
+
status: "pending" | "paid" | "shipped" | "delivered" | "cancelled" | "refunded" | "return_requested";
|
|
561
639
|
createdAt: Date;
|
|
562
640
|
updatedAt: Date;
|
|
563
|
-
total: string;
|
|
564
|
-
shipping: string;
|
|
565
|
-
tax: string;
|
|
566
|
-
email: string;
|
|
567
641
|
customerId: string | null;
|
|
642
|
+
email: string;
|
|
568
643
|
subtotal: string;
|
|
644
|
+
tax: string;
|
|
645
|
+
shipping: string;
|
|
646
|
+
total: string;
|
|
569
647
|
refundAmount: string | null;
|
|
570
648
|
returnReason: string | null;
|
|
571
649
|
discountCode: string | null;
|
|
@@ -607,14 +685,14 @@ export declare function createOrder(data: schema.NewOrder): Promise<{
|
|
|
607
685
|
* Create order items for an order
|
|
608
686
|
*/
|
|
609
687
|
export declare function createOrderItems(items: schema.NewOrderItem[]): Promise<{
|
|
610
|
-
name: string;
|
|
611
688
|
id: string;
|
|
689
|
+
name: string;
|
|
612
690
|
price: string;
|
|
613
691
|
createdAt: Date;
|
|
614
692
|
productId: string;
|
|
615
693
|
attributes: Record<string, string> | null;
|
|
616
|
-
variantId: string | null;
|
|
617
694
|
orderId: string;
|
|
695
|
+
variantId: string | null;
|
|
618
696
|
quantity: number;
|
|
619
697
|
}[]>;
|
|
620
698
|
/**
|
|
@@ -624,7 +702,7 @@ export declare function updateOrderStatus(orderId: string, status: 'pending' | '
|
|
|
624
702
|
id: string;
|
|
625
703
|
customerId: string | null;
|
|
626
704
|
email: string;
|
|
627
|
-
status: "
|
|
705
|
+
status: "pending" | "paid" | "shipped" | "delivered" | "cancelled" | "refunded" | "return_requested";
|
|
628
706
|
subtotal: string;
|
|
629
707
|
tax: string;
|
|
630
708
|
shipping: string;
|
|
@@ -683,7 +761,7 @@ export declare function updateOrderShipping(orderId: string, shippingData: {
|
|
|
683
761
|
id: string;
|
|
684
762
|
customerId: string | null;
|
|
685
763
|
email: string;
|
|
686
|
-
status: "
|
|
764
|
+
status: "pending" | "paid" | "shipped" | "delivered" | "cancelled" | "refunded" | "return_requested";
|
|
687
765
|
subtotal: string;
|
|
688
766
|
tax: string;
|
|
689
767
|
shipping: string;
|
|
@@ -735,7 +813,7 @@ export declare function findOrderByPaymentIntent(paymentIntentId: string): Promi
|
|
|
735
813
|
id: string;
|
|
736
814
|
customerId: string | null;
|
|
737
815
|
email: string;
|
|
738
|
-
status: "
|
|
816
|
+
status: "pending" | "paid" | "shipped" | "delivered" | "cancelled" | "refunded" | "return_requested";
|
|
739
817
|
subtotal: string;
|
|
740
818
|
tax: string;
|
|
741
819
|
shipping: string;
|
|
@@ -874,7 +952,7 @@ export declare function findCustomerOrders(customerId: string): Promise<{
|
|
|
874
952
|
id: string;
|
|
875
953
|
customerId: string | null;
|
|
876
954
|
email: string;
|
|
877
|
-
status: "
|
|
955
|
+
status: "pending" | "paid" | "shipped" | "delivered" | "cancelled" | "refunded" | "return_requested";
|
|
878
956
|
subtotal: string;
|
|
879
957
|
tax: string;
|
|
880
958
|
shipping: string;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"queries.d.ts","sourceRoot":"","sources":["../../../src/core/db/queries.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"queries.d.ts","sourceRoot":"","sources":["../../../src/core/db/queries.ts"],"names":[],"mappings":"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"}
|
package/dist/core/db/queries.js
CHANGED
|
@@ -4,7 +4,7 @@
|
|
|
4
4
|
* Type-safe query helpers for e-commerce stores
|
|
5
5
|
* Each store has its own database (via Neon branches) - no tenant filtering needed
|
|
6
6
|
*/
|
|
7
|
-
import { eq, and, or, desc, asc, ilike, sql, inArray, isNull } from 'drizzle-orm';
|
|
7
|
+
import { eq, and, or, desc, asc, ilike, sql, inArray, isNull, isNotNull } from 'drizzle-orm';
|
|
8
8
|
import { getDb } from './client';
|
|
9
9
|
import * as schema from './schema';
|
|
10
10
|
/**
|
|
@@ -25,6 +25,15 @@ export async function findProducts(options = {}) {
|
|
|
25
25
|
if (options.outOfStock) {
|
|
26
26
|
conditions.push(buildOutOfStockCondition());
|
|
27
27
|
}
|
|
28
|
+
if (options.onSale) {
|
|
29
|
+
conditions.push(sql `${schema.products.comparePrice} IS NOT NULL AND ${schema.products.comparePrice} > ${schema.products.price}`);
|
|
30
|
+
}
|
|
31
|
+
if (options.tags && options.tags.length > 0) {
|
|
32
|
+
// JSONB array-overlap check: `tags ?| array['t1','t2']` returns true when
|
|
33
|
+
// ANY tag in the column matches ANY of the provided tags. Powered by the
|
|
34
|
+
// default GIN index on jsonb columns when present.
|
|
35
|
+
conditions.push(sql `${schema.products.tags} ?| ${options.tags}`);
|
|
36
|
+
}
|
|
28
37
|
// Determine sort order
|
|
29
38
|
let orderBy;
|
|
30
39
|
switch (options.sort) {
|
|
@@ -220,6 +229,135 @@ export async function getBestSellerProduct(days = 30) {
|
|
|
220
229
|
revenue: String(row.revenue ?? '0'),
|
|
221
230
|
};
|
|
222
231
|
}
|
|
232
|
+
/**
|
|
233
|
+
* Best-selling products in the last N days, capped to `limit`.
|
|
234
|
+
*
|
|
235
|
+
* Same SQL shape as `getBestSellerProduct` (paid+shipped+delivered window,
|
|
236
|
+
* ordered by units sold desc) but returns up to `limit` rows. Used by the
|
|
237
|
+
* Best Sellers homepage section card. Returns an empty array when no
|
|
238
|
+
* qualifying orders exist — callers MUST hide their UI when length === 0
|
|
239
|
+
* (don't render an empty rail).
|
|
240
|
+
*
|
|
241
|
+
* `order_items_product_id_idx` covers the JOIN; cost is the same as the
|
|
242
|
+
* existing single-row helper.
|
|
243
|
+
*/
|
|
244
|
+
export async function getBestSellers(days = 30, limit = 8) {
|
|
245
|
+
const db = getDb();
|
|
246
|
+
const since = new Date(Date.now() - days * 24 * 60 * 60 * 1000);
|
|
247
|
+
const rows = await db
|
|
248
|
+
.select({
|
|
249
|
+
id: schema.products.id,
|
|
250
|
+
slug: schema.products.slug,
|
|
251
|
+
name: schema.products.name,
|
|
252
|
+
price: schema.products.price,
|
|
253
|
+
comparePrice: schema.products.comparePrice,
|
|
254
|
+
images: schema.products.images,
|
|
255
|
+
unitsSold: sql `SUM(${schema.orderItems.quantity})`,
|
|
256
|
+
})
|
|
257
|
+
.from(schema.orderItems)
|
|
258
|
+
.innerJoin(schema.orders, eq(schema.orders.id, schema.orderItems.orderId))
|
|
259
|
+
.innerJoin(schema.products, eq(schema.products.id, schema.orderItems.productId))
|
|
260
|
+
.where(and(inArray(schema.orders.status, ['paid', 'shipped', 'delivered']), eq(schema.products.status, 'active'), sql `${schema.orders.createdAt} >= ${since}`))
|
|
261
|
+
.groupBy(schema.products.id, schema.products.slug, schema.products.name, schema.products.price, schema.products.comparePrice, schema.products.images)
|
|
262
|
+
.orderBy(desc(sql `SUM(${schema.orderItems.quantity})`))
|
|
263
|
+
.limit(limit);
|
|
264
|
+
return rows.map((row) => ({
|
|
265
|
+
id: row.id,
|
|
266
|
+
slug: row.slug,
|
|
267
|
+
name: row.name,
|
|
268
|
+
price: row.price,
|
|
269
|
+
comparePrice: row.comparePrice,
|
|
270
|
+
images: (row.images ?? []),
|
|
271
|
+
unitsSold: Number(row.unitsSold) || 0,
|
|
272
|
+
}));
|
|
273
|
+
}
|
|
274
|
+
/**
|
|
275
|
+
* Most-popular products by distinct buyer count (last N days), capped.
|
|
276
|
+
*
|
|
277
|
+
* Different from best sellers — best sellers is units sold (revenue lens);
|
|
278
|
+
* this is buyer reach (how many distinct customers bought it). Used by the
|
|
279
|
+
* Most Popular homepage section card. Same JOIN path; same status window.
|
|
280
|
+
*
|
|
281
|
+
* Excludes guest orders (`customer_id IS NULL`) so we count real distinct
|
|
282
|
+
* buyers, not anonymous sessions. Returns empty array when no data — UI
|
|
283
|
+
* must hide.
|
|
284
|
+
*/
|
|
285
|
+
export async function getMostPopularProducts(days = 30, limit = 8) {
|
|
286
|
+
const db = getDb();
|
|
287
|
+
const since = new Date(Date.now() - days * 24 * 60 * 60 * 1000);
|
|
288
|
+
const rows = await db
|
|
289
|
+
.select({
|
|
290
|
+
id: schema.products.id,
|
|
291
|
+
slug: schema.products.slug,
|
|
292
|
+
name: schema.products.name,
|
|
293
|
+
price: schema.products.price,
|
|
294
|
+
comparePrice: schema.products.comparePrice,
|
|
295
|
+
images: schema.products.images,
|
|
296
|
+
buyerCount: sql `COUNT(DISTINCT ${schema.orders.customerId})`,
|
|
297
|
+
})
|
|
298
|
+
.from(schema.orderItems)
|
|
299
|
+
.innerJoin(schema.orders, eq(schema.orders.id, schema.orderItems.orderId))
|
|
300
|
+
.innerJoin(schema.products, eq(schema.products.id, schema.orderItems.productId))
|
|
301
|
+
.where(and(inArray(schema.orders.status, ['paid', 'shipped', 'delivered']), eq(schema.products.status, 'active'), isNotNull(schema.orders.customerId), sql `${schema.orders.createdAt} >= ${since}`))
|
|
302
|
+
.groupBy(schema.products.id, schema.products.slug, schema.products.name, schema.products.price, schema.products.comparePrice, schema.products.images)
|
|
303
|
+
.orderBy(desc(sql `COUNT(DISTINCT ${schema.orders.customerId})`))
|
|
304
|
+
.limit(limit);
|
|
305
|
+
return rows.map((row) => ({
|
|
306
|
+
id: row.id,
|
|
307
|
+
slug: row.slug,
|
|
308
|
+
name: row.name,
|
|
309
|
+
price: row.price,
|
|
310
|
+
comparePrice: row.comparePrice,
|
|
311
|
+
images: (row.images ?? []),
|
|
312
|
+
buyerCount: Number(row.buyerCount) || 0,
|
|
313
|
+
}));
|
|
314
|
+
}
|
|
315
|
+
/**
|
|
316
|
+
* Distinct-buyer count for a single product within the last N hours.
|
|
317
|
+
*
|
|
318
|
+
* Powers the "X people bought this in the last 24h" social-proof card on
|
|
319
|
+
* PDPs. Server-only — caller MUST cache via Server Component + ISR
|
|
320
|
+
* (`revalidate: 300`); calling this per page view is a perf trap.
|
|
321
|
+
*
|
|
322
|
+
* Returns 0 when no qualifying orders exist. UI gates on a `minThreshold`
|
|
323
|
+
* (default 5) — never render "1 person bought this" (awkward + reads as
|
|
324
|
+
* dead store).
|
|
325
|
+
*/
|
|
326
|
+
export async function getProductRecentBuyerCount(productId, hours = 24) {
|
|
327
|
+
const db = getDb();
|
|
328
|
+
const since = new Date(Date.now() - hours * 60 * 60 * 1000);
|
|
329
|
+
const rows = await db
|
|
330
|
+
.select({
|
|
331
|
+
count: sql `COUNT(DISTINCT ${schema.orders.customerId})`,
|
|
332
|
+
})
|
|
333
|
+
.from(schema.orderItems)
|
|
334
|
+
.innerJoin(schema.orders, eq(schema.orders.id, schema.orderItems.orderId))
|
|
335
|
+
.where(and(eq(schema.orderItems.productId, productId), inArray(schema.orders.status, ['paid', 'shipped', 'delivered']), isNotNull(schema.orders.customerId), sql `${schema.orders.createdAt} >= ${since}`));
|
|
336
|
+
return Number(rows[0]?.count ?? 0);
|
|
337
|
+
}
|
|
338
|
+
/**
|
|
339
|
+
* Check whether a customer has purchased a specific product.
|
|
340
|
+
*
|
|
341
|
+
* Powers the verified-purchase badge on the C2 reviews card. Returns true
|
|
342
|
+
* iff the customer has at least one paid+shipped+delivered order containing
|
|
343
|
+
* the product (variant-agnostic — buying any variant counts).
|
|
344
|
+
*
|
|
345
|
+
* Uses EXISTS for short-circuit evaluation; cheap even on large order
|
|
346
|
+
* histories. Index `order_items_product_id_idx` covers the inner lookup;
|
|
347
|
+
* `orders_customer_id_idx` covers the join.
|
|
348
|
+
*/
|
|
349
|
+
export async function hasCustomerPurchasedProduct(customerId, productId) {
|
|
350
|
+
const db = getDb();
|
|
351
|
+
const rows = await db
|
|
352
|
+
.select({
|
|
353
|
+
hit: sql `1`,
|
|
354
|
+
})
|
|
355
|
+
.from(schema.orderItems)
|
|
356
|
+
.innerJoin(schema.orders, eq(schema.orders.id, schema.orderItems.orderId))
|
|
357
|
+
.where(and(eq(schema.orderItems.productId, productId), eq(schema.orders.customerId, customerId), inArray(schema.orders.status, ['paid', 'shipped', 'delivered'])))
|
|
358
|
+
.limit(1);
|
|
359
|
+
return rows.length > 0;
|
|
360
|
+
}
|
|
223
361
|
// =============================================================================
|
|
224
362
|
// Categories
|
|
225
363
|
// =============================================================================
|
|
@@ -1723,15 +1861,19 @@ export async function setOnboardingFlag(key, value) {
|
|
|
1723
1861
|
await ensureOnboardingColumn();
|
|
1724
1862
|
const db = getDb();
|
|
1725
1863
|
// jsonb_set with create_missing=true so the column starts at '{}' and
|
|
1726
|
-
// gradually accretes keys. We
|
|
1727
|
-
//
|
|
1728
|
-
//
|
|
1864
|
+
// gradually accretes keys. We JSON-stringify the value first so that
|
|
1865
|
+
// booleans, numbers, strings, and null all round-trip with their proper
|
|
1866
|
+
// JSONB types. Earlier versions used `to_jsonb(value::text)::jsonb`
|
|
1867
|
+
// which incorrectly produced JSONB string `"true"` for boolean true —
|
|
1868
|
+
// breaking strict-equality reads in the GET handler so the setup-guide
|
|
1869
|
+
// tasks never marked complete.
|
|
1870
|
+
const jsonValue = JSON.stringify(value);
|
|
1729
1871
|
await db.execute(sql `
|
|
1730
1872
|
UPDATE store_settings
|
|
1731
1873
|
SET onboarding = jsonb_set(
|
|
1732
1874
|
COALESCE(onboarding, '{}'::jsonb),
|
|
1733
1875
|
${sql.raw(`'{${String(key)}}'`)},
|
|
1734
|
-
|
|
1876
|
+
${jsonValue}::jsonb,
|
|
1735
1877
|
true
|
|
1736
1878
|
)
|
|
1737
1879
|
`);
|