@titaui/pc 1.11.4-14 → 1.11.4-18

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.
@@ -119,5 +119,5 @@ var EStatusStatus2ClassType = {
119
119
  5: 'tu-icon-jiantou-right'
120
120
  };
121
121
  exports.EStatusStatus2ClassType = EStatusStatus2ClassType;
122
- var PlanReportType = ['titaPlanReport'];
122
+ var PlanReportType = ['titaPlanReport', 'titaPlanManagerReport'];
123
123
  exports.PlanReportType = PlanReportType;
@@ -64,7 +64,7 @@ var EReportShare = /*#__PURE__*/function (_PureComponent) {
64
64
  var _this$props = _this.props,
65
65
  onSubmit = _this$props.onSubmit,
66
66
  workId = _this$props.workId;
67
- sentData.ObjType = 4;
67
+ sentData.ObjType = 62;
68
68
  sentData.ObjId = workId;
69
69
 
70
70
  if (submitType === 'submit') {
@@ -19,6 +19,8 @@ var _dateTestChange = require("../../../utils/date-test-change");
19
19
 
20
20
  var _openData = require("../../../utils/open-data");
21
21
 
22
+ var _getLocale = require("../../../utils/getLocale");
23
+
22
24
  require("./index.css");
23
25
 
24
26
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; }
@@ -54,7 +56,11 @@ function PersonalOkr(props) {
54
56
 
55
57
  var toolTipRef = (0, _react.useRef)();
56
58
  (0, _react.useEffect)(function () {
57
- setSubUpdateTime((0, _dateTestChange.judgeTimeSpaceFromNow)(updateTime));
59
+ if (updateTime) {
60
+ setSubUpdateTime((0, _dateTestChange.judgeTimeSpaceFromNow)(updateTime) + (0, _getLocale.getLocale)('OKR_MyO_Butt_Update'));
61
+ } else {
62
+ setSubUpdateTime((0, _getLocale.getLocale)('OKR_MyO_KRP_Notupdated'));
63
+ }
58
64
  }, [updateTime]);
59
65
  return /*#__PURE__*/_react["default"].createElement("div", {
60
66
  className: "subOKRComponents-PersonalOkr"
@@ -85,15 +91,15 @@ function PersonalOkr(props) {
85
91
  id: userId
86
92
  }))), /*#__PURE__*/_react["default"].createElement("span", {
87
93
  className: "subOKRComponents-PersonalOkr__left__updatetime"
88
- }, subUpdateTime, "\u66F4\u65B0"))), /*#__PURE__*/_react["default"].createElement("span", {
94
+ }, subUpdateTime))), /*#__PURE__*/_react["default"].createElement("span", {
89
95
  className: "subOKRComponents-PersonalOkr__right"
90
96
  }, /*#__PURE__*/_react["default"].createElement("div", {
91
97
  className: "subOKRComponents-PersonalOkr__right__percentNum"
92
98
  }, num, "%"), /*#__PURE__*/_react["default"].createElement("div", {
93
99
  style: {
94
- position: "absolute",
95
- right: "-8px",
96
- bottom: "0"
100
+ position: 'absolute',
101
+ right: '-8px',
102
+ bottom: '0'
97
103
  }
98
104
  }, /*#__PURE__*/_react["default"].createElement(_index["default"], {
99
105
  percent: num,
@@ -0,0 +1,30 @@
1
+ <?xml version="1.0" encoding="UTF-8"?>
2
+ <svg width="36px" height="26px" viewBox="0 0 36 26" version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
3
+ <title>气泡</title>
4
+ <defs>
5
+ <path d="M26.0757238,0 C26.0757238,0 26.5924276,0.590963041 26.752784,2.04150869 C26.8839846,3.22831876 26.7408566,3.5759702 26.6844729,3.66315551 L26.6693863,3.6833642 L26.6693863,3.6833642 C26.6636971,3.68904201 27.2516704,3.6353181 27.3942094,3.25925071 C27.5358931,2.88547554 28.1011492,5.62102555 27.2497105,6.55512322 C27.2725189,6.60410922 27.2788178,6.63812034 27.2701648,6.65847289 C27.7385548,7.67365164 28,8.80629392 28,10 C28,14.418278 24.418278,18 20,18 L8,18 C3.581722,18 5.41083001e-16,14.418278 0,10 C-5.41083001e-16,5.581722 3.581722,2 8,2 L20,2 C20.4454205,2 20.8823388,2.03640207 21.3079422,2.10639354 C21.2551772,2.04616026 21.2417596,2.01501277 21.2749755,2.02035937 C21.4000713,1.99627315 21.6377016,1.90182651 22.0846325,1.61171738 C22.9398664,1.05657029 23.1002227,0.823766663 23.1002227,0.823766663 C23.1002227,0.823766663 23.2249443,1.19983405 23.1714922,1.53113152 C23.1180401,1.86242898 23.064588,2.05941666 23.064588,2.05941666 C23.064588,2.05941666 24.2583519,1.98778477 24.9888641,1.27146594 C25.7193764,0.555147099 26.0757238,0 26.0757238,0 Z" id="path-1"></path>
6
+ <filter x="-25.0%" y="-27.8%" width="150.0%" height="177.8%" filterUnits="objectBoundingBox" id="filter-2">
7
+ <feOffset dx="0" dy="2" in="SourceAlpha" result="shadowOffsetOuter1"></feOffset>
8
+ <feGaussianBlur stdDeviation="2" in="shadowOffsetOuter1" result="shadowBlurOuter1"></feGaussianBlur>
9
+ <feColorMatrix values="0 0 0 0 0.941176471 0 0 0 0 0.368627451 0 0 0 0 0.368627451 0 0 0 0.4 0" type="matrix" in="shadowBlurOuter1"></feColorMatrix>
10
+ </filter>
11
+ </defs>
12
+ <g id="控件" stroke="none" stroke-width="1" fill="none" fill-rule="evenodd">
13
+ <g id="top-面谈" transform="translate(-797.000000, -7.000000)">
14
+ <g id="一级菜单" transform="translate(204.000000, 3.000000)">
15
+ <g id="气泡" transform="translate(597.000000, 6.000000)">
16
+ <text id="new" font-family="Arial-BoldMT, Arial" font-size="12" font-weight="bold" line-spacing="18" fill="#FFFFFF">
17
+ <tspan x="1" y="11">new</tspan>
18
+ </text>
19
+ <g id="hot" fill-rule="nonzero">
20
+ <g id="形状">
21
+ <use fill="black" fill-opacity="1" filter="url(#filter-2)" xlink:href="#path-1"></use>
22
+ <use fill="#F05E5E" xlink:href="#path-1"></use>
23
+ </g>
24
+ <path d="M4.61115455,12.8702703 L4.61115455,10.2702703 C4.61115455,9.62882883 4.65224568,9.18918919 4.73442794,8.95135135 C4.8166102,8.71351351 4.96855182,8.52252252 5.1902528,8.37837838 C5.41195378,8.23423423 5.662323,8.16216216 5.94136044,8.16216216 C6.15923899,8.16216216 6.34558249,8.21261261 6.50039093,8.31351351 C6.65519937,8.41441441 6.76700547,8.55585586 6.83580923,8.73783784 C6.90461298,8.91981982 6.93901486,9.32072072 6.93901486,9.94054054 L6.93901486,9.94054054 L6.93901486,12.8702703 L8.5501694,12.8702703 L8.5501694,9.3027027 C8.5501694,8.85945946 8.52054557,8.51891892 8.46129789,8.28108108 C8.40205021,8.04324324 8.29693337,7.83063063 8.14594735,7.64324324 C7.99496134,7.45585586 7.77230475,7.3018018 7.47797759,7.18108108 C7.18365042,7.06036036 6.85874381,7 6.50325775,7 C5.69672487,7 5.0277995,7.32432432 4.49648163,7.97297297 L4.49648163,7.97297297 L4.49648163,7.12972973 L3,7.12972973 L3,12.8702703 L4.61115455,12.8702703 Z M12.6669273,13 C13.3358527,13 13.8929719,12.854955 14.3382851,12.5648649 C14.7835983,12.2747748 15.1094605,11.8522523 15.3158718,11.2972973 L15.3158718,11.2972973 L13.7104509,11.0432432 C13.622535,11.3315315 13.4925723,11.5405405 13.3205629,11.6702703 C13.1485536,11.8 12.9364087,11.8648649 12.6841282,11.8648649 C12.3133524,11.8648649 12.0037356,11.7396396 11.7552776,11.4891892 C11.5068196,11.2387387 11.3768569,10.8882883 11.3653896,10.4378378 L11.3653896,10.4378378 L15.4018765,10.4378378 C15.4248111,9.27387387 15.1744418,8.40990991 14.6507688,7.84594595 C14.1270958,7.28198198 13.4123013,7 12.5063852,7 C11.6998523,7 11.0328382,7.26936937 10.5053427,7.80810811 C9.97784728,8.34684685 9.71409956,9.09189189 9.71409956,10.0432432 C9.71409956,10.8396396 9.91477717,11.4990991 10.3161324,12.0216216 C10.8245157,12.6738739 11.608114,13 12.6669273,13 Z M13.8021892,9.50810811 L11.3940579,9.50810811 C11.3902354,9.09369369 11.5029971,8.76576577 11.732343,8.52432432 C11.9616888,8.28288288 12.2521936,8.16216216 12.6038572,8.16216216 C12.9325862,8.16216216 13.2116237,8.27657658 13.4409695,8.50540541 C13.6703154,8.73423423 13.7907219,9.06846847 13.8021892,9.50810811 L13.8021892,9.50810811 Z M19.4154287,12.8702703 L20.447485,9.17837838 L21.4967422,12.8702703 L23.0448267,12.8702703 L25,7.12972973 L23.41178,7.12972973 L22.2478499,10.8918919 L21.2329945,7.12972973 L19.6791764,7.12972973 L18.6299192,10.8918919 L17.4889236,7.12972973 L15.9236383,7.12972973 L17.8501433,12.8702703 L19.4154287,12.8702703 Z" id="new" fill="#FFFFFF"></path>
25
+ </g>
26
+ </g>
27
+ </g>
28
+ </g>
29
+ </g>
30
+ </svg>
@@ -117,6 +117,97 @@
117
117
  position: relative;
118
118
  }
119
119
 
120
+ .titaui-nav-top-menu__tips {
121
+ position: relative;
122
+ }
123
+
124
+ .titaui-nav-top-menu__tips-new {
125
+ width: 36px;
126
+ height: 26px;
127
+ position: absolute;
128
+ top: 6px;
129
+ right: -8px;
130
+ }
131
+
132
+ .titaui-nav-top-menu__tips-box {
133
+ width: 308px;
134
+ height: 142px;
135
+ box-sizing: border-box;
136
+ padding: 16px;
137
+ background: #5c8eff;
138
+ box-shadow: 0px 8px 24px 0px rgba(127, 145, 180, 0.3);
139
+ border: 1px solid #eff0f1;
140
+ border-radius: 12px;
141
+ z-index: 99;
142
+ }
143
+
144
+ .titaui-nav-top-menu__tips-box-head {
145
+ padding-left: 24px;
146
+ background-image: url("./img/wecome-temp.png");
147
+ background-position: 0 0;
148
+ background-repeat: no-repeat;
149
+ background-size: 20px 20px;
150
+ }
151
+
152
+ .titaui-nav-top-menu__tips-box-title {
153
+ display: block;
154
+ font-size: 14px;
155
+ color: #ffffff;
156
+ line-height: 22px;
157
+ font-weight: 600;
158
+ }
159
+
160
+ .titaui-nav-top-menu__tips-box-content {
161
+ font-size: 12px;
162
+ color: #ffffff;
163
+ line-height: 18px;
164
+ margin-top: 10px;
165
+ }
166
+
167
+ .titaui-nav-top-menu__tips-box-ok {
168
+ height: 28px;
169
+ margin-top: 8px;
170
+ margin-left: 210px;
171
+ background: #ffffff;
172
+ box-shadow: 0px -4px 12px 0px rgba(127, 145, 180, 0.2);
173
+ border-radius: 14px;
174
+ box-sizing: border-box;
175
+ padding: 3px 17px;
176
+ font-size: 14px;
177
+ color: #2879ff;
178
+ line-height: 22px;
179
+ cursor: pointer;
180
+ }
181
+
182
+ .titaui-nav-top-menu__tips-triangle {
183
+ position: absolute;
184
+ top: -4px;
185
+ left: 50%;
186
+ margin-left: -4px;
187
+ width: 0;
188
+ height: 0;
189
+ border-left: 5px solid transparent;
190
+ border-right: 5px solid transparent;
191
+ border-bottom: 5px solid #fff;
192
+ }
193
+
194
+ .titaui-nav-top-menu__tips-triangle::after {
195
+ content: '';
196
+ width: 0;
197
+ height: 0;
198
+ position: absolute;
199
+ left: -4px;
200
+ top: 2px;
201
+ border-left: solid 4px transparent;
202
+ border-right: solid 4px transparent;
203
+ border-bottom: solid 4px #5c8eff;
204
+ z-index: 99;
205
+ }
206
+
207
+ .titaui-nav-top-menu__tips-hide {
208
+ display: none;
209
+ }
210
+
120
211
  .titaui-nav-top-menu .rc-overflow-item {
121
212
  position: relative;
122
213
  }
@@ -21,6 +21,8 @@ var _conditionRender = _interopRequireDefault(require("../../../../components/co
21
21
 
22
22
  var _useGlobalValue3 = _interopRequireDefault(require("../../useGlobalValue"));
23
23
 
24
+ var _new = _interopRequireDefault(require("./img/new.svg"));
25
+
24
26
  require("./index.css");
25
27
 
26
28
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; }
@@ -52,6 +54,15 @@ var popupAlign = {
52
54
  },
53
55
  targetOffset: [0, 0]
54
56
  };
57
+ var NewFeatureGuidePopupAlign = {
58
+ offset: [104, -5],
59
+ overflow: {
60
+ adjustX: true,
61
+ adjustY: true
62
+ },
63
+ targetOffset: [0, 0]
64
+ };
65
+ var NEWMENUS = '#/interview';
55
66
 
56
67
  var Menu = function Menu(_ref) {
57
68
  var menus = _ref.menus,
@@ -59,8 +70,13 @@ var Menu = function Menu(_ref) {
59
70
 
60
71
  var _useState = (0, _react.useState)(false),
61
72
  _useState2 = _slicedToArray(_useState, 2),
62
- popupVisible = _useState2[0],
63
- setPopupVisible = _useState2[1];
73
+ isKnow = _useState2[0],
74
+ setIsKonw = _useState2[1];
75
+
76
+ var _useState3 = (0, _react.useState)(false),
77
+ _useState4 = _slicedToArray(_useState3, 2),
78
+ popupVisible = _useState4[0],
79
+ setPopupVisible = _useState4[1];
64
80
 
65
81
  var _useGlobalValue = (0, _useGlobalValue3["default"])(),
66
82
  _useGlobalValue2 = _slicedToArray(_useGlobalValue, 1),
@@ -84,33 +100,66 @@ var Menu = function Menu(_ref) {
84
100
  }
85
101
  };
86
102
 
87
- var handleClickToLearning = function handleClickToLearning() {
88
- window.open("".concat(apiPath, "/").concat(userId, "/eLearningHome#/"), '_self');
103
+ var handleClick = function handleClick() {
104
+ setIsKonw(true);
105
+ localStorage.setItem("isNewMenuItem__".concat(userId), "".concat(userId));
89
106
  };
90
107
 
108
+ (0, _react.useEffect)(function () {
109
+ var isKnow = localStorage.getItem("isNewMenuItem__".concat(userId));
110
+
111
+ if (isKnow) {
112
+ setIsKonw(true);
113
+ }
114
+ }, []);
115
+
116
+ var popup = /*#__PURE__*/_react["default"].createElement("div", {
117
+ className: "".concat(prefix, "__tips")
118
+ }, /*#__PURE__*/_react["default"].createElement("div", {
119
+ className: (0, _classnames["default"])("".concat(prefix, "__tips-box"), _defineProperty({}, "".concat(prefix, "__tips-hide"), isKnow))
120
+ }, /*#__PURE__*/_react["default"].createElement("div", {
121
+ className: "".concat(prefix, "__tips-box-head")
122
+ }, /*#__PURE__*/_react["default"].createElement("h2", {
123
+ className: "".concat(prefix, "__tips-box-title")
124
+ }, "1 : 1 \u9762\u8C08\uFF08\u4E00\u5BF9\u4E00\u9762\u8C08\uFF09\u4E0A\u7EBF\u5566\uFF01"), /*#__PURE__*/_react["default"].createElement("p", {
125
+ className: "".concat(prefix, "__tips-box-content")
126
+ }, "\u52A9\u529B\u7ECF\u7406\u548C\u4E0B\u7EA7\u8FDB\u884C\u6301\u7EED\u6C9F\u901A\uFF0C\u4E3A\u4E0D\u540C\u573A\u666F\u63D0\u4F9B\u4E30\u5BCC\u7684\u6C9F\u901A\u6A21\u677F\uFF0C\u5373\u523B\u4E86\u89E3\uFF0CGo~")), /*#__PURE__*/_react["default"].createElement("div", {
127
+ className: "".concat(prefix, "__tips-box-ok"),
128
+ onClick: handleClick
129
+ }, "\u597D\u54D2")), /*#__PURE__*/_react["default"].createElement("div", {
130
+ className: (0, _classnames["default"])("".concat(prefix, "__tips-triangle"), _defineProperty({}, "".concat(prefix, "__tips-hide"), isKnow))
131
+ }));
132
+
91
133
  var renderRawItem = function renderRawItem(menu) {
134
+ var href = menu.href;
135
+
136
+ if (menu.title === 'Learning') {
137
+ href = "".concat(apiPath, "/").concat(userId, "/eLearningHome#/");
138
+ }
139
+
92
140
  return /*#__PURE__*/_react["default"].createElement(_rcOverflow["default"].Item, {
93
141
  component: "span"
94
142
  }, /*#__PURE__*/_react["default"].createElement(_conditionRender["default"], {
95
- condition: menu.title !== 'Learning'
143
+ condition: menu.id
144
+ }, /*#__PURE__*/_react["default"].createElement(_popup["default"], {
145
+ popupVisible: !isKnow,
146
+ popup: menu.href === NEWMENUS ? popup : null,
147
+ mask: false,
148
+ action: ['focus'],
149
+ popupAlign: NewFeatureGuidePopupAlign
96
150
  }, /*#__PURE__*/_react["default"].createElement("a", {
97
151
  className: (0, _classnames["default"])("".concat(prefix, "__menu-show"), _defineProperty({}, "".concat(prefix, "__menu-show--active"), activeMenuId === menu.id)),
98
- href: "".concat(menu.href),
152
+ href: href,
99
153
  target: "_self",
100
154
  onClick: function onClick() {
101
155
  return handleTracker(menu);
102
156
  }
103
157
  }, menu.title, menu.href === '#dynamic' && feedNum > 0 && /*#__PURE__*/_react["default"].createElement("div", {
104
158
  className: (0, _classnames["default"])("".concat(prefix, "__menu--hasNum"), _defineProperty({}, "".concat(prefix, "__menu--hasNum-active"), activeMenuId === menu.id && menu.href === '#dynamic'))
105
- }, feedNum > 100 ? '99+' : feedNum))), /*#__PURE__*/_react["default"].createElement(_conditionRender["default"], {
106
- condition: menu.title === 'Learning'
107
- }, /*#__PURE__*/_react["default"].createElement("span", {
108
- className: (0, _classnames["default"])("".concat(prefix, "__menu-show"), _defineProperty({}, "".concat(prefix, "__menu-show--active"), activeMenuId === menu.id)),
109
- onClick: function onClick() {
110
- handleTracker(menu);
111
- handleClickToLearning();
112
- }
113
- }, menu.title)));
159
+ }, feedNum > 100 ? '99+' : feedNum), menu.href === NEWMENUS && /*#__PURE__*/_react["default"].createElement("img", {
160
+ src: _new["default"],
161
+ className: "".concat(prefix, "__tips-new")
162
+ })))));
114
163
  };
