@fiscozen/card 0.1.0
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/LICENSE +21 -0
- package/README.md +1 -0
- package/dist/card.js +110 -0
- package/dist/card.umd.cjs +1 -0
- package/dist/index.d.ts +1 -0
- package/dist/src/FzCard.vue.d.ts +22 -0
- package/dist/src/__test__/FzCard.test.d.ts +1 -0
- package/dist/src/index.d.ts +2 -0
- package/dist/src/types.d.ts +18 -0
- package/package.json +47 -0
- package/src/FzCard.vue +115 -0
- package/src/__test__/FzCard.test.ts +162 -0
- package/src/__test__/__snapshots__/FzCard.test.ts.snap +16 -0
- package/src/index.ts +2 -0
- package/src/types.ts +20 -0
- package/tsconfig.json +4 -0
- package/tsconfig.tsbuildinfo +1 -0
- package/vite.config.ts +33 -0
- package/vitest.config.ts +19 -0
package/LICENSE
ADDED
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
MIT License
|
|
2
|
+
|
|
3
|
+
Copyright (c) 2024 Fiscozen
|
|
4
|
+
|
|
5
|
+
Permission is hereby granted, free of charge, to any person obtaining a copy
|
|
6
|
+
of this software and associated documentation files (the "Software"), to deal
|
|
7
|
+
in the Software without restriction, including without limitation the rights
|
|
8
|
+
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
|
9
|
+
copies of the Software, and to permit persons to whom the Software is
|
|
10
|
+
furnished to do so, subject to the following conditions:
|
|
11
|
+
|
|
12
|
+
The above copyright notice and this permission notice shall be included in all
|
|
13
|
+
copies or substantial portions of the Software.
|
|
14
|
+
|
|
15
|
+
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
|
16
|
+
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
|
17
|
+
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
|
18
|
+
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
|
19
|
+
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
|
20
|
+
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
|
21
|
+
SOFTWARE.
|
package/README.md
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
# @fiscozen/card
|
package/dist/card.js
ADDED
|
@@ -0,0 +1,110 @@
|
|
|
1
|
+
import { defineComponent as w, ref as h, computed as a, onMounted as $, openBlock as t, createElementBlock as s, normalizeClass as l, createElementVNode as c, toDisplayString as B, createCommentVNode as n, renderSlot as y, createBlock as d, unref as u, Fragment as z } from "vue";
|
|
2
|
+
import { FzIconButton as f, FzButton as v } from "@fiscozen/button";
|
|
3
|
+
const F = { class: "flex flex-row gap-12 items-center" }, S = ["title"], N = "border-1 border-solid border-grey-100 rounded flex flex-col", E = "h-64 border-solid p-16 flex flex-row justify-between", D = "h-64 border-t-1 border-solid p-16 flex justify-end gap-8 items-center", V = /* @__PURE__ */ w({
|
|
4
|
+
__name: "FzCard",
|
|
5
|
+
props: {
|
|
6
|
+
title: {},
|
|
7
|
+
color: {},
|
|
8
|
+
primaryAction: {},
|
|
9
|
+
secondaryAction: {},
|
|
10
|
+
tertiaryAction: {},
|
|
11
|
+
contentClass: {},
|
|
12
|
+
collapsible: { type: Boolean },
|
|
13
|
+
defaultExpanded: { type: Boolean }
|
|
14
|
+
},
|
|
15
|
+
setup(k) {
|
|
16
|
+
const o = k, i = h(o.defaultExpanded ?? !1), b = a(() => i.value || !o.collapsible), A = a(() => [
|
|
17
|
+
b.value ? "border-b-1" : "border-b-0"
|
|
18
|
+
]), C = a(() => {
|
|
19
|
+
switch (o.color) {
|
|
20
|
+
case "blue":
|
|
21
|
+
return "bg-background-alice-blue";
|
|
22
|
+
case "orange":
|
|
23
|
+
return "bg-background-seashell";
|
|
24
|
+
case "purple":
|
|
25
|
+
return "bg-background-pale-purple";
|
|
26
|
+
default:
|
|
27
|
+
return "bg-core-white";
|
|
28
|
+
}
|
|
29
|
+
}), m = a(() => {
|
|
30
|
+
switch (o.color) {
|
|
31
|
+
case "blue":
|
|
32
|
+
return "border-blue-200";
|
|
33
|
+
case "orange":
|
|
34
|
+
return "border-orange-200";
|
|
35
|
+
case "purple":
|
|
36
|
+
return "border-purple-200";
|
|
37
|
+
default:
|
|
38
|
+
return "border-grey-100";
|
|
39
|
+
}
|
|
40
|
+
}), g = a(
|
|
41
|
+
() => o.primaryAction !== void 0 || o.secondaryAction !== void 0 || o.tertiaryAction !== void 0
|
|
42
|
+
);
|
|
43
|
+
return $(() => {
|
|
44
|
+
o.tertiaryAction && !o.secondaryAction && !o.primaryAction ? console.warn(
|
|
45
|
+
"[Fiscozen Design System]: You should set primaryAction and secondaryAction if you want to set tertiaryAction"
|
|
46
|
+
) : o.secondaryAction && !o.primaryAction && console.warn(
|
|
47
|
+
"[Fiscozen Design System]: You should set primaryAction if you want to set secondaryAction"
|
|
48
|
+
);
|
|
49
|
+
}), (e, r) => (t(), s("section", {
|
|
50
|
+
class: l([N, C.value])
|
|
51
|
+
}, [
|
|
52
|
+
c("header", {
|
|
53
|
+
class: l([A.value, m.value])
|
|
54
|
+
}, [
|
|
55
|
+
c("div", {
|
|
56
|
+
class: l(E)
|
|
57
|
+
}, [
|
|
58
|
+
c("div", F, [
|
|
59
|
+
e.title ? (t(), s("h2", {
|
|
60
|
+
key: 0,
|
|
61
|
+
class: "text-core-black font-medium text-2xl m-0 p-0 break-words",
|
|
62
|
+
title: e.title
|
|
63
|
+
}, B(e.title), 9, S)) : n("", !0),
|
|
64
|
+
y(e.$slots, "header")
|
|
65
|
+
]),
|
|
66
|
+
e.collapsible ? (t(), d(u(f), {
|
|
67
|
+
key: 0,
|
|
68
|
+
iconName: i.value ? "chevron-up" : "chevron-down",
|
|
69
|
+
onClick: r[0] || (r[0] = (p) => i.value = !i.value),
|
|
70
|
+
variant: "invisible"
|
|
71
|
+
}, null, 8, ["iconName"])) : n("", !0)
|
|
72
|
+
]),
|
|
73
|
+
y(e.$slots, "header-content")
|
|
74
|
+
], 2),
|
|
75
|
+
b.value ? (t(), s(z, { key: 0 }, [
|
|
76
|
+
c("article", {
|
|
77
|
+
class: l(["p-20", e.contentClass])
|
|
78
|
+
}, [
|
|
79
|
+
y(e.$slots, "default")
|
|
80
|
+
], 2),
|
|
81
|
+
g.value ? (t(), s("footer", {
|
|
82
|
+
key: 0,
|
|
83
|
+
class: l([D, m.value])
|
|
84
|
+
}, [
|
|
85
|
+
e.tertiaryAction ? (t(), d(u(f), {
|
|
86
|
+
key: 0,
|
|
87
|
+
onClick: r[1] || (r[1] = (p) => e.$emit("click:tertiary")),
|
|
88
|
+
iconName: e.tertiaryAction.icon,
|
|
89
|
+
variant: "invisible"
|
|
90
|
+
}, null, 8, ["iconName"])) : n("", !0),
|
|
91
|
+
e.secondaryAction ? (t(), d(u(v), {
|
|
92
|
+
key: 1,
|
|
93
|
+
onClick: r[2] || (r[2] = (p) => e.$emit("click:secondary")),
|
|
94
|
+
label: e.secondaryAction.label,
|
|
95
|
+
variant: "secondary"
|
|
96
|
+
}, null, 8, ["label"])) : n("", !0),
|
|
97
|
+
e.primaryAction ? (t(), d(u(v), {
|
|
98
|
+
key: 2,
|
|
99
|
+
onClick: r[3] || (r[3] = (p) => e.$emit("click:primary")),
|
|
100
|
+
label: e.primaryAction.label,
|
|
101
|
+
variant: "primary"
|
|
102
|
+
}, null, 8, ["label"])) : n("", !0)
|
|
103
|
+
], 2)) : n("", !0)
|
|
104
|
+
], 64)) : n("", !0)
|
|
105
|
+
], 2));
|
|
106
|
+
}
|
|
107
|
+
});
|
|
108
|
+
export {
|
|
109
|
+
V as FzCard
|
|
110
|
+
};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
(function(n,e){typeof exports=="object"&&typeof module<"u"?e(exports,require("vue"),require("@fiscozen/button")):typeof define=="function"&&define.amd?define(["exports","vue","@fiscozen/button"],e):(n=typeof globalThis<"u"?globalThis:n||self,e(n.FzCard={},n.Vue,n.button))})(this,function(n,e,l){"use strict";const d={class:"flex flex-row gap-12 items-center"},m=["title"],p="border-1 border-solid border-grey-100 rounded flex flex-col",y="h-64 border-solid p-16 flex flex-row justify-between",f="h-64 border-t-1 border-solid p-16 flex justify-end gap-8 items-center",u=e.defineComponent({__name:"FzCard",props:{title:{},color:{},primaryAction:{},secondaryAction:{},tertiaryAction:{},contentClass:{},collapsible:{type:Boolean},defaultExpanded:{type:Boolean}},setup(b){const t=b,a=e.ref(t.defaultExpanded??!1),c=e.computed(()=>a.value||!t.collapsible),k=e.computed(()=>[c.value?"border-b-1":"border-b-0"]),C=e.computed(()=>{switch(t.color){case"blue":return"bg-background-alice-blue";case"orange":return"bg-background-seashell";case"purple":return"bg-background-pale-purple";default:return"bg-core-white"}}),s=e.computed(()=>{switch(t.color){case"blue":return"border-blue-200";case"orange":return"border-orange-200";case"purple":return"border-purple-200";default:return"border-grey-100"}}),B=e.computed(()=>t.primaryAction!==void 0||t.secondaryAction!==void 0||t.tertiaryAction!==void 0);return e.onMounted(()=>{t.tertiaryAction&&!t.secondaryAction&&!t.primaryAction?console.warn("[Fiscozen Design System]: You should set primaryAction and secondaryAction if you want to set tertiaryAction"):t.secondaryAction&&!t.primaryAction&&console.warn("[Fiscozen Design System]: You should set primaryAction if you want to set secondaryAction")}),(o,r)=>(e.openBlock(),e.createElementBlock("section",{class:e.normalizeClass([p,C.value])},[e.createElementVNode("header",{class:e.normalizeClass([k.value,s.value])},[e.createElementVNode("div",{class:e.normalizeClass(y)},[e.createElementVNode("div",d,[o.title?(e.openBlock(),e.createElementBlock("h2",{key:0,class:"text-core-black font-medium text-2xl m-0 p-0 break-words",title:o.title},e.toDisplayString(o.title),9,m)):e.createCommentVNode("",!0),e.renderSlot(o.$slots,"header")]),o.collapsible?(e.openBlock(),e.createBlock(e.unref(l.FzIconButton),{key:0,iconName:a.value?"chevron-up":"chevron-down",onClick:r[0]||(r[0]=i=>a.value=!a.value),variant:"invisible"},null,8,["iconName"])):e.createCommentVNode("",!0)]),e.renderSlot(o.$slots,"header-content")],2),c.value?(e.openBlock(),e.createElementBlock(e.Fragment,{key:0},[e.createElementVNode("article",{class:e.normalizeClass(["p-20",o.contentClass])},[e.renderSlot(o.$slots,"default")],2),B.value?(e.openBlock(),e.createElementBlock("footer",{key:0,class:e.normalizeClass([f,s.value])},[o.tertiaryAction?(e.openBlock(),e.createBlock(e.unref(l.FzIconButton),{key:0,onClick:r[1]||(r[1]=i=>o.$emit("click:tertiary")),iconName:o.tertiaryAction.icon,variant:"invisible"},null,8,["iconName"])):e.createCommentVNode("",!0),o.secondaryAction?(e.openBlock(),e.createBlock(e.unref(l.FzButton),{key:1,onClick:r[2]||(r[2]=i=>o.$emit("click:secondary")),label:o.secondaryAction.label,variant:"secondary"},null,8,["label"])):e.createCommentVNode("",!0),o.primaryAction?(e.openBlock(),e.createBlock(e.unref(l.FzButton),{key:2,onClick:r[3]||(r[3]=i=>o.$emit("click:primary")),label:o.primaryAction.label,variant:"primary"},null,8,["label"])):e.createCommentVNode("",!0)],2)):e.createCommentVNode("",!0)],64)):e.createCommentVNode("",!0)],2))}});n.FzCard=u,Object.defineProperty(n,Symbol.toStringTag,{value:"Module"})});
|
package/dist/index.d.ts
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export * from './src/index'
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
import { FzCardProps } from './types';
|
|
2
|
+
|
|
3
|
+
declare const _default: __VLS_WithTemplateSlots<import('vue').DefineComponent<__VLS_TypePropsToRuntimeProps<FzCardProps>, {}, unknown, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {}, string, import('vue').PublicProps, Readonly<import('vue').ExtractPropTypes<__VLS_TypePropsToRuntimeProps<FzCardProps>>>, {}, {}>, {
|
|
4
|
+
header?(_: {}): any;
|
|
5
|
+
"header-content"?(_: {}): any;
|
|
6
|
+
default?(_: {}): any;
|
|
7
|
+
}>;
|
|
8
|
+
export default _default;
|
|
9
|
+
type __VLS_NonUndefinedable<T> = T extends undefined ? never : T;
|
|
10
|
+
type __VLS_TypePropsToRuntimeProps<T> = {
|
|
11
|
+
[K in keyof T]-?: {} extends Pick<T, K> ? {
|
|
12
|
+
type: import('vue').PropType<__VLS_NonUndefinedable<T[K]>>;
|
|
13
|
+
} : {
|
|
14
|
+
type: import('vue').PropType<T[K]>;
|
|
15
|
+
required: true;
|
|
16
|
+
};
|
|
17
|
+
};
|
|
18
|
+
type __VLS_WithTemplateSlots<T, S> = T & {
|
|
19
|
+
new (): {
|
|
20
|
+
$slots: S;
|
|
21
|
+
};
|
|
22
|
+
};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
export type FzCardProps = {
|
|
2
|
+
title: string;
|
|
3
|
+
color?: FzCardColor;
|
|
4
|
+
primaryAction?: FzCardButton;
|
|
5
|
+
secondaryAction?: FzCardButton;
|
|
6
|
+
tertiaryAction?: FzCardIconButton;
|
|
7
|
+
contentClass?: string;
|
|
8
|
+
collapsible?: boolean;
|
|
9
|
+
defaultExpanded?: boolean;
|
|
10
|
+
};
|
|
11
|
+
type FzCardButton = {
|
|
12
|
+
label: string;
|
|
13
|
+
};
|
|
14
|
+
type FzCardIconButton = {
|
|
15
|
+
icon: string;
|
|
16
|
+
};
|
|
17
|
+
export type FzCardColor = "purple" | "orange" | "blue";
|
|
18
|
+
export {};
|
package/package.json
ADDED
|
@@ -0,0 +1,47 @@
|
|
|
1
|
+
{
|
|
2
|
+
"name": "@fiscozen/card",
|
|
3
|
+
"version": "0.1.0",
|
|
4
|
+
"description": "Design System Card component",
|
|
5
|
+
"main": "src/index.ts",
|
|
6
|
+
"type": "module",
|
|
7
|
+
"keywords": [],
|
|
8
|
+
"author": "Cristian Barraco",
|
|
9
|
+
"dependencies": {
|
|
10
|
+
"@fiscozen/icons": "^0.1.3",
|
|
11
|
+
"@fiscozen/button": "^0.1.2"
|
|
12
|
+
},
|
|
13
|
+
"peerDependencies": {
|
|
14
|
+
"tailwindcss": "^3.4.1",
|
|
15
|
+
"vue": "^3.4.13"
|
|
16
|
+
},
|
|
17
|
+
"devDependencies": {
|
|
18
|
+
"@rushstack/eslint-patch": "^1.3.3",
|
|
19
|
+
"@types/jsdom": "^21.1.6",
|
|
20
|
+
"@types/node": "^18.19.3",
|
|
21
|
+
"@vitejs/plugin-vue": "^4.5.2",
|
|
22
|
+
"@vitest/coverage-v8": "^1.2.1",
|
|
23
|
+
"@vue/test-utils": "^2.4.3",
|
|
24
|
+
"@vue/tsconfig": "^0.5.0",
|
|
25
|
+
"vite-plugin-dts": "^3.8.3",
|
|
26
|
+
"eslint": "^8.49.0",
|
|
27
|
+
"jsdom": "^23.0.1",
|
|
28
|
+
"prettier": "^3.0.3",
|
|
29
|
+
"typescript": "~5.3.0",
|
|
30
|
+
"vite": "^5.0.10",
|
|
31
|
+
"vitest": "^1.2.0",
|
|
32
|
+
"vue-tsc": "^1.8.25",
|
|
33
|
+
"@awesome.me/kit-8137893ad3": "^1.0.65",
|
|
34
|
+
"@fortawesome/fontawesome-svg-core": "^6.5.1",
|
|
35
|
+
"@fortawesome/vue-fontawesome": "^3.0.6",
|
|
36
|
+
"@fiscozen/eslint-config": "^0.1.0",
|
|
37
|
+
"@fiscozen/prettier-config": "^0.1.0",
|
|
38
|
+
"@fiscozen/tsconfig": "^0.1.0"
|
|
39
|
+
},
|
|
40
|
+
"license": "MIT",
|
|
41
|
+
"scripts": {
|
|
42
|
+
"coverage": "vitest run --coverage",
|
|
43
|
+
"format": "prettier --write src/",
|
|
44
|
+
"test:unit": "vitest run",
|
|
45
|
+
"build": "vue-tsc && vite build"
|
|
46
|
+
}
|
|
47
|
+
}
|
package/src/FzCard.vue
ADDED
|
@@ -0,0 +1,115 @@
|
|
|
1
|
+
<template>
|
|
2
|
+
<section :class="[sectionStaticClass, backgroundColor]">
|
|
3
|
+
<header :class="[headerContainerComputedClass, borderColor]">
|
|
4
|
+
<div :class="headerStaticClass">
|
|
5
|
+
<div class="flex flex-row gap-12 items-center">
|
|
6
|
+
<h2
|
|
7
|
+
v-if="title"
|
|
8
|
+
class="text-core-black font-medium text-2xl m-0 p-0 break-words"
|
|
9
|
+
:title="title"
|
|
10
|
+
>
|
|
11
|
+
{{ title }}
|
|
12
|
+
</h2>
|
|
13
|
+
<slot name="header"></slot>
|
|
14
|
+
</div>
|
|
15
|
+
<FzIconButton
|
|
16
|
+
v-if="collapsible"
|
|
17
|
+
:iconName="isOpen ? 'chevron-up' : 'chevron-down'"
|
|
18
|
+
@click="isOpen = !isOpen"
|
|
19
|
+
variant="invisible"
|
|
20
|
+
/>
|
|
21
|
+
</div>
|
|
22
|
+
<slot name="header-content"></slot>
|
|
23
|
+
</header>
|
|
24
|
+
<template v-if="showContent">
|
|
25
|
+
<article :class="['p-20', contentClass]">
|
|
26
|
+
<slot></slot>
|
|
27
|
+
</article>
|
|
28
|
+
<footer v-if="atLeastOneButton" :class="[footerStaticClass, borderColor]">
|
|
29
|
+
<FzIconButton
|
|
30
|
+
v-if="tertiaryAction"
|
|
31
|
+
@click="$emit('fztertiary:click')"
|
|
32
|
+
:iconName="tertiaryAction.icon"
|
|
33
|
+
variant="invisible"
|
|
34
|
+
/>
|
|
35
|
+
<FzButton
|
|
36
|
+
v-if="secondaryAction"
|
|
37
|
+
@click="$emit('fzsecondary:click')"
|
|
38
|
+
:label="secondaryAction.label"
|
|
39
|
+
variant="secondary"
|
|
40
|
+
/>
|
|
41
|
+
<FzButton
|
|
42
|
+
v-if="primaryAction"
|
|
43
|
+
@click="$emit('fzprimary:click')"
|
|
44
|
+
:label="primaryAction.label"
|
|
45
|
+
variant="primary"
|
|
46
|
+
/>
|
|
47
|
+
</footer>
|
|
48
|
+
</template>
|
|
49
|
+
</section>
|
|
50
|
+
</template>
|
|
51
|
+
|
|
52
|
+
<script setup lang="ts">
|
|
53
|
+
import { computed, onMounted, ref } from "vue";
|
|
54
|
+
import { FzCardProps } from "./types";
|
|
55
|
+
import { FzButton, FzIconButton } from "@fiscozen/button";
|
|
56
|
+
|
|
57
|
+
const props = defineProps<FzCardProps>();
|
|
58
|
+
const isOpen = ref(props.defaultExpanded ?? false);
|
|
59
|
+
|
|
60
|
+
const sectionStaticClass =
|
|
61
|
+
"border-1 border-solid border-grey-100 rounded flex flex-col";
|
|
62
|
+
const headerStaticClass =
|
|
63
|
+
"h-64 border-solid p-16 flex flex-row justify-between";
|
|
64
|
+
const footerStaticClass =
|
|
65
|
+
"h-64 border-t-1 border-solid p-16 flex justify-end gap-8 items-center";
|
|
66
|
+
|
|
67
|
+
const showContent = computed(() => isOpen.value || !props.collapsible);
|
|
68
|
+
const headerContainerComputedClass = computed(() => [
|
|
69
|
+
showContent.value ? "border-b-1" : "border-b-0",
|
|
70
|
+
]);
|
|
71
|
+
|
|
72
|
+
const backgroundColor = computed(() => {
|
|
73
|
+
switch (props.color) {
|
|
74
|
+
case "blue":
|
|
75
|
+
return "bg-background-alice-blue";
|
|
76
|
+
case "orange":
|
|
77
|
+
return "bg-background-seashell";
|
|
78
|
+
case "purple":
|
|
79
|
+
return "bg-background-pale-purple";
|
|
80
|
+
default:
|
|
81
|
+
return "bg-core-white";
|
|
82
|
+
}
|
|
83
|
+
});
|
|
84
|
+
|
|
85
|
+
const borderColor = computed(() => {
|
|
86
|
+
switch (props.color) {
|
|
87
|
+
case "blue":
|
|
88
|
+
return "border-blue-200";
|
|
89
|
+
case "orange":
|
|
90
|
+
return "border-orange-200";
|
|
91
|
+
case "purple":
|
|
92
|
+
return "border-purple-200";
|
|
93
|
+
default:
|
|
94
|
+
return "border-grey-100";
|
|
95
|
+
}
|
|
96
|
+
});
|
|
97
|
+
|
|
98
|
+
const atLeastOneButton = computed(
|
|
99
|
+
() =>
|
|
100
|
+
props.primaryAction !== undefined ||
|
|
101
|
+
props.secondaryAction !== undefined ||
|
|
102
|
+
props.tertiaryAction !== undefined,
|
|
103
|
+
);
|
|
104
|
+
|
|
105
|
+
onMounted(() => {
|
|
106
|
+
if (props.tertiaryAction && !props.secondaryAction && !props.primaryAction)
|
|
107
|
+
console.warn(
|
|
108
|
+
"[Fiscozen Design System]: You should set primaryAction and secondaryAction if you want to set tertiaryAction",
|
|
109
|
+
);
|
|
110
|
+
else if (props.secondaryAction && !props.primaryAction)
|
|
111
|
+
console.warn(
|
|
112
|
+
"[Fiscozen Design System]: You should set primaryAction if you want to set secondaryAction",
|
|
113
|
+
);
|
|
114
|
+
});
|
|
115
|
+
</script>
|
|
@@ -0,0 +1,162 @@
|
|
|
1
|
+
import { mount } from "@vue/test-utils";
|
|
2
|
+
import { describe, it, expect, vi } from "vitest";
|
|
3
|
+
import FzCard from "../FzCard.vue";
|
|
4
|
+
|
|
5
|
+
describe("FzCard", () => {
|
|
6
|
+
it("renders correctly", async () => {
|
|
7
|
+
const wrapper = mount(FzCard, {
|
|
8
|
+
props: {
|
|
9
|
+
title: "Test Card",
|
|
10
|
+
},
|
|
11
|
+
});
|
|
12
|
+
await wrapper.vm.$nextTick();
|
|
13
|
+
expect(wrapper.html()).toContain("Test Card");
|
|
14
|
+
expect(wrapper.html()).toMatchSnapshot();
|
|
15
|
+
});
|
|
16
|
+
|
|
17
|
+
it("computes correct background color", async () => {
|
|
18
|
+
const wrapper = mount(FzCard, {
|
|
19
|
+
props: {
|
|
20
|
+
title: "Test Card",
|
|
21
|
+
color: "orange",
|
|
22
|
+
},
|
|
23
|
+
});
|
|
24
|
+
|
|
25
|
+
await wrapper.vm.$nextTick();
|
|
26
|
+
expect(wrapper.find("section").classes()).toContain(
|
|
27
|
+
"bg-background-seashell",
|
|
28
|
+
);
|
|
29
|
+
});
|
|
30
|
+
|
|
31
|
+
it("computes correct border color", async () => {
|
|
32
|
+
const wrapper = mount(FzCard, {
|
|
33
|
+
props: {
|
|
34
|
+
title: "Test Card",
|
|
35
|
+
color: "blue",
|
|
36
|
+
primaryAction: {
|
|
37
|
+
label: "Action 1",
|
|
38
|
+
},
|
|
39
|
+
},
|
|
40
|
+
});
|
|
41
|
+
|
|
42
|
+
await wrapper.vm.$nextTick();
|
|
43
|
+
expect(wrapper.find("header").classes()).toContain("border-blue-200");
|
|
44
|
+
expect(wrapper.find("section").classes()).toContain("border-grey-100");
|
|
45
|
+
expect(wrapper.find("footer").classes()).toContain("border-blue-200");
|
|
46
|
+
});
|
|
47
|
+
|
|
48
|
+
it("computes atLeastOneButton correctly", async () => {
|
|
49
|
+
const wrapper = mount(FzCard, {
|
|
50
|
+
props: {
|
|
51
|
+
title: "Test Card",
|
|
52
|
+
primaryAction: {
|
|
53
|
+
label: "Action 1",
|
|
54
|
+
},
|
|
55
|
+
},
|
|
56
|
+
});
|
|
57
|
+
|
|
58
|
+
await wrapper.vm.$nextTick();
|
|
59
|
+
// @ts-ignore computed property are not typed
|
|
60
|
+
expect(wrapper.vm.atLeastOneButton).toBe(true);
|
|
61
|
+
});
|
|
62
|
+
|
|
63
|
+
it("warns if tertiaryAction is set without primaryAction and secondaryAction", () => {
|
|
64
|
+
const warnSpy = vi.spyOn(console, "warn").mockImplementation(() => {});
|
|
65
|
+
mount(FzCard, {
|
|
66
|
+
props: {
|
|
67
|
+
title: "Test Card",
|
|
68
|
+
tertiaryAction: {
|
|
69
|
+
icon: "bell",
|
|
70
|
+
callback: () => {},
|
|
71
|
+
},
|
|
72
|
+
},
|
|
73
|
+
});
|
|
74
|
+
expect(warnSpy).toHaveBeenCalledWith(
|
|
75
|
+
"[Fiscozen Design System]: You should set primaryAction and secondaryAction if you want to set tertiaryAction",
|
|
76
|
+
);
|
|
77
|
+
warnSpy.mockRestore();
|
|
78
|
+
});
|
|
79
|
+
|
|
80
|
+
it("warns if secondaryAction is set without primaryAction", () => {
|
|
81
|
+
const warnSpy = vi.spyOn(console, "warn").mockImplementation(() => {});
|
|
82
|
+
mount(FzCard, {
|
|
83
|
+
props: {
|
|
84
|
+
title: "Test Card",
|
|
85
|
+
secondaryAction: {
|
|
86
|
+
label: "Action 2",
|
|
87
|
+
callback: () => {},
|
|
88
|
+
},
|
|
89
|
+
},
|
|
90
|
+
});
|
|
91
|
+
|
|
92
|
+
expect(warnSpy).toHaveBeenCalledWith(
|
|
93
|
+
"[Fiscozen Design System]: You should set primaryAction if you want to set secondaryAction",
|
|
94
|
+
);
|
|
95
|
+
warnSpy.mockRestore();
|
|
96
|
+
});
|
|
97
|
+
|
|
98
|
+
it("should emit click event when primaryAction is clicked", async () => {
|
|
99
|
+
const wrapper = mount(FzCard, {
|
|
100
|
+
props: {
|
|
101
|
+
title: "Test Card",
|
|
102
|
+
primaryAction: {
|
|
103
|
+
label: "Action 1",
|
|
104
|
+
},
|
|
105
|
+
},
|
|
106
|
+
});
|
|
107
|
+
|
|
108
|
+
await wrapper.find("button").trigger("click");
|
|
109
|
+
expect(wrapper.emitted("fzprimary:click")).toBeTruthy();
|
|
110
|
+
});
|
|
111
|
+
|
|
112
|
+
it("should emit click event when secondaryAction is clicked", async () => {
|
|
113
|
+
const wrapper = mount(FzCard, {
|
|
114
|
+
props: {
|
|
115
|
+
title: "Test Card",
|
|
116
|
+
primaryAction: {
|
|
117
|
+
label: "Action 1",
|
|
118
|
+
},
|
|
119
|
+
secondaryAction: {
|
|
120
|
+
label: "Action 2",
|
|
121
|
+
},
|
|
122
|
+
},
|
|
123
|
+
});
|
|
124
|
+
|
|
125
|
+
await wrapper.find("button").trigger("click");
|
|
126
|
+
expect(wrapper.emitted("fzsecondary:click")).toBeTruthy();
|
|
127
|
+
});
|
|
128
|
+
|
|
129
|
+
it("should emit click event when tertiaryAction is clicked", async () => {
|
|
130
|
+
const wrapper = mount(FzCard, {
|
|
131
|
+
props: {
|
|
132
|
+
title: "Test Card",
|
|
133
|
+
primaryAction: {
|
|
134
|
+
label: "Action 1",
|
|
135
|
+
},
|
|
136
|
+
secondaryAction: {
|
|
137
|
+
label: "Action 2",
|
|
138
|
+
},
|
|
139
|
+
tertiaryAction: {
|
|
140
|
+
icon: "bell",
|
|
141
|
+
},
|
|
142
|
+
},
|
|
143
|
+
});
|
|
144
|
+
|
|
145
|
+
await wrapper.find("button").trigger("click");
|
|
146
|
+
expect(wrapper.emitted("fztertiary:click")).toBeTruthy();
|
|
147
|
+
});
|
|
148
|
+
|
|
149
|
+
it("should expand and collapse when collapsible is true", async () => {
|
|
150
|
+
const wrapper = mount(FzCard, {
|
|
151
|
+
props: {
|
|
152
|
+
title: "Test Card",
|
|
153
|
+
collapsible: true,
|
|
154
|
+
},
|
|
155
|
+
});
|
|
156
|
+
await wrapper.vm.$nextTick();
|
|
157
|
+
|
|
158
|
+
expect(wrapper.find("article").exists()).toBeFalsy();
|
|
159
|
+
await wrapper.find("header").find("button").trigger("click");
|
|
160
|
+
expect(wrapper.find("article").exists()).toBeTruthy();
|
|
161
|
+
});
|
|
162
|
+
});
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
// Vitest Snapshot v1, https://vitest.dev/guide/snapshot.html
|
|
2
|
+
|
|
3
|
+
exports[`FzCard > renders correctly 1`] = `
|
|
4
|
+
"<section class="border-1 border-solid border-grey-100 rounded flex flex-col bg-core-white">
|
|
5
|
+
<header class="border-b-1 border-grey-100">
|
|
6
|
+
<div class="h-64 border-solid p-16 flex flex-row justify-between">
|
|
7
|
+
<div class="flex flex-row gap-12 items-center">
|
|
8
|
+
<h2 class="text-core-black font-medium text-2xl m-0 p-0 break-words" title="Test Card">Test Card</h2>
|
|
9
|
+
</div>
|
|
10
|
+
<!--v-if-->
|
|
11
|
+
</div>
|
|
12
|
+
</header>
|
|
13
|
+
<article class="p-20"></article>
|
|
14
|
+
<!--v-if-->
|
|
15
|
+
</section>"
|
|
16
|
+
`;
|
package/src/index.ts
ADDED
package/src/types.ts
ADDED
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
export type FzCardProps = {
|
|
2
|
+
title: string;
|
|
3
|
+
color?: FzCardColor;
|
|
4
|
+
primaryAction?: FzCardButton;
|
|
5
|
+
secondaryAction?: FzCardButton;
|
|
6
|
+
tertiaryAction?: FzCardIconButton;
|
|
7
|
+
contentClass?: string;
|
|
8
|
+
collapsible?: boolean;
|
|
9
|
+
defaultExpanded?: boolean;
|
|
10
|
+
};
|
|
11
|
+
|
|
12
|
+
type FzCardButton = {
|
|
13
|
+
label: string;
|
|
14
|
+
};
|
|
15
|
+
|
|
16
|
+
type FzCardIconButton = {
|
|
17
|
+
icon: string;
|
|
18
|
+
};
|
|
19
|
+
|
|
20
|
+
export type FzCardColor = "purple" | "orange" | "blue";
|
package/tsconfig.json
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"program":{"fileNames":["../../node_modules/.pnpm/typescript@5.3.3/node_modules/typescript/lib/lib.es5.d.ts","../../node_modules/.pnpm/typescript@5.3.3/node_modules/typescript/lib/lib.es2015.d.ts","../../node_modules/.pnpm/typescript@5.3.3/node_modules/typescript/lib/lib.es2016.d.ts","../../node_modules/.pnpm/typescript@5.3.3/node_modules/typescript/lib/lib.es2017.d.ts","../../node_modules/.pnpm/typescript@5.3.3/node_modules/typescript/lib/lib.es2018.d.ts","../../node_modules/.pnpm/typescript@5.3.3/node_modules/typescript/lib/lib.es2019.d.ts","../../node_modules/.pnpm/typescript@5.3.3/node_modules/typescript/lib/lib.es2020.d.ts","../../node_modules/.pnpm/typescript@5.3.3/node_modules/typescript/lib/lib.dom.d.ts","../../node_modules/.pnpm/typescript@5.3.3/node_modules/typescript/lib/lib.dom.iterable.d.ts","../../node_modules/.pnpm/typescript@5.3.3/node_modules/typescript/lib/lib.es2015.core.d.ts","../../node_modules/.pnpm/typescript@5.3.3/node_modules/typescript/lib/lib.es2015.collection.d.ts","../../node_modules/.pnpm/typescript@5.3.3/node_modules/typescript/lib/lib.es2015.generator.d.ts","../../node_modules/.pnpm/typescript@5.3.3/node_modules/typescript/lib/lib.es2015.iterable.d.ts","../../node_modules/.pnpm/typescript@5.3.3/node_modules/typescript/lib/lib.es2015.promise.d.ts","../../node_modules/.pnpm/typescript@5.3.3/node_modules/typescript/lib/lib.es2015.proxy.d.ts","../../node_modules/.pnpm/typescript@5.3.3/node_modules/typescript/lib/lib.es2015.reflect.d.ts","../../node_modules/.pnpm/typescript@5.3.3/node_modules/typescript/lib/lib.es2015.symbol.d.ts","../../node_modules/.pnpm/typescript@5.3.3/node_modules/typescript/lib/lib.es2015.symbol.wellknown.d.ts","../../node_modules/.pnpm/typescript@5.3.3/node_modules/typescript/lib/lib.es2016.array.include.d.ts","../../node_modules/.pnpm/typescript@5.3.3/node_modules/typescript/lib/lib.es2017.date.d.ts","../../node_modules/.pnpm/typescript@5.3.3/node_modules/typescript/lib/lib.es2017.object.d.ts","../../node_modules/.pnpm/typescript@5.3.3/node_modules/typescript/lib/lib.es2017.sharedmemory.d.ts","../../node_modules/.pnpm/typescript@5.3.3/node_modules/typescript/lib/lib.es2017.string.d.ts","../../node_modules/.pnpm/typescript@5.3.3/node_modules/typescript/lib/lib.es2017.intl.d.ts","../../node_modules/.pnpm/typescript@5.3.3/node_modules/typescript/lib/lib.es2017.typedarrays.d.ts","../../node_modules/.pnpm/typescript@5.3.3/node_modules/typescript/lib/lib.es2018.asyncgenerator.d.ts","../../node_modules/.pnpm/typescript@5.3.3/node_modules/typescript/lib/lib.es2018.asynciterable.d.ts","../../node_modules/.pnpm/typescript@5.3.3/node_modules/typescript/lib/lib.es2018.intl.d.ts","../../node_modules/.pnpm/typescript@5.3.3/node_modules/typescript/lib/lib.es2018.promise.d.ts","../../node_modules/.pnpm/typescript@5.3.3/node_modules/typescript/lib/lib.es2018.regexp.d.ts","../../node_modules/.pnpm/typescript@5.3.3/node_modules/typescript/lib/lib.es2019.array.d.ts","../../node_modules/.pnpm/typescript@5.3.3/node_modules/typescript/lib/lib.es2019.object.d.ts","../../node_modules/.pnpm/typescript@5.3.3/node_modules/typescript/lib/lib.es2019.string.d.ts","../../node_modules/.pnpm/typescript@5.3.3/node_modules/typescript/lib/lib.es2019.symbol.d.ts","../../node_modules/.pnpm/typescript@5.3.3/node_modules/typescript/lib/lib.es2019.intl.d.ts","../../node_modules/.pnpm/typescript@5.3.3/node_modules/typescript/lib/lib.es2020.bigint.d.ts","../../node_modules/.pnpm/typescript@5.3.3/node_modules/typescript/lib/lib.es2020.date.d.ts","../../node_modules/.pnpm/typescript@5.3.3/node_modules/typescript/lib/lib.es2020.promise.d.ts","../../node_modules/.pnpm/typescript@5.3.3/node_modules/typescript/lib/lib.es2020.sharedmemory.d.ts","../../node_modules/.pnpm/typescript@5.3.3/node_modules/typescript/lib/lib.es2020.string.d.ts","../../node_modules/.pnpm/typescript@5.3.3/node_modules/typescript/lib/lib.es2020.symbol.wellknown.d.ts","../../node_modules/.pnpm/typescript@5.3.3/node_modules/typescript/lib/lib.es2020.intl.d.ts","../../node_modules/.pnpm/typescript@5.3.3/node_modules/typescript/lib/lib.es2020.number.d.ts","../../node_modules/.pnpm/typescript@5.3.3/node_modules/typescript/lib/lib.esnext.intl.d.ts","../../node_modules/.pnpm/typescript@5.3.3/node_modules/typescript/lib/lib.decorators.d.ts","../../node_modules/.pnpm/typescript@5.3.3/node_modules/typescript/lib/lib.decorators.legacy.d.ts","../../node_modules/.pnpm/@vue+shared@3.4.13/node_modules/@vue/shared/dist/shared.d.ts","../../node_modules/.pnpm/@vue+reactivity@3.4.13/node_modules/@vue/reactivity/dist/reactivity.d.ts","../../node_modules/.pnpm/@vue+runtime-core@3.4.13/node_modules/@vue/runtime-core/dist/runtime-core.d.ts","../../node_modules/.pnpm/csstype@3.1.3/node_modules/csstype/index.d.ts","../../node_modules/.pnpm/@vue+runtime-dom@3.4.13/node_modules/@vue/runtime-dom/dist/runtime-dom.d.ts","../../node_modules/.pnpm/vue@3.4.13_typescript@5.3.3/node_modules/vue/jsx-runtime/index.d.ts","../../node_modules/.pnpm/@babel+types@7.23.6/node_modules/@babel/types/lib/index.d.ts","../../node_modules/.pnpm/@babel+parser@7.23.6/node_modules/@babel/parser/typings/babel-parser.d.ts","../../node_modules/.pnpm/source-map-js@1.0.2/node_modules/source-map-js/source-map.d.ts","../../node_modules/.pnpm/@vue+compiler-core@3.4.13/node_modules/@vue/compiler-core/dist/compiler-core.d.ts","../../node_modules/.pnpm/@vue+compiler-dom@3.4.13/node_modules/@vue/compiler-dom/dist/compiler-dom.d.ts","../../node_modules/.pnpm/vue@3.4.13_typescript@5.3.3/node_modules/vue/dist/vue.d.mts","./src/types.ts","../button/src/types.ts","../../node_modules/.pnpm/@fortawesome+fontawesome-common-types@6.5.1/node_modules/@fortawesome/fontawesome-common-types/index.d.ts","../../node_modules/.pnpm/@fortawesome+fontawesome-svg-core@6.5.1/node_modules/@fortawesome/fontawesome-svg-core/index.d.ts","../../node_modules/.pnpm/@fortawesome+fontawesome-common-types@6.5.2/node_modules/@fortawesome/fontawesome-common-types/index.d.ts","../../node_modules/.pnpm/@awesome.me+kit-8137893ad3@1.0.74/node_modules/@awesome.me/kit-8137893ad3/icons/modules/icon-types.ts","../../node_modules/.pnpm/@awesome.me+kit-8137893ad3@1.0.74/node_modules/@awesome.me/kit-8137893ad3/icons/modules/index.d.ts","../../node_modules/.pnpm/@fortawesome+vue-fontawesome@3.0.6_@fortawesome+fontawesome-svg-core@6.5.1_vue@3.4.13_typescript@5.3.3_/node_modules/@fortawesome/vue-fontawesome/index.d.ts","../icons/src/types.ts","../icons/src/fzicon.vue.ts","../icons/src/index.ts","../button/src/utils.ts","../button/src/fzbutton.vue.ts","../button/src/fziconbutton.vue.ts","../button/src/fzbuttongroup.vue.ts","../button/src/index.ts","./src/fzcard.vue.ts","./__vls_types.d.ts","./dist/src/types.d.ts","./dist/src/fzcard.vue.d.ts","./dist/src/index.d.ts","./dist/index.d.ts","./dist/src/__test__/fzcard.test.d.ts","./src/index.ts","../../node_modules/.pnpm/@vue+test-utils@2.4.3_@vue+server-renderer@3.4.13_vue@3.4.13_typescript@5.3.3___vue@3.4.13_typescript@5.3.3_/node_modules/@vue/test-utils/dist/constants/dom-events.d.ts","../../node_modules/.pnpm/@vue+test-utils@2.4.3_@vue+server-renderer@3.4.13_vue@3.4.13_typescript@5.3.3___vue@3.4.13_typescript@5.3.3_/node_modules/@vue/test-utils/dist/createdomevent.d.ts","../../node_modules/.pnpm/@vue+test-utils@2.4.3_@vue+server-renderer@3.4.13_vue@3.4.13_typescript@5.3.3___vue@3.4.13_typescript@5.3.3_/node_modules/@vue/test-utils/dist/types.d.ts","../../node_modules/.pnpm/@vue+test-utils@2.4.3_@vue+server-renderer@3.4.13_vue@3.4.13_typescript@5.3.3___vue@3.4.13_typescript@5.3.3_/node_modules/@vue/test-utils/dist/vuewrapper.d.ts","../../node_modules/.pnpm/@vue+test-utils@2.4.3_@vue+server-renderer@3.4.13_vue@3.4.13_typescript@5.3.3___vue@3.4.13_typescript@5.3.3_/node_modules/@vue/test-utils/dist/interfaces/wrapperlike.d.ts","../../node_modules/.pnpm/@vue+test-utils@2.4.3_@vue+server-renderer@3.4.13_vue@3.4.13_typescript@5.3.3___vue@3.4.13_typescript@5.3.3_/node_modules/@vue/test-utils/dist/basewrapper.d.ts","../../node_modules/.pnpm/@vue+test-utils@2.4.3_@vue+server-renderer@3.4.13_vue@3.4.13_typescript@5.3.3___vue@3.4.13_typescript@5.3.3_/node_modules/@vue/test-utils/dist/domwrapper.d.ts","../../node_modules/.pnpm/vue-component-type-helpers@1.8.27/node_modules/vue-component-type-helpers/index.d.ts","../../node_modules/.pnpm/@vue+test-utils@2.4.3_@vue+server-renderer@3.4.13_vue@3.4.13_typescript@5.3.3___vue@3.4.13_typescript@5.3.3_/node_modules/@vue/test-utils/dist/mount.d.ts","../../node_modules/.pnpm/@vue+test-utils@2.4.3_@vue+server-renderer@3.4.13_vue@3.4.13_typescript@5.3.3___vue@3.4.13_typescript@5.3.3_/node_modules/@vue/test-utils/dist/rendertostring.d.ts","../../node_modules/.pnpm/@vue+test-utils@2.4.3_@vue+server-renderer@3.4.13_vue@3.4.13_typescript@5.3.3___vue@3.4.13_typescript@5.3.3_/node_modules/@vue/test-utils/dist/components/routerlinkstub.d.ts","../../node_modules/.pnpm/@vue+test-utils@2.4.3_@vue+server-renderer@3.4.13_vue@3.4.13_typescript@5.3.3___vue@3.4.13_typescript@5.3.3_/node_modules/@vue/test-utils/dist/errorwrapper.d.ts","../../node_modules/.pnpm/@vue+test-utils@2.4.3_@vue+server-renderer@3.4.13_vue@3.4.13_typescript@5.3.3___vue@3.4.13_typescript@5.3.3_/node_modules/@vue/test-utils/dist/vnodetransformers/util.d.ts","../../node_modules/.pnpm/@vue+test-utils@2.4.3_@vue+server-renderer@3.4.13_vue@3.4.13_typescript@5.3.3___vue@3.4.13_typescript@5.3.3_/node_modules/@vue/test-utils/dist/vnodetransformers/stubcomponentstransformer.d.ts","../../node_modules/.pnpm/@vue+test-utils@2.4.3_@vue+server-renderer@3.4.13_vue@3.4.13_typescript@5.3.3___vue@3.4.13_typescript@5.3.3_/node_modules/@vue/test-utils/dist/config.d.ts","../../node_modules/.pnpm/@vue+test-utils@2.4.3_@vue+server-renderer@3.4.13_vue@3.4.13_typescript@5.3.3___vue@3.4.13_typescript@5.3.3_/node_modules/@vue/test-utils/dist/utils/flushpromises.d.ts","../../node_modules/.pnpm/@vue+test-utils@2.4.3_@vue+server-renderer@3.4.13_vue@3.4.13_typescript@5.3.3___vue@3.4.13_typescript@5.3.3_/node_modules/@vue/test-utils/dist/utils/autounmount.d.ts","../../node_modules/.pnpm/@vue+test-utils@2.4.3_@vue+server-renderer@3.4.13_vue@3.4.13_typescript@5.3.3___vue@3.4.13_typescript@5.3.3_/node_modules/@vue/test-utils/dist/index.d.ts","../../node_modules/.pnpm/@vitest+utils@1.2.0/node_modules/@vitest/utils/dist/types.d.ts","../../node_modules/.pnpm/@vitest+utils@1.2.0/node_modules/@vitest/utils/dist/helpers.d.ts","../../node_modules/.pnpm/@sinclair+typebox@0.27.8/node_modules/@sinclair/typebox/typebox.d.ts","../../node_modules/.pnpm/@jest+schemas@29.6.3/node_modules/@jest/schemas/build/index.d.ts","../../node_modules/.pnpm/pretty-format@29.7.0/node_modules/pretty-format/build/index.d.ts","../../node_modules/.pnpm/@vitest+utils@1.2.0/node_modules/@vitest/utils/dist/index.d.ts","../../node_modules/.pnpm/@vitest+runner@1.2.0/node_modules/@vitest/runner/dist/tasks-rsxe_qlo.d.ts","../../node_modules/.pnpm/@vitest+utils@1.2.0/node_modules/@vitest/utils/dist/types-widbdqe5.d.ts","../../node_modules/.pnpm/@vitest+utils@1.2.0/node_modules/@vitest/utils/dist/diff.d.ts","../../node_modules/.pnpm/@vitest+runner@1.2.0/node_modules/@vitest/runner/dist/types.d.ts","../../node_modules/.pnpm/@vitest+utils@1.2.0/node_modules/@vitest/utils/dist/error.d.ts","../../node_modules/.pnpm/@vitest+runner@1.2.0/node_modules/@vitest/runner/dist/index.d.ts","../../node_modules/.pnpm/@vitest+runner@1.2.0/node_modules/@vitest/runner/dist/utils.d.ts","../../node_modules/.pnpm/@types+node@18.19.7/node_modules/@types/node/assert.d.ts","../../node_modules/.pnpm/@types+node@18.19.7/node_modules/@types/node/assert/strict.d.ts","../../node_modules/.pnpm/buffer@5.7.1/node_modules/buffer/index.d.ts","../../node_modules/.pnpm/undici-types@5.26.5/node_modules/undici-types/header.d.ts","../../node_modules/.pnpm/undici-types@5.26.5/node_modules/undici-types/readable.d.ts","../../node_modules/.pnpm/undici-types@5.26.5/node_modules/undici-types/file.d.ts","../../node_modules/.pnpm/undici-types@5.26.5/node_modules/undici-types/fetch.d.ts","../../node_modules/.pnpm/undici-types@5.26.5/node_modules/undici-types/formdata.d.ts","../../node_modules/.pnpm/undici-types@5.26.5/node_modules/undici-types/connector.d.ts","../../node_modules/.pnpm/undici-types@5.26.5/node_modules/undici-types/client.d.ts","../../node_modules/.pnpm/undici-types@5.26.5/node_modules/undici-types/errors.d.ts","../../node_modules/.pnpm/undici-types@5.26.5/node_modules/undici-types/dispatcher.d.ts","../../node_modules/.pnpm/undici-types@5.26.5/node_modules/undici-types/global-dispatcher.d.ts","../../node_modules/.pnpm/undici-types@5.26.5/node_modules/undici-types/global-origin.d.ts","../../node_modules/.pnpm/undici-types@5.26.5/node_modules/undici-types/pool-stats.d.ts","../../node_modules/.pnpm/undici-types@5.26.5/node_modules/undici-types/pool.d.ts","../../node_modules/.pnpm/undici-types@5.26.5/node_modules/undici-types/handlers.d.ts","../../node_modules/.pnpm/undici-types@5.26.5/node_modules/undici-types/balanced-pool.d.ts","../../node_modules/.pnpm/undici-types@5.26.5/node_modules/undici-types/agent.d.ts","../../node_modules/.pnpm/undici-types@5.26.5/node_modules/undici-types/mock-interceptor.d.ts","../../node_modules/.pnpm/undici-types@5.26.5/node_modules/undici-types/mock-agent.d.ts","../../node_modules/.pnpm/undici-types@5.26.5/node_modules/undici-types/mock-client.d.ts","../../node_modules/.pnpm/undici-types@5.26.5/node_modules/undici-types/mock-pool.d.ts","../../node_modules/.pnpm/undici-types@5.26.5/node_modules/undici-types/mock-errors.d.ts","../../node_modules/.pnpm/undici-types@5.26.5/node_modules/undici-types/proxy-agent.d.ts","../../node_modules/.pnpm/undici-types@5.26.5/node_modules/undici-types/api.d.ts","../../node_modules/.pnpm/undici-types@5.26.5/node_modules/undici-types/cookies.d.ts","../../node_modules/.pnpm/undici-types@5.26.5/node_modules/undici-types/patch.d.ts","../../node_modules/.pnpm/undici-types@5.26.5/node_modules/undici-types/filereader.d.ts","../../node_modules/.pnpm/undici-types@5.26.5/node_modules/undici-types/diagnostics-channel.d.ts","../../node_modules/.pnpm/undici-types@5.26.5/node_modules/undici-types/websocket.d.ts","../../node_modules/.pnpm/undici-types@5.26.5/node_modules/undici-types/content-type.d.ts","../../node_modules/.pnpm/undici-types@5.26.5/node_modules/undici-types/cache.d.ts","../../node_modules/.pnpm/undici-types@5.26.5/node_modules/undici-types/interceptors.d.ts","../../node_modules/.pnpm/undici-types@5.26.5/node_modules/undici-types/index.d.ts","../../node_modules/.pnpm/@types+node@18.19.7/node_modules/@types/node/globals.d.ts","../../node_modules/.pnpm/@types+node@18.19.7/node_modules/@types/node/async_hooks.d.ts","../../node_modules/.pnpm/@types+node@18.19.7/node_modules/@types/node/buffer.d.ts","../../node_modules/.pnpm/@types+node@18.19.7/node_modules/@types/node/child_process.d.ts","../../node_modules/.pnpm/@types+node@18.19.7/node_modules/@types/node/cluster.d.ts","../../node_modules/.pnpm/@types+node@18.19.7/node_modules/@types/node/console.d.ts","../../node_modules/.pnpm/@types+node@18.19.7/node_modules/@types/node/constants.d.ts","../../node_modules/.pnpm/@types+node@18.19.7/node_modules/@types/node/crypto.d.ts","../../node_modules/.pnpm/@types+node@18.19.7/node_modules/@types/node/dgram.d.ts","../../node_modules/.pnpm/@types+node@18.19.7/node_modules/@types/node/diagnostics_channel.d.ts","../../node_modules/.pnpm/@types+node@18.19.7/node_modules/@types/node/dns.d.ts","../../node_modules/.pnpm/@types+node@18.19.7/node_modules/@types/node/dns/promises.d.ts","../../node_modules/.pnpm/@types+node@18.19.7/node_modules/@types/node/domain.d.ts","../../node_modules/.pnpm/@types+node@18.19.7/node_modules/@types/node/dom-events.d.ts","../../node_modules/.pnpm/@types+node@18.19.7/node_modules/@types/node/events.d.ts","../../node_modules/.pnpm/@types+node@18.19.7/node_modules/@types/node/fs.d.ts","../../node_modules/.pnpm/@types+node@18.19.7/node_modules/@types/node/fs/promises.d.ts","../../node_modules/.pnpm/@types+node@18.19.7/node_modules/@types/node/http.d.ts","../../node_modules/.pnpm/@types+node@18.19.7/node_modules/@types/node/http2.d.ts","../../node_modules/.pnpm/@types+node@18.19.7/node_modules/@types/node/https.d.ts","../../node_modules/.pnpm/@types+node@18.19.7/node_modules/@types/node/inspector.d.ts","../../node_modules/.pnpm/@types+node@18.19.7/node_modules/@types/node/module.d.ts","../../node_modules/.pnpm/@types+node@18.19.7/node_modules/@types/node/net.d.ts","../../node_modules/.pnpm/@types+node@18.19.7/node_modules/@types/node/os.d.ts","../../node_modules/.pnpm/@types+node@18.19.7/node_modules/@types/node/path.d.ts","../../node_modules/.pnpm/@types+node@18.19.7/node_modules/@types/node/perf_hooks.d.ts","../../node_modules/.pnpm/@types+node@18.19.7/node_modules/@types/node/process.d.ts","../../node_modules/.pnpm/@types+node@18.19.7/node_modules/@types/node/punycode.d.ts","../../node_modules/.pnpm/@types+node@18.19.7/node_modules/@types/node/querystring.d.ts","../../node_modules/.pnpm/@types+node@18.19.7/node_modules/@types/node/readline.d.ts","../../node_modules/.pnpm/@types+node@18.19.7/node_modules/@types/node/readline/promises.d.ts","../../node_modules/.pnpm/@types+node@18.19.7/node_modules/@types/node/repl.d.ts","../../node_modules/.pnpm/@types+node@18.19.7/node_modules/@types/node/stream.d.ts","../../node_modules/.pnpm/@types+node@18.19.7/node_modules/@types/node/stream/promises.d.ts","../../node_modules/.pnpm/@types+node@18.19.7/node_modules/@types/node/stream/consumers.d.ts","../../node_modules/.pnpm/@types+node@18.19.7/node_modules/@types/node/stream/web.d.ts","../../node_modules/.pnpm/@types+node@18.19.7/node_modules/@types/node/string_decoder.d.ts","../../node_modules/.pnpm/@types+node@18.19.7/node_modules/@types/node/test.d.ts","../../node_modules/.pnpm/@types+node@18.19.7/node_modules/@types/node/timers.d.ts","../../node_modules/.pnpm/@types+node@18.19.7/node_modules/@types/node/timers/promises.d.ts","../../node_modules/.pnpm/@types+node@18.19.7/node_modules/@types/node/tls.d.ts","../../node_modules/.pnpm/@types+node@18.19.7/node_modules/@types/node/trace_events.d.ts","../../node_modules/.pnpm/@types+node@18.19.7/node_modules/@types/node/tty.d.ts","../../node_modules/.pnpm/@types+node@18.19.7/node_modules/@types/node/url.d.ts","../../node_modules/.pnpm/@types+node@18.19.7/node_modules/@types/node/util.d.ts","../../node_modules/.pnpm/@types+node@18.19.7/node_modules/@types/node/v8.d.ts","../../node_modules/.pnpm/@types+node@18.19.7/node_modules/@types/node/vm.d.ts","../../node_modules/.pnpm/@types+node@18.19.7/node_modules/@types/node/wasi.d.ts","../../node_modules/.pnpm/@types+node@18.19.7/node_modules/@types/node/worker_threads.d.ts","../../node_modules/.pnpm/@types+node@18.19.7/node_modules/@types/node/zlib.d.ts","../../node_modules/.pnpm/@types+node@18.19.7/node_modules/@types/node/globals.global.d.ts","../../node_modules/.pnpm/@types+node@18.19.7/node_modules/@types/node/index.d.ts","../../node_modules/.pnpm/@types+estree@1.0.5/node_modules/@types/estree/index.d.ts","../../node_modules/.pnpm/rollup@4.9.5/node_modules/rollup/dist/rollup.d.ts","../../node_modules/.pnpm/rollup@4.9.5/node_modules/rollup/dist/parseast.d.ts","../../node_modules/.pnpm/vite@5.0.11_@types+node@18.19.7/node_modules/vite/types/hmrpayload.d.ts","../../node_modules/.pnpm/vite@5.0.11_@types+node@18.19.7/node_modules/vite/types/customevent.d.ts","../../node_modules/.pnpm/esbuild@0.19.11/node_modules/esbuild/lib/main.d.ts","../../node_modules/.pnpm/postcss@8.4.33/node_modules/postcss/lib/previous-map.d.ts","../../node_modules/.pnpm/postcss@8.4.33/node_modules/postcss/lib/input.d.ts","../../node_modules/.pnpm/postcss@8.4.33/node_modules/postcss/lib/css-syntax-error.d.ts","../../node_modules/.pnpm/postcss@8.4.33/node_modules/postcss/lib/declaration.d.ts","../../node_modules/.pnpm/postcss@8.4.33/node_modules/postcss/lib/root.d.ts","../../node_modules/.pnpm/postcss@8.4.33/node_modules/postcss/lib/warning.d.ts","../../node_modules/.pnpm/postcss@8.4.33/node_modules/postcss/lib/lazy-result.d.ts","../../node_modules/.pnpm/postcss@8.4.33/node_modules/postcss/lib/no-work-result.d.ts","../../node_modules/.pnpm/postcss@8.4.33/node_modules/postcss/lib/processor.d.ts","../../node_modules/.pnpm/postcss@8.4.33/node_modules/postcss/lib/result.d.ts","../../node_modules/.pnpm/postcss@8.4.33/node_modules/postcss/lib/document.d.ts","../../node_modules/.pnpm/postcss@8.4.33/node_modules/postcss/lib/rule.d.ts","../../node_modules/.pnpm/postcss@8.4.33/node_modules/postcss/lib/node.d.ts","../../node_modules/.pnpm/postcss@8.4.33/node_modules/postcss/lib/comment.d.ts","../../node_modules/.pnpm/postcss@8.4.33/node_modules/postcss/lib/container.d.ts","../../node_modules/.pnpm/postcss@8.4.33/node_modules/postcss/lib/at-rule.d.ts","../../node_modules/.pnpm/postcss@8.4.33/node_modules/postcss/lib/list.d.ts","../../node_modules/.pnpm/postcss@8.4.33/node_modules/postcss/lib/postcss.d.ts","../../node_modules/.pnpm/postcss@8.4.33/node_modules/postcss/lib/postcss.d.mts","../../node_modules/.pnpm/vite@5.0.11_@types+node@18.19.7/node_modules/vite/types/importglob.d.ts","../../node_modules/.pnpm/vite@5.0.11_@types+node@18.19.7/node_modules/vite/types/metadata.d.ts","../../node_modules/.pnpm/vite@5.0.11_@types+node@18.19.7/node_modules/vite/dist/node/index.d.ts","../../node_modules/.pnpm/vite-node@1.2.0_@types+node@18.19.7/node_modules/vite-node/dist/trace-mapping.d-aa9jxpth.d.ts","../../node_modules/.pnpm/vite-node@1.2.0_@types+node@18.19.7/node_modules/vite-node/dist/index-ieujlejc.d.ts","../../node_modules/.pnpm/vite-node@1.2.0_@types+node@18.19.7/node_modules/vite-node/dist/index.d.ts","../../node_modules/.pnpm/@vitest+snapshot@1.2.0/node_modules/@vitest/snapshot/dist/environment-1emuyggi.d.ts","../../node_modules/.pnpm/@vitest+snapshot@1.2.0/node_modules/@vitest/snapshot/dist/index-k5cwkijb.d.ts","../../node_modules/.pnpm/@vitest+snapshot@1.2.0/node_modules/@vitest/snapshot/dist/index.d.ts","../../node_modules/.pnpm/@vitest+expect@1.2.0/node_modules/@vitest/expect/dist/chai.d.cts","../../node_modules/.pnpm/@vitest+expect@1.2.0/node_modules/@vitest/expect/dist/index.d.ts","../../node_modules/.pnpm/@vitest+expect@1.2.0/node_modules/@vitest/expect/index.d.ts","../../node_modules/.pnpm/tinybench@2.5.1/node_modules/tinybench/dist/index.d.ts","../../node_modules/.pnpm/vite-node@1.2.0_@types+node@18.19.7/node_modules/vite-node/dist/client.d.ts","../../node_modules/.pnpm/@vitest+snapshot@1.2.0/node_modules/@vitest/snapshot/dist/manager.d.ts","../../node_modules/.pnpm/vite-node@1.2.0_@types+node@18.19.7/node_modules/vite-node/dist/server.d.ts","../../node_modules/.pnpm/vitest@1.2.0_@types+node@18.19.7_jsdom@23.2.0/node_modules/vitest/dist/reporters-trlzlobr.d.ts","../../node_modules/.pnpm/vitest@1.2.0_@types+node@18.19.7_jsdom@23.2.0/node_modules/vitest/dist/suite-6pt_ep5v.d.ts","../../node_modules/.pnpm/@vitest+spy@1.2.0/node_modules/@vitest/spy/dist/index.d.ts","../../node_modules/.pnpm/@vitest+snapshot@1.2.0/node_modules/@vitest/snapshot/dist/environment.d.ts","../../node_modules/.pnpm/vitest@1.2.0_@types+node@18.19.7_jsdom@23.2.0/node_modules/vitest/dist/config.d.ts","../../node_modules/.pnpm/vitest@1.2.0_@types+node@18.19.7_jsdom@23.2.0/node_modules/vitest/dist/index.d.ts","./src/__test__/fzcard.test.ts","./dist/src/fztabname.vue.d.ts","../button/src/fzbutton.vue","../../node_modules/.pnpm/@awesome.me+kit-8137893ad3@1.0.65/node_modules/@awesome.me/kit-8137893ad3/icons/modules/index.d.ts","../button/src/fziconbutton.vue"],"fileInfos":[{"version":"0","affectsGlobalScope":true},"0","0","0","0","0","0",{"version":"0","affectsGlobalScope":true},{"version":"0","affectsGlobalScope":true},{"version":"0","affectsGlobalScope":true},{"version":"0","affectsGlobalScope":true},{"version":"0","affectsGlobalScope":true},{"version":"0","affectsGlobalScope":true},{"version":"0","affectsGlobalScope":true},{"version":"0","affectsGlobalScope":true},{"version":"0","affectsGlobalScope":true},{"version":"0","affectsGlobalScope":true},{"version":"0","affectsGlobalScope":true},{"version":"0","affectsGlobalScope":true},{"version":"0","affectsGlobalScope":true},{"version":"0","affectsGlobalScope":true},{"version":"0","affectsGlobalScope":true},{"version":"0","affectsGlobalScope":true},{"version":"0","affectsGlobalScope":true},{"version":"0","affectsGlobalScope":true},{"version":"0","affectsGlobalScope":true},{"version":"0","affectsGlobalScope":true},{"version":"0","affectsGlobalScope":true},{"version":"0","affectsGlobalScope":true},{"version":"0","affectsGlobalScope":true},{"version":"0","affectsGlobalScope":true},{"version":"0","affectsGlobalScope":true},{"version":"0","affectsGlobalScope":true},{"version":"0","affectsGlobalScope":true},{"version":"0","affectsGlobalScope":true},{"version":"0","affectsGlobalScope":true},{"version":"0","affectsGlobalScope":true},{"version":"0","affectsGlobalScope":true},{"version":"0","affectsGlobalScope":true},{"version":"0","affectsGlobalScope":true},{"version":"0","affectsGlobalScope":true},{"version":"0","affectsGlobalScope":true},{"version":"0","affectsGlobalScope":true},{"version":"0","affectsGlobalScope":true},{"version":"0","affectsGlobalScope":true},{"version":"0","affectsGlobalScope":true},"0","0",{"version":"0","affectsGlobalScope":true},"0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0",{"version":"0","affectsGlobalScope":true},"0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0",{"version":"0","affectsGlobalScope":true},"0",{"version":"0","affectsGlobalScope":true},"0","0",{"version":"0","affectsGlobalScope":true},"0","0","0","0","0","0","0",{"version":"0","affectsGlobalScope":true},{"version":"0","affectsGlobalScope":true},"0","0","0","0","0","0",{"version":"0","affectsGlobalScope":true},"0","0","0",{"version":"0","affectsGlobalScope":true},{"version":"0","affectsGlobalScope":true},"0","0","0","0","0","0","0","0","0","0",{"version":"0","affectsGlobalScope":true},{"version":"0","affectsGlobalScope":true},"0","0","0","0",{"version":"0","affectsGlobalScope":true},{"version":"0","affectsGlobalScope":true},"0","0","0",{"version":"0","affectsGlobalScope":true},"0",{"version":"0","affectsGlobalScope":true},"0","0",{"version":"0","affectsGlobalScope":true},"0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0",{"version":"0","affectsGlobalScope":true},{"version":"0","affectsGlobalScope":true},"0","0","0","0","0",{"version":"0","affectsGlobalScope":true},"0","0","0","0","0","0"],"root":[59,[75,82],248],"options":{"composite":true,"esModuleInterop":true,"jsx":1,"jsxImportSource":"vue","module":99,"noImplicitThis":true,"skipLibCheck":true,"strict":true,"target":99,"useDefineForClassFields":true},"fileIdsList":[[52,62,63,64],[63,64],[53],[61],[58,62,64],[103],[114],[150],[151,156,184],[152,163,164,171,181,192],[152,153,163,171],[154,193],[155,156,164,172],[156,181,189],[157,159,163,171],[150,158],[159,160],[163],[161,163],[150,163],[163,164,165,181,192],[163,164,165,178,181,184],[148,197],[159,163,166,171,181,192],[163,164,166,167,171,181,189,192],[166,168,181,189,192],[114,115,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199],[163,169],[170,192,197],[159,163,171,181],[172],[173],[150,174],[175,191,197],[176],[177],[163,178,179],[178,180,193,195],[151,163,181,182,183,184],[151,181,183],[181,182],[184],[185],[150,181],[163,187,188],[187,188],[156,171,181,189],[190],[171,191],[151,166,177,192],[156,193],[181,194],[170,195],[196],[151,156,163,165,174,181,192,195,197],[181,198],[106,109],[236],[106,107,109,110,111],[106],[106,107,109],[106,107],[232],[105,232],[105,232,233],[105,108],[101],[101,102,105],[105],[47,53,54,55],[56],[47],[47,48,49,51],[48,49,50],[58,83,84,85,86,87,89],[58],[85,86,89,96],[83],[58,85,88],[85,86,88,89,91,92,93,94,97,98,99],[58,83,84,85,86,89],[58,85,86,90],[58,85,91],[58,86],[58,95],[58,85,88,89],[221],[219,221],[210,218,219,220,222],[208],[211,216,221,224],[207,224],[211,212,215,216,217,224],[211,212,213,215,216,224],[208,209,210,211,212,216,217,218,220,221,222,224],[224],[55,208,209,210,211,212,213,215,216,217,218,219,220,221,222,223],[55,224],[211,213,214,216,217,224],[215,224],[216,217,221,224],[209,219],[104],[202,227],[201],[55],[125,129,192],[125,181,192],[120],[122,125,189,192],[171,189],[200],[120,200],[122,125,171,192],[117,118,121,124,151,163,181,192],[117,123],[121,125,151,184,192,200],[151,200],[141,151,200],[119,120,200],[125],[119,120,121,122,123,124,125,126,127,129,130,131,132,133,134,135,136,137,138,139,140,142,143,144,145,146,147],[125,132,133],[123,125,133,134],[124],[117,120,125],[125,129,133,134],[129],[123,125,128,192],[117,122,123,125,129,132],[151,181],[120,125,141,151,197,200],[229,230],[229],[228,229,230,242],[163,164,166,167,168,171,181,189,192,198,200,202,203,204,205,206,225,226,227],[204],[202],[106,112,113,164,197,228,231,234,235,237,238,239,240,241,242],[106,109,112,113,164,197,228,231,234,235,237,238,239,240,241,242,243,244,245,246],[112,113,238,242],[51,57],[51],[52,58,60,69,70],[52,58,60],[52,58,60,69,70,71],[52,60,71,72,73],[52],[52,60,69],[52,58],[79],[58,77],[77,78],[52,75,100,247],[52,58,59,74],[52,59,75],[52,58,65,66,67],[52,58,62,64,65,67,68],[239,245],[61,239,245],[58,62,239,245,249],[89,90,92,93,95,96,97,98,101,102,103,239,245],[58,90,239,245],[155,160,167,169,178,185,196,199,201,239,245],[110,111,113,239,245],[109,112,239,245],[124,239,245],[129,239,245],[123,124,125,126,127,128,129,130,131,133,134,135,136,137,138,139,140,141,142,143,144,146,147,148,149,150,151,239,245],[152,201,239,245],[154,239,245],[155,160,188,239,245],[156,167,168,175,185,196,239,245],[156,157,167,175,239,245],[158,197,239,245],[159,160,168,176,239,245],[160,185,193,239,245],[154,162,239,245],[161,163,167,175,239,245],[163,164,239,245],[165,167,239,245],[204,239,245],[174,199,239,245],[167,239,245],[154,167,239,245],[167,168,169,185,196,239,245],[200,239,245],[167,168,169,182,185,188,239,245],[163,167,170,175,185,196,239,245],[167,168,170,171,175,185,193,196,239,245],[170,172,185,193,196,239,245],[167,173,239,245],[174,196,201,239,245],[163,167,175,185,239,245],[176,239,245],[177,239,245],[154,178,239,245],[179,195,201,239,245],[180,239,245],[181,239,245],[167,182,183,239,245],[182,184,197,199,239,245],[155,167,185,186,187,188,239,245],[185,186,239,245],[155,185,187,239,245],[188,239,245],[189,239,245],[154,185,239,245],[167,191,192,239,245],[191,192,239,245],[160,175,185,193,239,245],[194,239,245],[175,195,239,245],[155,170,181,196,239,245],[160,197,239,245],[185,198,239,245],[233,234,239,245],[109,236,239,245],[109,239,245],[105,106,109,239,245],[167,168,170,171,172,175,185,193,196,202,204,206,207,208,209,210,229,230,231,239,245],[239],[233,239,245],[110,113,239,245],[232,233,234,239,245,246],[108,239,245],[110,239,245],[105,239,245],[107,239,245],[89,90,93,100,239,245],[87,239,245],[58,89,92,239,245],[58,239,245],[238,244],[58,99,239,245],[58,87,88,89,90,93,239,245],[58,87,88,89,90,91,93,239,245],[239,245,250],[58,89,95,239,245],[58,89,90,94,239,245],[110,111,113,114,115,239,245],[205,239,245],[225,239,245],[219,228,239,245],[215,220,225,228,239,245],[208,239,245],[215,216,219,220,221,228,239,245],[212,239,245],[212,213,214,215,216,220,221,222,224,225,226,228,239,245],[223,225,239,245],[215,217,218,220,221,228,239,245],[214,222,223,224,226,239,245],[206,231,239,245],[220,221,225,228,239,245],[213,223,239,245],[55,228,239,245],[215,216,217,219,220,228,239,245],[211,228,239,245],[185,202,239,245],[109,236,237,239,245],[133,239,245],[127,129,137,138,239,245],[145,155,204,239,245],[155,204,239,245],[155,185,239,245],[129,133,137,138,239,245],[129,185,196,239,245],[123,124,204,239,245],[125,129,155,188,196,204,239,245],[118,239,245],[121,126,127,129,133,136,239,245],[175,193,239,245],[126,129,193,196,239,245],[110,111,239,245],[124,129,145,155,201,204,239,245],[126,129,175,196,239,245],[129,133,196,239,245],[121,124,129,239,245],[127,129,132,196,239,245],[128,239,245],[121,127,239,245],[121,122,125,128,155,167,185,196,239,245],[129,136,137,239,245],[124,204,239,245],[245],[206,239,245],[239,240,245],[228,239,245],[55,212,213,214,215,216,217,219,220,221,222,223,224,225,226,227,239,245],[118,119,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,239,245],[110,116,117,168,201,232,235,238,239,241,242,243,244,245,246,251],[116,117,239,242,245,246],[58,89,92,93,239,245],[52,60,252],[78,79],[80],[58,78],[52,239,245],[52,58,62,67,239,245,249]],"referencedMap":[[64,1],[65,2],[54,3],[62,4],[66,5],[104,6],[114,7],[115,7],[150,8],[151,9],[152,10],[153,11],[154,12],[155,13],[156,14],[157,15],[158,16],[159,17],[160,17],[162,18],[161,19],[163,20],[164,21],[165,22],[149,23],[166,24],[167,25],[168,26],[200,27],[169,28],[170,29],[171,30],[172,31],[173,32],[174,33],[175,34],[176,35],[177,36],[178,37],[179,37],[180,38],[181,39],[183,40],[182,41],[184,42],[185,43],[186,44],[187,45],[188,46],[189,47],[190,48],[191,49],[192,50],[193,51],[194,52],[195,53],[196,54],[197,55],[198,56],[236,57],[237,58],[112,59],[107,60],[110,61],[113,62],[245,63],[233,64],[234,65],[240,65],[109,66],[111,66],[102,67],[106,68],[108,69],[56,70],[57,71],[48,72],[49,73],[51,74],[88,75],[93,76],[97,77],[84,78],[89,79],[100,80],[87,81],[91,82],[92,83],[85,76],[99,84],[96,85],[95,76],[86,86],[222,87],[220,88],[221,89],[209,90],[210,88],[217,91],[208,92],[213,93],[214,94],[219,95],[225,96],[224,97],[207,98],[215,99],[216,100],[211,101],[218,87],[212,102],[105,103],[203,104],[202,105],[55,106],[132,107],[139,108],[131,107],[146,109],[123,110],[122,111],[145,112],[140,113],[143,114],[125,115],[124,116],[120,117],[119,118],[142,119],[121,120],[126,121],[130,121],[148,122],[147,121],[134,123],[135,124],[137,125],[133,126],[136,127],[141,112],[128,128],[129,129],[138,130],[118,131],[144,132],[239,133],[230,134],[231,133],[241,135],[228,136],[205,137],[227,138],[246,139],[247,140],[242,139],[243,141],[58,142],[52,143],[71,144],[73,145],[72,146],[74,147],[60,148],[70,149],[76,150],[80,151],[78,152],[79,153],[248,154],[75,155],[82,156],[59,148],[68,157],[69,158],[67,148]],"exportedModulesMap":[[64,1],[65,2],[54,3],[61,159],[63,159],[62,160],[66,161],[104,162],[103,163],[201,164],[114,165],[115,166],[150,167],[151,168],[152,169],[153,170],[154,171],[155,172],[156,173],[157,174],[158,175],[159,176],[160,177],[162,178],[161,179],[163,180],[164,180],[165,181],[149,182],[199,183],[166,184],[167,185],[168,186],[200,187],[169,188],[170,189],[171,190],[172,191],[173,192],[174,193],[175,194],[176,195],[177,196],[178,197],[179,198],[180,199],[181,200],[183,201],[182,201],[184,202],[185,203],[186,204],[187,205],[188,206],[189,207],[190,208],[191,209],[192,210],[193,211],[194,212],[195,213],[196,214],[197,215],[198,216],[235,217],[236,159],[237,218],[112,219],[107,159],[110,220],[113,166],[232,221],[245,222],[233,159],[234,223],[240,224],[244,225],[109,226],[111,227],[102,159],[106,228],[108,229],[101,230],[56,70],[57,71],[48,72],[49,73],[51,74],[88,231],[93,232],[97,233],[83,150],[84,234],[89,233],[94,159],[100,235],[87,159],[91,236],[92,237],[85,238],[99,233],[98,159],[96,239],[95,240],[86,150],[116,241],[206,242],[222,243],[220,244],[221,245],[209,246],[210,159],[217,247],[208,159],[213,248],[223,249],[214,250],[219,251],[225,252],[224,250],[207,253],[215,254],[216,255],[211,256],[218,257],[212,258],[105,159],[203,159],[202,259],[55,106],[238,260],[44,159],[132,261],[139,262],[131,159],[146,263],[123,264],[122,265],[145,182],[140,266],[143,267],[125,268],[124,269],[120,159],[119,270],[142,271],[121,159],[126,272],[127,273],[130,168],[117,274],[148,275],[147,276],[134,168],[135,277],[137,278],[133,279],[136,277],[141,280],[128,281],[129,282],[138,283],[118,270],[144,284],[239,285],[230,159],[231,286],[241,287],[229,288],[228,289],[205,159],[204,290],[226,243],[227,159],[246,291],[247,292],[242,159],[243,217],[90,293],[58,142],[52,143],[71,144],[73,145],[72,146],[74,294],[60,148],[70,149],[76,150],[80,295],[81,296],[79,297],[77,150],[248,159],[75,155],[59,298],[68,157],[69,299],[67,298]],"semanticDiagnosticsPerFile":[64,65,54,53,61,63,62,66,104,103,201,114,115,150,151,152,153,154,155,156,157,158,159,160,162,161,163,164,165,149,199,166,167,168,200,169,170,171,172,173,174,175,176,177,178,179,180,181,183,182,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,235,236,237,112,107,110,113,232,245,233,234,240,244,109,111,102,106,108,101,56,57,48,49,51,47,88,93,97,83,84,89,94,100,87,91,92,85,99,98,96,95,86,116,50,206,222,220,221,209,210,217,208,213,223,214,219,225,224,207,215,216,211,218,212,105,203,202,55,238,45,46,8,9,11,10,2,12,13,14,15,16,17,18,19,3,4,20,24,21,22,23,25,26,27,5,28,29,30,31,6,35,32,33,34,36,7,37,42,43,38,39,40,41,1,44,132,139,131,146,123,122,145,140,143,125,124,120,119,142,121,126,127,130,117,148,147,134,135,137,133,136,141,128,129,138,118,144,239,230,231,241,229,228,205,204,226,227,246,247,242,243,90,58,52,71,73,72,74,60,70,76,80,81,78,79,77,248,75,82,59,68,69,67],"affectedFilesPendingEmit":[248,75,82,59],"emitSignatures":[59,75]},"version":"5.3.3"}
|
package/vite.config.ts
ADDED
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
import { fileURLToPath, URL } from 'node:url'
|
|
2
|
+
import { resolve } from 'node:path';
|
|
3
|
+
import { defineConfig } from 'vite'
|
|
4
|
+
import vue from '@vitejs/plugin-vue'
|
|
5
|
+
import dts from 'vite-plugin-dts'
|
|
6
|
+
|
|
7
|
+
export default defineConfig({
|
|
8
|
+
plugins: [
|
|
9
|
+
vue(),
|
|
10
|
+
dts({
|
|
11
|
+
insertTypesEntry: true,
|
|
12
|
+
})
|
|
13
|
+
],
|
|
14
|
+
resolve: {
|
|
15
|
+
alias: {
|
|
16
|
+
'@': fileURLToPath(new URL('./src', import.meta.url))
|
|
17
|
+
}
|
|
18
|
+
},
|
|
19
|
+
build: {
|
|
20
|
+
lib: {
|
|
21
|
+
entry: resolve(__dirname, './src/index.ts'),
|
|
22
|
+
name: 'FzCard',
|
|
23
|
+
},
|
|
24
|
+
rollupOptions: {
|
|
25
|
+
external: ['vue', "@fiscozen/icons", "@fiscozen/button"],
|
|
26
|
+
output: {
|
|
27
|
+
globals: {
|
|
28
|
+
vue: 'Vue',
|
|
29
|
+
},
|
|
30
|
+
},
|
|
31
|
+
}
|
|
32
|
+
}
|
|
33
|
+
})
|
package/vitest.config.ts
ADDED
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
import { fileURLToPath } from 'node:url'
|
|
2
|
+
import { mergeConfig, defineConfig, configDefaults } from 'vitest/config'
|
|
3
|
+
import viteConfig from './vite.config'
|
|
4
|
+
|
|
5
|
+
export default mergeConfig(
|
|
6
|
+
viteConfig,
|
|
7
|
+
defineConfig({
|
|
8
|
+
test: {
|
|
9
|
+
environment: 'jsdom',
|
|
10
|
+
exclude: [...configDefaults.exclude, 'e2e/*'],
|
|
11
|
+
root: fileURLToPath(new URL('./', import.meta.url)),
|
|
12
|
+
coverage: {
|
|
13
|
+
provider: 'v8',
|
|
14
|
+
include: ['**/src/**'],
|
|
15
|
+
exclude: ['**/index.ts']
|
|
16
|
+
}
|
|
17
|
+
}
|
|
18
|
+
})
|
|
19
|
+
)
|