@akinon/next 1.114.0-rc.21 → 1.114.0-snapshot-ZERO-3890-20251208193442
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 +3 -11
- package/components/plugin-module.tsx +19 -5
- package/data/urls.ts +1 -5
- package/package.json +2 -2
- package/plugins.d.ts +0 -10
- package/plugins.js +3 -2
- package/types/index.ts +0 -6
- package/utils/mobile-3d-iframe.ts +2 -8
- package/utils/redirection-iframe.ts +2 -8
package/CHANGELOG.md
CHANGED
|
@@ -1,19 +1,11 @@
|
|
|
1
1
|
# @akinon/next
|
|
2
2
|
|
|
3
|
-
## 1.114.0-
|
|
4
|
-
|
|
5
|
-
## 1.114.0-rc.20
|
|
3
|
+
## 1.114.0-snapshot-ZERO-3890-20251208193442
|
|
6
4
|
|
|
7
5
|
### Minor Changes
|
|
8
6
|
|
|
9
|
-
-
|
|
10
|
-
-
|
|
11
|
-
- 143be2b: ZERO-3457: Crop styles are customizable and logic improved for rendering similar products modal
|
|
12
|
-
- 9f8cd3bc: ZERO-3449: AI Search Active Filters & Crop Style changes have been implemented
|
|
13
|
-
- d99a6a7: ZERO-3457_1: Fixed the settings prop and made sure everything is customizable.
|
|
14
|
-
- 7056203: ZERO-3875: removed shared_tags through stripTags function for unused keys
|
|
15
|
-
- 4de5303c: ZERO-2504: add cookie filter to api client request
|
|
16
|
-
- 95b139d: ZERO-3795: Remove duplicate entry for SavedCard in PluginComponents map
|
|
7
|
+
- b59bed4: ZERO-3878: Reintegrated similar products and removed localStorage checks and implemented props based showing of buttons
|
|
8
|
+
- cbcfdf4: ZERO-3859: Haso payment gateway implmeneted
|
|
17
9
|
|
|
18
10
|
## 1.113.0
|
|
19
11
|
|
|
@@ -24,7 +24,9 @@ enum Plugin {
|
|
|
24
24
|
FlowPayment = 'pz-flow-payment',
|
|
25
25
|
VirtualTryOn = 'pz-virtual-try-on',
|
|
26
26
|
Hepsipay = 'pz-hepsipay',
|
|
27
|
-
MasterpassRest = 'pz-masterpass-rest'
|
|
27
|
+
MasterpassRest = 'pz-masterpass-rest',
|
|
28
|
+
SimilarProducts = 'pz-similar-products',
|
|
29
|
+
Haso = 'pz-haso'
|
|
28
30
|
}
|
|
29
31
|
|
|
30
32
|
export enum Component {
|
|
@@ -55,7 +57,15 @@ export enum Component {
|
|
|
55
57
|
IyzicoSavedCard = 'IyzicoSavedCardOption',
|
|
56
58
|
Hepsipay = 'Hepsipay',
|
|
57
59
|
FlowPayment = 'FlowPayment',
|
|
58
|
-
MasterpassRest = 'MasterpassRestOption'
|
|
60
|
+
MasterpassRest = 'MasterpassRestOption',
|
|
61
|
+
SimilarProductsModal = 'SimilarProductsModal',
|
|
62
|
+
SimilarProductsFilterSidebar = 'SimilarProductsFilterSidebar',
|
|
63
|
+
SimilarProductsResultsGrid = 'SimilarProductsResultsGrid',
|
|
64
|
+
SimilarProductsPlugin = 'SimilarProductsPlugin',
|
|
65
|
+
ProductImageSearchFeature = 'ProductImageSearchFeature',
|
|
66
|
+
ImageSearchButton = 'ImageSearchButton',
|
|
67
|
+
HeaderImageSearchFeature = 'HeaderImageSearchFeature',
|
|
68
|
+
HasoPaymentGateway = 'HasoPaymentGateway'
|
|
59
69
|
}
|
|
60
70
|
|
|
61
71
|
const PluginComponents = new Map([
|
|
@@ -101,6 +111,7 @@ const PluginComponents = new Map([
|
|
|
101
111
|
]
|
|
102
112
|
],
|
|
103
113
|
[Plugin.SavedCard, [Component.SavedCard, Component.IyzicoSavedCard]],
|
|
114
|
+
[Plugin.SavedCard, [Component.SavedCard]],
|
|
104
115
|
[Plugin.FlowPayment, [Component.FlowPayment]],
|
|
105
116
|
[
|
|
106
117
|
Plugin.VirtualTryOn,
|
|
@@ -108,7 +119,8 @@ const PluginComponents = new Map([
|
|
|
108
119
|
],
|
|
109
120
|
[Plugin.Hepsipay, [Component.Hepsipay]],
|
|
110
121
|
[Plugin.Hepsipay, [Component.Hepsipay]],
|
|
111
|
-
[Plugin.MasterpassRest, [Component.MasterpassRest]]
|
|
122
|
+
[Plugin.MasterpassRest, [Component.MasterpassRest]],
|
|
123
|
+
[Plugin.Haso, [Component.HasoPaymentGateway]]
|
|
112
124
|
]);
|
|
113
125
|
|
|
114
126
|
const getPlugin = (component: Component) => {
|
|
@@ -173,8 +185,6 @@ export default function PluginModule({
|
|
|
173
185
|
promise = import(`${'@akinon/pz-multi-basket'}`);
|
|
174
186
|
} else if (plugin === Plugin.SavedCard) {
|
|
175
187
|
promise = import(`${'@akinon/pz-saved-card'}`);
|
|
176
|
-
} else if (plugin === Plugin.SimilarProducts) {
|
|
177
|
-
promise = import(`${'@akinon/pz-similar-products'}`);
|
|
178
188
|
} else if (plugin === Plugin.Hepsipay) {
|
|
179
189
|
promise = import(`${'@akinon/pz-hepsipay'}`);
|
|
180
190
|
} else if (plugin === Plugin.FlowPayment) {
|
|
@@ -183,6 +193,10 @@ export default function PluginModule({
|
|
|
183
193
|
promise = import(`${'@akinon/pz-virtual-try-on'}`);
|
|
184
194
|
} else if (plugin === Plugin.MasterpassRest) {
|
|
185
195
|
promise = import(`${'@akinon/pz-masterpass-rest'}`);
|
|
196
|
+
} else if (plugin === Plugin.SimilarProducts) {
|
|
197
|
+
promise = import(`${'@akinon/pz-similar-products'}`);
|
|
198
|
+
} else if (plugin === Plugin.Haso) {
|
|
199
|
+
promise = import(`${'@akinon/pz-haso'}`);
|
|
186
200
|
}
|
|
187
201
|
} catch (error) {
|
|
188
202
|
logger.error(error);
|
package/data/urls.ts
CHANGED
|
@@ -183,11 +183,7 @@ export const product = {
|
|
|
183
183
|
breadcrumbUrl: (menuitemmodel: string) =>
|
|
184
184
|
`/menus/generate_breadcrumb/?item=${menuitemmodel}&generator_name=menu_item`,
|
|
185
185
|
bundleProduct: (productPk: string, queryString: string) =>
|
|
186
|
-
`/bundle-product/${productPk}/?${queryString}
|
|
187
|
-
similarProducts: (params?: string) =>
|
|
188
|
-
`/similar-products${params ? `?${params}` : ''}`,
|
|
189
|
-
similarProductsList: (params?: string) =>
|
|
190
|
-
`/similar-product-list${params ? `?${params}` : ''}`
|
|
186
|
+
`/bundle-product/${productPk}/?${queryString}`
|
|
191
187
|
};
|
|
192
188
|
|
|
193
189
|
export const wishlist = {
|
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@akinon/next",
|
|
3
3
|
"description": "Core package for Project Zero Next",
|
|
4
|
-
"version": "1.114.0-
|
|
4
|
+
"version": "1.114.0-snapshot-ZERO-3890-20251208193442",
|
|
5
5
|
"private": false,
|
|
6
6
|
"license": "MIT",
|
|
7
7
|
"bin": {
|
|
@@ -35,7 +35,7 @@
|
|
|
35
35
|
"set-cookie-parser": "2.6.0"
|
|
36
36
|
},
|
|
37
37
|
"devDependencies": {
|
|
38
|
-
"@akinon/eslint-plugin-projectzero": "1.114.0-
|
|
38
|
+
"@akinon/eslint-plugin-projectzero": "1.114.0-snapshot-ZERO-3890-20251208193442",
|
|
39
39
|
"@babel/core": "7.26.10",
|
|
40
40
|
"@babel/preset-env": "7.26.9",
|
|
41
41
|
"@babel/preset-typescript": "7.27.0",
|
package/plugins.d.ts
CHANGED
|
@@ -37,16 +37,6 @@ declare module '@akinon/pz-cybersource-uc/src/redux/middleware' {
|
|
|
37
37
|
export default middleware as any;
|
|
38
38
|
}
|
|
39
39
|
|
|
40
|
-
declare module '@akinon/pz-apple-pay' {}
|
|
41
|
-
|
|
42
|
-
declare module '@akinon/pz-similar-products' {
|
|
43
|
-
export const SimilarProductsModal: any;
|
|
44
|
-
export const SimilarProductsFilterSidebar: any;
|
|
45
|
-
export const SimilarProductsResultsGrid: any;
|
|
46
|
-
export const SimilarProductsPlugin: any;
|
|
47
|
-
export const SimilarProductsButtonPlugin: any;
|
|
48
|
-
}
|
|
49
|
-
|
|
50
40
|
declare module '@akinon/pz-cybersource-uc/src/redux/reducer' {
|
|
51
41
|
export default reducer as any;
|
|
52
42
|
}
|
package/plugins.js
CHANGED
|
@@ -16,10 +16,11 @@ module.exports = [
|
|
|
16
16
|
'pz-tabby-extension',
|
|
17
17
|
'pz-apple-pay',
|
|
18
18
|
'pz-tamara-extension',
|
|
19
|
-
'pz-similar-products',
|
|
20
19
|
'pz-cybersource-uc',
|
|
21
20
|
'pz-hepsipay',
|
|
22
21
|
'pz-flow-payment',
|
|
23
22
|
'pz-virtual-try-on',
|
|
24
|
-
'pz-masterpass-rest'
|
|
23
|
+
'pz-masterpass-rest',
|
|
24
|
+
'pz-similar-products',
|
|
25
|
+
'pz-haso'
|
|
25
26
|
];
|
package/types/index.ts
CHANGED
|
@@ -83,12 +83,6 @@ export interface Settings {
|
|
|
83
83
|
};
|
|
84
84
|
usePrettyUrlRoute?: boolean;
|
|
85
85
|
commerceUrl: string;
|
|
86
|
-
/**
|
|
87
|
-
* This option allows you to track Sentry events on the client side, in addition to server and edge environments.
|
|
88
|
-
*
|
|
89
|
-
* It overrides process.env.NEXT_PUBLIC_SENTRY_DSN and process.env.SENTRY_DSN.
|
|
90
|
-
*/
|
|
91
|
-
sentryDsn?: string;
|
|
92
86
|
redis: {
|
|
93
87
|
defaultExpirationTime: number;
|
|
94
88
|
};
|
|
@@ -1,14 +1,8 @@
|
|
|
1
1
|
const iframeURLChange = (iframe, callback) => {
|
|
2
2
|
iframe.addEventListener('load', () => {
|
|
3
3
|
setTimeout(() => {
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
const iframeLocation = iframe.contentWindow.location;
|
|
7
|
-
|
|
8
|
-
callback(iframeLocation);
|
|
9
|
-
}
|
|
10
|
-
} catch (error) {
|
|
11
|
-
// Expected: browser blocks cross-origin iframe access for security
|
|
4
|
+
if (iframe?.contentWindow?.location) {
|
|
5
|
+
callback(iframe.contentWindow.location);
|
|
12
6
|
}
|
|
13
7
|
}, 0);
|
|
14
8
|
});
|
|
@@ -1,14 +1,8 @@
|
|
|
1
1
|
const iframeURLChange = (iframe, callback) => {
|
|
2
2
|
iframe.addEventListener('load', () => {
|
|
3
3
|
setTimeout(() => {
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
const iframeLocation = iframe.contentWindow.location;
|
|
7
|
-
|
|
8
|
-
callback(iframeLocation);
|
|
9
|
-
}
|
|
10
|
-
} catch (error) {
|
|
11
|
-
// Expected: browser blocks cross-origin iframe access for security
|
|
4
|
+
if (iframe?.contentWindow?.location) {
|
|
5
|
+
callback(iframe.contentWindow.location);
|
|
12
6
|
}
|
|
13
7
|
}, 0);
|
|
14
8
|
});
|