@noxion/renderer 0.1.1 → 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 (82) 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/FeaturedPostCard.d.ts +5 -0
  10. package/dist/components/FeaturedPostCard.d.ts.map +1 -0
  11. package/dist/components/FeaturedPostCard.js +19 -0
  12. package/dist/components/FeaturedPostCard.js.map +1 -0
  13. package/dist/components/Header.d.ts +1 -1
  14. package/dist/components/Header.d.ts.map +1 -1
  15. package/dist/components/Header.js +2 -2
  16. package/dist/components/Header.js.map +1 -1
  17. package/dist/components/HeroSection.d.ts +7 -0
  18. package/dist/components/HeroSection.d.ts.map +1 -0
  19. package/dist/components/HeroSection.js +16 -0
  20. package/dist/components/HeroSection.js.map +1 -0
  21. package/dist/components/NoxionLogo.d.ts +5 -0
  22. package/dist/components/NoxionLogo.d.ts.map +1 -0
  23. package/dist/components/NoxionLogo.js +7 -0
  24. package/dist/components/NoxionLogo.js.map +1 -0
  25. package/dist/components/PortfolioFilter.d.ts +5 -0
  26. package/dist/components/PortfolioFilter.d.ts.map +1 -0
  27. package/dist/components/PortfolioFilter.js +20 -0
  28. package/dist/components/PortfolioFilter.js.map +1 -0
  29. package/dist/components/PortfolioProjectCard.d.ts +5 -0
  30. package/dist/components/PortfolioProjectCard.d.ts.map +1 -0
  31. package/dist/components/PortfolioProjectCard.js +13 -0
  32. package/dist/components/PortfolioProjectCard.js.map +1 -0
  33. package/dist/components/PostCard.d.ts.map +1 -1
  34. package/dist/components/PostCard.js +12 -3
  35. package/dist/components/PostCard.js.map +1 -1
  36. package/dist/index.d.ts +14 -2
  37. package/dist/index.d.ts.map +1 -1
  38. package/dist/index.js +10 -1
  39. package/dist/index.js.map +1 -1
  40. package/dist/templates/DocsPage.d.ts +3 -0
  41. package/dist/templates/DocsPage.d.ts.map +1 -0
  42. package/dist/templates/DocsPage.js +13 -0
  43. package/dist/templates/DocsPage.js.map +1 -0
  44. package/dist/templates/HomePage.d.ts.map +1 -1
  45. package/dist/templates/HomePage.js +11 -2
  46. package/dist/templates/HomePage.js.map +1 -1
  47. package/dist/templates/PortfolioGrid.d.ts +3 -0
  48. package/dist/templates/PortfolioGrid.d.ts.map +1 -0
  49. package/dist/templates/PortfolioGrid.js +10 -0
  50. package/dist/templates/PortfolioGrid.js.map +1 -0
  51. package/dist/templates/PortfolioProject.d.ts +3 -0
  52. package/dist/templates/PortfolioProject.d.ts.map +1 -0
  53. package/dist/templates/PortfolioProject.js +12 -0
  54. package/dist/templates/PortfolioProject.js.map +1 -0
  55. package/dist/templates/PostPage.d.ts +10 -0
  56. package/dist/templates/PostPage.d.ts.map +1 -1
  57. package/dist/templates/PostPage.js +24 -2
  58. package/dist/templates/PostPage.js.map +1 -1
  59. package/dist/templates/index.d.ts +3 -0
  60. package/dist/templates/index.d.ts.map +1 -1
  61. package/dist/templates/index.js +3 -0
  62. package/dist/templates/index.js.map +1 -1
  63. package/dist/theme/ThemeProvider.d.ts.map +1 -1
  64. package/dist/theme/ThemeProvider.js +1 -1
  65. package/dist/theme/ThemeProvider.js.map +1 -1
  66. package/dist/theme/define-theme.js +1 -1
  67. package/dist/theme/define-theme.js.map +1 -1
  68. package/dist/theme/extend-theme.d.ts +27 -0
  69. package/dist/theme/extend-theme.d.ts.map +1 -0
  70. package/dist/theme/extend-theme.js +102 -0
  71. package/dist/theme/extend-theme.js.map +1 -0
  72. package/dist/theme/template-resolver.d.ts.map +1 -1
  73. package/dist/theme/template-resolver.js +35 -1
  74. package/dist/theme/template-resolver.js.map +1 -1
  75. package/dist/theme/types.d.ts +55 -0
  76. package/dist/theme/types.d.ts.map +1 -1
  77. package/dist/theme/validate-theme.d.ts +14 -0
  78. package/dist/theme/validate-theme.d.ts.map +1 -0
  79. package/dist/theme/validate-theme.js +235 -0
  80. package/dist/theme/validate-theme.js.map +1 -0
  81. package/package.json +1 -1
  82. package/src/styles/noxion.css +1337 -261
