@favcrm/sdk 0.1.2 → 0.1.3

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 (43) hide show
  1. package/dist/browser.d.ts +21 -1
  2. package/dist/browser.d.ts.map +1 -1
  3. package/dist/checkout.d.ts.map +1 -1
  4. package/dist/checkout.js +1 -0
  5. package/dist/checkout.js.map +1 -1
  6. package/dist/client.d.ts +10 -0
  7. package/dist/client.d.ts.map +1 -1
  8. package/dist/client.js +11 -0
  9. package/dist/client.js.map +1 -1
  10. package/dist/index.d.ts +10 -6
  11. package/dist/index.d.ts.map +1 -1
  12. package/dist/index.js +2 -2
  13. package/dist/index.js.map +1 -1
  14. package/dist/members.d.ts.map +1 -1
  15. package/dist/members.js +3 -0
  16. package/dist/members.js.map +1 -1
  17. package/dist/shop.d.ts +19 -2
  18. package/dist/shop.d.ts.map +1 -1
  19. package/dist/shop.js +93 -2
  20. package/dist/shop.js.map +1 -1
  21. package/dist/types/blog.d.ts +42 -0
  22. package/dist/types/blog.d.ts.map +1 -0
  23. package/dist/types/blog.js +2 -0
  24. package/dist/types/blog.js.map +1 -0
  25. package/dist/types/booking.d.ts +34 -1
  26. package/dist/types/booking.d.ts.map +1 -1
  27. package/dist/types/contact.d.ts +12 -0
  28. package/dist/types/contact.d.ts.map +1 -0
  29. package/dist/types/contact.js +2 -0
  30. package/dist/types/contact.js.map +1 -0
  31. package/dist/types/invoice.d.ts +24 -0
  32. package/dist/types/invoice.d.ts.map +1 -0
  33. package/dist/types/invoice.js +2 -0
  34. package/dist/types/invoice.js.map +1 -0
  35. package/dist/types/member.d.ts +19 -0
  36. package/dist/types/member.d.ts.map +1 -1
  37. package/dist/types/shop.d.ts +36 -0
  38. package/dist/types/shop.d.ts.map +1 -1
  39. package/dist/validation.d.ts +6 -0
  40. package/dist/validation.d.ts.map +1 -1
  41. package/dist/validation.js +16 -0
  42. package/dist/validation.js.map +1 -1
  43. package/package.json +1 -1
package/dist/browser.d.ts CHANGED
@@ -1,14 +1,28 @@
1
1
  import { FavCRMClient } from './client.js';
2
+ import * as shop from './shop.js';
2
3
  import * as checkout from './checkout.js';
3
4
  import * as validation from './validation.js';
