@faststore/api 4.0.1-dev.2 → 4.1.0-dev.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.
- package/dist/cjs/index.js +15 -7
- package/dist/cjs/index.js.map +1 -1
- package/dist/es/index.mjs +203 -175
- package/dist/es/index.mjs.map +1 -1
- package/dist/src/__generated__/schema.d.ts +4 -0
- package/dist/src/__generated__/schema.d.ts.map +1 -1
- package/dist/src/platforms/vtex/clients/commerce/index.d.ts +9 -0
- package/dist/src/platforms/vtex/clients/commerce/index.d.ts.map +1 -1
- package/dist/src/platforms/vtex/clients/commerce/types/Session.d.ts +1 -0
- package/dist/src/platforms/vtex/clients/commerce/types/Session.d.ts.map +1 -1
- package/dist/src/platforms/vtex/clients/index.d.ts +9 -0
- package/dist/src/platforms/vtex/clients/index.d.ts.map +1 -1
- package/dist/src/platforms/vtex/index.d.ts +2 -0
- package/dist/src/platforms/vtex/index.d.ts.map +1 -1
- package/dist/src/platforms/vtex/resolvers/index.d.ts +2 -0
- package/dist/src/platforms/vtex/resolvers/index.d.ts.map +1 -1
- package/dist/src/platforms/vtex/resolvers/query.d.ts +2 -0
- package/dist/src/platforms/vtex/resolvers/query.d.ts.map +1 -1
- package/package.json +3 -3
- package/src/__generated__/schema.ts +4 -0
- package/src/platforms/vtex/clients/commerce/index.ts +18 -1
- package/src/platforms/vtex/clients/commerce/types/Session.ts +1 -0
- package/src/platforms/vtex/resolvers/query.ts +23 -5
- package/src/platforms/vtex/typeDefs/query.graphql +8 -0
|
@@ -117,8 +117,10 @@ export declare const Query: {
|
|
|
117
117
|
isValid: boolean;
|
|
118
118
|
}>;
|
|
119
119
|
userDetails: (_: unknown, __: unknown, ctx: GraphqlContext) => Promise<{
|
|
120
|
+
username: string;
|
|
120
121
|
name: string;
|
|
121
122
|
email: string;
|
|
123
|
+
phone: string;
|
|
122
124
|
role: string[];
|
|
123
125
|
orgUnit: string;
|
|
124
126
|
}>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"query.d.ts","sourceRoot":"","sources":["../../../../../src/platforms/vtex/resolvers/query.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,6BAA6B,EAC7B,uBAAuB,EACvB,oBAAoB,EACpB,mBAAmB,EACnB,uBAAuB,EACvB,qBAAqB,EACrB,gBAAgB,EAChB,qBAAqB,EACrB,iBAAiB,EACjB,gBAAgB,EAChB,iBAAiB,EACjB,eAAe,EACf,gBAAgB,EAChB,iBAAiB,EACjB,kBAAkB,EAEnB,MAAM,+BAA+B,CAAA;AAQtC,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,wCAAwC,CAAA;AAC1E,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,mCAAmC,CAAA;AACvE,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAA;AACnD,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,UAAU,CAAA;AAkB9C,eAAO,MAAM,KAAK;iBAEX,OAAO,eACG,gBAAgB,OACxB,cAAc;oBA+EhB,OAAO,YACA,mBAAmB,OACxB,cAAc;gBAShB,OAAO,6EAQP,eAAe,OACb,cAAc;;;;qBAuDhB,OAAO,gCACoB,oBAAoB,OAC7C,cAAc;;;;;;;;;;;;;kBAkChB,OAAO,kBACM,iBAAiB,OAC5B,cAAc;wBA0BhB,OAAO,gCACoB,uBAAuB,OAChD,cAAc;;;;;;;;;;;;;;;;;;uBAa6B,MAAM;;;;;kBA2CnD,OAAO,kCACsB,iBAAiB,OAC5C,cAAc;;;;;;;;;;;;;;;;;kBAkBhB,OAAO,4BACgB,iBAAiB,OACtC,cAAc;;;iBAqBhB,OAAO,yDAC6C,gBAAgB,OAClE,cAAc;;;;iBAqBhB,OAAO,UACF,gBAAgB,OACnB,cAAc;;;sBAyBhB,OAAO,YACA,qBAAqB,OAC1B,cAAc;mBAahB,OAAO,eACG,kBAAkB,OAC1B,cAAc;;;;;;;;;;;;;;;;;;;;;;;wBAqGhB,OAAO,WACD,uBAAuB,OAC3B,cAAc;;;;;;;;;;;;;;;sBAwBG,OAAO,MAAM,OAAO,QAAQ,cAAc;;;qBAQ3C,OAAO,MAAM,OAAO,OAAO,cAAc
|
|
1
|
+
{"version":3,"file":"query.d.ts","sourceRoot":"","sources":["../../../../../src/platforms/vtex/resolvers/query.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,6BAA6B,EAC7B,uBAAuB,EACvB,oBAAoB,EACpB,mBAAmB,EACnB,uBAAuB,EACvB,qBAAqB,EACrB,gBAAgB,EAChB,qBAAqB,EACrB,iBAAiB,EACjB,gBAAgB,EAChB,iBAAiB,EACjB,eAAe,EACf,gBAAgB,EAChB,iBAAiB,EACjB,kBAAkB,EAEnB,MAAM,+BAA+B,CAAA;AAQtC,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,wCAAwC,CAAA;AAC1E,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,mCAAmC,CAAA;AACvE,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAA;AACnD,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,UAAU,CAAA;AAkB9C,eAAO,MAAM,KAAK;iBAEX,OAAO,eACG,gBAAgB,OACxB,cAAc;oBA+EhB,OAAO,YACA,mBAAmB,OACxB,cAAc;gBAShB,OAAO,6EAQP,eAAe,OACb,cAAc;;;;qBAuDhB,OAAO,gCACoB,oBAAoB,OAC7C,cAAc;;;;;;;;;;;;;kBAkChB,OAAO,kBACM,iBAAiB,OAC5B,cAAc;wBA0BhB,OAAO,gCACoB,uBAAuB,OAChD,cAAc;;;;;;;;;;;;;;;;;;uBAa6B,MAAM;;;;;kBA2CnD,OAAO,kCACsB,iBAAiB,OAC5C,cAAc;;;;;;;;;;;;;;;;;kBAkBhB,OAAO,4BACgB,iBAAiB,OACtC,cAAc;;;iBAqBhB,OAAO,yDAC6C,gBAAgB,OAClE,cAAc;;;;iBAqBhB,OAAO,UACF,gBAAgB,OACnB,cAAc;;;sBAyBhB,OAAO,YACA,qBAAqB,OAC1B,cAAc;mBAahB,OAAO,eACG,kBAAkB,OAC1B,cAAc;;;;;;;;;;;;;;;;;;;;;;;wBAqGhB,OAAO,WACD,uBAAuB,OAC3B,cAAc;;;;;;;;;;;;;;;sBAwBG,OAAO,MAAM,OAAO,QAAQ,cAAc;;;qBAQ3C,OAAO,MAAM,OAAO,OAAO,cAAc;;;;;;;;wBAqCtC,OAAO,MAAM,OAAO,OAAO,cAAc;;;;;sBAmD9D,OAAO,sBACU,qBAAqB,OACpC,cAAc;CAYtB,CAAA"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@faststore/api",
|
|
3
|
-
"version": "4.0
|
|
3
|
+
"version": "4.1.0-dev.0",
|
|
4
4
|
"license": "MIT",
|
|
5
5
|
"main": "dist/cjs/index.js",
|
|
6
6
|
"typings": "dist/src/index.d.ts",
|
|
@@ -55,7 +55,7 @@
|
|
|
55
55
|
"@envelop/graphql-jit": "catalog:",
|
|
56
56
|
"@envelop/parser-cache": "catalog:",
|
|
57
57
|
"@envelop/validation-cache": "catalog:",
|
|
58
|
-
"@faststore/diagnostics": "^4.0
|
|
58
|
+
"@faststore/diagnostics": "^4.1.0-dev.0",
|
|
59
59
|
"@graphql-codegen/cli": "catalog:",
|
|
60
60
|
"@graphql-codegen/typescript": "catalog:",
|
|
61
61
|
"@parcel/watcher": "^2.5.1",
|
|
@@ -78,5 +78,5 @@
|
|
|
78
78
|
"publishConfig": {
|
|
79
79
|
"access": "public"
|
|
80
80
|
},
|
|
81
|
-
"gitHead": "
|
|
81
|
+
"gitHead": "e356beb2c1bfd3b06bc2a383c01d5957d18c8f34"
|
|
82
82
|
}
|
|
@@ -1749,8 +1749,12 @@ export type StoreUserDetails = {
|
|
|
1749
1749
|
name?: Maybe<Scalars['String']['output']>;
|
|
1750
1750
|
/** User's organizational unit. */
|
|
1751
1751
|
orgUnit?: Maybe<Scalars['String']['output']>;
|
|
1752
|
+
/** User's phone number. */
|
|
1753
|
+
phone?: Maybe<Scalars['String']['output']>;
|
|
1752
1754
|
/** User's role. */
|
|
1753
1755
|
role?: Maybe<Array<Maybe<Scalars['String']['output']>>>;
|
|
1756
|
+
/** User's username (login). May differ from email when Alternative Login is enabled. */
|
|
1757
|
+
username?: Maybe<Scalars['String']['output']>;
|
|
1754
1758
|
};
|
|
1755
1759
|
|
|
1756
1760
|
export type UserOrder = {
|
|
@@ -453,7 +453,7 @@ export const VtexCommerce = (
|
|
|
453
453
|
|
|
454
454
|
params.set(
|
|
455
455
|
'items',
|
|
456
|
-
'profile.id,profile.email,profile.firstName,profile.lastName,shopper.firstName,shopper.lastName,shopper.organizationManager,store.channel,store.countryCode,store.cultureInfo,store.currencyCode,store.currencySymbol,authentication.customerId,authentication.storeUserId,authentication.storeUserEmail,authentication.unitId,authentication.unitName,checkout.regionId,public.postalCode'
|
|
456
|
+
'profile.id,profile.email,profile.firstName,profile.lastName,profile.phone,shopper.firstName,shopper.lastName,shopper.organizationManager,store.channel,store.countryCode,store.cultureInfo,store.currencyCode,store.currencySymbol,authentication.customerId,authentication.storeUserId,authentication.storeUserEmail,authentication.unitId,authentication.unitName,checkout.regionId,public.postalCode'
|
|
457
457
|
)
|
|
458
458
|
|
|
459
459
|
const headers: HeadersInit = withCookie({
|
|
@@ -704,6 +704,23 @@ export const VtexCommerce = (
|
|
|
704
704
|
{}
|
|
705
705
|
)
|
|
706
706
|
},
|
|
707
|
+
getUserRoles: ({
|
|
708
|
+
userId,
|
|
709
|
+
}: { userId: string }): Promise<{
|
|
710
|
+
Email: string
|
|
711
|
+
Roles: Array<{ Id: number; Name: string }>
|
|
712
|
+
}> => {
|
|
713
|
+
const headers: HeadersInit = withAutCookie(forwardedHost, account)
|
|
714
|
+
|
|
715
|
+
return fetchAPI(
|
|
716
|
+
`${base}/api/license-manager/storefront/users/${userId}/roles`,
|
|
717
|
+
{
|
|
718
|
+
method: 'GET',
|
|
719
|
+
headers,
|
|
720
|
+
},
|
|
721
|
+
{}
|
|
722
|
+
)
|
|
723
|
+
},
|
|
707
724
|
},
|
|
708
725
|
masterData: {
|
|
709
726
|
getContractById: ({
|
|
@@ -571,18 +571,36 @@ export const Query = {
|
|
|
571
571
|
// only b2b users
|
|
572
572
|
userDetails: async (_: unknown, __: unknown, ctx: GraphqlContext) => {
|
|
573
573
|
const {
|
|
574
|
+
account,
|
|
575
|
+
headers,
|
|
574
576
|
clients: { commerce },
|
|
575
577
|
} = ctx
|
|
576
578
|
|
|
577
|
-
const
|
|
579
|
+
const jwt = parseJwt(getAuthCookie(headers?.cookie ?? '', account))
|
|
580
|
+
const userId = jwt?.userId ?? ''
|
|
581
|
+
|
|
582
|
+
const [sessionData, shopperResult, lmRoles] = await Promise.all([
|
|
583
|
+
commerce.session('').catch(() => null),
|
|
584
|
+
userId
|
|
585
|
+
? commerce.masterData.getShopperById({ userId }).catch(() => null)
|
|
586
|
+
: Promise.resolve(null),
|
|
587
|
+
userId
|
|
588
|
+
? commerce.licenseManager.getUserRoles({ userId }).catch(() => null)
|
|
589
|
+
: Promise.resolve(null),
|
|
590
|
+
])
|
|
578
591
|
|
|
579
|
-
const shopper =
|
|
592
|
+
const shopper = shopperResult?.[0]
|
|
580
593
|
const authentication = sessionData?.namespaces.authentication ?? null
|
|
581
594
|
|
|
595
|
+
const fullName =
|
|
596
|
+
`${(shopper?.firstName ?? '').trim()} ${(shopper?.lastName ?? '').trim()}`.trim()
|
|
597
|
+
|
|
582
598
|
return {
|
|
583
|
-
|
|
584
|
-
|
|
585
|
-
|
|
599
|
+
username: authentication?.storeUserEmail?.value ?? '',
|
|
600
|
+
name: fullName,
|
|
601
|
+
email: authentication?.storeUserEmail?.value ?? '',
|
|
602
|
+
phone: shopper?.phone ?? '',
|
|
603
|
+
role: lmRoles?.Roles?.map((r) => r.Name) ?? [],
|
|
586
604
|
orgUnit: authentication?.unitName?.value ?? '',
|
|
587
605
|
}
|
|
588
606
|
},
|
|
@@ -517,6 +517,10 @@ type SellerInfo {
|
|
|
517
517
|
User details information.
|
|
518
518
|
"""
|
|
519
519
|
type StoreUserDetails {
|
|
520
|
+
"""
|
|
521
|
+
User's username (login). May differ from email when Alternative Login is enabled.
|
|
522
|
+
"""
|
|
523
|
+
username: String
|
|
520
524
|
"""
|
|
521
525
|
User's name.
|
|
522
526
|
"""
|
|
@@ -526,6 +530,10 @@ type StoreUserDetails {
|
|
|
526
530
|
"""
|
|
527
531
|
email: String
|
|
528
532
|
"""
|
|
533
|
+
User's phone number.
|
|
534
|
+
"""
|
|
535
|
+
phone: String
|
|
536
|
+
"""
|
|
529
537
|
User's role.
|
|
530
538
|
"""
|
|
531
539
|
role: [String]
|