@titaui/pc 1.15.4 → 1.15.6-beta.2
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/nav-top/images/invite-bkg.jpg +0 -0
- package/lib/components/nav-top/images/invite-person.jpg +0 -0
- package/lib/components/nav-top/images/invite-point.png +0 -0
- package/lib/components/nav-top/images/invite-tanhao.png +0 -0
- package/lib/components/nav-top/index.css +36 -0
- package/lib/components/nav-top/index.js +156 -26
- package/package.json +1 -1
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
@@ -170,6 +170,42 @@
|
|
|
170
170
|
color: #ffffff;
|
|
171
171
|
}
|
|
172
172
|
|
|
173
|
+
.titaui-nav-top__invite-guide {
|
|
174
|
+
background-image: url("./images/invite-bkg.jpg"), url("./images/invite-person.jpg") !important;
|
|
175
|
+
background-repeat: no-repeat,no-repeat !important;
|
|
176
|
+
background-size: 87px 104px, 92px 53px !important;
|
|
177
|
+
background-position: 0% 0%,100% 100% !important;
|
|
178
|
+
}
|
|
179
|
+
|
|
180
|
+
.titaui-nav-top__invite-guide-content {
|
|
181
|
+
display: flex;
|
|
182
|
+
align-items: flex-start;
|
|
183
|
+
}
|
|
184
|
+
|
|
185
|
+
.titaui-nav-top__invite-guide-content-waring {
|
|
186
|
+
width: 18px;
|
|
187
|
+
margin-right: 6px;
|
|
188
|
+
}
|
|
189
|
+
|
|
190
|
+
.titaui-nav-top__invite-guide-content-point {
|
|
191
|
+
width: 14px;
|
|
192
|
+
margin-right: 8px;
|
|
193
|
+
}
|
|
194
|
+
|
|
195
|
+
.titaui-nav-top__invite-guide-content-title {
|
|
196
|
+
font-size: 14px;
|
|
197
|
+
color: #FFFFFF;
|
|
198
|
+
font-weight: 600;
|
|
199
|
+
line-height: 22px;
|
|
200
|
+
}
|
|
201
|
+
|
|
202
|
+
.titaui-nav-top__invite-guide-content-subTitle {
|
|
203
|
+
margin-top: 8px;
|
|
204
|
+
font-size: 12px;
|
|
205
|
+
color: #FFFFFF;
|
|
206
|
+
line-height: 22px;
|
|
207
|
+
}
|
|
208
|
+
|
|
173
209
|
.titaui-nav-top__app-guide-content {
|
|
174
210
|
color: #fff;
|
|
175
211
|
margin-bottom: 8px;
|
|
@@ -45,8 +45,18 @@ var _interface = require("../../components/help-card/interface");
|
|
|
45
45
|
|
|
46
46
|
var _request2 = require("./request.apis");
|
|
47
47
|
|
|
48
|
+
var _auth = require("../../utils/auth");
|
|
49
|
+
|
|
50
|
+
var _invitePoint = _interopRequireDefault(require("./images/invite-point.png"));
|
|
51
|
+
|
|
52
|
+
var _tooltip = _interopRequireDefault(require("../tooltip"));
|
|
53
|
+
|
|
54
|
+
var _inviteTanhao = _interopRequireDefault(require("./images/invite-tanhao.png"));
|
|
55
|
+
|
|
48
56
|
require("./index.css");
|
|
49
57
|
|
|
58
|
+
var _getBSGlobal, _getBSGlobal2;
|
|
59
|
+
|
|
50
60
|
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; }
|
|
51
61
|
|
|
52
62
|
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); }
|
|
@@ -67,12 +77,15 @@ function _iterableToArrayLimit(arr, i) { var _i = arr == null ? null : typeof Sy
|
|
|
67
77
|
|
|
68
78
|
function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }
|
|
69
79
|
|
|
80
|
+
var Role = new _auth.MyRole();
|
|
81
|
+
var isTry = ((_getBSGlobal = (0, _bsGlobal.getBSGlobal)('tenantAuthentication')) === null || _getBSGlobal === void 0 ? void 0 : _getBSGlobal.Version) === 1;
|
|
82
|
+
var staffCount = (_getBSGlobal2 = (0, _bsGlobal.getBSGlobal)('tenantInfo')) === null || _getBSGlobal2 === void 0 ? void 0 : _getBSGlobal2.StaffCount;
|
|
70
83
|
var Logo = (0, _utils.getLogo)();
|
|
71
|
-
var newNavigation = (0, _bsGlobal.getBSGlobal)(
|
|
84
|
+
var newNavigation = (0, _bsGlobal.getBSGlobal)('newNavigation') || [];
|
|
72
85
|
var hasOKRApp = newNavigation.find(function (item) {
|
|
73
86
|
return item.appId === 113;
|
|
74
87
|
});
|
|
75
|
-
var preCls =
|
|
88
|
+
var preCls = 'titaui-nav-top';
|
|
76
89
|
|
|
77
90
|
var NavTop = function NavTop() {
|
|
78
91
|
var _classNames4;
|
|
@@ -87,7 +100,7 @@ var NavTop = function NavTop() {
|
|
|
87
100
|
menu = _useState2[0],
|
|
88
101
|
setMenu = _useState2[1];
|
|
89
102
|
|
|
90
|
-
var versionInfo = (0, _bsGlobal.getBSGlobal)(
|
|
103
|
+
var versionInfo = (0, _bsGlobal.getBSGlobal)('tenantAuthentication');
|
|
91
104
|
|
|
92
105
|
var _useState3 = (0, _react.useState)(-1),
|
|
93
106
|
_useState4 = _slicedToArray(_useState3, 2),
|
|
@@ -134,25 +147,57 @@ var NavTop = function NavTop() {
|
|
|
134
147
|
bookDemoVisible = _useState20[0],
|
|
135
148
|
setBookDemoVisible = _useState20[1];
|
|
136
149
|
|
|
150
|
+
var _useState21 = (0, _react.useState)(true),
|
|
151
|
+
_useState22 = _slicedToArray(_useState21, 2),
|
|
152
|
+
inviteVisible = _useState22[0],
|
|
153
|
+
setInviteVisible = _useState22[1];
|
|
154
|
+
|
|
155
|
+
var _useState23 = (0, _react.useState)(true),
|
|
156
|
+
_useState24 = _slicedToArray(_useState23, 2),
|
|
157
|
+
inviteAuth = _useState24[0],
|
|
158
|
+
setInviteAuth = _useState24[1];
|
|
159
|
+
|
|
137
160
|
var ua = navigator.userAgent.toLowerCase();
|
|
138
|
-
var showWxInvite = (0, _bsGlobal.getTenantInfo)().mainCorpId && ua.indexOf(
|
|
161
|
+
var showWxInvite = (0, _bsGlobal.getTenantInfo)().mainCorpId && ua.indexOf('micromessenger') !== -1;
|
|
162
|
+
var showMangeAdd = !(0, _bsGlobal.getTenantInfo)().mainCorpId && ua.indexOf('micromessenger') !== -1 && isTry && Role.isSuperManager; // const canShowInvite = getTenantInfo().mainCorpId || Role.isSuperManager
|
|
163
|
+
// const showWxInvite =
|
|
164
|
+
// getTenantInfo().Source === 860 &&
|
|
165
|
+
// ua.indexOf('micromessenger') !== -1 &&
|
|
166
|
+
// isTry && canShowInvite
|
|
167
|
+
|
|
168
|
+
var manageAdd = (0, _react.useCallback)(function () {
|
|
169
|
+
if (window.WeixinJSBridge !== undefined) {
|
|
170
|
+
window.WeixinJSBridge.invoke('openAppManage', {}, function (res) {
|
|
171
|
+
console.log(res.err_msg);
|
|
172
|
+
|
|
173
|
+
if (res.err_msg == 'openAppManage:ok') {// 调用成功
|
|
174
|
+
} else {
|
|
175
|
+
if (!inviteVisible) {
|
|
176
|
+
setInviteVisible(true);
|
|
177
|
+
}
|
|
178
|
+
|
|
179
|
+
setInviteAuth(false);
|
|
180
|
+
}
|
|
181
|
+
});
|
|
182
|
+
}
|
|
183
|
+
}, [inviteVisible]);
|
|
139
184
|
var openWxInvite = (0, _react.useCallback)(function () {
|
|
140
185
|
if (window.WeixinJSBridge !== undefined) {
|
|
141
|
-
window.WeixinJSBridge.invoke(
|
|
186
|
+
window.WeixinJSBridge.invoke('selectPrivilegedContact', {
|
|
142
187
|
fromDepartmentId: -1,
|
|
143
188
|
// 必填,表示打开的通讯录从指定的部门开始展示,-1表示自己所在部门开始, 0表示从最上层开始
|
|
144
|
-
mode:
|
|
189
|
+
mode: 'multi',
|
|
145
190
|
// 必填,选择模式,single表示单选,multi表示多选
|
|
146
191
|
selectedContextContact: 0 // 是否勾选当前环境的参与者。例如在群+号聊天附件栏打开,默认勾选当前群成员。
|
|
147
192
|
|
|
148
193
|
}, function (res) {
|
|
149
|
-
if (res.err_msg ===
|
|
150
|
-
var selectedTicket = res.result.selectedTicket.replace(/['"]/g,
|
|
194
|
+
if (res.err_msg === 'selectPrivilegedContact:ok') {
|
|
195
|
+
var selectedTicket = res.result.selectedTicket.replace(/['"]/g, ''); // 已选的集合Ticket
|
|
151
196
|
|
|
152
|
-
(0, _request.rpost)(
|
|
153
|
-
_toast["default"].Success(
|
|
197
|
+
(0, _request.rpost)('v1')("wx/send/templateMessage?selectedTickets=".concat(selectedTicket)).then(function () {
|
|
198
|
+
_toast["default"].Success('邀请成功');
|
|
154
199
|
})["catch"](function () {
|
|
155
|
-
_toast["default"].Error(
|
|
200
|
+
_toast["default"].Error('邀请失败');
|
|
156
201
|
});
|
|
157
202
|
} else {// console.log(res);
|
|
158
203
|
}
|
|
@@ -162,16 +207,16 @@ var NavTop = function NavTop() {
|
|
|
162
207
|
|
|
163
208
|
var handleHashChange = function handleHashChange() {
|
|
164
209
|
setAppCenterVisible(false);
|
|
165
|
-
var hash = window.location.hash.split(
|
|
210
|
+
var hash = window.location.hash.split('?')[0] || '';
|
|
166
211
|
|
|
167
212
|
if (hash) {
|
|
168
213
|
var activeMenu = menu.find(function (item) {
|
|
169
214
|
var _item$href$split, _item$href$split$;
|
|
170
215
|
|
|
171
|
-
return hash.includes((_item$href$split = item.href.split(
|
|
216
|
+
return hash.includes((_item$href$split = item.href.split('#')) === null || _item$href$split === void 0 ? void 0 : (_item$href$split$ = _item$href$split[1]) === null || _item$href$split$ === void 0 ? void 0 : _item$href$split$.split('?')[0]);
|
|
172
217
|
});
|
|
173
218
|
|
|
174
|
-
if (hash.includes(
|
|
219
|
+
if (hash.includes('homepage')) {
|
|
175
220
|
setActiveMenuId(99999);
|
|
176
221
|
return;
|
|
177
222
|
}
|
|
@@ -186,9 +231,9 @@ var NavTop = function NavTop() {
|
|
|
186
231
|
|
|
187
232
|
(0, _react.useEffect)(function () {
|
|
188
233
|
handleHashChange();
|
|
189
|
-
window.addEventListener(
|
|
234
|
+
window.addEventListener('hashchange', handleHashChange);
|
|
190
235
|
return function () {
|
|
191
|
-
window.removeEventListener(
|
|
236
|
+
window.removeEventListener('hashchange', handleHashChange);
|
|
192
237
|
};
|
|
193
238
|
}, [menu]);
|
|
194
239
|
(0, _react.useEffect)(function () {
|
|
@@ -211,6 +256,10 @@ var NavTop = function NavTop() {
|
|
|
211
256
|
}
|
|
212
257
|
}, [appCenterVisible]);
|
|
213
258
|
|
|
259
|
+
var handleCloseInviteGuide = function handleCloseInviteGuide() {
|
|
260
|
+
setInviteVisible(false);
|
|
261
|
+
};
|
|
262
|
+
|
|
214
263
|
var handleCloseSummaryGuide = function handleCloseSummaryGuide() {
|
|
215
264
|
setSummaryGuideVisible(false);
|
|
216
265
|
var loginUserId = BSGlobal.loginUserInfo.Id;
|
|
@@ -272,6 +321,36 @@ var NavTop = function NavTop() {
|
|
|
272
321
|
}
|
|
273
322
|
};
|
|
274
323
|
|
|
324
|
+
var renderInviteContent = (0, _react.useCallback)(function () {
|
|
325
|
+
var title = '你没有权限,快去联系企业微信超级管理员操';
|
|
326
|
+
if (!inviteAuth) return /*#__PURE__*/_react["default"].createElement("div", {
|
|
327
|
+
className: "".concat(preCls, "__invite-guide-content")
|
|
328
|
+
}, /*#__PURE__*/_react["default"].createElement("img", {
|
|
329
|
+
src: _inviteTanhao["default"],
|
|
330
|
+
alt: "",
|
|
331
|
+
className: "".concat(preCls, "__invite-guide-content-waring")
|
|
332
|
+
}), /*#__PURE__*/_react["default"].createElement("div", {
|
|
333
|
+
className: "".concat(preCls, "__invite-guide-content-right")
|
|
334
|
+
}, /*#__PURE__*/_react["default"].createElement("div", {
|
|
335
|
+
className: "".concat(preCls, "__invite-guide-content-title")
|
|
336
|
+
}, title)));
|
|
337
|
+
title = showMangeAdd ? '点击这里进入企业微信后台,添加公司员工,体验更多功能' : '邀请同事一起体验吧';
|
|
338
|
+
var subtitle = '试用 7 天内成功邀请 3 人加入,即可免费开启试用 OKR 案例库';
|
|
339
|
+
return /*#__PURE__*/_react["default"].createElement("div", {
|
|
340
|
+
className: "".concat(preCls, "__invite-guide-content")
|
|
341
|
+
}, /*#__PURE__*/_react["default"].createElement("img", {
|
|
342
|
+
src: _invitePoint["default"],
|
|
343
|
+
alt: "",
|
|
344
|
+
className: "".concat(preCls, "__invite-guide-content-point")
|
|
345
|
+
}), /*#__PURE__*/_react["default"].createElement("div", {
|
|
346
|
+
className: "".concat(preCls, "__invite-guide-content-right")
|
|
347
|
+
}, /*#__PURE__*/_react["default"].createElement("div", {
|
|
348
|
+
className: "".concat(preCls, "__invite-guide-content-title")
|
|
349
|
+
}, title), /*#__PURE__*/_react["default"].createElement("div", {
|
|
350
|
+
className: "".concat(preCls, "__invite-guide-content-subTitle")
|
|
351
|
+
}, subtitle)));
|
|
352
|
+
}, [inviteAuth]);
|
|
353
|
+
|
|
275
354
|
var isHasOkr = function isHasOkr() {
|
|
276
355
|
//判断是否安装了OKR
|
|
277
356
|
var okrIndex = (0, _bsGlobal.getBSGlobal)('WebHead').AppHead.findIndex(function (item) {
|
|
@@ -288,9 +367,9 @@ var NavTop = function NavTop() {
|
|
|
288
367
|
(0, _react.useEffect)(function () {
|
|
289
368
|
var version = (0, _bsGlobal.getBSGlobal)('tenantAuthentication').Version;
|
|
290
369
|
if (localStorage.getItem("cycle_setting_stop_show".concat((0, _bsGlobal.getUserInfo)().Id)) === 'true') return;
|
|
291
|
-
localStorage.removeItem(
|
|
370
|
+
localStorage.removeItem('OKR_CYCLE_SETTING');
|
|
292
371
|
(0, _request2.getCycleSetting)().then(function (res) {
|
|
293
|
-
localStorage.setItem(
|
|
372
|
+
localStorage.setItem('OKR_CYCLE_SETTING', JSON.stringify(res || {}));
|
|
294
373
|
var hasSetting = res.hasSetting;
|
|
295
374
|
|
|
296
375
|
if (version === 1 && isHasOkr() && !hasSetting) {
|
|
@@ -328,7 +407,7 @@ var NavTop = function NavTop() {
|
|
|
328
407
|
onClickClose: handleCloseSummaryGuide,
|
|
329
408
|
width: 197
|
|
330
409
|
}, /*#__PURE__*/_react["default"].createElement("span", {
|
|
331
|
-
className: (0, _classnames["default"])("".concat(preCls, "__left-app-center"),
|
|
410
|
+
className: (0, _classnames["default"])("".concat(preCls, "__left-app-center"), 'document-mouse-event-ignore', _defineProperty({}, "".concat(preCls, "__left-app-center--active"), appCenterVisible)),
|
|
332
411
|
onClick: function onClick() {
|
|
333
412
|
return setAppCenterVisible(!appCenterVisible);
|
|
334
413
|
}
|
|
@@ -339,7 +418,63 @@ var NavTop = function NavTop() {
|
|
|
339
418
|
}, /*#__PURE__*/_react["default"].createElement(_menu["default"], {
|
|
340
419
|
menus: menu,
|
|
341
420
|
activeMenuId: activeMenuId
|
|
342
|
-
})),
|
|
421
|
+
})), showWxInvite && (staffCount > 3 ? /*#__PURE__*/_react["default"].createElement(_tooltip["default"], {
|
|
422
|
+
overlay: '邀请同事',
|
|
423
|
+
placement: "bottom",
|
|
424
|
+
align: {
|
|
425
|
+
offset: [0, 5]
|
|
426
|
+
}
|
|
427
|
+
}, /*#__PURE__*/_react["default"].createElement("div", {
|
|
428
|
+
className: "".concat(preCls, "__invite"),
|
|
429
|
+
onClick: openWxInvite
|
|
430
|
+
}, /*#__PURE__*/_react["default"].createElement("i", {
|
|
431
|
+
className: (0, _classnames["default"])('tu-icon-add-people', "".concat(preCls, "__invite-icon"))
|
|
432
|
+
}))) : /*#__PURE__*/_react["default"].createElement(_guideTip["default"], {
|
|
433
|
+
visible: inviteVisible,
|
|
434
|
+
content: renderInviteContent(),
|
|
435
|
+
type: inviteAuth ? 'default' : 'button',
|
|
436
|
+
popupPlacement: "bottom",
|
|
437
|
+
classnames: inviteAuth ? "".concat(preCls, "__invite-guide") : '',
|
|
438
|
+
onClickClose: handleCloseInviteGuide,
|
|
439
|
+
popupAlign: {
|
|
440
|
+
offset: [0, 5]
|
|
441
|
+
},
|
|
442
|
+
zIndex: 1000,
|
|
443
|
+
width: 308
|
|
444
|
+
}, /*#__PURE__*/_react["default"].createElement("div", {
|
|
445
|
+
className: "".concat(preCls, "__invite"),
|
|
446
|
+
onClick: openWxInvite
|
|
447
|
+
}, /*#__PURE__*/_react["default"].createElement("i", {
|
|
448
|
+
className: (0, _classnames["default"])('tu-icon-add-people', "".concat(preCls, "__invite-icon"))
|
|
449
|
+
})))), showMangeAdd && (staffCount > 3 && inviteAuth ? /*#__PURE__*/_react["default"].createElement(_tooltip["default"], {
|
|
450
|
+
overlay: '添加员工',
|
|
451
|
+
placement: "bottom",
|
|
452
|
+
align: {
|
|
453
|
+
offset: [0, 5]
|
|
454
|
+
}
|
|
455
|
+
}, /*#__PURE__*/_react["default"].createElement("div", {
|
|
456
|
+
className: "".concat(preCls, "__invite"),
|
|
457
|
+
onClick: manageAdd
|
|
458
|
+
}, /*#__PURE__*/_react["default"].createElement("i", {
|
|
459
|
+
className: (0, _classnames["default"])('tu-icon-add-people', "".concat(preCls, "__invite-icon"))
|
|
460
|
+
}))) : /*#__PURE__*/_react["default"].createElement(_guideTip["default"], {
|
|
461
|
+
visible: inviteVisible,
|
|
462
|
+
content: renderInviteContent(),
|
|
463
|
+
type: inviteAuth ? 'default' : 'button',
|
|
464
|
+
popupPlacement: "bottom",
|
|
465
|
+
classnames: inviteAuth ? "".concat(preCls, "__invite-guide") : '',
|
|
466
|
+
onClickClose: handleCloseInviteGuide,
|
|
467
|
+
popupAlign: {
|
|
468
|
+
offset: [0, 5]
|
|
469
|
+
},
|
|
470
|
+
zIndex: 1000,
|
|
471
|
+
width: 308
|
|
472
|
+
}, /*#__PURE__*/_react["default"].createElement("div", {
|
|
473
|
+
className: "".concat(preCls, "__invite"),
|
|
474
|
+
onClick: manageAdd
|
|
475
|
+
}, /*#__PURE__*/_react["default"].createElement("i", {
|
|
476
|
+
className: (0, _classnames["default"])('tu-icon-add-people', "".concat(preCls, "__invite-icon"))
|
|
477
|
+
})))), hasOKRApp && /*#__PURE__*/_react["default"].createElement("div", {
|
|
343
478
|
className: (0, _classnames["default"])("".concat(preCls, "__left-home"), (_classNames4 = {}, _defineProperty(_classNames4, "".concat(preCls, "__left-home--active"), activeMenuId === 99999), _defineProperty(_classNames4, "".concat(preCls, "__left-home--hover"), hasOKRApp), _classNames4))
|
|
344
479
|
}, /*#__PURE__*/_react["default"].createElement("a", {
|
|
345
480
|
href: "#homepage"
|
|
@@ -347,12 +482,7 @@ var NavTop = function NavTop() {
|
|
|
347
482
|
alt: "home-img",
|
|
348
483
|
src: _home["default"],
|
|
349
484
|
className: "".concat(preCls, "__left-home-img")
|
|
350
|
-
}))),
|
|
351
|
-
className: "".concat(preCls, "__invite"),
|
|
352
|
-
onClick: openWxInvite
|
|
353
|
-
}, /*#__PURE__*/_react["default"].createElement("i", {
|
|
354
|
-
className: (0, _classnames["default"])("tu-icon-add-people", "".concat(preCls, "__invite-icon"))
|
|
355
|
-
})), /*#__PURE__*/_react["default"].createElement("div", {
|
|
485
|
+
}))), /*#__PURE__*/_react["default"].createElement("div", {
|
|
356
486
|
className: "".concat(preCls, "__msg")
|
|
357
487
|
}, /*#__PURE__*/_react["default"].createElement(_userMessage["default"], null)), versionInfo.Version === 1 && /*#__PURE__*/_react["default"].createElement("div", {
|
|
358
488
|
className: "".concat(preCls, "__version")
|