@noxion/renderer 0.0.2 → 0.1.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 (108) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +43 -0
  3. package/dist/components/EmptyState.d.ts +2 -1
  4. package/dist/components/EmptyState.d.ts.map +1 -1
  5. package/dist/components/EmptyState.js +2 -17
  6. package/dist/components/EmptyState.js.map +1 -1
  7. package/dist/components/Footer.d.ts +3 -1
  8. package/dist/components/Footer.d.ts.map +1 -1
  9. package/dist/components/Footer.js +2 -10
  10. package/dist/components/Footer.js.map +1 -1
  11. package/dist/components/Header.d.ts +3 -1
  12. package/dist/components/Header.d.ts.map +1 -1
  13. package/dist/components/Header.js +2 -18
  14. package/dist/components/Header.js.map +1 -1
  15. package/dist/components/NotionPage.d.ts +1 -4
  16. package/dist/components/NotionPage.d.ts.map +1 -1
  17. package/dist/components/NotionPage.js +31 -16
  18. package/dist/components/NotionPage.js.map +1 -1
  19. package/dist/components/PostCard.d.ts +3 -1
  20. package/dist/components/PostCard.d.ts.map +1 -1
  21. package/dist/components/PostCard.js +5 -41
  22. package/dist/components/PostCard.js.map +1 -1
  23. package/dist/components/PostList.d.ts +3 -1
  24. package/dist/components/PostList.d.ts.map +1 -1
  25. package/dist/components/PostList.js +3 -15
  26. package/dist/components/PostList.js.map +1 -1
  27. package/dist/components/Search.d.ts +3 -1
  28. package/dist/components/Search.d.ts.map +1 -1
  29. package/dist/components/Search.js +2 -23
  30. package/dist/components/Search.js.map +1 -1
  31. package/dist/components/TOC.d.ts +3 -1
  32. package/dist/components/TOC.d.ts.map +1 -1
  33. package/dist/components/TOC.js +2 -19
  34. package/dist/components/TOC.js.map +1 -1
  35. package/dist/components/TagFilter.d.ts +3 -1
  36. package/dist/components/TagFilter.d.ts.map +1 -1
  37. package/dist/components/TagFilter.js +6 -16
  38. package/dist/components/TagFilter.js.map +1 -1
  39. package/dist/components/ThemeToggle.d.ts +3 -1
  40. package/dist/components/ThemeToggle.d.ts.map +1 -1
  41. package/dist/components/ThemeToggle.js +2 -13
  42. package/dist/components/ThemeToggle.js.map +1 -1
  43. package/dist/index.d.ts +7 -3
  44. package/dist/index.d.ts.map +1 -1
  45. package/dist/index.js +6 -2
  46. package/dist/index.js.map +1 -1
  47. package/dist/layouts/BaseLayout.d.ts +3 -0
  48. package/dist/layouts/BaseLayout.d.ts.map +1 -0
  49. package/dist/layouts/BaseLayout.js +11 -0
  50. package/dist/layouts/BaseLayout.js.map +1 -0
  51. package/dist/layouts/BlogLayout.d.ts +3 -0
  52. package/dist/layouts/BlogLayout.d.ts.map +1 -0
  53. package/dist/layouts/BlogLayout.js +6 -0
  54. package/dist/layouts/BlogLayout.js.map +1 -0
  55. package/dist/layouts/DocsLayout.d.ts +3 -0
  56. package/dist/layouts/DocsLayout.d.ts.map +1 -0
  57. package/dist/layouts/DocsLayout.js +11 -0
  58. package/dist/layouts/DocsLayout.js.map +1 -0
  59. package/dist/layouts/MagazineLayout.d.ts +3 -0
  60. package/dist/layouts/MagazineLayout.d.ts.map +1 -0
  61. package/dist/layouts/MagazineLayout.js +11 -0
  62. package/dist/layouts/MagazineLayout.js.map +1 -0
  63. package/dist/layouts/index.d.ts +5 -0
  64. package/dist/layouts/index.d.ts.map +1 -0
  65. package/dist/layouts/index.js +5 -0
  66. package/dist/layouts/index.js.map +1 -0
  67. package/dist/templates/ArchivePage.d.ts +3 -0
  68. package/dist/templates/ArchivePage.d.ts.map +1 -0
  69. package/dist/templates/ArchivePage.js +8 -0
  70. package/dist/templates/ArchivePage.js.map +1 -0
  71. package/dist/templates/HomePage.d.ts +3 -0
  72. package/dist/templates/HomePage.d.ts.map +1 -0
  73. package/dist/templates/HomePage.js +7 -0
  74. package/dist/templates/HomePage.js.map +1 -0
  75. package/dist/templates/PostPage.d.ts +3 -0
  76. package/dist/templates/PostPage.d.ts.map +1 -0
  77. package/dist/templates/PostPage.js +11 -0
  78. package/dist/templates/PostPage.js.map +1 -0
  79. package/dist/templates/TagPage.d.ts +3 -0
  80. package/dist/templates/TagPage.d.ts.map +1 -0
  81. package/dist/templates/TagPage.js +8 -0
  82. package/dist/templates/TagPage.js.map +1 -0
  83. package/dist/templates/index.d.ts +5 -0
  84. package/dist/templates/index.d.ts.map +1 -0
  85. package/dist/templates/index.js +5 -0
  86. package/dist/templates/index.js.map +1 -0
  87. package/dist/theme/ThemeProvider.d.ts +9 -2
  88. package/dist/theme/ThemeProvider.d.ts.map +1 -1
  89. package/dist/theme/ThemeProvider.js +46 -6
  90. package/dist/theme/ThemeProvider.js.map +1 -1
  91. package/dist/theme/css-generator.d.ts +2 -1
  92. package/dist/theme/css-generator.d.ts.map +1 -1
  93. package/dist/theme/css-generator.js +44 -0
  94. package/dist/theme/css-generator.js.map +1 -1
  95. package/dist/theme/define-theme.js +14 -14
  96. package/dist/theme/define-theme.js.map +1 -1
  97. package/dist/theme/slot-resolver.d.ts +3 -0
  98. package/dist/theme/slot-resolver.d.ts.map +1 -0
  99. package/dist/theme/slot-resolver.js +13 -0
  100. package/dist/theme/slot-resolver.js.map +1 -0
  101. package/dist/theme/template-resolver.d.ts +4 -0
  102. package/dist/theme/template-resolver.d.ts.map +1 -0
  103. package/dist/theme/template-resolver.js +4 -0
  104. package/dist/theme/template-resolver.js.map +1 -0
  105. package/dist/theme/types.d.ts +60 -0
  106. package/dist/theme/types.d.ts.map +1 -1
  107. package/package.json +9 -8
  108. package/src/styles/noxion.css +669 -0
@@ -1,2 +1,4 @@
1
- export declare function ThemeToggle(): import("react/jsx-runtime").JSX.Element;
1
+ export declare function ThemeToggle({ className }: {
2
+ className?: string;
3
+ }): import("react/jsx-runtime").JSX.Element;
2
4
  //# sourceMappingURL=ThemeToggle.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"ThemeToggle.d.ts","sourceRoot":"","sources":["../../src/components/ThemeToggle.tsx"],"names":[],"mappings":"AAkBA,wBAAgB,WAAW,4CAgC1B"}
