@stackshift-ui/navigation 6.0.10 → 6.0.12

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/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@stackshift-ui/navigation",
3
3
  "description": "",
4
- "version": "6.0.10",
4
+ "version": "6.0.12",
5
5
  "private": false,
6
6
  "sideEffects": false,
7
7
  "main": "./dist/index.js",
@@ -29,23 +29,23 @@
29
29
  "typescript": "^5.6.2",
30
30
  "vite-tsconfig-paths": "^5.0.1",
31
31
  "vitest": "^2.1.1",
32
- "@stackshift-ui/eslint-config": "6.0.7",
33
- "@stackshift-ui/typescript-config": "6.0.7"
32
+ "@stackshift-ui/typescript-config": "6.0.9",
33
+ "@stackshift-ui/eslint-config": "6.0.9"
34
34
  },
35
35
  "dependencies": {
36
36
  "@portabletext/react": "^3.1.0",
37
- "@stackshift-ui/scripts": "6.0.7",
38
- "@stackshift-ui/button": "6.0.8",
39
- "@stackshift-ui/system": "6.0.8",
40
- "@stackshift-ui/text": "6.0.8",
41
- "@stackshift-ui/link": "6.0.8",
42
- "@stackshift-ui/container": "6.0.8",
43
- "@stackshift-ui/image": "6.0.8",
44
- "@stackshift-ui/section": "6.0.8",
45
- "@stackshift-ui/flex": "6.0.8"
37
+ "@stackshift-ui/button": "6.0.10",
38
+ "@stackshift-ui/link": "6.0.10",
39
+ "@stackshift-ui/scripts": "6.0.9",
40
+ "@stackshift-ui/flex": "6.0.10",
41
+ "@stackshift-ui/system": "6.0.10",
42
+ "@stackshift-ui/image": "6.0.10",
43
+ "@stackshift-ui/section": "6.0.10",
44
+ "@stackshift-ui/text": "6.0.10",
45
+ "@stackshift-ui/container": "6.0.10"
46
46
  },
