@soei/flyweight 0.3.6 → 0.3.7

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/Flyweight.cjs CHANGED
@@ -1 +1 @@
1
- "use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const o=require("@soei/util"),i=require("vue");let V=/(\d+|[+\-\*/]|%)/g,N={"+":(e,t)=>e+t,"-":(e,t)=>e-t,"*":(e,t)=>e*t,"/":(e,t)=>e/t,"%":(e,t,s)=>parseFloat(e)/100*s},C=(e,t)=>{let s;if(s=o.runer("match",e,V)){let r=s.length,h,n=0,l,a=[];for(;r--;)n=s.shift(),n in N?(h&&a.push(h),n==="%"&&(a.length=2),l=n):+n&&a.push(+n),a.length==2&&(a.push(t),h=N[l].apply(null,a),a.length=0);+h||(h=+a.pop()),e=h>>0}return e},L={},f=(e,t)=>(e+"").replace(/\w+\((.*)\)/g,"$1").replace(L[t]||(L[t]=new RegExp("(?=\\s+|^)(\\d+)(?:\\.\\d{1,})?(?!(?:\\.)*\\d|%|\\w)","g")),"$1px");const E=(e,t)=>{const s=e.__vccOpts||e;for(const[r,h]of t)s[r]=h;return s};let A=e=>e==null||e==null,W=(...e)=>{console.info("::::FLYWEIGHT",...e)};const M={name:"Flyweight",props:{flys:{type:Array,default:()=>[]},width:{type:Number,default:0},height:{type:Number,default:100},w:{type:[Number,String]},h:{type:[Number,String]},offset:{type:Array,default:()=>[0,0]},lazy:{type:Number,default:100},view:{type:Object,default:()=>({id:0})},index:{type:Number,default:0},top:{type:Number,default:!1},left:{type:Number,default:!1},auto:{type:[Boolean,String],default:!1},space:{type:Object,default:()=>null},padding:{type:Boolean,default:!1}},computed:{flyweight(){return this.$refs.flyweight||""},style(){var e=this.w,t=this.h,s=this.Size,r={};return o.merge(r,{"--width":f(this.realW),"--height":f(this.realH),"--flyweight-content":f(s)},t&&{"--flyweight-h":f(t)},e&&r,{"--flyweight-w":f(e)},"mix"),r}},data(){return{flyweights:[],actice:!1,Size:null,column:1,row:1,expand:10,count:0,task:[],realW:0,realH:0}},watch:{flys(e){this.count=e.length,this.rebuild();let t=this.task.shift();t&&this.$nextTick(()=>{this.setview(t)})},view:{handler(e){this.setview(e)},immediate:!0,deep:!0},index(e){this.setindex(e)},top(e){this.flyweight.scrollTop=e},left(e){this.flyweight.scrollLeft=e}},mounted(){this.flyweights=[],this.$set||(this.$set=(e,t,s)=>{e[t]=s}),this.setindex(this.index);try{new ResizeObserver(()=>{this.rebuild(),this.$emit("resize")}).observe(this.flyweight)}catch(e){W(e)}this.scrollx=o.runer("hasAttribute",this.flyweight,"scroll-x"),this.BoxRule="clientHeight=>height,clientWidth=>width",this.direction=this.scrollx?"scrollLeft":"scrollTop"},methods:{exec:f,trigger(e,t){o.isArray(e)||(e=e&&t?[[e,t]]:[]),e.length&&this.lazyrun(()=>{o.each(e,(s,r)=>{this.$emit(r[0],A(r[1])?!0:r[1])})})},cheackflys(e){if(!this.flys.length)return e&&this.task.push(e),!0},setview(e){o.runer([this.cheackflys,t=>{t=t||{};let s=t.index||o.each(this.flys,(r,h,n,l)=>{if(h[n]==l)return r},t.picker,t.id);A(s)||this.setindex(s)}],this,e)},setindex(e){o.runer([this.cheackflys,({index:t})=>{this.selectIndex=t,this.$nextTick(()=>{let s=t/this.column>>0,r=this.expand;(this.flyweight[this.direction]/r>>0)+this.row-s-1>0||(this.flyweight[this.direction]=s*r,this.scroll())})}],this,{index:e})},lazyrun(e,t){clearTimeout(this.time),this.time=setTimeout(()=>{o.runer(e)},t||this.lazy)},run(e){let t=[],s=o.runer(this.direction,e.target),r={offset:s,top:s,width:this.realW,height:this.realH,index:s/this.expand>>0};o.merge(r,this.space),e.from||t.push(["onscroll",r]);let h=!1;o.each(this.flyweights,(n,l,a,d,g,u,p,y,c)=>{if(a=n/g>>0,y=a+d*(+(a<u%d)+(u/d>>0)),c=y*g+n%g,c>=this.count){h||(t.push(["onend"]),h=!0);return}l.index=y,l.i=c,l.data=this.flys[c];let m=[y*this.expand+l.x,l.space];p&&m.reverse(),l.top=m[0],l.left=m[1]},null,this.row,this.column,r.index,this.scrollx),this.trigger(t),t=null},scroll(e){this.run(e||{target:this.flyweight,from:"space"})},rebuild(){let e=this.count||this.flys.length,t=this.flyweights;if(!e)return t.length=e;this.count=e;let s=this.scrollx,r=this.flyweight,h=o.picker(r,this.BoxRule);this.$nextTick(()=>{let n=/true/.test(this.auto),[l,a]=this.offset,d=h.width,g=h.height,u=(C(this.width,d)||d)+l,p=C(this.height,g)+a,y=[d/u>>0||1,g/p>>0||1];s&&y.reverse();let[c,m]=y,S=this.padding,b,k=0,w,z;s?(w=u,u-=l,z=x=>x*(p-a)+(x+1)*a):(n?(u=(d-l*(c+2*S-1))/c,b=!S*l,k=S*l):(b=0,k=(d%u+l*c)/(c+1)>>0,u-=l),z=x=>x*(u+b)+(x+1)*k,w=p),this.row=m+2,this.column=c,this.realH=p-a,this.realW=u,this.expand=w,this.Size=Math.ceil(e/c)*w;let T=Math.min(e,c*this.row),_=T-1,$;for(;T-- >0;)$=_-T,this.$set(t,$,{x:l,y:a,width:u,height:p-a,space:z($%c),data:{}});t.length=_+1;let v=[];g/w>_/c&&v.push(["onend"]),this.flyweight&&(this.flyweight[this.direction]=0),this.$nextTick(()=>{this.setindex(this.selectIndex||0),this.scroll()}),v.push(["update:space",{row:(_/c>>0)+1,column:c,showrow:this.row,showcolumn:this.column}]),this.trigger(v)})}}},P={class:"flyweight-all"};function j(e,t,s,r,h,n){return i.openBlock(),i.createElementBlock("div",{ref:"flyweight",class:i.normalizeClass(["flyweight",{"flyweight-active":h.actice}]),style:i.normalizeStyle(n.style),onScroll:t[0]||(t[0]=(...l)=>n.scroll&&n.scroll(...l))},[i.createElementVNode("div",P,[(i.openBlock(!0),i.createElementBlock(i.Fragment,null,i.renderList(h.flyweights,(l,a)=>(i.openBlock(),i.createElementBlock("div",{key:a,style:i.normalizeStyle({top:l.top+"px",left:l.left+"px"})},[i.renderSlot(e.$slots,"default",i.mergeProps({ref_for:!0},l),void 0,!0)],4))),128))]),h.flyweights.length?i.renderSlot(e.$slots,"end",{key:0},void 0,!0):i.createCommentVNode("",!0)],38)}const R=E(M,[["render",j],["__scopeId","data-v-ae52e0f1"]]);function B(e,t){return t&&(e=e.replace(/[a-z]/g,"")),e.toLowerCase()}let F={close:{handler(e){this.change(e)},deep:!0},offset:{handler(e){this.margin(e)},deep:!0}},q=["BackGround","BordeR","Height","Width","Top","Right","Bottom","Left"],H={};o.each(q,(e,t,s)=>{e=B(t),H["--"+B(t,!0)]=e,s[e]=function(){this.trigger++}},F);const D={name:"Card",props:{offset:{type:[String,Array],default:()=>[0,0,0,0]},background:{type:String,default:""},border:{type:String,default:"1px"},height:{type:String,default:"100%"},width:{type:String,default:"100%"},show:{type:String,default:""},close:{type:Object,default:null},title:{type:String,default:""}},data(){return{closecss:{},trigger:0,default:{top:"0px",right:"0px",bottom:"0px",left:"0px",height:"100%",width:"100%",background:"",border:"1px"}}},computed:{style(){return this.tr()}},watch:F,methods:{exec:f,isEmpty:o.isEmpty,isSimplyType:o.isSimplyType,tr(){let e={};return this.margin(this.offset),o.each(H,(t,s)=>{this.css(e,t,s)}),e},tolower:B,css(e,t,s){let r=this[s]||this.default[s];!r||this.default[s]==r||(e[t]=f(r))},change(e){o.isSimplyType(e)||(this.closecss=o.picker(e,"color=>--s-card-close-color,size=>--s-close-width,bold=>--s-close-height,*"))},margin(e){o.merge(this,o.picker(o.isString(e)?e.split(/\s*(?:,|\s+)\s*/):e,"0=>top,1|0=>right,2|0=>bottom,3|1|0=>left",!0),!0)}},mounted(){this.change(this.close)}},G={class:"card-title"},U=["title"],X={class:"card-content"};function Y(e,t,s,r,h,n){return i.openBlock(),i.createElementBlock("div",{class:"card",key:h.trigger,style:i.normalizeStyle(n.isEmpty(n.style)?n.tr():n.style)},[i.renderSlot(e.$slots,"default",{},()=>[i.renderSlot(e.$slots,"title",{},()=>{var l;return[i.createElementVNode("div",G,[i.createTextVNode(i.toDisplayString(s.show||s.title)+" ",1),i.createElementVNode("div",{class:i.normalizeClass(["card-close",{hide:n.isSimplyType(s.close)?!s.close:!1}]),style:i.normalizeStyle(h.closecss),onClick:t[0]||(t[0]=a=>e.$emit("close")),title:(l=s.close)==null?void 0:l.tips},null,14,U)])]},!0),i.renderSlot(e.$slots,"content",{},()=>[i.createElementVNode("div",X,[i.renderSlot(e.$slots,"inner",{},void 0,!0)])],!0)],!0)],4)}const O=E(D,[["render",Y],["__scopeId","data-v-c1ad1d74"]]),J={name:"Stream",computed:{column(){let{columns:e,T:t}=this,s=e||t;return o.isEmpty(s)?[]:o.isArray(s)?s:[s]}},props:{bridge:{type:String,default:"slot"},type:{type:String,default:"div"},data:{type:Array,default:()=>[]},columns:{type:Array,default:()=>null},T:{type:Array,default:()=>null}},methods:{trigger(e){let t=e[this.bridge]||e.type;return(this.$scopedSlots||this.$slots)[t]?t:"default"}}};function K(e,t,s,r,h,n){return i.openBlock(),i.createBlock(i.resolveDynamicComponent(s.type),i.normalizeProps(i.guardReactiveProps(e.$attrs)),{default:i.withCtx(()=>[(i.openBlock(!0),i.createElementBlock(i.Fragment,null,i.renderList(n.column,l=>i.renderSlot(e.$slots,n.trigger(l),i.mergeProps({key:l.type,ref_for:!0},l))),128))]),_:3},16)}const I=E(J,[["render",K]]),Q=[R,O,I],Z={install(e){Q.forEach(t=>{e.component("S"+t.name,t),e.component(t.name+"S",t)})}};exports.Card=O;exports.Flyweight=R;exports.Stream=I;exports.default=Z;
1
+ "use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const o=require("@soei/util"),i=require("vue");let V=/(\d+|[+\-\*/]|%)/g,N={"+":(e,t)=>e+t,"-":(e,t)=>e-t,"*":(e,t)=>e*t,"/":(e,t)=>e/t,"%":(e,t,s)=>parseFloat(e)/100*s},C=(e,t)=>{let s;if(s=o.runer("match",e,V)){let r=s.length,h,n=0,l,a=[];for(;r--;)n=s.shift(),n in N?(h&&a.push(h),n==="%"&&(a.length=2),l=n):+n&&a.push(+n),a.length==2&&(a.push(t),h=N[l].apply(null,a),a.length=0);+h||(h=+a.pop()),e=h>>0}return e},L={},f=(e,t)=>(e+"").replace(/\w+\((.*)\)/g,"$1").replace(L[t]||(L[t]=new RegExp("(?=\\s+|^)(\\d+)(?:\\.\\d{1,})?(?!(?:\\.)*\\d|%|\\w)","g")),"$1px");const E=(e,t)=>{const s=e.__vccOpts||e;for(const[r,h]of t)s[r]=h;return s};let A=e=>e==null||e==null,W=(...e)=>{console.info("::::FLYWEIGHT",...e)};const j={name:"Flyweight",props:{flys:{type:Array,default:()=>[]},width:{type:Number,default:0},height:{type:Number,default:100},w:{type:[Number,String]},h:{type:[Number,String]},offset:{type:Array,default:()=>[0,0]},lazy:{type:Number,default:100},view:{type:Object,default:()=>({id:0})},index:{type:Number,default:0},top:{type:Number,default:!1},left:{type:Number,default:!1},auto:{type:[Boolean,String],default:!1},space:{type:Object,default:()=>null},padding:{type:Boolean,default:!1}},computed:{flyweight(){return this.$refs.flyweight||""},style(){var e=this.w,t=this.h,s=this.Size,r={};return o.merge(r,{"--width":f(this.realW),"--height":f(this.realH),"--flyweight-content":f(s)},t&&{"--flyweight-h":f(t)},e&&r,{"--flyweight-w":f(e)},"mix"),r}},data(){return{flyweights:[],actice:!1,Size:null,column:1,row:1,expand:10,count:0,task:[],realW:0,realH:0}},watch:{flys(e){this.count=e.length,this.rebuild();let t=this.task.shift();t&&this.$nextTick(()=>{this.setview(t)})},view:{handler(e){this.setview(e)},immediate:!0,deep:!0},index(e){this.setindex(e)},top(e){this.flyweight.scrollTop=e},left(e){this.flyweight.scrollLeft=e}},mounted(){this.flyweights=[],this.$set||(this.$set=(e,t,s)=>{e[t]=s}),this.setindex(this.index);try{new ResizeObserver(()=>{this.rebuild(),this.$emit("resize")}).observe(this.flyweight)}catch(e){W(e)}this.scrollx=o.runer("hasAttribute",this.flyweight,"scroll-x"),this.BoxRule="clientHeight=>height,clientWidth=>width",this.direction=this.scrollx?"scrollLeft":"scrollTop"},methods:{exec:f,trigger(e,t){o.isArray(e)||(e=e&&t?[[e,t]]:[]),e.length&&this.lazyrun(()=>{o.each(e,(s,r)=>{this.$emit(r[0],A(r[1])?!0:r[1])})})},cheackflys(e){if(!this.flys.length)return e&&this.task.push(e),!0},setview(e){o.runer([this.cheackflys,t=>{t=t||{};let s=t.index||o.each(this.flys,(r,h,n,l)=>{if(h[n]==l)return r},t.picker,t.id);A(s)||this.setindex(s)}],this,e)},setindex(e){o.runer([this.cheackflys,({index:t})=>{this.selectIndex=t,this.$nextTick(()=>{let s=t/this.column>>0,r=this.expand;(this.flyweight[this.direction]/r>>0)+this.row-s-1>0||(this.flyweight[this.direction]=s*r,this.scroll())})}],this,{index:e})},lazyrun(e,t){clearTimeout(this.time),this.time=setTimeout(()=>{o.runer(e)},t||this.lazy)},run(e){let t=[],s=o.runer(this.direction,e.target),r={offset:s,top:s,width:this.realW,height:this.realH,index:s/this.expand>>0};o.merge(r,this.space),e.from||t.push(["onscroll",r]);let h=!1;o.each(this.flyweights,(n,l,a,d,g,u,p,y,c)=>{if(a=n/g>>0,y=a+d*(+(a<u%d)+(u/d>>0)),c=y*g+n%g,c>=this.count){h||(t.push(["onend"]),h=!0);return}l.index=y,l.i=c,l.data=this.flys[c];let m=[y*this.expand+l.x,l.space];p&&m.reverse(),l.top=m[0],l.left=m[1]},null,this.row,this.column,r.index,this.scrollx),this.trigger(t),t=null},scroll(e){this.run(e||{target:this.flyweight,from:"space"})},rebuild(){let e=this.count||this.flys.length,t=this.flyweights;if(!e)return t.length=e;this.count=e;let s=this.scrollx,r=this.flyweight,h=o.picker(r,this.BoxRule);this.$nextTick(()=>{let n=/true/.test(this.auto),[l,a]=this.offset,d=h.width,g=h.height,u=(C(this.width,d)||d)+l,p=C(this.height,g)+a,y=[d/u>>0||1,g/p>>0||1];s&&y.reverse();let[c,m]=y,S=this.padding,b,k=0,w,z;s?(w=u,u-=l,z=x=>x*(p-a)+(x+1)*a):(n?(u=(d-l*(c+2*S-1))/c,b=!S*l,k=S*l):(b=0,k=(d%u+l*c)/(c+1)>>0,u-=l),z=x=>x*(u+b)+(x+1)*k,w=p),this.row=m+2,this.column=c,this.realH=p-a,this.realW=u,this.expand=w,this.Size=Math.ceil(e/c)*w;let T=Math.min(e,c*this.row),_=T-1,$;for(;T-- >0;)$=_-T,this.$set(t,$,{x:l,y:a,width:u,height:p-a,space:z($%c),data:{}});t.length=_+1;let v=[];g/w>_/c&&v.push(["onend"]),this.flyweight&&(this.flyweight[this.direction]=0),this.$nextTick(()=>{this.setindex(this.selectIndex||0),this.scroll()}),v.push(["update:space",{row:(_/c>>0)+1,column:c,showrow:this.row,showcolumn:this.column}]),this.trigger(v)})}}},M={class:"flyweight-all"};function P(e,t,s,r,h,n){return i.openBlock(),i.createElementBlock("div",{ref:"flyweight",class:i.normalizeClass(["flyweight",{"flyweight-active":h.actice}]),style:i.normalizeStyle(n.style),onScroll:t[0]||(t[0]=(...l)=>n.scroll&&n.scroll(...l))},[i.createElementVNode("div",M,[(i.openBlock(!0),i.createElementBlock(i.Fragment,null,i.renderList(h.flyweights,(l,a)=>(i.openBlock(),i.createElementBlock("div",{key:a,style:i.normalizeStyle({top:l.top+"px",left:l.left+"px"})},[i.renderSlot(e.$slots,"default",i.mergeProps({ref_for:!0},l),void 0,!0)],4))),128))]),h.flyweights.length?i.renderSlot(e.$slots,"end",{key:0},void 0,!0):i.createCommentVNode("",!0)],38)}const O=E(j,[["render",P],["__scopeId","data-v-ae52e0f1"]]);function B(e,t){return t&&(e=e.replace(/[a-z]/g,"")),e.toLowerCase()}let R={close:{handler(e){this.change(e)},deep:!0},offset:{handler(e){this.margin(e)},deep:!0}},q=["BackGround","BordeR","Height","Width","Top","Right","Bottom","Left"],F={};o.each(q,(e,t,s)=>{e=B(t),F["--"+B(t,!0)]=e,s[e]=function(){this.trigger++}},R);const D={name:"Card",props:{offset:{type:[String,Array],default:()=>[0,0,0,0]},background:{type:String,default:""},border:{type:String,default:"1px"},height:{type:String,default:"100%"},width:{type:String,default:"100%"},show:{type:String,default:""},close:{type:Object,default:null},title:{type:String,default:""}},data(){return{closecss:{},trigger:0,default:{top:"0px",right:"0px",bottom:"0px",left:"0px",height:"100%",width:"100%",background:"",border:"1px"}}},computed:{style(){return this.tr()}},watch:R,methods:{exec:f,isEmpty:o.isEmpty,isSimplyType:o.isSimplyType,tr(){let e={};return this.margin(this.offset),o.each(F,(t,s)=>{this.css(e,t,s)}),e},tolower:B,css(e,t,s){let r=this[s]||this.default[s];!r||this.default[s]==r||(e[t]=f(r))},change(e){o.isSimplyType(e)||(this.closecss=o.picker(e,"color=>--s-card-close-color,size=>--s-close-width,bold=>--s-close-height,*"))},margin(e){o.merge(this,o.picker(o.isString(e)?e.split(/\s*(?:,|\s+)\s*/):e,"0=>top,1|0=>right,2|0=>bottom,3|1|0=>left",!0),!0)}},mounted(){this.change(this.close)}},G={class:"card-title"},U=["title"],X={class:"card-content"};function Y(e,t,s,r,h,n){return i.openBlock(),i.createElementBlock("div",{class:"card",key:h.trigger,style:i.normalizeStyle(n.isEmpty(n.style)?n.tr():n.style)},[i.renderSlot(e.$slots,"default",{},()=>[i.renderSlot(e.$slots,"title",{},()=>{var l;return[i.createElementVNode("div",G,[i.createTextVNode(i.toDisplayString(s.show||s.title)+" ",1),i.createElementVNode("div",{class:i.normalizeClass(["card-close",{hide:n.isSimplyType(s.close)?!s.close:!1}]),style:i.normalizeStyle(h.closecss),onClick:t[0]||(t[0]=a=>e.$emit("close")),title:(l=s.close)==null?void 0:l.tips},null,14,U)])]},!0),i.renderSlot(e.$slots,"content",{},()=>[i.createElementVNode("div",X,[i.renderSlot(e.$slots,"inner",{},void 0,!0)])],!0)],!0)],4)}const H=E(D,[["render",Y],["__scopeId","data-v-c1ad1d74"]]),J={name:"Stream",computed:{column(){let{columns:e,T:t}=this,s=e||t;return o.isEmpty(s)?[]:o.isArray(s)?s:[s]}},props:{bridge:{type:String,default:"slot"},type:{type:String,default:"div"},data:{type:Array,default:()=>[]},columns:{type:[Object,Array],default:()=>null},T:{type:Array,default:()=>null}},methods:{trigger(e){let t=e[this.bridge]||e.type;return(this.$slots||this.$scopedSlots)[t]?t:"default"}}};function K(e,t,s,r,h,n){return i.openBlock(),i.createBlock(i.resolveDynamicComponent(s.type),i.normalizeProps(i.guardReactiveProps(e.$attrs)),{default:i.withCtx(()=>[(i.openBlock(!0),i.createElementBlock(i.Fragment,null,i.renderList(n.column,l=>i.renderSlot(e.$slots,n.trigger(l),i.mergeProps({key:l.type,ref_for:!0},l))),128))]),_:3},16)}const I=E(J,[["render",K]]),Q=[O,H,I],Z={install(e){Q.forEach(t=>{e.component("S"+t.name,t),e.component(t.name+"S",t)})}};exports.Card=H;exports.Flyweight=O;exports.Stream=I;exports.default=Z;
package/Flyweight.js CHANGED
@@ -22,7 +22,7 @@ let rt = /(\d+|[+\-\*/]|%)/g, I = {
22
22
  j[e] || (j[e] = new RegExp("(?=\\s+|^)(\\d+)(?:\\.\\d{1,})?(?!(?:\\.)*\\d|%|\\w)", "g")),
23
23
  "$1px"
24
24
  );
