@fayz-ai/shop 0.17.0 → 0.19.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.
- package/dist/{chunk-26YK5V6P.js → chunk-AKUDWFGY.js} +101 -53
- package/dist/chunk-AKUDWFGY.js.map +1 -0
- package/dist/data/provider.d.ts +49 -3
- package/dist/data/provider.d.ts.map +1 -1
- package/dist/data/supabase-provider.d.ts +20 -3
- package/dist/data/supabase-provider.d.ts.map +1 -1
- package/dist/data/tables.d.ts +6 -5
- package/dist/data/tables.d.ts.map +1 -1
- package/dist/index.d.ts +1 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +205 -22
- package/dist/index.js.map +1 -1
- package/dist/inventory/postgrest-double.d.ts +9 -0
- package/dist/inventory/postgrest-double.d.ts.map +1 -1
- package/dist/inventory/stock-contract.d.ts +20 -1
- package/dist/inventory/stock-contract.d.ts.map +1 -1
- package/dist/inventory/supabase-stock-store.d.ts.map +1 -1
- package/dist/inventory.js +1 -1
- package/dist/providers/checkout.d.ts +1 -1
- package/dist/providers/checkout.d.ts.map +1 -1
- package/dist/providers.js.map +1 -1
- package/dist/shipping/label-provider.d.ts +1 -1
- package/dist/shipping/label-provider.d.ts.map +1 -1
- package/dist/types.d.ts +195 -2
- package/dist/types.d.ts.map +1 -1
- package/package.json +4 -4
- package/dist/chunk-26YK5V6P.js.map +0 -1
|
@@ -3,7 +3,7 @@ import type { ShopProvider } from './provider';
|
|
|
3
3
|
import type { ComputeAction, RuleCartSnapshot } from '../rules/rule-types';
|
|
4
4
|
import { mediaKindOf } from './media';
|
|
5
5
|
import type { StockLocation, CreateStockLocationInput, UpdateStockLocationInput } from '../inventory/stock-types';
|
|
6
|
-
import type { Product, ProductImage, ProductOption, ProductOptionInput, ProductVariant, ProductVariantSet, CreateProductVariantInput, UpdateProductVariantInput, Category, Order, ShopCustomer, Discount, CreateProductInput, UpdateProductInput, ListProductsOptions, CreateCategoryInput, UpdateCategoryInput, CreateOrderInput, UpdateOrderInput, ListOrdersOptions, PlaceOrderInput, CreateCustomerInput, UpdateCustomerInput, ListCustomersOptions, ResolveCustomerInput, CreateDiscountInput, UpdateDiscountInput, ListDiscountsOptions, CheckoutSessionInput, CheckoutSession, CheckoutSettlement, ShippingQuoteOption, CustomerAddress, ShippingAgency, SalesChannel, CreateSalesChannelInput, UpdateSalesChannelInput, ShippingZone, CreateShippingZoneInput, UpdateShippingZoneInput, ShippingProfile, CreateShippingProfileInput, UpdateShippingProfileInput, ShippingPackage, CreateShippingPackageInput, UpdateShippingPackageInput, ShippingSettings, UpdateShippingSettingsInput, StoreSettings, UpdateStoreSettingsInput, PaymentMethodKind, DeliveryCheck, Collection, CreateCollectionInput, UpdateCollectionInput, CustomerGroup, CreateCustomerGroupInput, UpdateCustomerGroupInput, CustomerSegment, CreateCustomerSegmentInput, UpdateCustomerSegmentInput, GiftCard, CreateGiftCardInput, UpdateGiftCardInput, EmailTemplate, UpsertEmailTemplateInput, MediaFile } from '../types';
|
|
6
|
+
import type { Product, ProductImage, ProductOption, ProductOptionInput, ProductVariant, ProductVariantSet, CreateProductVariantInput, UpdateProductVariantInput, Category, Order, ShopCustomer, Discount, CreateProductInput, UpdateProductInput, ListProductsOptions, CreateCategoryInput, UpdateCategoryInput, CreateOrderInput, UpdateOrderInput, ListOrdersOptions, PlaceOrderInput, CreateCustomerInput, UpdateCustomerInput, ListCustomersOptions, ResolveCustomerInput, CreateDiscountInput, UpdateDiscountInput, ListDiscountsOptions, CheckoutSessionInput, CheckoutSession, CheckoutSettlement, ShippingQuoteOption, CustomerAddress, ShippingAgency, SalesChannel, CreateSalesChannelInput, UpdateSalesChannelInput, ShippingZone, CreateShippingZoneInput, UpdateShippingZoneInput, ShippingProfile, CreateShippingProfileInput, UpdateShippingProfileInput, ShippingPackage, CreateShippingPackageInput, UpdateShippingPackageInput, ShippingSettings, UpdateShippingSettingsInput, StoreSettings, UpdateStoreSettingsInput, PaymentMethodKind, DeliveryCheck, FulfillmentType, ServiceStatus, ServiceHours, ScheduleSlot, PostalAddressHint, AreaCandidate, Collection, CreateCollectionInput, UpdateCollectionInput, CustomerGroup, CreateCustomerGroupInput, UpdateCustomerGroupInput, CustomerSegment, CreateCustomerSegmentInput, UpdateCustomerSegmentInput, GiftCard, CreateGiftCardInput, UpdateGiftCardInput, EmailTemplate, UpsertEmailTemplateInput, MediaFile } from '../types';
|
|
7
7
|
export { mediaKindOf };
|
|
8
8
|
export declare class SupabaseShopProvider implements ShopProvider {
|
|
9
9
|
listProducts(options?: ListProductsOptions): Promise<Product[]>;
|
|
@@ -17,6 +17,8 @@ export declare class SupabaseShopProvider implements ShopProvider {
|
|
|
17
17
|
}): Promise<ProductVariantSet>;
|
|
18
18
|
saveProductOptions(productId: string, input: ProductOptionInput[]): Promise<ProductOption[]>;
|
|
19
19
|
createProductVariant(productId: string, input: CreateProductVariantInput): Promise<ProductVariant>;
|
|
20
|
+
/** One variant, as the view assembles it from both rows. */
|
|
21
|
+
private readVariant;
|
|
20
22
|
updateProductVariant(variantId: string, input: UpdateProductVariantInput): Promise<ProductVariant>;
|
|
21
23
|
archiveProductVariant(variantId: string): Promise<void>;
|
|
22
24
|
setVariantStock(variantId: string, count: number, note?: string): Promise<number>;
|
|
@@ -87,7 +89,22 @@ export declare class SupabaseShopProvider implements ShopProvider {
|
|
|
87
89
|
updateStockLocation(id: string, input: UpdateStockLocationInput): Promise<StockLocation>;
|
|
88
90
|
deleteStockLocation(id: string): Promise<void>;
|
|
89
91
|
private clearDefaultStockLocation;
|
|
90
|
-
|
|
92
|
+
findAreas(query: string, limit?: number): Promise<AreaCandidate[]>;
|
|
93
|
+
/**
|
|
94
|
+
* Está aberta agora? (0094)
|
|
95
|
+
*
|
|
96
|
+
* `null` é uma resposta de primeira classe e a mais importante delas: a base
|
|
97
|
+
* ainda não recebeu a 0094, a função não existe, e quem chama trata isso como
|
|
98
|
+
* "sempre aberta" — que é exatamente o que a loja era ontem. Um throw aqui
|
|
99
|
+
* derrubaria a vitrine de sete lojas por causa de uma migration que não é
|
|
100
|
+
* delas.
|
|
101
|
+
*/
|
|
102
|
+
getServiceStatus(fulfillmentType?: FulfillmentType): Promise<ServiceStatus | null>;
|
|
103
|
+
/** As janelas agendáveis. Vazio = esta loja não agenda, e a tela não oferece. */
|
|
104
|
+
listScheduleSlots(fulfillmentType?: FulfillmentType, from?: string): Promise<ScheduleSlot[]>;
|
|
105
|
+
/** O horário semanal, para a tela que o mostra. Vazio = nada declarado. */
|
|
106
|
+
listServiceHours(fulfillmentType?: FulfillmentType): Promise<ServiceHours[]>;
|
|
107
|
+
checkDelivery(postalCode: string, address?: PostalAddressHint): Promise<DeliveryCheck>;
|
|
91
108
|
getStoreSettings(): Promise<StoreSettings | null>;
|
|
92
109
|
updateStoreSettings(input: UpdateStoreSettingsInput): Promise<StoreSettings>;
|
|
93
110
|
/**
|
|
@@ -145,7 +162,7 @@ export declare class SupabaseShopProvider implements ShopProvider {
|
|
|
145
162
|
* zones as the fallback, exactly as the storefront resolves it. Advisory
|
|
146
163
|
* either way: shop_place_order requotes and ignores whatever a client sends.
|
|
147
164
|
*/
|
|
148
|
-
quoteShipping(postalCode: string, subtotal: number): Promise<ShippingQuoteOption[]>;
|
|
165
|
+
quoteShipping(postalCode: string, subtotal: number, address?: PostalAddressHint): Promise<ShippingQuoteOption[]>;
|
|
149
166
|
/**
|
|
150
167
|
* Charge a cart that is not an order yet — the phone sale, from the counter's
|
|
151
168
|
* side. Same door the storefront uses, on purpose: `shop_price_cart` inside
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"supabase-provider.d.ts","sourceRoot":"","sources":["../../src/data/supabase-provider.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,YAAY,EAAE,iBAAiB,EAAE,wBAAwB,EAAE,MAAM,0BAA0B,CAAA;AAEzG,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,YAAY,CAAA;AAC9C,OAAO,KAAK,EAAE,aAAa,EAAE,gBAAgB,EAAE,MAAM,qBAAqB,CAAA;AAM1E,OAAO,EAAiB,WAAW,EAA2D,MAAM,SAAS,CAAA;AAG7G,OAAO,KAAK,EACV,aAAa,EAAE,wBAAwB,EAAE,wBAAwB,EAClE,MAAM,0BAA0B,CAAA;AAGjC,OAAO,KAAK,EACV,OAAO,EAAE,YAAY,EAAE,aAAa,EAAE,kBAAkB,EAAE,cAAc,EAAE,iBAAiB,EAC3F,yBAAyB,EAAE,yBAAyB,EAAE,QAAQ,EAC9D,KAAK,EAAE,YAAY,EAAE,QAAQ,EAC7B,kBAAkB,EAAE,kBAAkB,EAAE,mBAAmB,EAC3D,mBAAmB,EAAE,mBAAmB,EACxC,gBAAgB,EAAE,gBAAgB,EAAE,iBAAiB,EAAE,eAAe,EACtE,mBAAmB,EAAE,mBAAmB,EAAE,oBAAoB,EAAE,oBAAoB,EACpF,mBAAmB,EAAE,mBAAmB,EAAE,oBAAoB,EAC9D,oBAAoB,EAAE,eAAe,EAAE,kBAAkB,EAAE,mBAAmB,EAAE,eAAe,EAAE,cAAc,EAC/G,YAAY,EAAE,uBAAuB,EAAE,uBAAuB,EAC9D,YAAY,EAAE,uBAAuB,EAAE,uBAAuB,EAC9D,eAAe,EAAE,0BAA0B,EAAE,0BAA0B,EACvE,eAAe,EAAuB,0BAA0B,EAAE,0BAA0B,EAC5F,gBAAgB,EAAE,2BAA2B,EAC7C,aAAa,EAAE,wBAAwB,EAAE,iBAAiB,EAC1D,aAAa,EACb,UAAU,EAAE,qBAAqB,EAAE,qBAAqB,EAAE,aAAa,EAAE,wBAAwB,EAAE,wBAAwB,EAAE,eAAe,EAAE,0BAA0B,EAAE,0BAA0B,EAAE,QAAQ,EAAE,mBAAmB,EAAE,mBAAmB,EAAE,aAAa,EAAE,wBAAwB,EAAE,SAAS,EAC7S,MAAM,UAAU,CAAA;
|
|
1
|
+
{"version":3,"file":"supabase-provider.d.ts","sourceRoot":"","sources":["../../src/data/supabase-provider.ts"],"names":[],"mappings":"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"}
|
package/dist/data/tables.d.ts
CHANGED
|
@@ -4,7 +4,8 @@ export declare const T: {
|
|
|
4
4
|
readonly productOptions: "plg_shop_product_options";
|
|
5
5
|
readonly productVariants: "plg_shop_product_variants";
|
|
6
6
|
readonly categories: "plg_shop_categories";
|
|
7
|
-
readonly orders: "
|
|
7
|
+
readonly orders: "v_shop_orders";
|
|
8
|
+
readonly orderExtensions: "plg_shop_order_extensions";
|
|
8
9
|
/** 0059. Read-only here: a session pointing at an order is what marks that
|
|
9
10
|
* order as born on the storefront rather than typed into the console. */
|
|
10
11
|
readonly checkoutSessions: "plg_shop_checkout_sessions";
|
|
@@ -25,16 +26,16 @@ export declare const T: {
|
|
|
25
26
|
readonly stockReasonCodes: "plg_shop_stock_reason_codes";
|
|
26
27
|
readonly stockLocations: "plg_shop_stock_locations";
|
|
27
28
|
readonly stockLots: "plg_shop_stock_lots";
|
|
28
|
-
readonly stockMovements: "
|
|
29
|
+
readonly stockMovements: "plg_inventory_stock_movements";
|
|
29
30
|
readonly stockReservations: "plg_shop_stock_reservations";
|
|
30
|
-
readonly stockBalances: "
|
|
31
|
+
readonly stockBalances: "stock_balances";
|
|
31
32
|
readonly stockAllocationStrategies: "plg_shop_stock_allocation_strategies";
|
|
32
33
|
readonly stockReservationTtls: "plg_shop_stock_reservation_ttls";
|
|
33
34
|
readonly stockLevels: "plg_shop_stock_levels";
|
|
34
35
|
readonly orderItemLots: "plg_shop_order_item_lots";
|
|
35
36
|
readonly settings: "plg_shop_settings";
|
|
36
|
-
readonly shippingZones: "
|
|
37
|
-
readonly shippingSettings: "
|
|
37
|
+
readonly shippingZones: "plg_shop_shipping_zones";
|
|
38
|
+
readonly shippingSettings: "plg_shop_shipping_settings";
|
|
38
39
|
readonly shippingProfiles: "plg_shop_shipping_profiles";
|
|
39
40
|
readonly shippingPackages: "plg_shop_packages";
|
|
40
41
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tables.d.ts","sourceRoot":"","sources":["../../src/data/tables.ts"],"names":[],"mappings":"AAKA,eAAO,MAAM,CAAC
|
|
1
|
+
{"version":3,"file":"tables.d.ts","sourceRoot":"","sources":["../../src/data/tables.ts"],"names":[],"mappings":"AAKA,eAAO,MAAM,CAAC;;;;;;;;IAWZ;8EAC0E;;;;;;;;;;;;;IAmB1E,uEAAuE;;;;;;;;;;;;;;;;;;CAiD/D,CAAA;AAEV;;;;;;;;;;;;;;;;;;;;;;;;;;;GA2BG;AACH,eAAO,MAAM,CAAC;;;;IAIZ;;;;;;;;;;;;;OAaG;;CAEK,CAAA"}
|
package/dist/index.d.ts
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
export type { Product, ProductImage, Category, ProductEnquiry, ProductEnquiryStatus, Order, OrderItem, OrderStatus, FinancialStatus, FulfillmentStatus, ShopCustomer, Discount, DiscountType, DiscountMethod, DiscountStatus, ProductStatus, ProductOption, ProductVariant, ProductVariantSet, ProductOptionInput, CreateProductVariantInput, UpdateProductVariantInput, CreateProductInput, UpdateProductInput, ListProductsOptions, CreateProductEnquiryInput, ListProductEnquiriesOptions, CreateCategoryInput, UpdateCategoryInput, CreateOrderInput, UpdateOrderInput, ListOrdersOptions, CreateCustomerInput, UpdateCustomerInput, ListCustomersOptions, ResolveCustomerInput, CreateDiscountInput, UpdateDiscountInput, ListDiscountsOptions, SalesChannel, SalesChannelKind, CreateSalesChannelInput, UpdateSalesChannelInput, PlaceOrderInput, PlaceOrderLine, ShippingAddressInput, DiscountValidation, InventoryLine, InventoryIssue, InventoryCheck, CartTotalLine, CartTotals, } from './types';
|
|
2
|
-
export type { ShippingZone, CreateShippingZoneInput, UpdateShippingZoneInput, ShippingPackage, ShippingPackageKind, CreateShippingPackageInput, UpdateShippingPackageInput, ShippingQuoteOption, CustomerAddress, ShippingSettings, UpdateShippingSettingsInput, DeliveryCheck, HandlingRequirement, ShippingProfile, CreateShippingProfileInput, UpdateShippingProfileInput, } from './types';
|
|
2
|
+
export type { ShippingZone, CreateShippingZoneInput, UpdateShippingZoneInput, ZoneMatchKind, DeliveryOutcome, PostalAddressHint, AreaCandidate, AreaGroupMember, ShippingPackage, ShippingPackageKind, CreateShippingPackageInput, UpdateShippingPackageInput, ShippingQuoteOption, CustomerAddress, ShippingSettings, UpdateShippingSettingsInput, DeliveryCheck, HandlingRequirement, ShippingProfile, CreateShippingProfileInput, UpdateShippingProfileInput, } from './types';
|
|
3
3
|
export type { StoreSettings, UpdateStoreSettingsInput, CheckoutFieldKey, CheckoutFieldPolicy, PaymentMethodKind, PaymentChargeMethod, PaymentCharge, PaymentChargeResult, CheckoutSessionInput, CheckoutSession, CheckoutSettlement, CreateFulfillmentInput, ShipFulfillmentInput, OrderShipment, ShippingLabel, ShippingLabelOption, ShippingAgency, } from './types';
|
|
4
4
|
export type { ShopProvider } from './data/provider';
|
|
5
5
|
export { validateDiscount, applyDiscount, checkInventory, computeCartTotals, getCustomerOrders, } from './lib/commerce';
|
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
package/dist/index.js
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import { T, V, resolveStockStore, createSupabaseStockStore, OPENING_BALANCE_REASON, rowToStockLocation } from './chunk-
|
|
2
|
-
export { DEFAULT_STOCK_TRACKING, MockStockStore, OWN_FULFILLMENT, STOCK_TRACKING_MODES, StockMovementError, SupabaseStockStore, createMockStockStore, createSupabaseStockStore, listStockMovementKinds, listStockReasonCodes, mirroredInventoryCount, registerStockMovementKind, registerStockReasonCode, registerStockStore, replayStockLedger, resolveStockStore, validateStockMovement } from './chunk-
|
|
1
|
+
import { T, V, resolveStockStore, createSupabaseStockStore, OPENING_BALANCE_REASON, rowToStockLocation } from './chunk-AKUDWFGY.js';
|
|
2
|
+
export { DEFAULT_STOCK_TRACKING, MockStockStore, OWN_FULFILLMENT, STOCK_TRACKING_MODES, StockMovementError, SupabaseStockStore, createMockStockStore, createSupabaseStockStore, listStockMovementKinds, listStockReasonCodes, mirroredInventoryCount, registerStockMovementKind, registerStockReasonCode, registerStockStore, replayStockLedger, resolveStockStore, validateStockMovement } from './chunk-AKUDWFGY.js';
|
|
3
3
|
import { getShopProvider } from './chunk-WWQICATY.js';
|
|
4
4
|
export { getShopProvider, resetShopProvider, setShopProvider } from './chunk-WWQICATY.js';
|
|
5
5
|
import './chunk-FQPGE3YN.js';
|
|
@@ -310,8 +310,6 @@ function rowToVariant(row) {
|
|
|
310
310
|
function variantPatch(input) {
|
|
311
311
|
const patch = {};
|
|
312
312
|
const map = {
|
|
313
|
-
sku: "sku",
|
|
314
|
-
price: "price",
|
|
315
313
|
compareAtPrice: "compare_at_price",
|
|
316
314
|
position: "position",
|
|
317
315
|
status: "status",
|
|
@@ -325,15 +323,38 @@ function variantPatch(input) {
|
|
|
325
323
|
for (const [key, column] of Object.entries(map)) {
|
|
326
324
|
const value = input[key];
|
|
327
325
|
if (value === void 0) continue;
|
|
328
|
-
patch[column] =
|
|
326
|
+
patch[column] = value;
|
|
329
327
|
}
|
|
330
328
|
return patch;
|
|
331
329
|
}
|
|
330
|
+
function variantCorePatch(input) {
|
|
331
|
+
const patch = {};
|
|
332
|
+
if (input.sku !== void 0) {
|
|
333
|
+
patch.sku = typeof input.sku === "string" && input.sku.trim() === "" ? null : input.sku;
|
|
334
|
+
}
|
|
335
|
+
if (input.price !== void 0) patch.price = input.price;
|
|
336
|
+
const options = input.options;
|
|
337
|
+
if (options !== void 0) {
|
|
338
|
+
patch.attributes = options;
|
|
339
|
+
patch.name = variantDisplayName(options);
|
|
340
|
+
}
|
|
341
|
+
if (input.status !== void 0) patch.is_active = input.status === "active";
|
|
342
|
+
if (input.position !== void 0) patch.sort_order = input.position;
|
|
343
|
+
return patch;
|
|
344
|
+
}
|
|
345
|
+
function variantDisplayName(options) {
|
|
346
|
+
const parts = Object.values(options ?? {}).filter(Boolean);
|
|
347
|
+
return parts.length > 0 ? parts.join(" / ") : "Variante";
|
|
348
|
+
}
|
|
332
349
|
function rowToStoreSettings(row) {
|
|
333
350
|
const bool = (v) => v == null ? void 0 : Boolean(v);
|
|
334
351
|
const methods = Array.isArray(row.payment_methods) && row.payment_methods.length > 0 ? row.payment_methods : void 0;
|
|
335
352
|
const fields = row.checkout_fields && typeof row.checkout_fields === "object" && Object.keys(row.checkout_fields).length > 0 ? row.checkout_fields : void 0;
|
|
336
353
|
return {
|
|
354
|
+
// O jsonb já vem na forma de ShippingAddressInput (a 0094 guarda assim
|
|
355
|
+
// justamente para não traduzir aqui). Objeto vazio conta como ausente:
|
|
356
|
+
// um endereço sem rua não é um balcão.
|
|
357
|
+
pickupAddress: row.pickup_address && typeof row.pickup_address === "object" && Object.keys(row.pickup_address).length > 0 ? row.pickup_address : void 0,
|
|
337
358
|
currency: row.currency ?? void 0,
|
|
338
359
|
locale: row.locale ?? void 0,
|
|
339
360
|
showOutOfStock: bool(row.show_out_of_stock),
|
|
@@ -380,8 +401,15 @@ function rowToShippingZone(row) {
|
|
|
380
401
|
tenantId: row.tenant_id,
|
|
381
402
|
name: row.name,
|
|
382
403
|
carrier: row.carrier ?? null,
|
|
383
|
-
|
|
384
|
-
|
|
404
|
+
// A pool that has not reached 0081 answers undefined on both: a rule with no
|
|
405
|
+
// declared matcher is a postal range that delivers, which is what every row
|
|
406
|
+
// written before 0081 is.
|
|
407
|
+
matchKind: row.match_kind ?? "postal_range",
|
|
408
|
+
cityCode: row.city_code ?? null,
|
|
409
|
+
districtKey: row.district_key ?? null,
|
|
410
|
+
outcome: row.outcome ?? (row.excluded ? "refuse" : "deliver"),
|
|
411
|
+
postalFrom: row.postal_from == null ? null : String(row.postal_from).trim(),
|
|
412
|
+
postalTo: row.postal_to == null ? null : String(row.postal_to).trim(),
|
|
385
413
|
rate: Number(row.rate ?? 0),
|
|
386
414
|
freeAbove: row.free_above == null ? null : Number(row.free_above),
|
|
387
415
|
etaMinDays: row.eta_min_days ?? null,
|
|
@@ -455,12 +483,27 @@ function stockLocationPayload(input) {
|
|
|
455
483
|
}
|
|
456
484
|
return payload;
|
|
457
485
|
}
|
|
486
|
+
function addressHintPayload(hint) {
|
|
487
|
+
if (!hint) return null;
|
|
488
|
+
const out = {};
|
|
489
|
+
if (hint.district) out.district = hint.district;
|
|
490
|
+
if (hint.city) out.city = hint.city;
|
|
491
|
+
if (hint.state) out.state = hint.state;
|
|
492
|
+
if (hint.cityCode) out.city_code = hint.cityCode;
|
|
493
|
+
return Object.keys(out).length > 0 ? out : null;
|
|
494
|
+
}
|
|
458
495
|
function shippingZonePayload(input) {
|
|
459
496
|
const payload = {};
|
|
460
497
|
if (input.name !== void 0) payload.name = input.name;
|
|
461
498
|
if (input.carrier !== void 0) payload.carrier = input.carrier || null;
|
|
462
|
-
if (input.
|
|
463
|
-
if (input.
|
|
499
|
+
if (input.matchKind != null) payload.match_kind = input.matchKind;
|
|
500
|
+
if (input.cityCode !== void 0) payload.city_code = input.cityCode || null;
|
|
501
|
+
if (input.districtKey !== void 0) payload.district_key = input.districtKey || null;
|
|
502
|
+
if (input.outcome != null) payload.outcome = input.outcome;
|
|
503
|
+
if (input.postalFrom !== void 0)
|
|
504
|
+
payload.postal_from = input.postalFrom ? toPostalDigits(input.postalFrom) : null;
|
|
505
|
+
if (input.postalTo !== void 0)
|
|
506
|
+
payload.postal_to = input.postalTo ? toPostalDigits(input.postalTo) : null;
|
|
464
507
|
if (input.rate != null) payload.rate = input.rate;
|
|
465
508
|
if (input.freeAbove !== void 0) payload.free_above = input.freeAbove ?? null;
|
|
466
509
|
if (input.etaMinDays !== void 0) payload.eta_min_days = input.etaMinDays ?? null;
|
|
@@ -503,6 +546,8 @@ function rowToProduct(row) {
|
|
|
503
546
|
tenantId: row.tenant_id,
|
|
504
547
|
name: row.name,
|
|
505
548
|
slug: row.slug ?? slugify(row.name),
|
|
549
|
+
seoTitle: row.seo_title ?? null,
|
|
550
|
+
seoDescription: row.seo_description ?? null,
|
|
506
551
|
description: row.description,
|
|
507
552
|
price: row.price ?? 0,
|
|
508
553
|
compareAtPrice: row.compare_at_price,
|
|
@@ -865,26 +910,56 @@ var SupabaseShopProvider = class {
|
|
|
865
910
|
const wantedKey = variantOptionsKey(input.options);
|
|
866
911
|
const match = (existing ?? []).find((row) => variantOptionsKey(row.options ?? {}) === wantedKey);
|
|
867
912
|
if (match) return this.updateProductVariant(match.id, { ...input, status: input.status ?? "active" });
|
|
913
|
+
const { data: shopProduct, error: productError } = await db.from(T.products).select("id, product_id, tenant_id").eq("id", productId).single();
|
|
914
|
+
if (productError) throw productError;
|
|
915
|
+
const canonicalProductId = shopProduct.product_id ?? shopProduct.id;
|
|
916
|
+
const { data: coreVariant, error: coreError } = await db.from("product_variants").insert({
|
|
917
|
+
tenant_id: tenantId,
|
|
918
|
+
product_id: canonicalProductId,
|
|
919
|
+
attributes: input.options,
|
|
920
|
+
name: variantDisplayName(input.options),
|
|
921
|
+
...variantCorePatch(input),
|
|
922
|
+
is_default: false
|
|
923
|
+
}).select("id").single();
|
|
924
|
+
if (coreError) throw coreError;
|
|
868
925
|
const { data, error } = await db.from(T.productVariants).insert({
|
|
869
926
|
product_id: productId,
|
|
870
927
|
tenant_id: tenantId,
|
|
871
|
-
|
|
928
|
+
variant_id: coreVariant.id,
|
|
872
929
|
...variantPatch(input),
|
|
873
930
|
// NOT copied from the product: 0028 defines a null price as "inherit the
|
|
874
931
|
// product's", and 0037's header spells out why a copy is a bug — the
|
|
875
932
|
// storefront would show the new product price and the server charge the
|
|
876
933
|
// frozen variant one.
|
|
877
|
-
status: input.status ?? "active"
|
|
878
|
-
|
|
934
|
+
status: input.status ?? "active",
|
|
935
|
+
is_default_variant: false
|
|
936
|
+
}).select("id").single();
|
|
879
937
|
if (error) throw error;
|
|
880
|
-
return
|
|
938
|
+
return this.readVariant(data.id);
|
|
881
939
|
}
|
|
882
|
-
|
|
940
|
+
/** One variant, as the view assembles it from both rows. */
|
|
941
|
+
async readVariant(shopVariantId) {
|
|
883
942
|
const db = getDb();
|
|
884
|
-
const { data, error } = await db.from(
|
|
943
|
+
const { data, error } = await db.from(V.productVariants).select("*").eq("id", shopVariantId).single();
|
|
885
944
|
if (error) throw error;
|
|
886
945
|
return rowToVariant(data);
|
|
887
946
|
}
|
|
947
|
+
async updateProductVariant(variantId, input) {
|
|
948
|
+
const db = getDb();
|
|
949
|
+
const { data: row, error: readError } = await db.from(T.productVariants).select("id, variant_id").eq("id", variantId).single();
|
|
950
|
+
if (readError) throw readError;
|
|
951
|
+
const corePatch = variantCorePatch(input);
|
|
952
|
+
if (Object.keys(corePatch).length > 0 && row.variant_id) {
|
|
953
|
+
const { error } = await db.from("product_variants").update(corePatch).eq("id", row.variant_id);
|
|
954
|
+
if (error) throw error;
|
|
955
|
+
}
|
|
956
|
+
const shopPatch = variantPatch(input);
|
|
957
|
+
if (Object.keys(shopPatch).length > 0) {
|
|
958
|
+
const { error } = await db.from(T.productVariants).update(shopPatch).eq("id", variantId);
|
|
959
|
+
if (error) throw error;
|
|
960
|
+
}
|
|
961
|
+
return this.readVariant(variantId);
|
|
962
|
+
}
|
|
888
963
|
async archiveProductVariant(variantId) {
|
|
889
964
|
const db = getDb();
|
|
890
965
|
const { error } = await db.from(T.productVariants).update({ status: "archived" }).eq("id", variantId);
|
|
@@ -944,6 +1019,8 @@ var SupabaseShopProvider = class {
|
|
|
944
1019
|
tenant_id: tenantId,
|
|
945
1020
|
name: input.name,
|
|
946
1021
|
slug: input.slug ?? slugify(input.name),
|
|
1022
|
+
seo_title: input.seoTitle ?? null,
|
|
1023
|
+
seo_description: input.seoDescription ?? null,
|
|
947
1024
|
description: input.description ?? null,
|
|
948
1025
|
price: input.price,
|
|
949
1026
|
compare_at_price: input.compareAtPrice ?? null,
|
|
@@ -979,6 +1056,8 @@ var SupabaseShopProvider = class {
|
|
|
979
1056
|
updates.slug = input.slug ?? slugify(input.name);
|
|
980
1057
|
}
|
|
981
1058
|
if (input.slug !== void 0) updates.slug = input.slug;
|
|
1059
|
+
if (input.seoTitle !== void 0) updates.seo_title = input.seoTitle;
|
|
1060
|
+
if (input.seoDescription !== void 0) updates.seo_description = input.seoDescription;
|
|
982
1061
|
if (input.description !== void 0) updates.description = input.description;
|
|
983
1062
|
if (input.price !== void 0) updates.price = input.price;
|
|
984
1063
|
if (input.compareAtPrice !== void 0) updates.compare_at_price = input.compareAtPrice;
|
|
@@ -1331,20 +1410,113 @@ var SupabaseShopProvider = class {
|
|
|
1331
1410
|
const { error } = await query;
|
|
1332
1411
|
if (error) throw error;
|
|
1333
1412
|
}
|
|
1334
|
-
async
|
|
1413
|
+
async findAreas(query, limit = 12) {
|
|
1414
|
+
const text = String(query ?? "").trim();
|
|
1415
|
+
if (text.length < 2) return [];
|
|
1416
|
+
const { data, error } = await getDb().rpc("shop_find_areas", {
|
|
1417
|
+
p_query: text,
|
|
1418
|
+
p_limit: limit,
|
|
1419
|
+
// What the store's own state is, so "Ipanema" does not offer a town in
|
|
1420
|
+
// Minas Gerais above the Rio neighbourhood to a store dispatching from
|
|
1421
|
+
// Barra da Tijuca. Null is fine — the search just stops ranking by it.
|
|
1422
|
+
p_tenant_id: getTenantId() ?? null
|
|
1423
|
+
});
|
|
1424
|
+
if (error) return [];
|
|
1425
|
+
return (data ?? []).map((row) => ({
|
|
1426
|
+
kind: row.kind,
|
|
1427
|
+
label: row.label ?? "",
|
|
1428
|
+
cityCode: row.city_code ?? null,
|
|
1429
|
+
cityName: row.city_name ?? null,
|
|
1430
|
+
state: row.state ?? null,
|
|
1431
|
+
districtKey: row.district_key ?? null,
|
|
1432
|
+
members: Array.isArray(row.members) ? row.members.map((m) => ({
|
|
1433
|
+
kind: m.kind,
|
|
1434
|
+
label: m.label ?? "",
|
|
1435
|
+
cityCode: m.city_code ?? null,
|
|
1436
|
+
districtKey: m.district_key ?? null
|
|
1437
|
+
})) : void 0,
|
|
1438
|
+
knownPostalCodes: Number(row.known_postal_codes ?? 0),
|
|
1439
|
+
matchedAs: row.matched_as ?? null
|
|
1440
|
+
}));
|
|
1441
|
+
}
|
|
1442
|
+
/**
|
|
1443
|
+
* Está aberta agora? (0094)
|
|
1444
|
+
*
|
|
1445
|
+
* `null` é uma resposta de primeira classe e a mais importante delas: a base
|
|
1446
|
+
* ainda não recebeu a 0094, a função não existe, e quem chama trata isso como
|
|
1447
|
+
* "sempre aberta" — que é exatamente o que a loja era ontem. Um throw aqui
|
|
1448
|
+
* derrubaria a vitrine de sete lojas por causa de uma migration que não é
|
|
1449
|
+
* delas.
|
|
1450
|
+
*/
|
|
1451
|
+
async getServiceStatus(fulfillmentType) {
|
|
1452
|
+
const tenantId = getTenantId();
|
|
1453
|
+
if (!tenantId) return null;
|
|
1454
|
+
const { data, error } = await getDb().rpc("shop_service_status", {
|
|
1455
|
+
p_tenant_id: tenantId,
|
|
1456
|
+
p_fulfillment_type: fulfillmentType ?? "delivery"
|
|
1457
|
+
});
|
|
1458
|
+
if (error) return null;
|
|
1459
|
+
const row = Array.isArray(data) ? data[0] : data;
|
|
1460
|
+
if (!row) return null;
|
|
1461
|
+
return {
|
|
1462
|
+
open: Boolean(row.open),
|
|
1463
|
+
configured: Boolean(row.configured),
|
|
1464
|
+
timezone: row.timezone ?? "America/Sao_Paulo",
|
|
1465
|
+
closesAt: row.closes_at ?? null,
|
|
1466
|
+
nextOpenAt: row.next_open_at ?? null,
|
|
1467
|
+
reason: row.reason ?? "open"
|
|
1468
|
+
};
|
|
1469
|
+
}
|
|
1470
|
+
/** As janelas agendáveis. Vazio = esta loja não agenda, e a tela não oferece. */
|
|
1471
|
+
async listScheduleSlots(fulfillmentType, from) {
|
|
1472
|
+
const tenantId = getTenantId();
|
|
1473
|
+
if (!tenantId) return [];
|
|
1474
|
+
const { data, error } = await getDb().rpc("shop_schedule_slots", {
|
|
1475
|
+
p_tenant_id: tenantId,
|
|
1476
|
+
p_fulfillment_type: fulfillmentType ?? "delivery",
|
|
1477
|
+
...from ? { p_from: from } : {}
|
|
1478
|
+
});
|
|
1479
|
+
if (error) return [];
|
|
1480
|
+
return (data ?? []).map((row) => ({
|
|
1481
|
+
startsAt: row.starts_at,
|
|
1482
|
+
endsAt: row.ends_at
|
|
1483
|
+
}));
|
|
1484
|
+
}
|
|
1485
|
+
/** O horário semanal, para a tela que o mostra. Vazio = nada declarado. */
|
|
1486
|
+
async listServiceHours(fulfillmentType) {
|
|
1487
|
+
const tenantId = getTenantId();
|
|
1488
|
+
if (!tenantId) return [];
|
|
1489
|
+
const { data, error } = await getDb().from("plg_shop_service_hours").select("weekday,opens_at,closes_at,fulfillment_type").eq("tenant_id", tenantId).eq("active", true).order("weekday", { ascending: true }).order("opens_at", { ascending: true });
|
|
1490
|
+
if (error) return [];
|
|
1491
|
+
const type = fulfillmentType ?? "delivery";
|
|
1492
|
+
return (data ?? []).filter((row) => row.fulfillment_type == null || row.fulfillment_type === type).map((row) => ({
|
|
1493
|
+
weekday: Number(row.weekday),
|
|
1494
|
+
opensAt: String(row.opens_at),
|
|
1495
|
+
closesAt: String(row.closes_at),
|
|
1496
|
+
fulfillmentType: row.fulfillment_type ?? null
|
|
1497
|
+
}));
|
|
1498
|
+
}
|
|
1499
|
+
async checkDelivery(postalCode, address) {
|
|
1335
1500
|
const tenantId = getTenantId();
|
|
1336
1501
|
const digits = String(postalCode ?? "").replace(/\D/g, "");
|
|
1337
1502
|
if (!tenantId || digits.length !== 8) return { refused: false, ownZone: false };
|
|
1338
1503
|
const { data, error } = await getDb().rpc("shop_delivery_check", {
|
|
1339
1504
|
p_tenant_id: tenantId,
|
|
1340
|
-
p_postal_code: digits
|
|
1505
|
+
p_postal_code: digits,
|
|
1506
|
+
// Only ever a HINT. The server prefers what it resolved itself
|
|
1507
|
+
// (public.postal_areas) and answers address_resolved=false when it had to
|
|
1508
|
+
// fall back to this — 0081 §4.
|
|
1509
|
+
p_address: addressHintPayload(address)
|
|
1341
1510
|
});
|
|
1342
1511
|
if (error) return { refused: false, ownZone: false };
|
|
1343
1512
|
const row = Array.isArray(data) ? data[0] : data;
|
|
1344
1513
|
return {
|
|
1345
1514
|
refused: Boolean(row?.refused),
|
|
1346
1515
|
refusedZone: row?.refused_zone ?? null,
|
|
1347
|
-
ownZone: Boolean(row?.own_zone)
|
|
1516
|
+
ownZone: Boolean(row?.own_zone),
|
|
1517
|
+
outcome: row?.outcome ?? null,
|
|
1518
|
+
zoneName: row?.zone_name ?? null,
|
|
1519
|
+
addressResolved: row?.address_resolved !== false
|
|
1348
1520
|
};
|
|
1349
1521
|
}
|
|
1350
1522
|
async getStoreSettings() {
|
|
@@ -1490,11 +1662,13 @@ var SupabaseShopProvider = class {
|
|
|
1490
1662
|
* zones as the fallback, exactly as the storefront resolves it. Advisory
|
|
1491
1663
|
* either way: shop_place_order requotes and ignores whatever a client sends.
|
|
1492
1664
|
*/
|
|
1493
|
-
async quoteShipping(postalCode, subtotal) {
|
|
1665
|
+
async quoteShipping(postalCode, subtotal, address) {
|
|
1494
1666
|
const digits = toPostalDigits(postalCode);
|
|
1495
1667
|
if (!digits) return [];
|
|
1496
1668
|
const tenantId = getTenantId();
|
|
1497
1669
|
if (!tenantId) return [];
|
|
1670
|
+
const refusal = await this.checkDelivery(digits, address).catch(() => null);
|
|
1671
|
+
if (refusal?.refused) return [];
|
|
1498
1672
|
const settings = await this.getStoreSettings().catch(() => null);
|
|
1499
1673
|
if (settings?.carrierQuotes !== false) {
|
|
1500
1674
|
try {
|
|
@@ -1523,7 +1697,8 @@ var SupabaseShopProvider = class {
|
|
|
1523
1697
|
const { data, error } = await getDb().rpc("shop_quote_shipping", {
|
|
1524
1698
|
p_tenant_id: tenantId,
|
|
1525
1699
|
p_postal_code: digits,
|
|
1526
|
-
p_subtotal: subtotal
|
|
1700
|
+
p_subtotal: subtotal,
|
|
1701
|
+
p_address: addressHintPayload(address)
|
|
1527
1702
|
});
|
|
1528
1703
|
if (error) return [];
|
|
1529
1704
|
return (data ?? []).map((row) => ({
|
|
@@ -1684,6 +1859,11 @@ var SupabaseShopProvider = class {
|
|
|
1684
1859
|
* forgot would silently drop it from the order.
|
|
1685
1860
|
*/
|
|
1686
1861
|
orderRpcArgs(input) {
|
|
1862
|
+
const deliveryMeta = input.fulfillmentType !== void 0 || input.scheduledFor !== void 0 ? {
|
|
1863
|
+
...input.fulfillmentType !== void 0 ? { fulfillment_type: input.fulfillmentType } : {},
|
|
1864
|
+
...input.scheduledFor !== void 0 ? { scheduled_for: input.scheduledFor } : {}
|
|
1865
|
+
} : null;
|
|
1866
|
+
const metadata = deliveryMeta || input.metadata !== void 0 ? { ...input.metadata ?? {}, ...deliveryMeta ?? {} } : void 0;
|
|
1687
1867
|
return {
|
|
1688
1868
|
// variant_id rides on each line (0029): the RPC prices and decrements
|
|
1689
1869
|
// the variant when present, product-level otherwise. Pre-0029 servers
|
|
@@ -1692,7 +1872,10 @@ var SupabaseShopProvider = class {
|
|
|
1692
1872
|
product_id: i.productId,
|
|
1693
1873
|
variant_id: asUuid(i.variantId) ?? void 0,
|
|
1694
1874
|
quantity: i.quantity,
|
|
1695
|
-
options_label: i.optionsLabel ?? null
|
|
1875
|
+
options_label: i.optionsLabel ?? null,
|
|
1876
|
+
// 0094. Chave jsonb desconhecida é ignorada por servidor antigo, então
|
|
1877
|
+
// isto é seguro de mandar sempre — ao contrário de um argumento nomeado.
|
|
1878
|
+
notes: i.notes ?? null
|
|
1696
1879
|
})),
|
|
1697
1880
|
p_customer_id: asUuid(input.customerId),
|
|
1698
1881
|
p_customer_name: input.customer?.name ?? null,
|
|
@@ -1725,7 +1908,7 @@ var SupabaseShopProvider = class {
|
|
|
1725
1908
|
// Only when something contributed: p_metadata exists from 0029 on, and
|
|
1726
1909
|
// a pre-0029 server rejects unknown NAMED arguments (unlike unknown
|
|
1727
1910
|
// jsonb keys). Absent metadata therefore must not send the key at all.
|
|
1728
|
-
...
|
|
1911
|
+
...metadata !== void 0 ? { p_metadata: metadata } : {}
|
|
1729
1912
|
};
|
|
1730
1913
|
}
|
|
1731
1914
|
async placeOrder(input) {
|