@soei/flyweight 0.3.7 → 0.3.9

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/README.md CHANGED
@@ -6,6 +6,29 @@
6
6
 
7
7
  [![安装](https://img.shields.io/badge/-@soei-ae8aff?style=flat-square)![NPM Downloads by package author](https://img.shields.io/npm-stat/dw/soeiz?style=flat-square)](https://npmjs.com/package/@soei/flyweight)
8
8
 
9
+ ```html
10
+ <!-- 版本 0.3.9 新增属Tips -->
11
+ <Tips
12
+ // 是否显示
13
+ visible="Boolean"
14
+ // 偏移位置
15
+ offset="Number"
16
+
17
+ // 显示内容
18
+ title="String"
19
+ content=" 条更新"
20
+
21
+ // 显示位置 按照顺序显示
22
+ position="right,top,left,bottom"
23
+ // 滚动延迟时间 ms
24
+ delay="10"
25
+ // 颜色 背景色 边框宽度
26
+ background="red|#f00"
27
+ color="red|#f00"
28
+ boder="3"
29
+ />
30
+ ```
31
+
9
32
  ```html
10
33
  <!-- 版本 0.3.6 新增属性 bridge, T==columns -->
11
34
  <!-- bridge="property" 绑定属性: columns对应属性 -->
@@ -353,7 +376,7 @@ import { Flyweight, Card } from "@soei/flyweight";
353
376
  () => notice.value,
354
377
  (val) => {
355
378
  console.log(val);
356
- }
379
+ },
357
380
  );
358
381
  </script>
359
382
 
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.7",
5
+ "version": "0.3.9",
6
6
  "type": "module",
7
7
  "main": "Flyweight.cjs",
8
8
  "module": "Flyweight.js",
@@ -19,6 +19,7 @@
19
19
  "preview": "vite preview"
20
20
  },
21
21
  "dependencies": {
22
+ "@soei/tools": "^1.0.15",
22
23
  "@soei/util": "^1.1.8"
23
24
  },
24
25
  "keywords": [
package/style.css CHANGED
@@ -1 +1 @@
1
- @charset "UTF-8";.flyweight[data-v-ae52e0f1]{height:var(--flyweight-h, 100%);width:var(--flyweight-w, 100%);overflow:auto;position:relative}.flyweight[hover-scroll][data-v-ae52e0f1]::-webkit-scrollbar-track,.flyweight[auto-scroll][data-v-ae52e0f1]::-webkit-scrollbar-track{border-radius:10px}.flyweight[hover-scroll][data-v-ae52e0f1]::-webkit-scrollbar-thumb,.flyweight[auto-scroll][data-v-ae52e0f1]::-webkit-scrollbar-thumb{border-radius:10px;background-color:transparent}.flyweight[hover-scroll][data-v-ae52e0f1]::-webkit-scrollbar,.flyweight[auto-scroll][data-v-ae52e0f1]::-webkit-scrollbar{border-radius:10px;width:var(--scrollbar-width, 8px);height:var(--scrollbar-width, 8px)}.flyweight[hover-scroll][data-v-ae52e0f1]:hover::-webkit-scrollbar-thumb,.flyweight[auto-scroll][data-v-ae52e0f1]::-webkit-scrollbar-thumb{border-style:dashed;border-color:transparent;border-width:2px;background-clip:padding-box;cursor:pointer}.flyweight[hover-scroll][data-v-ae52e0f1]:hover::-webkit-scrollbar-thumb:hover,.flyweight[auto-scroll][data-v-ae52e0f1]::-webkit-scrollbar-thumb:hover{background:var(--scrollbar-color, #101010)}.flyweight[hover-scroll][data-v-ae52e0f1]:hover::-webkit-scrollbar-thumb,.flyweight[auto-scroll][data-v-ae52e0f1]::-webkit-scrollbar-thumb{background-color:var(--scrollbar-color, #101010)}.flyweight[scroll-x] .flyweight-all[data-v-ae52e0f1]{width:var(--flyweight-content);height:auto;min-height:100%}.flyweight[scroll-x] .flyweight-all[data-v-ae52e0f1]+*{left:var(--flyweight-content);position:absolute;top:0;height:100%}.flyweight .flyweight-all[data-v-ae52e0f1]{height:var(--flyweight-content)}.flyweight .flyweight-all[data-v-ae52e0f1]>*{width:calc(var(--width));height:var(--height);position:absolute}@media screen and (-apple-system: Macintosh){.flyweight .flyweight-all[data-v-ae52e0f1]{background-color:red!important}}.card[data-v-c1ad1d74]{--t: 0px;--r: 0px;--b: 0px;--l: 0px;--h: 100%;--w: 100%;--br: 1px;position:relative;background-color:var(--bg, var(--card-background-color, #fff));padding:10px;border-radius:10px;box-sizing:border-box;border-style:solid;border-color:var(--card-border-color, #555);border-width:var(--br);justify-content:flex-start;margin:var(--t) var(--r) var(--b) var(--l);height:calc(var(--h) - var(--t) - var(--b));width:calc(var(--w) - var(--l) - var(--r));overflow:auto}.card[hover-scroll][data-v-c1ad1d74]::-webkit-scrollbar-track,.card[auto-scroll][data-v-c1ad1d74]::-webkit-scrollbar-track{border-radius:10px}.card[hover-scroll][data-v-c1ad1d74]::-webkit-scrollbar-thumb,.card[auto-scroll][data-v-c1ad1d74]::-webkit-scrollbar-thumb{border-radius:10px;background-color:transparent}.card[hover-scroll][data-v-c1ad1d74]::-webkit-scrollbar,.card[auto-scroll][data-v-c1ad1d74]::-webkit-scrollbar{border-radius:10px;width:var(--scrollbar-width, 8px);height:var(--scrollbar-width, 8px)}.card[hover-scroll][data-v-c1ad1d74]:hover::-webkit-scrollbar-thumb,.card[auto-scroll][data-v-c1ad1d74]::-webkit-scrollbar-thumb{border-style:dashed;border-color:transparent;border-width:2px;background-clip:padding-box;cursor:pointer}.card[hover-scroll][data-v-c1ad1d74]:hover::-webkit-scrollbar-thumb:hover,.card[auto-scroll][data-v-c1ad1d74]::-webkit-scrollbar-thumb:hover{background:var(--scrollbar-color, #101010)}.card[hover-scroll][data-v-c1ad1d74]:hover::-webkit-scrollbar-thumb,.card[auto-scroll][data-v-c1ad1d74]::-webkit-scrollbar-thumb{background-color:var(--scrollbar-color, #101010)}.card[simply][data-v-c1ad1d74],.card [simply][data-v-c1ad1d74]{background-color:inherit;border:0!important}.card[flex][data-v-c1ad1d74],.card [flex][data-v-c1ad1d74]{display:flex}.card[column][data-v-c1ad1d74],.card [column][data-v-c1ad1d74]{flex-direction:column}.card[row][data-v-c1ad1d74],.card [row][data-v-c1ad1d74]{flex-direction:row}.card[center][data-v-c1ad1d74],.card [center][data-v-c1ad1d74]{justify-content:center}.card[vcenter][data-v-c1ad1d74],.card [vcenter][data-v-c1ad1d74]{align-items:center}.card .card-title[data-v-c1ad1d74]{max-height:40px}.card .card-close[data-v-c1ad1d74]{position:absolute;width:20px;height:20px;right:10px;top:10px;border-radius:10px;z-index:1;--s-transform: 45deg;--s-hover-transform: 35deg;--s-close-width: 11px;--s-close-height: 2px;cursor:pointer;background-color:var(--s-card-close-background-color, transparent);transition:all .3s ease}.card .card-close.hide[data-v-c1ad1d74]{display:none}.card .card-close[data-v-c1ad1d74]:before,.card .card-close[data-v-c1ad1d74]:after{content:"";width:var(--s-close-width, 11px);height:var(--s-close-height, 2px);background-color:var(--s-card-close-color, #555);transform-origin:center;position:inherit;border-radius:10px;top:calc(50% - var(--s-close-height, 2px) / 2);left:calc(50% - var(--s-close-width, 11px) / 2)}.card .card-close[data-v-c1ad1d74]:before{transform:rotate(var(--s-transform, 45deg))}.card .card-close[data-v-c1ad1d74]:after{transform:rotate(calc(0deg - var(--s-transform, 45deg)))}.card .card-close[data-v-c1ad1d74]:hover:before{transform:rotate(var(--s-hover-transform, 45deg))}.card .card-close[data-v-c1ad1d74]:hover:after{transform:rotate(calc(0deg - var(--s-hover-transform, 45deg)))}.card .card-content[data-v-c1ad1d74]{overflow:auto;height:100%}.card .card-content[data-v-c1ad1d74]:before{background:linear-gradient(90deg,transparent,var(--card-line-color, transparent),var(--card-line-color, transparent),transparent);content:"";display:block;position:sticky;top:0;width:100%;height:1px;z-index:10;transition:opacity .5s ease-in-out}
1
+ @charset "UTF-8";.flyweight[data-v-35b94e9b]{height:var(--flyweight-h, 100%);width:var(--flyweight-w, 100%);overflow:auto;position:relative}.flyweight[hover-scroll][data-v-35b94e9b]::-webkit-scrollbar-track,.flyweight[auto-scroll][data-v-35b94e9b]::-webkit-scrollbar-track{border-radius:10px}.flyweight[hover-scroll][data-v-35b94e9b]::-webkit-scrollbar-thumb,.flyweight[auto-scroll][data-v-35b94e9b]::-webkit-scrollbar-thumb{border-radius:10px;background-color:transparent}.flyweight[hover-scroll][data-v-35b94e9b]::-webkit-scrollbar,.flyweight[auto-scroll][data-v-35b94e9b]::-webkit-scrollbar{border-radius:10px;width:var(--scrollbar-width, 8px);height:var(--scrollbar-width, 8px)}.flyweight[hover-scroll][data-v-35b94e9b]:hover::-webkit-scrollbar-thumb,.flyweight[auto-scroll][data-v-35b94e9b]::-webkit-scrollbar-thumb{border-style:dashed;border-color:transparent;border-width:2px;background-clip:padding-box;cursor:pointer}.flyweight[hover-scroll][data-v-35b94e9b]:hover::-webkit-scrollbar-thumb:hover,.flyweight[auto-scroll][data-v-35b94e9b]::-webkit-scrollbar-thumb:hover{background:var(--scrollbar-color, #101010)}.flyweight[hover-scroll][data-v-35b94e9b]:hover::-webkit-scrollbar-thumb,.flyweight[auto-scroll][data-v-35b94e9b]::-webkit-scrollbar-thumb{background-color:var(--scrollbar-color, #101010)}.flyweight[scroll-x] .flyweight-all[data-v-35b94e9b]{width:var(--flyweight-content);height:auto;min-height:100%}.flyweight[scroll-x] .flyweight-all[data-v-35b94e9b]+*{left:var(--flyweight-content);position:absolute;top:0;height:100%}.flyweight .flyweight-all[data-v-35b94e9b]{height:var(--flyweight-content)}.flyweight .flyweight-all[data-v-35b94e9b]>*{width:calc(var(--width));height:var(--height);position:absolute}@media screen and (-apple-system: Macintosh){.flyweight .flyweight-all[data-v-35b94e9b]{background-color:red!important}}.card[data-v-2008eeb3]{--t: 0px;--r: 0px;--b: 0px;--l: 0px;--h: 100%;--w: 100%;--br: 1px}.card[hover-scroll][data-v-2008eeb3]::-webkit-scrollbar-track,.card[auto-scroll][data-v-2008eeb3]::-webkit-scrollbar-track{border-radius:10px}.card[hover-scroll][data-v-2008eeb3]::-webkit-scrollbar-thumb,.card[auto-scroll][data-v-2008eeb3]::-webkit-scrollbar-thumb{border-radius:10px;background-color:transparent}.card[hover-scroll][data-v-2008eeb3]::-webkit-scrollbar,.card[auto-scroll][data-v-2008eeb3]::-webkit-scrollbar{border-radius:10px;width:var(--scrollbar-width, 8px);height:var(--scrollbar-width, 8px)}.card[hover-scroll][data-v-2008eeb3]:hover::-webkit-scrollbar-thumb,.card[auto-scroll][data-v-2008eeb3]::-webkit-scrollbar-thumb{border-style:dashed;border-color:transparent;border-width:2px;background-clip:padding-box;cursor:pointer}.card[hover-scroll][data-v-2008eeb3]:hover::-webkit-scrollbar-thumb:hover,.card[auto-scroll][data-v-2008eeb3]::-webkit-scrollbar-thumb:hover{background:var(--scrollbar-color, #101010)}.card[hover-scroll][data-v-2008eeb3]:hover::-webkit-scrollbar-thumb,.card[auto-scroll][data-v-2008eeb3]::-webkit-scrollbar-thumb{background-color:var(--scrollbar-color, #101010)}.card[data-v-2008eeb3]{position:relative;background-color:var(--bg, var(--card-background-color, #fff));padding:var(--card-padding, 10px);border-radius:var(--card-border-radius, 10px);box-sizing:border-box;border-style:solid;border-color:var(--card-border-color, #555);border-width:var(--br);justify-content:flex-start;margin:var(--t) var(--r) var(--b) var(--l);height:calc(var(--h) - var(--t) - var(--b));width:calc(var(--w) - var(--l) - var(--r));overflow:auto}.card[simply][data-v-2008eeb3],.card [simply][data-v-2008eeb3]{background-color:inherit;border:0!important}.card[flex][data-v-2008eeb3],.card [flex][data-v-2008eeb3]{display:flex}.card[column][data-v-2008eeb3],.card [column][data-v-2008eeb3]{flex-direction:column}.card[row][data-v-2008eeb3],.card [row][data-v-2008eeb3]{flex-direction:row}.card[center][data-v-2008eeb3],.card [center][data-v-2008eeb3]{justify-content:center}.card[vcenter][data-v-2008eeb3],.card [vcenter][data-v-2008eeb3]{align-items:center}.card .card-title[data-v-2008eeb3]{max-height:40px}.card .card-close.hide[data-v-2008eeb3]{display:none}.card .card-close[data-v-2008eeb3]{position:absolute;width:20px;height:20px;right:10px;top:10px;border-radius:10px;z-index:1;--s-transform: 45deg;--s-hover-transform: 35deg;--s-close-width: 11px;--s-close-height: 2px;cursor:pointer;background-color:var(--s-card-close-background-color, transparent)}.card .card-close[data-v-2008eeb3]:before,.card .card-close[data-v-2008eeb3]:after{content:"";width:var(--s-close-width, 11px);height:var(--s-close-height, 2px);background-color:var(--s-card-close-color, #555);transform-origin:center;position:inherit;border-radius:10px;top:calc(50% - var(--s-close-height, 2px) / 2);left:calc(50% - var(--s-close-width, 11px) / 2)}.card .card-close[data-v-2008eeb3]{transition:all .3s ease}.card .card-close[data-v-2008eeb3]:before{transform:rotate(var(--s-transform, 45deg))}.card .card-close[data-v-2008eeb3]:after{transform:rotate(calc(0deg - var(--s-transform, 45deg)))}.card .card-close[data-v-2008eeb3]:hover:before{transform:rotate(var(--s-hover-transform, 45deg))}.card .card-close[data-v-2008eeb3]:hover:after{transform:rotate(calc(0deg - var(--s-hover-transform, 45deg)))}.card .card-content[data-v-2008eeb3]{overflow:auto;height:100%}.card .card-content[data-v-2008eeb3]:before{background:linear-gradient(90deg,transparent,var(--card-line-color, transparent),var(--card-line-color, transparent),transparent);content:"";display:block;position:sticky;top:0;width:100%;height:1px;z-index:10;transition:opacity .5s ease-in-out}:root{--tips-background-color: #4caf50;--tips-color: #ffffff;--tips-border-color: #ffffff;--tips-font-size: 8px;--tips-border-radius: 30px;--tips-border-width: 3;--tips-offset: 4}.tips[data-v-660ad090]{display:flex;align-items:center;position:fixed;z-index:10;background-color:var(--tips-background-color);color:var(--tips-color);border-radius:var(--tips-border-radius);padding:2px 6px;border:calc(var(--tips-border-width) * 1px) solid var(--tips-border-color);font-weight:700;box-shadow:#0000001f -2px 2px 6px;font-size:var(--tips-font-size)}.tips[animate][data-v-660ad090]{transition:all .3s}.tips-title[data-v-660ad090]{font-size:calc(var(--tips-font-size) + var(--tips-offset) * 1px);padding-right:3px}.tips[static][data-v-660ad090]{position:static!important}.tips[arrow][data-v-660ad090]:before,.tips[arrow][data-v-660ad090]:after{content:"";position:absolute;border:calc(var(--tips-border-width) * 2) solid transparent;height:0;width:0;overflow:hidden}.tips[arrow=top][data-v-660ad090]{top:-20px;right:-10px}.tips[arrow=top][data-v-660ad090]:before{border-top-color:var(--tips-border-color);bottom:calc(var(--tips-border-width) * -5);left:50%}.tips[arrow=top][data-v-660ad090]:after{border-top-color:var(--tips-background-color);bottom:calc(var(--tips-border-width) * -3.5);left:50%}.tips[arrow=bottom][data-v-660ad090]{bottom:-30px;right:-10px}.tips[arrow=bottom][data-v-660ad090]:before{border-bottom-color:var(--tips-border-color);top:calc(var(--tips-border-width) * -5);left:50%}.tips[arrow=bottom][data-v-660ad090]:after{border-bottom-color:var(--tips-background-color);top:calc(var(--tips-border-width) * -3.5);left:50%}
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,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;
1
+ "use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const o=require("@soei/util"),g=require("@soei/tools"),nt=require("@soei/picker");let lt=/(\d+|[+\-\*/]|%)/g,B={"+":(t,e)=>t+e,"-":(t,e)=>t-e,"*":(t,e)=>t*e,"/":(t,e)=>t/e,"%":(t,e,i)=>parseFloat(t)/100*i},j=(t,e)=>{let i;if(i=o.runer("match",t,lt)){let s=i.length,l,u=0,n,h=[];for(;s--;)u=i.shift(),u in B?(l&&h.push(l),u==="%"&&(h.length=2),n=u):+u&&h.push(+u),h.length==2&&(h.push(e),l=B[n].apply(null,h),h.length=0);+l||(l=+h.pop()),t=l>>0}return t},I={},w=(t,e)=>(t+"").replace(/\w+\((.*)\)/g,"$1").replace(I[e]||(I[e]=new RegExp("(?=\\s+|^)(\\d+)(?:\\.\\d{1,})?(?!(?:\\.)*\\d|%|\\w)","g")),"$1px");function H(t,e,i,s,l,u,n,h){var r=typeof t=="function"?t.options:t;e&&(r.render=e,r.staticRenderFns=i,r._compiled=!0),s&&(r.functional=!0),u&&(r._scopeId="data-v-"+u);var a;if(n?(a=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(n)},r._ssrRegister=a):l&&(a=h?function(){l.call(this,(r.functional?this.parent:this).$root.$options.shadowRoot)}:l),a)if(r.functional){r._injectStyles=a;var d=r.render;r.render=function(f,_){return a.call(_),d(f,_)}}else{var p=r.beforeCreate;r.beforeCreate=p?[].concat(p,a):[a]}return{exports:t,options:r}}let U=t=>t==null||t==null,ot=(...t)=>{console.info("::::FLYWEIGHT",...t)};const ht={name:"Flyweight",props:{flys:{type:Array,default:()=>[]},width:{type:[String,Number],default:0},height:{type:[String,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:[String,Number],default:0},left:{type:[String,Number],default:0},auto:{type:[Boolean,String],default:!1},space:{type:Object,default:()=>null},padding:{type:Boolean,default:!1}},computed:{flyweight(){return this.$refs.flyweight||""},style(){var t=this.w,e=this.h,i=this.Size,s={};return o.merge(s,{"--width":w(this.realW),"--height":w(this.realH),"--flyweight-content":w(i)},e&&{"--flyweight-h":w(e)},t&&s,{"--flyweight-w":w(t)},"mix"),s}},data(){return{flyweights:[],actice:!1,Size:null,column:1,row:1,expand:10,count:0,task:[],realW:0,realH:0}},watch:{flys(t){this.count=t.length,this.rebuild();let e=this.task.shift();e&&this.$nextTick(()=>{this.setview(e)})},view:{handler(t){this.setview(t)},immediate:!0,deep:!0},index(t){this.setindex(t)},top(t){this.flyweight.scrollTop=t},left(t){this.flyweight.scrollLeft=t}},mounted(){this.flyweights=[],this.$set||(this.$set=(t,e,i)=>{t[e]=i}),this.setindex(this.index);try{new ResizeObserver(()=>{this.rebuild(),this.$emit("resize")}).observe(this.flyweight)}catch(t){ot(t)}this.scrollx=o.runer("hasAttribute",this.flyweight,"scroll-x"),this.BoxRule="clientHeight=>height,clientWidth=>width",this.direction=this.scrollx?"scrollLeft":"scrollTop"},methods:{exec:w,trigger(t,e){o.isArray(t)||(t=t&&e?[[t,e]]:[]),t.length&&this.lazyrun(()=>{o.each(t,(i,s)=>{this.$emit(s[0],U(s[1])?!0:s[1])})})},cheackflys(t){if(!this.flys.length)return t&&this.task.push(t),!0},setview(t){o.runer([this.cheackflys,e=>{e=e||{};let i=e.index||o.each(this.flys,(s,l,u,n)=>{if(l[u]==n)return s},e.picker,e.id);U(i)||this.setindex(i)}],this,t)},setindex(t){o.runer([this.cheackflys,({index:e})=>{this.selectIndex=e,this.$nextTick(()=>{let i=e/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:t})},lazyrun(t,e){clearTimeout(this.time),this.time=setTimeout(()=>{o.runer(t)},e||this.lazy)},run(t){let e=[],i=o.runer(this.direction,t.target),s={offset:i,top:i,width:this.realW,height:this.realH,index:i/this.expand>>0};o.merge(s,this.space),t.from||e.push(["onscroll",s]);let l=!1;o.each(this.flyweights,(u,n,h,r,a,d,p,c,f)=>{if(h=u/a>>0,c=h+r*(+(h<d%r)+(d/r>>0)),f=c*a+u%a,f>=this.count){l||(e.push(["onend"]),l=!0);return}n.index=c,n.i=f,n.data=this.flys[f];let _=[c*this.expand+n.x,n.space];p&&_.reverse(),n.top=_[0],n.left=_[1]},null,this.row,this.column,s.index,this.scrollx),this.trigger(e),e=null},scroll(t){this.run(t||{target:this.flyweight,from:"space"})},rebuild(){let t=this.count||this.flys.length,e=this.flyweights;if(!t)return e.length=t;this.count=t;let i=this.scrollx,s=this.flyweight,l=o.picker(s,this.BoxRule);this.$nextTick(()=>{let u=/true/.test(this.auto),[n,h]=this.offset,r=l.width,a=l.height,d=(j(this.width,r)||r)+n,p=j(this.height,a)+h,c=[r/d>>0||1,a/p>>0||1];i&&c.reverse();let[f,_]=c,x=this.padding,C,S=0,y,m;i?(y=d,d-=n,m=b=>b*(p-h)+(b+1)*h):(u?(d=(r-n*(f+2*x-1))/f,C=!x*n,S=x*n):(C=0,S=(r%d+n*f)/(f+1)>>0,d-=n),m=b=>b*(d+C)+(b+1)*S,y=p),this.row=_+2,this.column=f,this.realH=p-h,this.realW=d,this.expand=y,this.Size=Math.ceil(t/f)*y;let $=Math.min(t,f*this.row),v=$-1,T;for(;$-- >0;)T=v-$,this.$set(e,T,{x:n,y:h,width:d,height:p-h,space:m(T%f),data:{}});e.length=v+1;let z=[];a/y>v/f&&z.push(["onend"]),this.flyweight&&(this.flyweight[this.direction]=0),this.$nextTick(()=>{this.setindex(this.selectIndex||0),this.scroll()}),z.push(["update:space",{row:(v/f>>0)+1,column:f,showrow:this.row,showcolumn:this.column}]),this.trigger(z)})}}};var at=function(){var e=this,i=e._self._c;return i("div",{ref:"flyweight",staticClass:"flyweight",class:{"flyweight-active":e.actice},style:e.style,on:{scroll:e.scroll}},[i("div",{staticClass:"flyweight-all"},e._l(e.flyweights,function(s,l){return i("div",{key:l,style:{top:s.top+"px",left:s.left+"px"}},[e._t("default",null,null,s)],2)}),0),e.flyweights.length?e._t("end"):e._e()],2)},ut=[],ct=H(ht,at,ut,!1,null,"d5f1cd63",null,null);const V=ct.exports;function W(t,e){return e&&(t=t.replace(/[a-z]/g,"")),t.toLowerCase()}let Y={close:{handler(t){this.change(t)},deep:!0},offset:{handler(t){this.margin(t)},deep:!0}},ft=["BackGround","BordeR","Height","Width","Top","Right","Bottom","Left"],J={};o.each(ft,(t,e,i)=>{t=W(e),J["--"+W(e,!0)]=t,i[t]=function(){this.trigger++}},Y);const dt={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:Y,methods:{exec:w,isEmpty:o.isEmpty,isSimplyType:o.isSimplyType,tr(){let t={};return this.margin(this.offset),o.each(J,(e,i)=>{this.css(t,e,i)}),t},tolower:W,css(t,e,i){let s=this[i]||this.default[i];!s||this.default[i]==s||(t[e]=w(s))},change(t){o.isSimplyType(t)||(this.closecss=o.picker(t,"color=>--s-card-close-color,size=>--s-close-width,bold=>--s-close-height,*"))},margin(t){o.merge(this,o.picker(o.isString(t)?t.split(/\s*(?:,|\s+)\s*/):t,"0=>top,1|0=>right,2|0=>bottom,3|1|0=>left",!0),!0)}},mounted(){this.change(this.close)}};var pt=function(){var e=this,i=e._self._c;return i("div",{key:e.trigger,staticClass:"card",style:e.isEmpty(e.style)?e.tr():e.style},[e._t("default",function(){return[e._t("title",function(){var s;return[i("div",{staticClass:"card-title"},[e._v(" "+e._s(e.show||e.title)+" "),i("div",{staticClass:"card-close",class:{hide:e.isSimplyType(e.close)?!e.close:!1},style:e.closecss,attrs:{title:(s=e.close)==null?void 0:s.tips},on:{click:function(l){return e.$emit("close")}}})])]}),e._t("content",function(){return[i("div",{staticClass:"card-content"},[e._t("inner")],2)]})]})],2)},gt=[],_t=H(dt,pt,gt,!1,null,"ec96bb2a",null,null);const K=_t.exports,yt={name:"Stream",computed:{column(){let{columns:t,T:e}=this,i=t||e;return o.isEmpty(i)?[]:o.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,Object],default:()=>null}},methods:{trigger(t){let e=t[this.bridge]||t.type;return(this.$slots||this.$scopedSlots)[e]?e:"default"}}};var mt=function(){var e=this,i=e._self._c;return i(e.type,e._b({tag:"component"},"component",e.$attrs,!1),[e._l(e.column,function(s){return e._t(e.trigger(s),null,null,s)})],2)},vt=[],bt=H(yt,mt,vt,!1,null,null,null,null);const Q=bt.exports,q=/(?:\,|\|{2})/,M="px",X="";let Z=document.documentElement,G,D=["s-left","s-top","s-right","s-bottom"],wt={left:0,top:1,right:2,bottom:3};const A=[];var xt=nt(window,"Reflect.defineProperty|Object.defineProperty=>Proxy").Proxy;let O={},tt=null;xt(O,"delay",{get(){return this._delay},set(t){tt=St(()=>{g.runer(A)},t),this._delay=t}});O.delay=60;function St(t,e){let i=0;return function(){const s=Date.now();s-i>=e&&(i=s,g.runer(t,this,arguments))}}const E=()=>{tt()};function $t(t){A.push(t)}const N=new ResizeObserver(E);N.observe(Z);function et(t){t.onresize||(A.push([et,null,t]),t.onresize=!0);var e=Z,i=e.clientHeight,s=t.offset||15,l=t.target,u=t.room,n=t.index,h=t.position,r=l.getBoundingClientRect(),a=u.offsetHeight+s,d=u.offsetWidth+s,p="3,0,2,1".split(q),c,f=(r.height==G?r.bottom-r.top:r.height)>>0,_=(r.width==G?r.right-r.left:r.width)>>0,x=e.clientWidth-d,C=i-a,S=[r.left-d,r.top-a,x-r.right,C-r.bottom];h&&(g.each(h.split(q),function(st,R,L,rt){rt.push(L[R])},wt,c=[]),p.unshift.apply(p,c)),n=g.each(p,function(st,R,L){if(L[R]>0)return R},S);var y=0,m=0,$=0;if(n!=null){var v=n==0||n==2,T=n==3||n==1;y=T?Math.min(r.left,x):n==2?r.right+s:S[0],a-=s*+v;var z=Math.max(r.top,0),b=Math.min(r.bottom,i),F=(b-a+Math.min(i-a,z))/2;m=Math.max(v?F:n==3?r.top+f+s:Math.min(F,S[1]),0),T&&r.left>x&&($=r.left-y-s+_/2)}let P=u.classList,k=t.css;P.remove(...D),P.add(D[n]),t.index=n,k.left=y+M,k.top=m+M,k["--tips-position-top"]=v?Math.max(s,Math.min((Math.min(m+a,b)+Math.max(m,z))/2-m+s/2,a-.5*s))+M:X,k["--tips-position-left"]=$?Math.min($,d-3*s)+M:X}const Tt={name:"Tips",props:{visible:{type:[Boolean,String,Number],default:!0},content:{type:String,default:""},title:{type:[String,Number],default:""},position:{type:String,default:"top"},offset:{type:[String,Number],default:void 0},fontSize:{type:[String,Number],default:void 0},border:{type:[String,Number],default:void 0},color:{type:[String,Number],default:void 0},background:{type:[String,Number],default:void 0},static:{type:Boolean,default:!1},delay:{type:[String,Number],default:10}},watch:{visible:function(t){t&&this.$nextTick(()=>{this.init()})}},data(){return{css:{}}},methods:{parent(t){let e=this.$el,i;for(;e&&(e=e.parentNode,e&&e.nodeType==1||(e=window,i=!0),g.runer(t,null,e,i),!i););},attr(t,e,i){return g.runer(t[i===void 0?"getAttribute":"setAttribute"],t,e,i)},init(){this.$el.nodeName!="#comment"&&et({onresize:!1,target:this.$el.parentNode,room:this.$el,position:this.position,css:this.css,offset:+this.offset})},scrollListener(){this.static||this.parent((t,e,i)=>{e?g.runer(t.addEventListener,t,"scroll",E):(g.runer(N.observe,N,t),(t.offsetHeight<t.scrollHeight||t.offsetWidth<t.scrollWidth)&&(i=this.attr(t,"-tips-scroll"),i||(g.runer(t.addEventListener,t,"scroll",E),this.attr(t,"-tips-scroll","true"))))})}},mounted(){o.merge(this.css,o.picker(this.$props,"color=>--tips-color,background=>--tips-background-color,border=>--tips-border-width,fontSize=>--tips-font-size")),this.init(),O.delay=+this.delay,$t(t=>{this.scrollListener()}),this.scrollListener()},unmounted(){this.parent(function(t,e){g.runer(t.removeEventListener,t,"scroll",E),g.runer(t.removeAttribute,t,"-tips-scroll",void 0),e||g.runer(N.unobserve,N,t)})}};var zt=function(){var e=this,i=e._self._c;return e.visible?i("div",e._b({staticClass:"tips",style:e.static?null:e.css,attrs:{static:e.static?"":null}},"div",e.$attrs,!1),[e._t("title",function(){return[i("div",{staticClass:"tips-title"},[e._v(e._s(e.title))])]}),e._t("content",function(){return[e._v(e._s(e.content))]})],2):e._e()},Ct=[],Nt=H(Tt,zt,Ct,!1,null,"053dbb37",null,null);const it=Nt.exports,kt=[V,K,Q,it],Rt={install(t){kt.forEach(e=>{t.component("S"+e.name,e),t.component(e.name+"S",e)})}};exports.Card=K;exports.Flyweight=V;exports.Stream=Q;exports.Tips=it;exports.default=Rt;