x-next 0.0.0-alpha.1 → 0.0.0-alpha.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (72) hide show
  1. package/LICENSE +21 -21
  2. package/README.md +93 -2
  3. package/dist/favicon.ico +0 -0
  4. package/dist/index.d.ts +0 -0
  5. package/dist/types/_hooks/use-overflow.d.ts +5 -0
  6. package/dist/types/_hooks/use-popup-manager.d.ts +11 -0
  7. package/dist/types/_props/css.d.ts +13 -0
  8. package/dist/types/_props/global.d.ts +1 -0
  9. package/dist/types/_utils/config.d.ts +9 -0
  10. package/dist/types/_utils/convert-case.d.ts +3 -0
  11. package/dist/types/_utils/dom.d.ts +10 -0
  12. package/dist/types/_utils/helpers.d.ts +12 -0
  13. package/dist/types/_utils/icon.d.ts +59 -0
  14. package/dist/types/_utils/is.d.ts +25 -0
  15. package/dist/types/_utils/keyboard.d.ts +24 -0
  16. package/dist/types/_utils/number.d.ts +0 -0
  17. package/dist/types/_utils/vue-eco.d.ts +32 -0
  18. package/dist/types/componets/button/index.vue.d.ts +107 -0
  19. package/dist/types/componets/button/props.d.ts +45 -0
  20. package/dist/types/componets/dialog/index.vue.d.ts +221 -0
  21. package/dist/types/componets/dialog/props.d.ts +83 -0
  22. package/dist/types/componets/dialog/use-props.d.ts +33 -0
  23. package/dist/types/componets/dialog/use.d.ts +3 -0
  24. package/dist/types/componets/dialog/warp.d.ts +2 -0
  25. package/dist/types/componets/message/index.vue.d.ts +116 -0
  26. package/dist/types/componets/message/props.d.ts +31 -0
  27. package/dist/types/componets/message/warp.d.ts +3 -0
  28. package/dist/types/componets/message-box/index.d.ts +3 -0
  29. package/dist/types/componets/message-box/props.d.ts +52 -0
  30. package/dist/types/componets/message-box/warp.d.ts +2 -0
  31. package/dist/types/componets/notification/index.vue.d.ts +160 -0
  32. package/dist/types/componets/notification/props.d.ts +54 -0
  33. package/dist/types/componets/notification/warp.d.ts +3 -0
  34. package/dist/types/componets/space/index.d.ts +42 -0
  35. package/dist/types/componets/tag-cloud/index.d.ts +0 -0
  36. package/dist/types/componets/trend-chart/components/trend-chart-curve.d.ts +114 -0
  37. package/dist/types/componets/trend-chart/components/trend-chart-grid.d.ts +55 -0
  38. package/dist/types/componets/trend-chart/components/trend-chart-labels.d.ts +22 -0
  39. package/dist/types/componets/trend-chart/components/trend-chart.d.ts +270 -0
  40. package/dist/types/componets/trend-chart/helpers/genPath.d.ts +8 -0
  41. package/dist/types/componets/trend-chart/helpers/genPoints.d.ts +3 -0
  42. package/dist/types/componets/trend-chart/helpers/getPadding.d.ts +7 -0
  43. package/dist/types/componets/trend-chart/helpers/validatePadding.d.ts +2 -0
  44. package/dist/types/componets/trend-chart/index.d.ts +2 -0
  45. package/dist/types/componets/trend-chart/props.d.ts +206 -0
  46. package/dist/types/icons/animation/animation-loading.vue.d.ts +55 -0
  47. package/dist/types/icons/default/check-circle-fill.vue.d.ts +55 -0
  48. package/dist/types/icons/default/close-circle-fill.vue.d.ts +55 -0
  49. package/dist/types/icons/default/exclamation-circle-fill.vue.d.ts +55 -0
  50. package/dist/types/icons/default/info-circle-fill.vue.d.ts +55 -0
  51. package/dist/types/icons/default/minus-circle-fill.vue.d.ts +55 -0
  52. package/dist/types/icons/index.d.ts +7 -0
  53. package/dist/types/ui.d.ts +5 -0
  54. package/dist/ui.cjs.js +2 -0
  55. package/dist/ui.es.js +1395 -0
  56. package/dist/ui.umd.js +3 -0
  57. package/package.json +64 -63
  58. package/framework/es/client.io.js +0 -2
  59. package/framework/es/client.io.js.map +0 -1
  60. package/framework/es/exception.d.ts +0 -25
  61. package/framework/es/index.d.ts +0 -2
  62. package/framework/es/types.d.ts +0 -33
  63. package/framework/es/util.d.ts +0 -36
  64. package/framework/es/websocket.d.ts +0 -118
  65. package/framework/umd/client.io.js +0 -2
  66. package/framework/umd/client.io.js.map +0 -1
  67. package/framework/umd/exception.d.ts +0 -25
  68. package/framework/umd/index.d.ts +0 -2
  69. package/framework/umd/types.d.ts +0 -33
  70. package/framework/umd/util.d.ts +0 -36
  71. package/framework/umd/websocket.d.ts +0 -118
  72. package/index.d.ts +0 -159
