olova 2.0.49 → 2.0.50

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.
@@ -1,307 +1,24 @@
1
1
  import fs from 'fs';
2
2
  import path from 'path';
3
- import { pathToFileURL } from 'url';
4
- import { createRequire } from 'module';
5
3
  import { initCacheDir, generatePrerenderManifest } from './cache.js';
6
- import { detectTailwindConfig, detectPostCSSConfig, createDefaultPostCSSConfig, collectCSSFiles, getCSSForBuild, logCSSStatus, } from './css.js';
7
- // HTML Minification options
8
- const HTML_MINIFY_OPTIONS = {
9
- collapseWhitespace: true,
10
- removeComments: true,
11
- removeRedundantAttributes: true,
12
- removeScriptTypeAttributes: true,
13
- removeStyleLinkTypeAttributes: true,
14
- useShortDoctype: true,
15
- minifyCSS: true,
16
- minifyJS: true,
17
- sortAttributes: true,
18
- sortClassName: true,
19
- };
20
- // Load user configuration from olova.config.ts
21
- let userConfig = {};
22
- async function loadOlovaConfig() {
23
- const configPath = path.resolve(process.cwd(), 'olova.config.ts');
24
- if (!fs.existsSync(configPath)) {
25
- console.log(' ⚠ No olova.config.ts found, using defaults');
26
- return {};
27
- }
28
- try {
29
- const require = createRequire(import.meta.url);
30
- const esbuild = require('esbuild');
31
- const result = await esbuild.build({
32
- entryPoints: [configPath],
33
- bundle: true,
34
- platform: 'node',
35
- format: 'cjs',
36
- write: false,
37
- external: [
38
- 'vite',
39
- 'esbuild',
40
- 'util', 'path', 'fs', 'url', 'os', 'crypto', 'stream', 'events',
41
- 'buffer', 'querystring', 'http', 'https', 'net', 'tls', 'child_process',
42
- 'cluster', 'dgram', 'dns', 'domain', 'readline', 'repl', 'tty', 'v8',
43
- 'vm', 'zlib', 'assert', 'async_hooks', 'console', 'constants', 'module',
44
- 'perf_hooks', 'process', 'string_decoder', 'timers', 'trace_events',
45
- 'worker_threads',
46
- ],
47
- });
48
- const code = result.outputFiles[0].text;
49
- const tempPath = path.resolve(process.cwd(), '.olova/temp-config.cjs');
50
- const olovaDir = path.resolve(process.cwd(), '.olova');
51
- if (!fs.existsSync(olovaDir)) {
52
- fs.mkdirSync(olovaDir, { recursive: true });
53
- }
54
- fs.writeFileSync(tempPath, code);
55
- const mod = await import(pathToFileURL(tempPath).href);
56
- fs.unlinkSync(tempPath);
57
- const config = mod.default?.default || mod.default || {};
58
- return config;
59
- }
60
- catch (err) {
61
- console.error(' ⚠ Failed to load olova.config.ts:', err.message);
62
- return {};
63
- }
64
- }
65
- function getConfig() {
66
- return {
67
- outDir: '.olova/dist',
68
- basePath: '/',
69
- trailingSlash: false,
70
- experimental: {
71
- prefetch: true,
72
- ...userConfig.experimental,
73
- },
74
- staticGeneration: {
75
- timeout: 30000,
76
- fallback: 'blocking',
77
- ...userConfig.staticGeneration,
78
- },
79
- ...userConfig,
80
- };
81
- }
82
- function generateHtmlTemplate(content, scriptPath, cssLinks = [], pageData, metadata, flightPayload) {
83
- let metaTags = '';
84
- if (metadata) {
85
- if (metadata.description) {
86
- metaTags += ` <meta name="description" content="${metadata.description}" />\n`;
87
- }
88
- if (metadata.keywords) {
89
- metaTags += ` <meta name="keywords" content="${metadata.keywords}" />\n`;
90
- }
91
- if (metadata.author) {
92
- metaTags += ` <meta name="author" content="${metadata.author}" />\n`;
93
- }
94
- if (metadata.robots) {
95
- metaTags += ` <meta name="robots" content="${metadata.robots}" />\n`;
96
- }
97
- if (metadata.canonical) {
98
- metaTags += ` <link rel="canonical" href="${metadata.canonical}" />\n`;
99
- }
100
- if (metadata.openGraph) {
101
- const og = metadata.openGraph;
102
- if (og.title)
103
- metaTags += ` <meta property="og:title" content="${og.title}" />\n`;
104
- if (og.description)
105
- metaTags += ` <meta property="og:description" content="${og.description}" />\n`;
106
- if (og.type)
107
- metaTags += ` <meta property="og:type" content="${og.type}" />\n`;
108
- if (og.url)
109
- metaTags += ` <meta property="og:url" content="${og.url}" />\n`;
110
- if (og.image)
111
- metaTags += ` <meta property="og:image" content="${og.image}" />\n`;
112
- }
113
- if (metadata.twitter) {
114
- const tw = metadata.twitter;
115
- if (tw.card)
116
- metaTags += ` <meta name="twitter:card" content="${tw.card}" />\n`;
117
- if (tw.site)
118
- metaTags += ` <meta name="twitter:site" content="${tw.site}" />\n`;
119
- if (tw.title)
120
- metaTags += ` <meta name="twitter:title" content="${tw.title}" />\n`;
121
- if (tw.description)
122
- metaTags += ` <meta name="twitter:description" content="${tw.description}" />\n`;
123
- if (tw.image)
124
- metaTags += ` <meta name="twitter:image" content="${tw.image}" />\n`;
125
- }
126
- }
127
- const buildId = Date.now().toString(36);
128
- const olovaData = {
129
- props: {
130
- pageProps: pageData || {},
131
- },
132
- page: flightPayload?.route || '/',
133
- query: {},
134
- buildId,
135
- flight: flightPayload || null,
136
- runtimeConfig: {},
137
- isFallback: false,
138
- gsp: !!pageData,
139
- gssp: false,
140
- };
141
- const olovaDataScript = `<script id="__OLOVA_DATA__" type="application/json">${JSON.stringify(olovaData)
142
- .replace(/</g, '\\u003c')
143
- .replace(/>/g, '\\u003e')
144
- .replace(/&/g, '\\u0026')
145
- .replace(/'/g, '\\u0027')}</script>`;
146
- // Generate CSS link tags
147
- const cssLinkTags = cssLinks.length > 0
148
- ? cssLinks.map(href => ` <link rel="stylesheet" href="${href}" />`).join('\n')
149
- : '';
150
- return `<!DOCTYPE html>
151
- <html lang="en">
152
- <head>
153
- <meta charset="UTF-8" />
154
- <meta name="viewport" content="width=device-width, initial-scale=1.0" />
155
- <title>${metadata?.title || 'Olova App'}</title>
156
- ${metaTags}${cssLinkTags ? cssLinkTags + '\n' : ''} </head>
157
- <body>
158
- <div id="root">${content}</div>
159
- ${olovaDataScript}
160
- <script type="module" src="${scriptPath}"></script>
161
- </body>
162
- </html>`;
163
- }
164
- // Virtual entry-client code - served by the plugin
165
- // Using React.createElement instead of JSX to avoid transform issues
166
- const ENTRY_CLIENT_CODE = `
167
- import React from 'react';
168
- import { createRoot, hydrateRoot } from 'react-dom/client';
169
- import { Router, HeadProvider } from 'olova/client';
170
- import { routes } from 'virtual:olova-routes';
171
- import Layout from '@/layout';
172
-
173
- // Global CSS imports (auto-detected from src directory)
174
- import '@/index.css';
175
-
176
- function getOlovaData() {
177
- if (typeof document === 'undefined') return null;
178
- try {
179
- const script = document.getElementById('__OLOVA_DATA__');
180
- if (!script) return null;
181
- return JSON.parse(script.textContent || '{}');
182
- } catch (error) {
183
- console.error('[Olova] Failed to parse __OLOVA_DATA__:', error);
184
- return null;
185
- }
186
- }
187
-
188
- function getFlightPayload() {
189
- try {
190
- const olovaData = getOlovaData();
191
- if (olovaData?.flight && olovaData.flight.v === 1) {
192
- return olovaData.flight;
193
- }
194
- return null;
195
- } catch (error) {
196
- console.error('[Olova] Failed to parse Flight payload:', error);
197
- return null;
198
- }
199
- }
200
-
201
- function progressiveHydrate(rootElement, app, payload) {
202
- try {
203
- hydrateRoot(rootElement, app, {
204
- onRecoverableError(error) {
205
- console.warn('[Olova] Hydration mismatch:', error);
206
- },
207
- });
208
- requestAnimationFrame(() => {
209
- document.documentElement.classList.add('olova-hydrated');
210
- window.dispatchEvent(new CustomEvent('olova:ready'));
211
- });
212
- } catch (error) {
213
- console.error('[Olova] Hydration failed:', error);
214
- createRoot(rootElement).render(app);
215
- }
216
- }
217
-
218
- window.__OLOVA_ROUTES__ = routes;
219
-
220
- const App = () => React.createElement(
221
- HeadProvider,
222
- null,
223
- React.createElement(
224
- Layout,
225
- null,
226
- React.createElement(Router, { routes: routes })
227
- )
228
- );
229
-
230
- const rootElement = document.getElementById('root');
231
- const flightPayload = getFlightPayload();
232
- const hasServerContent = rootElement.innerHTML.trim().length > 0;
233
-
234
- if (hasServerContent) {
235
- console.log('[Olova] Hydrating');
236
- progressiveHydrate(rootElement, React.createElement(App), flightPayload);
237
- } else {
238
- console.log('[Olova] Client-side rendering');
239
- createRoot(rootElement).render(React.createElement(App));
240
- requestAnimationFrame(() => {
241
- document.documentElement.classList.add('olova-hydrated');
242
- window.dispatchEvent(new CustomEvent('olova:ready'));
243
- });
244
- }
245
-
246
- if (import.meta.hot) {
247
- import.meta.hot.accept();
248
- }
249
- `;
4
+ import { detectTailwindConfig, detectPostCSSConfig, createDefaultPostCSSConfig, collectCSSFiles, logCSSStatus, } from './css.js';
5
+ import { loadOlovaConfig, getConfig, getUserConfig } from './config.js';
6
+ import { generateHtmlTemplate } from './html.js';
7
+ import { findPages } from './utils.js';
8
+ import { ENTRY_CLIENT_CODE } from './constants.js';
9
+ import { runSSG } from './ssg.js';
250
10
  export function olova() {
251
11
  const virtualModuleId = 'virtual:olova-routes';
252
12
  const resolvedVirtualModuleId = '\0' + virtualModuleId;
253
13
  const virtualEntryId = 'virtual:olova-entry-client';
254
14
  const resolvedVirtualEntryId = '\0' + virtualEntryId;
255
- let config;
256
- let olovaConfig = getConfig();
15
+ let viteConfig;
257
16
  let isBuild = false;
258
- function findPages(dir, baseDir, pages = []) {
259
- const files = fs.readdirSync(dir);
260
- for (const file of files) {
261
- const fullPath = path.join(dir, file);
262
- const isDirectory = fs.statSync(fullPath).isDirectory();
263
- if (isDirectory && file.startsWith('(') && file.endsWith(')')) {
264
- findPages(fullPath, baseDir, pages);
265
- continue;
266
- }
267
- if (isDirectory && file !== 'assets' && file !== 'node_modules') {
268
- findPages(fullPath, baseDir, pages);
269
- }
270
- else if (file === 'page.tsx' || file === 'page.html' || file === 'page.md') {
271
- let relativePath = path.relative(baseDir, dir);
272
- relativePath = relativePath.replace(/\([^)]+\)\/?/g, '');
273
- let routePath = '/' + relativePath.replace(/\\/g, '/');
274
- routePath = routePath.replace(/\/+/g, '/');
275
- const isDynamic = routePath.includes('[') && routePath.includes(']');
276
- if (isDynamic) {
277
- routePath = routePath
278
- .replace(/\[\[\.{3}(.+?)\]\]/g, '*$1?')
279
- .replace(/\[\.{3}(.+?)\]/g, '*$1')
280
- .replace(/\[(.+?)\]/g, ':$1');
281
- }
282
- const finalPath = routePath === '/' ? '/' : routePath.replace(/\/$/, '');
283
- const content = fs.readFileSync(fullPath, 'utf-8');
284
- const hasStaticDirective = content.trimStart().startsWith('"use static"') ||
285
- content.trimStart().startsWith("'use static'");
286
- const isStatic = !isDynamic && (hasStaticDirective ||
287
- !!userConfig.ssg?.enabled ||
288
- file.endsWith('.md') ||
289
- file.endsWith('.html'));
290
- pages.push({
291
- path: finalPath,
292
- componentPath: fullPath.replace(/\\/g, '/'),
293
- isStatic,
294
- isDynamic
295
- });
296
- }
297
- }
298
- return pages;
299
- }
300
17
  return {
301
18
  name: 'vite-plugin-olova',
302
19
  async config() {
303
- userConfig = await loadOlovaConfig();
304
- olovaConfig = getConfig();
20
+ const userConfig = await loadOlovaConfig();
21
+ const olovaConfig = getConfig();
305
22
  console.log('\n \x1b[1m\x1b[35m🔮 Olova Framework\x1b[0m');
306
23
  if (Object.keys(userConfig).length > 0) {
307
24
  console.log(' ✓ Loaded olova.config.ts');
@@ -421,13 +138,14 @@ export function olova() {
421
138
  };
422
139
  },
423
140
  configResolved(resolvedConfig) {
424
- config = resolvedConfig;
425
- isBuild = config.command === 'build';
141
+ viteConfig = resolvedConfig;
142
+ isBuild = viteConfig.command === 'build';
426
143
  },
427
144
  configureServer(server) {
428
145
  const baseDir = process.cwd();
429
146
  const srcDir = path.resolve(baseDir, 'src');
430
- const pages = findPages(srcDir, srcDir);
147
+ const userConfig = getUserConfig();
148
+ const pages = findPages(srcDir, srcDir, userConfig);
431
149
  // Initialize .olova directory for development (like Next.js .next)
432
150
  initCacheDir(baseDir, 'development');
433
151
  // Write routes manifest for development
@@ -483,6 +201,30 @@ export function olova() {
483
201
  const urlPath = url.split('?')[0];
484
202
  const normalizedPath = urlPath === '/' ? '/' : urlPath.replace(/\/$/, '');
485
203
  const page = pageRoutes.get(normalizedPath);
204
+ // Import React for SSR usage
205
+ // @ts-ignore
206
+ const React = await import('react');
207
+ // Try to find a root layout
208
+ let Layout = ({ children }) => React.createElement(React.Fragment, null, children);
209
+ try {
210
+ // Check for src/layout.{tsx,jsx,ts,js}
211
+ const layoutPath = path.resolve(srcDir, 'layout.tsx');
212
+ if (fs.existsSync(layoutPath)) {
213
+ const layoutModule = await server.ssrLoadModule(layoutPath);
214
+ Layout = layoutModule.default;
215
+ }
216
+ else {
217
+ // Fallback to jsx
218
+ const layoutPathJs = path.resolve(srcDir, 'layout.jsx');
219
+ if (fs.existsSync(layoutPathJs)) {
220
+ const layoutModule = await server.ssrLoadModule(layoutPathJs);
221
+ Layout = layoutModule.default;
222
+ }
223
+ }
224
+ }
225
+ catch (e) {
226
+ // Layout not found or failed to load, continue without it
227
+ }
486
228
  let content = '';
487
229
  let pageMetadata;
488
230
  if (page) {
@@ -497,11 +239,9 @@ export function olova() {
497
239
  if (page && page.isStatic) {
498
240
  try {
499
241
  const pageModule = await server.ssrLoadModule(page.componentPath);
500
- const layoutModule = await server.ssrLoadModule(path.resolve(srcDir, 'layout.tsx'));
501
- const React = await import('react');
502
242
  const { renderToString } = await import('react-dom/server');
503
243
  const Page = pageModule.default;
504
- const Layout = layoutModule.default;
244
+ // Wrap in Layout to match client-side structure
505
245
  content = renderToString(React.createElement(Layout, null, React.createElement(Page, null)));
506
246
  console.log(` \x1b[32m● SSR\x1b[0m ${normalizedPath}`);
507
247
  }
@@ -541,20 +281,21 @@ export function olova() {
541
281
  const filePath = id.replace('?olova-transform', '');
542
282
  if (fs.existsSync(filePath)) {
543
283
  const html = fs.readFileSync(filePath, 'utf-8');
544
- return `
545
- import React from 'react';
546
- export default function Page() {
547
- return React.createElement('div', {
548
- className: 'html-content',
549
- dangerouslySetInnerHTML: { __html: ${JSON.stringify(html)} }
550
- });
551
- }
284
+ return `
285
+ import React from 'react';
286
+ export default function Page() {
287
+ return React.createElement('div', {
288
+ className: 'html-content',
289
+ dangerouslySetInnerHTML: { __html: ${JSON.stringify(html)} }
290
+ });
291
+ }
552
292
  export const metadata = { title: 'Page' };`;
553
293
  }
554
294
  }
555
295
  if (id === resolvedVirtualModuleId) {
556
296
  const srcDir = path.resolve(process.cwd(), 'src');
557
- const pages = findPages(srcDir, srcDir);
297
+ const userConfig = getUserConfig();
298
+ const pages = findPages(srcDir, srcDir, userConfig);
558
299
  const routesCode = pages.map((p) => {
559
300
  let importPath = p.componentPath;
560
301
  if (importPath.endsWith('.html'))
@@ -572,28 +313,28 @@ export const metadata = { title: 'Page' };`;
572
313
  const { marked } = await import('marked');
573
314
  const html = await marked.parse(code);
574
315
  return {
575
- code: `
576
- import React from 'react';
577
- export default function Page() {
578
- return React.createElement('div', {
579
- className: 'markdown-content',
580
- dangerouslySetInnerHTML: { __html: ${JSON.stringify(html)} }
581
- });
582
- }
316
+ code: `
317
+ import React from 'react';
318
+ export default function Page() {
319
+ return React.createElement('div', {
320
+ className: 'markdown-content',
321
+ dangerouslySetInnerHTML: { __html: ${JSON.stringify(html)} }
322
+ });
323
+ }
583
324
  export const metadata = { title: 'Page' };`,
584
325
  map: null
585
326
  };
586
327
  }
587
328
  if (id.endsWith('.html') && !id.includes('node_modules')) {
588
329
  return {
589
- code: `
590
- import React from 'react';
591
- export default function Page() {
592
- return React.createElement('div', {
593
- className: 'html-content',
594
- dangerouslySetInnerHTML: { __html: ${JSON.stringify(code)} }
595
- });
596
- }
330
+ code: `
331
+ import React from 'react';
332
+ export default function Page() {
333
+ return React.createElement('div', {
334
+ className: 'html-content',
335
+ dangerouslySetInnerHTML: { __html: ${JSON.stringify(code)} }
336
+ });
337
+ }
597
338
  export const metadata = { title: 'Page' };`,
598
339
  map: null
599
340
  };
@@ -611,70 +352,11 @@ export const metadata = { title: 'Page' };`,
611
352
  if (!isBuild)
612
353
  return;
613
354
  const baseDir = process.cwd();
614
- initCacheDir(baseDir);
615
- console.log('\n📦 Generating pages...');
616
- const outDir = path.resolve(baseDir, '.olova/dist');
617
355
  const srcDir = path.resolve(baseDir, 'src');
618
- const pages = findPages(srcDir, srcDir);
619
- const srcInDist = path.join(outDir, 'src');
620
- if (fs.existsSync(srcInDist))
621
- fs.rmSync(srcInDist, { recursive: true, force: true });
622
- const prerenderManifest = generatePrerenderManifest(baseDir, pages);
623
- const manifestOutPath = path.join(outDir, 'prerender-manifest.json');
624
- if (!fs.existsSync(outDir))
625
- fs.mkdirSync(outDir, { recursive: true });
626
- fs.writeFileSync(manifestOutPath, JSON.stringify(prerenderManifest, null, 2));
627
- const staticPages = pages.filter(p => p.isStatic);
628
- const csrPages = pages.filter(p => !p.isStatic);
629
- let jsEntry = '';
630
- // Collect all CSS files from the build (pass outDir, not assetsDir)
631
- const cssEntries = getCSSForBuild(outDir);
632
- // Find main JS entry in new location
633
- const chunksDir = path.join(outDir, '_olova', 'static', 'chunks');
634
- if (fs.existsSync(chunksDir)) {
635
- const chunks = fs.readdirSync(chunksDir);
636
- for (const chunk of chunks) {
637
- if (chunk.startsWith('main') && chunk.endsWith('.js')) {
638
- jsEntry = '/_olova/static/chunks/' + chunk;
639
- }
640
- }
641
- }
642
- const { minify } = await import('html-minifier-terser');
643
- for (const page of csrPages) {
644
- if (page.isDynamic)
645
- continue;
646
- let htmlPath = page.path === '/' ? path.join(outDir, 'index.html') : path.join(outDir, page.path, 'index.html');
647
- if (page.path !== '/') {
648
- const pageDir = path.join(outDir, page.path);
649
- if (!fs.existsSync(pageDir))
650
- fs.mkdirSync(pageDir, { recursive: true });
651
- }
652
- const fullHtml = generateHtmlTemplate('', jsEntry, cssEntries);
653
- const minifiedHtml = await minify(fullHtml, HTML_MINIFY_OPTIONS);
654
- fs.writeFileSync(htmlPath, minifiedHtml);
655
- }
656
- if (staticPages.length > 0) {
657
- for (const page of staticPages) {
658
- let htmlPath = page.path === '/' ? path.join(outDir, 'index.html') : path.join(outDir, page.path, 'index.html');
659
- if (page.path !== '/') {
660
- const pageDir = path.join(outDir, page.path);
661
- if (!fs.existsSync(pageDir))
662
- fs.mkdirSync(pageDir, { recursive: true });
663
- }
664
- const fullHtml = generateHtmlTemplate('', jsEntry, cssEntries);
665
- const minifiedHtml = await minify(fullHtml, HTML_MINIFY_OPTIONS);
666
- fs.writeFileSync(htmlPath, minifiedHtml);
667
- }
668
- }
669
- const buildManifest = {
670
- version: Date.now().toString(36),
671
- buildTime: new Date().toISOString(),
672
- pages: pages.map(p => ({ path: p.path, isStatic: p.isStatic })),
673
- assets: { main: jsEntry, css: cssEntries },
674
- };
675
- const manifestPath = path.join(outDir, 'build-manifest.json');
676
- fs.writeFileSync(manifestPath, JSON.stringify(buildManifest, null, 2));
677
- console.log(`\n✅ Build complete!\n`);
356
+ const userConfig = getUserConfig();
357
+ const pages = findPages(srcDir, srcDir, userConfig);
358
+ const olovaConfig = getConfig();
359
+ await runSSG(baseDir, pages, olovaConfig);
678
360
  }
679
361
  };
680
362
  }
@@ -1 +1 @@
1
- {"version":3,"file":"plugin.js","sourceRoot":"","sources":["../../src/plugin/plugin.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"plugin.js","sourceRoot":"","sources":["../../src/plugin/plugin.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,3 @@
1
+ import type { PageInfo } from './types.js';
2
+ export declare function runSSG(baseDir: string, pages: PageInfo[], olovaConfig: any): Promise<void>;
3
+ //# sourceMappingURL=ssg.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ssg.d.ts","sourceRoot":"","sources":["../../src/plugin/ssg.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AAM3C,wBAAsB,MAAM,CAC1B,OAAO,EAAE,MAAM,EACf,KAAK,EAAE,QAAQ,EAAE,EACjB,WAAW,EAAE,GAAG,iBAsNjB"}