@farris/ui-vue 1.0.0-beta.1 → 1.0.0-beta.3
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/accordion/index.esm.js +93 -0
- package/accordion/index.umd.js +1 -0
- package/accordion/package.json +7 -0
- package/accordion/style.css +1 -0
- package/avatar/index.esm.js +94 -0
- package/avatar/index.umd.js +1 -0
- package/avatar/package.json +7 -0
- package/avatar/style.css +1 -0
- package/button/index.esm.js +206 -0
- package/button/index.umd.js +1 -0
- package/button/package.json +7 -0
- package/button-edit/index.esm.js +300 -0
- package/button-edit/index.umd.js +1 -0
- package/button-edit/package.json +7 -0
- package/checkbox/index.esm.js +97 -0
- package/checkbox/index.umd.js +1 -0
- package/checkbox/package.json +7 -0
- package/combo-list/index.esm.js +457 -0
- package/combo-list/index.umd.js +1 -0
- package/combo-list/package.json +7 -0
- package/data-grid/index.esm.js +1536 -0
- package/data-grid/index.umd.js +1 -0
- package/data-grid/package.json +7 -0
- package/data-grid/style.css +1 -0
- package/date-picker/index.esm.js +1479 -0
- package/date-picker/index.umd.js +1 -0
- package/date-picker/package.json +7 -0
- package/date-picker/style.css +1 -0
- package/farris.all.esm.js +6378 -0
- package/farris.all.umd.js +1 -0
- package/list-view/index.esm.js +144 -0
- package/list-view/index.umd.js +1 -0
- package/list-view/package.json +7 -0
- package/list-view/style.css +1 -0
- package/message-box/index.esm.js +499 -0
- package/message-box/index.umd.js +1 -0
- package/message-box/package.json +7 -0
- package/modal/index.esm.js +165 -0
- package/modal/index.umd.js +1 -0
- package/modal/package.json +7 -0
- package/notify/index.esm.js +187 -0
- package/notify/index.umd.js +1 -0
- package/notify/package.json +7 -0
- package/notify/style.css +1 -0
- package/package.json +4 -4
- package/pagination/index.esm.js +334 -0
- package/pagination/index.umd.js +1 -0
- package/pagination/package.json +7 -0
- package/pagination/style.css +1 -0
- package/popover/index.esm.js +83 -0
- package/popover/index.umd.js +1 -0
- package/popover/package.json +7 -0
- package/popover/style.css +1 -0
- package/radio-group/index.esm.js +79 -0
- package/radio-group/index.umd.js +1 -0
- package/radio-group/package.json +7 -0
- package/section/index.esm.js +70 -0
- package/section/index.umd.js +1 -0
- package/section/package.json +7 -0
- package/switch/index.esm.js +78 -0
- package/switch/index.umd.js +1 -0
- package/switch/package.json +7 -0
- package/tabs/index.esm.js +385 -0
- package/tabs/index.umd.js +1 -0
- package/tabs/package.json +7 -0
- package/tabs/style.css +1 -0
- package/text/index.esm.js +33 -0
- package/text/index.umd.js +1 -0
- package/text/package.json +7 -0
- package/tooltip/index.esm.js +195 -0
- package/tooltip/index.umd.js +1 -0
- package/tooltip/package.json +7 -0
- package/tooltip/style.css +1 -0
- package/src/index.esm.js +0 -10535
- package/src/index.umd.js +0 -8
- /package/{src/style.css → style.css} +0 -0
|
@@ -0,0 +1,93 @@
|
|
|
1
|
+
import { defineComponent as f, computed as o, createVNode as t, ref as u } from "vue";
|
|
2
|
+
const C = {
|
|
3
|
+
customClass: { type: Array, default: [] },
|
|
4
|
+
height: { type: Number },
|
|
5
|
+
width: { type: Number },
|
|
6
|
+
enableFold: { type: Boolean, default: !0 },
|
|
7
|
+
expanded: { type: Boolean, default: !1 }
|
|
8
|
+
};
|
|
9
|
+
const h = f({
|
|
10
|
+
name: "FAccordion",
|
|
11
|
+
props: C,
|
|
12
|
+
emits: [],
|
|
13
|
+
setup(e, s) {
|
|
14
|
+
const c = o(() => ({
|
|
15
|
+
height: e.height ? `${e.height}px` : "",
|
|
16
|
+
width: e.width ? `${e.width}px` : ""
|
|
17
|
+
})), a = o(() => {
|
|
18
|
+
const r = e.customClass, l = {
|
|
19
|
+
"farris-panel": !0,
|
|
20
|
+
accordion: !0
|
|
21
|
+
};
|
|
22
|
+
return r.reduce((n, i) => (n[i] = !0, n), l), l;
|
|
23
|
+
});
|
|
24
|
+
return () => t("div", {
|
|
25
|
+
class: a.value,
|
|
26
|
+
style: c.value
|
|
27
|
+
}, [s.slots.default && s.slots.default()]);
|
|
28
|
+
}
|
|
29
|
+
}), g = {
|
|
30
|
+
width: { type: Number },
|
|
31
|
+
height: { type: Number, default: 100 },
|
|
32
|
+
title: { type: String, default: "" },
|
|
33
|
+
disable: { type: Boolean, default: !1 }
|
|
34
|
+
};
|
|
35
|
+
const m = f({
|
|
36
|
+
name: "FAccordionItem",
|
|
37
|
+
props: g,
|
|
38
|
+
emits: [],
|
|
39
|
+
setup(e, s) {
|
|
40
|
+
const c = u(e.title), a = u(!1), r = u(!1);
|
|
41
|
+
function l() {
|
|
42
|
+
a.value = !a.value;
|
|
43
|
+
}
|
|
44
|
+
function n(d) {
|
|
45
|
+
l();
|
|
46
|
+
}
|
|
47
|
+
const i = o(() => ({
|
|
48
|
+
"f-state-disable": r.value,
|
|
49
|
+
card: !0,
|
|
50
|
+
"farris-panel-item": !0,
|
|
51
|
+
"f-state-selected": a.value
|
|
52
|
+
})), v = o(() => !0), p = o(() => !1), y = o(() => ({
|
|
53
|
+
"f-icon": !0,
|
|
54
|
+
"f-accordion-collapse": !a.value,
|
|
55
|
+
"f-accordion-expand": a.value
|
|
56
|
+
})), b = o(() => {
|
|
57
|
+
const d = {
|
|
58
|
+
transition: "height 0.36s ease 0s",
|
|
59
|
+
height: a.value ? `${e.height}px` : 0
|
|
60
|
+
};
|
|
61
|
+
return a.value || (d.overflow = "hidden"), d;
|
|
62
|
+
});
|
|
63
|
+
return () => t("div", {
|
|
64
|
+
class: i.value
|
|
65
|
+
}, [t("div", {
|
|
66
|
+
class: "card-header",
|
|
67
|
+
onClick: n
|
|
68
|
+
}, [t("div", {
|
|
69
|
+
class: "panel-item-title"
|
|
70
|
+
}, [v.value && t("span", null, [c.value]), p.value && s.slots.head && s.slots.head(), t("span", {
|
|
71
|
+
class: y.value
|
|
72
|
+
}, null)]), t("div", {
|
|
73
|
+
class: "panel-item-tool"
|
|
74
|
+
}, [s.slots.toolbar && s.slots.toolbar()]), t("div", {
|
|
75
|
+
class: "panel-item-clear"
|
|
76
|
+
}, null)]), t("div", {
|
|
77
|
+
style: b.value
|
|
78
|
+
}, [t("div", {
|
|
79
|
+
class: "card-body"
|
|
80
|
+
}, [s.slots.content && s.slots.content()])])]);
|
|
81
|
+
}
|
|
82
|
+
}), A = {
|
|
83
|
+
install(e) {
|
|
84
|
+
e.component(h.name, h), e.component(m.name, m);
|
|
85
|
+
}
|
|
86
|
+
};
|
|
87
|
+
export {
|
|
88
|
+
h as Accordion,
|
|
89
|
+
m as AccordionItem,
|
|
90
|
+
g as accordionItemProps,
|
|
91
|
+
C as accordionProps,
|
|
92
|
+
A as default
|
|
93
|
+
};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
(function(t,e){typeof exports=="object"&&typeof module<"u"?e(exports,require("vue")):typeof define=="function"&&define.amd?define(["exports","vue"],e):(t=typeof globalThis<"u"?globalThis:t||self,e(t.accordion={},t.Vue))})(this,function(t,e){"use strict";const m={customClass:{type:Array,default:[]},height:{type:Number},width:{type:Number},enableFold:{type:Boolean,default:!0},expanded:{type:Boolean,default:!1}},V="",l=e.defineComponent({name:"FAccordion",props:m,emits:[],setup(o,a){const i=e.computed(()=>({height:o.height?`${o.height}px`:"",width:o.width?`${o.width}px`:""})),n=e.computed(()=>{const r=o.customClass,c={"farris-panel":!0,accordion:!0};return r.reduce((s,u)=>(s[u]=!0,s),c),c});return()=>e.createVNode("div",{class:n.value,style:i.value},[a.slots.default&&a.slots.default()])}}),p={width:{type:Number},height:{type:Number,default:100},title:{type:String,default:""},disable:{type:Boolean,default:!1}},g="",d=e.defineComponent({name:"FAccordionItem",props:p,emits:[],setup(o,a){const i=e.ref(o.title),n=e.ref(!1),r=e.ref(!1);function c(){n.value=!n.value}function s(f){c()}const u=e.computed(()=>({"f-state-disable":r.value,card:!0,"farris-panel-item":!0,"f-state-selected":n.value})),y=e.computed(()=>!0),b=e.computed(()=>!1),N=e.computed(()=>({"f-icon":!0,"f-accordion-collapse":!n.value,"f-accordion-expand":n.value})),C=e.computed(()=>{const f={transition:"height 0.36s ease 0s",height:n.value?`${o.height}px`:0};return n.value||(f.overflow="hidden"),f});return()=>e.createVNode("div",{class:u.value},[e.createVNode("div",{class:"card-header",onClick:s},[e.createVNode("div",{class:"panel-item-title"},[y.value&&e.createVNode("span",null,[i.value]),b.value&&a.slots.head&&a.slots.head(),e.createVNode("span",{class:N.value},null)]),e.createVNode("div",{class:"panel-item-tool"},[a.slots.toolbar&&a.slots.toolbar()]),e.createVNode("div",{class:"panel-item-clear"},null)]),e.createVNode("div",{style:C.value},[e.createVNode("div",{class:"card-body"},[a.slots.content&&a.slots.content()])])])}}),h={install(o){o.component(l.name,l),o.component(d.name,d)}};t.Accordion=l,t.AccordionItem=d,t.accordionItemProps=p,t.accordionProps=m,t.default=h,Object.defineProperties(t,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}})});
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
@charset "UTF-8";.farris-panel{border:1px solid rgba(0,0,0,.125)}.card-header{cursor:pointer}.panel-item-title{float:left}.panel-item-tool{float:right}.panel-item-clear{clear:both}.f-state-disable{pointer-events:none}.card{border-left:0;border-right:0}.active{height:initial;transition:height .35s ease}.inactive{height:0;overflow:hidden;transition:height .35s ease}
|
|
@@ -0,0 +1,94 @@
|
|
|
1
|
+
import { ref as s, computed as n, defineComponent as m, createVNode as t } from "vue";
|
|
2
|
+
const C = {
|
|
3
|
+
avatarWidth: { type: Number, default: 100 },
|
|
4
|
+
avatarHeight: { type: Number, default: 100 },
|
|
5
|
+
cover: { type: String },
|
|
6
|
+
readonly: { type: Boolean, default: !1 },
|
|
7
|
+
shape: { type: String, default: "circle" },
|
|
8
|
+
maxSize: { type: Number, default: 1 },
|
|
9
|
+
modelValue: { type: String, default: "" },
|
|
10
|
+
tile: { type: String, default: "" },
|
|
11
|
+
type: { type: Array, default: [] }
|
|
12
|
+
};
|
|
13
|
+
function Q(A, y, a, r) {
|
|
14
|
+
const u = "data:image/jpeg;base64,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", l = s(A.readonly);
|
|
15
|
+
function o(e) {
|
|
16
|
+
return e.match(/\.(jpeg|jpg|gif|png|svg|bmp|webp)$/) != null;
|
|
17
|
+
}
|
|
18
|
+
function d(e) {
|
|
19
|
+
return e.indexOf("data:image/") > -1;
|
|
20
|
+
}
|
|
21
|
+
function g(e) {
|
|
22
|
+
return e ? "data:image/jpeg;base64," + e : "";
|
|
23
|
+
}
|
|
24
|
+
const c = n(() => {
|
|
25
|
+
if (!A.type || !A.type.length)
|
|
26
|
+
return "";
|
|
27
|
+
const e = A.type.map((B) => (B === "jpg" && (B = "jpeg"), `image/${B}`));
|
|
28
|
+
return !e || !e.length ? "image/*" : e.join(",");
|
|
29
|
+
}), i = n(() => {
|
|
30
|
+
const e = r.value || A.cover || u;
|
|
31
|
+
return o(e) || d(e) ? e : g(e);
|
|
32
|
+
}), f = n(() => l.value ? "" : A.tile);
|
|
33
|
+
function H() {
|
|
34
|
+
l.value || a && a.value && a.value.click();
|
|
35
|
+
}
|
|
36
|
+
return { acceptTypes: c, imageSource: i, imageTitle: f, onClickImage: H };
|
|
37
|
+
}
|
|
38
|
+
const v = m({
|
|
39
|
+
name: "FAvatar",
|
|
40
|
+
props: C,
|
|
41
|
+
emits: ["change", "update:modelValue"],
|
|
42
|
+
setup(A, y) {
|
|
43
|
+
const a = n(() => ({
|
|
44
|
+
"f-avatar": !0,
|
|
45
|
+
"f-avatar-readonly": A.readonly,
|
|
46
|
+
"f-avatar-circle": A.shape === "circle",
|
|
47
|
+
"f-avatar-square": A.shape === "square"
|
|
48
|
+
})), r = s(A.modelValue), u = n(() => ({
|
|
49
|
+
width: A.avatarWidth + "px",
|
|
50
|
+
height: A.avatarHeight + "px"
|
|
51
|
+
})), l = !1;
|
|
52
|
+
function o() {
|
|
53
|
+
return "";
|
|
54
|
+
}
|
|
55
|
+
function d() {
|
|
56
|
+
}
|
|
57
|
+
const g = s(null), {
|
|
58
|
+
acceptTypes: c,
|
|
59
|
+
imageSource: i,
|
|
60
|
+
onClickImage: f
|
|
61
|
+
} = Q(A, y, g, r);
|
|
62
|
+
return () => t("div", {
|
|
63
|
+
class: a.value,
|
|
64
|
+
style: u.value,
|
|
65
|
+
onClick: f
|
|
66
|
+
}, [l, t("img", {
|
|
67
|
+
title: A.tile,
|
|
68
|
+
class: "f-avatar-image",
|
|
69
|
+
src: i.value,
|
|
70
|
+
onError: o
|
|
71
|
+
}, null), !A.readonly && t("div", {
|
|
72
|
+
class: "f-avatar-icon"
|
|
73
|
+
}, [t("span", {
|
|
74
|
+
class: "f-icon f-icon-camera"
|
|
75
|
+
}, null)]), t("input", {
|
|
76
|
+
ref: "file",
|
|
77
|
+
name: "file-input",
|
|
78
|
+
type: "file",
|
|
79
|
+
class: "f-avatar-upload",
|
|
80
|
+
accept: c.value,
|
|
81
|
+
onChange: d,
|
|
82
|
+
style: "display: none;"
|
|
83
|
+
}, null)]);
|
|
84
|
+
}
|
|
85
|
+
}), S = {
|
|
86
|
+
install(A) {
|
|
87
|
+
A.component(v.name, v);
|
|
88
|
+
}
|
|
89
|
+
};
|
|
90
|
+
export {
|
|
91
|
+
v as Avatar,
|
|
92
|
+
C as avatarProps,
|
|
93
|
+
S as default
|
|
94
|
+
};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
(function(t,A){typeof exports=="object"&&typeof module<"u"?A(exports,require("vue")):typeof define=="function"&&define.amd?define(["exports","vue"],A):(t=typeof globalThis<"u"?globalThis:t||self,A(t.avatar={},t.Vue))})(this,function(t,A){"use strict";const B={avatarWidth:{type:Number,default:100},avatarHeight:{type:Number,default:100},cover:{type:String},readonly:{type:Boolean,default:!1},shape:{type:String,default:"circle"},maxSize:{type:Number,default:1},modelValue:{type:String,default:""},tile:{type:String,default:""},type:{type:Array,default:[]}};function H(e,m,n,d){const r="data:image/jpeg;base64,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",l=A.ref(e.readonly);function u(a){return a.match(/\.(jpeg|jpg|gif|png|svg|bmp|webp)$/)!=null}function i(a){return a.indexOf("data:image/")>-1}function c(a){return a?"data:image/jpeg;base64,"+a:""}const f=A.computed(()=>{if(!e.type||!e.type.length)return"";const a=e.type.map(y=>(y==="jpg"&&(y="jpeg"),`image/${y}`));return!a||!a.length?"image/*":a.join(",")}),g=A.computed(()=>{const a=d.value||e.cover||r;return u(a)||i(a)?a:c(a)}),s=A.computed(()=>l.value?"":e.tile);function C(){l.value||n&&n.value&&n.value.click()}return{acceptTypes:f,imageSource:g,imageTitle:s,onClickImage:C}}const Q="",o=A.defineComponent({name:"FAvatar",props:B,emits:["change","update:modelValue"],setup(e,m){const n=A.computed(()=>({"f-avatar":!0,"f-avatar-readonly":e.readonly,"f-avatar-circle":e.shape==="circle","f-avatar-square":e.shape==="square"})),d=A.ref(e.modelValue),r=A.computed(()=>({width:e.avatarWidth+"px",height:e.avatarHeight+"px"})),l=!1;function u(){return""}function i(){}const c=A.ref(null),{acceptTypes:f,imageSource:g,onClickImage:s}=H(e,m,c,d);return()=>A.createVNode("div",{class:n.value,style:r.value,onClick:s},[l,A.createVNode("img",{title:e.tile,class:"f-avatar-image",src:g.value,onError:u},null),!e.readonly&&A.createVNode("div",{class:"f-avatar-icon"},[A.createVNode("span",{class:"f-icon f-icon-camera"},null)]),A.createVNode("input",{ref:"file",name:"file-input",type:"file",class:"f-avatar-upload",accept:f.value,onChange:i,style:"display: none;"},null)])}}),v={install(e){e.component(o.name,o)}};t.Avatar=o,t.avatarProps=B,t.default=v,Object.defineProperties(t,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}})});
|
package/avatar/style.css
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
.f-avatar{position:relative;cursor:pointer;overflow:hidden}.f-avatar.f-avatar-readonly{cursor:default}.f-avatar.f-avatar-circle{border-radius:100%;overflow:hidden}.f-avatar.f-avatar-square{border-radius:0}.f-avatar .f-avatar-image,.f-avatar .f-avatar-defult{display:inline-block;width:100%;height:100%}.f-avatar .f-avatar-icon{display:none;position:absolute;left:0;right:0;top:0;bottom:0;align-items:center;justify-content:center;background:rgba(0,0,0,.3)}.f-avatar .f-avatar-icon .f-icon{font-size:24px;color:#fff}.f-avatar.f-avatar-circle .f-avatar-icon{border-radius:100%}.f-avatar.f-avatar-square .f-avatar-icon{border-radius:0}.f-avatar .f-avatar-upload-loading{position:absolute;left:0;top:0;display:inline-block;width:100%;height:100%;background-color:#00000026}.f-avatar .f-avatar-upload-loading .loading-inner{position:absolute;width:100%;left:0;top:50%;margin-top:-25px;height:50px;line-height:50px;text-align:center;font-size:16px;color:#fff}.f-avatar:hover .f-avatar-icon{display:flex}
|
|
@@ -0,0 +1,206 @@
|
|
|
1
|
+
import { defineComponent as x, createVNode as i, ref as b, nextTick as E } from "vue";
|
|
2
|
+
const V = {
|
|
3
|
+
id: String,
|
|
4
|
+
type: { type: String, default: "primary" },
|
|
5
|
+
disabled: { type: Boolean, default: !1 },
|
|
6
|
+
size: { type: String, default: "small" }
|
|
7
|
+
};
|
|
8
|
+
function G(n, u) {
|
|
9
|
+
function c(f) {
|
|
10
|
+
f.stopPropagation(), n.disabled || u.emit("click", f);
|
|
11
|
+
}
|
|
12
|
+
return {
|
|
13
|
+
onClickButton: c
|
|
14
|
+
};
|
|
15
|
+
}
|
|
16
|
+
const R = x({
|
|
17
|
+
name: "FButton",
|
|
18
|
+
props: V,
|
|
19
|
+
emits: ["click"],
|
|
20
|
+
setup(n, u) {
|
|
21
|
+
const {
|
|
22
|
+
onClickButton: c
|
|
23
|
+
} = G(n, u);
|
|
24
|
+
return () => i("button", {
|
|
25
|
+
class: (n.size === "large" ? "btn-lg " : "btn-sm ") + "btn " + (n.type ? "btn-" + n.type + " " : ""),
|
|
26
|
+
disabled: n.disabled,
|
|
27
|
+
onClick: (f) => c(f)
|
|
28
|
+
}, [u.slots.default && u.slots.default()]);
|
|
29
|
+
}
|
|
30
|
+
}), L = {
|
|
31
|
+
id: String,
|
|
32
|
+
rectifyReferenceH: { type: Object },
|
|
33
|
+
rectifyReferenceV: { type: Object },
|
|
34
|
+
autoRectify: { type: Boolean, default: !1 },
|
|
35
|
+
realPlacement: { type: String, default: "bottom-right" },
|
|
36
|
+
rectifyPlacement: { type: String, default: "bottom-right" },
|
|
37
|
+
data: { type: Array },
|
|
38
|
+
count: { type: Number, default: 2 },
|
|
39
|
+
size: { type: String, default: "small" },
|
|
40
|
+
type: { type: String, default: "primary" },
|
|
41
|
+
placement: { type: String, default: "bottom" },
|
|
42
|
+
showPanel: { type: Boolean, default: !1 },
|
|
43
|
+
dpFlag: { type: Boolean, default: !1 }
|
|
44
|
+
};
|
|
45
|
+
function j(n, u, c, f) {
|
|
46
|
+
let r = 0, d = 0;
|
|
47
|
+
const a = b(n.showPanel);
|
|
48
|
+
let p = b(n.realPlacement), s = !1;
|
|
49
|
+
function h() {
|
|
50
|
+
c.value && document.body.appendChild(c.value);
|
|
51
|
+
}
|
|
52
|
+
function k() {
|
|
53
|
+
a.value = !0;
|
|
54
|
+
}
|
|
55
|
+
function y() {
|
|
56
|
+
a.value = !1;
|
|
57
|
+
}
|
|
58
|
+
function P() {
|
|
59
|
+
a.value && !s && setTimeout(() => {
|
|
60
|
+
a.value && !s && (y(), s = !1);
|
|
61
|
+
}, 1e3);
|
|
62
|
+
}
|
|
63
|
+
function e() {
|
|
64
|
+
setTimeout(() => {
|
|
65
|
+
a.value && (y(), s = !1);
|
|
66
|
+
}, 1e3);
|
|
67
|
+
}
|
|
68
|
+
function g() {
|
|
69
|
+
k(), s = !0;
|
|
70
|
+
}
|
|
71
|
+
function B() {
|
|
72
|
+
e();
|
|
73
|
+
}
|
|
74
|
+
function C() {
|
|
75
|
+
let l = document.documentElement.clientWidth, t = document.documentElement.clientHeight, o = 0, v = 0;
|
|
76
|
+
if (n.rectifyReferenceH) {
|
|
77
|
+
const m = document.querySelector("props.rectifyReferenceH");
|
|
78
|
+
m && (l = m.getBoundingClientRect().right, v = m.getBoundingClientRect().left);
|
|
79
|
+
}
|
|
80
|
+
if (n.rectifyReferenceV) {
|
|
81
|
+
const m = document.querySelector("props.rectifyReferenceV");
|
|
82
|
+
m && (t = m.getBoundingClientRect().bottom, o = m.getBoundingClientRect().top);
|
|
83
|
+
}
|
|
84
|
+
return { top: o, left: v, right: l, bottom: t };
|
|
85
|
+
}
|
|
86
|
+
function M(l) {
|
|
87
|
+
if (!n.autoRectify)
|
|
88
|
+
return;
|
|
89
|
+
const t = C(), o = p;
|
|
90
|
+
o.value.indexOf("bottom") > -1 ? d > t.bottom - l.bottom && (o.value = o.value.replace("bottom", "top")) : o.value.indexOf("top") > -1 && d > l.top - t.top && (o.value = o.value.replace("top", "bottom")), o.value.indexOf("left") > -1 ? r > l.left - t.left && (o.value = o.value.replace("left", "right")) : o.value.indexOf("right") > -1 && r > t.right - l.right && (o.value = o.value.replace("right", "left")), p = o;
|
|
91
|
+
}
|
|
92
|
+
function O(l) {
|
|
93
|
+
let t = "";
|
|
94
|
+
n.autoRectify ? t = n.rectifyPlacement : t = p.value;
|
|
95
|
+
let o = 0, v = 0;
|
|
96
|
+
t.indexOf("top") > -1 ? o = l.top - d : t.indexOf("bottom") > -1 && (o = l.bottom), t.indexOf("right") > -1 ? v = l.right : t.indexOf("left") > -1 && (v = l.left - r), t.indexOf("-top") > -1 ? o -= l.height : t.indexOf("-bottom") > -1 && (o += l.height), c.value.style.top = o + "px", c.value.style.left = v + "px";
|
|
97
|
+
}
|
|
98
|
+
async function F() {
|
|
99
|
+
await E();
|
|
100
|
+
const l = f.value.getBoundingClientRect(), t = c.value.getBoundingClientRect();
|
|
101
|
+
d = t.height, r = t.width, n.autoRectify && M(l), O(l);
|
|
102
|
+
}
|
|
103
|
+
function T(l) {
|
|
104
|
+
l.stopPropagation(), a.value = !a.value, a.value && (h(), F()), u.emit("changeState", a.value);
|
|
105
|
+
}
|
|
106
|
+
function H(l, t) {
|
|
107
|
+
l.stopPropagation(), !t.disabled && (a.value = !1, u.emit("change", t.id), u.emit("click", t));
|
|
108
|
+
}
|
|
109
|
+
function S(l) {
|
|
110
|
+
let t = "bottom-right";
|
|
111
|
+
switch (l) {
|
|
112
|
+
case "top":
|
|
113
|
+
t = "top-right";
|
|
114
|
+
break;
|
|
115
|
+
case "left":
|
|
116
|
+
t = "left-bottom";
|
|
117
|
+
break;
|
|
118
|
+
case "right":
|
|
119
|
+
t = "right-bottom";
|
|
120
|
+
break;
|
|
121
|
+
case "bottom":
|
|
122
|
+
t = "bottom-right";
|
|
123
|
+
break;
|
|
124
|
+
default:
|
|
125
|
+
t = l;
|
|
126
|
+
}
|
|
127
|
+
p.value = t;
|
|
128
|
+
}
|
|
129
|
+
return {
|
|
130
|
+
showPanel: a,
|
|
131
|
+
clickEvent: T,
|
|
132
|
+
toggle: H,
|
|
133
|
+
getRealPlacement: S,
|
|
134
|
+
bindMenuMouseenter: g,
|
|
135
|
+
unbindMenuMouseleave: P,
|
|
136
|
+
bindMenuMouseleave: B
|
|
137
|
+
};
|
|
138
|
+
}
|
|
139
|
+
const w = x({
|
|
140
|
+
name: "FButtonGroup",
|
|
141
|
+
props: L,
|
|
142
|
+
emits: ["click", "changeState", "change", "clickMenuOut"],
|
|
143
|
+
setup(n, u) {
|
|
144
|
+
const c = n.data && n.data.slice(0, n.count) || [], f = n.data && n.data.slice(n.count) || [], r = b(), d = b(), {
|
|
145
|
+
showPanel: a,
|
|
146
|
+
clickEvent: p,
|
|
147
|
+
toggle: s,
|
|
148
|
+
getRealPlacement: h,
|
|
149
|
+
bindMenuMouseenter: k,
|
|
150
|
+
unbindMenuMouseleave: y,
|
|
151
|
+
bindMenuMouseleave: P
|
|
152
|
+
} = j(n, u, r, d);
|
|
153
|
+
return h(n.placement), () => i("div", {
|
|
154
|
+
class: "f-btn-group"
|
|
155
|
+
}, [i("div", {
|
|
156
|
+
class: (n.size === "large" ? "btn-group-lg" : "btn-group-sm") + " btn-group f-btn-group-links"
|
|
157
|
+
}, [c.map((e) => i("div", null, [e.icon && i("button", {
|
|
158
|
+
type: "button",
|
|
159
|
+
id: e.id,
|
|
160
|
+
title: e.id,
|
|
161
|
+
class: "btn btn-link btn-icontext" + (e.disabled ? " disabled" : ""),
|
|
162
|
+
onClick: (g) => s(g, e)
|
|
163
|
+
}, [i("i", {
|
|
164
|
+
class: "'f-icon '+ btn.icon?btn.icon:''"
|
|
165
|
+
}, null)]), !e.icon && i("button", {
|
|
166
|
+
id: e.id,
|
|
167
|
+
class: "btn " + (e.type ? "btn-" + e.type : "btn-link") + " " + (e.type && e.type !== "link" ? "f-btn-ml" : "") + (e.disabled ? " disabled" : ""),
|
|
168
|
+
onClick: (g) => s(g, e)
|
|
169
|
+
}, [e == null ? void 0 : e.text])]))]), f.length ? i("div", {
|
|
170
|
+
class: "btn-group f-btn-group-dropdown",
|
|
171
|
+
onMouseleave: (e) => y()
|
|
172
|
+
}, [i("button", {
|
|
173
|
+
title: "button",
|
|
174
|
+
ref: d,
|
|
175
|
+
type: "button",
|
|
176
|
+
class: "f-btn-dropdown",
|
|
177
|
+
onClick: (e) => p(e)
|
|
178
|
+
}, [i("span", {
|
|
179
|
+
class: "f-icon f-icon-lookup"
|
|
180
|
+
}, null)]), i("div", {
|
|
181
|
+
ref: r,
|
|
182
|
+
class: "dropdown-menu f-btn-group-dropdown-menu" + (a.value ? " show" : ""),
|
|
183
|
+
style: "position:fixed;",
|
|
184
|
+
onMouseenter: (e) => k(),
|
|
185
|
+
onMouseleave: (e) => P()
|
|
186
|
+
}, [f.map((e) => i("div", null, [i("div", null, [e.divider && i("div", {
|
|
187
|
+
class: "dropdown-divider"
|
|
188
|
+
}, null), i("li", {
|
|
189
|
+
id: "dpBtn.id",
|
|
190
|
+
class: "dropdown-item" + (e.disabled ? " disabled" : ""),
|
|
191
|
+
onClick: (g) => s(g, e)
|
|
192
|
+
}, [e.icon && i("i", {
|
|
193
|
+
class: "f-icon dropdown-item-icon" + e.icon
|
|
194
|
+
}, null), i("span", null, [e == null ? void 0 : e.text])])])]))])]) : ""]);
|
|
195
|
+
}
|
|
196
|
+
}), N = {
|
|
197
|
+
install(n) {
|
|
198
|
+
n.component(R.name, R), n.component(w.name, w);
|
|
199
|
+
}
|
|
200
|
+
};
|
|
201
|
+
export {
|
|
202
|
+
R as FButton,
|
|
203
|
+
L as buttonGroupProps,
|
|
204
|
+
V as buttonProps,
|
|
205
|
+
N as default
|
|
206
|
+
};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
(function(f,o){typeof exports=="object"&&typeof module<"u"?o(exports,require("vue")):typeof define=="function"&&define.amd?define(["exports","vue"],o):(f=typeof globalThis<"u"?globalThis:f||self,o(f.button={},f.Vue))})(this,function(f,o){"use strict";const R={id:String,type:{type:String,default:"primary"},disabled:{type:Boolean,default:!1},size:{type:String,default:"small"}};function B(n,c){function u(d){d.stopPropagation(),n.disabled||c.emit("click",d)}return{onClickButton:u}}const v=o.defineComponent({name:"FButton",props:R,emits:["click"],setup(n,c){const{onClickButton:u}=B(n,c);return()=>o.createVNode("button",{class:(n.size==="large"?"btn-lg ":"btn-sm ")+"btn "+(n.type?"btn-"+n.type+" ":""),disabled:n.disabled,onClick:d=>u(d)},[c.slots.default&&c.slots.default()])}}),N={id:String,rectifyReferenceH:{type:Object},rectifyReferenceV:{type:Object},autoRectify:{type:Boolean,default:!1},realPlacement:{type:String,default:"bottom-right"},rectifyPlacement:{type:String,default:"bottom-right"},data:{type:Array},count:{type:Number,default:2},size:{type:String,default:"small"},type:{type:String,default:"primary"},placement:{type:String,default:"bottom"},showPanel:{type:Boolean,default:!1},dpFlag:{type:Boolean,default:!1}};function C(n,c,u,d){let s=0,m=0;const a=o.ref(n.showPanel);let b=o.ref(n.realPlacement),r=!1;function P(){u.value&&document.body.appendChild(u.value)}function k(){a.value=!0}function h(){a.value=!1}function V(){a.value&&!r&&setTimeout(()=>{a.value&&!r&&(h(),r=!1)},1e3)}function e(){setTimeout(()=>{a.value&&(h(),r=!1)},1e3)}function g(){k(),r=!0}function O(){e()}function x(){let i=document.documentElement.clientWidth,t=document.documentElement.clientHeight,l=0,y=0;if(n.rectifyReferenceH){const p=document.querySelector("props.rectifyReferenceH");p&&(i=p.getBoundingClientRect().right,y=p.getBoundingClientRect().left)}if(n.rectifyReferenceV){const p=document.querySelector("props.rectifyReferenceV");p&&(t=p.getBoundingClientRect().bottom,l=p.getBoundingClientRect().top)}return{top:l,left:y,right:i,bottom:t}}function T(i){if(!n.autoRectify)return;const t=x(),l=b;l.value.indexOf("bottom")>-1?m>t.bottom-i.bottom&&(l.value=l.value.replace("bottom","top")):l.value.indexOf("top")>-1&&m>i.top-t.top&&(l.value=l.value.replace("top","bottom")),l.value.indexOf("left")>-1?s>i.left-t.left&&(l.value=l.value.replace("left","right")):l.value.indexOf("right")>-1&&s>t.right-i.right&&(l.value=l.value.replace("right","left")),b=l}function F(i){let t="";n.autoRectify?t=n.rectifyPlacement:t=b.value;let l=0,y=0;t.indexOf("top")>-1?l=i.top-m:t.indexOf("bottom")>-1&&(l=i.bottom),t.indexOf("right")>-1?y=i.right:t.indexOf("left")>-1&&(y=i.left-s),t.indexOf("-top")>-1?l-=i.height:t.indexOf("-bottom")>-1&&(l+=i.height),u.value.style.top=l+"px",u.value.style.left=y+"px"}async function S(){await o.nextTick();const i=d.value.getBoundingClientRect(),t=u.value.getBoundingClientRect();m=t.height,s=t.width,n.autoRectify&&T(i),F(i)}function H(i){i.stopPropagation(),a.value=!a.value,a.value&&(P(),S()),c.emit("changeState",a.value)}function E(i,t){i.stopPropagation(),!t.disabled&&(a.value=!1,c.emit("change",t.id),c.emit("click",t))}function G(i){let t="bottom-right";switch(i){case"top":t="top-right";break;case"left":t="left-bottom";break;case"right":t="right-bottom";break;case"bottom":t="bottom-right";break;default:t=i}b.value=t}return{showPanel:a,clickEvent:H,toggle:E,getRealPlacement:G,bindMenuMouseenter:g,unbindMenuMouseleave:V,bindMenuMouseleave:O}}const w=o.defineComponent({name:"FButtonGroup",props:N,emits:["click","changeState","change","clickMenuOut"],setup(n,c){const u=n.data&&n.data.slice(0,n.count)||[],d=n.data&&n.data.slice(n.count)||[],s=o.ref(),m=o.ref(),{showPanel:a,clickEvent:b,toggle:r,getRealPlacement:P,bindMenuMouseenter:k,unbindMenuMouseleave:h,bindMenuMouseleave:V}=C(n,c,s,m);return P(n.placement),()=>o.createVNode("div",{class:"f-btn-group"},[o.createVNode("div",{class:(n.size==="large"?"btn-group-lg":"btn-group-sm")+" btn-group f-btn-group-links"},[u.map(e=>o.createVNode("div",null,[e.icon&&o.createVNode("button",{type:"button",id:e.id,title:e.id,class:"btn btn-link btn-icontext"+(e.disabled?" disabled":""),onClick:g=>r(g,e)},[o.createVNode("i",{class:"'f-icon '+ btn.icon?btn.icon:''"},null)]),!e.icon&&o.createVNode("button",{id:e.id,class:"btn "+(e.type?"btn-"+e.type:"btn-link")+" "+(e.type&&e.type!=="link"?"f-btn-ml":"")+(e.disabled?" disabled":""),onClick:g=>r(g,e)},[e==null?void 0:e.text])]))]),d.length?o.createVNode("div",{class:"btn-group f-btn-group-dropdown",onMouseleave:e=>h()},[o.createVNode("button",{title:"button",ref:m,type:"button",class:"f-btn-dropdown",onClick:e=>b(e)},[o.createVNode("span",{class:"f-icon f-icon-lookup"},null)]),o.createVNode("div",{ref:s,class:"dropdown-menu f-btn-group-dropdown-menu"+(a.value?" show":""),style:"position:fixed;",onMouseenter:e=>k(),onMouseleave:e=>V()},[d.map(e=>o.createVNode("div",null,[o.createVNode("div",null,[e.divider&&o.createVNode("div",{class:"dropdown-divider"},null),o.createVNode("li",{id:"dpBtn.id",class:"dropdown-item"+(e.disabled?" disabled":""),onClick:g=>r(g,e)},[e.icon&&o.createVNode("i",{class:"f-icon dropdown-item-icon"+e.icon},null),o.createVNode("span",null,[e==null?void 0:e.text])])])]))])]):""])}}),M={install(n){n.component(v.name,v),n.component(w.name,w)}};f.FButton=v,f.buttonGroupProps=N,f.buttonProps=R,f.default=M,Object.defineProperties(f,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}})});
|