@cmstops/pro-compo 3.9.1-rc.1 → 3.9.1-rc.11

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.
Files changed (101) hide show
  1. package/README.md +103 -76
  2. package/dist/index.css +49 -4
  3. package/dist/index.min.css +1 -1
  4. package/es/baseFilter/component.js +71 -14
  5. package/es/config.js +1 -1
  6. package/es/contentDetailList/component.js +24 -0
  7. package/es/contentDetailList/components/Content/index.js +2 -1
  8. package/es/contentDetailList/components/Doc/index.js +6 -0
  9. package/es/docHistory/component.js +41 -12
  10. package/es/docHistory/scripts/diff.js +4 -3
  11. package/es/docHistory/style/index.css +4 -0
  12. package/es/docHistory/style/index.less +5 -0
  13. package/es/hooks/useAttachement.js +2 -9
  14. package/es/hooks/usePopper.d.ts +1 -1
  15. package/es/hooks/usePopper.js +3 -3
  16. package/es/hooks/useUpload.d.ts +50 -2
  17. package/es/hooks/useUpload.js +43 -4
  18. package/es/index.css +49 -4
  19. package/es/index.d.ts +1 -0
  20. package/es/index.js +1 -0
  21. package/es/selectAddTo/component.d.ts +0 -0
  22. package/es/selectAddTo/component.js +125 -0
  23. package/es/selectAddTo/component.vue_vue_type_style_index_0_scoped_true_lang.js +2 -0
  24. package/es/selectAddTo/components/ViewAllColumn/MediaFilter/index.d.ts +0 -0
  25. package/es/selectAddTo/components/ViewAllColumn/MediaFilter/index.js +169 -0
  26. package/es/selectAddTo/components/ViewAllColumn/columnTree/index.d.ts +0 -0
  27. package/es/selectAddTo/components/ViewAllColumn/index.d.ts +0 -0
  28. package/es/selectAddTo/components/ViewAllColumn/index.js +209 -0
  29. package/es/selectAddTo/components/ViewAllColumn/index.vue_vue_type_style_index_0_scoped_true_lang.js +2 -0
  30. package/es/selectAddTo/components/ViewAllColumn/script/useTableColumns.js +78 -0
  31. package/es/selectAddTo/components/ViewAllColumn/script/useViewAllColumnState.d.ts +144 -0
  32. package/es/selectAddTo/components/ViewAllColumn/script/useViewAllColumnState.js +193 -0
  33. package/es/selectAddTo/components/ViewAllColumn/types/index.d.ts +59 -0
  34. package/es/selectAddTo/index.d.ts +2 -0
  35. package/es/selectAddTo/index.js +7 -0
  36. package/es/selectAddTo/script/api.d.ts +18 -0
  37. package/es/selectAddTo/script/api.js +30 -0
  38. package/es/selectAddTo/script/index.d.ts +2 -0
  39. package/es/selectAddTo/script/useSelectAddToState.d.ts +21 -0
  40. package/es/selectAddTo/script/useSelectAddToState.js +106 -0
  41. package/es/selectAddTo/style/css.js +1 -0
  42. package/es/selectAddTo/style/index.css +3 -0
  43. package/es/selectAddTo/style/index.d.ts +1 -0
  44. package/es/selectAddTo/style/index.js +1 -0
  45. package/es/selectAddTo/style/index.less +3 -0
  46. package/es/selectAddTo/types/index.d.ts +42 -0
  47. package/es/selectResourceModal/__demo__/module/DivWrapper.d.ts +268 -0
  48. package/es/selectResourceModal/__demo__/module/basic.d.ts +299 -0
  49. package/es/selectResourceModal/components/List/ListLocal/index.js +8 -3
  50. package/es/selectResourceModal/components/List/ListNormal/Filter.js +201 -89
  51. package/es/selectResourceModal/components/List/ListNormal/index.js +23 -7
  52. package/es/selectResourceModal/hooks/useResponsiveFilter.d.ts +21 -0
  53. package/es/selectResourceModal/hooks/useResponsiveFilter.js +142 -0
  54. package/es/selectResourceModal/scripts/useCompoLf.js +1 -1
  55. package/es/selectResourceModal/style/index.css +45 -4
  56. package/es/selectResourceModal/style/index.less +14 -0
  57. package/es/selectResourceModal/style/list.less +40 -4
  58. package/es/selectThumb/component.js +16 -27
  59. package/es/style.css +57 -0
  60. package/es/typeIcons/component.js +1 -1
  61. package/es/utils/index.js +6 -6
  62. package/lib/baseFilter/component.js +69 -12
  63. package/lib/config.js +1 -1
  64. package/lib/contentDetailList/component.js +24 -0
  65. package/lib/contentDetailList/components/Content/index.js +2 -1
  66. package/lib/contentDetailList/components/Doc/index.js +6 -0
  67. package/lib/docHistory/component.js +39 -10
  68. package/lib/docHistory/scripts/diff.js +4 -3
  69. package/lib/docHistory/style/index.css +4 -0
  70. package/lib/docHistory/style/index.less +5 -0
  71. package/lib/hooks/useAttachement.js +2 -9
  72. package/lib/hooks/usePopper.js +3 -3
  73. package/lib/hooks/useUpload.js +43 -3
  74. package/lib/index.css +49 -4
  75. package/lib/index.js +2 -0
  76. package/lib/selectAddTo/component.js +126 -0
  77. package/lib/selectAddTo/component.vue_vue_type_style_index_0_scoped_true_lang.js +3 -0
  78. package/lib/selectAddTo/components/ViewAllColumn/MediaFilter/index.js +170 -0
  79. package/lib/selectAddTo/components/ViewAllColumn/index.js +210 -0
  80. package/lib/selectAddTo/components/ViewAllColumn/index.vue_vue_type_style_index_0_scoped_true_lang.js +3 -0
  81. package/lib/selectAddTo/components/ViewAllColumn/script/useTableColumns.js +80 -0
  82. package/lib/selectAddTo/components/ViewAllColumn/script/useViewAllColumnState.js +195 -0
  83. package/lib/selectAddTo/index.js +8 -0
  84. package/lib/selectAddTo/script/api.js +35 -0
  85. package/lib/selectAddTo/script/useSelectAddToState.js +108 -0
  86. package/lib/selectAddTo/style/css.js +2 -0
  87. package/lib/selectAddTo/style/index.css +3 -0
  88. package/lib/selectAddTo/style/index.js +2 -0
  89. package/lib/selectAddTo/style/index.less +3 -0
  90. package/lib/selectResourceModal/components/List/ListLocal/index.js +6 -1
  91. package/lib/selectResourceModal/components/List/ListNormal/Filter.js +198 -86
  92. package/lib/selectResourceModal/components/List/ListNormal/index.js +22 -6
  93. package/lib/selectResourceModal/hooks/useResponsiveFilter.js +144 -0
  94. package/lib/selectResourceModal/scripts/useCompoLf.js +1 -1
  95. package/lib/selectResourceModal/style/index.css +45 -4
  96. package/lib/selectResourceModal/style/index.less +14 -0
  97. package/lib/selectResourceModal/style/list.less +40 -4
  98. package/lib/selectThumb/component.js +16 -27
  99. package/lib/typeIcons/component.js +1 -1
  100. package/lib/utils/index.js +6 -6
  101. package/package.json +1 -1
