mojulo 0.0.0 → 0.1.1

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 (121) hide show
  1. package/README.md +54 -4
  2. package/lib/audit-logger-new.js +11 -0
  3. package/lib/auth/gate.js +25 -0
  4. package/lib/auth/service.js +17 -0
  5. package/lib/auth/session.js +63 -0
  6. package/lib/builder/chat-processor.js +607 -0
  7. package/lib/builder/composer-bridge.js +82 -0
  8. package/lib/builder/evaluator.js +159 -0
  9. package/lib/builder/executor.js +252 -0
  10. package/lib/builder/index.js +48 -0
  11. package/lib/builder/session.js +248 -0
  12. package/lib/builder/system-prompt.js +422 -0
  13. package/lib/builder/tone-presets.js +75 -0
  14. package/lib/builder/tool-executors.js +1527 -0
  15. package/lib/builder/tools.js +338 -0
  16. package/lib/builder/validators.js +239 -0
  17. package/lib/composer/composer.js +225 -0
  18. package/lib/composer/index.js +40 -0
  19. package/lib/composer/protocols/00_base.txt +19 -0
  20. package/lib/composer/protocols/01_knowledge.txt +9 -0
  21. package/lib/composer/protocols/02_form-gathering.txt +32 -0
  22. package/lib/composer/protocols/03_appointments.txt +16 -0
  23. package/lib/composer/protocols/04_triage.txt +15 -0
  24. package/lib/composer/protocols/05_optical-read.txt +22 -0
  25. package/lib/composer/response-builder.js +98 -0
  26. package/lib/config-builder.js +650 -0
  27. package/lib/db/ids.js +10 -0
  28. package/lib/db/index.js +179 -0
  29. package/lib/db/repositories/apiKeys.js +72 -0
  30. package/lib/db/repositories/auditLogs.js +12 -0
  31. package/lib/db/repositories/botSpaces.js +12 -0
  32. package/lib/db/repositories/builderSessions.js +312 -0
  33. package/lib/db/repositories/deploymentEvents.js +12 -0
  34. package/lib/db/repositories/deployments.js +385 -0
  35. package/lib/db/repositories/documents.js +68 -0
  36. package/lib/db/repositories/mcpJobs.js +84 -0
  37. package/lib/deployers/bot-fleet.js +110 -0
  38. package/lib/deployers/bot-proxy.js +72 -0
  39. package/lib/deployers/build.js +89 -0
  40. package/lib/deployers/cloud-deploy.js +310 -0
  41. package/lib/deployers/docker.js +439 -0
  42. package/lib/deployers/fly.js +432 -0
  43. package/lib/deployers/index.js +38 -0
  44. package/lib/deployment-auth.js +36 -0
  45. package/lib/document-parser.js +171 -0
  46. package/lib/embedder/chunker.js +93 -0
  47. package/lib/embedder/local.js +101 -0
  48. package/lib/embedder/preview-rag.js +93 -0
  49. package/lib/envelope-schema.js +54 -0
  50. package/lib/fleet/scoped-sql.js +342 -0
  51. package/lib/form-schema-config/base.js +135 -0
  52. package/lib/form-schema-config/index.js +286 -0
  53. package/lib/form-schema-config/locales/af-ZA.js +153 -0
  54. package/lib/form-schema-config/locales/ar-AE.js +142 -0
  55. package/lib/form-schema-config/locales/ar-SA.js +164 -0
  56. package/lib/form-schema-config/locales/de-DE.js +152 -0
  57. package/lib/form-schema-config/locales/en-AU.js +161 -0
  58. package/lib/form-schema-config/locales/en-CA.js +115 -0
  59. package/lib/form-schema-config/locales/en-GB.js +132 -0
  60. package/lib/form-schema-config/locales/en-IN.js +219 -0
  61. package/lib/form-schema-config/locales/en-MY.js +171 -0
  62. package/lib/form-schema-config/locales/en-NG.js +198 -0
  63. package/lib/form-schema-config/locales/en-PH.js +186 -0
  64. package/lib/form-schema-config/locales/en-SG.js +153 -0
  65. package/lib/form-schema-config/locales/en-US.js +138 -0
  66. package/lib/form-schema-config/locales/es-ES.js +171 -0
  67. package/lib/form-schema-config/locales/es-MX.js +193 -0
  68. package/lib/form-schema-config/locales/fr-CA.js +138 -0
  69. package/lib/form-schema-config/locales/fr-FR.js +155 -0
  70. package/lib/form-schema-config/locales/hi-IN.js +219 -0
  71. package/lib/form-schema-config/locales/it-IT.js +157 -0
  72. package/lib/form-schema-config/locales/ja-JP.js +169 -0
  73. package/lib/form-schema-config/locales/ko-KR.js +140 -0
  74. package/lib/form-schema-config/locales/nl-NL.js +149 -0
  75. package/lib/form-schema-config/locales/pt-BR.js +168 -0
  76. package/lib/form-schema-config/locales/zh-CN.js +172 -0
  77. package/lib/form-schema-config/locales/zh-HK.js +142 -0
  78. package/lib/form-structure-schema.js +191 -0
  79. package/lib/llm-providers.js +828 -0
  80. package/lib/markdown.js +197 -0
  81. package/lib/mcp/catalysts/appointment-to-calendar.md +84 -0
  82. package/lib/mcp/catalysts/conversations-to-channel-digest.md +104 -0
  83. package/lib/mcp/catalysts/document-extract-to-store.md +92 -0
  84. package/lib/mcp/catalysts/knowledge-gap-miner.md +96 -0
  85. package/lib/mcp/catalysts/loader.js +144 -0
  86. package/lib/mcp/catalysts/qualify-lead-to-crm.md +83 -0
  87. package/lib/mcp/catalysts/scan-conversations-for-signal.md +92 -0
  88. package/lib/mcp/catalysts/submission-to-ticket.md +83 -0
  89. package/lib/mcp/catalysts/submissions-to-warehouse.md +103 -0
  90. package/lib/mcp/catalysts/weekly-submissions-digest.md +82 -0
  91. package/lib/mcp/jobs.js +64 -0
  92. package/lib/mcp/server.js +184 -0
  93. package/lib/mcp/session-binding.js +130 -0
  94. package/lib/mcp/tools/build.js +123 -0
  95. package/lib/mcp/tools/catalysts.js +477 -0
  96. package/lib/mcp/tools/context.js +325 -0
  97. package/lib/mcp/tools/fleet.js +391 -0
  98. package/lib/mcp/tools/jobs-tools.js +240 -0
  99. package/lib/mcp/tools/operate.js +314 -0
  100. package/lib/preview/build-preview-config.js +136 -0
  101. package/lib/rate-limiter.js +11 -0
  102. package/lib/resolve-api-key.js +142 -0
  103. package/lib/storage/index.js +40 -0
  104. package/messages/de.json +2136 -0
  105. package/messages/en.json +2136 -0
  106. package/messages/es.json +2136 -0
  107. package/messages/fr.json +2136 -0
  108. package/messages/it.json +2136 -0
  109. package/messages/ja.json +2136 -0
  110. package/messages/ko.json +2136 -0
  111. package/messages/nl.json +2136 -0
  112. package/messages/pl.json +2136 -0
  113. package/messages/pt.json +2136 -0
  114. package/messages/ru.json +2136 -0
  115. package/messages/uk.json +2136 -0
  116. package/messages/zh.json +2136 -0
  117. package/package.json +68 -5
  118. package/scripts/mcp-config.mjs +162 -0
  119. package/scripts/mcp-stdio-loader.mjs +42 -0
  120. package/scripts/mcp-stdio.mjs +108 -0
  121. package/scripts/mojulo-paths.mjs +48 -0
