@netfoundry/docusaurus-theme 0.10.4 → 0.10.5

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 (31) hide show
  1. package/css/product-picker.css +56 -3
  2. package/css/vars.css +6 -4
  3. package/dist/css/product-picker.css +56 -3
  4. package/dist/css/vars.css +6 -4
  5. package/dist/src/components/icons/DiscourseIcon.d.ts +4 -3
  6. package/dist/src/components/icons/DiscourseIcon.d.ts.map +1 -1
  7. package/dist/src/components/icons/DiscourseIcon.js +5 -2
  8. package/dist/src/components/icons/DiscourseIcon.js.map +1 -1
  9. package/dist/src/components/icons/GitHubIcon.d.ts +2 -1
  10. package/dist/src/components/icons/GitHubIcon.d.ts.map +1 -1
  11. package/dist/src/components/icons/GitHubIcon.js +6 -2
  12. package/dist/src/components/icons/GitHubIcon.js.map +1 -1
  13. package/dist/src/components/icons/RedditIcon.d.ts +9 -0
  14. package/dist/src/components/icons/RedditIcon.d.ts.map +1 -0
  15. package/dist/src/components/icons/RedditIcon.js +10 -0
  16. package/dist/src/components/icons/RedditIcon.js.map +1 -0
  17. package/dist/src/components/icons/YouTubeIcon.d.ts +2 -1
  18. package/dist/src/components/icons/YouTubeIcon.d.ts.map +1 -1
  19. package/dist/src/components/icons/YouTubeIcon.js +8 -2
  20. package/dist/src/components/icons/YouTubeIcon.js.map +1 -1
  21. package/dist/src/components/icons/index.d.ts +1 -0
  22. package/dist/src/components/icons/index.d.ts.map +1 -1
  23. package/dist/src/components/icons/index.js +1 -0
  24. package/dist/src/components/icons/index.js.map +1 -1
  25. package/dist/src/options.d.ts +3 -1
  26. package/dist/src/options.d.ts.map +1 -1
  27. package/dist/theme/NavbarItem/types/IconLinks/index.d.ts.map +1 -1
  28. package/dist/theme/NavbarItem/types/IconLinks/index.js +28 -7
  29. package/dist/theme/NavbarItem/types/IconLinks/index.js.map +1 -1
  30. package/package.json +1 -1
  31. package/theme/NavbarItem/types/IconLinks/index.tsx +44 -11
@@ -191,11 +191,14 @@
191
191
  .nf-picker-panel--narrow .picker-link span { white-space: nowrap; }
192
192
 
193
193
  /* ── Navbar icon links (GitHub, Discourse) ──────────────────────────────── */
194
+ /* DEBUG: green border on circle icons */
195
+ .nf-icon-link[data-border] { box-shadow: 0 0 0 var(--nf-icon-link-border) var(--nf-icon-link-border-color); transition: box-shadow 0.15s ease; }
196
+ .nf-icon-link[data-border]:hover { box-shadow: 0 0 0 var(--nf-icon-link-border) var(--nf-icon-link-border-color-hover, #333); }
194
197
  .nf-icon-links {
195
198
  display: flex;
196
199
  align-items: center;
197
- gap: var(--nf-icon-links-gap, 0.25rem);
198
- padding: var(--nf-icon-links-padding, 0 0.5rem);
200
+ gap: var(--nf-icon-link-gap, 0.5rem);
201
+ padding: 0 var(--nf-icon-link-gap, 0.5rem);
199
202
  }
200
203
 
201
204
  .nf-icon-link,
@@ -205,7 +208,7 @@
205
208
  justify-content: center;
206
209
  width: var(--nf-icon-link-size, 2rem);
207
210
  height: var(--nf-icon-link-size, 2rem);
208
- color: var(--ifm-navbar-link-color);
211
+ color: var(--nf-icon-link-color, var(--ifm-navbar-link-color));
209
212
  text-decoration: none;
210
213
  }
211
214
 
@@ -214,6 +217,56 @@
214
217
  text-decoration: none;
215
218
  }
216
219
 
