@pvh-afl/core 1.2.14 → 1.2.16

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 (37) hide show
  1. package/dist/common/circuit-breaker.d.ts +81 -0
  2. package/dist/common/circuit-breaker.d.ts.map +1 -0
  3. package/dist/common/circuit-breaker.js +163 -0
  4. package/dist/common/circuit-breaker.js.map +1 -0
  5. package/dist/common/index.d.ts +1 -0
  6. package/dist/common/index.d.ts.map +1 -1
  7. package/dist/common/index.js +1 -0
  8. package/dist/common/index.js.map +1 -1
  9. package/dist/integrations/commerce/commerce.types.d.ts +59 -0
  10. package/dist/integrations/commerce/commerce.types.d.ts.map +1 -1
  11. package/dist/integrations/commerce/shopify-admin.service.d.ts +58 -0
  12. package/dist/integrations/commerce/shopify-admin.service.d.ts.map +1 -1
  13. package/dist/integrations/commerce/shopify-admin.service.js +241 -0
  14. package/dist/integrations/commerce/shopify-admin.service.js.map +1 -1
  15. package/dist/integrations/commerce/shopify.service.d.ts +17 -1
  16. package/dist/integrations/commerce/shopify.service.d.ts.map +1 -1
  17. package/dist/integrations/commerce/shopify.service.js +202 -0
  18. package/dist/integrations/commerce/shopify.service.js.map +1 -1
  19. package/dist/integrations/integrations.module.d.ts.map +1 -1
  20. package/dist/integrations/integrations.module.js +3 -0
  21. package/dist/integrations/integrations.module.js.map +1 -1
  22. package/dist/integrations/search/index.d.ts +2 -0
  23. package/dist/integrations/search/index.d.ts.map +1 -1
  24. package/dist/integrations/search/index.js +2 -0
  25. package/dist/integrations/search/index.js.map +1 -1
  26. package/dist/integrations/search/search-fallback.service.d.ts +93 -0
  27. package/dist/integrations/search/search-fallback.service.d.ts.map +1 -0
  28. package/dist/integrations/search/search-fallback.service.js +339 -0
  29. package/dist/integrations/search/search-fallback.service.js.map +1 -0
  30. package/dist/integrations/search/search.types.d.ts +10 -0
  31. package/dist/integrations/search/search.types.d.ts.map +1 -1
  32. package/dist/integrations/search/search.types.js.map +1 -1
  33. package/dist/integrations/search/shopify-search.mapper.d.ts +31 -0
  34. package/dist/integrations/search/shopify-search.mapper.d.ts.map +1 -0
  35. package/dist/integrations/search/shopify-search.mapper.js +365 -0
  36. package/dist/integrations/search/shopify-search.mapper.js.map +1 -0
  37. package/package.json +1 -1
@@ -554,6 +554,12 @@ let ShopifyAdminService = class ShopifyAdminService {
554
554
  birthDate: metafield(namespace: "facts", key: "birth_date") {
555
555
  value
556
556
  }
557
+ accountDeactivation: metafield(
558
+ namespace: "facts"
559
+ key: "account_deactivation"
560
+ ) {
561
+ jsonValue
562
+ }
557
563
  }
558
564
  }
