workflow.ts 18 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470
  1. const translation = {
  2. common: {
  3. undo: 'Rückgängig',
  4. redo: 'Wiederholen',
  5. editing: 'Bearbeitung',
  6. autoSaved: 'Automatisch gespeichert',
  7. unpublished: 'Unveröffentlicht',
  8. published: 'Veröffentlicht',
  9. publish: 'Veröffentlichen',
  10. update: 'Aktualisieren',
  11. run: 'Ausführen',
  12. running: 'Wird ausgeführt',
  13. inRunMode: 'Im Ausführungsmodus',
  14. inPreview: 'In der Vorschau',
  15. inPreviewMode: 'Im Vorschaumodus',
  16. preview: 'Vorschau',
  17. viewRunHistory: 'Ausführungsverlauf anzeigen',
  18. runHistory: 'Ausführungsverlauf',
  19. goBackToEdit: 'Zurück zum Editor',
  20. conversationLog: 'Konversationsprotokoll',
  21. features: 'Funktionen',
  22. debugAndPreview: 'Vorschau',
  23. restart: 'Neustarten',
  24. currentDraft: 'Aktueller Entwurf',
  25. currentDraftUnpublished: 'Aktueller Entwurf unveröffentlicht',
  26. latestPublished: 'Zuletzt veröffentlicht',
  27. publishedAt: 'Veröffentlicht am',
  28. restore: 'Wiederherstellen',
  29. runApp: 'App ausführen',
  30. batchRunApp: 'App im Batch-Modus ausführen',
  31. accessAPIReference: 'API-Referenz aufrufen',
  32. embedIntoSite: 'In die Webseite einbetten',
  33. addTitle: 'Titel hinzufügen...',
  34. addDescription: 'Beschreibung hinzufügen...',
  35. noVar: 'Keine Variable',
  36. searchVar: 'Variable suchen',
  37. variableNamePlaceholder: 'Variablenname',
  38. setVarValuePlaceholder: 'Variable setzen',
  39. needConnecttip: 'Dieser Schritt ist mit nichts verbunden',
  40. maxTreeDepth: 'Maximales Limit von {{depth}} Knoten pro Ast',
  41. needEndNode: 'Der Endblock muss hinzugefügt werden',
  42. needAnswerNode: 'Der Antwortblock muss hinzugefügt werden',
  43. workflowProcess: 'Arbeitsablauf',
  44. notRunning: 'Noch nicht ausgeführt',
  45. previewPlaceholder: 'Geben Sie den Inhalt in das Feld unten ein, um das Debuggen des Chatbots zu starten',
  46. effectVarConfirm: {
  47. title: 'Variable entfernen',
  48. content: 'Die Variable wird in anderen Knoten verwendet. Möchten Sie sie trotzdem entfernen?',
  49. },
  50. insertVarTip: 'Drücken Sie die Taste \'/\' zum schnellen Einfügen',
  51. processData: 'Daten verarbeiten',
  52. input: 'Eingabe',
  53. output: 'Ausgabe',
  54. jinjaEditorPlaceholder: 'Tippen Sie \'/\' oder \'{\' um eine Variable einzufügen',
  55. viewOnly: 'Nur anzeigen',
  56. showRunHistory: 'Ausführungsverlauf anzeigen',
  57. enableJinja: 'Jinja-Vorlagenunterstützung aktivieren',
  58. learnMore: 'Mehr erfahren',
  59. copy: 'Kopieren',
  60. duplicate: 'Duplizieren',
  61. addBlock: 'Block hinzufügen',
  62. pasteHere: 'Hier einfügen',
  63. pointerMode: 'Zeigermodus',
  64. handMode: 'Handmodus',
  65. model: 'Modell',
  66. workflowAsTool: 'Workflow als Tool',
  67. configureRequired: 'Konfiguration erforderlich',
  68. configure: 'Konfigurieren',
  69. manageInTools: 'In den Tools verwalten',
  70. workflowAsToolTip: 'Nach dem Workflow-Update ist eine Neukonfiguration des Tools erforderlich.',
  71. viewDetailInTracingPanel: 'Details anzeigen',
  72. },
  73. env: {
  74. envPanelTitle: 'Umgebungsvariablen',
  75. envDescription: 'Umgebungsvariablen können zur Speicherung privater Informationen und Anmeldedaten verwendet werden. Sie sind schreibgeschützt und können beim Export vom DSL-File getrennt werden.',
  76. envPanelButton: 'Variable hinzufügen',
  77. modal: {
  78. title: 'Umgebungsvariable hinzufügen',
  79. editTitle: 'Umgebungsvariable bearbeiten',
  80. type: 'Typ',
  81. name: 'Name',
  82. namePlaceholder: 'Umgebungsname',
  83. value: 'Wert',
  84. valuePlaceholder: 'Umgebungswert',
  85. secretTip: 'Wird verwendet, um sensible Informationen oder Daten zu definieren, wobei DSL-Einstellungen zur Verhinderung von Lecks konfiguriert sind.',
  86. },
  87. export: {
  88. title: 'Geheime Umgebungsvariablen exportieren?',
  89. checkbox: 'Geheime Werte exportieren',
  90. ignore: 'DSL exportieren',
  91. export: 'DSL mit geheimen Werten exportieren',
  92. },
  93. },
  94. changeHistory: {
  95. title: 'Änderungsverlauf',
  96. placeholder: 'Du hast noch nichts geändert',
  97. clearHistory: 'Änderungsverlauf löschen',
  98. hint: 'Hinweis',
  99. hintText: 'Änderungen werden im Änderungsverlauf aufgezeichnet, der für die Dauer dieser Sitzung auf Ihrem Gerät gespeichert wird. Dieser Verlauf wird gelöscht, wenn Sie den Editor verlassen.',
  100. stepBackward_one: '{{count}} Schritt zurück',
  101. stepBackward_other: '{{count}} Schritte zurück',
  102. stepForward_one: '{{count}} Schritt vorwärts',
  103. stepForward_other: '{{count}} Schritte vorwärts',
  104. sessionStart: 'Sitzungsstart',
  105. currentState: 'Aktueller Zustand',
  106. nodeTitleChange: 'Blocktitel geändert',
  107. nodeDescriptionChange: 'Blockbeschreibung geändert',
  108. nodeDragStop: 'Block verschoben',
  109. nodeChange: 'Block geändert',
  110. nodeConnect: 'Block verbunden',
  111. nodePaste: 'Block eingefügt',
  112. nodeDelete: 'Block gelöscht',
  113. nodeAdd: 'Block hinzugefügt',
  114. nodeResize: 'Blockgröße geändert',
  115. noteAdd: 'Notiz hinzugefügt',
  116. noteChange: 'Notiz geändert',
  117. noteDelete: 'Notiz gelöscht',
  118. edgeDelete: 'Block getrennt',
  119. },
  120. errorMsg: {
  121. fieldRequired: '{{field}} ist erforderlich',
  122. authRequired: 'Autorisierung ist erforderlich',
  123. invalidJson: '{{field}} ist ein ungültiges JSON',
  124. fields: {
  125. variable: 'Variablenname',
  126. variableValue: 'Variablenwert',
  127. code: 'Code',
  128. model: 'Modell',
  129. rerankModel: 'Neusortierungsmodell',
  130. },
  131. invalidVariable: 'Ungültige Variable',
  132. },
  133. singleRun: {
  134. testRun: 'Testlauf ',
  135. startRun: 'Lauf starten',
  136. running: 'Wird ausgeführt',
  137. testRunIteration: 'Testlaufiteration',
  138. back: 'Zurück',
  139. iteration: 'Iteration',
  140. },
  141. tabs: {
  142. 'searchBlock': 'Block suchen',
  143. 'blocks': 'Blöcke',
  144. 'tools': 'Werkzeuge',
  145. 'allTool': 'Alle',
  146. 'builtInTool': 'Eingebaut',
  147. 'customTool': 'Benutzerdefiniert',
  148. 'workflowTool': 'Arbeitsablauf',
  149. 'question-understand': 'Fragen verstehen',
  150. 'logic': 'Logik',
  151. 'transform': 'Transformieren',
  152. 'utilities': 'Dienstprogramme',
  153. 'noResult': 'Kein Ergebnis gefunden',
  154. },
  155. blocks: {
  156. 'start': 'Start',
  157. 'end': 'Ende',
  158. 'answer': 'Antwort',
  159. 'llm': 'LLM',
  160. 'knowledge-retrieval': 'Wissensabruf',
  161. 'question-classifier': 'Fragenklassifizierer',
  162. 'if-else': 'WENN/SONST',
  163. 'code': 'Code',
  164. 'template-transform': 'Vorlage',
  165. 'http-request': 'HTTP-Anfrage',
  166. 'variable-assigner': 'Variablen-Zuweiser',
  167. 'variable-aggregator': 'Variablen-Aggregator',
  168. 'iteration-start': 'Iterationsstart',
  169. 'iteration': 'Iteration',
  170. 'parameter-extractor': 'Parameter-Extraktor',
  171. },
  172. blocksAbout: {
  173. 'start': 'Definieren Sie die Anfangsparameter zum Starten eines Workflows',
  174. 'end': 'Definieren Sie das Ende und den Ergebnistyp eines Workflows',
  175. 'answer': 'Definieren Sie den Antwortinhalt einer Chat-Konversation',
  176. 'llm': 'Große Sprachmodelle aufrufen, um Fragen zu beantworten oder natürliche Sprache zu verarbeiten',
  177. 'knowledge-retrieval': 'Ermöglicht das Abfragen von Textinhalten, die sich auf Benutzerfragen aus der Wissensdatenbank beziehen',
  178. 'question-classifier': 'Definieren Sie die Klassifizierungsbedingungen von Benutzerfragen, LLM kann basierend auf der Klassifikationsbeschreibung festlegen, wie die Konversation fortschreitet',
  179. 'if-else': 'Ermöglicht das Aufteilen des Workflows in zwei Zweige basierend auf if/else-Bedingungen',
  180. 'code': 'Ein Stück Python- oder NodeJS-Code ausführen, um benutzerdefinierte Logik zu implementieren',
  181. 'template-transform': 'Daten in Zeichenfolgen mit Jinja-Vorlagensyntax umwandeln',
  182. 'http-request': 'Ermöglichen, dass Serveranforderungen über das HTTP-Protokoll gesendet werden',
  183. 'variable-assigner': 'Variablen aus mehreren Zweigen in eine einzige Variable zusammenführen, um eine einheitliche Konfiguration der nachgelagerten Knoten zu ermöglichen.',
  184. 'variable-aggregator': 'Variablen aus mehreren Zweigen in eine einzige Variable zusammenführen, um eine einheitliche Konfiguration der nachgelagerten Knoten zu ermöglichen.',
  185. 'iteration': 'Mehrere Schritte an einem Listenobjekt ausführen, bis alle Ergebnisse ausgegeben wurden.',
  186. 'parameter-extractor': 'Verwenden Sie LLM, um strukturierte Parameter aus natürlicher Sprache für Werkzeugaufrufe oder HTTP-Anfragen zu extrahieren.',
  187. },
  188. operator: {
  189. zoomIn: 'Vergrößern',
  190. zoomOut: 'Verkleinern',
  191. zoomTo50: 'Auf 50% vergrößern',
  192. zoomTo100: 'Auf 100% vergrößern',
  193. zoomToFit: 'An Bildschirm anpassen',
  194. },
  195. panel: {
  196. userInputField: 'Benutzereingabefeld',
  197. changeBlock: 'Block ändern',
  198. helpLink: 'Hilfelink',
  199. about: 'Über',
  200. createdBy: 'Erstellt von ',
  201. nextStep: 'Nächster Schritt',
  202. addNextStep: 'Fügen Sie den nächsten Block in diesem Workflow hinzu',
  203. selectNextStep: 'Nächsten Block auswählen',
  204. runThisStep: 'Diesen Schritt ausführen',
  205. checklist: 'Checkliste',
  206. checklistTip: 'Stellen Sie sicher, dass alle Probleme vor der Veröffentlichung gelöst sind',
  207. checklistResolved: 'Alle Probleme wurden gelöst',
  208. organizeBlocks: 'Blöcke organisieren',
  209. change: 'Ändern',
  210. },
  211. nodes: {
  212. common: {
  213. outputVars: 'Ausgabevariablen',
  214. insertVarTip: 'Variable einfügen',
  215. memory: {
  216. memory: 'Speicher',
  217. memoryTip: 'Einstellungen des Chat-Speichers',
  218. windowSize: 'Fenstergröße',
  219. conversationRoleName: 'Rollenname in der Konversation',
  220. user: 'Benutzer-Präfix',
  221. assistant: 'Assistenten-Präfix',
  222. },
  223. memories: {
  224. title: 'Erinnerungen',
  225. tip: 'Chat-Speicher',
  226. builtIn: 'Eingebaut',
  227. },
  228. },
  229. start: {
  230. required: 'erforderlich',
  231. inputField: 'Eingabefeld',
  232. builtInVar: 'Eingebaute Variablen',
  233. outputVars: {
  234. query: 'Benutzereingabe',
  235. memories: {
  236. des: 'Konversationsverlauf',
  237. type: 'Nachrichtentyp',
  238. content: 'Nachrichteninhalt',
  239. },
  240. files: 'Dateiliste',
  241. },
  242. noVarTip: 'Legen Sie Eingaben fest, die im Workflow verwendet werden können',
  243. },
  244. end: {
  245. outputs: 'Ausgaben',
  246. output: {
  247. type: 'Ausgabetyp',
  248. variable: 'Ausgabevariable',
  249. },
  250. type: {
  251. 'none': 'Keine',
  252. 'plain-text': 'Klartext',
  253. 'structured': 'Strukturiert',
  254. },
  255. },
  256. answer: {
  257. answer: 'Antwort',
  258. outputVars: 'Ausgabevariablen',
  259. },
  260. llm: {
  261. model: 'Modell',
  262. variables: 'Variablen',
  263. context: 'Kontext',
  264. contextTooltip: 'Sie können Wissen als Kontext importieren',
  265. notSetContextInPromptTip: 'Um die Kontextfunktion zu aktivieren, füllen Sie die Kontextvariable im PROMPT aus.',
  266. prompt: 'Prompt',
  267. roleDescription: {
  268. system: 'Geben Sie hochrangige Anweisungen für die Konversation',
  269. user: 'Geben Sie dem Modell Anweisungen, Abfragen oder beliebigen texteingabebasierten Input',
  270. assistant: 'Die Antworten des Modells basierend auf den Benutzernachrichten',
  271. },
  272. addMessage: 'Nachricht hinzufügen',
  273. vision: 'Vision',
  274. files: 'Dateien',
  275. resolution: {
  276. name: 'Auflösung',
  277. high: 'Hoch',
  278. low: 'Niedrig',
  279. },
  280. outputVars: {
  281. output: 'Generierter Inhalt',
  282. usage: 'Nutzungsinformationen des Modells',
  283. },
  284. singleRun: {
  285. variable: 'Variable',
  286. },
  287. sysQueryInUser: 'sys.query in Benutzernachricht erforderlich',
  288. },
  289. knowledgeRetrieval: {
  290. queryVariable: 'Abfragevariable',
  291. knowledge: 'Wissen',
  292. outputVars: {
  293. output: 'Abgerufene segmentierte Daten',
  294. content: 'Segmentierter Inhalt',
  295. title: 'Segmentierter Titel',
  296. icon: 'Segmentiertes Symbol',
  297. url: 'Segmentierte URL',
  298. metadata: 'Weitere Metadaten',
  299. },
  300. },
  301. http: {
  302. inputVars: 'Eingabevariablen',
  303. api: 'API',
  304. apiPlaceholder: 'Geben Sie die URL ein, tippen Sie ‘/’, um Variable einzufügen',
  305. notStartWithHttp: 'API sollte mit http:// oder https:// beginnen',
  306. key: 'Schlüssel',
  307. value: 'Wert',
  308. bulkEdit: 'Massenerfassung',
  309. keyValueEdit: 'Schlüssel-Wert-Erfassung',
  310. headers: 'Header',
  311. params: 'Parameter',
  312. body: 'Body',
  313. outputVars: {
  314. body: 'Antwortinhalt',
  315. statusCode: 'Antwortstatuscode',
  316. headers: 'Antwort-Header-Liste im JSON-Format',
  317. files: 'Dateiliste',
  318. },
  319. authorization: {
  320. 'authorization': 'Autorisierung',
  321. 'authorizationType': 'Autorisierungstyp',
  322. 'no-auth': 'Keine',
  323. 'api-key': 'API-Schlüssel',
  324. 'auth-type': 'Autorisierungstyp',
  325. 'basic': 'Basis',
  326. 'bearer': 'Bearer',
  327. 'custom': 'Benutzerdefiniert',
  328. 'api-key-title': 'API-Schlüssel',
  329. 'header': 'Header',
  330. },
  331. insertVarPlaceholder: 'tippen Sie ‘/’, um Variable einzufügen',
  332. timeout: {
  333. title: 'Zeitüberschreitung',
  334. connectLabel: 'Verbindungs-Zeitüberschreitung',
  335. connectPlaceholder: 'Geben Sie die Verbindungs-Zeitüberschreitung in Sekunden ein',
  336. readLabel: 'Lese-Zeitüberschreitung',
  337. readPlaceholder: 'Geben Sie die Lese-Zeitüberschreitung in Sekunden ein',
  338. writeLabel: 'Schreib-Zeitüberschreitung',
  339. writePlaceholder: 'Geben Sie die Schreib-Zeitüberschreitung in Sekunden ein',
  340. },
  341. },
  342. code: {
  343. inputVars: 'Eingabevariablen',
  344. outputVars: 'Ausgabevariablen',
  345. advancedDependencies: 'Erweiterte Abhängigkeiten',
  346. advancedDependenciesTip: 'Fügen Sie hier einige vorinstallierte Abhängigkeiten hinzu, die mehr Zeit in Anspruch nehmen oder nicht standardmäßig eingebaut sind',
  347. searchDependencies: 'Abhängigkeiten suchen',
  348. },
  349. templateTransform: {
  350. inputVars: 'Eingabevariablen',
  351. code: 'Code',
  352. codeSupportTip: 'Unterstützt nur Jinja2',
  353. outputVars: {
  354. output: 'Transformierter Inhalt',
  355. },
  356. },
  357. ifElse: {
  358. if: 'Wenn',
  359. else: 'Sonst',
  360. elseDescription: 'Wird verwendet, um die Logik zu definieren, die ausgeführt werden soll, wenn die if-Bedingung nicht erfüllt ist.',
  361. and: 'und',
  362. or: 'oder',
  363. operator: 'Operator',
  364. notSetVariable: 'Bitte setzen Sie zuerst die Variable',
  365. comparisonOperator: {
  366. 'contains': 'enthält',
  367. 'not contains': 'enthält nicht',
  368. 'start with': 'beginnt mit',
  369. 'end with': 'endet mit',
  370. 'is': 'ist',
  371. 'is not': 'ist nicht',
  372. 'empty': 'ist leer',
  373. 'not empty': 'ist nicht leer',
  374. 'null': 'ist null',
  375. 'not null': 'ist nicht null',
  376. },
  377. enterValue: 'Wert eingeben',
  378. addCondition: 'Bedingung hinzufügen',
  379. conditionNotSetup: 'Bedingung NICHT eingerichtet',
  380. },
  381. variableAssigner: {
  382. title: 'Variablen zuweisen',
  383. outputType: 'Ausgabetyp',
  384. varNotSet: 'Variable nicht gesetzt',
  385. noVarTip: 'Fügen Sie die zuzuweisenden Variablen hinzu',
  386. type: {
  387. string: 'String',
  388. number: 'Nummer',
  389. object: 'Objekt',
  390. array: 'Array',
  391. },
  392. aggregationGroup: 'Aggregationsgruppe',
  393. aggregationGroupTip: 'Durch Aktivieren dieser Funktion kann der Variablen-Aggregator mehrere Variablensätze aggregieren.',
  394. addGroup: 'Gruppe hinzufügen',
  395. outputVars: {
  396. varDescribe: 'Ausgabe {{groupName}}',
  397. },
  398. setAssignVariable: 'Zuweisungsvariable festlegen',
  399. },
  400. tool: {
  401. toAuthorize: 'Autorisieren',
  402. inputVars: 'Eingabevariablen',
  403. outputVars: {
  404. text: 'durch das Tool generierter Inhalt',
  405. files: {
  406. title: 'durch das Tool generierte Dateien',
  407. type: 'Unterstützungstyp. Derzeit nur Bild unterstützt',
  408. transfer_method: 'Übertragungsmethode. Der Wert ist remote_url oder local_file',
  409. url: 'Bild-URL',
  410. upload_file_id: 'Hochgeladene Datei-ID',
  411. },
  412. json: 'von einem Tool generiertes JSON',
  413. },
  414. },
  415. questionClassifiers: {
  416. model: 'Modell',
  417. inputVars: 'Eingabevariablen',
  418. outputVars: {
  419. className: 'Klassennamen',
  420. },
  421. class: 'Klasse',
  422. classNamePlaceholder: 'Geben Sie Ihren Klassennamen ein',
  423. advancedSetting: 'Erweiterte Einstellung',
  424. topicName: 'Themenname',
  425. topicPlaceholder: 'Geben Sie Ihren Themennamen ein',
  426. addClass: 'Klasse hinzufügen',
  427. instruction: 'Anweisung',
  428. instructionTip: 'Geben Sie zusätzliche Anweisungen ein, um dem Fragenklassifizierer zu helfen, besser zu verstehen, wie Fragen kategorisiert werden sollen.',
  429. instructionPlaceholder: 'Geben Sie Ihre Anweisung ein',
  430. },
  431. parameterExtractor: {
  432. inputVar: 'Eingabevariable',
  433. extractParameters: 'Parameter extrahieren',
  434. importFromTool: 'Aus Tools importieren',
  435. addExtractParameter: 'Extraktionsparameter hinzufügen',
  436. addExtractParameterContent: {
  437. name: 'Name',
  438. namePlaceholder: 'Name des Extraktionsparameters',
  439. type: 'Typ',
  440. typePlaceholder: 'Typ des Extraktionsparameters',
  441. description: 'Beschreibung',
  442. descriptionPlaceholder: 'Beschreibung des Extraktionsparameters',
  443. required: 'Erforderlich',
  444. requiredContent: 'Erforderlich wird nur als Referenz für die Modellschlussfolgerung verwendet und nicht für die zwingende Validierung der Parameter-Ausgabe.',
  445. },
  446. extractParametersNotSet: 'Extraktionsparameter nicht eingerichtet',
  447. instruction: 'Anweisung',
  448. instructionTip: 'Geben Sie zusätzliche Anweisungen ein, um dem Parameter-Extraktor zu helfen, zu verstehen, wie Parameter extrahiert werden.',
  449. advancedSetting: 'Erweiterte Einstellung',
  450. reasoningMode: 'Schlussfolgerungsmodus',
  451. reasoningModeTip: 'Sie können den entsprechenden Schlussfolgerungsmodus basierend auf der Fähigkeit des Modells wählen, auf Anweisungen zur Funktionsaufruf- oder Eingabeaufforderungen zu reagieren.',
  452. isSuccess: 'Ist Erfolg. Bei Erfolg beträgt der Wert 1, bei Misserfolg beträgt der Wert 0.',
  453. errorReason: 'Fehlergrund',
  454. },
  455. iteration: {
  456. deleteTitle: 'Iterationsknoten löschen?',
  457. deleteDesc: 'Das Löschen des Iterationsknotens löscht alle untergeordneten Knoten',
  458. input: 'Eingabe',
  459. output: 'Ausgabevariablen',
  460. iteration_one: '{{count}} Iteration',
  461. iteration_other: '{{count}} Iterationen',
  462. currentIteration: 'Aktuelle Iteration',
  463. },
  464. },
  465. tracing: {
  466. stopBy: 'Gestoppt von {{user}}',
  467. },
  468. }
  469. export default translation