@adminiumjs/i18n 0.2.2 → 0.2.3

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 (227) hide show
  1. package/dist/a11y-keys.d.ts +1 -1
  2. package/dist/a11y-keys.d.ts.map +1 -1
  3. package/dist/a11y-keys.js +319 -224
  4. package/dist/a11y-keys.js.map +1 -1
  5. package/dist/create-i18n.d.ts +16 -6
  6. package/dist/create-i18n.d.ts.map +1 -1
  7. package/dist/create-i18n.js +23 -9
  8. package/dist/create-i18n.js.map +1 -1
  9. package/dist/index.d.ts +2 -2
  10. package/dist/index.d.ts.map +1 -1
  11. package/dist/index.js +19 -8
  12. package/dist/index.js.map +1 -1
  13. package/dist/keys.d.ts +6 -4
  14. package/dist/keys.d.ts.map +1 -1
  15. package/dist/keys.js +6 -4
  16. package/dist/keys.js.map +1 -1
  17. package/dist/overrides.d.ts +1 -1
  18. package/dist/overrides.d.ts.map +1 -1
  19. package/dist/resources/ar-eg/common.d.ts +31 -1071
  20. package/dist/resources/ar-eg/common.d.ts.map +1 -1
  21. package/dist/resources/ar-eg/common.js +31 -1071
  22. package/dist/resources/ar-eg/common.js.map +1 -1
  23. package/dist/resources/ar-eg/errors.d.ts +3 -2
  24. package/dist/resources/ar-eg/errors.d.ts.map +1 -1
  25. package/dist/resources/ar-eg/errors.js +3 -2
  26. package/dist/resources/ar-eg/errors.js.map +1 -1
  27. package/dist/resources/ar-eg/generated.d.ts +3 -2
  28. package/dist/resources/ar-eg/generated.d.ts.map +1 -1
  29. package/dist/resources/ar-eg/generated.js +3 -2
  30. package/dist/resources/ar-eg/generated.js.map +1 -1
  31. package/dist/resources/ar-eg/studio.d.ts +1282 -2
  32. package/dist/resources/ar-eg/studio.d.ts.map +1 -1
  33. package/dist/resources/ar-eg/studio.js +1282 -2
  34. package/dist/resources/ar-eg/studio.js.map +1 -1
  35. package/dist/resources/ar-eg/ui.d.ts +51 -2
  36. package/dist/resources/ar-eg/ui.d.ts.map +1 -1
  37. package/dist/resources/ar-eg/ui.js +55 -6
  38. package/dist/resources/ar-eg/ui.js.map +1 -1
  39. package/dist/resources/cs-cz/common.d.ts +31 -1071
  40. package/dist/resources/cs-cz/common.d.ts.map +1 -1
  41. package/dist/resources/cs-cz/common.js +31 -1071
  42. package/dist/resources/cs-cz/common.js.map +1 -1
  43. package/dist/resources/cs-cz/errors.d.ts +3 -2
  44. package/dist/resources/cs-cz/errors.d.ts.map +1 -1
  45. package/dist/resources/cs-cz/errors.js +3 -2
  46. package/dist/resources/cs-cz/errors.js.map +1 -1
  47. package/dist/resources/cs-cz/generated.d.ts +3 -2
  48. package/dist/resources/cs-cz/generated.d.ts.map +1 -1
  49. package/dist/resources/cs-cz/generated.js +3 -2
  50. package/dist/resources/cs-cz/generated.js.map +1 -1
  51. package/dist/resources/cs-cz/studio.d.ts +1282 -2
  52. package/dist/resources/cs-cz/studio.d.ts.map +1 -1
  53. package/dist/resources/cs-cz/studio.js +1282 -2
  54. package/dist/resources/cs-cz/studio.js.map +1 -1
  55. package/dist/resources/cs-cz/ui.d.ts +51 -2
  56. package/dist/resources/cs-cz/ui.d.ts.map +1 -1
  57. package/dist/resources/cs-cz/ui.js +55 -6
  58. package/dist/resources/cs-cz/ui.js.map +1 -1
  59. package/dist/resources/da-dk/common.d.ts +31 -1071
  60. package/dist/resources/da-dk/common.d.ts.map +1 -1
  61. package/dist/resources/da-dk/common.js +31 -1071
  62. package/dist/resources/da-dk/common.js.map +1 -1
  63. package/dist/resources/da-dk/errors.d.ts +3 -2
  64. package/dist/resources/da-dk/errors.d.ts.map +1 -1
  65. package/dist/resources/da-dk/errors.js +3 -2
  66. package/dist/resources/da-dk/errors.js.map +1 -1
  67. package/dist/resources/da-dk/generated.d.ts +3 -2
  68. package/dist/resources/da-dk/generated.d.ts.map +1 -1
  69. package/dist/resources/da-dk/generated.js +3 -2
  70. package/dist/resources/da-dk/generated.js.map +1 -1
  71. package/dist/resources/da-dk/studio.d.ts +1282 -2
  72. package/dist/resources/da-dk/studio.d.ts.map +1 -1
  73. package/dist/resources/da-dk/studio.js +1282 -2
  74. package/dist/resources/da-dk/studio.js.map +1 -1
  75. package/dist/resources/da-dk/ui.d.ts +51 -2
  76. package/dist/resources/da-dk/ui.d.ts.map +1 -1
  77. package/dist/resources/da-dk/ui.js +55 -6
  78. package/dist/resources/da-dk/ui.js.map +1 -1
  79. package/dist/resources/de-de/common.d.ts +31 -1071
  80. package/dist/resources/de-de/common.d.ts.map +1 -1
  81. package/dist/resources/de-de/common.js +31 -1071
  82. package/dist/resources/de-de/common.js.map +1 -1
  83. package/dist/resources/de-de/errors.d.ts +3 -2
  84. package/dist/resources/de-de/errors.d.ts.map +1 -1
  85. package/dist/resources/de-de/errors.js +3 -2
  86. package/dist/resources/de-de/errors.js.map +1 -1
  87. package/dist/resources/de-de/generated.d.ts +3 -2
  88. package/dist/resources/de-de/generated.d.ts.map +1 -1
  89. package/dist/resources/de-de/generated.js +3 -2
  90. package/dist/resources/de-de/generated.js.map +1 -1
  91. package/dist/resources/de-de/studio.d.ts +1282 -2
  92. package/dist/resources/de-de/studio.d.ts.map +1 -1
  93. package/dist/resources/de-de/studio.js +1282 -2
  94. package/dist/resources/de-de/studio.js.map +1 -1
  95. package/dist/resources/de-de/ui.d.ts +51 -2
  96. package/dist/resources/de-de/ui.d.ts.map +1 -1
  97. package/dist/resources/de-de/ui.js +55 -6
  98. package/dist/resources/de-de/ui.js.map +1 -1
  99. package/dist/resources/eager.d.ts +3 -0
  100. package/dist/resources/eager.d.ts.map +1 -0
  101. package/dist/resources/eager.js +25 -0
  102. package/dist/resources/eager.js.map +1 -0
  103. package/dist/resources/en-us/common.d.ts +31 -1071
  104. package/dist/resources/en-us/common.d.ts.map +1 -1
  105. package/dist/resources/en-us/common.js +31 -1071
  106. package/dist/resources/en-us/common.js.map +1 -1
  107. package/dist/resources/en-us/errors.d.ts +3 -2
  108. package/dist/resources/en-us/errors.d.ts.map +1 -1
  109. package/dist/resources/en-us/errors.js +3 -2
  110. package/dist/resources/en-us/errors.js.map +1 -1
  111. package/dist/resources/en-us/generated.d.ts +3 -2
  112. package/dist/resources/en-us/generated.d.ts.map +1 -1
  113. package/dist/resources/en-us/generated.js +3 -2
  114. package/dist/resources/en-us/generated.js.map +1 -1
  115. package/dist/resources/en-us/studio.d.ts +1282 -2
  116. package/dist/resources/en-us/studio.d.ts.map +1 -1
  117. package/dist/resources/en-us/studio.js +1282 -2
  118. package/dist/resources/en-us/studio.js.map +1 -1
  119. package/dist/resources/en-us/ui.d.ts +51 -2
  120. package/dist/resources/en-us/ui.d.ts.map +1 -1
  121. package/dist/resources/en-us/ui.js +55 -6
  122. package/dist/resources/en-us/ui.js.map +1 -1
  123. package/dist/resources/fr-fr/common.d.ts +31 -1071
  124. package/dist/resources/fr-fr/common.d.ts.map +1 -1
  125. package/dist/resources/fr-fr/common.js +31 -1071
  126. package/dist/resources/fr-fr/common.js.map +1 -1
  127. package/dist/resources/fr-fr/errors.d.ts +3 -2
  128. package/dist/resources/fr-fr/errors.d.ts.map +1 -1
  129. package/dist/resources/fr-fr/errors.js +3 -2
  130. package/dist/resources/fr-fr/errors.js.map +1 -1
  131. package/dist/resources/fr-fr/generated.d.ts +3 -2
  132. package/dist/resources/fr-fr/generated.d.ts.map +1 -1
  133. package/dist/resources/fr-fr/generated.js +3 -2
  134. package/dist/resources/fr-fr/generated.js.map +1 -1
  135. package/dist/resources/fr-fr/studio.d.ts +1282 -2
  136. package/dist/resources/fr-fr/studio.d.ts.map +1 -1
  137. package/dist/resources/fr-fr/studio.js +1282 -2
  138. package/dist/resources/fr-fr/studio.js.map +1 -1
  139. package/dist/resources/fr-fr/ui.d.ts +51 -2
  140. package/dist/resources/fr-fr/ui.d.ts.map +1 -1
  141. package/dist/resources/fr-fr/ui.js +55 -6
  142. package/dist/resources/fr-fr/ui.js.map +1 -1
  143. package/dist/resources/index.d.ts +3 -6
  144. package/dist/resources/index.d.ts.map +1 -1
  145. package/dist/resources/index.js +15 -14
  146. package/dist/resources/index.js.map +1 -1
  147. package/dist/resources/lazy.d.ts +19 -9
  148. package/dist/resources/lazy.d.ts.map +1 -1
  149. package/dist/resources/lazy.js +4 -2
  150. package/dist/resources/lazy.js.map +1 -1
  151. package/dist/resources/namespaces.d.ts +43 -0
  152. package/dist/resources/namespaces.d.ts.map +1 -0
  153. package/dist/resources/namespaces.js +37 -0
  154. package/dist/resources/namespaces.js.map +1 -0
  155. package/dist/resources/zh-cn/common.d.ts +31 -1071
  156. package/dist/resources/zh-cn/common.d.ts.map +1 -1
  157. package/dist/resources/zh-cn/common.js +31 -1071
  158. package/dist/resources/zh-cn/common.js.map +1 -1
  159. package/dist/resources/zh-cn/errors.d.ts +3 -2
  160. package/dist/resources/zh-cn/errors.d.ts.map +1 -1
  161. package/dist/resources/zh-cn/errors.js +3 -2
  162. package/dist/resources/zh-cn/errors.js.map +1 -1
  163. package/dist/resources/zh-cn/generated.d.ts +3 -2
  164. package/dist/resources/zh-cn/generated.d.ts.map +1 -1
  165. package/dist/resources/zh-cn/generated.js +3 -2
  166. package/dist/resources/zh-cn/generated.js.map +1 -1
  167. package/dist/resources/zh-cn/studio.d.ts +1282 -2
  168. package/dist/resources/zh-cn/studio.d.ts.map +1 -1
  169. package/dist/resources/zh-cn/studio.js +1282 -2
  170. package/dist/resources/zh-cn/studio.js.map +1 -1
  171. package/dist/resources/zh-cn/ui.d.ts +51 -2
  172. package/dist/resources/zh-cn/ui.d.ts.map +1 -1
  173. package/dist/resources/zh-cn/ui.js +55 -6
  174. package/dist/resources/zh-cn/ui.js.map +1 -1
  175. package/dist/resources/zh-tw/common.d.ts +31 -1071
  176. package/dist/resources/zh-tw/common.d.ts.map +1 -1
  177. package/dist/resources/zh-tw/common.js +31 -1071
  178. package/dist/resources/zh-tw/common.js.map +1 -1
  179. package/dist/resources/zh-tw/errors.d.ts +3 -2
  180. package/dist/resources/zh-tw/errors.d.ts.map +1 -1
  181. package/dist/resources/zh-tw/errors.js +3 -2
  182. package/dist/resources/zh-tw/errors.js.map +1 -1
  183. package/dist/resources/zh-tw/generated.d.ts +3 -2
  184. package/dist/resources/zh-tw/generated.d.ts.map +1 -1
  185. package/dist/resources/zh-tw/generated.js +3 -2
  186. package/dist/resources/zh-tw/generated.js.map +1 -1
  187. package/dist/resources/zh-tw/studio.d.ts +1282 -2
  188. package/dist/resources/zh-tw/studio.d.ts.map +1 -1
  189. package/dist/resources/zh-tw/studio.js +1282 -2
  190. package/dist/resources/zh-tw/studio.js.map +1 -1
  191. package/dist/resources/zh-tw/ui.d.ts +51 -2
  192. package/dist/resources/zh-tw/ui.d.ts.map +1 -1
  193. package/dist/resources/zh-tw/ui.js +55 -6
  194. package/dist/resources/zh-tw/ui.js.map +1 -1
  195. package/dist/review-status.js +7 -7
  196. package/locales/ar-EG/.meta.json +3187 -2267
  197. package/locales/ar-EG/common.json +28 -1069
  198. package/locales/ar-EG/studio.json +1279 -0
  199. package/locales/ar-EG/ui.json +52 -4
  200. package/locales/cs-CZ/.meta.json +3203 -2283
  201. package/locales/cs-CZ/common.json +28 -1069
  202. package/locales/cs-CZ/studio.json +1279 -0
  203. package/locales/cs-CZ/ui.json +52 -4
  204. package/locales/da-DK/.meta.json +3208 -2288
  205. package/locales/da-DK/common.json +28 -1069
  206. package/locales/da-DK/studio.json +1279 -0
  207. package/locales/da-DK/ui.json +52 -4
  208. package/locales/de-DE/.meta.json +3201 -2281
  209. package/locales/de-DE/common.json +28 -1069
  210. package/locales/de-DE/studio.json +1279 -0
  211. package/locales/de-DE/ui.json +52 -4
  212. package/locales/en-US/common.json +28 -1069
  213. package/locales/en-US/studio.json +1279 -0
  214. package/locales/en-US/ui.json +52 -4
  215. package/locales/fr-FR/.meta.json +3205 -2285
  216. package/locales/fr-FR/common.json +28 -1069
  217. package/locales/fr-FR/studio.json +1279 -0
  218. package/locales/fr-FR/ui.json +52 -4
  219. package/locales/zh-CN/.meta.json +3185 -2265
  220. package/locales/zh-CN/common.json +28 -1069
  221. package/locales/zh-CN/studio.json +1279 -0
  222. package/locales/zh-CN/ui.json +52 -4
  223. package/locales/zh-TW/.meta.json +3188 -2268
  224. package/locales/zh-TW/common.json +28 -1069
  225. package/locales/zh-TW/studio.json +1279 -0
  226. package/locales/zh-TW/ui.json +52 -4
  227. package/package.json +1 -1
