agilebuilder-ui 1.1.45-ai2 → 1.1.46-sit1
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/lib/{401-beb8c7d3.js → 401-17c1ba58.js} +1 -1
- package/lib/{404-453588b3.js → 404-0bb0c21e.js} +1 -1
- package/lib/{iframe-page-11560b58.js → iframe-page-200e9f78.js} +1 -1
- package/lib/{index-bc79f11f.js → index-fbc950ca.js} +32520 -32816
- package/lib/super-ui.css +1 -1
- package/lib/super-ui.js +1 -1
- package/lib/super-ui.umd.cjs +124 -117
- package/lib/{tab-content-iframe-index-2cadaa46.js → tab-content-iframe-index-23a2150d.js} +1 -1
- package/lib/{tab-content-index-3455e8d6.js → tab-content-index-55c47eb2.js} +1 -1
- package/lib/{tache-subprocess-history-cfb4e2eb.js → tache-subprocess-history-9ffc5f04.js} +1 -1
- package/package.json +1 -1
- package/packages/chat-embed/src/index.vue +8 -3
- package/packages/fs-preview/src/fs-preview.vue +5 -1
- package/packages/fs-upload-list/src/fs-upload-list.vue +6 -1
- package/packages/fs-upload-new/src/fs-button-upload.vue +8 -1
- package/packages/fs-upload-new/src/fs-drag-upload.vue +8 -1
- package/packages/fs-upload-new/src/fs-upload-new.vue +17 -0
- package/packages/super-grid/src/apis.js +11 -0
- package/packages/super-grid/src/custom-formatter.js +15 -2
- package/packages/super-grid/src/dynamic-input.vue +46 -4
- package/packages/super-grid/src/formatter.js +5 -1
- package/packages/super-grid/src/normal-column-content.vue +30 -37
- package/packages/super-grid/src/normal-column.vue +8 -1
- package/packages/super-grid/src/row-operation.vue +13 -9
- package/packages/super-grid/src/super-grid.vue +7 -7
- package/src/i18n/langs/cn.js +3 -1
- package/src/i18n/langs/en.js +3 -1
- package/src/styles/element-ui.scss +8 -7
- package/src/styles/index.scss +19 -0
- package/src/utils/common-util.js +56 -8
- package/src/utils/insert_css.js +14 -1
- package/src/utils/jump-page-utils.js +8 -4
|
@@ -1,10 +1,10 @@
|
|
|
1
1
|
<template>
|
|
2
2
|
<!--将@click改为@mousedown.native是因为操作列保存按钮时事件和input等组件的@blur冲突,导致保存需要保存两次,因为
|
|
3
3
|
@blur先于@click执行的,所以只会执行@blur,@click就失效了,@mousedown是先于@blur执行的-->
|
|
4
|
-
<span :style="myStyle">
|
|
4
|
+
<span class="table-operation-row-btn" :style="myStyle">
|
|
5
5
|
<template v-if="isShowButton()">
|
|
6
6
|
<el-tooltip :disabled="tooltipDisabled" :content="label" placement="top">
|
|
7
|
-
<template v-if="operationSettingData
|
|
7
|
+
<template v-if="operationSettingData?.permission">
|
|
8
8
|
<component
|
|
9
9
|
v-bind="operationSettingData"
|
|
10
10
|
:is="isElementType"
|
|
@@ -77,9 +77,13 @@ export default {
|
|
|
77
77
|
type: String,
|
|
78
78
|
default: null,
|
|
79
79
|
},
|
|
80
|
+
operation: {
|
|
81
|
+
type: Object,
|
|
82
|
+
default: () => ({}),
|
|
83
|
+
},
|
|
80
84
|
operationSetting: {
|
|
81
85
|
type: Object,
|
|
82
|
-
default:
|
|
86
|
+
default: () => ({}),
|
|
83
87
|
},
|
|
84
88
|
operationIndex: {
|
|
85
89
|
type: Number,
|
|
@@ -148,16 +152,16 @@ export default {
|
|
|
148
152
|
},
|
|
149
153
|
// 后置图标
|
|
150
154
|
suffixIcon() {
|
|
151
|
-
if(['right'].includes(this.
|
|
155
|
+
if(['right'].includes(this.operationSetting.iconPosition)) return this.operationSetting.iconValue
|
|
152
156
|
return undefined
|
|
153
157
|
},
|
|
154
158
|
// 是否显示文字按钮 > 图标模式
|
|
155
159
|
isTextIcon() {
|
|
156
160
|
if (this.isTableBtnLinkShow) {
|
|
157
|
-
if (this.
|
|
161
|
+
if (this.operationSetting.isTextIcon === undefined) {
|
|
158
162
|
return this.isSaveRow || this.isDeleteRow || this.isEditRow || this.isRestoreRow
|
|
159
163
|
}
|
|
160
|
-
return this.
|
|
164
|
+
return this.operationSetting.isTextIcon
|
|
161
165
|
} else {
|
|
162
166
|
return false
|
|
163
167
|
}
|
|
@@ -172,14 +176,14 @@ export default {
|
|
|
172
176
|
},
|
|
173
177
|
// 是否自动开启表格 按钮 转 文字按钮
|
|
174
178
|
isTableBtnLinkShow() {
|
|
175
|
-
if (this.operationSetting
|
|
179
|
+
if (this.operationSetting?.text) return true
|
|
176
180
|
if (this.isTableBtnLink && this.elementType === 'el-button') {
|
|
177
|
-
return [this.operationSetting
|
|
181
|
+
return [this.operationSetting?.text, this.operationSetting?.plain, this.operationSetting?.round].every(v => v === undefined)
|
|
178
182
|
}
|
|
179
183
|
return false
|
|
180
184
|
},
|
|
181
185
|
operationSettingData() {
|
|
182
|
-
const dataList = { ...this.operationSetting }
|
|
186
|
+
const dataList = { ...(this.operationSetting ?? {}) }
|
|
183
187
|
if (this.isTableBtnLinkShow) {
|
|
184
188
|
dataList.underline = false
|
|
185
189
|
delete dataList.text
|
|
@@ -1659,16 +1659,16 @@ export default {
|
|
|
1659
1659
|
}
|
|
1660
1660
|
return isCanRefreshTableData
|
|
1661
1661
|
},
|
|
1662
|
-
getSubTableGridData(subTableData) {
|
|
1662
|
+
getSubTableGridData(subTableData, currentPage) {
|
|
1663
1663
|
let gridData = subTableData
|
|
1664
1664
|
if (this.isSubTableShowPage === true) {
|
|
1665
1665
|
if (subTableData && subTableData.length > 0) {
|
|
1666
1666
|
// const subTableData = JSON.parse(JSON.stringify(this.subTableData))
|
|
1667
1667
|
this.pagination.total = subTableData.length
|
|
1668
1668
|
// 当前是第几页
|
|
1669
|
-
let
|
|
1670
|
-
if (
|
|
1671
|
-
|
|
1669
|
+
let newCurrentPage = currentPage!== undefined && currentPage !== null ?currentPage: this.currentPage
|
|
1670
|
+
if (newCurrentPage === undefined || newCurrentPage === null) {
|
|
1671
|
+
newCurrentPage = 1
|
|
1672
1672
|
}
|
|
1673
1673
|
// 每页显示多少条记录
|
|
1674
1674
|
let pageSize = this.pageSize
|
|
@@ -1679,7 +1679,7 @@ export default {
|
|
|
1679
1679
|
pageSize = 20
|
|
1680
1680
|
}
|
|
1681
1681
|
// 当前页的第一条记录的数组下标
|
|
1682
|
-
const startRowIndex = (
|
|
1682
|
+
const startRowIndex = (newCurrentPage - 1) * pageSize
|
|
1683
1683
|
// 当前页的最后一条记录的数组下标
|
|
1684
1684
|
let lastRowIndex = startRowIndex + pageSize
|
|
1685
1685
|
if (subTableData.length > startRowIndex) {
|
|
@@ -2390,13 +2390,13 @@ export default {
|
|
|
2390
2390
|
this.changePage()
|
|
2391
2391
|
}
|
|
2392
2392
|
},
|
|
2393
|
-
changePage() {
|
|
2393
|
+
changePage(currentPage) {
|
|
2394
2394
|
console.log('点击了分页')
|
|
2395
2395
|
// 翻页操作会导致筛选项发生变化,所以需要清空已有的
|
|
2396
2396
|
this.$refs.superGrid?.clearFilter()
|
|
2397
2397
|
// TODO: 把当前页数、每页条数、查询条件、排序信息传回后台
|
|
2398
2398
|
if (this.isSubTableShowPage) {
|
|
2399
|
-
this.gridData = this.getSubTableGridData(this.subTableData)
|
|
2399
|
+
this.gridData = this.getSubTableGridData(this.subTableData, currentPage)
|
|
2400
2400
|
const gridParams = store.get(this.code)
|
|
2401
2401
|
gridParams.gridData = this.gridData
|
|
2402
2402
|
// 完成深拷贝,复制一份对象,行编辑时使用
|
package/src/i18n/langs/cn.js
CHANGED
|
@@ -284,7 +284,9 @@ const cn = {
|
|
|
284
284
|
theNumberOfUploadsExceedsTheLimitTheLimitIs: '上传数量超过限制,限制数量为',
|
|
285
285
|
image: '图片',
|
|
286
286
|
video: '视频',
|
|
287
|
-
updateSuccess: '更新成功'
|
|
287
|
+
updateSuccess: '更新成功',
|
|
288
|
+
more: '更多',
|
|
289
|
+
uploadFailed: '上传失败!'
|
|
288
290
|
},
|
|
289
291
|
messageVideo: {
|
|
290
292
|
attemptingToIdentify: '正在尝试识别....',
|
package/src/i18n/langs/en.js
CHANGED
|
@@ -283,7 +283,9 @@ const en = {
|
|
|
283
283
|
theNumberOfUploadsExceedsTheLimitTheLimitIs: 'The number of uploads exceeds the limit. The limit is',
|
|
284
284
|
image: 'Image',
|
|
285
285
|
video: 'Video',
|
|
286
|
-
updateSuccess: 'Update success'
|
|
286
|
+
updateSuccess: 'Update success',
|
|
287
|
+
more: 'More',
|
|
288
|
+
uploadFailed: '上传失败!'
|
|
287
289
|
},
|
|
288
290
|
messageVideo: {
|
|
289
291
|
attemptingToIdentify: 'Attempting to identify',
|
|
@@ -9,13 +9,14 @@
|
|
|
9
9
|
display: none;
|
|
10
10
|
}
|
|
11
11
|
|
|
12
|
-
//暂时性解决diolag 问题 https://github.com/ElemeFE/element/issues/2461
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
12
|
+
//暂时性解决diolag 问题 https://github.com/ElemeFE/element/issues/2461 Dialog内select tree等组件在点击箭头时有虚晃
|
|
13
|
+
// 去掉这个配置是因为margin: 0 auto;影响弹框位置,紧贴浏览器顶部,没有间距。例如:权限系统/授权管理/分支字段权限管理/新建按钮弹框
|
|
14
|
+
// .el-dialog {
|
|
15
|
+
// transform: none;
|
|
16
|
+
// left: 0;
|
|
17
|
+
// position: relative;
|
|
18
|
+
// margin: 0 auto;
|
|
19
|
+
// }
|
|
19
20
|
|
|
20
21
|
//element ui upload
|
|
21
22
|
.upload-container {
|
package/src/styles/index.scss
CHANGED
|
@@ -303,4 +303,23 @@ body .el-table colgroup.gutter {
|
|
|
303
303
|
|
|
304
304
|
.dec-page-main {
|
|
305
305
|
padding: var(--dec-page-main-padding, 15px);
|
|
306
|
+
}
|
|
307
|
+
|
|
308
|
+
// 必填背景色
|
|
309
|
+
.required_bg {
|
|
310
|
+
background-color: #fff3e0 !important;
|
|
311
|
+
border-left: 4px solid #ff9800 !important;
|
|
312
|
+
padding: 10px;
|
|
313
|
+
display: block;
|
|
314
|
+
}
|
|
315
|
+
|
|
316
|
+
// 必填时右上角标样式
|
|
317
|
+
.required-corner::after {
|
|
318
|
+
content: "*";
|
|
319
|
+
color: #e74c3c;
|
|
320
|
+
font-size: 18px;
|
|
321
|
+
font-weight: bold;
|
|
322
|
+
position: absolute;
|
|
323
|
+
top: 3px;
|
|
324
|
+
right: 5px;
|
|
306
325
|
}
|
package/src/utils/common-util.js
CHANGED
|
@@ -231,8 +231,12 @@ export function isPlateSys(systemCode) {
|
|
|
231
231
|
export function getServerConfigUtil(http) {
|
|
232
232
|
return new Promise((resolve, reject) => {
|
|
233
233
|
let timestamp = '1'
|
|
234
|
-
|
|
235
|
-
|
|
234
|
+
try {
|
|
235
|
+
if(__BUILD_TIME__) {
|
|
236
|
+
timestamp = __BUILD_TIME__
|
|
237
|
+
}
|
|
238
|
+
} catch (error) {
|
|
239
|
+
console.log('__BUILD_TIME__ not define')
|
|
236
240
|
}
|
|
237
241
|
http.get('./server-config.json?t='+timestamp).then((result) => {
|
|
238
242
|
const config = result
|
|
@@ -247,16 +251,60 @@ export function getServerConfigUtil(http) {
|
|
|
247
251
|
)
|
|
248
252
|
localStorage.setItem('_baseAPI_', window.$vueApp.config.globalProperties.baseAPI)
|
|
249
253
|
localStorage.setItem('_amb_projectModel_', window.$vueApp.config.globalProperties.projectModel)
|
|
250
|
-
|
|
251
|
-
|
|
252
|
-
|
|
253
|
-
|
|
254
|
-
window.insertCssFile(`${config.fontIconAddress}-color/iconfont.css?t=${timestamp}`)
|
|
255
|
-
}
|
|
254
|
+
// 插入图标css样式文件
|
|
255
|
+
insertFontIconCss(config)
|
|
256
|
+
// 第3方集成js
|
|
257
|
+
insertThirdLoginJs(config)
|
|
256
258
|
resolve()
|
|
257
259
|
})
|
|
258
260
|
})
|
|
259
261
|
}
|
|
262
|
+
|
|
263
|
+
export function insertFontIconCss(config){
|
|
264
|
+
if(!window.insertCssFile){
|
|
265
|
+
return
|
|
266
|
+
}
|
|
267
|
+
if(!config){
|
|
268
|
+
config = window.$vueApp.config.globalProperties
|
|
269
|
+
}
|
|
270
|
+
let timestamp = '1'
|
|
271
|
+
try {
|
|
272
|
+
if(__BUILD_TIME__) {
|
|
273
|
+
timestamp = __BUILD_TIME__
|
|
274
|
+
}
|
|
275
|
+
} catch (error) {
|
|
276
|
+
console.log('__BUILD_TIME__ not define')
|
|
277
|
+
}
|
|
278
|
+
if (config.fontIconAddress && window.insertCssFile) {
|
|
279
|
+
window.insertCssFile(`${config.fontIconAddress}/iconfont.css?t=${timestamp}`)
|
|
280
|
+
}
|
|
281
|
+
if (config.fontIconAddress && window.insertCssFile) {
|
|
282
|
+
window.insertCssFile(`${config.fontIconAddress}-color/iconfont.css?t=${timestamp}`)
|
|
283
|
+
}
|
|
284
|
+
}
|
|
285
|
+
|
|
286
|
+
export function insertThirdLoginJs(config){
|
|
287
|
+
if(!window.insertJsFile ){
|
|
288
|
+
return
|
|
289
|
+
}
|
|
290
|
+
if(!config){
|
|
291
|
+
config = window.$vueApp.config.globalProperties
|
|
292
|
+
}
|
|
293
|
+
if(!config || (config.systemCode !== 'portal' && config.systemCode !== 'devp')){
|
|
294
|
+
return
|
|
295
|
+
}
|
|
296
|
+
// 只有portal和devp需要动态添加这些js
|
|
297
|
+
// userName,dingtalk,feishu,qiwei
|
|
298
|
+
if (!config.loginMethod || config.loginMethod.indexOf('dingtalk')>=0) {
|
|
299
|
+
window.insertJsFile(`https://g.alicdn.com/dingding/h5-dingtalk-login/0.21.0/ddlogin.js`)
|
|
300
|
+
}
|
|
301
|
+
if (!config.loginMethod || config.loginMethod.indexOf('feishu')>=0) {
|
|
302
|
+
window.insertJsFile(`https://lf-package-cn.feishucdn.com/obj/feishu-static/lark/passport/qrcode/LarkSSOSDKWebQRCode-1.0.3.js`)
|
|
303
|
+
}
|
|
304
|
+
if (!config.loginMethod || config.loginMethod.indexOf('qiwei')>=0) {
|
|
305
|
+
window.insertJsFile(`https://wwcdn.weixin.qq.com/node/open/js/wecom-jssdk-2.3.1.js`)
|
|
306
|
+
}
|
|
307
|
+
}
|
|
260
308
|
/**
|
|
261
309
|
* postmessage跨域传message时获得orign路径使用
|
|
262
310
|
* @returns orign路径
|
package/src/utils/insert_css.js
CHANGED
|
@@ -15,7 +15,6 @@ if (!window.insertCssFile) {
|
|
|
15
15
|
if (!cssUrl || window.insertedCssFiles.has(cssUrl)) {
|
|
16
16
|
return;
|
|
17
17
|
}
|
|
18
|
-
const timestamp = new Date().getTime();
|
|
19
18
|
const link = document.createElement('link');
|
|
20
19
|
link.rel = 'stylesheet';
|
|
21
20
|
link.href = cssUrl;
|
|
@@ -29,6 +28,20 @@ if (!window.insertCssFile) {
|
|
|
29
28
|
}
|
|
30
29
|
}
|
|
31
30
|
|
|
31
|
+
|
|
32
|
+
if (!window.insertJsFile) {
|
|
33
|
+
window.insertJsFile = (jsUrl) => {
|
|
34
|
+
if (!jsUrl || window.insertedCssFiles.has(jsUrl)) {
|
|
35
|
+
return;
|
|
36
|
+
}
|
|
37
|
+
const link = document.createElement('script');
|
|
38
|
+
link.src = jsUrl;
|
|
39
|
+
link.onload = function () {
|
|
40
|
+
window.insertedCssFiles.add(jsUrl);
|
|
41
|
+
};
|
|
42
|
+
document.head.appendChild(link);
|
|
43
|
+
}
|
|
44
|
+
}
|
|
32
45
|
// if (window.insertCssFile) {
|
|
33
46
|
// window.insertCssFile(window.defaultCssUrl);
|
|
34
47
|
// }
|
|
@@ -73,6 +73,7 @@ export function initialization(
|
|
|
73
73
|
if (jumpPageResult && jumpPageResult.visible) {
|
|
74
74
|
const res = { ...jumpPageResult }
|
|
75
75
|
res.jumpPageSetting = JSON.stringify(jumpPageItem.jumpPageSetting)
|
|
76
|
+
res.jumpPageItem = jumpPageItem
|
|
76
77
|
return res
|
|
77
78
|
}
|
|
78
79
|
}
|
|
@@ -228,7 +229,10 @@ export function jumpToPage(
|
|
|
228
229
|
}
|
|
229
230
|
getSystem(system, jumpPageSetting.jumpPageUrl, jumpPageSetting.isNewPage, jumpPageSetting)
|
|
230
231
|
.then((system) => {
|
|
231
|
-
if (
|
|
232
|
+
if (
|
|
233
|
+
(jumpPageSetting.jumpPageAdditional && jumpPageSetting.jumpPageAdditional.length > 0) ||
|
|
234
|
+
(jumpPageSetting.jumpPageTitle && jumpPageSetting.jumpPageTitle.indexOf('${') >= 0)
|
|
235
|
+
) {
|
|
232
236
|
// 发送请求,获取附加参数,并存入缓存
|
|
233
237
|
const paramPath =
|
|
234
238
|
window.$vueApp.config.globalProperties.baseAPI + '/component/super-pages/parsing-additional-parameters'
|
|
@@ -242,7 +246,7 @@ export function jumpToPage(
|
|
|
242
246
|
if (!pageData) {
|
|
243
247
|
pageData = {}
|
|
244
248
|
}
|
|
245
|
-
if(!additionalParamMap){
|
|
249
|
+
if (!additionalParamMap) {
|
|
246
250
|
additionalParamMap = {}
|
|
247
251
|
}
|
|
248
252
|
Object.assign(additionalParamMap, pageData)
|
|
@@ -593,11 +597,11 @@ function jumpWithSuperPage(jumpPageUrl, system, dataId, jumpPageSetting, ids, bu
|
|
|
593
597
|
// 移动端时,获得移动端打开方式
|
|
594
598
|
jumpMode = jumpPageSetting.jumpPageMobileOpenMode
|
|
595
599
|
}
|
|
596
|
-
if(!jumpMode && jumpPageSetting) {
|
|
600
|
+
if (!jumpMode && jumpPageSetting) {
|
|
597
601
|
// 移动端没有配置则以 打开方式为准
|
|
598
602
|
jumpMode = jumpPageSetting.jumpPageOpenMode
|
|
599
603
|
}
|
|
600
|
-
if(!jumpMode){
|
|
604
|
+
if (!jumpMode) {
|
|
601
605
|
// 默认是刷新页面
|
|
602
606
|
jumpMode = 'refresh'
|
|
603
607
|
}
|