@ibiz-template/core 0.6.0 → 0.6.1-alpha.2

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.
Files changed (106) hide show
  1. package/dist/index.esm.js +27 -21
  2. package/dist/index.system.min.js +1 -1
  3. package/out/interface/i-devtool-config/i-devtool-config.d.ts +7 -0
  4. package/out/interface/i-devtool-config/i-devtool-config.d.ts.map +1 -1
  5. package/out/utils/bit-mask/bit-mask.d.ts +27 -0
  6. package/out/utils/bit-mask/bit-mask.d.ts.map +1 -1
  7. package/out/utils/bit-mask/bit-mask.js +27 -0
  8. package/out/utils/color/color.d.ts.map +1 -1
  9. package/out/utils/color/color.js +8 -4
  10. package/out/utils/download-file/download-file.js +17 -17
  11. package/out/utils/string-util/string-util.d.ts +6 -0
  12. package/out/utils/string-util/string-util.d.ts.map +1 -1
  13. package/out/utils/string-util/string-util.js +6 -0
  14. package/out/utils/sync/await-timeout.d.ts +6 -0
  15. package/out/utils/sync/await-timeout.d.ts.map +1 -1
  16. package/out/utils/sync/await-timeout.js +6 -0
  17. package/out/utils/types/types.d.ts +3 -1
  18. package/out/utils/types/types.d.ts.map +1 -1
  19. package/out/utils/util/util.d.ts +137 -0
  20. package/out/utils/util/util.d.ts.map +1 -1
  21. package/out/utils/util/util.js +137 -0
  22. package/package.json +4 -5
  23. package/src/command/command-register.ts +0 -135
  24. package/src/command/command.ts +0 -79
  25. package/src/command/index.ts +0 -11
  26. package/src/command/interface/command/command-option.ts +0 -22
  27. package/src/command/interface/command/command.ts +0 -86
  28. package/src/command/interface/disposable/disposable.ts +0 -3
  29. package/src/command/interface/index.ts +0 -9
  30. package/src/command/utils/index.ts +0 -2
  31. package/src/command/utils/linked-list.ts +0 -136
  32. package/src/command/utils/util.ts +0 -95
  33. package/src/constant/core/core.ts +0 -63
  34. package/src/constant/http-status-message/http-status-message.ts +0 -20
  35. package/src/constant/index.ts +0 -5
  36. package/src/constant/login-mode/login-mode.ts +0 -23
  37. package/src/constant/menu-permission-mode/menu-permission-mode.ts +0 -23
  38. package/src/constant/util/util.ts +0 -5
  39. package/src/context/index.ts +0 -231
  40. package/src/environment/environment.ts +0 -39
  41. package/src/error/http-error/http-error.ts +0 -45
  42. package/src/error/index.ts +0 -5
  43. package/src/error/model-error/model-error.ts +0 -26
  44. package/src/error/notice-error/notice-error.ts +0 -19
  45. package/src/error/runtime-error/runtime-error.ts +0 -16
  46. package/src/error/runtime-model-error/runtime-model-error.ts +0 -27
  47. package/src/ibizsys.ts +0 -78
  48. package/src/index.ts +0 -14
  49. package/src/install.ts +0 -15
  50. package/src/interface/click-outside/click-outside.ts +0 -71
  51. package/src/interface/i-18n/i-18n.ts +0 -68
  52. package/src/interface/i-chat-message/i-chat-message.ts +0 -83
  53. package/src/interface/i-devtool-config/i-devtool-config.ts +0 -16
  54. package/src/interface/i-environment/i-environment.ts +0 -289
  55. package/src/interface/i-internal-message/i-internal-message.ts +0 -151
  56. package/src/interface/i-mark-open-data/i-mark-open-data.ts +0 -39
  57. package/src/interface/i-portal-async-action/i-portal-async-action.ts +0 -177
  58. package/src/interface/i-portal-message/i-portal-message.ts +0 -84
  59. package/src/interface/index.ts +0 -14
  60. package/src/interface/org-data/org-data.ts +0 -42
  61. package/src/params/params.ts +0 -134
  62. package/src/types.ts +0 -110
  63. package/src/utils/bit-mask/bit-mask.ts +0 -85
  64. package/src/utils/click-outside/click-outside.ts +0 -110
  65. package/src/utils/clone/clone.ts +0 -43
  66. package/src/utils/color/color.ts +0 -84
  67. package/src/utils/data-type/data-types.ts +0 -99
  68. package/src/utils/download-file/download-file.ts +0 -109
  69. package/src/utils/event/event.ts +0 -77
  70. package/src/utils/history-list/history-item.ts +0 -45
  71. package/src/utils/history-list/history-list.ts +0 -151
  72. package/src/utils/index.ts +0 -24
  73. package/src/utils/interceptor/core-interceptor.ts +0 -40
  74. package/src/utils/interceptor/index.ts +0 -2
  75. package/src/utils/interceptor/interceptor.ts +0 -126
  76. package/src/utils/logger/logger.ts +0 -10
  77. package/src/utils/message-center/base/message-all.ts +0 -12
  78. package/src/utils/message-center/base/message-base.ts +0 -86
  79. package/src/utils/message-center/command/async-action/command-async-action.ts +0 -24
  80. package/src/utils/message-center/command/change/command-change.ts +0 -12
  81. package/src/utils/message-center/command/command-base/command-base.ts +0 -30
  82. package/src/utils/message-center/command/create/command-create.ts +0 -24
  83. package/src/utils/message-center/command/internal-message/command-internal-message.ts +0 -24
  84. package/src/utils/message-center/command/mark-open-data/command-mark-open-data.ts +0 -24
  85. package/src/utils/message-center/command/message-command.ts +0 -158
  86. package/src/utils/message-center/command/remove/command-remove.ts +0 -24
  87. package/src/utils/message-center/command/update/command-update.ts +0 -24
  88. package/src/utils/message-center/console/message-console.ts +0 -31
  89. package/src/utils/message-center/index.ts +0 -1
  90. package/src/utils/message-center/interface/i-app-data-entity.ts +0 -19
  91. package/src/utils/message-center/interface/index.ts +0 -1
  92. package/src/utils/message-center/message-center.ts +0 -82
  93. package/src/utils/namespace/namespace.ts +0 -247
  94. package/src/utils/net/http-response.ts +0 -106
  95. package/src/utils/net/net.ts +0 -469
  96. package/src/utils/recursive/find-recursive-child.ts +0 -133
  97. package/src/utils/string-util/string-util.ts +0 -60
  98. package/src/utils/style/remote-style.ts +0 -20
  99. package/src/utils/sync/await-timeout.ts +0 -27
  100. package/src/utils/sync/count-latch.ts +0 -95
  101. package/src/utils/sync/index.ts +0 -2
  102. package/src/utils/types/types.ts +0 -22
  103. package/src/utils/upload/select-file.ts +0 -86
  104. package/src/utils/upload/upload-file.ts +0 -208
  105. package/src/utils/url-helper/url-helper.ts +0 -63
  106. package/src/utils/util/util.ts +0 -376