@@ -2,8 +2,9 @@
2
2
  /**
3
3
  * GENERATED MIRROR of ../../../locales/da-DK/common.json — do not edit by hand.
4
4
  * The JSON file is the canonical hand-authored bundle (10-i18n-theming.md §3.1);
5
- * this TS mirror exists so the runtime bundles en-US resources (and chunk-splits
6
- * the other locales) without JSON import attributes (browser + NodeNext safe).
5
+ * this TS mirror exists so the runtime can bundle a namespace (en-US's eager
6
+ * ones) or chunk-split it (every other locale, and en-US's deferred `studio`)
7
+ * without JSON import attributes (browser + NodeNext safe).
7
8
  * Parity is enforced by src/resources/parity.test.ts. Regenerate with
8
9
  * scripts/gen-resources.mjs.
9
10
  */
@@ -114,6 +115,11 @@ export default {
114
115
  "audit": "Auditlog",
115
116
  "security": "Adgangskode og sessioner"
116
117
  },
118
+ "apps": {
119
+ "frame": {
120
+ "noFrames": "Denne app kræver en browser, der understøtter rammer."
121
+ }
122
+ },
117
123
  "topbar": {
118
124
  "search": "Søg…",
119
125
  "notifications": "Notifikationer",
@@ -125,6 +131,8 @@ export default {
125
131
  "profile": "Profil",
126
132
  "preferences": "Præferencer",
127
133
  "studio": "Studio",
134
+ "dataConnections": "Dataforbindelser",
135
+ "workspaceSettings": "Arbejdsområdeindstillinger",
128
136
  "signOut": "Log ud"
129
137
  },
130
138
  "palette": {
@@ -241,6 +249,11 @@ export default {
241
249
  "body": "Dette arbejdsområde er suspenderet af en administrator. Dine data er bevaret — kontakt ejeren af arbejdsområdet for at få adgang igen.",
242
250
  "primary": "Kontakt ejeren",
243
251
  "secondary": "Gå tilbage"
252
+ },
253
+ "connectionPaused": {
254
+ "title": "Denne forbindelse er sat på pause",
255
+ "body": "En administrator har sat databasen bag denne side på pause, så den indlæser ikke data lige nu. Intet er slettet – det hele er tilbage, så snart forbindelsen genoptages under Studio → Dataforbindelser.",
256
+ "secondary": "Gå tilbage"
244
257
  }
245
258
  },
246
259
  "notFound": {
@@ -320,6 +333,20 @@ export default {
320
333
  "twoFactor": "Tofaktor",
321
334
  "on": "Slået til",
322
335
  "off": "Slået fra",
336
+ "nameRequired": "Angiv dit navn.",
337
+ "emailHelper": "Bruges til at logge ind. Ændring kræver din adgangskode.",
338
+ "confirmPassword": "Nuværende adgangskode",
339
+ "confirmPasswordHelper": "Bekræft, at det er dig, før din login-adresse ændres.",
340
+ "save": "Gem ændringer",
341
+ "saveFailed": "Din profil kunne ikke gemmes",
342
+ "saved": "Profil opdateret",
343
+ "savedBody": "Dine nye oplysninger gælder i hele arbejdsområdet. Hvis du har ændret din e-mail, skal du fremover logge ind med den nye adresse.",
344
+ "accessTitle": "Adgang",
345
+ "accessSubtitle": "Hvad denne konto må, og hvordan den beviser, hvem den er.",
346
+ "rolesHelper": "Roller tildeles af en administrator og kan ikke ændres fra din egen konto.",
347
+ "manageTwoFactor": "Administrer",
348
+ "setUpTwoFactor": "Konfigurer",
349
+ "securityLink": "Adgangskode og sessioner",
323
350
  "preferences": {
324
351
  "title": "Præferencer",
325
352
  "subtitle": "Hvordan Adminium ser ud og læses for dig — på denne og alle andre enheder, du logger ind fra.",
@@ -423,914 +450,6 @@ export default {
423
450
  }
424
451
  }
425
452
  },
426
- "studio": {
427
- "source": {
428
- "engine": {
429
- "label": "Databasemotor",
430
- "postgres": "PostgreSQL",
431
- "mysql": "MySQL / MariaDB",
432
- "sqlite": "SQLite"
433
- },
434
- "format": {
435
- "label": "Skemaformat",
436
- "helper": "Lad automatisk registrering være slået til, medmindre den tager fejl.",
437
- "auto": "Registrér automatisk",
438
- "sql": "SQL DDL / pg_dump",
439
- "prisma": "Prisma-skema",
440
- "drizzle": "Drizzle ORM",
441
- "typeorm": "TypeORM-entiteter",
442
- "sequelize": "Sequelize-modeller",
443
- "rails": "Rails schema.rb",
444
- "django": "Django models.py",
445
- "json": "Adminium JSON"
446
- },
447
- "sqlite": {
448
- "file": "Sti til databasefil",
449
- "helper": "SQLite er en fil, ikke en server — angiv den absolutte sti på den maskine, der kører Adminium."
450
- },
451
- "file": {
452
- "detectedAs": "Registreret: {format}",
453
- "moreWarnings": "+{count} flere advarsler — den fulde liste vises i analysetrinnet.",
454
- "dropTitle": "Slip din skemafil her, eller gennemse",
455
- "dropHint": "SQL DDL / pg_dump, Prisma, Drizzle, TypeORM, Sequelize, Rails schema.rb, Django-modeller, Adminium JSON",
456
- "pitch": "Ingen databaseforbindelse påkrævet — vi fortolker din skemafil og bygger de samme dashboards.",
457
- "parsing": "Læser den uploadede skemafil…",
458
- "tables": "tabeller",
459
- "columns": "kolonner",
460
- "warnings": "advarsler",
461
- "errorTitle": "Kunne ikke fortolke filen",
462
- "parseFailed": "Vi kunne ikke fortolke den fil. Hvis auto-genkendelsen gættede forkert, så vælg formatet eksplicit og prøv igen.",
463
- "unsupported": "Formatet blev ikke genkendt — SQL DDL, Prisma, Drizzle, TypeORM, Sequelize, Rails schema.rb, Django-modeller og Adminium JSON understøttes. Vælg ét eksplicit og prøv igen.",
464
- "requestFailed": "Upload mislykkedes — tjek din forbindelse og prøv igen."
465
- },
466
- "title": "Forbind din database",
467
- "subtitle": "Peg Adminium mod en database, så genererer vi et admin-dashboard ud fra dens skema.",
468
- "name": "Forbindelsesnavn",
469
- "namePlaceholder": "Produktions-Postgres",
470
- "modeLabel": "Kildeinputtilstand",
471
- "mode": {
472
- "dsn": "Forbindelsesstreng",
473
- "fields": "Enkelte felter",
474
- "file": "Skemafil"
475
- },
476
- "dsn": {
477
- "label": "Forbindelsesstreng",
478
- "helper": "postgres://bruger:kodeord@vaert:5432/database — mysql:// og sqlite: virker også.",
479
- "incomplete": "Tilføj vært og database, f.eks. postgres://user@host:5432/db",
480
- "invalidScheme": "Ukendt skema — forventede postgres://, mysql://, mariadb:// eller sqlite:",
481
- "quickFill": "Hurtig udfyldning:"
482
- },
483
- "fields": {
484
- "host": "Vært",
485
- "port": "Port",
486
- "database": "Database",
487
- "user": "Bruger",
488
- "password": "Adgangskode",
489
- "ssl": "SSL-tilstand",
490
- "preview": "Forhåndsvisning af forbindelsesstreng:"
491
- },
492
- "readOnlyRole": {
493
- "title": "Brug en skrivebeskyttet rolle",
494
- "body": "Adminium skriver aldrig til din database — opsætningen bruger kun skema-metadata. Vi anbefaler en dedikeret bruger med rene SELECT-rettigheder; hvor Adminium gemmer sine egne tabeller, beslutter du i metalagringstrinnet."
495
- }
496
- },
497
- "capability": {
498
- "mysqlApproxRows": "MySQL-rækkeantal er estimater fra lagringsmotoren (kan afvige op til ±40 %) — vises med ≈.",
499
- "mysqlFkEnum": "MySQL’s FK-/enum-metadata er svagere: MyISAM-tabeller deklarerer ingen fremmednøgler, enums er kolonnetyper som enum(…), og CHECK-begrænsninger kræver MySQL 8.0.16+ / MariaDB 10.2+.",
500
- "sqliteCheckEnums": "SQLite har ingen indbygget enum-type — enums syntetiseres fra CHECK (col IN (…))-begrænsninger.",
501
- "sqliteNoComments": "SQLite har ingen kolonnekommentarer — brug skema-remap-editoren til at tilføje etiketter.",
502
- "importNoRowCounts": "Skemafiler indeholder ingen rækkeantal — tabellisten viser — i stedet for opdigtede tal.",
503
- "importNoLiveHealth": "Ingen live databaseforbindelse — sundhedstjek og registrering af skemadrift er ikke tilgængelige for denne kilde.",
504
- "rowsUnavailable": "Skemafiler har ingen live database — rækkeantal er ukendte, indtil du forbinder en.",
505
- "rowsRunAnalyze": "Intet estimat endnu — kør ANALYZE på databasen for at få rækkeantal.",
506
- "rowsNoEstimate": "Motoren rapporterede intet estimat for denne tabel.",
507
- "rowsApproximate": "Estimat fra lagringsmotoren — kan afvige op til ±40 % på InnoDB."
508
- },
509
- "test": {
510
- "log": {
511
- "moreWarnings": "+{count} flere parser-advarsler",
512
- "connecting": "Etablerer sikker forbindelse…",
513
- "connected": "Forbundet ({latency} ms) · skrivebeskyttet introspektion",
514
- "connectFailed": "Forbindelsen mislykkedes.",
515
- "readingSchema": "Læser skema: public",
516
- "readingFile": "Læser den uploadede skemafil…",
517
- "parsingFile": "Fortolker {file}…",
518
- "detected": "Registrerede {tables} tabeller · {columns} kolonner",
519
- "found": "Fandt {tables} tabeller · {columns} kolonner",
520
- "mapping": "Kortlægger kolonnetyper → inputwidgets",
521
- "relations": "Registrerer relationer…",
522
- "piiScan": "Scanner efter PII-kolonner…",
523
- "piiDone": "PII-scanning fuldført — {count} kolonner maskeret som standard",
524
- "piiDoneUnknown": "PII-scanning fuldført",
525
- "jobFailed": "Introspektion mislykkedes.",
526
- "networkFailed": "Anmodningen mislykkedes — tjek din forbindelse og prøv igen.",
527
- "ready": "Klar"
528
- },
529
- "title": "Analyserer dit skema",
530
- "subtitle": "Introspekterer tabeller, kolonner og relationer. Det tager et par sekunder.",
531
- "trust": "Vi læser kun dit skema og dine data. Intet ændres.",
532
- "errorTitle": "Forbindelsen mislykkedes",
533
- "retry": "Prøv igen",
534
- "logLabel": "Introspektionslog",
535
- "hint": {
536
- "auth": "Godkendelse mislykkedes — tjek brugernavn og adgangskode i din DSN.",
537
- "hostUnreachable": "Vært utilgængelig — tjek værtsnavn og port, og at databasen accepterer forbindelser fra denne maskine (tilføj vores IP'er til tilladelseslisten).",
538
- "metaPlacement": "Denne kilde kan ikke huse Adminiums metatabeller — fortsæt med en separat metadatabase.",
539
- "permission": "Rollen fik forbindelse, men mangler skema-læserettigheder — giv USAGE på skemaet til din introspektionsrolle.",
540
- "timeout": "Databasen svarede ikke i tide — tjek netværkssti og belastning, og prøv igen.",
541
- "tls": "TLS-forhandling mislykkedes — prøv sslmode=require, eller upload det CA-certifikat din server forventer.",
542
- "unknown": "Forbindelsen mislykkedes — kontrollér DSN'en og prøv igen."
543
- }
544
- },
545
- "tables": {
546
- "importNoCounts": "Skemafiler indeholder ingen rækkeantal — kolonnen viser —, indtil en live database er forbundet.",
547
- "title": "Vælg dine tabeller",
548
- "subtitle": "Vælg hvilke der skal med. Du kan altid ændre det.",
549
- "search": "Filtrér tabeller…",
550
- "listLabel": "Tabeller der kan medtages",
551
- "emptyFilter": "Ingen tabeller matcher dit filter.",
552
- "pii": "PII",
553
- "highVolume": "stor volumen",
554
- "highVolumeNote": "Tabeller med over 100.000 rækker starter fravalgt — driftstabeller hører sjældent hjemme i et dashboard.",
555
- "joinHidden": "{count} join-/systemtabeller er skjult på forhånd — de driver stadig mange-til-mange-relationer."
556
- },
557
- "hub": {
558
- "title": "Dataforbindelser",
559
- "subtitle": "{healthy, number} af {total, plural, one {# forbindelse} other {# forbindelser}} sunde",
560
- "connectNew": "Ny forbindelse",
561
- "stats": {
562
- "connections": "Forbindelser",
563
- "healthy": "Sunde",
564
- "tables": "Inkluderede tabeller",
565
- "pages": "Genererede sider"
566
- },
567
- "status": {
568
- "connected": "Forbundet",
569
- "error": "Fejl",
570
- "unconfigured": "Kladde",
571
- "testing": "Tester…"
572
- },
573
- "card": {
574
- "readOnly": "Skrivebeskyttet",
575
- "tables": "Tabeller",
576
- "pages": "Sider",
577
- "latency": "Latenstid",
578
- "latencyMs": "{latency, number} ms",
579
- "lastIntrospected": "Senest introspiceret",
580
- "never": "Aldrig"
581
- },
582
- "action": {
583
- "test": "Test",
584
- "reintrospect": "Introspicer igen",
585
- "reintrospectFile": "Skemafil-kilder har ingen aktiv database — upload filen igen i stedet.",
586
- "remap": "Ommap skema",
587
- "delete": "Slet"
588
- },
589
- "test": {
590
- "ok": "Forbindelsen er sund · {latency, number} ms",
591
- "failed": "Forbindelsestest mislykkedes"
592
- },
593
- "introspect": {
594
- "noChanges": "Skemaet er uændret — intet nyt snapshot.",
595
- "updated": "Skemaet er introspiceret igen",
596
- "masksProposed": "{count, plural, one {# kolonne} other {# kolonner}} foreslået til maskering — gennemgå i ommapnings-editoren.",
597
- "failed": "Introspektion mislykkedes. Prøv igen."
598
- },
599
- "delete": {
600
- "title": "Slet forbindelse",
601
- "body": "Dette sletter “{name}” og de genererede sider. Selve din database røres aldrig.",
602
- "prompt": "Skriv {name} for at bekræfte",
603
- "confirm": "Slet forbindelse",
604
- "cancel": "Annuller",
605
- "close": "Luk",
606
- "success": "Forbindelsen “{name}” er slettet",
607
- "failed": "Forbindelsen kunne ikke slettes. Prøv igen."
608
- },
609
- "empty": {
610
- "title": "Ingen datakilder endnu",
611
- "body": "Forbind en database, så genererer Adminium dit adminpanel ud fra dens skema.",
612
- "cta": "Forbind en database"
613
- }
614
- },
615
- "settingsHub": {
616
- "title": "Arbejdsområdeindstillinger",
617
- "subtitle": "Identitet, sikkerhed og destruktive handlinger for dette arbejdsområde.",
618
- "save": "Gem ændringer",
619
- "saved": "Arbejdsområdeindstillinger opdateret",
620
- "saveFailed": "Arbejdsområdeindstillingerne kunne ikke gemmes. Prøv igen.",
621
- "superAdminOnlyTitle": "Superadmin påkrævet",
622
- "superAdminOnly": "Kun en superadmin kan ændre arbejdsområdets identitet og sikkerhedsindstillinger.",
623
- "identity": {
624
- "heading": "Arbejdsområdets identitet",
625
- "appName": {
626
- "label": "Applikationsnavn",
627
- "helper": "Vises i sidepanelet, browsertitlen og e-mails.",
628
- "error": "Angiv et navn på højst 60 tegn."
629
- },
630
- "logo": {
631
- "label": "Logo",
632
- "drop": "Slip et billede her",
633
- "helper": "PNG, JPEG, WebP, GIF eller SVG på op til 1 MB. Erstatter det indbyggede mærke overalt.",
634
- "upload": "Upload logo",
635
- "replace": "Erstat logo",
636
- "remove": "Fjern",
637
- "uploaded": "Logo opdateret",
638
- "removed": "Logo fjernet",
639
- "tooLarge": "Billedet er større end 1 MB.",
640
- "badType": "Vælg et PNG-, JPEG-, WebP-, GIF- eller SVG-billede.",
641
- "undo": "Fortryd"
642
- },
643
- "showVersion": {
644
- "label": "Version i sidepanelet",
645
- "helper": "Buildnummeret ved siden af logoet. Slået fra skjuler, hvilken version du kører."
646
- }
647
- },
648
- "security": {
649
- "heading": "Sikkerhed",
650
- "require2fa": {
651
- "label": "Kræv tofaktorgodkendelse",
652
- "desc": "Alle medlemmer skal aktivere 2FA for at logge ind.",
653
- "note": "Vejledende, ikke en spærring: medlemmer uden 2FA sendes til opsætningen og kan ikke slå den fra igen, men deres login blokeres aldrig, og API-nøgler er ikke omfattet."
654
- },
655
- "allowSignup": {
656
- "label": "Tillad selvregistrering",
657
- "desc": "Alle kan oprette en konto — slået fra er arbejdsområdet kun på invitation."
658
- },
659
- "sessionTtl": {
660
- "label": "Sessionslevetid (timer)",
661
- "error": "Mellem {min, number} og {max, number} timer."
662
- },
663
- "passwordMin": {
664
- "label": "Minimal adgangskodelængde",
665
- "error": "Mellem {min, number} og {max, number} tegn."
666
- }
667
- },
668
- "email": {
669
- "heading": "E-mail (SMTP)",
670
- "unconfigured": "Der er ikke opsat nogen mailserver, så Adminium kan ikke sende nulstilling af adgangskode, invitationer eller planlagte rapporter.",
671
- "host": {
672
- "label": "SMTP-vært",
673
- "error": "Kun et værtsnavn eller en IP-adresse — uden skema, port eller loginoplysninger."
674
- },
675
- "port": {
676
- "label": "Port",
677
- "error": "Mellem {min, number} og {max, number}."
678
- },
679
- "user": {
680
- "label": "Brugernavn",
681
- "helper": "Lad feltet stå tomt, hvis relayet ikke kræver login."
682
- },
683
- "pass": {
684
- "label": "Adgangskode",
685
- "helper": "Gemmes krypteret og vises aldrig igen. Lad feltet stå tomt for at beholde den nuværende.",
686
- "error": "Dette brugernavn kræver en adgangskode."
687
- },
688
- "from": {
689
- "label": "Afsenderadresse",
690
- "helper": "Kun adressen, eller et visningsnavn foran den.",
691
- "error": "Indtast en e-mailadresse."
692
- },
693
- "secure": {
694
- "label": "Implicit TLS",
695
- "helper": "Til på port 465. Fra starter i klartekst og skifter med STARTTLS, som port 587 forventer."
696
- },
697
- "remove": "Fjern mailserver",
698
- "review": {
699
- "removed": "Fjernet",
700
- "password": "Erstattet"
701
- }
702
- },
703
- "review": {
704
- "title": "Gem arbejdsområdeindstillinger",
705
- "subtitle": "Gennemgå dine ændringer, før du gemmer.",
706
- "confirm": "Gem ændringer",
707
- "cancel": "Annuller",
708
- "close": "Luk",
709
- "on": "Til",
710
- "off": "Fra",
711
- "shown": "Vist",
712
- "hidden": "Skjult",
713
- "change": "{before} → {after}"
714
- },
715
- "defaultsCard": {
716
- "heading": "Standarder for udseende og sprog",
717
- "body": "Tema, accentfarve, tæthed og sprog for hele arbejdsområdet findes under globale standarder.",
718
- "cta": "Åbn globale standarder"
719
- },
720
- "danger": {
721
- "heading": "Farezone",
722
- "subtitle": "Uigenkaldelige handlinger.",
723
- "empty": "Intet at slette — ingen forbindelser endnu.",
724
- "deleteDesc": "Sletter forbindelsen og de genererede sider. Din database røres ikke. Kan ikke fortrydes.",
725
- "deleteCta": "Slet forbindelse"
726
- },
727
- "aiCard": {
728
- "heading": "AI-berigelse",
729
- "body": "Konfigurér en AI-udbyder (eller kopiér-indsæt-turen) for at berige etiketter, grupper og relationer.",
730
- "cta": "Åbn AI-indstillinger"
731
- },
732
- "pagesCard": {
733
- "heading": "Sider",
734
- "body": "Tilføj, rediger og slet sider, skift hvad hver enkelt viser, og omarranger sidepanelet.",
735
- "cta": "Administrer sider"
736
- },
737
- "translationsCard": {
738
- "heading": "Sprog og oversættelser",
739
- "body": "Omformulér hvad som helst i Adminium, vælg hvilke sprog folk kan vælge, og tilføj dine egne.",
740
- "cta": "Åbn oversættelser"
741
- }
742
- },
743
- "settingsAi": {
744
- "title": "AI-berigelse",
745
- "subtitle": "Forbind en model, så Adminium kan foreslå etiketter, grupper, relationer og mere — altid gennemgået som en diff, før noget anvendes.",
746
- "saved": "AI-udbyder gemt",
747
- "saveFailed": "AI-udbyderen kunne ikke gemmes. Prøv igen.",
748
- "save": "Gem udbyder",
749
- "test": "Test forbindelse",
750
- "testHintDirty": "Gem dine ændringer, før du tester.",
751
- "testing": "Kontakter udbyderen…",
752
- "testError": "Testen mislykkedes",
753
- "testErrorBody": "Kunne ikke nå udbyderen. Tjek nøglen og basis-URL.",
754
- "testOk": "Forbundet til {model} på {latency} ms",
755
- "testUnknownModel": "udbyderen",
756
- "provider": {
757
- "heading": "AI-udbyder",
758
- "subtitle": "Vælg, hvordan Adminium når en model til at berige dit skema. Nøgler gemmes krypteret og vises aldrig igen.",
759
- "active": "Aktiv",
760
- "anthropic": {
761
- "label": "Anthropic",
762
- "desc": "Claude-modeller via Anthropic-API’en."
763
- },
764
- "openai": {
765
- "label": "OpenAI",
766
- "desc": "GPT-modeller via OpenAI-API’en."
767
- },
768
- "openaiCompatible": {
769
- "label": "OpenAI-kompatibel",
770
- "desc": "Ethvert endpoint, der taler OpenAI-formatet — Groq, Together, vLLM, LM Studio."
771
- },
772
- "ollama": {
773
- "label": "Ollama (lokal)",
774
- "desc": "Modeller kører lokalt via Ollama — ingen nøgle, ingen sky."
775
- },
776
- "requiresNetwork": "Kræver internet og en API-nøgle",
777
- "networkDisabledTitle": "Direkte AI-udbydere er slået fra i denne installation",
778
- "networkDisabledBody": "Dette Adminium er konfigureret uden udgående internetadgang og kan ikke nå en udbyder-API. Brug kopier-indsæt-turen nedenfor — den kræver hverken nøgle eller netværk."
779
- },
780
- "configure": {
781
- "heading": "Konfigurér {provider}"
782
- },
783
- "field": {
784
- "baseUrl": "Basis-URL",
785
- "baseUrlOptional": "Lad stå, medmindre Ollama kører på en anden vært.",
786
- "baseUrlHelper": "Endpoint-roden, der leverer /chat/completions.",
787
- "model": "Model",
788
- "modelFreeText": "Indtast det præcise model-id, dit endpoint leverer.",
789
- "modelLive": "Indlæst live fra udbyderen.",
790
- "modelStatic": "En gennemprøvet liste; skriv et brugerdefineret id efter at have gemt for at opdatere den.",
791
- "modelLoading": "Indlæser…",
792
- "modelPlaceholder": "Vælg en model…",
793
- "key": "API-nøgle",
794
- "keyStored": "Gemt krypteret. Erstat den for at bruge en anden nøgle.",
795
- "keyMask": "sk-…{last4}",
796
- "keyReplace": "Erstat nøgle",
797
- "keyOptional": "Valgfri — nogle endpoints kræver ingen nøgle.",
798
- "keyWriteOnly": "Kun skrivning: når den er gemt, vises den aldrig igen.",
799
- "noKeyTitle": "Ingen API-nøgle nødvendig",
800
- "noKeyBody": "Ollama kører lokalt, så intet forlader denne maskine."
801
- },
802
- "runStatus": {
803
- "draft": "Kladde",
804
- "running": "Kører",
805
- "awaitingResponse": "Afventer svar",
806
- "validated": "Valideret",
807
- "applied": "Anvendt",
808
- "partiallyApplied": "Delvist anvendt",
809
- "failed": "Mislykkedes",
810
- "discarded": "Kasseret"
811
- },
812
- "byo": {
813
- "heading": "Ingen nøgle? Brug dit eget AI-værktøj",
814
- "subtitle": "Kopiér-indsæt-turen — intet forlader denne maskine.",
815
- "body": "Studio kan generere en selvstændig prompt ud fra dit skema. Kør den i Claude Code, ChatGPT eller et hvilket som helst værktøj, og indsæt derefter den returnerede JSON tilbage i forbindelsesguiden. Samme validering, samme gennemgang, samme resultat som den direkte vej.",
816
- "guaranteeTitle": "Telemetrifri garanti",
817
- "guarantee1": "Prompten indeholder kun dit skema og aggregeret statistik — aldrig rækkedata som standard.",
818
- "guarantee2": "Ingen legitimationsoplysninger, instans-URL eller identifikatorer er indlejret.",
819
- "guarantee3": "BYO-kørsler foretager ingen netværkskald.",
820
- "promptVersion": "Prompt {version}",
821
- "schemaVersion": "Skema {version}",
822
- "headingRecommended": "Brug dit eget AI-værktøj — ingen nøgle nødvendig",
823
- "recommended": "Anbefalet"
824
- },
825
- "history": {
826
- "heading": "Kørselshistorik",
827
- "subtitle": "Tidligere berigelseskørsler. Åbn en for at gennemgå dens forslag.",
828
- "tableLabel": "Berigelseskørsler",
829
- "colDate": "Dato",
830
- "colSource": "Kilde",
831
- "colStatus": "Status",
832
- "colChunks": "Blokke",
833
- "openReview": "Åbn gennemgang for kørslen fra {date}",
834
- "connection": "Forbindelse",
835
- "empty": "Ingen berigelseskørsler endnu. Berig et skema fra forbindelsesguiden for at se historik her.",
836
- "errorTitle": "Kunne ikke indlæse kørsler",
837
- "errorBody": "Genindlæs siden for at prøve igen.",
838
- "noConnections": "Forbind først en database — berigelseskørsler registreres pr. forbindelse.",
839
- "byo": "BYO",
840
- "directPath": "Direkte"
841
- }
842
- },
843
- "enrich": {
844
- "title": "Berig med AI",
845
- "subtitle": "Forfin eventuelt de genererede etiketter, grupper, enums og dashboards med en LLM. Det heuristiske grundlag fungerer uden — dette tilføjer kun forslag, som du gennemgår, før noget anvendes.",
846
- "intentLabel": "Hvordan vil du berige?",
847
- "sectionsLegend": "Hvad skal AI’en beslutte?",
848
- "localesLegend": "Oversæt etiketter til",
849
- "localeLocked": "(påkrævet)",
850
- "samplingTitle": "Inkludér eksempelværdier",
851
- "samplingHint": "Inkluderer op til 20 rigtige værdier pr. ikke-PII-kolonne i prompten.",
852
- "samplingPreviewTitle": "Hvad forlader denne maskine",
853
- "samplingPreviewBody": "Op til 20 hyppigste værdier pr. ikke-PII-kolonne, plus min/maks for numeriske og datokolonner. PII-markerede kolonner udtages aldrig. Alt andet forbliver kun aggregeret. Gennemgå den præcise prompt før kopiering (BYO) — intet sendes uden din handling.",
854
- "noSections": "Vælg mindst én beslutningsgruppe at berige.",
855
- "generatePrompt": "Generér prompt",
856
- "startProvider": "Start berigelse",
857
- "startOver": "Start forfra",
858
- "copied": "Kopieret",
859
- "createFailed": "Berigelsesprompten kunne ikke bygges — prøv igen.",
860
- "createFailedTitle": "Kunne ikke starte",
861
- "providerFallback": "din AI-udbyder",
862
- "fileTitle": "AI-berigelse kræver en live-database",
863
- "fileBody": "Skemafil-kilder har endnu ikke et snapshot at berige. Forbind en live-database for at bruge AI-berigelse, eller fortsæt — det heuristiske grundlag genererer stadig en komplet app.",
864
- "section": {
865
- "labels": "Etiketter og beskrivelser",
866
- "groups": "Navigationsgrupper",
867
- "enums": "Enum-semantik",
868
- "relations": "Relationer",
869
- "keys": "Nøglekolonner",
870
- "templates": "Sideskabeloner",
871
- "widgets": "Dashboard-widgets",
872
- "pii": "PII og maskering",
873
- "icons": "Ikoner",
874
- "microcopy": "Mikrotekst"
875
- },
876
- "provider": {
877
- "title": "Brug min AI-udbyder",
878
- "description": "Kør berigelsen nu mod din konfigurerede udbyder. Du gennemgår hvert forslag som en diff.",
879
- "unconfigured": "Der er endnu ikke konfigureret nogen AI-udbyder — kopiér en prompt til dit eget værktøj nedenfor, eller konfigurér først en udbyder.",
880
- "settingsHint": "Vil du køre den direkte?",
881
- "settingsLink": "Konfigurér en udbyder i Indstillinger → AI",
882
- "networkDisabled": "Dette Adminium har ingen udgående internetadgang og kan ikke nå en udbyder-API. Brug kopier-indsæt-turen i stedet — samme prompt, samme gennemgang."
883
- },
884
- "byo": {
885
- "cardTitle": "Kopiér en prompt til mit eget AI-værktøj",
886
- "cardDescription": "Kopiér en selvstændig prompt ind i Claude Code, ChatGPT, hvad som helst — og indsæt så JSON’en tilbage. Ingen nøgle nødvendig, intet forlader denne maskine automatisk.",
887
- "guidance": "Kør dette i et hvilket som helst AI-værktøj — Claude Code, ChatGPT, hvad som helst. Indsæt den returnerede JSON nedenfor.",
888
- "promptLabel": "Berigelsesprompt",
889
- "promptLabelN": "Berigelsesprompt {index} af {total}",
890
- "tokenChip": "≈ {tokens} tokens",
891
- "copyPrompt": "Kopiér prompt",
892
- "copyPromptDone": "Prompt kopieret",
893
- "download": "Download .md",
894
- "chunkTabs": "Prompt-dele",
895
- "chunkTab": "Prompt {index}",
896
- "chunkValid": "Del {index} valideret",
897
- "pasteLabel": "Indsæt JSON-svaret",
898
- "pastePlaceholder": "Indsæt JSON-svaret her…",
899
- "validate": "Validér",
900
- "valid": "Svar valideret",
901
- "mergedTitle": "Alle {count} dele valideret og flettet",
902
- "mergedTitleSingle": "Svar valideret",
903
- "mergedBody": "Forslagene er klar til gennemgang mod det heuristiske grundlag.",
904
- "errorsTitle": "Valideringen fandt {count} problemer",
905
- "copyErrors": "Kopiér fejl til dit AI-værktøj",
906
- "copyErrorsDone": "Fejl kopieret",
907
- "copyErrorsHint": "Indsæt dette tilbage i dit AI-værktøj for at få et rettet svar.",
908
- "droppedItems": "{count} forslag blev frasorteret under valideringen — gennemgangen viser resten.",
909
- "pendingTitle": "Validér hver prompt for at fortsætte",
910
- "pendingBody": "Indsæt JSON-svaret ovenfor og validér det for at fortsætte til gennemgang.",
911
- "pendingBodyChunked": "Hver del skal valideres, før forslagene flettes. Indsæt og validér hver prompt ovenfor.",
912
- "requestFailed": "Kunne ikke nå serveren for at validere — prøv igen.",
913
- "continueReview": "Fortsæt til gennemgang",
914
- "wholeDocument": "hele dokumentet",
915
- "cardTitleRecommended": "Kopiér en prompt til mit eget AI-værktøj — anbefalet"
916
- },
917
- "direct": {
918
- "title": "Beriger med AI",
919
- "subtitle": "Sender dit skema til",
920
- "building": "Bygger prompt…",
921
- "logLabel": "Berigelseslog",
922
- "cancel": "Annullér",
923
- "back": "Tilbage til valg",
924
- "retry": "Prøv igen",
925
- "done": "Berigelse fuldført — gennemgå forslagene.",
926
- "continueReview": "Fortsæt til gennemgang",
927
- "failed": "Udbyderkørslen mislykkedes. Tjek dine AI-indstillinger, og prøv igen.",
928
- "jobFailed": "Berigelseskørslen blev ikke fuldført.",
929
- "startFailed": "Kunne ikke starte kørslen — prøv igen.",
930
- "errorTitle": "Berigelse mislykkedes"
931
- },
932
- "skip": {
933
- "title": "Spring over — brug kun heuristik",
934
- "description": "Generér fra det heuristiske grundlag. Du kan berige senere fra Indstillinger → AI — at springe over straffes aldrig.",
935
- "confirmTitle": "Fortsætter med heuristik",
936
- "confirmBody": "Den genererede app vil bruge de heuristiske etiketter, grupper og dashboards. Fortsæt for at generere — du kan køre AI-berigelse når som helst fra Indstillinger → AI."
937
- }
938
- },
939
- "review": {
940
- "unavailableTitle": "Gennemgangsskærm ikke tilgængelig",
941
- "unavailableBody": "Denne build indeholder endnu ikke berigelsens gennemgangsskærm (06-T14). Den kommer med diff-og-anvend-flowet."
942
- },
943
- "llmRuns": {
944
- "review": {
945
- "header": {
946
- "title": "Gennemgå AI-forslag",
947
- "model": "Model",
948
- "snapshot": "Øjebliksbillede",
949
- "byo": "BYO",
950
- "pathDirect": "Direkte API",
951
- "pathByo": "Kopiér-indsæt",
952
- "agree": "{n} enige",
953
- "conflict": "{n} konflikt",
954
- "new": "{n} nye",
955
- "rejects": "{n} afvisninger",
956
- "countsAria": "Antal forslag"
957
- },
958
- "bulk": {
959
- "thresholdLabel": "Tillidstærskel",
960
- "thresholdAria": "Tillidstærskel for “Accepter alle”",
961
- "acceptAll": "Accepter alle ≥ {pct}%",
962
- "clear": "Ryd markering"
963
- },
964
- "section": {
965
- "selectAllAria": "Vælg alle i {group}",
966
- "acceptedCount": "{n} accepteret"
967
- },
968
- "group": {
969
- "labels": "Etiketter og oversættelser",
970
- "navigation": "Navigation og domæner",
971
- "enums": "Enum-semantik",
972
- "relations": "Relationer",
973
- "keys": "Nøglekolonner",
974
- "templates": "Sideskabeloner",
975
- "dashboards": "Dashboards og widgets",
976
- "pii": "Personoplysninger og maskering",
977
- "icons": "Ikoner",
978
- "microcopy": "Mikrotekst"
979
- },
980
- "status": {
981
- "agree": "Stemmer overens",
982
- "conflict": "Konflikt",
983
- "new": "Ny",
984
- "heuristicOnly": "Kun heuristik",
985
- "rejects": "Afviser heuristik",
986
- "locked": "Låst"
987
- },
988
- "row": {
989
- "acceptAria": "Accepter {noun}-forslag for {target}",
990
- "keptEdited": "bevaret – redigeret af dig",
991
- "rejectsCallout": "AI’en afviser en heuristisk beslutning – bekræft før accept.",
992
- "showTranslations": "Vis oversættelser",
993
- "hideTranslations": "Skjul oversættelser",
994
- "confidenceAria": "Tillid {pct}%",
995
- "noAi": "Intet AI-forslag"
996
- },
997
- "value": {
998
- "none": "Ingen værdi",
999
- "absent": "Ingen",
1000
- "dash": "—",
1001
- "display": "Visning",
1002
- "key": "Nøgle",
1003
- "rank": "rang {n}",
1004
- "span": "bredde {n}",
1005
- "tableCount": "{n} tabeller",
1006
- "widgetCount": "{n} widgets",
1007
- "enumWorkflow": "Arbejdsgang",
1008
- "enumCategory": "Kategori",
1009
- "notPii": "Ikke personoplysninger",
1010
- "label": "Etiket",
1011
- "description": "Beskrivelse",
1012
- "subtitle": "Sideundertekst",
1013
- "headline": "Overskrift for tom tilstand",
1014
- "guidance": "Vejledning for tom tilstand"
1015
- },
1016
- "apply": {
1017
- "title": "Anvend {n} forslag",
1018
- "subtitle": "Disse ændringer skrives i én transaktion og kan fortrydes.",
1019
- "empty": "Intet valgt at anvende.",
1020
- "confirm": "Anvend ændringer"
1021
- },
1022
- "footer": {
1023
- "count": "{n} forslag valgt",
1024
- "apply": "Anvend {n} accepterede forslag",
1025
- "failed": "Anvendelse mislykkedes"
1026
- },
1027
- "toast": {
1028
- "applied": "Anvendte {n} forslag",
1029
- "appliedPartial": "Anvendte {n} forslag (nogle sprunget over)",
1030
- "applyFailed": "Kunne ikke anvende forslag",
1031
- "undoFailed": "Kunne ikke fortryde denne ændring"
1032
- },
1033
- "error": {
1034
- "title": "Kunne ikke indlæse denne kørsel"
1035
- },
1036
- "notReady": {
1037
- "title": "Denne kørsel har endnu ingen forslag til gennemgang",
1038
- "body": "En kørsel skal være valideret, før dens forslag kan gennemgås. Generér eller indsæt et svar først."
1039
- },
1040
- "applied": {
1041
- "title": "Denne kørsel er blevet anvendt",
1042
- "body": "De accepterede forslag nedenfor er skrivebeskyttede."
1043
- },
1044
- "empty": {
1045
- "title": "Ingen forslag",
1046
- "body": "Denne kørsel gav ingen forslag til gennemgang."
1047
- },
1048
- "cat": {
1049
- "label": "etiket",
1050
- "key": "nøglekolonner",
1051
- "enum": "enum",
1052
- "relation": "relation",
1053
- "pii": "personoplysninger",
1054
- "template": "sideskabelon",
1055
- "group": "navigationsgruppe",
1056
- "dashboard": "dashboard",
1057
- "widget": "widget",
1058
- "copy": "mikrotekst"
1059
- }
1060
- }
1061
- },
1062
- "wizard": {
1063
- "title": "Ny forbindelse",
1064
- "back": "Tilbage",
1065
- "continue": "Fortsæt",
1066
- "progress": "Opsætningsforløb",
1067
- "persistFailed": "Dit tabelvalg kunne ikke gemmes — prøv igen.",
1068
- "persistFailedTitle": "Kunne ikke gemme",
1069
- "bridgeAppliedTitle": "Forbindelsesstreng modtaget",
1070
- "bridgeAppliedBody": "Overdraget fra adminium.dev af din browser — den gik direkte til denne maskine og blev aldrig uploadet. Tjek den nedenfor, og fortsæt.",
1071
- "bridgeFailedTitle": "Denne overdragelse kunne ikke bruges",
1072
- "bridgeFailedBody": "Den er allerede brugt eller udløbet. Indsæt i stedet din forbindelsesstreng nedenfor.",
1073
- "step": {
1074
- "source": "Kilde",
1075
- "test": "Analysér",
1076
- "tables": "Tabeller",
1077
- "meta": "Metalagring",
1078
- "intent": "Formål",
1079
- "enrich": "Berig",
1080
- "generate": "Generér"
1081
- }
1082
- },
1083
- "meta": {
1084
- "title": "Hvor skal Adminium gemme sine egne tabeller?",
1085
- "subtitle": "Sider, roller, auditlog og indstillinger bor i tabeller med adminium_-præfiks — aldrig blandet med dine data.",
1086
- "sameDb": {
1087
- "title": "Samme database",
1088
- "description": "adminium_*-tabeller oprettes ved siden af dine kildetabeller. Enkleste opsætning — kræver en rolle med skrive- og CREATE TABLE-rettigheder.",
1089
- "disabledReadOnly": "Din rolle er skrivebeskyttet — Adminium skriver aldrig til denne database. Vælg en separat database til Adminiums egne tabeller.",
1090
- "disabledNoDdl": "Denne rolle kan ikke køre DDL — Adminium-migreringer kræver CREATE TABLE. Vælg en separat database til Adminiums egne tabeller.",
1091
- "disabledFile": "En skemafil har ingen live database — vælg en separat database til Adminiums egne tabeller."
1092
- },
1093
- "separate": {
1094
- "title": "Separat database",
1095
- "description": "Adminium holder sine tabeller i en anden database. Din kilde forbliver urørt — påkrævet for skrivebeskyttede kilder.",
1096
- "dsn": "Forbindelsesstreng til metadatabasen",
1097
- "helper": "Kræver skrive- + DDL-rettigheder — Adminium kører sine egne migreringer dér.",
1098
- "test": "Test forbindelse",
1099
- "ok": "Kompatibel — skrivning ✓ · DDL ✓",
1100
- "insufficient": "Denne rolle kan ikke huse metalageret — Adminium behøver skrive- og CREATE TABLE-rettigheder dér.",
1101
- "errorTitle": "Metalager ikke kompatibelt"
1102
- },
1103
- "testFailed": "Forbindelsen mislykkedes.",
1104
- "v1Note": {
1105
- "title": "Om denne installation",
1106
- "body": "Denne server gemmer allerede sine egne tabeller i en konfigureret database, og dette trin flytter dem ikke. Det validerer, at dit valg er kompatibelt med denne forbindelse — serveren håndhæver den samme regel uafhængigt (409 META_PLACEMENT_INVALID)."
1107
- },
1108
- "move": {
1109
- "title": "Flytter Adminiums tabeller",
1110
- "copying": "Flytter Adminiums tabeller …",
1111
- "restarting": "Genstarter …",
1112
- "copyingBody": "Kopierer hver adminium_-tabel til den nye database. Dine kildedata røres ikke, og der skiftes først over, når kopien er verificeret.",
1113
- "restartingBody": "Kopien er færdig. Adminium genstarter på den nye database — denne side fortsætter af sig selv om få sekunder.",
1114
- "failed": "Kunne ikke flytte Adminiums tabeller — prøv igen.",
1115
- "timeout": "Adminium flyttede sine tabeller, men er ikke kommet tilbage endnu. Dine data er sikre i den nye database — genindlæs siden om et øjeblik."
1116
- },
1117
- "willMove": {
1118
- "title": "Dette flytter Adminiums tabeller",
1119
- "body": "Adminium bruger i øjeblikket sit indbyggede SQLite-lager. Fortsæt kopierer det lager til den valgte database og genstarter på den — konti, sider og indstillinger følger med, så du forbliver logget ind."
1120
- }
1121
- },
1122
- "intent": {
1123
- "title": "Hvad har du brug for?",
1124
- "subtitle": "Formålet afgør, hvilke sider der genereres. Du kan ændre det senere — en ændring foreslår en regenerering, aldrig en stille omskrivning.",
1125
- "trust": "Vi læser kun dit skema — aldrig dine rækkedata under opsætningen.",
1126
- "fullAdmin": {
1127
- "title": "Fuldt adminpanel",
1128
- "description": "Dashboards, CRUD-sider, søgning, import og eksport — alt hvad dit skema understøtter."
1129
- },
1130
- "analytics": {
1131
- "title": "Skrivebeskyttet analyse",
1132
- "description": "Dashboards, diagrammer og skrivebeskyttede tabeller. Ingen formularer, ingen skrivninger — hver rolle begrænset til Fremviser."
1133
- },
1134
- "crud": {
1135
- "title": "CRUD-tabeller",
1136
- "description": "Én redigeringsside pr. tabel plus søgning og import/eksport — et minimalt hjem, ingen dashboards."
1137
- },
1138
- "support": {
1139
- "title": "Supportkonsol",
1140
- "description": "Køer, ticket- og kundedetaljesider først. Sletning slået fra som standard. (Kø-skabeloner lander i M7 — v1-sidesættet svarer til fuldt admin.)"
1141
- }
1142
- },
1143
- "generate": {
1144
- "title": "Generér din app",
1145
- "subtitle": "Én side pr. medtaget tabel plus dashboards pr. domæne — formål:",
1146
- "run": "Generér dashboard",
1147
- "openApp": "Åbn din app",
1148
- "logLabel": "Genereringslog",
1149
- "log": {
1150
- "classifying": "Klassificerer skema…",
1151
- "composing": "Sammensætter skabeloner…",
1152
- "writing": "Skriver sider…",
1153
- "done": "{pages} sider genereret på tværs af {groups} navigationsgrupper"
1154
- },
1155
- "successTitle": "Dit dashboard er klar",
1156
- "successBody": "{pages} sider i {groups} navigationsgrupper — genereret fra dit skema, redigerbare i Studio.",
1157
- "errorTitle": "Generering mislykkedes",
1158
- "failed": "Generering mislykkedes — prøv igen, eller kør introspektionen igen først.",
1159
- "fileTitle": "Skemafil fortolket — generering kræver en live database",
1160
- "fileBody": "Dit skema blev fortolket rent, og forhåndsvisningen ovenfor er ægte. Generering af en kørende app direkte fra en skemafil (med pladsholderrækker) er ikke tilgængelig endnu — forbind en live database for at generere i dag."
1161
- },
1162
- "remap": {
1163
- "column": {
1164
- "nullable": "kan være NULL",
1165
- "labelOverride": "Visningsetiket",
1166
- "labelHelper": "Udledt: {name}",
1167
- "logicalType": "Logisk type",
1168
- "logicalTypeHelper": "Udledt: {type} (fra {dbType}) — kortlagt af adapteren; kan ikke tilsidesættes i v1.",
1169
- "semantic": "Semantisk type",
1170
- "unclassified": "Endnu ikke klassificeret.",
1171
- "semanticHelper": "Klassifikator: {tag} · {confidence}% tillid · kilde: {source}",
1172
- "semanticInferred": "udledt: {tag}",
1173
- "currency": "Valuta",
1174
- "currencyHelper": "ISO 4217-kode anvendt på beløbsformatering.",
1175
- "pii": "Maskér som standard",
1176
- "piiHelper": "Maskerede værdier vises slørede; afmaskering kræver tilladelsen data.unmask_pii og logges i auditloggen.",
1177
- "enum": "Enum-semantik",
1178
- "enumKind": "Enum-art",
1179
- "enumWorkflow": "Arbejdsgang",
1180
- "enumCategory": "Kategori",
1181
- "enumLabelFor": "Etiket for {value}",
1182
- "enumToneFor": "Tone for {value}",
1183
- "enumToneAuto": "auto",
1184
- "enumHelper": "Arbejdsgangs-enums driver statusmærker og tavlekolonner; toner knytter værdierne til den semantiske farvetoneskala."
1185
- },
1186
- "diff": {
1187
- "one": "1 ændring",
1188
- "count": "{count} ændringer",
1189
- "saved": "Tilsidesættelser gemt.",
1190
- "revertOne": "Fortryd {change}",
1191
- "regenerate": "Regenerér sider",
1192
- "revertAll": "Fortryd alle",
1193
- "save": "Gem tilsidesættelser"
1194
- },
1195
- "table": {
1196
- "iconPicker": "Tabelikon",
1197
- "system": "System",
1198
- "labelOverride": "Visningsetiket",
1199
- "labelHelper": "Udledt: {name}",
1200
- "icon": "Ikon",
1201
- "navGroup": "Navigationsgruppe",
1202
- "navGroupHelper": "Navigationsplaceringen bestemmes af generatoren — en table.navGroup-tilsidesættelse er ikke en del af v1-vokabularet.",
1203
- "include": "Medtag i den genererede app",
1204
- "includeHelper": "Udeladte tabeller får ingen sider og forsvinder fra navigationen.",
1205
- "shape": "Tabelform (klassificeret)",
1206
- "role": "Rolle",
1207
- "unclassified": "Ikke klassificeret",
1208
- "kind": "Art",
1209
- "hierarchy": "Hierarki",
1210
- "selfFk": "Selvreference via {column}",
1211
- "polymorphic": "Polymorfe par",
1212
- "rows": "Rækkeestimat",
1213
- "shapeHelper": "Klassificeringen genberegnes ved hver introspektion; tilsidesættelser lægges ovenpå og overlever regenerering."
1214
- },
1215
- "relations": {
1216
- "declared": "Deklarerede fremmednøgler",
1217
- "noneDeclared": "Ingen deklarerede fremmednøgler berører denne tabel.",
1218
- "inferred": "Udledte relationer",
1219
- "noneInferred": "Intet udledt for denne tabel.",
1220
- "confidence": "udledt · {pct}%",
1221
- "accepted": "Accepteret",
1222
- "suppressed": "Undertrykt",
1223
- "accept": "Accepter",
1224
- "suppress": "Undertryk",
1225
- "overrides": "Relationer fra tilsidesættelser (anvendt)",
1226
- "overrideBadge": "tilsidesættelse",
1227
- "add": "Tilføj virtuel relation",
1228
- "fromColumn": "Fra kolonne",
1229
- "noColumns": "Ingen matchende kolonne",
1230
- "fromPlaceholder": "customer_id",
1231
- "toTable": "Til tabel",
1232
- "noTables": "Ingen matchende tabel",
1233
- "toColumn": "Til kolonne",
1234
- "cardinality": "Kardinalitet",
1235
- "addButton": "Tilføj relation"
1236
- },
1237
- "toast": {
1238
- "saved": "Skema-tilsidesættelser gemt",
1239
- "savedDetail": "Det anvendte skema nedenfor afspejler dine ændringer.",
1240
- "regenerated": "{created} oprettet · {updated} opdateret · {unchanged} uændret",
1241
- "regeneratedDetail": "Sider, du har redigeret i hånden, bevares — kun sider med en urørt generated_hash blev regenereret på stedet.",
1242
- "regenerateFailed": "Regenerering mislykkedes"
1243
- },
1244
- "title": "Skema-ommapning",
1245
- "subtitle": "{tables} tabeller · {applied} tilsidesættelser anvendt",
1246
- "saveFailed": "Lagring mislykkedes: {message}",
1247
- "loadFailed": "Kunne ikke indlæse skemaet for denne forbindelse.",
1248
- "inspector": "Inspektør",
1249
- "empty": {
1250
- "title": "Vælg en tabel eller kolonne",
1251
- "description": "Vælg noget i skematræet for at ommappe dets etiket, type, relationer eller maskering."
1252
- },
1253
- "tabs": {
1254
- "details": "Detaljer",
1255
- "relations": "Relationer"
1256
- },
1257
- "tree": {
1258
- "label": "Skema",
1259
- "search": "Søg i tabeller og kolonner",
1260
- "searchPlaceholder": "Søg i tabeller…",
1261
- "noMatches": "Ingen tabeller matcher din søgning.",
1262
- "collapse": "Fold tabel sammen",
1263
- "expand": "Fold tabel ud",
1264
- "unsaved": "Ugemt ændring",
1265
- "excluded": "Udeladt"
1266
- },
1267
- "badge": {
1268
- "pk": "PK",
1269
- "fk": "FK",
1270
- "unique": "UNIK",
1271
- "pii": "PII",
1272
- "masked": "Maskeret"
1273
- },
1274
- "unavailableTitle": "Editor til skema-ommapning ikke tilgængelig",
1275
- "unavailableBody": "Dette build indeholder endnu ikke ommapnings-editoren (09-T12). Kør genereringen igen, når den er kommet, for at ommappe etiketter, typer og relationer."
1276
- },
1277
- "publicApi": {
1278
- "error": "Something went wrong",
1279
- "scopes": {
1280
- "deleteTitle": "Delete this scope",
1281
- "deleteBody": "Any page using a key bound to this scope stops loading data. Keys are not deleted — revoke them first if that is what you meant.",
1282
- "deletePrompt": "Type the scope name to confirm",
1283
- "deleteConfirm": "Delete scope",
1284
- "issuesTitle": "This scope did not compile",
1285
- "title": "Scopes",
1286
- "subtitle": "A scope is the whole of what a key may reach — the tables, the exact columns, and a filter the caller can narrow but never remove.",
1287
- "emptyTitle": "No scopes yet",
1288
- "emptyBody": "Create one below. It is checked against your live schema before it is saved.",
1289
- "keyCount": "{count, plural, =0 {no keys} one {# key} other {# keys}}",
1290
- "delete": "Delete",
1291
- "nameLabel": "Name",
1292
- "connectionLabel": "Connection ID",
1293
- "documentLabel": "Scope document",
1294
- "documentHint": "Compiled against your schema when you save. Every column a caller can reach is listed here and nowhere else.",
1295
- "create": "Create scope",
1296
- "formLabel": "Create a scope"
1297
- },
1298
- "cancel": "Cancel",
1299
- "close": "Close",
1300
- "title": "Public API",
1301
- "subtitle": "Let your own customer- or staff-facing pages read this database, through a scope you define.",
1302
- "notRegistered": {
1303
- "title": "Not enabled on this server",
1304
- "body": "Set ADMINIUM_PUBLIC_API_ORIGINS to the exact origins allowed to call it, then restart. Until then these routes are not served at all."
1305
- },
1306
- "toggle": {
1307
- "label": "Serve the public API",
1308
- "hint": "Turning this off stops every public request immediately. Nothing is deleted — keys, scopes and data all survive."
1309
- },
1310
- "origins": {
1311
- "label": "Origins allowed to call it"
1312
- },
1313
- "keys": {
1314
- "title": "Keys",
1315
- "subtitle": "These go in your page’s JavaScript, so anyone can read them. That is expected — a key can only ever do what its scope allows.",
1316
- "emptyTitle": "No keys yet",
1317
- "emptyBody": "Create a scope first, then mint a key for it.",
1318
- "reveal": "Show key",
1319
- "rotate": "Rotate",
1320
- "revoke": "Revoke",
1321
- "nameLabel": "Name",
1322
- "scopeLabel": "Scope",
1323
- "scopePlaceholder": "Choose a scope",
1324
- "create": "Create key",
1325
- "formLabel": "Create a key",
1326
- "scopeIsAuthTitle": "The scope is the only permission",
1327
- "scopeIsAuthBody": "A key can reach exactly what its scope lists and nothing else. It does not use roles or table permissions, and it cannot read anything through the rest of the API."
1328
- },
1329
- "status": {
1330
- "heading": "Status"
1331
- }
1332
- }
1333
- },
1334
453
  "onboarding": {
1335
454
  "title": "Kom godt i gang",
1336
455
  "subtitle": "Nogle få trin for at gøre dit arbejdsområde klar.",
@@ -2428,166 +1547,6 @@ export default {
2428
1547
  "toLight": "Lys tilstand",
2429
1548
  "toDark": "Mørk tilstand"
2430
1549
  },
2431
- "studioPages": {
2432
- "title": "Sider",
2433
- "subtitle": "Tilføj, rediger og organiser din apps sider — og den rækkefølge de vises i sidepanelet.",
2434
- "createButton": "Ny side",
2435
- "loadFailed": {
2436
- "title": "Siderne kunne ikke indlæses",
2437
- "body": "Sidestyring kræver tilladelsen “Administrer sider”. Bed en administrator om at give den til en af dine roller."
2438
- },
2439
- "tab": {
2440
- "pages": "Alle sider",
2441
- "sidebar": "Rækkefølge i sidepanelet"
2442
- },
2443
- "list": {
2444
- "title": "Sider",
2445
- "count": "{count, plural, one {# side} other {# sider}}"
2446
- },
2447
- "empty": {
2448
- "title": "Ingen sider endnu",
2449
- "body": "Forbind en database for at generere sider automatisk, eller opret en i hånden."
2450
- },
2451
- "status": {
2452
- "live": "Aktiv",
2453
- "hidden": "Skjult"
2454
- },
2455
- "origin": {
2456
- "generated": "Genereret",
2457
- "manifest": "Tilføjelse",
2458
- "llm": "Assistent",
2459
- "system": "System",
2460
- "user": "Egen"
2461
- },
2462
- "row": {
2463
- "menu": "Handlinger for {title}"
2464
- },
2465
- "action": {
2466
- "edit": "Rediger side",
2467
- "duplicate": "Dupliker",
2468
- "hide": "Skjul fra sidepanelet",
2469
- "show": "Vis i sidepanelet",
2470
- "delete": "Slet side"
2471
- },
2472
- "create": {
2473
- "title": "Ny side",
2474
- "failed": "Siden kunne ikke oprettes",
2475
- "submit": "Opret side",
2476
- "subtitle": "Vælg hvad siden viser, og hvordan den ser ud. Forhåndsvisningen følger dine valg."
2477
- },
2478
- "duplicate": {
2479
- "title": "Dupliker side",
2480
- "failed": "Siden kunne ikke duplikeres",
2481
- "submit": "Dupliker"
2482
- },
2483
- "delete": {
2484
- "title": "Slet denne side?",
2485
- "body": "Dette kan ikke fortrydes. Gemte visninger og personlige layouts på denne side slettes for alle.",
2486
- "bodyGenerated": "Denne side stammer fra skemagenerering, så den kommer igen næste gang du genererer. Gemte visninger og personlige layouts slettes for alle.",
2487
- "prompt": "Skriv {slug} for at bekræfte",
2488
- "confirm": "Slet side"
2489
- },
2490
- "field": {
2491
- "title": "Titel",
2492
- "titleHint": "Vises i sidepanelet og i sidens overskrift.",
2493
- "slug": "Sideadresse",
2494
- "slugHint": "Små bogstaver, tal og bindestreger. Kun den sidste del — resten af adressen tilføjer vi.",
2495
- "slugTaken": "En anden side bruger allerede denne adresse.",
2496
- "slugWarning": "Ændrer du adressen, går eksisterende links og bogmærker til siden i stykker.",
2497
- "template": "Skabelon",
2498
- "templateHint": "Afgør hvad siden kan indeholde. Kan ændres senere.",
2499
- "group": "Gruppe i sidepanelet",
2500
- "groupHint": "Hvilken del af sidepanelet den vises i.",
2501
- "icon": "Ikon",
2502
- "iconHint": "Vises ved siden af sidens navn i sidepanelet.",
2503
- "visible": "Vis i sidepanelet",
2504
- "visibleHint": "En skjult side kan stadig tilgås på sin URL af alle med linket.",
2505
- "table": "Tabel",
2506
- "tableCreateHint": "Tabellen som denne side læser fra. Vælg en nu, så er siden klar til brug; lad den stå tom, og du kan knytte den senere.",
2507
- "tableNone": "Ikke knyttet",
2508
- "tableNeedsConnection": "Vælg en datakilde først.",
2509
- "connection": "Datakilde",
2510
- "connectionNone": "Ingen",
2511
- "iconPick": "Vælg sidens ikon",
2512
- "padding": "Sidemargen"
2513
- },
2514
- "editor": {
2515
- "title": "Rediger side",
2516
- "save": "Gem ændringer",
2517
- "saveFailed": "Ændringerne kunne ikke gemmes",
2518
- "openPage": "Åbn side",
2519
- "generated": {
2520
- "title": "Denne side blev genereret ud fra dit skema",
2521
- "body": "Dine ændringer bevares, når du genererer igen — siden markeres som redigeret og røres ikke. En sletning holder derimod kun, indtil næste generering opretter den på ny."
2522
- },
2523
- "contentUnavailable": "Sidens indhold kunne ikke indlæses",
2524
- "contentUnavailableBody": "Oplysningerne ovenfor kan stadig gemmes.",
2525
- "contentInvalid": "Denne sides konfiguration kan ikke læses",
2526
- "contentInvalidBody": "Den er skrevet af en nyere version, eller den er ugyldig. Generer siden igen, eller slet den.",
2527
- "data": "Data",
2528
- "schemaFailed": "Tabellerne kunne ikke vises",
2529
- "schemaFailedBody": "Denne forbindelse er måske ikke analyseret endnu. Kør introspektion fra Studio → Dataforbindelser.",
2530
- "notBindable": "Denne skabelon er ikke knyttet til én tabel",
2531
- "notBindableBody": "Dens indhold bygges widget for widget i stedet. Åbn siden, og brug “Rediger” til at tilføje dem.",
2532
- "recompose": "Denne side bliver bygget om",
2533
- "recomposeBody": "Når du gemmer, erstattes indholdet af et nyt layout for skabelonen og tabellen ovenfor. Kolonnetilpasninger og widget-ændringer på siden går tabt.",
2534
- "missing": "Denne side findes ikke længere",
2535
- "missingBody": "Den er måske slettet eller fjernet af en generering.",
2536
- "details": "Detaljer",
2537
- "itemsPending": "Gem først ændringen ovenfor — sidens indhold bygges op igen ud fra den nye skabelon og tabel.",
2538
- "columns": "Kolonner",
2539
- "appearance": "Udseende"
2540
- },
2541
- "sidebar": {
2542
- "help": "Omarranger sider inden for en gruppe, eller flyt en til en anden gruppe. Ændringerne gælder for alle.",
2543
- "discard": "Kassér",
2544
- "save": "Gem rækkefølge",
2545
- "saveFailed": "Den nye rækkefølge kunne ikke gemmes",
2546
- "emptyGroup": "Ingen sider i denne gruppe.",
2547
- "moveUp": "Flyt {title} op",
2548
- "moveDown": "Flyt {title} ned",
2549
- "moveTo": "Flyt {title} til en gruppe",
2550
- "ungrouped": {
2551
- "title": "Nogle sider hører ikke til nogen gruppe",
2552
- "body": "Siderne virker på deres URL, men vises ingen steder i sidepanelet. Åbn hver enkelt og vælg en gruppe."
2553
- }
2554
- },
2555
- "columns": {
2556
- "help": "Omarranger kolonner, omdøb deres overskrifter, og vælg hvilke der vises i tabellen.",
2557
- "discard": "Kassér",
2558
- "save": "Gem kolonner",
2559
- "saveFailed": "Kolonnerne kunne ikke gemmes",
2560
- "pk": "Nøgle",
2561
- "pii": "PII",
2562
- "header": "Overskrift for {name}",
2563
- "shown": "Vist",
2564
- "toggle": "Vis {name} i tabellen",
2565
- "moveUp": "Flyt {name} op",
2566
- "moveDown": "Flyt {name} ned",
2567
- "remove": "Fjern {name}",
2568
- "none": {
2569
- "title": "Denne side har ingen kolonner endnu",
2570
- "body": "Kolonner læses fra tabellen, når siden genereres. Knyt siden til en tabel og generer igen for at udfylde dem."
2571
- }
2572
- },
2573
- "icon": {
2574
- "none": "Vælg et ikon",
2575
- "search": "Søg efter ikoner",
2576
- "noMatches": "Ingen ikoner matcher den søgning."
2577
- },
2578
- "preview": {
2579
- "untitled": "Side uden titel",
2580
- "note": "En illustration af layoutet, ikke dine data. Den rigtige side fyldes ud, når den er gemt."
2581
- },
2582
- "padding": {
2583
- "default": "Standard for denne skabelon",
2584
- "none": "Ingen",
2585
- "standard": "Standard (28 × 24)",
2586
- "custom": "Tilpasset…",
2587
- "x": "Sider (px)",
2588
- "y": "Top og bund (px)"
2589
- }
2590
- },
2591
1550
  "audit": {
2592
1551
  "action": {
2593
1552
  "view": "Vis"
@@ -2719,6 +1678,7 @@ export default {
2719
1678
  "exportsManage": "Administrér alles eksporter",
2720
1679
  "importsManage": "Administrér alles importer",
2721
1680
  "jobsManage": "Start og annullér baggrundsjob",
1681
+ "manifestsManage": "Installer og forbind tilføjelser",
2722
1682
  "jobsRead": "Se alle baggrundsjob",
2723
1683
  "llmRun": "Kør AI-assistance",
2724
1684
  "pagesManage": "Opret og organisér sider",
@@ -2740,7 +1700,7 @@ export default {
2740
1700
  },
2741
1701
  "security": {
2742
1702
  "password": {
2743
- "changedBody": "Brug den nye adgangskode, næste gang du logger ind. Sessioner andre enheder påvirkes ikke tilbagekald dem nedenfor, hvis du vil have dem logget ud.",
1703
+ "changedBody": "Brug den nye adgangskode, næste gang du logger ind. Andre enheder forbliver logget indafslut de sessioner, hvis du vil have dem ud.",
2744
1704
  "changed": "Adgangskoden er skiftet",
2745
1705
  "confirm": "Bekræft ny adgangskode",
2746
1706
  "current": "Nuværende adgangskode",