@pvh-afl/core 1.0.20 → 1.0.22

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.
@@ -1,5 +1,5 @@
1
- import { OnModuleInit } from '@nestjs/common';
2
- import { BrandIntegrationConfig } from '../integrations/integration.types';
1
+ import { OnModuleInit } from "@nestjs/common";
2
+ import { BrandIntegrationConfig } from "../integrations/integration.types";
3
3
  export interface FeatureFlags {
4
4
  [key: string]: boolean | string | number | FeatureFlags;
5
5
  }
@@ -1 +1 @@
1
- {"version":3,"file":"config.service.d.ts","sourceRoot":"","sources":["../../src/config/config.service.ts"],"names":[],"mappings":"AAAA,OAAO,EAAc,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAG1D,OAAO,EAAE,sBAAsB,EAAE,MAAM,mCAAmC,CAAC;AAE3E,MAAM,WAAW,YAAY;IAC3B,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,GAAG,MAAM,GAAG,MAAM,GAAG,YAAY,CAAC;CACzD;AAED,MAAM,WAAW,WAAW;IAC1B,IAAI,EAAE,MAAM,CAAC;IACb,YAAY,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,sBAAsB,CAAC,CAAC;IACtD,KAAK,CAAC,EAAE;QACN,UAAU,CAAC,EAAE,MAAM,CAAC;QACpB,QAAQ,CAAC,EAAE,MAAM,CAAC;QAClB,WAAW,CAAC,EAAE;YACZ,QAAQ,CAAC,EAAE,MAAM,CAAC;SACnB,CAAC;KACH,CAAC;IACF,QAAQ,CAAC,EAAE,YAAY,CAAC;CACzB;AAED,qBACa,aAAc,YAAW,YAAY;IAChD,OAAO,CAAC,MAAM,CAAuC;IACrD,OAAO,CAAC,WAAW,CAAuB;IAC1C,OAAO,CAAC,eAAe,CAAkB;IACzC,OAAO,CAAC,eAAe,CAAuB;IAE9C;;OAEG;IACH,kBAAkB,CAAC,UAAU,EAAE,MAAM;IAIrC,YAAY;IAKZ,OAAO,CAAC,cAAc;IAkBtB,OAAO,CAAC,UAAU;IAqBlB,OAAO,CAAC,uBAAuB;IA4B/B,OAAO,CAAC,WAAW;IA2FnB,OAAO,CAAC,cAAc;IAatB,QAAQ,CAAC,IAAI,EAAE,MAAM,GAAG,WAAW,GAAG,SAAS;IAI/C,YAAY,IAAI,MAAM,EAAE;IAKxB,iBAAiB,IAAI,OAAO;IAI5B,cAAc,IAAI,MAAM,GAAG,IAAI;IAI/B,oBAAoB,IAAI,WAAW,GAAG,SAAS;IAM/C,gBAAgB,CAAC,KAAK,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,GAAG,OAAO;IAK7D,UAAU,CAAC,KAAK,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,GAAG,OAAO;IAmBvD,oBAAoB,CAAC,KAAK,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS;IAOxD,iBAAiB,CAAC,KAAK,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS;IAOrD,qBAAqB,CAAC,KAAK,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS;IAOzD,oBAAoB,CAAC,KAAK,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS;IAOxD,yBAAyB,CAAC,KAAK,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS;IAO7D,WAAW,IAAI,MAAM;IAKrB,WAAW,CAAC,KAAK,CAAC,EAAE,MAAM,GAAG;QAAE,UAAU,EAAE,MAAM,CAAC;QAAC,QAAQ,EAAE,MAAM,CAAA;KAAE;IAUrE,sBAAsB,CAAC,KAAK,CAAC,EAAE,MAAM,GAAG;QAAE,UAAU,EAAE,MAAM,CAAC;QAAC,QAAQ,EAAE,MAAM,CAAA;KAAE;CAUjF"}
1
+ {"version":3,"file":"config.service.d.ts","sourceRoot":"","sources":["../../src/config/config.service.ts"],"names":[],"mappings":"AAAA,OAAO,EAAc,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAG1D,OAAO,EAAE,sBAAsB,EAAE,MAAM,mCAAmC,CAAC;AAE3E,MAAM,WAAW,YAAY;IAC3B,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,GAAG,MAAM,GAAG,MAAM,GAAG,YAAY,CAAC;CACzD;AAED,MAAM,WAAW,WAAW;IAC1B,IAAI,EAAE,MAAM,CAAC;IACb,YAAY,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,sBAAsB,CAAC,CAAC;IACtD,KAAK,CAAC,EAAE;QACN,UAAU,CAAC,EAAE,MAAM,CAAC;QACpB,QAAQ,CAAC,EAAE,MAAM,CAAC;QAClB,WAAW,CAAC,EAAE;YACZ,QAAQ,CAAC,EAAE,MAAM,CAAC;SACnB,CAAC;KACH,CAAC;IACF,QAAQ,CAAC,EAAE,YAAY,CAAC;CACzB;AAED,qBACa,aAAc,YAAW,YAAY;IAChD,OAAO,CAAC,MAAM,CAAuC;IACrD,OAAO,CAAC,WAAW,CAAuB;IAC1C,OAAO,CAAC,eAAe,CAAkB;IACzC,OAAO,CAAC,eAAe,CAAuB;IAE9C;;OAEG;IACH,kBAAkB,CAAC,UAAU,EAAE,MAAM;IAIrC,YAAY;IAKZ,OAAO,CAAC,cAAc;IAsBtB,OAAO,CAAC,UAAU;IAuBlB,OAAO,CAAC,uBAAuB;IAmC/B,OAAO,CAAC,WAAW;IAuFnB,OAAO,CAAC,cAAc;IAatB,QAAQ,CAAC,IAAI,EAAE,MAAM,GAAG,WAAW,GAAG,SAAS;IAI/C,YAAY,IAAI,MAAM,EAAE;IAKxB,iBAAiB,IAAI,OAAO;IAI5B,cAAc,IAAI,MAAM,GAAG,IAAI;IAI/B,oBAAoB,IAAI,WAAW,GAAG,SAAS;IAM/C,gBAAgB,CAAC,KAAK,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,GAAG,OAAO;IAK7D,UAAU,CAAC,KAAK,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,GAAG,OAAO;IAmBvD,oBAAoB,CAAC,KAAK,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS;IAOxD,iBAAiB,CAAC,KAAK,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS;IAOrD,qBAAqB,CAAC,KAAK,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS;IAOzD,oBAAoB,CAAC,KAAK,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS;IAOxD,yBAAyB,CAAC,KAAK,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS;IAO7D,WAAW,IAAI,MAAM;IAKrB,WAAW,CAAC,KAAK,CAAC,EAAE,MAAM,GAAG;QAAE,UAAU,EAAE,MAAM,CAAC;QAAC,QAAQ,EAAE,MAAM,CAAA;KAAE;IAUrE,sBAAsB,CAAC,KAAK,CAAC,EAAE,MAAM,GAAG;QACtC,UAAU,EAAE,MAAM,CAAC;QACnB,QAAQ,EAAE,MAAM,CAAC;KAClB;CAUF"}
@@ -34,21 +34,22 @@ let ConfigService = class ConfigService {
34
34
  else {
35
35
  // Multi-brand mode (header-based)
36
36
  this.singleBrandMode = false;
37
- console.log(`Running in multi-brand mode. Available brands: ${this.getAllBrands().join(', ')}`);
37
+ console.log(`Running in multi-brand mode. Available brands: ${this.getAllBrands().join(", ")}`);
38
38
  }
39
39
  }
