@adminiumjs/i18n 0.1.0-rc.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 (234) hide show
  1. package/LICENSE +661 -0
  2. package/dist/create-i18n.d.ts +48 -0
  3. package/dist/create-i18n.d.ts.map +1 -0
  4. package/dist/create-i18n.js +98 -0
  5. package/dist/create-i18n.js.map +1 -0
  6. package/dist/format/index.d.ts +70 -0
  7. package/dist/format/index.d.ts.map +1 -0
  8. package/dist/format/index.js +217 -0
  9. package/dist/format/index.js.map +1 -0
  10. package/dist/icu-format.d.ts +17 -0
  11. package/dist/icu-format.d.ts.map +1 -0
  12. package/dist/icu-format.js +52 -0
  13. package/dist/icu-format.js.map +1 -0
  14. package/dist/index.d.ts +16 -0
  15. package/dist/index.d.ts.map +1 -0
  16. package/dist/index.js +12 -0
  17. package/dist/index.js.map +1 -0
  18. package/dist/locales.d.ts +99 -0
  19. package/dist/locales.d.ts.map +1 -0
  20. package/dist/locales.js +55 -0
  21. package/dist/locales.js.map +1 -0
  22. package/dist/react.d.ts +26 -0
  23. package/dist/react.d.ts.map +1 -0
  24. package/dist/react.js +61 -0
  25. package/dist/react.js.map +1 -0
  26. package/dist/resources/ar-eg/common.d.ts +1964 -0
  27. package/dist/resources/ar-eg/common.d.ts.map +1 -0
  28. package/dist/resources/ar-eg/common.js +1963 -0
  29. package/dist/resources/ar-eg/common.js.map +1 -0
  30. package/dist/resources/ar-eg/errors.d.ts +45 -0
  31. package/dist/resources/ar-eg/errors.d.ts.map +1 -0
  32. package/dist/resources/ar-eg/errors.js +44 -0
  33. package/dist/resources/ar-eg/errors.js.map +1 -0
  34. package/dist/resources/ar-eg/generated.d.ts +20 -0
  35. package/dist/resources/ar-eg/generated.d.ts.map +1 -0
  36. package/dist/resources/ar-eg/generated.js +19 -0
  37. package/dist/resources/ar-eg/generated.js.map +1 -0
  38. package/dist/resources/ar-eg/studio.d.ts +18 -0
  39. package/dist/resources/ar-eg/studio.d.ts.map +1 -0
  40. package/dist/resources/ar-eg/studio.js +17 -0
  41. package/dist/resources/ar-eg/studio.js.map +1 -0
  42. package/dist/resources/ar-eg/ui.d.ts +996 -0
  43. package/dist/resources/ar-eg/ui.d.ts.map +1 -0
  44. package/dist/resources/ar-eg/ui.js +995 -0
  45. package/dist/resources/ar-eg/ui.js.map +1 -0
  46. package/dist/resources/cs-cz/common.d.ts +1964 -0
  47. package/dist/resources/cs-cz/common.d.ts.map +1 -0
  48. package/dist/resources/cs-cz/common.js +1963 -0
  49. package/dist/resources/cs-cz/common.js.map +1 -0
  50. package/dist/resources/cs-cz/errors.d.ts +45 -0
  51. package/dist/resources/cs-cz/errors.d.ts.map +1 -0
  52. package/dist/resources/cs-cz/errors.js +44 -0
  53. package/dist/resources/cs-cz/errors.js.map +1 -0
  54. package/dist/resources/cs-cz/generated.d.ts +20 -0
  55. package/dist/resources/cs-cz/generated.d.ts.map +1 -0
  56. package/dist/resources/cs-cz/generated.js +19 -0
  57. package/dist/resources/cs-cz/generated.js.map +1 -0
  58. package/dist/resources/cs-cz/studio.d.ts +18 -0
  59. package/dist/resources/cs-cz/studio.d.ts.map +1 -0
  60. package/dist/resources/cs-cz/studio.js +17 -0
  61. package/dist/resources/cs-cz/studio.js.map +1 -0
  62. package/dist/resources/cs-cz/ui.d.ts +996 -0
  63. package/dist/resources/cs-cz/ui.d.ts.map +1 -0
  64. package/dist/resources/cs-cz/ui.js +995 -0
  65. package/dist/resources/cs-cz/ui.js.map +1 -0
  66. package/dist/resources/da-dk/common.d.ts +1964 -0
  67. package/dist/resources/da-dk/common.d.ts.map +1 -0
  68. package/dist/resources/da-dk/common.js +1963 -0
  69. package/dist/resources/da-dk/common.js.map +1 -0
  70. package/dist/resources/da-dk/errors.d.ts +45 -0
  71. package/dist/resources/da-dk/errors.d.ts.map +1 -0
  72. package/dist/resources/da-dk/errors.js +44 -0
  73. package/dist/resources/da-dk/errors.js.map +1 -0
  74. package/dist/resources/da-dk/generated.d.ts +20 -0
  75. package/dist/resources/da-dk/generated.d.ts.map +1 -0
  76. package/dist/resources/da-dk/generated.js +19 -0
  77. package/dist/resources/da-dk/generated.js.map +1 -0
  78. package/dist/resources/da-dk/studio.d.ts +18 -0
  79. package/dist/resources/da-dk/studio.d.ts.map +1 -0
  80. package/dist/resources/da-dk/studio.js +17 -0
  81. package/dist/resources/da-dk/studio.js.map +1 -0
  82. package/dist/resources/da-dk/ui.d.ts +996 -0
  83. package/dist/resources/da-dk/ui.d.ts.map +1 -0
  84. package/dist/resources/da-dk/ui.js +995 -0
  85. package/dist/resources/da-dk/ui.js.map +1 -0
  86. package/dist/resources/de-de/common.d.ts +1964 -0
  87. package/dist/resources/de-de/common.d.ts.map +1 -0
  88. package/dist/resources/de-de/common.js +1963 -0
  89. package/dist/resources/de-de/common.js.map +1 -0
  90. package/dist/resources/de-de/errors.d.ts +45 -0
  91. package/dist/resources/de-de/errors.d.ts.map +1 -0
  92. package/dist/resources/de-de/errors.js +44 -0
  93. package/dist/resources/de-de/errors.js.map +1 -0
  94. package/dist/resources/de-de/generated.d.ts +20 -0
  95. package/dist/resources/de-de/generated.d.ts.map +1 -0
  96. package/dist/resources/de-de/generated.js +19 -0
  97. package/dist/resources/de-de/generated.js.map +1 -0
  98. package/dist/resources/de-de/studio.d.ts +18 -0
  99. package/dist/resources/de-de/studio.d.ts.map +1 -0
  100. package/dist/resources/de-de/studio.js +17 -0
  101. package/dist/resources/de-de/studio.js.map +1 -0
  102. package/dist/resources/de-de/ui.d.ts +996 -0
  103. package/dist/resources/de-de/ui.d.ts.map +1 -0
  104. package/dist/resources/de-de/ui.js +995 -0
  105. package/dist/resources/de-de/ui.js.map +1 -0
  106. package/dist/resources/en-us/common.d.ts +1964 -0
  107. package/dist/resources/en-us/common.d.ts.map +1 -0
  108. package/dist/resources/en-us/common.js +1963 -0
  109. package/dist/resources/en-us/common.js.map +1 -0
  110. package/dist/resources/en-us/errors.d.ts +45 -0
  111. package/dist/resources/en-us/errors.d.ts.map +1 -0
  112. package/dist/resources/en-us/errors.js +44 -0
  113. package/dist/resources/en-us/errors.js.map +1 -0
  114. package/dist/resources/en-us/generated.d.ts +20 -0
  115. package/dist/resources/en-us/generated.d.ts.map +1 -0
  116. package/dist/resources/en-us/generated.js +19 -0
  117. package/dist/resources/en-us/generated.js.map +1 -0
  118. package/dist/resources/en-us/studio.d.ts +18 -0
  119. package/dist/resources/en-us/studio.d.ts.map +1 -0
  120. package/dist/resources/en-us/studio.js +17 -0
  121. package/dist/resources/en-us/studio.js.map +1 -0
  122. package/dist/resources/en-us/ui.d.ts +996 -0
  123. package/dist/resources/en-us/ui.d.ts.map +1 -0
  124. package/dist/resources/en-us/ui.js +995 -0
  125. package/dist/resources/en-us/ui.js.map +1 -0
  126. package/dist/resources/fr-fr/common.d.ts +1964 -0
  127. package/dist/resources/fr-fr/common.d.ts.map +1 -0
  128. package/dist/resources/fr-fr/common.js +1963 -0
  129. package/dist/resources/fr-fr/common.js.map +1 -0
  130. package/dist/resources/fr-fr/errors.d.ts +45 -0
  131. package/dist/resources/fr-fr/errors.d.ts.map +1 -0
  132. package/dist/resources/fr-fr/errors.js +44 -0
  133. package/dist/resources/fr-fr/errors.js.map +1 -0
  134. package/dist/resources/fr-fr/generated.d.ts +20 -0
  135. package/dist/resources/fr-fr/generated.d.ts.map +1 -0
  136. package/dist/resources/fr-fr/generated.js +19 -0
  137. package/dist/resources/fr-fr/generated.js.map +1 -0
  138. package/dist/resources/fr-fr/studio.d.ts +18 -0
  139. package/dist/resources/fr-fr/studio.d.ts.map +1 -0
  140. package/dist/resources/fr-fr/studio.js +17 -0
  141. package/dist/resources/fr-fr/studio.js.map +1 -0
  142. package/dist/resources/fr-fr/ui.d.ts +996 -0
  143. package/dist/resources/fr-fr/ui.d.ts.map +1 -0
  144. package/dist/resources/fr-fr/ui.js +995 -0
  145. package/dist/resources/fr-fr/ui.js.map +1 -0
  146. package/dist/resources/index.d.ts +8 -0
  147. package/dist/resources/index.d.ts.map +1 -0
  148. package/dist/resources/index.js +21 -0
  149. package/dist/resources/index.js.map +1 -0
  150. package/dist/resources/lazy.d.ts +20 -0
  151. package/dist/resources/lazy.d.ts.map +1 -0
  152. package/dist/resources/lazy.js +49 -0
  153. package/dist/resources/lazy.js.map +1 -0
  154. package/dist/resources/zh-cn/common.d.ts +1964 -0
  155. package/dist/resources/zh-cn/common.d.ts.map +1 -0
  156. package/dist/resources/zh-cn/common.js +1963 -0
  157. package/dist/resources/zh-cn/common.js.map +1 -0
  158. package/dist/resources/zh-cn/errors.d.ts +45 -0
  159. package/dist/resources/zh-cn/errors.d.ts.map +1 -0
  160. package/dist/resources/zh-cn/errors.js +44 -0
  161. package/dist/resources/zh-cn/errors.js.map +1 -0
  162. package/dist/resources/zh-cn/generated.d.ts +20 -0
  163. package/dist/resources/zh-cn/generated.d.ts.map +1 -0
  164. package/dist/resources/zh-cn/generated.js +19 -0
  165. package/dist/resources/zh-cn/generated.js.map +1 -0
  166. package/dist/resources/zh-cn/studio.d.ts +18 -0
  167. package/dist/resources/zh-cn/studio.d.ts.map +1 -0
  168. package/dist/resources/zh-cn/studio.js +17 -0
  169. package/dist/resources/zh-cn/studio.js.map +1 -0
  170. package/dist/resources/zh-cn/ui.d.ts +996 -0
  171. package/dist/resources/zh-cn/ui.d.ts.map +1 -0
  172. package/dist/resources/zh-cn/ui.js +995 -0
  173. package/dist/resources/zh-cn/ui.js.map +1 -0
  174. package/dist/resources/zh-tw/common.d.ts +1964 -0
  175. package/dist/resources/zh-tw/common.d.ts.map +1 -0
  176. package/dist/resources/zh-tw/common.js +1963 -0
  177. package/dist/resources/zh-tw/common.js.map +1 -0
  178. package/dist/resources/zh-tw/errors.d.ts +45 -0
  179. package/dist/resources/zh-tw/errors.d.ts.map +1 -0
  180. package/dist/resources/zh-tw/errors.js +44 -0
  181. package/dist/resources/zh-tw/errors.js.map +1 -0
  182. package/dist/resources/zh-tw/generated.d.ts +20 -0
  183. package/dist/resources/zh-tw/generated.d.ts.map +1 -0
  184. package/dist/resources/zh-tw/generated.js +19 -0
  185. package/dist/resources/zh-tw/generated.js.map +1 -0
  186. package/dist/resources/zh-tw/studio.d.ts +18 -0
  187. package/dist/resources/zh-tw/studio.d.ts.map +1 -0
  188. package/dist/resources/zh-tw/studio.js +17 -0
  189. package/dist/resources/zh-tw/studio.js.map +1 -0
  190. package/dist/resources/zh-tw/ui.d.ts +996 -0
  191. package/dist/resources/zh-tw/ui.d.ts.map +1 -0
  192. package/dist/resources/zh-tw/ui.js +995 -0
  193. package/dist/resources/zh-tw/ui.js.map +1 -0
  194. package/locales/ar-EG/common.json +1954 -0
  195. package/locales/ar-EG/errors.json +35 -0
  196. package/locales/ar-EG/generated.json +10 -0
  197. package/locales/ar-EG/studio.json +8 -0
  198. package/locales/ar-EG/ui.json +986 -0
  199. package/locales/cs-CZ/common.json +1954 -0
  200. package/locales/cs-CZ/errors.json +35 -0
  201. package/locales/cs-CZ/generated.json +10 -0
  202. package/locales/cs-CZ/studio.json +8 -0
  203. package/locales/cs-CZ/ui.json +986 -0
  204. package/locales/da-DK/common.json +1954 -0
  205. package/locales/da-DK/errors.json +35 -0
  206. package/locales/da-DK/generated.json +10 -0
  207. package/locales/da-DK/studio.json +8 -0
  208. package/locales/da-DK/ui.json +986 -0
  209. package/locales/de-DE/common.json +1954 -0
  210. package/locales/de-DE/errors.json +35 -0
  211. package/locales/de-DE/generated.json +10 -0
  212. package/locales/de-DE/studio.json +8 -0
  213. package/locales/de-DE/ui.json +986 -0
  214. package/locales/en-US/common.json +1954 -0
  215. package/locales/en-US/errors.json +35 -0
  216. package/locales/en-US/generated.json +10 -0
  217. package/locales/en-US/studio.json +8 -0
  218. package/locales/en-US/ui.json +986 -0
  219. package/locales/fr-FR/common.json +1954 -0
  220. package/locales/fr-FR/errors.json +35 -0
  221. package/locales/fr-FR/generated.json +10 -0
  222. package/locales/fr-FR/studio.json +8 -0
  223. package/locales/fr-FR/ui.json +986 -0
  224. package/locales/zh-CN/common.json +1954 -0
  225. package/locales/zh-CN/errors.json +35 -0
  226. package/locales/zh-CN/generated.json +10 -0
  227. package/locales/zh-CN/studio.json +8 -0
  228. package/locales/zh-CN/ui.json +986 -0
  229. package/locales/zh-TW/common.json +1954 -0
  230. package/locales/zh-TW/errors.json +35 -0
  231. package/locales/zh-TW/generated.json +10 -0
  232. package/locales/zh-TW/studio.json +8 -0
  233. package/locales/zh-TW/ui.json +986 -0
  234. package/package.json +51 -0
