@faststore/core 2.2.67 → 2.2.69

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 (80) hide show
  1. package/.next/BUILD_ID +1 -1
  2. package/.next/build-manifest.json +52 -55
  3. package/.next/cache/.tsbuildinfo +1 -1
  4. package/.next/cache/config.json +3 -3
  5. package/.next/cache/eslint/.cache_1gneedd +1 -1
  6. package/.next/cache/next-server.js.nft.json +1 -1
  7. package/.next/cache/webpack/client-production/0.pack +0 -0
  8. package/.next/cache/webpack/client-production/index.pack +0 -0
  9. package/.next/cache/webpack/server-production/0.pack +0 -0
  10. package/.next/cache/webpack/server-production/index.pack +0 -0
  11. package/.next/next-server.js.nft.json +1 -1
  12. package/.next/prerender-manifest.json +1 -1
  13. package/.next/routes-manifest.json +1 -1
  14. package/.next/server/chunks/350.js +87 -0
  15. package/.next/server/chunks/74.js +577 -28
  16. package/.next/server/middleware-build-manifest.js +1 -1
  17. package/.next/server/pages/404.js +7 -0
  18. package/.next/server/pages/500.js +7 -0
  19. package/.next/server/pages/[...slug].js +7 -7
  20. package/.next/server/pages/[...slug].js.nft.json +1 -1
  21. package/.next/server/pages/[slug]/p.js +5 -5
  22. package/.next/server/pages/[slug]/p.js.nft.json +1 -1
  23. package/.next/server/pages/account.js +7 -0
  24. package/.next/server/pages/checkout.js +7 -0
  25. package/.next/server/pages/en-US/404.html +2 -2
  26. package/.next/server/pages/en-US/500.html +2 -2
  27. package/.next/server/pages/en-US/account.html +2 -2
  28. package/.next/server/pages/en-US/checkout.html +2 -2
  29. package/.next/server/pages/en-US/login.html +2 -2
  30. package/.next/server/pages/en-US/s.html +2 -2
  31. package/.next/server/pages/en-US.html +2 -2
  32. package/.next/server/pages/index.js +6 -6
  33. package/.next/server/pages/index.js.nft.json +1 -1
  34. package/.next/server/pages/login.js +7 -0
  35. package/.next/server/pages/s.js +7 -0
  36. package/.next/static/JNkl1RxkhVPSzLAsRUxC6/_buildManifest.js +1 -0
  37. package/.next/static/chunks/557-4f8a963d7e07e582.js +1 -0
  38. package/.next/static/chunks/846-c59a0f158089800c.js +1 -0
  39. package/.next/static/chunks/pages/{404-5e6c01505839ca4e.js → 404-e44d7103a9c6781f.js} +1 -1
  40. package/.next/static/chunks/pages/{500-92239cdd00a581dd.js → 500-2ddd76fa11c851e4.js} +1 -1
  41. package/.next/static/chunks/pages/[...slug]-f7f47afa6dce5abf.js +1 -0
  42. package/.next/static/chunks/pages/[slug]/p-27a9a4ef5d07a4ce.js +1 -0
  43. package/.next/static/chunks/pages/{account-2d15d4e38b855872.js → account-1963c084b0b6e597.js} +1 -1
  44. package/.next/static/chunks/pages/{checkout-e34b1a2945839749.js → checkout-d66a352e910607dd.js} +1 -1
  45. package/.next/static/chunks/pages/index-9e98f2fc42dec7c1.js +1 -0
  46. package/.next/static/chunks/pages/{login-1b197c0b0d5ba457.js → login-349e1406a3a98968.js} +1 -1
  47. package/.next/static/chunks/pages/{s-ed126d7e39eec25b.js → s-9b771eb03d589ee6.js} +1 -1
  48. package/.next/static/chunks/{webpack-6c4b31200fed6646.js → webpack-3beeb2f9a51fccf6.js} +1 -1
  49. package/.next/static/css/0c844be3b8585e70.css +1 -0
  50. package/.next/static/css/280c254f1f559956.css +1 -0
  51. package/.next/static/css/a6bcc59f42b42f36.css +1 -0
  52. package/.next/static/css/{4ee95588f27a8b6b.css → ecdecb8d639a8311.css} +1 -1
  53. package/.next/trace +82 -82
  54. package/.turbo/turbo-build.log +13 -12
  55. package/.turbo/turbo-test.log +9 -9
  56. package/cms/faststore/sections.json +50 -0
  57. package/package.json +9 -9
  58. package/src/components/sections/BannerNewsletter/BannerNewsletter.tsx +5 -2
  59. package/src/components/sections/Newsletter/DefaultComponents.ts +25 -0
  60. package/src/components/sections/Newsletter/Newsletter.tsx +1 -2
  61. package/src/components/sections/Newsletter/OverriddenDefaultNewsletter.ts +12 -0
  62. package/src/components/templates/LandingPage/LandingPage.tsx +3 -3
  63. package/src/components/ui/Newsletter/Newsletter.tsx +15 -13
  64. package/src/components/ui/Newsletter/index.ts +3 -0
  65. package/src/pages/index.tsx +2 -2
  66. package/src/sdk/overrides/sections.tsx +4 -0
  67. package/src/typings/overrides.ts +1 -0
  68. package/.next/server/chunks/796.js +0 -554
  69. package/.next/static/bjKPEUMtAwRNUNjBl_iEY/_buildManifest.js +0 -1
  70. package/.next/static/chunks/762-1e3db91e2888dca7.js +0 -1
  71. package/.next/static/chunks/846-d7c6a8d1d102ccf3.js +0 -1
  72. package/.next/static/chunks/897-b07932d813bb7dac.js +0 -1
  73. package/.next/static/chunks/pages/[...slug]-36dce5cc96853b94.js +0 -1
  74. package/.next/static/chunks/pages/[slug]/p-039e11d837033561.js +0 -1
  75. package/.next/static/chunks/pages/index-a5448a22526e3ea8.js +0 -1
  76. package/.next/static/css/527e334fa69cf40a.css +0 -1
  77. package/.next/static/css/563a68087e4de59c.css +0 -1
  78. package/.next/static/css/c33c62a3d0c77436.css +0 -1
  79. package/src/components/sections/Newsletter/Overrides.tsx +0 -58
  80. /package/.next/static/{bjKPEUMtAwRNUNjBl_iEY → JNkl1RxkhVPSzLAsRUxC6}/_ssgManifest.js +0 -0