package/dist/index.esm.js CHANGED
@@ -2238,6 +2238,12 @@ var StringUtil = class {
2238
2238
  /**
2239
2239
  * 填充字符串中的数据
2240
2240
  *
2241
+ * @description 填充字符串中的数据 用法:传入需要替换的字符串和对象 返回值是string类型
2242
+ * @example
2243
+ * ```
2244
+ * StringUtil.fill('姓名:${context.name},年龄:${data.age}', { name: '张三', age: 10 }, { name: '李四', age: 25 }); // => '姓名:张三,年龄:25'
2245
+ * StringUtil.fill('', { name: '张三', age: 10 }, { name: '李四', age: 25 }); // => ''
2246
+ * ```
2241
2247
  * @author chitanda
2242
2248
  * @date 2021-04-23 20:04:17
2243
2249
  * @static
@@ -2611,10 +2617,10 @@ function colorBlend(color1, color2, p = 0.5, format = "hex") {
2611
2617
  ];
2612
2618
  if (format === "hex") {
2613
2619
  const hex = [
2614
- result[0].toString(16),
2615
- result[1].toString(16),
2616
- result[2].toString(16),
2617
- result[3] === 0 ? "00" : r(result[3] * 255).toString(16)
2620
+ result[0].toString(16).padStart(2, "0"),
2621
+ result[1].toString(16).padStart(2, "0"),
2622
+ result[2].toString(16).padStart(2, "0"),
2623
+ result[3] === 0 ? "00" : r(result[3] * 255).toString(16).padStart(2, "0")
2618
2624
  ];
2619
2625
  return "#".concat(hex[0]).concat(hex[1]).concat(hex[2]).concat(hex[3]);
2620
2626
  }
@@ -2623,49 +2629,49 @@ function colorBlend(color1, color2, p = 0.5, format = "hex") {
2623
2629
 
2624
2630
  // src/utils/download-file/download-file.ts
2625
2631
  function calcMimeByFileName(fileName) {
2626
- const ext = fileName.split(".").pop();
2632
+ const ext = fileName.includes(".") ? fileName.split(".").pop() : "";
2627
2633
  let mime = "";
2628
2634
  switch (ext) {
2629
- case ".wps":
2635
+ case "wps":
2630
2636
  mime = "application/kswps";
2631
2637
  break;
2632
- case ".doc":
2638
+ case "doc":
2633
2639
  mime = "application/msword";
2634
2640
  break;
2635
- case ".docx":
2641
+ case "docx":
2636
2642
  mime = "application/vnd.openxmlformats-officedocument.wordprocessingml.document";
2637
2643
  break;
2638
- case ".txt":
2644
+ case "txt":
2639
2645
  mime = "text/plain";
2640
2646
  break;
2641
- case ".zip":
2647
+ case "zip":
2642
2648
  mime = "application/zip";
2643
2649
  break;
2644
- case ".png":
2650
+ case "png":
2645
2651
  mime = "image/png";
2646
2652
  break;
2647
- case ".gif":
2653
+ case "gif":
2648
2654
  mime = "image/gif";
2649
2655
  break;
2650
- case ".jpeg":
2656
+ case "jpeg":
2651
2657
  mime = "image/jpeg";
2652
2658
  break;
2653
- case ".jpg":
2659
+ case "jpg":
2654
2660
  mime = "image/jpeg";
2655
2661
  break;
2656
- case ".rtf":
2662
+ case "rtf":
2657
2663
  mime = "application/rtf";
2658
2664
  break;
2659
- case ".avi":
2665
+ case "avi":
2660
2666
  mime = "video/x-msvideo";
2661
2667
  break;
2662
- case ".gz":
2668
+ case "gz":
2663
2669
  mime = "application/x-gzip";
2664
2670
  break;
2665
- case ".tar":
2671
+ case "tar":
2666
2672
  mime = "application/x-tar";
2667
2673
  break;
2668
- case ".xlsx":
2674
+ case "xlsx":
2669
2675
  mime = "application/vnd.ms-excel";
2670
2676
  break;
2671
2677
  default:
@@ -2674,11 +2680,11 @@ function calcMimeByFileName(fileName) {
2674
2680
  return mime;
2675
2681
  }
2676
2682
  function isImage(fileName) {
2677
- const ext = fileName.split(".").pop();
2683
+ const ext = fileName.includes(".") ? fileName.split(".").pop() : "";
2678
2684
  if (!ext) {
2679
2685
  return false;
2680
2686
  }
2681
- const imageTypes = [".jpeg", "jpg", "gif", "png", "bmp", "svg"];
2687
+ const imageTypes = ["jpeg", "jpg", "gif", "png", "bmp", "svg"];
2682
2688
  return imageTypes.includes(ext);
2683
2689
  }
2684
2690
  function downloadFileFromBlob(file, fileName) {
@@ -1 +1 @@
1
- System.register(["ramda","lodash-es","qx-util","axios","qs","loglevel","loglevel-plugin-prefix"],(function(e){"use strict";var t,n,s,r,i,a,o,c,l,h,u,d,p,m,f,g,b,w,v;return{setters:[function(e){t=e.clone,n=e.isNotNil,s=e.isNil,r=e.mergeDeepRight},function(e){i=e.debounce,a=e.merge,o=e.cloneDeepWith,c=e.cloneWith,l=e.isObject,h=e.isFunction,u=e.uniqueId,e.round,e.cloneDeep},function(e){d=e.getCookie,p=e.notNilEmpty,m=e.createUUID,f=e.QXEvent},function(e){g=e.default},function(e){b=e.default},function(e){w=e.default},function(e){v=e.default}],execute:function(){function y(e){let t,n,s,r=!1;return function(i){void 0===t?(t=i,n=0,s=-1):t=function(e,t){const n=new Uint8Array(e.length+t.length);return n.set(e),n.set(t,e.length),n}(t,i);const a=t.length;let o=0;for(;n<a;){r&&(10===t[n]&&(o=++n),r=!1);let i=-1;for(;n<a&&-1===i;++n)switch(t[n]){case 58:-1===s&&(s=n-o);break;case 13:r=!0;case 10:i=n}if(-1===i)break;e(t.subarray(o,i),s),o=n,s=-1}o===a?t=void 0:0!==o&&(t=t.subarray(o),n-=o)}}e({awaitTimeout:async function(e,t,n){if(await new Promise((t=>{setTimeout((()=>{t(!0)}),e)})),t)return t(...n||[])},calcMimeByFileName:fe,calcOpenModeStyle:function(e,t){if(e>=0&&e<=100)return"".concat(e,"%");if(e>100)return"drawer"===t?e:"".concat(e,"px");return ibiz.log.error("无效输入值,必须>=0"),""},clone:function(e,t){if(r(xe,t||{}).deep)return o(e,_e);return c(e,_e)},colorBlend:function(e,t,n=.5,s="hex"){e=e.trim(),t=t.trim();const r=me(e),i=me(t),a=[pe((1-n)*r[0]+n*i[0]),pe((1-n)*r[1]+n*i[1]),pe((1-n)*r[2]+n*i[2]),(1-n)*r[3]+n*i[3]];if("hex"===s){const e=[a[0].toString(16),a[1].toString(16),a[2].toString(16),0===a[3]?"00":pe(255*a[3]).toString(16)];return"#".concat(e[0]).concat(e[1]).concat(e[2]).concat(e[3])}return"rgb(".concat(a[0]," ").concat(a[1]," ").concat(a[2]," / ").concat(a[3],")")},compareArr:function(e,t,n){const s=new Set([...e,...t]),r=[],i=[],a=[];if(n){const o=e.map((e=>e[n])),c=t.map((e=>e[n]));s.forEach((e=>{o.includes(e[n])?c.includes(e[n])?a.push(e):r.push(e):i.push(e)}))}else s.forEach((n=>{e.includes(n)?t.includes(n)?a.push(n):r.push(n):i.push(n)}));return{more:r,less:i,same:a}},debounce:function(e,t,n){let s;return function(...r){if(s&&clearTimeout(s),n){const n=!s;s=setTimeout((()=>{s=null}),t),n&&e.apply(this,r)}else s=setTimeout((()=>{e.apply(this,r)}),t)}},debounceAndAsyncMerge:function(e,t,n){let s,r=[];const a=i((async(...t)=>{s=void 0;try{const n=await e(...t);return r.forEach((e=>{e.resolve(n)})),r=[],n}catch(e){r.forEach((t=>{t.reject(e)})),r=[]}}),n);return async(...e)=>{let n=e;return s&&(n=t(s,n)),s=n,a(...n),new Promise(((e,t)=>{r.push({resolve:e,reject:t})}))}},debounceAndMerge:function(e,t,n){let s;const r=i(((...t)=>(s=void 0,e(...t))),n);return(...e)=>{let n=e;return s&&(n=t(s,n)),s=n,r(...n)}},downloadFileFromBlob:function(e,t){const n=fe(t),s=new Blob([e],{type:n}),r=URL.createObjectURL(s),i=document.createElement("a");i.href=r,i.download=t,document.body.appendChild(i),i.click(),document.body.removeChild(i),URL.revokeObjectURL(r)},eventPath:oe,fetchEventSource:R,fileListToArr:ge,findRecursiveChild:function(e,t,n){const{compareField:s,compareCallback:i}=r(Ee,n||{}),a=i||(e=>e[s]===t);let o;return ye(e,(e=>{if(a(e,t,s))return o=e,!0}),n),o},getToken:q,install:function(){if(window.ibiz)throw new Error("ibiz 已经存在, 无需重复安装");window.ibiz=new Te},isBase64Image:function(e){return/^data:image\/[a-zA-Z+]+;base64,([/+=\w\s]+|[^,]+)$/.test(e)},isElementSame:function(e,t,n){if(e.length!==t.length)return!1;const s=n?[...e.map((e=>e[n])),...t.map((e=>e[n]))]:[...e,...t];return Array.from(new Set(s)).length===e.length},isEventInside:le,isImage:function(e){const t=e.split(".").pop();if(!t)return!1;return[".jpeg","jpg","gif","png","bmp","svg"].includes(t)},isOverlap:function(e,t){return Array.from(new Set([...e,...t])).length!==e.length+t.length},isSvg:function(e){return F.test(e)},listenJSEvent:ce,mergeDefaultInLeft:function(e,t){Object.keys(t).forEach((r=>{n(t[r])&&s(e[r])&&(e[r]=t[r])}))},mergeInLeft:function(e,t){Object.keys(t).forEach((s=>{n(t[s])&&(e[s]=t[s])}))},onClickOutside:function(e,t,n={}){const{window:s=de,ignore:r=[],capture:i=!0}=n;if(!e)throw new B("target元素不存在");if(!s)throw new B("找不到window");let a=!0;const o=t=>![e,...r].some((e=>le(t,e)));let c=!1;let l;const h=e=>{c||(s.clearTimeout(l),a&&o(e)&&t(e))},u=[ce(s,"click",h,{passive:!0,capture:i}),ce(s,"pointerdown",(e=>{c||(a=o(e))}),{passive:!0}),ce(s,"pointerup",(e=>{if(!c&&0===e.button){const t=oe(e);e.composedPath=()=>t,l=s.setTimeout((()=>h(e)),50)}}),{passive:!0})].filter(Boolean);return{stop:()=>u.forEach((e=>e())),pause:()=>{c=!0},proceed:()=>{c=!1}}},plus:function(e,t){let n,s;try{n=e.toString().split(".")[1].length}catch(e){n=0}try{s=t.toString().split(".")[1].length}catch(e){s=0}const r=10**Math.max(n,s);return(e*r+t*r)/r},recursiveIterate:ye,selectFile:be,setRemoteStyle:async function(e){try{const t=await ibiz.net.get(e),n=document.createElement("style");n.setAttribute("title","app-style-css"),n.innerText=t.data,document.head.appendChild(n)}catch(t){ibiz.log.debug("加载远程样式表失败",e)}},throttle:function(e,t){let n=null;return function(...s){n||(n=setTimeout((()=>{e.apply(this,s),n=null}),t))}},toDisposable:I,toNumberOrNil:function(e){if(s(e))return;const t=Number(e);if(Number.isNaN(t))return;return t},updateKeyDefine:function(e,t){t.forEach((t=>{Object.prototype.hasOwnProperty.call(e,t)||Object.defineProperty(e,t,{enumerable:!0,configurable:!0,writable:!0,value:void 0})}))},uploadFile:function(e){const t=a({multiple:!0,accept:"",separate:!0,beforeUpload:(e,t)=>!0,finish:e=>{},success:(e,t)=>{},error:(e,t)=>{},progress:e=>{}},e),n=async e=>{const n=e.map((e=>({status:"uploading",name:e.name,uid:u(),percentage:0})));if(!t.beforeUpload(e,n))return n.forEach((e=>{e.status="cancel"})),ibiz.log.debug("取消上传",n),n;try{const s=await(async(e,n)=>{if(t.request&&h(t.request))return t.request(e);const s=new FormData;throw e.forEach((e=>{s.append("file",e)})),new B("多应用模式等待重新实现请求")})(e);n.forEach((e=>{e.status="finished"})),t.success(n,s),n.forEach((e=>{e.response=s}))}catch(s){n.forEach((e=>{e.status="fail"})),t.error(n,s),n.forEach((e=>{e.error=s})),ibiz.log.error(s),ibiz.log.error("".concat(e.map((e=>e.name)).join(","),"上传失败"))}return n};be({accept:t.accept,multiple:t.multiple,onSelected:e=>{(async e=>{const s=t.separate?e.map((e=>[e])):[e],r=await Promise.allSettled(s.map((async e=>n(e)))),i=[];r.forEach((e=>{"fulfilled"===e.status&&i.push(...e.value)})),t.finish(i)})(e)}})}});var E=function(e,t){var n={};for(var s in e)Object.prototype.hasOwnProperty.call(e,s)&&t.indexOf(s)<0&&(n[s]=e[s]);if(null!=e&&"function"==typeof Object.getOwnPropertySymbols){var r=0;for(s=Object.getOwnPropertySymbols(e);r<s.length;r++)t.indexOf(s[r])<0&&Object.prototype.propertyIsEnumerable.call(e,s[r])&&(n[s[r]]=e[s[r]])}return n},_=e("EventStreamContentType","text/event-stream"),x=1e3,O="last-event-id";function R(e,t){var{signal:n,headers:s,onopen:r,onmessage:i,onclose:a,onerror:o,openWhenHidden:c,fetch:l}=t,h=E(t,["signal","headers","onopen","onmessage","onclose","onerror","openWhenHidden","fetch"]);return new Promise(((t,u)=>{const d=Object.assign({},s);let p;function m(){p.abort(),document.hidden||E()}d.accept||(d.accept=_),c||document.addEventListener("visibilitychange",m);let f=x,g=0;function b(){document.removeEventListener("visibilitychange",m),window.clearTimeout(g),p.abort()}null==n||n.addEventListener("abort",(()=>{b(),t()}));const w=null!=l?l:window.fetch,v=null!=r?r:A;async function E(){var n;p=new AbortController;try{const n=await w(e,Object.assign(Object.assign({},h),{headers:d,signal:p.signal}));await v(n),await async function(e,t){const n=e.getReader();let s;for(;!(s=await n.read()).done;)t(s.value)}(n.body,y(function(e,t,n){let s={data:"",event:"",id:"",retry:void 0};const r=new TextDecoder;return function(i,a){if(0===i.length)null==n||n(s),s={data:"",event:"",id:"",retry:void 0};else if(a>0){const n=r.decode(i.subarray(0,a)),o=a+(32===i[a+1]?2:1),c=r.decode(i.subarray(o));switch(n){case"data":s.data=s.data?s.data+"\n"+c:c;break;case"event":s.event=c;break;case"id":e(s.id=c);break;case"retry":const n=parseInt(c,10);isNaN(n)||t(s.retry=n)}}}}((e=>{e?d[O]=e:delete d[O]}),(e=>{f=e}),i))),null==a||a(),b(),t()}catch(e){if(!p.signal.aborted)try{const t=null!==(n=null==o?void 0:o(e))&&void 0!==n?n:f;window.clearTimeout(g),g=window.setTimeout(E,t)}catch(e){b(),u(e)}}}E()}))}function A(e){const t=e.headers.get("content-type");if(!(null==t?void 0:t.startsWith(_)))throw new Error("Expected content-type to be ".concat(_,", Actual: ").concat(t))}var T=class e{constructor(t){this.element=t,this.next=e.Undefined,this.prev=e.Undefined}};T.Undefined=new T(void 0);var C=T,U=e("LinkedList",class{constructor(){this._first=C.Undefined,this._last=C.Undefined,this._size=0}get size(){return this._size}isEmpty(){return this._first===C.Undefined}clear(){let e=this._first;for(;e!==C.Undefined;){const{next:t}=e;e.prev=C.Undefined,e.next=C.Undefined,e=t}this._first=C.Undefined,this._last=C.Undefined,this._size=0}unshift(e){return this._insert(e,!1)}push(e){return this._insert(e,!0)}_insert(e,t){const n=new C(e);if(this._first===C.Undefined)this._first=n,this._last=n;else if(t){const e=this._last;this._last=n,n.prev=e,e.next=n}else{const e=this._first;this._first=n,n.next=e,e.prev=n}this._size+=1;let s=!1;return()=>{s||(s=!0,this._remove(n))}}shift(){if(this._first===C.Undefined)return;const e=this._first.element;return this._remove(this._first),e}pop(){if(this._last===C.Undefined)return;const e=this._last.element;return this._remove(this._last),e}_remove(e){if(e.prev!==C.Undefined&&e.next!==C.Undefined){const t=e.prev;t.next=e.next,e.next.prev=t}else e.prev===C.Undefined&&e.next===C.Undefined?(this._first=C.Undefined,this._last=C.Undefined):e.next===C.Undefined?(this._last=this._last.prev,this._last.next=C.Undefined):e.prev===C.Undefined&&(this._first=this._first.next,this._first.prev=C.Undefined);this._size-=1}*[Symbol.iterator](){let e=this._first;for(;e!==C.Undefined;)yield e.element,e=e.next}});function N(e){const t=this;let n,s=!1;return function(){return s||(s=!0,n=e.apply(t,arguments)),n}}function I(e){return{dispose:N((()=>{e()}))}}var M=e("CommandsRegistry",class{constructor(){this.commands=new Map}registerCommand(e,t,n){if(!e)throw new Error("invalid command");if("string"==typeof e){if(!t)throw new Error("invalid command");return this.registerCommand({id:e,handler:t,opts:n})}const{id:s}=e;let r=this.commands.get(s);r||(r=new U,this.commands.set(s,r));const i=r.unshift(e);return I((()=>{i();const e=this.commands.get(s);(null==e?void 0:e.isEmpty())&&this.commands.delete(s)}))}hasCommand(e){return this.commands.has(e)}getCommand(e){const t=this.commands.get(e);if(t&&!t.isEmpty())return t[Symbol.iterator]().next().value}getCommands(){const e=new Map,t=this.commands.keys();for(const n of t){const t=this.getCommand(n);t&&e.set(n,t)}return e}getCommandOpt(e){const t=this.getCommand(e);return null==t?void 0:t.opts}}),P=e("CommandController",class{constructor(){this.commandRegister=new M}register(e,t,n){return this.commandRegister.registerCommand(e,t,n)}async execute(e,...t){const n=this.commandRegister.getCommand(e);if(n)return n.handler(...t);throw new Error("未注册指令: ".concat(e,",请先注册指令"))}hasCommand(e,t){const n=!!this.commandRegister.hasCommand(e);if(!0===t&&!0===n)throw new Error("未注册指令: ".concat(e,",请先注册指令"));return n}getCommandOpts(e){return this.commandRegister.getCommandOpt(e)}}),S=(e("commands",new P),e("CoreConst",class{}));S.DEFAULT_MODEL_SERVICE_TAG="default",S.TOKEN="ibzuaa-token",S.REFRESH_TOKEN="ibzuaa-refresh-token",S.TOKEN_EXPIRES="ibzuaa-token-expires",S.TOKEN_REMEMBER="ibizuaa-token-remember",S.IS_ANONYMOUS="ibizuaa-is-anonymous";var k=e("NOOP",(()=>{})),L=(e("HttpStatusMessageConst",{200:"服务器成功返回请求的数据。",201:"新建或修改数据成功。",202:"一个请求已经进入后台排队(异步任务)。",204:"删除数据成功。",400:"发出的请求有错误,服务器没有进行新建或修改数据的操作。",401:"用户没有权限(令牌、用户名、密码错误)。",403:"用户得到授权,但是访问是被禁止的。",404:"发出的请求针对的是不存在的记录,服务器没有进行操作。",406:"请求的格式不可得。",410:"请求的资源被永久删除,且不会再得到的。",422:"当创建一个对象时,发生一个验证错误。",500:"服务器发生错误,请检查服务器。",502:"网关错误。",503:"服务不可用,服务器暂时过载或维护。",504:"网关超时。"}),e("LoginMode",(e=>(e.DEFAULT="DEFAULT",e.CUSTOM="CUSTOM",e.CAS="CAS",e))(L||{}))),j=e("MenuPermissionMode",(e=>(e.MIXIN="MIXIN",e.RESOURCE="RESOURCE",e.RT="RT",e))(j||{})),D=(e("IBizContext",class e{constructor(e={},t){Object.defineProperty(this,"_associationContext",{enumerable:!1,value:[]}),t&&this.initWithParent(t),Object.assign(this,e)}initWithParent(e){const t=this;Object.defineProperty(this,"_parent",{enumerable:!1,writable:!0,value:e}),Object.defineProperty(this,"_context",{enumerable:!1,writable:!0,value:{}});const n={};Object.keys(e).forEach((e=>{Object.prototype.hasOwnProperty.call(this,e)||(n[e]={enumerable:!0,set(n){t._context[e]=null==n?null:n},get:()=>void 0!==t._context[e]?t._context[e]:t._parent[e]})})),Object.defineProperties(this,n)}getOwnContext(){const e={};return Object.keys(this).forEach((t=>{this._parent&&Object.prototype.hasOwnProperty.call(this._parent,t)&&!Object.prototype.hasOwnProperty.call(this._context,t)||(e[t]=this[t])})),e}destroy(){this._parent=void 0,this._context={},this._associationContext.forEach((e=>{e.destroy()}))}clone(){const n=new e(t(this.getOwnContext()),this._parent);return this._associationContext.push(n),n}reset(e={},t){this._associationContext.forEach((e=>{e.destroy()})),this._parent&&(this._parent={},this._context={}),Object.keys(this).forEach((e=>{try{delete this[e]}catch(e){}})),t&&this.initWithParent(t),Object.assign(this,e)}static create(t,n){return new e(t,n)}}),e("IBizParams",class{constructor(e,t){return Object.defineProperty(this,"_parent",{enumerable:!1,configurable:!0,writable:!0,value:t}),Object.defineProperty(this,"_params",{enumerable:!1,configurable:!0,writable:!0,value:e||{}}),this.createProxy()}createProxy(){return new Proxy(this,{set:(e,t,n)=>(["_params","_parent"].includes(t)?e[t]=n:e._params[t]=n,!0),get:(e,t,n)=>void 0!==e[t]?e[t]:void 0!==e._params[t]?e._params[t]:e._parent&&void 0!==e._parent[t]?e._parent[t]:void 0,ownKeys(e){const t=[...new Set([...Object.keys(e._params),...Object.keys(e._parent||{})])];return function(e,t){t.forEach((t=>{Object.prototype.hasOwnProperty.call(e,t)||Object.defineProperty(e,t,{enumerable:!0,configurable:!0,writable:!0,value:void 0})}))}(e,t),t}})}reset(e,t){this._params=e||{},this._parent=t}destroy(){this._params={},this._parent=void 0}}),e("Environment",{dev:!1,hub:!0,enableMqtt:!1,mqttUrl:"/portal/mqtt/mqtt",isEnableMultiLan:!1,anonymousUser:"",anonymousPwd:"",enableAnonymous:!1,logLevel:"ERROR",baseUrl:"/api",appId:"",pluginBaseUrl:"http://172.16.240.221",isLocalModel:!1,remoteModelUrl:"/remotemodel",assetsUrl:"./assets",dcSystem:"",downloadFileUrl:"/ibizutil/download/{cat}",uploadFileUrl:"/ibizutil/upload/{cat}",casLoginUrl:"",loginMode:"DEFAULT",menuPermissionMode:"MIXIN",enablePermission:!0,routePlaceholder:"-",enableWfAllHistory:!1,isMob:!1,isSaaSMode:!0,AppTitle:"应用",favicon:"./favicon.ico"})),z=e("HttpError",class extends Error{constructor(e){super("HttpError"),this.name="HttpError";const t=e.response;this.response=e.response,t?(t.data?this.message=t.data.message:this.message=t.statusText,this.message||(this.message="网络异常,请稍后重试!"),this.status=t.status):(this.message=e.message||"",this.status=500)}}),B=(e("ModelError",class extends Error{constructor(e,t){super("「".concat(e.id,"」模型").concat(t?": ".concat(t):"")),this.model=e,this.name="未支持的模型"}}),e("RuntimeError",class extends Error{constructor(e){super(e),this.message=e,this.name="Runtime Error"}}));e("RuntimeModelError",class extends Error{constructor(e,t){super("「".concat(e.id,"」模型").concat(t?": ".concat(t):"")),this.model=e,this.name="模型配置缺失"}}),e("NoticeError",class extends Error{constructor(e,t){super(e),this.message=e,this.duration=t,this.name="notice Error"}});function q(){return d(S.TOKEN)}var F=/<svg\b[^>]*>[\s\S]*?<\/svg>/;var H=e("Interceptor",class{async onBeforeRequest(e){return e}onRequestError(e){return Promise.reject(e)}async onResponseSuccess(e){return e}onResponseError(e){return Promise.reject(e)}use(e){this.requestTag=e.interceptors.request.use(this.onBeforeRequest,this.onRequestError),this.responseTag=e.interceptors.response.use(this.onResponseSuccess,this.onResponseError)}eject(e){this.requestTag&&e.interceptors.request.eject(this.requestTag),this.responseTag&&e.interceptors.response.eject(this.responseTag)}}),V=e("CoreInterceptor",class extends H{async onBeforeRequest(e){e=await super.onBeforeRequest(e);const{headers:t}=e;t.set("Authorization","Bearer ".concat(q()));let n=ibiz.env.dcSystem;const{orgData:s}=ibiz;return s&&(s.systemid&&(n=s.systemid),s.orgid&&t.set("srforgid",s.orgid)),t.set("srfsystemid",n),e}}),W=class{constructor(e){this.parent=e,this.evt=new f(1e3)}next(e){this.evt.emit("all",e),this.parent&&this.nextParent(e)}nextParent(e){this.parent&&(this.parent.evt.emit("all",e),this.parent.nextParent(e))}on(e){this.evt.on("all",e)}off(e){this.evt.off("all",e)}},Y=class extends W{},J=class extends W{sendCommand(e,t){const n={messageid:m(),messagename:"command",type:"COMMAND",subtype:t,data:e};this.next(n)}},K=class extends J{send(e){this.sendCommand(e,"OBJECTCREATED")}},$=class extends J{send(e){this.sendCommand(e,"OBJECTUPDATED")}},G=class extends J{send(e){this.sendCommand(e,"OBJECTREMOVED")}},X=class extends J{},Z=class extends J{send(e){this.sendCommand(e,"ASYNCACTION")}},Q=class extends J{send(e){this.sendCommand(e,"INTERNALMESSAGE")}},ee=class extends J{send(e){this.sendCommand(e,"MARKOPENDATA")}},te=class extends W{constructor(){super(...arguments),this.change=new X,this.create=new K(this),this.update=new $(this),this.remove=new G(this),this.asyncAction=new Z(this),this.internalMessage=new Q(this),this.markOpenData=new ee(this)}next(e){switch(e.subtype){case"OBJECTCREATED":this.create.next(e),this.change.next(e);break;case"OBJECTUPDATED":this.update.next(e),this.change.next(e);break;case"OBJECTREMOVED":this.remove.next(e),this.change.next(e);break;case"ASYNCACTION":this.asyncAction.next(e);break;case"INTERNALMESSAGE":this.internalMessage.next(e);break;case"MARKOPENDATA":this.markOpenData.next(e);break;default:super.next(e)}}nextParent(e){switch(e.subtype){case"OBJECTCREATED":case"OBJECTUPDATED":case"OBJECTREMOVED":this.change.next(e)}super.nextParent(e)}send(e,t){const n={messageid:m(),messagename:"command",type:"COMMAND",subtype:t,data:e};this.next(n)}},ne=class extends W{send(e){const t={messageid:m(),messagename:"console",type:"CONSOLE",data:e};this.next(t)}},se=e("MessageCenter",class{constructor(){this.all=new Y,this.command=new te(this.all),this.console=new ne(this.all)}next(e){"COMMAND"===e.type?this.command.next(e):"CONSOLE"===e.type?this.console.next(e):this.all.next(e)}on(e){this.all.on(e)}off(e){this.all.off(e)}});function re(e,t,n,s,r){let i="".concat(e,"-").concat(t);return n&&(i+="-".concat(n)),s&&(i+="__".concat(s)),r&&(i+="--".concat(r)),i}e("Namespace",class{constructor(e,t){this.block=e,this.namespace=t||"ibiz"}b(e=""){return re(this.namespace,this.block,e,"","")}e(e){return e?re(this.namespace,this.block,"",e,""):""}m(e){return e?re(this.namespace,this.block,"","",e):""}be(e,t){return e&&t?re(this.namespace,this.block,e,t,""):""}em(e,t){return e&&t?re(this.namespace,this.block,"",e,t):""}bm(e,t){return e&&t?re(this.namespace,this.block,e,"",t):""}bem(e,t,n){return e&&t&&n?re(this.namespace,this.block,e,t,n):""}is(e,t){return e&&t?"".concat("is-").concat(e):""}cssVar(e){const t={};for(const n in e)e[n]&&(t[this.cssVarName(n)]=e[n]);return t}cssVarBlock(e){const t={};for(const n in e)e[n]&&(t[this.cssVarBlockName(n)]=e[n]);return t}cssVarName(e){return"--".concat(this.namespace,"-").concat(e)}cssVarBlockName(e){return"--".concat(this.namespace,"-").concat(this.block,"-").concat(e)}}),e("HttpResponse",class{constructor(e,t,n){this.local=!0,this.ok=!1,this.headers={},this.config={headers:new g.AxiosHeaders},this.data=e,this.status=t||200,this.statusText=n||"",this.status>=200&&this.status<300&&(this.ok=!0)}});var ie=e("Net",class{constructor(e){this.urlReg=/^http[s]?:\/\/[^\s]*/,this.waitRequest=new Map,this.interceptors=new Map,this.instance=g.create(e),this.addInterceptor("Default",new V)}get baseUrl(){return this.instance.defaults.baseURL||"".concat(ibiz.env.baseUrl,"/").concat(ibiz.env.appId)}addInterceptor(e,t){t.use(this.instance),this.interceptors.set(e,t)}removeInterceptor(e){const t=this.interceptors.get(e);t&&(t.eject(this.instance),this.interceptors.delete(e))}get presetConfig(){return{baseURL:this.baseUrl,headers:{"Content-Type":"application/json;charset=UTF-8",Accept:"application/json"}}}mergeConfig(...e){const t=this.presetConfig;if(0===e.length)return t;const{url:n}=e[0];return n&&this.urlReg.test(n)&&delete t.baseURL,a(t,...e)}async post(e,t,n={},s={}){e=this.handleAppPresetParam(e,n);try{const n=await this.request(e,{method:"post",data:t,headers:s});return this.doResponseResult(n)}catch(e){throw new z(e)}}async get(e,t={},n={},s={}){e=this.attachUrlParam(e,t);try{const t=await this.request(e,a({method:"get",headers:n},s));return this.doResponseResult(t)}catch(e){throw new z(e)}}async delete(e,t,n={}){e=this.handleAppPresetParam(e,t);try{const t=await this.request(e,{method:"delete",headers:n});return this.doResponseResult(t)}catch(e){throw new z(e)}}async put(e,t,n={},s={}){e=this.handleAppPresetParam(e,n);try{const n=await this.request(e,{method:"put",data:t,headers:s});return this.doResponseResult(n)}catch(e){throw new z(e)}}async getModel(e,t={}){try{const n=await this.instance.get(e,{headers:t});return this.doResponseResult(n)}catch(e){throw new z(e)}}async request(e,t={}){const n=this.mergeConfig({url:e},t),s=JSON.stringify(n);try{let e=null;this.waitRequest.has(s)?e=this.waitRequest.get(s):(e=this.instance.request(n),this.waitRequest.set(s,e));const t=await e;return this.waitRequest.has(s)&&this.waitRequest.delete(s),this.doResponseResult(t)}catch(e){throw this.waitRequest.has(s)&&this.waitRequest.delete(s),new z(e)}}axios(e){return g(e)}async sse(e,t,n={}){e=this.attachUrlParam(this.baseUrl+e,t),n.headers||(n.headers={});const s=n.headers;{s.Authorization="Bearer ".concat(q());let e=ibiz.env.dcSystem;const{orgData:t}=ibiz;t&&(t.systemid&&(e=t.systemid),t.orgid&&(s.srforgid=t.orgid)),s.srfsystemid=e}const i=r({openWhenHidden:!0,method:"POST"},n);await R(e,i)}doResponseResult(e){const t=e;if(t.status>=200&&t.status<=299){t.ok=!0;const e=t.data;""!==e&&null!==e||(t.data=void 0)}return t}handleAppPresetParam(e,t){return t?this.attachUrlParam(e,t):e}attachUrlParam(e,t){{const t=e.split("?");t[0]=t[0].split("/").map((e=>encodeURIComponent(e))).join("/"),e=t.length>1?t.join("?"):t[0]}const n=b.stringify(t);return p(n)&&(e=e.endsWith("?")||-1!==e.indexOf("?")&&e.endsWith("&")?"".concat(e).concat(n):-1===e.indexOf("?")||e.endsWith("&")?"".concat(e,"?").concat(n):"".concat(e,"&").concat(n)),e}}),ae=e("StringUtil",class{static fill(e,t,n){if(p(e)){if(p(t)){const n=e.match(this.contextReg);null==n||n.forEach((n=>{const s=n.slice(10,n.length-1);e=e.replace("${context.".concat(s,"}"),t[s]||"")}))}if(p(n)){const t=e.match(this.dataReg);null==t||t.forEach((t=>{const s=t.slice(7,t.length-1);e=e.replace("${data.".concat(s,"}"),n[s]||"")}))}}return e}});ae.contextReg=/\$\{context.[a-zA-Z_$][a-zA-Z0-9_$]{1,}\}/g,ae.dataReg=/\$\{data.[a-zA-Z_$][a-zA-Z0-9_$]{1,}\}/g;e("UrlHelper",class{static get routeBase(){const e=window.location.href.lastIndexOf("#/");return window.location.href.slice(0,e+1)}static get appBase(){const{origin:e,pathname:t}=window.location;return"".concat(e).concat(t).replace(/\/$/,"")}static get routePath(){return window.location.hash.replace("#","")}static get fullPath(){return window.location.href}});function oe(e){const t=e.composedPath&&e.composedPath()||e.path;if(null!=t)return t;return[e.target].concat(function e(t,n=[]){const s=t.parentNode;return s?e(s,n.concat([s])):n}(e.target))}function ce(e,t,n,s={}){e.addEventListener(t,n,s);let r=()=>{e.removeEventListener(t,n,s),r=k};return()=>{r()}}function le(e,t){return t&&(e.target===t||oe(e).includes(t))}var he=class e{constructor(t={}){this.data=t,this._prev=e.Undefined,this._next=e.Undefined}clone(){const n=new e(t(this.data));return n._prev&&n._prev!==e.Undefined&&(n._prev=t(this._prev)),n._next&&n._next!==e.Undefined&&(n._next=t(this._next)),n}};he.Undefined=new he(void 0);var ue=e("HistoryItem",he),de=(e("HistoryList",class e{get data(){return this._cur.data}constructor(e){this._cur=new ue(e)}assign(e){e&&(this.save(),Object.assign(this._cur.data,e))}save(){const e=this._cur,n=t(e.data),s=new ue(n);s._prev=e,e._next._prev=ue.Undefined,this._clear(e._next),e._next=s,this._cur=s}prev(){return!(!this._cur._prev||this._cur._prev===ue.Undefined)&&(this._cur=this._cur._prev,!0)}next(){return!(!this._cur._next||this._cur._next===ue.Undefined)&&(this._cur=this._cur._next,!0)}_clear(e){e._prev&&e._prev!==ue.Undefined&&(e._prev._next=ue.Undefined,this._clear(e._prev),e._prev=ue.Undefined),e._next&&e._next!==ue.Undefined&&(e._next._prev=ue.Undefined,this._clear(e._next),e._next=ue.Undefined),e.data={}}clone(){return new e({})._cur=t(this._cur),this}destroy(){this._clear(this._cur)}}),"undefined"!=typeof window?window:void 0);var pe=Math.round;function me(e){const t=e.length,n=[];if("rgb"===e.slice(0,3).toLowerCase()){const t=e.match(/([\d|.%]{1,3})/g);n[0]=parseInt(t[0],10),n[1]=parseInt(t[1],10),n[2]=parseInt(t[2],10),n[3]=t[3]?-1!==t[3].indexOf("%")?parseInt(t[3],10)/100:parseFloat(t[3]):1}else{let s;s=t<6?parseInt(String(e[1])+e[1]+e[2]+e[2]+e[3]+e[3]+(t>4?String(e[4])+e[4]:""),16):parseInt(e.slice(1),16),n[0]=s>>16&255,n[1]=s>>8&255,n[2]=255&s,n[3]=9===t||5===t?pe((s>>24&255)/255*1e4)/1e4:1}return n}function fe(e){let t="";switch(e.split(".").pop()){case".wps":t="application/kswps";break;case".doc":t="application/msword";break;case".docx":t="application/vnd.openxmlformats-officedocument.wordprocessingml.document";break;case".txt":t="text/plain";break;case".zip":t="application/zip";break;case".png":t="image/png";break;case".gif":t="image/gif";break;case".jpeg":case".jpg":t="image/jpeg";break;case".rtf":t="application/rtf";break;case".avi":t="video/x-msvideo";break;case".gz":t="application/x-gzip";break;case".tar":t="application/x-tar";break;case".xlsx":t="application/vnd.ms-excel";break;default:t=""}return t}function ge(e){const t=[];for(let n=0;n<e.length;n++)t.push(e[n]);return t}function be(e){const t=a({multiple:!0,accept:""},e),n=document.createElement("input");n.setAttribute("type","file"),n.setAttribute("multiple","".concat(t.multiple)),n.setAttribute("accept",t.accept),n.onchange=e=>{const n=e.target,s=n.files?ge(n.files):[];0!==s.length&&(t.onSelected(s),n.value="")},document.body.appendChild(n),n.click(),document.body.removeChild(n)}e("CountLatch",class{constructor(){this.promise=null,this.resolve=null,this.count=0}startPromise(){this.promise=new Promise((e=>{this.resolve=e}))}endPromise(){this.resolve&&(this.resolve(),this.resolve=null,this.promise=null)}lock(){this.count+=1,this.promise||this.startPromise()}unlock(){if(this.count<1)throw new B("lock和unlock次数不匹配!");this.count-=1,0===this.count&&this.endPromise()}async await(){this.promise&&await this.promise}});var we={childrenFields:["children"]},ve=new Error("中断操作");function ye(e,t,n){try{!function(e,t,n){const{childrenFields:s}=r(we,n||{}),i=function(e,t){var n;for(const s of t)if(null==(n=e[s])?void 0:n.length)return e[s]}(e,s);if(null==i?void 0:i.length)for(const e of i){if(t(e))throw ve;ye(e,t,n)}}(e,t,n)}catch(e){if(e!==ve)throw e}}var Ee={...we,compareField:"name"};function _e(e){if(l(e)&&h(e.clone))return e.clone()}e("DataTypes",class{static isNumber(e){return["BIGINT","BINARY","DECIMAL","FLOAT","INT","MONEY","NUMERIC","REAL","SMALLINT","SMALLMONEY","TINYINT","VARBINARY"].includes(this.toString(e))}static isDate(e){return["DATETIME","SMALLDATETIME","DATE","TIME"].includes(this.toString(e))}static toString(e){return this.typeMap[e]}}).typeMap={0:"UNKNOWN",1:"BIGINT",2:"BINARY",3:"BIT",4:"CHAR",5:"DATETIME",6:"DECIMAL",7:"FLOAT",8:"IMAGE",9:"INT",10:"MONEY",11:"NCHAR",12:"NTEXT",13:"NVARCHAR",14:"NUMERIC",15:"REAL",16:"SMALLDATETIME",17:"SMALLINT",18:"SMALLMONEY",19:"SQL_VARIANT",20:"SYSNAME",21:"TEXT",22:"TIMESTAMP",23:"TINYINT",24:"VARBINARY",25:"VARCHAR",26:"UNIQUEIDENTIFIER",27:"DATE",28:"TIME",29:"BIGDECIMAL"};var xe={deep:!0};function Oe(e){return!(!e||e&e-1)}function Re(e){if(!Oe(e))throw new B("".concat(e,"不是2的幂"))}e("BitMask",{validate:Oe,setPermission:function(e=0,t){return Re(t),e|t},removePermission:function(e=0,t){return Re(t),e&~t},checkPermission:function(e=0,t){return Re(t),0!=(e&t)}});var Ae=w.noConflict();v.reg(Ae),v.apply(Ae);var Te=e("IBizSys",class{constructor(){this.env=D,this.log=Ae,this.net=new ie,this.commands=new P,this.mc=new se}})}}}));
1
+ System.register(["ramda","lodash-es","qx-util","axios","qs","loglevel","loglevel-plugin-prefix"],(function(e){"use strict";var t,n,s,r,i,a,o,c,l,h,u,d,p,m,f,g,b,w,v;return{setters:[function(e){t=e.clone,n=e.isNotNil,s=e.isNil,r=e.mergeDeepRight},function(e){i=e.debounce,a=e.merge,o=e.cloneDeepWith,c=e.cloneWith,l=e.isObject,h=e.isFunction,u=e.uniqueId,e.round,e.cloneDeep},function(e){d=e.getCookie,p=e.notNilEmpty,m=e.createUUID,f=e.QXEvent},function(e){g=e.default},function(e){b=e.default},function(e){w=e.default},function(e){v=e.default}],execute:function(){function y(e){let t,n,s,r=!1;return function(i){void 0===t?(t=i,n=0,s=-1):t=function(e,t){const n=new Uint8Array(e.length+t.length);return n.set(e),n.set(t,e.length),n}(t,i);const a=t.length;let o=0;for(;n<a;){r&&(10===t[n]&&(o=++n),r=!1);let i=-1;for(;n<a&&-1===i;++n)switch(t[n]){case 58:-1===s&&(s=n-o);break;case 13:r=!0;case 10:i=n}if(-1===i)break;e(t.subarray(o,i),s),o=n,s=-1}o===a?t=void 0:0!==o&&(t=t.subarray(o),n-=o)}}e({awaitTimeout:async function(e,t,n){if(await new Promise((t=>{setTimeout((()=>{t(!0)}),e)})),t)return t(...n||[])},calcMimeByFileName:fe,calcOpenModeStyle:function(e,t){if(e>=0&&e<=100)return"".concat(e,"%");if(e>100)return"drawer"===t?e:"".concat(e,"px");return ibiz.log.error("无效输入值,必须>=0"),""},clone:function(e,t){if(r(xe,t||{}).deep)return o(e,_e);return c(e,_e)},colorBlend:function(e,t,n=.5,s="hex"){e=e.trim(),t=t.trim();const r=me(e),i=me(t),a=[pe((1-n)*r[0]+n*i[0]),pe((1-n)*r[1]+n*i[1]),pe((1-n)*r[2]+n*i[2]),(1-n)*r[3]+n*i[3]];if("hex"===s){const e=[a[0].toString(16).padStart(2,"0"),a[1].toString(16).padStart(2,"0"),a[2].toString(16).padStart(2,"0"),0===a[3]?"00":pe(255*a[3]).toString(16).padStart(2,"0")];return"#".concat(e[0]).concat(e[1]).concat(e[2]).concat(e[3])}return"rgb(".concat(a[0]," ").concat(a[1]," ").concat(a[2]," / ").concat(a[3],")")},compareArr:function(e,t,n){const s=new Set([...e,...t]),r=[],i=[],a=[];if(n){const o=e.map((e=>e[n])),c=t.map((e=>e[n]));s.forEach((e=>{o.includes(e[n])?c.includes(e[n])?a.push(e):r.push(e):i.push(e)}))}else s.forEach((n=>{e.includes(n)?t.includes(n)?a.push(n):r.push(n):i.push(n)}));return{more:r,less:i,same:a}},debounce:function(e,t,n){let s;return function(...r){if(s&&clearTimeout(s),n){const n=!s;s=setTimeout((()=>{s=null}),t),n&&e.apply(this,r)}else s=setTimeout((()=>{e.apply(this,r)}),t)}},debounceAndAsyncMerge:function(e,t,n){let s,r=[];const a=i((async(...t)=>{s=void 0;try{const n=await e(...t);return r.forEach((e=>{e.resolve(n)})),r=[],n}catch(e){r.forEach((t=>{t.reject(e)})),r=[]}}),n);return async(...e)=>{let n=e;return s&&(n=t(s,n)),s=n,a(...n),new Promise(((e,t)=>{r.push({resolve:e,reject:t})}))}},debounceAndMerge:function(e,t,n){let s;const r=i(((...t)=>(s=void 0,e(...t))),n);return(...e)=>{let n=e;return s&&(n=t(s,n)),s=n,r(...n)}},downloadFileFromBlob:function(e,t){const n=fe(t),s=new Blob([e],{type:n}),r=URL.createObjectURL(s),i=document.createElement("a");i.href=r,i.download=t,document.body.appendChild(i),i.click(),document.body.removeChild(i),URL.revokeObjectURL(r)},eventPath:oe,fetchEventSource:R,fileListToArr:ge,findRecursiveChild:function(e,t,n){const{compareField:s,compareCallback:i}=r(Ee,n||{}),a=i||(e=>e[s]===t);let o;return ye(e,(e=>{if(a(e,t,s))return o=e,!0}),n),o},getToken:q,install:function(){if(window.ibiz)throw new Error("ibiz 已经存在, 无需重复安装");window.ibiz=new Te},isBase64Image:function(e){return/^data:image\/[a-zA-Z+]+;base64,([/+=\w\s]+|[^,]+)$/.test(e)},isElementSame:function(e,t,n){if(e.length!==t.length)return!1;const s=n?[...e.map((e=>e[n])),...t.map((e=>e[n]))]:[...e,...t];return Array.from(new Set(s)).length===e.length},isEventInside:le,isImage:function(e){const t=e.includes(".")?e.split(".").pop():"";if(!t)return!1;return["jpeg","jpg","gif","png","bmp","svg"].includes(t)},isOverlap:function(e,t){return Array.from(new Set([...e,...t])).length!==e.length+t.length},isSvg:function(e){return F.test(e)},listenJSEvent:ce,mergeDefaultInLeft:function(e,t){Object.keys(t).forEach((r=>{n(t[r])&&s(e[r])&&(e[r]=t[r])}))},mergeInLeft:function(e,t){Object.keys(t).forEach((s=>{n(t[s])&&(e[s]=t[s])}))},onClickOutside:function(e,t,n={}){const{window:s=de,ignore:r=[],capture:i=!0}=n;if(!e)throw new B("target元素不存在");if(!s)throw new B("找不到window");let a=!0;const o=t=>![e,...r].some((e=>le(t,e)));let c=!1;let l;const h=e=>{c||(s.clearTimeout(l),a&&o(e)&&t(e))},u=[ce(s,"click",h,{passive:!0,capture:i}),ce(s,"pointerdown",(e=>{c||(a=o(e))}),{passive:!0}),ce(s,"pointerup",(e=>{if(!c&&0===e.button){const t=oe(e);e.composedPath=()=>t,l=s.setTimeout((()=>h(e)),50)}}),{passive:!0})].filter(Boolean);return{stop:()=>u.forEach((e=>e())),pause:()=>{c=!0},proceed:()=>{c=!1}}},plus:function(e,t){let n,s;try{n=e.toString().split(".")[1].length}catch(e){n=0}try{s=t.toString().split(".")[1].length}catch(e){s=0}const r=10**Math.max(n,s);return(e*r+t*r)/r},recursiveIterate:ye,selectFile:be,setRemoteStyle:async function(e){try{const t=await ibiz.net.get(e),n=document.createElement("style");n.setAttribute("title","app-style-css"),n.innerText=t.data,document.head.appendChild(n)}catch(t){ibiz.log.debug("加载远程样式表失败",e)}},throttle:function(e,t){let n=null;return function(...s){n||(n=setTimeout((()=>{e.apply(this,s),n=null}),t))}},toDisposable:I,toNumberOrNil:function(e){if(s(e))return;const t=Number(e);if(Number.isNaN(t))return;return t},updateKeyDefine:function(e,t){t.forEach((t=>{Object.prototype.hasOwnProperty.call(e,t)||Object.defineProperty(e,t,{enumerable:!0,configurable:!0,writable:!0,value:void 0})}))},uploadFile:function(e){const t=a({multiple:!0,accept:"",separate:!0,beforeUpload:(e,t)=>!0,finish:e=>{},success:(e,t)=>{},error:(e,t)=>{},progress:e=>{}},e),n=async e=>{const n=e.map((e=>({status:"uploading",name:e.name,uid:u(),percentage:0})));if(!t.beforeUpload(e,n))return n.forEach((e=>{e.status="cancel"})),ibiz.log.debug("取消上传",n),n;try{const s=await(async(e,n)=>{if(t.request&&h(t.request))return t.request(e);const s=new FormData;throw e.forEach((e=>{s.append("file",e)})),new B("多应用模式等待重新实现请求")})(e);n.forEach((e=>{e.status="finished"})),t.success(n,s),n.forEach((e=>{e.response=s}))}catch(s){n.forEach((e=>{e.status="fail"})),t.error(n,s),n.forEach((e=>{e.error=s})),ibiz.log.error(s),ibiz.log.error("".concat(e.map((e=>e.name)).join(","),"上传失败"))}return n};be({accept:t.accept,multiple:t.multiple,onSelected:e=>{(async e=>{const s=t.separate?e.map((e=>[e])):[e],r=await Promise.allSettled(s.map((async e=>n(e)))),i=[];r.forEach((e=>{"fulfilled"===e.status&&i.push(...e.value)})),t.finish(i)})(e)}})}});var E=function(e,t){var n={};for(var s in e)Object.prototype.hasOwnProperty.call(e,s)&&t.indexOf(s)<0&&(n[s]=e[s]);if(null!=e&&"function"==typeof Object.getOwnPropertySymbols){var r=0;for(s=Object.getOwnPropertySymbols(e);r<s.length;r++)t.indexOf(s[r])<0&&Object.prototype.propertyIsEnumerable.call(e,s[r])&&(n[s[r]]=e[s[r]])}return n},_=e("EventStreamContentType","text/event-stream"),x=1e3,O="last-event-id";function R(e,t){var{signal:n,headers:s,onopen:r,onmessage:i,onclose:a,onerror:o,openWhenHidden:c,fetch:l}=t,h=E(t,["signal","headers","onopen","onmessage","onclose","onerror","openWhenHidden","fetch"]);return new Promise(((t,u)=>{const d=Object.assign({},s);let p;function m(){p.abort(),document.hidden||E()}d.accept||(d.accept=_),c||document.addEventListener("visibilitychange",m);let f=x,g=0;function b(){document.removeEventListener("visibilitychange",m),window.clearTimeout(g),p.abort()}null==n||n.addEventListener("abort",(()=>{b(),t()}));const w=null!=l?l:window.fetch,v=null!=r?r:A;async function E(){var n;p=new AbortController;try{const n=await w(e,Object.assign(Object.assign({},h),{headers:d,signal:p.signal}));await v(n),await async function(e,t){const n=e.getReader();let s;for(;!(s=await n.read()).done;)t(s.value)}(n.body,y(function(e,t,n){let s={data:"",event:"",id:"",retry:void 0};const r=new TextDecoder;return function(i,a){if(0===i.length)null==n||n(s),s={data:"",event:"",id:"",retry:void 0};else if(a>0){const n=r.decode(i.subarray(0,a)),o=a+(32===i[a+1]?2:1),c=r.decode(i.subarray(o));switch(n){case"data":s.data=s.data?s.data+"\n"+c:c;break;case"event":s.event=c;break;case"id":e(s.id=c);break;case"retry":const n=parseInt(c,10);isNaN(n)||t(s.retry=n)}}}}((e=>{e?d[O]=e:delete d[O]}),(e=>{f=e}),i))),null==a||a(),b(),t()}catch(e){if(!p.signal.aborted)try{const t=null!==(n=null==o?void 0:o(e))&&void 0!==n?n:f;window.clearTimeout(g),g=window.setTimeout(E,t)}catch(e){b(),u(e)}}}E()}))}function A(e){const t=e.headers.get("content-type");if(!(null==t?void 0:t.startsWith(_)))throw new Error("Expected content-type to be ".concat(_,", Actual: ").concat(t))}var T=class e{constructor(t){this.element=t,this.next=e.Undefined,this.prev=e.Undefined}};T.Undefined=new T(void 0);var C=T,U=e("LinkedList",class{constructor(){this._first=C.Undefined,this._last=C.Undefined,this._size=0}get size(){return this._size}isEmpty(){return this._first===C.Undefined}clear(){let e=this._first;for(;e!==C.Undefined;){const{next:t}=e;e.prev=C.Undefined,e.next=C.Undefined,e=t}this._first=C.Undefined,this._last=C.Undefined,this._size=0}unshift(e){return this._insert(e,!1)}push(e){return this._insert(e,!0)}_insert(e,t){const n=new C(e);if(this._first===C.Undefined)this._first=n,this._last=n;else if(t){const e=this._last;this._last=n,n.prev=e,e.next=n}else{const e=this._first;this._first=n,n.next=e,e.prev=n}this._size+=1;let s=!1;return()=>{s||(s=!0,this._remove(n))}}shift(){if(this._first===C.Undefined)return;const e=this._first.element;return this._remove(this._first),e}pop(){if(this._last===C.Undefined)return;const e=this._last.element;return this._remove(this._last),e}_remove(e){if(e.prev!==C.Undefined&&e.next!==C.Undefined){const t=e.prev;t.next=e.next,e.next.prev=t}else e.prev===C.Undefined&&e.next===C.Undefined?(this._first=C.Undefined,this._last=C.Undefined):e.next===C.Undefined?(this._last=this._last.prev,this._last.next=C.Undefined):e.prev===C.Undefined&&(this._first=this._first.next,this._first.prev=C.Undefined);this._size-=1}*[Symbol.iterator](){let e=this._first;for(;e!==C.Undefined;)yield e.element,e=e.next}});function N(e){const t=this;let n,s=!1;return function(){return s||(s=!0,n=e.apply(t,arguments)),n}}function I(e){return{dispose:N((()=>{e()}))}}var M=e("CommandsRegistry",class{constructor(){this.commands=new Map}registerCommand(e,t,n){if(!e)throw new Error("invalid command");if("string"==typeof e){if(!t)throw new Error("invalid command");return this.registerCommand({id:e,handler:t,opts:n})}const{id:s}=e;let r=this.commands.get(s);r||(r=new U,this.commands.set(s,r));const i=r.unshift(e);return I((()=>{i();const e=this.commands.get(s);(null==e?void 0:e.isEmpty())&&this.commands.delete(s)}))}hasCommand(e){return this.commands.has(e)}getCommand(e){const t=this.commands.get(e);if(t&&!t.isEmpty())return t[Symbol.iterator]().next().value}getCommands(){const e=new Map,t=this.commands.keys();for(const n of t){const t=this.getCommand(n);t&&e.set(n,t)}return e}getCommandOpt(e){const t=this.getCommand(e);return null==t?void 0:t.opts}}),S=e("CommandController",class{constructor(){this.commandRegister=new M}register(e,t,n){return this.commandRegister.registerCommand(e,t,n)}async execute(e,...t){const n=this.commandRegister.getCommand(e);if(n)return n.handler(...t);throw new Error("未注册指令: ".concat(e,",请先注册指令"))}hasCommand(e,t){const n=!!this.commandRegister.hasCommand(e);if(!0===t&&!0===n)throw new Error("未注册指令: ".concat(e,",请先注册指令"));return n}getCommandOpts(e){return this.commandRegister.getCommandOpt(e)}}),P=(e("commands",new S),e("CoreConst",class{}));P.DEFAULT_MODEL_SERVICE_TAG="default",P.TOKEN="ibzuaa-token",P.REFRESH_TOKEN="ibzuaa-refresh-token",P.TOKEN_EXPIRES="ibzuaa-token-expires",P.TOKEN_REMEMBER="ibizuaa-token-remember",P.IS_ANONYMOUS="ibizuaa-is-anonymous";var k=e("NOOP",(()=>{})),L=(e("HttpStatusMessageConst",{200:"服务器成功返回请求的数据。",201:"新建或修改数据成功。",202:"一个请求已经进入后台排队(异步任务)。",204:"删除数据成功。",400:"发出的请求有错误,服务器没有进行新建或修改数据的操作。",401:"用户没有权限(令牌、用户名、密码错误)。",403:"用户得到授权,但是访问是被禁止的。",404:"发出的请求针对的是不存在的记录,服务器没有进行操作。",406:"请求的格式不可得。",410:"请求的资源被永久删除,且不会再得到的。",422:"当创建一个对象时,发生一个验证错误。",500:"服务器发生错误,请检查服务器。",502:"网关错误。",503:"服务不可用,服务器暂时过载或维护。",504:"网关超时。"}),e("LoginMode",(e=>(e.DEFAULT="DEFAULT",e.CUSTOM="CUSTOM",e.CAS="CAS",e))(L||{}))),j=e("MenuPermissionMode",(e=>(e.MIXIN="MIXIN",e.RESOURCE="RESOURCE",e.RT="RT",e))(j||{})),D=(e("IBizContext",class e{constructor(e={},t){Object.defineProperty(this,"_associationContext",{enumerable:!1,value:[]}),t&&this.initWithParent(t),Object.assign(this,e)}initWithParent(e){const t=this;Object.defineProperty(this,"_parent",{enumerable:!1,writable:!0,value:e}),Object.defineProperty(this,"_context",{enumerable:!1,writable:!0,value:{}});const n={};Object.keys(e).forEach((e=>{Object.prototype.hasOwnProperty.call(this,e)||(n[e]={enumerable:!0,set(n){t._context[e]=null==n?null:n},get:()=>void 0!==t._context[e]?t._context[e]:t._parent[e]})})),Object.defineProperties(this,n)}getOwnContext(){const e={};return Object.keys(this).forEach((t=>{this._parent&&Object.prototype.hasOwnProperty.call(this._parent,t)&&!Object.prototype.hasOwnProperty.call(this._context,t)||(e[t]=this[t])})),e}destroy(){this._parent=void 0,this._context={},this._associationContext.forEach((e=>{e.destroy()}))}clone(){const n=new e(t(this.getOwnContext()),this._parent);return this._associationContext.push(n),n}reset(e={},t){this._associationContext.forEach((e=>{e.destroy()})),this._parent&&(this._parent={},this._context={}),Object.keys(this).forEach((e=>{try{delete this[e]}catch(e){}})),t&&this.initWithParent(t),Object.assign(this,e)}static create(t,n){return new e(t,n)}}),e("IBizParams",class{constructor(e,t){return Object.defineProperty(this,"_parent",{enumerable:!1,configurable:!0,writable:!0,value:t}),Object.defineProperty(this,"_params",{enumerable:!1,configurable:!0,writable:!0,value:e||{}}),this.createProxy()}createProxy(){return new Proxy(this,{set:(e,t,n)=>(["_params","_parent"].includes(t)?e[t]=n:e._params[t]=n,!0),get:(e,t,n)=>void 0!==e[t]?e[t]:void 0!==e._params[t]?e._params[t]:e._parent&&void 0!==e._parent[t]?e._parent[t]:void 0,ownKeys(e){const t=[...new Set([...Object.keys(e._params),...Object.keys(e._parent||{})])];return function(e,t){t.forEach((t=>{Object.prototype.hasOwnProperty.call(e,t)||Object.defineProperty(e,t,{enumerable:!0,configurable:!0,writable:!0,value:void 0})}))}(e,t),t}})}reset(e,t){this._params=e||{},this._parent=t}destroy(){this._params={},this._parent=void 0}}),e("Environment",{dev:!1,hub:!0,enableMqtt:!1,mqttUrl:"/portal/mqtt/mqtt",isEnableMultiLan:!1,anonymousUser:"",anonymousPwd:"",enableAnonymous:!1,logLevel:"ERROR",baseUrl:"/api",appId:"",pluginBaseUrl:"http://172.16.240.221",isLocalModel:!1,remoteModelUrl:"/remotemodel",assetsUrl:"./assets",dcSystem:"",downloadFileUrl:"/ibizutil/download/{cat}",uploadFileUrl:"/ibizutil/upload/{cat}",casLoginUrl:"",loginMode:"DEFAULT",menuPermissionMode:"MIXIN",enablePermission:!0,routePlaceholder:"-",enableWfAllHistory:!1,isMob:!1,isSaaSMode:!0,AppTitle:"应用",favicon:"./favicon.ico"})),z=e("HttpError",class extends Error{constructor(e){super("HttpError"),this.name="HttpError";const t=e.response;this.response=e.response,t?(t.data?this.message=t.data.message:this.message=t.statusText,this.message||(this.message="网络异常,请稍后重试!"),this.status=t.status):(this.message=e.message||"",this.status=500)}}),B=(e("ModelError",class extends Error{constructor(e,t){super("「".concat(e.id,"」模型").concat(t?": ".concat(t):"")),this.model=e,this.name="未支持的模型"}}),e("RuntimeError",class extends Error{constructor(e){super(e),this.message=e,this.name="Runtime Error"}}));e("RuntimeModelError",class extends Error{constructor(e,t){super("「".concat(e.id,"」模型").concat(t?": ".concat(t):"")),this.model=e,this.name="模型配置缺失"}}),e("NoticeError",class extends Error{constructor(e,t){super(e),this.message=e,this.duration=t,this.name="notice Error"}});function q(){return d(P.TOKEN)}var F=/<svg\b[^>]*>[\s\S]*?<\/svg>/;var H=e("Interceptor",class{async onBeforeRequest(e){return e}onRequestError(e){return Promise.reject(e)}async onResponseSuccess(e){return e}onResponseError(e){return Promise.reject(e)}use(e){this.requestTag=e.interceptors.request.use(this.onBeforeRequest,this.onRequestError),this.responseTag=e.interceptors.response.use(this.onResponseSuccess,this.onResponseError)}eject(e){this.requestTag&&e.interceptors.request.eject(this.requestTag),this.responseTag&&e.interceptors.response.eject(this.responseTag)}}),V=e("CoreInterceptor",class extends H{async onBeforeRequest(e){e=await super.onBeforeRequest(e);const{headers:t}=e;t.set("Authorization","Bearer ".concat(q()));let n=ibiz.env.dcSystem;const{orgData:s}=ibiz;return s&&(s.systemid&&(n=s.systemid),s.orgid&&t.set("srforgid",s.orgid)),t.set("srfsystemid",n),e}}),W=class{constructor(e){this.parent=e,this.evt=new f(1e3)}next(e){this.evt.emit("all",e),this.parent&&this.nextParent(e)}nextParent(e){this.parent&&(this.parent.evt.emit("all",e),this.parent.nextParent(e))}on(e){this.evt.on("all",e)}off(e){this.evt.off("all",e)}},Y=class extends W{},J=class extends W{sendCommand(e,t){const n={messageid:m(),messagename:"command",type:"COMMAND",subtype:t,data:e};this.next(n)}},K=class extends J{send(e){this.sendCommand(e,"OBJECTCREATED")}},$=class extends J{send(e){this.sendCommand(e,"OBJECTUPDATED")}},G=class extends J{send(e){this.sendCommand(e,"OBJECTREMOVED")}},X=class extends J{},Z=class extends J{send(e){this.sendCommand(e,"ASYNCACTION")}},Q=class extends J{send(e){this.sendCommand(e,"INTERNALMESSAGE")}},ee=class extends J{send(e){this.sendCommand(e,"MARKOPENDATA")}},te=class extends W{constructor(){super(...arguments),this.change=new X,this.create=new K(this),this.update=new $(this),this.remove=new G(this),this.asyncAction=new Z(this),this.internalMessage=new Q(this),this.markOpenData=new ee(this)}next(e){switch(e.subtype){case"OBJECTCREATED":this.create.next(e),this.change.next(e);break;case"OBJECTUPDATED":this.update.next(e),this.change.next(e);break;case"OBJECTREMOVED":this.remove.next(e),this.change.next(e);break;case"ASYNCACTION":this.asyncAction.next(e);break;case"INTERNALMESSAGE":this.internalMessage.next(e);break;case"MARKOPENDATA":this.markOpenData.next(e);break;default:super.next(e)}}nextParent(e){switch(e.subtype){case"OBJECTCREATED":case"OBJECTUPDATED":case"OBJECTREMOVED":this.change.next(e)}super.nextParent(e)}send(e,t){const n={messageid:m(),messagename:"command",type:"COMMAND",subtype:t,data:e};this.next(n)}},ne=class extends W{send(e){const t={messageid:m(),messagename:"console",type:"CONSOLE",data:e};this.next(t)}},se=e("MessageCenter",class{constructor(){this.all=new Y,this.command=new te(this.all),this.console=new ne(this.all)}next(e){"COMMAND"===e.type?this.command.next(e):"CONSOLE"===e.type?this.console.next(e):this.all.next(e)}on(e){this.all.on(e)}off(e){this.all.off(e)}});function re(e,t,n,s,r){let i="".concat(e,"-").concat(t);return n&&(i+="-".concat(n)),s&&(i+="__".concat(s)),r&&(i+="--".concat(r)),i}e("Namespace",class{constructor(e,t){this.block=e,this.namespace=t||"ibiz"}b(e=""){return re(this.namespace,this.block,e,"","")}e(e){return e?re(this.namespace,this.block,"",e,""):""}m(e){return e?re(this.namespace,this.block,"","",e):""}be(e,t){return e&&t?re(this.namespace,this.block,e,t,""):""}em(e,t){return e&&t?re(this.namespace,this.block,"",e,t):""}bm(e,t){return e&&t?re(this.namespace,this.block,e,"",t):""}bem(e,t,n){return e&&t&&n?re(this.namespace,this.block,e,t,n):""}is(e,t){return e&&t?"".concat("is-").concat(e):""}cssVar(e){const t={};for(const n in e)e[n]&&(t[this.cssVarName(n)]=e[n]);return t}cssVarBlock(e){const t={};for(const n in e)e[n]&&(t[this.cssVarBlockName(n)]=e[n]);return t}cssVarName(e){return"--".concat(this.namespace,"-").concat(e)}cssVarBlockName(e){return"--".concat(this.namespace,"-").concat(this.block,"-").concat(e)}}),e("HttpResponse",class{constructor(e,t,n){this.local=!0,this.ok=!1,this.headers={},this.config={headers:new g.AxiosHeaders},this.data=e,this.status=t||200,this.statusText=n||"",this.status>=200&&this.status<300&&(this.ok=!0)}});var ie=e("Net",class{constructor(e){this.urlReg=/^http[s]?:\/\/[^\s]*/,this.waitRequest=new Map,this.interceptors=new Map,this.instance=g.create(e),this.addInterceptor("Default",new V)}get baseUrl(){return this.instance.defaults.baseURL||"".concat(ibiz.env.baseUrl,"/").concat(ibiz.env.appId)}addInterceptor(e,t){t.use(this.instance),this.interceptors.set(e,t)}removeInterceptor(e){const t=this.interceptors.get(e);t&&(t.eject(this.instance),this.interceptors.delete(e))}get presetConfig(){return{baseURL:this.baseUrl,headers:{"Content-Type":"application/json;charset=UTF-8",Accept:"application/json"}}}mergeConfig(...e){const t=this.presetConfig;if(0===e.length)return t;const{url:n}=e[0];return n&&this.urlReg.test(n)&&delete t.baseURL,a(t,...e)}async post(e,t,n={},s={}){e=this.handleAppPresetParam(e,n);try{const n=await this.request(e,{method:"post",data:t,headers:s});return this.doResponseResult(n)}catch(e){throw new z(e)}}async get(e,t={},n={},s={}){e=this.attachUrlParam(e,t);try{const t=await this.request(e,a({method:"get",headers:n},s));return this.doResponseResult(t)}catch(e){throw new z(e)}}async delete(e,t,n={}){e=this.handleAppPresetParam(e,t);try{const t=await this.request(e,{method:"delete",headers:n});return this.doResponseResult(t)}catch(e){throw new z(e)}}async put(e,t,n={},s={}){e=this.handleAppPresetParam(e,n);try{const n=await this.request(e,{method:"put",data:t,headers:s});return this.doResponseResult(n)}catch(e){throw new z(e)}}async getModel(e,t={}){try{const n=await this.instance.get(e,{headers:t});return this.doResponseResult(n)}catch(e){throw new z(e)}}async request(e,t={}){const n=this.mergeConfig({url:e},t),s=JSON.stringify(n);try{let e=null;this.waitRequest.has(s)?e=this.waitRequest.get(s):(e=this.instance.request(n),this.waitRequest.set(s,e));const t=await e;return this.waitRequest.has(s)&&this.waitRequest.delete(s),this.doResponseResult(t)}catch(e){throw this.waitRequest.has(s)&&this.waitRequest.delete(s),new z(e)}}axios(e){return g(e)}async sse(e,t,n={}){e=this.attachUrlParam(this.baseUrl+e,t),n.headers||(n.headers={});const s=n.headers;{s.Authorization="Bearer ".concat(q());let e=ibiz.env.dcSystem;const{orgData:t}=ibiz;t&&(t.systemid&&(e=t.systemid),t.orgid&&(s.srforgid=t.orgid)),s.srfsystemid=e}const i=r({openWhenHidden:!0,method:"POST"},n);await R(e,i)}doResponseResult(e){const t=e;if(t.status>=200&&t.status<=299){t.ok=!0;const e=t.data;""!==e&&null!==e||(t.data=void 0)}return t}handleAppPresetParam(e,t){return t?this.attachUrlParam(e,t):e}attachUrlParam(e,t){{const t=e.split("?");t[0]=t[0].split("/").map((e=>encodeURIComponent(e))).join("/"),e=t.length>1?t.join("?"):t[0]}const n=b.stringify(t);return p(n)&&(e=e.endsWith("?")||-1!==e.indexOf("?")&&e.endsWith("&")?"".concat(e).concat(n):-1===e.indexOf("?")||e.endsWith("&")?"".concat(e,"?").concat(n):"".concat(e,"&").concat(n)),e}}),ae=e("StringUtil",class{static fill(e,t,n){if(p(e)){if(p(t)){const n=e.match(this.contextReg);null==n||n.forEach((n=>{const s=n.slice(10,n.length-1);e=e.replace("${context.".concat(s,"}"),t[s]||"")}))}if(p(n)){const t=e.match(this.dataReg);null==t||t.forEach((t=>{const s=t.slice(7,t.length-1);e=e.replace("${data.".concat(s,"}"),n[s]||"")}))}}return e}});ae.contextReg=/\$\{context.[a-zA-Z_$][a-zA-Z0-9_$]{1,}\}/g,ae.dataReg=/\$\{data.[a-zA-Z_$][a-zA-Z0-9_$]{1,}\}/g;e("UrlHelper",class{static get routeBase(){const e=window.location.href.lastIndexOf("#/");return window.location.href.slice(0,e+1)}static get appBase(){const{origin:e,pathname:t}=window.location;return"".concat(e).concat(t).replace(/\/$/,"")}static get routePath(){return window.location.hash.replace("#","")}static get fullPath(){return window.location.href}});function oe(e){const t=e.composedPath&&e.composedPath()||e.path;if(null!=t)return t;return[e.target].concat(function e(t,n=[]){const s=t.parentNode;return s?e(s,n.concat([s])):n}(e.target))}function ce(e,t,n,s={}){e.addEventListener(t,n,s);let r=()=>{e.removeEventListener(t,n,s),r=k};return()=>{r()}}function le(e,t){return t&&(e.target===t||oe(e).includes(t))}var he=class e{constructor(t={}){this.data=t,this._prev=e.Undefined,this._next=e.Undefined}clone(){const n=new e(t(this.data));return n._prev&&n._prev!==e.Undefined&&(n._prev=t(this._prev)),n._next&&n._next!==e.Undefined&&(n._next=t(this._next)),n}};he.Undefined=new he(void 0);var ue=e("HistoryItem",he),de=(e("HistoryList",class e{get data(){return this._cur.data}constructor(e){this._cur=new ue(e)}assign(e){e&&(this.save(),Object.assign(this._cur.data,e))}save(){const e=this._cur,n=t(e.data),s=new ue(n);s._prev=e,e._next._prev=ue.Undefined,this._clear(e._next),e._next=s,this._cur=s}prev(){return!(!this._cur._prev||this._cur._prev===ue.Undefined)&&(this._cur=this._cur._prev,!0)}next(){return!(!this._cur._next||this._cur._next===ue.Undefined)&&(this._cur=this._cur._next,!0)}_clear(e){e._prev&&e._prev!==ue.Undefined&&(e._prev._next=ue.Undefined,this._clear(e._prev),e._prev=ue.Undefined),e._next&&e._next!==ue.Undefined&&(e._next._prev=ue.Undefined,this._clear(e._next),e._next=ue.Undefined),e.data={}}clone(){return new e({})._cur=t(this._cur),this}destroy(){this._clear(this._cur)}}),"undefined"!=typeof window?window:void 0);var pe=Math.round;function me(e){const t=e.length,n=[];if("rgb"===e.slice(0,3).toLowerCase()){const t=e.match(/([\d|.%]{1,3})/g);n[0]=parseInt(t[0],10),n[1]=parseInt(t[1],10),n[2]=parseInt(t[2],10),n[3]=t[3]?-1!==t[3].indexOf("%")?parseInt(t[3],10)/100:parseFloat(t[3]):1}else{let s;s=t<6?parseInt(String(e[1])+e[1]+e[2]+e[2]+e[3]+e[3]+(t>4?String(e[4])+e[4]:""),16):parseInt(e.slice(1),16),n[0]=s>>16&255,n[1]=s>>8&255,n[2]=255&s,n[3]=9===t||5===t?pe((s>>24&255)/255*1e4)/1e4:1}return n}function fe(e){let t="";switch(e.includes(".")?e.split(".").pop():""){case"wps":t="application/kswps";break;case"doc":t="application/msword";break;case"docx":t="application/vnd.openxmlformats-officedocument.wordprocessingml.document";break;case"txt":t="text/plain";break;case"zip":t="application/zip";break;case"png":t="image/png";break;case"gif":t="image/gif";break;case"jpeg":case"jpg":t="image/jpeg";break;case"rtf":t="application/rtf";break;case"avi":t="video/x-msvideo";break;case"gz":t="application/x-gzip";break;case"tar":t="application/x-tar";break;case"xlsx":t="application/vnd.ms-excel";break;default:t=""}return t}function ge(e){const t=[];for(let n=0;n<e.length;n++)t.push(e[n]);return t}function be(e){const t=a({multiple:!0,accept:""},e),n=document.createElement("input");n.setAttribute("type","file"),n.setAttribute("multiple","".concat(t.multiple)),n.setAttribute("accept",t.accept),n.onchange=e=>{const n=e.target,s=n.files?ge(n.files):[];0!==s.length&&(t.onSelected(s),n.value="")},document.body.appendChild(n),n.click(),document.body.removeChild(n)}e("CountLatch",class{constructor(){this.promise=null,this.resolve=null,this.count=0}startPromise(){this.promise=new Promise((e=>{this.resolve=e}))}endPromise(){this.resolve&&(this.resolve(),this.resolve=null,this.promise=null)}lock(){this.count+=1,this.promise||this.startPromise()}unlock(){if(this.count<1)throw new B("lock和unlock次数不匹配!");this.count-=1,0===this.count&&this.endPromise()}async await(){this.promise&&await this.promise}});var we={childrenFields:["children"]},ve=new Error("中断操作");function ye(e,t,n){try{!function(e,t,n){const{childrenFields:s}=r(we,n||{}),i=function(e,t){var n;for(const s of t)if(null==(n=e[s])?void 0:n.length)return e[s]}(e,s);if(null==i?void 0:i.length)for(const e of i){if(t(e))throw ve;ye(e,t,n)}}(e,t,n)}catch(e){if(e!==ve)throw e}}var Ee={...we,compareField:"name"};function _e(e){if(l(e)&&h(e.clone))return e.clone()}e("DataTypes",class{static isNumber(e){return["BIGINT","BINARY","DECIMAL","FLOAT","INT","MONEY","NUMERIC","REAL","SMALLINT","SMALLMONEY","TINYINT","VARBINARY"].includes(this.toString(e))}static isDate(e){return["DATETIME","SMALLDATETIME","DATE","TIME"].includes(this.toString(e))}static toString(e){return this.typeMap[e]}}).typeMap={0:"UNKNOWN",1:"BIGINT",2:"BINARY",3:"BIT",4:"CHAR",5:"DATETIME",6:"DECIMAL",7:"FLOAT",8:"IMAGE",9:"INT",10:"MONEY",11:"NCHAR",12:"NTEXT",13:"NVARCHAR",14:"NUMERIC",15:"REAL",16:"SMALLDATETIME",17:"SMALLINT",18:"SMALLMONEY",19:"SQL_VARIANT",20:"SYSNAME",21:"TEXT",22:"TIMESTAMP",23:"TINYINT",24:"VARBINARY",25:"VARCHAR",26:"UNIQUEIDENTIFIER",27:"DATE",28:"TIME",29:"BIGDECIMAL"};var xe={deep:!0};function Oe(e){return!(!e||e&e-1)}function Re(e){if(!Oe(e))throw new B("".concat(e,"不是2的幂"))}e("BitMask",{validate:Oe,setPermission:function(e=0,t){return Re(t),e|t},removePermission:function(e=0,t){return Re(t),e&~t},checkPermission:function(e=0,t){return Re(t),0!=(e&t)}});var Ae=w.noConflict();v.reg(Ae),v.apply(Ae);var Te=e("IBizSys",class{constructor(){this.env=D,this.log=Ae,this.net=new ie,this.commands=new S,this.mc=new se}})}}}));
@@ -13,5 +13,12 @@ export interface IDevToolConfig {
13
13
  * @type {string}
14
14
  */
15
15
  studioBaseUrl?: string;
16
+ /**
17
+ * 模型预览宽度
18
+ * @return {*}
19
+ * @author: zhujiamin
20
+ * @Date: 2024-02-20 13:28:20
21
+ */
22
+ modelPreviewWidth?: number;
16
23
  }
