@abtnode/ux 1.16.29-next-680cf137 → 1.16.30-beta-00e8bdd1
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/lib/blocklet/component/blocklet-owner-info.js +35 -0
- package/lib/blocklet/component/component-info-dialog.js +7 -2
- package/lib/blocklet/component/environment.js +16 -6
- package/lib/blocklet/component/index.js +30 -27
- package/lib/blocklet/configuration.js +2 -34
- package/lib/blocklet/disk-info.js +66 -55
- package/lib/blocklet/install-from-url.js +9 -3
- package/lib/blocklet/publish/create-release/blocklets.js +5 -5
- package/lib/blocklet/publish/create-release/branding.js +14 -11
- package/lib/blocklet/publish/create-release/connect-store-button.js +11 -10
- package/lib/blocklet/publish/create-release/header.js +136 -123
- package/lib/blocklet/publish/create-release/index.js +16 -16
- package/lib/blocklet/publish/create-release/project-setting.js +182 -0
- package/lib/blocklet/publish/create-release/resource-select.js +16 -12
- package/lib/blocklet/publish/hooks/use-want-to-connect-store.js +6 -2
- package/lib/blocklet/publish/utils/get-studio-store-list.js +3 -0
- package/lib/blocklet/publish/utils/parse-resource-relate-components.js +31 -0
- package/lib/blocklet/storage/auto-check-update.js +2 -2
- package/lib/blocklet/storage/connected.js +1 -3
- package/lib/blocklet/storage/disconnect.js +1 -7
- package/lib/contexts/blocklet-auto-check-update.js +54 -0
- package/lib/contexts/blocklet-storage.js +0 -19
- package/lib/hooks/blocklet.js +17 -5
- package/lib/locales/ar.js +8 -2
- package/lib/locales/de.js +8 -2
- package/lib/locales/en.js +6 -0
- package/lib/locales/es.js +8 -2
- package/lib/locales/fr.js +8 -2
- package/lib/locales/hi.js +8 -2
- package/lib/locales/i18n.db +0 -0
- package/lib/locales/id.js +8 -2
- package/lib/locales/ja.js +8 -2
- package/lib/locales/ko.js +8 -2
- package/lib/locales/pt.js +8 -2
- package/lib/locales/ru.js +8 -2
- package/lib/locales/th.js +8 -2
- package/lib/locales/vi.js +8 -2
- package/lib/locales/zh-tw.js +8 -2
- package/lib/locales/zh.js +8 -2
- package/lib/team/members/invite-member.js +16 -3
- package/lib/team/members/issue-passport.js +17 -2
- package/lib/team/members/member.js +59 -23
- package/lib/util/index.js +0 -14
- package/package.json +20 -20
|
@@ -17,7 +17,7 @@ function useWantToConnectStore(blocklet) {
|
|
|
17
17
|
if (lastStore) {
|
|
18
18
|
return lastStore;
|
|
19
19
|
}
|
|
20
|
-
|
|
20
|
+
let firstStore = (blocklet?.settings?.storeList || []).find(x => {
|
|
21
21
|
if (x.id !== BLOCKLET_STORE.id) {
|
|
22
22
|
return false;
|
|
23
23
|
}
|
|
@@ -26,8 +26,12 @@ function useWantToConnectStore(blocklet) {
|
|
|
26
26
|
}
|
|
27
27
|
return true;
|
|
28
28
|
});
|
|
29
|
+
if (!firstStore) {
|
|
30
|
+
firstStore = blocklet?.settings?.storeList?.[0];
|
|
31
|
+
}
|
|
32
|
+
return firstStore;
|
|
29
33
|
}, [blocklet?.settings?.storeList, session?.user?.did]);
|
|
30
|
-
const wantToConnectStore = _wantToConnectStore || baseStore;
|
|
34
|
+
const wantToConnectStore = _wantToConnectStore || baseStore || {};
|
|
31
35
|
return [wantToConnectStore, setWantToConnectStore];
|
|
32
36
|
}
|
|
33
37
|
export default useWantToConnectStore;
|
|
@@ -6,6 +6,9 @@ const getStudioStoreList = ({
|
|
|
6
6
|
}) => {
|
|
7
7
|
const teamDid = fromBlocklet ? blocklet?.meta?.did : nodeInfo?.did;
|
|
8
8
|
let storeList = fromBlocklet ? blocklet?.settings?.storeList || [] : nodeInfo?.blockletRegistryList || [];
|
|
9
|
+
if (!Array.isArray(storeList)) {
|
|
10
|
+
storeList = [];
|
|
11
|
+
}
|
|
9
12
|
storeList = storeList.filter(x => x.protected || !x.scope || x.scope === 'studio' || x.scope === userDid);
|
|
10
13
|
return {
|
|
11
14
|
teamDid,
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
const parseResourceRelateComponents = (nowBlockletComponents, blocklet, resourceRelateComponents, disabledSelectComponents) => {
|
|
2
|
+
const blockletComponents = nowBlockletComponents ? [...nowBlockletComponents] : [];
|
|
3
|
+
const componentMaps = (blocklet?.children || []).reduce((acc, curr) => {
|
|
4
|
+
acc[curr.meta.did] = true;
|
|
5
|
+
return acc;
|
|
6
|
+
}, {});
|
|
7
|
+
Object.keys(resourceRelateComponents).forEach(blockletDid => {
|
|
8
|
+
if (!componentMaps[blockletDid]) {
|
|
9
|
+
return;
|
|
10
|
+
}
|
|
11
|
+
let included = false;
|
|
12
|
+
if (!disabledSelectComponents) {
|
|
13
|
+
blockletComponents.forEach(item => {
|
|
14
|
+
if (item.did === blockletDid) {
|
|
15
|
+
item.included = true;
|
|
16
|
+
item.required = true;
|
|
17
|
+
included = true;
|
|
18
|
+
}
|
|
19
|
+
});
|
|
20
|
+
}
|
|
21
|
+
if (!included) {
|
|
22
|
+
blockletComponents.push({
|
|
23
|
+
did: blockletDid,
|
|
24
|
+
included: true,
|
|
25
|
+
required: true
|
|
26
|
+
});
|
|
27
|
+
}
|
|
28
|
+
});
|
|
29
|
+
return blockletComponents;
|
|
30
|
+
};
|
|
31
|
+
export default parseResourceRelateComponents;
|
|
@@ -5,7 +5,7 @@ import Toast from '@arcblock/ux/lib/Toast';
|
|
|
5
5
|
import PropTypes from 'prop-types';
|
|
6
6
|
import Tooltip from '@mui/material/Tooltip';
|
|
7
7
|
import SwitchControl from '../component/switch-control';
|
|
8
|
-
import {
|
|
8
|
+
import { useBlockletAutoCheckUpdateContext } from '../../contexts/blocklet-auto-check-update';
|
|
9
9
|
|
|
10
10
|
/**
|
|
11
11
|
* @description
|
|
@@ -25,7 +25,7 @@ function AutoCheckUpdate({
|
|
|
25
25
|
const {
|
|
26
26
|
updateAutoCheckUpdate,
|
|
27
27
|
autoCheckUpdate
|
|
28
|
-
} =
|
|
28
|
+
} = useBlockletAutoCheckUpdateContext();
|
|
29
29
|
const configAutoBackup = async () => {
|
|
30
30
|
try {
|
|
31
31
|
const enabled = !autoCheckUpdate?.enabled;
|
|
@@ -104,9 +104,7 @@ function Connected() {
|
|
|
104
104
|
fontWeight: "bold",
|
|
105
105
|
mb: 2,
|
|
106
106
|
children: t('common.dataStorage')
|
|
107
|
-
}), /*#__PURE__*/_jsx(DiskInfo, {
|
|
108
|
-
blocklet: blocklet
|
|
109
|
-
})]
|
|
107
|
+
}), /*#__PURE__*/_jsx(DiskInfo, {})]
|
|
110
108
|
});
|
|
111
109
|
}
|
|
112
110
|
export default Connected;
|
|
@@ -198,7 +198,6 @@ EmptySpacesNFT.defaultProps = {
|
|
|
198
198
|
xmlns: "http://www.w3.org/2000/svg",
|
|
199
199
|
xmlnsXlink: "http://www.w3.org/1999/xlink"
|
|
200
200
|
};
|
|
201
|
-
import { useBlockletContext } from '../../contexts/blocklet';
|
|
202
201
|
import ConnectTo from './connect-to';
|
|
203
202
|
import DiskInfo from '../disk-info';
|
|
204
203
|
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
@@ -206,9 +205,6 @@ function Disconnect() {
|
|
|
206
205
|
const {
|
|
207
206
|
t
|
|
208
207
|
} = useLocaleContext();
|
|
209
|
-
const {
|
|
210
|
-
blocklet
|
|
211
|
-
} = useBlockletContext();
|
|
212
208
|
return /*#__PURE__*/_jsxs(Box, {
|
|
213
209
|
children: [/*#__PURE__*/_jsxs(Box, {
|
|
214
210
|
minHeight: "40vh",
|
|
@@ -232,9 +228,7 @@ function Disconnect() {
|
|
|
232
228
|
fontWeight: "bold",
|
|
233
229
|
mb: 2,
|
|
234
230
|
children: t('common.dataStorage')
|
|
235
|
-
}), /*#__PURE__*/_jsx(DiskInfo, {
|
|
236
|
-
blocklet: blocklet
|
|
237
|
-
})]
|
|
231
|
+
}), /*#__PURE__*/_jsx(DiskInfo, {})]
|
|
238
232
|
});
|
|
239
233
|
}
|
|
240
234
|
Disconnect.propTypes = {};
|
|
@@ -0,0 +1,54 @@
|
|
|
1
|
+
import { createContext, useContext, useState } from 'react';
|
|
2
|
+
import propTypes from 'prop-types';
|
|
3
|
+
import { useBlockletContext } from './blocklet';
|
|
4
|
+
import { useNodeContext } from './node';
|
|
5
|
+
import { useAutoCheckUpdate } from '../hooks/use-auto-check-update';
|
|
6
|
+
|
|
7
|
+
/** @type {import('react').Context<BlockletAutoCheckUpdateContext>} */
|
|
8
|
+
import { jsx as _jsx } from "react/jsx-runtime";
|
|
9
|
+
const BlockletAutoCheckUpdateContext = /*#__PURE__*/createContext({});
|
|
10
|
+
const {
|
|
11
|
+
Provider,
|
|
12
|
+
Consumer
|
|
13
|
+
} = BlockletAutoCheckUpdateContext;
|
|
14
|
+
function BlockletAutoCheckUpdateProvider({
|
|
15
|
+
children
|
|
16
|
+
}) {
|
|
17
|
+
const {
|
|
18
|
+
api
|
|
19
|
+
} = useNodeContext();
|
|
20
|
+
const {
|
|
21
|
+
blocklet
|
|
22
|
+
} = useBlockletContext();
|
|
23
|
+
const [autoCheckUpdateRefresh, setAutoCheckUpdateRefresh] = useState(false);
|
|
24
|
+
const autoCheckUpdate = useAutoCheckUpdate({
|
|
25
|
+
deps: [autoCheckUpdateRefresh]
|
|
26
|
+
});
|
|
27
|
+
const refreshAutoCheckUpdate = () => {
|
|
28
|
+
setAutoCheckUpdateRefresh(x => !x);
|
|
29
|
+
};
|
|
30
|
+
const updateAutoCheckUpdate = async value => {
|
|
31
|
+
await api.updateAutoCheckUpdate({
|
|
32
|
+
input: {
|
|
33
|
+
did: blocklet.meta.did,
|
|
34
|
+
autoCheckUpdate: value
|
|
35
|
+
}
|
|
36
|
+
});
|
|
37
|
+
refreshAutoCheckUpdate();
|
|
38
|
+
};
|
|
39
|
+
return /*#__PURE__*/_jsx(Provider, {
|
|
40
|
+
value: {
|
|
41
|
+
updateAutoCheckUpdate,
|
|
42
|
+
autoCheckUpdate
|
|
43
|
+
},
|
|
44
|
+
children: children
|
|
45
|
+
});
|
|
46
|
+
}
|
|
47
|
+
BlockletAutoCheckUpdateProvider.propTypes = {
|
|
48
|
+
children: propTypes.any.isRequired
|
|
49
|
+
};
|
|
50
|
+
BlockletAutoCheckUpdateProvider.defaultProps = {};
|
|
51
|
+
function useBlockletAutoCheckUpdateContext() {
|
|
52
|
+
return useContext(BlockletAutoCheckUpdateContext);
|
|
53
|
+
}
|
|
54
|
+
export { BlockletAutoCheckUpdateContext, BlockletAutoCheckUpdateProvider, Consumer as BlockletAutoCheckUpdateConsumer, useBlockletAutoCheckUpdateContext };
|
|
@@ -10,7 +10,6 @@ import { useNodeContext } from './node';
|
|
|
10
10
|
import useBackupProgress from '../hooks/use-backup-progress';
|
|
11
11
|
import useBackups from '../hooks/use-backups';
|
|
12
12
|
import { useAutoBackup } from '../hooks/use-auto-backup';
|
|
13
|
-
import { useAutoCheckUpdate } from '../hooks/use-auto-check-update';
|
|
14
13
|
|
|
15
14
|
/**
|
|
16
15
|
* @typedef {import('../blocklet/storage/connected').SpaceGateway} SpaceGateway
|
|
@@ -87,10 +86,6 @@ function BlockletStorageProvider({
|
|
|
87
86
|
const autoBackup = useAutoBackup({
|
|
88
87
|
deps: [autoBackupRefresh]
|
|
89
88
|
});
|
|
90
|
-
const [autoCheckUpdateRefresh, setAutoCheckUpdateRefresh] = useState(false);
|
|
91
|
-
const autoCheckUpdate = useAutoCheckUpdate({
|
|
92
|
-
deps: [autoCheckUpdateRefresh]
|
|
93
|
-
});
|
|
94
89
|
const refreshSpaceGateways = () => {
|
|
95
90
|
setSpaceGatewaysRefresh(p => !p);
|
|
96
91
|
};
|
|
@@ -100,9 +95,6 @@ function BlockletStorageProvider({
|
|
|
100
95
|
const refreshAutoBackup = () => {
|
|
101
96
|
setAutoBackupRefresh(x => !x);
|
|
102
97
|
};
|
|
103
|
-
const refreshAutoCheckUpdate = () => {
|
|
104
|
-
setAutoCheckUpdateRefresh(x => !x);
|
|
105
|
-
};
|
|
106
98
|
|
|
107
99
|
/**
|
|
108
100
|
* @description
|
|
@@ -220,15 +212,6 @@ function BlockletStorageProvider({
|
|
|
220
212
|
* @param {SpaceGateway} spaceGateway
|
|
221
213
|
*/
|
|
222
214
|
const spaceGatewayIsSelected = spaceGateway => spaceGateway?.endpoint === backupEndpoint;
|
|
223
|
-
const updateAutoCheckUpdate = async value => {
|
|
224
|
-
await api.updateAutoCheckUpdate({
|
|
225
|
-
input: {
|
|
226
|
-
did: blocklet.meta.did,
|
|
227
|
-
autoCheckUpdate: value
|
|
228
|
-
}
|
|
229
|
-
});
|
|
230
|
-
refreshAutoCheckUpdate();
|
|
231
|
-
};
|
|
232
215
|
return /*#__PURE__*/_jsx(Provider, {
|
|
233
216
|
value: {
|
|
234
217
|
spaceGateways,
|
|
@@ -240,8 +223,6 @@ function BlockletStorageProvider({
|
|
|
240
223
|
spaceGatewaysLoading,
|
|
241
224
|
spaceGatewayIsSelected,
|
|
242
225
|
updateAutoBackup,
|
|
243
|
-
updateAutoCheckUpdate,
|
|
244
|
-
autoCheckUpdate,
|
|
245
226
|
backupEndpoint,
|
|
246
227
|
backupProgress,
|
|
247
228
|
backups,
|
package/lib/hooks/blocklet.js
CHANGED
|
@@ -56,6 +56,7 @@ export function useBlocklet({
|
|
|
56
56
|
const [error, setError] = useState(null);
|
|
57
57
|
const [loading, setLoading] = useState(false);
|
|
58
58
|
const [loadingRuntimeInfo, setLoadingRuntimeInfo] = useState(false);
|
|
59
|
+
const [loadingDiskInfo, setLoadingDiskInfo] = useState(true);
|
|
59
60
|
const [blocklet, setBlocklet] = useState();
|
|
60
61
|
const [runtimeHistory, setRuntimeHistory] = useState({
|
|
61
62
|
cpu: [],
|
|
@@ -69,8 +70,12 @@ export function useBlocklet({
|
|
|
69
70
|
domainsAccessibility,
|
|
70
71
|
recommendedDomain
|
|
71
72
|
} = useDomainsAccessibility(domains);
|
|
72
|
-
const refreshRuntimeInfo = async () => {
|
|
73
|
-
|
|
73
|
+
const refreshRuntimeInfo = async (attachDiskInfo = false) => {
|
|
74
|
+
if (attachDiskInfo) {
|
|
75
|
+
setLoadingDiskInfo(true);
|
|
76
|
+
} else {
|
|
77
|
+
setLoadingRuntimeInfo(true);
|
|
78
|
+
}
|
|
74
79
|
try {
|
|
75
80
|
const {
|
|
76
81
|
blocklet: data
|
|
@@ -78,6 +83,7 @@ export function useBlocklet({
|
|
|
78
83
|
input: {
|
|
79
84
|
did,
|
|
80
85
|
attachRuntimeInfo: true,
|
|
86
|
+
attachDiskInfo,
|
|
81
87
|
getOptionalComponents
|
|
82
88
|
}
|
|
83
89
|
});
|
|
@@ -89,7 +95,11 @@ export function useBlocklet({
|
|
|
89
95
|
} catch (err) {
|
|
90
96
|
Toast.error(err.message);
|
|
91
97
|
} finally {
|
|
92
|
-
|
|
98
|
+
if (attachDiskInfo) {
|
|
99
|
+
setLoadingDiskInfo(false);
|
|
100
|
+
} else {
|
|
101
|
+
setLoadingRuntimeInfo(false);
|
|
102
|
+
}
|
|
93
103
|
}
|
|
94
104
|
};
|
|
95
105
|
const getRuntimeHistory = async () => {
|
|
@@ -118,7 +128,8 @@ export function useBlocklet({
|
|
|
118
128
|
};
|
|
119
129
|
const refreshBlocklet = async ({
|
|
120
130
|
showError = true,
|
|
121
|
-
attachRuntimeInfo = true
|
|
131
|
+
attachRuntimeInfo = true,
|
|
132
|
+
attachDiskInfo = false
|
|
122
133
|
} = {}) => {
|
|
123
134
|
if (loading) {
|
|
124
135
|
return;
|
|
@@ -145,7 +156,7 @@ export function useBlocklet({
|
|
|
145
156
|
});
|
|
146
157
|
setLoading(false);
|
|
147
158
|
if (attachRuntimeInfo) {
|
|
148
|
-
refreshRuntimeInfo();
|
|
159
|
+
refreshRuntimeInfo(attachDiskInfo);
|
|
149
160
|
getRuntimeHistory();
|
|
150
161
|
}
|
|
151
162
|
} else {
|
|
@@ -303,6 +314,7 @@ export function useBlocklet({
|
|
|
303
314
|
return {
|
|
304
315
|
loading,
|
|
305
316
|
loadingRuntimeInfo,
|
|
317
|
+
loadingDiskInfo,
|
|
306
318
|
error,
|
|
307
319
|
blocklet: data,
|
|
308
320
|
runtimeHistory,
|
package/lib/locales/ar.js
CHANGED
|
@@ -738,7 +738,12 @@ export default {
|
|
|
738
738
|
deleteStoreTip: 'هل أنت متأكد أنك تريد إزالة {name} من قائمة متجر الاتصال؟',
|
|
739
739
|
disconnectStoreTip: 'سيتم حذف بلوكليت من المخزن بعد الفصل. هل أنت متأكد من أنك تريد الفصل؟',
|
|
740
740
|
connectOrUpload: 'الاتصال أو التحميل',
|
|
741
|
-
developerInfo: 'معلومات المطور'
|
|
741
|
+
developerInfo: 'معلومات المطور',
|
|
742
|
+
autoUploadTip: 'تحميل البلوكليت تلقائيًا إلى المتجر بعد الإصدار',
|
|
743
|
+
possibleSameStoreTip: 'حاول حل بلوكليتات الاعتماد في نفس متجر البلوكليت قبل كل تحميل إذا كان ذلك ممكنًا',
|
|
744
|
+
needProjectId: 'يرجى إنشاء مشروع أولاً',
|
|
745
|
+
projectSettings: 'إعدادات المشروع',
|
|
746
|
+
noStoreSelected: 'يرجى تحديد أحد المتاجر الحالية أو إضافة متجر جديد للمتابعة'
|
|
742
747
|
},
|
|
743
748
|
titleValidationError: 'يجب أن يكون طول العنوان على الأقل 3 أحرف',
|
|
744
749
|
descriptionValidationError: 'يجب أن تكون طول الوصف بين 3 و 160 حرفًا',
|
|
@@ -1269,7 +1274,8 @@ export default {
|
|
|
1269
1274
|
},
|
|
1270
1275
|
activeUserSessions: 'جلسات المستخدم النشطة',
|
|
1271
1276
|
forceLogout: 'تسجيل الخروج القسري',
|
|
1272
|
-
forceLogoutDescription: 'هل تؤكد تسجيل خروج هذا المستخدم؟'
|
|
1277
|
+
forceLogoutDescription: 'هل تؤكد تسجيل خروج هذا المستخدم؟',
|
|
1278
|
+
openProfile: 'عرض الصفحة الشخصية'
|
|
1273
1279
|
},
|
|
1274
1280
|
transferNode: {
|
|
1275
1281
|
name: 'تحويل الملكية',
|
package/lib/locales/de.js
CHANGED
|
@@ -738,7 +738,12 @@ export default {
|
|
|
738
738
|
deleteStoreTip: 'Möchten Sie {name} wirklich aus der Verbindungsliste des Stores entfernen?',
|
|
739
739
|
disconnectStoreTip: 'Das Blocklet wird nach dem Trennen aus dem Store entfernt. Möchten Sie wirklich trennen?',
|
|
740
740
|
connectOrUpload: 'Verbinden oder Hochladen',
|
|
741
|
-
developerInfo: 'Entwicklerinformation'
|
|
741
|
+
developerInfo: 'Entwicklerinformation',
|
|
742
|
+
autoUploadTip: 'Blocklet nach Erstellung automatisch im Store hochladen',
|
|
743
|
+
possibleSameStoreTip: 'Versuchen Sie, Abhängigkeits-Blocklets vor dem Hochladen, wenn möglich, im selben Blocklet-Store aufzulösen',
|
|
744
|
+
needProjectId: 'Bitte erstellen Sie zuerst ein Projekt',
|
|
745
|
+
projectSettings: 'Projekteinstellungen',
|
|
746
|
+
noStoreSelected: 'Bitte wählen Sie eine der vorhandenen Geschäfte aus oder fügen Sie ein neues Geschäft hinzu, um fortzufahren'
|
|
742
747
|
},
|
|
743
748
|
titleValidationError: 'Die Länge des Titels muss mindestens 3 Zeichen betragen',
|
|
744
749
|
descriptionValidationError: 'Die Beschreibungslänge muss zwischen 3 und 160 Zeichen liegen',
|
|
@@ -1269,7 +1274,8 @@ export default {
|
|
|
1269
1274
|
},
|
|
1270
1275
|
activeUserSessions: 'Aktive Benutzersitzungen',
|
|
1271
1276
|
forceLogout: 'Erzwungenes Abmelden',
|
|
1272
|
-
forceLogoutDescription: 'Bestätigen Sie die erzwungene Abmeldung dieses Benutzers?'
|
|
1277
|
+
forceLogoutDescription: 'Bestätigen Sie die erzwungene Abmeldung dieses Benutzers?',
|
|
1278
|
+
openProfile: 'Profil anzeigen'
|
|
1273
1279
|
},
|
|
1274
1280
|
transferNode: {
|
|
1275
1281
|
name: 'Änderung des Eigentums',
|
package/lib/locales/en.js
CHANGED
|
@@ -660,6 +660,11 @@ export default {
|
|
|
660
660
|
},
|
|
661
661
|
publish: {
|
|
662
662
|
connectOrUpload: 'Connect or Upload',
|
|
663
|
+
projectSettings: 'Project Settings',
|
|
664
|
+
noStoreSelected: 'Please select one of the existing stores or add a new store to continue',
|
|
665
|
+
autoUploadTip: 'Upload release to connected Blocklet Stores automatically after creation',
|
|
666
|
+
possibleSameStoreTip: 'Try resolving dependency blocklets to the same Blocklet Store before each uploading when possible',
|
|
667
|
+
needProjectId: 'Please create a project first',
|
|
663
668
|
developerInfo: 'Developer Information',
|
|
664
669
|
branding: 'Branding',
|
|
665
670
|
brandingHelp: 'More information about the blocklet will be displayed in the Store',
|
|
@@ -1223,6 +1228,7 @@ export default {
|
|
|
1223
1228
|
passports: 'Passports',
|
|
1224
1229
|
lastLogin: 'Last Login',
|
|
1225
1230
|
lastLoginIp: 'Last Login IP',
|
|
1231
|
+
openProfile: 'View Profile',
|
|
1226
1232
|
source: 'Register Source',
|
|
1227
1233
|
source_derived: 'Derived from oauth',
|
|
1228
1234
|
source_wallet: 'DID Wallet',
|
package/lib/locales/es.js
CHANGED
|
@@ -738,7 +738,12 @@ export default {
|
|
|
738
738
|
deleteStoreTip: '¿Estás seguro de que quieres eliminar a {name} de la lista de la tienda Connect?',
|
|
739
739
|
disconnectStoreTip: 'Después de la desconexión, se eliminará el blocklet de la tienda. ¿Seguro que desea desconectar?',
|
|
740
740
|
connectOrUpload: 'Conectar o Subir',
|
|
741
|
-
developerInfo: 'Información del desarrollador'
|
|
741
|
+
developerInfo: 'Información del desarrollador',
|
|
742
|
+
autoUploadTip: 'Cargar automáticamente el blocklet en la tienda después de la versión de creación',
|
|
743
|
+
possibleSameStoreTip: 'Intenta resolver las dependencias de los blocklets en la misma tienda de blocklets antes de cada carga cuando sea posible',
|
|
744
|
+
needProjectId: 'Por favor, crea un proyecto primero',
|
|
745
|
+
projectSettings: 'Configuraciones del Proyecto',
|
|
746
|
+
noStoreSelected: 'Por favor, seleccione una de las tiendas existentes o agregue una nueva tienda para continuar'
|
|
742
747
|
},
|
|
743
748
|
titleValidationError: 'La longitud del título debe ser de al menos 3 caracteres',
|
|
744
749
|
descriptionValidationError: 'La longitud de la descripción debe estar entre 3 y 160 caracteres',
|
|
@@ -1269,7 +1274,8 @@ export default {
|
|
|
1269
1274
|
},
|
|
1270
1275
|
activeUserSessions: 'Sesiones de usuario activas',
|
|
1271
1276
|
forceLogout: 'Cerrar sesión forzada',
|
|
1272
|
-
forceLogoutDescription: '¿Confirmar para forzar el cierre de sesión de este usuario?'
|
|
1277
|
+
forceLogoutDescription: '¿Confirmar para forzar el cierre de sesión de este usuario?',
|
|
1278
|
+
openProfile: 'Ver Perfil'
|
|
1273
1279
|
},
|
|
1274
1280
|
transferNode: {
|
|
1275
1281
|
name: 'Transferir propiedad',
|
package/lib/locales/fr.js
CHANGED
|
@@ -738,7 +738,12 @@ export default {
|
|
|
738
738
|
deleteStoreTip: 'Êtes-vous sûr de vouloir supprimer {name} de la liste du magasin Connect?',
|
|
739
739
|
disconnectStoreTip: 'Le bloclet sera supprimé du store après sa déconnexion. Êtes-vous sûr de vouloir le déconnecter ?',
|
|
740
740
|
connectOrUpload: 'Connecter ou Télécharger',
|
|
741
|
-
developerInfo: 'Informations sur le développeur'
|
|
741
|
+
developerInfo: 'Informations sur le développeur',
|
|
742
|
+
autoUploadTip: 'Uploader automatiquement le blocklet dans le Store après sa création',
|
|
743
|
+
possibleSameStoreTip: 'Essayez de résoudre les blocs de dépendance dans le même magasin de blocs avant chaque téléchargement si possible',
|
|
744
|
+
needProjectId: "Veuillez créer un projet d'abord",
|
|
745
|
+
projectSettings: 'Paramètres du projet',
|
|
746
|
+
noStoreSelected: "Veuillez sélectionner l'un des magasins existants ou ajouter un nouveau magasin pour continuer"
|
|
742
747
|
},
|
|
743
748
|
titleValidationError: "La longueur du titre doit être d'au moins 3 caractères",
|
|
744
749
|
descriptionValidationError: 'La longueur de la description doit être comprise entre 3 et 160 caractères',
|
|
@@ -1269,7 +1274,8 @@ export default {
|
|
|
1269
1274
|
},
|
|
1270
1275
|
activeUserSessions: "Sessions d'utilisateurs actives",
|
|
1271
1276
|
forceLogout: 'Déconnexion forcée',
|
|
1272
|
-
forceLogoutDescription: 'Confirmez-vous la déconnexion forcée de cet utilisateur?'
|
|
1277
|
+
forceLogoutDescription: 'Confirmez-vous la déconnexion forcée de cet utilisateur?',
|
|
1278
|
+
openProfile: 'Voir le profil'
|
|
1273
1279
|
},
|
|
1274
1280
|
transferNode: {
|
|
1275
1281
|
name: 'Transfert de propriété',
|
package/lib/locales/hi.js
CHANGED
|
@@ -738,7 +738,12 @@ export default {
|
|
|
738
738
|
deleteStoreTip: 'क्या आप वाकई {name} को कनेक्ट स्टोर से हटाना चाहते हैं?',
|
|
739
739
|
disconnectStoreTip: 'ब्लॉकलेट को डिस्कनेक्ट करने के बाद उसे स्टोर से हटा दिया जाएगा। क्या आप वाकई में उसे डिस्कनेक्ट करना चाहते हैं?',
|
|
740
740
|
connectOrUpload: 'कनेक्ट करें या अपलोड करें',
|
|
741
|
-
developerInfo: 'डेवलपर सूचना'
|
|
741
|
+
developerInfo: 'डेवलपर सूचना',
|
|
742
|
+
autoUploadTip: 'निर्माण रिलीज़ के बाद ब्लॉकलेट को स्टोर पर स्वचालित रूप से अपलोड करें',
|
|
743
|
+
possibleSameStoreTip: 'पोस्ट करने से पहले संभावना होने पर उसी ब्लॉकलेट स्टोर में डिपेंडेंसी ब्लॉकलेट्स को हल करने की कोशिश करें',
|
|
744
|
+
needProjectId: 'कृपया पहले एक परियोजना बनाएं',
|
|
745
|
+
projectSettings: 'परियोजना सेटिंग्स',
|
|
746
|
+
noStoreSelected: 'कृपया जारी स्टोरों में से एक चुनें या जारी रखने के लिए एक नया स्टोर जोड़ें'
|
|
742
747
|
},
|
|
743
748
|
titleValidationError: 'शीर्षक की लंबाई कम से कम 3 अक्षर होनी चाहिए',
|
|
744
749
|
descriptionValidationError: 'विवरण की लंबाई 3 और 160 वर्णों के बीच होनी चाहिए',
|
|
@@ -1269,7 +1274,8 @@ export default {
|
|
|
1269
1274
|
},
|
|
1270
1275
|
activeUserSessions: 'सक्रिय उपयोगकर्ता सत्र',
|
|
1271
1276
|
forceLogout: 'बाहर करें बल',
|
|
1272
|
-
forceLogoutDescription: 'क्या आप इस उपयोगकर्ता को बाहर करने के लिए पुष्टि करें?'
|
|
1277
|
+
forceLogoutDescription: 'क्या आप इस उपयोगकर्ता को बाहर करने के लिए पुष्टि करें?',
|
|
1278
|
+
openProfile: 'प्रोफ़ाइल देखें'
|
|
1273
1279
|
},
|
|
1274
1280
|
transferNode: {
|
|
1275
1281
|
name: 'स्वामित्व स्थानांतरण',
|
package/lib/locales/i18n.db
CHANGED
|
Binary file
|
package/lib/locales/id.js
CHANGED
|
@@ -738,7 +738,12 @@ export default {
|
|
|
738
738
|
deleteStoreTip: 'Apakah Anda yakin ingin menghapus {name} dari daftar Toko Koneksi?',
|
|
739
739
|
disconnectStoreTip: 'Setelah terputus, blocklet akan dihapus dari toko. Apa Anda yakin untuk memutuskan?',
|
|
740
740
|
connectOrUpload: 'Hubungkan atau Unggah',
|
|
741
|
-
developerInfo: 'Informasi Pengembang'
|
|
741
|
+
developerInfo: 'Informasi Pengembang',
|
|
742
|
+
autoUploadTip: 'Mengunggah blocklet ke Store secara otomatis setelah rilis penciptaan',
|
|
743
|
+
possibleSameStoreTip: 'Coba selesaikan blocklet dependensi ke Toko Blocklet yang sama sebelum mengunggah setiap kali memungkinkan',
|
|
744
|
+
needProjectId: 'Silakan membuat proyek terlebih dahulu',
|
|
745
|
+
projectSettings: 'Pengaturan Proyek',
|
|
746
|
+
noStoreSelected: 'Silakan pilih salah satu toko yang ada atau tambahkan toko baru untuk melanjutkan'
|
|
742
747
|
},
|
|
743
748
|
titleValidationError: 'Panjang judul harus setidaknya 3 karakter',
|
|
744
749
|
descriptionValidationError: 'Panjang deskripsi harus antara 3 dan 160 karakter.',
|
|
@@ -1269,7 +1274,8 @@ export default {
|
|
|
1269
1274
|
},
|
|
1270
1275
|
activeUserSessions: 'Sesi Pengguna Aktif',
|
|
1271
1276
|
forceLogout: 'Keluar paksa',
|
|
1272
|
-
forceLogoutDescription: 'Konfirmasi untuk logout paksa pengguna ini?'
|
|
1277
|
+
forceLogoutDescription: 'Konfirmasi untuk logout paksa pengguna ini?',
|
|
1278
|
+
openProfile: 'Lihat Profil'
|
|
1273
1279
|
},
|
|
1274
1280
|
transferNode: {
|
|
1275
1281
|
name: 'Pindahkan Kepemilikan',
|
package/lib/locales/ja.js
CHANGED
|
@@ -738,7 +738,12 @@ export default {
|
|
|
738
738
|
deleteStoreTip: '{name}を接続ストアリストから削除してもよろしいですか?',
|
|
739
739
|
disconnectStoreTip: 'ブロックレットの接続を解除すると、ブロックレットはストアから削除されます。接続を解除してもよろしいですか?',
|
|
740
740
|
connectOrUpload: '接続またはアップロード',
|
|
741
|
-
developerInfo: '開発者情報'
|
|
741
|
+
developerInfo: '開発者情報',
|
|
742
|
+
autoUploadTip: 'リリース後、Blockletを自動的にストアにアップロードします',
|
|
743
|
+
possibleSameStoreTip: '可能な限り、アップロード前に依存ブロックレットを同じ Blocklet ストアに解決してみてください',
|
|
744
|
+
needProjectId: '最初にプロジェクトを作成してください',
|
|
745
|
+
projectSettings: 'プロジェクトの設定',
|
|
746
|
+
noStoreSelected: '続行するために、既存の店舗の1つを選択するか、新しい店舗を追加してください'
|
|
742
747
|
},
|
|
743
748
|
titleValidationError: 'タイトルの長さは最低3文字以上である必要があります',
|
|
744
749
|
descriptionValidationError: '説明の長さは3から160文字の間でなければなりません',
|
|
@@ -1269,7 +1274,8 @@ export default {
|
|
|
1269
1274
|
},
|
|
1270
1275
|
activeUserSessions: 'アクティブユーザーセッション',
|
|
1271
1276
|
forceLogout: '強制ログアウト',
|
|
1272
|
-
forceLogoutDescription: 'このユーザーを強制的にログアウトしますか?'
|
|
1277
|
+
forceLogoutDescription: 'このユーザーを強制的にログアウトしますか?',
|
|
1278
|
+
openProfile: 'プロフィールを表示'
|
|
1273
1279
|
},
|
|
1274
1280
|
transferNode: {
|
|
1275
1281
|
name: '権限の移譲',
|
package/lib/locales/ko.js
CHANGED
|
@@ -738,7 +738,12 @@ export default {
|
|
|
738
738
|
deleteStoreTip: '{name}을(를) 연결 스토어 목록에서 제거하시겠습니까?',
|
|
739
739
|
disconnectStoreTip: '연결이 끊어지면 Blocklet이 스토어에서 제거됩니다. 연결을 끊으시겠습니까?',
|
|
740
740
|
connectOrUpload: '연결하거나 업로드',
|
|
741
|
-
developerInfo: '개발자 정보'
|
|
741
|
+
developerInfo: '개발자 정보',
|
|
742
|
+
autoUploadTip: '릴리스 후 블록릿을 자동으로 스토어에 업로드합니다',
|
|
743
|
+
possibleSameStoreTip: '가능한 경우 업로드하기 전에 종속성 블록렛을 동일한 블록렛 스토어에 해결하려고 시도하십시오',
|
|
744
|
+
needProjectId: '먼저 프로젝트를 만들어주세요',
|
|
745
|
+
projectSettings: '프로젝트 설정',
|
|
746
|
+
noStoreSelected: '계속하려면 기존 상점 중 하나를 선택하거나 새로운 상점을 추가하십시오'
|
|
742
747
|
},
|
|
743
748
|
titleValidationError: '제목 길이는 최소 3자 이상이어야 합니다',
|
|
744
749
|
descriptionValidationError: '설명 길이는 3에서 160자 사이여야 합니다',
|
|
@@ -1269,7 +1274,8 @@ export default {
|
|
|
1269
1274
|
},
|
|
1270
1275
|
activeUserSessions: '활성 사용자 세션',
|
|
1271
1276
|
forceLogout: '강제 로그아웃',
|
|
1272
|
-
forceLogoutDescription: '이 사용자를 강제로 로그아웃하시겠습니까?'
|
|
1277
|
+
forceLogoutDescription: '이 사용자를 강제로 로그아웃하시겠습니까?',
|
|
1278
|
+
openProfile: '프로필 보기'
|
|
1273
1279
|
},
|
|
1274
1280
|
transferNode: {
|
|
1275
1281
|
name: '소유권 이전',
|
package/lib/locales/pt.js
CHANGED
|
@@ -738,7 +738,12 @@ export default {
|
|
|
738
738
|
deleteStoreTip: 'Tem certeza de que deseja remover {name} da lista da Loja de Conexão?',
|
|
739
739
|
disconnectStoreTip: 'Após desconectado, o Blocklet será removido da loja. Você tem certeza que deseja desconectar?',
|
|
740
740
|
connectOrUpload: 'Conectar ou Enviar',
|
|
741
|
-
developerInfo: 'Informações do Desenvolvedor'
|
|
741
|
+
developerInfo: 'Informações do Desenvolvedor',
|
|
742
|
+
autoUploadTip: 'Enviar automaticamente o blocklet para a Loja após o lançamento da criação',
|
|
743
|
+
possibleSameStoreTip: 'Tente resolver blocklets de dependência na mesma Loja de Blocklets antes de fazer o upload sempre que possível',
|
|
744
|
+
needProjectId: 'Por favor, crie um projeto primeiro',
|
|
745
|
+
projectSettings: 'Configurações do Projeto',
|
|
746
|
+
noStoreSelected: 'Por favor, selecione uma das lojas existentes ou adicione uma nova loja para continuar'
|
|
742
747
|
},
|
|
743
748
|
titleValidationError: 'O comprimento do título deve ter pelo menos 3 caracteres',
|
|
744
749
|
descriptionValidationError: 'O comprimento da descrição deve estar entre 3 e 160 caracteres.',
|
|
@@ -1269,7 +1274,8 @@ export default {
|
|
|
1269
1274
|
},
|
|
1270
1275
|
activeUserSessions: 'Sessões de Usuários Ativos',
|
|
1271
1276
|
forceLogout: 'Logout forçado',
|
|
1272
|
-
forceLogoutDescription: 'Confirmar o logout forçado deste usuário?'
|
|
1277
|
+
forceLogoutDescription: 'Confirmar o logout forçado deste usuário?',
|
|
1278
|
+
openProfile: 'Ver perfil'
|
|
1273
1279
|
},
|
|
1274
1280
|
transferNode: {
|
|
1275
1281
|
name: 'Transferir Propriedade',
|
package/lib/locales/ru.js
CHANGED
|
@@ -738,7 +738,12 @@ export default {
|
|
|
738
738
|
deleteStoreTip: 'Вы уверены, что хотите удалить {name} из списка магазина Connect?',
|
|
739
739
|
disconnectStoreTip: 'Блоклет будет удален из магазина после отключения. Уверены, что хотите отключить?',
|
|
740
740
|
connectOrUpload: 'Подключиться или Загрузить',
|
|
741
|
-
developerInfo: 'Информация для разработчиков'
|
|
741
|
+
developerInfo: 'Информация для разработчиков',
|
|
742
|
+
autoUploadTip: 'Автоматически загрузить блоклет в магазин после выпуска',
|
|
743
|
+
possibleSameStoreTip: 'Попробуйте разрешить блоклеты зависимостей в том же хранилище блоклетов перед каждой загрузкой, если это возможно',
|
|
744
|
+
needProjectId: 'Пожалуйста, сначала создайте проект',
|
|
745
|
+
projectSettings: 'Настройки проекта',
|
|
746
|
+
noStoreSelected: 'Пожалуйста, выберите один из существующих магазинов или добавьте новый магазин, чтобы продолжить'
|
|
742
747
|
},
|
|
743
748
|
titleValidationError: 'Длина заголовка должна быть не менее 3 символов',
|
|
744
749
|
descriptionValidationError: 'Длина описания должна быть от 3 до 160 символов',
|
|
@@ -1269,7 +1274,8 @@ export default {
|
|
|
1269
1274
|
},
|
|
1270
1275
|
activeUserSessions: 'Активные пользовательские сессии',
|
|
1271
1276
|
forceLogout: 'Принудительный выход',
|
|
1272
|
-
forceLogoutDescription: 'Подтвердить выход из системы этого пользователя?'
|
|
1277
|
+
forceLogoutDescription: 'Подтвердить выход из системы этого пользователя?',
|
|
1278
|
+
openProfile: 'Просмотр профиля'
|
|
1273
1279
|
},
|
|
1274
1280
|
transferNode: {
|
|
1275
1281
|
name: 'Передача собственности',
|
package/lib/locales/th.js
CHANGED
|
@@ -738,7 +738,12 @@ export default {
|
|
|
738
738
|
deleteStoreTip: 'คุณแน่ใจหรือว่าต้องการลบ {name} ออกจากรายการร้านค้าเชื่อมต่อหรือไม่?',
|
|
739
739
|
disconnectStoreTip: 'เมื่อยกเลิกการเชื่อมต่อแล้ว Blocklet จะถูกลบออกจากร้าน คุณแน่ใจไหมว่าต้องการยกเลิกการเชื่อมต่อหรือไม่',
|
|
740
740
|
connectOrUpload: 'เชื่อมต่อหรืออัปโหลด',
|
|
741
|
-
developerInfo: 'ข้อมูลนักพัฒนา'
|
|
741
|
+
developerInfo: 'ข้อมูลนักพัฒนา',
|
|
742
|
+
autoUploadTip: 'อัปโหลดบล็อกเล็ตไปยังร้านหลังจากการสร้างเสร็จ',
|
|
743
|
+
possibleSameStoreTip: 'ลองแก้ปัญหาบล็อกเล็ตที่ขึ้นอยู่ในร้านค้าเดียวกันก่อนทุกครั้งที่เป็นไปได้',
|
|
744
|
+
needProjectId: 'โปรดสร้างโปรเจกต์ก่อน',
|
|
745
|
+
projectSettings: 'การตั้งค่าโปรเจค',
|
|
746
|
+
noStoreSelected: 'โปรดเลือกหนึ่งในร้านที่มีอยู่หรือเพิ่มร้านใหม่เพื่อดำเนินการต่อ'
|
|
742
747
|
},
|
|
743
748
|
titleValidationError: 'ความยาวของชื่อต้องมีอย่างน้อย 3 ตัวอักษร',
|
|
744
749
|
descriptionValidationError: 'ความยาวคำอธิบายต้องอยู่ระหว่าง 3 ถึง 160 ตัวอักษร.',
|
|
@@ -1269,7 +1274,8 @@ export default {
|
|
|
1269
1274
|
},
|
|
1270
1275
|
activeUserSessions: 'เซสชันผู้ใช้ที่ใช้งานอยู่',
|
|
1271
1276
|
forceLogout: 'ออกจากระบบบังคับ',
|
|
1272
|
-
forceLogoutDescription: 'ยืนยันให้ออกจากระบบผู้ใช้นี้หรือไม่?'
|
|
1277
|
+
forceLogoutDescription: 'ยืนยันให้ออกจากระบบผู้ใช้นี้หรือไม่?',
|
|
1278
|
+
openProfile: 'ดูโปรไฟล์'
|
|
1273
1279
|
},
|
|
1274
1280
|
transferNode: {
|
|
1275
1281
|
name: 'โอนสิทธิ์การเป็นเจ้าของ',
|
package/lib/locales/vi.js
CHANGED
|
@@ -738,7 +738,12 @@ export default {
|
|
|
738
738
|
deleteStoreTip: 'Bạn có chắc chắn muốn xóa {name} khỏi danh sách Cửa hàng Kết nối không?',
|
|
739
739
|
disconnectStoreTip: 'Sau khi ngắt kết nối, Blocklet sẽ bị xóa khỏi cửa hàng. Bạn có chắc chắn muốn ngắt kết nối không?',
|
|
740
740
|
connectOrUpload: 'Kết nối hoặc Tải lên',
|
|
741
|
-
developerInfo: 'Thông tin nhà phát triển'
|
|
741
|
+
developerInfo: 'Thông tin nhà phát triển',
|
|
742
|
+
autoUploadTip: 'Tự động tải lên blocklet lên Cửa hàng sau khi phát hành',
|
|
743
|
+
possibleSameStoreTip: 'Hãy thử giải quyết các blocklet phụ thuộc trong cùng một Cửa hàng Blocklet trước mỗi khi tải lên khi có thể',
|
|
744
|
+
needProjectId: 'Vui lòng tạo dự án trước',
|
|
745
|
+
projectSettings: 'Cài đặt Dự án',
|
|
746
|
+
noStoreSelected: 'Vui lòng chọn một cửa hàng hiện có hoặc thêm cửa hàng mới để tiếp tục'
|
|
742
747
|
},
|
|
743
748
|
titleValidationError: 'Độ dài tiêu đề phải ít nhất 3 ký tự',
|
|
744
749
|
descriptionValidationError: 'Chiều dài mô tả phải từ 3 đến 160 ký tự.',
|
|
@@ -1269,7 +1274,8 @@ export default {
|
|
|
1269
1274
|
},
|
|
1270
1275
|
activeUserSessions: 'Phiên người dùng hoạt động',
|
|
1271
1276
|
forceLogout: 'Đăng xuất bắt buộc',
|
|
1272
|
-
forceLogoutDescription: 'Xác nhận đăng xuất buộc người dùng này?'
|
|
1277
|
+
forceLogoutDescription: 'Xác nhận đăng xuất buộc người dùng này?',
|
|
1278
|
+
openProfile: 'Xem hồ sơ'
|
|
1273
1279
|
},
|
|
1274
1280
|
transferNode: {
|
|
1275
1281
|
name: 'Chuyển quyền sở hữu',
|