@abtnode/ux 1.16.26-beta-346cba92 → 1.16.26-beta-818ea1c5
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.
- package/es/blocklet/actions.js +43 -23
- package/es/blocklet/publish/project-list.js +56 -18
- package/es/blocklet/storage/action.js +8 -4
- package/es/blocklet/storage/item.js +2 -1
- package/es/contexts/blocklet-storage.js +0 -4
- package/es/locales/ar.js +8 -3
- package/es/locales/de.js +8 -3
- package/es/locales/en.js +9 -4
- package/es/locales/es.js +9 -4
- package/es/locales/fr.js +9 -4
- package/es/locales/hi.js +9 -4
- package/es/locales/i18n.db +0 -0
- package/es/locales/id.js +8 -3
- package/es/locales/ja.js +9 -4
- package/es/locales/ko.js +9 -4
- package/es/locales/pt.js +8 -3
- package/es/locales/ru.js +7 -2
- package/es/locales/th.js +7 -2
- package/es/locales/vi.js +8 -3
- package/es/locales/zh-tw.js +7 -2
- package/es/locales/zh.js +7 -2
- package/lib/blocklet/actions.js +47 -26
- package/lib/blocklet/publish/project-list.js +56 -18
- package/lib/blocklet/storage/action.js +10 -6
- package/lib/blocklet/storage/item.js +2 -1
- package/lib/contexts/blocklet-storage.js +0 -4
- package/lib/locales/ar.js +8 -3
- package/lib/locales/de.js +8 -3
- package/lib/locales/en.js +9 -4
- package/lib/locales/es.js +9 -4
- package/lib/locales/fr.js +9 -4
- package/lib/locales/hi.js +9 -4
- package/lib/locales/i18n.db +0 -0
- package/lib/locales/id.js +8 -3
- package/lib/locales/ja.js +9 -4
- package/lib/locales/ko.js +9 -4
- package/lib/locales/pt.js +8 -3
- package/lib/locales/ru.js +7 -2
- package/lib/locales/th.js +7 -2
- package/lib/locales/vi.js +8 -3
- package/lib/locales/zh-tw.js +7 -2
- package/lib/locales/zh.js +7 -2
- package/package.json +17 -17
package/es/blocklet/actions.js
CHANGED
|
@@ -1,35 +1,36 @@
|
|
|
1
1
|
/* eslint-disable react/no-unstable-nested-components */
|
|
2
2
|
/* eslint-disable operator-linebreak */
|
|
3
|
-
import { useState, useContext } from 'react';
|
|
4
|
-
import PropTypes from 'prop-types';
|
|
5
3
|
import styled from '@emotion/styled';
|
|
6
|
-
import
|
|
4
|
+
import PropTypes from 'prop-types';
|
|
5
|
+
import { useContext, useEffect, useState } from 'react';
|
|
6
|
+
import { Link, useNavigate } from 'react-router-dom';
|
|
7
7
|
import useLocalStorage from 'react-use/lib/useLocalStorage';
|
|
8
|
-
import
|
|
9
|
-
import
|
|
10
|
-
import
|
|
8
|
+
import { LAUNCH_SESSION_STATUS } from '@abtnode/constant';
|
|
9
|
+
import MoreVertIcon from '@mui/icons-material/MoreVert';
|
|
10
|
+
import Alert from '@mui/material/Alert';
|
|
11
11
|
import ButtonGroup from '@mui/material/ButtonGroup';
|
|
12
12
|
import Spinner from '@mui/material/CircularProgress';
|
|
13
|
-
import
|
|
14
|
-
import
|
|
13
|
+
import Divider from '@mui/material/Divider';
|
|
14
|
+
import FormControlLabel from '@mui/material/FormControlLabel';
|
|
15
|
+
import IconButton from '@mui/material/IconButton';
|
|
15
16
|
import ListItemIcon from '@mui/material/ListItemIcon';
|
|
16
17
|
import ListItemText from '@mui/material/ListItemText';
|
|
17
|
-
import
|
|
18
|
+
import Menu from '@mui/material/Menu';
|
|
19
|
+
import MenuItem from '@mui/material/MenuItem';
|
|
18
20
|
import Radio from '@mui/material/Radio';
|
|
19
21
|
import RadioGroup from '@mui/material/RadioGroup';
|
|
20
|
-
import
|
|
21
|
-
import Alert from '@mui/material/Alert';
|
|
22
|
+
import Typography from '@mui/material/Typography';
|
|
22
23
|
import Button from '@arcblock/ux/lib/Button';
|
|
23
|
-
import { getAppMissingConfigs, isDeletableBlocklet, hasRunnableComponent, getDisplayName, isInProgress } from '@blocklet/meta/lib/util';
|
|
24
24
|
import { LocaleContext } from '@arcblock/ux/lib/Locale/context';
|
|
25
|
+
import { getAppMissingConfigs, getDisplayName, hasRunnableComponent, isDeletableBlocklet, isInProgress } from '@blocklet/meta/lib/util';
|
|
25
26
|
import { BLOCKLET_CONTROLLER_STATUS, BLOCKLET_MODES } from '@blocklet/constant';
|
|
26
27
|
import Toast from '@arcblock/ux/lib/Toast';
|
|
27
|
-
import { sleep, formatError, isDownloading } from '../util';
|
|
28
|
-
import { getServerUrl } from './util';
|
|
29
|
-
import { useNodeContext } from '../contexts/node';
|
|
30
28
|
import Confirm from '../confirm';
|
|
31
|
-
import
|
|
29
|
+
import { useNodeContext } from '../contexts/node';
|
|
30
|
+
import { formatError, isDownloading, sleep } from '../util';
|
|
32
31
|
import joinUrlKeepSearch from '../util/join-url-keep-search';
|
|
32
|
+
import Icons from './icons';
|
|
33
|
+
import { getServerUrl } from './util';
|
|
33
34
|
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
34
35
|
export default function BlockletActions({
|
|
35
36
|
blocklet,
|
|
@@ -56,13 +57,32 @@ export default function BlockletActions({
|
|
|
56
57
|
recommendedUrl
|
|
57
58
|
} = useBlockletUrlEvaluation(blocklet);
|
|
58
59
|
const inProgress = isInProgress(blocklet.status);
|
|
59
|
-
const disableStart =
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
60
|
+
const [disableStart, setDisableStart] = useState(false);
|
|
61
|
+
useEffect(() => {
|
|
62
|
+
if (!blocklet?.controller) {
|
|
63
|
+
return;
|
|
64
|
+
}
|
|
65
|
+
setDisableStart(blocklet?.controller?.status?.value === BLOCKLET_CONTROLLER_STATUS.suspended);
|
|
66
|
+
const func = async () => {
|
|
67
|
+
try {
|
|
68
|
+
const data = await node.api.getLauncherSession({
|
|
69
|
+
input: {
|
|
70
|
+
launcherSessionId: blocklet?.controller?.launcherSessionId,
|
|
71
|
+
launcherUrl: blocklet?.controller?.launcherUrl
|
|
72
|
+
}
|
|
73
|
+
});
|
|
74
|
+
if (data?.error) {
|
|
75
|
+
console.error('get launcher session failed', data.error);
|
|
76
|
+
return;
|
|
77
|
+
}
|
|
78
|
+
setDisableStart([LAUNCH_SESSION_STATUS.expired, LAUNCH_SESSION_STATUS.terminated].includes(data?.launcherSession?.status));
|
|
79
|
+
} catch (error) {
|
|
80
|
+
console.error('call getLauncherSession error', error);
|
|
81
|
+
}
|
|
82
|
+
};
|
|
83
|
+
func();
|
|
84
|
+
// eslint-disable-next-line react-hooks/exhaustive-deps
|
|
85
|
+
}, []);
|
|
66
86
|
const {
|
|
67
87
|
inService
|
|
68
88
|
} = node;
|
|
@@ -16,7 +16,9 @@ import Button from '@arcblock/ux/lib/Button';
|
|
|
16
16
|
import Toast from '@arcblock/ux/lib/Toast';
|
|
17
17
|
import Tag from '@arcblock/ux/lib/Tag';
|
|
18
18
|
import RelativeTime from '@arcblock/ux/lib/RelativeTime';
|
|
19
|
+
import DidConnect from '@arcblock/did-connect/lib/Connect';
|
|
19
20
|
import { Tooltip } from '@mui/material';
|
|
21
|
+
import { useSessionContext } from '../../contexts/session';
|
|
20
22
|
import { useBlockletContext } from '../../contexts/blocklet';
|
|
21
23
|
import { useNodeContext } from '../../contexts/node';
|
|
22
24
|
import EmptySpinner from '../../empty-spinner';
|
|
@@ -33,11 +35,15 @@ export default function ProjectList() {
|
|
|
33
35
|
const {
|
|
34
36
|
api
|
|
35
37
|
} = useNodeContext();
|
|
38
|
+
const {
|
|
39
|
+
api: sessionApi
|
|
40
|
+
} = useSessionContext();
|
|
36
41
|
const [loading, setLoading] = useState(true);
|
|
37
42
|
const {
|
|
38
43
|
blocklet
|
|
39
44
|
} = useBlockletContext();
|
|
40
45
|
const [deleteConfirm, setDeleteConfirm] = useState(null);
|
|
46
|
+
const [openDidConnect, setOpenDidConnect] = useState(false);
|
|
41
47
|
const {
|
|
42
48
|
componentDid = ''
|
|
43
49
|
} = useParams();
|
|
@@ -65,23 +71,27 @@ export default function ProjectList() {
|
|
|
65
71
|
const onDeleteProject = project => {
|
|
66
72
|
setDeleteConfirm(project);
|
|
67
73
|
};
|
|
68
|
-
const
|
|
74
|
+
const confirmDeleteProject = () => {
|
|
69
75
|
setLoading(false);
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
Toast.error(
|
|
84
|
-
|
|
76
|
+
setOpenDidConnect(true);
|
|
77
|
+
};
|
|
78
|
+
const handleDidConnectClose = () => {
|
|
79
|
+
setOpenDidConnect(false);
|
|
80
|
+
setDeleteConfirm(null);
|
|
81
|
+
};
|
|
82
|
+
const handleDidConnectDidError = err => {
|
|
83
|
+
Toast.error(err.message);
|
|
84
|
+
setOpenDidConnect(false);
|
|
85
|
+
setDeleteConfirm(null);
|
|
86
|
+
};
|
|
87
|
+
const handleDidConnectDidSuccess = result => {
|
|
88
|
+
if (!result?.deleted) {
|
|
89
|
+
Toast.error('Delete project failed');
|
|
90
|
+
return;
|
|
91
|
+
}
|
|
92
|
+
getProjects();
|
|
93
|
+
setOpenDidConnect(false);
|
|
94
|
+
setDeleteConfirm(null);
|
|
85
95
|
};
|
|
86
96
|
useEffect(() => {
|
|
87
97
|
getProjects();
|
|
@@ -266,6 +276,34 @@ export default function ProjectList() {
|
|
|
266
276
|
}
|
|
267
277
|
}
|
|
268
278
|
}].filter(Boolean);
|
|
279
|
+
const didConnect = openDidConnect ? /*#__PURE__*/_jsx(DidConnect, {
|
|
280
|
+
open: true,
|
|
281
|
+
popup: true,
|
|
282
|
+
onClose: handleDidConnectClose,
|
|
283
|
+
action: "check-has-project-id",
|
|
284
|
+
locale: locale,
|
|
285
|
+
checkFn: sessionApi.get,
|
|
286
|
+
saveConnect: false,
|
|
287
|
+
forceConnected: false,
|
|
288
|
+
checkTimeout: 5 * 60 * 1000,
|
|
289
|
+
onSuccess: handleDidConnectDidSuccess,
|
|
290
|
+
onError: handleDidConnectDidError,
|
|
291
|
+
extraParams: {
|
|
292
|
+
projectId: deleteConfirm.id,
|
|
293
|
+
did: blocklet.meta.did,
|
|
294
|
+
name: deleteConfirm.blockletTitle
|
|
295
|
+
},
|
|
296
|
+
messages: {
|
|
297
|
+
title: t('blocklet.publish.deleteProject.title', {
|
|
298
|
+
name: deleteConfirm.blockletTitle
|
|
299
|
+
}),
|
|
300
|
+
scan: t('blocklet.publish.deleteProject.scan', {
|
|
301
|
+
name: deleteConfirm.blockletTitle
|
|
302
|
+
}),
|
|
303
|
+
confirm: t('blocklet.publish.deleteProject.confirm'),
|
|
304
|
+
success: t('blocklet.publish.deleteProject.success')
|
|
305
|
+
}
|
|
306
|
+
}) : null;
|
|
269
307
|
return /*#__PURE__*/_jsxs(Main, {
|
|
270
308
|
children: [/*#__PURE__*/_jsxs(Box, {
|
|
271
309
|
display: "flex",
|
|
@@ -321,9 +359,9 @@ export default function ProjectList() {
|
|
|
321
359
|
title: `${t('common.delete')} ${deleteConfirm.blockletTitle}`,
|
|
322
360
|
description: t('blocklet.publish.deleteBlockletTip'),
|
|
323
361
|
confirm: t('common.confirm'),
|
|
324
|
-
onConfirm:
|
|
362
|
+
onConfirm: confirmDeleteProject,
|
|
325
363
|
onCancel: () => setDeleteConfirm(null)
|
|
326
|
-
})]
|
|
364
|
+
}), didConnect]
|
|
327
365
|
});
|
|
328
366
|
}
|
|
329
367
|
ProjectList.propTypes = {};
|
|
@@ -17,7 +17,8 @@ import DeleteDIDSpacesGateWay from './delete';
|
|
|
17
17
|
* onDelete: (spaceGateway: import('./connected').SpaceGateway) => Promise<void>,
|
|
18
18
|
* onConnect: (spaceGateway: import('./connected').SpaceGateway) => Promise<void>,
|
|
19
19
|
* enableSwitchToSpace: true | false,
|
|
20
|
-
* connected: false | true
|
|
20
|
+
* connected: false | true,
|
|
21
|
+
* backupInProgress: false | true,
|
|
21
22
|
* } & import('@mui/material').IconButtonProps} { spaceGateway, onDelete, onConnect, enableSwitchToSpace, connected, ...rest }
|
|
22
23
|
* @return {React.Component}
|
|
23
24
|
*/
|
|
@@ -28,6 +29,7 @@ function SpaceItemAction({
|
|
|
28
29
|
onDelete,
|
|
29
30
|
onConnect,
|
|
30
31
|
enableSwitchToSpace,
|
|
32
|
+
backupInProgress,
|
|
31
33
|
...rest
|
|
32
34
|
}) {
|
|
33
35
|
const [anchorEl, setAnchorEl] = useState(null);
|
|
@@ -117,7 +119,7 @@ function SpaceItemAction({
|
|
|
117
119
|
}), /*#__PURE__*/_jsx(ListItemText, {
|
|
118
120
|
children: t('storage.spaces.connect.switchToSpace')
|
|
119
121
|
})]
|
|
120
|
-
}), !
|
|
122
|
+
}), !backupInProgress && /*#__PURE__*/_jsx(DeleteDIDSpacesGateWay, {
|
|
121
123
|
spaceGateway: spaceGateway,
|
|
122
124
|
onDelete: onDelete
|
|
123
125
|
})]
|
|
@@ -135,11 +137,13 @@ SpaceItemAction.propTypes = {
|
|
|
135
137
|
connected: PropTypes.bool.isRequired,
|
|
136
138
|
enableSwitchToSpace: PropTypes.bool,
|
|
137
139
|
onDelete: PropTypes.func,
|
|
138
|
-
onConnect: PropTypes.func
|
|
140
|
+
onConnect: PropTypes.func,
|
|
141
|
+
backupInProgress: PropTypes.bool
|
|
139
142
|
};
|
|
140
143
|
SpaceItemAction.defaultProps = {
|
|
141
144
|
onDelete: () => {},
|
|
142
145
|
onConnect: () => {},
|
|
143
|
-
enableSwitchToSpace: true
|
|
146
|
+
enableSwitchToSpace: true,
|
|
147
|
+
backupInProgress: false
|
|
144
148
|
};
|
|
145
149
|
export default SpaceItemAction;
|
|
@@ -442,7 +442,8 @@ function SpaceItem({
|
|
|
442
442
|
connected: connected,
|
|
443
443
|
onDelete: onDelete,
|
|
444
444
|
onConnect: onConnect,
|
|
445
|
-
enableSwitchToSpace: backupProgress?.completed || isEmpty(backupProgress?.message)
|
|
445
|
+
enableSwitchToSpace: backupProgress?.completed || isEmpty(backupProgress?.message),
|
|
446
|
+
backupInProgress: shouldDisplayBackupProgress
|
|
446
447
|
})]
|
|
447
448
|
})]
|
|
448
449
|
}), /*#__PURE__*/_jsx(DidConnect, {
|
|
@@ -144,10 +144,6 @@ function BlockletStorageProvider({
|
|
|
144
144
|
if (!spaceGateway) {
|
|
145
145
|
return;
|
|
146
146
|
}
|
|
147
|
-
if (spaceGateway.endpoint === backupEndpoint) {
|
|
148
|
-
toast.warning(t('storage.spaces.gateway.delete.failedForConnected'));
|
|
149
|
-
return;
|
|
150
|
-
}
|
|
151
147
|
await api.deleteBlockletSpaceGateway({
|
|
152
148
|
input: {
|
|
153
149
|
did: blocklet.meta.did,
|
package/es/locales/ar.js
CHANGED
|
@@ -354,7 +354,7 @@ export default {
|
|
|
354
354
|
uploadToStore: 'تحميل إلى المتجر',
|
|
355
355
|
upload: 'تحميل',
|
|
356
356
|
blockletStudio: 'استوديو بلوكليت',
|
|
357
|
-
visitStore: '
|
|
357
|
+
visitStore: 'زيارة المتجر',
|
|
358
358
|
reconnect: 'إعادة الاتصال'
|
|
359
359
|
},
|
|
360
360
|
blocklet: {
|
|
@@ -703,7 +703,13 @@ export default {
|
|
|
703
703
|
connectStoreSuccess: 'تم الاتصال بمتجر البلوكليت بنجاح',
|
|
704
704
|
uploadToStoreSuccess: 'تم تحميل بلوكليت بنجاح في المتجر ، تحتاج إلى نشره في المتجر',
|
|
705
705
|
viewLastRelease: 'عرض آخر إصدار',
|
|
706
|
-
reconnectStoreTip: 'بعد إعادة الاتصال، سيتم ربط مطور جديد. هل أنت متأكد أنك تريد إعادة الاتصال؟'
|
|
706
|
+
reconnectStoreTip: 'بعد إعادة الاتصال، سيتم ربط مطور جديد. هل أنت متأكد أنك تريد إعادة الاتصال؟',
|
|
707
|
+
deleteProject: {
|
|
708
|
+
title: 'احذف {name}',
|
|
709
|
+
scan: 'امسح رمز الاستجابة السريعة أدناه لحذف {name}',
|
|
710
|
+
confirm: 'يرجى تأكيد استخدام محفظة الهوية اللامركزية',
|
|
711
|
+
success: 'تم حذف مشروع Blocklet ، يرجى متابعة العملية الخاصة بك.'
|
|
712
|
+
}
|
|
707
713
|
},
|
|
708
714
|
titleValidationError: 'يجب أن يكون طول العنوان على الأقل 3 أحرف',
|
|
709
715
|
descriptionValidationError: 'يجب أن تكون طول الوصف بين 3 و 160 حرفًا'
|
|
@@ -1610,7 +1616,6 @@ export default {
|
|
|
1610
1616
|
title: 'حذف البوابة',
|
|
1611
1617
|
succeeded: 'حذف DID Spaces {name} بنجاح',
|
|
1612
1618
|
failed: 'فشل حذف البوابة',
|
|
1613
|
-
failedForConnected: 'غير قادر على حذف فضاء DID متصل',
|
|
1614
1619
|
failedForSelected: 'غير قادر على حذف مساحة DID المحددة'
|
|
1615
1620
|
},
|
|
1616
1621
|
connect: {
|
package/es/locales/de.js
CHANGED
|
@@ -665,7 +665,7 @@ export default {
|
|
|
665
665
|
createBlocklet: 'Neuer Blocklet',
|
|
666
666
|
deleteBlockletTip: 'Der Blocklet kann nach dem Löschen nicht wiederhergestellt werden, bitte bestätigen',
|
|
667
667
|
componentNotRunning: 'Komponente {name} läuft nicht, starten Sie sie bitte zuerst',
|
|
668
|
-
releaseEmptyTip: '
|
|
668
|
+
releaseEmptyTip: 'Es gibt hier keine Veröffentlichungen',
|
|
669
669
|
createReleaseTip: 'Du kannst eine Veröffentlichung des Blocklets erstellen, zusammen mit Versionshinweisen und Ressourcen, die andere Personen nutzen können.',
|
|
670
670
|
createRelease: 'Neue Veröffentlichung',
|
|
671
671
|
deleteReleaseTip: 'Die Veröffentlichung kann nach Löschung nicht wiederhergestellt werden',
|
|
@@ -703,7 +703,13 @@ export default {
|
|
|
703
703
|
connectStoreSuccess: 'Blocklet Store erfolgreich verbunden',
|
|
704
704
|
uploadToStoreSuccess: 'Blocklet erfolgreich im Store hochgeladen, du musst es im Store veröffentlichen',
|
|
705
705
|
viewLastRelease: 'Letzte Version anzeigen',
|
|
706
|
-
reconnectStoreTip: 'Nach dem erneuten Verbinden wird ein neuer Entwickler zugewiesen. Bist du sicher, dass du dich erneut verbinden möchtest?'
|
|
706
|
+
reconnectStoreTip: 'Nach dem erneuten Verbinden wird ein neuer Entwickler zugewiesen. Bist du sicher, dass du dich erneut verbinden möchtest?',
|
|
707
|
+
deleteProject: {
|
|
708
|
+
title: 'Lösche {name}',
|
|
709
|
+
scan: 'Scanne den QR-Code unten, um {name} zu löschen',
|
|
710
|
+
confirm: 'Bitte bestätigen Sie die Verwendung der DID-Brieftasche',
|
|
711
|
+
success: 'Das Blocklet-Projekt wurde gelöscht, bitte fahren Sie mit Ihrer Operation fort.'
|
|
712
|
+
}
|
|
707
713
|
},
|
|
708
714
|
titleValidationError: 'Die Länge des Titels muss mindestens 3 Zeichen betragen',
|
|
709
715
|
descriptionValidationError: 'Die Beschreibungslänge muss zwischen 3 und 160 Zeichen liegen'
|
|
@@ -1610,7 +1616,6 @@ export default {
|
|
|
1610
1616
|
title: 'Lösche Gateway',
|
|
1611
1617
|
succeeded: 'Löschen Sie DID Spaces {name} Erfolg',
|
|
1612
1618
|
failed: 'Löschen des Gateways fehlgeschlagen',
|
|
1613
|
-
failedForConnected: 'Es ist nicht möglich, einen verbundenen DID Space zu löschen',
|
|
1614
1619
|
failedForSelected: 'Kann den ausgewählten DID-Space nicht löschen'
|
|
1615
1620
|
},
|
|
1616
1621
|
connect: {
|
package/es/locales/en.js
CHANGED
|
@@ -242,7 +242,7 @@ export default {
|
|
|
242
242
|
noticeTitle: 'Notice',
|
|
243
243
|
notification: 'Notification',
|
|
244
244
|
open: 'Open',
|
|
245
|
-
visitStore: 'Visit
|
|
245
|
+
visitStore: 'Visit Store',
|
|
246
246
|
management: 'Management',
|
|
247
247
|
os: 'Operating System',
|
|
248
248
|
overview: 'Overview',
|
|
@@ -660,10 +660,10 @@ export default {
|
|
|
660
660
|
blockletEmptyTip: 'There aren’t any blocklets here',
|
|
661
661
|
createBlockletTip: 'You can create new blocklet through existing resources, components, and configuration in this application',
|
|
662
662
|
createBlocklet: 'New blocklet',
|
|
663
|
-
deleteBlockletTip:
|
|
663
|
+
deleteBlockletTip: "The blocklet cannot be recovered after deletion, You also can't republish a new version of the app in question, please confirm",
|
|
664
664
|
reconnectStoreTip: 'After reconnecting, a new developer will be bound. Are you sure you want to reconnect?',
|
|
665
665
|
componentNotRunning: 'Component {name} is not running, please start it first',
|
|
666
|
-
releaseEmptyTip:
|
|
666
|
+
releaseEmptyTip: "There aren't any releases here",
|
|
667
667
|
viewLastRelease: 'View last release',
|
|
668
668
|
createReleaseTip: 'You can create a release of the blocklet, along with release notes and resources, for other people to use',
|
|
669
669
|
createRelease: 'New release',
|
|
@@ -685,6 +685,12 @@ export default {
|
|
|
685
685
|
confirm: 'Confirm using DID Wallet',
|
|
686
686
|
success: 'Blocklet DID has been generated, please continue your operation'
|
|
687
687
|
},
|
|
688
|
+
deleteProject: {
|
|
689
|
+
title: 'Delete {name}',
|
|
690
|
+
scan: 'Scan the QR code below to delete {name}',
|
|
691
|
+
confirm: 'Confirm using DID Wallet',
|
|
692
|
+
success: 'Blocklet project has been deleted, please continue your operation'
|
|
693
|
+
},
|
|
688
694
|
saveDraft: 'Save Draft',
|
|
689
695
|
releaseNote: 'Release Note',
|
|
690
696
|
errorTip: {
|
|
@@ -1600,7 +1606,6 @@ export default {
|
|
|
1600
1606
|
title: 'Delete gateway',
|
|
1601
1607
|
succeeded: 'Delete DID Spaces{name} Success',
|
|
1602
1608
|
failed: 'Delete gateway failed',
|
|
1603
|
-
failedForConnected: 'Unable to delete a connected DID Spaces',
|
|
1604
1609
|
failedForSelected: 'Unable to delete a selected DID Spaces'
|
|
1605
1610
|
},
|
|
1606
1611
|
connect: {
|
package/es/locales/es.js
CHANGED
|
@@ -354,7 +354,7 @@ export default {
|
|
|
354
354
|
uploadToStore: 'Subir a la tienda',
|
|
355
355
|
upload: 'Subir',
|
|
356
356
|
blockletStudio: 'Blocklet Studio',
|
|
357
|
-
visitStore: '
|
|
357
|
+
visitStore: 'Visitar tienda',
|
|
358
358
|
reconnect: 'Reconecta'
|
|
359
359
|
},
|
|
360
360
|
blocklet: {
|
|
@@ -665,7 +665,7 @@ export default {
|
|
|
665
665
|
createBlocklet: 'Nuevo bloque',
|
|
666
666
|
deleteBlockletTip: 'El blocklet no puede ser recuperado después de ser eliminado, por favor confirma',
|
|
667
667
|
componentNotRunning: 'El componente {name} no está en ejecución, por favor iniciar primero',
|
|
668
|
-
releaseEmptyTip: 'No hay
|
|
668
|
+
releaseEmptyTip: 'No hay ninguna versión aquí',
|
|
669
669
|
createReleaseTip: 'Puedes crear una versión de la blocklet, junto con notas de lanzamiento y recursos, para que otras personas la puedan utilizar',
|
|
670
670
|
createRelease: 'Nuevo lanzamiento',
|
|
671
671
|
deleteReleaseTip: 'La versión no se puede recuperar después de la eliminación',
|
|
@@ -703,7 +703,13 @@ export default {
|
|
|
703
703
|
connectStoreSuccess: 'La tienda de Blocklet se conectó correctamente',
|
|
704
704
|
uploadToStoreSuccess: 'Bloque de carga a la tienda exitosamente, necesitas publicarlo en la tienda',
|
|
705
705
|
viewLastRelease: 'Ver última versión',
|
|
706
|
-
reconnectStoreTip: 'Después de reconectar, se vinculará un nuevo desarrollador. ¿Estás seguro de que deseas reconectar?'
|
|
706
|
+
reconnectStoreTip: 'Después de reconectar, se vinculará un nuevo desarrollador. ¿Estás seguro de que deseas reconectar?',
|
|
707
|
+
deleteProject: {
|
|
708
|
+
title: 'Borrar {name}',
|
|
709
|
+
scan: 'Escanee el código QR a continuación para eliminar a {name}',
|
|
710
|
+
confirm: 'Confirmar usando el monedero DID',
|
|
711
|
+
success: 'El proyecto Blocklet ha sido eliminado, por favor continúa tu operación'
|
|
712
|
+
}
|
|
707
713
|
},
|
|
708
714
|
titleValidationError: 'La longitud del título debe ser de al menos 3 caracteres',
|
|
709
715
|
descriptionValidationError: 'La longitud de la descripción debe estar entre 3 y 160 caracteres'
|
|
@@ -1610,7 +1616,6 @@ export default {
|
|
|
1610
1616
|
title: 'Eliminar gateway',
|
|
1611
1617
|
succeeded: 'Eliminar espacios de DID {name} éxito',
|
|
1612
1618
|
failed: 'Eliminar puerta de enlace falló',
|
|
1613
|
-
failedForConnected: 'No se puede eliminar un espacio de DID conectado',
|
|
1614
1619
|
failedForSelected: 'No se puede eliminar un DID Espacios seleccionado'
|
|
1615
1620
|
},
|
|
1616
1621
|
connect: {
|
package/es/locales/fr.js
CHANGED
|
@@ -354,7 +354,7 @@ export default {
|
|
|
354
354
|
uploadToStore: 'Télécharger vers le magasin',
|
|
355
355
|
upload: 'Télécharger',
|
|
356
356
|
blockletStudio: 'Studio Blocklet',
|
|
357
|
-
visitStore: '
|
|
357
|
+
visitStore: 'Visiter le magasin',
|
|
358
358
|
reconnect: 'Reconnecter'
|
|
359
359
|
},
|
|
360
360
|
blocklet: {
|
|
@@ -665,7 +665,7 @@ export default {
|
|
|
665
665
|
createBlocklet: 'Nouvelle blocklet',
|
|
666
666
|
deleteBlockletTip: 'Le bloclet ne peut pas être récupéré après sa suppression, veuillez confirmer',
|
|
667
667
|
componentNotRunning: "Le composant {name} ne fonctionne pas, veuillez le démarrer d'abord",
|
|
668
|
-
releaseEmptyTip: "Il n'y a
|
|
668
|
+
releaseEmptyTip: "Il n'y a pas de sorties ici",
|
|
669
669
|
createReleaseTip: "Vous pouvez créer une version du blocklet, ainsi que des notes de version et des ressources, pour que d'autres personnes puissent les utiliser.",
|
|
670
670
|
createRelease: 'Nouvelle version',
|
|
671
671
|
deleteReleaseTip: 'La version ne peut pas être récupérée après la suppression',
|
|
@@ -703,7 +703,13 @@ export default {
|
|
|
703
703
|
connectStoreSuccess: 'Connexion réussie au Blocklet Store',
|
|
704
704
|
uploadToStoreSuccess: 'Blocklet téléchargé avec succès dans le Store, vous devez le publier dans le Store',
|
|
705
705
|
viewLastRelease: 'Voir la dernière version',
|
|
706
|
-
reconnectStoreTip: 'Après la reconnexion, un nouveau développeur sera lié. Êtes-vous sûr de vouloir vous reconnecter ?'
|
|
706
|
+
reconnectStoreTip: 'Après la reconnexion, un nouveau développeur sera lié. Êtes-vous sûr de vouloir vous reconnecter ?',
|
|
707
|
+
deleteProject: {
|
|
708
|
+
title: 'Supprimez {name}',
|
|
709
|
+
scan: 'Scannez le code QR ci-dessous pour supprimer {name}',
|
|
710
|
+
confirm: "Veuillez confirmer l'utilisation du portefeuille DID",
|
|
711
|
+
success: 'Le projet Blocklet a été supprimé, veuillez poursuivre votre opération.'
|
|
712
|
+
}
|
|
707
713
|
},
|
|
708
714
|
titleValidationError: "La longueur du titre doit être d'au moins 3 caractères",
|
|
709
715
|
descriptionValidationError: 'La longueur de la description doit être comprise entre 3 et 160 caractères'
|
|
@@ -1610,7 +1616,6 @@ export default {
|
|
|
1610
1616
|
title: 'Supprimer la passerelle',
|
|
1611
1617
|
succeeded: 'Supprimer DID Spaces {name} Succès',
|
|
1612
1618
|
failed: 'Échec de la suppression de la passerelle',
|
|
1613
|
-
failedForConnected: 'Impossible de supprimer un DID Space connecté',
|
|
1614
1619
|
failedForSelected: "Impossible de supprimer l'espace DID sélectionné"
|
|
1615
1620
|
},
|
|
1616
1621
|
connect: {
|
package/es/locales/hi.js
CHANGED
|
@@ -354,7 +354,7 @@ export default {
|
|
|
354
354
|
uploadToStore: 'स्टोर में अपलोड करें',
|
|
355
355
|
upload: 'अपलोड करें',
|
|
356
356
|
blockletStudio: 'ब्लॉकलेट स्टूडियो',
|
|
357
|
-
visitStore: '
|
|
357
|
+
visitStore: 'स्टोर को देखें',
|
|
358
358
|
reconnect: 'पुनः कनेक्ट करें'
|
|
359
359
|
},
|
|
360
360
|
blocklet: {
|
|
@@ -665,7 +665,7 @@ export default {
|
|
|
665
665
|
createBlocklet: 'नया ब्लॉकलेट',
|
|
666
666
|
deleteBlockletTip: 'हटाने के बाद ब्लॉकलेट को पुनर्प्राप्त नहीं किया जा सकता है, कृपया पुष्टि करें',
|
|
667
667
|
componentNotRunning: 'संघ {name} चल नहीं रहा है, कृपया पहले इसे शुरू करें',
|
|
668
|
-
releaseEmptyTip: 'यहां कोई रिलीज़ नहीं
|
|
668
|
+
releaseEmptyTip: 'यहां कोई रिलीज़ नहीं हैं',
|
|
669
669
|
createReleaseTip: 'आप ब्लॉकलेट का एक रिलीज़ बना सकते हैं, रिलीज़ नोट्स और संसाधनों के साथ, जिन्हें दूसरे लोगों का उपयोग कर सकते हैं।',
|
|
670
670
|
createRelease: 'नई रिलीज़',
|
|
671
671
|
deleteReleaseTip: 'हटाने के बाद रिलीज़ को पुनर्प्राप्त नहीं किया जा सकता है',
|
|
@@ -703,7 +703,13 @@ export default {
|
|
|
703
703
|
connectStoreSuccess: 'ब्लॉकलेट स्टोर सफलतापूर्वक कनेक्ट हो गया',
|
|
704
704
|
uploadToStoreSuccess: 'ब्लॉकलेट को स्टोर में सफलतापूर्वक अपलोड किया गया है, आपको इसे स्टोर में प्रकाशित करने की आवश्यकता है',
|
|
705
705
|
viewLastRelease: 'अंतिम रिलीज़ देखें',
|
|
706
|
-
reconnectStoreTip: 'पुनर्संयोजन करने के बाद, एक नया डेवलपर बाउंड हो जाएगा। क्या आप वाकई पुनः संयोजित होना चाहते हैं?'
|
|
706
|
+
reconnectStoreTip: 'पुनर्संयोजन करने के बाद, एक नया डेवलपर बाउंड हो जाएगा। क्या आप वाकई पुनः संयोजित होना चाहते हैं?',
|
|
707
|
+
deleteProject: {
|
|
708
|
+
title: '{name} को हटाएं',
|
|
709
|
+
scan: 'नीचे दिए गए क्यूआर कोड स्कैन करें और {name} को हटाएं',
|
|
710
|
+
confirm: 'कृपया डीआईडी वॉलेट का प्रयोग करके पुष्टि करें',
|
|
711
|
+
success: 'ब्लॉकलेट प्रोजेक्ट हटा दिया गया है, कृपया अपने आपरेशन को जारी रखें।'
|
|
712
|
+
}
|
|
707
713
|
},
|
|
708
714
|
titleValidationError: 'शीर्षक की लंबाई कम से कम 3 अक्षर होनी चाहिए',
|
|
709
715
|
descriptionValidationError: 'विवरण की लंबाई 3 और 160 वर्णों के बीच होनी चाहिए'
|
|
@@ -1610,7 +1616,6 @@ export default {
|
|
|
1610
1616
|
title: 'गेटवे को हटाएं',
|
|
1611
1617
|
succeeded: 'DID स्थान {name} को हटाएँ सफलता',
|
|
1612
1618
|
failed: 'गेटवे हटाना विफल हुआ',
|
|
1613
|
-
failedForConnected: 'जुड़े हुए डीआईडी स्थान को हटाने में असमर्थ',
|
|
1614
1619
|
failedForSelected: 'चयनित डीआईडी स्थानों को हटाने में असमर्थ'
|
|
1615
1620
|
},
|
|
1616
1621
|
connect: {
|
package/es/locales/i18n.db
CHANGED
|
Binary file
|
package/es/locales/id.js
CHANGED
|
@@ -354,7 +354,7 @@ export default {
|
|
|
354
354
|
uploadToStore: 'Unggah ke Toko',
|
|
355
355
|
upload: 'Unggah',
|
|
356
356
|
blockletStudio: 'Blocklet Studio',
|
|
357
|
-
visitStore: 'Kunjungi
|
|
357
|
+
visitStore: 'Kunjungi Toko',
|
|
358
358
|
reconnect: 'Menghubungkan kembali'
|
|
359
359
|
},
|
|
360
360
|
blocklet: {
|
|
@@ -703,7 +703,13 @@ export default {
|
|
|
703
703
|
connectStoreSuccess: 'Penyimpanan Blocklet berhasil terhubung',
|
|
704
704
|
uploadToStoreSuccess: 'Blocklet berhasil diunggah ke Store, Anda perlu mempublikasikannya di Store',
|
|
705
705
|
viewLastRelease: 'Tampilkan rilis terakhir',
|
|
706
|
-
reconnectStoreTip: 'Setelah terhubung kembali, pengembang baru akan terikat. Apakah Anda yakin ingin terhubung kembali?'
|
|
706
|
+
reconnectStoreTip: 'Setelah terhubung kembali, pengembang baru akan terikat. Apakah Anda yakin ingin terhubung kembali?',
|
|
707
|
+
deleteProject: {
|
|
708
|
+
title: 'Hapus {name}',
|
|
709
|
+
scan: 'Pindai kode QR di bawah ini untuk menghapus {name}',
|
|
710
|
+
confirm: 'Konfirmasi menggunakan Dompet DID',
|
|
711
|
+
success: 'Proyek Blocklet telah dihapus, silakan lanjutkan operasi anda'
|
|
712
|
+
}
|
|
707
713
|
},
|
|
708
714
|
titleValidationError: 'Panjang judul harus setidaknya 3 karakter',
|
|
709
715
|
descriptionValidationError: 'Panjang deskripsi harus antara 3 dan 160 karakter.'
|
|
@@ -1610,7 +1616,6 @@ export default {
|
|
|
1610
1616
|
title: 'Hapus gateway',
|
|
1611
1617
|
succeeded: 'Hapus Ruang DID {name} Berhasil.',
|
|
1612
1618
|
failed: 'Gagal menghapus gerbang',
|
|
1613
|
-
failedForConnected: 'Tidak dapat menghapus DID Spaces yang terhubung',
|
|
1614
1619
|
failedForSelected: 'Tidak dapat menghapus DID Spaces yang dipilih'
|
|
1615
1620
|
},
|
|
1616
1621
|
connect: {
|
package/es/locales/ja.js
CHANGED
|
@@ -354,7 +354,7 @@ export default {
|
|
|
354
354
|
uploadToStore: 'ストアにアップロード',
|
|
355
355
|
upload: 'アップロード',
|
|
356
356
|
blockletStudio: 'Blocklet Studio',
|
|
357
|
-
visitStore: '
|
|
357
|
+
visitStore: '店を訪れる',
|
|
358
358
|
reconnect: '再接続する'
|
|
359
359
|
},
|
|
360
360
|
blocklet: {
|
|
@@ -665,7 +665,7 @@ export default {
|
|
|
665
665
|
createBlocklet: '新しいブロックレット',
|
|
666
666
|
deleteBlockletTip: 'ブロックを削除した後は復元できませんので、確認してください',
|
|
667
667
|
componentNotRunning: 'コンポーネント{name}は実行されていません。先に開始してください。',
|
|
668
|
-
releaseEmptyTip: '
|
|
668
|
+
releaseEmptyTip: 'ここにはリリースがありません',
|
|
669
669
|
createReleaseTip: '他の人が使用できるように、リリースノートやリソースと共にブロックをリリースすることができます',
|
|
670
670
|
createRelease: '新しいリリース',
|
|
671
671
|
deleteReleaseTip: '削除後、リリースは復元できません',
|
|
@@ -703,7 +703,13 @@ export default {
|
|
|
703
703
|
connectStoreSuccess: 'Blockletストアが正常に接続されました',
|
|
704
704
|
uploadToStoreSuccess: 'ブロックレットがストアに正常にアップロードされました。ストアで公開する必要があります',
|
|
705
705
|
viewLastRelease: '最新リリースを表示する',
|
|
706
|
-
reconnectStoreTip: '再接続後、新しい開発者がバインドされます。再接続しますか?'
|
|
706
|
+
reconnectStoreTip: '再接続後、新しい開発者がバインドされます。再接続しますか?',
|
|
707
|
+
deleteProject: {
|
|
708
|
+
title: '{name}を削除する',
|
|
709
|
+
scan: '{name}を削除するために、以下のQRコードをスキャンしてください',
|
|
710
|
+
confirm: 'DIDウォレットを使用して確認',
|
|
711
|
+
success: 'Blocklet プロジェクトが削除されました。操作を続行してください'
|
|
712
|
+
}
|
|
707
713
|
},
|
|
708
714
|
titleValidationError: 'タイトルの長さは最低3文字以上である必要があります',
|
|
709
715
|
descriptionValidationError: '説明の長さは3から160文字の間でなければなりません'
|
|
@@ -1610,7 +1616,6 @@ export default {
|
|
|
1610
1616
|
title: 'ゲートウェイを削除する',
|
|
1611
1617
|
succeeded: 'DID スペース {name} の削除に成功しました',
|
|
1612
1618
|
failed: 'ゲートウェイの削除に失敗しました',
|
|
1613
|
-
failedForConnected: '接続されたDIDスペースを削除することはできません',
|
|
1614
1619
|
failedForSelected: '選択したDIDスペースを削除できません'
|
|
1615
1620
|
},
|
|
1616
1621
|
connect: {
|
package/es/locales/ko.js
CHANGED
|
@@ -354,7 +354,7 @@ export default {
|
|
|
354
354
|
uploadToStore: '스토어에 업로드',
|
|
355
355
|
upload: '업로드',
|
|
356
356
|
blockletStudio: 'Blocklet Studio',
|
|
357
|
-
visitStore: '
|
|
357
|
+
visitStore: '가게 방문하기',
|
|
358
358
|
reconnect: '재연결'
|
|
359
359
|
},
|
|
360
360
|
blocklet: {
|
|
@@ -665,7 +665,7 @@ export default {
|
|
|
665
665
|
createBlocklet: '새로운 블록렛',
|
|
666
666
|
deleteBlockletTip: '블록이 삭제된 후에는 복구할 수 없습니다. 확인해주세요',
|
|
667
667
|
componentNotRunning: '구성요소 {name}이(가) 실행되지 않았습니다. 먼저 시작하세요.',
|
|
668
|
-
releaseEmptyTip: '여기에는
|
|
668
|
+
releaseEmptyTip: '여기에는 출시 정보가 없습니다',
|
|
669
669
|
createReleaseTip: '다른 사람들이 사용할 수 있도록 블록릿의 릴리스와 릴리스 노트 및 자원을 생성할 수 있습니다',
|
|
670
670
|
createRelease: '새로운 릴리스',
|
|
671
671
|
deleteReleaseTip: '삭제 후에는 복구할 수 없는 릴리스입니다',
|
|
@@ -703,7 +703,13 @@ export default {
|
|
|
703
703
|
connectStoreSuccess: '블록렛 스토어가 성공적으로 연결되었습니다',
|
|
704
704
|
uploadToStoreSuccess: '블록렛이 성공적으로 스토어에 업로드되었습니다. 스토어에서 게시해야 합니다',
|
|
705
705
|
viewLastRelease: '최신 릴리스 보기',
|
|
706
|
-
reconnectStoreTip: '재연결 후에는 새로운 개발자가 연결됩니다. 재연결 하시겠습니까?'
|
|
706
|
+
reconnectStoreTip: '재연결 후에는 새로운 개발자가 연결됩니다. 재연결 하시겠습니까?',
|
|
707
|
+
deleteProject: {
|
|
708
|
+
title: '{name}을 삭제하세요',
|
|
709
|
+
scan: '{name}를 삭제하기 위해 아래의 QR 코드를 스캔하세요',
|
|
710
|
+
confirm: 'DID 지갑을 사용하여 확인하세요',
|
|
711
|
+
success: 'Blocklet 프로젝트가 삭제되었습니다. 작업을 계속하세요'
|
|
712
|
+
}
|
|
707
713
|
},
|
|
708
714
|
titleValidationError: '제목 길이는 최소 3자 이상이어야 합니다',
|
|
709
715
|
descriptionValidationError: '설명 길이는 3에서 160자 사이여야 합니다'
|
|
@@ -1610,7 +1616,6 @@ export default {
|
|
|
1610
1616
|
title: '게이트웨이 삭제하기',
|
|
1611
1617
|
succeeded: 'DID 공간 {name} 삭제 성공',
|
|
1612
1618
|
failed: '게이트웨이 삭제 실패',
|
|
1613
|
-
failedForConnected: '연결된 DID 공간을 삭제할 수 없습니다',
|
|
1614
1619
|
failedForSelected: '선택한 DID 스페이스를 삭제할 수 없습니다'
|
|
1615
1620
|
},
|
|
1616
1621
|
connect: {
|