@almadar/core 10.89.0 → 10.90.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 (36) hide show
  1. package/dist/builders.d.ts +3 -3
  2. package/dist/builders.js +9 -2
  3. package/dist/builders.js.map +1 -1
  4. package/dist/{effect-CdLBg9zL.d.ts → effect-7jQQxiIt.d.ts} +58 -42
  5. package/dist/{entityAccess-BmZHpQUv.d.ts → entityAccess-CpHfCQA3.d.ts} +1 -1
  6. package/dist/factory/index.d.ts +4 -4
  7. package/dist/factory/index.js +467 -9
  8. package/dist/factory/index.js.map +1 -1
  9. package/dist/factory-runtime/index.d.ts +3 -3
  10. package/dist/factory-runtime/index.js +9 -2
  11. package/dist/factory-runtime/index.js.map +1 -1
  12. package/dist/i18n/index.js +6 -0
  13. package/dist/i18n/index.js.map +1 -1
  14. package/dist/{index-CV_iM5Cm.d.ts → index-BresfHJy.d.ts} +63 -6
  15. package/dist/index.d.ts +34 -12
  16. package/dist/index.js +582 -17
  17. package/dist/index.js.map +1 -1
  18. package/dist/mock/index.d.ts +54 -5
  19. package/dist/mock/index.js +33 -3
  20. package/dist/mock/index.js.map +1 -1
  21. package/dist/patterns/component-mapping.json +6 -1
  22. package/dist/patterns/event-contracts.json +1 -1
  23. package/dist/patterns/index.d.ts +1160 -14
  24. package/dist/patterns/index.js +545 -12
  25. package/dist/patterns/index.js.map +1 -1
  26. package/dist/patterns/integrators-registry.json +72 -1
  27. package/dist/patterns/patterns-registry.json +461 -8
  28. package/dist/patterns/registry.json +461 -8
  29. package/dist/patterns/services-registry.json +150 -64
  30. package/dist/{schema-DYC_RnBX.d.ts → schema-C52juBr8.d.ts} +495 -323
  31. package/dist/{trait-DmWdtKlP.d.ts → trait-CFiL1YUN.d.ts} +98 -55
  32. package/dist/types/index.d.ts +5 -5
  33. package/dist/types/index.js +11 -6
  34. package/dist/types/index.js.map +1 -1
  35. package/dist/{types-DdK77hq2.d.ts → types-BgC8ETnl.d.ts} +2 -2
  36. package/package.json +1 -1
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/i18n/orb-notation.json","../../src/i18n/en.json","../../src/i18n/ar.json","../../src/i18n/sl.json","../../src/i18n/lolo-lexer.ts","../../src/i18n/localize.ts","../../src/i18n/index.ts"],"names":["start","isExpression"],"mappings":"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","file":"index.js","sourcesContent":["{\n \"reason\": \"Design-system token NAMES reachable only under a theme `tokens` node. They are keys of the .orb schema but notation, not language vocabulary, so they are excluded from the `orb` i18n section (owner ruling 2026-09-07). Regenerate with: pnpm --filter @almadar/core run gen:orb-notation\",\n \"keys\": [\n \"2xl\",\n \"3xl\",\n \"4xl\",\n \"accent\",\n \"accentForeground\",\n \"background\",\n \"base\",\n \"bodyDefault\",\n \"bodyEmphasis\",\n \"bodyFamily\",\n \"bodyQuiet\",\n \"border\",\n \"borderHairline\",\n \"borderHeavy\",\n \"borderHover\",\n \"borderStandard\",\n \"buttonHeightLg\",\n \"buttonHeightMd\",\n \"buttonHeightSm\",\n \"caption\",\n \"card\",\n \"cardElevation\",\n \"cardForeground\",\n \"cardPaddingLg\",\n \"cardPaddingMd\",\n \"cardPaddingSm\",\n \"defaultSize\",\n \"dialogElevation\",\n \"dialogPadding\",\n \"display-1\",\n \"display-2\",\n \"displayFamily\",\n \"dramatic\",\n \"duration\",\n \"durations\",\n \"easing\",\n \"easings\",\n \"emphasized\",\n \"emptyAsset\",\n \"enter\",\n \"error\",\n \"errorAsset\",\n \"errorForeground\",\n \"exit\",\n \"expand\",\n \"family\",\n \"fast\",\n \"foreground\",\n \"headingMajor\",\n \"headingMinor\",\n \"hover\",\n \"info\",\n \"infoForeground\",\n \"input\",\n \"inputHeightLg\",\n \"inputHeightMd\",\n \"inputHeightSm\",\n \"instant\",\n \"intents\",\n \"lg\",\n \"lineHeight\",\n \"linear\",\n \"loadingAsset\",\n \"monoFamily\",\n \"muted\",\n \"mutedForeground\",\n \"normal\",\n \"numeric\",\n \"onboardingAsset\",\n \"placeholder\",\n \"popoverElevation\",\n \"press\",\n \"primary\",\n \"primaryForeground\",\n \"primaryHover\",\n \"radiusContainer\",\n \"radiusInteractive\",\n \"radiusPill\",\n \"ring\",\n \"rowHeightCompact\",\n \"rowHeightNormal\",\n \"rowHeightSpacious\",\n \"scale\",\n \"secondary\",\n \"secondaryForeground\",\n \"secondaryHover\",\n \"sectionGap\",\n \"size\",\n \"slot\",\n \"slow\",\n \"sm\",\n \"space0\",\n \"space1\",\n \"space10\",\n \"space11\",\n \"space12\",\n \"space2\",\n \"space3\",\n \"space4\",\n \"space5\",\n \"space6\",\n \"space7\",\n \"space8\",\n \"space9\",\n \"spring\",\n \"standard\",\n \"strokeWidth\",\n \"success\",\n \"successForeground\",\n \"surface\",\n \"surfaceHover\",\n \"tableBorder\",\n \"tableHeader\",\n \"tableRowHover\",\n \"toastElevation\",\n \"warning\",\n \"warningForeground\",\n \"weight\",\n \"xl\",\n \"xs\"\n ]\n}\n","{\n \"meta\": {\n \"code\": \"en\",\n \"name\": \"English\",\n \"rtl\": false\n },\n \"keywords\": {\n \"app\": \"app\",\n \"orbital\": \"orbital\",\n \"uses\": \"uses\",\n \"expects\": \"expects\",\n \"entity\": \"entity\",\n \"type\": \"type\",\n \"derived\": \"derived\",\n \"trait\": \"trait\",\n \"initial\": \"initial\",\n \"state\": \"state\",\n \"for\": \"for\",\n \"page\": \"page\",\n \"as\": \"as\",\n \"theme\": \"theme\",\n \"emits\": \"emits\",\n \"listens\": \"listens\",\n \"ticks\": \"ticks\",\n \"config\": \"config\",\n \"when\": \"when\",\n \"with\": \"with\",\n \"from\": \"from\",\n \"to\": \"to\",\n \"every\": \"every\",\n \"capabilities\": \"capabilities\",\n \"match\": \"match\",\n \"external\": \"external\",\n \"internal\": \"internal\",\n \"on\": \"on\",\n \"name\": \"name\",\n \"fields\": \"fields\",\n \"events\": \"events\",\n \"event\": \"event\",\n \"emitsScope\": \"emitsScope\",\n \"identity\": \"identity\",\n \"pages\": \"pages\",\n \"omit\": \"omit\",\n \"only\": \"only\",\n \"roles\": \"roles\",\n \"entities\": \"entities\",\n \"extend\": \"extend\"\n },\n \"shapes\": {\n \"Entity\": \"Entity\",\n \"Trait\": \"Trait\",\n \"Page\": \"Page\",\n \"Orbital\": \"Orbital\",\n \"Event\": \"Event\"\n },\n \"tags\": {\n \"persistent\": \"persistent\",\n \"runtime\": \"runtime\",\n \"shared\": \"shared\",\n \"identity\": \"identity\",\n \"instance\": \"instance\",\n \"collection\": \"collection\"\n },\n \"categories\": {\n \"interaction\": \"interaction\",\n \"integration\": \"integration\",\n \"lifecycle\": \"lifecycle\",\n \"game-core\": \"game-core\",\n \"game-entity\": \"game-entity\",\n \"game-ui\": \"game-ui\"\n },\n \"capabilities\": {\n \"read\": \"read\",\n \"write\": \"write\",\n \"browse\": \"browse\",\n \"create\": \"create\",\n \"update\": \"update\",\n \"delete\": \"delete\",\n \"notify\": \"notify\",\n \"schedule\": \"schedule\",\n \"invoke\": \"invoke\"\n },\n \"annotations\": {\n \"key\": \"key\",\n \"unique\": \"unique\",\n \"intrinsic\": \"intrinsic\",\n \"label\": \"label\",\n \"description\": \"description\",\n \"synonyms\": \"synonyms\",\n \"tier\": \"tier\",\n \"rebindable\": \"rebindable\",\n \"read\": \"read\",\n \"create\": \"create\",\n \"update\": \"update\",\n \"delete\": \"delete\",\n \"icon\": \"icon\"\n },\n \"sigils\": {\n \"entity\": \"entity\",\n \"payload\": \"payload\",\n \"state\": \"state\",\n \"now\": \"now\",\n \"config\": \"config\",\n \"user\": \"user\",\n \"trait\": \"trait\"\n },\n \"effects\": {\n \"set\": \"set\",\n \"fetch\": \"fetch\",\n \"persist\": \"persist\",\n \"emit\": \"emit\",\n \"navigate\": \"navigate\",\n \"navigate-back\": \"navigate-back\",\n \"render-ui\": \"render-ui\",\n \"notify\": \"notify\",\n \"ref\": \"ref\",\n \"call-service\": \"call-service\",\n \"invoke\": \"invoke\",\n \"do\": \"do\",\n \"if\": \"if\",\n \"let\": \"let\",\n \"fn\": \"fn\",\n \"lambda\": \"lambda\",\n \"match\": \"match\",\n \"when\": \"when\"\n },\n \"types\": {\n \"string\": \"string\",\n \"number\": \"number\",\n \"int\": \"int\",\n \"float\": \"float\",\n \"bool\": \"bool\",\n \"boolean\": \"boolean\",\n \"timestamp\": \"timestamp\",\n \"date\": \"date\",\n \"datetime\": \"datetime\",\n \"duration\": \"duration\",\n \"money\": \"money\",\n \"scalar\": \"scalar\",\n \"file\": \"file\",\n \"email\": \"email\",\n \"url\": \"url\",\n \"phone\": \"phone\",\n \"uuid\": \"uuid\",\n \"image\": \"image\",\n \"icon\": \"icon\",\n \"asset\": \"asset\",\n \"component\": \"component\",\n \"object\": \"object\",\n \"array\": \"array\",\n \"enum\": \"enum\",\n \"relation\": \"relation\",\n \"node\": \"node\",\n \"union\": \"union\",\n \"void\": \"void\",\n \"null\": \"null\",\n \"any\": \"any\",\n \"trait\": \"trait\",\n \"entity\": \"entity\",\n \"event\": \"event\",\n \"slot\": \"slot\",\n \"pattern\": \"pattern\",\n \"Map\": \"Map\",\n \"secret\": \"secret\",\n \"SExpr\": \"SExpr\"\n },\n \"units\": {\n \"ms\": \"ms\",\n \"s\": \"s\",\n \"m\": \"m\",\n \"h\": \"h\",\n \"d\": \"d\"\n },\n \"literals\": {\n \"true\": \"true\",\n \"false\": \"false\",\n \"null\": \"null\"\n },\n \"reservedEvents\": {\n \"INIT\": \"INIT\"\n },\n \"orb\": {\n \"_metadata\": \"_metadata\",\n \"_resolved\": \"_resolved\",\n \"access_waivers\": \"access_waivers\",\n \"alias\": \"alias\",\n \"animations\": \"animations\",\n \"appliesTo\": \"appliesTo\",\n \"as\": \"as\",\n \"aspect\": \"aspect\",\n \"assetRef\": \"assetRef\",\n \"at\": \"at\",\n \"auth\": \"auth\",\n \"auxiliaryEntities\": \"auxiliaryEntities\",\n \"bakedName\": \"bakedName\",\n \"baseUrl\": \"baseUrl\",\n \"behavior\": \"behavior\",\n \"capabilities\": \"capabilities\",\n \"cardinality\": \"cardinality\",\n \"category\": \"category\",\n \"className\": \"className\",\n \"classification\": \"classification\",\n \"collection\": \"collection\",\n \"color\": \"color\",\n \"colors\": \"colors\",\n \"component\": \"component\",\n \"config\": \"config\",\n \"configProvenance\": \"configProvenance\",\n \"container\": \"container\",\n \"content\": \"content\",\n \"create\": \"create\",\n \"create_policy\": \"create_policy\",\n \"createdAt\": \"createdAt\",\n \"curName\": \"curName\",\n \"customPatterns\": \"customPatterns\",\n \"darkMode\": \"darkMode\",\n \"dataEntities\": \"dataEntities\",\n \"default\": \"default\",\n \"definerKnob\": \"definerKnob\",\n \"delayMs\": \"delayMs\",\n \"delete\": \"delete\",\n \"delete_policy\": \"delete_policy\",\n \"density\": \"density\",\n \"description\": \"description\",\n \"description_visual_prompt\": \"description_visual_prompt\",\n \"design\": \"design\",\n \"designTokens\": \"designTokens\",\n \"detailPattern\": \"detailPattern\",\n \"device\": \"device\",\n \"dimension\": \"dimension\",\n \"domainContext\": \"domainContext\",\n \"effectRow\": \"effectRow\",\n \"effects\": \"effects\",\n \"elevation\": \"elevation\",\n \"emitIds\": \"emitIds\",\n \"emits\": \"emits\",\n \"emitsScope\": \"emitsScope\",\n \"enabled\": \"enabled\",\n \"entities\": \"entities\",\n \"entity\": \"entity\",\n \"entityBindingDescription\": \"entityBindingDescription\",\n \"entityBindingSynonyms\": \"entityBindingSynonyms\",\n \"entityContract\": \"entityContract\",\n \"entityId\": \"entityId\",\n \"entityRebindable\": \"entityRebindable\",\n \"entityRefIds\": \"entityRefIds\",\n \"entries\": \"entries\",\n \"env\": \"env\",\n \"equals\": \"equals\",\n \"event\": \"event\",\n \"eventId\": \"eventId\",\n \"eventIds\": \"eventIds\",\n \"events\": \"events\",\n \"expects\": \"expects\",\n \"exposes\": \"exposes\",\n \"extend\": \"extend\",\n \"extends\": \"extends\",\n \"extendsId\": \"extendsId\",\n \"field\": \"field\",\n \"fields\": \"fields\",\n \"flowPattern\": \"flowPattern\",\n \"foreignKey\": \"foreignKey\",\n \"formPattern\": \"formPattern\",\n \"forwardedFrom\": \"forwardedFrom\",\n \"from\": \"from\",\n \"geometry\": \"geometry\",\n \"guard\": \"guard\",\n \"guards\": \"guards\",\n \"headers\": \"headers\",\n \"icon\": \"icon\",\n \"iconography\": \"iconography\",\n \"id\": \"id\",\n \"identity\": \"identity\",\n \"illustration\": \"illustration\",\n \"inbound\": \"inbound\",\n \"initialEffects\": \"initialEffects\",\n \"instances\": \"instances\",\n \"interactive\": \"interactive\",\n \"interval\": \"interval\",\n \"intrinsic\": \"intrinsic\",\n \"isFinal\": \"isFinal\",\n \"isInitial\": \"isInitial\",\n \"isTerminal\": \"isTerminal\",\n \"item\": \"item\",\n \"items\": \"items\",\n \"key\": \"key\",\n \"keyName\": \"keyName\",\n \"kind\": \"kind\",\n \"knob\": \"knob\",\n \"label\": \"label\",\n \"ledger\": \"ledger\",\n \"linkedEntity\": \"linkedEntity\",\n \"linkedEntityId\": \"linkedEntityId\",\n \"listPattern\": \"listPattern\",\n \"listens\": \"listens\",\n \"location\": \"location\",\n \"max\": \"max\",\n \"maxAttempts\": \"maxAttempts\",\n \"min\": \"min\",\n \"motion\": \"motion\",\n \"mounts\": \"mounts\",\n \"name\": \"name\",\n \"omit\": \"omit\",\n \"onDelete\": \"onDelete\",\n \"onEntry\": \"onEntry\",\n \"onExit\": \"onExit\",\n \"only\": \"only\",\n \"orbital\": \"orbital\",\n \"orbitalId\": \"orbitalId\",\n \"orbitals\": \"orbitals\",\n \"originalEvent\": \"originalEvent\",\n \"originalName\": \"originalName\",\n \"outbound\": \"outbound\",\n \"owner\": \"owner\",\n \"pageIds\": \"pageIds\",\n \"pages\": \"pages\",\n \"parent\": \"parent\",\n \"path\": \"path\",\n \"pattern\": \"pattern\",\n \"patternPath\": \"patternPath\",\n \"payload\": \"payload\",\n \"payloadEntity\": \"payloadEntity\",\n \"payloadMapping\": \"payloadMapping\",\n \"payloadSchema\": \"payloadSchema\",\n \"persistence\": \"persistence\",\n \"personas\": \"personas\",\n \"presentation\": \"presentation\",\n \"primaryColor\": \"primaryColor\",\n \"primaryEntity\": \"primaryEntity\",\n \"primaryKey\": \"primaryKey\",\n \"priority\": \"priority\",\n \"prop\": \"prop\",\n \"properties\": \"properties\",\n \"props\": \"props\",\n \"provides\": \"provides\",\n \"radii\": \"radii\",\n \"read\": \"read\",\n \"read_policy\": \"read_policy\",\n \"reconnect\": \"reconnect\",\n \"ref\": \"ref\",\n \"refId\": \"refId\",\n \"reference\": \"reference\",\n \"relatedLinks\": \"relatedLinks\",\n \"relation\": \"relation\",\n \"renames\": \"renames\",\n \"request\": \"request\",\n \"requestFragment\": \"requestFragment\",\n \"required\": \"required\",\n \"requiredFields\": \"requiredFields\",\n \"requires\": \"requires\",\n \"resolved\": \"resolved\",\n \"resource\": \"resource\",\n \"role\": \"role\",\n \"roles\": \"roles\",\n \"runtime\": \"runtime\",\n \"schemaVersion\": \"schemaVersion\",\n \"scope\": \"scope\",\n \"scopeOverridden\": \"scopeOverridden\",\n \"secretEnv\": \"secretEnv\",\n \"sections\": \"sections\",\n \"semanticRole\": \"semanticRole\",\n \"serverPath\": \"serverPath\",\n \"services\": \"services\",\n \"shadows\": \"shadows\",\n \"shape\": \"shape\",\n \"shared\": \"shared\",\n \"singleton\": \"singleton\",\n \"site\": \"site\",\n \"slots\": \"slots\",\n \"softDelete\": \"softDelete\",\n \"source\": \"source\",\n \"sourceBehavior\": \"sourceBehavior\",\n \"sourceEntityDefinition\": \"sourceEntityDefinition\",\n \"spacing\": \"spacing\",\n \"stateMachine\": \"stateMachine\",\n \"states\": \"states\",\n \"style\": \"style\",\n \"subDomain\": \"subDomain\",\n \"suggestedGuards\": \"suggestedGuards\",\n \"summary\": \"summary\",\n \"surfaces\": \"surfaces\",\n \"synonyms\": \"synonyms\",\n \"target\": \"target\",\n \"targetView\": \"targetView\",\n \"text\": \"text\",\n \"theme\": \"theme\",\n \"tick\": \"tick\",\n \"ticks\": \"ticks\",\n \"tier\": \"tier\",\n \"timeBoundMs\": \"timeBoundMs\",\n \"timeout\": \"timeout\",\n \"timestamps\": \"timestamps\",\n \"title\": \"title\",\n \"to\": \"to\",\n \"tokens\": \"tokens\",\n \"trait\": \"trait\",\n \"traitEmbedIds\": \"traitEmbedIds\",\n \"traitId\": \"traitId\",\n \"traitName\": \"traitName\",\n \"traitRefIds\": \"traitRefIds\",\n \"traits\": \"traits\",\n \"transition\": \"transition\",\n \"transitions\": \"transitions\",\n \"triggers\": \"triggers\",\n \"triggersId\": \"triggersId\",\n \"type\": \"type\",\n \"typeArgs\": \"typeArgs\",\n \"typeParams\": \"typeParams\",\n \"typeScale\": \"typeScale\",\n \"typeWhen\": \"typeWhen\",\n \"types\": \"types\",\n \"typography\": \"typography\",\n \"ui\": \"ui\",\n \"unique\": \"unique\",\n \"update\": \"update\",\n \"update_policy\": \"update_policy\",\n \"updatedAt\": \"updatedAt\",\n \"url\": \"url\",\n \"uses\": \"uses\",\n \"uxHints\": \"uxHints\",\n \"values\": \"values\",\n \"variant\": \"variant\",\n \"variants\": \"variants\",\n \"version\": \"version\",\n \"viewType\": \"viewType\",\n \"visual_prompt\": \"visual_prompt\",\n \"vocabulary\": \"vocabulary\"\n }\n}\n","{\n \"meta\": {\n \"code\": \"ar\",\n \"name\": \"Arabic\",\n \"rtl\": true\n },\n \"keywords\": {\n \"app\": \"تطبيق\",\n \"orbital\": \"مدار\",\n \"uses\": \"يستخدم\",\n \"expects\": \"يتوقع\",\n \"entity\": \"كيان\",\n \"type\": \"نوع\",\n \"derived\": \"مشتق\",\n \"trait\": \"سمة\",\n \"initial\": \"أولي\",\n \"state\": \"حالة\",\n \"for\": \"من_أجل\",\n \"page\": \"صفحة\",\n \"as\": \"كـ\",\n \"theme\": \"مظهر\",\n \"emits\": \"يصدر\",\n \"listens\": \"يستمع\",\n \"ticks\": \"نبضات\",\n \"config\": \"تكوين\",\n \"when\": \"عندما\",\n \"with\": \"مع\",\n \"from\": \"من\",\n \"to\": \"إلى\",\n \"every\": \"كل\",\n \"capabilities\": \"قدرات\",\n \"match\": \"مطابقة\",\n \"external\": \"خارجي\",\n \"internal\": \"داخلي\",\n \"on\": \"عند\",\n \"name\": \"اسم\",\n \"fields\": \"حقول\",\n \"events\": \"أحداث\",\n \"event\": \"حدث\",\n \"emitsScope\": \"نطاق_الإصدار\",\n \"identity\": \"هوية\",\n \"pages\": \"صفحات\",\n \"omit\": \"استبعاد\",\n \"only\": \"فقط\",\n \"roles\": \"أدوار\",\n \"entities\": \"كيانات\",\n \"extend\": \"امتداد\"\n },\n \"shapes\": {\n \"Entity\": \"كيان\",\n \"Trait\": \"سمة\",\n \"Page\": \"صفحة\",\n \"Orbital\": \"مدار\",\n \"Event\": \"حدث\"\n },\n \"tags\": {\n \"persistent\": \"دائم\",\n \"runtime\": \"وقت_التشغيل\",\n \"shared\": \"مشترك\",\n \"identity\": \"هوية\",\n \"instance\": \"نسخة\",\n \"collection\": \"مجموعة\"\n },\n \"categories\": {\n \"interaction\": \"تفاعل\",\n \"integration\": \"تكامل\",\n \"lifecycle\": \"دورة_حياة\",\n \"game-core\": \"أساسيات_اللعبة\",\n \"game-entity\": \"كيان_اللعبة\",\n \"game-ui\": \"واجهة_اللعبة\"\n },\n \"capabilities\": {\n \"read\": \"قراءة\",\n \"write\": \"كتابة\",\n \"browse\": \"تصفح\",\n \"create\": \"إنشاء\",\n \"update\": \"تحديث\",\n \"delete\": \"حذف\",\n \"notify\": \"إشعار\",\n \"schedule\": \"جدولة\",\n \"invoke\": \"استدعاء\"\n },\n \"annotations\": {\n \"key\": \"مفتاح\",\n \"unique\": \"فريد\",\n \"intrinsic\": \"جوهري\",\n \"label\": \"تسمية\",\n \"description\": \"وصف\",\n \"synonyms\": \"مرادفات\",\n \"tier\": \"مستوى\",\n \"rebindable\": \"قابل_لإعادة_الربط\",\n \"read\": \"قراءة\",\n \"create\": \"إنشاء\",\n \"update\": \"تحديث\",\n \"delete\": \"حذف\",\n \"icon\": \"أيقونة\"\n },\n \"sigils\": {\n \"entity\": \"كيان\",\n \"payload\": \"حمولة\",\n \"state\": \"حالة\",\n \"now\": \"الآن\",\n \"config\": \"تكوين\",\n \"user\": \"مستخدم\",\n \"trait\": \"سمة\"\n },\n \"effects\": {\n \"set\": \"تعيين\",\n \"fetch\": \"جلب\",\n \"persist\": \"حفظ\",\n \"emit\": \"بث\",\n \"navigate\": \"انتقال\",\n \"navigate-back\": \"رجوع\",\n \"render-ui\": \"عرض_واجهة\",\n \"notify\": \"إشعار\",\n \"ref\": \"مرجع\",\n \"call-service\": \"استدعاء_خدمة\",\n \"invoke\": \"استدعاء\",\n \"do\": \"تنفيذ\",\n \"if\": \"إذا\",\n \"let\": \"ليكن\",\n \"fn\": \"دالة\",\n \"lambda\": \"لامدا\",\n \"match\": \"مطابقة\",\n \"when\": \"عندما\"\n },\n \"types\": {\n \"string\": \"نص\",\n \"number\": \"رقم\",\n \"int\": \"عدد_صحيح\",\n \"float\": \"عشري\",\n \"bool\": \"ثنائي\",\n \"boolean\": \"منطقي\",\n \"timestamp\": \"طابع_زمني\",\n \"date\": \"تاريخ\",\n \"datetime\": \"تاريخ_ووقت\",\n \"duration\": \"مدة\",\n \"money\": \"مبلغ_مالي\",\n \"scalar\": \"عددي\",\n \"file\": \"ملف\",\n \"email\": \"بريد_إلكتروني\",\n \"url\": \"رابط\",\n \"phone\": \"هاتف\",\n \"uuid\": \"معرف_فريد\",\n \"image\": \"صورة\",\n \"icon\": \"أيقونة\",\n \"asset\": \"أصل\",\n \"component\": \"مكون\",\n \"object\": \"كائن\",\n \"array\": \"مصفوفة\",\n \"enum\": \"تعداد\",\n \"relation\": \"علاقة\",\n \"node\": \"عقدة\",\n \"union\": \"اتحاد\",\n \"void\": \"فراغ\",\n \"null\": \"عدم\",\n \"any\": \"أي\",\n \"trait\": \"سمة\",\n \"entity\": \"كيان\",\n \"event\": \"حدث\",\n \"slot\": \"فتحة\",\n \"pattern\": \"نمط\",\n \"Map\": \"خريطة\",\n \"secret\": \"سر\",\n \"SExpr\": \"تعبير_رمزي\"\n },\n \"units\": {\n \"ms\": \"مللي_ثانية\",\n \"s\": \"ثانية\",\n \"m\": \"دقيقة\",\n \"h\": \"ساعة\",\n \"d\": \"يوم\"\n },\n \"literals\": {\n \"true\": \"صحيح\",\n \"false\": \"خاطئ\",\n \"null\": \"عدم\"\n },\n \"reservedEvents\": {\n \"INIT\": \"تهيئة\"\n },\n \"orb\": {\n \"_metadata\": \"بيانات_وصفية\",\n \"_resolved\": \"_محلول\",\n \"access_waivers\": \"إعفاءات_الوصول\",\n \"alias\": \"اسم_مستعار\",\n \"animations\": \"رسوم_متحركة\",\n \"appliesTo\": \"ينطبق_على\",\n \"as\": \"كـ\",\n \"aspect\": \"نسبة\",\n \"assetRef\": \"مرجع_الأصل\",\n \"at\": \"في\",\n \"auth\": \"مصادقة\",\n \"auxiliaryEntities\": \"كيانات_مساعدة\",\n \"bakedName\": \"اسم_مخبوز\",\n \"baseUrl\": \"رابط_أساسي\",\n \"behavior\": \"سلوك\",\n \"capabilities\": \"قدرات\",\n \"cardinality\": \"تعددية\",\n \"category\": \"فئة\",\n \"className\": \"اسم_الفئة\",\n \"classification\": \"تصنيف\",\n \"collection\": \"مجموعة\",\n \"color\": \"لون\",\n \"colors\": \"ألوان\",\n \"component\": \"مكون\",\n \"config\": \"تكوين\",\n \"configProvenance\": \"مصدر_التكوين\",\n \"container\": \"حاوية\",\n \"content\": \"محتوى\",\n \"create\": \"إنشاء\",\n \"create_policy\": \"سياسة_الإنشاء\",\n \"createdAt\": \"تاريخ_الإنشاء\",\n \"curName\": \"الاسم_الحالي\",\n \"customPatterns\": \"أنماط_مخصصة\",\n \"darkMode\": \"الوضع_الداكن\",\n \"dataEntities\": \"كيانات_البيانات\",\n \"default\": \"افتراضي\",\n \"definerKnob\": \"مقبض_المُعرِّف\",\n \"delayMs\": \"تأخير_مللي_ثانية\",\n \"delete\": \"حذف\",\n \"delete_policy\": \"سياسة_الحذف\",\n \"density\": \"كثافة\",\n \"description\": \"وصف\",\n \"description_visual_prompt\": \"وصف_الموجه_البصري\",\n \"design\": \"تصميم\",\n \"designTokens\": \"رموز_التصميم\",\n \"detailPattern\": \"نمط_التفاصيل\",\n \"device\": \"جهاز\",\n \"dimension\": \"بُعد\",\n \"domainContext\": \"سياق_المجال\",\n \"effectRow\": \"صف_التأثير\",\n \"effects\": \"تأثيرات\",\n \"elevation\": \"ارتفاع\",\n \"emitIds\": \"معرفات_البث\",\n \"emits\": \"يصدر\",\n \"emitsScope\": \"نطاق_الإصدار\",\n \"enabled\": \"مُفعّل\",\n \"entities\": \"كيانات\",\n \"entity\": \"كيان\",\n \"entityBindingDescription\": \"وصف_ربط_الكيان\",\n \"entityBindingSynonyms\": \"مرادفات_ربط_الكيان\",\n \"entityContract\": \"عقد_الكيان\",\n \"entityId\": \"معرف_الكيان\",\n \"entityRebindable\": \"قابل_لإعادة_ربط_الكيان\",\n \"entityRefIds\": \"معرفات_مرجع_الكيان\",\n \"entries\": \"إدخالات\",\n \"env\": \"بيئة\",\n \"equals\": \"يساوي\",\n \"event\": \"حدث\",\n \"eventId\": \"معرف_الحدث\",\n \"eventIds\": \"معرفات_الحدث\",\n \"events\": \"أحداث\",\n \"expects\": \"يتوقع\",\n \"exposes\": \"يعرض\",\n \"extend\": \"امتداد\",\n \"extends\": \"يمتد\",\n \"extendsId\": \"معرف_الامتداد\",\n \"field\": \"حقل\",\n \"fields\": \"حقول\",\n \"flowPattern\": \"نمط_التدفق\",\n \"foreignKey\": \"مفتاح_أجنبي\",\n \"formPattern\": \"نمط_النموذج\",\n \"forwardedFrom\": \"موجه_من\",\n \"from\": \"من\",\n \"geometry\": \"هندسة\",\n \"guard\": \"حارس\",\n \"guards\": \"حراس\",\n \"headers\": \"ترويسات\",\n \"icon\": \"أيقونة\",\n \"iconography\": \"أيقونات\",\n \"id\": \"معرف\",\n \"identity\": \"هوية\",\n \"illustration\": \"رسم_توضيحي\",\n \"inbound\": \"وارد\",\n \"initialEffects\": \"التأثيرات_الأولية\",\n \"instances\": \"نسخ\",\n \"interactive\": \"تفاعلي\",\n \"interval\": \"فاصل_زمني\",\n \"intrinsic\": \"جوهري\",\n \"isFinal\": \"أخير\",\n \"isInitial\": \"أولي\",\n \"isTerminal\": \"نهائي\",\n \"item\": \"عنصر\",\n \"items\": \"عناصر\",\n \"key\": \"مفتاح\",\n \"keyName\": \"اسم_المفتاح\",\n \"kind\": \"صنف\",\n \"knob\": \"مقبض\",\n \"label\": \"تسمية\",\n \"ledger\": \"سجل\",\n \"linkedEntity\": \"كيان_مرتبط\",\n \"linkedEntityId\": \"معرف_الكيان_المرتبط\",\n \"listPattern\": \"نمط_القائمة\",\n \"listens\": \"يستمع\",\n \"location\": \"موقع\",\n \"max\": \"أقصى\",\n \"maxAttempts\": \"أقصى_عدد_محاولات\",\n \"min\": \"أدنى\",\n \"motion\": \"حركة\",\n \"mounts\": \"تركيبات\",\n \"name\": \"اسم\",\n \"omit\": \"استبعاد\",\n \"onDelete\": \"عند_الحذف\",\n \"onEntry\": \"عند_الدخول\",\n \"onExit\": \"عند_الخروج\",\n \"only\": \"فقط\",\n \"orbital\": \"مدار\",\n \"orbitalId\": \"معرف_المدار\",\n \"orbitals\": \"مدارات\",\n \"originalEvent\": \"الحدث_الأصلي\",\n \"originalName\": \"الاسم_الأصلي\",\n \"outbound\": \"صادر\",\n \"owner\": \"مالك\",\n \"pageIds\": \"معرفات_الصفحة\",\n \"pages\": \"صفحات\",\n \"parent\": \"أب\",\n \"path\": \"مسار\",\n \"pattern\": \"نمط\",\n \"patternPath\": \"مسار_النمط\",\n \"payload\": \"حمولة\",\n \"payloadEntity\": \"كيان_الحمولة\",\n \"payloadMapping\": \"تخطيط_الحمولة\",\n \"payloadSchema\": \"مخطط_الحمولة\",\n \"persistence\": \"استمرارية\",\n \"personas\": \"شخصيات\",\n \"presentation\": \"عرض_تقديمي\",\n \"primaryColor\": \"اللون_الأساسي\",\n \"primaryEntity\": \"الكيان_الأساسي\",\n \"primaryKey\": \"مفتاح_أساسي\",\n \"priority\": \"أولوية\",\n \"prop\": \"خاصية\",\n \"properties\": \"خصائص\",\n \"props\": \"خواص\",\n \"provides\": \"يوفر\",\n \"radii\": \"أنصاف_أقطار\",\n \"read\": \"قراءة\",\n \"read_policy\": \"سياسة_القراءة\",\n \"reconnect\": \"إعادة_الاتصال\",\n \"ref\": \"مرجع\",\n \"refId\": \"معرف_المرجع\",\n \"reference\": \"مرجعية\",\n \"relatedLinks\": \"روابط_ذات_صلة\",\n \"relation\": \"علاقة\",\n \"renames\": \"إعادة_تسمية\",\n \"request\": \"طلب\",\n \"requestFragment\": \"جزء_الطلب\",\n \"required\": \"مطلوب\",\n \"requiredFields\": \"الحقول_المطلوبة\",\n \"requires\": \"يتطلب\",\n \"resolved\": \"محلول\",\n \"resource\": \"مورد\",\n \"role\": \"دور\",\n \"roles\": \"أدوار\",\n \"runtime\": \"وقت_التشغيل\",\n \"schemaVersion\": \"إصدار_المخطط\",\n \"scope\": \"نطاق\",\n \"scopeOverridden\": \"النطاق_مُتجاوَز\",\n \"secretEnv\": \"بيئة_سرية\",\n \"sections\": \"أقسام\",\n \"semanticRole\": \"دور_دلالي\",\n \"serverPath\": \"مسار_الخادم\",\n \"services\": \"خدمات\",\n \"shadows\": \"ظلال\",\n \"shape\": \"شكل\",\n \"shared\": \"مشترك\",\n \"singleton\": \"وحيد\",\n \"site\": \"موقع_الويب\",\n \"slots\": \"فتحات\",\n \"softDelete\": \"حذف_ناعم\",\n \"source\": \"مصدر\",\n \"sourceBehavior\": \"سلوك_المصدر\",\n \"sourceEntityDefinition\": \"تعريف_كيان_المصدر\",\n \"spacing\": \"تباعد\",\n \"stateMachine\": \"آلة_حالة\",\n \"states\": \"حالات\",\n \"style\": \"أسلوب\",\n \"subDomain\": \"مجال_فرعي\",\n \"suggestedGuards\": \"الحراس_المقترحون\",\n \"summary\": \"ملخص\",\n \"surfaces\": \"أسطح\",\n \"synonyms\": \"مرادفات\",\n \"target\": \"هدف\",\n \"targetView\": \"العرض_المستهدف\",\n \"text\": \"نص\",\n \"theme\": \"مظهر\",\n \"tick\": \"نبضة\",\n \"ticks\": \"نبضات\",\n \"tier\": \"مستوى\",\n \"timeBoundMs\": \"حد_زمني_مللي_ثانية\",\n \"timeout\": \"مهلة\",\n \"timestamps\": \"طوابع_زمنية\",\n \"title\": \"عنوان\",\n \"to\": \"إلى\",\n \"tokens\": \"رموز\",\n \"trait\": \"سمة\",\n \"traitEmbedIds\": \"معرفات_تضمين_السمة\",\n \"traitId\": \"معرف_السمة\",\n \"traitName\": \"اسم_السمة\",\n \"traitRefIds\": \"معرفات_مرجع_السمة\",\n \"traits\": \"سمات\",\n \"transition\": \"انتقال_حالة\",\n \"transitions\": \"انتقالات\",\n \"triggers\": \"محفزات\",\n \"triggersId\": \"معرف_المحفزات\",\n \"type\": \"نوع\",\n \"typeArgs\": \"وسائط_النوع\",\n \"typeParams\": \"معاملات_النوع\",\n \"typeScale\": \"مقياس_الطباعة\",\n \"typeWhen\": \"نوع_عندما\",\n \"types\": \"أنواع\",\n \"typography\": \"طباعة\",\n \"ui\": \"واجهة\",\n \"unique\": \"فريد\",\n \"update\": \"تحديث\",\n \"update_policy\": \"سياسة_التحديث\",\n \"updatedAt\": \"تاريخ_التحديث\",\n \"url\": \"رابط\",\n \"uses\": \"يستخدم\",\n \"uxHints\": \"تلميحات_تجربة_المستخدم\",\n \"values\": \"قيم\",\n \"variant\": \"متغير\",\n \"variants\": \"متغيرات\",\n \"version\": \"إصدار\",\n \"viewType\": \"نوع_العرض\",\n \"visual_prompt\": \"موجه_بصري\",\n \"vocabulary\": \"مفردات\"\n }\n}\n","{\n \"meta\": {\n \"code\": \"sl\",\n \"name\": \"Slovenian\",\n \"rtl\": false\n },\n \"keywords\": {\n \"app\": \"aplikacija\",\n \"orbital\": \"orbitala\",\n \"uses\": \"uporablja\",\n \"expects\": \"pricakuje\",\n \"entity\": \"entiteta\",\n \"type\": \"tip\",\n \"derived\": \"izpeljano\",\n \"trait\": \"znacilnost\",\n \"initial\": \"zacetno\",\n \"state\": \"stanje\",\n \"for\": \"za\",\n \"page\": \"stran\",\n \"as\": \"kot\",\n \"theme\": \"tema\",\n \"emits\": \"oddaja\",\n \"listens\": \"poslusa\",\n \"ticks\": \"utripi\",\n \"config\": \"konfiguracija\",\n \"when\": \"ko\",\n \"with\": \"s\",\n \"from\": \"iz\",\n \"to\": \"do\",\n \"every\": \"vsak\",\n \"capabilities\": \"zmoznosti\",\n \"match\": \"ujemaj\",\n \"external\": \"zunanje\",\n \"internal\": \"notranje\",\n \"on\": \"ob\",\n \"name\": \"ime\",\n \"fields\": \"polja\",\n \"events\": \"dogodki\",\n \"event\": \"dogodek\",\n \"emitsScope\": \"oddajaObseg\",\n \"identity\": \"identiteta\",\n \"pages\": \"strani\",\n \"omit\": \"izloci\",\n \"only\": \"samo\",\n \"roles\": \"vloge\",\n \"entities\": \"entitete\",\n \"extend\": \"razsiritev\"\n },\n \"shapes\": {\n \"Entity\": \"Entiteta\",\n \"Trait\": \"Znacilnost\",\n \"Page\": \"Stran\",\n \"Orbital\": \"Orbitala\",\n \"Event\": \"Dogodek\"\n },\n \"tags\": {\n \"persistent\": \"trajno\",\n \"runtime\": \"izvajanje\",\n \"shared\": \"skupno\",\n \"identity\": \"identiteta\",\n \"instance\": \"primerek\",\n \"collection\": \"zbirka\"\n },\n \"categories\": {\n \"interaction\": \"interakcija\",\n \"integration\": \"integracija\",\n \"lifecycle\": \"zivljenjskiCikel\",\n \"game-core\": \"igra-jedro\",\n \"game-entity\": \"igra-entiteta\",\n \"game-ui\": \"igra-vmesnik\"\n },\n \"capabilities\": {\n \"read\": \"beri\",\n \"write\": \"pisi\",\n \"browse\": \"brskaj\",\n \"create\": \"ustvari\",\n \"update\": \"posodobi\",\n \"delete\": \"izbrisi\",\n \"notify\": \"obvesti\",\n \"schedule\": \"razporedi\",\n \"invoke\": \"sprozi\"\n },\n \"annotations\": {\n \"key\": \"kljuc\",\n \"unique\": \"edinstveno\",\n \"intrinsic\": \"lastno\",\n \"label\": \"oznaka\",\n \"description\": \"opis\",\n \"synonyms\": \"sopomenke\",\n \"tier\": \"nivo\",\n \"rebindable\": \"prevezljivo\",\n \"read\": \"beri\",\n \"create\": \"ustvari\",\n \"update\": \"posodobi\",\n \"delete\": \"izbrisi\",\n \"icon\": \"ikona\"\n },\n \"sigils\": {\n \"entity\": \"entiteta\",\n \"payload\": \"podatki\",\n \"state\": \"stanje\",\n \"now\": \"zdaj\",\n \"config\": \"konfiguracija\",\n \"user\": \"uporabnik\",\n \"trait\": \"znacilnost\"\n },\n \"effects\": {\n \"set\": \"nastavi\",\n \"fetch\": \"pridobi\",\n \"persist\": \"shrani\",\n \"emit\": \"oddaj\",\n \"navigate\": \"pojdi\",\n \"navigate-back\": \"pojdi-nazaj\",\n \"render-ui\": \"izrisi-vmesnik\",\n \"notify\": \"obvesti\",\n \"ref\": \"sklic\",\n \"call-service\": \"poklici-storitev\",\n \"invoke\": \"sprozi\",\n \"do\": \"naredi\",\n \"if\": \"ce\",\n \"let\": \"naj\",\n \"fn\": \"fn\",\n \"lambda\": \"lambda\",\n \"match\": \"ujemaj\",\n \"when\": \"ko\"\n },\n \"types\": {\n \"string\": \"niz\",\n \"number\": \"stevilo\",\n \"int\": \"celo\",\n \"float\": \"plavajoce\",\n \"bool\": \"logicna\",\n \"boolean\": \"logicno\",\n \"timestamp\": \"casovniZig\",\n \"date\": \"datum\",\n \"datetime\": \"datumCas\",\n \"duration\": \"trajanje\",\n \"money\": \"denar\",\n \"scalar\": \"skalar\",\n \"file\": \"datoteka\",\n \"email\": \"eposta\",\n \"url\": \"url\",\n \"phone\": \"telefon\",\n \"uuid\": \"uuid\",\n \"image\": \"slika\",\n \"icon\": \"ikona\",\n \"asset\": \"sredstvo\",\n \"component\": \"komponenta\",\n \"object\": \"objekt\",\n \"array\": \"seznam\",\n \"enum\": \"nastevanje\",\n \"relation\": \"relacija\",\n \"node\": \"vozlisce\",\n \"union\": \"unija\",\n \"void\": \"prazno\",\n \"null\": \"nic\",\n \"any\": \"karkoli\",\n \"trait\": \"znacilnost\",\n \"entity\": \"entiteta\",\n \"event\": \"dogodek\",\n \"slot\": \"reza\",\n \"pattern\": \"vzorec\",\n \"Map\": \"Mapa\",\n \"secret\": \"skrivnost\",\n \"SExpr\": \"SIzraz\"\n },\n \"units\": {\n \"ms\": \"ms\",\n \"s\": \"sek\",\n \"m\": \"min\",\n \"h\": \"ura\",\n \"d\": \"dan\"\n },\n \"literals\": {\n \"true\": \"drzi\",\n \"false\": \"nedrzi\",\n \"null\": \"nic\"\n },\n \"reservedEvents\": {\n \"INIT\": \"ZACETEK\"\n },\n \"orb\": {\n \"_metadata\": \"_metapodatki\",\n \"_resolved\": \"_razresen\",\n \"access_waivers\": \"dostop_izjeme\",\n \"alias\": \"vzdevek\",\n \"animations\": \"animacije\",\n \"appliesTo\": \"veljaZa\",\n \"as\": \"kot\",\n \"aspect\": \"razmerje\",\n \"assetRef\": \"sredstvoSklic\",\n \"at\": \"pri\",\n \"auth\": \"avtentikacija\",\n \"auxiliaryEntities\": \"pomozneEntitete\",\n \"bakedName\": \"zapecenoIme\",\n \"baseUrl\": \"osnovaUrl\",\n \"behavior\": \"vedenje\",\n \"capabilities\": \"zmoznosti\",\n \"cardinality\": \"kardinalnost\",\n \"category\": \"kategorija\",\n \"className\": \"imeRazreda\",\n \"classification\": \"klasifikacija\",\n \"collection\": \"zbirka\",\n \"color\": \"barva\",\n \"colors\": \"barve\",\n \"component\": \"komponenta\",\n \"config\": \"konfiguracija\",\n \"configProvenance\": \"konfiguracijaIzvor\",\n \"container\": \"vsebnik\",\n \"content\": \"vsebina\",\n \"create\": \"ustvari\",\n \"create_policy\": \"ustvari_politika\",\n \"createdAt\": \"ustvarjenoPri\",\n \"curName\": \"trenutnoIme\",\n \"customPatterns\": \"lastniVzorci\",\n \"darkMode\": \"temniNacin\",\n \"dataEntities\": \"podatkiEntitete\",\n \"default\": \"privzeto\",\n \"definerKnob\": \"definitorGumbek\",\n \"delayMs\": \"zakasnitevMs\",\n \"delete\": \"izbrisi\",\n \"delete_policy\": \"izbrisi_politika\",\n \"density\": \"gostota\",\n \"description\": \"opis\",\n \"description_visual_prompt\": \"opis_vizualno_poziv\",\n \"design\": \"oblikovanje\",\n \"designTokens\": \"oblikovanjeZetoni\",\n \"detailPattern\": \"vzorecPodrobnosti\",\n \"device\": \"naprava\",\n \"dimension\": \"dimenzija\",\n \"domainContext\": \"domenaKontekst\",\n \"effectRow\": \"ucinekVrstica\",\n \"effects\": \"ucinki\",\n \"elevation\": \"dvig\",\n \"emitIds\": \"oddajIdji\",\n \"emits\": \"oddaja\",\n \"emitsScope\": \"oddajaObseg\",\n \"enabled\": \"omogoceno\",\n \"entities\": \"entitete\",\n \"entity\": \"entiteta\",\n \"entityBindingDescription\": \"entitetaVezavaOpis\",\n \"entityBindingSynonyms\": \"entitetaVezavaSopomenke\",\n \"entityContract\": \"entitetaPogodba\",\n \"entityId\": \"entitetaId\",\n \"entityRebindable\": \"entitetaPrevezljivo\",\n \"entityRefIds\": \"entitetaSklicIdji\",\n \"entries\": \"vnosi\",\n \"env\": \"okolje\",\n \"equals\": \"enako\",\n \"event\": \"dogodek\",\n \"eventId\": \"dogodekId\",\n \"eventIds\": \"dogodekIdji\",\n \"events\": \"dogodki\",\n \"expects\": \"pricakuje\",\n \"exposes\": \"izpostavlja\",\n \"extend\": \"razsiritev\",\n \"extends\": \"razsiri\",\n \"extendsId\": \"razsiriId\",\n \"field\": \"polje\",\n \"fields\": \"polja\",\n \"flowPattern\": \"vzorecPoteka\",\n \"foreignKey\": \"tujiKljuc\",\n \"formPattern\": \"vzorecObrazca\",\n \"forwardedFrom\": \"posredovanoOd\",\n \"from\": \"iz\",\n \"geometry\": \"geometrija\",\n \"guard\": \"strazar\",\n \"guards\": \"strazarji\",\n \"headers\": \"glave\",\n \"icon\": \"ikona\",\n \"iconography\": \"ikonografija\",\n \"id\": \"id\",\n \"identity\": \"identiteta\",\n \"illustration\": \"ilustracija\",\n \"inbound\": \"dohodno\",\n \"initialEffects\": \"zacetnoUcinki\",\n \"instances\": \"primerki\",\n \"interactive\": \"interaktivno\",\n \"interval\": \"interval\",\n \"intrinsic\": \"lastno\",\n \"isFinal\": \"jeKoncno\",\n \"isInitial\": \"jeZacetno\",\n \"isTerminal\": \"jeTerminalno\",\n \"item\": \"element\",\n \"items\": \"elementi\",\n \"key\": \"kljuc\",\n \"keyName\": \"imeKljuca\",\n \"kind\": \"vrsta\",\n \"knob\": \"gumbek\",\n \"label\": \"oznaka\",\n \"ledger\": \"knjiga\",\n \"linkedEntity\": \"povezanaEntiteta\",\n \"linkedEntityId\": \"povezanaEntitetaId\",\n \"listPattern\": \"vzorecSeznama\",\n \"listens\": \"poslusa\",\n \"location\": \"lokacija\",\n \"max\": \"najvec\",\n \"maxAttempts\": \"najvecPoskusov\",\n \"min\": \"najmanj\",\n \"motion\": \"gibanje\",\n \"mounts\": \"priklopi\",\n \"name\": \"ime\",\n \"omit\": \"izloci\",\n \"onDelete\": \"obIzbrisi\",\n \"onEntry\": \"obVnos\",\n \"onExit\": \"obIzhod\",\n \"only\": \"samo\",\n \"orbital\": \"orbitala\",\n \"orbitalId\": \"orbitalaId\",\n \"orbitals\": \"orbitale\",\n \"originalEvent\": \"izvirniDogodek\",\n \"originalName\": \"izvirnoIme\",\n \"outbound\": \"odhodno\",\n \"owner\": \"lastnik\",\n \"pageIds\": \"stranIdji\",\n \"pages\": \"strani\",\n \"parent\": \"stars\",\n \"path\": \"pot\",\n \"pattern\": \"vzorec\",\n \"patternPath\": \"potVzorca\",\n \"payload\": \"podatki\",\n \"payloadEntity\": \"podatkiEntiteta\",\n \"payloadMapping\": \"podatkiPreslikava\",\n \"payloadSchema\": \"podatkiShema\",\n \"persistence\": \"trajnost\",\n \"personas\": \"osebe\",\n \"presentation\": \"predstavitev\",\n \"primaryColor\": \"primarnaBarva\",\n \"primaryEntity\": \"primarnaEntiteta\",\n \"primaryKey\": \"primarniKljuc\",\n \"priority\": \"prioriteta\",\n \"prop\": \"rekvizit\",\n \"properties\": \"lastnosti\",\n \"props\": \"rekviziti\",\n \"provides\": \"zagotavlja\",\n \"radii\": \"polmeri\",\n \"read\": \"beri\",\n \"read_policy\": \"beri_politika\",\n \"reconnect\": \"ponovnaPovezava\",\n \"ref\": \"sklic\",\n \"refId\": \"sklicId\",\n \"reference\": \"referenca\",\n \"relatedLinks\": \"povezanePovezave\",\n \"relation\": \"relacija\",\n \"renames\": \"preimenovanja\",\n \"request\": \"zahtevek\",\n \"requestFragment\": \"zahtevekFragment\",\n \"required\": \"obvezno\",\n \"requiredFields\": \"obveznaPolja\",\n \"requires\": \"zahteva\",\n \"resolved\": \"razresen\",\n \"resource\": \"vir\",\n \"role\": \"vloga\",\n \"roles\": \"vloge\",\n \"runtime\": \"izvajanje\",\n \"schemaVersion\": \"shemaRazlicica\",\n \"scope\": \"obseg\",\n \"scopeOverridden\": \"obsegPreglasen\",\n \"secretEnv\": \"skrivnostOkolje\",\n \"sections\": \"odseki\",\n \"semanticRole\": \"semanticnaVloga\",\n \"serverPath\": \"streznikPot\",\n \"services\": \"storitve\",\n \"shadows\": \"sence\",\n \"shape\": \"oblika\",\n \"shared\": \"skupno\",\n \"singleton\": \"edinec\",\n \"site\": \"mesto\",\n \"slots\": \"reze\",\n \"softDelete\": \"mehkoIzbrisi\",\n \"source\": \"izvor\",\n \"sourceBehavior\": \"izvorVedenje\",\n \"sourceEntityDefinition\": \"izvorEntitetaDefinicija\",\n \"spacing\": \"razmik\",\n \"stateMachine\": \"strojStanj\",\n \"states\": \"stanja\",\n \"style\": \"slog\",\n \"subDomain\": \"poddomena\",\n \"suggestedGuards\": \"predlaganoStrazarji\",\n \"summary\": \"povzetek\",\n \"surfaces\": \"povrsine\",\n \"synonyms\": \"sopomenke\",\n \"target\": \"cilj\",\n \"targetView\": \"ciljPogled\",\n \"text\": \"besedilo\",\n \"theme\": \"tema\",\n \"tick\": \"utrip\",\n \"ticks\": \"utripi\",\n \"tier\": \"nivo\",\n \"timeBoundMs\": \"casMejaMs\",\n \"timeout\": \"casovnaOmejitev\",\n \"timestamps\": \"casovniZigi\",\n \"title\": \"naziv\",\n \"to\": \"do\",\n \"tokens\": \"zetoni\",\n \"trait\": \"znacilnost\",\n \"traitEmbedIds\": \"znacilnostVgraditevIdji\",\n \"traitId\": \"znacilnostId\",\n \"traitName\": \"znacilnostIme\",\n \"traitRefIds\": \"znacilnostSklicIdji\",\n \"traits\": \"znacilnosti\",\n \"transition\": \"prehod\",\n \"transitions\": \"prehodi\",\n \"triggers\": \"sprozilci\",\n \"triggersId\": \"sprozilciId\",\n \"type\": \"tip\",\n \"typeArgs\": \"tipArgumenti\",\n \"typeParams\": \"tipParametri\",\n \"typeScale\": \"tipMerilo\",\n \"typeWhen\": \"tipKo\",\n \"types\": \"tipi\",\n \"typography\": \"tipografija\",\n \"ui\": \"vmesnik\",\n \"unique\": \"edinstveno\",\n \"update\": \"posodobi\",\n \"update_policy\": \"posodobi_politika\",\n \"updatedAt\": \"posodobljenoPri\",\n \"url\": \"url\",\n \"uses\": \"uporablja\",\n \"uxHints\": \"uxNamigi\",\n \"values\": \"vrednosti\",\n \"variant\": \"varianta\",\n \"variants\": \"variante\",\n \"version\": \"razlicica\",\n \"viewType\": \"tipPogleda\",\n \"visual_prompt\": \"vizualno_poziv\",\n \"vocabulary\": \"besednjak\"\n }\n}\n","/**\n * A `.lolo` lexer — the JS-path mirror of `orbital-lolo/src/lexer.rs`.\n *\n * It exists so the JS path can rewrite a program's VOCABULARY without\n * re-implementing the parser: every token carries its byte span, so a\n * consumer splices replacement text into the original source and every\n * comment, blank line and alignment survives untouched.\n *\n * The character classes below are copied from the Rust lexer rather than\n * re-derived — an identifier continues on `alphanumeric | _ | / | -` (so\n * `render-ui` and `str/upper` are ONE token), a sigil root continues on\n * `alphanumeric | _ | .`, and `true`/`false`/`null` are their own kinds.\n * `is_alphanumeric` there is Unicode, so the `u`-flagged `\\p{L}`/`\\p{N}`\n * classes here match it for Arabic and Slovenian identifiers.\n *\n * @packageDocumentation\n */\n\nexport type LoloTokenKind =\n | 'comment'\n | 'string'\n | 'number'\n | 'identifier'\n | 'literal'\n | 'sigil'\n | 'payload-sigil'\n | 'punct';\n\nexport interface LoloToken {\n kind: LoloTokenKind;\n /** Byte-independent (UTF-16 code unit) start offset into the source. */\n start: number;\n /** Exclusive end offset. */\n end: number;\n /**\n * The token's semantic text. For `identifier`/`literal` it is the word\n * itself; for `sigil`/`payload-sigil` it is the name WITHOUT the `@`/`?`\n * prefix; for everything else it is the raw slice.\n */\n text: string;\n /** Offset at which `text` starts (differs from `start` for sigils). */\n textStart: number;\n}\n\nconst IDENT_START = /[\\p{L}_]/u;\nconst IDENT_CONTINUE = /[\\p{L}\\p{N}_/-]/u;\nconst SIGIL_CONTINUE = /[\\p{L}\\p{N}_.]/u;\nconst DIGIT = /[0-9]/;\n\n/**\n * Tokenize a `.lolo` source. Never throws: an unterminated string or block\n * comment runs to end-of-input and is returned as that token, because this\n * lexer's callers render source they did not necessarily author (a docs\n * fence, an editor buffer mid-keystroke) and must degrade to \"translate\n * nothing\" rather than fail.\n */\nexport function lexLolo(source: string): LoloToken[] {\n const tokens: LoloToken[] = [];\n let i = 0;\n const n = source.length;\n\n const push = (kind: LoloTokenKind, start: number, end: number, text?: string, textStart?: number): void => {\n tokens.push({\n kind,\n start,\n end,\n text: text ?? source.slice(start, end),\n textStart: textStart ?? start,\n });\n };\n\n while (i < n) {\n const c = source[i];\n\n // Whitespace (newlines included — layout is preserved by span splicing).\n if (c === ' ' || c === '\\t' || c === '\\r' || c === '\\n') {\n i++;\n continue;\n }\n\n // `#= … =#` block comment, `#` line comment.\n if (c === '#') {\n const start = i;\n if (source[i + 1] === '=') {\n const close = source.indexOf('=#', i + 2);\n i = close === -1 ? n : close + 2;\n } else {\n const nl = source.indexOf('\\n', i);\n i = nl === -1 ? n : nl;\n }\n push('comment', start, i);\n continue;\n }\n\n // `;;` line comment.\n if (c === ';' && source[i + 1] === ';') {\n const start = i;\n const nl = source.indexOf('\\n', i);\n i = nl === -1 ? n : nl;\n push('comment', start, i);\n continue;\n }\n\n // String literal, with `\\`-escapes.\n if (c === '\"') {\n const start = i;\n i++;\n while (i < n) {\n if (source[i] === '\\\\') {\n i += 2;\n continue;\n }\n if (source[i] === '\"') {\n i++;\n break;\n }\n i++;\n }\n push('string', start, Math.min(i, n));\n continue;\n }\n\n // `@(` (inline trait ref) vs `@name` sigil.\n if (c === '@') {\n const start = i;\n i++;\n if (source[i] === '(') {\n i++;\n push('punct', start, i);\n continue;\n }\n const nameStart = i;\n while (i < n && SIGIL_CONTINUE.test(source[i])) i++;\n push('sigil', start, i, source.slice(nameStart, i), nameStart);\n continue;\n }\n\n // `?name` payload sigil, or a bare `?`.\n if (c === '?') {\n const start = i;\n i++;\n if (i < n && IDENT_START.test(source[i])) {\n const nameStart = i;\n while (i < n && SIGIL_CONTINUE.test(source[i])) i++;\n push('payload-sigil', start, i, source.slice(nameStart, i), nameStart);\n } else {\n push('payload-sigil', start, i, '', i);\n }\n continue;\n }\n\n // Negative number vs `->` / `--` / bare `-` (the subtraction operator).\n if (c === '-') {\n const start = i;\n if (source[i + 1] === '>') {\n i += 2;\n push('punct', start, i);\n } else if (source[i + 1] === '-') {\n i += 2;\n push('punct', start, i);\n } else if (source[i + 1] !== undefined && DIGIT.test(source[i + 1])) {\n i++;\n while (i < n && (DIGIT.test(source[i]) || source[i] === '.')) i++;\n push('number', start, i);\n } else {\n i++;\n push('identifier', start, i);\n }\n continue;\n }\n\n if (DIGIT.test(c)) {\n const start = i;\n while (i < n && (DIGIT.test(source[i]) || source[i] === '.')) i++;\n push('number', start, i);\n continue;\n }\n\n // Symbolic operators the Rust lexer emits as Identifier tokens.\n if (c === '=' || c === '!' || c === '<' || c === '>') {\n const start = i;\n i++;\n if (source[i] === '=') i++;\n // A lone `=` / `!` is punctuation (`trait X = …`, `string!`); the\n // two-char forms are operator identifiers.\n const two = i - start === 2;\n push(two ? 'identifier' : 'punct', start, i);\n continue;\n }\n if (c === '+' || c === '*' || c === '/' || c === '%') {\n const start = i;\n i++;\n push('identifier', start, i);\n continue;\n }\n\n if (IDENT_START.test(c)) {\n const start = i;\n while (i < n && IDENT_CONTINUE.test(source[i])) i++;\n const text = source.slice(start, i);\n push(text === 'true' || text === 'false' || text === 'null' ? 'literal' : 'identifier', start, i, text);\n continue;\n }\n\n // Everything else is punctuation: ( ) [ ] { } : :: , | & . → and any\n // stray character. `::` is emitted as one token, matching the Rust lexer.\n const start = i;\n i++;\n if (c === ':' && source[i] === ':') i++;\n push('punct', start, i);\n }\n\n return tokens;\n}\n","/**\n * English → native rendering of a `.lolo` program and a `.orb` document —\n * the forward direction of `@almadar/core/i18n`.\n *\n * Everything else in this module family goes native → English so a program\n * written in Arabic or Slovenian COMPILES (`aliasMap`, the Rust\n * `Lang::canon_*`). This is the mirror: it takes the canonical English\n * program and renders it in a target language, so a reader can be shown the\n * same program in their own vocabulary.\n *\n * ## Why it is position-aware and not a word substitution\n *\n * The i18n contract (`docs/Almadar_i18n.md` §\"What a native program looks\n * like\") is that the parser \"canonicalizes at the grammar position that\n * expects the word, never by text replacement, so a native identifier that\n * happens to equal a keyword translation is only a keyword where a keyword is\n * expected\". The forward direction inherits that constraint exactly. Blind\n * substitution corrupts real programs: `entity`/`type`/`fields`/`name`/\n * `label`/`description` are all vocabulary words AND the commonest pattern\n * prop keys, and `parse_object_literal` takes object keys VERBATIM — a\n * pattern prop is opaque and is never translated. Likewise an entity's field\n * names and a trait's state names are the author's identifiers even when they\n * spell a keyword.\n *\n * So this walks the token stream with a frame stack that reproduces the\n * parser's positional expectations, and translates only where the grammar\n * says a vocabulary word belongs. Rendering splices into the original source\n * by span, so comments, blank lines and alignment survive byte-for-byte.\n *\n * The gate on all of it is round-trip equality: for the whole `.lolo` corpus,\n * `orb emit orb` of the translated program must equal `orb emit orb` of the\n * English one. That proves both halves — every vocabulary word was translated\n * (or the `.orb` would differ) and no identifier was (same).\n *\n * @packageDocumentation\n */\n\nimport {\n coreTables,\n type I18nSection,\n type LanguageCode,\n type OperatorTables,\n} from './index.js';\nimport { lexLolo, type LoloToken } from './lolo-lexer.js';\nimport type { JsonObject, JsonValue } from '../types/json.js';\n\n// ---------------------------------------------------------------------------\n// Forward (English → native) maps\n// ---------------------------------------------------------------------------\n\n/**\n * The vocabulary families a `.lolo` token position can draw from. `orb` is\n * excluded — those are `.orb` JSON keys, never `.lolo` source words.\n */\nconst LOLO_SECTIONS: readonly I18nSection[] = [\n 'keywords',\n 'shapes',\n 'tags',\n 'categories',\n 'capabilities',\n 'annotations',\n 'sigils',\n 'effects',\n 'types',\n 'units',\n 'literals',\n 'reservedEvents',\n];\n\n/**\n * The order `Lang::canon_any` tries sections in. A native word at an\n * identifier position resolves to the FIRST section that claims it, so this\n * order decides which English word a translation reads back as.\n */\nconst CANON_ANY_ORDER: readonly I18nSection[] = [\n 'keywords',\n 'shapes',\n 'tags',\n 'categories',\n 'capabilities',\n 'annotations',\n 'sigils',\n 'types',\n 'units',\n 'literals',\n 'reservedEvents',\n];\n\n/**\n * English → native for one family (or the union of several), keeping ONLY the\n * entries the parser will read back as the same English word.\n *\n * Two English words can share one native spelling across sections — Arabic\n * has no letter case, so the `event` keyword and the `Event` shape are both\n * `حدث`, as are `entity`/`Entity`, `orbital`/`Orbital`, `page`/`Page` and\n * `trait`/`Trait`. `checkI18nCoverage` rule 3 only forbids collisions WITHIN\n * a section, so these pass the gate (see `docs/Almadar_i18n_Gaps.md` G-i18n-1).\n * At such a word the parser's fixed resolution order picks one meaning, and\n * emitting the other would produce a program that no longer says what the\n * English one said.\n *\n * So an entry survives only if resolving its native spelling through\n * `resolutionOrder` — the same order the parser uses at that token position —\n * lands back on the English word. When it doesn't, the English word is left\n * in place, which is always legal: `canon_*` is consulted only after an\n * exact-English match, so every language accepts English spellings.\n */\nfunction forward(\n lang: LanguageCode,\n sections: readonly I18nSection[],\n resolutionOrder: readonly I18nSection[],\n operators?: OperatorTables,\n): ReadonlyMap<string, string> {\n // `canon_head` is effects-then-operators, so operators are consulted after\n // every section in `resolutionOrder`.\n const canon = (native: string): string | undefined => {\n for (const section of resolutionOrder) {\n for (const [english, value] of Object.entries(coreTables[lang][section])) {\n if (value === native) return english;\n }\n }\n if (operators) {\n for (const [english, value] of Object.entries(operators.operators)) {\n if (value === native) return english;\n }\n }\n return undefined;\n };\n\n const map = new Map<string, string>();\n const add = (english: string, native: string): void => {\n if (canon(native) !== english) return;\n map.set(english, native);\n };\n for (const section of sections) {\n for (const [english, native] of Object.entries(coreTables[lang][section])) {\n add(english, native);\n }\n }\n if (operators) {\n for (const [english, native] of Object.entries(operators.operators)) {\n add(english, native);\n }\n }\n return map;\n}\n\n/**\n * The flat English → native map over every `.lolo` vocabulary family plus the\n * caller's operators. Well-defined because `checkI18nCoverage` rule 2 forbids\n * one English word having two translations across sections — verified at 545\n * entries with zero conflicts for both `ar` and `sl`.\n *\n * Exported for callers that only need the vocabulary (a highlighter building\n * native token patterns, a docs table); `localizeLoloSource` does NOT use it,\n * because which family applies is a positional question.\n */\nexport function localizeMap(\n lang: LanguageCode,\n operators?: OperatorTables,\n): ReadonlyMap<string, string> {\n return forward(lang, LOLO_SECTIONS, CANON_ANY_ORDER, operators);\n}\n\n/**\n * Symbolic operators (`+ - * / % == != < <= > >=`) keep their symbols. They\n * are notation, not words — Arabic and Slovenian source uses the same signs —\n * and translating them would be inconsistent anyway: a lone `=` is\n * punctuation to the lexer (`trait X = …`) while `==` is an operator\n * identifier, so only half the family could ever be rendered.\n */\nfunction isWordShaped(english: string): boolean {\n return /^[A-Za-z_][A-Za-z0-9_/-]*$/.test(english);\n}\n\n// ---------------------------------------------------------------------------\n// Frame stack — the parser's positional expectations, reproduced\n// ---------------------------------------------------------------------------\n\ntype FrameKind =\n /** Top level of the program. */\n | 'root'\n /** Inside `( … )` — an s-expression. Only the head is vocabulary. */\n | 'paren'\n /** An object literal `{ … }`. Keys and values are opaque pattern vocabulary. */\n | 'object'\n /** A value array `[ … ]` inside an s-expression / object. Opaque. */\n | 'array'\n /** A declaration header `[ … ]` — tags, category, capabilities. */\n | 'mods'\n /** A type array `[ … ]` in a field's type position. */\n | 'type-array'\n /** A declaration body whose statements are field declarations. */\n | 'block-fields'\n /** A declaration body whose statements are keyword-led. */\n | 'block-body'\n /** `((x v) (y w))` — a `let` binding list, or a parenthesized lambda param list. */\n | 'binder-list'\n /** `(x v)` — one `let` binding pair; the first token is the author's name. */\n | 'binder-pair';\n\ninterface Frame {\n kind: FrameKind;\n /** First identifier of the statement currently being read in this frame. */\n stmtHead: string | undefined;\n /** The statement keyword that opened this frame (`entity`, `listens`, …). */\n blockHead: string | undefined;\n /** Whether the declaration currently being read has passed a `:`. */\n afterColon: boolean;\n /** Whether the statement currently being read has passed a `=`. */\n sawEquals: boolean;\n /** For a `paren` frame: the s-expression head, once seen. */\n parenHead: string | undefined;\n /** For a `paren` frame: whether the binder list of a `let`/`fn` was already opened. */\n binderSeen: boolean;\n /**\n * True inside the body of a trait REFERENCE (`trait X = Y.traits.Z { … }`).\n * A reference's `config { … }` ASSIGNS knob values (`name: image`) where a\n * declaration's DECLARES knob types (`name : string = \"x\"`) — the same\n * block spelling, opposite meaning for whatever follows the colon.\n */\n refBody: boolean;\n}\n\n/**\n * Blocks whose statements declare NAMES followed by a type — an entity's\n * fields, a `type` alias body, a `config` knob list. Inside these, a\n * statement-leading identifier is the author's field name and is never\n * translated; the words after `:` are types and are.\n */\nconst FIELD_BLOCK_HEADS = new Set(['entity', 'type', 'config', 'params', 'variants', 'tokens', 'event']);\n\n/**\n * Blocks whose statements are EVENT names, each opening its own payload field\n * block: `listens { EMIT_TRACE { event : string! } }`. Without this the inner\n * block reads as keyword-led and a payload field spelling a keyword (`event`,\n * `entities`) would be translated.\n */\nconst EVENT_BLOCK_HEADS = new Set(['listens', 'emits', 'events']);\n\n/**\n * Keywords that introduce a NAME. The identifier immediately after one is the\n * author's, even when it spells a vocabulary word (`state config`).\n */\nconst NAME_INTRODUCING = new Set([\n 'app',\n 'orbital',\n 'entity',\n 'trait',\n 'state',\n 'page',\n 'type',\n 'event',\n 'uses',\n 'theme',\n 'as',\n 'extend',\n]);\n\n/** Punctuation after which an identifier is a target name, never vocabulary. */\nconst NAME_PUNCT = new Set(['->', '-->', '→', '.', '--']);\n\n// ---------------------------------------------------------------------------\n// The renderer\n// ---------------------------------------------------------------------------\n\nexport interface LocalizeLoloOptions {\n /** Operator vocabulary — supplied by the caller (`@almadar/std`), since core must not import std. */\n operators?: OperatorTables;\n}\n\n/**\n * Render an English `.lolo` source in `lang`, preserving the original\n * formatting exactly. `lang === 'en'` returns the source unchanged.\n */\nexport function localizeLoloSource(\n source: string,\n lang: LanguageCode,\n options: LocalizeLoloOptions = {},\n): string {\n if (lang === 'en') return source;\n\n const { operators } = options;\n // Each map's resolution order is the one the PARSER uses at that token\n // position: `canon_any` for identifier/modifier positions, `canon_type` for\n // a field's type, `canon_head` (effects then operators) for an s-expression\n // head, `canon_sigil_or_annotation` for a `@root`.\n const keywords = forward(lang, ['keywords'], CANON_ANY_ORDER);\n const shapes = forward(lang, ['shapes'], CANON_ANY_ORDER);\n const types = forward(lang, ['types'], ['types']);\n const modifiers = forward(lang, ['tags', 'categories', 'capabilities', 'keywords'], CANON_ANY_ORDER);\n const heads = forward(lang, ['effects'], ['effects'], operators);\n const sigils = forward(lang, ['sigils', 'annotations'], ['sigils', 'annotations']);\n // In an EXPRESSION a `@root` is a binding, never an annotation: `@key` in a\n // lambda body is the author's parameter, not the `key` annotation.\n const bindingSigils = forward(lang, ['sigils'], ['sigils', 'annotations']);\n const literals = forward(lang, ['literals'], ['literals']);\n const units = forward(lang, ['units'], ['units']);\n const reservedEvents = forward(lang, ['reservedEvents'], ['reservedEvents']);\n\n const tokens = lexLolo(source);\n const edits: Array<{ start: number; end: number; text: string }> = [];\n\n const stack: Frame[] = [\n {\n kind: 'root',\n stmtHead: undefined,\n blockHead: undefined,\n afterColon: false,\n sawEquals: false,\n refBody: false,\n parenHead: undefined,\n binderSeen: false,\n },\n ];\n const top = (): Frame => stack[stack.length - 1];\n\n /** The previous token that is not a comment. */\n let prev: LoloToken | undefined;\n\n const replace = (token: LoloToken, map: ReadonlyMap<string, string>): void => {\n if (!isWordShaped(token.text)) return;\n const native = map.get(token.text);\n if (native === undefined || native === token.text) return;\n edits.push({ start: token.textStart, end: token.end, text: native });\n };\n\n for (let index = 0; index < tokens.length; index++) {\n const token = tokens[index];\n if (token.kind === 'comment') continue;\n\n const frame = top();\n const startsStatement =\n prev === undefined ||\n prev.text === '{' ||\n prev.text === '}' ||\n source.slice(prev.end, token.start).includes('\\n');\n if (startsStatement) {\n frame.stmtHead = undefined;\n frame.afterColon = false;\n frame.sawEquals = false;\n }\n\n // ── Punctuation: maintain the frame stack ────────────────────────────\n if (token.kind === 'punct') {\n const text = source.slice(token.start, token.end);\n const child = (kind: FrameKind): Frame => ({\n kind,\n stmtHead: undefined,\n blockHead: frame.stmtHead,\n afterColon: false,\n sawEquals: false,\n refBody: frame.refBody || frame.sawEquals,\n parenHead: undefined,\n binderSeen: false,\n });\n if (text === '(' || text === '@(') {\n stack.push({ ...child(parenFrame(frame, prev)), blockHead: undefined });\n if (top().kind === 'binder-list') frame.binderSeen = true;\n } else if (text === '{') {\n stack.push(child(braceFrame(frame, prev)));\n } else if (text === '[') {\n stack.push(child(bracketFrame(frame, prev)));\n } else if (text === ')' || text === '}' || text === ']') {\n if (stack.length > 1) stack.pop();\n // A closing delimiter ends the declaration it belonged to.\n top().afterColon = false;\n top().sawEquals = false;\n } else if (text === ':') {\n frame.afterColon = true;\n } else if (text === '=') {\n // What follows a `=` is a DEFAULT VALUE, not a type:\n // `metaFormat : \"none\" | \"date\" | … = date` — `date` is an enum\n // member the author chose, and `date` is also a type name.\n frame.afterColon = false;\n frame.sawEquals = true;\n } else if (text === ',') {\n // Declarations are comma-separated on one line as often as they are\n // newline-separated: `{ role: string!, timestamp: number }`.\n frame.afterColon = false;\n frame.sawEquals = false;\n frame.stmtHead = undefined;\n }\n prev = token;\n continue;\n }\n\n // An object literal / value array holds pattern data, which is opaque\n // (owner ruling). `@config.x` still binds there, but an annotation word\n // like `@key` is a plain binding name, and `true` / `INIT` are values.\n const opaque =\n frame.kind === 'object' ||\n frame.kind === 'array' ||\n frame.kind === 'binder-list' ||\n (frame.kind === 'binder-pair' && prev !== undefined && prev.text === '(');\n\n // ── Sigils: `@root.tail` / `?payloadField` ───────────────────────────\n if (token.kind === 'sigil') {\n const dot = token.text.indexOf('.');\n const root = dot === -1 ? token.text : token.text.slice(0, dot);\n const native = (opaque || frame.kind === 'paren' ? bindingSigils : sigils).get(root);\n if (native !== undefined && native !== root) {\n edits.push({ start: token.textStart, end: token.textStart + root.length, text: native });\n }\n prev = token;\n continue;\n }\n // `?field` is a payload FIELD reference — the author's name, never vocabulary.\n if (token.kind === 'payload-sigil' || token.kind === 'string' || token.kind === 'number') {\n prev = token;\n continue;\n }\n\n if (token.kind === 'literal') {\n if (!opaque) replace(token, literals);\n prev = token;\n continue;\n }\n\n // ── Identifiers ──────────────────────────────────────────────────────\n const prevText = prev === undefined ? undefined : source.slice(prev.start, prev.end);\n const afterName = prevText !== undefined && (NAME_INTRODUCING.has(prevText) || NAME_PUNCT.has(prevText));\n\n // `INIT` is the one reserved event name. It is vocabulary at an event\n // position — a transition trigger, a listens arm — but a plain string in\n // pattern data (`config { action : string = INIT }`).\n if (token.text === 'INIT' && !opaque && !frame.sawEquals) {\n replace(token, reservedEvents);\n if (frame.stmtHead === undefined) frame.stmtHead = token.text;\n prev = token;\n continue;\n }\n\n // A unit follows a number directly: `every 100 ms` — on the SAME\n // statement, or the `1` ending `j : number = 1` would make the next\n // line's `m : number` field name a minutes unit.\n if (!opaque && !startsStatement && prev !== undefined && prev.kind === 'number') {\n replace(token, units);\n prev = token;\n continue;\n }\n\n switch (frame.kind) {\n case 'paren': {\n // Only the head of an s-expression is vocabulary; every argument is\n // the author's — an entity name, a state name, a pattern prop value.\n if (prevText === '(') {\n frame.parenHead = token.text;\n replace(token, heads);\n }\n break;\n }\n case 'binder-list':\n case 'binder-pair':\n // `(let ((match …)) …)` — a binding NAME, never vocabulary.\n break;\n case 'object':\n case 'array':\n // Pattern props are opaque (owner ruling): keys AND values pass through.\n break;\n case 'mods':\n // `[persistent: orders]` — after the colon is the collection name.\n if (!frame.afterColon) replace(token, modifiers);\n break;\n case 'type-array':\n replace(token, types);\n break;\n case 'block-fields': {\n // `name : Type` — the name is the author's, the type is vocabulary.\n // A default (`= …`) is a value, not a type.\n if (frame.afterColon && !afterName) replace(token, types);\n break;\n }\n case 'root':\n case 'block-body': {\n if (!afterName) replace(token, frame.afterColon ? types : keywords);\n break;\n }\n }\n\n // `type X = Event { … }` — the shape after `=` in a type declaration.\n if ((frame.kind === 'root' || frame.kind === 'block-body') && prevText === '=') {\n replace(token, shapes);\n }\n\n if (frame.stmtHead === undefined) frame.stmtHead = token.text;\n prev = token;\n }\n\n return applyEdits(source, edits);\n}\n\n/**\n * A `(` is normally an s-expression. Two heads bind NAMES first, and a name is\n * the author's even when it spells vocabulary: `(let ((match …) …) body)` —\n * `match` there is a variable, not the match operator — and `(fn (a b) body)`.\n */\nfunction parenFrame(frame: Frame, prev: LoloToken | undefined): FrameKind {\n if (frame.kind === 'binder-list') return 'binder-pair';\n // Only the group IMMEDIATELY after the head binds names: `(fn (a b) body)`\n // does, `(fn c (== …))`'s body does not.\n if (\n frame.kind === 'paren' &&\n !frame.binderSeen &&\n prev !== undefined &&\n prev.text === frame.parenHead &&\n (frame.parenHead === 'let' || frame.parenHead === 'fn' || frame.parenHead === 'lambda')\n ) {\n return 'binder-list';\n }\n return 'paren';\n}\n\n/**\n * A `{` opens an object literal inside an s-expression, or a field default\n * (`seedRow : ModalRecord = {}`); everything else is a declaration body. Note\n * `type X = { … }` / `type X = Event { … }` is NOT a value — a type alias's\n * body declares fields — so the `= {` rule only applies inside a field block.\n */\nfunction braceFrame(frame: Frame, prev: LoloToken | undefined): FrameKind {\n if (isExpression(frame.kind)) return 'object';\n if (frame.kind === 'block-fields' && prev !== undefined && prev.text === '=') return 'object';\n // A trait REFERENCE's `config { name: image }` assigns knob VALUES; only a\n // trait DECLARATION's `config { name : string = \"x\" }` declares types.\n if (frame.refBody && frame.stmtHead === 'config') return 'object';\n // A nested block under `listens`/`emits`/`events` is one event's payload.\n if (frame.blockHead !== undefined && EVENT_BLOCK_HEADS.has(frame.blockHead)) return 'block-fields';\n // An inline structural type: `data : { … }` or `data : [{ … }]`.\n if (frame.kind === 'type-array') return 'block-fields';\n if (frame.kind === 'block-fields' && frame.afterColon) return 'block-fields';\n const head = frame.stmtHead;\n return head !== undefined && FIELD_BLOCK_HEADS.has(head) ? 'block-fields' : 'block-body';\n}\n\n/** A `[` is a value array inside an expression, a type array after `:`, a modifier list otherwise. */\nfunction bracketFrame(frame: Frame, prev: LoloToken | undefined): FrameKind {\n if (isExpression(frame.kind)) return 'array';\n if (prev !== undefined && prev.text === '=') return 'array';\n if (frame.afterColon) return frame.kind === 'block-fields' ? 'type-array' : 'array';\n return 'mods';\n}\n\n/** Frames whose contents are expression / data, never declaration syntax. */\nfunction isExpression(kind: FrameKind): boolean {\n return (\n kind === 'paren' ||\n kind === 'object' ||\n kind === 'array' ||\n kind === 'binder-list' ||\n kind === 'binder-pair'\n );\n}\n\nfunction applyEdits(\n source: string,\n edits: Array<{ start: number; end: number; text: string }>,\n): string {\n if (edits.length === 0) return source;\n edits.sort((a, b) => a.start - b.start);\n let out = '';\n let cursor = 0;\n for (const edit of edits) {\n if (edit.start < cursor) continue;\n out += source.slice(cursor, edit.start) + edit.text;\n cursor = edit.end;\n }\n return out + source.slice(cursor);\n}\n\n// ---------------------------------------------------------------------------\n// `.orb` documents\n// ---------------------------------------------------------------------------\n\n/**\n * Render an English `.orb` value in `lang` — the exact inverse of the Rust\n * `translate_orb_value`: object keys via `orb`, a `type` value via `types`,\n * an array's leading string (an s-expression / effect head) via\n * `effects ∪ operators`, and the root of any `@sigil` string. Every other\n * string — an entity name, a label, free text — is left alone.\n */\nexport function localizeOrbValue(\n value: JsonValue,\n lang: LanguageCode,\n options: LocalizeLoloOptions = {},\n): JsonValue {\n if (lang === 'en') return value;\n const orbKeys = forward(lang, ['orb'], ['orb']);\n const types = forward(lang, ['types'], ['types']);\n const tags = forward(lang, ['tags'], ['tags']);\n const heads = forward(lang, ['effects'], ['effects'], options.operators);\n const sigils = forward(lang, ['sigils'], ['sigils', 'annotations']);\n\n /**\n * `type` is overloaded, and only POSITION separates the two meanings: on an\n * entity field it names a field type (`\"type\": \"date\"`), inside a\n * `render-ui` props object it names a PATTERN (`{ \"type\": \"icon\" }`), which\n * is opaque by the pattern-vocabulary ruling. Exactly one of the 279 pattern\n * names collides with a field-type word — `icon` — and translating it there\n * renamed the pattern. `inExpression` is set once we descend into an\n * s-expression, which is the only way a pattern name is reachable.\n *\n * Note this defect round-trips: the inbound walker applied the same rule, so\n * `orb emit orb` matched and the round-trip gate could not see it. A\n * symmetric error is invisible to a symmetric gate — hence the dedicated\n * assertion in the tests.\n */\n const walk = (node: JsonValue, inExpression: boolean): JsonValue => {\n if (Array.isArray(node)) {\n // An array is an s-expression only when its head resolves as one; a\n // plain value list (`\"fields\": [\"title\", \"completed\"]`) is not.\n const head = node[0];\n const native = typeof head === 'string' ? heads.get(head) : undefined;\n const isExpression = native !== undefined;\n const items = node.map((child, index) =>\n index === 0 && isExpression ? child : walk(child, inExpression || isExpression),\n );\n if (native !== undefined) items[0] = native;\n return items;\n }\n if (node !== null && typeof node === 'object') {\n const out: JsonObject = {};\n for (const [key, child] of Object.entries(node)) {\n const nativeKey = orbKeys.get(key) ?? key;\n let next = walk(child, inExpression);\n if (typeof next === 'string') {\n if (key === 'type' && !inExpression) next = types.get(next) ?? next;\n // `\"persistence\": \"persistent\"` — the word is `tags` vocabulary and\n // has always had a translation; only this walker never applied it.\n else if (key === 'persistence') next = tags.get(next) ?? next;\n }\n out[nativeKey] = next;\n }\n return out;\n }\n if (typeof node === 'string' && node.startsWith('@')) {\n const rest = node.slice(1);\n const dot = rest.indexOf('.');\n const root = dot === -1 ? rest : rest.slice(0, dot);\n const native = sigils.get(root);\n if (native === undefined) return node;\n return dot === -1 ? `@${native}` : `@${native}${rest.slice(dot)}`;\n }\n return node;\n };\n\n return walk(value, false);\n}\n","/**\n * Internationalization (i18n) — vocabulary tables for the `.lolo`/`.orb`\n * language (English, Arabic, Slovenian). See `Almadar_i18n.md` / the i18n\n * program plan for the section contract; this module is the JS-path owner.\n *\n * @packageDocumentation\n */\n\nimport orbNotationRaw from './orb-notation.json';\nimport enRaw from './en.json';\nimport arRaw from './ar.json';\nimport slRaw from './sl.json';\n\nexport type LanguageCode = 'en' | 'ar' | 'sl';\n\nexport const LANGUAGE_CODES: readonly LanguageCode[] = ['en', 'ar', 'sl'];\n\nexport const I18N_SECTIONS = [\n 'keywords',\n 'shapes',\n 'tags',\n 'categories',\n 'capabilities',\n 'annotations',\n 'sigils',\n 'effects',\n 'types',\n 'units',\n 'literals',\n 'reservedEvents',\n 'orb',\n] as const;\n\nexport type I18nSection = typeof I18N_SECTIONS[number];\n\nexport interface I18nMeta {\n code: LanguageCode;\n name: string;\n rtl: boolean;\n}\n\nexport type I18nTables = { meta: I18nMeta } & Record<I18nSection, Record<string, string>>;\n\n/** Supplied by the caller (@almadar/std) — core must not import std. */\nexport interface OperatorTables {\n operators: Record<string, string>;\n}\n\n// ---------------------------------------------------------------------------\n// Validating loader — builds an I18nTables from the raw JSON import without a\n// type assertion. Throws on genuine structural corruption (not an object, a\n// malformed `meta`, or a present section that isn't Record<string,string>).\n// A section that is entirely ABSENT is tolerated as empty rather than\n// thrown on — ar.json/sl.json are filled in section-by-section by other\n// agents, and an incomplete table is the coverage gate's job to report\n// (kind: 'missing'), not a load-time crash.\n// ---------------------------------------------------------------------------\n\n/** Shape of an on-disk i18n table before validation; every field is unvalidated. */\ninterface RawI18nTable {\n meta: unknown;\n keywords: unknown;\n shapes: unknown;\n tags: unknown;\n categories: unknown;\n capabilities: unknown;\n annotations: unknown;\n sigils: unknown;\n effects: unknown;\n types: unknown;\n units: unknown;\n literals: unknown;\n reservedEvents: unknown;\n orb: unknown;\n}\n\nfunction isPlainObject(x: unknown): x is object {\n return typeof x === 'object' && x !== null && !Array.isArray(x);\n}\n\nfunction isRawI18nTable(x: unknown): x is RawI18nTable {\n return isPlainObject(x);\n}\n\nfunction isStringRecord(x: unknown): x is Record<string, string> {\n if (!isPlainObject(x)) return false;\n for (const value of Object.values(x)) {\n if (typeof value !== 'string') return false;\n }\n return true;\n}\n\nfunction isLanguageCode(x: unknown): x is LanguageCode {\n return x === 'en' || x === 'ar' || x === 'sl';\n}\n\nfunction isI18nMeta(x: unknown): x is I18nMeta {\n if (!isPlainObject(x) || !('code' in x) || !('name' in x) || !('rtl' in x)) return false;\n return isLanguageCode(x.code) && typeof x.name === 'string' && typeof x.rtl === 'boolean';\n}\n\nfunction emptySections(): Record<I18nSection, Record<string, string>> {\n return {\n keywords: {},\n shapes: {},\n tags: {},\n categories: {},\n capabilities: {},\n annotations: {},\n sigils: {},\n effects: {},\n types: {},\n units: {},\n literals: {},\n reservedEvents: {},\n orb: {},\n };\n}\n\n/** Validating loader — the one owner of the table shape; every reader (core, pattern-sync) goes through it. */\nexport function parseI18nTables(raw: unknown, source: string): I18nTables {\n if (!isRawI18nTable(raw)) {\n throw new Error(`i18n table \"${source}\": expected a JSON object, got ${typeof raw}`);\n }\n if (!isI18nMeta(raw.meta)) {\n throw new Error(`i18n table \"${source}\": missing or malformed \"meta\" (expected { code, name, rtl })`);\n }\n const badSections: string[] = [];\n const sections = emptySections();\n for (const section of I18N_SECTIONS) {\n const value = raw[section];\n if (value === undefined) continue;\n if (!isStringRecord(value)) {\n badSections.push(section);\n continue;\n }\n sections[section] = value;\n }\n if (badSections.length > 0) {\n throw new Error(`i18n table \"${source}\": sections not Record<string,string>: ${badSections.join(', ')}`);\n }\n return { meta: raw.meta, ...sections };\n}\n\n/** Validating loader for `orb-notation.json` — no assertion, same contract as the tables. */\nfunction parseNotationKeys(raw: unknown, source: string): string[] {\n if (!isPlainObject(raw) || !('keys' in raw) || !Array.isArray(raw.keys)) {\n throw new Error(`notation file \"${source}\": expected { keys: string[] }`);\n }\n const keys: string[] = [];\n for (const key of raw.keys) {\n if (typeof key !== 'string') {\n throw new Error(`notation file \"${source}\": every key must be a string`);\n }\n keys.push(key);\n }\n return keys;\n}\n\nexport function parseOperatorTables(raw: unknown, source: string): OperatorTables {\n if (!isPlainObject(raw) || !('operators' in raw) || !isStringRecord(raw.operators)) {\n throw new Error(`operator table \"${source}\": expected { operators: Record<string,string> }`);\n }\n return { operators: raw.operators };\n}\n\n/**\n * `.orb` schema keys that are DESIGN-SYSTEM notation, not language vocabulary,\n * and so are deliberately absent from the `orb` section: the colour palette,\n * the spacing and type scales, density, elevation, geometry, motion,\n * iconography and illustration token names.\n *\n * Derived, not curated — a key whose every path through `OrbitalSchema` lies\n * under a theme `tokens` node. Regenerate with\n * `pnpm --filter @almadar/core run gen:orb-notation`; the universe test\n * re-derives it and fails if this file drifts.\n */\nexport const ORB_NOTATION_KEYS: ReadonlySet<string> = new Set(\n parseNotationKeys(orbNotationRaw, 'orb-notation.json'),\n);\n\nexport const coreTables: Record<LanguageCode, I18nTables> = {\n en: parseI18nTables(enRaw, 'en.json'),\n ar: parseI18nTables(arRaw, 'ar.json'),\n sl: parseI18nTables(slRaw, 'sl.json'),\n};\n\nexport function getVocabulary(lang: LanguageCode): I18nTables {\n return coreTables[lang];\n}\n\n/** Native → English map for one section family; operators come from the caller (std). */\nexport function aliasMap(\n lang: LanguageCode,\n section: I18nSection | 'operators',\n operators?: OperatorTables,\n): ReadonlyMap<string, string> {\n let table: Record<string, string>;\n if (section === 'operators') {\n if (!operators) {\n throw new Error(`aliasMap(\"${lang}\", \"operators\") requires an OperatorTables argument`);\n }\n table = operators.operators;\n } else {\n table = coreTables[lang][section];\n }\n const map = new Map<string, string>();\n for (const [english, native] of Object.entries(table)) {\n map.set(native, english);\n }\n return map;\n}\n\n/** The token equals exactly one language's `keywords.app` value. */\n/** The keywords that can legally open a `.lolo` program (top-level structure, LOLO.md §3). */\nexport const LOLO_FIRST_TOKEN_KEYWORDS = ['app', 'uses', 'expects', 'type', 'theme', 'orbital'] as const;\n\n/** A `.lolo` program's language: its first token is one language's translation of a first-token keyword. */\nexport function languageOfLoloFirstToken(token: string): LanguageCode | undefined {\n const matches = LANGUAGE_CODES.filter((lang) =>\n LOLO_FIRST_TOKEN_KEYWORDS.some((kw) => coreTables[lang].keywords[kw] === token),\n );\n return matches.length === 1 ? matches[0] : undefined;\n}\n\n/** A top-level `.orb` key equals exactly one language's `orb.orbitals` value. */\nexport function languageOfOrbTopLevelKeys(keys: readonly string[]): LanguageCode | undefined {\n const keySet = new Set(keys);\n const matches = LANGUAGE_CODES.filter((lang) => keySet.has(coreTables[lang].orb.orbitals));\n return matches.length === 1 ? matches[0] : undefined;\n}\n\n// ---------------------------------------------------------------------------\n// Coverage gate\n// ---------------------------------------------------------------------------\n\nexport type I18nProblemKind =\n | 'missing'\n | 'orphan'\n | 'empty'\n | 'inconsistent'\n | 'collision'\n | 'selector-not-unique'\n | 'operators-mismatch'\n | 'identical-to-english'\n | 'notation-in-vocabulary';\n\nexport interface I18nProblem {\n lang: LanguageCode;\n section: string;\n kind: I18nProblemKind;\n key: string;\n detail?: string;\n}\n\nexport interface I18nCoverageInput {\n core: Record<LanguageCode, I18nTables>;\n std?: Record<LanguageCode, OperatorTables>;\n canonicalOperators?: readonly string[];\n}\n\n/**\n * The one implementation of the i18n coverage rules (plan B1):\n * missing/orphan/empty key sets, cross-section translation consistency,\n * native-value collisions (within a section, and across effects∪operators),\n * unique language-selector translations, and operator-set parity.\n * Never truncates — returns every problem found.\n */\nexport function checkI18nCoverage(input: I18nCoverageInput): { ok: boolean; problems: I18nProblem[] } {\n const problems: I18nProblem[] = [];\n const { core, std, canonicalOperators } = input;\n const enTable = core.en;\n\n // (0) notation-in-vocabulary — a design-system token name must never be a\n // vocabulary key. The `orb` section is \"every serialized key of the `.orb`\n // schema\", and a theme's token maps put their token NAMES in key position,\n // so the type-walk that builds the section will re-introduce them on any\n // schema change unless something says no. Owner ruling 2026-09-07: the\n // vocabulary is what the LANGUAGE defines; a library's API surface stays\n // English. See ORB_NOTATION_KEYS / scripts/gen-orb-notation.mts.\n for (const lang of LANGUAGE_CODES) {\n for (const key of Object.keys(core[lang].orb)) {\n if (ORB_NOTATION_KEYS.has(key)) {\n problems.push({\n lang,\n section: 'orb',\n kind: 'notation-in-vocabulary',\n key,\n detail: 'design-system token name — notation, not language vocabulary',\n });\n }\n }\n }\n\n // (1) missing / orphan / empty\n for (const lang of LANGUAGE_CODES) {\n const table = core[lang];\n for (const section of I18N_SECTIONS) {\n const values = table[section];\n if (lang !== 'en') {\n const enKeys = new Set(Object.keys(enTable[section]));\n const langKeys = new Set(Object.keys(values));\n for (const key of enKeys) {\n if (!langKeys.has(key)) {\n problems.push({ lang, section, kind: 'missing', key });\n }\n }\n for (const key of langKeys) {\n if (!enKeys.has(key)) {\n problems.push({ lang, section, kind: 'orphan', key });\n }\n }\n }\n for (const [key, value] of Object.entries(values)) {\n if (value === '') {\n problems.push({ lang, section, kind: 'empty', key });\n }\n }\n }\n }\n\n // (2) inconsistent — the same English word translated differently across sections\n // (including operators) within one language\n for (const lang of LANGUAGE_CODES) {\n const table = core[lang];\n const occurrences = new Map<string, Array<{ section: string; value: string }>>();\n for (const section of I18N_SECTIONS) {\n for (const [key, value] of Object.entries(table[section])) {\n const list = occurrences.get(key) ?? [];\n list.push({ section, value });\n occurrences.set(key, list);\n }\n }\n const opTable = std?.[lang]?.operators;\n if (opTable) {\n for (const [key, value] of Object.entries(opTable)) {\n const list = occurrences.get(key) ?? [];\n list.push({ section: 'operators', value });\n occurrences.set(key, list);\n }\n }\n for (const [key, entries] of occurrences) {\n if (entries.length < 2) continue;\n const baseline = entries[0];\n for (let i = 1; i < entries.length; i++) {\n const entry = entries[i];\n if (entry.value !== baseline.value) {\n problems.push({\n lang,\n section: entry.section,\n kind: 'inconsistent',\n key,\n detail: `\"${key}\" is \"${baseline.value}\" in ${baseline.section} but \"${entry.value}\" in ${entry.section}`,\n });\n }\n }\n }\n }\n\n // (3) collision — two English keys sharing a native value, per section and across effects∪operators\n for (const lang of LANGUAGE_CODES) {\n const table = core[lang];\n for (const section of I18N_SECTIONS) {\n const byValue = new Map<string, string[]>();\n for (const [key, value] of Object.entries(table[section])) {\n const keys = byValue.get(value) ?? [];\n keys.push(key);\n byValue.set(value, keys);\n }\n for (const [value, keys] of byValue) {\n if (keys.length < 2) continue;\n for (let i = 1; i < keys.length; i++) {\n problems.push({\n lang,\n section,\n kind: 'collision',\n key: keys[i],\n detail: `shares native value \"${value}\" with \"${keys[0]}\" in ${section}`,\n });\n }\n }\n }\n\n const combined = new Map<string, Array<{ section: string; key: string }>>();\n for (const [key, value] of Object.entries(table.effects)) {\n const list = combined.get(value) ?? [];\n list.push({ section: 'effects', key });\n combined.set(value, list);\n }\n const opTable = std?.[lang]?.operators;\n if (opTable) {\n for (const [key, value] of Object.entries(opTable)) {\n const list = combined.get(value) ?? [];\n list.push({ section: 'operators', key });\n combined.set(value, list);\n }\n }\n // The same English word in both sections (`set`, `if`, …) is one concept, not a collision.\n for (const [value, entries] of combined) {\n const hasEffects = entries.some((e) => e.section === 'effects');\n const hasOperators = entries.some((e) => e.section === 'operators');\n if (!(hasEffects && hasOperators)) continue;\n const first = entries[0];\n for (const entry of entries.slice(1)) {\n if (entry.key === first.key) continue;\n problems.push({\n lang,\n section: 'effects∪operators',\n kind: 'collision',\n key: entry.key,\n detail: `shares native value \"${value}\" with \"${first.key}\" (${first.section}) in effects∪operators`,\n });\n }\n }\n }\n\n // (5) selector-not-unique — the translations that select a file's language (every first-token\n // keyword for `.lolo`, `orb.orbitals` for `.orb`) must not be shared by two languages.\n const selectorUses = new Map<string, Array<{ lang: LanguageCode; section: string; key: string }>>();\n for (const lang of LANGUAGE_CODES) {\n const table = core[lang];\n const selectors: Array<{ section: string; key: string; value: string }> = [\n ...LOLO_FIRST_TOKEN_KEYWORDS.map((key) => ({ section: 'keywords', key, value: table.keywords[key] })),\n { section: 'orb', key: 'orbitals', value: table.orb.orbitals },\n ];\n for (const { section, key, value } of selectors) {\n if (value === undefined) continue;\n const uses = selectorUses.get(value) ?? [];\n uses.push({ lang, section, key });\n selectorUses.set(value, uses);\n }\n }\n for (const [value, uses] of selectorUses) {\n const langs = new Set(uses.map((u) => u.lang));\n if (langs.size < 2) continue;\n for (const use of uses) {\n const others = uses.filter((u) => u.lang !== use.lang).map((u) => `${u.lang}:${u.section}.${u.key}`);\n problems.push({\n lang: use.lang,\n section: use.section,\n kind: 'selector-not-unique',\n key: use.key,\n detail: `${use.section}.${use.key} = \"${value}\" is also a language selector in: ${others.join(', ')}`,\n });\n }\n }\n\n // operators-mismatch — every language's operator key set must equal the canonical set exactly\n if (std && canonicalOperators) {\n const canonicalSet = new Set(canonicalOperators);\n for (const lang of LANGUAGE_CODES) {\n const opTable = std[lang]?.operators;\n if (!opTable) continue;\n const langKeys = new Set(Object.keys(opTable));\n for (const op of canonicalSet) {\n if (!langKeys.has(op)) {\n problems.push({ lang, section: 'operators', kind: 'operators-mismatch', key: op, detail: 'missing from language operator table' });\n }\n }\n for (const op of langKeys) {\n if (!canonicalSet.has(op)) {\n problems.push({ lang, section: 'operators', kind: 'operators-mismatch', key: op, detail: 'not present in canonical operator set' });\n }\n }\n }\n }\n\n return { ok: problems.length === 0, problems };\n}\n\n/**\n * Informational only — NOT part of the coverage gate (Slovenian legitimately\n * carries loanwords identical to English). Lists native values equal to the\n * English value, for a human to spot-check.\n */\nexport function reportIdenticalToEnglish(input: I18nCoverageInput): I18nProblem[] {\n const problems: I18nProblem[] = [];\n const enTable = input.core.en;\n for (const lang of LANGUAGE_CODES) {\n if (lang === 'en') continue;\n const table = input.core[lang];\n for (const section of I18N_SECTIONS) {\n for (const [key, value] of Object.entries(table[section])) {\n const enValue = enTable[section][key];\n if (enValue !== undefined && value === enValue) {\n problems.push({ lang, section, kind: 'identical-to-english', key, detail: `matches English value \"${enValue}\"` });\n }\n }\n }\n }\n return problems;\n}\n\n// ---------------------------------------------------------------------------\n// Forward direction (English → native) — see ./localize.ts\n// ---------------------------------------------------------------------------\n\nexport { lexLolo } from './lolo-lexer.js';\nexport type { LoloToken, LoloTokenKind } from './lolo-lexer.js';\nexport {\n localizeMap,\n localizeLoloSource,\n localizeOrbValue,\n} from './localize.js';\nexport type { LocalizeLoloOptions } from './localize.js';\n"]}
1
+ {"version":3,"sources":["../../src/i18n/orb-notation.json","../../src/i18n/en.json","../../src/i18n/ar.json","../../src/i18n/sl.json","../../src/i18n/lolo-lexer.ts","../../src/i18n/localize.ts","../../src/i18n/index.ts"],"names":["start","isExpression"],"mappings":"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","file":"index.js","sourcesContent":["{\n \"reason\": \"Design-system token NAMES reachable only under a theme `tokens` node. They are keys of the .orb schema but notation, not language vocabulary, so they are excluded from the `orb` i18n section (owner ruling 2026-09-07). Regenerate with: pnpm --filter @almadar/core run gen:orb-notation\",\n \"keys\": [\n \"2xl\",\n \"3xl\",\n \"4xl\",\n \"accent\",\n \"accentForeground\",\n \"background\",\n \"base\",\n \"bodyDefault\",\n \"bodyEmphasis\",\n \"bodyFamily\",\n \"bodyQuiet\",\n \"border\",\n \"borderHairline\",\n \"borderHeavy\",\n \"borderHover\",\n \"borderStandard\",\n \"buttonHeightLg\",\n \"buttonHeightMd\",\n \"buttonHeightSm\",\n \"caption\",\n \"card\",\n \"cardElevation\",\n \"cardForeground\",\n \"cardPaddingLg\",\n \"cardPaddingMd\",\n \"cardPaddingSm\",\n \"defaultSize\",\n \"dialogElevation\",\n \"dialogPadding\",\n \"display-1\",\n \"display-2\",\n \"displayFamily\",\n \"dramatic\",\n \"duration\",\n \"durations\",\n \"easing\",\n \"easings\",\n \"emphasized\",\n \"emptyAsset\",\n \"enter\",\n \"error\",\n \"errorAsset\",\n \"errorForeground\",\n \"exit\",\n \"expand\",\n \"family\",\n \"fast\",\n \"foreground\",\n \"headingMajor\",\n \"headingMinor\",\n \"hover\",\n \"info\",\n \"infoForeground\",\n \"input\",\n \"inputHeightLg\",\n \"inputHeightMd\",\n \"inputHeightSm\",\n \"instant\",\n \"intents\",\n \"lg\",\n \"lineHeight\",\n \"linear\",\n \"loadingAsset\",\n \"monoFamily\",\n \"muted\",\n \"mutedForeground\",\n \"normal\",\n \"numeric\",\n \"onboardingAsset\",\n \"placeholder\",\n \"popoverElevation\",\n \"press\",\n \"primary\",\n \"primaryForeground\",\n \"primaryHover\",\n \"radiusContainer\",\n \"radiusInteractive\",\n \"radiusPill\",\n \"ring\",\n \"rowHeightCompact\",\n \"rowHeightNormal\",\n \"rowHeightSpacious\",\n \"scale\",\n \"secondary\",\n \"secondaryForeground\",\n \"secondaryHover\",\n \"sectionGap\",\n \"size\",\n \"slot\",\n \"slow\",\n \"sm\",\n \"space0\",\n \"space1\",\n \"space10\",\n \"space11\",\n \"space12\",\n \"space2\",\n \"space3\",\n \"space4\",\n \"space5\",\n \"space6\",\n \"space7\",\n \"space8\",\n \"space9\",\n \"spring\",\n \"standard\",\n \"strokeWidth\",\n \"success\",\n \"successForeground\",\n \"surface\",\n \"surfaceHover\",\n \"tableBorder\",\n \"tableHeader\",\n \"tableRowHover\",\n \"toastElevation\",\n \"warning\",\n \"warningForeground\",\n \"weight\",\n \"xl\",\n \"xs\"\n ]\n}\n","{\n \"meta\": {\n \"code\": \"en\",\n \"name\": \"English\",\n \"rtl\": false\n },\n \"keywords\": {\n \"app\": \"app\",\n \"orbital\": \"orbital\",\n \"uses\": \"uses\",\n \"expects\": \"expects\",\n \"entity\": \"entity\",\n \"type\": \"type\",\n \"derived\": \"derived\",\n \"trait\": \"trait\",\n \"initial\": \"initial\",\n \"state\": \"state\",\n \"for\": \"for\",\n \"page\": \"page\",\n \"as\": \"as\",\n \"theme\": \"theme\",\n \"emits\": \"emits\",\n \"listens\": \"listens\",\n \"ticks\": \"ticks\",\n \"config\": \"config\",\n \"when\": \"when\",\n \"with\": \"with\",\n \"from\": \"from\",\n \"to\": \"to\",\n \"every\": \"every\",\n \"capabilities\": \"capabilities\",\n \"match\": \"match\",\n \"external\": \"external\",\n \"internal\": \"internal\",\n \"on\": \"on\",\n \"name\": \"name\",\n \"fields\": \"fields\",\n \"events\": \"events\",\n \"event\": \"event\",\n \"emitsScope\": \"emitsScope\",\n \"identity\": \"identity\",\n \"pages\": \"pages\",\n \"omit\": \"omit\",\n \"only\": \"only\",\n \"roles\": \"roles\",\n \"entities\": \"entities\",\n \"extend\": \"extend\"\n },\n \"shapes\": {\n \"Entity\": \"Entity\",\n \"Trait\": \"Trait\",\n \"Page\": \"Page\",\n \"Orbital\": \"Orbital\",\n \"Event\": \"Event\"\n },\n \"tags\": {\n \"persistent\": \"persistent\",\n \"runtime\": \"runtime\",\n \"shared\": \"shared\",\n \"local\": \"local\",\n \"identity\": \"identity\",\n \"instance\": \"instance\",\n \"collection\": \"collection\"\n },\n \"categories\": {\n \"interaction\": \"interaction\",\n \"integration\": \"integration\",\n \"lifecycle\": \"lifecycle\",\n \"game-core\": \"game-core\",\n \"game-entity\": \"game-entity\",\n \"game-ui\": \"game-ui\"\n },\n \"capabilities\": {\n \"read\": \"read\",\n \"write\": \"write\",\n \"browse\": \"browse\",\n \"create\": \"create\",\n \"update\": \"update\",\n \"delete\": \"delete\",\n \"notify\": \"notify\",\n \"schedule\": \"schedule\",\n \"invoke\": \"invoke\"\n },\n \"annotations\": {\n \"key\": \"key\",\n \"unique\": \"unique\",\n \"intrinsic\": \"intrinsic\",\n \"label\": \"label\",\n \"description\": \"description\",\n \"synonyms\": \"synonyms\",\n \"tier\": \"tier\",\n \"rebindable\": \"rebindable\",\n \"read\": \"read\",\n \"create\": \"create\",\n \"update\": \"update\",\n \"delete\": \"delete\",\n \"icon\": \"icon\"\n },\n \"sigils\": {\n \"entity\": \"entity\",\n \"payload\": \"payload\",\n \"state\": \"state\",\n \"now\": \"now\",\n \"config\": \"config\",\n \"user\": \"user\",\n \"trait\": \"trait\"\n },\n \"effects\": {\n \"set\": \"set\",\n \"fetch\": \"fetch\",\n \"persist\": \"persist\",\n \"emit\": \"emit\",\n \"navigate\": \"navigate\",\n \"navigate-back\": \"navigate-back\",\n \"render-ui\": \"render-ui\",\n \"notify\": \"notify\",\n \"ref\": \"ref\",\n \"call-service\": \"call-service\",\n \"invoke\": \"invoke\",\n \"do\": \"do\",\n \"if\": \"if\",\n \"let\": \"let\",\n \"fn\": \"fn\",\n \"lambda\": \"lambda\",\n \"match\": \"match\",\n \"when\": \"when\"\n },\n \"types\": {\n \"string\": \"string\",\n \"number\": \"number\",\n \"int\": \"int\",\n \"float\": \"float\",\n \"bool\": \"bool\",\n \"boolean\": \"boolean\",\n \"timestamp\": \"timestamp\",\n \"date\": \"date\",\n \"datetime\": \"datetime\",\n \"duration\": \"duration\",\n \"money\": \"money\",\n \"scalar\": \"scalar\",\n \"file\": \"file\",\n \"email\": \"email\",\n \"url\": \"url\",\n \"phone\": \"phone\",\n \"uuid\": \"uuid\",\n \"image\": \"image\",\n \"icon\": \"icon\",\n \"asset\": \"asset\",\n \"component\": \"component\",\n \"object\": \"object\",\n \"array\": \"array\",\n \"enum\": \"enum\",\n \"relation\": \"relation\",\n \"node\": \"node\",\n \"union\": \"union\",\n \"void\": \"void\",\n \"null\": \"null\",\n \"any\": \"any\",\n \"trait\": \"trait\",\n \"entity\": \"entity\",\n \"event\": \"event\",\n \"slot\": \"slot\",\n \"pattern\": \"pattern\",\n \"Map\": \"Map\",\n \"secret\": \"secret\",\n \"SExpr\": \"SExpr\"\n },\n \"units\": {\n \"ms\": \"ms\",\n \"s\": \"s\",\n \"m\": \"m\",\n \"h\": \"h\",\n \"d\": \"d\"\n },\n \"literals\": {\n \"true\": \"true\",\n \"false\": \"false\",\n \"null\": \"null\"\n },\n \"reservedEvents\": {\n \"INIT\": \"INIT\"\n },\n \"orb\": {\n \"_metadata\": \"_metadata\",\n \"_resolved\": \"_resolved\",\n \"access_waivers\": \"access_waivers\",\n \"alias\": \"alias\",\n \"animations\": \"animations\",\n \"appliesTo\": \"appliesTo\",\n \"as\": \"as\",\n \"aspect\": \"aspect\",\n \"assetRef\": \"assetRef\",\n \"at\": \"at\",\n \"auth\": \"auth\",\n \"auxiliaryEntities\": \"auxiliaryEntities\",\n \"bakedName\": \"bakedName\",\n \"baseUrl\": \"baseUrl\",\n \"behavior\": \"behavior\",\n \"capabilities\": \"capabilities\",\n \"cardinality\": \"cardinality\",\n \"category\": \"category\",\n \"className\": \"className\",\n \"classification\": \"classification\",\n \"collection\": \"collection\",\n \"color\": \"color\",\n \"colors\": \"colors\",\n \"component\": \"component\",\n \"config\": \"config\",\n \"configProvenance\": \"configProvenance\",\n \"container\": \"container\",\n \"content\": \"content\",\n \"create\": \"create\",\n \"create_policy\": \"create_policy\",\n \"createdAt\": \"createdAt\",\n \"curName\": \"curName\",\n \"customPatterns\": \"customPatterns\",\n \"darkMode\": \"darkMode\",\n \"dataEntities\": \"dataEntities\",\n \"default\": \"default\",\n \"definerKnob\": \"definerKnob\",\n \"delayMs\": \"delayMs\",\n \"delete\": \"delete\",\n \"delete_policy\": \"delete_policy\",\n \"density\": \"density\",\n \"description\": \"description\",\n \"description_visual_prompt\": \"description_visual_prompt\",\n \"design\": \"design\",\n \"designTokens\": \"designTokens\",\n \"detailPattern\": \"detailPattern\",\n \"device\": \"device\",\n \"dimension\": \"dimension\",\n \"domainContext\": \"domainContext\",\n \"effectRow\": \"effectRow\",\n \"effects\": \"effects\",\n \"elevation\": \"elevation\",\n \"emitIds\": \"emitIds\",\n \"emits\": \"emits\",\n \"emitsScope\": \"emitsScope\",\n \"enabled\": \"enabled\",\n \"entities\": \"entities\",\n \"entity\": \"entity\",\n \"entityBindingDescription\": \"entityBindingDescription\",\n \"entityBindingSynonyms\": \"entityBindingSynonyms\",\n \"entityContract\": \"entityContract\",\n \"entityId\": \"entityId\",\n \"entityRebindable\": \"entityRebindable\",\n \"entityRefIds\": \"entityRefIds\",\n \"entries\": \"entries\",\n \"env\": \"env\",\n \"equals\": \"equals\",\n \"event\": \"event\",\n \"eventId\": \"eventId\",\n \"eventIds\": \"eventIds\",\n \"events\": \"events\",\n \"expects\": \"expects\",\n \"exposes\": \"exposes\",\n \"extend\": \"extend\",\n \"extends\": \"extends\",\n \"extendsId\": \"extendsId\",\n \"field\": \"field\",\n \"fields\": \"fields\",\n \"flowPattern\": \"flowPattern\",\n \"foreignKey\": \"foreignKey\",\n \"formPattern\": \"formPattern\",\n \"forwardedFrom\": \"forwardedFrom\",\n \"from\": \"from\",\n \"geometry\": \"geometry\",\n \"guard\": \"guard\",\n \"guards\": \"guards\",\n \"headers\": \"headers\",\n \"icon\": \"icon\",\n \"iconography\": \"iconography\",\n \"id\": \"id\",\n \"identity\": \"identity\",\n \"illustration\": \"illustration\",\n \"inbound\": \"inbound\",\n \"initialEffects\": \"initialEffects\",\n \"instances\": \"instances\",\n \"interactive\": \"interactive\",\n \"interval\": \"interval\",\n \"intrinsic\": \"intrinsic\",\n \"isFinal\": \"isFinal\",\n \"isInitial\": \"isInitial\",\n \"isTerminal\": \"isTerminal\",\n \"item\": \"item\",\n \"items\": \"items\",\n \"key\": \"key\",\n \"keyName\": \"keyName\",\n \"kind\": \"kind\",\n \"knob\": \"knob\",\n \"label\": \"label\",\n \"ledger\": \"ledger\",\n \"linkedEntity\": \"linkedEntity\",\n \"linkedEntityId\": \"linkedEntityId\",\n \"listPattern\": \"listPattern\",\n \"listens\": \"listens\",\n \"location\": \"location\",\n \"max\": \"max\",\n \"maxAttempts\": \"maxAttempts\",\n \"min\": \"min\",\n \"motion\": \"motion\",\n \"mounts\": \"mounts\",\n \"name\": \"name\",\n \"omit\": \"omit\",\n \"onDelete\": \"onDelete\",\n \"onEntry\": \"onEntry\",\n \"onExit\": \"onExit\",\n \"only\": \"only\",\n \"orbital\": \"orbital\",\n \"orbitalId\": \"orbitalId\",\n \"orbitals\": \"orbitals\",\n \"originalEvent\": \"originalEvent\",\n \"originalName\": \"originalName\",\n \"outbound\": \"outbound\",\n \"owner\": \"owner\",\n \"pageIds\": \"pageIds\",\n \"pages\": \"pages\",\n \"parent\": \"parent\",\n \"path\": \"path\",\n \"pattern\": \"pattern\",\n \"patternPath\": \"patternPath\",\n \"payload\": \"payload\",\n \"payloadEntity\": \"payloadEntity\",\n \"payloadMapping\": \"payloadMapping\",\n \"payloadSchema\": \"payloadSchema\",\n \"persistence\": \"persistence\",\n \"personas\": \"personas\",\n \"presentation\": \"presentation\",\n \"primaryColor\": \"primaryColor\",\n \"primaryEntity\": \"primaryEntity\",\n \"primaryKey\": \"primaryKey\",\n \"priority\": \"priority\",\n \"prop\": \"prop\",\n \"properties\": \"properties\",\n \"props\": \"props\",\n \"provides\": \"provides\",\n \"radii\": \"radii\",\n \"read\": \"read\",\n \"read_policy\": \"read_policy\",\n \"reconnect\": \"reconnect\",\n \"ref\": \"ref\",\n \"refId\": \"refId\",\n \"reference\": \"reference\",\n \"relatedLinks\": \"relatedLinks\",\n \"relation\": \"relation\",\n \"renames\": \"renames\",\n \"request\": \"request\",\n \"requestFragment\": \"requestFragment\",\n \"required\": \"required\",\n \"requiredFields\": \"requiredFields\",\n \"requires\": \"requires\",\n \"resolved\": \"resolved\",\n \"resource\": \"resource\",\n \"role\": \"role\",\n \"roles\": \"roles\",\n \"runtime\": \"runtime\",\n \"schemaVersion\": \"schemaVersion\",\n \"scope\": \"scope\",\n \"scopeOverridden\": \"scopeOverridden\",\n \"secretEnv\": \"secretEnv\",\n \"sections\": \"sections\",\n \"semanticRole\": \"semanticRole\",\n \"serverPath\": \"serverPath\",\n \"services\": \"services\",\n \"shadows\": \"shadows\",\n \"shape\": \"shape\",\n \"shared\": \"shared\",\n \"local\": \"local\",\n \"singleton\": \"singleton\",\n \"site\": \"site\",\n \"slots\": \"slots\",\n \"softDelete\": \"softDelete\",\n \"source\": \"source\",\n \"sourceBehavior\": \"sourceBehavior\",\n \"sourceEntityDefinition\": \"sourceEntityDefinition\",\n \"spacing\": \"spacing\",\n \"stateMachine\": \"stateMachine\",\n \"states\": \"states\",\n \"style\": \"style\",\n \"subDomain\": \"subDomain\",\n \"suggestedGuards\": \"suggestedGuards\",\n \"summary\": \"summary\",\n \"surfaces\": \"surfaces\",\n \"synonyms\": \"synonyms\",\n \"target\": \"target\",\n \"targetView\": \"targetView\",\n \"text\": \"text\",\n \"theme\": \"theme\",\n \"tick\": \"tick\",\n \"ticks\": \"ticks\",\n \"tier\": \"tier\",\n \"timeBoundMs\": \"timeBoundMs\",\n \"timeout\": \"timeout\",\n \"timestamps\": \"timestamps\",\n \"title\": \"title\",\n \"to\": \"to\",\n \"tokens\": \"tokens\",\n \"trait\": \"trait\",\n \"traitEmbedIds\": \"traitEmbedIds\",\n \"traitId\": \"traitId\",\n \"traitName\": \"traitName\",\n \"traitRefIds\": \"traitRefIds\",\n \"traits\": \"traits\",\n \"transition\": \"transition\",\n \"transitions\": \"transitions\",\n \"triggers\": \"triggers\",\n \"triggersId\": \"triggersId\",\n \"type\": \"type\",\n \"typeArgs\": \"typeArgs\",\n \"typeParams\": \"typeParams\",\n \"typeScale\": \"typeScale\",\n \"typeWhen\": \"typeWhen\",\n \"types\": \"types\",\n \"typography\": \"typography\",\n \"ui\": \"ui\",\n \"unique\": \"unique\",\n \"update\": \"update\",\n \"update_policy\": \"update_policy\",\n \"updatedAt\": \"updatedAt\",\n \"url\": \"url\",\n \"uses\": \"uses\",\n \"uxHints\": \"uxHints\",\n \"values\": \"values\",\n \"variant\": \"variant\",\n \"variants\": \"variants\",\n \"version\": \"version\",\n \"viewType\": \"viewType\",\n \"visual_prompt\": \"visual_prompt\",\n \"vocabulary\": \"vocabulary\"\n }\n}\n","{\n \"meta\": {\n \"code\": \"ar\",\n \"name\": \"Arabic\",\n \"rtl\": true\n },\n \"keywords\": {\n \"app\": \"تطبيق\",\n \"orbital\": \"مدار\",\n \"uses\": \"يستخدم\",\n \"expects\": \"يتوقع\",\n \"entity\": \"كيان\",\n \"type\": \"نوع\",\n \"derived\": \"مشتق\",\n \"trait\": \"سمة\",\n \"initial\": \"أولي\",\n \"state\": \"حالة\",\n \"for\": \"من_أجل\",\n \"page\": \"صفحة\",\n \"as\": \"كـ\",\n \"theme\": \"مظهر\",\n \"emits\": \"يصدر\",\n \"listens\": \"يستمع\",\n \"ticks\": \"نبضات\",\n \"config\": \"تكوين\",\n \"when\": \"عندما\",\n \"with\": \"مع\",\n \"from\": \"من\",\n \"to\": \"إلى\",\n \"every\": \"كل\",\n \"capabilities\": \"قدرات\",\n \"match\": \"مطابقة\",\n \"external\": \"خارجي\",\n \"internal\": \"داخلي\",\n \"on\": \"عند\",\n \"name\": \"اسم\",\n \"fields\": \"حقول\",\n \"events\": \"أحداث\",\n \"event\": \"حدث\",\n \"emitsScope\": \"نطاق_الإصدار\",\n \"identity\": \"هوية\",\n \"pages\": \"صفحات\",\n \"omit\": \"استبعاد\",\n \"only\": \"فقط\",\n \"roles\": \"أدوار\",\n \"entities\": \"كيانات\",\n \"extend\": \"امتداد\"\n },\n \"shapes\": {\n \"Entity\": \"كيان\",\n \"Trait\": \"سمة\",\n \"Page\": \"صفحة\",\n \"Orbital\": \"مدار\",\n \"Event\": \"حدث\"\n },\n \"tags\": {\n \"persistent\": \"دائم\",\n \"runtime\": \"وقت_التشغيل\",\n \"shared\": \"مشترك\",\n \"local\": \"محلي\",\n \"identity\": \"هوية\",\n \"instance\": \"نسخة\",\n \"collection\": \"مجموعة\"\n },\n \"categories\": {\n \"interaction\": \"تفاعل\",\n \"integration\": \"تكامل\",\n \"lifecycle\": \"دورة_حياة\",\n \"game-core\": \"أساسيات_اللعبة\",\n \"game-entity\": \"كيان_اللعبة\",\n \"game-ui\": \"واجهة_اللعبة\"\n },\n \"capabilities\": {\n \"read\": \"قراءة\",\n \"write\": \"كتابة\",\n \"browse\": \"تصفح\",\n \"create\": \"إنشاء\",\n \"update\": \"تحديث\",\n \"delete\": \"حذف\",\n \"notify\": \"إشعار\",\n \"schedule\": \"جدولة\",\n \"invoke\": \"استدعاء\"\n },\n \"annotations\": {\n \"key\": \"مفتاح\",\n \"unique\": \"فريد\",\n \"intrinsic\": \"جوهري\",\n \"label\": \"تسمية\",\n \"description\": \"وصف\",\n \"synonyms\": \"مرادفات\",\n \"tier\": \"مستوى\",\n \"rebindable\": \"قابل_لإعادة_الربط\",\n \"read\": \"قراءة\",\n \"create\": \"إنشاء\",\n \"update\": \"تحديث\",\n \"delete\": \"حذف\",\n \"icon\": \"أيقونة\"\n },\n \"sigils\": {\n \"entity\": \"كيان\",\n \"payload\": \"حمولة\",\n \"state\": \"حالة\",\n \"now\": \"الآن\",\n \"config\": \"تكوين\",\n \"user\": \"مستخدم\",\n \"trait\": \"سمة\"\n },\n \"effects\": {\n \"set\": \"تعيين\",\n \"fetch\": \"جلب\",\n \"persist\": \"حفظ\",\n \"emit\": \"بث\",\n \"navigate\": \"انتقال\",\n \"navigate-back\": \"رجوع\",\n \"render-ui\": \"عرض_واجهة\",\n \"notify\": \"إشعار\",\n \"ref\": \"مرجع\",\n \"call-service\": \"استدعاء_خدمة\",\n \"invoke\": \"استدعاء\",\n \"do\": \"تنفيذ\",\n \"if\": \"إذا\",\n \"let\": \"ليكن\",\n \"fn\": \"دالة\",\n \"lambda\": \"لامدا\",\n \"match\": \"مطابقة\",\n \"when\": \"عندما\"\n },\n \"types\": {\n \"string\": \"نص\",\n \"number\": \"رقم\",\n \"int\": \"عدد_صحيح\",\n \"float\": \"عشري\",\n \"bool\": \"ثنائي\",\n \"boolean\": \"منطقي\",\n \"timestamp\": \"طابع_زمني\",\n \"date\": \"تاريخ\",\n \"datetime\": \"تاريخ_ووقت\",\n \"duration\": \"مدة\",\n \"money\": \"مبلغ_مالي\",\n \"scalar\": \"عددي\",\n \"file\": \"ملف\",\n \"email\": \"بريد_إلكتروني\",\n \"url\": \"رابط\",\n \"phone\": \"هاتف\",\n \"uuid\": \"معرف_فريد\",\n \"image\": \"صورة\",\n \"icon\": \"أيقونة\",\n \"asset\": \"أصل\",\n \"component\": \"مكون\",\n \"object\": \"كائن\",\n \"array\": \"مصفوفة\",\n \"enum\": \"تعداد\",\n \"relation\": \"علاقة\",\n \"node\": \"عقدة\",\n \"union\": \"اتحاد\",\n \"void\": \"فراغ\",\n \"null\": \"عدم\",\n \"any\": \"أي\",\n \"trait\": \"سمة\",\n \"entity\": \"كيان\",\n \"event\": \"حدث\",\n \"slot\": \"فتحة\",\n \"pattern\": \"نمط\",\n \"Map\": \"خريطة\",\n \"secret\": \"سر\",\n \"SExpr\": \"تعبير_رمزي\"\n },\n \"units\": {\n \"ms\": \"مللي_ثانية\",\n \"s\": \"ثانية\",\n \"m\": \"دقيقة\",\n \"h\": \"ساعة\",\n \"d\": \"يوم\"\n },\n \"literals\": {\n \"true\": \"صحيح\",\n \"false\": \"خاطئ\",\n \"null\": \"عدم\"\n },\n \"reservedEvents\": {\n \"INIT\": \"تهيئة\"\n },\n \"orb\": {\n \"_metadata\": \"بيانات_وصفية\",\n \"_resolved\": \"_محلول\",\n \"access_waivers\": \"إعفاءات_الوصول\",\n \"alias\": \"اسم_مستعار\",\n \"animations\": \"رسوم_متحركة\",\n \"appliesTo\": \"ينطبق_على\",\n \"as\": \"كـ\",\n \"aspect\": \"نسبة\",\n \"assetRef\": \"مرجع_الأصل\",\n \"at\": \"في\",\n \"auth\": \"مصادقة\",\n \"auxiliaryEntities\": \"كيانات_مساعدة\",\n \"bakedName\": \"اسم_مخبوز\",\n \"baseUrl\": \"رابط_أساسي\",\n \"behavior\": \"سلوك\",\n \"capabilities\": \"قدرات\",\n \"cardinality\": \"تعددية\",\n \"category\": \"فئة\",\n \"className\": \"اسم_الفئة\",\n \"classification\": \"تصنيف\",\n \"collection\": \"مجموعة\",\n \"color\": \"لون\",\n \"colors\": \"ألوان\",\n \"component\": \"مكون\",\n \"config\": \"تكوين\",\n \"configProvenance\": \"مصدر_التكوين\",\n \"container\": \"حاوية\",\n \"content\": \"محتوى\",\n \"create\": \"إنشاء\",\n \"create_policy\": \"سياسة_الإنشاء\",\n \"createdAt\": \"تاريخ_الإنشاء\",\n \"curName\": \"الاسم_الحالي\",\n \"customPatterns\": \"أنماط_مخصصة\",\n \"darkMode\": \"الوضع_الداكن\",\n \"dataEntities\": \"كيانات_البيانات\",\n \"default\": \"افتراضي\",\n \"definerKnob\": \"مقبض_المُعرِّف\",\n \"delayMs\": \"تأخير_مللي_ثانية\",\n \"delete\": \"حذف\",\n \"delete_policy\": \"سياسة_الحذف\",\n \"density\": \"كثافة\",\n \"description\": \"وصف\",\n \"description_visual_prompt\": \"وصف_الموجه_البصري\",\n \"design\": \"تصميم\",\n \"designTokens\": \"رموز_التصميم\",\n \"detailPattern\": \"نمط_التفاصيل\",\n \"device\": \"جهاز\",\n \"dimension\": \"بُعد\",\n \"domainContext\": \"سياق_المجال\",\n \"effectRow\": \"صف_التأثير\",\n \"effects\": \"تأثيرات\",\n \"elevation\": \"ارتفاع\",\n \"emitIds\": \"معرفات_البث\",\n \"emits\": \"يصدر\",\n \"emitsScope\": \"نطاق_الإصدار\",\n \"enabled\": \"مُفعّل\",\n \"entities\": \"كيانات\",\n \"entity\": \"كيان\",\n \"entityBindingDescription\": \"وصف_ربط_الكيان\",\n \"entityBindingSynonyms\": \"مرادفات_ربط_الكيان\",\n \"entityContract\": \"عقد_الكيان\",\n \"entityId\": \"معرف_الكيان\",\n \"entityRebindable\": \"قابل_لإعادة_ربط_الكيان\",\n \"entityRefIds\": \"معرفات_مرجع_الكيان\",\n \"entries\": \"إدخالات\",\n \"env\": \"بيئة\",\n \"equals\": \"يساوي\",\n \"event\": \"حدث\",\n \"eventId\": \"معرف_الحدث\",\n \"eventIds\": \"معرفات_الحدث\",\n \"events\": \"أحداث\",\n \"expects\": \"يتوقع\",\n \"exposes\": \"يعرض\",\n \"extend\": \"امتداد\",\n \"extends\": \"يمتد\",\n \"extendsId\": \"معرف_الامتداد\",\n \"field\": \"حقل\",\n \"fields\": \"حقول\",\n \"flowPattern\": \"نمط_التدفق\",\n \"foreignKey\": \"مفتاح_أجنبي\",\n \"formPattern\": \"نمط_النموذج\",\n \"forwardedFrom\": \"موجه_من\",\n \"from\": \"من\",\n \"geometry\": \"هندسة\",\n \"guard\": \"حارس\",\n \"guards\": \"حراس\",\n \"headers\": \"ترويسات\",\n \"icon\": \"أيقونة\",\n \"iconography\": \"أيقونات\",\n \"id\": \"معرف\",\n \"identity\": \"هوية\",\n \"illustration\": \"رسم_توضيحي\",\n \"inbound\": \"وارد\",\n \"initialEffects\": \"التأثيرات_الأولية\",\n \"instances\": \"نسخ\",\n \"interactive\": \"تفاعلي\",\n \"interval\": \"فاصل_زمني\",\n \"intrinsic\": \"جوهري\",\n \"isFinal\": \"أخير\",\n \"isInitial\": \"أولي\",\n \"isTerminal\": \"نهائي\",\n \"item\": \"عنصر\",\n \"items\": \"عناصر\",\n \"key\": \"مفتاح\",\n \"keyName\": \"اسم_المفتاح\",\n \"kind\": \"صنف\",\n \"knob\": \"مقبض\",\n \"label\": \"تسمية\",\n \"ledger\": \"سجل\",\n \"linkedEntity\": \"كيان_مرتبط\",\n \"linkedEntityId\": \"معرف_الكيان_المرتبط\",\n \"listPattern\": \"نمط_القائمة\",\n \"listens\": \"يستمع\",\n \"location\": \"موقع\",\n \"max\": \"أقصى\",\n \"maxAttempts\": \"أقصى_عدد_محاولات\",\n \"min\": \"أدنى\",\n \"motion\": \"حركة\",\n \"mounts\": \"تركيبات\",\n \"name\": \"اسم\",\n \"omit\": \"استبعاد\",\n \"onDelete\": \"عند_الحذف\",\n \"onEntry\": \"عند_الدخول\",\n \"onExit\": \"عند_الخروج\",\n \"only\": \"فقط\",\n \"orbital\": \"مدار\",\n \"orbitalId\": \"معرف_المدار\",\n \"orbitals\": \"مدارات\",\n \"originalEvent\": \"الحدث_الأصلي\",\n \"originalName\": \"الاسم_الأصلي\",\n \"outbound\": \"صادر\",\n \"owner\": \"مالك\",\n \"pageIds\": \"معرفات_الصفحة\",\n \"pages\": \"صفحات\",\n \"parent\": \"أب\",\n \"path\": \"مسار\",\n \"pattern\": \"نمط\",\n \"patternPath\": \"مسار_النمط\",\n \"payload\": \"حمولة\",\n \"payloadEntity\": \"كيان_الحمولة\",\n \"payloadMapping\": \"تخطيط_الحمولة\",\n \"payloadSchema\": \"مخطط_الحمولة\",\n \"persistence\": \"استمرارية\",\n \"personas\": \"شخصيات\",\n \"presentation\": \"عرض_تقديمي\",\n \"primaryColor\": \"اللون_الأساسي\",\n \"primaryEntity\": \"الكيان_الأساسي\",\n \"primaryKey\": \"مفتاح_أساسي\",\n \"priority\": \"أولوية\",\n \"prop\": \"خاصية\",\n \"properties\": \"خصائص\",\n \"props\": \"خواص\",\n \"provides\": \"يوفر\",\n \"radii\": \"أنصاف_أقطار\",\n \"read\": \"قراءة\",\n \"read_policy\": \"سياسة_القراءة\",\n \"reconnect\": \"إعادة_الاتصال\",\n \"ref\": \"مرجع\",\n \"refId\": \"معرف_المرجع\",\n \"reference\": \"مرجعية\",\n \"relatedLinks\": \"روابط_ذات_صلة\",\n \"relation\": \"علاقة\",\n \"renames\": \"إعادة_تسمية\",\n \"request\": \"طلب\",\n \"requestFragment\": \"جزء_الطلب\",\n \"required\": \"مطلوب\",\n \"requiredFields\": \"الحقول_المطلوبة\",\n \"requires\": \"يتطلب\",\n \"resolved\": \"محلول\",\n \"resource\": \"مورد\",\n \"role\": \"دور\",\n \"roles\": \"أدوار\",\n \"runtime\": \"وقت_التشغيل\",\n \"schemaVersion\": \"إصدار_المخطط\",\n \"scope\": \"نطاق\",\n \"scopeOverridden\": \"النطاق_مُتجاوَز\",\n \"secretEnv\": \"بيئة_سرية\",\n \"sections\": \"أقسام\",\n \"semanticRole\": \"دور_دلالي\",\n \"serverPath\": \"مسار_الخادم\",\n \"services\": \"خدمات\",\n \"shadows\": \"ظلال\",\n \"shape\": \"شكل\",\n \"shared\": \"مشترك\",\n \"local\": \"محلي\",\n \"singleton\": \"وحيد\",\n \"site\": \"موقع_الويب\",\n \"slots\": \"فتحات\",\n \"softDelete\": \"حذف_ناعم\",\n \"source\": \"مصدر\",\n \"sourceBehavior\": \"سلوك_المصدر\",\n \"sourceEntityDefinition\": \"تعريف_كيان_المصدر\",\n \"spacing\": \"تباعد\",\n \"stateMachine\": \"آلة_حالة\",\n \"states\": \"حالات\",\n \"style\": \"أسلوب\",\n \"subDomain\": \"مجال_فرعي\",\n \"suggestedGuards\": \"الحراس_المقترحون\",\n \"summary\": \"ملخص\",\n \"surfaces\": \"أسطح\",\n \"synonyms\": \"مرادفات\",\n \"target\": \"هدف\",\n \"targetView\": \"العرض_المستهدف\",\n \"text\": \"نص\",\n \"theme\": \"مظهر\",\n \"tick\": \"نبضة\",\n \"ticks\": \"نبضات\",\n \"tier\": \"مستوى\",\n \"timeBoundMs\": \"حد_زمني_مللي_ثانية\",\n \"timeout\": \"مهلة\",\n \"timestamps\": \"طوابع_زمنية\",\n \"title\": \"عنوان\",\n \"to\": \"إلى\",\n \"tokens\": \"رموز\",\n \"trait\": \"سمة\",\n \"traitEmbedIds\": \"معرفات_تضمين_السمة\",\n \"traitId\": \"معرف_السمة\",\n \"traitName\": \"اسم_السمة\",\n \"traitRefIds\": \"معرفات_مرجع_السمة\",\n \"traits\": \"سمات\",\n \"transition\": \"انتقال_حالة\",\n \"transitions\": \"انتقالات\",\n \"triggers\": \"محفزات\",\n \"triggersId\": \"معرف_المحفزات\",\n \"type\": \"نوع\",\n \"typeArgs\": \"وسائط_النوع\",\n \"typeParams\": \"معاملات_النوع\",\n \"typeScale\": \"مقياس_الطباعة\",\n \"typeWhen\": \"نوع_عندما\",\n \"types\": \"أنواع\",\n \"typography\": \"طباعة\",\n \"ui\": \"واجهة\",\n \"unique\": \"فريد\",\n \"update\": \"تحديث\",\n \"update_policy\": \"سياسة_التحديث\",\n \"updatedAt\": \"تاريخ_التحديث\",\n \"url\": \"رابط\",\n \"uses\": \"يستخدم\",\n \"uxHints\": \"تلميحات_تجربة_المستخدم\",\n \"values\": \"قيم\",\n \"variant\": \"متغير\",\n \"variants\": \"متغيرات\",\n \"version\": \"إصدار\",\n \"viewType\": \"نوع_العرض\",\n \"visual_prompt\": \"موجه_بصري\",\n \"vocabulary\": \"مفردات\"\n }\n}\n","{\n \"meta\": {\n \"code\": \"sl\",\n \"name\": \"Slovenian\",\n \"rtl\": false\n },\n \"keywords\": {\n \"app\": \"aplikacija\",\n \"orbital\": \"orbitala\",\n \"uses\": \"uporablja\",\n \"expects\": \"pricakuje\",\n \"entity\": \"entiteta\",\n \"type\": \"tip\",\n \"derived\": \"izpeljano\",\n \"trait\": \"znacilnost\",\n \"initial\": \"zacetno\",\n \"state\": \"stanje\",\n \"for\": \"za\",\n \"page\": \"stran\",\n \"as\": \"kot\",\n \"theme\": \"tema\",\n \"emits\": \"oddaja\",\n \"listens\": \"poslusa\",\n \"ticks\": \"utripi\",\n \"config\": \"konfiguracija\",\n \"when\": \"ko\",\n \"with\": \"s\",\n \"from\": \"iz\",\n \"to\": \"do\",\n \"every\": \"vsak\",\n \"capabilities\": \"zmoznosti\",\n \"match\": \"ujemaj\",\n \"external\": \"zunanje\",\n \"internal\": \"notranje\",\n \"on\": \"ob\",\n \"name\": \"ime\",\n \"fields\": \"polja\",\n \"events\": \"dogodki\",\n \"event\": \"dogodek\",\n \"emitsScope\": \"oddajaObseg\",\n \"identity\": \"identiteta\",\n \"pages\": \"strani\",\n \"omit\": \"izloci\",\n \"only\": \"samo\",\n \"roles\": \"vloge\",\n \"entities\": \"entitete\",\n \"extend\": \"razsiritev\"\n },\n \"shapes\": {\n \"Entity\": \"Entiteta\",\n \"Trait\": \"Znacilnost\",\n \"Page\": \"Stran\",\n \"Orbital\": \"Orbitala\",\n \"Event\": \"Dogodek\"\n },\n \"tags\": {\n \"persistent\": \"trajno\",\n \"runtime\": \"izvajanje\",\n \"shared\": \"skupno\",\n \"local\": \"lokalno\",\n \"identity\": \"identiteta\",\n \"instance\": \"primerek\",\n \"collection\": \"zbirka\"\n },\n \"categories\": {\n \"interaction\": \"interakcija\",\n \"integration\": \"integracija\",\n \"lifecycle\": \"zivljenjskiCikel\",\n \"game-core\": \"igra-jedro\",\n \"game-entity\": \"igra-entiteta\",\n \"game-ui\": \"igra-vmesnik\"\n },\n \"capabilities\": {\n \"read\": \"beri\",\n \"write\": \"pisi\",\n \"browse\": \"brskaj\",\n \"create\": \"ustvari\",\n \"update\": \"posodobi\",\n \"delete\": \"izbrisi\",\n \"notify\": \"obvesti\",\n \"schedule\": \"razporedi\",\n \"invoke\": \"sprozi\"\n },\n \"annotations\": {\n \"key\": \"kljuc\",\n \"unique\": \"edinstveno\",\n \"intrinsic\": \"lastno\",\n \"label\": \"oznaka\",\n \"description\": \"opis\",\n \"synonyms\": \"sopomenke\",\n \"tier\": \"nivo\",\n \"rebindable\": \"prevezljivo\",\n \"read\": \"beri\",\n \"create\": \"ustvari\",\n \"update\": \"posodobi\",\n \"delete\": \"izbrisi\",\n \"icon\": \"ikona\"\n },\n \"sigils\": {\n \"entity\": \"entiteta\",\n \"payload\": \"podatki\",\n \"state\": \"stanje\",\n \"now\": \"zdaj\",\n \"config\": \"konfiguracija\",\n \"user\": \"uporabnik\",\n \"trait\": \"znacilnost\"\n },\n \"effects\": {\n \"set\": \"nastavi\",\n \"fetch\": \"pridobi\",\n \"persist\": \"shrani\",\n \"emit\": \"oddaj\",\n \"navigate\": \"pojdi\",\n \"navigate-back\": \"pojdi-nazaj\",\n \"render-ui\": \"izrisi-vmesnik\",\n \"notify\": \"obvesti\",\n \"ref\": \"sklic\",\n \"call-service\": \"poklici-storitev\",\n \"invoke\": \"sprozi\",\n \"do\": \"naredi\",\n \"if\": \"ce\",\n \"let\": \"naj\",\n \"fn\": \"fn\",\n \"lambda\": \"lambda\",\n \"match\": \"ujemaj\",\n \"when\": \"ko\"\n },\n \"types\": {\n \"string\": \"niz\",\n \"number\": \"stevilo\",\n \"int\": \"celo\",\n \"float\": \"plavajoce\",\n \"bool\": \"logicna\",\n \"boolean\": \"logicno\",\n \"timestamp\": \"casovniZig\",\n \"date\": \"datum\",\n \"datetime\": \"datumCas\",\n \"duration\": \"trajanje\",\n \"money\": \"denar\",\n \"scalar\": \"skalar\",\n \"file\": \"datoteka\",\n \"email\": \"eposta\",\n \"url\": \"url\",\n \"phone\": \"telefon\",\n \"uuid\": \"uuid\",\n \"image\": \"slika\",\n \"icon\": \"ikona\",\n \"asset\": \"sredstvo\",\n \"component\": \"komponenta\",\n \"object\": \"objekt\",\n \"array\": \"seznam\",\n \"enum\": \"nastevanje\",\n \"relation\": \"relacija\",\n \"node\": \"vozlisce\",\n \"union\": \"unija\",\n \"void\": \"prazno\",\n \"null\": \"nic\",\n \"any\": \"karkoli\",\n \"trait\": \"znacilnost\",\n \"entity\": \"entiteta\",\n \"event\": \"dogodek\",\n \"slot\": \"reza\",\n \"pattern\": \"vzorec\",\n \"Map\": \"Mapa\",\n \"secret\": \"skrivnost\",\n \"SExpr\": \"SIzraz\"\n },\n \"units\": {\n \"ms\": \"ms\",\n \"s\": \"sek\",\n \"m\": \"min\",\n \"h\": \"ura\",\n \"d\": \"dan\"\n },\n \"literals\": {\n \"true\": \"drzi\",\n \"false\": \"nedrzi\",\n \"null\": \"nic\"\n },\n \"reservedEvents\": {\n \"INIT\": \"ZACETEK\"\n },\n \"orb\": {\n \"_metadata\": \"_metapodatki\",\n \"_resolved\": \"_razresen\",\n \"access_waivers\": \"dostop_izjeme\",\n \"alias\": \"vzdevek\",\n \"animations\": \"animacije\",\n \"appliesTo\": \"veljaZa\",\n \"as\": \"kot\",\n \"aspect\": \"razmerje\",\n \"assetRef\": \"sredstvoSklic\",\n \"at\": \"pri\",\n \"auth\": \"avtentikacija\",\n \"auxiliaryEntities\": \"pomozneEntitete\",\n \"bakedName\": \"zapecenoIme\",\n \"baseUrl\": \"osnovaUrl\",\n \"behavior\": \"vedenje\",\n \"capabilities\": \"zmoznosti\",\n \"cardinality\": \"kardinalnost\",\n \"category\": \"kategorija\",\n \"className\": \"imeRazreda\",\n \"classification\": \"klasifikacija\",\n \"collection\": \"zbirka\",\n \"color\": \"barva\",\n \"colors\": \"barve\",\n \"component\": \"komponenta\",\n \"config\": \"konfiguracija\",\n \"configProvenance\": \"konfiguracijaIzvor\",\n \"container\": \"vsebnik\",\n \"content\": \"vsebina\",\n \"create\": \"ustvari\",\n \"create_policy\": \"ustvari_politika\",\n \"createdAt\": \"ustvarjenoPri\",\n \"curName\": \"trenutnoIme\",\n \"customPatterns\": \"lastniVzorci\",\n \"darkMode\": \"temniNacin\",\n \"dataEntities\": \"podatkiEntitete\",\n \"default\": \"privzeto\",\n \"definerKnob\": \"definitorGumbek\",\n \"delayMs\": \"zakasnitevMs\",\n \"delete\": \"izbrisi\",\n \"delete_policy\": \"izbrisi_politika\",\n \"density\": \"gostota\",\n \"description\": \"opis\",\n \"description_visual_prompt\": \"opis_vizualno_poziv\",\n \"design\": \"oblikovanje\",\n \"designTokens\": \"oblikovanjeZetoni\",\n \"detailPattern\": \"vzorecPodrobnosti\",\n \"device\": \"naprava\",\n \"dimension\": \"dimenzija\",\n \"domainContext\": \"domenaKontekst\",\n \"effectRow\": \"ucinekVrstica\",\n \"effects\": \"ucinki\",\n \"elevation\": \"dvig\",\n \"emitIds\": \"oddajIdji\",\n \"emits\": \"oddaja\",\n \"emitsScope\": \"oddajaObseg\",\n \"enabled\": \"omogoceno\",\n \"entities\": \"entitete\",\n \"entity\": \"entiteta\",\n \"entityBindingDescription\": \"entitetaVezavaOpis\",\n \"entityBindingSynonyms\": \"entitetaVezavaSopomenke\",\n \"entityContract\": \"entitetaPogodba\",\n \"entityId\": \"entitetaId\",\n \"entityRebindable\": \"entitetaPrevezljivo\",\n \"entityRefIds\": \"entitetaSklicIdji\",\n \"entries\": \"vnosi\",\n \"env\": \"okolje\",\n \"equals\": \"enako\",\n \"event\": \"dogodek\",\n \"eventId\": \"dogodekId\",\n \"eventIds\": \"dogodekIdji\",\n \"events\": \"dogodki\",\n \"expects\": \"pricakuje\",\n \"exposes\": \"izpostavlja\",\n \"extend\": \"razsiritev\",\n \"extends\": \"razsiri\",\n \"extendsId\": \"razsiriId\",\n \"field\": \"polje\",\n \"fields\": \"polja\",\n \"flowPattern\": \"vzorecPoteka\",\n \"foreignKey\": \"tujiKljuc\",\n \"formPattern\": \"vzorecObrazca\",\n \"forwardedFrom\": \"posredovanoOd\",\n \"from\": \"iz\",\n \"geometry\": \"geometrija\",\n \"guard\": \"strazar\",\n \"guards\": \"strazarji\",\n \"headers\": \"glave\",\n \"icon\": \"ikona\",\n \"iconography\": \"ikonografija\",\n \"id\": \"id\",\n \"identity\": \"identiteta\",\n \"illustration\": \"ilustracija\",\n \"inbound\": \"dohodno\",\n \"initialEffects\": \"zacetnoUcinki\",\n \"instances\": \"primerki\",\n \"interactive\": \"interaktivno\",\n \"interval\": \"interval\",\n \"intrinsic\": \"lastno\",\n \"isFinal\": \"jeKoncno\",\n \"isInitial\": \"jeZacetno\",\n \"isTerminal\": \"jeTerminalno\",\n \"item\": \"element\",\n \"items\": \"elementi\",\n \"key\": \"kljuc\",\n \"keyName\": \"imeKljuca\",\n \"kind\": \"vrsta\",\n \"knob\": \"gumbek\",\n \"label\": \"oznaka\",\n \"ledger\": \"knjiga\",\n \"linkedEntity\": \"povezanaEntiteta\",\n \"linkedEntityId\": \"povezanaEntitetaId\",\n \"listPattern\": \"vzorecSeznama\",\n \"listens\": \"poslusa\",\n \"location\": \"lokacija\",\n \"max\": \"najvec\",\n \"maxAttempts\": \"najvecPoskusov\",\n \"min\": \"najmanj\",\n \"motion\": \"gibanje\",\n \"mounts\": \"priklopi\",\n \"name\": \"ime\",\n \"omit\": \"izloci\",\n \"onDelete\": \"obIzbrisi\",\n \"onEntry\": \"obVnos\",\n \"onExit\": \"obIzhod\",\n \"only\": \"samo\",\n \"orbital\": \"orbitala\",\n \"orbitalId\": \"orbitalaId\",\n \"orbitals\": \"orbitale\",\n \"originalEvent\": \"izvirniDogodek\",\n \"originalName\": \"izvirnoIme\",\n \"outbound\": \"odhodno\",\n \"owner\": \"lastnik\",\n \"pageIds\": \"stranIdji\",\n \"pages\": \"strani\",\n \"parent\": \"stars\",\n \"path\": \"pot\",\n \"pattern\": \"vzorec\",\n \"patternPath\": \"potVzorca\",\n \"payload\": \"podatki\",\n \"payloadEntity\": \"podatkiEntiteta\",\n \"payloadMapping\": \"podatkiPreslikava\",\n \"payloadSchema\": \"podatkiShema\",\n \"persistence\": \"trajnost\",\n \"personas\": \"osebe\",\n \"presentation\": \"predstavitev\",\n \"primaryColor\": \"primarnaBarva\",\n \"primaryEntity\": \"primarnaEntiteta\",\n \"primaryKey\": \"primarniKljuc\",\n \"priority\": \"prioriteta\",\n \"prop\": \"rekvizit\",\n \"properties\": \"lastnosti\",\n \"props\": \"rekviziti\",\n \"provides\": \"zagotavlja\",\n \"radii\": \"polmeri\",\n \"read\": \"beri\",\n \"read_policy\": \"beri_politika\",\n \"reconnect\": \"ponovnaPovezava\",\n \"ref\": \"sklic\",\n \"refId\": \"sklicId\",\n \"reference\": \"referenca\",\n \"relatedLinks\": \"povezanePovezave\",\n \"relation\": \"relacija\",\n \"renames\": \"preimenovanja\",\n \"request\": \"zahtevek\",\n \"requestFragment\": \"zahtevekFragment\",\n \"required\": \"obvezno\",\n \"requiredFields\": \"obveznaPolja\",\n \"requires\": \"zahteva\",\n \"resolved\": \"razresen\",\n \"resource\": \"vir\",\n \"role\": \"vloga\",\n \"roles\": \"vloge\",\n \"runtime\": \"izvajanje\",\n \"schemaVersion\": \"shemaRazlicica\",\n \"scope\": \"obseg\",\n \"scopeOverridden\": \"obsegPreglasen\",\n \"secretEnv\": \"skrivnostOkolje\",\n \"sections\": \"odseki\",\n \"semanticRole\": \"semanticnaVloga\",\n \"serverPath\": \"streznikPot\",\n \"services\": \"storitve\",\n \"shadows\": \"sence\",\n \"shape\": \"oblika\",\n \"shared\": \"skupno\",\n \"local\": \"lokalno\",\n \"singleton\": \"edinec\",\n \"site\": \"mesto\",\n \"slots\": \"reze\",\n \"softDelete\": \"mehkoIzbrisi\",\n \"source\": \"izvor\",\n \"sourceBehavior\": \"izvorVedenje\",\n \"sourceEntityDefinition\": \"izvorEntitetaDefinicija\",\n \"spacing\": \"razmik\",\n \"stateMachine\": \"strojStanj\",\n \"states\": \"stanja\",\n \"style\": \"slog\",\n \"subDomain\": \"poddomena\",\n \"suggestedGuards\": \"predlaganoStrazarji\",\n \"summary\": \"povzetek\",\n \"surfaces\": \"povrsine\",\n \"synonyms\": \"sopomenke\",\n \"target\": \"cilj\",\n \"targetView\": \"ciljPogled\",\n \"text\": \"besedilo\",\n \"theme\": \"tema\",\n \"tick\": \"utrip\",\n \"ticks\": \"utripi\",\n \"tier\": \"nivo\",\n \"timeBoundMs\": \"casMejaMs\",\n \"timeout\": \"casovnaOmejitev\",\n \"timestamps\": \"casovniZigi\",\n \"title\": \"naziv\",\n \"to\": \"do\",\n \"tokens\": \"zetoni\",\n \"trait\": \"znacilnost\",\n \"traitEmbedIds\": \"znacilnostVgraditevIdji\",\n \"traitId\": \"znacilnostId\",\n \"traitName\": \"znacilnostIme\",\n \"traitRefIds\": \"znacilnostSklicIdji\",\n \"traits\": \"znacilnosti\",\n \"transition\": \"prehod\",\n \"transitions\": \"prehodi\",\n \"triggers\": \"sprozilci\",\n \"triggersId\": \"sprozilciId\",\n \"type\": \"tip\",\n \"typeArgs\": \"tipArgumenti\",\n \"typeParams\": \"tipParametri\",\n \"typeScale\": \"tipMerilo\",\n \"typeWhen\": \"tipKo\",\n \"types\": \"tipi\",\n \"typography\": \"tipografija\",\n \"ui\": \"vmesnik\",\n \"unique\": \"edinstveno\",\n \"update\": \"posodobi\",\n \"update_policy\": \"posodobi_politika\",\n \"updatedAt\": \"posodobljenoPri\",\n \"url\": \"url\",\n \"uses\": \"uporablja\",\n \"uxHints\": \"uxNamigi\",\n \"values\": \"vrednosti\",\n \"variant\": \"varianta\",\n \"variants\": \"variante\",\n \"version\": \"razlicica\",\n \"viewType\": \"tipPogleda\",\n \"visual_prompt\": \"vizualno_poziv\",\n \"vocabulary\": \"besednjak\"\n }\n}\n","/**\n * A `.lolo` lexer — the JS-path mirror of `orbital-lolo/src/lexer.rs`.\n *\n * It exists so the JS path can rewrite a program's VOCABULARY without\n * re-implementing the parser: every token carries its byte span, so a\n * consumer splices replacement text into the original source and every\n * comment, blank line and alignment survives untouched.\n *\n * The character classes below are copied from the Rust lexer rather than\n * re-derived — an identifier continues on `alphanumeric | _ | / | -` (so\n * `render-ui` and `str/upper` are ONE token), a sigil root continues on\n * `alphanumeric | _ | .`, and `true`/`false`/`null` are their own kinds.\n * `is_alphanumeric` there is Unicode, so the `u`-flagged `\\p{L}`/`\\p{N}`\n * classes here match it for Arabic and Slovenian identifiers.\n *\n * @packageDocumentation\n */\n\nexport type LoloTokenKind =\n | 'comment'\n | 'string'\n | 'number'\n | 'identifier'\n | 'literal'\n | 'sigil'\n | 'payload-sigil'\n | 'punct';\n\nexport interface LoloToken {\n kind: LoloTokenKind;\n /** Byte-independent (UTF-16 code unit) start offset into the source. */\n start: number;\n /** Exclusive end offset. */\n end: number;\n /**\n * The token's semantic text. For `identifier`/`literal` it is the word\n * itself; for `sigil`/`payload-sigil` it is the name WITHOUT the `@`/`?`\n * prefix; for everything else it is the raw slice.\n */\n text: string;\n /** Offset at which `text` starts (differs from `start` for sigils). */\n textStart: number;\n}\n\nconst IDENT_START = /[\\p{L}_]/u;\nconst IDENT_CONTINUE = /[\\p{L}\\p{N}_/-]/u;\nconst SIGIL_CONTINUE = /[\\p{L}\\p{N}_.]/u;\nconst DIGIT = /[0-9]/;\n\n/**\n * Tokenize a `.lolo` source. Never throws: an unterminated string or block\n * comment runs to end-of-input and is returned as that token, because this\n * lexer's callers render source they did not necessarily author (a docs\n * fence, an editor buffer mid-keystroke) and must degrade to \"translate\n * nothing\" rather than fail.\n */\nexport function lexLolo(source: string): LoloToken[] {\n const tokens: LoloToken[] = [];\n let i = 0;\n const n = source.length;\n\n const push = (kind: LoloTokenKind, start: number, end: number, text?: string, textStart?: number): void => {\n tokens.push({\n kind,\n start,\n end,\n text: text ?? source.slice(start, end),\n textStart: textStart ?? start,\n });\n };\n\n while (i < n) {\n const c = source[i];\n\n // Whitespace (newlines included — layout is preserved by span splicing).\n if (c === ' ' || c === '\\t' || c === '\\r' || c === '\\n') {\n i++;\n continue;\n }\n\n // `#= … =#` block comment, `#` line comment.\n if (c === '#') {\n const start = i;\n if (source[i + 1] === '=') {\n const close = source.indexOf('=#', i + 2);\n i = close === -1 ? n : close + 2;\n } else {\n const nl = source.indexOf('\\n', i);\n i = nl === -1 ? n : nl;\n }\n push('comment', start, i);\n continue;\n }\n\n // `;;` line comment.\n if (c === ';' && source[i + 1] === ';') {\n const start = i;\n const nl = source.indexOf('\\n', i);\n i = nl === -1 ? n : nl;\n push('comment', start, i);\n continue;\n }\n\n // String literal, with `\\`-escapes.\n if (c === '\"') {\n const start = i;\n i++;\n while (i < n) {\n if (source[i] === '\\\\') {\n i += 2;\n continue;\n }\n if (source[i] === '\"') {\n i++;\n break;\n }\n i++;\n }\n push('string', start, Math.min(i, n));\n continue;\n }\n\n // `@(` (inline trait ref) vs `@name` sigil.\n if (c === '@') {\n const start = i;\n i++;\n if (source[i] === '(') {\n i++;\n push('punct', start, i);\n continue;\n }\n const nameStart = i;\n while (i < n && SIGIL_CONTINUE.test(source[i])) i++;\n push('sigil', start, i, source.slice(nameStart, i), nameStart);\n continue;\n }\n\n // `?name` payload sigil, or a bare `?`.\n if (c === '?') {\n const start = i;\n i++;\n if (i < n && IDENT_START.test(source[i])) {\n const nameStart = i;\n while (i < n && SIGIL_CONTINUE.test(source[i])) i++;\n push('payload-sigil', start, i, source.slice(nameStart, i), nameStart);\n } else {\n push('payload-sigil', start, i, '', i);\n }\n continue;\n }\n\n // Negative number vs `->` / `--` / bare `-` (the subtraction operator).\n if (c === '-') {\n const start = i;\n if (source[i + 1] === '>') {\n i += 2;\n push('punct', start, i);\n } else if (source[i + 1] === '-') {\n i += 2;\n push('punct', start, i);\n } else if (source[i + 1] !== undefined && DIGIT.test(source[i + 1])) {\n i++;\n while (i < n && (DIGIT.test(source[i]) || source[i] === '.')) i++;\n push('number', start, i);\n } else {\n i++;\n push('identifier', start, i);\n }\n continue;\n }\n\n if (DIGIT.test(c)) {\n const start = i;\n while (i < n && (DIGIT.test(source[i]) || source[i] === '.')) i++;\n push('number', start, i);\n continue;\n }\n\n // Symbolic operators the Rust lexer emits as Identifier tokens.\n if (c === '=' || c === '!' || c === '<' || c === '>') {\n const start = i;\n i++;\n if (source[i] === '=') i++;\n // A lone `=` / `!` is punctuation (`trait X = …`, `string!`); the\n // two-char forms are operator identifiers.\n const two = i - start === 2;\n push(two ? 'identifier' : 'punct', start, i);\n continue;\n }\n if (c === '+' || c === '*' || c === '/' || c === '%') {\n const start = i;\n i++;\n push('identifier', start, i);\n continue;\n }\n\n if (IDENT_START.test(c)) {\n const start = i;\n while (i < n && IDENT_CONTINUE.test(source[i])) i++;\n const text = source.slice(start, i);\n push(text === 'true' || text === 'false' || text === 'null' ? 'literal' : 'identifier', start, i, text);\n continue;\n }\n\n // Everything else is punctuation: ( ) [ ] { } : :: , | & . → and any\n // stray character. `::` is emitted as one token, matching the Rust lexer.\n const start = i;\n i++;\n if (c === ':' && source[i] === ':') i++;\n push('punct', start, i);\n }\n\n return tokens;\n}\n","/**\n * English → native rendering of a `.lolo` program and a `.orb` document —\n * the forward direction of `@almadar/core/i18n`.\n *\n * Everything else in this module family goes native → English so a program\n * written in Arabic or Slovenian COMPILES (`aliasMap`, the Rust\n * `Lang::canon_*`). This is the mirror: it takes the canonical English\n * program and renders it in a target language, so a reader can be shown the\n * same program in their own vocabulary.\n *\n * ## Why it is position-aware and not a word substitution\n *\n * The i18n contract (`docs/Almadar_i18n.md` §\"What a native program looks\n * like\") is that the parser \"canonicalizes at the grammar position that\n * expects the word, never by text replacement, so a native identifier that\n * happens to equal a keyword translation is only a keyword where a keyword is\n * expected\". The forward direction inherits that constraint exactly. Blind\n * substitution corrupts real programs: `entity`/`type`/`fields`/`name`/\n * `label`/`description` are all vocabulary words AND the commonest pattern\n * prop keys, and `parse_object_literal` takes object keys VERBATIM — a\n * pattern prop is opaque and is never translated. Likewise an entity's field\n * names and a trait's state names are the author's identifiers even when they\n * spell a keyword.\n *\n * So this walks the token stream with a frame stack that reproduces the\n * parser's positional expectations, and translates only where the grammar\n * says a vocabulary word belongs. Rendering splices into the original source\n * by span, so comments, blank lines and alignment survive byte-for-byte.\n *\n * The gate on all of it is round-trip equality: for the whole `.lolo` corpus,\n * `orb emit orb` of the translated program must equal `orb emit orb` of the\n * English one. That proves both halves — every vocabulary word was translated\n * (or the `.orb` would differ) and no identifier was (same).\n *\n * @packageDocumentation\n */\n\nimport {\n coreTables,\n type I18nSection,\n type LanguageCode,\n type OperatorTables,\n} from './index.js';\nimport { lexLolo, type LoloToken } from './lolo-lexer.js';\nimport type { JsonObject, JsonValue } from '../types/json.js';\n\n// ---------------------------------------------------------------------------\n// Forward (English → native) maps\n// ---------------------------------------------------------------------------\n\n/**\n * The vocabulary families a `.lolo` token position can draw from. `orb` is\n * excluded — those are `.orb` JSON keys, never `.lolo` source words.\n */\nconst LOLO_SECTIONS: readonly I18nSection[] = [\n 'keywords',\n 'shapes',\n 'tags',\n 'categories',\n 'capabilities',\n 'annotations',\n 'sigils',\n 'effects',\n 'types',\n 'units',\n 'literals',\n 'reservedEvents',\n];\n\n/**\n * The order `Lang::canon_any` tries sections in. A native word at an\n * identifier position resolves to the FIRST section that claims it, so this\n * order decides which English word a translation reads back as.\n */\nconst CANON_ANY_ORDER: readonly I18nSection[] = [\n 'keywords',\n 'shapes',\n 'tags',\n 'categories',\n 'capabilities',\n 'annotations',\n 'sigils',\n 'types',\n 'units',\n 'literals',\n 'reservedEvents',\n];\n\n/**\n * English → native for one family (or the union of several), keeping ONLY the\n * entries the parser will read back as the same English word.\n *\n * Two English words can share one native spelling across sections — Arabic\n * has no letter case, so the `event` keyword and the `Event` shape are both\n * `حدث`, as are `entity`/`Entity`, `orbital`/`Orbital`, `page`/`Page` and\n * `trait`/`Trait`. `checkI18nCoverage` rule 3 only forbids collisions WITHIN\n * a section, so these pass the gate (see `docs/Almadar_i18n_Gaps.md` G-i18n-1).\n * At such a word the parser's fixed resolution order picks one meaning, and\n * emitting the other would produce a program that no longer says what the\n * English one said.\n *\n * So an entry survives only if resolving its native spelling through\n * `resolutionOrder` — the same order the parser uses at that token position —\n * lands back on the English word. When it doesn't, the English word is left\n * in place, which is always legal: `canon_*` is consulted only after an\n * exact-English match, so every language accepts English spellings.\n */\nfunction forward(\n lang: LanguageCode,\n sections: readonly I18nSection[],\n resolutionOrder: readonly I18nSection[],\n operators?: OperatorTables,\n): ReadonlyMap<string, string> {\n // `canon_head` is effects-then-operators, so operators are consulted after\n // every section in `resolutionOrder`.\n const canon = (native: string): string | undefined => {\n for (const section of resolutionOrder) {\n for (const [english, value] of Object.entries(coreTables[lang][section])) {\n if (value === native) return english;\n }\n }\n if (operators) {\n for (const [english, value] of Object.entries(operators.operators)) {\n if (value === native) return english;\n }\n }\n return undefined;\n };\n\n const map = new Map<string, string>();\n const add = (english: string, native: string): void => {\n if (canon(native) !== english) return;\n map.set(english, native);\n };\n for (const section of sections) {\n for (const [english, native] of Object.entries(coreTables[lang][section])) {\n add(english, native);\n }\n }\n if (operators) {\n for (const [english, native] of Object.entries(operators.operators)) {\n add(english, native);\n }\n }\n return map;\n}\n\n/**\n * The flat English → native map over every `.lolo` vocabulary family plus the\n * caller's operators. Well-defined because `checkI18nCoverage` rule 2 forbids\n * one English word having two translations across sections — verified at 545\n * entries with zero conflicts for both `ar` and `sl`.\n *\n * Exported for callers that only need the vocabulary (a highlighter building\n * native token patterns, a docs table); `localizeLoloSource` does NOT use it,\n * because which family applies is a positional question.\n */\nexport function localizeMap(\n lang: LanguageCode,\n operators?: OperatorTables,\n): ReadonlyMap<string, string> {\n return forward(lang, LOLO_SECTIONS, CANON_ANY_ORDER, operators);\n}\n\n/**\n * Symbolic operators (`+ - * / % == != < <= > >=`) keep their symbols. They\n * are notation, not words — Arabic and Slovenian source uses the same signs —\n * and translating them would be inconsistent anyway: a lone `=` is\n * punctuation to the lexer (`trait X = …`) while `==` is an operator\n * identifier, so only half the family could ever be rendered.\n */\nfunction isWordShaped(english: string): boolean {\n return /^[A-Za-z_][A-Za-z0-9_/-]*$/.test(english);\n}\n\n// ---------------------------------------------------------------------------\n// Frame stack — the parser's positional expectations, reproduced\n// ---------------------------------------------------------------------------\n\ntype FrameKind =\n /** Top level of the program. */\n | 'root'\n /** Inside `( … )` — an s-expression. Only the head is vocabulary. */\n | 'paren'\n /** An object literal `{ … }`. Keys and values are opaque pattern vocabulary. */\n | 'object'\n /** A value array `[ … ]` inside an s-expression / object. Opaque. */\n | 'array'\n /** A declaration header `[ … ]` — tags, category, capabilities. */\n | 'mods'\n /** A type array `[ … ]` in a field's type position. */\n | 'type-array'\n /** A declaration body whose statements are field declarations. */\n | 'block-fields'\n /** A declaration body whose statements are keyword-led. */\n | 'block-body'\n /** `((x v) (y w))` — a `let` binding list, or a parenthesized lambda param list. */\n | 'binder-list'\n /** `(x v)` — one `let` binding pair; the first token is the author's name. */\n | 'binder-pair';\n\ninterface Frame {\n kind: FrameKind;\n /** First identifier of the statement currently being read in this frame. */\n stmtHead: string | undefined;\n /** The statement keyword that opened this frame (`entity`, `listens`, …). */\n blockHead: string | undefined;\n /** Whether the declaration currently being read has passed a `:`. */\n afterColon: boolean;\n /** Whether the statement currently being read has passed a `=`. */\n sawEquals: boolean;\n /** For a `paren` frame: the s-expression head, once seen. */\n parenHead: string | undefined;\n /** For a `paren` frame: whether the binder list of a `let`/`fn` was already opened. */\n binderSeen: boolean;\n /**\n * True inside the body of a trait REFERENCE (`trait X = Y.traits.Z { … }`).\n * A reference's `config { … }` ASSIGNS knob values (`name: image`) where a\n * declaration's DECLARES knob types (`name : string = \"x\"`) — the same\n * block spelling, opposite meaning for whatever follows the colon.\n */\n refBody: boolean;\n}\n\n/**\n * Blocks whose statements declare NAMES followed by a type — an entity's\n * fields, a `type` alias body, a `config` knob list. Inside these, a\n * statement-leading identifier is the author's field name and is never\n * translated; the words after `:` are types and are.\n */\nconst FIELD_BLOCK_HEADS = new Set(['entity', 'type', 'config', 'params', 'variants', 'tokens', 'event']);\n\n/**\n * Blocks whose statements are EVENT names, each opening its own payload field\n * block: `listens { EMIT_TRACE { event : string! } }`. Without this the inner\n * block reads as keyword-led and a payload field spelling a keyword (`event`,\n * `entities`) would be translated.\n */\nconst EVENT_BLOCK_HEADS = new Set(['listens', 'emits', 'events']);\n\n/**\n * Keywords that introduce a NAME. The identifier immediately after one is the\n * author's, even when it spells a vocabulary word (`state config`).\n */\nconst NAME_INTRODUCING = new Set([\n 'app',\n 'orbital',\n 'entity',\n 'trait',\n 'state',\n 'page',\n 'type',\n 'event',\n 'uses',\n 'theme',\n 'as',\n 'extend',\n]);\n\n/** Punctuation after which an identifier is a target name, never vocabulary. */\nconst NAME_PUNCT = new Set(['->', '-->', '→', '.', '--']);\n\n// ---------------------------------------------------------------------------\n// The renderer\n// ---------------------------------------------------------------------------\n\nexport interface LocalizeLoloOptions {\n /** Operator vocabulary — supplied by the caller (`@almadar/std`), since core must not import std. */\n operators?: OperatorTables;\n}\n\n/**\n * Render an English `.lolo` source in `lang`, preserving the original\n * formatting exactly. `lang === 'en'` returns the source unchanged.\n */\nexport function localizeLoloSource(\n source: string,\n lang: LanguageCode,\n options: LocalizeLoloOptions = {},\n): string {\n if (lang === 'en') return source;\n\n const { operators } = options;\n // Each map's resolution order is the one the PARSER uses at that token\n // position: `canon_any` for identifier/modifier positions, `canon_type` for\n // a field's type, `canon_head` (effects then operators) for an s-expression\n // head, `canon_sigil_or_annotation` for a `@root`.\n const keywords = forward(lang, ['keywords'], CANON_ANY_ORDER);\n const shapes = forward(lang, ['shapes'], CANON_ANY_ORDER);\n const types = forward(lang, ['types'], ['types']);\n const modifiers = forward(lang, ['tags', 'categories', 'capabilities', 'keywords'], CANON_ANY_ORDER);\n const heads = forward(lang, ['effects'], ['effects'], operators);\n const sigils = forward(lang, ['sigils', 'annotations'], ['sigils', 'annotations']);\n // In an EXPRESSION a `@root` is a binding, never an annotation: `@key` in a\n // lambda body is the author's parameter, not the `key` annotation.\n const bindingSigils = forward(lang, ['sigils'], ['sigils', 'annotations']);\n const literals = forward(lang, ['literals'], ['literals']);\n const units = forward(lang, ['units'], ['units']);\n const reservedEvents = forward(lang, ['reservedEvents'], ['reservedEvents']);\n\n const tokens = lexLolo(source);\n const edits: Array<{ start: number; end: number; text: string }> = [];\n\n const stack: Frame[] = [\n {\n kind: 'root',\n stmtHead: undefined,\n blockHead: undefined,\n afterColon: false,\n sawEquals: false,\n refBody: false,\n parenHead: undefined,\n binderSeen: false,\n },\n ];\n const top = (): Frame => stack[stack.length - 1];\n\n /** The previous token that is not a comment. */\n let prev: LoloToken | undefined;\n\n const replace = (token: LoloToken, map: ReadonlyMap<string, string>): void => {\n if (!isWordShaped(token.text)) return;\n const native = map.get(token.text);\n if (native === undefined || native === token.text) return;\n edits.push({ start: token.textStart, end: token.end, text: native });\n };\n\n for (let index = 0; index < tokens.length; index++) {\n const token = tokens[index];\n if (token.kind === 'comment') continue;\n\n const frame = top();\n const startsStatement =\n prev === undefined ||\n prev.text === '{' ||\n prev.text === '}' ||\n source.slice(prev.end, token.start).includes('\\n');\n if (startsStatement) {\n frame.stmtHead = undefined;\n frame.afterColon = false;\n frame.sawEquals = false;\n }\n\n // ── Punctuation: maintain the frame stack ────────────────────────────\n if (token.kind === 'punct') {\n const text = source.slice(token.start, token.end);\n const child = (kind: FrameKind): Frame => ({\n kind,\n stmtHead: undefined,\n blockHead: frame.stmtHead,\n afterColon: false,\n sawEquals: false,\n refBody: frame.refBody || frame.sawEquals,\n parenHead: undefined,\n binderSeen: false,\n });\n if (text === '(' || text === '@(') {\n stack.push({ ...child(parenFrame(frame, prev)), blockHead: undefined });\n if (top().kind === 'binder-list') frame.binderSeen = true;\n } else if (text === '{') {\n stack.push(child(braceFrame(frame, prev)));\n } else if (text === '[') {\n stack.push(child(bracketFrame(frame, prev)));\n } else if (text === ')' || text === '}' || text === ']') {\n if (stack.length > 1) stack.pop();\n // A closing delimiter ends the declaration it belonged to.\n top().afterColon = false;\n top().sawEquals = false;\n } else if (text === ':') {\n frame.afterColon = true;\n } else if (text === '=') {\n // What follows a `=` is a DEFAULT VALUE, not a type:\n // `metaFormat : \"none\" | \"date\" | … = date` — `date` is an enum\n // member the author chose, and `date` is also a type name.\n frame.afterColon = false;\n frame.sawEquals = true;\n } else if (text === ',') {\n // Declarations are comma-separated on one line as often as they are\n // newline-separated: `{ role: string!, timestamp: number }`.\n frame.afterColon = false;\n frame.sawEquals = false;\n frame.stmtHead = undefined;\n }\n prev = token;\n continue;\n }\n\n // An object literal / value array holds pattern data, which is opaque\n // (owner ruling). `@config.x` still binds there, but an annotation word\n // like `@key` is a plain binding name, and `true` / `INIT` are values.\n const opaque =\n frame.kind === 'object' ||\n frame.kind === 'array' ||\n frame.kind === 'binder-list' ||\n (frame.kind === 'binder-pair' && prev !== undefined && prev.text === '(');\n\n // ── Sigils: `@root.tail` / `?payloadField` ───────────────────────────\n if (token.kind === 'sigil') {\n const dot = token.text.indexOf('.');\n const root = dot === -1 ? token.text : token.text.slice(0, dot);\n const native = (opaque || frame.kind === 'paren' ? bindingSigils : sigils).get(root);\n if (native !== undefined && native !== root) {\n edits.push({ start: token.textStart, end: token.textStart + root.length, text: native });\n }\n prev = token;\n continue;\n }\n // `?field` is a payload FIELD reference — the author's name, never vocabulary.\n if (token.kind === 'payload-sigil' || token.kind === 'string' || token.kind === 'number') {\n prev = token;\n continue;\n }\n\n if (token.kind === 'literal') {\n if (!opaque) replace(token, literals);\n prev = token;\n continue;\n }\n\n // ── Identifiers ──────────────────────────────────────────────────────\n const prevText = prev === undefined ? undefined : source.slice(prev.start, prev.end);\n const afterName = prevText !== undefined && (NAME_INTRODUCING.has(prevText) || NAME_PUNCT.has(prevText));\n\n // `INIT` is the one reserved event name. It is vocabulary at an event\n // position — a transition trigger, a listens arm — but a plain string in\n // pattern data (`config { action : string = INIT }`).\n if (token.text === 'INIT' && !opaque && !frame.sawEquals) {\n replace(token, reservedEvents);\n if (frame.stmtHead === undefined) frame.stmtHead = token.text;\n prev = token;\n continue;\n }\n\n // A unit follows a number directly: `every 100 ms` — on the SAME\n // statement, or the `1` ending `j : number = 1` would make the next\n // line's `m : number` field name a minutes unit.\n if (!opaque && !startsStatement && prev !== undefined && prev.kind === 'number') {\n replace(token, units);\n prev = token;\n continue;\n }\n\n switch (frame.kind) {\n case 'paren': {\n // Only the head of an s-expression is vocabulary; every argument is\n // the author's — an entity name, a state name, a pattern prop value.\n if (prevText === '(') {\n frame.parenHead = token.text;\n replace(token, heads);\n }\n break;\n }\n case 'binder-list':\n case 'binder-pair':\n // `(let ((match …)) …)` — a binding NAME, never vocabulary.\n break;\n case 'object':\n case 'array':\n // Pattern props are opaque (owner ruling): keys AND values pass through.\n break;\n case 'mods':\n // `[persistent: orders]` — after the colon is the collection name.\n if (!frame.afterColon) replace(token, modifiers);\n break;\n case 'type-array':\n replace(token, types);\n break;\n case 'block-fields': {\n // `name : Type` — the name is the author's, the type is vocabulary.\n // A default (`= …`) is a value, not a type.\n if (frame.afterColon && !afterName) replace(token, types);\n break;\n }\n case 'root':\n case 'block-body': {\n if (!afterName) replace(token, frame.afterColon ? types : keywords);\n break;\n }\n }\n\n // `type X = Event { … }` — the shape after `=` in a type declaration.\n if ((frame.kind === 'root' || frame.kind === 'block-body') && prevText === '=') {\n replace(token, shapes);\n }\n\n if (frame.stmtHead === undefined) frame.stmtHead = token.text;\n prev = token;\n }\n\n return applyEdits(source, edits);\n}\n\n/**\n * A `(` is normally an s-expression. Two heads bind NAMES first, and a name is\n * the author's even when it spells vocabulary: `(let ((match …) …) body)` —\n * `match` there is a variable, not the match operator — and `(fn (a b) body)`.\n */\nfunction parenFrame(frame: Frame, prev: LoloToken | undefined): FrameKind {\n if (frame.kind === 'binder-list') return 'binder-pair';\n // Only the group IMMEDIATELY after the head binds names: `(fn (a b) body)`\n // does, `(fn c (== …))`'s body does not.\n if (\n frame.kind === 'paren' &&\n !frame.binderSeen &&\n prev !== undefined &&\n prev.text === frame.parenHead &&\n (frame.parenHead === 'let' || frame.parenHead === 'fn' || frame.parenHead === 'lambda')\n ) {\n return 'binder-list';\n }\n return 'paren';\n}\n\n/**\n * A `{` opens an object literal inside an s-expression, or a field default\n * (`seedRow : ModalRecord = {}`); everything else is a declaration body. Note\n * `type X = { … }` / `type X = Event { … }` is NOT a value — a type alias's\n * body declares fields — so the `= {` rule only applies inside a field block.\n */\nfunction braceFrame(frame: Frame, prev: LoloToken | undefined): FrameKind {\n if (isExpression(frame.kind)) return 'object';\n if (frame.kind === 'block-fields' && prev !== undefined && prev.text === '=') return 'object';\n // A trait REFERENCE's `config { name: image }` assigns knob VALUES; only a\n // trait DECLARATION's `config { name : string = \"x\" }` declares types.\n if (frame.refBody && frame.stmtHead === 'config') return 'object';\n // A nested block under `listens`/`emits`/`events` is one event's payload.\n if (frame.blockHead !== undefined && EVENT_BLOCK_HEADS.has(frame.blockHead)) return 'block-fields';\n // An inline structural type: `data : { … }` or `data : [{ … }]`.\n if (frame.kind === 'type-array') return 'block-fields';\n if (frame.kind === 'block-fields' && frame.afterColon) return 'block-fields';\n const head = frame.stmtHead;\n return head !== undefined && FIELD_BLOCK_HEADS.has(head) ? 'block-fields' : 'block-body';\n}\n\n/** A `[` is a value array inside an expression, a type array after `:`, a modifier list otherwise. */\nfunction bracketFrame(frame: Frame, prev: LoloToken | undefined): FrameKind {\n if (isExpression(frame.kind)) return 'array';\n if (prev !== undefined && prev.text === '=') return 'array';\n if (frame.afterColon) return frame.kind === 'block-fields' ? 'type-array' : 'array';\n return 'mods';\n}\n\n/** Frames whose contents are expression / data, never declaration syntax. */\nfunction isExpression(kind: FrameKind): boolean {\n return (\n kind === 'paren' ||\n kind === 'object' ||\n kind === 'array' ||\n kind === 'binder-list' ||\n kind === 'binder-pair'\n );\n}\n\nfunction applyEdits(\n source: string,\n edits: Array<{ start: number; end: number; text: string }>,\n): string {\n if (edits.length === 0) return source;\n edits.sort((a, b) => a.start - b.start);\n let out = '';\n let cursor = 0;\n for (const edit of edits) {\n if (edit.start < cursor) continue;\n out += source.slice(cursor, edit.start) + edit.text;\n cursor = edit.end;\n }\n return out + source.slice(cursor);\n}\n\n// ---------------------------------------------------------------------------\n// `.orb` documents\n// ---------------------------------------------------------------------------\n\n/**\n * Render an English `.orb` value in `lang` — the exact inverse of the Rust\n * `translate_orb_value`: object keys via `orb`, a `type` value via `types`,\n * an array's leading string (an s-expression / effect head) via\n * `effects ∪ operators`, and the root of any `@sigil` string. Every other\n * string — an entity name, a label, free text — is left alone.\n */\nexport function localizeOrbValue(\n value: JsonValue,\n lang: LanguageCode,\n options: LocalizeLoloOptions = {},\n): JsonValue {\n if (lang === 'en') return value;\n const orbKeys = forward(lang, ['orb'], ['orb']);\n const types = forward(lang, ['types'], ['types']);\n const tags = forward(lang, ['tags'], ['tags']);\n const heads = forward(lang, ['effects'], ['effects'], options.operators);\n const sigils = forward(lang, ['sigils'], ['sigils', 'annotations']);\n\n /**\n * `type` is overloaded, and only POSITION separates the two meanings: on an\n * entity field it names a field type (`\"type\": \"date\"`), inside a\n * `render-ui` props object it names a PATTERN (`{ \"type\": \"icon\" }`), which\n * is opaque by the pattern-vocabulary ruling. Exactly one of the 279 pattern\n * names collides with a field-type word — `icon` — and translating it there\n * renamed the pattern. `inExpression` is set once we descend into an\n * s-expression, which is the only way a pattern name is reachable.\n *\n * Note this defect round-trips: the inbound walker applied the same rule, so\n * `orb emit orb` matched and the round-trip gate could not see it. A\n * symmetric error is invisible to a symmetric gate — hence the dedicated\n * assertion in the tests.\n */\n const walk = (node: JsonValue, inExpression: boolean): JsonValue => {\n if (Array.isArray(node)) {\n // An array is an s-expression only when its head resolves as one; a\n // plain value list (`\"fields\": [\"title\", \"completed\"]`) is not.\n const head = node[0];\n const native = typeof head === 'string' ? heads.get(head) : undefined;\n const isExpression = native !== undefined;\n const items = node.map((child, index) =>\n index === 0 && isExpression ? child : walk(child, inExpression || isExpression),\n );\n if (native !== undefined) items[0] = native;\n return items;\n }\n if (node !== null && typeof node === 'object') {\n const out: JsonObject = {};\n for (const [key, child] of Object.entries(node)) {\n const nativeKey = orbKeys.get(key) ?? key;\n let next = walk(child, inExpression);\n if (typeof next === 'string') {\n if (key === 'type' && !inExpression) next = types.get(next) ?? next;\n // `\"persistence\": \"persistent\"` — the word is `tags` vocabulary and\n // has always had a translation; only this walker never applied it.\n else if (key === 'persistence') next = tags.get(next) ?? next;\n }\n out[nativeKey] = next;\n }\n return out;\n }\n if (typeof node === 'string' && node.startsWith('@')) {\n const rest = node.slice(1);\n const dot = rest.indexOf('.');\n const root = dot === -1 ? rest : rest.slice(0, dot);\n const native = sigils.get(root);\n if (native === undefined) return node;\n return dot === -1 ? `@${native}` : `@${native}${rest.slice(dot)}`;\n }\n return node;\n };\n\n return walk(value, false);\n}\n","/**\n * Internationalization (i18n) — vocabulary tables for the `.lolo`/`.orb`\n * language (English, Arabic, Slovenian). See `Almadar_i18n.md` / the i18n\n * program plan for the section contract; this module is the JS-path owner.\n *\n * @packageDocumentation\n */\n\nimport orbNotationRaw from './orb-notation.json';\nimport enRaw from './en.json';\nimport arRaw from './ar.json';\nimport slRaw from './sl.json';\n\nexport type LanguageCode = 'en' | 'ar' | 'sl';\n\nexport const LANGUAGE_CODES: readonly LanguageCode[] = ['en', 'ar', 'sl'];\n\nexport const I18N_SECTIONS = [\n 'keywords',\n 'shapes',\n 'tags',\n 'categories',\n 'capabilities',\n 'annotations',\n 'sigils',\n 'effects',\n 'types',\n 'units',\n 'literals',\n 'reservedEvents',\n 'orb',\n] as const;\n\nexport type I18nSection = typeof I18N_SECTIONS[number];\n\nexport interface I18nMeta {\n code: LanguageCode;\n name: string;\n rtl: boolean;\n}\n\nexport type I18nTables = { meta: I18nMeta } & Record<I18nSection, Record<string, string>>;\n\n/** Supplied by the caller (@almadar/std) — core must not import std. */\nexport interface OperatorTables {\n operators: Record<string, string>;\n}\n\n// ---------------------------------------------------------------------------\n// Validating loader — builds an I18nTables from the raw JSON import without a\n// type assertion. Throws on genuine structural corruption (not an object, a\n// malformed `meta`, or a present section that isn't Record<string,string>).\n// A section that is entirely ABSENT is tolerated as empty rather than\n// thrown on — ar.json/sl.json are filled in section-by-section by other\n// agents, and an incomplete table is the coverage gate's job to report\n// (kind: 'missing'), not a load-time crash.\n// ---------------------------------------------------------------------------\n\n/** Shape of an on-disk i18n table before validation; every field is unvalidated. */\ninterface RawI18nTable {\n meta: unknown;\n keywords: unknown;\n shapes: unknown;\n tags: unknown;\n categories: unknown;\n capabilities: unknown;\n annotations: unknown;\n sigils: unknown;\n effects: unknown;\n types: unknown;\n units: unknown;\n literals: unknown;\n reservedEvents: unknown;\n orb: unknown;\n}\n\nfunction isPlainObject(x: unknown): x is object {\n return typeof x === 'object' && x !== null && !Array.isArray(x);\n}\n\nfunction isRawI18nTable(x: unknown): x is RawI18nTable {\n return isPlainObject(x);\n}\n\nfunction isStringRecord(x: unknown): x is Record<string, string> {\n if (!isPlainObject(x)) return false;\n for (const value of Object.values(x)) {\n if (typeof value !== 'string') return false;\n }\n return true;\n}\n\nfunction isLanguageCode(x: unknown): x is LanguageCode {\n return x === 'en' || x === 'ar' || x === 'sl';\n}\n\nfunction isI18nMeta(x: unknown): x is I18nMeta {\n if (!isPlainObject(x) || !('code' in x) || !('name' in x) || !('rtl' in x)) return false;\n return isLanguageCode(x.code) && typeof x.name === 'string' && typeof x.rtl === 'boolean';\n}\n\nfunction emptySections(): Record<I18nSection, Record<string, string>> {\n return {\n keywords: {},\n shapes: {},\n tags: {},\n categories: {},\n capabilities: {},\n annotations: {},\n sigils: {},\n effects: {},\n types: {},\n units: {},\n literals: {},\n reservedEvents: {},\n orb: {},\n };\n}\n\n/** Validating loader — the one owner of the table shape; every reader (core, pattern-sync) goes through it. */\nexport function parseI18nTables(raw: unknown, source: string): I18nTables {\n if (!isRawI18nTable(raw)) {\n throw new Error(`i18n table \"${source}\": expected a JSON object, got ${typeof raw}`);\n }\n if (!isI18nMeta(raw.meta)) {\n throw new Error(`i18n table \"${source}\": missing or malformed \"meta\" (expected { code, name, rtl })`);\n }\n const badSections: string[] = [];\n const sections = emptySections();\n for (const section of I18N_SECTIONS) {\n const value = raw[section];\n if (value === undefined) continue;\n if (!isStringRecord(value)) {\n badSections.push(section);\n continue;\n }\n sections[section] = value;\n }\n if (badSections.length > 0) {\n throw new Error(`i18n table \"${source}\": sections not Record<string,string>: ${badSections.join(', ')}`);\n }\n return { meta: raw.meta, ...sections };\n}\n\n/** Validating loader for `orb-notation.json` — no assertion, same contract as the tables. */\nfunction parseNotationKeys(raw: unknown, source: string): string[] {\n if (!isPlainObject(raw) || !('keys' in raw) || !Array.isArray(raw.keys)) {\n throw new Error(`notation file \"${source}\": expected { keys: string[] }`);\n }\n const keys: string[] = [];\n for (const key of raw.keys) {\n if (typeof key !== 'string') {\n throw new Error(`notation file \"${source}\": every key must be a string`);\n }\n keys.push(key);\n }\n return keys;\n}\n\nexport function parseOperatorTables(raw: unknown, source: string): OperatorTables {\n if (!isPlainObject(raw) || !('operators' in raw) || !isStringRecord(raw.operators)) {\n throw new Error(`operator table \"${source}\": expected { operators: Record<string,string> }`);\n }\n return { operators: raw.operators };\n}\n\n/**\n * `.orb` schema keys that are DESIGN-SYSTEM notation, not language vocabulary,\n * and so are deliberately absent from the `orb` section: the colour palette,\n * the spacing and type scales, density, elevation, geometry, motion,\n * iconography and illustration token names.\n *\n * Derived, not curated — a key whose every path through `OrbitalSchema` lies\n * under a theme `tokens` node. Regenerate with\n * `pnpm --filter @almadar/core run gen:orb-notation`; the universe test\n * re-derives it and fails if this file drifts.\n */\nexport const ORB_NOTATION_KEYS: ReadonlySet<string> = new Set(\n parseNotationKeys(orbNotationRaw, 'orb-notation.json'),\n);\n\nexport const coreTables: Record<LanguageCode, I18nTables> = {\n en: parseI18nTables(enRaw, 'en.json'),\n ar: parseI18nTables(arRaw, 'ar.json'),\n sl: parseI18nTables(slRaw, 'sl.json'),\n};\n\nexport function getVocabulary(lang: LanguageCode): I18nTables {\n return coreTables[lang];\n}\n\n/** Native → English map for one section family; operators come from the caller (std). */\nexport function aliasMap(\n lang: LanguageCode,\n section: I18nSection | 'operators',\n operators?: OperatorTables,\n): ReadonlyMap<string, string> {\n let table: Record<string, string>;\n if (section === 'operators') {\n if (!operators) {\n throw new Error(`aliasMap(\"${lang}\", \"operators\") requires an OperatorTables argument`);\n }\n table = operators.operators;\n } else {\n table = coreTables[lang][section];\n }\n const map = new Map<string, string>();\n for (const [english, native] of Object.entries(table)) {\n map.set(native, english);\n }\n return map;\n}\n\n/** The token equals exactly one language's `keywords.app` value. */\n/** The keywords that can legally open a `.lolo` program (top-level structure, LOLO.md §3). */\nexport const LOLO_FIRST_TOKEN_KEYWORDS = ['app', 'uses', 'expects', 'type', 'theme', 'orbital'] as const;\n\n/** A `.lolo` program's language: its first token is one language's translation of a first-token keyword. */\nexport function languageOfLoloFirstToken(token: string): LanguageCode | undefined {\n const matches = LANGUAGE_CODES.filter((lang) =>\n LOLO_FIRST_TOKEN_KEYWORDS.some((kw) => coreTables[lang].keywords[kw] === token),\n );\n return matches.length === 1 ? matches[0] : undefined;\n}\n\n/** A top-level `.orb` key equals exactly one language's `orb.orbitals` value. */\nexport function languageOfOrbTopLevelKeys(keys: readonly string[]): LanguageCode | undefined {\n const keySet = new Set(keys);\n const matches = LANGUAGE_CODES.filter((lang) => keySet.has(coreTables[lang].orb.orbitals));\n return matches.length === 1 ? matches[0] : undefined;\n}\n\n// ---------------------------------------------------------------------------\n// Coverage gate\n// ---------------------------------------------------------------------------\n\nexport type I18nProblemKind =\n | 'missing'\n | 'orphan'\n | 'empty'\n | 'inconsistent'\n | 'collision'\n | 'selector-not-unique'\n | 'operators-mismatch'\n | 'identical-to-english'\n | 'notation-in-vocabulary';\n\nexport interface I18nProblem {\n lang: LanguageCode;\n section: string;\n kind: I18nProblemKind;\n key: string;\n detail?: string;\n}\n\nexport interface I18nCoverageInput {\n core: Record<LanguageCode, I18nTables>;\n std?: Record<LanguageCode, OperatorTables>;\n canonicalOperators?: readonly string[];\n}\n\n/**\n * The one implementation of the i18n coverage rules (plan B1):\n * missing/orphan/empty key sets, cross-section translation consistency,\n * native-value collisions (within a section, and across effects∪operators),\n * unique language-selector translations, and operator-set parity.\n * Never truncates — returns every problem found.\n */\nexport function checkI18nCoverage(input: I18nCoverageInput): { ok: boolean; problems: I18nProblem[] } {\n const problems: I18nProblem[] = [];\n const { core, std, canonicalOperators } = input;\n const enTable = core.en;\n\n // (0) notation-in-vocabulary — a design-system token name must never be a\n // vocabulary key. The `orb` section is \"every serialized key of the `.orb`\n // schema\", and a theme's token maps put their token NAMES in key position,\n // so the type-walk that builds the section will re-introduce them on any\n // schema change unless something says no. Owner ruling 2026-09-07: the\n // vocabulary is what the LANGUAGE defines; a library's API surface stays\n // English. See ORB_NOTATION_KEYS / scripts/gen-orb-notation.mts.\n for (const lang of LANGUAGE_CODES) {\n for (const key of Object.keys(core[lang].orb)) {\n if (ORB_NOTATION_KEYS.has(key)) {\n problems.push({\n lang,\n section: 'orb',\n kind: 'notation-in-vocabulary',\n key,\n detail: 'design-system token name — notation, not language vocabulary',\n });\n }\n }\n }\n\n // (1) missing / orphan / empty\n for (const lang of LANGUAGE_CODES) {\n const table = core[lang];\n for (const section of I18N_SECTIONS) {\n const values = table[section];\n if (lang !== 'en') {\n const enKeys = new Set(Object.keys(enTable[section]));\n const langKeys = new Set(Object.keys(values));\n for (const key of enKeys) {\n if (!langKeys.has(key)) {\n problems.push({ lang, section, kind: 'missing', key });\n }\n }\n for (const key of langKeys) {\n if (!enKeys.has(key)) {\n problems.push({ lang, section, kind: 'orphan', key });\n }\n }\n }\n for (const [key, value] of Object.entries(values)) {\n if (value === '') {\n problems.push({ lang, section, kind: 'empty', key });\n }\n }\n }\n }\n\n // (2) inconsistent — the same English word translated differently across sections\n // (including operators) within one language\n for (const lang of LANGUAGE_CODES) {\n const table = core[lang];\n const occurrences = new Map<string, Array<{ section: string; value: string }>>();\n for (const section of I18N_SECTIONS) {\n for (const [key, value] of Object.entries(table[section])) {\n const list = occurrences.get(key) ?? [];\n list.push({ section, value });\n occurrences.set(key, list);\n }\n }\n const opTable = std?.[lang]?.operators;\n if (opTable) {\n for (const [key, value] of Object.entries(opTable)) {\n const list = occurrences.get(key) ?? [];\n list.push({ section: 'operators', value });\n occurrences.set(key, list);\n }\n }\n for (const [key, entries] of occurrences) {\n if (entries.length < 2) continue;\n const baseline = entries[0];\n for (let i = 1; i < entries.length; i++) {\n const entry = entries[i];\n if (entry.value !== baseline.value) {\n problems.push({\n lang,\n section: entry.section,\n kind: 'inconsistent',\n key,\n detail: `\"${key}\" is \"${baseline.value}\" in ${baseline.section} but \"${entry.value}\" in ${entry.section}`,\n });\n }\n }\n }\n }\n\n // (3) collision — two English keys sharing a native value, per section and across effects∪operators\n for (const lang of LANGUAGE_CODES) {\n const table = core[lang];\n for (const section of I18N_SECTIONS) {\n const byValue = new Map<string, string[]>();\n for (const [key, value] of Object.entries(table[section])) {\n const keys = byValue.get(value) ?? [];\n keys.push(key);\n byValue.set(value, keys);\n }\n for (const [value, keys] of byValue) {\n if (keys.length < 2) continue;\n for (let i = 1; i < keys.length; i++) {\n problems.push({\n lang,\n section,\n kind: 'collision',\n key: keys[i],\n detail: `shares native value \"${value}\" with \"${keys[0]}\" in ${section}`,\n });\n }\n }\n }\n\n const combined = new Map<string, Array<{ section: string; key: string }>>();\n for (const [key, value] of Object.entries(table.effects)) {\n const list = combined.get(value) ?? [];\n list.push({ section: 'effects', key });\n combined.set(value, list);\n }\n const opTable = std?.[lang]?.operators;\n if (opTable) {\n for (const [key, value] of Object.entries(opTable)) {\n const list = combined.get(value) ?? [];\n list.push({ section: 'operators', key });\n combined.set(value, list);\n }\n }\n // The same English word in both sections (`set`, `if`, …) is one concept, not a collision.\n for (const [value, entries] of combined) {\n const hasEffects = entries.some((e) => e.section === 'effects');\n const hasOperators = entries.some((e) => e.section === 'operators');\n if (!(hasEffects && hasOperators)) continue;\n const first = entries[0];\n for (const entry of entries.slice(1)) {\n if (entry.key === first.key) continue;\n problems.push({\n lang,\n section: 'effects∪operators',\n kind: 'collision',\n key: entry.key,\n detail: `shares native value \"${value}\" with \"${first.key}\" (${first.section}) in effects∪operators`,\n });\n }\n }\n }\n\n // (5) selector-not-unique — the translations that select a file's language (every first-token\n // keyword for `.lolo`, `orb.orbitals` for `.orb`) must not be shared by two languages.\n const selectorUses = new Map<string, Array<{ lang: LanguageCode; section: string; key: string }>>();\n for (const lang of LANGUAGE_CODES) {\n const table = core[lang];\n const selectors: Array<{ section: string; key: string; value: string }> = [\n ...LOLO_FIRST_TOKEN_KEYWORDS.map((key) => ({ section: 'keywords', key, value: table.keywords[key] })),\n { section: 'orb', key: 'orbitals', value: table.orb.orbitals },\n ];\n for (const { section, key, value } of selectors) {\n if (value === undefined) continue;\n const uses = selectorUses.get(value) ?? [];\n uses.push({ lang, section, key });\n selectorUses.set(value, uses);\n }\n }\n for (const [value, uses] of selectorUses) {\n const langs = new Set(uses.map((u) => u.lang));\n if (langs.size < 2) continue;\n for (const use of uses) {\n const others = uses.filter((u) => u.lang !== use.lang).map((u) => `${u.lang}:${u.section}.${u.key}`);\n problems.push({\n lang: use.lang,\n section: use.section,\n kind: 'selector-not-unique',\n key: use.key,\n detail: `${use.section}.${use.key} = \"${value}\" is also a language selector in: ${others.join(', ')}`,\n });\n }\n }\n\n // operators-mismatch — every language's operator key set must equal the canonical set exactly\n if (std && canonicalOperators) {\n const canonicalSet = new Set(canonicalOperators);\n for (const lang of LANGUAGE_CODES) {\n const opTable = std[lang]?.operators;\n if (!opTable) continue;\n const langKeys = new Set(Object.keys(opTable));\n for (const op of canonicalSet) {\n if (!langKeys.has(op)) {\n problems.push({ lang, section: 'operators', kind: 'operators-mismatch', key: op, detail: 'missing from language operator table' });\n }\n }\n for (const op of langKeys) {\n if (!canonicalSet.has(op)) {\n problems.push({ lang, section: 'operators', kind: 'operators-mismatch', key: op, detail: 'not present in canonical operator set' });\n }\n }\n }\n }\n\n return { ok: problems.length === 0, problems };\n}\n\n/**\n * Informational only — NOT part of the coverage gate (Slovenian legitimately\n * carries loanwords identical to English). Lists native values equal to the\n * English value, for a human to spot-check.\n */\nexport function reportIdenticalToEnglish(input: I18nCoverageInput): I18nProblem[] {\n const problems: I18nProblem[] = [];\n const enTable = input.core.en;\n for (const lang of LANGUAGE_CODES) {\n if (lang === 'en') continue;\n const table = input.core[lang];\n for (const section of I18N_SECTIONS) {\n for (const [key, value] of Object.entries(table[section])) {\n const enValue = enTable[section][key];\n if (enValue !== undefined && value === enValue) {\n problems.push({ lang, section, kind: 'identical-to-english', key, detail: `matches English value \"${enValue}\"` });\n }\n }\n }\n }\n return problems;\n}\n\n// ---------------------------------------------------------------------------\n// Forward direction (English → native) — see ./localize.ts\n// ---------------------------------------------------------------------------\n\nexport { lexLolo } from './lolo-lexer.js';\nexport type { LoloToken, LoloTokenKind } from './lolo-lexer.js';\nexport {\n localizeMap,\n localizeLoloSource,\n localizeOrbValue,\n} from './localize.js';\nexport type { LocalizeLoloOptions } from './localize.js';\n"]}