@things-factory/auth-ui 10.1.29 → 10.1.33

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 (57) hide show
  1. package/dist-client/components/accept-invitation.d.ts +48 -0
  2. package/dist-client/components/accept-invitation.js +265 -0
  3. package/dist-client/components/accept-invitation.js.map +1 -0
  4. package/dist-client/components/appliance-editor.d.ts +3 -0
  5. package/dist-client/components/appliance-editor.js +102 -1
  6. package/dist-client/components/appliance-editor.js.map +1 -1
  7. package/dist-client/components/role-selector.js +23 -1
  8. package/dist-client/components/role-selector.js.map +1 -1
  9. package/dist-client/components/user-invite.d.ts +8 -0
  10. package/dist-client/components/user-invite.js +53 -6
  11. package/dist-client/components/user-invite.js.map +1 -1
  12. package/dist-client/entries/auth/accept-invitation.d.ts +3 -0
  13. package/dist-client/entries/auth/accept-invitation.js +10 -0
  14. package/dist-client/entries/auth/accept-invitation.js.map +1 -0
  15. package/dist-client/pages/invitation/invitation-list-query.test.d.ts +1 -0
  16. package/dist-client/pages/invitation/invitation-list-query.test.js +69 -0
  17. package/dist-client/pages/invitation/invitation-list-query.test.js.map +1 -0
  18. package/dist-client/pages/invitation/invitations.d.ts +63 -0
  19. package/dist-client/pages/invitation/invitations.js +282 -0
  20. package/dist-client/pages/invitation/invitations.js.map +1 -0
  21. package/dist-client/pages/role/role-list-page.d.ts +3 -2
  22. package/dist-client/pages/role/role-list-page.js +39 -6
  23. package/dist-client/pages/role/role-list-page.js.map +1 -1
  24. package/dist-client/route.js +3 -0
  25. package/dist-client/route.js.map +1 -1
  26. package/dist-client/tsconfig.tsbuildinfo +1 -1
  27. package/dist-client/utils/credential-panel-state.d.ts +51 -0
  28. package/dist-client/utils/credential-panel-state.js +49 -0
  29. package/dist-client/utils/credential-panel-state.js.map +1 -0
  30. package/dist-client/utils/credential-panel-state.test.d.ts +1 -0
  31. package/dist-client/utils/credential-panel-state.test.js +88 -0
  32. package/dist-client/utils/credential-panel-state.test.js.map +1 -0
  33. package/dist-client/utils/inherited-name-refusal.d.ts +44 -0
  34. package/dist-client/utils/inherited-name-refusal.js +46 -0
  35. package/dist-client/utils/inherited-name-refusal.js.map +1 -0
  36. package/dist-client/utils/inherited-name-refusal.test.d.ts +1 -0
  37. package/dist-client/utils/inherited-name-refusal.test.js +60 -0
  38. package/dist-client/utils/inherited-name-refusal.test.js.map +1 -0
  39. package/dist-client/utils/invitation-token.d.ts +28 -0
  40. package/dist-client/utils/invitation-token.js +40 -0
  41. package/dist-client/utils/invitation-token.js.map +1 -0
  42. package/dist-client/utils/invitation-token.test.d.ts +1 -0
  43. package/dist-client/utils/invitation-token.test.js +60 -0
  44. package/dist-client/utils/invitation-token.test.js.map +1 -0
  45. package/dist-client/utils/role-origin.d.ts +44 -0
  46. package/dist-client/utils/role-origin.js +47 -0
  47. package/dist-client/utils/role-origin.js.map +1 -0
  48. package/dist-client/utils/role-origin.test.d.ts +1 -0
  49. package/dist-client/utils/role-origin.test.js +60 -0
  50. package/dist-client/utils/role-origin.test.js.map +1 -0
  51. package/package.json +5 -5
  52. package/things-factory.config.js +1 -0
  53. package/translations/en.json +28 -0
  54. package/translations/ja.json +28 -0
  55. package/translations/ko.json +28 -0
  56. package/translations/ms.json +28 -0
  57. package/translations/zh.json +28 -0