1
+ {"version":3,"file":"ThemeToggle.d.ts","sourceRoot":"","sources":["../../src/components/ThemeToggle.tsx"],"names":[],"mappings":"AAkBA,wBAAgB,WAAW,CAAC,EAAE,SAAS,EAAE,EAAE;IAAE,SAAS,CAAC,EAAE,MAAM,CAAA;CAAE,2CAoBhE"}
@@ -12,24 +12,13 @@ const LABELS = {
12
12
  system: "System",
13
13
  };
14
14
  const CYCLE = ["system", "light", "dark"];
15
- export function ThemeToggle() {
15
+ export function ThemeToggle({ className }) {
16
16
  const { preference, setPreference } = useThemePreference();
17
17
  const nextPreference = () => {
18
18
  const currentIndex = CYCLE.indexOf(preference);
19
19
  const next = CYCLE[(currentIndex + 1) % CYCLE.length];
20
20
  setPreference(next);
21
21
  };
22
- return (_jsx("button", { onClick: nextPreference, type: "button", "aria-label": `Theme: ${LABELS[preference]}. Click to change.`, title: LABELS[preference], className: "noxion-theme-toggle", style: {
23
- display: "inline-flex",
24
- alignItems: "center",
25
- justifyContent: "center",
26
- width: "2rem",
27
- height: "2rem",
28
- borderRadius: "var(--noxion-border-radius, 0.5rem)",
29
- border: "1px solid var(--noxion-border, #e5e5e5)",
30
- backgroundColor: "transparent",
31
- cursor: "pointer",
32
- fontSize: "1rem",
33
- }, children: ICONS[preference] }));
22
+ return (_jsx("button", { onClick: nextPreference, type: "button", "aria-label": `Theme: ${LABELS[preference]}. Click to change.`, title: LABELS[preference], className: className ? `noxion-theme-toggle ${className}` : "noxion-theme-toggle", children: ICONS[preference] }));
34
23
  }
35
24
  //# sourceMappingURL=ThemeToggle.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"ThemeToggle.js","sourceRoot":"","sources":["../../src/components/ThemeToggle.tsx"],"names":[],"mappings":"AAAA,YAAY,CAAC;;AAEb,OAAO,EAAE,kBAAkB,EAAwB,MAAM,mBAAmB,CAAC;AAE7E,MAAM,KAAK,GAAoC;IAC7C,KAAK,EAAE,cAAc;IACrB,IAAI,EAAE,cAAc;IACpB,MAAM,EAAE,cAAc;CACvB,CAAC;AAEF,MAAM,MAAM,GAAoC;IAC9C,KAAK,EAAE,OAAO;IACd,IAAI,EAAE,MAAM;IACZ,MAAM,EAAE,QAAQ;CACjB,CAAC;AAEF,MAAM,KAAK,GAAsB,CAAC,QAAQ,EAAE,OAAO,EAAE,MAAM,CAAC,CAAC;AAE7D,MAAM,UAAU,WAAW;IACzB,MAAM,EAAE,UAAU,EAAE,aAAa,EAAE,GAAG,kBAAkB,EAAE,CAAC;IAE3D,MAAM,cAAc,GAAG,GAAG,EAAE;QAC1B,MAAM,YAAY,GAAG,KAAK,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC;QAC/C,MAAM,IAAI,GAAG,KAAK,CAAC,CAAC,YAAY,GAAG,CAAC,CAAC,GAAG,KAAK,CAAC,MAAM,CAAC,CAAC;QACtD,aAAa,CAAC,IAAI,CAAC,CAAC;IACtB,CAAC,CAAC;IAEF,OAAO,CACL,iBACE,OAAO,EAAE,cAAc,EACvB,IAAI,EAAC,QAAQ,gBACD,UAAU,MAAM,CAAC,UAAU,CAAC,oBAAoB,EAC5D,KAAK,EAAE,MAAM,CAAC,UAAU,CAAC,EACzB,SAAS,EAAC,qBAAqB,EAC/B,KAAK,EAAE;YACL,OAAO,EAAE,aAAa;YACtB,UAAU,EAAE,QAAQ;YACpB,cAAc,EAAE,QAAQ;YACxB,KAAK,EAAE,MAAM;YACb,MAAM,EAAE,MAAM;YACd,YAAY,EAAE,qCAAqC;YACnD,MAAM,EAAE,yCAAyC;YACjD,eAAe,EAAE,aAAa;YAC9B,MAAM,EAAE,SAAS;YACjB,QAAQ,EAAE,MAAM;SACjB,YAEA,KAAK,CAAC,UAAU,CAAC,GACX,CACV,CAAC;AACJ,CAAC"}
1
+ {"version":3,"file":"ThemeToggle.js","sourceRoot":"","sources":["../../src/components/ThemeToggle.tsx"],"names":[],"mappings":"AAAA,YAAY,CAAC;;AAEb,OAAO,EAAE,kBAAkB,EAAwB,MAAM,mBAAmB,CAAC;AAE7E,MAAM,KAAK,GAAoC;IAC7C,KAAK,EAAE,cAAc;IACrB,IAAI,EAAE,cAAc;IACpB,MAAM,EAAE,cAAc;CACvB,CAAC;AAEF,MAAM,MAAM,GAAoC;IAC9C,KAAK,EAAE,OAAO;IACd,IAAI,EAAE,MAAM;IACZ,MAAM,EAAE,QAAQ;CACjB,CAAC;AAEF,MAAM,KAAK,GAAsB,CAAC,QAAQ,EAAE,OAAO,EAAE,MAAM,CAAC,CAAC;AAE7D,MAAM,UAAU,WAAW,CAAC,EAAE,SAAS,EAA0B;IAC/D,MAAM,EAAE,UAAU,EAAE,aAAa,EAAE,GAAG,kBAAkB,EAAE,CAAC;IAE3D,MAAM,cAAc,GAAG,GAAG,EAAE;QAC1B,MAAM,YAAY,GAAG,KAAK,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC;QAC/C,MAAM,IAAI,GAAG,KAAK,CAAC,CAAC,YAAY,GAAG,CAAC,CAAC,GAAG,KAAK,CAAC,MAAM,CAAC,CAAC;QACtD,aAAa,CAAC,IAAI,CAAC,CAAC;IACtB,CAAC,CAAC;IAEF,OAAO,CACL,iBACE,OAAO,EAAE,cAAc,EACvB,IAAI,EAAC,QAAQ,gBACD,UAAU,MAAM,CAAC,UAAU,CAAC,oBAAoB,EAC5D,KAAK,EAAE,MAAM,CAAC,UAAU,CAAC,EACzB,SAAS,EAAE,SAAS,CAAC,CAAC,CAAC,uBAAuB,SAAS,EAAE,CAAC,CAAC,CAAC,qBAAqB,YAEhF,KAAK,CAAC,UAAU,CAAC,GACX,CACV,CAAC;AACJ,CAAC"}
package/dist/index.d.ts CHANGED
@@ -1,9 +1,13 @@
1
1
  export { defineTheme, defaultTheme } from "./theme/define-theme";
2
- export { generateCSSVariables } from "./theme/css-generator";
2
+ export { generateCSSVariables, generateThemeStylesheet } from "./theme/css-generator";
3
3
  export { resolveComponents } from "./theme/component-resolver";
4
- export { NoxionThemeProvider, useNoxionTheme, useNoxionComponents, useNoxionLayout, } from "./theme/ThemeProvider";
4
+ export { NoxionThemeProvider, useNoxionTheme, useNoxionTokens, useNoxionComponents, useNoxionLayout, useNoxionSlots, useNoxionTemplate, } from "./theme/ThemeProvider";
5
5
  export type { NoxionThemeProviderProps } from "./theme/ThemeProvider";
6
- export type { NoxionTheme, NoxionThemeColors, NoxionThemeFonts, NoxionThemeSpacing, NoxionLayout, ComponentOverrides, HeaderProps, FooterProps, PostCardProps, PostListProps, TOCProps, SearchProps, TagFilterProps, } from "./theme/types";
6
+ export { resolveSlots } from "./theme/slot-resolver";
7
+ export { resolveTemplate } from "./theme/template-resolver";
8
+ export { BaseLayout, BlogLayout, DocsLayout, MagazineLayout } from "./layouts";
9
+ export { HomePage, PostPage, ArchivePage, TagPage } from "./templates";
10
+ export type { NoxionTheme, NoxionThemeColors, NoxionThemeFonts, NoxionThemeSpacing, NoxionThemeShadows, NoxionThemeTransitions, NoxionThemeBreakpoints, NoxionThemeTokens, NoxionLayout, ComponentOverrides, NoxionSlotMap, NoxionTemplateMap, NoxionTemplateProps, NoxionLayoutProps, NoxionThemePackage, HeaderProps, FooterProps, PostCardProps, PostListProps, TOCProps, SearchProps, TagFilterProps, } from "./theme/types";
7
11
  export { NotionPage } from "./components/NotionPage";
8
12
  export type { NotionPageProps } from "./components/NotionPage";
9
13
  export { PostCard } from "./components/PostCard";
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAC;AACjE,OAAO,EAAE,oBAAoB,EAAE,MAAM,uBAAuB,CAAC;AAC7D,OAAO,EAAE,iBAAiB,EAAE,MAAM,4BAA4B,CAAC;AAC/D,OAAO,EACL,mBAAmB,EACnB,cAAc,EACd,mBAAmB,EACnB,eAAe,GAChB,MAAM,uBAAuB,CAAC;AAC/B,YAAY,EAAE,wBAAwB,EAAE,MAAM,uBAAuB,CAAC;AACtE,YAAY,EACV,WAAW,EACX,iBAAiB,EACjB,gBAAgB,EAChB,kBAAkB,EAClB,YAAY,EACZ,kBAAkB,EAClB,WAAW,EACX,WAAW,EACX,aAAa,EACb,aAAa,EACb,QAAQ,EACR,WAAW,EACX,cAAc,GACf,MAAM,eAAe,CAAC;AAEvB,OAAO,EAAE,UAAU,EAAE,MAAM,yBAAyB,CAAC;AACrD,YAAY,EAAE,eAAe,EAAE,MAAM,yBAAyB,CAAC;AAC/D,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;AACrD,YAAY,EAAE,eAAe,EAAE,MAAM,yBAAyB,CAAC;AAE/D,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;AACtD,YAAY,EAAE,eAAe,EAAE,MAAM,kBAAkB,CAAC;AACxD,OAAO,EAAE,SAAS,EAAE,MAAM,mBAAmB,CAAC"}
1
+ {"version":3,"file":"index.d.ts","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;AAC/B,YAAY,EAAE,wBAAwB,EAAE,MAAM,uBAAuB,CAAC;AAEtE,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;AACvE,YAAY,EACV,WAAW,EACX,iBAAiB,EACjB,gBAAgB,EAChB,kBAAkB,EAClB,kBAAkB,EAClB,sBAAsB,EACtB,sBAAsB,EACtB,iBAAiB,EACjB,YAAY,EACZ,kBAAkB,EAClB,aAAa,EACb,iBAAiB,EACjB,mBAAmB,EACnB,iBAAiB,EACjB,kBAAkB,EAClB,WAAW,EACX,WAAW,EACX,aAAa,EACb,aAAa,EACb,QAAQ,EACR,WAAW,EACX,cAAc,GACf,MAAM,eAAe,CAAC;AAEvB,OAAO,EAAE,UAAU,EAAE,MAAM,yBAAyB,CAAC;AACrD,YAAY,EAAE,eAAe,EAAE,MAAM,yBAAyB,CAAC;AAC/D,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;AACrD,YAAY,EAAE,eAAe,EAAE,MAAM,yBAAyB,CAAC;AAE/D,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;AACtD,YAAY,EAAE,eAAe,EAAE,MAAM,kBAAkB,CAAC;AACxD,OAAO,EAAE,SAAS,EAAE,MAAM,mBAAmB,CAAC"}
package/dist/index.js CHANGED
@@ -1,7 +1,11 @@
1
1
  export { defineTheme, defaultTheme } from "./theme/define-theme";
2
- export { generateCSSVariables } from "./theme/css-generator";
2
+ export { generateCSSVariables, generateThemeStylesheet } from "./theme/css-generator";
3
3
  export { resolveComponents } from "./theme/component-resolver";
4
- export { NoxionThemeProvider, useNoxionTheme, useNoxionComponents, useNoxionLayout, } from "./theme/ThemeProvider";
4
+ export { NoxionThemeProvider, useNoxionTheme, useNoxionTokens, useNoxionComponents, useNoxionLayout, useNoxionSlots, useNoxionTemplate, } from "./theme/ThemeProvider";
5
+ export { resolveSlots } from "./theme/slot-resolver";
6
+ export { resolveTemplate } from "./theme/template-resolver";
7
+ export { BaseLayout, BlogLayout, DocsLayout, MagazineLayout } from "./layouts";
8
+ export { HomePage, PostPage, ArchivePage, TagPage } from "./templates";
5
9
  export { NotionPage } from "./components/NotionPage";
6
10
  export { PostCard } from "./components/PostCard";
7
11
  export { PostList } from "./components/PostList";
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,MAAM,uBAAuB,CAAC;AAC7D,OAAO,EAAE,iBAAiB,EAAE,MAAM,4BAA4B,CAAC;AAC/D,OAAO,EACL,mBAAmB,EACnB,cAAc,EACd,mBAAmB,EACnB,eAAe,GAChB,MAAM,uBAAuB,CAAC;AAkB/B,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,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"}
@@ -0,0 +1,3 @@
1
+ import type { NoxionLayoutProps } from "../theme/types";
2
+ export declare function BaseLayout({ slots, children, className }: NoxionLayoutProps): import("react/jsx-runtime").JSX.Element;
3
+ //# sourceMappingURL=BaseLayout.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"BaseLayout.d.ts","sourceRoot":"","sources":["../../src/layouts/BaseLayout.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,gBAAgB,CAAC;AASxD,wBAAgB,UAAU,CAAC,EAAE,KAAK,EAAE,QAAQ,EAAE,SAAS,EAAE,EAAE,iBAAiB,2CAoB3E"}
@@ -0,0 +1,11 @@
1
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
+ function renderSlot(slot) {
3
+ if (slot === null || slot === undefined)
4
+ return null;
5
+ const SlotComponent = slot;
6
+ return _jsx(SlotComponent, {});
7
+ }
8
+ export function BaseLayout({ slots, children, className }) {
9
+ return (_jsxs("div", { className: className ? `noxion-layout ${className}` : "noxion-layout", children: [slots.header !== null && (_jsx("div", { className: "noxion-layout__header", children: renderSlot(slots.header) })), slots.hero !== null && slots.hero !== undefined && (_jsx("div", { className: "noxion-layout__hero", children: renderSlot(slots.hero) })), _jsx("div", { className: "noxion-layout__content", children: children }), slots.footer !== null && (_jsx("div", { className: "noxion-layout__footer", children: renderSlot(slots.footer) }))] }));
10
+ }
11
+ //# sourceMappingURL=BaseLayout.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"BaseLayout.js","sourceRoot":"","sources":["../../src/layouts/BaseLayout.tsx"],"names":[],"mappings":";AAGA,SAAS,UAAU,CAAC,IAA2C;IAC7D,IAAI,IAAI,KAAK,IAAI,IAAI,IAAI,KAAK,SAAS;QAAE,OAAO,IAAI,CAAC;IACrD,MAAM,aAAa,GAAG,IAAI,CAAC;IAC3B,OAAO,KAAC,aAAa,KAAG,CAAC;AAC3B,CAAC;AAED,MAAM,UAAU,UAAU,CAAC,EAAE,KAAK,EAAE,QAAQ,EAAE,SAAS,EAAqB;IAC1E,OAAO,CACL,eAAK,SAAS,EAAE,SAAS,CAAC,CAAC,CAAC,iBAAiB,SAAS,EAAE,CAAC,CAAC,CAAC,eAAe,aACvE,KAAK,CAAC,MAAM,KAAK,IAAI,IAAI,CACxB,cAAK,SAAS,EAAC,uBAAuB,YAAE,UAAU,CAAC,KAAK,CAAC,MAAM,CAAC,GAAO,CACxE,EAEA,KAAK,CAAC,IAAI,KAAK,IAAI,IAAI,KAAK,CAAC,IAAI,KAAK,SAAS,IAAI,CAClD,cAAK,SAAS,EAAC,qBAAqB,YAAE,UAAU,CAAC,KAAK,CAAC,IAAI,CAAC,GAAO,CACpE,EAED,cAAK,SAAS,EAAC,wBAAwB,YACpC,QAAQ,GACL,EAEL,KAAK,CAAC,MAAM,KAAK,IAAI,IAAI,CACxB,cAAK,SAAS,EAAC,uBAAuB,YAAE,UAAU,CAAC,KAAK,CAAC,MAAM,CAAC,GAAO,CACxE,IACG,CACP,CAAC;AACJ,CAAC"}
@@ -0,0 +1,3 @@
1
+ import type { NoxionLayoutProps } from "../theme/types";
2
+ export declare function BlogLayout(props: NoxionLayoutProps): import("react/jsx-runtime").JSX.Element;
3
+ //# sourceMappingURL=BlogLayout.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"BlogLayout.d.ts","sourceRoot":"","sources":["../../src/layouts/BlogLayout.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,gBAAgB,CAAC;AAGxD,wBAAgB,UAAU,CAAC,KAAK,EAAE,iBAAiB,2CAOlD"}
@@ -0,0 +1,6 @@
1
+ import { jsx as _jsx } from "react/jsx-runtime";
2
+ import { BaseLayout } from "./BaseLayout";
3
+ export function BlogLayout(props) {
4
+ return (_jsx(BaseLayout, { ...props, className: props.className ? `noxion-layout--single-column ${props.className}` : "noxion-layout--single-column" }));
5
+ }
6
+ //# sourceMappingURL=BlogLayout.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"BlogLayout.js","sourceRoot":"","sources":["../../src/layouts/BlogLayout.tsx"],"names":[],"mappings":";AACA,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAE1C,MAAM,UAAU,UAAU,CAAC,KAAwB;IACjD,OAAO,CACL,KAAC,UAAU,OACL,KAAK,EACT,SAAS,EAAE,KAAK,CAAC,SAAS,CAAC,CAAC,CAAC,gCAAgC,KAAK,CAAC,SAAS,EAAE,CAAC,CAAC,CAAC,8BAA8B,GAC/G,CACH,CAAC;AACJ,CAAC"}
@@ -0,0 +1,3 @@
1
+ import type { NoxionLayoutProps } from "../theme/types";
2
+ export declare function DocsLayout({ slots, children, className }: NoxionLayoutProps): import("react/jsx-runtime").JSX.Element;
3
+ //# sourceMappingURL=DocsLayout.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"DocsLayout.d.ts","sourceRoot":"","sources":["../../src/layouts/DocsLayout.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,gBAAgB,CAAC;AASxD,wBAAgB,UAAU,CAAC,EAAE,KAAK,EAAE,QAAQ,EAAE,SAAS,EAAE,EAAE,iBAAiB,2CAsB3E"}
@@ -0,0 +1,11 @@
1
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
+ function renderSlot(slot) {
3
+ if (slot === null || slot === undefined)
4
+ return null;
5
+ const SlotComponent = slot;
6
+ return _jsx(SlotComponent, {});
7
+ }
8
+ export function DocsLayout({ slots, children, className }) {
9
+ return (_jsxs("div", { className: className ? `noxion-layout noxion-layout--sidebar-left ${className}` : "noxion-layout noxion-layout--sidebar-left", children: [slots.header !== null && (_jsx("div", { className: "noxion-layout__header", children: renderSlot(slots.header) })), _jsxs("div", { className: "noxion-layout__main", children: [slots.sidebar !== null && slots.sidebar !== undefined && (_jsx("aside", { className: "noxion-layout__sidebar", children: renderSlot(slots.sidebar) })), _jsx("div", { className: "noxion-layout__content", children: children })] }), slots.footer !== null && (_jsx("div", { className: "noxion-layout__footer", children: renderSlot(slots.footer) }))] }));
10
+ }
11
+ //# sourceMappingURL=DocsLayout.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"DocsLayout.js","sourceRoot":"","sources":["../../src/layouts/DocsLayout.tsx"],"names":[],"mappings":";AAGA,SAAS,UAAU,CAAC,IAA2C;IAC7D,IAAI,IAAI,KAAK,IAAI,IAAI,IAAI,KAAK,SAAS;QAAE,OAAO,IAAI,CAAC;IACrD,MAAM,aAAa,GAAG,IAAI,CAAC;IAC3B,OAAO,KAAC,aAAa,KAAG,CAAC;AAC3B,CAAC;AAED,MAAM,UAAU,UAAU,CAAC,EAAE,KAAK,EAAE,QAAQ,EAAE,SAAS,EAAqB;IAC1E,OAAO,CACL,eAAK,SAAS,EAAE,SAAS,CAAC,CAAC,CAAC,6CAA6C,SAAS,EAAE,CAAC,CAAC,CAAC,2CAA2C,aAC/H,KAAK,CAAC,MAAM,KAAK,IAAI,IAAI,CACxB,cAAK,SAAS,EAAC,uBAAuB,YAAE,UAAU,CAAC,KAAK,CAAC,MAAM,CAAC,GAAO,CACxE,EAED,eAAK,SAAS,EAAC,qBAAqB,aACjC,KAAK,CAAC,OAAO,KAAK,IAAI,IAAI,KAAK,CAAC,OAAO,KAAK,SAAS,IAAI,CACxD,gBAAO,SAAS,EAAC,wBAAwB,YAAE,UAAU,CAAC,KAAK,CAAC,OAAO,CAAC,GAAS,CAC9E,EAED,cAAK,SAAS,EAAC,wBAAwB,YACpC,QAAQ,GACL,IACF,EAEL,KAAK,CAAC,MAAM,KAAK,IAAI,IAAI,CACxB,cAAK,SAAS,EAAC,uBAAuB,YAAE,UAAU,CAAC,KAAK,CAAC,MAAM,CAAC,GAAO,CACxE,IACG,CACP,CAAC;AACJ,CAAC"}
@@ -0,0 +1,3 @@
1
+ import type { NoxionLayoutProps } from "../theme/types";
2
+ export declare function MagazineLayout({ slots, children, className }: NoxionLayoutProps): import("react/jsx-runtime").JSX.Element;
3
+ //# sourceMappingURL=MagazineLayout.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"MagazineLayout.d.ts","sourceRoot":"","sources":["../../src/layouts/MagazineLayout.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,gBAAgB,CAAC;AASxD,wBAAgB,cAAc,CAAC,EAAE,KAAK,EAAE,QAAQ,EAAE,SAAS,EAAE,EAAE,iBAAiB,2CAoB/E"}
@@ -0,0 +1,11 @@
1
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
+ function renderSlot(slot) {
3
+ if (slot === null || slot === undefined)
4
+ return null;
5
+ const SlotComponent = slot;
6
+ return _jsx(SlotComponent, {});
7
+ }
8
+ export function MagazineLayout({ slots, children, className }) {
9
+ return (_jsxs("div", { className: className ? `noxion-layout ${className}` : "noxion-layout", children: [slots.header !== null && (_jsx("div", { className: "noxion-layout__header", children: renderSlot(slots.header) })), slots.hero !== null && slots.hero !== undefined && (_jsx("div", { className: "noxion-layout__hero", children: renderSlot(slots.hero) })), _jsx("div", { className: "noxion-layout__content", children: children }), slots.footer !== null && (_jsx("div", { className: "noxion-layout__footer", children: renderSlot(slots.footer) }))] }));
10
+ }
11
+ //# sourceMappingURL=MagazineLayout.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"MagazineLayout.js","sourceRoot":"","sources":["../../src/layouts/MagazineLayout.tsx"],"names":[],"mappings":";AAGA,SAAS,UAAU,CAAC,IAA2C;IAC7D,IAAI,IAAI,KAAK,IAAI,IAAI,IAAI,KAAK,SAAS;QAAE,OAAO,IAAI,CAAC;IACrD,MAAM,aAAa,GAAG,IAAI,CAAC;IAC3B,OAAO,KAAC,aAAa,KAAG,CAAC;AAC3B,CAAC;AAED,MAAM,UAAU,cAAc,CAAC,EAAE,KAAK,EAAE,QAAQ,EAAE,SAAS,EAAqB;IAC9E,OAAO,CACL,eAAK,SAAS,EAAE,SAAS,CAAC,CAAC,CAAC,iBAAiB,SAAS,EAAE,CAAC,CAAC,CAAC,eAAe,aACvE,KAAK,CAAC,MAAM,KAAK,IAAI,IAAI,CACxB,cAAK,SAAS,EAAC,uBAAuB,YAAE,UAAU,CAAC,KAAK,CAAC,MAAM,CAAC,GAAO,CACxE,EAEA,KAAK,CAAC,IAAI,KAAK,IAAI,IAAI,KAAK,CAAC,IAAI,KAAK,SAAS,IAAI,CAClD,cAAK,SAAS,EAAC,qBAAqB,YAAE,UAAU,CAAC,KAAK,CAAC,IAAI,CAAC,GAAO,CACpE,EAED,cAAK,SAAS,EAAC,wBAAwB,YACpC,QAAQ,GACL,EAEL,KAAK,CAAC,MAAM,KAAK,IAAI,IAAI,CACxB,cAAK,SAAS,EAAC,uBAAuB,YAAE,UAAU,CAAC,KAAK,CAAC,MAAM,CAAC,GAAO,CACxE,IACG,CACP,CAAC;AACJ,CAAC"}
@@ -0,0 +1,5 @@
1
+ export { BaseLayout } from "./BaseLayout";
2
+ export { BlogLayout } from "./BlogLayout";
3
+ export { DocsLayout } from "./DocsLayout";
4
+ export { MagazineLayout } from "./MagazineLayout";
5
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/layouts/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAC1C,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAC1C,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAC1C,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC"}
@@ -0,0 +1,5 @@
1
+ export { BaseLayout } from "./BaseLayout";
2
+ export { BlogLayout } from "./BlogLayout";
3
+ export { DocsLayout } from "./DocsLayout";
4
+ export { MagazineLayout } from "./MagazineLayout";
5
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/layouts/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAC1C,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAC1C,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAC1C,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC"}
@@ -0,0 +1,3 @@
1
+ import type { NoxionTemplateProps } from "../theme/types";
2
+ export declare function ArchivePage({ data, className }: NoxionTemplateProps): import("react/jsx-runtime").JSX.Element;
3
+ //# sourceMappingURL=ArchivePage.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ArchivePage.d.ts","sourceRoot":"","sources":["../../src/templates/ArchivePage.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,gBAAgB,CAAC;AAI1D,wBAAgB,WAAW,CAAC,EAAE,IAAI,EAAE,SAAS,EAAE,EAAE,mBAAmB,2CAUnE"}
@@ -0,0 +1,8 @@
1
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
+ import { PostList } from "../components/PostList";
3
+ export function ArchivePage({ data, className }) {
4
+ const posts = (data.posts ?? []);
5
+ const title = data.title ?? "Archive";
6
+ return (_jsxs("div", { className: className ? `noxion-template-archive ${className}` : "noxion-template-archive", children: [_jsx("h1", { className: "noxion-template-archive__title", children: title }), _jsx(PostList, { posts: posts })] }));
7
+ }
8
+ //# sourceMappingURL=ArchivePage.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ArchivePage.js","sourceRoot":"","sources":["../../src/templates/ArchivePage.tsx"],"names":[],"mappings":";AAEA,OAAO,EAAE,QAAQ,EAAE,MAAM,wBAAwB,CAAC;AAElD,MAAM,UAAU,WAAW,CAAC,EAAE,IAAI,EAAE,SAAS,EAAuB;IAClE,MAAM,KAAK,GAAG,CAAC,IAAI,CAAC,KAAK,IAAI,EAAE,CAAoB,CAAC;IACpD,MAAM,KAAK,GAAI,IAAI,CAAC,KAAgB,IAAI,SAAS,CAAC;IAElD,OAAO,CACL,eAAK,SAAS,EAAE,SAAS,CAAC,CAAC,CAAC,2BAA2B,SAAS,EAAE,CAAC,CAAC,CAAC,yBAAyB,aAC5F,aAAI,SAAS,EAAC,gCAAgC,YAAE,KAAK,GAAM,EAC3D,KAAC,QAAQ,IAAC,KAAK,EAAE,KAAK,GAAI,IACtB,CACP,CAAC;AACJ,CAAC"}
@@ -0,0 +1,3 @@
1
+ import type { NoxionTemplateProps } from "../theme/types";
2
+ export declare function HomePage({ data, className }: NoxionTemplateProps): import("react/jsx-runtime").JSX.Element;
3
+ //# sourceMappingURL=HomePage.d.ts.map
@@ -0,0 +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"}
@@ -0,0 +1,7 @@
1
+ import { jsx as _jsx } from "react/jsx-runtime";
2
+ import { PostList } from "../components/PostList";
3
+ export function HomePage({ data, className }) {
4
+ const posts = (data.posts ?? []);
5
+ return (_jsx("div", { className: className ? `noxion-template-home ${className}` : "noxion-template-home", children: _jsx(PostList, { posts: posts }) }));
6
+ }
7
+ //# sourceMappingURL=HomePage.js.map
@@ -0,0 +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"}
@@ -0,0 +1,3 @@
1
+ import type { NoxionTemplateProps } from "../theme/types";
2
+ export declare function PostPage({ data, className }: NoxionTemplateProps): import("react/jsx-runtime").JSX.Element;
3
+ //# sourceMappingURL=PostPage.d.ts.map
@@ -0,0 +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"}
@@ -0,0 +1,11 @@
1
+ import { jsx as _jsx } from "react/jsx-runtime";
2
+ import { NotionPage } from "../components/NotionPage";
3
+ export function PostPage({ data, className }) {
4
+ const recordMap = data.recordMap;
5
+ const rootPageId = data.rootPageId;
6
+ if (!recordMap) {
7
+ return (_jsx("div", { className: "noxion-empty-state", children: _jsx("p", { className: "noxion-empty-state__message", children: "Post not found." }) }));
8
+ }
9
+ return (_jsx("div", { className: className ? `noxion-template-post ${className}` : "noxion-template-post", children: _jsx(NotionPage, { recordMap: recordMap, rootPageId: rootPageId }) }));
10
+ }
11
+ //# sourceMappingURL=PostPage.js.map
@@ -0,0 +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"}
@@ -0,0 +1,3 @@
1
+ import type { NoxionTemplateProps } from "../theme/types";
2
+ export declare function TagPage({ data, className }: NoxionTemplateProps): import("react/jsx-runtime").JSX.Element;
3
+ //# sourceMappingURL=TagPage.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"TagPage.d.ts","sourceRoot":"","sources":["../../src/templates/TagPage.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,gBAAgB,CAAC;AAI1D,wBAAgB,OAAO,CAAC,EAAE,IAAI,EAAE,SAAS,EAAE,EAAE,mBAAmB,2CAU/D"}
@@ -0,0 +1,8 @@
1
+ import { jsxs as _jsxs, jsx as _jsx } from "react/jsx-runtime";
2
+ import { PostList } from "../components/PostList";
3
+ export function TagPage({ data, className }) {
4
+ const posts = (data.posts ?? []);
5
+ const tag = data.tag ?? "Unknown";
6
+ return (_jsxs("div", { className: className ? `noxion-template-tag ${className}` : "noxion-template-tag", children: [_jsxs("h1", { className: "noxion-template-tag__title", children: ["#", tag] }), _jsx(PostList, { posts: posts })] }));
7
+ }
8
+ //# sourceMappingURL=TagPage.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"TagPage.js","sourceRoot":"","sources":["../../src/templates/TagPage.tsx"],"names":[],"mappings":";AAEA,OAAO,EAAE,QAAQ,EAAE,MAAM,wBAAwB,CAAC;AAElD,MAAM,UAAU,OAAO,CAAC,EAAE,IAAI,EAAE,SAAS,EAAuB;IAC9D,MAAM,KAAK,GAAG,CAAC,IAAI,CAAC,KAAK,IAAI,EAAE,CAAoB,CAAC;IACpD,MAAM,GAAG,GAAI,IAAI,CAAC,GAAc,IAAI,SAAS,CAAC;IAE9C,OAAO,CACL,eAAK,SAAS,EAAE,SAAS,CAAC,CAAC,CAAC,uBAAuB,SAAS,EAAE,CAAC,CAAC,CAAC,qBAAqB,aACpF,cAAI,SAAS,EAAC,4BAA4B,kBAAG,GAAG,IAAM,EACtD,KAAC,QAAQ,IAAC,KAAK,EAAE,KAAK,GAAI,IACtB,CACP,CAAC;AACJ,CAAC"}
@@ -0,0 +1,5 @@
1
+ export { HomePage } from "./HomePage";
2
+ export { PostPage } from "./PostPage";
3
+ export { ArchivePage } from "./ArchivePage";
4
+ export { TagPage } from "./TagPage";
5
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +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"}
@@ -0,0 +1,5 @@
1
+ export { HomePage } from "./HomePage";
2
+ export { PostPage } from "./PostPage";
3
+ export { ArchivePage } from "./ArchivePage";
4
+ export { TagPage } from "./TagPage";
5
+ //# sourceMappingURL=index.js.map
@@ -0,0 +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,14 +1,21 @@
1
1
  import React from "react";
2
- import type { NoxionTheme, ComponentOverrides, NoxionLayout } from "./types";
2
+ import type { NoxionTheme, NoxionThemeTokens, NoxionThemePackage, ComponentOverrides, NoxionLayout, NoxionSlotMap, NoxionTemplateMap, NoxionTemplateProps } from "./types";
3
+ import type { ComponentType } from "react";
3
4
  export interface NoxionThemeProviderProps {
4
5
  theme?: NoxionTheme;
6
+ themePackage?: NoxionThemePackage;
5
7
  components?: ComponentOverrides;
6
8
  defaultComponents?: ComponentOverrides;
7
9
  layout?: NoxionLayout;
10
+ slots?: Partial<NoxionSlotMap>;
11
+ templates?: Partial<NoxionTemplateMap>;
8
12
  children: React.ReactNode;
9
13
  }
10
- export declare function NoxionThemeProvider({ theme, components: overrides, defaultComponents, layout, children, }: NoxionThemeProviderProps): import("react/jsx-runtime").JSX.Element;
14
+ export declare function NoxionThemeProvider({ theme, themePackage, components: overrides, defaultComponents, layout, slots: slotOverrides, templates: templateOverrides, children, }: NoxionThemeProviderProps): import("react/jsx-runtime").JSX.Element;
11
15
  export declare function useNoxionTheme(): NoxionTheme;
16
+ export declare function useNoxionTokens(): NoxionThemeTokens;
12
17
  export declare function useNoxionComponents(): ComponentOverrides;
13
18
  export declare function useNoxionLayout(): NoxionLayout;
19
+ export declare function useNoxionSlots(): Partial<NoxionSlotMap>;
20
+ export declare function useNoxionTemplate(pageType: string): ComponentType<NoxionTemplateProps> | undefined;
14
21
  //# sourceMappingURL=ThemeProvider.d.ts.map
@@ -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,EAAE,WAAW,EAAE,kBAAkB,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AAiB7E,MAAM,WAAW,wBAAwB;IACvC,KAAK,CAAC,EAAE,WAAW,CAAC;IACpB,UAAU,CAAC,EAAE,kBAAkB,CAAC;IAChC,iBAAiB,CAAC,EAAE,kBAAkB,CAAC;IACvC,MAAM,CAAC,EAAE,YAAY,CAAC;IACtB,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAC;CAC3B;AAED,wBAAgB,mBAAmB,CAAC,EAClC,KAAoB,EACpB,UAAU,EAAE,SAAc,EAC1B,iBAAsB,EACtB,MAAwB,EACxB,QAAQ,GACT,EAAE,wBAAwB,2CAsB1B;AAED,wBAAgB,cAAc,IAAI,WAAW,CAE5C;AAED,wBAAgB,mBAAmB,IAAI,kBAAkB,CAExD;AAED,wBAAgB,eAAe,IAAI,YAAY,CAE9C"}
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"}
@@ -2,30 +2,70 @@
2
2
  import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
3
3
  import { createContext, useContext, useMemo } from "react";
4
4
  import { defaultTheme } from "./define-theme";
5
- import { generateCSSVariables } from "./css-generator";
5
+ import { generateCSSVariables, generateThemeStylesheet } from "./css-generator";
6
6
  import { resolveComponents } from "./component-resolver";
7
+ import { resolveSlots } from "./slot-resolver";
8
+ import { resolveTemplate } from "./template-resolver";
7
9
  const ThemeContext = createContext({
8
10
  theme: defaultTheme,
11
+ tokens: defaultTheme,
9
12
  components: {},
10
13
  layout: "single-column",
14
+ slots: {},
15
+ templates: {},
11
16
  });
12
- export function NoxionThemeProvider({ theme = defaultTheme, components: overrides = {}, defaultComponents = {}, layout = "single-column", children, }) {
13
- const cssVariables = useMemo(() => generateCSSVariables(theme), [theme]);
14
- const resolvedComponents = useMemo(() => resolveComponents(defaultComponents, overrides), [defaultComponents, overrides]);
17
+ export function NoxionThemeProvider({ theme, themePackage, components: overrides = {}, defaultComponents = {}, layout = "single-column", slots: slotOverrides = {}, templates: templateOverrides = {}, children, }) {
18
+ const resolvedTheme = theme ?? themePackage?.tokens ?? defaultTheme;
19
+ const cssVariables = useMemo(() => {
20
+ if (themePackage) {
21
+ return generateThemeStylesheet(themePackage);
22
+ }
23
+ return generateCSSVariables(resolvedTheme);
24
+ }, [themePackage, resolvedTheme]);
25
+ const resolvedComponents = useMemo(() => {
26
+ const pkgComponents = themePackage?.components ?? {};
27
+ const merged = resolveComponents(resolveComponents(defaultComponents, pkgComponents), overrides);
28
+ return merged;
29
+ }, [defaultComponents, themePackage?.components, overrides]);
30
+ const resolvedSlots = useMemo(() => {
31
+ return resolveSlots({}, slotOverrides);
32
+ }, [slotOverrides]);
33
+ const resolvedTemplates = useMemo(() => {
34
+ const pkgTemplates = themePackage?.templates ?? {};
35
+ return { ...pkgTemplates, ...templateOverrides };
36
+ }, [themePackage?.templates, templateOverrides]);
37
+ const tokens = useMemo(() => {
38
+ if (themePackage)
39
+ return themePackage.tokens;
40
+ return resolvedTheme;
41
+ }, [themePackage, resolvedTheme]);
15
42
  const contextValue = useMemo(() => ({
16
- theme,
43
+ theme: resolvedTheme,
44
+ tokens,
17
45
  components: resolvedComponents,
18
46
  layout,
19
- }), [theme, resolvedComponents, layout]);
47
+ slots: resolvedSlots,
48
+ templates: resolvedTemplates,
49
+ }), [resolvedTheme, tokens, resolvedComponents, layout, resolvedSlots, resolvedTemplates]);
20
50
  return (_jsxs(ThemeContext.Provider, { value: contextValue, children: [_jsx("style", { dangerouslySetInnerHTML: { __html: cssVariables } }), children] }));