559
565
  `;
@@ -573,6 +579,7 @@ let ShopifyAdminService = class ShopifyAdminService {
573
579
  return {
574
580
  gender: customer?.gender?.value ?? undefined,
575
581
  birthDate: customer?.birthDate?.value ?? undefined,
582
+ accountDeactivation: customer?.accountDeactivation?.jsonValue ?? undefined,
576
583
  };
577
584
  }
578
585
  catch (error) {
@@ -584,6 +591,240 @@ let ShopifyAdminService = class ShopifyAdminService {
584
591
  return {};
585
592
  }
586
593
  }
594
+ /**
595
+ * Write a JSON metafield on a customer via `metafieldsSet`.
596
+ *
597
+ * Used for state that belongs together and must land atomically (e.g. the
598
+ * account-deactivation flag, its timestamp and the reason), which separate
599
+ * metafields cannot guarantee.
600
+ */
601
+ async setCustomerMetafieldJson(brand, customerId, namespace, key, value) {
602
+ const config = this.getAdminConfig(brand);
603
+ const customerGid = this.formatCustomerGid(customerId);
604
+ const mutation = `
605
+ mutation setCustomerMetafield($metafields: [MetafieldsSetInput!]!) {
606
+ metafieldsSet(metafields: $metafields) {
607
+ metafields {
608
+ id
609
+ }
610
+ userErrors {
611
+ field
612
+ message
613
+ }
614
+ }
615
+ }
616
+ `;
617
+ try {
618
+ const response = await this.executeGraphQL(config, mutation, {
619
+ metafields: [
620
+ {
621
+ ownerId: customerGid,
622
+ namespace,
623
+ key,
624
+ type: "json",
625
+ value: JSON.stringify(value),
626
+ },
627
+ ],
628
+ });
629
+ if (response.errors && response.errors.length > 0) {
630
+ const errorMsg = response.errors.map((e) => e.message).join(", ");
631
+ logger_1.logger.error("GraphQL errors setting customer metafield", {
632
+ brand,
633
+ customerId,
634
+ namespace,
635
+ key,
636
+ errors: response.errors,
637
+ });
638
+ return { success: false, error: errorMsg };
639
+ }
640
+ const userErrors = response.data?.metafieldsSet?.userErrors;
641
+ if (userErrors && userErrors.length > 0) {
642
+ const errorMsg = userErrors.map((e) => e.message).join(", ");
643
+ logger_1.logger.error("User errors setting customer metafield", {
644
+ brand,
645
+ customerId,
646
+ namespace,
647
+ key,
648
+ userErrors,
649
+ });
650
+ return { success: false, error: errorMsg };
651
+ }
652
+ logger_1.logger.info("Customer metafield set", {
653
+ brand,
654
+ customerId,
655
+ namespace,
656
+ key,
657
+ });
658
+ return { success: true };
659
+ }
660
+ catch (error) {
661
+ const errorMsg = error instanceof Error ? error.message : "Unknown error";
662
+ logger_1.logger.error("Failed to set customer metafield", {
663
+ brand,
664
+ customerId,
665
+ namespace,
666
+ key,
667
+ error: errorMsg,
668
+ });
669
+ return { success: false, error: errorMsg };
670
+ }
671
+ }
672
+ /**
673
+ * Delete a metafield from a customer via `metafieldsDelete`.
674
+ *
675
+ * Writing `null` through `customerUpdate` does not clear a metafield, so
676
+ * clearing requires this explicit delete. Deleting an absent metafield is not
677
+ * an error, which keeps callers idempotent.
678
+ */
679
+ async deleteCustomerMetafield(brand, customerId, namespace, key) {
680
+ const config = this.getAdminConfig(brand);
681
+ const customerGid = this.formatCustomerGid(customerId);
682
+ const mutation = `
683
+ mutation deleteCustomerMetafield(
684
+ $metafields: [MetafieldIdentifierInput!]!
685
+ ) {
686
+ metafieldsDelete(metafields: $metafields) {
687
+ deletedMetafields {
688
+ key
689
+ }
690
+ userErrors {
691
+ field
692
+ message
693
+ }
694
+ }
695
+ }
696
+ `;
697
+ try {
698
+ const response = await this.executeGraphQL(config, mutation, {
699
+ metafields: [{ ownerId: customerGid, namespace, key }],
700
+ });
701
+ if (response.errors && response.errors.length > 0) {
702
+ const errorMsg = response.errors.map((e) => e.message).join(", ");
703
+ logger_1.logger.error("GraphQL errors deleting customer metafield", {
704
+ brand,
705
+ customerId,
706
+ namespace,
707
+ key,
708
+ errors: response.errors,
709
+ });
710
+ return { success: false, error: errorMsg };
711
+ }
712
+ const userErrors = response.data?.metafieldsDelete?.userErrors;
713
+ if (userErrors && userErrors.length > 0) {
714
+ const errorMsg = userErrors.map((e) => e.message).join(", ");
715
+ logger_1.logger.error("User errors deleting customer metafield", {
716
+ brand,
717
+ customerId,
718
+ namespace,
719
+ key,
720
+ userErrors,
721
+ });
722
+ return { success: false, error: errorMsg };
723
+ }
724
+ logger_1.logger.info("Customer metafield deleted", {
725
+ brand,
726
+ customerId,
727
+ namespace,
728
+ key,
729
+ });
730
+ return { success: true };
731
+ }
732
+ catch (error) {
733
+ const errorMsg = error instanceof Error ? error.message : "Unknown error";
734
+ logger_1.logger.error("Failed to delete customer metafield", {
735
+ brand,
736
+ customerId,
737
+ namespace,
738
+ key,
739
+ error: errorMsg,
740
+ });
741
+ return { success: false, error: errorMsg };
742
+ }
743
+ }
744
+ /**
745
+ * Add or remove tags on a customer via `tagsAdd` / `tagsRemove`.
746
+ *
747
+ * Only the named tags are touched — every other tag on the customer is left
748
+ * exactly as it was, and no tag is read before writing.
749
+ *
750
+ * Deliberately NOT `customerUpdate(input: { tags })`: that field REPLACES the
751
+ * whole tag array, so it would erase every other tag on the customer (loyalty
752
+ * tier, segments, marketing). Reading the tags first and writing them back
753
+ * would avoid the erasure but introduce a race — Shopify Flow or a
754
+ * merchandiser editing tags in admin between our read and our write would lose
755
+ * their change. `tagsAdd` / `tagsRemove` never carry the other tags at all, so
756
+ * neither problem exists.
757
+ *
758
+ * Idempotent in both directions: Shopify dedupes, so adding a tag that is
759
+ * already present and removing one that is absent are both no-ops.
760
+ *
761
+ * @param operation - `"add"` to attach the tags, `"remove"` to detach them.
762
+ */
763
+ async updateCustomerTags(brand, customerId, operation, tags) {
764
+ if (tags.length === 0) {
765
+ return { success: true };
766
+ }
767
+ const config = this.getAdminConfig(brand);
768
+ const customerGid = this.formatCustomerGid(customerId);
769
+ const field = operation === "add" ? "tagsAdd" : "tagsRemove";
770
+ const mutation = `
771
+ mutation customerTags($id: ID!, $tags: [String!]!) {
772
+ ${field}(id: $id, tags: $tags) {
773
+ node {
774
+ id
775
+ }
776
+ userErrors {
777
+ field
778
+ message
779
+ }
780
+ }
781
+ }
782
+ `;
783
+ try {
784
+ const response = await this.executeGraphQL(config, mutation, { id: customerGid, tags });
785
+ if (response.errors && response.errors.length > 0) {
786
+ const errorMsg = response.errors.map((e) => e.message).join(", ");
787
+ logger_1.logger.error("GraphQL errors updating customer tags", {
788
+ brand,
789
+ customerId,
790
+ operation,
791
+ tags,
792
+ errors: response.errors,
793
+ });
794
+ return { success: false, error: errorMsg };
795
+ }
796
+ const userErrors = response.data?.[field]?.userErrors;
797
+ if (userErrors && userErrors.length > 0) {
798
+ const errorMsg = userErrors.map((e) => e.message).join(", ");
799
+ logger_1.logger.error("User errors updating customer tags", {
800
+ brand,
801
+ customerId,
802
+ operation,
803
+ tags,
804
+ userErrors,
805
+ });
806
+ return { success: false, error: errorMsg };
807
+ }
808
+ logger_1.logger.info("Customer tags updated", {
809
+ brand,
810
+ customerId,
811
+ operation,
812
+ tags,
813
+ });
814
+ return { success: true };
815
+ }
816
+ catch (error) {
817
+ const errorMsg = error instanceof Error ? error.message : "Unknown error";
818
+ logger_1.logger.error("Failed to update customer tags", {
819
+ brand,
820
+ customerId,
821
+ operation,
822
+ tags,
823
+ error: errorMsg,
824
+ });
825
+ return { success: false, error: errorMsg };
826
+ }
827
+ }
587
828
  /**
588
829
  * Fetch a customer's profile (native fields) by id via the Admin API.
589
830
  *
@@ -1 +1 @@
1
- {"version":3,"file":"shopify-admin.service.js","sourceRoot":"","sources":["../../../src/integrations/commerce/shopify-admin.service.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"shopify-admin.service.js","sourceRoot":"","sources":["../../../src/integrations/commerce/shopify-admin.service.ts"],"names":[],"mappings":"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"}
@@ -1,6 +1,6 @@
1
1
  import { BaseIntegrationService } from "../base-integration.service";
2
2
  import { IntegrationResponse } from "../integration.types";
3
- import { ICommerceService, CommerceProduct, CommerceCollection, CommerceCart, CommerceMenu, CommercePage, CommerceConnection, CommerceProductRecommendation, ProductsParams, CollectionsParams, CartLineInput, CartLineUpdateInput, CartBuyerIdentityInput, CartAttributeInput, CartCreateInput, CommerceCustomer, CommerceCustomerAccessToken } from "./commerce.types";
3
+ import { ICommerceService, CommerceProduct, CommerceCollection, CommerceCart, CommerceMenu, CommercePage, CommerceConnection, CommerceProductRecommendation, ProductsParams, CollectionsParams, CartLineInput, CartLineUpdateInput, CartBuyerIdentityInput, CartAttributeInput, CartCreateInput, CommerceCustomer, CommerceCustomerAccessToken, CommerceProductSearchResult, CommercePredictiveSearchResult, CommerceSearchParams, CommerceCollectionProductsParams } from "./commerce.types";
4
4
  /**
5
5
  * Shopify Commerce Service
6
6
  *
@@ -19,6 +19,22 @@ export declare class ShopifyCommerceService extends BaseIntegrationService imple
19
19
  getProductRecommendations(productId: string, count?: number): Promise<IntegrationResponse<CommerceProductRecommendation[]>>;
20
20
  getCollections(params?: CollectionsParams): Promise<IntegrationResponse<CommerceConnection<CommerceCollection>>>;
21
21
  getCollectionByHandle(handle: string, productsFirst?: number): Promise<IntegrationResponse<CommerceCollection | null>>;
22
+ /**
23
+ * Keyword search via the Storefront `search` query.
24
+ * The shopper's text is passed through untouched as a GraphQL variable.
25
+ */
26
+ searchProducts(params: CommerceSearchParams): Promise<IntegrationResponse<CommerceProductSearchResult>>;
27
+ /**
28
+ * Collection listing with Shopify-native filters, for the filter fallback.
29
+ * Returns null when the collection handle does not exist.
30
+ */
31
+ getCollectionProducts(params: CommerceCollectionProductsParams): Promise<IntegrationResponse<(CommerceProductSearchResult & {
32
+ title: string;
33
+ }) | null>>;
34
+ /**
35
+ * Type-ahead suggestions via `predictiveSearch`, for the autocomplete fallback.
36
+ */
37
+ predictiveSearch(query: string, limit?: number): Promise<IntegrationResponse<CommercePredictiveSearchResult>>;
22
38
  getMenu(handle: string): Promise<IntegrationResponse<CommerceMenu | null>>;
23
39
  getPage(handle: string): Promise<IntegrationResponse<CommercePage | null>>;
24
40
  createCart(input?: CartCreateInput): Promise<IntegrationResponse<CommerceCart>>;
@@ -1 +1 @@
1
- {"version":3,"file":"shopify.service.d.ts","sourceRoot":"","sources":["../../../src/integrations/commerce/shopify.service.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,sBAAsB,EAAE,MAAM,6BAA6B,CAAC;AACrE,OAAO,EAAE,mBAAmB,EAAE,MAAM,sBAAsB,CAAC;AAC3D,OAAO,EACL,gBAAgB,EAChB,eAAe,EACf,kBAAkB,EAClB,YAAY,EACZ,YAAY,EACZ,YAAY,EACZ,kBAAkB,EAClB,6BAA6B,EAC7B,cAAc,EACd,iBAAiB,EACjB,aAAa,EACb,mBAAmB,EACnB,sBAAsB,EACtB,kBAAkB,EAClB,eAAe,EACf,gBAAgB,EAChB,2BAA2B,EAC5B,MAAM,kBAAkB,CAAC;AA4nB1B;;;;;GAKG;AACH,qBACa,sBACX,SAAQ,sBACR,YAAW,gBAAgB;IAE3B,QAAQ,CAAC,IAAI,sBAAsB;IAEnC;;OAEG;YACW,YAAY;IAoCpB,WAAW,CACf,MAAM,GAAE,cAAmB,GAC1B,OAAO,CAAC,mBAAmB,CAAC,kBAAkB,CAAC,eAAe,CAAC,CAAC,CAAC;IAY9D,cAAc,CAClB,EAAE,EAAE,MAAM,GACT,OAAO,CAAC,mBAAmB,CAAC,eAAe,GAAG,IAAI,CAAC,CAAC;IAYjD,kBAAkB,CACtB,MAAM,EAAE,MAAM,GACb,OAAO,CAAC,mBAAmB,CAAC,eAAe,GAAG,IAAI,CAAC,CAAC;IAajD,yBAAyB,CAC7B,SAAS,EAAE,MAAM,EACjB,KAAK,SAAI,GACR,OAAO,CAAC,mBAAmB,CAAC,6BAA6B,EAAE,CAAC,CAAC;IAc1D,cAAc,CAClB,MAAM,GAAE,iBAAsB,GAC7B,OAAO,CAAC,mBAAmB,CAAC,kBAAkB,CAAC,kBAAkB,CAAC,CAAC,CAAC;IAYjE,qBAAqB,CACzB,MAAM,EAAE,MAAM,EACd,aAAa,SAAK,GACjB,OAAO,CAAC,mBAAmB,CAAC,kBAAkB,GAAG,IAAI,CAAC,CAAC;IA0CpD,OAAO,CACX,MAAM,EAAE,MAAM,GACb,OAAO,CAAC,mBAAmB,CAAC,YAAY,GAAG,IAAI,CAAC,CAAC;IAa9C,OAAO,CACX,MAAM,EAAE,MAAM,GACb,OAAO,CAAC,mBAAmB,CAAC,YAAY,GAAG,IAAI,CAAC,CAAC;IAc9C,UAAU,CACd,KAAK,CAAC,EAAE,eAAe,GACtB,OAAO,CAAC,mBAAmB,CAAC,YAAY,CAAC,CAAC;IAgCvC,OAAO,CACX,MAAM,EAAE,MAAM,GACb,OAAO,CAAC,mBAAmB,CAAC,YAAY,GAAG,IAAI,CAAC,CAAC;IAa9C,SAAS,CACb,MAAM,EAAE,MAAM,EACd,KAAK,EAAE,aAAa,EAAE,GACrB,OAAO,CAAC,mBAAmB,CAAC,YAAY,CAAC,CAAC;IA2BvC,eAAe,CACnB,MAAM,EAAE,MAAM,EACd,KAAK,EAAE,mBAAmB,EAAE,GAC3B,OAAO,CAAC,mBAAmB,CAAC,YAAY,CAAC,CAAC;IA2BvC,eAAe,CACnB,MAAM,EAAE,MAAM,EACd,OAAO,EAAE,MAAM,EAAE,GAChB,OAAO,CAAC,mBAAmB,CAAC,YAAY,CAAC,CAAC;IA2BvC,uBAAuB,CAC3B,MAAM,EAAE,MAAM,EACd,aAAa,EAAE,MAAM,EAAE,GACtB,OAAO,CAAC,mBAAmB,CAAC,YAAY,CAAC,CAAC;IA2BvC,uBAAuB,CAC3B,MAAM,EAAE,MAAM,EACd,aAAa,EAAE,sBAAsB,GACpC,OAAO,CAAC,mBAAmB,CAAC,YAAY,CAAC,CAAC;IA2BvC,cAAc,CAClB,MAAM,EAAE,MAAM,EACd,IAAI,EAAE,MAAM,GACX,OAAO,CAAC,mBAAmB,CAAC,YAAY,CAAC,CAAC;IA2BvC,oBAAoB,CACxB,MAAM,EAAE,MAAM,EACd,UAAU,EAAE,kBAAkB,EAAE,GAC/B,OAAO,CAAC,mBAAmB,CAAC,YAAY,CAAC,CAAC;IA2BvC,uBAAuB,CAC3B,MAAM,EAAE,MAAM,EACd,aAAa,EAAE,MAAM,EAAE,GACtB,OAAO,CAAC,mBAAmB,CAAC,YAAY,CAAC,CAAC;IA2B7C;;;;;OAKG;IACG,yBAAyB,CAC7B,KAAK,EAAE,MAAM,EACb,QAAQ,EAAE,MAAM,GACf,OAAO,CAAC,mBAAmB,CAAC,2BAA2B,CAAC,CAAC;IAiD5D;;;;;;OAMG;IACG,wBAAwB,CAC5B,mBAAmB,EAAE,MAAM,GAC1B,OAAO,CAAC,mBAAmB,CAAC,2BAA2B,CAAC,CAAC;IA6C5D;;OAEG;IACG,WAAW,CACf,mBAAmB,EAAE,MAAM,GAC1B,OAAO,CAAC,mBAAmB,CAAC,gBAAgB,CAAC,CAAC;IAsBjD;;OAEG;IACG,WAAW;;;;;CAWlB"}
1
+ {"version":3,"file":"shopify.service.d.ts","sourceRoot":"","sources":["../../../src/integrations/commerce/shopify.service.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,sBAAsB,EAAE,MAAM,6BAA6B,CAAC;AACrE,OAAO,EAAE,mBAAmB,EAAE,MAAM,sBAAsB,CAAC;AAC3D,OAAO,EACL,gBAAgB,EAChB,eAAe,EACf,kBAAkB,EAClB,YAAY,EACZ,YAAY,EACZ,YAAY,EACZ,kBAAkB,EAClB,6BAA6B,EAC7B,cAAc,EACd,iBAAiB,EACjB,aAAa,EACb,mBAAmB,EACnB,sBAAsB,EACtB,kBAAkB,EAClB,eAAe,EACf,gBAAgB,EAChB,2BAA2B,EAE3B,2BAA2B,EAC3B,8BAA8B,EAC9B,oBAAoB,EACpB,gCAAgC,EACjC,MAAM,kBAAkB,CAAC;AAwvB1B;;;;;GAKG;AACH,qBACa,sBACX,SAAQ,sBACR,YAAW,gBAAgB;IAE3B,QAAQ,CAAC,IAAI,sBAAsB;IAEnC;;OAEG;YACW,YAAY;IAoCpB,WAAW,CACf,MAAM,GAAE,cAAmB,GAC1B,OAAO,CAAC,mBAAmB,CAAC,kBAAkB,CAAC,eAAe,CAAC,CAAC,CAAC;IAY9D,cAAc,CAClB,EAAE,EAAE,MAAM,GACT,OAAO,CAAC,mBAAmB,CAAC,eAAe,GAAG,IAAI,CAAC,CAAC;IAYjD,kBAAkB,CACtB,MAAM,EAAE,MAAM,GACb,OAAO,CAAC,mBAAmB,CAAC,eAAe,GAAG,IAAI,CAAC,CAAC;IAajD,yBAAyB,CAC7B,SAAS,EAAE,MAAM,EACjB,KAAK,SAAI,GACR,OAAO,CAAC,mBAAmB,CAAC,6BAA6B,EAAE,CAAC,CAAC;IAc1D,cAAc,CAClB,MAAM,GAAE,iBAAsB,GAC7B,OAAO,CAAC,mBAAmB,CAAC,kBAAkB,CAAC,kBAAkB,CAAC,CAAC,CAAC;IAYjE,qBAAqB,CACzB,MAAM,EAAE,MAAM,EACd,aAAa,SAAK,GACjB,OAAO,CAAC,mBAAmB,CAAC,kBAAkB,GAAG,IAAI,CAAC,CAAC;IA2C1D;;;OAGG;IACG,cAAc,CAClB,MAAM,EAAE,oBAAoB,GAC3B,OAAO,CAAC,mBAAmB,CAAC,2BAA2B,CAAC,CAAC;IAiC5D;;;OAGG;IACG,qBAAqB,CACzB,MAAM,EAAE,gCAAgC,GACvC,OAAO,CAAC,mBAAmB,CAAC,CAAC,2BAA2B,GAAG;QAAE,KAAK,EAAE,MAAM,CAAA;KAAE,CAAC,GAAG,IAAI,CAAC,CAAC;IA4CzF;;OAEG;IACG,gBAAgB,CACpB,KAAK,EAAE,MAAM,EACb,KAAK,SAAK,GACT,OAAO,CAAC,mBAAmB,CAAC,8BAA8B,CAAC,CAAC;IAgCzD,OAAO,CACX,MAAM,EAAE,MAAM,GACb,OAAO,CAAC,mBAAmB,CAAC,YAAY,GAAG,IAAI,CAAC,CAAC;IAa9C,OAAO,CACX,MAAM,EAAE,MAAM,GACb,OAAO,CAAC,mBAAmB,CAAC,YAAY,GAAG,IAAI,CAAC,CAAC;IAc9C,UAAU,CACd,KAAK,CAAC,EAAE,eAAe,GACtB,OAAO,CAAC,mBAAmB,CAAC,YAAY,CAAC,CAAC;IAgCvC,OAAO,CACX,MAAM,EAAE,MAAM,GACb,OAAO,CAAC,mBAAmB,CAAC,YAAY,GAAG,IAAI,CAAC,CAAC;IAa9C,SAAS,CACb,MAAM,EAAE,MAAM,EACd,KAAK,EAAE,aAAa,EAAE,GACrB,OAAO,CAAC,mBAAmB,CAAC,YAAY,CAAC,CAAC;IA2BvC,eAAe,CACnB,MAAM,EAAE,MAAM,EACd,KAAK,EAAE,mBAAmB,EAAE,GAC3B,OAAO,CAAC,mBAAmB,CAAC,YAAY,CAAC,CAAC;IA2BvC,eAAe,CACnB,MAAM,EAAE,MAAM,EACd,OAAO,EAAE,MAAM,EAAE,GAChB,OAAO,CAAC,mBAAmB,CAAC,YAAY,CAAC,CAAC;IA2BvC,uBAAuB,CAC3B,MAAM,EAAE,MAAM,EACd,aAAa,EAAE,MAAM,EAAE,GACtB,OAAO,CAAC,mBAAmB,CAAC,YAAY,CAAC,CAAC;IA2BvC,uBAAuB,CAC3B,MAAM,EAAE,MAAM,EACd,aAAa,EAAE,sBAAsB,GACpC,OAAO,CAAC,mBAAmB,CAAC,YAAY,CAAC,CAAC;IA2BvC,cAAc,CAClB,MAAM,EAAE,MAAM,EACd,IAAI,EAAE,MAAM,GACX,OAAO,CAAC,mBAAmB,CAAC,YAAY,CAAC,CAAC;IA2BvC,oBAAoB,CACxB,MAAM,EAAE,MAAM,EACd,UAAU,EAAE,kBAAkB,EAAE,GAC/B,OAAO,CAAC,mBAAmB,CAAC,YAAY,CAAC,CAAC;IA2BvC,uBAAuB,CAC3B,MAAM,EAAE,MAAM,EACd,aAAa,EAAE,MAAM,EAAE,GACtB,OAAO,CAAC,mBAAmB,CAAC,YAAY,CAAC,CAAC;IA2B7C;;;;;OAKG;IACG,yBAAyB,CAC7B,KAAK,EAAE,MAAM,EACb,QAAQ,EAAE,MAAM,GACf,OAAO,CAAC,mBAAmB,CAAC,2BAA2B,CAAC,CAAC;IAiD5D;;;;;;OAMG;IACG,wBAAwB,CAC5B,mBAAmB,EAAE,MAAM,GAC1B,OAAO,CAAC,mBAAmB,CAAC,2BAA2B,CAAC,CAAC;IA6C5D;;OAEG;IACG,WAAW,CACf,mBAAmB,EAAE,MAAM,GAC1B,OAAO,CAAC,mBAAmB,CAAC,gBAAgB,CAAC,CAAC;IAsBjD;;OAEG;IACG,WAAW;;;;;CAWlB"}
@@ -123,6 +123,125 @@ const PRODUCTS_QUERY = `
123
123
  }
