@adminiumjs/i18n 0.3.0-rc.3 → 0.3.0

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 (223) 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 +118 -57
  4. package/dist/a11y-keys.js.map +1 -1
  5. package/dist/resources/ar-eg/common.d.ts +32 -100
  6. package/dist/resources/ar-eg/common.d.ts.map +1 -1
  7. package/dist/resources/ar-eg/common.js +34 -102
  8. package/dist/resources/ar-eg/common.js.map +1 -1
  9. package/dist/resources/ar-eg/email.d.ts +33 -0
  10. package/dist/resources/ar-eg/email.d.ts.map +1 -1
  11. package/dist/resources/ar-eg/email.js +33 -0
  12. package/dist/resources/ar-eg/email.js.map +1 -1
  13. package/dist/resources/ar-eg/roles.d.ts +117 -0
  14. package/dist/resources/ar-eg/roles.d.ts.map +1 -0
  15. package/dist/resources/ar-eg/roles.js +117 -0
  16. package/dist/resources/ar-eg/roles.js.map +1 -0
  17. package/dist/resources/ar-eg/studio.d.ts +286 -8
  18. package/dist/resources/ar-eg/studio.d.ts.map +1 -1
  19. package/dist/resources/ar-eg/studio.js +291 -13
  20. package/dist/resources/ar-eg/studio.js.map +1 -1
  21. package/dist/resources/ar-eg/ui.d.ts +12 -0
  22. package/dist/resources/ar-eg/ui.d.ts.map +1 -1
  23. package/dist/resources/ar-eg/ui.js +14 -2
  24. package/dist/resources/ar-eg/ui.js.map +1 -1
  25. package/dist/resources/cs-cz/common.d.ts +32 -100
  26. package/dist/resources/cs-cz/common.d.ts.map +1 -1
  27. package/dist/resources/cs-cz/common.js +34 -102
  28. package/dist/resources/cs-cz/common.js.map +1 -1
  29. package/dist/resources/cs-cz/email.d.ts +33 -0
  30. package/dist/resources/cs-cz/email.d.ts.map +1 -1
  31. package/dist/resources/cs-cz/email.js +33 -0
  32. package/dist/resources/cs-cz/email.js.map +1 -1
  33. package/dist/resources/cs-cz/roles.d.ts +117 -0
  34. package/dist/resources/cs-cz/roles.d.ts.map +1 -0
  35. package/dist/resources/cs-cz/roles.js +117 -0
  36. package/dist/resources/cs-cz/roles.js.map +1 -0
  37. package/dist/resources/cs-cz/studio.d.ts +286 -8
  38. package/dist/resources/cs-cz/studio.d.ts.map +1 -1
  39. package/dist/resources/cs-cz/studio.js +291 -13
  40. package/dist/resources/cs-cz/studio.js.map +1 -1
  41. package/dist/resources/cs-cz/ui.d.ts +12 -0
  42. package/dist/resources/cs-cz/ui.d.ts.map +1 -1
  43. package/dist/resources/cs-cz/ui.js +14 -2
  44. package/dist/resources/cs-cz/ui.js.map +1 -1
  45. package/dist/resources/da-dk/common.d.ts +32 -100
  46. package/dist/resources/da-dk/common.d.ts.map +1 -1
  47. package/dist/resources/da-dk/common.js +34 -102
  48. package/dist/resources/da-dk/common.js.map +1 -1
  49. package/dist/resources/da-dk/email.d.ts +33 -0
  50. package/dist/resources/da-dk/email.d.ts.map +1 -1
  51. package/dist/resources/da-dk/email.js +33 -0
  52. package/dist/resources/da-dk/email.js.map +1 -1
  53. package/dist/resources/da-dk/roles.d.ts +117 -0
  54. package/dist/resources/da-dk/roles.d.ts.map +1 -0
  55. package/dist/resources/da-dk/roles.js +117 -0
  56. package/dist/resources/da-dk/roles.js.map +1 -0
  57. package/dist/resources/da-dk/studio.d.ts +286 -8
  58. package/dist/resources/da-dk/studio.d.ts.map +1 -1
  59. package/dist/resources/da-dk/studio.js +291 -13
  60. package/dist/resources/da-dk/studio.js.map +1 -1
  61. package/dist/resources/da-dk/ui.d.ts +12 -0
  62. package/dist/resources/da-dk/ui.d.ts.map +1 -1
  63. package/dist/resources/da-dk/ui.js +14 -2
  64. package/dist/resources/da-dk/ui.js.map +1 -1
  65. package/dist/resources/de-de/common.d.ts +32 -100
  66. package/dist/resources/de-de/common.d.ts.map +1 -1
  67. package/dist/resources/de-de/common.js +34 -102
  68. package/dist/resources/de-de/common.js.map +1 -1
  69. package/dist/resources/de-de/email.d.ts +33 -0
  70. package/dist/resources/de-de/email.d.ts.map +1 -1
  71. package/dist/resources/de-de/email.js +33 -0
  72. package/dist/resources/de-de/email.js.map +1 -1
  73. package/dist/resources/de-de/roles.d.ts +117 -0
  74. package/dist/resources/de-de/roles.d.ts.map +1 -0
  75. package/dist/resources/de-de/roles.js +117 -0
  76. package/dist/resources/de-de/roles.js.map +1 -0
  77. package/dist/resources/de-de/studio.d.ts +286 -8
  78. package/dist/resources/de-de/studio.d.ts.map +1 -1
  79. package/dist/resources/de-de/studio.js +291 -13
  80. package/dist/resources/de-de/studio.js.map +1 -1
  81. package/dist/resources/de-de/ui.d.ts +12 -0
  82. package/dist/resources/de-de/ui.d.ts.map +1 -1
  83. package/dist/resources/de-de/ui.js +14 -2
  84. package/dist/resources/de-de/ui.js.map +1 -1
  85. package/dist/resources/en-us/common.d.ts +32 -100
  86. package/dist/resources/en-us/common.d.ts.map +1 -1
  87. package/dist/resources/en-us/common.js +34 -102
  88. package/dist/resources/en-us/common.js.map +1 -1
  89. package/dist/resources/en-us/email.d.ts +33 -0
  90. package/dist/resources/en-us/email.d.ts.map +1 -1
  91. package/dist/resources/en-us/email.js +33 -0
  92. package/dist/resources/en-us/email.js.map +1 -1
  93. package/dist/resources/en-us/roles.d.ts +117 -0
  94. package/dist/resources/en-us/roles.d.ts.map +1 -0
  95. package/dist/resources/en-us/roles.js +117 -0
  96. package/dist/resources/en-us/roles.js.map +1 -0
  97. package/dist/resources/en-us/studio.d.ts +286 -8
  98. package/dist/resources/en-us/studio.d.ts.map +1 -1
  99. package/dist/resources/en-us/studio.js +291 -13
  100. package/dist/resources/en-us/studio.js.map +1 -1
  101. package/dist/resources/en-us/ui.d.ts +12 -0
  102. package/dist/resources/en-us/ui.d.ts.map +1 -1
  103. package/dist/resources/en-us/ui.js +14 -2
  104. package/dist/resources/en-us/ui.js.map +1 -1
  105. package/dist/resources/fr-fr/common.d.ts +32 -100
  106. package/dist/resources/fr-fr/common.d.ts.map +1 -1
  107. package/dist/resources/fr-fr/common.js +34 -102
  108. package/dist/resources/fr-fr/common.js.map +1 -1
  109. package/dist/resources/fr-fr/email.d.ts +33 -0
  110. package/dist/resources/fr-fr/email.d.ts.map +1 -1
  111. package/dist/resources/fr-fr/email.js +33 -0
  112. package/dist/resources/fr-fr/email.js.map +1 -1
  113. package/dist/resources/fr-fr/roles.d.ts +117 -0
  114. package/dist/resources/fr-fr/roles.d.ts.map +1 -0
  115. package/dist/resources/fr-fr/roles.js +117 -0
  116. package/dist/resources/fr-fr/roles.js.map +1 -0
  117. package/dist/resources/fr-fr/studio.d.ts +286 -8
  118. package/dist/resources/fr-fr/studio.d.ts.map +1 -1
  119. package/dist/resources/fr-fr/studio.js +291 -13
  120. package/dist/resources/fr-fr/studio.js.map +1 -1
  121. package/dist/resources/fr-fr/ui.d.ts +12 -0
  122. package/dist/resources/fr-fr/ui.d.ts.map +1 -1
  123. package/dist/resources/fr-fr/ui.js +14 -2
  124. package/dist/resources/fr-fr/ui.js.map +1 -1
  125. package/dist/resources/index.d.ts.map +1 -1
  126. package/dist/resources/index.js +2 -0
  127. package/dist/resources/index.js.map +1 -1
  128. package/dist/resources/lazy.d.ts.map +1 -1
  129. package/dist/resources/lazy.js +8 -0
  130. package/dist/resources/lazy.js.map +1 -1
  131. package/dist/resources/namespaces.d.ts +5 -4
  132. package/dist/resources/namespaces.d.ts.map +1 -1
  133. package/dist/resources/namespaces.js +14 -2
  134. package/dist/resources/namespaces.js.map +1 -1
  135. package/dist/resources/zh-cn/common.d.ts +32 -100
  136. package/dist/resources/zh-cn/common.d.ts.map +1 -1
  137. package/dist/resources/zh-cn/common.js +34 -102
  138. package/dist/resources/zh-cn/common.js.map +1 -1
  139. package/dist/resources/zh-cn/email.d.ts +33 -0
  140. package/dist/resources/zh-cn/email.d.ts.map +1 -1
  141. package/dist/resources/zh-cn/email.js +33 -0
  142. package/dist/resources/zh-cn/email.js.map +1 -1
  143. package/dist/resources/zh-cn/roles.d.ts +117 -0
  144. package/dist/resources/zh-cn/roles.d.ts.map +1 -0
  145. package/dist/resources/zh-cn/roles.js +117 -0
  146. package/dist/resources/zh-cn/roles.js.map +1 -0
  147. package/dist/resources/zh-cn/studio.d.ts +286 -8
  148. package/dist/resources/zh-cn/studio.d.ts.map +1 -1
  149. package/dist/resources/zh-cn/studio.js +291 -13
  150. package/dist/resources/zh-cn/studio.js.map +1 -1
  151. package/dist/resources/zh-cn/ui.d.ts +12 -0
  152. package/dist/resources/zh-cn/ui.d.ts.map +1 -1
  153. package/dist/resources/zh-cn/ui.js +14 -2
  154. package/dist/resources/zh-cn/ui.js.map +1 -1
  155. package/dist/resources/zh-tw/common.d.ts +32 -100
  156. package/dist/resources/zh-tw/common.d.ts.map +1 -1
  157. package/dist/resources/zh-tw/common.js +34 -102
  158. package/dist/resources/zh-tw/common.js.map +1 -1
  159. package/dist/resources/zh-tw/email.d.ts +33 -0
  160. package/dist/resources/zh-tw/email.d.ts.map +1 -1
  161. package/dist/resources/zh-tw/email.js +33 -0
  162. package/dist/resources/zh-tw/email.js.map +1 -1
  163. package/dist/resources/zh-tw/roles.d.ts +117 -0
  164. package/dist/resources/zh-tw/roles.d.ts.map +1 -0
  165. package/dist/resources/zh-tw/roles.js +117 -0
  166. package/dist/resources/zh-tw/roles.js.map +1 -0
  167. package/dist/resources/zh-tw/studio.d.ts +286 -8
  168. package/dist/resources/zh-tw/studio.d.ts.map +1 -1
  169. package/dist/resources/zh-tw/studio.js +291 -13
  170. package/dist/resources/zh-tw/studio.js.map +1 -1
  171. package/dist/resources/zh-tw/ui.d.ts +12 -0
  172. package/dist/resources/zh-tw/ui.d.ts.map +1 -1
  173. package/dist/resources/zh-tw/ui.js +14 -2
  174. package/dist/resources/zh-tw/ui.js.map +1 -1
  175. package/dist/review-status.js +7 -7
  176. package/locales/ar-EG/.meta.json +2097 -861
  177. package/locales/ar-EG/common.json +34 -102
  178. package/locales/ar-EG/email.json +33 -0
  179. package/locales/ar-EG/roles.json +106 -0
  180. package/locales/ar-EG/studio.json +291 -13
  181. package/locales/ar-EG/ui.json +14 -2
  182. package/locales/cs-CZ/.meta.json +2103 -867
  183. package/locales/cs-CZ/common.json +34 -102
  184. package/locales/cs-CZ/email.json +33 -0
  185. package/locales/cs-CZ/roles.json +106 -0
  186. package/locales/cs-CZ/studio.json +291 -13
  187. package/locales/cs-CZ/ui.json +14 -2
  188. package/locales/da-DK/.meta.json +2113 -877
  189. package/locales/da-DK/common.json +34 -102
  190. package/locales/da-DK/email.json +33 -0
  191. package/locales/da-DK/roles.json +106 -0
  192. package/locales/da-DK/studio.json +291 -13
  193. package/locales/da-DK/ui.json +14 -2
  194. package/locales/de-DE/.meta.json +2069 -833
  195. package/locales/de-DE/common.json +34 -102
  196. package/locales/de-DE/email.json +33 -0
  197. package/locales/de-DE/roles.json +106 -0
  198. package/locales/de-DE/studio.json +291 -13
  199. package/locales/de-DE/ui.json +14 -2
  200. package/locales/en-US/common.json +34 -102
  201. package/locales/en-US/email.json +33 -0
  202. package/locales/en-US/roles.json +106 -0
  203. package/locales/en-US/studio.json +291 -13
  204. package/locales/en-US/ui.json +14 -2
  205. package/locales/fr-FR/.meta.json +2061 -825
  206. package/locales/fr-FR/common.json +34 -102
  207. package/locales/fr-FR/email.json +33 -0
  208. package/locales/fr-FR/roles.json +106 -0
  209. package/locales/fr-FR/studio.json +291 -13
  210. package/locales/fr-FR/ui.json +14 -2
  211. package/locales/zh-CN/.meta.json +2097 -861
  212. package/locales/zh-CN/common.json +34 -102
  213. package/locales/zh-CN/email.json +33 -0
  214. package/locales/zh-CN/roles.json +106 -0
  215. package/locales/zh-CN/studio.json +291 -13
  216. package/locales/zh-CN/ui.json +14 -2
  217. package/locales/zh-TW/.meta.json +2097 -861
  218. package/locales/zh-TW/common.json +34 -102
  219. package/locales/zh-TW/email.json +33 -0
  220. package/locales/zh-TW/roles.json +106 -0
  221. package/locales/zh-TW/studio.json +291 -13
  222. package/locales/zh-TW/ui.json +14 -2
  223. package/package.json +1 -1
