@chtc/web-components 2.0.4 → 2.0.6

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 (47) hide show
  1. package/Article/components/ArticleCard.d.ts.map +1 -1
  2. package/Article/components/ArticleCard.js +3 -1
  3. package/Article/components/ArticleCard.js.map +1 -1
  4. package/Article/components/HorizontalArticleCard.d.ts.map +1 -1
  5. package/Article/components/HorizontalArticleCard.js +3 -1
  6. package/Article/components/HorizontalArticleCard.js.map +1 -1
  7. package/Release/utils/getReleases.d.ts +2 -2
  8. package/Release/utils/getReleases.d.ts.map +1 -1
  9. package/Release/utils/getReleases.js +19 -1
  10. package/Release/utils/getReleases.js.map +1 -1
  11. package/content/index.d.ts +1 -0
  12. package/content/index.d.ts.map +1 -1
  13. package/content/index.js +1 -0
  14. package/content/index.js.map +1 -1
  15. package/github/getAllPages.d.ts +17 -2
  16. package/github/getAllPages.d.ts.map +1 -1
  17. package/github/getAllPages.js +18 -5
  18. package/github/getAllPages.js.map +1 -1
  19. package/github/getRawFile.d.ts +3 -0
  20. package/github/getRawFile.d.ts.map +1 -1
  21. package/github/getRawFile.js +12 -4
  22. package/github/getRawFile.js.map +1 -1
  23. package/github/getTree.d.ts +3 -0
  24. package/github/getTree.d.ts.map +1 -1
  25. package/github/getTree.js +11 -3
  26. package/github/getTree.js.map +1 -1
  27. package/github/index.d.ts +2 -1
  28. package/github/index.d.ts.map +1 -1
  29. package/github/index.js +1 -1
  30. package/github/index.js.map +1 -1
  31. package/github/memo.d.ts +25 -0
  32. package/github/memo.d.ts.map +1 -0
  33. package/github/memo.js +49 -0
  34. package/github/memo.js.map +1 -0
  35. package/index.d.ts +1 -0
  36. package/index.d.ts.map +1 -1
  37. package/index.js +1 -0
  38. package/index.js.map +1 -1
  39. package/markdownComponents/excerptComponents.d.ts +24 -0
  40. package/markdownComponents/excerptComponents.d.ts.map +1 -0
  41. package/markdownComponents/excerptComponents.js +46 -0
  42. package/markdownComponents/excerptComponents.js.map +1 -0
  43. package/markdownComponents/markdownComponents.d.ts.map +1 -1
  44. package/markdownComponents/markdownComponents.js +22 -15
  45. package/markdownComponents/markdownComponents.js.map +1 -1
  46. package/package.json +1 -1
  47. package/tsconfig.tsbuildinfo +1 -1
@@ -1 +1 @@
1
- {"version":3,"file":"ArticleCard.d.ts","sourceRoot":"","sources":["../../../src/Article/components/ArticleCard.tsx"],"names":[],"mappings":"AAEA,OAAO,EAAC,gBAAgB,EAAC,MAAM,UAAU,CAAC;AAI1C,QAAA,MAAM,WAAW,GAAI,mBAAkB,gBAAgB,gCA2BtD,CAAA;AAED,eAAe,WAAW,CAAC"}
1
+ {"version":3,"file":"ArticleCard.d.ts","sourceRoot":"","sources":["../../../src/Article/components/ArticleCard.tsx"],"names":[],"mappings":"AAEA,OAAO,EAAC,gBAAgB,EAAC,MAAM,UAAU,CAAC;AAM1C,QAAA,MAAM,WAAW,GAAI,mBAAkB,gBAAgB,gCA+BtD,CAAA;AAED,eAAe,WAAW,CAAC"}
@@ -3,13 +3,15 @@ import { Typography, Box } from '@mui/material';
3
3
  import Balancer from "react-wrap-balancer";
4
4
  import Link from "next/link";
5
5
  import TopStyledBlock from "../../TopStyledBlock";
6
+ import MarkdownContent from "../../markdownComponents/MarkdownContent";
7
+ import { linkedCardExcerptComponents } from "../../markdownComponents/excerptComponents";
6
8
  const ArticleCard = ({ href, article }) => {
7
9
  const style = {
8
10
  transition: "box-shadow .2s",
9
11
  boxShadow: "grey 1px 1px 3px",
10
12
  "&:hover": { boxShadow: "grey 1px 1px 5px" },
11
13
  };
12
- return (_jsx(Box, { borderRadius: 2, overflow: "hidden", sx: style, children: _jsxs(Link, { href: href, children: [_jsx(Box, { children: _jsx("img", { style: { objectFit: "cover", width: "100%", aspectRatio: 2 }, src: article.image.path, alt: article.image.alt }) }), _jsx(Box, { children: _jsxs(Box, { pl: 2, p: 2, children: [_jsx(Box, { py: 1, pt: 1, children: _jsx(TopStyledBlock, { height: ".25rem", width: "5rem", offset: "-.75rem", children: _jsx(Typography, { variant: "h6", sx: { fontWeight: "bold" }, children: _jsx(Balancer, { children: article.title }) }) }) }), _jsx(Typography, { variant: "body1", children: article.excerpt })] }) })] }) }));
14
+ return (_jsx(Box, { borderRadius: 2, overflow: "hidden", sx: style, children: _jsxs(Box, { component: Link, href: href, sx: { color: "text.primary", textDecoration: "none" }, children: [_jsx(Box, { children: _jsx("img", { style: { objectFit: "cover", width: "100%", aspectRatio: 2 }, src: article.image.path, alt: article.image.alt }) }), _jsx(Box, { children: _jsxs(Box, { pl: 2, p: 2, children: [_jsx(Box, { py: 1, pt: 1, children: _jsx(TopStyledBlock, { height: ".25rem", width: "5rem", offset: "-.75rem", children: _jsx(Typography, { variant: "h6", sx: { fontWeight: "bold" }, children: _jsx(Balancer, { children: article.title }) }) }) }), _jsx(MarkdownContent, { components: linkedCardExcerptComponents, children: article.excerpt })] }) })] }) }));
13
15
  };
14
16
  export default ArticleCard;
15
17
  //# sourceMappingURL=ArticleCard.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"ArticleCard.js","sourceRoot":"","sources":["../../../src/Article/components/ArticleCard.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAC,UAAU,EAAE,GAAG,EAAC,MAAM,eAAe,CAAC;AAC9C,OAAO,QAAQ,MAAM,qBAAqB,CAAC;AAE3C,OAAO,IAAI,MAAM,WAAW,CAAC;AAC7B,OAAO,cAAc,MAAM,sBAAsB,CAAC;AAElD,MAAM,WAAW,GAAG,CAAC,EAAC,IAAI,EAAE,OAAO,EAAoB,EAAE,EAAE;IAE1D,MAAM,KAAK,GAAG;QACb,UAAU,EAAE,gBAAgB;QAC5B,SAAS,EAAE,kBAAkB;QAC7B,SAAS,EAAE,EAAC,SAAS,EAAE,kBAAkB,EAAC;KAC1C,CAAA;IAED,OAAO,CACL,KAAC,GAAG,IAAC,YAAY,EAAE,CAAC,EAAE,QAAQ,EAAE,QAAQ,EAAE,EAAE,EAAE,KAAK,YAClD,MAAC,IAAI,IAAC,IAAI,EAAE,IAAI,aACf,KAAC,GAAG,cACH,cAAK,KAAK,EAAE,EAAC,SAAS,EAAE,OAAO,EAAE,KAAK,EAAE,MAAM,EAAE,WAAW,EAAE,CAAC,EAAC,EAAE,GAAG,EAAE,OAAO,CAAC,KAAK,CAAC,IAAI,EAAE,GAAG,EAAE,OAAO,CAAC,KAAK,CAAC,GAAG,GAAI,GAC/G,EACN,KAAC,GAAG,cACH,MAAC,GAAG,IAAC,EAAE,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,aACf,KAAC,GAAG,IAAC,EAAE,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC,YAChB,KAAC,cAAc,IAAC,MAAM,EAAE,QAAQ,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,SAAS,YACjE,KAAC,UAAU,IAAC,OAAO,EAAE,IAAI,EAAE,EAAE,EAAE,EAAC,UAAU,EAAE,MAAM,EAAC,YAAE,KAAC,QAAQ,cAAE,OAAO,CAAC,KAAK,GAAY,GAAa,GACtF,GACZ,EACN,KAAC,UAAU,IAAC,OAAO,EAAE,OAAO,YAAG,OAAO,CAAC,OAAO,GAAc,IACvD,GACD,IACA,GACF,CACP,CAAA;AACF,CAAC,CAAA;AAED,eAAe,WAAW,CAAC"}
