@noxion/renderer 0.1.0 → 0.2.0

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 (99) hide show
  1. package/dist/components/DocsBreadcrumb.d.ts +5 -0
  2. package/dist/components/DocsBreadcrumb.d.ts.map +1 -0
  3. package/dist/components/DocsBreadcrumb.js +10 -0
  4. package/dist/components/DocsBreadcrumb.js.map +1 -0
  5. package/dist/components/DocsSidebar.d.ts +5 -0
  6. package/dist/components/DocsSidebar.d.ts.map +1 -0
  7. package/dist/components/DocsSidebar.js +15 -0
  8. package/dist/components/DocsSidebar.js.map +1 -0
  9. package/dist/components/EmptyState.d.ts.map +1 -1
  10. package/dist/components/EmptyState.js +2 -1
  11. package/dist/components/EmptyState.js.map +1 -1
  12. package/dist/components/FeaturedPostCard.d.ts +5 -0
  13. package/dist/components/FeaturedPostCard.d.ts.map +1 -0
  14. package/dist/components/FeaturedPostCard.js +19 -0
  15. package/dist/components/FeaturedPostCard.js.map +1 -0
  16. package/dist/components/Footer.d.ts.map +1 -1
  17. package/dist/components/Footer.js +2 -1
  18. package/dist/components/Footer.js.map +1 -1
  19. package/dist/components/Header.d.ts +1 -1
  20. package/dist/components/Header.d.ts.map +1 -1
  21. package/dist/components/Header.js +4 -2
  22. package/dist/components/Header.js.map +1 -1
  23. package/dist/components/HeroSection.d.ts +7 -0
  24. package/dist/components/HeroSection.d.ts.map +1 -0
  25. package/dist/components/HeroSection.js +16 -0
  26. package/dist/components/HeroSection.js.map +1 -0
  27. package/dist/components/NoxionLogo.d.ts +5 -0
  28. package/dist/components/NoxionLogo.d.ts.map +1 -0
  29. package/dist/components/NoxionLogo.js +7 -0
  30. package/dist/components/NoxionLogo.js.map +1 -0
  31. package/dist/components/PortfolioFilter.d.ts +5 -0
  32. package/dist/components/PortfolioFilter.d.ts.map +1 -0
  33. package/dist/components/PortfolioFilter.js +20 -0
  34. package/dist/components/PortfolioFilter.js.map +1 -0
  35. package/dist/components/PortfolioProjectCard.d.ts +5 -0
  36. package/dist/components/PortfolioProjectCard.d.ts.map +1 -0
  37. package/dist/components/PortfolioProjectCard.js +13 -0
  38. package/dist/components/PortfolioProjectCard.js.map +1 -0
  39. package/dist/components/PostCard.d.ts +1 -1
  40. package/dist/components/PostCard.d.ts.map +1 -1
  41. package/dist/components/PostCard.js +13 -4
  42. package/dist/components/PostCard.js.map +1 -1
  43. package/dist/components/Search.d.ts.map +1 -1
  44. package/dist/components/Search.js +2 -1
  45. package/dist/components/Search.js.map +1 -1
  46. package/dist/components/TagFilter.d.ts +1 -1
  47. package/dist/components/TagFilter.d.ts.map +1 -1
  48. package/dist/components/TagFilter.js +15 -9
  49. package/dist/components/TagFilter.js.map +1 -1
  50. package/dist/components/ThemeToggle.d.ts.map +1 -1
  51. package/dist/components/ThemeToggle.js +4 -8
  52. package/dist/components/ThemeToggle.js.map +1 -1
  53. package/dist/index.d.ts +14 -2
  54. package/dist/index.d.ts.map +1 -1
  55. package/dist/index.js +10 -1
  56. package/dist/index.js.map +1 -1
  57. package/dist/templates/DocsPage.d.ts +3 -0
  58. package/dist/templates/DocsPage.d.ts.map +1 -0
  59. package/dist/templates/DocsPage.js +13 -0
  60. package/dist/templates/DocsPage.js.map +1 -0
  61. package/dist/templates/HomePage.d.ts.map +1 -1
  62. package/dist/templates/HomePage.js +11 -2
  63. package/dist/templates/HomePage.js.map +1 -1
  64. package/dist/templates/PortfolioGrid.d.ts +3 -0
  65. package/dist/templates/PortfolioGrid.d.ts.map +1 -0
  66. package/dist/templates/PortfolioGrid.js +10 -0
  67. package/dist/templates/PortfolioGrid.js.map +1 -0
  68. package/dist/templates/PortfolioProject.d.ts +3 -0
  69. package/dist/templates/PortfolioProject.d.ts.map +1 -0
  70. package/dist/templates/PortfolioProject.js +12 -0
  71. package/dist/templates/PortfolioProject.js.map +1 -0
  72. package/dist/templates/PostPage.d.ts +10 -0
  73. package/dist/templates/PostPage.d.ts.map +1 -1
  74. package/dist/templates/PostPage.js +24 -2
  75. package/dist/templates/PostPage.js.map +1 -1
  76. package/dist/templates/index.d.ts +3 -0
  77. package/dist/templates/index.d.ts.map +1 -1
  78. package/dist/templates/index.js +3 -0
  79. package/dist/templates/index.js.map +1 -1
  80. package/dist/theme/ThemeProvider.d.ts.map +1 -1
  81. package/dist/theme/ThemeProvider.js +1 -1
  82. package/dist/theme/ThemeProvider.js.map +1 -1
  83. package/dist/theme/define-theme.js +1 -1
  84. package/dist/theme/define-theme.js.map +1 -1
  85. package/dist/theme/extend-theme.d.ts +27 -0
  86. package/dist/theme/extend-theme.d.ts.map +1 -0
  87. package/dist/theme/extend-theme.js +102 -0
  88. package/dist/theme/extend-theme.js.map +1 -0
  89. package/dist/theme/template-resolver.d.ts.map +1 -1
  90. package/dist/theme/template-resolver.js +35 -1
  91. package/dist/theme/template-resolver.js.map +1 -1
  92. package/dist/theme/types.d.ts +56 -0
  93. package/dist/theme/types.d.ts.map +1 -1
  94. package/dist/theme/validate-theme.d.ts +14 -0
  95. package/dist/theme/validate-theme.d.ts.map +1 -0
  96. package/dist/theme/validate-theme.js +235 -0
  97. package/dist/theme/validate-theme.js.map +1 -0
  98. package/package.json +2 -1
  99. package/src/styles/noxion.css +1426 -280
package/dist/index.js CHANGED
@@ -1,21 +1,30 @@
1
1
  export { defineTheme, defaultTheme } from "./theme/define-theme";
2
+ export { extendTheme } from "./theme/extend-theme";
2
3
  export { generateCSSVariables, generateThemeStylesheet } from "./theme/css-generator";
3
4
  export { resolveComponents } from "./theme/component-resolver";
4
5
  export { NoxionThemeProvider, useNoxionTheme, useNoxionTokens, useNoxionComponents, useNoxionLayout, useNoxionSlots, useNoxionTemplate, } from "./theme/ThemeProvider";
5
6
  export { resolveSlots } from "./theme/slot-resolver";
6
7
  export { resolveTemplate } from "./theme/template-resolver";
7
8
  export { BaseLayout, BlogLayout, DocsLayout, MagazineLayout } from "./layouts";
8
- export { HomePage, PostPage, ArchivePage, TagPage } from "./templates";
9
+ export { HomePage, PostPage, ArchivePage, TagPage, DocsPage, PortfolioGrid, PortfolioProject } from "./templates";
9
10
  export { NotionPage } from "./components/NotionPage";
10
11
  export { PostCard } from "./components/PostCard";
12
+ export { FeaturedPostCard } from "./components/FeaturedPostCard";
11
13
  export { PostList } from "./components/PostList";
14
+ export { HeroSection } from "./components/HeroSection";
12
15
  export { Header } from "./components/Header";
16
+ export { NoxionLogo } from "./components/NoxionLogo";
13
17
  export { Footer } from "./components/Footer";
14
18
  export { TagFilter } from "./components/TagFilter";
15
19
  export { EmptyState } from "./components/EmptyState";
16
20
  export { ThemeToggle } from "./components/ThemeToggle";
17
21
  export { TOC } from "./components/TOC";
18
22
  export { Search } from "./components/Search";
23
+ export { DocsSidebar } from "./components/DocsSidebar";
24
+ export { DocsBreadcrumb } from "./components/DocsBreadcrumb";
25
+ export { PortfolioProjectCard } from "./components/PortfolioProjectCard";
26
+ export { PortfolioFilter } from "./components/PortfolioFilter";
19
27
  export { useThemePreference } from "./hooks/useTheme";
20
28
  export { useSearch } from "./hooks/useSearch";