@@ -38,27 +38,28 @@ info - Generating static pages (7/7)
38
38
  info - Finalizing page optimization...
39
39
 
40
40
  Route (pages) Size First Load JS
41
- ┌ ● / 1.08 kB 142 kB
41
+ ┌ ● / 2.37 kB 142 kB
42
+ ├ └ css/ecdecb8d639a8311.css 5.48 kB
42
43
  ├ /_app 0 B 83.7 kB
43
- ├ ● /[...slug] 3.29 kB 145 kB
44
- ├ └ css/527e334fa69cf40a.css 1.85 kB
45
- ├ ● /[slug]/p 5.89 kB 141 kB
46
- ├ └ css/c33c62a3d0c77436.css 4.48 kB
47
- ├ ○ /404 1.03 kB 136 kB
48
- ├ ● /500 1.05 kB 136 kB
49
- ├ ● /account 676 B 136 kB
44
+ ├ ● /[...slug] 4.44 kB 144 kB
45
+ ├ └ css/0c844be3b8585e70.css 5.9 kB
46
+ ├ ● /[slug]/p 1.74 kB 141 kB
47
+ ├ └ css/a6bcc59f42b42f36.css 2.39 kB
48
+ ├ ○ /404 1.03 kB 140 kB
49
+ ├ ● /500 1.05 kB 140 kB
50
+ ├ ● /account 676 B 140 kB
50
51
  ├ λ /api/graphql 0 B 83.7 kB
51
52
  ├ λ /api/health/live 0 B 83.7 kB
52
53
  ├ λ /api/health/ready 0 B 83.7 kB
53
54
  ├ λ /api/preview 0 B 83.7 kB
54
- ├ ● /checkout 661 B 136 kB
55
- ├ ● /login 983 B 136 kB
56
- └ ● /s 2.36 kB 138 kB
55
+ ├ ● /checkout 661 B 140 kB
56
+ ├ ● /login 983 B 140 kB
57
+ └ ● /s 2.36 kB 142 kB
57
58
  + First Load JS shared by all 86.8 kB
58
59
  ├ chunks/framework-dfd14d7ce6600b03.js 45.3 kB
