treqit-ui-library 1.4.4 → 1.4.7
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/index.d.ts +1 -20
- package/dist/treqit-ui-library.css +1 -1
- package/dist/treqit-ui-library.js +67 -33
- package/dist/treqit-ui-library.umd.cjs +1 -1
- package/package.json +1 -1
package/dist/index.d.ts
CHANGED
|
@@ -1,20 +1 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
export interface ButtonProps {
|
|
4
|
-
variant?: 'primary' | 'secondary' | 'destructive' | 'flat' | 'elevated' | 'text' | 'outlined' | 'outlined-primary' | 'outlined-secondary' | 'rounded';
|
|
5
|
-
size?: 'sm' | 'small' | 'medium' | 'large' | 'x-large';
|
|
6
|
-
type?: string;
|
|
7
|
-
disabled?: boolean;
|
|
8
|
-
loading?: boolean;
|
|
9
|
-
full?: boolean;
|
|
10
|
-
}
|
|
11
|
-
|
|
12
|
-
export declare const Button: Component<ButtonProps>;
|
|
13
|
-
|
|
14
|
-
export declare const install: (app: App) => void;
|
|
15
|
-
|
|
16
|
-
declare const _default: {
|
|
17
|
-
install: (app: App) => void;
|
|
18
|
-
};
|
|
19
|
-
|
|
20
|
-
export default _default;
|
|
1
|
+
export {}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
.btn[data-v-8db92d47]{position:relative;display:inline-flex;align-items:center;justify-content:center;border:none;font-weight:700;cursor:pointer;transition:background-color .2s ease,color .2s ease,box-shadow .2s ease;padding:.5rem 1rem;font-size:1rem;min-width:80px;overflow:hidden}.btn[data-v-8db92d47]:disabled{cursor:not-allowed}.btn--full[data-v-8db92d47]{width:100%}.btn-loader[data-v-8db92d47]{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);display:flex;align-items:center;justify-content:center}.simple-spinner[data-v-8db92d47]{border:6px solid currentColor;border-top-color:transparent;border-radius:50%;width:32px;height:32px;animation:spin-8db92d47 .8s linear infinite;opacity:.7}@keyframes spin-8db92d47{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.btn-content.content-hidden[data-v-8db92d47]{visibility:hidden;opacity:0}.btn--x-large[data-v-8db92d47]{scrollbar-width:1.125rem;height:60px;font-size:1.35rem;min-width:92px;padding:0 24px;border-radius:12px}.btn--small[data-v-8db92d47]{padding:.25rem .75rem;font-size:.875rem;border-radius:5px!important}.btn--medium[data-v-8db92d47]{padding:.5rem 1rem;font-size:1rem;border-radius:8px!important}.btn--large[data-v-8db92d47]{padding:.75rem 1.5rem;font-size:1.125rem;border-radius:8px!important}.btn--primary[data-v-8db92d47]{background-color:var(--btn-primary-bg);color:#fff;box-shadow:0 1px 3px #0000001a,0 1px 2px -1px #0000001a}.btn--primary[data-v-8db92d47]:not(:disabled):hover{background-color:var(--btn-primary-hover-bg);box-shadow:0 4px 6px -1px #0000001a,0 2px 4px -2px #0000001a}.btn--secondary[data-v-8db92d47]{background-color:var(--btn-secondary-bg);color:#1a202c;box-shadow:0 1px 3px #0000001a,0 1px 2px -1px #0000001a;border:2px solid var(--secondary-color, #3C464D)}.btn--secondary[data-v-8db92d47]:not(:disabled):hover{background-color:var(--btn-secondary-hover-bg);box-shadow:0 4px 6px -1px #0000001a,0 2px 4px -2px #0000001a}.btn--destructive[data-v-8db92d47]{background-color:#ef4444;color:#fff;box-shadow:0 1px 3px #0000001a,0 1px 2px -1px #0000001a}.btn--destructive[data-v-8db92d47]:not(:disabled):hover{background-color:#dc2626}.btn--outlined[data-v-8db92d47]{background-color:transparent;color:var(--btn-secondary-bg);border:2px solid var(--btn-secondary-bg);box-shadow:none}.btn--outlined[data-v-8db92d47]:not(:disabled):hover{background-color:var(--btn-primary-bg);color:#fff}.btn--outlined-primary[data-v-8db92d47]{background-color:transparent;color:var(--btn-primary-bg);border:2px solid var(--btn-primary-bg);box-shadow:none}.btn--outlined-primary[data-v-8db92d47]:not(:disabled):hover{background-color:var(--btn-primary-bg);color:#fff}.btn--outlined-secondary[data-v-8db92d47]{background-color:#fff;color:var(--secondary-color, #3C464D);border:2px solid var(--secondary-color, #3C464D);box-shadow:none}.btn--outlined-secondary[data-v-8db92d47]:not(:disabled):hover{background-color:var(--secondary-color, #3C464D);color:#fff;border-color:#fff}.btn--elevated[data-v-8db92d47]{background-color:var(--btn-primary-bg);color:#fff;box-shadow:0 4px 6px -1px #0000001a,0 2px 4px -2px #0000001a}.btn--elevated[data-v-8db92d47]:not(:disabled):hover{background-color:var(--btn-primary-hover-bg);box-shadow:0 10px 15px -3px #0000001a,0 4px 6px -4px #0000001a}.btn--flat[data-v-8db92d47]{background-color:#fff;color:var(--btn-primary-bg);box-shadow:none}.btn--flat[data-v-8db92d47]:not(:disabled):hover{background-color:var(--btn-primary-hover-bg);color:#fff}.btn--text[data-v-8db92d47]{background-color:#fff;color:var(--btn-primary-bg);box-shadow:none}.btn--text[data-v-8db92d47]:not(:disabled):hover{background-color:#f0f0f0}.btn--rounded[data-v-8db92d47]{background-color:transparent;color:var(--secondary-color, #3C464D);border:2px solid var(--secondary-color, #3C464D);box-shadow:none;border-radius:50%!important;padding:.5rem;min-width:auto}@media screen and (max-width:768px){.btn--small[data-v-8db92d47]{padding:.2rem .6rem;font-size:.8rem}.btn--medium[data-v-8db92d47]{padding:.4rem .8rem;font-size:.9rem}.btn--large[data-v-8db92d47]{padding:.6rem 1.2rem;font-size:1rem}.btn--rounded[data-v-8db92d47]{padding:.3rem;font-size:.8rem;max-width:30px;max-height:30px}}
|
|
1
|
+
.btn[data-v-8db92d47]{position:relative;display:inline-flex;align-items:center;justify-content:center;border:none;font-weight:700;cursor:pointer;transition:background-color .2s ease,color .2s ease,box-shadow .2s ease;padding:.5rem 1rem;font-size:1rem;min-width:80px;overflow:hidden}.btn[data-v-8db92d47]:disabled{cursor:not-allowed}.btn--full[data-v-8db92d47]{width:100%}.btn-loader[data-v-8db92d47]{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);display:flex;align-items:center;justify-content:center}.simple-spinner[data-v-8db92d47]{border:6px solid currentColor;border-top-color:transparent;border-radius:50%;width:32px;height:32px;animation:spin-8db92d47 .8s linear infinite;opacity:.7}@keyframes spin-8db92d47{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.btn-content.content-hidden[data-v-8db92d47]{visibility:hidden;opacity:0}.btn--x-large[data-v-8db92d47]{scrollbar-width:1.125rem;height:60px;font-size:1.35rem;min-width:92px;padding:0 24px;border-radius:12px}.btn--small[data-v-8db92d47]{padding:.25rem .75rem;font-size:.875rem;border-radius:5px!important}.btn--medium[data-v-8db92d47]{padding:.5rem 1rem;font-size:1rem;border-radius:8px!important}.btn--large[data-v-8db92d47]{padding:.75rem 1.5rem;font-size:1.125rem;border-radius:8px!important}.btn--primary[data-v-8db92d47]{background-color:var(--btn-primary-bg);color:#fff;box-shadow:0 1px 3px #0000001a,0 1px 2px -1px #0000001a}.btn--primary[data-v-8db92d47]:not(:disabled):hover{background-color:var(--btn-primary-hover-bg);box-shadow:0 4px 6px -1px #0000001a,0 2px 4px -2px #0000001a}.btn--secondary[data-v-8db92d47]{background-color:var(--btn-secondary-bg);color:#1a202c;box-shadow:0 1px 3px #0000001a,0 1px 2px -1px #0000001a;border:2px solid var(--secondary-color, #3C464D)}.btn--secondary[data-v-8db92d47]:not(:disabled):hover{background-color:var(--btn-secondary-hover-bg);box-shadow:0 4px 6px -1px #0000001a,0 2px 4px -2px #0000001a}.btn--destructive[data-v-8db92d47]{background-color:#ef4444;color:#fff;box-shadow:0 1px 3px #0000001a,0 1px 2px -1px #0000001a}.btn--destructive[data-v-8db92d47]:not(:disabled):hover{background-color:#dc2626}.btn--outlined[data-v-8db92d47]{background-color:transparent;color:var(--btn-secondary-bg);border:2px solid var(--btn-secondary-bg);box-shadow:none}.btn--outlined[data-v-8db92d47]:not(:disabled):hover{background-color:var(--btn-primary-bg);color:#fff}.btn--outlined-primary[data-v-8db92d47]{background-color:transparent;color:var(--btn-primary-bg);border:2px solid var(--btn-primary-bg);box-shadow:none}.btn--outlined-primary[data-v-8db92d47]:not(:disabled):hover{background-color:var(--btn-primary-bg);color:#fff}.btn--outlined-secondary[data-v-8db92d47]{background-color:#fff;color:var(--secondary-color, #3C464D);border:2px solid var(--secondary-color, #3C464D);box-shadow:none}.btn--outlined-secondary[data-v-8db92d47]:not(:disabled):hover{background-color:var(--secondary-color, #3C464D);color:#fff;border-color:#fff}.btn--elevated[data-v-8db92d47]{background-color:var(--btn-primary-bg);color:#fff;box-shadow:0 4px 6px -1px #0000001a,0 2px 4px -2px #0000001a}.btn--elevated[data-v-8db92d47]:not(:disabled):hover{background-color:var(--btn-primary-hover-bg);box-shadow:0 10px 15px -3px #0000001a,0 4px 6px -4px #0000001a}.btn--flat[data-v-8db92d47]{background-color:#fff;color:var(--btn-primary-bg);box-shadow:none}.btn--flat[data-v-8db92d47]:not(:disabled):hover{background-color:var(--btn-primary-hover-bg);color:#fff}.btn--text[data-v-8db92d47]{background-color:#fff;color:var(--btn-primary-bg);box-shadow:none}.btn--text[data-v-8db92d47]:not(:disabled):hover{background-color:#f0f0f0}.btn--rounded[data-v-8db92d47]{background-color:transparent;color:var(--secondary-color, #3C464D);border:2px solid var(--secondary-color, #3C464D);box-shadow:none;border-radius:50%!important;padding:.5rem;min-width:auto}@media screen and (max-width:768px){.btn--small[data-v-8db92d47]{padding:.2rem .6rem;font-size:.8rem}.btn--medium[data-v-8db92d47]{padding:.4rem .8rem;font-size:.9rem}.btn--large[data-v-8db92d47]{padding:.6rem 1.2rem;font-size:1rem}.btn--rounded[data-v-8db92d47]{padding:.3rem;font-size:.8rem;max-width:30px;max-height:30px}}.overlay[data-v-11b69f56]{position:fixed;inset:0;background-color:#0000004d;display:flex;justify-content:center;align-items:center;z-index:1000}.overlay--contained[data-v-11b69f56]{position:absolute}.overlay-fade-enter-active[data-v-11b69f56],.overlay-fade-leave-active[data-v-11b69f56]{transition:opacity .3s ease}.overlay-fade-enter-from[data-v-11b69f56],.overlay-fade-leave-to[data-v-11b69f56]{opacity:0}
|
|
@@ -1,26 +1,26 @@
|
|
|
1
|
-
import { computed as
|
|
2
|
-
const
|
|
3
|
-
const l =
|
|
4
|
-
for (const [
|
|
5
|
-
l[
|
|
1
|
+
import { computed as f, createElementBlock as s, openBlock as d, normalizeClass as i, createCommentVNode as r, createElementVNode as u, renderSlot as c, watch as y, createBlock as p, Transition as v, withCtx as b, withModifiers as g } from "vue";
|
|
2
|
+
const m = (e, t) => {
|
|
3
|
+
const l = e.__vccOpts || e;
|
|
4
|
+
for (const [a, n] of t)
|
|
5
|
+
l[a] = n;
|
|
6
6
|
return l;
|
|
7
|
-
},
|
|
7
|
+
}, B = ["type", "disabled"], k = {
|
|
8
8
|
key: 0,
|
|
9
9
|
class: "btn-loader"
|
|
10
|
-
},
|
|
10
|
+
}, V = {
|
|
11
11
|
__name: "Button",
|
|
12
12
|
props: {
|
|
13
13
|
variant: {
|
|
14
14
|
type: String,
|
|
15
15
|
default: "primary",
|
|
16
16
|
// 'primary', 'secondary', 'destructive'
|
|
17
|
-
validator: (
|
|
17
|
+
validator: (e) => ["primary", "secondary", "destructive", "flat", "elevated", "text", "outlined", "outlined-primary", "outlined-secondary", "rounded"].includes(e)
|
|
18
18
|
},
|
|
19
19
|
size: {
|
|
20
20
|
type: String,
|
|
21
21
|
default: "medium",
|
|
22
22
|
// 'small', 'medium', 'large'
|
|
23
|
-
validator: (
|
|
23
|
+
validator: (e) => ["sm", "small", "medium", "large", "x-large"].includes(e)
|
|
24
24
|
},
|
|
25
25
|
type: {
|
|
26
26
|
type: String,
|
|
@@ -40,37 +40,71 @@ const f = (t, e) => {
|
|
|
40
40
|
}
|
|
41
41
|
},
|
|
42
42
|
emits: ["click"],
|
|
43
|
-
setup(
|
|
44
|
-
const
|
|
43
|
+
setup(e) {
|
|
44
|
+
const t = e, l = f(() => [
|
|
45
45
|
"btn",
|
|
46
|
-
`btn--${
|
|
47
|
-
`btn--${
|
|
46
|
+
`btn--${t.variant}`,
|
|
47
|
+
`btn--${t.size === "sm" ? "small" : t.size}`,
|
|
48
48
|
{
|
|
49
|
-
"btn--loading":
|
|
50
|
-
"btn--full":
|
|
49
|
+
"btn--loading": t.loading,
|
|
50
|
+
"btn--full": t.full
|
|
51
51
|
}
|
|
52
52
|
]);
|
|
53
|
-
return (
|
|
54
|
-
type:
|
|
55
|
-
class:
|
|
56
|
-
disabled:
|
|
57
|
-
onClick: n[0] || (n[0] = (
|
|
53
|
+
return (a, n) => (d(), s("button", {
|
|
54
|
+
type: e.type,
|
|
55
|
+
class: i(l.value),
|
|
56
|
+
disabled: e.disabled || e.loading,
|
|
57
|
+
onClick: n[0] || (n[0] = (o) => a.$emit("click"))
|
|
58
58
|
}, [
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
])])) :
|
|
62
|
-
|
|
63
|
-
class:
|
|
59
|
+
e.loading ? (d(), s("div", k, [...n[1] || (n[1] = [
|
|
60
|
+
u("div", { class: "simple-spinner" }, null, -1)
|
|
61
|
+
])])) : r("", !0),
|
|
62
|
+
u("span", {
|
|
63
|
+
class: i(["btn-content", { "content-hidden": e.loading }])
|
|
64
64
|
}, [
|
|
65
|
-
|
|
65
|
+
c(a.$slots, "default", {}, void 0, !0)
|
|
66
66
|
], 2)
|
|
67
|
-
], 10,
|
|
67
|
+
], 10, B));
|
|
68
68
|
}
|
|
69
|
-
},
|
|
70
|
-
|
|
71
|
-
|
|
69
|
+
}, $ = /* @__PURE__ */ m(V, [["__scopeId", "data-v-8db92d47"]]), C = {
|
|
70
|
+
__name: "Overlay",
|
|
71
|
+
props: {
|
|
72
|
+
modelValue: {
|
|
73
|
+
type: Boolean,
|
|
74
|
+
default: !1
|
|
75
|
+
},
|
|
76
|
+
contained: {
|
|
77
|
+
type: Boolean,
|
|
78
|
+
default: !1
|
|
79
|
+
}
|
|
80
|
+
},
|
|
81
|
+
emits: ["update:modelValue"],
|
|
82
|
+
setup(e, { emit: t }) {
|
|
83
|
+
const l = e, a = t;
|
|
84
|
+
function n() {
|
|
85
|
+
a("update:modelValue", !1);
|
|
86
|
+
}
|
|
87
|
+
return y(() => l.modelValue, (o) => {
|
|
88
|
+
!l.contained && typeof document < "u" && (document.body.style.overflow = o ? "hidden" : "");
|
|
89
|
+
}), (o, O) => (d(), p(v, { name: "overlay-fade" }, {
|
|
90
|
+
default: b(() => [
|
|
91
|
+
e.modelValue ? (d(), s("div", {
|
|
92
|
+
key: 0,
|
|
93
|
+
class: i(["overlay", { "overlay--contained": e.contained }]),
|
|
94
|
+
onClick: g(n, ["self"])
|
|
95
|
+
}, [
|
|
96
|
+
c(o.$slots, "default", {}, void 0, !0)
|
|
97
|
+
], 2)) : r("", !0)
|
|
98
|
+
]),
|
|
99
|
+
_: 3
|
|
100
|
+
}));
|
|
101
|
+
}
|
|
102
|
+
}, h = /* @__PURE__ */ m(C, [["__scopeId", "data-v-11b69f56"]]), x = (e) => {
|
|
103
|
+
e.component("Overlay", h), e.component("Button", $);
|
|
104
|
+
}, z = { install: x };
|
|
72
105
|
export {
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
106
|
+
$ as Button,
|
|
107
|
+
h as Overlay,
|
|
108
|
+
z as default,
|
|
109
|
+
x as install
|
|
76
110
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
(function(n,
|
|
1
|
+
(function(n,e){typeof exports=="object"&&typeof module<"u"?e(exports,require("vue")):typeof define=="function"&&define.amd?define(["exports","vue"],e):(n=typeof globalThis<"u"?globalThis:n||self,e(n.TreqitUiLibrary={},n.Vue))})(this,(function(n,e){"use strict";const s=(t,l)=>{const a=t.__vccOpts||t;for(const[d,o]of l)a[d]=o;return a},f=["type","disabled"],m={key:0,class:"btn-loader"},c=s({__name:"Button",props:{variant:{type:String,default:"primary",validator:t=>["primary","secondary","destructive","flat","elevated","text","outlined","outlined-primary","outlined-secondary","rounded"].includes(t)},size:{type:String,default:"medium",validator:t=>["sm","small","medium","large","x-large"].includes(t)},type:{type:String,default:"button"},disabled:{type:Boolean,default:!1},loading:{type:Boolean,default:!1},full:{type:Boolean,default:!1}},emits:["click"],setup(t){const l=t,a=e.computed(()=>["btn",`btn--${l.variant}`,`btn--${l.size==="sm"?"small":l.size}`,{"btn--loading":l.loading,"btn--full":l.full}]);return(d,o)=>(e.openBlock(),e.createElementBlock("button",{type:t.type,class:e.normalizeClass(a.value),disabled:t.disabled||t.loading,onClick:o[0]||(o[0]=i=>d.$emit("click"))},[t.loading?(e.openBlock(),e.createElementBlock("div",m,[...o[1]||(o[1]=[e.createElementVNode("div",{class:"simple-spinner"},null,-1)])])):e.createCommentVNode("",!0),e.createElementVNode("span",{class:e.normalizeClass(["btn-content",{"content-hidden":t.loading}])},[e.renderSlot(d.$slots,"default",{},void 0,!0)],2)],10,f))}},[["__scopeId","data-v-8db92d47"]]),r=s({__name:"Overlay",props:{modelValue:{type:Boolean,default:!1},contained:{type:Boolean,default:!1}},emits:["update:modelValue"],setup(t,{emit:l}){const a=t,d=l;function o(){d("update:modelValue",!1)}return e.watch(()=>a.modelValue,i=>{!a.contained&&typeof document<"u"&&(document.body.style.overflow=i?"hidden":"")}),(i,B)=>(e.openBlock(),e.createBlock(e.Transition,{name:"overlay-fade"},{default:e.withCtx(()=>[t.modelValue?(e.openBlock(),e.createElementBlock("div",{key:0,class:e.normalizeClass(["overlay",{"overlay--contained":t.contained}]),onClick:e.withModifiers(o,["self"])},[e.renderSlot(i.$slots,"default",{},void 0,!0)],2)):e.createCommentVNode("",!0)]),_:3}))}},[["__scopeId","data-v-11b69f56"]]),u=t=>{t.component("Overlay",r),t.component("Button",c)},y={install:u};n.Button=c,n.Overlay=r,n.default=y,n.install=u,Object.defineProperties(n,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}})}));
|