4
5
  declare const FavCRM: {
6
+ normalizeSearchQuery(query: string): string;
7
+ matchesSearchQuery(product: Pick<import("./index.js").ProductListItem, "description" | "name">, query: string): boolean;
8
+ filterProducts<T extends Pick<import("./index.js").ProductListItem, "description" | "name">>(products: T[], query: string): T[];
9
+ filterProductsByCategory<T extends Pick<import("./index.js").ProductListItem, "categories">>(products: T[], categorySlug: string): T[];
10
+ highlightSearchMatch(text: string, query: string): shop.SearchMatchSegment[];
5
11
  getEffectivePrice(product: Pick<import("./index.js").ProductListItem, "discountPrice" | "memberPrice" | "price">): number;
6
12
  hasDiscount(product: Pick<import("./index.js").ProductListItem, "discountPrice" | "memberPrice" | "price">): boolean;
7
13
  isInStock(stockStatus: string): boolean;
8
14
  getProductLink(product: Pick<import("./index.js").ProductListItem, "id" | "slug">): string;
9
15
  getCategoryLabel(product: Pick<import("./index.js").ProductListItem, "categories" | "categoryName">): string;
10
16
  getPrimaryImage(product: Pick<import("./index.js").Product, "images">): import("./index.js").ProductImage | null;
11
- toCartProduct(product: import("./index.js").Product): import("./index.js").ProductListItem;
17
+ toCartProduct(product: import("./index.js").Product, variation?: import("./index.js").ProductVariation | undefined): import("./index.js").ProductListItem;
18
+ findVariation(variations: import("./index.js").ProductVariation[], selections: Record<string, string>): import("./index.js").ProductVariation | undefined;
19
+ getVariationLabel(variation: import("./index.js").ProductVariation): string;
20
+ isSubscriptionProduct(product: Pick<import("./index.js").ProductListItem, "productType">): boolean;
21
+ formatSubscriptionPrice(price: number, billingCycle: string, currency?: string): string;
22
+ getMonthlyEquivalent(plan: {
23
+ price: number;
24
+ billingCycle: string;
25
+ }): number;
12
26
  calculateFinalTotal(cartTotal: number, discountAmount: number, shippingCost: number): number;
13
27
  validateCheckoutForm(fields: Pick<checkout.CheckoutFormFields, "addressLine1" | "city" | "firstName" | "lastName">): string | null;
14
28
  buildCreateOrderRequest(cart: import("./index.js").CartItem[], form: checkout.CheckoutFormFields, shippingMethodId: number | null, promotionCode?: string | undefined): import("./index.js").CreateOrderRequest;
@@ -20,6 +34,12 @@ declare const FavCRM: {
20
34
  validateRequired(fields: Record<string, unknown>, required: string[]): string | null;
21
35
  validateRegistrationForm(data: Partial<import("./index.js").RegistrationSubmission>): validation.ValidationError[];
22
36
  validateEventRegistrationForm(data: Partial<import("./index.js").EventRegistrationSubmission>): validation.ValidationError[];
37
+ validateContactForm(data: Partial<{
38
+ name: string;
39
+ email: string;
40
+ phone?: string | undefined;
41
+ message: string;
42
+ }>): validation.ValidationError[];
23
43
  Client: typeof FavCRMClient;
24
44
  };
25
45
  export default FavCRM;
@@ -1 +1 @@
1
- {"version":3,"file":"browser.d.ts","sourceRoot":"","sources":["../src/browser.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAE3C,OAAO,KAAK,QAAQ,MAAM,eAAe,CAAC;AAE1C,OAAO,KAAK,UAAU,MAAM,iBAAiB,CAAC;AAE9C,QAAA,MAAM,MAAM;;;;;;;;;;;;;;;;;;;;CAMX,CAAC;AAMF,eAAe,MAAM,CAAC"}
1
+ {"version":3,"file":"browser.d.ts","sourceRoot":"","sources":["../src/browser.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAC3C,OAAO,KAAK,IAAI,MAAM,WAAW,CAAC;AAClC,OAAO,KAAK,QAAQ,MAAM,eAAe,CAAC;AAE1C,OAAO,KAAK,UAAU,MAAM,iBAAiB,CAAC;AAE9C,QAAA,MAAM,MAAM;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAMX,CAAC;AAMF,eAAe,MAAM,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"checkout.d.ts","sourceRoot":"","sources":["../src/checkout.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAE,kBAAkB,EAAE,MAAM,iBAAiB,CAAC;AAEpE,MAAM,WAAW,kBAAkB;IACjC,SAAS,EAAE,MAAM,CAAC;IAClB,QAAQ,EAAE,MAAM,CAAC;IACjB,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,MAAM,CAAC;IACd,YAAY,EAAE,MAAM,CAAC;IACrB,YAAY,EAAE,MAAM,CAAC;IACrB,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,MAAM,CAAC;CACjB;AAED,wBAAgB,mBAAmB,CACjC,SAAS,EAAE,MAAM,EACjB,cAAc,EAAE,MAAM,EACtB,YAAY,EAAE,MAAM,GACnB,MAAM,CAER;AAED,wBAAgB,oBAAoB,CAClC,MAAM,EAAE,IAAI,CAAC,kBAAkB,EAAE,WAAW,GAAG,UAAU,GAAG,cAAc,GAAG,MAAM,CAAC,GACnF,MAAM,GAAG,IAAI,CAUf;AAED,wBAAgB,uBAAuB,CACrC,IAAI,EAAE,QAAQ,EAAE,EAChB,IAAI,EAAE,kBAAkB,EACxB,gBAAgB,EAAE,MAAM,GAAG,IAAI,EAC/B,aAAa,CAAC,EAAE,MAAM,GACrB,kBAAkB,CAqBpB"}
1
+ {"version":3,"file":"checkout.d.ts","sourceRoot":"","sources":["../src/checkout.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAE,kBAAkB,EAAE,MAAM,iBAAiB,CAAC;AAEpE,MAAM,WAAW,kBAAkB;IACjC,SAAS,EAAE,MAAM,CAAC;IAClB,QAAQ,EAAE,MAAM,CAAC;IACjB,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,MAAM,CAAC;IACd,YAAY,EAAE,MAAM,CAAC;IACrB,YAAY,EAAE,MAAM,CAAC;IACrB,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,MAAM,CAAC;CACjB;AAED,wBAAgB,mBAAmB,CACjC,SAAS,EAAE,MAAM,EACjB,cAAc,EAAE,MAAM,EACtB,YAAY,EAAE,MAAM,GACnB,MAAM,CAER;AAED,wBAAgB,oBAAoB,CAClC,MAAM,EAAE,IAAI,CAAC,kBAAkB,EAAE,WAAW,GAAG,UAAU,GAAG,cAAc,GAAG,MAAM,CAAC,GACnF,MAAM,GAAG,IAAI,CAUf;AAED,wBAAgB,uBAAuB,CACrC,IAAI,EAAE,QAAQ,EAAE,EAChB,IAAI,EAAE,kBAAkB,EACxB,gBAAgB,EAAE,MAAM,GAAG,IAAI,EAC/B,aAAa,CAAC,EAAE,MAAM,GACrB,kBAAkB,CAsBpB"}
package/dist/checkout.js CHANGED
@@ -15,6 +15,7 @@ export function buildCreateOrderRequest(cart, form, shippingMethodId, promotionC
15
15
  lineItems: cart.map((item) => ({
16
16
  productId: item.product.id,
17
17
  quantity: item.quantity,
18
+ ...(item.variationId != null && { variationId: item.variationId }),
18
19
  })),
19
20
  customerInfo: {
20
21
  firstName: form.firstName.trim(),
@@ -1 +1 @@
1
- {"version":3,"file":"checkout.js","sourceRoot":"","sources":["../src/checkout.ts"],"names":[],"mappings":"AAaA,MAAM,UAAU,mBAAmB,CACjC,SAAiB,EACjB,cAAsB,EACtB,YAAoB;IAEpB,OAAO,IAAI,CAAC,GAAG,CAAC,SAAS,GAAG,cAAc,GAAG,YAAY,EAAE,CAAC,CAAC,CAAC;AAChE,CAAC;AAED,MAAM,UAAU,oBAAoB,CAClC,MAAoF;IAEpF,IACE,CAAC,MAAM,CAAC,SAAS,CAAC,IAAI,EAAE;QACxB,CAAC,MAAM,CAAC,QAAQ,CAAC,IAAI,EAAE;QACvB,CAAC,MAAM,CAAC,YAAY,CAAC,IAAI,EAAE;QAC3B,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,EAAE,EACnB,CAAC;QACD,OAAO,yBAAyB,CAAC;IACnC,CAAC;IACD,OAAO,IAAI,CAAC;AACd,CAAC;AAED,MAAM,UAAU,uBAAuB,CACrC,IAAgB,EAChB,IAAwB,EACxB,gBAA+B,EAC/B,aAAsB;IAEtB,OAAO;QACL,SAAS,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC;YAC7B,SAAS,EAAE,IAAI,CAAC,OAAO,CAAC,EAAE;YAC1B,QAAQ,EAAE,IAAI,CAAC,QAAQ;SACxB,CAAC,CAAC;QACH,YAAY,EAAE;YACZ,SAAS,EAAE,IAAI,CAAC,SAAS,CAAC,IAAI,EAAE;YAChC,QAAQ,EAAE,IAAI,CAAC,QAAQ,CAAC,IAAI,EAAE;YAC9B,KAAK,EAAE,IAAI,CAAC,KAAK,CAAC,IAAI,EAAE,IAAI,SAAS;YACrC,KAAK,EAAE,IAAI,CAAC,KAAK,CAAC,IAAI,EAAE,IAAI,SAAS;SACtC;QACD,eAAe,EAAE;YACf,YAAY,EAAE,IAAI,CAAC,YAAY,CAAC,IAAI,EAAE;YACtC,YAAY,EAAE,IAAI,CAAC,YAAY,CAAC,IAAI,EAAE,IAAI,SAAS;YACnD,IAAI,EAAE,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE;YACtB,OAAO,EAAE,IAAI,CAAC,OAAO;SACtB;QACD,gBAAgB,EAAE,gBAAgB,IAAI,SAAS;QAC/C,aAAa;KACd,CAAC;AACJ,CAAC"}
1
+ {"version":3,"file":"checkout.js","sourceRoot":"","sources":["../src/checkout.ts"],"names":[],"mappings":"AAaA,MAAM,UAAU,mBAAmB,CACjC,SAAiB,EACjB,cAAsB,EACtB,YAAoB;IAEpB,OAAO,IAAI,CAAC,GAAG,CAAC,SAAS,GAAG,cAAc,GAAG,YAAY,EAAE,CAAC,CAAC,CAAC;AAChE,CAAC;AAED,MAAM,UAAU,oBAAoB,CAClC,MAAoF;IAEpF,IACE,CAAC,MAAM,CAAC,SAAS,CAAC,IAAI,EAAE;QACxB,CAAC,MAAM,CAAC,QAAQ,CAAC,IAAI,EAAE;QACvB,CAAC,MAAM,CAAC,YAAY,CAAC,IAAI,EAAE;QAC3B,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,EAAE,EACnB,CAAC;QACD,OAAO,yBAAyB,CAAC;IACnC,CAAC;IACD,OAAO,IAAI,CAAC;AACd,CAAC;AAED,MAAM,UAAU,uBAAuB,CACrC,IAAgB,EAChB,IAAwB,EACxB,gBAA+B,EAC/B,aAAsB;IAEtB,OAAO;QACL,SAAS,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC;YAC7B,SAAS,EAAE,IAAI,CAAC,OAAO,CAAC,EAAE;YAC1B,QAAQ,EAAE,IAAI,CAAC,QAAQ;YACvB,GAAG,CAAC,IAAI,CAAC,WAAW,IAAI,IAAI,IAAI,EAAE,WAAW,EAAE,IAAI,CAAC,WAAW,EAAE,CAAC;SACnE,CAAC,CAAC;QACH,YAAY,EAAE;YACZ,SAAS,EAAE,IAAI,CAAC,SAAS,CAAC,IAAI,EAAE;YAChC,QAAQ,EAAE,IAAI,CAAC,QAAQ,CAAC,IAAI,EAAE;YAC9B,KAAK,EAAE,IAAI,CAAC,KAAK,CAAC,IAAI,EAAE,IAAI,SAAS;YACrC,KAAK,EAAE,IAAI,CAAC,KAAK,CAAC,IAAI,EAAE,IAAI,SAAS;SACtC;QACD,eAAe,EAAE;YACf,YAAY,EAAE,IAAI,CAAC,YAAY,CAAC,IAAI,EAAE;YACtC,YAAY,EAAE,IAAI,CAAC,YAAY,CAAC,IAAI,EAAE,IAAI,SAAS;YACnD,IAAI,EAAE,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE;YACtB,OAAO,EAAE,IAAI,CAAC,OAAO;SACtB;QACD,gBAAgB,EAAE,gBAAgB,IAAI,SAAS;QAC/C,aAAa;KACd,CAAC;AACJ,CAAC"}
package/dist/client.d.ts CHANGED
@@ -3,6 +3,7 @@ import type { ApiEvent, EventRegistrationSubmission, EventRegistrationResult } f
3
3
  import type { CouponClaimSubmission, CouponClaimResult } from './types/portal.js';
4
4
  import type { Product, ProductListItem, ShopCategory, ShippingMethod, CreateOrderRequest, ShopOrder } from './types/shop.js';
5
5
  import type { PromotionValidationRequest, PromotionValidationResponse } from './types/promotion.js';
6
+ import type { BlogPostListItem, BlogPost, BlogCategory } from './types/blog.js';
6
7
  export interface FavCRMConfig {
7
8
  baseUrl: string;
8
9
  brandUuid: string;
@@ -31,6 +32,15 @@ export declare class FavCRMClient {
31
32
  getShippingMethods(): Promise<ShippingMethod[]>;
32
33
  getEvents(): Promise<ApiEvent[]>;
33
34
  getEvent(slug: string): Promise<ApiEvent>;
35
+ getBlogPosts(params?: BlogListParams): Promise<BlogPostListItem[]>;
36
+ getBlogPost(slug: string): Promise<BlogPost>;
37
+ getBlogCategories(): Promise<BlogCategory[]>;
38
+ }
39
+ export interface BlogListParams {
40
+ category?: string;
41
+ tag?: string;
42
+ page?: number;
43
+ pageSize?: number;
34
44
  }
35
45
  export interface ProductListParams {
36
46
  category?: string;
@@ -1 +1 @@
1
- {"version":3,"file":"client.d.ts","sourceRoot":"","sources":["../src/client.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,sBAAsB,EAAE,kBAAkB,EAAE,MAAM,mBAAmB,CAAC;AACpF,OAAO,KAAK,EAAE,QAAQ,EAAE,2BAA2B,EAAE,uBAAuB,EAAE,MAAM,kBAAkB,CAAC;AACvG,OAAO,KAAK,EAAE,qBAAqB,EAAE,iBAAiB,EAAE,MAAM,mBAAmB,CAAC;AAClF,OAAO,KAAK,EACV,OAAO,EACP,eAAe,EACf,YAAY,EACZ,cAAc,EACd,kBAAkB,EAClB,SAAS,EACV,MAAM,iBAAiB,CAAC;AACzB,OAAO,KAAK,EAAE,0BAA0B,EAAE,2BAA2B,EAAE,MAAM,sBAAsB,CAAC;AAEpG,MAAM,WAAW,YAAY;IAC3B,OAAO,EAAE,MAAM,CAAC;IAChB,SAAS,EAAE,MAAM,CAAC;IAClB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAED,qBAAa,WAAY,SAAQ,KAAK;IACpC,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAElC,YAAY,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAK3E;CACF;AAED,KAAK,UAAU,GAAG,KAAK,GAAG,MAAM,GAAG,KAAK,GAAG,OAAO,GAAG,QAAQ,CAAC;AAE9D,qBAAa,YAAY;IACvB,OAAO,CAAC,MAAM,CAAe;IAC7B,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAS;IAEnC,YAAY,MAAM,EAAE,YAAY,EAG/B;IAEK,OAAO,CAAC,CAAC,EAAE,MAAM,EAAE,UAAU,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,OAAO,GAAG,OAAO,CAAC,CAAC,CAAC,CAwD7E;IAIK,kBAAkB,CAAC,IAAI,EAAE,sBAAsB,GAAG,OAAO,CAAC,kBAAkB,CAAC,CAElF;IAEK,uBAAuB,CAAC,IAAI,EAAE,2BAA2B,GAAG,OAAO,CAAC,uBAAuB,CAAC,CAEjG;IAEK,WAAW,CAAC,IAAI,EAAE,kBAAkB,GAAG,OAAO,CAAC,SAAS,CAAC,CAE9D;IAEK,WAAW,CAAC,IAAI,EAAE,qBAAqB,GAAG,OAAO,CAAC,iBAAiB,CAAC,CAEzE;IAEK,iBAAiB,CAAC,IAAI,EAAE,0BAA0B,GAAG,OAAO,CAAC,2BAA2B,CAAC,CAE9F;IAIK,WAAW,CAAC,MAAM,CAAC,EAAE,iBAAiB,GAAG,OAAO,CAAC,eAAe,EAAE,CAAC,CAGxE;IAEK,UAAU,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC,CAE/C;IAEK,aAAa,IAAI,OAAO,CAAC,YAAY,EAAE,CAAC,CAE7C;IAEK,kBAAkB,IAAI,OAAO,CAAC,cAAc,EAAE,CAAC,CAEpD;IAEK,SAAS,IAAI,OAAO,CAAC,QAAQ,EAAE,CAAC,CAErC;IAEK,QAAQ,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,QAAQ,CAAC,CAE9C;CACF;AAED,MAAM,WAAW,iBAAiB;IAChC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB"}
1
+ {"version":3,"file":"client.d.ts","sourceRoot":"","sources":["../src/client.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,sBAAsB,EAAE,kBAAkB,EAAE,MAAM,mBAAmB,CAAC;AACpF,OAAO,KAAK,EAAE,QAAQ,EAAE,2BAA2B,EAAE,uBAAuB,EAAE,MAAM,kBAAkB,CAAC;AACvG,OAAO,KAAK,EAAE,qBAAqB,EAAE,iBAAiB,EAAE,MAAM,mBAAmB,CAAC;AAClF,OAAO,KAAK,EACV,OAAO,EACP,eAAe,EACf,YAAY,EACZ,cAAc,EACd,kBAAkB,EAClB,SAAS,EACV,MAAM,iBAAiB,CAAC;AACzB,OAAO,KAAK,EAAE,0BAA0B,EAAE,2BAA2B,EAAE,MAAM,sBAAsB,CAAC;AACpG,OAAO,KAAK,EAAE,gBAAgB,EAAE,QAAQ,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAEhF,MAAM,WAAW,YAAY;IAC3B,OAAO,EAAE,MAAM,CAAC;IAChB,SAAS,EAAE,MAAM,CAAC;IAClB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAED,qBAAa,WAAY,SAAQ,KAAK;IACpC,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAElC,YAAY,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAK3E;CACF;AAED,KAAK,UAAU,GAAG,KAAK,GAAG,MAAM,GAAG,KAAK,GAAG,OAAO,GAAG,QAAQ,CAAC;AAE9D,qBAAa,YAAY;IACvB,OAAO,CAAC,MAAM,CAAe;IAC7B,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAS;IAEnC,YAAY,MAAM,EAAE,YAAY,EAG/B;IAEK,OAAO,CAAC,CAAC,EAAE,MAAM,EAAE,UAAU,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,OAAO,GAAG,OAAO,CAAC,CAAC,CAAC,CAwD7E;IAIK,kBAAkB,CAAC,IAAI,EAAE,sBAAsB,GAAG,OAAO,CAAC,kBAAkB,CAAC,CAElF;IAEK,uBAAuB,CAAC,IAAI,EAAE,2BAA2B,GAAG,OAAO,CAAC,uBAAuB,CAAC,CAEjG;IAEK,WAAW,CAAC,IAAI,EAAE,kBAAkB,GAAG,OAAO,CAAC,SAAS,CAAC,CAE9D;IAEK,WAAW,CAAC,IAAI,EAAE,qBAAqB,GAAG,OAAO,CAAC,iBAAiB,CAAC,CAEzE;IAEK,iBAAiB,CAAC,IAAI,EAAE,0BAA0B,GAAG,OAAO,CAAC,2BAA2B,CAAC,CAE9F;IAIK,WAAW,CAAC,MAAM,CAAC,EAAE,iBAAiB,GAAG,OAAO,CAAC,eAAe,EAAE,CAAC,CAGxE;IAEK,UAAU,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC,CAE/C;IAEK,aAAa,IAAI,OAAO,CAAC,YAAY,EAAE,CAAC,CAE7C;IAEK,kBAAkB,IAAI,OAAO,CAAC,cAAc,EAAE,CAAC,CAEpD;IAEK,SAAS,IAAI,OAAO,CAAC,QAAQ,EAAE,CAAC,CAErC;IAEK,QAAQ,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,QAAQ,CAAC,CAE9C;IAIK,YAAY,CAAC,MAAM,CAAC,EAAE,cAAc,GAAG,OAAO,CAAC,gBAAgB,EAAE,CAAC,CAGvE;IAEK,WAAW,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,QAAQ,CAAC,CAEjD;IAEK,iBAAiB,IAAI,OAAO,CAAC,YAAY,EAAE,CAAC,CAEjD;CACF;AAED,MAAM,WAAW,cAAc;IAC7B,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB;AAED,MAAM,WAAW,iBAAiB;IAChC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB"}
package/dist/client.js CHANGED
@@ -97,6 +97,17 @@ export class FavCRMClient {
97
97
  async getEvent(slug) {
98
98
  return this.request('GET', `${this.brandPath}/events/${slug}/`);
99
99
  }
100
+ // --- Blog endpoints (public, no auth needed) ---
101
+ async getBlogPosts(params) {
102
+ const qs = params ? `?${new URLSearchParams(toStringRecord(params))}` : '';
103
+ return this.request('GET', `${this.brandPath}/blog/posts/${qs}`);
104
+ }
105
+ async getBlogPost(slug) {
106
+ return this.request('GET', `${this.brandPath}/blog/posts/${slug}/`);
107
+ }
108
+ async getBlogCategories() {
109
+ return this.request('GET', `${this.brandPath}/blog/categories/`);
110
+ }
100
111
  }
101
112
  function toStringRecord(obj) {
102
113
  const result = {};
@@ -1 +1 @@
1
- {"version":3,"file":"client.js","sourceRoot":"","sources":["../src/client.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"client.js","sourceRoot":"","sources":["../src/client.ts"],"names":[],"mappings":"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"}
package/dist/index.d.ts CHANGED
@@ -1,18 +1,22 @@
1
- export type { ProductImage, ProductOptionValue, ProductOption, ProductVariation, CategoryRef, Product, ProductListItem, CartItem, ShopCategory, ShippingMethod, CreateOrderRequest, ShopOrderItem, ShopOrder, } from './types/shop.js';
1
+ export type { ProductImage, ProductOptionValue, ProductOption, ProductVariation, CategoryRef, Product, ProductListItem, CartItem, ShopCategory, ShippingMethod, CreateOrderRequest, ShopOrderItem, ShopOrder, SubscriptionPlan, ProductSubscription, } from './types/shop.js';
2
2
  export type { PromotionValidationRequest, PromotionValidationResponse, AppliedCoupon, } from './types/promotion.js';
3
- export type { MembershipTier, Member, ApiMembershipTier, ApiMember, CardSettings, PaymentMethod, RegistrationField, RegistrationFormConfig, ReferralLookupResult, RegistrationSubmission, RegistrationResult, } from './types/member.js';
3
+ export type { MembershipTier, Member, ApiMembershipTier, ApiMember, CardSettings, CardField, CardLayoutConfig, PaymentMethod, RegistrationField, RegistrationFormConfig, ReferralLookupResult, RegistrationSubmission, RegistrationResult, } from './types/member.js';
4
4
  export type { ApiEvent, ApiEventDate, EventDate, EventStatus, Event, EventRegistrationStatus, EventRegistration, EventRegistrationSubmission, EventRegistrationResult, } from './types/event.js';
5
- export type { BookingService, BookingStatus, Booking, TimeSlot, } from './types/booking.js';
5
+ export type { BookingService, BookingStatus, Booking, BookingDetail, BookingLineItem, BookingStatusChange, TimeSlot, BookingConfig, } from './types/booking.js';
6
+ export type { InvoiceStatus, Invoice, InvoiceLineItem, InvoiceDetail, } from './types/invoice.js';
7
+ export type { BlogAuthor, BlogCategory, BlogTag, BlogPostListItem, BlogPost, } from './types/blog.js';
8
+ export type { ContactEnquirySubmission, ContactEnquiryResult, } from './types/contact.js';
6
9
  export type { CouponClaimSubmission, CouponClaimResult, PortalConfig, FeatureKey, } from './types/portal.js';
7
10
  export { MODULE_CODE_TO_FEATURE, ALL_FEATURE_KEYS, modulesToFeatures } from './modules.js';
8
11
  export { mapApiEvent } from './events.js';
9
12
  export { mapApiMember } from './members.js';
10
- export { getEffectivePrice, hasDiscount, isInStock, getProductLink, getCategoryLabel, getPrimaryImage, toCartProduct, } from './shop.js';
13
+ export { getEffectivePrice, hasDiscount, isInStock, getProductLink, getCategoryLabel, getPrimaryImage, toCartProduct, findVariation, getVariationLabel, normalizeSearchQuery, matchesSearchQuery, filterProducts, filterProductsByCategory, highlightSearchMatch, isSubscriptionProduct, formatSubscriptionPrice, getMonthlyEquivalent, } from './shop.js';
14
+ export type { SearchMatchSegment } from './shop.js';
11
15
  export { calculateFinalTotal, validateCheckoutForm, buildCreateOrderRequest, } from './checkout.js';
12
16
  export type { CheckoutFormFields } from './checkout.js';
13
17
  export { buildAppliedCoupon, getCouponErrorMessage } from './coupon.js';
14
18
  export { FavCRMClient, FavCRMError } from './client.js';
15
- export type { FavCRMConfig, ProductListParams } from './client.js';
16
- export { validateEmail, validatePhone, validateOtp, validateRequired, validateRegistrationForm, validateEventRegistrationForm, } from './validation.js';
19
+ export type { FavCRMConfig, BlogListParams, ProductListParams } from './client.js';
20
+ export { validateEmail, validatePhone, validateOtp, validateRequired, validateRegistrationForm, validateEventRegistrationForm, validateContactForm, } from './validation.js';
17
21
  export type { ValidationError } from './validation.js';
18
22
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AACA,YAAY,EACV,YAAY,EACZ,kBAAkB,EAClB,aAAa,EACb,gBAAgB,EAChB,WAAW,EACX,OAAO,EACP,eAAe,EACf,QAAQ,EACR,YAAY,EACZ,cAAc,EACd,kBAAkB,EAClB,aAAa,EACb,SAAS,GACV,MAAM,iBAAiB,CAAC;AAEzB,YAAY,EACV,0BAA0B,EAC1B,2BAA2B,EAC3B,aAAa,GACd,MAAM,sBAAsB,CAAC;AAG9B,YAAY,EACV,cAAc,EACd,MAAM,EACN,iBAAiB,EACjB,SAAS,EACT,YAAY,EACZ,aAAa,EACb,iBAAiB,EACjB,sBAAsB,EACtB,oBAAoB,EACpB,sBAAsB,EACtB,kBAAkB,GACnB,MAAM,mBAAmB,CAAC;AAG3B,YAAY,EACV,QAAQ,EACR,YAAY,EACZ,SAAS,EACT,WAAW,EACX,KAAK,EACL,uBAAuB,EACvB,iBAAiB,EACjB,2BAA2B,EAC3B,uBAAuB,GACxB,MAAM,kBAAkB,CAAC;AAG1B,YAAY,EACV,cAAc,EACd,aAAa,EACb,OAAO,EACP,QAAQ,GACT,MAAM,oBAAoB,CAAC;AAG5B,YAAY,EACV,qBAAqB,EACrB,iBAAiB,EACjB,YAAY,EACZ,UAAU,GACX,MAAM,mBAAmB,CAAC;AAG3B,OAAO,EAAE,sBAAsB,EAAE,gBAAgB,EAAE,iBAAiB,EAAE,MAAM,cAAc,CAAC;AAG3F,OAAO,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAG1C,OAAO,EAAE,YAAY,EAAE,MAAM,cAAc,CAAC;AAG5C,OAAO,EACL,iBAAiB,EACjB,WAAW,EACX,SAAS,EACT,cAAc,EACd,gBAAgB,EAChB,eAAe,EACf,aAAa,GACd,MAAM,WAAW,CAAC;AAGnB,OAAO,EACL,mBAAmB,EACnB,oBAAoB,EACpB,uBAAuB,GACxB,MAAM,eAAe,CAAC;AACvB,YAAY,EAAE,kBAAkB,EAAE,MAAM,eAAe,CAAC;AAGxD,OAAO,EAAE,kBAAkB,EAAE,qBAAqB,EAAE,MAAM,aAAa,CAAC;AAGxE,OAAO,EAAE,YAAY,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AACxD,YAAY,EAAE,YAAY,EAAE,iBAAiB,EAAE,MAAM,aAAa,CAAC;AAGnE,OAAO,EACL,aAAa,EACb,aAAa,EACb,WAAW,EACX,gBAAgB,EAChB,wBAAwB,EACxB,6BAA6B,GAC9B,MAAM,iBAAiB,CAAC;AACzB,YAAY,EAAE,eAAe,EAAE,MAAM,iBAAiB,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AACA,YAAY,EACV,YAAY,EACZ,kBAAkB,EAClB,aAAa,EACb,gBAAgB,EAChB,WAAW,EACX,OAAO,EACP,eAAe,EACf,QAAQ,EACR,YAAY,EACZ,cAAc,EACd,kBAAkB,EAClB,aAAa,EACb,SAAS,EACT,gBAAgB,EAChB,mBAAmB,GACpB,MAAM,iBAAiB,CAAC;AAEzB,YAAY,EACV,0BAA0B,EAC1B,2BAA2B,EAC3B,aAAa,GACd,MAAM,sBAAsB,CAAC;AAG9B,YAAY,EACV,cAAc,EACd,MAAM,EACN,iBAAiB,EACjB,SAAS,EACT,YAAY,EACZ,SAAS,EACT,gBAAgB,EAChB,aAAa,EACb,iBAAiB,EACjB,sBAAsB,EACtB,oBAAoB,EACpB,sBAAsB,EACtB,kBAAkB,GACnB,MAAM,mBAAmB,CAAC;AAG3B,YAAY,EACV,QAAQ,EACR,YAAY,EACZ,SAAS,EACT,WAAW,EACX,KAAK,EACL,uBAAuB,EACvB,iBAAiB,EACjB,2BAA2B,EAC3B,uBAAuB,GACxB,MAAM,kBAAkB,CAAC;AAG1B,YAAY,EACV,cAAc,EACd,aAAa,EACb,OAAO,EACP,aAAa,EACb,eAAe,EACf,mBAAmB,EACnB,QAAQ,EACR,aAAa,GACd,MAAM,oBAAoB,CAAC;AAG5B,YAAY,EACV,aAAa,EACb,OAAO,EACP,eAAe,EACf,aAAa,GACd,MAAM,oBAAoB,CAAC;AAG5B,YAAY,EACV,UAAU,EACV,YAAY,EACZ,OAAO,EACP,gBAAgB,EAChB,QAAQ,GACT,MAAM,iBAAiB,CAAC;AAGzB,YAAY,EACV,wBAAwB,EACxB,oBAAoB,GACrB,MAAM,oBAAoB,CAAC;AAG5B,YAAY,EACV,qBAAqB,EACrB,iBAAiB,EACjB,YAAY,EACZ,UAAU,GACX,MAAM,mBAAmB,CAAC;AAG3B,OAAO,EAAE,sBAAsB,EAAE,gBAAgB,EAAE,iBAAiB,EAAE,MAAM,cAAc,CAAC;AAG3F,OAAO,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAG1C,OAAO,EAAE,YAAY,EAAE,MAAM,cAAc,CAAC;AAG5C,OAAO,EACL,iBAAiB,EACjB,WAAW,EACX,SAAS,EACT,cAAc,EACd,gBAAgB,EAChB,eAAe,EACf,aAAa,EACb,aAAa,EACb,iBAAiB,EACjB,oBAAoB,EACpB,kBAAkB,EAClB,cAAc,EACd,wBAAwB,EACxB,oBAAoB,EACpB,qBAAqB,EACrB,uBAAuB,EACvB,oBAAoB,GACrB,MAAM,WAAW,CAAC;AACnB,YAAY,EAAE,kBAAkB,EAAE,MAAM,WAAW,CAAC;AAGpD,OAAO,EACL,mBAAmB,EACnB,oBAAoB,EACpB,uBAAuB,GACxB,MAAM,eAAe,CAAC;AACvB,YAAY,EAAE,kBAAkB,EAAE,MAAM,eAAe,CAAC;AAGxD,OAAO,EAAE,kBAAkB,EAAE,qBAAqB,EAAE,MAAM,aAAa,CAAC;AAGxE,OAAO,EAAE,YAAY,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AACxD,YAAY,EAAE,YAAY,EAAE,cAAc,EAAE,iBAAiB,EAAE,MAAM,aAAa,CAAC;AAGnF,OAAO,EACL,aAAa,EACb,aAAa,EACb,WAAW,EACX,gBAAgB,EAChB,wBAAwB,EACxB,6BAA6B,EAC7B,mBAAmB,GACpB,MAAM,iBAAiB,CAAC;AACzB,YAAY,EAAE,eAAe,EAAE,MAAM,iBAAiB,CAAC"}
package/dist/index.js CHANGED
@@ -5,7 +5,7 @@ export { mapApiEvent } from './events.js';
5
5
  // Member logic
6
6
  export { mapApiMember } from './members.js';
7
7
  // Shop logic
8
- export { getEffectivePrice, hasDiscount, isInStock, getProductLink, getCategoryLabel, getPrimaryImage, toCartProduct, } from './shop.js';
8
+ export { getEffectivePrice, hasDiscount, isInStock, getProductLink, getCategoryLabel, getPrimaryImage, toCartProduct, findVariation, getVariationLabel, normalizeSearchQuery, matchesSearchQuery, filterProducts, filterProductsByCategory, highlightSearchMatch, isSubscriptionProduct, formatSubscriptionPrice, getMonthlyEquivalent, } from './shop.js';
9
9
  // Checkout logic
10
10
  export { calculateFinalTotal, validateCheckoutForm, buildCreateOrderRequest, } from './checkout.js';
11
11
  // Coupon logic
@@ -13,5 +13,5 @@ export { buildAppliedCoupon, getCouponErrorMessage } from './coupon.js';
13
13
  // API Client
14
14
  export { FavCRMClient, FavCRMError } from './client.js';
15
15
  // Validation
16
- export { validateEmail, validatePhone, validateOtp, validateRequired, validateRegistrationForm, validateEventRegistrationForm, } from './validation.js';
16
+ export { validateEmail, validatePhone, validateOtp, validateRequired, validateRegistrationForm, validateEventRegistrationForm, validateContactForm, } from './validation.js';
17
17
  //# sourceMappingURL=index.js.map
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAmEA,gBAAgB;AAChB,OAAO,EAAE,sBAAsB,EAAE,gBAAgB,EAAE,iBAAiB,EAAE,MAAM,cAAc,CAAC;AAE3F,cAAc;AACd,OAAO,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAE1C,eAAe;AACf,OAAO,EAAE,YAAY,EAAE,MAAM,cAAc,CAAC;AAE5C,aAAa;AACb,OAAO,EACL,iBAAiB,EACjB,WAAW,EACX,SAAS,EACT,cAAc,EACd,gBAAgB,EAChB,eAAe,EACf,aAAa,GACd,MAAM,WAAW,CAAC;AAEnB,iBAAiB;AACjB,OAAO,EACL,mBAAmB,EACnB,oBAAoB,EACpB,uBAAuB,GACxB,MAAM,eAAe,CAAC;AAGvB,eAAe;AACf,OAAO,EAAE,kBAAkB,EAAE,qBAAqB,EAAE,MAAM,aAAa,CAAC;AAExE,aAAa;AACb,OAAO,EAAE,YAAY,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAGxD,aAAa;AACb,OAAO,EACL,aAAa,EACb,aAAa,EACb,WAAW,EACX,gBAAgB,EAChB,wBAAwB,EACxB,6BAA6B,GAC9B,MAAM,iBAAiB,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAkGA,gBAAgB;AAChB,OAAO,EAAE,sBAAsB,EAAE,gBAAgB,EAAE,iBAAiB,EAAE,MAAM,cAAc,CAAC;AAE3F,cAAc;AACd,OAAO,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAE1C,eAAe;AACf,OAAO,EAAE,YAAY,EAAE,MAAM,cAAc,CAAC;AAE5C,aAAa;AACb,OAAO,EACL,iBAAiB,EACjB,WAAW,EACX,SAAS,EACT,cAAc,EACd,gBAAgB,EAChB,eAAe,EACf,aAAa,EACb,aAAa,EACb,iBAAiB,EACjB,oBAAoB,EACpB,kBAAkB,EAClB,cAAc,EACd,wBAAwB,EACxB,oBAAoB,EACpB,qBAAqB,EACrB,uBAAuB,EACvB,oBAAoB,GACrB,MAAM,WAAW,CAAC;AAGnB,iBAAiB;AACjB,OAAO,EACL,mBAAmB,EACnB,oBAAoB,EACpB,uBAAuB,GACxB,MAAM,eAAe,CAAC;AAGvB,eAAe;AACf,OAAO,EAAE,kBAAkB,EAAE,qBAAqB,EAAE,MAAM,aAAa,CAAC;AAExE,aAAa;AACb,OAAO,EAAE,YAAY,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAGxD,aAAa;AACb,OAAO,EACL,aAAa,EACb,aAAa,EACb,WAAW,EACX,gBAAgB,EAChB,wBAAwB,EACxB,6BAA6B,EAC7B,mBAAmB,GACpB,MAAM,iBAAiB,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"members.d.ts","sourceRoot":"","sources":["../src/members.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,EAAE,MAAM,mBAAmB,CAAC;AAE3D,iEAAiE;AACjE,wBAAgB,YAAY,CAAC,GAAG,EAAE,SAAS,GAAG,MAAM,CAiBnD"}
1
+ {"version":3,"file":"members.d.ts","sourceRoot":"","sources":["../src/members.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,EAAE,MAAM,mBAAmB,CAAC;AAE3D,iEAAiE;AACjE,wBAAgB,YAAY,CAAC,GAAG,EAAE,SAAS,GAAG,MAAM,CAoBnD"}
package/dist/members.js CHANGED
@@ -6,6 +6,9 @@ export function mapApiMember(api) {
6
6
  email: api.email ?? null,
7
7
  phone: api.phone ?? "",
8
8
  avatarUrl: null,
9
+ code: api.code ?? null,
10
+ points: api.points ?? 0,
11
+ stamps: api.stamps ?? 0,
9
12
  membershipTier: api.membershipTier
10
13
  ? {
11
14
  id: String(api.membershipTier.id),
@@ -1 +1 @@
1
- {"version":3,"file":"members.js","sourceRoot":"","sources":["../src/members.ts"],"names":[],"mappings":"AAEA,iEAAiE;AACjE,MAAM,UAAU,YAAY,CAAC,GAAc;IACzC,OAAO;QACL,IAAI,EAAE,GAAG,CAAC,IAAI;QACd,IAAI,EAAE,GAAG,CAAC,IAAI,IAAI,EAAE;QACpB,KAAK,EAAE,GAAG,CAAC,KAAK,IAAI,IAAI;QACxB,KAAK,EAAE,GAAG,CAAC,KAAK,IAAI,EAAE;QACtB,SAAS,EAAE,IAAI;QACf,cAAc,EAAE,GAAG,CAAC,cAAc;YAChC,CAAC,CAAC;gBACE,EAAE,EAAE,MAAM,CAAC,GAAG,CAAC,cAAc,CAAC,EAAE,CAAC;gBACjC,IAAI,EAAE,GAAG,CAAC,cAAc,CAAC,IAAI;gBAC7B,KAAK,EAAE,GAAG,CAAC,cAAc,CAAC,QAAQ,IAAI,CAAC;gBACvC,KAAK,EAAE,EAAE;gBACT,QAAQ,EAAE,EAAE;aACb;YACH,CAAC,CAAC,IAAI;KACT,CAAC;AACJ,CAAC"}
1
+ {"version":3,"file":"members.js","sourceRoot":"","sources":["../src/members.ts"],"names":[],"mappings":"AAEA,iEAAiE;AACjE,MAAM,UAAU,YAAY,CAAC,GAAc;IACzC,OAAO;QACL,IAAI,EAAE,GAAG,CAAC,IAAI;QACd,IAAI,EAAE,GAAG,CAAC,IAAI,IAAI,EAAE;QACpB,KAAK,EAAE,GAAG,CAAC,KAAK,IAAI,IAAI;QACxB,KAAK,EAAE,GAAG,CAAC,KAAK,IAAI,EAAE;QACtB,SAAS,EAAE,IAAI;QACf,IAAI,EAAE,GAAG,CAAC,IAAI,IAAI,IAAI;QACtB,MAAM,EAAE,GAAG,CAAC,MAAM,IAAI,CAAC;QACvB,MAAM,EAAE,GAAG,CAAC,MAAM,IAAI,CAAC;QACvB,cAAc,EAAE,GAAG,CAAC,cAAc;YAChC,CAAC,CAAC;gBACE,EAAE,EAAE,MAAM,CAAC,GAAG,CAAC,cAAc,CAAC,EAAE,CAAC;gBACjC,IAAI,EAAE,GAAG,CAAC,cAAc,CAAC,IAAI;gBAC7B,KAAK,EAAE,GAAG,CAAC,cAAc,CAAC,QAAQ,IAAI,CAAC;gBACvC,KAAK,EAAE,EAAE;gBACT,QAAQ,EAAE,EAAE;aACb;YACH,CAAC,CAAC,IAAI;KACT,CAAC;AACJ,CAAC"}
package/dist/shop.d.ts CHANGED
@@ -1,9 +1,26 @@
1
- import type { Product, ProductImage, ProductListItem } from './types/shop.js';
1
+ import type { Product, ProductImage, ProductListItem, ProductVariation } from './types/shop.js';
2
+ export interface SearchMatchSegment {
3
+ text: string;
4
+ matched: boolean;
5
+ }
6
+ export declare function normalizeSearchQuery(query: string): string;
7
+ export declare function matchesSearchQuery(product: Pick<ProductListItem, 'name' | 'description'>, query: string): boolean;
8
+ export declare function filterProducts<T extends Pick<ProductListItem, 'name' | 'description'>>(products: T[], query: string): T[];
9
+ export declare function filterProductsByCategory<T extends Pick<ProductListItem, 'categories'>>(products: T[], categorySlug: string): T[];
10
+ export declare function highlightSearchMatch(text: string, query: string): SearchMatchSegment[];
2
11
  export declare function getEffectivePrice(product: Pick<ProductListItem, 'memberPrice' | 'discountPrice' | 'price'>): number;
3
12
  export declare function hasDiscount(product: Pick<ProductListItem, 'discountPrice' | 'memberPrice' | 'price'>): boolean;
4
13
  export declare function isInStock(stockStatus: string): boolean;
5
14
  export declare function getProductLink(product: Pick<ProductListItem, 'slug' | 'id'>): string;
6
15
  export declare function getCategoryLabel(product: Pick<ProductListItem, 'categoryName' | 'categories'>): string;
7
16
  export declare function getPrimaryImage(product: Pick<Product, 'images'>): ProductImage | null;
8
- export declare function toCartProduct(product: Product): ProductListItem;
17
+ export declare function toCartProduct(product: Product, variation?: ProductVariation): ProductListItem;
18
+ export declare function findVariation(variations: ProductVariation[], selections: Record<string, string>): ProductVariation | undefined;
19
+ export declare function getVariationLabel(variation: ProductVariation): string;
20
+ export declare function isSubscriptionProduct(product: Pick<ProductListItem, 'productType'>): boolean;
21
+ export declare function formatSubscriptionPrice(price: number, billingCycle: string, currency?: string): string;
22
+ export declare function getMonthlyEquivalent(plan: {
23
+ price: number;
24
+ billingCycle: string;
25
+ }): number;
9
26
  //# sourceMappingURL=shop.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"shop.d.ts","sourceRoot":"","sources":["../src/shop.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,YAAY,EAAE,eAAe,EAAE,MAAM,iBAAiB,CAAC;AAE9E,wBAAgB,iBAAiB,CAC/B,OAAO,EAAE,IAAI,CAAC,eAAe,EAAE,aAAa,GAAG,eAAe,GAAG,OAAO,CAAC,GACxE,MAAM,CAER;AAED,wBAAgB,WAAW,CACzB,OAAO,EAAE,IAAI,CAAC,eAAe,EAAE,eAAe,GAAG,aAAa,GAAG,OAAO,CAAC,GACxE,OAAO,CAOT;AAED,wBAAgB,SAAS,CAAC,WAAW,EAAE,MAAM,GAAG,OAAO,CAEtD;AAED,wBAAgB,cAAc,CAAC,OAAO,EAAE,IAAI,CAAC,eAAe,EAAE,MAAM,GAAG,IAAI,CAAC,GAAG,MAAM,CAEpF;AAED,wBAAgB,gBAAgB,CAC9B,OAAO,EAAE,IAAI,CAAC,eAAe,EAAE,cAAc,GAAG,YAAY,CAAC,GAC5D,MAAM,CAKR;AAED,wBAAgB,eAAe,CAAC,OAAO,EAAE,IAAI,CAAC,OAAO,EAAE,QAAQ,CAAC,GAAG,YAAY,GAAG,IAAI,CAErF;AAED,wBAAgB,aAAa,CAAC,OAAO,EAAE,OAAO,GAAG,eAAe,CAiB/D"}
1
+ {"version":3,"file":"shop.d.ts","sourceRoot":"","sources":["../src/shop.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,YAAY,EAAE,eAAe,EAAE,gBAAgB,EAAE,MAAM,iBAAiB,CAAC;AAMhG,MAAM,WAAW,kBAAkB;IACjC,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,OAAO,CAAC;CAClB;AAED,wBAAgB,oBAAoB,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CAE1D;AAWD,wBAAgB,kBAAkB,CAChC,OAAO,EAAE,IAAI,CAAC,eAAe,EAAE,MAAM,GAAG,aAAa,CAAC,EACtD,KAAK,EAAE,MAAM,GACZ,OAAO,CAIT;AAED,wBAAgB,cAAc,CAAC,CAAC,SAAS,IAAI,CAAC,eAAe,EAAE,MAAM,GAAG,aAAa,CAAC,EACpF,QAAQ,EAAE,CAAC,EAAE,EACb,KAAK,EAAE,MAAM,GACZ,CAAC,EAAE,CAIL;AAED,wBAAgB,wBAAwB,CAAC,CAAC,SAAS,IAAI,CAAC,eAAe,EAAE,YAAY,CAAC,EACpF,QAAQ,EAAE,CAAC,EAAE,EACb,YAAY,EAAE,MAAM,GACnB,CAAC,EAAE,CAKL;AAED,wBAAgB,oBAAoB,CAClC,IAAI,EAAE,MAAM,EACZ,KAAK,EAAE,MAAM,GACZ,kBAAkB,EAAE,CAsBtB;AAED,wBAAgB,iBAAiB,CAC/B,OAAO,EAAE,IAAI,CAAC,eAAe,EAAE,aAAa,GAAG,eAAe,GAAG,OAAO,CAAC,GACxE,MAAM,CAER;AAED,wBAAgB,WAAW,CACzB,OAAO,EAAE,IAAI,CAAC,eAAe,EAAE,eAAe,GAAG,aAAa,GAAG,OAAO,CAAC,GACxE,OAAO,CAOT;AAED,wBAAgB,SAAS,CAAC,WAAW,EAAE,MAAM,GAAG,OAAO,CAGtD;AAED,wBAAgB,cAAc,CAAC,OAAO,EAAE,IAAI,CAAC,eAAe,EAAE,MAAM,GAAG,IAAI,CAAC,GAAG,MAAM,CAEpF;AAED,wBAAgB,gBAAgB,CAC9B,OAAO,EAAE,IAAI,CAAC,eAAe,EAAE,cAAc,GAAG,YAAY,CAAC,GAC5D,MAAM,CAKR;AAED,wBAAgB,eAAe,CAAC,OAAO,EAAE,IAAI,CAAC,OAAO,EAAE,QAAQ,CAAC,GAAG,YAAY,GAAG,IAAI,CAErF;AAED,wBAAgB,aAAa,CAAC,OAAO,EAAE,OAAO,EAAE,SAAS,CAAC,EAAE,gBAAgB,GAAG,eAAe,CAqC7F;AAED,wBAAgB,aAAa,CAC3B,UAAU,EAAE,gBAAgB,EAAE,EAC9B,UAAU,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GACjC,gBAAgB,GAAG,SAAS,CAU9B;AAED,wBAAgB,iBAAiB,CAAC,SAAS,EAAE,gBAAgB,GAAG,MAAM,CAErE;AAED,wBAAgB,qBAAqB,CACnC,OAAO,EAAE,IAAI,CAAC,eAAe,EAAE,aAAa,CAAC,GAC5C,OAAO,CAET;AAED,wBAAgB,uBAAuB,CACrC,KAAK,EAAE,MAAM,EACb,YAAY,EAAE,MAAM,EACpB,QAAQ,GAAE,MAAc,GACvB,MAAM,CAQR;AAED,wBAAgB,oBAAoB,CAAC,IAAI,EAAE;IAAE,KAAK,EAAE,MAAM,CAAC;IAAC,YAAY,EAAE,MAAM,CAAA;CAAE,GAAG,MAAM,CAE1F"}
package/dist/shop.js CHANGED
@@ -1,3 +1,49 @@
1
+ export function normalizeSearchQuery(query) {
2
+ return query.trim().replace(/\s+/g, ' ').toLowerCase();
3
+ }
4
+ function matchesNormalized(product, normalised) {
5
+ const name = product.name.toLowerCase();
6
+ const desc = (product.description ?? '').toLowerCase();
7
+ return name.includes(normalised) || desc.includes(normalised);
8
+ }
9
+ export function matchesSearchQuery(product, query) {
10
+ const normalised = normalizeSearchQuery(query);
11
+ if (normalised === '')
12
+ return true;
13
+ return matchesNormalized(product, normalised);
14
+ }
15
+ export function filterProducts(products, query) {
16
+ const normalised = normalizeSearchQuery(query);
17
+ if (normalised === '')
18
+ return products;
19
+ return products.filter((p) => matchesNormalized(p, normalised));
20
+ }
21
+ export function filterProductsByCategory(products, categorySlug) {
22
+ if (!categorySlug)
23
+ return products;
24
+ return products.filter((p) => p.categories.some((c) => c.slug === categorySlug));
25
+ }
26
+ export function highlightSearchMatch(text, query) {
27
+ const normalised = normalizeSearchQuery(query);
28
+ if (normalised === '' || text === '')
29
+ return [{ text, matched: false }];
30
+ const segments = [];
31
+ const lowerText = text.toLowerCase();
32
+ let cursor = 0;
33
+ while (cursor < text.length) {
34
+ const matchIndex = lowerText.indexOf(normalised, cursor);
35
+ if (matchIndex === -1) {
36
+ segments.push({ text: text.slice(cursor), matched: false });
37
+ break;
38
+ }
39
+ if (matchIndex > cursor) {
40
+ segments.push({ text: text.slice(cursor, matchIndex), matched: false });
41
+ }
42
+ segments.push({ text: text.slice(matchIndex, matchIndex + normalised.length), matched: true });
43
+ cursor = matchIndex + normalised.length;
44
+ }
45
+ return segments;
46
+ }
1
47
  export function getEffectivePrice(product) {
2
48
  return product.memberPrice ?? product.discountPrice ?? product.price ?? 0;
3
49
  }
@@ -9,7 +55,8 @@ export function hasDiscount(product) {
9
55
  (product.memberPrice != null && product.memberPrice < price));
10
56
  }
11
57
  export function isInStock(stockStatus) {
12
- return stockStatus === 'instock' || stockStatus === 'lowstock';
58
+ const s = stockStatus.replace(/_/g, '');
59
+ return s === 'instock' || s === 'lowstock';
13
60
  }
14
61
  export function getProductLink(product) {
15
62
  return product.slug ? `/shop/${product.slug}` : `/shop/${product.id}`;
@@ -21,7 +68,26 @@ export function getCategoryLabel(product) {
21
68
  export function getPrimaryImage(product) {
22
69
  return product.images.length > 0 ? product.images[0] : null;
23
70
  }
24
- export function toCartProduct(product) {
71
+ export function toCartProduct(product, variation) {
72
+ if (variation) {
73
+ return {
74
+ id: product.id,
75
+ name: product.name,
76
+ description: product.description ?? '',
77
+ slug: product.slug,
78
+ price: variation.price,
79
+ discountPrice: variation.discountPrice,
80
+ memberPrice: variation.memberPrice,
81
+ seoTitle: product.seoTitle,
82
+ status: product.status,
83
+ productType: product.productType,
84
+ stockStatus: variation.stockStatus,
85
+ categoryName: product.categoryName,
86
+ categories: product.categories,
87
+ isVariable: product.isVariable,
88
+ image: product.images.length > 0 ? product.images[0].src : null,
89
+ };
90
+ }
25
91
  return {
26
92
  id: product.id,
27
93
  name: product.name,
@@ -32,6 +98,7 @@ export function toCartProduct(product) {
32
98
  memberPrice: product.memberPrice,
33
99
  seoTitle: product.seoTitle,
34
100
  status: product.status,
101
+ productType: product.productType,
35
102
  stockStatus: product.stockStatus,
36
103
  categoryName: product.categoryName,
37
104
  categories: product.categories,
@@ -39,4 +106,28 @@ export function toCartProduct(product) {
39
106
  image: product.images.length > 0 ? product.images[0].src : null,
40
107
  };
41
108
  }
109
+ export function findVariation(variations, selections) {
110
+ const selectionEntries = Object.entries(selections);
111
+ if (selectionEntries.length === 0)
112
+ return undefined;
113
+ return variations.find((v) => selectionEntries.every(([optionName, value]) => v.selectedOptions.some((so) => so.optionName === optionName && so.value === value)));
114
+ }
115
+ export function getVariationLabel(variation) {
116
+ return variation.selectedOptions.map((so) => so.value).join(' / ');
117
+ }
118
+ export function isSubscriptionProduct(product) {
119
+ return product.productType === 'subscription';
120
+ }
121
+ export function formatSubscriptionPrice(price, billingCycle, currency = 'HKD') {
122
+ const formatted = new Intl.NumberFormat('zh-HK', {
123
+ style: 'currency',
124
+ currency,
125
+ minimumFractionDigits: 0,
126
+ }).format(price);
127
+ const suffix = billingCycle === 'monthly' ? '/月' : '/年';
128
+ return `${formatted}${suffix}`;
129
+ }
130
+ export function getMonthlyEquivalent(plan) {
131
+ return plan.billingCycle === 'yearly' ? Math.round((plan.price / 12) * 100) / 100 : plan.price;
132
+ }
42
133
  //# sourceMappingURL=shop.js.map
package/dist/shop.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"shop.js","sourceRoot":"","sources":["../src/shop.ts"],"names":[],"mappings":"AAEA,MAAM,UAAU,iBAAiB,CAC/B,OAAyE;IAEzE,OAAO,OAAO,CAAC,WAAW,IAAI,OAAO,CAAC,aAAa,IAAI,OAAO,CAAC,KAAK,IAAI,CAAC,CAAC;AAC5E,CAAC;AAED,MAAM,UAAU,WAAW,CACzB,OAAyE;IAEzE,MAAM,KAAK,GAAG,OAAO,CAAC,KAAK,CAAC;IAC5B,IAAI,KAAK,IAAI,IAAI;QAAE,OAAO,KAAK,CAAC;IAChC,OAAO,CACL,CAAC,OAAO,CAAC,aAAa,IAAI,IAAI,IAAI,OAAO,CAAC,aAAa,GAAG,KAAK,CAAC;QAChE,CAAC,OAAO,CAAC,WAAW,IAAI,IAAI,IAAI,OAAO,CAAC,WAAW,GAAG,KAAK,CAAC,CAC7D,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,SAAS,CAAC,WAAmB;IAC3C,OAAO,WAAW,KAAK,SAAS,IAAI,WAAW,KAAK,UAAU,CAAC;AACjE,CAAC;AAED,MAAM,UAAU,cAAc,CAAC,OAA6C;IAC1E,OAAO,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,SAAS,OAAO,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,SAAS,OAAO,CAAC,EAAE,EAAE,CAAC;AACxE,CAAC;AAED,MAAM,UAAU,gBAAgB,CAC9B,OAA6D;IAE7D,OAAO,CACL,OAAO,CAAC,YAAY;QACpB,CAAC,OAAO,CAAC,UAAU,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAClE,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,eAAe,CAAC,OAAgC;IAC9D,OAAO,OAAO,CAAC,MAAM,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;AAC9D,CAAC;AAED,MAAM,UAAU,aAAa,CAAC,OAAgB;IAC5C,OAAO;QACL,EAAE,EAAE,OAAO,CAAC,EAAE;QACd,IAAI,EAAE,OAAO,CAAC,IAAI;QAClB,WAAW,EAAE,OAAO,CAAC,WAAW,IAAI,EAAE;QACtC,IAAI,EAAE,OAAO,CAAC,IAAI;QAClB,KAAK,EAAE,OAAO,CAAC,KAAK;QACpB,aAAa,EAAE,OAAO,CAAC,aAAa;QACpC,WAAW,EAAE,OAAO,CAAC,WAAW;QAChC,QAAQ,EAAE,OAAO,CAAC,QAAQ;QAC1B,MAAM,EAAE,OAAO,CAAC,MAAM;QACtB,WAAW,EAAE,OAAO,CAAC,WAAW;QAChC,YAAY,EAAE,OAAO,CAAC,YAAY;QAClC,UAAU,EAAE,OAAO,CAAC,UAAU;QAC9B,UAAU,EAAE,OAAO,CAAC,UAAU;QAC9B,KAAK,EAAE,OAAO,CAAC,MAAM,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI;KAChE,CAAC;AACJ,CAAC"}
1
+ {"version":3,"file":"shop.js","sourceRoot":"","sources":["../src/shop.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,42 @@
1
+ /** Blog post author summary. */
2
+ export interface BlogAuthor {
3
+ id: number;
4
+ firstName: string;
5
+ lastName: string;
6
+ }
7
+ /** Blog category for organization. */
8
+ export interface BlogCategory {
9
+ id: number;
10
+ name: string;
11
+ slug: string;
12
+ description: string | null;
13
+ }
14
+ /** Blog tag for flexible categorization. */
15
+ export interface BlogTag {
16
+ id: number;
17
+ name: string;
18
+ slug: string;
19
+ }
20
+ /** Blog post summary for list views. */
21
+ export interface BlogPostListItem {
22
+ id: number;
23
+ slug: string;
24
+ title: string;
25
+ excerpt: string | null;
26
+ featuredImage: string | null;
27
+ publishedAt: string | null;
28
+ isFeatured: boolean;
29
+ viewCount: number;
30
+ author: BlogAuthor;
31
+ categories: BlogCategory[];
32
+ tags: BlogTag[];
33
+ createdAt: string;
34
+ updatedAt: string;
35
+ }
36
+ /** Full blog post with content and SEO fields. */
37
+ export interface BlogPost extends BlogPostListItem {
38
+ content: string;
39
+ metaTitle: string | null;
40
+ metaDescription: string | null;
41
+ }
42
+ //# sourceMappingURL=blog.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"blog.d.ts","sourceRoot":"","sources":["../../src/types/blog.ts"],"names":[],"mappings":"AAAA,gCAAgC;AAChC,MAAM,WAAW,UAAU;IACzB,EAAE,EAAE,MAAM,CAAC;IACX,SAAS,EAAE,MAAM,CAAC;IAClB,QAAQ,EAAE,MAAM,CAAC;CAClB;AAED,sCAAsC;AACtC,MAAM,WAAW,YAAY;IAC3B,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,EAAE,MAAM,GAAG,IAAI,CAAC;CAC5B;AAED,4CAA4C;AAC5C,MAAM,WAAW,OAAO;IACtB,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;CACd;AAED,wCAAwC;AACxC,MAAM,WAAW,gBAAgB;IAC/B,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;IACvB,aAAa,EAAE,MAAM,GAAG,IAAI,CAAC;IAC7B,WAAW,EAAE,MAAM,GAAG,IAAI,CAAC;IAC3B,UAAU,EAAE,OAAO,CAAC;IACpB,SAAS,EAAE,MAAM,CAAC;IAClB,MAAM,EAAE,UAAU,CAAC;IACnB,UAAU,EAAE,YAAY,EAAE,CAAC;IAC3B,IAAI,EAAE,OAAO,EAAE,CAAC;IAChB,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,MAAM,CAAC;CACnB;AAED,kDAAkD;AAClD,MAAM,WAAW,QAAS,SAAQ,gBAAgB;IAChD,OAAO,EAAE,MAAM,CAAC;IAChB,SAAS,EAAE,MAAM,GAAG,IAAI,CAAC;IACzB,eAAe,EAAE,MAAM,GAAG,IAAI,CAAC;CAChC"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=blog.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"blog.js","sourceRoot":"","sources":["../../src/types/blog.ts"],"names":[],"mappings":""}
@@ -10,10 +10,14 @@ export interface BookingService {
10
10
  coverImage: string | null;
11
11
  requiresStaff: boolean;
12
12
  requiresResource: boolean;
13
+ paymentRequired: boolean;
14
+ requiresConfirmation: boolean;
15
+ requireLogin: boolean;
16
+ advanceBookingDays: number | null;
13
17
  categoryId: string | null;
14
18
  categoryName: string | null;
15
19
  }
16
- export type BookingStatus = "draft" | "confirmed" | "cancelled" | "completed";
20
+ export type BookingStatus = "draft" | "pending" | "confirmed" | "cancelled" | "completed" | "no_show";
17
21
  export interface Booking {
18
22
  id: string;
19
23
  serviceId: string;
@@ -26,6 +30,26 @@ export interface Booking {
26
30
  currency: string;
27
31
  createdAt: string;
28
32
  }
33
+ export interface BookingLineItem {
34
+ description: string;
35
+ quantity: number;
36
+ unitPrice: string;
37
+ total: string;
38
+ }
39
+ export interface BookingStatusChange {
40
+ fromStatus: string | null;
41
+ toStatus: string;
42
+ createdAt: string;
43
+ }
44
+ export interface BookingDetail extends Booking {
45
+ subtotal: string;
46
+ addonsTotal: string;
47
+ totalDurationMinutes: number;
48
+ notes: string | null;
49
+ cancellationReason: string | null;
50
+ lineItems: BookingLineItem[];
51
+ statusHistory: BookingStatusChange[];
52
+ }
29
53
  export interface TimeSlot {
30
54
  startTime: string;
31
55
  endTime: string;
@@ -38,4 +62,13 @@ export interface TimeSlot {
38
62
  tierName?: string | null;
39
63
  priceType?: string;
40
64
  }
65
+ export interface BookingConfig {
66
+ advanceBookingDays: number | null;
67
+ isAllowed: boolean;
68
+ dailyBookingCount: number | null;
69
+ weeklyBookingCount: number | null;
70
+ weeklyHoursLimit: number | null;
71
+ currentDailyUsage: number;
72
+ currentWeeklyUsage: number;
73
+ }
41
74
  //# sourceMappingURL=booking.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"booking.d.ts","sourceRoot":"","sources":["../../src/types/booking.ts"],"names":[],"mappings":"AAAA,MAAM,WAAW,cAAc;IAC7B,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,EAAE,MAAM,GAAG,IAAI,CAAC;IAC3B,IAAI,EAAE,MAAM,CAAC;IACb,eAAe,EAAE,MAAM,CAAC;IACxB,QAAQ,EAAE,MAAM,CAAC;IACjB,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,EAAE,MAAM,CAAC;IACjB,UAAU,EAAE,MAAM,GAAG,IAAI,CAAC;IAC1B,aAAa,EAAE,OAAO,CAAC;IACvB,gBAAgB,EAAE,OAAO,CAAC;IAC1B,UAAU,EAAE,MAAM,GAAG,IAAI,CAAC;IAC1B,YAAY,EAAE,MAAM,GAAG,IAAI,CAAC;CAC7B;AAED,MAAM,MAAM,aAAa,GAAG,OAAO,GAAG,WAAW,GAAG,WAAW,GAAG,WAAW,CAAC;AAE9E,MAAM,WAAW,OAAO;IACtB,EAAE,EAAE,MAAM,CAAC;IACX,SAAS,EAAE,MAAM,CAAC;IAClB,WAAW,EAAE,MAAM,CAAC;IACpB,MAAM,EAAE,aAAa,CAAC;IACtB,WAAW,EAAE,MAAM,CAAC;IACpB,SAAS,EAAE,MAAM,CAAC;IAClB,OAAO,EAAE,MAAM,CAAC;IAChB,UAAU,EAAE,MAAM,CAAC;IACnB,QAAQ,EAAE,MAAM,CAAC;IACjB,SAAS,EAAE,MAAM,CAAC;CACnB;AAED,MAAM,WAAW,QAAQ;IACvB,SAAS,EAAE,MAAM,CAAC;IAClB,OAAO,EAAE,MAAM,CAAC;IAChB,SAAS,EAAE,OAAO,CAAC;IACnB,iBAAiB,EAAE,MAAM,CAAC;IAC1B,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,QAAQ,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACzB,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB"}
1
+ {"version":3,"file":"booking.d.ts","sourceRoot":"","sources":["../../src/types/booking.ts"],"names":[],"mappings":"AAAA,MAAM,WAAW,cAAc;IAC7B,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,EAAE,MAAM,GAAG,IAAI,CAAC;IAC3B,IAAI,EAAE,MAAM,CAAC;IACb,eAAe,EAAE,MAAM,CAAC;IACxB,QAAQ,EAAE,MAAM,CAAC;IACjB,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,EAAE,MAAM,CAAC;IACjB,UAAU,EAAE,MAAM,GAAG,IAAI,CAAC;IAC1B,aAAa,EAAE,OAAO,CAAC;IACvB,gBAAgB,EAAE,OAAO,CAAC;IAC1B,eAAe,EAAE,OAAO,CAAC;IACzB,oBAAoB,EAAE,OAAO,CAAC;IAC9B,YAAY,EAAE,OAAO,CAAC;IACtB,kBAAkB,EAAE,MAAM,GAAG,IAAI,CAAC;IAClC,UAAU,EAAE,MAAM,GAAG,IAAI,CAAC;IAC1B,YAAY,EAAE,MAAM,GAAG,IAAI,CAAC;CAC7B;AAED,MAAM,MAAM,aAAa,GAAG,OAAO,GAAG,SAAS,GAAG,WAAW,GAAG,WAAW,GAAG,WAAW,GAAG,SAAS,CAAC;AAEtG,MAAM,WAAW,OAAO;IACtB,EAAE,EAAE,MAAM,CAAC;IACX,SAAS,EAAE,MAAM,CAAC;IAClB,WAAW,EAAE,MAAM,CAAC;IACpB,MAAM,EAAE,aAAa,CAAC;IACtB,WAAW,EAAE,MAAM,CAAC;IACpB,SAAS,EAAE,MAAM,CAAC;IAClB,OAAO,EAAE,MAAM,CAAC;IAChB,UAAU,EAAE,MAAM,CAAC;IACnB,QAAQ,EAAE,MAAM,CAAC;IACjB,SAAS,EAAE,MAAM,CAAC;CACnB;AAED,MAAM,WAAW,eAAe;IAC9B,WAAW,EAAE,MAAM,CAAC;IACpB,QAAQ,EAAE,MAAM,CAAC;IACjB,SAAS,EAAE,MAAM,CAAC;IAClB,KAAK,EAAE,MAAM,CAAC;CACf;AAED,MAAM,WAAW,mBAAmB;IAClC,UAAU,EAAE,MAAM,GAAG,IAAI,CAAC;IAC1B,QAAQ,EAAE,MAAM,CAAC;IACjB,SAAS,EAAE,MAAM,CAAC;CACnB;AAED,MAAM,WAAW,aAAc,SAAQ,OAAO;IAC5C,QAAQ,EAAE,MAAM,CAAC;IACjB,WAAW,EAAE,MAAM,CAAC;IACpB,oBAAoB,EAAE,MAAM,CAAC;IAC7B,KAAK,EAAE,MAAM,GAAG,IAAI,CAAC;IACrB,kBAAkB,EAAE,MAAM,GAAG,IAAI,CAAC;IAClC,SAAS,EAAE,eAAe,EAAE,CAAC;IAC7B,aAAa,EAAE,mBAAmB,EAAE,CAAC;CACtC;AAED,MAAM,WAAW,QAAQ;IACvB,SAAS,EAAE,MAAM,CAAC;IAClB,OAAO,EAAE,MAAM,CAAC;IAChB,SAAS,EAAE,OAAO,CAAC;IACnB,iBAAiB,EAAE,MAAM,CAAC;IAC1B,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,QAAQ,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACzB,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED,MAAM,WAAW,aAAa;IAC5B,kBAAkB,EAAE,MAAM,GAAG,IAAI,CAAC;IAClC,SAAS,EAAE,OAAO,CAAC;IACnB,iBAAiB,EAAE,MAAM,GAAG,IAAI,CAAC;IACjC,kBAAkB,EAAE,MAAM,GAAG,IAAI,CAAC;IAClC,gBAAgB,EAAE,MAAM,GAAG,IAAI,CAAC;IAChC,iBAAiB,EAAE,MAAM,CAAC;IAC1B,kBAAkB,EAAE,MAAM,CAAC;CAC5B"}
@@ -0,0 +1,12 @@
1
+ export interface ContactEnquirySubmission {
2
+ name: string;
3
+ email: string;
4
+ phone?: string;
5
+ subject?: string;
6
+ message: string;
7
+ }
8
+ export interface ContactEnquiryResult {
9
+ conversationId: string;
10
+ messageId: string;
11
+ }
12
+ //# sourceMappingURL=contact.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"contact.d.ts","sourceRoot":"","sources":["../../src/types/contact.ts"],"names":[],"mappings":"AAAA,MAAM,WAAW,wBAAwB;IACvC,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,OAAO,EAAE,MAAM,CAAC;CACjB;AAED,MAAM,WAAW,oBAAoB;IACnC,cAAc,EAAE,MAAM,CAAC;IACvB,SAAS,EAAE,MAAM,CAAC;CACnB"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=contact.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"contact.js","sourceRoot":"","sources":["../../src/types/contact.ts"],"names":[],"mappings":""}
@@ -0,0 +1,24 @@
1
+ export type InvoiceStatus = 'DRAFT' | 'SENT' | 'PAID' | 'OVERDUE' | 'VOID' | 'CANCELLED';
2
+ export interface Invoice {
3
+ id: string;
4
+ invoiceNumber: string;
5
+ amount: string;
6
+ taxAmount: string;
7
+ total: string;
8
+ currency: string;
9
+ status: InvoiceStatus;
10
+ dueDate: string | null;
11
+ paidAt: string | null;
12
+ notes: string | null;
13
+ createdAt: string;
14
+ }
15
+ export interface InvoiceLineItem {
16
+ description: string;
17
+ quantity: number;
18
+ unitPrice: string;
19
+ total: string;
20
+ }
21
+ export interface InvoiceDetail extends Invoice {
22
+ lineItems: InvoiceLineItem[];
23
+ }
24
+ //# sourceMappingURL=invoice.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"invoice.d.ts","sourceRoot":"","sources":["../../src/types/invoice.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,aAAa,GAAG,OAAO,GAAG,MAAM,GAAG,MAAM,GAAG,SAAS,GAAG,MAAM,GAAG,WAAW,CAAC;AAEzF,MAAM,WAAW,OAAO;IACtB,EAAE,EAAE,MAAM,CAAC;IACX,aAAa,EAAE,MAAM,CAAC;IACtB,MAAM,EAAE,MAAM,CAAC;IACf,SAAS,EAAE,MAAM,CAAC;IAClB,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,EAAE,MAAM,CAAC;IACjB,MAAM,EAAE,aAAa,CAAC;IACtB,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;IACvB,MAAM,EAAE,MAAM,GAAG,IAAI,CAAC;IACtB,KAAK,EAAE,MAAM,GAAG,IAAI,CAAC;IACrB,SAAS,EAAE,MAAM,CAAC;CACnB;AAED,MAAM,WAAW,eAAe;IAC9B,WAAW,EAAE,MAAM,CAAC;IACpB,QAAQ,EAAE,MAAM,CAAC;IACjB,SAAS,EAAE,MAAM,CAAC;IAClB,KAAK,EAAE,MAAM,CAAC;CACf;AAED,MAAM,WAAW,aAAc,SAAQ,OAAO;IAC5C,SAAS,EAAE,eAAe,EAAE,CAAC;CAC9B"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=invoice.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"invoice.js","sourceRoot":"","sources":["../../src/types/invoice.ts"],"names":[],"mappings":""}
@@ -16,6 +16,9 @@ export interface Member {
16
16
  email: string | null;
17
17
  phone: string;
18
18
  avatarUrl: string | null;
19
+ code: string | null;
20
+ points: number;
21
+ stamps: number;
19
22
  membershipTier: MembershipTier | null;
20
23
  }
21
24
  /** Raw membership tier shape from the v6 API (CamelCaseJSONRenderer). */
@@ -54,12 +57,28 @@ export interface ApiMember {
54
57
  updatedAt: string;
55
58
  membershipTier: ApiMembershipTier | null;
56
59
  }
60
+ export interface CardField {
61
+ variable: string;
62
+ label: string;
63
+ type?: 'header' | 'secondary';
64
+ id?: string;
65
+ value?: string;
66
+ children?: CardField[][];
67
+ }
68
+ export interface CardLayoutConfig {
69
+ web?: {
70
+ fields: CardField[];
71
+ };
72
+ }
57
73
  export interface CardSettings {
58
74
  brandName: string;
59
75
  brandLogoUrl: string | null;
60
76
  brandColor: string;
77
+ foregroundColor: string;
61
78
  cardBackgroundUrl: string | null;
62
79
  showQrCode: boolean;
80
+ displayPointType: string;
81
+ cardLayoutConfig: CardLayoutConfig | null;
63
82
  }
64
83
  export interface PaymentMethod {
65
84
  id: string;
@@ -1 +1 @@
1
- {"version":3,"file":"member.d.ts","sourceRoot":"","sources":["../../src/types/member.ts"],"names":[],"mappings":"AAAA,MAAM,WAAW,cAAc;IAC7B,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,EAAE,MAAM,EAAE,CAAC;IACnB,gBAAgB,CAAC,EAAE;QACjB,eAAe,EAAE,MAAM,CAAC;QACxB,gBAAgB,EAAE,MAAM,CAAC;QACzB,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAC;KACzB,CAAC;CACH;AAED,MAAM,WAAW,MAAM;IACrB,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,MAAM,GAAG,IAAI,CAAC;IACrB,KAAK,EAAE,MAAM,CAAC;IACd,SAAS,EAAE,MAAM,GAAG,IAAI,CAAC;IACzB,cAAc,EAAE,cAAc,GAAG,IAAI,CAAC;CACvC;AAED,yEAAyE;AACzE,MAAM,WAAW,iBAAiB;IAChC,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,CAAC;IACb,aAAa,EAAE,MAAM,CAAC;IACtB,mBAAmB,EAAE,MAAM,CAAC;IAC5B,WAAW,EAAE,MAAM,GAAG,IAAI,CAAC;IAC3B,UAAU,EAAE,MAAM,CAAC;IACnB,QAAQ,EAAE,MAAM,CAAC;IACjB,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAC;IACxB,aAAa,EAAE,OAAO,CAAC;IACvB,cAAc,EAAE,MAAM,CAAC;IACvB,gBAAgB,EAAE,MAAM,GAAG,IAAI,CAAC;IAChC,cAAc,EAAE,MAAM,GAAG,IAAI,CAAC;IAC9B,gBAAgB,EAAE,MAAM,CAAC;IACzB,eAAe,EAAE,MAAM,CAAC;IACxB,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,MAAM,CAAC;CACnB;AAED,6EAA6E;AAC7E,MAAM,WAAW,SAAS;IACxB,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,GAAG,IAAI,CAAC;IACpB,IAAI,EAAE,MAAM,GAAG,IAAI,CAAC;IACpB,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAC;IACxB,KAAK,EAAE,MAAM,GAAG,IAAI,CAAC;IACrB,KAAK,EAAE,MAAM,GAAG,IAAI,CAAC;IACrB,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,EAAE,MAAM,CAAC;IACf,IAAI,EAAE,MAAM,CAAC;IACb,uBAAuB,EAAE,OAAO,CAAC;IACjC,UAAU,EAAE,MAAM,GAAG,IAAI,CAAC;IAC1B,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,MAAM,CAAC;IAClB,cAAc,EAAE,iBAAiB,GAAG,IAAI,CAAC;CAC1C;AAED,MAAM,WAAW,YAAY;IAC3B,SAAS,EAAE,MAAM,CAAC;IAClB,YAAY,EAAE,MAAM,GAAG,IAAI,CAAC;IAC5B,UAAU,EAAE,MAAM,CAAC;IACnB,iBAAiB,EAAE,MAAM,GAAG,IAAI,CAAC;IACjC,UAAU,EAAE,OAAO,CAAC;CACrB;AAED,MAAM,WAAW,aAAa;IAC5B,EAAE,EAAE,MAAM,CAAC;IACX,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,EAAE,MAAM,CAAC;IACjB,OAAO,EAAE,MAAM,CAAC;IAChB,SAAS,EAAE,OAAO,CAAC;CACpB;AAED,MAAM,WAAW,iBAAiB;IAChC,GAAG,EAAE,MAAM,CAAC;IACZ,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,EAAE,MAAM,GAAG,OAAO,GAAG,OAAO,GAAG,QAAQ,GAAG,MAAM,GAAG,UAAU,CAAC;IAClE,QAAQ,EAAE,OAAO,CAAC;IAClB,OAAO,EAAE,OAAO,CAAC;IACjB,KAAK,EAAE,MAAM,CAAC;IACd,aAAa,CAAC,EAAE,MAAM,CAAC;CACxB;AAED,MAAM,WAAW,sBAAsB;IACrC,MAAM,EAAE,iBAAiB,EAAE,CAAC;IAC5B,kBAAkB,EAAE,MAAM,CAAC;CAC5B;AAED,MAAM,WAAW,oBAAoB;IACnC,SAAS,EAAE,MAAM,CAAC;IAClB,IAAI,EAAE,MAAM,CAAC;CACd;AAED,MAAM,WAAW,sBAAsB;IACrC,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,MAAM,CAAC,EAAE,GAAG,GAAG,GAAG,GAAG,GAAG,CAAC;IACzB,uBAAuB,EAAE,OAAO,CAAC;IACjC,oBAAoB,EAAE,OAAO,CAAC;IAC9B,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;CAClC;AAED,MAAM,WAAW,kBAAkB;IACjC,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,KAAK,EAAE,MAAM,CAAC;IACd,cAAc,EAAE;QAAE,EAAE,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAA;KAAE,CAAC;IAC7C,KAAK,EAAE,MAAM,CAAC;CACf"}
1
+ {"version":3,"file":"member.d.ts","sourceRoot":"","sources":["../../src/types/member.ts"],"names":[],"mappings":"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"}
@@ -64,6 +64,7 @@ export interface Product {
64
64
  seoDescription: string | null;
65
65
  shippingWeight: number | null;
66
66
  status: string;
67
+ productType: string;
67
68
  stockQuantity: number;
68
69
  stockStatus: string;
69
70
  categoryId: number | null;
@@ -90,6 +91,7 @@ export interface ProductListItem {
90
91
  memberPrice: number | null;
91
92
  seoTitle: string | null;
92
93
  status: string | null;
94
+ productType: string;
93
95
  stockStatus: string;
94
96
  categoryName: string | null;
95
97
  categories: CategoryRef[];
@@ -99,6 +101,8 @@ export interface ProductListItem {
99
101
  export interface CartItem {
100
102
  product: ProductListItem;
101
103
  quantity: number;
104
+ variationId?: number;
105
+ variationName?: string;
102
106
  }
103
107
  export interface ShopCategory {
104
108
  id: number;
@@ -118,6 +122,7 @@ export interface CreateOrderRequest {
118
122
  lineItems: {
119
123
  productId: number;
120
124
  quantity: number;
125
+ variationId?: number;
121
126
  }[];
122
127
  customerInfo: {
123
128
  firstName: string;
@@ -155,4 +160,35 @@ export interface ShopOrder {
155
160
  items: ShopOrderItem[];
156
161
  createdAt: string;
157
162
  }
163
+ export interface SubscriptionPlan {
164
+ id: string;
165
+ productId: number;
166
+ billingCycle: string;
167
+ price: number;
168
+ currency: string;
169
+ trialDays: number;
170
+ linkedPackageId: number | null;
171
+ tokensPerCycle: number | null;
172
+ gatewayPriceId: string | null;
173
+ gatewayType: string | null;
174
+ isActive: boolean;
175
+ }
176
+ export interface ProductSubscription {
177
+ id: string;
178
+ planId: string;
179
+ productId: number;
180
+ productName: string;
181
+ billingCycle: string;
182
+ status: string;
183
+ subscriptionMode: string;
184
+ amount: number;
185
+ currency: string;
186
+ currentPeriodStart: string | null;
187
+ currentPeriodEnd: string | null;
188
+ nextBillingDate: string | null;
189
+ autoRenew: boolean;
190
+ gatewaySubscriptionId: string | null;
191
+ cancelledAt: string | null;
192
+ createdAt: string;
193
+ }
158
194
  //# sourceMappingURL=shop.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"shop.d.ts","sourceRoot":"","sources":["../../src/types/shop.ts"],"names":[],"mappings":"AAAA,MAAM,WAAW,YAAY;IAC3B,EAAE,EAAE,MAAM,CAAC;IACX,GAAG,EAAE,MAAM,CAAC;IACZ,IAAI,EAAE,MAAM,CAAC;IACb,GAAG,EAAE,MAAM,CAAC;IACZ,QAAQ,EAAE,MAAM,CAAC;IACjB,QAAQ,EAAE,MAAM,CAAC;IACjB,SAAS,EAAE,MAAM,CAAC;IAClB,KAAK,EAAE,MAAM,GAAG,IAAI,CAAC;IACrB,MAAM,EAAE,MAAM,GAAG,IAAI,CAAC;IACtB,SAAS,EAAE,OAAO,CAAC;CACpB;AAED,MAAM,WAAW,kBAAkB;IACjC,EAAE,EAAE,MAAM,CAAC;IACX,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,EAAE,MAAM,CAAC;CAClB;AAED,MAAM,WAAW,aAAa;IAC5B,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,EAAE,MAAM,CAAC;IACjB,QAAQ,EAAE,OAAO,CAAC;IAClB,MAAM,EAAE,kBAAkB,EAAE,CAAC;CAC9B;AAED,MAAM,WAAW,gBAAgB;IAC/B,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,CAAC;IACb,GAAG,EAAE,MAAM,GAAG,IAAI,CAAC;IACnB,KAAK,EAAE,MAAM,CAAC;IACd,aAAa,EAAE,MAAM,GAAG,IAAI,CAAC;IAC7B,WAAW,EAAE,MAAM,GAAG,IAAI,CAAC;IAC3B,YAAY,EAAE,MAAM,CAAC;IACrB,SAAS,EAAE,MAAM,GAAG,IAAI,CAAC;IACzB,MAAM,EAAE,OAAO,CAAC;IAChB,QAAQ,EAAE,MAAM,CAAC;IACjB,cAAc,EAAE,MAAM,GAAG,IAAI,CAAC;IAC9B,eAAe,EAAE;QAAE,UAAU,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAA;KAAE,EAAE,CAAC;IACzD,aAAa,EAAE,MAAM,CAAC;IACtB,WAAW,EAAE,MAAM,CAAC;IACpB,QAAQ,EAAE,MAAM,CAAC;CAClB;AAED,MAAM,WAAW,WAAW;IAC1B,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,GAAG,IAAI,CAAC;CACrB;AAED,MAAM,WAAW,OAAO;IACtB,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,CAAC;IACb,SAAS,EAAE,MAAM,GAAG,IAAI,CAAC;IACzB,WAAW,EAAE,MAAM,GAAG,IAAI,CAAC;IAC3B,IAAI,EAAE,MAAM,GAAG,IAAI,CAAC;IACpB,GAAG,EAAE,MAAM,GAAG,IAAI,CAAC;IACnB,KAAK,EAAE,MAAM,CAAC;IACd,aAAa,EAAE,MAAM,GAAG,IAAI,CAAC;IAC7B,WAAW,EAAE,MAAM,GAAG,IAAI,CAAC;IAC3B,YAAY,EAAE,MAAM,CAAC;IACrB,SAAS,EAAE,MAAM,GAAG,IAAI,CAAC;IACzB,MAAM,EAAE,OAAO,CAAC;IAChB,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAC;IACxB,cAAc,EAAE,MAAM,GAAG,IAAI,CAAC;IAC9B,cAAc,EAAE,MAAM,GAAG,IAAI,CAAC;IAC9B,MAAM,EAAE,MAAM,CAAC;IACf,aAAa,EAAE,MAAM,CAAC;IACtB,WAAW,EAAE,MAAM,CAAC;IACpB,UAAU,EAAE,MAAM,GAAG,IAAI,CAAC;IAC1B,YAAY,EAAE,MAAM,GAAG,IAAI,CAAC;IAC5B,UAAU,EAAE,WAAW,EAAE,CAAC;IAC1B,UAAU,EAAE,OAAO,CAAC;IACpB,WAAW,EAAE,OAAO,CAAC;IACrB,eAAe,EAAE,MAAM,GAAG,IAAI,CAAC;IAC/B,MAAM,EAAE,YAAY,EAAE,CAAC;IACvB,OAAO,EAAE,aAAa,EAAE,CAAC;IACzB,eAAe,EAAE;QAAE,UAAU,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAA;KAAE,EAAE,CAAC;IACzD,UAAU,EAAE,gBAAgB,EAAE,CAAC;CAChC;AAED,MAAM,WAAW,eAAe;IAC9B,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,EAAE,MAAM,CAAC;IACpB,IAAI,EAAE,MAAM,GAAG,IAAI,CAAC;IACpB,KAAK,EAAE,MAAM,GAAG,IAAI,CAAC;IACrB,aAAa,EAAE,MAAM,GAAG,IAAI,CAAC;IAC7B,WAAW,EAAE,MAAM,GAAG,IAAI,CAAC;IAC3B,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAC;IACxB,MAAM,EAAE,MAAM,GAAG,IAAI,CAAC;IACtB,WAAW,EAAE,MAAM,CAAC;IACpB,YAAY,EAAE,MAAM,GAAG,IAAI,CAAC;IAC5B,UAAU,EAAE,WAAW,EAAE,CAAC;IAC1B,UAAU,EAAE,OAAO,CAAC;IACpB,KAAK,EAAE,MAAM,GAAG,IAAI,CAAC;CACtB;AAED,MAAM,WAAW,QAAQ;IACvB,OAAO,EAAE,eAAe,CAAC;IACzB,QAAQ,EAAE,MAAM,CAAC;CAClB;AAED,MAAM,WAAW,YAAY;IAC3B,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,GAAG,IAAI,CAAC;IACpB,YAAY,EAAE,MAAM,CAAC;CACtB;AAED,MAAM,WAAW,cAAc;IAC7B,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,EAAE,MAAM,CAAC;IACpB,IAAI,EAAE,MAAM,CAAC;IACb,eAAe,EAAE,MAAM,CAAC;IACxB,qBAAqB,EAAE,MAAM,GAAG,IAAI,CAAC;CACtC;AAED,MAAM,WAAW,kBAAkB;IACjC,SAAS,EAAE;QAAE,SAAS,EAAE,MAAM,CAAC;QAAC,QAAQ,EAAE,MAAM,CAAA;KAAE,EAAE,CAAC;IACrD,YAAY,EAAE;QACZ,SAAS,EAAE,MAAM,CAAC;QAClB,QAAQ,EAAE,MAAM,CAAC;QACjB,KAAK,CAAC,EAAE,MAAM,CAAC;QACf,KAAK,CAAC,EAAE,MAAM,CAAC;KAChB,CAAC;IACF,eAAe,EAAE;QACf,YAAY,EAAE,MAAM,CAAC;QACrB,YAAY,CAAC,EAAE,MAAM,CAAC;QACtB,IAAI,EAAE,MAAM,CAAC;QACb,KAAK,CAAC,EAAE,MAAM,CAAC;QACf,OAAO,CAAC,EAAE,MAAM,CAAC;QACjB,OAAO,CAAC,EAAE,MAAM,CAAC;KAClB,CAAC;IACF,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,aAAa,CAAC,EAAE,MAAM,CAAC;CACxB;AAED,MAAM,WAAW,aAAa;IAC5B,SAAS,EAAE,MAAM,GAAG,IAAI,CAAC;IACzB,WAAW,EAAE,MAAM,CAAC;IACpB,QAAQ,EAAE,MAAM,CAAC;IACjB,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,MAAM,CAAC;CACnB;AAED,MAAM,WAAW,SAAS;IACxB,EAAE,EAAE,MAAM,CAAC;IACX,OAAO,EAAE,MAAM,CAAC;IAChB,WAAW,EAAE,MAAM,GAAG,IAAI,CAAC;IAC3B,MAAM,EAAE,MAAM,CAAC;IACf,QAAQ,EAAE,MAAM,CAAC;IACjB,cAAc,EAAE,MAAM,CAAC;IACvB,YAAY,EAAE,MAAM,CAAC;IACrB,WAAW,EAAE,MAAM,CAAC;IACpB,KAAK,EAAE,aAAa,EAAE,CAAC;IACvB,SAAS,EAAE,MAAM,CAAC;CACnB"}
1
+ {"version":3,"file":"shop.d.ts","sourceRoot":"","sources":["../../src/types/shop.ts"],"names":[],"mappings":"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"}
@@ -15,4 +15,10 @@ export declare function validateOtp(otp: string): boolean;
15
15
  export declare function validateRequired(fields: Record<string, unknown>, required: string[]): string | null;
16
16
  export declare function validateRegistrationForm(data: Partial<RegistrationSubmission>): ValidationError[];
17
17
  export declare function validateEventRegistrationForm(data: Partial<EventRegistrationSubmission>): ValidationError[];
18
+ export declare function validateContactForm(data: Partial<{
19
+ name: string;
20
+ email: string;
21
+ phone?: string;
22
+ message: string;
23
+ }>): ValidationError[];
18
24
  //# sourceMappingURL=validation.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"validation.d.ts","sourceRoot":"","sources":["../src/validation.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,mBAAmB,CAAC;AAChE,OAAO,KAAK,EAAE,2BAA2B,EAAE,MAAM,kBAAkB,CAAC;AAEpE,MAAM,WAAW,eAAe;IAC9B,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,EAAE,UAAU,GAAG,gBAAgB,CAAC;IACpC,OAAO,EAAE,MAAM,CAAC;CACjB;AAOD,wBAAgB,aAAa,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAEpD;AAED;;;GAGG;AACH,wBAAgB,aAAa,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAEpD;AAED,wBAAgB,WAAW,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAEhD;AAED,wBAAgB,gBAAgB,CAC9B,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAC/B,QAAQ,EAAE,MAAM,EAAE,GACjB,MAAM,GAAG,IAAI,CAQf;AAED,wBAAgB,wBAAwB,CACtC,IAAI,EAAE,OAAO,CAAC,sBAAsB,CAAC,GACpC,eAAe,EAAE,CAsBnB;AAED,wBAAgB,6BAA6B,CAC3C,IAAI,EAAE,OAAO,CAAC,2BAA2B,CAAC,GACzC,eAAe,EAAE,CAgCnB"}
1
+ {"version":3,"file":"validation.d.ts","sourceRoot":"","sources":["../src/validation.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,mBAAmB,CAAC;AAChE,OAAO,KAAK,EAAE,2BAA2B,EAAE,MAAM,kBAAkB,CAAC;AAEpE,MAAM,WAAW,eAAe;IAC9B,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,EAAE,UAAU,GAAG,gBAAgB,CAAC;IACpC,OAAO,EAAE,MAAM,CAAC;CACjB;AAOD,wBAAgB,aAAa,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAEpD;AAED;;;GAGG;AACH,wBAAgB,aAAa,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAEpD;AAED,wBAAgB,WAAW,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAEhD;AAED,wBAAgB,gBAAgB,CAC9B,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAC/B,QAAQ,EAAE,MAAM,EAAE,GACjB,MAAM,GAAG,IAAI,CAQf;AAED,wBAAgB,wBAAwB,CACtC,IAAI,EAAE,OAAO,CAAC,sBAAsB,CAAC,GACpC,eAAe,EAAE,CAsBnB;AAED,wBAAgB,6BAA6B,CAC3C,IAAI,EAAE,OAAO,CAAC,2BAA2B,CAAC,GACzC,eAAe,EAAE,CAgCnB;AAED,wBAAgB,mBAAmB,CACjC,IAAI,EAAE,OAAO,CAAC;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,MAAM,CAAC;IAAC,KAAK,CAAC,EAAE,MAAM,CAAC;IAAC,OAAO,EAAE,MAAM,CAAA;CAAE,CAAC,GAC9E,eAAe,EAAE,CAkBnB"}
@@ -71,4 +71,20 @@ export function validateEventRegistrationForm(data) {
71
71
  }
72
72
  return errors;
73
73
  }
74
+ export function validateContactForm(data) {
75
+ const errors = [];
76
+ if (!data.name?.trim()) {
77
+ errors.push({ field: 'name', code: 'REQUIRED', message: 'Name is required' });
78
+ }
79
+ if (!data.email?.trim()) {
80
+ errors.push({ field: 'email', code: 'REQUIRED', message: 'Email is required' });
81
+ }
82
+ else if (!validateEmail(data.email)) {
83
+ errors.push({ field: 'email', code: 'INVALID_FORMAT', message: 'Invalid email format' });
84
+ }
85
+ if (!data.message?.trim()) {
86
+ errors.push({ field: 'message', code: 'REQUIRED', message: 'Message is required' });
87
+ }
88
+ return errors;
89
+ }
74
90
  //# sourceMappingURL=validation.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"validation.js","sourceRoot":"","sources":["../src/validation.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"validation.js","sourceRoot":"","sources":["../src/validation.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@favcrm/sdk",
3
- "version": "0.1.2",
3
+ "version": "0.1.3",
4
4
  "description": "FavCRM SDK - Shared business logic for shop, checkout, and promotions",
5
5
  "type": "module",
6
6
  "main": "./dist/index.js",