1
+ {"version":3,"file":"ArticleCard.js","sourceRoot":"","sources":["../../../src/Article/components/ArticleCard.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAC,UAAU,EAAE,GAAG,EAAC,MAAM,eAAe,CAAC;AAC9C,OAAO,QAAQ,MAAM,qBAAqB,CAAC;AAE3C,OAAO,IAAI,MAAM,WAAW,CAAC;AAC7B,OAAO,cAAc,MAAM,sBAAsB,CAAC;AAClD,OAAO,eAAe,MAAM,0CAA0C,CAAC;AACvE,OAAO,EAAC,2BAA2B,EAAC,MAAM,4CAA4C,CAAC;AAEvF,MAAM,WAAW,GAAG,CAAC,EAAC,IAAI,EAAE,OAAO,EAAoB,EAAE,EAAE;IAE1D,MAAM,KAAK,GAAG;QACb,UAAU,EAAE,gBAAgB;QAC5B,SAAS,EAAE,kBAAkB;QAC7B,SAAS,EAAE,EAAC,SAAS,EAAE,kBAAkB,EAAC;KAC1C,CAAA;IAED,OAAO,CACL,KAAC,GAAG,IAAC,YAAY,EAAE,CAAC,EAAE,QAAQ,EAAE,QAAQ,EAAE,EAAE,EAAE,KAAK,YAGlD,MAAC,GAAG,IAAC,SAAS,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,EAAE,EAAE,EAAC,KAAK,EAAE,cAAc,EAAE,cAAc,EAAE,MAAM,EAAC,aACpF,KAAC,GAAG,cACH,cAAK,KAAK,EAAE,EAAC,SAAS,EAAE,OAAO,EAAE,KAAK,EAAE,MAAM,EAAE,WAAW,EAAE,CAAC,EAAC,EAAE,GAAG,EAAE,OAAO,CAAC,KAAK,CAAC,IAAI,EAAE,GAAG,EAAE,OAAO,CAAC,KAAK,CAAC,GAAG,GAAI,GAC/G,EACN,KAAC,GAAG,cACH,MAAC,GAAG,IAAC,EAAE,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,aACf,KAAC,GAAG,IAAC,EAAE,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC,YAChB,KAAC,cAAc,IAAC,MAAM,EAAE,QAAQ,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,SAAS,YACjE,KAAC,UAAU,IAAC,OAAO,EAAE,IAAI,EAAE,EAAE,EAAE,EAAC,UAAU,EAAE,MAAM,EAAC,YAAE,KAAC,QAAQ,cAAE,OAAO,CAAC,KAAK,GAAY,GAAa,GACtF,GACZ,EACN,KAAC,eAAe,IAAC,UAAU,EAAE,2BAA2B,YACtD,OAAO,CAAC,OAAO,GACC,IACb,GACD,IACD,GACD,CACP,CAAA;AACF,CAAC,CAAA;AAED,eAAe,WAAW,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"HorizontalArticleCard.d.ts","sourceRoot":"","sources":["../../../src/Article/components/HorizontalArticleCard.tsx"],"names":[],"mappings":"AAMA,OAAO,EAAC,gBAAgB,EAAC,MAAM,UAAU,CAAC;AAE1C,QAAA,MAAM,qBAAqB,GAAI,mBAAkB,gBAAgB,gCA8BhE,CAAA;AAED,eAAe,qBAAqB,CAAC"}
1
+ {"version":3,"file":"HorizontalArticleCard.d.ts","sourceRoot":"","sources":["../../../src/Article/components/HorizontalArticleCard.tsx"],"names":[],"mappings":"AAQA,OAAO,EAAC,gBAAgB,EAAC,MAAM,UAAU,CAAC;AAE1C,QAAA,MAAM,qBAAqB,GAAI,mBAAkB,gBAAgB,gCAkChE,CAAA;AAED,eAAe,qBAAqB,CAAC"}
@@ -2,10 +2,12 @@ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
2
  import { Grid, Typography, Box } from '@mui/material';
3
3
  import Balancer from "react-wrap-balancer";
4
4
  import TopStyledBlock from "../../TopStyledBlock";
5
+ import MarkdownContent from "../../markdownComponents/MarkdownContent";
6
+ import excerptComponents from "../../markdownComponents/excerptComponents";
5
7
  import Link from "next/link";
6
8
  import { ArrowRight } from "@mui/icons-material";
7
9
  const HorizontalArticleCard = ({ href, article }) => {
8
- return (_jsx(Box, { sx: { display: { xs: 'none', md: 'block' } }, children: _jsxs(Grid, { container: true, children: [_jsx(Grid, { size: 6, children: _jsx("img", { style: { objectFit: "cover", width: "100%", height: "100%", aspectRatio: 2 }, src: article.image.path, alt: article.image.alt }) }), _jsx(Grid, { size: 6, display: "flex", children: _jsxs(Box, { width: "100%", pl: 2, p: 3, display: "flex", flexDirection: "column", bgcolor: "#cfe4ff52", children: [_jsx(Box, { py: 1, children: _jsx(TopStyledBlock, { height: ".25rem", width: "5rem", offset: "-.75rem", children: _jsx(Typography, { variant: "h5", children: _jsx(Balancer, { children: article.title }) }) }) }), _jsx(Typography, { variant: "body1", children: article.excerpt }), _jsx(Box, { sx: { marginTop: "auto", paddingTop: "2rem", fontWeight: "300" }, children: _jsx(Box, { sx: { color: "#0885ff" }, children: _jsxs(Link, { href: href, children: [_jsx(Typography, { variant: "body1", sx: { display: "inline", paddingRight: ".2rem" }, children: "Read More" }), _jsx(ArrowRight, { height: 18, width: 24, fill: "currentColor" })] }) }) })] }) })] }) }));
10
+ return (_jsx(Box, { sx: { display: { xs: 'none', md: 'block' } }, children: _jsxs(Grid, { container: true, children: [_jsx(Grid, { size: 6, children: _jsx("img", { style: { objectFit: "cover", width: "100%", height: "100%", aspectRatio: 2 }, src: article.image.path, alt: article.image.alt }) }), _jsx(Grid, { size: 6, display: "flex", children: _jsxs(Box, { width: "100%", pl: 2, p: 3, display: "flex", flexDirection: "column", bgcolor: "#cfe4ff52", children: [_jsx(Box, { py: 1, children: _jsx(TopStyledBlock, { height: ".25rem", width: "5rem", offset: "-.75rem", children: _jsx(Typography, { variant: "h5", children: _jsx(Balancer, { children: article.title }) }) }) }), _jsx(MarkdownContent, { components: excerptComponents, children: article.excerpt }), _jsx(Box, { sx: { marginTop: "auto", paddingTop: "2rem", fontWeight: "300" }, children: _jsx(Box, { sx: { color: "#0885ff" }, children: _jsxs(Link, { href: href, style: { color: "inherit", textDecoration: "none" }, children: [_jsx(Typography, { variant: "body1", sx: { display: "inline", paddingRight: ".2rem" }, children: "Read More" }), _jsx(ArrowRight, { height: 18, width: 24, fill: "currentColor" })] }) }) })] }) })] }) }));
9
11
  };
10
12
  export default HorizontalArticleCard;
11
13
  //# sourceMappingURL=HorizontalArticleCard.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"HorizontalArticleCard.js","sourceRoot":"","sources":["../../../src/Article/components/HorizontalArticleCard.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAC,IAAI,EAAE,UAAU,EAAE,GAAG,EAAC,MAAM,eAAe,CAAC;AACpD,OAAO,QAAQ,MAAM,qBAAqB,CAAC;AAE3C,OAAO,cAAc,MAAM,sBAAsB,CAAC;AAClD,OAAO,IAAI,MAAM,WAAW,CAAC;AAC7B,OAAO,EAAC,UAAU,EAAC,MAAM,qBAAqB,CAAC;AAG/C,MAAM,qBAAqB,GAAG,CAAC,EAAC,IAAI,EAAE,OAAO,EAAoB,EAAE,EAAE;IACpE,OAAO,CACL,KAAC,GAAG,IAAC,EAAE,EAAE,EAAE,OAAO,EAAE,EAAE,EAAE,EAAE,MAAM,EAAE,EAAE,EAAE,OAAO,EAAE,EAAE,YAChD,MAAC,IAAI,IAAC,SAAS,mBACd,KAAC,IAAI,IAAC,IAAI,EAAE,CAAC,YACZ,cAAK,KAAK,EAAE,EAAC,SAAS,EAAE,OAAO,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,WAAW,EAAE,CAAC,EAAC,EAAE,GAAG,EAAE,OAAO,CAAC,KAAK,CAAC,IAAI,EAAE,GAAG,EAAE,OAAO,CAAC,KAAK,CAAC,GAAG,GAAI,GAC9H,EACP,KAAC,IAAI,IAAC,IAAI,EAAE,CAAC,EAAE,OAAO,EAAE,MAAM,YAC7B,MAAC,GAAG,IAAC,KAAK,EAAE,MAAM,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,OAAO,EAAE,MAAM,EAAE,aAAa,EAAE,QAAQ,EAAE,OAAO,EAAE,WAAW,aAC9F,KAAC,GAAG,IAAC,EAAE,EAAE,CAAC,YACT,KAAC,cAAc,IAAC,MAAM,EAAE,QAAQ,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,SAAS,YACjE,KAAC,UAAU,IAAC,OAAO,EAAE,IAAI,YAAE,KAAC,QAAQ,cAAE,OAAO,CAAC,KAAK,GAAY,GAAa,GAC5D,GACZ,EACN,KAAC,UAAU,IAAC,OAAO,EAAE,OAAO,YAAG,OAAO,CAAC,OAAO,GAAc,EAC5D,KAAC,GAAG,IAAC,EAAE,EAAE,EAAC,SAAS,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,EAAE,UAAU,EAAE,KAAK,EAAC,YAClE,KAAC,GAAG,IAAC,EAAE,EAAE,EAAC,KAAK,EAAE,SAAS,EAAC,YAC1B,MAAC,IAAI,IAAC,IAAI,EAAE,IAAI,aACf,KAAC,UAAU,IAAC,OAAO,EAAE,OAAO,EAAE,EAAE,EAAE,EAAC,OAAO,EAAE,QAAQ,EAAE,YAAY,EAAE,OAAO,EAAC,0BAE/D,EACb,KAAC,UAAU,IAAC,MAAM,EAAE,EAAE,EAAE,KAAK,EAAE,EAAE,EAAE,IAAI,EAAE,cAAc,GAAG,IACpD,GACF,GACD,IACD,GACA,IACD,GACF,CACP,CAAA;AACF,CAAC,CAAA;AAED,eAAe,qBAAqB,CAAC"}
1
+ {"version":3,"file":"HorizontalArticleCard.js","sourceRoot":"","sources":["../../../src/Article/components/HorizontalArticleCard.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAC,IAAI,EAAE,UAAU,EAAE,GAAG,EAAC,MAAM,eAAe,CAAC;AACpD,OAAO,QAAQ,MAAM,qBAAqB,CAAC;AAE3C,OAAO,cAAc,MAAM,sBAAsB,CAAC;AAClD,OAAO,eAAe,MAAM,0CAA0C,CAAC;AACvE,OAAO,iBAAiB,MAAM,4CAA4C,CAAC;AAC3E,OAAO,IAAI,MAAM,WAAW,CAAC;AAC7B,OAAO,EAAC,UAAU,EAAC,MAAM,qBAAqB,CAAC;AAG/C,MAAM,qBAAqB,GAAG,CAAC,EAAC,IAAI,EAAE,OAAO,EAAoB,EAAE,EAAE;IACpE,OAAO,CACL,KAAC,GAAG,IAAC,EAAE,EAAE,EAAE,OAAO,EAAE,EAAE,EAAE,EAAE,MAAM,EAAE,EAAE,EAAE,OAAO,EAAE,EAAE,YAChD,MAAC,IAAI,IAAC,SAAS,mBACd,KAAC,IAAI,IAAC,IAAI,EAAE,CAAC,YACZ,cAAK,KAAK,EAAE,EAAC,SAAS,EAAE,OAAO,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,WAAW,EAAE,CAAC,EAAC,EAAE,GAAG,EAAE,OAAO,CAAC,KAAK,CAAC,IAAI,EAAE,GAAG,EAAE,OAAO,CAAC,KAAK,CAAC,GAAG,GAAI,GAC9H,EACP,KAAC,IAAI,IAAC,IAAI,EAAE,CAAC,EAAE,OAAO,EAAE,MAAM,YAC7B,MAAC,GAAG,IAAC,KAAK,EAAE,MAAM,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,OAAO,EAAE,MAAM,EAAE,aAAa,EAAE,QAAQ,EAAE,OAAO,EAAE,WAAW,aAC9F,KAAC,GAAG,IAAC,EAAE,EAAE,CAAC,YACT,KAAC,cAAc,IAAC,MAAM,EAAE,QAAQ,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,SAAS,YACjE,KAAC,UAAU,IAAC,OAAO,EAAE,IAAI,YAAE,KAAC,QAAQ,cAAE,OAAO,CAAC,KAAK,GAAY,GAAa,GAC5D,GACZ,EAGN,KAAC,eAAe,IAAC,UAAU,EAAE,iBAAiB,YAC5C,OAAO,CAAC,OAAO,GACC,EAClB,KAAC,GAAG,IAAC,EAAE,EAAE,EAAC,SAAS,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,EAAE,UAAU,EAAE,KAAK,EAAC,YAClE,KAAC,GAAG,IAAC,EAAE,EAAE,EAAC,KAAK,EAAE,SAAS,EAAC,YAC1B,MAAC,IAAI,IAAC,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,EAAC,KAAK,EAAE,SAAS,EAAE,cAAc,EAAE,MAAM,EAAC,aAClE,KAAC,UAAU,IAAC,OAAO,EAAE,OAAO,EAAE,EAAE,EAAE,EAAC,OAAO,EAAE,QAAQ,EAAE,YAAY,EAAE,OAAO,EAAC,0BAE/D,EACb,KAAC,UAAU,IAAC,MAAM,EAAE,EAAE,EAAE,KAAK,EAAE,EAAE,EAAE,IAAI,EAAE,cAAc,GAAG,IACpD,GACF,GACD,IACD,GACA,IACD,GACF,CACP,CAAA;AACF,CAAC,CAAA;AAED,eAAe,qBAAqB,CAAC"}
@@ -1,6 +1,6 @@
1
- import type { GitHubFetchOptions } from "../../github/types";
1
+ import type { GetAllPagesOptions } from "../../github/getAllPages";
2
2
  import type { GitHubRelease } from "../types";
3
- export interface GetReleasesOptions extends GitHubFetchOptions {
3
+ export interface GetReleasesOptions extends GetAllPagesOptions {
4
4
  /** Include release candidates and other prereleases. Defaults to false. */
5
5
  includePrereleases?: boolean;
6
6
  }
@@ -1 +1 @@
1
- {"version":3,"file":"getReleases.d.ts","sourceRoot":"","sources":["../../../src/Release/utils/getReleases.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,oBAAoB,CAAC;AAC7D,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AAE9C,MAAM,WAAW,kBAAmB,SAAQ,kBAAkB;IAC5D,2EAA2E;IAC3E,kBAAkB,CAAC,EAAE,OAAO,CAAC;CAC9B;AAKD;;;GAGG;AACH,wBAAsB,WAAW,CAC/B,YAAY,EAAE,MAAM,EACpB,IAAI,EAAE,MAAM,EACZ,OAAO,GAAE,kBAAuB,GAC/B,OAAO,CAAC,aAAa,EAAE,CAAC,CAY1B;AAED,eAAe,WAAW,CAAC"}
1
+ {"version":3,"file":"getReleases.d.ts","sourceRoot":"","sources":["../../../src/Release/utils/getReleases.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,0BAA0B,CAAC;AACnE,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AAE9C,MAAM,WAAW,kBAAmB,SAAQ,kBAAkB;IAC5D,2EAA2E;IAC3E,kBAAkB,CAAC,EAAE,OAAO,CAAC;CAC9B;AAqBD;;;GAGG;AACH,wBAAsB,WAAW,CAC/B,YAAY,EAAE,MAAM,EACpB,IAAI,EAAE,MAAM,EACZ,OAAO,GAAE,kBAAuB,GAC/B,OAAO,CAAC,aAAa,EAAE,CAAC,CAe1B;AAED,eAAe,WAAW,CAAC"}
@@ -1,6 +1,21 @@
1
1
  import { getAllPages } from "../../github/getAllPages";
2
2
  /** Tags like `v7.18.0-rc.0` that GitHub may or may not have flagged as prerelease. */
3
3
  const RELEASE_CANDIDATE = /-rc(\.|\d|$)/i;
4
+ /**
5
+ * Releases per request.
6
+ *
7
+ * Release objects are far larger than they look: GitHub inlines the full asset
8
+ * list, and each asset carries a complete uploader object. For a project that
9
+ * ships a binary per platform that runs to roughly 80KB per release, so
10
+ * GitHub's maximum of 100 produces a 7MB response — well over the 2MB ceiling
11
+ * on Next.js's data cache, which means it is never cached and every page that
12
+ * lists releases re-downloads the lot.
13
+ *
14
+ * Fifteen holds the densest page near 1.2MB. That leaves room for the asset
15
+ * list to keep growing: at twenty, measured pages already reached 1.6MB, and
16
+ * crossing the ceiling again is silent — the only symptom is a slow build.
17
+ */
18
+ const RELEASES_PER_PAGE = 15;
4
19
  /**
5
20
  * Every release of a repository, as GitHub orders them (newest first).
6
21
  * Drafts are always dropped; prereleases are dropped unless asked for.
@@ -8,7 +23,10 @@ const RELEASE_CANDIDATE = /-rc(\.|\d|$)/i;
8
23
  export async function getReleases(organization, repo, options = {}) {
9
24
  const { includePrereleases = false, ...fetchOptions } = options;
10
25
  const url = `https://api.github.com/repos/${organization}/${repo}/releases`;
11
- const releases = await getAllPages(url, fetchOptions);
26
+ const releases = await getAllPages(url, {
27
+ perPage: RELEASES_PER_PAGE,
28
+ ...fetchOptions,
29
+ });
12
30
  return releases.filter((release) => !release.draft &&
13
31
  (includePrereleases ||
14
32
  (!release.prerelease && !RELEASE_CANDIDATE.test(release.tag_name))));
@@ -1 +1 @@
1
- {"version":3,"file":"getReleases.js","sourceRoot":"","sources":["../../../src/Release/utils/getReleases.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,0BAA0B,CAAC;AASvD,sFAAsF;AACtF,MAAM,iBAAiB,GAAG,eAAe,CAAC;AAE1C;;;GAGG;AACH,MAAM,CAAC,KAAK,UAAU,WAAW,CAC/B,YAAoB,EACpB,IAAY,EACZ,UAA8B,EAAE;IAEhC,MAAM,EAAE,kBAAkB,GAAG,KAAK,EAAE,GAAG,YAAY,EAAE,GAAG,OAAO,CAAC;IAChE,MAAM,GAAG,GAAG,gCAAgC,YAAY,IAAI,IAAI,WAAW,CAAC;IAE5E,MAAM,QAAQ,GAAG,MAAM,WAAW,CAAgB,GAAG,EAAE,YAAY,CAAC,CAAC;IAErE,OAAO,QAAQ,CAAC,MAAM,CACpB,CAAC,OAAO,EAAE,EAAE,CACV,CAAC,OAAO,CAAC,KAAK;QACd,CAAC,kBAAkB;YACjB,CAAC,CAAC,OAAO,CAAC,UAAU,IAAI,CAAC,iBAAiB,CAAC,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,CAAC,CACxE,CAAC;AACJ,CAAC;AAED,eAAe,WAAW,CAAC"}
1
+ {"version":3,"file":"getReleases.js","sourceRoot":"","sources":["../../../src/Release/utils/getReleases.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,0BAA0B,CAAC;AASvD,sFAAsF;AACtF,MAAM,iBAAiB,GAAG,eAAe,CAAC;AAE1C;;;;;;;;;;;;;GAaG;AACH,MAAM,iBAAiB,GAAG,EAAE,CAAC;AAE7B;;;GAGG;AACH,MAAM,CAAC,KAAK,UAAU,WAAW,CAC/B,YAAoB,EACpB,IAAY,EACZ,UAA8B,EAAE;IAEhC,MAAM,EAAE,kBAAkB,GAAG,KAAK,EAAE,GAAG,YAAY,EAAE,GAAG,OAAO,CAAC;IAChE,MAAM,GAAG,GAAG,gCAAgC,YAAY,IAAI,IAAI,WAAW,CAAC;IAE5E,MAAM,QAAQ,GAAG,MAAM,WAAW,CAAgB,GAAG,EAAE;QACrD,OAAO,EAAE,iBAAiB;QAC1B,GAAG,YAAY;KAChB,CAAC,CAAC;IAEH,OAAO,QAAQ,CAAC,MAAM,CACpB,CAAC,OAAO,EAAE,EAAE,CACV,CAAC,OAAO,CAAC,KAAK;QACd,CAAC,kBAAkB;YACjB,CAAC,CAAC,OAAO,CAAC,UAAU,IAAI,CAAC,iBAAiB,CAAC,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,CAAC,CACxE,CAAC;AACJ,CAAC;AAED,eAAe,WAAW,CAAC"}
@@ -3,6 +3,7 @@ export * from "../Presentation";
3
3
  export * from "../Staff";
4
4
  export { default as MarkdownContent } from "../markdownComponents/MarkdownContent";
5
5
  export { default as markdownComponents } from "../markdownComponents";
6
+ export { default as excerptComponents, linkedCardExcerptComponents } from "../markdownComponents/excerptComponents";
6
7
  export type { Website } from "../types";
7
8
  export * from "../utils";
8
9
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/content/index.ts"],"names":[],"mappings":"AAEA,cAAc,YAAY,CAAC;AAC3B,cAAc,iBAAiB,CAAC;AAChC,cAAc,UAAU,CAAC;AAEzB,OAAO,EAAE,OAAO,IAAI,eAAe,EAAE,MAAM,uCAAuC,CAAC;AACnF,OAAO,EAAE,OAAO,IAAI,kBAAkB,EAAE,MAAM,uBAAuB,CAAC;AAEtE,YAAY,EAAE,OAAO,EAAE,MAAM,UAAU,CAAC;AACxC,cAAc,UAAU,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/content/index.ts"],"names":[],"mappings":"AAEA,cAAc,YAAY,CAAC;AAC3B,cAAc,iBAAiB,CAAC;AAChC,cAAc,UAAU,CAAC;AAEzB,OAAO,EAAE,OAAO,IAAI,eAAe,EAAE,MAAM,uCAAuC,CAAC;AACnF,OAAO,EAAE,OAAO,IAAI,kBAAkB,EAAE,MAAM,uBAAuB,CAAC;AACtE,OAAO,EAAE,OAAO,IAAI,iBAAiB,EAAE,2BAA2B,EAAE,MAAM,yCAAyC,CAAC;AAEpH,YAAY,EAAE,OAAO,EAAE,MAAM,UAAU,CAAC;AACxC,cAAc,UAAU,CAAC"}
package/content/index.js CHANGED
@@ -5,5 +5,6 @@ export * from "../Presentation";
5
5
  export * from "../Staff";
6
6
  export { default as MarkdownContent } from "../markdownComponents/MarkdownContent";
7
7
  export { default as markdownComponents } from "../markdownComponents";
8
+ export { default as excerptComponents, linkedCardExcerptComponents } from "../markdownComponents/excerptComponents";
8
9
  export * from "../utils";
9
10
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/content/index.ts"],"names":[],"mappings":"AAAA,4EAA4E;AAC5E,mEAAmE;AACnE,cAAc,YAAY,CAAC;AAC3B,cAAc,iBAAiB,CAAC;AAChC,cAAc,UAAU,CAAC;AAEzB,OAAO,EAAE,OAAO,IAAI,eAAe,EAAE,MAAM,uCAAuC,CAAC;AACnF,OAAO,EAAE,OAAO,IAAI,kBAAkB,EAAE,MAAM,uBAAuB,CAAC;AAGtE,cAAc,UAAU,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/content/index.ts"],"names":[],"mappings":"AAAA,4EAA4E;AAC5E,mEAAmE;AACnE,cAAc,YAAY,CAAC;AAC3B,cAAc,iBAAiB,CAAC;AAChC,cAAc,UAAU,CAAC;AAEzB,OAAO,EAAE,OAAO,IAAI,eAAe,EAAE,MAAM,uCAAuC,CAAC;AACnF,OAAO,EAAE,OAAO,IAAI,kBAAkB,EAAE,MAAM,uBAAuB,CAAC;AACtE,OAAO,EAAE,OAAO,IAAI,iBAAiB,EAAE,2BAA2B,EAAE,MAAM,yCAAyC,CAAC;AAGpH,cAAc,UAAU,CAAC"}
@@ -1,11 +1,26 @@
1
1
  import type { GitHubFetchOptions } from "./types";
2
+ /** GitHub's maximum, and the right default for endpoints with small items. */
3
+ export declare const DEFAULT_PER_PAGE = 100;
4
+ export interface GetAllPagesOptions extends GitHubFetchOptions {
5
+ /**
6
+ * Items per request, up to GitHub's maximum of 100. Defaults to 100.
7
+ *
8
+ * Worth lowering for endpoints whose items are large: Next.js refuses to
9
+ * store any response over 2MB in its data cache, so a page that crosses
10
+ * that line is re-fetched by every route that asks for it. Smaller pages
11
+ * mean a few more requests on a cold cache and far fewer on a warm one.
12
+ */
13
+ perPage?: number;
14
+ }
2
15
  /**
3
16
  * Follow a paginated GitHub API list endpoint to the end and return every
4
17
  * item as one array.
5
18
  *
6
19
  * Pagination follows the `Link: <url>; rel="next"` response header, so any
7
- * query parameters on `apiUrl` are preserved across pages.
20
+ * query parameters on `apiUrl` are preserved across pages. Results are
21
+ * memoized per process for the revalidate window; callers get a fresh array
22
+ * each time, so sorting or splicing it is safe.
8
23
  */
9
- export declare function getAllPages<T = unknown>(apiUrl: string | URL, options?: GitHubFetchOptions): Promise<T[]>;
24
+ export declare function getAllPages<T = unknown>(apiUrl: string | URL, options?: GetAllPagesOptions): Promise<T[]>;
10
25
  export default getAllPages;
11
26
  //# sourceMappingURL=getAllPages.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"getAllPages.d.ts","sourceRoot":"","sources":["../../src/github/getAllPages.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,SAAS,CAAC;AAElD;;;;;;GAMG;AACH,wBAAsB,WAAW,CAAC,CAAC,GAAG,OAAO,EAC3C,MAAM,EAAE,MAAM,GAAG,GAAG,EACpB,OAAO,CAAC,EAAE,kBAAkB,GAC3B,OAAO,CAAC,CAAC,EAAE,CAAC,CAgBd;AAWD,eAAe,WAAW,CAAC"}
1
+ {"version":3,"file":"getAllPages.d.ts","sourceRoot":"","sources":["../../src/github/getAllPages.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,SAAS,CAAC;AAElD,8EAA8E;AAC9E,eAAO,MAAM,gBAAgB,MAAM,CAAC;AAEpC,MAAM,WAAW,kBAAmB,SAAQ,kBAAkB;IAC5D;;;;;;;OAOG;IACH,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB;AAED;;;;;;;;GAQG;AACH,wBAAsB,WAAW,CAAC,CAAC,GAAG,OAAO,EAC3C,MAAM,EAAE,MAAM,GAAG,GAAG,EACpB,OAAO,CAAC,EAAE,kBAAkB,GAC3B,OAAO,CAAC,CAAC,EAAE,CAAC,CAiBd;AA4BD,eAAe,WAAW,CAAC"}
@@ -1,18 +1,31 @@
1
- import { githubFetch } from "./githubFetch";
1
+ import { githubFetch, GITHUB_REVALIDATE } from "./githubFetch";
2
+ import { memoize } from "./memo";
3
+ /** GitHub's maximum, and the right default for endpoints with small items. */
4
+ export const DEFAULT_PER_PAGE = 100;
2
5
  /**
3
6
  * Follow a paginated GitHub API list endpoint to the end and return every
4
7
  * item as one array.
5
8
  *
6
9
  * Pagination follows the `Link: <url>; rel="next"` response header, so any
7
- * query parameters on `apiUrl` are preserved across pages.
10
+ * query parameters on `apiUrl` are preserved across pages. Results are
11
+ * memoized per process for the revalidate window; callers get a fresh array
12
+ * each time, so sorting or splicing it is safe.
8
13
  */
9
14
  export async function getAllPages(apiUrl, options) {
10
- const results = [];
15
+ var _a, _b;
11
16
  const first = new URL(apiUrl);
12
17
  if (!first.searchParams.has("per_page")) {
13
- first.searchParams.set("per_page", "100");
18
+ first.searchParams.set("per_page", String((_a = options === null || options === void 0 ? void 0 : options.perPage) !== null && _a !== void 0 ? _a : DEFAULT_PER_PAGE));
14
19
  }
15
- let url = first.toString();
20
+ const url = first.toString();
21
+ const revalidate = (_b = options === null || options === void 0 ? void 0 : options.revalidate) !== null && _b !== void 0 ? _b : GITHUB_REVALIDATE;
22
+ const items = await memoize(`pages:${url}`, revalidate, () => collect(url, options));
23
+ return [...items];
24
+ }
25
+ /** Walk every page of a list endpoint, starting from a prepared URL. */
26
+ async function collect(start, options) {
27
+ const results = [];
28
+ let url = start;
16
29
  while (url) {
17
30
  const res = await githubFetch(url, options);
18
31
  results.push(...(await res.json()));
@@ -1 +1 @@
1
- {"version":3,"file":"getAllPages.js","sourceRoot":"","sources":["../../src/github/getAllPages.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAG5C;;;;;;GAMG;AACH,MAAM,CAAC,KAAK,UAAU,WAAW,CAC/B,MAAoB,EACpB,OAA4B;IAE5B,MAAM,OAAO,GAAQ,EAAE,CAAC;IAExB,MAAM,KAAK,GAAG,IAAI,GAAG,CAAC,MAAM,CAAC,CAAC;IAC9B,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,GAAG,CAAC,UAAU,CAAC,EAAE,CAAC;QACxC,KAAK,CAAC,YAAY,CAAC,GAAG,CAAC,UAAU,EAAE,KAAK,CAAC,CAAC;IAC5C,CAAC;IAED,IAAI,GAAG,GAAuB,KAAK,CAAC,QAAQ,EAAE,CAAC;IAC/C,OAAO,GAAG,EAAE,CAAC;QACX,MAAM,GAAG,GAAG,MAAM,WAAW,CAAC,GAAG,EAAE,OAAO,CAAC,CAAC;QAC5C,OAAO,CAAC,IAAI,CAAC,GAAI,CAAC,MAAM,GAAG,CAAC,IAAI,EAAE,CAAS,CAAC,CAAC;QAC7C,GAAG,GAAG,cAAc,CAAC,GAAG,CAAC,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC;IAChD,CAAC;IAED,OAAO,OAAO,CAAC;AACjB,CAAC;AAED,qEAAqE;AACrE,SAAS,cAAc,CAAC,UAAyB;;IAC/C,IAAI,CAAC,UAAU;QAAE,OAAO,SAAS,CAAC;IAClC,MAAM,IAAI,GAAG,UAAU;SACpB,KAAK,CAAC,GAAG,CAAC;SACV,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC,QAAQ,CAAC,YAAY,CAAC,CAAC,CAAC;IACtD,OAAO,MAAA,IAAI,aAAJ,IAAI,uBAAJ,IAAI,CAAE,KAAK,CAAC,WAAW,CAAC,0CAAG,CAAC,CAAC,CAAC;AACvC,CAAC;AAED,eAAe,WAAW,CAAC"}
1
+ {"version":3,"file":"getAllPages.js","sourceRoot":"","sources":["../../src/github/getAllPages.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,iBAAiB,EAAE,MAAM,eAAe,CAAC;AAC/D,OAAO,EAAE,OAAO,EAAE,MAAM,QAAQ,CAAC;AAGjC,8EAA8E;AAC9E,MAAM,CAAC,MAAM,gBAAgB,GAAG,GAAG,CAAC;AAcpC;;;;;;;;GAQG;AACH,MAAM,CAAC,KAAK,UAAU,WAAW,CAC/B,MAAoB,EACpB,OAA4B;;IAE5B,MAAM,KAAK,GAAG,IAAI,GAAG,CAAC,MAAM,CAAC,CAAC;IAC9B,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,GAAG,CAAC,UAAU,CAAC,EAAE,CAAC;QACxC,KAAK,CAAC,YAAY,CAAC,GAAG,CACpB,UAAU,EACV,MAAM,CAAC,MAAA,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,OAAO,mCAAI,gBAAgB,CAAC,CAC7C,CAAC;IACJ,CAAC;IAED,MAAM,GAAG,GAAG,KAAK,CAAC,QAAQ,EAAE,CAAC;IAC7B,MAAM,UAAU,GAAG,MAAA,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,UAAU,mCAAI,iBAAiB,CAAC;IAE5D,MAAM,KAAK,GAAG,MAAM,OAAO,CAAC,SAAS,GAAG,EAAE,EAAE,UAAU,EAAE,GAAG,EAAE,CAC3D,OAAO,CAAI,GAAG,EAAE,OAAO,CAAC,CACzB,CAAC;IAEF,OAAO,CAAC,GAAG,KAAK,CAAC,CAAC;AACpB,CAAC;AAED,wEAAwE;AACxE,KAAK,UAAU,OAAO,CACpB,KAAa,EACb,OAA4B;IAE5B,MAAM,OAAO,GAAQ,EAAE,CAAC;IAExB,IAAI,GAAG,GAAuB,KAAK,CAAC;IACpC,OAAO,GAAG,EAAE,CAAC;QACX,MAAM,GAAG,GAAG,MAAM,WAAW,CAAC,GAAG,EAAE,OAAO,CAAC,CAAC;QAC5C,OAAO,CAAC,IAAI,CAAC,GAAI,CAAC,MAAM,GAAG,CAAC,IAAI,EAAE,CAAS,CAAC,CAAC;QAC7C,GAAG,GAAG,cAAc,CAAC,GAAG,CAAC,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC;IAChD,CAAC;IAED,OAAO,OAAO,CAAC;AACjB,CAAC;AAED,qEAAqE;AACrE,SAAS,cAAc,CAAC,UAAyB;;IAC/C,IAAI,CAAC,UAAU;QAAE,OAAO,SAAS,CAAC;IAClC,MAAM,IAAI,GAAG,UAAU;SACpB,KAAK,CAAC,GAAG,CAAC;SACV,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC,QAAQ,CAAC,YAAY,CAAC,CAAC,CAAC;IACtD,OAAO,MAAA,IAAI,aAAJ,IAAI,uBAAJ,IAAI,CAAE,KAAK,CAAC,WAAW,CAAC,0CAAG,CAAC,CAAC,CAAC;AACvC,CAAC;AAED,eAAe,WAAW,CAAC"}
@@ -1,6 +1,9 @@
1
1
  import type { GitHubFetchOptions } from "./types";
2
2
  /**
3
3
  * The text contents of one file in a branch.
4
+ *
5
+ * Memoized per process for the revalidate window: an index page and the detail
6
+ * page for the same article both read the same file.
4
7
  */
5
8
  export declare function getRawFile(organization: string, repo: string, path: string, branch: string, options?: GitHubFetchOptions): Promise<string>;
6
9
  export default getRawFile;
@@ -1 +1 @@
1
- {"version":3,"file":"getRawFile.d.ts","sourceRoot":"","sources":["../../src/github/getRawFile.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,SAAS,CAAC;AAElD;;GAEG;AACH,wBAAsB,UAAU,CAC9B,YAAY,EAAE,MAAM,EACpB,IAAI,EAAE,MAAM,EACZ,IAAI,EAAE,MAAM,EACZ,MAAM,EAAE,MAAM,EACd,OAAO,CAAC,EAAE,kBAAkB,GAC3B,OAAO,CAAC,MAAM,CAAC,CAMjB;AAED,eAAe,UAAU,CAAC"}
1
+ {"version":3,"file":"getRawFile.d.ts","sourceRoot":"","sources":["../../src/github/getRawFile.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,SAAS,CAAC;AAElD;;;;;GAKG;AACH,wBAAsB,UAAU,CAC9B,YAAY,EAAE,MAAM,EACpB,IAAI,EAAE,MAAM,EACZ,IAAI,EAAE,MAAM,EACZ,MAAM,EAAE,MAAM,EACd,OAAO,CAAC,EAAE,kBAAkB,GAC3B,OAAO,CAAC,MAAM,CAAC,CAUjB;AAED,eAAe,UAAU,CAAC"}
@@ -1,13 +1,21 @@
1
- import { githubFetch } from "./githubFetch";
1
+ import { githubFetch, GITHUB_REVALIDATE } from "./githubFetch";
2
+ import { memoize } from "./memo";
2
3
  /**
3
4
  * The text contents of one file in a branch.
5
+ *
6
+ * Memoized per process for the revalidate window: an index page and the detail
7
+ * page for the same article both read the same file.
4
8
  */
5
9
  export async function getRawFile(organization, repo, path, branch, options) {
10
+ var _a;
6
11
  const url = `https://raw.githubusercontent.com/${organization}/${repo}/${branch}/${path}`;
7
- const res = await githubFetch(url, options, {
8
- headers: { accept: "application/vnd.github.raw" },
12
+ const revalidate = (_a = options === null || options === void 0 ? void 0 : options.revalidate) !== null && _a !== void 0 ? _a : GITHUB_REVALIDATE;
13
+ return memoize(`raw:${url}`, revalidate, async () => {
14
+ const res = await githubFetch(url, options, {
15
+ headers: { accept: "application/vnd.github.raw" },
16
+ });
17
+ return await res.text();
9
18
  });
10
- return await res.text();
11
19
  }
12
20
  export default getRawFile;
13
21
  //# sourceMappingURL=getRawFile.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"getRawFile.js","sourceRoot":"","sources":["../../src/github/getRawFile.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAG5C;;GAEG;AACH,MAAM,CAAC,KAAK,UAAU,UAAU,CAC9B,YAAoB,EACpB,IAAY,EACZ,IAAY,EACZ,MAAc,EACd,OAA4B;IAE5B,MAAM,GAAG,GAAG,qCAAqC,YAAY,IAAI,IAAI,IAAI,MAAM,IAAI,IAAI,EAAE,CAAC;IAC1F,MAAM,GAAG,GAAG,MAAM,WAAW,CAAC,GAAG,EAAE,OAAO,EAAE;QAC1C,OAAO,EAAE,EAAE,MAAM,EAAE,4BAA4B,EAAE;KAClD,CAAC,CAAC;IACH,OAAO,MAAM,GAAG,CAAC,IAAI,EAAE,CAAC;AAC1B,CAAC;AAED,eAAe,UAAU,CAAC"}
1
+ {"version":3,"file":"getRawFile.js","sourceRoot":"","sources":["../../src/github/getRawFile.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,iBAAiB,EAAE,MAAM,eAAe,CAAC;AAC/D,OAAO,EAAE,OAAO,EAAE,MAAM,QAAQ,CAAC;AAGjC;;;;;GAKG;AACH,MAAM,CAAC,KAAK,UAAU,UAAU,CAC9B,YAAoB,EACpB,IAAY,EACZ,IAAY,EACZ,MAAc,EACd,OAA4B;;IAE5B,MAAM,GAAG,GAAG,qCAAqC,YAAY,IAAI,IAAI,IAAI,MAAM,IAAI,IAAI,EAAE,CAAC;IAC1F,MAAM,UAAU,GAAG,MAAA,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,UAAU,mCAAI,iBAAiB,CAAC;IAE5D,OAAO,OAAO,CAAC,OAAO,GAAG,EAAE,EAAE,UAAU,EAAE,KAAK,IAAI,EAAE;QAClD,MAAM,GAAG,GAAG,MAAM,WAAW,CAAC,GAAG,EAAE,OAAO,EAAE;YAC1C,OAAO,EAAE,EAAE,MAAM,EAAE,4BAA4B,EAAE;SAClD,CAAC,CAAC;QACH,OAAO,MAAM,GAAG,CAAC,IAAI,EAAE,CAAC;IAC1B,CAAC,CAAC,CAAC;AACL,CAAC;AAED,eAAe,UAAU,CAAC"}
@@ -1,6 +1,9 @@
1
1
  import type { GitHubFetchOptions, GitTree } from "./types";
2
2
  /**
3
3
  * The full recursive file tree of a branch.
4
+ *
5
+ * Memoized per process for the revalidate window, since every page built from
6
+ * a content repo starts by asking for the same tree.
4
7
  */
5
8
  export declare function getTree(organization: string, repo: string, branch: string, options?: GitHubFetchOptions): Promise<GitTree>;
6
9
  export default getTree;
@@ -1 +1 @@
1
- {"version":3,"file":"getTree.d.ts","sourceRoot":"","sources":["../../src/github/getTree.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,kBAAkB,EAAE,OAAO,EAAE,MAAM,SAAS,CAAC;AAE3D;;GAEG;AACH,wBAAsB,OAAO,CAC3B,YAAY,EAAE,MAAM,EACpB,IAAI,EAAE,MAAM,EACZ,MAAM,EAAE,MAAM,EACd,OAAO,CAAC,EAAE,kBAAkB,GAC3B,OAAO,CAAC,OAAO,CAAC,CAIlB;AAED,eAAe,OAAO,CAAC"}
1
+ {"version":3,"file":"getTree.d.ts","sourceRoot":"","sources":["../../src/github/getTree.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,kBAAkB,EAAE,OAAO,EAAE,MAAM,SAAS,CAAC;AAE3D;;;;;GAKG;AACH,wBAAsB,OAAO,CAC3B,YAAY,EAAE,MAAM,EACpB,IAAI,EAAE,MAAM,EACZ,MAAM,EAAE,MAAM,EACd,OAAO,CAAC,EAAE,kBAAkB,GAC3B,OAAO,CAAC,OAAO,CAAC,CAQlB;AAED,eAAe,OAAO,CAAC"}
package/github/getTree.js CHANGED
@@ -1,11 +1,19 @@
1
- import { githubFetch } from "./githubFetch";
1
+ import { githubFetch, GITHUB_REVALIDATE } from "./githubFetch";
2
+ import { memoize } from "./memo";
2
3
  /**
3
4
  * The full recursive file tree of a branch.
5
+ *
6
+ * Memoized per process for the revalidate window, since every page built from
7
+ * a content repo starts by asking for the same tree.
4
8
  */
5
9
  export async function getTree(organization, repo, branch, options) {
10
+ var _a;
6
11
  const url = `https://api.github.com/repos/${organization}/${repo}/git/trees/${branch}?recursive=1`;
7
- const res = await githubFetch(url, options);
8
- return (await res.json());
12
+ const revalidate = (_a = options === null || options === void 0 ? void 0 : options.revalidate) !== null && _a !== void 0 ? _a : GITHUB_REVALIDATE;
13
+ return memoize(`tree:${url}`, revalidate, async () => {
14
+ const res = await githubFetch(url, options);
15
+ return (await res.json());
16
+ });
9
17
  }
10
18
  export default getTree;
11
19
  //# sourceMappingURL=getTree.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"getTree.js","sourceRoot":"","sources":["../../src/github/getTree.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAG5C;;GAEG;AACH,MAAM,CAAC,KAAK,UAAU,OAAO,CAC3B,YAAoB,EACpB,IAAY,EACZ,MAAc,EACd,OAA4B;IAE5B,MAAM,GAAG,GAAG,gCAAgC,YAAY,IAAI,IAAI,cAAc,MAAM,cAAc,CAAC;IACnG,MAAM,GAAG,GAAG,MAAM,WAAW,CAAC,GAAG,EAAE,OAAO,CAAC,CAAC;IAC5C,OAAO,CAAC,MAAM,GAAG,CAAC,IAAI,EAAE,CAAY,CAAC;AACvC,CAAC;AAED,eAAe,OAAO,CAAC"}
1
+ {"version":3,"file":"getTree.js","sourceRoot":"","sources":["../../src/github/getTree.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,iBAAiB,EAAE,MAAM,eAAe,CAAC;AAC/D,OAAO,EAAE,OAAO,EAAE,MAAM,QAAQ,CAAC;AAGjC;;;;;GAKG;AACH,MAAM,CAAC,KAAK,UAAU,OAAO,CAC3B,YAAoB,EACpB,IAAY,EACZ,MAAc,EACd,OAA4B;;IAE5B,MAAM,GAAG,GAAG,gCAAgC,YAAY,IAAI,IAAI,cAAc,MAAM,cAAc,CAAC;IACnG,MAAM,UAAU,GAAG,MAAA,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,UAAU,mCAAI,iBAAiB,CAAC;IAE5D,OAAO,OAAO,CAAC,QAAQ,GAAG,EAAE,EAAE,UAAU,EAAE,KAAK,IAAI,EAAE;QACnD,MAAM,GAAG,GAAG,MAAM,WAAW,CAAC,GAAG,EAAE,OAAO,CAAC,CAAC;QAC5C,OAAO,CAAC,MAAM,GAAG,CAAC,IAAI,EAAE,CAAY,CAAC;IACvC,CAAC,CAAC,CAAC;AACL,CAAC;AAED,eAAe,OAAO,CAAC"}
package/github/index.d.ts CHANGED
@@ -2,7 +2,8 @@ export { githubFetch, GITHUB_REVALIDATE } from "./githubFetch";
2
2
  export { getTree } from "./getTree";
3
3
  export { getRepoPaths } from "./getRepoPaths";
4
4
  export { getRawFile } from "./getRawFile";
5
- export { getAllPages } from "./getAllPages";
5
+ export { getAllPages, DEFAULT_PER_PAGE } from "./getAllPages";
6
+ export type { GetAllPagesOptions } from "./getAllPages";
6
7
  export type { GitHubFetchOptions, GitTree, GitTreeItem } from "./types";
7
8
  export * from "../Release";
8
9
  export * from "../Security";
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/github/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,iBAAiB,EAAE,MAAM,eAAe,CAAC;AAC/D,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACpC,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAC9C,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAC1C,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAC5C,YAAY,EAAE,kBAAkB,EAAE,OAAO,EAAE,WAAW,EAAE,MAAM,SAAS,CAAC;AAExE,cAAc,YAAY,CAAC;AAC3B,cAAc,aAAa,CAAC;AAC5B,cAAc,cAAc,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/github/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,iBAAiB,EAAE,MAAM,eAAe,CAAC;AAC/D,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACpC,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAC9C,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAC1C,OAAO,EAAE,WAAW,EAAE,gBAAgB,EAAE,MAAM,eAAe,CAAC;AAC9D,YAAY,EAAE,kBAAkB,EAAE,MAAM,eAAe,CAAC;AACxD,YAAY,EAAE,kBAAkB,EAAE,OAAO,EAAE,WAAW,EAAE,MAAM,SAAS,CAAC;AAExE,cAAc,YAAY,CAAC;AAC3B,cAAc,aAAa,CAAC;AAC5B,cAAc,cAAc,CAAC"}
package/github/index.js CHANGED
@@ -2,7 +2,7 @@ export { githubFetch, GITHUB_REVALIDATE } from "./githubFetch";
2
2
  export { getTree } from "./getTree";
3
3
  export { getRepoPaths } from "./getRepoPaths";
4
4
  export { getRawFile } from "./getRawFile";
5
- export { getAllPages } from "./getAllPages";
5
+ export { getAllPages, DEFAULT_PER_PAGE } from "./getAllPages";
6
6
  export * from "../Release";
7
7
  export * from "../Security";
8
8
  export * from "../Milestone";
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/github/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,iBAAiB,EAAE,MAAM,eAAe,CAAC;AAC/D,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACpC,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAC9C,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAC1C,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAG5C,cAAc,YAAY,CAAC;AAC3B,cAAc,aAAa,CAAC;AAC5B,cAAc,cAAc,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/github/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,iBAAiB,EAAE,MAAM,eAAe,CAAC;AAC/D,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACpC,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAC9C,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAC1C,OAAO,EAAE,WAAW,EAAE,gBAAgB,EAAE,MAAM,eAAe,CAAC;AAI9D,cAAc,YAAY,CAAC;AAC3B,cAAc,aAAa,CAAC;AAC5B,cAAc,cAAc,CAAC"}
@@ -0,0 +1,25 @@
1
+ /**
2
+ * Process-local memo for GitHub responses.
3
+ *
4
+ * Next.js's data cache already de-duplicates identical fetches, but it is
5
+ * skipped entirely for responses over 2MB. A static export that renders
6
+ * hundreds of pages from one large list endpoint therefore re-requests that
7
+ * endpoint once per page. This keeps a single in-flight promise per request
8
+ * for the length of the revalidate window, so each build makes the request
9
+ * once per worker process instead of once per page.
10
+ *
11
+ * Entries expire after `ttlSeconds` so a long-running `next dev` server still
12
+ * picks up new content on the same schedule as the data cache.
13
+ *
14
+ * Keys are the request URL only, so a process that talks to GitHub as more
15
+ * than one identity would share entries between them. Every getter in this
16
+ * library reads one token from the environment, so that does not arise here.
17
+ */
18
+ /**
19
+ * Run `load` once per `key` per TTL window, sharing the promise with every
20
+ * caller that asks in the meantime. A `ttlSeconds` of zero or less disables
21
+ * memoization, matching `revalidate: 0`'s "always fetch fresh".
22
+ */
23
+ export declare function memoize<T>(key: string, ttlSeconds: number, load: () => Promise<T>): Promise<T>;
24
+ export default memoize;
25
+ //# sourceMappingURL=memo.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"memo.d.ts","sourceRoot":"","sources":["../../src/github/memo.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;GAgBG;AAgBH;;;;GAIG;AACH,wBAAgB,OAAO,CAAC,CAAC,EACvB,GAAG,EAAE,MAAM,EACX,UAAU,EAAE,MAAM,EAClB,IAAI,EAAE,MAAM,OAAO,CAAC,CAAC,CAAC,GACrB,OAAO,CAAC,CAAC,CAAC,CAiBZ;AAED,eAAe,OAAO,CAAC"}
package/github/memo.js ADDED
@@ -0,0 +1,49 @@
1
+ /**
2
+ * Process-local memo for GitHub responses.
3
+ *
4
+ * Next.js's data cache already de-duplicates identical fetches, but it is
5
+ * skipped entirely for responses over 2MB. A static export that renders
6
+ * hundreds of pages from one large list endpoint therefore re-requests that
7
+ * endpoint once per page. This keeps a single in-flight promise per request
8
+ * for the length of the revalidate window, so each build makes the request
9
+ * once per worker process instead of once per page.
10
+ *
11
+ * Entries expire after `ttlSeconds` so a long-running `next dev` server still
12
+ * picks up new content on the same schedule as the data cache.
13
+ *
14
+ * Keys are the request URL only, so a process that talks to GitHub as more
15
+ * than one identity would share entries between them. Every getter in this
16
+ * library reads one token from the environment, so that does not arise here.
17
+ */
18
+ const entries = new Map();
19
+ /** Drop expired entries so a long dev session doesn't grow the map forever. */
20
+ function prune(now) {
21
+ for (const [key, entry] of entries) {
22
+ if (entry.expires <= now)
23
+ entries.delete(key);
24
+ }
25
+ }
26
+ /**
27
+ * Run `load` once per `key` per TTL window, sharing the promise with every
28
+ * caller that asks in the meantime. A `ttlSeconds` of zero or less disables
29
+ * memoization, matching `revalidate: 0`'s "always fetch fresh".
30
+ */
31
+ export function memoize(key, ttlSeconds, load) {
32
+ if (ttlSeconds <= 0)
33
+ return load();
34
+ const now = Date.now();
35
+ const hit = entries.get(key);
36
+ if (hit && hit.expires > now)
37
+ return hit.value;
38
+ // A rejected request must not be remembered, or one blip poisons the build.
39
+ const value = load().catch((error) => {
40
+ entries.delete(key);
41
+ throw error;
42
+ });
43
+ if (entries.size > 256)
44
+ prune(now);
45
+ entries.set(key, { expires: now + ttlSeconds * 1000, value });
46
+ return value;
47
+ }
48
+ export default memoize;
49
+ //# sourceMappingURL=memo.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"memo.js","sourceRoot":"","sources":["../../src/github/memo.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;GAgBG;AAOH,MAAM,OAAO,GAAG,IAAI,GAAG,EAAiB,CAAC;AAEzC,+EAA+E;AAC/E,SAAS,KAAK,CAAC,GAAW;IACxB,KAAK,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,IAAI,OAAO,EAAE,CAAC;QACnC,IAAI,KAAK,CAAC,OAAO,IAAI,GAAG;YAAE,OAAO,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;IAChD,CAAC;AACH,CAAC;AAED;;;;GAIG;AACH,MAAM,UAAU,OAAO,CACrB,GAAW,EACX,UAAkB,EAClB,IAAsB;IAEtB,IAAI,UAAU,IAAI,CAAC;QAAE,OAAO,IAAI,EAAE,CAAC;IAEnC,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;IACvB,MAAM,GAAG,GAAG,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;IAC7B,IAAI,GAAG,IAAI,GAAG,CAAC,OAAO,GAAG,GAAG;QAAE,OAAO,GAAG,CAAC,KAAmB,CAAC;IAE7D,4EAA4E;IAC5E,MAAM,KAAK,GAAG,IAAI,EAAE,CAAC,KAAK,CAAC,CAAC,KAAK,EAAE,EAAE;QACnC,OAAO,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;QACpB,MAAM,KAAK,CAAC;IACd,CAAC,CAAC,CAAC;IAEH,IAAI,OAAO,CAAC,IAAI,GAAG,GAAG;QAAE,KAAK,CAAC,GAAG,CAAC,CAAC;IACnC,OAAO,CAAC,GAAG,CAAC,GAAG,EAAE,EAAE,OAAO,EAAE,GAAG,GAAG,UAAU,GAAG,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC;IAE9D,OAAO,KAAK,CAAC;AACf,CAAC;AAED,eAAe,OAAO,CAAC"}
package/index.d.ts CHANGED
@@ -7,6 +7,7 @@ export * from "./Milestone";
7
7
  export { githubFetch, GITHUB_REVALIDATE, getTree, getRepoPaths, getRawFile, getAllPages, type GitHubFetchOptions, type GitTree, type GitTreeItem, } from "./github";
8
8
  export { default as MarkdownContent } from "./markdownComponents/MarkdownContent";
9
9
  export { default as markdownComponents } from "./markdownComponents";
10
+ export { default as excerptComponents, linkedCardExcerptComponents } from "./markdownComponents/excerptComponents";
10
11
  export { default as BigNumber, type BigNumberProps } from "./BigNumber";
11
12
  export { default as PieChart, type PieChartData } from "./PieChart";
12
13
  export { default as ColorBar } from "./ColorBar";
package/index.d.ts.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AACA,cAAc,WAAW,CAAC;AAC1B,cAAc,gBAAgB,CAAC;AAC/B,cAAc,SAAS,CAAC;AACxB,cAAc,WAAW,CAAC;AAC1B,cAAc,YAAY,CAAC;AAC3B,cAAc,aAAa,CAAC;AAG5B,OAAO,EACL,WAAW,EACX,iBAAiB,EACjB,OAAO,EACP,YAAY,EACZ,UAAU,EACV,WAAW,EACX,KAAK,kBAAkB,EACvB,KAAK,OAAO,EACZ,KAAK,WAAW,GACjB,MAAM,UAAU,CAAC;AAElB,OAAO,EAAE,OAAO,IAAI,eAAe,EAAE,MAAM,sCAAsC,CAAC;AAClF,OAAO,EAAE,OAAO,IAAI,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAGrE,OAAO,EAAE,OAAO,IAAI,SAAS,EAAE,KAAK,cAAc,EAAE,MAAM,aAAa,CAAC;AACxE,OAAO,EAAE,OAAO,IAAI,QAAQ,EAAE,KAAK,YAAY,EAAE,MAAM,YAAY,CAAC;AACpE,OAAO,EAAE,OAAO,IAAI,QAAQ,EAAE,MAAM,YAAY,CAAC;AACjD,OAAO,EAAE,OAAO,IAAI,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAC3D,OAAO,EAAE,OAAO,IAAI,KAAK,EAAE,KAAK,UAAU,EAAE,MAAM,SAAS,CAAC;AAC5D,OAAO,EAAE,OAAO,IAAI,OAAO,EAAE,MAAM,WAAW,CAAC;AAC/C,cAAc,WAAW,CAAC;AAC1B,OAAO,EAAE,OAAO,IAAI,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAC7D,cAAc,MAAM,CAAC;AAErB,YAAY,EAAE,OAAO,EAAE,MAAM,SAAS,CAAC;AACvC,cAAc,SAAS,CAAC;AACxB,cAAc,UAAU,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AACA,cAAc,WAAW,CAAC;AAC1B,cAAc,gBAAgB,CAAC;AAC/B,cAAc,SAAS,CAAC;AACxB,cAAc,WAAW,CAAC;AAC1B,cAAc,YAAY,CAAC;AAC3B,cAAc,aAAa,CAAC;AAG5B,OAAO,EACL,WAAW,EACX,iBAAiB,EACjB,OAAO,EACP,YAAY,EACZ,UAAU,EACV,WAAW,EACX,KAAK,kBAAkB,EACvB,KAAK,OAAO,EACZ,KAAK,WAAW,GACjB,MAAM,UAAU,CAAC;AAElB,OAAO,EAAE,OAAO,IAAI,eAAe,EAAE,MAAM,sCAAsC,CAAC;AAClF,OAAO,EAAE,OAAO,IAAI,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AACrE,OAAO,EAAE,OAAO,IAAI,iBAAiB,EAAE,2BAA2B,EAAE,MAAM,wCAAwC,CAAC;AAGnH,OAAO,EAAE,OAAO,IAAI,SAAS,EAAE,KAAK,cAAc,EAAE,MAAM,aAAa,CAAC;AACxE,OAAO,EAAE,OAAO,IAAI,QAAQ,EAAE,KAAK,YAAY,EAAE,MAAM,YAAY,CAAC;AACpE,OAAO,EAAE,OAAO,IAAI,QAAQ,EAAE,MAAM,YAAY,CAAC;AACjD,OAAO,EAAE,OAAO,IAAI,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAC3D,OAAO,EAAE,OAAO,IAAI,KAAK,EAAE,KAAK,UAAU,EAAE,MAAM,SAAS,CAAC;AAC5D,OAAO,EAAE,OAAO,IAAI,OAAO,EAAE,MAAM,WAAW,CAAC;AAC/C,cAAc,WAAW,CAAC;AAC1B,OAAO,EAAE,OAAO,IAAI,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAC7D,cAAc,MAAM,CAAC;AAErB,YAAY,EAAE,OAAO,EAAE,MAAM,SAAS,CAAC;AACvC,cAAc,SAAS,CAAC;AACxB,cAAc,UAAU,CAAC"}
package/index.js CHANGED
@@ -9,6 +9,7 @@ export * from "./Milestone";
9
9
  export { githubFetch, GITHUB_REVALIDATE, getTree, getRepoPaths, getRawFile, getAllPages, } from "./github";
10
10
  export { default as MarkdownContent } from "./markdownComponents/MarkdownContent";
11
11
  export { default as markdownComponents } from "./markdownComponents";
12
+ export { default as excerptComponents, linkedCardExcerptComponents } from "./markdownComponents/excerptComponents";
12
13
  // Standalone components.
13
14
  export { default as BigNumber } from "./BigNumber";
14
15
  export { default as PieChart } from "./PieChart";
package/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,yEAAyE;AACzE,cAAc,WAAW,CAAC;AAC1B,cAAc,gBAAgB,CAAC;AAC/B,cAAc,SAAS,CAAC;AACxB,cAAc,WAAW,CAAC;AAC1B,cAAc,YAAY,CAAC;AAC3B,cAAc,aAAa,CAAC;AAE5B,iDAAiD;AACjD,OAAO,EACL,WAAW,EACX,iBAAiB,EACjB,OAAO,EACP,YAAY,EACZ,UAAU,EACV,WAAW,GAIZ,MAAM,UAAU,CAAC;AAElB,OAAO,EAAE,OAAO,IAAI,eAAe,EAAE,MAAM,sCAAsC,CAAC;AAClF,OAAO,EAAE,OAAO,IAAI,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAErE,yBAAyB;AACzB,OAAO,EAAE,OAAO,IAAI,SAAS,EAAuB,MAAM,aAAa,CAAC;AACxE,OAAO,EAAE,OAAO,IAAI,QAAQ,EAAqB,MAAM,YAAY,CAAC;AACpE,OAAO,EAAE,OAAO,IAAI,QAAQ,EAAE,MAAM,YAAY,CAAC;AACjD,OAAO,EAAE,OAAO,IAAI,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAC3D,OAAO,EAAE,OAAO,IAAI,KAAK,EAAmB,MAAM,SAAS,CAAC;AAC5D,OAAO,EAAE,OAAO,IAAI,OAAO,EAAE,MAAM,WAAW,CAAC;AAC/C,cAAc,WAAW,CAAC;AAC1B,OAAO,EAAE,OAAO,IAAI,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAC7D,cAAc,MAAM,CAAC;AAGrB,cAAc,SAAS,CAAC;AACxB,cAAc,UAAU,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,yEAAyE;AACzE,cAAc,WAAW,CAAC;AAC1B,cAAc,gBAAgB,CAAC;AAC/B,cAAc,SAAS,CAAC;AACxB,cAAc,WAAW,CAAC;AAC1B,cAAc,YAAY,CAAC;AAC3B,cAAc,aAAa,CAAC;AAE5B,iDAAiD;AACjD,OAAO,EACL,WAAW,EACX,iBAAiB,EACjB,OAAO,EACP,YAAY,EACZ,UAAU,EACV,WAAW,GAIZ,MAAM,UAAU,CAAC;AAElB,OAAO,EAAE,OAAO,IAAI,eAAe,EAAE,MAAM,sCAAsC,CAAC;AAClF,OAAO,EAAE,OAAO,IAAI,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AACrE,OAAO,EAAE,OAAO,IAAI,iBAAiB,EAAE,2BAA2B,EAAE,MAAM,wCAAwC,CAAC;AAEnH,yBAAyB;AACzB,OAAO,EAAE,OAAO,IAAI,SAAS,EAAuB,MAAM,aAAa,CAAC;AACxE,OAAO,EAAE,OAAO,IAAI,QAAQ,EAAqB,MAAM,YAAY,CAAC;AACpE,OAAO,EAAE,OAAO,IAAI,QAAQ,EAAE,MAAM,YAAY,CAAC;AACjD,OAAO,EAAE,OAAO,IAAI,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAC3D,OAAO,EAAE,OAAO,IAAI,KAAK,EAAmB,MAAM,SAAS,CAAC;AAC5D,OAAO,EAAE,OAAO,IAAI,OAAO,EAAE,MAAM,WAAW,CAAC;AAC/C,cAAc,WAAW,CAAC;AAC1B,OAAO,EAAE,OAAO,IAAI,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAC7D,cAAc,MAAM,CAAC;AAGrB,cAAc,SAAS,CAAC;AACxB,cAAc,UAAU,CAAC"}
@@ -0,0 +1,24 @@
1
+ import type { Components } from "react-markdown";
2
+ /**
3
+ * Markdown components for the short excerpt shown on an article card.
4
+ *
5
+ * Card excerpts are a fixed, small block of text, so the block-level structure
6
+ * of the full article map is flattened: a stray heading in an excerpt renders
7
+ * at body size rather than blowing out the card.
8
+ *
9
+ * Links take the theme's body text color (`palette.text.primary`) and carry no
10
+ * underline, so a link in an excerpt reads as ordinary text rather than
11
+ * pulling the eye away from the card's title.
12
+ */
13
+ declare const excerptComponents: Components;
14
+ /**
15
+ * The same map for an excerpt that sits *inside* a card-wide link.
16
+ *
17
+ * A nested `<a>` is invalid HTML — the browser's parser closes the outer
18
+ * anchor and hoists the inner one out, which tears the card's markup apart on
19
+ * hydration. Links in the excerpt therefore render as plain spans — same text
20
+ * color, no underline — and the card as a whole navigates to the article.
21
+ */
22
+ export declare const linkedCardExcerptComponents: Components;
23
+ export default excerptComponents;
24
+ //# sourceMappingURL=excerptComponents.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"excerptComponents.d.ts","sourceRoot":"","sources":["../../src/markdownComponents/excerptComponents.tsx"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAC;AAiBjD;;;;;;;;;;GAUG;AACH,QAAA,MAAM,iBAAiB,EAAE,UAYxB,CAAC;AAEF;;;;;;;GAOG;AACH,eAAO,MAAM,2BAA2B,EAAE,UAOzC,CAAC;AAEF,eAAe,iBAAiB,CAAC"}
@@ -0,0 +1,46 @@
1
+ import { jsx as _jsx } from "react/jsx-runtime";
2
+ import Box from "@mui/material/Box";
3
+ import MuiLink from "@mui/material/Link";
4
+ import Typography from "@mui/material/Typography";
5
+ import markdownComponents from "./markdownComponents";
6
+ /** Every block in an excerpt renders at body size, headings included. */
7
+ const ExcerptBlock = ({ children, node, ...props }) => (_jsx(Typography, { variant: "body1", component: "div",
8
+ // Space between paragraphs, but nothing trailing: a bottom margin on the
9
+ // last block would push the card's own padding open.
10
+ sx: { "&:not(:last-child)": { mb: 1 } }, ...props, children: children }));
11
+ /**
12
+ * Markdown components for the short excerpt shown on an article card.
13
+ *
14
+ * Card excerpts are a fixed, small block of text, so the block-level structure
15
+ * of the full article map is flattened: a stray heading in an excerpt renders
16
+ * at body size rather than blowing out the card.
17
+ *
18
+ * Links take the theme's body text color (`palette.text.primary`) and carry no
19
+ * underline, so a link in an excerpt reads as ordinary text rather than
20
+ * pulling the eye away from the card's title.
21
+ */
22
+ const excerptComponents = {
23
+ ...markdownComponents,
24
+ a: ({ node, ...props }) => (_jsx(MuiLink, { underline: "none", sx: { color: "text.primary" }, ...props })),
25
+ p: ExcerptBlock,
26
+ h1: ExcerptBlock,
27
+ h2: ExcerptBlock,
28
+ h3: ExcerptBlock,
29
+ h4: ExcerptBlock,
30
+ h5: ExcerptBlock,
31
+ h6: ExcerptBlock,
32
+ };
33
+ /**
34
+ * The same map for an excerpt that sits *inside* a card-wide link.
35
+ *
36
+ * A nested `<a>` is invalid HTML — the browser's parser closes the outer
37
+ * anchor and hoists the inner one out, which tears the card's markup apart on
38
+ * hydration. Links in the excerpt therefore render as plain spans — same text
39
+ * color, no underline — and the card as a whole navigates to the article.
40
+ */
41
+ export const linkedCardExcerptComponents = {
42
+ ...excerptComponents,
43
+ a: ({ children, href, node, ...props }) => (_jsx(Box, { component: "span", ...props, children: children })),
44
+ };
45
+ export default excerptComponents;
46
+ //# sourceMappingURL=excerptComponents.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"excerptComponents.js","sourceRoot":"","sources":["../../src/markdownComponents/excerptComponents.tsx"],"names":[],"mappings":";AAAA,OAAO,GAAG,MAAM,mBAAmB,CAAC;AACpC,OAAO,OAAO,MAAM,oBAAoB,CAAC;AACzC,OAAO,UAAU,MAAM,0BAA0B,CAAC;AAElD,OAAO,kBAAkB,MAAM,sBAAsB,CAAC;AAEtD,yEAAyE;AACzE,MAAM,YAAY,GAAoB,CAAC,EAAE,QAAQ,EAAE,IAAI,EAAE,GAAG,KAAK,EAAE,EAAE,EAAE,CAAC,CACtE,KAAC,UAAU,IACT,OAAO,EAAC,OAAO,EACf,SAAS,EAAC,KAAK;IACf,yEAAyE;IACzE,qDAAqD;IACrD,EAAE,EAAE,EAAE,oBAAoB,EAAE,EAAE,EAAE,EAAE,CAAC,EAAE,EAAE,KACnC,KAAK,YAER,QAAQ,GACE,CACd,CAAC;AAEF;;;;;;;;;;GAUG;AACH,MAAM,iBAAiB,GAAe;IACpC,GAAG,kBAAkB;IACrB,CAAC,EAAE,CAAC,EAAE,IAAI,EAAE,GAAG,KAAK,EAAE,EAAE,EAAE,CAAC,CACzB,KAAC,OAAO,IAAC,SAAS,EAAC,MAAM,EAAC,EAAE,EAAE,EAAE,KAAK,EAAE,cAAc,EAAE,KAAM,KAAK,GAAI,CACvE;IACD,CAAC,EAAE,YAAY;IACf,EAAE,EAAE,YAAY;IAChB,EAAE,EAAE,YAAY;IAChB,EAAE,EAAE,YAAY;IAChB,EAAE,EAAE,YAAY;IAChB,EAAE,EAAE,YAAY;IAChB,EAAE,EAAE,YAAY;CACjB,CAAC;AAEF;;;;;;;GAOG;AACH,MAAM,CAAC,MAAM,2BAA2B,GAAe;IACrD,GAAG,iBAAiB;IACpB,CAAC,EAAE,CAAC,EAAE,QAAQ,EAAE,IAAI,EAAE,IAAI,EAAE,GAAG,KAAK,EAAE,EAAE,EAAE,CAAC,CACzC,KAAC,GAAG,IAAC,SAAS,EAAC,MAAM,KAAK,KAAK,YAC5B,QAAQ,GACL,CACP;CACF,CAAC;AAEF,eAAe,iBAAiB,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"markdownComponents.d.ts","sourceRoot":"","sources":["../../src/markdownComponents/markdownComponents.tsx"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAC;AAEjD,QAAA,MAAM,kBAAkB,EAAE,UAsIzB,CAAC;AAEF,eAAe,kBAAkB,CAAC"}
1
+ {"version":3,"file":"markdownComponents.d.ts","sourceRoot":"","sources":["../../src/markdownComponents/markdownComponents.tsx"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAC;AAUjD,QAAA,MAAM,kBAAkB,EAAE,UA4IzB,CAAC;AAEF,eAAe,kBAAkB,CAAC"}
@@ -2,31 +2,38 @@ import { jsx as _jsx, Fragment as _Fragment, jsxs as _jsxs } from "react/jsx-run
2
2
  import Box from "@mui/material/Box";
3
3
  import MuiLink from "@mui/material/Link";
4
4
  import Typography from "@mui/material/Typography";
5
+ /*
6
+ * react-markdown hands every component the mdast `node` it came from. It is
7
+ * useful for inspecting the source tree, but it is not a DOM attribute, and
8
+ * MUI forwards unknown props straight through — so leaving it in the spread
9
+ * stamps `node="[object Object]"` onto the rendered element. Every component
10
+ * below drops it before spreading the rest.
11
+ */
5
12
  const markdownComponents = {
6
- h1: ({ children, ...props }) => {
13
+ h1: ({ children, node, ...props }) => {
7
14
  return (_jsx(Typography, { component: "h1", variant: "h4", gutterBottom: true, ...props, children: children }));
8
15
  },
9
- h2: ({ children, ...props }) => {
16
+ h2: ({ children, node, ...props }) => {
10
17
  return (_jsx(Typography, { component: "h2", variant: "h5", gutterBottom: true, ...props, children: children }));
11
18
  },
12
- h3: ({ children, ...props }) => {
19
+ h3: ({ children, node, ...props }) => {
13
20
  return (_jsx(Typography, { component: "h3", variant: "h6", gutterBottom: true, ...props, children: children }));
14
21
  },
15
- h4: ({ children, ...props }) => {
22
+ h4: ({ children, node, ...props }) => {
16
23
  return (_jsx(Typography, { component: "h4", variant: "h6", fontWeight: 400, borderBottom: "black solid 1px", gutterBottom: true, ...props, children: children }));
17
24
  },
18
- h5: ({ children, ...props }) => {
25
+ h5: ({ children, node, ...props }) => {
19
26
  return (_jsx(Typography, { component: "h5", variant: "h6", fontWeight: 300, gutterBottom: true, ...props, children: children }));
20
27
  },
21
- h6: ({ children, ...props }) => {
28
+ h6: ({ children, node, ...props }) => {
22
29
  return (_jsx(Typography, { component: "h6", variant: "h6", fontWeight: 300, color: "primary.main", gutterBottom: true, ...props, children: children }));
23
30
  },
24
- p: (props) => (_jsx(Typography, { variant: "body1", component: "div", gutterBottom: true, ...props })), // use sx for spacing
25
- a: (props) => _jsx(MuiLink, { ...props }),
26
- ul: (props) => _jsx(Box, { component: "ul", sx: { pl: 4, mb: 2 }, ...props }),
27
- ol: (props) => _jsx(Box, { component: "ol", sx: { pl: 4, mb: 2 }, ...props }),
28
- li: (props) => _jsx(Box, { component: "li", sx: { mb: 0.5 }, ...props }),
29
- blockquote: (props) => (_jsx(Box, { component: "blockquote", sx: {
31
+ p: ({ node, ...props }) => (_jsx(Typography, { variant: "body1", component: "div", gutterBottom: true, ...props })), // use sx for spacing
32
+ a: ({ node, ...props }) => _jsx(MuiLink, { ...props }),
33
+ ul: ({ node, ...props }) => (_jsx(Box, { component: "ul", sx: { pl: 4, mb: 2 }, ...props })),
34
+ ol: ({ node, ...props }) => (_jsx(Box, { component: "ol", sx: { pl: 4, mb: 2 }, ...props })),
35
+ li: ({ node, ...props }) => (_jsx(Box, { component: "li", sx: { mb: 0.5 }, ...props })),
36
+ blockquote: ({ node, ...props }) => (_jsx(Box, { component: "blockquote", sx: {
30
37
  borderLeft: 4,
31
38
  borderColor: "grey.300",
32
39
  pl: 2,
@@ -35,7 +42,7 @@ const markdownComponents = {
35
42
  color: "grey.700",
36
43
  fontStyle: "italic",
37
44
  }, ...props })),
38
- code: ({ children, ...props }) => {
45
+ code: ({ children, node, ...props }) => {
39
46
  return (_jsxs(_Fragment, { children: [_jsx("link", { rel: "stylesheet", href: "https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.11.0/styles/github.min.css" }), _jsx(Box, { component: "code", sx: {
40
47
  bgcolor: "grey.100",
41
48
  py: 0.2,
@@ -44,14 +51,14 @@ const markdownComponents = {
44
51
  fontSize: "0.95em",
45
52
  }, ...props, children: children })] }));
46
53
  },
47
- pre: (props) => (_jsx(Box, { component: "pre", sx: {
54
+ pre: ({ node, ...props }) => (_jsx(Box, { component: "pre", sx: {
48
55
  bgcolor: "grey.100",
49
56
  p: 2,
50
57
  borderRadius: 2,
51
58
  overflow: "auto",
52
59
  mb: 2,
53
60
  }, ...props })),
54
- img: (props) => {
61
+ img: ({ node, ...props }) => {
55
62
  return (_jsx("img", { ...props, style: {
56
63
  maxWidth: "100%",
57
64
  height: "auto",
@@ -1 +1 @@
1
- {"version":3,"file":"markdownComponents.js","sourceRoot":"","sources":["../../src/markdownComponents/markdownComponents.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"markdownComponents.js","sourceRoot":"","sources":["../../src/markdownComponents/markdownComponents.tsx"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@chtc/web-components",
3
- "version": "2.0.4",
3
+ "version": "2.0.6",
4
4
  "homepage": "https://path-cc.io/web-components/",
5
5
  "repository": {
6
6
  "type": "git",
@@ -1 +1 @@
1
- {"root":["../src/index.ts","../src/types.ts","../src/charts/index.ts","../src/content/index.ts","../src/github/getAllPages.ts","../src/github/getRawFile.ts","../src/github/getRepoPaths.ts","../src/github/getTree.ts","../src/github/githubFetch.ts","../src/github/index.ts","../src/github/types.ts"],"version":"5.9.3"}
1
+ {"root":["../src/index.ts","../src/types.ts","../src/charts/index.ts","../src/content/index.ts","../src/github/getAllPages.ts","../src/github/getRawFile.ts","../src/github/getRepoPaths.ts","../src/github/getTree.ts","../src/github/githubFetch.ts","../src/github/index.ts","../src/github/memo.ts","../src/github/types.ts"],"version":"5.9.3"}