@@ -0,0 +1,106 @@
1
+ {
2
+ "action": {
3
+ "delete": "Delete",
4
+ "rename": "Rename"
5
+ },
6
+ "builtinLocked": "Built-in roles cannot be deleted.",
7
+ "category": {
8
+ "access": "Access",
9
+ "data": "Data",
10
+ "operations": "Operations",
11
+ "workspace": "Workspace",
12
+ "records": "Pages & records",
13
+ "apps": "Apps"
14
+ },
15
+ "column": {
16
+ "actions": "Actions",
17
+ "members": "Members",
18
+ "name": "Role"
19
+ },
20
+ "create": {
21
+ "descriptionLabel": "Description",
22
+ "description": "A new role starts with no permissions at all.",
23
+ "failed": "Could not create the role",
24
+ "namePlaceholder": "e.g. Support agent",
25
+ "name": "Name",
26
+ "submit": "Create role",
27
+ "title": "New role"
28
+ },
29
+ "createButton": "New role",
30
+ "delete": {
31
+ "confirm": "Delete role",
32
+ "description": "The role and its permission rows are removed.",
33
+ "failed": "Could not delete the role",
34
+ "hasMembers": "“{name}” still has {count, plural, one {# member} other {# members}}. Choose the role they move to — Adminium will not leave an account with no role.",
35
+ "noMembers": "Nobody holds “{name}”, so nothing moves.",
36
+ "reassignPlaceholder": "Choose a role…",
37
+ "reassignTo": "Move members to",
38
+ "title": "Delete role"
39
+ },
40
+ "list": {
41
+ "title": "Roles"
42
+ },
43
+ "loadFailed": {
44
+ "body": "The matrix below is incomplete, so saving it would clear permissions that are simply not loaded. Reload before making changes.",
45
+ "title": "Some permissions could not be read"
46
+ },
47
+ "matrix": {
48
+ "discard": "Discard",
49
+ "empty": {
50
+ "body": "This instance reported no grantable permissions at all, which should not happen — reload, and if it persists check the server log.",
51
+ "title": "No permissions to show"
52
+ },
53
+ "label": "Role permissions",
54
+ "noChanges": "No pending changes",
55
+ "pending": "{count, plural, one {# pending change} other {# pending changes}}",
56
+ "rowHeader": "Permission",
57
+ "title": "Permissions"
58
+ },
59
+ "memberCount": "{count, plural, one {# user} other {# users}}",
60
+ "permission": {
61
+ "apiKeysManage": "Manage API keys",
62
+ "auditRead": "Read the audit log",
63
+ "connectionsManage": "Manage database connections",
64
+ "exportsManage": "Manage everyone’s exports",
65
+ "importsManage": "Manage everyone’s imports",
66
+ "jobsManage": "Start and cancel background jobs",
67
+ "manifestsManage": "Install and manage apps and add-ons",
68
+ "jobsRead": "See all background jobs",
69
+ "llmRun": "Run AI assist",
70
+ "pagesManage": "Create and organize pages",
71
+ "projectRead": "Read pages and schema changes for a project pull",
72
+ "reportsManage": "Manage scheduled reports",
73
+ "rolesManage": "Manage roles and permissions",
74
+ "schemaRemap": "Edit schema labels and overrides",
75
+ "schemaDdl": "Create, edit and delete tables",
76
+ "settingsManage": "Manage workspace settings",
77
+ "usersManage": "Manage users",
78
+ "filesManage": "Manage everyone’s files",
79
+ "storageManage": "Manage storage destinations"
80
+ },
81
+ "rename": {
82
+ "failed": "Could not rename the role",
83
+ "title": "Rename role"
84
+ },
85
+ "saveFailed": {
86
+ "title": "Could not save every role"
87
+ },
88
+ "subtitle": "What each role may do. A user gets the union of every role they hold.",
89
+ "title": "Roles & permissions",
90
+ "data": {
91
+ "pagesView": "See every page",
92
+ "read": "Read records",
93
+ "readPii": "See personal data in records",
94
+ "create": "Create records",
95
+ "update": "Edit records",
96
+ "delete": "Delete records",
97
+ "export": "Export records",
98
+ "import": "Import records",
99
+ "pagesEdit": "Change page layouts",
100
+ "narrow": "{count, plural, one {# grant} other {# grants}} on a single page or table also apply, on top of the rows below. Saving keeps them."
101
+ },
102
+ "apps": {
103
+ "every": "Open every app’s staff screens",
104
+ "one": "Open {app}’s staff screens"
105
+ }
106
+ }
@@ -618,9 +618,15 @@
618
618
  "pageWarnings": "Some of this app’s pages will arrive without a table"
