@akinon/projectzero 1.97.0-snapshot-ZERO-3634-20250918135053 → 1.97.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/CHANGELOG.md +1 -1
- package/app-template/CHANGELOG.md +26 -0
- package/app-template/package.json +18 -18
- package/app-template/src/components/__tests__/link.test.tsx +2 -0
- package/app-template/src/components/input.tsx +7 -1
- package/app-template/src/components/pagination.tsx +1 -0
- package/app-template/src/views/account/contact-form.tsx +1 -1
- package/app-template/src/views/account/faq/faq-tabs.tsx +8 -2
- package/app-template/src/views/basket/basket-item.tsx +6 -1
- package/app-template/src/views/breadcrumb.tsx +2 -2
- package/app-template/src/views/category/category-info.tsx +1 -0
- package/app-template/src/views/category/filters/index.tsx +1 -1
- package/app-template/src/views/product/product-info.tsx +1 -0
- package/app-template/src/widgets/footer-menu.tsx +6 -2
- package/package.json +1 -1
package/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,31 @@
|
|
|
1
1
|
# projectzeronext
|
|
2
2
|
|
|
3
|
+
## 1.97.0
|
|
4
|
+
|
|
5
|
+
### Minor Changes
|
|
6
|
+
|
|
7
|
+
- 0014305: ZERO-3629 :edit warnings in build
|
|
8
|
+
|
|
9
|
+
### Patch Changes
|
|
10
|
+
|
|
11
|
+
- Updated dependencies [0014305]
|
|
12
|
+
- @akinon/next@1.97.0
|
|
13
|
+
- @akinon/pz-akifast@1.97.0
|
|
14
|
+
- @akinon/pz-b2b@1.97.0
|
|
15
|
+
- @akinon/pz-basket-gift-pack@1.97.0
|
|
16
|
+
- @akinon/pz-bkm@1.97.0
|
|
17
|
+
- @akinon/pz-checkout-gift-pack@1.97.0
|
|
18
|
+
- @akinon/pz-click-collect@1.97.0
|
|
19
|
+
- @akinon/pz-credit-payment@1.97.0
|
|
20
|
+
- @akinon/pz-gpay@1.97.0
|
|
21
|
+
- @akinon/pz-masterpass@1.97.0
|
|
22
|
+
- @akinon/pz-one-click-checkout@1.97.0
|
|
23
|
+
- @akinon/pz-otp@1.97.0
|
|
24
|
+
- @akinon/pz-pay-on-delivery@1.97.0
|
|
25
|
+
- @akinon/pz-saved-card@1.97.0
|
|
26
|
+
- @akinon/pz-tabby-extension@1.97.0
|
|
27
|
+
- @akinon/pz-tamara-extension@1.97.0
|
|
28
|
+
|
|
3
29
|
## 1.96.0
|
|
4
30
|
|
|
5
31
|
### Minor Changes
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "projectzeronext",
|
|
3
|
-
"version": "1.
|
|
3
|
+
"version": "1.97.0",
|
|
4
4
|
"private": true,
|
|
5
5
|
"license": "MIT",
|
|
6
6
|
"scripts": {
|
|
@@ -24,22 +24,22 @@
|
|
|
24
24
|
"test:middleware": "jest middleware-matcher.test.ts --bail"
|
|
25
25
|
},
|
|
26
26
|
"dependencies": {
|
|
27
|
-
"@akinon/next": "1.
|
|
28
|
-
"@akinon/pz-akifast": "1.
|
|
29
|
-
"@akinon/pz-b2b": "1.
|
|
30
|
-
"@akinon/pz-basket-gift-pack": "1.
|
|
31
|
-
"@akinon/pz-bkm": "1.
|
|
32
|
-
"@akinon/pz-checkout-gift-pack": "1.
|
|
33
|
-
"@akinon/pz-click-collect": "1.
|
|
34
|
-
"@akinon/pz-credit-payment": "1.
|
|
35
|
-
"@akinon/pz-gpay": "1.
|
|
36
|
-
"@akinon/pz-masterpass": "1.
|
|
37
|
-
"@akinon/pz-one-click-checkout": "1.
|
|
38
|
-
"@akinon/pz-otp": "1.
|
|
39
|
-
"@akinon/pz-pay-on-delivery": "1.
|
|
40
|
-
"@akinon/pz-saved-card": "1.
|
|
41
|
-
"@akinon/pz-tabby-extension": "1.
|
|
42
|
-
"@akinon/pz-tamara-extension": "1.
|
|
27
|
+
"@akinon/next": "1.97.0",
|
|
28
|
+
"@akinon/pz-akifast": "1.97.0",
|
|
29
|
+
"@akinon/pz-b2b": "1.97.0",
|
|
30
|
+
"@akinon/pz-basket-gift-pack": "1.97.0",
|
|
31
|
+
"@akinon/pz-bkm": "1.97.0",
|
|
32
|
+
"@akinon/pz-checkout-gift-pack": "1.97.0",
|
|
33
|
+
"@akinon/pz-click-collect": "1.97.0",
|
|
34
|
+
"@akinon/pz-credit-payment": "1.97.0",
|
|
35
|
+
"@akinon/pz-gpay": "1.97.0",
|
|
36
|
+
"@akinon/pz-masterpass": "1.97.0",
|
|
37
|
+
"@akinon/pz-one-click-checkout": "1.97.0",
|
|
38
|
+
"@akinon/pz-otp": "1.97.0",
|
|
39
|
+
"@akinon/pz-pay-on-delivery": "1.97.0",
|
|
40
|
+
"@akinon/pz-saved-card": "1.97.0",
|
|
41
|
+
"@akinon/pz-tabby-extension": "1.97.0",
|
|
42
|
+
"@akinon/pz-tamara-extension": "1.97.0",
|
|
43
43
|
"@hookform/resolvers": "2.9.0",
|
|
44
44
|
"@next/third-parties": "14.1.0",
|
|
45
45
|
"@react-google-maps/api": "2.17.1",
|
|
@@ -62,7 +62,7 @@
|
|
|
62
62
|
"yup": "0.32.11"
|
|
63
63
|
},
|
|
64
64
|
"devDependencies": {
|
|
65
|
-
"@akinon/eslint-plugin-projectzero": "1.
|
|
65
|
+
"@akinon/eslint-plugin-projectzero": "1.97.0",
|
|
66
66
|
"@semantic-release/changelog": "6.0.2",
|
|
67
67
|
"@semantic-release/exec": "6.0.3",
|
|
68
68
|
"@semantic-release/git": "10.0.1",
|
|
@@ -48,7 +48,13 @@ export const Input = forwardRef<
|
|
|
48
48
|
props.className
|
|
49
49
|
);
|
|
50
50
|
|
|
51
|
-
const inputProps:
|
|
51
|
+
const inputProps: {
|
|
52
|
+
id?: string;
|
|
53
|
+
ref?: Ref<HTMLInputElement>;
|
|
54
|
+
className?: string;
|
|
55
|
+
onFocus?: () => void;
|
|
56
|
+
onBlur?: (event: FocusEvent<HTMLInputElement>) => void;
|
|
57
|
+
} = {
|
|
52
58
|
id,
|
|
53
59
|
ref,
|
|
54
60
|
className: inputClass,
|
|
@@ -111,7 +111,7 @@ const ContactForm = () => {
|
|
|
111
111
|
resolver: yupResolver(contactFormSchema(t))
|
|
112
112
|
});
|
|
113
113
|
|
|
114
|
-
const onSubmit: SubmitHandler<ContactFormType> = (data
|
|
114
|
+
const onSubmit: SubmitHandler<ContactFormType> = (data) => {
|
|
115
115
|
const formData = new FormData();
|
|
116
116
|
|
|
117
117
|
Object.keys(data ?? {}).forEach((key) => {
|
|
@@ -3,6 +3,7 @@
|
|
|
3
3
|
import { Accordion, LoaderSpinner, TabPanel, Tabs } from '@theme/components';
|
|
4
4
|
import React from 'react';
|
|
5
5
|
import { useGetWidgetQuery } from '@akinon/next/data/client/misc';
|
|
6
|
+
import { useLocalization } from '@akinon/next/hooks';
|
|
6
7
|
|
|
7
8
|
interface Props {
|
|
8
9
|
searchKey?: string;
|
|
@@ -11,6 +12,7 @@ interface Props {
|
|
|
11
12
|
export function FaqTabs(props: Props) {
|
|
12
13
|
const { searchKey } = props;
|
|
13
14
|
const { data, isLoading } = useGetWidgetQuery('faq');
|
|
15
|
+
const { locale } = useLocalization();
|
|
14
16
|
|
|
15
17
|
if (isLoading) {
|
|
16
18
|
return <LoaderSpinner className="mt-4" />;
|
|
@@ -29,8 +31,12 @@ export function FaqTabs(props: Props) {
|
|
|
29
31
|
{data?.attributes?.faq_contents
|
|
30
32
|
?.filter(
|
|
31
33
|
(faq) =>
|
|
32
|
-
faq.value.content
|
|
33
|
-
|
|
34
|
+
faq.value.content
|
|
35
|
+
.toLocaleLowerCase(locale)
|
|
36
|
+
.includes(searchKey) ||
|
|
37
|
+
faq.value.title
|
|
38
|
+
.toLocaleLowerCase(locale)
|
|
39
|
+
.includes(searchKey)
|
|
34
40
|
)
|
|
35
41
|
.map((faq, index) => {
|
|
36
42
|
if (faq.value.category == item.value.category_id) {
|
|
@@ -39,7 +39,12 @@ export const BasketItem = (props: Props) => {
|
|
|
39
39
|
quantity: number,
|
|
40
40
|
attributes: object = {}
|
|
41
41
|
) => {
|
|
42
|
-
const requestParams:
|
|
42
|
+
const requestParams: {
|
|
43
|
+
product: number;
|
|
44
|
+
quantity: number;
|
|
45
|
+
attributes: object;
|
|
46
|
+
namespace?: string;
|
|
47
|
+
} = {
|
|
43
48
|
product: productPk,
|
|
44
49
|
quantity,
|
|
45
50
|
attributes
|
|
@@ -12,7 +12,7 @@ export interface BreadcrumbProps {
|
|
|
12
12
|
}
|
|
13
13
|
|
|
14
14
|
export default function Breadcrumb(props: BreadcrumbProps) {
|
|
15
|
-
const { t } = useLocalization();
|
|
15
|
+
const { t, locale } = useLocalization();
|
|
16
16
|
const { breadcrumbList = [] } = props;
|
|
17
17
|
|
|
18
18
|
const list = [
|
|
@@ -28,7 +28,7 @@ export default function Breadcrumb(props: BreadcrumbProps) {
|
|
|
28
28
|
{list.map((item, index) => (
|
|
29
29
|
<Fragment key={index}>
|
|
30
30
|
<Link href={item.url}>
|
|
31
|
-
{capitalize(item.text.toLocaleLowerCase())}
|
|
31
|
+
{capitalize(item.text.toLocaleLowerCase(locale))}
|
|
32
32
|
</Link>
|
|
33
33
|
{index !== list.length - 1 && <Icon name="chevron-end" size={8} />}
|
|
34
34
|
</Fragment>
|
|
@@ -57,6 +57,7 @@ export default function ListPage(props: ListPageProps) {
|
|
|
57
57
|
newUrl.searchParams.delete('page');
|
|
58
58
|
router.push(newUrl.pathname + newUrl.search, undefined);
|
|
59
59
|
}
|
|
60
|
+
// eslint-disable-next-line react-hooks/exhaustive-deps
|
|
60
61
|
}, [searchParams, data.products, page]);
|
|
61
62
|
|
|
62
63
|
const { t } = useLocalization();
|
|
@@ -6,7 +6,7 @@ import { useLocalization } from '@akinon/next/hooks';
|
|
|
6
6
|
import { useAppDispatch, useAppSelector } from '@akinon/next/redux/hooks';
|
|
7
7
|
import { resetSelectedFacets } from '@theme/redux/reducers/category';
|
|
8
8
|
import CategoryActiveFilters from '@theme/views/category/category-active-filters';
|
|
9
|
-
import { useMemo,
|
|
9
|
+
import { useMemo, useTransition } from 'react';
|
|
10
10
|
import { FilterItem } from './filter-item';
|
|
11
11
|
|
|
12
12
|
interface Props {
|
|
@@ -2,6 +2,7 @@ import 'server-only';
|
|
|
2
2
|
|
|
3
3
|
import { Link, Accordion } from '@theme/components';
|
|
4
4
|
import { getWidgetData } from '@akinon/next/data/server';
|
|
5
|
+
import { ServerVariables } from '@akinon/next/utils/server-variables';
|
|
5
6
|
|
|
6
7
|
type SideItem = {
|
|
7
8
|
value: string;
|
|
@@ -47,6 +48,7 @@ type FooterMenuType = {
|
|
|
47
48
|
|
|
48
49
|
export default async function FooterMenu() {
|
|
49
50
|
const data = await getWidgetData<FooterMenuType>({ slug: 'footer-menu' });
|
|
51
|
+
const { locale } = ServerVariables;
|
|
50
52
|
|
|
51
53
|
return (
|
|
52
54
|
<div className="flex-1">
|
|
@@ -72,7 +74,7 @@ export default async function FooterMenu() {
|
|
|
72
74
|
: '_self'
|
|
73
75
|
}
|
|
74
76
|
data-testid={`footer-categories-${item?.value?.name
|
|
75
|
-
?.toLocaleLowerCase()
|
|
77
|
+
?.toLocaleLowerCase(locale)
|
|
76
78
|
.split(' ')
|
|
77
79
|
.join('')}`}
|
|
78
80
|
>
|
|
@@ -96,7 +98,9 @@ export default async function FooterMenu() {
|
|
|
96
98
|
? '_blank'
|
|
97
99
|
: '_self'
|
|
98
100
|
}
|
|
99
|
-
data-testid={`footer-categories-${item?.value?.name?.toLocaleLowerCase(
|
|
101
|
+
data-testid={`footer-categories-${item?.value?.name?.toLocaleLowerCase(
|
|
102
|
+
locale
|
|
103
|
+
)}`}
|
|
100
104
|
>
|
|
101
105
|
{item?.value?.name}
|
|
102
106
|
</Link>
|