47
47
  "peerDependencies": {
48
- "@stackshift-ui/system": ">=6.0.8",
48
+ "@stackshift-ui/system": ">=6.0.10",
49
49
  "@types/react": "16.8 - 19",
50
50
  "next": "10 - 14",
51
51
  "react": "16.8 - 19",
@@ -22,7 +22,7 @@ export default function Navigation_A({
22
22
 
23
23
  return (
24
24
  <Section className="bg-background">
25
- <Flex align="center" justify="between" className="px-6 py-6">
25
+ <Flex align="center" justify="between" className="px-6 py-6" gap={4}>
26
26
  <LogoSection logo={logo} />
27
27
  <NavLinks links={links} />
28
28
  <Buttons primaryButton={primaryButton} secondaryButton={secondaryButton} />
@@ -43,20 +43,21 @@ function LogoSection({ logo }: { logo?: Logo }) {
43
43
  if (!logo) return null;
44
44
 
45
45
  return (
46
- <Link
47
- aria-label={`Go to ${logoLink(logo) === "/" ? "home page" : logoLink(logo)}`}
48
- className="text-3xl font-bold leading-none"
49
- href={logoLink(logo)}
50
- target={logo?.linkTarget}
51
- rel={logo?.linkTarget === "_blank" ? "noopener noreferrer" : ""}>
52
- <Image
53
- src={logo?.image}
54
- alt={logo?.alt ?? "navigation-logo"}
55
- width={50}
56
- height={50}
57
- className="text-3xl font-bold leading-none"
58
- />
59
- </Link>
46
+ <div className="w-full lg:w-1/5">
47
+ <Link
48
+ className="w-20 h-14 flex items-center"
49
+ aria-label={logoLink(logo) === "/" ? "Go to home page" : `Go to ${logoLink(logo)}`}
50
+ href={logoLink(logo)}
51
+ target={logo?.linkTarget}
52
+ rel={logo?.linkTarget === "_blank" ? "noopener noreferrer" : ""}>
53
+ <Image
54
+ className="w-fit h-full object-contain"
55
+ src={`${logo?.image}`}
56
+ sizes="(max-width: 768px) 100vw, (max-width: 1200px) 50vw, 33vw"
57
+ alt={logo?.alt ?? "navigation-logo"}
58
+ />
59
+ </Link>
60
+ </div>
60
61
  );
61
62
  }
62
63
 
@@ -84,7 +85,7 @@ function NavLinks({ links }: { links?: LabeledRouteWithKey[] }) {
84
85
 
85
86
  return (
86
87
  <Flex>
87
- <ul className="hidden lg:flex lg:items-center lg:space-x-6">
88
+ <ul className="hidden lg:flex lg:items-center lg:gap-5 xl:gap-10">
88
89
  {links?.map((link: any, index: number) => (
89
90
  <React.Fragment key={index}>
90
91
  <NavItem link={link} key={link._key} />
@@ -205,14 +206,14 @@ function Buttons({
205
206
  secondaryButton?: LabeledRoute;
206
207
  }) {
207
208
  return (
208
- <Flex gap={4}>
209
+ <Flex align="center" gap={4}>
209
210
  {primaryButton?.label ? (
210
211
  <Button
211
212
  as="link"
212
213
  link={primaryButton}
213
214
  ariaLabel={primaryButton?.label}
214
215
  variant="outline"
215
- className="hidden lg:flex px-4 py-3 mb-2 leading-loose text-center font-semibold text-gray-900 rounded-global bg-secondary hover:bg-secondary/50">
216
+ className="hidden lg:flex px-4 py-3 leading-loose text-center font-semibold text-gray-900 rounded-global bg-secondary hover:bg-secondary/50">
216
217
  {primaryButton?.label}
217
218
  </Button>
218
219
  ) : null}
@@ -222,7 +223,7 @@ function Buttons({
222
223
  link={secondaryButton}
223
224
  ariaLabel={secondaryButton?.label}
224
225
  variant="solid"
225
- className="hidden lg:flex px-4 py-3 mb-2 leading-loose text-center font-semibold text-white bg-primary hover:bg-primary-foreground rounded-global">
226
+ className="hidden lg:flex px-4 py-3 leading-loose text-center font-semibold text-white bg-primary hover:bg-primary-foreground rounded-global">
226
227
  {secondaryButton?.label}
227
228
  </Button>
228
229
  ) : null}
@@ -24,8 +24,8 @@ export default function Navigation_B({
24
24
  return (
25
25
  <Section className="bg-background">
26
26
  <nav className="relative py-6">
27
- <Container maxWidth={1000}>
28
- <Flex align="center" justify="between">
27
+ <Container maxWidth={1280}>
28
+ <Flex align="center" justify="between" gap={4}>
29
29
  <LogoSection logo={logo} />
30
30
  <MobileMenu showMenu={showMenu} />
31
31
  <NavLinks links={links} />
@@ -48,20 +48,21 @@ function LogoSection({ logo }: { logo?: Logo }) {
48
48
  if (!logo) return null;
49
49
 
50
50
  return (
51
- <Link
52
- aria-label={`Go to ${logoLink(logo) === "/" ? "home page" : logoLink(logo)}`}
53
- className="text-3xl font-bold leading-none"
54
- href={logoLink(logo)}
55
- target={logo?.linkTarget}
56
- rel={logo?.linkTarget === "_blank" ? "noopener noreferrer" : ""}>
57
- <Image
58
- src={logo?.image}
59
- alt={logo?.alt ?? "navigation-logo"}
60
- width={48}
61
- height={48}
62
- className="text-3xl font-bold leading-none"
63
- />
64
- </Link>
51
+ <div className="w-full lg:w-fit">
52
+ <Link
53
+ className="w-20 h-14 flex items-center"
54
+ aria-label={logoLink(logo) === "/" ? "Go to home page" : `Go to ${logoLink(logo)}`}
55
+ href={logoLink(logo)}
56
+ target={logo?.linkTarget}
57
+ rel={logo?.linkTarget === "_blank" ? "noopener noreferrer" : ""}>
58
+ <Image
59
+ className="w-fit h-full object-contain"
60
+ src={`${logo?.image}`}
61
+ sizes="(max-width: 768px) 100vw, (max-width: 1200px) 50vw, 33vw"
62
+ alt={logo?.alt ?? "navigation-logo"}
63
+ />
64
+ </Link>
65
+ </div>
65
66
  );
66
67
  }
67
68
 
@@ -69,14 +70,16 @@ function NavLinks({ links }: { links?: LabeledRouteWithKey[] }) {
69
70
  if (!links) return null;
70
71
 
71
72
  return (
72
- <ul className="absolute hidden transform -translate-x-1/2 -translate-y-1/2 left-1/2 top-1/2 lg:mx-auto lg:flex lg:w-auto lg:items-center lg:space-x-6">
73
- {links?.map((link, index) => (
74
- <React.Fragment key={index}>
75
- {link?.label && <NavItem link={link} key={index} />}
76
- {links.length !== index + 1 ? <NavIcon /> : null}
77
- </React.Fragment>
78
- ))}
79
- </ul>
73
+ <Flex>
74
+ <ul className="hidden lg:flex lg:items-center lg:gap-5 xl:gap-10">
75
+ {links?.map((link: any, index: number) => (
76
+ <React.Fragment key={index}>
77
+ <NavItem link={link} key={link._key} />
78
+ {links.length !== index + 1 ? <NavIcon /> : null}
79
+ </React.Fragment>
80
+ ))}
81
+ </ul>
82
+ </Flex>
80
83
  );
81
84
  }
82
85
 
@@ -123,13 +126,13 @@ function Buttons({
123
126
  secondaryButton?: LabeledRoute;
124
127
  }) {
125
128
  return (
126
- <React.Fragment>
129
+ <Flex align="center" gap={4}>
127
130
  {primaryButton?.label && (
128
131
  <Button
129
132
  as="link"
130
133
  ariaLabel={primaryButton?.label}
131
134
  link={primaryButton}
132
- className="hidden lg:inline-block px-4 py-3 mb-2 text-gray-900 lg:ml-auto lg:mr-3 font-semibold rounded-global bg-secondary hover:bg-secondary/50">
135
+ className="hidden lg:flex px-4 py-3 leading-loose text-center font-semibold text-gray-900 rounded-global bg-secondary hover:bg-secondary/50">
133
136
  {primaryButton?.label}
134
137
  </Button>
135
138
  )}
@@ -138,11 +141,11 @@ function Buttons({
138
141
  as="link"
139
142
  ariaLabel={secondaryButton?.label}
140
143
  link={secondaryButton}
141
- className="hidden lg:inline-block px-4 py-3 mb-2 leading-loose text-center text-white font-semibold bg-primary hover:bg-primary-foreground rounded-global">
144
+ className="hidden lg:flex px-4 py-3 leading-loose text-center font-semibold text-white bg-primary hover:bg-primary-foreground rounded-global">
142
145
  {secondaryButton?.label}
143
146
  </Button>
144
147
  )}
145
- </React.Fragment>
148
+ </Flex>
146
149
  );
147
150
  }
148
151
 
@@ -25,7 +25,7 @@ export default function Navigation_C({
25
25
  <Section className="bg-background">
26
26
  <nav className="relative py-6">
27
27
  <Container maxWidth={1280}>
28
- <Flex align="center">
28
+ <Flex align="center" justify="between" gap={4}>
29
29
  <NavLinks links={links} />
30
30
  <LogoSection logo={logo} />
31
31
  <Buttons primaryButton={primaryButton} secondaryButton={secondaryButton} />
@@ -48,14 +48,16 @@ function NavLinks({ links }: { links?: LabeledRouteWithKey[] }) {
48
48
  if (!links) return null;
49
49
 
50
50
  return (
51
- <ul className="hidden lg:flex lg:w-auto lg:items-center lg:space-x-6">
52
- {links?.map((link, index) => (
53
- <React.Fragment key={index}>
54
- {link?.label && <NavItem link={link} />}
55
- {links.length !== index + 1 ? <NavIcon /> : null}
56
- </React.Fragment>
57
- ))}
58
- </ul>
51
+ <Flex>
52
+ <ul className="hidden lg:flex lg:items-center lg:gap-5">
53
+ {links?.map((link, index) => (
54
+ <React.Fragment key={index}>
55
+ {link?.label && <NavItem link={link} />}
56
+ {links.length !== index + 1 ? <NavIcon /> : null}
57
+ </React.Fragment>
58
+ ))}
59
+ </ul>
60
+ </Flex>
59
61
  );
60
62
  }
61
63
 
@@ -98,19 +100,18 @@ function LogoSection({ logo }: { logo?: Logo }) {
98
100
  if (!logo) return null;
99
101
 
100
102
  return (
101
- <div className="lg:absolute lg:left-1/2 lg:top-1/2 lg:-translate-x-1/2 lg:-translate-y-1/2 lg:transform">
103
+ <div className="w-full lg:w-fit items-center justify-center">
102
104
  <Link
103
- aria-label={`Go to ${logoLink(logo) === "/" ? "home page" : logoLink(logo)}`}
104
- className="text-3xl font-bold leading-none"
105
+ className="w-20 h-14 flex justify-center items-center"
106
+ aria-label={logoLink(logo) === "/" ? "Go to home page" : `Go to ${logoLink(logo)}`}
105
107
  href={logoLink(logo)}
106
108
  target={logo?.linkTarget}
107
109
  rel={logo?.linkTarget === "_blank" ? "noopener noreferrer" : ""}>
108
110
  <Image
109
- src={logo?.image}
111
+ className="w-fit h-full object-contain"
112
+ src={`${logo?.image}`}
113
+ sizes="(max-width: 768px) 100vw, (max-width: 1200px) 50vw, 33vw"
110
114
  alt={logo?.alt ?? "navigation-logo"}
111
- width={60}
112
- height={60}
113
- className="text-3xl font-bold leading-none"
114
115
  />
115
116
  </Link>
116
117
  </div>
@@ -125,13 +126,13 @@ function Buttons({
125
126
  secondaryButton?: LabeledRoute;
126
127
  }) {
127
128
  return (
128
- <div className="hidden text-right lg:ml-auto lg:block lg:w-1/3">
129
+ <div className="hidden lg:text-right lg:block lg:w-1/3">
129
130
  {primaryButton?.label && (
130
131
  <Button
131
132
  as="link"
132
133
  ariaLabel={primaryButton?.label}
133
134
  link={primaryButton}
134
- className="hidden lg:inline-block px-4 py-3 mb-2 text-gray-900 lg:ml-auto lg:mr-3 font-semibold rounded-global bg-secondary hover:bg-secondary/50">
135
+ className="px-4 py-3 text-gray-900 lg:ml-auto lg:mr-3 font-semibold rounded-global bg-secondary hover:bg-secondary/50">
135
136
  {primaryButton?.label}
136
137
  </Button>
137
138
  )}
@@ -140,7 +141,7 @@ function Buttons({
140
141
  as="link"
141
142
  ariaLabel={secondaryButton?.label}
142
143
  link={secondaryButton}
143
- className="hidden lg:inline-block px-4 py-3 mb-2 leading-loose text-center text-white font-semibold bg-primary hover:bg-primary-foreground rounded-global">
144
+ className="px-4 py-3 leading-loose text-center text-white font-semibold bg-primary hover:bg-primary-foreground rounded-global">
144
145
  {secondaryButton?.label}
145
146
  </Button>
146
147
  )}
@@ -23,15 +23,13 @@ export default function Navigation_D({
23
23
 
24
24
  return (
25
25
  <Section className="bg-background">
26
- <nav className="relative px-6 py-6">
27
- <Container maxWidth={1000}>
28
- <Flex align="center" justify="between">
29
- <NavLinks links={links} />
30
- <LogoSection logo={logo} />
31
- <Buttons primaryButton={primaryButton} secondaryButton={secondaryButton} />
32
- <MobileMenu showMenu={showMenu} />
33
- </Flex>
34
- </Container>
26
+ <nav className="relative lg:px-6 py-6">
27
+ <Flex align="center" justify="between" gap={4}>
28
+ <NavLinks links={links} />
29
+ <LogoSection logo={logo} />
30
+ <Buttons primaryButton={primaryButton} secondaryButton={secondaryButton} />
31
+ <MobileMenu showMenu={showMenu} />
32
+ </Flex>
35
33
  </nav>
36
34
  <ResponsiveNavLinks
37
35
  menu={menu}
@@ -48,12 +46,12 @@ function NavLinks({ links }: { links?: LabeledRouteWithKey[] }) {
48
46
  if (!links) return null;
49
47
 
50
48
  return (
51
- <Flex className="hidden lg:flex" align="center">
52
- <ul className="flex space-x-5">
53
- {links.map((link, index) => (
49
+ <Flex>
50
+ <ul className="hidden lg:flex lg:items-center lg:gap-3 xl:gap-5">
51
+ {links?.map((link, index) => (
54
52
  <React.Fragment key={index}>
55
53
  {link?.label && <NavItem link={link} />}
56
- {links.length !== index + 1 && <NavIcon />}
54
+ {links.length !== index + 1 ? <NavIcon /> : null}
57
55
  </React.Fragment>
58
56
  ))}
59
57
  </ul>
@@ -100,22 +98,21 @@ function LogoSection({ logo }: { logo?: Logo }) {
100
98
  if (!logo) return null;
101
99
 
102
100
  return (
103
- <Flex className="flex-1 justify-start lg:justify-center">
101
+ <div className="w-full lg:w-fit items-center justify-center">
104
102
  <Link
105
- aria-label={`Go to ${logoLink(logo) === "/" ? "home page" : logoLink(logo)}`}
106
- className="text-3xl font-bold leading-none"
103
+ className="w-20 h-14 flex justify-center items-center"
104
+ aria-label={logoLink(logo) === "/" ? "Go to home page" : `Go to ${logoLink(logo)}`}
107
105
  href={logoLink(logo)}
108
106
  target={logo?.linkTarget}
109
107
  rel={logo?.linkTarget === "_blank" ? "noopener noreferrer" : ""}>
110
108
  <Image
111
- src={logo?.image}
109
+ className="w-fit h-full object-contain"
110
+ src={`${logo?.image}`}
111
+ sizes="(max-width: 768px) 100vw, (max-width: 1200px) 50vw, 33vw"
112
112
  alt={logo?.alt ?? "navigation-logo"}
113
- width={50}
114
- height={50}
115
- className="object-contain"
116
113
  />
117
114
  </Link>
118
- </Flex>
115
+ </div>
119
116
  );
120
117
  }
121
118
 
@@ -127,13 +124,13 @@ function Buttons({
127
124
  secondaryButton?: LabeledRoute;
128
125
  }) {
129
126
  return (
130
- <Flex className="hidden lg:flex justify-end space-x-4">
127
+ <div className="hidden lg:flex lg:gap-4">
131
128
  {primaryButton?.label && (
132
129
  <Button
133
130
  as="link"
134
131
  ariaLabel={primaryButton?.label}
135
132
  link={primaryButton}
136
- className="px-4 py-3 mb-2 leading-loose text-center text-gray-900 font-semibold rounded-global bg-secondary hover:bg-secondary/50">
133
+ className="px-4 py-3 leading-loose text-center text-gray-900 font-semibold rounded-global bg-secondary hover:bg-secondary/50">
137
134
  {primaryButton?.label}
138
135
  </Button>
139
136
  )}
@@ -142,11 +139,11 @@ function Buttons({
142
139
  as="link"
143
140
  ariaLabel={secondaryButton?.label}
144
141
  link={secondaryButton}
145
- className="px-4 py-3 mb-2 leading-loose text-center text-white font-semibold bg-primary hover:bg-primary-foreground rounded-global">
142
+ className="px-4 py-3 leading-loose text-center text-white font-semibold bg-primary hover:bg-primary-foreground rounded-global">
146
143
  {secondaryButton?.label}
147
144
  </Button>
148
145
  )}
149
- </Flex>
146
+ </div>
150
147
  );
151
148
  }
152
149
 
@@ -42,7 +42,7 @@ export default function Navigation_E({ banner, logo, links }: NavigationProps) {
42
42
  <LogoSection logo={logo} />
43
43
  <NavLinks links={links} />
44
44
  </Flex>
45
- <div className="items-center justify-end hidden mt-6 mr-12 lg:flex">
45
+ <div className="items-center hidden lg:flex lg:gap-10">
46
46
  <SearchButton showSearchBar={showSearchBar} setShowSearchBar={setShowSearchBar} />
47
47
  <SearchForm
48
48
  showSearchBar={showSearchBar}
@@ -120,13 +120,7 @@ function LogoSection({ logo }: { logo?: Logo }) {
120
120
  href={logoLink(logo)}
121
121
  target={logo?.linkTarget}
122
122
  rel={logo?.linkTarget === "_blank" ? "noopener noreferrer" : ""}>
123
- <Image
124
- src={logo?.image}
125
- alt={logo?.alt ?? "navigation-logo"}
126
- width={48}
127
- height={48}
128
- className="text-3xl font-bold leading-none"
129
- />
123
+ <Image src={logo?.image} width={48} height={48} alt={logo?.alt ?? "navigation-logo"} />
130
124
  </Link>
131
125
  );
132
126
  }
@@ -135,7 +129,7 @@ function NavLinks({ links }: { links?: LabeledRouteWithKey[] }) {
135
129
  if (!links) return null;
136
130
 
137
131
  return (
138
- <ul className="hidden lg:flex lg:w-auto lg:items-center lg:space-x-5">
132
+ <ul className="hidden transform main-nav top-1/2 lg:flex lg:gap-10 lg:justify-center lg:items-center">
139
133
  {links.map((link, index) => (
140
134
  <Fragment key={index}>
141
135
  <NavItem link={link} />
@@ -180,13 +174,8 @@ function SearchButton({
180
174
  ariaLabel="Search button"
181
175
  type="button"
182
176
  onClick={() => setShowSearchBar(!showSearchBar)}>
183
- <svg
184
- width={24}
185
- height={24}
186
- xmlns="http://www.w3.org/2000/svg"
187
- fillRule="evenodd"
188
- clipRule="evenodd">
189
- <path d="M15.853 16.56c-1.683 1.517-3.911 2.44-6.353 2.44-5.243 0-9.5-4.257-9.5-9.5s4.257-9.5 9.5-9.5 9.5 4.257 9.5 9.5c0 2.442-.923 4.67-2.44 6.353l7.44 7.44-.707.707-7.44-7.44zm-6.353-15.56c4.691 0 8.5 3.809 8.5 8.5s-3.809 8.5-8.5 8.5-8.5-3.809-8.5-8.5 3.809-8.5 8.5-8.5z" />
177
+ <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24">
178
+ <path d="M23.809 21.646l-6.205-6.205c1.167-1.605 1.857-3.579 1.857-5.711 0-5.365-4.365-9.73-9.731-9.73-5.365 0-9.73 4.365-9.73 9.73 0 5.366 4.365 9.73 9.73 9.73 2.034 0 3.923-.627 5.487-1.698l6.238 6.238 2.354-2.354zm-20.955-11.916c0-3.792 3.085-6.877 6.877-6.877s6.877 3.085 6.877 6.877-3.085 6.877-6.877 6.877c-3.793 0-6.877-3.085-6.877-6.877z" />
190
179
  </svg>
191
180
  </Button>
192
181
  );
@@ -234,16 +223,8 @@ function SearchForm({
234
223
  }`}
235
224
  disabled={productQuery === ""}
236
225
  type="submit">
237
- <svg
238
- width={7}
239
- height={12}
240
- viewBox="0 0 7 12"
241
- fill="none"
242
- xmlns="http://www.w3.org/2000/svg">
243
- <path
244
- d="M4.125 6.00252L0 1.87752L1.17801 0.699219L6.48102 6.00252L1.17801 11.3058L0 10.1275L4.125 6.00252Z"
245
- fill="white"
246
- />
226
+ <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24">
227
+ <path d="M23.809 21.646l-6.205-6.205c1.167-1.605 1.857-3.579 1.857-5.711 0-5.365-4.365-9.73-9.731-9.73-5.365 0-9.73 4.365-9.73 9.73 0 5.366 4.365 9.73 9.73 9.73 2.034 0 3.923-.627 5.487-1.698l6.238 6.238 2.354-2.354zm-20.955-11.916c0-3.792 3.085-6.877 6.877-6.877s6.877 3.085 6.877 6.877-3.085 6.877-6.877 6.877c-3.793 0-6.877-3.085-6.877-6.877z" />
247
228
  </svg>
248
229
  </Button>
249
230
  </form>
@@ -275,8 +256,16 @@ function MenuIcon({ showMenu }: { showMenu: () => void }) {
275
256
 
276
257
  function CartIcon() {
277
258
  return (
278
- <div className="mx-10 cart-icon cart-link">
279
- <div data-icon="BAG" className="ec-cart-widget" />
259
+ <div className="cart-icon cart-link">
260
+ <svg
261
+ data-icon="BAG"
262
+ className="ec-minicart__icon"
263
+ xmlns="http://www.w3.org/2000/svg"
264
+ width="24"
265
+ height="24"
266
+ viewBox="0 0 24 24">
267
+ <path d="M20 7h-4v-3c0-2.209-1.791-4-4-4s-4 1.791-4 4v3h-4l-2 17h20l-2-17zm-11-3c0-1.654 1.346-3 3-3s3 1.346 3 3v3h-6v-3zm-4.751 18l1.529-13h2.222v1.5c0 .276.224.5.5.5s.5-.224.5-.5v-1.5h6v1.5c0 .276.224.5.5.5s.5-.224.5-.5v-1.5h2.222l1.529 13h-15.502z" />
268
+ </svg>
280
269
  <a className="cart-link" href="/cart?store-page=cart" aria-label="Cart" />
281
270
  </div>
282
271
  );
@@ -284,27 +273,9 @@ function CartIcon() {
284
273
 
285
274
  function AccountIcon() {
286
275
  return (
287
- <a href="/cart?store-page=account">
288
- <svg
289
- width={32}
290
- height={31}
291
- viewBox="0 0 32 31"
292
- fill="none"
293
- xmlns="http://www.w3.org/2000/svg">
294
- <path
295
- d="M16.0006 16.3154C19.1303 16.3154 21.6673 13.799 21.6673 10.6948C21.6673 7.59064 19.1303 5.07422 16.0006 5.07422C12.871 5.07422 10.334 7.59064 10.334 10.6948C10.334 13.799 12.871 16.3154 16.0006 16.3154Z"
296
- stroke="currentColor"
297
- strokeWidth="1.5"
298
- strokeLinecap="round"
299
- strokeLinejoin="round"
300
- />
301
- <path
302
- d="M24.4225 23.8963C23.6678 22.3507 22.4756 21.0445 20.9845 20.1298C19.4934 19.2151 17.7647 18.7295 15.9998 18.7295C14.2349 18.7295 12.5063 19.2151 11.0152 20.1298C9.52406 21.0445 8.33179 22.3507 7.57715 23.8963"
303
- stroke="currentColor"
304
- strokeWidth="1.5"
305
- strokeLinecap="round"
306
- strokeLinejoin="round"
307
- />
276
+ <a aria-label="Account" href="/cart?store-page=account">
277
+ <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24">
278
+ <path d="M12 2c2.757 0 5 2.243 5 5.001 0 2.756-2.243 5-5 5s-5-2.244-5-5c0-2.758 2.243-5.001 5-5.001zm0-2c-3.866 0-7 3.134-7 7.001 0 3.865 3.134 7 7 7s7-3.135 7-7c0-3.867-3.134-7.001-7-7.001zm6.369 13.353c-.497.498-1.057.931-1.658 1.302 2.872 1.874 4.378 5.083 4.972 7.346h-19.387c.572-2.29 2.058-5.503 4.973-7.358-.603-.374-1.162-.811-1.658-1.312-4.258 3.072-5.611 8.506-5.611 10.669h24c0-2.142-1.44-7.557-5.631-10.647z" />
308
279
  </svg>
309
280
  </a>
310
281
  );