619
619
  },
620
620
  "done": {
621
- "title": "Installed",
622
621
  "body": "{key} is being served now. Choose where its staff side appears below.",
623
- "schema": "Tables created: {created} · reused: {reused}"
622
+ "titleApp": "{app} is installed",
623
+ "tablesCreated": "Tables created in {connection}",
624
+ "tablesKept": "Tables used as they were",
625
+ "pages": "Pages generated",
626
+ "sampleNotAdded": "not added",
627
+ "sampleAdding": "adding…",
628
+ "sampleAdded": "added",
629
+ "sampleLater": "You can add it later from the app’s page."
624
630
  },
625
631
  "cancel": "Cancel",
626
632
  "back": "Back",
@@ -641,6 +647,68 @@
641
647
  "uploaded": {
642
648
  "hint": "Read from the manifest.json inside the bundle you uploaded. Nothing is created until you confirm the schema plan.",
643
649
  "replace": "Upload a different bundle"
650
+ },
651
+ "check": {
652
+ "title": "Check the tables",
653
+ "hint": "{app} will create these in {connection}. Nothing changes until you press Install.",
654
+ "summaryNew": "{count} new",
655
+ "summaryEarlier": "{count} from your earlier install",
656
+ "summaryShared": "{count} shared with another app",
657
+ "summaryTaken": "{count, plural, one {# name taken} other {# names taken}}",
658
+ "altPrefixInUse": "Checked with the prefix {prefix}.",
659
+ "usualPrefix": "Use the usual prefix",
660
+ "badgeNew": "New",
661
+ "badgeEarlier": "Yours from an earlier install",
662
+ "badgeShared": "Shared with {app}",
663
+ "badgeTaken": "Name taken",
664
+ "columns": "{count, plural, one {# column} other {# columns}}",
665
+ "keep": "Use it and keep its data",
666
+ "sharedNote": "{app} uses this table too. Both apps keep reading and writing the same rows.",
667
+ "earlierNote": "Adminium made this table on an earlier install of {app}.",
668
+ "createPreview": "Create preview",
669
+ "addsColumns": "{count, plural, one {Adds # column:} other {Adds # columns:}}",
670
+ "widens": "Makes {column} wider, from {from} to {to}.",
671
+ "setIdentity": "{column} numbers new rows by itself.",
672
+ "enumValues": "{column} also accepts {values}.",
673
+ "noLoss": "No column is removed and no data is lost.",
674
+ "reuseNote": "The app reads and writes the rows already there.",
675
+ "renameTitle": "Rename the existing table out of the way",
676
+ "renameNote": "A fresh {table} is created for the app.",
677
+ "renameField": "New name for the existing table",
678
+ "renameFieldNote": "Adminium repairs its own pages and rules that pointed at the old name.",
679
+ "prefixTitle": "Use a different prefix for this app",
680
+ "prefixNote": "Applies to all of the app’s tables at once.",
681
+ "prefixField": "Prefix",
682
+ "prefixFieldNote": "{count, plural, one {The table will be checked again.} other {All # tables will be checked again.}}",
683
+ "takenIntro": "{table} already exists and was made by hand. Pick what to do with it.",
684
+ "takenIntroShort": "What to do with {table}",
685
+ "pickFirst": "Pick what to do with {table} before you install.",
686
+ "checkFirst": "Check the tables again before you install.",
687
+ "nothingYet": "Nothing changes until you press Install.",
688
+ "again": "Check again",
689
+ "adoptedNote": "An earlier install of {app} used this table as it found it."
690
+ },
691
+ "running": {
692
+ "title": "Installing {app}",
693
+ "hint": "Writing to {connection}.",
694
+ "tables": "Tables",
695
+ "pages": "Pages"
696
+ },
697
+ "stopped": {
698
+ "failed": "failed",
699
+ "notStarted": "not started",
700
+ "atTables": "Creating the tables failed, so nothing after that ran.",
701
+ "atIntrospect": "The tables were made. Reading them back failed, so nothing after that ran.",
702
+ "atPages": "The tables were made. Creating the pages failed, so nothing after that ran.",
703
+ "atFinish": "The tables and pages were made. Finishing the install failed.",
704
+ "title": "The install stopped part way",
705
+ "created": "{count} created",
706
+ "made": "made",
707
+ "said": "What the database said",
708
+ "saidAbout": "What the database said about {table}",
709
+ "resume": "Nothing was removed. Trying again finishes from where it stopped.",
710
+ "retry": "Try again",
711
+ "back": "Back to Schema plan"
644
712
  }
