@baishuyun/ui-business 2.0.0
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/README.md +67 -0
- package/dist/ConfigProvider/ConfigProvider-CE-neQMa.js +9 -0
- package/dist/ConfigProvider/configContext-lDqg07Z3.js +7 -0
- package/dist/ConfigProvider/index.d.ts +4 -0
- package/dist/ConfigProvider/index.js +4 -0
- package/dist/DeptsMember/DeptsMember-C54jKU8C.js +685 -0
- package/dist/DeptsMember/TabGroup-B_2npRbC.js +121 -0
- package/dist/DeptsMember/index.d.ts +6 -0
- package/dist/DeptsMember/index.js +6 -0
- package/dist/DeptsMember/subcomponents/Entity/Department/index.d.ts +2 -0
- package/dist/DeptsMember/subcomponents/Entity/Department/index.js +363 -0
- package/dist/DeptsMember/subcomponents/Entity/Member/index.d.ts +2 -0
- package/dist/DeptsMember/subcomponents/Entity/Member/index.js +671 -0
- package/dist/DeptsMember/utils/index.d.ts +2 -0
- package/dist/DeptsMember/utils/index.js +77 -0
- package/dist/components/ConfigProvider/ConfigProvider.d.ts +4 -0
- package/dist/components/ConfigProvider/ConfigProvider.type.d.ts +5 -0
- package/dist/components/ConfigProvider/context/configContext.d.ts +3 -0
- package/dist/components/ConfigProvider/index.d.ts +2 -0
- package/dist/components/DeptsMember/DeptsMember.d.ts +3 -0
- package/dist/components/DeptsMember/DeptsMember.type.d.ts +23 -0
- package/dist/components/DeptsMember/context/DeptsMemberContext.d.ts +45 -0
- package/dist/components/DeptsMember/hooks/useDeptsMemberSelector.d.ts +7 -0
- package/dist/components/DeptsMember/index.d.ts +4 -0
- package/dist/components/DeptsMember/reducers/deptsMemberReducer.d.ts +3 -0
- package/dist/components/DeptsMember/subcomponents/Entity/Department/CurrentDepartmentEntity/CurrentDepartmentEntity.d.ts +2 -0
- package/dist/components/DeptsMember/subcomponents/Entity/Department/DepartmentSearch/DepartmentSearch.d.ts +4 -0
- package/dist/components/DeptsMember/subcomponents/Entity/Department/ExternalContactEntity/ExternalContactEntity.d.ts +2 -0
- package/dist/components/DeptsMember/subcomponents/Entity/Department/GroupList/GroupList.d.ts +9 -0
- package/dist/components/DeptsMember/subcomponents/Entity/Department/OrganizationalEntity/ExternalOrganization/ExternalOrganization.d.ts +7 -0
- package/dist/components/DeptsMember/subcomponents/Entity/Department/OrganizationalEntity/InternalOrganization/InternalOrganization.d.ts +7 -0
- package/dist/components/DeptsMember/subcomponents/Entity/Department/OrganizationalEntity/OrganizationalEntity.d.ts +2 -0
- package/dist/components/DeptsMember/subcomponents/Entity/Department/index.d.ts +6 -0
- package/dist/components/DeptsMember/subcomponents/Entity/Member/CurrentEntity/CurrentEntity.d.ts +2 -0
- package/dist/components/DeptsMember/subcomponents/Entity/Member/ExternalContactEntity/ExternalContactEntity.d.ts +2 -0
- package/dist/components/DeptsMember/subcomponents/Entity/Member/MajorEntity/MajorEntity.d.ts +2 -0
- package/dist/components/DeptsMember/subcomponents/Entity/Member/MemberEntity/AllMemeberCheck/AllMemeberCheck.d.ts +5 -0
- package/dist/components/DeptsMember/subcomponents/Entity/Member/MemberEntity/ExternalMember/ExternalMember.d.ts +8 -0
- package/dist/components/DeptsMember/subcomponents/Entity/Member/MemberEntity/InternalMemeber/InternalMemeber.d.ts +8 -0
- package/dist/components/DeptsMember/subcomponents/Entity/Member/MemberEntity/MemberEntity.d.ts +2 -0
- package/dist/components/DeptsMember/subcomponents/Entity/Member/MemberEntity/MemerList/MemberList.d.ts +7 -0
- package/dist/components/DeptsMember/subcomponents/Entity/Member/MemberSearch/MemberSearch.d.ts +4 -0
- package/dist/components/DeptsMember/subcomponents/Entity/Member/RoleEntity/RoleEntity.d.ts +2 -0
- package/dist/components/DeptsMember/subcomponents/Entity/Member/index.d.ts +6 -0
- package/dist/components/DeptsMember/subcomponents/SelectionArea/SelectionArea.d.ts +6 -0
- package/dist/components/DeptsMember/subcomponents/SelectionTabs/SelectionTabList/SelectionTabList.d.ts +14 -0
- package/dist/components/DeptsMember/subcomponents/SelectionTabs/SelectionTabPanel/SelectionTabPanel.d.ts +3 -0
- package/dist/components/DeptsMember/subcomponents/SelectionTabs/SelectionTabs.d.ts +2 -0
- package/dist/components/DeptsMember/subcomponents/TabGroup/TabGroup.d.ts +9 -0
- package/dist/components/DeptsMember/subcomponents/TagIcon/TagIcon.d.ts +4 -0
- package/dist/components/DeptsMember/utils/constants.d.ts +25 -0
- package/dist/components/DeptsMember/utils/index.d.ts +43 -0
- package/dist/components/index.d.ts +2 -0
- package/dist/hooks/useLocale.d.ts +10 -0
- package/dist/index.css +1 -0
- package/dist/index.d.ts +2 -0
- package/dist/index.js +9 -0
- package/dist/lang/en-US.json.d.ts +58 -0
- package/dist/lang/zh-CN.json.d.ts +58 -0
- package/dist/services/apiService.d.ts +12 -0
- package/dist/services/corp/outsider.service.d.ts +6 -0
- package/dist/services/data/department.service.d.ts +12 -0
- package/dist/services/data/member.service.d.ts +19 -0
- package/dist/services/data/member_limit.service.d.ts +5 -0
- package/dist/services/data/outsider.service.d.ts +11 -0
- package/dist/services/team/team.services.d.ts +10 -0
- package/dist/vendors/axios.js +1720 -0
- package/dist/vendors/clsx.js +16 -0
- package/dist/vendors/lodash-es.js +124 -0
- package/dist/vendors/services/apiService.js +88 -0
- package/dist/vendors/services/corp/outsider.service.js +6 -0
- package/dist/vendors/services/data/department.service.js +6 -0
- package/dist/vendors/services/data/member.service.js +9 -0
- package/dist/vendors/services/data/member_limit.service.js +5 -0
- package/dist/vendors/services/data/outsider.service.js +6 -0
- package/dist/vendors/services/team/team.services.js +5 -0
- package/dist/vendors/simplebar-react.js +408 -0
- package/dist/vite-env.d.ts +6 -0
- package/package.json +87 -0
|
@@ -0,0 +1,77 @@
|
|
|
1
|
+
const i = ["#f5c547", "#528cff", "#50b0f4", "#61db8c", "#ff8383", "#444"], u = (t) => {
|
|
2
|
+
const n = t.charCodeAt(0) % i.length;
|
|
3
|
+
return i[n];
|
|
4
|
+
}, h = (t, n) => {
|
|
5
|
+
const {
|
|
6
|
+
value: o,
|
|
7
|
+
children: e,
|
|
8
|
+
parentId: a
|
|
9
|
+
} = {
|
|
10
|
+
value: "value",
|
|
11
|
+
children: "children",
|
|
12
|
+
parentId: "parentId",
|
|
13
|
+
...n
|
|
14
|
+
};
|
|
15
|
+
if (!Array.isArray(t))
|
|
16
|
+
return console.error("输入的数据不是一个数组。"), [];
|
|
17
|
+
const c = /* @__PURE__ */ new Map();
|
|
18
|
+
t.forEach((r) => {
|
|
19
|
+
const d = r[o], s = {
|
|
20
|
+
...r,
|
|
21
|
+
[e]: []
|
|
22
|
+
// 初始化 children 数组
|
|
23
|
+
};
|
|
24
|
+
c.set(d, s);
|
|
25
|
+
});
|
|
26
|
+
const l = [];
|
|
27
|
+
return c.forEach((r) => {
|
|
28
|
+
const d = r[a], s = c.get(d);
|
|
29
|
+
s ? s[e].push(r) : l.push(r);
|
|
30
|
+
}), l;
|
|
31
|
+
}, p = (t, n, o) => {
|
|
32
|
+
const { value: e, children: a } = {
|
|
33
|
+
value: "value",
|
|
34
|
+
children: "children",
|
|
35
|
+
...o
|
|
36
|
+
};
|
|
37
|
+
if (!Array.isArray(n))
|
|
38
|
+
return null;
|
|
39
|
+
const c = [...n];
|
|
40
|
+
for (; c.length > 0; ) {
|
|
41
|
+
const l = c.pop();
|
|
42
|
+
if (!l)
|
|
43
|
+
continue;
|
|
44
|
+
if (l[e] === t)
|
|
45
|
+
return l;
|
|
46
|
+
const r = l[a];
|
|
47
|
+
if (r && r.length > 0)
|
|
48
|
+
for (let d = r.length - 1; d >= 0; d--)
|
|
49
|
+
c.push(r[d]);
|
|
50
|
+
}
|
|
51
|
+
return null;
|
|
52
|
+
};
|
|
53
|
+
function f(t) {
|
|
54
|
+
const n = {}, o = [];
|
|
55
|
+
return t.forEach((e) => {
|
|
56
|
+
n[e.departmentId] = {
|
|
57
|
+
...e,
|
|
58
|
+
title: e.name,
|
|
59
|
+
key: e.departmentId,
|
|
60
|
+
children: []
|
|
61
|
+
};
|
|
62
|
+
}), t.forEach((e) => {
|
|
63
|
+
if (e.parentId === 0)
|
|
64
|
+
o.push(n[e.departmentId]);
|
|
65
|
+
else {
|
|
66
|
+
const a = n[e.parentId];
|
|
67
|
+
a && a.children.push(n[e.departmentId]);
|
|
68
|
+
}
|
|
69
|
+
}), o;
|
|
70
|
+
}
|
|
71
|
+
export {
|
|
72
|
+
i as ENTITY_COLORS,
|
|
73
|
+
f as buildDeptTree,
|
|
74
|
+
h as buildTree,
|
|
75
|
+
p as findNodeInTree,
|
|
76
|
+
u as getColorByName
|
|
77
|
+
};
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
import { Entity } from './utils/constants';
|
|
2
|
+
export type EntitySelectorProps = {
|
|
3
|
+
/**
|
|
4
|
+
* 业务类型:部门单选 / 部门多选 / 成员 / 成员多选
|
|
5
|
+
*/
|
|
6
|
+
type: Entity;
|
|
7
|
+
/**
|
|
8
|
+
* 选择器值
|
|
9
|
+
*/
|
|
10
|
+
value?: any[];
|
|
11
|
+
/**
|
|
12
|
+
* 选择器值改变时的回调
|
|
13
|
+
*/
|
|
14
|
+
onChange?: (value: any[]) => void;
|
|
15
|
+
/**
|
|
16
|
+
* 取消按钮点击回调
|
|
17
|
+
*/
|
|
18
|
+
onCancel?: () => void;
|
|
19
|
+
/**
|
|
20
|
+
* 确认按钮点击回调
|
|
21
|
+
*/
|
|
22
|
+
onConfirm?: (value: any[]) => void;
|
|
23
|
+
};
|
|
@@ -0,0 +1,45 @@
|
|
|
1
|
+
type AddAction = {
|
|
2
|
+
type: 'addOne';
|
|
3
|
+
payload: { _id: string | number; [key: string]: any };
|
|
4
|
+
};
|
|
5
|
+
|
|
6
|
+
type AddManyAction = {
|
|
7
|
+
type: 'addMany';
|
|
8
|
+
payload: Array<{ _id: string | number; [key: string]: any }>;
|
|
9
|
+
};
|
|
10
|
+
|
|
11
|
+
type RemoveManyAction = {
|
|
12
|
+
type: 'removeMany';
|
|
13
|
+
payload: Array<string | number>;
|
|
14
|
+
};
|
|
15
|
+
|
|
16
|
+
type RemoveAllAction = {
|
|
17
|
+
type: 'removeAll';
|
|
18
|
+
};
|
|
19
|
+
|
|
20
|
+
type InsertOnlyAction = {
|
|
21
|
+
type: 'insertOnly';
|
|
22
|
+
payload: Record<string, any>;
|
|
23
|
+
};
|
|
24
|
+
|
|
25
|
+
type DeleteOneAction = {
|
|
26
|
+
type: 'deleteOne';
|
|
27
|
+
payload: string | number;
|
|
28
|
+
};
|
|
29
|
+
|
|
30
|
+
type DeleteAndInsertAction = {
|
|
31
|
+
type: 'deleteAndInsert';
|
|
32
|
+
payload: {
|
|
33
|
+
newItems: Array<{ _id: string | number; [key: string]: any }>;
|
|
34
|
+
oldIds: Array<string | number>;
|
|
35
|
+
};
|
|
36
|
+
};
|
|
37
|
+
|
|
38
|
+
export type Action =
|
|
39
|
+
| AddAction
|
|
40
|
+
| AddManyAction
|
|
41
|
+
| RemoveManyAction
|
|
42
|
+
| RemoveAllAction
|
|
43
|
+
| InsertOnlyAction
|
|
44
|
+
| DeleteOneAction
|
|
45
|
+
| DeleteAndInsertAction;
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
export declare const useDeptsMemberSelector: () => {
|
|
2
|
+
type: import('..').Entity;
|
|
3
|
+
value?: any[];
|
|
4
|
+
setValue: (v: import('react').SetStateAction<any[]>, ...args: any[]) => void;
|
|
5
|
+
dispatch: (action: import('../context/DeptsMemberContext').Action) => void;
|
|
6
|
+
containerHeight: number;
|
|
7
|
+
};
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
type TabBar = {
|
|
2
|
+
value?: string;
|
|
3
|
+
defaultValue?: string;
|
|
4
|
+
tabs: Array<{
|
|
5
|
+
label: string;
|
|
6
|
+
value: string;
|
|
7
|
+
[index: string]: unknown;
|
|
8
|
+
}>;
|
|
9
|
+
onChange?: (tabKey: string) => void;
|
|
10
|
+
onSearch?: (text: string) => void;
|
|
11
|
+
searchPlaceholder?: string;
|
|
12
|
+
};
|
|
13
|
+
export declare const SelectionTabList: (props: TabBar) => import("react/jsx-runtime").JSX.Element;
|
|
14
|
+
export default SelectionTabList;
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
declare const enum Entity {
|
|
2
|
+
/**
|
|
3
|
+
* @description 表示单个成员
|
|
4
|
+
*/
|
|
5
|
+
USER = 0,
|
|
6
|
+
/**
|
|
7
|
+
* @description 表示多个成员组
|
|
8
|
+
*/
|
|
9
|
+
USER_GROUP = 1,
|
|
10
|
+
/**
|
|
11
|
+
* @description 表示单个部门
|
|
12
|
+
*/
|
|
13
|
+
DEPARMENT = 2,
|
|
14
|
+
/**
|
|
15
|
+
* @description 表示多个部门组
|
|
16
|
+
*/
|
|
17
|
+
DEPARMENT_GROUP = 3
|
|
18
|
+
}
|
|
19
|
+
declare const ELLIPSIS_BUTTON_WIDTH = 110;
|
|
20
|
+
declare const TWO_LINE_HEIGHT = 68;
|
|
21
|
+
declare const MIN_LINE_HEIGHT = 30;
|
|
22
|
+
declare const GAP_WIDTH = 8;
|
|
23
|
+
declare const PLACEHOLDER_HEIGHT = 90;
|
|
24
|
+
export { ELLIPSIS_BUTTON_WIDTH, TWO_LINE_HEIGHT, MIN_LINE_HEIGHT, GAP_WIDTH, PLACEHOLDER_HEIGHT };
|
|
25
|
+
export { Entity };
|
|
@@ -0,0 +1,43 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @description 成员预设的头像背景颜色
|
|
3
|
+
*/
|
|
4
|
+
declare const ENTITY_COLORS: string[];
|
|
5
|
+
/**
|
|
6
|
+
* @description 根据名称获取颜色
|
|
7
|
+
* @param name 名称
|
|
8
|
+
* @returns 颜色
|
|
9
|
+
*/
|
|
10
|
+
declare const getColorByName: (name: string) => string;
|
|
11
|
+
/**
|
|
12
|
+
* 定义节点和字段名的类型接口
|
|
13
|
+
*/
|
|
14
|
+
type BaseNode = Record<string, any>;
|
|
15
|
+
interface FieldNames {
|
|
16
|
+
title?: string;
|
|
17
|
+
value: string;
|
|
18
|
+
children: string;
|
|
19
|
+
parentId: string;
|
|
20
|
+
}
|
|
21
|
+
type TreeNode<T> = T & {
|
|
22
|
+
[childrenKey: string]: TreeNode<T>[];
|
|
23
|
+
};
|
|
24
|
+
/**
|
|
25
|
+
* 将扁平结构的数组转换为嵌套的树形结构。
|
|
26
|
+
*
|
|
27
|
+
* @param {T[]} treeData - 扁平结构的节点数组。
|
|
28
|
+
* @param {Partial<FieldNames>} [fieldNames] - 可选的自定义字段名映射。
|
|
29
|
+
* @returns {TreeNode<T>[]} - 转换后的树形结构数组。
|
|
30
|
+
*/
|
|
31
|
+
declare const buildTree: <T extends BaseNode>(treeData: T[], fieldNames?: Partial<FieldNames>) => TreeNode<T>[];
|
|
32
|
+
/**
|
|
33
|
+
* 在树形结构数据中根据 ID 查找指定节点。
|
|
34
|
+
* 使用迭代式深度优先搜索(DFS)以避免递归深度限制。
|
|
35
|
+
* @param {string | number} id - 要查找的节点的唯一标识。
|
|
36
|
+
* @param {TreeNode<T>[]} treeData - 树形结构数据。
|
|
37
|
+
* @param {Partial<FieldNames>} [fieldNames] - 可选的自定义字段名映射。
|
|
38
|
+
* @returns {TreeNode<T> | null} - 找到的节点或 null。
|
|
39
|
+
*/
|
|
40
|
+
declare const findNodeInTree: <T extends BaseNode>(id: string | number, treeData: TreeNode<T>[], fieldNames?: Partial<FieldNames>) => TreeNode<T> | null;
|
|
41
|
+
/** 部门成员树形结构 */
|
|
42
|
+
export declare function buildDeptTree(data: Array<any>): any[];
|
|
43
|
+
export { getColorByName, ENTITY_COLORS, buildTree, findNodeInTree };
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import { default as zhCN } from '../lang/zh-CN.json';
|
|
2
|
+
type FlattenObjectKeys<T, K extends keyof T = keyof T> = K extends string ? T[K] extends object ? `${K}.${FlattenObjectKeys<T[K]>}` : `${K}` : never;
|
|
3
|
+
export type LocaleKeys = FlattenObjectKeys<typeof zhCN>;
|
|
4
|
+
/**
|
|
5
|
+
* 获取当前语言
|
|
6
|
+
*/
|
|
7
|
+
export declare const useLocale: () => {
|
|
8
|
+
t: (key: LocaleKeys, params?: Record<string, string | number>) => string;
|
|
9
|
+
};
|
|
10
|
+
export {};
|
package/dist/index.css
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
._tabgroup-container_nkgxh_1{position:relative;display:flex;height:34px;border-bottom:1px solid #e0e0e0}._tabgroup-container__tab-item_nkgxh_7{flex:1;text-align:center;color:#121111;cursor:pointer;font-size:14px;line-height:34px}._tabgroup-container__tab-item_nkgxh_7._active_nkgxh_15{color:#0265ff}._tabgroup-container__indicator_nkgxh_18{position:absolute;bottom:0;height:2px;background-color:#0265ff;transition:all .3s ease-in-out;width:70px}.memeber-list .ant-radio-wrapper{display:flex;justify-content:space-between;align-items:center}.memeber-list .ant-radio{order:101;flex-shrink:0}.memeber-list .ant-radio-label{padding-inline-start:0!important;order:100;flex:1;align-items:center;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}._bsy-external-member__all-option_10zdq_1{cursor:pointer;display:flex;gap:6px;border-radius:4px;padding:4px;transition:background-color .2s ease}._bsy-external-member__all-option_10zdq_1:hover{background-color:#f3f3f3}._bsy-external-member__all-option--selected_10zdq_13{background-color:#f0f6ff;color:#0265ff}._bsy-external-member__all-option--selected_10zdq_13:hover{background-color:#f0f6ff}._bsy-external-member__icon_10zdq_20{color:#0265ff;font-size:18px}._bsy-external-member__switcher-icon_10zdq_24{transition:transform .3s ease-in-out;font-size:16px;color:#666}._bsy-external-member__switcher-icon--expanded_10zdq_29{transform:rotate(90deg)}._bsy-all-member__all-option_1rb6y_1{cursor:pointer;display:flex;gap:6px;border-radius:4px;padding:4px;transition:background-color .2s ease}._bsy-all-member__all-option_1rb6y_1:hover{background-color:#f3f3f3}._bsy-all-member__all-option--selected_1rb6y_13{background-color:#f0f6ff;color:#0265ff}._bsy-all-member__all-option--selected_1rb6y_13:hover{background-color:#f0f6ff}.internal-container__icon{font-size:20px;color:#0265ff}.internal-container__arrow-icon{transition:transform .3s ease-in-out;color:#666;font-size:16px}.internal-container__arrow-icon.rotate-90{transform:rotate(90deg)}.internal-container__empty{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;color:#999}.external-container__tabs{position:relative;display:flex;height:34px;border-bottom:1px solid #e0e0e0}.external-container__tab-item{flex:1;text-align:center;color:#121111;cursor:pointer;font-size:14px;line-height:34px}.external-container__tab-item.active{color:#0265ff}.external-container__indicator{position:absolute;bottom:0;height:2px;background-color:#0265ff;transition:all .3s ease-in-out;width:70px}.entity-group-list .ant-radio-wrapper{display:flex;justify-content:space-between;align-items:center}.entity-group-list .ant-radio{order:101;flex-shrink:0}.entity-group-list .ant-radio-label{padding-inline-start:0!important;order:100;flex:1;align-items:center;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.depts-member-selection-preview{position:relative}.depts-member-selection-preview .depts-member-selection-preview-container{position:relative;background-color:#fff;z-index:11;transition:padding-bottom .35s ease-out;color:#121211}.depts-member-selection-preview .depts-member-selection-preview-container.expand{padding-bottom:50px}.depts-member-selection-preview .depts-member-selection-preview-container.enable-animation{position:absolute;left:0;right:0}.depts-member-selection-preview .depts-member-selection-preview-container .preview-container__body{position:relative;min-height:52px;border-radius:4px;border:1px dashed #e0e0e0;transition:all ease-out .35s}.depts-member-selection-preview .depts-member-selection-preview-container .preview-container__body.expand{border-color:#0265ff;max-height:400px;overflow:hidden}.depts-member-selection-preview .depts-member-selection-preview-container .preview-container__body:not(.expand):hover{border-color:#0265ff}.depts-member-selection-preview .depts-member-selection-preview-container .preview-container__scroll-gutter{padding:10px}.depts-member-selection-preview .depts-member-selection-preview-container .preview-container__scroll{overflow:hidden;transition:all .3s ease}.depts-member-selection-preview .depts-member-selection-preview-container .preview-container__button{position:absolute;left:0;right:0;bottom:0;height:50px;color:#0265ff;display:flex;align-items:center;justify-content:center;background-color:#fff}.depts-member-selection-preview .depts-member-selection-preview-container .measure-list{position:absolute;top:0;left:0;opacity:0;pointer-events:none;z-index:-1;width:904px}.depts-member-selection-preview .depts-member-selection-preview-container .entity-list{font-size:0;display:flex;gap:8px;flex-wrap:wrap;transition:height .35s ease-out}.depts-member-selection-preview .depts-member-selection-preview-container .entity-list .entity-item{display:inline-flex;height:30px;padding-left:6px;padding-right:8px;background-color:#e6f8ff;border-radius:100px;gap:6px;align-items:center;line-height:normal}.depts-member-selection-preview .depts-member-selection-preview-container .entity-list .entity-item .entity-item__content{height:20px;flex-shrink:0;display:inline-flex;align-items:center}.depts-member-selection-preview .depts-member-selection-preview-container .entity-list .entity-item .entity-item__text{font-size:14px;display:inline-flex;align-items:center}.depts-member-selection-preview .depts-member-selection-preview-container .entity-list .entity-item .entity-item__text .entity-item__name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:120px;display:inline-block}.depts-member-selection-preview .depts-member-selection-preview-container .entity-list .entity-item .entity-item__text .entity-item__badge{font-size:12px;color:#4d609f;display:inline-block}.depts-member-selection-preview .depts-member-selection-preview-container .entity-list .entity-item .entity-item__close{cursor:pointer;width:14px;height:14px;display:flex;align-items:center}.depts-member-selection-preview .depts-member-selection-preview-container .entity-list .entity-item .entity-item__close .anticon{color:#666;font-size:14px}.depts-member-selection-preview .depts-member-selection-preview-container .entity-list .entity-item .entity-item__close .anticon:hover{color:#0265ff}.depts-member-selection-preview .depts-member-selection-preview-container .entity-list .entity-item.entity-item--user{background-color:#eceff3}.depts-member-selection-preview .depts-member-selection-preview-container .entity-list .entity-item.entity-item--department{background-color:#ebf0ff}.depts-member-selection-preview .depts-member-selection-preview-container .entity-list .entity-list__more{color:#0265ff;display:inline-flex;font-size:14px;align-items:center}.depts-member-selection-preview .depts-member-selection-preview-container .entity-list .entity-list__more .entity-list__more-button{font-size:14px;display:inline-flex;gap:6px}.depts-member-selection-preview .depts-member-selection-preview-container .entity-list .entity-list__more .entity-list__more-button:hover{opacity:.8}.depts-member-preview-container__mask{position:absolute;inset:0;background-color:#0000004d;z-index:10}._selection-tabs_88491_1{border-radius:6px;border:1px solid #e0e0e0}._depts-member-selector_d4xq4_1{display:flex;flex-direction:column;gap:10px;position:relative}*,:before,:after{--tw-border-spacing-x: 0;--tw-border-spacing-y: 0;--tw-translate-x: 0;--tw-translate-y: 0;--tw-rotate: 0;--tw-skew-x: 0;--tw-skew-y: 0;--tw-scale-x: 1;--tw-scale-y: 1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness: proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width: 0px;--tw-ring-offset-color: #fff;--tw-ring-color: rgb(59 130 246 / .5);--tw-ring-offset-shadow: 0 0 #0000;--tw-ring-shadow: 0 0 #0000;--tw-shadow: 0 0 #0000;--tw-shadow-colored: 0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }::backdrop{--tw-border-spacing-x: 0;--tw-border-spacing-y: 0;--tw-translate-x: 0;--tw-translate-y: 0;--tw-rotate: 0;--tw-skew-x: 0;--tw-skew-y: 0;--tw-scale-x: 1;--tw-scale-y: 1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness: proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width: 0px;--tw-ring-offset-color: #fff;--tw-ring-color: rgb(59 130 246 / .5);--tw-ring-offset-shadow: 0 0 #0000;--tw-ring-shadow: 0 0 #0000;--tw-shadow: 0 0 #0000;--tw-shadow-colored: 0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }*,:before,:after{box-sizing:border-box;border-width:0;border-style:solid;border-color:#e5e7eb}:before,:after{--tw-content: ""}html,:host{line-height:1.5;-webkit-text-size-adjust:100%;-moz-tab-size:4;tab-size:4;font-family:ui-sans-serif,system-ui,sans-serif,"Apple Color Emoji","Segoe UI Emoji",Segoe UI Symbol,"Noto Color Emoji";font-feature-settings:normal;font-variation-settings:normal;-webkit-tap-highlight-color:transparent}body{margin:0;line-height:inherit}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-feature-settings:normal;font-variation-settings:normal;font-size:1em}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}button,input,optgroup,select,textarea{font-family:inherit;font-feature-settings:inherit;font-variation-settings:inherit;font-size:100%;font-weight:inherit;line-height:inherit;letter-spacing:inherit;color:inherit;margin:0;padding:0}button,select{text-transform:none}button,input:where([type=button]),input:where([type=reset]),input:where([type=submit]){-webkit-appearance:button;background-color:transparent;background-image:none}:-moz-focusring{outline:auto}:-moz-ui-invalid{box-shadow:none}progress{vertical-align:baseline}::-webkit-inner-spin-button,::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}summary{display:list-item}blockquote,dl,dd,h1,h2,h3,h4,h5,h6,hr,figure,p,pre{margin:0}fieldset{margin:0;padding:0}legend{padding:0}ol,ul,menu{list-style:none;margin:0;padding:0}dialog{padding:0}textarea{resize:vertical}input::placeholder,textarea::placeholder{opacity:1;color:#9ca3af}button,[role=button]{cursor:pointer}:disabled{cursor:default}img,svg,video,canvas,audio,iframe,embed,object{display:block;vertical-align:middle}img,video{max-width:100%;height:auto}[hidden]:where(:not([hidden=until-found])){display:none}.container{width:100%}@media (min-width: 640px){.container{max-width:640px}}@media (min-width: 768px){.container{max-width:768px}}@media (min-width: 1024px){.container{max-width:1024px}}@media (min-width: 1280px){.container{max-width:1280px}}@media (min-width: 1536px){.container{max-width:1536px}}.visible{visibility:visible}.absolute{position:absolute}.relative{position:relative}.inset-0{inset:0}.bottom-\[-1px\]{bottom:-1px}.left-2\.5{left:.625rem}.top-1\/2{top:50%}.ml-3{margin-left:.75rem}.ml-\[-16px\]{margin-left:-16px}.flex{display:flex}.h-5{height:1.25rem}.h-\[2px\]{height:2px}.h-\[30px\]{height:30px}.h-full{height:100%}.w-5{width:1.25rem}.w-\[280px\]{width:280px}.w-full{width:100%}.flex-1{flex:1 1 0%}.flex-\[0\]{flex:0}.flex-auto{flex:1 1 auto}.shrink-0{flex-shrink:0}.basis-\[192px\]{flex-basis:192px}.basis-\[200px\]{flex-basis:200px}.-translate-y-1\/2{--tw-translate-y: -50%;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.rotate-90{--tw-rotate: 90deg;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.transform{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.cursor-pointer{cursor:pointer}.select-none{user-select:none}.flex-col{flex-direction:column}.items-center{align-items:center}.justify-end{justify-content:flex-end}.justify-center{justify-content:center}.justify-between{justify-content:space-between}.gap-10{gap:2.5rem}.gap-\[6px\]{gap:6px}.overflow-hidden{overflow:hidden}.truncate{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.text-ellipsis{text-overflow:ellipsis}.whitespace-nowrap{white-space:nowrap}.rounded{border-radius:.25rem}.rounded-\[100px\]{border-radius:100px}.rounded-\[4px\]{border-radius:4px}.border{border-width:1px}.border-b{border-bottom-width:1px}.border-l{border-left-width:1px}.border-\[\#E0E0E0\],.border-\[\#e0e0e0\]{--tw-border-opacity: 1;border-color:rgb(224 224 224 / var(--tw-border-opacity, 1))}.bg-\[\#0265ff\]{--tw-bg-opacity: 1;background-color:rgb(2 101 255 / var(--tw-bg-opacity, 1))}.bg-\[\#F0F6FF\]{--tw-bg-opacity: 1;background-color:rgb(240 246 255 / var(--tw-bg-opacity, 1))}.bg-white{--tw-bg-opacity: 1;background-color:rgb(255 255 255 / var(--tw-bg-opacity, 1))}.p-0{padding:0}.p-1{padding:.25rem}.px-5{padding-left:1.25rem;padding-right:1.25rem}.px-\[10px\]{padding-left:10px;padding-right:10px}.py-1{padding-top:.25rem;padding-bottom:.25rem}.py-\[14px\]{padding-top:14px;padding-bottom:14px}.py-\[5px\]{padding-top:5px;padding-bottom:5px}.py-\[6px\]{padding-top:6px;padding-bottom:6px}.py-\[7px\]{padding-top:7px;padding-bottom:7px}.pl-0{padding-left:0}.pl-8{padding-left:2rem}.pr-3{padding-right:.75rem}.pt-5{padding-top:1.25rem}.text-base{font-size:1rem;line-height:1.5rem}.text-lg{font-size:1.125rem;line-height:1.75rem}.text-sm{font-size:.875rem;line-height:1.25rem}.text-xs{font-size:.75rem;line-height:1rem}.text-\[\#0265ff\]{--tw-text-opacity: 1;color:rgb(2 101 255 / var(--tw-text-opacity, 1))}.text-\[\#121211\]{--tw-text-opacity: 1;color:rgb(18 18 17 / var(--tw-text-opacity, 1))}.text-\[\#4d609f\]{--tw-text-opacity: 1;color:rgb(77 96 159 / var(--tw-text-opacity, 1))}.text-\[\#666\]{--tw-text-opacity: 1;color:rgb(102 102 102 / var(--tw-text-opacity, 1))}.text-\[\#70c911\]{--tw-text-opacity: 1;color:rgb(112 201 17 / var(--tw-text-opacity, 1))}.text-\[\#999\]{--tw-text-opacity: 1;color:rgb(153 153 153 / var(--tw-text-opacity, 1))}.text-black{--tw-text-opacity: 1;color:rgb(0 0 0 / var(--tw-text-opacity, 1))}.outline-none{outline:2px solid transparent;outline-offset:2px}.blur{--tw-blur: blur(8px);filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.filter{filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.transition{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-all{transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-transform{transition-property:transform;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.duration-300{transition-duration:.3s}.ease-in-out{transition-timing-function:cubic-bezier(.4,0,.2,1)}.placeholder\:text-\[\#999\]::placeholder{--tw-text-opacity: 1;color:rgb(153 153 153 / var(--tw-text-opacity, 1))}.hover\:border-\[\#0265ff\]:hover{--tw-border-opacity: 1;border-color:rgb(2 101 255 / var(--tw-border-opacity, 1))}.hover\:bg-\[\#f3f3f3\]:hover{--tw-bg-opacity: 1;background-color:rgb(243 243 243 / var(--tw-bg-opacity, 1))}.hover\:bg-transparent:hover{background-color:transparent}.hover\:text-\[\#0265ff\]:hover{--tw-text-opacity: 1;color:rgb(2 101 255 / var(--tw-text-opacity, 1))}
|
package/dist/index.d.ts
ADDED
package/dist/index.js
ADDED
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import { D as r } from "./DeptsMember/DeptsMember-C54jKU8C.js";
|
|
2
|
+
import { C as i } from "./ConfigProvider/ConfigProvider-CE-neQMa.js";
|
|
3
|
+
import { c as t, g } from "./vendors/services/apiService.js";
|
|
4
|
+
export {
|
|
5
|
+
i as ConfigProvider,
|
|
6
|
+
r as DeptsMemberSelector,
|
|
7
|
+
t as configureApi,
|
|
8
|
+
g as getApiConfig
|
|
9
|
+
};
|
|
@@ -0,0 +1,58 @@
|
|
|
1
|
+
declare const _default: {
|
|
2
|
+
"common": {
|
|
3
|
+
"loading": "Loading...",
|
|
4
|
+
"cancel": "Cancel",
|
|
5
|
+
"confirm": "Confirm",
|
|
6
|
+
"clearAll": "Clear All",
|
|
7
|
+
"viewAll": "View All {count}",
|
|
8
|
+
"selected": "Selected {selected}/{total}",
|
|
9
|
+
"collapseAll": "Collapse All",
|
|
10
|
+
"noAvailable": "No available members"
|
|
11
|
+
},
|
|
12
|
+
"department": {
|
|
13
|
+
"title": "Department",
|
|
14
|
+
"search": "Search Department",
|
|
15
|
+
"noAvailable": "No available departments",
|
|
16
|
+
"contact": "Contact Department",
|
|
17
|
+
"organizationalStructure": "Organizational Structure",
|
|
18
|
+
"currentUserDepartment": "Current User Department",
|
|
19
|
+
"internal": "Internal Organization",
|
|
20
|
+
"external": "External Organization",
|
|
21
|
+
"externalContactGroup": "External Contact Group",
|
|
22
|
+
"externalContactDepartment": "External Contact Department"
|
|
23
|
+
},
|
|
24
|
+
"member": {
|
|
25
|
+
"title": "Member",
|
|
26
|
+
"search": "Search Member",
|
|
27
|
+
"contact": "Contact Person",
|
|
28
|
+
"all": "All Members",
|
|
29
|
+
"internal": "Internal Members",
|
|
30
|
+
"external": "External Members",
|
|
31
|
+
"noAvailable": "No available members"
|
|
32
|
+
},
|
|
33
|
+
"role": {
|
|
34
|
+
"title": "Role",
|
|
35
|
+
"internal": "Internal Role",
|
|
36
|
+
"external": "Interconnected Role"
|
|
37
|
+
},
|
|
38
|
+
"position": {
|
|
39
|
+
"title": "Position"
|
|
40
|
+
},
|
|
41
|
+
"currentUser": {
|
|
42
|
+
"title": "Current User"
|
|
43
|
+
},
|
|
44
|
+
"externalContact": {
|
|
45
|
+
"title": "External Contact",
|
|
46
|
+
"defaultGroup": "Default Group",
|
|
47
|
+
"customGroup": "Custom Group",
|
|
48
|
+
"group": "External Contact Group",
|
|
49
|
+
"noAvailableGroup": "No available groups"
|
|
50
|
+
},
|
|
51
|
+
"tabs": {
|
|
52
|
+
"searchMember": "Search Member",
|
|
53
|
+
"searchDepartment": "Search Department"
|
|
54
|
+
}
|
|
55
|
+
}
|
|
56
|
+
;
|
|
57
|
+
|
|
58
|
+
export default _default;
|
|
@@ -0,0 +1,58 @@
|
|
|
1
|
+
declare const _default: {
|
|
2
|
+
"common": {
|
|
3
|
+
"loading": "加载中...",
|
|
4
|
+
"cancel": "取消",
|
|
5
|
+
"confirm": "确认",
|
|
6
|
+
"clearAll": "清空所选项",
|
|
7
|
+
"viewAll": "查看全部{count}个",
|
|
8
|
+
"selected": "已选 {selected}/{total}",
|
|
9
|
+
"collapseAll": "收起全部",
|
|
10
|
+
"noAvailable": "没有可选成员"
|
|
11
|
+
},
|
|
12
|
+
"department": {
|
|
13
|
+
"title": "部门",
|
|
14
|
+
"search": "搜索部门",
|
|
15
|
+
"noAvailable": "没有可选部门",
|
|
16
|
+
"contact": "对接部门",
|
|
17
|
+
"organizationalStructure": "组织架构",
|
|
18
|
+
"currentUserDepartment": "当前用户所处部门",
|
|
19
|
+
"internal": "内部组织",
|
|
20
|
+
"external": "外部组织",
|
|
21
|
+
"externalContactGroup": "对接人小组",
|
|
22
|
+
"externalContactDepartment": "对接部门"
|
|
23
|
+
},
|
|
24
|
+
"member": {
|
|
25
|
+
"title": "成员",
|
|
26
|
+
"search": "搜索成员",
|
|
27
|
+
"contact": "对接人",
|
|
28
|
+
"all": "全部成员",
|
|
29
|
+
"internal": "内部成员",
|
|
30
|
+
"external": "外部成员",
|
|
31
|
+
"noAvailable": "没有可选成员"
|
|
32
|
+
},
|
|
33
|
+
"role": {
|
|
34
|
+
"title": "角色",
|
|
35
|
+
"internal": "内部角色",
|
|
36
|
+
"external": "互联角色"
|
|
37
|
+
},
|
|
38
|
+
"position": {
|
|
39
|
+
"title": "职位"
|
|
40
|
+
},
|
|
41
|
+
"currentUser": {
|
|
42
|
+
"title": "当前用户"
|
|
43
|
+
},
|
|
44
|
+
"externalContact": {
|
|
45
|
+
"title": "外部联系人",
|
|
46
|
+
"defaultGroup": "默认分组",
|
|
47
|
+
"customGroup": "自定义分组",
|
|
48
|
+
"group": "外部联系人分组",
|
|
49
|
+
"noAvailableGroup": "没有可选分组"
|
|
50
|
+
},
|
|
51
|
+
"tabs": {
|
|
52
|
+
"searchMember": "搜索成员",
|
|
53
|
+
"searchDepartment": "搜索部门"
|
|
54
|
+
}
|
|
55
|
+
}
|
|
56
|
+
;
|
|
57
|
+
|
|
58
|
+
export default _default;
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import { AxiosRequestConfig, CreateAxiosDefaults } from 'axios';
|
|
2
|
+
export interface ApiConfig extends CreateAxiosDefaults {
|
|
3
|
+
}
|
|
4
|
+
export declare const getApiConfig: () => CreateAxiosDefaults;
|
|
5
|
+
export declare const configureApi: (config: Partial<ApiConfig>) => void;
|
|
6
|
+
declare const request: {
|
|
7
|
+
get: <T>(url: string, params?: object, config?: AxiosRequestConfig) => Promise<T>;
|
|
8
|
+
post: <T>(url: string, params?: object, config?: AxiosRequestConfig) => Promise<T>;
|
|
9
|
+
put: <T>(url: string, params?: object, config?: AxiosRequestConfig) => Promise<T>;
|
|
10
|
+
delete: <T>(url: string, params?: object, config?: AxiosRequestConfig) => Promise<T>;
|
|
11
|
+
};
|
|
12
|
+
export default request;
|