@blocklet/launcher-workflow 2.1.58 → 2.1.59
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/components/in-progress-session.js +95 -0
- package/lib/locales/en.js +6 -0
- package/lib/locales/zh.js +6 -0
- package/lib/purchase.js +3 -2
- package/package.json +5 -5
|
@@ -0,0 +1,95 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.default = InProgressSession;
|
|
7
|
+
var _Button = _interopRequireDefault(require("@arcblock/ux/lib/Button"));
|
|
8
|
+
var _Dialog = _interopRequireDefault(require("@arcblock/ux/lib/Dialog"));
|
|
9
|
+
var _launcherUtil = require("@blocklet/launcher-util");
|
|
10
|
+
var _Box = _interopRequireDefault(require("@mui/material/Box"));
|
|
11
|
+
var _Link = require("@mui/material/Link");
|
|
12
|
+
var _react = require("react");
|
|
13
|
+
var _useAsync = _interopRequireDefault(require("react-use/lib/useAsync"));
|
|
14
|
+
var _urlJoin = _interopRequireDefault(require("url-join"));
|
|
15
|
+
var _locale = require("../contexts/locale");
|
|
16
|
+
var _request = _interopRequireDefault(require("../contexts/request"));
|
|
17
|
+
var _workflow = require("../contexts/workflow");
|
|
18
|
+
var _jsxRuntime = require("react/jsx-runtime");
|
|
19
|
+
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
20
|
+
// 不考虑 localstorage 的过期时间
|
|
21
|
+
const IGNORE_LAUNCH_SESSION_KEY = 'launcher-ignore-launch-session';
|
|
22
|
+
function InProgressSession() {
|
|
23
|
+
var _state$value;
|
|
24
|
+
const {
|
|
25
|
+
t
|
|
26
|
+
} = (0, _locale.useLocaleContext)();
|
|
27
|
+
const {
|
|
28
|
+
create
|
|
29
|
+
} = (0, _request.default)();
|
|
30
|
+
const {
|
|
31
|
+
routerPrefix
|
|
32
|
+
} = (0, _workflow.useWorkflowContext)();
|
|
33
|
+
const [open, setOpen] = (0, _react.useState)(false);
|
|
34
|
+
const api = create();
|
|
35
|
+
const state = (0, _useAsync.default)(async () => {
|
|
36
|
+
const {
|
|
37
|
+
data
|
|
38
|
+
} = await api.get((0, _urlJoin.default)(routerPrefix, '/launches/in-progress'));
|
|
39
|
+
if (data.launch) {
|
|
40
|
+
if (localStorage.getItem(IGNORE_LAUNCH_SESSION_KEY) === data.launch._id) {
|
|
41
|
+
return null;
|
|
42
|
+
}
|
|
43
|
+
setOpen(true);
|
|
44
|
+
}
|
|
45
|
+
return data.launch;
|
|
46
|
+
});
|
|
47
|
+
if (state.loading || !state.value) {
|
|
48
|
+
return '';
|
|
49
|
+
}
|
|
50
|
+
if (state.error) {
|
|
51
|
+
console.error('load in progress session failed', state.error);
|
|
52
|
+
return '';
|
|
53
|
+
}
|
|
54
|
+
const handleClose = () => {
|
|
55
|
+
setOpen(false);
|
|
56
|
+
localStorage.setItem(IGNORE_LAUNCH_SESSION_KEY, state.value._id);
|
|
57
|
+
};
|
|
58
|
+
return /*#__PURE__*/(0, _jsxRuntime.jsx)(_Dialog.default, {
|
|
59
|
+
open: open,
|
|
60
|
+
showCloseButton: true,
|
|
61
|
+
PaperProps: {
|
|
62
|
+
style: {
|
|
63
|
+
maxWidth: 700,
|
|
64
|
+
minWidth: 400,
|
|
65
|
+
minHeight: 200
|
|
66
|
+
}
|
|
67
|
+
},
|
|
68
|
+
title: t('purchase.inProgress.title'),
|
|
69
|
+
onClose: () => handleClose(null),
|
|
70
|
+
actions: /*#__PURE__*/(0, _jsxRuntime.jsxs)(_Box.default, {
|
|
71
|
+
display: "flex",
|
|
72
|
+
gap: 2,
|
|
73
|
+
children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_Button.default, {
|
|
74
|
+
variant: "outlined",
|
|
75
|
+
size: "small",
|
|
76
|
+
onClick: handleClose,
|
|
77
|
+
children: t('purchase.inProgress.notRemind')
|
|
78
|
+
}), /*#__PURE__*/(0, _jsxRuntime.jsx)(_Button.default, {
|
|
79
|
+
component: _Link.Link,
|
|
80
|
+
autoFocus: true,
|
|
81
|
+
variant: "contained",
|
|
82
|
+
color: "primary",
|
|
83
|
+
size: "small",
|
|
84
|
+
href: (0, _launcherUtil.getContinueLaunchURL)({
|
|
85
|
+
baseURL: window.location.origin,
|
|
86
|
+
launch: state.value
|
|
87
|
+
}),
|
|
88
|
+
children: t('purchase.inProgress.continue')
|
|
89
|
+
})]
|
|
90
|
+
}),
|
|
91
|
+
children: t('purchase.inProgress.content', {
|
|
92
|
+
blockletName: (_state$value = state.value) === null || _state$value === void 0 || (_state$value = _state$value.blockletMeta) === null || _state$value === void 0 ? void 0 : _state$value.title
|
|
93
|
+
})
|
|
94
|
+
});
|
|
95
|
+
}
|
package/lib/locales/en.js
CHANGED
|
@@ -117,6 +117,12 @@ module.exports = {
|
|
|
117
117
|
title: 'Purchase successfully',
|
|
118
118
|
redirectToStoreButton: 'Go to install the application →',
|
|
119
119
|
purchaseServerlessSuccess: 'The purchase of Running Space is successful and you can go ahead and install Blocklet.'
|
|
120
|
+
},
|
|
121
|
+
inProgress: {
|
|
122
|
+
title: 'Unfinished Order',
|
|
123
|
+
continue: 'Continue',
|
|
124
|
+
content: 'You have an incomplete order {blockletName}, Continue this order?',
|
|
125
|
+
notRemind: 'No more reminders'
|
|
120
126
|
}
|
|
121
127
|
},
|
|
122
128
|
checkout: {
|
package/lib/locales/zh.js
CHANGED
|
@@ -116,6 +116,12 @@ module.exports = {
|
|
|
116
116
|
title: '购买成功',
|
|
117
117
|
redirectToStoreButton: '去安装应用 →',
|
|
118
118
|
purchaseServerlessSuccess: '购买运行空间成功,您可以去安装应用.'
|
|
119
|
+
},
|
|
120
|
+
inProgress: {
|
|
121
|
+
title: '未完成的订单',
|
|
122
|
+
continue: '继续',
|
|
123
|
+
content: '您有一个未完成的订单: {blockletName},继续该订单?',
|
|
124
|
+
notRemind: '不再提醒'
|
|
119
125
|
}
|
|
120
126
|
},
|
|
121
127
|
checkout: {
|
package/lib/purchase.js
CHANGED
|
@@ -15,16 +15,17 @@ var _CircularProgress = _interopRequireDefault(require("@mui/material/CircularPr
|
|
|
15
15
|
var _Tooltip = _interopRequireDefault(require("@mui/material/Tooltip"));
|
|
16
16
|
var _reactSplide = require("@splidejs/react-splide");
|
|
17
17
|
var _splideExtensionGrid = require("@splidejs/splide-extension-grid");
|
|
18
|
+
var _lodash = _interopRequireDefault(require("lodash.get"));
|
|
18
19
|
var _propTypes = _interopRequireDefault(require("prop-types"));
|
|
19
20
|
var _react = _interopRequireWildcard(require("react"));
|
|
20
21
|
var _reactRouterDom = require("react-router-dom");
|
|
21
22
|
var _useMeasure = _interopRequireDefault(require("react-use/lib/useMeasure"));
|
|
22
23
|
var _useSetState = _interopRequireDefault(require("react-use/lib/useSetState"));
|
|
23
24
|
var _urlJoin = _interopRequireDefault(require("url-join"));
|
|
24
|
-
var _lodash = _interopRequireDefault(require("lodash.get"));
|
|
25
25
|
require("@splidejs/splide/dist/css/splide.min.css");
|
|
26
26
|
var _launchResultMessage = _interopRequireDefault(require("@blocklet/launcher-layout/lib/launch-result-message"));
|
|
27
27
|
var _formatError = _interopRequireDefault(require("@blocklet/launcher-util/lib/format-error"));
|
|
28
|
+
var _inProgressSession = _interopRequireDefault(require("./components/in-progress-session"));
|
|
28
29
|
var _layout = _interopRequireDefault(require("./components/layout"));
|
|
29
30
|
var _body = _interopRequireDefault(require("./components/layout/body"));
|
|
30
31
|
var _footer = _interopRequireDefault(require("./components/layout/footer"));
|
|
@@ -513,7 +514,7 @@ function PurchasePage(_ref) {
|
|
|
513
514
|
})
|
|
514
515
|
})]
|
|
515
516
|
})
|
|
516
|
-
}), state.showRedeem && /*#__PURE__*/(0, _jsxRuntime.jsx)(_Connect.default, {
|
|
517
|
+
}), session.user && /*#__PURE__*/(0, _jsxRuntime.jsx)(_inProgressSession.default, {}), state.showRedeem && /*#__PURE__*/(0, _jsxRuntime.jsx)(_Connect.default, {
|
|
517
518
|
open: true,
|
|
518
519
|
popup: true,
|
|
519
520
|
useSocket: false,
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@blocklet/launcher-workflow",
|
|
3
|
-
"version": "2.1.
|
|
3
|
+
"version": "2.1.59",
|
|
4
4
|
"description": "Purchase components for Launcher UI",
|
|
5
5
|
"publishConfig": {
|
|
6
6
|
"access": "public"
|
|
@@ -40,9 +40,9 @@
|
|
|
40
40
|
"@arcblock/license": "^2.5.66",
|
|
41
41
|
"@arcblock/react-hooks": "^2.5.66",
|
|
42
42
|
"@arcblock/ux": "^2.5.66",
|
|
43
|
-
"@blocklet/launcher-layout": "2.1.
|
|
44
|
-
"@blocklet/launcher-util": "2.1.
|
|
45
|
-
"@blocklet/launcher-ux": "2.1.
|
|
43
|
+
"@blocklet/launcher-layout": "2.1.59",
|
|
44
|
+
"@blocklet/launcher-util": "2.1.59",
|
|
45
|
+
"@blocklet/launcher-ux": "2.1.59",
|
|
46
46
|
"@blocklet/payment": "^1.12.29",
|
|
47
47
|
"@emotion/react": "^11.11.1",
|
|
48
48
|
"@emotion/styled": "^11.11.0",
|
|
@@ -76,5 +76,5 @@
|
|
|
76
76
|
"babel-plugin-inline-react-svg": "^2.0.2",
|
|
77
77
|
"jest": "^27.5.1"
|
|
78
78
|
},
|
|
79
|
-
"gitHead": "
|
|
79
|
+
"gitHead": "e0360a45c0ded273249bbb807400ebe2b945ca5c"
|
|
80
80
|
}
|