@akinon/next 1.14.0 → 1.15.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.
Files changed (127) hide show
  1. package/.editorconfig +7 -7
  2. package/.eslintrc.js +40 -40
  3. package/.gitattributes +15 -0
  4. package/.prettierrc +13 -13
  5. package/CHANGELOG.md +14 -0
  6. package/api/auth.ts +231 -231
  7. package/api/cache.ts +44 -44
  8. package/api/client.ts +174 -174
  9. package/api/logout.ts +42 -42
  10. package/bin/pz-check-dependencies.js +98 -98
  11. package/bin/pz-install-plugins.js +33 -33
  12. package/bin/pz-install-theme.js +58 -58
  13. package/bin/pz-postbuild.js +1 -1
  14. package/bin/pz-postdev.js +1 -1
  15. package/bin/pz-postinstall.js +6 -6
  16. package/bin/pz-poststart.js +1 -1
  17. package/bin/pz-prebuild.js +4 -4
  18. package/bin/pz-predev.js +4 -4
  19. package/bin/pz-prestart.js +1 -1
  20. package/bin/run-script.js +44 -44
  21. package/components/accordion.tsx +52 -52
  22. package/components/button.tsx +46 -46
  23. package/components/client-root.tsx +19 -19
  24. package/components/icon.tsx +18 -18
  25. package/components/image.tsx +133 -133
  26. package/components/index.ts +1 -0
  27. package/components/input.tsx +110 -110
  28. package/components/lazy-component.tsx +33 -33
  29. package/components/loader-spinner.tsx +23 -23
  30. package/components/mobile-app-toggler.tsx +26 -26
  31. package/components/modal.tsx +66 -0
  32. package/components/oauth-login.tsx +24 -24
  33. package/components/plugin-module.tsx +5 -0
  34. package/components/price.tsx +55 -55
  35. package/components/pz-providers.tsx +24 -24
  36. package/components/pz-root.tsx +21 -21
  37. package/components/radio.tsx +18 -18
  38. package/components/react-portal.tsx +45 -45
  39. package/components/redirect-three-d/content/index.tsx +74 -74
  40. package/components/redirect-three-d/index.tsx +17 -17
  41. package/components/selected-payment-option-view.tsx +1 -1
  42. package/components/trans.tsx +39 -39
  43. package/data/client/account.ts +208 -208
  44. package/data/client/api.ts +85 -85
  45. package/data/client/basket.ts +82 -82
  46. package/data/client/misc.ts +101 -101
  47. package/data/client/product.ts +89 -89
  48. package/data/client/user.ts +99 -99
  49. package/data/client/wishlist.ts +118 -118
  50. package/data/server/category.ts +132 -132
  51. package/data/server/flatpage.ts +21 -21
  52. package/data/server/form.ts +22 -22
  53. package/data/server/index.ts +10 -10
  54. package/data/server/landingpage.ts +24 -24
  55. package/data/server/list.ts +67 -67
  56. package/data/server/menu.ts +35 -35
  57. package/data/server/product.ts +86 -86
  58. package/data/server/seo.ts +48 -48
  59. package/data/server/special-page.ts +47 -47
  60. package/data/server/widget.ts +27 -27
  61. package/data/urls.ts +221 -221
  62. package/hocs/client/index.ts +1 -1
  63. package/hocs/client/with-segment-defaults.tsx +25 -25
  64. package/hocs/server/index.ts +1 -1
  65. package/hocs/server/with-segment-defaults.tsx +85 -85
  66. package/hooks/index.ts +10 -10
  67. package/hooks/use-captcha.tsx +76 -76
  68. package/hooks/use-common-product-attributes.ts +36 -36
  69. package/hooks/use-debounce.ts +20 -20
  70. package/hooks/use-localization.ts +78 -78
  71. package/hooks/use-media-query.ts +36 -36
  72. package/hooks/use-mobile-iframe-handler.ts +23 -23
  73. package/hooks/use-on-click-outside.tsx +28 -28
  74. package/hooks/use-payment-options.ts +3 -1
  75. package/hooks/use-router.ts +45 -45
  76. package/hooks/use-translation.ts +14 -14
  77. package/lib/cache.ts +215 -215
  78. package/localization/index.ts +5 -5
  79. package/localization/provider.tsx +58 -58
  80. package/middlewares/complete-gpay.ts +159 -0
  81. package/middlewares/currency.ts +100 -100
  82. package/middlewares/default.ts +259 -256
  83. package/middlewares/index.ts +31 -29
  84. package/middlewares/locale.ts +68 -68
  85. package/middlewares/oauth-login.ts +79 -79
  86. package/middlewares/pretty-url.ts +104 -104
  87. package/middlewares/redirection-payment.ts +160 -160
  88. package/middlewares/three-d-redirection.ts +159 -159
  89. package/middlewares/url-redirection.ts +65 -65
  90. package/package.json +2 -2
  91. package/plugins.js +1 -0
  92. package/redux/hooks.ts +7 -7
  93. package/redux/middlewares/index.ts +50 -50
  94. package/redux/reducers/checkout.ts +184 -184
  95. package/redux/reducers/config.ts +28 -28
  96. package/redux/reducers/header.ts +59 -59
  97. package/redux/reducers/root.ts +61 -61
  98. package/sentry/index.ts +27 -27
  99. package/tailwind/rtl.js +137 -137
  100. package/types/commerce/account.ts +64 -64
  101. package/types/commerce/address.ts +94 -94
  102. package/types/commerce/basket.ts +43 -43
  103. package/types/commerce/category.ts +114 -114
  104. package/types/commerce/checkout.ts +143 -143
  105. package/types/commerce/flatpage.ts +7 -7
  106. package/types/commerce/form.ts +66 -66
  107. package/types/commerce/index.ts +12 -12
  108. package/types/commerce/landingpage.ts +7 -7
  109. package/types/commerce/misc.ts +127 -127
  110. package/types/commerce/order.ts +119 -119
  111. package/types/commerce/product.ts +109 -109
  112. package/types/commerce/widget.ts +28 -28
  113. package/types/gtm.ts +16 -16
  114. package/types/index.ts +274 -274
  115. package/types/metadata.ts +7 -7
  116. package/types/next-auth.d.ts +24 -24
  117. package/utils/app-fetch.ts +69 -69
  118. package/utils/deep-merge.js +24 -24
  119. package/utils/image-loader.ts +31 -31
  120. package/utils/index.ts +150 -150
  121. package/utils/localization.ts +29 -29
  122. package/utils/log.ts +138 -138
  123. package/utils/menu-generator.ts +27 -27
  124. package/utils/mobile-3d-iframe.ts +77 -77
  125. package/utils/server-translation.ts +57 -57
  126. package/utils/server-variables.ts +9 -9
  127. package/with-pz-config.js +94 -94
