@graphcommerce/magento-newsletter 6.2.0-canary.7 → 6.2.0-canary.70

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 CHANGED
@@ -1,5 +1,135 @@
1
1
  # Change Log
2
2
 
3
+ ## 6.2.0-canary.70
4
+
5
+ ## 6.2.0-canary.69
6
+
7
+ ## 6.2.0-canary.68
8
+
9
+ ## 6.2.0-canary.67
10
+
11
+ ## 6.2.0-canary.66
12
+
13
+ ## 6.2.0-canary.65
14
+
15
+ ## 6.2.0-canary.64
16
+
17
+ ## 6.2.0-canary.63
18
+
19
+ ## 6.2.0-canary.62
20
+
21
+ ## 6.2.0-canary.61
22
+
23
+ ## 6.2.0-canary.60
24
+
25
+ ## 6.2.0-canary.59
26
+
27
+ ## 6.2.0-canary.58
28
+
29
+ ## 6.2.0-canary.57
30
+
31
+ ## 6.2.0-canary.56
32
+
33
+ ## 6.2.0-canary.55
34
+
35
+ ## 6.2.0-canary.54
36
+
37
+ ## 6.2.0-canary.53
38
+
39
+ ## 6.2.0-canary.52
40
+
41
+ ## 6.2.0-canary.51
42
+
43
+ ## 6.2.0-canary.50
44
+
45
+ ## 6.2.0-canary.49
46
+
47
+ ### Patch Changes
48
+
49
+ - [#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))
50
+
51
+ ## 6.2.0-canary.48
52
+
53
+ ## 6.2.0-canary.47
54
+
55
+ ## 6.2.0-canary.46
56
+
57
+ ## 6.2.0-canary.45
58
+
59
+ ## 6.2.0-canary.44
60
+
61
+ ## 6.2.0-canary.43
62
+
63
+ ## 6.2.0-canary.42
64
+
65
+ ## 6.2.0-canary.41
66
+
67
+ ## 6.2.0-canary.40
68
+
69
+ ## 6.2.0-canary.39
70
+
71
+ ## 6.2.0-canary.38
72
+
73
+ ## 6.2.0-canary.37
74
+
75
+ ## 6.2.0-canary.36
76
+
77
+ ## 6.2.0-canary.35
78
+
79
+ ## 6.2.0-canary.34
80
+
81
+ ## 6.2.0-canary.33
82
+
83
+ ## 6.2.0-canary.32
84
+
85
+ ## 6.2.0-canary.31
86
+
87
+ ## 6.2.0-canary.30
88
+
89
+ ## 6.2.0-canary.29
90
+
91
+ ## 6.2.0-canary.28
92
+
93
+ ## 6.2.0-canary.27
94
+
95
+ ## 6.2.0-canary.26
96
+
97
+ ## 6.2.0-canary.25
98
+
99
+ ## 6.2.0-canary.24
100
+
101
+ ## 6.2.0-canary.23
102
+
103
+ ## 6.2.0-canary.22
104
+
105
+ ## 6.2.0-canary.21
106
+
107
+ ## 6.2.0-canary.20
108
+
109
+ ## 6.2.0-canary.19
110
+
111
+ ## 6.2.0-canary.18
112
+
113
+ ## 6.2.0-canary.17
114
+
115
+ ## 6.2.0-canary.16
116
+
117
+ ## 6.2.0-canary.15
118
+
119
+ ## 6.2.0-canary.14
120
+
121
+ ## 6.2.0-canary.13
122
+
123
+ ## 6.2.0-canary.12
124
+
125
+ ## 6.2.0-canary.11
126
+
127
+ ## 6.2.0-canary.10
128
+
129
+ ## 6.2.0-canary.9
130
+
131
+ ## 6.2.0-canary.8
132
+
3
133
  ## 6.2.0-canary.7
4
134
 
5
135
  ## 6.2.0-canary.6
@@ -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'
@@ -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
+ }
@@ -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.7",
5
+ "version": "6.2.0-canary.70",
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.7",
16
- "@graphcommerce/prettier-config-pwa": "6.2.0-canary.7",
17
- "@graphcommerce/typescript-config-pwa": "6.2.0-canary.7"
15
+ "@graphcommerce/eslint-config-pwa": "6.2.0-canary.70",
16
+ "@graphcommerce/prettier-config-pwa": "6.2.0-canary.70",
17
+ "@graphcommerce/typescript-config-pwa": "6.2.0-canary.70"
18
18
  },
19
19
  "dependencies": {
20
- "@graphcommerce/graphql": "6.2.0-canary.7",
21
- "@graphcommerce/magento-cart": "6.2.0-canary.7",
22
- "@graphcommerce/magento-customer": "6.2.0-canary.7",
23
- "@graphcommerce/next-ui": "6.2.0-canary.7",
24
- "@graphcommerce/react-hook-form": "6.2.0-canary.7"
20
+ "@graphcommerce/ecommerce-ui": "6.2.0-canary.70",
21
+ "@graphcommerce/graphql": "6.2.0-canary.70",
22
+ "@graphcommerce/magento-cart": "6.2.0-canary.70",
23
+ "@graphcommerce/magento-customer": "6.2.0-canary.70",
24
+ "@graphcommerce/next-ui": "6.2.0-canary.70",
25
+ "@graphcommerce/react-hook-form": "6.2.0-canary.70"
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",