@abtnode/ux 1.8.66-beta-b56e3b54 → 1.8.67-beta-f8b4c9ec

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.
@@ -32,6 +32,7 @@ var _Tag = _interopRequireDefault(require("@arcblock/ux/lib/Tag"));
32
32
  var _AnimationWaiter = _interopRequireDefault(require("@arcblock/ux/lib/AnimationWaiter"));
33
33
  var _launchResultMessage = _interopRequireDefault(require("@blocklet/launcher-layout/lib/launch-result-message"));
34
34
  var _util = require("@blocklet/meta/lib/util");
35
+ var _urlFriendly = _interopRequireDefault(require("@blocklet/meta/lib/url-friendly"));
35
36
  var _node = require("../../contexts/node");
36
37
  var _util2 = require("../../util");
37
38
  var _toast = _interopRequireDefault(require("../../toast"));
@@ -138,6 +139,7 @@ function AddComponent(_ref2) {
138
139
  const [error, setError] = (0, _react.useState)('');
139
140
  const [showDialog, setShowDialog] = (0, _react.useState)('');
140
141
  const [configs, setConfigs] = (0, _react.useState)([]);
142
+ const [mountPointHelperText, setMountPointHelperText] = (0, _react.useState)('');
141
143
  const {
142
144
  api,
143
145
  ws: {
@@ -282,7 +284,7 @@ function AddComponent(_ref2) {
282
284
  const installInput = _objectSpread(_objectSpread(_objectSpread({
283
285
  rootDid: blocklet.meta.did,
284
286
  url,
285
- mountPoint,
287
+ mountPoint: (0, _urlFriendly.default)(mountPoint),
286
288
  title,
287
289
  name: componentName,
288
290
  did: componentDid
@@ -546,7 +548,7 @@ function AddComponent(_ref2) {
546
548
  } else {
547
549
  var _component$current$me, _component$current$me2;
548
550
  doc = _objectSpread(_objectSpread({}, doc), {}, {
549
- pathPrefix: "/".concat((0, _util.urlFriendly)(name)),
551
+ pathPrefix: "/".concat((0, _urlFriendly.default)(name)),
550
552
  title: title || '',
551
553
  componentName: '',
552
554
  hasEnvironmentsStep: ((_component$current$me = component.current.meta) === null || _component$current$me === void 0 ? void 0 : (_component$current$me2 = _component$current$me.environments) === null || _component$current$me2 === void 0 ? void 0 : _component$current$me2.length) > 0
@@ -818,7 +820,7 @@ function AddComponent(_ref2) {
818
820
  'data-cy': 'mount-point-input'
819
821
  },
820
822
  fullWidth: true,
821
- helperText: t('blocklet.component.mountPointTip'),
823
+ helperText: mountPointHelperText || t('blocklet.component.mountPointTip'),
822
824
  style: {
823
825
  marginBottom: 32
824
826
  },
@@ -829,6 +831,9 @@ function AddComponent(_ref2) {
829
831
  updateParams({
830
832
  pathPrefix
831
833
  });
834
+ setMountPointHelperText(t('common.slugifyHint', {
835
+ value: (0, _util2.formatMountPoint)(pathPrefix)
836
+ }));
832
837
  }
833
838
  }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_TextField.default, {
834
839
  label: t('common.title'),
@@ -33,6 +33,7 @@ var _context = require("@arcblock/ux/lib/Locale/context");
33
33
  var _Button = _interopRequireDefault(require("@arcblock/ux/lib/Button"));
34
34
  var _Empty = _interopRequireDefault(require("@arcblock/ux/lib/Empty"));
35
35
  var _util = require("@blocklet/meta/lib/util");
36
+ var _normalizePathPrefix = _interopRequireDefault(require("@abtnode/util/lib/normalize-path-prefix"));
36
37
  var _deletingBlocklets = require("../../contexts/deleting-blocklets");
37
38
  var _didAddress = _interopRequireDefault(require("../../did-address"));
38
39
  var _tag = _interopRequireDefault(require("../../tag"));
@@ -308,7 +309,7 @@ function ComponentItem(_ref) {
308
309
  overflow: "hidden",
309
310
  whiteSpace: "nowrap",
310
311
  textOverflow: "ellipsis",
311
- children: mountPoint
312
+ children: (0, _normalizePathPrefix.default)(mountPoint)
312
313
  })
313
314
  })
314
315
  }, mountPoint), /*#__PURE__*/(0, _jsxRuntime.jsxs)(_Box.default, {
@@ -9,6 +9,7 @@ var _styled = _interopRequireDefault(require("@emotion/styled"));
9
9
  var _propTypes = _interopRequireDefault(require("prop-types"));
10
10
  var _Box = _interopRequireDefault(require("@mui/material/Box"));
11
11
  var _context = require("@arcblock/ux/lib/Locale/context");
12
+ var _urlFriendly = _interopRequireDefault(require("@blocklet/meta/lib/url-friendly"));
12
13
  var _toast = _interopRequireDefault(require("../../toast"));
13
14
  var _formTextInput = _interopRequireDefault(require("../../form/form-text-input"));
14
15
  var _node = require("../../contexts/node");
@@ -43,6 +44,7 @@ function ComponentSetting(_ref) {
43
44
  const isDynamic = blocklet.dynamic;
44
45
  const rootDid = isRoot ? blocklet.meta.did : ancestors.map(x => x.meta.did)[0];
45
46
  const [loading, setLoading] = (0, _react.useState)('');
47
+ const [mountPointHelperText, setMountPointHelperText] = (0, _react.useState)('');
46
48
  const isDev = (0, _util.isBlockletDev)(blocklet);
47
49
  const disabled = isDev || loading || !hasPermission;
48
50
  if (!rootDid) {
@@ -74,7 +76,7 @@ function ComponentSetting(_ref) {
74
76
  try {
75
77
  const input = {
76
78
  rootDid,
77
- mountPoint: value
79
+ mountPoint: (0, _urlFriendly.default)(value)
78
80
  };
79
81
  if (!isRoot) {
80
82
  input.did = blocklet.meta.did;
@@ -83,6 +85,7 @@ function ComponentSetting(_ref) {
83
85
  input
84
86
  });
85
87
  setLoading(false);
88
+ return true;
86
89
  } catch (err) {
87
90
  setLoading(false);
88
91
  err.message = (0, _util.formatError)(err);
@@ -90,6 +93,11 @@ function ComponentSetting(_ref) {
90
93
  throw err;
91
94
  }
92
95
  };
96
+ const handleMountPointChange = value => {
97
+ setMountPointHelperText(t('common.slugifyHint', {
98
+ value: (0, _util.formatMountPoint)(value)
99
+ }));
100
+ };
93
101
  return /*#__PURE__*/(0, _jsxRuntime.jsx)(Div, _objectSpread(_objectSpread({
94
102
  component: "div"
95
103
  }, rest), {}, {
@@ -114,7 +122,10 @@ function ComponentSetting(_ref) {
114
122
  loading: loading,
115
123
  required: true,
116
124
  initialValue: blocklet.mountPoint,
117
- onSubmit: onSubmitMountPoint
125
+ onSubmit: onSubmitMountPoint,
126
+ onChange: handleMountPointChange,
127
+ helperText: mountPointHelperText,
128
+ formatterBeforeSubmit: value => (0, _urlFriendly.default)(value)
118
129
  })]
119
130
  })
120
131
  }));
@@ -13,12 +13,14 @@ var _TextField = _interopRequireDefault(require("@mui/material/TextField"));
13
13
  var _MenuItem = _interopRequireDefault(require("@mui/material/MenuItem"));
14
14
  var _context = require("@arcblock/ux/lib/Locale/context");
15
15
  var _constant = require("@abtnode/constant");
16
+ var _urlFriendly = _interopRequireDefault(require("@blocklet/meta/lib/url-friendly"));
16
17
  var _node = require("../../../contexts/node");
17
18
  var _blocklet = require("../../../contexts/blocklet");
18
19
  var _confirm = _interopRequireDefault(require("../../../confirm"));
19
20
  var _toast = _interopRequireDefault(require("../../../toast"));
20
21
  var _util = require("../util");
21
22
  var _configRoutingRule = _interopRequireDefault(require("./config-routing-rule"));
23
+ var _util2 = require("../../../util");
22
24
  var _jsxRuntime = require("react/jsx-runtime");
23
25
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
24
26
  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; }
@@ -56,7 +58,7 @@ function AddRule(_ref) {
56
58
  setLoading(true);
57
59
  const rule = {
58
60
  from: {
59
- pathPrefix: params.pathPrefix.trim()
61
+ pathPrefix: (0, _urlFriendly.default)(params.pathPrefix)
60
62
  },
61
63
  to: {
62
64
  type: params.type
@@ -105,7 +107,7 @@ function AddRule(_ref) {
105
107
  "data-cy": "path-prefix-input",
106
108
  fullWidth: true,
107
109
  autoFocus: true,
108
- helperText: t('router.rule.add.pathPrefixTip'),
110
+ helperText: params.helperText || t('router.rule.add.pathPrefixTip'),
109
111
  style: {
110
112
  marginBottom: 32
111
113
  },
@@ -133,8 +135,12 @@ function AddRule(_ref) {
133
135
  if (!disable) {
134
136
  setError('');
135
137
  }
138
+ const helperText = t('common.slugifyHint', {
139
+ value: (0, _util2.formatMountPoint)(e.target.value)
140
+ });
136
141
  setParams(_objectSpread(_objectSpread({}, params), {}, {
137
142
  pathPrefix: e.target.value,
143
+ helperText,
138
144
  __disableConfirm: disable
139
145
  }));
140
146
  }
@@ -13,12 +13,14 @@ var _TextField = _interopRequireDefault(require("@mui/material/TextField"));
13
13
  var _MenuItem = _interopRequireDefault(require("@mui/material/MenuItem"));
14
14
  var _constant = require("@abtnode/constant");
15
15
  var _context = require("@arcblock/ux/lib/Locale/context");
16
+ var _urlFriendly = _interopRequireDefault(require("@blocklet/meta/lib/url-friendly"));
16
17
  var _node = require("../../../contexts/node");
17
18
  var _blocklet = require("../../../contexts/blocklet");
18
19
  var _confirm = _interopRequireDefault(require("../../../confirm"));
19
20
  var _toast = _interopRequireDefault(require("../../../toast"));
20
21
  var _util = require("../util");
21
22
  var _configRoutingRule = _interopRequireDefault(require("./config-routing-rule"));
23
+ var _util2 = require("../../../util");
22
24
  var _jsxRuntime = require("react/jsx-runtime");
23
25
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
24
26
  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; }
@@ -61,7 +63,7 @@ function UpdateRule(_ref) {
61
63
  const rule = {
62
64
  id: ruleId,
63
65
  from: {
64
- pathPrefix: params.pathPrefix.trim()
66
+ pathPrefix: (0, _urlFriendly.default)(params.pathPrefix)
65
67
  },
66
68
  to: {
67
69
  type: params.type
@@ -109,7 +111,7 @@ function UpdateRule(_ref) {
109
111
  "data-cy": "path-prefix-input",
110
112
  fullWidth: true,
111
113
  autoFocus: true,
112
- helperText: t('router.rule.add.pathPrefixTip'),
114
+ helperText: params.helperText || t('router.rule.add.pathPrefixTip'),
113
115
  style: {
114
116
  marginBottom: 32
115
117
  },
@@ -127,8 +129,12 @@ function UpdateRule(_ref) {
127
129
  if (!disable) {
128
130
  setError('');
129
131
  }
132
+ const helperText = t('common.slugifyHint', {
133
+ value: (0, _util2.formatMountPoint)(e.target.value)
134
+ });
130
135
  setParams(_objectSpread(_objectSpread({}, params), {}, {
131
136
  pathPrefix: e.target.value,
137
+ helperText,
132
138
  __disableConfirm: disable
133
139
  }));
134
140
  }
@@ -16,7 +16,7 @@ var _IconButton = _interopRequireDefault(require("@mui/material/IconButton"));
16
16
  var _required = _interopRequireDefault(require("./required"));
17
17
  var _formWrapper = _interopRequireDefault(require("./form-wrapper"));
18
18
  var _jsxRuntime = require("react/jsx-runtime");
19
- const _excluded = ["label", "disabled", "required", "initialValue", "onChange", "placeholder", "style", "onSubmit", "secure"];
19
+ const _excluded = ["label", "disabled", "required", "initialValue", "onChange", "placeholder", "style", "onSubmit", "secure", "formatterBeforeSubmit"];
20
20
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
21
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; }
22
22
  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; }
@@ -35,7 +35,8 @@ function FormTextInput(_ref) {
35
35
  placeholder,
36
36
  style,
37
37
  onSubmit,
38
- secure
38
+ secure,
39
+ formatterBeforeSubmit
39
40
  } = _ref,
40
41
  rest = _objectWithoutProperties(_ref, _excluded);
41
42
  const [editing, setEditing] = (0, _react.useState)(false);
@@ -49,7 +50,12 @@ function FormTextInput(_ref) {
49
50
  if (shouldUpdate === false) {
50
51
  setValue(defaultValue);
51
52
  } else {
52
- setDefaultValue(value);
53
+ let tmpValue = value;
54
+ if (typeof formatterBeforeSubmit === 'function') {
55
+ tmpValue = formatterBeforeSubmit(value);
56
+ }
57
+ setValue(tmpValue);
58
+ setDefaultValue(tmpValue);
53
59
  }
54
60
  } catch (err) {
55
61
  setValue(defaultValue);
@@ -148,7 +154,8 @@ FormTextInput.propTypes = {
148
154
  placeholder: _propTypes.default.string,
149
155
  required: _propTypes.default.bool,
150
156
  disabled: _propTypes.default.bool,
151
- secure: _propTypes.default.bool
157
+ secure: _propTypes.default.bool,
158
+ formatterBeforeSubmit: _propTypes.default.func
152
159
  };
153
160
  FormTextInput.defaultProps = {
154
161
  style: {},
@@ -159,5 +166,6 @@ FormTextInput.defaultProps = {
159
166
  placeholder: '',
160
167
  required: false,
161
168
  disabled: false,
162
- secure: false
169
+ secure: false,
170
+ formatterBeforeSubmit: null
163
171
  };
package/lib/locales/en.js CHANGED
@@ -278,7 +278,8 @@ module.exports = {
278
278
  normal: 'Normal',
279
279
  gateway: 'Gateway',
280
280
  verifyNFT: 'Verify NFT',
281
- errorMessage: 'Error Message:'
281
+ errorMessage: 'Error Message:',
282
+ slugifyHint: 'The actual mount point will be: {value}'
282
283
  },
283
284
  blocklet: {
284
285
  external: 'External',
package/lib/locales/zh.js CHANGED
@@ -284,7 +284,8 @@ module.exports = {
284
284
  normal: '正常',
285
285
  gateway: '网关',
286
286
  verifyNFT: '验证凭证',
287
- errorMessage: '错误信息:'
287
+ errorMessage: '错误信息:',
288
+ slugifyHint: '最终生效的挂载点是: {value}'
288
289
  },
289
290
  blocklet: {
290
291
  external: '外部',
package/lib/util/index.js CHANGED
@@ -9,7 +9,7 @@ exports.extractStatusUrlFromNextWorkflow = extractStatusUrlFromNextWorkflow;
9
9
  exports.formatDateTime = formatDateTime;
10
10
  exports.formatError = exports.formatDiskSize = void 0;
11
11
  exports.formatFactoryPrice = formatFactoryPrice;
12
- exports.formatRegistryScreenshotPath = exports.formatRegistryLogoPath = exports.formatPerson = exports.formatLocale = void 0;
12
+ exports.formatRegistryScreenshotPath = exports.formatRegistryLogoPath = exports.formatPerson = exports.formatMountPoint = exports.formatLocale = void 0;
13
13
  exports.formatTime = formatTime;
14
14
  exports.formatTimeFromNow = formatTimeFromNow;
15
15
  exports.formatTimestamp = formatTimestamp;
@@ -57,6 +57,8 @@ var _constant2 = require("@blocklet/constant");
57
57
  var _urlEvaluation = require("@abtnode/util/lib/url-evaluation");
58
58
  var _checkAccessibleBrowser = _interopRequireDefault(require("@abtnode/util/lib/url-evaluation/check-accessible-browser"));
59
59
  var _axios = _interopRequireDefault(require("@abtnode/util/lib/axios"));
60
+ var _normalizePathPrefix = _interopRequireDefault(require("@abtnode/util/lib/normalize-path-prefix"));
61
+ var _urlFriendly = _interopRequireDefault(require("@blocklet/meta/lib/url-friendly"));
60
62
  var _window$env;
61
63
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
62
64
  function sleep(t) {
@@ -719,4 +721,6 @@ const sortDomains = domains => {
719
721
  return 1;
720
722
  });
721
723
  };
722
- exports.sortDomains = sortDomains;
724
+ exports.sortDomains = sortDomains;
725
+ const formatMountPoint = value => (0, _normalizePathPrefix.default)((0, _urlFriendly.default)(value));
726
+ exports.formatMountPoint = formatMountPoint;
package/package.json CHANGED
@@ -3,7 +3,7 @@
3
3
  "publishConfig": {
4
4
  "access": "public"
5
5
  },
6
- "version": "1.8.66-beta-b56e3b54",
6
+ "version": "1.8.67-beta-f8b4c9ec",
7
7
  "description": "UX components shared across abtnode packages",
8
8
  "main": "lib/index.js",
9
9
  "files": [
@@ -21,19 +21,19 @@
21
21
  "author": "linchen <linchen1987@foxmail.com> (http://github.com/linchen1987)",
22
22
  "license": "MIT",
23
23
  "dependencies": {
24
- "@abtnode/auth": "1.8.66-beta-b56e3b54",
25
- "@abtnode/constant": "1.8.66-beta-b56e3b54",
26
- "@abtnode/util": "1.8.66-beta-b56e3b54",
27
- "@arcblock/did-connect": "^2.5.2",
24
+ "@abtnode/auth": "1.8.67-beta-f8b4c9ec",
25
+ "@abtnode/constant": "1.8.67-beta-f8b4c9ec",
26
+ "@abtnode/util": "1.8.67-beta-f8b4c9ec",
27
+ "@arcblock/did-connect": "^2.5.4",
28
28
  "@arcblock/did-motif": "^1.1.10",
29
- "@arcblock/icons": "^2.5.2",
30
- "@arcblock/terminal": "^2.5.2",
31
- "@arcblock/ux": "^2.5.2",
32
- "@blocklet/constant": "1.8.66-beta-b56e3b54",
29
+ "@arcblock/icons": "^2.5.4",
30
+ "@arcblock/terminal": "^2.5.4",
31
+ "@arcblock/ux": "^2.5.4",
32
+ "@blocklet/constant": "1.8.67-beta-f8b4c9ec",
33
33
  "@blocklet/launcher-layout": "^1.9.60",
34
- "@blocklet/list": "^0.11.2",
35
- "@blocklet/meta": "1.8.66-beta-b56e3b54",
36
- "@blocklet/ui-react": "^2.5.2",
34
+ "@blocklet/list": "^0.11.4",
35
+ "@blocklet/meta": "1.8.67-beta-f8b4c9ec",
36
+ "@blocklet/ui-react": "^2.5.4",
37
37
  "@emotion/react": "^11.10.4",
38
38
  "@emotion/styled": "^11.10.4",
39
39
  "@iconify/react": "^4.0.0",
@@ -86,5 +86,5 @@
86
86
  "@babel/preset-react": "^7.18.6",
87
87
  "babel-plugin-inline-react-svg": "^1.1.2"
88
88
  },
89
- "gitHead": "4d95b431526128c14cd04c0741cac423afce8f48"
89
+ "gitHead": "ebf19fcbc6d99fff0d214dc0680c4df81aa94d6d"
90
90
  }