124
124
  }
125
125
  `;
126
+ // Lightweight product selection for search/collection fallback results. Kept
127
+ // separate from PRODUCTS_QUERY so the fallback stays cheap on query cost: no
128
+ // media, no size charts, no metafields the search grid does not render.
129
+ const SEARCH_PRODUCT_SELECTION = `
130
+ id
131
+ handle
132
+ title
133
+ description
134
+ descriptionHtml
135
+ vendor
136
+ productType
137
+ tags
138
+ featuredImage { url altText width height }
139
+ images(first: 10) {
140
+ edges { node { url altText width height } }
141
+ }
142
+ options { id name values }
143
+ variants(first: 100) {
144
+ edges {
145
+ node {
146
+ id
147
+ title
148
+ availableForSale
149
+ barcode
150
+ sku
151
+ price { amount currencyCode }
152
+ compareAtPrice { amount currencyCode }
153
+ selectedOptions { name value }
154
+ image { url altText width height }
155
+ }
156
+ }
157
+ }
158
+ priceRange {
159
+ minVariantPrice { amount currencyCode }
160
+ maxVariantPrice { amount currencyCode }
161
+ }`;
162
+ const FILTER_SELECTION = `
163
+ id
164
+ label
165
+ type
166
+ values { id label count input }`;
167
+ // Keyword search fallback. `$query` is a variable, so the shopper's text is
168
+ // transported as data and never parsed as query syntax.
169
+ const SEARCH_PRODUCTS_QUERY = `
170
+ query SearchProducts(
171
+ $query: String!
172
+ $first: Int!
173
+ $filters: [ProductFilter!]
174
+ $sortKey: SearchSortKeys
175
+ $reverse: Boolean
176
+ ) {
177
+ search(
178
+ query: $query
179
+ types: [PRODUCT]
180
+ first: $first
181
+ prefix: LAST
182
+ productFilters: $filters
183
+ sortKey: $sortKey
184
+ reverse: $reverse
185
+ unavailableProducts: LAST
186
+ ) {
187
+ totalCount
188
+ productFilters {${FILTER_SELECTION}
189
+ }
190
+ nodes {
191
+ ... on Product {${SEARCH_PRODUCT_SELECTION}
192
+ }
193
+ }
194
+ }
195
+ }
196
+ `;
197
+ // Collection listing fallback. Separate from COLLECTION_BY_HANDLE_QUERY, which
198
+ // selects only handles for the collection-title lookup.
199
+ const COLLECTION_PRODUCTS_QUERY = `
200
+ query CollectionProducts(
201
+ $handle: String!
202
+ $first: Int!
203
+ $filters: [ProductFilter!]
204
+ $sortKey: ProductCollectionSortKeys
205
+ $reverse: Boolean
206
+ ) {
207
+ collection(handle: $handle) {
208
+ id
209
+ handle
210
+ title
211
+ products(first: $first, filters: $filters, sortKey: $sortKey, reverse: $reverse) {
212
+ filters {${FILTER_SELECTION}
213
+ }
214
+ edges {
215
+ node {${SEARCH_PRODUCT_SELECTION}
216
+ }
217
+ }
218
+ }
219
+ # Ids only, purely to size the result set: the collection connection has
220
+ # no totalCount, and without it the page count would be computed from the
221
+ # fetched slice and under-paginate. Same request, so no extra round trip.
222
+ countWindow: products(first: 250, filters: $filters) {
223
+ edges { node { id } }
224
+ }
225
+ }
226
+ }
227
+ `;
228
+ // Autocomplete fallback.
229
+ const PREDICTIVE_SEARCH_QUERY = `
230
+ query PredictiveSearch($query: String!, $limit: Int!) {
231
+ predictiveSearch(
232
+ query: $query
233
+ limit: $limit
234
+ types: [PRODUCT, QUERY, COLLECTION, PAGE]
235
+ limitScope: EACH
236
+ ) {
237
+ queries { text }
238
+ collections { title handle }
239
+ pages { title handle }
240
+ products {${SEARCH_PRODUCT_SELECTION}
241
+ }
242
+ }
243
+ }
244
+ `;
126
245
  const PRODUCT_BY_ID_QUERY = `
