@soei/flyweight 0.3.3 → 0.3.5
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 +1 -1
- package/Flyweight.js +97 -58
- package/README.md +11 -0
- package/package.json +1 -1
- package/style.css +1 -1
- package/vue2/index.cjs +1 -1
- package/vue2/index.js +108 -72
- package/vue2/style.css +1 -1
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
|
|
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,T;s?(w=u,u-=l,T=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),T=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 z=Math.min(e,c*this.row),_=z-1,$;for(;z-- >0;)$=_-z,this.$set(t,$,{x:l,y:a,width:u,height:p-a,space:T($%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)})}}},j={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",j,[(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 F=E(M,[["render",P],["__scopeId","data-v-ae52e0f1"]]);function B(e,t){return t&&(e=e.replace(/[a-z]/g,"")),e.toLowerCase()}let H={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"],O={};o.each(q,(e,t,s)=>{e=B(t),O["--"+B(t,!0)]=e,s[e]=function(){this.trigger++}},H);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:H,methods:{exec:f,isEmpty:o.isEmpty,isSimplyType:o.isSimplyType,tr(){let e={};return this.margin(this.offset),o.each(O,(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 R=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.mergeProps(e.$attrs,{data:s.data}),{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,["data"])}const I=E(J,[["render",K]]),Q=[F,R,I],Z={install(e){Q.forEach(t=>{e.component("S"+t.name,t),e.component(t.name+"S",t)})}};exports.Card=R;exports.Flyweight=F;exports.Stream=I;exports.default=Z;
|
package/Flyweight.js
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import { runer as y, merge as
|
|
2
|
-
import { openBlock as
|
|
1
|
+
import { runer as y, merge as H, isArray as D, each as b, picker as R, isEmpty as G, isSimplyType as I, isString as J } from "@soei/util";
|
|
2
|
+
import { openBlock as m, createElementBlock as S, normalizeClass as P, normalizeStyle as k, createElementVNode as T, Fragment as U, renderList as X, renderSlot as p, mergeProps as E, createCommentVNode as K, createTextVNode as Q, toDisplayString as Z, createBlock as tt, resolveDynamicComponent as et, withCtx as st } from "vue";
|
|
3
3
|
let it = /(\d+|[+\-\*/]|%)/g, W = {
|
|
4
4
|
"+": (t, e) => t + e,
|
|
5
5
|
"-": (t, e) => t - e,
|
|
@@ -95,7 +95,7 @@ const rt = {
|
|
|
95
95
|
},
|
|
96
96
|
style() {
|
|
97
97
|
var t = this.w, e = this.h, s = this.Size, l = {};
|
|
98
|
-
return
|
|
98
|
+
return H(l, {
|
|
99
99
|
"--width": u(this.realW),
|
|
100
100
|
"--height": u(this.realH),
|
|
101
101
|
"--flyweight-content": u(s)
|
|
@@ -162,8 +162,8 @@ const rt = {
|
|
|
162
162
|
methods: {
|
|
163
163
|
exec: u,
|
|
164
164
|
trigger(t, e) {
|
|
165
|
-
|
|
166
|
-
|
|
165
|
+
D(t) || (t = t && e ? [[t, e]] : []), t.length && this.lazyrun(() => {
|
|
166
|
+
b(t, (s, l) => {
|
|
167
167
|
this.$emit(l[0], V(l[1]) ? !0 : l[1]);
|
|
168
168
|
});
|
|
169
169
|
});
|
|
@@ -175,7 +175,7 @@ const rt = {
|
|
|
175
175
|
setview(t) {
|
|
176
176
|
y([this.cheackflys, (e) => {
|
|
177
177
|
e = e || {};
|
|
178
|
-
let s = e.index ||
|
|
178
|
+
let s = e.index || b(this.flys, (l, h, r, i) => {
|
|
179
179
|
if (h[r] == i)
|
|
180
180
|
return l;
|
|
181
181
|
}, e.picker, e.id);
|
|
@@ -205,9 +205,9 @@ const rt = {
|
|
|
205
205
|
/* 显示区域第一行的索引 */
|
|
206
206
|
index: s / this.expand >> 0
|
|
207
207
|
};
|
|
208
|
-
|
|
208
|
+
H(l, this.space), t.from || e.push(["onscroll", l]);
|
|
209
209
|
let h = !1;
|
|
210
|
-
|
|
210
|
+
b(
|
|
211
211
|
this.flyweights,
|
|
212
212
|
(r, i, n, c, d, a, f, g, o) => {
|
|
213
213
|
if (n = r / d >> 0, g = n + c * /* 偏移量, 如果超出顶部 + 1轮,排列到列队后, 否则保持在当前*/
|
|
@@ -216,13 +216,13 @@ const rt = {
|
|
|
216
216
|
return;
|
|
217
217
|
}
|
|
218
218
|
i.index = g, i.i = o, i.data = this.flys[o];
|
|
219
|
-
let
|
|
219
|
+
let w = [
|
|
220
220
|
/* top */
|
|
221
221
|
g * this.expand + i.x,
|
|
222
222
|
/* left */
|
|
223
223
|
i.space
|
|
224
224
|
];
|
|
225
|
-
f &&
|
|
225
|
+
f && w.reverse(), i.top = w[0], i.left = w[1];
|
|
226
226
|
},
|
|
227
227
|
null,
|
|
228
228
|
this.row,
|
|
@@ -240,15 +240,15 @@ const rt = {
|
|
|
240
240
|
if (!t)
|
|
241
241
|
return e.length = t;
|
|
242
242
|
this.count = t;
|
|
243
|
-
let s = this.scrollx, l = this.flyweight, h =
|
|
243
|
+
let s = this.scrollx, l = this.flyweight, h = R(l, this.BoxRule);
|
|
244
244
|
this.$nextTick(() => {
|
|
245
245
|
let r = /true/.test(this.auto), [i, n] = this.offset, c = h.width, d = h.height, a = (j(this.width, c) || c) + i, f = j(this.height, d) + n, g = [c / a >> 0 || 1, d / f >> 0 || 1];
|
|
246
246
|
s && g.reverse();
|
|
247
|
-
let [o,
|
|
247
|
+
let [o, w] = g, z = this.padding, v, N = 0, x, B;
|
|
248
248
|
s ? (x = a, a -= i, B = (_) => (
|
|
249
249
|
/* 计算top偏移量 */
|
|
250
250
|
_ * (f - n) + (_ + 1) * n
|
|
251
|
-
)) : (r ? (a = (c - i * (o + 2 * z - 1)) / o, v = !z * i, N = z * i) : (v = 0, N = (c % a + i * o) / (o + 1) >> 0, a -= i), B = (_) => _ * (a + v) + (_ + 1) * N, x = f), this.row =
|
|
251
|
+
)) : (r ? (a = (c - i * (o + 2 * z - 1)) / o, v = !z * i, N = z * i) : (v = 0, N = (c % a + i * o) / (o + 1) >> 0, a -= i), B = (_) => _ * (a + v) + (_ + 1) * N, x = f), this.row = w + 2, this.column = o, this.realH = f - n, this.realW = a, this.expand = x, this.Size = Math.ceil(t / o) * x;
|
|
252
252
|
let C = Math.min(t, o * this.row), $ = C - 1, L;
|
|
253
253
|
for (; C-- > 0; )
|
|
254
254
|
L = $ - C, this.$set(e, L, {
|
|
@@ -260,30 +260,30 @@ const rt = {
|
|
|
260
260
|
data: {}
|
|
261
261
|
});
|
|
262
262
|
e.length = $ + 1;
|
|
263
|
-
let
|
|
264
|
-
d / x > $ / o &&
|
|
263
|
+
let A = [];
|
|
264
|
+
d / x > $ / o && A.push(["onend"]), this.flyweight && (this.flyweight[this.direction] = 0), this.$nextTick(() => {
|
|
265
265
|
this.setindex(this.selectIndex || 0), this.scroll();
|
|
266
|
-
}),
|
|
266
|
+
}), A.push(["update:space", {
|
|
267
267
|
row: ($ / o >> 0) + 1,
|
|
268
268
|
column: o,
|
|
269
269
|
showrow: this.row,
|
|
270
270
|
showcolumn: this.column
|
|
271
|
-
}]), this.trigger(
|
|
271
|
+
}]), this.trigger(A);
|
|
272
272
|
});
|
|
273
273
|
}
|
|
274
274
|
}
|
|
275
275
|
}, ht = { class: "flyweight-all" };
|
|
276
276
|
function nt(t, e, s, l, h, r) {
|
|
277
|
-
return
|
|
277
|
+
return m(), S("div", {
|
|
278
278
|
ref: "flyweight",
|
|
279
|
-
class:
|
|
279
|
+
class: P(["flyweight", {
|
|
280
280
|
"flyweight-active": h.actice
|
|
281
281
|
}]),
|
|
282
282
|
style: k(r.style),
|
|
283
283
|
onScroll: e[0] || (e[0] = (...i) => r.scroll && r.scroll(...i))
|
|
284
284
|
}, [
|
|
285
285
|
T("div", ht, [
|
|
286
|
-
(
|
|
286
|
+
(m(!0), S(U, null, X(h.flyweights, (i, n) => (m(), S("div", {
|
|
287
287
|
key: n,
|
|
288
288
|
style: k({
|
|
289
289
|
top: i.top + "px",
|
|
@@ -300,7 +300,7 @@ const ot = /* @__PURE__ */ F(rt, [["render", nt], ["__scopeId", "data-v-ae52e0f1
|
|
|
300
300
|
function O(t, e) {
|
|
301
301
|
return e && (t = t.replace(/[a-z]/g, "")), t.toLowerCase();
|
|
302
302
|
}
|
|
303
|
-
let
|
|
303
|
+
let Y = {
|
|
304
304
|
close: {
|
|
305
305
|
handler(t) {
|
|
306
306
|
this.change(t);
|
|
@@ -313,12 +313,25 @@ let U = {
|
|
|
313
313
|
},
|
|
314
314
|
deep: !0
|
|
315
315
|
}
|
|
316
|
-
}, at = [
|
|
317
|
-
|
|
318
|
-
|
|
319
|
-
|
|
320
|
-
|
|
321
|
-
|
|
316
|
+
}, at = [
|
|
317
|
+
"BackGround",
|
|
318
|
+
"BordeR",
|
|
319
|
+
"Height",
|
|
320
|
+
"Width",
|
|
321
|
+
"Top",
|
|
322
|
+
"Right",
|
|
323
|
+
"Bottom",
|
|
324
|
+
"Left"
|
|
325
|
+
], q = {};
|
|
326
|
+
b(
|
|
327
|
+
at,
|
|
328
|
+
(t, e, s) => {
|
|
329
|
+
t = O(e), q["--" + O(e, !0)] = t, s[t] = function() {
|
|
330
|
+
this.trigger++;
|
|
331
|
+
};
|
|
332
|
+
},
|
|
333
|
+
Y
|
|
334
|
+
);
|
|
322
335
|
const ct = {
|
|
323
336
|
name: "Card",
|
|
324
337
|
// inheritAttrs: false,
|
|
@@ -378,14 +391,14 @@ const ct = {
|
|
|
378
391
|
return this.tr();
|
|
379
392
|
}
|
|
380
393
|
},
|
|
381
|
-
watch:
|
|
394
|
+
watch: Y,
|
|
382
395
|
methods: {
|
|
383
396
|
exec: u,
|
|
384
|
-
isEmpty:
|
|
397
|
+
isEmpty: G,
|
|
385
398
|
isSimplyType: I,
|
|
386
399
|
tr() {
|
|
387
400
|
let t = {};
|
|
388
|
-
return this.margin(this.offset),
|
|
401
|
+
return this.margin(this.offset), b(q, (e, s) => {
|
|
389
402
|
this.css(t, e, s);
|
|
390
403
|
}), t;
|
|
391
404
|
},
|
|
@@ -395,48 +408,70 @@ const ct = {
|
|
|
395
408
|
!l || this.default[s] == l || (t[e] = u(l));
|
|
396
409
|
},
|
|
397
410
|
change(t) {
|
|
398
|
-
I(t) || (this.closecss =
|
|
411
|
+
I(t) || (this.closecss = R(
|
|
412
|
+
t,
|
|
413
|
+
"color=>--s-card-close-color,size=>--s-close-width,bold=>--s-close-height,*"
|
|
414
|
+
));
|
|
399
415
|
},
|
|
400
416
|
margin(t) {
|
|
401
|
-
|
|
402
|
-
|
|
403
|
-
|
|
417
|
+
H(
|
|
418
|
+
this,
|
|
419
|
+
R(
|
|
420
|
+
J(t) ? t.split(/\s*(?:,|\s+)\s*/) : t,
|
|
421
|
+
"0=>top,1|0=>right,2|0=>bottom,3|1|0=>left",
|
|
422
|
+
!0
|
|
423
|
+
),
|
|
404
424
|
!0
|
|
405
|
-
)
|
|
425
|
+
);
|
|
406
426
|
}
|
|
407
427
|
},
|
|
408
428
|
mounted() {
|
|
409
429
|
this.change(this.close);
|
|
410
430
|
}
|
|
411
|
-
}, ut = { class: "card-title" }, dt = { class: "card-content" };
|
|
412
|
-
function
|
|
413
|
-
return
|
|
431
|
+
}, ut = { class: "card-title" }, dt = ["title"], ft = { class: "card-content" };
|
|
432
|
+
function gt(t, e, s, l, h, r) {
|
|
433
|
+
return m(), S("div", {
|
|
414
434
|
class: "card",
|
|
415
435
|
key: h.trigger,
|
|
416
436
|
style: k(r.isEmpty(r.style) ? r.tr() : r.style)
|
|
417
437
|
}, [
|
|
418
438
|
p(t.$slots, "default", {}, () => [
|
|
419
|
-
p(t.$slots, "title", {}, () =>
|
|
420
|
-
|
|
421
|
-
|
|
422
|
-
T("div",
|
|
423
|
-
|
|
424
|
-
|
|
425
|
-
|
|
426
|
-
|
|
427
|
-
|
|
428
|
-
|
|
439
|
+
p(t.$slots, "title", {}, () => {
|
|
440
|
+
var i;
|
|
441
|
+
return [
|
|
442
|
+
T("div", ut, [
|
|
443
|
+
Q(Z(s.show || s.title) + " ", 1),
|
|
444
|
+
T("div", {
|
|
445
|
+
class: P(["card-close", { hide: r.isSimplyType(s.close) ? !s.close : !1 }]),
|
|
446
|
+
style: k(h.closecss),
|
|
447
|
+
onClick: e[0] || (e[0] = (n) => t.$emit("close")),
|
|
448
|
+
title: (i = s.close) == null ? void 0 : i.tips
|
|
449
|
+
}, null, 14, dt)
|
|
450
|
+
])
|
|
451
|
+
];
|
|
452
|
+
}, !0),
|
|
429
453
|
p(t.$slots, "content", {}, () => [
|
|
430
|
-
T("div",
|
|
454
|
+
T("div", ft, [
|
|
431
455
|
p(t.$slots, "inner", {}, void 0, !0)
|
|
432
456
|
])
|
|
433
457
|
], !0)
|
|
434
458
|
], !0)
|
|
435
459
|
], 4);
|
|
436
460
|
}
|
|
437
|
-
const
|
|
461
|
+
const pt = /* @__PURE__ */ F(ct, [["render", gt], ["__scopeId", "data-v-c1ad1d74"]]), yt = {
|
|
438
462
|
name: "Stream",
|
|
463
|
+
computed: {
|
|
464
|
+
column() {
|
|
465
|
+
let { columns: t, T: e } = this, s = t || e;
|
|
466
|
+
return G(s) ? [] : D(s) ? s : [s];
|
|
467
|
+
}
|
|
468
|
+
},
|
|
439
469
|
props: {
|
|
470
|
+
/* 桥接 指定数据字段为插槽名称 */
|
|
471
|
+
bridge: {
|
|
472
|
+
type: String,
|
|
473
|
+
default: "slot"
|
|
474
|
+
},
|
|
440
475
|
type: {
|
|
441
476
|
type: String,
|
|
442
477
|
default: "div"
|
|
@@ -445,22 +480,26 @@ const gt = /* @__PURE__ */ F(ct, [["render", ft], ["__scopeId", "data-v-4c41de24
|
|
|
445
480
|
type: Array,
|
|
446
481
|
default: () => []
|
|
447
482
|
},
|
|
483
|
+
columns: {
|
|
484
|
+
type: Array,
|
|
485
|
+
default: () => null
|
|
486
|
+
},
|
|
448
487
|
T: {
|
|
449
488
|
type: Array,
|
|
450
|
-
default: () =>
|
|
489
|
+
default: () => null
|
|
451
490
|
}
|
|
452
491
|
},
|
|
453
492
|
methods: {
|
|
454
493
|
trigger(t) {
|
|
455
|
-
let e = t.
|
|
494
|
+
let e = t[this.bridge] || t.type;
|
|
456
495
|
return (this.$scopedSlots || this.$slots)[e] ? e : "default";
|
|
457
496
|
}
|
|
458
497
|
}
|
|
459
498
|
};
|
|
460
|
-
function
|
|
461
|
-
return
|
|
499
|
+
function mt(t, e, s, l, h, r) {
|
|
500
|
+
return m(), tt(et(s.type), E(t.$attrs, { data: s.data }), {
|
|
462
501
|
default: st(() => [
|
|
463
|
-
(
|
|
502
|
+
(m(!0), S(U, null, X(r.column, (i) => p(t.$slots, r.trigger(i), E({
|
|
464
503
|
key: i.type,
|
|
465
504
|
ref_for: !0
|
|
466
505
|
}, i))), 128))
|
|
@@ -468,15 +507,15 @@ function yt(t, e, s, l, h, r) {
|
|
|
468
507
|
_: 3
|
|
469
508
|
}, 16, ["data"]);
|
|
470
509
|
}
|
|
471
|
-
const wt = /* @__PURE__ */ F(
|
|
510
|
+
const wt = /* @__PURE__ */ F(yt, [["render", mt]]), xt = [ot, pt, wt], St = {
|
|
472
511
|
install(t) {
|
|
473
|
-
|
|
512
|
+
xt.forEach((e) => {
|
|
474
513
|
t.component("S" + e.name, e), t.component(e.name + "S", e);
|
|
475
514
|
});
|
|
476
515
|
}
|
|
477
516
|
};
|
|
478
517
|
export {
|
|
479
|
-
|
|
518
|
+
pt as Card,
|
|
480
519
|
ot as Flyweight,
|
|
481
520
|
wt as Stream,
|
|
482
521
|
St as default
|
package/README.md
CHANGED
|
@@ -7,6 +7,17 @@
|
|
|
7
7
|
[](https://npmjs.com/package/@soei/flyweight)
|
|
8
8
|
|
|
9
9
|
```html
|
|
10
|
+
<!-- 版本 0.3.3 新增 属性 w, h, 默认 100% -->
|
|
11
|
+
<s-flyweight
|
|
12
|
+
...
|
|
13
|
+
h="容器高"
|
|
14
|
+
w="容器宽"
|
|
15
|
+
width="内容宽"
|
|
16
|
+
height="内容高"
|
|
17
|
+
></s-flyweight>
|
|
18
|
+
|
|
19
|
+
Or
|
|
20
|
+
|
|
10
21
|
<div style="height:100px;width:300px;">
|
|
11
22
|
<!-- 确认父容器 宽 高 存在, 依赖父容器 `宽`, `高` 计算 -->
|
|
12
23
|
<s-flyweight ...></s-flyweight>
|
package/package.json
CHANGED
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-
|
|
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}
|
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,
|
|
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",attrs:{data:t.data}},"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;
|
package/vue2/index.js
CHANGED
|
@@ -1,53 +1,53 @@
|
|
|
1
|
-
import { runer as y, merge as R, isArray as
|
|
2
|
-
let X = /(\d+|[+\-\*/]|%)/g,
|
|
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 = {
|
|
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
|
-
},
|
|
8
|
+
}, L = (e, t) => {
|
|
9
9
|
let s;
|
|
10
10
|
if (s = y("match", e, X)) {
|
|
11
|
-
let i = s.length,
|
|
11
|
+
let i = s.length, l, a = 0, r, h = [];
|
|
12
12
|
for (; i--; )
|
|
13
|
-
a = s.shift(), a in
|
|
14
|
-
+
|
|
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);
|
|
14
|
+
+l || (l = +h.pop()), e = l >> 0;
|
|
15
15
|
}
|
|
16
16
|
return e;
|
|
17
|
-
},
|
|
17
|
+
}, O = {}, g = (e, t) => (e + "").replace(
|
|
18
18
|
/\w+\((.*)\)/g,
|
|
19
19
|
"$1"
|
|
20
20
|
).replace(
|
|
21
|
-
|
|
21
|
+
O[t] || (O[t] = new RegExp("(?=\\s+|^)(\\d+)(?:\\.\\d{1,})?(?!(?:\\.)*\\d|%|\\w)", "g")),
|
|
22
22
|
"$1px"
|
|
23
23
|
);
|
|
24
|
-
function F(e, t, s, i,
|
|
25
|
-
var
|
|
26
|
-
t && (
|
|
27
|
-
var
|
|
28
|
-
if (
|
|
24
|
+
function F(e, t, s, i, l, a, r, h) {
|
|
25
|
+
var n = typeof e == "function" ? e.options : e;
|
|
26
|
+
t && (n.render = t, n.staticRenderFns = s, n._compiled = !0), i && (n.functional = !0), a && (n._scopeId = "data-v-" + a);
|
|
27
|
+
var u;
|
|
28
|
+
if (r ? (u = function(c) {
|
|
29
29
|
c = c || // cached call
|
|
30
30
|
this.$vnode && this.$vnode.ssrContext || // stateful
|
|
31
|
-
this.parent && this.parent.$vnode && this.parent.$vnode.ssrContext, !c && typeof __VUE_SSR_CONTEXT__ < "u" && (c = __VUE_SSR_CONTEXT__),
|
|
32
|
-
},
|
|
33
|
-
|
|
31
|
+
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);
|
|
32
|
+
}, n._ssrRegister = u) : l && (u = h ? function() {
|
|
33
|
+
l.call(
|
|
34
34
|
this,
|
|
35
|
-
(
|
|
35
|
+
(n.functional ? this.parent : this).$root.$options.shadowRoot
|
|
36
36
|
);
|
|
37
|
-
} :
|
|
38
|
-
if (
|
|
39
|
-
|
|
40
|
-
var
|
|
41
|
-
|
|
42
|
-
return
|
|
37
|
+
} : l), u)
|
|
38
|
+
if (n.functional) {
|
|
39
|
+
n._injectStyles = u;
|
|
40
|
+
var f = n.render;
|
|
41
|
+
n.render = function(o, p) {
|
|
42
|
+
return u.call(p), f(o, p);
|
|
43
43
|
};
|
|
44
44
|
} else {
|
|
45
|
-
var d =
|
|
46
|
-
|
|
45
|
+
var d = n.beforeCreate;
|
|
46
|
+
n.beforeCreate = d ? [].concat(d, u) : [u];
|
|
47
47
|
}
|
|
48
48
|
return {
|
|
49
49
|
exports: e,
|
|
50
|
-
options:
|
|
50
|
+
options: n
|
|
51
51
|
};
|
|
52
52
|
}
|
|
53
53
|
let B = (e) => e == null || e == null, G = (...e) => {
|
|
@@ -184,8 +184,8 @@ const V = {
|
|
|
184
184
|
methods: {
|
|
185
185
|
exec: g,
|
|
186
186
|
trigger(e, t) {
|
|
187
|
-
|
|
188
|
-
|
|
187
|
+
W(e) || (e = e && t ? [[e, t]] : []), e.length && this.lazyrun(() => {
|
|
188
|
+
w(e, (s, i) => {
|
|
189
189
|
this.$emit(i[0], B(i[1]) ? !0 : i[1]);
|
|
190
190
|
});
|
|
191
191
|
});
|
|
@@ -197,8 +197,8 @@ const V = {
|
|
|
197
197
|
setview(e) {
|
|
198
198
|
y([this.cheackflys, (t) => {
|
|
199
199
|
t = t || {};
|
|
200
|
-
let s = t.index ||
|
|
201
|
-
if (
|
|
200
|
+
let s = t.index || w(this.flys, (i, l, a, r) => {
|
|
201
|
+
if (l[a] == r)
|
|
202
202
|
return i;
|
|
203
203
|
}, t.picker, t.id);
|
|
204
204
|
B(s) || this.setindex(s);
|
|
@@ -228,23 +228,23 @@ const V = {
|
|
|
228
228
|
index: s / this.expand >> 0
|
|
229
229
|
};
|
|
230
230
|
R(i, this.space), e.from || t.push(["onscroll", i]);
|
|
231
|
-
let
|
|
232
|
-
|
|
231
|
+
let l = !1;
|
|
232
|
+
w(
|
|
233
233
|
this.flyweights,
|
|
234
|
-
(a,
|
|
235
|
-
if (h = a /
|
|
236
|
-
(+(h <
|
|
237
|
-
|
|
234
|
+
(a, r, h, n, u, f, d, c, o) => {
|
|
235
|
+
if (h = a / u >> 0, c = h + n * /* 偏移量, 如果超出顶部 + 1轮,排列到列队后, 否则保持在当前*/
|
|
236
|
+
(+(h < f % n) + (f / n >> 0)), o = c * u + a % u, o >= this.count) {
|
|
237
|
+
l || (t.push(["onend"]), l = !0);
|
|
238
238
|
return;
|
|
239
239
|
}
|
|
240
|
-
|
|
240
|
+
r.index = c, r.i = o, r.data = this.flys[o];
|
|
241
241
|
let p = [
|
|
242
242
|
/* top */
|
|
243
|
-
c * this.expand +
|
|
243
|
+
c * this.expand + r.x,
|
|
244
244
|
/* left */
|
|
245
|
-
|
|
245
|
+
r.space
|
|
246
246
|
];
|
|
247
|
-
d && p.reverse(),
|
|
247
|
+
d && p.reverse(), r.top = p[0], r.left = p[1];
|
|
248
248
|
},
|
|
249
249
|
null,
|
|
250
250
|
this.row,
|
|
@@ -262,28 +262,28 @@ const V = {
|
|
|
262
262
|
if (!e)
|
|
263
263
|
return t.length = e;
|
|
264
264
|
this.count = e;
|
|
265
|
-
let s = this.scrollx, i = this.flyweight,
|
|
265
|
+
let s = this.scrollx, i = this.flyweight, l = k(i, this.BoxRule);
|
|
266
266
|
this.$nextTick(() => {
|
|
267
|
-
let a = /true/.test(this.auto), [
|
|
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];
|
|
268
268
|
s && c.reverse();
|
|
269
|
-
let [o, p] = c, v = this.padding,
|
|
270
|
-
s ? (_ =
|
|
269
|
+
let [o, p] = c, v = this.padding, b, $ = 0, _, S;
|
|
270
|
+
s ? (_ = f, f -= r, S = (m) => (
|
|
271
271
|
/* 计算top偏移量 */
|
|
272
|
-
|
|
273
|
-
)) : (a ? (
|
|
272
|
+
m * (d - h) + (m + 1) * h
|
|
273
|
+
)) : (a ? (f = (n - r * (o + 2 * v - 1)) / o, b = !v * r, $ = v * r) : (b = 0, $ = (n % f + r * o) / (o + 1) >> 0, f -= r), S = (m) => m * (f + b) + (m + 1) * $, _ = d), this.row = p + 2, this.column = o, this.realH = d - h, this.realW = f, this.expand = _, this.Size = Math.ceil(e / o) * _;
|
|
274
274
|
let T = Math.min(e, o * this.row), x = T - 1, C;
|
|
275
275
|
for (; T-- > 0; )
|
|
276
276
|
C = x - T, this.$set(t, C, {
|
|
277
|
-
x:
|
|
277
|
+
x: r,
|
|
278
278
|
y: h,
|
|
279
|
-
width:
|
|
279
|
+
width: f,
|
|
280
280
|
height: d - h,
|
|
281
281
|
space: S(C % o),
|
|
282
282
|
data: {}
|
|
283
283
|
});
|
|
284
284
|
t.length = x + 1;
|
|
285
285
|
let z = [];
|
|
286
|
-
|
|
286
|
+
u / _ > x / o && z.push(["onend"]), this.flyweight && (this.flyweight[this.direction] = 0), this.$nextTick(() => {
|
|
287
287
|
this.setindex(this.selectIndex || 0), this.scroll();
|
|
288
288
|
}), z.push(["update:space", {
|
|
289
289
|
row: (x / o >> 0) + 1,
|
|
@@ -299,8 +299,8 @@ var j = 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
|
|
302
|
-
}, style: t.style, on: { scroll: t.scroll } }, [s("div", { staticClass: "flyweight-all" }, t._l(t.flyweights, function(i,
|
|
303
|
-
return s("div", { key:
|
|
302
|
+
}, style: t.style, on: { scroll: t.scroll } }, [s("div", { staticClass: "flyweight-all" }, t._l(t.flyweights, function(i, l) {
|
|
303
|
+
return s("div", { key: l, style: {
|
|
304
304
|
top: i.top + "px",
|
|
305
305
|
left: i.left + "px"
|
|
306
306
|
} }, [t._t("default", null, null, i)], 2);
|
|
@@ -319,7 +319,7 @@ const D = q.exports;
|
|
|
319
319
|
function N(e, t) {
|
|
320
320
|
return t && (e = e.replace(/[a-z]/g, "")), e.toLowerCase();
|
|
321
321
|
}
|
|
322
|
-
let
|
|
322
|
+
let I = {
|
|
323
323
|
close: {
|
|
324
324
|
handler(e) {
|
|
325
325
|
this.change(e);
|
|
@@ -332,12 +332,25 @@ let W = {
|
|
|
332
332
|
},
|
|
333
333
|
deep: !0
|
|
334
334
|
}
|
|
335
|
-
}, J = [
|
|
336
|
-
|
|
337
|
-
|
|
338
|
-
|
|
339
|
-
|
|
340
|
-
|
|
335
|
+
}, J = [
|
|
336
|
+
"BackGround",
|
|
337
|
+
"BordeR",
|
|
338
|
+
"Height",
|
|
339
|
+
"Width",
|
|
340
|
+
"Top",
|
|
341
|
+
"Right",
|
|
342
|
+
"Bottom",
|
|
343
|
+
"Left"
|
|
344
|
+
], M = {};
|
|
345
|
+
w(
|
|
346
|
+
J,
|
|
347
|
+
(e, t, s) => {
|
|
348
|
+
e = N(t), M["--" + N(t, !0)] = e, s[e] = function() {
|
|
349
|
+
this.trigger++;
|
|
350
|
+
};
|
|
351
|
+
},
|
|
352
|
+
I
|
|
353
|
+
);
|
|
341
354
|
const K = {
|
|
342
355
|
name: "Card",
|
|
343
356
|
// inheritAttrs: false,
|
|
@@ -397,14 +410,14 @@ const K = {
|
|
|
397
410
|
return this.tr();
|
|
398
411
|
}
|
|
399
412
|
},
|
|
400
|
-
watch:
|
|
413
|
+
watch: I,
|
|
401
414
|
methods: {
|
|
402
415
|
exec: g,
|
|
403
|
-
isEmpty:
|
|
404
|
-
isSimplyType:
|
|
416
|
+
isEmpty: E,
|
|
417
|
+
isSimplyType: A,
|
|
405
418
|
tr() {
|
|
406
419
|
let e = {};
|
|
407
|
-
return this.margin(this.offset),
|
|
420
|
+
return this.margin(this.offset), w(M, (t, s) => {
|
|
408
421
|
this.css(e, t, s);
|
|
409
422
|
}), e;
|
|
410
423
|
},
|
|
@@ -414,14 +427,21 @@ const K = {
|
|
|
414
427
|
!i || this.default[s] == i || (e[t] = g(i));
|
|
415
428
|
},
|
|
416
429
|
change(e) {
|
|
417
|
-
|
|
430
|
+
A(e) || (this.closecss = k(
|
|
431
|
+
e,
|
|
432
|
+
"color=>--s-card-close-color,size=>--s-close-width,bold=>--s-close-height,*"
|
|
433
|
+
));
|
|
418
434
|
},
|
|
419
435
|
margin(e) {
|
|
420
|
-
R(
|
|
421
|
-
|
|
422
|
-
|
|
436
|
+
R(
|
|
437
|
+
this,
|
|
438
|
+
k(
|
|
439
|
+
U(e) ? e.split(/\s*(?:,|\s+)\s*/) : e,
|
|
440
|
+
"0=>top,1|0=>right,2|0=>bottom,3|1|0=>left",
|
|
441
|
+
!0
|
|
442
|
+
),
|
|
423
443
|
!0
|
|
424
|
-
)
|
|
444
|
+
);
|
|
425
445
|
}
|
|
426
446
|
},
|
|
427
447
|
mounted() {
|
|
@@ -432,7 +452,8 @@ var P = function() {
|
|
|
432
452
|
var t = this, s = t._self._c;
|
|
433
453
|
return s("div", { key: t.trigger, staticClass: "card", style: t.isEmpty(t.style) ? t.tr() : t.style }, [t._t("default", function() {
|
|
434
454
|
return [t._t("title", function() {
|
|
435
|
-
|
|
455
|
+
var i;
|
|
456
|
+
return [s("div", { staticClass: "card-title" }, [t._v(" " + t._s(t.show || t.title) + " "), s("div", { staticClass: "card-close", class: { hide: t.isSimplyType(t.close) ? !t.close : !1 }, style: t.closecss, attrs: { title: (i = t.close) == null ? void 0 : i.tips }, on: { click: function(l) {
|
|
436
457
|
return t.$emit("close");
|
|
437
458
|
} } })])];
|
|
438
459
|
}), t._t("content", function() {
|
|
@@ -445,13 +466,24 @@ var P = function() {
|
|
|
445
466
|
Q,
|
|
446
467
|
!1,
|
|
447
468
|
null,
|
|
448
|
-
"
|
|
469
|
+
"16139b86",
|
|
449
470
|
null,
|
|
450
471
|
null
|
|
451
472
|
);
|
|
452
473
|
const tt = Z.exports, et = {
|
|
453
474
|
name: "Stream",
|
|
475
|
+
computed: {
|
|
476
|
+
column() {
|
|
477
|
+
let { columns: e, T: t } = this, s = e || t;
|
|
478
|
+
return E(s) ? [] : W(s) ? s : [s];
|
|
479
|
+
}
|
|
480
|
+
},
|
|
454
481
|
props: {
|
|
482
|
+
/* 桥接 指定数据字段为插槽名称 */
|
|
483
|
+
bridge: {
|
|
484
|
+
type: String,
|
|
485
|
+
default: "slot"
|
|
486
|
+
},
|
|
455
487
|
type: {
|
|
456
488
|
type: String,
|
|
457
489
|
default: "div"
|
|
@@ -460,21 +492,25 @@ const tt = Z.exports, et = {
|
|
|
460
492
|
type: Array,
|
|
461
493
|
default: () => []
|
|
462
494
|
},
|
|
495
|
+
columns: {
|
|
496
|
+
type: Array,
|
|
497
|
+
default: () => null
|
|
498
|
+
},
|
|
463
499
|
T: {
|
|
464
500
|
type: Array,
|
|
465
|
-
default: () =>
|
|
501
|
+
default: () => null
|
|
466
502
|
}
|
|
467
503
|
},
|
|
468
504
|
methods: {
|
|
469
505
|
trigger(e) {
|
|
470
|
-
let t = e.
|
|
506
|
+
let t = e[this.bridge] || e.type;
|
|
471
507
|
return (this.$scopedSlots || this.$slots)[t] ? t : "default";
|
|
472
508
|
}
|
|
473
509
|
}
|
|
474
510
|
};
|
|
475
511
|
var st = function() {
|
|
476
512
|
var t = this, s = t._self._c;
|
|
477
|
-
return s(t.type, t._b({ tag: "component", attrs: { data: t.data } }, "component", t.$attrs, !1), [t._l(t.
|
|
513
|
+
return s(t.type, t._b({ tag: "component", attrs: { data: t.data } }, "component", t.$attrs, !1), [t._l(t.column, function(i) {
|
|
478
514
|
return [t._t(t.trigger(i), null, null, i)];
|
|
479
515
|
})], 2);
|
|
480
516
|
}, it = [], lt = /* @__PURE__ */ F(
|
package/vue2/style.css
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
@charset "UTF-8";.flyweight[data-v-3416ac53]{height:var(--flyweight-h, 100%);width:var(--flyweight-w, 100%);overflow:auto;position:relative}.flyweight[hover-scroll][data-v-3416ac53]::-webkit-scrollbar-track,.flyweight[auto-scroll][data-v-3416ac53]::-webkit-scrollbar-track{border-radius:10px}.flyweight[hover-scroll][data-v-3416ac53]::-webkit-scrollbar-thumb,.flyweight[auto-scroll][data-v-3416ac53]::-webkit-scrollbar-thumb{border-radius:10px;background-color:transparent}.flyweight[hover-scroll][data-v-3416ac53]::-webkit-scrollbar,.flyweight[auto-scroll][data-v-3416ac53]::-webkit-scrollbar{border-radius:10px;width:var(--scrollbar-width, 8px);height:var(--scrollbar-width, 8px)}.flyweight[hover-scroll][data-v-3416ac53]:hover::-webkit-scrollbar-thumb,.flyweight[auto-scroll][data-v-3416ac53]::-webkit-scrollbar-thumb{border-style:dashed;border-color:transparent;border-width:2px;background-clip:padding-box;cursor:pointer}.flyweight[hover-scroll][data-v-3416ac53]:hover::-webkit-scrollbar-thumb:hover,.flyweight[auto-scroll][data-v-3416ac53]::-webkit-scrollbar-thumb:hover{background:var(--scrollbar-color, #101010)}.flyweight[hover-scroll][data-v-3416ac53]:hover::-webkit-scrollbar-thumb,.flyweight[auto-scroll][data-v-3416ac53]::-webkit-scrollbar-thumb{background-color:var(--scrollbar-color, #101010)}.flyweight[scroll-x] .flyweight-all[data-v-3416ac53]{width:var(--flyweight-content);height:auto;min-height:100%}.flyweight[scroll-x] .flyweight-all+*[data-v-3416ac53]{left:var(--flyweight-content);position:absolute;top:0;height:100%}.flyweight .flyweight-all[data-v-3416ac53]{height:var(--flyweight-content)}.flyweight .flyweight-all>*[data-v-3416ac53]{width:calc(var(--width));height:var(--height);position:absolute}@media screen and (-apple-system: Macintosh){.flyweight .flyweight-all[data-v-3416ac53]{background-color:red!important}}.card[data-v-
|
|
1
|
+
@charset "UTF-8";.flyweight[data-v-3416ac53]{height:var(--flyweight-h, 100%);width:var(--flyweight-w, 100%);overflow:auto;position:relative}.flyweight[hover-scroll][data-v-3416ac53]::-webkit-scrollbar-track,.flyweight[auto-scroll][data-v-3416ac53]::-webkit-scrollbar-track{border-radius:10px}.flyweight[hover-scroll][data-v-3416ac53]::-webkit-scrollbar-thumb,.flyweight[auto-scroll][data-v-3416ac53]::-webkit-scrollbar-thumb{border-radius:10px;background-color:transparent}.flyweight[hover-scroll][data-v-3416ac53]::-webkit-scrollbar,.flyweight[auto-scroll][data-v-3416ac53]::-webkit-scrollbar{border-radius:10px;width:var(--scrollbar-width, 8px);height:var(--scrollbar-width, 8px)}.flyweight[hover-scroll][data-v-3416ac53]:hover::-webkit-scrollbar-thumb,.flyweight[auto-scroll][data-v-3416ac53]::-webkit-scrollbar-thumb{border-style:dashed;border-color:transparent;border-width:2px;background-clip:padding-box;cursor:pointer}.flyweight[hover-scroll][data-v-3416ac53]:hover::-webkit-scrollbar-thumb:hover,.flyweight[auto-scroll][data-v-3416ac53]::-webkit-scrollbar-thumb:hover{background:var(--scrollbar-color, #101010)}.flyweight[hover-scroll][data-v-3416ac53]:hover::-webkit-scrollbar-thumb,.flyweight[auto-scroll][data-v-3416ac53]::-webkit-scrollbar-thumb{background-color:var(--scrollbar-color, #101010)}.flyweight[scroll-x] .flyweight-all[data-v-3416ac53]{width:var(--flyweight-content);height:auto;min-height:100%}.flyweight[scroll-x] .flyweight-all+*[data-v-3416ac53]{left:var(--flyweight-content);position:absolute;top:0;height:100%}.flyweight .flyweight-all[data-v-3416ac53]{height:var(--flyweight-content)}.flyweight .flyweight-all>*[data-v-3416ac53]{width:calc(var(--width));height:var(--height);position:absolute}@media screen and (-apple-system: Macintosh){.flyweight .flyweight-all[data-v-3416ac53]{background-color:red!important}}.card[data-v-16139b86]{--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-16139b86]::-webkit-scrollbar-track,.card[auto-scroll][data-v-16139b86]::-webkit-scrollbar-track{border-radius:10px}.card[hover-scroll][data-v-16139b86]::-webkit-scrollbar-thumb,.card[auto-scroll][data-v-16139b86]::-webkit-scrollbar-thumb{border-radius:10px;background-color:transparent}.card[hover-scroll][data-v-16139b86]::-webkit-scrollbar,.card[auto-scroll][data-v-16139b86]::-webkit-scrollbar{border-radius:10px;width:var(--scrollbar-width, 8px);height:var(--scrollbar-width, 8px)}.card[hover-scroll][data-v-16139b86]:hover::-webkit-scrollbar-thumb,.card[auto-scroll][data-v-16139b86]::-webkit-scrollbar-thumb{border-style:dashed;border-color:transparent;border-width:2px;background-clip:padding-box;cursor:pointer}.card[hover-scroll][data-v-16139b86]:hover::-webkit-scrollbar-thumb:hover,.card[auto-scroll][data-v-16139b86]::-webkit-scrollbar-thumb:hover{background:var(--scrollbar-color, #101010)}.card[hover-scroll][data-v-16139b86]:hover::-webkit-scrollbar-thumb,.card[auto-scroll][data-v-16139b86]::-webkit-scrollbar-thumb{background-color:var(--scrollbar-color, #101010)}.card[simply][data-v-16139b86],.card [simply][data-v-16139b86]{background-color:inherit;border:0!important}.card[flex][data-v-16139b86],.card [flex][data-v-16139b86]{display:flex}.card[column][data-v-16139b86],.card [column][data-v-16139b86]{flex-direction:column}.card[row][data-v-16139b86],.card [row][data-v-16139b86]{flex-direction:row}.card[center][data-v-16139b86],.card [center][data-v-16139b86]{justify-content:center}.card[vcenter][data-v-16139b86],.card [vcenter][data-v-16139b86]{align-items:center}.card .card-title[data-v-16139b86]{max-height:40px}.card .card-close[data-v-16139b86]{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-16139b86]{display:none}.card .card-close[data-v-16139b86]:before,.card .card-close[data-v-16139b86]: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-16139b86]:before{transform:rotate(var(--s-transform, 45deg))}.card .card-close[data-v-16139b86]:after{transform:rotate(calc(0deg - var(--s-transform, 45deg)))}.card .card-close[data-v-16139b86]:hover:before{transform:rotate(var(--s-hover-transform, 45deg))}.card .card-close[data-v-16139b86]:hover:after{transform:rotate(calc(0deg - var(--s-hover-transform, 45deg)))}.card .card-content[data-v-16139b86]{overflow:auto;height:100%}.card .card-content[data-v-16139b86]: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}
|