Stats e prodotti non usavano il locale, quindi dopo lo switch lingua lo scroll mostrava ancora l'italiano. Co-authored-by: Cursor <cursoragent@cursor.com>
209 lines
7.8 KiB
TypeScript
209 lines
7.8 KiB
TypeScript
/**
|
|
* Pagina Novità / News / ข่าว — contenuti localizzati.
|
|
*/
|
|
import type { SupportedLocale } from './home/navigation';
|
|
|
|
export type NewsBullet = {
|
|
title?: string;
|
|
text: string;
|
|
};
|
|
|
|
export type NewsSection = {
|
|
title: string;
|
|
paragraphs?: readonly string[];
|
|
bullets?: readonly NewsBullet[];
|
|
};
|
|
|
|
type NewsLocaleBundle = {
|
|
page: {
|
|
title: string;
|
|
description: string;
|
|
heading: string;
|
|
lead: string;
|
|
};
|
|
statusBanner: string;
|
|
sections: readonly NewsSection[];
|
|
contact: {
|
|
before: string;
|
|
linkLabel: string;
|
|
href: string;
|
|
after: string;
|
|
};
|
|
};
|
|
|
|
const newsByLocale: Record<SupportedLocale, NewsLocaleBundle> = {
|
|
it: {
|
|
page: {
|
|
title: 'Novità — NexStudio',
|
|
description: 'Novità, release e articoli da NexStudio.',
|
|
heading: 'Novità',
|
|
lead:
|
|
'Aggiornamenti ufficiali su piattaforma, compliance, infrastruttura e contenuti editoriali.',
|
|
},
|
|
statusBanner:
|
|
'Stato editoriale: canale attivo. Le prossime pubblicazioni verranno aggiornate su questa pagina con frequenza periodica.',
|
|
sections: [
|
|
{
|
|
title: 'Programma editoriale',
|
|
bullets: [
|
|
{
|
|
title: 'Release tecniche:',
|
|
text: 'aggiornamenti su funzionalità, integrazioni e miglioramenti di stabilità.',
|
|
},
|
|
{
|
|
title: 'Compliance:',
|
|
text: 'novità su policy, sicurezza applicativa e adempimenti normativi.',
|
|
},
|
|
{
|
|
title: 'Case e risultati:',
|
|
text: 'note operative su adozione, scalabilità e impatti di business.',
|
|
},
|
|
],
|
|
},
|
|
{
|
|
title: 'Canali di distribuzione',
|
|
bullets: [
|
|
{
|
|
text: 'Questa pagina resta il punto di riferimento ufficiale per annunci e changelog sintetici.',
|
|
},
|
|
{
|
|
text: 'La newsletter è attiva dal footer del sito (iscrizione con conferma email).',
|
|
},
|
|
{
|
|
text: 'I contenuti long-form potranno essere pubblicati anche su canali esterni, con rimando qui.',
|
|
},
|
|
],
|
|
},
|
|
{
|
|
title: 'Archivio',
|
|
paragraphs: [
|
|
'In questa fase il sito è in pre-lancio operativo. Il primo blocco di news verrà pubblicato con il go-live ufficiale.',
|
|
],
|
|
},
|
|
],
|
|
contact: {
|
|
before:
|
|
'Per richieste stampa, partnership o approfondimenti tecnici è possibile usare il form nella sezione ',
|
|
linkLabel: 'Contatti',
|
|
href: '/#contatti',
|
|
after: '.',
|
|
},
|
|
},
|
|
en: {
|
|
page: {
|
|
title: 'News — NexStudio',
|
|
description: 'News, releases, and articles from NexStudio.',
|
|
heading: 'News',
|
|
lead:
|
|
'Official updates on platform, compliance, infrastructure, and editorial content.',
|
|
},
|
|
statusBanner:
|
|
'Editorial status: channel active. Upcoming publications will be updated on this page on a periodic basis.',
|
|
sections: [
|
|
{
|
|
title: 'Editorial programme',
|
|
bullets: [
|
|
{
|
|
title: 'Technical releases:',
|
|
text: 'updates on features, integrations, and stability improvements.',
|
|
},
|
|
{
|
|
title: 'Compliance:',
|
|
text: 'news on policies, application security, and regulatory requirements.',
|
|
},
|
|
{
|
|
title: 'Cases and results:',
|
|
text: 'operational notes on adoption, scalability, and business impact.',
|
|
},
|
|
],
|
|
},
|
|
{
|
|
title: 'Distribution channels',
|
|
bullets: [
|
|
{
|
|
text: 'This page remains the official reference point for announcements and concise changelogs.',
|
|
},
|
|
{
|
|
text: 'The newsletter is available from the site footer (subscription with email confirmation).',
|
|
},
|
|
{
|
|
text: 'Long-form content may also be published on external channels, with a link back here.',
|
|
},
|
|
],
|
|
},
|
|
{
|
|
title: 'Archive',
|
|
paragraphs: [
|
|
'At this stage the site is in pre-launch operations. The first block of news will be published with the official go-live.',
|
|
],
|
|
},
|
|
],
|
|
contact: {
|
|
before:
|
|
'For press requests, partnerships, or technical deep-dives, you can use the form in the ',
|
|
linkLabel: 'Contacts',
|
|
href: '/#contatti',
|
|
after: ' section.',
|
|
},
|
|
},
|
|
th: {
|
|
page: {
|
|
title: 'ข่าว — NexStudio',
|
|
description: 'ข่าว รีลีส และบทความจาก NexStudio',
|
|
heading: 'ข่าว',
|
|
lead:
|
|
'อัปเดตอย่างเป็นทางการเกี่ยวกับแพลตฟอร์ม การปฏิบัติตามกฎ โครงสร้างพื้นฐาน และเนื้อหาบรรณาธิการ',
|
|
},
|
|
statusBanner:
|
|
'สถานะบรรณาธิการ: ช่องทางใช้งานอยู่ สิ่งที่จะเผยแพร่ต่อไปจะอัปเดตบนหน้านี้เป็นระยะ',
|
|
sections: [
|
|
{
|
|
title: 'แผนบรรณาธิการ',
|
|
bullets: [
|
|
{
|
|
title: 'รีลีสทางเทคนิค:',
|
|
text: 'อัปเดตฟีเจอร์ การผสานระบบ และการปรับปรุงความเสถียร',
|
|
},
|
|
{
|
|
title: 'การปฏิบัติตามกฎ:',
|
|
text: 'ข่าวเกี่ยวกับนโยบาย ความปลอดภัยของแอปพลิเคชัน และข้อกำหนดด้านกฎระเบียบ',
|
|
},
|
|
{
|
|
title: 'กรณีศึกษาและผลลัพธ์:',
|
|
text: 'บันทึกเชิงปฏิบัติเกี่ยวกับการนำไปใช้ ความสามารถในการขยายผล และผลกระทบทางธุรกิจ',
|
|
},
|
|
],
|
|
},
|
|
{
|
|
title: 'ช่องทางการเผยแพร่',
|
|
bullets: [
|
|
{
|
|
text: 'หน้านี้ยังคงเป็นจุดอ้างอิงอย่างเป็นทางการสำหรับประกาศและ changelog แบบสรุป',
|
|
},
|
|
{
|
|
text: 'จดหมายข่าวเปิดใช้งานจากส่วนท้ายของเว็บไซต์ (สมัครพร้อมยืนยันอีเมล)',
|
|
},
|
|
{
|
|
text: 'เนื้อหายาวอาจเผยแพร่บนช่องทางภายนอกด้วย โดยมีลิงก์กลับมายังที่นี่',
|
|
},
|
|
],
|
|
},
|
|
{
|
|
title: 'คลังข่าว',
|
|
paragraphs: [
|
|
'ในระยะนี้เว็บไซต์อยู่ในช่วงก่อนเปิดใช้งานอย่างเป็นทางการ ชุดข่าวชุดแรกจะเผยแพร่พร้อมการเปิดตัวอย่างเป็นทางการ',
|
|
],
|
|
},
|
|
],
|
|
contact: {
|
|
before:
|
|
'สำหรับคำขอสื่อ ความร่วมมือ หรือข้อมูลเชิงลึกทางเทคนิค สามารถใช้แบบฟอร์มในส่วน ',
|
|
linkLabel: 'ติดต่อ',
|
|
href: '/#contatti',
|
|
after: ' ได้',
|
|
},
|
|
},
|
|
};
|
|
|
|
export const getNews = (locale: SupportedLocale) => newsByLocale[locale];
|