@kinetis/vector-ui 0.0.0-stage → 0.9.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 (282) hide show
  1. package/CHANGELOG.md +34 -0
  2. package/LICENSE +18 -0
  3. package/README.md +72 -2
  4. package/app/app.config.ts +63 -0
  5. package/app/app.vue +11 -0
  6. package/app/components/Vx/Action/Dialog.vue +107 -0
  7. package/app/components/Vx/Cell/Boolean.vue +10 -0
  8. package/app/components/Vx/Cell/Color.vue +12 -0
  9. package/app/components/Vx/Cell/Count.vue +12 -0
  10. package/app/components/Vx/Cell/Date.vue +10 -0
  11. package/app/components/Vx/Cell/DateTime.vue +10 -0
  12. package/app/components/Vx/Cell/Email.vue +9 -0
  13. package/app/components/Vx/Cell/Enum.vue +14 -0
  14. package/app/components/Vx/Cell/File.vue +30 -0
  15. package/app/components/Vx/Cell/Image.vue +38 -0
  16. package/app/components/Vx/Cell/Json.vue +18 -0
  17. package/app/components/Vx/Cell/KeyValue.vue +25 -0
  18. package/app/components/Vx/Cell/Markdown.vue +18 -0
  19. package/app/components/Vx/Cell/Money.vue +16 -0
  20. package/app/components/Vx/Cell/Number.vue +16 -0
  21. package/app/components/Vx/Cell/Relation.vue +16 -0
  22. package/app/components/Vx/Cell/RichText.vue +41 -0
  23. package/app/components/Vx/Cell/Text.vue +13 -0
  24. package/app/components/Vx/Cell/Url.vue +11 -0
  25. package/app/components/Vx/Cell.vue +25 -0
  26. package/app/components/Vx/CommandPalette.vue +118 -0
  27. package/app/components/Vx/Confirm.vue +19 -0
  28. package/app/components/Vx/Dashboard.vue +27 -0
  29. package/app/components/Vx/FieldsForm.vue +46 -0
  30. package/app/components/Vx/Import/Dialog.vue +131 -0
  31. package/app/components/Vx/Inbox.vue +49 -0
  32. package/app/components/Vx/Input/Boolean.vue +10 -0
  33. package/app/components/Vx/Input/Currency.vue +25 -0
  34. package/app/components/Vx/Input/DateTime.vue +38 -0
  35. package/app/components/Vx/Input/Enum.vue +21 -0
  36. package/app/components/Vx/Input/KeyValue.vue +78 -0
  37. package/app/components/Vx/Input/Markdown.vue +120 -0
  38. package/app/components/Vx/Input/Money.vue +47 -0
  39. package/app/components/Vx/Input/Number.vue +24 -0
  40. package/app/components/Vx/Input/Relation.vue +127 -0
  41. package/app/components/Vx/Input/Repeater.vue +134 -0
  42. package/app/components/Vx/Input/RichText.vue +182 -0
  43. package/app/components/Vx/Input/Text.vue +21 -0
  44. package/app/components/Vx/Input/Textarea.vue +20 -0
  45. package/app/components/Vx/Input/Upload.vue +89 -0
  46. package/app/components/Vx/Layout.vue +111 -0
  47. package/app/components/Vx/List/BulkBar.vue +44 -0
  48. package/app/components/Vx/List/BulkEdit.vue +91 -0
  49. package/app/components/Vx/List/ColumnManager.vue +74 -0
  50. package/app/components/Vx/List/FilterBar.vue +224 -0
  51. package/app/components/Vx/List/ViewMenu.vue +115 -0
  52. package/app/components/Vx/Notifications.vue +9 -0
  53. package/app/components/Vx/Resource/Audit.vue +82 -0
  54. package/app/components/Vx/Resource/Form.vue +351 -0
  55. package/app/components/Vx/Resource/RelationPanel.vue +217 -0
  56. package/app/components/Vx/Resource/Show.vue +35 -0
  57. package/app/components/Vx/Resource/Table.vue +513 -0
  58. package/app/components/Vx/Widget/Card.vue +80 -0
  59. package/app/components/Vx/Widget/Partition.vue +21 -0
  60. package/app/components/Vx/Widget/Progress.vue +22 -0
  61. package/app/components/Vx/Widget/Stat.vue +22 -0
  62. package/app/components/Vx/Widget/Table.vue +31 -0
  63. package/app/components/Vx/Widget/Trend.vue +37 -0
  64. package/app/composables/useConfirm.ts +34 -0
  65. package/app/composables/useLeaveGuard.ts +21 -0
  66. package/app/composables/useVectorApi.ts +74 -0
  67. package/app/composables/useVectorAuthStore.ts +252 -0
  68. package/app/composables/useVectorBranding.ts +45 -0
  69. package/app/composables/useVectorDashboards.ts +15 -0
  70. package/app/composables/useVectorExtensions.ts +44 -0
  71. package/app/composables/useVectorFields.ts +68 -0
  72. package/app/composables/useVectorForm.ts +36 -0
  73. package/app/composables/useVectorIdle.ts +39 -0
  74. package/app/composables/useVectorImpersonation.ts +78 -0
  75. package/app/composables/useVectorInputs.ts +61 -0
  76. package/app/composables/useVectorJobs.ts +62 -0
  77. package/app/composables/useVectorLocale.ts +70 -0
  78. package/app/composables/useVectorNotifications.ts +24 -0
  79. package/app/composables/useVectorNotificationsInbox.ts +26 -0
  80. package/app/composables/useVectorPreferences.ts +30 -0
  81. package/app/composables/useVectorResource.ts +305 -0
  82. package/app/composables/useVectorRuntime.ts +42 -0
  83. package/app/composables/useVectorSchema.ts +56 -0
  84. package/app/composables/useVectorT.ts +9 -0
  85. package/app/composables/useVectorViews.ts +25 -0
  86. package/app/i18n/ar/actions.ts +11 -0
  87. package/app/i18n/ar/common.ts +23 -0
  88. package/app/i18n/ar/dashboard.ts +28 -0
  89. package/app/i18n/ar/fields.ts +77 -0
  90. package/app/i18n/ar/index.ts +12 -0
  91. package/app/i18n/ar/jobs.ts +36 -0
  92. package/app/i18n/ar/list.ts +160 -0
  93. package/app/i18n/ar/record.ts +62 -0
  94. package/app/i18n/ar/settings.ts +10 -0
  95. package/app/i18n/ar/shell.ts +54 -0
  96. package/app/i18n/de/actions.ts +11 -0
  97. package/app/i18n/de/common.ts +23 -0
  98. package/app/i18n/de/dashboard.ts +28 -0
  99. package/app/i18n/de/fields.ts +77 -0
  100. package/app/i18n/de/index.ts +12 -0
  101. package/app/i18n/de/jobs.ts +36 -0
  102. package/app/i18n/de/list.ts +160 -0
  103. package/app/i18n/de/record.ts +62 -0
  104. package/app/i18n/de/settings.ts +10 -0
  105. package/app/i18n/de/shell.ts +54 -0
  106. package/app/i18n/en/actions.ts +11 -0
  107. package/app/i18n/en/common.ts +23 -0
  108. package/app/i18n/en/dashboard.ts +28 -0
  109. package/app/i18n/en/fields.ts +77 -0
  110. package/app/i18n/en/index.ts +12 -0
  111. package/app/i18n/en/jobs.ts +36 -0
  112. package/app/i18n/en/list.ts +160 -0
  113. package/app/i18n/en/record.ts +62 -0
  114. package/app/i18n/en/settings.ts +10 -0
  115. package/app/i18n/en/shell.ts +54 -0
  116. package/app/i18n/es/actions.ts +11 -0
  117. package/app/i18n/es/common.ts +23 -0
  118. package/app/i18n/es/dashboard.ts +28 -0
  119. package/app/i18n/es/fields.ts +77 -0
  120. package/app/i18n/es/index.ts +12 -0
  121. package/app/i18n/es/jobs.ts +36 -0
  122. package/app/i18n/es/list.ts +160 -0
  123. package/app/i18n/es/record.ts +62 -0
  124. package/app/i18n/es/settings.ts +10 -0
  125. package/app/i18n/es/shell.ts +54 -0
  126. package/app/i18n/fr/actions.ts +11 -0
  127. package/app/i18n/fr/common.ts +23 -0
  128. package/app/i18n/fr/dashboard.ts +28 -0
  129. package/app/i18n/fr/fields.ts +77 -0
  130. package/app/i18n/fr/index.ts +12 -0
  131. package/app/i18n/fr/jobs.ts +36 -0
  132. package/app/i18n/fr/list.ts +160 -0
  133. package/app/i18n/fr/record.ts +62 -0
  134. package/app/i18n/fr/settings.ts +10 -0
  135. package/app/i18n/fr/shell.ts +54 -0
  136. package/app/i18n/he/actions.ts +11 -0
  137. package/app/i18n/he/common.ts +23 -0
  138. package/app/i18n/he/dashboard.ts +28 -0
  139. package/app/i18n/he/fields.ts +77 -0
  140. package/app/i18n/he/index.ts +12 -0
  141. package/app/i18n/he/jobs.ts +36 -0
  142. package/app/i18n/he/list.ts +160 -0
  143. package/app/i18n/he/record.ts +62 -0
  144. package/app/i18n/he/settings.ts +10 -0
  145. package/app/i18n/he/shell.ts +54 -0
  146. package/app/i18n/index.ts +111 -0
  147. package/app/i18n/it/actions.ts +11 -0
  148. package/app/i18n/it/common.ts +23 -0
  149. package/app/i18n/it/dashboard.ts +28 -0
  150. package/app/i18n/it/fields.ts +77 -0
  151. package/app/i18n/it/index.ts +12 -0
  152. package/app/i18n/it/jobs.ts +36 -0
  153. package/app/i18n/it/list.ts +160 -0
  154. package/app/i18n/it/record.ts +62 -0
  155. package/app/i18n/it/settings.ts +10 -0
  156. package/app/i18n/it/shell.ts +54 -0
  157. package/app/i18n/ja/actions.ts +11 -0
  158. package/app/i18n/ja/common.ts +23 -0
  159. package/app/i18n/ja/dashboard.ts +28 -0
  160. package/app/i18n/ja/fields.ts +77 -0
  161. package/app/i18n/ja/index.ts +12 -0
  162. package/app/i18n/ja/jobs.ts +36 -0
  163. package/app/i18n/ja/list.ts +160 -0
  164. package/app/i18n/ja/record.ts +62 -0
  165. package/app/i18n/ja/settings.ts +10 -0
  166. package/app/i18n/ja/shell.ts +54 -0
  167. package/app/i18n/ko/actions.ts +11 -0
  168. package/app/i18n/ko/common.ts +23 -0
  169. package/app/i18n/ko/dashboard.ts +28 -0
  170. package/app/i18n/ko/fields.ts +77 -0
  171. package/app/i18n/ko/index.ts +12 -0
  172. package/app/i18n/ko/jobs.ts +36 -0
  173. package/app/i18n/ko/list.ts +160 -0
  174. package/app/i18n/ko/record.ts +62 -0
  175. package/app/i18n/ko/settings.ts +10 -0
  176. package/app/i18n/ko/shell.ts +54 -0
  177. package/app/i18n/nl/actions.ts +11 -0
  178. package/app/i18n/nl/common.ts +23 -0
  179. package/app/i18n/nl/dashboard.ts +28 -0
  180. package/app/i18n/nl/fields.ts +77 -0
  181. package/app/i18n/nl/index.ts +12 -0
  182. package/app/i18n/nl/jobs.ts +36 -0
  183. package/app/i18n/nl/list.ts +160 -0
  184. package/app/i18n/nl/record.ts +62 -0
  185. package/app/i18n/nl/settings.ts +10 -0
  186. package/app/i18n/nl/shell.ts +54 -0
  187. package/app/i18n/pl/actions.ts +11 -0
  188. package/app/i18n/pl/common.ts +23 -0
  189. package/app/i18n/pl/dashboard.ts +28 -0
  190. package/app/i18n/pl/fields.ts +77 -0
  191. package/app/i18n/pl/index.ts +12 -0
  192. package/app/i18n/pl/jobs.ts +36 -0
  193. package/app/i18n/pl/list.ts +160 -0
  194. package/app/i18n/pl/record.ts +62 -0
  195. package/app/i18n/pl/settings.ts +10 -0
  196. package/app/i18n/pl/shell.ts +54 -0
  197. package/app/i18n/pt/actions.ts +11 -0
  198. package/app/i18n/pt/common.ts +23 -0
  199. package/app/i18n/pt/dashboard.ts +28 -0
  200. package/app/i18n/pt/fields.ts +77 -0
  201. package/app/i18n/pt/index.ts +12 -0
  202. package/app/i18n/pt/jobs.ts +36 -0
  203. package/app/i18n/pt/list.ts +160 -0
  204. package/app/i18n/pt/record.ts +62 -0
  205. package/app/i18n/pt/settings.ts +10 -0
  206. package/app/i18n/pt/shell.ts +54 -0
  207. package/app/i18n/pt-BR/actions.ts +11 -0
  208. package/app/i18n/pt-BR/common.ts +23 -0
  209. package/app/i18n/pt-BR/dashboard.ts +28 -0
  210. package/app/i18n/pt-BR/fields.ts +77 -0
  211. package/app/i18n/pt-BR/index.ts +12 -0
  212. package/app/i18n/pt-BR/jobs.ts +36 -0
  213. package/app/i18n/pt-BR/list.ts +160 -0
  214. package/app/i18n/pt-BR/record.ts +62 -0
  215. package/app/i18n/pt-BR/settings.ts +10 -0
  216. package/app/i18n/pt-BR/shell.ts +54 -0
  217. package/app/i18n/ru/actions.ts +11 -0
  218. package/app/i18n/ru/common.ts +23 -0
  219. package/app/i18n/ru/dashboard.ts +28 -0
  220. package/app/i18n/ru/fields.ts +77 -0
  221. package/app/i18n/ru/index.ts +12 -0
  222. package/app/i18n/ru/jobs.ts +36 -0
  223. package/app/i18n/ru/list.ts +160 -0
  224. package/app/i18n/ru/record.ts +62 -0
  225. package/app/i18n/ru/settings.ts +10 -0
  226. package/app/i18n/ru/shell.ts +54 -0
  227. package/app/i18n/tr/actions.ts +11 -0
  228. package/app/i18n/tr/common.ts +23 -0
  229. package/app/i18n/tr/dashboard.ts +28 -0
  230. package/app/i18n/tr/fields.ts +77 -0
  231. package/app/i18n/tr/index.ts +12 -0
  232. package/app/i18n/tr/jobs.ts +36 -0
  233. package/app/i18n/tr/list.ts +160 -0
  234. package/app/i18n/tr/record.ts +62 -0
  235. package/app/i18n/tr/settings.ts +10 -0
  236. package/app/i18n/tr/shell.ts +54 -0
  237. package/app/i18n/uk/actions.ts +11 -0
  238. package/app/i18n/uk/common.ts +23 -0
  239. package/app/i18n/uk/dashboard.ts +28 -0
  240. package/app/i18n/uk/fields.ts +77 -0
  241. package/app/i18n/uk/index.ts +12 -0
  242. package/app/i18n/uk/jobs.ts +36 -0
  243. package/app/i18n/uk/list.ts +160 -0
  244. package/app/i18n/uk/record.ts +62 -0
  245. package/app/i18n/uk/settings.ts +10 -0
  246. package/app/i18n/uk/shell.ts +54 -0
  247. package/app/i18n/zh-Hans/actions.ts +11 -0
  248. package/app/i18n/zh-Hans/common.ts +23 -0
  249. package/app/i18n/zh-Hans/dashboard.ts +28 -0
  250. package/app/i18n/zh-Hans/fields.ts +77 -0
  251. package/app/i18n/zh-Hans/index.ts +12 -0
  252. package/app/i18n/zh-Hans/jobs.ts +36 -0
  253. package/app/i18n/zh-Hans/list.ts +160 -0
  254. package/app/i18n/zh-Hans/record.ts +62 -0
  255. package/app/i18n/zh-Hans/settings.ts +10 -0
  256. package/app/i18n/zh-Hans/shell.ts +54 -0
  257. package/app/layouts/default.vue +8 -0
  258. package/app/layouts/vector.vue +238 -0
  259. package/app/middleware/vector-auth.ts +16 -0
  260. package/app/pages/d/[name].vue +12 -0
  261. package/app/pages/index.vue +22 -0
  262. package/app/pages/jobs/[id].vue +52 -0
  263. package/app/pages/jobs/index.vue +42 -0
  264. package/app/pages/login.vue +109 -0
  265. package/app/pages/p/[name].vue +37 -0
  266. package/app/pages/r/[resource]/[id]/edit.vue +54 -0
  267. package/app/pages/r/[resource]/[id]/index.vue +143 -0
  268. package/app/pages/r/[resource]/create.vue +53 -0
  269. package/app/pages/r/[resource]/index.vue +29 -0
  270. package/app/pages/settings.vue +104 -0
  271. package/app/plugins/vector-csp.client.ts +14 -0
  272. package/app/plugins/vector-extensions.client.ts +84 -0
  273. package/app/plugins/vector-i18n.ts +76 -0
  274. package/app/types/vector.ts +438 -0
  275. package/app/utils/files.ts +14 -0
  276. package/app/utils/format.ts +100 -0
  277. package/app/utils/richtext.ts +305 -0
  278. package/app/utils/rules.ts +113 -0
  279. package/app/utils/translate.ts +45 -0
  280. package/app/utils/widgets.ts +11 -0
  281. package/nuxt.config.ts +83 -0
  282. package/package.json +83 -5