29
+ export { validateTheme, formatValidationResult } from "./theme/validate-theme";
21
30
  //# sourceMappingURL=index.js.map
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAC;AACjE,OAAO,EAAE,oBAAoB,EAAE,uBAAuB,EAAE,MAAM,uBAAuB,CAAC;AACtF,OAAO,EAAE,iBAAiB,EAAE,MAAM,4BAA4B,CAAC;AAC/D,OAAO,EACL,mBAAmB,EACnB,cAAc,EACd,eAAe,EACf,mBAAmB,EACnB,eAAe,EACf,cAAc,EACd,iBAAiB,GAClB,MAAM,uBAAuB,CAAC;AAG/B,OAAO,EAAE,YAAY,EAAE,MAAM,uBAAuB,CAAC;AACrD,OAAO,EAAE,eAAe,EAAE,MAAM,2BAA2B,CAAC;AAE5D,OAAO,EAAE,UAAU,EAAE,UAAU,EAAE,UAAU,EAAE,cAAc,EAAE,MAAM,WAAW,CAAC;AAC/E,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,WAAW,EAAE,OAAO,EAAE,MAAM,aAAa,CAAC;AA0BvE,OAAO,EAAE,UAAU,EAAE,MAAM,yBAAyB,CAAC;AAErD,OAAO,EAAE,QAAQ,EAAE,MAAM,uBAAuB,CAAC;AACjD,OAAO,EAAE,QAAQ,EAAE,MAAM,uBAAuB,CAAC;AACjD,OAAO,EAAE,MAAM,EAAE,MAAM,qBAAqB,CAAC;AAC7C,OAAO,EAAE,MAAM,EAAE,MAAM,qBAAqB,CAAC;AAC7C,OAAO,EAAE,SAAS,EAAE,MAAM,wBAAwB,CAAC;AACnD,OAAO,EAAE,UAAU,EAAE,MAAM,yBAAyB,CAAC;AAGrD,OAAO,EAAE,WAAW,EAAE,MAAM,0BAA0B,CAAC;AACvD,OAAO,EAAE,GAAG,EAAE,MAAM,kBAAkB,CAAC;AACvC,OAAO,EAAE,MAAM,EAAE,MAAM,qBAAqB,CAAC;AAE7C,OAAO,EAAE,kBAAkB,EAAE,MAAM,kBAAkB,CAAC;AAEtD,OAAO,EAAE,SAAS,EAAE,MAAM,mBAAmB,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAC;AACjE,OAAO,EAAE,WAAW,EAAE,MAAM,sBAAsB,CAAC;AAEnD,OAAO,EAAE,oBAAoB,EAAE,uBAAuB,EAAE,MAAM,uBAAuB,CAAC;AACtF,OAAO,EAAE,iBAAiB,EAAE,MAAM,4BAA4B,CAAC;AAC/D,OAAO,EACL,mBAAmB,EACnB,cAAc,EACd,eAAe,EACf,mBAAmB,EACnB,eAAe,EACf,cAAc,EACd,iBAAiB,GAClB,MAAM,uBAAuB,CAAC;AAG/B,OAAO,EAAE,YAAY,EAAE,MAAM,uBAAuB,CAAC;AACrD,OAAO,EAAE,eAAe,EAAE,MAAM,2BAA2B,CAAC;AAE5D,OAAO,EAAE,UAAU,EAAE,UAAU,EAAE,UAAU,EAAE,cAAc,EAAE,MAAM,WAAW,CAAC;AAC/E,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,WAAW,EAAE,OAAO,EAAE,QAAQ,EAAE,aAAa,EAAE,gBAAgB,EAAE,MAAM,aAAa,CAAC;AAmClH,OAAO,EAAE,UAAU,EAAE,MAAM,yBAAyB,CAAC;AAErD,OAAO,EAAE,QAAQ,EAAE,MAAM,uBAAuB,CAAC;AACjD,OAAO,EAAE,gBAAgB,EAAE,MAAM,+BAA+B,CAAC;AACjE,OAAO,EAAE,QAAQ,EAAE,MAAM,uBAAuB,CAAC;AACjD,OAAO,EAAE,WAAW,EAAE,MAAM,0BAA0B,CAAC;AAEvD,OAAO,EAAE,MAAM,EAAE,MAAM,qBAAqB,CAAC;AAC7C,OAAO,EAAE,UAAU,EAAE,MAAM,yBAAyB,CAAC;AACrD,OAAO,EAAE,MAAM,EAAE,MAAM,qBAAqB,CAAC;AAC7C,OAAO,EAAE,SAAS,EAAE,MAAM,wBAAwB,CAAC;AACnD,OAAO,EAAE,UAAU,EAAE,MAAM,yBAAyB,CAAC;AAGrD,OAAO,EAAE,WAAW,EAAE,MAAM,0BAA0B,CAAC;AACvD,OAAO,EAAE,GAAG,EAAE,MAAM,kBAAkB,CAAC;AACvC,OAAO,EAAE,MAAM,EAAE,MAAM,qBAAqB,CAAC;AAC7C,OAAO,EAAE,WAAW,EAAE,MAAM,0BAA0B,CAAC;AACvD,OAAO,EAAE,cAAc,EAAE,MAAM,6BAA6B,CAAC;AAC7D,OAAO,EAAE,oBAAoB,EAAE,MAAM,mCAAmC,CAAC;AACzE,OAAO,EAAE,eAAe,EAAE,MAAM,8BAA8B,CAAC;AAE/D,OAAO,EAAE,kBAAkB,EAAE,MAAM,kBAAkB,CAAC;AAEtD,OAAO,EAAE,SAAS,EAAE,MAAM,mBAAmB,CAAC;AAE9C,OAAO,EAAE,aAAa,EAAE,sBAAsB,EAAE,MAAM,wBAAwB,CAAC"}
@@ -0,0 +1,3 @@
1
+ import type { NoxionTemplateProps } from "../theme/types";
2
+ export declare function DocsPage({ data, className }: NoxionTemplateProps): import("react/jsx-runtime").JSX.Element;
3
+ //# sourceMappingURL=DocsPage.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"DocsPage.d.ts","sourceRoot":"","sources":["../../src/templates/DocsPage.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,gBAAgB,CAAC;AAK1D,wBAAgB,QAAQ,CAAC,EAAE,IAAI,EAAE,SAAS,EAAE,EAAE,mBAAmB,2CAwChE"}
@@ -0,0 +1,13 @@
1
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
+ import { NotionPage } from "../components/NotionPage";
3
+ export function DocsPage({ data, className }) {
4
+ const recordMap = data.recordMap;
5
+ const rootPageId = data.rootPageId;
6
+ const prev = data.prev;
7
+ const next = data.next;
8
+ if (!recordMap) {
9
+ return (_jsx("div", { className: "noxion-empty-state", children: _jsx("p", { className: "noxion-empty-state__message", children: "Page not found." }) }));
10
+ }
11
+ return (_jsxs("div", { className: className ? `noxion-template-docs ${className}` : "noxion-template-docs", children: [_jsx(NotionPage, { recordMap: recordMap, rootPageId: rootPageId }), (prev || next) && (_jsxs("nav", { className: "noxion-docs-nav", "aria-label": "Page navigation", children: [_jsx("div", { className: "noxion-docs-nav__prev", children: prev && (_jsxs("a", { href: `/${prev.slug}`, className: "noxion-docs-nav__link", children: [_jsx("span", { className: "noxion-docs-nav__label", children: "Previous" }), _jsx("span", { className: "noxion-docs-nav__title", children: prev.title })] })) }), _jsx("div", { className: "noxion-docs-nav__next", children: next && (_jsxs("a", { href: `/${next.slug}`, className: "noxion-docs-nav__link", children: [_jsx("span", { className: "noxion-docs-nav__label", children: "Next" }), _jsx("span", { className: "noxion-docs-nav__title", children: next.title })] })) })] }))] }));
12
+ }
13
+ //# sourceMappingURL=DocsPage.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"DocsPage.js","sourceRoot":"","sources":["../../src/templates/DocsPage.tsx"],"names":[],"mappings":";AAEA,OAAO,EAAE,UAAU,EAAE,MAAM,0BAA0B,CAAC;AAGtD,MAAM,UAAU,QAAQ,CAAC,EAAE,IAAI,EAAE,SAAS,EAAuB;IAC/D,MAAM,SAAS,GAAG,IAAI,CAAC,SAA0C,CAAC;IAClE,MAAM,UAAU,GAAG,IAAI,CAAC,UAAgC,CAAC;IACzD,MAAM,IAAI,GAAG,IAAI,CAAC,IAAsC,CAAC;IACzD,MAAM,IAAI,GAAG,IAAI,CAAC,IAAsC,CAAC;IAEzD,IAAI,CAAC,SAAS,EAAE,CAAC;QACf,OAAO,CACL,cAAK,SAAS,EAAC,oBAAoB,YACjC,YAAG,SAAS,EAAC,6BAA6B,gCAAoB,GAC1D,CACP,CAAC;IACJ,CAAC;IAED,OAAO,CACL,eAAK,SAAS,EAAE,SAAS,CAAC,CAAC,CAAC,wBAAwB,SAAS,EAAE,CAAC,CAAC,CAAC,sBAAsB,aACtF,KAAC,UAAU,IAAC,SAAS,EAAE,SAAS,EAAE,UAAU,EAAE,UAAU,GAAI,EAE3D,CAAC,IAAI,IAAI,IAAI,CAAC,IAAI,CACjB,eAAK,SAAS,EAAC,iBAAiB,gBAAY,iBAAiB,aAC3D,cAAK,SAAS,EAAC,uBAAuB,YACnC,IAAI,IAAI,CACP,aAAG,IAAI,EAAE,IAAI,IAAI,CAAC,IAAI,EAAE,EAAE,SAAS,EAAC,uBAAuB,aACzD,eAAM,SAAS,EAAC,wBAAwB,yBAAgB,EACxD,eAAM,SAAS,EAAC,wBAAwB,YAAE,IAAI,CAAC,KAAK,GAAQ,IAC1D,CACL,GACG,EACN,cAAK,SAAS,EAAC,uBAAuB,YACnC,IAAI,IAAI,CACP,aAAG,IAAI,EAAE,IAAI,IAAI,CAAC,IAAI,EAAE,EAAE,SAAS,EAAC,uBAAuB,aACzD,eAAM,SAAS,EAAC,wBAAwB,qBAAY,EACpD,eAAM,SAAS,EAAC,wBAAwB,YAAE,IAAI,CAAC,KAAK,GAAQ,IAC1D,CACL,GACG,IACF,CACP,IACG,CACP,CAAC;AACJ,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"HomePage.d.ts","sourceRoot":"","sources":["../../src/templates/HomePage.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,gBAAgB,CAAC;AAI1D,wBAAgB,QAAQ,CAAC,EAAE,IAAI,EAAE,SAAS,EAAE,EAAE,mBAAmB,2CAQhE"}
1
+ {"version":3,"file":"HomePage.d.ts","sourceRoot":"","sources":["../../src/templates/HomePage.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,gBAAgB,CAAC;AAK1D,wBAAgB,QAAQ,CAAC,EAAE,IAAI,EAAE,SAAS,EAAE,EAAE,mBAAmB,2CA6BhE"}
@@ -1,7 +1,16 @@
1
- import { jsx as _jsx } from "react/jsx-runtime";
1
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
+ import { HeroSection } from "../components/HeroSection";
2
3
  import { PostList } from "../components/PostList";
3
4
  export function HomePage({ data, className }) {
4
5
  const posts = (data.posts ?? []);
5
- return (_jsx("div", { className: className ? `noxion-template-home ${className}` : "noxion-template-home", children: _jsx(PostList, { posts: posts }) }));
6
+ const recentCount = typeof data.recentCount === "number" ? data.recentCount : 0;
7
+ const feedTitle = data.feedTitle ?? "All Posts";
8
+ const baseClass = className ? `noxion-template-home ${className}` : "noxion-template-home";
9
+ if (recentCount <= 0) {
10
+ return (_jsx("div", { className: baseClass, children: _jsx(PostList, { posts: posts }) }));
11
+ }
12
+ const heroPosts = posts.slice(0, recentCount);
13
+ const feedPosts = posts.slice(recentCount);
14
+ return (_jsxs("div", { className: baseClass, children: [_jsx(HeroSection, { posts: heroPosts }), feedPosts.length > 0 && (_jsxs("section", { className: "noxion-home-feed", children: [_jsx("h2", { className: "noxion-home-feed__title", children: feedTitle }), _jsx(PostList, { posts: feedPosts })] }))] }));
6
15
  }
7
16
  //# sourceMappingURL=HomePage.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"HomePage.js","sourceRoot":"","sources":["../../src/templates/HomePage.tsx"],"names":[],"mappings":";AAEA,OAAO,EAAE,QAAQ,EAAE,MAAM,wBAAwB,CAAC;AAElD,MAAM,UAAU,QAAQ,CAAC,EAAE,IAAI,EAAE,SAAS,EAAuB;IAC/D,MAAM,KAAK,GAAG,CAAC,IAAI,CAAC,KAAK,IAAI,EAAE,CAAoB,CAAC;IAEpD,OAAO,CACL,cAAK,SAAS,EAAE,SAAS,CAAC,CAAC,CAAC,wBAAwB,SAAS,EAAE,CAAC,CAAC,CAAC,sBAAsB,YACtF,KAAC,QAAQ,IAAC,KAAK,EAAE,KAAK,GAAI,GACtB,CACP,CAAC;AACJ,CAAC"}
1
+ {"version":3,"file":"HomePage.js","sourceRoot":"","sources":["../../src/templates/HomePage.tsx"],"names":[],"mappings":";AAEA,OAAO,EAAE,WAAW,EAAE,MAAM,2BAA2B,CAAC;AACxD,OAAO,EAAE,QAAQ,EAAE,MAAM,wBAAwB,CAAC;AAElD,MAAM,UAAU,QAAQ,CAAC,EAAE,IAAI,EAAE,SAAS,EAAuB;IAC/D,MAAM,KAAK,GAAG,CAAC,IAAI,CAAC,KAAK,IAAI,EAAE,CAAoB,CAAC;IACpD,MAAM,WAAW,GAAG,OAAO,IAAI,CAAC,WAAW,KAAK,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,CAAC;IAChF,MAAM,SAAS,GAAI,IAAI,CAAC,SAAoB,IAAI,WAAW,CAAC;IAC5D,MAAM,SAAS,GAAG,SAAS,CAAC,CAAC,CAAC,wBAAwB,SAAS,EAAE,CAAC,CAAC,CAAC,sBAAsB,CAAC;IAE3F,IAAI,WAAW,IAAI,CAAC,EAAE,CAAC;QACrB,OAAO,CACL,cAAK,SAAS,EAAE,SAAS,YACvB,KAAC,QAAQ,IAAC,KAAK,EAAE,KAAK,GAAI,GACtB,CACP,CAAC;IACJ,CAAC;IAED,MAAM,SAAS,GAAG,KAAK,CAAC,KAAK,CAAC,CAAC,EAAE,WAAW,CAAC,CAAC;IAC9C,MAAM,SAAS,GAAG,KAAK,CAAC,KAAK,CAAC,WAAW,CAAC,CAAC;IAE3C,OAAO,CACL,eAAK,SAAS,EAAE,SAAS,aACvB,KAAC,WAAW,IAAC,KAAK,EAAE,SAAS,GAAI,EAEhC,SAAS,CAAC,MAAM,GAAG,CAAC,IAAI,CACvB,mBAAS,SAAS,EAAC,kBAAkB,aACnC,aAAI,SAAS,EAAC,yBAAyB,YAAE,SAAS,GAAM,EACxD,KAAC,QAAQ,IAAC,KAAK,EAAE,SAAS,GAAI,IACtB,CACX,IACG,CACP,CAAC;AACJ,CAAC"}
@@ -0,0 +1,3 @@
1
+ import type { NoxionTemplateProps } from "../theme/types";
2
+ export declare function PortfolioGrid({ data, className }: NoxionTemplateProps): import("react/jsx-runtime").JSX.Element;
3
+ //# sourceMappingURL=PortfolioGrid.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"PortfolioGrid.d.ts","sourceRoot":"","sources":["../../src/templates/PortfolioGrid.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,mBAAmB,EAAsB,MAAM,gBAAgB,CAAC;AAG9E,wBAAgB,aAAa,CAAC,EAAE,IAAI,EAAE,SAAS,EAAE,EAAE,mBAAmB,2CAoBrE"}
@@ -0,0 +1,10 @@
1
+ import { jsx as _jsx } from "react/jsx-runtime";
2
+ import { PortfolioProjectCard } from "../components/PortfolioProjectCard";
3
+ export function PortfolioGrid({ data, className }) {
4
+ const projects = (data.projects ?? []);
5
+ if (projects.length === 0) {
6
+ return (_jsx("div", { className: "noxion-empty-state", children: _jsx("p", { className: "noxion-empty-state__message", children: "No projects found." }) }));
7
+ }
8
+ return (_jsx("div", { className: className ? `noxion-template-portfolio-grid ${className}` : "noxion-template-portfolio-grid", children: _jsx("div", { className: "noxion-portfolio-grid", children: projects.map((project) => (_jsx(PortfolioProjectCard, { ...project }, project.id))) }) }));
9
+ }
10
+ //# sourceMappingURL=PortfolioGrid.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"PortfolioGrid.js","sourceRoot":"","sources":["../../src/templates/PortfolioGrid.tsx"],"names":[],"mappings":";AACA,OAAO,EAAE,oBAAoB,EAAE,MAAM,oCAAoC,CAAC;AAE1E,MAAM,UAAU,aAAa,CAAC,EAAE,IAAI,EAAE,SAAS,EAAuB;IACpE,MAAM,QAAQ,GAAG,CAAC,IAAI,CAAC,QAAQ,IAAI,EAAE,CAAyB,CAAC;IAE/D,IAAI,QAAQ,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAC1B,OAAO,CACL,cAAK,SAAS,EAAC,oBAAoB,YACjC,YAAG,SAAS,EAAC,6BAA6B,mCAAuB,GAC7D,CACP,CAAC;IACJ,CAAC;IAED,OAAO,CACL,cAAK,SAAS,EAAE,SAAS,CAAC,CAAC,CAAC,kCAAkC,SAAS,EAAE,CAAC,CAAC,CAAC,gCAAgC,YAC1G,cAAK,SAAS,EAAC,uBAAuB,YACnC,QAAQ,CAAC,GAAG,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,CACzB,KAAC,oBAAoB,OAAsB,OAAO,IAAvB,OAAO,CAAC,EAAE,CAAiB,CACvD,CAAC,GACE,GACF,CACP,CAAC;AACJ,CAAC"}
@@ -0,0 +1,3 @@
1
+ import type { NoxionTemplateProps } from "../theme/types";
2
+ export declare function PortfolioProject({ data, className }: NoxionTemplateProps): import("react/jsx-runtime").JSX.Element;
3
+ //# sourceMappingURL=PortfolioProject.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"PortfolioProject.d.ts","sourceRoot":"","sources":["../../src/templates/PortfolioProject.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,mBAAmB,EAAsB,MAAM,gBAAgB,CAAC;AAI9E,wBAAgB,gBAAgB,CAAC,EAAE,IAAI,EAAE,SAAS,EAAE,EAAE,mBAAmB,2CAwCxE"}
@@ -0,0 +1,12 @@
1
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
+ import { NotionPage } from "../components/NotionPage";
3
+ export function PortfolioProject({ data, className }) {
4
+ const recordMap = data.recordMap;
5
+ const rootPageId = data.rootPageId;
6
+ const project = data.project;
7
+ if (!recordMap) {
8
+ return (_jsx("div", { className: "noxion-empty-state", children: _jsx("p", { className: "noxion-empty-state__message", children: "Project not found." }) }));
9
+ }
10
+ return (_jsxs("div", { className: className ? `noxion-template-portfolio-project ${className}` : "noxion-template-portfolio-project", children: [project && (_jsxs("div", { className: "noxion-portfolio-project__header", children: [project.technologies && project.technologies.length > 0 && (_jsx("div", { className: "noxion-portfolio-project__tech", children: project.technologies.map((tech) => (_jsx("span", { className: "noxion-portfolio-project__tech-tag", children: tech }, tech))) })), project.projectUrl && (_jsx("a", { href: project.projectUrl, className: "noxion-portfolio-project__link", target: "_blank", rel: "noopener noreferrer", children: "Visit Project" }))] })), _jsx(NotionPage, { recordMap: recordMap, rootPageId: rootPageId })] }));
11
+ }
12
+ //# sourceMappingURL=PortfolioProject.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"PortfolioProject.js","sourceRoot":"","sources":["../../src/templates/PortfolioProject.tsx"],"names":[],"mappings":";AACA,OAAO,EAAE,UAAU,EAAE,MAAM,0BAA0B,CAAC;AAGtD,MAAM,UAAU,gBAAgB,CAAC,EAAE,IAAI,EAAE,SAAS,EAAuB;IACvE,MAAM,SAAS,GAAG,IAAI,CAAC,SAA0C,CAAC;IAClE,MAAM,UAAU,GAAG,IAAI,CAAC,UAAgC,CAAC;IACzD,MAAM,OAAO,GAAG,IAAI,CAAC,OAAyC,CAAC;IAE/D,IAAI,CAAC,SAAS,EAAE,CAAC;QACf,OAAO,CACL,cAAK,SAAS,EAAC,oBAAoB,YACjC,YAAG,SAAS,EAAC,6BAA6B,mCAAuB,GAC7D,CACP,CAAC;IACJ,CAAC;IAED,OAAO,CACL,eAAK,SAAS,EAAE,SAAS,CAAC,CAAC,CAAC,qCAAqC,SAAS,EAAE,CAAC,CAAC,CAAC,mCAAmC,aAC/G,OAAO,IAAI,CACV,eAAK,SAAS,EAAC,kCAAkC,aAC9C,OAAO,CAAC,YAAY,IAAI,OAAO,CAAC,YAAY,CAAC,MAAM,GAAG,CAAC,IAAI,CAC1D,cAAK,SAAS,EAAC,gCAAgC,YAC5C,OAAO,CAAC,YAAY,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAClC,eAAiB,SAAS,EAAC,oCAAoC,YAAE,IAAI,IAA1D,IAAI,CAA8D,CAC9E,CAAC,GACE,CACP,EACA,OAAO,CAAC,UAAU,IAAI,CACrB,YACE,IAAI,EAAE,OAAO,CAAC,UAAU,EACxB,SAAS,EAAC,gCAAgC,EAC1C,MAAM,EAAC,QAAQ,EACf,GAAG,EAAC,qBAAqB,8BAGvB,CACL,IACG,CACP,EAED,KAAC,UAAU,IAAC,SAAS,EAAE,SAAS,EAAE,UAAU,EAAE,UAAU,GAAI,IACxD,CACP,CAAC;AACJ,CAAC"}
@@ -1,3 +1,13 @@
1
1
  import type { NoxionTemplateProps } from "../theme/types";
2
+ /**
3
+ * Post page template.
4
+ *
5
+ * When `data.title` is provided, renders a full article layout with
6
+ * cover image, header (category, tags, title, description, author, date),
7
+ * and the Notion body (fullPage=false).
8
+ *
9
+ * When only `data.recordMap` is provided (backward-compat), renders just
10
+ * the Notion page with fullPage=true.
11
+ */
2
12
  export declare function PostPage({ data, className }: NoxionTemplateProps): import("react/jsx-runtime").JSX.Element;
3
13
  //# sourceMappingURL=PostPage.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"PostPage.d.ts","sourceRoot":"","sources":["../../src/templates/PostPage.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,gBAAgB,CAAC;AAI1D,wBAAgB,QAAQ,CAAC,EAAE,IAAI,EAAE,SAAS,EAAE,EAAE,mBAAmB,2CAiBhE"}
1
+ {"version":3,"file":"PostPage.d.ts","sourceRoot":"","sources":["../../src/templates/PostPage.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,gBAAgB,CAAC;AAI1D;;;;;;;;;GASG;AACH,wBAAgB,QAAQ,CAAC,EAAE,IAAI,EAAE,SAAS,EAAE,EAAE,mBAAmB,2CA0FhE"}
@@ -1,11 +1,33 @@
1
- import { jsx as _jsx } from "react/jsx-runtime";
1
+ import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from "react/jsx-runtime";
2
2
  import { NotionPage } from "../components/NotionPage";
3
+ /**
4
+ * Post page template.
5
+ *
6
+ * When `data.title` is provided, renders a full article layout with
7
+ * cover image, header (category, tags, title, description, author, date),
8
+ * and the Notion body (fullPage=false).
9
+ *
10
+ * When only `data.recordMap` is provided (backward-compat), renders just
11
+ * the Notion page with fullPage=true.
12
+ */
3
13
  export function PostPage({ data, className }) {
4
14
  const recordMap = data.recordMap;
5
15
  const rootPageId = data.rootPageId;
16
+ const title = data.title;
17
+ const description = data.description;
18
+ const coverImage = data.coverImage;
19
+ const category = data.category;
20
+ const tags = (data.tags ?? []);
21
+ const author = data.author;
22
+ const date = data.date;
23
+ const formattedDate = data.formattedDate;
6
24
  if (!recordMap) {
7
25
  return (_jsx("div", { className: "noxion-empty-state", children: _jsx("p", { className: "noxion-empty-state__message", children: "Post not found." }) }));
8
26
  }
9
- return (_jsx("div", { className: className ? `noxion-template-post ${className}` : "noxion-template-post", children: _jsx(NotionPage, { recordMap: recordMap, rootPageId: rootPageId }) }));
27
+ const hasArticleHeader = Boolean(title);
28
+ const baseClass = className
29
+ ? `noxion-template-post ${className}`
30
+ : "noxion-template-post";
31
+ return (_jsxs("article", { className: baseClass, children: [coverImage && (_jsx("div", { className: "noxion-template-post__cover", children: _jsx("img", { src: coverImage, alt: "", className: "noxion-template-post__cover-image" }) })), hasArticleHeader && (_jsxs("header", { className: "noxion-template-post__header", children: [(category || tags.length > 0) && (_jsxs("div", { className: "noxion-template-post__topics", children: [category && (_jsx("span", { className: "noxion-template-post__category", children: category })), tags.map((tag) => (_jsx("a", { href: `/tag/${encodeURIComponent(tag)}`, className: "noxion-template-post__tag", children: tag }, tag)))] })), _jsx("h1", { className: "noxion-template-post__title", children: title }), description && (_jsx("p", { className: "noxion-template-post__description", children: description })), _jsxs("div", { className: "noxion-template-post__meta", children: [author && (_jsx("span", { className: "noxion-template-post__author", children: author })), date && (_jsxs(_Fragment, { children: [author && (_jsx("span", { className: "noxion-template-post__meta-dot", "aria-hidden": "true" })), _jsx("time", { className: "noxion-template-post__date", dateTime: date, children: formattedDate ?? date })] }))] })] })), _jsx("div", { className: "noxion-template-post__body", children: _jsx(NotionPage, { recordMap: recordMap, rootPageId: rootPageId, fullPage: !hasArticleHeader }) })] }));
10
32
  }
11
33
  //# sourceMappingURL=PostPage.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"PostPage.js","sourceRoot":"","sources":["../../src/templates/PostPage.tsx"],"names":[],"mappings":";AACA,OAAO,EAAE,UAAU,EAAE,MAAM,0BAA0B,CAAC;AAGtD,MAAM,UAAU,QAAQ,CAAC,EAAE,IAAI,EAAE,SAAS,EAAuB;IAC/D,MAAM,SAAS,GAAG,IAAI,CAAC,SAA0C,CAAC;IAClE,MAAM,UAAU,GAAG,IAAI,CAAC,UAAgC,CAAC;IAEzD,IAAI,CAAC,SAAS,EAAE,CAAC;QACf,OAAO,CACL,cAAK,SAAS,EAAC,oBAAoB,YACjC,YAAG,SAAS,EAAC,6BAA6B,gCAAoB,GAC1D,CACP,CAAC;IACJ,CAAC;IAED,OAAO,CACL,cAAK,SAAS,EAAE,SAAS,CAAC,CAAC,CAAC,wBAAwB,SAAS,EAAE,CAAC,CAAC,CAAC,sBAAsB,YACtF,KAAC,UAAU,IAAC,SAAS,EAAE,SAAS,EAAE,UAAU,EAAE,UAAU,GAAI,GACxD,CACP,CAAC;AACJ,CAAC"}
1
+ {"version":3,"file":"PostPage.js","sourceRoot":"","sources":["../../src/templates/PostPage.tsx"],"names":[],"mappings":";AACA,OAAO,EAAE,UAAU,EAAE,MAAM,0BAA0B,CAAC;AAGtD;;;;;;;;;GASG;AACH,MAAM,UAAU,QAAQ,CAAC,EAAE,IAAI,EAAE,SAAS,EAAuB;IAC/D,MAAM,SAAS,GAAG,IAAI,CAAC,SAA0C,CAAC;IAClE,MAAM,UAAU,GAAG,IAAI,CAAC,UAAgC,CAAC;IAEzD,MAAM,KAAK,GAAG,IAAI,CAAC,KAA2B,CAAC;IAC/C,MAAM,WAAW,GAAG,IAAI,CAAC,WAAiC,CAAC;IAC3D,MAAM,UAAU,GAAG,IAAI,CAAC,UAAgC,CAAC;IACzD,MAAM,QAAQ,GAAG,IAAI,CAAC,QAA8B,CAAC;IACrD,MAAM,IAAI,GAAG,CAAC,IAAI,CAAC,IAAI,IAAI,EAAE,CAAa,CAAC;IAC3C,MAAM,MAAM,GAAG,IAAI,CAAC,MAA4B,CAAC;IACjD,MAAM,IAAI,GAAG,IAAI,CAAC,IAA0B,CAAC;IAC7C,MAAM,aAAa,GAAG,IAAI,CAAC,aAAmC,CAAC;IAE/D,IAAI,CAAC,SAAS,EAAE,CAAC;QACf,OAAO,CACL,cAAK,SAAS,EAAC,oBAAoB,YACjC,YAAG,SAAS,EAAC,6BAA6B,gCAAoB,GAC1D,CACP,CAAC;IACJ,CAAC;IAED,MAAM,gBAAgB,GAAG,OAAO,CAAC,KAAK,CAAC,CAAC;IACxC,MAAM,SAAS,GAAG,SAAS;QACzB,CAAC,CAAC,wBAAwB,SAAS,EAAE;QACrC,CAAC,CAAC,sBAAsB,CAAC;IAE3B,OAAO,CACL,mBAAS,SAAS,EAAE,SAAS,aAC1B,UAAU,IAAI,CACb,cAAK,SAAS,EAAC,6BAA6B,YAC1C,cACE,GAAG,EAAE,UAAU,EACf,GAAG,EAAC,EAAE,EACN,SAAS,EAAC,mCAAmC,GAC7C,GACE,CACP,EAEA,gBAAgB,IAAI,CACnB,kBAAQ,SAAS,EAAC,8BAA8B,aAC7C,CAAC,QAAQ,IAAI,IAAI,CAAC,MAAM,GAAG,CAAC,CAAC,IAAI,CAChC,eAAK,SAAS,EAAC,8BAA8B,aAC1C,QAAQ,IAAI,CACX,eAAM,SAAS,EAAC,gCAAgC,YAAE,QAAQ,GAAQ,CACnE,EACA,IAAI,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,CACjB,YAEE,IAAI,EAAE,QAAQ,kBAAkB,CAAC,GAAG,CAAC,EAAE,EACvC,SAAS,EAAC,2BAA2B,YAEpC,GAAG,IAJC,GAAG,CAKN,CACL,CAAC,IACE,CACP,EAED,aAAI,SAAS,EAAC,6BAA6B,YAAE,KAAK,GAAM,EAEvD,WAAW,IAAI,CACd,YAAG,SAAS,EAAC,mCAAmC,YAAE,WAAW,GAAK,CACnE,EAED,eAAK,SAAS,EAAC,4BAA4B,aACxC,MAAM,IAAI,CACT,eAAM,SAAS,EAAC,8BAA8B,YAAE,MAAM,GAAQ,CAC/D,EACA,IAAI,IAAI,CACP,8BACG,MAAM,IAAI,CACT,eAAM,SAAS,EAAC,gCAAgC,iBAAa,MAAM,GAAG,CACvE,EACD,eAAM,SAAS,EAAC,4BAA4B,EAAC,QAAQ,EAAE,IAAI,YACxD,aAAa,IAAI,IAAI,GACjB,IACN,CACJ,IACG,IACC,CACV,EAED,cAAK,SAAS,EAAC,4BAA4B,YACzC,KAAC,UAAU,IACT,SAAS,EAAE,SAAS,EACpB,UAAU,EAAE,UAAU,EACtB,QAAQ,EAAE,CAAC,gBAAgB,GAC3B,GACE,IACE,CACX,CAAC;AACJ,CAAC"}
@@ -2,4 +2,7 @@ export { HomePage } from "./HomePage";
2
2
  export { PostPage } from "./PostPage";
3
3
  export { ArchivePage } from "./ArchivePage";
4
4
  export { TagPage } from "./TagPage";
5
+ export { DocsPage } from "./DocsPage";
6
+ export { PortfolioGrid } from "./PortfolioGrid";
7
+ export { PortfolioProject } from "./PortfolioProject";
5
8
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/templates/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AACtC,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AACtC,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAC5C,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/templates/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AACtC,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AACtC,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAC5C,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACpC,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AACtC,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAChD,OAAO,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC"}
@@ -2,4 +2,7 @@ export { HomePage } from "./HomePage";
2
2
  export { PostPage } from "./PostPage";
3
3
  export { ArchivePage } from "./ArchivePage";
4
4
  export { TagPage } from "./TagPage";
5
+ export { DocsPage } from "./DocsPage";
6
+ export { PortfolioGrid } from "./PortfolioGrid";
7
+ export { PortfolioProject } from "./PortfolioProject";
5
8
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/templates/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AACtC,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AACtC,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAC5C,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/templates/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AACtC,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AACtC,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAC5C,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACpC,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AACtC,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAChD,OAAO,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"ThemeProvider.d.ts","sourceRoot":"","sources":["../../src/theme/ThemeProvider.tsx"],"names":[],"mappings":"AAEA,OAAO,KAA6C,MAAM,OAAO,CAAC;AAClE,OAAO,KAAK,EACV,WAAW,EACX,iBAAiB,EACjB,kBAAkB,EAClB,kBAAkB,EAClB,YAAY,EACZ,aAAa,EACb,iBAAiB,EACjB,mBAAmB,EACpB,MAAM,SAAS,CAAC;AAMjB,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,OAAO,CAAC;AAoB3C,MAAM,WAAW,wBAAwB;IACvC,KAAK,CAAC,EAAE,WAAW,CAAC;IACpB,YAAY,CAAC,EAAE,kBAAkB,CAAC;IAClC,UAAU,CAAC,EAAE,kBAAkB,CAAC;IAChC,iBAAiB,CAAC,EAAE,kBAAkB,CAAC;IACvC,MAAM,CAAC,EAAE,YAAY,CAAC;IACtB,KAAK,CAAC,EAAE,OAAO,CAAC,aAAa,CAAC,CAAC;IAC/B,SAAS,CAAC,EAAE,OAAO,CAAC,iBAAiB,CAAC,CAAC;IACvC,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAC;CAC3B;AAED,wBAAgB,mBAAmB,CAAC,EAClC,KAAK,EACL,YAAY,EACZ,UAAU,EAAE,SAAc,EAC1B,iBAAsB,EACtB,MAAwB,EACxB,KAAK,EAAE,aAAkB,EACzB,SAAS,EAAE,iBAAsB,EACjC,QAAQ,GACT,EAAE,wBAAwB,2CAmD1B;AAED,wBAAgB,cAAc,IAAI,WAAW,CAE5C;AAED,wBAAgB,eAAe,IAAI,iBAAiB,CAEnD;AAED,wBAAgB,mBAAmB,IAAI,kBAAkB,CAExD;AAED,wBAAgB,eAAe,IAAI,YAAY,CAE9C;AAED,wBAAgB,cAAc,IAAI,OAAO,CAAC,aAAa,CAAC,CAEvD;AAED,wBAAgB,iBAAiB,CAAC,QAAQ,EAAE,MAAM,GAAG,aAAa,CAAC,mBAAmB,CAAC,GAAG,SAAS,CAGlG"}
1
+ {"version":3,"file":"ThemeProvider.d.ts","sourceRoot":"","sources":["../../src/theme/ThemeProvider.tsx"],"names":[],"mappings":"AAEA,OAAO,KAA6C,MAAM,OAAO,CAAC;AAClE,OAAO,KAAK,EACV,WAAW,EACX,iBAAiB,EACjB,kBAAkB,EAClB,kBAAkB,EAClB,YAAY,EACZ,aAAa,EACb,iBAAiB,EACjB,mBAAmB,EACpB,MAAM,SAAS,CAAC;AAMjB,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,OAAO,CAAC;AAoB3C,MAAM,WAAW,wBAAwB;IACvC,KAAK,CAAC,EAAE,WAAW,CAAC;IACpB,YAAY,CAAC,EAAE,kBAAkB,CAAC;IAClC,UAAU,CAAC,EAAE,kBAAkB,CAAC;IAChC,iBAAiB,CAAC,EAAE,kBAAkB,CAAC;IACvC,MAAM,CAAC,EAAE,YAAY,CAAC;IACtB,KAAK,CAAC,EAAE,OAAO,CAAC,aAAa,CAAC,CAAC;IAC/B,SAAS,CAAC,EAAE,OAAO,CAAC,iBAAiB,CAAC,CAAC;IACvC,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAC;CAC3B;AAED,wBAAgB,mBAAmB,CAAC,EAClC,KAAK,EACL,YAAY,EACZ,UAAU,EAAE,SAAc,EAC1B,iBAAsB,EACtB,MAAwB,EACxB,KAAK,EAAE,aAAkB,EACzB,SAAS,EAAE,iBAAsB,EACjC,QAAQ,GACT,EAAE,wBAAwB,2CAsD1B;AAED,wBAAgB,cAAc,IAAI,WAAW,CAE5C;AAED,wBAAgB,eAAe,IAAI,iBAAiB,CAEnD;AAED,wBAAgB,mBAAmB,IAAI,kBAAkB,CAExD;AAED,wBAAgB,eAAe,IAAI,YAAY,CAE9C;AAED,wBAAgB,cAAc,IAAI,OAAO,CAAC,aAAa,CAAC,CAEvD;AAED,wBAAgB,iBAAiB,CAAC,QAAQ,EAAE,MAAM,GAAG,aAAa,CAAC,mBAAmB,CAAC,GAAG,SAAS,CAGlG"}
@@ -47,7 +47,7 @@ export function NoxionThemeProvider({ theme, themePackage, components: overrides
47
47
  slots: resolvedSlots,
48
48
  templates: resolvedTemplates,
49
49
  }), [resolvedTheme, tokens, resolvedComponents, layout, resolvedSlots, resolvedTemplates]);