25
- const O = (t, e) => {
25
+ const E = (t, e) => {
26
26
  const s = t.__vccOpts || t;
27
27
  for (const [l, h] of e)
28
28
  s[l] = h;
@@ -296,8 +296,8 @@ function at(t, e, s, l, h, r) {
296
296
  h.flyweights.length ? p(t.$slots, "end", { key: 0 }, void 0, !0) : K("", !0)
297
297
  ], 38);
298
298
  }
299
- const ct = /* @__PURE__ */ O(nt, [["render", at], ["__scopeId", "data-v-ae52e0f1"]]);
300
- function E(t, e) {
299
+ const ct = /* @__PURE__ */ E(nt, [["render", at], ["__scopeId", "data-v-ae52e0f1"]]);
300
+ function O(t, e) {
301
301
  return e && (t = t.replace(/[a-z]/g, "")), t.toLowerCase();
302
302
  }
303
303
  let Y = {
@@ -326,7 +326,7 @@ let Y = {
326
326
  b(
327
327
  ut,
328
328
  (t, e, s) => {
329
- t = E(e), q["--" + E(e, !0)] = t, s[t] = function() {
329
+ t = O(e), q["--" + O(e, !0)] = t, s[t] = function() {
330
330
  this.trigger++;
331
331
  };
332
332
  },
@@ -402,7 +402,7 @@ const dt = {
402
402
  this.css(t, e, s);
403
403
  }), t;
404
404
  },
405
- tolower: E,
405
+ tolower: O,
406
406
  css(t, e, s) {
407
407
  let l = this[s] || this.default[s];
408
408
  !l || this.default[s] == l || (t[e] = u(l));
@@ -458,7 +458,7 @@ function yt(t, e, s, l, h, r) {
458
458
  ], !0)
459
459
  ], 4);
460
460
  }