@@ -0,0 +1,62 @@
1
+ // The record area's strings; see common.ts for words every area shares.
2
+ export default {
3
+ unknownResource: 'Bilinmeyen kaynak',
4
+ new: 'Yeni',
5
+ newTitle: 'Yeni {label}',
6
+ editTitle: 'Düzenle: {title}',
7
+ createNotAllowed: 'Bu kaynak burada kayıt oluşturmaya izin vermiyor.',
8
+ editNotAllowed: 'Bu kaydı düzenleyemezsiniz.',
9
+ saved: '{label} kaydedildi.',
10
+ duplicate: 'Çoğalt',
11
+ copyOf: '“{title}” kaydının bir kopyası. Benzersiz olması gereken değerler ve dosyalar boş başlar.',
12
+ variants: {
13
+ menu: 'Diğer kaydetme seçenekleri',
14
+ saveContinue: 'Kaydet ve düzenlemeye devam et',
15
+ createContinue: 'Oluştur ve düzenlemeye devam et',
16
+ createAnother: 'Oluştur ve yenisini ekle',
17
+ },
18
+ leave: {
19
+ title: 'Değişiklikleriniz atılsın mı?',
20
+ text: 'Bu sayfadan ayrılırsanız kaydetmediğiniz değişiklikler kaybolur.',
21
+ discard: 'Değişiklikleri at',
22
+ },
23
+ inTrash: 'Çöp kutusunda',
24
+ deleteTitle: '{noun} “{title}” silinsin mi?',
25
+ deleteForeverTitle: '{noun} “{title}” kalıcı olarak silinsin mi?',
26
+ deleteSoftText: 'Çöp kutusuna taşınır ve geri yüklenebilir.',
27
+ deleteHardText: 'Bu işlem geri alınamaz.',
28
+ trashed: '{label} çöp kutusuna taşındı.',
29
+ deleted: '{label} silindi.',
30
+ restored: '{label} geri yüklendi.',
31
+ impersonate: {
32
+ action: 'Kimliğine bürün',
33
+ title: '“{title}” olarak işlem yapılsın mı?',
34
+ text: 'Onun görebildiklerini görür, yapabildiklerini yaparsınız; her değişiklik onun adına, kimliğine bürünen olarak siz belirtilerek kaydedilir.',
35
+ started: 'Artık {title} olarak işlem yapıyorsunuz.',
36
+ },
37
+ audit: {
38
+ title: 'Geçmiş',
39
+ byUser: 'kullanıcı: {actor}',
40
+ impersonatedBy: '(kimliğine bürünen: {impersonator})',
41
+ empty: 'Kayıtlı değişiklik yok.',
42
+ revert: 'Geri al',
43
+ revertLabel: 'Bu değişikliği geri al',
44
+ revertTitle: 'Bu değişiklik geri alınsın mı?',
45
+ revertText: 'Şu alanların önceki değerini geri getirir: {fields}. Geri alma işlemi de geçmişe kaydedilir.',
46
+ reverted: 'Değişiklik geri alındı.',
47
+ },
48
+ panel: {
49
+ attach: 'İlişkilendir',
50
+ attachTitle: 'İlişkilendir: {label}',
51
+ attachCount: 'İlişkilendir ({count})',
52
+ attached: '{count} {label} ilişkilendirildi.',
53
+ records: 'kayıt',
54
+ record: 'kayıt',
55
+ empty: 'Henüz {label} yok.',
56
+ detach: 'Ayır',
57
+ detachLabel: 'Ayır: {title}',
58
+ detachTitle: '“{title}” ayrılsın mı?',
59
+ detachText: 'Bir {target} olarak kalır; yalnızca bu {owner} ile bağlantısı kaldırılır.',
60
+ detached: '{title} ayrıldı.',
61
+ },
62
+ }
@@ -0,0 +1,10 @@
1
+ // The settings area's strings; see common.ts for words every area shares.
2
+ export default {
3
+ pageTitle: 'Ayarlar',
4
+ heading: 'Ayarlar',
5
+ empty: {
6
+ title: 'Ayar yok',
7
+ text: 'Bu hesabın yönetebileceği kayıtlı bir şey yok.',
8
+ },
9
+ saved: '{label} kaydedildi.',
10
+ }
@@ -0,0 +1,54 @@
1
+ // The shell area's strings; see common.ts for words every area shares.
2
+ export default {
3
+ titleTemplate: '{title} · {brand}',
4
+ brandSubtitle: 'Yönetim',
5
+ account: 'Hesap',
6
+ signOut: 'Oturumu kapat',
7
+ toggleNavigation: 'Gezinmeyi aç/kapat',
8
+ toggleTheme: 'Temayı değiştir',
9
+ language: 'Dil: {name}',
10
+ languageFailed: 'Dil kaydedilemedi: {error}',
11
+ nav: {
12
+ main: 'Ana',
13
+ dashboard: 'Pano',
14
+ jobs: 'İşler',
15
+ settings: 'Ayarlar',
16
+ pages: 'Sayfalar',
17
+ badge: '{count} {label}',
18
+ },
19
+ page: {
20
+ unknown: 'Bilinmeyen sayfa',
21
+ loading: 'Sayfa yükleniyor',
22
+ },
23
+ impersonation: {
24
+ actingAs: 'Şu anda {name} olarak işlem yapıyorsunuz.',
25
+ anotherUser: 'başka bir kullanıcı',
26
+ stop: 'Kimliğine bürünmeyi bitir',
27
+ noAccess: '{name} yönetim paneline erişemiyor, bu yüzden onun gözünden görülecek bir şey yok. Kimliğine bürünme sonlandırıldı.',
28
+ noToken: 'Uygulama belirteç veya yeniden yükleme olmadan yanıt verdi; hiçbir şey değişmedi.',
29
+ },
30
+ palette: {
31
+ placeholder: 'Kayıt ve kaynak ara…',
32
+ records: 'Kayıtlar',
33
+ resources: 'Kaynaklar',
34
+ noMatch: 'Eşleşen kayıt yok',
35
+ },
36
+ inbox: {
37
+ title: 'Bildirimler',
38
+ markAllRead: 'Tümünü okundu işaretle',
39
+ empty: 'Henüz bir şey yok',
40
+ },
41
+ login: {
42
+ pageTitle: 'Oturum aç · {brand}',
43
+ subtitle: 'Yönetim paneline oturum açın',
44
+ email: 'E-posta',
45
+ password: 'Parola',
46
+ submit: 'Oturum aç',
47
+ invalidEmail: 'Geçerli bir e-posta adresi girin',
48
+ welcome: 'Tekrar hoş geldiniz, {name}.',
49
+ signedOutIdle: '{minutes} dakika boyunca işlem yapılmadığı için oturumunuz kapatıldı. Kaldığınız yerden devam etmek için yeniden giriş yapın.',
50
+ },
51
+ home: {
52
+ title: 'Pano',
53
+ },
54
+ }
@@ -0,0 +1,11 @@
1
+ // The actions area's strings; see common.ts for words every area shares.
2
+ export default {
3
+ // "Run {action} on {subject}?", with the action's label in bold.
4
+ runOn: 'Виконати {action} для {subject}?',
5
+ subjectAll: 'усіх відповідних записів ({label}: {count})',
6
+ subjectCount: '{count} {label}',
7
+ done: '{label}: виконано.',
8
+ declined: 'Дію відхилено.',
9
+ downloadStarted: 'Завантаження розпочато.',
10
+ queued: '{label}: додано до черги.',
11
+ }
@@ -0,0 +1,23 @@
1
+ // Words every area shares. Keep a key here only when two areas or more use it.
2
+ export default {
3
+ save: 'Зберегти',
4
+ cancel: 'Скасувати',
5
+ create: 'Створити',
6
+ edit: 'Редагувати',
7
+ delete: 'Видалити',
8
+ deleteForever: 'Видалити назавжди',
9
+ restore: 'Відновити',
10
+ close: 'Закрити',
11
+ apply: 'Застосувати',
12
+ remove: 'Прибрати',
13
+ search: 'Пошук',
14
+ loading: 'Завантаження…',
15
+ required: 'Обов’язкове',
16
+ none: '—',
17
+ yes: 'Так',
18
+ no: 'Ні',
19
+ download: 'Завантажити',
20
+ actions: 'Дії',
21
+ confirm: 'Підтвердити',
22
+ serverRejected: 'Сервер відхилив запит.',
23
+ }
@@ -0,0 +1,28 @@
1
+ // The dashboard area's strings; see common.ts for words every area shares.
2
+ export default {
3
+ title: 'Панель керування',
4
+ range: 'Період',
5
+ loading: 'Завантаження',
6
+ percent: '{value}%',
7
+ duration: {
8
+ minutes: '{value} хв',
9
+ hours: '{value} год',
10
+ },
11
+ partition: {
12
+ empty: 'За цей період нічого немає.',
13
+ },
14
+ progress: {
15
+ of: 'з {target}',
16
+ label: 'Прогрес',
17
+ },
18
+ stat: {
19
+ previous: 'проти {value} раніше',
20
+ },
21
+ table: {
22
+ empty: 'Немає даних для показу.',
23
+ seeAll: 'Переглянути все',
24
+ },
25
+ trend: {
26
+ total: 'Усього {value}',
27
+ },
28
+ }
@@ -0,0 +1,77 @@
1
+ // The fields area's strings; see common.ts for words every area shares.
2
+ export default {
3
+ cell: {
4
+ loading: 'Завантаження: {label}',
5
+ },
6
+ keyValue: {
7
+ key: 'Ключ',
8
+ value: 'Значення',
9
+ entry: 'Запис {n}',
10
+ add: 'Додати запис',
11
+ remove: 'Видалити запис {n}',
12
+ more: 'ще +{count}',
13
+ repeated: 'Використано більше одного разу: {keys}. Зберігається останнє.',
14
+ },
15
+ repeater: {
16
+ add: 'Додати {label}',
17
+ remove: 'Видалити {label} {n}',
18
+ row: '{label} {n}',
19
+ count: '{count} з {max} можливих',
20
+ unavailable: 'Ви не можете переглядати ці рядки.',
21
+ },
22
+ relation: {
23
+ placeholder: 'Почніть вводити для пошуку',
24
+ dependsFirst: 'Спершу виберіть {label}',
25
+ },
26
+ upload: {
27
+ storageKey: 'Ключ файлу у сховищі.',
28
+ tooLarge: 'Файл більший за {size} МБ.',
29
+ rejected: 'Файл {message}',
30
+ uploaded: 'Завантажено {name} ({size} КБ)',
31
+ theFile: 'файл',
32
+ upTo: 'до {size} МБ',
33
+ preview: 'Попередній перегляд: {label}',
34
+ remove: 'Видалити {label}',
35
+ },
36
+ richtext: {
37
+ toolbar: 'Форматування: {label}',
38
+ bold: 'Жирний',
39
+ italic: 'Курсив',
40
+ underline: 'Підкреслений',
41
+ strike: 'Закреслений',
42
+ code: 'Код',
43
+ heading: 'Заголовок {level}',
44
+ bulletList: 'Маркований список',
45
+ orderedList: 'Нумерований список',
46
+ blockquote: 'Цитата',
47
+ codeBlock: 'Блок коду',
48
+ horizontalRule: 'Роздільник',
49
+ link: 'Посилання',
50
+ linkUrl: 'Адреса посилання',
51
+ linkRefused: 'Використовуйте посилання http(s), mailto або відносне',
52
+ insertTable: 'Вставити таблицю',
53
+ addRow: 'Додати рядок',
54
+ addColumn: 'Додати стовпець',
55
+ deleteRow: 'Видалити рядок',
56
+ deleteColumn: 'Видалити стовпець',
57
+ deleteTable: 'Видалити таблицю',
58
+ image: 'Вставити зображення',
59
+ undo: 'Скасувати',
60
+ redo: 'Повторити',
61
+ source: 'Вихідний код',
62
+ visual: 'Візуальний',
63
+ sourceOf: 'Вихідний код: {label}',
64
+ },
65
+ rules: {
66
+ maxLength: 'Максимум символів: {max}',
67
+ minLength: 'Мінімум символів: {min}',
68
+ email: 'Введіть дійсну адресу електронної пошти',
69
+ url: 'Введіть дійсну URL-адресу',
70
+ greaterThan: 'Має бути більше за {limit}',
71
+ greaterThanOrEqual: 'Має бути не менше {limit}',
72
+ lessThan: 'Має бути менше за {limit}',
73
+ lessThanOrEqual: 'Має бути не більше {limit}',
74
+ invalidFormat: 'Неправильний формат',
75
+ notAllowed: 'Недопустиме значення',
76
+ },
77
+ }
@@ -0,0 +1,12 @@
1
+ import actions from './actions'
2
+ import common from './common'
3
+ import dashboard from './dashboard'
4
+ import fields from './fields'
5
+ import jobs from './jobs'
6
+ import list from './list'
7
+ import record from './record'
8
+ import settings from './settings'
9
+ import shell from './shell'
10
+
11
+ /** Ukrainian (machine translation): one object per area of the UI, mirroring en. */
12
+ export default { common, shell, list, record, actions, dashboard, jobs, settings, fields }
@@ -0,0 +1,36 @@
1
+ // The jobs area's strings; see common.ts for words every area shares.
2
+ export default {
3
+ title: 'Завдання',
4
+ heading: 'Фонові завдання',
5
+ columns: {
6
+ job: 'Завдання',
7
+ resource: 'Ресурс',
8
+ status: 'Статус',
9
+ progress: 'Прогрес',
10
+ started: 'Розпочато',
11
+ },
12
+ empty: 'Завдань ще немає. Тут з’являються великі експорти, імпорти й дії в черзі.',
13
+ kind: {
14
+ action: 'дія',
15
+ export: 'експорт',
16
+ import: 'імпорт',
17
+ },
18
+ status: {
19
+ queued: 'у черзі',
20
+ running: 'виконується',
21
+ done: 'виконано',
22
+ failed: 'помилка',
23
+ stalled: 'зависло',
24
+ },
25
+ detail: {
26
+ pageTitle: 'Завдання #{id}',
27
+ fallbackTitle: 'Завдання',
28
+ started: 'розпочато {date}',
29
+ finished: 'завершено {date}',
30
+ progress: 'Прогрес завдання',
31
+ processed: 'Оброблено: {processed}',
32
+ processedOfTotal: 'Оброблено {processed} з {total}',
33
+ download: 'Завантажити {file}',
34
+ file: 'файл',
35
+ },
36
+ }
@@ -0,0 +1,160 @@
1
+ // The list area's strings; see common.ts for words every area shares.
2
+ export default {
3
+ field: 'Поле',
4
+ search: 'Пошук: {label}…',
5
+ noSearch: 'Немає полів для пошуку',
6
+ noGrouping: 'Без групування',
7
+ groupBy: 'Групувати за',
8
+ groupHeader: '{label}:',
9
+ expandGroup: 'Розгорнути групу',
10
+ collapseGroup: 'Згорнути групу',
11
+ trash: {
12
+ label: 'Кошик',
13
+ active: 'Активні',
14
+ only: 'Кошик',
15
+ with: 'Активні й кошик',
16
+ },
17
+ exportCsv: 'Експорт CSV',
18
+ importCsv: 'Імпорт CSV',
19
+ exportQueued: 'Експорт великий, тому його додано до черги; ви отримаєте сповіщення, коли він буде готовий.',
20
+ exportPrepared: 'Експорт готується; ви отримаєте сповіщення, коли він буде готовий.',
21
+ export: 'Експорт',
22
+ exportFormats: {
23
+ csv: 'CSV',
24
+ xlsx: 'Excel (XLSX)',
25
+ },
26
+ nothingMatches: 'Нічого не знайдено',
27
+ empty: 'Поки що немає записів: {label}',
28
+ summary: {
29
+ sum: 'Сума',
30
+ avg: 'Середнє',
31
+ min: 'Мін.',
32
+ max: 'Макс.',
33
+ count: 'Кількість',
34
+ },
35
+ operation: {
36
+ deleteTitle: 'Видалити {noun} ({count})?',
37
+ restoreTitle: 'Відновити {noun} ({count})?',
38
+ forceDeleteTitle: 'Видалити {noun} ({count}) назавжди?',
39
+ toTrash: 'Їх буде переміщено до кошика, звідки їх можна відновити.',
40
+ irreversible: 'Цю дію неможливо скасувати.',
41
+ restored: '{noun}: відновлено {count}.',
42
+ deleted: '{noun}: видалено {count}.',
43
+ },
44
+ bulk: {
45
+ allMatching: 'Усі відповідні: {total}',
46
+ selected: 'Вибрано: {count}',
47
+ selectAllMatching: 'Вибрати всі відповідні ({total})',
48
+ onlyChecked: 'Лише позначені рядки',
49
+ clearSelection: 'Скасувати вибір',
50
+ },
51
+ bulkEdit: {
52
+ everyMatching: 'усі відповідні {noun} ({count})',
53
+ some: '{noun} ({count})',
54
+ title: 'Редагувати {subject}',
55
+ fieldsToChange: 'Поля для зміни',
56
+ fieldsHint: 'Записуються лише вибрані поля; усі інші значення залишаються без змін.',
57
+ applyTo: 'Застосувати до {count}',
58
+ updated: '{noun}: оновлено {count}.',
59
+ },
60
+ columns: {
61
+ title: 'Стовпці',
62
+ moveUp: 'Перемістити вгору',
63
+ moveDown: 'Перемістити вниз',
64
+ reset: 'Скинути',
65
+ },
66
+ filter: {
67
+ add: 'Додати фільтр',
68
+ condition: 'Умова',
69
+ value: 'Значення',
70
+ from: 'Від',
71
+ to: 'До',
72
+ commaSeparated: 'Через кому',
73
+ clear: 'Очистити',
74
+ yes: 'так',
75
+ no: 'ні',
76
+ and: 'і',
77
+ chip: '{field} {operator} {value}',
78
+ chipNoValue: '{field} {operator}',
79
+ anyOf: 'Будь-яка з',
80
+ anyOfGroup: 'Будь-яка з, група {n}',
81
+ alternative: 'Варіант {n}',
82
+ or: 'або',
83
+ orCondition: 'або…',
84
+ addAnyOf: 'Додати «будь-яка з»',
85
+ addToAlternative: 'Додати умову до варіанта {n}',
86
+ removeGroup: 'Видалити групу {n}',
87
+ advanced: 'Розширена умова',
88
+ operators: {
89
+ eq: 'дорівнює',
90
+ ne: 'не дорівнює',
91
+ lt: '<',
92
+ lte: '≤',
93
+ gt: '>',
94
+ gte: '≥',
95
+ in: 'є одним із',
96
+ nin: 'не є жодним із',
97
+ like: 'містить',
98
+ nlike: 'не містить',
99
+ between: 'у межах',
100
+ null: 'порожнє',
101
+ nnull: 'не порожнє',
102
+ },
103
+ },
104
+ views: {
105
+ menu: 'Подання',
106
+ allRecords: 'Усі записи',
107
+ default: 'Типове',
108
+ updateWithCurrent: 'Оновити подання поточним списком',
109
+ delete: 'Видалити подання',
110
+ deleteTitle: 'Видалити подання «{name}»?',
111
+ saveCurrent: 'Зберегти поточне як подання…',
112
+ saveTitle: 'Зберегти подання',
113
+ updateTitle: 'Оновити «{name}»',
114
+ name: 'Назва',
115
+ share: 'Поділитися з усіма адміністраторами',
116
+ openWith: 'Відкривати цей ресурс із цим поданням',
117
+ openWithForEveryone: 'Відкривати так для всіх, хто не має власного типового подання',
118
+ shareFirst: 'Поділіться поданням, щоб зробити його типовим для всіх.',
119
+ everyoneDefault: 'Типове для всіх',
120
+ saved: 'Подання «{name}» збережено.',
121
+ },
122
+ import: {
123
+ title: 'Імпорт: {label}',
124
+ file: 'Файл CSV',
125
+ analyse: 'Проаналізувати',
126
+ instructions: 'Рядків: {rows}. Зіставте кожен стовпець із полем або залиште його без зіставлення, щоб пропустити. Стовпець `manyToMany` приймає ідентифікатори, розділені символом `{pipe}`.',
127
+ csvColumn: 'Стовпець CSV',
128
+ sample: 'Приклад',
129
+ skip: '— пропустити —',
130
+ start: 'Імпортувати рядки: {rows}',
131
+ queued: 'Імпорт рядків ({rows}) додано до черги.',
132
+ mode: 'Рядки',
133
+ modes: {
134
+ create: 'Створювати нові записи',
135
+ update: 'Оновлювати наявні записи',
136
+ upsert: 'Оновлювати або створювати',
137
+ },
138
+ key: 'Зіставляти рядки за',
139
+ noKey: 'Спершу зіставте стовпець із ключем або унікальним полем.',
140
+ modeHelp: {
141
+ update: 'Кожен рядок оновлює запис із відповідним значенням; рядок без відповідника потрапляє до файлу з невдалими рядками.',
142
+ upsert: 'Кожен рядок оновлює запис із відповідним значенням або створює новий, якщо такого немає.',
143
+ },
144
+ },
145
+ page: {
146
+ create: 'Створити: {noun}',
147
+ unknown: 'Невідомий ресурс',
148
+ unknownText: 'Під назвою «{slug}» нічого не зареєстровано.',
149
+ },
150
+ inline: {
151
+ editLabel: 'Редагувати {label}',
152
+ pending: '{count} незбережена зміна | {count} незбережені зміни | {count} незбережених змін',
153
+ save: 'Зберегти зміни',
154
+ discard: 'Відкинути',
155
+ saved: '{count} запис збережено. | {count} записи збережено. | {count} записів збережено.',
156
+ conflict: 'Запис змінився після завантаження списку. Перезавантажте його й відредагуйте знову.',
157
+ leaveTitle: 'Відкинути {count} незбережену зміну? | Відкинути {count} незбережені зміни? | Відкинути {count} незбережених змін?',
158
+ leaveText: 'Якщо залишити список, незбережені зміни буде втрачено.',
159
+ },
160
+ }
@@ -0,0 +1,62 @@
1
+ // The record area's strings; see common.ts for words every area shares.
2
+ export default {
3
+ unknownResource: 'Невідомий ресурс',
4
+ new: 'Новий',
5
+ newTitle: 'Новий запис: {label}',
6
+ editTitle: 'Редагування: {title}',
7
+ createNotAllowed: 'Цей ресурс не дозволяє створювати записи тут.',
8
+ editNotAllowed: 'Ви не можете редагувати цей запис.',
9
+ saved: '{label}: збережено.',
10
+ duplicate: 'Дублювати',
11
+ copyOf: 'Копія «{title}». Значення, які мають бути унікальними, і файли спочатку порожні.',
12
+ variants: {
13
+ menu: 'Інші способи збереження',
14
+ saveContinue: 'Зберегти й продовжити редагування',
15
+ createContinue: 'Створити й продовжити редагування',
16
+ createAnother: 'Створити й додати ще',
17
+ },
18
+ leave: {
19
+ title: 'Відкинути зміни?',
20
+ text: 'Якщо залишити цю сторінку, незбережені зміни буде втрачено.',
21
+ discard: 'Відкинути',
22
+ },
23
+ inTrash: 'У кошику',
24
+ deleteTitle: 'Видалити {noun} «{title}»?',
25
+ deleteForeverTitle: 'Видалити назавжди {noun} «{title}»?',
26
+ deleteSoftText: 'Запис буде переміщено до кошика, звідки його можна відновити.',
27
+ deleteHardText: 'Цю дію неможливо скасувати.',
28
+ trashed: '{label}: переміщено до кошика.',
29
+ deleted: '{label}: видалено.',
30
+ restored: '{label}: відновлено.',
31
+ impersonate: {
32
+ action: 'Увійти від імені',
33
+ title: 'Діяти від імені «{title}»?',
34
+ text: 'Ви бачите й робите те саме, що й цей користувач, а кожна зміна записується на нього із зазначенням вас як того, хто діяв від його імені.',
35
+ started: 'Тепер ви дієте від імені {title}.',
36
+ },
37
+ audit: {
38
+ title: 'Історія',
39
+ byUser: 'користувачем {actor}',
40
+ impersonatedBy: '(від його імені діяв {impersonator})',
41
+ empty: 'Змін не зафіксовано.',
42
+ revert: 'Відкотити',
43
+ revertLabel: 'Відкотити цю зміну',
44
+ revertTitle: 'Відкотити цю зміну?',
45
+ revertText: 'Повертає попереднє значення: {fields}. Відкат також записується в історію.',
46
+ reverted: 'Зміну відкочено.',
47
+ },
48
+ panel: {
49
+ attach: 'Прикріпити',
50
+ attachTitle: 'Прикріпити: {label}',
51
+ attachCount: 'Прикріпити ({count})',
52
+ attached: 'Прикріплено: {count} {label}.',
53
+ records: 'записи',
54
+ record: 'запис',
55
+ empty: 'Поки що немає записів: {label}.',
56
+ detach: 'Від’єднати',
57
+ detachLabel: 'Від’єднати {title}',
58
+ detachTitle: 'Від’єднати «{title}»?',
59
+ detachText: 'Сам запис ({target}) залишається; вилучається лише його зв’язок із цим записом ({owner}).',
60
+ detached: '{title}: від’єднано.',
61
+ },
62
+ }
@@ -0,0 +1,10 @@
1
+ // The settings area's strings; see common.ts for words every area shares.
2
+ export default {
3
+ pageTitle: 'Налаштування',
4
+ heading: 'Налаштування',
5
+ empty: {
6
+ title: 'Немає налаштувань',
7
+ text: 'Для цього облікового запису немає налаштувань, якими можна керувати.',
8
+ },
9
+ saved: '{label}: збережено.',
10
+ }
@@ -0,0 +1,54 @@
1
+ // The shell area's strings; see common.ts for words every area shares.
2
+ export default {
3
+ titleTemplate: '{title} · {brand}',
4
+ brandSubtitle: 'Адмінпанель',
5
+ account: 'Обліковий запис',
6
+ signOut: 'Вийти',
7
+ toggleNavigation: 'Перемкнути навігацію',
8
+ toggleTheme: 'Перемкнути тему',
9
+ language: 'Мова: {name}',
10
+ languageFailed: 'Не вдалося зберегти мову: {error}',
11
+ nav: {
12
+ main: 'Головне',
13
+ dashboard: 'Панель керування',
14
+ jobs: 'Завдання',
15
+ settings: 'Налаштування',
16
+ pages: 'Сторінки',
17
+ badge: '{count} {label}',
18
+ },
19
+ page: {
20
+ unknown: 'Невідома сторінка',
21
+ loading: 'Завантаження сторінки',
22
+ },
23
+ impersonation: {
24
+ actingAs: 'Ви дієте від імені {name}.',
25
+ anotherUser: 'іншого користувача',
26
+ stop: 'Повернутися до свого облікового запису',
27
+ noAccess: '{name} не має доступу до адмінпанелі, тож від цього імені нічого не видно. Дію від імені користувача припинено.',
28
+ noToken: 'Застосунок відповів без токена й без перезавантаження, тож нічого не змінилося.',
29
+ },
30
+ palette: {
31
+ placeholder: 'Пошук записів і ресурсів…',
32
+ records: 'Записи',
33
+ resources: 'Ресурси',
34
+ noMatch: 'Немає відповідних записів',
35
+ },
36
+ inbox: {
37
+ title: 'Сповіщення',
38
+ markAllRead: 'Позначити все як прочитане',
39
+ empty: 'Поки що нічого немає',
40
+ },
41
+ login: {
42
+ pageTitle: 'Вхід · {brand}',
43
+ subtitle: 'Увійдіть до адмінпанелі',
44
+ email: 'Електронна пошта',
45
+ password: 'Пароль',
46
+ submit: 'Увійти',
47
+ invalidEmail: 'Введіть дійсну адресу електронної пошти',
48
+ welcome: 'З поверненням, {name}.',
49
+ signedOutIdle: 'Сеанс завершено після {minutes} хвилин бездіяльності. Увійдіть знову, щоб продовжити з того самого місця.',
50
+ },
51
+ home: {
52
+ title: 'Панель керування',
53
+ },
54
+ }
@@ -0,0 +1,11 @@
1
+ // The actions area's strings; see common.ts for words every area shares.
2
+ export default {
3
+ // "Run {action} on {subject}?", with the action's label in bold.
4
+ runOn: '对{subject}执行{action}?',
5
+ subjectAll: '所有匹配的{label}({count})',
6
+ subjectCount: '{count} 个{label}',
7
+ done: '{label}已完成。',
8
+ declined: '该操作已被拒绝。',
9
+ downloadStarted: '已开始下载。',
10
+ queued: '{label}已加入队列。',
11
+ }
@@ -0,0 +1,23 @@
1
+ // Words every area shares. Keep a key here only when two areas or more use it.
2
+ export default {
3
+ save: '保存',
4
+ cancel: '取消',
5
+ create: '创建',
6
+ edit: '编辑',
7
+ delete: '删除',
8
+ deleteForever: '永久删除',
9
+ restore: '恢复',
10
+ close: '关闭',
11
+ apply: '应用',
12
+ remove: '移除',
13
+ search: '搜索',
14
+ loading: '加载中…',
15
+ required: '必填',
16
+ none: '—',
17
+ yes: '是',
18
+ no: '否',
19
+ download: '下载',
20
+ actions: '操作',
21
+ confirm: '确认',
22
+ serverRejected: '服务器拒绝了该请求。',
23
+ }