645
713
  },
646
714
  "installed": {
@@ -649,11 +717,6 @@
649
717
  "emptyTitle": "No apps installed yet",
650
718
  "emptyBody": "Upload a built surface bundle to install one. Apps installed here are served immediately — no restart, unlike a directory you point at.",
651
719
  "uninstall": "Uninstall",
652
- "confirmTitle": "Uninstall this app?",
653
- "confirmBody": "Its surfaces stop being served and the bundle is deleted. Any tables it created in your database are left alone.",
654
- "confirmPrompt": "Type {key} to confirm",
655
- "confirmCancel": "Cancel",
656
- "confirmClose": "Close",
657
720
  "stagedTitle": "Uploaded but not installed",
658
721
  "stagedHint": "Discard one you decided against, or upload the same key again to replace it.",
659
722
  "discard": "Discard",
@@ -661,11 +724,15 @@
661
724
  "updatesAvailable": "{count, plural, one {# update available} other {# updates available}}",
662
725
  "updateTo": "Update to v{version}",
663
726
  "needsNewer": "v{version} needs Adminium {minimum} or later",
727
+ "cannotUpdate": "v{version} cannot update this version in place. Uninstall it first, then install v{version}.",
664
728
  "missing": "Missing",
665
729
  "missingBody": "Its files are not on this server, so it is not served. Install the same version again, or uninstall it.",
666
730
  "update": "Update",
667
731
  "discardFailed": "The upload was not discarded",
668
- "uninstallFailed": "The app was not uninstalled"
732
+ "renamed": "Tables renamed to {prefix}…",
733
+ "oldNames": "This install uses the old table names.",
734
+ "oldNamesWhy": "They were made before prefixes.",
735
+ "renameTo": "Rename to {prefix}…"
669
736
  },