package/dist/ui.umd.js ADDED
@@ -0,0 +1,3 @@
1
+ (function(){"use strict";try{if(typeof document<"u"){var a=document.createElement("style");a.appendChild(document.createTextNode(".icon-loading-svg[data-v-62d46830]{animation:animated-loading-rotate-62d46830 1.5s infinite ease-in-out}.icon-loading-svg>.path[data-v-62d46830]{stroke:#fffc;stroke-width:5;animation:animated-loading-62d46830 1.5s infinite ease-in-out}@keyframes animated-loading-62d46830{0%{stroke-dasharray:1,125;stroke-dashoffset:0}50%{stroke-dasharray:95,31;stroke-dashoffset:-31px}to{stroke-dasharray:6,120;stroke-dashoffset:-120px}}@keyframes animated-loading-rotate-62d46830{to{transform:rotate(1turn)}}")),document.head.appendChild(a)}}catch(e){console.error("vite-plugin-css-injected-by-js",e)}})();
2
+ (function(B,t){typeof exports=="object"&&typeof module<"u"?t(exports,require("vue")):typeof define=="function"&&define.amd?define(["exports","vue"],t):(B=typeof globalThis<"u"?globalThis:B||self,t(B.MyLibrary={},B.Vue))})(this,function(B,t){"use strict";var te=document.createElement("style");te.textContent=`.icon-loading-svg[data-v-62d46830]{animation:animated-loading-rotate-62d46830 1.5s infinite ease-in-out}.icon-loading-svg>.path[data-v-62d46830]{stroke:#fffc;stroke-width:5;animation:animated-loading-62d46830 1.5s infinite ease-in-out}@keyframes animated-loading-62d46830{0%{stroke-dasharray:1,125;stroke-dashoffset:0}50%{stroke-dasharray:95,31;stroke-dashoffset:-31px}to{stroke-dasharray:6,120;stroke-dashoffset:-120px}}@keyframes animated-loading-rotate-62d46830{to{transform:rotate(1turn)}}
3
+ `,document.head.appendChild(te);const ge="X",ke="x",ne=e=>e?ke+"-"+e:e||"",L=e=>ge+e,S=e=>{const n=ne(e);return{block:n,element:r=>`${n}--${r}`,modifier:r=>`${n}-${r}`,is:r=>`${n}-is-${r}`}},he=["px","%","vh","vw","calc"],oe=(e,n="px")=>{if(e===void 0)return"";const o=String(e);return he.some(l=>o.includes(l))?o:o+n},A=Object.prototype.toString;function le(e){return A.call(e)==="[object Array]"}function re(e){return A.call(e)==="[object Object]"}const se=e=>A.call(e)==="[object Promise]";function ae(e){return A.call(e)==="[object String]"}function Ne(e){return A.call(e)==="[object Number]"&&e===e}function E(e){return typeof e=="function"}function j(){return typeof window<"u"}const Ee=1e3,be=3e3,Be=1;class we{constructor(){this.popupStack={popup:new Set,dialog:new Set,message:new Set},this.getNextZIndex=n=>(n==="message"?Array.from(this.popupStack.message).pop()||be:Array.from(this.popupStack.popup).pop()||Ee)+Be,this.add=n=>{const o=this.getNextZIndex(n);return this.popupStack[n].add(o),n==="dialog"&&this.popupStack.popup.add(o),o},this.delete=(n,o)=>{this.popupStack[o].delete(n),o==="dialog"&&this.popupStack.popup.delete(n)},this.isLastDialog=n=>this.popupStack.dialog.size>1?n===Array.from(this.popupStack.dialog).pop():!0}}const v=new we;function W(e,{visible:n,runOnMounted:o}={}){const l=t.ref(0),a=()=>{l.value=v.add(e)},r=()=>{v.delete(l.value,e)},i=()=>e==="dialog"?v.isLastDialog(l.value):!1;return t.watch(()=>n==null?void 0:n.value,s=>{s?a():r()},{immediate:!0}),o&&(t.onMounted(()=>{a()}),t.onBeforeUnmount(()=>{r()})),{zIndex:t.readonly(l),open:a,close:r,isLastDialog:i}}const ie=e=>e.replace(/^./,n=>n.toLowerCase()).replace(/-(\w)/g,(n,o)=>{var l;return(l=o==null?void 0:o.toUpperCase())!==null&&l!==void 0?l:""}),ce=()=>{},Ve=(e,n)=>{var o;if(j)return(o=document.querySelector(e))!==null&&o!==void 0?o:void 0},Oe=e=>{if(e.tagName==="BODY")return window.innerWidth-(document.documentElement.offsetWidth||document.body.offsetWidth);const{borderLeftWidth:n,borderRightWidth:o}=window.getComputedStyle(e),l=Number(n.replace("px",""))+Number(o.replace("px",""));return e.offsetWidth-(e.clientWidth+l)},Se=e=>e.tagName==="BODY"?document.documentElement.scrollHeight>window.innerHeight:e.scrollHeight>e.offsetHeight,$e=(e,n)=>{var o;if(!j||!e||!n)return"";let l=ie(n);l==="float"&&(l="cssFloat");try{const a=e.style[l];if(a)return a;const r=(o=document.defaultView)===null||o===void 0?void 0:o.getComputedStyle(e,"");return r?r[l]:""}catch{return e.style[l]}},D=(e,n,o)=>{if(!(!e||!n))if(re(n))Object.entries(n).forEach(([l,a])=>D(e,l,a));else{const l=ie(n);e.style[l]=o}},Z=(e,n)=>{if(ae(e)){const o=e[0]==="#"?`[id='${e.slice(1)}']`:e;return Ve(o)}return e},Te=j?(e,n,o,l=!1)=>{e.addEventListener(n,o,l)}:ce,ze=j?(e,n,o,l=!1)=>{e.removeEventListener(n,o,l)}:ce,Me=(e,n)=>{let o=!1;const l={overflow:"",width:""},a=s=>s.tagName==="BODY",r=()=>{if(e.value){const s=e.value;if(!o&&s.style.overflow!=="hidden"){const d=Oe(s);if(d>0||Se(s)){l.overflow=s.style.overflow,l.width=s.style.width;let f=0;a(s)&&(f=s.getBoundingClientRect().left||0),D(s,{width:`calc(100% - ${Math.ceil(d-f)}px)`,overflow:"hidden"}),o=!0}}}},i=()=>{if(e.value&&o){const s=e.value;D(s,{overflow:l.overflow,width:l.width}),o=!1}};return t.watch(()=>n==null?void 0:n.value,s=>{e.value&&!a(e.value)&&(s&&D(s,{position:"absolute"}),$e(e.value,"position")==="static"&&D(e.value,{position:"relative"}))}),{setOverflowHidden:r,resetOverflow:i}},Le={ENTER:"Enter",ESC:"Escape",BACKSPACE:"Backspace",TAB:"Tab",SPACE:" ",ARROW_UP:"ArrowUp",ARROW_DOWN:"ArrowDown",ARROW_LEFT:"ArrowLeft",ARROW_RIGHT:"ArrowRight"},I=e=>e;var z;(function(e){e[e.ELEMENT=1]="ELEMENT",e[e.FUNCTIONAL_COMPONENT=2]="FUNCTIONAL_COMPONENT",e[e.STATEFUL_COMPONENT=4]="STATEFUL_COMPONENT",e[e.COMPONENT=6]="COMPONENT",e[e.TEXT_CHILDREN=8]="TEXT_CHILDREN",e[e.ARRAY_CHILDREN=16]="ARRAY_CHILDREN",e[e.SLOTS_CHILDREN=32]="SLOTS_CHILDREN",e[e.TELEPORT=64]="TELEPORT",e[e.SUSPENSE=128]="SUSPENSE",e[e.COMPONENT_SHOULD_KEEP_ALIVE=256]="COMPONENT_SHOULD_KEEP_ALIVE",e[e.COMPONENT_KEPT_ALIVE=512]="COMPONENT_KEPT_ALIVE"})(z||(z={}));const Ae=e=>!!(e&&e.shapeFlag&z.ELEMENT),De=(e,n)=>!!(e&&e.shapeFlag&z.COMPONENT),Ie=(e,n)=>!!(e&&e.shapeFlag&8),Pe=(e,n)=>!!(e&&e.shapeFlag&z.ARRAY_CHILDREN),He=(e,n)=>!!(e&&e.shapeFlag&z.SLOTS_CHILDREN),R=(e,n=!1)=>{var o,l;const a=[];for(const r of e??[])Ae(r)||De(r)||n&&Ie(r,r.children)?a.push(r):Pe(r,r.children)?a.push(...R(r.children,n)):He(r,r.children)?a.push(...R((l=(o=r.children).default)===null||l===void 0?void 0:l.call(o),n)):le(r)&&a.push(...R(r,n));return a},je={renderTo:{type:I([String,Object]),default:"body"},disabled:{type:Boolean,default:!1},modelValue:{type:Boolean,default:!1},top:{type:[String,Number],default:"3vh"},center:{type:Boolean,default:!1},width:{type:[String,Number],default:0},height:{type:[String,Number],default:0},minWidth:{type:[String,Number],default:0},minHeight:{type:[String,Number],default:0},title:{type:String,default:""},mask:{type:Boolean,default:!0},destroyOnClosed:{type:Boolean,default:!0},onBeforeCancel:{type:Function},maskToClose:{type:Boolean,default:!0},escToClose:{type:Boolean,default:!0},fullscreen:{type:Boolean,default:!1},messageBox:{type:Boolean,default:!1},popupClass:{type:String,default:void 0},showClose:{type:Boolean,default:!0},showHeaderBottomLine:{type:Boolean,default:!1}},Re=["width","minWidth","height","minHeight"],Fe=t.defineComponent({name:L("Dialog"),inheritAttrs:!1,props:je,emits:["closed","close","open","opened","update:modelValue"],setup(e,{emit:n}){const o=S("dialog"),l=o.block,a=S("message-box"),r=a.block,i=t.computed(()=>[l,e.messageBox&&"is-message-box",e.popupClass&&e.popupClass]),s=t.computed(()=>Z(e.renderTo)),d=t.ref(),f=t.computed(()=>e.disabled||!s.value),g=t.computed(()=>({zIndex:h.value})),m=t.computed(()=>{const k={};return e.fullscreen||(!e.center&&e.top&&(k.top=oe(e.top)),Re.forEach(T=>{e[T]&&(k[T]=oe(e[T]))})),k}),y=t.ref(!1),u=t.computed(()=>e.modelValue),N=t.computed(()=>u.value||y.value),{zIndex:h,isLastDialog:b}=W("dialog",{visible:u}),{setOverflowHidden:p,resetOverflow:c}=Me(s,d),C=(k,T)=>{n("update:modelValue",!1),n("close",e.messageBox?k:void 0,e.messageBox?T:void 0)},V=()=>{y.value=!1,c(),n("closed")},O=()=>{n("opened")},$=t.reactive({ok:!1,cancel:!1}),H=(k,T)=>{let U=!0;if($[k]=!0,E(e.onBeforeCancel)&&(U=e.onBeforeCancel(k)??!1),se(U)){U.then(wt=>{$[k]=!1,wt&&C(k,T)});return}$[k]=!1,U&&C(k,T)},Nt=()=>{e.maskToClose&&e.mask&&H("cancel")},Et=k=>{H("cancel",k)},bt=k=>{H("ok",k)};let ee=!1;const Ce=k=>{e.escToClose&&k.key===Le.ESC&&b()&&H("cancel")},Bt=()=>{e.escToClose&&!ee&&(ee=!0,Te(document.documentElement,"keydown",Ce))},ye=()=>{ee=!1,ze(document.documentElement,"keydown",Ce)};return t.onBeforeUnmount(()=>{c(),ye()}),t.watch(()=>u.value,k=>{k?(n("open"),p(),y.value=!0,Bt()):ye()},{immediate:!0}),{cls:i,ns:l,cn:o,cnOMB:a,messageBoxNs:r,containerStyle:m,dialogStyle:g,dialogRef:d,teleportContainer:s,teleportDisabled:f,modelVisible:u,mergeVisible:N,interceptClose:H,afterLeave:V,afterEnter:O,handleMaskClick:Nt,handleCancel:Et,handleOk:bt,loadingObj:$}}}),w=(e,n)=>{const o=e.__vccOpts||e;for(const[l,a]of n)o[l]=a;return o};function _e(e,n,o,l,a,r){return t.openBlock(),t.createBlock(t.Teleport,{to:e.teleportContainer,disabled:e.teleportDisabled},[!e.destroyOnClosed||e.mergeVisible?t.withDirectives((t.openBlock(),t.createElementBlock("div",{key:0,ref:"dialogRef",class:t.normalizeClass(e.cls),style:t.normalizeStyle(e.dialogStyle)},[t.createVNode(t.Transition,{name:"x-fade-in-standard",appear:""},{default:t.withCtx(()=>[e.mask?t.withDirectives((t.openBlock(),t.createElementBlock("div",{key:0,class:t.normalizeClass([e.cn.element("mask")])},null,2)),[[t.vShow,e.modelVisible]]):t.createCommentVNode("",!0)]),_:1}),t.createElementVNode("div",{class:t.normalizeClass([e.cn.element("wrapper"),{"is-center":e.center}]),onClick:n[1]||(n[1]=t.withModifiers((...i)=>e.handleMaskClick&&e.handleMaskClick(...i),["self"]))},[t.createVNode(t.Transition,{name:"x-zoom-in",appear:"",onAfterEnter:e.afterEnter,onAfterLeave:e.afterLeave},{default:t.withCtx(()=>[t.withDirectives(t.createElementVNode("div",{class:t.normalizeClass([e.cn.element("container"),{"is-fullscreen":e.fullscreen}]),style:t.normalizeStyle(e.containerStyle)},[t.createElementVNode("div",{class:t.normalizeClass([e.messageBox?e.cnOMB.element("header"):e.cn.element("header"),e.showHeaderBottomLine&&"is-bottom-line"])},[t.renderSlot(e.$slots,"title",{},()=>[t.createElementVNode("div",{class:t.normalizeClass([e.cn.element("header-title")])},t.toDisplayString(e.title),3)])],2),t.createElementVNode("div",{class:t.normalizeClass([e.messageBox?e.cnOMB.element("body"):e.cn.element("body")])},[t.renderSlot(e.$slots,"default")],2),t.createElementVNode("div",{class:t.normalizeClass([e.messageBox?e.cnOMB.element("footer"):e.cn.element("footer")])},[t.renderSlot(e.$slots,"footer",{cancel:e.handleCancel,ok:e.handleOk,loadingObj:e.loadingObj})],2),e.showClose?(t.openBlock(),t.createElementBlock("span",{key:0,class:t.normalizeClass([e.cn.element("close-icon"),e.messageBox&&e.cnOMB.element("close-icon")]),onClick:n[0]||(n[0]=i=>e.interceptClose("cancel"))},null,2)):t.createCommentVNode("",!0)],6),[[t.vShow,e.modelVisible]])]),_:3},8,["onAfterEnter","onAfterLeave"])],2)],6)),[[t.vShow,e.mergeVisible]]):t.createCommentVNode("",!0)],8,["to","disabled"])}const de=w(Fe,[["render",_e]]),Ue={disabled:Boolean,block:Boolean,loading:Boolean,loadingFill:{type:Boolean,default:!1},debounce:{type:Number,default:0},shape:{type:I(String),default:void 0},link:{type:Boolean,default:!1},type:{type:I(String),default:void 0},status:{type:I(String),default:void 0},plain:{type:Boolean,default:!1},size:{type:I(String),default:"medium"},border:{type:Boolean,default:!0}},ve=e=>ae(e)?e.split("-").map(n=>n.charAt(0).toUpperCase()+n.slice(1)).join(""):"",We=(e,n="px")=>{if(e===void 0)return"";const o=typeof e=="number"?`${e}`:e;return["px","%","vh","vw","calc"].some(a=>o.includes(a))?o:o+n};function M(e){return t.defineComponent({name:ne(`Icon${ve(e)}`),props:{size:{type:[Number,String],default:void 0},rotate:{type:Number,default:void 0},spin:{type:Boolean,default:!1},color:{type:String,default:void 0},fillColor:{type:Array,default:void 0}},setup(n){const o="x-icon",l=t.computed(()=>{const r={};return n.size&&(r.fontSize=We(n.size)),n.rotate&&(r.transform=`rotate(${n.rotate}deg)`),n.color&&(r.color=n.color),r});return{cls:t.computed(()=>[o,{[`${o}-loading`]:n.spin}]),styles:l}}})}const Ze=M("animation-loading");function Ke(e,n,o,l,a,r){return t.openBlock(),t.createElementBlock("div",{class:t.normalizeClass(e.cls),style:t.normalizeStyle(e.styles)},n[0]||(n[0]=[t.createElementVNode("svg",{viewBox:"0 0 50 50",class:"icon-loading-svg"},[t.createElementVNode("circle",{cx:"25",cy:"25",r:"20",class:"path",fill:"none",stroke:"currentColor"})],-1)]),6)}const Xe=w(Ze,[["render",Ke],["__scopeId","data-v-62d46830"]]),Ye=t.defineComponent({name:L("Button"),components:{AnimationLoading:Xe},props:Ue,emits:["click"],setup(e){const n=t.reactive({clicked:!1,isDebounce:!1}),o=S("button"),l=t.computed(()=>[o.block,e.type&&o.modifier(e.type),e.status&&o.modifier(e.status),e.disabled&&o.is("disabled"),e.block&&o.modifier("block"),e.plain&&o.is("plain"),e.shape&&o.modifier(e.shape),e.link&&o.modifier("is-link"),e.size&&o.modifier(e.size),!e.border&&o.modifier("is-hide-border"),r.value&&o.modifier("is-loading")]),a=()=>{e.debounce>0&&!n.isDebounce&&(n.isDebounce=!0,setTimeout(()=>{n.isDebounce=!1},e.debounce))},r=t.computed(()=>e.loading||n.clicked||n.isDebounce),i=t.getCurrentInstance(),s=(f,g)=>{const m=f(g);se(m)&&(n.clicked=!0,m.finally(()=>{n.clicked=!1}))};return{cn:o,cls:l,handleClick:async f=>{var m,y,u,N;if((y=(m=f.target).blur)==null||y.call(m),r.value)return;a();const g=(N=(u=i==null?void 0:i.vnode)==null?void 0:u.props)==null?void 0:N.onClick;le(g)?g.forEach(h=>s(h,f)):E(g)&&s(g,f)},isLoading:r}}}),xe=["disabled"];function Ge(e,n,o,l,a,r){const i=t.resolveComponent("AnimationLoading");return t.openBlock(),t.createElementBlock("button",{class:t.normalizeClass(e.cls),type:"button",disabled:e.disabled,onClick:n[0]||(n[0]=(...s)=>e.handleClick&&e.handleClick(...s))},[t.withDirectives(t.createElementVNode("span",{class:t.normalizeClass([e.cn.element("loading")])},[t.createVNode(i)],2),[[t.vShow,e.isLoading]]),e.$slots.prefix?(t.openBlock(),t.createElementBlock("span",{key:0,class:t.normalizeClass([e.cn.element("prefix")])},[t.renderSlot(e.$slots,"prefix")],2)):t.createCommentVNode("",!0),t.renderSlot(e.$slots,"default"),e.$slots.suffix?(t.openBlock(),t.createElementBlock("span",{key:1,class:t.normalizeClass([e.cn.element("suffix")])},[t.renderSlot(e.$slots,"suffix")],2)):t.createCommentVNode("",!0)],10,xe)}const F=w(Ye,[["render",Ge]]),fe=t.defineComponent({name:L("Space"),props:{direction:{type:String,default:"horizontal"},size:{type:[Number,String],default:"small"},align:{type:String,default:"center"},fill:{type:Boolean,default:!1}},setup(e,{slots:n}){const o=S("space"),l=t.computed(()=>[o.block,o.element(e.direction),e.fill&&"is-fill",o.element(`${e.direction}-${e.align}`)]);function a(i){if(Ne(i))return i;switch(i){case"mini":return 4;case"small":return 8;case"medium":return 16;case"large":return 24;default:return 8}}const r=i=>{const s={};if(i)return s;const d=`${a(e.size)}px`,f=`${a(e.size)}px`;return e.direction==="horizontal"&&(s.marginRight=d),e.direction==="vertical"&&(s.marginBottom=f),s};return()=>{var i;const s=R((i=n.default)===null||i===void 0?void 0:i.call(n),!0).filter(d=>d.type!==t.Comment);return t.createVNode("div",{class:[l.value]},[s.map((d,f)=>{var g;const m=n.split&&f>0;return t.createVNode(t.Fragment,{key:`space-item-${f}`},[m&&t.createVNode("div",{className:o.element("split"),style:r(!1)},[(g=n.split)===null||g===void 0?void 0:g.call(n)]),t.createVNode("div",{className:o.element("item"),style:r(f===s.length-1)},[d])])})])}}});function me(e){return typeof e=="function"||Object.prototype.toString.call(e)==="[object Object]"&&!t.isVNode(e)}const ue=S("dialog"),qe=e=>{var n,o,l,a,r,i;const s=document.createElement("div"),d=()=>{t.render(null,s)},f=p=>{if(p==="cancel")return e.beforeOnCancel?e.beforeOnCancel():!0;if(p==="ok")return e.beforeOnOk?e.beforeOnOk():!0},g=(p,c)=>{p==="cancel"&&e.onCancel&&e.onCancel(c),p==="ok"&&e.onOk&&e.onOk(c)},m=p=>{if(t.isVNode(p))return p;if(E(p)){const c=p();return t.isVNode(c)?c:null}return t.createVNode("div",{className:ue.element("header-title")},[t.createTextVNode(" "),p,t.createTextVNode(" ")])},y=p=>{if(t.isVNode(p))return p;if(E(p)){const c=p();return t.isVNode(c)?c:null}return t.createVNode("div",{className:ue.element("content")},[t.createTextVNode(" "),e.content,t.createTextVNode(" ")])},u=()=>()=>t.createVNode(t.Fragment,null,[e.title&&m(e.title)]),N=()=>()=>t.createVNode(t.Fragment,null,[e.content&&y(e.content)]),h=()=>{if(t.isVNode(e.footer)||E(e.footer))return e.footer;const p=(e==null?void 0:e.cancelText)||"取消",c=(e==null?void 0:e.okText)||"确认";return C=>{var V,O;return t.createVNode(fe,{size:12},{default:()=>[!e.hideCancel&&t.createVNode(F,{size:"small",onClick:C.cancel,loading:(V=C.loadingObj)===null||V===void 0?void 0:V.cancel},me(p)?p:{default:()=>[p]}),!e.hideOk&&t.createVNode(F,{type:"primary",size:"small",onClick:C.ok,loading:(O=C.loadingObj)===null||O===void 0?void 0:O.ok},me(c)?c:{default:()=>[c]})]})}},b=t.createVNode(de,{width:(n=e==null?void 0:e.width)!==null&&n!==void 0?n:368,height:(o=e==null?void 0:e.height)!==null&&o!==void 0?o:"auto",modelValue:!0,renderTo:e==null?void 0:e.renderTo,center:e!=null&&e.top?!1:(l=e==null?void 0:e.center)!==null&&l!==void 0?l:!0,top:(a=e==null?void 0:e.top)!==null&&a!==void 0?a:0,mask:(r=e==null?void 0:e.mask)!==null&&r!==void 0?r:!0,maskToClose:(i=e==null?void 0:e.maskToClose)!==null&&i!==void 0?i:!0,popupClass:e.popupClass,onClose:g,onBeforeCancel:f,"onUpdate:modelValue":()=>{b.component.props.modelValue=!1},onClosed:d,onOpened:()=>{}},{title:u(),default:N(),footer:h()});t.render(b,s)},Je=["success","warning","error","strong","info"],Qe=M("close-circle-fill");function et(e,n,o,l,a,r){return t.openBlock(),t.createElementBlock("div",{class:t.normalizeClass(e.cls),style:t.normalizeStyle(e.styles)},n[0]||(n[0]=[t.createElementVNode("svg",{viewBox:"0 0 48 48",fill:"none",xmlns:"http://www.w3.org/2000/svg",stroke:"currentColor","stroke-width":"4","stroke-linecap":"butt","stroke-linejoin":"miter",filter:""},[t.createElementVNode("path",{"fill-rule":"evenodd","clip-rule":"evenodd",d:"M24 44c11.046 0 20-8.954 20-20S35.046 4 24 4 4 12.954 4 24s8.954 20 20 20Zm4.955-27.771-4.95 4.95-4.95-4.95a1 1 0 0 0-1.414 0l-1.414 1.414a1 1 0 0 0 0 1.414l4.95 4.95-4.95 4.95a1 1 0 0 0 0 1.414l1.414 1.414a1 1 0 0 0 1.414 0l4.95-4.95 4.95 4.95a1 1 0 0 0 1.414 0l1.414-1.414a1 1 0 0 0 0-1.414l-4.95-4.95 4.95-4.95a1 1 0 0 0 0-1.414l-1.414-1.414a1 1 0 0 0-1.414 0Z",fill:"currentColor",stroke:"none"})],-1)]),6)}const K=w(Qe,[["render",et]]),tt=M("check-circle-fill");function nt(e,n,o,l,a,r){return t.openBlock(),t.createElementBlock("div",{class:t.normalizeClass(e.cls),style:t.normalizeStyle(e.styles)},n[0]||(n[0]=[t.createElementVNode("svg",{viewBox:"0 0 48 48",fill:"none",xmlns:"http://www.w3.org/2000/svg",stroke:"currentColor","stroke-width":"4","stroke-linecap":"butt","stroke-linejoin":"miter",filter:""},[t.createElementVNode("path",{"fill-rule":"evenodd","clip-rule":"evenodd",d:"M24 44c11.046 0 20-8.954 20-20S35.046 4 24 4 4 12.954 4 24s8.954 20 20 20Zm10.207-24.379a1 1 0 0 0 0-1.414l-1.414-1.414a1 1 0 0 0-1.414 0L22 26.172l-4.878-4.88a1 1 0 0 0-1.415 0l-1.414 1.415a1 1 0 0 0 0 1.414l7 7a1 1 0 0 0 1.414 0l11.5-11.5Z",fill:"currentColor",stroke:"none"})],-1)]),6)}const X=w(tt,[["render",nt]]),ot=M("exclamation-circle-fill");function lt(e,n,o,l,a,r){return t.openBlock(),t.createElementBlock("div",{class:t.normalizeClass(e.cls),style:t.normalizeStyle(e.styles)},n[0]||(n[0]=[t.createElementVNode("svg",{viewBox:"0 0 48 48",fill:"none",xmlns:"http://www.w3.org/2000/svg",stroke:"currentColor","stroke-width":"4","stroke-linecap":"butt","stroke-linejoin":"miter",filter:""},[t.createElementVNode("path",{"fill-rule":"evenodd","clip-rule":"evenodd",d:"M24 44c11.046 0 20-8.954 20-20S35.046 4 24 4 4 12.954 4 24s8.954 20 20 20Zm-2-11a1 1 0 0 0 1 1h2a1 1 0 0 0 1-1v-2a1 1 0 0 0-1-1h-2a1 1 0 0 0-1 1v2Zm4-18a1 1 0 0 0-1-1h-2a1 1 0 0 0-1 1v12a1 1 0 0 0 1 1h2a1 1 0 0 0 1-1V15Z",fill:"currentColor",stroke:"none"})],-1)]),6)}const Y=w(ot,[["render",lt]]),rt=M("info-circle-fill");function st(e,n,o,l,a,r){return t.openBlock(),t.createElementBlock("div",{class:t.normalizeClass(e.cls),style:t.normalizeStyle(e.styles)},n[0]||(n[0]=[t.createElementVNode("svg",{viewBox:"0 0 48 48",fill:"none",xmlns:"http://www.w3.org/2000/svg",stroke:"currentColor","stroke-width":"4","stroke-linecap":"butt","stroke-linejoin":"miter",filter:""},[t.createElementVNode("path",{"fill-rule":"evenodd","clip-rule":"evenodd",d:"M24 44c11.046 0 20-8.954 20-20S35.046 4 24 4 4 12.954 4 24s8.954 20 20 20Zm2-30a1 1 0 0 0-1-1h-2a1 1 0 0 0-1 1v2a1 1 0 0 0 1 1h2a1 1 0 0 0 1-1v-2Zm0 17h1a1 1 0 0 1 1 1v2a1 1 0 0 1-1 1h-6a1 1 0 0 1-1-1v-2a1 1 0 0 1 1-1h1v-8a1 1 0 0 1-1-1v-2a1 1 0 0 1 1-1h3a1 1 0 0 1 1 1v11Z",fill:"currentColor",stroke:"none"})],-1)]),6)}const x=w(rt,[["render",st]]),at=M("minus-circle-fill");function it(e,n,o,l,a,r){return t.openBlock(),t.createElementBlock("div",{class:t.normalizeClass(e.cls),style:t.normalizeStyle(e.styles)},n[0]||(n[0]=[t.createElementVNode("svg",{viewBox:"0 0 48 48",fill:"none",xmlns:"http://www.w3.org/2000/svg",stroke:"currentColor","stroke-width":"4","stroke-linecap":"butt","stroke-linejoin":"miter",filter:""},[t.createElementVNode("path",{"fill-rule":"evenodd","clip-rule":"evenodd",d:"M24 44c11.046 0 20-8.954 20-20S35.046 4 24 4 4 12.954 4 24s8.954 20 20 20Zm-7-22a1 1 0 0 0-1 1v2a1 1 0 0 0 1 1h14a1 1 0 0 0 1-1v-2a1 1 0 0 0-1-1H17Z",fill:"currentColor",stroke:"none"})],-1)]),6)}const G=w(at,[["render",it]]),ct=t.defineComponent({name:L("Message"),components:{CloseCircleFill:K,CheckCircleFill:X,ExclamationCircleFill:Y,InfoCircleFill:x,MinusCircleFill:G},props:{id:{type:String,default:""},message:{type:[String,Number,Object],default:""},type:{type:String,default:"success"},duration:{type:Number,default:1500},center:{type:Boolean,default:!1},onClose:{type:Function,default:()=>{}},offset:{type:Number,default:20},zIndex:{type:Number,default:0},showClose:{type:Boolean,default:!1},useHTML:Boolean,popupClass:{type:String,default:void 0}},emits:["destroy"],setup(e){const n=S("message"),o=t.computed(()=>[n.block,n.modifier(e.type),e.center&&n.modifier("center"),e.showClose&&!e.center&&n.element("show-close"),e.popupClass&&e.popupClass]),l=t.ref(!1);let a=null;const r=()=>{a=setTimeout(()=>{l.value=!1},e.duration)};t.onMounted(()=>{l.value=!0,e.duration!==0&&r()}),t.onUnmounted(()=>{clearTimeout(a)});const{zIndex:i}=W("message",{runOnMounted:!0}),s=t.computed(()=>({top:`${e.offset}px`,zIndex:i.value}));return{cn:n,cls:o,styles:s,visible:l,handleClose:()=>{l.value=!1}}}}),dt=["innerHTML"],ft={key:1};function mt(e,n,o,l,a,r){const i=t.resolveComponent("CheckCircleFill"),s=t.resolveComponent("ExclamationCircleFill"),d=t.resolveComponent("MinusCircleFill"),f=t.resolveComponent("CloseCircleFill"),g=t.resolveComponent("InfoCircleFill");return t.openBlock(),t.createBlock(t.Transition,{name:"x-message-slide-top",onBeforeLeave:e.onClose,onAfterLeave:n[1]||(n[1]=m=>e.$emit("destroy"))},{default:t.withCtx(()=>[t.withDirectives(t.createElementVNode("div",{class:t.normalizeClass(e.cls),style:t.normalizeStyle(e.styles)},[e.$slots.icon?t.createCommentVNode("",!0):(t.openBlock(),t.createElementBlock("span",{key:0,class:t.normalizeClass([e.cn.element("icon"),e.cn.modifier(`icon-${e.type}`)])},[t.renderSlot(e.$slots,"icon",{},()=>[e.type==="success"?(t.openBlock(),t.createBlock(i,{key:0})):e.type==="warning"?(t.openBlock(),t.createBlock(s,{key:1})):e.type==="strong"?(t.openBlock(),t.createBlock(d,{key:2})):e.type==="error"?(t.openBlock(),t.createBlock(f,{key:3})):e.type==="info"?(t.openBlock(),t.createBlock(g,{key:4})):t.createCommentVNode("",!0)])],2)),t.renderSlot(e.$slots,"default",{},()=>[e.useHTML?(t.openBlock(),t.createElementBlock("span",{key:0,innerHTML:e.message},null,8,dt)):(t.openBlock(),t.createElementBlock("span",ft,t.toDisplayString(e.message),1)),e.showClose?(t.openBlock(),t.createElementBlock("span",{key:2,class:t.normalizeClass([e.cn.element("close-icon")]),onClick:n[0]||(n[0]=(...m)=>e.handleClose&&e.handleClose(...m))},null,2)):t.createCommentVNode("",!0)])],6),[[t.vShow,e.visible]])]),_:3},8,["onBeforeLeave"])}const ut=w(ct,[["render",mt]]),q=new WeakMap,_=e=>{(typeof e=="string"||t.isVNode(e))&&(e={message:e});const n=Z(e.renderTo||"body");q.has(n)||q.set(n,[]);const o=q.get(n);let l=e.offset||20;o.forEach(m=>{var y;l+=((y=m.el)===null||y===void 0?void 0:y.offsetHeight)+20});const a=e.onClose;let r={};r={...e,onClose:()=>{var m;const y=o.findIndex(N=>N===d);if(y<0)return;const u=((m=d.el)===null||m===void 0?void 0:m.offsetHeight)+20;o.slice(y+1).forEach(N=>{var h;const b=(h=N.component)===null||h===void 0?void 0:h.props.offset;N.component.props.offset=b-u}),o.splice(y,1),a&&a(d)},onDestroy:()=>{t.render(null,f)},offset:l};const d=t.createVNode(ut,r,E(r.message)||t.isVNode(r.message)?{default:E(r.message)?r.message:()=>r.message}:null),f=document.createElement("div");return t.render(d,f),n.tagName==="BODY"?d.el.style.position="fixed":(n.style.position="relative",d.el.style.position="absolute"),n.appendChild(f.firstElementChild),o.push(d),{close:()=>{d.component.proxy.handleClose()}}};(()=>{Je.forEach(e=>{_[e]=n=>re(n)?_({type:e,...n}):_({message:n,type:e})})})();const pt=["info","success","warning","strong","error"];function pe(e){return typeof e=="function"||Object.prototype.toString.call(e)==="[object Object]"&&!t.isVNode(e)}const J=S("message-box"),Q=e=>{var n,o,l,a,r,i;const s=document.createElement("div"),d=()=>{t.render(null,s)},f=c=>{if(c==="cancel")return e.beforeOnCancel?e.beforeOnCancel():!0;if(c==="ok")return e.beforeOnOk?e.beforeOnOk():!0},g=(c,C)=>{c==="cancel"&&e.onCancel&&e.onCancel(C),c==="ok"&&e.onOk&&e.onOk(C)},m=c=>{let C;switch(c){case"warning":C=t.createVNode(Y,{size:"22px",color:"#f6c64b"},null);break;case"strong":C=t.createVNode(G,{size:"22px",color:"#ff7125"},null);break;case"error":C=t.createVNode(K,{size:"22px",color:"#e24f48"},null);break;case"success":C=t.createVNode(X,{size:"22px",color:"#68d1ab"},null);break;case"info":C=t.createVNode(x,{size:"22px",color:"#2355f5"},null);break}return t.createVNode("div",{className:J.element("icon")},[C])},y=c=>{if(t.isVNode(c))return c;if(E(c)){const C=c();return t.isVNode(C)?C:null}return t.createVNode("div",{className:J.element("title")},[t.createTextVNode(" "),c,t.createTextVNode(" ")])},u=c=>{if(t.isVNode(c))return c;if(E(c)){const C=c();return t.isVNode(C)?C:null}return t.createVNode("div",{className:J.element("content")},[t.createTextVNode(" "),e.content,t.createTextVNode(" ")])},N=()=>()=>t.createVNode(t.Fragment,null,[m(e.type||"success"),e.title&&y(e.title)]),h=()=>()=>t.createVNode(t.Fragment,null,[e.content&&u(e.content)]),b=()=>{if(t.isVNode(e.footer)||E(e.footer))return e.footer;const c=(e==null?void 0:e.cancelText)||"取消",C=(e==null?void 0:e.okText)||"确认";return V=>{var O,$;return t.createVNode(fe,{size:12},{default:()=>[!e.hideCancel&&t.createVNode(F,{size:"small",onClick:V.cancel,loading:(O=V.loadingObj)===null||O===void 0?void 0:O.cancel},pe(c)?c:{default:()=>[c]}),!e.hideOk&&t.createVNode(F,{type:"primary",size:"small",onClick:V.ok,loading:($=V.loadingObj)===null||$===void 0?void 0:$.ok},pe(C)?C:{default:()=>[C]})]})}},p=t.createVNode(de,{messageBox:!0,width:(n=e==null?void 0:e.width)!==null&&n!==void 0?n:358,height:(o=e==null?void 0:e.height)!==null&&o!==void 0?o:"auto",modelValue:!0,renderTo:e==null?void 0:e.renderTo,center:e!=null&&e.top?!1:(l=e==null?void 0:e.center)!==null&&l!==void 0?l:!0,top:(a=e==null?void 0:e.top)!==null&&a!==void 0?a:0,mask:(r=e==null?void 0:e.mask)!==null&&r!==void 0?r:!0,maskToClose:(i=e==null?void 0:e.maskToClose)!==null&&i!==void 0?i:!0,popupClass:e.popupClass,onClose:g,onBeforeCancel:f,"onUpdate:modelValue":()=>{p.component.props.modelValue=!1},onClosed:d,onOpened:()=>{}},{title:N(),default:h(),footer:b()});t.render(p,s)};(()=>{pt.forEach(e=>{Q[e]=(n,o)=>{const l=[],a=[];let r=()=>!0,i=()=>!0;return setTimeout(()=>{Q({title:n,content:o,type:e,beforeOnCancel:i,beforeOnOk:r,onOk:()=>{l.forEach(s=>E(s)&&s())},onCancel:()=>{a.forEach(s=>E(s)&&s())}})},0),{ok(...s){return s.length===1&&l.push(s[0]),s.length===2&&(r=s[0],l.push(s[1])),this},cancel(...s){return s.length===1&&a.push(s[0]),s.length===2&&(i=s[0],a.push(s[1])),this}}}})})();const Ct={position:{type:String,default:"top-right"},offset:{type:Number,default:0},title:{type:String,default:""},type:{type:String,default:"info"},message:{type:String,default:void 0},duration:{type:Number,default:3e3},showClose:{type:Boolean,default:!0},onClose:{type:Function,default:()=>{}},renderToBody:{type:Boolean,default:!1}},yt=t.defineComponent({name:L("Notification"),props:Ct,emits:["close","destroy"],setup(e){const n=S("notification"),o=n.block,l=t.computed(()=>[o,n.modifier(r.value.ver)]),{zIndex:a}=W("message",{runOnMounted:!0}),r=t.computed(()=>{const u=e.position.split("-");return{hor:u[1],ver:u[0]}}),i=t.computed(()=>`x-notification-slide-${r.value.hor}`),s=t.computed(()=>{const u={};return u.position=e.renderToBody?"fixed":"absolute",u.zIndex=a.value,u[r.value.hor]="20px",u[r.value.ver]=`${e.offset}px`,u}),d=t.ref(!1);let f=0;const g=()=>{f=setTimeout(()=>{d.value=!1},e.duration)},m=t.computed(()=>e.type==="info"?x:e.type==="warning"?Y:e.type==="strong"?G:e.type==="success"?X:e.type==="error"?K:""),y=()=>{d.value=!1};return t.onMounted(()=>{e.duration!==0&&g(),d.value=!0}),t.onUnmounted(()=>{clearTimeout(f)}),{ns:o,cn:n,cls:l,animationClsName:i,positionStyle:s,visible:d,positionPropMap:r,currentIcon:m,handleClose:y}}});function gt(e,n,o,l,a,r){return t.openBlock(),t.createBlock(t.Transition,{name:e.animationClsName,onBeforeLeave:n[1]||(n[1]=i=>e.$emit("close")),onAfterLeave:n[2]||(n[2]=i=>e.$emit("destroy"))},{default:t.withCtx(()=>[t.withDirectives(t.createElementVNode("div",{class:t.normalizeClass(e.cls),style:t.normalizeStyle(e.positionStyle)},[t.createElementVNode("div",{class:t.normalizeClass([e.cn.element("header")])},[t.createElementVNode("div",{class:t.normalizeClass([e.cn.element("icon"),e.cn.modifier(`icon-${e.type}`)])},[(t.openBlock(),t.createBlock(t.resolveDynamicComponent(e.currentIcon)))],2),t.createElementVNode("div",null,[t.createElementVNode("div",{class:t.normalizeClass([e.cn.element("title")])},t.toDisplayString(e.title),3),t.createElementVNode("div",{class:t.normalizeClass([e.cn.element("message")])},[t.renderSlot(e.$slots,"default",{},()=>[t.createTextVNode(t.toDisplayString(e.message),1)])],2)])],2),e.showClose?(t.openBlock(),t.createElementBlock("span",{key:0,class:t.normalizeClass([e.cn.element("close-icon")]),onClick:n[0]||(n[0]=t.withModifiers((...i)=>e.handleClose&&e.handleClose(...i),["self"]))},null,2)):t.createCommentVNode("",!0)],6),[[t.vShow,e.visible]])]),_:3},8,["name"])}const kt=w(yt,[["render",gt]]),P=new WeakMap,ht=e=>{var n,o;const l=Z(e.renderTo||"body"),a=document.createElement("div");P.get(l)||P.set(l,{}),P.get(l)[e.position]||(P.get(l)[e.position]=[]);const r=P.get(l)[e.position];let i=e.offset||20;r.forEach(y=>{var u;i+=((u=y.el)===null||u===void 0?void 0:u.offsetHeight)+20});const s=l.tagName==="BODY";s||(l.style.position="relative",l.style.overflowX="hidden");const d=e.onClose,f=()=>{var y;const u=r.findIndex(h=>h===m);if(u<0)return;const N=((y=m.el)===null||y===void 0?void 0:y.offsetHeight)+20;r.slice(u+1).forEach(h=>{var b;const p=(b=h.component)===null||b===void 0?void 0:b.props.offset;h.component.props.offset=p-N}),r.splice(u,1),d&&d(m)},g=()=>{t.render(null,a)},m=t.createVNode(kt,{message:e.message,title:e.title,type:e.type,offset:i,renderToBody:s,position:e.position,duration:(n=e.duration)!==null&&n!==void 0?n:3e3,showClose:(o=e.showClose)!==null&&o!==void 0?o:!0,onClose:f,onDestroy:g},E(e.message)||t.isVNode(e.message)?{default:E(e.message)?e.message:()=>e.message}:null);t.render(m,a),r.push(m),l==null||l.appendChild(a.firstChild)};B.Dialog=qe,B.Message=_,B.MessageBox=Q,B.Notification=ht,Object.defineProperty(B,Symbol.toStringTag,{value:"Module"})});
package/package.json CHANGED
@@ -1,65 +1,66 @@
1
1
  {
2
- "name": "x-next",
3
- "version": "0.0.0-alpha.1",
4
- "description": "X-Component.",
5
- "main": "framework/umd/client.io.js",
6
- "module": "framework/es/client.io.js",
7
- "typings": "framework/es/index.d.ts",
8
- "repository": {
9
- "type": "git",
10
- "url": "https://github.com/ztes/client.io.git"
11
- },
12
- "bugs": {
13
- "url": "https://github.com/ztes/client.io/issues"
14
- },
15
- "author": "ztes.com <xy@ztes.com>",
16
- "blog": "https://ztes.com",
17
- "keywords": [
18
- "realtime",
19
- "websocket",
20
- "io",
21
- "sse"
22
- ],
23
- "license": "MIT",
24
- "scripts": {
25
- "build:pkg": "rollup --config rollup.config.js",
26
- "create": "tsc",
27
- "dev": "set NODE_ENV=developemnt&& rollup -c rollup.config.js -w",
28
- "build": "rollup -c rollup.config.js",
29
- "eslint:fix": "./node_modules/.bin/eslint --fix ./",
30
- "publish": "npm publish --access=public"
31
- },
32
- "devDependencies": {
33
- "@babel/core": "^7.18.10",
34
- "@babel/preset-env": "^7.18.10",
35
- "@rollup/plugin-babel": "^6.0.4",
36
- "@rollup/plugin-json": "^6.0.0",
37
- "@rollup/plugin-typescript": "^11.1.6",
38
- "@types/node": "^18.7.6",
39
- "@types/qs": "^6.9.7",
40
- "@types/webpack-env": "^1.17.0",
41
- "@typescript-eslint/eslint-plugin": "^5.59.2",
42
- "@typescript-eslint/parser": "^5.0.0",
43
- "core-js": "3",
44
- "eslint": "^8.17.0",
45
- "eslint-config-prettier": "^8.5.0",
46
- "eslint-define-config": "^1.5.0",
47
- "eslint-plugin-prettier": "^4.0.0",
48
- "prettier": "^2.8.8",
49
- "rollup": "^2.79.1",
50
- "rollup-plugin-commonjs": "^10.1.0",
51
- "rollup-plugin-dts": "^4.2.2",
52
- "rollup-plugin-eslint": "^7.0.0",
53
- "rollup-plugin-node-resolve": "^5.2.0",
54
- "rollup-plugin-typescript": "^1.0.1",
55
- "rollup-plugin-typescript2": "^0.31.1",
56
- "rollup-plugin-uglify": "^6.0.4",
57
- "tslib": "^2.6.3",
58
- "typescript": "^4.4.4"
59
- },
60
- "files": [
61
- "/framework",
62
- "README.md",
63
- "index.d.ts"
64
- ]
2
+ "author": {
3
+ "email": "xy@ztes.com",
4
+ "name": "XuYu"
5
+ },
6
+ "license": "MIT",
7
+ "engines": {
8
+ "node": ">=10.16.0"
9
+ },
10
+ "repository": {
11
+ "type": "git",
12
+ "url": "https://github.com/ztes/x-next.git"
13
+ },
14
+ "bugs": {
15
+ "url": "https://github.com/ztes/x-next/issues"
16
+ },
17
+ "private": false,
18
+ "name": "x-next",
19
+ "version": "0.0.0-alpha.2",
20
+ "publishConfig": {
21
+ "access": "public"
22
+ },
23
+ "description": "A simple Vue 3 UI component. ",
24
+ "keywords": [
25
+ "vue",
26
+ "vue 3",
27
+ "component"
28
+ ],
29
+ "main": "dist/ui.umd.js",
30
+ "module": "dist/ui.es.js",
31
+ "types": "./dist/types/ui.d.ts",
32
+ "files": [
33
+ "dist"
34
+ ],
35
+ "scripts": {
36
+ "dev": "vite",
37
+ "dev:docs": "vitepress dev docs",
38
+ "build:component": "vite build",
39
+ "build:docs": "vitepress build docs",
40
+ "preview:docs": "vitepress preview docs",
41
+ "format": "prettier -w ."
42
+ },
43
+ "devDependencies": {
44
+ "@babel/types": "^7.22.4",
45
+ "@types/node": "^20.2.5",
46
+ "@vitejs/plugin-vue": "^4.2.3",
47
+ "@vitejs/plugin-vue-jsx": "^4.0.1",
48
+ "@vue/compiler-sfc": "^3.5.12",
49
+ "prettier": "^2.8.8",
50
+ "sass": "^1.80.3",
51
+ "sass-loader": "^16.0.2",
52
+ "typescript": "^5.4.5",
53
+ "vite": "^5.2.13",
54
+ "vite-plugin-css-injected-by-js": "^3.1.1",
55
+ "vite-plugin-dts": "^2.3.0",
56
+ "vitepress": "^1.4.1",
57
+ "vue": "^3.5.12"
58
+ },
59
+ "peerDependencies": {
60
+ "vue": "^3.0.0"
61
+ },
62
+ "dependencies": {
63
+ "date-fns": "^2.22.1",
64
+ "dayjs": "^1.11.13"
65
+ }
65
66
  }
