agilebuilder-ui 1.1.45 → 1.1.46-sit2
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-1bde8dc9.js → 401-75472dcd.js} +1 -1
- package/lib/{404-48d76996.js → 404-e5ce8455.js} +1 -1
- package/lib/{iframe-page-77e184a0.js → iframe-page-9d5ce6b0.js} +1 -1
- package/lib/index-789fbe10.js +92825 -0
- package/lib/super-ui.css +1 -1
- package/lib/super-ui.js +33 -32
- package/lib/super-ui.umd.cjs +172 -133
- package/lib/{tab-content-iframe-index-39745d49.js → tab-content-iframe-index-47fae8cf.js} +1 -1
- package/lib/{tab-content-index-65696e56.js → tab-content-index-6e5f5717.js} +1 -1
- package/lib/{tache-subprocess-history-ef943f95.js → tache-subprocess-history-1ed95cee.js} +1 -1
- package/package.json +7 -2
- package/packages/chat-embed/index.ts +6 -0
- package/packages/chat-embed/src/chat-embed-message.ts +79 -0
- package/packages/chat-embed/src/chat-embed.css +117 -0
- package/packages/chat-embed/src/chat-sender.vue +240 -0
- package/packages/chat-embed/src/header.vue +50 -0
- package/packages/chat-embed/src/index.vue +425 -0
- package/packages/chat-embed/src/recommendation-message.vue +37 -0
- package/packages/chat-embed/src/util.ts +33 -0
- package/packages/department-tree-inline/src/department-multi-tree-inline.vue +42 -34
- package/packages/department-tree-inline/src/department-single-tree-inline.vue +53 -42
- package/packages/department-tree-inline/src/search-result.vue +187 -219
- package/packages/department-user-tree-inline/src/department-user-multiple-tree-inline.vue +52 -43
- package/packages/department-user-tree-inline/src/department-user-single-tree-inline.vue +52 -42
- package/packages/department-user-tree-inline/src/search-result.vue +207 -220
- package/packages/dynamic-source-select/src/dynamic-source-select-service.js +7 -2
- package/packages/empty-state/index.vue +28 -0
- package/packages/fs-preview/src/fs-preview.vue +12 -3
- package/packages/fs-upload/src/fs-upload-multi.vue +6 -4
- package/packages/fs-upload/src/fs-upload-single.vue +7 -6
- package/packages/fs-upload/src/fs-upload.vue +3 -1
- package/packages/fs-upload/src/see-big-picture.vue +3 -0
- package/packages/fs-upload-list/src/fs-upload-list.vue +8 -2
- package/packages/fs-upload-new/src/fs-button-upload.vue +11 -4
- package/packages/fs-upload-new/src/fs-drag-upload.vue +11 -4
- package/packages/fs-upload-new/src/fs-preview-new.vue +8 -5
- package/packages/fs-upload-new/src/fs-upload-new.vue +17 -0
- package/packages/index.js +16 -13
- package/packages/json-view/index.ts +3 -0
- package/packages/json-view/json-view-dialog.vue +53 -0
- package/packages/json-view/json-view.vue +126 -0
- package/packages/plugins/export-data-new.js +2 -0
- package/packages/super-grid/src/apis.js +11 -0
- package/packages/super-grid/src/components/grid-icon.vue +6 -3
- 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 +31 -38
- 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 +21 -8
- package/packages/utils/utils.js +26 -9
- package/packages/workgroup-tree-inline/src/workgroup-tree-inline.vue +50 -41
- package/packages/workgroup-user-tree-inline/src/workgroup-user-tree-inline.vue +45 -36
- package/src/assets/chat-embed/avatar.png +0 -0
- package/src/i18n/langs/cn.js +20 -6
- package/src/i18n/langs/en.js +19 -5
- package/src/store/modules/chat-ai-store.ts +78 -0
- package/src/store/modules/tab-content.js +9 -3
- package/src/styles/element-ui.scss +8 -7
- package/src/styles/index.scss +45 -0
- package/src/utils/chat-ai-util.ts +31 -0
- package/src/utils/common-util.js +78 -8
- package/src/utils/insert_css.js +14 -1
- package/src/utils/jump-page-utils.js +8 -4
- package/src/views/dsc-component/Sidebar/SidebarItem.vue +6 -0
- package/src/views/dsc-component/tabs/tab-content.vue +6 -0
- package/lib/index-465b0d69.js +0 -73558
package/src/utils/common-util.js
CHANGED
|
@@ -8,6 +8,9 @@ import i18nUtil from './i18n-util'
|
|
|
8
8
|
* 获得相对地址
|
|
9
9
|
*/
|
|
10
10
|
export function getRelativeBaseUrl(originalBaseUrl) {
|
|
11
|
+
if(!originalBaseUrl){
|
|
12
|
+
return originalBaseUrl
|
|
13
|
+
}
|
|
11
14
|
if (
|
|
12
15
|
window.$vueApp.config.globalProperties.projectModel === undefined ||
|
|
13
16
|
window.$vueApp.config.globalProperties.projectModel !== 'developing.model'
|
|
@@ -231,8 +234,12 @@ export function isPlateSys(systemCode) {
|
|
|
231
234
|
export function getServerConfigUtil(http) {
|
|
232
235
|
return new Promise((resolve, reject) => {
|
|
233
236
|
let timestamp = '1'
|
|
234
|
-
|
|
235
|
-
|
|
237
|
+
try {
|
|
238
|
+
if(__BUILD_TIME__) {
|
|
239
|
+
timestamp = __BUILD_TIME__
|
|
240
|
+
}
|
|
241
|
+
} catch (error) {
|
|
242
|
+
console.log('__BUILD_TIME__ not define')
|
|
236
243
|
}
|
|
237
244
|
http.get('./server-config.json?t='+timestamp).then((result) => {
|
|
238
245
|
const config = result
|
|
@@ -247,16 +254,60 @@ export function getServerConfigUtil(http) {
|
|
|
247
254
|
)
|
|
248
255
|
localStorage.setItem('_baseAPI_', window.$vueApp.config.globalProperties.baseAPI)
|
|
249
256
|
localStorage.setItem('_amb_projectModel_', window.$vueApp.config.globalProperties.projectModel)
|
|
250
|
-
|
|
251
|
-
|
|
252
|
-
|
|
253
|
-
|
|
254
|
-
window.insertCssFile(`${config.fontIconAddress}-color/iconfont.css?t=${timestamp}`)
|
|
255
|
-
}
|
|
257
|
+
// 插入图标css样式文件
|
|
258
|
+
insertFontIconCss(config)
|
|
259
|
+
// 第3方集成js
|
|
260
|
+
insertThirdLoginJs(config)
|
|
256
261
|
resolve()
|
|
257
262
|
})
|
|
258
263
|
})
|
|
259
264
|
}
|
|
265
|
+
|
|
266
|
+
export function insertFontIconCss(config){
|
|
267
|
+
if(!window.insertCssFile){
|
|
268
|
+
return
|
|
269
|
+
}
|
|
270
|
+
if(!config){
|
|
271
|
+
config = window.$vueApp.config.globalProperties
|
|
272
|
+
}
|
|
273
|
+
let timestamp = '1'
|
|
274
|
+
try {
|
|
275
|
+
if(__BUILD_TIME__) {
|
|
276
|
+
timestamp = __BUILD_TIME__
|
|
277
|
+
}
|
|
278
|
+
} catch (error) {
|
|
279
|
+
console.log('__BUILD_TIME__ not define')
|
|
280
|
+
}
|
|
281
|
+
if (config.fontIconAddress && window.insertCssFile) {
|
|
282
|
+
window.insertCssFile(`${config.fontIconAddress}/iconfont.css?t=${timestamp}`)
|
|
283
|
+
}
|
|
284
|
+
if (config.fontIconAddress && window.insertCssFile) {
|
|
285
|
+
window.insertCssFile(`${config.fontIconAddress}-color/iconfont.css?t=${timestamp}`)
|
|
286
|
+
}
|
|
287
|
+
}
|
|
288
|
+
|
|
289
|
+
export function insertThirdLoginJs(config){
|
|
290
|
+
if(!window.insertJsFile ){
|
|
291
|
+
return
|
|
292
|
+
}
|
|
293
|
+
if(!config){
|
|
294
|
+
config = window.$vueApp.config.globalProperties
|
|
295
|
+
}
|
|
296
|
+
if(!config || (config.systemCode !== 'portal' && config.systemCode !== 'devp')){
|
|
297
|
+
return
|
|
298
|
+
}
|
|
299
|
+
// 只有portal和devp需要动态添加这些js
|
|
300
|
+
// userName,dingtalk,feishu,qiwei
|
|
301
|
+
if (!config.loginMethod || config.loginMethod.indexOf('dingtalk')>=0) {
|
|
302
|
+
window.insertJsFile(`https://g.alicdn.com/dingding/h5-dingtalk-login/0.21.0/ddlogin.js`)
|
|
303
|
+
}
|
|
304
|
+
if (!config.loginMethod || config.loginMethod.indexOf('feishu')>=0) {
|
|
305
|
+
window.insertJsFile(`https://lf-package-cn.feishucdn.com/obj/feishu-static/lark/passport/qrcode/LarkSSOSDKWebQRCode-1.0.3.js`)
|
|
306
|
+
}
|
|
307
|
+
if (!config.loginMethod || config.loginMethod.indexOf('qiwei')>=0) {
|
|
308
|
+
window.insertJsFile(`https://wwcdn.weixin.qq.com/node/open/js/wecom-jssdk-2.3.1.js`)
|
|
309
|
+
}
|
|
310
|
+
}
|
|
260
311
|
/**
|
|
261
312
|
* postmessage跨域传message时获得orign路径使用
|
|
262
313
|
* @returns orign路径
|
|
@@ -748,3 +799,22 @@ export function cacheSystemUrl() {
|
|
|
748
799
|
export function getAuthSource() {
|
|
749
800
|
return window.localStorage.getItem('auth_source')
|
|
750
801
|
}
|
|
802
|
+
/**
|
|
803
|
+
* 把路径中的参数转为对象
|
|
804
|
+
* @param {*} fullPath 全路径。例如:hash路径:http://xx:8090/#/sss/dd?p1=1&p2=2 或 普通路径:http://xx:8090/sss/dd?p1=1&p2=2
|
|
805
|
+
* @returns
|
|
806
|
+
*/
|
|
807
|
+
export function getURLSearchParamObj(fullPath) {
|
|
808
|
+
try{
|
|
809
|
+
// 提取hash部分
|
|
810
|
+
const hash = fullPath.includes('#') ? fullPath.split('#')[1] : fullPath;
|
|
811
|
+
// 提取查询参数
|
|
812
|
+
const queryString = hash.includes('?') ? hash.split('?')[1] : hash;
|
|
813
|
+
// 解析参数
|
|
814
|
+
const params = new URLSearchParams(queryString);
|
|
815
|
+
// 转换为普通对象
|
|
816
|
+
return Object.fromEntries(params)
|
|
817
|
+
}catch(error){
|
|
818
|
+
console.error('error===',error)
|
|
819
|
+
}
|
|
820
|
+
}
|
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
|
}
|
|
@@ -53,6 +53,7 @@ import AppLink from './Link.vue'
|
|
|
53
53
|
import * as Vue from 'vue'
|
|
54
54
|
import tabJs from '../../../api/tab'
|
|
55
55
|
import { getI18nName } from '../../../utils/menu'
|
|
56
|
+
import { getRelativeBaseUrl, getURLSearchParamObj } from '../../../utils/common-util'
|
|
56
57
|
// import { SidebarItemChild } from './SidebarItemChild.vue'
|
|
57
58
|
export default {
|
|
58
59
|
name: 'SidebarItem',
|
|
@@ -171,6 +172,11 @@ export default {
|
|
|
171
172
|
url = url.substring(0, url.lastIndexOf('&'))
|
|
172
173
|
}
|
|
173
174
|
}
|
|
175
|
+
const paramObj = getURLSearchParamObj(url)
|
|
176
|
+
if(paramObj && paramObj._isThird && paramObj._isThird === 'false') {
|
|
177
|
+
// 表示不是第3方系统,需要替换域名,内网外网部署时需要使用
|
|
178
|
+
url = getRelativeBaseUrl(url)
|
|
179
|
+
}
|
|
174
180
|
window.open(url, toPathObj.query._menuName)
|
|
175
181
|
} else {
|
|
176
182
|
// 刷新页签打开菜单
|
|
@@ -35,6 +35,7 @@
|
|
|
35
35
|
<script>
|
|
36
36
|
import * as Vue from 'vue'
|
|
37
37
|
import { mapGetters } from 'vuex'
|
|
38
|
+
import { getRelativeBaseUrl, getURLSearchParamObj } from '../../../utils/common-util'
|
|
38
39
|
export default {
|
|
39
40
|
name: 'TabContent',
|
|
40
41
|
data() {
|
|
@@ -158,6 +159,11 @@ export default {
|
|
|
158
159
|
) {
|
|
159
160
|
path = path.substring(0, path.lastIndexOf('&'))
|
|
160
161
|
}
|
|
162
|
+
const paramObj = getURLSearchParamObj(path)
|
|
163
|
+
if(paramObj && paramObj._isThird && paramObj._isThird === 'false') {
|
|
164
|
+
// 表示不是第3方系统,需要替换域名,内网外网部署时需要使用
|
|
165
|
+
path = getRelativeBaseUrl(path)
|
|
166
|
+
}
|
|
161
167
|
return path
|
|
162
168
|
},
|
|
163
169
|
recieveMessage(event) {
|