670
737
  "instances": {
671
738
  "add": "Add an instance",
@@ -716,7 +783,11 @@
716
783
  "confirm": "Update",
717
784
  "close": "Close",
718
785
  "done": "{app} updated to v{version}",
719
- "missingColumns": "Missing: {tables}."
786
+ "missingColumns": "Missing: {tables}.",
787
+ "checkSubtitle": "Check the tables this version uses.",
788
+ "pickFirst": "Pick what to do with {table} before you update.",
789
+ "checkFirst": "Check the tables again before you update.",
790
+ "nothingYet": "Nothing changes until you press Update."
720
791
  },
721
792
  "veto": {
722
793
  "title": "This deployment cannot browse online",
@@ -731,6 +802,18 @@
731
802
  "failed": "The columns could not be added",
732
803
  "valuesFailed": "The columns were added, but their allowed values could not be recorded",
733
804
  "confirm": "Add the columns and update"
805
+ },
806
+ "rename": {
807
+ "title": "Rename tables to {prefix}…",
808
+ "subtitle": "{count, plural, one {# table in {connection}} other {# tables in {connection}}}",
809
+ "close": "Close",
810
+ "body": "This install was made before prefixes. Renaming gives every table the app’s prefix, so {app} can recognise its own tables.",
811
+ "planFailed": "The rename could not be planned",
812
+ "refused": "These tables cannot be renamed here",
813
+ "failed": "The tables were not renamed",
814
+ "repair": "Adminium also updates its own pages and rules that point at the old names.",
815
+ "cancel": "Cancel",
816
+ "confirm": "Rename tables"
734
817
  }