17
24
  //# sourceMappingURL=i-devtool-config.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"i-devtool-config.d.ts","sourceRoot":"","sources":["../../../src/interface/i-devtool-config/i-devtool-config.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AACH,MAAM,WAAW,cAAc;IAC7B;;;;;OAKG;IACH,aAAa,CAAC,EAAE,MAAM,CAAC;CACxB"}
1
+ {"version":3,"file":"i-devtool-config.d.ts","sourceRoot":"","sources":["../../../src/interface/i-devtool-config/i-devtool-config.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AACH,MAAM,WAAW,cAAc;IAC7B;;;;;OAKG;IACH,aAAa,CAAC,EAAE,MAAM,CAAC;IAEvB;;;;;OAKG;IACH,iBAAiB,CAAC,EAAE,MAAM,CAAC;CAC5B"}
@@ -1,5 +1,12 @@
1
1
  /**
2
2
  * 检查权限码是否有效
3
+ *
4
+ * @description 检查权限码是否是2的幂
5
+ * @example
6
+ * ```typescript
7
+ * validate(1) // => true
8
+ * validate(3) // => false
9
+ * ```
3
10
  * @author lxm
4
11
  * @date 2023-11-10 10:49:57
5
12
  * @static
@@ -8,6 +15,13 @@
8
15
  declare function validate(permission: number): boolean;
9
16
  /**
10
17
  * 设置权限
18
+ *
19
+ * @description 数字转二进制后进行|运算, 设置对应bit位为1(bit位为1代表有权限,bit位为0代表没有权限)
20
+ * @example
21
+ * ```typescript
22
+ * setPermission(0, 1) // => 1
23
+ * setPermission(1, 4) // => 5
24
+ * ```
11
25
  * @author lxm
12
26
  * @date 2023-11-10 10:50:22
13
27
  * @static
@@ -18,6 +32,12 @@ declare function validate(permission: number): boolean;
18
32
  declare function setPermission(allPermissions: number | undefined, permission: number): number;
19
33
  /**
20
34
  * 移出权限
35
+ * @description 数字转二进制后进行取反并且进行&运算, 设置对应bit位为0(bit位为1代表有权限,bit位为0代表没有权限)
36
+ * @example
37
+ * ```typescript
38
+ * removePermission(9, 1) // => 8
39
+ * removePermission(17, 16) // => 1
40
+ * ```
21
41
  * @author lxm
22
42
  * @date 2023-11-10 10:50:45
23
43
  * @static
@@ -28,6 +48,13 @@ declare function setPermission(allPermissions: number | undefined, permission: n
28
48
  declare function removePermission(allPermissions: number | undefined, permission: number): number;
29
49
  /**
30
50
  * 检查是否有某个权限
51
+ *
52
+ * @description 数字转二进制后进行&运算,为1则有权限,为0则没有权限
53
+ * @example
54
+ * ```typescript
55
+ * checkPermission(0, 1) // => false
56
+ * checkPermission(5, 4) // => true
57
+ * ```
31
58
  * @author lxm
32
59
  * @date 2023-11-10 10:50:46
33
60
  * @static
@@ -1 +1 @@
1
- {"version":3,"file":"bit-mask.d.ts","sourceRoot":"","sources":["../../../src/utils/bit-mask/bit-mask.ts"],"names":[],"mappings":"AAKA;;;;;;GAMG;AACH,iBAAS,QAAQ,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO,CAE7C;AAiBD;;;;;;;;GAQG;AACH,iBAAS,aAAa,CAAC,cAAc,oBAAY,EAAE,UAAU,EAAE,MAAM,GAAG,MAAM,CAG7E;AAED;;;;;;;;GAQG;AACH,iBAAS,gBAAgB,CACvB,cAAc,oBAAY,EAC1B,UAAU,EAAE,MAAM,GACjB,MAAM,CAGR;AAED;;;;;;;;GAQG;AACH,iBAAS,eAAe,CACtB,cAAc,oBAAY,EAC1B,UAAU,EAAE,MAAM,GACjB,OAAO,CAGT;AAED,eAAO,MAAM,OAAO;;;;;CAKnB,CAAC"}
1
+ {"version":3,"file":"bit-mask.d.ts","sourceRoot":"","sources":["../../../src/utils/bit-mask/bit-mask.ts"],"names":[],"mappings":"AAKA;;;;;;;;;;;;;GAaG;AACH,iBAAS,QAAQ,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO,CAE7C;AAiBD;;;;;;;;;;;;;;;GAeG;AACH,iBAAS,aAAa,CAAC,cAAc,oBAAY,EAAE,UAAU,EAAE,MAAM,GAAG,MAAM,CAG7E;AAED;;;;;;;;;;;;;;GAcG;AACH,iBAAS,gBAAgB,CACvB,cAAc,oBAAY,EAC1B,UAAU,EAAE,MAAM,GACjB,MAAM,CAGR;AAED;;;;;;;;;;;;;;;GAeG;AACH,iBAAS,eAAe,CACtB,cAAc,oBAAY,EAC1B,UAAU,EAAE,MAAM,GACjB,OAAO,CAGT;AAED,eAAO,MAAM,OAAO;;;;;CAKnB,CAAC"}
@@ -3,6 +3,13 @@
3
3
  import { RuntimeError } from '../../error';
4
4
  /**
5
5
  * 检查权限码是否有效
6
+ *
7
+ * @description 检查权限码是否是2的幂
8
+ * @example
9
+ * ```typescript
10
+ * validate(1) // => true
11
+ * validate(3) // => false
12
+ * ```
6
13
  * @author lxm
7
14
  * @date 2023-11-10 10:49:57
8
15
  * @static
@@ -27,6 +34,13 @@ function validateAndThrow(permission) {
27
34
  }
28
35
  /**
29
36
  * 设置权限
37
+ *
38
+ * @description 数字转二进制后进行|运算, 设置对应bit位为1(bit位为1代表有权限,bit位为0代表没有权限)
39
+ * @example
40
+ * ```typescript
41
+ * setPermission(0, 1) // => 1
42
+ * setPermission(1, 4) // => 5
43
+ * ```
30
44
  * @author lxm
31
45
  * @date 2023-11-10 10:50:22
32
46
  * @static
@@ -40,6 +54,12 @@ function setPermission(allPermissions = 0, permission) {
40
54
  }
41
55
  /**
42
56
  * 移出权限
57
+ * @description 数字转二进制后进行取反并且进行&运算, 设置对应bit位为0(bit位为1代表有权限,bit位为0代表没有权限)
58
+ * @example
59
+ * ```typescript
60
+ * removePermission(9, 1) // => 8
61
+ * removePermission(17, 16) // => 1
62
+ * ```
43
63
  * @author lxm
44
64
  * @date 2023-11-10 10:50:45
45
65
  * @static
@@ -53,6 +73,13 @@ function removePermission(allPermissions = 0, permission) {
53
73
  }
54
74
  /**
55
75
  * 检查是否有某个权限
76
+ *
77
+ * @description 数字转二进制后进行&运算,为1则有权限,为0则没有权限
78
+ * @example
79
+ * ```typescript
80
+ * checkPermission(0, 1) // => false
81
+ * checkPermission(5, 4) // => true
82
+ * ```
56
83
  * @author lxm
57
84
  * @date 2023-11-10 10:50:46
58
85
  * @static
@@ -1 +1 @@
1
- {"version":3,"file":"color.d.ts","sourceRoot":"","sources":["../../../src/utils/color/color.ts"],"names":[],"mappings":"AA8CA;;;;;;;;;;GAUG;AACH,wBAAgB,UAAU,CACxB,MAAM,EAAE,MAAM,EACd,MAAM,EAAE,MAAM,EACd,CAAC,SAAM,EACP,MAAM,GAAE,KAAK,GAAG,KAAa,GAC5B,MAAM,CAqBR"}
1
+ {"version":3,"file":"color.d.ts","sourceRoot":"","sources":["../../../src/utils/color/color.ts"],"names":[],"mappings":"AA8CA;;;;;;;;;;GAUG;AACH,wBAAgB,UAAU,CACxB,MAAM,EAAE,MAAM,EACd,MAAM,EAAE,MAAM,EACd,CAAC,SAAM,EACP,MAAM,GAAE,KAAK,GAAG,KAAa,GAC5B,MAAM,CAyBR"}
@@ -65,10 +65,14 @@ export function colorBlend(color1, color2, p = 0.5, format = 'hex') {
65
65
  ];
66
66
  if (format === 'hex') {
67
67
  const hex = [
68
- result[0].toString(16),
69
- result[1].toString(16),
70
- result[2].toString(16),
71
- result[3] === 0 ? '00' : r(result[3] * 255).toString(16),
68
+ result[0].toString(16).padStart(2, '0'),
69
+ result[1].toString(16).padStart(2, '0'),
70
+ result[2].toString(16).padStart(2, '0'),
71
+ result[3] === 0
72
+ ? '00'
73
+ : r(result[3] * 255)
74
+ .toString(16)
75
+ .padStart(2, '0'),
72
76
  ];
73
77
  return `#${hex[0]}${hex[1]}${hex[2]}${hex[3]}`;
74
78
  }
@@ -8,50 +8,50 @@
8
8
  * @returns {*}
9
9
  */
10
10
  export function calcMimeByFileName(fileName) {
11
- const ext = fileName.split('.').pop();
11
+ const ext = fileName.includes('.') ? fileName.split('.').pop() : '';
12
12
  let mime = '';
13
13
  switch (ext) {
14
- case '.wps':
14
+ case 'wps':
15
15
  mime = 'application/kswps';
16
16
  break;
17
- case '.doc':
17
+ case 'doc':
18
18
  mime = 'application/msword';
19
19
  break;
20
- case '.docx':
20
+ case 'docx':
21
21
  mime =
22
22
  'application/vnd.openxmlformats-officedocument.wordprocessingml.document';
23
23
  break;
24
- case '.txt':
24
+ case 'txt':
25
25
  mime = 'text/plain';
26
26
  break;
27
- case '.zip':
27
+ case 'zip':
28
28
  mime = 'application/zip';
29
29
  break;
30
- case '.png':
30
+ case 'png':
31
31
  mime = 'image/png';
32
32
  break;
33
- case '.gif':
33
+ case 'gif':
34
34
  mime = 'image/gif';
35
35
  break;
36
- case '.jpeg':
36
+ case 'jpeg':
37
37
  mime = 'image/jpeg';
38
38
  break;
39
- case '.jpg':
39
+ case 'jpg':
40
40
  mime = 'image/jpeg';
41
41
  break;
42
- case '.rtf':
42
+ case 'rtf':
43
43
  mime = 'application/rtf';
44
44
  break;
45
- case '.avi':
45
+ case 'avi':
46
46
  mime = 'video/x-msvideo';
47
47
  break;
48
- case '.gz':
48
+ case 'gz':
49
49
  mime = 'application/x-gzip';
50
50
  break;
51
- case '.tar':
51
+ case 'tar':
52
52
  mime = 'application/x-tar';
53
53
  break;
54
- case '.xlsx':
54
+ case 'xlsx':
55
55
  mime = 'application/vnd.ms-excel';
56
56
  break;
57
57
  default:
@@ -69,11 +69,11 @@ export function calcMimeByFileName(fileName) {
69
69
  * @returns {*} {boolean}
70
70
  */
71
71
  export function isImage(fileName) {
72
- const ext = fileName.split('.').pop();
72
+ const ext = fileName.includes('.') ? fileName.split('.').pop() : '';
73
73
  if (!ext) {
74
74
  return false;
75
75
  }
76
- const imageTypes = ['.jpeg', 'jpg', 'gif', 'png', 'bmp', 'svg'];
76
+ const imageTypes = ['jpeg', 'jpg', 'gif', 'png', 'bmp', 'svg'];
77
77
  return imageTypes.includes(ext);
78
78
  }
79
79
  /**
@@ -26,6 +26,12 @@ export declare class StringUtil {
26
26
  /**
27
27
  * 填充字符串中的数据
28
28
  *
29
+ * @description 填充字符串中的数据 用法:传入需要替换的字符串和对象 返回值是string类型
30
+ * @example
31
+ * ```
32
+ * StringUtil.fill('姓名:${context.name},年龄:${data.age}', { name: '张三', age: 10 }, { name: '李四', age: 25 }); // => '姓名:张三,年龄:25'
33
+ * StringUtil.fill('', { name: '张三', age: 10 }, { name: '李四', age: 25 }); // => ''
34
+ * ```
29
35
  * @author chitanda
30
36
  * @date 2021-04-23 20:04:17
31
37
  * @static
@@ -1 +1 @@
1
- {"version":3,"file":"string-util.d.ts","sourceRoot":"","sources":["../../../src/utils/string-util/string-util.ts"],"names":[],"mappings":"AAEA;;;;;;;GAOG;AACH,qBAAa,UAAU;IACrB;;;;;;OAMG;IACH,MAAM,CAAC,UAAU,SAAgD;IAEjE;;;;;;OAMG;IACH,MAAM,CAAC,OAAO,SAA6C;IAE3D;;;;;;;;;;OAUG;IACH,MAAM,CAAC,IAAI,CAAC,GAAG,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,QAAQ,EAAE,IAAI,CAAC,EAAE,KAAK,GAAG,MAAM;CAmBnE"}
1
+ {"version":3,"file":"string-util.d.ts","sourceRoot":"","sources":["../../../src/utils/string-util/string-util.ts"],"names":[],"mappings":"AAEA;;;;;;;GAOG;AACH,qBAAa,UAAU;IACrB;;;;;;OAMG;IACH,MAAM,CAAC,UAAU,SAAgD;IAEjE;;;;;;OAMG;IACH,MAAM,CAAC,OAAO,SAA6C;IAE3D;;;;;;;;;;;;;;;;OAgBG;IACH,MAAM,CAAC,IAAI,CAAC,GAAG,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,QAAQ,EAAE,IAAI,CAAC,EAAE,KAAK,GAAG,MAAM;CAmBnE"}
@@ -11,6 +11,12 @@ export class StringUtil {
11
11
  /**
12
12
  * 填充字符串中的数据
13
13
  *
14
+ * @description 填充字符串中的数据 用法:传入需要替换的字符串和对象 返回值是string类型
15
+ * @example
16
+ * ```
17
+ * StringUtil.fill('姓名:${context.name},年龄:${data.age}', { name: '张三', age: 10 }, { name: '李四', age: 25 }); // => '姓名:张三,年龄:25'
18
+ * StringUtil.fill('', { name: '张三', age: 10 }, { name: '李四', age: 25 }); // => ''
19
+ * ```
14
20
  * @author chitanda
15
21
  * @date 2021-04-23 20:04:17
16
22
  * @static
@@ -1,6 +1,12 @@
1
1
  /**
2
2
  * 设置延迟wait毫米后执行fun方法,返回fun的返回值
3
3
  *
4
+ * @description 设置延迟wait毫米后执行fun方法 用法:传入等待时间,函数和参数 返回fun的返回值
5
+ * @example
6
+ * ```
7
+ * awaitTimeout(100, () => 'Hello, World!'); // => 'Hello, World!'
8
+ * awaitTimeout(100, (name: string) => `Hello, ${name}!`, ['John']); // => 'Hello, John!'
9
+ * ```
4
10
  * @author lxm
5
11
  * @date 2023-03-06 08:20:57
6
12
  * @export
@@ -1 +1 @@
1
- {"version":3,"file":"await-timeout.d.ts","sourceRoot":"","sources":["../../../src/utils/sync/await-timeout.ts"],"names":[],"mappings":"AACA;;;;;;;;;;;GAWG;AACH,wBAAsB,YAAY,CAAC,CAAC,SAAS,CAAC,GAAG,IAAI,EAAE,GAAG,KAAK,GAAG,EAChE,IAAI,EAAE,MAAM,EACZ,GAAG,CAAC,EAAE,CAAC,EACP,MAAM,CAAC,EAAE,GAAG,EAAE,GACb,OAAO,CAAC,UAAU,CAAC,CAAC,CAAC,GAAG,SAAS,CAAC,CASpC"}
1
+ {"version":3,"file":"await-timeout.d.ts","sourceRoot":"","sources":["../../../src/utils/sync/await-timeout.ts"],"names":[],"mappings":"AACA;;;;;;;;;;;;;;;;;GAiBG;AACH,wBAAsB,YAAY,CAAC,CAAC,SAAS,CAAC,GAAG,IAAI,EAAE,GAAG,KAAK,GAAG,EAChE,IAAI,EAAE,MAAM,EACZ,GAAG,CAAC,EAAE,CAAC,EACP,MAAM,CAAC,EAAE,GAAG,EAAE,GACb,OAAO,CAAC,UAAU,CAAC,CAAC,CAAC,GAAG,SAAS,CAAC,CASpC"}
@@ -2,6 +2,12 @@
2
2
  /**
3
3
  * 设置延迟wait毫米后执行fun方法,返回fun的返回值
4
4
  *
5
+ * @description 设置延迟wait毫米后执行fun方法 用法:传入等待时间,函数和参数 返回fun的返回值
6
+ * @example
7
+ * ```
8
+ * awaitTimeout(100, () => 'Hello, World!'); // => 'Hello, World!'
9
+ * awaitTimeout(100, (name: string) => `Hello, ${name}!`, ['John']); // => 'Hello, John!'
10
+ * ```
5
11
  * @author lxm
6
12
  * @date 2023-03-06 08:20:57
7
13
  * @export
@@ -13,7 +13,9 @@ export type PartialWithObject<T, U> = {
13
13
  /**
14
14
  * 从T里面只获取索引类型为string的键
15
15
  */
16
- export type StrKeyOf<T> = Extract<keyof T, string>;
16
+ export type StrKeyOf<T> = {
17
+ [K in keyof T]: T[K] extends string ? K : never;
18
+ }[keyof T];
17
19
  /**
18
20
  * 构造函数接口,声明一个返回对象是T的构造函数,不传则返回类型是any
19
21
  */
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/utils/types/types.ts"],"names":[],"mappings":"AACA;;GAEG;AACH,MAAM,MAAM,UAAU,CAAC,CAAC,EAAE,CAAC,IAAI;KAAG,CAAC,IAAI,MAAM,IAAI,CAAC,CAAC,EAAE,MAAM,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;CAAE,CAAC;AAEvE;;GAEG;AACH,MAAM,MAAM,iBAAiB,CAAC,CAAC,EAAE,CAAC,IAAI;KACnC,CAAC,IAAI,MAAM,IAAI,CAAC,CAAC,EAAE,MAAM,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;CACpC,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC;AAEf;;GAEG;AACH,MAAM,MAAM,QAAQ,CAAC,CAAC,IAAI,OAAO,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,CAAC;AAEnD;;GAEG;AACH,MAAM,MAAM,WAAW,CAAC,CAAC,SAAS,MAAM,GAAG,GAAG,IAAI,KAAK,GAAG,IAAI,EAAE,GAAG,EAAE,KAAK,CAAC,CAAC"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/utils/types/types.ts"],"names":[],"mappings":"AACA;;GAEG;AACH,MAAM,MAAM,UAAU,CAAC,CAAC,EAAE,CAAC,IAAI;KAAG,CAAC,IAAI,MAAM,IAAI,CAAC,CAAC,EAAE,MAAM,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;CAAE,CAAC;AAEvE;;GAEG;AACH,MAAM,MAAM,iBAAiB,CAAC,CAAC,EAAE,CAAC,IAAI;KACnC,CAAC,IAAI,MAAM,IAAI,CAAC,CAAC,EAAE,MAAM,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;CACpC,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC;AAEf;;GAEG;AACH,MAAM,MAAM,QAAQ,CAAC,CAAC,IAAI;KACvB,CAAC,IAAI,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,SAAS,MAAM,GAAG,CAAC,GAAG,KAAK;CAChD,CAAC,MAAM,CAAC,CAAC,CAAC;AAEX;;GAEG;AACH,MAAM,MAAM,WAAW,CAAC,CAAC,SAAS,MAAM,GAAG,GAAG,IAAI,KAAK,GAAG,IAAI,EAAE,GAAG,EAAE,KAAK,CAAC,CAAC"}