isdata-customer-sdk 0.1.73 → 0.1.75

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/dist/index.umd.js CHANGED
@@ -29562,7 +29562,6 @@ __webpack_require__.r(__webpack_exports__);
29562
29562
  // EXPORTS
29563
29563
  __webpack_require__.d(__webpack_exports__, {
29564
29564
  ChatClientMgr: function() { return /* reexport */ ChatClientMgr; },
29565
- addAndCleanDocument: function() { return /* reexport */ addAndCleanDocument; },
29566
29565
  addEventAction: function() { return /* reexport */ addEventAction; },
29567
29566
  addIMMapping: function() { return /* reexport */ addIMMapping; },
29568
29567
  addObjectUsedTimes: function() { return /* reexport */ addObjectUsedTimes; },
@@ -29621,9 +29620,12 @@ __webpack_require__.d(__webpack_exports__, {
29621
29620
  removeEventAction: function() { return /* reexport */ removeEventAction; },
29622
29621
  removeEventListener: function() { return /* reexport */ removeEventListener; },
29623
29622
  removeWindowTrustedOrigin: function() { return /* reexport */ removeWindowTrustedOrigin; },
29623
+ sendPostToAIAgent: function() { return /* reexport */ sendPostToAIAgent; },
29624
29624
  sendWindowMessage: function() { return /* reexport */ sendWindowMessage; },
29625
29625
  setPortalPageConfig: function() { return /* reexport */ setPortalPageConfig; },
29626
29626
  switchPortalLogin: function() { return /* reexport */ switchPortalLogin; },
29627
+ transformPortalQuickMenuDatas: function() { return /* reexport */ transformPortalQuickMenuDatas; },
29628
+ transformPortalSystemMenuDatas: function() { return /* reexport */ transformPortalSystemMenuDatas; },
29627
29629
  updateIMMapping: function() { return /* reexport */ updateIMMapping; },
29628
29630
  updateUserSelectPortal: function() { return /* reexport */ updateUserSelectPortal; },
29629
29631
  validateSSOPageLoaded: function() { return /* reexport */ validateSSOPageLoaded; }
@@ -29888,21 +29890,27 @@ const getMenuDatasByGroupID = async (group_id, role_ids) => {
29888
29890
  let portalMenuDatas = result.data.resultDatas;
29889
29891
  let menuTypes = result.data.menuTypes;
29890
29892
  if (role_ids && role_ids.length > 0) {
29891
- //获取当前角色下对应的角色快捷访问菜单的映射信息和快捷访问菜单的信息
29893
+ //获取当前角色下对应的角色快捷访问菜单的映射信息(到应用自定义菜单)和快捷访问菜单的信息
29892
29894
  let result = await getMenuMappingDatasByRoleIDs(role_ids, group_id);
29893
- //角色-快捷访问菜单映射信息
29895
+ //对应角色的快捷访问菜单映射信息
29894
29896
  let quickMenuMappingDatas = result.data.quickMenuMappingDatas || [];
29895
29897
  let filterObjectMap = {};
29898
+ let tempMap = {};
29899
+ for (const tempData of portalMenuDatas) {
29900
+ let id = tempData.id;
29901
+ tempMap[id] = tempData;
29902
+ }
29896
29903
  for (const data of quickMenuMappingDatas) {
29897
29904
  let id = data.menu_mapping_id;
29898
- filterObjectMap[id] = data;
29899
- }
29900
- //快捷菜单映射信息
29901
- let menuMappingDatas = result.data.menuMappingDatas || [];
29902
- for (const data of menuMappingDatas) {
29903
- let id = data.id;
29904
- filterObjectMap[id] = data;
29905
- }
29905
+ let quickMenuMapping = tempMap[id];
29906
+ filterObjectMap[id] = quickMenuMapping;
29907
+ }
29908
+ // //对应角色的快捷访问菜单信息
29909
+ // let menuMappingDatas = result.data.menuMappingDatas||[];
29910
+ // for (const data of menuMappingDatas) {
29911
+ // let id= data.id;
29912
+ // filterObjectMap[id]=data;
29913
+ // }
29906
29914
  return transformPortalData(portalMenuDatas, menuTypes, filterObjectMap);
29907
29915
  } else {
29908
29916
  return transformPortalData(portalMenuDatas, menuTypes, []);
@@ -29972,11 +29980,16 @@ const getRoleIDsByUserAndGroupID = async (user_id, app_id, group_id) => {
29972
29980
  * @returns
29973
29981
  */
29974
29982
  const transformPortalData = (datas, menuTypes, filterObjectMap) => {
29975
- console.log(datas);
29976
- console.log(menuTypes);
29977
- console.log(filterObjectMap);
29978
29983
  let menuMaps = {};
29979
29984
  let menuTypeMaps = {};
29985
+ let parentMaps = {};
29986
+ for (let key in filterObjectMap) {
29987
+ let item = filterObjectMap[key];
29988
+ let parent_id = item.parent_id;
29989
+ if (parent_id) {
29990
+ parentMaps[parent_id] = true;
29991
+ }
29992
+ }
29980
29993
  for (const data of datas) {
29981
29994
  let id = data.id;
29982
29995
  let tempMenuData = {
@@ -29995,7 +30008,8 @@ const transformPortalData = (datas, menuTypes, filterObjectMap) => {
29995
30008
  };
29996
30009
  //如果存在快捷菜单映射数据或者是主菜单入口
29997
30010
  if (filterObjectMap) {
29998
- if (filterObjectMap[id] || data.type == "4") {
30011
+ //如果是主菜单或者存在快捷访问映射或者孩子存在快捷访问映射,则纳入到菜单中
30012
+ if (filterObjectMap[id] || data.type == "4" || parentMaps[id]) {
29999
30013
  menuMaps[id] = tempMenuData;
30000
30014
  }
30001
30015
  } else {
@@ -30017,6 +30031,7 @@ const transformPortalData = (datas, menuTypes, filterObjectMap) => {
30017
30031
  let tempType = tempMenuData.beyond_type;
30018
30032
  // let tempType_sort =tempMenuData.beyond_type_sort;
30019
30033
  let tempParentMenu = menuMaps[parent_id];
30034
+ if (!tempParentMenu) continue;
30020
30035
  let parentTypes = tempParentMenu.children;
30021
30036
  let parentType = parentTypes.find(tempTypeItem => {
30022
30037
  return tempTypeItem.id == tempType;
@@ -30094,6 +30109,110 @@ const transformPortalData = (datas, menuTypes, filterObjectMap) => {
30094
30109
  return menuList;
30095
30110
  };
30096
30111
 
30112
+ /**
30113
+ * 转换门户用户快捷菜单数据
30114
+ * @param {*} quickDatas
30115
+ * @returns
30116
+ */
30117
+ const transformPortalQuickMenuDatas = quickDatas => {
30118
+ let quickMenuMaps = {};
30119
+ for (const data of quickDatas) {
30120
+ let id = data.id;
30121
+ let tempMenuData = {
30122
+ id: id,
30123
+ label: data.title,
30124
+ sort: data.sort,
30125
+ children: [],
30126
+ parent_id: data.parent_id,
30127
+ type: data.type
30128
+ };
30129
+ quickMenuMaps[id] = tempMenuData;
30130
+ }
30131
+ for (const data of quickDatas) {
30132
+ let tempMenuData = quickMenuMaps[data.id];
30133
+ //5:子菜单入口
30134
+ if (tempMenuData.type == "5") {
30135
+ let parent_id = tempMenuData.parent_id;
30136
+ let tempParentMenu = quickMenuMaps[parent_id];
30137
+ if (tempParentMenu) {
30138
+ let parentChilden = tempParentMenu.children;
30139
+ parentChilden.push(tempMenuData);
30140
+ }
30141
+ }
30142
+ }
30143
+ const menuList = [];
30144
+ for (const data of quickDatas) {
30145
+ let tempMenuData = quickMenuMaps[data.id];
30146
+ //4:主菜单入口
30147
+ if (tempMenuData.type == "4") {
30148
+ menuList.push(tempMenuData);
30149
+ let tempArrys = tempMenuData.children;
30150
+ tempArrys.sort((data1, data2) => {
30151
+ if (Number.isNaN(data1.sort)) return 1;
30152
+ if (Number.isNaN(data2.sort)) return -1;
30153
+ return data1.sort - data2.sort;
30154
+ });
30155
+ }
30156
+ }
30157
+ menuList.sort((data1, data2) => {
30158
+ if (Number.isNaN(data1.sort)) return 1;
30159
+ if (Number.isNaN(data2.sort)) return -1;
30160
+ return data1.sort - data2.sort;
30161
+ });
30162
+ return menuList;
30163
+ };
30164
+ const transformPortalSystemMenuDatas = datas => {
30165
+ let menuMaps = {};
30166
+ for (const data of datas) {
30167
+ let id = data.id;
30168
+ let tempMenuData = {
30169
+ id: id,
30170
+ label: data.name,
30171
+ sort: data.sort,
30172
+ icon: data.icon,
30173
+ children: [],
30174
+ app_id: data.datapp_id,
30175
+ parent_id: data.parent_id,
30176
+ leaf_flag: data.leaf_flag
30177
+ };
30178
+ menuMaps[id] = tempMenuData;
30179
+ }
30180
+ for (const data of datas) {
30181
+ let leaf_flag = data.leaf_flag;
30182
+ //5:子菜单入口
30183
+ if (leaf_flag == 1) {
30184
+ let tempMenuData = menuMaps[data.id];
30185
+ let parent_id = data.parent_id;
30186
+ let tempParentMenu = menuMaps[parent_id];
30187
+ if (tempParentMenu) {
30188
+ let parentChilden = tempParentMenu.children;
30189
+ parentChilden.push(tempMenuData);
30190
+ }
30191
+ }
30192
+ }
30193
+ const menuList = [];
30194
+ for (const data of datas) {
30195
+ let leaf_flag = data.leaf_flag;
30196
+ //4:主菜单入口
30197
+ if (leaf_flag == 0) {
30198
+ let tempMenuData = menuMaps[data.id];
30199
+ menuList.push(tempMenuData);
30200
+ let tempArrys = tempMenuData.children;
30201
+ tempArrys.sort((data1, data2) => {
30202
+ if (Number.isNaN(data1.sort)) return 1;
30203
+ if (Number.isNaN(data2.sort)) return -1;
30204
+ return data1.sort - data2.sort;
30205
+ });
30206
+ }
30207
+ }
30208
+ menuList.sort((data1, data2) => {
30209
+ if (Number.isNaN(data1.sort)) return 1;
30210
+ if (Number.isNaN(data2.sort)) return -1;
30211
+ return data1.sort - data2.sort;
30212
+ });
30213
+ return menuList;
30214
+ };
30215
+
30097
30216
  /**
30098
30217
  * 获取当前用户默认的门户页面ID
30099
30218
  *
@@ -30910,7 +31029,6 @@ class ChatClientMgr {
30910
31029
  this.customParams = params.customParams || {};
30911
31030
  this.chartOrigin = params.chartOrigin;
30912
31031
  console.log("ChatClientMgr init:", this.actionKey);
30913
- // this.charAIs = {};
30914
31032
  }
30915
31033
  makeKey(key) {
30916
31034
  return `${key}-${this.actionKey}`;
@@ -31281,35 +31399,22 @@ const getIMHanlder = customerHanlder => {
31281
31399
  ;// ./src/api/dify.js
31282
31400
 
31283
31401
 
31284
- const addAndCleanDocument = async (fileUrl, options = {}) => {
31285
- let home_page = window.smardaten_api_context_path;
31286
- let finalUrl = `${home_page}/storage_area/public${fileUrl}`;
31287
- let fileType = finalUrl.split(".").pop().toLowerCase();
31288
- let fileName = options.fileName || dify_extractFilenameFromUrl(finalUrl);
31289
- fileType = getDifyFileType(fileType);
31290
- let loginUserData = window.anonymousIsLogin || window.currentUser;
31291
- let user_id = options.userID || loginUserData?.id;
31292
- let appid = options.appID || getPoratlAppID(false, []);
31402
+ const sendPostToAIAgent = async (queryData, successCallback, errorCallback) => {
31403
+ let appid = getPoratlAppID(false, []);
31293
31404
  let appCustomData = await getAppCustomData(appid);
31294
- let aiAgentServerIP = options.aiAgentServerIP || appCustomData?.aiAgentServerIP || "";
31405
+ let aiAgentServerIP = appCustomData?.aiAgentServerIP || "";
31406
+ if (!aiAgentServerIP) {
31407
+ console.error("没有配置AI Agent服务地址,请联系管理员");
31408
+ if (errorCallback) errorCallback("没有配置AI Agent服务地址,请联系管理员");
31409
+ return;
31410
+ }
31295
31411
  let serverUrl = `${aiAgentServerIP}/addAndCleanDocument`;
31296
- let queryData = {
31297
- params: {
31298
- inputs: {
31299
- fileName: fileName
31300
- },
31301
- files: [{
31302
- type: fileType,
31303
- transfer_method: options.transfer_method || "remote_url",
31304
- url: finalUrl
31305
- }],
31306
- user: user_id
31307
- }
31308
- };
31309
31412
  request.post(serverUrl, JSON.stringify(queryData)).then(res => {
31310
31413
  console.log("发送消息成功:", res);
31414
+ if (successCallback) successCallback(res);
31311
31415
  }).catch(error => {
31312
31416
  console.error("发送消息失败:", error);
31417
+ if (errorCallback) errorCallback(error);
31313
31418
  });
31314
31419
  };
31315
31420
  const getDifyFileType = fileType => {
@@ -31350,10 +31455,10 @@ const getDifyFileType = fileType => {
31350
31455
  return typeOptions[key] || "custom";
31351
31456
  };
31352
31457
 
31353
- /**
31354
- * 从 URL 中提取文件名(如 https://example.com/path/image.png → image.png)
31355
- * @param {string} url - 文件 URL
31356
- * @returns {string} - 提取的文件名
31458
+ /**
31459
+ * 从 URL 中提取文件名(如 https://example.com/path/image.png → image.png)
31460
+ * @param {string} url - 文件 URL
31461
+ * @returns {string} - 提取的文件名
31357
31462
  */
31358
31463
  const dify_extractFilenameFromUrl = url => {
31359
31464
  try {