@abtnode/ux 1.16.0-beta-1d6c582e → 1.16.0-beta-62b42401
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/actions.js +34 -29
- package/lib/blocklet/component/navigation/locale-tabs.js +18 -12
- package/lib/blocklet/component/navigation/navigation-actions.js +5 -5
- package/lib/blocklet/component/navigation/navigation-dialog.js +19 -13
- package/lib/blocklet/component/navigation/navigation-preview.js +11 -9
- package/lib/blocklet/component/navigation/simple-select.js +25 -16
- package/lib/blocklet/component/sortable-tree.js +5 -4
- package/lib/blocklet/config-navigation.js +35 -26
- package/lib/blocklet/oauth/auth0.js +162 -0
- package/lib/blocklet/oauth/index.js +49 -0
- package/lib/blocklet/preferences/index.js +24 -0
- package/lib/blocklet/storage.js +3 -2
- package/lib/invitation/invitation-receive.js +9 -1
- package/lib/locales/en.js +21 -5
- package/lib/locales/zh.js +20 -4
- package/lib/team/members/index.js +9 -0
- package/lib/team/members/issue-passport.js +6 -2
- package/lib/team/members/passports.js +1 -0
- package/package.json +14 -14
package/lib/blocklet/actions.js
CHANGED
|
@@ -88,13 +88,9 @@ function BlockletActions(_ref) {
|
|
|
88
88
|
let isRemoved = false;
|
|
89
89
|
try {
|
|
90
90
|
var _blocklet$settings;
|
|
91
|
-
const input = {
|
|
92
|
-
did: blocklet.meta.did
|
|
93
|
-
};
|
|
94
91
|
if (action === 'remove') {
|
|
95
|
-
|
|
96
|
-
}
|
|
97
|
-
if (action === 'start' && !inService && !skipSetup && !((_blocklet$settings = blocklet.settings) !== null && _blocklet$settings !== void 0 && _blocklet$settings.initialized)) {
|
|
92
|
+
await fn(params);
|
|
93
|
+
} else if (action === 'start' && !inService && !skipSetup && !((_blocklet$settings = blocklet.settings) !== null && _blocklet$settings !== void 0 && _blocklet$settings.initialized)) {
|
|
98
94
|
// 启动 blocklet 并跳转到 setup 流程界面时携带 serverUrl 查询参数
|
|
99
95
|
const serverUrl = (0, _util3.getServerUrl)(node.info);
|
|
100
96
|
const url = new URL(recommendedUrl);
|
|
@@ -105,10 +101,14 @@ function BlockletActions(_ref) {
|
|
|
105
101
|
blocklet
|
|
106
102
|
});
|
|
107
103
|
return;
|
|
104
|
+
} else {
|
|
105
|
+
const input = {
|
|
106
|
+
did: blocklet.meta.did
|
|
107
|
+
};
|
|
108
|
+
await fn({
|
|
109
|
+
input
|
|
110
|
+
});
|
|
108
111
|
}
|
|
109
|
-
await fn({
|
|
110
|
-
input
|
|
111
|
-
});
|
|
112
112
|
if (action === 'remove') {
|
|
113
113
|
isRemoved = true; // Deleted send request and succeeded
|
|
114
114
|
} else {
|
|
@@ -140,25 +140,12 @@ function BlockletActions(_ref) {
|
|
|
140
140
|
setConfirmSetting(null);
|
|
141
141
|
};
|
|
142
142
|
const name = (0, _util.getDisplayName)(blocklet, true);
|
|
143
|
-
const removeSetting =
|
|
144
|
-
description: () => /*#__PURE__*/(0, _jsxRuntime.jsx)(_Typography.default, {
|
|
145
|
-
component: "div",
|
|
146
|
-
children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_Typography.default, {
|
|
147
|
-
gutterBottom: true,
|
|
148
|
-
children: /*#__PURE__*/(0, _jsxRuntime.jsx)("b", {
|
|
149
|
-
children: t('blocklet.action.forceRemoveDescription')
|
|
150
|
-
})
|
|
151
|
-
})
|
|
152
|
-
}),
|
|
153
|
-
params: {
|
|
154
|
-
removeType: 'complete'
|
|
155
|
-
}
|
|
156
|
-
} : {
|
|
143
|
+
const removeSetting = {
|
|
157
144
|
description: (params, setParams) => /*#__PURE__*/(0, _jsxRuntime.jsxs)(_Typography.default, {
|
|
158
145
|
component: "div",
|
|
159
146
|
children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_Typography.default, {
|
|
160
147
|
gutterBottom: true,
|
|
161
|
-
children: t('blocklet.action.
|
|
148
|
+
children: t('blocklet.action.removeApplicationDescription')
|
|
162
149
|
}), /*#__PURE__*/(0, _jsxRuntime.jsxs)(_RadioGroup.default, {
|
|
163
150
|
name: "removeType",
|
|
164
151
|
value: params.removeType,
|
|
@@ -166,18 +153,18 @@ function BlockletActions(_ref) {
|
|
|
166
153
|
removeType: e.target.value
|
|
167
154
|
})),
|
|
168
155
|
children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_FormControlLabel.default, {
|
|
169
|
-
value: "
|
|
156
|
+
value: "backup",
|
|
170
157
|
control: /*#__PURE__*/(0, _jsxRuntime.jsx)(_Radio.default, {}),
|
|
171
|
-
label: t('blocklet.action.
|
|
158
|
+
label: t('blocklet.action.removeApplicationAfterBackup')
|
|
172
159
|
}), /*#__PURE__*/(0, _jsxRuntime.jsx)(_FormControlLabel.default, {
|
|
173
160
|
value: "complete",
|
|
174
161
|
control: /*#__PURE__*/(0, _jsxRuntime.jsx)(_Radio.default, {}),
|
|
175
|
-
label: t('blocklet.action.
|
|
162
|
+
label: t('blocklet.action.removeApplicationComplete')
|
|
176
163
|
})]
|
|
177
164
|
})]
|
|
178
165
|
}),
|
|
179
166
|
params: {
|
|
180
|
-
removeType: '
|
|
167
|
+
removeType: 'backup'
|
|
181
168
|
}
|
|
182
169
|
};
|
|
183
170
|
const confirmSettings = {
|
|
@@ -263,7 +250,25 @@ function BlockletActions(_ref) {
|
|
|
263
250
|
action: 'remove',
|
|
264
251
|
icon: _icons.default.Remove,
|
|
265
252
|
name: t('common.remove'),
|
|
266
|
-
handler: createHandler('remove',
|
|
253
|
+
handler: createHandler('remove', async _ref2 => {
|
|
254
|
+
let {
|
|
255
|
+
removeType
|
|
256
|
+
} = _ref2;
|
|
257
|
+
if (removeType === 'backup') {
|
|
258
|
+
await node.api.backupBlocklet({
|
|
259
|
+
input: {
|
|
260
|
+
appDid: blocklet.appDid,
|
|
261
|
+
to: 'disk'
|
|
262
|
+
}
|
|
263
|
+
});
|
|
264
|
+
}
|
|
265
|
+
await node.api.deleteBlocklet({
|
|
266
|
+
input: {
|
|
267
|
+
did: blocklet.meta.did,
|
|
268
|
+
keepData: false
|
|
269
|
+
}
|
|
270
|
+
});
|
|
271
|
+
}, true),
|
|
267
272
|
disabled: inProgress
|
|
268
273
|
} : null;
|
|
269
274
|
const cancelDownloadAction = !inService ? {
|
|
@@ -9,7 +9,13 @@ var _ahooks = require("ahooks");
|
|
|
9
9
|
var _lodash = require("lodash");
|
|
10
10
|
var _react = require("react");
|
|
11
11
|
var _react2 = require("@iconify/react");
|
|
12
|
-
var
|
|
12
|
+
var _Tabs = _interopRequireDefault(require("@mui/material/Tabs"));
|
|
13
|
+
var _Tab = _interopRequireDefault(require("@mui/material/Tab"));
|
|
14
|
+
var _IconButton = _interopRequireDefault(require("@mui/material/IconButton"));
|
|
15
|
+
var _Popover = _interopRequireDefault(require("@mui/material/Popover"));
|
|
16
|
+
var _Box = _interopRequireDefault(require("@mui/material/Box"));
|
|
17
|
+
var _Typography = _interopRequireDefault(require("@mui/material/Typography"));
|
|
18
|
+
var _Button = _interopRequireDefault(require("@mui/material/Button"));
|
|
13
19
|
var _context = require("@arcblock/ux/lib/Locale/context");
|
|
14
20
|
var _simpleSelect = _interopRequireDefault(require("./simple-select"));
|
|
15
21
|
var _locales = _interopRequireDefault(require("../../../util/locales"));
|
|
@@ -115,21 +121,21 @@ function LocaleTabs(_ref) {
|
|
|
115
121
|
state.inputLocale = value;
|
|
116
122
|
}
|
|
117
123
|
return /*#__PURE__*/(0, _jsxRuntime.jsxs)(_jsxRuntime.Fragment, {
|
|
118
|
-
children: [/*#__PURE__*/(0, _jsxRuntime.jsxs)(
|
|
124
|
+
children: [/*#__PURE__*/(0, _jsxRuntime.jsxs)(_Tabs.default, {
|
|
119
125
|
sx: sx,
|
|
120
126
|
value: state.currentLocale,
|
|
121
127
|
onChange: (e, value) => {
|
|
122
128
|
state.currentLocale = value;
|
|
123
129
|
},
|
|
124
|
-
children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(
|
|
130
|
+
children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_Tab.default, {
|
|
125
131
|
label: "Default (".concat(_locales.default[defaultLocale], ")"),
|
|
126
132
|
value: "en"
|
|
127
|
-
}), state.localeList.map(item => /*#__PURE__*/(0, _jsxRuntime.jsx)(
|
|
133
|
+
}), state.localeList.map(item => /*#__PURE__*/(0, _jsxRuntime.jsx)(_Tab.default, {
|
|
128
134
|
sx: {
|
|
129
135
|
position: 'relative'
|
|
130
136
|
},
|
|
131
137
|
label: /*#__PURE__*/(0, _jsxRuntime.jsxs)(_jsxRuntime.Fragment, {
|
|
132
|
-
children: [_locales.default[item], /*#__PURE__*/(0, _jsxRuntime.jsx)(
|
|
138
|
+
children: [_locales.default[item], /*#__PURE__*/(0, _jsxRuntime.jsx)(_IconButton.default, {
|
|
133
139
|
size: "small",
|
|
134
140
|
color: "inherit",
|
|
135
141
|
sx: {
|
|
@@ -147,7 +153,7 @@ function LocaleTabs(_ref) {
|
|
|
147
153
|
})]
|
|
148
154
|
}),
|
|
149
155
|
value: item
|
|
150
|
-
}, item)), /*#__PURE__*/(0, _jsxRuntime.jsx)(
|
|
156
|
+
}, item)), /*#__PURE__*/(0, _jsxRuntime.jsx)(_IconButton.default, {
|
|
151
157
|
color: "primary",
|
|
152
158
|
disableFocusRipple: true,
|
|
153
159
|
sx: {
|
|
@@ -160,7 +166,7 @@ function LocaleTabs(_ref) {
|
|
|
160
166
|
icon: "mdi:plus"
|
|
161
167
|
})
|
|
162
168
|
})]
|
|
163
|
-
}), /*#__PURE__*/(0, _jsxRuntime.jsx)(
|
|
169
|
+
}), /*#__PURE__*/(0, _jsxRuntime.jsx)(_Popover.default, {
|
|
164
170
|
open: openChooseLocale,
|
|
165
171
|
anchorEl: addLocaleButtonEl,
|
|
166
172
|
onClose: close,
|
|
@@ -168,15 +174,15 @@ function LocaleTabs(_ref) {
|
|
|
168
174
|
vertical: 'bottom',
|
|
169
175
|
horizontal: 'left'
|
|
170
176
|
},
|
|
171
|
-
children: /*#__PURE__*/(0, _jsxRuntime.jsxs)(
|
|
177
|
+
children: /*#__PURE__*/(0, _jsxRuntime.jsxs)(_Box.default, {
|
|
172
178
|
sx: {
|
|
173
179
|
p: 2,
|
|
174
180
|
width: '270px'
|
|
175
181
|
},
|
|
176
|
-
children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(
|
|
182
|
+
children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_Typography.default, {
|
|
177
183
|
variant: "subtitle2",
|
|
178
184
|
children: t('navigation.form.localePlaceholder')
|
|
179
|
-
}), /*#__PURE__*/(0, _jsxRuntime.jsx)(
|
|
185
|
+
}), /*#__PURE__*/(0, _jsxRuntime.jsx)(_Box.default, {
|
|
180
186
|
mt: 1,
|
|
181
187
|
children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_simpleSelect.default, {
|
|
182
188
|
required: true,
|
|
@@ -188,10 +194,10 @@ function LocaleTabs(_ref) {
|
|
|
188
194
|
error: !!state.localeError,
|
|
189
195
|
helperText: state.localeError || ' '
|
|
190
196
|
})
|
|
191
|
-
}), /*#__PURE__*/(0, _jsxRuntime.jsx)(
|
|
197
|
+
}), /*#__PURE__*/(0, _jsxRuntime.jsx)(_Box.default, {
|
|
192
198
|
display: "flex",
|
|
193
199
|
justifyContent: "flex-end",
|
|
194
|
-
children: /*#__PURE__*/(0, _jsxRuntime.jsx)(
|
|
200
|
+
children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_Button.default, {
|
|
195
201
|
size: "small",
|
|
196
202
|
variant: "contained",
|
|
197
203
|
onClick: handleAddLocale,
|
|
@@ -6,7 +6,7 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
6
6
|
exports.default = void 0;
|
|
7
7
|
var _propTypes = _interopRequireDefault(require("prop-types"));
|
|
8
8
|
var _react = require("@iconify/react");
|
|
9
|
-
var
|
|
9
|
+
var _IconButton = _interopRequireDefault(require("@mui/material/IconButton"));
|
|
10
10
|
var _react2 = require("react");
|
|
11
11
|
var _context = require("@arcblock/ux/lib/Locale/context");
|
|
12
12
|
var _jsxRuntime = require("react/jsx-runtime");
|
|
@@ -50,7 +50,7 @@ function NavigationActions(_ref) {
|
|
|
50
50
|
className: className,
|
|
51
51
|
children: [!data.parent && ['header', 'footer', 'dashboard'].includes(section) && /*#__PURE__*/(0, _jsxRuntime.jsx)("span", {
|
|
52
52
|
title: isUninstalled ? t('navigation.action.noAddSub') : t('navigation.action.addSub'),
|
|
53
|
-
children: /*#__PURE__*/(0, _jsxRuntime.jsx)(
|
|
53
|
+
children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_IconButton.default, {
|
|
54
54
|
size: "small",
|
|
55
55
|
color: "success",
|
|
56
56
|
onClick: handleClickAdd,
|
|
@@ -61,7 +61,7 @@ function NavigationActions(_ref) {
|
|
|
61
61
|
})
|
|
62
62
|
}), /*#__PURE__*/(0, _jsxRuntime.jsx)("span", {
|
|
63
63
|
title: isUninstalled ? t('navigation.action.noEdit') : t('navigation.action.edit'),
|
|
64
|
-
children: /*#__PURE__*/(0, _jsxRuntime.jsx)(
|
|
64
|
+
children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_IconButton.default, {
|
|
65
65
|
size: "small",
|
|
66
66
|
color: "primary",
|
|
67
67
|
onClick: handleClickEdit,
|
|
@@ -74,7 +74,7 @@ function NavigationActions(_ref) {
|
|
|
74
74
|
title:
|
|
75
75
|
// eslint-disable-next-line no-nested-ternary
|
|
76
76
|
isUninstalled ? t('navigation.action.noEdit') : data.visible ? t('navigation.action.hide') : t('navigation.action.show'),
|
|
77
|
-
children: /*#__PURE__*/(0, _jsxRuntime.jsx)(
|
|
77
|
+
children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_IconButton.default, {
|
|
78
78
|
size: "small",
|
|
79
79
|
color: "warning",
|
|
80
80
|
onClick: handleClickToggle,
|
|
@@ -87,7 +87,7 @@ function NavigationActions(_ref) {
|
|
|
87
87
|
})
|
|
88
88
|
}), /*#__PURE__*/(0, _jsxRuntime.jsx)("span", {
|
|
89
89
|
title: isDisabled && !isUninstalled ? t('navigation.action.noDel') : t('navigation.action.del'),
|
|
90
|
-
children: /*#__PURE__*/(0, _jsxRuntime.jsx)(
|
|
90
|
+
children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_IconButton.default, {
|
|
91
91
|
disabled: isDisabled && !isUninstalled,
|
|
92
92
|
size: "small",
|
|
93
93
|
color: "error",
|
|
@@ -8,7 +8,13 @@ var _propTypes = _interopRequireDefault(require("prop-types"));
|
|
|
8
8
|
var _Button = _interopRequireDefault(require("@arcblock/ux/lib/Button"));
|
|
9
9
|
var _Dialog = _interopRequireDefault(require("@arcblock/ux/lib/Dialog"));
|
|
10
10
|
var _context = require("@arcblock/ux/lib/Locale/context");
|
|
11
|
-
var
|
|
11
|
+
var _Autocomplete = _interopRequireDefault(require("@mui/material/Autocomplete"));
|
|
12
|
+
var _Box = _interopRequireDefault(require("@mui/material/Box"));
|
|
13
|
+
var _FormControl = _interopRequireDefault(require("@mui/material/FormControl"));
|
|
14
|
+
var _IconButton = _interopRequireDefault(require("@mui/material/IconButton"));
|
|
15
|
+
var _InputAdornment = _interopRequireDefault(require("@mui/material/InputAdornment"));
|
|
16
|
+
var _TextField = _interopRequireDefault(require("@mui/material/TextField"));
|
|
17
|
+
var _Typography = _interopRequireDefault(require("@mui/material/Typography"));
|
|
12
18
|
var _ahooks = require("ahooks");
|
|
13
19
|
var _omit = _interopRequireDefault(require("lodash/omit"));
|
|
14
20
|
var _pick = _interopRequireDefault(require("lodash/pick"));
|
|
@@ -428,7 +434,7 @@ const NavigationDialog = /*#__PURE__*/(0, _react.forwardRef)(function Navigation
|
|
|
428
434
|
let {
|
|
429
435
|
field
|
|
430
436
|
} = _ref3;
|
|
431
|
-
return /*#__PURE__*/(0, _jsxRuntime.jsx)(
|
|
437
|
+
return /*#__PURE__*/(0, _jsxRuntime.jsx)(_TextField.default, _objectSpread({
|
|
432
438
|
fullWidth: true,
|
|
433
439
|
variant: "outlined",
|
|
434
440
|
margin: "dense",
|
|
@@ -451,16 +457,16 @@ const NavigationDialog = /*#__PURE__*/(0, _react.forwardRef)(function Navigation
|
|
|
451
457
|
let {
|
|
452
458
|
field
|
|
453
459
|
} = _ref4;
|
|
454
|
-
return /*#__PURE__*/(0, _jsxRuntime.jsx)(
|
|
460
|
+
return /*#__PURE__*/(0, _jsxRuntime.jsx)(_TextField.default, _objectSpread(_objectSpread({
|
|
455
461
|
fullWidth: true,
|
|
456
462
|
variant: "outlined",
|
|
457
463
|
margin: "dense",
|
|
458
464
|
placeholder: t('navigation.form.iconPlaceholder'),
|
|
459
465
|
label: t('navigation.form.icon'),
|
|
460
466
|
error: !!(errors !== null && errors !== void 0 && (_errors$icon = errors.icon) !== null && _errors$icon !== void 0 && _errors$icon.message),
|
|
461
|
-
helperText: (errors === null || errors === void 0 ? void 0 : (_errors$icon2 = errors.icon) === null || _errors$icon2 === void 0 ? void 0 : _errors$icon2.message) || /*#__PURE__*/(0, _jsxRuntime.jsx)(
|
|
467
|
+
helperText: (errors === null || errors === void 0 ? void 0 : (_errors$icon2 = errors.icon) === null || _errors$icon2 === void 0 ? void 0 : _errors$icon2.message) || /*#__PURE__*/(0, _jsxRuntime.jsx)(_Box.default, {
|
|
462
468
|
display: "flex",
|
|
463
|
-
children: /*#__PURE__*/(0, _jsxRuntime.jsxs)(
|
|
469
|
+
children: /*#__PURE__*/(0, _jsxRuntime.jsxs)(_Box.default, {
|
|
464
470
|
component: "a",
|
|
465
471
|
href: "https://icones.js.org",
|
|
466
472
|
target: "_blank",
|
|
@@ -476,9 +482,9 @@ const NavigationDialog = /*#__PURE__*/(0, _react.forwardRef)(function Navigation
|
|
|
476
482
|
})
|
|
477
483
|
}, field), {}, {
|
|
478
484
|
InputProps: {
|
|
479
|
-
endAdornment: /*#__PURE__*/(0, _jsxRuntime.jsx)(
|
|
485
|
+
endAdornment: /*#__PURE__*/(0, _jsxRuntime.jsx)(_InputAdornment.default, {
|
|
480
486
|
position: "end",
|
|
481
|
-
children: /*#__PURE__*/(0, _jsxRuntime.jsx)(
|
|
487
|
+
children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_IconButton.default, {
|
|
482
488
|
sx: {
|
|
483
489
|
cursor: 'default'
|
|
484
490
|
},
|
|
@@ -526,10 +532,10 @@ const NavigationDialog = /*#__PURE__*/(0, _react.forwardRef)(function Navigation
|
|
|
526
532
|
let {
|
|
527
533
|
field
|
|
528
534
|
} = _ref6;
|
|
529
|
-
return /*#__PURE__*/(0, _jsxRuntime.jsx)(
|
|
535
|
+
return /*#__PURE__*/(0, _jsxRuntime.jsx)(_FormControl.default, {
|
|
530
536
|
fullWidth: true,
|
|
531
537
|
margin: "dense",
|
|
532
|
-
children: /*#__PURE__*/(0, _jsxRuntime.jsx)(
|
|
538
|
+
children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_Autocomplete.default, _objectSpread(_objectSpread({
|
|
533
539
|
disablePortal: true,
|
|
534
540
|
freeSolo: true,
|
|
535
541
|
blurOnSelect: true,
|
|
@@ -540,7 +546,7 @@ const NavigationDialog = /*#__PURE__*/(0, _react.forwardRef)(function Navigation
|
|
|
540
546
|
options: autocompleteOptions,
|
|
541
547
|
renderInput: params => {
|
|
542
548
|
var _errors$link, _errors$link2;
|
|
543
|
-
return /*#__PURE__*/(0, _jsxRuntime.jsx)(
|
|
549
|
+
return /*#__PURE__*/(0, _jsxRuntime.jsx)(_TextField.default, _objectSpread(_objectSpread({}, params), {}, {
|
|
544
550
|
placeholder: t('navigation.form.linkPlaceholder'),
|
|
545
551
|
label: t('navigation.form.link'),
|
|
546
552
|
error: !!(errors !== null && errors !== void 0 && (_errors$link = errors.link) !== null && _errors$link !== void 0 && _errors$link.message),
|
|
@@ -548,7 +554,7 @@ const NavigationDialog = /*#__PURE__*/(0, _react.forwardRef)(function Navigation
|
|
|
548
554
|
// FIXME: 添加了 startAdornment 后,autocomplete 选项无法显示,之后换成 antd 的 autocomplete 可以解决这个问题
|
|
549
555
|
,
|
|
550
556
|
InputProps: {
|
|
551
|
-
startAdornment: linkPrefix ? /*#__PURE__*/(0, _jsxRuntime.jsx)(
|
|
557
|
+
startAdornment: linkPrefix ? /*#__PURE__*/(0, _jsxRuntime.jsx)(_InputAdornment.default, {
|
|
552
558
|
position: "start",
|
|
553
559
|
sx: {
|
|
554
560
|
textDecoration: (0, _isAbsoluteUrl.default)(watchLink || '') ? 'line-through' : ''
|
|
@@ -558,10 +564,10 @@ const NavigationDialog = /*#__PURE__*/(0, _react.forwardRef)(function Navigation
|
|
|
558
564
|
}
|
|
559
565
|
}));
|
|
560
566
|
},
|
|
561
|
-
renderOption: (props, option) => /*#__PURE__*/(0, _jsxRuntime.jsxs)(
|
|
567
|
+
renderOption: (props, option) => /*#__PURE__*/(0, _jsxRuntime.jsxs)(_Box.default, _objectSpread(_objectSpread({
|
|
562
568
|
component: "li"
|
|
563
569
|
}, props), {}, {
|
|
564
|
-
children: [option.label, /*#__PURE__*/(0, _jsxRuntime.jsx)(
|
|
570
|
+
children: [option.label, /*#__PURE__*/(0, _jsxRuntime.jsx)(_Typography.default, {
|
|
565
571
|
marginLeft: 1,
|
|
566
572
|
component: "span",
|
|
567
573
|
variant: "body2",
|
|
@@ -9,7 +9,9 @@ var _Header = _interopRequireDefault(require("@blocklet/ui-react/lib/Header"));
|
|
|
9
9
|
var _Footer = _interopRequireDefault(require("@blocklet/ui-react/lib/Footer"));
|
|
10
10
|
var _Dashboard = _interopRequireDefault(require("@blocklet/ui-react/lib/Dashboard"));
|
|
11
11
|
var _linkBlocker = _interopRequireDefault(require("@blocklet/ui-react/lib/common/link-blocker"));
|
|
12
|
-
var
|
|
12
|
+
var _Box = _interopRequireDefault(require("@mui/material/Box"));
|
|
13
|
+
var _Grid = _interopRequireDefault(require("@mui/material/Grid"));
|
|
14
|
+
var _Skeleton = _interopRequireDefault(require("@mui/material/Skeleton"));
|
|
13
15
|
var _styled = _interopRequireDefault(require("@emotion/styled"));
|
|
14
16
|
var _blocklet = require("../../../contexts/blocklet");
|
|
15
17
|
var _useAppLogo = _interopRequireDefault(require("../../../hooks/use-app-logo"));
|
|
@@ -39,11 +41,11 @@ function NavigationPreview(_ref) {
|
|
|
39
41
|
navigation
|
|
40
42
|
};
|
|
41
43
|
return /*#__PURE__*/(0, _jsxRuntime.jsx)(_linkBlocker.default, {
|
|
42
|
-
children: /*#__PURE__*/(0, _jsxRuntime.jsxs)(
|
|
44
|
+
children: /*#__PURE__*/(0, _jsxRuntime.jsxs)(_Box.default, {
|
|
43
45
|
className: className,
|
|
44
46
|
children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_Header.default, {
|
|
45
47
|
meta: blockletInfo
|
|
46
|
-
}), /*#__PURE__*/(0, _jsxRuntime.jsx)(
|
|
48
|
+
}), /*#__PURE__*/(0, _jsxRuntime.jsx)(_Box.default, {
|
|
47
49
|
children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_Dashboard.default, {
|
|
48
50
|
meta: blockletInfo,
|
|
49
51
|
invalidPathFallback: () => {},
|
|
@@ -52,28 +54,28 @@ function NavigationPreview(_ref) {
|
|
|
52
54
|
display: 'none'
|
|
53
55
|
}
|
|
54
56
|
},
|
|
55
|
-
children: /*#__PURE__*/(0, _jsxRuntime.jsx)(
|
|
57
|
+
children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_Grid.default, {
|
|
56
58
|
container: true,
|
|
57
59
|
spacing: 2,
|
|
58
60
|
children: new Array(6).fill().map((item, index) => {
|
|
59
61
|
return (
|
|
60
62
|
/*#__PURE__*/
|
|
61
63
|
// eslint-disable-next-line react/no-array-index-key
|
|
62
|
-
(0, _jsxRuntime.jsxs)(
|
|
64
|
+
(0, _jsxRuntime.jsxs)(_Grid.default, {
|
|
63
65
|
item: true,
|
|
64
66
|
xs: 4,
|
|
65
|
-
children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(
|
|
67
|
+
children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_Skeleton.default, {
|
|
66
68
|
animation: false,
|
|
67
69
|
variant: "rectangular",
|
|
68
70
|
width: "100%",
|
|
69
71
|
height: 120
|
|
70
|
-
}), /*#__PURE__*/(0, _jsxRuntime.jsxs)(
|
|
72
|
+
}), /*#__PURE__*/(0, _jsxRuntime.jsxs)(_Box.default, {
|
|
71
73
|
sx: {
|
|
72
74
|
pt: 0.5
|
|
73
75
|
},
|
|
74
|
-
children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(
|
|
76
|
+
children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_Skeleton.default, {
|
|
75
77
|
animation: false
|
|
76
|
-
}), /*#__PURE__*/(0, _jsxRuntime.jsx)(
|
|
78
|
+
}), /*#__PURE__*/(0, _jsxRuntime.jsx)(_Skeleton.default, {
|
|
77
79
|
width: "60%",
|
|
78
80
|
animation: false
|
|
79
81
|
})]
|
|
@@ -5,7 +5,16 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
5
5
|
});
|
|
6
6
|
exports.default = void 0;
|
|
7
7
|
var _propTypes = _interopRequireDefault(require("prop-types"));
|
|
8
|
-
var
|
|
8
|
+
var _Box = _interopRequireDefault(require("@mui/material/Box"));
|
|
9
|
+
var _Chip = _interopRequireDefault(require("@mui/material/Chip"));
|
|
10
|
+
var _FormControl = _interopRequireDefault(require("@mui/material/FormControl"));
|
|
11
|
+
var _FormHelperText = _interopRequireDefault(require("@mui/material/FormHelperText"));
|
|
12
|
+
var _InputLabel = _interopRequireDefault(require("@mui/material/InputLabel"));
|
|
13
|
+
var _ListItemText = _interopRequireDefault(require("@mui/material/ListItemText"));
|
|
14
|
+
var _MenuItem = _interopRequireDefault(require("@mui/material/MenuItem"));
|
|
15
|
+
var _OutlinedInput = _interopRequireDefault(require("@mui/material/OutlinedInput"));
|
|
16
|
+
var _Select = _interopRequireDefault(require("@mui/material/Select"));
|
|
17
|
+
var _Typography = _interopRequireDefault(require("@mui/material/Typography"));
|
|
9
18
|
var _jsxRuntime = require("react/jsx-runtime");
|
|
10
19
|
const _excluded = ["fullWidth", "multiple", "required", "label", "placeholer", "options", "helperText", "error", "margin"];
|
|
11
20
|
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
@@ -31,15 +40,15 @@ function SimpleSelect(_ref) {
|
|
|
31
40
|
rest = _objectWithoutProperties(_ref, _excluded);
|
|
32
41
|
const defaultOption = options.find(item => item.value === rest.value);
|
|
33
42
|
const defaultValue = defaultOption === null || defaultOption === void 0 ? void 0 : defaultOption.title;
|
|
34
|
-
return /*#__PURE__*/(0, _jsxRuntime.jsxs)(
|
|
43
|
+
return /*#__PURE__*/(0, _jsxRuntime.jsxs)(_FormControl.default, {
|
|
35
44
|
margin: margin,
|
|
36
45
|
fullWidth: fullWidth,
|
|
37
46
|
error: error,
|
|
38
|
-
children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(
|
|
47
|
+
children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_InputLabel.default, {
|
|
39
48
|
children: "".concat(label).concat(required ? '*' : '')
|
|
40
|
-
}), /*#__PURE__*/(0, _jsxRuntime.jsxs)(
|
|
49
|
+
}), /*#__PURE__*/(0, _jsxRuntime.jsxs)(_Select.default, _objectSpread(_objectSpread({
|
|
41
50
|
multiple: multiple,
|
|
42
|
-
input: /*#__PURE__*/(0, _jsxRuntime.jsx)(
|
|
51
|
+
input: /*#__PURE__*/(0, _jsxRuntime.jsx)(_OutlinedInput.default, {
|
|
43
52
|
defaultValue: defaultValue,
|
|
44
53
|
sx: {
|
|
45
54
|
flex: 1
|
|
@@ -52,7 +61,7 @@ function SimpleSelect(_ref) {
|
|
|
52
61
|
}),
|
|
53
62
|
renderValue: selected => {
|
|
54
63
|
if (multiple) {
|
|
55
|
-
return /*#__PURE__*/(0, _jsxRuntime.jsx)(
|
|
64
|
+
return /*#__PURE__*/(0, _jsxRuntime.jsx)(_Box.default, {
|
|
56
65
|
sx: {
|
|
57
66
|
display: 'flex',
|
|
58
67
|
flexWrap: 'wrap',
|
|
@@ -60,7 +69,7 @@ function SimpleSelect(_ref) {
|
|
|
60
69
|
},
|
|
61
70
|
children: selected.map(value => {
|
|
62
71
|
const option = options.find(item => item.value === value);
|
|
63
|
-
return option && option.title && /*#__PURE__*/(0, _jsxRuntime.jsx)(
|
|
72
|
+
return option && option.title && /*#__PURE__*/(0, _jsxRuntime.jsx)(_Chip.default, {
|
|
64
73
|
size: "small",
|
|
65
74
|
label: option.title
|
|
66
75
|
}, value);
|
|
@@ -68,11 +77,11 @@ function SimpleSelect(_ref) {
|
|
|
68
77
|
});
|
|
69
78
|
}
|
|
70
79
|
const option = options.find(item => item.value === selected);
|
|
71
|
-
return option && option.title && /*#__PURE__*/(0, _jsxRuntime.jsxs)(
|
|
72
|
-
children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(
|
|
80
|
+
return option && option.title && /*#__PURE__*/(0, _jsxRuntime.jsxs)(_Box.default, {
|
|
81
|
+
children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_Typography.default, {
|
|
73
82
|
component: "span",
|
|
74
83
|
children: option.title
|
|
75
|
-
}), /*#__PURE__*/(0, _jsxRuntime.jsx)(
|
|
84
|
+
}), /*#__PURE__*/(0, _jsxRuntime.jsx)(_Typography.default, {
|
|
76
85
|
marginLeft: 1,
|
|
77
86
|
component: "span",
|
|
78
87
|
variant: "body2",
|
|
@@ -82,25 +91,25 @@ function SimpleSelect(_ref) {
|
|
|
82
91
|
});
|
|
83
92
|
}
|
|
84
93
|
}, rest), {}, {
|
|
85
|
-
children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(
|
|
94
|
+
children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_MenuItem.default, {
|
|
86
95
|
disabled: true,
|
|
87
96
|
children: /*#__PURE__*/(0, _jsxRuntime.jsx)("em", {
|
|
88
97
|
children: placeholer
|
|
89
98
|
})
|
|
90
|
-
}), !multiple && /*#__PURE__*/(0, _jsxRuntime.jsx)(
|
|
99
|
+
}), !multiple && /*#__PURE__*/(0, _jsxRuntime.jsx)(_MenuItem.default, {
|
|
91
100
|
value: "",
|
|
92
101
|
children: "None"
|
|
93
|
-
}), options.map(option => option && option.value && /*#__PURE__*/(0, _jsxRuntime.jsxs)(
|
|
102
|
+
}), options.map(option => option && option.value && /*#__PURE__*/(0, _jsxRuntime.jsxs)(_MenuItem.default, {
|
|
94
103
|
value: option.value,
|
|
95
|
-
children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(
|
|
104
|
+
children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_ListItemText.default, {
|
|
96
105
|
children: option.title
|
|
97
|
-
}), option.description && /*#__PURE__*/(0, _jsxRuntime.jsx)(
|
|
106
|
+
}), option.description && /*#__PURE__*/(0, _jsxRuntime.jsx)(_Typography.default, {
|
|
98
107
|
variant: "body2",
|
|
99
108
|
color: "text.secondary",
|
|
100
109
|
children: option.description
|
|
101
110
|
})]
|
|
102
111
|
}, option.value))]
|
|
103
|
-
})), /*#__PURE__*/(0, _jsxRuntime.jsx)(
|
|
112
|
+
})), /*#__PURE__*/(0, _jsxRuntime.jsx)(_FormHelperText.default, {
|
|
104
113
|
children: helperText
|
|
105
114
|
})]
|
|
106
115
|
});
|
|
@@ -12,7 +12,8 @@ var _react2 = require("@iconify/react");
|
|
|
12
12
|
var _isObject = _interopRequireDefault(require("lodash/isObject"));
|
|
13
13
|
var _isEqual = _interopRequireDefault(require("lodash/isEqual"));
|
|
14
14
|
var _context = require("@arcblock/ux/lib/Locale/context");
|
|
15
|
-
var
|
|
15
|
+
var _Box = _interopRequireDefault(require("@mui/material/Box"));
|
|
16
|
+
var _Typography = _interopRequireDefault(require("@mui/material/Typography"));
|
|
16
17
|
var _reactDndHtml5Backend = require("react-dnd-html5-backend");
|
|
17
18
|
var _reactDnd = require("react-dnd");
|
|
18
19
|
var _jsxRuntime = require("react/jsx-runtime");
|
|
@@ -56,14 +57,14 @@ function TreeTitle(_ref2) {
|
|
|
56
57
|
if (! /*#__PURE__*/(0, _react.isValidElement)(subtitle) && (0, _isObject.default)(subtitle)) {
|
|
57
58
|
subtitleShow = subtitle[locale];
|
|
58
59
|
}
|
|
59
|
-
return /*#__PURE__*/(0, _jsxRuntime.jsxs)(
|
|
60
|
+
return /*#__PURE__*/(0, _jsxRuntime.jsxs)(_Box.default, {
|
|
60
61
|
display: "flex",
|
|
61
62
|
alignItems: "center",
|
|
62
|
-
children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(
|
|
63
|
+
children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_Typography.default, {
|
|
63
64
|
variant: "subtitle1",
|
|
64
65
|
fontSize: 16,
|
|
65
66
|
children: titleShow
|
|
66
|
-
}), subtitle && /*#__PURE__*/(0, _jsxRuntime.jsx)(
|
|
67
|
+
}), subtitle && /*#__PURE__*/(0, _jsxRuntime.jsx)(_Typography.default, {
|
|
67
68
|
variant: "body2",
|
|
68
69
|
color: "gray",
|
|
69
70
|
ml: 1.5,
|
|
@@ -5,8 +5,17 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
5
5
|
});
|
|
6
6
|
exports.default = void 0;
|
|
7
7
|
var _react = require("react");
|
|
8
|
-
var
|
|
9
|
-
var
|
|
8
|
+
var _Box = _interopRequireDefault(require("@mui/material/Box"));
|
|
9
|
+
var _Button = _interopRequireDefault(require("@mui/material/Button"));
|
|
10
|
+
var _ButtonGroup = _interopRequireDefault(require("@mui/material/ButtonGroup"));
|
|
11
|
+
var _FormControl = _interopRequireDefault(require("@mui/material/FormControl"));
|
|
12
|
+
var _InputLabel = _interopRequireDefault(require("@mui/material/InputLabel"));
|
|
13
|
+
var _MenuItem = _interopRequireDefault(require("@mui/material/MenuItem"));
|
|
14
|
+
var _Paper = _interopRequireDefault(require("@mui/material/Paper"));
|
|
15
|
+
var _Select = _interopRequireDefault(require("@mui/material/Select"));
|
|
16
|
+
var _Toolbar = _interopRequireDefault(require("@mui/material/Toolbar"));
|
|
17
|
+
var _Typography = _interopRequireDefault(require("@mui/material/Typography"));
|
|
18
|
+
var _LoadingButton = _interopRequireDefault(require("@mui/lab/LoadingButton"));
|
|
10
19
|
var _react2 = require("@iconify/react");
|
|
11
20
|
var _notistack = require("notistack");
|
|
12
21
|
var _ahooks = require("ahooks");
|
|
@@ -113,11 +122,11 @@ function ConfigNavigation() {
|
|
|
113
122
|
variant: 'success'
|
|
114
123
|
});
|
|
115
124
|
} catch (e) {
|
|
116
|
-
enqueueSnackbar( /*#__PURE__*/(0, _jsxRuntime.jsxs)(
|
|
117
|
-
children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(
|
|
125
|
+
enqueueSnackbar( /*#__PURE__*/(0, _jsxRuntime.jsxs)(_Box.default, {
|
|
126
|
+
children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_Typography.default, {
|
|
118
127
|
variant: "subtitle2",
|
|
119
128
|
children: t('navigation.actionFailed')
|
|
120
|
-
}), /*#__PURE__*/(0, _jsxRuntime.jsx)(
|
|
129
|
+
}), /*#__PURE__*/(0, _jsxRuntime.jsx)(_Typography.default, {
|
|
121
130
|
variant: "body1",
|
|
122
131
|
children: (0, _util.formatError)(e) || e.error
|
|
123
132
|
})]
|
|
@@ -136,11 +145,11 @@ function ConfigNavigation() {
|
|
|
136
145
|
variant: 'success'
|
|
137
146
|
});
|
|
138
147
|
} catch (e) {
|
|
139
|
-
enqueueSnackbar( /*#__PURE__*/(0, _jsxRuntime.jsxs)(
|
|
140
|
-
children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(
|
|
148
|
+
enqueueSnackbar( /*#__PURE__*/(0, _jsxRuntime.jsxs)(_Box.default, {
|
|
149
|
+
children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_Typography.default, {
|
|
141
150
|
variant: "subtitle2",
|
|
142
151
|
children: t('navigation.actionFailed')
|
|
143
|
-
}), /*#__PURE__*/(0, _jsxRuntime.jsx)(
|
|
152
|
+
}), /*#__PURE__*/(0, _jsxRuntime.jsx)(_Typography.default, {
|
|
144
153
|
variant: "body1",
|
|
145
154
|
children: (0, _util.formatError)(e) || e.error
|
|
146
155
|
})]
|
|
@@ -163,32 +172,32 @@ function ConfigNavigation() {
|
|
|
163
172
|
};
|
|
164
173
|
}, [blocklet.appDid, pageState.mockRole]);
|
|
165
174
|
return /*#__PURE__*/(0, _jsxRuntime.jsxs)(_jsxRuntime.Fragment, {
|
|
166
|
-
children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(
|
|
175
|
+
children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_ButtonGroup.default, {
|
|
167
176
|
variant: "outlined",
|
|
168
177
|
children: Object.keys(navigationTypeMap).map(key => {
|
|
169
|
-
return /*#__PURE__*/(0, _jsxRuntime.jsxs)(
|
|
178
|
+
return /*#__PURE__*/(0, _jsxRuntime.jsxs)(_Button.default, {
|
|
170
179
|
variant: navigationState.activeSection === key ? 'contained' : undefined,
|
|
171
180
|
onClick: () => updateActiveSection(key),
|
|
172
181
|
children: [navigationTypeMap[key], " (".concat(getNavigation(key).length, ")")]
|
|
173
182
|
}, key);
|
|
174
183
|
})
|
|
175
|
-
}), /*#__PURE__*/(0, _jsxRuntime.jsxs)(
|
|
184
|
+
}), /*#__PURE__*/(0, _jsxRuntime.jsxs)(_Toolbar.default, {
|
|
176
185
|
variant: "dense",
|
|
177
186
|
sx: {
|
|
178
187
|
paddingLeft: '0px !important',
|
|
179
188
|
paddingRight: '0px !important',
|
|
180
189
|
mt: 2
|
|
181
190
|
},
|
|
182
|
-
children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(
|
|
191
|
+
children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_Typography.default, {
|
|
183
192
|
variant: "h6",
|
|
184
193
|
component: "div",
|
|
185
194
|
sx: {
|
|
186
195
|
flexGrow: 1
|
|
187
196
|
},
|
|
188
197
|
children: "Config"
|
|
189
|
-
}), /*#__PURE__*/(0, _jsxRuntime.jsx)(
|
|
198
|
+
}), /*#__PURE__*/(0, _jsxRuntime.jsx)(_ButtonGroup.default, {
|
|
190
199
|
variant: "outlined",
|
|
191
|
-
children: /*#__PURE__*/(0, _jsxRuntime.jsx)(
|
|
200
|
+
children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_LoadingButton.default, {
|
|
192
201
|
size: "small",
|
|
193
202
|
variant: "outlined",
|
|
194
203
|
color: "error",
|
|
@@ -205,9 +214,9 @@ function ConfigNavigation() {
|
|
|
205
214
|
},
|
|
206
215
|
children: "\u91CD\u7F6E"
|
|
207
216
|
})
|
|
208
|
-
}), /*#__PURE__*/(0, _jsxRuntime.jsxs)(
|
|
217
|
+
}), /*#__PURE__*/(0, _jsxRuntime.jsxs)(_ButtonGroup.default, {
|
|
209
218
|
variant: "outlined",
|
|
210
|
-
children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(
|
|
219
|
+
children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_Button.default, {
|
|
211
220
|
size: "small",
|
|
212
221
|
variant: "outlined",
|
|
213
222
|
startIcon: /*#__PURE__*/(0, _jsxRuntime.jsx)(_react2.Icon, {
|
|
@@ -215,7 +224,7 @@ function ConfigNavigation() {
|
|
|
215
224
|
}),
|
|
216
225
|
onClick: () => handleAddNavigation(),
|
|
217
226
|
children: "\u65B0\u5EFA"
|
|
218
|
-
}), /*#__PURE__*/(0, _jsxRuntime.jsx)(
|
|
227
|
+
}), /*#__PURE__*/(0, _jsxRuntime.jsx)(_LoadingButton.default, {
|
|
219
228
|
size: "small",
|
|
220
229
|
variant: "contained",
|
|
221
230
|
startIcon: /*#__PURE__*/(0, _jsxRuntime.jsx)(_react2.Icon, {
|
|
@@ -227,14 +236,14 @@ function ConfigNavigation() {
|
|
|
227
236
|
children: "\u4FDD\u5B58"
|
|
228
237
|
})]
|
|
229
238
|
})]
|
|
230
|
-
}), /*#__PURE__*/(0, _jsxRuntime.jsx)(
|
|
239
|
+
}), /*#__PURE__*/(0, _jsxRuntime.jsx)(_Paper.default, {
|
|
231
240
|
variant: "outlined",
|
|
232
241
|
sx: {
|
|
233
242
|
display: 'flex',
|
|
234
243
|
height: 280,
|
|
235
244
|
overflow: 'hidden'
|
|
236
245
|
},
|
|
237
|
-
children: /*#__PURE__*/(0, _jsxRuntime.jsx)(
|
|
246
|
+
children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_Paper.default, {
|
|
238
247
|
elevation: 0,
|
|
239
248
|
sx: {
|
|
240
249
|
flex: 1,
|
|
@@ -277,41 +286,41 @@ function ConfigNavigation() {
|
|
|
277
286
|
}
|
|
278
287
|
})
|
|
279
288
|
})
|
|
280
|
-
}), /*#__PURE__*/(0, _jsxRuntime.jsxs)(
|
|
289
|
+
}), /*#__PURE__*/(0, _jsxRuntime.jsxs)(_Toolbar.default, {
|
|
281
290
|
variant: "dense",
|
|
282
291
|
sx: {
|
|
283
292
|
paddingLeft: '0px !important',
|
|
284
293
|
paddingRight: '0px !important',
|
|
285
294
|
mt: 3
|
|
286
295
|
},
|
|
287
|
-
children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(
|
|
296
|
+
children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_Typography.default, {
|
|
288
297
|
variant: "h6",
|
|
289
298
|
component: "div",
|
|
290
299
|
sx: {
|
|
291
300
|
flexGrow: 1
|
|
292
301
|
},
|
|
293
302
|
children: "Preview"
|
|
294
|
-
}), /*#__PURE__*/(0, _jsxRuntime.jsxs)(
|
|
303
|
+
}), /*#__PURE__*/(0, _jsxRuntime.jsxs)(_FormControl.default, {
|
|
295
304
|
sx: {
|
|
296
305
|
m: 1,
|
|
297
306
|
minWidth: 120
|
|
298
307
|
},
|
|
299
308
|
size: "small",
|
|
300
|
-
children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(
|
|
309
|
+
children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_InputLabel.default, {
|
|
301
310
|
children: "Role"
|
|
302
|
-
}), /*#__PURE__*/(0, _jsxRuntime.jsx)(
|
|
311
|
+
}), /*#__PURE__*/(0, _jsxRuntime.jsx)(_Select.default, {
|
|
303
312
|
value: pageState.mockRole,
|
|
304
313
|
label: "Role",
|
|
305
314
|
onChange: e => {
|
|
306
315
|
pageState.mockRole = e.target.value;
|
|
307
316
|
},
|
|
308
|
-
children: roles.map(item => /*#__PURE__*/(0, _jsxRuntime.jsx)(
|
|
317
|
+
children: roles.map(item => /*#__PURE__*/(0, _jsxRuntime.jsx)(_MenuItem.default, {
|
|
309
318
|
value: item.name,
|
|
310
319
|
children: item.title
|
|
311
320
|
}, item.name))
|
|
312
321
|
})]
|
|
313
322
|
})]
|
|
314
|
-
}), /*#__PURE__*/(0, _jsxRuntime.jsx)(
|
|
323
|
+
}), /*#__PURE__*/(0, _jsxRuntime.jsx)(_Paper.default, {
|
|
315
324
|
variant: "outlined",
|
|
316
325
|
children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_Session.SessionContext.Provider, {
|
|
317
326
|
value: sessionCtxValue,
|
|
@@ -0,0 +1,162 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.default = void 0;
|
|
7
|
+
var _material = require("@mui/material");
|
|
8
|
+
var _pick = _interopRequireDefault(require("lodash/pick"));
|
|
9
|
+
var _ahooks = require("ahooks");
|
|
10
|
+
var _reactHookForm = require("react-hook-form");
|
|
11
|
+
var _context = require("@arcblock/ux/lib/Locale/context");
|
|
12
|
+
var _node = require("../../contexts/node");
|
|
13
|
+
var _blocklet = require("../../contexts/blocklet");
|
|
14
|
+
var _toast = _interopRequireDefault(require("../../toast"));
|
|
15
|
+
var _jsxRuntime = require("react/jsx-runtime");
|
|
16
|
+
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
17
|
+
function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
|
|
18
|
+
function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
|
|
19
|
+
function _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
|
|
20
|
+
function _toPropertyKey(arg) { var key = _toPrimitive(arg, "string"); return typeof key === "symbol" ? key : String(key); }
|
|
21
|
+
function _toPrimitive(input, hint) { if (typeof input !== "object" || input === null) return input; var prim = input[Symbol.toPrimitive]; if (prim !== undefined) { var res = prim.call(input, hint || "default"); if (typeof res !== "object") return res; throw new TypeError("@@toPrimitive must return a primitive value."); } return (hint === "string" ? String : Number)(input); }
|
|
22
|
+
function OAuthAuth0() {
|
|
23
|
+
var _blocklet$meta, _blocklet$settings, _blocklet$settings$oa;
|
|
24
|
+
const {
|
|
25
|
+
api
|
|
26
|
+
} = (0, _node.useNodeContext)();
|
|
27
|
+
const {
|
|
28
|
+
blocklet
|
|
29
|
+
} = (0, _blocklet.useBlockletContext)();
|
|
30
|
+
const {
|
|
31
|
+
t
|
|
32
|
+
} = (0, _context.useLocaleContext)();
|
|
33
|
+
// TODO: @zhanghan 将来需要换成 permanent did
|
|
34
|
+
const did = blocklet === null || blocklet === void 0 ? void 0 : (_blocklet$meta = blocklet.meta) === null || _blocklet$meta === void 0 ? void 0 : _blocklet$meta.did;
|
|
35
|
+
const auth0 = Object.assign({
|
|
36
|
+
enabled: false,
|
|
37
|
+
domain: '',
|
|
38
|
+
clientId: ''
|
|
39
|
+
}, (blocklet === null || blocklet === void 0 ? void 0 : (_blocklet$settings = blocklet.settings) === null || _blocklet$settings === void 0 ? void 0 : (_blocklet$settings$oa = _blocklet$settings.oauth) === null || _blocklet$settings$oa === void 0 ? void 0 : _blocklet$settings$oa.auth0) || {});
|
|
40
|
+
const {
|
|
41
|
+
handleSubmit,
|
|
42
|
+
control,
|
|
43
|
+
formState,
|
|
44
|
+
watch,
|
|
45
|
+
reset
|
|
46
|
+
} = (0, _reactHookForm.useForm)({
|
|
47
|
+
defaultValues: (0, _pick.default)(auth0, ['domain', 'clientId', 'enabled'])
|
|
48
|
+
});
|
|
49
|
+
const enabled = watch('enabled');
|
|
50
|
+
const onSubmit = (0, _ahooks.useMemoizedFn)(async data => {
|
|
51
|
+
try {
|
|
52
|
+
var _blockletChanged$sett, _blockletChanged$sett2;
|
|
53
|
+
const {
|
|
54
|
+
blocklet: blockletChanged
|
|
55
|
+
} = await api.configOAuth({
|
|
56
|
+
input: {
|
|
57
|
+
did,
|
|
58
|
+
oauth: JSON.stringify({
|
|
59
|
+
auth0: data
|
|
60
|
+
})
|
|
61
|
+
}
|
|
62
|
+
});
|
|
63
|
+
const defaultValues = Object.assign({
|
|
64
|
+
enabled: false,
|
|
65
|
+
domain: '',
|
|
66
|
+
clientId: ''
|
|
67
|
+
}, (blockletChanged === null || blockletChanged === void 0 ? void 0 : (_blockletChanged$sett = blockletChanged.settings) === null || _blockletChanged$sett === void 0 ? void 0 : (_blockletChanged$sett2 = _blockletChanged$sett.oauth) === null || _blockletChanged$sett2 === void 0 ? void 0 : _blockletChanged$sett2.auth0) || {});
|
|
68
|
+
// 将当前表单的默认值重置为新的数据,这样能够修正页面的 isDirty 数据
|
|
69
|
+
reset(defaultValues);
|
|
70
|
+
_toast.default.success(t('oauth.saveSuccess'));
|
|
71
|
+
} catch (err) {
|
|
72
|
+
_toast.default.success(err.message || t('oauth.saveFailed'));
|
|
73
|
+
}
|
|
74
|
+
});
|
|
75
|
+
const validateDomain = (0, _ahooks.useMemoizedFn)(val => {
|
|
76
|
+
if (!(val !== null && val !== void 0 && val.trim())) {
|
|
77
|
+
return t('oauth.auth0.domainDescribe');
|
|
78
|
+
}
|
|
79
|
+
return true;
|
|
80
|
+
});
|
|
81
|
+
const validateClientId = (0, _ahooks.useMemoizedFn)(val => {
|
|
82
|
+
if (!(val !== null && val !== void 0 && val.trim())) {
|
|
83
|
+
return t('oauth.auth0.clientIdDescribe');
|
|
84
|
+
}
|
|
85
|
+
return true;
|
|
86
|
+
});
|
|
87
|
+
const noop = (0, _ahooks.useMemoizedFn)(() => true);
|
|
88
|
+
return /*#__PURE__*/(0, _jsxRuntime.jsx)(_material.Box, {
|
|
89
|
+
children: /*#__PURE__*/(0, _jsxRuntime.jsxs)("form", {
|
|
90
|
+
onSubmit: handleSubmit(onSubmit),
|
|
91
|
+
disabled: true,
|
|
92
|
+
children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_reactHookForm.Controller, {
|
|
93
|
+
name: "enabled",
|
|
94
|
+
control: control,
|
|
95
|
+
render: _ref => {
|
|
96
|
+
let {
|
|
97
|
+
field
|
|
98
|
+
} = _ref;
|
|
99
|
+
return /*#__PURE__*/(0, _jsxRuntime.jsx)(_material.FormControlLabel, {
|
|
100
|
+
control: /*#__PURE__*/(0, _jsxRuntime.jsx)(_material.Switch, _objectSpread({
|
|
101
|
+
checked: field.value
|
|
102
|
+
}, field)),
|
|
103
|
+
label: t('oauth.auth0.enable'),
|
|
104
|
+
sx: {
|
|
105
|
+
marginBottom: '8px'
|
|
106
|
+
}
|
|
107
|
+
});
|
|
108
|
+
}
|
|
109
|
+
}), /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactHookForm.Controller, {
|
|
110
|
+
name: "domain",
|
|
111
|
+
control: control,
|
|
112
|
+
rules: {
|
|
113
|
+
validate: enabled ? validateDomain : noop
|
|
114
|
+
},
|
|
115
|
+
render: _ref2 => {
|
|
116
|
+
var _formState$errors$fie;
|
|
117
|
+
let {
|
|
118
|
+
field
|
|
119
|
+
} = _ref2;
|
|
120
|
+
return /*#__PURE__*/(0, _jsxRuntime.jsx)(_material.FormControl, {
|
|
121
|
+
fullWidth: true,
|
|
122
|
+
children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_material.TextField, _objectSpread(_objectSpread({}, field), {}, {
|
|
123
|
+
label: t('oauth.auth0.domain'),
|
|
124
|
+
error: !!formState.errors[field.name],
|
|
125
|
+
helperText: ((_formState$errors$fie = formState.errors[field.name]) === null || _formState$errors$fie === void 0 ? void 0 : _formState$errors$fie.message) || ' ',
|
|
126
|
+
disabled: !enabled
|
|
127
|
+
}))
|
|
128
|
+
});
|
|
129
|
+
}
|
|
130
|
+
}), /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactHookForm.Controller, {
|
|
131
|
+
name: "clientId",
|
|
132
|
+
control: control,
|
|
133
|
+
rules: {
|
|
134
|
+
validate: enabled ? validateClientId : noop
|
|
135
|
+
},
|
|
136
|
+
render: _ref3 => {
|
|
137
|
+
var _formState$errors$fie2;
|
|
138
|
+
let {
|
|
139
|
+
field
|
|
140
|
+
} = _ref3;
|
|
141
|
+
return /*#__PURE__*/(0, _jsxRuntime.jsx)(_material.FormControl, {
|
|
142
|
+
fullWidth: true,
|
|
143
|
+
children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_material.TextField, _objectSpread(_objectSpread({}, field), {}, {
|
|
144
|
+
error: !!formState.errors[field.name],
|
|
145
|
+
label: t('oauth.auth0.clientId'),
|
|
146
|
+
helperText: ((_formState$errors$fie2 = formState.errors[field.name]) === null || _formState$errors$fie2 === void 0 ? void 0 : _formState$errors$fie2.message) || ' ',
|
|
147
|
+
disabled: !enabled
|
|
148
|
+
}))
|
|
149
|
+
});
|
|
150
|
+
}
|
|
151
|
+
}), /*#__PURE__*/(0, _jsxRuntime.jsx)(_material.Button, {
|
|
152
|
+
type: "submit",
|
|
153
|
+
variant: "contained",
|
|
154
|
+
onSubmit: handleSubmit(onSubmit),
|
|
155
|
+
disabled: !formState.isDirty,
|
|
156
|
+
children: t('oauth.save')
|
|
157
|
+
})]
|
|
158
|
+
})
|
|
159
|
+
});
|
|
160
|
+
}
|
|
161
|
+
var _default = OAuthAuth0;
|
|
162
|
+
exports.default = _default;
|
|
@@ -0,0 +1,49 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.default = void 0;
|
|
7
|
+
var _Tabs = _interopRequireDefault(require("@arcblock/ux/lib/Tabs"));
|
|
8
|
+
var _material = require("@mui/material");
|
|
9
|
+
var _ahooks = require("ahooks");
|
|
10
|
+
var _react = require("react");
|
|
11
|
+
var _auth = _interopRequireDefault(require("./auth0"));
|
|
12
|
+
var _jsxRuntime = require("react/jsx-runtime");
|
|
13
|
+
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
14
|
+
function OAuth() {
|
|
15
|
+
const tabs = [{
|
|
16
|
+
label: /*#__PURE__*/(0, _jsxRuntime.jsx)(_material.Box, {
|
|
17
|
+
textAlign: "center",
|
|
18
|
+
width: "100%",
|
|
19
|
+
children: "Auth0"
|
|
20
|
+
}),
|
|
21
|
+
value: 'auth0'
|
|
22
|
+
}, {
|
|
23
|
+
label: /*#__PURE__*/(0, _jsxRuntime.jsx)(_material.Box, {
|
|
24
|
+
textAlign: "center",
|
|
25
|
+
width: "100%",
|
|
26
|
+
children: "More"
|
|
27
|
+
}),
|
|
28
|
+
value: 'more'
|
|
29
|
+
}];
|
|
30
|
+
const [currentTab, setCurrentTab] = (0, _react.useState)(tabs[0].value);
|
|
31
|
+
const contents = (0, _ahooks.useCreation)(() => ({
|
|
32
|
+
auth0: /*#__PURE__*/(0, _jsxRuntime.jsx)(_auth.default, {}),
|
|
33
|
+
more: /*#__PURE__*/(0, _jsxRuntime.jsx)(_material.Box, {
|
|
34
|
+
children: "TBD"
|
|
35
|
+
})
|
|
36
|
+
}), []);
|
|
37
|
+
return /*#__PURE__*/(0, _jsxRuntime.jsxs)(_material.Box, {
|
|
38
|
+
children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_Tabs.default, {
|
|
39
|
+
tabs: tabs,
|
|
40
|
+
current: currentTab,
|
|
41
|
+
onChange: setCurrentTab
|
|
42
|
+
}), /*#__PURE__*/(0, _jsxRuntime.jsx)(_material.Box, {
|
|
43
|
+
marginTop: "10px",
|
|
44
|
+
children: contents[currentTab]
|
|
45
|
+
})]
|
|
46
|
+
});
|
|
47
|
+
}
|
|
48
|
+
var _default = OAuth;
|
|
49
|
+
exports.default = _default;
|
|
@@ -13,6 +13,7 @@ var _constant = require("@abtnode/constant");
|
|
|
13
13
|
var _material = require("@mui/material");
|
|
14
14
|
var _TuneRounded = _interopRequireDefault(require("@mui/icons-material/TuneRounded"));
|
|
15
15
|
var _Key = _interopRequireDefault(require("@mui/icons-material/Key"));
|
|
16
|
+
var _Login = _interopRequireDefault(require("@mui/icons-material/Login"));
|
|
16
17
|
var _SettingsOutlined = _interopRequireDefault(require("@mui/icons-material/SettingsOutlined"));
|
|
17
18
|
var _ChevronRight = _interopRequireDefault(require("@mui/icons-material/ChevronRight"));
|
|
18
19
|
var _ExpandMore = _interopRequireDefault(require("@mui/icons-material/ExpandMore"));
|
|
@@ -23,6 +24,7 @@ var _bundleAvatar = _interopRequireDefault(require("../bundle-avatar"));
|
|
|
23
24
|
var _configuration = _interopRequireDefault(require("../configuration"));
|
|
24
25
|
var _index = _interopRequireDefault(require("../access/index"));
|
|
25
26
|
var _node = require("../../contexts/node");
|
|
27
|
+
var _oauth = _interopRequireDefault(require("../oauth"));
|
|
26
28
|
var _jsxRuntime = require("react/jsx-runtime");
|
|
27
29
|
var _templateObject;
|
|
28
30
|
const _excluded = ["blocklet", "onUpdate"];
|
|
@@ -124,6 +126,26 @@ function BlockletPreferences(_ref) {
|
|
|
124
126
|
})]
|
|
125
127
|
}, "access"),
|
|
126
128
|
value: 'access'
|
|
129
|
+
}, {
|
|
130
|
+
label: /*#__PURE__*/(0, _jsxRuntime.jsxs)(_material.Box, {
|
|
131
|
+
display: "flex",
|
|
132
|
+
alignItems: "center",
|
|
133
|
+
"data-cy": "configuration-tab-oauth",
|
|
134
|
+
children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_Login.default, {
|
|
135
|
+
sx: {
|
|
136
|
+
fontSize: 24
|
|
137
|
+
}
|
|
138
|
+
}), /*#__PURE__*/(0, _jsxRuntime.jsx)(_material.Box, {
|
|
139
|
+
ml: "16px",
|
|
140
|
+
children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_material.Box, {
|
|
141
|
+
style: {
|
|
142
|
+
color: '#222'
|
|
143
|
+
},
|
|
144
|
+
children: t('common.login')
|
|
145
|
+
})
|
|
146
|
+
})]
|
|
147
|
+
}, "oauth"),
|
|
148
|
+
value: 'oauth'
|
|
127
149
|
}, {
|
|
128
150
|
label: /*#__PURE__*/(0, _jsxRuntime.jsxs)(_material.Box, {
|
|
129
151
|
display: "flex",
|
|
@@ -173,6 +195,8 @@ function BlockletPreferences(_ref) {
|
|
|
173
195
|
});
|
|
174
196
|
} else if (current === 'access') {
|
|
175
197
|
content = /*#__PURE__*/(0, _jsxRuntime.jsx)(_index.default, {});
|
|
198
|
+
} else if (current === 'oauth') {
|
|
199
|
+
content = /*#__PURE__*/(0, _jsxRuntime.jsx)(_oauth.default, {});
|
|
176
200
|
} else {
|
|
177
201
|
// eslint-disable-next-line no-nested-ternary
|
|
178
202
|
const pathPrefix = inService ? _constant.WELLKNOWN_SERVICE_PATH_PREFIX : process.env.NODE_ENV === 'production' ? info.routing.adminPath : '';
|
package/lib/blocklet/storage.js
CHANGED
|
@@ -83,9 +83,10 @@ function Storage() {
|
|
|
83
83
|
return;
|
|
84
84
|
}
|
|
85
85
|
setIsLoading(true);
|
|
86
|
-
await api.
|
|
86
|
+
await api.backupBlocklet({
|
|
87
87
|
input: {
|
|
88
|
-
appDid: blocklet.appDid
|
|
88
|
+
appDid: blocklet.appDid,
|
|
89
|
+
to: 'spaces'
|
|
89
90
|
}
|
|
90
91
|
});
|
|
91
92
|
_toast.default.success(t('storage.spaces.backupSuccessfully'));
|
|
@@ -32,9 +32,17 @@ function InvitationReceive(_ref) {
|
|
|
32
32
|
const {
|
|
33
33
|
getPassportId
|
|
34
34
|
} = (0, _usePassportId.default)();
|
|
35
|
+
let componentId;
|
|
36
|
+
if (typeof window !== 'undefined') {
|
|
37
|
+
var _window, _window$blocklet;
|
|
38
|
+
componentId = (_window = window) === null || _window === void 0 ? void 0 : (_window$blocklet = _window.blocklet) === null || _window$blocklet === void 0 ? void 0 : _window$blocklet.componentId;
|
|
39
|
+
}
|
|
35
40
|
const extraParams = {
|
|
36
41
|
passportId: getPassportId(),
|
|
37
|
-
inviteId: invitation.inviteId
|
|
42
|
+
inviteId: invitation.inviteId,
|
|
43
|
+
// 生成 passport 信息需要 baseUrl 字段
|
|
44
|
+
baseUrl: window.location.origin,
|
|
45
|
+
componentId
|
|
38
46
|
};
|
|
39
47
|
const onClose = (0, _react.useCallback)(() => {
|
|
40
48
|
setOpen(false);
|
package/lib/locales/en.js
CHANGED
|
@@ -290,6 +290,7 @@ module.exports = {
|
|
|
290
290
|
installFromMarket: 'Install New Blocklets',
|
|
291
291
|
installFromUrl: 'Install From Url',
|
|
292
292
|
installFromCreate: 'Create Blocklet',
|
|
293
|
+
installFromDiskBackup: 'Restore from this server',
|
|
293
294
|
installedAt: 'Installed At',
|
|
294
295
|
internal: 'Internal',
|
|
295
296
|
startedAt: 'Started At',
|
|
@@ -319,14 +320,13 @@ module.exports = {
|
|
|
319
320
|
stopDescription: 'Stopping the blocklet will make its public interfaces unaccessible, which may cause end user failures',
|
|
320
321
|
confirmStop: 'Yes, Stop It',
|
|
321
322
|
cancelDownloadDescription: 'Cancel download {name} ?',
|
|
322
|
-
|
|
323
|
+
removeApplicationDescription: 'Removing the application will erase code and data generated by this application, which is not recoverable if you do not have any backups',
|
|
324
|
+
removeApplicationAfterBackup: 'Backup and delete the application. You can restore the application from this server if you need',
|
|
325
|
+
removeApplicationComplete: 'Delete the application directly',
|
|
323
326
|
removeComponentDescription: 'Removing the component will erase code and data generated by this component, which is not recoverable if you do not have any backups',
|
|
324
|
-
forceRemoveDescription: 'Deleting this Blocklet will delete all data',
|
|
325
|
-
removeKeepData: 'Keep data for this blocklet, only remove code',
|
|
326
327
|
removeComponentKeepData: 'Keep data for this component, only remove code',
|
|
327
|
-
removeComplete: 'Remove both code and data for this blocklet',
|
|
328
|
-
confirmRemove: 'Yes, Remove It',
|
|
329
328
|
removeComponentComplete: 'Remove both code and data for this component',
|
|
329
|
+
confirmRemove: 'Yes, Remove It',
|
|
330
330
|
confirmComponentRemove: 'Yes, Remove It',
|
|
331
331
|
upgradeDescription: 'Upgrading the blocklet will make it temporarily unavailable, are you sure to continue?',
|
|
332
332
|
confirmUpgrade: 'Yes, Upgrade It',
|
|
@@ -921,6 +921,9 @@ module.exports = {
|
|
|
921
921
|
passports: 'Passports',
|
|
922
922
|
lastLogin: 'Last Login',
|
|
923
923
|
lastLoginIp: 'Last Login IP',
|
|
924
|
+
source: 'Register Source',
|
|
925
|
+
source_derived: 'Derived from oauth',
|
|
926
|
+
source_wallet: 'DID Wallet',
|
|
924
927
|
filter: 'Filter by',
|
|
925
928
|
forbidLogin: 'Forbid Login',
|
|
926
929
|
forbidLoginDescription: 'The user will not be able to connect to this application',
|
|
@@ -1243,5 +1246,18 @@ module.exports = {
|
|
|
1243
1246
|
1: 'Last 1 Day',
|
|
1244
1247
|
7: 'Last 1 Week'
|
|
1245
1248
|
}
|
|
1249
|
+
},
|
|
1250
|
+
oauth: {
|
|
1251
|
+
save: 'Save',
|
|
1252
|
+
saveSuccess: 'Save successfully',
|
|
1253
|
+
saveFailed: 'Save failed',
|
|
1254
|
+
issued: 'Issued',
|
|
1255
|
+
auth0: {
|
|
1256
|
+
enable: 'Enable Auth0 login',
|
|
1257
|
+
domain: 'Domain',
|
|
1258
|
+
domainDescription: "Auth0's domain is required",
|
|
1259
|
+
clientId: 'ClientID',
|
|
1260
|
+
clientIdDescribe: "Auth0's clientId is required"
|
|
1261
|
+
}
|
|
1246
1262
|
}
|
|
1247
1263
|
};
|
package/lib/locales/zh.js
CHANGED
|
@@ -296,6 +296,7 @@ module.exports = {
|
|
|
296
296
|
installFromMarket: '从应用商店安装',
|
|
297
297
|
installFromUrl: '通过 URL 安装',
|
|
298
298
|
installFromCreate: '创建基石程序',
|
|
299
|
+
installFromDiskBackup: '从此 Server 还原',
|
|
299
300
|
installedAt: '安装时间',
|
|
300
301
|
internal: '内部',
|
|
301
302
|
startedAt: '启动时间',
|
|
@@ -315,11 +316,10 @@ module.exports = {
|
|
|
315
316
|
stopDescription: '停止该基石程序将会使页面不可以访问,可能会导致使用它的用户出现错误',
|
|
316
317
|
confirmStop: '是的,停止',
|
|
317
318
|
cancelDownloadDescription: '取消下载 {name} ?',
|
|
318
|
-
|
|
319
|
+
removeApplicationDescription: '如果没有备份数据,删除应用将会删除所有数据,包括应用运行时产生的所有数据',
|
|
320
|
+
removeApplicationAfterBackup: '备份和删除该应用。 需要时您可以从此服务器恢复该应用',
|
|
321
|
+
removeApplicationComplete: '直接删除该应用',
|
|
319
322
|
removeComponentDescription: '如果没有备份数据,删除该组件将会删除所有数据,包括组件运行时产生的所有数据',
|
|
320
|
-
forceRemoveDescription: '删除该基石程序将会删除所有数据',
|
|
321
|
-
removeKeepData: '保留该基石程序的数据,只删除基石程序',
|
|
322
|
-
removeComplete: '删除基石程序和数据',
|
|
323
323
|
removeComponentKeepData: '保留该组件的数据,只删除组件',
|
|
324
324
|
removeComponentComplete: '删除组件和数据',
|
|
325
325
|
confirmRemove: '是的, 删除',
|
|
@@ -924,6 +924,9 @@ module.exports = {
|
|
|
924
924
|
passports: '通行证',
|
|
925
925
|
lastLogin: '上次登录',
|
|
926
926
|
lastLoginIp: '上次登陆 IP',
|
|
927
|
+
source: '注册来源',
|
|
928
|
+
source_derived: 'OAuth 账户派生',
|
|
929
|
+
source_wallet: 'DID Wallet',
|
|
927
930
|
filter: '条件筛选',
|
|
928
931
|
forbidLogin: '禁止登录',
|
|
929
932
|
forbidLoginDescription: '该成员将无法登录此应用',
|
|
@@ -1248,5 +1251,18 @@ module.exports = {
|
|
|
1248
1251
|
1: '最近 1 天',
|
|
1249
1252
|
7: '最近 1 周'
|
|
1250
1253
|
}
|
|
1254
|
+
},
|
|
1255
|
+
oauth: {
|
|
1256
|
+
save: '保存',
|
|
1257
|
+
saveSuccess: '保存成功',
|
|
1258
|
+
saveFailed: '保存失败',
|
|
1259
|
+
issued: '颁发',
|
|
1260
|
+
auth0: {
|
|
1261
|
+
enable: '是否开启 Auth0 登录',
|
|
1262
|
+
domain: 'Domain',
|
|
1263
|
+
domainDescription: '请输入 Auth0 的 Domain',
|
|
1264
|
+
clientId: 'ClientID',
|
|
1265
|
+
clientIdDescribe: '请输入 Auth0 的 ClientID'
|
|
1266
|
+
}
|
|
1251
1267
|
}
|
|
1252
1268
|
};
|
|
@@ -272,6 +272,15 @@ function MemberList(_ref2) {
|
|
|
272
272
|
return e || '-';
|
|
273
273
|
}
|
|
274
274
|
}
|
|
275
|
+
}, {
|
|
276
|
+
label: t('team.member.source'),
|
|
277
|
+
name: 'source',
|
|
278
|
+
options: {
|
|
279
|
+
customBodyRender: e => {
|
|
280
|
+
const source = e || _constant.USER_TYPE.WALLET;
|
|
281
|
+
return t("team.member.source_".concat(source)) || '-';
|
|
282
|
+
}
|
|
283
|
+
}
|
|
275
284
|
}, {
|
|
276
285
|
label: t('common.actions'),
|
|
277
286
|
name: '',
|
|
@@ -14,6 +14,7 @@ var _MenuItem = _interopRequireDefault(require("@mui/material/MenuItem"));
|
|
|
14
14
|
var _Select = _interopRequireDefault(require("@mui/material/Select"));
|
|
15
15
|
var _InputLabel = _interopRequireDefault(require("@mui/material/InputLabel"));
|
|
16
16
|
var _FormControl = _interopRequireDefault(require("@mui/material/FormControl"));
|
|
17
|
+
var _constant = require("@abtnode/constant");
|
|
17
18
|
var _context = require("@arcblock/ux/lib/Locale/context");
|
|
18
19
|
var _Button = _interopRequireDefault(require("@arcblock/ux/lib/Button"));
|
|
19
20
|
var _Alert = _interopRequireDefault(require("@arcblock/ux/lib/Alert"));
|
|
@@ -25,6 +26,7 @@ function IssuePassport(_ref) {
|
|
|
25
26
|
let {
|
|
26
27
|
teamDid,
|
|
27
28
|
ownerDid,
|
|
29
|
+
ownerSource,
|
|
28
30
|
roles,
|
|
29
31
|
onCancel,
|
|
30
32
|
onSuccess,
|
|
@@ -92,7 +94,7 @@ function IssuePassport(_ref) {
|
|
|
92
94
|
"data-cy": "issue-passport-create-btn",
|
|
93
95
|
children: [loading && /*#__PURE__*/(0, _jsxRuntime.jsx)(_CircularProgress.default, {
|
|
94
96
|
size: 16
|
|
95
|
-
}), t('team.passport.issuance.create.title')]
|
|
97
|
+
}), ownerSource === _constant.USER_TYPE.DERIVED ? t('oauth.issued') : t('team.passport.issuance.create.title')]
|
|
96
98
|
})]
|
|
97
99
|
}),
|
|
98
100
|
children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_DialogContentText.default, {
|
|
@@ -142,6 +144,7 @@ function IssuePassport(_ref) {
|
|
|
142
144
|
IssuePassport.propTypes = {
|
|
143
145
|
teamDid: _propTypes.default.string.isRequired,
|
|
144
146
|
ownerDid: _propTypes.default.string.isRequired,
|
|
147
|
+
ownerSource: _propTypes.default.oneOf([_constant.USER_TYPE.WALLET, _constant.USER_TYPE.DERIVED, undefined]),
|
|
145
148
|
onCancel: _propTypes.default.func.isRequired,
|
|
146
149
|
onSuccess: _propTypes.default.func.isRequired,
|
|
147
150
|
onError: _propTypes.default.func,
|
|
@@ -151,5 +154,6 @@ IssuePassport.propTypes = {
|
|
|
151
154
|
IssuePassport.defaultProps = {
|
|
152
155
|
onError: () => {},
|
|
153
156
|
roles: [],
|
|
154
|
-
showOwnerPassport: false
|
|
157
|
+
showOwnerPassport: false,
|
|
158
|
+
ownerSource: _constant.USER_TYPE.WALLET
|
|
155
159
|
};
|
|
@@ -307,6 +307,7 @@ function Passports(_ref2) {
|
|
|
307
307
|
}), showIssueDialog && /*#__PURE__*/(0, _jsxRuntime.jsx)(_issuePassport.default, {
|
|
308
308
|
teamDid: teamDid,
|
|
309
309
|
ownerDid: user.did,
|
|
310
|
+
ownerSource: user.source,
|
|
310
311
|
roles: roles,
|
|
311
312
|
onCancel: () => setShowIssueDialog(false),
|
|
312
313
|
onSuccess: () => {
|
package/package.json
CHANGED
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
"publishConfig": {
|
|
4
4
|
"access": "public"
|
|
5
5
|
},
|
|
6
|
-
"version": "1.16.0-beta-
|
|
6
|
+
"version": "1.16.0-beta-62b42401",
|
|
7
7
|
"description": "UX components shared across abtnode packages",
|
|
8
8
|
"main": "lib/index.js",
|
|
9
9
|
"files": [
|
|
@@ -21,20 +21,20 @@
|
|
|
21
21
|
"author": "linchen <linchen1987@foxmail.com> (http://github.com/linchen1987)",
|
|
22
22
|
"license": "MIT",
|
|
23
23
|
"dependencies": {
|
|
24
|
-
"@abtnode/auth": "1.16.0-beta-
|
|
25
|
-
"@abtnode/constant": "1.16.0-beta-
|
|
26
|
-
"@abtnode/util": "1.16.0-beta-
|
|
27
|
-
"@arcblock/did-connect": "^2.5.
|
|
24
|
+
"@abtnode/auth": "1.16.0-beta-62b42401",
|
|
25
|
+
"@abtnode/constant": "1.16.0-beta-62b42401",
|
|
26
|
+
"@abtnode/util": "1.16.0-beta-62b42401",
|
|
27
|
+
"@arcblock/did-connect": "^2.5.15",
|
|
28
28
|
"@arcblock/did-motif": "^1.1.10",
|
|
29
|
-
"@arcblock/icons": "^2.5.
|
|
30
|
-
"@arcblock/react-hooks": "^2.5.
|
|
31
|
-
"@arcblock/terminal": "^2.5.
|
|
32
|
-
"@arcblock/ux": "^2.5.
|
|
33
|
-
"@blocklet/constant": "1.16.0-beta-
|
|
29
|
+
"@arcblock/icons": "^2.5.15",
|
|
30
|
+
"@arcblock/react-hooks": "^2.5.15",
|
|
31
|
+
"@arcblock/terminal": "^2.5.15",
|
|
32
|
+
"@arcblock/ux": "^2.5.15",
|
|
33
|
+
"@blocklet/constant": "1.16.0-beta-62b42401",
|
|
34
34
|
"@blocklet/launcher-layout": "1.9.65",
|
|
35
|
-
"@blocklet/list": "^0.11.
|
|
36
|
-
"@blocklet/meta": "1.16.0-beta-
|
|
37
|
-
"@blocklet/ui-react": "^2.5.
|
|
35
|
+
"@blocklet/list": "^0.11.10",
|
|
36
|
+
"@blocklet/meta": "1.16.0-beta-62b42401",
|
|
37
|
+
"@blocklet/ui-react": "^2.5.15",
|
|
38
38
|
"@emotion/react": "^11.10.4",
|
|
39
39
|
"@emotion/styled": "^11.10.4",
|
|
40
40
|
"@iconify/react": "^4.0.0",
|
|
@@ -88,5 +88,5 @@
|
|
|
88
88
|
"@babel/preset-react": "^7.18.6",
|
|
89
89
|
"babel-plugin-inline-react-svg": "^1.1.2"
|
|
90
90
|
},
|
|
91
|
-
"gitHead": "
|
|
91
|
+
"gitHead": "6ef1c3601d0cfdcf5da0b55b4c54ef1fa9fce7d2"
|
|
92
92
|
}
|