@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.
Files changed (38) hide show
  1. package/dist/admin/api/products.d.ts.map +1 -1
  2. package/dist/admin/api/products.js +20 -6
  3. package/dist/admin/api/products.js.map +1 -1
  4. package/dist/admin/api/setup-guide.d.ts.map +1 -1
  5. package/dist/admin/api/setup-guide.js +24 -7
  6. package/dist/admin/api/setup-guide.js.map +1 -1
  7. package/dist/admin/components/ProductTable.js +1 -1
  8. package/dist/admin/components/ProductTable.js.map +1 -1
  9. package/dist/admin/styles/admin-theme.css +35 -0
  10. package/dist/cart/store.d.ts +27 -0
  11. package/dist/cart/store.d.ts.map +1 -1
  12. package/dist/cart/store.js +59 -2
  13. package/dist/cart/store.js.map +1 -1
  14. package/dist/checkout/server/coupons.d.ts +91 -0
  15. package/dist/checkout/server/coupons.d.ts.map +1 -0
  16. package/dist/checkout/server/coupons.js +192 -0
  17. package/dist/checkout/server/coupons.js.map +1 -0
  18. package/dist/checkout/server/index.d.ts +2 -0
  19. package/dist/checkout/server/index.d.ts.map +1 -1
  20. package/dist/checkout/server/index.js +1 -0
  21. package/dist/checkout/server/index.js.map +1 -1
  22. package/dist/core/cookie-consent/CookieBanner.d.ts.map +1 -1
  23. package/dist/core/cookie-consent/CookieBanner.js +51 -15
  24. package/dist/core/cookie-consent/CookieBanner.js.map +1 -1
  25. package/dist/core/db/queries.d.ts +93 -15
  26. package/dist/core/db/queries.d.ts.map +1 -1
  27. package/dist/core/db/queries.js +147 -5
  28. package/dist/core/db/queries.js.map +1 -1
  29. package/dist/media/components/ImageGalleryUpload.d.ts.map +1 -1
  30. package/dist/media/components/ImageGalleryUpload.js +9 -2
  31. package/dist/media/components/ImageGalleryUpload.js.map +1 -1
  32. package/dist/products/components/ProductCard.d.ts.map +1 -1
  33. package/dist/products/components/ProductCard.js +8 -1
  34. package/dist/products/components/ProductCard.js.map +1 -1
  35. package/dist/products/components/ProductGallery.d.ts.map +1 -1
  36. package/dist/products/components/ProductGallery.js +14 -3
  37. package/dist/products/components/ProductGallery.js.map +1 -1
  38. 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: "paid" | "pending" | "shipped" | "delivered" | "cancelled" | "refunded" | "return_requested";
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: "paid" | "pending" | "shipped" | "delivered" | "cancelled" | "refunded" | "return_requested";
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: "admin" | "owner" | "administrator" | "manager" | "user";
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: "paid" | "pending" | "shipped" | "delivered" | "cancelled" | "refunded" | "return_requested";
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: "paid" | "pending" | "shipped" | "delivered" | "cancelled" | "refunded" | "return_requested";
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: "paid" | "pending" | "shipped" | "delivered" | "cancelled" | "refunded" | "return_requested";
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: "paid" | "pending" | "shipped" | "delivered" | "cancelled" | "refunded" | "return_requested";
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: "paid" | "pending" | "shipped" | "delivered" | "cancelled" | "refunded" | "return_requested";
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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"}
@@ -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 pass the value through to_jsonb so the
1727
- // client-side type matches the JSONB encoding (booleans as `true`/`false`,
1728
- // strings quoted, etc.).
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
- to_jsonb(${value}::text)::jsonb,
1876
+ ${jsonValue}::jsonb,
1735
1877
  true
1736
1878
  )
1737
1879
  `);