@cgboiler/biz-mobile 1.17.5 → 1.17.7
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/index.d.ts +1 -1
- package/es/index.js +1 -1
- package/es/md-preview/index.css +1 -1
- package/es/md-preview/index.less +1 -1
- package/es/org-picker/OrgPicker.js +60 -5
- package/es/org-picker/_atomic.css +8 -0
- package/es/org-picker/index.css +1 -1
- package/es/org-picker/index.less +12 -0
- package/es/org-picker/types.d.ts +5 -0
- package/es/org-picker/useApi.d.ts +8 -5
- package/es/org-picker/useApi.js +36 -1
- package/lib/index.d.ts +1 -1
- package/lib/index.js +1 -1
- package/lib/md-preview/index.css +1 -1
- package/lib/md-preview/index.less +1 -1
- package/lib/org-picker/OrgPicker.js +58 -3
- package/lib/org-picker/_atomic.css +8 -0
- package/lib/org-picker/index.css +1 -1
- package/lib/org-picker/index.less +12 -0
- package/lib/org-picker/types.d.ts +5 -0
- package/lib/org-picker/useApi.d.ts +8 -5
- package/lib/org-picker/useApi.js +36 -1
- package/package.json +2 -2
package/es/index.d.ts
CHANGED
|
@@ -7,7 +7,7 @@ declare namespace _default {
|
|
|
7
7
|
}
|
|
8
8
|
export default _default;
|
|
9
9
|
export function install(app: any): void;
|
|
10
|
-
export const version: "1.17.
|
|
10
|
+
export const version: "1.17.6";
|
|
11
11
|
import MdPreview from './md-preview';
|
|
12
12
|
import OrgPicker from './org-picker';
|
|
13
13
|
import ProjectSelect from './project-select';
|
package/es/index.js
CHANGED
package/es/md-preview/index.css
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
.katex-block{display:block;margin:1em 0;text-align:center;overflow-x:auto;overflow-y:hidden}.cgx-markdown-preview .diff-container{border:1px solid #ebeef5;border-radius:4px;overflow:auto}.cgx-markdown-preview .diff-equal{color:#606266}.cgx-markdown-preview .diff-delete{background-color:#ffeef0;color:#f56c6c;text-decoration:line-through}.cgx-markdown-preview .diff-insert{background-color:#e6ffec;color:#67c23a}.cgx-markdown-preview .diff-unified-view pre{margin:0;padding:8px;white-space:pre-wrap;word-break:break-word}.cgx-markdown-preview{line-height:1.6;font-size:var(--font-base, 16px)}.cgx-markdown-preview ol{list-style:auto}.cgx-markdown-preview ul{list-style:disc}.cgx-markdown-preview ol,.cgx-markdown-preview ul{padding-left:
|
|
1
|
+
.katex-block{display:block;margin:1em 0;text-align:center;overflow-x:auto;overflow-y:hidden}.cgx-markdown-preview .diff-container{border:1px solid #ebeef5;border-radius:4px;overflow:auto}.cgx-markdown-preview .diff-equal{color:#606266}.cgx-markdown-preview .diff-delete{background-color:#ffeef0;color:#f56c6c;text-decoration:line-through}.cgx-markdown-preview .diff-insert{background-color:#e6ffec;color:#67c23a}.cgx-markdown-preview .diff-unified-view pre{margin:0;padding:8px;white-space:pre-wrap;word-break:break-word}.cgx-markdown-preview{line-height:1.6;font-size:var(--font-base, 16px)}.cgx-markdown-preview ol{list-style:auto}.cgx-markdown-preview ul{list-style:disc}.cgx-markdown-preview ol,.cgx-markdown-preview ul{padding-left:1.5em;margin:0 0 12px}.cgx-markdown-preview li::marker{text-align:start!important}.cgx-markdown-preview h1{font-size:2em;font-weight:700;margin:16px 0}.cgx-markdown-preview h2{font-size:1.5em;font-weight:700;margin:14px 0}.cgx-markdown-preview p{margin:12px 0}.cgx-markdown-preview blockquote{margin:0;padding-left:1em;border-left:4px solid #ddd;color:#666}.cgx-markdown-preview table{border-collapse:collapse;width:100%;margin-bottom:16px}.cgx-markdown-preview th,.cgx-markdown-preview td{border:1px solid #ddd;padding:8px;text-align:left}.cgx-markdown-preview th{background-color:#f6f8fa}
|
package/es/md-preview/index.less
CHANGED
|
@@ -18,14 +18,15 @@ var __async = (__this, __arguments, generator) => {
|
|
|
18
18
|
step((generator = generator.apply(__this, __arguments)).next());
|
|
19
19
|
});
|
|
20
20
|
};
|
|
21
|
-
import { createVNode as _createVNode, createTextVNode as _createTextVNode } from "vue";
|
|
21
|
+
import { createVNode as _createVNode, createTextVNode as _createTextVNode, Fragment as _Fragment } from "vue";
|
|
22
22
|
import "./_atomic.css";
|
|
23
23
|
import { defineComponent, ref, computed, watch, nextTick } from "vue";
|
|
24
|
-
import { ActionSheet, Search, List, Image, Empty } from "vant";
|
|
24
|
+
import { ActionSheet, Search, List, Image, Empty, Tabs, Tab } from "vant";
|
|
25
25
|
import DeptImg from "./components/DeptImg";
|
|
26
26
|
import { orgPickerProps } from "./types";
|
|
27
27
|
import { useApi } from "./useApi";
|
|
28
28
|
import "./index.css";
|
|
29
|
+
import { watchEffect, h } from "vue";
|
|
29
30
|
var stdin_default = defineComponent({
|
|
30
31
|
name: "OrgPicker",
|
|
31
32
|
props: orgPickerProps,
|
|
@@ -39,9 +40,12 @@ var stdin_default = defineComponent({
|
|
|
39
40
|
currentDeptId,
|
|
40
41
|
deptPath,
|
|
41
42
|
searchOrgList,
|
|
42
|
-
userList
|
|
43
|
+
userList,
|
|
44
|
+
getRecentSelectedUsers,
|
|
45
|
+
setRecentSelectedUsers
|
|
43
46
|
} = useApi();
|
|
44
47
|
getOrgList();
|
|
48
|
+
const activeTab = ref("zjxz");
|
|
45
49
|
const selectedItems = ref([]);
|
|
46
50
|
watch(() => props.modelValue, (newValue) => {
|
|
47
51
|
var _a;
|
|
@@ -73,16 +77,37 @@ var stdin_default = defineComponent({
|
|
|
73
77
|
selectedItems.value = [item];
|
|
74
78
|
emit("update:modelValue", [item.id]);
|
|
75
79
|
emit("update:show", false);
|
|
80
|
+
setRecentSelectedUsers(selectedItems.value);
|
|
76
81
|
}
|
|
77
82
|
};
|
|
83
|
+
const handleHistorySelect = (item) => {
|
|
84
|
+
selectedItems.value = item.selectedUsers;
|
|
85
|
+
};
|
|
78
86
|
const handleConfirm = () => {
|
|
79
87
|
emit("update:show", false);
|
|
80
88
|
emit("update:modelValue", selectedItems.value.map((item) => item.id));
|
|
89
|
+
setRecentSelectedUsers(selectedItems.value);
|
|
81
90
|
};
|
|
82
91
|
const keyword = ref("");
|
|
83
92
|
const loading = ref(false);
|
|
84
93
|
const finished = ref(true);
|
|
85
94
|
const searchRef = ref();
|
|
95
|
+
const recentSelectedHistory = ref([]);
|
|
96
|
+
const filterRecentSelectedHistory = ref([]);
|
|
97
|
+
watchEffect(() => {
|
|
98
|
+
if (activeTab.value === "zjxz") {
|
|
99
|
+
recentSelectedHistory.value = getRecentSelectedUsers();
|
|
100
|
+
}
|
|
101
|
+
});
|
|
102
|
+
watchEffect(() => {
|
|
103
|
+
if (activeTab.value === "zjxz") {
|
|
104
|
+
if (keyword.value) {
|
|
105
|
+
filterRecentSelectedHistory.value = recentSelectedHistory.value.filter((item) => item.selectedUsers.some((user) => keyword.value.split("").some((char) => user.name.includes(char))));
|
|
106
|
+
} else {
|
|
107
|
+
filterRecentSelectedHistory.value = recentSelectedHistory.value;
|
|
108
|
+
}
|
|
109
|
+
}
|
|
110
|
+
});
|
|
86
111
|
watch(() => props.show, (newVal) => __async(this, null, function* () {
|
|
87
112
|
if (newVal && props.autoFocus) {
|
|
88
113
|
yield nextTick();
|
|
@@ -113,6 +138,15 @@ var stdin_default = defineComponent({
|
|
|
113
138
|
const onLoad = () => {
|
|
114
139
|
finished.value = true;
|
|
115
140
|
};
|
|
141
|
+
const highlightText = (text, keyword2) => {
|
|
142
|
+
if (!keyword2) {
|
|
143
|
+
return text;
|
|
144
|
+
}
|
|
145
|
+
const keywordChars = keyword2.split("");
|
|
146
|
+
return Array.from(text).map((char, index) => keywordChars.some((kChar) => char.toLowerCase() === kChar.toLowerCase()) ? h("span", {
|
|
147
|
+
class: "highlight"
|
|
148
|
+
}, char) : char);
|
|
149
|
+
};
|
|
116
150
|
return () => _createVNode(ActionSheet, {
|
|
117
151
|
"show": props.show,
|
|
118
152
|
"onUpdate:show": (val) => emit("update:show", val),
|
|
@@ -140,7 +174,28 @@ var stdin_default = defineComponent({
|
|
|
140
174
|
"class": "close-icon"
|
|
141
175
|
}, [_createTextVNode("X")])])) : _createVNode("p", {
|
|
142
176
|
"class": "color-[#aaa] text-[14px] text-center w-full leading-[38px]"
|
|
143
|
-
}, [_createTextVNode("\u672A\u9009\u62E9\u4EBA\u5458")])]),
|
|
177
|
+
}, [_createTextVNode("\u672A\u9009\u62E9\u4EBA\u5458")])]), _createVNode(Tabs, {
|
|
178
|
+
"active": activeTab.value,
|
|
179
|
+
"onUpdate:active": ($event) => activeTab.value = $event
|
|
180
|
+
}, {
|
|
181
|
+
default: () => [_createVNode(Tab, {
|
|
182
|
+
"title": "\u6700\u8FD1\u9009\u62E9",
|
|
183
|
+
"name": "zjxz"
|
|
184
|
+
}, null), _createVNode(Tab, {
|
|
185
|
+
"title": "\u901A\u8BAF\u5F55",
|
|
186
|
+
"name": "txl"
|
|
187
|
+
}, null)]
|
|
188
|
+
}), _createVNode("div", {
|
|
189
|
+
"class": "org-content-wrap"
|
|
190
|
+
}, [activeTab.value === "zjxz" ? _createVNode("div", {
|
|
191
|
+
"class": "recent-list-wrap flex-1 overflow-auto px-[16px] py-[8px]"
|
|
192
|
+
}, [filterRecentSelectedHistory.value.length === 0 ? _createVNode(Empty, {
|
|
193
|
+
"description": "\u6682\u65E0\u6700\u8FD1\u9009\u62E9\u8BB0\u5F55"
|
|
194
|
+
}, null) : filterRecentSelectedHistory.value.map((historyItem) => _createVNode("div", {
|
|
195
|
+
"key": historyItem.id,
|
|
196
|
+
"onClick": () => handleHistorySelect(historyItem),
|
|
197
|
+
"class": "px-16px py-8px border-b border-[#eee]"
|
|
198
|
+
}, [_createVNode("span", null, [historyItem.selectedUsers.map((user) => highlightText(user.name, keyword.value)).reduce((prev, curr) => [prev, "\uFF0C", curr])])]))]) : _createVNode(_Fragment, null, [!keyword.value && _createVNode("div", {
|
|
144
199
|
"class": "breadcrumb-nav"
|
|
145
200
|
}, [deptPath.value.map((dept, index) => _createVNode("span", {
|
|
146
201
|
"key": dept.id
|
|
@@ -174,7 +229,7 @@ var stdin_default = defineComponent({
|
|
|
174
229
|
}, [item.name, _createVNode("span", {
|
|
175
230
|
"class": "org-item-select-icon"
|
|
176
231
|
}, [_createTextVNode("\u2713")])])]))]
|
|
177
|
-
})]), props.multiple && _createVNode("div", {
|
|
232
|
+
})])])]), props.multiple && _createVNode("div", {
|
|
178
233
|
"class": "bottom-section"
|
|
179
234
|
}, [_createVNode("div", {
|
|
180
235
|
"class": "action-buttons"
|
|
@@ -32,6 +32,14 @@
|
|
|
32
32
|
|
|
33
33
|
/* layer: default */
|
|
34
34
|
.cgx-atm .w-full{width:100%;}
|
|
35
|
+
.cgx-atm .flex-1{flex:1 1 0%;}
|
|
36
|
+
.cgx-atm .overflow-auto{overflow:auto;}
|
|
37
|
+
.cgx-atm .border-b{border-bottom-width:1px;border-bottom-style:solid;}
|
|
38
|
+
.cgx-atm .border-\[\#eee\]{--un-border-opacity:1;border-color:rgba(238,238,238,var(--un-border-opacity));}
|
|
39
|
+
.cgx-atm .px-\[16px\],
|
|
40
|
+
.cgx-atm .px-16px{padding-left:16px;padding-right:16px;}
|
|
41
|
+
.cgx-atm .py-\[8px\],
|
|
42
|
+
.cgx-atm .py-8px{padding-top:8px;padding-bottom:8px;}
|
|
35
43
|
.cgx-atm .text-center{text-align:center;}
|
|
36
44
|
.cgx-atm .text-\[14px\]{font-size:14px;}
|
|
37
45
|
.cgx-atm .leading-\[38px\]{line-height:38px;}
|
package/es/org-picker/index.css
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
:root:root{--van-action-sheet-max-height: 100%}.org-list{height:85vh;display:flex;flex-direction:column}.org-list .breadcrumb-nav{margin-bottom:4px;padding:2px 16px;border-radius:4px;font-size:12px}.org-list .breadcrumb-nav .dept-name.current-dept{color:#969799}.org-list .breadcrumb-nav .separator{color:#969799;margin:0 4px}.org-list .search-bar{position:-webkit-sticky;position:-webkit-sticky;position:sticky;top:0;z-index:1}.org-list .org-selected-items{display:flex;flex-wrap:nowrap;padding:12px 16px;gap:12px;background-color:#fff;overflow-x:auto;height:68px;border-bottom:1px solid #eee}.org-list .org-selected-items .selected-tag{flex-shrink:0;background:none;border:none;padding:0;margin:0;position:relative}.org-list .org-selected-items .selected-tag .close-icon{position:absolute;top:0;right:0;z-index:1;background-color:#fff;border-radius:50%;border:1px solid #eee;width:10px;height:10px;display:flex;align-items:center;justify-content:center;font-size:6px;color:#969799}.org-list .org-selected-items .selected-tag .tag-avatar{width:40px;height:40px}.org-list .org-selected-items .selected-tag .tag-avatar img{border-radius:4px;border:1px solid #eee;object-fit:contain}.org-list .bottom-section{border-top:1px solid #eee;background-color:#fff}.org-list .van-list{flex:1;overflow-y:auto;padding:0 16px}.org-list .feed-list-wrap{flex:1;display:flex;overflow:hidden;position:relative;justify-content:center}.org-list .search-result-list{position:absolute;top:0;left:0;right:0;bottom:0;z-index:1;background-color:#fff;overflow-y:auto;padding:0 16px}.org-list .org-item{padding:12px 0;border-bottom:1px solid #eee;cursor:pointer;display:flex;align-items:center;gap:12px}.org-list .org-item .org-item-select-icon{display:none;padding-left:4px}.org-list .org-item.selected{color:var(--van-primary-color)}.org-list .org-item.selected .org-item-select-icon{display:inline}.org-list .org-item .org-avatar{flex-shrink:0;width:40px;height:40px;display:flex;align-items:center;justify-content:center}.org-list .org-item .org-avatar img{border-radius:4px;border:1px solid #eee;object-fit:contain}.org-list .org-item .org-name{font-size:14px;flex:1}.org-list .org-item:last-child{border-bottom:none}.org-list .action-buttons{padding:16px;display:flex;justify-content:center}.org-list .action-buttons .confirm-button{background-color:var(--van-primary-color);color:#fff;padding:10px 0;border-radius:4px;text-align:center;width:100%;font-size:14px}
|
|
1
|
+
:root:root{--van-action-sheet-max-height: 100%}.org-list{height:85vh;display:flex;flex-direction:column}.org-list .highlight{color:var(--van-primary-color);font-weight:700}.org-list .breadcrumb-nav{margin-bottom:4px;padding:2px 16px;border-radius:4px;font-size:12px}.org-list .breadcrumb-nav .dept-name.current-dept{color:#969799}.org-list .breadcrumb-nav .separator{color:#969799;margin:0 4px}.org-list .search-bar{position:-webkit-sticky;position:-webkit-sticky;position:sticky;top:0;z-index:1}.org-list .org-selected-items{display:flex;flex-wrap:nowrap;padding:12px 16px;gap:12px;background-color:#fff;overflow-x:auto;height:68px;border-bottom:1px solid #eee}.org-list .org-selected-items .selected-tag{flex-shrink:0;background:none;border:none;padding:0;margin:0;position:relative}.org-list .org-selected-items .selected-tag .close-icon{position:absolute;top:0;right:0;z-index:1;background-color:#fff;border-radius:50%;border:1px solid #eee;width:10px;height:10px;display:flex;align-items:center;justify-content:center;font-size:6px;color:#969799}.org-list .org-selected-items .selected-tag .tag-avatar{width:40px;height:40px}.org-list .org-selected-items .selected-tag .tag-avatar img{border-radius:4px;border:1px solid #eee;object-fit:contain}.org-list .bottom-section{border-top:1px solid #eee;background-color:#fff}.org-list .van-list{flex:1;overflow-y:auto;padding:0 16px}.org-list .org-content-wrap{flex:1;display:flex;flex-direction:column;overflow:hidden}.org-list .feed-list-wrap{flex:1;display:flex;overflow:hidden;position:relative;justify-content:center}.org-list .search-result-list{position:absolute;top:0;left:0;right:0;bottom:0;z-index:1;background-color:#fff;overflow-y:auto;padding:0 16px}.org-list .org-item{padding:12px 0;border-bottom:1px solid #eee;cursor:pointer;display:flex;align-items:center;gap:12px}.org-list .org-item .org-item-select-icon{display:none;padding-left:4px}.org-list .org-item.selected{color:var(--van-primary-color)}.org-list .org-item.selected .org-item-select-icon{display:inline}.org-list .org-item .org-avatar{flex-shrink:0;width:40px;height:40px;display:flex;align-items:center;justify-content:center}.org-list .org-item .org-avatar img{border-radius:4px;border:1px solid #eee;object-fit:contain}.org-list .org-item .org-name{font-size:14px;flex:1}.org-list .org-item:last-child{border-bottom:none}.org-list .action-buttons{padding:16px;display:flex;justify-content:center}.org-list .action-buttons .confirm-button{background-color:var(--van-primary-color);color:#fff;padding:10px 0;border-radius:4px;text-align:center;width:100%;font-size:14px}
|
package/es/org-picker/index.less
CHANGED
|
@@ -5,6 +5,11 @@
|
|
|
5
5
|
height: 85vh;
|
|
6
6
|
display: flex;
|
|
7
7
|
flex-direction: column;
|
|
8
|
+
|
|
9
|
+
.highlight {
|
|
10
|
+
color: var(--van-primary-color);
|
|
11
|
+
font-weight: bold;
|
|
12
|
+
}
|
|
8
13
|
|
|
9
14
|
.breadcrumb-nav {
|
|
10
15
|
margin-bottom: 4px;
|
|
@@ -87,6 +92,13 @@
|
|
|
87
92
|
padding: 0 16px;
|
|
88
93
|
}
|
|
89
94
|
|
|
95
|
+
.org-content-wrap {
|
|
96
|
+
flex: 1;
|
|
97
|
+
display: flex;
|
|
98
|
+
flex-direction: column;
|
|
99
|
+
overflow: hidden;
|
|
100
|
+
}
|
|
101
|
+
|
|
90
102
|
.feed-list-wrap {
|
|
91
103
|
flex: 1;
|
|
92
104
|
display: flex;
|
package/es/org-picker/types.d.ts
CHANGED
|
@@ -1,6 +1,7 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { Ref } from 'vue';
|
|
2
|
+
import { type OrgItem, RecentSelection } from './types';
|
|
2
3
|
export declare const useApi: () => {
|
|
3
|
-
userList:
|
|
4
|
+
userList: Ref<{
|
|
4
5
|
[x: string]: any;
|
|
5
6
|
id: string | number;
|
|
6
7
|
name: string;
|
|
@@ -13,7 +14,7 @@ export declare const useApi: () => {
|
|
|
13
14
|
type: string;
|
|
14
15
|
avatar?: string | undefined;
|
|
15
16
|
}[]>;
|
|
16
|
-
orgList:
|
|
17
|
+
orgList: Ref<{
|
|
17
18
|
[x: string]: any;
|
|
18
19
|
id: string | number;
|
|
19
20
|
name: string;
|
|
@@ -27,8 +28,8 @@ export declare const useApi: () => {
|
|
|
27
28
|
avatar?: string | undefined;
|
|
28
29
|
}[]>;
|
|
29
30
|
getOrgList: (deptId?: string) => Promise<void>;
|
|
30
|
-
currentDeptId:
|
|
31
|
-
deptPath:
|
|
31
|
+
currentDeptId: Ref<string, string>;
|
|
32
|
+
deptPath: Ref<{
|
|
32
33
|
id: string | number;
|
|
33
34
|
name: string;
|
|
34
35
|
}[], {
|
|
@@ -39,4 +40,6 @@ export declare const useApi: () => {
|
|
|
39
40
|
name: string;
|
|
40
41
|
}[]>;
|
|
41
42
|
searchOrgList: import("lodash-es").DebouncedFunc<(userName: string) => Promise<void>>;
|
|
43
|
+
getRecentSelectedUsers: () => RecentSelection[];
|
|
44
|
+
setRecentSelectedUsers: (users: OrgItem[]) => void;
|
|
42
45
|
};
|
package/es/org-picker/useApi.js
CHANGED
|
@@ -71,13 +71,48 @@ const useApi = () => {
|
|
|
71
71
|
const url = `https://wflow.cgboiler.com/v1/oa/org/tree/user/search/cloud?userName=${userName}`;
|
|
72
72
|
orgList.value = yield fetchData(url);
|
|
73
73
|
}), 300);
|
|
74
|
+
const RECENT_SELECTED_USERS_KEY = "recent_selected_users_history";
|
|
75
|
+
const MAX_RECENT_SELECTIONS = 15;
|
|
76
|
+
const getRecentSelectedUsers = () => {
|
|
77
|
+
try {
|
|
78
|
+
const data = localStorage.getItem(RECENT_SELECTED_USERS_KEY);
|
|
79
|
+
return data ? JSON.parse(data) : [];
|
|
80
|
+
} catch (error) {
|
|
81
|
+
console.error("Failed to get recent selected users history from localStorage", error);
|
|
82
|
+
return [];
|
|
83
|
+
}
|
|
84
|
+
};
|
|
85
|
+
const setRecentSelectedUsers = (users) => {
|
|
86
|
+
if (!users || users.length === 0)
|
|
87
|
+
return;
|
|
88
|
+
const history = getRecentSelectedUsers();
|
|
89
|
+
const newSelection = {
|
|
90
|
+
id: Date.now().toString(),
|
|
91
|
+
// 使用时间戳作为唯一ID
|
|
92
|
+
selectedUsers: users,
|
|
93
|
+
timestamp: Date.now()
|
|
94
|
+
};
|
|
95
|
+
const filteredHistory = history.filter((item) => {
|
|
96
|
+
return !(item.selectedUsers.length === newSelection.selectedUsers.length && item.selectedUsers.every(
|
|
97
|
+
(user) => newSelection.selectedUsers.some((sUser) => sUser.id === user.id)
|
|
98
|
+
));
|
|
99
|
+
});
|
|
100
|
+
const updatedHistory = [newSelection, ...filteredHistory].slice(0, MAX_RECENT_SELECTIONS);
|
|
101
|
+
try {
|
|
102
|
+
localStorage.setItem(RECENT_SELECTED_USERS_KEY, JSON.stringify(updatedHistory));
|
|
103
|
+
} catch (error) {
|
|
104
|
+
console.error("Failed to set recent selected users history to localStorage", error);
|
|
105
|
+
}
|
|
106
|
+
};
|
|
74
107
|
return {
|
|
75
108
|
userList,
|
|
76
109
|
orgList,
|
|
77
110
|
getOrgList,
|
|
78
111
|
currentDeptId,
|
|
79
112
|
deptPath,
|
|
80
|
-
searchOrgList
|
|
113
|
+
searchOrgList,
|
|
114
|
+
getRecentSelectedUsers,
|
|
115
|
+
setRecentSelectedUsers
|
|
81
116
|
};
|
|
82
117
|
};
|
|
83
118
|
export {
|
package/lib/index.d.ts
CHANGED
|
@@ -7,7 +7,7 @@ declare namespace _default {
|
|
|
7
7
|
}
|
|
8
8
|
export default _default;
|
|
9
9
|
export function install(app: any): void;
|
|
10
|
-
export const version: "1.17.
|
|
10
|
+
export const version: "1.17.6";
|
|
11
11
|
import MdPreview from './md-preview';
|
|
12
12
|
import OrgPicker from './org-picker';
|
|
13
13
|
import ProjectSelect from './project-select';
|
package/lib/index.js
CHANGED
|
@@ -42,7 +42,7 @@ var import_project_select = __toESM(require("./project-select"));
|
|
|
42
42
|
__reExport(stdin_exports, require("./md-preview"), module.exports);
|
|
43
43
|
__reExport(stdin_exports, require("./org-picker"), module.exports);
|
|
44
44
|
__reExport(stdin_exports, require("./project-select"), module.exports);
|
|
45
|
-
const version = "1.17.
|
|
45
|
+
const version = "1.17.6";
|
|
46
46
|
function install(app) {
|
|
47
47
|
const components = [
|
|
48
48
|
import_md_preview.default,
|
package/lib/md-preview/index.css
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
.katex-block{display:block;margin:1em 0;text-align:center;overflow-x:auto;overflow-y:hidden}.cgx-markdown-preview .diff-container{border:1px solid #ebeef5;border-radius:4px;overflow:auto}.cgx-markdown-preview .diff-equal{color:#606266}.cgx-markdown-preview .diff-delete{background-color:#ffeef0;color:#f56c6c;text-decoration:line-through}.cgx-markdown-preview .diff-insert{background-color:#e6ffec;color:#67c23a}.cgx-markdown-preview .diff-unified-view pre{margin:0;padding:8px;white-space:pre-wrap;word-break:break-word}.cgx-markdown-preview{line-height:1.6;font-size:var(--font-base, 16px)}.cgx-markdown-preview ol{list-style:auto}.cgx-markdown-preview ul{list-style:disc}.cgx-markdown-preview ol,.cgx-markdown-preview ul{padding-left:
|
|
1
|
+
.katex-block{display:block;margin:1em 0;text-align:center;overflow-x:auto;overflow-y:hidden}.cgx-markdown-preview .diff-container{border:1px solid #ebeef5;border-radius:4px;overflow:auto}.cgx-markdown-preview .diff-equal{color:#606266}.cgx-markdown-preview .diff-delete{background-color:#ffeef0;color:#f56c6c;text-decoration:line-through}.cgx-markdown-preview .diff-insert{background-color:#e6ffec;color:#67c23a}.cgx-markdown-preview .diff-unified-view pre{margin:0;padding:8px;white-space:pre-wrap;word-break:break-word}.cgx-markdown-preview{line-height:1.6;font-size:var(--font-base, 16px)}.cgx-markdown-preview ol{list-style:auto}.cgx-markdown-preview ul{list-style:disc}.cgx-markdown-preview ol,.cgx-markdown-preview ul{padding-left:1.5em;margin:0 0 12px}.cgx-markdown-preview li::marker{text-align:start!important}.cgx-markdown-preview h1{font-size:2em;font-weight:700;margin:16px 0}.cgx-markdown-preview h2{font-size:1.5em;font-weight:700;margin:14px 0}.cgx-markdown-preview p{margin:12px 0}.cgx-markdown-preview blockquote{margin:0;padding-left:1em;border-left:4px solid #ddd;color:#666}.cgx-markdown-preview table{border-collapse:collapse;width:100%;margin-bottom:16px}.cgx-markdown-preview th,.cgx-markdown-preview td{border:1px solid #ddd;padding:8px;text-align:left}.cgx-markdown-preview th{background-color:#f6f8fa}
|
|
@@ -58,6 +58,7 @@ var import_DeptImg = __toESM(require("./components/DeptImg"));
|
|
|
58
58
|
var import_types = require("./types");
|
|
59
59
|
var import_useApi = require("./useApi");
|
|
60
60
|
var import_index = require("./index.css");
|
|
61
|
+
var import_vue3 = require("vue");
|
|
61
62
|
var stdin_default = (0, import_vue2.defineComponent)({
|
|
62
63
|
name: "OrgPicker",
|
|
63
64
|
props: import_types.orgPickerProps,
|
|
@@ -71,9 +72,12 @@ var stdin_default = (0, import_vue2.defineComponent)({
|
|
|
71
72
|
currentDeptId,
|
|
72
73
|
deptPath,
|
|
73
74
|
searchOrgList,
|
|
74
|
-
userList
|
|
75
|
+
userList,
|
|
76
|
+
getRecentSelectedUsers,
|
|
77
|
+
setRecentSelectedUsers
|
|
75
78
|
} = (0, import_useApi.useApi)();
|
|
76
79
|
getOrgList();
|
|
80
|
+
const activeTab = (0, import_vue2.ref)("zjxz");
|
|
77
81
|
const selectedItems = (0, import_vue2.ref)([]);
|
|
78
82
|
(0, import_vue2.watch)(() => props.modelValue, (newValue) => {
|
|
79
83
|
var _a;
|
|
@@ -105,16 +109,37 @@ var stdin_default = (0, import_vue2.defineComponent)({
|
|
|
105
109
|
selectedItems.value = [item];
|
|
106
110
|
emit("update:modelValue", [item.id]);
|
|
107
111
|
emit("update:show", false);
|
|
112
|
+
setRecentSelectedUsers(selectedItems.value);
|
|
108
113
|
}
|
|
109
114
|
};
|
|
115
|
+
const handleHistorySelect = (item) => {
|
|
116
|
+
selectedItems.value = item.selectedUsers;
|
|
117
|
+
};
|
|
110
118
|
const handleConfirm = () => {
|
|
111
119
|
emit("update:show", false);
|
|
112
120
|
emit("update:modelValue", selectedItems.value.map((item) => item.id));
|
|
121
|
+
setRecentSelectedUsers(selectedItems.value);
|
|
113
122
|
};
|
|
114
123
|
const keyword = (0, import_vue2.ref)("");
|
|
115
124
|
const loading = (0, import_vue2.ref)(false);
|
|
116
125
|
const finished = (0, import_vue2.ref)(true);
|
|
117
126
|
const searchRef = (0, import_vue2.ref)();
|
|
127
|
+
const recentSelectedHistory = (0, import_vue2.ref)([]);
|
|
128
|
+
const filterRecentSelectedHistory = (0, import_vue2.ref)([]);
|
|
129
|
+
(0, import_vue3.watchEffect)(() => {
|
|
130
|
+
if (activeTab.value === "zjxz") {
|
|
131
|
+
recentSelectedHistory.value = getRecentSelectedUsers();
|
|
132
|
+
}
|
|
133
|
+
});
|
|
134
|
+
(0, import_vue3.watchEffect)(() => {
|
|
135
|
+
if (activeTab.value === "zjxz") {
|
|
136
|
+
if (keyword.value) {
|
|
137
|
+
filterRecentSelectedHistory.value = recentSelectedHistory.value.filter((item) => item.selectedUsers.some((user) => keyword.value.split("").some((char) => user.name.includes(char))));
|
|
138
|
+
} else {
|
|
139
|
+
filterRecentSelectedHistory.value = recentSelectedHistory.value;
|
|
140
|
+
}
|
|
141
|
+
}
|
|
142
|
+
});
|
|
118
143
|
(0, import_vue2.watch)(() => props.show, (newVal) => __async(this, null, function* () {
|
|
119
144
|
if (newVal && props.autoFocus) {
|
|
120
145
|
yield (0, import_vue2.nextTick)();
|
|
@@ -145,6 +170,15 @@ var stdin_default = (0, import_vue2.defineComponent)({
|
|
|
145
170
|
const onLoad = () => {
|
|
146
171
|
finished.value = true;
|
|
147
172
|
};
|
|
173
|
+
const highlightText = (text, keyword2) => {
|
|
174
|
+
if (!keyword2) {
|
|
175
|
+
return text;
|
|
176
|
+
}
|
|
177
|
+
const keywordChars = keyword2.split("");
|
|
178
|
+
return Array.from(text).map((char, index) => keywordChars.some((kChar) => char.toLowerCase() === kChar.toLowerCase()) ? (0, import_vue3.h)("span", {
|
|
179
|
+
class: "highlight"
|
|
180
|
+
}, char) : char);
|
|
181
|
+
};
|
|
148
182
|
return () => (0, import_vue.createVNode)(import_vant.ActionSheet, {
|
|
149
183
|
"show": props.show,
|
|
150
184
|
"onUpdate:show": (val) => emit("update:show", val),
|
|
@@ -172,7 +206,28 @@ var stdin_default = (0, import_vue2.defineComponent)({
|
|
|
172
206
|
"class": "close-icon"
|
|
173
207
|
}, [(0, import_vue.createTextVNode)("X")])])) : (0, import_vue.createVNode)("p", {
|
|
174
208
|
"class": "color-[#aaa] text-[14px] text-center w-full leading-[38px]"
|
|
175
|
-
}, [(0, import_vue.createTextVNode)("\u672A\u9009\u62E9\u4EBA\u5458")])]),
|
|
209
|
+
}, [(0, import_vue.createTextVNode)("\u672A\u9009\u62E9\u4EBA\u5458")])]), (0, import_vue.createVNode)(import_vant.Tabs, {
|
|
210
|
+
"active": activeTab.value,
|
|
211
|
+
"onUpdate:active": ($event) => activeTab.value = $event
|
|
212
|
+
}, {
|
|
213
|
+
default: () => [(0, import_vue.createVNode)(import_vant.Tab, {
|
|
214
|
+
"title": "\u6700\u8FD1\u9009\u62E9",
|
|
215
|
+
"name": "zjxz"
|
|
216
|
+
}, null), (0, import_vue.createVNode)(import_vant.Tab, {
|
|
217
|
+
"title": "\u901A\u8BAF\u5F55",
|
|
218
|
+
"name": "txl"
|
|
219
|
+
}, null)]
|
|
220
|
+
}), (0, import_vue.createVNode)("div", {
|
|
221
|
+
"class": "org-content-wrap"
|
|
222
|
+
}, [activeTab.value === "zjxz" ? (0, import_vue.createVNode)("div", {
|
|
223
|
+
"class": "recent-list-wrap flex-1 overflow-auto px-[16px] py-[8px]"
|
|
224
|
+
}, [filterRecentSelectedHistory.value.length === 0 ? (0, import_vue.createVNode)(import_vant.Empty, {
|
|
225
|
+
"description": "\u6682\u65E0\u6700\u8FD1\u9009\u62E9\u8BB0\u5F55"
|
|
226
|
+
}, null) : filterRecentSelectedHistory.value.map((historyItem) => (0, import_vue.createVNode)("div", {
|
|
227
|
+
"key": historyItem.id,
|
|
228
|
+
"onClick": () => handleHistorySelect(historyItem),
|
|
229
|
+
"class": "px-16px py-8px border-b border-[#eee]"
|
|
230
|
+
}, [(0, import_vue.createVNode)("span", null, [historyItem.selectedUsers.map((user) => highlightText(user.name, keyword.value)).reduce((prev, curr) => [prev, "\uFF0C", curr])])]))]) : (0, import_vue.createVNode)(import_vue.Fragment, null, [!keyword.value && (0, import_vue.createVNode)("div", {
|
|
176
231
|
"class": "breadcrumb-nav"
|
|
177
232
|
}, [deptPath.value.map((dept, index) => (0, import_vue.createVNode)("span", {
|
|
178
233
|
"key": dept.id
|
|
@@ -206,7 +261,7 @@ var stdin_default = (0, import_vue2.defineComponent)({
|
|
|
206
261
|
}, [item.name, (0, import_vue.createVNode)("span", {
|
|
207
262
|
"class": "org-item-select-icon"
|
|
208
263
|
}, [(0, import_vue.createTextVNode)("\u2713")])])]))]
|
|
209
|
-
})]), props.multiple && (0, import_vue.createVNode)("div", {
|
|
264
|
+
})])])]), props.multiple && (0, import_vue.createVNode)("div", {
|
|
210
265
|
"class": "bottom-section"
|
|
211
266
|
}, [(0, import_vue.createVNode)("div", {
|
|
212
267
|
"class": "action-buttons"
|
|
@@ -32,6 +32,14 @@
|
|
|
32
32
|
|
|
33
33
|
/* layer: default */
|
|
34
34
|
.cgx-atm .w-full{width:100%;}
|
|
35
|
+
.cgx-atm .flex-1{flex:1 1 0%;}
|
|
36
|
+
.cgx-atm .overflow-auto{overflow:auto;}
|
|
37
|
+
.cgx-atm .border-b{border-bottom-width:1px;border-bottom-style:solid;}
|
|
38
|
+
.cgx-atm .border-\[\#eee\]{--un-border-opacity:1;border-color:rgba(238,238,238,var(--un-border-opacity));}
|
|
39
|
+
.cgx-atm .px-\[16px\],
|
|
40
|
+
.cgx-atm .px-16px{padding-left:16px;padding-right:16px;}
|
|
41
|
+
.cgx-atm .py-\[8px\],
|
|
42
|
+
.cgx-atm .py-8px{padding-top:8px;padding-bottom:8px;}
|
|
35
43
|
.cgx-atm .text-center{text-align:center;}
|
|
36
44
|
.cgx-atm .text-\[14px\]{font-size:14px;}
|
|
37
45
|
.cgx-atm .leading-\[38px\]{line-height:38px;}
|
package/lib/org-picker/index.css
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
:root:root{--van-action-sheet-max-height: 100%}.org-list{height:85vh;display:flex;flex-direction:column}.org-list .breadcrumb-nav{margin-bottom:4px;padding:2px 16px;border-radius:4px;font-size:12px}.org-list .breadcrumb-nav .dept-name.current-dept{color:#969799}.org-list .breadcrumb-nav .separator{color:#969799;margin:0 4px}.org-list .search-bar{position:-webkit-sticky;position:-webkit-sticky;position:sticky;top:0;z-index:1}.org-list .org-selected-items{display:flex;flex-wrap:nowrap;padding:12px 16px;gap:12px;background-color:#fff;overflow-x:auto;height:68px;border-bottom:1px solid #eee}.org-list .org-selected-items .selected-tag{flex-shrink:0;background:none;border:none;padding:0;margin:0;position:relative}.org-list .org-selected-items .selected-tag .close-icon{position:absolute;top:0;right:0;z-index:1;background-color:#fff;border-radius:50%;border:1px solid #eee;width:10px;height:10px;display:flex;align-items:center;justify-content:center;font-size:6px;color:#969799}.org-list .org-selected-items .selected-tag .tag-avatar{width:40px;height:40px}.org-list .org-selected-items .selected-tag .tag-avatar img{border-radius:4px;border:1px solid #eee;object-fit:contain}.org-list .bottom-section{border-top:1px solid #eee;background-color:#fff}.org-list .van-list{flex:1;overflow-y:auto;padding:0 16px}.org-list .feed-list-wrap{flex:1;display:flex;overflow:hidden;position:relative;justify-content:center}.org-list .search-result-list{position:absolute;top:0;left:0;right:0;bottom:0;z-index:1;background-color:#fff;overflow-y:auto;padding:0 16px}.org-list .org-item{padding:12px 0;border-bottom:1px solid #eee;cursor:pointer;display:flex;align-items:center;gap:12px}.org-list .org-item .org-item-select-icon{display:none;padding-left:4px}.org-list .org-item.selected{color:var(--van-primary-color)}.org-list .org-item.selected .org-item-select-icon{display:inline}.org-list .org-item .org-avatar{flex-shrink:0;width:40px;height:40px;display:flex;align-items:center;justify-content:center}.org-list .org-item .org-avatar img{border-radius:4px;border:1px solid #eee;object-fit:contain}.org-list .org-item .org-name{font-size:14px;flex:1}.org-list .org-item:last-child{border-bottom:none}.org-list .action-buttons{padding:16px;display:flex;justify-content:center}.org-list .action-buttons .confirm-button{background-color:var(--van-primary-color);color:#fff;padding:10px 0;border-radius:4px;text-align:center;width:100%;font-size:14px}
|
|
1
|
+
:root:root{--van-action-sheet-max-height: 100%}.org-list{height:85vh;display:flex;flex-direction:column}.org-list .highlight{color:var(--van-primary-color);font-weight:700}.org-list .breadcrumb-nav{margin-bottom:4px;padding:2px 16px;border-radius:4px;font-size:12px}.org-list .breadcrumb-nav .dept-name.current-dept{color:#969799}.org-list .breadcrumb-nav .separator{color:#969799;margin:0 4px}.org-list .search-bar{position:-webkit-sticky;position:-webkit-sticky;position:sticky;top:0;z-index:1}.org-list .org-selected-items{display:flex;flex-wrap:nowrap;padding:12px 16px;gap:12px;background-color:#fff;overflow-x:auto;height:68px;border-bottom:1px solid #eee}.org-list .org-selected-items .selected-tag{flex-shrink:0;background:none;border:none;padding:0;margin:0;position:relative}.org-list .org-selected-items .selected-tag .close-icon{position:absolute;top:0;right:0;z-index:1;background-color:#fff;border-radius:50%;border:1px solid #eee;width:10px;height:10px;display:flex;align-items:center;justify-content:center;font-size:6px;color:#969799}.org-list .org-selected-items .selected-tag .tag-avatar{width:40px;height:40px}.org-list .org-selected-items .selected-tag .tag-avatar img{border-radius:4px;border:1px solid #eee;object-fit:contain}.org-list .bottom-section{border-top:1px solid #eee;background-color:#fff}.org-list .van-list{flex:1;overflow-y:auto;padding:0 16px}.org-list .org-content-wrap{flex:1;display:flex;flex-direction:column;overflow:hidden}.org-list .feed-list-wrap{flex:1;display:flex;overflow:hidden;position:relative;justify-content:center}.org-list .search-result-list{position:absolute;top:0;left:0;right:0;bottom:0;z-index:1;background-color:#fff;overflow-y:auto;padding:0 16px}.org-list .org-item{padding:12px 0;border-bottom:1px solid #eee;cursor:pointer;display:flex;align-items:center;gap:12px}.org-list .org-item .org-item-select-icon{display:none;padding-left:4px}.org-list .org-item.selected{color:var(--van-primary-color)}.org-list .org-item.selected .org-item-select-icon{display:inline}.org-list .org-item .org-avatar{flex-shrink:0;width:40px;height:40px;display:flex;align-items:center;justify-content:center}.org-list .org-item .org-avatar img{border-radius:4px;border:1px solid #eee;object-fit:contain}.org-list .org-item .org-name{font-size:14px;flex:1}.org-list .org-item:last-child{border-bottom:none}.org-list .action-buttons{padding:16px;display:flex;justify-content:center}.org-list .action-buttons .confirm-button{background-color:var(--van-primary-color);color:#fff;padding:10px 0;border-radius:4px;text-align:center;width:100%;font-size:14px}
|
|
@@ -5,6 +5,11 @@
|
|
|
5
5
|
height: 85vh;
|
|
6
6
|
display: flex;
|
|
7
7
|
flex-direction: column;
|
|
8
|
+
|
|
9
|
+
.highlight {
|
|
10
|
+
color: var(--van-primary-color);
|
|
11
|
+
font-weight: bold;
|
|
12
|
+
}
|
|
8
13
|
|
|
9
14
|
.breadcrumb-nav {
|
|
10
15
|
margin-bottom: 4px;
|
|
@@ -87,6 +92,13 @@
|
|
|
87
92
|
padding: 0 16px;
|
|
88
93
|
}
|
|
89
94
|
|
|
95
|
+
.org-content-wrap {
|
|
96
|
+
flex: 1;
|
|
97
|
+
display: flex;
|
|
98
|
+
flex-direction: column;
|
|
99
|
+
overflow: hidden;
|
|
100
|
+
}
|
|
101
|
+
|
|
90
102
|
.feed-list-wrap {
|
|
91
103
|
flex: 1;
|
|
92
104
|
display: flex;
|
|
@@ -1,6 +1,7 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { Ref } from 'vue';
|
|
2
|
+
import { type OrgItem, RecentSelection } from './types';
|
|
2
3
|
export declare const useApi: () => {
|
|
3
|
-
userList:
|
|
4
|
+
userList: Ref<{
|
|
4
5
|
[x: string]: any;
|
|
5
6
|
id: string | number;
|
|
6
7
|
name: string;
|
|
@@ -13,7 +14,7 @@ export declare const useApi: () => {
|
|
|
13
14
|
type: string;
|
|
14
15
|
avatar?: string | undefined;
|
|
15
16
|
}[]>;
|
|
16
|
-
orgList:
|
|
17
|
+
orgList: Ref<{
|
|
17
18
|
[x: string]: any;
|
|
18
19
|
id: string | number;
|
|
19
20
|
name: string;
|
|
@@ -27,8 +28,8 @@ export declare const useApi: () => {
|
|
|
27
28
|
avatar?: string | undefined;
|
|
28
29
|
}[]>;
|
|
29
30
|
getOrgList: (deptId?: string) => Promise<void>;
|
|
30
|
-
currentDeptId:
|
|
31
|
-
deptPath:
|
|
31
|
+
currentDeptId: Ref<string, string>;
|
|
32
|
+
deptPath: Ref<{
|
|
32
33
|
id: string | number;
|
|
33
34
|
name: string;
|
|
34
35
|
}[], {
|
|
@@ -39,4 +40,6 @@ export declare const useApi: () => {
|
|
|
39
40
|
name: string;
|
|
40
41
|
}[]>;
|
|
41
42
|
searchOrgList: import("lodash-es").DebouncedFunc<(userName: string) => Promise<void>>;
|
|
43
|
+
getRecentSelectedUsers: () => RecentSelection[];
|
|
44
|
+
setRecentSelectedUsers: (users: OrgItem[]) => void;
|
|
42
45
|
};
|
package/lib/org-picker/useApi.js
CHANGED
|
@@ -93,12 +93,47 @@ const useApi = () => {
|
|
|
93
93
|
const url = `https://wflow.cgboiler.com/v1/oa/org/tree/user/search/cloud?userName=${userName}`;
|
|
94
94
|
orgList.value = yield fetchData(url);
|
|
95
95
|
}), 300);
|
|
96
|
+
const RECENT_SELECTED_USERS_KEY = "recent_selected_users_history";
|
|
97
|
+
const MAX_RECENT_SELECTIONS = 15;
|
|
98
|
+
const getRecentSelectedUsers = () => {
|
|
99
|
+
try {
|
|
100
|
+
const data = localStorage.getItem(RECENT_SELECTED_USERS_KEY);
|
|
101
|
+
return data ? JSON.parse(data) : [];
|
|
102
|
+
} catch (error) {
|
|
103
|
+
console.error("Failed to get recent selected users history from localStorage", error);
|
|
104
|
+
return [];
|
|
105
|
+
}
|
|
106
|
+
};
|
|
107
|
+
const setRecentSelectedUsers = (users) => {
|
|
108
|
+
if (!users || users.length === 0)
|
|
109
|
+
return;
|
|
110
|
+
const history = getRecentSelectedUsers();
|
|
111
|
+
const newSelection = {
|
|
112
|
+
id: Date.now().toString(),
|
|
113
|
+
// 使用时间戳作为唯一ID
|
|
114
|
+
selectedUsers: users,
|
|
115
|
+
timestamp: Date.now()
|
|
116
|
+
};
|
|
117
|
+
const filteredHistory = history.filter((item) => {
|
|
118
|
+
return !(item.selectedUsers.length === newSelection.selectedUsers.length && item.selectedUsers.every(
|
|
119
|
+
(user) => newSelection.selectedUsers.some((sUser) => sUser.id === user.id)
|
|
120
|
+
));
|
|
121
|
+
});
|
|
122
|
+
const updatedHistory = [newSelection, ...filteredHistory].slice(0, MAX_RECENT_SELECTIONS);
|
|
123
|
+
try {
|
|
124
|
+
localStorage.setItem(RECENT_SELECTED_USERS_KEY, JSON.stringify(updatedHistory));
|
|
125
|
+
} catch (error) {
|
|
126
|
+
console.error("Failed to set recent selected users history to localStorage", error);
|
|
127
|
+
}
|
|
128
|
+
};
|
|
96
129
|
return {
|
|
97
130
|
userList,
|
|
98
131
|
orgList,
|
|
99
132
|
getOrgList,
|
|
100
133
|
currentDeptId,
|
|
101
134
|
deptPath,
|
|
102
|
-
searchOrgList
|
|
135
|
+
searchOrgList,
|
|
136
|
+
getRecentSelectedUsers,
|
|
137
|
+
setRecentSelectedUsers
|
|
103
138
|
};
|
|
104
139
|
};
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@cgboiler/biz-mobile",
|
|
3
|
-
"version": "1.17.
|
|
3
|
+
"version": "1.17.7",
|
|
4
4
|
"description": "",
|
|
5
5
|
"main": "lib/index.js",
|
|
6
6
|
"module": "es/index.js",
|
|
@@ -44,7 +44,7 @@
|
|
|
44
44
|
"dependencies": {
|
|
45
45
|
"lodash-es": "^4.17.21",
|
|
46
46
|
"vant": "^4.9.19",
|
|
47
|
-
"@cgboiler/core": "1.2.
|
|
47
|
+
"@cgboiler/core": "1.2.2",
|
|
48
48
|
"@cgboiler/shared": "1.1.1"
|
|
49
49
|
},
|
|
50
50
|
"scripts": {
|