@@ -1,4 +1,5 @@
1
1
  {
2
+ "button.accept invitation": "초대 수락",
2
3
  "button.activate": "활성화",
3
4
  "button.add what it can do": "할 수 있는 일 더하기",
4
5
  "button.cancel": "취소",
@@ -25,17 +26,22 @@
25
26
  "button.remove from domain": "도메인에서 제외",
26
27
  "button.remove owner": "소유자 해제",
27
28
  "button.renew access token": "access token 갱신",
29
+ "button.resend": "다시 보내기",
28
30
  "button.reveal": "보기",
31
+ "button.revoke credential": "자격증명 취소",
29
32
  "button.save": "저장",
30
33
  "button.security-key registration": "보안인증키 등록",
31
34
  "button.show-all": "전체 보기",
32
35
  "button.show-orphans-only": "Orphan 만 보기",
36
+ "button.sign in": "로그인",
33
37
  "button.sign_in": "로그인",
38
+ "button.stand it here": "여기에 세운다",
34
39
  "button.submit": "전송",
35
40
  "button.terminate contract": "계약 해지",
36
41
  "button.transfer owner": "관리자 부여",
37
42
  "button.unlock": "잠금 해제",
38
43
  "button.update": "수정",
44
+ "button.withdraw": "초대 취소",
39
45
  "error.cannot_modify_system_subdomain": "'system' 서브도메인은 수정할 수 없습니다.",
40
46
  "error.domain not allowed": "'{subdomain}' 영역은 이 사용자에게 허가되지 않았습니다.",
41
47
  "error.new-password-and-confirm-password-do-not-match": "새 비밀번호와 확인 비밀번호가 일치하지 않습니다.",
@@ -48,6 +54,7 @@
48
54
  "error.value is empty": "{value}의 값이 존재하지 않습니다.",
49
55
  "error.x already exists in y": "{x}이/가 이미 {y}에 존재합니다.",
50
56
  "error: domain name should consist only of letters or dashes": "도메인 이름에는 영문자와 붙임표만 쓸 수 있습니다",
57
+ "field.accepted at": "수락 시점",
51
58
  "field.access token url": "access token url",
52
59
  "field.accessed-at": "로그인 일시",
53
60
  "field.app key": "app key",
@@ -61,14 +68,17 @@
61
68
  "field.client-secret": "client secret",
62
69
  "field.confirm password": "비밀번호 확인",
63
70
  "field.contact email": "연락 이메일",
71
+ "field.created at": "보낸 시점",
64
72
  "field.description": "설명",
65
73
  "field.email": "이메일",
66
74
  "field.entity": "개체",
75
+ "field.expires at": "만료 시점",
67
76
  "field.forgot-password": "암호가 기억나지 않나요?",
68
77
  "field.granted at": "부여 시각",
69
78
  "field.granted by": "권한 부여자",
70
79
  "field.granted privileges": "할 수 있는 일",
71
80
  "field.hidden": "감추기",
81
+ "field.invited": "초대",
72
82
  "field.ip_address": "IP 주소",
73
83
  "field.model": "모델",
74
84
  "field.module": "모듈",
@@ -94,6 +104,7 @@
94
104
  "field.sign up": "사용자 등록",
95
105
  "field.source": "출처",
96
106
  "field.source-domain": "소스 도메인",
107
+ "field.state": "상태",
97
108
  "field.status": "상태",
98
109
  "field.tag": "태그",
99
110
  "field.target-domain": "타겟 도메인",
@@ -136,6 +147,8 @@
136
147
  "label.execute": "실행",
137
148
  "label.inactive-user": "비활성",
138
149
  "label.inherited": "상속",
150
+ "label.invitation code": "초대 코드",
151
+ "label.invitations": "초대",
139
152
  "label.invite customer": "고객사 파트너 초대",
140
153
  "label.invite user": "사용자 초대",
141
154
  "label.language": "언어",
@@ -155,6 +168,7 @@
155
168
  "label.search_domain": "도메인 검색",
156
169
  "label.select_domain": "도메인 선택",
157
170
  "label.send activation email": "활성화 요청 메일 전송",
171
+ "label.send invitation": "초대 메일 보내기",
158
172
  "label.signin with": "{title} 로그인",
159
173
  "label.state": "상태",
160
174
  "label.subject": "제목",
@@ -168,6 +182,7 @@
168
182
  "label.x name": "{x} 이름",
169
183
  "text.a blank seat opens nothing until you give it privileges": "빈 자리는 권한을 줄 때까지 아무것도 열지 않습니다.",
170
184
  "text.a role of this name exists and will be added to": "같은 이름의 역할이 이미 있습니다. 새로 만들지 않고 그 역할에 권한을 더합니다.",
185
+ "text.a role of this name is already visible": "같은 이름의 역할이 이미 보입니다",
171
186
  "text.account exists so joins immediately": "이미 계정이 있습니다. 넣으면 바로 들어옵니다.",
172
187
  "text.account will be created with the default password": "이 이메일로 가입한 계정이 없습니다. 기본 비밀번호로 계정을 만들어 넣습니다. 비밀번호는 직접 알려 주셔야 합니다.",
173
188
  "text.add_domain_owner_description": "도메인 멤버 중 한 명에게 소유자 권한을 부여합니다.",
@@ -197,9 +212,11 @@
197
212
  "text.cannot be undone": "되돌릴 수 없는 조치",
198
213
  "text.cannot_delete": "삭제할 수 없습니다.",
199
214
  "text.change password": "비밀번호 변경",
215
+ "text.choose a password to finish joining": "비밀번호를 정하면 들어옵니다.",
200
216
  "text.click login history": "최근 로그인 이력을 보고 싶다면 여기를 클릭하세요.",
201
217
  "text.completed": "완료되었습니다.",
202
218
  "text.confirm password": "비밀번호 확인",
219
+ "text.confirm the address this invitation was sent to": "초대를 받은 주소를 입력하세요.",
203
220
  "text.copied": "복사했습니다",
204
221
  "text.copying needs a secure connection": "복사는 보안 연결에서만 됩니다 — 값을 직접 선택해 복사하십시오",
205
222
  "text.could not be saved": "저장하지 못했습니다 — 이유는 위 알림을 보십시오",
@@ -224,13 +241,16 @@
224
241
  "text.failed": "실패",
225
242
  "text.failed to fetch": "목록을 읽지 못했습니다",
226
243
  "text.filter by module name": "모듈 이름으로 걸러 보기",
244
+ "text.from x": "{x} 의 역할",
227
245
  "text.inherited from x": "{x} 에서 물려받습니다",
228
246
  "text.inherited roles are edited in their own domain": "이 역할들은 상위 도메인에 정의되어 있어 그쪽에서만 고칠 수 있습니다.",
229
247
  "text.invalid-email": "이메일 주소 형식이 맞지 않습니다",
230
248
  "text.invalid-username": "아이디나 이메일 주소를 적으십시오",
249
+ "text.invitation resent": "초대 메일을 다시 보냈습니다.",
231
250
  "text.loading": "읽는 중…",
232
251
  "text.new password": "새 비밀번호",
233
252
  "text.no account and no default password": "이 이메일로 가입한 계정이 없고, 이 시스템에는 기본 비밀번호가 설정되어 있지 않습니다. 그 사람이 먼저 가입해야 부를 수 있습니다.",
253
+ "text.no account so an invitation will be mailed": "계정이 없어 초대 메일을 보냅니다. 비밀번호는 본인이 정합니다.",
234
254
  "text.no description for this privilege": "이 권한에 대한 설명이 아직 없습니다.",
235
255
  "text.no description for this role": "설명이 아직 없습니다 — 역할 목록에서 쓸 수 있습니다.",
236
256
  "text.no domain available": "사용할 수 있는 도메인이 없습니다.",
@@ -265,6 +285,7 @@
265
285
  "text.registered roles": "등록된 역할 리스트",
266
286
  "text.remaining time": "{days}일 {hours}시간 {mins}분 {secs}초 남았습니다",
267
287
  "text.remove the role from x people first": "이 역할을 지우려면 먼저 가지고 있는 {x}명에게서 떼어 주십시오.",
288
+ "text.revoking stops every token this appliance holds": "이 단말장치는 다음 요청부터 시스템에 닿지 못합니다. 장치가 가진 토큰은 전부 동작을 멈추고, 새 access token 을 발행해야 다시 닿습니다.",
268
289
  "text.role belongs to x domain and is edited there": "이 역할은 {x}에 정의되어 있어 그쪽에서만 고칠 수 있습니다. 여기서 부여할 수 있기 때문에 목록에 보입니다.",
269
290
  "text.role_management": "역할 관리",
270
291
  "text.roles in use are kept": "가진 사람이 있는 역할은 지우지 않고 남깁니다. 아무도 안 가진 것만 지워집니다.",
@@ -273,6 +294,7 @@
273
294
  "text.signed in": "로그인",
274
295
  "text.signed out": "로그아웃",
275
296
  "text.source_and_target_domain_cannot_be_same": "소스 도메인과 타겟 도메인은 동일할 수 없습니다",
297
+ "text.stand this domain own role of the same name": "{name} 은 {domain} 에 정의되어 여기에서도 보입니다. 물려받은 것을 대신할 생각일 때만 이 도메인에 같은 이름으로 세웁니다. 이름은 그대로 둡니다.",
276
298
  "text.start from a blank seat": "빈 자리에서 시작합니다",
277
299
  "text.struck through are not installed here": "줄이 그어진 것은 이 설치에 없는 권한입니다.",
278
300
  "text.subdomain_change_critical_warning": "경고: 서브도메인을 변경하면 전체 접속 URL(/{type}/{subdomain}/...)이 변경되어 기존에 배포된 링크, 북마크 및 활성 사용자 세션이 무효화될 수 있습니다. 신중하게 확인 후 진행해 주세요.",
@@ -280,12 +302,15 @@
280
302
  "text.the appliance could not be loaded": "단말장치를 읽지 못했습니다",
281
303
  "text.the application could not be loaded": "응용프로그램을 읽지 못했습니다",
282
304
  "text.the binding could not be loaded": "연결을 읽지 못했습니다",
305
+ "text.the code is printed in the invitation email": "초대 메일에 코드가 글자로 적혀 있습니다.",
283
306
  "text.the current access token stops working immediately": "지금 쓰는 access token 이 즉시 동작을 멈춥니다. 그것을 쓰던 곳에 새 token 을 주어야 합니다.",
284
307
  "text.the current secret stops working immediately": "지금 쓰는 secret 이 즉시 동작을 멈춥니다. 그것을 쓰던 곳에 새 secret 을 주어야 합니다.",
285
308
  "text.the list could not be loaded": "목록을 불러오지 못했습니다",
286
309
  "text.they lose access to this domain but keep the account": "이 도메인에서 더 이상 일할 수 없게 됩니다. 계정은 남아 있어서 나중에 다시 부를 수 있습니다.",
310
+ "text.this credential has been revoked": "취소된 자격증명입니다. 새 access token 을 발행하기 전까지 이 단말장치는 시스템에 닿지 못합니다.",
287
311
  "text.this domain is top level and inherits from nowhere": "최상위 도메인 — 물려받는 곳이 없습니다",
288
312
  "text.this field is required": "필수 항목입니다",
313
+ "text.this invitation cannot be used": "사용할 수 없는 초대입니다.",
289
314
  "text.this plant may call the seat what it likes": "이 공장에서 부르는 이름으로 바꿔도 됩니다.",
290
315
  "text.this role no longer exists": "이 역할은 더 이상 없습니다",
291
316
  "text.token expiry time": "토큰 만료 시점",
@@ -293,6 +318,7 @@
293
318
  "text.updated_successfully": "성공적으로 업데이트 되었습니다.",
294
319
  "text.user invitation prompt": "초대하고자 하는 사용자아이디나 이메일을 입력하세요.",
295
320
  "text.user management": "사용자 관리",
321
+ "text.users": "사용자",
296
322
  "text.view only": "상속 역할 — 보기만",
297
323
  "text.where an integration asks for an authorization code": "연동하는 쪽이 authorization code 를 요청하는 주소",
298
324
  "text.where that code is exchanged for an access token": "그 code 를 access token 으로 바꾸는 주소",
@@ -306,8 +332,10 @@
306
332
  "text.x_cannot_delete": "{x}은/는 삭제할 수 없습니다.",
307
333
  "text.x_created_successfully": "{x}이/가 성공적으로 생성되었습니다.",
308
334
  "text.x_deleted_successfully": "{x}이/가 성공적으로 삭제되었습니다.",
335
+ "text.you have joined. sign in to continue": "들어왔습니다. 로그인하세요.",
309
336
  "text.your account is not activated": "계정이 활성화되지 않았습니다.",
310
337
  "text.your email address": "사용자 이메일",
338
+ "title.accept invitation": "초대 수락",
311
339
  "title.add domain owner": "도메인 소유자 추가",
312
340
  "title.attribute model": "속성 모델",
313
341
  "title.attribute-item list": "속성 아이템 리스트",
@@ -1,4 +1,5 @@
1
1
  {
2
+ "button.accept invitation": "terima jemputan",
2
3
  "button.activate": "aktifkan",
3
4
  "button.cancel": "batalkan",
4
5
  "button.close": "tutup",
@@ -20,16 +21,21 @@
20
21
  "button.name it yourself": "name it yourself",
21
22
  "button.register": "daftar",
22
23
  "button.renew access token": "perbaharui token akses",
24
+ "button.resend": "hantar semula",
23
25
  "button.reveal": "tunjuk",
26
+ "button.revoke credential": "batalkan kelayakan",
24
27
  "button.save": "simpan",
25
28
  "button.security-key registration": "pendaftaran kunci keselamatan",
26
29
  "button.show-all": "Tunjukkan semua",
27
30
  "button.show-orphans-only": "Tunjukkan hanya orphan",
31
+ "button.sign in": "log masuk",
28
32
  "button.sign_in": "log masuk",
33
+ "button.stand it here": "bina di sini",
29
34
  "button.submit": "hantar",
30
35
  "button.terminate contract": "tamatkan",
31
36
  "button.transfer owner": "pindah pemilik",
32
37
  "button.update": "kemas kini",
38
+ "button.withdraw": "tarik balik",
33
39
  "error.cannot_modify_system_subdomain": "subdomain 'system' tidak boleh diubah.",
34
40
  "error.domain not allowed": "domain ini tidak dibenarkan untuk anda",
35
41
  "error.new-password-and-confirm-password-do-not-match": "kata laluan baharu dan pengesahan berbeza",
@@ -42,6 +48,7 @@
42
48
  "error.value is empty": "{value} kosong",
43
49
  "error.x already exists in y": "{x} telah wujud dalam {y}",
44
50
  "error: domain name should consist only of letters or dashes": "nama domain hanya boleh menggunakan huruf dan sengkang",
51
+ "field.accepted at": "diterima pada",
45
52
  "field.access token url": "access token url",
46
53
  "field.accessed-at": "diakses pada",
47
54
  "field.app key": "app key",
@@ -55,11 +62,14 @@
55
62
  "field.client-secret": "Rahsia klien",
56
63
  "field.confirm password": "sahkan kata laluan",
57
64
  "field.contact email": "emel untuk dihubungi",
65
+ "field.created at": "dihantar pada",
58
66
  "field.description": "penerangan",
59
67
  "field.email": "e-mel",
60
68
  "field.entity": "entiti",
69
+ "field.expires at": "tamat pada",
61
70
  "field.forgot-password": "terlupa kata laluan",
62
71
  "field.hidden": "tersembunyi",
72
+ "field.invited": "dijemput",
63
73
  "field.ip_address": "alamat IP",
64
74
  "field.model": "model",
65
75
  "field.name": "nama",
@@ -80,6 +90,7 @@
80
90
  "field.sign out": "log keluar",
81
91
  "field.sign up": "daftar akaun",
82
92
  "field.source-domain": "domain sumber",
93
+ "field.state": "keadaan",
83
94
  "field.status": "status",
84
95
  "field.tag": "tag",
85
96
  "field.target-domain": "domain sasaran",
@@ -114,6 +125,8 @@
114
125
  "label.draft": "draf",
115
126
  "label.email": "emel",
116
127
  "label.inactive-user": "tidak aktif",
128
+ "label.invitation code": "kod jemputan",
129
+ "label.invitations": "jemputan",
117
130
  "label.invite customer": "jemput pelanggan",
118
131
  "label.invite user": "jemput pengguna",
119
132
  "label.language": "bahasa",
@@ -131,6 +144,7 @@
131
144
  "label.search_domain": "cari domain",
132
145
  "label.select_domain": "pilih domain",
133
146
  "label.send activation email": "hantar pengaktifan emel",
147
+ "label.send invitation": "hantar jemputan",
134
148
  "label.signin with": "daftar masuk dengan {title}",
135
149
  "label.state": "negeri",
136
150
  "label.subject": "subjek",
@@ -143,6 +157,7 @@
143
157
  "label.x name": "{x} nama",
144
158
  "text.a blank seat opens nothing until you give it privileges": "A blank seat opens nothing until you give it privileges.",
145
159
  "text.a role of this name exists and will be added to": "A role of this name already exists. It will be used as it stands and these privileges added to it.",
160
+ "text.a role of this name is already visible": "peranan dengan nama ini sudah kelihatan",
146
161
  "text.already in this domain": "already here",
147
162
  "text.an application signs in on its own behalf": "aplikasi log masuk bagi pihaknya sendiri, dengan kunci dan keizinannya sendiri",
148
163
  "text.appliance": "perkakas terminal",
@@ -166,9 +181,11 @@
166
181
  "text.bound applications": "aplikasi terikat",
167
182
  "text.cannot_delete": "tidak boleh dipadam",
168
183
  "text.change password": "tukar kata laluan",
184
+ "text.choose a password to finish joining": "pilih kata laluan untuk menyertai.",
169
185
  "text.click login history": "Jika anda ingin melihat sejarah log masuk terkini anda, klik di sini.",
170
186
  "text.completed": "selesai",
171
187
  "text.confirm password": "sahkan kata laluan",
188
+ "text.confirm the address this invitation was sent to": "masukkan alamat yang menerima jemputan ini.",
172
189
  "text.copied": "disalin",
173
190
  "text.copying needs a secure connection": "salinan memerlukan sambungan selamat — pilih nilai dan salin secara manual",
174
191
  "text.could not be saved": "tidak dapat disimpan — lihat mesej di atas untuk sebabnya",
@@ -189,10 +206,13 @@
189
206
  "text.env-var-list-page": "senarai pengubahsuaian persekitaran",
190
207
  "text.expired": "tamat tempoh",
191
208
  "text.expires at x": "tamat {x}",
209
+ "text.from x": "daripada {x}",
192
210
  "text.inherited from x": "diwarisi daripada {x}",
193
211
  "text.invalid-email": "itu bukan alamat emel",
194
212
  "text.invalid-username": "gunakan id atau alamat emel",
213
+ "text.invitation resent": "jemputan dihantar semula.",
195
214
  "text.new password": "kata laluan baru",
215
+ "text.no account so an invitation will be mailed": "tiada akaun lagi, jadi jemputan akan dihantar melalui e-mel. mereka memilih kata laluan sendiri.",
196
216
  "text.no domain available": "maaf, tiada domain untuk dipilih",
197
217
  "text.no role to show": "skrin ini dibuka tanpa peranan",
198
218
  "text.not issued": "belum dikeluarkan",
@@ -207,12 +227,14 @@
207
227
  "text.register new application": "daftar aplikasi baharu",
208
228
  "text.registered roles": "peranan sudah didaftar",
209
229
  "text.remaining time": "masa tinggal {days} hari {hours} jam {mins} minit {secs} saat",
230
+ "text.revoking stops every token this appliance holds": "peranti ini tidak lagi boleh mencapai sistem bermula permintaan berikutnya. semua token yang dipegangnya berhenti berfungsi, dan hanya token akses baharu boleh memulihkannya.",
210
231
  "text.role_management": "pengurusan peranan",
211
232
  "text.select domain": "pilih domain",
212
233
  "text.should select at least one of x": "sila pilih antara satu {x}",
213
234
  "text.signed in": "telah log masuk",
214
235
  "text.signed out": "telah log keluar",
215
236
  "text.sila isi semua medan yang diperlukan": "sila isi semua medan yang diperlukan",
237
+ "text.stand this domain own role of the same name": "{name} ditakrifkan dalam {domain} dan sudah kelihatan di sini. Bina milik domain ini dengan nama yang sama hanya jika anda berniat menggantikan yang diwarisi — namanya kekal sama.",
216
238
  "text.start from a blank seat": "start from a blank seat",
217
239
  "text.struck through are not installed here": "Struck through are privileges this installation does not have.",
218
240
  "text.subdomain_change_critical_warning": "amaran: menukar subdomain akan mengubah URL capaian penuh (/{type}/{subdomain}/...) dan mungkin membatalkan pautan luaran, penanda buku dan sesi pengguna aktif sedia ada. sila teruskan dengan berhati-hati.",
@@ -220,17 +242,21 @@
220
242
  "text.the appliance could not be loaded": "peranti tidak dapat dimuatkan",
221
243
  "text.the application could not be loaded": "aplikasi tidak dapat dimuatkan",
222
244
  "text.the binding could not be loaded": "ikatan tidak dapat dimuatkan",
245
+ "text.the code is printed in the invitation email": "kod itu tertera dalam e-mel jemputan.",
223
246
  "text.the current access token stops working immediately": "token akses semasa berhenti berfungsi serta-merta, dan apa-apa yang menggunakannya perlu diberi yang baharu.",
224
247
  "text.the current secret stops working immediately": "rahsia semasa berhenti berfungsi serta-merta, dan apa-apa yang menggunakannya perlu diberi yang baharu.",
225
248
  "text.the list could not be loaded": "senarai tidak dapat dimuatkan",
249
+ "text.this credential has been revoked": "kelayakan ini telah dibatalkan. peranti ini tidak boleh mencapai sistem sehingga token akses baharu dijana.",
226
250
  "text.this domain is top level and inherits from nowhere": "domain teratas — tiada yang diwarisi",
227
251
  "text.this field is required": "medan ini diperlukan",
252
+ "text.this invitation cannot be used": "jemputan ini tidak boleh digunakan.",
228
253
  "text.this plant may call the seat what it likes": "Call the seat whatever this plant calls it.",
229
254
  "text.this role no longer exists": "peranan ini tidak wujud lagi",
230
255
  "text.token expiry time": "masa tamat token",
231
256
  "text.updated_successfully": "berjaya dikemaskini",
232
257
  "text.user invitation prompt": "sila masukkan nama pengguna atau alamat e-mel pengguna yang ingin anda jemput.",
233
258
  "text.user management": "pengurusan pengguna",
259
+ "text.users": "pengguna",
234
260
  "text.where an integration asks for an authorization code": "tempat integrasi meminta kod kebenaran",
235
261
  "text.where that code is exchanged for an access token": "tempat kod itu ditukar dengan token akses",
236
262
  "text.x modules y privileges": "{x} modules · {y} privileges",
@@ -238,8 +264,10 @@
238
264
  "text.x_cannot_delete": "{x} tidak boleh dipadam",
239
265
  "text.x_created_successfully": "{x} berjaya dibina",
240
266
  "text.x_deleted_successfully": "{x} berjaya dipadam",
267
+ "text.you have joined. sign in to continue": "anda telah menyertai. sila log masuk.",
241
268
  "text.your account is not activated": "akaun anda belum diaktifkan",
242
269
  "text.your email address": "alamat emel anda",
270
+ "title.accept invitation": "terima jemputan",
243
271
  "title.attribute model": "model atribut",
244
272
  "title.attribute-item list": "senarai ciri-ciri",
245
273
  "title.attributes": "ciri-ciri",
@@ -1,4 +1,5 @@
1
1
  {
2
+ "button.accept invitation": "接受邀请",
2
3
  "button.activate": "激活",
3
4
  "button.cancel": "取消",
4
5
  "button.close": "关闭",
@@ -20,16 +21,21 @@
20
21
  "button.name it yourself": "name it yourself",
21
22
  "button.register": "注册",
22
23
  "button.renew access token": "更新访问令牌",
24
+ "button.resend": "重新发送",
23
25
  "button.reveal": "显示",
26
+ "button.revoke credential": "撤销凭据",
24
27
  "button.save": "保存",
25
28
  "button.security-key registration": "安全密钥注册",
26
29
  "button.show-all": "全部显示",
27
30
  "button.show-orphans-only": "仅显示孤立项",
31
+ "button.sign in": "登录",
28
32
  "button.sign_in": "登录",
33
+ "button.stand it here": "在此建立",
29
34
  "button.submit": "提交",
30
35
  "button.terminate contract": "终止合同",
31
36
  "button.transfer owner": "转让所有权",
32
37
  "button.update": "更新",
38
+ "button.withdraw": "撤回邀请",
33
39
  "error.cannot_modify_system_subdomain": "无法修改'system'子域。",
34
40
  "error.domain not allowed": "此域名对此用户不可用",
35
41
  "error.new-password-and-confirm-password-do-not-match": "新密码与认证密码不同",
@@ -42,6 +48,7 @@
42
48
  "error.value is empty": "{value}为空",
43
49
  "error.x already exists in y": "{x}已存在于{y}",
44
50
  "error: domain name should consist only of letters or dashes": "域名只能使用字母和连字符",
51
+ "field.accepted at": "接受时间",
45
52
  "field.access token url": "access token url",
46
53
  "field.accessed-at": "访问于",
47
54
  "field.app key": "app key",
@@ -55,11 +62,14 @@
55
62
  "field.client-secret": "客户端密钥",
56
63
  "field.confirm password": "确认密码",
57
64
  "field.contact email": "联系邮箱",
65
+ "field.created at": "发送时间",
58
66
  "field.description": "说明",
59
67
  "field.email": "电子邮件",
60
68
  "field.entity": "实体",
69
+ "field.expires at": "过期时间",
61
70
  "field.forgot-password": "忘记密码",
62
71
  "field.hidden": "隐藏",
72
+ "field.invited": "邀请",
63
73
  "field.ip_address": "IP地址",
64
74
  "field.model": "型号",
65
75
  "field.name": "名称",
@@ -80,6 +90,7 @@
80
90
  "field.sign out": "退出",
81
91
  "field.sign up": "注册",
82
92
  "field.source-domain": "源域",
93
+ "field.state": "状态",
83
94
  "field.status": "状态",
84
95
  "field.tag": "tag",
85
96
  "field.target-domain": "目标域",
@@ -114,6 +125,8 @@
114
125
  "label.draft": "草稿",
115
126
  "label.email": "电子邮件",
116
127
  "label.inactive-user": "非活动用户",
128
+ "label.invitation code": "邀请码",
129
+ "label.invitations": "邀请",
117
130
  "label.invite customer": "邀请客户或合作伙伴",
118
131
  "label.invite user": "邀请用户",
119
132
  "label.language": "语言",
@@ -131,6 +144,7 @@
131
144
  "label.search_domain": "搜索域",
132
145
  "label.select_domain": "选择域",
133
146
  "label.send activation email": "发送激活电子邮件",
147
+ "label.send invitation": "发送邀请邮件",
134
148
  "label.signin with": "通过 {title} 登录",
135
149
  "label.state": "状态",
136
150
  "label.subject": "主题",
@@ -143,6 +157,7 @@
143
157
  "label.x name": "{x} 名称",
144
158
  "text.a blank seat opens nothing until you give it privileges": "A blank seat opens nothing until you give it privileges.",
145
159
  "text.a role of this name exists and will be added to": "A role of this name already exists. It will be used as it stands and these privileges added to it.",
160
+ "text.a role of this name is already visible": "同名角色已可见",
146
161
  "text.already in this domain": "already here",
147
162
  "text.an application signs in on its own behalf": "应用程序以自己的密钥和权限登录",
148
163
  "text.appliance": "终端设备",
@@ -166,9 +181,11 @@
166
181
  "text.bound applications": "已绑定应用程序",
167
182
  "text.cannot_delete": "无法删除",
168
183
  "text.change password": "修改密码",
184
+ "text.choose a password to finish joining": "设置密码后即可加入。",
169
185
  "text.click login history": "如果您想查看最近的登录记录,请点击这里。",
170
186
  "text.completed": "已完成",
171
187
  "text.confirm password": "认证密码",
188
+ "text.confirm the address this invitation was sent to": "请输入收到邀请的邮箱地址。",
172
189
  "text.copied": "已复制",
173
190
  "text.copying needs a secure connection": "复制需要安全连接 — 请手动选择并复制该值",
174
191
  "text.could not be saved": "保存失败 — 原因请看上方提示",
@@ -188,10 +205,13 @@
188
205
  "text.env-var-list-page": "环境变量列表",
189
206
  "text.expired": "已过期",
190
207
  "text.expires at x": "{x} 过期",
208
+ "text.from x": "来自 {x}",
191
209
  "text.inherited from x": "继承自 {x}",
192
210
  "text.invalid-email": "电子邮件地址格式不正确",
193
211
  "text.invalid-username": "请输入 ID 或电子邮件地址",
212
+ "text.invitation resent": "已重新发送邀请邮件。",
194
213
  "text.new password": "新密码",
214
+ "text.no account so an invitation will be mailed": "尚无账号,将发送邀请邮件,由本人设置密码。",
195
215
  "text.no domain available": "抱歉,没有域名",
196
216
  "text.no role to show": "打开此页面时未指定角色",
197
217
  "text.not issued": "未签发",
@@ -207,12 +227,14 @@
207
227
  "text.register new application": "注册新应用程序",
208
228
  "text.registered roles": "角色登记成功",
209
229
  "text.remaining time": "剩余{days}天{hours}小时{mins}分钟{secs}秒",
230
+ "text.revoking stops every token this appliance holds": "该设备从下一次请求起将无法访问系统。它持有的令牌全部失效,只有重新生成访问令牌才能恢复。",
210
231
  "text.role_management": "角色管理",
211
232
  "text.select domain": "选域名",
212
233
  "text.should select at least one of x": "请选择以下至少一项{x}",
213
234
  "text.signed in": "已登录",
214
235
  "text.signed out": "已退出",
215
236
  "text.source_and_target_domain_cannot_be_same": "源域和目标域不能相同",
237
+ "text.stand this domain own role of the same name": "{name} 定义在 {domain},在此处也可见。只有打算取代所继承的角色时,才在该域中建立同名角色。名称保持不变。",
216
238
  "text.start from a blank seat": "start from a blank seat",
217
239
  "text.struck through are not installed here": "Struck through are privileges this installation does not have.",
218
240
  "text.subdomain_change_critical_warning": "警告: 更改子域将更改完整的访问URL(/{type}/{subdomain}/...),并可能使现有的外部链接、书签和活动用户会话失效。请谨慎操作。",
@@ -220,17 +242,21 @@
220
242
  "text.the appliance could not be loaded": "无法读取终端设备",
221
243
  "text.the application could not be loaded": "无法读取应用程序",
222
244
  "text.the binding could not be loaded": "无法读取绑定",
245
+ "text.the code is printed in the invitation email": "邀请邮件中以文字形式提供了该邀请码。",
223
246
  "text.the current access token stops working immediately": "当前访问令牌将立即失效,使用它的地方需要换成新的令牌。",
224
247
  "text.the current secret stops working immediately": "当前密钥将立即失效,使用它的地方需要换成新的密钥。",
225
248
  "text.the list could not be loaded": "无法加载列表",
249
+ "text.this credential has been revoked": "该凭据已被撤销。在生成新的访问令牌之前,此设备无法访问系统。",
226
250
  "text.this domain is top level and inherits from nowhere": "顶级域 — 没有可继承的来源",
227
251
  "text.this field is required": "此项为必填",
252
+ "text.this invitation cannot be used": "该邀请无法使用。",
228
253
  "text.this plant may call the seat what it likes": "Call the seat whatever this plant calls it.",
229
254
  "text.this role no longer exists": "此角色已不存在",
230
255
  "text.token expiry time": "令牌过期时间",
231
256
  "text.updated_successfully": "更新成功",
232
257
  "text.user invitation prompt": "请输入您希望邀请的用户的用户名或电子邮件地址。",
233
258
  "text.user management": "用户管理",
259
+ "text.users": "用户",
234
260
  "text.where an integration asks for an authorization code": "集成方申请授权码的地址",
235
261
  "text.where that code is exchanged for an access token": "用该授权码换取访问令牌的地址",
236
262
  "text.x modules y privileges": "{x} modules · {y} privileges",
@@ -238,8 +264,10 @@
238
264
  "text.x_cannot_delete": "{x}无法删除",
239
265
  "text.x_created_successfully": "{x}创建成功",
240
266
  "text.x_deleted_successfully": "{x}删除成功",
267
+ "text.you have joined. sign in to continue": "已加入。请登录。",
241
268
  "text.your account is not activated": "您的账号还没验证",
242
269
  "text.your email address": "您的邮件地址",
270
+ "title.accept invitation": "接受邀请",
243
271
  "title.attribute model": "属性模型",
244
272
  "title.attribute-item list": "属性列表",
245
273
  "title.attributes": "属性",