461
- const mt = /* @__PURE__ */ O(dt, [["render", yt], ["__scopeId", "data-v-c1ad1d74"]]), wt = {
461
+ const mt = /* @__PURE__ */ E(dt, [["render", yt], ["__scopeId", "data-v-c1ad1d74"]]), wt = {
462
462
  name: "Stream",
463
463
  computed: {
464
464
  column() {
@@ -481,7 +481,7 @@ const mt = /* @__PURE__ */ O(dt, [["render", yt], ["__scopeId", "data-v-c1ad1d74
481
481
  default: () => []
482
482
  },
483
483
  columns: {
484
- type: Array,
484
+ type: [Object, Array],
485
485
  default: () => null
486
486
  },
487
487
  T: {
@@ -492,7 +492,7 @@ const mt = /* @__PURE__ */ O(dt, [["render", yt], ["__scopeId", "data-v-c1ad1d74
492
492
  methods: {
493
493
  trigger(t) {
494
494
  let e = t[this.bridge] || t.type;
495
- return (this.$scopedSlots || this.$slots)[e] ? e : "default";
495
+ return (this.$slots || this.$scopedSlots)[e] ? e : "default";
496
496
  }
497
497
  }
498
498
  };
@@ -507,7 +507,7 @@ function xt(t, e, s, l, h, r) {
507
507
  _: 3
508
508
  }, 16);
509
509
  }
510
- const _t = /* @__PURE__ */ O(wt, [["render", xt]]), bt = [ct, mt, _t], Tt = {
510
+ const _t = /* @__PURE__ */ E(wt, [["render", xt]]), bt = [ct, mt, _t], Tt = {
511
511
  install(t) {
512
512
  bt.forEach((e) => {
513
513
  t.component("S" + e.name, e), t.component(e.name + "S", e);
package/package.json CHANGED
@@ -2,7 +2,7 @@
2
2
  "name": "@soei/flyweight",
3
3
  "private": false,
4
4
  "description": "Vue组件, 列表de享元模式~减少DOM节点 flyweight, Card, Stream组件",
5
- "version": "0.3.6",
5
+ "version": "0.3.7",
6
6
  "type": "module",
7
7
  "main": "Flyweight.cjs",
8
8
  "module": "Flyweight.js",
package/vue2/index.cjs CHANGED
@@ -1 +1 @@
1
- "use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const h=require("@soei/util");let W=/(\d+|[+\-\*/]|%)/g,R={"+":(e,t)=>e+t,"-":(e,t)=>e-t,"*":(e,t)=>e*t,"/":(e,t)=>e/t,"%":(e,t,i)=>parseFloat(e)/100*i},N=(e,t)=>{let i;if(i=h.runer("match",e,W)){let s=i.length,l,u=0,r,o=[];for(;s--;)u=i.shift(),u in R?(l&&o.push(l),u==="%"&&(o.length=2),r=u):+u&&o.push(+u),o.length==2&&(o.push(t),l=R[r].apply(null,o),o.length=0);+l||(l=+o.pop()),e=l>>0}return e},F={},y=(e,t)=>(e+"").replace(/\w+\((.*)\)/g,"$1").replace(F[t]||(F[t]=new RegExp("(?=\\s+|^)(\\d+)(?:\\.\\d{1,})?(?!(?:\\.)*\\d|%|\\w)","g")),"$1px");function k(e,t,i,s,l,u,r,o){var n=typeof e=="function"?e.options:e;t&&(n.render=t,n.staticRenderFns=i,n._compiled=!0),s&&(n.functional=!0),u&&(n._scopeId="data-v-"+u);var f;if(r?(f=function(c){c=c||this.$vnode&&this.$vnode.ssrContext||this.parent&&this.parent.$vnode&&this.parent.$vnode.ssrContext,!c&&typeof __VUE_SSR_CONTEXT__<"u"&&(c=__VUE_SSR_CONTEXT__),l&&l.call(this,c),c&&c._registeredComponents&&c._registeredComponents.add(r)},n._ssrRegister=f):l&&(f=o?function(){l.call(this,(n.functional?this.parent:this).$root.$options.shadowRoot)}:l),f)if(n.functional){n._injectStyles=f;var d=n.render;n.render=function(a,g){return f.call(g),d(a,g)}}else{var p=n.beforeCreate;n.beforeCreate=p?[].concat(p,f):[f]}return{exports:e,options:n}}let A=e=>e==null||e==null,M=(...e)=>{console.info("::::FLYWEIGHT",...e)};const I={name:"Flyweight",props:{flys:{type:Array,default:()=>[]},width:{type:Number,default:0},height:{type:Number,default:100},w:{type:[Number,String]},h:{type:[Number,String]},offset:{type:Array,default:()=>[0,0]},lazy:{type:Number,default:100},view:{type:Object,default:()=>({id:0})},index:{type:Number,default:0},top:{type:Number,default:!1},left:{type:Number,default:!1},auto:{type:[Boolean,String],default:!1},space:{type:Object,default:()=>null},padding:{type:Boolean,default:!1}},computed:{flyweight(){return this.$refs.flyweight||""},style(){var e=this.w,t=this.h,i=this.Size,s={};return h.merge(s,{"--width":y(this.realW),"--height":y(this.realH),"--flyweight-content":y(i)},t&&{"--flyweight-h":y(t)},e&&s,{"--flyweight-w":y(e)},"mix"),s}},data(){return{flyweights:[],actice:!1,Size:null,column:1,row:1,expand:10,count:0,task:[],realW:0,realH:0}},watch:{flys(e){this.count=e.length,this.rebuild();let t=this.task.shift();t&&this.$nextTick(()=>{this.setview(t)})},view:{handler(e){this.setview(e)},immediate:!0,deep:!0},index(e){this.setindex(e)},top(e){this.flyweight.scrollTop=e},left(e){this.flyweight.scrollLeft=e}},mounted(){this.flyweights=[],this.$set||(this.$set=(e,t,i)=>{e[t]=i}),this.setindex(this.index);try{new ResizeObserver(()=>{this.rebuild(),this.$emit("resize")}).observe(this.flyweight)}catch(e){M(e)}this.scrollx=h.runer("hasAttribute",this.flyweight,"scroll-x"),this.BoxRule="clientHeight=>height,clientWidth=>width",this.direction=this.scrollx?"scrollLeft":"scrollTop"},methods:{exec:y,trigger(e,t){h.isArray(e)||(e=e&&t?[[e,t]]:[]),e.length&&this.lazyrun(()=>{h.each(e,(i,s)=>{this.$emit(s[0],A(s[1])?!0:s[1])})})},cheackflys(e){if(!this.flys.length)return e&&this.task.push(e),!0},setview(e){h.runer([this.cheackflys,t=>{t=t||{};let i=t.index||h.each(this.flys,(s,l,u,r)=>{if(l[u]==r)return s},t.picker,t.id);A(i)||this.setindex(i)}],this,e)},setindex(e){h.runer([this.cheackflys,({index:t})=>{this.selectIndex=t,this.$nextTick(()=>{let i=t/this.column>>0,s=this.expand;(this.flyweight[this.direction]/s>>0)+this.row-i-1>0||(this.flyweight[this.direction]=i*s,this.scroll())})}],this,{index:e})},lazyrun(e,t){clearTimeout(this.time),this.time=setTimeout(()=>{h.runer(e)},t||this.lazy)},run(e){let t=[],i=h.runer(this.direction,e.target),s={offset:i,top:i,width:this.realW,height:this.realH,index:i/this.expand>>0};h.merge(s,this.space),e.from||t.push(["onscroll",s]);let l=!1;h.each(this.flyweights,(u,r,o,n,f,d,p,c,a)=>{if(o=u/f>>0,c=o+n*(+(o<d%n)+(d/n>>0)),a=c*f+u%f,a>=this.count){l||(t.push(["onend"]),l=!0);return}r.index=c,r.i=a,r.data=this.flys[a];let g=[c*this.expand+r.x,r.space];p&&g.reverse(),r.top=g[0],r.left=g[1]},null,this.row,this.column,s.index,this.scrollx),this.trigger(t),t=null},scroll(e){this.run(e||{target:this.flyweight,from:"space"})},rebuild(){let e=this.count||this.flys.length,t=this.flyweights;if(!e)return t.length=e;this.count=e;let i=this.scrollx,s=this.flyweight,l=h.picker(s,this.BoxRule);this.$nextTick(()=>{let u=/true/.test(this.auto),[r,o]=this.offset,n=l.width,f=l.height,d=(N(this.width,n)||n)+r,p=N(this.height,f)+o,c=[n/d>>0||1,f/p>>0||1];i&&c.reverse();let[a,g]=c,x=this.padding,v,b=0,_,$;i?(_=d,d-=r,$=m=>m*(p-o)+(m+1)*o):(u?(d=(n-r*(a+2*x-1))/a,v=!x*r,b=x*r):(v=0,b=(n%d+r*a)/(a+1)>>0,d-=r),$=m=>m*(d+v)+(m+1)*b,_=p),this.row=g+2,this.column=a,this.realH=p-o,this.realW=d,this.expand=_,this.Size=Math.ceil(e/a)*_;let S=Math.min(e,a*this.row),w=S-1,T;for(;S-- >0;)T=w-S,this.$set(t,T,{x:r,y:o,width:d,height:p-o,space:$(T%a),data:{}});t.length=w+1;let C=[];f/_>w/a&&C.push(["onend"]),this.flyweight&&(this.flyweight[this.direction]=0),this.$nextTick(()=>{this.setindex(this.selectIndex||0),this.scroll()}),C.push(["update:space",{row:(w/a>>0)+1,column:a,showrow:this.row,showcolumn:this.column}]),this.trigger(C)})}}};var U=function(){var t=this,i=t._self._c;return i("div",{ref:"flyweight",staticClass:"flyweight",class:{"flyweight-active":t.actice},style:t.style,on:{scroll:t.scroll}},[i("div",{staticClass:"flyweight-all"},t._l(t.flyweights,function(s,l){return i("div",{key:l,style:{top:s.top+"px",left:s.left+"px"}},[t._t("default",null,null,s)],2)}),0),t.flyweights.length?t._t("end"):t._e()],2)},X=[],j=k(I,U,X,!1,null,"3416ac53",null,null);const O=j.exports;function z(e,t){return t&&(e=e.replace(/[a-z]/g,"")),e.toLowerCase()}let E={close:{handler(e){this.change(e)},deep:!0},offset:{handler(e){this.margin(e)},deep:!0}},G=["BackGround","BordeR","Height","Width","Top","Right","Bottom","Left"],H={};h.each(G,(e,t,i)=>{e=z(t),H["--"+z(t,!0)]=e,i[e]=function(){this.trigger++}},E);const V={name:"Card",props:{offset:{type:[String,Array],default:()=>[0,0,0,0]},background:{type:String,default:""},border:{type:String,default:"1px"},height:{type:String,default:"100%"},width:{type:String,default:"100%"},show:{type:String,default:""},close:{type:Object,default:null},title:{type:String,default:""}},data(){return{closecss:{},trigger:0,default:{top:"0px",right:"0px",bottom:"0px",left:"0px",height:"100%",width:"100%",background:"",border:"1px"}}},computed:{style(){return this.tr()}},watch:E,methods:{exec:y,isEmpty:h.isEmpty,isSimplyType:h.isSimplyType,tr(){let e={};return this.margin(this.offset),h.each(H,(t,i)=>{this.css(e,t,i)}),e},tolower:z,css(e,t,i){let s=this[i]||this.default[i];!s||this.default[i]==s||(e[t]=y(s))},change(e){h.isSimplyType(e)||(this.closecss=h.picker(e,"color=>--s-card-close-color,size=>--s-close-width,bold=>--s-close-height,*"))},margin(e){h.merge(this,h.picker(h.isString(e)?e.split(/\s*(?:,|\s+)\s*/):e,"0=>top,1|0=>right,2|0=>bottom,3|1|0=>left",!0),!0)}},mounted(){this.change(this.close)}};var q=function(){var t=this,i=t._self._c;return i("div",{key:t.trigger,staticClass:"card",style:t.isEmpty(t.style)?t.tr():t.style},[t._t("default",function(){return[t._t("title",function(){var s;return[i("div",{staticClass:"card-title"},[t._v(" "+t._s(t.show||t.title)+" "),i("div",{staticClass:"card-close",class:{hide:t.isSimplyType(t.close)?!t.close:!1},style:t.closecss,attrs:{title:(s=t.close)==null?void 0:s.tips},on:{click:function(l){return t.$emit("close")}}})])]}),t._t("content",function(){return[i("div",{staticClass:"card-content"},[t._t("inner")],2)]})]})],2)},P=[],Y=k(V,q,P,!1,null,"16139b86",null,null);const L=Y.exports,D={name:"Stream",computed:{column(){let{columns:e,T:t}=this,i=e||t;return h.isEmpty(i)?[]:h.isArray(i)?i:[i]}},props:{bridge:{type:String,default:"slot"},type:{type:String,default:"div"},data:{type:Array,default:()=>[]},columns:{type:Array,default:()=>null},T:{type:Array,default:()=>null}},methods:{trigger(e){let t=e[this.bridge]||e.type;return(this.$scopedSlots||this.$slots)[t]?t:"default"}}};var J=function(){var t=this,i=t._self._c;return i(t.type,t._b({tag:"component"},"component",t.$attrs,!1),[t._l(t.column,function(s){return t._t(t.trigger(s),null,null,s)})],2)},K=[],Q=k(D,J,K,!1,null,null,null,null);const B=Q.exports,Z=[O,L,B],tt={install(e){Z.forEach(t=>{e.component("S"+t.name,t),e.component(t.name+"S",t)})}};exports.Card=L;exports.Flyweight=O;exports.Stream=B;exports.default=tt;
1
+ "use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const h=require("@soei/util");let W=/(\d+|[+\-\*/]|%)/g,R={"+":(e,t)=>e+t,"-":(e,t)=>e-t,"*":(e,t)=>e*t,"/":(e,t)=>e/t,"%":(e,t,i)=>parseFloat(e)/100*i},N=(e,t)=>{let i;if(i=h.runer("match",e,W)){let s=i.length,l,c=0,r,o=[];for(;s--;)c=i.shift(),c in R?(l&&o.push(l),c==="%"&&(o.length=2),r=c):+c&&o.push(+c),o.length==2&&(o.push(t),l=R[r].apply(null,o),o.length=0);+l||(l=+o.pop()),e=l>>0}return e},F={},y=(e,t)=>(e+"").replace(/\w+\((.*)\)/g,"$1").replace(F[t]||(F[t]=new RegExp("(?=\\s+|^)(\\d+)(?:\\.\\d{1,})?(?!(?:\\.)*\\d|%|\\w)","g")),"$1px");function k(e,t,i,s,l,c,r,o){var n=typeof e=="function"?e.options:e;t&&(n.render=t,n.staticRenderFns=i,n._compiled=!0),s&&(n.functional=!0),c&&(n._scopeId="data-v-"+c);var f;if(r?(f=function(u){u=u||this.$vnode&&this.$vnode.ssrContext||this.parent&&this.parent.$vnode&&this.parent.$vnode.ssrContext,!u&&typeof __VUE_SSR_CONTEXT__<"u"&&(u=__VUE_SSR_CONTEXT__),l&&l.call(this,u),u&&u._registeredComponents&&u._registeredComponents.add(r)},n._ssrRegister=f):l&&(f=o?function(){l.call(this,(n.functional?this.parent:this).$root.$options.shadowRoot)}:l),f)if(n.functional){n._injectStyles=f;var d=n.render;n.render=function(a,g){return f.call(g),d(a,g)}}else{var p=n.beforeCreate;n.beforeCreate=p?[].concat(p,f):[f]}return{exports:e,options:n}}let O=e=>e==null||e==null,M=(...e)=>{console.info("::::FLYWEIGHT",...e)};const I={name:"Flyweight",props:{flys:{type:Array,default:()=>[]},width:{type:Number,default:0},height:{type:Number,default:100},w:{type:[Number,String]},h:{type:[Number,String]},offset:{type:Array,default:()=>[0,0]},lazy:{type:Number,default:100},view:{type:Object,default:()=>({id:0})},index:{type:Number,default:0},top:{type:Number,default:!1},left:{type:Number,default:!1},auto:{type:[Boolean,String],default:!1},space:{type:Object,default:()=>null},padding:{type:Boolean,default:!1}},computed:{flyweight(){return this.$refs.flyweight||""},style(){var e=this.w,t=this.h,i=this.Size,s={};return h.merge(s,{"--width":y(this.realW),"--height":y(this.realH),"--flyweight-content":y(i)},t&&{"--flyweight-h":y(t)},e&&s,{"--flyweight-w":y(e)},"mix"),s}},data(){return{flyweights:[],actice:!1,Size:null,column:1,row:1,expand:10,count:0,task:[],realW:0,realH:0}},watch:{flys(e){this.count=e.length,this.rebuild();let t=this.task.shift();t&&this.$nextTick(()=>{this.setview(t)})},view:{handler(e){this.setview(e)},immediate:!0,deep:!0},index(e){this.setindex(e)},top(e){this.flyweight.scrollTop=e},left(e){this.flyweight.scrollLeft=e}},mounted(){this.flyweights=[],this.$set||(this.$set=(e,t,i)=>{e[t]=i}),this.setindex(this.index);try{new ResizeObserver(()=>{this.rebuild(),this.$emit("resize")}).observe(this.flyweight)}catch(e){M(e)}this.scrollx=h.runer("hasAttribute",this.flyweight,"scroll-x"),this.BoxRule="clientHeight=>height,clientWidth=>width",this.direction=this.scrollx?"scrollLeft":"scrollTop"},methods:{exec:y,trigger(e,t){h.isArray(e)||(e=e&&t?[[e,t]]:[]),e.length&&this.lazyrun(()=>{h.each(e,(i,s)=>{this.$emit(s[0],O(s[1])?!0:s[1])})})},cheackflys(e){if(!this.flys.length)return e&&this.task.push(e),!0},setview(e){h.runer([this.cheackflys,t=>{t=t||{};let i=t.index||h.each(this.flys,(s,l,c,r)=>{if(l[c]==r)return s},t.picker,t.id);O(i)||this.setindex(i)}],this,e)},setindex(e){h.runer([this.cheackflys,({index:t})=>{this.selectIndex=t,this.$nextTick(()=>{let i=t/this.column>>0,s=this.expand;(this.flyweight[this.direction]/s>>0)+this.row-i-1>0||(this.flyweight[this.direction]=i*s,this.scroll())})}],this,{index:e})},lazyrun(e,t){clearTimeout(this.time),this.time=setTimeout(()=>{h.runer(e)},t||this.lazy)},run(e){let t=[],i=h.runer(this.direction,e.target),s={offset:i,top:i,width:this.realW,height:this.realH,index:i/this.expand>>0};h.merge(s,this.space),e.from||t.push(["onscroll",s]);let l=!1;h.each(this.flyweights,(c,r,o,n,f,d,p,u,a)=>{if(o=c/f>>0,u=o+n*(+(o<d%n)+(d/n>>0)),a=u*f+c%f,a>=this.count){l||(t.push(["onend"]),l=!0);return}r.index=u,r.i=a,r.data=this.flys[a];let g=[u*this.expand+r.x,r.space];p&&g.reverse(),r.top=g[0],r.left=g[1]},null,this.row,this.column,s.index,this.scrollx),this.trigger(t),t=null},scroll(e){this.run(e||{target:this.flyweight,from:"space"})},rebuild(){let e=this.count||this.flys.length,t=this.flyweights;if(!e)return t.length=e;this.count=e;let i=this.scrollx,s=this.flyweight,l=h.picker(s,this.BoxRule);this.$nextTick(()=>{let c=/true/.test(this.auto),[r,o]=this.offset,n=l.width,f=l.height,d=(N(this.width,n)||n)+r,p=N(this.height,f)+o,u=[n/d>>0||1,f/p>>0||1];i&&u.reverse();let[a,g]=u,x=this.padding,v,b=0,_,$;i?(_=d,d-=r,$=m=>m*(p-o)+(m+1)*o):(c?(d=(n-r*(a+2*x-1))/a,v=!x*r,b=x*r):(v=0,b=(n%d+r*a)/(a+1)>>0,d-=r),$=m=>m*(d+v)+(m+1)*b,_=p),this.row=g+2,this.column=a,this.realH=p-o,this.realW=d,this.expand=_,this.Size=Math.ceil(e/a)*_;let S=Math.min(e,a*this.row),w=S-1,T;for(;S-- >0;)T=w-S,this.$set(t,T,{x:r,y:o,width:d,height:p-o,space:$(T%a),data:{}});t.length=w+1;let C=[];f/_>w/a&&C.push(["onend"]),this.flyweight&&(this.flyweight[this.direction]=0),this.$nextTick(()=>{this.setindex(this.selectIndex||0),this.scroll()}),C.push(["update:space",{row:(w/a>>0)+1,column:a,showrow:this.row,showcolumn:this.column}]),this.trigger(C)})}}};var j=function(){var t=this,i=t._self._c;return i("div",{ref:"flyweight",staticClass:"flyweight",class:{"flyweight-active":t.actice},style:t.style,on:{scroll:t.scroll}},[i("div",{staticClass:"flyweight-all"},t._l(t.flyweights,function(s,l){return i("div",{key:l,style:{top:s.top+"px",left:s.left+"px"}},[t._t("default",null,null,s)],2)}),0),t.flyweights.length?t._t("end"):t._e()],2)},U=[],X=k(I,j,U,!1,null,"3416ac53",null,null);const A=X.exports;function z(e,t){return t&&(e=e.replace(/[a-z]/g,"")),e.toLowerCase()}let E={close:{handler(e){this.change(e)},deep:!0},offset:{handler(e){this.margin(e)},deep:!0}},G=["BackGround","BordeR","Height","Width","Top","Right","Bottom","Left"],H={};h.each(G,(e,t,i)=>{e=z(t),H["--"+z(t,!0)]=e,i[e]=function(){this.trigger++}},E);const V={name:"Card",props:{offset:{type:[String,Array],default:()=>[0,0,0,0]},background:{type:String,default:""},border:{type:String,default:"1px"},height:{type:String,default:"100%"},width:{type:String,default:"100%"},show:{type:String,default:""},close:{type:Object,default:null},title:{type:String,default:""}},data(){return{closecss:{},trigger:0,default:{top:"0px",right:"0px",bottom:"0px",left:"0px",height:"100%",width:"100%",background:"",border:"1px"}}},computed:{style(){return this.tr()}},watch:E,methods:{exec:y,isEmpty:h.isEmpty,isSimplyType:h.isSimplyType,tr(){let e={};return this.margin(this.offset),h.each(H,(t,i)=>{this.css(e,t,i)}),e},tolower:z,css(e,t,i){let s=this[i]||this.default[i];!s||this.default[i]==s||(e[t]=y(s))},change(e){h.isSimplyType(e)||(this.closecss=h.picker(e,"color=>--s-card-close-color,size=>--s-close-width,bold=>--s-close-height,*"))},margin(e){h.merge(this,h.picker(h.isString(e)?e.split(/\s*(?:,|\s+)\s*/):e,"0=>top,1|0=>right,2|0=>bottom,3|1|0=>left",!0),!0)}},mounted(){this.change(this.close)}};var q=function(){var t=this,i=t._self._c;return i("div",{key:t.trigger,staticClass:"card",style:t.isEmpty(t.style)?t.tr():t.style},[t._t("default",function(){return[t._t("title",function(){var s;return[i("div",{staticClass:"card-title"},[t._v(" "+t._s(t.show||t.title)+" "),i("div",{staticClass:"card-close",class:{hide:t.isSimplyType(t.close)?!t.close:!1},style:t.closecss,attrs:{title:(s=t.close)==null?void 0:s.tips},on:{click:function(l){return t.$emit("close")}}})])]}),t._t("content",function(){return[i("div",{staticClass:"card-content"},[t._t("inner")],2)]})]})],2)},P=[],Y=k(V,q,P,!1,null,"16139b86",null,null);const L=Y.exports,D={name:"Stream",computed:{column(){let{columns:e,T:t}=this,i=e||t;return h.isEmpty(i)?[]:h.isArray(i)?i:[i]}},props:{bridge:{type:String,default:"slot"},type:{type:String,default:"div"},data:{type:Array,default:()=>[]},columns:{type:[Object,Array],default:()=>null},T:{type:Array,default:()=>null}},methods:{trigger(e){let t=e[this.bridge]||e.type;return(this.$slots||this.$scopedSlots)[t]?t:"default"}}};var J=function(){var t=this,i=t._self._c;return i(t.type,t._b({tag:"component"},"component",t.$attrs,!1),[t._l(t.column,function(s){return t._t(t.trigger(s),null,null,s)})],2)},K=[],Q=k(D,J,K,!1,null,null,null,null);const B=Q.exports,Z=[A,L,B],tt={install(e){Z.forEach(t=>{e.component("S"+t.name,t),e.component(t.name+"S",t)})}};exports.Card=L;exports.Flyweight=A;exports.Stream=B;exports.default=tt;
package/vue2/index.js CHANGED
@@ -1,24 +1,24 @@
1
- import { runer as y, merge as R, isArray as W, each as w, picker as k, isEmpty as E, isSimplyType as A, isString as U } from "@soei/util";
2
- let X = /(\d+|[+\-\*/]|%)/g, H = {
1
+ import { runer as y, merge as R, isArray as W, each as w, picker as k, isEmpty as E, isSimplyType as O, isString as U } from "@soei/util";
2
+ let X = /(\d+|[+\-\*/]|%)/g, A = {
3
3
  "+": (e, t) => e + t,
4
4
  "-": (e, t) => e - t,
5
5
  "*": (e, t) => e * t,
6
6
  "/": (e, t) => e / t,
7
7
  "%": (e, t, s) => parseFloat(e) / 100 * s
8
- }, L = (e, t) => {
8
+ }, H = (e, t) => {
9
9
  let s;
10
10
  if (s = y("match", e, X)) {
11
11
  let i = s.length, l, a = 0, r, h = [];
12
12
  for (; i--; )
13
- a = s.shift(), a in H ? (l && h.push(l), a === "%" && (h.length = 2), r = a) : +a && h.push(+a), h.length == 2 && (h.push(t), l = H[r].apply(null, h), h.length = 0);
13
+ a = s.shift(), a in A ? (l && h.push(l), a === "%" && (h.length = 2), r = a) : +a && h.push(+a), h.length == 2 && (h.push(t), l = A[r].apply(null, h), h.length = 0);
14
14
  +l || (l = +h.pop()), e = l >> 0;
15
15
  }
16
16
  return e;
17
- }, O = {}, g = (e, t) => (e + "").replace(
17
+ }, L = {}, g = (e, t) => (e + "").replace(
18
18
  /\w+\((.*)\)/g,
19
19
  "$1"
20
20
  ).replace(
21
- O[t] || (O[t] = new RegExp("(?=\\s+|^)(\\d+)(?:\\.\\d{1,})?(?!(?:\\.)*\\d|%|\\w)", "g")),
21
+ L[t] || (L[t] = new RegExp("(?=\\s+|^)(\\d+)(?:\\.\\d{1,})?(?!(?:\\.)*\\d|%|\\w)", "g")),
22
22
  "$1px"
23
23
  );
24
24
  function F(e, t, s, i, l, a, r, h) {
@@ -50,10 +50,10 @@ function F(e, t, s, i, l, a, r, h) {
50
50
  options: n
51
51
  };
52
52
  }
53
- let B = (e) => e == null || e == null, G = (...e) => {
53
+ let B = (e) => e == null || e == null, j = (...e) => {
54
54
  console.info("::::FLYWEIGHT", ...e);
55
55
  };
56
- const V = {
56
+ const G = {
57
57
  name: "Flyweight",
58
58
  props: {
59
59
  flys: {
@@ -176,7 +176,7 @@ const V = {
176
176
  this.rebuild(), this.$emit("resize");
177
177
  }).observe(this.flyweight);
178
178
  } catch (e) {
179
- G(e);
179
+ j(e);
180
180
  }
181
181
  this.scrollx = y("hasAttribute", this.flyweight, "scroll-x"), this.BoxRule = /* this.scrollx ? 'clientHeight=>width,clientWidth=>height' : */
182
182
  "clientHeight=>height,clientWidth=>width", this.direction = this.scrollx ? "scrollLeft" : "scrollTop";
@@ -264,7 +264,7 @@ const V = {
264
264
  this.count = e;
265
265
  let s = this.scrollx, i = this.flyweight, l = k(i, this.BoxRule);
266
266
  this.$nextTick(() => {
267
- let a = /true/.test(this.auto), [r, h] = this.offset, n = l.width, u = l.height, f = (L(this.width, n) || n) + r, d = L(this.height, u) + h, c = [n / f >> 0 || 1, u / d >> 0 || 1];
267
+ let a = /true/.test(this.auto), [r, h] = this.offset, n = l.width, u = l.height, f = (H(this.width, n) || n) + r, d = H(this.height, u) + h, c = [n / f >> 0 || 1, u / d >> 0 || 1];
268
268
  s && c.reverse();
269
269
  let [o, p] = c, v = this.padding, b, $ = 0, _, S;
270
270
  s ? (_ = f, f -= r, S = (m) => (
@@ -295,7 +295,7 @@ const V = {
295
295
  }
296
296
  }
297
297
  };
298
- var j = function() {
298
+ var V = function() {
299
299
  var t = this, s = t._self._c;
300
300
  return s("div", { ref: "flyweight", staticClass: "flyweight", class: {
301
301
  "flyweight-active": t.actice
@@ -306,8 +306,8 @@ var j = function() {
306
306
  } }, [t._t("default", null, null, i)], 2);
307
307
  }), 0), t.flyweights.length ? t._t("end") : t._e()], 2);
308
308
  }, Y = [], q = /* @__PURE__ */ F(
309
+ G,
309
310
  V,
310
- j,
311
311
  Y,
312
312
  !1,
313
313
  null,
@@ -414,7 +414,7 @@ const K = {
414
414
  methods: {
415
415
  exec: g,
416
416
  isEmpty: E,
417
- isSimplyType: A,
417
+ isSimplyType: O,
418
418
  tr() {
419
419
  let e = {};
420
420
  return this.margin(this.offset), w(M, (t, s) => {
@@ -427,7 +427,7 @@ const K = {
427
427
  !i || this.default[s] == i || (e[t] = g(i));
428
428
  },
429
429
  change(e) {
430
- A(e) || (this.closecss = k(
430
+ O(e) || (this.closecss = k(
431
431
  e,
432
432
  "color=>--s-card-close-color,size=>--s-close-width,bold=>--s-close-height,*"
433
433
  ));
@@ -493,7 +493,7 @@ const tt = Z.exports, et = {
493
493
  default: () => []
494
494
  },
495
495
  columns: {
496
- type: Array,
496
+ type: [Object, Array],
497
497
  default: () => null
498
498
  },
499
499
  T: {
@@ -504,7 +504,7 @@ const tt = Z.exports, et = {
504
504
  methods: {
505
505
  trigger(e) {
506
506
  let t = e[this.bridge] || e.type;
507
- return (this.$scopedSlots || this.$slots)[t] ? t : "default";
507
+ return (this.$slots || this.$scopedSlots)[t] ? t : "default";
508
508
  }
509
509
  }
510
510
  };