127
246
  query ProductById($id: ID!) {
128
247
  product(id: $id) {
@@ -707,6 +826,89 @@ let ShopifyCommerceService = class ShopifyCommerceService extends base_integrati
707
826
  };
708
827
  return { success: true, data: collection };
709
828
  }
829
+ // Search / filter fallback (used when the search vendor is unavailable)
830
+ /**
831
+ * Keyword search via the Storefront `search` query.
832
+ * The shopper's text is passed through untouched as a GraphQL variable.
833
+ */
834
+ async searchProducts(params) {
835
+ const response = await this.graphqlQuery(SEARCH_PRODUCTS_QUERY, {
836
+ query: params.query,
837
+ first: params.first ?? 20,
838
+ filters: params.filters,
839
+ sortKey: params.sortKey ?? 'RELEVANCE',
840
+ reverse: params.reverse ?? false,
841
+ });
842
+ if (!response.success || !response.data) {
843
+ return { success: false, error: response.error };
844
+ }
845
+ const search = response.data.search;
846
+ return {
847
+ success: true,
848
+ data: {
849
+ // `nodes` is typed as SearchResultItem; non-product types are filtered
850
+ // out by the inline fragment and arrive as empty objects.
851
+ products: (search?.nodes ?? []).filter((node) => Boolean(node?.handle)),
852
+ totalCount: search?.totalCount ?? 0,
853
+ filters: search?.productFilters ?? [],
854
+ },
855
+ };
856
+ }
857
+ /**
858
+ * Collection listing with Shopify-native filters, for the filter fallback.
859
+ * Returns null when the collection handle does not exist.
860
+ */
861
+ async getCollectionProducts(params) {
862
+ const response = await this.graphqlQuery(COLLECTION_PRODUCTS_QUERY, {
863
+ handle: params.handle,
864
+ first: params.first ?? 20,
865
+ filters: params.filters,
866
+ sortKey: params.sortKey ?? 'COLLECTION_DEFAULT',
867
+ reverse: params.reverse ?? false,
868
+ });
869
+ if (!response.success || !response.data) {
870
+ return { success: false, error: response.error };
871
+ }
872
+ const collection = response.data.collection;
873
+ if (!collection) {
874
+ return { success: true, data: null };
875
+ }
876
+ const products = collection.products.edges.map((edge) => edge.node);
877
+ return {
878
+ success: true,
879
+ data: {
880
+ title: collection.title,
881
+ products,
882
+ // Real size of the filtered collection, counted in the same request.
883
+ // Saturates at the 250 window; beyond that pagination is capped anyway.
884
+ totalCount: collection.countWindow?.edges.length ?? products.length,
885
+ filters: collection.products.filters ?? [],
886
+ },
887
+ };
888
+ }
889
+ /**
890
+ * Type-ahead suggestions via `predictiveSearch`, for the autocomplete fallback.
891
+ */
892
+ async predictiveSearch(query, limit = 10) {
893
+ const response = await this.graphqlQuery(PREDICTIVE_SEARCH_QUERY, {
894
+ query,
895
+ // Shopify caps limit at 10.
896
+ limit: Math.min(Math.max(limit, 1), 10),
897
+ });
898
+ if (!response.success || !response.data) {
899
+ return { success: false, error: response.error };
900
+ }
901
+ const result = response.data.predictiveSearch;
902
+ return {
903
+ success: true,
904
+ data: {
905
+ products: result?.products ?? [],
906
+ queries: (result?.queries ?? []).map((q) => q.text),
907
+ collections: result?.collections ?? [],
908
+ pages: result?.pages ?? [],
909
+ },
910
+ };
911
+ }
710
912
  // CMS
711
913
  async getMenu(handle) {
712
914
  const response = await this.graphqlQuery(MENU_QUERY, { handle });