@@ -1,127 +1,127 @@
1
- import { District } from './address';
2
- export interface Config {
3
- user_phone_regex: string;
4
- user_phone_format: string;
5
- country: {
6
- pk: number;
7
- name: string;
8
- code: string;
9
- };
10
- }
11
-
12
- export interface RetailStore {
13
- address: string;
14
- name: string;
15
- pk: number;
16
- district: District;
17
- township: {
18
- name: string;
19
- pk: number;
20
- city: {
21
- country: number;
22
- name: string;
23
- pk: number;
24
- };
25
- };
26
- }
27
-
28
- export type Pagination = {
29
- current_page: number;
30
- num_pages: number;
31
- page_size: number;
32
- total_count: number;
33
- };
34
-
35
- export type EmailSubscriptionType = {
36
- email: string;
37
- subscribe_contract: boolean;
38
- };
39
-
40
- export type ImageType = {
41
- data_type?: 'image';
42
- url?: string;
43
- value?: string;
44
- };
45
-
46
- export interface Error {
47
- status: number;
48
- data: {
49
- error_code: string;
50
- non_field_errors: string;
51
- };
52
- }
53
-
54
- export type Discount = {
55
- description: string;
56
- discount: string;
57
- };
58
-
59
- export type MenuItemExtraContentImageType = {
60
- kwargs: {
61
- value: {
62
- image: {
63
- url: string;
64
- value: string;
65
- };
66
- };
67
- };
68
- value: {
69
- image: string;
70
- link_text: string;
71
- title: string;
72
- url: string;
73
- };
74
- };
75
-
76
- export type MenuItemExtraContentStoryType = {
77
- value: {
78
- url: string;
79
- alt: string;
80
- image: string;
81
- };
82
- kwargs: {
83
- data_type: 'nested';
84
- value: {
85
- image: ImageType;
86
- };
87
- };
88
- };
89
-
90
- export type MenuItemExtraContentType = {
91
- attributes: {
92
- category_id: number;
93
- images: Array<MenuItemExtraContentImageType>;
94
- [key: string]: any;
95
- };
96
- include_parent: boolean;
97
- numchild: number;
98
- [key: string]: any;
99
- };
100
-
101
- export type MenuItemType = {
102
- extra_context: MenuItemExtraContentType;
103
- generator_name: 'menu_item';
104
- label: string;
105
- level: number;
106
- parent: null | MenuItemType;
107
- parent_pk: null | string;
108
- children: null | MenuItemType[];
109
- path: string;
110
- pk: string;
111
- sort_order: number;
112
- url: string;
113
- };
114
-
115
- export type ForgotPasswordFormType = {
116
- email: string;
117
- };
118
-
119
- export interface UpsellDetail {
120
- message: string;
121
- params: {
122
- partial_percentage: number;
123
- required: number;
124
- partial: number;
125
- remaining: number;
126
- };
127
- }
1
+ import { District } from './address';
2
+ export interface Config {
3
+ user_phone_regex: string;
4
+ user_phone_format: string;
5
+ country: {
6
+ pk: number;
7
+ name: string;
8
+ code: string;
9
+ };
10
+ }
11
+
12
+ export interface RetailStore {
13
+ address: string;
14
+ name: string;
15
+ pk: number;
16
+ district: District;
17
+ township: {
18
+ name: string;
19
+ pk: number;
20
+ city: {
21
+ country: number;
22
+ name: string;
23
+ pk: number;
24
+ };
25
+ };
26
+ }
27
+
28
+ export type Pagination = {
29
+ current_page: number;
30
+ num_pages: number;
31
+ page_size: number;
32
+ total_count: number;
33
+ };
34
+
35
+ export type EmailSubscriptionType = {
36
+ email: string;
37
+ subscribe_contract: boolean;
38
+ };
39
+
40
+ export type ImageType = {
41
+ data_type?: 'image';
42
+ url?: string;
43
+ value?: string;
44
+ };
45
+
46
+ export interface Error {
47
+ status: number;
48
+ data: {
49
+ error_code: string;
50
+ non_field_errors: string;
51
+ };
52
+ }
53
+
54
+ export type Discount = {
55
+ description: string;
56
+ discount: string;
57
+ };
58
+
59
+ export type MenuItemExtraContentImageType = {
60
+ kwargs: {
61
+ value: {
62
+ image: {
63
+ url: string;
64
+ value: string;
65
+ };
66
+ };
67
+ };
68
+ value: {
69
+ image: string;
70
+ link_text: string;
71
+ title: string;
72
+ url: string;
73
+ };
74
+ };
75
+
76
+ export type MenuItemExtraContentStoryType = {
77
+ value: {
78
+ url: string;
79
+ alt: string;
80
+ image: string;
81
+ };
82
+ kwargs: {
83
+ data_type: 'nested';
84
+ value: {
85
+ image: ImageType;
86
+ };
87
+ };
88
+ };
89
+
90
+ export type MenuItemExtraContentType = {
91
+ attributes: {
92
+ category_id: number;
93
+ images: Array<MenuItemExtraContentImageType>;
94
+ [key: string]: any;
95
+ };
96
+ include_parent: boolean;
97
+ numchild: number;
98
+ [key: string]: any;
99
+ };
100
+
101
+ export type MenuItemType = {
102
+ extra_context: MenuItemExtraContentType;
103
+ generator_name: 'menu_item';
104
+ label: string;
105
+ level: number;
106
+ parent: null | MenuItemType;
107
+ parent_pk: null | string;
108
+ children: null | MenuItemType[];
109
+ path: string;
110
+ pk: string;
111
+ sort_order: number;
112
+ url: string;
113
+ };
114
+
115
+ export type ForgotPasswordFormType = {
116
+ email: string;
117
+ };
118
+
119
+ export interface UpsellDetail {
120
+ message: string;
121
+ params: {
122
+ partial_percentage: number;
123
+ required: number;
124
+ partial: number;
125
+ remaining: number;
126
+ };
127
+ }
@@ -1,119 +1,119 @@
1
- import { Product } from './product';
2
- import { Address } from './address';
3
-
4
- export interface OrderStatus {
5
- value: string;
6
- label: string;
7
- }
8
-
9
- export interface Currency {
10
- value: string;
11
- label: string;
12
- }
13
-
14
- export interface PaymentOption {
15
- name: string;
16
- payment_type: string;
17
- payment_type_label: string;
18
- pk: number;
19
- slug: string;
20
- }
21
-
22
- export interface OrderItem {
23
- id: number;
24
- status: OrderStatus;
25
- price_currency: Currency;
26
- product: Product;
27
- is_cancelled: boolean;
28
- is_cancellable: boolean;
29
- is_refundable: boolean;
30
- is_tradable: boolean;
31
- available_easy_return_shipping_companies: {
32
- pk: number;
33
- shipping_company: {
34
- value: string;
35
- label: string;
36
- };
37
- }[];
38
- active_cancellation_request: [
39
- {
40
- easy_return: {
41
- code: string;
42
- };
43
- }
44
- ];
45
- created_date: string;
46
- modified_date: string;
47
- price: string;
48
- tax_rate: string;
49
- retail_price: string;
50
- order: number;
51
- length: number;
52
- quantity: string;
53
- unit_price: string;
54
- total_amount: string;
55
- }
56
-
57
- export interface Order {
58
- id: number;
59
- status: OrderStatus;
60
- currency: Currency;
61
- orderitem_set: OrderItem[];
62
- discountitem_set: [
63
- {
64
- amount: string;
65
- cancel_amount: string;
66
- code: null;
67
- created_date: string;
68
- modified_date: string;
69
- name: string;
70
- offer_type: string;
71
- order: number;
72
- pk: number;
73
- promotion: number;
74
- session_offer_type: null;
75
- }
76
- ];
77
- is_cancelled: boolean;
78
- is_cancellable: boolean;
79
- is_refundable: boolean;
80
- shipping_address: Address;
81
- billing_address: Address;
82
- client_type: string;
83
- payment_option: PaymentOption;
84
- amount_without_discount: string;
85
- is_payable: boolean;
86
- created_date: string;
87
- modified_date: string;
88
- number: string;
89
- amount: string;
90
- discount_amount: string;
91
- shipping_amount: string;
92
- refund_amount: string;
93
- discount_refund_amount: string;
94
- shipping_refund_amount: string;
95
- remote_addr: string;
96
- has_gift_box: boolean;
97
- language_code: string;
98
- user_email: string;
99
- shipping_option_slug: string;
100
- payment_option_slug: string;
101
- installment_count: 1;
102
- installment_interest_amount: string;
103
- user: number;
104
- basket: number;
105
- shipping_option: number;
106
- tracking_number: string;
107
- tracking_url: string;
108
- }
109
-
110
- export interface Quotations {
111
- id: number;
112
- name: string;
113
- net_amount: string;
114
- number: string;
115
- status: string;
116
- total_amount: string;
117
- modified_at: string;
118
- created_at: string;
119
- }
1
+ import { Product } from './product';
2
+ import { Address } from './address';
3
+
4
+ export interface OrderStatus {
5
+ value: string;
6
+ label: string;
7
+ }
8
+
9
+ export interface Currency {
10
+ value: string;
11
+ label: string;
12
+ }
13
+
14
+ export interface PaymentOption {
15
+ name: string;
16
+ payment_type: string;
17
+ payment_type_label: string;
18
+ pk: number;
19
+ slug: string;
20
+ }
21
+
22
+ export interface OrderItem {
23
+ id: number;
24
+ status: OrderStatus;
25
+ price_currency: Currency;
26
+ product: Product;
27
+ is_cancelled: boolean;
28
+ is_cancellable: boolean;
29
+ is_refundable: boolean;
30
+ is_tradable: boolean;
31
+ available_easy_return_shipping_companies: {
32
+ pk: number;
33
+ shipping_company: {
34
+ value: string;
35
+ label: string;
36
+ };
37
+ }[];
38
+ active_cancellation_request: [
39
+ {
40
+ easy_return: {
41
+ code: string;
42
+ };
43
+ }
44
+ ];
45
+ created_date: string;
46
+ modified_date: string;
47
+ price: string;
48
+ tax_rate: string;
49
+ retail_price: string;
50
+ order: number;
51
+ length: number;
52
+ quantity: string;
53
+ unit_price: string;
54
+ total_amount: string;
55
+ }
56
+
57
+ export interface Order {
58
+ id: number;
59
+ status: OrderStatus;
60
+ currency: Currency;
61
+ orderitem_set: OrderItem[];
62
+ discountitem_set: [
63
+ {
64
+ amount: string;
65
+ cancel_amount: string;
66
+ code: null;
67
+ created_date: string;
68
+ modified_date: string;
69
+ name: string;
70
+ offer_type: string;
71
+ order: number;
72
+ pk: number;
73
+ promotion: number;
74
+ session_offer_type: null;
75
+ }
76
+ ];
77
+ is_cancelled: boolean;
78
+ is_cancellable: boolean;
79
+ is_refundable: boolean;
80
+ shipping_address: Address;
81
+ billing_address: Address;
82
+ client_type: string;
83
+ payment_option: PaymentOption;
84
+ amount_without_discount: string;
85
+ is_payable: boolean;
86
+ created_date: string;
87
+ modified_date: string;
88
+ number: string;
89
+ amount: string;
90
+ discount_amount: string;
91
+ shipping_amount: string;
92
+ refund_amount: string;
93
+ discount_refund_amount: string;
94
+ shipping_refund_amount: string;
95
+ remote_addr: string;
96
+ has_gift_box: boolean;
97
+ language_code: string;
98
+ user_email: string;
99
+ shipping_option_slug: string;
100
+ payment_option_slug: string;
101
+ installment_count: 1;
102
+ installment_interest_amount: string;
103
+ user: number;
104
+ basket: number;
105
+ shipping_option: number;
106
+ tracking_number: string;
107
+ tracking_url: string;
108
+ }
109
+
110
+ export interface Quotations {
111
+ id: number;
112
+ name: string;
113
+ net_amount: string;
114
+ number: string;
115
+ status: string;
116
+ total_amount: string;
117
+ modified_at: string;
118
+ created_at: string;
119
+ }