@agent-native/core 0.75.5 → 0.76.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 (427) hide show
  1. package/corpus/README.md +2 -2
  2. package/corpus/core/CHANGELOG.md +7 -0
  3. package/corpus/core/docs/AGENTS.md +1 -0
  4. package/corpus/core/docs/content/client.md +15 -0
  5. package/corpus/core/docs/content/internationalization.md +145 -0
  6. package/corpus/core/docs/content/locales/ar-SA/internationalization.md +102 -0
  7. package/corpus/core/docs/content/locales/de-DE/internationalization.md +102 -0
  8. package/corpus/core/docs/content/locales/es-ES/internationalization.md +102 -0
  9. package/corpus/core/docs/content/locales/fr-FR/internationalization.md +102 -0
  10. package/corpus/core/docs/content/locales/hi-IN/internationalization.md +102 -0
  11. package/corpus/core/docs/content/locales/ja-JP/internationalization.md +114 -0
  12. package/corpus/core/docs/content/locales/ko-KR/internationalization.md +102 -0
  13. package/corpus/core/docs/content/locales/pt-BR/internationalization.md +102 -0
  14. package/corpus/core/docs/content/locales/zh-CN/internationalization.md +102 -0
  15. package/corpus/core/docs/content/skills-guide.md +19 -18
  16. package/corpus/core/package.json +7 -1
  17. package/corpus/core/src/client/CommandMenu.tsx +16 -0
  18. package/corpus/core/src/client/app-providers.tsx +26 -1
  19. package/corpus/core/src/client/i18n.tsx +605 -0
  20. package/corpus/core/src/client/index.ts +28 -0
  21. package/corpus/core/src/index.browser.ts +25 -0
  22. package/corpus/core/src/localization/actions/get-localization-preference.ts +23 -0
  23. package/corpus/core/src/localization/actions/set-localization-preference.ts +30 -0
  24. package/corpus/core/src/localization/index.ts +2 -0
  25. package/corpus/core/src/localization/server.ts +131 -0
  26. package/corpus/core/src/localization/shared.ts +163 -0
  27. package/corpus/core/src/server/action-discovery.ts +8 -0
  28. package/corpus/core/src/server/index.ts +8 -0
  29. package/corpus/core/src/templates/default/.agents/skills/adding-a-feature/SKILL.md +5 -0
  30. package/corpus/core/src/templates/default/.agents/skills/internationalization/SKILL.md +77 -0
  31. package/corpus/core/src/templates/default/.agents/skills/self-modifying-code/SKILL.md +6 -0
  32. package/corpus/core/src/templates/default/AGENTS.md +16 -15
  33. package/corpus/core/src/templates/default/app/i18n/en-US.ts +29 -0
  34. package/corpus/core/src/templates/default/app/i18n/index.ts +13 -0
  35. package/corpus/core/src/templates/default/app/root.tsx +20 -1
  36. package/corpus/core/src/templates/default/app/routes/_index.tsx +24 -9
  37. package/corpus/core/src/templates/default/app/routes/settings.tsx +67 -0
  38. package/corpus/core/src/templates/workspace-core/.agents/skills/adding-a-feature/SKILL.md +5 -0
  39. package/corpus/core/src/templates/workspace-core/.agents/skills/internationalization/SKILL.md +77 -0
  40. package/corpus/core/src/templates/workspace-core/.agents/skills/self-modifying-code/SKILL.md +6 -0
  41. package/corpus/core/src/vite/action-types-plugin.ts +10 -0
  42. package/corpus/templates/analytics/.agents/skills/self-modifying-code/SKILL.md +6 -0
  43. package/corpus/templates/analytics/app/components/layout/Header.tsx +18 -15
  44. package/corpus/templates/analytics/app/components/layout/Layout.tsx +7 -5
  45. package/corpus/templates/analytics/app/components/layout/MobileNav.tsx +9 -3
  46. package/corpus/templates/analytics/app/components/layout/Sidebar.tsx +5 -3
  47. package/corpus/templates/analytics/app/i18n/ar-SA.ts +3 -0
  48. package/corpus/templates/analytics/app/i18n/de-DE.ts +3 -0
  49. package/corpus/templates/analytics/app/i18n/en-US.ts +3 -0
  50. package/corpus/templates/analytics/app/i18n/es-ES.ts +3 -0
  51. package/corpus/templates/analytics/app/i18n/fr-FR.ts +3 -0
  52. package/corpus/templates/analytics/app/i18n/hi-IN.ts +3 -0
  53. package/corpus/templates/analytics/app/i18n/index.ts +31 -0
  54. package/corpus/templates/analytics/app/i18n/ja-JP.ts +3 -0
  55. package/corpus/templates/analytics/app/i18n/ko-KR.ts +3 -0
  56. package/corpus/templates/analytics/app/i18n/pt-BR.ts +3 -0
  57. package/corpus/templates/analytics/app/i18n/zh-CN.ts +3 -0
  58. package/corpus/templates/analytics/app/i18n-data.ts +433 -0
  59. package/corpus/templates/analytics/app/pages/Settings.tsx +50 -16
  60. package/corpus/templates/analytics/app/root.tsx +14 -1
  61. package/corpus/templates/analytics/changelog/2026-06-24-added-a-language-picker-and-localized-app-chrome-for-support.md +6 -0
  62. package/corpus/templates/analytics/changelog/2026-06-24-settings-now-link-directly-to-agent-settings-for-model-api-k.md +6 -0
  63. package/corpus/templates/assets/.agents/skills/self-modifying-code/SKILL.md +6 -0
  64. package/corpus/templates/assets/app/components/layout/Header.tsx +17 -8
  65. package/corpus/templates/assets/app/components/layout/Layout.tsx +10 -6
  66. package/corpus/templates/assets/app/components/layout/Sidebar.tsx +40 -23
  67. package/corpus/templates/assets/app/i18n/ar-SA.ts +3 -0
  68. package/corpus/templates/assets/app/i18n/de-DE.ts +3 -0
  69. package/corpus/templates/assets/app/i18n/en-US.ts +3 -0
  70. package/corpus/templates/assets/app/i18n/es-ES.ts +3 -0
  71. package/corpus/templates/assets/app/i18n/fr-FR.ts +3 -0
  72. package/corpus/templates/assets/app/i18n/hi-IN.ts +3 -0
  73. package/corpus/templates/assets/app/i18n/index.ts +31 -0
  74. package/corpus/templates/assets/app/i18n/ja-JP.ts +3 -0
  75. package/corpus/templates/assets/app/i18n/ko-KR.ts +3 -0
  76. package/corpus/templates/assets/app/i18n/pt-BR.ts +3 -0
  77. package/corpus/templates/assets/app/i18n/zh-CN.ts +3 -0
  78. package/corpus/templates/assets/app/i18n-data.ts +668 -0
  79. package/corpus/templates/assets/app/root.tsx +40 -15
  80. package/corpus/templates/assets/app/routes/_index.tsx +9 -10
  81. package/corpus/templates/assets/app/routes/settings.tsx +37 -6
  82. package/corpus/templates/assets/changelog/2026-06-24-added-a-language-picker-and-localized-app-chrome-for-support.md +6 -0
  83. package/corpus/templates/assets/changelog/2026-06-24-settings-now-link-directly-to-agent-settings-for-model-api-k.md +6 -0
  84. package/corpus/templates/brain/.agents/skills/adding-a-feature/SKILL.md +5 -0
  85. package/corpus/templates/brain/.agents/skills/self-modifying-code/SKILL.md +6 -0
  86. package/corpus/templates/brain/app/components/layout/Layout.tsx +12 -8
  87. package/corpus/templates/brain/app/components/layout/Sidebar.tsx +23 -12
  88. package/corpus/templates/brain/app/i18n/ar-SA.ts +3 -0
  89. package/corpus/templates/brain/app/i18n/de-DE.ts +3 -0
  90. package/corpus/templates/brain/app/i18n/en-US.ts +3 -0
  91. package/corpus/templates/brain/app/i18n/es-ES.ts +3 -0
  92. package/corpus/templates/brain/app/i18n/fr-FR.ts +3 -0
  93. package/corpus/templates/brain/app/i18n/hi-IN.ts +3 -0
  94. package/corpus/templates/brain/app/i18n/index.ts +31 -0
  95. package/corpus/templates/brain/app/i18n/ja-JP.ts +3 -0
  96. package/corpus/templates/brain/app/i18n/ko-KR.ts +3 -0
  97. package/corpus/templates/brain/app/i18n/pt-BR.ts +3 -0
  98. package/corpus/templates/brain/app/i18n/zh-CN.ts +3 -0
  99. package/corpus/templates/brain/app/i18n-data.ts +624 -0
  100. package/corpus/templates/brain/app/root.tsx +27 -12
  101. package/corpus/templates/brain/app/routes/settings.tsx +45 -8
  102. package/corpus/templates/brain/changelog/2026-06-24-added-a-language-picker-and-localized-app-chrome-for-support.md +6 -0
  103. package/corpus/templates/brain/changelog/2026-06-24-settings-now-link-directly-to-agent-settings-for-model-api-k.md +6 -0
  104. package/corpus/templates/calendar/.agents/skills/self-modifying-code/SKILL.md +6 -0
  105. package/corpus/templates/calendar/app/components/layout/AppLayout.tsx +2 -0
  106. package/corpus/templates/calendar/app/components/layout/Sidebar.tsx +16 -9
  107. package/corpus/templates/calendar/app/i18n/ar-SA.ts +57 -0
  108. package/corpus/templates/calendar/app/i18n/de-DE.ts +58 -0
  109. package/corpus/templates/calendar/app/i18n/en-US.ts +57 -0
  110. package/corpus/templates/calendar/app/i18n/es-ES.ts +58 -0
  111. package/corpus/templates/calendar/app/i18n/fr-FR.ts +58 -0
  112. package/corpus/templates/calendar/app/i18n/hi-IN.ts +57 -0
  113. package/corpus/templates/calendar/app/i18n/index.ts +31 -0
  114. package/corpus/templates/calendar/app/i18n/ja-JP.ts +58 -0
  115. package/corpus/templates/calendar/app/i18n/ko-KR.ts +57 -0
  116. package/corpus/templates/calendar/app/i18n/pt-BR.ts +57 -0
  117. package/corpus/templates/calendar/app/i18n/zh-CN.ts +57 -0
  118. package/corpus/templates/calendar/app/i18n-data.ts +516 -0
  119. package/corpus/templates/calendar/app/pages/CalendarView.tsx +2 -0
  120. package/corpus/templates/calendar/app/pages/Settings.tsx +63 -28
  121. package/corpus/templates/calendar/app/root.tsx +78 -7
  122. package/corpus/templates/calendar/changelog/2026-06-24-added-a-language-picker-and-localized-app-chrome-for-support.md +6 -0
  123. package/corpus/templates/calendar/changelog/2026-06-24-settings-now-link-directly-to-agent-settings-for-model-api-k.md +6 -0
  124. package/corpus/templates/chat/.agents/skills/adding-a-feature/SKILL.md +5 -0
  125. package/corpus/templates/chat/.agents/skills/self-modifying-code/SKILL.md +6 -0
  126. package/corpus/templates/chat/app/components/layout/Header.tsx +17 -11
  127. package/corpus/templates/chat/app/components/layout/Layout.tsx +12 -8
  128. package/corpus/templates/chat/app/components/layout/Sidebar.tsx +47 -18
  129. package/corpus/templates/chat/app/i18n/ar-SA.ts +62 -0
  130. package/corpus/templates/chat/app/i18n/de-DE.ts +63 -0
  131. package/corpus/templates/chat/app/i18n/en-US.ts +63 -0
  132. package/corpus/templates/chat/app/i18n/es-ES.ts +63 -0
  133. package/corpus/templates/chat/app/i18n/fr-FR.ts +63 -0
  134. package/corpus/templates/chat/app/i18n/hi-IN.ts +63 -0
  135. package/corpus/templates/chat/app/i18n/index.ts +31 -0
  136. package/corpus/templates/chat/app/i18n/ja-JP.ts +63 -0
  137. package/corpus/templates/chat/app/i18n/ko-KR.ts +63 -0
  138. package/corpus/templates/chat/app/i18n/pt-BR.ts +63 -0
  139. package/corpus/templates/chat/app/i18n/zh-CN.ts +61 -0
  140. package/corpus/templates/chat/app/i18n-data.ts +475 -0
  141. package/corpus/templates/chat/app/root.tsx +18 -5
  142. package/corpus/templates/chat/app/routes/_index.tsx +9 -8
  143. package/corpus/templates/chat/app/routes/settings.tsx +86 -0
  144. package/corpus/templates/chat/changelog/2026-06-24-a-new-settings-page-gives-quick-access-to-language-workspace.md +6 -0
  145. package/corpus/templates/chat/changelog/2026-06-24-added-a-language-picker-and-localized-app-chrome-for-support.md +6 -0
  146. package/corpus/templates/clips/.agents/skills/self-modifying-code/SKILL.md +6 -0
  147. package/corpus/templates/clips/app/components/layout/Header.tsx +23 -17
  148. package/corpus/templates/clips/app/components/library/empty-state.tsx +10 -34
  149. package/corpus/templates/clips/app/components/library/library-layout.tsx +45 -34
  150. package/corpus/templates/clips/app/i18n/ar-SA.ts +182 -0
  151. package/corpus/templates/clips/app/i18n/de-DE.ts +184 -0
  152. package/corpus/templates/clips/app/i18n/en-US.ts +179 -0
  153. package/corpus/templates/clips/app/i18n/es-ES.ts +183 -0
  154. package/corpus/templates/clips/app/i18n/fr-FR.ts +184 -0
  155. package/corpus/templates/clips/app/i18n/hi-IN.ts +180 -0
  156. package/corpus/templates/clips/app/i18n/index.ts +41 -0
  157. package/corpus/templates/clips/app/i18n/ja-JP.ts +180 -0
  158. package/corpus/templates/clips/app/i18n/ko-KR.ts +178 -0
  159. package/corpus/templates/clips/app/i18n/pt-BR.ts +183 -0
  160. package/corpus/templates/clips/app/i18n/zh-CN.ts +173 -0
  161. package/corpus/templates/clips/app/root.tsx +104 -10
  162. package/corpus/templates/clips/app/routes/_app.settings._index.tsx +154 -95
  163. package/corpus/templates/clips/changelog/2026-06-24-added-a-language-picker-and-localized-app-chrome-for-support.md +6 -0
  164. package/corpus/templates/clips/changelog/2026-06-24-clips-now-includes-a-language-picker-and-simplified-chinese-ui.md +6 -0
  165. package/corpus/templates/clips/changelog/2026-06-24-settings-now-link-directly-to-agent-settings-for-model-api-k.md +6 -0
  166. package/corpus/templates/content/.agents/skills/self-modifying-code/SKILL.md +6 -0
  167. package/corpus/templates/content/app/components/EmptyState.tsx +7 -5
  168. package/corpus/templates/content/app/components/ThemeToggle.tsx +4 -2
  169. package/corpus/templates/content/app/components/layout/Header.tsx +2 -0
  170. package/corpus/templates/content/app/components/layout/Layout.tsx +8 -7
  171. package/corpus/templates/content/app/components/sidebar/DocumentSidebar.tsx +41 -1
  172. package/corpus/templates/content/app/i18n/ar-SA.ts +3 -0
  173. package/corpus/templates/content/app/i18n/de-DE.ts +3 -0
  174. package/corpus/templates/content/app/i18n/en-US.ts +3 -0
  175. package/corpus/templates/content/app/i18n/es-ES.ts +3 -0
  176. package/corpus/templates/content/app/i18n/fr-FR.ts +3 -0
  177. package/corpus/templates/content/app/i18n/hi-IN.ts +3 -0
  178. package/corpus/templates/content/app/i18n/index.ts +31 -0
  179. package/corpus/templates/content/app/i18n/ja-JP.ts +3 -0
  180. package/corpus/templates/content/app/i18n/ko-KR.ts +3 -0
  181. package/corpus/templates/content/app/i18n/pt-BR.ts +3 -0
  182. package/corpus/templates/content/app/i18n/zh-CN.ts +3 -0
  183. package/corpus/templates/content/app/i18n-data.ts +490 -0
  184. package/corpus/templates/content/app/root.tsx +110 -23
  185. package/corpus/templates/content/app/routes/_app.settings.tsx +84 -0
  186. package/corpus/templates/content/changelog/2026-06-24-a-new-settings-page-gives-quick-access-to-language-workspace.md +6 -0
  187. package/corpus/templates/content/changelog/2026-06-24-added-a-language-picker-and-localized-app-chrome-for-support.md +6 -0
  188. package/corpus/templates/design/.agents/skills/self-modifying-code/SKILL.md +6 -0
  189. package/corpus/templates/design/app/components/layout/Header.tsx +16 -8
  190. package/corpus/templates/design/app/components/layout/Layout.tsx +8 -6
  191. package/corpus/templates/design/app/components/layout/Sidebar.tsx +25 -9
  192. package/corpus/templates/design/app/i18n/ar-SA.ts +3 -0
  193. package/corpus/templates/design/app/i18n/de-DE.ts +3 -0
  194. package/corpus/templates/design/app/i18n/en-US.ts +3 -0
  195. package/corpus/templates/design/app/i18n/es-ES.ts +3 -0
  196. package/corpus/templates/design/app/i18n/fr-FR.ts +3 -0
  197. package/corpus/templates/design/app/i18n/hi-IN.ts +3 -0
  198. package/corpus/templates/design/app/i18n/index.ts +31 -0
  199. package/corpus/templates/design/app/i18n/ja-JP.ts +3 -0
  200. package/corpus/templates/design/app/i18n/ko-KR.ts +3 -0
  201. package/corpus/templates/design/app/i18n/pt-BR.ts +3 -0
  202. package/corpus/templates/design/app/i18n/zh-CN.ts +3 -0
  203. package/corpus/templates/design/app/i18n-data.ts +350 -0
  204. package/corpus/templates/design/app/root.tsx +40 -15
  205. package/corpus/templates/design/app/routes/settings.tsx +43 -0
  206. package/corpus/templates/design/changelog/2026-06-24-added-a-language-picker-and-localized-app-chrome-for-support.md +6 -0
  207. package/corpus/templates/design/changelog/2026-06-24-settings-now-link-directly-to-agent-settings-for-model-api-k.md +6 -0
  208. package/corpus/templates/dispatch/.agents/skills/self-modifying-code/SKILL.md +6 -0
  209. package/corpus/templates/dispatch/app/i18n/ar-SA.ts +3 -0
  210. package/corpus/templates/dispatch/app/i18n/de-DE.ts +3 -0
  211. package/corpus/templates/dispatch/app/i18n/en-US.ts +3 -0
  212. package/corpus/templates/dispatch/app/i18n/es-ES.ts +3 -0
  213. package/corpus/templates/dispatch/app/i18n/fr-FR.ts +3 -0
  214. package/corpus/templates/dispatch/app/i18n/hi-IN.ts +3 -0
  215. package/corpus/templates/dispatch/app/i18n/index.ts +31 -0
  216. package/corpus/templates/dispatch/app/i18n/ja-JP.ts +3 -0
  217. package/corpus/templates/dispatch/app/i18n/ko-KR.ts +3 -0
  218. package/corpus/templates/dispatch/app/i18n/pt-BR.ts +3 -0
  219. package/corpus/templates/dispatch/app/i18n/zh-CN.ts +3 -0
  220. package/corpus/templates/dispatch/app/i18n-data.ts +267 -0
  221. package/corpus/templates/dispatch/app/root.tsx +18 -4
  222. package/corpus/templates/dispatch/app/routes/settings.tsx +86 -0
  223. package/corpus/templates/dispatch/changelog/2026-06-24-a-new-settings-page-gives-quick-access-to-language-workspace.md +6 -0
  224. package/corpus/templates/dispatch/changelog/2026-06-24-added-a-language-picker-and-localized-app-chrome-for-support.md +6 -0
  225. package/corpus/templates/forms/.agents/skills/self-modifying-code/SKILL.md +6 -0
  226. package/corpus/templates/forms/app/components/layout/Header.tsx +16 -9
  227. package/corpus/templates/forms/app/components/layout/Layout.tsx +6 -4
  228. package/corpus/templates/forms/app/components/layout/Sidebar.tsx +34 -17
  229. package/corpus/templates/forms/app/i18n/ar-SA.ts +58 -0
  230. package/corpus/templates/forms/app/i18n/de-DE.ts +59 -0
  231. package/corpus/templates/forms/app/i18n/en-US.ts +59 -0
  232. package/corpus/templates/forms/app/i18n/es-ES.ts +59 -0
  233. package/corpus/templates/forms/app/i18n/fr-FR.ts +59 -0
  234. package/corpus/templates/forms/app/i18n/hi-IN.ts +59 -0
  235. package/corpus/templates/forms/app/i18n/index.ts +31 -0
  236. package/corpus/templates/forms/app/i18n/ja-JP.ts +59 -0
  237. package/corpus/templates/forms/app/i18n/ko-KR.ts +59 -0
  238. package/corpus/templates/forms/app/i18n/pt-BR.ts +59 -0
  239. package/corpus/templates/forms/app/i18n/zh-CN.ts +56 -0
  240. package/corpus/templates/forms/app/root.tsx +65 -16
  241. package/corpus/templates/forms/app/routes/_app.settings.tsx +85 -0
  242. package/corpus/templates/forms/changelog/2026-06-24-a-new-settings-page-gives-quick-access-to-language-workspace.md +6 -0
  243. package/corpus/templates/forms/changelog/2026-06-24-added-a-language-picker-and-localized-app-chrome-for-support.md +6 -0
  244. package/corpus/templates/macros/app/components/layout/AppLayout.tsx +29 -17
  245. package/corpus/templates/macros/app/components/layout/Header.tsx +16 -10
  246. package/corpus/templates/macros/app/i18n/ar-SA.ts +54 -0
  247. package/corpus/templates/macros/app/i18n/de-DE.ts +55 -0
  248. package/corpus/templates/macros/app/i18n/en-US.ts +55 -0
  249. package/corpus/templates/macros/app/i18n/es-ES.ts +55 -0
  250. package/corpus/templates/macros/app/i18n/fr-FR.ts +55 -0
  251. package/corpus/templates/macros/app/i18n/hi-IN.ts +55 -0
  252. package/corpus/templates/macros/app/i18n/index.ts +31 -0
  253. package/corpus/templates/macros/app/i18n/ja-JP.ts +55 -0
  254. package/corpus/templates/macros/app/i18n/ko-KR.ts +55 -0
  255. package/corpus/templates/macros/app/i18n/pt-BR.ts +55 -0
  256. package/corpus/templates/macros/app/i18n/zh-CN.ts +53 -0
  257. package/corpus/templates/macros/app/root.tsx +65 -15
  258. package/corpus/templates/macros/app/routes/settings.tsx +85 -0
  259. package/corpus/templates/macros/changelog/2026-06-24-a-new-settings-page-gives-quick-access-to-language-workspace.md +6 -0
  260. package/corpus/templates/macros/changelog/2026-06-24-added-a-language-picker-and-localized-app-chrome-for-support.md +6 -0
  261. package/corpus/templates/mail/.agents/skills/self-modifying-code/SKILL.md +6 -0
  262. package/corpus/templates/mail/app/components/layout/AppLayout.tsx +9 -4
  263. package/corpus/templates/mail/app/i18n/ar-SA.ts +33 -0
  264. package/corpus/templates/mail/app/i18n/de-DE.ts +33 -0
  265. package/corpus/templates/mail/app/i18n/en-US.ts +32 -0
  266. package/corpus/templates/mail/app/i18n/es-ES.ts +33 -0
  267. package/corpus/templates/mail/app/i18n/fr-FR.ts +33 -0
  268. package/corpus/templates/mail/app/i18n/hi-IN.ts +32 -0
  269. package/corpus/templates/mail/app/i18n/index.ts +31 -0
  270. package/corpus/templates/mail/app/i18n/ja-JP.ts +32 -0
  271. package/corpus/templates/mail/app/i18n/ko-KR.ts +33 -0
  272. package/corpus/templates/mail/app/i18n/pt-BR.ts +34 -0
  273. package/corpus/templates/mail/app/i18n/zh-CN.ts +32 -0
  274. package/corpus/templates/mail/app/pages/SettingsPage.tsx +67 -13
  275. package/corpus/templates/mail/app/root.tsx +20 -0
  276. package/corpus/templates/mail/changelog/2026-06-24-added-a-language-picker-and-localized-app-chrome-for-support.md +6 -0
  277. package/corpus/templates/mail/changelog/2026-06-24-settings-now-link-directly-to-agent-settings-for-model-api-k.md +6 -0
  278. package/corpus/templates/plan/.agents/skills/adding-a-feature/SKILL.md +5 -0
  279. package/corpus/templates/plan/.agents/skills/self-modifying-code/SKILL.md +6 -0
  280. package/corpus/templates/plan/app/components/layout/Header.tsx +19 -12
  281. package/corpus/templates/plan/app/components/layout/Layout.tsx +11 -7
  282. package/corpus/templates/plan/app/components/layout/Sidebar.tsx +41 -28
  283. package/corpus/templates/plan/app/i18n/ar-SA.ts +77 -0
  284. package/corpus/templates/plan/app/i18n/de-DE.ts +78 -0
  285. package/corpus/templates/plan/app/i18n/en-US.ts +78 -0
  286. package/corpus/templates/plan/app/i18n/es-ES.ts +78 -0
  287. package/corpus/templates/plan/app/i18n/fr-FR.ts +78 -0
  288. package/corpus/templates/plan/app/i18n/hi-IN.ts +78 -0
  289. package/corpus/templates/plan/app/i18n/index.ts +31 -0
  290. package/corpus/templates/plan/app/i18n/ja-JP.ts +79 -0
  291. package/corpus/templates/plan/app/i18n/ko-KR.ts +77 -0
  292. package/corpus/templates/plan/app/i18n/pt-BR.ts +78 -0
  293. package/corpus/templates/plan/app/i18n/zh-CN.ts +74 -0
  294. package/corpus/templates/plan/app/root.tsx +45 -8
  295. package/corpus/templates/plan/app/routes/settings.tsx +86 -0
  296. package/corpus/templates/plan/changelog/2026-06-24-a-new-settings-page-gives-quick-access-to-language-workspace.md +6 -0
  297. package/corpus/templates/plan/changelog/2026-06-24-added-a-language-picker-and-localized-app-chrome-for-support.md +6 -0
  298. package/corpus/templates/slides/.agents/skills/self-modifying-code/SKILL.md +6 -0
  299. package/corpus/templates/slides/app/components/layout/Header.tsx +23 -11
  300. package/corpus/templates/slides/app/components/layout/Layout.tsx +7 -6
  301. package/corpus/templates/slides/app/components/layout/Sidebar.tsx +23 -11
  302. package/corpus/templates/slides/app/i18n/ar-SA.ts +54 -0
  303. package/corpus/templates/slides/app/i18n/de-DE.ts +56 -0
  304. package/corpus/templates/slides/app/i18n/en-US.ts +55 -0
  305. package/corpus/templates/slides/app/i18n/es-ES.ts +55 -0
  306. package/corpus/templates/slides/app/i18n/fr-FR.ts +55 -0
  307. package/corpus/templates/slides/app/i18n/hi-IN.ts +55 -0
  308. package/corpus/templates/slides/app/i18n/index.ts +31 -0
  309. package/corpus/templates/slides/app/i18n/ja-JP.ts +55 -0
  310. package/corpus/templates/slides/app/i18n/ko-KR.ts +55 -0
  311. package/corpus/templates/slides/app/i18n/pt-BR.ts +55 -0
  312. package/corpus/templates/slides/app/i18n/zh-CN.ts +53 -0
  313. package/corpus/templates/slides/app/root.tsx +50 -8
  314. package/corpus/templates/slides/app/routes/settings.tsx +85 -0
  315. package/corpus/templates/slides/changelog/2026-06-24-a-new-settings-page-gives-quick-access-to-language-workspace.md +6 -0
  316. package/corpus/templates/slides/changelog/2026-06-24-added-a-language-picker-and-localized-app-chrome-for-support.md +6 -0
  317. package/corpus/templates/videos/.agents/skills/self-modifying-code/SKILL.md +6 -0
  318. package/corpus/templates/videos/app/components/NewCompositionPopover.tsx +14 -9
  319. package/corpus/templates/videos/app/components/Sidebar.tsx +16 -9
  320. package/corpus/templates/videos/app/components/StudioHeader.tsx +12 -8
  321. package/corpus/templates/videos/app/components/layout/Header.tsx +21 -15
  322. package/corpus/templates/videos/app/components/layout/Layout.tsx +10 -7
  323. package/corpus/templates/videos/app/components/layout/NavSidebar.tsx +21 -6
  324. package/corpus/templates/videos/app/i18n/ar-SA.ts +73 -0
  325. package/corpus/templates/videos/app/i18n/de-DE.ts +75 -0
  326. package/corpus/templates/videos/app/i18n/en-US.ts +74 -0
  327. package/corpus/templates/videos/app/i18n/es-ES.ts +75 -0
  328. package/corpus/templates/videos/app/i18n/fr-FR.ts +75 -0
  329. package/corpus/templates/videos/app/i18n/hi-IN.ts +74 -0
  330. package/corpus/templates/videos/app/i18n/index.ts +31 -0
  331. package/corpus/templates/videos/app/i18n/ja-JP.ts +74 -0
  332. package/corpus/templates/videos/app/i18n/ko-KR.ts +74 -0
  333. package/corpus/templates/videos/app/i18n/pt-BR.ts +75 -0
  334. package/corpus/templates/videos/app/i18n/zh-CN.ts +72 -0
  335. package/corpus/templates/videos/app/pages/Index.tsx +11 -9
  336. package/corpus/templates/videos/app/root.tsx +45 -7
  337. package/corpus/templates/videos/app/routes/settings.tsx +85 -0
  338. package/corpus/templates/videos/changelog/2026-06-24-a-new-settings-page-gives-quick-access-to-language-workspace.md +6 -0
  339. package/corpus/templates/videos/changelog/2026-06-24-added-a-language-picker-and-localized-app-chrome-for-support.md +6 -0
  340. package/dist/client/CommandMenu.d.ts +3 -0
  341. package/dist/client/CommandMenu.d.ts.map +1 -1
  342. package/dist/client/CommandMenu.js +9 -0
  343. package/dist/client/CommandMenu.js.map +1 -1
  344. package/dist/client/app-providers.d.ts +8 -1
  345. package/dist/client/app-providers.d.ts.map +1 -1
  346. package/dist/client/app-providers.js +7 -5
  347. package/dist/client/app-providers.js.map +1 -1
  348. package/dist/client/i18n.d.ts +54 -0
  349. package/dist/client/i18n.d.ts.map +1 -0
  350. package/dist/client/i18n.js +354 -0
  351. package/dist/client/i18n.js.map +1 -0
  352. package/dist/client/index.d.ts +2 -1
  353. package/dist/client/index.d.ts.map +1 -1
  354. package/dist/client/index.js +2 -1
  355. package/dist/client/index.js.map +1 -1
  356. package/dist/index.browser.d.ts +1 -1
  357. package/dist/index.browser.d.ts.map +1 -1
  358. package/dist/index.browser.js +1 -1
  359. package/dist/index.browser.js.map +1 -1
  360. package/dist/localization/actions/get-localization-preference.d.ts +4 -0
  361. package/dist/localization/actions/get-localization-preference.d.ts.map +1 -0
  362. package/dist/localization/actions/get-localization-preference.js +16 -0
  363. package/dist/localization/actions/get-localization-preference.js.map +1 -0
  364. package/dist/localization/actions/set-localization-preference.d.ts +6 -0
  365. package/dist/localization/actions/set-localization-preference.d.ts.map +1 -0
  366. package/dist/localization/actions/set-localization-preference.js +24 -0
  367. package/dist/localization/actions/set-localization-preference.js.map +1 -0
  368. package/dist/localization/index.d.ts +3 -0
  369. package/dist/localization/index.d.ts.map +1 -0
  370. package/dist/localization/index.js +3 -0
  371. package/dist/localization/index.js.map +1 -0
  372. package/dist/localization/server.d.ts +25 -0
  373. package/dist/localization/server.d.ts.map +1 -0
  374. package/dist/localization/server.js +69 -0
  375. package/dist/localization/server.js.map +1 -0
  376. package/dist/localization/shared.d.ts +25 -0
  377. package/dist/localization/shared.d.ts.map +1 -0
  378. package/dist/localization/shared.js +134 -0
  379. package/dist/localization/shared.js.map +1 -0
  380. package/dist/server/action-discovery.d.ts.map +1 -1
  381. package/dist/server/action-discovery.js +8 -0
  382. package/dist/server/action-discovery.js.map +1 -1
  383. package/dist/server/index.d.ts +1 -0
  384. package/dist/server/index.d.ts.map +1 -1
  385. package/dist/server/index.js +1 -0
  386. package/dist/server/index.js.map +1 -1
  387. package/dist/templates/default/.agents/skills/adding-a-feature/SKILL.md +5 -0
  388. package/dist/templates/default/.agents/skills/internationalization/SKILL.md +77 -0
  389. package/dist/templates/default/.agents/skills/self-modifying-code/SKILL.md +6 -0
  390. package/dist/templates/default/AGENTS.md +16 -15
  391. package/dist/templates/default/app/i18n/en-US.ts +29 -0
  392. package/dist/templates/default/app/i18n/index.ts +13 -0
  393. package/dist/templates/default/app/root.tsx +20 -1
  394. package/dist/templates/default/app/routes/_index.tsx +24 -9
  395. package/dist/templates/default/app/routes/settings.tsx +67 -0
  396. package/dist/templates/workspace-core/.agents/skills/adding-a-feature/SKILL.md +5 -0
  397. package/dist/templates/workspace-core/.agents/skills/internationalization/SKILL.md +77 -0
  398. package/dist/templates/workspace-core/.agents/skills/self-modifying-code/SKILL.md +6 -0
  399. package/dist/vite/action-types-plugin.d.ts.map +1 -1
  400. package/dist/vite/action-types-plugin.js +8 -0
  401. package/dist/vite/action-types-plugin.js.map +1 -1
  402. package/docs/AGENTS.md +1 -0
  403. package/docs/content/client.md +15 -0
  404. package/docs/content/internationalization.md +145 -0
  405. package/docs/content/locales/ar-SA/internationalization.md +102 -0
  406. package/docs/content/locales/de-DE/internationalization.md +102 -0
  407. package/docs/content/locales/es-ES/internationalization.md +102 -0
  408. package/docs/content/locales/fr-FR/internationalization.md +102 -0
  409. package/docs/content/locales/hi-IN/internationalization.md +102 -0
  410. package/docs/content/locales/ja-JP/internationalization.md +114 -0
  411. package/docs/content/locales/ko-KR/internationalization.md +102 -0
  412. package/docs/content/locales/pt-BR/internationalization.md +102 -0
  413. package/docs/content/locales/zh-CN/internationalization.md +102 -0
  414. package/docs/content/skills-guide.md +19 -18
  415. package/package.json +7 -1
  416. package/src/templates/default/.agents/skills/adding-a-feature/SKILL.md +5 -0
  417. package/src/templates/default/.agents/skills/internationalization/SKILL.md +77 -0
  418. package/src/templates/default/.agents/skills/self-modifying-code/SKILL.md +6 -0
  419. package/src/templates/default/AGENTS.md +16 -15
  420. package/src/templates/default/app/i18n/en-US.ts +29 -0
  421. package/src/templates/default/app/i18n/index.ts +13 -0
  422. package/src/templates/default/app/root.tsx +20 -1
  423. package/src/templates/default/app/routes/_index.tsx +24 -9
  424. package/src/templates/default/app/routes/settings.tsx +67 -0
  425. package/src/templates/workspace-core/.agents/skills/adding-a-feature/SKILL.md +5 -0
  426. package/src/templates/workspace-core/.agents/skills/internationalization/SKILL.md +77 -0
  427. package/src/templates/workspace-core/.agents/skills/self-modifying-code/SKILL.md +6 -0
