@graphcommerce/magento-newsletter 6.2.0-canary.9 → 6.2.0-canary.91

Sign up to get free protection for your applications and to get access to all the features.
package/CHANGELOG.md CHANGED
@@ -1,5 +1,177 @@
1
1
  # Change Log
2
2
 
3
+ ## 6.2.0-canary.91
4
+
5
+ ## 6.2.0-canary.90
6
+
7
+ ## 6.2.0-canary.89
8
+
9
+ ## 6.2.0-canary.88
10
+
11
+ ## 6.2.0-canary.87
12
+
13
+ ## 6.2.0-canary.86
14
+
15
+ ## 6.2.0-canary.85
16
+
17
+ ## 6.2.0-canary.84
18
+
19
+ ## 6.2.0-canary.83
20
+
21
+ ## 6.2.0-canary.82
22
+
23
+ ### Patch Changes
24
+
25
+ - [#2021](https://github.com/graphcommerce-org/graphcommerce/pull/2021) [`06ab7d24d`](https://github.com/graphcommerce-org/graphcommerce/commit/06ab7d24dcf345c6acd39471df544a726a166ece) - Prevent email address overlap with toggle button on narrow columns ([@carlocarels90](https://github.com/carlocarels90))
26
+
27
+ ## 6.2.0-canary.81
28
+
29
+ ## 6.2.0-canary.80
30
+
31
+ ## 6.2.0-canary.79
32
+
33
+ ## 6.2.0-canary.78
34
+
35
+ ## 6.2.0-canary.77
36
+
37
+ ## 6.2.0-canary.76
38
+
39
+ ## 6.2.0-canary.75
40
+
41
+ ## 6.2.0-canary.74
42
+
43
+ ## 6.2.0-canary.73
44
+
45
+ ## 6.2.0-canary.72
46
+
47
+ ## 6.2.0-canary.71
48
+
49
+ ## 6.2.0-canary.70
50
+
51
+ ## 6.2.0-canary.69
52
+
53
+ ## 6.2.0-canary.68
54
+
55
+ ## 6.2.0-canary.67
56
+
57
+ ## 6.2.0-canary.66
58
+
59
+ ## 6.2.0-canary.65
60
+
61
+ ## 6.2.0-canary.64
62
+
63
+ ## 6.2.0-canary.63
64
+
65
+ ## 6.2.0-canary.62
66
+
67
+ ## 6.2.0-canary.61
68
+
69
+ ## 6.2.0-canary.60
70
+
71
+ ## 6.2.0-canary.59
72
+
73
+ ## 6.2.0-canary.58
74
+
75
+ ## 6.2.0-canary.57
76
+
77
+ ## 6.2.0-canary.56
78
+
79
+ ## 6.2.0-canary.55
80
+
81
+ ## 6.2.0-canary.54
82
+
83
+ ## 6.2.0-canary.53
84
+
85
+ ## 6.2.0-canary.52
86
+
87
+ ## 6.2.0-canary.51
88
+
89
+ ## 6.2.0-canary.50
90
+
91
+ ## 6.2.0-canary.49
92
+
93
+ ### Patch Changes
94
+
95
+ - [#1959](https://github.com/graphcommerce-org/graphcommerce/pull/1959) [`f164217af`](https://github.com/graphcommerce-org/graphcommerce/commit/f164217af6847cff8555e19e7fc25f03528144e5) - Moved the GuestNewsletter component to inside the magento-newsletter package ([@JoshuaS98](https://github.com/JoshuaS98))
96
+
97
+ ## 6.2.0-canary.48
98
+
99
+ ## 6.2.0-canary.47
100
+
101
+ ## 6.2.0-canary.46
102
+
103
+ ## 6.2.0-canary.45
104
+
105
+ ## 6.2.0-canary.44
106
+
107
+ ## 6.2.0-canary.43
108
+
109
+ ## 6.2.0-canary.42
110
+
111
+ ## 6.2.0-canary.41
112
+
113
+ ## 6.2.0-canary.40
114
+
115
+ ## 6.2.0-canary.39
116
+
117
+ ## 6.2.0-canary.38
118
+
119
+ ## 6.2.0-canary.37
120
+
121
+ ## 6.2.0-canary.36
122
+
123
+ ## 6.2.0-canary.35
124
+
125
+ ## 6.2.0-canary.34
126
+
127
+ ## 6.2.0-canary.33
128
+
129
+ ## 6.2.0-canary.32
130
+
131
+ ## 6.2.0-canary.31
132
+
133
+ ## 6.2.0-canary.30
134
+
135
+ ## 6.2.0-canary.29
136
+
137
+ ## 6.2.0-canary.28
138
+
139
+ ## 6.2.0-canary.27
140
+
141
+ ## 6.2.0-canary.26
142
+
143
+ ## 6.2.0-canary.25
144
+
145
+ ## 6.2.0-canary.24
146
+
147
+ ## 6.2.0-canary.23
148
+
149
+ ## 6.2.0-canary.22
150
+
151
+ ## 6.2.0-canary.21
152
+
153
+ ## 6.2.0-canary.20
154
+
155
+ ## 6.2.0-canary.19
156
+
157
+ ## 6.2.0-canary.18
158
+
159
+ ## 6.2.0-canary.17
160
+
161
+ ## 6.2.0-canary.16
162
+
163
+ ## 6.2.0-canary.15
164
+
165
+ ## 6.2.0-canary.14
166
+
167
+ ## 6.2.0-canary.13
168
+
169
+ ## 6.2.0-canary.12
170
+
171
+ ## 6.2.0-canary.11
172
+
173
+ ## 6.2.0-canary.10
174
+
3
175
  ## 6.2.0-canary.9
4
176
 
5
177
  ## 6.2.0-canary.8
@@ -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 { useFormGql, useFormGqlMutation, useFormPersist } from '@graphcommerce/react-hook-form'
5
+ import { 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'
@@ -6,6 +6,7 @@ import {
6
6
  FormControl,
7
7
  FormControlLabel,
8
8
  FormHelperText,
9
+ // eslint-disable-next-line @typescript-eslint/no-restricted-imports
9
10
  Switch,
10
11
  SwitchProps,
11
12
  SxProps,
@@ -0,0 +1,69 @@
1
+ import {
2
+ ApolloErrorSnackbar,
3
+ TextFieldElement,
4
+ useFormGqlMutation,
5
+ } from '@graphcommerce/ecommerce-ui'
6
+ import { Form, MessageSnackbar, Button } from '@graphcommerce/next-ui'
7
+ import { i18n } from '@lingui/core'
8
+ import { Trans } from '@lingui/react'
9
+ import { SxProps, Theme } from '@mui/material'
10
+ import { GuestNewsletterToggleDocument } from '../GuestNewsletterToggle/GuestNewsletterToggle.gql'
11
+
12
+ type GuestNewsletterProps = {
13
+ sx?: SxProps<Theme>
14
+ }
15
+
16
+ export function GuestNewsletter(props: GuestNewsletterProps) {
17
+ const { sx = [] } = props
18
+ const form = useFormGqlMutation(GuestNewsletterToggleDocument, {}, { errorPolicy: 'all' })
19
+
20
+ const { handleSubmit, formState, error, control } = form
21
+ const submit = handleSubmit(() => {})
22
+
23
+ const submittedWithoutErrors = formState.isSubmitSuccessful && !error
24
+
25
+ return (
26
+ <Form
27
+ noValidate
28
+ onSubmit={submit}
29
+ sx={[(theme) => ({ gap: theme.spacings.xs }), ...(Array.isArray(sx) ? sx : [sx])]}
30
+ >
31
+ <TextFieldElement
32
+ required
33
+ variant='outlined'
34
+ type='email'
35
+ label={i18n._(/* i18n */ 'Email address')}
36
+ control={control}
37
+ name='email'
38
+ size='medium'
39
+ inputProps={{ autoComplete: 'email' }}
40
+ disabled={submittedWithoutErrors}
41
+ />
42
+
43
+ <Button
44
+ loading={formState.isSubmitting}
45
+ variant='pill'
46
+ color='primary'
47
+ type='submit'
48
+ size='large'
49
+ disabled={submittedWithoutErrors}
50
+ >
51
+ {submittedWithoutErrors ? <Trans id='Subscribed' /> : <Trans id='Subscribe' />}
52
+ </Button>
53
+
54
+ <MessageSnackbar
55
+ open={submittedWithoutErrors}
56
+ variant='pill'
57
+ action={
58
+ <Button size='medium' variant='pill' color='secondary' fullWidth>
59
+ <Trans id='Ok' />
60
+ </Button>
61
+ }
62
+ >
63
+ <Trans id='You have been successfully subscribed to our newsletter.' />
64
+ </MessageSnackbar>
65
+
66
+ <ApolloErrorSnackbar error={error} />
67
+ </Form>
68
+ )
69
+ }
@@ -6,6 +6,7 @@ import {
6
6
  FormControl,
7
7
  FormControlLabel,
8
8
  FormHelperText,
9
+ // eslint-disable-next-line @typescript-eslint/no-restricted-imports
9
10
  Switch,
10
11
  SwitchProps,
11
12
  SxProps,
@@ -41,7 +41,6 @@ export function SignupNewsletter(props: SignupNewsletterProps) {
41
41
  justifyItems: 'start',
42
42
  [theme.breakpoints.up('sm')]: {
43
43
  gridTemplateAreas: `"a b c"`,
44
- gridTemplateColumns: '2fr 1fr',
45
44
  },
46
45
  }),
47
46
  ...(Array.isArray(sx) ? sx : [sx]),
@@ -1,3 +1,4 @@
1
1
  export * from './CustomerNewsletterToggle/CustomerNewsletterToggle'
2
2
  export * from './SignupNewsletter/SignupNewsletter'
3
3
  export * from './CheckoutNewsletter/CheckoutNewsletter'
4
+ export * from './GuestNewsletter/GuestNewsletter'
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": "6.2.0-canary.9",
5
+ "version": "6.2.0-canary.91",
6
6
  "sideEffects": false,
7
7
  "prettier": "@graphcommerce/prettier-config-pwa",
8
8
  "eslintConfig": {
@@ -12,20 +12,22 @@
12
12
  }
13
13
  },
14
14
  "devDependencies": {
15
- "@graphcommerce/eslint-config-pwa": "6.2.0-canary.9",
16
- "@graphcommerce/prettier-config-pwa": "6.2.0-canary.9",
17
- "@graphcommerce/typescript-config-pwa": "6.2.0-canary.9"
15
+ "@graphcommerce/eslint-config-pwa": "6.2.0-canary.91",
16
+ "@graphcommerce/prettier-config-pwa": "6.2.0-canary.91",
17
+ "@graphcommerce/typescript-config-pwa": "6.2.0-canary.91"
18
18
  },
19
19
  "dependencies": {
20
- "@graphcommerce/graphql": "6.2.0-canary.9",
21
- "@graphcommerce/magento-cart": "6.2.0-canary.9",
22
- "@graphcommerce/magento-customer": "6.2.0-canary.9",
23
- "@graphcommerce/next-ui": "6.2.0-canary.9",
24
- "@graphcommerce/react-hook-form": "6.2.0-canary.9"
20
+ "@graphcommerce/ecommerce-ui": "6.2.0-canary.91",
21
+ "@graphcommerce/graphql": "6.2.0-canary.91",
22
+ "@graphcommerce/magento-cart": "6.2.0-canary.91",
23
+ "@graphcommerce/magento-customer": "6.2.0-canary.91",
24
+ "@graphcommerce/next-ui": "6.2.0-canary.91",
25
+ "@graphcommerce/react-hook-form": "6.2.0-canary.91"
25
26
  },
26
27
  "peerDependencies": {
27
- "@lingui/react": "^3.13.2",
28
- "@lingui/core": "^3.13.2",
28
+ "@lingui/react": "^4.2.1",
29
+ "@lingui/core": "^4.2.1",
30
+ "@lingui/macro": "^4.2.1",
29
31
  "@mui/material": "^5.10.16",
30
32
  "framer-motion": "^10.0.0",
31
33
  "next": "^13.2.0",