@@ -0,0 +1,78 @@
1
+ import { ref, h } from "vue";
2
+ import { Checkbox } from "@arco-design/web-vue";
3
+ const useTableColumns = (props, selectedData, isItemChecked) => {
4
+ const columns = ref([
5
+ {
6
+ title: "\u52FE",
7
+ dataIndex: "select",
8
+ slotName: "select",
9
+ width: 40,
10
+ titleSlotName: "selectTitle",
11
+ render: ({ record }) => {
12
+ if (props.typeKey === "series:special_v3") {
13
+ if (record.isLeaf) {
14
+ return h(Checkbox, {
15
+ modelValue: isItemChecked.value(selectedData.value, record),
16
+ class: "icon"
17
+ });
18
+ }
19
+ return null;
20
+ }
21
+ return h(Checkbox, {
22
+ modelValue: isItemChecked.value(selectedData.value, record),
23
+ class: "icon"
24
+ });
25
+ }
26
+ },
27
+ {
28
+ title: "\u4E13\u9898/\u680F\u76EE\u540D\u79F0",
29
+ dataIndex: "title",
30
+ slotName: "title",
31
+ width: 428
32
+ },
33
+ {
34
+ title: "\u7F16\u8F91",
35
+ dataIndex: "duty_editor",
36
+ slotName: "duty_editor",
37
+ width: 100
38
+ },
39
+ {
40
+ title: "\u53D1\u5E03\u65F6\u95F4",
41
+ dataIndex: "pub_time",
42
+ slotName: "pub_time",
43
+ width: 150
44
+ }
45
+ ]);
46
+ const politicalColumns = ref([
47
+ {
48
+ title: "\u52FE",
49
+ dataIndex: "select",
50
+ slotName: "select",
51
+ width: 40,
52
+ titleSlotName: "selectTitle"
53
+ },
54
+ {
55
+ title: "\u653F\u60C5\u4EBA\u7269\u59D3\u540D",
56
+ dataIndex: "name",
57
+ slotName: "name",
58
+ width: 428
59
+ },
60
+ {
61
+ title: "\u804C\u4F4D",
62
+ dataIndex: "position",
63
+ slotName: "position",
64
+ width: 100
65
+ },
66
+ {
67
+ title: "\u5730\u533A",
68
+ dataIndex: "city_alias",
69
+ slotName: "city_alias",
70
+ width: 150
71
+ }
72
+ ]);
73
+ return {
74
+ columns,
75
+ politicalColumns
76
+ };
77
+ };
78
+ export { useTableColumns };
@@ -0,0 +1,144 @@
1
+ import type { ComponentProps, FilterType, MediaFileType, PageType } from '../types';
2
+ export declare const useViewAllColumnState: (props: ComponentProps, emit: any) => {
3
+ selectedData: import("vue").Ref<{
4
+ id: import("../types").IdType;
5
+ title?: string | undefined;
6
+ alias?: string | undefined;
7
+ name?: string | undefined;
8
+ series: string;
9
+ duty_editor?: string | undefined;
10
+ position?: string | undefined;
11
+ city_alias?: string | undefined;
12
+ pub_time?: string | undefined;
13
+ created_at?: string | undefined;
14
+ updated_at?: string | undefined;
15
+ author_alias?: string | undefined;
16
+ cover?: {
17
+ banner?: boolean | undefined;
18
+ } | undefined;
19
+ catalog: string;
20
+ target_id: import("../types").IdType;
21
+ target_type: number;
22
+ key: import("../types").IdType;
23
+ isLeaf: boolean;
24
+ special_id?: import("../types").IdType | undefined;
25
+ parentName?: string | undefined;
26
+ parentId?: import("../types").IdType | undefined;
27
+ }[], MediaFileType[] | {
28
+ id: import("../types").IdType;
29
+ title?: string | undefined;
30
+ alias?: string | undefined;
31
+ name?: string | undefined;
32
+ series: string;
33
+ duty_editor?: string | undefined;
34
+ position?: string | undefined;
35
+ city_alias?: string | undefined;
36
+ pub_time?: string | undefined;
37
+ created_at?: string | undefined;
38
+ updated_at?: string | undefined;
39
+ author_alias?: string | undefined;
40
+ cover?: {
41
+ banner?: boolean | undefined;
42
+ } | undefined;
43
+ catalog: string;
44
+ target_id: import("../types").IdType;
45
+ target_type: number;
46
+ key: import("../types").IdType;
47
+ isLeaf: boolean;
48
+ special_id?: import("../types").IdType | undefined;
49
+ parentName?: string | undefined;
50
+ parentId?: import("../types").IdType | undefined;
51
+ }[]>;
52
+ mediaFileData: import("vue").Ref<{
53
+ id: import("../types").IdType;
54
+ title?: string | undefined;
55
+ alias?: string | undefined;
56
+ name?: string | undefined;
57
+ series: string;
58
+ duty_editor?: string | undefined;
59
+ position?: string | undefined;
60
+ city_alias?: string | undefined;
61
+ pub_time?: string | undefined;
62
+ created_at?: string | undefined;
63
+ updated_at?: string | undefined;
64
+ author_alias?: string | undefined;
65
+ cover?: {
66
+ banner?: boolean | undefined;
67
+ } | undefined;
68
+ catalog: string;
69
+ target_id: import("../types").IdType;
70
+ target_type: number;
71
+ key: import("../types").IdType;
72
+ isLeaf: boolean;
73
+ special_id?: import("../types").IdType | undefined;
74
+ parentName?: string | undefined;
75
+ parentId?: import("../types").IdType | undefined;
76
+ }[], MediaFileType[] | {
77
+ id: import("../types").IdType;
78
+ title?: string | undefined;
79
+ alias?: string | undefined;
80
+ name?: string | undefined;
81
+ series: string;
82
+ duty_editor?: string | undefined;
83
+ position?: string | undefined;
84
+ city_alias?: string | undefined;
85
+ pub_time?: string | undefined;
86
+ created_at?: string | undefined;
87
+ updated_at?: string | undefined;
88
+ author_alias?: string | undefined;
89
+ cover?: {
90
+ banner?: boolean | undefined;
91
+ } | undefined;
92
+ catalog: string;
93
+ target_id: import("../types").IdType;
94
+ target_type: number;
95
+ key: import("../types").IdType;
96
+ isLeaf: boolean;
97
+ special_id?: import("../types").IdType | undefined;
98
+ parentName?: string | undefined;
99
+ parentId?: import("../types").IdType | undefined;
100
+ }[]>;
101
+ filter: import("vue").Ref<{
102
+ keywords?: string | undefined;
103
+ precise_kw?: string | undefined;
104
+ type?: string | undefined;
105
+ state?: string | undefined;
106
+ cover_type?: string | undefined;
107
+ banner?: string | undefined;
108
+ publish_date?: [number, number] | undefined;
109
+ order?: string | undefined;
110
+ sort?: number | undefined;
111
+ where?: string[] | undefined;
112
+ } | null, FilterType | {
113
+ keywords?: string | undefined;
114
+ precise_kw?: string | undefined;
115
+ type?: string | undefined;
116
+ state?: string | undefined;
117
+ cover_type?: string | undefined;
118
+ banner?: string | undefined;
119
+ publish_date?: [number, number] | undefined;
120
+ order?: string | undefined;
121
+ sort?: number | undefined;
122
+ where?: string[] | undefined;
123
+ } | null>;
124
+ dataLoading: import("vue").Ref<boolean, boolean>;
125
+ group_id: import("vue").Ref<string | number, string | number>;
126
+ page: import("vue").Ref<{
127
+ index: number;
128
+ size: number;
129
+ total: number;
130
+ }, PageType | {
131
+ index: number;
132
+ size: number;
133
+ total: number;
134
+ }>;
135
+ isItemChecked: import("vue").ComputedRef<(selectedData: any, item: any) => any>;
136
+ tableCellMouseEnter: (record: any) => void;
137
+ tableCellMouseLeave: (record: any) => void;
138
+ selectTableCell: (record: MediaFileType) => void;
139
+ selectTableAll: (checked: boolean) => void;
140
+ search: (_filter: FilterType) => void;
141
+ pageChangeHandle: (index: number) => void;
142
+ loadData: () => Promise<void>;
143
+ loadMore: (record: MediaFileType, done: (data: MediaFileType[]) => void) => Promise<void>;
144
+ };
@@ -0,0 +1,193 @@
1
+ import { ref, computed, watch } from "vue";
2
+ import { Message } from "@arco-design/web-vue";
3
+ import { DEFAULT_BASE_API } from "../../../../config.js";
4
+ import { getCategoryMediaNew, getPoliticals, getMlists } from "../../../script/api.js";
5
+ import useTableBatch from "../../../../hooks/batch.js";
6
+ const useViewAllColumnState = (props, emit) => {
7
+ const _maxSelect = props.maxSelect || 100;
8
+ const selectedData = ref([]);
9
+ const mediaFileData = ref([]);
10
+ const filter = ref(null);
11
+ const dataLoading = ref(false);
12
+ const group_id = ref(0);
13
+ const page = ref({
14
+ index: 1,
15
+ size: 30,
16
+ total: 0
17
+ });
18
+ const tempSelectedData = computed(() => props.defaultSelectedData || []);
19
+ watch(
20
+ () => tempSelectedData.value,
21
+ (val) => {
22
+ selectedData.value = val;
23
+ }
24
+ );
25
+ const importantBanner = computed(() => {
26
+ if (!props.banner || props.banner === "all")
27
+ return false;
28
+ return !!props.banner;
29
+ });
30
+ const { isItemChecked, tableCellMouseEnter, tableCellMouseLeave } = useTableBatch();
31
+ const selectTableCell = (record) => {
32
+ selectData(record);
33
+ };
34
+ const selectTableAll = (checked) => {
35
+ if (checked) {
36
+ selectedData.value = [];
37
+ mediaFileData.value.forEach((item) => selectData(item));
38
+ } else {
39
+ selectedData.value = [];
40
+ }
41
+ emitChange();
42
+ };
43
+ const selectData = (record) => {
44
+ if (importantBanner.value) {
45
+ const { cover } = record;
46
+ if (!(cover == null ? void 0 : cover.banner)) {
47
+ return Message.warning({ content: "\u8BE5\u5185\u5BB9\u4E0D\u5177\u5907\u72EC\u7ACB\u8F6E\u64AD\u56FE" });
48
+ }
49
+ }
50
+ addDataToSelectedList(record);
51
+ return true;
52
+ };
53
+ const addDataToSelectedList = async (record) => {
54
+ const index = selectedData.value.findIndex((v) => v.id === record.id);
55
+ if (selectedData.value.length < _maxSelect) {
56
+ if (index === -1) {
57
+ selectedData.value.push(record);
58
+ } else {
59
+ selectedData.value.splice(index, 1);
60
+ }
61
+ emitChange();
62
+ } else {
63
+ if (index === -1) {
64
+ selectedData.value.splice(selectedData.value.length - 1, 1);
65
+ selectedData.value.push(record);
66
+ } else {
67
+ selectedData.value.splice(index, 1);
68
+ }
69
+ emitChange();
70
+ }
71
+ };
72
+ const emitChange = () => {
73
+ emit("change", selectedData.value);
74
+ };
75
+ const search = (_filter) => {
76
+ var _a;
77
+ _filter = { ..._filter };
78
+ const where = [];
79
+ _filter.precise_kw && where.push(`precise_kw:${_filter.precise_kw}`);
80
+ _filter.keywords && where.push(`kw:${_filter.keywords}`);
81
+ _filter.type && where.push(`series:${_filter.type}`);
82
+ _filter.state && where.push(`state:${_filter.state}`);
83
+ _filter.cover_type && where.push(`cover_type:${_filter.cover_type}`);
84
+ _filter.banner && where.push(`banner:${_filter.banner}`);
85
+ if (((_a = _filter.publish_date) == null ? void 0 : _a.length) === 2) {
86
+ where.push(`publish_from:${_filter.publish_date[0] / 1e3}`);
87
+ where.push(`publish_to:${_filter.publish_date[1] / 1e3}`);
88
+ }
89
+ _filter.where = where;
90
+ filter.value = _filter;
91
+ page.value.index = 1;
92
+ loadData();
93
+ };
94
+ const pageChangeHandle = (index) => {
95
+ page.value.index = index;
96
+ loadData();
97
+ };
98
+ watch(
99
+ () => group_id.value,
100
+ () => {
101
+ page.value.index = 1;
102
+ loadData();
103
+ }
104
+ );
105
+ const loadData = async () => {
106
+ var _a, _b;
107
+ const params = {
108
+ limit: page.value.size,
109
+ offset: page.value.size * (page.value.index - 1),
110
+ where: ["state:15|19"]
111
+ };
112
+ params.where.push(props.typeKey);
113
+ if (filter.value) {
114
+ const _filter = filter.value;
115
+ params.order = _filter.order;
116
+ params.sort = _filter.sort;
117
+ if (_filter.where) {
118
+ params.where = [...params.where, ..._filter.where];
119
+ }
120
+ }
121
+ params.where = params.where.join(",");
122
+ dataLoading.value = true;
123
+ try {
124
+ let response;
125
+ if (props.typeKey && props.typeKey !== "ZQ") {
126
+ response = await getCategoryMediaNew(DEFAULT_BASE_API, params);
127
+ } else {
128
+ params.keyword = ((_a = filter.value) == null ? void 0 : _a.precise_kw) || ((_b = filter.value) == null ? void 0 : _b.keywords) || "";
129
+ params.state = 2;
130
+ response = await getPoliticals(DEFAULT_BASE_API, params);
131
+ }
132
+ const { code, message } = response;
133
+ if (code === 0) {
134
+ mediaFileData.value = (message.data || message.datas).map((v) => ({
135
+ ...v,
136
+ catalog: "doc",
137
+ target_id: v.id,
138
+ target_type: 3,
139
+ pub_time: v.pub_time || v.created_at,
140
+ update_time: v.updated_at,
141
+ pub_user_alias: v.author_alias,
142
+ key: v.id,
143
+ isLeaf: props.typeKey !== "series:special_v3"
144
+ }));
145
+ page.value.total = message.total || message.count;
146
+ }
147
+ } catch (error) {
148
+ console.error("Failed to load data:", error);
149
+ } finally {
150
+ dataLoading.value = false;
151
+ }
152
+ };
153
+ const loadMore = async (record, done) => {
154
+ try {
155
+ const res = await getMlists(DEFAULT_BASE_API, {
156
+ rid: props.rid,
157
+ gid: record.special_id
158
+ });
159
+ setTimeout(() => {
160
+ done(
161
+ res.message.map((item) => ({
162
+ ...item,
163
+ isLeaf: true,
164
+ key: item.id,
165
+ parentName: record.title,
166
+ parentId: record.id
167
+ }))
168
+ );
169
+ }, 2e3);
170
+ } catch (error) {
171
+ console.error("Failed to load more data:", error);
172
+ done([]);
173
+ }
174
+ };
175
+ return {
176
+ selectedData,
177
+ mediaFileData,
178
+ filter,
179
+ dataLoading,
180
+ group_id,
181
+ page,
182
+ isItemChecked,
183
+ tableCellMouseEnter,
184
+ tableCellMouseLeave,
185
+ selectTableCell,
186
+ selectTableAll,
187
+ search,
188
+ pageChangeHandle,
189
+ loadData,
190
+ loadMore
191
+ };
192
+ };
193
+ export { useViewAllColumnState };
@@ -0,0 +1,59 @@
1
+ export declare type IdType = string | number;
2
+ export declare type CascaderDataType = {
3
+ id: IdType;
4
+ alias: string;
5
+ children: CascaderDataType[];
6
+ leaf?: boolean;
7
+ }[];
8
+ export declare type ComponentProps = {
9
+ maxSelect?: number;
10
+ defaultSelectedData: any[];
11
+ typeData: any;
12
+ series: string;
13
+ banner: string;
14
+ userInfo?: any;
15
+ typeKey: string;
16
+ rid: string | number;
17
+ };
18
+ export declare type FilterType = {
19
+ keywords?: string;
20
+ precise_kw?: string;
21
+ type?: string;
22
+ state?: string;
23
+ cover_type?: string;
24
+ banner?: string;
25
+ publish_date?: [number, number];
26
+ order?: string;
27
+ sort?: number;
28
+ where?: string[];
29
+ };
30
+ export declare type PageType = {
31
+ index: number;
32
+ size: number;
33
+ total: number;
34
+ };
35
+ export declare type MediaFileType = {
36
+ id: IdType;
37
+ title?: string;
38
+ alias?: string;
39
+ name?: string;
40
+ series: string;
41
+ duty_editor?: string;
42
+ position?: string;
43
+ city_alias?: string;
44
+ pub_time?: string;
45
+ created_at?: string;
46
+ updated_at?: string;
47
+ author_alias?: string;
48
+ cover?: {
49
+ banner?: boolean;
50
+ };
51
+ catalog: string;
52
+ target_id: IdType;
53
+ target_type: number;
54
+ key: IdType;
55
+ isLeaf: boolean;
56
+ special_id?: IdType;
57
+ parentName?: string;
58
+ parentId?: IdType;
59
+ };
@@ -0,0 +1,2 @@
1
+ declare const selectAddTo: any;
2
+ export default selectAddTo;
@@ -0,0 +1,7 @@
1
+ import _selectAddTo from "./component.js";
2
+ const selectAddTo = Object.assign(_selectAddTo, {
3
+ install: (app) => {
4
+ app.component(_selectAddTo.name, _selectAddTo);
5
+ }
6
+ });
7
+ export { selectAddTo as default };
@@ -0,0 +1,18 @@
1
+ interface Params {
2
+ [key: string]: any;
3
+ }
4
+ export declare function getCategoryCategoriesTree(BASE_API: string, params?: Params): Promise<import("axios").AxiosResponse<any, any>>;
5
+ export declare function getCategoryPath(BASE_API: string, params?: Params): Promise<import("axios").AxiosResponse<any, any>>;
6
+ export declare function getCategoryMediaNew(BASE_API: string, params?: Params): Promise<import("axios").AxiosResponse<any, any>>;
7
+ export declare function checkCommitFulfillment(BASE_API: string, params?: Params): Promise<boolean>;
8
+ export declare function searchMlists(BASE_API: string, params?: Params): Promise<import("axios").AxiosResponse<any, any>>;
9
+ export declare function getCategorylistsGroups(BASE_API: string, params?: Params): Promise<import("axios").AxiosResponse<any, any>>;
10
+ export declare function searchMpaccount(BASE_API: string, params?: Params): Promise<import("axios").AxiosResponse<any, any>>;
11
+ export declare function getBroadcastList(BASE_API: string, params?: Params): Promise<import("axios").AxiosResponse<any, any>>;
12
+ export declare function getEqxiuList(BASE_API: string, params?: Params): Promise<import("axios").AxiosResponse<any, any>>;
13
+ export declare function getMpContentList(BASE_API: string, params?: Params): Promise<import("axios").AxiosResponse<any, any>>;
14
+ export declare function getRevealContent(BASE_API: string, params: any): Promise<import("axios").AxiosResponse<any, any>>;
15
+ export declare function getPoliticals(BASE_API: string, params: any): Promise<import("axios").AxiosResponse<any, any>>;
16
+ export declare function getMlists(BASE_API: string, params: any): Promise<import("axios").AxiosResponse<any, any>>;
17
+ export declare function getConfigurationNew(BASE_API: string, params?: Params): Promise<import("axios").AxiosResponse<any, any>>;
18
+ export {};
@@ -0,0 +1,30 @@
1
+ import request from "../../utils/request.js";
2
+ function getCategoryMediaNew(BASE_API, params) {
3
+ return request(BASE_API, {
4
+ url: `/poplar/v3/s/documents`,
5
+ method: "get",
6
+ params
7
+ });
8
+ }
9
+ function getPoliticals(BASE_API, params) {
10
+ return request(BASE_API, {
11
+ url: "/poplar/v2/politics/list",
12
+ method: "get",
13
+ params
14
+ });
15
+ }
16
+ function getMlists(BASE_API, params) {
17
+ return request(BASE_API, {
18
+ url: `/poplar/v2/mlists`,
19
+ method: "get",
20
+ params
21
+ });
22
+ }
23
+ function getConfigurationNew(BASE_API, params) {
24
+ return request(BASE_API, {
25
+ url: "/poplar/v2/configuration",
26
+ method: "get",
27
+ params
28
+ });
29
+ }
30
+ export { getCategoryMediaNew, getConfigurationNew, getMlists, getPoliticals };
@@ -0,0 +1,2 @@
1
+ export * from './useSelectAddToState';
2
+ export * from '../types';
@@ -0,0 +1,21 @@
1
+ import type { ComponentProps, ConfigData, TypeData } from '../types';
2
+ export declare const useSelectAddToState: (props: ComponentProps, emit: any) => {
3
+ visible: import("vue").WritableComputedRef<boolean, unknown>;
4
+ title: import("vue").ComputedRef<string>;
5
+ selectedData: import("vue").Ref<any[], any[]>;
6
+ hasSelected: import("vue").ComputedRef<boolean>;
7
+ typeDataController: import("vue").ComputedRef<TypeData>;
8
+ userInfo: import("vue").Ref<any, any>;
9
+ configData: import("vue").Ref<ConfigData, ConfigData>;
10
+ setVisible: (bool: boolean) => void;
11
+ selectedDataChangeHandle: (data: any[]) => void;
12
+ handleOk: () => void;
13
+ handleCancel: () => void;
14
+ comfirm: () => void;
15
+ HandleOpen: () => void;
16
+ HandleClose: () => void;
17
+ tabsChange: () => void;
18
+ loadConfig: () => Promise<void>;
19
+ checkServiceEnable: (key: string) => boolean;
20
+ getUserInfoHandle: () => Promise<void>;
21
+ };
@@ -0,0 +1,106 @@
1
+ import { computed, ref } from "vue";
2
+ import { getConfigurationNew } from "./api.js";
3
+ import { DEFAULT_BASE_API } from "../../config.js";
4
+ import useLoadUserInfo from "../../hooks/user.js";
5
+ const useSelectAddToState = (props, emit) => {
6
+ const BASE_API = props.BASE_API || DEFAULT_BASE_API;
7
+ const visible = computed({
8
+ get() {
9
+ return props.visible;
10
+ },
11
+ set(value) {
12
+ setVisible(value);
13
+ }
14
+ });
15
+ const selectedData = ref([]);
16
+ const configData = ref({});
17
+ const { userInfo, getUserInfoHandle } = useLoadUserInfo(BASE_API);
18
+ const title = computed(() => {
19
+ const titleMap = {
20
+ "series:video_album": "\u6DFB\u52A0\u81F3\u89C6\u9891\u5408\u96C6",
21
+ "series:special_v3": "\u6DFB\u52A0\u81F3\u4E13\u9898",
22
+ "series:audio_album": "\u6DFB\u52A0\u81F3\u97F3\u9891\u5408\u96C6",
23
+ "series:article_album": "\u6DFB\u52A0\u81F3\u653F\u60C5\u4EBA\u7269\u76F8\u5173\u62A5\u9053"
24
+ };
25
+ return titleMap[props.typeKey || ""] || "";
26
+ });
27
+ const hasSelected = computed(() => selectedData.value.length > 0);
28
+ const typeDataController = computed(() => {
29
+ if (!props.typeData)
30
+ return {};
31
+ try {
32
+ return JSON.parse(JSON.stringify(props.typeData));
33
+ } catch (e) {
34
+ console.warn("Failed to parse typeData:", e);
35
+ return {};
36
+ }
37
+ });
38
+ const setVisible = (bool) => {
39
+ emit("update:visible", bool);
40
+ };
41
+ const selectedDataChangeHandle = (data) => {
42
+ selectedData.value = data;
43
+ };
44
+ const handleOk = () => {
45
+ setVisible(false);
46
+ };
47
+ const handleCancel = () => {
48
+ setVisible(false);
49
+ };
50
+ const comfirm = () => {
51
+ emit("comfirm", JSON.parse(JSON.stringify(selectedData.value)));
52
+ };
53
+ const HandleOpen = () => {
54
+ selectedData.value = props.defaultSelectedData || [];
55
+ };
56
+ const HandleClose = () => {
57
+ selectedData.value = [];
58
+ };
59
+ const tabsChange = () => {
60
+ selectedData.value = [];
61
+ };
62
+ const loadConfig = async () => {
63
+ var _a;
64
+ try {
65
+ const res = await getConfigurationNew(BASE_API, {
66
+ module: "third_party_services"
67
+ });
68
+ if (res.code === 0 && ((_a = res.message) == null ? void 0 : _a.length)) {
69
+ res.message.forEach((item) => {
70
+ configData.value[item.key] = JSON.parse(item.value);
71
+ });
72
+ }
73
+ } catch (error) {
74
+ console.error("Failed to load configuration:", error);
75
+ }
76
+ };
77
+ const checkServiceEnable = (key) => {
78
+ const data = configData.value[key];
79
+ if (!data)
80
+ return false;
81
+ if (!data.enable && typeof data.enable !== "undefined")
82
+ return false;
83
+ return true;
84
+ };
85
+ return {
86
+ visible,
87
+ title,
88
+ selectedData,
89
+ hasSelected,
90
+ typeDataController,
91
+ userInfo,
92
+ configData,
93
+ setVisible,
94
+ selectedDataChangeHandle,
95
+ handleOk,
96
+ handleCancel,
97
+ comfirm,
98
+ HandleOpen,
99
+ HandleClose,
100
+ tabsChange,
101
+ loadConfig,
102
+ checkServiceEnable,
103
+ getUserInfoHandle
104
+ };
105
+ };
106
+ export { useSelectAddToState };
@@ -0,0 +1 @@
1
+ import "./index.css";
@@ -0,0 +1,3 @@
1
+ .select-add-to {
2
+ display: inline-block;
3
+ }
@@ -0,0 +1 @@
1
+ import './index.less';
@@ -0,0 +1 @@
1
+ import "./index.less";
@@ -0,0 +1,3 @@
1
+ .select-add-to {
2
+ display: inline-block;
3
+ }