Carries the 11 page drafts plus the shared SiteNav and SiteFooter onto the project's own design system: tier-2 tokens, the published type roles, logical properties throughout, and both locales. Surfaces - The page stands on #0B0B0A with #1D1D1B bands lifted off it, as the drafts do; the body previously painted the band colour, so every band was a step too light. - A card is drawn one step off whatever it stands on (#1D1D1B on the ground, #141413 inside a band). Components paint --surface-card and a band re-points it for its subtree, so a card can never come out the same colour as its band. Shell - Nav: translucent ground with a blur, chevrons on group triggers, an accent rule under the current section, the drafts' compact dropdown card, and an EN | AR toggle in place of the globe menu. - Footer: the drafts' four-column grid, one-line brand text, Facebook as a bordered button, the EU lockup, the implemented-by row and the funding disclaimer. Pages - Home: hero with counting figures, launch band, three areas of change, newsroom, FAQ accordion and the consortium band. - The nine interior pages rebuilt and then audited section by section against their drafts. - Applications: the three-step application form now posts real submissions to the Strapi `application` type, validated server-side and working without JavaScript. Motion - Every animation in the drafts, as classes in _page-kit/motion.css: staggered entrances, scroll-driven reveals, the drifting washes (each page carries its own geometry), the sheen, the counting figures and the accordion. The drafts' coloured hover glow is deliberately not shipped. CMS - New `faq` collection type behind the home page's accordion. - `role` added to the consortium member component so an editor can supply the chip and the deliverable separately. Content - No invented figure, date, name or commitment ships: the five-working-day reply, the placeholder email and Facebook handle, the sample news, events, publications and FAQs, the invented application rules and the TBD counters are all withheld pending real content. Figures that survived (3 consortium partners, 4 areas of work, 16 human security sub-projects, Dec 2025 - Dec 2027) are verified against docs/ and the bundled draft copy. Verified: pnpm typecheck (web + CMS) and pnpm --filter web build pass; all 20 page/locale URLs render 200 through the built SSR handler, including with the CMS unreachable; no raw hex or physical-direction utility in components or routes. Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
574 lines
27 KiB
TypeScript
574 lines
27 KiB
TypeScript
/* ============================================================================
|
||
PAGE COPY - EN / AR
|
||
----------------------------------------------------------------------------
|
||
SOURCE
|
||
Home page Figma frame 253:4799 "Home-en" is the source of truth.
|
||
The headline (I253:4800;228:2609), the launch heading
|
||
(I361:10853;361:11147), the one-paragraph launch lead
|
||
with its four bold runs (I361:10853;349:8838) and the
|
||
three captions are transcribed from that frame, NOT
|
||
from docs/SHARPER Home Page .docx - the design condenses
|
||
the draft, and the draft itself is headed "Placeholder
|
||
text for design purposes - not final copy".
|
||
Everything else docs/SHARPER_Website_Draft_Section_EN_AR.docx
|
||
(sections 1, 2 and 9), which carries both columns, so
|
||
no string below is a machine translation of the other
|
||
except where a comment says so.
|
||
|
||
TRANSLATION STATUS
|
||
The Figma file has NO Arabic home frame - only the navigation and the
|
||
footer are drawn in Arabic - so the Arabic home strings marked (ar-draft)
|
||
are rebuilt from the approved Arabic column of the docx to carry the
|
||
English Figma meaning. They are NOT client-approved wording and should be
|
||
signed off before launch.
|
||
|
||
WHY IT LIVES IN THE CODE
|
||
This is page prose, not UI chrome, so it does not belong in the i18n
|
||
catalogue (which holds labels only). It is the FALLBACK: every field is
|
||
overridden by the matching Strapi field the moment an editor fills it in,
|
||
and the pages read `cms ?? draft`.
|
||
|
||
WHAT IS DELIBERATELY ABSENT
|
||
Figures. The draft marks every number "TBD" and says they must not be
|
||
published until confirmed, so there is no statistic anywhere in this file.
|
||
Figma hides the home page's figures band outright (frame 253:4835 is
|
||
hidden="true"), so the band renders only once the CMS `stats` component
|
||
supplies real numbers, and nothing stands in for it until then.
|
||
========================================================================= */
|
||
|
||
import type { Locale } from "~/i18n";
|
||
|
||
/** A title plus its description - a pillar, a workstream, a principle. */
|
||
export interface TitledCopy {
|
||
readonly title: string;
|
||
readonly description: string;
|
||
}
|
||
|
||
/**
|
||
* One consortium member, split the way the redesign draws it: a role chip, the
|
||
* member's name, then what it delivers. Both halves are the approved draft's
|
||
* own wording - section 1 writes each member as
|
||
* "<name> - <role> - <deliverable>".
|
||
*/
|
||
export interface ConsortiumCopy {
|
||
readonly name: string;
|
||
readonly role: string;
|
||
readonly description: string;
|
||
}
|
||
|
||
/**
|
||
* A run of prose that may carry emphasis. Figma sets four phrases of the launch
|
||
* lead in Bold on a lighter base run (349:8838), which a flat string cannot
|
||
* express - a plain string is the base weight, `{ em }` is the bold run.
|
||
*/
|
||
export type ProseRun = string | { readonly em: string };
|
||
|
||
export interface HomeCopy {
|
||
readonly heroHeadline: string;
|
||
readonly heroLead: string;
|
||
readonly heroCtaPrimary: string;
|
||
readonly heroCtaSecondary: string;
|
||
/**
|
||
* The figures band. Bundled so the band is never empty, and overridden by
|
||
* `home-page.stats` the moment an editor writes one. Every figure here is
|
||
* verifiable: three consortium members and the Dec 2025 - Dec 2027 run come
|
||
* from the project brief, the four areas of work are the What We Do
|
||
* workstreams, and the sixteen human security sub-projects are the approved
|
||
* EN/AR draft's own wording.
|
||
*/
|
||
readonly stats: readonly { readonly value: string; readonly label: string }[];
|
||
readonly launchEyebrow: string;
|
||
readonly launchHeading: string;
|
||
readonly launchLead: string;
|
||
readonly workHeading: string;
|
||
readonly workLinkLabel: string;
|
||
readonly newsEyebrow: string;
|
||
readonly newsHeading: string;
|
||
readonly newsEmpty: string;
|
||
readonly faqEyebrow: string;
|
||
readonly faqHeading: string;
|
||
readonly faqLead: string;
|
||
readonly faqEmpty: string;
|
||
readonly faqCtaLabel: string;
|
||
readonly consortiumHeading: string;
|
||
/**
|
||
* The same three members the About page lists, split the way the redesign
|
||
* draws them: a role chip, the name, then what they deliver.
|
||
*/
|
||
readonly consortium: readonly {
|
||
readonly role: string;
|
||
readonly name: string;
|
||
readonly description: string;
|
||
}[];
|
||
readonly networkLabel: string;
|
||
readonly partnersEmpty: string;
|
||
}
|
||
|
||
export interface AboutCopy {
|
||
/** Draft eyebrow over the hero headline - "About the project". */
|
||
readonly heroEyebrow: string;
|
||
readonly heroHeadline: string;
|
||
readonly lead: string;
|
||
/**
|
||
* The four-cell band under the hero. These are project FACTS, not figures:
|
||
* the run, the coverage, the lead partner and the funder, each one written
|
||
* out in the approved draft's first section. Nothing here is counted or
|
||
* estimated - the draft marks every statistic "TBD", so none is published.
|
||
*/
|
||
readonly facts: readonly { readonly label: string; readonly value: string }[];
|
||
readonly bodyHeading: string;
|
||
/**
|
||
* The approved body prose, one entry per paragraph. The draft sets it as two
|
||
* paragraphs beside the focus-area column, which a single string cannot
|
||
* express.
|
||
*/
|
||
readonly body: readonly string[];
|
||
readonly consortiumHeading: string;
|
||
readonly consortium: readonly ConsortiumCopy[];
|
||
readonly pillarsHeading: string;
|
||
readonly pillars: readonly TitledCopy[];
|
||
readonly legacyEyebrow: string;
|
||
readonly legacyHeading: string;
|
||
readonly legacyBody: string;
|
||
readonly legacyLinkLabel: string;
|
||
}
|
||
|
||
export interface WhatWeDoCopy {
|
||
readonly heroHeadline: string;
|
||
readonly lead: string;
|
||
/**
|
||
* The draft's own heading over the areas grid. It restates the approved
|
||
* "SHARP-ER is organised around four connected areas of work" line, which is
|
||
* why the draft prints no separate intro paragraph under it and neither does
|
||
* the page.
|
||
*/
|
||
readonly workstreamsHeading: string;
|
||
readonly workstreams: readonly TitledCopy[];
|
||
readonly valuesLabel: string;
|
||
readonly values: readonly string[];
|
||
/** Not drawn - it names the principles block for the document outline. */
|
||
readonly principlesHeading: string;
|
||
/**
|
||
* The redesign draws the four principles as tiles. These are the four
|
||
* clauses of the approved "Our approach rests on four principles…" sentence
|
||
* and nothing else: the draft gives each tile an explanatory line, none of
|
||
* which is in any approved document, so the tiles carry the clause alone.
|
||
*/
|
||
readonly principleTitles: readonly string[];
|
||
readonly activitiesCtaHeading: string;
|
||
}
|
||
|
||
export interface ContactCopy {
|
||
readonly heroHeadline: string;
|
||
readonly lead: string;
|
||
/** Not drawn - it names the form for the document outline. */
|
||
readonly formHeading: string;
|
||
/** Not drawn - it names the channels column for the document outline. */
|
||
readonly detailsHeading: string;
|
||
readonly generalEnquiries: string;
|
||
readonly websiteLabel: string;
|
||
readonly websiteHref: string;
|
||
readonly websiteText: string;
|
||
readonly contactPending: string;
|
||
readonly consortiumHeading: string;
|
||
readonly consortiumEmpty: string;
|
||
readonly sendAnother: string;
|
||
readonly errorSummaryTitle: string;
|
||
readonly errorTooLong: string;
|
||
readonly honeypotLabel: string;
|
||
readonly organisationHint: string;
|
||
/** Link text for the project's Facebook page. */
|
||
readonly facebookLabel: string;
|
||
}
|
||
|
||
export interface PageCopy {
|
||
readonly home: HomeCopy;
|
||
readonly about: AboutCopy;
|
||
readonly whatWeDo: WhatWeDoCopy;
|
||
readonly contact: ContactCopy;
|
||
}
|
||
|
||
/* ---------------------------------------------------------------------------
|
||
ENGLISH
|
||
------------------------------------------------------------------------ */
|
||
|
||
const EN: PageCopy = {
|
||
home: {
|
||
heroHeadline: "SHARP-ER Project Officially Launches in Libya",
|
||
heroLead:
|
||
"Shared Action on Rule of Law Progress — Exit Route: a nationwide initiative supporting Libya’s civil society, local institutions, and communities in advancing justice, accountability, and good governance.",
|
||
heroCtaPrimary: "Expression of Interest",
|
||
heroCtaSecondary: "About the project",
|
||
stats: [
|
||
{ value: "3", label: "Consortium partners" },
|
||
{ value: "4", label: "Areas of work" },
|
||
{ value: "16", label: "Human security sub-projects" },
|
||
{ value: "25 mo", label: "Dec 2025 – Dec 2027" },
|
||
],
|
||
launchEyebrow: "30 June · Launch event",
|
||
launchHeading: "An important start for the project",
|
||
launchLead:
|
||
"The launch brought together representatives from the European Union Delegation, the Ministry of Youth, the Ministry of Local Governance, the Ministry of Women’s Affairs, civil society organisations, partners, and stakeholders from across Libya. The event marked the opening of the Expression of Interest and the launch of this website.",
|
||
workHeading: "Three areas of change",
|
||
workLinkLabel: "What we do",
|
||
newsEyebrow: "Newsroom",
|
||
newsHeading: "News and Updates",
|
||
newsEmpty: "News and updates will appear here as they are published.",
|
||
faqEyebrow: "Frequently asked",
|
||
faqHeading: "Questions about the project",
|
||
/* The draft also promises a reply "within five working days". That
|
||
commitment is in no approved document, so it is not published here. */
|
||
faqLead: "Eligibility, timelines and how to take part.",
|
||
faqEmpty: "Answers to common questions will be published here.",
|
||
faqCtaLabel: "More in the Knowledge Hub",
|
||
consortiumHeading: "The consortium",
|
||
consortium: [
|
||
{
|
||
role: "Lead implementing partner",
|
||
name: "Acted",
|
||
description:
|
||
"Overall project management and civil society sub-projects.",
|
||
},
|
||
{
|
||
role: "Consortium partner",
|
||
name: "United Efforts Consultancy (UEC)",
|
||
description: "Network strengthening, dialogue, and peer-learning.",
|
||
},
|
||
{
|
||
role: "Consortium partner",
|
||
name: "Stichting Bureau Ensemble (SBE)",
|
||
description: "Research, perception data, and knowledge publications.",
|
||
},
|
||
],
|
||
networkLabel: "Civil society network partners",
|
||
partnersEmpty:
|
||
"Partner organisations will be listed here as they join the SHARP-ER network.",
|
||
},
|
||
|
||
about: {
|
||
heroEyebrow: "About the project",
|
||
heroHeadline: "Strengthening the Rule of Law, Together",
|
||
lead: "SHARP-ER (Shared Action on Rule of Law Progress – Exit Route) is a nationwide initiative supporting Libya’s civil society, local institutions, and communities in advancing justice, accountability, and good governance.",
|
||
facts: [
|
||
{ label: "Duration", value: "December 2025 – December 2027" },
|
||
{ label: "Coverage", value: "Nationwide, Libya" },
|
||
{ label: "Lead partner", value: "Acted" },
|
||
{ label: "Funded by", value: "The European Union" },
|
||
],
|
||
bodyHeading: "A nationwide project, delivered locally",
|
||
body: [
|
||
"Running from December 2025 to December 2027, SHARP-ER is implemented by Acted, in consortium with United Efforts Consultancy (UEC) and Stichting Bureau Ensemble (SBE), and funded by the European Union.",
|
||
"The project works nationwide across Libya, partnering with civil society organisations, municipalities, and community leaders to strengthen access to justice, build the capacity of civil society to hold institutions accountable, and improve local governance and service delivery.",
|
||
],
|
||
consortiumHeading: "The consortium",
|
||
consortium: [
|
||
{
|
||
name: "Acted",
|
||
role: "Lead implementing partner",
|
||
description:
|
||
"Overall project management and civil society sub-projects.",
|
||
},
|
||
{
|
||
name: "United Efforts Consultancy (UEC)",
|
||
role: "Consortium partner",
|
||
description: "Network strengthening, dialogue, and peer-learning.",
|
||
},
|
||
{
|
||
name: "Stichting Bureau Ensemble (SBE)",
|
||
role: "Consortium partner",
|
||
description: "Research, perception data, and knowledge publications.",
|
||
},
|
||
],
|
||
pillarsHeading: "Where we focus",
|
||
pillars: [
|
||
{
|
||
title: "Strengthening Rule of Law",
|
||
description:
|
||
"Supporting local institutions to improve access to justice and transparency",
|
||
},
|
||
{
|
||
title: "Empowering Civil Society",
|
||
description:
|
||
"Building the capacity of CSOs to strengthen their role in oversight and accountability",
|
||
},
|
||
{
|
||
title: "Supporting Local Governance",
|
||
description:
|
||
"Enhancing collaboration between municipalities and local actors to improve service delivery",
|
||
},
|
||
],
|
||
legacyEyebrow: "Building on SHARP",
|
||
legacyHeading: "Carrying the SHARP I and II network into a new phase",
|
||
legacyBody:
|
||
"SHARP-ER builds on the foundation of SHARP I and II (2019–2024), carrying its network of civil society partners and its dialogue practice into a new phase focused on sustainability and exit.",
|
||
legacyLinkLabel: "Read about the SHARP legacy",
|
||
},
|
||
|
||
whatWeDo: {
|
||
heroHeadline: "A Participatory Approach to Justice and Governance",
|
||
lead: "We work directly with civil society, municipalities, and communities — not around them.",
|
||
workstreamsHeading: "Four connected areas of work",
|
||
workstreams: [
|
||
{
|
||
title: "Capacity Building",
|
||
description:
|
||
"Training civil society organisations and local actors on governance, justice, and management, and equipping the SHARP network with peer-to-peer learning.",
|
||
},
|
||
{
|
||
title: "Institutional Support",
|
||
description:
|
||
"Strengthening the systems, procedures, and dialogue channels that connect local institutions with the people they serve.",
|
||
},
|
||
{
|
||
title: "Community Initiatives",
|
||
description:
|
||
"Funding and supporting CSO-led sub-projects, Policy-to-Rights (P2R) projects, and human-security initiatives designed and driven by local actors.",
|
||
},
|
||
{
|
||
title: "Dialogue and Coordination",
|
||
description:
|
||
"Running SUQ (Search, Understand, Question) dialogues and Civil Society Law Sessions that bring civic and government actors to the same table.",
|
||
},
|
||
],
|
||
valuesLabel: "What guides us",
|
||
values: [
|
||
"Dialogue",
|
||
"Community Leadership",
|
||
"Learning",
|
||
"Inclusion",
|
||
"Responsibility & Accountability",
|
||
],
|
||
principlesHeading: "How we work",
|
||
principleTitles: [
|
||
"Working with local actors",
|
||
"Sustainable, not one-off, solutions",
|
||
"Connecting civil society with institutions",
|
||
"Gradual, realistic institutional reform",
|
||
],
|
||
activitiesCtaHeading:
|
||
"See how this work is taking shape across the network",
|
||
},
|
||
|
||
contact: {
|
||
facebookLabel: "Follow us on Facebook",
|
||
heroHeadline: "Get in Touch",
|
||
lead: "Questions about SHARP-ER, a partnership, or a specific activity? Reach out.",
|
||
formHeading: "Send us a message",
|
||
detailsHeading: "Contact details",
|
||
generalEnquiries: "General enquiries",
|
||
websiteLabel: "Website",
|
||
websiteHref: "https://sharper.ly",
|
||
websiteText: "sharper.ly",
|
||
contactPending:
|
||
"The project’s general enquiries address will be published here once it is confirmed. In the meantime, use the form and your message will reach the team.",
|
||
consortiumHeading: "Consortium contacts",
|
||
consortiumEmpty:
|
||
"Contact details for Acted Libya, United Efforts Consultancy and Stichting Bureau Ensemble will be published here once they are confirmed.",
|
||
sendAnother: "Send another message",
|
||
errorSummaryTitle: "Please check the form",
|
||
errorTooLong: "This answer is too long.",
|
||
honeypotLabel: "Leave this field empty",
|
||
organisationHint: "The organisation you are writing on behalf of, if any.",
|
||
},
|
||
};
|
||
|
||
/* ---------------------------------------------------------------------------
|
||
ARABIC (MSA)
|
||
The prose below is the Arabic column of the same two documents, verbatim.
|
||
The few strings the documents do not provide - section headings such as
|
||
"شركاؤنا", and the three launch captions, which exist only in the English
|
||
Figma frame - are translated from the approved English and stay inside the
|
||
vocabulary the Arabic draft already uses.
|
||
------------------------------------------------------------------------ */
|
||
|
||
const AR: PageCopy = {
|
||
home: {
|
||
heroHeadline: "انطلاق مشروع SHARP-ER رسميًا في ليبيا",
|
||
heroLead:
|
||
"العمل المشترك لتعزيز سيادة القانون – مسار الخروج: مبادرة وطنية تدعم المجتمع المدني والمؤسسات المحلية والمجتمعات في ليبيا في تعزيز العدالة والمساءلة والحوكمة الرشيدة.",
|
||
heroCtaPrimary: "الدعوة للتعبير عن الاهتمام",
|
||
heroCtaSecondary: "عن المشروع",
|
||
/* Western digits, as the rest of the Arabic draft writes its numbers
|
||
("ديسمبر 2025", "SHARP I and II (2019–2024)"). */
|
||
stats: [
|
||
{ value: "3", label: "شركاء الائتلاف" },
|
||
{ value: "4", label: "مجالات العمل" },
|
||
{ value: "16", label: "مشروعًا فرعيًا للأمن الإنساني" },
|
||
{ value: "25 شهرًا", label: "ديسمبر 2025 – ديسمبر 2027" },
|
||
],
|
||
launchEyebrow: "30 يونيو · فعالية الإطلاق",
|
||
launchHeading: "بداية مهمة للمشروع",
|
||
launchLead:
|
||
"جمعت فعالية الإطلاق ممثلين عن بعثة الاتحاد الأوروبي، ووزارة الشباب، ووزارة الحكم المحلي، ووزارة شؤون المرأة، ومنظمات المجتمع المدني، والشركاء، وأصحاب المصلحة من مختلف أنحاء ليبيا. وشهد الحدث افتتاح الدعوة للتعبير عن الاهتمام وإطلاق هذا الموقع الإلكتروني.",
|
||
workHeading: "ثلاثة مجالات للتغيير",
|
||
workLinkLabel: "ماذا نفعل",
|
||
newsEyebrow: "غرفة الأخبار",
|
||
newsHeading: "الأخبار والمستجدات",
|
||
newsEmpty: "ستظهر الأخبار والمستجدات هنا فور نشرها.",
|
||
faqEyebrow: "الأسئلة الشائعة",
|
||
faqHeading: "أسئلة حول المشروع",
|
||
faqLead: "شروط الأهلية والجداول الزمنية وكيفية المشاركة.",
|
||
faqEmpty: "ستُنشر إجابات الأسئلة الشائعة هنا قريبًا.",
|
||
faqCtaLabel: "المزيد في مركز المعرفة",
|
||
consortiumHeading: "الائتلاف المنفّذ",
|
||
consortium: [
|
||
{
|
||
role: "الشريك المنفّذ الرئيسي",
|
||
name: "Acted",
|
||
description: "الإدارة العامة للمشروع والمشاريع الفرعية لمنظمات المجتمع المدني.",
|
||
},
|
||
{
|
||
role: "شريك في الائتلاف",
|
||
name: "United Efforts Consultancy (UEC)",
|
||
description: "تعزيز الشبكة، والحوار، والتعلّم بين الأقران.",
|
||
},
|
||
{
|
||
role: "شريك في الائتلاف",
|
||
name: "Stichting Bureau Ensemble (SBE)",
|
||
description: "البحث، وبيانات الاستطلاع، والمنشورات المعرفية.",
|
||
},
|
||
],
|
||
networkLabel: "شركاء شبكة المجتمع المدني",
|
||
partnersEmpty:
|
||
"ستُدرج المنظمات الشريكة هنا فور انضمامها إلى شبكة SHARP-ER.",
|
||
},
|
||
|
||
about: {
|
||
heroEyebrow: "عن المشروع",
|
||
heroHeadline: "نحو تعزيز سيادة القانون، معًا",
|
||
lead: "SHARP-ER (العمل المشترك لتعزيز سيادة القانون – مسار الخروج) هو مبادرة وطنية تدعم المجتمع المدني والمؤسسات المحلية والمجتمعات الليبية في تعزيز العدالة والمساءلة والحوكمة الرشيدة.",
|
||
/* Western digits, as the Arabic column of the approved draft writes its
|
||
own dates ("ديسمبر 2025", "(2019–2024)"). */
|
||
facts: [
|
||
{ label: "مدة المشروع", value: "ديسمبر 2025 – ديسمبر 2027" },
|
||
{ label: "نطاق العمل", value: "على مستوى ليبيا بأكملها" },
|
||
{ label: "الشريك المنفّذ الرئيسي", value: "Acted" },
|
||
{ label: "بتمويل من", value: "الاتحاد الأوروبي" },
|
||
],
|
||
bodyHeading: "مشروع وطني يُنفَّذ محليًا",
|
||
body: [
|
||
"يمتد المشروع من ديسمبر 2025 إلى ديسمبر 2027، ويُنفَّذ من قِبل منظمة Acted بالشراكة مع United Efforts Consultancy (UEC) وStichting Bureau Ensemble (SBE)، وبتمويل من الاتحاد الأوروبي.",
|
||
"يعمل المشروع على مستوى ليبيا بأكملها، بالتعاون مع منظمات المجتمع المدني والبلديات والقيادات المجتمعية، من أجل تحسين الوصول إلى العدالة، وبناء قدرات المجتمع المدني على مساءلة المؤسسات، وتحسين الحوكمة المحلية وتقديم الخدمات.",
|
||
],
|
||
consortiumHeading: "الائتلاف المنفّذ",
|
||
consortium: [
|
||
{
|
||
name: "Acted",
|
||
role: "الشريك المنفّذ الرئيسي",
|
||
description:
|
||
"الإدارة العامة للمشروع والمشاريع الفرعية لمنظمات المجتمع المدني.",
|
||
},
|
||
{
|
||
name: "United Efforts Consultancy (UEC)",
|
||
role: "شريك في الائتلاف",
|
||
description: "تعزيز الشبكة، والحوار، والتعلّم بين الأقران.",
|
||
},
|
||
{
|
||
name: "Stichting Bureau Ensemble (SBE)",
|
||
role: "شريك في الائتلاف",
|
||
description: "البحث، وبيانات الاستطلاع، والمنشورات المعرفية.",
|
||
},
|
||
],
|
||
pillarsHeading: "محاور تركيزنا",
|
||
pillars: [
|
||
{
|
||
title: "تعزيز سيادة القانون",
|
||
description:
|
||
"دعم المؤسسات المحلية لتحسين الوصول إلى العدالة وتعزيز الشفافية",
|
||
},
|
||
{
|
||
title: "تمكين المجتمع المدني",
|
||
description:
|
||
"بناء قدرات منظمات المجتمع المدني لتعزيز دورها في الرقابة والمساءلة",
|
||
},
|
||
{
|
||
title: "دعم الحوكمة المحلية",
|
||
description:
|
||
"تعزيز التعاون بين البلديات والجهات الفاعلة المحلية لتحسين تقديم الخدمات",
|
||
},
|
||
],
|
||
legacyEyebrow: "استكمالًا لمشروع SHARP",
|
||
legacyHeading:
|
||
"حمل شبكة SHARP الأول والثاني إلى مرحلة جديدة",
|
||
legacyBody:
|
||
"يبني SHARP-ER على الأساس الذي أرساه مشروعا SHARP الأول والثاني (2019–2024)، حاملًا معه شبكة الشركاء من المجتمع المدني وممارسة الحوار إلى مرحلة جديدة تركّز على الاستدامة ومسار الخروج.",
|
||
legacyLinkLabel: "اطّلع على إرث مشروع SHARP",
|
||
},
|
||
|
||
whatWeDo: {
|
||
heroHeadline: "نهج تشاركي في العدالة والحوكمة",
|
||
lead: "نعمل مباشرة مع المجتمع المدني والبلديات والمجتمعات المحلية، لا من حولها.",
|
||
/* The approved Arabic column writes the same line as a sentence -
|
||
"يقوم عمل SHARP-ER على أربعة محاور مترابطة" - which the draft's frame
|
||
sets as the heading itself. */
|
||
workstreamsHeading: "أربعة محاور عمل مترابطة",
|
||
workstreams: [
|
||
{
|
||
title: "بناء القدرات",
|
||
description:
|
||
"تدريب منظمات المجتمع المدني والجهات المحلية على الحوكمة والعدالة والإدارة، وتزويد شبكة SHARP بالتعلّم بين الأقران.",
|
||
},
|
||
{
|
||
title: "الدعم المؤسسي",
|
||
description:
|
||
"تعزيز الأنظمة والإجراءات وقنوات الحوار التي تربط المؤسسات المحلية بالمجتمعات التي تخدمها.",
|
||
},
|
||
{
|
||
title: "المبادرات المجتمعية",
|
||
description:
|
||
"تمويل ودعم مشاريع فرعية تقودها منظمات المجتمع المدني، ومشاريع “من السياسة إلى الحقوق” (P2R)، ومبادرات الأمن البشري التي يصممها الفاعلون المحليون ويقودونها.",
|
||
},
|
||
{
|
||
title: "الحوار والتنسيق",
|
||
description:
|
||
"تنظيم حوارات SUQ (ابحث، افهم، اسأل) وجلسات قانون المجتمع المدني التي تجمع الفاعلين المدنيين والحكوميين حول طاولة واحدة.",
|
||
},
|
||
],
|
||
valuesLabel: "ما يوجّه عملنا",
|
||
values: [
|
||
"الحوار",
|
||
"القيادة المجتمعية",
|
||
"التعلّم",
|
||
"الشمول",
|
||
"المساءلة والمسؤولية",
|
||
],
|
||
principlesHeading: "كيف نعمل",
|
||
principleTitles: [
|
||
"العمل مع الفاعلين المحليين",
|
||
"حلول مستدامة لا آنية",
|
||
"الربط بين المجتمع المدني والمؤسسات",
|
||
"إصلاح مؤسسي تدريجي وواقعي",
|
||
],
|
||
activitiesCtaHeading: "اطّلع على كيفية تجسّد هذا العمل عبر الشبكة",
|
||
},
|
||
|
||
contact: {
|
||
facebookLabel: "تابعونا على فيسبوك",
|
||
heroHeadline: "تواصل معنا",
|
||
lead: "لديك استفسار حول SHARP-ER، أو شراكة محتملة، أو نشاط معيّن؟ راسلنا.",
|
||
formHeading: "أرسل لنا رسالة",
|
||
detailsHeading: "بيانات التواصل",
|
||
generalEnquiries: "للاستفسارات العامة",
|
||
websiteLabel: "الموقع الإلكتروني",
|
||
websiteHref: "https://sharper.ly",
|
||
websiteText: "sharper.ly",
|
||
contactPending:
|
||
"سيُنشر هنا البريد الإلكتروني العام للمشروع فور تأكيده. وفي غضون ذلك، استخدم النموذج وستصل رسالتك إلى الفريق.",
|
||
consortiumHeading: "جهات اتصال الائتلاف",
|
||
consortiumEmpty:
|
||
"ستُنشر هنا بيانات التواصل الخاصة بـ Acted ليبيا، وUnited Efforts Consultancy، وStichting Bureau Ensemble فور تأكيدها.",
|
||
sendAnother: "إرسال رسالة أخرى",
|
||
errorSummaryTitle: "يرجى مراجعة النموذج",
|
||
errorTooLong: "هذه الإجابة طويلة جدًا.",
|
||
honeypotLabel: "اترك هذا الحقل فارغًا",
|
||
organisationHint: "المنظمة التي تراسلنا نيابةً عنها، إن وُجدت.",
|
||
},
|
||
};
|
||
|
||
const COPY: Readonly<Record<Locale, PageCopy>> = { en: EN, ar: AR };
|
||
|
||
/** The draft copy for a locale. Always defined for both published locales. */
|
||
export function pageCopy(locale: Locale): PageCopy {
|
||
return COPY[locale] ?? EN;
|
||
}
|