50
- return (_jsxs(ThemeContext.Provider, { value: contextValue, children: [_jsx("style", { dangerouslySetInnerHTML: { __html: cssVariables } }), children] }));
50
+ return (_jsxs(ThemeContext.Provider, { value: contextValue, children: [_jsx("style", { dangerouslySetInnerHTML: { __html: cssVariables } }), themePackage?.stylesheet && (_jsx("style", { dangerouslySetInnerHTML: { __html: themePackage.stylesheet } })), children] }));
51
51
  }
52
52
  export function useNoxionTheme() {
53
53
  return useContext(ThemeContext).theme;
@@ -1 +1 @@
1
- {"version":3,"file":"ThemeProvider.js","sourceRoot":"","sources":["../../src/theme/ThemeProvider.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ThemeProvider.js","sourceRoot":"","sources":["../../src/theme/ThemeProvider.tsx"],"names":[],"mappings":"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"}
@@ -22,7 +22,7 @@ export const defaultTheme = defineTheme({
22
22
  mono: '"JetBrains Mono", ui-monospace, SFMono-Regular, Menlo, Monaco, monospace',
23
23
  },
24
24
  spacing: {
25
- content: "720px",
25
+ content: "1080px",
26
26
  sidebar: "260px",
27
27
  },
28
28
  borderRadius: "0.5rem",
@@ -1 +1 @@
1
- {"version":3,"file":"define-theme.js","sourceRoot":"","sources":["../../src/theme/define-theme.ts"],"names":[],"mappings":"AAEA,MAAM,UAAU,WAAW,CAAwB,KAAQ;IACzD,OAAO,KAAK,CAAC;AACf,CAAC;AAED,MAAM,CAAC,MAAM,YAAY,GAAgB,WAAW,CAAC;IACnD,IAAI,EAAE,SAAS;IACf,MAAM,EAAE;QACN,OAAO,EAAE,SAAS;QAClB,iBAAiB,EAAE,SAAS;QAC5B,UAAU,EAAE,SAAS;QACrB,UAAU,EAAE,SAAS;QACrB,KAAK,EAAE,SAAS;QAChB,eAAe,EAAE,SAAS;QAC1B,MAAM,EAAE,SAAS;QACjB,MAAM,EAAE,SAAS;QACjB,gBAAgB,EAAE,SAAS;QAC3B,IAAI,EAAE,SAAS;QACf,cAAc,EAAE,SAAS;KAC1B;IACD,KAAK,EAAE;QACL,IAAI,EAAE,uFAAuF;QAC7F,KAAK,EAAE,mCAAmC;QAC1C,IAAI,EAAE,0EAA0E;KACjF;IACD,OAAO,EAAE;QACP,OAAO,EAAE,OAAO;QAChB,OAAO,EAAE,OAAO;KACjB;IACD,YAAY,EAAE,QAAQ;IACtB,IAAI,EAAE;QACJ,MAAM,EAAE;YACN,OAAO,EAAE,SAAS;YAClB,iBAAiB,EAAE,SAAS;YAC5B,UAAU,EAAE,SAAS;YACrB,UAAU,EAAE,SAAS;YACrB,KAAK,EAAE,SAAS;YAChB,eAAe,EAAE,SAAS;YAC1B,MAAM,EAAE,SAAS;YACjB,MAAM,EAAE,SAAS;YACjB,gBAAgB,EAAE,SAAS;YAC3B,IAAI,EAAE,SAAS;YACf,cAAc,EAAE,SAAS;SAC1B;KACF;CACF,CAAC,CAAC"}
1
+ {"version":3,"file":"define-theme.js","sourceRoot":"","sources":["../../src/theme/define-theme.ts"],"names":[],"mappings":"AAEA,MAAM,UAAU,WAAW,CAAwB,KAAQ;IACzD,OAAO,KAAK,CAAC;AACf,CAAC;AAED,MAAM,CAAC,MAAM,YAAY,GAAgB,WAAW,CAAC;IACnD,IAAI,EAAE,SAAS;IACf,MAAM,EAAE;QACN,OAAO,EAAE,SAAS;QAClB,iBAAiB,EAAE,SAAS;QAC5B,UAAU,EAAE,SAAS;QACrB,UAAU,EAAE,SAAS;QACrB,KAAK,EAAE,SAAS;QAChB,eAAe,EAAE,SAAS;QAC1B,MAAM,EAAE,SAAS;QACjB,MAAM,EAAE,SAAS;QACjB,gBAAgB,EAAE,SAAS;QAC3B,IAAI,EAAE,SAAS;QACf,cAAc,EAAE,SAAS;KAC1B;IACD,KAAK,EAAE;QACL,IAAI,EAAE,uFAAuF;QAC7F,KAAK,EAAE,mCAAmC;QAC1C,IAAI,EAAE,0EAA0E;KACjF;IACD,OAAO,EAAE;QACP,OAAO,EAAE,QAAQ;QACjB,OAAO,EAAE,OAAO;KACjB;IACD,YAAY,EAAE,QAAQ;IACtB,IAAI,EAAE;QACJ,MAAM,EAAE;YACN,OAAO,EAAE,SAAS;YAClB,iBAAiB,EAAE,SAAS;YAC5B,UAAU,EAAE,SAAS;YACrB,UAAU,EAAE,SAAS;YACrB,KAAK,EAAE,SAAS;YAChB,eAAe,EAAE,SAAS;YAC1B,MAAM,EAAE,SAAS;YACjB,MAAM,EAAE,SAAS;YACjB,gBAAgB,EAAE,SAAS;YAC3B,IAAI,EAAE,SAAS;YACf,cAAc,EAAE,SAAS;SAC1B;KACF;CACF,CAAC,CAAC"}
@@ -0,0 +1,27 @@
1
+ import type { NoxionThemePackage, NoxionTheme, NoxionThemeColors, NoxionThemeFonts, NoxionThemeSpacing, NoxionThemeShadows, NoxionThemeTransitions, NoxionThemeBreakpoints, ComponentOverrides, NoxionTemplateMap, NoxionLayoutProps } from "./types";
2
+ import type { ComponentType } from "react";
3
+ type DeepPartialTokens = {
4
+ name?: string;
5
+ colors?: Partial<NoxionThemeColors>;
6
+ fonts?: Partial<NoxionThemeFonts>;
7
+ spacing?: Partial<NoxionThemeSpacing>;
8
+ borderRadius?: string;
9
+ shadows?: Partial<NoxionThemeShadows>;
10
+ transitions?: Partial<NoxionThemeTransitions>;
11
+ breakpoints?: Partial<NoxionThemeBreakpoints>;
12
+ dark?: Partial<Omit<NoxionTheme, "name" | "dark">> & {
13
+ colors?: Partial<NoxionThemeColors>;
14
+ };
15
+ };
16
+ export interface ExtendThemeOverrides {
17
+ name?: string;
18
+ tokens?: DeepPartialTokens;
19
+ layouts?: Record<string, ComponentType<NoxionLayoutProps>>;
20
+ templates?: Partial<NoxionTemplateMap>;
21
+ components?: Partial<ComponentOverrides>;
22
+ stylesheet?: string;
23
+ supports?: string[];
24
+ }
25
+ export declare function extendTheme(parent: NoxionThemePackage, overrides: ExtendThemeOverrides): NoxionThemePackage;
26
+ export {};
27
+ //# sourceMappingURL=extend-theme.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"extend-theme.d.ts","sourceRoot":"","sources":["../../src/theme/extend-theme.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,kBAAkB,EAElB,WAAW,EACX,iBAAiB,EACjB,gBAAgB,EAChB,kBAAkB,EAClB,kBAAkB,EAClB,sBAAsB,EACtB,sBAAsB,EACtB,kBAAkB,EAClB,iBAAiB,EACjB,iBAAiB,EAClB,MAAM,SAAS,CAAC;AACjB,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,OAAO,CAAC;AAE3C,KAAK,iBAAiB,GAAG;IACvB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,MAAM,CAAC,EAAE,OAAO,CAAC,iBAAiB,CAAC,CAAC;IACpC,KAAK,CAAC,EAAE,OAAO,CAAC,gBAAgB,CAAC,CAAC;IAClC,OAAO,CAAC,EAAE,OAAO,CAAC,kBAAkB,CAAC,CAAC;IACtC,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,OAAO,CAAC,EAAE,OAAO,CAAC,kBAAkB,CAAC,CAAC;IACtC,WAAW,CAAC,EAAE,OAAO,CAAC,sBAAsB,CAAC,CAAC;IAC9C,WAAW,CAAC,EAAE,OAAO,CAAC,sBAAsB,CAAC,CAAC;IAC9C,IAAI,CAAC,EAAE,OAAO,CAAC,IAAI,CAAC,WAAW,EAAE,MAAM,GAAG,MAAM,CAAC,CAAC,GAAG;QACnD,MAAM,CAAC,EAAE,OAAO,CAAC,iBAAiB,CAAC,CAAC;KACrC,CAAC;CACH,CAAC;AA8GF,MAAM,WAAW,oBAAoB;IACnC,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,MAAM,CAAC,EAAE,iBAAiB,CAAC;IAC3B,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,aAAa,CAAC,iBAAiB,CAAC,CAAC,CAAC;IAC3D,SAAS,CAAC,EAAE,OAAO,CAAC,iBAAiB,CAAC,CAAC;IACvC,UAAU,CAAC,EAAE,OAAO,CAAC,kBAAkB,CAAC,CAAC;IACzC,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,QAAQ,CAAC,EAAE,MAAM,EAAE,CAAC;CACrB;AAED,wBAAgB,WAAW,CACzB,MAAM,EAAE,kBAAkB,EAC1B,SAAS,EAAE,oBAAoB,GAC9B,kBAAkB,CAqBpB"}
@@ -0,0 +1,102 @@
1
+ function mergeColors(parent, child) {
2
+ if (!child)
3
+ return parent;
4
+ const result = { ...parent };
5
+ for (const [key, value] of Object.entries(child)) {
6
+ if (value !== undefined) {
7
+ result[key] = value;
8
+ }
9
+ }
10
+ return result;
11
+ }
12
+ function deepMergeTokens(parent, child) {
13
+ const merged = {
14
+ ...parent,
15
+ name: child.name ?? parent.name,
16
+ colors: mergeColors(parent.colors, child.colors),
17
+ };
18
+ if (child.fonts || parent.fonts) {
19
+ merged.fonts = { ...parent.fonts, ...child.fonts };
20
+ }
21
+ if (child.spacing || parent.spacing) {
22
+ merged.spacing = { ...parent.spacing, ...child.spacing };
23
+ }
24
+ if (child.borderRadius !== undefined) {
25
+ merged.borderRadius = child.borderRadius;
26
+ }
27
+ if (child.shadows || parent.shadows) {
28
+ merged.shadows = { ...parent.shadows, ...child.shadows };
29
+ }
30
+ if (child.transitions || parent.transitions) {
31
+ merged.transitions = { ...parent.transitions, ...child.transitions };
32
+ }
33
+ if (child.breakpoints || parent.breakpoints) {
34
+ merged.breakpoints = { ...parent.breakpoints, ...child.breakpoints };
35
+ }
36
+ if (child.dark || parent.dark) {
37
+ const parentDark = (parent.dark ?? {});
38
+ const childDark = child.dark ?? {};
39
+ const darkResult = {
40
+ ...parentDark,
41
+ ...childDark,
42
+ };
43
+ if (parentDark.colors || childDark.colors) {
44
+ darkResult.colors = mergeColors(parentDark.colors ?? parent.colors, childDark.colors);
45
+ }
46
+ if (parentDark.fonts || childDark.fonts) {
47
+ darkResult.fonts = { ...parentDark.fonts, ...childDark.fonts };
48
+ }
49
+ merged.dark = darkResult;
50
+ }
51
+ return merged;
52
+ }
53
+ function mergeComponents(parent, child) {
54
+ const merged = { ...parent };
55
+ for (const key of Object.keys(child)) {
56
+ if (key === "NotionBlock") {
57
+ merged.NotionBlock = {
58
+ ...parent.NotionBlock,
59
+ ...child.NotionBlock,
60
+ };
61
+ }
62
+ else {
63
+ merged[key] = child[key];
64
+ }
65
+ }
66
+ return merged;
67
+ }
68
+ function mergeLayouts(parent, child) {
69
+ return { ...parent, ...child };
70
+ }
71
+ function mergeTemplates(parent, child) {
72
+ return { ...parent, ...child };
73
+ }
74
+ function mergeSupports(parent, child) {
75
+ if (!parent && !child)
76
+ return undefined;
77
+ const set = new Set([...(parent ?? []), ...(child ?? [])]);
78
+ return [...set];
79
+ }
80
+ export function extendTheme(parent, overrides) {
81
+ return {
82
+ name: overrides.name ?? parent.name,
83
+ tokens: overrides.tokens
84
+ ? deepMergeTokens(parent.tokens, overrides.tokens)
85
+ : parent.tokens,
86
+ layouts: overrides.layouts
87
+ ? mergeLayouts(parent.layouts, overrides.layouts)
88
+ : parent.layouts,
89
+ templates: overrides.templates
90
+ ? mergeTemplates(parent.templates, overrides.templates)
91
+ : parent.templates,
92
+ components: overrides.components
93
+ ? mergeComponents(parent.components, overrides.components)
94
+ : parent.components,
95
+ stylesheet: overrides.stylesheet ?? parent.stylesheet,
96
+ supports: mergeSupports(parent.supports, overrides.supports),
97
+ metadata: overrides.name
98
+ ? { ...parent.metadata }
99
+ : parent.metadata,
100
+ };
101
+ }
102
+ //# sourceMappingURL=extend-theme.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"extend-theme.js","sourceRoot":"","sources":["../../src/theme/extend-theme.ts"],"names":[],"mappings":"AA8BA,SAAS,WAAW,CAClB,MAAyB,EACzB,KAA6C;IAE7C,IAAI,CAAC,KAAK;QAAE,OAAO,MAAM,CAAC;IAC1B,MAAM,MAAM,GAA2B,EAAE,GAAG,MAAM,EAAE,CAAC;IACrD,KAAK,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC;QACjD,IAAI,KAAK,KAAK,SAAS,EAAE,CAAC;YACxB,MAAM,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC;QACtB,CAAC;IACH,CAAC;IACD,OAAO,MAA2B,CAAC;AACrC,CAAC;AAED,SAAS,eAAe,CACtB,MAAyB,EACzB,KAAwB;IAExB,MAAM,MAAM,GAAsB;QAChC,GAAG,MAAM;QACT,IAAI,EAAE,KAAK,CAAC,IAAI,IAAI,MAAM,CAAC,IAAI;QAC/B,MAAM,EAAE,WAAW,CAAC,MAAM,CAAC,MAAM,EAAE,KAAK,CAAC,MAAM,CAAC;KACjD,CAAC;IAEF,IAAI,KAAK,CAAC,KAAK,IAAI,MAAM,CAAC,KAAK,EAAE,CAAC;QAChC,MAAM,CAAC,KAAK,GAAG,EAAE,GAAG,MAAM,CAAC,KAAK,EAAE,GAAG,KAAK,CAAC,KAAK,EAAE,CAAC;IACrD,CAAC;IACD,IAAI,KAAK,CAAC,OAAO,IAAI,MAAM,CAAC,OAAO,EAAE,CAAC;QACpC,MAAM,CAAC,OAAO,GAAG,EAAE,GAAG,MAAM,CAAC,OAAO,EAAE,GAAG,KAAK,CAAC,OAAO,EAAkC,CAAC;IAC3F,CAAC;IACD,IAAI,KAAK,CAAC,YAAY,KAAK,SAAS,EAAE,CAAC;QACrC,MAAM,CAAC,YAAY,GAAG,KAAK,CAAC,YAAY,CAAC;IAC3C,CAAC;IACD,IAAI,KAAK,CAAC,OAAO,IAAI,MAAM,CAAC,OAAO,EAAE,CAAC;QACpC,MAAM,CAAC,OAAO,GAAG,EAAE,GAAG,MAAM,CAAC,OAAO,EAAE,GAAG,KAAK,CAAC,OAAO,EAAE,CAAC;IAC3D,CAAC;IACD,IAAI,KAAK,CAAC,WAAW,IAAI,MAAM,CAAC,WAAW,EAAE,CAAC;QAC5C,MAAM,CAAC,WAAW,GAAG,EAAE,GAAG,MAAM,CAAC,WAAW,EAAE,GAAG,KAAK,CAAC,WAAW,EAAE,CAAC;IACvE,CAAC;IACD,IAAI,KAAK,CAAC,WAAW,IAAI,MAAM,CAAC,WAAW,EAAE,CAAC;QAC5C,MAAM,CAAC,WAAW,GAAG,EAAE,GAAG,MAAM,CAAC,WAAW,EAAE,GAAG,KAAK,CAAC,WAAW,EAAE,CAAC;IACvE,CAAC;IAED,IAAI,KAAK,CAAC,IAAI,IAAI,MAAM,CAAC,IAAI,EAAE,CAAC;QAC9B,MAAM,UAAU,GAAG,CAAC,MAAM,CAAC,IAAI,IAAI,EAAE,CAAyB,CAAC;QAC/D,MAAM,SAAS,GAAG,KAAK,CAAC,IAAI,IAAI,EAAE,CAAC;QACnC,MAAM,UAAU,GAAgD;YAC9D,GAAG,UAAU;YACb,GAAG,SAAS;SACb,CAAC;QACF,IAAI,UAAU,CAAC,MAAM,IAAI,SAAS,CAAC,MAAM,EAAE,CAAC;YAC1C,UAAU,CAAC,MAAM,GAAG,WAAW,CAC7B,UAAU,CAAC,MAAM,IAAI,MAAM,CAAC,MAAM,EAClC,SAAS,CAAC,MAAM,CACjB,CAAC;QACJ,CAAC;QACD,IAAI,UAAU,CAAC,KAAK,IAAI,SAAS,CAAC,KAAK,EAAE,CAAC;YACxC,UAAU,CAAC,KAAK,GAAG,EAAE,GAAG,UAAU,CAAC,KAAK,EAAE,GAAG,SAAS,CAAC,KAAK,EAAE,CAAC;QACjE,CAAC;QACD,MAAM,CAAC,IAAI,GAAG,UAAU,CAAC;IAC3B,CAAC;IAED,OAAO,MAAM,CAAC;AAChB,CAAC;AAED,SAAS,eAAe,CACtB,MAAmC,EACnC,KAAkC;IAElC,MAAM,MAAM,GAAgC,EAAE,GAAG,MAAM,EAAE,CAAC;IAE1D,KAAK,MAAM,GAAG,IAAI,MAAM,CAAC,IAAI,CAAC,KAAK,CAAiC,EAAE,CAAC;QACrE,IAAI,GAAG,KAAK,aAAa,EAAE,CAAC;YAC1B,MAAM,CAAC,WAAW,GAAG;gBACnB,GAAG,MAAM,CAAC,WAAW;gBACrB,GAAG,KAAK,CAAC,WAAW;aACrB,CAAC;QACJ,CAAC;aAAM,CAAC;YACL,MAAkC,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC,GAAG,CAAC,CAAC;QACxD,CAAC;IACH,CAAC;IAED,OAAO,MAAM,CAAC;AAChB,CAAC;AAED,SAAS,YAAY,CACnB,MAAwD,EACxD,KAAuD;IAEvD,OAAO,EAAE,GAAG,MAAM,EAAE,GAAG,KAAK,EAAE,CAAC;AACjC,CAAC;AAED,SAAS,cAAc,CACrB,MAAkC,EAClC,KAAiC;IAEjC,OAAO,EAAE,GAAG,MAAM,EAAE,GAAG,KAAK,EAAE,CAAC;AACjC,CAAC;AAED,SAAS,aAAa,CACpB,MAA4B,EAC5B,KAA2B;IAE3B,IAAI,CAAC,MAAM,IAAI,CAAC,KAAK;QAAE,OAAO,SAAS,CAAC;IACxC,MAAM,GAAG,GAAG,IAAI,GAAG,CAAC,CAAC,GAAG,CAAC,MAAM,IAAI,EAAE,CAAC,EAAE,GAAG,CAAC,KAAK,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC;IAC3D,OAAO,CAAC,GAAG,GAAG,CAAC,CAAC;AAClB,CAAC;AAYD,MAAM,UAAU,WAAW,CACzB,MAA0B,EAC1B,SAA+B;IAE/B,OAAO;QACL,IAAI,EAAE,SAAS,CAAC,IAAI,IAAI,MAAM,CAAC,IAAI;QACnC,MAAM,EAAE,SAAS,CAAC,MAAM;YACtB,CAAC,CAAC,eAAe,CAAC,MAAM,CAAC,MAAM,EAAE,SAAS,CAAC,MAAM,CAAC;YAClD,CAAC,CAAC,MAAM,CAAC,MAAM;QACjB,OAAO,EAAE,SAAS,CAAC,OAAO;YACxB,CAAC,CAAC,YAAY,CAAC,MAAM,CAAC,OAAO,EAAE,SAAS,CAAC,OAAO,CAAC;YACjD,CAAC,CAAC,MAAM,CAAC,OAAO;QAClB,SAAS,EAAE,SAAS,CAAC,SAAS;YAC5B,CAAC,CAAC,cAAc,CAAC,MAAM,CAAC,SAAS,EAAE,SAAS,CAAC,SAAS,CAAC;YACvD,CAAC,CAAC,MAAM,CAAC,SAAS;QACpB,UAAU,EAAE,SAAS,CAAC,UAAU;YAC9B,CAAC,CAAC,eAAe,CAAC,MAAM,CAAC,UAAU,EAAE,SAAS,CAAC,UAAU,CAAC;YAC1D,CAAC,CAAC,MAAM,CAAC,UAAU;QACrB,UAAU,EAAE,SAAS,CAAC,UAAU,IAAI,MAAM,CAAC,UAAU;QACrD,QAAQ,EAAE,aAAa,CAAC,MAAM,CAAC,QAAQ,EAAE,SAAS,CAAC,QAAQ,CAAC;QAC5D,QAAQ,EAAE,SAAS,CAAC,IAAI;YACtB,CAAC,CAAC,EAAE,GAAG,MAAM,CAAC,QAAQ,EAAE;YACxB,CAAC,CAAC,MAAM,CAAC,QAAQ;KACpB,CAAC;AACJ,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"template-resolver.d.ts","sourceRoot":"","sources":["../../src/theme/template-resolver.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,OAAO,CAAC;AAC3C,OAAO,KAAK,EAAE,iBAAiB,EAAE,mBAAmB,EAAE,MAAM,SAAS,CAAC;AAEtE,wBAAgB,eAAe,CAC7B,WAAW,EAAE,OAAO,CAAC,iBAAiB,CAAC,EACvC,QAAQ,EAAE,MAAM,EAChB,QAAQ,CAAC,EAAE,aAAa,CAAC,mBAAmB,CAAC,GAC5C,aAAa,CAAC,mBAAmB,CAAC,GAAG,SAAS,CAEhD"}
1
+ {"version":3,"file":"template-resolver.d.ts","sourceRoot":"","sources":["../../src/theme/template-resolver.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,OAAO,CAAC;AAC3C,OAAO,KAAK,EAAE,iBAAiB,EAAE,mBAAmB,EAAE,MAAM,SAAS,CAAC;AAuBtE,wBAAgB,eAAe,CAC7B,WAAW,EAAE,OAAO,CAAC,iBAAiB,CAAC,EACvC,QAAQ,EAAE,MAAM,EAChB,QAAQ,CAAC,EAAE,aAAa,CAAC,mBAAmB,CAAC,GAC5C,aAAa,CAAC,mBAAmB,CAAC,GAAG,SAAS,CAqBhD"}
@@ -1,4 +1,38 @@
1
+ const LEGACY_TO_NAMESPACED = {
2
+ home: "blog/home",
3
+ post: "blog/post",
4
+ archive: "blog/archive",
5
+ tag: "blog/tag",
6
+ };
7
+ const NAMESPACED_TO_LEGACY = {
8
+ "blog/home": "home",
9
+ "blog/post": "post",
10
+ "blog/archive": "archive",
11
+ "blog/tag": "tag",
12
+ };
13
+ function lookupTemplate(templateMap, key) {
14
+ return templateMap[key];
15
+ }
1
16
  export function resolveTemplate(templateMap, pageType, fallback) {
2
- return templateMap[pageType] ?? fallback ?? templateMap.home;
17
+ const direct = lookupTemplate(templateMap, pageType);
18
+ if (direct)
19
+ return direct;
20
+ if (pageType in LEGACY_TO_NAMESPACED) {
21
+ const namespaced = lookupTemplate(templateMap, LEGACY_TO_NAMESPACED[pageType]);
22
+ if (namespaced)
23
+ return namespaced;
24
+ }
25
+ if (pageType in NAMESPACED_TO_LEGACY) {
26
+ const legacy = lookupTemplate(templateMap, NAMESPACED_TO_LEGACY[pageType]);
27
+ if (legacy)
28
+ return legacy;
29
+ }
30
+ if (pageType.includes("/")) {
31
+ const basename = pageType.split("/").pop();
32
+ const generic = lookupTemplate(templateMap, basename);
33
+ if (generic)
34
+ return generic;
35
+ }
36
+ return fallback ?? templateMap.home;
3
37
  }
4
38
  //# sourceMappingURL=template-resolver.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"template-resolver.js","sourceRoot":"","sources":["../../src/theme/template-resolver.ts"],"names":[],"mappings":"AAGA,MAAM,UAAU,eAAe,CAC7B,WAAuC,EACvC,QAAgB,EAChB,QAA6C;IAE7C,OAAO,WAAW,CAAC,QAAQ,CAAC,IAAI,QAAQ,IAAI,WAAW,CAAC,IAAI,CAAC;AAC/D,CAAC"}
1
+ {"version":3,"file":"template-resolver.js","sourceRoot":"","sources":["../../src/theme/template-resolver.ts"],"names":[],"mappings":"AAGA,MAAM,oBAAoB,GAA2B;IACnD,IAAI,EAAE,WAAW;IACjB,IAAI,EAAE,WAAW;IACjB,OAAO,EAAE,cAAc;IACvB,GAAG,EAAE,UAAU;CAChB,CAAC;AAEF,MAAM,oBAAoB,GAA2B;IACnD,WAAW,EAAE,MAAM;IACnB,WAAW,EAAE,MAAM;IACnB,cAAc,EAAE,SAAS;IACzB,UAAU,EAAE,KAAK;CAClB,CAAC;AAEF,SAAS,cAAc,CACrB,WAAuC,EACvC,GAAW;IAEX,OAAO,WAAW,CAAC,GAAG,CAAC,CAAC;AAC1B,CAAC;AAED,MAAM,UAAU,eAAe,CAC7B,WAAuC,EACvC,QAAgB,EAChB,QAA6C;IAE7C,MAAM,MAAM,GAAG,cAAc,CAAC,WAAW,EAAE,QAAQ,CAAC,CAAC;IACrD,IAAI,MAAM;QAAE,OAAO,MAAM,CAAC;IAE1B,IAAI,QAAQ,IAAI,oBAAoB,EAAE,CAAC;QACrC,MAAM,UAAU,GAAG,cAAc,CAAC,WAAW,EAAE,oBAAoB,CAAC,QAAQ,CAAC,CAAC,CAAC;QAC/E,IAAI,UAAU;YAAE,OAAO,UAAU,CAAC;IACpC,CAAC;IAED,IAAI,QAAQ,IAAI,oBAAoB,EAAE,CAAC;QACrC,MAAM,MAAM,GAAG,cAAc,CAAC,WAAW,EAAE,oBAAoB,CAAC,QAAQ,CAAC,CAAC,CAAC;QAC3E,IAAI,MAAM;YAAE,OAAO,MAAM,CAAC;IAC5B,CAAC;IAED,IAAI,QAAQ,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE,CAAC;QAC3B,MAAM,QAAQ,GAAG,QAAQ,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,EAAG,CAAC;QAC5C,MAAM,OAAO,GAAG,cAAc,CAAC,WAAW,EAAE,QAAQ,CAAC,CAAC;QACtD,IAAI,OAAO;YAAE,OAAO,OAAO,CAAC;IAC9B,CAAC;IAED,OAAO,QAAQ,IAAI,WAAW,CAAC,IAAI,CAAC;AACtC,CAAC"}
@@ -58,6 +58,7 @@ export interface NoxionThemeTokens extends NoxionTheme {
58
58
  }
59
59
  export interface HeaderProps {
60
60
  siteName: string;
61
+ logo?: import("react").ReactNode;
61
62
  navigation?: {
62
63
  label: string;
63
64
  href: string;
@@ -100,11 +101,57 @@ export interface TagFilterProps {
100
101
  tags: string[];
101
102
  selectedTags: string[];
102
103
  onToggle: (tag: string) => void;
104
+ maxVisible?: number;
105
+ }
106
+ export interface DocsSidebarItem {
107
+ id: string;
108
+ title: string;
109
+ slug: string;
110
+ level: number;
111
+ children?: DocsSidebarItem[];
112
+ }
113
+ export interface DocsSidebarProps {
114
+ items: DocsSidebarItem[];
115
+ currentSlug?: string;
116
+ }
117
+ export interface DocsBreadcrumbItem {
118
+ label: string;
119
+ href?: string;
120
+ }
121
+ export interface DocsBreadcrumbProps {
122
+ items: DocsBreadcrumbItem[];
123
+ }
124
+ export interface DocsNavigationLink {
125
+ title: string;
126
+ slug: string;
127
+ }
128
+ export interface DocsPageProps {
129
+ data: Record<string, unknown>;
130
+ prev?: DocsNavigationLink;
131
+ next?: DocsNavigationLink;
132
+ className?: string;
133
+ }
134
+ export interface PortfolioCardProps {
135
+ id: string;
136
+ title: string;
137
+ slug: string;
138
+ description?: string;
139
+ coverImage?: string;
140
+ technologies?: string[];
141
+ projectUrl?: string;
142
+ year?: number;
143
+ featured?: boolean;
144
+ }
145
+ export interface PortfolioFilterProps {
146
+ technologies: string[];
147
+ selectedTechnologies: string[];
148
+ onToggle: (tech: string) => void;
103
149
  }
104
150
  export interface ComponentOverrides {
105
151
  Header?: ComponentType<HeaderProps>;
106
152
  Footer?: ComponentType<FooterProps>;
107
153
  PostCard?: ComponentType<PostCardProps>;
154
+ FeaturedPostCard?: ComponentType<PostCardProps>;
108
155
  PostList?: ComponentType<PostListProps>;
109
156
  NotionPage?: ComponentType<NotionPageProps>;
110
157
  TOC?: ComponentType<TOCProps>;
@@ -140,6 +187,12 @@ export interface NoxionLayoutProps {
140
187
  children: React.ReactNode;
141
188
  className?: string;
142
189
  }
190
+ export interface NoxionThemeMetadata {
191
+ description?: string;
192
+ author?: string;
193
+ version?: string;
194
+ preview?: string;
195
+ }
143
196
  export interface NoxionThemePackage {
144
197
  name: string;
145
198
  tokens: NoxionThemeTokens;
@@ -147,5 +200,8 @@ export interface NoxionThemePackage {
147
200
  templates: Partial<NoxionTemplateMap>;
148
201
  components: Partial<ComponentOverrides>;
149
202
  stylesheet?: string;
203
+ /** Page types this theme supports (e.g. ['blog', 'docs', 'portfolio']) */
204
+ supports?: string[];
205
+ metadata?: NoxionThemeMetadata;
150
206
  }
151
207
  //# sourceMappingURL=types.d.ts.map