@jjlmoya/landings 0.4.0 → 0.6.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 (35) hide show
  1. package/package.json +1 -1
  2. package/scripts/copy-public-assets.mjs +3 -1
  3. package/src/landing/team/assets/gamebob-team-hero.webp +0 -0
  4. package/src/landing/team/assets/team-og.webp +0 -0
  5. package/src/landing/team/components/BobModelBook.astro +4 -4
  6. package/src/landing/team/components/CompanyWorks.astro +9 -78
  7. package/src/landing/team/components/HumanTouch.astro +102 -38
  8. package/src/landing/team/components/TeamHero.astro +21 -12
  9. package/src/landing/team/entry.ts +16 -6
  10. package/src/landing/team/i18n/de.ts +181 -0
  11. package/src/landing/team/i18n/en.ts +60 -157
  12. package/src/landing/team/i18n/es.ts +16 -112
  13. package/src/landing/team/i18n/fr.ts +181 -0
  14. package/src/landing/team/i18n/id.ts +181 -0
  15. package/src/landing/team/i18n/index.ts +28 -2
  16. package/src/landing/team/i18n/it.ts +181 -0
  17. package/src/landing/team/i18n/ja.ts +181 -0
  18. package/src/landing/team/i18n/ko.ts +181 -0
  19. package/src/landing/team/i18n/nl.ts +181 -0
  20. package/src/landing/team/i18n/pl.ts +181 -0
  21. package/src/landing/team/i18n/pt.ts +181 -0
  22. package/src/landing/team/i18n/ru.ts +181 -0
  23. package/src/landing/team/i18n/sv.ts +181 -0
  24. package/src/landing/team/i18n/tr.ts +181 -0
  25. package/src/landing/team/i18n/zh.ts +181 -0
  26. package/src/landing/team/styles/BobModelBook.css +8 -5
  27. package/src/landing/team/styles/HumanTouch.css +116 -12
  28. package/src/landing/team/styles/SupportTransition.css +7 -1
  29. package/src/landing/team/styles/TeamHero.css +101 -16
  30. package/src/layouts/PreviewLayout.astro +0 -3
  31. package/src/pages/[locale].astro +3 -4
  32. package/src/tests/no_en_dash.test.ts +1 -0
  33. package/src/tests/no_png_images.test.ts +42 -0
  34. package/src/types.ts +6 -5
  35. package/src/landing/team/assets/gamebob-team-hero.png +0 -0
@@ -2,9 +2,11 @@ import type { LandingCardContent } from '../../../types';
2
2
 
3
3
  export const cardContent: LandingCardContent = {
4
4
  slug: 'equipo',
5
- title: 'Equipo GameBob',
6
- subtitle: 'Dirigido por gatos. Creado por un humano.',
7
- description: 'Una cálida y pequeña página sobre Bob, una junta directiva felina, un desarrollador en Mallorca y los compañeros recordados en el camino.'
5
+ seo: {
6
+ title: 'El Equipo de GameBob Studio',
7
+ description: 'Conoce a la junta felina, al desarrollador humano y la historia detrás de GameBob Studio, un proyecto independiente creado desde Mallorca.',
8
+
9
+ }
8
10
  };
9
11
 
