cloudcc-ccdk 0.3.1 → 0.3.3

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 CHANGED
@@ -1,3 +1,21 @@
1
+ #### 发布版本:0.3.3
2
+ #### 更新日期:2022/11/15
3
+ #### 更新内容:
4
+ * 修复
5
+ * 迭代
6
+ * ccpage添加reopen功能
7
+ * 优化
8
+
9
+ #### 发布版本:0.3.2
10
+ #### 更新日期:2022/11/15
11
+ #### 更新内容:
12
+ * 修复
13
+ * 迭代
14
+ * 修改setObjectDetail中detail属性的层级
15
+ * 支持getObjectDetail根据字段apiname查找
16
+ * 优化
17
+
18
+
1
19
  #### 发布版本:0.3.1
2
20
  #### 更新日期:2022/11/13
3
21
  #### 更新内容:
package/lib/ccdk.js CHANGED
@@ -413,7 +413,7 @@ const OBJECT = 'cc_object';
413
413
  /**
414
414
  * 获得当前标准对象信息
415
415
  */
416
- function getObject() {
416
+ function getObject( ) {
417
417
  let detail = localStorage.getItem(Crypto.encrypt(OBJECT));
418
418
  if (detail) {
419
419
  return JSON.parse(detail)
@@ -433,11 +433,21 @@ function setObject(detail = '') {
433
433
 
434
434
  /**
435
435
  * 获得当前标准对象的详细信息
436
+ * @param {String} apiname: 查找字段的apiname
436
437
  */
437
- function getObjectDetail() {
438
+ function getObjectDetail(apiname) {
438
439
  let detail = localStorage.getItem(Crypto.encrypt(OBJECT_DETAIL));
439
440
  if (detail) {
440
- return JSON.parse(detail)
441
+ if(apiname){
442
+ let detail = JSON.parse(detail).detail;
443
+ let targetField = undefined;
444
+ if(Array.isArray(detail)){
445
+ targetField = detail.find(item=>item.apiname===apiname);
446
+ }
447
+ return targetField
448
+ }else {
449
+ return JSON.parse(detail)
450
+ }
441
451
  }
442
452
  return ''
443
453
  }
@@ -448,6 +458,23 @@ function getObjectDetail() {
448
458
  */
449
459
  function setObjectDetail(detail = '') {
450
460
  if (detail) {
461
+ // 减少detail.detail层级
462
+ if(Array.isArray(detail.detail)){
463
+ let data = [];
464
+ detail.detail.forEach(item=>{
465
+ if(item && Array.isArray(item.data)){
466
+ item.data.forEach(itemData=>{
467
+ if(itemData.left && !Array.isArray(itemData.left)){
468
+ data.push(itemData.left);
469
+ }
470
+ if(itemData.right && !Array.isArray(itemData.right)){
471
+ data.push(itemData.right);
472
+ }
473
+ });
474
+ }
475
+ });
476
+ if(data.length > 0){detail.detail = data;}
477
+ }
451
478
  localStorage.setItem(Crypto.encrypt(OBJECT_DETAIL), JSON.stringify(detail));
452
479
  }
453
480
  }
@@ -520,6 +547,24 @@ function openCustomPage(obj, options = {}) {
520
547
  return pageId;
521
548
  }
522
549
 
550
+ /**
551
+ * 通过页面id,重新打开某个页面
552
+ * @param {string} pageId 页面id
553
+ * @param {object} options 配置信息
554
+ */
555
+ function reOpenPage(pageId, options) {
556
+ let page;
557
+ if (pageId) {
558
+ page = pageList.get(pageId);
559
+ }
560
+ if (page) {
561
+ page.reOpenPage();
562
+ if (options.refresh) {
563
+ page.refresh();
564
+ }
565
+ }
566
+ }
567
+
523
568
  /**
524
569
  * 将打开的页面添加到集合中
525
570
  * @param {string} id 唯一ID
@@ -540,6 +585,10 @@ function close(pageId = '') {
540
585
  let page;
541
586
  if (pageId) {
542
587
  page = pageList.get(pageId);
588
+ } else {
589
+ if (pageList.size > 0) {
590
+ page = [...pageList.values()][pageList.size - 1];
591
+ }
543
592
  }
544
593
  if (page) {
545
594
  page.close();
@@ -566,6 +615,7 @@ var CCPage = /*#__PURE__*/Object.freeze({
566
615
  openCreatePage: openCreatePage,
567
616
  openEditPage: openEditPage,
568
617
  openCustomPage: openCustomPage,
618
+ reOpenPage: reOpenPage,
569
619
  addPage: addPage,
570
620
  close: close,
571
621
  refresh: refresh
package/lib/ccdk.min.js CHANGED
@@ -1 +1 @@
1
- import CryptoJS from"crypto-js/aes";import UTF8 from"crypto-js/enc-utf8";import PAD from"crypto-js/pad-pkcs7";import axios from"axios";import{Message,MessageBox,Notification}from"cloudcc-ui";import Cookies from"js-cookie";function getAesString(data,key,iv){key=UTF8.parse(key);iv=UTF8.parse(iv);let encrypted=CryptoJS.encrypt(data,key,{iv:iv,padding:PAD});return encrypted.toString()}function getDAesString(encrypted,key,iv){key=UTF8.parse(key);iv=UTF8.parse(iv);let decrypted=CryptoJS.decrypt(encrypted,key,{iv:iv,padding:PAD});return decrypted.toString(UTF8)}function encrypt(data,key="AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA",iv=1){data=JSON.stringify(data);var encrypted=getAesString(data,key,iv);return encrypted}function decrypt(data,key="AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA",iv=1){try{var decryptedStr=getDAesString(data,key,iv);if(!decryptedStr)return null;return JSON.parse(decryptedStr)}catch(error){console.trace("解密密码错误",error);return null}}var Crypto=Object.freeze({__proto__:null,encrypt:encrypt,decrypt:decrypt});const APPLICATION_DETAIL="applicaton_current";function getApplicaton(){let detail=localStorage.getItem(Crypto.encrypt(APPLICATION_DETAIL));if(detail){return JSON.parse(detail)}return""}function setApplication(detail=""){if(detail){localStorage.setItem(Crypto.encrypt(APPLICATION_DETAIL),JSON.stringify(detail))}}var CCApplication=Object.freeze({__proto__:null,getApplicaton:getApplicaton,setApplication:setApplication});function $emit(event,...args){window.ccBus.$emit(event,...args)}function $on(event,callback){window.ccBus.$on(event,callback)}function $off(event){window.ccBus.$off(event)}var CCBus=Object.freeze({__proto__:null,$emit:$emit,$on:$on,$off:$off});let ccCall=new Map;let currentCall;function init(id,callClient){if(id&&callClient){ccCall.set(id,callClient);currentCall=callClient;return currentCall}}function call(id,options){let call;if(id){call=ccCall.get(id)}else{call=currentCall}if(call){call.call(options)}return call}function openCallPanel(id,options){let call;if(id){call=ccCall.get(id)}else{call=currentCall}if(call){call.openCallPanel(options)}return call}var CCCall=Object.freeze({__proto__:null,init:init,call:call,openCallPanel:openCallPanel});function getBaseUrl(){return window.gw.BASE_URL}function getGw(){return window.gw}function getSvc(){return window.Glod}var CCConfig=Object.freeze({__proto__:null,getBaseUrl:getBaseUrl,getGw:getGw,getSvc:getSvc});const service=axios.create({timeout:6e4,headers:{"Content-Type":"application/json; charset=utf-8"}});service.interceptors.request.use(config=>{config.headers["accessToken"]=$CCDK.CCToken.getToken();return config},error=>{Promise.reject(error)});service.interceptors.response.use(response=>{const code=response.data.code||200;if(code!==200){return Promise.reject(null==response.data.msg?"未知异常":response.data.msg)}else{return response.data}},error=>{return Promise.reject(error)});function get(url,data={},responseType=""){return service({url:url,method:"get",params:data,responseType:responseType})}function post(url,data={},responseType=""){return service({url:url,method:"post",data:data,responseType:responseType})}function put(url,data={}){return service({url:url,method:"put",data:data})}function postParams(url,data={}){return service({url:url,method:"post",params:data})}function patch(url,data={}){return service({url:url,method:"patch",data:data})}var CCHttp=Object.freeze({__proto__:null,get:get,post:post,put:put,patch:patch,postParams:postParams});function addMenu1(options){$CCDK.CCBus.$emit("addMenu1",options)}function addMenu2(options){$CCDK.CCBus.$emit("addMenu2",options)}function deleteMenu1(options){$CCDK.CCBus.$emit("deleteMenu1",options)}function deleteMenu2(options){$CCDK.CCBus.$emit("deleteMenu2",options)}function refreshMenu1(options){$CCDK.CCBus.$emit("refreshMenu1",options)}function refreshMenu2(options){$CCDK.CCBus.$emit("refreshMenu2",options)}var CCMenu=Object.freeze({__proto__:null,addMenu1:addMenu1,addMenu2:addMenu2,deleteMenu1:deleteMenu1,deleteMenu2:deleteMenu2,refreshMenu1:refreshMenu1,refreshMenu2:refreshMenu2});function showMessage(text,type="info",duration=3e3,showClose=false,center=false){Message({message:text,type:type,duration:duration,showClose:showClose,center:center})}function showConfirm(text,title,options={},confirm=()=>{},reject=()=>{}){MessageBox.confirm(text,title,options).then(()=>{confirm()}).catch(()=>{reject()})}function showNotification(options={}){Notification(options)}var CCMessage=Object.freeze({__proto__:null,showMessage:showMessage,showConfirm:showConfirm,showNotification:showNotification});const OBJECT_DETAIL="cc_object_detail";const OBJECT="cc_object";function getObject(){let detail=localStorage.getItem(Crypto.encrypt(OBJECT));if(detail){return JSON.parse(detail)}return""}function setObject(detail=""){if(detail){localStorage.setItem(Crypto.encrypt(OBJECT),JSON.stringify(detail))}}function getObjectDetail(){let detail=localStorage.getItem(Crypto.encrypt(OBJECT_DETAIL));if(detail){return JSON.parse(detail)}return""}function setObjectDetail(detail=""){if(detail){localStorage.setItem(Crypto.encrypt(OBJECT_DETAIL),JSON.stringify(detail))}}var CCObject=Object.freeze({__proto__:null,getObject:getObject,setObject:setObject,getObjectDetail:getObjectDetail,setObjectDetail:setObjectDetail});let pageList=new Map;function openListPage(obj,options={}){let pageId=Math.random().toString(16).slice(2);$CCDK.CCBus.$emit("openListPage",pageId,obj,options);return pageId}function openDetailPage(obj,id,options={}){let pageId=Math.random().toString(16).slice(2);$CCDK.CCBus.$emit("openDetailPage",pageId,obj,id,options);return pageId}function openCreatePage(obj,options={}){let pageId=Math.random().toString(16).slice(2);$CCDK.CCBus.$emit("openCreatePage",pageId,obj,options);return pageId}function openEditPage(obj,id,options={}){let pageId=Math.random().toString(16).slice(2);$CCDK.CCBus.$emit("openEditPage",pageId,obj,id,options);return pageId}function openCustomPage(obj,options={}){let pageId=Math.random().toString(16).slice(2);$CCDK.CCBus.$emit("openCustomPage",pageId,obj,options);return pageId}function addPage(id,page){if(id&&page){pageList.set(id,page)}}function close(pageId=""){let page;if(pageId){page=pageList.get(pageId)}if(page){page.close()}}function refresh(pageId=""){let page;if(pageId){page=pageList.get(pageId)}if(page){page.refresh()}}var CCPage=Object.freeze({__proto__:null,openListPage:openListPage,openDetailPage:openDetailPage,openCreatePage:openCreatePage,openEditPage:openEditPage,openCustomPage:openCustomPage,addPage:addPage,close:close,refresh:refresh});function getDomain(){let lastTow=document.domain.split(".").slice(-2,-1)[0];if(lastTow=="com"||lastTow=="org"||lastTow=="net"){return"."+document.domain.split(".").slice(-3).join(".")}else{return"."+document.domain.split(".").slice(-2).join(".")}}var CCUtils=Object.freeze({__proto__:null,getDomain:getDomain});const TOKEN="cc_token";function getUrlQuery(name){var reg=new RegExp(name+"=([^&]*)(&|$)");var r=window.location.href.match(reg);let res=null;if(r!=null)res=r[1].trim();return res}function getToken(urlName="binding"){let token=getUrlQuery(urlName)||Cookies.get(Crypto.encrypt(TOKEN))||Cookies.get(urlName);if(token){setToken(token)}return token}function setToken(token,domain=getDomain()){Cookies.set(Crypto.encrypt(TOKEN),token,{domain:domain,expires:1/12});Cookies.set(Crypto.encrypt(TOKEN),token,{expires:1/12})}function clearToken(domain=getDomain()){Cookies.remove(Crypto.encrypt(TOKEN),{domain:domain});Cookies.remove(Crypto.encrypt(TOKEN))}var CCToken=Object.freeze({__proto__:null,setToken:setToken,getToken:getToken,clearToken:clearToken});const USER_INFO="cc_user_info";function setUserInfo(userInfo,domain=getDomain()){Cookies.set(Crypto.encrypt(USER_INFO),Crypto.encrypt(userInfo),{domain:domain,expires:1/12});Cookies.set(Crypto.encrypt(USER_INFO),Crypto.encrypt(userInfo),{expires:1/12})}function getUserInfo(){let encryptUserInfo=Cookies.get(Crypto.encrypt(USER_INFO));if(encryptUserInfo){return Crypto.decrypt(encryptUserInfo)}else{return""}}var CCUser=Object.freeze({__proto__:null,setUserInfo:setUserInfo,getUserInfo:getUserInfo});export{CCApplication,CCBus,CCCall,CCConfig,Crypto as CCCrypto,CCHttp,CCMenu,CCMessage,CCObject,CCPage,CCToken,CCUser,CCUtils};
1
+ import CryptoJS from"crypto-js/aes";import UTF8 from"crypto-js/enc-utf8";import PAD from"crypto-js/pad-pkcs7";import axios from"axios";import{Message,MessageBox,Notification}from"cloudcc-ui";import Cookies from"js-cookie";function getAesString(data,key,iv){key=UTF8.parse(key);iv=UTF8.parse(iv);let encrypted=CryptoJS.encrypt(data,key,{iv:iv,padding:PAD});return encrypted.toString()}function getDAesString(encrypted,key,iv){key=UTF8.parse(key);iv=UTF8.parse(iv);let decrypted=CryptoJS.decrypt(encrypted,key,{iv:iv,padding:PAD});return decrypted.toString(UTF8)}function encrypt(data,key="AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA",iv=1){data=JSON.stringify(data);var encrypted=getAesString(data,key,iv);return encrypted}function decrypt(data,key="AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA",iv=1){try{var decryptedStr=getDAesString(data,key,iv);if(!decryptedStr)return null;return JSON.parse(decryptedStr)}catch(error){console.trace("解密密码错误",error);return null}}var Crypto=Object.freeze({__proto__:null,encrypt:encrypt,decrypt:decrypt});const APPLICATION_DETAIL="applicaton_current";function getApplicaton(){let detail=localStorage.getItem(Crypto.encrypt(APPLICATION_DETAIL));if(detail){return JSON.parse(detail)}return""}function setApplication(detail=""){if(detail){localStorage.setItem(Crypto.encrypt(APPLICATION_DETAIL),JSON.stringify(detail))}}var CCApplication=Object.freeze({__proto__:null,getApplicaton:getApplicaton,setApplication:setApplication});function $emit(event,...args){window.ccBus.$emit(event,...args)}function $on(event,callback){window.ccBus.$on(event,callback)}function $off(event){window.ccBus.$off(event)}var CCBus=Object.freeze({__proto__:null,$emit:$emit,$on:$on,$off:$off});let ccCall=new Map;let currentCall;function init(id,callClient){if(id&&callClient){ccCall.set(id,callClient);currentCall=callClient;return currentCall}}function call(id,options){let call;if(id){call=ccCall.get(id)}else{call=currentCall}if(call){call.call(options)}return call}function openCallPanel(id,options){let call;if(id){call=ccCall.get(id)}else{call=currentCall}if(call){call.openCallPanel(options)}return call}var CCCall=Object.freeze({__proto__:null,init:init,call:call,openCallPanel:openCallPanel});function getBaseUrl(){return window.gw.BASE_URL}function getGw(){return window.gw}function getSvc(){return window.Glod}var CCConfig=Object.freeze({__proto__:null,getBaseUrl:getBaseUrl,getGw:getGw,getSvc:getSvc});const service=axios.create({timeout:6e4,headers:{"Content-Type":"application/json; charset=utf-8"}});service.interceptors.request.use(config=>{config.headers["accessToken"]=$CCDK.CCToken.getToken();return config},error=>{Promise.reject(error)});service.interceptors.response.use(response=>{const code=response.data.code||200;if(code!==200){return Promise.reject(null==response.data.msg?"未知异常":response.data.msg)}else{return response.data}},error=>{return Promise.reject(error)});function get(url,data={},responseType=""){return service({url:url,method:"get",params:data,responseType:responseType})}function post(url,data={},responseType=""){return service({url:url,method:"post",data:data,responseType:responseType})}function put(url,data={}){return service({url:url,method:"put",data:data})}function postParams(url,data={}){return service({url:url,method:"post",params:data})}function patch(url,data={}){return service({url:url,method:"patch",data:data})}var CCHttp=Object.freeze({__proto__:null,get:get,post:post,put:put,patch:patch,postParams:postParams});function addMenu1(options){$CCDK.CCBus.$emit("addMenu1",options)}function addMenu2(options){$CCDK.CCBus.$emit("addMenu2",options)}function deleteMenu1(options){$CCDK.CCBus.$emit("deleteMenu1",options)}function deleteMenu2(options){$CCDK.CCBus.$emit("deleteMenu2",options)}function refreshMenu1(options){$CCDK.CCBus.$emit("refreshMenu1",options)}function refreshMenu2(options){$CCDK.CCBus.$emit("refreshMenu2",options)}var CCMenu=Object.freeze({__proto__:null,addMenu1:addMenu1,addMenu2:addMenu2,deleteMenu1:deleteMenu1,deleteMenu2:deleteMenu2,refreshMenu1:refreshMenu1,refreshMenu2:refreshMenu2});function showMessage(text,type="info",duration=3e3,showClose=false,center=false){Message({message:text,type:type,duration:duration,showClose:showClose,center:center})}function showConfirm(text,title,options={},confirm=()=>{},reject=()=>{}){MessageBox.confirm(text,title,options).then(()=>{confirm()}).catch(()=>{reject()})}function showNotification(options={}){Notification(options)}var CCMessage=Object.freeze({__proto__:null,showMessage:showMessage,showConfirm:showConfirm,showNotification:showNotification});const OBJECT_DETAIL="cc_object_detail";const OBJECT="cc_object";function getObject(){let detail=localStorage.getItem(Crypto.encrypt(OBJECT));if(detail){return JSON.parse(detail)}return""}function setObject(detail=""){if(detail){localStorage.setItem(Crypto.encrypt(OBJECT),JSON.stringify(detail))}}function getObjectDetail(apiname){let detail=localStorage.getItem(Crypto.encrypt(OBJECT_DETAIL));if(detail){if(apiname){let detail=JSON.parse(detail).detail;let targetField=undefined;if(Array.isArray(detail)){targetField=detail.find(item=>item.apiname===apiname)}return targetField}else{return JSON.parse(detail)}}return""}function setObjectDetail(detail=""){if(detail){if(Array.isArray(detail.detail)){let data=[];detail.detail.forEach(item=>{if(item&&Array.isArray(item.data)){item.data.forEach(itemData=>{if(itemData.left&&!Array.isArray(itemData.left)){data.push(itemData.left)}if(itemData.right&&!Array.isArray(itemData.right)){data.push(itemData.right)}})}});if(data.length>0){detail.detail=data}}localStorage.setItem(Crypto.encrypt(OBJECT_DETAIL),JSON.stringify(detail))}}var CCObject=Object.freeze({__proto__:null,getObject:getObject,setObject:setObject,getObjectDetail:getObjectDetail,setObjectDetail:setObjectDetail});let pageList=new Map;function openListPage(obj,options={}){let pageId=Math.random().toString(16).slice(2);$CCDK.CCBus.$emit("openListPage",pageId,obj,options);return pageId}function openDetailPage(obj,id,options={}){let pageId=Math.random().toString(16).slice(2);$CCDK.CCBus.$emit("openDetailPage",pageId,obj,id,options);return pageId}function openCreatePage(obj,options={}){let pageId=Math.random().toString(16).slice(2);$CCDK.CCBus.$emit("openCreatePage",pageId,obj,options);return pageId}function openEditPage(obj,id,options={}){let pageId=Math.random().toString(16).slice(2);$CCDK.CCBus.$emit("openEditPage",pageId,obj,id,options);return pageId}function openCustomPage(obj,options={}){let pageId=Math.random().toString(16).slice(2);$CCDK.CCBus.$emit("openCustomPage",pageId,obj,options);return pageId}function reOpenPage(pageId,options){let page;if(pageId){page=pageList.get(pageId)}if(page){page.reOpenPage();if(options.refresh){page.refresh()}}}function addPage(id,page){if(id&&page){pageList.set(id,page)}}function close(pageId=""){let page;if(pageId){page=pageList.get(pageId)}else{if(pageList.size>0){page=[...pageList.values()][pageList.size-1]}}if(page){page.close()}}function refresh(pageId=""){let page;if(pageId){page=pageList.get(pageId)}if(page){page.refresh()}}var CCPage=Object.freeze({__proto__:null,openListPage:openListPage,openDetailPage:openDetailPage,openCreatePage:openCreatePage,openEditPage:openEditPage,openCustomPage:openCustomPage,reOpenPage:reOpenPage,addPage:addPage,close:close,refresh:refresh});function getDomain(){let lastTow=document.domain.split(".").slice(-2,-1)[0];if(lastTow=="com"||lastTow=="org"||lastTow=="net"){return"."+document.domain.split(".").slice(-3).join(".")}else{return"."+document.domain.split(".").slice(-2).join(".")}}var CCUtils=Object.freeze({__proto__:null,getDomain:getDomain});const TOKEN="cc_token";function getUrlQuery(name){var reg=new RegExp(name+"=([^&]*)(&|$)");var r=window.location.href.match(reg);let res=null;if(r!=null)res=r[1].trim();return res}function getToken(urlName="binding"){let token=getUrlQuery(urlName)||Cookies.get(Crypto.encrypt(TOKEN))||Cookies.get(urlName);if(token){setToken(token)}return token}function setToken(token,domain=getDomain()){Cookies.set(Crypto.encrypt(TOKEN),token,{domain:domain,expires:1/12});Cookies.set(Crypto.encrypt(TOKEN),token,{expires:1/12})}function clearToken(domain=getDomain()){Cookies.remove(Crypto.encrypt(TOKEN),{domain:domain});Cookies.remove(Crypto.encrypt(TOKEN))}var CCToken=Object.freeze({__proto__:null,setToken:setToken,getToken:getToken,clearToken:clearToken});const USER_INFO="cc_user_info";function setUserInfo(userInfo,domain=getDomain()){Cookies.set(Crypto.encrypt(USER_INFO),Crypto.encrypt(userInfo),{domain:domain,expires:1/12});Cookies.set(Crypto.encrypt(USER_INFO),Crypto.encrypt(userInfo),{expires:1/12})}function getUserInfo(){let encryptUserInfo=Cookies.get(Crypto.encrypt(USER_INFO));if(encryptUserInfo){return Crypto.decrypt(encryptUserInfo)}else{return""}}var CCUser=Object.freeze({__proto__:null,setUserInfo:setUserInfo,getUserInfo:getUserInfo});export{CCApplication,CCBus,CCCall,CCConfig,Crypto as CCCrypto,CCHttp,CCMenu,CCMessage,CCObject,CCPage,CCToken,CCUser,CCUtils};
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "cloudcc-ccdk",
3
- "version": "0.3.1",
3
+ "version": "0.3.3",
4
4
  "description": "",
5
5
  "main": "lib/ccdk-min.js",
6
6
  "scripts": {