@riosst100/pwa-marketplace 1.2.6 → 1.2.7

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 (129) hide show
  1. package/.github/workflows/dependabot.yml +28 -28
  2. package/package.json +18 -18
  3. package/src/Utilities/graphQL.js +76 -76
  4. package/src/componentOverrideMapping.js +17 -16
  5. package/src/components/BecomeSeller/becomeSeller.js +335 -335
  6. package/src/components/BecomeSeller/becomeSeller.module.css +46 -46
  7. package/src/components/BecomeSellerLink/becomeSellerLink.js +52 -52
  8. package/src/components/BecomeSellerLink/becomeSellerLink.module.css +12 -12
  9. package/src/components/BecomeSellerPage/becomeSellerPage.js +45 -45
  10. package/src/components/BecomeSellerPage/becomeSellerPage.module.css +21 -21
  11. package/src/components/Filter/index.js +53 -53
  12. package/src/components/Header/becomeSellerLink.js +28 -28
  13. package/src/components/Header/becomeSellerLink.module.css +12 -12
  14. package/src/components/Header/websiteSwitcher.js +109 -109
  15. package/src/components/Pagination/index.js +49 -40
  16. package/src/components/PhoneTextInput/phoneTextInput.module.css +21 -21
  17. package/src/components/ProductItem/index.js +50 -50
  18. package/src/components/Search/index.js +16 -16
  19. package/src/components/Seller/index.js +1 -1
  20. package/src/components/Seller/seller.js +249 -42
  21. package/src/components/SellerAccountPage/sellerAccountPage.js +110 -110
  22. package/src/components/SellerAccountPage/sellerAccountPage.module.css +55 -55
  23. package/src/components/SellerCountry/sellerCountry.gql.js +11 -11
  24. package/src/components/SellerInformation/index.js +1 -1
  25. package/src/components/SellerInformation/sellerInformation.js +90 -84
  26. package/src/components/SellerLocation/index.js +1 -1
  27. package/src/components/SellerLocation/sellerLocation.js +19 -18
  28. package/src/components/SellerLocation/sellerLocationItem.js +27 -25
  29. package/src/components/SellerPage/sellerPage.js +9 -9
  30. package/src/components/SellerProducts/sellerProducts.js +47 -218
  31. package/src/components/SellerReview/index.js +1 -1
  32. package/src/components/SellerReview/sellerReview.js +143 -143
  33. package/src/components/SellerReviewItem/sellerReviewItem.js +60 -60
  34. package/src/components/SellerVerification/sellerVerification.js +198 -198
  35. package/src/components/SellerVerification/sellerVerification.module.css +47 -47
  36. package/src/components/SellerVerificationPage/sellerVerificationPage.js +43 -43
  37. package/src/components/SellerVerificationPage/sellerVerificationPage.module.css +21 -21
  38. package/src/components/SortBy/index.js +24 -16
  39. package/src/components/WebsiteSwitcher/websiteSwitcher.js +109 -109
  40. package/src/components/commons/Slider/index.js +13 -13
  41. package/src/components/commons/Tabs/index.js +64 -62
  42. package/src/index.js +6 -6
  43. package/src/intercept.js +113 -113
  44. package/src/moduleOverrideWebpackPlugin.js +70 -70
  45. package/src/overwrites/peregrine/lib/store/actions/user/asyncActions.js +96 -96
  46. package/src/overwrites/peregrine/lib/talons/AccountMenu/useAccountMenuItems.js +74 -74
  47. package/src/overwrites/peregrine/lib/talons/Adapter/useAdapter.js +208 -208
  48. package/src/overwrites/peregrine/lib/talons/Header/storeSwitcher.gql.js +45 -45
  49. package/src/overwrites/peregrine/lib/talons/Header/useStoreSwitcher.js +204 -204
  50. package/src/overwrites/peregrine/lib/talons/Region/useRegion.js +102 -102
  51. package/src/overwrites/peregrine/lib/talons/SignIn/signIn.gql.js +56 -56
  52. package/src/overwrites/peregrine/lib/talons/SignIn/useSignIn.js +226 -226
  53. package/src/overwrites/peregrine/lib/util/deriveErrorMessage.js +34 -34
  54. package/src/overwrites/pwa-buildpack/lib/queries/getAvailableStoresConfigData.graphql +11 -11
  55. package/src/overwrites/venia-ui/lib/components/Adapter/adapter.js +112 -112
  56. package/src/overwrites/venia-ui/lib/components/Header/header.js +130 -118
  57. package/src/overwrites/venia-ui/lib/components/Header/storeSwitcher.js +105 -105
  58. package/src/overwrites/venia-ui/lib/components/Header/switcherItem.js +47 -47
  59. package/src/overwrites/venia-ui/lib/components/MegaMenu/__tests__/MegaMenu.spec.js +91 -91
  60. package/src/overwrites/venia-ui/lib/components/MegaMenu/__tests__/MegaMenuItem.spec.js +123 -123
  61. package/src/overwrites/venia-ui/lib/components/MegaMenu/__tests__/Submenu.spec.js +61 -61
  62. package/src/overwrites/venia-ui/lib/components/MegaMenu/__tests__/SubmenuColumn.spec.js +50 -50
  63. package/src/overwrites/venia-ui/lib/components/MegaMenu/__tests__/__snapshots__/MegaMenu.spec.js.snap +114 -114
  64. package/src/overwrites/venia-ui/lib/components/MegaMenu/__tests__/__snapshots__/MegaMenuItem.spec.js.snap +71 -71
  65. package/src/overwrites/venia-ui/lib/components/MegaMenu/__tests__/__snapshots__/Submenu.spec.js.snap +59 -59
  66. package/src/overwrites/venia-ui/lib/components/MegaMenu/__tests__/__snapshots__/SubmenuColumn.spec.js.snap +34 -34
  67. package/src/overwrites/venia-ui/lib/components/MegaMenu/index.js +1 -1
  68. package/src/overwrites/venia-ui/lib/components/MegaMenu/megaMenu.js +90 -90
  69. package/src/overwrites/venia-ui/lib/components/MegaMenu/megaMenu.module.css +12 -12
  70. package/src/overwrites/venia-ui/lib/components/MegaMenu/megaMenuItem.js +156 -156
  71. package/src/overwrites/venia-ui/lib/components/MegaMenu/megaMenuItem.module.css +30 -30
  72. package/src/overwrites/venia-ui/lib/components/MegaMenu/submenu.js +89 -89
  73. package/src/overwrites/venia-ui/lib/components/MegaMenu/submenu.module.css +42 -42
  74. package/src/overwrites/venia-ui/lib/components/MegaMenu/submenuColumn.js +99 -99
  75. package/src/overwrites/venia-ui/lib/components/MegaMenu/submenuColumn.module.css +28 -28
  76. package/src/overwrites/venia-ui/lib/components/SearchBar/__stories__/searchBar.js +11 -11
  77. package/src/overwrites/venia-ui/lib/components/SearchBar/__tests__/__snapshots__/searchField.spec.js.snap +72 -72
  78. package/src/overwrites/venia-ui/lib/components/SearchBar/__tests__/__snapshots__/suggestedCategories.spec.js.snap +30 -30
  79. package/src/overwrites/venia-ui/lib/components/SearchBar/__tests__/__snapshots__/suggestedProduct.spec.js.snap +69 -69
  80. package/src/overwrites/venia-ui/lib/components/SearchBar/__tests__/__snapshots__/suggestedProducts.spec.js.snap +7 -7
  81. package/src/overwrites/venia-ui/lib/components/SearchBar/__tests__/__snapshots__/suggestions.spec.js.snap +12 -12
  82. package/src/overwrites/venia-ui/lib/components/SearchBar/__tests__/autocomplete.spec.js +52 -52
  83. package/src/overwrites/venia-ui/lib/components/SearchBar/__tests__/searchBar.spec.js +82 -82
  84. package/src/overwrites/venia-ui/lib/components/SearchBar/__tests__/searchField.spec.js +87 -87
  85. package/src/overwrites/venia-ui/lib/components/SearchBar/__tests__/suggestedCategories.spec.js +45 -45
  86. package/src/overwrites/venia-ui/lib/components/SearchBar/__tests__/suggestedProduct.spec.js +43 -43
  87. package/src/overwrites/venia-ui/lib/components/SearchBar/__tests__/suggestedProducts.spec.js +45 -45
  88. package/src/overwrites/venia-ui/lib/components/SearchBar/__tests__/suggestions.spec.js +110 -110
  89. package/src/overwrites/venia-ui/lib/components/SearchBar/autocomplete.js +172 -172
  90. package/src/overwrites/venia-ui/lib/components/SearchBar/autocomplete.module.css +62 -62
  91. package/src/overwrites/venia-ui/lib/components/SearchBar/index.js +1 -1
  92. package/src/overwrites/venia-ui/lib/components/SearchBar/searchBar.js +74 -74
  93. package/src/overwrites/venia-ui/lib/components/SearchBar/searchBar.module.css +49 -49
  94. package/src/overwrites/venia-ui/lib/components/SearchBar/searchField.js +40 -40
  95. package/src/overwrites/venia-ui/lib/components/SearchBar/suggestedCategories.js +48 -48
  96. package/src/overwrites/venia-ui/lib/components/SearchBar/suggestedCategories.module.css +13 -13
  97. package/src/overwrites/venia-ui/lib/components/SearchBar/suggestedCategory.js +49 -49
  98. package/src/overwrites/venia-ui/lib/components/SearchBar/suggestedProduct.js +97 -97
  99. package/src/overwrites/venia-ui/lib/components/SearchBar/suggestedProduct.module.css +24 -24
  100. package/src/overwrites/venia-ui/lib/components/SearchBar/suggestedProducts.js +43 -43
  101. package/src/overwrites/venia-ui/lib/components/SearchBar/suggestedProducts.module.css +13 -13
  102. package/src/overwrites/venia-ui/lib/components/SearchBar/suggestions.js +75 -75
  103. package/src/overwrites/venia-ui/lib/components/SearchBar/suggestions.module.css +6 -6
  104. package/src/overwrites/venia-ui/lib/components/StoreCodeRoute/storeCodeRoute.js +75 -75
  105. package/src/overwrites/venia-ui/lib/targets/venia-ui-intercept.js +70 -70
  106. package/src/queries/getAvailableWebsitesConfigData.graphql +14 -14
  107. package/src/queries/index.js +30 -30
  108. package/src/talons/BecomeSeller/becomeSeller.gql.js +45 -45
  109. package/src/talons/BecomeSeller/useBecomeSeller.js +145 -145
  110. package/src/talons/BecomeSellerLink/useBecomeSellerLink.js +11 -11
  111. package/src/talons/BecomeSellerPage/useBecomeSellerPage.js +76 -76
  112. package/src/talons/Header/useBecomeSellerLink.js +13 -13
  113. package/src/talons/Header/useWebsiteSwitcher.js +218 -218
  114. package/src/talons/Seller/seller.gql.js +139 -204
  115. package/src/talons/Seller/useSeller.js +66 -71
  116. package/src/talons/SellerAccountPage/useSellerAccountPage.js +174 -174
  117. package/src/talons/SellerCountry/useSellerCountry.js +25 -25
  118. package/src/talons/WebsiteByIp/getWebsiteByIp.gql.js +13 -13
  119. package/src/talons/WebsiteByIp/useWebsiteByIp.js +34 -34
  120. package/src/talons/WebsiteSwitcher/useWebsiteSwitcher.js +218 -218
  121. package/src/theme/vars.js +6 -6
  122. package/src/util/mapSeller.js +7 -7
  123. package/src/components/OperatingHours/index.js +0 -1
  124. package/src/components/OperatingHours/operatingHours.js +0 -32
  125. package/src/components/Seller/sellerAddressCard.js +0 -48
  126. package/src/components/SellerDetail/index.js +0 -1
  127. package/src/components/SellerDetail/sellerDetail.js +0 -158
  128. package/src/components/SellerPage/core.js +0 -10
  129. package/src/talons/SellerProducts/useSellerProducts.js +0 -129