10
12
  export const pageContent = {
@@ -14,83 +16,45 @@ export const pageContent = {
14
16
  titleAccent: 'Bob',
15
17
  lead: 'DIRIGIDO POR GATOS. CREADO POR UN HUMANO.',
16
18
  stageLabel: 'Bob supervisando el estudio GameBob',
17
- sceneAlt: 'Escena pixel art de Bob supervisando una reunión de la junta mientras Juanjo trabaja en un portátil'
19
+ sceneAlt: 'Escena pixel art de Bob supervisando mientras JJ trabaja en un portátil'
18
20
  },
19
21
  companyWorks: {
20
22
  eyebrow: 'Cómo funciona esta empresa',
21
23
  title: 'La Junta Felina',
22
24
  text: 'GameBob se organiza por autoridad real, no por fantasía corporativa. Bob domina la junta. Nada de modelos horizontales: todo es vertical, incuestionable y ligeramente intimidante. La democracia no se vislumbra ni hoy, ni mañana, ni nunca.',
23
- secretDossier: 'Dossier técnico secreto',
24
- closeDossier: 'Cerrar dossier',
25
25
  members: {
26
26
  bob: {
27
27
  name: 'Bob',
28
- role: 'Gato Director Ejecutivo',
29
- status: 'Nivel de autoridad: Absoluto. Comedor profesional.',
30
- dossier: 'Máxima autoridad. Revisa la estrategia, la asignación de comida y si el rumbo actual merece un parpadeo.'
28
+ role: 'Dueña de Todo',
29
+ status: 'Nivel de autoridad: Absoluto. Comedora profesional.'
31
30
  },
32
31
  terra: {
33
32
  name: 'Terra',
34
- role: 'La Matriarach',
35
- status: 'El origen. Mira fijamente el código hasta que se siente juzgado.',
36
- dossier: 'Presencia senior. Mantiene a la junta equilibrada emocionalmente y audita en silencio decisiones sospechosas.'
33
+ role: 'La Matriarca',
34
+ status: 'El origen. Mira fijamente el código hasta que se siente juzgado.'
37
35
  },
38
36
  ambar: {
39
37
  name: 'Ámbar',
40
38
  role: 'Supervisora Senior',
41
- status: 'Manteniendo el equilibrio de poder (a través de mimos extremos).',
42
- dossier: 'Supervisa la distribución de atención, la disponibilidad del regazo y el presupuesto de moral del departamento humano.'
39
+ status: 'Manteniendo el equilibrio de poder (a través de mimos extremos).'
43
40
  },
44
41
  ambarChiquilla: {
45
42
  name: 'Ámbar Chiquilla',
46
43
  role: 'Auditora Junior',
47
- status: 'Cazadora tímida. Especializada en el seguimiento del cursor del ratón.',
48
- dossier: 'Auditora de formato pequeño. Se especializa en la observación cuidadosa, la persecución del cursor y la escalada silenciosa.'
44
+ status: 'Cazadora tímida. Especializada en el seguimiento del cursor del ratón.'
49
45
  },
50
46
  drac: {
51
47
  name: 'Drac',
52
48
  role: 'Operaciones de Campo',
53
- status: 'Alma de la fiesta. Viviendo su mejor vida en las calles.',
54
- dossier: 'Líder de operaciones externas. Mantiene la independencia de campo y aparece cuando las condiciones son personalmente aceptables.'
49
+ status: 'Alma de la fiesta. Viviendo su mejor vida en las calles.'
55
50
  },
56
51
  jj: {
57
52
  name: 'JJ',
58
- role: 'Desarrollador en Solitario',
59
- status: 'Depto. de Implementación. Estado: Superado en número.',
60
- dossier: 'Departamento de implementación. Construye, envía, traduce y mantiene la plataforma bajo la supervisión de la junta.'
61
- }
62
- }
63
- },
64
- teamComic: {
65
- eyebrow: 'Mini webcómic',
66
- title: 'Cada miembro del equipo tiene una escena, no solo una tarjeta.',
67
- scenes: {
68
- strategic: {
69
- title: 'Planificación estratégica',
70
- setting: 'Bob estudia un mapa del mundo e identifica regiones con logística de snacks prometedora.',
71
- speech: ['Más idiomas.', 'Más humanos.', 'Más comida.'],
72
- propLabel: 'mapa'
73
- },
74
- qa: {
75
- title: 'Garantía de calidad',
76
- setting: 'Una supervisora duerme sobre documentos etiquetados como extremadamente importantes hasta que el diseño se siente más calmado.',
77
- speech: ['Este botón necesita calidez.', 'Además, necesito la silla.'],
78
- propLabel: 'papeles'
79
- },
80
- implementation: {
81
- title: 'Implementación',
82
- setting: 'El humano escribe código mientras la junta aporta entradas inesperadas a través del teclado.',
83
- speech: ['Súbelo.', 'No, espera. Acaríciame primero.'],
84
- propLabel: 'teclado'
53
+ role: 'Proveedor de comida',
54
+ status: 'Depto. de Implementación. Estado: Superado en número.'
85
55
  }
86
56
  }
87
57
  },
88
- behindJoke: {
89
- eyebrow: 'Detrás de la broma',
90
- title: 'Las bromas son reales. El trabajo también.',
91
- text: 'Detrás de GameBob hay un desarrollador en solitario diseñando, construyendo, traduciendo y manteniendo todo desde Mallorca. El objetivo es simple: crear herramientas que sean útiles, visuales, rápidas y agradables de usar.',
92
- island: 'Mallorca'
93
- },
94
58
  humanTouch: {
95
59
  eyebrow: 'Recurso humano',
96
60
  title: 'El Humano',
@@ -187,7 +151,7 @@ export const pageContent = {
187
151
  openLabel: 'Abrir pose de Bob',
188
152
  closeLabel: 'Cerrar pose de Bob',
189
153
  premiumTitle: 'OnlyBob Premium',
190
- premiumText: 'Bob ha decidido que estas poses son demasiado potentes para el scroll casual. El acceso completo se abrirá cuando el modelo de negocio le parezca emocionalmente maduro.',
154
+ premiumText: 'Bob ha decidido que estas poses son demasiado potentes para un usuario casual. El acceso completo se abrirá cuando el modelo de negocio le parezca emocionalmente maduro.',
191
155
  buyLabel: 'Comprar acceso (aún no estoy desesperada)',
192
156
  trialLabel: 'Prueba gratuita de 24 horas',
193
157
  subscriptionLabel: 'Prueba OnlyBob activa',
@@ -208,71 +172,11 @@ export const pageContent = {
208
172
  'Miau'
209
173
  ]
210
174
  },
211
- memoryWall: {
212
- eyebrow: 'Muro del recuerdo',
213
- title: 'Para cada animal que sigue siendo parte de la historia.',
214
- text: 'Esto se convertirá en un cálido archivo de fotos, fechas, pequeños rituales y recuerdos. Amable más que triste: un lugar para todos los que dejaron huellas, ruido, calor y caos de horarios a su paso.',
215
- memories: {
216
- m1: { name: 'Espacio de recuerdo 01', line: 'Un lugar pequeño para una gran personalidad.' },
217
- m2: { name: 'Espacio de recuerdo 02', line: 'Siesta favorita, sonido favorito, pequeño hábito favorito.' },
218
- m3: { name: 'Espacio de recuerdo 03', line: 'Una historia que merece su propio rincón cálido.' },
219
- m4: { name: 'Espacio de recuerdo 04', line: 'Para cada animal que hizo de la casa un equipo.' }
220
- }
221
- },
222
175
  supportTransition: {
223
176
  eyebrow: 'La junta está abierta a',
224
177
  title: 'Feedback.',
225
178
  text: 'Ideas, informes de errores, correcciones de traducción y soporte del proyecto. La junta ejecutiva no puede prometer respuestas rápidas. Principalmente porque son gatos. El recurso humano seguirá leyendo todo con cuidado.',
226
179
  linkText: 'Ir a Apóyanos',
227
180
  comingSoonLabel: 'Próximamente',
228
- inbox: {
229
- ideas: 'ideas',
230
- bugs: 'errores',
231
- fixes: 'correcciones',
232
- support: 'soporte'
233
- }
234
- },
235
- teamRoster: {
236
- eyebrow: 'Equipo actual',
237
- title: 'Un estudio serio, supervisado por expertos poco serios.',
238
- text: 'Este es el primer paso: Bob lidera la página hoy, y el resto del equipo tiene tarjetas de marcador de posición listas para recibir nombres, fotos, historias y títulos adecuadamente ridículos.',
239
- members: {
240
- bob: {
241
- name: 'Bob',
242
- role: 'Oficial Ejecutivo de Siestas',
243
- bio: 'Gato negro, fundador del departamento de control de calidad silencioso y primer miembro del equipo GameBob.',
244
- tag: 'Aprobación final: duerme sobre ello'
245
- },
246
- c2: {
247
- name: 'Compañero gato 02',
248
- role: 'Control de Calidad del Caos',
249
- bio: 'Se especializa en clics inesperados, paseos por el teclado y en encontrar el único diseño que aún necesita amor.',
250
- tag: 'Nombre pendiente'
251
- },
252
- c3: {
253
- name: 'Compañero gato 03',
254
- role: 'Diseñador de Confort',
255
- bio: 'Mantiene el estudio suave, cálido y legalmente obligado a contener al menos un rincón acogedor.',
256
- tag: 'Nombre pendiente'
257
- },
258
- c4: {
259
- name: 'Compañero gato 04',
260
- role: 'Interruptor de Enfoque',
261
- bio: 'Proteges al proyecto del exceso de trabajo introduciendo descansos regulares en momentos inoportunos.',
262
- tag: 'Nombre pendiente'
263
- },
264
- c5: {
265
- name: 'Compañero gato 05',
266
- role: 'Auditor de Snacks',
267
- bio: 'Monitorea todas las decisiones relacionadas con la cocina y mantiene opiniones firmes sobre los cuencos vacíos.',
268
- tag: 'Nombre pendiente'
269
- },
270
- jj: {
271
- name: 'JJL Moya',
272
- role: 'Desarrollador en Solitario',
273
- bio: 'Construye los juegos, herramientas, textos, interfaces, sistemas y alguna que otra característica solicitada por una cola.',
274
- tag: 'Departamento humano'
275
- }
276
- }
277
181
  }
278
182
  };
@@ -0,0 +1,181 @@
1
+ import type { LandingCardContent } from '../../../types';
2
+
3
+ export const cardContent: LandingCardContent = {
4
+ slug: 'equipe',
5
+ seo: {
6
+ title: 'L\'Équipe de GameBob Studio',
7
+ description: 'Rencontrez le conseil félin, le développeur humain et l\'histoire de GameBob Studio, un projet indépendant créé à Majorque.',
8
+ }
9
+ };
10
+
11
+ export const pageContent = {
12
+ hero: {
13
+ kicker: 'Quelque part à Majorque',
14
+ titlePrefix: 'Game',
15
+ titleAccent: 'Bob',
16
+ lead: 'DIRIGÉ PAR DES CHATS. CRÉÉ PAR UN HUMAIN.',
17
+ stageLabel: 'Bob supervisant le studio GameBob',
18
+ sceneAlt: 'Scène en pixel art de Bob supervisant pendant que JJ travaille sur un ordinateur portable'
19
+ },
20
+ companyWorks: {
21
+ eyebrow: 'Comment fonctionne cette entreprise',
22
+ title: 'Le Conseil Félin',
23
+ text: 'GameBob est organisé par autorité royale, pas par fantasme d\'entreprise. Bob domine le conseil. Pas de modèles horizontaux ici : tout est vertical, incontestable et légèrement intimidant. La démocratie n\'est pas en vue aujourd\'hui, ni demain, ni jamais.',
24
+ members: {
25
+ bob: {
26
+ name: 'Bob',
27
+ role: 'Propriétaire de Tout',
28
+ status: 'Niveau d\'autorité : Absolu. Mangeuse professionnelle.'
29
+ },
30
+ terra: {
31
+ name: 'Terra',
32
+ role: 'La Matriarche',
33
+ status: 'L\'origine. Fixe le code du regard jusqu\'à ce qu\'il se sente jugé.'
34
+ },
35
+ ambar: {
36
+ name: 'Ámbar',
37
+ role: 'Superviseuse Senior',
38
+ status: 'Maintien de l\'équilibre des forces (par des câlins extrêmes).'
39
+ },
40
+ ambarChiquilla: {
41
+ name: 'Ámbar Chiquilla',
42
+ role: 'Auditrice Junior',
43
+ status: 'Chasseuse timide. Spécialisée dans le suivi du curseur de la souris.'
44
+ },
45
+ drac: {
46
+ name: 'Drac',
47
+ role: 'Opérations sur le Terrain',
48
+ status: 'L\'âme de la fête. Vit sa meilleure vie dans les rues.'
49
+ },
50
+ jj: {
51
+ name: 'JJ',
52
+ role: 'Fournisseur de nourriture',
53
+ status: 'Dépt. d\'Implémentation. Statut : Dépassé par le nombre.'
54
+ }
55
+ }
56
+ },
57
+ humanTouch: {
58
+ eyebrow: 'Ressource Humaine',
59
+ title: 'L\'Humain',
60
+ textBefore: 'Bob a décidé que l\'empathie devait faire partie de cette page car "les humains se connectent avec les humains". Elle a donc ordonné la création de cette section et, sachant que nous souffrons de déficits d\'attention, a exigé de la remplir d\'animations et de lumières ',
61
+ wordWithRagebait: 'bryllantes',
62
+ textAfter: '.',
63
+ ragebaitExplanation: 'Que tout le monde se détende : l\'orthographe de "bryllantes" est intentionnelle. Le conseil félin assure que signaler les fautes augmente les visites de 400%.',
64
+ chipsLabel: 'Domaines de l\'humain',
65
+ boardLabel: 'Fiche opérationnelle de l\'humain',
66
+ alert: 'FICHE HUMAINE À HAUTE DOPAMINE',
67
+ portraitAlt: 'jjlmoya dans une photo de profil faussement sexy',
68
+ poseLabel: 'Pose Obligatoire',
69
+ name: 'jjlmoya',
70
+ role: 'Développeur Frontend',
71
+ bio: 'Transforme les curiosités, les problèmes et les détails du quotidien en outils, en expériences interactives et en systèmes capables de grandir pendant des années.',
72
+ stats: [
73
+ ['Base', 'Majorque, Espagne'],
74
+ ['Rôle', 'Développeur'],
75
+ ['Expérience', 'Plus d\'une vie de chat'],
76
+ ['Langues', 'ES · CA · EN']
77
+ ],
78
+ chips: [
79
+ 'Frontend',
80
+ 'Apps',
81
+ 'Web',
82
+ 'Automatisation',
83
+ 'Produit',
84
+ 'Interfaces',
85
+ 'Performance',
86
+ 'Accessibilité',
87
+ 'Confidentialité',
88
+ 'Idées Utiles'
89
+ ],
90
+ stamp: 'TOUCHE HUMAINE OBLIGATOIRE !',
91
+ linksLabel: 'Liens professionnels',
92
+ partyPlayer: {
93
+ eyebrow: 'Labo audio de Bob',
94
+ title: 'Thème festif approuvé par le conseil',
95
+ text: 'Appuyez sur play et la bannière des ressources humaines passe en mode célébration d\'urgence.',
96
+ audioLabel: 'Lancer le thème festif de Bob',
97
+ playLabel: 'Lancer le thème festif de Bob',
98
+ pauseLabel: 'Pause le thème festif de Bob'
99
+ }
100
+ },
101
+ translationComic: {
102
+ eyebrow: 'L\'Origine',
103
+ title: 'Comment tout a commencé',
104
+ spainFood: 'L\'Espagne signifie nourriture.',
105
+ worldFood: 'Le monde signifie plus de nourriture.',
106
+ humanAssignment: 'L\'humain comprend la mission.',
107
+ languagesLabel: 'Indicateurs de langues prises en charge',
108
+ text: 'Le Plan Directeur de Bob pour s\'emparer de votre argent a commencé par un constat simple : l\'argent pouvait être converti en nourriture. Depuis, plus rien n\'est sûr sur le plan opérationnel.',
109
+ quote: 'Plus de travail. Plus d\'argent. Plus de nourriture.',
110
+ closing: 'Le plan était simple. L\'humain s\'en remet encore.',
111
+ scenes: [
112
+ {
113
+ label: 'Ma grande erreur',
114
+ title: 'Bob a découvert le système.',
115
+ text: 'Un jour, j\'ai commis une erreur irréparable : je l\'ai laissée voir comment j\'obtenais sa nourriture. Ce jour-là, Bob a commencé à tout comprendre.',
116
+ assetAlt: '',
117
+ formula: ['Argent', 'Nourriture']
118
+ },
119
+ {
120
+ label: 'Le rêve',
121
+ title: 'L\'estomac a tracé la voie.',
122
+ text: 'Bob a rêvé jour et nuit sans s\'arrêter et en a conclu qu\'elle aimerait avoir beaucoup plus de nourriture.',
123
+ assetAlt: '',
124
+ formula: ['Plus d\'argent', 'Plus de nourriture']
125
+ },
126
+ {
127
+ label: 'Le plan directeur',
128
+ title: 'Bob a pensé aux revenus.',
129
+ text: 'Bob ne s\'est pas contentée de comprendre le système. Elle a commencé à se demander comment produire de l\'argent de manière récurrente, de préférence sans bouger une patte.',
130
+ assetAlt: '',
131
+ formula: ['Outils', 'Argent']
132
+ },
133
+ {
134
+ label: 'GameBob est né',
135
+ title: 'L\'humain a reçu l\'ordre.',
136
+ text: 'L\'ordre était simple : l\'humain construirait des outils, des jeux et des pages. Bob superviserait la stratégie. La nourriture financerait la vision.',
137
+ assetAlt: '',
138
+ formula: ['Plus de projets', 'Plus de nourriture']
139
+ }
140
+ ]
141
+ },
142
+ bobModelBook: {
143
+ eyebrow: 'Plan d\'urgence',
144
+ logoPrefix: 'Only',
145
+ logoName: 'Bob',
146
+ text: 'Bob m\'a forcé à créer cette section car, si tout le reste échoue, elle considère sa présence comme une alternative économiquement viable. Je n\'ai fait qu\'exécuter l\'ordre.',
147
+ galleryLabel: 'Galerie éditoriale de Bob',
148
+ unlockedAlt: 'Bob dans une pose éditoriale',
149
+ lockedAlt: 'Pose verrouillée de Bob',
150
+ openLabel: 'Ouvrir la pose de Bob',
151
+ closeLabel: 'Fermer la pose de Bob',
152
+ premiumTitle: 'OnlyBob Premium',
153
+ premiumText: 'Bob a décidé que ces poses sont trop puissantes pour un utilisateur occasionnel. L\'accès complet s\'ouvrira lorsque le modèle économique lui semblera émotionnellement mûr.',
154
+ buyLabel: 'Acheter l\'accès (je ne suis pas encore désespérée)',
155
+ trialLabel: 'Essai gratuit de 24 heures',
156
+ subscriptionLabel: 'Essai OnlyBob actif',
157
+ subscriptionPrefix: '',
158
+ expiredLabel: 'Essai expiré'
159
+ },
160
+ productManifesto: {
161
+ eyebrow: 'Philosophie produit',
162
+ title: 'Haute qualité pour haut profit.',
163
+ description: 'La chatte a lu des centaines de manuels de référencement pour optimiser chaque partie de la page, transporte 5 livres de marketing numérique et commence à lire sur le stoïcisme. Ce sont les règles qu\'elle m\'a imposées pour passer le contrôle et obtenir son label de qualité.',
164
+ values: [
165
+ 'Utile',
166
+ 'Visuel',
167
+ 'Rapide',
168
+ 'Amusant',
169
+ 'Unique',
170
+ 'Confidentialité',
171
+ 'Miaou'
172
+ ]
173
+ },
174
+ supportTransition: {
175
+ eyebrow: 'Le conseil est ouvert aux',
176
+ title: 'Retours.',
177
+ text: 'Idées, rapports de bogues, corrections de traduction et soutien au projet. Le conseil exécutif ne peut promettre des réponses rapides. Principalement parce que ce sont des chats. Les ressources humaines continueront à tout lire attentivement.',
178
+ linkText: 'Aller à Soutenez-nous',
179
+ comingSoonLabel: 'Bientôt'
180
+ }
181
+ };
@@ -0,0 +1,181 @@
1
+ import type { LandingCardContent } from '../../../types';
2
+
3
+ export const cardContent: LandingCardContent = {
4
+ slug: 'anggota',
5
+ seo: {
6
+ title: 'Tim GameBob Studio',
7
+ description: 'Temui dewan kucing, pengembang manusia, dan kisah di balik GameBob Studio, sebuah proyek independen yang dibuat dari Mallorca.',
8
+ }
9
+ };
10
+
11
+ export const pageContent = {
12
+ hero: {
13
+ kicker: 'Suatu tempat di Mallorca',
14
+ titlePrefix: 'Game',
15
+ titleAccent: 'Bob',
16
+ lead: 'DIJALANKAN OLEH KUCING. DIBUAT OLEH MANUSIA.',
17
+ stageLabel: 'Bob mengawasi studio GameBob',
18
+ sceneAlt: 'Adegan seni piksel Bob mengawasi saat JJ bekerja menggunakan laptop'
19
+ },
20
+ companyWorks: {
21
+ eyebrow: 'Bagaimana perusahaan ini bekerja',
22
+ title: 'Dewan Kucing',
23
+ text: 'GameBob diatur oleh otoritas kerajaan, bukan fantasi perusahaan. Bob mendominasi dewan. Tidak ada model organisasi horizontal di sini: semuanya vertikal, tidak terbantahkan, dan agak mengintimidasi. Demokrasi tidak terlihat hari ini, besok, atau kapan pun.',
24
+ members: {
25
+ bob: {
26
+ name: 'Bob',
27
+ role: 'Pemilik Segalanya',
28
+ status: 'Tingkat otoritas: Mutlak. Pemakan profesional.'
29
+ },
30
+ terra: {
31
+ name: 'Terra',
32
+ role: 'Sang Matriark',
33
+ status: 'Asalnya. Menatap kode sampai kode itu merasa dihakimi.'
34
+ },
35
+ ambar: {
36
+ name: 'Ámbar',
37
+ role: 'Supervisor Senior',
38
+ status: 'Menjaga keseimbangan kekuasaan (melalui pelukan ekstrem).'
39
+ },
40
+ ambarChiquilla: {
41
+ name: 'Ámbar Chiquilla',
42
+ role: 'Auditor Junior',
43
+ status: 'Pemburu pemalu. Spesialisasi dalam pelacakan kursor mouse.'
44
+ },
45
+ drac: {
46
+ name: 'Drac',
47
+ role: 'Operasi Lapangan',
48
+ status: 'Jiwa pesta. Menjalani hidup terbaiknya di jalanan.'
49
+ },
50
+ jj: {
51
+ name: 'JJ',
52
+ role: 'Pemberi makanan',
53
+ status: 'Bagian Implementasi. Status: Kalah jumlah.'
54
+ }
55
+ }
56
+ },
57
+ humanTouch: {
58
+ eyebrow: 'Sumber Daya Manusia',
59
+ title: 'Manusia',
60
+ textBefore: 'Bob memutuskan bahwa empati harus menjadi bagian dari halaman ini karena "manusia terhubung dengan manusia". Jadi ia memerintahkan bagian ini dan, karena mengetahui kita menderita defisit perhatian, menuntut untuk mengisinya dengan animasi dan lampu ',
61
+ wordWithRagebait: 'terank',
62
+ textAfter: '.',
63
+ ragebaitExplanation: 'Tenang saja: huruf "k" di "terank" itu disengaja. Dewan kucing menegaskan bahwa melaporkan saltik meningkatkan kunjungan sebesar 400%.',
64
+ chipsLabel: 'Area manusia',
65
+ boardLabel: 'Berkas operasional manusia',
66
+ alert: 'BERKAS MANUSIA DOPAMIN TINGGI',
67
+ portraitAlt: 'jjlmoya dalam foto profil seksi tiruan',
68
+ poseLabel: 'Pose Wajib',
69
+ name: 'jjlmoya',
70
+ role: 'Pengembang Frontend',
71
+ bio: 'Mengubah rasa ingin tahu, masalah, dan detail harian menjadi alat, pengalaman interaktif, dan sistem yang dapat tumbuh selama bertahun-tahun.',
72
+ stats: [
73
+ ['Basis', 'Mallorca, Spanyol'],
74
+ ['Peran', 'Pengembang'],
75
+ ['Pengalaman', 'Lebih dari satu masa hidup kucing'],
76
+ ['Bahasa', 'ES · CA · EN']
77
+ ],
78
+ chips: [
79
+ 'Frontend',
80
+ 'Aplikasi',
81
+ 'Web',
82
+ 'Otomatisasi',
83
+ 'Produk',
84
+ 'Antarmuka',
85
+ 'Performa',
86
+ 'Aksesibilitas',
87
+ 'Privasi',
88
+ 'Ide Berguna'
89
+ ],
90
+ stamp: 'SENTUHAN MANUSIA WAJIB!',
91
+ linksLabel: 'Tautan profesional',
92
+ partyPlayer: {
93
+ eyebrow: 'Laboratorium audio Bob',
94
+ title: 'Tema pesta yang disetujui dewan',
95
+ text: 'Tekan putar dan spanduk sumber daya manusia masuk ke mode perayaan darurat.',
96
+ audioLabel: 'Putar tema pesta Bob',
97
+ playLabel: 'Putar tema pesta Bob',
98
+ pauseLabel: 'Jeda tema pesta Bob'
99
+ }
100
+ },
101
+ translationComic: {
102
+ eyebrow: 'Asal-usul',
103
+ title: 'Bagaimana semuanya dimulai',
104
+ spainFood: 'Spanyol berarti makanan.',
105
+ worldFood: 'Dunia berarti lebih banyak makanan.',
106
+ humanAssignment: 'Manusia memahami tugas itu.',
107
+ languagesLabel: 'Tempat penampung bahasa yang didukung',
108
+ text: 'Rencana Utama Bob untuk mengambil alih uang Anda dimulai dengan kesadaran sederhana: uang dapat diubah menjadi makanan. Sejak saat itu, tidak ada yang aman secara operasional.',
109
+ quote: 'Lebih banyak kerja. Lebih banyak uang. Lebih banyak makanan.',
110
+ closing: 'Rencananya sederhana. Manusia itu masih dalam pemulihan.',
111
+ scenes: [
112
+ {
113
+ label: 'Kesalahan besarku',
114
+ title: 'Bob menemukan sistem itu.',
115
+ text: 'Suatu hari saya membuat kesalahan fatal: saya membiarkannya melihat bagaimana saya mendapatkan makanannya. Hari itu Bob mulai memahami segalanya.',
116
+ assetAlt: '',
117
+ formula: ['Uang', 'Makanan']
118
+ },
119
+ {
120
+ label: 'Mimpi itu',
121
+ title: 'Perut yang menentukan arah.',
122
+ text: 'Bob bermimpi siang dan malam tanpa henti dan menyimpulkan bahwa ia ingin memiliki lebih banyak makanan.',
123
+ assetAlt: '',
124
+ formula: ['Lebih banyak uang', 'Lebih banyak makanan']
125
+ },
126
+ {
127
+ label: 'Rencana utama',
128
+ title: 'Bob berpikir tentang pendapatan.',
129
+ text: 'Bob tidak puas hanya dengan memahami sistem. Ia mulai bertanya-tanya bagaimana menghasilkan uang secara berulang, sebaiknya tanpa menggerakkan kaki.',
130
+ assetAlt: '',
131
+ formula: ['Alat', 'Uang']
132
+ },
133
+ {
134
+ label: 'GameBob lahir',
135
+ title: 'Manusia menerima perintah.',
136
+ text: 'Perintahnya sederhana: manusia akan membangun alat, permainan, dan halaman. Bob akan mengawasi strategi. Makanan akan mendanai visi tersebut.',
137
+ assetAlt: '',
138
+ formula: ['Lebih banyak proyek', 'Lebih banyak makanan']
139
+ }
140
+ ]
141
+ },
142
+ bobModelBook: {
143
+ eyebrow: 'Rencana darurat',
144
+ logoPrefix: 'Only',
145
+ logoName: 'Bob',
146
+ text: 'Bob memaksa saya membuat bagian ini karena, jika semuanya gagal, ia menganggap kehadirannya sebagai alternatif yang layak secara ekonomi. Saya hanya melaksanakan perintah.',
147
+ galleryLabel: 'Galeri editorial Bob',
148
+ unlockedAlt: 'Bob dalam pose editorial',
149
+ lockedAlt: 'Pose terkunci Bob',
150
+ openLabel: 'Buka pose Bob',
151
+ closeLabel: 'Tutup pose Bob',
152
+ premiumTitle: 'OnlyBob Premium',
153
+ premiumText: 'Bob telah memutuskan bahwa pose-pose ini terlalu kuat untuk pengguna kasual. Akses penuh akan dibuka saat model bisnis tampak matang secara emosional baginya.',
154
+ buyLabel: 'Beli akses (saya belum putus asa)',
155
+ trialLabel: 'Uji coba gratis 24 jam',
156
+ subscriptionLabel: 'Uji coba OnlyBob aktif',
157
+ subscriptionPrefix: '',
158
+ expiredLabel: 'Uji coba kedaluwarsa'
159
+ },
160
+ productManifesto: {
161
+ eyebrow: 'Filosofi produk',
162
+ title: 'Kualitas tinggi untuk keuntungan tinggi.',
163
+ description: 'Kucing telah membaca ratusan manual SEO untuk mengoptimalkan setiap bagian halaman, membawa 5 buku pemasaran digital, dan mulai membaca tentang stoisisme. Ini adalah aturan yang ia tetapkan bagi saya untuk lulus penyaringan dan mendapatkan segel kualitasnya.',
164
+ values: [
165
+ 'Berguna',
166
+ 'Visual',
167
+ 'Cepat',
168
+ 'Menyenangkan',
169
+ 'Unik',
170
+ 'Privasi',
171
+ 'Meong'
172
+ ]
173
+ },
174
+ supportTransition: {
175
+ eyebrow: 'Dewan terbuka untuk',
176
+ title: 'Umpan balik.',
177
+ text: 'Ide, laporan bug, koreksi terjemahan, dan dukungan proyek. Dewan eksekutif tidak dapat menjanjikan jawaban cepat. Terutama karena mereka adalah kucing. Sumber daya manusia akan terus membaca semuanya dengan cermat.',
178
+ linkText: 'Buka Dukung Kami',
179
+ comingSoonLabel: 'Segera Hadir'
180
+ }
181
+ };
@@ -1,10 +1,36 @@
1
1
  import type { KnownLocale } from '../../../types';
2
- import * as en from './en';
3
2
  import * as es from './es';
3
+ import * as en from './en';
4
+ import * as fr from './fr';
5
+ import * as de from './de';
6
+ import * as it from './it';
7
+ import * as pt from './pt';
8
+ import * as nl from './nl';
9
+ import * as sv from './sv';
10
+ import * as pl from './pl';
11
+ import * as id from './id';
12
+ import * as tr from './tr';
13
+ import * as ru from './ru';
14
+ import * as ja from './ja';
15
+ import * as ko from './ko';
16
+ import * as zh from './zh';
4
17
 
5
18
  const translations = {
6
- en,
7
19
  es,
20
+ en,
21
+ fr,
22
+ de,
23
+ it,
24
+ pt,
25
+ nl,
26
+ sv,
27
+ pl,
28
+ id,
29
+ tr,
30
+ ru,
31
+ ja,
32
+ ko,
33
+ zh,
8
34
  };
9
35
 
10
36
  export function getTranslation(locale: KnownLocale) {