Skip to content

Commit e79f542

Browse files
committed
feat: correctly add vite spa under the same react route
1 parent b3fe75d commit e79f542

50 files changed

Lines changed: 6625 additions & 1632 deletions

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

cmp/compiler/src/plugin/unplugin.ts

Lines changed: 7 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -195,6 +195,7 @@ export function persistLocale(locale) {
195195
},
196196

197197
async buildEnd() {
198+
logger.debug("Build end");
198199
// Process build-time translations (only in production)
199200
if (!isDev) {
200201
try {
@@ -210,12 +211,14 @@ export function persistLocale(locale) {
210211
logger.error("Build-time translation processing failed:", error);
211212
throw error;
212213
}
213-
}
214214

215-
// Stop translation server
216-
if (globalServer) {
217-
await globalServer.stop();
215+
// Stop translation server after production build
216+
if (globalServer) {
217+
await globalServer.stop();
218+
}
218219
}
220+
221+
// In dev mode, keep the server running (Webpack calls buildEnd on every compilation)
219222
},
220223
};
221224
});
Lines changed: 52 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,52 @@
1+
{
2+
"version": 0.1,
3+
"locale": "de",
4+
"entries": {
5+
"8818ca53e31c": "Create Next App",
6+
"86dbb9f023f2": "Generiert von create next app",
7+
"c2869b1af1fd": "Hallo Welt",
8+
"aa583dd2cdb3": "<b0>Gemischter</b0> Inhalt <i0>Fragment</i0>",
9+
"f8024b461f8b": "Lingo.dev Compiler Next Demo",
10+
"068592d63b5c": "Test",
11+
"fbae03267da7": "Willkommen zur Lingo.dev Compiler-Demo",
12+
"b3378ef9d257": "Es extrahiert automatisch Text aus Ihrem JSX und übersetzt ihn in andere Sprachen. <br0></br0> Es unterstützt sowohl Server- als auch Client-Komponenten.",
13+
"5d73614fbf6f": "Text, der als <code0></code0> eingefügt wird, wird nicht übersetzt: {text}",
14+
"43f8b1c71d1d": "Um ihn zu übersetzen, müssen Sie ihn in <>{translatableText}</> einpacken",
15+
"ba8a4c46406b": "Text außerhalb der Komponente wird nicht übersetzt: {externalText}",
16+
"5cbe3731905e": "Inhalte, die Text und andere Tags enthalten, werden als eine einzige Einheit übersetzt: {translatableMixedContextFragment}",
17+
"f5e4fb249cc5": "Auf dem Server gerendert",
18+
"3b11e68de0d0": "{state} mal geklickt",
19+
"889e919a3d5d": "Zurücksetzen",
20+
"b6c327941f13": "Um ihn zu übersetzen, müssen Sie ihn in '<'>{translatableText}'<'/> einpacken",
21+
"372781f5dc46": "Was passiert, wenn ich eine Eigenschaft {expression0} verwende",
22+
"72e87c3a9c71": "Übersetzt cool",
23+
"f5a54d820e5c": "Was passiert, wenn ich eine Eigenschaft {expression0} und {expression1} verwende",
24+
"992788d17991": "<Link0>Test</Link0> 1",
25+
"f4613618f582": "Es extrahiert automatisch Text aus Ihrem JSX und übersetzt ihn in andere Sprachen. <br0></br0> Es unterstützt sowohl Server- als auch Client-Komponentenssssss.",
26+
"53df1a7f71cd": "Verwenden Sie data-lingo-override, um Übersetzungen zu überschreiben",
27+
"be9d2a95d9b6": "Rich-Text-Übersetzungstest",
28+
"c08b9402a107": "Klicken Sie <a0>hier</a0> oder <a1>dort</a1> für weitere Informationen.",
29+
"14b4188c94cc": "Hallo <strong0>Welt</strong0>, dies ist ein Test.",
30+
"7a5ea0d2df89": "Compiler-Beta Testseite",
31+
"830ff99946cc": "Diese Seite demonstriert automatische Übersetzungstransformation",
32+
"6368dcee9953": "Wie es funktioniert",
33+
"8dadb9ec4d04": "Der Compiler-Beta-Loader transformiert JSX-Text automatisch in Übersetzungsaufrufe.",
34+
"0ae6ce389cfc": "Jedem Textstück wird ein eindeutiger Hash basierend auf Inhalt, Komponentenname und Dateipfad zugewiesen.",
35+
"378eb18c4a16": "Überprüfen Sie die Entwicklerkonsole, um den transformierten Code zu sehen!",
36+
"4c6734305aa0": "Automatische Erkennung",
37+
"003c9612351d": "Keine manuelle Kennzeichnung erforderlich",
38+
"d5b562e40b5e": "Hash-basiertes System",
39+
"0379b86a9355": "Eindeutige Kennungen für jeden Text",
40+
"833473d12153": "Metadaten-Tracking",
41+
"46e06d3f2a54": "Alle Übersetzungen werden in metadata.json gespeichert",
42+
"4700e259367e": "Turbopack-kompatibel",
43+
"4e25cff45759": "Funktioniert nahtlos mit Next.js 16",
44+
"e225cbdc3c08": "Vor der Transformation",
45+
"61b7edbfd322": "Nach der Transformation",
46+
"be34d62b41ea": "Entwicklungsstatus",
47+
"1cffc0c80394": "Der Compiler-Beta transformiert derzeit diese Seite.",
48+
"b2219cb18030": "Suchen Sie nach dem .lingo-Verzeichnis im Projektstamm nach dem Build.",
49+
"2639e74b4dba": "Testtesttest2222222",
50+
"fa54f4d74ce6": "Testtesttest"
51+
}
52+
}
Lines changed: 52 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,52 @@
1+
{
2+
"version": 0.1,
3+
"locale": "en",
4+
"entries": {
5+
"8818ca53e31c": "Create Next App",
6+
"86dbb9f023f2": "Generated by create next app",
7+
"c2869b1af1fd": "Hello World",
8+
"aa583dd2cdb3": "<b0>Mixed</b0> content <i0>fragment</i0>",
9+
"f8024b461f8b": "Lingo.dev compiler Next demo",
10+
"068592d63b5c": "Test",
11+
"fbae03267da7": "Welcome to Lingo.dev compiler demo",
12+
"b3378ef9d257": "It automatically extract text from your JSX and translate it to other languages. <br0></br0> It supports both server and client components.",
13+
"5d73614fbf6f": "Text inserted as an <code0></code0> is not translated: {text}",
14+
"43f8b1c71d1d": "To translate it you have to wrap it into the <>{translatableText}</>",
15+
"ba8a4c46406b": "Text external to the component is not translated: {externalText}",
16+
"5cbe3731905e": "Content that has text and other tags inside will br translated as a single entity: {translatableMixedContextFragment}",
17+
"f5e4fb249cc5": "Rendered on the server",
18+
"3b11e68de0d0": "Clicked {state} times",
19+
"889e919a3d5d": "reset",
20+
"b6c327941f13": "To translate it you have to wrap it into the '<'>{translatableText}'<'/>",
21+
"372781f5dc46": "What happens if I use a property {expression0}",
22+
"72e87c3a9c71": "translated cool",
23+
"f5a54d820e5c": "What happens if I use a property {expression0} and {expression1}",
24+
"992788d17991": "<Link0>Test</Link0> 1",
25+
"f4613618f582": "It automatically extract text from your JSX and translate it to other languages. <br0></br0> It supports both server and client componentssssss.",
26+
"53df1a7f71cd": "Use data-lingo-override to override translations",
27+
"be9d2a95d9b6": "Rich Text Translation Test",
28+
"c08b9402a107": "Click <a0>here</a0> or <a1>there</a1> for more info.",
29+
"14b4188c94cc": "Hello <strong0>world</strong0>, this is a test.",
30+
"7a5ea0d2df89": "Compiler-Beta Test Page",
31+
"830ff99946cc": "This page demonstrates automatic translation transformation",
32+
"6368dcee9953": "How It Works",
33+
"8dadb9ec4d04": "The compiler-beta loader automatically transforms JSX text into translation calls.",
34+
"0ae6ce389cfc": "Each piece of text is assigned a unique hash based on the content, component name, and file path.",
35+
"378eb18c4a16": "Check the developer console to see the transformed code!",
36+
"4c6734305aa0": "Automatic Detection",
37+
"003c9612351d": "No manual tagging required",
38+
"d5b562e40b5e": "Hash-Based System",
39+
"0379b86a9355": "Unique identifiers for each text",
40+
"833473d12153": "Metadata Tracking",
41+
"46e06d3f2a54": "All translations saved to metadata.json",
42+
"4700e259367e": "Turbopack Compatible",
43+
"4e25cff45759": "Works seamlessly with Next.js 16",
44+
"e225cbdc3c08": "Before Transformation",
45+
"61b7edbfd322": "After Transformation",
46+
"be34d62b41ea": "Development Status",
47+
"1cffc0c80394": "The compiler-beta is currently transforming this page.",
48+
"b2219cb18030": "Look for the .lingo directory in the project root after building.",
49+
"2639e74b4dba": "Testtesttest2222222",
50+
"fa54f4d74ce6": "Testtesttest"
51+
}
52+
}
Lines changed: 52 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,52 @@
1+
{
2+
"version": 0.1,
3+
"locale": "es",
4+
"entries": {
5+
"8818ca53e31c": "Crear aplicación Next",
6+
"86dbb9f023f2": "Generado por create next app",
7+
"c2869b1af1fd": "Hola Mundo",
8+
"aa583dd2cdb3": "<b0>Contenido</b0> mixto <i0>fragmento</i0>",
9+
"72e87c3a9c71": "traducido genial",
10+
"f8024b461f8b": "Demo de compilador Lingo.dev Next",
11+
"992788d17991": "<Link0>Prueba</Link0> 1",
12+
"fbae03267da7": "Bienvenido a la demo del compilador Lingo.dev",
13+
"b3378ef9d257": "Extrae automáticamente texto de tu JSX y lo traduce a otros idiomas. <br0></br0> Es compatible tanto con componentes de servidor como de cliente.",
14+
"53df1a7f71cd": "Usa data-lingo-override para sobrescribir traducciones",
15+
"5d73614fbf6f": "El texto insertado como <code0></code0> no se traduce: {text}",
16+
"b6c327941f13": "Para traducirlo tienes que envolverlo en el '<'>{translatableText}'<'/>",
17+
"f5a54d820e5c": "¿Qué sucede si uso una propiedad {expression0} y {expression1}",
18+
"ba8a4c46406b": "El texto externo al componente no se traduce: {externalText}",
19+
"5cbe3731905e": "El contenido que tiene texto y otras etiquetas dentro se traducirá como una sola entidad: {translatableMixedContextFragment}",
20+
"f5e4fb249cc5": "Renderizado en el servidor",
21+
"3b11e68de0d0": "Cliqueado {state} veces",
22+
"889e919a3d5d": "reiniciar",
23+
"068592d63b5c": "Prueba",
24+
"43f8b1c71d1d": "Para traducirlo tienes que envolverlo en <>{translatableText}</>",
25+
"372781f5dc46": "¿Qué sucede si uso una propiedad {expression0}",
26+
"f4613618f582": "Extrae automáticamente texto de tu JSX y lo traduce a otros idiomas. <br0></br0> Soporta componentes tanto de servidor como de cliente.",
27+
"be9d2a95d9b6": "Prueba de traducción de texto enriquecido",
28+
"c08b9402a107": "Haz clic <a0>aquí</a0> o <a1>allí</a1> para más información.",
29+
"14b4188c94cc": "Hola <strong0>mundo</strong0>, esto es una prueba.",
30+
"7a5ea0d2df89": "Página de prueba de Compiler-Beta",
31+
"830ff99946cc": "Esta página demuestra la transformación automática de traducción",
32+
"6368dcee9953": "Cómo funciona",
33+
"8dadb9ec4d04": "El cargador compiler-beta transforma automáticamente el texto JSX en llamadas de traducción.",
34+
"0ae6ce389cfc": "A cada fragmento de texto se le asigna un hash único basado en el contenido, el nombre del componente y la ruta del archivo.",
35+
"378eb18c4a16": "¡Revisa la consola de desarrollador para ver el código transformado!",
36+
"4c6734305aa0": "Detección automática",
37+
"003c9612351d": "No requiere etiquetado manual",
38+
"d5b562e40b5e": "Sistema basado en hash",
39+
"0379b86a9355": "Identificadores únicos para cada texto",
40+
"833473d12153": "Seguimiento de metadatos",
41+
"46e06d3f2a54": "Todas las traducciones guardadas en metadata.json",
42+
"4700e259367e": "Compatible con Turbopack",
43+
"4e25cff45759": "Funciona perfectamente con Next.js 16",
44+
"e225cbdc3c08": "Antes de la transformación",
45+
"61b7edbfd322": "Después de la transformación",
46+
"be34d62b41ea": "Estado de desarrollo",
47+
"1cffc0c80394": "El compiler-beta está transformando esta página actualmente.",
48+
"b2219cb18030": "Busca el directorio .lingo en la raíz del proyecto después de compilar.",
49+
"fa54f4d74ce6": "Pruebapruebaprueba",
50+
"2639e74b4dba": "Pruebapruebaprueba2222222"
51+
}
52+
}
Lines changed: 52 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,52 @@
1+
{
2+
"version": 0.1,
3+
"locale": "ru",
4+
"entries": {
5+
"8818ca53e31c": "Создать Next App",
6+
"86dbb9f023f2": "Создано с помощью Create Next App",
7+
"3b11e68de0d0": "Нажато {state} раз(а)",
8+
"889e919a3d5d": "сбросить",
9+
"53df1a7f71cd": "Секретная информация",
10+
"c2869b1af1fd": "Привет, мир",
11+
"aa583dd2cdb3": "<b0>Смешанный</b0> контент <i0>фрагмент</i0>",
12+
"72e87c3a9c71": "переведено круто",
13+
"f8024b461f8b": "Демонстрация компилятора Lingo.dev Next",
14+
"992788d17991": "<Link0>Тест</Link0> 1",
15+
"fbae03267da7": "Добро пожаловать в демонстрацию компилятора Lingo.dev",
16+
"b3378ef9d257": "Он автоматически извлекает текст из вашего JSX и переводит его на другие языки. <br0></br0> Поддерживает как серверные, так и клиентские компоненты.",
17+
"5d73614fbf6f": "Текст, вставленный как <code0></code0>, не переводится: {text}",
18+
"b6c327941f13": "Чтобы перевести его, вы должны обернуть его в '<'>{translatableText}'<'/>",
19+
"f5a54d820e5c": "Что произойдет, если я использую свойство {expression0} и {expression1}",
20+
"ba8a4c46406b": "Текст, внешний по отношению к компоненту, не переводится: {externalText}",
21+
"5cbe3731905e": "Контент, содержащий текст и другие теги внутри, будет переведен как единое целое: {translatableMixedContextFragment}",
22+
"f5e4fb249cc5": "Отрисовано на сервере",
23+
"7a5ea0d2df89": "Страница тестирования Compiler-Beta",
24+
"830ff99946cc": "Эта страница демонстрирует автоматическое преобразование перевода",
25+
"6368dcee9953": "Как это работает",
26+
"8dadb9ec4d04": "Загрузчик compiler-beta автоматически преобразует текст JSX в вызовы перевода.",
27+
"0ae6ce389cfc": "Каждому фрагменту текста присваивается уникальный хэш на основе содержимого, имени компонента и пути к файлу.",
28+
"378eb18c4a16": "Проверьте консоль разработчика, чтобы увидеть преобразованный код!",
29+
"4c6734305aa0": "Автоматическое обнаружение",
30+
"003c9612351d": "Не требуется ручная разметка",
31+
"d5b562e40b5e": "Система на основе хэшей",
32+
"0379b86a9355": "Уникальные идентификаторы для каждого текста",
33+
"833473d12153": "Отслеживание метаданных",
34+
"46e06d3f2a54": "Все переводы сохраняются в metadata.json",
35+
"4700e259367e": "Совместимость с Turbopack",
36+
"4e25cff45759": "Работает без проблем с Next.js 16",
37+
"e225cbdc3c08": "До преобразования",
38+
"61b7edbfd322": "После преобразования",
39+
"be34d62b41ea": "Статус разработки",
40+
"1cffc0c80394": "В настоящее время compiler-beta преобразует эту страницу.",
41+
"b2219cb18030": "Ищите каталог .lingo в корне проекта после сборки.",
42+
"068592d63b5c": "Тест",
43+
"43f8b1c71d1d": "Чтобы перевести это, оберните в <>{translatableText}</>",
44+
"372781f5dc46": "Что произойдет, если я использую свойство {expression0}",
45+
"f4613618f582": "Он автоматически извлекает текст из вашего JSX и переводит его на другие языки. <br0></br0> Поддерживает как серверные, так и клиентские компоненты.",
46+
"be9d2a95d9b6": "Тест перевода с форматированием",
47+
"c08b9402a107": "Нажмите <a0>здесь</a0> или <a1>там</a1> для получения дополнительной информации.",
48+
"14b4188c94cc": "Привет, <strong0>мир</strong0>, это тест.",
49+
"fa54f4d74ce6": "Тесттесттест",
50+
"2639e74b4dba": "Тесттесттест2222222"
51+
}
52+
}

cmp/demo/react-router/app/.lingo/config.ts

Lines changed: 0 additions & 3 deletions
This file was deleted.

0 commit comments

Comments
 (0)