@@ -1,158 +0,0 @@
1
- import React, { Fragment } from 'react';
2
- import { FormattedMessage } from 'react-intl';
3
- import { useSeller } from '@riosst100/pwa-marketplace/src/talons/Seller/useSeller';
4
- import ErrorView from '@magento/venia-ui/lib/components/ErrorView';
5
- import { StoreTitle, Meta } from '@magento/venia-ui/lib/components/Head';
6
- import mapSeller from '@riosst100/pwa-marketplace/src/util/mapSeller';
7
- import Slider from '@riosst100/pwa-marketplace/src/components/commons/Slider';
8
- import Tabs from '@riosst100/pwa-marketplace/src/components/commons/Tabs';
9
- import SellerProducts from '../SellerProducts';
10
- import SellerInformation from '../SellerInformation';
11
- import Reviews from '../SellerReview';
12
- import {
13
- Verify,
14
- Sms,
15
- Message,
16
- Heart,
17
- Share,
18
- BoxTick,
19
- Star1,
20
- } from 'iconsax-react';
21
- import Image from '@magento/venia-ui/lib/components/Image';
22
-
23
- const SellerDetail = props => {
24
- const talonProps = useSeller({
25
- mapSeller
26
- });
27
-
28
- const { error, loading, seller } = talonProps;
29
-
30
- if (loading && !seller)
31
- return '';
32
- // return <SellerShimmer />;
33
- if (error && !seller) return <ErrorView />;
34
- if (!seller) {
35
- return (
36
- <h1>
37
- <FormattedMessage
38
- id={'seller.notFound'}
39
- defaultMessage={
40
- 'Seller Not Found.'
41
- }
42
- />
43
- </h1>
44
- );
45
- }
46
-
47
- const dataTabs =
48
- [
49
- {
50
- id: 'product-tab',
51
- title: 'All Products',
52
- content: <SellerProducts data={seller.products} />
53
- },
54
- {
55
- id: 'store-information',
56
- title: 'Store Information',
57
- content: <SellerInformation seller={seller} />
58
- },
59
- {
60
- id: 'reviews',
61
- title: 'Reviews',
62
- content: <Reviews />
63
- }
64
- ];
65
-
66
- return (
67
- <Fragment>
68
- <StoreTitle>{seller.name}</StoreTitle>
69
- <Meta name="description" content={seller.description} />
70
- <div className='py-8'>
71
- <Slider seller={seller} rootClassname='mb-[30px]' />
72
- <div className='flex items-center justify-between mb-[30px] p-[20px] rounded-[6px] border border-solid border-[#e6e9ea] shadow-[0px_0px_5px_3px_#d9d9d933]'>
73
- <div className='inline-flex items-center gap-[15px] relative flex-[0_0_auto]'>
74
- {seller && seller.thumbnail && seller.thumbnail !== undefined ? <Image
75
- alt={seller.name}
76
- width='100'
77
- src={seller.thumbnail || ''}
78
- /> : ''}
79
- <div className='inline-flex flex-col h-[100px] items-start justify-between relative flex-[0_0_auto]'>
80
- <div className='inline-flex flex-col items-start gap-[6px] relative flex-[0_0_auto]'>
81
- <div className="items-center gap-[10px] inline-flex relative flex-[0_0_auto]">
82
- <div className="relative w-fit mt-[-1.00px] font-semibold text-[#1b1b1b] text-[20px] tracking-[0] leading-[24px] whitespace-nowrap">
83
- {seller ? seller.name : ''}
84
- </div>
85
- <div className="inline-flex items-center gap-[5px] relative flex-[0_0_auto]">
86
- <Verify variant='Bold' color='#4E31DB' size={20} />
87
- <div className="relative w-fit font-medium text-[#192221b3] text-[12px] tracking-[0] leading-[normal] whitespace-nowrap">
88
- Verified
89
- </div>
90
- </div>
91
- </div>
92
- <div class="relative w-fit font-normal text-[#999999] text-[12px] tracking-[0] leading-[14px] whitespace-nowrap">
93
- Jurong west
94
- </div>
95
- </div>
96
- <div className='inline-flex items-start gap-[15px] relative flex-[0_0_auto]'>
97
- <div class="flex items-center justify-center gap-[5px] px-[20px] py-[8px] relative bg-white rounded-[30px] border border-solid border-[#6243fa]">
98
- <div class="inline-flex items-center justify-center gap-[10px] relative flex-[0_0_auto]">
99
- <Sms color="#6243FA" size={14} variant="Outline" className='stroke-[#6243FA]' />
100
- <div class="relative w-fit mt-[-1.00px] font-medium text-[#6243fa] text-[14px] tracking-[0] leading-[20px] whitespace-nowrap">
101
- Message
102
- </div>
103
- </div>
104
- </div>
105
- <div class="flex items-center justify-center gap-[5px] px-[20px] py-[8px] relative bg-[#280135] rounded-[30px] border border-solid border-[#280135]">
106
- <div class="inline-flex items-center justify-center gap-[10px] relative flex-[0_0_auto]">
107
- <Message color='#FFFFFF' size={14} variant="Outline" className='stroke-[#FFFFFF]' />
108
- <div class="relative w-fit mt-[-1.00px] font-medium text-[#fff] text-[14px] tracking-[0] leading-[20px] whitespace-nowrap">
109
- Chat With Seller
110
- </div>
111
- </div>
112
- </div>
113
- <div class="inline-flex items-center justify-center gap-[5px] p-[11px] relative flex-[0_0_auto] bg-white rounded-[30px] overflow-hidden border border-solid border-[#6243fa]">
114
- <Heart color='#6243FA' size={14} variant="Outline" className='stroke-[#6243FA]' />
115
- </div>
116
- <div class="inline-flex items-center justify-center gap-[5px] p-[11px] relative flex-[0_0_auto] bg-white rounded-[30px] overflow-hidden border border-solid border-[#6243fa]">
117
- <Share color='#6243FA' size={14} variant="Outline" className='stroke-[#6243FA]' />
118
- </div>
119
- </div>
120
- </div>
121
- </div>
122
- <div class="inline-flex items-center gap-[20px] px-[10px] py-[30px] relative flex-[0_0_auto]">
123
- <div class="inline-flex flex-col items-center justify-center gap-[9px] p-[10px] relative flex-[0_0_auto]">
124
- <div class="inline-flex items-center gap-[6px] relative flex-[0_0_auto]">
125
- <BoxTick color="#B9AEC5" variant="Outline" size={18} className='stroke-[#B9AEC5] stroke-[.5px]' />
126
- <div class="[font-family:'Noto_Sans',Helvetica] font-semibold text-[#005947] text-[18px] relative w-fit tracking-[0] leading-[normal] whitespace-nowrap">
127
- {seller ? seller.sale : 0}
128
- </div>
129
- </div>
130
- <div class="relative w-fit [font-family:'Frederik-Regular',Helvetica] font-normal text-[#009a7b] text-[10px] tracking-[0] leading-[normal] whitespace-nowrap">
131
- Total Sales
132
- </div>
133
- </div>
134
- <img class="relative self-stretch w-px object-cover" alt="Line" src="https://c.animaapp.com/2pP7niVX/img/line-16.svg" />
135
- <div class="inline-flex flex-col items-center justify-center gap-[9px] p-[10px] relative flex-[0_0_auto]">
136
- <div class="inline-flex items-center gap-[5px] relative flex-[0_0_auto]">
137
- <Star1 color='#F7C317' size={18} className='fill-[#F7C317]' />
138
- <div class="relative self-stretch w-[25px] mt-[-1.00px] font-bold text-[#005947] text-[18px] tracking-[0] leading-[normal] whitespace-nowrap">
139
- 4.7
140
- </div>
141
- </div>
142
- <div class="relative w-fit [font-family:'Frederik-Regular',Helvetica] font-normal text-[#009a7b] text-[10px] tracking-[0] leading-[normal] whitespace-nowrap">
143
- Rating &amp; Reviews
144
- </div>
145
- </div>
146
- </div>
147
- </div>
148
- <Tabs
149
- data={dataTabs}
150
- tabContentWrapperClassName='!p-0'
151
- hasContent
152
- />
153
- </div>
154
- </Fragment>
155
- )
156
- }
157
-
158
- export default SellerDetail;
@@ -1,10 +0,0 @@
1
- import React from 'react';
2
- import Content from './sellerPage';
3
-
4
- const core = () => {
5
- return (
6
- <Content />
7
- )
8
- }
9
-
10
- export default core;
@@ -1,129 +0,0 @@
1
- import { useEffect } from 'react';
2
- import { useLazyQuery, useQuery } from '@apollo/client';
3
-
4
- import mergeOperations from '../../../util/shallowMerge';
5
- import { useEventingContext } from '../../../context/eventing';
6
-
7
- import DEFAULT_OPERATIONS from './categoryContent.gql';
8
-
9
- /**
10
- * Returns props necessary to render the categoryContent component.
11
- *
12
- * @param {object} props.data - The results of a getCategory GraphQL query.
13
- *
14
- * @returns {object} result
15
- * @returns {string} result.categoryDescription - This category's description.
16
- * @returns {string} result.categoryName - This category's name.
17
- * @returns {object} result.filters - The filters object.
18
- * @returns {object} result.items - The items in this category.
19
- * @returns {number} result.totalPagesFromData - The total amount of pages for the query.
20
- */
21
- export const useSellerProducts = props => {
22
- const { categoryId, data, pageSize = 6 } = props;
23
-
24
- const operations = mergeOperations(DEFAULT_OPERATIONS, props.operations);
25
-
26
- const {
27
- getSellerProductsQuery,
28
- getProductFiltersByCategoryQuery,
29
- getCategoryAvailableSortMethodsQuery
30
- } = operations;
31
-
32
- const placeholderItems = Array.from({ length: pageSize }).fill(null);
33
-
34
- const [getFilters, { data: filterData }] = useLazyQuery(
35
- getProductFiltersByCategoryQuery,
36
- {
37
- fetchPolicy: 'cache-and-network',
38
- nextFetchPolicy: 'cache-first'
39
- }
40
- );
41
-
42
- const [getSortMethods, { data: sortData }] = useLazyQuery(
43
- getCategoryAvailableSortMethodsQuery,
44
- {
45
- fetchPolicy: 'cache-and-network',
46
- nextFetchPolicy: 'cache-first'
47
- }
48
- );
49
-
50
- const { data: categoryData, loading: categoryLoading } = useQuery(
51
- getSellerProductsQuery,
52
- {
53
- fetchPolicy: 'cache-and-network',
54
- nextFetchPolicy: 'cache-first',
55
- skip: !categoryId,
56
- variables: {
57
- id: categoryId
58
- }
59
- }
60
- );
61
-
62
- const [, { dispatch }] = useEventingContext();
63
-
64
- useEffect(() => {
65
- if (categoryId) {
66
- getFilters({
67
- variables: {
68
- categoryIdFilter: {
69
- eq: categoryId
70
- }
71
- }
72
- });
73
- }
74
- }, [categoryId, getFilters]);
75
-
76
- useEffect(() => {
77
- if (categoryId) {
78
- getSortMethods({
79
- variables: {
80
- categoryIdFilter: {
81
- in: categoryId
82
- }
83
- }
84
- });
85
- }
86
- }, [categoryId, getSortMethods]);
87
-
88
- const filters = filterData ? filterData.products.aggregations : null;
89
- const items = data ? data.products.items : placeholderItems;
90
- const totalPagesFromData = data
91
- ? data.products.page_info.total_pages
92
- : null;
93
- const totalCount = data ? data.products.total_count : null;
94
- const categoryName =
95
- categoryData && categoryData.categories.items.length
96
- ? categoryData.categories.items[0].name
97
- : null;
98
- const categoryDescription =
99
- categoryData && categoryData.categories.items.length
100
- ? categoryData.categories.items[0].description
101
- : null;
102
- const availableSortMethods = sortData
103
- ? sortData.products.sort_fields.options
104
- : null;
105
-
106
- useEffect(() => {
107
- if (!categoryLoading && categoryData.categories.items.length > 0) {
108
- dispatch({
109
- type: 'CATEGORY_PAGE_VIEW',
110
- payload: {
111
- id: categoryData.categories.items[0].uid,
112
- name: categoryData.categories.items[0].name,
113
- url_key: categoryData.categories.items[0].url_key,
114
- url_path: categoryData.categories.items[0].url_path
115
- }
116
- });
117
- }
118
- }, [categoryData, dispatch, categoryLoading]);
119
-
120
- return {
121
- availableSortMethods,
122
- categoryName,
123
- categoryDescription,
124
- filters,
125
- items,
126
- totalCount,
127
- totalPagesFromData
128
- };
129
- };