@abtnode/ux 1.16.29-beta-a3a3b40e → 1.16.29-beta-bc7cae11
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/index.js +30 -27
- package/lib/blocklet/publish/create-release/header.js +2 -2
- package/lib/blocklet/publish/create-release/project-setting.js +9 -4
- package/lib/blocklet/storage/auto-check-update.js +2 -2
- package/lib/contexts/blocklet-auto-check-update.js +54 -0
- package/lib/contexts/blocklet-storage.js +0 -19
- package/lib/locales/zh-tw.js +1 -1
- package/lib/locales/zh.js +1 -1
- package/package.json +19 -19
|
@@ -37,6 +37,7 @@ import ComponentCell, { StyledBadge, StyledComponentRow } from './component-cell
|
|
|
37
37
|
import OptionalComponentCell from './optional-component-cell';
|
|
38
38
|
import AddComponentDialog from './add-component/add-component-dialog';
|
|
39
39
|
import Actions from '../../actions';
|
|
40
|
+
import { BlockletAutoCheckUpdateProvider } from '../../contexts/blocklet-auto-check-update';
|
|
40
41
|
import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from "react/jsx-runtime";
|
|
41
42
|
export default function BlockletComponent({
|
|
42
43
|
blocklet,
|
|
@@ -248,33 +249,35 @@ export default function BlockletComponent({
|
|
|
248
249
|
children: [components?.length ? `${t('common.components')} (${components.length})` : `${t('common.components')}`, !needMigration && /*#__PURE__*/_jsx(Permission, {
|
|
249
250
|
permission: inService ? '' : 'mutate_blocklets',
|
|
250
251
|
role: inService ? BlockletAdminRoles : [],
|
|
251
|
-
children: /*#__PURE__*/_jsx(
|
|
252
|
-
children: /*#__PURE__*/_jsx(
|
|
253
|
-
|
|
254
|
-
|
|
255
|
-
|
|
256
|
-
|
|
257
|
-
|
|
258
|
-
|
|
259
|
-
|
|
260
|
-
|
|
261
|
-
|
|
262
|
-
|
|
263
|
-
|
|
264
|
-
|
|
265
|
-
|
|
266
|
-
|
|
267
|
-
|
|
268
|
-
|
|
269
|
-
|
|
270
|
-
|
|
271
|
-
|
|
272
|
-
|
|
273
|
-
|
|
274
|
-
|
|
275
|
-
|
|
276
|
-
|
|
277
|
-
|
|
252
|
+
children: /*#__PURE__*/_jsx(BlockletAutoCheckUpdateProvider, {
|
|
253
|
+
children: /*#__PURE__*/_jsx(AutoCheckUpdate, {
|
|
254
|
+
children: /*#__PURE__*/_jsx(StyledBadge, {
|
|
255
|
+
top: 1.2,
|
|
256
|
+
right: 0.4,
|
|
257
|
+
color: "error",
|
|
258
|
+
badgeContent: "",
|
|
259
|
+
variant: "dot",
|
|
260
|
+
invisible: !showUpdateDot,
|
|
261
|
+
children: /*#__PURE__*/_jsxs(Button, {
|
|
262
|
+
disabled: loading || isInProgress(blocklet.status),
|
|
263
|
+
color: "secondary",
|
|
264
|
+
onClick: () => {
|
|
265
|
+
checkForUpdates();
|
|
266
|
+
},
|
|
267
|
+
"data-cy": "check-for-updates",
|
|
268
|
+
children: [/*#__PURE__*/_jsx(Box, {
|
|
269
|
+
ml: 0.5,
|
|
270
|
+
mr: 0.5,
|
|
271
|
+
display: "flex",
|
|
272
|
+
children: loading ? /*#__PURE__*/_jsx(Spinner, {
|
|
273
|
+
size: 16
|
|
274
|
+
}) : /*#__PURE__*/_jsx(UpdateIcon, {
|
|
275
|
+
style: {
|
|
276
|
+
fontSize: '1em'
|
|
277
|
+
}
|
|
278
|
+
})
|
|
279
|
+
}), t('blocklet.component.checkUpdateTitle')]
|
|
280
|
+
})
|
|
278
281
|
})
|
|
279
282
|
})
|
|
280
283
|
})
|
|
@@ -228,7 +228,7 @@ function Header({
|
|
|
228
228
|
}
|
|
229
229
|
};
|
|
230
230
|
}), {
|
|
231
|
-
concurrency:
|
|
231
|
+
concurrency: 4
|
|
232
232
|
});
|
|
233
233
|
}
|
|
234
234
|
onPublish?.();
|
|
@@ -456,7 +456,7 @@ function Header({
|
|
|
456
456
|
params: params,
|
|
457
457
|
projectId: projectId,
|
|
458
458
|
open: showSetting,
|
|
459
|
-
|
|
459
|
+
setParams: setParams,
|
|
460
460
|
onClose: () => setShowSetting(false)
|
|
461
461
|
})]
|
|
462
462
|
});
|
|
@@ -13,10 +13,10 @@ import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from "react/jsx-run
|
|
|
13
13
|
function ProjectSetting({
|
|
14
14
|
did,
|
|
15
15
|
params,
|
|
16
|
+
setParams,
|
|
16
17
|
projectId,
|
|
17
18
|
open,
|
|
18
|
-
onClose
|
|
19
|
-
getData
|
|
19
|
+
onClose
|
|
20
20
|
}) {
|
|
21
21
|
const {
|
|
22
22
|
t
|
|
@@ -28,6 +28,8 @@ function ProjectSetting({
|
|
|
28
28
|
const [autoUpload, setAutoUpload] = useState(false);
|
|
29
29
|
const [possibleSameStore, setPossibleSameStore] = useState(false);
|
|
30
30
|
const handleClose = () => {
|
|
31
|
+
setAutoUpload(params.autoUpload);
|
|
32
|
+
setPossibleSameStore(params.possibleSameStore);
|
|
31
33
|
setLoading(false);
|
|
32
34
|
onClose(false);
|
|
33
35
|
};
|
|
@@ -45,7 +47,10 @@ function ProjectSetting({
|
|
|
45
47
|
possibleSameStore: !!possibleSameStore
|
|
46
48
|
}
|
|
47
49
|
});
|
|
48
|
-
|
|
50
|
+
setParams({
|
|
51
|
+
autoUpload,
|
|
52
|
+
possibleSameStore
|
|
53
|
+
});
|
|
49
54
|
onClose(false);
|
|
50
55
|
} catch (err) {
|
|
51
56
|
Toast.error(err.message);
|
|
@@ -171,7 +176,7 @@ ProjectSetting.propTypes = {
|
|
|
171
176
|
params: PropTypes.object.isRequired,
|
|
172
177
|
open: PropTypes.bool.isRequired,
|
|
173
178
|
onClose: PropTypes.func.isRequired,
|
|
174
|
-
|
|
179
|
+
setParams: PropTypes.func.isRequired,
|
|
175
180
|
projectId: PropTypes.string.isRequired
|
|
176
181
|
};
|
|
177
182
|
export default ProjectSetting;
|
|
@@ -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;
|
|
@@ -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/locales/zh-tw.js
CHANGED
|
@@ -739,7 +739,7 @@ export default {
|
|
|
739
739
|
disconnectStoreTip: '斷開連線後,blocklet 將從商店中移除。您確定要斷開連線嗎?',
|
|
740
740
|
connectOrUpload: '連接或上傳',
|
|
741
741
|
developerInfo: '開發者資訊',
|
|
742
|
-
possibleSameStoreTip: '
|
|
742
|
+
possibleSameStoreTip: '依賴的 Blocklets 優先使用同源 Store',
|
|
743
743
|
autoUploadTip: '創建發布後自動將 Blocklet 上傳到商店',
|
|
744
744
|
needProjectId: '請先創建一個專案',
|
|
745
745
|
projectSettings: '專案設定'
|
package/lib/locales/zh.js
CHANGED
|
@@ -740,7 +740,7 @@ export default {
|
|
|
740
740
|
disconnectStoreTip: '断开连接后,blocklet 将从商店中移除。您确定要断开连接吗?',
|
|
741
741
|
connectOrUpload: '连接或上传',
|
|
742
742
|
developerInfo: '开发者信息',
|
|
743
|
-
possibleSameStoreTip: '
|
|
743
|
+
possibleSameStoreTip: '依赖的 Blocklets 优先使用同源 Store',
|
|
744
744
|
autoUploadTip: '创建发布后自动将 Blocklet 上传到商店',
|
|
745
745
|
needProjectId: '请先创建一个项目',
|
|
746
746
|
projectSettings: '项目设置'
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@abtnode/ux",
|
|
3
|
-
"version": "1.16.29-beta-
|
|
3
|
+
"version": "1.16.29-beta-bc7cae11",
|
|
4
4
|
"description": "UX components shared across abtnode packages",
|
|
5
5
|
"publishConfig": {
|
|
6
6
|
"access": "public"
|
|
@@ -25,24 +25,24 @@
|
|
|
25
25
|
"author": "linchen <linchen1987@foxmail.com> (http://github.com/linchen1987)",
|
|
26
26
|
"license": "Apache-2.0",
|
|
27
27
|
"dependencies": {
|
|
28
|
-
"@abtnode/auth": "1.16.29-beta-
|
|
29
|
-
"@abtnode/constant": "1.16.29-beta-
|
|
30
|
-
"@abtnode/util": "1.16.29-beta-
|
|
28
|
+
"@abtnode/auth": "1.16.29-beta-bc7cae11",
|
|
29
|
+
"@abtnode/constant": "1.16.29-beta-bc7cae11",
|
|
30
|
+
"@abtnode/util": "1.16.29-beta-bc7cae11",
|
|
31
31
|
"@ahooksjs/use-url-state": "^3.5.1",
|
|
32
|
-
"@arcblock/did": "^1.18.
|
|
33
|
-
"@arcblock/did-connect": "^2.10.
|
|
32
|
+
"@arcblock/did": "^1.18.128",
|
|
33
|
+
"@arcblock/did-connect": "^2.10.12",
|
|
34
34
|
"@arcblock/did-motif": "^1.1.13",
|
|
35
|
-
"@arcblock/icons": "^2.10.
|
|
36
|
-
"@arcblock/nft-display": "2.10.
|
|
37
|
-
"@arcblock/react-hooks": "^2.10.
|
|
38
|
-
"@arcblock/terminal": "^2.10.
|
|
39
|
-
"@arcblock/ux": "^2.10.
|
|
40
|
-
"@blocklet/constant": "1.16.29-beta-
|
|
41
|
-
"@blocklet/js-sdk": "1.16.29-beta-
|
|
42
|
-
"@blocklet/launcher-layout": "2.3.
|
|
43
|
-
"@blocklet/list": "^0.13.
|
|
44
|
-
"@blocklet/meta": "1.16.29-beta-
|
|
45
|
-
"@blocklet/ui-react": "^2.10.
|
|
35
|
+
"@arcblock/icons": "^2.10.12",
|
|
36
|
+
"@arcblock/nft-display": "2.10.12",
|
|
37
|
+
"@arcblock/react-hooks": "^2.10.12",
|
|
38
|
+
"@arcblock/terminal": "^2.10.12",
|
|
39
|
+
"@arcblock/ux": "^2.10.12",
|
|
40
|
+
"@blocklet/constant": "1.16.29-beta-bc7cae11",
|
|
41
|
+
"@blocklet/js-sdk": "1.16.29-beta-bc7cae11",
|
|
42
|
+
"@blocklet/launcher-layout": "2.3.38",
|
|
43
|
+
"@blocklet/list": "^0.13.13",
|
|
44
|
+
"@blocklet/meta": "1.16.29-beta-bc7cae11",
|
|
45
|
+
"@blocklet/ui-react": "^2.10.12",
|
|
46
46
|
"@blocklet/uploader": "0.1.20",
|
|
47
47
|
"@emotion/react": "^11.10.4",
|
|
48
48
|
"@emotion/styled": "^11.10.4",
|
|
@@ -56,7 +56,7 @@
|
|
|
56
56
|
"@mui/styles": "^5.15.11",
|
|
57
57
|
"@mui/x-date-pickers": "^6.19.0",
|
|
58
58
|
"@mui/x-tree-view": "^6.17.0",
|
|
59
|
-
"@ocap/client": "1.18.
|
|
59
|
+
"@ocap/client": "1.18.128",
|
|
60
60
|
"@uiw/react-markdown-preview": "^5.1.1",
|
|
61
61
|
"ahooks": "^3.7.8",
|
|
62
62
|
"axios": "^1.7.2",
|
|
@@ -108,5 +108,5 @@
|
|
|
108
108
|
"jest": "^29.7.0",
|
|
109
109
|
"jest-environment-jsdom": "^29.7.0"
|
|
110
110
|
},
|
|
111
|
-
"gitHead": "
|
|
111
|
+
"gitHead": "bb2ff5fc40838a48a59db65871d5640f6b427f0e"
|
|
112
112
|
}
|