@@ -0,0 +1,986 @@
1
+ {
2
+ "action": {
3
+ "close": "Luk",
4
+ "cancel": "Annuller",
5
+ "confirm": "Bekræft",
6
+ "save": "Gem",
7
+ "apply": "Anvend",
8
+ "delete": "Slet",
9
+ "edit": "Rediger",
10
+ "copy": "Kopiér",
11
+ "copied": "Kopieret",
12
+ "undo": "Fortryd",
13
+ "retry": "Prøv igen",
14
+ "clear": "Ryd",
15
+ "selectAll": "Vælg alle",
16
+ "clearSelection": "Ryd markering",
17
+ "showPassword": "Vis adgangskode",
18
+ "hidePassword": "Skjul adgangskode",
19
+ "reveal": "Vis",
20
+ "hide": "Skjul"
21
+ },
22
+ "state": {
23
+ "loading": "Indlæser…",
24
+ "empty": "Her er intet endnu",
25
+ "noResults": "Ingen resultater",
26
+ "optional": "Valgfrit",
27
+ "required": "Påkrævet",
28
+ "error": "Noget gik galt"
29
+ },
30
+ "pagination": {
31
+ "previous": "Forrige",
32
+ "next": "Næste",
33
+ "pageOf": "Side {page, number} af {pages, number}",
34
+ "rowsPerPage": "Rækker pr. side",
35
+ "range": "{from, number}–{to, number} af {total, number}"
36
+ },
37
+ "table": {
38
+ "sortAscending": "Sortér stigende",
39
+ "sortDescending": "Sortér faldende",
40
+ "rowActions": "Rækkehandlinger",
41
+ "selectRow": "Vælg række",
42
+ "selectAllRows": "Vælg alle rækker"
43
+ },
44
+ "dialog": {
45
+ "close": "Luk dialog",
46
+ "confirmTitle": "Er du sikker?"
47
+ },
48
+ "combobox": {
49
+ "placeholder": "Vælg…",
50
+ "search": "Søg…",
51
+ "noMatches": "Ingen match"
52
+ },
53
+ "toast": {
54
+ "dismiss": "Luk notifikation"
55
+ },
56
+ "widgets": {
57
+ "kpi": {
58
+ "statCard": {
59
+ "description": "Standardkortet til nøgletal: ét hovedtal med valgfri trendplakette og mini-sparkline."
60
+ },
61
+ "usageMeter": {
62
+ "description": "Kvoteforbrug op mod en grænse; bjælken skifter til gul og derefter rød ud over dine tærskler."
63
+ },
64
+ "statTileCompact": {
65
+ "description": "En smal nøgletalsflise med mikroetiket, trendchip og 6-bjælkers spark — til tætte rækker på 4 til 6."
66
+ },
67
+ "metricHero": {
68
+ "description": "Ét overdimensioneret nøgletal, der tæller op ved indlæsning, med trendplakette, spark og målfremdrift.",
69
+ "goalLabel": "Mål"
70
+ },
71
+ "statPairCard": {
72
+ "description": "To nøgletal side om side; det andet kan udledes af det første."
73
+ },
74
+ "gaugeRing": {
75
+ "description": "En ringmåler til en score eller procent, farvet efter det bånd, værdien falder i."
76
+ },
77
+ "gaugeArc": {
78
+ "description": "En speedometerbue med kvalitative bånd og en viser; viser også et gitter af målere."
79
+ },
80
+ "periodComparison": {
81
+ "description": "Denne periode mod den forrige som to bjælker, med forskellen beregnet nedenunder.",
82
+ "higherLabel": "højere",
83
+ "lowerLabel": "lavere",
84
+ "flatLabel": "uændret"
85
+ },
86
+ "microKpiSubtitle": {
87
+ "description": "Et enkeltlinjes nøgletal i sidehovedet, bygget ud fra en skabelon og genberegnet løbende."
88
+ },
89
+ "autoInsights": {
90
+ "description": "Rangerede indsigter — et hovedtal, en sætning og et spark — med rotation ved opdatering.",
91
+ "emptyTitle": "Ingen indsigter endnu",
92
+ "emptyBody": "Indsigter dukker op, når der er data nok til at se et mønster.",
93
+ "refreshLabel": "Opdatér"
94
+ }
95
+ },
96
+ "charts": {
97
+ "boxplot": {
98
+ "description": "Boksplot-oversigt over en numerisk kolonnes spredning pr. kategori – min, kvartiler, median og maks.",
99
+ "emptyTitle": "Ingen fordeling at vise",
100
+ "emptyBody": "Ingen rækker matchede filtrene til boksplot."
101
+ },
102
+ "violin": {
103
+ "description": "Spejlede tæthedskurver, der sammenligner en numerisk kolonnes fordeling på tværs af grupper.",
104
+ "emptyTitle": "Ingen fordeling at vise",
105
+ "emptyBody": "Ingen rækker matchede filtrene til tæthedsprofiler."
106
+ },
107
+ "ridgeline": {
108
+ "description": "Overlappende tætheds-rygge, der sammenligner en numerisk kolonne på tværs af ordnede grupper.",
109
+ "emptyTitle": "Ingen rygge at vise",
110
+ "emptyBody": "Ingen rækker matchede filtrene til tæthedsprofiler."
111
+ },
112
+ "scatterBubble": {
113
+ "description": "To numeriske kolonner som punkter, med valgfri boblestørrelse og en tendenslinje.",
114
+ "emptyTitle": "Ingen punkter at vise",
115
+ "emptyBody": "Ingen rækker matchede filtrene for de valgte kolonner."
116
+ },
117
+ "hexbin": {
118
+ "description": "Heksbinnet tæthed af to numeriske kolonner, farvet efter antal rækker pr. felt.",
119
+ "emptyTitle": "Ingen tæthed at vise",
120
+ "emptyBody": "Ingen rækker matchede filtrene til binning."
121
+ },
122
+ "correlationMatrix": {
123
+ "description": "Pearson-korrelation mellem valgte numeriske kolonner, fra stærkt positiv til stærkt negativ.",
124
+ "emptyTitle": "Intet at korrelere",
125
+ "emptyBody": "Vælg mindst to numeriske kolonner med matchende rækker."
126
+ },
127
+ "parallelCoordinates": {
128
+ "description": "Hver post som en linje på tværs af flere normaliserede numeriske akser, farvet efter kategori.",
129
+ "emptyTitle": "Ingen poster at vise",
130
+ "emptyBody": "Ingen rækker matchede filtrene på tværs af de valgte akser."
131
+ }
132
+ },
133
+ "feeds": {
134
+ "activityFeed": {
135
+ "description": "Et løbende feed over hvem der gjorde hvad i dit arbejdsområde, nyeste først.",
136
+ "emptyTitle": "Ingen nylig aktivitet",
137
+ "emptyBody": "Handlinger i dit arbejdsområde vises her."
138
+ },
139
+ "notificationFeed": {
140
+ "description": "Grupperede notifikationer med ulæst-status, filtre og indlejrede handlinger.",
141
+ "emptyTitle": "Ingen notifikationer",
142
+ "emptyBody": "Nye notifikationer vises her."
143
+ },
144
+ "realtimeFeed": {
145
+ "description": "Et live-hændelsesfeed, der føjer nye poster øverst, efterhånden som de ankommer.",
146
+ "emptyTitle": "Venter på hændelser",
147
+ "emptyBody": "Live-hændelser vises, efterhånden som de sker."
148
+ },
149
+ "timelineVertical": {
150
+ "description": "En lodret tidslinje over hændelser, udgivelser, hændelser eller kørselstrin.",
151
+ "emptyTitle": "Ingenting her endnu",
152
+ "emptyBody": "Hændelser vises på denne tidslinje, efterhånden som de sker."
153
+ },
154
+ "unreadBadge": {
155
+ "description": "En tællermærkat for ulæste elementer, synkroniseret med feedets tilstand.",
156
+ "unitLabel": "ulæste"
157
+ },
158
+ "loadOlderPaginator": {
159
+ "description": "En knap i bunden, der henter ældre poster i portioner, indtil feedet er opbrugt.",
160
+ "label": "Hent ældre",
161
+ "loadingLabel": "Henter …",
162
+ "exhaustedLabel": "Ikke mere",
163
+ "ofLabel": "af"
164
+ },
165
+ "toastStack": {
166
+ "description": "Overlay-værten for toasts: korte bekræftelser med valgfri fortryd.",
167
+ "undoLabel": "Fortryd",
168
+ "dismissLabel": "Luk",
169
+ "regionLabel": "Notifikationer"
170
+ }
171
+ },
172
+ "calendar": {
173
+ "calendarMonth": {
174
+ "description": "Et månedsgitter over planlagte begivenheder med chips pr. dag og månedsnavigation.",
175
+ "emptyTitle": "Intet planlagt",
176
+ "emptyBody": "Planlagte begivenheder vises i denne kalender."
177
+ },
178
+ "dayAgenda": {
179
+ "description": "Den valgte dags begivenheder som en tidsordnet dagsorden.",
180
+ "emptyTitle": "Intet planlagt",
181
+ "emptyBody": "Begivenheder for den valgte dag vises her."
182
+ },
183
+ "scheduleMatrix": {
184
+ "description": "Et vagtgitter efter ressource og dag med daglig dækning og en signaturforklaring.",
185
+ "emptyTitle": "Ingen vagter planlagt",
186
+ "emptyBody": "Tildelte vagter vises i denne plan."
187
+ },
188
+ "capacityBoard": {
189
+ "description": "Udnyttelsesbjælker pr. medlem med projektopdeling og belastningsstatus.",
190
+ "emptyTitle": "Ingen arbejdsbelastningsdata",
191
+ "emptyBody": "Medlemmernes udnyttelse vises her, når der findes tildelinger."
192
+ },
193
+ "calendarLegendFilter": {
194
+ "description": "Begivenhedskategorier med antal; et klik filtrerer kalenderen ved siden af.",
195
+ "emptyTitle": "Ingen kategorier endnu",
196
+ "emptyBody": "Begivenhedskategorier vises her, når der er begivenheder.",
197
+ "uncategorizedLabel": "Uden kategori"
198
+ },
199
+ "upcomingEventsList": {
200
+ "description": "De næste begivenheder i datorækkefølge, med ejer og status.",
201
+ "emptyTitle": "Intet på vej",
202
+ "emptyBody": "Planlagte begivenheder vises her, efterhånden som de oprettes."
203
+ },
204
+ "dateRangePicker": {
205
+ "description": "Et datointerval med hurtigvalg, der filtrerer resten af siden.",
206
+ "previousLabel": "Forrige måned",
207
+ "nextLabel": "Næste måned",
208
+ "summaryLabel": "{n} dage valgt",
209
+ "presets": {
210
+ "7d": "Seneste 7 dage",
211
+ "30d": "Seneste 30 dage",
212
+ "90d": "Seneste 90 dage",
213
+ "mtd": "Måned til dato",
214
+ "qtd": "Kvartal til dato",
215
+ "ytd": "År til dato"
216
+ }
217
+ },
218
+ "scheduledJobsList": {
219
+ "description": "Tilbagevendende rapporter og eksporter med kadence, næste kørsel og til/fra-knap.",
220
+ "emptyTitle": "Ingen planlagte job",
221
+ "emptyBody": "Tilbagevendende rapporter og eksporter vises her, når de er planlagt.",
222
+ "nextRunLabel": "Næste kørsel",
223
+ "toggleLabel": "Aktivér tidsplan",
224
+ "recipientsLabel": "Modtagere"
225
+ }
226
+ },
227
+ "tables": {
228
+ "masterList": {
229
+ "description": "En valgbar liste over poster, der styrer et detaljepanel.",
230
+ "emptyTitle": "Ingen elementer",
231
+ "emptyBody": "Elementer vises her, når de findes."
232
+ },
233
+ "logTable": {
234
+ "description": "En hændelseslog med søgning, fejlfilter og rækkehandlinger.",
235
+ "emptyTitle": "Ingen logposter",
236
+ "emptyBody": "Hændelser registreres her, efterhånden som de sker."
237
+ },
238
+ "cardGallery": {
239
+ "description": "Et responsivt galleri af entitetskort med status og hurtige handlinger.",
240
+ "emptyTitle": "Intet at vise",
241
+ "emptyBody": "Elementer vises her som kort."
242
+ },
243
+ "groupedSummaryTable": {
244
+ "description": "Grupperede rækker med aggregatkolonner, foldbare detaljer og totaler.",
245
+ "emptyTitle": "Ingen opsummeringsdata",
246
+ "emptyBody": "Grupperede totaler vises her, når der er data."
247
+ },
248
+ "schemaTree": {
249
+ "description": "En udforsker til skemaer, tabeller og kolonner med type- og nøglemærkater.",
250
+ "emptyTitle": "Intet skema indlæst",
251
+ "emptyBody": "Forbind en database for at udforske dens skema her."
252
+ },
253
+ "toggleMatrix": {
254
+ "description": "Et interaktivt gitter af boolske kontakter til roller, politikker eller kanaler.",
255
+ "emptyTitle": "Ingen matrix konfigureret",
256
+ "emptyBody": "Rækker og kolonner vises her, når de er konfigureret."
257
+ },
258
+ "sparklineTable": {
259
+ "description": "Målingsrækker med mini-graf, aktuel værdi og en ændringsmarkering, der skelner godt fra skidt.",
260
+ "emptyTitle": "Ingen målinger",
261
+ "emptyBody": "Målinger vises her, når der er data at opsummere."
262
+ },
263
+ "topMoversList": {
264
+ "description": "De målinger, der har ændret sig mest — retningen vurderes som god eller dårlig pr. måling.",
265
+ "emptyTitle": "Ingen bevægelser",
266
+ "emptyBody": "Målinger med de største ændringer vises her."
267
+ },
268
+ "rankedEntityList": {
269
+ "description": "Topemner efter en måling, hver med placering og en proportional bjælke.",
270
+ "emptyTitle": "Ingen rangering endnu",
271
+ "emptyBody": "Topemner vises her, når der er data at rangere."
272
+ },
273
+ "accordionList": {
274
+ "description": "Udfoldelige rækker med mærkat og detaljepanel, enkelt- eller flerudfoldning.",
275
+ "emptyTitle": "Intet at folde ud",
276
+ "emptyBody": "Poster vises her, når der er nogen."
277
+ },
278
+ "comparisonMatrix": {
279
+ "description": "Et funktionsgitter, der sammenligner abonnementer, med én fremhævet kolonne.",
280
+ "includedLabel": "Inkluderet",
281
+ "notIncludedLabel": "Ikke inkluderet",
282
+ "promotedLabel": "Anbefalet"
283
+ },
284
+ "chipCloud": {
285
+ "description": "Ombrydende chips til fundne tabeller, flettevariabler eller forslag.",
286
+ "emptyTitle": "Intet fundet endnu",
287
+ "emptyBody": "Tabeller og variabler vises her som chips, når de er fundet.",
288
+ "moreLabel": "+{n} mere"
289
+ }
290
+ },
291
+ "boards": {
292
+ "kanbanBoard": {
293
+ "description": "Faste statuskolonner med kort, der kan trækkes; træk et kort til en anden kolonne for at ændre dets status.",
294
+ "emptyTitle": "Ingen kort endnu",
295
+ "emptyBody": "Kort vises i deres statuskolonner, efterhånden som poster oprettes."
296
+ },
297
+ "kanbanSwimlaneGrid": {
298
+ "description": "Et gitter af baner × kolonner; at trække et kort tildeler både dets bane og dets status på ny.",
299
+ "emptyTitle": "Ingen baner at vise",
300
+ "emptyBody": "Gruppér poster efter et bane-felt og et status-felt for at opbygge gitteret."
301
+ },
302
+ "addCard": "Tilføj kort",
303
+ "grip": "Træk for at flytte kortet",
304
+ "pointsUnit": "pt.",
305
+ "laneSummary": "Σ{points} pt. · {count}",
306
+ "a11y": {
307
+ "grabbed": "{title} taget op. Brug piletasterne til at flytte, Enter for at slippe, Escape for at annullere.",
308
+ "over": "{title} er over {cell}.",
309
+ "moved": "{title} flyttet til {cell}.",
310
+ "returned": "{title} vendte tilbage til sin oprindelige placering.",
311
+ "failed": "{title} kunne ikke flyttes; den blev sat tilbage."
312
+ },
313
+ "boardCard": {
314
+ "description": "Ét tavlekort: mærkat, titel, fremdrift, ejer og forfaldsdato.",
315
+ "emptyTitle": "Intet kort",
316
+ "emptyBody": "Der er endnu ingen post knyttet til dette kort."
317
+ },
318
+ "inlineComposeCard": {
319
+ "description": "Hurtig tilføjelse, der opretter en post med kolonnens standardværdier.",
320
+ "placeholder": "Kortets titel…",
321
+ "addLabel": "Tilføj",
322
+ "cancelLabel": "Annuller",
323
+ "openLabel": "Tilføj kort"
324
+ }
325
+ },
326
+ "communication": {
327
+ "conversationInbox": {
328
+ "description": "En liste over samtaler, der kan vælges, med ulæste, tilstedeværelse og forhåndsvisning af seneste besked.",
329
+ "emptyTitle": "Ingen samtaler",
330
+ "emptyBody": "Samtaler vises her, efterhånden som beskeder ankommer.",
331
+ "noMatchesTitle": "Ingen samtaler matcher",
332
+ "searchLabel": "Søg i samtaler",
333
+ "searchPlaceholder": "Søg i samtaler…"
334
+ },
335
+ "chatThread": {
336
+ "description": "Beskedbobler grupperet efter afsender og dag, med vedhæftninger og et skrivefelt.",
337
+ "emptyTitle": "Ingen beskeder endnu",
338
+ "emptyBody": "Beskeder i denne samtale vises her.",
339
+ "composerPlaceholder": "Skriv en besked…",
340
+ "sendLabel": "Send",
341
+ "attachLabel": "Tilføj vedhæftning",
342
+ "typingLabel": "skriver…"
343
+ },
344
+ "aiChatPanel": {
345
+ "description": "Et assistentpanel til at stille spørgsmål om dit skema og dine data.",
346
+ "emptyTitle": "Spørg om dine data",
347
+ "emptyBody": "Stil et spørgsmål om dit skema, dine tabeller eller metrikker for at komme i gang.",
348
+ "composerPlaceholder": "Stil et spørgsmål…",
349
+ "sendLabel": "Send",
350
+ "pendingLabel": "Tænker…",
351
+ "configureTitle": "Ingen AI-udbyder konfigureret",
352
+ "configureBody": "Tilføj en Anthropic- eller OpenAI-nøgle — eller peg Adminium mod dit eget endpoint — for at stille spørgsmål om dit skema.",
353
+ "configureCtaLabel": "Konfigurér en udbyder"
354
+ },
355
+ "typingIndicator": {
356
+ "description": "En avatar og en kursiv “skriver…”-række, bundet til en live-boolean pr. samtale.",
357
+ "label": "skriver…",
358
+ "emptyTitle": "Ingen skriveaktivitet",
359
+ "emptyBody": "Skrivestatus vises her, når samtalen er aktiv."
360
+ },
361
+ "callWidget": {
362
+ "description": "Et indgående tale- eller videoopkald: opkalderens avatar, opkaldets status og handlinger til at acceptere eller afvise.",
363
+ "voiceLabel": "Taleopkald",
364
+ "videoLabel": "Videoopkald",
365
+ "ringingLabel": "Ringer…",
366
+ "connectingLabel": "Opretter forbindelse…",
367
+ "activeLabel": "I opkald",
368
+ "endedLabel": "Opkald afsluttet",
369
+ "acceptLabel": "Accepter",
370
+ "declineLabel": "Afvis",
371
+ "endLabel": "Afslut opkald",
372
+ "emptyTitle": "Intet aktivt opkald",
373
+ "emptyBody": "Et indgående opkald vises her."
374
+ }
375
+ },
376
+ "geo": {
377
+ "mapBubble": {
378
+ "description": "Et kort med cirkelmarkører, hvis størrelse følger den valgte måling, sammen med en rangliste over de største steder.",
379
+ "emptyTitle": "Ingen lokationer",
380
+ "emptyBody": "Rækker med bredde- og længdegrad vises her som kortmarkører.",
381
+ "mapUnavailableLabel": "Kortet kunne ikke indlæses. Ranglisten viser de samme data.",
382
+ "regionsLabel": "Førende regioner",
383
+ "metricLabel": "Måling"
384
+ },
385
+ "mapChoroplethGrid": {
386
+ "description": "Regionsfelter tonet efter værdi – til tabeller med regionskoder, men uden koordinater.",
387
+ "emptyTitle": "Ingen regioner",
388
+ "emptyBody": "Rækker med en regionskode og en talværdi vises her som tonede felter.",
389
+ "legendLowLabel": "Lav",
390
+ "legendHighLabel": "Høj"
391
+ }
392
+ },
393
+ "domain": {
394
+ "orgChart": {
395
+ "description": "Referencetræet bygget ud fra en persontabels lederreference, med foldbare grene.",
396
+ "emptyTitle": "Ingen rapporteringsstruktur",
397
+ "emptyBody": "Organisationsdiagrammet vises, når personrækker refererer til en leder.",
398
+ "reportsLabel": "Referenter · {count}",
399
+ "a11yLabel": "Organisationsdiagram"
400
+ },
401
+ "ganttChart": {
402
+ "description": "Opgavebjælker på en tidsakse grupperet efter fase, med fremdrift, milepæle og en dags-markør.",
403
+ "emptyTitle": "Intet planlagt",
404
+ "emptyBody": "Opgaver vises her, når de har start- og slutdato.",
405
+ "ungroupedLabel": "Opgaver"
406
+ },
407
+ "documentCanvas": {
408
+ "description": "Et dokumentlærred i papirstil — faktura, rapport eller e-mail — hvis blokke kan vælges, omarrangeres og fjernes.",
409
+ "emptyTitle": "Intet i dette dokument",
410
+ "emptyBody": "Tilføj en blok fra paletten for at begynde at bygge dokumentet.",
411
+ "addBlockLabel": "Tilføj blok",
412
+ "removeBlockLabel": "Fjern blok",
413
+ "moveUpLabel": "Flyt blok op",
414
+ "moveDownLabel": "Flyt blok ned",
415
+ "blockListLabel": "Dokumentblokke",
416
+ "billedToLabel": "Faktureret til",
417
+ "issuedLabel": "Udstedt",
418
+ "dueLabel": "Forfalder"
419
+ },
420
+ "blockTotalsSummary": {
421
+ "description": "Dokumentets totaler — subtotal, rabat, moms og det samlede skyldige beløb, genberegnet ud fra linjerne.",
422
+ "emptyTitle": "Ingen totaler endnu",
423
+ "emptyBody": "Totaler vises, når dokumentet har linjer.",
424
+ "subtotalLabel": "Subtotal",
425
+ "discountLabel": "Rabat",
426
+ "taxLabel": "Moms",
427
+ "totalLabel": "I alt at betale"
428
+ },
429
+ "blockLineItems": {
430
+ "description": "Redigerbare linjer med beskrivelse, antal og sats, der indgår i dokumentets totaler.",
431
+ "emptyTitle": "Ingen linjer",
432
+ "emptyBody": "Tilføj en linje for at fakturere arbejde på dette dokument.",
433
+ "descHeader": "Beskrivelse",
434
+ "qtyHeader": "Antal",
435
+ "rateHeader": "Sats",
436
+ "amountHeader": "Beløb"
437
+ },
438
+ "blockKpiRow": {
439
+ "description": "En række nøgletalsfliser, hvor ændringen farves efter fortegn.",
440
+ "emptyTitle": "Ingen nøgletal",
441
+ "emptyBody": "Nøgletal vises her, når rapporten har tal at vise."
442
+ },
443
+ "blockBarChart": {
444
+ "description": "Et mini-søjlediagram i dokumentets farve, tilpasset en dokumentblok.",
445
+ "emptyTitle": "Ingen data til diagrammet",
446
+ "emptyBody": "Søjlerne vises, når rapporten har en dataserie."
447
+ },
448
+ "blockLineChart": {
449
+ "description": "Et mini-kurvediagram med valgfrit udfyldt areal, tilpasset en dokumentblok.",
450
+ "emptyTitle": "Ingen data til diagrammet",
451
+ "emptyBody": "Kurven vises, når rapporten har en dataserie."
452
+ },
453
+ "blockTwoColTable": {
454
+ "description": "En tokolonnetabel med en formateret overskriftsrække og en værdikolonne med fast bredde.",
455
+ "emptyTitle": "Ingen rækker",
456
+ "emptyBody": "Rækker vises her, når rapporten har værdier at vise."
457
+ },
458
+ "blockTaxBreakdown": {
459
+ "description": "Momslinjer med tekst, sats og beløb, anvendt på dokumentets subtotal.",
460
+ "emptyTitle": "Ingen momslinjer",
461
+ "emptyBody": "Momslinjer vises, når dokumentet har satser at anvende."
462
+ },
463
+ "blockMultiCurrency": {
464
+ "description": "Dokumentets total omregnet pr. valuta til de angivne kurser.",
465
+ "emptyTitle": "Ingen omregninger",
466
+ "emptyBody": "Omregninger vises, når dokumentet angiver valutakurser.",
467
+ "footnote": "Kurserne er vejledende og kan afvige ved afregning."
468
+ },
469
+ "blockPaymentHistory": {
470
+ "description": "Tidligere betalinger med dato, maskeret betalingsmetode, beløb og statusmærkat.",
471
+ "emptyTitle": "Ingen betalinger endnu",
472
+ "emptyBody": "Betalinger på dette dokument vises her."
473
+ },
474
+ "blockDiscountCodes": {
475
+ "description": "Anvendte rabatkoder med tekst og krediteret beløb.",
476
+ "emptyTitle": "Ingen rabatter anvendt",
477
+ "emptyBody": "Rabatkoder anvendt på dette dokument vises her."
478
+ },
479
+ "blockLoyaltyBanner": {
480
+ "description": "Et loyalitetsbanner med pointsaldo, niveau og point optjent på denne ordre.",
481
+ "emptyTitle": "Ingen pointsaldo",
482
+ "emptyBody": "Loyalitetsbanneret vises, når kunden har en pointsaldo.",
483
+ "balanceLabel": "{balance} point · {tier}",
484
+ "earnedLabel": "+{earned} optjent på denne ordre"
485
+ },
486
+ "blockRecurringBanner": {
487
+ "description": "Et banner med faktureringsfrekvensen, næste opkrævningsdato og de resterende cyklusser.",
488
+ "emptyTitle": "Ikke tilbagevendende",
489
+ "emptyBody": "Dette banner vises, når dokumentet faktureres efter en fast plan.",
490
+ "template": "Tilbagevendende — {freq} · Næste den {next} · {count} cyklusser"
491
+ },
492
+ "blockQrPay": {
493
+ "description": "En scan-og-betal-flise med billedtekst og skyldigt beløb.",
494
+ "emptyTitle": "Intet at betale",
495
+ "emptyBody": "Betalingskoden vises, når dokumentet har et skyldigt beløb.",
496
+ "amountLabel": "Skyldigt beløb"
497
+ },
498
+ "blockDeliveryStepper": {
499
+ "description": "Vandrette leveringstrin markeret som fuldført, aktuelt eller kommende.",
500
+ "emptyTitle": "Ingen leveringstrin",
501
+ "emptyBody": "Trin vises, når ordren har en leveringsrute."
502
+ },
503
+ "blockSignature": {
504
+ "description": "Underskriftslinjer til navn og titel, med underskriftsdato.",
505
+ "emptyTitle": "Ingen underskrift",
506
+ "emptyBody": "Underskriftslinjerne vises, når dokumentet angiver en underskriver.",
507
+ "namePlaceholder": "Fulde navn",
508
+ "titlePlaceholder": "Titel",
509
+ "dateLabel": "Dato"
510
+ },
511
+ "blockTermsCheckbox": {
512
+ "description": "En vilkårsafkrydsning med redigerbar tekst.",
513
+ "defaultLabel": "Jeg accepterer vilkår og betingelser"
514
+ },
515
+ "blockApproval": {
516
+ "description": "Et godkenderkort med statusfarvet mærkat og valgfrie handlinger til at godkende eller afvise.",
517
+ "emptyTitle": "Ingen godkender",
518
+ "emptyBody": "Godkendelseskortet vises, når dokumentet angiver en godkender.",
519
+ "approveLabel": "Godkend",
520
+ "rejectLabel": "Afvis",
521
+ "pendingLabel": "Afventer",
522
+ "approvedLabel": "Godkendt",
523
+ "rejectedLabel": "Afvist"
524
+ },
525
+ "blockAttachments": {
526
+ "description": "Vedhæftede filer med navn og størrelse.",
527
+ "emptyTitle": "Ingen vedhæftede filer",
528
+ "emptyBody": "Filer vedhæftet dette dokument vises her."
529
+ },
530
+ "blockLateFees": {
531
+ "description": "En advarselsboks med rykkergebyret og fristen.",
532
+ "emptyTitle": "Intet rykkergebyr",
533
+ "emptyBody": "Denne boks vises, når dokumentet fastsætter et rykkergebyr.",
534
+ "template": "Et rykkergebyr på {rate} pålægges efter {days} dage."
535
+ },
536
+ "blockImagePlaceholder": {
537
+ "description": "En stiplet pladsholderboks i stedet for et billede, med billedtekst.",
538
+ "emptyTitle": "Intet billede",
539
+ "emptyBody": "Pladsholderen vises, når blokken har en billedtekst."
540
+ },
541
+ "blockContact": {
542
+ "description": "Kontaktlinjer med navn, e-mailadresse og telefonnummer.",
543
+ "emptyTitle": "Ingen kontakt",
544
+ "emptyBody": "Kontaktoplysninger vises, når dokumentet angiver en kontakt."
545
+ },
546
+ "blockHighlightBox": {
547
+ "description": "En fremhævningsboks, der parrer en tekst med en stor værdi med fast bredde.",
548
+ "emptyTitle": "Intet at fremhæve",
549
+ "emptyBody": "Boksen vises, når blokken har en værdi at vise."
550
+ },
551
+ "starterTemplatePicker": {
552
+ "description": "Et gitter af foruddefinerede skabeloner med genererede miniaturer; vælger du en, oprettes et helt dokument.",
553
+ "emptyTitle": "Ingen skabeloner",
554
+ "emptyBody": "Definer skabeloner i konfigurationen, eller tilknyt en skabelontabel."
555
+ },
556
+ "sloMonitorCard": {
557
+ "description": "SLA-kort pr. tjeneste med status, tilgængelighed op mod målet, daglig oppetidsstribe, fejlbudget og p95-latenstid.",
558
+ "emptyTitle": "Ingen overvågning",
559
+ "emptyBody": "Tilknyt en overvågningstabel med en status- og en tilgængelighedskolonne."
560
+ },
561
+ "uptimeSegmentBar": {
562
+ "description": "Dagsstriber i statusside-stil, farvet efter daglig status, med skift mellem 30 og 90 dage.",
563
+ "emptyTitle": "Ingen oppetidshistorik",
564
+ "emptyBody": "Daglige statusrækker vises her som en oppetidsstribe."
565
+ },
566
+ "experimentVariantCompare": {
567
+ "description": "Konverteringsbjælker pr. variant med løft i forhold til kontrollen og en signifikansmåler.",
568
+ "emptyTitle": "Ingen varianter",
569
+ "emptyBody": "Tilknyt en tabel med eksperimentvarianter og konverteringstal."
570
+ },
571
+ "creditCardTile": {
572
+ "description": "En gemt betalingsmetode som et brandet kort med maskeret nummer, indehaver og udløb.",
573
+ "emptyTitle": "Ingen betalingsmetode",
574
+ "emptyBody": "Tilføj et kort for at se det her."
575
+ },
576
+ "planPricingCards": {
577
+ "description": "Prisniveauer med skift mellem månedlig og årlig, funktionslister og et fremhævet abonnement.",
578
+ "emptyTitle": "Ingen abonnementer",
579
+ "emptyBody": "Tilknyt en abonnementstabel med navn og månedlig pris."
580
+ },
581
+ "apiKeysPanel": {
582
+ "description": "API-nøgler med miljømærker, maskerede værdier, tilladelser, seneste brug samt handlinger til at kopiere, forny og tilbagekalde.",
583
+ "emptyTitle": "Ingen API-nøgler",
584
+ "emptyBody": "Opret en nøgle for at begynde at kalde API'et."
585
+ },
586
+ "apiPlayground": {
587
+ "description": "En anmodningsbygger med parametre og et svarpanel. Den sammensætter kun og sender aldrig en rigtig anmodning.",
588
+ "emptyTitle": "Intet endepunkt valgt",
589
+ "emptyBody": "Vælg et endepunkt for at sammensætte en anmodning mod det."
590
+ },
591
+ "codeSnippetBlock": {
592
+ "description": "Et kodeuddrag, der kan kopieres, med et sprogmærke og valgfrie faner pr. sprog.",
593
+ "emptyTitle": "Intet uddrag",
594
+ "emptyBody": "Tilknyt en kodekolonne, eller angiv et statisk uddrag i konfigurationen."
595
+ },
596
+ "webhookEndpointsList": {
597
+ "description": "Webhook-endepunkter med hændelse, mål-URL, seneste udløsning og en aktiveringskontakt.",
598
+ "emptyTitle": "Ingen endepunkter",
599
+ "emptyBody": "Tilføj et webhook-endepunkt for at modtage tabelhændelser."
600
+ },
601
+ "resourceApiCard": {
602
+ "description": "En tabels genererede API-flade: antal rækker, sikkerhedsmærke, metodemærker og anmodningsvolumen.",
603
+ "emptyTitle": "Ingen ressource",
604
+ "emptyBody": "Tilknyt en tabel for at vise dens genererede API-flade."
605
+ },
606
+ "liveTimer": {
607
+ "description": "Et stopur med start og stop til en opgave; når du stopper det, oprettes en tidsregistrering.",
608
+ "emptyTitle": "Intet stopur",
609
+ "emptyBody": "Tilknyt en tidsregistreringsrække med en opgave og en varighedskolonne."
610
+ },
611
+ "syncStatusCard": {
612
+ "description": "Forbindelsens identitet, latenstid, synkroniserede rækker og synkroniseringsplan med en handling til at synkronisere nu.",
613
+ "emptyTitle": "Ingen forbindelse",
614
+ "emptyBody": "Tilknyt en forbindelsesrække for at vise dens synkroniseringsstatus."
615
+ },
616
+ "ipAllowlistCard": {
617
+ "description": "Faste udgående IP-adresser, der skal tillades i en firewall, hver med en kopiknap.",
618
+ "emptyTitle": "Ingen udgående IP-adresser",
619
+ "emptyBody": "Udgående adresser vises her, når forbindelsen er klargjort."
620
+ },
621
+ "onboardingChecklist": {
622
+ "description": "Opsætningstrin med tidsestimater og handlinger over en løbende opdateret fremdriftsring og -bjælke.",
623
+ "emptyTitle": "Intet at sætte op",
624
+ "emptyBody": "Tilføj onboarding-trin i konfigurationen, eller tilknyt en trintabel."
625
+ },
626
+ "testimonialCard": {
627
+ "description": "Et kundecitat med avatar og kildeangivelse.",
628
+ "emptyTitle": "Ingen udtalelse",
629
+ "emptyBody": "Tilknyt en citatrække for at vise en kundeudtalelse."
630
+ },
631
+ "trustBadges": {
632
+ "description": "En række af compliance- og tillidsudsagn adskilt af prikker.",
633
+ "emptyTitle": "Ingen mærker",
634
+ "emptyBody": "Tilføj compliance-udsagn i konfigurationen, eller tilknyt en mærketabel."
635
+ },
636
+ "policyList": {
637
+ "description": "Sikkerhedspolitikker på rækkeniveau pr. tabel med kommando, rolle og en aktiveringskontakt.",
638
+ "emptyTitle": "Ingen politikker",
639
+ "emptyBody": "Denne tabel har endnu ingen sikkerhedspolitikker på rækkeniveau."
640
+ }
641
+ },
642
+ "media": {
643
+ "fileBrowser": {
644
+ "description": "Gennemse filer og mapper som et felt-gitter eller en liste – med brødkrummesti, typeikoner og stjernemarkering.",
645
+ "emptyTitle": "Denne mappe er tom",
646
+ "emptyBody": "Upload filer eller opret en mappe for at komme i gang."
647
+ },
648
+ "uploadDropzone": {
649
+ "description": "Et træk-og-slip-mål til upload af filer, med format- og størrelsesbegrænsninger.",
650
+ "dropTitle": "Slip filer for at uploade",
651
+ "browsePrefix": "eller",
652
+ "browseLabel": "gennemse"
653
+ },
654
+ "uploadProgressList": {
655
+ "description": "Rækker pr. fil med statuslinje og status; driver også job i eksportkøen.",
656
+ "emptyTitle": "Ingen uploads i gang",
657
+ "emptyBody": "Filer, du uploader, viser deres fremdrift her."
658
+ },
659
+ "attachmentList": {
660
+ "description": "Filer vedhæftet en post, med typeikoner, størrelser og handlinger til download eller sletning.",
661
+ "emptyTitle": "Ingen vedhæftede filer",
662
+ "emptyBody": "Filer vedhæftet denne post vises her."
663
+ },
664
+ "imageBoard": {
665
+ "description": "Et moodboard-gitter af billedpladser med billedtekster, til tabeller med billed-URL'er.",
666
+ "emptyTitle": "Ingen billeder endnu",
667
+ "emptyBody": "Referencebilleder vises på denne tavle."
668
+ },
669
+ "linkList": {
670
+ "description": "Referencelinks med titler og URL'er, der åbnes i en ny fane.",
671
+ "emptyTitle": "Ingen links endnu",
672
+ "emptyBody": "Referencelinks vises her."
673
+ },
674
+ "root": "Filer",
675
+ "breadcrumb": "Brødkrummesti",
676
+ "gridView": "Gittervisning",
677
+ "listView": "Listevisning",
678
+ "nameHeader": "Navn",
679
+ "sizeHeader": "Størrelse",
680
+ "modifiedHeader": "Ændret",
681
+ "star": "Stjernemarkér",
682
+ "items": "elementer",
683
+ "done": "Færdig",
684
+ "failed": "Mislykkedes",
685
+ "queued": "I kø",
686
+ "retry": "Prøv igen",
687
+ "download": "Download",
688
+ "cancel": "Annullér",
689
+ "delete": "Slet",
690
+ "remove": "Fjern",
691
+ "addImage": "Tilføj billede",
692
+ "caption": "Billedtekst",
693
+ "addLink": "Tilføj link",
694
+ "linkTitlePlaceholder": "Titel",
695
+ "linkUrlPlaceholder": "https://…",
696
+ "add": "Tilføj"
697
+ },
698
+ "forms": {
699
+ "modalWizard": {
700
+ "description": "En modal opret-formular med bekræftelse — standardflowet for “ny post”.",
701
+ "trigger": "Opret",
702
+ "submit": "Opret",
703
+ "cancel": "Annuller",
704
+ "done": "Færdig",
705
+ "successTitle": "Post oprettet",
706
+ "successBody": "Posten blev gemt.",
707
+ "required": "Dette felt er påkrævet."
708
+ },
709
+ "drawerForm": {
710
+ "description": "En sidepanel-formular til at oprette eller redigere poster med mange felter.",
711
+ "trigger": "Ny",
712
+ "submit": "Gem",
713
+ "cancel": "Annuller"
714
+ },
715
+ "stepper": {
716
+ "description": "En trinindikator, der viser hvor langt et flerdelt forløb er nået.",
717
+ "a11yLabel": "Fremdrift"
718
+ },
719
+ "progressBar": {
720
+ "description": "En fremdriftslinje med procentangivelse.",
721
+ "label": "Fremdrift"
722
+ },
723
+ "otpInput": {
724
+ "description": "Et felt til engangskoder.",
725
+ "label": "Engangskode"
726
+ },
727
+ "chipInput": {
728
+ "description": "Tag-input: chips der kan fjernes, plus fritekst der bekræftes med Enter.",
729
+ "remove": "Fjern",
730
+ "placeholder": "Skriv og tryk Enter…"
731
+ },
732
+ "segmentedControl": {
733
+ "description": "En enkeltvalgskontrol til perioder, miljøer og filtre.",
734
+ "a11yLabel": "Vælg en mulighed"
735
+ },
736
+ "filterChipBar": {
737
+ "description": "Filterchips med live-tællere beregnet ud fra listen, de filtrerer.",
738
+ "all": "Alle",
739
+ "a11yLabel": "Filtrer",
740
+ "meta": "{shown} af {total}"
741
+ },
742
+ "toggleSwitchList": {
743
+ "description": "En liste med indstillinger, hver med en kontakt.",
744
+ "save": "Gem",
745
+ "dirty": "Du har ugemte ændringer",
746
+ "emptyTitle": "Ingen indstillinger",
747
+ "emptyBody": "Indstillinger vises her, når de er konfigureret."
748
+ },
749
+ "optionCards": {
750
+ "description": "Et kortgitter med enkeltvalg til kilder, skabeloner og abonnementer.",
751
+ "a11yLabel": "Vælg en mulighed"
752
+ },
753
+ "ruleBuilder": {
754
+ "description": "En betingelsesbygger, hvis regler bliver til et filter — segmenteditoren.",
755
+ "add": "Tilføj betingelse",
756
+ "remove": "Fjern betingelse",
757
+ "all": "ALLE",
758
+ "any": "MINDST ÉN",
759
+ "field": "Felt",
760
+ "operator": "Operator",
761
+ "value": "Værdi",
762
+ "valuePlaceholder": "Værdi…",
763
+ "emptyBody": "Ingen betingelser endnu — tilføj en for at definere dette segment."
764
+ },
765
+ "flowBuilder": {
766
+ "description": "Et lodret workflow-lærred af trigger-, betingelses- og handlingstrin.",
767
+ "add": "Tilføj trin",
768
+ "remove": "Fjern trin",
769
+ "paletteTitle": "Tilføj et trin",
770
+ "stats": "{runs} kørsler · {rate} % succes",
771
+ "emptyBody": "Ingen trin endnu — tilføj en trigger for at starte dette workflow."
772
+ },
773
+ "connectionStringField": {
774
+ "description": "Et forbindelsesstreng-felt, der genkender databasemotoren, mens du skriver.",
775
+ "label": "Forbindelsesstreng",
776
+ "helper": "postgres://bruger:adgangskode@vært:5432/database — mysql:// og sqlite: virker også.",
777
+ "quickFill": "Hurtig udfyldning:",
778
+ "host": "Vært: {host}",
779
+ "invalidScheme": "Ukendt skema i forbindelsesstrengen.",
780
+ "incomplete": "Tilføj vært og database til forbindelsesstrengen."
781
+ },
782
+ "tableInclusionChecklist": {
783
+ "description": "Tabellerne der skal medtages, med rækketal og advarsler om personoplysninger.",
784
+ "pii": "Personoplysninger",
785
+ "highVolume": "stor mængde",
786
+ "a11yLabel": "Tabeller der medtages",
787
+ "emptyTitle": "Ingen tabeller fundet",
788
+ "emptyBody": "Forbind en database, så vises dens tabeller her."
789
+ },
790
+ "columnMappingTable": {
791
+ "description": "Knytter kolonnerne i en uploadet fil til felterne i en tabel.",
792
+ "skip": "Importér ikke",
793
+ "sourceHeader": "Kildekolonne",
794
+ "sampleHeader": "Eksempel",
795
+ "targetHeader": "Målfelt",
796
+ "emptyTitle": "Ingen kolonner at knytte",
797
+ "emptyBody": "Upload en fil, så vises dens kolonner her."
798
+ },
799
+ "validationIssuesList": {
800
+ "description": "Import- og valideringsproblemer, de alvorligste først, med antal berørte rækker.",
801
+ "emptyTitle": "Ingen problemer fundet",
802
+ "emptyBody": "Alt ser godt ud — du kan importere."
803
+ },
804
+ "exportBuilder": {
805
+ "description": "Opbygger en dataeksport: format, datointerval og indhold.",
806
+ "format": "Format",
807
+ "from": "Fra",
808
+ "to": "Til",
809
+ "groupBy": "Gruppér efter",
810
+ "includeCharts": "Medtag diagrammer",
811
+ "email": "Send eksporten til mig på e-mail",
812
+ "submit": "Eksportér",
813
+ "running": "Forbereder din eksport…",
814
+ "done": "Eksporten er klar",
815
+ "failed": "Eksporten mislykkedes. Prøv igen.",
816
+ "download": "Download"
817
+ },
818
+ "questionBuilder": {
819
+ "description": "En spørgeskemaeditor: tilføj spørgsmålstyper og ombyt rækkefølgen.",
820
+ "paletteTitle": "Tilføj et spørgsmål",
821
+ "add": "Tilføj spørgsmål",
822
+ "remove": "Fjern spørgsmål",
823
+ "moveUp": "Flyt op",
824
+ "moveDown": "Flyt ned",
825
+ "required": "Påkrævet",
826
+ "questionPlaceholder": "Stil et spørgsmål…",
827
+ "emptyTitle": "Ingen spørgsmål endnu",
828
+ "emptyBody": "Vælg en spørgsmålstype for at begynde på dit spørgeskema."
829
+ },
830
+ "inlineEditableField": {
831
+ "description": "En værdi, der redigeres med et klik inde i et dokument eller lærred.",
832
+ "edit": "Rediger",
833
+ "save": "Gem",
834
+ "cancel": "Annullér",
835
+ "empty": "Tom"
836
+ },
837
+ "passwordStrengthMeter": {
838
+ "description": "En firedelt måler for adgangskodens styrke.",
839
+ "label": "Adgangskodens styrke",
840
+ "weak": "Svag",
841
+ "fair": "Middel",
842
+ "good": "God",
843
+ "strong": "Stærk"
844
+ }
845
+ },
846
+ "chrome": {
847
+ "sidebarNav": {
848
+ "description": "Appens grupperede navigationspanel med live-tællere.",
849
+ "a11yLabel": "Hovednavigation",
850
+ "emptyTitle": "Ingen navigation endnu",
851
+ "emptyBody": "Inkluderede tabeller vises her, når en forbindelse er genereret."
852
+ },
853
+ "commandPalette": {
854
+ "description": "⌘K-paletten: søg efter handlinger, sider og poster hvor som helst fra.",
855
+ "title": "Kommandopalet",
856
+ "placeholder": "Søg efter handlinger, sider og poster…",
857
+ "navigate": "Naviger",
858
+ "select": "Åbn",
859
+ "close": "Luk",
860
+ "emptyTitle": "Ingen resultater",
861
+ "emptyBody": "Begynd at skrive for at søge.",
862
+ "groupActions": "Handlinger",
863
+ "groupNavigate": "Naviger",
864
+ "groupRecent": "Seneste",
865
+ "groupPages": "Sider",
866
+ "groupMetrics": "Målinger",
867
+ "groupPeople": "Personer",
868
+ "groupRecords": "Poster"
869
+ },
870
+ "globalSearch": {
871
+ "description": "Søg på tværs af alle entiteter med typefiltre og resultatuddrag.",
872
+ "placeholder": "Søg i alt…",
873
+ "all": "Alle",
874
+ "summary": "{count} resultater for “{query}”",
875
+ "emptyTitle": "Ingen resultater",
876
+ "emptyBody": "Prøv et andet søgeord."
877
+ },
878
+ "breadcrumb": {
879
+ "description": "Stien til den aktuelle post eller mappe.",
880
+ "a11yLabel": "Brødkrummesti"
881
+ },
882
+ "tabBar": {
883
+ "description": "Faner der skifter paneler eller navigerer, valgfrit med tællere.",
884
+ "a11yLabel": "Faner"
885
+ },
886
+ "navCard": {
887
+ "description": "Et gitter af linkkort til forsider og oversigtssider.",
888
+ "emptyTitle": "Intet at vise",
889
+ "emptyBody": "Links vises her, når siderne er genereret."
890
+ },
891
+ "shortcutsPanel": {
892
+ "description": "Oversigten over tastaturgenveje.",
893
+ "footerHint": "Tryk ? når som helst",
894
+ "then": "derefter",
895
+ "emptyTitle": "Ingen genveje registreret."
896
+ },
897
+ "avatarStack": {
898
+ "description": "Overlappende avatarer med “+N”-overløb og valgfri tilstedeværelse.",
899
+ "online": "{count} online"
900
+ }
901
+ },
902
+ "system": {
903
+ "stateHero": {
904
+ "description": "En statusskærm i fuld side til 404, 500, offline, ingen adgang og vedligeholdelse.",
905
+ "notFoundTitle": "Denne side kørte forkert",
906
+ "notFoundBody": "Siden du leder efter blev flyttet, omdøbt, eller har aldrig eksisteret.",
907
+ "serverErrorTitle": "Noget gik galt hos os",
908
+ "serverErrorBody": "Fejlen blev logget og teamet underrettet. Et nyt forsøg virker ofte.",
909
+ "offlineTitle": "Du er offline",
910
+ "offlineBody": "Tjek din forbindelse — dashboardet forbinder automatisk igen.",
911
+ "forbiddenTitle": "Du har ikke adgang",
912
+ "forbiddenBody": "Bed en arbejdsområde-administrator om adgang til denne side.",
913
+ "maintenanceTitle": "Nede til vedligeholdelse",
914
+ "maintenanceBody": "Vi gør tingene bedre. Det tager som regel få minutter.",
915
+ "connErrorTitle": "Kan ikke nå databasen",
916
+ "connErrorBody": "Forbindelsen blev afvist eller fik timeout. Tjek forbindelsesindstillingerne.",
917
+ "backToDashboard": "Tilbage til dashboard",
918
+ "tryAgain": "Prøv igen",
919
+ "retry": "Prøv igen",
920
+ "testConnection": "Test forbindelse"
921
+ },
922
+ "emptyState": {
923
+ "description": "Et centreret “intet her endnu”-panel med valgfrie handlinger."
924
+ },
925
+ "statusPill": {
926
+ "description": "Et farvekodet badge til en enum-kolonne — den universelle statusvisning."
927
+ },
928
+ "alertBanner": {
929
+ "description": "En indlejret besked om kvoter, fastfrysning og planlægning.",
930
+ "dismiss": "Luk"
931
+ },
932
+ "statusBannerHero": {
933
+ "description": "En service-sundhedsbanner, hvis tilstand udledes af den værste service på listen.",
934
+ "upTitle": "Alle systemer kører",
935
+ "upBody": "Alle overvågede services svarer normalt.",
936
+ "degradedTitle": "Forringet ydeevne",
937
+ "degradedBody": "Nogle services er langsommere end normalt. Vi undersøger det.",
938
+ "downTitle": "Større nedbrud",
939
+ "downBody": "En eller flere services er utilgængelige. Vi er på sagen."
940
+ },
941
+ "connectionStatus": {
942
+ "description": "Forbindelses- eller testresultatet for en databaseforbindelse.",
943
+ "idle": "Ikke forbundet",
944
+ "connecting": "Forbinder…",
945
+ "connected": "Forbundet",
946
+ "failed": "Kunne ikke forbinde",
947
+ "test": "Test"
948
+ },
949
+ "autosaveIndicator": {
950
+ "description": "Mærket “ugemt → gemmer → gemt” til dokumenter med automatisk lagring.",
951
+ "dirty": "Ugemte ændringer",
952
+ "saving": "Gemmer…",
953
+ "saved": "Alle ændringer gemt",
954
+ "error": "Kunne ikke gemme"
955
+ },
956
+ "progressLogConsole": {
957
+ "description": "En streamende logkonsol med fremdriftslinje til langvarige opgaver.",
958
+ "a11yLabel": "Fremdriftslog",
959
+ "progressLabel": "Fremdrift",
960
+ "emptyTitle": "Intet at rapportere endnu",
961
+ "emptyBody": "Loglinjer vises her, når opgaven starter."
962
+ },
963
+ "diagnosticsReadout": {
964
+ "description": "Resultater af forbindelsestjek som farvekodede nøgle/værdi-rækker med tidsstempel.",
965
+ "checkedAt": "Senest tjekket",
966
+ "host": "Vært",
967
+ "dns": "DNS",
968
+ "tcp": "TCP",
969
+ "tls": "TLS",
970
+ "auth": "Godkendelse",
971
+ "latency": "Svartid"
972
+ }
973
+ }
974
+ },
975
+ "grid": {
976
+ "dragHandle": "Træk for at flytte {title}",
977
+ "resizeHandle": "Tilpas størrelsen på {title}",
978
+ "a11y": {
979
+ "grabbed": "{title} taget. Brug piletasterne til at flytte, hold Skift for at ændre størrelse, Enter for at gemme, Escape for at annullere.",
980
+ "moved": "{title} flyttet til kolonne {col}, række {row}.",
981
+ "resized": "{title} ændret til {w} kolonner gange {h} rækker.",
982
+ "committed": "{title} placeret i kolonne {col}, række {row}.",
983
+ "reverted": "{title} sat tilbage til sin oprindelige position."
984
+ }
985
+ }
986
+ }