@topjoao/top-design-system 0.1.0-beta.1 → 0.1.0-beta.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +68 -47
- package/dist/{TopButton-2hSBDfRU.js → TopButton-9IIdtUbJ.js} +6 -2
- package/dist/TopButton-9IIdtUbJ.js.map +1 -0
- package/dist/TopButton-CDKgguLF.cjs +2 -0
- package/dist/TopButton-CDKgguLF.cjs.map +1 -0
- package/dist/components/TopButton.vue.d.ts +2 -0
- package/dist/index.cjs +1 -1
- package/dist/index.js +1 -1
- package/dist/plugin.cjs +1 -1
- package/dist/plugin.js +1 -1
- package/dist/style.css +1 -1
- package/package.json +1 -1
- package/dist/TopButton-2hSBDfRU.js.map +0 -1
- package/dist/TopButton-Do46BCHz.cjs +0 -2
- package/dist/TopButton-Do46BCHz.cjs.map +0 -1
package/README.md
CHANGED
|
@@ -1,51 +1,64 @@
|
|
|
1
1
|
# TopSolutions Design System
|
|
2
2
|
|
|
3
|
-
Biblioteca
|
|
3
|
+
Biblioteca de componentes Vue 3, estilos e tokens visuais compartilhados pela
|
|
4
4
|
TopSolutions.
|
|
5
5
|
|
|
6
|
-
##
|
|
6
|
+
## Instalação
|
|
7
7
|
|
|
8
8
|
```bash
|
|
9
|
-
npm install
|
|
10
|
-
npm run check
|
|
9
|
+
npm install @topjoao/top-design-system@beta
|
|
11
10
|
```
|
|
12
11
|
|
|
13
|
-
|
|
12
|
+
A aplicação consumidora deve possuir Vue 3, PrimeVue, PrimeIcons e
|
|
13
|
+
`@primeuix/themes` em versões compatíveis com as `peerDependencies` do pacote.
|
|
14
14
|
|
|
15
|
-
|
|
15
|
+
## Uso com Nuxt
|
|
16
16
|
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
17
|
+
Adicione o módulo uma única vez ao `nuxt.config.ts`:
|
|
18
|
+
|
|
19
|
+
```ts
|
|
20
|
+
export default defineNuxtConfig({
|
|
21
|
+
modules: [
|
|
22
|
+
// outros módulos...
|
|
23
|
+
'@topjoao/top-design-system/nuxt',
|
|
24
|
+
],
|
|
25
|
+
})
|
|
20
26
|
```
|
|
21
27
|
|
|
22
|
-
|
|
23
|
-
os
|
|
28
|
+
Depois de alterar a configuração, reinicie o servidor de desenvolvimento ou
|
|
29
|
+
regenere os arquivos do Nuxt:
|
|
24
30
|
|
|
25
|
-
```
|
|
26
|
-
|
|
27
|
-
import '@topjoao/top-design-system/style.css'
|
|
31
|
+
```bash
|
|
32
|
+
npm run postinstall
|
|
28
33
|
```
|
|
29
34
|
|
|
30
|
-
|
|
31
|
-
|
|
35
|
+
O módulo registra os componentes, gera suas tipagens e inclui o CSS da
|
|
36
|
+
biblioteca. Não é necessário importar o componente manualmente:
|
|
32
37
|
|
|
33
|
-
|
|
38
|
+
```vue
|
|
39
|
+
<template>
|
|
40
|
+
<TopButton label="Salvar" icon="pi pi-save" />
|
|
41
|
+
</template>
|
|
42
|
+
```
|
|
34
43
|
|
|
35
|
-
|
|
44
|
+
## Uso com Vue 3
|
|
36
45
|
|
|
37
|
-
|
|
46
|
+
### Importação por componente
|
|
38
47
|
|
|
39
48
|
```vue
|
|
40
49
|
<script setup lang="ts">
|
|
41
50
|
import { TopButton } from '@topjoao/top-design-system'
|
|
42
51
|
import '@topjoao/top-design-system/style.css'
|
|
43
52
|
</script>
|
|
53
|
+
|
|
54
|
+
<template>
|
|
55
|
+
<TopButton label="Salvar" icon="pi pi-save" />
|
|
56
|
+
</template>
|
|
44
57
|
```
|
|
45
58
|
|
|
46
|
-
###
|
|
59
|
+
### Registro global
|
|
47
60
|
|
|
48
|
-
|
|
61
|
+
Na inicialização da aplicação:
|
|
49
62
|
|
|
50
63
|
```ts
|
|
51
64
|
import { createApp } from 'vue'
|
|
@@ -56,36 +69,16 @@ import App from './App.vue'
|
|
|
56
69
|
createApp(App).use(TopSolutionsDesignSystem).mount('#app')
|
|
57
70
|
```
|
|
58
71
|
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
### Autoimportação no Nuxt
|
|
63
|
-
|
|
64
|
-
Adicione o módulo ao `nuxt.config.ts`:
|
|
65
|
-
|
|
66
|
-
```ts
|
|
67
|
-
export default defineNuxtConfig({
|
|
68
|
-
modules: ['@topjoao/top-design-system/nuxt'],
|
|
69
|
-
})
|
|
70
|
-
```
|
|
71
|
-
|
|
72
|
-
O módulo registra o `TopButton`, sua tipagem e o CSS da biblioteca. Assim, o
|
|
73
|
-
componente pode ser usado como `<TopButton>` sem importação manual. A integração
|
|
74
|
-
com Nuxt é opcional e não afeta aplicações Vue que utilizam as outras entradas.
|
|
72
|
+
Após o registro, os componentes podem ser utilizados sem importação manual. A
|
|
73
|
+
entrada `/plugin` também fornece as declarações globais usadas pela IDE.
|
|
75
74
|
|
|
76
75
|
## TopButton
|
|
77
76
|
|
|
78
|
-
|
|
77
|
+
Exemplo
|
|
79
78
|
|
|
80
79
|
```vue
|
|
81
|
-
<script setup lang="ts">
|
|
82
|
-
import { TopButton } from '@topjoao/top-design-system'
|
|
83
|
-
import '@topjoao/top-design-system/style.css'
|
|
84
|
-
</script>
|
|
85
|
-
|
|
86
80
|
<template>
|
|
87
81
|
<TopButton label="Salvar" icon="pi pi-save" @click="salvar" />
|
|
88
|
-
|
|
89
82
|
<TopButton label="Cancelar" secondary />
|
|
90
83
|
|
|
91
84
|
<TopButton label="Consultar" outlined>
|
|
@@ -96,11 +89,10 @@ import '@topjoao/top-design-system/style.css'
|
|
|
96
89
|
</template>
|
|
97
90
|
```
|
|
98
91
|
|
|
99
|
-
Props disponíveis:
|
|
100
|
-
|
|
101
92
|
| Prop | Tipo | Padrão |
|
|
102
93
|
|---|---|---|
|
|
103
94
|
| `tooltip` | `string` | `''` |
|
|
95
|
+
| `tooltipClass` | `string` | `'text-xs'` |
|
|
104
96
|
| `label` | `string` | `''` |
|
|
105
97
|
| `icon` | `string` | `''` |
|
|
106
98
|
| `loading` | `boolean` | `false` |
|
|
@@ -109,6 +101,35 @@ Props disponíveis:
|
|
|
109
101
|
| `secondary` | `boolean` | `false` |
|
|
110
102
|
| `disabled` | `boolean` | `false` |
|
|
111
103
|
| `unstyled` | `boolean` | `false` |
|
|
112
|
-
| `type` | `'button'
|
|
104
|
+
| `type` | `'button' \| 'submit' \| 'reset'` | `'button'` |
|
|
113
105
|
|
|
114
106
|
O componente emite `click` sem payload e oferece o slot nomeado `icon`.
|
|
107
|
+
|
|
108
|
+
## Desenvolvimento da biblioteca
|
|
109
|
+
|
|
110
|
+
```bash
|
|
111
|
+
npm install
|
|
112
|
+
npm run check
|
|
113
|
+
```
|
|
114
|
+
|
|
115
|
+
O comando `check` executa verificação de tipos, testes e build.
|
|
116
|
+
|
|
117
|
+
Para inspecionar o conteúdo que seria publicado:
|
|
118
|
+
|
|
119
|
+
```bash
|
|
120
|
+
npm pack --dry-run
|
|
121
|
+
```
|
|
122
|
+
|
|
123
|
+
Para gerar um pacote local instalável:
|
|
124
|
+
|
|
125
|
+
```bash
|
|
126
|
+
npm pack
|
|
127
|
+
```
|
|
128
|
+
|
|
129
|
+
Para publicar uma nova versão beta, primeiro altere a versão; versões já
|
|
130
|
+
publicadas no npm não podem ser sobrescritas.
|
|
131
|
+
|
|
132
|
+
```bash
|
|
133
|
+
npm version prerelease --preid=beta --no-git-tag-version
|
|
134
|
+
npm publish --access public --tag beta
|
|
135
|
+
```
|
|
@@ -7,6 +7,7 @@ var h = { class: "h-fit w-fit rounded-[12px] bg-transparent" }, g = /* @__PURE__
|
|
|
7
7
|
__name: "TopButton",
|
|
8
8
|
props: {
|
|
9
9
|
tooltip: { default: "" },
|
|
10
|
+
tooltipClass: { default: "text-xs" },
|
|
10
11
|
label: { default: "" },
|
|
11
12
|
icon: { default: "" },
|
|
12
13
|
loading: {
|
|
@@ -65,7 +66,10 @@ var h = { class: "h-fit w-fit rounded-[12px] bg-transparent" }, g = /* @__PURE__
|
|
|
65
66
|
"pt"
|
|
66
67
|
])), [[
|
|
67
68
|
c(p),
|
|
68
|
-
|
|
69
|
+
{
|
|
70
|
+
value: i.tooltip,
|
|
71
|
+
class: i.tooltipClass
|
|
72
|
+
},
|
|
69
73
|
void 0,
|
|
70
74
|
{ top: !0 }
|
|
71
75
|
]])]));
|
|
@@ -74,4 +78,4 @@ var h = { class: "h-fit w-fit rounded-[12px] bg-transparent" }, g = /* @__PURE__
|
|
|
74
78
|
//#endregion
|
|
75
79
|
export { g as t };
|
|
76
80
|
|
|
77
|
-
//# sourceMappingURL=TopButton-
|
|
81
|
+
//# sourceMappingURL=TopButton-9IIdtUbJ.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"TopButton-9IIdtUbJ.js","names":[],"sources":["../src/components/TopButton.vue","../src/components/TopButton.vue"],"sourcesContent":["<script setup lang=\"ts\">\nimport { computed, useSlots } from 'vue'\nimport Button from 'primevue/button'\nimport vTooltip from 'primevue/tooltip'\nimport { twMerge } from 'tailwind-merge'\n\nconst slots = useSlots()\nconst outrosIcones = computed(() => Boolean(slots.icon))\n\nconst props = withDefaults(\n defineProps<{\n tooltip?: string\n tooltipClass?: string\n label?: string\n icon?: string\n loading?: boolean\n class?: string\n outlined?: boolean\n secondary?: boolean\n disabled?: boolean\n unstyled?: boolean\n type?: 'button' | 'submit' | 'reset'\n }>(),\n {\n tooltip: '',\n tooltipClass: 'text-xs',\n label: '',\n icon: '',\n loading: false,\n class: '',\n outlined: false,\n secondary: false,\n disabled: false,\n unstyled: false,\n type: 'button',\n },\n)\n\nconst emit = defineEmits<{\n click: []\n}>()\n\nconst buttonClasses = computed(() => {\n const baseClasses = !props.unstyled\n ? props.secondary\n ? 'rounded-[10px] border px-2 py-2 font-bold'\n : props.outlined\n ? 'shrink-0 rounded-[10px] border-primary-800 px-4 py-2 text-primary-800 hover:bg-primary-50'\n : 'rounded-[10px] !border-primary-900 bg-primary-900 px-3 py-2 font-bold text-white hover:!border-primary-800 hover:bg-primary-800 '\n : ''\n\n return twMerge(baseClasses, props.class)\n})\n</script>\n\n<template>\n <span class=\"h-fit w-fit rounded-[12px] bg-transparent\">\n <Button\n v-tooltip.top=\"{\n value: tooltip,\n class: tooltipClass,\n }\"\n :type=\"type\"\n :label=\"label\"\n :disabled=\"disabled || loading\"\n :icon=\"outrosIcones ? undefined : icon || undefined\"\n :loading=\"loading\"\n :outlined=\"outlined || secondary\"\n :severity=\"secondary ? 'secondary' : undefined\"\n :class=\"buttonClasses\"\n :pt=\"{\n root: { class: buttonClasses },\n }\"\n @click=\"emit('click')\"\n >\n <template v-if=\"outrosIcones\" #icon>\n <slot name=\"icon\" />\n </template>\n </Button>\n </span>\n</template>\n","<script setup lang=\"ts\">\nimport { computed, useSlots } from 'vue'\nimport Button from 'primevue/button'\nimport vTooltip from 'primevue/tooltip'\nimport { twMerge } from 'tailwind-merge'\n\nconst slots = useSlots()\nconst outrosIcones = computed(() => Boolean(slots.icon))\n\nconst props = withDefaults(\n defineProps<{\n tooltip?: string\n tooltipClass?: string\n label?: string\n icon?: string\n loading?: boolean\n class?: string\n outlined?: boolean\n secondary?: boolean\n disabled?: boolean\n unstyled?: boolean\n type?: 'button' | 'submit' | 'reset'\n }>(),\n {\n tooltip: '',\n tooltipClass: 'text-xs',\n label: '',\n icon: '',\n loading: false,\n class: '',\n outlined: false,\n secondary: false,\n disabled: false,\n unstyled: false,\n type: 'button',\n },\n)\n\nconst emit = defineEmits<{\n click: []\n}>()\n\nconst buttonClasses = computed(() => {\n const baseClasses = !props.unstyled\n ? props.secondary\n ? 'rounded-[10px] border px-2 py-2 font-bold'\n : props.outlined\n ? 'shrink-0 rounded-[10px] border-primary-800 px-4 py-2 text-primary-800 hover:bg-primary-50'\n : 'rounded-[10px] !border-primary-900 bg-primary-900 px-3 py-2 font-bold text-white hover:!border-primary-800 hover:bg-primary-800 '\n : ''\n\n return twMerge(baseClasses, props.class)\n})\n</script>\n\n<template>\n <span class=\"h-fit w-fit rounded-[12px] bg-transparent\">\n <Button\n v-tooltip.top=\"{\n value: tooltip,\n class: tooltipClass,\n }\"\n :type=\"type\"\n :label=\"label\"\n :disabled=\"disabled || loading\"\n :icon=\"outrosIcones ? undefined : icon || undefined\"\n :loading=\"loading\"\n :outlined=\"outlined || secondary\"\n :severity=\"secondary ? 'secondary' : undefined\"\n :class=\"buttonClasses\"\n :pt=\"{\n root: { class: buttonClasses },\n }\"\n @click=\"emit('click')\"\n >\n <template v-if=\"outrosIcones\" #icon>\n <slot name=\"icon\" />\n </template>\n </Button>\n </span>\n</template>\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAMA,IAAM,IAAQ,EAAS,GACjB,IAAe,QAAe,EAAQ,EAAM,IAAK,GAEjD,IAAQ,GA6BR,IAAO,GAIP,IAAgB,QAAe;GACnC,IAAM,IAAe,EAAM,WAMvB,KALA,EAAM,YACJ,8CACA,EAAM,WACJ,8FACA;GAGR,OAAO,EAAQ,GAAa,EAAM,KAAK;EACzC,CAAC;oBAIC,EAAA,GAAA,EAuBO,QAvBP,GAuBO,CAtBL,GAAA,EAAA,GAAA,EAqBS,EAAA,CAAA,GAAA;GAhBN,MAAM,EAAA;GACN,OAAO,EAAA;GACP,UAAU,EAAA,YAAY,EAAA;GACtB,MAAM,EAAA,QAAe,KAAA,IAAY,EAAA,QAAQ,KAAA;GACzC,SAAS,EAAA;GACT,UAAU,EAAA,YAAY,EAAA;GACtB,UAAU,EAAA,YAAS,cAAiB,KAAA;GACpC,OAAK,EAAE,EAAA,KAAa;GACpB,IAAE,EAA2B,MAAA,EAAA,OAAA,EAAA,MAAa,EAAA;GAG1C,SAAK,AAAA,EAAA,QAAA,MAAE,EAAI,OAAA;EAEI,GAAA,EAAA,EAAA,GAAA,EAAA,GAAA,CAAA,EAAA,QAAA;GAAe,MAAA;GAC7B,IAAA,QAAoB,CAApB,EAAoB,EAAA,QAAA,MAAA,CAAA,CAAA;;;;;;;;;;;;;;;IAlBU,OAAA,EAAA;IAAwB,OAAA,EAAA;;;GAA9C,EAAA,KAAV,GAGE"}
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
var e=Object.create,t=Object.defineProperty,n=Object.getOwnPropertyDescriptor,r=Object.getOwnPropertyNames,i=Object.getPrototypeOf,a=Object.prototype.hasOwnProperty,o=(e,i,o,s)=>{if(i&&typeof i==`object`||typeof i==`function`)for(var c=r(i),l=0,u=c.length,d;l<u;l++)d=c[l],!a.call(e,d)&&d!==o&&t(e,d,{get:(e=>i[e]).bind(null,d),enumerable:!(s=n(i,d))||s.enumerable});return e},s=(n,r,s)=>(s=n==null?{}:e(i(n)),o(r||!n||!n.__esModule||!a.call(n,`default`)?t(s,`default`,{value:n,enumerable:!0}):s,n));let c=require("vue"),l=require("primevue/button");l=s(l,1);let u=require("primevue/tooltip");u=s(u,1);let d=require("tailwind-merge");var f={class:`h-fit w-fit rounded-[12px] bg-transparent`},p=(0,c.defineComponent)({__name:`TopButton`,props:{tooltip:{default:``},tooltipClass:{default:`text-xs`},label:{default:``},icon:{default:``},loading:{type:Boolean,default:!1},class:{default:``},outlined:{type:Boolean,default:!1},secondary:{type:Boolean,default:!1},disabled:{type:Boolean,default:!1},unstyled:{type:Boolean,default:!1},type:{default:`button`}},emits:[`click`],setup(e,{emit:t}){let n=(0,c.useSlots)(),r=(0,c.computed)(()=>!!n.icon),i=e,a=t,o=(0,c.computed)(()=>{let e=i.unstyled?``:i.secondary?`rounded-[10px] border px-2 py-2 font-bold`:i.outlined?`shrink-0 rounded-[10px] border-primary-800 px-4 py-2 text-primary-800 hover:bg-primary-50`:`rounded-[10px] !border-primary-900 bg-primary-900 px-3 py-2 font-bold text-white hover:!border-primary-800 hover:bg-primary-800 `;return(0,d.twMerge)(e,i.class)});return(t,n)=>((0,c.openBlock)(),(0,c.createElementBlock)(`span`,f,[(0,c.withDirectives)(((0,c.openBlock)(),(0,c.createBlock)((0,c.unref)(l.default),{type:e.type,label:e.label,disabled:e.disabled||e.loading,icon:r.value?void 0:e.icon||void 0,loading:e.loading,outlined:e.outlined||e.secondary,severity:e.secondary?`secondary`:void 0,class:(0,c.normalizeClass)(o.value),pt:{root:{class:o.value}},onClick:n[0]||=e=>a(`click`)},(0,c.createSlots)({_:2},[r.value?{name:`icon`,fn:(0,c.withCtx)(()=>[(0,c.renderSlot)(t.$slots,`icon`)]),key:`0`}:void 0]),1032,[`type`,`label`,`disabled`,`icon`,`loading`,`outlined`,`severity`,`class`,`pt`])),[[(0,c.unref)(u.default),{value:e.tooltip,class:e.tooltipClass},void 0,{top:!0}]])]))}});Object.defineProperty(exports,"t",{enumerable:!0,get:function(){return p}});
|
|
2
|
+
//# sourceMappingURL=TopButton-CDKgguLF.cjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"TopButton-CDKgguLF.cjs","names":[],"sources":["../src/components/TopButton.vue","../src/components/TopButton.vue"],"sourcesContent":["<script setup lang=\"ts\">\nimport { computed, useSlots } from 'vue'\nimport Button from 'primevue/button'\nimport vTooltip from 'primevue/tooltip'\nimport { twMerge } from 'tailwind-merge'\n\nconst slots = useSlots()\nconst outrosIcones = computed(() => Boolean(slots.icon))\n\nconst props = withDefaults(\n defineProps<{\n tooltip?: string\n tooltipClass?: string\n label?: string\n icon?: string\n loading?: boolean\n class?: string\n outlined?: boolean\n secondary?: boolean\n disabled?: boolean\n unstyled?: boolean\n type?: 'button' | 'submit' | 'reset'\n }>(),\n {\n tooltip: '',\n tooltipClass: 'text-xs',\n label: '',\n icon: '',\n loading: false,\n class: '',\n outlined: false,\n secondary: false,\n disabled: false,\n unstyled: false,\n type: 'button',\n },\n)\n\nconst emit = defineEmits<{\n click: []\n}>()\n\nconst buttonClasses = computed(() => {\n const baseClasses = !props.unstyled\n ? props.secondary\n ? 'rounded-[10px] border px-2 py-2 font-bold'\n : props.outlined\n ? 'shrink-0 rounded-[10px] border-primary-800 px-4 py-2 text-primary-800 hover:bg-primary-50'\n : 'rounded-[10px] !border-primary-900 bg-primary-900 px-3 py-2 font-bold text-white hover:!border-primary-800 hover:bg-primary-800 '\n : ''\n\n return twMerge(baseClasses, props.class)\n})\n</script>\n\n<template>\n <span class=\"h-fit w-fit rounded-[12px] bg-transparent\">\n <Button\n v-tooltip.top=\"{\n value: tooltip,\n class: tooltipClass,\n }\"\n :type=\"type\"\n :label=\"label\"\n :disabled=\"disabled || loading\"\n :icon=\"outrosIcones ? undefined : icon || undefined\"\n :loading=\"loading\"\n :outlined=\"outlined || secondary\"\n :severity=\"secondary ? 'secondary' : undefined\"\n :class=\"buttonClasses\"\n :pt=\"{\n root: { class: buttonClasses },\n }\"\n @click=\"emit('click')\"\n >\n <template v-if=\"outrosIcones\" #icon>\n <slot name=\"icon\" />\n </template>\n </Button>\n </span>\n</template>\n","<script setup lang=\"ts\">\nimport { computed, useSlots } from 'vue'\nimport Button from 'primevue/button'\nimport vTooltip from 'primevue/tooltip'\nimport { twMerge } from 'tailwind-merge'\n\nconst slots = useSlots()\nconst outrosIcones = computed(() => Boolean(slots.icon))\n\nconst props = withDefaults(\n defineProps<{\n tooltip?: string\n tooltipClass?: string\n label?: string\n icon?: string\n loading?: boolean\n class?: string\n outlined?: boolean\n secondary?: boolean\n disabled?: boolean\n unstyled?: boolean\n type?: 'button' | 'submit' | 'reset'\n }>(),\n {\n tooltip: '',\n tooltipClass: 'text-xs',\n label: '',\n icon: '',\n loading: false,\n class: '',\n outlined: false,\n secondary: false,\n disabled: false,\n unstyled: false,\n type: 'button',\n },\n)\n\nconst emit = defineEmits<{\n click: []\n}>()\n\nconst buttonClasses = computed(() => {\n const baseClasses = !props.unstyled\n ? props.secondary\n ? 'rounded-[10px] border px-2 py-2 font-bold'\n : props.outlined\n ? 'shrink-0 rounded-[10px] border-primary-800 px-4 py-2 text-primary-800 hover:bg-primary-50'\n : 'rounded-[10px] !border-primary-900 bg-primary-900 px-3 py-2 font-bold text-white hover:!border-primary-800 hover:bg-primary-800 '\n : ''\n\n return twMerge(baseClasses, props.class)\n})\n</script>\n\n<template>\n <span class=\"h-fit w-fit rounded-[12px] bg-transparent\">\n <Button\n v-tooltip.top=\"{\n value: tooltip,\n class: tooltipClass,\n }\"\n :type=\"type\"\n :label=\"label\"\n :disabled=\"disabled || loading\"\n :icon=\"outrosIcones ? undefined : icon || undefined\"\n :loading=\"loading\"\n :outlined=\"outlined || secondary\"\n :severity=\"secondary ? 'secondary' : undefined\"\n :class=\"buttonClasses\"\n :pt=\"{\n root: { class: buttonClasses },\n }\"\n @click=\"emit('click')\"\n >\n <template v-if=\"outrosIcones\" #icon>\n <slot name=\"icon\" />\n </template>\n </Button>\n </span>\n</template>\n"],"mappings":"+jCAMA,IAAM,GAAA,EAAQ,EAAA,SAAA,CAAS,EACjB,GAAA,EAAe,EAAA,SAAA,KAAe,EAAQ,EAAM,IAAK,EAEjD,EAAQ,EA6BR,EAAO,EAIP,GAAA,EAAgB,EAAA,SAAA,KAAe,CACnC,IAAM,EAAe,EAAM,SAMvB,GALA,EAAM,UACJ,4CACA,EAAM,SACJ,4FACA,mIAGR,OAAA,EAAO,EAAA,QAAA,CAAQ,EAAa,EAAM,KAAK,CACzC,CAAC,iBAIC,EAAA,EAAA,UAAA,CAAA,GAAA,EAAA,EAAA,mBAAA,CAuBO,OAvBP,EAuBO,EAAA,EAtBL,EAAA,eAAA,GAAA,EAAA,EAAA,UAAA,CAAA,GAAA,EAAA,EAAA,YAAA,EAAA,EAqBS,EAAA,MAAA,CAAA,EAAA,OAAA,EAAA,CAhBN,KAAM,EAAA,KACN,MAAO,EAAA,MACP,SAAU,EAAA,UAAY,EAAA,QACtB,KAAM,EAAA,MAAe,IAAA,GAAY,EAAA,MAAQ,IAAA,GACzC,QAAS,EAAA,QACT,SAAU,EAAA,UAAY,EAAA,UACtB,SAAU,EAAA,UAAS,YAAiB,IAAA,GACpC,OAAA,EAAK,EAAA,eAAA,CAAE,EAAA,KAAa,EACpB,GAAE,CAA2B,KAAA,CAAA,MAAA,EAAA,KAAa,CAAA,EAG1C,QAAK,AAAA,EAAA,KAAA,GAAE,EAAI,OAAA,CAEI,GAAA,EAAA,EAAA,YAAA,CAAA,CAAA,EAAA,CAAA,EAAA,CAAA,EAAA,MAAA,CAAe,KAAA,OAC7B,IAAA,EAAA,EAAA,QAAA,KAAoB,EAAA,EAApB,EAAA,WAAA,CAAoB,EAAA,OAAA,MAAA,CAAA,CAAA,qIAlBU,MAAA,EAAA,QAAwB,MAAA,EAAA,qBAA9C,CAAA,IAAV,EAGE"}
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
type __VLS_Props = {
|
|
2
2
|
tooltip?: string;
|
|
3
|
+
tooltipClass?: string;
|
|
3
4
|
label?: string;
|
|
4
5
|
icon?: string;
|
|
5
6
|
loading?: boolean;
|
|
@@ -21,6 +22,7 @@ declare const __VLS_base: import('vue').DefineComponent<__VLS_Props, {}, {}, {},
|
|
|
21
22
|
}>, {
|
|
22
23
|
icon: string;
|
|
23
24
|
tooltip: string;
|
|
25
|
+
tooltipClass: string;
|
|
24
26
|
label: string;
|
|
25
27
|
loading: boolean;
|
|
26
28
|
class: string;
|
package/dist/index.cjs
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
Object.defineProperty(exports,Symbol.toStringTag,{value:`Module`});const e=require("./TopButton-
|
|
1
|
+
Object.defineProperty(exports,Symbol.toStringTag,{value:`Module`});const e=require("./TopButton-CDKgguLF.cjs");var t={primary:{50:`#EEF9FF`,100:`#DFF4FF`,200:`#C5E6F8`,300:`#8EC4DF`,400:`#66ACD1`,500:`#2488BC`,600:`#036DA3`,700:`#1B5783`,800:`#02466B`,900:`#052F4A`,950:`#0C192D`},secondary:{50:`#FAFAFA`,100:`#F4F4F5`,200:`#E9E9E9`,300:`#D8D8D8`,400:`#B8B8B8`,500:`#8E8E8E`,600:`#676767`,700:`#4B4B4B`,800:`#343434`,900:`#1C1917`,950:`#0C0A09`},success:{50:`#FAFFFA`,100:`#F4FBF6`,200:`#DFF6DE`,300:`#CBE3CA`,400:`#A3CCA1`,500:`#6BA968`,600:`#358F30`,700:`#2C7B27`,800:`#1E631A`,900:`#10430D`,950:`#062804`},warn:{50:`#FFF7ED`,100:`#FDF3D8`,200:`#FDE9B2`,300:`#FDD566`,400:`#FFB900`,500:`#FFA515`,600:`#FD9024`,700:`#DD781F`,800:`#BC4E00`,900:`#A42D02`,950:`#792202`},danger:{50:`#F8E6E4`,100:`#FFDDD9`,200:`#EEC1BC`,300:`#E3938C`,400:`#E3675C`,500:`#DC3F32`,600:`#CF150E`,700:`#B10404`,800:`#820907`,900:`#5D0803`,950:`#450501`}};exports.TopButton=e.t,exports.colors=t;
|
|
2
2
|
//# sourceMappingURL=index.cjs.map
|
package/dist/index.js
CHANGED
package/dist/plugin.cjs
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
Object.defineProperty(exports,Symbol.toStringTag,{value:`Module`});const e=require("./TopButton-
|
|
1
|
+
Object.defineProperty(exports,Symbol.toStringTag,{value:`Module`});const e=require("./TopButton-CDKgguLF.cjs");var t={install(t){t.component(`TopButton`,e.t)}};exports.TopSolutionsDesignSystem=t;
|
|
2
2
|
//# sourceMappingURL=plugin.cjs.map
|
package/dist/plugin.js
CHANGED
package/dist/style.css
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
.h-fit{height:fit-content}.w-fit{width:fit-content}.shrink-0{flex-shrink:0}.rounded-\[10px\]{border-radius:10px}.rounded-\[12px\]{border-radius:12px}.border{border-width:1px}.\!border-primary-900{border-color:var(--top-primary-900)!important}.border-primary-800{border-color:var(--top-primary-800)}.bg-primary-900{background-color:var(--top-primary-900)}.bg-transparent{background-color:#0000}.px-2{padding-left:.5rem;padding-right:.5rem}.px-3{padding-left:.75rem;padding-right:.75rem}.px-4{padding-left:1rem;padding-right:1rem}.py-2{padding-top:.5rem;padding-bottom:.5rem}.font-bold{font-weight:700}.text-primary-800{color:var(--top-primary-800)}.text-white{--tw-text-opacity:1;color:rgb(255 255 255/var(--tw-text-opacity,1))}:root{--top-primary-50:#eef9ff;--top-primary-100:#dff4ff;--top-primary-200:#c5e6f8;--top-primary-300:#8ec4df;--top-primary-400:#66acd1;--top-primary-500:#2488bc;--top-primary-600:#036da3;--top-primary-700:#1b5783;--top-primary-800:#02466b;--top-primary-900:#052f4a;--top-primary-950:#0c192d;--top-secondary-50:#fafafa;--top-secondary-100:#f4f4f5;--top-secondary-200:#e9e9e9;--top-secondary-300:#d8d8d8;--top-secondary-400:#b8b8b8;--top-secondary-500:#8e8e8e;--top-secondary-600:#676767;--top-secondary-700:#4b4b4b;--top-secondary-800:#343434;--top-secondary-900:#1c1917;--top-secondary-950:#0c0a09}.hover\:\!border-primary-800:hover{border-color:var(--top-primary-800)!important}.hover\:bg-primary-50:hover{background-color:var(--top-primary-50)}.hover\:bg-primary-800:hover{background-color:var(--top-primary-800)}
|
|
1
|
+
.h-fit{height:fit-content}.w-fit{width:fit-content}.shrink-0{flex-shrink:0}.rounded-\[10px\]{border-radius:10px}.rounded-\[12px\]{border-radius:12px}.border{border-width:1px}.\!border-primary-900{border-color:var(--top-primary-900)!important}.border-primary-800{border-color:var(--top-primary-800)}.bg-primary-900{background-color:var(--top-primary-900)}.bg-transparent{background-color:#0000}.px-2{padding-left:.5rem;padding-right:.5rem}.px-3{padding-left:.75rem;padding-right:.75rem}.px-4{padding-left:1rem;padding-right:1rem}.py-2{padding-top:.5rem;padding-bottom:.5rem}.text-xs{font-size:.75rem;line-height:1rem}.font-bold{font-weight:700}.text-primary-800{color:var(--top-primary-800)}.text-white{--tw-text-opacity:1;color:rgb(255 255 255/var(--tw-text-opacity,1))}:root{--top-primary-50:#eef9ff;--top-primary-100:#dff4ff;--top-primary-200:#c5e6f8;--top-primary-300:#8ec4df;--top-primary-400:#66acd1;--top-primary-500:#2488bc;--top-primary-600:#036da3;--top-primary-700:#1b5783;--top-primary-800:#02466b;--top-primary-900:#052f4a;--top-primary-950:#0c192d;--top-secondary-50:#fafafa;--top-secondary-100:#f4f4f5;--top-secondary-200:#e9e9e9;--top-secondary-300:#d8d8d8;--top-secondary-400:#b8b8b8;--top-secondary-500:#8e8e8e;--top-secondary-600:#676767;--top-secondary-700:#4b4b4b;--top-secondary-800:#343434;--top-secondary-900:#1c1917;--top-secondary-950:#0c0a09}.hover\:\!border-primary-800:hover{border-color:var(--top-primary-800)!important}.hover\:bg-primary-50:hover{background-color:var(--top-primary-50)}.hover\:bg-primary-800:hover{background-color:var(--top-primary-800)}
|
|
2
2
|
/*$vite$:1*/
|
package/package.json
CHANGED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"TopButton-2hSBDfRU.js","names":[],"sources":["../src/components/TopButton.vue","../src/components/TopButton.vue"],"sourcesContent":["<script setup lang=\"ts\">\nimport { computed, useSlots } from 'vue'\nimport Button from 'primevue/button'\nimport vTooltip from 'primevue/tooltip'\nimport { twMerge } from 'tailwind-merge'\n\nconst slots = useSlots()\nconst outrosIcones = computed(() => Boolean(slots.icon))\n\nconst props = withDefaults(\n defineProps<{\n tooltip?: string\n label?: string\n icon?: string\n loading?: boolean\n class?: string\n outlined?: boolean\n secondary?: boolean\n disabled?: boolean\n unstyled?: boolean\n type?: 'button' | 'submit' | 'reset'\n }>(),\n {\n tooltip: '',\n label: '',\n icon: '',\n loading: false,\n class: '',\n outlined: false,\n secondary: false,\n disabled: false,\n unstyled: false,\n type: 'button',\n },\n)\n\nconst emit = defineEmits<{\n click: []\n}>()\n\nconst buttonClasses = computed(() => {\n const baseClasses = !props.unstyled\n ? props.secondary\n ? 'rounded-[10px] border px-2 py-2 font-bold'\n : props.outlined\n ? 'shrink-0 rounded-[10px] border-primary-800 px-4 py-2 text-primary-800 hover:bg-primary-50'\n : 'rounded-[10px] !border-primary-900 bg-primary-900 px-3 py-2 font-bold text-white hover:!border-primary-800 hover:bg-primary-800 '\n : ''\n\n return twMerge(baseClasses, props.class)\n})\n</script>\n\n<template>\n <span class=\"h-fit w-fit rounded-[12px] bg-transparent\">\n <Button\n v-tooltip.top=\"tooltip\"\n :type=\"type\"\n :label=\"label\"\n :disabled=\"disabled || loading\"\n :icon=\"outrosIcones ? undefined : icon || undefined\"\n :loading=\"loading\"\n :outlined=\"outlined || secondary\"\n :severity=\"secondary ? 'secondary' : undefined\"\n :class=\"buttonClasses\"\n :pt=\"{\n root: { class: buttonClasses },\n }\"\n @click=\"emit('click')\"\n >\n <template v-if=\"outrosIcones\" #icon>\n <slot name=\"icon\" />\n </template>\n </Button>\n </span>\n</template>\n","<script setup lang=\"ts\">\nimport { computed, useSlots } from 'vue'\nimport Button from 'primevue/button'\nimport vTooltip from 'primevue/tooltip'\nimport { twMerge } from 'tailwind-merge'\n\nconst slots = useSlots()\nconst outrosIcones = computed(() => Boolean(slots.icon))\n\nconst props = withDefaults(\n defineProps<{\n tooltip?: string\n label?: string\n icon?: string\n loading?: boolean\n class?: string\n outlined?: boolean\n secondary?: boolean\n disabled?: boolean\n unstyled?: boolean\n type?: 'button' | 'submit' | 'reset'\n }>(),\n {\n tooltip: '',\n label: '',\n icon: '',\n loading: false,\n class: '',\n outlined: false,\n secondary: false,\n disabled: false,\n unstyled: false,\n type: 'button',\n },\n)\n\nconst emit = defineEmits<{\n click: []\n}>()\n\nconst buttonClasses = computed(() => {\n const baseClasses = !props.unstyled\n ? props.secondary\n ? 'rounded-[10px] border px-2 py-2 font-bold'\n : props.outlined\n ? 'shrink-0 rounded-[10px] border-primary-800 px-4 py-2 text-primary-800 hover:bg-primary-50'\n : 'rounded-[10px] !border-primary-900 bg-primary-900 px-3 py-2 font-bold text-white hover:!border-primary-800 hover:bg-primary-800 '\n : ''\n\n return twMerge(baseClasses, props.class)\n})\n</script>\n\n<template>\n <span class=\"h-fit w-fit rounded-[12px] bg-transparent\">\n <Button\n v-tooltip.top=\"tooltip\"\n :type=\"type\"\n :label=\"label\"\n :disabled=\"disabled || loading\"\n :icon=\"outrosIcones ? undefined : icon || undefined\"\n :loading=\"loading\"\n :outlined=\"outlined || secondary\"\n :severity=\"secondary ? 'secondary' : undefined\"\n :class=\"buttonClasses\"\n :pt=\"{\n root: { class: buttonClasses },\n }\"\n @click=\"emit('click')\"\n >\n <template v-if=\"outrosIcones\" #icon>\n <slot name=\"icon\" />\n </template>\n </Button>\n </span>\n</template>\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAMA,IAAM,IAAQ,EAAS,GACjB,IAAe,QAAe,EAAQ,EAAM,IAAK,GAEjD,IAAQ,GA2BR,IAAO,GAIP,IAAgB,QAAe;GACnC,IAAM,IAAe,EAAM,WAMvB,KALA,EAAM,YACJ,8CACA,EAAM,WACJ,8FACA;GAGR,OAAO,EAAQ,GAAa,EAAM,KAAK;EACzC,CAAC;oBAIC,EAAA,GAAA,EAoBO,QApBP,GAoBO,CAnBL,GAAA,EAAA,GAAA,EAkBS,EAAA,CAAA,GAAA;GAhBN,MAAM,EAAA;GACN,OAAO,EAAA;GACP,UAAU,EAAA,YAAY,EAAA;GACtB,MAAM,EAAA,QAAe,KAAA,IAAY,EAAA,QAAQ,KAAA;GACzC,SAAS,EAAA;GACT,UAAU,EAAA,YAAY,EAAA;GACtB,UAAU,EAAA,YAAS,cAAiB,KAAA;GACpC,OAAK,EAAE,EAAA,KAAa;GACpB,IAAE,EAA2B,MAAA,EAAA,OAAA,EAAA,MAAa,EAAA;GAG1C,SAAK,AAAA,EAAA,QAAA,MAAE,EAAI,OAAA;EAEI,GAAA,EAAA,EAAA,GAAA,EAAA,GAAA,CAAA,EAAA,QAAA;GAAe,MAAA;GAC7B,IAAA,QAAoB,CAApB,EAAoB,EAAA,QAAA,MAAA,CAAA,CAAA;;;;;;;;;;;;;;GAfP,EAAA;;GAAL,EAAA,KAAV,GAAuB"}
|
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
var e=Object.create,t=Object.defineProperty,n=Object.getOwnPropertyDescriptor,r=Object.getOwnPropertyNames,i=Object.getPrototypeOf,a=Object.prototype.hasOwnProperty,o=(e,i,o,s)=>{if(i&&typeof i==`object`||typeof i==`function`)for(var c=r(i),l=0,u=c.length,d;l<u;l++)d=c[l],!a.call(e,d)&&d!==o&&t(e,d,{get:(e=>i[e]).bind(null,d),enumerable:!(s=n(i,d))||s.enumerable});return e},s=(n,r,s)=>(s=n==null?{}:e(i(n)),o(r||!n||!n.__esModule||!a.call(n,`default`)?t(s,`default`,{value:n,enumerable:!0}):s,n));let c=require("vue"),l=require("primevue/button");l=s(l,1);let u=require("primevue/tooltip");u=s(u,1);let d=require("tailwind-merge");var f={class:`h-fit w-fit rounded-[12px] bg-transparent`},p=(0,c.defineComponent)({__name:`TopButton`,props:{tooltip:{default:``},label:{default:``},icon:{default:``},loading:{type:Boolean,default:!1},class:{default:``},outlined:{type:Boolean,default:!1},secondary:{type:Boolean,default:!1},disabled:{type:Boolean,default:!1},unstyled:{type:Boolean,default:!1},type:{default:`button`}},emits:[`click`],setup(e,{emit:t}){let n=(0,c.useSlots)(),r=(0,c.computed)(()=>!!n.icon),i=e,a=t,o=(0,c.computed)(()=>{let e=i.unstyled?``:i.secondary?`rounded-[10px] border px-2 py-2 font-bold`:i.outlined?`shrink-0 rounded-[10px] border-primary-800 px-4 py-2 text-primary-800 hover:bg-primary-50`:`rounded-[10px] !border-primary-900 bg-primary-900 px-3 py-2 font-bold text-white hover:!border-primary-800 hover:bg-primary-800 `;return(0,d.twMerge)(e,i.class)});return(t,n)=>((0,c.openBlock)(),(0,c.createElementBlock)(`span`,f,[(0,c.withDirectives)(((0,c.openBlock)(),(0,c.createBlock)((0,c.unref)(l.default),{type:e.type,label:e.label,disabled:e.disabled||e.loading,icon:r.value?void 0:e.icon||void 0,loading:e.loading,outlined:e.outlined||e.secondary,severity:e.secondary?`secondary`:void 0,class:(0,c.normalizeClass)(o.value),pt:{root:{class:o.value}},onClick:n[0]||=e=>a(`click`)},(0,c.createSlots)({_:2},[r.value?{name:`icon`,fn:(0,c.withCtx)(()=>[(0,c.renderSlot)(t.$slots,`icon`)]),key:`0`}:void 0]),1032,[`type`,`label`,`disabled`,`icon`,`loading`,`outlined`,`severity`,`class`,`pt`])),[[(0,c.unref)(u.default),e.tooltip,void 0,{top:!0}]])]))}});Object.defineProperty(exports,"t",{enumerable:!0,get:function(){return p}});
|
|
2
|
-
//# sourceMappingURL=TopButton-Do46BCHz.cjs.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"TopButton-Do46BCHz.cjs","names":[],"sources":["../src/components/TopButton.vue","../src/components/TopButton.vue"],"sourcesContent":["<script setup lang=\"ts\">\nimport { computed, useSlots } from 'vue'\nimport Button from 'primevue/button'\nimport vTooltip from 'primevue/tooltip'\nimport { twMerge } from 'tailwind-merge'\n\nconst slots = useSlots()\nconst outrosIcones = computed(() => Boolean(slots.icon))\n\nconst props = withDefaults(\n defineProps<{\n tooltip?: string\n label?: string\n icon?: string\n loading?: boolean\n class?: string\n outlined?: boolean\n secondary?: boolean\n disabled?: boolean\n unstyled?: boolean\n type?: 'button' | 'submit' | 'reset'\n }>(),\n {\n tooltip: '',\n label: '',\n icon: '',\n loading: false,\n class: '',\n outlined: false,\n secondary: false,\n disabled: false,\n unstyled: false,\n type: 'button',\n },\n)\n\nconst emit = defineEmits<{\n click: []\n}>()\n\nconst buttonClasses = computed(() => {\n const baseClasses = !props.unstyled\n ? props.secondary\n ? 'rounded-[10px] border px-2 py-2 font-bold'\n : props.outlined\n ? 'shrink-0 rounded-[10px] border-primary-800 px-4 py-2 text-primary-800 hover:bg-primary-50'\n : 'rounded-[10px] !border-primary-900 bg-primary-900 px-3 py-2 font-bold text-white hover:!border-primary-800 hover:bg-primary-800 '\n : ''\n\n return twMerge(baseClasses, props.class)\n})\n</script>\n\n<template>\n <span class=\"h-fit w-fit rounded-[12px] bg-transparent\">\n <Button\n v-tooltip.top=\"tooltip\"\n :type=\"type\"\n :label=\"label\"\n :disabled=\"disabled || loading\"\n :icon=\"outrosIcones ? undefined : icon || undefined\"\n :loading=\"loading\"\n :outlined=\"outlined || secondary\"\n :severity=\"secondary ? 'secondary' : undefined\"\n :class=\"buttonClasses\"\n :pt=\"{\n root: { class: buttonClasses },\n }\"\n @click=\"emit('click')\"\n >\n <template v-if=\"outrosIcones\" #icon>\n <slot name=\"icon\" />\n </template>\n </Button>\n </span>\n</template>\n","<script setup lang=\"ts\">\nimport { computed, useSlots } from 'vue'\nimport Button from 'primevue/button'\nimport vTooltip from 'primevue/tooltip'\nimport { twMerge } from 'tailwind-merge'\n\nconst slots = useSlots()\nconst outrosIcones = computed(() => Boolean(slots.icon))\n\nconst props = withDefaults(\n defineProps<{\n tooltip?: string\n label?: string\n icon?: string\n loading?: boolean\n class?: string\n outlined?: boolean\n secondary?: boolean\n disabled?: boolean\n unstyled?: boolean\n type?: 'button' | 'submit' | 'reset'\n }>(),\n {\n tooltip: '',\n label: '',\n icon: '',\n loading: false,\n class: '',\n outlined: false,\n secondary: false,\n disabled: false,\n unstyled: false,\n type: 'button',\n },\n)\n\nconst emit = defineEmits<{\n click: []\n}>()\n\nconst buttonClasses = computed(() => {\n const baseClasses = !props.unstyled\n ? props.secondary\n ? 'rounded-[10px] border px-2 py-2 font-bold'\n : props.outlined\n ? 'shrink-0 rounded-[10px] border-primary-800 px-4 py-2 text-primary-800 hover:bg-primary-50'\n : 'rounded-[10px] !border-primary-900 bg-primary-900 px-3 py-2 font-bold text-white hover:!border-primary-800 hover:bg-primary-800 '\n : ''\n\n return twMerge(baseClasses, props.class)\n})\n</script>\n\n<template>\n <span class=\"h-fit w-fit rounded-[12px] bg-transparent\">\n <Button\n v-tooltip.top=\"tooltip\"\n :type=\"type\"\n :label=\"label\"\n :disabled=\"disabled || loading\"\n :icon=\"outrosIcones ? undefined : icon || undefined\"\n :loading=\"loading\"\n :outlined=\"outlined || secondary\"\n :severity=\"secondary ? 'secondary' : undefined\"\n :class=\"buttonClasses\"\n :pt=\"{\n root: { class: buttonClasses },\n }\"\n @click=\"emit('click')\"\n >\n <template v-if=\"outrosIcones\" #icon>\n <slot name=\"icon\" />\n </template>\n </Button>\n </span>\n</template>\n"],"mappings":"8hCAMA,IAAM,GAAA,EAAQ,EAAA,SAAA,CAAS,EACjB,GAAA,EAAe,EAAA,SAAA,KAAe,EAAQ,EAAM,IAAK,EAEjD,EAAQ,EA2BR,EAAO,EAIP,GAAA,EAAgB,EAAA,SAAA,KAAe,CACnC,IAAM,EAAe,EAAM,SAMvB,GALA,EAAM,UACJ,4CACA,EAAM,SACJ,4FACA,mIAGR,OAAA,EAAO,EAAA,QAAA,CAAQ,EAAa,EAAM,KAAK,CACzC,CAAC,iBAIC,EAAA,EAAA,UAAA,CAAA,GAAA,EAAA,EAAA,mBAAA,CAoBO,OApBP,EAoBO,EAAA,EAnBL,EAAA,eAAA,GAAA,EAAA,EAAA,UAAA,CAAA,GAAA,EAAA,EAAA,YAAA,EAAA,EAkBS,EAAA,MAAA,CAAA,EAAA,OAAA,EAAA,CAhBN,KAAM,EAAA,KACN,MAAO,EAAA,MACP,SAAU,EAAA,UAAY,EAAA,QACtB,KAAM,EAAA,MAAe,IAAA,GAAY,EAAA,MAAQ,IAAA,GACzC,QAAS,EAAA,QACT,SAAU,EAAA,UAAY,EAAA,UACtB,SAAU,EAAA,UAAS,YAAiB,IAAA,GACpC,OAAA,EAAK,EAAA,eAAA,CAAE,EAAA,KAAa,EACpB,GAAE,CAA2B,KAAA,CAAA,MAAA,EAAA,KAAa,CAAA,EAG1C,QAAK,AAAA,EAAA,KAAA,GAAE,EAAI,OAAA,CAEI,GAAA,EAAA,EAAA,YAAA,CAAA,CAAA,EAAA,CAAA,EAAA,CAAA,EAAA,MAAA,CAAe,KAAA,OAC7B,IAAA,EAAA,EAAA,QAAA,KAAoB,EAAA,EAApB,EAAA,WAAA,CAAoB,EAAA,OAAA,MAAA,CAAA,CAAA,oIAfP,EAAA,eAAL,CAAA,IAAV,EAAuB"}
|