40
40
  loadBrands() {
41
41
  // Use custom path if set, otherwise look for brands directory
42
- const brandsDir = this.brandConfigPath || path.join(process.cwd(), 'src', 'config', 'brands');
42
+ const brandsDir = this.brandConfigPath ||
43
+ path.join(process.cwd(), "src", "config", "brands");
43
44
  // Check if brands directory exists
44
45
  if (!fs.existsSync(brandsDir)) {
45
46
  // Try alternative path for brand repos (config in src/config/)
46
- const altBrandsDir = path.join(process.cwd(), 'src', 'config');
47
+ const altBrandsDir = path.join(process.cwd(), "src", "config");
47
48
  if (fs.existsSync(altBrandsDir)) {
48
49
  this.loadBrandsFromDirectory(altBrandsDir);
49
50
  return;
50
51
  }
51
- console.warn('No brands directory found, using environment variables');
52
+ console.warn("No brands directory found, using environment variables");
52
53
  this.loadFromEnv();
53
54
  return;
54
55
  }
@@ -58,17 +59,19 @@ let ConfigService = class ConfigService {
58
59
  // Load all brand config files (skip templates and feature files)
59
60
  const files = fs
60
61
  .readdirSync(brandsDir)
61
- .filter(f => f.endsWith('.json') && !f.startsWith('_') && !f.includes('.features.'));
62
+ .filter((f) => f.endsWith(".json") &&
63
+ !f.startsWith("_") &&
64
+ !f.includes(".features."));
62
65
  for (const file of files) {
63
66
  const filePath = path.join(brandsDir, file);
64
- const content = fs.readFileSync(filePath, 'utf-8');
67
+ const content = fs.readFileSync(filePath, "utf-8");
65
68
  const config = JSON.parse(content);
66
69
  // Resolve environment variables (format: "env:VAR_NAME")
67
70
  this.resolveEnvVars(config);
68
71
  // Load features file if exists
69
72
  const featuresPath = path.join(brandsDir, `${config.slug}.features.json`);
70
73
  if (fs.existsSync(featuresPath)) {
71
- const featuresContent = fs.readFileSync(featuresPath, 'utf-8');
74
+ const featuresContent = fs.readFileSync(featuresPath, "utf-8");
72
75
  config.features = JSON.parse(featuresContent);
73
76
  this.resolveEnvVars(config.features);
74
77
  console.log(`Loaded features for brand: ${config.slug}`);
@@ -81,75 +84,71 @@ let ConfigService = class ConfigService {
81
84
  // Fallback: load brand config from environment variables
82
85
  // Supports both underscore (local dev) and hyphen (Azure Key Vault) naming conventions
83
86
  const getEnv = (underscoreName) => {
84
- const hyphenName = underscoreName.replace(/_/g, '-');
87
+ const hyphenName = underscoreName.replace(/_/g, "-");
85
88
  return process.env[underscoreName] || process.env[hyphenName];
86
89
  };
87
- const graphqlUrl = getEnv('TOMMY_SHOPIFY_GRAPHQL_URL');
88
- const storefrontToken = getEnv('TOMMY_SHOPIFY_STOREFRONT_TOKEN');
90
+ const graphqlUrl = getEnv("TOMMY_SHOPIFY_GRAPHQL_URL");
91
+ const storefrontToken = getEnv("TOMMY_SHOPIFY_STOREFRONT_TOKEN");
89
92
  if (graphqlUrl && storefrontToken) {
90
93
  const tommyConfig = {
91
- slug: 'tommy',
94
+ slug: "tommy",
92
95
  integrations: {
93
96
  commerce: {
94
- provider: 'shopify',
97
+ provider: "shopify",
95
98
  baseUrl: graphqlUrl,
96
99
  apiKey: storefrontToken,
97
100
  headers: {
98
- 'X-Shopify-Storefront-Access-Token': storefrontToken,
101
+ "X-Shopify-Storefront-Access-Token": storefrontToken,
99
102
  },
100
103
  },
101
104
  commerceAdmin: {
102
- provider: 'shopify-admin',
103
- baseUrl: getEnv('TOMMY_SHOPIFY_ADMIN_URL') || '',
104
- apiKey: getEnv('TOMMY_SHOPIFY_ADMIN_TOKEN') || '',
105
+ provider: "shopify-admin",
106
+ baseUrl: getEnv("TOMMY_SHOPIFY_ADMIN_URL") || "",
107
+ apiKey: getEnv("TOMMY_SHOPIFY_ADMIN_TOKEN") || "",
105
108
  },
106
109
  oms: {
107
- provider: 'omuni',
108
- baseUrl: getEnv('OMUNI_API_URL') || '',
109
- apiKey: '',
110
+ provider: "omuni",
111
+ baseUrl: getEnv("OMUNI_API_URL") || "",
112
+ apiKey: "",
110
113
  options: {
111
- username: getEnv('TOMMY_OMUNI_USERNAME') || '',
112
- password: getEnv('TOMMY_OMUNI_PASSWORD') || '',
114
+ username: getEnv("TOMMY_OMUNI_USERNAME") || "",
115
+ password: getEnv("TOMMY_OMUNI_PASSWORD") || "",
113
116
  },
114
117
  },
115
118
  loyalty: {
116
- provider: 'capillary',
117
- baseUrl: getEnv('CAPILLARY_API_URL') || '',
118
- apiKey: '',
119
+ provider: "capillary",
120
+ baseUrl: getEnv("CAPILLARY_API_URL") || "",
121
+ apiKey: "",
119
122
  options: {
120
- accessKey: getEnv('TOMMY_CAPILLARY_ACCESS_KEY') || '',
121
- accessSecret: getEnv('TOMMY_CAPILLARY_ACCESS_SECRET') || '',
122
- ecomStoreId: getEnv('TOMMY_CAPILLARY_ECOM_STORE_ID') || '',
123
- tillId: getEnv('TOMMY_CAPILLARY_TILL_ID') || '',
123
+ accessKey: getEnv("TOMMY_CAPILLARY_ACCESS_KEY") || "",
124
+ accessSecret: getEnv("TOMMY_CAPILLARY_ACCESS_SECRET") || "",
125
+ ecomStoreId: getEnv("TOMMY_CAPILLARY_ECOM_STORE_ID") || "",
126
+ tillId: getEnv("TOMMY_CAPILLARY_TILL_ID") || "",
124
127
  returnPolicyDays: 10,
125
128
  },
126
129
  },
127
130
  search: {
128
- provider: 'wizzy',
129
- baseUrl: 'https://api.wizsearch.in/v1',
130
- apiKey: getEnv('TOMMY_WIZZY_API_KEY') || '',
131
+ provider: "wizzy",
132
+ baseUrl: "https://api.wizsearch.in/v1",
133
+ apiKey: getEnv("TOMMY_WIZZY_API_KEY") || "",
131
134
  options: {
132
- storeId: getEnv('TOMMY_WIZZY_STORE_ID') || '',
135
+ storeId: getEnv("TOMMY_WIZZY_STORE_ID") || "",
133
136
  },
134
137
  },
135
138
  reviews: {
136
- provider: 'judgeme',
137
- baseUrl: getEnv('JUDGEME_API_URL') || 'https://api.judge.me/api/v1',
138
- apiKey: '',
139
- options: {
140
- shopDomain: getEnv('TOMMY_SHOPIFY_STORE_DOMAIN') || '',
141
- privateToken: getEnv('TOMMY_JUDGEME_PRIVATE_TOKEN') || '',
142
- publicToken: getEnv('TOMMY_JUDGEME_PUBLIC_TOKEN') || '',
143
- },
139
+ provider: "judgeme",
140
+ baseUrl: getEnv("JUDGEME_API_URL") || "https://api.judge.me/api/v1",
141
+ apiKey: "",
142
+ shopDomain: getEnv("TOMMY_SHOPIFY_STORE_DOMAIN") || "",
143
+ privateToken: getEnv("TOMMY_JUDGEME_PRIVATE_TOKEN") || "",
144
+ publicToken: getEnv("TOMMY_JUDGEME_PUBLIC_TOKEN") || "",
144
145
  },
145
146
  wishlist: {
146
- provider: 'swish',
147
- baseUrl: getEnv('SWISH_API_URL') || 'https://swish.app/api/2025-04',
148
- apiKey: '',
149
- options: {
150
- adminToken: getEnv('TOMMY_SWISH_ADMIN_TOKEN') || '',
151
- shopDomain: getEnv('TOMMY_SHOPIFY_STORE_DOMAIN') || '',
152
- },
147
+ provider: "swish",
148
+ baseUrl: getEnv("SWISH_API_URL") || "https://swish.app/api/2025-04",
149
+ apiKey: "",
150
+ adminToken: getEnv("TOMMY_SWISH_ADMIN_TOKEN") || "",
151
+ shopDomain: getEnv("TOMMY_SHOPIFY_STORE_DOMAIN") || "",
153
152
  },
154
153
  },
155
154
  cache: {
@@ -160,18 +159,18 @@ let ConfigService = class ConfigService {
160
159
  },
161
160
  },
162
161
  };
163
- this.brands.set('tommy', tommyConfig);
164
- console.log('Loaded tommy brand from environment variables');
162
+ this.brands.set("tommy", tommyConfig);
163
+ console.log("Loaded tommy brand from environment variables");
165
164
  }
166
165
  }
167
166
  resolveEnvVars(obj) {
168
167
  for (const key of Object.keys(obj)) {
169
168
  const value = obj[key];
170
- if (typeof value === 'string' && value.startsWith('env:')) {
169
+ if (typeof value === "string" && value.startsWith("env:")) {
171
170
  const envVar = value.slice(4);
172
- obj[key] = process.env[envVar] ?? '';
171
+ obj[key] = process.env[envVar] ?? "";
173
172
  }
174
- else if (typeof value === 'object' && value !== null) {
173
+ else if (typeof value === "object" && value !== null) {
175
174
  this.resolveEnvVars(value);
176
175
  }
177
176
  }
@@ -203,10 +202,10 @@ let ConfigService = class ConfigService {
203
202
  const config = this.brands.get(brand);
204
203
  if (!config?.features)
205
204
  return undefined;
206
- const parts = featurePath.split('.');
205
+ const parts = featurePath.split(".");
207
206
  let current = config.features;
208
207
  for (const part of parts) {
209
- if (current && typeof current === 'object' && part in current) {
208
+ if (current && typeof current === "object" && part in current) {
210
209
  current = current[part];
211
210
  }
212
211
  else {
@@ -252,7 +251,7 @@ let ConfigService = class ConfigService {
252
251
  return process.env[envKey];
253
252
  }
254
253
  getRedisUrl() {
255
- return process.env.REDIS_URL ?? 'redis://localhost:6379';
254
+ return process.env.REDIS_URL ?? "redis://localhost:6379";
256
255
  }
257
256
  // Cache TTL helpers
258
257
  getCacheTTL(brand) {
@@ -1 +1 @@
1
- {"version":3,"file":"config.service.js","sourceRoot":"","sources":["../../src/config/config.service.ts"],"names":[],"mappings":";;;;AAAA,2CAA0D;AAC1D,+CAAyB;AACzB,mDAA6B;AAqBtB,IAAM,aAAa,GAAnB,MAAM,aAAa;IAChB,MAAM,GAA6B,IAAI,GAAG,EAAE,CAAC;IAC7C,WAAW,GAAkB,IAAI,CAAC;IAClC,eAAe,GAAY,KAAK,CAAC;IACjC,eAAe,GAAkB,IAAI,CAAC;IAE9C;;OAEG;IACH,kBAAkB,CAAC,UAAkB;QACnC,IAAI,CAAC,eAAe,GAAG,UAAU,CAAC;IACpC,CAAC;IAED,YAAY;QACV,IAAI,CAAC,UAAU,EAAE,CAAC;QAClB,IAAI,CAAC,cAAc,EAAE,CAAC;IACxB,CAAC;IAEO,cAAc;QACpB,MAAM,QAAQ,GAAG,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC;QAEnC,IAAI,QAAQ,EAAE,CAAC;YACb,+BAA+B;YAC/B,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,QAAQ,CAAC,EAAE,CAAC;gBAC/B,MAAM,IAAI,KAAK,CAAC,yBAAyB,QAAQ,sCAAsC,CAAC,CAAC;YAC3F,CAAC;YACD,IAAI,CAAC,WAAW,GAAG,QAAQ,CAAC;YAC5B,IAAI,CAAC,eAAe,GAAG,IAAI,CAAC;YAC5B,OAAO,CAAC,GAAG,CAAC,iCAAiC,QAAQ,EAAE,CAAC,CAAC;QAC3D,CAAC;aAAM,CAAC;YACN,kCAAkC;YAClC,IAAI,CAAC,eAAe,GAAG,KAAK,CAAC;YAC7B,OAAO,CAAC,GAAG,CAAC,kDAAkD,IAAI,CAAC,YAAY,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QAClG,CAAC;IACH,CAAC;IAEO,UAAU;QAChB,8DAA8D;QAC9D,MAAM,SAAS,GAAG,IAAI,CAAC,eAAe,IAAI,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,KAAK,EAAE,QAAQ,EAAE,QAAQ,CAAC,CAAC;QAE9F,mCAAmC;QACnC,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,SAAS,CAAC,EAAE,CAAC;YAC9B,+DAA+D;YAC/D,MAAM,YAAY,GAAG,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,KAAK,EAAE,QAAQ,CAAC,CAAC;YAC/D,IAAI,EAAE,CAAC,UAAU,CAAC,YAAY,CAAC,EAAE,CAAC;gBAChC,IAAI,CAAC,uBAAuB,CAAC,YAAY,CAAC,CAAC;gBAC3C,OAAO;YACT,CAAC;YAED,OAAO,CAAC,IAAI,CAAC,wDAAwD,CAAC,CAAC;YACvE,IAAI,CAAC,WAAW,EAAE,CAAC;YACnB,OAAO;QACT,CAAC;QAED,IAAI,CAAC,uBAAuB,CAAC,SAAS,CAAC,CAAC;IAC1C,CAAC;IAEO,uBAAuB,CAAC,SAAiB;QAC/C,iEAAiE;QACjE,MAAM,KAAK,GAAG,EAAE;aACb,WAAW,CAAC,SAAS,CAAC;aACtB,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,UAAU,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,QAAQ,CAAC,YAAY,CAAC,CAAC,CAAC;QAEvF,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;YACzB,MAAM,QAAQ,GAAG,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,IAAI,CAAC,CAAC;YAC5C,MAAM,OAAO,GAAG,EAAE,CAAC,YAAY,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC;YACnD,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,OAAO,CAAgB,CAAC;YAElD,yDAAyD;YACzD,IAAI,CAAC,cAAc,CAAC,MAA4C,CAAC,CAAC;YAElE,+BAA+B;YAC/B,MAAM,YAAY,GAAG,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,GAAG,MAAM,CAAC,IAAI,gBAAgB,CAAC,CAAC;YAC1E,IAAI,EAAE,CAAC,UAAU,CAAC,YAAY,CAAC,EAAE,CAAC;gBAChC,MAAM,eAAe,GAAG,EAAE,CAAC,YAAY,CAAC,YAAY,EAAE,OAAO,CAAC,CAAC;gBAC/D,MAAM,CAAC,QAAQ,GAAG,IAAI,CAAC,KAAK,CAAC,eAAe,CAAiB,CAAC;gBAC9D,IAAI,CAAC,cAAc,CAAC,MAAM,CAAC,QAA8C,CAAC,CAAC;gBAC3E,OAAO,CAAC,GAAG,CAAC,8BAA8B,MAAM,CAAC,IAAI,EAAE,CAAC,CAAC;YAC3D,CAAC;YAED,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,MAAM,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;YACrC,OAAO,CAAC,GAAG,CAAC,wBAAwB,MAAM,CAAC,IAAI,EAAE,CAAC,CAAC;QACrD,CAAC;IACH,CAAC;IAEO,WAAW;QACjB,yDAAyD;QACzD,uFAAuF;QACvF,MAAM,MAAM,GAAG,CAAC,cAAsB,EAAsB,EAAE;YAC5D,MAAM,UAAU,GAAG,cAAc,CAAC,OAAO,CAAC,IAAI,EAAE,GAAG,CAAC,CAAC;YACrD,OAAO,OAAO,CAAC,GAAG,CAAC,cAAc,CAAC,IAAI,OAAO,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC;QAChE,CAAC,CAAC;QAEF,MAAM,UAAU,GAAG,MAAM,CAAC,2BAA2B,CAAC,CAAC;QACvD,MAAM,eAAe,GAAG,MAAM,CAAC,gCAAgC,CAAC,CAAC;QAEjE,IAAI,UAAU,IAAI,eAAe,EAAE,CAAC;YAClC,MAAM,WAAW,GAAgB;gBAC/B,IAAI,EAAE,OAAO;gBACb,YAAY,EAAE;oBACZ,QAAQ,EAAE;wBACR,QAAQ,EAAE,SAAS;wBACnB,OAAO,EAAE,UAAU;wBACnB,MAAM,EAAE,eAAe;wBACvB,OAAO,EAAE;4BACP,mCAAmC,EAAE,eAAe;yBACrD;qBACF;oBACD,aAAa,EAAE;wBACb,QAAQ,EAAE,eAAe;wBACzB,OAAO,EAAE,MAAM,CAAC,yBAAyB,CAAC,IAAI,EAAE;wBAChD,MAAM,EAAE,MAAM,CAAC,2BAA2B,CAAC,IAAI,EAAE;qBAClD;oBACD,GAAG,EAAE;wBACH,QAAQ,EAAE,OAAO;wBACjB,OAAO,EAAE,MAAM,CAAC,eAAe,CAAC,IAAI,EAAE;wBACtC,MAAM,EAAE,EAAE;wBACV,OAAO,EAAE;4BACP,QAAQ,EAAE,MAAM,CAAC,sBAAsB,CAAC,IAAI,EAAE;4BAC9C,QAAQ,EAAE,MAAM,CAAC,sBAAsB,CAAC,IAAI,EAAE;yBAC/C;qBACF;oBACD,OAAO,EAAE;wBACP,QAAQ,EAAE,WAAW;wBACrB,OAAO,EAAE,MAAM,CAAC,mBAAmB,CAAC,IAAI,EAAE;wBAC1C,MAAM,EAAE,EAAE;wBACV,OAAO,EAAE;4BACP,SAAS,EAAE,MAAM,CAAC,4BAA4B,CAAC,IAAI,EAAE;4BACrD,YAAY,EAAE,MAAM,CAAC,+BAA+B,CAAC,IAAI,EAAE;4BAC3D,WAAW,EAAE,MAAM,CAAC,+BAA+B,CAAC,IAAI,EAAE;4BAC1D,MAAM,EAAE,MAAM,CAAC,yBAAyB,CAAC,IAAI,EAAE;4BAC/C,gBAAgB,EAAE,EAAE;yBACrB;qBACF;oBACD,MAAM,EAAE;wBACN,QAAQ,EAAE,OAAO;wBACjB,OAAO,EAAE,6BAA6B;wBACtC,MAAM,EAAE,MAAM,CAAC,qBAAqB,CAAC,IAAI,EAAE;wBAC3C,OAAO,EAAE;4BACP,OAAO,EAAE,MAAM,CAAC,sBAAsB,CAAC,IAAI,EAAE;yBAC9C;qBACF;oBACD,OAAO,EAAE;wBACP,QAAQ,EAAE,SAAS;wBACnB,OAAO,EAAE,MAAM,CAAC,iBAAiB,CAAC,IAAI,6BAA6B;wBACnE,MAAM,EAAE,EAAE;wBACV,OAAO,EAAE;4BACP,UAAU,EAAE,MAAM,CAAC,4BAA4B,CAAC,IAAI,EAAE;4BACtD,YAAY,EAAE,MAAM,CAAC,6BAA6B,CAAC,IAAI,EAAE;4BACzD,WAAW,EAAE,MAAM,CAAC,4BAA4B,CAAC,IAAI,EAAE;yBACxD;qBACF;oBACD,QAAQ,EAAE;wBACR,QAAQ,EAAE,OAAO;wBACjB,OAAO,EAAE,MAAM,CAAC,eAAe,CAAC,IAAI,+BAA+B;wBACnE,MAAM,EAAE,EAAE;wBACV,OAAO,EAAE;4BACP,UAAU,EAAE,MAAM,CAAC,yBAAyB,CAAC,IAAI,EAAE;4BACnD,UAAU,EAAE,MAAM,CAAC,4BAA4B,CAAC,IAAI,EAAE;yBACvD;qBACF;iBACF;gBACD,KAAK,EAAE;oBACL,UAAU,EAAE,IAAI;oBAChB,QAAQ,EAAE,EAAE;oBACZ,WAAW,EAAE;wBACX,QAAQ,EAAE,KAAK;qBAChB;iBACF;aACF,CAAC;YAEF,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,OAAO,EAAE,WAAW,CAAC,CAAC;YACtC,OAAO,CAAC,GAAG,CAAC,+CAA+C,CAAC,CAAC;QAC/D,CAAC;IACH,CAAC;IAEO,cAAc,CAAC,GAA4B;QACjD,KAAK,MAAM,GAAG,IAAI,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC;YACnC,MAAM,KAAK,GAAG,GAAG,CAAC,GAAG,CAAC,CAAC;YAEvB,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,CAAC,UAAU,CAAC,MAAM,CAAC,EAAE,CAAC;gBAC1D,MAAM,MAAM,GAAG,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;gBAC9B,GAAG,CAAC,GAAG,CAAC,GAAG,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC;YACvC,CAAC;iBAAM,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,KAAK,IAAI,EAAE,CAAC;gBACvD,IAAI,CAAC,cAAc,CAAC,KAAgC,CAAC,CAAC;YACxD,CAAC;QACH,CAAC;IACH,CAAC;IAED,QAAQ,CAAC,IAAY;QACnB,OAAO,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;IAC/B,CAAC;IAED,YAAY;QACV,OAAO,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC,CAAC;IACxC,CAAC;IAED,4BAA4B;IAC5B,iBAAiB;QACf,OAAO,IAAI,CAAC,eAAe,CAAC;IAC9B,CAAC;IAED,cAAc;QACZ,OAAO,IAAI,CAAC,WAAW,CAAC;IAC1B,CAAC;IAED,oBAAoB;QAClB,IAAI,CAAC,IAAI,CAAC,WAAW;YAAE,OAAO,SAAS,CAAC;QACxC,OAAO,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;IAC3C,CAAC;IAED,wBAAwB;IACxB,gBAAgB,CAAC,KAAa,EAAE,WAAmB;QACjD,MAAM,KAAK,GAAG,IAAI,CAAC,UAAU,CAAC,KAAK,EAAE,WAAW,CAAC,CAAC;QAClD,OAAO,KAAK,KAAK,IAAI,CAAC;IACxB,CAAC;IAED,UAAU,CAAC,KAAa,EAAE,WAAmB;QAC3C,MAAM,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;QACtC,IAAI,CAAC,MAAM,EAAE,QAAQ;YAAE,OAAO,SAAS,CAAC;QAExC,MAAM,KAAK,GAAG,WAAW,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;QACrC,IAAI,OAAO,GAAY,MAAM,CAAC,QAAQ,CAAC;QAEvC,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;YACzB,IAAI,OAAO,IAAI,OAAO,OAAO,KAAK,QAAQ,IAAI,IAAI,IAAI,OAAO,EAAE,CAAC;gBAC9D,OAAO,GAAI,OAAmC,CAAC,IAAI,CAAC,CAAC;YACvD,CAAC;iBAAM,CAAC;gBACN,OAAO,SAAS,CAAC;YACnB,CAAC;QACH,CAAC;QAED,OAAO,OAAO,CAAC;IACjB,CAAC;IAED,qCAAqC;IACrC,oBAAoB,CAAC,KAAc;QACjC,MAAM,IAAI,GAAG,KAAK,IAAI,IAAI,CAAC,WAAW,CAAC;QACvC,IAAI,CAAC,IAAI;YAAE,OAAO,OAAO,CAAC,GAAG,CAAC,yBAAyB,CAAC;QACxD,MAAM,MAAM,GAAG,GAAG,IAAI,CAAC,WAAW,EAAE,sBAAsB,CAAC;QAC3D,OAAO,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;IAC7B,CAAC;IAED,iBAAiB,CAAC,KAAc;QAC9B,MAAM,IAAI,GAAG,KAAK,IAAI,IAAI,CAAC,WAAW,CAAC;QACvC,IAAI,CAAC,IAAI;YAAE,OAAO,OAAO,CAAC,GAAG,CAAC,sBAAsB,CAAC;QACrD,MAAM,MAAM,GAAG,GAAG,IAAI,CAAC,WAAW,EAAE,mBAAmB,CAAC;QACxD,OAAO,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;IAC7B,CAAC;IAED,qBAAqB,CAAC,KAAc;QAClC,MAAM,IAAI,GAAG,KAAK,IAAI,IAAI,CAAC,WAAW,CAAC;QACvC,IAAI,CAAC,IAAI;YAAE,OAAO,OAAO,CAAC,GAAG,CAAC,0BAA0B,CAAC;QACzD,MAAM,MAAM,GAAG,GAAG,IAAI,CAAC,WAAW,EAAE,uBAAuB,CAAC;QAC5D,OAAO,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;IAC7B,CAAC;IAED,oBAAoB,CAAC,KAAc;QACjC,MAAM,IAAI,GAAG,KAAK,IAAI,IAAI,CAAC,WAAW,CAAC;QACvC,IAAI,CAAC,IAAI;YAAE,OAAO,OAAO,CAAC,GAAG,CAAC,yBAAyB,CAAC;QACxD,MAAM,MAAM,GAAG,GAAG,IAAI,CAAC,WAAW,EAAE,sBAAsB,CAAC;QAC3D,OAAO,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;IAC7B,CAAC;IAED,yBAAyB,CAAC,KAAc;QACtC,MAAM,IAAI,GAAG,KAAK,IAAI,IAAI,CAAC,WAAW,CAAC;QACvC,IAAI,CAAC,IAAI;YAAE,OAAO,OAAO,CAAC,GAAG,CAAC,8BAA8B,CAAC;QAC7D,MAAM,MAAM,GAAG,GAAG,IAAI,CAAC,WAAW,EAAE,2BAA2B,CAAC;QAChE,OAAO,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;IAC7B,CAAC;IAED,WAAW;QACT,OAAO,OAAO,CAAC,GAAG,CAAC,SAAS,IAAI,wBAAwB,CAAC;IAC3D,CAAC;IAED,oBAAoB;IACpB,WAAW,CAAC,KAAc;QACxB,MAAM,IAAI,GAAG,KAAK,IAAI,IAAI,CAAC,WAAW,CAAC;QACvC,MAAM,MAAM,GAAG,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;QAExD,OAAO;YACL,UAAU,EAAE,MAAM,EAAE,KAAK,EAAE,UAAU,IAAI,GAAG;YAC5C,QAAQ,EAAE,MAAM,EAAE,KAAK,EAAE,QAAQ,IAAI,EAAE;SACxC,CAAC;IACJ,CAAC;IAED,sBAAsB,CAAC,KAAc;QACnC,MAAM,IAAI,GAAG,KAAK,IAAI,IAAI,CAAC,WAAW,CAAC;QACvC,MAAM,MAAM,GAAG,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;QACxD,MAAM,OAAO,GAAG,IAAI,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC;QAExC,OAAO;YACL,UAAU,EAAE,OAAO,CAAC,UAAU;YAC9B,QAAQ,EAAE,MAAM,EAAE,KAAK,EAAE,WAAW,EAAE,QAAQ,IAAI,OAAO,CAAC,QAAQ;SACnE,CAAC;IACJ,CAAC;CACF,CAAA;AAxSY,sCAAa;wBAAb,aAAa;IADzB,IAAA,mBAAU,GAAE;GACA,aAAa,CAwSzB"}
1
+ {"version":3,"file":"config.service.js","sourceRoot":"","sources":["../../src/config/config.service.ts"],"names":[],"mappings":"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"}
@@ -54,7 +54,9 @@ export declare class ShopifyCustomerService {
54
54
  *
55
55
  * Eligibility requirements:
56
56
  * 1. Customer has purchased the product
57
- * 2. The order has been delivered (fulfillment status = DELIVERED)
57
+ * 2. The order has been delivered (fulfillment status = FULFILLED/DELIVERED)
58
+ *
59
+ * Uses optimized single GraphQL query with product filter.
58
60
  *
59
61
  * @param brand - Brand identifier
60
62
  * @param customerId - Shopify customer ID (numeric or GID)
@@ -63,12 +65,9 @@ export declare class ShopifyCustomerService {
63
65
  checkEligibility(brand: string, customerId: string, productId: string): Promise<EligibilityCheckResult>;
64
66
  /**
65
67
  * Get delivered purchases of a specific product for a customer.
68
+ * Uses optimized query with product filter.
66
69
  */
67
70
  getDeliveredPurchases(brand: string, customerId: string, productId: string): Promise<DeliveredPurchase[]>;
68
- /**
69
- * Check if customer has ordered a product (regardless of delivery status).
70
- */
71
- private hasOrderedProduct;
72
71
  /**
73
72
  * Extract numeric ID from Shopify GID or return as-is if already numeric.
74
73
  */
@@ -1 +1 @@
1
- {"version":3,"file":"shopify-customer.service.d.ts","sourceRoot":"","sources":["../../../src/integrations/commerce/shopify-customer.service.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,aAAa,EAAE,MAAM,6BAA6B,CAAC;AAG5D;;GAEG;AACH,MAAM,WAAW,iBAAiB;IAChC,uBAAuB;IACvB,OAAO,EAAE,MAAM,CAAC;IAChB,uCAAuC;IACvC,SAAS,EAAE,MAAM,CAAC;IAClB,+CAA+C;IAC/C,SAAS,EAAE,MAAM,CAAC;IAClB,oBAAoB;IACpB,YAAY,EAAE,MAAM,CAAC;IACrB,iBAAiB;IACjB,SAAS,EAAE,MAAM,CAAC;IAClB,yBAAyB;IACzB,iBAAiB,EAAE,WAAW,GAAG,YAAY,GAAG,kBAAkB,GAAG,OAAO,CAAC;IAC7E,0BAA0B;IAC1B,SAAS,EAAE,MAAM,CAAC;IAClB,iCAAiC;IACjC,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB;AAED;;GAEG;AACH,MAAM,WAAW,sBAAsB;IACrC,mDAAmD;IACnD,SAAS,EAAE,OAAO,CAAC;IACnB,qCAAqC;IACrC,UAAU,EAAE,MAAM,CAAC;IACnB,yBAAyB;IACzB,SAAS,EAAE,MAAM,CAAC;IAClB,8BAA8B;IAC9B,MAAM,CAAC,EAAE,eAAe,GAAG,eAAe,GAAG,kBAAkB,CAAC;IAChE,6CAA6C;IAC7C,iBAAiB,CAAC,EAAE,iBAAiB,CAAC;CACvC;AAED;;;;;;;;;GASG;AACH,qBACa,sBAAsB;IAGrB,OAAO,CAAC,QAAQ,CAAC,aAAa;IAF1C,OAAO,CAAC,QAAQ,CAAC,WAAW,CAAa;gBAEZ,aAAa,EAAE,aAAa;IAEzD;;;;;;;;;;OAUG;IACG,gBAAgB,CACpB,KAAK,EAAE,MAAM,EACb,UAAU,EAAE,MAAM,EAClB,SAAS,EAAE,MAAM,GAChB,OAAO,CAAC,sBAAsB,CAAC;IAsDlC;;OAEG;IACG,qBAAqB,CACzB,KAAK,EAAE,MAAM,EACb,UAAU,EAAE,MAAM,EAClB,SAAS,EAAE,MAAM,GAChB,OAAO,CAAC,iBAAiB,EAAE,CAAC;IA2J/B;;OAEG;YACW,iBAAiB;IAwF/B;;OAEG;IACH,OAAO,CAAC,gBAAgB;IAQxB;;OAEG;IACH,OAAO,CAAC,cAAc;CAavB"}
1
+ {"version":3,"file":"shopify-customer.service.d.ts","sourceRoot":"","sources":["../../../src/integrations/commerce/shopify-customer.service.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,aAAa,EAAE,MAAM,6BAA6B,CAAC;AAG5D;;GAEG;AACH,MAAM,WAAW,iBAAiB;IAChC,uBAAuB;IACvB,OAAO,EAAE,MAAM,CAAC;IAChB,uCAAuC;IACvC,SAAS,EAAE,MAAM,CAAC;IAClB,+CAA+C;IAC/C,SAAS,EAAE,MAAM,CAAC;IAClB,oBAAoB;IACpB,YAAY,EAAE,MAAM,CAAC;IACrB,iBAAiB;IACjB,SAAS,EAAE,MAAM,CAAC;IAClB,yBAAyB;IACzB,iBAAiB,EAAE,WAAW,GAAG,YAAY,GAAG,kBAAkB,GAAG,OAAO,CAAC;IAC7E,0BAA0B;IAC1B,SAAS,EAAE,MAAM,CAAC;IAClB,iCAAiC;IACjC,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB;AAED;;GAEG;AACH,MAAM,WAAW,sBAAsB;IACrC,mDAAmD;IACnD,SAAS,EAAE,OAAO,CAAC;IACnB,qCAAqC;IACrC,UAAU,EAAE,MAAM,CAAC;IACnB,yBAAyB;IACzB,SAAS,EAAE,MAAM,CAAC;IAClB,8BAA8B;IAC9B,MAAM,CAAC,EAAE,eAAe,GAAG,eAAe,GAAG,kBAAkB,CAAC;IAChE,6CAA6C;IAC7C,iBAAiB,CAAC,EAAE,iBAAiB,CAAC;CACvC;AAED;;;;;;;;;GASG;AACH,qBACa,sBAAsB;IAGrB,OAAO,CAAC,QAAQ,CAAC,aAAa;IAF1C,OAAO,CAAC,QAAQ,CAAC,WAAW,CAAa;gBAEZ,aAAa,EAAE,aAAa;IAEzD;;;;;;;;;;;;OAYG;IACG,gBAAgB,CACpB,KAAK,EAAE,MAAM,EACb,UAAU,EAAE,MAAM,EAClB,SAAS,EAAE,MAAM,GAChB,OAAO,CAAC,sBAAsB,CAAC;IA0JlC;;;OAGG;IACG,qBAAqB,CACzB,KAAK,EAAE,MAAM,EACb,UAAU,EAAE,MAAM,EAClB,SAAS,EAAE,MAAM,GAChB,OAAO,CAAC,iBAAiB,EAAE,CAAC;IAQ/B;;OAEG;IACH,OAAO,CAAC,gBAAgB;IAQxB;;OAEG;IACH,OAAO,CAAC,cAAc;CAavB"}
@@ -26,63 +26,26 @@ let ShopifyCustomerService = class ShopifyCustomerService {
26
26
  *
27
27
  * Eligibility requirements:
28
28
  * 1. Customer has purchased the product
29
- * 2. The order has been delivered (fulfillment status = DELIVERED)
29
+ * 2. The order has been delivered (fulfillment status = FULFILLED/DELIVERED)
30
+ *
31
+ * Uses optimized single GraphQL query with product filter.
30
32
  *
31
33
  * @param brand - Brand identifier
32
34
  * @param customerId - Shopify customer ID (numeric or GID)
33
35
  * @param productId - Shopify product ID to check eligibility for
34
36
  */
35
37
  async checkEligibility(brand, customerId, productId) {
36
- try {
37
- // Normalize IDs
38
- const normalizedCustomerId = this.extractNumericId(customerId);
39
- const normalizedProductId = this.extractNumericId(productId);
40
- // Fetch customer's orders containing this product
41
- const deliveredPurchases = await this.getDeliveredPurchases(brand, normalizedCustomerId, normalizedProductId);
42
- if (deliveredPurchases.length === 0) {
43
- // Check if they purchased but not delivered
44
- const hasPurchased = await this.hasOrderedProduct(brand, normalizedCustomerId, normalizedProductId);
45
- return {
46
- canReview: false,
47
- customerId,
48
- productId,
49
- reason: hasPurchased ? 'not_delivered' : 'not_purchased',
50
- };
51
- }
52
- // Customer has at least one delivered purchase of this product
53
- return {
54
- canReview: true,
55
- customerId,
56
- productId,
57
- deliveredPurchase: deliveredPurchases[0],
58
- };
59
- }
60
- catch (error) {
61
- logger_1.logger.error('Eligibility check failed', {
62
- brand,
63
- customerId,
64
- productId,
65
- error: error instanceof Error ? error.message : 'Unknown',
66
- });
67
- // On error, we deny eligibility to prevent abuse
68
- return {
69
- canReview: false,
70
- customerId,
71
- productId,
72
- reason: 'not_purchased',
73
- };
74
- }
75
- }
76
- /**
77
- * Get delivered purchases of a specific product for a customer.
78
- */
79
- async getDeliveredPurchases(brand, customerId, productId) {
80
38
  const config = this.getAdminConfig(brand);
81
- // GraphQL query to fetch customer orders with fulfillment status
39
+ // Normalize IDs
40
+ const numericProductId = this.extractNumericId(productId);
41
+ const customerGid = customerId.startsWith('gid://')
42
+ ? customerId
43
+ : `gid://shopify/Customer/${this.extractNumericId(customerId)}`;
44
+ // Single optimized query: filter orders by product ID at database level
82
45
  const query = `
83
- query CustomerOrders($customerId: ID!) {
46
+ query CustomerProductOrders($customerId: ID!, $productQuery: String!) {
84
47
  customer(id: $customerId) {
85
- orders(first: 50, sortKey: CREATED_AT, reverse: true) {
48
+ orders(first: 10, query: $productQuery, sortKey: CREATED_AT, reverse: true) {
86
49
  edges {
87
50
  node {
88
51
  id
@@ -93,7 +56,7 @@ let ShopifyCustomerService = class ShopifyCustomerService {
93
56
  deliveredAt
94
57
  status
95
58
  }
96
- lineItems(first: 100) {
59
+ lineItems(first: 20) {
97
60
  edges {
98
61
  node {
99
62
  product {
@@ -112,12 +75,6 @@ let ShopifyCustomerService = class ShopifyCustomerService {
112
75
  }
113
76
  }
114
77
  `;
115
- const customerGid = customerId.startsWith('gid://')
116
- ? customerId
117
- : `gid://shopify/Customer/${customerId}`;
118
- const productGid = productId.startsWith('gid://')
119
- ? productId
120
- : `gid://shopify/Product/${productId}`;
121
78
  try {
122
79
  const response = await fetch(`${config.baseUrl}/graphql.json`, {
123
80
  method: 'POST',
@@ -127,126 +84,77 @@ let ShopifyCustomerService = class ShopifyCustomerService {
127
84
  },
128
85
  body: JSON.stringify({
129
86
  query,
130
- variables: { customerId: customerGid },
87
+ variables: {
88
+ customerId: customerGid,
89
+ productQuery: `product_id:${numericProductId}`,
90
+ },
131
91
  }),
132
92
  });
133
93
  if (!response.ok) {
134
- logger_1.logger.error('Shopify Admin API error', {
135
- brand,
136
- status: response.status,
137
- });
138
- return [];
94
+ logger_1.logger.error('Shopify Admin API error', { brand, status: response.status });
95
+ return { canReview: false, customerId, productId, reason: 'not_purchased' };
139
96
  }
140
97
  const result = await response.json();
141
98
  if (result.errors?.length) {
142
- logger_1.logger.error('Shopify GraphQL errors', {
143
- brand,
144
- errors: result.errors,
145
- });
146
- return [];
99
+ logger_1.logger.error('Shopify GraphQL errors', { brand, errors: result.errors });
100
+ return { canReview: false, customerId, productId, reason: 'not_purchased' };
147
101
  }
148
102
  const orders = result.data?.customer?.orders?.edges || [];
149
- const deliveredPurchases = [];
103
+ // No orders with this product
104
+ if (orders.length === 0) {
105
+ return { canReview: false, customerId, productId, reason: 'not_purchased' };
106
+ }
107
+ // Check if any order is delivered
150
108
  for (const orderEdge of orders) {
151
109
  const order = orderEdge.node;
152
- // Check if order is delivered
153
110
  const isDelivered = order.displayFulfillmentStatus === 'FULFILLED' ||
154
111
  order.displayFulfillmentStatus === 'DELIVERED' ||
155
112
  order.fulfillments.some((f) => f.status === 'DELIVERED');
156
- if (!isDelivered)
157
- continue;
158
- // Check if order contains the target product
159
- for (const lineItemEdge of order.lineItems.edges) {
160
- const lineItem = lineItemEdge.node;
161
- if (!lineItem.product)
162
- continue;
163
- // Compare product IDs (normalize both to GID format)
164
- if (lineItem.product.id === productGid) {
165
- const deliveredFulfillment = order.fulfillments.find((f) => f.status === 'DELIVERED' || f.deliveredAt);
166
- deliveredPurchases.push({
113
+ if (isDelivered) {
114
+ // Find the product in line items for details
115
+ const productGid = `gid://shopify/Product/${numericProductId}`;
116
+ const lineItem = order.lineItems.edges.find((e) => e.node.product?.id === productGid);
117
+ const deliveredFulfillment = order.fulfillments.find((f) => f.status === 'DELIVERED' || f.deliveredAt);
118
+ return {
119
+ canReview: true,
120
+ customerId,
121
+ productId,
122
+ deliveredPurchase: {
167
123
  orderId: order.id,
168
124
  orderName: order.name,
169
- productId: lineItem.product.id,
170
- productTitle: lineItem.product.title,
171
- variantId: lineItem.variant?.id || '',
125
+ productId: lineItem?.node.product?.id || productGid,
126
+ productTitle: lineItem?.node.product?.title || '',
127
+ variantId: lineItem?.node.variant?.id || '',
172
128
  fulfillmentStatus: 'DELIVERED',
173
129
  orderedAt: order.createdAt,
174
130
  deliveredAt: deliveredFulfillment?.deliveredAt || undefined,
175
- });
176
- }
131
+ },
132
+ };
177
133
  }
178
134
  }
179
- return deliveredPurchases;
135
+ // Has orders but none delivered
136
+ return { canReview: false, customerId, productId, reason: 'not_delivered' };
180
137
  }
181
138
  catch (error) {
182
- logger_1.logger.error('Failed to fetch customer orders', {
139
+ logger_1.logger.error('Eligibility check failed', {
183
140
  brand,
184
141
  customerId,
142
+ productId,
185
143
  error: error instanceof Error ? error.message : 'Unknown',
186
144
  });
187
- return [];
145
+ return { canReview: false, customerId, productId, reason: 'not_purchased' };
188
146
  }
189
147
  }
190
148
  /**
191
- * Check if customer has ordered a product (regardless of delivery status).
149
+ * Get delivered purchases of a specific product for a customer.
150
+ * Uses optimized query with product filter.
192
151
  */
193
- async hasOrderedProduct(brand, customerId, productId) {
194
- const config = this.getAdminConfig(brand);
195
- const query = `
196
- query CustomerHasProduct($customerId: ID!, $first: Int!) {
197
- customer(id: $customerId) {
198
- orders(first: $first) {
199
- edges {
200
- node {
201
- lineItems(first: 50) {
202
- edges {
203
- node {
204
- product {
205
- id
206
- }
207
- }
208
- }
209
- }
210
- }
211
- }
212
- }
213
- }
214
- }
215
- `;
216
- const customerGid = customerId.startsWith('gid://')
217
- ? customerId
218
- : `gid://shopify/Customer/${customerId}`;
219
- const productGid = productId.startsWith('gid://')
220
- ? productId
221
- : `gid://shopify/Product/${productId}`;
222
- try {
223
- const response = await fetch(`${config.baseUrl}/graphql.json`, {
224
- method: 'POST',
225
- headers: {
226
- 'Content-Type': 'application/json',
227
- 'X-Shopify-Access-Token': config.apiKey,
228
- },
229
- body: JSON.stringify({
230
- query,
231
- variables: { customerId: customerGid, first: 50 },
232
- }),
233
- });
234
- if (!response.ok)
235
- return false;
236
- const result = await response.json();
237
- const orders = result.data?.customer?.orders?.edges || [];
238
- for (const orderEdge of orders) {
239
- for (const lineItemEdge of orderEdge.node.lineItems.edges) {
240
- if (lineItemEdge.node.product?.id === productGid) {
241
- return true;
242
- }
243
- }
244
- }
245
- return false;
246
- }
247
- catch {
248
- return false;
152
+ async getDeliveredPurchases(brand, customerId, productId) {
153
+ const result = await this.checkEligibility(brand, customerId, productId);
154
+ if (result.canReview && result.deliveredPurchase) {
155
+ return [result.deliveredPurchase];
249
156
  }
157
+ return [];
250
158
  }
251
159
  /**
252
160
  * Extract numeric ID from Shopify GID or return as-is if already numeric.
@@ -1 +1 @@
1
- {"version":3,"file":"shopify-customer.service.js","sourceRoot":"","sources":["../../../src/integrations/commerce/shopify-customer.service.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"shopify-customer.service.js","sourceRoot":"","sources":["../../../src/integrations/commerce/shopify-customer.service.ts"],"names":[],"mappings":"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"}
@@ -76,5 +76,7 @@ export interface BrandIntegrationConfig {
76
76
  /** Custom headers for the integration (e.g., Shopify Storefront token header) */
77
77
  headers?: Record<string, string>;
78
78
  options?: Record<string, unknown>;
79
+ /** Allow additional integration-specific properties (e.g., shopDomain, privateToken) */
80
+ [key: string]: unknown;
79
81
  }
80
82
  //# sourceMappingURL=integration.types.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"integration.types.d.ts","sourceRoot":"","sources":["../../src/integrations/integration.types.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,MAAM,WAAW,iBAAiB;IAChC,uCAAuC;IACvC,OAAO,EAAE,MAAM,CAAC;IAChB,0CAA0C;IAC1C,MAAM,EAAE,MAAM,CAAC;IACf,kCAAkC;IAClC,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACjC,uDAAuD;IACvD,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,wDAAwD;IACxD,YAAY,CAAC,EAAE,OAAO,CAAC;IACvB,6CAA6C;IAC7C,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB;AAED,MAAM,WAAW,mBAAmB,CAAC,CAAC;IACpC,OAAO,EAAE,OAAO,CAAC;IACjB,IAAI,CAAC,EAAE,CAAC,CAAC;IACT,KAAK,CAAC,EAAE,gBAAgB,CAAC;CAC1B;AAED,MAAM,WAAW,gBAAgB;IAC/B,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,MAAM,CAAC;IAChB,OAAO,CAAC,EAAE,OAAO,CAAC;CACnB;AAED,MAAM,WAAW,YAAY;IAC3B,UAAU,EAAE,MAAM,CAAC;IACnB,WAAW,EAAE,MAAM,CAAC;IACpB,UAAU,EAAE,MAAM,CAAC;CACpB;AAED;;GAEG;AACH,MAAM,WAAW,iBAAiB;IAChC,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,OAAO,CAAC;IACjB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED;;;GAGG;AACH,MAAM,MAAM,eAAe,GACvB,UAAU,GACV,SAAS,GACT,SAAS,GACT,UAAU,GACV,YAAY,GACZ,KAAK,GACL,UAAU,GACV,UAAU,GACV,QAAQ,GACR,WAAW,CAAC;AAEhB;;;;;;;;;;;;;;;;;;;;;GAqBG;AACH,MAAM,WAAW,sBAAsB;IACrC,QAAQ,EAAE,MAAM,CAAC;IACjB,OAAO,EAAE,MAAM,CAAC;IAChB,MAAM,EAAE,MAAM,CAAC;IACf,iFAAiF;IACjF,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACjC,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CACnC"}
1
+ {"version":3,"file":"integration.types.d.ts","sourceRoot":"","sources":["../../src/integrations/integration.types.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,MAAM,WAAW,iBAAiB;IAChC,uCAAuC;IACvC,OAAO,EAAE,MAAM,CAAC;IAChB,0CAA0C;IAC1C,MAAM,EAAE,MAAM,CAAC;IACf,kCAAkC;IAClC,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACjC,uDAAuD;IACvD,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,wDAAwD;IACxD,YAAY,CAAC,EAAE,OAAO,CAAC;IACvB,6CAA6C;IAC7C,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB;AAED,MAAM,WAAW,mBAAmB,CAAC,CAAC;IACpC,OAAO,EAAE,OAAO,CAAC;IACjB,IAAI,CAAC,EAAE,CAAC,CAAC;IACT,KAAK,CAAC,EAAE,gBAAgB,CAAC;CAC1B;AAED,MAAM,WAAW,gBAAgB;IAC/B,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,MAAM,CAAC;IAChB,OAAO,CAAC,EAAE,OAAO,CAAC;CACnB;AAED,MAAM,WAAW,YAAY;IAC3B,UAAU,EAAE,MAAM,CAAC;IACnB,WAAW,EAAE,MAAM,CAAC;IACpB,UAAU,EAAE,MAAM,CAAC;CACpB;AAED;;GAEG;AACH,MAAM,WAAW,iBAAiB;IAChC,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,OAAO,CAAC;IACjB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED;;;GAGG;AACH,MAAM,MAAM,eAAe,GACvB,UAAU,GACV,SAAS,GACT,SAAS,GACT,UAAU,GACV,YAAY,GACZ,KAAK,GACL,UAAU,GACV,UAAU,GACV,QAAQ,GACR,WAAW,CAAC;AAEhB;;;;;;;;;;;;;;;;;;;;;GAqBG;AACH,MAAM,WAAW,sBAAsB;IACrC,QAAQ,EAAE,MAAM,CAAC;IACjB,OAAO,EAAE,MAAM,CAAC;IAChB,MAAM,EAAE,MAAM,CAAC;IACf,iFAAiF;IACjF,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACjC,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAClC,wFAAwF;IACxF,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC;CACxB"}
@@ -55,6 +55,16 @@ export declare class JudgeMeService implements IReviewsService {
55
55
  * Get review count for a product.
56
56
  */
57
57
  getReviewCount(shopifyProductId: string): Promise<IntegrationResponse<number>>;
58
+ /**
59
+ * Check if a customer has already reviewed a product.
60
+ *
61
+ * Queries Judge.me reviews filtered by reviewer email and product ID.
62
+ * Returns true if any review exists (published or unpublished).
63
+ *
64
+ * @param shopifyProductId - Shopify product ID
65
+ * @param reviewerEmail - Customer's email address
66
+ */
67
+ hasCustomerReviewed(shopifyProductId: string, reviewerEmail: string): Promise<IntegrationResponse<boolean>>;
58
68
  /**
59
69
  * Submit a review.
60
70
  *
@@ -1 +1 @@
1
- {"version":3,"file":"judgeme.service.d.ts","sourceRoot":"","sources":["../../../src/integrations/reviews/judgeme.service.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,mBAAmB,EAAoB,MAAM,sBAAsB,CAAC;AAC7E,OAAO,EACL,aAAa,EACb,sBAAsB,EACtB,aAAa,EACb,wBAAwB,EACxB,oBAAoB,EACpB,eAAe,EAChB,MAAM,iBAAiB,CAAC;AAEzB;;;;;;;;;;;;;;GAcG;AACH,qBACa,cAAe,YAAW,eAAe;IACpD,OAAO,CAAC,MAAM,CAA8B;IAC5C,OAAO,CAAC,KAAK,CAAc;IAC3B,OAAO,CAAC,QAAQ,CAAC,cAAc,CAAS;IAGxC,OAAO,CAAC,cAAc,CAAkC;IAExD;;OAEG;IACH,SAAS,CAAC,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,aAAa,GAAG,IAAI;IASrD;;OAEG;IACH,YAAY,IAAI,OAAO;IAIvB;;OAEG;IACH,kBAAkB,CAAC,gBAAgB,EAAE,MAAM,EAAE,gBAAgB,EAAE,MAAM,GAAG,IAAI;IAI5E;;OAEG;IACH,kBAAkB,CAAC,gBAAgB,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS;IAIhE;;;;;;OAMG;IACG,gBAAgB,CAAC,gBAAgB,EAAE,MAAM,GAAG,OAAO,CAAC,mBAAmB,CAAC,MAAM,CAAC,CAAC;IA6EtF;;;;;OAKG;IACG,UAAU,CACd,MAAM,EAAE,wBAAwB,GAC/B,OAAO,CAAC,mBAAmB,CAAC,sBAAsB,CAAC,CAAC;IA2EvD;;OAEG;IACG,cAAc,CAAC,gBAAgB,EAAE,MAAM,GAAG,OAAO,CAAC,mBAAmB,CAAC,MAAM,CAAC,CAAC;IA2DpF;;;;;;;;;OASG;IACG,YAAY,CAAC,MAAM,EAAE,oBAAoB,GAAG,OAAO,CAAC,mBAAmB,CAAC,aAAa,CAAC,CAAC;IAuJ7F;;OAEG;IACH,MAAM,CAAC,YAAY,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM;IAmBzC;;OAEG;IACH,OAAO,CAAC,kBAAkB;IAU1B;;OAEG;IACH,OAAO,CAAC,gBAAgB;IAQxB;;OAEG;IACH,OAAO,CAAC,cAAc;CA8BvB"}
1
+ {"version":3,"file":"judgeme.service.d.ts","sourceRoot":"","sources":["../../../src/integrations/reviews/judgeme.service.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,mBAAmB,EAAoB,MAAM,sBAAsB,CAAC;AAC7E,OAAO,EACL,aAAa,EACb,sBAAsB,EACtB,aAAa,EACb,wBAAwB,EACxB,oBAAoB,EACpB,eAAe,EAChB,MAAM,iBAAiB,CAAC;AAEzB;;;;;;;;;;;;;;GAcG;AACH,qBACa,cAAe,YAAW,eAAe;IACpD,OAAO,CAAC,MAAM,CAA8B;IAC5C,OAAO,CAAC,KAAK,CAAc;IAC3B,OAAO,CAAC,QAAQ,CAAC,cAAc,CAAS;IAGxC,OAAO,CAAC,cAAc,CAAkC;IAExD;;OAEG;IACH,SAAS,CAAC,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,aAAa,GAAG,IAAI;IASrD;;OAEG;IACH,YAAY,IAAI,OAAO;IAIvB;;OAEG;IACH,kBAAkB,CAAC,gBAAgB,EAAE,MAAM,EAAE,gBAAgB,EAAE,MAAM,GAAG,IAAI;IAI5E;;OAEG;IACH,kBAAkB,CAAC,gBAAgB,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS;IAIhE;;;;;;OAMG;IACG,gBAAgB,CAAC,gBAAgB,EAAE,MAAM,GAAG,OAAO,CAAC,mBAAmB,CAAC,MAAM,CAAC,CAAC;IA6EtF;;;;;OAKG;IACG,UAAU,CACd,MAAM,EAAE,wBAAwB,GAC/B,OAAO,CAAC,mBAAmB,CAAC,sBAAsB,CAAC,CAAC;IA2EvD;;OAEG;IACG,cAAc,CAAC,gBAAgB,EAAE,MAAM,GAAG,OAAO,CAAC,mBAAmB,CAAC,MAAM,CAAC,CAAC;IA2DpF;;;;;;;;OAQG;IACG,mBAAmB,CACvB,gBAAgB,EAAE,MAAM,EACxB,aAAa,EAAE,MAAM,GACpB,OAAO,CAAC,mBAAmB,CAAC,OAAO,CAAC,CAAC;IA6ExC;;;;;;;;;OASG;IACG,YAAY,CAAC,MAAM,EAAE,oBAAoB,GAAG,OAAO,CAAC,mBAAmB,CAAC,aAAa,CAAC,CAAC;IAuJ7F;;OAEG;IACH,MAAM,CAAC,YAAY,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM;IAmBzC;;OAEG;IACH,OAAO,CAAC,kBAAkB;IAU1B;;OAEG;IACH,OAAO,CAAC,gBAAgB;IAQxB;;OAEG;IACH,OAAO,CAAC,cAAc;CA8BvB"}
@@ -236,6 +236,79 @@ let JudgeMeService = class JudgeMeService {
236
236
  };
237
237
  }
238
238
  }
239
+ /**
240
+ * Check if a customer has already reviewed a product.
241
+ *
242
+ * Queries Judge.me reviews filtered by reviewer email and product ID.
243
+ * Returns true if any review exists (published or unpublished).
244
+ *
245
+ * @param shopifyProductId - Shopify product ID
246
+ * @param reviewerEmail - Customer's email address
247
+ */
248
+ async hasCustomerReviewed(shopifyProductId, reviewerEmail) {
249
+ if (!this.config) {
250
+ return this.notConfiguredError();
251
+ }
252
+ // Resolve to Judge.me internal product ID
253
+ const productIdResult = await this.resolveProductId(shopifyProductId);
254
+ if (!productIdResult.success) {
255
+ return { success: false, error: productIdResult.error };
256
+ }
257
+ const url = new URL(`${this.config.baseUrl}/reviews`);
258
+ url.searchParams.set('shop_domain', this.config.shopDomain);
259
+ url.searchParams.set('product_id', productIdResult.data);
260
+ url.searchParams.set('reviewer_email', reviewerEmail);
261
+ url.searchParams.set('per_page', '1');
262
+ try {
263
+ const controller = new AbortController();
264
+ const timeoutId = setTimeout(() => controller.abort(), this.config.timeout ?? this.defaultTimeout);
265
+ const response = await fetch(url.toString(), {
266
+ method: 'GET',
267
+ headers: {
268
+ 'Content-Type': 'application/json',
269
+ 'X-Api-Token': this.config.privateToken,
270
+ },
271
+ signal: controller.signal,
272
+ });
273
+ clearTimeout(timeoutId);
274
+ if (!response.ok) {
275
+ const errorText = await response.text();
276
+ logger_1.logger.error('Judge.me hasCustomerReviewed check failed', {
277
+ brand: this.brand,
278
+ shopifyProductId,
279
+ status: response.status,
280
+ });
281
+ return {
282
+ success: false,
283
+ error: this.normalizeError(response.status, errorText),
284
+ };
285
+ }
286
+ const data = (await response.json());
287
+ const hasReviewed = data.reviews.length > 0;
288
+ logger_1.logger.info('Checked if customer has reviewed product', {
289
+ brand: this.brand,
290
+ shopifyProductId,
291
+ reviewerEmail,
292
+ hasReviewed,
293
+ });
294
+ return { success: true, data: hasReviewed };
295
+ }
296
+ catch (error) {
297
+ logger_1.logger.error('Judge.me hasCustomerReviewed failed', {
298
+ brand: this.brand,
299
+ shopifyProductId,
300
+ error: error instanceof Error ? error.message : 'Unknown error',
301
+ });
302
+ return {
303
+ success: false,
304
+ error: {
305
+ code: 'REQUEST_FAILED',
306
+ message: error instanceof Error ? error.message : 'Request failed',
307
+ details: error,
308
+ },
309
+ };
310
+ }
311
+ }
239
312
  /**
240
313
  * Submit a review.
241
314
  *
@@ -1 +1 @@
1
- {"version":3,"file":"judgeme.service.js","sourceRoot":"","sources":["../../../src/integrations/reviews/judgeme.service.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"judgeme.service.js","sourceRoot":"","sources":["../../../src/integrations/reviews/judgeme.service.ts"],"names":[],"mappings":"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"}
@@ -123,5 +123,6 @@ export interface IReviewsService {
123
123
  getReviews(params: JudgeMeGetReviewsRequest): Promise<IntegrationResponse<JudgeMeReviewsResponse>>;
124
124
  getReviewCount(shopifyProductId: string): Promise<IntegrationResponse<number>>;
125
125
  submitReview(params: JudgeMeSubmitRequest): Promise<IntegrationResponse<JudgeMeReview>>;
126
+ hasCustomerReviewed(shopifyProductId: string, reviewerEmail: string): Promise<IntegrationResponse<boolean>>;
126
127
  }
127
128
  //# sourceMappingURL=judgeme.types.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"judgeme.types.d.ts","sourceRoot":"","sources":["../../../src/integrations/reviews/judgeme.types.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"judgeme.types.d.ts","sourceRoot":"","sources":["../../../src/integrations/reviews/judgeme.types.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@pvh-afl/core",
3
- "version": "1.0.20",
3
+ "version": "1.0.22",
4
4
  "description": "AFL Core - Shared services for multi-brand commerce platform",
5
5
  "main": "dist/index.js",
6
6
  "types": "dist/index.d.ts",