59
60
  ├ chunks/main-e4e873ee741162eb.js 24.2 kB
60
61
  ├ chunks/pages/_app-30b9666307e4b3b1.js 12.1 kB
61
- ├ chunks/webpack-6c4b31200fed6646.js 2.22 kB
62
+ ├ chunks/webpack-3beeb2f9a51fccf6.js 2.22 kB
62
63
  └ css/5d1f64b61ea581f4.css 3.05 kB
63
64
 
64
65
  λ (Server) server-side renders at runtime (uses getInitialProps or getServerSideProps)
@@ -1,23 +1,23 @@
1
1
  $ jest
2
- PASS test/server/index.test.ts (21.911 s)
2
+ PASS test/server/index.test.ts (20.791 s)
3
3
  FastStore GraphQL Layer
4
4
  @faststore/api
5
- ✓ should return a valid GraphQL schema (9 ms)
6
- ✓ should return a valid GraphQL schema contain all expected types (11 ms)
5
+ ✓ should return a valid GraphQL schema (11 ms)
6
+ ✓ should return a valid GraphQL schema contain all expected types (9 ms)
7
7
  ✓ should return a valid GraphQL schema contain all expected queries (1 ms)
8
8
  ✓ should return a valid GraphQL schema contain all expected mutations (1 ms)
9
9
  VTEX API Extension
10
- ✓ getTypeDefsFromFolder function should return an Array (10 ms)
10
+ ✓ getTypeDefsFromFolder function should return an Array (9 ms)
11
11
  Third Party API Extension
12
- ✓ getTypeDefsFromFolder function should return an Array (13 ms)
12
+ ✓ getTypeDefsFromFolder function should return an Array (8 ms)
13
13
  Final Schema after merging
14
- ✓ should return a valid merged GraphQL schema (106 ms)
14
+ ✓ should return a valid merged GraphQL schema (46 ms)
15
15
  Envelop
16
- ✓ should exist with its plugins (41 ms)
17
- ✓ should handle options and execute (397 ms)
16
+ ✓ should exist with its plugins (112 ms)
17
+ ✓ should handle options and execute (254 ms)
18
18
 
19
19
  Test Suites: 1 passed, 1 total
20
20
  Tests: 9 passed, 9 total
21
21
  Snapshots: 0 total
22
- Time: 22.042 s
22
+ Time: 20.881 s
23
23
  Ran all test suites.
@@ -1316,6 +1316,56 @@
1316
1316
  "enumNames": ["Main", "Light", "Accent"],
1317
1317
  "enum": ["main", "light", "accent"],
1318
1318
  "default": "main"
1319
+ },
1320
+ "toastSubscribe": {
1321
+ "title": "Toast Subscribe",
1322
+ "type": "object",
1323
+ "properties": {
1324
+ "title": {
1325
+ "title": "Title",
1326
+ "description": "Message Title",
1327
+ "type": "string",
1328
+ "default": "Hooray!"
1329
+ },
1330
+ "message": {
1331
+ "title": "Message",
1332
+ "description": "Message",
1333
+ "type": "string",
1334
+ "default": "Thank for your subscription."
1335
+ },
1336
+ "icon": {
1337
+ "title": "Icon",
1338
+ "type": "string",
1339
+ "enumNames": ["CircleWavyCheck"],
1340
+ "enum": ["CircleWavyCheck"],
1341
+ "default": "CircleWavyCheck"
1342
+ }
1343
+ }
1344
+ },
1345
+ "toastSubscribeError": {
1346
+ "title": "Toast Subscribe Error",
1347
+ "type": "object",
1348
+ "properties": {
1349
+ "title": {
1350
+ "title": "Title",
1351
+ "description": "Message Title",
1352
+ "type": "string",
1353
+ "default": "Oops."
1354
+ },
1355
+ "message": {
1356
+ "title": "Message",
1357
+ "description": "Message",
1358
+ "type": "string",
1359
+ "default": "Something went wrong. Please Try again."
1360
+ },
1361
+ "icon": {
1362
+ "title": "Icon",
1363
+ "type": "string",
1364
+ "enumNames": ["CircleWavyWarning"],
1365
+ "enum": ["CircleWavyWarning"],
1366
+ "default": "CircleWavyWarning"
1367
+ }
1368
+ }
1319
1369
  }
