youtil 3.1.4 → 3.1.6
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 +29 -18
- package/dist/index.cjs +11 -9
- package/dist/index.mjs +11 -9
- package/dist/index.umd.js +11 -9
- package/dist/types/enum.d.ts +5 -4
- package/dist/types/format.d.ts +21 -0
- package/dist/types/index.d.ts +4 -2
- package/dist/types/mockRequest.d.ts +30 -0
- package/dist/types/number.d.ts +22 -0
- package/dist/types/request.d.ts +3 -0
- package/dist/types/string.d.ts +0 -9
- package/package.json +1 -1
package/README.md
CHANGED
|
@@ -1,41 +1,46 @@
|
|
|
1
1
|
# youtil
|
|
2
2
|
|
|
3
|
-
`youtil`,发音同`util`,中文可以叫做`油梯`,一个与框架(`Vue`、`React`等)、环境(`Nodejs`、`Browser`等)无关的小巧、精简、实用、不依赖任何第三方库的`JavaScript
|
|
3
|
+
`youtil`,发音同`util`,中文可以叫做`油梯`,一个与框架(`Vue`、`React`等)、环境(`Nodejs`、`Browser`等)无关的小巧、精简、实用、不依赖任何第三方库的`JavaScript`高质量函数库,最新版完整代码仅`7kb`,作者多年精心维护并持续迭代,可放心使用。官网:[https://youtil.haoji.me](https://youtil.haoji.me)。
|
|
4
4
|
|
|
5
|
-
|
|
6
|
-
|
|
5
|
+
目前收录的函数包括但不限于日期时间处理、字符串处理、数字处理、cookie、枚举、网络请求、消息通信、事件、编解码、身份证校验等,并持续更新。
|
|
6
|
+
|
|
7
|
+
> * 少数方法可能依赖浏览器环境,例如`showLoading`,注意甄别;
|
|
8
|
+
> * 【文档】部分仅对部分核心方法进行单独示例演示,很多简单函数未在此做一一介绍,完整函数列表请前往[【API】](https://youtil.haoji.me/api/globals#functions)页面单独查看,
|
|
9
|
+
> * 关于命名,之前想了很多名字,包括`autil`、`zutil`、`feutil`等,从a-z试下来只有几个没有被注册,但是都不好记,最后才取了`youtil`这个名字。
|
|
7
10
|
|
|
8
11
|
## 如何使用
|
|
9
12
|
|
|
13
|
+
### npm安装
|
|
14
|
+
|
|
10
15
|
安装:`npm i youtil -S`
|
|
11
16
|
|
|
12
17
|
使用示例:
|
|
13
18
|
|
|
14
19
|
```js
|
|
15
|
-
import { formatDate
|
|
20
|
+
import { formatDate } from youtil;
|
|
16
21
|
console.log(formatDate(Date.now()));
|
|
17
|
-
conssole.log(parseDate('2023-02-14', 'yyyy-MM-dd'));
|
|
18
22
|
```
|
|
19
23
|
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
本文档仅对一些重点模块进行单独介绍,很多简单函数未做一一介绍,完整函数列表请参见[API文档](https://youtil.haoji.me/api/globals)。
|
|
23
|
-
|
|
24
|
-
## 关于命名
|
|
24
|
+
### CDN引入
|
|
25
25
|
|
|
26
|
-
|
|
26
|
+
```html
|
|
27
|
+
<script src="https://unpkg.shop.jd.com/youtil/dist/index.umd.js"></script>
|
|
28
|
+
<script>
|
|
29
|
+
const { formatDate } = youtil;
|
|
30
|
+
console.log(formatDate(Date.now()));
|
|
31
|
+
</script>
|
|
32
|
+
```
|
|
27
33
|
|
|
28
|
-
##
|
|
34
|
+
## 贡献代码
|
|
29
35
|
|
|
30
|
-
依赖`node@
|
|
36
|
+
依赖`node@20`环境,执行`cnpm run dev`将自动打开本地预览。
|
|
31
37
|
|
|
32
38
|
### 目录结构介绍
|
|
33
39
|
|
|
34
40
|
* src: 源文件;
|
|
35
41
|
* docs: 文档;
|
|
36
42
|
* test:测试用例;
|
|
37
|
-
* dist
|
|
38
|
-
* esm:供其他项目引入;
|
|
43
|
+
* dist:各种构建产物
|
|
39
44
|
* build:文档之类的构建产物;
|
|
40
45
|
|
|
41
46
|
### 代码提交顺序
|
|
@@ -47,7 +52,13 @@ conssole.log(parseDate('2023-02-14', 'yyyy-MM-dd'));
|
|
|
47
52
|
|
|
48
53
|
注意:@ice/pkg和@swc/helpers 升级到0.5.0以上版本时其他业务可能报错,非常坑!目前写死版本
|
|
49
54
|
|
|
50
|
-
###
|
|
55
|
+
### 关于脚手架
|
|
56
|
+
|
|
57
|
+
注意:本仓库脚手架已全部重新搭建,文档系统基于`dumi`,生产构建基于`esbuild`。
|
|
58
|
+
|
|
59
|
+
以下内容全部失效,不用关注。
|
|
60
|
+
|
|
61
|
+
#### 关于@swc/helper的版本
|
|
51
62
|
|
|
52
63
|
`@swc/helper`在升级到0.5.0之后有一些兼容性问题,一些老工程(如node14+webpack4)构建会失败。
|
|
53
64
|
|
|
@@ -61,9 +72,9 @@ conssole.log(parseDate('2023-02-14', 'yyyy-MM-dd'));
|
|
|
61
72
|
* `@swc/helper`写死`^0.5.0`(部分构建产物:`import { _ as _instanceof } from "@swc/helpers/_/_instanceof"`);
|
|
62
73
|
* `@ice/pkg`写死`^1.5.5`;
|
|
63
74
|
|
|
64
|
-
|
|
75
|
+
#### 脚手架来源
|
|
65
76
|
|
|
66
|
-
|
|
77
|
+
~~仓库脚手架来源~~:
|
|
67
78
|
|
|
68
79
|
```bash
|
|
69
80
|
npm install -g cnpm --registry=https://registry.npmmirror.com
|
package/dist/index.cjs
CHANGED
|
@@ -1,4 +1,10 @@
|
|
|
1
|
-
var
|
|
1
|
+
var C=Object.defineProperty,ne=Object.defineProperties,re=Object.getOwnPropertyDescriptor,oe=Object.getOwnPropertyDescriptors,se=Object.getOwnPropertyNames,U=Object.getOwnPropertySymbols;var J=Object.prototype.hasOwnProperty,ie=Object.prototype.propertyIsEnumerable;var N=(e,t,n)=>t in e?C(e,t,{enumerable:!0,configurable:!0,writable:!0,value:n}):e[t]=n,w=(e,t)=>{for(var n in t||(t={}))J.call(t,n)&&N(e,n,t[n]);if(U)for(var n of U(t))ie.call(t,n)&&N(e,n,t[n]);return e},E=(e,t)=>ne(e,oe(t));var ae=(e,t)=>{for(var n in t)C(e,n,{get:t[n],enumerable:!0})},ce=(e,t,n,o)=>{if(t&&typeof t=="object"||typeof t=="function")for(let r of se(t))!J.call(e,r)&&r!==n&&C(e,r,{get:()=>t[r],enumerable:!(o=re(t,r))||o.enumerable});return e};var le=e=>ce(C({},"__esModule",{value:!0}),e);var Pe={};ae(Pe,{Request:()=>qe,calculate:()=>v,configMock:()=>Q,copyToClipboard:()=>$e,createEnum:()=>pe,decodeHtml:()=>X,deepCopy:()=>we,delCookie:()=>ge,delParam:()=>ve,encodeHtml:()=>V,formatDate:()=>Ie,formatDuration:()=>Ee,formatJson:()=>me,formatNumber:()=>ye,formatPercent:()=>he,getCookie:()=>ue,getIdCardLastChar:()=>Y,getMonthDays:()=>Te,getParam:()=>D,getParamInt:()=>Re,getParams:()=>L,getRandom:()=>te,getRandomStr:()=>je,hideLoading:()=>T,initBigJs:()=>de,initWindowMessage:()=>xe,isLeapYear:()=>Z,keyCodes:()=>Me,mockRequest:()=>z,openNewTab:()=>Fe,parseDate:()=>Ce,request:()=>I,resetMock:()=>G,setCookie:()=>A,setParam:()=>Oe,showLoading:()=>be,sleep:()=>F,toFixed:()=>fe,toHump:()=>Le,toUnderline:()=>De,toUrlParams:()=>S,validateIdCard:()=>ke});module.exports=le(Pe);var ue=e=>{let t=new RegExp(`(^|;| )${encodeURIComponent(e)}=([^;]*)(;|$)`,"g").exec(document.cookie);return decodeURIComponent((t==null?void 0:t[2])||"")},A=(e,t,n)=>{let{days:o,path:r,domain:s,secure:i,sameSite:c}=Object.assign({days:30,path:"/"},n||{}),p=`${encodeURIComponent(e)}=${encodeURIComponent(t)}`;o&&(p+=`; expires=${new Date(Date.now()+o*24*3600*1e3).toUTCString()}`),r&&(p+=`; path=${r}`),s&&(p+=`; domain=${s}`),i&&(p+="; secure"),c&&(p+=`; sameSite=${c}`),document.cookie=p},ge=(e,t,n)=>{A(e,null,{days:-1,path:t,domain:n})};function pe(e){let t=[...e],n={},o={};return e.forEach(r=>{n[r.value]=r,o[r.label]=r,r.key&&(n[r.key]=r,typeof r.key=="number"?console.error("createEnum\u4E2D\u7684key\u4E0D\u80FD\u4E3A\u7EAF\u6570\u5B57"):t[r.key]=r.value)}),t.pick=r=>n[r],t.pickLabel=r=>{var s;return(s=t.pick(r))==null?void 0:s.label},t.pickValue=r=>{var s;return(s=t.pick(r))==null?void 0:s.value},t.pickKey=r=>{var s;return(s=t.pick(r))==null?void 0:s.key},t.pickByLabel=r=>o[r],t}var j=null,de=e=>{j=e},K=()=>{if(j||window.Big)return j||window.Big;throw new Error(`big.js\u672A\u521D\u59CB\u5316\uFF0C\u60A8\u53EF\u4EE5\uFF1A
|
|
2
|
+
1. \u901A\u8FC7npm\u521D\u59CB\u5316\uFF1Aimport Big from 'big.js'; initBigJs(Big);
|
|
3
|
+
1. \u901A\u8FC7CDN\u521D\u59CB\u5316\uFF1Ahttps://cdn.jsdelivr.net/npm/big.js/big.min.js`)},v=(e,t)=>{let n=K(),[o,r,s]=e.split(/(\+|-|\*|\/)/g);if(!r||!s)throw new Error("\u8F93\u5165\u5B57\u7B26\u4E32\u4E0D\u5408\u6CD5\uFF01");let i={"+":"plus","-":"minus","*":"times","/":"div"}[r];if(!i)throw new Error("op\u4E0D\u5408\u6CD5\uFF01");let c=new n(o)[i](s);return t===void 0?c.toString():c.toFixed(t)},fe=(e,t)=>{let n=K();return new n(e).toFixed(t).toString()};var me=(json,indent,leftBracesInSameLine)=>{function getIndentStr(e){let t="";for(let n=0;n<e;n++)t+=indent||" ";return t}function format(e,t){t=t===void 0?0:t;let n="";if(typeof e=="object"&&e!=null){let o=e instanceof Array,r=0;n+=`${o?"[":"{"}
|
|
4
|
+
`;for(let s in e){n+=r++>0?`,
|
|
5
|
+
`:"";let i=typeof e[s]=="object"&&e[s]!=null,c=getIndentStr(t+1);n+=o&&i?"":c,n+=o?"":`"${s}": ${i&&!leftBracesInSameLine?`
|
|
6
|
+
`:""}`,n+=!i||i&&leftBracesInSameLine&&!o?"":c,n+=format(e[s],t+1)}n+=`
|
|
7
|
+
${getIndentStr(t)}${o?"]":"}"}`}else{let o=typeof e=="string"?'"':"";n+=`${o}${e}${o}`}return n}return format(eval(`(${json})`))},ye=e=>e?isNaN(e)?(console.error(`${e} is not a number.`),e):(e=parseFloat(e),e<1e4?e:e<1e4*1e4?`${v(`${e}/10000`,e<1e5?1:0)}\u4E07`:`${v(`${e}/100000000`,e<1e9?1:0)}\u4EBF`):"",he=(e,t=2)=>e?isNaN(e)?(console.error(`${e} is not a number.`),e):`${v(`${e}*100`,t)}%`:"";var be=(e="\u8BF7\u7A0D\u5019",t=10,n={})=>{n=Object.assign({},{hasMask:!1,maskColor:"#00000070",onCancel:null,cancelInline:!1,id:"com_global_page_loading"},n);let{id:r,hasMask:s,maskColor:i,onCancel:c,cancelInline:p}=n,h=`_${r}_timeout`;window[h]&&clearTimeout(window[h]);let g=document.getElementById(r);g||(g=document.createElement("div"),g.id=r,g.className=r,document.body.append(g));let l=`${r}_style`;if(!document.getElementById(l)){let u=document.createElement("style");u.id=l,u.innerHTML=`
|
|
2
8
|
.${r} {
|
|
3
9
|
position: fixed;
|
|
4
10
|
left: 0;
|
|
@@ -40,16 +46,12 @@ var v=Object.defineProperty,K=Object.defineProperties,V=Object.getOwnPropertyDes
|
|
|
40
46
|
}
|
|
41
47
|
.${r} .loading-wrapper a {
|
|
42
48
|
color: #6ab2ff;
|
|
43
|
-
}`,document.head.appendChild(
|
|
49
|
+
}`,document.head.appendChild(u)}if(g.innerHTML=`
|
|
44
50
|
<div class="loading-wrapper">
|
|
45
51
|
<img src="https://img.alicdn.com/tfs/TB1bnUsQBLoK1RjSZFuXXXn0XXa-32-32.svg" alt="\u52A0\u8F7D\u4E2D">
|
|
46
52
|
<div>
|
|
47
53
|
<span>${e}</span>
|
|
48
|
-
${
|
|
49
|
-
${
|
|
54
|
+
${p?"":"<br />"}
|
|
55
|
+
${c?'<a href="javascript:;" class="cancel">\u53D6\u6D88</a>':""}
|
|
50
56
|
</div>
|
|
51
|
-
</div>`,g){let c=u.querySelector(".cancel");c&&c.addEventListener("click",()=>{M(),g()})}u.addEventListener("click",()=>{M()}),u.style.display="flex",u.style.background=s?l:"transparent",u.className=`${r} ${s?"show-mask":""}`,n>0&&(window[w]=setTimeout(()=>{M()},n*1e3))},M=()=>{let n=document.getElementById("com_global_page_loading");n&&(n.style.display="none")};function ee(e,n){!n&&window!==window.parent&&(n=window.parent),!n&&window.opener&&(n=window.opener);let t=new Map,o=new Map,r=()=>Math.random().toString(36).substring(2),s={},l="_local_function_";function g(a){let c=`${l}${r()}`;return s[c]=a,c}let d=(a,c)=>(a==null?void 0:a.map(p=>{if(typeof p=="object")for(let k in p)p[k]=c(p[k]);return c(p)}))||[];function w(a,...c){if(!n){console.warn("TargetWindow is null.");return}return new Promise((p,k)=>{let m=r();t.set(m,{resolve:p,reject:k}),n.postMessage({scene:e,type:"event",eventName:a,payload:d(c,h=>typeof h=="function"?g(h):h),callbackId:m},"*")})}window.addEventListener("message",async a=>{if(!a.data||a.data.scene!==e)return;n=a.source;let{type:c,eventName:p,payload:k,callbackId:m}=a.data;if(c==="event"){let h=d(k,y=>{if(typeof y=="string"&&y.startsWith(l)){let f=`getFn_${y}`;return(...x)=>w("executeLocalFunction",f,...x)}return y}),b=o.get(p)||[],R=o.get("*")||[];try{let y=await Promise.all(b.map(x=>Promise.resolve(x(...h)))),f=await Promise.all(R.map(x=>Promise.resolve(x(p,...h))));if(m){let x=y[y.length-1]||f[f.length-1];if(!b.length&&!x)return;n.postMessage({scene:e,type:"callback",callbackId:m,payload:x},"*")}}catch(y){console.error(y),m&&n.postMessage({scene:e,type:"callback",callbackId:m,error:y||"unknown error"},"*")}}else if(c==="callback"&&m){let h=t.get(m);h&&(a.data.error?h.reject(a.data.error):h.resolve(a.data.payload),t.delete(m))}});function u(a,c){o.has(a)||o.set(a,[]),o.get(a).push(c)}return u("executeLocalFunction",(a,...c)=>{if(a=(a==null?void 0:a.replace("getFn_",""))||"",!s[a])throw new Error(`\u672A\u627E\u5230\u672C\u5730\u7F13\u5B58\u65B9\u6CD5\uFF1A${a}`);return s[a](...c)}),w("auto-connect"),{postMessage:w,onMessage:u}}var ne=e=>!e||typeof e!="object"?e:JSON.parse(JSON.stringify(e)),P=e=>{if(typeof e=="string"){let n=document.createElement("div");return n.innerText=e,n.innerHTML}else if(typeof e=="object"&&e)for(let n in e)e[n]=P(e[n]);return e},_=e=>{if(typeof e=="string"){let n=document.createElement("div");return n.innerHTML=e,n.innerText}else if(typeof e=="object"&&e)for(let n in e)e[n]=_(e[n]);return e},te=(e,n,t)=>{if(!e)throw new Error("text can not be empty.");return n=n||(o=>console.error(`\u590D\u5236\u5230\u526A\u8D34\u677F\u5931\u8D25\uFF1A${o||""}`)),navigator.clipboard&&!t?navigator.clipboard.writeText(e).catch(o=>{throw n(o.message),o}):new Promise((o,r)=>{let s=document.createElement("input");s.value=e,s.style.cssText="position:fixed;left:0;top:0;opacity:0;",document.body.appendChild(s),s.select();try{if(document.execCommand("copy"))o();else{let l="Failed to execute 'document.execCommand'.";n(l),r(new Error(l))}}catch(l){n(l.message),r(l)}finally{document.body.removeChild(s)}})},F=e=>{if(!e||e.length<17)throw new Error("\u4F20\u5165\u7684\u8EAB\u4EFD\u8BC1\u53F7\u957F\u5EA6\u5FC5\u987B>=17");let n=[7,9,10,5,8,4,2,1,6,3,7,9,10,5,8,4,2],t=["1","0","X","9","8","7","6","5","4","3","2"],o=0;for(let r=0;r<17;r++)o+=parseInt(e.charAt(r),10)*n[r];return t[o%11]},re=e=>!e||e.length!==18?(console.error("\u8EAB\u4EFD\u8BC1\u53F7\u4E0D\u662F18\u4F4D\uFF01"),!1):`${F(e)}`===e.charAt(17),oe=(()=>{let e={backspace:8,tab:9,clear:12,enter:13,shift:16,ctrl:17,alt:18,esc:27,space:32,pageup:33,pagedown:34,end:35,home:36,left:37,up:38,right:39,down:40,insert:45,delete:46};for(let n=48;n<=57;n++)e[String.fromCharCode(n)]=n;for(let n=65;n<=90;n++)e[String.fromCharCode(n).toLowerCase()]=n;for(let n=96;n<=105;n++)e[`num${n-96}`]=n;for(let n=112;n<=123;n++)e[`f${n-111}`]=n;return e})();var C=(e,n=location.search)=>(new RegExp(`(^|\\?|&)${e}=(.*?)(?=&|#|$)`,"g").exec(n)||[])[2],se=(e,n=location.search)=>parseInt(C(e,n)||"0",10),ie=(e=location.search)=>{let n=((e||"").split("?").pop()||"").split("#")[0]||"",t={};return n.split("&").map(o=>o.split("=")).forEach(([o,r])=>{t[o]=r||""}),t},ae=(e,n,t)=>{if(t=t||`${location.pathname}${location.search}`,C(e,t)!==void 0)return t.replace(new RegExp(`(^|\\?|&)${e}=(.*?)(?=&|#|$)`,"g"),`$1${e}=${n}`);let[o,r]=t.split("#");return`${o}${o.indexOf("?")<0?"?":"&"}${e}=${n}${r?"#":""}${r||""}`},ce=(e,n)=>(n=n||`${location.pathname}${location.search}`,n.replace(new RegExp(`(^|\\?|&)${e}=.*?(&|#|$)`,"g"),(t,o,r)=>r==="&"?o:r)),T=e=>Object.keys(e||{}).filter(n=>e[n]!==void 0).map(n=>{let t=typeof e[n]=="object"?JSON.stringify(e[n]):e[n];return`${encodeURIComponent(n)}=${encodeURIComponent(t)}`}).join("&");var E=(e,n)=>{let t=Object.assign({},(e==null?void 0:e.headers)||{},(n==null?void 0:n.headers)||{}),o=Object.assign({},(e==null?void 0:e.fetchOptions)||{},(n==null?void 0:n.fetchOptions)||{});return Object.assign({},e||{},n||{},{headers:t,fetchOptions:o})},S=class extends Error{constructor(n,t){super(n),Object.assign(this,t||{})}},I=async(e,n)=>{var x,D;n=E({errorMessage:"\u7CFB\u7EDF\u7E41\u5FD9\uFF0C\u8BF7\u7A0D\u540E\u518D\u8BD5",errorHandler:i=>{var $;throw!(n!=null&&n.silent)&&i&&(($=n==null?void 0:n.toastHandler)==null||$.call(n,i)),new Error(i)},baseUrl:"",headers:{},fetchOptions:{credentials:"include"},checkSuccess:i=>(i==null?void 0:i.code)==0||(i==null?void 0:i.code)==200,toastHandler:i=>console.error(`[\u60A8\u8FD8\u6CA1\u6709\u914D\u7F6EtoastHandler\uFF0C\u8BF7\u6839\u636E\u60A8\u7684UI\u7EC4\u4EF6\u5E93\u914D\u7F6E\u5408\u9002\u7684\u63D0\u793A\u65B9\u6CD5] ${i||""}`),onFetchResponse:i=>{if(i.status===200)return i.json();throw new S(i.statusText,{response:H(O({},i),{code:i.status,message:i.statusText,isHttpResponse:!0})})}},n);let{params:o,data:r,formData:s,json:l,method:g,headers:d,baseUrl:w,fetchOptions:u,checkSuccess:a,afterRequest:c,errorHandler:p,errorMessage:k,responseConverter:m,onFetchResponse:h,setLoading:b,overrideMessage:R}=n||{},y=(n==null?void 0:n.defaultErrorMessage)||k;if(u.headers=O(O({},d||{}),u.headers||{}),o&&(u.method=g||"GET",e=`${e}${e.indexOf("?")>=0?"&":"?"}${T(o)}`),r)Object.assign(u,{method:g||"POST",body:T(r),headers:O({"Content-Type":"application/x-www-form-urlencoded;charset=utf-8"},u.headers||{})});else if(s){let i=s;if(!(s instanceof FormData)){i=new FormData;for(let $ in s)i.append($,s[$])}Object.assign(u,{method:g||"POST",body:i})}else l&&Object.assign(u,{method:g||"POST",body:JSON.stringify(l),headers:O({"Content-Type":"application/json;charset=utf-8"},u.headers||{})});let f=null;b==null||b(!0);try{let i=`${/^(http|\/\/)/g.test(e)?"":w||""}${e}`;i.indexOf("//")===0&&location.protocol==="blob:"&&(i=`${(x=location.pathname.split(":"))==null?void 0:x[0]}:${i}`),f=await fetch(i,u).then(h)}catch(i){console.error(i),b==null||b(!1),c==null||c(!1,i.response);let $=typeof R=="function"?R(i.response):R;p==null||p($!=null?$:((D=i.response)==null?void 0:D.message)||y,i.response,n);return}if(b==null||b(!1),f=m?m(f):f,a!=null&&a(f))return c==null||c(!0,f),f.data;{c==null||c(!1,f);let i=typeof R=="function"?R(f):R;p==null||p(i!=null?i:f.message||y,f,n);return}},U=function(e){let n=E(this.overrideDefaultOptions,e),t=(o,r)=>I(o,E(n,r));return t.overrideDefaultOptions=n,t.create=U.bind(t),t};I.create=U.bind(I);var le=function(e,n){let t=n;return n||(t=e,e=I),(o,r)=>e(o,O(O({},t||{}),r||{}))};var ue=(e,n)=>{if(!e)return"";if(typeof e=="number")e=new Date(e);else if(typeof e=="string")if(/^\d{12,13}$/g.test(e))e=new Date(parseInt(e,10));else if(/^.{10}T.{8,12}Z?$/g.test(e)||/^\d{4}-\d{2}-\d{2} \d{2}:\d{2}:\d{2}$/g.test(e))e=new Date(e);else return e;if(!(e instanceof Date))throw new Error("formatDate error: not date.");if(isNaN(e==null?void 0:e.getFullYear()))throw new Error("formatDate error: invalid date.");n=n||"yyyy-MM-dd HH:mm:ss";let t={y:e.getFullYear(),M:e.getMonth()+1,d:e.getDate(),q:Math.floor((e.getMonth()+3)/3),w:e.getDay(),H:e.getHours(),h:e.getHours()%12===0?12:e.getHours()%12,m:e.getMinutes(),s:e.getSeconds(),S:e.getMilliseconds()},o=["\u5929","\u4E00","\u4E8C","\u4E09","\u56DB","\u4E94","\u516D"];for(let r in t)n=n.replace(new RegExp(`${r}+`,"g"),s=>{let l=`${t[r]}`;if(r==="w")return`${s.length>2?"\u661F\u671F":"\u5468"}${o[l]}`;for(let g=0,d=l.length;g<s.length-d;g++)l=`0${l}`;return s.length===1?l:l.substring(l.length-s.length)});return n},ge=(e,n)=>{n=n||"yyyy-MM-dd";let t={y:0,M:1,d:0,H:0,h:0,m:0,s:0,S:0};n.replace(/([^yMdHmsS]*?)(([yMdHmsS])\3*)([^yMdHmsS]*?)/g,(r,s,l,g,d)=>(e=e.replace(new RegExp(`${s}(\\d{${l.length}})${d}`),(w,u)=>(t[g]=parseInt(u,10),"")),"")),t.M--;let o=new Date(t.y,t.M,t.d,t.H,t.m,t.s);return t.S!==0&&o.setMilliseconds(t.S),o},de=e=>new Promise(n=>setTimeout(n,e||0)),pe=(e,n="d:hh:mm:ss")=>{let t={d:Math.floor(e/86400),h:Math.floor(e%86400/3600),m:Math.floor(e%3600/60),s:e%60};t.h===0?n=n.replace(/^[^m]+/g,""):t.d===0&&(n=n.replace(/^[^h]+/g,""));for(let o in t)n=n.replace(new RegExp(`${o}+`,"g"),r=>{let s=`${t[o]}`;return r.length>1?s.padStart(r.length,"0"):s});return n},B=e=>(e===void 0&&(e=new Date),e instanceof Date&&(e=e.getFullYear()),e%4===0&&e%100!==0||e%400===0),fe=(e,n)=>{let t=n-1;e=e||new Date,e instanceof Date&&(n=e.getMonth(),e=e.getFullYear());let o=[31,28,31,30,31,30,31,31,30,31,30,31];return t===1&&B(e)?o[t]+1:o[t]};var me=(json,indent,leftBracesInSameLine)=>{function getIndentStr(e){let n="";for(let t=0;t<e;t++)n+=indent||" ";return n}function format(e,n){n=n===void 0?0:n;let t="";if(typeof e=="object"&&e!=null){let o=e instanceof Array,r=0;t+=`${o?"[":"{"}
|
|
52
|
-
`;for(let s in e){t+=r++>0?`,
|
|
53
|
-
`:"";let l=typeof e[s]=="object"&&e[s]!=null,g=getIndentStr(n+1);t+=o&&l?"":g,t+=o?"":`"${s}": ${l&&!leftBracesInSameLine?`
|
|
54
|
-
`:""}`,t+=!l||l&&leftBracesInSameLine&&!o?"":g,t+=format(e[s],n+1)}t+=`
|
|
55
|
-
${getIndentStr(n)}${o?"]":"}"}`}else{let o=typeof e=="string"?'"':"";t+=`${o}${e}${o}`}return t}return format(eval(`(${json})`))},N=(e,n)=>typeof e=="number"?(typeof n=="undefined"&&(n=e,e=0),e+Math.floor(Math.random()*(n-e))):e instanceof Array?typeof n=="undefined"?e.length===0?null:e.length===1?e[0]:e[Math.floor(Math.random()*e.length)]:(e.sort(()=>Math.random()>.5?1:-1),e.slice(0,n)):Math.random(),ye=(e,n)=>{e=e||18;let t="ABCDEFGHIJKLMNOPQRSTUVWXYZ_abcdefghijklmnopqrstuvwxyz0123456789".split("");n==="number"&&(t="0123456789".split(""));let o="";for(let r=0;r<e;r++)o+=N(t);return o},he=(e,n)=>e.replace(/([A-Z])/g,(t,o)=>`${n||"_"}${o.toLowerCase()}`),be=(e,n)=>e.replace(new RegExp(`${n||"_"}(\\w)`,"g"),(t,o)=>o.toUpperCase());var xe=e=>{let n=document.createElement("a");n.href=e,n.target="_blank",n.click()};var we=e=>{let n=new RegExp(`(^|;| )${encodeURIComponent(e)}=([^;]*)(;|$)`,"g").exec(document.cookie);return decodeURIComponent((n==null?void 0:n[2])||"")},A=(e,n,t)=>{let{days:o,path:r,domain:s,secure:l,sameSite:g}=Object.assign({days:30,path:"/"},t||{}),d=`${encodeURIComponent(e)}=${encodeURIComponent(n)}`;o&&(d+=`; expires=${new Date(Date.now()+o*24*3600*1e3).toUTCString()}`),r&&(d+=`; path=${r}`),s&&(d+=`; domain=${s}`),l&&(d+="; secure"),g&&(d+=`; sameSite=${g}`),document.cookie=d},$e=(e,n,t)=>{A(e,null,{days:-1,path:n,domain:t})};0&&(module.exports={Request,copyToClipboard,createEnum,decodeHtml,deepCopy,delCookie,delParam,encodeHtml,formatDate,formatDuration,formatJson,getCookie,getIdCardLastChar,getMonthDays,getParam,getParamInt,getParams,getRandom,getRandomStr,hideLoading,initWindowMessage,isLeapYear,keyCodes,openNewTab,parseDate,request,setCookie,setParam,showLoading,sleep,toHump,toUnderline,toUrlParams,validateIdCard});
|
|
57
|
+
</div>`,c){let u=g.querySelector(".cancel");u&&u.addEventListener("click",()=>{T(),c()})}g.addEventListener("click",()=>{T()}),g.style.display="flex",g.style.background=s?i:"transparent",g.className=`${r} ${s?"show-mask":""}`,t>0&&(window[h]=setTimeout(()=>{T()},t*1e3))},T=()=>{let t=document.getElementById("com_global_page_loading");t&&(t.style.display="none")};function xe(e,t){!t&&window!==window.parent&&(t=window.parent),!t&&window.opener&&(t=window.opener);let n=new Map,o=new Map,r=()=>Math.random().toString(36).substring(2),s={},i="_local_function_";function c(l){let u=`${i}${r()}`;return s[u]=l,u}let p=(l,u)=>(l==null?void 0:l.map(f=>{if(typeof f=="object")for(let k in f)f[k]=u(f[k]);return u(f)}))||[];function h(l,...u){if(!t){console.warn("TargetWindow is null.");return}return new Promise((f,k)=>{let m=r();n.set(m,{resolve:f,reject:k}),t.postMessage({scene:e,type:"event",eventName:l,payload:p(u,b=>typeof b=="function"?c(b):b),callbackId:m},"*")})}window.addEventListener("message",async l=>{if(!l.data||l.data.scene!==e)return;t=l.source;let{type:u,eventName:f,payload:k,callbackId:m}=l.data;if(u==="event"){let b=p(k,y=>{if(typeof y=="string"&&y.startsWith(i)){let R=`getFn_${y}`;return(...d)=>h("executeLocalFunction",R,...d)}return y}),x=o.get(f)||[],M=o.get("*")||[];try{let y=await Promise.all(x.map(d=>Promise.resolve(d(...b)))),R=await Promise.all(M.map(d=>Promise.resolve(d(f,...b))));if(m){let d=y[y.length-1]||R[R.length-1];if(!x.length&&!d)return;t.postMessage({scene:e,type:"callback",callbackId:m,payload:d},"*")}}catch(y){console.error(y),m&&t.postMessage({scene:e,type:"callback",callbackId:m,error:y||"unknown error"},"*")}}else if(u==="callback"&&m){let b=n.get(m);b&&(l.data.error?b.reject(l.data.error):b.resolve(l.data.payload),n.delete(m))}});function g(l,u){o.has(l)||o.set(l,[]),o.get(l).push(u)}return g("executeLocalFunction",(l,...u)=>{if(l=(l==null?void 0:l.replace("getFn_",""))||"",!s[l])throw new Error(`\u672A\u627E\u5230\u672C\u5730\u7F13\u5B58\u65B9\u6CD5\uFF1A${l}`);return s[l](...u)}),h("auto-connect"),{postMessage:h,onMessage:g}}var we=e=>!e||typeof e!="object"?e:JSON.parse(JSON.stringify(e)),V=e=>{if(typeof e=="string"){let t=document.createElement("div");return t.innerText=e,t.innerHTML}else if(typeof e=="object"&&e)for(let t in e)e[t]=V(e[t]);return e},X=e=>{if(typeof e=="string"){let t=document.createElement("div");return t.innerHTML=e,t.innerText}else if(typeof e=="object"&&e)for(let t in e)e[t]=X(e[t]);return e},$e=(e,t,n)=>{if(!e)throw new Error("text can not be empty.");return t=t||(o=>console.error(`\u590D\u5236\u5230\u526A\u8D34\u677F\u5931\u8D25\uFF1A${o||""}`)),navigator.clipboard&&!n?navigator.clipboard.writeText(e).catch(o=>{throw t(o.message),o}):new Promise((o,r)=>{let s=document.createElement("input");s.value=e,s.style.cssText="position:fixed;left:0;top:0;opacity:0;",document.body.appendChild(s),s.select();try{if(document.execCommand("copy"))o();else{let i="Failed to execute 'document.execCommand'.";t(i),r(new Error(i))}}catch(i){t(i.message),r(i)}finally{document.body.removeChild(s)}})},Y=e=>{if(!e||e.length<17)throw new Error("\u4F20\u5165\u7684\u8EAB\u4EFD\u8BC1\u53F7\u957F\u5EA6\u5FC5\u987B>=17");let t=[7,9,10,5,8,4,2,1,6,3,7,9,10,5,8,4,2],n=["1","0","X","9","8","7","6","5","4","3","2"],o=0;for(let r=0;r<17;r++)o+=parseInt(e.charAt(r),10)*t[r];return n[o%11]},ke=e=>!e||e.length!==18?(console.error("\u8EAB\u4EFD\u8BC1\u53F7\u4E0D\u662F18\u4F4D\uFF01"),!1):`${Y(e)}`===e.charAt(17),Me=(()=>{let e={backspace:8,tab:9,clear:12,enter:13,shift:16,ctrl:17,alt:18,esc:27,space:32,pageup:33,pagedown:34,end:35,home:36,left:37,up:38,right:39,down:40,insert:45,delete:46};for(let t=48;t<=57;t++)e[String.fromCharCode(t)]=t;for(let t=65;t<=90;t++)e[String.fromCharCode(t).toLowerCase()]=t;for(let t=96;t<=105;t++)e[`num${t-96}`]=t;for(let t=112;t<=123;t++)e[`f${t-111}`]=t;return e})();var D=(e,t=location.search)=>(new RegExp(`(^|\\?|&)${e}=(.*?)(?=&|#|$)`,"g").exec(t)||[])[2],Re=(e,t=location.search)=>parseInt(D(e,t)||"0",10),L=(e=location.search)=>{let t=((e||"").split("?").pop()||"").split("#")[0]||"",n={};return t.split("&").map(o=>o.split("=")).forEach(([o,r])=>{n[o]=r||""}),n},Oe=(e,t,n)=>{if(n=n||`${location.pathname}${location.search}`,D(e,n)!==void 0)return n.replace(new RegExp(`(^|\\?|&)${e}=(.*?)(?=&|#|$)`,"g"),`$1${e}=${t}`);let[o,r]=n.split("#");return`${o}${o.indexOf("?")<0?"?":"&"}${e}=${t}${r?"#":""}${r||""}`},ve=(e,t)=>(t=t||`${location.pathname}${location.search}`,t.replace(new RegExp(`(^|\\?|&)${e}=.*?(&|#|$)`,"g"),(n,o,r)=>r==="&"?o:r)),S=e=>Object.keys(e||{}).filter(t=>e[t]!==void 0).map(t=>{let n=typeof e[t]=="object"?JSON.stringify(e[t]):e[t];return`${encodeURIComponent(t)}=${encodeURIComponent(n)}`}).join("&");var Ie=(e,t)=>{if(!e)return"";if(typeof e=="number")e=new Date(e);else if(typeof e=="string")if(/^\d{12,13}$/g.test(e))e=new Date(parseInt(e,10));else if(/^.{10}T.{8,12}Z?$/g.test(e)||/^\d{4}-\d{2}-\d{2} \d{2}:\d{2}:\d{2}$/g.test(e))e=new Date(e);else return e;if(!(e instanceof Date))throw new Error("formatDate error: not date.");if(isNaN(e==null?void 0:e.getFullYear()))throw new Error("formatDate error: invalid date.");t=t||"yyyy-MM-dd HH:mm:ss";let n={y:e.getFullYear(),M:e.getMonth()+1,d:e.getDate(),q:Math.floor((e.getMonth()+3)/3),w:e.getDay(),H:e.getHours(),h:e.getHours()%12===0?12:e.getHours()%12,m:e.getMinutes(),s:e.getSeconds(),S:e.getMilliseconds()},o=["\u5929","\u4E00","\u4E8C","\u4E09","\u56DB","\u4E94","\u516D"];for(let r in n)t=t.replace(new RegExp(`${r}+`,"g"),s=>{let i=`${n[r]}`;if(r==="w")return`${s.length>2?"\u661F\u671F":"\u5468"}${o[i]}`;for(let c=0,p=i.length;c<s.length-p;c++)i=`0${i}`;return s.length===1?i:i.substring(i.length-s.length)});return t},Ce=(e,t)=>{t=t||"yyyy-MM-dd";let n={y:0,M:1,d:0,H:0,h:0,m:0,s:0,S:0};t.replace(/([^yMdHmsS]*?)(([yMdHmsS])\3*)([^yMdHmsS]*?)/g,(r,s,i,c,p)=>(e=e.replace(new RegExp(`${s}(\\d{${i.length}})${p}`),(h,g)=>(n[c]=parseInt(g,10),"")),"")),n.M--;let o=new Date(n.y,n.M,n.d,n.H,n.m,n.s);return n.S!==0&&o.setMilliseconds(n.S),o},F=e=>new Promise(t=>setTimeout(t,e||0)),Ee=(e,t="d:hh:mm:ss")=>{let n={d:Math.floor(e/86400),h:Math.floor(e%86400/3600),m:Math.floor(e%3600/60),s:e%60};n.h===0?t=t.replace(/^[^m]+/g,""):n.d===0&&(t=t.replace(/^[^h]+/g,""));for(let o in n)t=t.replace(new RegExp(`${o}+`,"g"),r=>{let s=`${n[o]}`;return r.length>1?s.padStart(r.length,"0"):s});return t},Z=e=>(e===void 0&&(e=new Date),e instanceof Date&&(e=e.getFullYear()),e%4===0&&e%100!==0||e%400===0),Te=(e,t)=>{let n=t-1;e=e||new Date,e instanceof Date&&(t=e.getMonth(),e=e.getFullYear());let o=[31,28,31,30,31,30,31,31,30,31,30,31];return n===1&&Z(e)?o[n]+1:o[n]};var O=[],q={timeout:"200-400",debug:!0,overrideMode:!0},z=(e,t)=>{if(!t)throw new Error("\u7B2C\u4E8C\u4E2A\u53C2\u6570\u4E0D\u80FD\u4E3A\u7A7A\uFF01");let n=t;n instanceof Function||(n=()=>t),O.push({url:e,cb:n})},G=()=>{O=[]},Q=e=>{Object.assign(q,e||{})},Se=e=>{var s,i;let t=(e.method||"get").toLowerCase(),{url:n,body:o}=e,r={};if(t==="get")(n.split("?")[1]||"").split("&").map(c=>c.split("=")).forEach(([c,p])=>{r[c]=decodeURIComponent(p)});else if(t==="post")try{let c=((s=e.headers)==null?void 0:s["Content-Type"])||((i=e.headers)==null?void 0:i["content-type"]);(c==null?void 0:c.indexOf("json"))>0?r=JSON.parse(o||"{}"):r=L(`?${o||""}`)}catch(c){console.error(c)}return r},W=async(e,t)=>{var r;if(!(O!=null&&O.length))return;let n=E(w({url:e},t),{params:{}});n.params=Se(n);let o=q.overrideMode?O.reverse():O;for(let s of o)if((e==null?void 0:e.indexOf(s.url))>=0){let i=q.timeout||0;if(typeof i=="string"){let p=i.split("-").map(h=>parseInt(h,10));i=p[0]+Math.round(Math.random()*(p[1]-p[0]))}await F(i);let c=await((r=s.cb)==null?void 0:r.call(s,n));if(q.debug&&(console.log(`\u547D\u4E2Dmock\u89C4\u5219\uFF1A${s.url}`),console.log("mock\u5165\u53C2\uFF1A",n),console.log("mock\u51FA\u53C2\uFF1A",c)),c)return c}};var P=(e,t)=>{let n=Object.assign({},(e==null?void 0:e.headers)||{},(t==null?void 0:t.headers)||{}),o=Object.assign({},(e==null?void 0:e.fetchOptions)||{},(t==null?void 0:t.fetchOptions)||{});return Object.assign({},e||{},t||{},{headers:n,fetchOptions:o})},H=class extends Error{constructor(t,n){super(t),Object.assign(this,n||{})}},I=async(e,t)=>{var _,B;t=P({errorMessage:"\u7CFB\u7EDF\u7E41\u5FD9\uFF0C\u8BF7\u7A0D\u540E\u518D\u8BD5",errorHandler:a=>{var $;throw!(t!=null&&t.silent)&&a&&(($=t==null?void 0:t.toastHandler)==null||$.call(t,a)),new Error(a)},baseUrl:"",headers:{},fetchOptions:{credentials:"include"},checkSuccess:a=>(a==null?void 0:a.code)==0||(a==null?void 0:a.code)==200,toastHandler:a=>console.error(`[\u60A8\u8FD8\u6CA1\u6709\u914D\u7F6EtoastHandler\uFF0C\u8BF7\u6839\u636E\u60A8\u7684UI\u7EC4\u4EF6\u5E93\u914D\u7F6E\u5408\u9002\u7684\u63D0\u793A\u65B9\u6CD5] ${a||""}`),onFetchResponse:a=>{if(a.status===200)return a.json();throw new H(a.statusText,{response:E(w({},a),{code:a.status,message:a.statusText,isHttpResponse:!0})})}},t);let{params:o,data:r,formData:s,json:i,method:c,headers:p,baseUrl:h,fetchOptions:g,checkSuccess:l,afterRequest:u,errorHandler:f,errorMessage:k,responseConverter:m,onFetchResponse:b,setLoading:x,overrideMessage:M,signal:y}=t||{},R=(t==null?void 0:t.defaultErrorMessage)||k;if(g.headers=w(w({},p||{}),g.headers||{}),!g.signal&&y&&(g.signal=y),o&&(g.method=c||"GET",e=`${e}${e.indexOf("?")>=0?"&":"?"}${S(o)}`),r)Object.assign(g,{method:c||"POST",body:S(r),headers:w({"Content-Type":"application/x-www-form-urlencoded;charset=utf-8"},g.headers||{})});else if(s){let a=s;if(!(s instanceof FormData)){a=new FormData;for(let $ in s)a.append($,s[$])}Object.assign(g,{method:c||"POST",body:a})}else i&&Object.assign(g,{method:c||"POST",body:JSON.stringify(i),headers:w({"Content-Type":"application/json;charset=utf-8"},g.headers||{})});let d=null;x==null||x(!0);try{let a=`${/^(http|\/\/)/g.test(e)?"":h||""}${e}`;a.indexOf("//")===0&&location.protocol==="blob:"&&(a=`${(_=location.pathname.split(":"))==null?void 0:_[0]}:${a}`),d=await W(a,g),d||(d=await fetch(a,g).then(b))}catch(a){console.error(a),x==null||x(!1),u==null||u(!1,a.response);let $=typeof M=="function"?M(a.response):M;f==null||f($!=null?$:((B=a.response)==null?void 0:B.message)||R,a.response,t);return}if(x==null||x(!1),d=m?m(d):d,l!=null&&l(d))return u==null||u(!0,d),d.data;{u==null||u(!1,d);let a=typeof M=="function"?M(d):M;f==null||f(a!=null?a:d.message||R,d,t);return}},ee=function(e){let t=P(this.overrideDefaultOptions,e),n=(o,r)=>I(o,P(t,r));return n.overrideDefaultOptions=t,n.create=ee.bind(n),n};I.create=ee.bind(I);var qe=function(e,t){let n=t;return t||(n=e,e=I),(o,r)=>e(o,w(w({},n||{}),r||{}))};var te=(e,t)=>typeof e=="number"?(typeof t=="undefined"&&(t=e,e=0),e+Math.floor(Math.random()*(t-e))):e instanceof Array?typeof t=="undefined"?e.length===0?null:e.length===1?e[0]:e[Math.floor(Math.random()*e.length)]:(e.sort(()=>Math.random()>.5?1:-1),e.slice(0,t)):Math.random(),je=(e,t)=>{e=e||18;let n="ABCDEFGHIJKLMNOPQRSTUVWXYZ_abcdefghijklmnopqrstuvwxyz0123456789".split("");t==="number"&&(n="0123456789".split(""));let o="";for(let r=0;r<e;r++)o+=te(n);return o},De=(e,t)=>e.replace(/([A-Z])/g,(n,o)=>`${t||"_"}${o.toLowerCase()}`),Le=(e,t)=>e.replace(new RegExp(`${t||"_"}(\\w)`,"g"),(n,o)=>o.toUpperCase());var Fe=e=>{let t=document.createElement("a");t.href=e,t.target="_blank",t.click()};0&&(module.exports={Request,calculate,configMock,copyToClipboard,createEnum,decodeHtml,deepCopy,delCookie,delParam,encodeHtml,formatDate,formatDuration,formatJson,formatNumber,formatPercent,getCookie,getIdCardLastChar,getMonthDays,getParam,getParamInt,getParams,getRandom,getRandomStr,hideLoading,initBigJs,initWindowMessage,isLeapYear,keyCodes,mockRequest,openNewTab,parseDate,request,resetMock,setCookie,setParam,showLoading,sleep,toFixed,toHump,toUnderline,toUrlParams,validateIdCard});
|
package/dist/index.mjs
CHANGED
|
@@ -1,4 +1,10 @@
|
|
|
1
|
-
var
|
|
1
|
+
var K=Object.defineProperty,V=Object.defineProperties;var X=Object.getOwnPropertyDescriptors;var P=Object.getOwnPropertySymbols;var Y=Object.prototype.hasOwnProperty,Z=Object.prototype.propertyIsEnumerable;var H=(e,t,n)=>t in e?K(e,t,{enumerable:!0,configurable:!0,writable:!0,value:n}):e[t]=n,w=(e,t)=>{for(var n in t||(t={}))Y.call(t,n)&&H(e,n,t[n]);if(P)for(var n of P(t))Z.call(t,n)&&H(e,n,t[n]);return e},v=(e,t)=>V(e,X(t));var ae=e=>{let t=new RegExp(`(^|;| )${encodeURIComponent(e)}=([^;]*)(;|$)`,"g").exec(document.cookie);return decodeURIComponent((t==null?void 0:t[2])||"")},z=(e,t,n)=>{let{days:o,path:r,domain:s,secure:i,sameSite:c}=Object.assign({days:30,path:"/"},n||{}),p=`${encodeURIComponent(e)}=${encodeURIComponent(t)}`;o&&(p+=`; expires=${new Date(Date.now()+o*24*3600*1e3).toUTCString()}`),r&&(p+=`; path=${r}`),s&&(p+=`; domain=${s}`),i&&(p+="; secure"),c&&(p+=`; sameSite=${c}`),document.cookie=p},ce=(e,t,n)=>{z(e,null,{days:-1,path:t,domain:n})};function ue(e){let t=[...e],n={},o={};return e.forEach(r=>{n[r.value]=r,o[r.label]=r,r.key&&(n[r.key]=r,typeof r.key=="number"?console.error("createEnum\u4E2D\u7684key\u4E0D\u80FD\u4E3A\u7EAF\u6570\u5B57"):t[r.key]=r.value)}),t.pick=r=>n[r],t.pickLabel=r=>{var s;return(s=t.pick(r))==null?void 0:s.label},t.pickValue=r=>{var s;return(s=t.pick(r))==null?void 0:s.value},t.pickKey=r=>{var s;return(s=t.pick(r))==null?void 0:s.key},t.pickByLabel=r=>o[r],t}var T=null,pe=e=>{T=e},_=()=>{if(T||window.Big)return T||window.Big;throw new Error(`big.js\u672A\u521D\u59CB\u5316\uFF0C\u60A8\u53EF\u4EE5\uFF1A
|
|
2
|
+
1. \u901A\u8FC7npm\u521D\u59CB\u5316\uFF1Aimport Big from 'big.js'; initBigJs(Big);
|
|
3
|
+
1. \u901A\u8FC7CDN\u521D\u59CB\u5316\uFF1Ahttps://cdn.jsdelivr.net/npm/big.js/big.min.js`)},I=(e,t)=>{let n=_(),[o,r,s]=e.split(/(\+|-|\*|\/)/g);if(!r||!s)throw new Error("\u8F93\u5165\u5B57\u7B26\u4E32\u4E0D\u5408\u6CD5\uFF01");let i={"+":"plus","-":"minus","*":"times","/":"div"}[r];if(!i)throw new Error("op\u4E0D\u5408\u6CD5\uFF01");let c=new n(o)[i](s);return t===void 0?c.toString():c.toFixed(t)},de=(e,t)=>{let n=_();return new n(e).toFixed(t).toString()};var ye=(json,indent,leftBracesInSameLine)=>{function getIndentStr(e){let t="";for(let n=0;n<e;n++)t+=indent||" ";return t}function format(e,t){t=t===void 0?0:t;let n="";if(typeof e=="object"&&e!=null){let o=e instanceof Array,r=0;n+=`${o?"[":"{"}
|
|
4
|
+
`;for(let s in e){n+=r++>0?`,
|
|
5
|
+
`:"";let i=typeof e[s]=="object"&&e[s]!=null,c=getIndentStr(t+1);n+=o&&i?"":c,n+=o?"":`"${s}": ${i&&!leftBracesInSameLine?`
|
|
6
|
+
`:""}`,n+=!i||i&&leftBracesInSameLine&&!o?"":c,n+=format(e[s],t+1)}n+=`
|
|
7
|
+
${getIndentStr(t)}${o?"]":"}"}`}else{let o=typeof e=="string"?'"':"";n+=`${o}${e}${o}`}return n}return format(eval(`(${json})`))},he=e=>e?isNaN(e)?(console.error(`${e} is not a number.`),e):(e=parseFloat(e),e<1e4?e:e<1e4*1e4?`${I(`${e}/10000`,e<1e5?1:0)}\u4E07`:`${I(`${e}/100000000`,e<1e9?1:0)}\u4EBF`):"",be=(e,t=2)=>e?isNaN(e)?(console.error(`${e} is not a number.`),e):`${I(`${e}*100`,t)}%`:"";var we=(e="\u8BF7\u7A0D\u5019",t=10,n={})=>{n=Object.assign({},{hasMask:!1,maskColor:"#00000070",onCancel:null,cancelInline:!1,id:"com_global_page_loading"},n);let{id:r,hasMask:s,maskColor:i,onCancel:c,cancelInline:p}=n,h=`_${r}_timeout`;window[h]&&clearTimeout(window[h]);let g=document.getElementById(r);g||(g=document.createElement("div"),g.id=r,g.className=r,document.body.append(g));let l=`${r}_style`;if(!document.getElementById(l)){let u=document.createElement("style");u.id=l,u.innerHTML=`
|
|
2
8
|
.${r} {
|
|
3
9
|
position: fixed;
|
|
4
10
|
left: 0;
|
|
@@ -40,16 +46,12 @@ var H=Object.defineProperty,P=Object.defineProperties;var _=Object.getOwnPropert
|
|
|
40
46
|
}
|
|
41
47
|
.${r} .loading-wrapper a {
|
|
42
48
|
color: #6ab2ff;
|
|
43
|
-
}`,document.head.appendChild(
|
|
49
|
+
}`,document.head.appendChild(u)}if(g.innerHTML=`
|
|
44
50
|
<div class="loading-wrapper">
|
|
45
51
|
<img src="https://img.alicdn.com/tfs/TB1bnUsQBLoK1RjSZFuXXXn0XXa-32-32.svg" alt="\u52A0\u8F7D\u4E2D">
|
|
46
52
|
<div>
|
|
47
53
|
<span>${e}</span>
|
|
48
|
-
${
|
|
49
|
-
${
|
|
54
|
+
${p?"":"<br />"}
|
|
55
|
+
${c?'<a href="javascript:;" class="cancel">\u53D6\u6D88</a>':""}
|
|
50
56
|
</div>
|
|
51
|
-
</div>`,g){let c=u.querySelector(".cancel");c&&c.addEventListener("click",()=>{v(),g()})}u.addEventListener("click",()=>{v()}),u.style.display="flex",u.style.background=s?l:"transparent",u.className=`${r} ${s?"show-mask":""}`,n>0&&(window[w]=setTimeout(()=>{v()},n*1e3))},v=()=>{let n=document.getElementById("com_global_page_loading");n&&(n.style.display="none")};function Q(e,n){!n&&window!==window.parent&&(n=window.parent),!n&&window.opener&&(n=window.opener);let t=new Map,o=new Map,r=()=>Math.random().toString(36).substring(2),s={},l="_local_function_";function g(a){let c=`${l}${r()}`;return s[c]=a,c}let d=(a,c)=>(a==null?void 0:a.map(p=>{if(typeof p=="object")for(let k in p)p[k]=c(p[k]);return c(p)}))||[];function w(a,...c){if(!n){console.warn("TargetWindow is null.");return}return new Promise((p,k)=>{let m=r();t.set(m,{resolve:p,reject:k}),n.postMessage({scene:e,type:"event",eventName:a,payload:d(c,h=>typeof h=="function"?g(h):h),callbackId:m},"*")})}window.addEventListener("message",async a=>{if(!a.data||a.data.scene!==e)return;n=a.source;let{type:c,eventName:p,payload:k,callbackId:m}=a.data;if(c==="event"){let h=d(k,y=>{if(typeof y=="string"&&y.startsWith(l)){let f=`getFn_${y}`;return(...x)=>w("executeLocalFunction",f,...x)}return y}),b=o.get(p)||[],R=o.get("*")||[];try{let y=await Promise.all(b.map(x=>Promise.resolve(x(...h)))),f=await Promise.all(R.map(x=>Promise.resolve(x(p,...h))));if(m){let x=y[y.length-1]||f[f.length-1];if(!b.length&&!x)return;n.postMessage({scene:e,type:"callback",callbackId:m,payload:x},"*")}}catch(y){console.error(y),m&&n.postMessage({scene:e,type:"callback",callbackId:m,error:y||"unknown error"},"*")}}else if(c==="callback"&&m){let h=t.get(m);h&&(a.data.error?h.reject(a.data.error):h.resolve(a.data.payload),t.delete(m))}});function u(a,c){o.has(a)||o.set(a,[]),o.get(a).push(c)}return u("executeLocalFunction",(a,...c)=>{if(a=(a==null?void 0:a.replace("getFn_",""))||"",!s[a])throw new Error(`\u672A\u627E\u5230\u672C\u5730\u7F13\u5B58\u65B9\u6CD5\uFF1A${a}`);return s[a](...c)}),w("auto-connect"),{postMessage:w,onMessage:u}}var ee=e=>!e||typeof e!="object"?e:JSON.parse(JSON.stringify(e)),B=e=>{if(typeof e=="string"){let n=document.createElement("div");return n.innerText=e,n.innerHTML}else if(typeof e=="object"&&e)for(let n in e)e[n]=B(e[n]);return e},N=e=>{if(typeof e=="string"){let n=document.createElement("div");return n.innerHTML=e,n.innerText}else if(typeof e=="object"&&e)for(let n in e)e[n]=N(e[n]);return e},ne=(e,n,t)=>{if(!e)throw new Error("text can not be empty.");return n=n||(o=>console.error(`\u590D\u5236\u5230\u526A\u8D34\u677F\u5931\u8D25\uFF1A${o||""}`)),navigator.clipboard&&!t?navigator.clipboard.writeText(e).catch(o=>{throw n(o.message),o}):new Promise((o,r)=>{let s=document.createElement("input");s.value=e,s.style.cssText="position:fixed;left:0;top:0;opacity:0;",document.body.appendChild(s),s.select();try{if(document.execCommand("copy"))o();else{let l="Failed to execute 'document.execCommand'.";n(l),r(new Error(l))}}catch(l){n(l.message),r(l)}finally{document.body.removeChild(s)}})},A=e=>{if(!e||e.length<17)throw new Error("\u4F20\u5165\u7684\u8EAB\u4EFD\u8BC1\u53F7\u957F\u5EA6\u5FC5\u987B>=17");let n=[7,9,10,5,8,4,2,1,6,3,7,9,10,5,8,4,2],t=["1","0","X","9","8","7","6","5","4","3","2"],o=0;for(let r=0;r<17;r++)o+=parseInt(e.charAt(r),10)*n[r];return t[o%11]},te=e=>!e||e.length!==18?(console.error("\u8EAB\u4EFD\u8BC1\u53F7\u4E0D\u662F18\u4F4D\uFF01"),!1):`${A(e)}`===e.charAt(17),re=(()=>{let e={backspace:8,tab:9,clear:12,enter:13,shift:16,ctrl:17,alt:18,esc:27,space:32,pageup:33,pagedown:34,end:35,home:36,left:37,up:38,right:39,down:40,insert:45,delete:46};for(let n=48;n<=57;n++)e[String.fromCharCode(n)]=n;for(let n=65;n<=90;n++)e[String.fromCharCode(n).toLowerCase()]=n;for(let n=96;n<=105;n++)e[`num${n-96}`]=n;for(let n=112;n<=123;n++)e[`f${n-111}`]=n;return e})();var q=(e,n=location.search)=>(new RegExp(`(^|\\?|&)${e}=(.*?)(?=&|#|$)`,"g").exec(n)||[])[2],se=(e,n=location.search)=>parseInt(q(e,n)||"0",10),ie=(e=location.search)=>{let n=((e||"").split("?").pop()||"").split("#")[0]||"",t={};return n.split("&").map(o=>o.split("=")).forEach(([o,r])=>{t[o]=r||""}),t},ae=(e,n,t)=>{if(t=t||`${location.pathname}${location.search}`,q(e,t)!==void 0)return t.replace(new RegExp(`(^|\\?|&)${e}=(.*?)(?=&|#|$)`,"g"),`$1${e}=${n}`);let[o,r]=t.split("#");return`${o}${o.indexOf("?")<0?"?":"&"}${e}=${n}${r?"#":""}${r||""}`},ce=(e,n)=>(n=n||`${location.pathname}${location.search}`,n.replace(new RegExp(`(^|\\?|&)${e}=.*?(&|#|$)`,"g"),(t,o,r)=>r==="&"?o:r)),M=e=>Object.keys(e||{}).filter(n=>e[n]!==void 0).map(n=>{let t=typeof e[n]=="object"?JSON.stringify(e[n]):e[n];return`${encodeURIComponent(n)}=${encodeURIComponent(t)}`}).join("&");var T=(e,n)=>{let t=Object.assign({},(e==null?void 0:e.headers)||{},(n==null?void 0:n.headers)||{}),o=Object.assign({},(e==null?void 0:e.fetchOptions)||{},(n==null?void 0:n.fetchOptions)||{});return Object.assign({},e||{},n||{},{headers:t,fetchOptions:o})},C=class extends Error{constructor(n,t){super(n),Object.assign(this,t||{})}},I=async(e,n)=>{var x,E;n=T({errorMessage:"\u7CFB\u7EDF\u7E41\u5FD9\uFF0C\u8BF7\u7A0D\u540E\u518D\u8BD5",errorHandler:i=>{var $;throw!(n!=null&&n.silent)&&i&&(($=n==null?void 0:n.toastHandler)==null||$.call(n,i)),new Error(i)},baseUrl:"",headers:{},fetchOptions:{credentials:"include"},checkSuccess:i=>(i==null?void 0:i.code)==0||(i==null?void 0:i.code)==200,toastHandler:i=>console.error(`[\u60A8\u8FD8\u6CA1\u6709\u914D\u7F6EtoastHandler\uFF0C\u8BF7\u6839\u636E\u60A8\u7684UI\u7EC4\u4EF6\u5E93\u914D\u7F6E\u5408\u9002\u7684\u63D0\u793A\u65B9\u6CD5] ${i||""}`),onFetchResponse:i=>{if(i.status===200)return i.json();throw new C(i.statusText,{response:L(O({},i),{code:i.status,message:i.statusText,isHttpResponse:!0})})}},n);let{params:o,data:r,formData:s,json:l,method:g,headers:d,baseUrl:w,fetchOptions:u,checkSuccess:a,afterRequest:c,errorHandler:p,errorMessage:k,responseConverter:m,onFetchResponse:h,setLoading:b,overrideMessage:R}=n||{},y=(n==null?void 0:n.defaultErrorMessage)||k;if(u.headers=O(O({},d||{}),u.headers||{}),o&&(u.method=g||"GET",e=`${e}${e.indexOf("?")>=0?"&":"?"}${M(o)}`),r)Object.assign(u,{method:g||"POST",body:M(r),headers:O({"Content-Type":"application/x-www-form-urlencoded;charset=utf-8"},u.headers||{})});else if(s){let i=s;if(!(s instanceof FormData)){i=new FormData;for(let $ in s)i.append($,s[$])}Object.assign(u,{method:g||"POST",body:i})}else l&&Object.assign(u,{method:g||"POST",body:JSON.stringify(l),headers:O({"Content-Type":"application/json;charset=utf-8"},u.headers||{})});let f=null;b==null||b(!0);try{let i=`${/^(http|\/\/)/g.test(e)?"":w||""}${e}`;i.indexOf("//")===0&&location.protocol==="blob:"&&(i=`${(x=location.pathname.split(":"))==null?void 0:x[0]}:${i}`),f=await fetch(i,u).then(h)}catch(i){console.error(i),b==null||b(!1),c==null||c(!1,i.response);let $=typeof R=="function"?R(i.response):R;p==null||p($!=null?$:((E=i.response)==null?void 0:E.message)||y,i.response,n);return}if(b==null||b(!1),f=m?m(f):f,a!=null&&a(f))return c==null||c(!0,f),f.data;{c==null||c(!1,f);let i=typeof R=="function"?R(f):R;p==null||p(i!=null?i:f.message||y,f,n);return}},j=function(e){let n=T(this.overrideDefaultOptions,e),t=(o,r)=>I(o,T(n,r));return t.overrideDefaultOptions=n,t.create=j.bind(t),t};I.create=j.bind(I);var ge=function(e,n){let t=n;return n||(t=e,e=I),(o,r)=>e(o,O(O({},t||{}),r||{}))};var fe=(e,n)=>{if(!e)return"";if(typeof e=="number")e=new Date(e);else if(typeof e=="string")if(/^\d{12,13}$/g.test(e))e=new Date(parseInt(e,10));else if(/^.{10}T.{8,12}Z?$/g.test(e)||/^\d{4}-\d{2}-\d{2} \d{2}:\d{2}:\d{2}$/g.test(e))e=new Date(e);else return e;if(!(e instanceof Date))throw new Error("formatDate error: not date.");if(isNaN(e==null?void 0:e.getFullYear()))throw new Error("formatDate error: invalid date.");n=n||"yyyy-MM-dd HH:mm:ss";let t={y:e.getFullYear(),M:e.getMonth()+1,d:e.getDate(),q:Math.floor((e.getMonth()+3)/3),w:e.getDay(),H:e.getHours(),h:e.getHours()%12===0?12:e.getHours()%12,m:e.getMinutes(),s:e.getSeconds(),S:e.getMilliseconds()},o=["\u5929","\u4E00","\u4E8C","\u4E09","\u56DB","\u4E94","\u516D"];for(let r in t)n=n.replace(new RegExp(`${r}+`,"g"),s=>{let l=`${t[r]}`;if(r==="w")return`${s.length>2?"\u661F\u671F":"\u5468"}${o[l]}`;for(let g=0,d=l.length;g<s.length-d;g++)l=`0${l}`;return s.length===1?l:l.substring(l.length-s.length)});return n},me=(e,n)=>{n=n||"yyyy-MM-dd";let t={y:0,M:1,d:0,H:0,h:0,m:0,s:0,S:0};n.replace(/([^yMdHmsS]*?)(([yMdHmsS])\3*)([^yMdHmsS]*?)/g,(r,s,l,g,d)=>(e=e.replace(new RegExp(`${s}(\\d{${l.length}})${d}`),(w,u)=>(t[g]=parseInt(u,10),"")),"")),t.M--;let o=new Date(t.y,t.M,t.d,t.H,t.m,t.s);return t.S!==0&&o.setMilliseconds(t.S),o},ye=e=>new Promise(n=>setTimeout(n,e||0)),he=(e,n="d:hh:mm:ss")=>{let t={d:Math.floor(e/86400),h:Math.floor(e%86400/3600),m:Math.floor(e%3600/60),s:e%60};t.h===0?n=n.replace(/^[^m]+/g,""):t.d===0&&(n=n.replace(/^[^h]+/g,""));for(let o in t)n=n.replace(new RegExp(`${o}+`,"g"),r=>{let s=`${t[o]}`;return r.length>1?s.padStart(r.length,"0"):s});return n},K=e=>(e===void 0&&(e=new Date),e instanceof Date&&(e=e.getFullYear()),e%4===0&&e%100!==0||e%400===0),be=(e,n)=>{let t=n-1;e=e||new Date,e instanceof Date&&(n=e.getMonth(),e=e.getFullYear());let o=[31,28,31,30,31,30,31,31,30,31,30,31];return t===1&&K(e)?o[t]+1:o[t]};var we=(json,indent,leftBracesInSameLine)=>{function getIndentStr(e){let n="";for(let t=0;t<e;t++)n+=indent||" ";return n}function format(e,n){n=n===void 0?0:n;let t="";if(typeof e=="object"&&e!=null){let o=e instanceof Array,r=0;t+=`${o?"[":"{"}
|
|
52
|
-
`;for(let s in e){t+=r++>0?`,
|
|
53
|
-
`:"";let l=typeof e[s]=="object"&&e[s]!=null,g=getIndentStr(n+1);t+=o&&l?"":g,t+=o?"":`"${s}": ${l&&!leftBracesInSameLine?`
|
|
54
|
-
`:""}`,t+=!l||l&&leftBracesInSameLine&&!o?"":g,t+=format(e[s],n+1)}t+=`
|
|
55
|
-
${getIndentStr(n)}${o?"]":"}"}`}else{let o=typeof e=="string"?'"':"";t+=`${o}${e}${o}`}return t}return format(eval(`(${json})`))},V=(e,n)=>typeof e=="number"?(typeof n=="undefined"&&(n=e,e=0),e+Math.floor(Math.random()*(n-e))):e instanceof Array?typeof n=="undefined"?e.length===0?null:e.length===1?e[0]:e[Math.floor(Math.random()*e.length)]:(e.sort(()=>Math.random()>.5?1:-1),e.slice(0,n)):Math.random(),$e=(e,n)=>{e=e||18;let t="ABCDEFGHIJKLMNOPQRSTUVWXYZ_abcdefghijklmnopqrstuvwxyz0123456789".split("");n==="number"&&(t="0123456789".split(""));let o="";for(let r=0;r<e;r++)o+=V(t);return o},ke=(e,n)=>e.replace(/([A-Z])/g,(t,o)=>`${n||"_"}${o.toLowerCase()}`),Re=(e,n)=>e.replace(new RegExp(`${n||"_"}(\\w)`,"g"),(t,o)=>o.toUpperCase());var Ie=e=>{let n=document.createElement("a");n.href=e,n.target="_blank",n.click()};var Me=e=>{let n=new RegExp(`(^|;| )${encodeURIComponent(e)}=([^;]*)(;|$)`,"g").exec(document.cookie);return decodeURIComponent((n==null?void 0:n[2])||"")},X=(e,n,t)=>{let{days:o,path:r,domain:s,secure:l,sameSite:g}=Object.assign({days:30,path:"/"},t||{}),d=`${encodeURIComponent(e)}=${encodeURIComponent(n)}`;o&&(d+=`; expires=${new Date(Date.now()+o*24*3600*1e3).toUTCString()}`),r&&(d+=`; path=${r}`),s&&(d+=`; domain=${s}`),l&&(d+="; secure"),g&&(d+=`; sameSite=${g}`),document.cookie=d},Te=(e,n,t)=>{X(e,null,{days:-1,path:n,domain:t})};export{ge as Request,ne as copyToClipboard,Y as createEnum,N as decodeHtml,ee as deepCopy,Te as delCookie,ce as delParam,B as encodeHtml,fe as formatDate,he as formatDuration,we as formatJson,Me as getCookie,A as getIdCardLastChar,be as getMonthDays,q as getParam,se as getParamInt,ie as getParams,V as getRandom,$e as getRandomStr,v as hideLoading,Q as initWindowMessage,K as isLeapYear,re as keyCodes,Ie as openNewTab,me as parseDate,I as request,X as setCookie,ae as setParam,z as showLoading,ye as sleep,Re as toHump,ke as toUnderline,M as toUrlParams,te as validateIdCard};
|
|
57
|
+
</div>`,c){let u=g.querySelector(".cancel");u&&u.addEventListener("click",()=>{S(),c()})}g.addEventListener("click",()=>{S()}),g.style.display="flex",g.style.background=s?i:"transparent",g.className=`${r} ${s?"show-mask":""}`,t>0&&(window[h]=setTimeout(()=>{S()},t*1e3))},S=()=>{let t=document.getElementById("com_global_page_loading");t&&(t.style.display="none")};function ke(e,t){!t&&window!==window.parent&&(t=window.parent),!t&&window.opener&&(t=window.opener);let n=new Map,o=new Map,r=()=>Math.random().toString(36).substring(2),s={},i="_local_function_";function c(l){let u=`${i}${r()}`;return s[u]=l,u}let p=(l,u)=>(l==null?void 0:l.map(f=>{if(typeof f=="object")for(let k in f)f[k]=u(f[k]);return u(f)}))||[];function h(l,...u){if(!t){console.warn("TargetWindow is null.");return}return new Promise((f,k)=>{let m=r();n.set(m,{resolve:f,reject:k}),t.postMessage({scene:e,type:"event",eventName:l,payload:p(u,b=>typeof b=="function"?c(b):b),callbackId:m},"*")})}window.addEventListener("message",async l=>{if(!l.data||l.data.scene!==e)return;t=l.source;let{type:u,eventName:f,payload:k,callbackId:m}=l.data;if(u==="event"){let b=p(k,y=>{if(typeof y=="string"&&y.startsWith(i)){let R=`getFn_${y}`;return(...d)=>h("executeLocalFunction",R,...d)}return y}),x=o.get(f)||[],M=o.get("*")||[];try{let y=await Promise.all(x.map(d=>Promise.resolve(d(...b)))),R=await Promise.all(M.map(d=>Promise.resolve(d(f,...b))));if(m){let d=y[y.length-1]||R[R.length-1];if(!x.length&&!d)return;t.postMessage({scene:e,type:"callback",callbackId:m,payload:d},"*")}}catch(y){console.error(y),m&&t.postMessage({scene:e,type:"callback",callbackId:m,error:y||"unknown error"},"*")}}else if(u==="callback"&&m){let b=n.get(m);b&&(l.data.error?b.reject(l.data.error):b.resolve(l.data.payload),n.delete(m))}});function g(l,u){o.has(l)||o.set(l,[]),o.get(l).push(u)}return g("executeLocalFunction",(l,...u)=>{if(l=(l==null?void 0:l.replace("getFn_",""))||"",!s[l])throw new Error(`\u672A\u627E\u5230\u672C\u5730\u7F13\u5B58\u65B9\u6CD5\uFF1A${l}`);return s[l](...u)}),h("auto-connect"),{postMessage:h,onMessage:g}}var Re=e=>!e||typeof e!="object"?e:JSON.parse(JSON.stringify(e)),G=e=>{if(typeof e=="string"){let t=document.createElement("div");return t.innerText=e,t.innerHTML}else if(typeof e=="object"&&e)for(let t in e)e[t]=G(e[t]);return e},Q=e=>{if(typeof e=="string"){let t=document.createElement("div");return t.innerHTML=e,t.innerText}else if(typeof e=="object"&&e)for(let t in e)e[t]=Q(e[t]);return e},Oe=(e,t,n)=>{if(!e)throw new Error("text can not be empty.");return t=t||(o=>console.error(`\u590D\u5236\u5230\u526A\u8D34\u677F\u5931\u8D25\uFF1A${o||""}`)),navigator.clipboard&&!n?navigator.clipboard.writeText(e).catch(o=>{throw t(o.message),o}):new Promise((o,r)=>{let s=document.createElement("input");s.value=e,s.style.cssText="position:fixed;left:0;top:0;opacity:0;",document.body.appendChild(s),s.select();try{if(document.execCommand("copy"))o();else{let i="Failed to execute 'document.execCommand'.";t(i),r(new Error(i))}}catch(i){t(i.message),r(i)}finally{document.body.removeChild(s)}})},W=e=>{if(!e||e.length<17)throw new Error("\u4F20\u5165\u7684\u8EAB\u4EFD\u8BC1\u53F7\u957F\u5EA6\u5FC5\u987B>=17");let t=[7,9,10,5,8,4,2,1,6,3,7,9,10,5,8,4,2],n=["1","0","X","9","8","7","6","5","4","3","2"],o=0;for(let r=0;r<17;r++)o+=parseInt(e.charAt(r),10)*t[r];return n[o%11]},ve=e=>!e||e.length!==18?(console.error("\u8EAB\u4EFD\u8BC1\u53F7\u4E0D\u662F18\u4F4D\uFF01"),!1):`${W(e)}`===e.charAt(17),Ie=(()=>{let e={backspace:8,tab:9,clear:12,enter:13,shift:16,ctrl:17,alt:18,esc:27,space:32,pageup:33,pagedown:34,end:35,home:36,left:37,up:38,right:39,down:40,insert:45,delete:46};for(let t=48;t<=57;t++)e[String.fromCharCode(t)]=t;for(let t=65;t<=90;t++)e[String.fromCharCode(t).toLowerCase()]=t;for(let t=96;t<=105;t++)e[`num${t-96}`]=t;for(let t=112;t<=123;t++)e[`f${t-111}`]=t;return e})();var B=(e,t=location.search)=>(new RegExp(`(^|\\?|&)${e}=(.*?)(?=&|#|$)`,"g").exec(t)||[])[2],Ee=(e,t=location.search)=>parseInt(B(e,t)||"0",10),U=(e=location.search)=>{let t=((e||"").split("?").pop()||"").split("#")[0]||"",n={};return t.split("&").map(o=>o.split("=")).forEach(([o,r])=>{n[o]=r||""}),n},Te=(e,t,n)=>{if(n=n||`${location.pathname}${location.search}`,B(e,n)!==void 0)return n.replace(new RegExp(`(^|\\?|&)${e}=(.*?)(?=&|#|$)`,"g"),`$1${e}=${t}`);let[o,r]=n.split("#");return`${o}${o.indexOf("?")<0?"?":"&"}${e}=${t}${r?"#":""}${r||""}`},Se=(e,t)=>(t=t||`${location.pathname}${location.search}`,t.replace(new RegExp(`(^|\\?|&)${e}=.*?(&|#|$)`,"g"),(n,o,r)=>r==="&"?o:r)),q=e=>Object.keys(e||{}).filter(t=>e[t]!==void 0).map(t=>{let n=typeof e[t]=="object"?JSON.stringify(e[t]):e[t];return`${encodeURIComponent(t)}=${encodeURIComponent(n)}`}).join("&");var je=(e,t)=>{if(!e)return"";if(typeof e=="number")e=new Date(e);else if(typeof e=="string")if(/^\d{12,13}$/g.test(e))e=new Date(parseInt(e,10));else if(/^.{10}T.{8,12}Z?$/g.test(e)||/^\d{4}-\d{2}-\d{2} \d{2}:\d{2}:\d{2}$/g.test(e))e=new Date(e);else return e;if(!(e instanceof Date))throw new Error("formatDate error: not date.");if(isNaN(e==null?void 0:e.getFullYear()))throw new Error("formatDate error: invalid date.");t=t||"yyyy-MM-dd HH:mm:ss";let n={y:e.getFullYear(),M:e.getMonth()+1,d:e.getDate(),q:Math.floor((e.getMonth()+3)/3),w:e.getDay(),H:e.getHours(),h:e.getHours()%12===0?12:e.getHours()%12,m:e.getMinutes(),s:e.getSeconds(),S:e.getMilliseconds()},o=["\u5929","\u4E00","\u4E8C","\u4E09","\u56DB","\u4E94","\u516D"];for(let r in n)t=t.replace(new RegExp(`${r}+`,"g"),s=>{let i=`${n[r]}`;if(r==="w")return`${s.length>2?"\u661F\u671F":"\u5468"}${o[i]}`;for(let c=0,p=i.length;c<s.length-p;c++)i=`0${i}`;return s.length===1?i:i.substring(i.length-s.length)});return t},De=(e,t)=>{t=t||"yyyy-MM-dd";let n={y:0,M:1,d:0,H:0,h:0,m:0,s:0,S:0};t.replace(/([^yMdHmsS]*?)(([yMdHmsS])\3*)([^yMdHmsS]*?)/g,(r,s,i,c,p)=>(e=e.replace(new RegExp(`${s}(\\d{${i.length}})${p}`),(h,g)=>(n[c]=parseInt(g,10),"")),"")),n.M--;let o=new Date(n.y,n.M,n.d,n.H,n.m,n.s);return n.S!==0&&o.setMilliseconds(n.S),o},N=e=>new Promise(t=>setTimeout(t,e||0)),Le=(e,t="d:hh:mm:ss")=>{let n={d:Math.floor(e/86400),h:Math.floor(e%86400/3600),m:Math.floor(e%3600/60),s:e%60};n.h===0?t=t.replace(/^[^m]+/g,""):n.d===0&&(t=t.replace(/^[^h]+/g,""));for(let o in n)t=t.replace(new RegExp(`${o}+`,"g"),r=>{let s=`${n[o]}`;return r.length>1?s.padStart(r.length,"0"):s});return t},ee=e=>(e===void 0&&(e=new Date),e instanceof Date&&(e=e.getFullYear()),e%4===0&&e%100!==0||e%400===0),Fe=(e,t)=>{let n=t-1;e=e||new Date,e instanceof Date&&(t=e.getMonth(),e=e.getFullYear());let o=[31,28,31,30,31,30,31,31,30,31,30,31];return n===1&&ee(e)?o[n]+1:o[n]};var O=[],C={timeout:"200-400",debug:!0,overrideMode:!0},te=(e,t)=>{if(!t)throw new Error("\u7B2C\u4E8C\u4E2A\u53C2\u6570\u4E0D\u80FD\u4E3A\u7A7A\uFF01");let n=t;n instanceof Function||(n=()=>t),O.push({url:e,cb:n})},ne=()=>{O=[]},re=e=>{Object.assign(C,e||{})},oe=e=>{var s,i;let t=(e.method||"get").toLowerCase(),{url:n,body:o}=e,r={};if(t==="get")(n.split("?")[1]||"").split("&").map(c=>c.split("=")).forEach(([c,p])=>{r[c]=decodeURIComponent(p)});else if(t==="post")try{let c=((s=e.headers)==null?void 0:s["Content-Type"])||((i=e.headers)==null?void 0:i["content-type"]);(c==null?void 0:c.indexOf("json"))>0?r=JSON.parse(o||"{}"):r=U(`?${o||""}`)}catch(c){console.error(c)}return r},J=async(e,t)=>{var r;if(!(O!=null&&O.length))return;let n=v(w({url:e},t),{params:{}});n.params=oe(n);let o=C.overrideMode?O.reverse():O;for(let s of o)if((e==null?void 0:e.indexOf(s.url))>=0){let i=C.timeout||0;if(typeof i=="string"){let p=i.split("-").map(h=>parseInt(h,10));i=p[0]+Math.round(Math.random()*(p[1]-p[0]))}await N(i);let c=await((r=s.cb)==null?void 0:r.call(s,n));if(C.debug&&(console.log(`\u547D\u4E2Dmock\u89C4\u5219\uFF1A${s.url}`),console.log("mock\u5165\u53C2\uFF1A",n),console.log("mock\u51FA\u53C2\uFF1A",c)),c)return c}};var j=(e,t)=>{let n=Object.assign({},(e==null?void 0:e.headers)||{},(t==null?void 0:t.headers)||{}),o=Object.assign({},(e==null?void 0:e.fetchOptions)||{},(t==null?void 0:t.fetchOptions)||{});return Object.assign({},e||{},t||{},{headers:n,fetchOptions:o})},D=class extends Error{constructor(t,n){super(t),Object.assign(this,n||{})}},E=async(e,t)=>{var L,F;t=j({errorMessage:"\u7CFB\u7EDF\u7E41\u5FD9\uFF0C\u8BF7\u7A0D\u540E\u518D\u8BD5",errorHandler:a=>{var $;throw!(t!=null&&t.silent)&&a&&(($=t==null?void 0:t.toastHandler)==null||$.call(t,a)),new Error(a)},baseUrl:"",headers:{},fetchOptions:{credentials:"include"},checkSuccess:a=>(a==null?void 0:a.code)==0||(a==null?void 0:a.code)==200,toastHandler:a=>console.error(`[\u60A8\u8FD8\u6CA1\u6709\u914D\u7F6EtoastHandler\uFF0C\u8BF7\u6839\u636E\u60A8\u7684UI\u7EC4\u4EF6\u5E93\u914D\u7F6E\u5408\u9002\u7684\u63D0\u793A\u65B9\u6CD5] ${a||""}`),onFetchResponse:a=>{if(a.status===200)return a.json();throw new D(a.statusText,{response:v(w({},a),{code:a.status,message:a.statusText,isHttpResponse:!0})})}},t);let{params:o,data:r,formData:s,json:i,method:c,headers:p,baseUrl:h,fetchOptions:g,checkSuccess:l,afterRequest:u,errorHandler:f,errorMessage:k,responseConverter:m,onFetchResponse:b,setLoading:x,overrideMessage:M,signal:y}=t||{},R=(t==null?void 0:t.defaultErrorMessage)||k;if(g.headers=w(w({},p||{}),g.headers||{}),!g.signal&&y&&(g.signal=y),o&&(g.method=c||"GET",e=`${e}${e.indexOf("?")>=0?"&":"?"}${q(o)}`),r)Object.assign(g,{method:c||"POST",body:q(r),headers:w({"Content-Type":"application/x-www-form-urlencoded;charset=utf-8"},g.headers||{})});else if(s){let a=s;if(!(s instanceof FormData)){a=new FormData;for(let $ in s)a.append($,s[$])}Object.assign(g,{method:c||"POST",body:a})}else i&&Object.assign(g,{method:c||"POST",body:JSON.stringify(i),headers:w({"Content-Type":"application/json;charset=utf-8"},g.headers||{})});let d=null;x==null||x(!0);try{let a=`${/^(http|\/\/)/g.test(e)?"":h||""}${e}`;a.indexOf("//")===0&&location.protocol==="blob:"&&(a=`${(L=location.pathname.split(":"))==null?void 0:L[0]}:${a}`),d=await J(a,g),d||(d=await fetch(a,g).then(b))}catch(a){console.error(a),x==null||x(!1),u==null||u(!1,a.response);let $=typeof M=="function"?M(a.response):M;f==null||f($!=null?$:((F=a.response)==null?void 0:F.message)||R,a.response,t);return}if(x==null||x(!1),d=m?m(d):d,l!=null&&l(d))return u==null||u(!0,d),d.data;{u==null||u(!1,d);let a=typeof M=="function"?M(d):M;f==null||f(a!=null?a:d.message||R,d,t);return}},A=function(e){let t=j(this.overrideDefaultOptions,e),n=(o,r)=>E(o,j(t,r));return n.overrideDefaultOptions=t,n.create=A.bind(n),n};E.create=A.bind(E);var Ae=function(e,t){let n=t;return t||(n=e,e=E),(o,r)=>e(o,w(w({},n||{}),r||{}))};var se=(e,t)=>typeof e=="number"?(typeof t=="undefined"&&(t=e,e=0),e+Math.floor(Math.random()*(t-e))):e instanceof Array?typeof t=="undefined"?e.length===0?null:e.length===1?e[0]:e[Math.floor(Math.random()*e.length)]:(e.sort(()=>Math.random()>.5?1:-1),e.slice(0,t)):Math.random(),Ye=(e,t)=>{e=e||18;let n="ABCDEFGHIJKLMNOPQRSTUVWXYZ_abcdefghijklmnopqrstuvwxyz0123456789".split("");t==="number"&&(n="0123456789".split(""));let o="";for(let r=0;r<e;r++)o+=se(n);return o},Ze=(e,t)=>e.replace(/([A-Z])/g,(n,o)=>`${t||"_"}${o.toLowerCase()}`),ze=(e,t)=>e.replace(new RegExp(`${t||"_"}(\\w)`,"g"),(n,o)=>o.toUpperCase());var Qe=e=>{let t=document.createElement("a");t.href=e,t.target="_blank",t.click()};export{Ae as Request,I as calculate,re as configMock,Oe as copyToClipboard,ue as createEnum,Q as decodeHtml,Re as deepCopy,ce as delCookie,Se as delParam,G as encodeHtml,je as formatDate,Le as formatDuration,ye as formatJson,he as formatNumber,be as formatPercent,ae as getCookie,W as getIdCardLastChar,Fe as getMonthDays,B as getParam,Ee as getParamInt,U as getParams,se as getRandom,Ye as getRandomStr,S as hideLoading,pe as initBigJs,ke as initWindowMessage,ee as isLeapYear,Ie as keyCodes,te as mockRequest,Qe as openNewTab,De as parseDate,E as request,ne as resetMock,z as setCookie,Te as setParam,we as showLoading,N as sleep,de as toFixed,ze as toHump,Ze as toUnderline,q as toUrlParams,ve as validateIdCard};
|
package/dist/index.umd.js
CHANGED
|
@@ -1,4 +1,10 @@
|
|
|
1
|
-
var youtil=(()=>{var
|
|
1
|
+
var youtil=(()=>{var C=Object.defineProperty,ne=Object.defineProperties,re=Object.getOwnPropertyDescriptor,oe=Object.getOwnPropertyDescriptors,se=Object.getOwnPropertyNames,U=Object.getOwnPropertySymbols;var J=Object.prototype.hasOwnProperty,ie=Object.prototype.propertyIsEnumerable;var N=(e,t,n)=>t in e?C(e,t,{enumerable:!0,configurable:!0,writable:!0,value:n}):e[t]=n,w=(e,t)=>{for(var n in t||(t={}))J.call(t,n)&&N(e,n,t[n]);if(U)for(var n of U(t))ie.call(t,n)&&N(e,n,t[n]);return e},E=(e,t)=>ne(e,oe(t));var ae=(e,t)=>{for(var n in t)C(e,n,{get:t[n],enumerable:!0})},ce=(e,t,n,o)=>{if(t&&typeof t=="object"||typeof t=="function")for(let r of se(t))!J.call(e,r)&&r!==n&&C(e,r,{get:()=>t[r],enumerable:!(o=re(t,r))||o.enumerable});return e};var le=e=>ce(C({},"__esModule",{value:!0}),e);var Pe={};ae(Pe,{Request:()=>qe,calculate:()=>v,configMock:()=>Q,copyToClipboard:()=>$e,createEnum:()=>pe,decodeHtml:()=>X,deepCopy:()=>we,delCookie:()=>ge,delParam:()=>ve,encodeHtml:()=>V,formatDate:()=>Ie,formatDuration:()=>Ee,formatJson:()=>me,formatNumber:()=>ye,formatPercent:()=>he,getCookie:()=>ue,getIdCardLastChar:()=>Y,getMonthDays:()=>Te,getParam:()=>D,getParamInt:()=>Re,getParams:()=>L,getRandom:()=>te,getRandomStr:()=>je,hideLoading:()=>T,initBigJs:()=>de,initWindowMessage:()=>xe,isLeapYear:()=>Z,keyCodes:()=>Me,mockRequest:()=>z,openNewTab:()=>Fe,parseDate:()=>Ce,request:()=>I,resetMock:()=>G,setCookie:()=>A,setParam:()=>Oe,showLoading:()=>be,sleep:()=>F,toFixed:()=>fe,toHump:()=>Le,toUnderline:()=>De,toUrlParams:()=>S,validateIdCard:()=>ke});var ue=e=>{let t=new RegExp(`(^|;| )${encodeURIComponent(e)}=([^;]*)(;|$)`,"g").exec(document.cookie);return decodeURIComponent((t==null?void 0:t[2])||"")},A=(e,t,n)=>{let{days:o,path:r,domain:s,secure:i,sameSite:c}=Object.assign({days:30,path:"/"},n||{}),p=`${encodeURIComponent(e)}=${encodeURIComponent(t)}`;o&&(p+=`; expires=${new Date(Date.now()+o*24*3600*1e3).toUTCString()}`),r&&(p+=`; path=${r}`),s&&(p+=`; domain=${s}`),i&&(p+="; secure"),c&&(p+=`; sameSite=${c}`),document.cookie=p},ge=(e,t,n)=>{A(e,null,{days:-1,path:t,domain:n})};function pe(e){let t=[...e],n={},o={};return e.forEach(r=>{n[r.value]=r,o[r.label]=r,r.key&&(n[r.key]=r,typeof r.key=="number"?console.error("createEnum\u4E2D\u7684key\u4E0D\u80FD\u4E3A\u7EAF\u6570\u5B57"):t[r.key]=r.value)}),t.pick=r=>n[r],t.pickLabel=r=>{var s;return(s=t.pick(r))==null?void 0:s.label},t.pickValue=r=>{var s;return(s=t.pick(r))==null?void 0:s.value},t.pickKey=r=>{var s;return(s=t.pick(r))==null?void 0:s.key},t.pickByLabel=r=>o[r],t}var j=null,de=e=>{j=e},K=()=>{if(j||window.Big)return j||window.Big;throw new Error(`big.js\u672A\u521D\u59CB\u5316\uFF0C\u60A8\u53EF\u4EE5\uFF1A
|
|
2
|
+
1. \u901A\u8FC7npm\u521D\u59CB\u5316\uFF1Aimport Big from 'big.js'; initBigJs(Big);
|
|
3
|
+
1. \u901A\u8FC7CDN\u521D\u59CB\u5316\uFF1Ahttps://cdn.jsdelivr.net/npm/big.js/big.min.js`)},v=(e,t)=>{let n=K(),[o,r,s]=e.split(/(\+|-|\*|\/)/g);if(!r||!s)throw new Error("\u8F93\u5165\u5B57\u7B26\u4E32\u4E0D\u5408\u6CD5\uFF01");let i={"+":"plus","-":"minus","*":"times","/":"div"}[r];if(!i)throw new Error("op\u4E0D\u5408\u6CD5\uFF01");let c=new n(o)[i](s);return t===void 0?c.toString():c.toFixed(t)},fe=(e,t)=>{let n=K();return new n(e).toFixed(t).toString()};var me=(json,indent,leftBracesInSameLine)=>{function getIndentStr(e){let t="";for(let n=0;n<e;n++)t+=indent||" ";return t}function format(e,t){t=t===void 0?0:t;let n="";if(typeof e=="object"&&e!=null){let o=e instanceof Array,r=0;n+=`${o?"[":"{"}
|
|
4
|
+
`;for(let s in e){n+=r++>0?`,
|
|
5
|
+
`:"";let i=typeof e[s]=="object"&&e[s]!=null,c=getIndentStr(t+1);n+=o&&i?"":c,n+=o?"":`"${s}": ${i&&!leftBracesInSameLine?`
|
|
6
|
+
`:""}`,n+=!i||i&&leftBracesInSameLine&&!o?"":c,n+=format(e[s],t+1)}n+=`
|
|
7
|
+
${getIndentStr(t)}${o?"]":"}"}`}else{let o=typeof e=="string"?'"':"";n+=`${o}${e}${o}`}return n}return format(eval(`(${json})`))},ye=e=>e?isNaN(e)?(console.error(`${e} is not a number.`),e):(e=parseFloat(e),e<1e4?e:e<1e4*1e4?`${v(`${e}/10000`,e<1e5?1:0)}\u4E07`:`${v(`${e}/100000000`,e<1e9?1:0)}\u4EBF`):"",he=(e,t=2)=>e?isNaN(e)?(console.error(`${e} is not a number.`),e):`${v(`${e}*100`,t)}%`:"";var be=(e="\u8BF7\u7A0D\u5019",t=10,n={})=>{n=Object.assign({},{hasMask:!1,maskColor:"#00000070",onCancel:null,cancelInline:!1,id:"com_global_page_loading"},n);let{id:r,hasMask:s,maskColor:i,onCancel:c,cancelInline:p}=n,h=`_${r}_timeout`;window[h]&&clearTimeout(window[h]);let g=document.getElementById(r);g||(g=document.createElement("div"),g.id=r,g.className=r,document.body.append(g));let l=`${r}_style`;if(!document.getElementById(l)){let u=document.createElement("style");u.id=l,u.innerHTML=`
|
|
2
8
|
.${r} {
|
|
3
9
|
position: fixed;
|
|
4
10
|
left: 0;
|
|
@@ -40,16 +46,12 @@ var youtil=(()=>{var v=Object.defineProperty,K=Object.defineProperties,V=Object.
|
|
|
40
46
|
}
|
|
41
47
|
.${r} .loading-wrapper a {
|
|
42
48
|
color: #6ab2ff;
|
|
43
|
-
}`,document.head.appendChild(
|
|
49
|
+
}`,document.head.appendChild(u)}if(g.innerHTML=`
|
|
44
50
|
<div class="loading-wrapper">
|
|
45
51
|
<img src="https://img.alicdn.com/tfs/TB1bnUsQBLoK1RjSZFuXXXn0XXa-32-32.svg" alt="\u52A0\u8F7D\u4E2D">
|
|
46
52
|
<div>
|
|
47
53
|
<span>${e}</span>
|
|
48
|
-
${
|
|
49
|
-
${
|
|
54
|
+
${p?"":"<br />"}
|
|
55
|
+
${c?'<a href="javascript:;" class="cancel">\u53D6\u6D88</a>':""}
|
|
50
56
|
</div>
|
|
51
|
-
</div>`,g){let c=u.querySelector(".cancel");c&&c.addEventListener("click",()=>{M(),g()})}u.addEventListener("click",()=>{M()}),u.style.display="flex",u.style.background=s?l:"transparent",u.className=`${r} ${s?"show-mask":""}`,n>0&&(window[w]=setTimeout(()=>{M()},n*1e3))},M=()=>{let n=document.getElementById("com_global_page_loading");n&&(n.style.display="none")};function ee(e,n){!n&&window!==window.parent&&(n=window.parent),!n&&window.opener&&(n=window.opener);let t=new Map,o=new Map,r=()=>Math.random().toString(36).substring(2),s={},l="_local_function_";function g(a){let c=`${l}${r()}`;return s[c]=a,c}let d=(a,c)=>(a==null?void 0:a.map(p=>{if(typeof p=="object")for(let k in p)p[k]=c(p[k]);return c(p)}))||[];function w(a,...c){if(!n){console.warn("TargetWindow is null.");return}return new Promise((p,k)=>{let m=r();t.set(m,{resolve:p,reject:k}),n.postMessage({scene:e,type:"event",eventName:a,payload:d(c,h=>typeof h=="function"?g(h):h),callbackId:m},"*")})}window.addEventListener("message",async a=>{if(!a.data||a.data.scene!==e)return;n=a.source;let{type:c,eventName:p,payload:k,callbackId:m}=a.data;if(c==="event"){let h=d(k,y=>{if(typeof y=="string"&&y.startsWith(l)){let f=`getFn_${y}`;return(...x)=>w("executeLocalFunction",f,...x)}return y}),b=o.get(p)||[],R=o.get("*")||[];try{let y=await Promise.all(b.map(x=>Promise.resolve(x(...h)))),f=await Promise.all(R.map(x=>Promise.resolve(x(p,...h))));if(m){let x=y[y.length-1]||f[f.length-1];if(!b.length&&!x)return;n.postMessage({scene:e,type:"callback",callbackId:m,payload:x},"*")}}catch(y){console.error(y),m&&n.postMessage({scene:e,type:"callback",callbackId:m,error:y||"unknown error"},"*")}}else if(c==="callback"&&m){let h=t.get(m);h&&(a.data.error?h.reject(a.data.error):h.resolve(a.data.payload),t.delete(m))}});function u(a,c){o.has(a)||o.set(a,[]),o.get(a).push(c)}return u("executeLocalFunction",(a,...c)=>{if(a=(a==null?void 0:a.replace("getFn_",""))||"",!s[a])throw new Error(`\u672A\u627E\u5230\u672C\u5730\u7F13\u5B58\u65B9\u6CD5\uFF1A${a}`);return s[a](...c)}),w("auto-connect"),{postMessage:w,onMessage:u}}var ne=e=>!e||typeof e!="object"?e:JSON.parse(JSON.stringify(e)),P=e=>{if(typeof e=="string"){let n=document.createElement("div");return n.innerText=e,n.innerHTML}else if(typeof e=="object"&&e)for(let n in e)e[n]=P(e[n]);return e},_=e=>{if(typeof e=="string"){let n=document.createElement("div");return n.innerHTML=e,n.innerText}else if(typeof e=="object"&&e)for(let n in e)e[n]=_(e[n]);return e},te=(e,n,t)=>{if(!e)throw new Error("text can not be empty.");return n=n||(o=>console.error(`\u590D\u5236\u5230\u526A\u8D34\u677F\u5931\u8D25\uFF1A${o||""}`)),navigator.clipboard&&!t?navigator.clipboard.writeText(e).catch(o=>{throw n(o.message),o}):new Promise((o,r)=>{let s=document.createElement("input");s.value=e,s.style.cssText="position:fixed;left:0;top:0;opacity:0;",document.body.appendChild(s),s.select();try{if(document.execCommand("copy"))o();else{let l="Failed to execute 'document.execCommand'.";n(l),r(new Error(l))}}catch(l){n(l.message),r(l)}finally{document.body.removeChild(s)}})},F=e=>{if(!e||e.length<17)throw new Error("\u4F20\u5165\u7684\u8EAB\u4EFD\u8BC1\u53F7\u957F\u5EA6\u5FC5\u987B>=17");let n=[7,9,10,5,8,4,2,1,6,3,7,9,10,5,8,4,2],t=["1","0","X","9","8","7","6","5","4","3","2"],o=0;for(let r=0;r<17;r++)o+=parseInt(e.charAt(r),10)*n[r];return t[o%11]},re=e=>!e||e.length!==18?(console.error("\u8EAB\u4EFD\u8BC1\u53F7\u4E0D\u662F18\u4F4D\uFF01"),!1):`${F(e)}`===e.charAt(17),oe=(()=>{let e={backspace:8,tab:9,clear:12,enter:13,shift:16,ctrl:17,alt:18,esc:27,space:32,pageup:33,pagedown:34,end:35,home:36,left:37,up:38,right:39,down:40,insert:45,delete:46};for(let n=48;n<=57;n++)e[String.fromCharCode(n)]=n;for(let n=65;n<=90;n++)e[String.fromCharCode(n).toLowerCase()]=n;for(let n=96;n<=105;n++)e[`num${n-96}`]=n;for(let n=112;n<=123;n++)e[`f${n-111}`]=n;return e})();var C=(e,n=location.search)=>(new RegExp(`(^|\\?|&)${e}=(.*?)(?=&|#|$)`,"g").exec(n)||[])[2],se=(e,n=location.search)=>parseInt(C(e,n)||"0",10),ie=(e=location.search)=>{let n=((e||"").split("?").pop()||"").split("#")[0]||"",t={};return n.split("&").map(o=>o.split("=")).forEach(([o,r])=>{t[o]=r||""}),t},ae=(e,n,t)=>{if(t=t||`${location.pathname}${location.search}`,C(e,t)!==void 0)return t.replace(new RegExp(`(^|\\?|&)${e}=(.*?)(?=&|#|$)`,"g"),`$1${e}=${n}`);let[o,r]=t.split("#");return`${o}${o.indexOf("?")<0?"?":"&"}${e}=${n}${r?"#":""}${r||""}`},ce=(e,n)=>(n=n||`${location.pathname}${location.search}`,n.replace(new RegExp(`(^|\\?|&)${e}=.*?(&|#|$)`,"g"),(t,o,r)=>r==="&"?o:r)),T=e=>Object.keys(e||{}).filter(n=>e[n]!==void 0).map(n=>{let t=typeof e[n]=="object"?JSON.stringify(e[n]):e[n];return`${encodeURIComponent(n)}=${encodeURIComponent(t)}`}).join("&");var E=(e,n)=>{let t=Object.assign({},(e==null?void 0:e.headers)||{},(n==null?void 0:n.headers)||{}),o=Object.assign({},(e==null?void 0:e.fetchOptions)||{},(n==null?void 0:n.fetchOptions)||{});return Object.assign({},e||{},n||{},{headers:t,fetchOptions:o})},S=class extends Error{constructor(n,t){super(n),Object.assign(this,t||{})}},I=async(e,n)=>{var x,D;n=E({errorMessage:"\u7CFB\u7EDF\u7E41\u5FD9\uFF0C\u8BF7\u7A0D\u540E\u518D\u8BD5",errorHandler:i=>{var $;throw!(n!=null&&n.silent)&&i&&(($=n==null?void 0:n.toastHandler)==null||$.call(n,i)),new Error(i)},baseUrl:"",headers:{},fetchOptions:{credentials:"include"},checkSuccess:i=>(i==null?void 0:i.code)==0||(i==null?void 0:i.code)==200,toastHandler:i=>console.error(`[\u60A8\u8FD8\u6CA1\u6709\u914D\u7F6EtoastHandler\uFF0C\u8BF7\u6839\u636E\u60A8\u7684UI\u7EC4\u4EF6\u5E93\u914D\u7F6E\u5408\u9002\u7684\u63D0\u793A\u65B9\u6CD5] ${i||""}`),onFetchResponse:i=>{if(i.status===200)return i.json();throw new S(i.statusText,{response:H(O({},i),{code:i.status,message:i.statusText,isHttpResponse:!0})})}},n);let{params:o,data:r,formData:s,json:l,method:g,headers:d,baseUrl:w,fetchOptions:u,checkSuccess:a,afterRequest:c,errorHandler:p,errorMessage:k,responseConverter:m,onFetchResponse:h,setLoading:b,overrideMessage:R}=n||{},y=(n==null?void 0:n.defaultErrorMessage)||k;if(u.headers=O(O({},d||{}),u.headers||{}),o&&(u.method=g||"GET",e=`${e}${e.indexOf("?")>=0?"&":"?"}${T(o)}`),r)Object.assign(u,{method:g||"POST",body:T(r),headers:O({"Content-Type":"application/x-www-form-urlencoded;charset=utf-8"},u.headers||{})});else if(s){let i=s;if(!(s instanceof FormData)){i=new FormData;for(let $ in s)i.append($,s[$])}Object.assign(u,{method:g||"POST",body:i})}else l&&Object.assign(u,{method:g||"POST",body:JSON.stringify(l),headers:O({"Content-Type":"application/json;charset=utf-8"},u.headers||{})});let f=null;b==null||b(!0);try{let i=`${/^(http|\/\/)/g.test(e)?"":w||""}${e}`;i.indexOf("//")===0&&location.protocol==="blob:"&&(i=`${(x=location.pathname.split(":"))==null?void 0:x[0]}:${i}`),f=await fetch(i,u).then(h)}catch(i){console.error(i),b==null||b(!1),c==null||c(!1,i.response);let $=typeof R=="function"?R(i.response):R;p==null||p($!=null?$:((D=i.response)==null?void 0:D.message)||y,i.response,n);return}if(b==null||b(!1),f=m?m(f):f,a!=null&&a(f))return c==null||c(!0,f),f.data;{c==null||c(!1,f);let i=typeof R=="function"?R(f):R;p==null||p(i!=null?i:f.message||y,f,n);return}},U=function(e){let n=E(this.overrideDefaultOptions,e),t=(o,r)=>I(o,E(n,r));return t.overrideDefaultOptions=n,t.create=U.bind(t),t};I.create=U.bind(I);var le=function(e,n){let t=n;return n||(t=e,e=I),(o,r)=>e(o,O(O({},t||{}),r||{}))};var ue=(e,n)=>{if(!e)return"";if(typeof e=="number")e=new Date(e);else if(typeof e=="string")if(/^\d{12,13}$/g.test(e))e=new Date(parseInt(e,10));else if(/^.{10}T.{8,12}Z?$/g.test(e)||/^\d{4}-\d{2}-\d{2} \d{2}:\d{2}:\d{2}$/g.test(e))e=new Date(e);else return e;if(!(e instanceof Date))throw new Error("formatDate error: not date.");if(isNaN(e==null?void 0:e.getFullYear()))throw new Error("formatDate error: invalid date.");n=n||"yyyy-MM-dd HH:mm:ss";let t={y:e.getFullYear(),M:e.getMonth()+1,d:e.getDate(),q:Math.floor((e.getMonth()+3)/3),w:e.getDay(),H:e.getHours(),h:e.getHours()%12===0?12:e.getHours()%12,m:e.getMinutes(),s:e.getSeconds(),S:e.getMilliseconds()},o=["\u5929","\u4E00","\u4E8C","\u4E09","\u56DB","\u4E94","\u516D"];for(let r in t)n=n.replace(new RegExp(`${r}+`,"g"),s=>{let l=`${t[r]}`;if(r==="w")return`${s.length>2?"\u661F\u671F":"\u5468"}${o[l]}`;for(let g=0,d=l.length;g<s.length-d;g++)l=`0${l}`;return s.length===1?l:l.substring(l.length-s.length)});return n},ge=(e,n)=>{n=n||"yyyy-MM-dd";let t={y:0,M:1,d:0,H:0,h:0,m:0,s:0,S:0};n.replace(/([^yMdHmsS]*?)(([yMdHmsS])\3*)([^yMdHmsS]*?)/g,(r,s,l,g,d)=>(e=e.replace(new RegExp(`${s}(\\d{${l.length}})${d}`),(w,u)=>(t[g]=parseInt(u,10),"")),"")),t.M--;let o=new Date(t.y,t.M,t.d,t.H,t.m,t.s);return t.S!==0&&o.setMilliseconds(t.S),o},de=e=>new Promise(n=>setTimeout(n,e||0)),pe=(e,n="d:hh:mm:ss")=>{let t={d:Math.floor(e/86400),h:Math.floor(e%86400/3600),m:Math.floor(e%3600/60),s:e%60};t.h===0?n=n.replace(/^[^m]+/g,""):t.d===0&&(n=n.replace(/^[^h]+/g,""));for(let o in t)n=n.replace(new RegExp(`${o}+`,"g"),r=>{let s=`${t[o]}`;return r.length>1?s.padStart(r.length,"0"):s});return n},B=e=>(e===void 0&&(e=new Date),e instanceof Date&&(e=e.getFullYear()),e%4===0&&e%100!==0||e%400===0),fe=(e,n)=>{let t=n-1;e=e||new Date,e instanceof Date&&(n=e.getMonth(),e=e.getFullYear());let o=[31,28,31,30,31,30,31,31,30,31,30,31];return t===1&&B(e)?o[t]+1:o[t]};var me=(json,indent,leftBracesInSameLine)=>{function getIndentStr(e){let n="";for(let t=0;t<e;t++)n+=indent||" ";return n}function format(e,n){n=n===void 0?0:n;let t="";if(typeof e=="object"&&e!=null){let o=e instanceof Array,r=0;t+=`${o?"[":"{"}
|
|
52
|
-
`;for(let s in e){t+=r++>0?`,
|
|
53
|
-
`:"";let l=typeof e[s]=="object"&&e[s]!=null,g=getIndentStr(n+1);t+=o&&l?"":g,t+=o?"":`"${s}": ${l&&!leftBracesInSameLine?`
|
|
54
|
-
`:""}`,t+=!l||l&&leftBracesInSameLine&&!o?"":g,t+=format(e[s],n+1)}t+=`
|
|
55
|
-
${getIndentStr(n)}${o?"]":"}"}`}else{let o=typeof e=="string"?'"':"";t+=`${o}${e}${o}`}return t}return format(eval(`(${json})`))},N=(e,n)=>typeof e=="number"?(typeof n=="undefined"&&(n=e,e=0),e+Math.floor(Math.random()*(n-e))):e instanceof Array?typeof n=="undefined"?e.length===0?null:e.length===1?e[0]:e[Math.floor(Math.random()*e.length)]:(e.sort(()=>Math.random()>.5?1:-1),e.slice(0,n)):Math.random(),ye=(e,n)=>{e=e||18;let t="ABCDEFGHIJKLMNOPQRSTUVWXYZ_abcdefghijklmnopqrstuvwxyz0123456789".split("");n==="number"&&(t="0123456789".split(""));let o="";for(let r=0;r<e;r++)o+=N(t);return o},he=(e,n)=>e.replace(/([A-Z])/g,(t,o)=>`${n||"_"}${o.toLowerCase()}`),be=(e,n)=>e.replace(new RegExp(`${n||"_"}(\\w)`,"g"),(t,o)=>o.toUpperCase());var xe=e=>{let n=document.createElement("a");n.href=e,n.target="_blank",n.click()};var we=e=>{let n=new RegExp(`(^|;| )${encodeURIComponent(e)}=([^;]*)(;|$)`,"g").exec(document.cookie);return decodeURIComponent((n==null?void 0:n[2])||"")},A=(e,n,t)=>{let{days:o,path:r,domain:s,secure:l,sameSite:g}=Object.assign({days:30,path:"/"},t||{}),d=`${encodeURIComponent(e)}=${encodeURIComponent(n)}`;o&&(d+=`; expires=${new Date(Date.now()+o*24*3600*1e3).toUTCString()}`),r&&(d+=`; path=${r}`),s&&(d+=`; domain=${s}`),l&&(d+="; secure"),g&&(d+=`; sameSite=${g}`),document.cookie=d},$e=(e,n,t)=>{A(e,null,{days:-1,path:n,domain:t})};return G(ke);})();
|
|
57
|
+
</div>`,c){let u=g.querySelector(".cancel");u&&u.addEventListener("click",()=>{T(),c()})}g.addEventListener("click",()=>{T()}),g.style.display="flex",g.style.background=s?i:"transparent",g.className=`${r} ${s?"show-mask":""}`,t>0&&(window[h]=setTimeout(()=>{T()},t*1e3))},T=()=>{let t=document.getElementById("com_global_page_loading");t&&(t.style.display="none")};function xe(e,t){!t&&window!==window.parent&&(t=window.parent),!t&&window.opener&&(t=window.opener);let n=new Map,o=new Map,r=()=>Math.random().toString(36).substring(2),s={},i="_local_function_";function c(l){let u=`${i}${r()}`;return s[u]=l,u}let p=(l,u)=>(l==null?void 0:l.map(f=>{if(typeof f=="object")for(let k in f)f[k]=u(f[k]);return u(f)}))||[];function h(l,...u){if(!t){console.warn("TargetWindow is null.");return}return new Promise((f,k)=>{let m=r();n.set(m,{resolve:f,reject:k}),t.postMessage({scene:e,type:"event",eventName:l,payload:p(u,b=>typeof b=="function"?c(b):b),callbackId:m},"*")})}window.addEventListener("message",async l=>{if(!l.data||l.data.scene!==e)return;t=l.source;let{type:u,eventName:f,payload:k,callbackId:m}=l.data;if(u==="event"){let b=p(k,y=>{if(typeof y=="string"&&y.startsWith(i)){let R=`getFn_${y}`;return(...d)=>h("executeLocalFunction",R,...d)}return y}),x=o.get(f)||[],M=o.get("*")||[];try{let y=await Promise.all(x.map(d=>Promise.resolve(d(...b)))),R=await Promise.all(M.map(d=>Promise.resolve(d(f,...b))));if(m){let d=y[y.length-1]||R[R.length-1];if(!x.length&&!d)return;t.postMessage({scene:e,type:"callback",callbackId:m,payload:d},"*")}}catch(y){console.error(y),m&&t.postMessage({scene:e,type:"callback",callbackId:m,error:y||"unknown error"},"*")}}else if(u==="callback"&&m){let b=n.get(m);b&&(l.data.error?b.reject(l.data.error):b.resolve(l.data.payload),n.delete(m))}});function g(l,u){o.has(l)||o.set(l,[]),o.get(l).push(u)}return g("executeLocalFunction",(l,...u)=>{if(l=(l==null?void 0:l.replace("getFn_",""))||"",!s[l])throw new Error(`\u672A\u627E\u5230\u672C\u5730\u7F13\u5B58\u65B9\u6CD5\uFF1A${l}`);return s[l](...u)}),h("auto-connect"),{postMessage:h,onMessage:g}}var we=e=>!e||typeof e!="object"?e:JSON.parse(JSON.stringify(e)),V=e=>{if(typeof e=="string"){let t=document.createElement("div");return t.innerText=e,t.innerHTML}else if(typeof e=="object"&&e)for(let t in e)e[t]=V(e[t]);return e},X=e=>{if(typeof e=="string"){let t=document.createElement("div");return t.innerHTML=e,t.innerText}else if(typeof e=="object"&&e)for(let t in e)e[t]=X(e[t]);return e},$e=(e,t,n)=>{if(!e)throw new Error("text can not be empty.");return t=t||(o=>console.error(`\u590D\u5236\u5230\u526A\u8D34\u677F\u5931\u8D25\uFF1A${o||""}`)),navigator.clipboard&&!n?navigator.clipboard.writeText(e).catch(o=>{throw t(o.message),o}):new Promise((o,r)=>{let s=document.createElement("input");s.value=e,s.style.cssText="position:fixed;left:0;top:0;opacity:0;",document.body.appendChild(s),s.select();try{if(document.execCommand("copy"))o();else{let i="Failed to execute 'document.execCommand'.";t(i),r(new Error(i))}}catch(i){t(i.message),r(i)}finally{document.body.removeChild(s)}})},Y=e=>{if(!e||e.length<17)throw new Error("\u4F20\u5165\u7684\u8EAB\u4EFD\u8BC1\u53F7\u957F\u5EA6\u5FC5\u987B>=17");let t=[7,9,10,5,8,4,2,1,6,3,7,9,10,5,8,4,2],n=["1","0","X","9","8","7","6","5","4","3","2"],o=0;for(let r=0;r<17;r++)o+=parseInt(e.charAt(r),10)*t[r];return n[o%11]},ke=e=>!e||e.length!==18?(console.error("\u8EAB\u4EFD\u8BC1\u53F7\u4E0D\u662F18\u4F4D\uFF01"),!1):`${Y(e)}`===e.charAt(17),Me=(()=>{let e={backspace:8,tab:9,clear:12,enter:13,shift:16,ctrl:17,alt:18,esc:27,space:32,pageup:33,pagedown:34,end:35,home:36,left:37,up:38,right:39,down:40,insert:45,delete:46};for(let t=48;t<=57;t++)e[String.fromCharCode(t)]=t;for(let t=65;t<=90;t++)e[String.fromCharCode(t).toLowerCase()]=t;for(let t=96;t<=105;t++)e[`num${t-96}`]=t;for(let t=112;t<=123;t++)e[`f${t-111}`]=t;return e})();var D=(e,t=location.search)=>(new RegExp(`(^|\\?|&)${e}=(.*?)(?=&|#|$)`,"g").exec(t)||[])[2],Re=(e,t=location.search)=>parseInt(D(e,t)||"0",10),L=(e=location.search)=>{let t=((e||"").split("?").pop()||"").split("#")[0]||"",n={};return t.split("&").map(o=>o.split("=")).forEach(([o,r])=>{n[o]=r||""}),n},Oe=(e,t,n)=>{if(n=n||`${location.pathname}${location.search}`,D(e,n)!==void 0)return n.replace(new RegExp(`(^|\\?|&)${e}=(.*?)(?=&|#|$)`,"g"),`$1${e}=${t}`);let[o,r]=n.split("#");return`${o}${o.indexOf("?")<0?"?":"&"}${e}=${t}${r?"#":""}${r||""}`},ve=(e,t)=>(t=t||`${location.pathname}${location.search}`,t.replace(new RegExp(`(^|\\?|&)${e}=.*?(&|#|$)`,"g"),(n,o,r)=>r==="&"?o:r)),S=e=>Object.keys(e||{}).filter(t=>e[t]!==void 0).map(t=>{let n=typeof e[t]=="object"?JSON.stringify(e[t]):e[t];return`${encodeURIComponent(t)}=${encodeURIComponent(n)}`}).join("&");var Ie=(e,t)=>{if(!e)return"";if(typeof e=="number")e=new Date(e);else if(typeof e=="string")if(/^\d{12,13}$/g.test(e))e=new Date(parseInt(e,10));else if(/^.{10}T.{8,12}Z?$/g.test(e)||/^\d{4}-\d{2}-\d{2} \d{2}:\d{2}:\d{2}$/g.test(e))e=new Date(e);else return e;if(!(e instanceof Date))throw new Error("formatDate error: not date.");if(isNaN(e==null?void 0:e.getFullYear()))throw new Error("formatDate error: invalid date.");t=t||"yyyy-MM-dd HH:mm:ss";let n={y:e.getFullYear(),M:e.getMonth()+1,d:e.getDate(),q:Math.floor((e.getMonth()+3)/3),w:e.getDay(),H:e.getHours(),h:e.getHours()%12===0?12:e.getHours()%12,m:e.getMinutes(),s:e.getSeconds(),S:e.getMilliseconds()},o=["\u5929","\u4E00","\u4E8C","\u4E09","\u56DB","\u4E94","\u516D"];for(let r in n)t=t.replace(new RegExp(`${r}+`,"g"),s=>{let i=`${n[r]}`;if(r==="w")return`${s.length>2?"\u661F\u671F":"\u5468"}${o[i]}`;for(let c=0,p=i.length;c<s.length-p;c++)i=`0${i}`;return s.length===1?i:i.substring(i.length-s.length)});return t},Ce=(e,t)=>{t=t||"yyyy-MM-dd";let n={y:0,M:1,d:0,H:0,h:0,m:0,s:0,S:0};t.replace(/([^yMdHmsS]*?)(([yMdHmsS])\3*)([^yMdHmsS]*?)/g,(r,s,i,c,p)=>(e=e.replace(new RegExp(`${s}(\\d{${i.length}})${p}`),(h,g)=>(n[c]=parseInt(g,10),"")),"")),n.M--;let o=new Date(n.y,n.M,n.d,n.H,n.m,n.s);return n.S!==0&&o.setMilliseconds(n.S),o},F=e=>new Promise(t=>setTimeout(t,e||0)),Ee=(e,t="d:hh:mm:ss")=>{let n={d:Math.floor(e/86400),h:Math.floor(e%86400/3600),m:Math.floor(e%3600/60),s:e%60};n.h===0?t=t.replace(/^[^m]+/g,""):n.d===0&&(t=t.replace(/^[^h]+/g,""));for(let o in n)t=t.replace(new RegExp(`${o}+`,"g"),r=>{let s=`${n[o]}`;return r.length>1?s.padStart(r.length,"0"):s});return t},Z=e=>(e===void 0&&(e=new Date),e instanceof Date&&(e=e.getFullYear()),e%4===0&&e%100!==0||e%400===0),Te=(e,t)=>{let n=t-1;e=e||new Date,e instanceof Date&&(t=e.getMonth(),e=e.getFullYear());let o=[31,28,31,30,31,30,31,31,30,31,30,31];return n===1&&Z(e)?o[n]+1:o[n]};var O=[],q={timeout:"200-400",debug:!0,overrideMode:!0},z=(e,t)=>{if(!t)throw new Error("\u7B2C\u4E8C\u4E2A\u53C2\u6570\u4E0D\u80FD\u4E3A\u7A7A\uFF01");let n=t;n instanceof Function||(n=()=>t),O.push({url:e,cb:n})},G=()=>{O=[]},Q=e=>{Object.assign(q,e||{})},Se=e=>{var s,i;let t=(e.method||"get").toLowerCase(),{url:n,body:o}=e,r={};if(t==="get")(n.split("?")[1]||"").split("&").map(c=>c.split("=")).forEach(([c,p])=>{r[c]=decodeURIComponent(p)});else if(t==="post")try{let c=((s=e.headers)==null?void 0:s["Content-Type"])||((i=e.headers)==null?void 0:i["content-type"]);(c==null?void 0:c.indexOf("json"))>0?r=JSON.parse(o||"{}"):r=L(`?${o||""}`)}catch(c){console.error(c)}return r},W=async(e,t)=>{var r;if(!(O!=null&&O.length))return;let n=E(w({url:e},t),{params:{}});n.params=Se(n);let o=q.overrideMode?O.reverse():O;for(let s of o)if((e==null?void 0:e.indexOf(s.url))>=0){let i=q.timeout||0;if(typeof i=="string"){let p=i.split("-").map(h=>parseInt(h,10));i=p[0]+Math.round(Math.random()*(p[1]-p[0]))}await F(i);let c=await((r=s.cb)==null?void 0:r.call(s,n));if(q.debug&&(console.log(`\u547D\u4E2Dmock\u89C4\u5219\uFF1A${s.url}`),console.log("mock\u5165\u53C2\uFF1A",n),console.log("mock\u51FA\u53C2\uFF1A",c)),c)return c}};var P=(e,t)=>{let n=Object.assign({},(e==null?void 0:e.headers)||{},(t==null?void 0:t.headers)||{}),o=Object.assign({},(e==null?void 0:e.fetchOptions)||{},(t==null?void 0:t.fetchOptions)||{});return Object.assign({},e||{},t||{},{headers:n,fetchOptions:o})},H=class extends Error{constructor(t,n){super(t),Object.assign(this,n||{})}},I=async(e,t)=>{var _,B;t=P({errorMessage:"\u7CFB\u7EDF\u7E41\u5FD9\uFF0C\u8BF7\u7A0D\u540E\u518D\u8BD5",errorHandler:a=>{var $;throw!(t!=null&&t.silent)&&a&&(($=t==null?void 0:t.toastHandler)==null||$.call(t,a)),new Error(a)},baseUrl:"",headers:{},fetchOptions:{credentials:"include"},checkSuccess:a=>(a==null?void 0:a.code)==0||(a==null?void 0:a.code)==200,toastHandler:a=>console.error(`[\u60A8\u8FD8\u6CA1\u6709\u914D\u7F6EtoastHandler\uFF0C\u8BF7\u6839\u636E\u60A8\u7684UI\u7EC4\u4EF6\u5E93\u914D\u7F6E\u5408\u9002\u7684\u63D0\u793A\u65B9\u6CD5] ${a||""}`),onFetchResponse:a=>{if(a.status===200)return a.json();throw new H(a.statusText,{response:E(w({},a),{code:a.status,message:a.statusText,isHttpResponse:!0})})}},t);let{params:o,data:r,formData:s,json:i,method:c,headers:p,baseUrl:h,fetchOptions:g,checkSuccess:l,afterRequest:u,errorHandler:f,errorMessage:k,responseConverter:m,onFetchResponse:b,setLoading:x,overrideMessage:M,signal:y}=t||{},R=(t==null?void 0:t.defaultErrorMessage)||k;if(g.headers=w(w({},p||{}),g.headers||{}),!g.signal&&y&&(g.signal=y),o&&(g.method=c||"GET",e=`${e}${e.indexOf("?")>=0?"&":"?"}${S(o)}`),r)Object.assign(g,{method:c||"POST",body:S(r),headers:w({"Content-Type":"application/x-www-form-urlencoded;charset=utf-8"},g.headers||{})});else if(s){let a=s;if(!(s instanceof FormData)){a=new FormData;for(let $ in s)a.append($,s[$])}Object.assign(g,{method:c||"POST",body:a})}else i&&Object.assign(g,{method:c||"POST",body:JSON.stringify(i),headers:w({"Content-Type":"application/json;charset=utf-8"},g.headers||{})});let d=null;x==null||x(!0);try{let a=`${/^(http|\/\/)/g.test(e)?"":h||""}${e}`;a.indexOf("//")===0&&location.protocol==="blob:"&&(a=`${(_=location.pathname.split(":"))==null?void 0:_[0]}:${a}`),d=await W(a,g),d||(d=await fetch(a,g).then(b))}catch(a){console.error(a),x==null||x(!1),u==null||u(!1,a.response);let $=typeof M=="function"?M(a.response):M;f==null||f($!=null?$:((B=a.response)==null?void 0:B.message)||R,a.response,t);return}if(x==null||x(!1),d=m?m(d):d,l!=null&&l(d))return u==null||u(!0,d),d.data;{u==null||u(!1,d);let a=typeof M=="function"?M(d):M;f==null||f(a!=null?a:d.message||R,d,t);return}},ee=function(e){let t=P(this.overrideDefaultOptions,e),n=(o,r)=>I(o,P(t,r));return n.overrideDefaultOptions=t,n.create=ee.bind(n),n};I.create=ee.bind(I);var qe=function(e,t){let n=t;return t||(n=e,e=I),(o,r)=>e(o,w(w({},n||{}),r||{}))};var te=(e,t)=>typeof e=="number"?(typeof t=="undefined"&&(t=e,e=0),e+Math.floor(Math.random()*(t-e))):e instanceof Array?typeof t=="undefined"?e.length===0?null:e.length===1?e[0]:e[Math.floor(Math.random()*e.length)]:(e.sort(()=>Math.random()>.5?1:-1),e.slice(0,t)):Math.random(),je=(e,t)=>{e=e||18;let n="ABCDEFGHIJKLMNOPQRSTUVWXYZ_abcdefghijklmnopqrstuvwxyz0123456789".split("");t==="number"&&(n="0123456789".split(""));let o="";for(let r=0;r<e;r++)o+=te(n);return o},De=(e,t)=>e.replace(/([A-Z])/g,(n,o)=>`${t||"_"}${o.toLowerCase()}`),Le=(e,t)=>e.replace(new RegExp(`${t||"_"}(\\w)`,"g"),(n,o)=>o.toUpperCase());var Fe=e=>{let t=document.createElement("a");t.href=e,t.target="_blank",t.click()};return le(Pe);})();
|
package/dist/types/enum.d.ts
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
|
|
1
|
+
interface EnumItem<K extends string, V extends string | number> {
|
|
2
2
|
/** 显示出来的名称 */
|
|
3
3
|
label: string;
|
|
4
4
|
/** 实际传递的值 */
|
|
@@ -6,8 +6,8 @@ export type EnumItem<K extends string, V extends string | number> = {
|
|
|
6
6
|
/** 方便记忆的英文别名,可选 */
|
|
7
7
|
key?: K;
|
|
8
8
|
[key: string]: any;
|
|
9
|
-
}
|
|
10
|
-
export type EnumType<T extends
|
|
9
|
+
}
|
|
10
|
+
export type EnumType<T extends Array<EnumItem<string, string | number>>> = T & {
|
|
11
11
|
[K in T[number]['key']]: Extract<T[number], {
|
|
12
12
|
key: K;
|
|
13
13
|
}>['value'];
|
|
@@ -35,4 +35,5 @@ export type EnumType<T extends ReadonlyArray<EnumItem<string, string | number>>>
|
|
|
35
35
|
* @param items
|
|
36
36
|
* @returns
|
|
37
37
|
*/
|
|
38
|
-
export declare function createEnum<T extends
|
|
38
|
+
export declare function createEnum<T extends Array<EnumItem<string, string | number>>>(items: T): EnumType<T>;
|
|
39
|
+
export {};
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* 格式化一段JSON字符串,支持解析非标准JSON
|
|
3
|
+
* 不同于绝大多数格式化工具,本方法支持设置缩进方式以及左大括号是否换行
|
|
4
|
+
* @start 2016-08-24
|
|
5
|
+
* @param {Object} json 要格式化的json串
|
|
6
|
+
* @param {Object} indent 缩进方式,可以是若干个空格和tab,默认tab缩进,如 2个空格:" "、4个空格:" "、tab:" "
|
|
7
|
+
* @param {Object} leftBracesInSameLine 左大括号是否保持在同一行,默认 false
|
|
8
|
+
*/
|
|
9
|
+
export declare const formatJson: (json: string, indent?: string, leftBracesInSameLine?: boolean) => string;
|
|
10
|
+
/**
|
|
11
|
+
* 将数字格式化成更易读取的格式,例如 189、3.8万、427万、29亿
|
|
12
|
+
* @param number 要格式化的数字
|
|
13
|
+
* @returns 返回格式化后的数字
|
|
14
|
+
*/
|
|
15
|
+
export declare const formatNumber: (number?: number | string) => string | number;
|
|
16
|
+
/**
|
|
17
|
+
* 将小数格式化成百分比
|
|
18
|
+
* @param num 小数
|
|
19
|
+
* @param toFixedValue 精确到小数点数量
|
|
20
|
+
*/
|
|
21
|
+
export declare const formatPercent: (num: number | string, toFixedValue?: number) => string | number;
|
package/dist/types/index.d.ts
CHANGED
|
@@ -1,10 +1,12 @@
|
|
|
1
|
+
export * from './cookie';
|
|
1
2
|
export * from './enum';
|
|
3
|
+
export * from './format';
|
|
2
4
|
export * from './loading';
|
|
3
5
|
export * from './message';
|
|
6
|
+
export * from './number';
|
|
4
7
|
export * from './other';
|
|
5
8
|
export * from './param';
|
|
6
9
|
export * from './request';
|
|
7
|
-
export * from './time';
|
|
8
10
|
export * from './string';
|
|
11
|
+
export * from './time';
|
|
9
12
|
export * from './web';
|
|
10
|
-
export * from './cookie';
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
export interface MockConfig {
|
|
2
|
+
/** 超时时间,支持传入类似 '200-400' 或者 300 这2种格式 */
|
|
3
|
+
timeout?: string | number;
|
|
4
|
+
/** 是否开启 debug 模式,开启会输出一些调试日志,默认 true */
|
|
5
|
+
debug?: boolean;
|
|
6
|
+
/** 是否开启覆盖模式,如果开启,后续的规则会覆盖前面的,默认 true */
|
|
7
|
+
overrideMode?: boolean;
|
|
8
|
+
}
|
|
9
|
+
export interface MockRequestOptions {
|
|
10
|
+
url: string;
|
|
11
|
+
method: string;
|
|
12
|
+
params: any;
|
|
13
|
+
}
|
|
14
|
+
/**
|
|
15
|
+
* mock一个请求
|
|
16
|
+
* @param url
|
|
17
|
+
* @param cb
|
|
18
|
+
*/
|
|
19
|
+
export declare const mockRequest: (url: string, resp: any | ((options: MockRequestOptions) => any)) => void;
|
|
20
|
+
/**
|
|
21
|
+
* 重置mock
|
|
22
|
+
*/
|
|
23
|
+
export declare const resetMock: () => void;
|
|
24
|
+
/**
|
|
25
|
+
* 配置mock参数
|
|
26
|
+
* @param options
|
|
27
|
+
*/
|
|
28
|
+
export declare const configMock: (options: MockConfig) => void;
|
|
29
|
+
/** 解析已经存储的 mock 规则 */
|
|
30
|
+
export declare const parseMock: (url: string, _options: RequestInit) => Promise<any>;
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* 初始化 big.js,在执行数学相关的函数前必须执行一次本方法:
|
|
3
|
+
* import Big from 'big.js';
|
|
4
|
+
* initBigJs(Big);
|
|
5
|
+
* @param Big 从 big.js 导入的对象
|
|
6
|
+
*/
|
|
7
|
+
export declare const initBigJs: (Big: any) => void;
|
|
8
|
+
/**
|
|
9
|
+
* 不会丢失精度的计算数学表达式
|
|
10
|
+
* 注意,由于 youtil 承诺不会在代码中依赖任何第三方模块,调用前需要确保 window.Big 存在
|
|
11
|
+
* @param exp 计算表达式,例如 '3.14+8.99',注意仅支持单次运算
|
|
12
|
+
* @param toFixedDigits 对结果进行四舍五入需要保留的小数点,不传忽略四舍五入
|
|
13
|
+
* @returns 返回字符串
|
|
14
|
+
*/
|
|
15
|
+
export declare const calculate: (exp: string, toFixedDigits?: number) => any;
|
|
16
|
+
/**
|
|
17
|
+
* 替代浏览器自带toFixed,会进行正确的四舍五入
|
|
18
|
+
* @param num 要加工的数字
|
|
19
|
+
* @param fractionDigits 保留的小数点位数
|
|
20
|
+
* @returns 返回四舍五入后的字符串
|
|
21
|
+
*/
|
|
22
|
+
export declare const toFixed: (num: string | number, fractionDigits?: number) => any;
|
package/dist/types/request.d.ts
CHANGED
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
export { mockRequest, resetMock, configMock } from './mockRequest';
|
|
1
2
|
/** requestAPI的第二个参数类型 */
|
|
2
3
|
export interface IRequestOptions {
|
|
3
4
|
/** GET请求时传递的参数 */
|
|
@@ -38,6 +39,8 @@ export interface IRequestOptions {
|
|
|
38
39
|
setLoading?: (loading?: boolean) => void;
|
|
39
40
|
/** 覆盖默认的 resp.message 自定义异常抛出文案,也支持传入方法,注意返回''和undefined效果不同 */
|
|
40
41
|
overrideMessage?: string | ((resp: any) => string);
|
|
42
|
+
/** 如需允许手动终止请求,请传入 signal */
|
|
43
|
+
signal?: AbortSignal;
|
|
41
44
|
}
|
|
42
45
|
/**
|
|
43
46
|
* 通用的API请求方法
|
package/dist/types/string.d.ts
CHANGED
|
@@ -1,12 +1,3 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* 格式化一段JSON字符串,支持解析非标准JSON
|
|
3
|
-
* 不同于绝大多数格式化工具,本方法支持设置缩进方式以及左大括号是否换行
|
|
4
|
-
* @start 2016-08-24
|
|
5
|
-
* @param {Object} json 要格式化的json串
|
|
6
|
-
* @param {Object} indent 缩进方式,可以是若干个空格和tab,默认tab缩进,如 2个空格:" "、4个空格:" "、tab:" "
|
|
7
|
-
* @param {Object} leftBracesInSameLine 左大括号是否保持在同一行,默认 false
|
|
8
|
-
*/
|
|
9
|
-
export declare const formatJson: (json: string, indent?: string, leftBracesInSameLine?: boolean) => string;
|
|
10
1
|
/**
|
|
11
2
|
* 获取各种随机数,支持如下几种调用方式:
|
|
12
3
|
* getRandom() 返回0-1的随机小数,等同于Math.random(),0 <= result < 1
|