735
818
  },
736
819
  "hub": {
@@ -1285,7 +1368,8 @@
1285
1368
  "visible": "Show in sidebar",
1286
1369
  "visibleHint": "A hidden page stays reachable at its URL for anyone who has the link.",
1287
1370
  "width": "Content width",
1288
- "widthHint": "How wide the page’s content column may grow on a large screen."
1371
+ "widthHint": "How wide the page’s content column may grow on a large screen.",
1372
+ "groupApp": "In its app’s own section"
1289
1373
  },
1290
1374
  "filters": {
1291
1375
  "add": "Add a filter",
@@ -1546,6 +1630,10 @@
1546
1630
  "ungrouped": {
1547
1631
  "body": "These pages work at their URL but appear nowhere in the sidebar. Open each one and pick a group.",
1548
1632
  "title": "Some pages are in no sidebar group"
1633
+ },
1634
+ "apps": {
1635
+ "title": "In installed apps’ sections",
1636
+ "body": "Each app keeps its pages in its own section of the sidebar."
1549
1637
  }
1550
1638
  },
1551
1639
  "status": {
@@ -1829,7 +1917,29 @@
1829
1917
  "optionsPickList": "Choose a list…",
1830
1918
  "optionsSource": "Allowed values",
1831
1919
  "optionsSourceHelp": "A list is written once in Studio and used by every column that names it.",
1832
- "optionsValues": "The values"
1920
+ "optionsValues": "The values",
1921
+ "decided": {
1922
+ "title": "Decided by Adminium",
1923
+ "help": "Adminium fills this in on every write, and a public endpoint can never let a visitor set it.",
1924
+ "copy": "Copied from {from} of the row {via} points at",
1925
+ "copyAlways": "always, whatever the writer gives",
1926
+ "copyDefault": "unless the writer gives a value",
1927
+ "sequence": "The next number in order, from {start}",
1928
+ "code": "A random code like {example}",
1929
+ "remove": "Remove this rule",
1930
+ "rollup": "The total of {sum} over its rows in {from}",
1931
+ "rollupTimes": "The total of {sum} × {times} over its rows in {from}",
1932
+ "stampCreate": "Set to {what} when the row is created",
1933
+ "stampChange": "Set to {what} when {column} becomes {values}",
1934
+ "stampNow": "the time",
1935
+ "stampUserName": "the name of whoever does it",
1936
+ "stampUserId": "the id of whoever does it",
1937
+ "stampByOrigin": "“{public}” from the public side, “{staff}” from staff",
1938
+ "rollupWhere": "counting only rows where {column} is {value}",
1939
+ "rollupBalance": "and keeps {balance} = {of} − {minus} − this total",
1940
+ "rollupCap": "A write that would take the balance below zero is refused."
1941
+ },
1942
+ "venueLocal": "A time written here without a zone is the venue’s own time."
1833
1943
  },
1834
1944
  "saveFailed": "Save failed: {message}",
1835
1945
  "subtitle": "{tables} tables · {applied} overrides applied",
@@ -2556,7 +2666,9 @@
2556
2666
  "lt": "less than",
2557
2667
  "lte": "at most",
2558
2668
  "neq": "not equals",
2559
- "not_null": "is not empty"
2669
+ "not_null": "is not empty",
2670
+ "today": "is today",
2671
+ "fromToday": "from today on"
2560
2672
  },
2561
2673
  "paging": {
2562
2674
  "asc": "Asc",
@@ -2647,7 +2759,9 @@
2647
2759
  },
2648
2760
  "revokeFailed": "That key could not be revoked. It is still active.",
2649
2761
  "title": "Active keys",
2650
- "untitled": "Untitled key"
2762
+ "untitled": "Untitled key",
2763
+ "staffOnly": "Staff screen only",
2764
+ "staffOnlyHint": "Answers only on a screen where a staff member holding {role} is signed in."
2651
2765
  },