1320
1370
  }
1321
1371
  }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@faststore/core",
3
- "version": "2.2.67",
3
+ "version": "2.2.69",
4
4
  "license": "MIT",
5
5
  "repository": "vtex/faststore",
6
6
  "browserslist": "supports es6-module and not dead",
@@ -37,11 +37,11 @@
37
37
  "@envelop/graphql-jit": "^1.1.1",
38
38
  "@envelop/parser-cache": "^2.2.0",
39
39
  "@envelop/validation-cache": "^2.2.0",
40
- "@faststore/api": "^2.2.56",
41
- "@faststore/components": "^2.2.67",
42
- "@faststore/graphql-utils": "^2.2.56",
43
- "@faststore/sdk": "^2.2.61",
44
- "@faststore/ui": "^2.2.67",
40
+ "@faststore/api": "^2.2.69",
41
+ "@faststore/components": "^2.2.69",
42
+ "@faststore/graphql-utils": "^2.2.69",
43
+ "@faststore/sdk": "^2.2.69",
44
+ "@faststore/ui": "^2.2.69",
45
45
  "@graphql-codegen/cli": "^3.3.1",
46
46
  "@graphql-codegen/typescript": "^3.0.4",
47
47
  "@graphql-codegen/typescript-operations": "^3.0.4",
@@ -78,8 +78,8 @@
78
78
  "devDependencies": {
79
79
  "@cypress/code-coverage": "^3.12.1",
80
80
  "@envelop/testing": "^6.0.0",
81
- "@faststore/cli": "^2.2.56",
82
- "@faststore/eslint-config": "^2.2.56",
81
+ "@faststore/cli": "^2.2.69",
82
+ "@faststore/eslint-config": "^2.2.69",
83
83
  "@faststore/lighthouse": "^1.12.32",
84
84
  "@lhci/cli": "^0.9.0",
85
85
  "@testing-library/cypress": "^10.0.1",
@@ -123,5 +123,5 @@
123
123
  "node": "18.19.0",
124
124
  "yarn": "1.19.1"
125
125
  },
126
- "gitHead": "2e3616dde052d47d898067f985b4b0e067311495"
126
+ "gitHead": "e02c08e29d5a183ddc461a6da61ac4b9243c098a"
127
127
  }
@@ -1,6 +1,9 @@
1
- import { BannerTextProps } from 'src/components/sections/BannerText'
2
1
  import { OverriddenDefaultBannerText as BannerText } from 'src/components/sections/BannerText/OverriddenDefaultBannerText'
3
- import Newsletter, { NewsletterProps } from 'src/components/sections/Newsletter'
2
+ import type { BannerTextProps } from 'src/components/sections/BannerText'
3
+
4
+ import { OverriddenDefaultNewsletter as Newsletter } from 'src/components/sections/Newsletter/OverriddenDefaultNewsletter'
5
+ import type { NewsletterProps } from 'src/components/sections/Newsletter'
6
+
4
7
  import Section from '../Section'
5
8
  import styles from './section.module.scss'
6
9
 
@@ -0,0 +1,25 @@
1
+ import {
2
+ Button as UIButton,
3
+ InputField as UIInputField,
4
+ Icon as UIIcon,
5
+ Newsletter as UINewsletter,
6
+ NewsletterContent as UINewsletterContent,
7
+ NewsletterForm as UINewsletterForm,
8
+ NewsletterHeader as UINewsletterHeader,
9
+ } from '@faststore/ui'
10
+
11
+ import { NewsletterAddendum as UINewsletterAddendum } from 'src/components/ui/Newsletter'
12
+
13
+ export const NewsletterDefaultComponents = {
14
+ Button: UIButton,
15
+ HeaderIcon: UIIcon,
16
+ InputFieldEmail: UIInputField,
17
+ InputFieldName: UIInputField,
18
+ Newsletter: UINewsletter,
19
+ NewsletterAddendum: UINewsletterAddendum,
20
+ NewsletterContent: UINewsletterContent,
21
+ NewsletterForm: UINewsletterForm,
22
+ NewsletterHeader: UINewsletterHeader,
23
+ ToastIconError: UIIcon,
24
+ ToastIconSuccess: UIIcon,
25
+ } as const
@@ -1,7 +1,6 @@
1
1
  import {
2
2
  NewsletterProps as UINewsletterProps,
3
3
  NewsletterAddendumProps as UINewsletterAddendumProps,
4
- NewsletterFormProps as UINewsletterFormProps,
5
4
  NewsletterHeaderProps as UINewsletterHeaderProps,
6
5
  } from '@faststore/ui'