115
164
 
116
165
  var renderRest = function renderRest(items) {
@@ -122,18 +171,17 @@ var Menu = function Menu(_ref) {
122
171
  var popContent = /*#__PURE__*/_react["default"].createElement("div", {
123
172
  className: "".concat(prefix, "__hide-menus")
124
173
  }, items.map(function (menu) {
174
+ var href = menu.href;
175
+
176
+ if (menu.title === 'Learning') {
177
+ href = "".concat(apiPath, "/").concat(userId, "/eLearningHome#/");
178
+ }
179
+
125
180
  return /*#__PURE__*/_react["default"].createElement("div", null, /*#__PURE__*/_react["default"].createElement(_conditionRender["default"], {
126
- condition: menu.title !== 'Learning'
127
- }, /*#__PURE__*/_react["default"].createElement("a", {
128
- className: (0, _classnames["default"])("".concat(prefix, "__menu-hide"), _defineProperty({}, "".concat(prefix, "__menu-hide--active"), activeMenuId === menu.id)),
129
- href: "".concat(menu.href),
130
- key: menu.id,
131
- target: "_self"
132
- }, menu.title)), /*#__PURE__*/_react["default"].createElement(_conditionRender["default"], {
133
- condition: menu.title === 'Learning'
181
+ condition: menu.id
134
182
  }, /*#__PURE__*/_react["default"].createElement("a", {
135
183
  className: (0, _classnames["default"])("".concat(prefix, "__menu-hide"), _defineProperty({}, "".concat(prefix, "__menu-hide--active"), activeMenuId === menu.id)),
136
- href: "".concat(apiPath, "/").concat(userId, "/eLearningHome#/"),
184
+ href: href,
137
185
  key: menu.id,
138
186
  target: "_self"
139
187
  }, menu.title)));
@@ -94,7 +94,8 @@ function _default(props) {
94
94
  var data = props.data,
95
95
  index = props.index,
96
96
  title = props.title,
97
- key = props.key;
97
+ key = props.key,
98
+ canEditOkr = props.canEditOkr;
98
99
 
99
100
  var _useContext = (0, _react.useContext)(_context2.CommonContext),
100
101
  refreshAll = _useContext.refreshAll,
@@ -155,7 +156,7 @@ function _default(props) {
155
156
  var hasAuth = new _auth.KRAuth({
156
157
  user: data.user,
157
158
  createUserId: data.createUserId
158
- }).hasAuth();
159
+ }).hasAuth() || canEditOkr;
159
160
  var livetime = okrInfo.status != 2;
160
161
  return hasAuth && livetime;
161
162
  }),
@@ -15,6 +15,10 @@ var _requestApis = require("../../../../request-apis");
15
15
 
16
16
  var _rangePickerPop = _interopRequireDefault(require("../../../../../range-picker-pop"));
17
17
 
18
+ var _toast = _interopRequireDefault(require("../../../../../toast"));
19
+
20
+ var _getLocale = require("../../../../../../utils/getLocale");
21
+
18
22
  require("./index.css");
19
23
 
20
24
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; }
@@ -68,6 +72,12 @@ function _default(props) {
68
72
  kr: data,
69
73
  startDate: startDate,
70
74
  endDate: endDate
75
+ }).then(function (resp) {
76
+ if (resp.Code === 1) {
77
+ _toast["default"].Success((0, _getLocale.getLocale)('Mod_Successfuloperat'));
78
+ } else {
79
+ _toast["default"].Error(resp.Message);
80
+ }
71
81
  });
72
82
  rangePicker.current.setRange({
73
83
  startDate: startDate,
@@ -96,6 +96,7 @@ var preCls = "okr-detail-okrs-list";
96
96
 
97
97
  var treeDataFormate = function treeDataFormate(nodes) {
98
98
  var type = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : "kr";
99
+ var canEditOkr = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : false;
99
100
  var formateNodes = [];
100
101
  nodes.forEach(function (it, index) {
101
102
  var title = "";
@@ -107,7 +108,8 @@ var treeDataFormate = function treeDataFormate(nodes) {
107
108
  title: title,
108
109
  isLeaf: true,
109
110
  nodeType: type,
110
- data: it
111
+ data: it,
112
+ canEditOkr: canEditOkr
111
113
  });
112
114
  });
113
115
  return formateNodes;
@@ -272,9 +274,9 @@ var _default = /*#__PURE__*/(0, _react.forwardRef)(function (props, ref) {
272
274
  updateKrs();
273
275
  }, []);
274
276
  (0, _react.useEffect)(function () {
275
- var strucKrs = treeDataFormate(pureKrs, "kr");
277
+ var strucKrs = treeDataFormate(pureKrs, "kr", canEditOkr);
276
278
  setKrs(strucKrs);
277
- }, [pureKrs]);
279
+ }, [pureKrs, canEditOkr]);
278
280
 
279
281
  var onAddKrHandler = function onAddKrHandler(kr) {
280
282
  refreshAll();
@@ -49,7 +49,7 @@
49
49
  width: 340px;
50
50
  height: 102px;
51
51
  background: url(../images/private-light.png) no-repeat;
52
- background-size: contain;
52
+ background-size: 340px 102px;
53
53
  }
54
54
 
55
55
  .titaui-okr-flow--node__search {
@@ -37,6 +37,8 @@ var _isEqual = _interopRequireDefault(require("lodash/isEqual"));
37
37
 
38
38
  require("rc-color-picker/assets/index.css");
39
39
 
40
+ var Sentry = _interopRequireWildcard(require("@sentry/browser"));
41
+
40
42
  require("./index.css");
41
43
 
42
44
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; }
@@ -155,6 +157,8 @@ var ExportMapModal = function ExportMapModal(props) {
155
157
  };
156
158
  _context.next = 12;
157
159
  return (0, _html2canvas["default"])(okrMapRef, opts).then(function (result) {
160
+ var _window, _window$BSGlobal, _window$BSGlobal$logi, _window2, _window2$BSGlobal, _window2$BSGlobal$ten;
161
+
158
162
  if ((0, _bsGlobal.isWx)() && window.WWOpenData) {
159
163
  if (window.WWOpenData.enableCanvasSharing) {
160
164
  window.WWOpenData.enableCanvasSharing();
@@ -165,11 +169,69 @@ var ExportMapModal = function ExportMapModal(props) {
165
169
  }
166
170
  }
167
171
 
172
+ var userId = (_window = window) === null || _window === void 0 ? void 0 : (_window$BSGlobal = _window.BSGlobal) === null || _window$BSGlobal === void 0 ? void 0 : (_window$BSGlobal$logi = _window$BSGlobal.loginUserInfo) === null || _window$BSGlobal$logi === void 0 ? void 0 : _window$BSGlobal$logi.Id;
173
+ var telentId = (_window2 = window) === null || _window2 === void 0 ? void 0 : (_window2$BSGlobal = _window2.BSGlobal) === null || _window2$BSGlobal === void 0 ? void 0 : (_window2$BSGlobal$ten = _window2$BSGlobal.tenantInfo) === null || _window2$BSGlobal$ten === void 0 ? void 0 : _window2$BSGlobal$ten.Id;
168
174
  var imgUrl = result.toDataURL('image/png'); // 得到图片的base64编码数据
169
175
 
170
176
  // 得到图片的base64编码数据
177
+ _toast["default"].Warning('导出中,请勿关闭弹窗', {
178
+ canClose: true
179
+ });
180
+
181
+ var equalIndex = imgUrl.indexOf('='); // 获取=号下标
182
+
183
+ // 获取=号下标
184
+ var size = 0;
185
+
186
+ if (equalIndex > 0) {
187
+ var str = imgUrl.substring(0, equalIndex); // 去除=号
188
+
189
+ // 去除=号
190
+ var strLength = str.length;
191
+ var fileLength = strLength - strLength / 8 * 2; // 真实的图片byte大小
192
+
193
+ // 真实的图片byte大小
194
+ size = Math.floor(fileLength); // 向下取整
195
+ } else {
196
+ var _strLength = imgUrl.length;
197
+
198
+ var _fileLength = _strLength - _strLength / 8 * 2;
199
+
200
+ size = Math.floor(_fileLength); // 向下取整
201
+ }
202
+
203
+ size = size / 1024 / 1024; // @ts-ignore
204
+
205
+ // @ts-ignore
206
+ window.titaTracker && window.titaTracker("action").record({
207
+ actionName: userId + '租户:' + telentId + '我得到了图片大小为:' + size + ',路径为' + imgUrl.slice(1, 200),
208
+ actionGroup: 'okr地图图片',
209
+ productName: 'okr地图导出'
210
+ });
211
+ Sentry.withScope(function (scope) {
212
+ scope.setTag("error-level", "P0");
213
+ scope.setTag("error-type", "地图导出-图片生成");
214
+ scope.setExtra("userMessage", userId + '租户:' + telentId + '我得到了图片大小为:' + size + ',路径为' + imgUrl);
215
+ });
171
216
  (0, _requestApis.getBase64DownloadUrl)(imgUrl.split(',')[1]).then(function (url) {
172
- var image = new Image();
217
+ var image = new Image(); // @ts-ignore
218
+
219
+ // @ts-ignore
220
+ window.titaTracker && window.titaTracker("action").record({
221
+ actionName: userId + '租户:' + telentId + '我获得了地址' + url.Data.obj,
222
+ actionGroup: 'okr地图接口',
223
+ productName: 'okr地图导出'
224
+ });
225
+ Sentry.withScope(function (scope) {
226
+ scope.setTag("error-level", "P0");
227
+ scope.setTag("error-type", "地图导出-图片地址");
228
+ scope.setExtra("userMessage", userId + '租户:' + telentId + '我得到了图片大小为:' + size + ',路径为' + imgUrl);
229
+ });
230
+
231
+ _toast["default"].Warning('图片上传成功,准备本地下载', {
232
+ canClose: true
233
+ });
234
+
173
235
  image.setAttribute('crossOrigin', 'anonymous');
174
236
 
175
237
  image.onload = function () {
@@ -188,9 +250,9 @@ var ExportMapModal = function ExportMapModal(props) {
188
250
  a.download = 'okr地图'; // 设置图片名称
189
251
 
190
252
  // 设置图片名称
191
- a.href = url.Data.obj; // 将生成的URL设置为a.href属性
253
+ a.href = url.Data.obj; // 将生成的URL设置为a
192
254
 
193
- // 将生成的URL设置为a.href属性
255
+ // 将生成的URL设置为a
194
256
  a.dispatchEvent(event); // 触发a的单击事件
195
257
 
196
258
  // 触发a的单击事件
@@ -269,6 +331,7 @@ var ExportMapModal = function ExportMapModal(props) {
269
331
  onOk: confirmHandler,
270
332
  onCancel: onCloseHandler,
271
333
  ref: modalRef,
334
+ confirmLoading: isExport,
272
335
  className: "export-map-modal titaui-dialog",
273
336
  forceRender: true
274
337
  }, /*#__PURE__*/_react["default"].createElement(_react["default"].Fragment, null, /*#__PURE__*/_react["default"].createElement("div", {
@@ -29,6 +29,8 @@ var _tools = require("../../utils/tools");
29
29
 
30
30
  require("./index.css");
31
31
 
32
+ var _helpers = require("../../utils/helpers");
33
+
32
34
  var _window$BSGlobal, _window$BSGlobal$tena, _window$BSGlobal2, _window$BSGlobal2$ten;
33
35
 
34
36
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; }
@@ -104,6 +106,7 @@ var SurveyModel = function SurveyModel(_ref) {
104
106
 
105
107
  (0, _react.useEffect)(function () {
106
108
  if (Version === 1) return;
109
+ if ((0, _helpers.isDingDing)()) return;
107
110
  if (!!window.location.hostname.match(/.work/)) return;
108
111
  var newDate = (0, _dayjs["default"])();
109
112
  var oldDate = localStorage.getItem("survey_model_date__".concat(loginUserInfo.Id));
@@ -79,53 +79,47 @@ var TimePicker = function TimePicker(props) {
79
79
  var mInputRef = (0, _react.useRef)();
80
80
  var minuteRef = (0, _react.useRef)((0, _moment["default"])(value || '00:00', timeFormat).format('mm'));
81
81
  var triggerRef = (0, _react.useRef)();
82
- var timerRef = (0, _react.useRef)();
83
82
  var hours = (0, _utils.getHours)(hourStep);
84
83
  var minutes = (0, _utils.getMinutes)(minuteStep);
85
84
 
86
85
  var onTimeChange = function onTimeChange() {
87
- onChange === null || onChange === void 0 ? void 0 : onChange("".concat(hourRef.current, ":").concat(minuteRef.current));
86
+ return onChange === null || onChange === void 0 ? void 0 : onChange("".concat(hourRef.current, ":").concat(minuteRef.current));
88
87
  };
89
88
 
90
- var onInputClick = function onInputClick(type) {
91
- clearTimeout(timerRef.current);
92
- timerRef.current = setTimeout(function () {
93
- if (type === 'hour') {
94
- var _hInputRef$current;
95
-
96
- (_hInputRef$current = hInputRef.current) === null || _hInputRef$current === void 0 ? void 0 : _hInputRef$current.focus();
97
- } else {
98
- var _mInputRef$current;
99
-
100
- (_mInputRef$current = mInputRef.current) === null || _mInputRef$current === void 0 ? void 0 : _mInputRef$current.focus();
101
- }
102
-
103
- setTimeSettingType(function () {
104
- return type;
105
- });
106
- }, 0);
89
+ var onBlurHandler = function onBlurHandler() {
90
+ return setTimeSettingType('');
107
91
  };
108
92
 
109
93
  var onFocusHandler = function onFocusHandler(type) {
110
- setTimeSettingType(function () {
94
+ return setTimeSettingType(function () {
111
95
  return type;
112
96
  });
113
97
  };
114
98
 
115
- var onHourInputBlur = function onHourInputBlur() {
116
- // setHour((prevHour) => {
117
- // const prevHour = hourRef.current;
118
- // let nextHour = (Array(2).join("0") + prevHour).slice(-2);
119
- // if (Number(prevHour) > Number(hours[hours.length - 1])) {
120
- // nextHour = `0${prevHour.slice(0, 1)}`;
121
- // }
122
- // hourRef.current = nextHour;
123
- // });
124
- // if (timeSetType === "hour" && hInputRef.current) {
125
- // hInputRef.current.focus();
126
- // }
127
- // onTimeChange();
128
- setTimeSettingType('');
99
+ var onKeyDownHandler = function onKeyDownHandler(e) {
100
+ if (!e) return;
101
+ var keyCode = e.keyCode;
102
+
103
+ if ([_utils.KEYCODE.directionLeft, _utils.KEYCODE.directionRight].includes(keyCode)) {
104
+ setTimeSettingType(_utils.TargetMapByKeyCode[keyCode]);
105
+ }
106
+
107
+ if ([_utils.KEYCODE.directionUp, _utils.KEYCODE.directionDown].includes(keyCode)) {
108
+ switch (timeSetingtType) {
109
+ case 'hour':
110
+ hourRef.current = setTimeOnKeyboardDirectionChange(keyCode, 'hour', hourRef.current);
111
+ break;
112
+
113
+ case 'minute':
114
+ minuteRef.current = setTimeOnKeyboardDirectionChange(keyCode, 'minute', minuteRef.current);
115
+ break;
116
+
117
+ default:
118
+ break;
119
+ }
120
+
121
+ onTimeChange();
122
+ }
129
123
  };
130
124
 
131
125
  var onHourInputChange = function onHourInputChange(e) {
@@ -143,32 +137,6 @@ var TimePicker = function TimePicker(props) {
143
137
  }
144
138
  };
145
139
 
146
- var onMinuteInputBlur = function onMinuteInputBlur() {
147
- // setMinute((prevMinute) => {
148
- // let nextMinute = minuteRef.current;
149
- // minutes.forEach((m, i) => {
150
- // const mNum = Number(m);
151
- // const nextMinuteNum = Number(nextMinute);
152
- // if (mNum === nextMinuteNum) {
153
- // nextMinute = m;
154
- // } else if (
155
- // mNum < nextMinuteNum
156
- // && Number(minutes[i + 1]) > nextMinuteNum
157
- // ) {
158
- // nextMinute = m;
159
- // } else if (nextMinuteNum > Number(minutes[minutes.length - 1])) {
160
- // nextMinute = "00";
161
- // }
162
- // });
163
- // minuteRef.current = nextMinute;
164
- // });
165
- // if (timeSetType === "minute" && mInputRef.current) {
166
- // mInputRef.current.focus();
167
- // }
168
- // onTimeChange();
169
- setTimeSettingType('');
170
- };
171
-
172
140
  var onMinuteInputChange = function onMinuteInputChange(e) {
173
141
  var v = e.target.value;
174
142
 
@@ -229,76 +197,52 @@ var TimePicker = function TimePicker(props) {
229
197
  return currTime;
230
198
  };
231
199
 
232
- var handleKeyDown = function handleKeyDown(e) {
233
- var keyCode = e.keyCode;
234
-
235
- if ([_utils.KEYCODE.directionLeft, _utils.KEYCODE.directionRight].includes(keyCode)) {
236
- setTimeSettingType(_utils.TargetMapByKeyCode[keyCode]);
237
- }
238
-
239
- if ([_utils.KEYCODE.directionUp, _utils.KEYCODE.directionDown].indexOf(keyCode) === -1) return;
240
-
241
- switch (timeSetingtType) {
242
- case 'hour':
243
- hourRef.current = setTimeOnKeyboardDirectionChange(keyCode, 'hour', hourRef.current);
244
- break;
245
-
246
- case 'minute':
247
- minuteRef.current = setTimeOnKeyboardDirectionChange(keyCode, 'minute', minuteRef.current);
248
- break;
249
-
250
- default:
251
- break;
252
- }
253
-
254
- onTimeChange();
200
+ var showSelectorPop = function showSelectorPop() {
201
+ return setVisible(true);
255
202
  };
256
203
 
257
- (0, _react.useEffect)(function () {
258
- document.removeEventListener('keydown', handleKeyDown);
259
- enableKeyBoard && timeSetingtType && document.addEventListener('keydown', handleKeyDown);
260
- return function () {
261
- clearTimeout(timerRef.current);
262
- document.removeEventListener('keydown', handleKeyDown);
263
- };
264
- }, [timeSetingtType]);
265
204
  return /*#__PURE__*/_react["default"].createElement("div", {
266
205
  className: _utils.TimePickerClass
267
206
  }, /*#__PURE__*/_react["default"].createElement("div", {
268
207
  className: (0, _classnames["default"])("".concat(_utils.TimePickerClass, "-trigger"), _defineProperty({}, "".concat(_utils.TimePickerClass, "-trigger--disabled"), disabled)),
269
208
  ref: triggerRef
270
209
  }, /*#__PURE__*/_react["default"].createElement("div", {
271
- className: (0, _classnames["default"])("".concat(_utils.TimePickerClass, "-inputs"), _defineProperty({}, "".concat(_utils.TimePickerClass, "-inputs--placeholder"), !value))
272
- }, /*#__PURE__*/_react["default"].createElement(_timerPickerInput["default"], {
210
+ className: (0, _classnames["default"])("".concat(_utils.TimePickerClass, "-inputs"), _defineProperty({}, "".concat(_utils.TimePickerClass, "-inputs--placeholder"), !value)),
211
+ onClick: function onClick() {
212
+ return !enableKeyBoard && showSelectorPop();
213
+ }
214
+ }, /*#__PURE__*/_react["default"].createElement(_timerPickerInput["default"], _extends({
273
215
  className: (0, _classnames["default"])("".concat(_utils.TimePickerClass, "-input"), {
274
- active: timeSetingtType === 'hour'
216
+ active: enableKeyBoard && timeSetingtType === 'hour'
275
217
  }),
276
218
  disabled: disabled,
277
219
  maxLength: 2,
278
- onBlur: onHourInputBlur,
220
+ onBlur: onBlurHandler,
279
221
  onChange: onHourInputChange,
280
222
  onClick: function onClick() {
281
- return onInputClick('hour');
223
+ return !enableKeyBoard && showSelectorPop();
282
224
  },
283
225
  onFocus: function onFocus() {
284
226
  return onFocusHandler('hour');
285
- },
227
+ } // onKeyDown={onKeyDownHandler}
228
+ ,
286
229
  ref: hInputRef,
287
230
  value: hourRef.current
288
- }), /*#__PURE__*/_react["default"].createElement("span", null, ":"), /*#__PURE__*/_react["default"].createElement(_timerPickerInput["default"], {
231
+ }, restProps)), /*#__PURE__*/_react["default"].createElement("span", null, ":"), /*#__PURE__*/_react["default"].createElement(_timerPickerInput["default"], {
289
232
  className: (0, _classnames["default"])("".concat(_utils.TimePickerClass, "-input"), {
290
- active: timeSetingtType === 'minute'
233
+ active: enableKeyBoard && timeSetingtType === 'minute'
291
234
  }),
292
235
  disabled: disabled,
293
236
  maxLength: 2,
294
- onBlur: onMinuteInputBlur,
237
+ onBlur: onBlurHandler,
295
238
  onChange: onMinuteInputChange,
296
239
  onClick: function onClick() {
297
- return onInputClick('minute');
240
+ return !enableKeyBoard && showSelectorPop();
298
241
  },
299
242
  onFocus: function onFocus() {
300
243
  return onFocusHandler('minute');
301
- },
244
+ } // onKeyDown={onKeyDownHandler}
245
+ ,
302
246
  ref: mInputRef,
303
247
  value: minuteRef.current
304
248
  })), !disabled && /*#__PURE__*/_react["default"].createElement(_timePickerSelector["default"], _extends({
@@ -329,9 +273,7 @@ var TimePicker = function TimePicker(props) {
329
273
  }
330
274
  }, restProps), /*#__PURE__*/_react["default"].createElement("span", {
331
275
  className: "".concat(_utils.TimePickerClass, "-icon tu-icon-caret-down"),
332
- onClick: function onClick() {
333
- setVisible(true);
334
- }
276
+ onClick: showSelectorPop
335
277
  }))));
336
278
  };
337
279
 
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@titaui/pc",
3
- "version": "1.11.4-14",
3
+ "version": "1.11.4-18",
4
4
  "nameCN": "",
5
5
  "description": "",
6
6
  "main": "lib/index.js",