UNPKG

@hopeio/utils

Version:
2 lines (1 loc) 4.78 kB
"use strict";var m=Object.defineProperty;var I=(n,e,t)=>e in n?m(n,e,{enumerable:!0,configurable:!0,writable:!0,value:t}):n[e]=t;var d=(n,e,t)=>I(n,typeof e!="symbol"?e+"":e,t);Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const w=require("./index-Cw9KoE--.js"),h=require("axios");function A(n,e){n=n+"=";const r=decodeURIComponent(e).split(";");for(let s=0;s<r.length;s++){let o=r[s];for(;o.charAt(0)==="";)o=o.substring(1);if(o.indexOf(n)===0)return o.substring(n.length,o.length)}return""}async function q(n){try{return[null,await n()]}catch(e){return[e,null]}}function j(n){const e=new Array(2);return n().catch(t=>{e[0]=t}).then(t=>{e[1]=t}),e}function T(n){let e,t;return n().catch(r=>e=r).then(r=>t=r),[e,t]}function M(n="",e={}){return fetch(n,{method:"POST",mode:"cors",cache:"no-cache",headers:{"Content-Type":"application/json; charset=utf-8"},redirect:"follow",referrer:"no-referrer",body:JSON.stringify(e)}).then(t=>t.json())}const O=()=>typeof window<"u"?window:w.global;function U(n){return Object.entries(n).map(([e,t])=>Array.isArray(t)?t.map((r,s)=>encodeURIComponent(e)+"["+s+"]="+encodeURIComponent(r)).join("&"):encodeURIComponent(e)+"="+encodeURIComponent(t)).join("&")}function L(n,e){return n.reduce((t,r)=>{const s=e(r);return t.has(s)?t.get(s).push(r):t.set(s,[r]),t},new Map)}function P(n,e){return n.reduce((t,r)=>{const s=e(r);return t.has(s)?t.get(s).push(r):t.set(s,[r]),t},new Map)}const p=n=>{if(!Array.isArray(n))return console.warn("tree must be an array"),[];if(!n||n.length===0)return[];const e=[];for(const t of n)t.children&&t.children.length>0&&p(t.children),e.push(t.uniqueId);return e},f=(n,e=[])=>{if(!Array.isArray(n))return console.warn("menuTree must be an array"),[];if(!n||n.length===0)return[];for(const[t,r]of n.entries())r.children&&r.children.length===1&&delete r.children,r.id=t,r.parentId=e.length?e[e.length-1]:null,r.pathList=[...e,r.id],r.uniqueId=r.pathList.length>1?r.pathList.join("-"):r.pathList[0],r.children&&r.children.length>0&&f(r.children,r.pathList);return n},g=(n,e=[])=>{if(!Array.isArray(n))return console.warn("tree must be an array"),[];if(!n||n.length===0)return[];for(const[t,r]of n.entries())r.id=t,r.parentId=e.length?e[e.length-1]:null,r.pathList=[...e,r.id],r.children&&r.children.length>0&&g(r.children,r.pathList);return n},y=(n,e)=>{if(!Array.isArray(n))return console.warn("menuTree must be an array"),[];if(!n||n.length===0)return[];const t=n.find(s=>s.uniqueId===e);if(t)return t;const r=n.filter(s=>s.children).map(s=>s.children).flat(1);return y(r,e)},b=(n,e,t)=>{if(!Array.isArray(n))return console.warn("menuTree must be an array"),[];if(!n||n.length===0)return[];for(const r of n){const s=r.children&&r.children.length>0;r.uniqueId===e&&Object.prototype.toString.call(t)==="[object Object]"&&Object.assign(r,t),s&&b(r.children,e,t)}return n},x=(n,e,t,r)=>{if(!Array.isArray(n))return console.warn("data must be an array"),[];const s={id:e||"id",parentId:t||"parentId",childrenList:r||"children"},o={},l={},c=[];for(const i of n){const a=i[s.parentId];o[a]==null&&(o[a]=[]),l[i[s.id]]=i,o[a].push(i)}for(const i of n){const a=i[s.parentId];l[a]==null&&c.push(i)}for(const i of c)u(i);function u(i){if(o[i[s.id]]!==null&&(i[s.childrenList]=o[i[s.id]]),i[s.childrenList])for(const a of i[s.childrenList])u(a)}return c};function H(n,e){for(const t of e)n.set(t.id,t);return n}class R{constructor(){d(this,"_map",new Map)}append(e){for(const t of e)this._map.set(t.id,t)}get(e){return this._map.get(e)}set(e,t){this._map.set(e,t)}has(e){return this._map.has(e)}}class C{constructor(e){d(this,"defaults",h.defaults);d(this,"instance",h);d(this,"interceptors",{request:h.interceptors.request,response:h.interceptors.response});e&&(this.instance=h.create(e),this.defaults=this.instance.defaults,this.interceptors={request:this.instance.interceptors.request,response:this.instance.interceptors.response})}request(e,t,r){const s={method:e,url:t,...r};return new Promise((o,l)=>{this.instance.request(s).then(c=>{o(c.data)}).catch(c=>{l(c)})})}post(e,t){return this.request("post",e,t)}get(e,t){return this.request("get",e,t)}put(e,t){return this.request("put",e,t)}delete(e,t){return this.request("delete",e,t)}}const S=new C;function _(n){return fetch(n,{method:"HEAD",mode:"cors"}).then(e=>(console.log(e),!0)).catch(e=>(console.log(e),!1))}exports.Http=C;exports.ObjMap=R;exports.appendFieldByUniqueId=b;exports.appendObjMap=H;exports.arrayToMap=P;exports.arrayToMapArrValue=L;exports.buildHierarchyTree=g;exports.deleteChildren=f;exports.errCatch=T;exports.errCatch1=q;exports.errCatch2=j;exports.extractPathList=p;exports.getCookie=A;exports.getGlobal=O;exports.getNodeByUniqueId=y;exports.handleTree=x;exports.http=S;exports.post=M;exports.supportIPv6=_;exports.toUrlParams=U;