@brillout/docpress 0.5.32 → 0.5.34

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/dist/index.d.ts CHANGED
@@ -60,8 +60,8 @@ type Config = {
60
60
  projectInfo: {
61
61
  githubRepository: string;
62
62
  githubIssues: string;
63
+ githubDiscussions?: string;
63
64
  projectName: string;
64
- projectNameJsx?: JSX.Element;
65
65
  projectVersion: string;
66
66
  discordInvite: string;
67
67
  twitterProfile: string;
@@ -142,6 +142,37 @@ declare function HorizontalLine({ primary }: {
142
142
  primary?: true;
143
143
  }): JSX.Element;
144
144
 
145
+ type Children = (string | JSX.Element) | (string | JSX.Element)[];
146
+ declare function SupporterSection({ children }: {
147
+ children?: Children;
148
+ }): JSX.Element;
149
+ declare function SectionDescription({ children }: {
150
+ children?: Children;
151
+ }): JSX.Element;
152
+ declare function Individuals({ children }: {
153
+ children?: Children;
154
+ }): JSX.Element;
155
+ declare function Supporter({ username, avatarUrl }: {
156
+ username: string;
157
+ avatarUrl?: string;
158
+ }): JSX.Element;
159
+ declare function SupporterImg({ imgSrc, // has precedence over avatarUrl
160
+ avatarUrl, // has precedence over username
161
+ username, imgAlt, width, height, padding }: {
162
+ imgSrc?: string;
163
+ avatarUrl?: string;
164
+ username?: string;
165
+ imgAlt?: string;
166
+ width: number;
167
+ height: number;
168
+ padding?: number;
169
+ }): JSX.Element;
170
+ declare function CallToAction({ iconUrl, text, href }: {
171
+ iconUrl: string;
172
+ text: string;
173
+ href: string;
174
+ }): JSX.Element;
175
+
145
176
  type Plan = 'indie' | 'bronze' | 'silver' | 'gold' | 'platinum';
146
177
  type SponsorCompany = {
147
178
  companyName: string;
@@ -162,6 +193,26 @@ type DivSize = {
162
193
  };
163
194
  declare function Sponsors(): JSX.Element;
164
195
 
196
+ declare const maintainers: ({
197
+ username: string;
198
+ firstName: string;
199
+ roles: JSX.Element[];
200
+ consultingUrl?: undefined;
201
+ } | {
202
+ username: string;
203
+ firstName: string;
204
+ roles: JSX.Element[];
205
+ consultingUrl: string;
206
+ })[];
207
+
208
+ declare function Contributors(): JSX.Element;
209
+ declare function Maintainer({ maintainer }: {
210
+ maintainer: (typeof maintainers)[0];
211
+ }): JSX.Element;
212
+
213
+ declare function Consulting(): JSX.Element;
214
+ declare function Consultants(): JSX.Element;
215
+
165
216
  type LineBreak = 'white-space' | 'break-word';
166
217
  declare function CodeBlockTransformer({ children, lineBreak }: {
167
218
  children: React$1.ReactNode;
@@ -172,4 +223,4 @@ declare function Comment({ children }: {
172
223
  children: React$1.ReactNode;
173
224
  }): JSX.Element;
174
225
 
175
- export { CodeBlockTransformer, Comment, Config, Construction, Danger, Emoji, EmojiName, HeadingDefinition, HeadingDetachedDefinition, HorizontalLine, ImportMeta, Link, NoteWithCustomIcon, NoteWithoutIcon, P, ReadingRecommendation, RepoLink, Sponsor, Sponsors, Warning, assert, assertUsage, assertWarning, crawlAllFiles, determineSectionTitle, determineSectionUrlHash, filter, isBrowser, isRepoLink, jsxToTextContent, objectAssign };
226
+ export { CallToAction, CodeBlockTransformer, Comment, Config, Construction, Consultants, Consulting, Contributors, Danger, Emoji, EmojiName, HeadingDefinition, HeadingDetachedDefinition, HorizontalLine, ImportMeta, Individuals, Link, Maintainer, NoteWithCustomIcon, NoteWithoutIcon, P, ReadingRecommendation, RepoLink, SectionDescription, Sponsor, Sponsors, Supporter, SupporterImg, SupporterSection, Warning, assert, assertUsage, assertWarning, crawlAllFiles, determineSectionTitle, determineSectionUrlHash, filter, isBrowser, isRepoLink, jsxToTextContent, objectAssign };
package/dist/index.js CHANGED
@@ -274,8 +274,108 @@ function HorizontalLine({ primary }) {
274
274
  }));
275
275
  }
276
276
 
277
- // src/components/Sponsors.tsx
277
+ // src/components/Supporters.tsx
278
278
  import React7 from "react";
279
+ function SupporterSection({ children }) {
280
+ return /* @__PURE__ */ React7.createElement("div", {
281
+ style: {
282
+ textAlign: "center",
283
+ marginTop: 19
284
+ }
285
+ }, children);
286
+ }
287
+ function SectionDescription({ children }) {
288
+ return /* @__PURE__ */ React7.createElement("div", {
289
+ style: {
290
+ maxWidth: 400,
291
+ display: "inline-block",
292
+ marginTop: 12,
293
+ marginBottom: 12
294
+ }
295
+ }, children);
296
+ }
297
+ function Individuals({ children }) {
298
+ return /* @__PURE__ */ React7.createElement("div", {
299
+ style: {
300
+ display: "flex",
301
+ flexWrap: "wrap",
302
+ justifyContent: "center",
303
+ alignItems: "end",
304
+ margin: "17px auto",
305
+ maxWidth: 700
306
+ }
307
+ }, children);
308
+ }
309
+ function Supporter({ username, avatarUrl }) {
310
+ const website = `https://github.com/${username}`;
311
+ const width = 30;
312
+ const height = 30;
313
+ const marginWidth = 5;
314
+ const marginHeight = 5;
315
+ return /* @__PURE__ */ React7.createElement("a", {
316
+ href: website,
317
+ style: {
318
+ margin: `${marginHeight}px ${marginWidth}px`
319
+ }
320
+ }, /* @__PURE__ */ React7.createElement("div", {
321
+ style: {
322
+ borderRadius: 7,
323
+ overflow: "hidden",
324
+ width,
325
+ height,
326
+ display: "flex",
327
+ alignItems: "center",
328
+ flexDirection: "column",
329
+ justifyContent: "center"
330
+ }
331
+ }, /* @__PURE__ */ React7.createElement(SupporterImg, {
332
+ ...{ username, avatarUrl, width, height }
333
+ })));
334
+ }
335
+ function SupporterImg({
336
+ imgSrc,
337
+ avatarUrl,
338
+ username,
339
+ imgAlt,
340
+ width,
341
+ height,
342
+ padding = 0
343
+ }) {
344
+ const size = Math.max(width, height);
345
+ if (avatarUrl) {
346
+ imgSrc = imgSrc || `${avatarUrl}&size=${size}`;
347
+ }
348
+ if (username) {
349
+ imgSrc = imgSrc || `https://github.com/${username}.png?size=${size}`;
350
+ imgAlt = imgAlt || username;
351
+ }
352
+ return /* @__PURE__ */ React7.createElement("img", {
353
+ style: { width: `calc(100% - ${padding}px)`, height: height - padding, zIndex: 2, objectFit: "contain" },
354
+ src: imgSrc,
355
+ alt: imgAlt
356
+ });
357
+ }
358
+ function CallToAction({ iconUrl, text, href }) {
359
+ return /* @__PURE__ */ React7.createElement("a", {
360
+ className: "button",
361
+ style: {
362
+ color: "inherit",
363
+ display: "inline-flex",
364
+ alignItems: "center",
365
+ padding: "5px 10px",
366
+ marginBottom: 10
367
+ },
368
+ href
369
+ }, /* @__PURE__ */ React7.createElement("img", {
370
+ src: iconUrl,
371
+ height: 22
372
+ }), " ", /* @__PURE__ */ React7.createElement("span", {
373
+ style: { marginLeft: 7, fontSize: "1.07em" }
374
+ }, text));
375
+ }
376
+
377
+ // src/components/Sponsors.tsx
378
+ import React8 from "react";
279
379
 
280
380
  // src/icons/heart.svg
281
381
  var heart_default = "/assets/heart-OINVKOXO.svg";
@@ -292,29 +392,34 @@ var medalBronze_default = "/assets/medalBronze-CO4CTUR4.svg";
292
392
  // src/components/Sponsors/label.svg
293
393
  var label_default = "/assets/label-MP75CTIA.svg";
294
394
 
295
- // src/components/Sponsors/companyLogos/contra.svg
395
+ // src/data/sponsorsList/companyLogos/contra.svg
296
396
  var contra_default = "/assets/contra-WLZBOPBV.svg";
297
397
 
298
- // src/components/Sponsors/companyLogos/optimizers.svg
398
+ // src/data/sponsorsList/companyLogos/optimizers.svg
299
399
  var optimizers_default = "/assets/optimizers-SFEZF3NW.svg";
300
400
 
301
- // src/components/Sponsors/companyLogos/sourcegraph.svg
401
+ // src/data/sponsorsList/companyLogos/sourcegraph.svg
302
402
  var sourcegraph_default = "/assets/sourcegraph-YR2HADLS.svg";
303
403
 
304
- // src/components/Sponsors/companyLogos/burdaforward.png
404
+ // src/data/sponsorsList/companyLogos/burdaforward.png
305
405
  var burdaforward_default = "/assets/burdaforward-EUGURYZY.png";
306
406
 
307
- // src/components/Sponsors/companyLogos/inlang.png
407
+ // src/data/sponsorsList/companyLogos/inlang.png
308
408
  var inlang_default = "/assets/inlang-GFRWND6X.png";
309
409
 
310
- // src/components/Sponsors/companyLogos/bluefin.svg
410
+ // src/data/sponsorsList/companyLogos/bluefin.svg
311
411
  var bluefin_default = "/assets/bluefin-JQABZFGV.svg";
312
412
 
313
- // src/components/Sponsors/companyLogos/alignable.svg
413
+ // src/data/sponsorsList/companyLogos/alignable.svg
314
414
  var alignable_default = "/assets/alignable-B4QZV4X7.svg";
315
415
 
316
- // src/components/Sponsors/sponsorsList.ts
416
+ // src/data/sponsorsList.ts
317
417
  var individuals = [
418
+ { username: "shishkin17" },
419
+ { username: "royalswe" },
420
+ { username: "lebretont" },
421
+ { username: "xar" },
422
+ { username: "NicoZweifel" },
318
423
  { username: "mariuslian" },
319
424
  { username: "shortpoet" },
320
425
  { username: "sqs" },
@@ -343,7 +448,6 @@ var individuals = [
343
448
  { username: "cookieplace" },
344
449
  { username: "JiangWeixian" },
345
450
  { username: "harrytran998" },
346
- { username: "royalswe" },
347
451
  { username: "alexturpin" },
348
452
  { username: "gu-stav" },
349
453
  { username: "YannBirba" },
@@ -385,6 +489,13 @@ var companies = [
385
489
  website: "https://contra.com",
386
490
  github: "contra"
387
491
  },
492
+ {
493
+ companyName: "Inlang",
494
+ companyLogo: inlang_default,
495
+ plan: "silver",
496
+ website: "https://inlang.com/",
497
+ github: "opral"
498
+ },
388
499
  {
389
500
  companyName: "Alignable",
390
501
  companyLogo: alignable_default,
@@ -416,13 +527,6 @@ var companies = [
416
527
  website: "https://www.burda-forward.de",
417
528
  github: "BurdaForward"
418
529
  },
419
- {
420
- companyName: "Inlang",
421
- companyLogo: inlang_default,
422
- plan: "indie",
423
- website: "https://inlang.com/",
424
- github: "inlang"
425
- },
426
530
  {
427
531
  companyName: "Bluefin",
428
532
  companyLogo: bluefin_default,
@@ -440,86 +544,47 @@ function Sponsors() {
440
544
  const sponsorGithubAccount = pageContext.config.sponsorGithubAccount || "brillout";
441
545
  const sponsorsCompanies = sponsorsList.filter(isCompany);
442
546
  const sponsorsIndividuals = sponsorsList.filter(isIndividual);
443
- return /* @__PURE__ */ React7.createElement("div", {
444
- style: { textAlign: "center", marginTop: 19 }
445
- }, /* @__PURE__ */ React7.createElement("a", {
446
- className: "button",
447
- href: `https://github.com/sponsors/${sponsorGithubAccount}`,
448
- style: {
449
- color: "inherit",
450
- display: "inline-flex",
451
- alignItems: "center",
452
- padding: "5px 10px",
453
- marginBottom: 10
454
- }
455
- }, /* @__PURE__ */ React7.createElement("img", {
456
- src: heart_default,
457
- height: 22
458
- }), " ", /* @__PURE__ */ React7.createElement("span", {
459
- style: { marginLeft: 7, fontSize: "1.07em" }
460
- }, "Sponsor")), /* @__PURE__ */ React7.createElement("div", null), /* @__PURE__ */ React7.createElement("div", {
461
- style: { maxWidth: 400, display: "inline-block", marginTop: 12, marginBottom: 12 }
462
- }, projectInfo.projectNameJsx || projectInfo.projectName, " is free and open source, made possible by wonderful sponsors."), /* @__PURE__ */ React7.createElement("div", {
547
+ return /* @__PURE__ */ React8.createElement(SupporterSection, null, /* @__PURE__ */ React8.createElement(CallToAction, {
548
+ iconUrl: heart_default,
549
+ text: "Sponsor",
550
+ href: `https://github.com/sponsors/${sponsorGithubAccount}`
551
+ }), /* @__PURE__ */ React8.createElement("div", null), /* @__PURE__ */ React8.createElement(SectionDescription, null, projectInfo.projectName, " is free and open source, made possible by wonderful sponsors."), /* @__PURE__ */ React8.createElement("div", {
463
552
  style: { display: "flex", flexWrap: "wrap", justifyContent: "space-evenly", alignItems: "end" }
464
- }, sponsorsCompanies.map((sponsor, i) => /* @__PURE__ */ React7.createElement(SponsorDiv, {
553
+ }, sponsorsCompanies.map((sponsor, i) => /* @__PURE__ */ React8.createElement(SponsorDiv, {
465
554
  sponsor,
466
555
  key: i
467
- }))), /* @__PURE__ */ React7.createElement("div", {
468
- style: {
469
- display: "flex",
470
- flexWrap: "wrap",
471
- justifyContent: "center",
472
- alignItems: "end",
473
- margin: "17px auto",
474
- maxWidth: 700
475
- }
476
- }, sponsorsIndividuals.map((sponsor, i) => /* @__PURE__ */ React7.createElement(SponsorDiv, {
556
+ }))), /* @__PURE__ */ React8.createElement(Individuals, null, sponsorsIndividuals.map((sponsor, i) => /* @__PURE__ */ React8.createElement(SponsorDiv, {
477
557
  sponsor,
478
558
  key: i
479
559
  }))));
480
560
  }
481
561
  function SponsorDiv({ sponsor }) {
482
- let imgSrc;
483
- let imgAlt;
484
- let width;
485
- let height;
486
- let website;
487
- let padding;
488
- let marginHeight;
489
- let marginWidth;
490
- let backgroundColor = "#f0f0f0";
491
- let label = null;
492
562
  if (isIndividual(sponsor)) {
493
- website = `https://github.com/${sponsor.username}`;
494
- imgSrc = `https://github.com/${sponsor.username}.png?size=30`;
495
- width = 30;
496
- height = 30;
497
- padding = 0;
498
- marginHeight = 5;
499
- marginWidth = 5;
500
- backgroundColor = "none";
501
- } else {
502
- imgSrc = sponsor.companyLogo;
503
- website = sponsor.website;
504
- const size = getSize(sponsor);
505
- width = size.width;
506
- height = size.height;
507
- padding = size.padding;
508
- imgAlt = sponsor.companyName;
509
- marginHeight = 20;
510
- marginWidth = 10;
511
- label = /* @__PURE__ */ React7.createElement(Label, {
512
- sponsor
563
+ return /* @__PURE__ */ React8.createElement(Supporter, {
564
+ username: sponsor.username
513
565
  });
514
566
  }
515
- return /* @__PURE__ */ React7.createElement("a", {
516
- href: website,
567
+ return /* @__PURE__ */ React8.createElement(CompanyDiv, {
568
+ sponsor
569
+ });
570
+ }
571
+ function CompanyDiv({ sponsor }) {
572
+ assert(isCompany(sponsor));
573
+ const imgSrc = sponsor.companyLogo;
574
+ const imgAlt = sponsor.companyName;
575
+ const { width, height, padding } = getSize(sponsor);
576
+ const marginHeight = 20;
577
+ const marginWidth = 10;
578
+ return /* @__PURE__ */ React8.createElement("a", {
579
+ href: sponsor.website,
517
580
  style: {
518
581
  margin: `${marginHeight}px ${marginWidth}px`
519
582
  }
520
- }, label, /* @__PURE__ */ React7.createElement("div", {
583
+ }, /* @__PURE__ */ React8.createElement(Label, {
584
+ sponsor
585
+ }), /* @__PURE__ */ React8.createElement("div", {
521
586
  style: {
522
- backgroundColor,
587
+ backgroundColor: "#f0f0f0",
523
588
  borderRadius: 7,
524
589
  overflow: "hidden",
525
590
  width,
@@ -530,10 +595,8 @@ function SponsorDiv({ sponsor }) {
530
595
  flexDirection: "column",
531
596
  justifyContent: "center"
532
597
  }
533
- }, /* @__PURE__ */ React7.createElement("img", {
534
- style: { width: `calc(100% - ${padding}px)`, height: height - padding, zIndex: 2, objectFit: "contain" },
535
- src: imgSrc,
536
- alt: imgAlt
598
+ }, /* @__PURE__ */ React8.createElement(SupporterImg, {
599
+ ...{ imgSrc, imgAlt, width, height, padding }
537
600
  })));
538
601
  }
539
602
  function Label({ sponsor }) {
@@ -541,7 +604,7 @@ function Label({ sponsor }) {
541
604
  const labelBg = getLabelBg(sponsor);
542
605
  const labelIcon = getLabelIcon(sponsor);
543
606
  const labelText = getLabelText(sponsor);
544
- return /* @__PURE__ */ React7.createElement("div", {
607
+ return /* @__PURE__ */ React8.createElement("div", {
545
608
  style: {
546
609
  top: 0,
547
610
  display: "flex",
@@ -554,20 +617,20 @@ function Label({ sponsor }) {
554
617
  }
555
618
  function getLabelBg(sponsor) {
556
619
  const height = sponsor.plan === "platinum" ? 32 : 24;
557
- return /* @__PURE__ */ React7.createElement("img", {
620
+ return /* @__PURE__ */ React8.createElement("img", {
558
621
  src: label_default,
559
622
  style: { height, position: "absolute", bottom: 0, zIndex: -1 }
560
623
  });
561
624
  }
562
625
  function getLabelText(sponsor) {
563
626
  if (sponsor.plan === "platinum") {
564
- return /* @__PURE__ */ React7.createElement(React7.Fragment, null);
627
+ return /* @__PURE__ */ React8.createElement(React8.Fragment, null);
565
628
  }
566
629
  let letterSpacing = void 0;
567
630
  if (["bronze", "silver", "gold", "indie"].includes(sponsor.plan)) {
568
631
  letterSpacing = 1;
569
632
  }
570
- return /* @__PURE__ */ React7.createElement(React7.Fragment, null, " ", /* @__PURE__ */ React7.createElement("span", {
633
+ return /* @__PURE__ */ React8.createElement(React8.Fragment, null, " ", /* @__PURE__ */ React8.createElement("span", {
571
634
  style: {
572
635
  zIndex: 1,
573
636
  fontSize: "0.82em",
@@ -582,12 +645,12 @@ function getLabelText(sponsor) {
582
645
  function getLabelIcon(sponsor) {
583
646
  let medalSrc;
584
647
  if (sponsor.plan === "platinum") {
585
- return /* @__PURE__ */ React7.createElement(Emoji, {
648
+ return /* @__PURE__ */ React8.createElement(Emoji, {
586
649
  name: "trophy",
587
650
  style: { fontSize: "1.3em" }
588
651
  });
589
652
  } else if (sponsor.plan === "indie") {
590
- return /* @__PURE__ */ React7.createElement(Emoji, {
653
+ return /* @__PURE__ */ React8.createElement(Emoji, {
591
654
  name: "ribbon",
592
655
  style: { fontSize: "0.9em" }
593
656
  });
@@ -600,7 +663,7 @@ function getLabelIcon(sponsor) {
600
663
  } else {
601
664
  assert(false);
602
665
  }
603
- return /* @__PURE__ */ React7.createElement("img", {
666
+ return /* @__PURE__ */ React8.createElement("img", {
604
667
  src: medalSrc,
605
668
  style: { height: 15, zIndex: 1, marginRight: 5 }
606
669
  });
@@ -639,40 +702,226 @@ function isIndividual(sponsor) {
639
702
  return "username" in sponsor;
640
703
  }
641
704
 
705
+ // src/components/Contributors.tsx
706
+ import React10 from "react";
707
+
708
+ // src/data/maintainersList.tsx
709
+ import React9 from "react";
710
+ var maintainers = [
711
+ {
712
+ username: "brillout",
713
+ firstName: "Rom",
714
+ roles: [
715
+ /* @__PURE__ */ React9.createElement(React9.Fragment, null, "Vike Core (Lead Maintainer, Creator)"),
716
+ /* @__PURE__ */ React9.createElement(React9.Fragment, null, /* @__PURE__ */ React9.createElement("code", null, "vike-react"), " (Lead Maintainer, Creator)"),
717
+ /* @__PURE__ */ React9.createElement(React9.Fragment, null, /* @__PURE__ */ React9.createElement("code", null, "vike-vue"), " (Contributor)")
718
+ ]
719
+ },
720
+ {
721
+ username: "magne4000",
722
+ firstName: "Jo\xEBl",
723
+ roles: [
724
+ /* @__PURE__ */ React9.createElement(React9.Fragment, null, "Bati (Lead Maintainer, Creator)"),
725
+ /* @__PURE__ */ React9.createElement(React9.Fragment, null, /* @__PURE__ */ React9.createElement("code", null, "vike-solid"), " (Lead Maintainer, Creator)"),
726
+ /* @__PURE__ */ React9.createElement(React9.Fragment, null, "Vike Core (Contributor)")
727
+ ]
728
+ },
729
+ {
730
+ username: "AurelienLourot",
731
+ firstName: "Aur\xE9lien",
732
+ roles: [
733
+ /* @__PURE__ */ React9.createElement(React9.Fragment, null, /* @__PURE__ */ React9.createElement("code", null, "vike-vue"), " (Lead Maintainer, Creator)"),
734
+ /* @__PURE__ */ React9.createElement(React9.Fragment, null, /* @__PURE__ */ React9.createElement("code", null, "vike-react"), " (Contributor)"),
735
+ /* @__PURE__ */ React9.createElement(React9.Fragment, null, "Vike Core (Contributor)")
736
+ ],
737
+ consultingUrl: "https://lourot.dev/"
738
+ },
739
+ {
740
+ username: "nitedani",
741
+ firstName: "D\xE1niel",
742
+ roles: [
743
+ /* @__PURE__ */ React9.createElement(React9.Fragment, null, /* @__PURE__ */ React9.createElement("code", null, "vike-react-query"), " (Lead Maintainer, Creator)"),
744
+ /* @__PURE__ */ React9.createElement(React9.Fragment, null, /* @__PURE__ */ React9.createElement("code", null, "vike-angular"), " (Lead Maintainer, Creator)"),
745
+ /* @__PURE__ */ React9.createElement(React9.Fragment, null, "Vike Core (Contributor)")
746
+ ]
747
+ },
748
+ {
749
+ username: "phonzammi",
750
+ firstName: "Muhammad",
751
+ roles: [
752
+ /* @__PURE__ */ React9.createElement(React9.Fragment, null, /* @__PURE__ */ React9.createElement("code", null, "vike-vue"), " (Contributor)"),
753
+ /* @__PURE__ */ React9.createElement(React9.Fragment, null, /* @__PURE__ */ React9.createElement("code", null, "vike-solid"), " (Contributor)"),
754
+ /* @__PURE__ */ React9.createElement(React9.Fragment, null, /* @__PURE__ */ React9.createElement("code", null, "vike-react"), " (Contributor)")
755
+ ]
756
+ },
757
+ {
758
+ username: "4350pChris",
759
+ firstName: "Chris",
760
+ roles: [
761
+ /* @__PURE__ */ React9.createElement(React9.Fragment, null, /* @__PURE__ */ React9.createElement("code", null, "vike-pinia"), " (Lead Maintainer, Creator)"),
762
+ /* @__PURE__ */ React9.createElement(React9.Fragment, null, /* @__PURE__ */ React9.createElement("code", null, "vike-vue"), " (Contributor)"),
763
+ /* @__PURE__ */ React9.createElement(React9.Fragment, null, "Vike Core (Contributor)")
764
+ ]
765
+ }
766
+ ];
767
+
768
+ // src/components/Contributors.tsx
769
+ import { contributors } from "vike-contributors";
770
+ function Contributors() {
771
+ const pageContext = usePageContext();
772
+ const { projectInfo } = pageContext.config;
773
+ return /* @__PURE__ */ React10.createElement(SupporterSection, null, /* @__PURE__ */ React10.createElement(SectionDescription, null, projectInfo.projectName, " is built and maintained by passionate contributors."), /* @__PURE__ */ React10.createElement("div", {
774
+ style: { display: "flex", flexWrap: "wrap", justifyContent: "space-evenly", alignItems: "end" }
775
+ }, maintainers.map((maintainer, i) => /* @__PURE__ */ React10.createElement(Maintainer, {
776
+ maintainer,
777
+ key: i
778
+ }))), /* @__PURE__ */ React10.createElement(Individuals, null, contributors.filter((contributor) => {
779
+ return !contributor.login.includes("[bot]") && !maintainers.map((m) => m.username).includes(contributor.login);
780
+ }).map((contributor, i) => /* @__PURE__ */ React10.createElement(Supporter, {
781
+ username: contributor.login,
782
+ avatarUrl: contributor.avatarUrl,
783
+ key: i
784
+ }))));
785
+ }
786
+ function Maintainer({ maintainer }) {
787
+ const marginHeight = 20;
788
+ const marginWidth = 10;
789
+ const imgSize = 50;
790
+ const githubUrl = `https://github.com/${maintainer.username}`;
791
+ return /* @__PURE__ */ React10.createElement("div", {
792
+ style: {
793
+ borderRadius: 7,
794
+ borderWidth: 1,
795
+ borderStyle: "solid",
796
+ borderColor: "#e0e0e0",
797
+ overflow: "hidden",
798
+ width: 430,
799
+ maxWidth: `calc(100vw - 2 * var(--main-view-padding) - 2 * ${marginWidth}px)`,
800
+ margin: `${marginHeight}px ${marginWidth}px`,
801
+ display: "flex",
802
+ flexWrap: "wrap",
803
+ padding: 20,
804
+ gap: 20,
805
+ textAlign: "left"
806
+ }
807
+ }, /* @__PURE__ */ React10.createElement("a", {
808
+ href: githubUrl
809
+ }, /* @__PURE__ */ React10.createElement("div", {
810
+ style: { width: imgSize, height: imgSize, borderRadius: imgSize / 2, overflow: "hidden" }
811
+ }, /* @__PURE__ */ React10.createElement(SupporterImg, {
812
+ username: maintainer.username,
813
+ avatarUrl: getAvatarUrl(maintainer),
814
+ imgAlt: maintainer.firstName,
815
+ width: imgSize,
816
+ height: imgSize
817
+ }))), /* @__PURE__ */ React10.createElement("div", null, /* @__PURE__ */ React10.createElement("b", null, maintainer.firstName), " \xB7", " ", /* @__PURE__ */ React10.createElement("a", {
818
+ href: githubUrl
819
+ }, /* @__PURE__ */ React10.createElement("i", {
820
+ style: { fontSize: ".9em", color: "#505050" }
821
+ }, maintainer.username)), maintainer.consultingUrl ? /* @__PURE__ */ React10.createElement(React10.Fragment, null, " ", "\xB7", " ", /* @__PURE__ */ React10.createElement("a", {
822
+ href: maintainer.consultingUrl
823
+ }, /* @__PURE__ */ React10.createElement("b", {
824
+ style: {
825
+ fontSize: ".7em",
826
+ color: "white",
827
+ backgroundColor: "#305090",
828
+ padding: "1px 5px 2px 5px",
829
+ verticalAlign: "text-top",
830
+ borderRadius: 3
831
+ }
832
+ }, "consulting"))) : null, /* @__PURE__ */ React10.createElement("ul", {
833
+ style: { fontSize: ".8em", paddingLeft: 15, marginTop: 5, marginBottom: 0 }
834
+ }, maintainer.roles.map((role, i) => /* @__PURE__ */ React10.createElement("li", {
835
+ key: i
836
+ }, role)))));
837
+ }
838
+ function getAvatarUrl(maintainer) {
839
+ for (const contributor of contributors) {
840
+ if (maintainer.username === contributor.login) {
841
+ return contributor.avatarUrl;
842
+ }
843
+ }
844
+ throw new Error(`Maintainer ${maintainer.username} not found in contributors' list.`);
845
+ }
846
+
847
+ // src/components/Consulting.tsx
848
+ import React11 from "react";
849
+
850
+ // src/icons/people.svg
851
+ var people_default = "/assets/people-72KKQHU4.svg";
852
+
853
+ // src/components/Consulting.tsx
854
+ var consultingPageHref = "/consulting";
855
+ function Consulting() {
856
+ const pageContext = usePageContext();
857
+ const { projectInfo } = pageContext.config;
858
+ const { projectName } = projectInfo;
859
+ return /* @__PURE__ */ React11.createElement(SupporterSection, null, /* @__PURE__ */ React11.createElement(CallToAction, {
860
+ iconUrl: people_default,
861
+ text: "Consulting",
862
+ href: consultingPageHref
863
+ }), /* @__PURE__ */ React11.createElement("div", null), /* @__PURE__ */ React11.createElement(SectionDescription, null, "For questions and issues related to ", projectName, ", open a", " ", /* @__PURE__ */ React11.createElement("a", {
864
+ href: projectInfo.githubDiscussions || projectInfo.githubIssues
865
+ }, "GitHub Discussion"), ". For advanced help or help not directly related to ", projectName, ", the ", projectName, " team offers", " ", /* @__PURE__ */ React11.createElement(Link, {
866
+ href: consultingPageHref,
867
+ noBreadcrumb: true
868
+ }, "consulting"), "."));
869
+ }
870
+ function Consultants() {
871
+ return /* @__PURE__ */ React11.createElement(SupporterSection, null, /* @__PURE__ */ React11.createElement("div", {
872
+ style: { display: "flex", flexWrap: "wrap", alignItems: "end" }
873
+ }, maintainers.filter((maintainer) => {
874
+ return !!maintainer.consultingUrl;
875
+ }).map((maintainer, i) => /* @__PURE__ */ React11.createElement(Maintainer, {
876
+ maintainer,
877
+ key: i
878
+ }))));
879
+ }
880
+
642
881
  // src/components/CodeBlockTransformer.tsx
643
- import React8 from "react";
882
+ import React12 from "react";
644
883
  function CodeBlockTransformer({ children, lineBreak }) {
645
884
  assert(
646
885
  lineBreak === "white-space" || lineBreak === "break-word",
647
886
  "`lineBreak` is currently the only use case for <CodeBlockTransformer>"
648
887
  );
649
888
  const className = `with-line-break_${lineBreak}`;
650
- return /* @__PURE__ */ React8.createElement("div", {
889
+ return /* @__PURE__ */ React12.createElement("div", {
651
890
  className
652
891
  }, children);
653
892
  }
654
893
 
655
894
  // src/components/Comment.tsx
656
- import React9 from "react";
895
+ import React13 from "react";
657
896
  function Comment({ children }) {
658
- return /* @__PURE__ */ React9.createElement(React9.Fragment, null);
897
+ return /* @__PURE__ */ React13.createElement(React13.Fragment, null);
659
898
  }
660
899
  export {
900
+ CallToAction,
661
901
  CodeBlockTransformer,
662
902
  Comment,
663
903
  Construction,
904
+ Consultants,
905
+ Consulting,
906
+ Contributors,
664
907
  Danger,
665
908
  Emoji,
666
909
  FeatureList,
667
910
  HorizontalLine,
668
911
  ImportMeta,
912
+ Individuals,
669
913
  Link,
914
+ Maintainer,
670
915
  NoteWithCustomIcon,
671
916
  NoteWithoutIcon,
672
917
  P,
673
918
  ReadingRecommendation,
674
919
  RepoLink,
920
+ SectionDescription,
675
921
  Sponsors,
922
+ Supporter,
923
+ SupporterImg,
924
+ SupporterSection,
676
925
  Warning,
677
926
  assert,
678
927
  assertUsage,
@@ -0,0 +1,9 @@
1
+ <?xml version="1.0" encoding="utf-8"?><!-- Uploaded to: SVG Repo, www.svgrepo.com, Generator: SVG Repo Mixer Tools -->
2
+ <svg width="800px" height="800px" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg">
3
+ <path d="M16.719 19.7519L16.0785 14.6279C15.8908 13.1266 14.6146 12 13.1017 12H12H10.8983C9.38538 12 8.10917 13.1266 7.92151 14.6279L7.28101 19.7519C7.1318 20.9456 8.06257 22 9.26556 22H12H14.7344C15.9374 22 16.8682 20.9456 16.719 19.7519Z" stroke="#000000" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"/>
4
+ <circle cx="12" cy="5" r="3" stroke="#000000" stroke-width="2"/>
5
+ <circle cx="4" cy="9" r="2" stroke="#000000" stroke-width="2"/>
6
+ <circle cx="20" cy="9" r="2" stroke="#000000" stroke-width="2"/>
7
+ <path d="M4 14H3.69425C2.71658 14 1.8822 14.7068 1.72147 15.6712L1.38813 17.6712C1.18496 18.8903 2.12504 20 3.36092 20H7" stroke="#000000" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"/>
8
+ <path d="M20 14H20.3057C21.2834 14 22.1178 14.7068 22.2785 15.6712L22.6119 17.6712C22.815 18.8903 21.8751 20 20.6392 20C19.4775 20 18.0952 20 17 20" stroke="#000000" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"/>
9
+ </svg>
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@brillout/docpress",
3
- "version": "0.5.32",
3
+ "version": "0.5.34",
4
4
  "scripts": {
5
5
  "// Check types while developing": "",
6
6
  "types": "tsc --noEmit --watch",
@@ -26,6 +26,7 @@
26
26
  "shiki": "^0.10.1",
27
27
  "twemoji": "^13.1.0",
28
28
  "vike": "^0.4.151",
29
+ "vike-contributors": "^0.0.6",
29
30
  "vite": "^4.3.9"
30
31
  },
31
32
  "type": "module",