shopoflex-types 1.0.77 → 1.0.79

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 (2) hide show
  1. package/dist/common.d.ts +29 -13
  2. package/package.json +1 -1
package/dist/common.d.ts CHANGED
@@ -61,6 +61,22 @@ export interface Address {
61
61
  country?: string;
62
62
  details: string;
63
63
  }
64
+ export interface PaymentMethod {
65
+ type: 'cash' | 'card' | 'knet' | 'bank_transfer' | 'wallet' | 'external_link' | 'crypto' | 'whish' | 'paypal' | 'gift_card';
66
+ }
67
+ export interface OrderStatus {
68
+ status: 'pending' | 'cancelled' | 'rejected' | 'refunded' | 'preparing' | 'delivering' | 'completed' | 'awaiting_payment';
69
+ }
70
+ export interface OrderTypeOptions {
71
+ type: 'delivery' | 'instore' | 'pickup';
72
+ }
73
+ export interface UnitType {
74
+ unit: 'piece' | 'kg' | 'g' | 'liter' | 'ml' | 'meter' | 'cm' | 'pack' | 'box' | 'bottle' | 'bag' | 'dozen' | 'sqm' | 'hour' | 'day' | 'week' | 'month' | 'year';
75
+ }
76
+ export type PickType = OrderTypeOptions['type'];
77
+ export type PaymentMethodType = PaymentMethod['type'];
78
+ export type OrderStatusType = OrderStatus['status'];
79
+ export type UnitTypeValue = UnitType['unit'];
64
80
  export interface PriceModel {
65
81
  price: number;
66
82
  discountedPrice?: number;
@@ -68,7 +84,7 @@ export interface PriceModel {
68
84
  cost?: number;
69
85
  allowDecimal?: boolean;
70
86
  minQuantity?: number;
71
- unit?: string;
87
+ unit: UnitTypeValue;
72
88
  }
73
89
  export interface Dimensions {
74
90
  active: boolean;
@@ -224,6 +240,7 @@ export interface CartItem {
224
240
  categoriesIds: string[];
225
241
  price: number;
226
242
  quantity: number;
243
+ unit: UnitTypeValue;
227
244
  name?: {
228
245
  en?: string;
229
246
  ar?: string;
@@ -235,6 +252,7 @@ export interface CartItem {
235
252
  selectedVariant: VariantType | null;
236
253
  finalPrice?: number;
237
254
  files?: FileType[];
255
+ total?: number;
238
256
  }
239
257
  export interface Cart {
240
258
  _id?: string;
@@ -244,6 +262,7 @@ export interface Cart {
244
262
  discount: number;
245
263
  delivery: number;
246
264
  total: number;
265
+ totalsByUnit?: Record<UnitTypeValue, number>;
247
266
  }
248
267
  export interface CartState {
249
268
  items: CartItem[];
@@ -253,6 +272,7 @@ export interface CartState {
253
272
  delivery: number;
254
273
  total: number;
255
274
  promoCode?: Discount;
275
+ totalsByUnit?: Record<UnitTypeValue, number>;
256
276
  }
257
277
  export interface CartModelType extends Cart {
258
278
  customer: Customer | any;
@@ -264,6 +284,14 @@ export interface CartModelType extends Cart {
264
284
  discount: number;
265
285
  delivery: number;
266
286
  total: number;
287
+ totalsByUnit?: Record<UnitTypeValue, number>;
288
+ }
289
+ export interface UnitAnalytics {
290
+ unit: UnitTypeValue;
291
+ totalQuantity: number;
292
+ totalRevenue: number;
293
+ orderCount: number;
294
+ avgOrderValue: number;
267
295
  }
268
296
  export interface PaymentDetails {
269
297
  method: string;
@@ -500,18 +528,6 @@ export interface NotificationType {
500
528
  createdAt?: Date;
501
529
  updatedAt?: Date;
502
530
  }
503
- export interface PaymentMethod {
504
- type: 'cash' | 'card' | 'knet' | 'bank_transfer' | 'wallet' | 'external_link' | 'crypto' | 'whish' | 'paypal' | 'gift_card';
505
- }
506
- export interface OrderStatus {
507
- status: 'pending' | 'cancelled' | 'rejected' | 'refunded' | 'preparing' | 'delivering' | 'completed' | 'awaiting_payment';
508
- }
509
- export interface OrderTypeOptions {
510
- type: 'delivery' | 'instore' | 'pickup';
511
- }
512
- export type PickType = OrderTypeOptions['type'];
513
- export type PaymentMethodType = PaymentMethod['type'];
514
- export type OrderStatusType = OrderStatus['status'];
515
531
  export interface SelectionsState {
516
532
  address?: Address;
517
533
  branch?: IBranch;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "shopoflex-types",
3
- "version": "1.0.77",
3
+ "version": "1.0.79",
4
4
  "description": "Shared TypeScript types for Shopoflex applications",
5
5
  "main": "dist/index.js",
6
6
  "types": "dist/index.d.ts",