@@ -1,2 +0,0 @@
1
- function consoleLog(e,t,n,c){console.log("".concat("\n"," %c ").concat(e," %c ").concat(t," ").concat("\n"),"color: ".concat(n,"; background: ").concat(c,"; padding:5px 0;border-radius:3px 0 0 3px;"),"color:#666666;background: #f1f5fa; padding:5px 0;border-radius:0 3px 3px 0;")}function now(){return"".concat((new Date).getHours()<10?"0"+(new Date).getHours():(new Date).getHours(),":").concat((new Date).getMinutes()<10?"0"+(new Date).getMinutes():(new Date).getMinutes(),":").concat((new Date).getSeconds()<10?"0"+(new Date).getSeconds():(new Date).getSeconds())}function jsonStringify2Parse(t){if("string"==typeof t)try{return JSON.parse(t)}catch(e){return JSON.parse(JSON.stringify('{"value":'.concat(t)))}return{}}var extendStatics=function(e,t){return(extendStatics=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var n in t)Object.prototype.hasOwnProperty.call(t,n)&&(e[n]=t[n])})(e,t)};function __extends(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Class extends value "+String(t)+" is not a constructor or null");function n(){this.constructor=e}extendStatics(e,t),e.prototype=null===t?Object.create(t):(n.prototype=t.prototype,new n)}var WebSocketBucketState,Exception=function(c){function e(e,t){var n=c.call(this,t)||this;return n.name="Client.io Error",n.message="Error message",n.name=e||n.name,n.message=t||n.message,n.stack=(new Error).stack,n}return __extends(e,c),e}(Error),WebSocketBucket=(!function(e){e.CONNECTING="CONNECTING",e.OPEN="OPEN",e.CLOSING="CLOSING",e.CLOSED="CLOSED",e.FAIL="FAIL"}(WebSocketBucketState=WebSocketBucketState||{}),function(){function k(){this.bucketName=k.DEFAULT_NAME,this.buckets=new Map,this.bucketName=k.DEFAULT_NAME}return k.create=function(e){var c,o,t,n=e.url,a=e.name,r=e.heartbeat,s=e.heartRate,s=void 0===s?3e3:s,i=e.restartTime,i=void 0===i?5e3:i,u=e.restartTimes,u=void 0===u?0:u,f=e.restartedTimes,g=void 0===f?0:f,f=e.receive,e=e.send;if(/(ws|wss):\/\/\s*/.test(n))return c=a||k.getBucketName(a),t=new WebSocket(n),o=-1,t.onopen=function(e){consoleLog("".concat(c," ▶ SUCCESS"),"◔ ".concat(now()),"#ffffff","#1bc800"),k.setBucketKeyValue("restartedTimes",0,c),k.bindMessage(a)},t.onerror=function(e){consoleLog("".concat(c," ▶ ERROR"),"◔ ".concat(now()," ▶ ").concat(c),"#ffffff","#c80000")},t.onclose=function(e){consoleLog("".concat(c," ▶ CLOSE"),"◔ ".concat(now()," ▶ ").concat(c),"#ffffff","#000000"),clearInterval(o);var t=k.getBucket(c),n=(t.restartedTimes!==g?g=t.restartedTimes+1:g+=1,Math.pow(2,g-1)*t.restartTime);consoleLog("".concat(c," ▶ REBOOT WAITING"),"◔ ".concat(now()," ▶ ").concat(c," RESTART IN ").concat(Math.round(n/1e3)," SECONDS"),"#ffffff","#00c8b4"),setTimeout(function(){t.restartedTimes=g,k.create(t)},n)},"function"==typeof r&&(o=setInterval(function(){r(function(e){k.sendMessage(e,c)})},s)),t={name:c,client:t,url:n,heartbeat:r,heartRate:s,heartRateTimer:o,restartTime:i,restartTimes:u,restartedTimes:g,receive:f,send:e,receiveMessageCallbacks:new Map},k.getInstance().buckets.set(c,t),k.getBucketClient(c);throw new Error("传入的url必须是ws或wss地址")},k.getBucket=function(e){e=k.getBucketName(e);if(!k.getInstance().buckets.has(e))throw new Exception("名称为".concat(e,"是WebSocket实例不存在"),k.NO_BUCKET);var t=k.getInstance().buckets.get(e);if(t&&t.client instanceof WebSocket)return t;throw new Exception("名称为".concat(e,"是WebSocket实例不存在"),k.NO_BUCKET_CLIENT)},k.setBucketKeyValue=function(e,t,n){var c=k.getBucket(n);if(!c||"object"!=typeof c||!Reflect.has(c,e))throw new Exception("名称为".concat(k.getBucketName(n),"的WebSocket Bucket不存在").concat(e,"属性"),k.NO_BUCKET_KEY);c[e]=t,k.getInstance().buckets.set(n,c)},k.getBucketClient=function(e){try{return k.getBucket(e).client}catch(e){console.log("Exception",e)}},k.getBucketName=function(e){return e||k.getInstance().bucketName},k.getBucketClientState=function(e){try{switch(k.getBucketClient(e).readyState){case WebSocket.CONNECTING:return WebSocketBucketState.CONNECTING;case WebSocket.OPEN:return WebSocketBucketState.OPEN;case WebSocket.CLOSING:return WebSocketBucketState.CLOSING;case WebSocket.CLOSED:return WebSocketBucketState.CLOSED;default:return WebSocketBucketState.FAIL}}catch(e){return WebSocketBucketState.FAIL}},k.wsErrorEventListener=function(t,e){void 0===e&&(e=void 0);try{k.getBucketClient(e).onerror=function(e){"function"==typeof t?t(e):console.warn("监听ws报错的回调函数wsError不存在")}}catch(e){console.warn("".concat(e))}},k.wsCloseEventListener=function(t,e){void 0===e&&(e=void 0);try{k.getBucketClient(e).onclose=function(e){"function"==typeof t?t(e):console.warn("监听ws关闭的回调函数wsClose不存在")}}catch(e){console.warn("".concat(e))}},k.wsOpenEventListener=function(t,e){void 0===e&&(e=void 0);try{k.getBucketClient(e).onopen=function(e){"function"==typeof t?t(e):console.warn("wsOpenEventListener缺少回调函数")}}catch(e){console.warn("".concat(e))}},k.sendMessage=function(e,t,n){if(void 0===e&&(e=""),void 0===n&&(n=!1),["CONNECTING","CLOSING","CLOSED"].includes(k.getBucketClientState(t=void 0===t?void 0:t)))n||console.warn("BUCKET:".concat(k.getBucketName(t),"|STATUS:").concat(k.getBucketClientState(t),"|无法进行消息发送"));else try{var c=k.getBucket(t).send;"function"==typeof c&&(e=c(e)),k.getBucketClient(t).send(e)}catch(e){console.warn("".concat(e))}},k.bindMessage=function(e){0<k.getBucket(e).receiveMessageCallbacks.size&&k.registerOnMessage(e)},k.receiveMessage=function(e,t){try{var n;"function"==typeof e?(n="".concat(e),k.getBucket(t).receiveMessageCallbacks.get(n)||k.getBucket(t).receiveMessageCallbacks.set(n,e)):console.warn("receiveMessage缺少回调"),k.registerOnMessage(t)}catch(e){console.warn("".concat(e))}},k.registerOnMessage=function(n){k.getBucketClient(n).onmessage=function(t){var e=k.getBucket(n).receive;"function"==typeof e&&(t=e(t,function(e){k.sendMessage(e,n)})),k.getBucket(n).receiveMessageCallbacks.forEach(function(e){try{e(t)}catch(e){console.warn("".concat(e))}})}},k.getInstance=function(){var e=k.instance;return e=e&&e instanceof k?e:k.instance=new k},k.NO_BUCKET="10001",k.NO_BUCKET_CLIENT="10002",k.NO_BUCKET_KEY="10003",k.DEFAULT_NAME="DEFAULT_BUCKET",k}());export{WebSocketBucket,jsonStringify2Parse};
2
- //# sourceMappingURL=client.io.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"client.io.js","sources":[],"sourcesContent":[],"names":[],"mappings":""}
@@ -1,25 +0,0 @@
1
- /**
2
- * Exception Class
3
- * throw diy Exception
4
- * https://developer.mozilla.org/zh-CN/docs/Web/JavaScript/Reference/Global_Objects/Error
5
- * 目前原生的错误类型
6
- * Error [一般错误类型]
7
- * SyntaxError [语法错误]
8
- * ReferenceError [不存在的变量]
9
- * RangeError [超出有效范围]
10
- * TypeError [非预期类型]
11
- * URIError [URI参数错误]
12
- * EvalError [eval函数没有正确执行]
13
- * example:: throw new Exception() catch(error) error.message,error.name,error.code,error.stack
14
- * NewException extends Exception diy yourself Exception;
15
- */
16
- export declare class Exception extends Error {
17
- name: string;
18
- message: string;
19
- /**
20
- * Error constructor
21
- * @param {String} name 自定义错误名称
22
- * @param {String|Number} message 自定义错误提示
23
- */
24
- constructor(name?: string, message?: string);
25
- }
@@ -1,2 +0,0 @@
1
- export { WebSocketBucket } from './websocket';
2
- export { jsonStringify2Parse } from './util';
@@ -1,33 +0,0 @@
1
- export declare type WebSocketUrl = `ws://${string}` | `wss://${string}`;
2
- export declare type Heartbeat = (callback: HeartbeatCallback) => void;
3
- export declare type HeartbeatCallback = (msg: string) => void;
4
- export declare type ReceiveInterceptor = (event: MessageEvent<any>, send: (msg: SendMsg) => void) => any;
5
- export declare type SendInterceptor = (event: any) => any;
6
- export declare type WebSocketBucketCreate = {
7
- url: WebSocketUrl;
8
- name?: string;
9
- heartbeat?: Heartbeat;
10
- heartRate?: Millisecond;
11
- restartTime?: Millisecond;
12
- restartTimes?: number;
13
- restartedTimes?: number;
14
- receive?: ReceiveInterceptor;
15
- send?: SendInterceptor;
16
- };
17
- export declare type WebSocketBucketOptions = {
18
- name: string;
19
- client: WebSocket;
20
- url: WebSocketUrl;
21
- heartbeat?: Heartbeat;
22
- heartRate: Millisecond;
23
- heartRateTimer: number;
24
- restartTime: Millisecond;
25
- restartTimes: number;
26
- restartedTimes: number;
27
- receive?: ReceiveInterceptor;
28
- send?: SendInterceptor;
29
- receiveMessageCallbacks: Map<string, (event: MessageEvent<any>) => void>;
30
- [key: string]: unknown;
31
- };
32
- export declare type Millisecond = number;
33
- export declare type SendMsg = string | ArrayBufferLike | Blob | ArrayBufferView;
@@ -1,36 +0,0 @@
1
- export declare function isArray(obj: any): obj is any[];
2
- export declare function isNull(obj: any): obj is null;
3
- export declare function isBoolean(obj: unknown): obj is boolean;
4
- export declare function isObject(obj: any): obj is Record<string, unknown>;
5
- export declare const isPromise: <T>(obj: unknown) => obj is Promise<T>;
6
- export declare function isString(obj: any): obj is string;
7
- export declare function isNumber(obj: any): obj is number;
8
- export declare function isRegExp(obj: any): boolean;
9
- export declare function isDate(obj: any): boolean;
10
- export declare function isColor(color: any): boolean;
11
- export declare function isUndefined(obj: any): obj is undefined;
12
- export declare function isFunction(obj: any): obj is (...args: any[]) => any;
13
- export declare function isClass(value: unknown): boolean;
14
- export declare function isEmptyObject(obj: any): boolean;
15
- export declare function isEmpty(obj: any): boolean;
16
- export declare function isExist(obj: any): boolean;
17
- export declare function isWindow(el: any): el is Window;
18
- /**
19
- * 控制台消息打印
20
- * @param name
21
- * @param message
22
- * @param color
23
- * @param bgColor
24
- */
25
- export declare function consoleLog(name: string, message: string, color: string, bgColor: string): void;
26
- /**
27
- * 当前时间
28
- * @description 用于控制台打印使用
29
- */
30
- export declare function now(): string;
31
- /**
32
- * jsonStringify2Parse
33
- * @param value
34
- * @description 将JSON字符串转换为JSON对象
35
- */
36
- export declare function jsonStringify2Parse(value: unknown): any;
@@ -1,118 +0,0 @@
1
- import { SendMsg, WebSocketBucketCreate, WebSocketBucketOptions } from './types';
2
- declare enum WebSocketBucketState {
3
- CONNECTING = "CONNECTING",
4
- OPEN = "OPEN",
5
- CLOSING = "CLOSING",
6
- CLOSED = "CLOSED",
7
- FAIL = "FAIL"
8
- }
9
- /**
10
- * @class WebSocketBucket
11
- * @public
12
- * @classdesc WebSocket快速部署开发,可同开多个WebSocket,并分别命名,可对多个Client进行监听,每一个Bucket为Client运行所必需的空间环境。
13
- * @example
14
- * WebSocketBucket.create({url:'wss://ws.demo.com/socket-io'})
15
- * WebSocketBucket.sendMessage('Hello World')
16
- */
17
- export declare class WebSocketBucket {
18
- static NO_BUCKET: string;
19
- static NO_BUCKET_CLIENT: string;
20
- static NO_BUCKET_KEY: string;
21
- static DEFAULT_NAME: string;
22
- client: WebSocket | undefined;
23
- buckets: Map<string, WebSocketBucketOptions>;
24
- bucketName: string;
25
- static instance: WebSocketBucket;
26
- constructor();
27
- /**
28
- * create
29
- * 创建一个Bucket空间
30
- * @param url {string} 服务地址(SSL)
31
- * @param name {string} 实例名称
32
- * @param heartbeat {function} (sendMessage,instanceName)=>void 心跳执行函数 send {Function} 消息发送函数
33
- * @param heartRate 心跳频率 毫秒
34
- * @param restartTime 重启时间,按照通用方式,例如第一次3秒后重连如果没连上第二次就3*2=6秒后重连,如果还没有连上第三次就是3*2*2=12秒后重连,以此类推直到重连上为止,一旦重连上重连等待时间就会自动回到3秒这个初始值
35
- * @param restartTimes 重启次数,0为不限制,>0为最大重启次数
36
- * @param restartedTimes 已重启次数
37
- * @param receive 接收拦截器
38
- * @param send 发送拦截器
39
- */
40
- static create({ url, name, heartbeat, heartRate, restartTime, restartTimes, restartedTimes, receive, send, }: WebSocketBucketCreate): WebSocket | undefined;
41
- /**
42
- * readBucket
43
- * 读取Bucket空间
44
- * @param name
45
- * @return WebSocketBucketOptions
46
- */
47
- static getBucket(name: string | undefined): WebSocketBucketOptions;
48
- /**
49
- * setBucketKeyValue
50
- * 设置Bucket属性值
51
- * @param key
52
- * @param value
53
- * @param name
54
- */
55
- static setBucketKeyValue(key: string, value: number, name: string): void;
56
- /**
57
- * 获取Bucket客户端
58
- * @param name
59
- */
60
- static getBucketClient(name: string | undefined): WebSocket | undefined;
61
- /**
62
- * 获取Bucket空间名称
63
- * @param name
64
- */
65
- static getBucketName(name: string | undefined): string;
66
- /**
67
- * 获取Bucket客户端状态
68
- * @param name
69
- */
70
- static getBucketClientState(name: string | undefined): WebSocketBucketState;
71
- /**
72
- * 监听WebSocket报错
73
- * @param callback
74
- * @param name
75
- */
76
- static wsErrorEventListener(callback: (event: Event) => void, name?: undefined): void;
77
- /**
78
- * 监听WebSocket关闭
79
- * @param callback
80
- * @param name
81
- */
82
- static wsCloseEventListener(callback: (event: CloseEvent) => void, name?: undefined): void;
83
- /**
84
- * 监听WebSocket打开
85
- * @param callback
86
- * @param name
87
- */
88
- static wsOpenEventListener(callback: (event: Event) => void, name?: undefined): void;
89
- /**
90
- * 发送消息
91
- * @param msg 消息
92
- * @param name Bucket名称
93
- * @param isCloseWarn 是否关闭警告
94
- */
95
- static sendMessage(msg?: SendMsg, name?: string | undefined, isCloseWarn?: boolean): void;
96
- /**
97
- * 绑定消息
98
- * @param name
99
- */
100
- static bindMessage(name: string | undefined): void;
101
- /**
102
- * 接收消息
103
- * @param callback 接收消息的回调函数
104
- * @param name Bucket名称
105
- */
106
- static receiveMessage(callback: (event: MessageEvent<any>) => void, name?: string): void;
107
- /**
108
- * 注册消息接收事件
109
- * @param name
110
- */
111
- static registerOnMessage(name?: string): void;
112
- /**
113
- * 获取单例实例
114
- * @description 采用单例方式有利于减少内存占用
115
- */
116
- static getInstance(): WebSocketBucket;
117
- }
118
- export {};
@@ -1,2 +0,0 @@
1
- !function(e,t){"object"==typeof exports&&"undefined"!=typeof module?t(exports):"function"==typeof define&&define.amd?define(["exports"],t):t((e="undefined"!=typeof globalThis?globalThis:e||self).Transform={})}(this,function(e){"use strict";function g(e,t,n,c){console.log("".concat("\n"," %c ").concat(e," %c ").concat(t," ").concat("\n"),"color: ".concat(n,"; background: ").concat(c,"; padding:5px 0;border-radius:3px 0 0 3px;"),"color:#666666;background: #f1f5fa; padding:5px 0;border-radius:0 3px 3px 0;")}function d(){return"".concat((new Date).getHours()<10?"0"+(new Date).getHours():(new Date).getHours(),":").concat((new Date).getMinutes()<10?"0"+(new Date).getMinutes():(new Date).getMinutes(),":").concat((new Date).getSeconds()<10?"0"+(new Date).getSeconds():(new Date).getSeconds())}var r=function(e,t){return(r=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var n in t)Object.prototype.hasOwnProperty.call(t,n)&&(e[n]=t[n])})(e,t)};var t,o=function(c){var e=o,t=c;if("function"!=typeof t&&null!==t)throw new TypeError("Class extends value "+String(t)+" is not a constructor or null");function n(){this.constructor=e}function o(e,t){var n=c.call(this,t)||this;return n.name="Client.io Error",n.message="Error message",n.name=e||n.name,n.message=t||n.message,n.stack=(new Error).stack,n}return r(e,t),e.prototype=null===t?Object.create(t):(n.prototype=t.prototype,new n),o}(Error),n=((n=t=t||{}).CONNECTING="CONNECTING",n.OPEN="OPEN",n.CLOSING="CLOSING",n.CLOSED="CLOSED",n.FAIL="FAIL",k.create=function(e){var c,o,t,n=e.url,r=e.name,a=e.heartbeat,s=e.heartRate,s=void 0===s?3e3:s,i=e.restartTime,i=void 0===i?5e3:i,u=e.restartTimes,u=void 0===u?0:u,f=e.restartedTimes,l=void 0===f?0:f,f=e.receive,e=e.send;if(/(ws|wss):\/\/\s*/.test(n))return c=r||k.getBucketName(r),t=new WebSocket(n),o=-1,t.onopen=function(e){g("".concat(c," ▶ SUCCESS"),"◔ ".concat(d()),"#ffffff","#1bc800"),k.setBucketKeyValue("restartedTimes",0,c),k.bindMessage(r)},t.onerror=function(e){g("".concat(c," ▶ ERROR"),"◔ ".concat(d()," ▶ ").concat(c),"#ffffff","#c80000")},t.onclose=function(e){g("".concat(c," ▶ CLOSE"),"◔ ".concat(d()," ▶ ").concat(c),"#ffffff","#000000"),clearInterval(o);var t=k.getBucket(c),n=(t.restartedTimes!==l?l=t.restartedTimes+1:l+=1,Math.pow(2,l-1)*t.restartTime);g("".concat(c," ▶ REBOOT WAITING"),"◔ ".concat(d()," ▶ ").concat(c," RESTART IN ").concat(Math.round(n/1e3)," SECONDS"),"#ffffff","#00c8b4"),setTimeout(function(){t.restartedTimes=l,k.create(t)},n)},"function"==typeof a&&(o=setInterval(function(){a(function(e){k.sendMessage(e,c)})},s)),t={name:c,client:t,url:n,heartbeat:a,heartRate:s,heartRateTimer:o,restartTime:i,restartTimes:u,restartedTimes:l,receive:f,send:e,receiveMessageCallbacks:new Map},k.getInstance().buckets.set(c,t),k.getBucketClient(c);throw new Error("传入的url必须是ws或wss地址")},k.getBucket=function(e){e=k.getBucketName(e);if(!k.getInstance().buckets.has(e))throw new o("名称为".concat(e,"是WebSocket实例不存在"),k.NO_BUCKET);var t=k.getInstance().buckets.get(e);if(t&&t.client instanceof WebSocket)return t;throw new o("名称为".concat(e,"是WebSocket实例不存在"),k.NO_BUCKET_CLIENT)},k.setBucketKeyValue=function(e,t,n){var c=k.getBucket(n);if(!c||"object"!=typeof c||!Reflect.has(c,e))throw new o("名称为".concat(k.getBucketName(n),"的WebSocket Bucket不存在").concat(e,"属性"),k.NO_BUCKET_KEY);c[e]=t,k.getInstance().buckets.set(n,c)},k.getBucketClient=function(e){try{return k.getBucket(e).client}catch(e){console.log("Exception",e)}},k.getBucketName=function(e){return e||k.getInstance().bucketName},k.getBucketClientState=function(e){try{switch(k.getBucketClient(e).readyState){case WebSocket.CONNECTING:return t.CONNECTING;case WebSocket.OPEN:return t.OPEN;case WebSocket.CLOSING:return t.CLOSING;case WebSocket.CLOSED:return t.CLOSED;default:return t.FAIL}}catch(e){return t.FAIL}},k.wsErrorEventListener=function(t,e){void 0===e&&(e=void 0);try{k.getBucketClient(e).onerror=function(e){"function"==typeof t?t(e):console.warn("监听ws报错的回调函数wsError不存在")}}catch(e){console.warn("".concat(e))}},k.wsCloseEventListener=function(t,e){void 0===e&&(e=void 0);try{k.getBucketClient(e).onclose=function(e){"function"==typeof t?t(e):console.warn("监听ws关闭的回调函数wsClose不存在")}}catch(e){console.warn("".concat(e))}},k.wsOpenEventListener=function(t,e){void 0===e&&(e=void 0);try{k.getBucketClient(e).onopen=function(e){"function"==typeof t?t(e):console.warn("wsOpenEventListener缺少回调函数")}}catch(e){console.warn("".concat(e))}},k.sendMessage=function(e,t,n){if(void 0===e&&(e=""),void 0===n&&(n=!1),["CONNECTING","CLOSING","CLOSED"].includes(k.getBucketClientState(t=void 0===t?void 0:t)))n||console.warn("BUCKET:".concat(k.getBucketName(t),"|STATUS:").concat(k.getBucketClientState(t),"|无法进行消息发送"));else try{var c=k.getBucket(t).send;"function"==typeof c&&(e=c(e)),k.getBucketClient(t).send(e)}catch(e){console.warn("".concat(e))}},k.bindMessage=function(e){0<k.getBucket(e).receiveMessageCallbacks.size&&k.registerOnMessage(e)},k.receiveMessage=function(e,t){try{var n;"function"==typeof e?(n="".concat(e),k.getBucket(t).receiveMessageCallbacks.get(n)||k.getBucket(t).receiveMessageCallbacks.set(n,e)):console.warn("receiveMessage缺少回调"),k.registerOnMessage(t)}catch(e){console.warn("".concat(e))}},k.registerOnMessage=function(n){k.getBucketClient(n).onmessage=function(t){var e=k.getBucket(n).receive;"function"==typeof e&&(t=e(t,function(e){k.sendMessage(e,n)})),k.getBucket(n).receiveMessageCallbacks.forEach(function(e){try{e(t)}catch(e){console.warn("".concat(e))}})}},k.getInstance=function(){var e=k.instance;return e=e&&e instanceof k?e:k.instance=new k},k.NO_BUCKET="10001",k.NO_BUCKET_CLIENT="10002",k.NO_BUCKET_KEY="10003",k.DEFAULT_NAME="DEFAULT_BUCKET",k);function k(){this.bucketName=k.DEFAULT_NAME,this.buckets=new Map,this.bucketName=k.DEFAULT_NAME}e.WebSocketBucket=n,e.jsonStringify2Parse=function(t){if("string"==typeof t)try{return JSON.parse(t)}catch(e){return JSON.parse(JSON.stringify('{"value":'.concat(t)))}return{}},Object.defineProperty(e,"__esModule",{value:!0})});
2
- //# sourceMappingURL=client.io.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"client.io.js","sources":[],"sourcesContent":[],"names":[],"mappings":""}
@@ -1,25 +0,0 @@
1
- /**
2
- * Exception Class
3
- * throw diy Exception
4
- * https://developer.mozilla.org/zh-CN/docs/Web/JavaScript/Reference/Global_Objects/Error
5
- * 目前原生的错误类型
6
- * Error [一般错误类型]
7
- * SyntaxError [语法错误]
8
- * ReferenceError [不存在的变量]
9
- * RangeError [超出有效范围]
10
- * TypeError [非预期类型]
11
- * URIError [URI参数错误]
12
- * EvalError [eval函数没有正确执行]
13
- * example:: throw new Exception() catch(error) error.message,error.name,error.code,error.stack
14
- * NewException extends Exception diy yourself Exception;
15
- */
16
- export declare class Exception extends Error {
17
- name: string;
18
- message: string;
19
- /**
20
- * Error constructor
21
- * @param {String} name 自定义错误名称
22
- * @param {String|Number} message 自定义错误提示
23
- */
24
- constructor(name?: string, message?: string);
25
- }
@@ -1,2 +0,0 @@
1
- export { WebSocketBucket } from './websocket';
2
- export { jsonStringify2Parse } from './util';
@@ -1,33 +0,0 @@
1
- export declare type WebSocketUrl = `ws://${string}` | `wss://${string}`;
2
- export declare type Heartbeat = (callback: HeartbeatCallback) => void;
3
- export declare type HeartbeatCallback = (msg: string) => void;
4
- export declare type ReceiveInterceptor = (event: MessageEvent<any>, send: (msg: SendMsg) => void) => any;
5
- export declare type SendInterceptor = (event: any) => any;
6
- export declare type WebSocketBucketCreate = {
7
- url: WebSocketUrl;
8
- name?: string;
9
- heartbeat?: Heartbeat;
10
- heartRate?: Millisecond;
11
- restartTime?: Millisecond;
12
- restartTimes?: number;
13
- restartedTimes?: number;
14
- receive?: ReceiveInterceptor;
15
- send?: SendInterceptor;
16
- };
17
- export declare type WebSocketBucketOptions = {
18
- name: string;
19
- client: WebSocket;
20
- url: WebSocketUrl;
21
- heartbeat?: Heartbeat;
22
- heartRate: Millisecond;
23
- heartRateTimer: number;
24
- restartTime: Millisecond;
25
- restartTimes: number;
26
- restartedTimes: number;
27
- receive?: ReceiveInterceptor;
28
- send?: SendInterceptor;
29
- receiveMessageCallbacks: Map<string, (event: MessageEvent<any>) => void>;
30
- [key: string]: unknown;
31
- };
32
- export declare type Millisecond = number;
33
- export declare type SendMsg = string | ArrayBufferLike | Blob | ArrayBufferView;
@@ -1,36 +0,0 @@
1
- export declare function isArray(obj: any): obj is any[];
2
- export declare function isNull(obj: any): obj is null;
3
- export declare function isBoolean(obj: unknown): obj is boolean;
4
- export declare function isObject(obj: any): obj is Record<string, unknown>;
5
- export declare const isPromise: <T>(obj: unknown) => obj is Promise<T>;
6
- export declare function isString(obj: any): obj is string;
7
- export declare function isNumber(obj: any): obj is number;
8
- export declare function isRegExp(obj: any): boolean;
9
- export declare function isDate(obj: any): boolean;
10
- export declare function isColor(color: any): boolean;
11
- export declare function isUndefined(obj: any): obj is undefined;
12
- export declare function isFunction(obj: any): obj is (...args: any[]) => any;
13
- export declare function isClass(value: unknown): boolean;
14
- export declare function isEmptyObject(obj: any): boolean;
15
- export declare function isEmpty(obj: any): boolean;
16
- export declare function isExist(obj: any): boolean;
17
- export declare function isWindow(el: any): el is Window;
18
- /**
19
- * 控制台消息打印
20
- * @param name
21
- * @param message
22
- * @param color
23
- * @param bgColor
24
- */
25
- export declare function consoleLog(name: string, message: string, color: string, bgColor: string): void;
26
- /**
27
- * 当前时间
28
- * @description 用于控制台打印使用
29
- */
30
- export declare function now(): string;
31
- /**
32
- * jsonStringify2Parse
33
- * @param value
34
- * @description 将JSON字符串转换为JSON对象
35
- */
36
- export declare function jsonStringify2Parse(value: unknown): any;