21
51
  }
22
52
  export function useNoxionTheme() {
23
53
  return useContext(ThemeContext).theme;
24
54
  }
55
+ export function useNoxionTokens() {
56
+ return useContext(ThemeContext).tokens;
57
+ }
25
58
  export function useNoxionComponents() {
26
59
  return useContext(ThemeContext).components;
27
60
  }
28
61
  export function useNoxionLayout() {
29
62
  return useContext(ThemeContext).layout;
30
63
  }
64
+ export function useNoxionSlots() {
65
+ return useContext(ThemeContext).slots;
66
+ }
67
+ export function useNoxionTemplate(pageType) {
68
+ const { templates } = useContext(ThemeContext);
69
+ return resolveTemplate(templates, pageType);
70
+ }
31
71
  //# sourceMappingURL=ThemeProvider.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"ThemeProvider.js","sourceRoot":"","sources":["../../src/theme/ThemeProvider.tsx"],"names":[],"mappings":"AAAA,YAAY,CAAC;;AAEb,OAAc,EAAE,aAAa,EAAE,UAAU,EAAE,OAAO,EAAE,MAAM,OAAO,CAAC;AAElE,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAC9C,OAAO,EAAE,oBAAoB,EAAE,MAAM,iBAAiB,CAAC;AACvD,OAAO,EAAE,iBAAiB,EAAE,MAAM,sBAAsB,CAAC;AAQzD,MAAM,YAAY,GAAG,aAAa,CAAoB;IACpD,KAAK,EAAE,YAAY;IACnB,UAAU,EAAE,EAAE;IACd,MAAM,EAAE,eAAe;CACxB,CAAC,CAAC;AAUH,MAAM,UAAU,mBAAmB,CAAC,EAClC,KAAK,GAAG,YAAY,EACpB,UAAU,EAAE,SAAS,GAAG,EAAE,EAC1B,iBAAiB,GAAG,EAAE,EACtB,MAAM,GAAG,eAAe,EACxB,QAAQ,GACiB;IACzB,MAAM,YAAY,GAAG,OAAO,CAAC,GAAG,EAAE,CAAC,oBAAoB,CAAC,KAAK,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC;IACzE,MAAM,kBAAkB,GAAG,OAAO,CAChC,GAAG,EAAE,CAAC,iBAAiB,CAAC,iBAAiB,EAAE,SAAS,CAAC,EACrD,CAAC,iBAAiB,EAAE,SAAS,CAAC,CAC/B,CAAC;IAEF,MAAM,YAAY,GAAG,OAAO,CAC1B,GAAG,EAAE,CAAC,CAAC;QACL,KAAK;QACL,UAAU,EAAE,kBAAkB;QAC9B,MAAM;KACP,CAAC,EACF,CAAC,KAAK,EAAE,kBAAkB,EAAE,MAAM,CAAC,CACpC,CAAC;IAEF,OAAO,CACL,MAAC,YAAY,CAAC,QAAQ,IAAC,KAAK,EAAE,YAAY,aACxC,gBAAO,uBAAuB,EAAE,EAAE,MAAM,EAAE,YAAY,EAAE,GAAI,EAC3D,QAAQ,IACa,CACzB,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,cAAc;IAC5B,OAAO,UAAU,CAAC,YAAY,CAAC,CAAC,KAAK,CAAC;AACxC,CAAC;AAED,MAAM,UAAU,mBAAmB;IACjC,OAAO,UAAU,CAAC,YAAY,CAAC,CAAC,UAAU,CAAC;AAC7C,CAAC;AAED,MAAM,UAAU,eAAe;IAC7B,OAAO,UAAU,CAAC,YAAY,CAAC,CAAC,MAAM,CAAC;AACzC,CAAC"}