2652
2766
  "method": {
2653
2767
  "BATCH": {
@@ -2745,5 +2859,169 @@
2745
2859
  "subtitle": "Manage programmatic access to your workspace",
2746
2860
  "summary": "{endpoints, plural, one {# endpoint} other {# endpoints}} · {methods, plural, one {# method} other {# methods}}",
2747
2861
  "title": "API keys & tokens"
2862
+ },
2863
+ "surfacePages": {
2864
+ "guest": {
2865
+ "title": "{app} isn’t available right now.",
2866
+ "body": "Please try again later."
2867
+ },
2868
+ "staff": {
2869
+ "appOff": "{app} is switched off for now.",
2870
+ "sideOff": "The staff screens of {app} are switched off.",
2871
+ "advice": "Ask your manager to switch it on in {app} → Settings.",
2872
+ "signOut": "Sign out",
2873
+ "noAccess": "This account can’t open {app}.",
2874
+ "noAccessAdvice": "Ask your manager for a role that opens {app}."
2875
+ },
2876
+ "notFound": {
2877
+ "title": "Page not found",
2878
+ "body": "There’s nothing at this address. Check the link and try again."
2879
+ }
2880
+ },
2881
+ "appSettings": {
2882
+ "notInstalled": "This app is not installed",
2883
+ "backToApps": "Back to apps",
2884
+ "statusDisabled": "Disabled",
2885
+ "statusUpdate": "Update available · {version}",
2886
+ "statusActive": "Active",
2887
+ "version": "Version {version} · by {publisher}",
2888
+ "open": "Open the app",
2889
+ "upToDate": "Up to date",
2890
+ "update": "Update",
2891
+ "saveFailed": "The change was not saved",
2892
+ "screens": "Sets of screens",
2893
+ "sideStaff": "Staff screens",
2894
+ "sideCustomer": "Customer screens",
2895
+ "sideAppOff": "The whole app is switched off.",
2896
+ "staffOnHelp": "Your team signs in here with their own accounts.",
2897
+ "customerOnHelp": "Customers use these pages. They are public.",
2898
+ "staffOffHelp": "These screens are not served. Nothing was deleted.",
2899
+ "customerOffHelp": "Customers see “not available”. Nothing was deleted.",
2900
+ "sideSwitch": "{side}, on or off",
2901
+ "on": "On",
2902
+ "off": "Off",
2903
+ "whereItLives": "Where it lives",
2904
+ "ownAddress": "On its own address",
2905
+ "insideDashboard": "Inside the dashboard",
2906
+ "copyAddress": "Copy address",
2907
+ "copied": "Copied",
2908
+ "copy": "Copy",
2909
+ "addDomain": "Add a domain",
2910
+ "preview": "Preview",
2911
+ "domainField": "Domain",
2912
+ "addDomainSave": "Add",
2913
+ "data": "Data",
2914
+ "noTables": "This app uses no tables.",
2915
+ "rows": "{count, plural, one {# row} other {# rows}}",
2916
+ "activity": {
2917
+ "staged": "Uploaded by {actor}",
2918
+ "installed": "Installed by {actor}",
2919
+ "updated": "Updated by {actor}",
2920
+ "disabled": "Switched off by {actor}",
2921
+ "enabled": "Switched on by {actor}",
2922
+ "settings": "Settings changed by {actor}",
2923
+ "domains": "Domains changed by {actor}",
2924
+ "instances": "Instances changed by {actor}",
2925
+ "renamed": "Tables renamed by {actor}",
2926
+ "title": "Activity",
2927
+ "none": "Nothing yet.",
2928
+ "sampleAdded": "Sample data added by {actor}",
2929
+ "sampleRemoved": "Sample data removed by {actor}"
2930
+ },
2931
+ "danger": "Danger zone",
2932
+ "disabledNote": "The app is switched off. Enable brings back exactly what was there.",
2933
+ "disableNote": "Hides the app everywhere and stops its endpoints. Nothing is deleted.",
2934
+ "enable": "Enable",
2935
+ "disable": "Disable",
2936
+ "uninstallNote": "Removes the app’s files and pages. Keeps the tables and data.",
2937
+ "uninstall": "Uninstall",
2938
+ "disableTitle": "Disable {app}?",
2939
+ "close": "Close",
2940
+ "nothingDeleted": "Nothing is deleted.",
2941
+ "enableBrings": "Enable brings back exactly what was there.",
2942
+ "cancel": "Cancel",
2943
+ "disableLine1": "Its section is hidden for everyone.",
2944
+ "disableLine2": "Its screens and its own endpoints stop answering.",
2945
+ "disableLine3": "The tables, records and settings stay as they are.",
2946
+ "crumb": "Apps",
2947
+ "sampleLedger": "Adminium’s list of sample records"
2948
+ },
2949
+ "uninstall": {
2950
+ "files": "The app’s files",
2951
+ "pages": "{count, plural, one {# page} other {# pages}}",
2952
+ "keys": "{count, plural, one {Its browser key} other {Its # browser keys}}",
2953
+ "settings": "Its settings",
2954
+ "hosts": "{count, plural, one {Its domain} other {Its # domains}}",
2955
+ "tables": "{count, plural, one {# table and every record in it} other {# tables and every record in them}}",
2956
+ "editedPages": "Pages you edited stay as ordinary pages",
2957
+ "audit": "Its entries in the audit log",
2958
+ "title": "Uninstall {app}?",
2959
+ "close": "Close",
2960
+ "planFailed": "What would be removed could not be read",
2961
+ "removed": "Removed",
2962
+ "kept": "Kept",
2963
+ "roleCascade": "Removing this role takes it from {members, plural, one {# person} other {# people}} and deletes {keys, plural, one {# API key} other {# API keys}} bound to it. Those keys stop working at once.",
2964
+ "dropTitle": "Also delete its tables and data",
2965
+ "dropBody": "{count, plural, one {Deletes the # table it made and every record in it.} other {Deletes the # tables it made and every record in them.}} This cannot be undone.",
2966
+ "typeKey": "Type the app’s key {key} to confirm.",
2967
+ "failed": "The app was not uninstalled",
2968
+ "cancel": "Cancel",
2969
+ "confirmDrop": "Uninstall and delete data",
2970
+ "confirm": "Uninstall",
2971
+ "rules": "{count, plural, one {Its column rule} other {Its # column rules}}"
2972
+ },
2973
+ "sampleData": {
2974
+ "title": "Sample data",
2975
+ "add": "Add sample data",
2976
+ "installNote": "a few example records in the app’s tables, so there is something to try it with. You can remove it in one click.",
2977
+ "remove": "Remove sample data",
2978
+ "keptNotice": "{count, plural, one {# sample record stays: your own records use it, or you changed it.} other {# sample records stay: your own records use them, or you changed them.}}",
2979
+ "notLoaded": "Not loaded",
2980
+ "loadedCount": "Loaded · {count, plural, one {# record} other {# records}}",
2981
+ "loaded": "Loaded · {count, plural, one {# record} other {# records}} · {date}",
2982
+ "addSubtitle": "Into {connection}",
2983
+ "close": "Close",
2984
+ "addBodyNoConnection": "A few example records in the app’s tables. Nothing else is touched.",
2985
+ "addBody": "A few example records in the app’s tables. Nothing else in {connection} is touched.",
2986
+ "images": "Images, added to Files",
2987
+ "total": "Total",
2988
+ "records": "{count, plural, one {# record} other {# records}}",
2989
+ "none": "This app ships no sample data",
2990
+ "adding": "Adding sample data",
2991
+ "addFailed": "The sample data was not added",
2992
+ "addFailedBody": "The sample data was not added. Nothing was written.",
2993
+ "cancel": "Cancel",
2994
+ "removeSubtitle": "{count, plural, one {# record added on {date}} other {# records added on {date}}}",
2995
+ "removeBody": "Adminium kept a list of every record it added, so it takes out exactly those.",
2996
+ "planFailed": "What would be removed could not be read",
2997
+ "removes": "Removes",
2998
+ "kept": "Kept",
2999
+ "usedBy": "{count, plural, one {used by # of your own records} other {used by # of your own records}}",
3000
+ "keepChanged": "Keep the ones I changed",
3001
+ "changedList": "{count, plural, one {# sample record you edited: {names}.} other {# sample records you edited: {names}.}}",
3002
+ "removeFailed": "The sample data was not removed",
3003
+ "removeConfirm": "Remove",
3004
+ "banner": "Sample data is loaded",
3005
+ "bannerRemove": "Remove it"
3006
+ },
3007
+ "appPublicAccess": {
3008
+ "title": "Public access",
3009
+ "intro": "The app’s customer screens need to:",
3010
+ "availability": "Read free or full times of {table}",
3011
+ "claim": "Look up their own {table} by {fields}",
3012
+ "create": "Add to {table}",
3013
+ "update": "Change {table}",
3014
+ "read": "Read {table}",
3015
+ "later": "arrives in a later release",
3016
+ "allow": "Allow this public access",
3017
+ "helper": "You can narrow it later on the API keys page.",
3018
+ "cannotGrant": "Only someone who may manage API keys can allow it, so the app installs without it.",
3019
+ "warning": {
3020
+ "apiOff": "The public API is switched off, so none of this answers until it is on.",
3021
+ "originSelf": "The allowed origins do not include “self”, so the app’s own pages on this server cannot call it.",
3022
+ "timeZone": "This database has no time zone set, which the public API needs for dates and times.",
3023
+ "noEmail": "Email is not set up, so guests will not be sent a confirmation."
3024
+ },
3025
+ "createConfirmed": "Add to {table}, and get a confirmation email"
2748
3026
  }
2749
3027
  }
