@cmstops/pro-compo 3.9.1-rc.10 → 3.9.1-rc.12
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 +134 -134
- package/es/docHistory/style/index.less +37 -37
- package/es/index.js +1 -0
- package/es/selectAddTo/component.js +127 -0
- package/es/selectAddTo/component.vue_vue_type_style_index_0_scoped_true_lang.js +2 -0
- package/es/selectAddTo/components/ViewAllColumn/MediaFilter/index.js +169 -0
- package/es/selectAddTo/components/ViewAllColumn/index.js +211 -0
- package/es/selectAddTo/components/ViewAllColumn/index.vue_vue_type_style_index_0_scoped_true_lang.js +2 -0
- package/es/selectAddTo/components/ViewAllColumn/script/useTableColumns.js +102 -0
- package/es/selectAddTo/components/ViewAllColumn/script/useViewAllColumnState.js +195 -0
- package/es/selectAddTo/index.js +7 -0
- package/es/selectAddTo/script/api.js +30 -0
- package/es/selectAddTo/script/useSelectAddToState.js +106 -0
- package/es/selectAddTo/style/css.js +1 -0
- package/es/selectAddTo/style/index.css +3 -0
- package/es/selectAddTo/style/index.js +1 -0
- package/es/selectAddTo/style/index.less +3 -0
- package/es/selectResourceModal/components/List/ListLocal/index.js +1 -1
- package/es/selectResourceModal/style/index.less +55 -55
- package/es/selectResourceModal/style/list.less +203 -203
- package/es/style.css +57 -0
- package/es/typeIcons/component.js +1 -1
- package/lib/docHistory/style/index.less +37 -37
- package/lib/index.js +2 -0
- package/lib/selectAddTo/component.js +128 -0
- package/lib/selectAddTo/component.vue_vue_type_style_index_0_scoped_true_lang.js +3 -0
- package/lib/selectAddTo/components/ViewAllColumn/MediaFilter/index.js +170 -0
- package/lib/selectAddTo/components/ViewAllColumn/index.js +212 -0
- package/lib/selectAddTo/components/ViewAllColumn/index.vue_vue_type_style_index_0_scoped_true_lang.js +3 -0
- package/lib/selectAddTo/components/ViewAllColumn/script/useTableColumns.js +108 -0
- package/lib/selectAddTo/components/ViewAllColumn/script/useViewAllColumnState.js +197 -0
- package/lib/selectAddTo/index.js +8 -0
- package/lib/selectAddTo/script/api.js +35 -0
- package/lib/selectAddTo/script/useSelectAddToState.js +108 -0
- package/lib/selectAddTo/style/css.js +2 -0
- package/lib/selectAddTo/style/index.css +3 -0
- package/lib/selectAddTo/style/index.js +2 -0
- package/lib/selectAddTo/style/index.less +3 -0
- package/lib/selectResourceModal/components/List/ListLocal/index.js +1 -1
- package/lib/selectResourceModal/style/index.less +55 -55
- package/lib/selectResourceModal/style/list.less +203 -203
- package/lib/typeIcons/component.js +1 -1
- package/package.json +138 -138
package/README.md
CHANGED
|
@@ -1,134 +1,134 @@
|
|
|
1
|
-
# 智媒管家业务组件库
|
|
2
|
-
|
|
3
|
-
> 快速上手:[传送门](/docs/get-start.md)
|
|
4
|
-
|
|
5
|
-
## 模块介绍
|
|
6
|
-
|
|
7
|
-
业务组件库基于 Vue3 + Storybook 搭建,结合 ArcoDesgin,包含智媒管家平台核心业务相关组件
|
|
8
|
-
|
|
9
|
-
## 版本规范
|
|
10
|
-
|
|
11
|
-
关于版本,这里需要提一下
|
|
12
|
-
|
|
13
|
-
按理论来讲业务组件的版本和产品的版本不应该有强关联(即产品的版本是 3.0,业务组件可以是 1.0)
|
|
14
|
-
但是因为产品的买家(即甲方爸爸)使用的产品可能是 3.1、3.2、3.3...,并且会有强定制的情况
|
|
15
|
-
|
|
16
|
-
所以这里我们需要有一个约定,以便研发人员更好的溯源 & 协作 & 维护~
|
|
17
|
-
|
|
18
|
-
当前约定如下:
|
|
19
|
-
|
|
20
|
-
| 分支类型 | 分支名称 | 描述 | 使用位置 | 版本号规则 |
|
|
21
|
-
| ------------ | ---------------------------- | -------------------------------- | ------------- | ---------------------------- |
|
|
22
|
-
| **主分支** | main | 研发自测完毕并 _可以上线_ 的需求 | 预发布环境 | x.x.x-**rc**.y |
|
|
23
|
-
| **版本分支** | release/xxx | 经过完整测试的需求 | 线上/项目环境 | x.x.x-**stable**.y |
|
|
24
|
-
| **定制分支** | release/xxx-{{project.name}} | 经过测试的 _定制_ 需求 | 项目环境 | x.x.x-**{{project.name}}**.y |
|
|
25
|
-
| **开发分支** | develop | 研发自测完毕的需求 | 测试环境 | x.x.x-**alpha**.y |
|
|
26
|
-
|
|
27
|
-
> 所谓 "可以上线",有两种情况:
|
|
28
|
-
>
|
|
29
|
-
> 1. 是指当前产品发布计划中是否有该功能,如果有,则可以合并至 main,否则不可以
|
|
30
|
-
> 2. 该功能是所有版本通用的功能,无论产品版本是多少,都可以合并至 main
|
|
31
|
-
|
|
32
|
-
### 版本发布示例
|
|
33
|
-
|
|
34
|
-
假设当前产品版本是 3.2.0
|
|
35
|
-
此时:
|
|
36
|
-
|
|
37
|
-
- 主分支 main 版本号为 3.2.0-rc.0
|
|
38
|
-
- 版本分支 release/v3.2.0 版本号为 3.2.0-stable.0
|
|
39
|
-
- 开发分支 develop 版本号为 3.2.0-alpha.0
|
|
40
|
-
|
|
41
|
-
#### 示例 1:当前版本 bug 修复 A 功能和 B 功能
|
|
42
|
-
|
|
43
|
-
1. 第一步:基于 release/v3.2.0 版本切出:hotfix/v3.2.0-A,hotfix/v3.2.0-B
|
|
44
|
-
2. 第二步:bug-A 修复后,将 hotfix/v3.2.0-A 合并至 develop 自测并发布 3.2.0-alpha.**1**
|
|
45
|
-
3. 第三步:bug-B 修复后,将 hotfix/v3.2.0-B 合并至 develop 自测并发布 3.2.0-alpha.**2**
|
|
46
|
-
4. 第四步:自测完毕后,将 hotfix/v3.2.0-A & hotfix/v3.2.0-B 合并至 main 并发布 3.2.0-rc.**1** 交付测试
|
|
47
|
-
5. 第五步:测试完毕后,将 hotfix/v3.2.0-A & hotfix/v3.2.0-B 合并至 release/v3.2.0 并发布 3.2.0-stable.**1** 交付线上
|
|
48
|
-
|
|
49
|
-
> 注意:第二步第三步可以分开 publish,也可以都合并到 develop 之后再 publish,因为两个 bug 不一定是同一个人修复,所以会有个先后顺序
|
|
50
|
-
> 但是尽量 rc 和 stable 尽量统一发布,减少版本号的迭代,方便维护和问题追溯
|
|
51
|
-
|
|
52
|
-
功能分支走向图:
|
|
53
|
-
|
|
54
|
-
```mermaid
|
|
55
|
-
graph TD
|
|
56
|
-
A[release/v3.2.0] --> B[hotfix/v3.2.0-A]
|
|
57
|
-
A --> C[hotfix/v3.2.0-B]
|
|
58
|
-
B --> D[develop 3.2.0-alpha.1]
|
|
59
|
-
C --> E[develop 3.2.0-alpha.2]
|
|
60
|
-
D --> F[main 3.2.0-rc.1]
|
|
61
|
-
E --> F
|
|
62
|
-
F --> G[release/v3.2.0 3.2.0-stable.1]
|
|
63
|
-
```
|
|
64
|
-
|
|
65
|
-
#### 示例 2:历史版本 release/v3.0.0 bug 修复 C 功能
|
|
66
|
-
|
|
67
|
-
1. 第一步:基于 release/v3.0.0 版本分支切出:hotfix/v3.0.0-C
|
|
68
|
-
2. 第二步:bug-C 修复后,将 hotfix/v3.0.0-C 合并至 develop 自测,并发布 3.2.0-alpha.**3**
|
|
69
|
-
3. 第三步:自测完毕后,将 hotfix/v3.0.0-C 合并至 main 并发布 3.2.0-rc.**2** 交付测试
|
|
70
|
-
4. 第四步:测试完毕后,将 hotfix/v3.0.0-C 合并至 release/v3.0.0、release/v3.0.0、release/v3.1.0、release/v3.2.0;并发布:3.0.0-stable.x、3.1.0-stable.y、3.2.0-stable.**2**
|
|
71
|
-
|
|
72
|
-
功能分支走向图:
|
|
73
|
-
|
|
74
|
-
```mermaid
|
|
75
|
-
graph TD
|
|
76
|
-
A[release/v3.0.0] --> B[hotfix/v3.0.0-C]
|
|
77
|
-
B --> C[develop 3.2.0-alpha.3]
|
|
78
|
-
C --> D[main 3.2.0-rc.2]
|
|
79
|
-
D --> E[release/v3.0.0 3.0.0-stable.x]
|
|
80
|
-
D --> F[release/v3.1.0 3.1.0-stable.y]
|
|
81
|
-
D --> G[release/v3.2.0 3.2.0-stable.2]
|
|
82
|
-
```
|
|
83
|
-
|
|
84
|
-
> 注意:如果是低版本的问题,尽可能的在出问题的版本处理,然后逐层向上合并(如果新版本已经修复并且代码改动较多,有冲突时,解决冲突并保留新版本原逻辑即可)
|
|
85
|
-
> **如果按照社区常见的版本迭代规则,bug 的解决应该是在最新版本,旧版本的代码是不会改动的。**
|
|
86
|
-
> **但是实际我们自己的业务场景必须低版本也要能解决,为了尽量不去重复写代码,只能去手动的维护一下该操作。**
|
|
87
|
-
|
|
88
|
-
#### 示例 3:新版本 release/v3.3.0 功能 D 开发
|
|
89
|
-
|
|
90
|
-
1. 第一步:基于 release/v3.2.0 版本切出:feature/v3.3.0-D
|
|
91
|
-
2. 第二步:Feat-D 开发完毕后,将 feature/v3.3.0-D 合并至 develop 自测,并发布 3.3.0-alpha.**0**
|
|
92
|
-
3. 第三步:自测完毕后,将 feature/v3.3.0-D 合并至 main,并发布 3.3.0-rc.**0**
|
|
93
|
-
4. 第四步:测试完毕后,基于 release/v3.2.0 切出 release/v3.3.0,将 feature/v3.3.0-D 合并至 release/v3.3.0
|
|
94
|
-
|
|
95
|
-
功能分支走向图:
|
|
96
|
-
|
|
97
|
-
```mermaid
|
|
98
|
-
graph TD
|
|
99
|
-
A[release/v3.2.0] --> B[feature/v3.3.0-D]
|
|
100
|
-
B --> C[develop 3.3.0-alpha.0]
|
|
101
|
-
C --> D[main 3.3.0-rc.0]
|
|
102
|
-
A --> E[release/v3.3.0]
|
|
103
|
-
D --> E
|
|
104
|
-
```
|
|
105
|
-
|
|
106
|
-
#### 示例 4:通用功能 E 开发
|
|
107
|
-
|
|
108
|
-
1. 第一步:基于最早版本 release/v3.0.0 切出:feature/v3.0.0-E
|
|
109
|
-
2. 第二步:Feat-E 开发完毕后,将 feature/v3.0.0-E 合并至 develop 自测,并发布 3.3.0-alpha.**1**
|
|
110
|
-
3. 第三步:自测完毕后,将 feature/v3.0.0-E 合并至 main,并发布 3.3.0-rc.**1**
|
|
111
|
-
4. 第四步:测试完毕后,将 feature/v3.0.0-E 合并至 release/v3.0.0、releaes/v3.1.0、release/v3.2.0、release/v3.3.0
|
|
112
|
-
|
|
113
|
-
> 业务组件库这个项目和其他模块的不同之处在于,如果这里说是新功能
|
|
114
|
-
> 一般是指又抽离出了一个产品的核心业务,而这个核心业务与产品的 **版本** 关联性不强,所有版本均可使用的这种功能
|
|
115
|
-
|
|
116
|
-
功能分支走向图:
|
|
117
|
-
|
|
118
|
-
```mermaid
|
|
119
|
-
graph TD
|
|
120
|
-
A[release/v3.0.0] --> B[feature/v3.0.0-E]
|
|
121
|
-
B --> C[develop 3.3.0-alpha.1]
|
|
122
|
-
C --> D[main 3.3.0-rc.1]
|
|
123
|
-
D --> E[release/v3.0.0]
|
|
124
|
-
D --> F[release/v3.1.0]
|
|
125
|
-
D --> G[release/v3.2.0]
|
|
126
|
-
D --> H[release/v3.3.0]
|
|
127
|
-
```
|
|
128
|
-
|
|
129
|
-
#### 示例 5:3.1.0 版本 _G_ 项目定制 功能 F 开发
|
|
130
|
-
|
|
131
|
-
1. 第一步:基于 release/v3.1.0 切出:feature/v3.1.0-G-F
|
|
132
|
-
2. 第二步:Feat-F 开发完毕后,基于 release/v3.1.0 切出 release/v3.1.0-G,将 feature/v3.1.0-G-F 合并至 release/v3.1.0-G,并发布 3.1.0-G.**0**
|
|
133
|
-
|
|
134
|
-
> 注意:如果有项目有定制,后续的任何通用更新不会覆盖该版本,所以在定制之前需和产品 **再三确认**
|
|
1
|
+
# 智媒管家业务组件库
|
|
2
|
+
|
|
3
|
+
> 快速上手:[传送门](/docs/get-start.md)
|
|
4
|
+
|
|
5
|
+
## 模块介绍
|
|
6
|
+
|
|
7
|
+
业务组件库基于 Vue3 + Storybook 搭建,结合 ArcoDesgin,包含智媒管家平台核心业务相关组件
|
|
8
|
+
|
|
9
|
+
## 版本规范
|
|
10
|
+
|
|
11
|
+
关于版本,这里需要提一下
|
|
12
|
+
|
|
13
|
+
按理论来讲业务组件的版本和产品的版本不应该有强关联(即产品的版本是 3.0,业务组件可以是 1.0)
|
|
14
|
+
但是因为产品的买家(即甲方爸爸)使用的产品可能是 3.1、3.2、3.3...,并且会有强定制的情况
|
|
15
|
+
|
|
16
|
+
所以这里我们需要有一个约定,以便研发人员更好的溯源 & 协作 & 维护~
|
|
17
|
+
|
|
18
|
+
当前约定如下:
|
|
19
|
+
|
|
20
|
+
| 分支类型 | 分支名称 | 描述 | 使用位置 | 版本号规则 |
|
|
21
|
+
| ------------ | ---------------------------- | -------------------------------- | ------------- | ---------------------------- |
|
|
22
|
+
| **主分支** | main | 研发自测完毕并 _可以上线_ 的需求 | 预发布环境 | x.x.x-**rc**.y |
|
|
23
|
+
| **版本分支** | release/xxx | 经过完整测试的需求 | 线上/项目环境 | x.x.x-**stable**.y |
|
|
24
|
+
| **定制分支** | release/xxx-{{project.name}} | 经过测试的 _定制_ 需求 | 项目环境 | x.x.x-**{{project.name}}**.y |
|
|
25
|
+
| **开发分支** | develop | 研发自测完毕的需求 | 测试环境 | x.x.x-**alpha**.y |
|
|
26
|
+
|
|
27
|
+
> 所谓 "可以上线",有两种情况:
|
|
28
|
+
>
|
|
29
|
+
> 1. 是指当前产品发布计划中是否有该功能,如果有,则可以合并至 main,否则不可以
|
|
30
|
+
> 2. 该功能是所有版本通用的功能,无论产品版本是多少,都可以合并至 main
|
|
31
|
+
|
|
32
|
+
### 版本发布示例
|
|
33
|
+
|
|
34
|
+
假设当前产品版本是 3.2.0
|
|
35
|
+
此时:
|
|
36
|
+
|
|
37
|
+
- 主分支 main 版本号为 3.2.0-rc.0
|
|
38
|
+
- 版本分支 release/v3.2.0 版本号为 3.2.0-stable.0
|
|
39
|
+
- 开发分支 develop 版本号为 3.2.0-alpha.0
|
|
40
|
+
|
|
41
|
+
#### 示例 1:当前版本 bug 修复 A 功能和 B 功能
|
|
42
|
+
|
|
43
|
+
1. 第一步:基于 release/v3.2.0 版本切出:hotfix/v3.2.0-A,hotfix/v3.2.0-B
|
|
44
|
+
2. 第二步:bug-A 修复后,将 hotfix/v3.2.0-A 合并至 develop 自测并发布 3.2.0-alpha.**1**
|
|
45
|
+
3. 第三步:bug-B 修复后,将 hotfix/v3.2.0-B 合并至 develop 自测并发布 3.2.0-alpha.**2**
|
|
46
|
+
4. 第四步:自测完毕后,将 hotfix/v3.2.0-A & hotfix/v3.2.0-B 合并至 main 并发布 3.2.0-rc.**1** 交付测试
|
|
47
|
+
5. 第五步:测试完毕后,将 hotfix/v3.2.0-A & hotfix/v3.2.0-B 合并至 release/v3.2.0 并发布 3.2.0-stable.**1** 交付线上
|
|
48
|
+
|
|
49
|
+
> 注意:第二步第三步可以分开 publish,也可以都合并到 develop 之后再 publish,因为两个 bug 不一定是同一个人修复,所以会有个先后顺序
|
|
50
|
+
> 但是尽量 rc 和 stable 尽量统一发布,减少版本号的迭代,方便维护和问题追溯
|
|
51
|
+
|
|
52
|
+
功能分支走向图:
|
|
53
|
+
|
|
54
|
+
```mermaid
|
|
55
|
+
graph TD
|
|
56
|
+
A[release/v3.2.0] --> B[hotfix/v3.2.0-A]
|
|
57
|
+
A --> C[hotfix/v3.2.0-B]
|
|
58
|
+
B --> D[develop 3.2.0-alpha.1]
|
|
59
|
+
C --> E[develop 3.2.0-alpha.2]
|
|
60
|
+
D --> F[main 3.2.0-rc.1]
|
|
61
|
+
E --> F
|
|
62
|
+
F --> G[release/v3.2.0 3.2.0-stable.1]
|
|
63
|
+
```
|
|
64
|
+
|
|
65
|
+
#### 示例 2:历史版本 release/v3.0.0 bug 修复 C 功能
|
|
66
|
+
|
|
67
|
+
1. 第一步:基于 release/v3.0.0 版本分支切出:hotfix/v3.0.0-C
|
|
68
|
+
2. 第二步:bug-C 修复后,将 hotfix/v3.0.0-C 合并至 develop 自测,并发布 3.2.0-alpha.**3**
|
|
69
|
+
3. 第三步:自测完毕后,将 hotfix/v3.0.0-C 合并至 main 并发布 3.2.0-rc.**2** 交付测试
|
|
70
|
+
4. 第四步:测试完毕后,将 hotfix/v3.0.0-C 合并至 release/v3.0.0、release/v3.0.0、release/v3.1.0、release/v3.2.0;并发布:3.0.0-stable.x、3.1.0-stable.y、3.2.0-stable.**2**
|
|
71
|
+
|
|
72
|
+
功能分支走向图:
|
|
73
|
+
|
|
74
|
+
```mermaid
|
|
75
|
+
graph TD
|
|
76
|
+
A[release/v3.0.0] --> B[hotfix/v3.0.0-C]
|
|
77
|
+
B --> C[develop 3.2.0-alpha.3]
|
|
78
|
+
C --> D[main 3.2.0-rc.2]
|
|
79
|
+
D --> E[release/v3.0.0 3.0.0-stable.x]
|
|
80
|
+
D --> F[release/v3.1.0 3.1.0-stable.y]
|
|
81
|
+
D --> G[release/v3.2.0 3.2.0-stable.2]
|
|
82
|
+
```
|
|
83
|
+
|
|
84
|
+
> 注意:如果是低版本的问题,尽可能的在出问题的版本处理,然后逐层向上合并(如果新版本已经修复并且代码改动较多,有冲突时,解决冲突并保留新版本原逻辑即可)
|
|
85
|
+
> **如果按照社区常见的版本迭代规则,bug 的解决应该是在最新版本,旧版本的代码是不会改动的。**
|
|
86
|
+
> **但是实际我们自己的业务场景必须低版本也要能解决,为了尽量不去重复写代码,只能去手动的维护一下该操作。**
|
|
87
|
+
|
|
88
|
+
#### 示例 3:新版本 release/v3.3.0 功能 D 开发
|
|
89
|
+
|
|
90
|
+
1. 第一步:基于 release/v3.2.0 版本切出:feature/v3.3.0-D
|
|
91
|
+
2. 第二步:Feat-D 开发完毕后,将 feature/v3.3.0-D 合并至 develop 自测,并发布 3.3.0-alpha.**0**
|
|
92
|
+
3. 第三步:自测完毕后,将 feature/v3.3.0-D 合并至 main,并发布 3.3.0-rc.**0**
|
|
93
|
+
4. 第四步:测试完毕后,基于 release/v3.2.0 切出 release/v3.3.0,将 feature/v3.3.0-D 合并至 release/v3.3.0
|
|
94
|
+
|
|
95
|
+
功能分支走向图:
|
|
96
|
+
|
|
97
|
+
```mermaid
|
|
98
|
+
graph TD
|
|
99
|
+
A[release/v3.2.0] --> B[feature/v3.3.0-D]
|
|
100
|
+
B --> C[develop 3.3.0-alpha.0]
|
|
101
|
+
C --> D[main 3.3.0-rc.0]
|
|
102
|
+
A --> E[release/v3.3.0]
|
|
103
|
+
D --> E
|
|
104
|
+
```
|
|
105
|
+
|
|
106
|
+
#### 示例 4:通用功能 E 开发
|
|
107
|
+
|
|
108
|
+
1. 第一步:基于最早版本 release/v3.0.0 切出:feature/v3.0.0-E
|
|
109
|
+
2. 第二步:Feat-E 开发完毕后,将 feature/v3.0.0-E 合并至 develop 自测,并发布 3.3.0-alpha.**1**
|
|
110
|
+
3. 第三步:自测完毕后,将 feature/v3.0.0-E 合并至 main,并发布 3.3.0-rc.**1**
|
|
111
|
+
4. 第四步:测试完毕后,将 feature/v3.0.0-E 合并至 release/v3.0.0、releaes/v3.1.0、release/v3.2.0、release/v3.3.0
|
|
112
|
+
|
|
113
|
+
> 业务组件库这个项目和其他模块的不同之处在于,如果这里说是新功能
|
|
114
|
+
> 一般是指又抽离出了一个产品的核心业务,而这个核心业务与产品的 **版本** 关联性不强,所有版本均可使用的这种功能
|
|
115
|
+
|
|
116
|
+
功能分支走向图:
|
|
117
|
+
|
|
118
|
+
```mermaid
|
|
119
|
+
graph TD
|
|
120
|
+
A[release/v3.0.0] --> B[feature/v3.0.0-E]
|
|
121
|
+
B --> C[develop 3.3.0-alpha.1]
|
|
122
|
+
C --> D[main 3.3.0-rc.1]
|
|
123
|
+
D --> E[release/v3.0.0]
|
|
124
|
+
D --> F[release/v3.1.0]
|
|
125
|
+
D --> G[release/v3.2.0]
|
|
126
|
+
D --> H[release/v3.3.0]
|
|
127
|
+
```
|
|
128
|
+
|
|
129
|
+
#### 示例 5:3.1.0 版本 _G_ 项目定制 功能 F 开发
|
|
130
|
+
|
|
131
|
+
1. 第一步:基于 release/v3.1.0 切出:feature/v3.1.0-G-F
|
|
132
|
+
2. 第二步:Feat-F 开发完毕后,基于 release/v3.1.0 切出 release/v3.1.0-G,将 feature/v3.1.0-G-F 合并至 release/v3.1.0-G,并发布 3.1.0-G.**0**
|
|
133
|
+
|
|
134
|
+
> 注意:如果有项目有定制,后续的任何通用更新不会覆盖该版本,所以在定制之前需和产品 **再三确认**
|
|
@@ -1,37 +1,37 @@
|
|
|
1
|
-
@import './docDiffPanel.less';
|
|
2
|
-
@import './docHistoryList.less';
|
|
3
|
-
|
|
4
|
-
.doc-history-wrap {
|
|
5
|
-
display: flex;
|
|
6
|
-
width: 100%;
|
|
7
|
-
height: 100%;
|
|
8
|
-
overflow: hidden;
|
|
9
|
-
|
|
10
|
-
.doc-diff-panel {
|
|
11
|
-
flex: 1;
|
|
12
|
-
height: 100%;
|
|
13
|
-
|
|
14
|
-
.doc-diff-panel-wrap {
|
|
15
|
-
padding: 24px;
|
|
16
|
-
}
|
|
17
|
-
}
|
|
18
|
-
|
|
19
|
-
.doc-history-list {
|
|
20
|
-
height: 100%;
|
|
21
|
-
}
|
|
22
|
-
}
|
|
23
|
-
|
|
24
|
-
.doc-history-drawer {
|
|
25
|
-
.arco-drawer-body {
|
|
26
|
-
padding: 0;
|
|
27
|
-
}
|
|
28
|
-
|
|
29
|
-
.arco-drawer-footer {
|
|
30
|
-
text-align: left;
|
|
31
|
-
}
|
|
32
|
-
}
|
|
33
|
-
|
|
34
|
-
.doc-history-modal-wrap {
|
|
35
|
-
height: 70vh;
|
|
36
|
-
padding: 0;
|
|
37
|
-
}
|
|
1
|
+
@import './docDiffPanel.less';
|
|
2
|
+
@import './docHistoryList.less';
|
|
3
|
+
|
|
4
|
+
.doc-history-wrap {
|
|
5
|
+
display: flex;
|
|
6
|
+
width: 100%;
|
|
7
|
+
height: 100%;
|
|
8
|
+
overflow: hidden;
|
|
9
|
+
|
|
10
|
+
.doc-diff-panel {
|
|
11
|
+
flex: 1;
|
|
12
|
+
height: 100%;
|
|
13
|
+
|
|
14
|
+
.doc-diff-panel-wrap {
|
|
15
|
+
padding: 24px;
|
|
16
|
+
}
|
|
17
|
+
}
|
|
18
|
+
|
|
19
|
+
.doc-history-list {
|
|
20
|
+
height: 100%;
|
|
21
|
+
}
|
|
22
|
+
}
|
|
23
|
+
|
|
24
|
+
.doc-history-drawer {
|
|
25
|
+
.arco-drawer-body {
|
|
26
|
+
padding: 0;
|
|
27
|
+
}
|
|
28
|
+
|
|
29
|
+
.arco-drawer-footer {
|
|
30
|
+
text-align: left;
|
|
31
|
+
}
|
|
32
|
+
}
|
|
33
|
+
|
|
34
|
+
.doc-history-modal-wrap {
|
|
35
|
+
height: 70vh;
|
|
36
|
+
padding: 0;
|
|
37
|
+
}
|
package/es/index.js
CHANGED
|
@@ -28,3 +28,4 @@ export { default as docPreview } from "./docPreview/index.js";
|
|
|
28
28
|
export { default as docHistory } from "./docHistory/index.js";
|
|
29
29
|
export { default as videoThumb } from "./videoThumb/index.js";
|
|
30
30
|
export { default as importData } from "./importData/index.js";
|
|
31
|
+
export { default as selectAddTo } from "./selectAddTo/index.js";
|
|
@@ -0,0 +1,127 @@
|
|
|
1
|
+
import { defineComponent, onMounted, resolveComponent, openBlock, createBlock, unref, withCtx, createTextVNode, toDisplayString, createVNode, isRef, createCommentVNode } from "vue";
|
|
2
|
+
import { Modal, Tabs, Button } from "@arco-design/web-vue";
|
|
3
|
+
import ViewAllColumn from "./components/ViewAllColumn/index.js";
|
|
4
|
+
import "../typeIcons/style/index.js";
|
|
5
|
+
import { useSelectAddToState } from "./script/useSelectAddToState.js";
|
|
6
|
+
import "./component.vue_vue_type_style_index_0_scoped_true_lang.js";
|
|
7
|
+
import _export_sfc from "../_virtual/plugin-vue_export-helper.js";
|
|
8
|
+
const _sfc_main = defineComponent({
|
|
9
|
+
...{ name: "selectAddTo" },
|
|
10
|
+
__name: "component",
|
|
11
|
+
props: {
|
|
12
|
+
BASE_API: {},
|
|
13
|
+
visible: { type: Boolean },
|
|
14
|
+
title: {},
|
|
15
|
+
outsideSelectData: {},
|
|
16
|
+
defaultSelectedData: {},
|
|
17
|
+
maxSelect: {},
|
|
18
|
+
typeData: {},
|
|
19
|
+
userStore: {},
|
|
20
|
+
compoFilter: { type: Boolean, default: false },
|
|
21
|
+
typeKey: {},
|
|
22
|
+
rid: {}
|
|
23
|
+
},
|
|
24
|
+
emits: ["update:visible", "comfirm"],
|
|
25
|
+
setup(__props, { emit: __emit }) {
|
|
26
|
+
const emit = __emit;
|
|
27
|
+
const props = __props;
|
|
28
|
+
const {
|
|
29
|
+
visible,
|
|
30
|
+
title,
|
|
31
|
+
selectedData,
|
|
32
|
+
hasSelected,
|
|
33
|
+
typeDataController,
|
|
34
|
+
userInfo,
|
|
35
|
+
handleOk,
|
|
36
|
+
handleCancel,
|
|
37
|
+
comfirm,
|
|
38
|
+
HandleOpen,
|
|
39
|
+
HandleClose,
|
|
40
|
+
tabsChange,
|
|
41
|
+
selectedDataChangeHandle,
|
|
42
|
+
loadConfig,
|
|
43
|
+
getUserInfoHandle
|
|
44
|
+
} = useSelectAddToState(props, emit);
|
|
45
|
+
onMounted(() => {
|
|
46
|
+
if (props.userStore) {
|
|
47
|
+
userInfo.value = { BASE_API: props.BASE_API, ...props.userStore };
|
|
48
|
+
} else {
|
|
49
|
+
getUserInfoHandle();
|
|
50
|
+
}
|
|
51
|
+
loadConfig();
|
|
52
|
+
});
|
|
53
|
+
return (_ctx, _cache) => {
|
|
54
|
+
const _component_storeBox = resolveComponent("storeBox");
|
|
55
|
+
return openBlock(), createBlock(unref(Modal), {
|
|
56
|
+
footer: false,
|
|
57
|
+
"mask-closable": false,
|
|
58
|
+
visible: unref(visible),
|
|
59
|
+
"body-style": { maxHeight: "980px" },
|
|
60
|
+
"body-class": "add-content-modal-body",
|
|
61
|
+
"modal-class": "add-content-modal-wrapper",
|
|
62
|
+
"title-align": "start",
|
|
63
|
+
"unmount-on-close": "",
|
|
64
|
+
width: "1020px",
|
|
65
|
+
onCancel: unref(handleCancel),
|
|
66
|
+
onClose: unref(HandleClose),
|
|
67
|
+
onOk: unref(handleOk),
|
|
68
|
+
onOpen: unref(HandleOpen)
|
|
69
|
+
}, {
|
|
70
|
+
title: withCtx(() => [
|
|
71
|
+
createTextVNode(toDisplayString(unref(title)), 1)
|
|
72
|
+
]),
|
|
73
|
+
default: withCtx(() => [
|
|
74
|
+
createVNode(unref(Tabs), {
|
|
75
|
+
class: "content-tabs",
|
|
76
|
+
justify: "",
|
|
77
|
+
"lazy-load": "",
|
|
78
|
+
onTabClick: unref(tabsChange)
|
|
79
|
+
}, {
|
|
80
|
+
default: withCtx(() => {
|
|
81
|
+
var _a, _b;
|
|
82
|
+
return [
|
|
83
|
+
_ctx.rid ? (openBlock(), createBlock(ViewAllColumn, {
|
|
84
|
+
key: 0,
|
|
85
|
+
rid: _ctx.rid,
|
|
86
|
+
"default-selected-data": unref(selectedData),
|
|
87
|
+
"max-select": _ctx.maxSelect,
|
|
88
|
+
"user-info": unref(userInfo),
|
|
89
|
+
"type-key": _ctx.typeKey || "",
|
|
90
|
+
"type-data": unref(typeDataController),
|
|
91
|
+
series: ((_a = unref(typeDataController)) == null ? void 0 : _a.docSeries) || "all",
|
|
92
|
+
banner: ((_b = unref(typeDataController)) == null ? void 0 : _b.docBanner) || "all",
|
|
93
|
+
onChange: unref(selectedDataChangeHandle)
|
|
94
|
+
}, {
|
|
95
|
+
store: withCtx(() => [
|
|
96
|
+
createVNode(_component_storeBox, {
|
|
97
|
+
selectData: unref(selectedData),
|
|
98
|
+
"onUpdate:selectData": _cache[0] || (_cache[0] = ($event) => isRef(selectedData) ? selectedData.value = $event : null)
|
|
99
|
+
}, null, 8, ["selectData"])
|
|
100
|
+
]),
|
|
101
|
+
options: withCtx(() => [
|
|
102
|
+
createVNode(unref(Button), {
|
|
103
|
+
disabled: !unref(hasSelected),
|
|
104
|
+
type: "primary",
|
|
105
|
+
onClick: unref(comfirm)
|
|
106
|
+
}, {
|
|
107
|
+
default: withCtx(() => _cache[1] || (_cache[1] = [
|
|
108
|
+
createTextVNode(" \u6DFB\u52A0 ")
|
|
109
|
+
])),
|
|
110
|
+
_: 1,
|
|
111
|
+
__: [1]
|
|
112
|
+
}, 8, ["disabled", "onClick"])
|
|
113
|
+
]),
|
|
114
|
+
_: 1
|
|
115
|
+
}, 8, ["rid", "default-selected-data", "max-select", "user-info", "type-key", "type-data", "series", "banner", "onChange"])) : createCommentVNode("v-if", true)
|
|
116
|
+
];
|
|
117
|
+
}),
|
|
118
|
+
_: 1
|
|
119
|
+
}, 8, ["onTabClick"])
|
|
120
|
+
]),
|
|
121
|
+
_: 1
|
|
122
|
+
}, 8, ["visible", "onCancel", "onClose", "onOk", "onOpen"]);
|
|
123
|
+
};
|
|
124
|
+
}
|
|
125
|
+
});
|
|
126
|
+
var _selectAddTo = /* @__PURE__ */ _export_sfc(_sfc_main, [["__scopeId", "data-v-67e0583b"]]);
|
|
127
|
+
export { _selectAddTo as default };
|
|
@@ -0,0 +1,169 @@
|
|
|
1
|
+
import { defineComponent, ref, computed, watch, openBlock, createElementBlock, createVNode, unref, withCtx, Fragment, renderList, createElementVNode, toDisplayString, createBlock, createCommentVNode } from "vue";
|
|
2
|
+
import { Space, Input, Select, Option, Tooltip } from "@arco-design/web-vue";
|
|
3
|
+
import { IconInfoCircle } from "@arco-design/web-vue/es/icon";
|
|
4
|
+
const _hoisted_1 = { class: "media-filter-container" };
|
|
5
|
+
const _hoisted_2 = { style: { "display": "flex", "align-items": "center", "gap": "5px" } };
|
|
6
|
+
const _hoisted_3 = {
|
|
7
|
+
key: 0,
|
|
8
|
+
class: "sort-button"
|
|
9
|
+
};
|
|
10
|
+
const _sfc_main = defineComponent({
|
|
11
|
+
...{ name: "MediaFilter" },
|
|
12
|
+
__name: "index",
|
|
13
|
+
props: {
|
|
14
|
+
groupId: {},
|
|
15
|
+
tree: { default: () => [] },
|
|
16
|
+
series: { default: "all" },
|
|
17
|
+
banner: { default: "all" },
|
|
18
|
+
height: {},
|
|
19
|
+
userInfo: {},
|
|
20
|
+
typeKey: {}
|
|
21
|
+
},
|
|
22
|
+
emits: ["update:group_id", "search"],
|
|
23
|
+
setup(__props, { emit: __emit }) {
|
|
24
|
+
const props = __props;
|
|
25
|
+
const column_id = ref("all");
|
|
26
|
+
const emit = __emit;
|
|
27
|
+
const filter = ref({
|
|
28
|
+
keywords: "",
|
|
29
|
+
type: "",
|
|
30
|
+
cover_type: "",
|
|
31
|
+
banner: "",
|
|
32
|
+
sort: -1,
|
|
33
|
+
order: "create_time",
|
|
34
|
+
wordState: "precision"
|
|
35
|
+
});
|
|
36
|
+
const wordStateOptions = [
|
|
37
|
+
{
|
|
38
|
+
value: "precision",
|
|
39
|
+
label: "\u7CBE\u51C6\u641C",
|
|
40
|
+
desc: "\u4F1A\u4EE5\u8F93\u5165\u7684\u5B8C\u6574\u5173\u952E\u8BCD\u201C\u6210\u957F\u201D\u8FDB\u884C\u641C\u7D22\uFF0C\u641C\u7D22\u7ED3\u679C\u5173\u8054\u6027\u66F4\u9AD8\uFF0C\u4F46\u641C\u7D22\u7ED3\u679C\u66F4\u5C11"
|
|
41
|
+
},
|
|
42
|
+
{
|
|
43
|
+
value: "blur",
|
|
44
|
+
label: "\u6A21\u7CCA\u641C",
|
|
45
|
+
desc: "\u4F1A\u5C06\u8F93\u5165\u5185\u5BB9\u5206\u8BCD\uFF0C\u4F8B\u5982\u201C\u6210\u957F\u201D\u4F1A\u5206\u4E3A\u201C\u6210\u201D\u3001\u201C\u957F\u201D\u3001\u201C\u6210\u957F\u201D\uFF0C\u5185\u5BB9\u5305\u542B\u4E09\u4E2A\u8BCD\u4E2D\u4EFB\u610F\u4E00\u4E2A\u5747\u4F1A\u663E\u793A\u51FA\u6765\uFF0C\u641C\u7D22\u5185\u5BB9\u66F4\u52A0\u4E30\u5BCC"
|
|
46
|
+
}
|
|
47
|
+
];
|
|
48
|
+
const sortMethodOptions = computed(() => {
|
|
49
|
+
return [
|
|
50
|
+
{ value: "pub_time", label: "\u53D1\u5E03\u65F6\u95F4" },
|
|
51
|
+
{ value: "create_time", label: "\u521B\u5EFA\u65F6\u95F4" }
|
|
52
|
+
];
|
|
53
|
+
});
|
|
54
|
+
const checkout = (type) => {
|
|
55
|
+
filter.value.wordState = type;
|
|
56
|
+
};
|
|
57
|
+
const handleSearch = () => {
|
|
58
|
+
const params = JSON.parse(JSON.stringify(filter.value));
|
|
59
|
+
if (filter.value.wordState === "precision") {
|
|
60
|
+
params.precise_kw = params.keywords;
|
|
61
|
+
delete params.keywords;
|
|
62
|
+
}
|
|
63
|
+
delete params.wordState;
|
|
64
|
+
emit("search", params);
|
|
65
|
+
};
|
|
66
|
+
watch(
|
|
67
|
+
() => filter.value,
|
|
68
|
+
() => {
|
|
69
|
+
handleSearch();
|
|
70
|
+
},
|
|
71
|
+
{ deep: true }
|
|
72
|
+
);
|
|
73
|
+
watch(
|
|
74
|
+
() => props.groupId,
|
|
75
|
+
(val) => {
|
|
76
|
+
column_id.value = val;
|
|
77
|
+
}
|
|
78
|
+
);
|
|
79
|
+
watch(
|
|
80
|
+
() => props.banner,
|
|
81
|
+
(val) => {
|
|
82
|
+
filter.value.banner = val === "all" ? "" : val;
|
|
83
|
+
},
|
|
84
|
+
{ immediate: true }
|
|
85
|
+
);
|
|
86
|
+
watch(
|
|
87
|
+
() => column_id.value,
|
|
88
|
+
(val) => {
|
|
89
|
+
emit("update:group_id", val);
|
|
90
|
+
}
|
|
91
|
+
);
|
|
92
|
+
return (_ctx, _cache) => {
|
|
93
|
+
return openBlock(), createElementBlock("div", _hoisted_1, [
|
|
94
|
+
createVNode(unref(Space), { size: "small" }, {
|
|
95
|
+
default: withCtx(() => [
|
|
96
|
+
createVNode(unref(Input), {
|
|
97
|
+
modelValue: filter.value.keywords,
|
|
98
|
+
"onUpdate:modelValue": _cache[1] || (_cache[1] = ($event) => filter.value.keywords = $event),
|
|
99
|
+
"allow-clear": "",
|
|
100
|
+
class: "filter-item keyword",
|
|
101
|
+
placeholder: "\u8BF7\u8F93\u5165\u5185\u5BB9\u6807\u9898",
|
|
102
|
+
style: { width: "240px" },
|
|
103
|
+
onPressEnter: handleSearch
|
|
104
|
+
}, {
|
|
105
|
+
prepend: withCtx(() => [
|
|
106
|
+
createVNode(unref(Select), {
|
|
107
|
+
modelValue: filter.value.wordState,
|
|
108
|
+
"onUpdate:modelValue": _cache[0] || (_cache[0] = ($event) => filter.value.wordState = $event),
|
|
109
|
+
placeholder: "\u8BF7\u9009\u62E9",
|
|
110
|
+
onSelect: checkout
|
|
111
|
+
}, {
|
|
112
|
+
default: withCtx(() => [
|
|
113
|
+
(openBlock(), createElementBlock(Fragment, null, renderList(wordStateOptions, (item, index) => {
|
|
114
|
+
return createVNode(unref(Option), {
|
|
115
|
+
key: index,
|
|
116
|
+
value: item.value,
|
|
117
|
+
label: item.label
|
|
118
|
+
}, {
|
|
119
|
+
default: withCtx(() => [
|
|
120
|
+
createElementVNode("div", _hoisted_2, [
|
|
121
|
+
createElementVNode("span", null, toDisplayString(item.label), 1),
|
|
122
|
+
createVNode(unref(Tooltip), {
|
|
123
|
+
effect: "dark",
|
|
124
|
+
content: item.desc,
|
|
125
|
+
position: "right"
|
|
126
|
+
}, {
|
|
127
|
+
default: withCtx(() => [
|
|
128
|
+
createVNode(unref(IconInfoCircle))
|
|
129
|
+
]),
|
|
130
|
+
_: 2
|
|
131
|
+
}, 1032, ["content"])
|
|
132
|
+
])
|
|
133
|
+
]),
|
|
134
|
+
_: 2
|
|
135
|
+
}, 1032, ["value", "label"]);
|
|
136
|
+
}), 64))
|
|
137
|
+
]),
|
|
138
|
+
_: 1
|
|
139
|
+
}, 8, ["modelValue"])
|
|
140
|
+
]),
|
|
141
|
+
_: 1
|
|
142
|
+
}, 8, ["modelValue"])
|
|
143
|
+
]),
|
|
144
|
+
_: 1
|
|
145
|
+
}),
|
|
146
|
+
_ctx.typeKey && _ctx.typeKey !== "ZQ" ? (openBlock(), createElementBlock("div", _hoisted_3, [
|
|
147
|
+
createVNode(unref(Select), {
|
|
148
|
+
modelValue: filter.value.order,
|
|
149
|
+
"onUpdate:modelValue": _cache[2] || (_cache[2] = ($event) => filter.value.order = $event),
|
|
150
|
+
class: "filter-item",
|
|
151
|
+
placeholder: "\u521B\u5EFA\u65F6\u95F4"
|
|
152
|
+
}, {
|
|
153
|
+
default: withCtx(() => [
|
|
154
|
+
(openBlock(true), createElementBlock(Fragment, null, renderList(sortMethodOptions.value, (item) => {
|
|
155
|
+
return openBlock(), createBlock(unref(Option), {
|
|
156
|
+
key: item.value,
|
|
157
|
+
label: item.label,
|
|
158
|
+
value: item.value
|
|
159
|
+
}, null, 8, ["label", "value"]);
|
|
160
|
+
}), 128))
|
|
161
|
+
]),
|
|
162
|
+
_: 1
|
|
163
|
+
}, 8, ["modelValue"])
|
|
164
|
+
])) : createCommentVNode("v-if", true)
|
|
165
|
+
]);
|
|
166
|
+
};
|
|
167
|
+
}
|
|
168
|
+
});
|
|
169
|
+
export { _sfc_main as default };
|