1
+ {"version":3,"file":"ThemeProvider.js","sourceRoot":"","sources":["../../src/theme/ThemeProvider.tsx"],"names":[],"mappings":"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"}
@@ -1,3 +1,4 @@
1
- import type { NoxionTheme } from "./types";
1
+ import type { NoxionTheme, NoxionThemePackage } from "./types";
2
2
  export declare function generateCSSVariables(theme: NoxionTheme): string;
3
+ export declare function generateThemeStylesheet(themePackage: NoxionThemePackage): string;
3
4
  //# sourceMappingURL=css-generator.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"css-generator.d.ts","sourceRoot":"","sources":["../../src/theme/css-generator.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,SAAS,CAAC;AAE3C,wBAAgB,oBAAoB,CAAC,KAAK,EAAE,WAAW,GAAG,MAAM,CAc/D"}
1
+ {"version":3,"file":"css-generator.d.ts","sourceRoot":"","sources":["../../src/theme/css-generator.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAqB,kBAAkB,EAAE,MAAM,SAAS,CAAC;AAElF,wBAAgB,oBAAoB,CAAC,KAAK,EAAE,WAAW,GAAG,MAAM,CAc/D;AAED,wBAAgB,uBAAuB,CAAC,YAAY,EAAE,kBAAkB,GAAG,MAAM,CAgBhF"}
@@ -11,6 +11,21 @@ export function generateCSSVariables(theme) {
11
11
  }
12
12
  return css;
13
13
  }
