@abtnode/ux 1.16.17-beta-2679e686 → 1.16.17-beta-3232a7af
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/es/blocklet/component/domain-list.js +103 -1
- package/es/blocklet/configuration.js +2 -1
- package/es/blocklet/router/action/add-domain-alias.js +63 -85
- package/es/blocklet/router/add-domain.js +258 -0
- package/es/confirm.js +4 -1
- package/es/form/form-select-input.js +6 -0
- package/es/locales/en.js +20 -0
- package/es/locales/zh.js +21 -0
- package/es/team/members/index.js +3 -0
- package/es/team/passports/index.js +4 -1
- package/lib/blocklet/component/domain-list.js +104 -2
- package/lib/blocklet/configuration.js +2 -1
- package/lib/blocklet/router/action/add-domain-alias.js +62 -83
- package/lib/blocklet/router/add-domain.js +274 -0
- package/lib/confirm.js +4 -1
- package/lib/form/form-select-input.js +8 -2
- package/lib/locales/en.js +20 -0
- package/lib/locales/zh.js +21 -0
- package/lib/team/members/index.js +3 -0
- package/lib/team/passports/index.js +4 -1
- package/package.json +7 -7
|
@@ -9,6 +9,7 @@ import MenuItem from '@mui/material/MenuItem';
|
|
|
9
9
|
import Select from '@mui/material/Select';
|
|
10
10
|
import Chip from '@mui/material/Chip';
|
|
11
11
|
import { useTheme } from '@mui/material/styles';
|
|
12
|
+
import FormHelperText from '@mui/material/FormHelperText';
|
|
12
13
|
import Required from './required';
|
|
13
14
|
import FormWrapper from './form-wrapper';
|
|
14
15
|
import InputTriggers from './input-triggers';
|
|
@@ -41,6 +42,7 @@ export default function FormSelectInput({
|
|
|
41
42
|
triggers,
|
|
42
43
|
options,
|
|
43
44
|
formatterBeforeSubmit,
|
|
45
|
+
helperText,
|
|
44
46
|
...rest
|
|
45
47
|
}) {
|
|
46
48
|
const theme = useTheme();
|
|
@@ -154,6 +156,8 @@ export default function FormSelectInput({
|
|
|
154
156
|
disabled: disabled
|
|
155
157
|
})
|
|
156
158
|
})]
|
|
159
|
+
}), editing && helperText && /*#__PURE__*/_jsx(FormHelperText, {
|
|
160
|
+
children: helperText
|
|
157
161
|
})]
|
|
158
162
|
})
|
|
159
163
|
});
|
|
@@ -168,6 +172,7 @@ FormSelectInput.propTypes = {
|
|
|
168
172
|
disabled: PropTypes.bool,
|
|
169
173
|
triggers: PropTypes.array,
|
|
170
174
|
options: PropTypes.array,
|
|
175
|
+
helperText: PropTypes.string,
|
|
171
176
|
formatterBeforeSubmit: PropTypes.func
|
|
172
177
|
};
|
|
173
178
|
FormSelectInput.defaultProps = {
|
|
@@ -180,5 +185,6 @@ FormSelectInput.defaultProps = {
|
|
|
180
185
|
disabled: false,
|
|
181
186
|
triggers: [],
|
|
182
187
|
options: [],
|
|
188
|
+
helperText: '',
|
|
183
189
|
formatterBeforeSubmit: x => x.join(',')
|
|
184
190
|
};
|
package/es/locales/en.js
CHANGED
|
@@ -410,6 +410,7 @@ module.exports = {
|
|
|
410
410
|
description: 'Blocklet instance wallet type, will change the derived DID'
|
|
411
411
|
},
|
|
412
412
|
languages: 'Supported Languages',
|
|
413
|
+
selectLanguagesTip: 'Adjust the order by removing and re-adding',
|
|
413
414
|
passportColor: 'Passport Color',
|
|
414
415
|
appUrl: 'Blocklet URL',
|
|
415
416
|
access: {
|
|
@@ -734,6 +735,8 @@ module.exports = {
|
|
|
734
735
|
registerUrlPlaceholder: 'Input the URL of your preferred Blocklet Launcher, you can use the official one safely',
|
|
735
736
|
webWalletUrl: 'DID Wallet URL',
|
|
736
737
|
webWalletUrlPlaceholder: 'Please input the URL of your hosted "DID Wallet", you can use the official one safely',
|
|
738
|
+
nftDomainUrl: 'NFT Domain URL',
|
|
739
|
+
nftDomainUrlPlaceholder: 'Please input the URL of your hosted "NFT Domain", you can use the official one safely',
|
|
737
740
|
enableWelcomePage: 'Enable welcome page',
|
|
738
741
|
welcome: {
|
|
739
742
|
switchLabel: 'Welcome Page'
|
|
@@ -919,12 +922,29 @@ module.exports = {
|
|
|
919
922
|
}
|
|
920
923
|
},
|
|
921
924
|
domainAlias: {
|
|
925
|
+
inputDomain: 'Input Domain',
|
|
926
|
+
nftDomain: 'NFT Domain',
|
|
922
927
|
add: {
|
|
923
928
|
title: 'Add Additional Domain',
|
|
924
929
|
domainDescription: 'Please provide a valid domain name',
|
|
925
930
|
forceTip: 'Force add if domain name already exists',
|
|
926
931
|
helperText: 'If an HTTP or HTTPS URL is entered, it will be automatically converted into a domain name.'
|
|
927
932
|
},
|
|
933
|
+
addCustomDomain: {
|
|
934
|
+
name: 'Custom Domain'
|
|
935
|
+
},
|
|
936
|
+
addDomainNFT: {
|
|
937
|
+
showNFT: 'Show NFT',
|
|
938
|
+
tips: 'NFT Domain will do the domain name resolution automatically, no need to configure it manually, and the application will update the resolution record of the domain name automatically when needed.',
|
|
939
|
+
connect: {
|
|
940
|
+
title: 'Please show your Domain NFT',
|
|
941
|
+
scan: 'Scan following QR code with DID Wallet to authorize to blocklet to use your domain',
|
|
942
|
+
confirm: 'Confirm on your DID Wallet',
|
|
943
|
+
success: 'Authorization Successfully'
|
|
944
|
+
},
|
|
945
|
+
buyTip: "If your don't have domain yet, ",
|
|
946
|
+
buy: 'buy it now!'
|
|
947
|
+
},
|
|
928
948
|
delete: {
|
|
929
949
|
title: 'Delete',
|
|
930
950
|
description: 'After removing a domain alias, access to that alias may not be handled properly.'
|
package/es/locales/zh.js
CHANGED
|
@@ -414,6 +414,7 @@ module.exports = {
|
|
|
414
414
|
description: '应用钱包类型,会影响派生出来的 DID'
|
|
415
415
|
},
|
|
416
416
|
languages: '支持的语言',
|
|
417
|
+
selectLanguagesTip: '通过删除再添加来调整顺序',
|
|
417
418
|
passportColor: '通行证颜色',
|
|
418
419
|
appUrl: '应用访问地址',
|
|
419
420
|
access: {
|
|
@@ -738,6 +739,8 @@ module.exports = {
|
|
|
738
739
|
registerUrlPlaceholder: '你可以使用自己运行的"应用启动器", 也可以使用官方提供的版本',
|
|
739
740
|
webWalletUrl: 'DID Wallet 地址',
|
|
740
741
|
webWalletUrlPlaceholder: '你可以使用自己运行的 "DID Wallet", 也可以使用官方提供的版本',
|
|
742
|
+
nftDomainUrl: 'NFT Domain 地址',
|
|
743
|
+
nftDomainUrlPlaceholder: '你可以选择其它的 NFT Domain 服务器, 也可以使用官方提供的版本',
|
|
741
744
|
upgrade: {
|
|
742
745
|
title: '升级节点 {version}',
|
|
743
746
|
description: '在升级期间,节点将会进入维护模式几分钟。',
|
|
@@ -922,12 +925,30 @@ module.exports = {
|
|
|
922
925
|
}
|
|
923
926
|
},
|
|
924
927
|
domainAlias: {
|
|
928
|
+
inputDomain: '输入域名',
|
|
929
|
+
nftDomain: 'NFT 域名',
|
|
925
930
|
add: {
|
|
926
931
|
title: '添加额外域名',
|
|
927
932
|
domainDescription: '请填写有效的域名',
|
|
928
933
|
forceTip: '当域名已存在时强制添加',
|
|
929
934
|
helperText: '如果输入 HTTP 或者 HTTPS URL, 则会被自动转换为域名。'
|
|
930
935
|
},
|
|
936
|
+
addCustomDomain: {
|
|
937
|
+
name: '自定义域名'
|
|
938
|
+
},
|
|
939
|
+
addDomainNFT: {
|
|
940
|
+
name: 'NFT 域名',
|
|
941
|
+
showNFT: '出示 NFT',
|
|
942
|
+
tips: 'NFT 域名会自动完成域名解析,无需手动配置,并且应用会在需要的时候自动更新该域名的解析记录。',
|
|
943
|
+
connect: {
|
|
944
|
+
title: '请出示域名 NFT',
|
|
945
|
+
scan: '用 DID 钱包扫描下面的二维码, 出示域名 NFT',
|
|
946
|
+
confirm: '在您的 DID 钱包上确认',
|
|
947
|
+
success: '授权成功'
|
|
948
|
+
},
|
|
949
|
+
buyTip: '如果还没有域名 NFT, ',
|
|
950
|
+
buy: '现在购买!'
|
|
951
|
+
},
|
|
931
952
|
delete: {
|
|
932
953
|
title: '删除',
|
|
933
954
|
description: '删除别名将会删除域名别用该站点下的所有流量转发规则,是否继续?'
|
package/es/team/members/index.js
CHANGED
|
@@ -460,6 +460,9 @@ export default function MemberList({
|
|
|
460
460
|
children: [/*#__PURE__*/_jsxs(Box, {
|
|
461
461
|
className: "main",
|
|
462
462
|
display: "flex",
|
|
463
|
+
sx: {
|
|
464
|
+
mt: inService ? 4 : 0
|
|
465
|
+
},
|
|
463
466
|
children: [/*#__PURE__*/_jsx("div", {
|
|
464
467
|
className: "left",
|
|
465
468
|
children: /*#__PURE__*/_jsx("div", {
|
|
@@ -76,6 +76,9 @@ export default function PassportList({
|
|
|
76
76
|
};
|
|
77
77
|
const filteredRoles = roles.filter(x => !search || x.title.includes(search) || x.name.includes(search));
|
|
78
78
|
return /*#__PURE__*/_jsxs(Div, {
|
|
79
|
+
sx: {
|
|
80
|
+
mt: inService ? 6 : 0
|
|
81
|
+
},
|
|
79
82
|
children: [/*#__PURE__*/_jsxs(ListHeader, {
|
|
80
83
|
children: [/*#__PURE__*/_jsx("div", {
|
|
81
84
|
className: "left",
|
|
@@ -244,7 +247,7 @@ export default function PassportList({
|
|
|
244
247
|
})]
|
|
245
248
|
});
|
|
246
249
|
}
|
|
247
|
-
const Div = styled
|
|
250
|
+
const Div = styled(Box)`
|
|
248
251
|
.list {
|
|
249
252
|
.item {
|
|
250
253
|
padding: 12px;
|
|
@@ -9,12 +9,17 @@ var _styled = _interopRequireDefault(require("@emotion/styled"));
|
|
|
9
9
|
var _propTypes = _interopRequireDefault(require("prop-types"));
|
|
10
10
|
var _react = _interopRequireWildcard(require("react"));
|
|
11
11
|
var _Add = _interopRequireDefault(require("@mui/icons-material/Add"));
|
|
12
|
+
var _Diamond = _interopRequireDefault(require("@mui/icons-material/Diamond"));
|
|
12
13
|
var _ExpandLess = _interopRequireDefault(require("@mui/icons-material/ExpandLess"));
|
|
13
14
|
var _ExpandMore = _interopRequireDefault(require("@mui/icons-material/ExpandMore"));
|
|
14
15
|
var _Alert = _interopRequireDefault(require("@mui/material/Alert"));
|
|
15
16
|
var _Box = _interopRequireDefault(require("@mui/material/Box"));
|
|
17
|
+
var _Card = _interopRequireDefault(require("@mui/material/Card"));
|
|
18
|
+
var _CardContent = _interopRequireDefault(require("@mui/material/CardContent"));
|
|
16
19
|
var _IconButton = _interopRequireDefault(require("@mui/material/IconButton"));
|
|
20
|
+
var _Popover = _interopRequireDefault(require("@mui/material/Popover"));
|
|
17
21
|
var _Tooltip = _interopRequireDefault(require("@mui/material/Tooltip"));
|
|
22
|
+
var _Typography = _interopRequireDefault(require("@mui/material/Typography"));
|
|
18
23
|
var _useTheme = _interopRequireDefault(require("@mui/material/styles/useTheme"));
|
|
19
24
|
var _base = require("@abtnode/util/lib/base32");
|
|
20
25
|
var _urlEvaluation = require("@abtnode/util/lib/url-evaluation");
|
|
@@ -23,6 +28,8 @@ var _Empty = _interopRequireDefault(require("@arcblock/ux/lib/Empty"));
|
|
|
23
28
|
var _context = require("@arcblock/ux/lib/Locale/context");
|
|
24
29
|
var _util = require("@blocklet/meta/lib/util");
|
|
25
30
|
var _CircularProgress = _interopRequireDefault(require("@mui/material/CircularProgress"));
|
|
31
|
+
var _didAddress = _interopRequireDefault(require("../../did-address"));
|
|
32
|
+
var _blocklet = require("../../contexts/blocklet");
|
|
26
33
|
var _node = require("../../contexts/node");
|
|
27
34
|
var _permission = require("../../permission");
|
|
28
35
|
var _util2 = require("../../util");
|
|
@@ -32,7 +39,6 @@ var _domainActions = _interopRequireDefault(require("../router/domain-actions"))
|
|
|
32
39
|
var _domainStatus = _interopRequireDefault(require("../router/domain-status"));
|
|
33
40
|
var _types = require("../types");
|
|
34
41
|
var _util3 = require("../util");
|
|
35
|
-
var _blocklet = require("../../contexts/blocklet");
|
|
36
42
|
var _jsxRuntime = require("react/jsx-runtime");
|
|
37
43
|
var _templateObject;
|
|
38
44
|
function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
|
|
@@ -65,7 +71,7 @@ function DomainListWithPermission(props) {
|
|
|
65
71
|
}));
|
|
66
72
|
}
|
|
67
73
|
function DomainList(_ref) {
|
|
68
|
-
var _blocklet$site2, _blocklet$meta;
|
|
74
|
+
var _blocklet$site2, _blocklet$environment, _blocklet$environment2, _blocklet$meta;
|
|
69
75
|
let {
|
|
70
76
|
hasPermission,
|
|
71
77
|
blocklet,
|
|
@@ -75,6 +81,7 @@ function DomainList(_ref) {
|
|
|
75
81
|
const {
|
|
76
82
|
t
|
|
77
83
|
} = (0, _context.useLocaleContext)();
|
|
84
|
+
const [domainInfoAnchorEl, setDomainInfoAnchorEl] = (0, _react.useState)(null);
|
|
78
85
|
const [showAllDomains, setShowAllDomains] = (0, _react.useState)(false);
|
|
79
86
|
const theme = (0, _useTheme.default)();
|
|
80
87
|
const hasMutatePermission = (0, _react.useMemo)(() => {
|
|
@@ -84,6 +91,12 @@ function DomainList(_ref) {
|
|
|
84
91
|
}
|
|
85
92
|
return res;
|
|
86
93
|
}, [hasPermission, inService, blocklet]);
|
|
94
|
+
const handlePopoverOpen = event => {
|
|
95
|
+
setDomainInfoAnchorEl(event.currentTarget);
|
|
96
|
+
};
|
|
97
|
+
const handlePopoverClose = () => {
|
|
98
|
+
setDomainInfoAnchorEl(null);
|
|
99
|
+
};
|
|
87
100
|
const {
|
|
88
101
|
site
|
|
89
102
|
} = blocklet;
|
|
@@ -94,6 +107,7 @@ function DomainList(_ref) {
|
|
|
94
107
|
const displayDomains = [];
|
|
95
108
|
const hiddenDomains = [];
|
|
96
109
|
const pidBase32 = (0, _base.encode)(blocklet.appPid);
|
|
110
|
+
const appPk = (_blocklet$environment = blocklet.environments) === null || _blocklet$environment === void 0 ? void 0 : (_blocklet$environment2 = _blocklet$environment.find(x => x.key === 'BLOCKLET_APP_PK')) === null || _blocklet$environment2 === void 0 ? void 0 : _blocklet$environment2.value;
|
|
97
111
|
const systemDomains = (0, _util2.getSystemDomains)(domains);
|
|
98
112
|
domains.forEach(domain => {
|
|
99
113
|
const value = domain.value || '';
|
|
@@ -115,6 +129,8 @@ function DomainList(_ref) {
|
|
|
115
129
|
id: site.id,
|
|
116
130
|
title: t('router.domain.add.title'),
|
|
117
131
|
teamDid: (_blocklet$meta = blocklet.meta) === null || _blocklet$meta === void 0 ? void 0 : _blocklet$meta.did,
|
|
132
|
+
appId: blocklet.appPid,
|
|
133
|
+
appPk: appPk,
|
|
118
134
|
systemDomains: systemDomains === null || systemDomains === void 0 ? void 0 : systemDomains.map(x => x.value),
|
|
119
135
|
children: _ref2 => {
|
|
120
136
|
let {
|
|
@@ -167,6 +183,92 @@ function DomainList(_ref) {
|
|
|
167
183
|
target: "_blank",
|
|
168
184
|
children: domain.value
|
|
169
185
|
})
|
|
186
|
+
}), domain.type === 'nft-domain' && /*#__PURE__*/(0, _jsxRuntime.jsxs)(_jsxRuntime.Fragment, {
|
|
187
|
+
children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_Diamond.default, {
|
|
188
|
+
onMouseEnter: handlePopoverOpen,
|
|
189
|
+
onMouseLeave: handlePopoverClose,
|
|
190
|
+
style: {
|
|
191
|
+
cursor: 'pointer',
|
|
192
|
+
fill: theme.palette.primary.main
|
|
193
|
+
}
|
|
194
|
+
}), /*#__PURE__*/(0, _jsxRuntime.jsx)(_Popover.default, {
|
|
195
|
+
id: "mouse-over-popover",
|
|
196
|
+
style: {
|
|
197
|
+
pointerEvents: 'none'
|
|
198
|
+
},
|
|
199
|
+
open: Boolean(domainInfoAnchorEl),
|
|
200
|
+
anchorEl: domainInfoAnchorEl,
|
|
201
|
+
anchorOrigin: {
|
|
202
|
+
vertical: 'bottom',
|
|
203
|
+
horizontal: 'left'
|
|
204
|
+
},
|
|
205
|
+
transformOrigin: {
|
|
206
|
+
vertical: 'top',
|
|
207
|
+
horizontal: 'left'
|
|
208
|
+
},
|
|
209
|
+
onClose: handlePopoverClose,
|
|
210
|
+
disableRestoreFocus: true,
|
|
211
|
+
children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_Card.default, {
|
|
212
|
+
children: /*#__PURE__*/(0, _jsxRuntime.jsxs)(_CardContent.default, {
|
|
213
|
+
style: {
|
|
214
|
+
display: 'flex',
|
|
215
|
+
flexDirection: 'column'
|
|
216
|
+
},
|
|
217
|
+
children: [/*#__PURE__*/(0, _jsxRuntime.jsxs)(_Typography.default, {
|
|
218
|
+
component: "div",
|
|
219
|
+
style: {
|
|
220
|
+
display: 'flex',
|
|
221
|
+
alignItems: 'center'
|
|
222
|
+
},
|
|
223
|
+
children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_Diamond.default, {
|
|
224
|
+
style: {
|
|
225
|
+
fill: theme.palette.primary.main
|
|
226
|
+
}
|
|
227
|
+
}), /*#__PURE__*/(0, _jsxRuntime.jsx)(_Typography.default, {
|
|
228
|
+
component: "span",
|
|
229
|
+
style: {
|
|
230
|
+
marginLeft: '8px',
|
|
231
|
+
fontSize: '18px',
|
|
232
|
+
fontWeight: 'bolder'
|
|
233
|
+
},
|
|
234
|
+
children: t('router.domainAlias.nftDomain')
|
|
235
|
+
})]
|
|
236
|
+
}), /*#__PURE__*/(0, _jsxRuntime.jsxs)(_Typography.default, {
|
|
237
|
+
component: "div",
|
|
238
|
+
style: {
|
|
239
|
+
display: 'flex',
|
|
240
|
+
marginTop: '12px'
|
|
241
|
+
},
|
|
242
|
+
children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_Typography.default, {
|
|
243
|
+
component: "span",
|
|
244
|
+
style: {
|
|
245
|
+
width: '80px',
|
|
246
|
+
marginRight: '8px'
|
|
247
|
+
},
|
|
248
|
+
children: t('common.domain')
|
|
249
|
+
}), /*#__PURE__*/(0, _jsxRuntime.jsx)(_Typography.default, {
|
|
250
|
+
component: "span",
|
|
251
|
+
children: domain.value
|
|
252
|
+
})]
|
|
253
|
+
}), /*#__PURE__*/(0, _jsxRuntime.jsxs)(_Typography.default, {
|
|
254
|
+
component: "div",
|
|
255
|
+
style: {
|
|
256
|
+
display: 'flex'
|
|
257
|
+
},
|
|
258
|
+
children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_Typography.default, {
|
|
259
|
+
component: "span",
|
|
260
|
+
style: {
|
|
261
|
+
width: '80px',
|
|
262
|
+
marginRight: '8px'
|
|
263
|
+
},
|
|
264
|
+
children: "NFT"
|
|
265
|
+
}), /*#__PURE__*/(0, _jsxRuntime.jsx)(_didAddress.default, {
|
|
266
|
+
did: domain.nftDid
|
|
267
|
+
})]
|
|
268
|
+
})]
|
|
269
|
+
})
|
|
270
|
+
})
|
|
271
|
+
})]
|
|
170
272
|
}), /*#__PURE__*/(0, _jsxRuntime.jsx)(_domainStatus.default, {
|
|
171
273
|
domain: domain,
|
|
172
274
|
filters: ['http']
|
|
@@ -438,7 +438,8 @@ function BlockletEnvironment(_ref) {
|
|
|
438
438
|
loading: loading,
|
|
439
439
|
options: languages,
|
|
440
440
|
initialValue: customLanguages ? customLanguages.value.split(',') : ['en', 'zh'],
|
|
441
|
-
onSubmit: value => onSubmitConfig('BLOCKLET_APP_LANGUAGES', value)
|
|
441
|
+
onSubmit: value => onSubmitConfig('BLOCKLET_APP_LANGUAGES', value),
|
|
442
|
+
helperText: t('blocklet.config.selectLanguagesTip')
|
|
442
443
|
})]
|
|
443
444
|
}), /*#__PURE__*/(0, _jsxRuntime.jsx)(_Box.default, {
|
|
444
445
|
className: "config-form",
|
|
@@ -4,20 +4,18 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
4
4
|
value: true
|
|
5
5
|
});
|
|
6
6
|
exports.default = AddDomainAlias;
|
|
7
|
-
var _propTypes = _interopRequireDefault(require("prop-types"));
|
|
8
|
-
var _react = require("react");
|
|
9
7
|
var _urlEvaluation = require("@abtnode/util/lib/url-evaluation");
|
|
10
8
|
var _context = require("@arcblock/ux/lib/Locale/context");
|
|
11
9
|
var _CallMerge = _interopRequireDefault(require("@mui/icons-material/CallMerge"));
|
|
12
10
|
var _CircularProgress = _interopRequireDefault(require("@mui/material/CircularProgress"));
|
|
13
11
|
var _MenuItem = _interopRequireDefault(require("@mui/material/MenuItem"));
|
|
14
|
-
var
|
|
15
|
-
var
|
|
12
|
+
var _propTypes = _interopRequireDefault(require("prop-types"));
|
|
13
|
+
var _useSetState = _interopRequireDefault(require("react-use/lib/useSetState"));
|
|
16
14
|
var _confirm = _interopRequireDefault(require("../../../confirm"));
|
|
17
15
|
var _node = require("../../../contexts/node");
|
|
18
16
|
var _util = require("../../../util");
|
|
19
|
-
var _dnsTip = _interopRequireDefault(require("../dns-tip"));
|
|
20
17
|
var _util2 = require("../util");
|
|
18
|
+
var _addDomain = _interopRequireDefault(require("../add-domain"));
|
|
21
19
|
var _jsxRuntime = require("react/jsx-runtime");
|
|
22
20
|
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
23
21
|
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; }
|
|
@@ -31,7 +29,9 @@ function AddDomainAlias(_ref) {
|
|
|
31
29
|
children,
|
|
32
30
|
title,
|
|
33
31
|
teamDid,
|
|
34
|
-
systemDomains
|
|
32
|
+
systemDomains,
|
|
33
|
+
appId,
|
|
34
|
+
appPk
|
|
35
35
|
} = _ref;
|
|
36
36
|
const {
|
|
37
37
|
t
|
|
@@ -39,18 +39,24 @@ function AddDomainAlias(_ref) {
|
|
|
39
39
|
const {
|
|
40
40
|
api
|
|
41
41
|
} = (0, _node.useNodeContext)();
|
|
42
|
-
const [
|
|
43
|
-
|
|
42
|
+
const [state, setState] = (0, _useSetState.default)({
|
|
43
|
+
loading: false,
|
|
44
|
+
confirmSetting: null
|
|
45
|
+
});
|
|
44
46
|
const cnameDomain = systemDomains.find(item => (0, _urlEvaluation.isDidDomain)(item));
|
|
45
47
|
const onCancel = () => {
|
|
46
|
-
|
|
47
|
-
|
|
48
|
+
setState({
|
|
49
|
+
loading: false,
|
|
50
|
+
confirmSetting: null
|
|
51
|
+
});
|
|
48
52
|
};
|
|
49
53
|
const onConfirm = async params => {
|
|
50
|
-
if (loading) {
|
|
54
|
+
if (state.loading) {
|
|
51
55
|
return;
|
|
52
56
|
}
|
|
53
|
-
|
|
57
|
+
setState({
|
|
58
|
+
loading: true
|
|
59
|
+
});
|
|
54
60
|
try {
|
|
55
61
|
await api.addDomainAlias({
|
|
56
62
|
input: {
|
|
@@ -60,72 +66,41 @@ function AddDomainAlias(_ref) {
|
|
|
60
66
|
}
|
|
61
67
|
});
|
|
62
68
|
await (0, _util.sleep)(2000);
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
}
|
|
67
|
-
};
|
|
68
|
-
const onEnter = async (params, confirm, setError) => {
|
|
69
|
-
try {
|
|
70
|
-
await confirm(params);
|
|
71
|
-
} catch (err) {
|
|
72
|
-
setError((0, _util.formatError)(err));
|
|
69
|
+
setState({
|
|
70
|
+
confirmSetting: null
|
|
71
|
+
});
|
|
73
72
|
} finally {
|
|
74
|
-
|
|
73
|
+
setState({
|
|
74
|
+
loading: false
|
|
75
|
+
});
|
|
75
76
|
}
|
|
76
77
|
};
|
|
77
78
|
const setting = {
|
|
78
79
|
title: title || t('router.domainAlias.add.title'),
|
|
79
80
|
// eslint-disable-next-line react/no-unstable-nested-components
|
|
80
|
-
description: (params, setParams, setError)
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
},
|
|
94
|
-
value: params.domain,
|
|
95
|
-
style: {
|
|
96
|
-
marginBottom: 8
|
|
97
|
-
},
|
|
98
|
-
margin: "dense",
|
|
99
|
-
onChange: e => {
|
|
100
|
-
const domain = e.target.value.trim();
|
|
101
|
-
const errMsg = (0, _util2.validateDomain)(domain, t);
|
|
81
|
+
description: function Description(params, setParams, setError) {
|
|
82
|
+
return /*#__PURE__*/(0, _jsxRuntime.jsx)(_addDomain.default, {
|
|
83
|
+
siteId: id,
|
|
84
|
+
teamDid: teamDid,
|
|
85
|
+
cnameDomain: cnameDomain,
|
|
86
|
+
onSuccess: () => setState({
|
|
87
|
+
confirmSetting: null
|
|
88
|
+
}),
|
|
89
|
+
onInputDomain: _ref2 => {
|
|
90
|
+
let {
|
|
91
|
+
domain,
|
|
92
|
+
error
|
|
93
|
+
} = _ref2;
|
|
102
94
|
setParams(_objectSpread(_objectSpread({}, params), {}, {
|
|
103
95
|
domain,
|
|
104
|
-
__disableConfirm: !!
|
|
96
|
+
__disableConfirm: !!error
|
|
105
97
|
}));
|
|
106
|
-
|
|
107
|
-
setError(errMsg);
|
|
108
|
-
} else {
|
|
109
|
-
setError('');
|
|
110
|
-
}
|
|
98
|
+
setError(error);
|
|
111
99
|
},
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
const errMsg = (0, _util2.validateDomain)(domain, t);
|
|
117
|
-
if (errMsg) {
|
|
118
|
-
setError(errMsg);
|
|
119
|
-
} else {
|
|
120
|
-
onEnter(params, onConfirm, setError);
|
|
121
|
-
}
|
|
122
|
-
}
|
|
123
|
-
}
|
|
124
|
-
}), /*#__PURE__*/(0, _jsxRuntime.jsx)(_dnsTip.default, {
|
|
125
|
-
domain: params.domain,
|
|
126
|
-
resolvedTarget: cnameDomain
|
|
127
|
-
})]
|
|
128
|
-
}),
|
|
100
|
+
appId: appId,
|
|
101
|
+
appPk: appPk
|
|
102
|
+
});
|
|
103
|
+
},
|
|
129
104
|
confirm: t('common.confirm'),
|
|
130
105
|
cancel: t('common.cancel'),
|
|
131
106
|
params: {
|
|
@@ -137,18 +112,19 @@ function AddDomainAlias(_ref) {
|
|
|
137
112
|
};
|
|
138
113
|
const onMenuItemClick = e => {
|
|
139
114
|
e.stopPropagation();
|
|
140
|
-
|
|
141
|
-
|
|
115
|
+
setState({
|
|
116
|
+
confirmSetting: setting
|
|
117
|
+
});
|
|
142
118
|
};
|
|
143
119
|
return /*#__PURE__*/(0, _jsxRuntime.jsxs)(_jsxRuntime.Fragment, {
|
|
144
120
|
children: [typeof children === 'function' ? children({
|
|
145
|
-
loading,
|
|
121
|
+
loading: state.loading,
|
|
146
122
|
open: onMenuItemClick
|
|
147
123
|
}) : /*#__PURE__*/(0, _jsxRuntime.jsxs)(_MenuItem.default, {
|
|
148
124
|
onClick: onMenuItemClick,
|
|
149
125
|
className: "rule-action",
|
|
150
126
|
"data-cy": "action-add-domain-alias",
|
|
151
|
-
children: [loading ? /*#__PURE__*/(0, _jsxRuntime.jsx)(_CircularProgress.default, {
|
|
127
|
+
children: [state.loading ? /*#__PURE__*/(0, _jsxRuntime.jsx)(_CircularProgress.default, {
|
|
152
128
|
size: 16
|
|
153
129
|
}) : /*#__PURE__*/(0, _jsxRuntime.jsx)(_CallMerge.default, {
|
|
154
130
|
style: {
|
|
@@ -156,16 +132,16 @@ function AddDomainAlias(_ref) {
|
|
|
156
132
|
marginRight: 5
|
|
157
133
|
}
|
|
158
134
|
}), t('router.domainAlias.add.title')]
|
|
159
|
-
}), confirmSetting && /*#__PURE__*/(0, _jsxRuntime.jsx)(_confirm.default, {
|
|
160
|
-
title: confirmSetting.title,
|
|
161
|
-
description: confirmSetting.description,
|
|
162
|
-
confirm: confirmSetting.confirm,
|
|
163
|
-
cancel: confirmSetting.cancel,
|
|
164
|
-
params: confirmSetting.params,
|
|
165
|
-
onConfirm: confirmSetting.onConfirm,
|
|
166
|
-
onCancel: confirmSetting.onCancel,
|
|
135
|
+
}), state.confirmSetting && /*#__PURE__*/(0, _jsxRuntime.jsx)(_confirm.default, {
|
|
136
|
+
title: state.confirmSetting.title,
|
|
137
|
+
description: state.confirmSetting.description,
|
|
138
|
+
confirm: state.confirmSetting.confirm,
|
|
139
|
+
cancel: state.confirmSetting.cancel,
|
|
140
|
+
params: state.confirmSetting.params,
|
|
141
|
+
onConfirm: state.confirmSetting.onConfirm,
|
|
142
|
+
onCancel: state.confirmSetting.onCancel,
|
|
167
143
|
color: "primary",
|
|
168
|
-
loading: loading,
|
|
144
|
+
loading: state.loading,
|
|
169
145
|
maxWidth: "lg"
|
|
170
146
|
})]
|
|
171
147
|
});
|
|
@@ -175,10 +151,13 @@ AddDomainAlias.propTypes = {
|
|
|
175
151
|
children: _propTypes.default.any,
|
|
176
152
|
title: _propTypes.default.string,
|
|
177
153
|
teamDid: _propTypes.default.string,
|
|
178
|
-
systemDomains: _propTypes.default.arrayOf(_propTypes.default.string).isRequired
|
|
154
|
+
systemDomains: _propTypes.default.arrayOf(_propTypes.default.string).isRequired,
|
|
155
|
+
appId: _propTypes.default.string,
|
|
156
|
+
appPk: _propTypes.default.string.isRequired
|
|
179
157
|
};
|
|
180
158
|
AddDomainAlias.defaultProps = {
|
|
181
159
|
children: null,
|
|
182
160
|
title: '',
|
|
183
|
-
teamDid: ''
|
|
161
|
+
teamDid: '',
|
|
162
|
+
appId: null
|
|
184
163
|
};
|