@@ -114,7 +114,8 @@
114
114
  "step": "Step {n}",
115
115
  "back": "Back",
116
116
  "next": "Continue"
117
- }
117
+ },
118
+ "unavailable": "This field can’t be shown: nothing links this record to the rows it names."
118
119
  },
119
120
  "combobox": {
120
121
  "placeholder": "Select…",
@@ -1524,6 +1525,7 @@
1524
1525
  "loadError": "Failed to load the record."
1525
1526
  },
1526
1527
  "emptyTitle": "{count, plural, one {No {entity} yet} other {No {entity}s yet}}",
1528
+ "emptyTitleNamed": "No {things} yet",
1527
1529
  "exportAction": "Export",
1528
1530
  "file": {
1529
1531
  "tooLarge": "That file is larger than the {limit} limit.",
@@ -1601,7 +1603,17 @@
1601
1603
  "rejectNote": "The requester will be notified with your note."
1602
1604
  },
1603
1605
  "dashboard": {
1604
- "invalidLayout": "This dashboard’s stored layout is invalid. Regenerate the page or reset its layout."
1606
+ "invalidLayout": "This dashboard’s stored layout is invalid. Regenerate the page or reset its layout.",
1607
+ "day": {
1608
+ "label": "Day",
1609
+ "today": "Today",
1610
+ "yesterday": "Yesterday",
1611
+ "week": "This week",
1612
+ "pick": "Pick a day",
1613
+ "pickHelp": "One day at a time, on the venue’s clock.",
1614
+ "cancel": "Cancel",
1615
+ "show": "Show day"
1616
+ }
1605
1617
  },
1606
1618
  "builder": {
1607
1619
  "publish": "Publish",