220
+ /* Circle icons: uniform element size */
221
+ .nf-icon-link[data-circle],
222
+ .nf-icon-link[data-circle]:visited { width: 1.5rem; height: 1.5rem; border-radius: 50%; }
223
+ .nf-icon-link[data-circle]:not(.nf-icon-link--discourse),
224
+ .nf-icon-link[data-circle]:not(.nf-icon-link--discourse):visited { overflow: hidden; }
225
+
226
+ /* CSS-drawn circle: for icons whose SVG doesn't include its own circle */
227
+ .nf-icon-link[data-css-circle],
228
+ .nf-icon-link[data-css-circle]:visited {
229
+ background: var(--nf-icon-link-circle-bg, var(--nf-icon-link-color, var(--ifm-navbar-link-color)));
230
+ color: #fff;
231
+ border: none;
232
+ border-radius: 50%;
233
+ overflow: hidden;
234
+ transition: background-color 0.15s ease, color 0.15s ease;
235
+ }
236
+
237
+ /* Uninvert on hover: dark circle at rest, transparent + primary color on hover */
238
+ .nf-icon-link[data-uninvert] {
239
+ background: var(--nf-icon-link-invert-bg, #24292e);
240
+ color: #fff;
241
+ border: none;
242
+ border-radius: 50%;
243
+ overflow: hidden;
244
+ transition: background-color 0.15s ease, color 0.15s ease;
245
+ }
246
+ .nf-icon-link[data-uninvert]:hover {
247
+ background: transparent;
248
+ color: var(--nf-icon-link-color, var(--ifm-navbar-link-color));
249
+ }
250
+
251
+ /* Invert on hover: background-color directly on element, color flips white */
252
+ .nf-icon-link[data-invert] {
253
+ border: none;
254
+ border-radius: 50%;
255
+ overflow: hidden;
256
+ transition: background-color 0.15s ease, color 0.15s ease;
257
+ }
258
+ .nf-icon-link[data-invert]:hover {
259
+ background: var(--nf-icon-link-invert-bg, #24292e);
260
+ color: #fff;
261
+ }
262
+
263
+ /* Cross-fade: mono at rest → colored on hover (for icons with __mono/__colored spans) */
264
+ .nf-icon-link { position: relative; }
265
+ .nf-icon-link .nf-icon-link__mono { display: flex; align-items: center; justify-content: center; width: 100%; height: 100%; transition: opacity 0.15s ease; }
266
+ .nf-icon-link .nf-icon-link__colored { position: absolute; inset: 0; display: flex; align-items: center; justify-content: center; opacity: 0; transition: opacity 0.15s ease; }
267
+ .nf-icon-link:hover .nf-icon-link__mono { opacity: 0; }
268
+ .nf-icon-link:hover .nf-icon-link__colored { opacity: 1; }
269
+
217
270
  /* ── Mobile (<= 996 px) ─────────────────────────────────────────────────── */
218
271
  @media (max-width: 996px) {
219
272
  /* Fixed grid makes no sense in the narrow sidebar — hide the raw HTML blob */
package/css/vars.css CHANGED
@@ -3,11 +3,13 @@
3
3
  --ifm-navbar-padding-vertical: 0;
4
4
  --nf-docs-max-width: 1400px;
5
5
 
6
- --nf-icon-links-gap: 0.25rem;
7
- --nf-icon-links-padding: 0 0.5rem;
8
- --nf-icon-link-size: 2rem;
6
+ --nf-icon-link-size: 1.5rem;
7
+ --nf-icon-link-gap: 0.5rem;
8
+ --nf-icon-link-border: 2px;
9
+ --nf-icon-link-border-color: transparent;
10
+ --nf-icon-link-border-color-hover: #333;
9
11
 
10
- --nf-color-primary: 119, 194, 252;
12
+ --nf-color-primary: 119, 194, 252;
11
13
  --nf-color-secondary: 78, 219, 63;
12
14
  --nf-color-tertiary: 3, 92, 230;
13
15
 
@@ -191,11 +191,14 @@
191
191
  .nf-picker-panel--narrow .picker-link span { white-space: nowrap; }
192
192
 
193
193
  /* ── Navbar icon links (GitHub, Discourse) ──────────────────────────────── */
194
+ /* DEBUG: green border on circle icons */
195
+ .nf-icon-link[data-border] { box-shadow: 0 0 0 var(--nf-icon-link-border) var(--nf-icon-link-border-color); transition: box-shadow 0.15s ease; }
196
+ .nf-icon-link[data-border]:hover { box-shadow: 0 0 0 var(--nf-icon-link-border) var(--nf-icon-link-border-color-hover, #333); }
194
197
  .nf-icon-links {
195
198
  display: flex;
196
199
  align-items: center;
197
- gap: var(--nf-icon-links-gap, 0.25rem);
198
- padding: var(--nf-icon-links-padding, 0 0.5rem);
200
+ gap: var(--nf-icon-link-gap, 0.5rem);
201
+ padding: 0 var(--nf-icon-link-gap, 0.5rem);
199
202
  }
200
203
 
201
204
  .nf-icon-link,
@@ -205,7 +208,7 @@
205
208
  justify-content: center;
206
209
  width: var(--nf-icon-link-size, 2rem);
207
210
  height: var(--nf-icon-link-size, 2rem);
208
- color: var(--ifm-navbar-link-color);
211
+ color: var(--nf-icon-link-color, var(--ifm-navbar-link-color));
209
212
  text-decoration: none;
210
213
  }
211
214
 
@@ -214,6 +217,56 @@
214
217
  text-decoration: none;
215
218
  }
216
219
 
220
+ /* Circle icons: uniform element size */
221
+ .nf-icon-link[data-circle],
222
+ .nf-icon-link[data-circle]:visited { width: 1.5rem; height: 1.5rem; border-radius: 50%; }
223
+ .nf-icon-link[data-circle]:not(.nf-icon-link--discourse),
224
+ .nf-icon-link[data-circle]:not(.nf-icon-link--discourse):visited { overflow: hidden; }
225
+
226
+ /* CSS-drawn circle: for icons whose SVG doesn't include its own circle */
227
+ .nf-icon-link[data-css-circle],
228
+ .nf-icon-link[data-css-circle]:visited {
229
+ background: var(--nf-icon-link-circle-bg, var(--nf-icon-link-color, var(--ifm-navbar-link-color)));
230
+ color: #fff;
231
+ border: none;
232
+ border-radius: 50%;
233
+ overflow: hidden;
234
+ transition: background-color 0.15s ease, color 0.15s ease;
235
+ }
236
+
237
+ /* Uninvert on hover: dark circle at rest, transparent + primary color on hover */
238
+ .nf-icon-link[data-uninvert] {
239
+ background: var(--nf-icon-link-invert-bg, #24292e);
240
+ color: #fff;
241
+ border: none;
242
+ border-radius: 50%;
243
+ overflow: hidden;
244
+ transition: background-color 0.15s ease, color 0.15s ease;
245
+ }
246
+ .nf-icon-link[data-uninvert]:hover {
247
+ background: transparent;
248
+ color: var(--nf-icon-link-color, var(--ifm-navbar-link-color));
249
+ }
250
+
251
+ /* Invert on hover: background-color directly on element, color flips white */
252
+ .nf-icon-link[data-invert] {
253
+ border: none;
254
+ border-radius: 50%;
255
+ overflow: hidden;
256
+ transition: background-color 0.15s ease, color 0.15s ease;
257
+ }
258
+ .nf-icon-link[data-invert]:hover {
259
+ background: var(--nf-icon-link-invert-bg, #24292e);
260
+ color: #fff;
261
+ }
262
+
263
+ /* Cross-fade: mono at rest → colored on hover (for icons with __mono/__colored spans) */
264
+ .nf-icon-link { position: relative; }
265
+ .nf-icon-link .nf-icon-link__mono { display: flex; align-items: center; justify-content: center; width: 100%; height: 100%; transition: opacity 0.15s ease; }
266
+ .nf-icon-link .nf-icon-link__colored { position: absolute; inset: 0; display: flex; align-items: center; justify-content: center; opacity: 0; transition: opacity 0.15s ease; }
267
+ .nf-icon-link:hover .nf-icon-link__mono { opacity: 0; }
268
+ .nf-icon-link:hover .nf-icon-link__colored { opacity: 1; }
269
+
217
270
  /* ── Mobile (<= 996 px) ─────────────────────────────────────────────────── */
218
271
  @media (max-width: 996px) {
219
272
  /* Fixed grid makes no sense in the narrow sidebar — hide the raw HTML blob */
package/dist/css/vars.css CHANGED
@@ -3,11 +3,13 @@
3
3
  --ifm-navbar-padding-vertical: 0;
4
4
  --nf-docs-max-width: 1400px;
5
5
 
6
- --nf-icon-links-gap: 0.25rem;
7
- --nf-icon-links-padding: 0 0.5rem;
8
- --nf-icon-link-size: 2rem;
6
+ --nf-icon-link-size: 1.5rem;
7
+ --nf-icon-link-gap: 0.5rem;
8
+ --nf-icon-link-border: 2px;
9
+ --nf-icon-link-border-color: transparent;
10
+ --nf-icon-link-border-color-hover: #333;
9
11
 
10
- --nf-color-primary: 119, 194, 252;
12
+ --nf-color-primary: 119, 194, 252;
11
13
  --nf-color-secondary: 78, 219, 63;
12
14
  --nf-color-tertiary: 3, 92, 230;
13
15
 
@@ -1,8 +1,9 @@
1
1
  type Props = {
2
- width?: number;
3
- height?: number;
2
+ width?: number | string;
3
+ height?: number | string;
4
4
  className?: string;
5
+ colored?: boolean;
5
6
  };
6
- export default function DiscourseIcon({ width, height, className }: Props): import("react/jsx-runtime").JSX.Element;
7
+ export default function DiscourseIcon({ width, height, className, colored }: Props): import("react/jsx-runtime").JSX.Element;
7
8
  export {};
8
9
  //# sourceMappingURL=DiscourseIcon.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"DiscourseIcon.d.ts","sourceRoot":"","sources":["../../../../src/components/icons/DiscourseIcon.tsx"],"names":[],"mappings":"AAEA,KAAK,KAAK,GAAG;IAAE,KAAK,CAAC,EAAE,MAAM,CAAC;IAAC,MAAM,CAAC,EAAE,MAAM,CAAC;IAAC,SAAS,CAAC,EAAE,MAAM,CAAA;CAAE,CAAC;AAErE,MAAM,CAAC,OAAO,UAAU,aAAa,CAAC,EAAC,KAAU,EAAE,MAAW,EAAE,SAAS,EAAC,EAAE,KAAK,2CAWhF"}
1
+ {"version":3,"file":"DiscourseIcon.d.ts","sourceRoot":"","sources":["../../../../src/components/icons/DiscourseIcon.tsx"],"names":[],"mappings":"AAEA,KAAK,KAAK,GAAG;IAAE,KAAK,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;IAAC,MAAM,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;IAAC,SAAS,CAAC,EAAE,MAAM,CAAC;IAAC,OAAO,CAAC,EAAE,OAAO,CAAA;CAAE,CAAC;AAE1G,MAAM,CAAC,OAAO,UAAU,aAAa,CAAC,EAAC,KAAc,EAAE,MAAe,EAAE,SAAS,EAAE,OAAc,EAAC,EAAE,KAAK,2CAkBxG"}
@@ -1,5 +1,8 @@
1
1
  import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
- export default function DiscourseIcon({ width = 24, height = 24, className }) {
3
- return (_jsxs("svg", { xmlns: "http://www.w3.org/2000/svg", viewBox: "0 -1 104 106", width: width, height: height, className: className, children: [_jsx("path", { fill: "#231f20", d: "M51.87 0C23.71 0 0 22.83 0 51v52.81l51.86-.05c28.16 0 51-23.71 51-51.87S80 0 51.87 0Z" }), _jsx("path", { fill: "#fff9ae", d: "M52.37 19.74a31.62 31.62 0 0 0-27.79 46.67l-5.72 18.4 20.54-4.64a31.61 31.61 0 1 0 13-60.43Z" }), _jsx("path", { fill: "#00aeef", d: "M77.45 32.12a31.6 31.6 0 0 1-38.05 48l-20.54 4.7 20.91-2.47a31.6 31.6 0 0 0 37.68-50.23Z" }), _jsx("path", { fill: "#00a94f", d: "M71.63 26.29A31.6 31.6 0 0 1 38.8 78l-19.94 6.82 20.54-4.65a31.6 31.6 0 0 0 32.23-53.88Z" }), _jsx("path", { fill: "#f15d22", d: "M26.47 67.11a31.61 31.61 0 0 1 51-35 31.61 31.61 0 0 0-52.89 34.3l-5.72 18.4Z" }), _jsx("path", { fill: "#e31b23", d: "M24.58 66.41a31.61 31.61 0 0 1 47.05-40.12 31.61 31.61 0 0 0-49 39.63l-3.76 18.9Z" })] }));
2
+ export default function DiscourseIcon({ width = '100%', height = '100%', className, colored = true }) {
3
+ if (colored) {
4
+ return (_jsxs("svg", { xmlns: "http://www.w3.org/2000/svg", viewBox: "0 -1 104 106", width: width, height: height, className: className, children: [_jsx("path", { fill: "#231f20", d: "M51.87,0C23.71,0,0,22.83,0,51c0,.91,0,52.81,0,52.81l51.86-.05c28.16,0,51-23.71,51-51.87S80,0,51.87,0Z" }), _jsx("path", { fill: "#fff9ae", d: "M52.37,19.74A31.62,31.62,0,0,0,24.58,66.41l-5.72,18.4L39.4,80.17a31.61,31.61,0,1,0,13-60.43Z" }), _jsx("path", { fill: "#00aeef", d: "M77.45,32.12a31.6,31.6,0,0,1-38.05,48L18.86,84.82l20.91-2.47A31.6,31.6,0,0,0,77.45,32.12Z" }), _jsx("path", { fill: "#00a94f", d: "M71.63,26.29A31.6,31.6,0,0,1,38.8,78L18.86,84.82,39.4,80.17A31.6,31.6,0,0,0,71.63,26.29Z" }), _jsx("path", { fill: "#f15d22", d: "M26.47,67.11a31.61,31.61,0,0,1,51-35A31.61,31.61,0,0,0,24.58,66.41l-5.72,18.4Z" }), _jsx("path", { fill: "#e31b23", d: "M24.58,66.41A31.61,31.61,0,0,1,71.63,26.29a31.61,31.61,0,0,0-49,39.63l-3.76,18.9Z" })] }));
5
+ }
6
+ return (_jsx("svg", { xmlns: "http://www.w3.org/2000/svg", viewBox: "0 0 24 24", width: width, height: height, fill: "currentColor", className: className, children: _jsx("path", { d: "M12 0C5.373 0 0 5.373 0 12v12l3.18-.004C4.895 21.086 8.27 22.5 12 22.5c6.627 0 12-5.373 12-12S18.627 0 12 0zm0 4.5a7.5 7.5 0 0 1 4.33 13.598l-1.357 4.368-4.37-1.357A7.5 7.5 0 0 1 12 4.5z" }) }));
4
7
  }
5
8
  //# sourceMappingURL=DiscourseIcon.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"DiscourseIcon.js","sourceRoot":"","sources":["../../../../src/components/icons/DiscourseIcon.tsx"],"names":[],"mappings":";AAIA,MAAM,CAAC,OAAO,UAAU,aAAa,CAAC,EAAC,KAAK,GAAG,EAAE,EAAE,MAAM,GAAG,EAAE,EAAE,SAAS,EAAQ;IAC/E,OAAO,CACL,eAAK,KAAK,EAAC,4BAA4B,EAAC,OAAO,EAAC,cAAc,EAAC,KAAK,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,SAAS,EAAE,SAAS,aAC/G,eAAM,IAAI,EAAC,SAAS,EAAC,CAAC,EAAC,uFAAuF,GAAE,EAChH,eAAM,IAAI,EAAC,SAAS,EAAC,CAAC,EAAC,8FAA8F,GAAE,EACvH,eAAM,IAAI,EAAC,SAAS,EAAC,CAAC,EAAC,0FAA0F,GAAE,EACnH,eAAM,IAAI,EAAC,SAAS,EAAC,CAAC,EAAC,0FAA0F,GAAE,EACnH,eAAM,IAAI,EAAC,SAAS,EAAC,CAAC,EAAC,+EAA+E,GAAE,EACxG,eAAM,IAAI,EAAC,SAAS,EAAC,CAAC,EAAC,mFAAmF,GAAE,IACxG,CACP,CAAC;AACJ,CAAC"}
1
+ {"version":3,"file":"DiscourseIcon.js","sourceRoot":"","sources":["../../../../src/components/icons/DiscourseIcon.tsx"],"names":[],"mappings":";AAIA,MAAM,CAAC,OAAO,UAAU,aAAa,CAAC,EAAC,KAAK,GAAG,MAAM,EAAE,MAAM,GAAG,MAAM,EAAE,SAAS,EAAE,OAAO,GAAG,IAAI,EAAQ;IACvG,IAAI,OAAO,EAAE,CAAC;QACZ,OAAO,CACL,eAAK,KAAK,EAAC,4BAA4B,EAAC,OAAO,EAAC,cAAc,EAAC,KAAK,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,SAAS,EAAE,SAAS,aAC/G,eAAM,IAAI,EAAC,SAAS,EAAC,CAAC,EAAC,uGAAuG,GAAE,EAChI,eAAM,IAAI,EAAC,SAAS,EAAC,CAAC,EAAC,8FAA8F,GAAE,EACvH,eAAM,IAAI,EAAC,SAAS,EAAC,CAAC,EAAC,2FAA2F,GAAE,EACpH,eAAM,IAAI,EAAC,SAAS,EAAC,CAAC,EAAC,0FAA0F,GAAE,EACnH,eAAM,IAAI,EAAC,SAAS,EAAC,CAAC,EAAC,gFAAgF,GAAE,EACzG,eAAM,IAAI,EAAC,SAAS,EAAC,CAAC,EAAC,mFAAmF,GAAE,IACxG,CACP,CAAC;IACJ,CAAC;IACD,OAAO,CACL,cAAK,KAAK,EAAC,4BAA4B,EAAC,OAAO,EAAC,WAAW,EAAC,KAAK,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,IAAI,EAAC,cAAc,EAAC,SAAS,EAAE,SAAS,YAChI,eAAM,CAAC,EAAC,4LAA4L,GAAE,GAClM,CACP,CAAC;AACJ,CAAC"}
@@ -2,7 +2,8 @@ type Props = {
2
2
  width?: number;
3
3
  height?: number;
4
4
  className?: string;
5
+ colored?: boolean;
5
6
  };
6
- export default function GitHubIcon({ width, height, className }: Props): import("react/jsx-runtime").JSX.Element;
7
+ export default function GitHubIcon({ width, height, className, colored }: Props): import("react/jsx-runtime").JSX.Element;
7
8
  export {};
8
9
  //# sourceMappingURL=GitHubIcon.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"GitHubIcon.d.ts","sourceRoot":"","sources":["../../../../src/components/icons/GitHubIcon.tsx"],"names":[],"mappings":"AAEA,KAAK,KAAK,GAAG;IAAE,KAAK,CAAC,EAAE,MAAM,CAAC;IAAC,MAAM,CAAC,EAAE,MAAM,CAAC;IAAC,SAAS,CAAC,EAAE,MAAM,CAAA;CAAE,CAAC;AAErE,MAAM,CAAC,OAAO,UAAU,UAAU,CAAC,EAAC,KAAU,EAAE,MAAW,EAAE,SAAS,EAAC,EAAE,KAAK,2CAM7E"}
1
+ {"version":3,"file":"GitHubIcon.d.ts","sourceRoot":"","sources":["../../../../src/components/icons/GitHubIcon.tsx"],"names":[],"mappings":"AAEA,KAAK,KAAK,GAAG;IAAE,KAAK,CAAC,EAAE,MAAM,CAAC;IAAC,MAAM,CAAC,EAAE,MAAM,CAAC;IAAC,SAAS,CAAC,EAAE,MAAM,CAAC;IAAC,OAAO,CAAC,EAAE,OAAO,CAAA;CAAE,CAAC;AAIxF,MAAM,CAAC,OAAO,UAAU,UAAU,CAAC,EAAC,KAAU,EAAE,MAAW,EAAE,SAAS,EAAE,OAAe,EAAC,EAAE,KAAK,2CAa9F"}
@@ -1,5 +1,9 @@
1
1
  import { jsx as _jsx } from "react/jsx-runtime";
2
- export default function GitHubIcon({ width = 24, height = 24, className }) {
3
- return (_jsx("svg", { width: width, height: height, viewBox: "0 0 16 16", fill: "currentColor", xmlns: "http://www.w3.org/2000/svg", className: className, children: _jsx("path", { d: "M8 0C3.58 0 0 3.58 0 8c0 3.54 2.29 6.53 5.47 7.59.4.07.55-.17.55-.38 0-.19-.01-.82-.01-1.49-2.01.37-2.53-.49-2.69-.94-.09-.23-.48-.94-.82-1.13-.28-.15-.68-.52-.01-.53.63-.01 1.08.58 1.23.82.72 1.21 1.87.87 2.33.66.07-.52.28-.87.51-1.07-1.78-.2-3.64-.89-3.64-3.95 0-.87.31-1.59.82-2.15-.08-.2-.36-1.02.08-2.12 0 0 .67-.21 2.2.82.64-.18 1.32-.27 2-.27.68 0 1.36.09 2 .27 1.53-1.04 2.2-.82 2.2-.82.44 1.1.16 1.92.08 2.12.51.56.82 1.27.82 2.15 0 3.07-1.87 3.75-3.65 3.95.29.25.54.73.54 1.48 0 1.07-.01 1.93-.01 2.2 0 .21.15.46.55.38A8.013 8.013 0 0 0 16 8c0-4.42-3.58-8-8-8z" }) }));
2
+ const CAT = 'M8 0C3.58 0 0 3.58 0 8c0 3.54 2.29 6.53 5.47 7.59.4.07.55-.17.55-.38 0-.19-.01-.82-.01-1.49-2.01.37-2.53-.49-2.69-.94-.09-.23-.48-.94-.82-1.13-.28-.15-.68-.52-.01-.53.63-.01 1.08.58 1.23.82.72 1.21 1.87.87 2.33.66.07-.52.28-.87.51-1.07-1.78-.2-3.64-.89-3.64-3.95 0-.87.31-1.59.82-2.15-.08-.2-.36-1.02.08-2.12 0 0 .67-.21 2.2.82.64-.18 1.32-.27 2-.27.68 0 1.36.09 2 .27 1.53-1.04 2.2-.82 2.2-.82.44 1.1.16 1.92.08 2.12.51.56.82 1.27.82 2.15 0 3.07-1.87 3.75-3.65 3.95.29.25.54.73.54 1.48 0 1.07-.01 1.93-.01 2.2 0 .21.15.46.55.38A8.013 8.013 0 0 0 16 8c0-4.42-3.58-8-8-8z';
3
+ export default function GitHubIcon({ width = 22, height = 22, className, colored = false }) {
4
+ if (colored) {
5
+ return (_jsx("svg", { width: "100%", height: "100%", viewBox: "0 0 16 16", xmlns: "http://www.w3.org/2000/svg", className: className, children: _jsx("path", { d: CAT, fill: "white" }) }));
6
+ }
7
+ return (_jsx("svg", { width: "100%", height: "100%", viewBox: "0 0 16 16", fill: "currentColor", xmlns: "http://www.w3.org/2000/svg", className: className, children: _jsx("path", { d: CAT }) }));
4
8
  }
5
9
  //# sourceMappingURL=GitHubIcon.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"GitHubIcon.js","sourceRoot":"","sources":["../../../../src/components/icons/GitHubIcon.tsx"],"names":[],"mappings":";AAIA,MAAM,CAAC,OAAO,UAAU,UAAU,CAAC,EAAC,KAAK,GAAG,EAAE,EAAE,MAAM,GAAG,EAAE,EAAE,SAAS,EAAQ;IAC5E,OAAO,CACL,cAAK,KAAK,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,OAAO,EAAC,WAAW,EAAC,IAAI,EAAC,cAAc,EAAC,KAAK,EAAC,4BAA4B,EAAC,SAAS,EAAE,SAAS,YAChI,eAAM,CAAC,EAAC,4jBAA4jB,GAAE,GAClkB,CACP,CAAC;AACJ,CAAC"}
1
+ {"version":3,"file":"GitHubIcon.js","sourceRoot":"","sources":["../../../../src/components/icons/GitHubIcon.tsx"],"names":[],"mappings":";AAIA,MAAM,GAAG,GAAG,4jBAA4jB,CAAC;AAEzkB,MAAM,CAAC,OAAO,UAAU,UAAU,CAAC,EAAC,KAAK,GAAG,EAAE,EAAE,MAAM,GAAG,EAAE,EAAE,SAAS,EAAE,OAAO,GAAG,KAAK,EAAQ;IAC7F,IAAI,OAAO,EAAE,CAAC;QACZ,OAAO,CACL,cAAK,KAAK,EAAC,MAAM,EAAC,MAAM,EAAC,MAAM,EAAC,OAAO,EAAC,WAAW,EAAC,KAAK,EAAC,4BAA4B,EAAC,SAAS,EAAE,SAAS,YACzG,eAAM,CAAC,EAAE,GAAG,EAAE,IAAI,EAAC,OAAO,GAAE,GACxB,CACP,CAAC;IACJ,CAAC;IACD,OAAO,CACL,cAAK,KAAK,EAAC,MAAM,EAAC,MAAM,EAAC,MAAM,EAAC,OAAO,EAAC,WAAW,EAAC,IAAI,EAAC,cAAc,EAAC,KAAK,EAAC,4BAA4B,EAAC,SAAS,EAAE,SAAS,YAC7H,eAAM,CAAC,EAAE,GAAG,GAAG,GACX,CACP,CAAC;AACJ,CAAC"}
@@ -0,0 +1,9 @@
1
+ type Props = {
2
+ width?: number;
3
+ height?: number;
4
+ className?: string;
5
+ colored?: boolean;
6
+ };
7
+ export default function RedditIcon({ width, height, className, colored }: Props): import("react/jsx-runtime").JSX.Element;
8
+ export {};
9
+ //# sourceMappingURL=RedditIcon.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"RedditIcon.d.ts","sourceRoot":"","sources":["../../../../src/components/icons/RedditIcon.tsx"],"names":[],"mappings":"AAEA,KAAK,KAAK,GAAG;IAAE,KAAK,CAAC,EAAE,MAAM,CAAC;IAAC,MAAM,CAAC,EAAE,MAAM,CAAC;IAAC,SAAS,CAAC,EAAE,MAAM,CAAC;IAAC,OAAO,CAAC,EAAE,OAAO,CAAA;CAAE,CAAC;AAExF,MAAM,CAAC,OAAO,UAAU,UAAU,CAAC,EAAC,KAAU,EAAE,MAAW,EAAE,SAAS,EAAE,OAAc,EAAC,EAAE,KAAK,2CA2E7F"}
@@ -0,0 +1,10 @@
1
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
+ export default function RedditIcon({ width = 24, height = 24, className, colored = true }) {
3
+ if (!colored) {
4
+ // currentColor circle with Snoo body/ears/antenna/smile cut out as transparent.
5
+ // The "white" of the character shows whatever is behind the SVG — adapts to light/dark automatically.
6
+ return (_jsxs("svg", { viewBox: "0 0 256 256", xmlns: "http://www.w3.org/2000/svg", width: width, height: height, className: className, children: [_jsx("defs", { children: _jsxs("mask", { id: "reddit-snoo-mask", children: [_jsx("rect", { width: "256", height: "256", fill: "white" }), _jsx("path", { fill: "black", d: "M55.44 153.54C71.9478 153.54 85.33 140.158 85.33 123.65C85.33 107.142 71.9478 93.76 55.44 93.76C38.9322 93.76 25.55 107.142 25.55 123.65C25.55 140.158 38.9322 153.54 55.44 153.54Z" }), _jsx("path", { fill: "black", d: "M200.56 153.54C217.068 153.54 230.45 140.158 230.45 123.65C230.45 107.142 217.068 93.76 200.56 93.76C184.052 93.76 170.67 107.142 170.67 123.65C170.67 140.158 184.052 153.54 200.56 153.54Z" }), _jsx("path", { fill: "black", d: "M128.07 213.33C175.196 213.33 213.4 184.676 213.4 149.33C213.4 113.984 175.196 85.33 128.07 85.33C80.9435 85.33 42.74 113.984 42.74 149.33C42.74 184.676 80.9435 213.33 128.07 213.33Z" }), _jsx("path", { fill: "black", d: "M174.81 76.63C186.507 76.63 195.99 67.1474 195.99 55.45C195.99 43.7526 186.507 34.27 174.81 34.27C163.113 34.27 153.63 43.7526 153.63 55.45C153.63 67.1474 163.113 76.63 174.81 76.63Z" }), _jsx("path", { fill: "black", d: "M127.77 88.03C125.23 88.03 123.18 86.97 123.18 85.33C123.18 66.35 138.62 50.92 157.59 50.92C160.13 50.92 162.18 52.98 162.18 55.51C162.18 58.04 160.12 60.1 157.59 60.1C143.68 60.1 132.36 71.42 132.36 85.33C132.36 86.97 130.3 88.03 127.77 88.03Z" }), _jsx("path", { fill: "black", d: "M128.07 167.47C117.52 167.47 107.41 167.99 98.06 168.94C96.46 169.1 95.45 170.76 96.07 172.24C101.31 184.75 113.66 193.53 128.06 193.53C142.46 193.53 154.82 184.74 160.06 172.24C160.68 170.76 159.67 169.1 158.07 168.94C148.72 167.99 138.61 167.47 128.06 167.47H128.07Z" })] }) }), _jsx("circle", { cx: "128", cy: "128", r: "128", fill: "currentColor", mask: "url(#reddit-snoo-mask)" })] }));
7
+ }
8
+ return (_jsxs("svg", { viewBox: "0 0 256 256", xmlns: "http://www.w3.org/2000/svg", xmlnsXlink: "http://www.w3.org/1999/xlink", width: width, height: height, className: className, xmlSpace: "preserve", children: [_jsxs("g", { clipPath: "url(#clip0_2033_71574)", children: [_jsx("circle", { cx: "128", cy: "128", r: "128", fill: "#FF4500" }), _jsx("path", { d: "M55.44 153.54C71.9478 153.54 85.33 140.158 85.33 123.65C85.33 107.142 71.9478 93.76 55.44 93.76C38.9322 93.76 25.55 107.142 25.55 123.65C25.55 140.158 38.9322 153.54 55.44 153.54Z", fill: "url(#paint0_radial_2033_71574)" }), _jsx("path", { d: "M200.56 153.54C217.068 153.54 230.45 140.158 230.45 123.65C230.45 107.142 217.068 93.76 200.56 93.76C184.052 93.76 170.67 107.142 170.67 123.65C170.67 140.158 184.052 153.54 200.56 153.54Z", fill: "url(#paint1_radial_2033_71574)" }), _jsx("path", { d: "M128.07 213.33C175.196 213.33 213.4 184.676 213.4 149.33C213.4 113.984 175.196 85.33 128.07 85.33C80.9435 85.33 42.74 113.984 42.74 149.33C42.74 184.676 80.9435 213.33 128.07 213.33Z", fill: "url(#paint2_radial_2033_71574)" }), _jsx("path", { d: "M102.84 143.11C102.34 153.95 95.14 157.89 86.77 157.89C78.4 157.89 72 152.34 72.5 141.5C73 130.66 80.2 123.48 88.57 123.48C96.94 123.48 103.34 132.27 102.84 143.11Z", fill: "#842123" }), _jsx("path", { d: "M183.64 141.49C184.14 152.33 177.75 157.88 169.37 157.88C160.99 157.88 153.79 153.95 153.3 143.1C152.8 132.26 159.19 123.47 167.57 123.47C175.95 123.47 183.15 130.64 183.64 141.49Z", fill: "#842123" }), _jsx("path", { d: "M102.85 144.05C102.38 154.2 95.65 157.88 87.81 157.88C79.97 157.88 73.99 152.37 74.46 142.22C74.93 132.07 81.66 125.43 89.5 125.43C97.34 125.43 103.32 133.9 102.85 144.05Z", fill: "url(#paint3_radial_2033_71574)" }), _jsx("path", { d: "M166.65 125.44C174.49 125.44 181.22 132.08 181.69 142.23C182.16 152.38 176.18 157.89 168.34 157.89C160.5 157.89 153.77 154.21 153.3 144.06C152.83 133.91 158.81 125.44 166.65 125.44Z", fill: "url(#paint4_radial_2033_71574)" }), _jsx("path", { d: "M128.07 165.12C117.49 165.12 107.35 165.63 97.97 166.56C96.37 166.72 95.35 168.35 95.97 169.81C101.22 182.12 113.61 190.77 128.07 190.77C142.53 190.77 154.91 182.12 160.17 169.81C160.79 168.35 159.78 166.72 158.17 166.56C148.79 165.63 138.65 165.12 128.07 165.12Z", fill: "#BBCFDA" }), _jsx("path", { d: "M128.07 167.47C117.52 167.47 107.41 167.99 98.06 168.94C96.46 169.1 95.45 170.76 96.07 172.24C101.31 184.75 113.66 193.53 128.06 193.53C142.46 193.53 154.82 184.74 160.06 172.24C160.68 170.76 159.67 169.1 158.07 168.94C148.72 167.99 138.61 167.47 128.06 167.47H128.07Z", fill: "white" }), _jsx("path", { d: "M128.07 166.25C117.69 166.25 107.74 166.76 98.53 167.69C96.96 167.85 95.96 169.48 96.57 170.94C101.72 183.25 113.88 191.9 128.07 191.9C142.26 191.9 154.41 183.25 159.57 170.94C160.18 169.48 159.18 167.85 157.61 167.69C148.41 166.76 138.46 166.25 128.07 166.25Z", fill: "url(#paint5_radial_2033_71574)" }), _jsx("path", { d: "M174.81 76.63C186.507 76.63 195.99 67.1474 195.99 55.45C195.99 43.7526 186.507 34.27 174.81 34.27C163.113 34.27 153.63 43.7526 153.63 55.45C153.63 67.1474 163.113 76.63 174.81 76.63Z", fill: "url(#paint6_radial_2033_71574)" }), _jsx("path", { d: "M127.77 88.03C125.23 88.03 123.18 86.97 123.18 85.33C123.18 66.35 138.62 50.92 157.59 50.92C160.13 50.92 162.18 52.98 162.18 55.51C162.18 58.04 160.12 60.1 157.59 60.1C143.68 60.1 132.36 71.42 132.36 85.33C132.36 86.97 130.3 88.03 127.77 88.03Z", fill: "url(#paint7_radial_2033_71574)" }), _jsx("path", { d: "M97.27 149.07C97.27 153 93.09 154.76 87.94 154.76C82.79 154.76 78.61 153 78.61 149.07C78.61 145.14 82.79 141.96 87.94 141.96C93.09 141.96 97.27 145.14 97.27 149.07Z", fill: "#FF6101" }), _jsx("path", { d: "M177.54 149.07C177.54 153 173.36 154.76 168.21 154.76C163.06 154.76 158.88 153 158.88 149.07C158.88 145.14 163.06 141.96 168.21 141.96C173.36 141.96 177.54 145.14 177.54 149.07Z", fill: "#FF6101" }), _jsx("path", { d: "M94.38 138.41C96.2136 138.41 97.7 136.789 97.7 134.79C97.7 132.791 96.2136 131.17 94.38 131.17C92.5464 131.17 91.06 132.791 91.06 134.79C91.06 136.789 92.5464 138.41 94.38 138.41Z", fill: "#FFC49C" }), _jsx("path", { d: "M173.29 138.41C175.124 138.41 176.61 136.789 176.61 134.79C176.61 132.791 175.124 131.17 173.29 131.17C171.456 131.17 169.97 132.791 169.97 134.79C169.97 136.789 171.456 138.41 173.29 138.41Z", fill: "#FFC49C" })] }), _jsxs("defs", { children: [_jsxs("radialGradient", { id: "paint0_radial_2033_71574", cx: "0", cy: "0", r: "1", gradientUnits: "userSpaceOnUse", gradientTransform: "translate(57.1401 107.558) scale(59.9015 52.2545)", children: [_jsx("stop", { stopColor: "#FEFFFF" }), _jsx("stop", { offset: "0.4", stopColor: "#FEFFFF" }), _jsx("stop", { offset: "0.51", stopColor: "#F9FCFC" }), _jsx("stop", { offset: "0.62", stopColor: "#EDF3F5" }), _jsx("stop", { offset: "0.7", stopColor: "#DEE9EC" }), _jsx("stop", { offset: "0.72", stopColor: "#D8E4E8" }), _jsx("stop", { offset: "0.76", stopColor: "#CCD8DF" }), _jsx("stop", { offset: "0.8", stopColor: "#C8D5DD" }), _jsx("stop", { offset: "0.83", stopColor: "#CCD6DE" }), _jsx("stop", { offset: "0.85", stopColor: "#D8DBE2" }), _jsx("stop", { offset: "0.88", stopColor: "#EDE3E9" }), _jsx("stop", { offset: "0.9", stopColor: "#FFEBEF" })] }), _jsxs("radialGradient", { id: "paint1_radial_2033_71574", cx: "0", cy: "0", r: "1", gradientUnits: "userSpaceOnUse", gradientTransform: "translate(225.01 107.558) rotate(-180) scale(59.9015 52.2545)", children: [_jsx("stop", { stopColor: "#FEFFFF" }), _jsx("stop", { offset: "0.4", stopColor: "#FEFFFF" }), _jsx("stop", { offset: "0.51", stopColor: "#F9FCFC" }), _jsx("stop", { offset: "0.62", stopColor: "#EDF3F5" }), _jsx("stop", { offset: "0.7", stopColor: "#DEE9EC" }), _jsx("stop", { offset: "0.72", stopColor: "#D8E4E8" }), _jsx("stop", { offset: "0.76", stopColor: "#CCD8DF" }), _jsx("stop", { offset: "0.8", stopColor: "#C8D5DD" }), _jsx("stop", { offset: "0.83", stopColor: "#CCD6DE" }), _jsx("stop", { offset: "0.85", stopColor: "#D8DBE2" }), _jsx("stop", { offset: "0.88", stopColor: "#EDE3E9" }), _jsx("stop", { offset: "0.9", stopColor: "#FFEBEF" })] }), _jsxs("radialGradient", { id: "paint2_radial_2033_71574", cx: "0", cy: "0", r: "1", gradientUnits: "userSpaceOnUse", gradientTransform: "translate(130.347 99.1759) scale(180.687 126.865)", children: [_jsx("stop", { stopColor: "#FEFFFF" }), _jsx("stop", { offset: "0.4", stopColor: "#FEFFFF" }), _jsx("stop", { offset: "0.51", stopColor: "#F9FCFC" }), _jsx("stop", { offset: "0.62", stopColor: "#EDF3F5" }), _jsx("stop", { offset: "0.7", stopColor: "#DEE9EC" }), _jsx("stop", { offset: "0.72", stopColor: "#D8E4E8" }), _jsx("stop", { offset: "0.76", stopColor: "#CCD8DF" }), _jsx("stop", { offset: "0.8", stopColor: "#C8D5DD" }), _jsx("stop", { offset: "0.83", stopColor: "#CCD6DE" }), _jsx("stop", { offset: "0.85", stopColor: "#D8DBE2" }), _jsx("stop", { offset: "0.88", stopColor: "#EDE3E9" }), _jsx("stop", { offset: "0.9", stopColor: "#FFEBEF" })] }), _jsxs("radialGradient", { id: "paint3_radial_2033_71574", cx: "0", cy: "0", r: "1", gradientUnits: "userSpaceOnUse", gradientTransform: "translate(90.1905 150.971) scale(15.0964 22.1628)", children: [_jsx("stop", { stopColor: "#FF6600" }), _jsx("stop", { offset: "0.5", stopColor: "#FF4500" }), _jsx("stop", { offset: "0.7", stopColor: "#FC4301" }), _jsx("stop", { offset: "0.82", stopColor: "#F43F07" }), _jsx("stop", { offset: "0.92", stopColor: "#E53812" }), _jsx("stop", { offset: "1", stopColor: "#D4301F" })] }), _jsxs("radialGradient", { id: "paint4_radial_2033_71574", cx: "0", cy: "0", r: "1", gradientUnits: "userSpaceOnUse", gradientTransform: "translate(168.756 150.971) rotate(180) scale(15.0964 22.1628)", children: [_jsx("stop", { stopColor: "#FF6600" }), _jsx("stop", { offset: "0.5", stopColor: "#FF4500" }), _jsx("stop", { offset: "0.7", stopColor: "#FC4301" }), _jsx("stop", { offset: "0.82", stopColor: "#F43F07" }), _jsx("stop", { offset: "0.92", stopColor: "#E53812" }), _jsx("stop", { offset: "1", stopColor: "#D4301F" })] }), _jsxs("radialGradient", { id: "paint5_radial_2033_71574", cx: "0", cy: "0", r: "1", gradientUnits: "userSpaceOnUse", gradientTransform: "translate(128.369 194.908) scale(53.2322 35.1106)", children: [_jsx("stop", { stopColor: "#172E35" }), _jsx("stop", { offset: "0.29", stopColor: "#0E1C21" }), _jsx("stop", { offset: "0.73", stopColor: "#030708" }), _jsx("stop", { offset: "1" })] }), _jsxs("radialGradient", { id: "paint6_radial_2033_71574", cx: "0", cy: "0", r: "1", gradientUnits: "userSpaceOnUse", gradientTransform: "translate(175.312 34.1061) scale(46.7274 46.7274)", children: [_jsx("stop", { stopColor: "#FEFFFF" }), _jsx("stop", { offset: "0.4", stopColor: "#FEFFFF" }), _jsx("stop", { offset: "0.51", stopColor: "#F9FCFC" }), _jsx("stop", { offset: "0.62", stopColor: "#EDF3F5" }), _jsx("stop", { offset: "0.7", stopColor: "#DEE9EC" }), _jsx("stop", { offset: "0.72", stopColor: "#D8E4E8" }), _jsx("stop", { offset: "0.76", stopColor: "#CCD8DF" }), _jsx("stop", { offset: "0.8", stopColor: "#C8D5DD" }), _jsx("stop", { offset: "0.83", stopColor: "#CCD6DE" }), _jsx("stop", { offset: "0.85", stopColor: "#D8DBE2" }), _jsx("stop", { offset: "0.88", stopColor: "#EDE3E9" }), _jsx("stop", { offset: "0.9", stopColor: "#FFEBEF" })] }), _jsxs("radialGradient", { id: "paint7_radial_2033_71574", cx: "0", cy: "0", r: "1", gradientUnits: "userSpaceOnUse", gradientTransform: "translate(155.84 85.0459) scale(38.3003 38.3003)", children: [_jsx("stop", { offset: "0.48", stopColor: "#7A9299" }), _jsx("stop", { offset: "0.67", stopColor: "#172E35" }), _jsx("stop", { offset: "0.75" }), _jsx("stop", { offset: "0.82", stopColor: "#172E35" })] }), _jsx("clipPath", { id: "clip0_2033_71574", children: _jsx("rect", { width: "256", height: "256", fill: "white" }) })] })] }));
9
+ }
10
+ //# sourceMappingURL=RedditIcon.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"RedditIcon.js","sourceRoot":"","sources":["../../../../src/components/icons/RedditIcon.tsx"],"names":[],"mappings":"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"}
@@ -2,7 +2,8 @@ type Props = {
2
2
  width?: number;
3
3
  height?: number;
4
4
  className?: string;
5
+ colored?: boolean;
5
6
  };
6
- export default function YouTubeIcon({ width, height, className }: Props): import("react/jsx-runtime").JSX.Element;
7
+ export default function YouTubeIcon({ width, height, className, colored }: Props): import("react/jsx-runtime").JSX.Element;
7
8
  export {};
8
9
  //# sourceMappingURL=YouTubeIcon.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"YouTubeIcon.d.ts","sourceRoot":"","sources":["../../../../src/components/icons/YouTubeIcon.tsx"],"names":[],"mappings":"AAEA,KAAK,KAAK,GAAG;IAAE,KAAK,CAAC,EAAE,MAAM,CAAC;IAAC,MAAM,CAAC,EAAE,MAAM,CAAC;IAAC,SAAS,CAAC,EAAE,MAAM,CAAA;CAAE,CAAC;AAErE,MAAM,CAAC,OAAO,UAAU,WAAW,CAAC,EAAC,KAAU,EAAE,MAAW,EAAE,SAAS,EAAC,EAAE,KAAK,2CAO9E"}
1
+ {"version":3,"file":"YouTubeIcon.d.ts","sourceRoot":"","sources":["../../../../src/components/icons/YouTubeIcon.tsx"],"names":[],"mappings":"AAEA,KAAK,KAAK,GAAG;IAAE,KAAK,CAAC,EAAE,MAAM,CAAC;IAAC,MAAM,CAAC,EAAE,MAAM,CAAC;IAAC,SAAS,CAAC,EAAE,MAAM,CAAC;IAAC,OAAO,CAAC,EAAE,OAAO,CAAA;CAAE,CAAC;AAMxF,MAAM,CAAC,OAAO,UAAU,WAAW,CAAC,EAAC,KAAU,EAAE,MAAW,EAAE,SAAS,EAAE,OAAe,EAAC,EAAE,KAAK,2CAoB/F"}
@@ -1,5 +1,11 @@
1
1
  import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
- export default function YouTubeIcon({ width = 24, height = 24, className }) {
3
- return (_jsxs("svg", { viewBox: "0 0 24 24", xmlns: "http://www.w3.org/2000/svg", width: width, height: height, className: className, children: [_jsx("path", { d: "M22.54 6.42a2.78 2.78 0 0 0-1.95-1.97C18.88 4 12 4 12 4s-6.88 0-8.59.45A2.78 2.78 0 0 0 1.46 6.42 29 29 0 0 0 1 12a29 29 0 0 0 .46 5.58A2.78 2.78 0 0 0 3.41 19.6C5.12 20 12 20 12 20s6.88 0 8.59-.45a2.78 2.78 0 0 0 1.95-1.97A29 29 0 0 0 23 12a29 29 0 0 0-.46-5.58z", fill: "#ff0000" }), _jsx("polygon", { points: "9.75 15.02 15.5 12 9.75 8.98 9.75 15.02", fill: "white" })] }));
2
+ const VIEWBOX = '-3.5 -6.5 36 33';
3
+ const RECT = 'M14.4848 20C14.4848 20 23.5695 20 25.8229 19.4C27.0917 19.06 28.0459 18.08 28.3808 16.87C29 14.65 29 9.98 29 9.98C29 9.98 29 5.34 28.3808 3.14C28.0459 1.9 27.0917 0.94 25.8229 0.61C23.5695 0 14.4848 0 14.4848 0C14.4848 0 5.42037 0 3.17711 0.61C1.9286 0.94 0.954148 1.9 0.59888 3.14C0 5.34 0 9.98 0 9.98C0 9.98 0 14.65 0.59888 16.87C0.954148 18.08 1.9286 19.06 3.17711 19.4C5.42037 20 14.4848 20 14.4848 20Z';
4
+ const PLAY = 'M19 10L11.5 5.75V14.25L19 10Z';
5
+ export default function YouTubeIcon({ width = 18, height = 18, className, colored = false }) {
6
+ if (colored) {
7
+ return (_jsxs("svg", { viewBox: VIEWBOX, xmlns: "http://www.w3.org/2000/svg", width: "100%", height: "100%", className: className, children: [_jsx("path", { d: RECT, fill: "#FF0033" }), _jsx("path", { d: PLAY, fill: "white" })] }));
8
+ }
9
+ return (_jsxs("svg", { viewBox: VIEWBOX, xmlns: "http://www.w3.org/2000/svg", width: "100%", height: "100%", className: className, children: [_jsx("defs", { children: _jsxs("mask", { id: "yt-mask", children: [_jsx("rect", { x: "0", y: "-4.5", width: "29", height: "29", fill: "white" }), _jsx("path", { d: PLAY, fill: "black" })] }) }), _jsx("path", { d: RECT, fill: "currentColor", mask: "url(#yt-mask)" })] }));
4
10
  }
5
11
  //# sourceMappingURL=YouTubeIcon.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"YouTubeIcon.js","sourceRoot":"","sources":["../../../../src/components/icons/YouTubeIcon.tsx"],"names":[],"mappings":";AAIA,MAAM,CAAC,OAAO,UAAU,WAAW,CAAC,EAAC,KAAK,GAAG,EAAE,EAAE,MAAM,GAAG,EAAE,EAAE,SAAS,EAAQ;IAC7E,OAAO,CACL,eAAK,OAAO,EAAC,WAAW,EAAC,KAAK,EAAC,4BAA4B,EAAC,KAAK,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,SAAS,EAAE,SAAS,aAC5G,eAAM,CAAC,EAAC,yQAAyQ,EAAC,IAAI,EAAC,SAAS,GAAE,EAClS,kBAAS,MAAM,EAAC,yCAAyC,EAAC,IAAI,EAAC,OAAO,GAAE,IACpE,CACP,CAAC;AACJ,CAAC"}
1
+ {"version":3,"file":"YouTubeIcon.js","sourceRoot":"","sources":["../../../../src/components/icons/YouTubeIcon.tsx"],"names":[],"mappings":";AAIA,MAAM,OAAO,GAAG,iBAAiB,CAAC;AAClC,MAAM,IAAI,GAAM,wZAAwZ,CAAC;AACza,MAAM,IAAI,GAAM,+BAA+B,CAAC;AAEhD,MAAM,CAAC,OAAO,UAAU,WAAW,CAAC,EAAC,KAAK,GAAG,EAAE,EAAE,MAAM,GAAG,EAAE,EAAE,SAAS,EAAE,OAAO,GAAG,KAAK,EAAQ;IAC9F,IAAI,OAAO,EAAE,CAAC;QACZ,OAAO,CACL,eAAK,OAAO,EAAE,OAAO,EAAE,KAAK,EAAC,4BAA4B,EAAC,KAAK,EAAC,MAAM,EAAC,MAAM,EAAC,MAAM,EAAC,SAAS,EAAE,SAAS,aACvG,eAAM,CAAC,EAAE,IAAI,EAAE,IAAI,EAAC,SAAS,GAAE,EAC/B,eAAM,CAAC,EAAE,IAAI,EAAE,IAAI,EAAC,OAAO,GAAE,IACzB,CACP,CAAC;IACJ,CAAC;IACD,OAAO,CACL,eAAK,OAAO,EAAE,OAAO,EAAE,KAAK,EAAC,4BAA4B,EAAC,KAAK,EAAC,MAAM,EAAC,MAAM,EAAC,MAAM,EAAC,SAAS,EAAE,SAAS,aACvG,yBACE,gBAAM,EAAE,EAAC,SAAS,aAChB,eAAM,CAAC,EAAC,GAAG,EAAC,CAAC,EAAC,MAAM,EAAC,KAAK,EAAC,IAAI,EAAC,MAAM,EAAC,IAAI,EAAC,IAAI,EAAC,OAAO,GAAE,EAC1D,eAAM,CAAC,EAAE,IAAI,EAAE,IAAI,EAAC,OAAO,GAAE,IACxB,GACF,EACP,eAAM,CAAC,EAAE,IAAI,EAAE,IAAI,EAAC,cAAc,EAAC,IAAI,EAAC,eAAe,GAAE,IACrD,CACP,CAAC;AACJ,CAAC"}
@@ -1,5 +1,6 @@
1
1
  export { default as DiscourseIcon } from './DiscourseIcon';
2
2
  export { default as GitHubIcon } from './GitHubIcon';
3
+ export { default as RedditIcon } from './RedditIcon';
3
4
  export { default as XIcon } from './XIcon';
4
5
  export { default as YouTubeIcon } from './YouTubeIcon';
5
6
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/components/icons/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,OAAO,IAAI,aAAa,EAAC,MAAM,iBAAiB,CAAC;AACzD,OAAO,EAAC,OAAO,IAAI,UAAU,EAAC,MAAM,cAAc,CAAC;AACnD,OAAO,EAAC,OAAO,IAAI,KAAK,EAAC,MAAM,SAAS,CAAC;AACzC,OAAO,EAAC,OAAO,IAAI,WAAW,EAAC,MAAM,eAAe,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/components/icons/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,OAAO,IAAI,aAAa,EAAC,MAAM,iBAAiB,CAAC;AACzD,OAAO,EAAC,OAAO,IAAI,UAAU,EAAC,MAAM,cAAc,CAAC;AACnD,OAAO,EAAC,OAAO,IAAI,UAAU,EAAC,MAAM,cAAc,CAAC;AACnD,OAAO,EAAC,OAAO,IAAI,KAAK,EAAC,MAAM,SAAS,CAAC;AACzC,OAAO,EAAC,OAAO,IAAI,WAAW,EAAC,MAAM,eAAe,CAAC"}
@@ -1,5 +1,6 @@
1
1
  export { default as DiscourseIcon } from './DiscourseIcon';
2
2
  export { default as GitHubIcon } from './GitHubIcon';
3
+ export { default as RedditIcon } from './RedditIcon';
3
4
  export { default as XIcon } from './XIcon';
4
5
  export { default as YouTubeIcon } from './YouTubeIcon';
5
6
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/components/icons/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,OAAO,IAAI,aAAa,EAAC,MAAM,iBAAiB,CAAC;AACzD,OAAO,EAAC,OAAO,IAAI,UAAU,EAAC,MAAM,cAAc,CAAC;AACnD,OAAO,EAAC,OAAO,IAAI,KAAK,EAAC,MAAM,SAAS,CAAC;AACzC,OAAO,EAAC,OAAO,IAAI,WAAW,EAAC,MAAM,eAAe,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/components/icons/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,OAAO,IAAI,aAAa,EAAC,MAAM,iBAAiB,CAAC;AACzD,OAAO,EAAC,OAAO,IAAI,UAAU,EAAC,MAAM,cAAc,CAAC;AACnD,OAAO,EAAC,OAAO,IAAI,UAAU,EAAC,MAAM,cAAc,CAAC;AACnD,OAAO,EAAC,OAAO,IAAI,KAAK,EAAC,MAAM,SAAS,CAAC;AACzC,OAAO,EAAC,OAAO,IAAI,WAAW,EAAC,MAAM,eAAe,CAAC"}
@@ -39,7 +39,7 @@ export interface StarBannerConfig {
39
39
  /**
40
40
  * A named icon supported in navbar items (resources picker links, icon links, etc.)
41
41
  */
42
- export type NavbarIconName = 'discourse' | 'github' | 'youtube';
42
+ export type NavbarIconName = 'discourse' | 'github' | 'reddit' | 'x' | 'youtube';
43
43
  /**
44
44
  * A link inside a resources picker section
45
45
  */
@@ -70,6 +70,8 @@ export interface NavbarIconLink {
70
70
  iconName: NavbarIconName;
71
71
  /** Only show when the current path starts with one of these prefixes */
72
72
  pathPrefixes?: string[];
73
+ /** Show the icon in full brand colors. Defaults to true for discourse/reddit, false for others. */
74
+ colored?: boolean;
73
75
  }
74
76
  /**
75
77
  * A single link entry in the product picker
@@ -1 +1 @@
1
- {"version":3,"file":"options.d.ts","sourceRoot":"","sources":["../../src/options.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"options.d.ts","sourceRoot":"","sources":["../../src/options.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../theme/NavbarItem/types/IconLinks/index.tsx"],"names":[],"mappings":"AAmBA,MAAM,CAAC,OAAO,UAAU,SAAS,CAAC,MAAM,EAAE;IAAC,QAAQ,CAAC,EAAE,MAAM,GAAG,OAAO,CAAA;CAAC,2CAmBtE"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../theme/NavbarItem/types/IconLinks/index.tsx"],"names":[],"mappings":"AAkCA,MAAM,CAAC,OAAO,UAAU,SAAS,CAAC,MAAM,EAAE;IAAC,QAAQ,CAAC,EAAE,MAAM,GAAG,OAAO,CAAA;CAAC,2CAqCtE"}
@@ -1,19 +1,32 @@
1
- import { jsx as _jsx, Fragment as _Fragment } from "react/jsx-runtime";
1
+ import { jsx as _jsx, Fragment as _Fragment, jsxs as _jsxs } from "react/jsx-runtime";
2
2
  import { useThemeConfig } from '@docusaurus/theme-common';
3
3
  import { useLocation } from 'react-router-dom';
4
- import { DiscourseIcon, GitHubIcon, YouTubeIcon } from '@netfoundry/docusaurus-theme/ui';
4
+ import { DiscourseIcon, GitHubIcon, RedditIcon, XIcon, YouTubeIcon } from '@netfoundry/docusaurus-theme/ui';
5
5
  const DEFAULT_ICON_LINKS = [
6
6
  { href: 'https://openziti.discourse.group/', title: 'Discourse', iconName: 'discourse' },
7
7
  { href: 'https://github.com/openziti/ziti', title: 'GitHub', iconName: 'github', pathPrefixes: ['/docs/openziti'] },
8
8
  { href: 'https://github.com/openziti/zrok', title: 'GitHub', iconName: 'github', pathPrefixes: ['/docs/zrok'] },
9
9
  ];
10
- function resolveIcon(name) {
10
+ // Icons that cross-fade from mono → colored on hover
11
+ const FADES = new Set(['reddit', 'youtube']);
12
+ // Icons that need a CSS-drawn circle background (no circle in the SVG itself)
13
+ const CSS_CIRCLES = new Set(['youtube']);
14
+ // Icons that invert (circle appears, icon flips to white) on hover
15
+ const INVERTS = new Set(['github']);
16
+ const UNINVERTS = new Set(['x']);
17
+ // Icons that get a visible border ring
18
+ const BORDERS = new Set(['x', 'github']);
19
+ function resolveIcon(name, colored) {
11
20
  if (name === 'discourse')
12
- return _jsx(DiscourseIcon, {});
21
+ return _jsx(DiscourseIcon, { colored: colored ?? true });
13
22
  if (name === 'github')
14
- return _jsx(GitHubIcon, {});
23
+ return _jsx(GitHubIcon, { colored: colored ?? false });
24
+ if (name === 'reddit')
25
+ return _jsx(RedditIcon, { colored: colored ?? false });
26
+ if (name === 'x')
27
+ return _jsx(XIcon, {});
15
28
  if (name === 'youtube')
16
- return _jsx(YouTubeIcon, {});
29
+ return _jsx(YouTubeIcon, { colored: colored ?? false });
17
30
  return _jsx(_Fragment, {});
18
31
  }
19
32
  export default function IconLinks(_props) {
@@ -21,6 +34,14 @@ export default function IconLinks(_props) {
21
34
  const links = themeConfig?.netfoundry?.navbarIconLinks ?? DEFAULT_ICON_LINKS;
22
35
  const { pathname } = useLocation();
23
36
  const visible = links.filter(link => !link.pathPrefixes || link.pathPrefixes.some((p) => pathname.startsWith(p)));
24
- return (_jsx("div", { className: "nf-icon-links", children: visible.map((link, i) => (_jsx("a", { href: link.href, target: "_blank", rel: "noopener noreferrer", className: `nf-icon-link nf-icon-link--${link.iconName}`, title: link.title, children: resolveIcon(link.iconName) }, i))) }));
37
+ return (_jsx("div", { className: "nf-icon-links", children: visible.map((link, i) => {
38
+ const hasFade = FADES.has(link.iconName);
39
+ const isCssCir = CSS_CIRCLES.has(link.iconName);
40
+ const isInvert = INVERTS.has(link.iconName);
41
+ const isUninvert = UNINVERTS.has(link.iconName);
42
+ const isBorder = BORDERS.has(link.iconName);
43
+ const isCircle = true;
44
+ return (_jsx("a", { href: link.href, target: "_blank", rel: "noopener noreferrer", className: `nf-icon-link nf-icon-link--${link.iconName}`, title: link.title, ...(isCircle ? { 'data-circle': '' } : {}), ...(isCssCir ? { 'data-css-circle': '' } : {}), ...(isInvert ? { 'data-invert': '' } : {}), ...(isUninvert ? { 'data-uninvert': '' } : {}), ...(isBorder ? { 'data-border': '' } : {}), children: hasFade ? (_jsxs(_Fragment, { children: [_jsx("span", { className: "nf-icon-link__mono", children: resolveIcon(link.iconName, false) }), _jsx("span", { className: "nf-icon-link__colored", children: resolveIcon(link.iconName, true) })] })) : resolveIcon(link.iconName, link.colored) }, i));
45
+ }) }));
25
46
  }
26
47
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../theme/NavbarItem/types/IconLinks/index.tsx"],"names":[],"mappings":";AACA,OAAO,EAAC,cAAc,EAAC,MAAM,0BAA0B,CAAC;AACxD,OAAO,EAAC,WAAW,EAAC,MAAM,kBAAkB,CAAC;AAC7C,OAAO,EAAC,aAAa,EAAE,UAAU,EAAE,WAAW,EAAC,MAAM,iCAAiC,CAAC;AAGvF,MAAM,kBAAkB,GAAqB;IAC3C,EAAC,IAAI,EAAE,mCAAmC,EAAE,KAAK,EAAE,WAAW,EAAE,QAAQ,EAAE,WAAW,EAAC;IACtF,EAAC,IAAI,EAAE,kCAAkC,EAAG,KAAK,EAAE,QAAQ,EAAK,QAAQ,EAAE,QAAQ,EAAE,YAAY,EAAE,CAAC,gBAAgB,CAAC,EAAC;IACrH,EAAC,IAAI,EAAE,kCAAkC,EAAG,KAAK,EAAE,QAAQ,EAAK,QAAQ,EAAE,QAAQ,EAAE,YAAY,EAAE,CAAC,YAAY,CAAC,EAAC;CAClH,CAAC;AAEF,SAAS,WAAW,CAAC,IAAY;IAC/B,IAAI,IAAI,KAAK,WAAW;QAAE,OAAO,KAAC,aAAa,KAAG,CAAC;IACnD,IAAI,IAAI,KAAK,QAAQ;QAAK,OAAO,KAAC,UAAU,KAAG,CAAC;IAChD,IAAI,IAAI,KAAK,SAAS;QAAI,OAAO,KAAC,WAAW,KAAG,CAAC;IACjD,OAAO,mBAAK,CAAC;AACf,CAAC;AAED,MAAM,CAAC,OAAO,UAAU,SAAS,CAAC,MAAqC;IACrE,MAAM,WAAW,GAAG,cAAc,EAAS,CAAC;IAC5C,MAAM,KAAK,GAAqB,WAAW,EAAE,UAAU,EAAE,eAAe,IAAI,kBAAkB,CAAC;IAC/F,MAAM,EAAC,QAAQ,EAAC,GAAG,WAAW,EAAE,CAAC;IAEjC,MAAM,OAAO,GAAG,KAAK,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,CAClC,CAAC,IAAI,CAAC,YAAY,IAAI,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,CAAC,CAAS,EAAE,EAAE,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,CACpF,CAAC;IAEF,OAAO,CACL,cAAK,SAAS,EAAC,eAAe,YAC3B,OAAO,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,CAAC,EAAE,EAAE,CAAC,CACxB,YAAW,IAAI,EAAE,IAAI,CAAC,IAAI,EAAE,MAAM,EAAC,QAAQ,EAAC,GAAG,EAAC,qBAAqB,EAClE,SAAS,EAAE,8BAA8B,IAAI,CAAC,QAAQ,EAAE,EAAE,KAAK,EAAE,IAAI,CAAC,KAAK,YAC3E,WAAW,CAAC,IAAI,CAAC,QAAQ,CAAC,IAFrB,CAAC,CAGL,CACL,CAAC,GACE,CACP,CAAC;AACJ,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../theme/NavbarItem/types/IconLinks/index.tsx"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@netfoundry/docusaurus-theme",
3
- "version": "0.10.4",
3
+ "version": "0.10.5",
4
4
  "description": "NetFoundry Docusaurus theme with shared layout, footer, and styling",
5
5
  "main": "dist/src/index.js",
6
6
  "types": "dist/src/index.d.ts",
@@ -1,7 +1,7 @@
1
1
  import React from 'react';
2
2
  import {useThemeConfig} from '@docusaurus/theme-common';
3
3
  import {useLocation} from 'react-router-dom';
4
- import {DiscourseIcon, GitHubIcon, YouTubeIcon} from '@netfoundry/docusaurus-theme/ui';
4
+ import {DiscourseIcon, GitHubIcon, RedditIcon, XIcon, YouTubeIcon} from '@netfoundry/docusaurus-theme/ui';
5
5
  import type {NavbarIconLink} from '@netfoundry/docusaurus-theme';
6
6
 
7
7
  const DEFAULT_ICON_LINKS: NavbarIconLink[] = [
@@ -10,10 +10,25 @@ const DEFAULT_ICON_LINKS: NavbarIconLink[] = [
10
10
  {href: 'https://github.com/openziti/zrok', title: 'GitHub', iconName: 'github', pathPrefixes: ['/docs/zrok']},
11
11
  ];
12
12
 
13
- function resolveIcon(name: string): React.ReactElement {
14
- if (name === 'discourse') return <DiscourseIcon />;
15
- if (name === 'github') return <GitHubIcon />;
16
- if (name === 'youtube') return <YouTubeIcon />;
13
+ // Icons that cross-fade from mono → colored on hover
14
+ const FADES = new Set(['reddit', 'youtube']);
15
+
16
+ // Icons that need a CSS-drawn circle background (no circle in the SVG itself)
17
+ const CSS_CIRCLES = new Set(['youtube']);
18
+
19
+ // Icons that invert (circle appears, icon flips to white) on hover
20
+ const INVERTS = new Set<string>(['github']);
21
+ const UNINVERTS = new Set<string>(['x']);
22
+
23
+ // Icons that get a visible border ring
24
+ const BORDERS = new Set(['x', 'github']);
25
+
26
+ function resolveIcon(name: string, colored?: boolean): React.ReactElement {
27
+ if (name === 'discourse') return <DiscourseIcon colored={colored ?? true} />;
28
+ if (name === 'github') return <GitHubIcon colored={colored ?? false} />;
29
+ if (name === 'reddit') return <RedditIcon colored={colored ?? false} />;
30
+ if (name === 'x') return <XIcon />;
31
+ if (name === 'youtube') return <YouTubeIcon colored={colored ?? false} />;
17
32
  return <></>;
18
33
  }
19
34
 
@@ -28,12 +43,30 @@ export default function IconLinks(_props: {position?: 'left' | 'right'}) {
28
43
 
29
44
  return (
30
45
  <div className="nf-icon-links">
31
- {visible.map((link, i) => (
32
- <a key={i} href={link.href} target="_blank" rel="noopener noreferrer"
33
- className={`nf-icon-link nf-icon-link--${link.iconName}`} title={link.title}>
34
- {resolveIcon(link.iconName)}
35
- </a>
36
- ))}
46
+ {visible.map((link, i) => {
47
+ const hasFade = FADES.has(link.iconName);
48
+ const isCssCir = CSS_CIRCLES.has(link.iconName);
49
+ const isInvert = INVERTS.has(link.iconName);
50
+ const isUninvert = UNINVERTS.has(link.iconName);
51
+ const isBorder = BORDERS.has(link.iconName);
52
+ const isCircle = true;
53
+ return (
54
+ <a key={i} href={link.href} target="_blank" rel="noopener noreferrer"
55
+ className={`nf-icon-link nf-icon-link--${link.iconName}`} title={link.title}
56
+ {...(isCircle ? {'data-circle': ''} : {})}
57
+ {...(isCssCir ? {'data-css-circle': ''} : {})}
58
+ {...(isInvert ? {'data-invert': ''} : {})}
59
+ {...(isUninvert ? {'data-uninvert': ''} : {})}
60
+ {...(isBorder ? {'data-border': ''} : {})}>
61
+ {hasFade ? (
62
+ <>
63
+ <span className="nf-icon-link__mono">{resolveIcon(link.iconName, false)}</span>
64
+ <span className="nf-icon-link__colored">{resolveIcon(link.iconName, true)}</span>
65
+ </>
66
+ ) : resolveIcon(link.iconName, link.colored)}
67
+ </a>
68
+ );
69
+ })}
37
70
  </div>
38
71
  );
39
72
  }