@@ -0,0 +1,182 @@
1
+ const messages = {
2
+ common: {
3
+ cancel: "إلغاء",
4
+ create: "إنشاء",
5
+ save: "حفظ",
6
+ saving: "جار الحفظ…",
7
+ saveChanges: "حفظ التغييرات",
8
+ connected: "متصل",
9
+ notConnected: "غير متصل",
10
+ disconnect: "قطع الاتصال",
11
+ disconnecting: "جار قطع الاتصال...",
12
+ },
13
+ root: {
14
+ commandActions: "الإجراءات",
15
+ commandSearch: "بحث",
16
+ commandAppearance: "المظهر",
17
+ toggleTheme: "تبديل السمة",
18
+ extensionSignedInTitle: "تم تسجيل الدخول",
19
+ extensionSignedInDescription: "افتح إضافة Clips مرة أخرى لبدء التسجيل.",
20
+ gotIt: "حسنًا",
21
+ },
22
+ navigation: {
23
+ brand: "Clips",
24
+ library: "المكتبة",
25
+ spaces: "المساحات",
26
+ meetings: "الاجتماعات",
27
+ dictate: "إملاء",
28
+ archive: "الأرشيف",
29
+ trash: "المهملات",
30
+ settings: "الإعدادات",
31
+ notifications: "الإشعارات",
32
+ insights: "الرؤى",
33
+ space: "مساحة",
34
+ folder: "مجلد",
35
+ extensions: "الإضافات",
36
+ newRecording: "تسجيل جديد",
37
+ folders: "المجلدات",
38
+ newFolder: "مجلد جديد",
39
+ noSpaces: "لا توجد مساحات بعد",
40
+ desktopCta: "الحصول على تطبيق سطح المكتب",
41
+ desktopTitle: "احصل على تطبيق Clips لسطح المكتب.",
42
+ desktopBody: "سجّل من شريط القوائم والاختصار العام مع تحديثات تلقائية.",
43
+ expandSidebar: "توسيع الشريط الجانبي",
44
+ collapseSidebar: "طي الشريط الجانبي",
45
+ agentEmptyState: "كيف يمكنني مساعدتك في تسجيلاتك؟",
46
+ agentSuggestionSummary: "لخص آخر تسجيل لي",
47
+ agentSuggestionPricing: "اعثر على موضع ذكري للأسعار",
48
+ agentSuggestionFiller: "أزل كلمات الحشو من هذا المقطع",
49
+ createFolderError: "فشل الإنشاء",
50
+ folderCreated: "تم إنشاء المجلد",
51
+ folderNamePlaceholder: "اسم المجلد",
52
+ },
53
+ empty: {
54
+ library: {
55
+ title: "مكتبتك فارغة",
56
+ body: "التقط أول تسجيل شاشة وسيظهر هنا جاهزًا للمشاركة.",
57
+ cta: "سجّل أول Clip لك",
58
+ },
59
+ folder: {
60
+ title: "هذا المجلد فارغ",
61
+ body: "اسحب التسجيلات إليه أو اضغط تسجيل لبدء شيء جديد في هذا المجلد.",
62
+ cta: "سجّل هنا",
63
+ },
64
+ space: {
65
+ title: "لا توجد تسجيلات في هذه المساحة بعد",
66
+ body: "شارك تسجيلًا مع المساحة أو سجّل شيئًا جديدًا؛ سيراه فريقك هنا.",
67
+ cta: "سجّل لهذه المساحة",
68
+ },
69
+ archive: {
70
+ title: "لا شيء مؤرشف",
71
+ body: "تُخفى التسجيلات المؤرشفة من المكتبة لكنها تبقى محفوظة بأمان. يمكنك دائمًا استعادتها لاحقًا.",
72
+ },
73
+ trash: {
74
+ title: "المهملات فارغة",
75
+ body: "تظهر التسجيلات المحذوفة هنا لمدة 30 يومًا قبل إزالتها نهائيًا.",
76
+ },
77
+ search: {
78
+ title: "لا توجد نتائج",
79
+ body: "جرّب عبارة بحث أخرى أو تحقق من عوامل التصفية.",
80
+ },
81
+ },
82
+ settings: {
83
+ openAgentSettings: "فتح إعدادات الوكيل",
84
+ agentDescription:
85
+ "افتح إعدادات الوكيل في الشريط الجانبي لإدارة النموذج ومفاتيح API والأتمتة والصوت وعناصر التحكم الأخرى.",
86
+ agentTitle: "إعدادات الوكيل",
87
+ title: "الإعدادات",
88
+ intro: "التفضيلات والخدمات المتصلة لمساحة Clips هذه.",
89
+ languageTitle: "اللغة",
90
+ languageDescription:
91
+ "اختر لغة الواجهة لهذا الحساب. سيتذكرها Clips عبر أجهزتك.",
92
+ languageLabel: "لغة الواجهة",
93
+ profile: "الملف الشخصي",
94
+ email: "البريد الإلكتروني",
95
+ displayName: "اسم العرض",
96
+ displayNamePlaceholder: "اسمك",
97
+ playback: "التشغيل",
98
+ defaultPlaybackSpeed: "سرعة التشغيل الافتراضية",
99
+ playbackDescription: "تُطبق تلقائيًا عند فتح تسجيل.",
100
+ transcript: "النص",
101
+ transcriptCleanup: "تنظيف في الخلفية",
102
+ transcriptCleanupDescription:
103
+ "اعرض النص الأصلي فورًا، ثم نظفه في الخلفية عند توفره.",
104
+ notifications: "الإشعارات",
105
+ emailNotifications: "إشعارات البريد الإلكتروني",
106
+ emailNotificationsDescription:
107
+ "احصل على بريد إلكتروني عندما يعلّق شخص أو يتفاعل أو يشارك تسجيلًا معك.",
108
+ saved: "تم حفظ الإعدادات",
109
+ saveFailed: "فشل الحفظ",
110
+ builderConnectedToast: "تم اتصال Builder.io",
111
+ videoStorage: "تخزين الفيديو",
112
+ videoStorageDescription:
113
+ "Builder.io هو مسار التخزين الأساسي لعمليات رفع Clips. يتوفر S3 عندما تحتاج إلى استخدام حاويتك الخاصة.",
114
+ checkingBuilder: "جار فحص Builder.io",
115
+ builderConnected: "Builder.io متصل",
116
+ connectBuilder: "اتصال Builder.io",
117
+ builderConnectedFor: "يتم استخدام Builder.io لـ {{orgName}}.",
118
+ builderConnectedGeneric: "تستخدم المقاطع الجديدة مزود Builder.io المتصل.",
119
+ builderIncludes:
120
+ "يتضمن تخزين الكائنات والرفع والنسخ المُدار للمقاطع الجديدة.",
121
+ s3Title: "تخزين متوافق مع S3",
122
+ secondary: "ثانوي",
123
+ active: "نشط",
124
+ s3BuilderConnectedDescription:
125
+ "استخدم هذا فقط إذا كان يجب على هذه المساحة الرفع إلى حاويتك الخاصة بدلًا من Builder.io.",
126
+ s3CurrentProvider: "يتم حاليًا استخدام {{providerName}}.",
127
+ s3OwnBucketDescription:
128
+ "استخدم حاويتك الخاصة إذا كنت لا تريد تخزين Builder.io.",
129
+ configureS3: "إعداد S3",
130
+ hideS3: "إخفاء S3",
131
+ saveStorage: "حفظ التخزين",
132
+ storageSaved: "تم حفظ إعدادات التخزين",
133
+ storageRequired: "Endpoint و bucket و access key و secret مطلوبة.",
134
+ apiSetup: "إعداد الذكاء الاصطناعي",
135
+ apiSetupDescription:
136
+ "Builder.io هو المسار الافتراضي لاعتمادات الذكاء الاصطناعي المُدارة. مفاتيح المزود اختيارية ويمكن إضافتها هنا.",
137
+ builderEasySetup: "Builder.io هو أسهل إعداد",
138
+ builderAiAvailable:
139
+ "تتوفر اعتمادات الذكاء الاصطناعي المضمنة والنسخ المُدار لـ Clips.",
140
+ builderAiDescription:
141
+ "اتصل بـ Builder أولًا لاستخدام اعتمادات الذكاء الاصطناعي المضمنة وتخزين الكائنات والرفع والنسخ المُدار.",
142
+ providerKeyTitle: "استخدام مفتاح مزود خاص بك",
143
+ providerKeyDescription:
144
+ "أضف مفاتيح Anthropic أو OpenAI أو Gemini أو Groq أو OpenRouter للاستخدام المفوتر من المزود.",
145
+ providerKeysSet: "تم تعيين {{count}}",
146
+ checkingProviderKeys: "جار فحص مفاتيح المزود…",
147
+ keySet: "تم التعيين",
148
+ replaceKey: "استبدال المفتاح…",
149
+ pasteProviderKey: "الصق مفتاح مزود أولًا.",
150
+ apiKeySaved: "تم حفظ مفتاح API",
151
+ apiKeyFailed: "فشل حفظ المفتاح",
152
+ slackTitle: "Agent-Native Clips لـ Slack",
153
+ slackDescription:
154
+ "شارك مقطعًا عامًا، والصق الرابط في Slack، وسيعمل داخل الرسالة دون خطوات إضافية للمشاهدين. صِل كل مساحة مرة واحدة.",
155
+ checkingSlack: "جار فحص Slack",
156
+ slackConnected_zero: "{{count}} مساحة متصلة",
157
+ slackConnected_one: "{{count}} مساحة متصلة",
158
+ slackConnected_two: "{{count}} مساحتان متصلتان",
159
+ slackConnected_few: "{{count}} مساحات متصلة",
160
+ slackConnected_many: "{{count}} مساحة متصلة",
161
+ slackConnected_other: "{{count}} مساحة متصلة",
162
+ slackOauthNeeded: "مطلوبة بيانات اعتماد OAuth",
163
+ slackPreviewDescription:
164
+ "يمكن عرض روابط Clips العامة كمعاينات قابلة للتشغيل في Slack.",
165
+ connectSlack: "اتصال Slack",
166
+ slackClientMissing:
167
+ "عيّن SLACK_CLIENT_ID و SLACK_CLIENT_SECRET لهذا النشر قبل اتصال المساحات.",
168
+ slackSigningMissing:
169
+ "عيّن SLACK_SIGNING_SECRET حتى يمكن التحقق من callbacks أحداث Slack.",
170
+ connectedBy: "متصل بواسطة {{email}}",
171
+ disconnectSlackLabel: "قطع اتصال {{team}}",
172
+ slackConnectedToast: "تم اتصال Slack",
173
+ slackCheckedToast: "تم فحص اتصال Slack",
174
+ slackDisconnectedToast: "تم قطع اتصال Slack",
175
+ disconnectSlackTitle: "قطع اتصال Slack؟",
176
+ disconnectSlackDescription:
177
+ "سيحذف Clips رمز bot المخزن لـ {{team}} ويتوقف عن إرسال معاينات Slack القابلة للتشغيل.",
178
+ thisWorkspace: "هذه المساحة",
179
+ },
180
+ };
181
+
182
+ export default messages;
@@ -0,0 +1,184 @@
1
+ const messages = {
2
+ common: {
3
+ cancel: "Abbrechen",
4
+ create: "Erstellen",
5
+ save: "Speichern",
6
+ saving: "Speichern…",
7
+ saveChanges: "Änderungen speichern",
8
+ connected: "Verbunden",
9
+ notConnected: "Nicht verbunden",
10
+ disconnect: "Trennen",
11
+ disconnecting: "Wird getrennt...",
12
+ },
13
+ root: {
14
+ commandActions: "Aktionen",
15
+ commandSearch: "Suchen",
16
+ commandAppearance: "Darstellung",
17
+ toggleTheme: "Design wechseln",
18
+ extensionSignedInTitle: "Angemeldet",
19
+ extensionSignedInDescription:
20
+ "Öffne die Clips-Erweiterung erneut, um mit der Aufnahme zu beginnen.",
21
+ gotIt: "Verstanden",
22
+ },
23
+ navigation: {
24
+ brand: "Clips",
25
+ library: "Bibliothek",
26
+ spaces: "Bereiche",
27
+ meetings: "Meetings",
28
+ dictate: "Diktieren",
29
+ archive: "Archiv",
30
+ trash: "Papierkorb",
31
+ settings: "Einstellungen",
32
+ notifications: "Benachrichtigungen",
33
+ insights: "Einblicke",
34
+ space: "Bereich",
35
+ folder: "Ordner",
36
+ extensions: "Erweiterungen",
37
+ newRecording: "Neue Aufnahme",
38
+ folders: "Ordner",
39
+ newFolder: "Neuer Ordner",
40
+ noSpaces: "Noch keine Bereiche",
41
+ desktopCta: "Desktop-App laden",
42
+ desktopTitle: "Hol dir die Clips-Desktop-App.",
43
+ desktopBody:
44
+ "Nimm über die Menüleiste auf, nutze ein globales Tastenkürzel und automatische Updates.",
45
+ expandSidebar: "Seitenleiste erweitern",
46
+ collapseSidebar: "Seitenleiste einklappen",
47
+ agentEmptyState: "Wie kann ich dir mit deinen Aufnahmen helfen?",
48
+ agentSuggestionSummary: "Fasse meine letzte Aufnahme zusammen",
49
+ agentSuggestionPricing: "Finde, wo ich Preise erwähnt habe",
50
+ agentSuggestionFiller: "Entferne Füllwörter aus diesem Clip",
51
+ createFolderError: "Erstellen fehlgeschlagen",
52
+ folderCreated: "Ordner erstellt",
53
+ folderNamePlaceholder: "Ordnername",
54
+ },
55
+ empty: {
56
+ library: {
57
+ title: "Deine Bibliothek ist leer",
58
+ body: "Nimm deine erste Bildschirmaufnahme auf; sie erscheint hier und ist bereit zum Teilen.",
59
+ cta: "Ersten Clip aufnehmen",
60
+ },
61
+ folder: {
62
+ title: "Dieser Ordner ist leer",
63
+ body: "Ziehe Aufnahmen hinein oder starte eine Aufnahme, um in diesem Ordner etwas Neues zu beginnen.",
64
+ cta: "Hier aufnehmen",
65
+ },
66
+ space: {
67
+ title: "Noch keine Aufnahmen in diesem Bereich",
68
+ body: "Teile eine Aufnahme mit dem Bereich oder nimm etwas Neues auf; dein Team sieht es dann hier.",
69
+ cta: "Für diesen Bereich aufnehmen",
70
+ },
71
+ archive: {
72
+ title: "Nichts archiviert",
73
+ body: "Archivierte Aufnahmen werden aus der Bibliothek ausgeblendet, aber sicher aufbewahrt. Du kannst sie später jederzeit wiederherstellen.",
74
+ },
75
+ trash: {
76
+ title: "Der Papierkorb ist leer",
77
+ body: "Gelöschte Aufnahmen erscheinen hier 30 Tage lang, bevor sie endgültig entfernt werden.",
78
+ },
79
+ search: {
80
+ title: "Keine Treffer",
81
+ body: "Versuche einen anderen Suchbegriff oder prüfe deine Filter.",
82
+ },
83
+ },
84
+ settings: {
85
+ openAgentSettings: "Agent-Einstellungen öffnen",
86
+ agentDescription:
87
+ "Öffne die Agent-Einstellungen in der Seitenleiste für Modell, API-Schlüssel, Automatisierungen, Sprache und weitere Steuerungen.",
88
+ agentTitle: "Agent-Einstellungen",
89
+ title: "Einstellungen",
90
+ intro:
91
+ "Einstellungen und verbundene Dienste für diesen Clips-Arbeitsbereich.",
92
+ languageTitle: "Sprache",
93
+ languageDescription:
94
+ "Wähle die Oberflächensprache für dieses Konto. Clips merkt sie sich geräteübergreifend.",
95
+ languageLabel: "Oberflächensprache",
96
+ profile: "Profil",
97
+ email: "E-Mail",
98
+ displayName: "Anzeigename",
99
+ displayNamePlaceholder: "Dein Name",
100
+ playback: "Wiedergabe",
101
+ defaultPlaybackSpeed: "Standard-Wiedergabegeschwindigkeit",
102
+ playbackDescription:
103
+ "Wird automatisch angewendet, wenn du eine Aufnahme öffnest.",
104
+ transcript: "Transkript",
105
+ transcriptCleanup: "Bereinigung im Hintergrund",
106
+ transcriptCleanupDescription:
107
+ "Zeige das native Transkript sofort an und bereinige es im Hintergrund, sobald es verfügbar ist.",
108
+ notifications: "Benachrichtigungen",
109
+ emailNotifications: "E-Mail-Benachrichtigungen",
110
+ emailNotificationsDescription:
111
+ "Erhalte eine E-Mail, wenn jemand eine Aufnahme kommentiert, reagiert oder mit dir teilt.",
112
+ saved: "Einstellungen gespeichert",
113
+ saveFailed: "Speichern fehlgeschlagen",
114
+ builderConnectedToast: "Builder.io verbunden",
115
+ videoStorage: "Videospeicher",
116
+ videoStorageDescription:
117
+ "Builder.io ist der primäre Speicherpfad für Clips-Uploads. S3 ist verfügbar, wenn du deinen eigenen Bucket verwenden musst.",
118
+ checkingBuilder: "Builder.io wird geprüft",
119
+ builderConnected: "Builder.io verbunden",
120
+ connectBuilder: "Builder.io verbinden",
121
+ builderConnectedFor: "Builder.io wird für {{orgName}} verwendet.",
122
+ builderConnectedGeneric:
123
+ "Neue Clips verwenden den verbundenen Builder.io-Anbieter.",
124
+ builderIncludes:
125
+ "Enthält Objektspeicher, Uploads und verwaltete Transkription für neue Clips.",
126
+ s3Title: "S3-kompatibler Speicher",
127
+ secondary: "Sekundär",
128
+ active: "Aktiv",
129
+ s3BuilderConnectedDescription:
130
+ "Nur verwenden, wenn dieser Arbeitsbereich in deinen eigenen Bucket statt zu Builder.io hochladen soll.",
131
+ s3CurrentProvider: "Aktuell wird {{providerName}} verwendet.",
132
+ s3OwnBucketDescription:
133
+ "Nutze deinen eigenen Bucket, wenn du keinen Builder.io-Speicher möchtest.",
134
+ configureS3: "S3 konfigurieren",
135
+ hideS3: "S3 ausblenden",
136
+ saveStorage: "Speicher speichern",
137
+ storageSaved: "Speichereinstellungen gespeichert",
138
+ storageRequired:
139
+ "Endpoint, bucket, access key und secret sind erforderlich.",
140
+ apiSetup: "KI-Einrichtung",
141
+ apiSetupDescription:
142
+ "Builder.io ist der Standardpfad für verwaltete KI-Guthaben. Anbieter-Schlüssel sind optional und können hier hinzugefügt werden.",
143
+ builderEasySetup: "Builder.io ist die einfachste Einrichtung",
144
+ builderAiAvailable:
145
+ "Enthaltene KI-Guthaben und verwaltete Transkription sind für Clips verfügbar.",
146
+ builderAiDescription:
147
+ "Verbinde zuerst Builder, um enthaltene KI-Guthaben, Objektspeicher, Uploads und verwaltete Transkription zu nutzen.",
148
+ providerKeyTitle: "Eigenen Anbieter-Schlüssel verwenden",
149
+ providerKeyDescription:
150
+ "Füge Anthropic-, OpenAI-, Gemini-, Groq- oder OpenRouter-Schlüssel für anbieterseitig abgerechnete Nutzung hinzu.",
151
+ providerKeysSet: "{{count}} gesetzt",
152
+ checkingProviderKeys: "Anbieter-Schlüssel werden geprüft…",
153
+ keySet: "Gesetzt",
154
+ replaceKey: "Schlüssel ersetzen…",
155
+ pasteProviderKey: "Füge zuerst einen Anbieter-Schlüssel ein.",
156
+ apiKeySaved: "API-Schlüssel gespeichert",
157
+ apiKeyFailed: "Schlüssel konnte nicht gespeichert werden",
158
+ slackTitle: "Agent-Native Clips für Slack",
159
+ slackDescription:
160
+ "Teile einen öffentlichen Clip, füge den Link in Slack ein, und er wird direkt abgespielt, ohne zusätzliche Schritte für Betrachter. Verbinde jeden Arbeitsbereich einmal.",
161
+ checkingSlack: "Slack wird geprüft",
162
+ slackConnected_one: "{{count}} Arbeitsbereich verbunden",
163
+ slackConnected_other: "{{count}} Arbeitsbereiche verbunden",
164
+ slackOauthNeeded: "OAuth-Anmeldedaten erforderlich",
165
+ slackPreviewDescription:
166
+ "Öffentliche Clips-Links können als abspielbare Slack-Vorschauen angezeigt werden.",
167
+ connectSlack: "Slack verbinden",
168
+ slackClientMissing:
169
+ "Setze SLACK_CLIENT_ID und SLACK_CLIENT_SECRET für dieses Deployment, bevor du Arbeitsbereiche verbindest.",
170
+ slackSigningMissing:
171
+ "Setze SLACK_SIGNING_SECRET, damit Slack-Ereignis-Callbacks überprüft werden können.",
172
+ connectedBy: "Verbunden von {{email}}",
173
+ disconnectSlackLabel: "{{team}} trennen",
174
+ slackConnectedToast: "Slack verbunden",
175
+ slackCheckedToast: "Slack-Verbindung geprüft",
176
+ slackDisconnectedToast: "Slack getrennt",
177
+ disconnectSlackTitle: "Slack trennen?",
178
+ disconnectSlackDescription:
179
+ "Clips löscht das gespeicherte Bot-Token für {{team}} und sendet keine abspielbaren Slack-Vorschauen mehr.",
180
+ thisWorkspace: "dieser Arbeitsbereich",
181
+ },
182
+ };
183
+
184
+ export default messages;
@@ -0,0 +1,179 @@
1
+ const messages = {
2
+ common: {
3
+ cancel: "Cancel",
4
+ create: "Create",
5
+ save: "Save",
6
+ saving: "Saving…",
7
+ saveChanges: "Save changes",
8
+ connected: "Connected",
9
+ notConnected: "Not connected",
10
+ disconnect: "Disconnect",
11
+ disconnecting: "Disconnecting...",
12
+ },
13
+ root: {
14
+ commandActions: "Actions",
15
+ commandSearch: "Search",
16
+ commandAppearance: "Appearance",
17
+ toggleTheme: "Toggle theme",
18
+ extensionSignedInTitle: "Signed in",
19
+ extensionSignedInDescription:
20
+ "Open the Clips extension again to start recording.",
21
+ gotIt: "Got it",
22
+ },
23
+ navigation: {
24
+ brand: "Clips",
25
+ library: "Library",
26
+ spaces: "Spaces",
27
+ meetings: "Meetings",
28
+ dictate: "Dictate",
29
+ archive: "Archive",
30
+ trash: "Trash",
31
+ settings: "Settings",
32
+ notifications: "Notifications",
33
+ insights: "Insights",
34
+ space: "Space",
35
+ folder: "Folder",
36
+ extensions: "Extensions",
37
+ newRecording: "New recording",
38
+ folders: "Folders",
39
+ newFolder: "New folder",
40
+ noSpaces: "No spaces yet",
41
+ desktopCta: "Get desktop app",
42
+ desktopTitle: "Get the Clips desktop app.",
43
+ desktopBody: "Record from the menu bar, global shortcut, auto-updates.",
44
+ expandSidebar: "Expand sidebar",
45
+ collapseSidebar: "Collapse sidebar",
46
+ agentEmptyState: "How can I help with your recordings?",
47
+ agentSuggestionSummary: "Summarize my last recording",
48
+ agentSuggestionPricing: "Find where I mentioned pricing",
49
+ agentSuggestionFiller: "Remove filler words from this clip",
50
+ createFolderError: "Create failed",
51
+ folderCreated: "Folder created",
52
+ folderNamePlaceholder: "Folder name",
53
+ },
54
+ empty: {
55
+ library: {
56
+ title: "Your library is empty",
57
+ body: "Capture your first screen recording and it'll land here, ready to share.",
58
+ cta: "Record your first Clip",
59
+ },
60
+ folder: {
61
+ title: "This folder is empty",
62
+ body: "Drag recordings in, or hit record to start something new in this folder.",
63
+ cta: "Record here",
64
+ },
65
+ space: {
66
+ title: "No recordings in this space yet",
67
+ body: "Share a recording with the space or record something new — your team will see it here.",
68
+ cta: "Record for this space",
69
+ },
70
+ archive: {
71
+ title: "Nothing archived",
72
+ body: "Archived recordings are hidden from the library but kept safe. You can always restore them later.",
73
+ },
74
+ trash: {
75
+ title: "Trash is empty",
76
+ body: "Deleted recordings appear here for 30 days before being permanently removed.",
77
+ },
78
+ search: {
79
+ title: "No matches",
80
+ body: "Try a different search term or check your filters.",
81
+ },
82
+ },
83
+ settings: {
84
+ openAgentSettings: "Open agent settings",
85
+ agentDescription:
86
+ "Open the agent sidebar settings for model, API keys, automations, voice, and other agent controls.",
87
+ agentTitle: "Agent settings",
88
+ title: "Settings",
89
+ intro: "Preferences and connected services for this Clips workspace.",
90
+ languageTitle: "Language",
91
+ languageDescription:
92
+ "Choose the interface language for this account. Clips remembers it across devices.",
93
+ languageLabel: "Interface language",
94
+ profile: "Profile",
95
+ email: "Email",
96
+ displayName: "Display name",
97
+ displayNamePlaceholder: "Your name",
98
+ playback: "Playback",
99
+ defaultPlaybackSpeed: "Default playback speed",
100
+ playbackDescription: "Applied automatically when you open a recording.",
101
+ transcript: "Transcript",
102
+ transcriptCleanup: "Background cleanup",
103
+ transcriptCleanupDescription:
104
+ "Show the native transcript immediately, then clean it up in the background when available.",
105
+ notifications: "Notifications",
106
+ emailNotifications: "Email notifications",
107
+ emailNotificationsDescription:
108
+ "Get an email when someone comments, reacts, or shares a recording with you.",
109
+ saved: "Settings saved",
110
+ saveFailed: "Failed to save",
111
+ builderConnectedToast: "Builder.io connected",
112
+ videoStorage: "Video storage",
113
+ videoStorageDescription:
114
+ "Builder.io is the primary storage path for Clips uploads. S3 is available when you need to bring your own bucket.",
115
+ checkingBuilder: "Checking Builder.io",
116
+ builderConnected: "Builder.io connected",
117
+ connectBuilder: "Connect Builder.io",
118
+ builderConnectedFor: "Using Builder.io for {{orgName}}.",
119
+ builderConnectedGeneric: "New clips use the connected Builder.io provider.",
120
+ builderIncludes:
121
+ "Includes object storage, uploads, and managed transcription for new clips.",
122
+ s3Title: "S3-compatible storage",
123
+ secondary: "Secondary",
124
+ active: "Active",
125
+ s3BuilderConnectedDescription:
126
+ "Use this only if this workspace should upload to your own bucket instead of Builder.io.",
127
+ s3CurrentProvider: "Currently using {{providerName}}.",
128
+ s3OwnBucketDescription:
129
+ "Use your own bucket if you do not want Builder.io storage.",
130
+ configureS3: "Configure S3",
131
+ hideS3: "Hide S3",
132
+ saveStorage: "Save storage",
133
+ storageSaved: "Storage settings saved",
134
+ storageRequired: "Endpoint, bucket, access key, and secret are required.",
135
+ apiSetup: "AI setup",
136
+ apiSetupDescription:
137
+ "Builder.io is the default path for managed AI credits. Provider keys are optional and can be added here.",
138
+ builderEasySetup: "Builder.io is the easiest setup",
139
+ builderAiAvailable:
140
+ "Included AI credits and managed transcription are available for Clips.",
141
+ builderAiDescription:
142
+ "Connect Builder first for included AI credits, object storage, uploads, and managed transcription.",
143
+ providerKeyTitle: "Bring your own provider key",
144
+ providerKeyDescription:
145
+ "Add Anthropic, OpenAI, Gemini, Groq, or OpenRouter keys for provider-billed usage.",
146
+ providerKeysSet: "{{count}} set",
147
+ checkingProviderKeys: "Checking provider keys…",
148
+ keySet: "Set",
149
+ replaceKey: "Replace key…",
150
+ pasteProviderKey: "Paste a provider key first.",
151
+ apiKeySaved: "API key saved",
152
+ apiKeyFailed: "Failed to save key",
153
+ slackTitle: "Agent-Native Clips for Slack",
154
+ slackDescription:
155
+ "Share a public clip, paste the link in Slack, and it plays inline — no extra steps for viewers. Connect each workspace once.",
156
+ checkingSlack: "Checking Slack",
157
+ slackConnected_one: "{{count}} workspace connected",
158
+ slackConnected_other: "{{count}} workspaces connected",
159
+ slackOauthNeeded: "OAuth credentials needed",
160
+ slackPreviewDescription:
161
+ "Public Clips links can render as playable Slack previews.",
162
+ connectSlack: "Connect Slack",
163
+ slackClientMissing:
164
+ "Set SLACK_CLIENT_ID and SLACK_CLIENT_SECRET for this deployment before connecting workspaces.",
165
+ slackSigningMissing:
166
+ "Set SLACK_SIGNING_SECRET so Slack event callbacks can be verified.",
167
+ connectedBy: "Connected by {{email}}",
168
+ disconnectSlackLabel: "Disconnect {{team}}",
169
+ slackConnectedToast: "Slack connected",
170
+ slackCheckedToast: "Slack connection checked",
171
+ slackDisconnectedToast: "Slack disconnected",
172
+ disconnectSlackTitle: "Disconnect Slack?",
173
+ disconnectSlackDescription:
174
+ "Clips will delete the stored bot token for {{team}} and stop sending playable Slack previews.",
175
+ thisWorkspace: "this workspace",
176
+ },
177
+ };
178
+
179
+ export default messages;