7
6
 
@@ -74,7 +73,7 @@ export interface NewsletterProps {
74
73
  toastSubscribeError?: SubscribeMessage
75
74
  }
76
75
 
77
- const Newsletter = function Newsletter({
76
+ function Newsletter({
78
77
  icon,
79
78
  title,
80
79
  description,
@@ -0,0 +1,12 @@
1
+ import { override } from 'src/customizations/src/components/overrides/Newsletter'
2
+ import { getOverriddenSection } from 'src/sdk/overrides/getOverriddenSection'
3
+ import type { SectionOverrideDefinition } from 'src/typings/overridesDefinition'
4
+
5
+ /**
6
+ * This component exists to support overrides 1.0
7
+ *
8
+ * This allows users to override the default Newsletter section present in the Headless CMS
9
+ */
10
+ export const OverriddenDefaultNewsletter = getOverriddenSection(
11
+ override as SectionOverrideDefinition<'Newsletter'>
12
+ )
@@ -4,12 +4,12 @@ import type { Locator } from '@vtex/client-cms'
4
4
 
5
5
  import MissingContentError from 'src/sdk/error/MissingContentError/MissingContentError'
6
6
  import RenderSections from 'src/components/cms/RenderSections'
7
+ import { OverriddenDefaultBannerText as BannerText } from 'src/components/sections/BannerText/OverriddenDefaultBannerText'
7
8
  import { OverriddenDefaultHero as Hero } from 'src/components/sections/Hero/OverriddenDefaultHero'
8
- import Incentives from 'src/components/sections/Incentives'
9
+ import { OverriddenDefaultNewsletter as Newsletter } from 'src/components/sections/Newsletter/OverriddenDefaultNewsletter'
9
10
  import { OverriddenDefaultProductShelf as ProductShelf } from 'src/components/sections/ProductShelf/OverriddenDefaultProductShelf'
11
+ import Incentives from 'src/components/sections/Incentives'
10
12
  import ProductTiles from 'src/components/sections/ProductTiles'
11
- import { OverriddenDefaultBannerText as BannerText } from 'src/components/sections/BannerText/OverriddenDefaultBannerText'
12
- import Newsletter from 'src/components/sections/Newsletter'
13
13
  import { getPage } from 'src/server/cms'
14
14
  import type { PageContentType } from 'src/server/cms'
15
15
  import CUSTOM_COMPONENTS from 'src/customizations/src/components'
@@ -5,21 +5,9 @@ import { useUI } from '@faststore/ui'
5
5
  import type { InputFieldProps } from '@faststore/ui'
6
6
 
7
7
  import { useNewsletter } from 'src/sdk/newsletter/useNewsletter'
8
+ import { useOverrideComponents } from 'src/sdk/overrides/OverrideContext'
8
9
 
9
10
  import type { NewsletterProps as SectionNewsletterProps } from 'src/components/sections/Newsletter'
10
- import {
11
- Newsletter as NewsletterWrapper,
12
- NewsletterAddendum,
13
- NewsletterContent,
14
- NewsletterForm,
15
- NewsletterHeader,
16
- ToastIconSuccess,
17
- ToastIconError,
18
- HeaderIcon,
19
- InputFieldName,
20
- InputFieldEmail,
21
- Button,
22
- } from 'src/components/sections/Newsletter/Overrides'
23
11
 
24
12
  export type NewsletterProps = SectionNewsletterProps
25
13
 
@@ -38,6 +26,20 @@ function Newsletter({
38
26
  toastSubscribeError,
39
27
  colorVariant,
40
28
  }: NewsletterProps) {
29
+ const {
30
+ Button,
31
+ HeaderIcon,
32
+ InputFieldName,
33
+ InputFieldEmail,
34
+ Newsletter: NewsletterWrapper,
35
+ NewsletterAddendum,
36
+ NewsletterContent,
37
+ NewsletterForm,
38
+ NewsletterHeader,
39
+ ToastIconError,
40
+ ToastIconSuccess,
41
+ } = useOverrideComponents<'Newsletter'>()
42
+
41
43
  const { pushToast } = useUI()
42
44
  const { subscribeUser, loading, data } = useNewsletter()
43
45
 
@@ -1,2 +1,5 @@
1
1
  export { default } from './Newsletter'
2
2
  export type { NewsletterProps } from './Newsletter'
3
+
4
+ export { NewsletterAddendum } from './NewsletterAddendum'
5
+ export type { NewsletterAddendumProps } from './NewsletterAddendum'
@@ -6,9 +6,9 @@ import type { ComponentType } from 'react'
6
6
  import RenderSections from 'src/components/cms/RenderSections'
7
7
  import { OverriddenDefaultBannerText as BannerText } from 'src/components/sections/BannerText/OverriddenDefaultBannerText'
8
8
  import { OverriddenDefaultHero as Hero } from 'src/components/sections/Hero/OverriddenDefaultHero'
9
- import Incentives from 'src/components/sections/Incentives'
10
- import Newsletter from 'src/components/sections/Newsletter'
9
+ import { OverriddenDefaultNewsletter as Newsletter } from 'src/components/sections/Newsletter/OverriddenDefaultNewsletter'
11
10
  import { OverriddenDefaultProductShelf as ProductShelf } from 'src/components/sections/ProductShelf/OverriddenDefaultProductShelf'
11
+ import Incentives from 'src/components/sections/Incentives'
12
12
  import ProductTiles from 'src/components/sections/ProductTiles'
13
13
  import CUSTOM_COMPONENTS from 'src/customizations/src/components'
14
14
  import { mark } from 'src/sdk/tests/mark'
@@ -2,6 +2,7 @@ import Alert from '../../components/sections/Alert'
2
2
  import BannerText from '../../components/sections/BannerText'
3
3
  import Breadcrumb from '../../components/sections/Breadcrumb'
4
4
  import Hero from '../../components/sections/Hero'
5
+ import Newsletter from '../../components/sections/Newsletter'
5
6
  import ProductShelf from '../../components/sections/ProductShelf'
6
7
  import CrossSellingShelf from '../../components/sections/CrossSellingShelf'
7
8
  import ProductDetails from '../../components/sections/ProductDetails'
@@ -15,6 +16,7 @@ import { BannerTextDefaultComponents } from '../../components/sections/BannerTex
15
16
  import { BreadcrumbDefaultComponents } from 'src/components/sections/Breadcrumb/DefaultComponents'
16
17
  import { CrossSellingShelfDefaultComponents } from 'src/components/sections/CrossSellingShelf/DefaultComponents'
17
18
  import { HeroDefaultComponents } from '../../components/sections/Hero/DefaultComponents'
19
+ import { NewsletterDefaultComponents } from '../../components/sections/Newsletter/DefaultComponents'
18
20
  import { ProductDetailsDefaultComponents } from '../../components/sections/ProductDetails/DefaultComponents'
19
21
  import { ProductGalleryDefaultComponents } from '../../components/sections/ProductGallery/DefaultComponents'
20
22
  import { ProductShelfDefaultComponents } from '../../components/sections/ProductShelf/DefaultComponents'
@@ -26,6 +28,7 @@ export const Sections = {
26
28
  Breadcrumb,
27
29
  CrossSellingShelf,
28
30
  Hero,
31
+ Newsletter,
29
32
  ProductDetails,
30
33
  ProductGallery,
31
34
  ProductShelf,
@@ -43,6 +46,7 @@ export const DefaultComponents: Partial<
43
46
  Breadcrumb: BreadcrumbDefaultComponents,
44
47
  CrossSellingShelf: CrossSellingShelfDefaultComponents,
45
48
  Hero: HeroDefaultComponents,
49
+ Newsletter: NewsletterDefaultComponents,
46
50
  ProductDetails: ProductDetailsDefaultComponents,
47
51
  ProductGallery: ProductGalleryDefaultComponents,
48
52
  ProductShelf: ProductShelfDefaultComponents,
@@ -58,6 +58,7 @@ export type SupportedSectionsOverridesV2 = Pick<
58
58
  | 'Breadcrumb'
59
59
  | 'CrossSellingShelf'
60
60
  | 'Hero'
61
+ | 'Newsletter'
61
62
  | 'ProductShelf'
62
63
  | 'ProductDetails'
63
64
  | 'ProductGallery'