@faststore/core 3.64.1 → 3.65.1
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/.next/BUILD_ID +1 -1
- package/.next/build-manifest.json +49 -49
- package/.next/cache/.tsbuildinfo +1 -1
- package/.next/cache/config.json +3 -3
- package/.next/cache/webpack/client-production/0.pack +0 -0
- package/.next/cache/webpack/client-production/index.pack +0 -0
- package/.next/cache/webpack/server-production/0.pack +0 -0
- package/.next/cache/webpack/server-production/index.pack +0 -0
- package/.next/prerender-manifest.js +1 -1
- package/.next/prerender-manifest.json +1 -1
- package/.next/react-loadable-manifest.json +3 -2
- package/.next/routes-manifest.json +1 -1
- package/.next/server/chunks/2778.js +1 -1
- package/.next/server/chunks/4365.js +1 -0
- package/.next/server/chunks/5244.js +1 -0
- package/.next/server/chunks/6011.js +2 -2
- package/.next/server/chunks/6886.js +1 -1
- package/.next/server/chunks/7692.js +1 -1
- package/.next/server/chunks/{7819.js → 8130.js} +1 -6
- package/.next/server/chunks/83.js +1 -1
- package/.next/server/chunks/{1650.js → 8404.js} +1 -6
- package/.next/server/chunks/948.js +2 -2
- package/.next/server/chunks/9563.js +2 -2
- package/.next/server/functions-config-manifest.json +1 -1
- package/.next/server/middleware-build-manifest.js +1 -1
- package/.next/server/middleware-react-loadable-manifest.js +1 -1
- package/.next/server/pages/404.js.nft.json +1 -1
- package/.next/server/pages/500.js.nft.json +1 -1
- package/.next/server/pages/[...slug].js +1 -1
- package/.next/server/pages/[...slug].js.nft.json +1 -1
- package/.next/server/pages/[slug]/p.js +1 -1
- package/.next/server/pages/[slug]/p.js.nft.json +1 -1
- package/.next/server/pages/_app.js.nft.json +1 -1
- package/.next/server/pages/_document.js.nft.json +1 -1
- package/.next/server/pages/_error.js.nft.json +1 -1
- package/.next/server/pages/account/403.js +1 -1
- package/.next/server/pages/account/403.js.nft.json +1 -1
- package/.next/server/pages/account/404.js +1 -1
- package/.next/server/pages/account/404.js.nft.json +1 -1
- package/.next/server/pages/account/[...unknown].js.nft.json +1 -1
- package/.next/server/pages/account/orders/[id].js +1 -1
- package/.next/server/pages/account/orders/[id].js.nft.json +1 -1
- package/.next/server/pages/account/orders.js +1 -1
- package/.next/server/pages/account/orders.js.nft.json +1 -1
- package/.next/server/pages/account/profile.js +1 -1
- package/.next/server/pages/account/profile.js.nft.json +1 -1
- package/.next/server/pages/account/security.js +1 -1
- package/.next/server/pages/account/security.js.nft.json +1 -1
- package/.next/server/pages/account/user-details.js +1 -1
- package/.next/server/pages/account/user-details.js.nft.json +1 -1
- package/.next/server/pages/account.js +1 -1
- package/.next/server/pages/account.js.nft.json +1 -1
- package/.next/server/pages/api/graphql.js +2 -2
- package/.next/server/pages/api/graphql.js.nft.json +1 -1
- package/.next/server/pages/api/health/live.js.nft.json +1 -1
- package/.next/server/pages/api/health/ready.js.nft.json +1 -1
- package/.next/server/pages/api/preview.js.nft.json +1 -1
- package/.next/server/pages/checkout.js.nft.json +1 -1
- package/.next/server/pages/en-US/404.html +2 -2
- package/.next/server/pages/en-US/500.html +2 -2
- package/.next/server/pages/en-US/checkout.html +2 -2
- package/.next/server/pages/en-US/login.html +2 -2
- package/.next/server/pages/en-US/s.html +2 -2
- package/.next/server/pages/en-US.html +2 -2
- package/.next/server/pages/index.js.nft.json +1 -1
- package/.next/server/pages/login.js.nft.json +1 -1
- package/.next/server/pages/s.js.nft.json +1 -1
- package/.next/server/pages-manifest.json +1 -1
- package/.next/static/Ng-7veMyFA-ZQMeoLafNn/_buildManifest.js +1 -0
- package/.next/static/chunks/{4803.82e70544e5ad3f13.js → 4803.de5b14237d616808.js} +1 -1
- package/.next/static/chunks/4949.ea0775ca3029fb98.js +1 -0
- package/.next/static/chunks/{7692.a2ae6dca22038761.js → 7692.1597d1d292a09609.js} +1 -1
- package/.next/static/chunks/7861.3fe27a385fea2fb7.js +6 -0
- package/.next/static/chunks/9173-c1819846b9006c7a.js +1 -0
- package/.next/static/chunks/941.80a0abd58f11d696.js +1 -0
- package/.next/static/chunks/pages/{[...slug]-72047653203f9fd2.js → [...slug]-0db18c1c0920e8d2.js} +1 -1
- package/.next/static/chunks/pages/_app-1c533ab202b7acef.js +1 -0
- package/.next/static/chunks/pages/account/403-c791997011f970b6.js +1 -0
- package/.next/static/chunks/pages/account/404-74e64bb12e8f5a68.js +1 -0
- package/.next/static/chunks/pages/account/orders/[id]-b9feb0c860ff1cec.js +1 -0
- package/.next/static/chunks/pages/account/orders-1d8409a8b4b0e581.js +1 -0
- package/.next/static/chunks/pages/account/profile-5a919fa02b76a422.js +1 -0
- package/.next/static/chunks/pages/account/security-b5ab3d1ecbbea9d9.js +1 -0
- package/.next/static/chunks/pages/account/user-details-6f9fe72e02f5c5df.js +1 -0
- package/.next/static/chunks/webpack-a24b8ac1ca628dfe.js +1 -0
- package/.next/static/css/32b1696118552960.css +1 -0
- package/.next/static/css/{84d35f475d0dc928.css → 831a1f72fe4b2d80.css} +1 -1
- package/.next/static/css/ba1d8927d8745656.css +1 -0
- package/.next/static/css/e46393a76c5d93a9.css +1 -0
- package/.next/trace +131 -129
- package/.turbo/turbo-build.log +24 -21
- package/.turbo/turbo-test.log +6 -5
- package/@generated/gql.ts +14 -6
- package/@generated/graphql.ts +372 -5
- package/@generated/persisted-documents.json +4 -3
- package/@generated/schema.graphql +249 -0
- package/CHANGELOG.md +10 -0
- package/package.json +6 -4
- package/public/icons.svg +26 -0
- package/src/components/account/MyAccountDrawer/OrganizationDrawer/OrganizationDrawer.tsx +3 -1
- package/src/components/account/MyAccountDrawer/OrganizationDrawer/OrganizationDrawerBody.tsx +12 -2
- package/src/components/account/MyAccountDrawer/OrganizationSignInButton/OrganizationSignInButton.tsx +7 -1
- package/src/components/account/MyAccountLayout/MyAccountLayout.tsx +12 -2
- package/src/components/account/MyAccountMenu/styles.scss +1 -1
- package/src/components/account/MyAccountUserDetails/MyAccountUserDetails.tsx +61 -0
- package/src/components/account/MyAccountUserDetails/index.ts +1 -0
- package/src/components/account/MyAccountUserDetails/styles.module.scss +108 -0
- package/src/components/account/components/MyAccountTag/MyAccountTag.tsx +13 -0
- package/src/components/account/components/MyAccountTag/index.ts +1 -0
- package/src/components/account/components/MyAccountTag/styles.scss +23 -0
- package/src/components/account/orders/MyAccountOrderDetails/MyAccountBuyingPolicyAlert/MyAccountBuyingPolicyAlert.tsx +153 -0
- package/src/components/account/orders/MyAccountOrderDetails/MyAccountBuyingPolicyAlert/index.ts +1 -0
- package/src/components/account/orders/MyAccountOrderDetails/MyAccountBuyingPolicyAlert/styles.scss +72 -0
- package/src/components/account/orders/MyAccountOrderDetails/MyAccountOrderActionModal/MyAccountOrderActionModal.tsx +41 -88
- package/src/components/account/orders/MyAccountOrderDetails/MyAccountOrderActionModal/index.ts +0 -1
- package/src/components/account/orders/MyAccountOrderDetails/MyAccountOrderActionModal/styles.module.scss +29 -16
- package/src/components/account/orders/MyAccountOrderDetails/MyAccountOrderActions/MyAccountOrderActions.tsx +54 -107
- package/src/components/account/orders/MyAccountOrderDetails/MyAccountOrderActions/styles.scss +5 -28
- package/src/components/account/orders/MyAccountOrderDetails/MyAccountOrderDetails.tsx +16 -3
- package/src/components/account/orders/MyAccountOrderDetails/MyAccountPaymentCard/MyAccountPaymentCard.tsx +1 -3
- package/src/components/account/orders/MyAccountOrderDetails/section.module.scss +13 -2
- package/src/components/account/profile/i18n.ts +7 -0
- package/src/components/account/profile/index.ts +1 -0
- package/src/components/account/profile/profile.module.scss +89 -0
- package/src/components/account/profile/profile.tsx +63 -0
- package/src/components/account/profile/use-date-formatter.ts +25 -0
- package/src/components/account/security/SecurityDrawer.tsx +160 -0
- package/src/components/account/security/SecuritySection.tsx +45 -0
- package/src/components/account/security/index.ts +2 -0
- package/src/components/account/security/styles.module.scss +263 -0
- package/src/components/navigation/Navbar/Navbar.tsx +4 -1
- package/src/components/navigation/NavbarSlider/NavbarSlider.tsx +4 -1
- package/src/experimental/myAccountSeverSideProps.ts +9 -0
- package/src/pages/account/orders/[id].tsx +61 -5
- package/src/pages/account/orders/index.tsx +14 -2
- package/src/pages/account/profile.tsx +31 -5
- package/src/pages/account/security.tsx +15 -4
- package/src/pages/account/user-details.tsx +54 -17
- package/src/sdk/account/getIsRepresentative.ts +20 -0
- package/src/sdk/account/getMyAccountRoutes.ts +17 -13
- package/src/sdk/account/useOrderAuthorization.ts +79 -0
- package/src/utils/getCookie.ts +7 -0
- package/src/utils/userOrderStatus.ts +4 -0
- package/test/server/index.test.ts +3 -0
- package/.next/server/chunks/2570.js +0 -1
- package/.next/server/chunks/941.js +0 -1
- package/.next/static/chunks/4949.58cc42cd6109f59a.js +0 -6
- package/.next/static/chunks/9173-94386b70c1626a31.js +0 -1
- package/.next/static/chunks/941.6fb7ccae2268ce5d.js +0 -1
- package/.next/static/chunks/pages/_app-c3dce4c45c6c6b35.js +0 -1
- package/.next/static/chunks/pages/account/403-6f4addf9a9d54a1c.js +0 -1
- package/.next/static/chunks/pages/account/404-9e8ca6ee5f981dae.js +0 -1
- package/.next/static/chunks/pages/account/orders/[id]-0780c7252aa3283f.js +0 -1
- package/.next/static/chunks/pages/account/orders-df4fc9cd58141910.js +0 -1
- package/.next/static/chunks/pages/account/profile-adfe3518bdab5463.js +0 -1
- package/.next/static/chunks/pages/account/security-ea5c8811b3e6e415.js +0 -1
- package/.next/static/chunks/pages/account/user-details-9309d14f4e59f398.js +0 -1
- package/.next/static/chunks/webpack-c76f1cac87402029.js +0 -1
- package/.next/static/css/506442c818624bd2.css +0 -1
- package/.next/static/xxciKxTM3tLvpTyfanFWB/_buildManifest.js +0 -1
- package/src/components/account/orders/MyAccountOrderDetails/MyAccountOrderActionModal/useOrderActionModal.ts +0 -38
- package/src/sdk/account/useApproveOrder.ts +0 -53
- package/src/sdk/account/useRejectOrder.ts +0 -53
- /package/.next/static/{xxciKxTM3tLvpTyfanFWB → Ng-7veMyFA-ZQMeoLafNn}/_ssgManifest.js +0 -0
|
@@ -234,6 +234,8 @@ type Mutation {
|
|
|
234
234
|
subscribeToNewsletter(data: IPersonNewsletter!): PersonNewsletter
|
|
235
235
|
"""Cancels user order"""
|
|
236
236
|
cancelOrder(data: IUserOrderCancel!): UserOrderCancel
|
|
237
|
+
"""Process Order Authorization"""
|
|
238
|
+
processOrderAuthorization(data: IProcessOrderAuthorization!): ProcessOrderAuthorizationResponse
|
|
237
239
|
}
|
|
238
240
|
|
|
239
241
|
"""Newsletter information."""
|
|
@@ -314,6 +316,226 @@ input IStoreOrder {
|
|
|
314
316
|
shouldSplitItem: Boolean
|
|
315
317
|
}
|
|
316
318
|
|
|
319
|
+
"""Commercial Authorization response."""
|
|
320
|
+
type CommercialAuthorizationResponse {
|
|
321
|
+
"""Commercial Authorization ID."""
|
|
322
|
+
id: String!
|
|
323
|
+
"""Order ID associated with the commercial authorization."""
|
|
324
|
+
orderId: String!
|
|
325
|
+
"""Workflow instance ID."""
|
|
326
|
+
workflowInstanceId: String!
|
|
327
|
+
"""Current status of the commercial authorization."""
|
|
328
|
+
status: CommercialAuthorizationStatus!
|
|
329
|
+
"""List of units."""
|
|
330
|
+
units: [String!]!
|
|
331
|
+
"""Callback endpoint URL."""
|
|
332
|
+
callbackEndpoint: String!
|
|
333
|
+
"""Total order value desired by the seller."""
|
|
334
|
+
totalOrderValueDesiredBySeller: Float!
|
|
335
|
+
"""Marketplace payment value."""
|
|
336
|
+
marketPlacePaymentValue: Float!
|
|
337
|
+
"""Collection of items in the commercial authorization."""
|
|
338
|
+
itemCollection: [CommercialAuthorizationItem!]!
|
|
339
|
+
"""Additional information as key-value pairs."""
|
|
340
|
+
additionalInfo: JSONObject!
|
|
341
|
+
"""Dimension status information."""
|
|
342
|
+
dimensionStatus: [CommercialAuthorizationDimensionStatus!]!
|
|
343
|
+
"""Creation version."""
|
|
344
|
+
creationVersion: String!
|
|
345
|
+
"""Creation environment."""
|
|
346
|
+
creationEnvironment: String!
|
|
347
|
+
"""User profile ID."""
|
|
348
|
+
userProfileId: String!
|
|
349
|
+
}
|
|
350
|
+
|
|
351
|
+
"""Commercial Authorization status."""
|
|
352
|
+
enum CommercialAuthorizationStatus {
|
|
353
|
+
"""Authorization is pending."""
|
|
354
|
+
pending
|
|
355
|
+
"""Authorization has been accepted."""
|
|
356
|
+
accepted
|
|
357
|
+
"""Authorization has been denied."""
|
|
358
|
+
denied
|
|
359
|
+
}
|
|
360
|
+
|
|
361
|
+
"""Commercial Authorization item."""
|
|
362
|
+
type CommercialAuthorizationItem {
|
|
363
|
+
"""Item ID."""
|
|
364
|
+
id: String!
|
|
365
|
+
"""Item SKU."""
|
|
366
|
+
sku: String!
|
|
367
|
+
"""Item price."""
|
|
368
|
+
price: Float!
|
|
369
|
+
"""Total system discount applied."""
|
|
370
|
+
totalSystemDiscount: Float!
|
|
371
|
+
"""Total manual discount applied."""
|
|
372
|
+
totalManualDiscount: Float!
|
|
373
|
+
"""Item quantity."""
|
|
374
|
+
quantity: Int!
|
|
375
|
+
"""Additional information as key-value pairs."""
|
|
376
|
+
additionalInfo: JSONObject!
|
|
377
|
+
}
|
|
378
|
+
|
|
379
|
+
"""Commercial Authorization dimension status."""
|
|
380
|
+
type CommercialAuthorizationDimensionStatus {
|
|
381
|
+
"""Dimension status ID."""
|
|
382
|
+
id: String!
|
|
383
|
+
"""Dimension status name."""
|
|
384
|
+
name: String!
|
|
385
|
+
"""Unit ID, if applicable."""
|
|
386
|
+
unitId: String
|
|
387
|
+
"""Current status of the dimension."""
|
|
388
|
+
status: CommercialAuthorizationStatus!
|
|
389
|
+
"""Dimension score."""
|
|
390
|
+
score: Float!
|
|
391
|
+
"""Priority level."""
|
|
392
|
+
priority: Int!
|
|
393
|
+
"""Indicates if simulation should be performed."""
|
|
394
|
+
shouldSimulate: Boolean!
|
|
395
|
+
"""Collection of rules for this dimension."""
|
|
396
|
+
ruleCollection: [CommercialAuthorizationRule!]!
|
|
397
|
+
"""Creation date."""
|
|
398
|
+
creationDate: String!
|
|
399
|
+
"""Creation version."""
|
|
400
|
+
creationVersion: String!
|
|
401
|
+
"""Creation environment."""
|
|
402
|
+
creationEnvironment: String!
|
|
403
|
+
"""Indicates if all rules acceptance is required."""
|
|
404
|
+
requireAllRulesAcceptance: Boolean!
|
|
405
|
+
}
|
|
406
|
+
|
|
407
|
+
"""Commercial Authorization rule."""
|
|
408
|
+
type CommercialAuthorizationRule {
|
|
409
|
+
"""Rule ID."""
|
|
410
|
+
id: String!
|
|
411
|
+
"""Rule name."""
|
|
412
|
+
name: String!
|
|
413
|
+
"""Current status of the rule."""
|
|
414
|
+
status: CommercialAuthorizationStatus!
|
|
415
|
+
"""DO ID, if applicable."""
|
|
416
|
+
doId: String
|
|
417
|
+
"""List of authorized email addresses."""
|
|
418
|
+
authorizedEmails: [String!]!
|
|
419
|
+
"""Rule priority."""
|
|
420
|
+
priority: Int!
|
|
421
|
+
"""Rule trigger configuration."""
|
|
422
|
+
trigger: CommercialAuthorizationRuleTrigger!
|
|
423
|
+
"""Timeout value."""
|
|
424
|
+
timeout: Int!
|
|
425
|
+
"""Indicates if notification is enabled."""
|
|
426
|
+
notification: Boolean!
|
|
427
|
+
"""Score interval configuration."""
|
|
428
|
+
scoreInterval: CommercialAuthorizationRuleScoreInterval!
|
|
429
|
+
"""Authorization data, if available."""
|
|
430
|
+
authorizationData: CommercialAuthorizationRuleAuthorizationData
|
|
431
|
+
"""
|
|
432
|
+
Indicates that the user is listed as one of the possible approvers,
|
|
433
|
+
but does not necessarily mean that he or she is the next in the chain to approve.
|
|
434
|
+
"""
|
|
435
|
+
isUserAuthorized: Boolean!
|
|
436
|
+
"""
|
|
437
|
+
Indicates that the user is next in the approval chain.
|
|
438
|
+
This means that they must take an approval or rejection action.
|
|
439
|
+
"""
|
|
440
|
+
isUserNextAuthorizer: Boolean!
|
|
441
|
+
}
|
|
442
|
+
|
|
443
|
+
"""Commercial Authorization rule trigger."""
|
|
444
|
+
type CommercialAuthorizationRuleTrigger {
|
|
445
|
+
"""Trigger condition."""
|
|
446
|
+
condition: CommercialAuthorizationRuleTriggerCondition!
|
|
447
|
+
"""Trigger effect."""
|
|
448
|
+
effect: CommercialAuthorizationRuleTriggerEffect!
|
|
449
|
+
}
|
|
450
|
+
|
|
451
|
+
"""Commercial Authorization rule trigger condition."""
|
|
452
|
+
type CommercialAuthorizationRuleTriggerCondition {
|
|
453
|
+
"""Condition type."""
|
|
454
|
+
conditionType: Int!
|
|
455
|
+
"""Condition description."""
|
|
456
|
+
description: String
|
|
457
|
+
"""Less than value."""
|
|
458
|
+
lessThan: Float
|
|
459
|
+
"""Greater than value."""
|
|
460
|
+
greatherThan: Float
|
|
461
|
+
"""Condition expression."""
|
|
462
|
+
expression: String
|
|
463
|
+
}
|
|
464
|
+
|
|
465
|
+
"""Commercial Authorization rule trigger effect."""
|
|
466
|
+
type CommercialAuthorizationRuleTriggerEffect {
|
|
467
|
+
"""Effect description."""
|
|
468
|
+
description: String
|
|
469
|
+
"""Effect type."""
|
|
470
|
+
effectType: Int!
|
|
471
|
+
"""Function path."""
|
|
472
|
+
funcPath: String
|
|
473
|
+
}
|
|
474
|
+
|
|
475
|
+
"""Commercial Authorization rule score interval."""
|
|
476
|
+
type CommercialAuthorizationRuleScoreInterval {
|
|
477
|
+
"""Accept score threshold."""
|
|
478
|
+
accept: Float!
|
|
479
|
+
"""Deny score threshold."""
|
|
480
|
+
deny: Float!
|
|
481
|
+
}
|
|
482
|
+
|
|
483
|
+
"""Commercial Authorization rule authorization data."""
|
|
484
|
+
type CommercialAuthorizationRuleAuthorizationData {
|
|
485
|
+
"""Indicates if all approvals are required."""
|
|
486
|
+
requireAllApprovals: Boolean!
|
|
487
|
+
"""List of authorizers."""
|
|
488
|
+
authorizers: [CommercialAuthorizationRuleAuthorizer!]!
|
|
489
|
+
}
|
|
490
|
+
|
|
491
|
+
"""Commercial Authorization rule authorizer."""
|
|
492
|
+
type CommercialAuthorizationRuleAuthorizer {
|
|
493
|
+
"""Authorizer ID."""
|
|
494
|
+
id: String!
|
|
495
|
+
"""Authorizer email."""
|
|
496
|
+
email: String
|
|
497
|
+
"""Authorizer type."""
|
|
498
|
+
type: String!
|
|
499
|
+
"""Authorization date."""
|
|
500
|
+
authorizationDate: String
|
|
501
|
+
}
|
|
502
|
+
|
|
503
|
+
"""Input to get commercial authorizations by order ID."""
|
|
504
|
+
input ICommercialAuthorizationByOrderId {
|
|
505
|
+
"""Order ID to get commercial authorizations for."""
|
|
506
|
+
orderId: String!
|
|
507
|
+
}
|
|
508
|
+
|
|
509
|
+
"""Input to process order authorization (approve or reject)."""
|
|
510
|
+
input IProcessOrderAuthorization {
|
|
511
|
+
"""Order authorization ID."""
|
|
512
|
+
orderAuthorizationId: String!
|
|
513
|
+
"""Rule ID associated with the authorization."""
|
|
514
|
+
ruleId: String!
|
|
515
|
+
"""Dimension ID associated with the authorization."""
|
|
516
|
+
dimensionId: String!
|
|
517
|
+
"""Whether the authorization is approved (true) or rejected (false)."""
|
|
518
|
+
approved: Boolean!
|
|
519
|
+
}
|
|
520
|
+
|
|
521
|
+
"""Process Order Authorization response."""
|
|
522
|
+
type ProcessOrderAuthorizationResponse {
|
|
523
|
+
"""Indicates if authorization is pending for other authorizers."""
|
|
524
|
+
isPendingForOtherAuthorizer: Boolean!
|
|
525
|
+
"""The updated rule for authorization, if any."""
|
|
526
|
+
ruleForAuthorization: ProcessOrderAuthorizationRule
|
|
527
|
+
}
|
|
528
|
+
|
|
529
|
+
"""Extended Commercial Authorization rule with additional process context."""
|
|
530
|
+
type ProcessOrderAuthorizationRule {
|
|
531
|
+
"""Order authorization ID."""
|
|
532
|
+
orderAuthorizationId: String!
|
|
533
|
+
"""Dimension ID."""
|
|
534
|
+
dimensionId: String!
|
|
535
|
+
"""Base rule information."""
|
|
536
|
+
rule: CommercialAuthorizationRule!
|
|
537
|
+
}
|
|
538
|
+
|
|
317
539
|
"""Organization."""
|
|
318
540
|
type StoreOrganization {
|
|
319
541
|
"""Organization ID."""
|
|
@@ -708,6 +930,10 @@ type Query {
|
|
|
708
930
|
"""Client email used to filter of the list of orders."""
|
|
709
931
|
clientEmail: String
|
|
710
932
|
): UserOrderListMinimalResult @cacheControl(scope: "public", sMaxAge: 120, staleWhileRevalidate: 3600)
|
|
933
|
+
"""Returns information about the current user details."""
|
|
934
|
+
userDetails: StoreUserDetails! @cacheControl(scope: "public", sMaxAge: 120, staleWhileRevalidate: 3600)
|
|
935
|
+
"""Returns the account profile information for the current authenticated user (b2b or b2c user)."""
|
|
936
|
+
accountProfile: StoreAccountProfile! @cacheControl(scope: "public", sMaxAge: 120, staleWhileRevalidate: 3600)
|
|
711
937
|
"""Returns the account name of the current user or the B2B contract name if applicable."""
|
|
712
938
|
accountName: String @cacheControl(scope: "public", sMaxAge: 120, staleWhileRevalidate: 3600)
|
|
713
939
|
"""Returns information about the user validation."""
|
|
@@ -746,6 +972,25 @@ type SellerInfo {
|
|
|
746
972
|
logo: String
|
|
747
973
|
}
|
|
748
974
|
|
|
975
|
+
"""User details information."""
|
|
976
|
+
type StoreUserDetails {
|
|
977
|
+
"""User's name."""
|
|
978
|
+
name: String
|
|
979
|
+
"""User's email."""
|
|
980
|
+
email: String
|
|
981
|
+
"""User's role."""
|
|
982
|
+
role: [String]
|
|
983
|
+
"""User's organizational unit."""
|
|
984
|
+
orgUnit: String
|
|
985
|
+
}
|
|
986
|
+
|
|
987
|
+
"""Account profile information."""
|
|
988
|
+
type StoreAccountProfile {
|
|
989
|
+
name: String
|
|
990
|
+
email: String
|
|
991
|
+
id: String
|
|
992
|
+
}
|
|
993
|
+
|
|
749
994
|
"""Information of a given review rating."""
|
|
750
995
|
type StoreReviewRating {
|
|
751
996
|
"""Rating value."""
|
|
@@ -1280,11 +1525,14 @@ type UserOrder {
|
|
|
1280
1525
|
totals: [UserOrderTotals]
|
|
1281
1526
|
deliveryOptionsData: UserOrderDeliveryOptionsData
|
|
1282
1527
|
customFields: [UserOrderCustomFieldsGrouped]
|
|
1528
|
+
canProcessOrderAuthorization: Boolean
|
|
1529
|
+
ruleForAuthorization: ProcessOrderAuthorizationRule
|
|
1283
1530
|
}
|
|
1284
1531
|
|
|
1285
1532
|
type UserOrderResult {
|
|
1286
1533
|
orderId: String
|
|
1287
1534
|
status: String
|
|
1535
|
+
canProcessOrderAuthorization: Boolean
|
|
1288
1536
|
statusDescription: String
|
|
1289
1537
|
allowCancellation: Boolean
|
|
1290
1538
|
storePreferencesData: UserOrderStorePreferencesData
|
|
@@ -1296,6 +1544,7 @@ type UserOrderResult {
|
|
|
1296
1544
|
totals: [UserOrderTotals]
|
|
1297
1545
|
shippingData: UserOrderShippingData
|
|
1298
1546
|
items: [UserOrderItems]
|
|
1547
|
+
ruleForAuthorization: ProcessOrderAuthorizationRule
|
|
1299
1548
|
}
|
|
1300
1549
|
|
|
1301
1550
|
type UserOrderListResult {
|
package/CHANGELOG.md
CHANGED
|
@@ -3,6 +3,16 @@
|
|
|
3
3
|
All notable changes to this project will be documented in this file.
|
|
4
4
|
See [Conventional Commits](https://conventionalcommits.org) for commit guidelines.
|
|
5
5
|
|
|
6
|
+
## [3.65.1](https://github.com/vtex/faststore/compare/v3.65.0...v3.65.1) (2025-07-17)
|
|
7
|
+
|
|
8
|
+
**Note:** Version bump only for package @faststore/core
|
|
9
|
+
|
|
10
|
+
# [3.65.0](https://github.com/vtex/faststore/compare/v3.64.1...v3.65.0) (2025-07-16)
|
|
11
|
+
|
|
12
|
+
### Features
|
|
13
|
+
|
|
14
|
+
- my account release 3 ([#2883](https://github.com/vtex/faststore/issues/2883)) ([be2c32a](https://github.com/vtex/faststore/commit/be2c32ae5cb0d892e34a96c2d73b06d31f8af137))
|
|
15
|
+
|
|
6
16
|
## [3.64.1](https://github.com/vtex/faststore/compare/v3.64.0...v3.64.1) (2025-07-16)
|
|
7
17
|
|
|
8
18
|
### Bug Fixes
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@faststore/core",
|
|
3
|
-
"version": "3.
|
|
3
|
+
"version": "3.65.1",
|
|
4
4
|
"license": "MIT",
|
|
5
5
|
"repository": "vtex/faststore",
|
|
6
6
|
"browserslist": "supports es6-module and not dead",
|
|
@@ -44,11 +44,11 @@
|
|
|
44
44
|
"@envelop/graphql-jit": "^8.0.3",
|
|
45
45
|
"@envelop/parser-cache": "^6.0.2",
|
|
46
46
|
"@envelop/validation-cache": "^6.0.2",
|
|
47
|
-
"@faststore/api": "^3.
|
|
47
|
+
"@faststore/api": "^3.65.1",
|
|
48
48
|
"@faststore/graphql-utils": "^3.56.1",
|
|
49
49
|
"@faststore/lighthouse": "^3.56.1",
|
|
50
50
|
"@faststore/sdk": "^3.63.0",
|
|
51
|
-
"@faststore/ui": "^3.
|
|
51
|
+
"@faststore/ui": "^3.65.0",
|
|
52
52
|
"@graphql-codegen/cli": "5.0.2",
|
|
53
53
|
"@graphql-codegen/client-preset": "4.2.6",
|
|
54
54
|
"@graphql-codegen/typescript": "4.0.7",
|
|
@@ -64,6 +64,7 @@
|
|
|
64
64
|
"@vtex/client-cp": "0.3.0",
|
|
65
65
|
"@vtex/prettier-config": "1.0.0",
|
|
66
66
|
"autoprefixer": "^10.4.0",
|
|
67
|
+
"cookie": "^0.7.0",
|
|
67
68
|
"css-loader": "^6.7.1",
|
|
68
69
|
"deepmerge": "^4.3.1",
|
|
69
70
|
"draftjs-to-html": "^0.9.1",
|
|
@@ -91,6 +92,7 @@
|
|
|
91
92
|
"@jest/globals": "29.7.0",
|
|
92
93
|
"@lhci/cli": "^0.9.0",
|
|
93
94
|
"@testing-library/cypress": "^10.0.1",
|
|
95
|
+
"@types/cookie": "^0.6.0",
|
|
94
96
|
"@types/cypress": "^1.1.3",
|
|
95
97
|
"@types/fs-extra": "^9.0.13",
|
|
96
98
|
"@types/jest": "29.1.0",
|
|
@@ -105,5 +107,5 @@
|
|
|
105
107
|
"ts-jest": "29.1.1",
|
|
106
108
|
"typescript": "5.3.2"
|
|
107
109
|
},
|
|
108
|
-
"gitHead": "
|
|
110
|
+
"gitHead": "20034f929a5207dcf808fb24a8455c809e8cc00f"
|
|
109
111
|
}
|
package/public/icons.svg
CHANGED
|
@@ -231,4 +231,30 @@
|
|
|
231
231
|
d="M9.99992 9.99992C9.08325 9.99992 8.29853 9.67353 7.64575 9.02075C6.99297 8.36797 6.66659 7.58325 6.66659 6.66659C6.66659 5.74992 6.99297 4.9652 7.64575 4.31242C8.29853 3.65964 9.08325 3.33325 9.99992 3.33325C10.9166 3.33325 11.7013 3.65964 12.3541 4.31242C13.0069 4.9652 13.3333 5.74992 13.3333 6.66659C13.3333 7.58325 13.0069 8.36797 12.3541 9.02075C11.7013 9.67353 10.9166 9.99992 9.99992 9.99992ZM3.33325 16.6666V14.3333C3.33325 13.861 3.45478 13.427 3.69784 13.0312C3.94089 12.6353 4.26381 12.3333 4.66659 12.1249C5.5277 11.6944 6.4027 11.3714 7.29159 11.1562C8.18047 10.9409 9.08325 10.8333 9.99992 10.8333C10.9166 10.8333 11.8194 10.9409 12.7083 11.1562C13.5971 11.3714 14.4721 11.6944 15.3333 12.1249C15.736 12.3333 16.0589 12.6353 16.302 13.0312C16.5451 13.427 16.6666 13.861 16.6666 14.3333V16.6666H3.33325ZM4.99992 14.9999H14.9999V14.3333C14.9999 14.1805 14.9617 14.0416 14.8853 13.9166C14.8089 13.7916 14.7083 13.6944 14.5833 13.6249C13.8333 13.2499 13.0763 12.9687 12.3124 12.7812C11.5485 12.5937 10.7777 12.4999 9.99992 12.4999C9.22214 12.4999 8.45131 12.5937 7.68742 12.7812C6.92353 12.9687 6.16659 13.2499 5.41659 13.6249C5.29159 13.6944 5.19089 13.7916 5.1145 13.9166C5.03811 14.0416 4.99992 14.1805 4.99992 14.3333V14.9999ZM9.99992 8.33325C10.4583 8.33325 10.8506 8.17006 11.177 7.84367C11.5034 7.51728 11.6666 7.12492 11.6666 6.66659C11.6666 6.20825 11.5034 5.81589 11.177 5.4895C10.8506 5.16311 10.4583 4.99992 9.99992 4.99992C9.54159 4.99992 9.14922 5.16311 8.82284 5.4895C8.49645 5.81589 8.33325 6.20825 8.33325 6.66659C8.33325 7.12492 8.49645 7.51728 8.82284 7.84367C9.14922 8.17006 9.54159 8.33325 9.99992 8.33325Z"
|
|
232
232
|
fill="black" />
|
|
233
233
|
</symbol>
|
|
234
|
+
|
|
235
|
+
<symbol
|
|
236
|
+
id="EyeSlash"
|
|
237
|
+
xmlns="http://www.w3.org/2000/svg"
|
|
238
|
+
width="24"
|
|
239
|
+
height="24"
|
|
240
|
+
fill="#000000"
|
|
241
|
+
viewBox="0 0 256 256"
|
|
242
|
+
>
|
|
243
|
+
<path d="M53.92,34.62A8,8,0,1,0,42.08,45.38L61.32,66.55C25,88.84,9.38,123.2,8.69,124.76a8,8,0,0,0,0,6.5c.35.79,8.82,19.57,27.65,38.4C61.43,194.74,93.12,208,128,208a127.11,127.11,0,0,0,52.07-10.83l22,24.21a8,8,0,1,0,11.84-10.76Zm47.33,75.84,41.67,45.85a32,32,0,0,1-41.67-45.85ZM128,192c-30.78,0-57.67-11.19-79.93-33.25A133.16,133.16,0,0,1,25,128c4.69-8.79,19.66-33.39,47.35-49.38l18,19.75a48,48,0,0,0,63.66,70l14.73,16.2A112,112,0,0,1,128,192Zm6-95.43a8,8,0,0,1,3-15.72,48.16,48.16,0,0,1,38.77,42.64,8,8,0,0,1-7.22,8.71,6.39,6.39,0,0,1-.75,0,8,8,0,0,1-8-7.26A32.09,32.09,0,0,0,134,96.57Zm113.28,34.69c-.42.94-10.55,23.37-33.36,43.8a8,8,0,1,1-10.67-11.92A132.77,132.77,0,0,0,231.05,128a133.15,133.15,0,0,0-23.12-30.77C185.67,75.19,158.78,64,128,64a118.37,118.37,0,0,0-19.36,1.57A8,8,0,1,1,106,49.79,134,134,0,0,1,128,48c34.88,0,66.57,13.26,91.66,38.35,18.83,18.83,27.3,37.62,27.65,38.41A8,8,0,0,1,247.31,131.26Z"></path>
|
|
244
|
+
</symbol>
|
|
245
|
+
|
|
246
|
+
<symbol
|
|
247
|
+
id="Eye"
|
|
248
|
+
xmlns="http://www.w3.org/2000/svg"
|
|
249
|
+
width="24"
|
|
250
|
+
height="24"
|
|
251
|
+
fill="#000000"
|
|
252
|
+
viewBox="0 0 256 256"
|
|
253
|
+
>
|
|
254
|
+
<path d="M247.31,124.76c-.35-.79-8.82-19.58-27.65-38.41C194.57,61.26,162.88,48,128,48S61.43,61.26,36.34,86.35C17.51,105.18,9,124,8.69,124.76a8,8,0,0,0,0,6.5c.35.79,8.82,19.57,27.65,38.4C61.43,194.74,93.12,208,128,208s66.57-13.26,91.66-38.34c18.83-18.83,27.3-37.61,27.65-38.4A8,8,0,0,0,247.31,124.76ZM128,192c-30.78,0-57.67-11.19-79.93-33.25A133.47,133.47,0,0,1,25,128,133.33,133.33,0,0,1,48.07,97.25C70.33,75.19,97.22,64,128,64s57.67,11.19,79.93,33.25A133.46,133.46,0,0,1,231.05,128C223.84,141.46,192.43,192,128,192Zm0-112a48,48,0,1,0,48,48A48.05,48.05,0,0,0,128,80Zm0,80a32,32,0,1,1,32-32A32,32,0,0,1,128,160Z"></path>
|
|
255
|
+
</symbol>
|
|
256
|
+
|
|
257
|
+
<symbol id="CheckCircle" width="20" height="20" viewBox="0 0 20 20" fill="none" xmlns="http://www.w3.org/2000/svg">
|
|
258
|
+
<path d="M8.83464 13.8333L14.7096 7.95829L13.543 6.79163L8.83464 11.5L6.45964 9.12496L5.29297 10.2916L8.83464 13.8333ZM10.0013 18.3333C8.84852 18.3333 7.76519 18.1145 6.7513 17.677C5.73741 17.2395 4.85547 16.6458 4.10547 15.8958C3.35547 15.1458 2.76172 14.2638 2.32422 13.25C1.88672 12.2361 1.66797 11.1527 1.66797 9.99996C1.66797 8.84718 1.88672 7.76385 2.32422 6.74996C2.76172 5.73607 3.35547 4.85413 4.10547 4.10413C4.85547 3.35413 5.73741 2.76038 6.7513 2.32288C7.76519 1.88538 8.84852 1.66663 10.0013 1.66663C11.1541 1.66663 12.2374 1.88538 13.2513 2.32288C14.2652 2.76038 15.1471 3.35413 15.8971 4.10413C16.6471 4.85413 17.2409 5.73607 17.6784 6.74996C18.1159 7.76385 18.3346 8.84718 18.3346 9.99996C18.3346 11.1527 18.1159 12.2361 17.6784 13.25C17.2409 14.2638 16.6471 15.1458 15.8971 15.8958C15.1471 16.6458 14.2652 17.2395 13.2513 17.677C12.2374 18.1145 11.1541 18.3333 10.0013 18.3333ZM10.0013 16.6666C11.8624 16.6666 13.4388 16.0208 14.7305 14.7291C16.0221 13.4375 16.668 11.8611 16.668 9.99996C16.668 8.13885 16.0221 6.56246 14.7305 5.27079C13.4388 3.97913 11.8624 3.33329 10.0013 3.33329C8.14019 3.33329 6.5638 3.97913 5.27214 5.27079C3.98047 6.56246 3.33464 8.13885 3.33464 9.99996C3.33464 11.8611 3.98047 13.4375 5.27214 14.7291C6.5638 16.0208 8.14019 16.6666 10.0013 16.6666Z" fill="#015132"/>
|
|
259
|
+
</symbol>
|
|
234
260
|
</svg>
|
|
@@ -10,6 +10,7 @@ import storeConfig from '../../../../../discovery.config'
|
|
|
10
10
|
type OrganizationDrawerProps = {
|
|
11
11
|
isOpen: boolean
|
|
12
12
|
closeDrawer: () => void
|
|
13
|
+
isRepresentative: boolean
|
|
13
14
|
}
|
|
14
15
|
|
|
15
16
|
export const doLogout = () => {
|
|
@@ -22,6 +23,7 @@ export const doLogout = () => {
|
|
|
22
23
|
export const OrganizationDrawer = ({
|
|
23
24
|
isOpen,
|
|
24
25
|
closeDrawer,
|
|
26
|
+
isRepresentative,
|
|
25
27
|
}: OrganizationDrawerProps) => {
|
|
26
28
|
const { fade, fadeOut } = useFadeEffect()
|
|
27
29
|
const { b2b } = useSession()
|
|
@@ -46,7 +48,7 @@ export const OrganizationDrawer = ({
|
|
|
46
48
|
contractName={contractName}
|
|
47
49
|
contractUrl="/buyer-portal"
|
|
48
50
|
/>
|
|
49
|
-
<OrganizationDrawerBody />
|
|
51
|
+
<OrganizationDrawerBody isRepresentative={isRepresentative} />
|
|
50
52
|
<footer data-fs-organization-drawer-footer-wrapper>
|
|
51
53
|
<ProfileSummary
|
|
52
54
|
showManageLink
|
package/src/components/account/MyAccountDrawer/OrganizationDrawer/OrganizationDrawerBody.tsx
CHANGED
|
@@ -1,12 +1,22 @@
|
|
|
1
1
|
import { Link } from '@faststore/ui'
|
|
2
2
|
|
|
3
3
|
import menuRoutes from 'src/customizations/src/myAccount/navigation'
|
|
4
|
+
import { USER_DETAILS_ROUTE } from 'src/sdk/account/getMyAccountRoutes'
|
|
4
5
|
|
|
5
|
-
|
|
6
|
+
const ROUTES_ONLY_FOR_REPRESENTATIVE = [USER_DETAILS_ROUTE]
|
|
7
|
+
|
|
8
|
+
export const OrganizationDrawerBody = ({
|
|
9
|
+
isRepresentative,
|
|
10
|
+
}: { isRepresentative: boolean }) => {
|
|
11
|
+
const routes = isRepresentative
|
|
12
|
+
? menuRoutes
|
|
13
|
+
: menuRoutes.filter(
|
|
14
|
+
({ route }) => !ROUTES_ONLY_FOR_REPRESENTATIVE.includes(route)
|
|
15
|
+
)
|
|
6
16
|
return (
|
|
7
17
|
<div data-fs-organization-drawer-body>
|
|
8
18
|
<div data-fs-organization-drawer-body-contents>
|
|
9
|
-
{
|
|
19
|
+
{routes.map((route) => (
|
|
10
20
|
<Link
|
|
11
21
|
key={route.route}
|
|
12
22
|
data-fs-organization-drawer-body-link
|
package/src/components/account/MyAccountDrawer/OrganizationSignInButton/OrganizationSignInButton.tsx
CHANGED
|
@@ -5,8 +5,10 @@ import { OrganizationDrawer } from '../OrganizationDrawer/OrganizationDrawer'
|
|
|
5
5
|
|
|
6
6
|
export const OrganizationSignInButton = ({
|
|
7
7
|
icon: { alt, icon },
|
|
8
|
+
isRepresentative,
|
|
8
9
|
}: {
|
|
9
10
|
icon: { alt: string; icon: string }
|
|
11
|
+
isRepresentative?: boolean
|
|
10
12
|
}) => {
|
|
11
13
|
const [isOpen, setIsOpen] = useState(false)
|
|
12
14
|
|
|
@@ -43,7 +45,11 @@ export const OrganizationSignInButton = ({
|
|
|
43
45
|
</Button>
|
|
44
46
|
|
|
45
47
|
{isOpen && (
|
|
46
|
-
<OrganizationDrawer
|
|
48
|
+
<OrganizationDrawer
|
|
49
|
+
isOpen={isOpen}
|
|
50
|
+
closeDrawer={closeDrawer}
|
|
51
|
+
isRepresentative={isRepresentative}
|
|
52
|
+
/>
|
|
47
53
|
)}
|
|
48
54
|
</>
|
|
49
55
|
)
|
|
@@ -1,22 +1,32 @@
|
|
|
1
1
|
import type { PropsWithChildren } from 'react'
|
|
2
2
|
import menuRoutes from 'src/customizations/src/myAccount/navigation'
|
|
3
|
+
import { USER_DETAILS_ROUTE } from 'src/sdk/account/getMyAccountRoutes'
|
|
3
4
|
import MyAccountMenu from '../MyAccountMenu'
|
|
4
5
|
import styles from '../section.module.scss'
|
|
5
6
|
|
|
6
7
|
export type MyAccountLayoutProps = {
|
|
7
8
|
accountName: string
|
|
9
|
+
isRepresentative?: boolean
|
|
8
10
|
}
|
|
9
11
|
|
|
12
|
+
const ROUTES_ONLY_FOR_REPRESENTATIVE = [USER_DETAILS_ROUTE]
|
|
13
|
+
|
|
10
14
|
const MyAccountLayout = ({
|
|
11
15
|
children,
|
|
12
16
|
accountName,
|
|
17
|
+
isRepresentative = true,
|
|
13
18
|
}: PropsWithChildren<MyAccountLayoutProps>) => {
|
|
19
|
+
const routes = isRepresentative
|
|
20
|
+
? menuRoutes
|
|
21
|
+
: menuRoutes.filter(
|
|
22
|
+
({ route }) => !ROUTES_ONLY_FOR_REPRESENTATIVE.includes(route)
|
|
23
|
+
)
|
|
24
|
+
|
|
14
25
|
return (
|
|
15
26
|
<div className={styles.layout}>
|
|
16
|
-
<MyAccountMenu accountName={accountName} items={
|
|
27
|
+
<MyAccountMenu accountName={accountName} items={routes} />
|
|
17
28
|
<section>{children}</section>
|
|
18
29
|
</div>
|
|
19
30
|
)
|
|
20
31
|
}
|
|
21
|
-
|
|
22
32
|
export default MyAccountLayout
|
|
@@ -0,0 +1,61 @@
|
|
|
1
|
+
import Tag from '../components/MyAccountTag'
|
|
2
|
+
import styles from './styles.module.scss'
|
|
3
|
+
|
|
4
|
+
type MyAccountUserDetailsProps = {
|
|
5
|
+
userDetails: {
|
|
6
|
+
name: string
|
|
7
|
+
email: string
|
|
8
|
+
role: string[]
|
|
9
|
+
orgUnit: string
|
|
10
|
+
}
|
|
11
|
+
}
|
|
12
|
+
|
|
13
|
+
export default function MyAccountUserDetails({
|
|
14
|
+
userDetails: { name, email, role, orgUnit },
|
|
15
|
+
}: MyAccountUserDetailsProps) {
|
|
16
|
+
return (
|
|
17
|
+
<section className={styles.section}>
|
|
18
|
+
<h1 data-fs-user-details-title>User details</h1>
|
|
19
|
+
<div data-fs-user-details-container>
|
|
20
|
+
<table data-fs-user-details-table>
|
|
21
|
+
<tbody>
|
|
22
|
+
<tr data-fs-user-details-row>
|
|
23
|
+
<th data-fs-user-details-row-label>Name</th>
|
|
24
|
+
<td data-fs-user-details-row-value>{name}</td>
|
|
25
|
+
</tr>
|
|
26
|
+
<tr data-fs-user-details-divider-row>
|
|
27
|
+
<td data-fs-user-details-divider></td>
|
|
28
|
+
<td data-fs-user-details-divider></td>
|
|
29
|
+
</tr>
|
|
30
|
+
<tr data-fs-user-details-row>
|
|
31
|
+
<th data-fs-user-details-row-label>Email</th>
|
|
32
|
+
<td data-fs-user-details-row-value>{email}</td>
|
|
33
|
+
</tr>
|
|
34
|
+
<tr data-fs-user-details-divider-row>
|
|
35
|
+
<td data-fs-user-details-divider></td>
|
|
36
|
+
<td data-fs-user-details-divider></td>
|
|
37
|
+
</tr>
|
|
38
|
+
<tr data-fs-user-details-row>
|
|
39
|
+
<th data-fs-user-details-row-label>Role</th>
|
|
40
|
+
<td data-fs-user-details-row-tags>
|
|
41
|
+
{role.map((r) => (
|
|
42
|
+
<span key={r} data-fs-user-details-row-value>
|
|
43
|
+
<Tag>{r}</Tag>
|
|
44
|
+
</span>
|
|
45
|
+
))}
|
|
46
|
+
</td>
|
|
47
|
+
</tr>
|
|
48
|
+
<tr data-fs-user-details-divider-row>
|
|
49
|
+
<td data-fs-user-details-divider></td>
|
|
50
|
+
<td data-fs-user-details-divider></td>
|
|
51
|
+
</tr>
|
|
52
|
+
<tr data-fs-user-details-row>
|
|
53
|
+
<th data-fs-user-details-row-label>Organizational unit</th>
|
|
54
|
+
<td data-fs-user-details-row-value>{orgUnit}</td>
|
|
55
|
+
</tr>
|
|
56
|
+
</tbody>
|
|
57
|
+
</table>
|
|
58
|
+
</div>
|
|
59
|
+
</section>
|
|
60
|
+
)
|
|
61
|
+
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export { default } from './MyAccountUserDetails'
|