@@ -0,0 +1,235 @@
1
+ const REQUIRED_COLOR_KEYS = [
2
+ "primary",
3
+ "primaryForeground",
4
+ "background",
5
+ "foreground",
6
+ "muted",
7
+ "mutedForeground",
8
+ "border",
9
+ "accent",
10
+ "accentForeground",
11
+ "card",
12
+ "cardForeground",
13
+ ];
14
+ const KNOWN_SUPPORTS = ["blog", "docs", "portfolio"];
15
+ const SUPPORTS_TEMPLATE_MAP = {
16
+ blog: ["home", "post", "archive", "tag"],
17
+ docs: ["docs"],
18
+ portfolio: ["portfolio-grid", "portfolio-project"],
19
+ };
20
+ function issue(severity, path, message) {
21
+ return { severity, path, message };
22
+ }
23
+ function validateName(pkg, issues) {
24
+ if (!pkg.name || typeof pkg.name !== "string") {
25
+ issues.push(issue("error", "name", "Theme name is required and must be a non-empty string."));
26
+ }
27
+ else if (!/^[a-z][a-z0-9-]*$/.test(pkg.name)) {
28
+ issues.push(issue("warning", "name", `Theme name "${pkg.name}" should be lowercase kebab-case (e.g. "my-theme").`));
29
+ }
30
+ }
31
+ function validateColors(tokens, prefix, issues) {
32
+ if (!tokens.colors || typeof tokens.colors !== "object") {
33
+ issues.push(issue("error", `${prefix}.colors`, "Token colors object is required."));
34
+ return;
35
+ }
36
+ for (const key of REQUIRED_COLOR_KEYS) {
37
+ const value = tokens.colors[key];
38
+ if (!value || typeof value !== "string") {
39
+ issues.push(issue("error", `${prefix}.colors.${key}`, `Required color "${key}" is missing or not a string.`));
40
+ }
41
+ else if (!isValidCSSColor(value)) {
42
+ issues.push(issue("warning", `${prefix}.colors.${key}`, `Color "${key}" value "${value}" may not be a valid CSS color.`));
43
+ }
44
+ }
45
+ }
46
+ function validateFonts(tokens, prefix, issues) {
47
+ if (!tokens.fonts)
48
+ return;
49
+ if (typeof tokens.fonts !== "object") {
50
+ issues.push(issue("error", `${prefix}.fonts`, "Fonts must be an object."));
51
+ return;
52
+ }
53
+ for (const [key, value] of Object.entries(tokens.fonts)) {
54
+ if (value !== undefined && typeof value !== "string") {
55
+ issues.push(issue("error", `${prefix}.fonts.${key}`, `Font "${key}" must be a string.`));
56
+ }
57
+ }
58
+ }
59
+ function validateSpacing(tokens, prefix, issues) {
60
+ if (!tokens.spacing) {
61
+ issues.push(issue("warning", `${prefix}.spacing`, "Spacing tokens are recommended (content, sidebar widths)."));
62
+ return;
63
+ }
64
+ if (typeof tokens.spacing !== "object") {
65
+ issues.push(issue("error", `${prefix}.spacing`, "Spacing must be an object."));
66
+ return;
67
+ }
68
+ if (!tokens.spacing.content) {
69
+ issues.push(issue("warning", `${prefix}.spacing.content`, "Content width spacing is recommended."));
70
+ }
71
+ }
72
+ function validateShadows(tokens, prefix, issues) {
73
+ if (!tokens.shadows)
74
+ return;
75
+ if (typeof tokens.shadows !== "object") {
76
+ issues.push(issue("error", `${prefix}.shadows`, "Shadows must be an object."));
77
+ }
78
+ }
79
+ function validateTransitions(tokens, prefix, issues) {
80
+ if (!tokens.transitions)
81
+ return;
82
+ if (typeof tokens.transitions !== "object") {
83
+ issues.push(issue("error", `${prefix}.transitions`, "Transitions must be an object."));
84
+ }
85
+ }
86
+ function validateBreakpoints(tokens, prefix, issues) {
87
+ if (!tokens.breakpoints)
88
+ return;
89
+ if (typeof tokens.breakpoints !== "object") {
90
+ issues.push(issue("error", `${prefix}.breakpoints`, "Breakpoints must be an object."));
91
+ }
92
+ }
93
+ function validateTokens(tokens, issues) {
94
+ if (!tokens || typeof tokens !== "object") {
95
+ issues.push(issue("error", "tokens", "Tokens object is required."));
96
+ return;
97
+ }
98
+ if (!tokens.name || typeof tokens.name !== "string") {
99
+ issues.push(issue("error", "tokens.name", "Token name is required."));
100
+ }
101
+ validateColors(tokens, "tokens", issues);
102
+ validateFonts(tokens, "tokens", issues);
103
+ validateSpacing(tokens, "tokens", issues);
104
+ validateShadows(tokens, "tokens", issues);
105
+ validateTransitions(tokens, "tokens", issues);
106
+ validateBreakpoints(tokens, "tokens", issues);
107
+ if (tokens.dark) {
108
+ if (tokens.dark.colors) {
109
+ validateColors(tokens.dark, "tokens.dark", issues);
110
+ }
111
+ else {
112
+ issues.push(issue("warning", "tokens.dark.colors", "Dark mode declared but no dark colors provided."));
113
+ }
114
+ }
115
+ else {
116
+ issues.push(issue("warning", "tokens.dark", "No dark mode tokens. Dark mode will fall back to light colors."));
117
+ }
118
+ }
119
+ function validateLayouts(pkg, issues) {
120
+ if (!pkg.layouts || typeof pkg.layouts !== "object") {
121
+ issues.push(issue("error", "layouts", "Layouts object is required."));
122
+ return;
123
+ }
124
+ const layoutKeys = Object.keys(pkg.layouts);
125
+ if (layoutKeys.length === 0) {
126
+ issues.push(issue("error", "layouts", "At least one layout is required."));
127
+ return;
128
+ }
129
+ if (!pkg.layouts["base"] && !pkg.layouts["blog"]) {
130
+ issues.push(issue("warning", "layouts", 'No "base" or "blog" layout found. Most themes provide at least one.'));
131
+ }
132
+ for (const [key, value] of Object.entries(pkg.layouts)) {
133
+ if (typeof value !== "function") {
134
+ issues.push(issue("error", `layouts.${key}`, `Layout "${key}" must be a React component (function).`));
135
+ }
136
+ }
137
+ }
138
+ function validateTemplates(pkg, issues) {
139
+ if (!pkg.templates || typeof pkg.templates !== "object") {
140
+ issues.push(issue("warning", "templates", "Templates object is recommended."));
141
+ return;
142
+ }
143
+ for (const [key, value] of Object.entries(pkg.templates)) {
144
+ if (value !== undefined && typeof value !== "function") {
145
+ issues.push(issue("error", `templates.${key}`, `Template "${key}" must be a React component (function).`));
146
+ }
147
+ }
148
+ }
149
+ function validateSupportsConsistency(pkg, issues) {
150
+ if (!pkg.supports || !Array.isArray(pkg.supports))
151
+ return;
152
+ for (const pageType of pkg.supports) {
153
+ if (!KNOWN_SUPPORTS.includes(pageType)) {
154
+ issues.push(issue("warning", `supports`, `Unknown page type "${pageType}". Known types: ${KNOWN_SUPPORTS.join(", ")}.`));
155
+ continue;
156
+ }
157
+ const expectedTemplates = SUPPORTS_TEMPLATE_MAP[pageType];
158
+ if (!expectedTemplates)
159
+ continue;
160
+ const templateKeys = Object.keys(pkg.templates ?? {});
161
+ const missing = expectedTemplates.filter((t) => !templateKeys.includes(t));
162
+ if (missing.length > 0) {
163
+ issues.push(issue("warning", `supports → templates`, `Theme declares support for "${pageType}" but missing templates: ${missing.join(", ")}.`));
164
+ }
165
+ }
166
+ }
167
+ function validateComponents(pkg, issues) {
168
+ if (!pkg.components || typeof pkg.components !== "object")
169
+ return;
170
+ for (const [key, value] of Object.entries(pkg.components)) {
171
+ if (value !== undefined && typeof value !== "function" && typeof value !== "object") {
172
+ issues.push(issue("error", `components.${key}`, `Component override "${key}" must be a React component or record.`));
173
+ }
174
+ }
175
+ }
176
+ function validateMetadata(pkg, issues) {
177
+ if (!pkg.metadata) {
178
+ issues.push(issue("warning", "metadata", "Theme metadata (description, author, version) is recommended."));
179
+ return;
180
+ }
181
+ if (!pkg.metadata.description) {
182
+ issues.push(issue("warning", "metadata.description", "Theme description is recommended."));
183
+ }
184
+ if (!pkg.metadata.version) {
185
+ issues.push(issue("warning", "metadata.version", "Theme version is recommended for tracking."));
186
+ }
187
+ }
188
+ function isValidCSSColor(value) {
189
+ if (value.startsWith("#")) {
190
+ return /^#([0-9a-fA-F]{3}|[0-9a-fA-F]{4}|[0-9a-fA-F]{6}|[0-9a-fA-F]{8})$/.test(value);
191
+ }
192
+ if (/^(rgb|hsl|oklch|oklab|lab|lch|hwb|color)\(/.test(value)) {
193
+ return true;
194
+ }
195
+ if (/^[a-z]+$/i.test(value)) {
196
+ return true;
197
+ }
198
+ return false;
199
+ }
200
+ export function validateTheme(pkg) {
201
+ const issues = [];
202
+ validateName(pkg, issues);
203
+ validateTokens(pkg.tokens, issues);
204
+ validateLayouts(pkg, issues);
205
+ validateTemplates(pkg, issues);
206
+ validateSupportsConsistency(pkg, issues);
207
+ validateComponents(pkg, issues);
208
+ validateMetadata(pkg, issues);
209
+ const hasErrors = issues.some((i) => i.severity === "error");
210
+ return { valid: !hasErrors, issues };
211
+ }
212
+ export function formatValidationResult(result) {
213
+ if (result.issues.length === 0) {
214
+ return "✓ Theme is valid. No issues found.";
215
+ }
216
+ const errors = result.issues.filter((i) => i.severity === "error");
217
+ const warnings = result.issues.filter((i) => i.severity === "warning");
218
+ const lines = [];
219
+ if (errors.length > 0) {
220
+ lines.push(`✗ ${errors.length} error(s):`);
221
+ for (const e of errors) {
222
+ lines.push(` ERROR [${e.path}] ${e.message}`);
223
+ }
224
+ }
225
+ if (warnings.length > 0) {
226
+ lines.push(`⚠ ${warnings.length} warning(s):`);
227
+ for (const w of warnings) {
228
+ lines.push(` WARN [${w.path}] ${w.message}`);
229
+ }
230
+ }
231
+ lines.push("");
232
+ lines.push(result.valid ? "✓ Theme is valid (warnings only)." : "✗ Theme is invalid. Fix errors above.");
233
+ return lines.join("\n");
234
+ }
235
+ //# sourceMappingURL=validate-theme.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"validate-theme.js","sourceRoot":"","sources":["../../src/theme/validate-theme.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@noxion/renderer",
3
- "version": "0.1.1",
3
+ "version": "0.2.0",
4
4
  "description": "React rendering components and theme system for Noxion",
5
5
  "license": "MIT",
6
6
  "type": "module",