@graphcommerce/magento-newsletter 8.1.0-canary.2 → 8.1.0-canary.5
Sign up to get free protection for your applications and to get access to all the features.
- package/CHANGELOG.md +68 -1
- package/components/CheckoutNewsletter/CheckoutNewsletter.tsx +2 -3
- package/components/CustomerNewsletterToggle/CustomerNewsletterToggle.tsx +2 -2
- package/components/GuestNewsletterToggle/GuestNewsletterToggle.tsx +3 -4
- package/components/SignupNewsletter/SignupNewsletter.tsx +1 -1
- package/package.json +10 -10
package/CHANGELOG.md
CHANGED
@@ -1,6 +1,73 @@
|
|
1
1
|
# Change Log
|
2
2
|
|
3
|
-
## 8.1.0-canary.
|
3
|
+
## 8.1.0-canary.5
|
4
|
+
|
5
|
+
## 8.0.6-canary.4
|
6
|
+
|
7
|
+
## 8.0.6-canary.3
|
8
|
+
|
9
|
+
## 8.0.6-canary.2
|
10
|
+
|
11
|
+
### Patch Changes
|
12
|
+
|
13
|
+
- [#2234](https://github.com/graphcommerce-org/graphcommerce/pull/2234) [`530076e`](https://github.com/graphcommerce-org/graphcommerce/commit/530076e3664703cb8b577b7fcf1998a420819f60) - Moved all usages of useFormPersist to the <FormPersist/> component to prevent rerenders.
|
14
|
+
([@FrankHarland](https://github.com/FrankHarland))
|
15
|
+
|
16
|
+
## 8.0.6-canary.1
|
17
|
+
|
18
|
+
## 8.0.6-canary.0
|
19
|
+
|
20
|
+
## 8.0.5
|
21
|
+
|
22
|
+
## 8.0.5-canary.10
|
23
|
+
|
24
|
+
## 8.0.5-canary.9
|
25
|
+
|
26
|
+
## 8.0.5-canary.8
|
27
|
+
|
28
|
+
## 8.0.5-canary.7
|
29
|
+
|
30
|
+
## 8.0.5-canary.6
|
31
|
+
|
32
|
+
## 8.0.5-canary.5
|
33
|
+
|
34
|
+
## 8.0.5-canary.4
|
35
|
+
|
36
|
+
## 8.0.5-canary.3
|
37
|
+
|
38
|
+
## 8.0.5-canary.2
|
39
|
+
|
40
|
+
## 8.0.5-canary.1
|
41
|
+
|
42
|
+
## 8.0.5-canary.0
|
43
|
+
|
44
|
+
## 8.0.4
|
45
|
+
|
46
|
+
## 8.0.4-canary.1
|
47
|
+
|
48
|
+
## 8.0.4-canary.0
|
49
|
+
|
50
|
+
## 8.0.3
|
51
|
+
|
52
|
+
### Patch Changes
|
53
|
+
|
54
|
+
- [#2205](https://github.com/graphcommerce-org/graphcommerce/pull/2205) [`d67c89d`](https://github.com/graphcommerce-org/graphcommerce/commit/d67c89d464a60f0e2618dab670b63a39f6291341) - Deprecate the allowUrl option for useCartQuery, it was already enabled by default and should never be set to false.
|
55
|
+
([@paales](https://github.com/paales))
|
56
|
+
|
57
|
+
## 8.0.3-canary.6
|
58
|
+
|
59
|
+
## 8.0.3-canary.5
|
60
|
+
|
61
|
+
## 8.0.3-canary.4
|
62
|
+
|
63
|
+
## 8.0.3-canary.3
|
64
|
+
|
65
|
+
## 8.0.3-canary.2
|
66
|
+
|
67
|
+
### Patch Changes
|
68
|
+
|
69
|
+
- [#2205](https://github.com/graphcommerce-org/graphcommerce/pull/2205) [`d67c89d`](https://github.com/graphcommerce-org/graphcommerce/commit/d67c89d464a60f0e2618dab670b63a39f6291341) - Deprecate the allowUrl option for useCartQuery, it was already enabled by default and should never be set to false.
|
70
|
+
([@paales](https://github.com/paales))
|
4
71
|
|
5
72
|
## 8.0.3-canary.1
|
6
73
|
|
@@ -2,7 +2,7 @@ import { CheckboxElement, useFormCompose } from '@graphcommerce/ecommerce-ui'
|
|
2
2
|
import { DocumentNode } from '@graphcommerce/graphql'
|
3
3
|
import { useCartQuery } from '@graphcommerce/magento-cart'
|
4
4
|
import { useCustomerQuery, useCustomerSession } from '@graphcommerce/magento-customer'
|
5
|
-
import { useFormGqlMutation, useFormPersist } from '@graphcommerce/react-hook-form'
|
5
|
+
import { FormPersist, useFormGqlMutation, useFormPersist } from '@graphcommerce/react-hook-form'
|
6
6
|
import { Box, SxProps, Theme } from '@mui/material'
|
7
7
|
import { GetCustomerNewsletterToggleDocument } from '../CustomerNewsletterToggle/GetCustomerNewsLetterToggle.gql'
|
8
8
|
import { GetCartEmailDocument } from '../SignupNewsletter/GetCartEmail.gql'
|
@@ -43,14 +43,13 @@ export function SubscribeToNewsletter(props: CheckoutNewsletterProps) {
|
|
43
43
|
const { control, handleSubmit } = form
|
44
44
|
const submit = handleSubmit(() => {})
|
45
45
|
|
46
|
-
useFormPersist({ form, name: 'NewsletterSubscribeForm' })
|
47
|
-
|
48
46
|
useFormCompose({ form, step, submit, key: 'NewsletterSubscribeForm' })
|
49
47
|
|
50
48
|
if (isCustomerSubscribed) return null
|
51
49
|
|
52
50
|
return (
|
53
51
|
<Box sx={sx}>
|
52
|
+
<FormPersist form={form} name='NewsletterSubscribeForm' />
|
54
53
|
<form onSubmit={submit} noValidate>
|
55
54
|
<CheckboxElement color='secondary' control={control} name='subscribe' label={label} />
|
56
55
|
</form>
|
@@ -1,6 +1,6 @@
|
|
1
1
|
import { useQuery } from '@graphcommerce/graphql'
|
2
2
|
import { ApolloCustomerErrorAlert } from '@graphcommerce/magento-customer'
|
3
|
-
import { Controller,
|
3
|
+
import { Controller, FormAutoSubmit, useFormGqlMutation } from '@graphcommerce/react-hook-form'
|
4
4
|
import {
|
5
5
|
Box,
|
6
6
|
FormControl,
|
@@ -31,12 +31,12 @@ export function CustomerNewsletterToggle(props: CustomerNewsletterToggleProps) {
|
|
31
31
|
|
32
32
|
const { handleSubmit, control, formState, error } = form
|
33
33
|
const submit = handleSubmit(() => {})
|
34
|
-
useFormAutoSubmit({ form, submit })
|
35
34
|
|
36
35
|
if (disabled || loading) return <Switch disabled color='primary' {...switchProps} />
|
37
36
|
|
38
37
|
return (
|
39
38
|
<Box component='form' onSubmit={submit} noValidate sx={sx}>
|
39
|
+
<FormAutoSubmit control={control} submit={submit} />
|
40
40
|
<Controller
|
41
41
|
name='isSubscribed'
|
42
42
|
control={control}
|
@@ -1,7 +1,7 @@
|
|
1
1
|
import { useCartQuery } from '@graphcommerce/magento-cart'
|
2
2
|
import { ApolloCustomerErrorAlert } from '@graphcommerce/magento-customer'
|
3
3
|
import { Form } from '@graphcommerce/next-ui'
|
4
|
-
import { Controller,
|
4
|
+
import { Controller, FormAutoSubmit, useFormGqlMutation } from '@graphcommerce/react-hook-form'
|
5
5
|
import {
|
6
6
|
FormControl,
|
7
7
|
FormControlLabel,
|
@@ -25,8 +25,7 @@ export type GuestNewsletterToggleProps = SwitchProps & { sx?: SxProps<Theme> }
|
|
25
25
|
export function GuestNewsletterToggle(props: GuestNewsletterToggleProps) {
|
26
26
|
const { sx = [], ...switchProps } = props
|
27
27
|
|
28
|
-
const email =
|
29
|
-
useCartQuery(GetCartEmailDocument, { allowUrl: true }).data?.cart?.email ?? undefined
|
28
|
+
const email = useCartQuery(GetCartEmailDocument).data?.cart?.email ?? undefined
|
30
29
|
const form = useFormGqlMutation<
|
31
30
|
GuestNewsletterToggleMutation,
|
32
31
|
GuestNewsletterToggleMutationVariables & { isSubscribed?: boolean }
|
@@ -34,13 +33,13 @@ export function GuestNewsletterToggle(props: GuestNewsletterToggleProps) {
|
|
34
33
|
|
35
34
|
const { handleSubmit, control, formState, error, register } = form
|
36
35
|
const submit = handleSubmit(() => {})
|
37
|
-
useFormAutoSubmit({ form, submit })
|
38
36
|
|
39
37
|
if (formState.isSubmitted) return <Switch color='primary' {...switchProps} checked disabled />
|
40
38
|
|
41
39
|
return (
|
42
40
|
<Form noValidate sx={sx}>
|
43
41
|
<input type='hidden' {...register('email')} value={email} />
|
42
|
+
<FormAutoSubmit control={control} submit={submit} />
|
44
43
|
<Controller
|
45
44
|
name='isSubscribed'
|
46
45
|
control={control}
|
@@ -17,7 +17,7 @@ const { withState } = extendableComponent<OwnerState, typeof name, typeof parts>
|
|
17
17
|
|
18
18
|
export function SignupNewsletter(props: SignupNewsletterProps) {
|
19
19
|
const { sx = [] } = props
|
20
|
-
const { data: cartData } = useCartQuery(GetCartEmailDocument
|
20
|
+
const { data: cartData } = useCartQuery(GetCartEmailDocument)
|
21
21
|
const { loggedIn } = useCustomerSession()
|
22
22
|
|
23
23
|
const classes = withState({ loggedIn })
|
package/package.json
CHANGED
@@ -2,7 +2,7 @@
|
|
2
2
|
"name": "@graphcommerce/magento-newsletter",
|
3
3
|
"homepage": "https://www.graphcommerce.org/",
|
4
4
|
"repository": "github:graphcommerce-org/graphcommerce",
|
5
|
-
"version": "8.1.0-canary.
|
5
|
+
"version": "8.1.0-canary.5",
|
6
6
|
"sideEffects": false,
|
7
7
|
"prettier": "@graphcommerce/prettier-config-pwa",
|
8
8
|
"eslintConfig": {
|
@@ -12,15 +12,15 @@
|
|
12
12
|
}
|
13
13
|
},
|
14
14
|
"peerDependencies": {
|
15
|
-
"@graphcommerce/ecommerce-ui": "^8.1.0-canary.
|
16
|
-
"@graphcommerce/eslint-config-pwa": "^8.1.0-canary.
|
17
|
-
"@graphcommerce/graphql": "^8.1.0-canary.
|
18
|
-
"@graphcommerce/magento-cart": "^8.1.0-canary.
|
19
|
-
"@graphcommerce/magento-customer": "^8.1.0-canary.
|
20
|
-
"@graphcommerce/next-ui": "^8.1.0-canary.
|
21
|
-
"@graphcommerce/prettier-config-pwa": "^8.1.0-canary.
|
22
|
-
"@graphcommerce/react-hook-form": "^8.1.0-canary.
|
23
|
-
"@graphcommerce/typescript-config-pwa": "^8.1.0-canary.
|
15
|
+
"@graphcommerce/ecommerce-ui": "^8.1.0-canary.5",
|
16
|
+
"@graphcommerce/eslint-config-pwa": "^8.1.0-canary.5",
|
17
|
+
"@graphcommerce/graphql": "^8.1.0-canary.5",
|
18
|
+
"@graphcommerce/magento-cart": "^8.1.0-canary.5",
|
19
|
+
"@graphcommerce/magento-customer": "^8.1.0-canary.5",
|
20
|
+
"@graphcommerce/next-ui": "^8.1.0-canary.5",
|
21
|
+
"@graphcommerce/prettier-config-pwa": "^8.1.0-canary.5",
|
22
|
+
"@graphcommerce/react-hook-form": "^8.1.0-canary.5",
|
23
|
+
"@graphcommerce/typescript-config-pwa": "^8.1.0-canary.5",
|
24
24
|
"@lingui/core": "^4.2.1",
|
25
25
|
"@lingui/macro": "^4.2.1",
|
26
26
|
"@lingui/react": "^4.2.1",
|