14
+ export function generateThemeStylesheet(themePackage) {
15
+ const tokens = themePackage.tokens;
16
+ const lightVars = buildTokenVariables(tokens);
17
+ let css = `:root {\n${lightVars}}\n`;
18
+ if (tokens.dark) {
19
+ const darkTokens = {
20
+ ...tokens,
21
+ ...tokens.dark,
22
+ name: tokens.name,
23
+ };
24
+ const darkVars = buildTokenVariables(darkTokens);
25
+ css += `\n[data-theme="dark"] {\n${darkVars}}\n`;
26
+ }
27
+ return css;
28
+ }
14
29
  function buildVariables(theme) {
15
30
  const lines = [];
16
31
  for (const [key, value] of Object.entries(theme.colors)) {
@@ -33,4 +48,33 @@ function buildVariables(theme) {
33
48
  }
34
49
  return lines.join("\n") + "\n";
35
50
  }
51
+ function buildTokenVariables(tokens) {
52
+ let result = buildVariables(tokens);
53
+ const lines = [];
54
+ if (tokens.shadows) {
55
+ for (const [key, value] of Object.entries(tokens.shadows)) {
56
+ if (value) {
57
+ lines.push(` --noxion-shadow-${key}: ${value};`);
58
+ }
59
+ }
60
+ }
61
+ if (tokens.transitions) {
62
+ for (const [key, value] of Object.entries(tokens.transitions)) {
63
+ if (value) {
64
+ lines.push(` --noxion-transition-${key}: ${value};`);
65
+ }
66
+ }
67
+ }
68
+ if (tokens.breakpoints) {
69
+ for (const [key, value] of Object.entries(tokens.breakpoints)) {
70
+ if (value) {
71
+ lines.push(` --noxion-breakpoint-${key}: ${value};`);
72
+ }
73
+ }
74
+ }
75
+ if (lines.length > 0) {
76
+ result = result.trimEnd() + "\n" + lines.join("\n") + "\n";
77
+ }
78
+ return result;
79
+ }
36
80
  //# sourceMappingURL=css-generator.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"css-generator.js","sourceRoot":"","sources":["../../src/theme/css-generator.ts"],"names":[],"mappings":"AAEA,MAAM,UAAU,oBAAoB,CAAC,KAAkB;IACrD,MAAM,SAAS,GAAG,cAAc,CAAC,KAAK,CAAC,CAAC;IACxC,IAAI,GAAG,GAAG,YAAY,SAAS,KAAK,CAAC;IAErC,IAAI,KAAK,CAAC,IAAI,EAAE,CAAC;QACf,MAAM,QAAQ,GAAG,cAAc,CAAC;YAC9B,GAAG,KAAK;YACR,GAAG,KAAK,CAAC,IAAI;YACb,IAAI,EAAE,KAAK,CAAC,IAAI;SACF,CAAC,CAAC;QAClB,GAAG,IAAI,4BAA4B,QAAQ,KAAK,CAAC;IACnD,CAAC;IAED,OAAO,GAAG,CAAC;AACb,CAAC;AAED,SAAS,cAAc,CAAC,KAAkB;IACxC,MAAM,KAAK,GAAa,EAAE,CAAC;IAE3B,KAAK,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,MAAM,CAAC,EAAE,CAAC;QACxD,KAAK,CAAC,IAAI,CAAC,cAAc,GAAG,KAAK,KAAK,GAAG,CAAC,CAAC;IAC7C,CAAC;IAED,IAAI,KAAK,CAAC,KAAK,EAAE,CAAC;QAChB,KAAK,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,EAAE,CAAC;YACvD,IAAI,KAAK,EAAE,CAAC;gBACV,KAAK,CAAC,IAAI,CAAC,mBAAmB,GAAG,KAAK,KAAK,GAAG,CAAC,CAAC;YAClD,CAAC;QACH,CAAC;IACH,CAAC;IAED,IAAI,KAAK,CAAC,OAAO,EAAE,CAAC;QAClB,KAAK,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,OAAO,CAAC,EAAE,CAAC;YACzD,KAAK,CAAC,IAAI,CAAC,sBAAsB,GAAG,KAAK,KAAK,GAAG,CAAC,CAAC;QACrD,CAAC;IACH,CAAC;IAED,IAAI,KAAK,CAAC,YAAY,EAAE,CAAC;QACvB,KAAK,CAAC,IAAI,CAAC,6BAA6B,KAAK,CAAC,YAAY,GAAG,CAAC,CAAC;IACjE,CAAC;IAED,OAAO,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC;AACjC,CAAC"}
1
+ {"version":3,"file":"css-generator.js","sourceRoot":"","sources":["../../src/theme/css-generator.ts"],"names":[],"mappings":"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"}