@faststore/api 3.84.5 → 3.85.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (33) hide show
  1. package/dist/cjs/package.json +1 -1
  2. package/dist/cjs/src/__generated__/schema.d.ts +9 -0
  3. package/dist/cjs/src/__generated__/schema.d.ts.map +1 -1
  4. package/dist/cjs/src/__generated__/schema.js.map +1 -1
  5. package/dist/cjs/src/platforms/vtex/clients/commerce/index.d.ts +4 -0
  6. package/dist/cjs/src/platforms/vtex/clients/commerce/index.d.ts.map +1 -1
  7. package/dist/cjs/src/platforms/vtex/clients/commerce/index.js +7 -0
  8. package/dist/cjs/src/platforms/vtex/clients/commerce/index.js.map +1 -1
  9. package/dist/cjs/src/platforms/vtex/clients/index.d.ts +4 -0
  10. package/dist/cjs/src/platforms/vtex/clients/index.d.ts.map +1 -1
  11. package/dist/cjs/src/platforms/vtex/resolvers/validateSession.d.ts.map +1 -1
  12. package/dist/cjs/src/platforms/vtex/resolvers/validateSession.js +15 -3
  13. package/dist/cjs/src/platforms/vtex/resolvers/validateSession.js.map +1 -1
  14. package/dist/cjs/src/typeDefs/session.graphql +10 -0
  15. package/dist/esm/package.json +1 -1
  16. package/dist/esm/src/__generated__/schema.d.ts +9 -0
  17. package/dist/esm/src/__generated__/schema.d.ts.map +1 -1
  18. package/dist/esm/src/__generated__/schema.js.map +1 -1
  19. package/dist/esm/src/platforms/vtex/clients/commerce/index.d.ts +4 -0
  20. package/dist/esm/src/platforms/vtex/clients/commerce/index.d.ts.map +1 -1
  21. package/dist/esm/src/platforms/vtex/clients/commerce/index.js +7 -0
  22. package/dist/esm/src/platforms/vtex/clients/commerce/index.js.map +1 -1
  23. package/dist/esm/src/platforms/vtex/clients/index.d.ts +4 -0
  24. package/dist/esm/src/platforms/vtex/clients/index.d.ts.map +1 -1
  25. package/dist/esm/src/platforms/vtex/resolvers/validateSession.d.ts.map +1 -1
  26. package/dist/esm/src/platforms/vtex/resolvers/validateSession.js +15 -3
  27. package/dist/esm/src/platforms/vtex/resolvers/validateSession.js.map +1 -1
  28. package/dist/esm/src/typeDefs/session.graphql +10 -0
  29. package/package.json +2 -2
  30. package/src/__generated__/schema.ts +11 -0
  31. package/src/platforms/vtex/clients/commerce/index.ts +18 -0
  32. package/src/platforms/vtex/resolvers/validateSession.ts +16 -4
  33. package/src/typeDefs/session.graphql +10 -0
@@ -108,6 +108,10 @@ export declare const getClients: (options: Options, ctx: Context) => {
108
108
  name: string;
109
109
  email: string;
110
110
  }>;
111
+ getUserGrantedResources: ({ userId, resourceKey, }: {
112
+ userId: string;
113
+ resourceKey: string;
114
+ }) => Promise<boolean>;
111
115
  };