@@ -0,0 +1,2136 @@
1
+ {
2
+ "common": {
3
+ "loading": "Laden...",
4
+ "save": "Opslaan",
5
+ "saving": "Opslaan...",
6
+ "cancel": "Annuleren",
7
+ "delete": "Verwijderen",
8
+ "edit": "Bewerken",
9
+ "close": "Sluiten",
10
+ "search": "Zoeken",
11
+ "back": "Terug",
12
+ "next": "Volgende",
13
+ "submit": "Verzenden",
14
+ "create": "Aanmaken",
15
+ "copy": "Kopiëren",
16
+ "copied": "Gekopieerd!",
17
+ "view": "Bekijken",
18
+ "hide": "Verbergen",
19
+ "yes": "Ja",
20
+ "no": "Nee",
21
+ "confirm": "Bevestigen",
22
+ "done": "Klaar",
23
+ "updating": "Bijwerken...",
24
+ "moveTo": "Verplaatsen naar:",
25
+ "unknown": "Onbekend",
26
+ "error": "Fout",
27
+ "remove": "Verwijderen",
28
+ "selectAnOption": "Kies een optie",
29
+ "addItemLabel": "{itemLabel} toevoegen",
30
+ "itemNumber": "{itemLabel} #{number}"
31
+ },
32
+ "auth": {
33
+ "signIn": "Inloggen",
34
+ "signOut": "Uitloggen",
35
+ "signingIn": "Bezig met inloggen...",
36
+ "email": "E-mail",
37
+ "password": "Wachtwoord",
38
+ "signInToContinue": "Log in om door te gaan",
39
+ "invalidCredentials": "Ongeldig e-mailadres of wachtwoord",
40
+ "needAccess": "Toegang nodig? Neem contact op met je organisatiebeheerder.",
41
+ "controlPanel": "Mojulo Control Panel",
42
+ "setupComplete": "Beheerdersaccount succesvol aangemaakt. Log in.",
43
+ "emailPlaceholder": "jij@bedrijf.com",
44
+ "passwordPlaceholder": "Je wachtwoord"
45
+ },
46
+ "dashboard": {
47
+ "title": "Dashboard",
48
+ "loading": "Dashboard laden...",
49
+ "loadingChatbots": "Chatbots laden...",
50
+ "loadingHistory": "Geschiedenis laden...",
51
+ "createNewBot": "Nieuwe bot aanmaken",
52
+ "noBots": "Nog geen bots",
53
+ "selectBotOrSpace": "Selecteer een bot of botruimte om details te bekijken",
54
+ "createBot": "Bot aanmaken",
55
+ "workspace": "Werkruimte van {name}",
56
+ "unassignedWorkspace": "Niet-toegewezen werkruimte",
57
+ "searchChatbots": "Chatbots zoeken",
58
+ "noChatbotsFound": "Geen chatbots gevonden",
59
+ "privateNotShared": "Privé (niet gedeeld)",
60
+ "inSpace": "in {spaceName}",
61
+ "chooseBotType": "Kies een bottype om te beginnen:",
62
+ "addNewBot": "Nieuwe bot toevoegen",
63
+ "addNewPrivateBot": "Nieuwe privébot toevoegen",
64
+ "expandBotSpaces": "Botruimtes uitvouwen",
65
+ "allSpaces": "Alle ruimtes",
66
+ "adminSummary": {
67
+ "title": "Overzicht",
68
+ "totalBots": "Totaal aantal bots",
69
+ "running": "Actief",
70
+ "stopped": "Gestopt",
71
+ "failed": "Mislukt",
72
+ "recentDeployments": "Recente deployments",
73
+ "activeBots": "Actieve bots (24u)",
74
+ "noRecentActivity": "Geen recente activiteit",
75
+ "conversations": "gesprekken",
76
+ "totalActive": "{bots} bots met {conversations} gesprekken in de laatste 24 uur",
77
+ "private": "Privé",
78
+ "unknown": "Onbekend",
79
+ "justNow": "zojuist",
80
+ "minutesAgo": "{count}m geleden",
81
+ "hoursAgo": "{count}u geleden",
82
+ "yesterday": "gisteren",
83
+ "daysAgo": "{count}d geleden"
84
+ },
85
+ "private": "Privé",
86
+ "showBotList": "Botlijst tonen",
87
+ "deleteConfirm": "Weet je zeker dat je \"{name}\" wilt verwijderen? Dit vernietigt de deployment en kan niet ongedaan worden gemaakt.",
88
+ "deleteError": "Deployment verwijderen mislukt: {error}",
89
+ "actionError": "Actie {action} op deployment mislukt: {error}",
90
+ "assignError": "Botruimte toewijzen mislukt: {error}",
91
+ "sections": {
92
+ "control": "Beheer",
93
+ "data": "Data",
94
+ "resources": "Resources"
95
+ },
96
+ "launcher": {
97
+ "modularChat": {
98
+ "title": "Modulaire bot (Chat)",
99
+ "badge": "Nieuw",
100
+ "description": "Bouw met een AI-assistent"
101
+ },
102
+ "modularWizard": {
103
+ "title": "Modulaire bot (Wizard)",
104
+ "description": "Stapsgewijze configuratie"
105
+ }
106
+ },
107
+ "redeploy": {
108
+ "confirm": "\"{name}\" opnieuw deployen met huidige configuratie? Dit herstart de bot zonder wijzigingen.",
109
+ "initiating": "Redeploy starten...",
110
+ "sending": "Deployment-verzoek versturen...",
111
+ "deploying": "Deployen...",
112
+ "redeploying": "Opnieuw deployen...",
113
+ "failed": "Redeploy mislukt"
114
+ },
115
+ "myBots": "Mijn bots",
116
+ "subtitle": "Elke bot is een opgeslagen configuratie. Bouw hem wanneer je een uitvoerbare ZIP wilt.",
117
+ "noKeyBanner": {
118
+ "text": "Voeg een LLM-providersleutel toe om de chatbouwer en formuliergebaseerde wizard te ontgrendelen.",
119
+ "cta": "Instellingen openen →"
120
+ },
121
+ "documentLibrary": "Documentbibliotheek →",
122
+ "newBotChat": "Nieuwe bot (chat)",
123
+ "newBotWizard": "Nieuwe bot (wizard)",
124
+ "loadingShort": "Laden…",
125
+ "noBotsHint": "Nog geen bots. Start er een vanuit de chatbouwer of de wizard.",
126
+ "searchBots": "Bots zoeken…",
127
+ "noBotsMatch": "Geen bots komen overeen met \"{query}\".",
128
+ "emptyDetailHint": "Selecteer een bot om de levenscyclusacties te zien.",
129
+ "buildFailedAlert": "Build mislukt: {error}",
130
+ "statuses": {
131
+ "building": "Bouwen",
132
+ "buildFailed": "Build mislukt",
133
+ "needsRebuild": "Herbouw nodig",
134
+ "running": "Actief",
135
+ "runningStale": "Actief · verouderd",
136
+ "ready": "Klaar",
137
+ "draft": "Concept"
138
+ },
139
+ "builds": {
140
+ "building": "Bouwen…",
141
+ "retry": "Build opnieuw proberen",
142
+ "rebuild": "Herbouwen",
143
+ "build": "Bouwen"
144
+ },
145
+ "connect": {
146
+ "title": "Een actieve bot verbinden",
147
+ "description": "Plak de URL waar je <code>{name}</code> draait. De control plane test deze met de in de rij ingebakken API-sleutel.",
148
+ "botUrlLabel": "Bot-URL",
149
+ "probeFailedFallback": "Probe mislukt ({status})",
150
+ "disconnect": "Verbinding verbreken",
151
+ "testing": "Testen…",
152
+ "testAndSave": "Testen & opslaan"
153
+ },
154
+ "documents": {
155
+ "title": "Documentbibliotheek",
156
+ "breadcrumbHere": "Documentbibliotheek",
157
+ "subtitle": "Elk document dat je hebt geüpload, en de bots die ernaar verwijzen. Documenten leven langer dan bots — een bot verwijderen verwijdert niet de bijbehorende documenten.",
158
+ "loadFailed": "Laden bibliotheek mislukt: {error}",
159
+ "loading": "Laden…",
160
+ "searchPlaceholder": "Zoek op bestandsnaam…",
161
+ "filters": {
162
+ "all": "Alle",
163
+ "unattached": "Niet-gekoppeld",
164
+ "parseFailed": "Parsen mislukt"
165
+ },
166
+ "selectAll": "Alles selecteren",
167
+ "deselectAll": "Selectie opheffen",
168
+ "selectionStatus": "{selected} van {total} geselecteerd",
169
+ "deleting": "Verwijderen…",
170
+ "deleteSelected": "Selectie verwijderen",
171
+ "deleteCount": "{count} verwijderen",
172
+ "deleteSingleConfirm": "\"{name}\" verwijderen? Dit verwijdert het bestand van schijf.",
173
+ "deleteMultiConfirm": "{count} niet-gekoppelde documenten verwijderen? Dit verwijdert ze van schijf.",
174
+ "deleteFailed": "Verwijderen van {failed} van {total} mislukt: {details}",
175
+ "noDocs": "Nog geen documenten geüpload. Upload er een vanuit de wizard of chatbouwer tijdens het configureren van een bot.",
176
+ "noMatch": "Geen documenten komen overeen met dit filter.",
177
+ "table": {
178
+ "document": "Document",
179
+ "size": "Grootte",
180
+ "uploaded": "Geüpload",
181
+ "parsed": "Geparseerd",
182
+ "usedBy": "Gebruikt door"
183
+ },
184
+ "parseFailedLabel": "mislukt",
185
+ "parseFailedTooltip": "Geen geëxtraheerde tekst — RAG gebruikt dit document niet",
186
+ "unattachedLabel": "Niet-gekoppeld"
187
+ },
188
+ "detail": {
189
+ "backToList": "Terug naar lijst",
190
+ "runningAt": "draait op",
191
+ "staleNotice": "Configuratie bewerkt sinds laatste build — herbouw om de nieuwste ZIP te krijgen.",
192
+ "wizard": "Wizard",
193
+ "chat": "Chat",
194
+ "connect": "Verbinden",
195
+ "reconnect": "Opnieuw verbinden",
196
+ "conversations": "Gesprekken",
197
+ "downloadZip": "ZIP downloaden",
198
+ "downloadWithDocs": "Downloaden met docs",
199
+ "deployToCloud": "Deployen naar cloud",
200
+ "live": "Live ↗",
201
+ "hideEmbed": "Embed verbergen",
202
+ "embedScript": "Embedscript",
203
+ "deleteBot": "Bot verwijderen",
204
+ "deleteConfirm": "Deze bot en zijn artefact verwijderen?"
205
+ }
206
+ },
207
+ "bots": {
208
+ "types": {
209
+ "chat": "Chat",
210
+ "knowledge": "Kennis",
211
+ "form": "Formulier",
212
+ "triage": "Triage",
213
+ "appointment": "Afspraak",
214
+ "bot": "Bot"
215
+ },
216
+ "descriptions": {
217
+ "chat": "AI-aangedreven chatassistent",
218
+ "form": "Gestructureerde dataverzameling",
219
+ "triage": "Gebruikers naar de juiste plek leiden",
220
+ "appointment": "Vergaderingen & boekingen plannen"
221
+ },
222
+ "status": {
223
+ "deployed": "gedeployed",
224
+ "deploying": "deployen",
225
+ "failed": "mislukt"
226
+ }
227
+ },
228
+ "actions": {
229
+ "modify": "Wijzigen",
230
+ "clone": "Klonen",
231
+ "reassign": "Opnieuw toewijzen",
232
+ "goToLiveBot": "Ga naar live bot",
233
+ "modifyTitle": "Wijzig deployment - behoudt dezelfde URL en naam",
234
+ "cloneTitle": "Kloon deze deployment met een nieuwe naam",
235
+ "reassignTitle": "Opnieuw toewijzen aan een andere botruimte",
236
+ "deleteTitle": "Deployment verwijderen",
237
+ "editInChat": "Chat",
238
+ "editInChatTitle": "Wijzigen met chatassistent",
239
+ "pause": "Pauzeren",
240
+ "start": "Starten",
241
+ "pauseBot": "Bot pauzeren",
242
+ "startBot": "Bot starten",
243
+ "redeploy": "Opnieuw deployen",
244
+ "redeployBot": "Bot opnieuw deployen",
245
+ "live": "Live",
246
+ "embed": "Embed",
247
+ "copied": "Gekopieerd",
248
+ "replicas": "Replica's",
249
+ "scaleReplicas": "Replica's schalen",
250
+ "replicasDescription": "Pas het aantal botreplica's aan. Meer replica's verwerken meer gelijktijdige gebruikers. Sticky sessions zorgen ervoor dat gebruikers verbonden blijven met dezelfde replica.",
251
+ "replicaCount": "Aantal replica's",
252
+ "replicasRange": "Min: 1, Max: 10",
253
+ "currentReplicas": "Huidige replica's (beschikbaar/gewenst)",
254
+ "scale": "Schalen",
255
+ "scaling": "Schalen...",
256
+ "cancel": "Annuleren"
257
+ },
258
+ "nav": {
259
+ "dashboard": "Dashboard",
260
+ "analytics": "Analytics",
261
+ "conversations": "Gesprekken",
262
+ "submissions": "Inzendingen",
263
+ "liveLogs": "Live logs"
264
+ },
265
+ "wizard": {
266
+ "loading": "Wizard laden...",
267
+ "loadingDeployment": "Deploymentconfiguratie laden...",
268
+ "previewAfterDeployment": "Voorbeeld beschikbaar na deployment",
269
+ "clickToBegin": "Klik op een deployment-knop om te beginnen",
270
+ "clickToUpdate": "Klik op een deployment-knop om bij te werken",
271
+ "steps": {
272
+ "identity": "Identiteit",
273
+ "knowledge": "Kennisbank",
274
+ "deployment": "Deployment",
275
+ "resources": "Resources",
276
+ "infoGathering": "Informatieverzameling",
277
+ "triage": "Triage",
278
+ "appointments": "Afspraken",
279
+ "botSetup": "Botsetup",
280
+ "capabilities": "Mogelijkheden",
281
+ "formCollection": "Formulierverzameling",
282
+ "routing": "Routering",
283
+ "opticalRead": "Optical Read",
284
+ "deploy": "Bouwen"
285
+ },
286
+ "titles": {
287
+ "newBot": "Nieuwe bot",
288
+ "editBot": "Bot bewerken",
289
+ "cloneBot": "Bot klonen",
290
+ "newConversationalBot": "Nieuwe conversatiebot",
291
+ "editConversationalBot": "Conversatiebot bewerken",
292
+ "cloneConversationalBot": "Conversatiebot klonen",
293
+ "newTriageBot": "Nieuwe triagebot",
294
+ "editTriageBot": "Triagebot bewerken",
295
+ "cloneTriageBot": "Triagebot klonen",
296
+ "newAppointmentsBot": "Nieuwe afsprakenbot",
297
+ "editAppointmentsBot": "Afsprakenbot bewerken",
298
+ "cloneAppointmentsBot": "Afsprakenbot klonen",
299
+ "configureYourBot": "Configureer je bot",
300
+ "selectBotCapabilities": "Selecteer botmogelijkheden",
301
+ "defineBotIdentity": "Definieer botidentiteit",
302
+ "uploadKnowledgeBase": "Kennisbank uploaden",
303
+ "configureFormCollection": "Formulierverzameling configureren",
304
+ "configureAppointments": "Afspraken configureren",
305
+ "configureTriageRouting": "Triage-routering configureren",
306
+ "configureOpticalRead": "Optical Read configureren",
307
+ "deployYourBot": "Bouwen & downloaden"
308
+ },
309
+ "badges": {
310
+ "modifying": "Wijzigen",
311
+ "clone": "Kloon",
312
+ "new": "Nieuw",
313
+ "conversational": "Conversationeel",
314
+ "triage": "Triage",
315
+ "appointments": "Afspraken",
316
+ "form": "Formulier",
317
+ "modular": "Modulair",
318
+ "knowledge": "Kennis",
319
+ "forms": "Formulieren",
320
+ "routing": "Routering",
321
+ "opticalRead": "Optical Read"
322
+ },
323
+ "theatre": {
324
+ "modelConfiguration": "Modelconfiguratie",
325
+ "botPreview": "Botvoorbeeld",
326
+ "knowledgeBase": "Kennisbank",
327
+ "deployment": "Deployment",
328
+ "preview": "Voorbeeld",
329
+ "infoGathering": "Informatieverzameling",
330
+ "triageDestinations": "Triagebestemmingen",
331
+ "appointmentTypes": "Afspraaktypes",
332
+ "calendarProviders": "Agendaproviders",
333
+ "protocolPreview": "Protocolvoorbeeld",
334
+ "formPreview": "Formuliervoorbeeld",
335
+ "appointmentPreview": "Afspraakvoorbeeld",
336
+ "triagePreview": "Triagevoorbeeld",
337
+ "opticalReadPreview": "Optical Read-voorbeeld"
338
+ },
339
+ "protocols": {
340
+ "selectCapabilities": "Selecteer botmogelijkheden",
341
+ "selectCapabilitiesDescription": "Schakel de protocollen in die je bot nodig heeft. Combineer meerdere mogelijkheden.",
342
+ "knowledgeBase": "Kennisbank",
343
+ "knowledgeBaseDescription": "Beantwoord vragen op basis van geüploade documenten en RAG (Retrieval-Augmented Generation)",
344
+ "formCollection": "Formulierverzameling",
345
+ "formCollectionDescription": "Conversatieformulieren om informatie te verzamelen zonder dat AI de gebruikersdata ziet",
346
+ "appointmentBooking": "Afspraken boeken",
347
+ "appointmentBookingDescription": "Stuur gebruikers door naar agendaproviders zoals Calendly of Google calendar",
348
+ "triageRouting": "Triage-routering",
349
+ "triageRoutingDescription": "Stuur gebruikers door naar gespecialiseerde bots of menselijke ondersteuning op basis van hun behoeften",
350
+ "opticalRead": "Optical Read",
351
+ "opticalReadDescription": "Extraheer gestructureerde data uit een geüploade afbeelding met een visueel capabele LLM",
352
+ "opticalReadProviderGate": "Optical Read vereist een visueel capabele provider. Anthropic en OpenAI worden ondersteund.",
353
+ "modelGate": "Dit model ondersteunt alleen het kennisprotocol. Schakel over naar llama3.3 (Ollama) of een cloudprovider om multi-step flows in te schakelen.",
354
+ "exampleFaq": "FAQ-chatbots",
355
+ "exampleDocumentation": "Documentatie-assistenten",
356
+ "exampleProductSupport": "Productondersteuning",
357
+ "exampleLeadCapture": "Leadgeneratie",
358
+ "exampleOnboarding": "Gebruikersonboarding",
359
+ "exampleSurvey": "Enquêtes",
360
+ "exampleConsultation": "Consultatieboeking",
361
+ "exampleScheduling": "Service-inplanning",
362
+ "exampleMeeting": "Vergadering opzetten",
363
+ "exampleMultiBot": "Multi-bot routering",
364
+ "exampleDelegation": "Intelligente delegatie",
365
+ "exampleCustomerRouting": "Klantroutering",
366
+ "selectAtLeastOne": "Selecteer ten minste één mogelijkheid",
367
+ "capabilitiesSelected": "{count} {count, plural, one {capability} other {capabilities}} geselecteerd",
368
+ "yourCombination": "Jouw combinatie:",
369
+ "combinationFullService": "Full-service bot: beantwoord vragen, verzamel gebruikersinfo en boek afspraken.",
370
+ "combinationQaData": "Q&A + dataverzameling: beantwoord vragen vanuit je kennisbank terwijl je gebruikersinformatie verzamelt.",
371
+ "combinationQaBooking": "Q&A + boeking: beantwoord vragen en help gebruikers afspraken boeken.",
372
+ "combinationIntakeBooking": "Intake + boeking: verzamel gebruikersinformatie en plan afspraken.",
373
+ "preview": {
374
+ "selectProtocolPrompt": "Selecteer mogelijkheden aan de linkerkant om te zien wat je bot kan",
375
+ "selectedCapabilities": "Geselecteerde mogelijkheden",
376
+ "combinedPossibilities": "Gecombineerde mogelijkheden",
377
+ "exampleUseCases": "Voorbeelden van use cases",
378
+ "showExamples": "Voorbeelden tonen",
379
+ "contexts": {
380
+ "contextGeneric": "Generiek",
381
+ "contextMedical": "Medisch",
382
+ "contextLegal": "Juridisch",
383
+ "contextRetail": "Retail",
384
+ "contextRealEstate": "Vastgoed",
385
+ "contextEducation": "Onderwijs",
386
+ "contextHospitality": "Horeca",
387
+ "contextFinance": "Financiën",
388
+ "medical": {
389
+ "medicalKnowledge": "Medische kennisbank",
390
+ "medicalKnowledgeDesc": "Beantwoord patiëntvragen over symptomen, medicijnen, procedures en verzekering",
391
+ "symptomChecker": "Symptoomchecker",
392
+ "drugInfo": "Medicijninformatie",
393
+ "treatmentFAQ": "Behandelings-FAQ",
394
+ "insuranceCoverage": "Verzekeringsdekking",
395
+ "prepInstructions": "Procedurevoorbereiding",
396
+ "medicalForms": "Patiëntintake",
397
+ "medicalFormsDesc": "Verzamel medische geschiedenis, verzekering en toestemming via conversatieformulieren",
398
+ "patientIntake": "Patiëntintake",
399
+ "medicalHistory": "Medische geschiedenis",
400
+ "consentForms": "Toestemmingsformulieren",
401
+ "insuranceVerification": "Verzekeringsverificatie",
402
+ "symptomQuestionnaire": "Symptoomvragenlijst",
403
+ "medicalAppointments": "Afspraakplanning",
404
+ "medicalAppointmentsDesc": "Boek artsenbezoeken, labtesten en follow-ups met agenda-integratie",
405
+ "doctorBooking": "Artsenboeking",
406
+ "labScheduling": "Labplanning",
407
+ "followUpReminders": "Follow-up herinneringen",
408
+ "specialistReferral": "Specialistverwijzing",
409
+ "telehealth": "Telehealth-sessies",
410
+ "medicalTriage": "Klinische triage",
411
+ "medicalTriageDesc": "Beoordeel urgentie en stuur patiënten door naar het juiste zorgniveau",
412
+ "urgencyAssessment": "Urgentiebeoordeling",
413
+ "departmentRouting": "Afdelingsroutering",
414
+ "nurseEscalation": "Verpleegkundige-escalatie",
415
+ "emergencyDetection": "Spoeddetectie",
416
+ "specialistMatch": "Specialist matchen",
417
+ "medicalKnowledgeForm": "Slimme patiëntintake",
418
+ "medicalKnowledgeFormDesc": "Informeer patiënten terwijl je intake-informatie verzamelt",
419
+ "smartIntake": "Slimme intake",
420
+ "guidedSymptoms": "Begeleide symptoomverzameling",
421
+ "educatedConsent": "Geïnformeerde toestemming",
422
+ "preVisitPrep": "Voorbereiding op bezoek",
423
+ "medicalKnowledgeAppt": "Geïnformeerd boeken",
424
+ "medicalKnowledgeApptDesc": "Leg diensten uit en help patiënten de juiste afspraak te boeken",
425
+ "informedBooking": "Geïnformeerd boeken",
426
+ "prepThenSchedule": "Voorbereiden en plannen",
427
+ "serviceExplainer": "Diensttoelichting",
428
+ "waitTimeInfo": "Wachttijdinfo",
429
+ "medicalTriple": "Patiëntreis",
430
+ "medicalTripleDesc": "Volledige intakeflow: informeren, info verzamelen en plannen in één gesprek",
431
+ "fullPatientJourney": "Volledige patiëntreis",
432
+ "newPatientOnboarding": "Onboarding nieuwe patiënt",
433
+ "referralWorkflow": "Verwijzingsworkflow",
434
+ "medicalAll": "Virtuele balie",
435
+ "medicalAllDesc": "Volledige digitale receptie: triage, intake, voorlichting en planning",
436
+ "virtualFrontDesk": "Virtuele balie",
437
+ "completePatientPortal": "Patiëntportaal-assistent",
438
+ "urgentCareBot": "Spoedzorg-bot"
439
+ },
440
+ "legal": {
441
+ "legalKnowledge": "Juridische informatie",
442
+ "legalKnowledgeDesc": "Beantwoord vragen over rechtsgebieden, processen en tariefstructuren",
443
+ "legalFAQ": "Juridische FAQ",
444
+ "caseTypesInfo": "Info over zaaktypen",
445
+ "feeStructure": "Tariefstructuur",
446
+ "processExplainer": "Procestoelichting",
447
+ "jurisdictionInfo": "Jurisdictie-info",
448
+ "legalForms": "Cliëntintake",
449
+ "legalFormsDesc": "Verzamel zaakdetails, documenten en informatie voor belangenconflictcheck",
450
+ "clientIntake": "Cliëntintake",
451
+ "caseDetails": "Zaakdetails",
452
+ "documentCollection": "Documentenverzameling",
453
+ "conflictCheck": "Belangenconflictcheck",
454
+ "retainerInfo": "Voorschotinformatie",
455
+ "legalAppointments": "Consultatieboeking",
456
+ "legalAppointmentsDesc": "Plan consultaties, getuigenverhoren en vergaderingen",
457
+ "consultationBooking": "Consultatieboeking",
458
+ "depositionSchedule": "Getuigenverhoorplanning",
459
+ "courtDateReminders": "Herinneringen zittingsdata",
460
+ "meetingCoordination": "Vergadercoördinatie",
461
+ "legalTriage": "Zaakroutering",
462
+ "legalTriageDesc": "Stuur aanvragen door naar de juiste advocaat of rechtsgebied",
463
+ "caseTypeRouting": "Routering op zaaktype",
464
+ "urgencyAssessment": "Urgentiebeoordeling",
465
+ "attorneyMatch": "Advocaat matchen",
466
+ "departmentRouting": "Afdelingsroutering",
467
+ "legalKnowledgeForm": "Begeleide zaakevaluatie",
468
+ "legalKnowledgeFormDesc": "Leg juridische opties uit terwijl je zaakinformatie verzamelt",
469
+ "guidedIntake": "Begeleide intake",
470
+ "informedConsent": "Geïnformeerde toestemming",
471
+ "caseEvaluation": "Zaakevaluatie",
472
+ "legalAll": "Virtuele paralegal",
473
+ "legalAllDesc": "Volledige cliëntservices: intake, zaakevaluatie, routering en planning",
474
+ "virtualParalegal": "Virtuele paralegal",
475
+ "clientPortal": "Cliëntportaal",
476
+ "caseManagement": "Zaakbeheer"
477
+ },
478
+ "retail": {
479
+ "retailKnowledge": "Productassistent",
480
+ "retailKnowledgeDesc": "Beantwoord vragen over producten, beschikbaarheid, beleid en maten",
481
+ "productInfo": "Productinformatie",
482
+ "stockAvailability": "Voorraadbeschikbaarheid",
483
+ "returnPolicy": "Retourbeleid",
484
+ "shippingFAQ": "Verzending-FAQ",
485
+ "sizeGuide": "Maatgids",
486
+ "retailForms": "Klantenservice",
487
+ "retailFormsDesc": "Behandel orderopzoekingen, retouren en garantieregistraties",
488
+ "orderLookup": "Orderopzoeking",
489
+ "returnRequest": "Retouraanvraag",
490
+ "warrantyRegistration": "Garantieregistratie",
491
+ "feedbackSurvey": "Feedback-enquête",
492
+ "wishlist": "Verlanglijstverzameling",
493
+ "retailAppointments": "Serviceboeking",
494
+ "retailAppointmentsDesc": "Plan personal shopping, afhalingen en in-store diensten",
495
+ "personalShopping": "Personal shopping",
496
+ "storePickup": "Afhalen in winkel",
497
+ "serviceBooking": "Serviceboeking",
498
+ "consultations": "Stylingconsultaties",
499
+ "fittingRoom": "Pashokjereservering",
500
+ "retailTriage": "Klantroutering",
501
+ "retailTriageDesc": "Stuur klanten door naar de juiste afdeling of escaleer problemen",
502
+ "departmentRouting": "Afdelingsroutering",
503
+ "issueEscalation": "Probleemescalatie",
504
+ "vipCustomers": "VIP-klanten",
505
+ "languageRouting": "Taalroutering",
506
+ "retailAll": "Virtuele conciërge",
507
+ "retailAllDesc": "Volledige winkelassistent: producthulp, serviceboeking en ondersteuning",
508
+ "virtualConcierge": "Virtuele conciërge",
509
+ "omniChannelSupport": "Omnichannel-ondersteuning",
510
+ "personalShopperBot": "Personal-shopper-bot"
511
+ },
512
+ "realestate": {
513
+ "realestateKnowledge": "Vastgoedinformatie",
514
+ "realestateKnowledgeDesc": "Beantwoord vragen over aanbod, buurten en het koopproces",
515
+ "listingInfo": "Aanbodinformatie",
516
+ "neighborhoodGuide": "Buurtgids",
517
+ "mortgageFAQ": "Hypotheek-FAQ",
518
+ "buyingProcess": "Koopproces",
519
+ "marketTrends": "Markttrends",
520
+ "realestateForms": "Leadkwalificatie",
521
+ "realestateFormsDesc": "Kwalificeer kopers/verkopers en leg vastgoedvoorkeuren vast",
522
+ "buyerQualification": "Koperkwalificatie",
523
+ "sellerIntake": "Verkoperintake",
524
+ "propertyPreferences": "Vastgoedvoorkeuren",
525
+ "preApprovalInfo": "Pre-approval info",
526
+ "contactCapture": "Contactgegevens vastleggen",
527
+ "realestateAppointments": "Bezichtigingen plannen",
528
+ "realestateAppointmentsDesc": "Boek bezichtigingen, open huizen en makelaarsafspraken",
529
+ "showingSchedule": "Bezichtigingsplanning",
530
+ "openHouseRSVP": "Open huis-RSVP",
531
+ "agentMeeting": "Makelaarsafspraak",
532
+ "virtualTour": "Virtuele tour",
533
+ "inspectionBooking": "Inspectieboeking",
534
+ "realestateTriage": "Makelaar matchen",
535
+ "realestateTriageDesc": "Match leads aan de juiste makelaar op basis van behoeften en locatie",
536
+ "buyerVsSeller": "Koper of verkoper",
537
+ "locationRouting": "Locatieroutering",
538
+ "agentMatch": "Makelaar matchen",
539
+ "propertyTypeSpecialist": "Vastgoedspecialist",
540
+ "realestateAll": "Virtuele makelaar",
541
+ "realestateAllDesc": "Volledige vastgoedassistent: aanbod, kwalificatie en planning",
542
+ "virtualAgent": "Virtuele makelaar",
543
+ "leadQualification": "Leadkwalificatie",
544
+ "propertyMatchmaker": "Vastgoed-matchmaker"
545
+ },
546
+ "education": {
547
+ "educationKnowledge": "Cursus- en programma-info",
548
+ "educationKnowledgeDesc": "Beantwoord vragen over cursussen, toelating, studiefinanciering en campusleven",
549
+ "courseCatalog": "Cursuscatalogus",
550
+ "admissionsFAQ": "Toelatings-FAQ",
551
+ "financialAid": "Studiefinancieringsinfo",
552
+ "campusInfo": "Campusinformatie",
553
+ "programRequirements": "Programmavereisten",
554
+ "educationForms": "Studentaanvragen",
555
+ "educationFormsDesc": "Verzamel inschrijvings-, registratie- en aanvraaginformatie",
556
+ "applicationForm": "Aanvraagformulier",
557
+ "enrollmentInfo": "Inschrijfinfo",
558
+ "transcriptRequest": "Cijferlijstaanvraag",
559
+ "financialAidApp": "Studiefinancieringsaanvraag",
560
+ "courseRegistration": "Cursusregistratie",
561
+ "educationAppointments": "Academische planning",
562
+ "educationAppointmentsDesc": "Boek adviseursafspraken, rondleidingen en bijlessen",
563
+ "advisorMeeting": "Adviseursafspraak",
564
+ "campusTour": "Campusrondleiding",
565
+ "admissionsInterview": "Toelatingsinterview",
566
+ "tutoringSessions": "Bijlessen",
567
+ "officeHours": "Spreekuren",
568
+ "educationTriage": "Studentroutering",
569
+ "educationTriageDesc": "Stuur aanvragen door naar de juiste afdeling of ondersteuningsteam",
570
+ "departmentRouting": "Afdelingsroutering",
571
+ "studentVsProspect": "Student of geïnteresseerde",
572
+ "academicVsAdmin": "Academisch of administratief",
573
+ "urgencyLevel": "Urgentieniveau",
574
+ "educationAll": "Virtuele adviseur",
575
+ "educationAllDesc": "Volledige studentservice: informatie, aanvragen en planning",
576
+ "virtualAdvisor": "Virtuele adviseur",
577
+ "admissionsBot": "Toelatingsbot",
578
+ "studentServicesHub": "Studentservice-hub"
579
+ },
580
+ "hospitality": {
581
+ "hospitalityKnowledge": "Gastinformatie",
582
+ "hospitalityKnowledgeDesc": "Beantwoord vragen over voorzieningen, eten, activiteiten en lokale attracties",
583
+ "amenitiesInfo": "Voorzieningeninfo",
584
+ "localAttractions": "Lokale attracties",
585
+ "diningOptions": "Eetopties",
586
+ "policyFAQ": "Beleids-FAQ",
587
+ "eventInfo": "Evenementinformatie",
588
+ "hospitalityForms": "Gastvoorkeuren",
589
+ "hospitalityFormsDesc": "Leg kamervoorkeuren, dieetwensen en details voor speciale gelegenheden vast vóór aankomst",
590
+ "roomPreferences": "Kamervoorkeuren",
591
+ "dietaryRestrictions": "Dieetbeperkingen",
592
+ "pillowMenu": "Kussen- en beddengoedmenu",
593
+ "arrivalDetails": "Aankomstdetails",
594
+ "specialOccasions": "Speciale gelegenheden",
595
+ "hospitalityAppointments": "Reserveringen boeken",
596
+ "hospitalityAppointmentsDesc": "Boek diner, spa, activiteiten en roomservice",
597
+ "reservationBooking": "Reservering boeken",
598
+ "spaAppointment": "Spa-afspraak",
599
+ "diningReservation": "Dinerreservering",
600
+ "roomService": "Roomservice",
601
+ "activityBooking": "Activiteitenboeking",
602
+ "hospitalityTriage": "Gastroutering",
603
+ "hospitalityTriageDesc": "Stuur verzoeken door naar de juiste afdeling of escaleer dringende zaken",
604
+ "guestVsProspect": "Gast of geïnteresseerde",
605
+ "urgentRequests": "Dringende verzoeken",
606
+ "departmentRouting": "Afdelingsroutering",
607
+ "vipHandling": "VIP-afhandeling",
608
+ "hospitalityAll": "Virtuele conciërge",
609
+ "hospitalityAllDesc": "Volledige gastservice: informatie, reserveringen en ondersteuning",
610
+ "virtualConcierge": "Virtuele conciërge",
611
+ "guestServicesBot": "Gastservice-bot",
612
+ "preArrivalConcierge": "Pre-aankomstconciërge"
613
+ },
614
+ "finance": {
615
+ "financeKnowledge": "Financiële producten",
616
+ "financeKnowledgeDesc": "Beantwoord vragen over rekeningen, leningen, tarieven en KYC-vereisten",
617
+ "productInfo": "Productinformatie",
618
+ "ratesFAQ": "Tarieven & kosten-FAQ",
619
+ "eligibilityGuide": "Toekomstige-eligibilityguide",
620
+ "kycRequirements": "KYC-vereisten",
621
+ "complianceInfo": "Compliance-info",
622
+ "financeForms": "KYC & onboarding",
623
+ "financeFormsDesc": "Verzamel identiteitsdocumenten, verifieer klanten en voltooi de wettelijk verplichte onboarding",
624
+ "kycCollection": "KYC-verzameling",
625
+ "identityVerification": "Identiteitsverificatie",
626
+ "amlScreening": "AML-screening",
627
+ "accountOpening": "Rekening openen",
628
+ "riskProfiling": "Risicoprofilering",
629
+ "financeAppointments": "Adviseursplanning",
630
+ "financeAppointmentsDesc": "Boek vergaderingen met adviseurs, leningsmedewerkers en specialisten",
631
+ "advisorMeeting": "Adviseursafspraak",
632
+ "loanConsultation": "Leningsconsultatie",
633
+ "accountReview": "Rekeningreview",
634
+ "planningSession": "Planningsessie",
635
+ "branchVisit": "Filiaalbezoek",
636
+ "financeTriage": "Serviceroutering",
637
+ "financeTriageDesc": "Stuur door naar de juiste productspecialist of escaleer complexe gevallen",
638
+ "productRouting": "Productroutering",
639
+ "complianceEscalation": "Compliance-escalatie",
640
+ "advisorMatch": "Adviseur matchen",
641
+ "fraudEscalation": "Fraude-escalatie",
642
+ "financeAll": "Digitale onboarding",
643
+ "financeAllDesc": "Volledige digitale onboarding: KYC-verificatie, productmatching en adviseursplanning",
644
+ "digitalOnboarding": "Digitale onboarding",
645
+ "kycBot": "KYC-bot",
646
+ "wealthAdvisorAssistant": "Vermogensadviseur-assistent"
647
+ }
648
+ },
649
+ "knowledge": {
650
+ "title": "Kennisbank",
651
+ "description": "Beantwoord vragen op basis van je geüploade documenten met RAG-aangedreven retrieval",
652
+ "example1": "Product-FAQ-chatbot",
653
+ "example2": "Documentatie-assistent",
654
+ "example3": "Intern kennisportaal"
655
+ },
656
+ "formGathering": {
657
+ "title": "Formulierverzameling",
658
+ "description": "Verzamel gebruikersinformatie geleidelijk via natuurlijk gesprek",
659
+ "example1": "Leadgeneratie-formulieren",
660
+ "example2": "Klantonboarding",
661
+ "example3": "Enquête- & feedbackverzameling"
662
+ },
663
+ "appointments": {
664
+ "title": "Afspraken boeken",
665
+ "description": "Laat gebruikers vergaderingen boeken via agenda-integraties",
666
+ "example1": "Boeking salesconsultatie",
667
+ "example2": "Service-afspraakplanning",
668
+ "example3": "Demo- & vergaderverzoeken"
669
+ },
670
+ "triage": {
671
+ "title": "Triage-routering",
672
+ "description": "Stuur gebruikers door naar gespecialiseerde bots of menselijke ondersteuning op basis van hun behoeften",
673
+ "example1": "Afdelingsroutering",
674
+ "example2": "Escalatie naar menselijke medewerkers",
675
+ "example3": "Multi-bot-orkestratie"
676
+ },
677
+ "singles": {
678
+ "singleKnowledge": "Kennisassistent",
679
+ "singleKnowledgeDesc": "Beantwoord vragen op basis van je geüploade documenten met intelligente RAG-aangedreven retrieval",
680
+ "scenarioFAQ": "FAQ-chatbot",
681
+ "scenarioProductInfo": "Productinformatie",
682
+ "scenarioDocumentation": "Documentatieportaal",
683
+ "scenarioInternalKB": "Interne kennisbank",
684
+ "scenarioPolicyLookup": "Beleidsopzoeking",
685
+ "singleFormGathering": "Dataverzamelaar",
686
+ "singleFormGatheringDesc": "Verzamel gestructureerde informatie geleidelijk via natuurlijk gesprek",
687
+ "scenarioLeadCapture": "Leadgeneratie",
688
+ "scenarioSurvey": "Enquêteverzameling",
689
+ "scenarioContactForm": "Contactformulieren",
690
+ "scenarioFeedback": "Feedbackverzameling",
691
+ "scenarioRegistration": "Evenementregistratie",
692
+ "singleAppointments": "Boekingsassistent",
693
+ "singleAppointmentsDesc": "Help gebruikers vergaderingen plannen via agenda-integraties zoals Calendly of Cal.com",
694
+ "scenarioBookMeeting": "Vergadering boeken",
695
+ "scenarioScheduleDemo": "Demoplanning",
696
+ "scenarioConsultation": "Consultatieboeking",
697
+ "scenarioServiceAppt": "Service-afspraken",
698
+ "scenarioOfficeHours": "Spreekuren",
699
+ "singleTriage": "Slimme router",
700
+ "singleTriageDesc": "Stuur gebruikers door naar de juiste bestemming op basis van intentie, urgentie of onderwerp",
701
+ "scenarioRouteToAgent": "Routering naar medewerker",
702
+ "scenarioDepartmentRouting": "Afdelingsroutering",
703
+ "scenarioEscalation": "Escalatieafhandeling",
704
+ "scenarioLanguageRouting": "Taalgebaseerde routering",
705
+ "scenarioVIPRouting": "Prioriteits-/VIP-routering",
706
+ "singleOpticalRead": "Visuele extractor",
707
+ "singleOpticalReadDesc": "Haal gestructureerde velden uit een geüploade afbeelding — het model leest, de gebruiker controleert en verzendt",
708
+ "scenarioIdScan": "ID-documentscan",
709
+ "scenarioInsuranceCard": "Verzekeringskaart vastleggen",
710
+ "scenarioReceiptExtract": "Bonextractie",
711
+ "scenarioBusinessCard": "Visitekaartjelezer",
712
+ "scenarioPrescriptionLabel": "Receptlabel"
713
+ },
714
+ "synergies": {
715
+ "synergyKnowledgeForm": "Geïnformeerde leadgeneratie",
716
+ "synergyKnowledgeFormDesc": "Beantwoord productvragen om vertrouwen op te bouwen, leg vervolgens geïnteresseerde leads vast met contextuele formulieren",
717
+ "scenarioQualifyThenCapture": "Kwalificeren dan vastleggen",
718
+ "scenarioAnswerThenCollect": "Beantwoorden dan verzamelen",
719
+ "scenarioContextualForms": "Contextuele formulieren",
720
+ "scenarioEducateThenConvert": "Informeren dan converteren",
721
+ "scenarioSupportToLead": "Support → Lead",
722
+ "synergyKnowledgeAppointments": "Adviserend boeken",
723
+ "synergyKnowledgeAppointmentsDesc": "Informeer gebruikers over diensten/producten en laat ze boeken wanneer ze er klaar voor zijn",
724
+ "scenarioInformThenBook": "Informeren dan boeken",
725
+ "scenarioSmartScheduling": "Slim plannen",
726
+ "scenarioPreQualifyBooking": "Boekingen voorkwalificeren",
727
+ "scenarioServiceExplainer": "Diensttoelichting → boeken",
728
+ "scenarioPricingToDemo": "Prijs-FAQ → demo",
729
+ "synergyKnowledgeTriage": "Intelligente escalatie",
730
+ "synergyKnowledgeTriageDesc": "Self-service-antwoorden voor veelvoorkomende vragen, naadloze overdracht voor complexe zaken",
731
+ "scenarioAnswerOrEscalate": "Beantwoorden of escaleren",
732
+ "scenarioSmartRouting": "Slim routeren",
733
+ "scenarioTieredSupport": "Gelaagde ondersteuning",
734
+ "scenarioDeflectOrRoute": "Afleiden of routeren",
735
+ "scenarioL1Automation": "L1-automatisering",
736
+ "synergyKnowledgeOpticalRead": "Scannen & uitleggen",
737
+ "synergyKnowledgeOpticalReadDesc": "Extraheer data uit een geüploade afbeelding en beantwoord vervolgvragen op basis van je kennisbank",
738
+ "scenarioScanThenAsk": "Scannen dan vragen",
739
+ "scenarioDocumentExplainer": "Documenttoelichting",
740
+ "scenarioCardToPolicy": "Kaart → beleidsopzoeking",
741
+ "scenarioPrescriptionExplainer": "Recepttoelichting",
742
+ "scenarioReceiptToReturns": "Bon → retouren-FAQ",
743
+ "synergyFormAppointments": "Intake naar boeking",
744
+ "synergyFormAppointmentsDesc": "Verzamel kwalificerende informatie, bied vervolgens gepersonaliseerde afspraakslots",
745
+ "scenarioIntakeSchedule": "Intake dan plannen",
746
+ "scenarioBookAndCapture": "Boeken en vastleggen",
747
+ "scenarioQualifyBook": "Kwalificeren dan boeken",
748
+ "scenarioPreVisitForm": "Pre-bezoek-formulier → boeken",
749
+ "scenarioNeedsAssessment": "Behoeftebepaling → plannen",
750
+ "synergyFormTriage": "Slimme leadroutering",
751
+ "synergyFormTriageDesc": "Verzamel gebruikersgegevens, route vervolgens naar het juiste teamlid of de juiste afdeling",
752
+ "scenarioCollectThenRoute": "Verzamelen dan routeren",
753
+ "scenarioFormBasedRouting": "Formuliergebaseerde routering",
754
+ "scenarioLeadDistribution": "Leaddistributie",
755
+ "scenarioSkillBasedRouting": "Vaardigheidsgebaseerde routering",
756
+ "scenarioTerritoryAssignment": "Gebiedstoewijzing",
757
+ "synergyAppointmentsTriage": "Specialistboeking",
758
+ "synergyAppointmentsTriageDesc": "Identificeer de juiste specialist voor de behoeften van de gebruiker, boek vervolgens direct",
759
+ "scenarioRouteToCalendar": "Routeren naar agenda",
760
+ "scenarioSpecialistBooking": "Specialistboeking",
761
+ "scenarioSmartDelegation": "Slimme delegatie",
762
+ "scenarioExpertMatch": "Expert matchen",
763
+ "scenarioAvailabilityRouting": "Beschikbaarheidsgebaseerde routering",
764
+ "synergyTriple1": "Volledige sales-funnel",
765
+ "synergyTriple1Desc": "Complete salestraject: informeer prospects, leg leads vast en boek gekwalificeerde demo's",
766
+ "scenarioFullSalesFlow": "Complete salesflow",
767
+ "scenarioCompleteOnboarding": "Complete onboarding",
768
+ "scenarioNurtureToClose": "Nurturen tot afsluiten",
769
+ "scenarioInboundSales": "Inbound-salesautomatisering",
770
+ "synergyTriple2": "Support-hub",
771
+ "synergyTriple2Desc": "Self-service-kennisbank, ticketaanmaak en intelligente escalatie naar medewerkers",
772
+ "scenarioSupportEscalation": "Support-escalatie",
773
+ "scenarioIntelligentTicketing": "Intelligente ticketing",
774
+ "scenarioHelpDeskAuto": "Helpdesk-automatisering",
775
+ "scenarioIssueCapture": "Probleem vastleggen → routeren",
776
+ "synergyTriple3": "Consultatieflow",
777
+ "synergyTriple3Desc": "Beantwoord vragen, match met de juiste expert en maak directe agenda-boeking mogelijk",
778
+ "scenarioMultiSpecialistBooking": "Multi-specialistboeking",
779
+ "scenarioSmartConsultation": "Slimme consultatie",
780
+ "scenarioAdvisoryFlow": "Adviesserviceflow",
781
+ "scenarioExpertConnect": "Expert connect",
782
+ "synergyTriple4": "Complete intake",
783
+ "synergyTriple4Desc": "Gestructureerde intakeformulieren, slimme routering naar teams en geautomatiseerde planning",
784
+ "scenarioIntakeRouteBook": "Intake → routeren → boeken",
785
+ "scenarioCompleteLeadFlow": "Complete leadflow",
786
+ "scenarioPatientIntake": "Patiëntintakeflow",
787
+ "scenarioClientOnboarding": "Cliëntonboarding",
788
+ "synergyAll": "Enterprise-assistent",
789
+ "synergyAllDesc": "Volledig uitgeruste conciërge: vragen beantwoorden, data verzamelen, intelligent routeren en afspraken boeken",
790
+ "scenarioEnterpriseBot": "Enterprise-assistent",
791
+ "scenarioFullServiceAssistant": "Full-service bot",
792
+ "scenarioDigitalConcierge": "Digitale conciërge",
793
+ "scenarioVirtualReceptionist": "Virtuele receptionist",
794
+ "scenarioUnifiedSupport": "Geünificeerde support-hub"
795
+ }
796
+ }
797
+ },
798
+ "modular": {
799
+ "addCalendarProvider": "Agendaprovider toevoegen",
800
+ "addUrlDestination": "URL-bestemming toevoegen",
801
+ "redirectToBot": "Doorsturen naar bot",
802
+ "addRoutingDestination": "Routeringsbestemming toevoegen",
803
+ "selectedBot": "Geselecteerde bot",
804
+ "displayName": "Weergavenaam",
805
+ "displayNamePlaceholder": "bijv. Salesondersteuning, Technische hulp",
806
+ "description": "Beschrijving",
807
+ "descriptionPlaceholder": "Beschrijf wanneer gebruikers hierheen geleid moeten worden...",
808
+ "url": "URL",
809
+ "urlPlaceholder": "https://example.com/support",
810
+ "paradigm": "Paradigma",
811
+ "protocols": "Protocollen",
812
+ "set": "Ingesteld",
813
+ "notGenerated": "Niet gegenereerd",
814
+ "calendars": "Agenda's",
815
+ "configured": "{count} geconfigureerd",
816
+ "triageRoutes": "Triageroutes",
817
+ "opticalReadFields": "Optical Read-velden",
818
+ "required": "Verplicht",
819
+ "displayNameRequired": "Weergavenaam is verplicht",
820
+ "descriptionRequired": "Beschrijving is verplicht",
821
+ "urlRequired": "URL is verplicht",
822
+ "urlInvalid": "Voer een geldige URL in",
823
+ "addOpticalReadField": "Extractieveld toevoegen",
824
+ "editOpticalReadField": "Extractieveld bewerken",
825
+ "updateOpticalReadField": "Extractieveld bijwerken"
826
+ },
827
+ "tabs": {
828
+ "desktop": "Desktop",
829
+ "documents": "Documenten",
830
+ "fieldsDisplay": "Veldweergave",
831
+ "flow": "Flow",
832
+ "jsonView": "JSON-weergave",
833
+ "fields": "Velden",
834
+ "preview": "Voorbeeld"
835
+ },
836
+ "identity": {
837
+ "chatDisplayName": "Weergavenaam chatvenster",
838
+ "chatDisplayNameHelper": "Naam getoond in de header van de chatinterface",
839
+ "personaObjective": "Persona & doel",
840
+ "personaObjectivePlaceholder": "Beschrijf het doel, de persoonlijkheid en aangepaste instructies van je bot",
841
+ "personaObjectiveHelper": "Bepaal hoe je bot zich moet gedragen, waar deze mee moet helpen en specifieke richtlijnen.",
842
+ "welcomeMessage": "Welkomstbericht",
843
+ "welcomeMessagePlaceholder": "Hallo! Hoe kan ik je vandaag helpen?",
844
+ "welcomeMessageHelper": "Het eerste bericht dat gebruikers zien wanneer ze een gesprek starten.",
845
+ "suggestedPrompts": "Voorgestelde prompts (optioneel)",
846
+ "suggestedPromptsHelper": "Bied quick-start-prompts aan om gebruikers te helpen gesprekken te beginnen",
847
+ "inputPlaceholder": "Invoerplaceholder",
848
+ "inputPlaceholderHelper": "Placeholdertekst in het berichtinvoerveld",
849
+ "inputPlaceholderDefault": "Typ je bericht...",
850
+ "promptPlaceholder": "Waarmee kun je me helpen?",
851
+ "chatDisplayNamePlaceholder": "Bot",
852
+ "promptItemLabel": "Prompt"
853
+ },
854
+ "resources": {
855
+ "botName": "Stel unieke botnaam in",
856
+ "botNameHelper": "Dit wordt gebruikt als je unieke resource-identifier. Max 50 tekens.",
857
+ "botNamePlaceholder": "Mijn geweldige bot",
858
+ "aboutBotNames": "Over botnamen",
859
+ "botNameInfo": "Resourcenamen zijn doorzoekbaar op het dashboard. Gebruik betekenisvolle beschrijvingen of implementeer je eigen systeem.",
860
+ "botNameWarning": "Naam kan niet worden gewijzigd na deployment.",
861
+ "provider": "Provider",
862
+ "selectProvider": "Selecteer een provider",
863
+ "model": "Model",
864
+ "selectModel": "Selecteer een model",
865
+ "apiKey": "API-sleutel",
866
+ "apiKeyEnter": "Voer je API-sleutel in",
867
+ "apiKeySelectProviderFirst": "Selecteer eerst een provider",
868
+ "apiKeySavedPlaceholder": "•••••••• (opgeslagen sleutel wordt gebruikt)",
869
+ "apiKeyExistingPlaceholder": "•••••••• (bestaande sleutel — laat leeg om te behouden)",
870
+ "apiKeyUsingSaved": "Opgeslagen API-sleutel wordt gebruikt:",
871
+ "apiKeyExistingConfigured": "Bestaande API-sleutel geconfigureerd — wordt hergebruikt tenzij je een nieuwe invoert",
872
+ "apiKeyIsSet": "API-sleutel is ingesteld",
873
+ "apiKeyClear": "Wissen",
874
+ "apiKeyAbout": "Over API-sleutels",
875
+ "apiKeyTooltip": "Je API-sleutel wordt versleuteld en veilig opgeslagen. Deze wordt gebruikt om de antwoorden van je chatbot aan te drijven. Je kunt je opgeslagen API-sleutels beheren in de instellingen.",
876
+ "apiKeyEncryptedHelper": "Je API-sleutel wordt versleuteld en veilig opgeslagen",
877
+ "apiKeyLoadingSaved": "Opgeslagen sleutels laden...",
878
+ "apiKeyOrUseSaved": "Of gebruik een opgeslagen API-sleutel:",
879
+ "ollamaNoCredsNeeded": "Ollama draait op je eigen endpoint — geen API-sleutel nodig.",
880
+ "ollamaHost": "Ollama host-URL",
881
+ "ollamaHostHelper": "Het endpoint dat je bot zal aanspreken. Laat leeg om standaard http://localhost:11434 te gebruiken. Als je bot in Docker draait en Ollama op de host draait, gebruik dan http://host.docker.internal:11434 (Mac/Windows) of het LAN-IP van je host (Linux). Cloud-deployments hebben een publiek bereikbaar Ollama-endpoint nodig. Vereist Ollama ≥ 0.5.0 voor envelope-validity-garanties — oudere daemons werken, maar vallen terug op best-effort JSON-parsing.",
882
+ "ollamaHostSavedPlaceholder": "Opgeslagen host wordt gebruikt — wis om een nieuwe URL te typen",
883
+ "ollamaHostUsingSaved": "Opgeslagen Ollama-host wordt gebruikt:",
884
+ "ollamaHostOrUseSaved": "Of gebruik een opgeslagen Ollama-host:",
885
+ "awsCredentialsUsing": "Opgeslagen AWS-credentials worden gebruikt:",
886
+ "awsCredentialsExisting": "Bestaande AWS-credentials geconfigureerd — worden hergebruikt tenzij je hieronder nieuwe invoert",
887
+ "awsUseIamRole": "Gebruik IAM-rol (aanbevolen voor EKS/EC2)",
888
+ "awsUseIamRoleHelper": "Gebruikt de instance/pod-IAM-rol in plaats van expliciete credentials",
889
+ "awsAccessKeyId": "AWS Access Key ID",
890
+ "awsAccessKeyIdPlaceholder": "AKIAIOSFODNN7EXAMPLE",
891
+ "awsSecretAccessKey": "AWS Secret Access Key",
892
+ "awsSecretAccessKeyPlaceholder": "wJalrXUtnFEMI/K7MDENG/bPxRfiCYEXAMPLEKEY",
893
+ "bedrockRegion": "Bedrock-regio",
894
+ "bedrockRegionOption": "{name} ({geoPrefix} cross-region)",
895
+ "bedrockCrossRegion": "Cross-region inferentie routeert verzoeken naar beschikbare capaciteit in de {regionName}-regio",
896
+ "regionUS": "VS",
897
+ "regionEU": "EU",
898
+ "regionAPAC": "APAC",
899
+ "awsUsingIamRoleStatus": "IAM-rol wordt gebruikt",
900
+ "awsCredentialsConfigured": "AWS-credentials geconfigureerd",
901
+ "awsLoadingCredentials": "Opgeslagen credentials laden...",
902
+ "awsOrUseSaved": "Of gebruik opgeslagen AWS-credentials:"
903
+ },
904
+ "knowledge": {
905
+ "loadingDocuments": "Documenten laden...",
906
+ "noDocumentsInSpace": "Nog geen documenten in deze botruimte.",
907
+ "selectFromBotSpace": "Selecteer uit botruimte-bestanden",
908
+ "selected": "Geselecteerd",
909
+ "select": "Selecteren",
910
+ "skipRag": "RAG overslaan",
911
+ "skipRagHelper": "Doelprompt wordt de enige kennisbron"
912
+ },
913
+ "infoGathering": {
914
+ "formRegion": "Formulierregio",
915
+ "formRegionHelper": "Stelt validatiepatronen, veldformaten en labels in voor je doelregio",
916
+ "describeInfo": "Beschrijf de informatie die je wilt verzamelen",
917
+ "describeInfoPlaceholder": "Ik wil de naam, e-mail en bedrijfsnaam van de gebruiker verzamelen...",
918
+ "describeInfoHelperEdit": "Voeg een beschrijving toe en regenereer, of bewerk de JSON direct in het tabblad JSON-weergave",
919
+ "describeInfoHelper": "Beschrijf de formuliervelden in gewone tekst",
920
+ "aiFormGeneration": "AI-aangedreven formuliergeneratie",
921
+ "regenerateDescription": "Regenereer formulierstructuur op basis van je nieuwe beschrijving",
922
+ "generateDescription": "Genereer een gestructureerd formulier op basis van je beschrijving",
923
+ "errorNoDescription": "Beschrijf de informatie die je wilt verzamelen",
924
+ "errorNoApiKey": "API-sleutel ontbreekt. Ga terug naar stap 1 en voer je API-sleutel in.",
925
+ "formSubmissionOptions": "Opties voor formulierinzending",
926
+ "sendToControlPlane": "Verzenden naar control plane",
927
+ "sendToControlPlaneHelper": "Sla voltooide formulierinzendingen op in je dashboard voor weergave en export",
928
+ "webhookUrl": "Externe webhook-URL (optioneel)",
929
+ "webhookUrlPlaceholder": "https://your-webhook-url.com/endpoint",
930
+ "webhookUrlHelper": "Verzend formulierdata ook naar een externe webhook (bijv. Zapier, Make, eigen endpoint)",
931
+ "afterSubmitMessage": "Chatbericht na verzending",
932
+ "afterSubmitPlaceholder": "Bedankt! Laten we beginnen...",
933
+ "afterSubmitHelper": "Bericht getoond aan gebruikers nadat ze het formulier hebben verzonden",
934
+ "termsAndConditions": "Algemene voorwaarden",
935
+ "termsPlaceholder": "Voer hier je algemene voorwaarden in. Ondersteunt markdown-opmaak...",
936
+ "termsHelper": "Indien ingevuld, verschijnt een verplicht selectievakje als laatste formulierveld. Laat leeg om over te slaan.",
937
+ "termsInfo": "Gebruikers kunnen klikken op de link \"Algemene voorwaarden\" om de volledige tekst in een pop-up te bekijken voordat ze accepteren.",
938
+ "jsonViewTip": "Tip: schakel over naar het tabblad \"JSON-weergave\" rechts om de gegenereerde formulierstructuur te bewerken."
939
+ },
940
+ "triage": {
941
+ "addRoute": "Chatbotroute toevoegen",
942
+ "deleteRoute": "Route verwijderen",
943
+ "deleteDestination": "Bestemming verwijderen",
944
+ "selectedBotUrl": "Geselecteerde bot-URL",
945
+ "editBotDestination": "Botbestemming bewerken",
946
+ "editUrlDestination": "URL-bestemming bewerken",
947
+ "selectBot": "Bot selecteren",
948
+ "loadingBots": "Bots laden...",
949
+ "noBotsAvailable": "Geen bots beschikbaar. Maak eerst een bot aan.",
950
+ "descriptionHelper": "Gebruikt voor RAG-matching om te bepalen wanneer gebruikers hierheen geleid moeten worden",
951
+ "updateDestination": "Bestemming bijwerken"
952
+ },
953
+ "opticalRead": {
954
+ "addField": "Extractieveld toevoegen",
955
+ "deleteField": "Veld verwijderen",
956
+ "label": "Label",
957
+ "labelPlaceholder": "Geboortedatum",
958
+ "labelRequired": "Label is verplicht",
959
+ "idName": "ID-naam",
960
+ "idNamePlaceholder": "dob",
961
+ "idNameHelper": "snake_case-sleutel gebruikt in extractedFields",
962
+ "idNameRequired": "ID-naam is verplicht",
963
+ "idNameInvalid": "Gebruik alleen kleine letters, cijfers en underscores",
964
+ "idNameDuplicate": "ID-naam moet uniek zijn",
965
+ "hint": "Hint",
966
+ "hintPlaceholder": "DD/MM/JJJJ, voorkant rijbewijs",
967
+ "hintHelper": "Optioneel: prime locatie of formaat. De hint is de load-bearing tuning primitive.",
968
+ "noFieldsYet": "Voeg ten minste één extractieveld toe om Optical Read in te schakelen.",
969
+ "providerNotSupported": "Optical Read vereist een visueel capabele provider. Anthropic en OpenAI worden ondersteund.",
970
+ "intro": "Benoem de slots die je wilt laten extraheren. Het model lost ze op tegen zijn eigen visuele prior — de optionele hint primet locatie of formaat.",
971
+ "showUploadOnStart": "Toon uploadknop als starterprompt",
972
+ "showUploadOnStartHelper": "Toont een uploadkaart naast de eerste-berichtsuggesties van de bot. Slaat de conversatie-warm-up over — de gebruiker kan meteen uploaden.",
973
+ "afterSubmitMessage": "Chatbericht na verzending (optioneel)",
974
+ "afterSubmitMessagePlaceholder": "Bedankt! We hebben je gegevens ontvangen.",
975
+ "afterSubmitMessageHelper": "Botantwoord weergegeven in de chat nadat de gebruiker de geëxtraheerde velden heeft verzonden. Laat leeg om over te slaan."
976
+ },
977
+ "appointments": {
978
+ "addAppointment": "Afspraaktype toevoegen",
979
+ "deleteAppointment": "Afspraak verwijderen",
980
+ "editCalendarProvider": "Agendaprovider bewerken",
981
+ "updateCalendarProvider": "Agendaprovider bijwerken",
982
+ "calendarId": "Agenda-ID",
983
+ "calendarIdPlaceholder": "bijv. dr-smith-algemeen",
984
+ "calendarIdHelper": "Unieke identifier geretourneerd als calendarId in de respons",
985
+ "calendarIdRequired": "Agenda-ID is verplicht",
986
+ "calendarIdExists": "Deze agenda-ID bestaat al",
987
+ "providerName": "Providernaam",
988
+ "providerNameRequired": "Providernaam is verplicht",
989
+ "providerNameHelper": "Agendaprovider-service",
990
+ "popupUrl": "Pop-up-URL",
991
+ "popupUrlPlaceholder": "https://calendly.com/dr-smith",
992
+ "popupUrlHelper": "URL gestart wanneer gebruiker op de agendaknop klikt",
993
+ "popupUrlRequired": "Pop-up-URL is verplicht",
994
+ "popupUrlInvalid": "Voer een geldige URL in",
995
+ "descriptionPlaceholder": "Beschrijf wanneer gebruikers met deze agendaprovider zouden moeten boeken...",
996
+ "descriptionRequired": "Beschrijving is verplicht",
997
+ "descriptionHelper": "Gebruikt voor RAG-matching om te bepalen welke agenda getoond moet worden"
998
+ },
999
+ "deployment": {
1000
+ "inProgress": "Deployment bezig...",
1001
+ "testDeployment": "Test-deployment",
1002
+ "currentDeployment": "Huidige deployment",
1003
+ "testBotLive": "Je test-bot is live op deze URL:",
1004
+ "botLive": "Je bot is live op deze URL:",
1005
+ "testSuccess": "Test-deployment succesvol!",
1006
+ "testSuccessMessage": "Je test-bot is live en draait. Je kunt hem testen in het voorbeeldpaneel rechts.",
1007
+ "productionSuccess": "Productie-deployment succesvol!",
1008
+ "productionSuccessMessage": "Je bot is nu live en klaar voor productiegebruik.",
1009
+ "deployToProduction": "Deployen naar productie",
1010
+ "viewDeployments": "Bots bekijken",
1011
+ "previewChanges": "Wijzigingen bekijken (test)",
1012
+ "deployToTest": "Deployen naar test",
1013
+ "updateProduction": "Productiebot bijwerken",
1014
+ "editMode": "Bewerkmodus",
1015
+ "editModeMessage": "Deployen werkt de bestaande bot bij met je wijzigingen. De bot-URL blijft hetzelfde.",
1016
+ "configSummary": "Configuratiesamenvatting",
1017
+ "botName": "Botnaam:",
1018
+ "provider": "Provider:",
1019
+ "model": "Model:",
1020
+ "documents": "Documenten:",
1021
+ "formCollection": "Formulierverzameling:",
1022
+ "uploaded": "geüpload",
1023
+ "enabled": "Ingeschakeld",
1024
+ "embeddings": "Embeddings",
1025
+ "embeddingsChunks": "{count} chunks",
1026
+ "editConfiguration": "Configuratie bewerken",
1027
+ "aboutDeployments": "Over deployments",
1028
+ "testDeploymentInfo": "Test-deployment: maakt een persistente URL aan voor testen.",
1029
+ "productionDeploymentInfo": "Productie-deployment: maakt je live bot aan die publiek toegankelijk is.",
1030
+ "deploymentRegion": "Deploymentregio",
1031
+ "useOrgDefault": "Gebruik organisatiestandaard ({region})",
1032
+ "regionHelp": "Selecteer de AWS-regio waar je bot wordt gedeployed. Dit beïnvloedt latency en data-residency.",
1033
+ "none": "Geen",
1034
+ "saving": "Opslaan…",
1035
+ "saveChanges": "Wijzigingen opslaan",
1036
+ "saveConfiguration": "Configuratie opslaan",
1037
+ "saveFailed": "Opslaan mislukt",
1038
+ "saveErrorFallback": "Configuratie opslaan mislukt",
1039
+ "buildFailed": "Build mislukt",
1040
+ "buildErrorFallback": "Artefact bouwen mislukt",
1041
+ "building": "Bouwen…",
1042
+ "buildArtifact": "Artefact bouwen",
1043
+ "configurationSaved": "Configuratie opgeslagen",
1044
+ "configurationSavedDesc": "Opgeslagen als <mono>{name}</mono>. Bouw de uitvoerbare ZIP wanneer je klaar bent.",
1045
+ "artifactReadyCached": "Artefact klaar (gecached)",
1046
+ "artifactBuilt": "Artefact gebouwd",
1047
+ "artifactReadyDesc": "Je botartefact <mono>{name}</mono> staat klaar om te downloaden.",
1048
+ "downloadArtifact": "Artefact downloaden",
1049
+ "downloadArtifactWithDocs": "Downloaden met docs",
1050
+ "previewHelp": "Probeer je bot live in het paneel rechts. Wanneer de antwoorden goed voelen, sla op en download dan de configuratie. Bouw het uitvoerbare artefact wanneer je klaar bent."
1051
+ },
1052
+ "previews": {
1053
+ "identity": {
1054
+ "fallbackBotName": "Bot",
1055
+ "fallbackPlaceholder": "Typ je bericht...",
1056
+ "fallbackFirstMessage": "Hallo! Hoe kan ik je vandaag helpen?",
1057
+ "minimize": "Minimaliseren",
1058
+ "minimizeChat": "Chat minimaliseren",
1059
+ "botMessage": "Botbericht",
1060
+ "suggestedPrompts": "Voorgestelde prompts",
1061
+ "chatMessage": "Chatbericht",
1062
+ "typeYourMessageAria": "Typ je bericht",
1063
+ "sendMessage": "Bericht verzenden"
1064
+ },
1065
+ "appointments": {
1066
+ "fallbackBotName": "Afsprakenbot",
1067
+ "noProviders": "Nog geen agendaproviders geconfigureerd",
1068
+ "noProvidersHint": "Klik op \"Agendaprovider toevoegen\" om te beginnen",
1069
+ "userQuery": "Gebruikersvraag",
1070
+ "calendarIconAlt": "Agenda-icoon"
1071
+ },
1072
+ "triage": {
1073
+ "fallbackBotName": "Triagebot",
1074
+ "noRoutes": "Nog geen routeringsbestemmingen geconfigureerd",
1075
+ "noRoutesHint": "Klik op \"Routeringsbestemming toevoegen\" om te beginnen",
1076
+ "user": "Gebruiker",
1077
+ "evaluatesAndRoutes": "Evalueert & routeert"
1078
+ },
1079
+ "opticalRead": {
1080
+ "noFields": "Nog geen extractievelden geconfigureerd",
1081
+ "noFieldsHint": "Klik op \"Extractieveld toevoegen\" om te beginnen",
1082
+ "clientPreviewLabel": "Hoe gebruikers het zullen zien",
1083
+ "editButton": "Bewerken",
1084
+ "sendButton": "Verzenden",
1085
+ "previewNote": "Invoervelden worden uitgeschakeld weergegeven totdat extractie plaatsvindt. Gebruikers tikken op Bewerken om te corrigeren, Verzenden om in te dienen."
1086
+ },
1087
+ "knowledge": {
1088
+ "unlinkTitle": "Ontkoppelen van deze bot (bestand blijft in botruimte)",
1089
+ "deleteTitle": "Document permanent verwijderen",
1090
+ "deleteConfirm": "Weet je zeker dat je \"{name}\" wilt verwijderen? Dit verwijdert het bestand permanent en kan niet ongedaan worden gemaakt.",
1091
+ "deleteError": "Bestand verwijderen mislukt",
1092
+ "uploadedDocuments": "Geüploade documenten",
1093
+ "noUploadedDocs": "Geen geüploade documenten",
1094
+ "uploadDocsLeft": "Upload documenten aan de linkerkant",
1095
+ "linkedFromBotSpace": "Gekoppeld vanuit botruimte",
1096
+ "noLinkedDocs": "Geen gekoppelde documenten",
1097
+ "selectSharedFilesHint": "Selecteer gedeelde bestanden uit de botruimte",
1098
+ "linkedTooltip": "Geüploade documenten worden standaard onderdeel van deze botruimte",
1099
+ "linkedFooter": "Gekoppelde documenten blijven in de botruimte wanneer ze worden losgekoppeld van deze bot.",
1100
+ "ragInfo": "Deze documenten worden verwerkt en gebruikt om context te bieden voor de antwoorden van je bot via RAG (Retrieval-Augmented Generation).",
1101
+ "fileCount": "{count} {count, plural, one {file} other {files}}",
1102
+ "untitled": "Naamloos",
1103
+ "unknown": "Onbekend",
1104
+ "fileFallback": "BESTAND",
1105
+ "embedding": {
1106
+ "title": "Vector-embeddings",
1107
+ "ready": "Klaar",
1108
+ "notGenerated": "Niet gegenereerd",
1109
+ "chunks": "Chunks",
1110
+ "model": "Model",
1111
+ "sourceDocuments": "Brondocumenten",
1112
+ "generated": "Gegenereerd",
1113
+ "embeddedFiles": "Embedded bestanden",
1114
+ "technicalDetails": "Technische details",
1115
+ "noEmbeddingsYet": "Nog geen embeddings",
1116
+ "uploadFirst": "Upload eerst documenten in het tabblad Documenten.",
1117
+ "clickToGenerate": "Klik hieronder om je documenten lokaal te chunken en embedden.",
1118
+ "generating": "Genereren…",
1119
+ "embeddingDocs": "Documenten embedden…",
1120
+ "regenerate": "Embeddings regenereren",
1121
+ "generate": "Vector-embeddings genereren",
1122
+ "errorNoDocuments": "Upload eerst ten minste één document",
1123
+ "errorGenerationFailed": "Embeddings genereren mislukt",
1124
+ "doneStatus": "Klaar! {count} chunks embedded met {model}.",
1125
+ "regenWarning": "Als je de documentset wijzigt, regenereer dan om het artefact synchroon te houden.",
1126
+ "vectorModeInfo": "In vectormodus embedt de bot queries in-process met het gebundelde multilingual-e5-small ONNX-model en draait cosine similarity lokaal. Geen factory-afhankelijkheid tijdens runtime."
1127
+ }
1128
+ },
1129
+ "form": {
1130
+ "validate": "Valideren",
1131
+ "validateInput": "Invoer valideren",
1132
+ "selectOption": "Selecteer een optie...",
1133
+ "noStructure": "Geen formulierstructuur gegenereerd",
1134
+ "noStructureHint": "Genereer een formulier om het voorbeeld te zien",
1135
+ "editJsonTitle": "Formulierstructuur bewerken (JSON)",
1136
+ "openLargerView": "Openen in grotere weergave",
1137
+ "expand": "Uitvouwen",
1138
+ "generatedJsonLabel": "Gegenereerde formulierstructuur (JSON)",
1139
+ "validJson": "Geldige JSON",
1140
+ "invalidJson": "Ongeldige JSON",
1141
+ "jsonParseError": "JSON-parsefout:",
1142
+ "editJsonHelper": "Bewerk deze JSON om de formulierstructuur aan te passen. Wijzigingen worden weerspiegeld in het tabblad Veldweergave.",
1143
+ "branches": "Vertakkingen",
1144
+ "requiredBadge": "Verplicht",
1145
+ "piiBadge": "PII"
1146
+ },
1147
+ "bot": {
1148
+ "missingConfig": "Voeg een provider, model en API-sleutel toe in stap 1 om de voorbeeldbot te starten.",
1149
+ "livePreview": "Live voorbeeld",
1150
+ "resetPreview": "Voorbeeld resetten",
1151
+ "iframeTitle": "Botvoorbeeld",
1152
+ "skippedInPreview": "(overgeslagen in voorbeeld)",
1153
+ "webhookSideEffect": "Webhook zou POST'en naar {url}",
1154
+ "webhookNoUrl": "(geen URL)",
1155
+ "submitFormSideEffect": "Formulier zou worden verzonden naar control plane",
1156
+ "genericSideEffect": "Bijwerking overgeslagen in voorbeeld"
1157
+ }
1158
+ },
1159
+ "botSummary": {
1160
+ "title": "Botsamenvatting",
1161
+ "whyFillThis": "Waarom dit invullen?",
1162
+ "tooltipLine1": "De botsamenvatting helpt andere bots in je netwerk te begrijpen wat deze bot doet en welke kennis hij bevat.",
1163
+ "tooltipLine2": "Dit maakt slimmere routering, triage en multi-bot-orkestratie mogelijk.",
1164
+ "description": "Beschrijf de rol van deze bot in je netwerk.",
1165
+ "notSystemPrompt": "Geen systeemprompt",
1166
+ "placeholder": "Beschrijf wat deze bot doet en welke kennis hij heeft. Bijv.: 'Behandelt facturatievragen met toegang tot prijsdocumenten en FAQs.'",
1167
+ "characters": "tekens",
1168
+ "optionalBadge": "Optioneel - Deploy om deze samenvatting op te slaan en te gebruiken in je netwerk."
1169
+ }
1170
+ },
1171
+ "settings": {
1172
+ "title": "Instellingen",
1173
+ "subtitle": "Beheer je accountinstellingen en voorkeuren",
1174
+ "tabs": {
1175
+ "apiKeys": "API-sleutels",
1176
+ "account": "Account",
1177
+ "servicePlan": "Serviceplan",
1178
+ "languages": "Talen",
1179
+ "botSpaces": "Botruimtes",
1180
+ "builderConfig": "Builder-config",
1181
+ "region": "Regio",
1182
+ "auditLogs": "Auditlogs",
1183
+ "admin": "Beheerder"
1184
+ },
1185
+ "languages": {
1186
+ "title": "Taalvoorkeuren",
1187
+ "description": "Kies je voorkeurstaal voor de interface",
1188
+ "preferredLanguage": "Voorkeurstaal",
1189
+ "languageHelper": "Deze instelling wordt toegepast op al je sessies",
1190
+ "saveLanguage": "Taal opslaan",
1191
+ "saveSuccess": "Taalvoorkeur succesvol opgeslagen",
1192
+ "saveError": "Taalvoorkeur opslaan mislukt",
1193
+ "aboutTitle": "Over taalinstellingen",
1194
+ "aboutItem1": "Je taalvoorkeur wordt opgeslagen in je account",
1195
+ "aboutItem2": "Wijzigingen worden van kracht na opslaan",
1196
+ "aboutItem3": "Sommige inhoud is mogelijk nog niet vertaald",
1197
+ "locales": {
1198
+ "en": "English",
1199
+ "es": "Spanish (Español)",
1200
+ "fr": "French (Français)",
1201
+ "de": "German (Deutsch)",
1202
+ "pt": "Portuguese (Português)",
1203
+ "ja": "Japanese (日本語)",
1204
+ "zh": "Chinese (中文)",
1205
+ "ko": "Korean (한국어)",
1206
+ "uk": "Ukrainian (Українська)",
1207
+ "ar": "Arabic (العربية)",
1208
+ "nl": "Dutch (Nederlands)",
1209
+ "sw": "Swahili (Kiswahili)"
1210
+ }
1211
+ },
1212
+ "region": {
1213
+ "title": "Deploymentregio",
1214
+ "description": "Configureer de standaard AWS-regio voor botdeployments",
1215
+ "currentRegion": "Huidige standaardregio",
1216
+ "selectRegion": "Standaardregio selecteren",
1217
+ "regionHelp": "Nieuwe deployments gebruiken standaard deze regio. Gebruikers kunnen deze instelling per deployment overschrijven.",
1218
+ "saveSuccess": "Standaardregio succesvol bijgewerkt",
1219
+ "unsavedChanges": "Je hebt niet-opgeslagen wijzigingen",
1220
+ "infoTitle": "Over regio-instellingen",
1221
+ "infoDescription": "De deploymentregio bepaalt waar de infrastructuur van je bot draait. Door een regio dichter bij je gebruikers te kiezen, verbeter je de reactietijden. Individuele deployments kunnen deze standaardinstelling overschrijven."
1222
+ },
1223
+ "account": {
1224
+ "title": "Accountinformatie",
1225
+ "emailAddress": "E-mailadres",
1226
+ "userId": "Gebruikers-ID",
1227
+ "logout": "Uitloggen",
1228
+ "loggingOut": "Uitloggen...",
1229
+ "logoutConfirm": "Weet je zeker dat je wilt uitloggen?",
1230
+ "logoutNote": "Je wordt uitgelogd uit je account",
1231
+ "dangerZone": "Gevarenzone",
1232
+ "deleteAccount": "Account verwijderen",
1233
+ "deleteAdminWarning": "Verwijder permanent je account en alle bijbehorende data inclusief bots, botruimtes en contributor-accounts die alleen verbonden zijn met je organisatie. Deze actie kan niet ongedaan worden gemaakt.",
1234
+ "deleteUserWarning": "Verwijder permanent je account en al je persoonlijke data inclusief bots, documenten en API-sleutels. Je botruimte-lidmaatschappen worden verwijderd. Deze actie kan niet ongedaan worden gemaakt."
1235
+ },
1236
+ "servicePlan": {
1237
+ "title": "Serviceplan",
1238
+ "description": "Bekijk je huidige plan, gebruik en beschikbare functies",
1239
+ "currentPlan": "Je huidige abonnementsplan",
1240
+ "usage": "Huidig gebruik",
1241
+ "deployedBots": "Gedeployde bots",
1242
+ "botSpaces": "Botruimtes",
1243
+ "users": "Gebruikers",
1244
+ "includedFeatures": "Inbegrepen functies",
1245
+ "allPlans": "Beschikbare plannen",
1246
+ "current": "Huidig",
1247
+ "bots": "bots",
1248
+ "spaces": "ruimtes",
1249
+ "usersLabel": "gebruikers",
1250
+ "organization": "Organisatie",
1251
+ "needMore": "Meer nodig?",
1252
+ "contactUs": "Neem contact met ons op om upgrade van je plan of aangepaste enterprise-oplossingen te bespreken."
1253
+ },
1254
+ "apiKeys": {
1255
+ "title": "API-sleutels",
1256
+ "description": "Bewaar je LLM-provider-API-sleutels voor eenvoudig hergebruik tussen deployments",
1257
+ "addKey": "+ API-sleutel toevoegen",
1258
+ "addNewKey": "Nieuwe API-sleutel toevoegen",
1259
+ "name": "Naam",
1260
+ "namePlaceholder": "bijv. Mijn OpenAI-sleutel",
1261
+ "provider": "Provider",
1262
+ "apiKey": "API-sleutel",
1263
+ "apiKeyPlaceholder": "Voer je API-sleutel in",
1264
+ "saving": "Opslaan...",
1265
+ "saveKey": "API-sleutel opslaan",
1266
+ "loading": "API-sleutels laden...",
1267
+ "noKeys": "Nog geen API-sleutels opgeslagen",
1268
+ "noKeysHint": "Voeg je eerste API-sleutel toe om te beginnen",
1269
+ "added": "Toegevoegd {date}",
1270
+ "deleteConfirm": "Weet je zeker dat je deze API-sleutel wilt verwijderen?",
1271
+ "saveSuccess": "API-sleutel succesvol opgeslagen",
1272
+ "deleteSuccess": "API-sleutel succesvol verwijderd",
1273
+ "loadError": "API-sleutels laden mislukt",
1274
+ "saveError": "API-sleutel opslaan mislukt",
1275
+ "deleteError": "API-sleutel verwijderen mislukt",
1276
+ "nameAndKeyRequired": "Naam en API-sleutel zijn verplicht",
1277
+ "awsRegion": "AWS-regio",
1278
+ "authentication": "Authenticatie",
1279
+ "useIamRole": "Gebruik IAM-rol",
1280
+ "useIamRoleHint": "Gebruikt de IAM-rol die aan de Kubernetes-pod is gekoppeld (aanbevolen voor productie)",
1281
+ "useExplicitCredentials": "Gebruik expliciete credentials",
1282
+ "useExplicitCredentialsHint": "Geef AWS-access key en secret key direct op",
1283
+ "awsAccessKeyId": "AWS Access Key ID",
1284
+ "awsSecretAccessKey": "AWS Secret Access Key",
1285
+ "defaultBotConfig": {
1286
+ "title": "Standaard botconfiguratie",
1287
+ "description": "Selecteer een API-sleutel en model om standaard te gebruiken bij het aanmaken van nieuwe bots met de builder.",
1288
+ "selectKey": "Standaard API-sleutel",
1289
+ "selectModel": "Standaardmodel",
1290
+ "noDefault": "Geen standaard (gebruik auto-selectie)",
1291
+ "selectModelPlaceholder": "Selecteer een model",
1292
+ "selectKeyFirst": "Selecteer een API-sleutel om beschikbare modellen te zien",
1293
+ "currentSelection": "Huidige standaard",
1294
+ "noModel": "Geen model geselecteerd",
1295
+ "save": "Standaard opslaan"
1296
+ }
1297
+ },
1298
+ "botSpaces": {
1299
+ "title": "Botruimtes",
1300
+ "description": "Organiseer chatbots in ruimtes en beheer contributortoegang",
1301
+ "createSpace": "+ Botruimte aanmaken",
1302
+ "createNewSpace": "Nieuwe botruimte aanmaken",
1303
+ "name": "Naam",
1304
+ "namePlaceholder": "bijv. klantenservice",
1305
+ "nameHint": "Alleen letters, cijfers, underscores en koppeltekens toegestaan",
1306
+ "descriptionLabel": "Beschrijving",
1307
+ "descriptionPlaceholder": "Optionele beschrijving voor deze botruimte",
1308
+ "creating": "Aanmaken...",
1309
+ "create": "Botruimte aanmaken",
1310
+ "loading": "Botruimtes laden...",
1311
+ "noSpaces": "Nog geen botruimtes aangemaakt",
1312
+ "noSpacesHint": "Maak je eerste botruimte aan om je chatbots te organiseren",
1313
+ "botCount": "{count} bots",
1314
+ "created": "Aangemaakt {date}",
1315
+ "invite": "Uitnodigen",
1316
+ "manage": "Beheren",
1317
+ "deleteConfirm": "Weet je zeker dat je deze botruimte wilt verwijderen? Alle bots erin worden permanent verwijderd.",
1318
+ "createSuccess": "Botruimte succesvol aangemaakt",
1319
+ "deleteSuccess": "Botruimte succesvol verwijderd",
1320
+ "loadError": "Botruimtes laden mislukt",
1321
+ "createError": "Botruimte aanmaken mislukt",
1322
+ "deleteError": "Botruimte verwijderen mislukt",
1323
+ "nameRequired": "Naam is verplicht",
1324
+ "nameInvalid": "Naam mag alleen letters, cijfers, underscores en koppeltekens bevatten",
1325
+ "aboutTitle": "Over botruimtes",
1326
+ "aboutItem1": "Met botruimtes kun je gerelateerde chatbots groeperen",
1327
+ "aboutItem2": "Geef contributors lees- of schrijftoegang tot specifieke ruimtes",
1328
+ "aboutItem3": "Beheerders hebben volledige toegang tot alle botruimtes in de organisatie",
1329
+ "invitationSent": "Uitnodiging succesvol verzonden"
1330
+ },
1331
+ "auditLogs": {
1332
+ "title": "Auditlogs",
1333
+ "description": "Bekijk alle uitgevoerde acties in je organisatie",
1334
+ "exportCsv": "Exporteren als CSV",
1335
+ "exportJson": "Exporteren als JSON",
1336
+ "loadError": "Auditlogs laden mislukt",
1337
+ "externalIntegration": "Externe integratie",
1338
+ "webhookDescription": "Verstuur auditlogs naar een externe SIEM- of logservice via webhook.",
1339
+ "webhookUrl": "Webhook-URL",
1340
+ "webhookUrlPlaceholder": "https://your-siem.example.com/webhook",
1341
+ "enableWebhook": "Webhook inschakelen",
1342
+ "hmacEnabled": "HMAC-ondertekening ingeschakeld",
1343
+ "webhookSecretWarning": "Webhook-secret (kopieer nu - wordt niet opnieuw getoond)",
1344
+ "saveSettings": "Instellingen opslaan",
1345
+ "testWebhook": "Webhook testen",
1346
+ "regenerateSecret": "Secret regenereren",
1347
+ "regenerateConfirm": "Het webhook-secret regenereren? Je moet je ontvangende endpoint bijwerken.",
1348
+ "webhookSaved": "Webhook-instellingen opgeslagen",
1349
+ "secretRegenerated": "Nieuw secret gegenereerd",
1350
+ "testSuccess": "Test-webhook succesvol verzonden",
1351
+ "saveError": "Webhook-instellingen opslaan mislukt",
1352
+ "testError": "Webhooktest mislukt",
1353
+ "regenerateError": "Secret regenereren mislukt",
1354
+ "payloadFormat": "Webhook-payload-formaat",
1355
+ "payloadDescription": "Elk audit-event wordt verzonden als POST-verzoek met headers:",
1356
+ "headerEvent": "X-Audit-Event: event_type",
1357
+ "headerTimestamp": "X-Audit-Timestamp: ISO-tijdstempel",
1358
+ "headerSignature": "X-Audit-Signature: sha256=hmac (als secret geconfigureerd)"
1359
+ },
1360
+ "admin": {
1361
+ "title": "Beheerdersdashboard",
1362
+ "description": "Beheer gebruikers en bekijk systeembrede informatie",
1363
+ "allUsers": "Alle gebruikers",
1364
+ "loadingUsers": "Gebruikers laden...",
1365
+ "noUsers": "Geen gebruikers gevonden",
1366
+ "loadError": "Gebruikers laden mislukt",
1367
+ "tableHeaders": {
1368
+ "name": "Naam",
1369
+ "email": "E-mail",
1370
+ "organization": "Organisatie",
1371
+ "role": "Rol",
1372
+ "created": "Aangemaakt"
1373
+ },
1374
+ "you": "Jij",
1375
+ "stats": {
1376
+ "totalUsers": "Totaal aantal gebruikers",
1377
+ "admins": "Beheerders",
1378
+ "contributors": "Contributors"
1379
+ }
1380
+ },
1381
+ "builderConfig": {
1382
+ "title": "Builder-configuratie",
1383
+ "description": "Configureer welk AI-model de botbuilder aandrijft en stel standaardwaarden in voor botcreatie",
1384
+ "builderTitle": "Builder-modeldriver",
1385
+ "builderDescription": "Selecteer welk AI-model de botbuilder-interface aandrijft. Dit model behandelt gesprekken en tool-uitvoering.",
1386
+ "defaultBotTitle": "Standaardmodel voor botcreatie",
1387
+ "defaultBotDescription": "Pre-selecteer deze instellingen bij het aanmaken van nieuwe bots via de builder. Gebruikers kunnen overschrijven tijdens deployment.",
1388
+ "provider": "Provider",
1389
+ "apiKey": "API-sleutel",
1390
+ "model": "Model",
1391
+ "selectProvider": "Selecteer provider...",
1392
+ "selectKey": "Selecteer API-sleutel...",
1393
+ "selectModel": "Selecteer model...",
1394
+ "noKeysForProvider": "Geen API-sleutels opgeslagen voor deze provider. Voeg er een toe in het tabblad API-sleutels.",
1395
+ "useSameAsBuilder": "Gebruik dezelfde instellingen als builder",
1396
+ "saveConfig": "Configuratie opslaan",
1397
+ "saveSuccess": "Builder-configuratie succesvol opgeslagen",
1398
+ "saveError": "Builder-configuratie opslaan mislukt",
1399
+ "aboutTitle": "Over builder-configuratie",
1400
+ "aboutItem1": "Het builder-model behandelt de conversationele botcreatie-interface",
1401
+ "aboutItem2": "Standaard botinstellingen worden vooraf geselecteerd bij deployen via de builder",
1402
+ "aboutItem3": "Tool-use wordt ondersteund door Claude, GPT, Gemini en meer",
1403
+ "displaySettings": {
1404
+ "title": "Weergave-instellingen",
1405
+ "description": "Configureer hoe de Modulo-assistent in de interface verschijnt",
1406
+ "disableAnimation": "Helper-animatie uitschakelen",
1407
+ "disableAnimationHint": "Toont Modulo als statisch icoon in plaats van geanimeerde helper"
1408
+ }
1409
+ },
1410
+ "mojulo": {
1411
+ "title": "Instellingen",
1412
+ "subtitle": "Configureer de API-sleutels die je bots aandrijven en de cloudcredentials waarmee ze worden gedeployed.",
1413
+ "noKeyGate": "De builders hebben een LLM-providersleutel nodig om te draaien. Voeg er een toe in het tabblad LLM-sleutels en kom terug.",
1414
+ "tabs": {
1415
+ "llm": "LLM-sleutels",
1416
+ "provider": "Providersleutels",
1417
+ "language": "Taalinstelling"
1418
+ },
1419
+ "form": {
1420
+ "addKey": "Een sleutel toevoegen",
1421
+ "name": "Weergavenaam",
1422
+ "provider": "Provider",
1423
+ "apiKey": "API-sleutel",
1424
+ "ollamaHost": "Host-URL",
1425
+ "makeDefault": "Maak dit de standaardsleutel",
1426
+ "ollamaNoDefault": "Ollama kan niet de standaard zijn — de chatbouwer heeft een cloudprovider nodig.",
1427
+ "saving": "Opslaan…",
1428
+ "save": "Sleutel opslaan",
1429
+ "saveError": "Opslaan mislukt"
1430
+ },
1431
+ "list": {
1432
+ "title": "Opgeslagen sleutels",
1433
+ "loading": "Laden…",
1434
+ "empty": "Nog geen sleutels.",
1435
+ "defaultBadge": "standaard",
1436
+ "makeDefault": "Maak standaard",
1437
+ "delete": "Verwijderen"
1438
+ },
1439
+ "llm": {
1440
+ "title": "LLM-sleutels",
1441
+ "description": "Drijft de botbuilder aan en wordt in elke bot die je compileert ingebakken.",
1442
+ "defaultName": "Standaard",
1443
+ "placeholder": "sk-…",
1444
+ "bedrockPlaceholder": "{\"region\":\"us-east-1\",\"accessKeyId\":\"…\",\"secretAccessKey\":\"…\"}",
1445
+ "ollamaPlaceholder": "http://localhost:11434",
1446
+ "providers": {
1447
+ "anthropic": "Anthropic",
1448
+ "openai": "OpenAI",
1449
+ "bedrock": "AWS Bedrock (plak JSON-credentials)",
1450
+ "ollama": "Ollama (lokaal — plak host-URL)"
1451
+ }
1452
+ },
1453
+ "provider": {
1454
+ "title": "Providersleutels",
1455
+ "description": "Cloud-host-credentials. Gebruikt wanneer je een bot naar een cloudprovider deployt vanuit de control plane.",
1456
+ "defaultName": "Fly.io",
1457
+ "placeholder": "fo1_…",
1458
+ "providers": {
1459
+ "fly": "Fly.io"
1460
+ }
1461
+ },
1462
+ "language": {
1463
+ "title": "Taalinstelling",
1464
+ "description": "Kies de taal die in de control-plane-interface wordt gebruikt.",
1465
+ "label": "Interfacetaal"
1466
+ }
1467
+ }
1468
+ },
1469
+ "deployments": {
1470
+ "title": "Deployments",
1471
+ "loading": "Deployments laden...",
1472
+ "empty": "Geen deployments in deze botruimte",
1473
+ "columns": {
1474
+ "botName": "Botnaam",
1475
+ "status": "Status",
1476
+ "deployed": "Gedeployed",
1477
+ "by": "Door"
1478
+ },
1479
+ "history": {
1480
+ "title": "Deploymentgeschiedenis",
1481
+ "noHistory": "Nog geen deploymentgeschiedenis",
1482
+ "historyWillAppear": "Geschiedenis verschijnt na de volgende deployment",
1483
+ "event": "Event",
1484
+ "status": "Status",
1485
+ "date": "Datum",
1486
+ "by": "Door",
1487
+ "config": "Config"
1488
+ },
1489
+ "embed": {
1490
+ "title": "Embedscript",
1491
+ "description": "Kopieer dit script om de chatbot op je website in te bedden:"
1492
+ },
1493
+ "confirmDelete": "Weet je zeker dat je \"{name}\" wilt verwijderen? Dit vernietigt de deployment en kan niet ongedaan worden gemaakt."
1494
+ },
1495
+ "cloudDeploy": {
1496
+ "title": "Deployen naar cloud",
1497
+ "backToDashboard": "← Terug naar dashboard",
1498
+ "loading": "Laden…",
1499
+ "botLabel": "Bot:",
1500
+ "protocolsLabel": "protocollen: {protocols}",
1501
+ "statusPills": {
1502
+ "pending": "In afwachting",
1503
+ "deploying": "Deployen",
1504
+ "running": "Actief",
1505
+ "paused": "Gepauzeerd",
1506
+ "failed": "Mislukt",
1507
+ "destroyed": "Vernietigd"
1508
+ },
1509
+ "artifact": {
1510
+ "title": "Laatste artefact",
1511
+ "status": "Status",
1512
+ "configHash": "Config-hash",
1513
+ "lastBuiltHash": "Laatst gebouwde hash",
1514
+ "artifactPath": "Artefactpad",
1515
+ "notBuiltYet": "— (nog niet gebouwd)",
1516
+ "staleWarning": "Configuratie bewerkt sinds laatste build. Clouddeploy herbouwt automatisch, of je kunt nu herbouwen.",
1517
+ "missingWarning": "Nog geen artefact. Clouddeploy bouwt het automatisch, of je kunt nu bouwen om te bekijken.",
1518
+ "buildZip": "ZIP bouwen",
1519
+ "rebuildZip": "ZIP herbouwen",
1520
+ "downloadZip": ".zip downloaden"
1521
+ },
1522
+ "provider": {
1523
+ "title": "Provider",
1524
+ "fly": {
1525
+ "name": "Fly.io",
1526
+ "description": "Single-region machine + persistent volume"
1527
+ }
1528
+ },
1529
+ "fly": {
1530
+ "title": "Fly.io-opties",
1531
+ "region": "Regio",
1532
+ "regionHint": "3-letterige Fly-regiocode (iad, sjc, lhr, nrt, etc.)",
1533
+ "volumeSize": "Volumegrootte (GB)",
1534
+ "volumeHint": "Persistente opslag voor SQLite (1GB is genoeg voor de meeste bots)",
1535
+ "cpuCount": "CPU-aantal",
1536
+ "cpuHint": "shared CPU's",
1537
+ "memory": "Geheugen (MB)",
1538
+ "memoryHint": "1024 MB aanbevolen",
1539
+ "tokenNote": "Gebruikt je <mono>FLY_API_TOKEN</mono> uit de control-plane-env. Jouw account, jouw rekening.",
1540
+ "deploy": "Deploy",
1541
+ "redeploy": "Redeploy",
1542
+ "deploying": "Deployen…"
1543
+ },
1544
+ "status": {
1545
+ "title": "Status",
1546
+ "provider": "Provider",
1547
+ "appName": "App-naam",
1548
+ "url": "URL",
1549
+ "region": "Regio",
1550
+ "lastDeployed": "Laatst gedeployed",
1551
+ "errorPrefix": "fout: {error}",
1552
+ "destroy": "Vernietigen"
1553
+ },
1554
+ "errors": {
1555
+ "deployFailed": "Deploy mislukt ({status})",
1556
+ "destroyFailed": "Vernietigen mislukt ({status})",
1557
+ "buildFailed": "Build mislukt ({status})"
1558
+ },
1559
+ "confirmDestroy": "De cloud-app, machine en volume vernietigen? Gespreksdata op het volume worden permanent verwijderd."
1560
+ },
1561
+ "analytics": {
1562
+ "title": "Analytics",
1563
+ "loading": "Analytics laden...",
1564
+ "loadingConversations": "Gespreksanalytics laden...",
1565
+ "analyzingQuestions": "Gebruikersvragen analyseren...",
1566
+ "failedToLoad": "Deployment laden mislukt",
1567
+ "failedToLoadAnalytics": "Analyticsdata laden mislukt",
1568
+ "chatbotMetrics": "Chatbot-metrics",
1569
+ "conversationAnalytics": "Gespreksanalytics",
1570
+ "topQuestions": "Topvragen & onderwerpen van gebruikers",
1571
+ "metrics": {
1572
+ "age": "Leeftijd",
1573
+ "uptime": "Uptime",
1574
+ "documents": "Documenten",
1575
+ "lastUpdated": "Laatst bijgewerkt",
1576
+ "totalConversations": "Totaal aantal gesprekken",
1577
+ "totalMessages": "Totaal aantal berichten",
1578
+ "formStarts": "Formulierstarts",
1579
+ "formCompletes": "Formuliervoltooiingen",
1580
+ "completionRate": "{rate}% voltooiingspercentage",
1581
+ "avgMessagesPerConv": "Gem. berichten/gesprek"
1582
+ },
1583
+ "badges": {
1584
+ "formCollection": "Formulierverzameling",
1585
+ "live": "Live"
1586
+ },
1587
+ "searchTerms": {
1588
+ "longPhrases": "Lange zinnen",
1589
+ "phrases": "Zinnen",
1590
+ "words": "Woorden",
1591
+ "analyzed": "{count} gebruikersberichten geanalyseerd",
1592
+ "noData": "Nog geen gespreksdata beschikbaar",
1593
+ "noDataHint": "Data verschijnt hier nadat gebruikers met je chatbot interacteren"
1594
+ },
1595
+ "uptime": {
1596
+ "inProgress": "Bezig...",
1597
+ "failed": "Mislukt",
1598
+ "notAvailable": "N.v.t."
1599
+ }
1600
+ },
1601
+ "conversations": {
1602
+ "title": "Gesprekken",
1603
+ "totalConversations": "{count} totaal aantal gesprekken",
1604
+ "total": "{count} totaal",
1605
+ "dashboardLink": "← Dashboard",
1606
+ "backToDashboard": "← Terug naar dashboard",
1607
+ "tabs": {
1608
+ "conversations": "Gesprekken",
1609
+ "storage": "Opslag"
1610
+ },
1611
+ "unreachable": {
1612
+ "title": "Bot onbereikbaar",
1613
+ "message": "De control plane kon deze bot niet bereiken. Hij is mogelijk gestopt, of de URL of API-sleutel kan zijn gewijzigd. Maak opnieuw verbinding vanuit het dashboard om gesprekken te bekijken.",
1614
+ "reconnect": "Opnieuw verbinden"
1615
+ },
1616
+ "search": {
1617
+ "dataSource": "Databron",
1618
+ "conversationId": "Gespreks-ID",
1619
+ "partialId": "Gedeeltelijke ID...",
1620
+ "partialIdShort": "gedeeltelijke id",
1621
+ "from": "Van",
1622
+ "to": "Tot",
1623
+ "search": "Zoeken",
1624
+ "searching": "Zoeken...",
1625
+ "last24h": "Laatste 24u",
1626
+ "last7days": "Laatste 7 dagen",
1627
+ "clear": "Wissen",
1628
+ "resultsFound": "{count} resultaat gevonden",
1629
+ "resultsFoundPlural": "{count} resultaten gevonden",
1630
+ "result": "{count} resultaat",
1631
+ "results": "{count} resultaten",
1632
+ "noMatch": "Geen gesprekken komen overeen met je zoekopdracht",
1633
+ "noMatchShort": "Geen gesprekken komen overeen.",
1634
+ "searchToFind": "Zoek om gesprekken te vinden",
1635
+ "searchByIdOrDate": "Zoek op ID of datum om gesprekken te vinden.",
1636
+ "useIdOrDate": "Gebruik gespreks-ID, datumbereik of beide"
1637
+ },
1638
+ "timeAgo": {
1639
+ "days": "{count}d geleden",
1640
+ "hours": "{count}u geleden",
1641
+ "minutes": "{count}m geleden"
1642
+ },
1643
+ "detail": {
1644
+ "started": "Gestart:",
1645
+ "startedAt": "Gestart {timestamp}",
1646
+ "turns": "{count} beurten",
1647
+ "last": "Laatste:",
1648
+ "lastAt": "Laatste {timestamp}",
1649
+ "turn": "Beurt {number}",
1650
+ "user": "Gebruiker",
1651
+ "assistant": "Assistent",
1652
+ "ragContext": "RAG-context",
1653
+ "ragContextShort": "RAG-context",
1654
+ "verifyChain": "Keten verifiëren",
1655
+ "showMetadata": "Toon bronnen & metadata",
1656
+ "showMetadataShort": "Metadata tonen",
1657
+ "selectConversation": "Selecteer een gesprek om berichten te bekijken",
1658
+ "selectConversationShort": "Selecteer een gesprek om de beurten te bekijken.",
1659
+ "loadingMessages": "Berichten laden...",
1660
+ "loading": "Laden…"
1661
+ },
1662
+ "storage": {
1663
+ "loading": "Opslaginfo laden...",
1664
+ "loadingShort": "Laden…",
1665
+ "volumeCapacity": "Volumecapaciteit",
1666
+ "volumeCapacityShort": "Volumecapaciteit",
1667
+ "used": "{used} gebruikt van {total}",
1668
+ "usedOfTotal": "{used} van {total}",
1669
+ "available": "{amount} beschikbaar",
1670
+ "statsConversations": "Gesprekken",
1671
+ "statsTurns": "Totaal aantal beurten",
1672
+ "statsTurnsShort": "Beurten",
1673
+ "statsDbSize": "Databasegrootte",
1674
+ "statsDbSizeShort": "DB-grootte",
1675
+ "autoExtendPolicy": "Auto-extend-beleid",
1676
+ "autoExtendDescription": "Volume breidt automatisch uit bij {threshold}% capaciteit, waarbij {increment}GB per uitbreiding wordt toegevoegd, tot een maximum van {limit}GB.",
1677
+ "exportTitle": "Gesprekken exporteren",
1678
+ "exportTitleShort": "Exporteren",
1679
+ "exportDescription": "Download alle gesprekken als JSON-bestand.",
1680
+ "exportDescriptionShort": "Download alle gesprekken van deze bot als JSON.",
1681
+ "exportButton": "Alle gesprekken exporteren (JSON)",
1682
+ "exportButtonShort": "JSON exporteren",
1683
+ "exporting": "Exporteren...",
1684
+ "refresh": "Opslaginfo verversen",
1685
+ "retry": "Opnieuw proberen"
1686
+ },
1687
+ "loadMore": "Meer laden",
1688
+ "loadingMore": "Laden…",
1689
+ "errors": {
1690
+ "fetchConversations": "Ophalen gesprekken mislukt",
1691
+ "fetchDetails": "Ophalen gespreksdetails mislukt",
1692
+ "fetchStorage": "Ophalen opslaginfo mislukt",
1693
+ "exportFailed": "Exporteren gesprekken mislukt",
1694
+ "close": "Sluiten"
1695
+ }
1696
+ },
1697
+ "submissions": {
1698
+ "title": "Formulierinzendingen",
1699
+ "description": "Bekijk formulierinzendingen verzameld van {botName}",
1700
+ "total": "({count} totaal)",
1701
+ "dashboardLink": "← Dashboard",
1702
+ "backToDashboard": "← Terug naar dashboard",
1703
+ "unreachable": {
1704
+ "title": "Bot onbereikbaar",
1705
+ "message": "De control plane kon deze bot niet bereiken. Hij is mogelijk gestopt, of de URL of API-sleutel kan zijn gewijzigd. Maak opnieuw verbinding vanuit het dashboard om inzendingen te bekijken.",
1706
+ "reconnect": "Opnieuw verbinden"
1707
+ },
1708
+ "search": {
1709
+ "last24h": "Laatste 24u",
1710
+ "last7days": "Laatste 7 dagen",
1711
+ "last30days": "Laatste 30 dagen",
1712
+ "from": "Van",
1713
+ "to": "Tot",
1714
+ "search": "Zoeken",
1715
+ "searching": "Zoeken...",
1716
+ "export": "Exporteren als CSV"
1717
+ },
1718
+ "list": {
1719
+ "title": "Inzendingen",
1720
+ "shown": "({count} getoond)",
1721
+ "loading": "Laden...",
1722
+ "noSubmissions": "Geen inzendingen gevonden voor deze periode.",
1723
+ "searchToView": "Zoek om inzendingen te bekijken.",
1724
+ "fields": "{count} velden"
1725
+ },
1726
+ "detail": {
1727
+ "title": "Inzendingsdetails",
1728
+ "conversationId": "Gespreks-ID:",
1729
+ "submitted": "Verzonden:",
1730
+ "formData": "Formulierdata",
1731
+ "field": "Veld",
1732
+ "value": "Waarde",
1733
+ "metadata": "Metadata",
1734
+ "selectSubmission": "Selecteer een inzending om details te bekijken"
1735
+ }
1736
+ },
1737
+ "logs": {
1738
+ "title": "Live logs",
1739
+ "refresh": "Logs verversen",
1740
+ "refreshing": "Verversen...",
1741
+ "loading": "Logs laden...",
1742
+ "search": {
1743
+ "label": "Logs zoeken",
1744
+ "placeholder": "Zoek berichten, niveaus, instances..."
1745
+ },
1746
+ "lineCount": {
1747
+ "label": "Aantal te tonen regels",
1748
+ "lines": "{count} regels"
1749
+ },
1750
+ "autoRefresh": {
1751
+ "label": "Auto-verversen",
1752
+ "every10s": "Elke 10 seconden verversen"
1753
+ },
1754
+ "noLogs": "Geen logs beschikbaar",
1755
+ "noMatch": "Geen logs komen overeen met je zoekopdracht",
1756
+ "showing": "{filtered} van {total} logentries getoond",
1757
+ "filteredBy": "(gefilterd op \"{query}\")"
1758
+ },
1759
+ "accessLevels": {
1760
+ "owner": "eigenaar",
1761
+ "admin": "beheerder",
1762
+ "write": "schrijven",
1763
+ "read": "lezen"
1764
+ },
1765
+ "errors": {
1766
+ "generic": "Er is een fout opgetreden. Probeer het opnieuw.",
1767
+ "failedToFetch": "Data ophalen mislukt",
1768
+ "failedToLoad": "Laden mislukt",
1769
+ "failedToSave": "Opslaan mislukt",
1770
+ "failedToDelete": "Deployment verwijderen mislukt",
1771
+ "failedToAssign": "Botruimte toewijzen mislukt",
1772
+ "notFound": "Niet gevonden",
1773
+ "error": "Fout"
1774
+ },
1775
+ "deleteAccount": {
1776
+ "title": "Account verwijderen",
1777
+ "loadingInfo": "Accountinformatie laden...",
1778
+ "permanentWarning": "Deze actie is permanent en kan niet ongedaan worden gemaakt.",
1779
+ "willBeDeleted": "Het volgende wordt permanent verwijderd:",
1780
+ "deployments": "Deployments (bots)",
1781
+ "documents": "Documenten",
1782
+ "apiKeys": "API-sleutels",
1783
+ "botSpaces": "Botruimtes",
1784
+ "contributorsToDelete": "Contributoraccounts die worden verwijderd",
1785
+ "contributorsNote": "Deze contributors zijn alleen lid van de botruimtes van jouw organisatie.",
1786
+ "organization": "Organisatie",
1787
+ "adminDeleteNote": "Als beheerder verwijdert het verwijderen van je account ook alle organisatiedata en contributoraccounts die alleen verbonden zijn met je organisatie.",
1788
+ "userDeleteNote": "Je botruimte-lidmaatschappen worden verwijderd, maar botruimtes en andere gebruikers blijven onaangetast.",
1789
+ "continue": "Doorgaan",
1790
+ "confirmPrompt": "Om verwijdering te bevestigen, typ je e-mailadres:",
1791
+ "confirmEmail": "Bevestig je e-mailadres",
1792
+ "emailPlaceholder": "Typ je e-mail om te bevestigen",
1793
+ "deleting": "Verwijderen...",
1794
+ "deleteMyAccount": "Mijn account verwijderen",
1795
+ "errors": {
1796
+ "loadFailed": "Accountinformatie laden mislukt",
1797
+ "loadError": "Fout bij laden van accountinformatie",
1798
+ "emailMismatch": "Typ je e-mailadres exact om te bevestigen",
1799
+ "deleteFailed": "Account verwijderen mislukt",
1800
+ "deleteError": "Fout bij verwijderen van account"
1801
+ }
1802
+ },
1803
+ "botSpaceInvite": {
1804
+ "title": "Uitnodigen voor {spaceName}",
1805
+ "description": "Verstuur een uitnodiging om mee te werken in deze botruimte. Ze ontvangen een e-mail met een link om deel te nemen.",
1806
+ "emailLabel": "E-mailadres",
1807
+ "emailPlaceholder": "collega@bedrijf.com",
1808
+ "accessLabel": "Toegangsniveau",
1809
+ "accessRead": "Lezen - Kan bots in deze ruimte bekijken",
1810
+ "accessWrite": "Schrijven - Kan bots aanmaken en bewerken",
1811
+ "accessAdmin": "Beheerder - Volledige toegang inclusief anderen uitnodigen",
1812
+ "accessNote": "Uitgenodigde gebruikers nemen deel als contributors aan je organisatie.",
1813
+ "sending": "Versturen...",
1814
+ "sendInvitation": "Uitnodiging versturen",
1815
+ "errors": {
1816
+ "sendFailed": "Uitnodiging versturen mislukt"
1817
+ }
1818
+ },
1819
+ "auditLogTable": {
1820
+ "loading": "Auditlogs laden...",
1821
+ "noLogs": "Geen auditlogs gevonden",
1822
+ "noLogsHint": "Logs verschijnen hier zodra acties worden uitgevoerd",
1823
+ "headers": {
1824
+ "time": "Tijd",
1825
+ "event": "Event",
1826
+ "actor": "Actor",
1827
+ "resource": "Resource",
1828
+ "outcome": "Uitkomst"
1829
+ },
1830
+ "events": {
1831
+ "authLoginSuccess": "Inloggen",
1832
+ "authLoginFailure": "Inloggen mislukt",
1833
+ "authLogout": "Uitloggen",
1834
+ "authSignup": "Registratie",
1835
+ "deploymentCreate": "Deploy aangemaakt",
1836
+ "deploymentRedeploy": "Opnieuw gedeployed",
1837
+ "deploymentDelete": "Deploy verwijderd",
1838
+ "botSpaceCreate": "Ruimte aangemaakt",
1839
+ "botSpaceDelete": "Ruimte verwijderd",
1840
+ "botSpaceMemberAdd": "Lid toegevoegd",
1841
+ "botSpaceMemberRemove": "Lid verwijderd",
1842
+ "documentUpload": "Doc geüpload",
1843
+ "documentDelete": "Doc verwijderd",
1844
+ "apiKeyCreate": "API-sleutel aangemaakt",
1845
+ "apiKeyDelete": "API-sleutel verwijderd",
1846
+ "userInvite": "Gebruiker uitgenodigd",
1847
+ "userInviteAccept": "Uitnodiging geaccepteerd",
1848
+ "auditWebhookUpdate": "Webhook bijgewerkt",
1849
+ "auditLogsExport": "Logs geëxporteerd"
1850
+ },
1851
+ "outcomes": {
1852
+ "success": "succes",
1853
+ "failure": "mislukt",
1854
+ "denied": "geweigerd"
1855
+ },
1856
+ "details": {
1857
+ "timestamp": "Volledige tijdstempel",
1858
+ "requestId": "Request-ID",
1859
+ "ipAddress": "IP-adres",
1860
+ "userAgent": "User-agent",
1861
+ "resource": "Resource",
1862
+ "metadata": "Metadata"
1863
+ },
1864
+ "showing": "{shown} van {total} logs getoond",
1865
+ "loadMore": "Meer laden"
1866
+ },
1867
+ "auditLogFilters": {
1868
+ "eventTypes": {
1869
+ "allEvents": "Alle events",
1870
+ "authentication": "Authenticatie",
1871
+ "deployments": "Deployments",
1872
+ "botSpaces": "Botruimtes",
1873
+ "documents": "Documenten",
1874
+ "apiKeys": "API-sleutels",
1875
+ "usersInvites": "Gebruikers & uitnodigingen",
1876
+ "conversations": "Gesprekken",
1877
+ "settings": "Instellingen",
1878
+ "auditSystem": "Auditsysteem"
1879
+ },
1880
+ "outcomes": {
1881
+ "all": "Alle",
1882
+ "success": "Succes",
1883
+ "failure": "Mislukt",
1884
+ "denied": "Geweigerd"
1885
+ },
1886
+ "dateRange": "Datumbereik",
1887
+ "from": "Van",
1888
+ "to": "Tot",
1889
+ "clear": "Wissen"
1890
+ },
1891
+ "data": {
1892
+ "navLabel": "Data",
1893
+ "title": "Fleetdata",
1894
+ "subtitle": "Bekijk en aggregeer gespreksactiviteit van elke verbonden bot. Gesprekinhoud blijft op de bot — alleen tellingen worden in-process samengevoegd.",
1895
+ "loading": "Laden…",
1896
+ "tabs": {
1897
+ "explorer": "Explorer",
1898
+ "sql": "SQL",
1899
+ "analytics": "Analytics"
1900
+ },
1901
+ "fleet": {
1902
+ "unreachableBanner": "{unreachable} van {total} bots niet bereikbaar — resultaten kunnen onvolledig zijn."
1903
+ },
1904
+ "explorer": {
1905
+ "filters": {
1906
+ "conversationId": "Gespreks-ID bevat",
1907
+ "startDate": "Gestart na",
1908
+ "endDate": "Gestart vóór"
1909
+ },
1910
+ "search": "Zoeken",
1911
+ "searching": "Zoeken…",
1912
+ "clear": "Wissen",
1913
+ "hint": "Voer een fragment van een gespreks-ID of een datumbereik in om een zoekopdracht uit te waaieren over elke verbonden bot.",
1914
+ "pagination": {
1915
+ "showing": "{start} – {end} van {total} getoond",
1916
+ "previous": "Vorige",
1917
+ "next": "Volgende",
1918
+ "truncatedNotice": "Resultaatset beperkt tot de eerste 500 gesprekken in de fleet. Verklein je datumbereik voor oudere resultaten."
1919
+ },
1920
+ "noConversations": "Geen gesprekken die aan je filter voldoen."
1921
+ },
1922
+ "sql": {
1923
+ "placeholder": "SELECT bot_name, conversations_7d FROM bot_health ORDER BY conversations_7d DESC",
1924
+ "runQuery": "Query uitvoeren",
1925
+ "running": "Uitvoeren…",
1926
+ "exportCsv": "Exporteren als CSV",
1927
+ "exportJson": "Exporteren als JSON",
1928
+ "keyboardHint": "Druk op Cmd/Ctrl + Enter om uit te voeren",
1929
+ "rowCount": "{count} rijen",
1930
+ "truncated": "(afgekapt tot 10.000)",
1931
+ "noResults": "Geen rijen",
1932
+ "help": "Startquery's",
1933
+ "starterQueries": {
1934
+ "title": "Startquery's",
1935
+ "hint": "Elke query leest uit de in-memory rollup-tabellen die per verzoek worden samengesteld uit de analytics-endpoints van elke bot. Klik om te laden.",
1936
+ "dailyStats": "Dagelijkse gesprekstats over de hele fleet",
1937
+ "botHealth": "Bot health (laatste 7 dagen)",
1938
+ "protocolDistribution": "Verdeling van protocolgebruik",
1939
+ "mostActiveBots": "Meest actieve bots deze week",
1940
+ "staleBots": "Bots niet gezien in de laatste 24u",
1941
+ "dailyByBot": "Dagelijkse activiteit gekoppeld aan botnamen"
1942
+ }
1943
+ },
1944
+ "schema": {
1945
+ "availableTables": "Schemareferentie",
1946
+ "clickToShow": "(klik om te tonen)",
1947
+ "clickToHide": "(klik om te verbergen)",
1948
+ "note": "Opmerking:",
1949
+ "scopeNote": "Deze tabellen worden bij elke query opgebouwd in procesgeheugen — één rij per bot voor de rollup-tabellen, gevuld door de analytics-endpoints van elke verbonden bot aan te roepen. Ruwe beurtinhoud wordt niet blootgesteld; gebruik daarvoor het tabblad Explorer om in te zoomen op een enkel gesprek."
1950
+ },
1951
+ "analytics": {
1952
+ "loading": "Fleet-rollups laden…",
1953
+ "dateRange": {
1954
+ "last7days": "Laatste 7 dagen",
1955
+ "last14days": "Laatste 14 dagen",
1956
+ "last30days": "Laatste 30 dagen",
1957
+ "last90days": "Laatste 90 dagen"
1958
+ },
1959
+ "summary": {
1960
+ "totalConversations": "Gesprekken",
1961
+ "totalTurns": "Beurten",
1962
+ "avgTurnsPerConversation": "Gem. beurten/gespr.",
1963
+ "activeBots": "Bereikbare bots"
1964
+ },
1965
+ "charts": {
1966
+ "dailyConversations": "Dagelijks beurtvolume",
1967
+ "topBotsByActivity": "Topbots op beurtvolume",
1968
+ "activityHeatmap": "Activiteitsheatmap (laatste 7 dagen)"
1969
+ },
1970
+ "noData": "Geen activiteit in deze periode.",
1971
+ "noActivityData": "Geen activiteit in de laatste 7 dagen.",
1972
+ "convs": "gespr.",
1973
+ "days": {
1974
+ "sun": "Zo",
1975
+ "mon": "Ma",
1976
+ "tue": "Di",
1977
+ "wed": "Wo",
1978
+ "thu": "Do",
1979
+ "fri": "Vr",
1980
+ "sat": "Za"
1981
+ }
1982
+ },
1983
+ "table": {
1984
+ "headers": {
1985
+ "bot": "Bot",
1986
+ "started": "Gestart",
1987
+ "duration": "Duur",
1988
+ "turns": "Beurten",
1989
+ "conversationId": "Gespreks-ID"
1990
+ }
1991
+ }
1992
+ },
1993
+ "documentUploader": {
1994
+ "title": "Documenten uploaden",
1995
+ "description": "Upload documenten die je chatbot zal gebruiken voor RAG (Retrieval-Augmented Generation)",
1996
+ "uploading": "Uploaden...",
1997
+ "chooseFiles": "Bestanden kiezen",
1998
+ "dropFilesHere": "Sleep bestanden hierheen",
1999
+ "dragAndDropHint": "of sleep bestanden hierheen",
2000
+ "fileTypes": "PDF, TXT, MD, DOC, DOCX",
2001
+ "uploadedDocuments": "Geüploade documenten ({count})",
2002
+ "noDocumentsYet": "Nog geen documenten geüpload",
2003
+ "noDocumentsHint": "Klik op \"Bestanden kiezen\" om te beginnen",
2004
+ "skippedFiles": "Sommige bestanden zijn overgeslagen. Alleen PDF-, TXT-, MD-, DOC-, DOCX-bestanden worden ondersteund.",
2005
+ "deleteConfirm": "Weet je zeker dat je dit bestand wilt verwijderen?",
2006
+ "uploadFailed": "Upload mislukt",
2007
+ "uploadFailedFallback": "Uploaden van bestanden mislukt",
2008
+ "deleteFailed": "Verwijderen mislukt",
2009
+ "deleteFailedFallback": "Bestand verwijderen mislukt"
2010
+ },
2011
+ "chatBuilder": {
2012
+ "title": "AI-botbuilder",
2013
+ "subtitle": "Beschrijf de bot die je wilt bouwen en ik maak hem voor je",
2014
+ "loading": "AI-builder laden...",
2015
+ "newChat": "Nieuwe chat",
2016
+ "recentChats": "Recente chats",
2017
+ "noPreviousChats": "Geen eerdere chats",
2018
+ "botPreview": "Botvoorbeeld",
2019
+ "viewDeployedBot": "Bekijk gedeployde bot",
2020
+ "selectWorkspace": "Werkruimte selecteren",
2021
+ "selectWorkspacePrompt": "Selecteer een werkruimte om te beginnen met bouwen",
2022
+ "noWorkspaces": "Geen werkruimtes beschikbaar",
2023
+ "createWorkspaceFirst": "Maak er eerst een aan",
2024
+ "backToDashboard": "Terug naar dashboard",
2025
+ "welcome": {
2026
+ "title": "Bouw een bot met AI",
2027
+ "description": "Beschrijf de bot die je wilt maken, upload relevante documenten en ik help je hem te configureren en deployen. Geen code nodig.",
2028
+ "quickPrompts": {
2029
+ "customerSupport": {
2030
+ "title": "Klantenservice-bot",
2031
+ "description": "Beantwoord productvragen",
2032
+ "prompt": "Ik heb een klantenservice-bot nodig die vragen over ons product kan beantwoorden"
2033
+ },
2034
+ "leadCapture": {
2035
+ "title": "Leadgeneratie-bot",
2036
+ "description": "Verzamel bezoekersinformatie",
2037
+ "prompt": "Maak een leadgeneratie-bot die naam, e-mail en bedrijfsinfo verzamelt"
2038
+ },
2039
+ "faqAssistant": {
2040
+ "title": "FAQ-assistent",
2041
+ "description": "Beantwoord veelgestelde vragen",
2042
+ "prompt": "Help me een FAQ-bot te bouwen op basis van onze documentatie"
2043
+ },
2044
+ "onboarding": {
2045
+ "title": "Onboarding-bot",
2046
+ "description": "Begeleid nieuwe gebruikers",
2047
+ "prompt": "Ik wil een bot maken die nieuwe klanten helpt onboarden"
2048
+ }
2049
+ }
2050
+ },
2051
+ "input": {
2052
+ "placeholder": "Beschrijf de bot die je wilt bouwen...",
2053
+ "defaultPlaceholder": "Typ een bericht...",
2054
+ "dropFilesHere": "Sleep bestanden hierheen...",
2055
+ "dropToAttach": "Sleep bestanden om ze aan je bericht toe te voegen",
2056
+ "hint": "Druk op Enter om te verzenden, Shift+Enter voor nieuwe regel. Sleep bestanden of klik op de paperclip om bij te voegen.",
2057
+ "hintShort": "Druk op Enter om te verzenden, Shift+Enter voor nieuwe regel",
2058
+ "hintWithAttach": "Sleep & drop bestanden of klik op bijvoegen. Druk op Enter om te verzenden.",
2059
+ "attachFiles": "Bestanden bijvoegen",
2060
+ "attachDocuments": "Documenten bijvoegen"
2061
+ },
2062
+ "tools": {
2063
+ "toolsExecuted": "{count} tool uitgevoerd",
2064
+ "toolsExecutedPlural": "{count} tools uitgevoerd",
2065
+ "uploadDocument": "Document uploaden",
2066
+ "generateForm": "Formulier genereren",
2067
+ "deployBot": "Bot deployen",
2068
+ "listDeployments": "Deployments lijsten",
2069
+ "checkDeploymentStatus": "Deploymentstatus controleren",
2070
+ "destroyDeployment": "Deployment vernietigen",
2071
+ "getAnalytics": "Analytics ophalen",
2072
+ "getFormSubmissions": "Formulierinzendingen ophalen",
2073
+ "listWorkspaces": "Werkruimtes lijsten",
2074
+ "listDocuments": "Documenten lijsten",
2075
+ "listApiKeys": "API-sleutels lijsten"
2076
+ },
2077
+ "documentPicker": {
2078
+ "title": "Documenten selecteren",
2079
+ "noDocuments": "Geen documenten in deze werkruimte",
2080
+ "uploadFirst": "Upload eerst documenten om ze voor je bot te gebruiken",
2081
+ "selected": "{count} document geselecteerd",
2082
+ "selectedPlural": "{count} documenten geselecteerd",
2083
+ "useSelected": "Geselecteerde gebruiken"
2084
+ },
2085
+ "errors": {
2086
+ "failedToSend": "Verzenden bericht mislukt",
2087
+ "failedToLoadSession": "Sessie laden mislukt",
2088
+ "failedToLoadDocuments": "Documenten laden mislukt"
2089
+ },
2090
+ "invertedPanel": {
2091
+ "createABot": "Een bot aanmaken",
2092
+ "editBot": "{name} bewerken",
2093
+ "fallbackBotName": "Bot",
2094
+ "private": "Privé",
2095
+ "createTitle": "Wat voor bot kan ik je helpen bouwen?",
2096
+ "createDescription": "Je kunt ook documenten bijvoegen om hem kennis te geven. Upload een bestand of vraag om naar docs in de botruimte te verwijzen.",
2097
+ "buildWithWizard": "Bouwen met wizard (stapsgewijze configuratie)",
2098
+ "editTitle": "{name} wijzigen",
2099
+ "editFallbackName": "je bot",
2100
+ "editDescription": "Vertel me wat je wilt wijzigen. Ik laad je huidige configuratie en help je deze bij te werken.",
2101
+ "editExamples": "Voorbeelden: \"Verander de begroeting\", \"Voeg een nieuw formulierveld toe\", \"Werk de botnaam bij\"",
2102
+ "errorPrefix": "Fout:",
2103
+ "inputPlaceholder": "Beschrijf wat je bot moet doen...",
2104
+ "adjustMessage": "Ik wil de configuratie aanpassen"
2105
+ },
2106
+ "status": {
2107
+ "ready": "Klaar",
2108
+ "processing": "Verwerken",
2109
+ "awaitingConfirmation": "Wachten op bevestiging",
2110
+ "deploying": "Deployen",
2111
+ "deployed": "Gedeployed",
2112
+ "editing": "Bewerken"
2113
+ },
2114
+ "success": {
2115
+ "botBuilt": "Bot gebouwd!",
2116
+ "botSaved": "Bot opgeslagen",
2117
+ "botBuiltMessage": "Je bot <strong>{name}</strong> is gebouwd en klaar om te downloaden.",
2118
+ "botSavedMessage": "Je bot <strong>{name}</strong> is opgeslagen. Bouw hem vanuit je botruimte wanneer je klaar bent.",
2119
+ "liveUrl": "Live-URL",
2120
+ "embedCode": "Embedcode",
2121
+ "downloadArtifact": "Artefact downloaden",
2122
+ "downloadWithDocs": "Downloaden met docs",
2123
+ "openBot": "Bot openen",
2124
+ "viewInBotSpace": "Bekijk in botruimte"
2125
+ }
2126
+ },
2127
+ "login": {
2128
+ "subtitle": "Log in om door te gaan",
2129
+ "username": "Gebruikersnaam",
2130
+ "password": "Wachtwoord",
2131
+ "signIn": "Inloggen",
2132
+ "signingIn": "Bezig met inloggen…",
2133
+ "signOut": "Uitloggen",
2134
+ "invalid": "Ongeldige gebruikersnaam of wachtwoord"
2135
+ }
2136
+ }