112
116
  masterData: {
113
117
  getContractById: ({ contractId, }: {
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../src/platforms/vtex/clients/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,OAAO,EAAE,MAAM,IAAI,CAAA;AAI1C,MAAM,MAAM,OAAO,GAAG,UAAU,CAAC,OAAO,UAAU,CAAC,CAAA;AAEnD,eAAO,MAAM,UAAU,YAAa,OAAO,OAAO,OAAO;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAQxD,CAAA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../src/platforms/vtex/clients/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,OAAO,EAAE,MAAM,IAAI,CAAA;AAI1C,MAAM,MAAM,OAAO,GAAG,UAAU,CAAC,OAAO,UAAU,CAAC,CAAA;AAEnD,eAAO,MAAM,UAAU,YAAa,OAAO,OAAO,OAAO;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAQxD,CAAA"}
@@ -1 +1 @@
1
- {"version":3,"file":"validateSession.d.ts","sourceRoot":"","sources":["../../../../../../src/platforms/vtex/resolvers/validateSession.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,IAAI,CAAA;AACjC,OAAO,KAAK,EACV,2BAA2B,EAE3B,YAAY,EACb,MAAM,+BAA+B,CAAA;AA0BtC,eAAO,MAAM,eAAe,MACvB,GAAG,mCAC2B,2BAA2B,iCAC7B,OAAO,KACrC,QAAQ,YAAY,GAAG,IAAI,CA2I7B,CAAA"}
1
+ {"version":3,"file":"validateSession.d.ts","sourceRoot":"","sources":["../../../../../../src/platforms/vtex/resolvers/validateSession.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,IAAI,CAAA;AACjC,OAAO,KAAK,EACV,2BAA2B,EAE3B,YAAY,EACb,MAAM,+BAA+B,CAAA;AA0BtC,eAAO,MAAM,eAAe,MACvB,GAAG,mCAC2B,2BAA2B,iCAC7B,OAAO,KACrC,QAAQ,YAAY,GAAG,IAAI,CAuJ7B,CAAA"}
@@ -58,9 +58,18 @@ export const validateSession = async (_, { session: oldSession, search }, { clie
58
58
  const isRepresentative = jwt?.isRepresentative;
59
59
  const customerId = jwt?.customerId;
60
60
  const unitId = jwt?.unitId;
61
- const sessionData = await clients.commerce
62
- .session(params.toString())
63
- .catch(() => null);
61
+ const userId = jwt?.userId;
62
+ const [sessionData, canManageOrganization] = await Promise.all([
63
+ clients.commerce.session(params.toString()).catch(() => null),
64
+ userId
65
+ ? clients.commerce.licenseManager
66
+ .getUserGrantedResources({
67
+ userId: userId,
68
+ resourceKey: 'ManageOrganizationAndContract',
69
+ })
70
+ .catch(() => false)
71
+ : false,
72
+ ]);
64
73
  const profile = sessionData?.namespaces.profile ?? null;
65
74
  const shopper = sessionData?.namespaces.shopper ?? null;
66
75
  const store = sessionData?.namespaces.store ?? null;
@@ -109,6 +118,9 @@ export const validateSession = async (_, { session: oldSession, search }, { clie
109
118
  userName: `${shopper?.firstName?.value ?? ''} ${shopper?.lastName?.value ?? ''}`.trim(),
110
119
  userEmail: authentication?.storeUserEmail.value ?? '',
111
120
  savedPostalCode: publicData?.postalCode?.value ?? '',
121
+ permissions: {
122
+ canManageOrganization,
123
+ },
112
124
  }
113
125
  : null,
114
126
  marketingData,
@@ -1 +1 @@
1
- {"version":3,"file":"validateSession.js","sourceRoot":"","sources":["../../../../../../src/platforms/vtex/resolvers/validateSession.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"validateSession.js","sourceRoot":"","sources":["../../../../../../src/platforms/vtex/resolvers/validateSession.ts"],"names":[],"mappings":"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"}
@@ -188,6 +188,10 @@ type StoreSession {
188
188
  refreshAfter: String
189
189
  }
190
190
 
191
+ type StoreB2BPermissions {
192
+ canManageOrganization: Boolean!
193
+ }
194
+
191
195
  type StoreB2B {
192
196
  customerId: String!
193
197
  isRepresentative: Boolean
@@ -198,6 +202,11 @@ type StoreB2B {
198
202
  userName: String
199
203
  userEmail: String
200
204
  savedPostalCode: String
205
+ permissions: StoreB2BPermissions!
206
+ }
207
+
208
+ input IStoreB2BPermissions {
209
+ canManageOrganization: Boolean!
201
210
  }
202
211
 
203
212
  input IStoreB2B {
@@ -210,6 +219,7 @@ input IStoreB2B {
210
219
  userName: String
211
220
  userEmail: String
212
221
  savedPostalCode: String
222
+ permissions: IStoreB2BPermissions!
213
223
  }
214
224
 
215
225
  """
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@faststore/api",
3
- "version": "3.84.5",
3
+ "version": "3.85.0",
4
4
  "license": "MIT",
5
5
  "main": "dist/cjs/src/index.js",
6
6
  "typings": "dist/esm/src/index.d.ts",
@@ -73,5 +73,5 @@
73
73
  "volta": {
74
74
  "extends": "../../package.json"
75
75
  },
76
- "gitHead": "add61f1da0d18a1a8473a6f61857cb413147fbc9"
76
+ "gitHead": "c22e947e0fb8b6bdeece0e79f0dc0aa784063779"
77
77
  }
@@ -416,6 +416,7 @@ export type IStoreB2B = {
416
416
  firstName?: Maybe<Scalars['String']>;
417
417
  isRepresentative?: Maybe<Scalars['Boolean']>;
418
418
  lastName?: Maybe<Scalars['String']>;
419
+ permissions: IStoreB2BPermissions;
419
420
  savedPostalCode?: Maybe<Scalars['String']>;
420
421
  unitId?: Maybe<Scalars['String']>;
421
422
  unitName?: Maybe<Scalars['String']>;
@@ -423,6 +424,10 @@ export type IStoreB2B = {
423
424
  userName?: Maybe<Scalars['String']>;
424
425
  };
425
426
 
427
+ export type IStoreB2BPermissions = {
428
+ canManageOrganization: Scalars['Boolean'];
429
+ };
430
+
426
431
  /** Shopping cart input. */
427
432
  export type IStoreCart = {
428
433
  /** Order information, including `orderNumber`, `acceptedOffer` and `shouldSplitItem`. */
@@ -1184,6 +1189,7 @@ export type StoreB2B = {
1184
1189
  firstName?: Maybe<Scalars['String']>;
1185
1190
  isRepresentative?: Maybe<Scalars['Boolean']>;
1186
1191
  lastName?: Maybe<Scalars['String']>;
1192
+ permissions: StoreB2BPermissions;
1187
1193
  savedPostalCode?: Maybe<Scalars['String']>;
1188
1194
  unitId?: Maybe<Scalars['String']>;
1189
1195
  unitName?: Maybe<Scalars['String']>;
@@ -1191,6 +1197,11 @@ export type StoreB2B = {
1191
1197
  userName?: Maybe<Scalars['String']>;
1192
1198
  };
1193
1199
 
1200
+ export type StoreB2BPermissions = {
1201
+ __typename?: 'StoreB2BPermissions';
1202
+ canManageOrganization: Scalars['Boolean'];
1203
+ };
1204
+
1194
1205
  /** Brand of a given product. */
1195
1206
  export type StoreBrand = {
1196
1207
  __typename?: 'StoreBrand';
@@ -670,6 +670,24 @@ export const VtexCommerce = (
670
670
  {}
671
671
  )
672
672
  },
673
+ getUserGrantedResources: ({
674
+ userId,
675
+ resourceKey,
676
+ }: {
677
+ userId: string
678
+ resourceKey: string
679
+ }): Promise<boolean> => {
680
+ const headers: HeadersInit = withAutCookie(forwardedHost, account)
681
+
682
+ return fetchAPI(
683
+ `${base}/api/license-manager/storefront/users/${userId}/resources/${resourceKey}/granted`,
684
+ {
685
+ method: 'GET',
686
+ headers,
687
+ },
688
+ {}
689
+ )
690
+ },
673
691
  },
674
692
  masterData: {
675
693
  getContractById: ({
@@ -94,10 +94,19 @@ export const validateSession = async (
94
94
  const isRepresentative = jwt?.isRepresentative
95
95
  const customerId = jwt?.customerId
96
96
  const unitId = jwt?.unitId
97
-
98
- const sessionData = await clients.commerce
99
- .session(params.toString())
100
- .catch(() => null)
97
+ const userId = jwt?.userId
98
+
99
+ const [sessionData, canManageOrganization] = await Promise.all([
100
+ clients.commerce.session(params.toString()).catch(() => null),
101
+ userId
102
+ ? clients.commerce.licenseManager
103
+ .getUserGrantedResources({
104
+ userId: userId,
105
+ resourceKey: 'ManageOrganizationAndContract',
106
+ })
107
+ .catch(() => false)
108
+ : false,
109
+ ])
101
110
 
102
111
  const profile = sessionData?.namespaces.profile ?? null
103
112
  const shopper = sessionData?.namespaces.shopper ?? null
@@ -150,6 +159,9 @@ export const validateSession = async (
150
159
  `${shopper?.firstName?.value ?? ''} ${shopper?.lastName?.value ?? ''}`.trim(),
151
160
  userEmail: authentication?.storeUserEmail.value ?? '',
152
161
  savedPostalCode: publicData?.postalCode?.value ?? '',
162
+ permissions: {
163
+ canManageOrganization,
164
+ },
153
165
  }
154
166
  : null,
155
167
  marketingData,
@@ -188,6 +188,10 @@ type StoreSession {
188
188
  refreshAfter: String
189
189
  }
190
190
 
191
+ type StoreB2BPermissions {
192
+ canManageOrganization: Boolean!
193
+ }
194
+
191
195
  type StoreB2B {
192
196
  customerId: String!
193
197
  isRepresentative: Boolean
@@ -198,6 +202,11 @@ type StoreB2B {
198
202
  userName: String
199
203
  userEmail: String
200
204
  savedPostalCode: String
205
+ permissions: StoreB2BPermissions!
206
+ }
207
+
208
+ input IStoreB2BPermissions {
209
+ canManageOrganization: Boolean!
201
210
  }
202
211
 
203
212
  input IStoreB2B {
@@ -210,6 +219,7 @@ input IStoreB2B {
210
219
  userName: String
211
220
  userEmail: String
212
221
  savedPostalCode: String
222
+ permissions: IStoreB2BPermissions!
213
223
  }
214
224
 
215
225
  """