forked from Mirrors/elk
feat: styling
This commit is contained in:
parent
8424b7b98b
commit
4adab40932
17 changed files with 330 additions and 36 deletions
1
.env.example
Normal file
1
.env.example
Normal file
|
@ -0,0 +1 @@
|
|||
MASTODON_TOKEN=
|
5
.vscode/settings.json
vendored
5
.vscode/settings.json
vendored
|
@ -6,5 +6,8 @@
|
|||
"files.associations": {
|
||||
"*.css": "postcss"
|
||||
},
|
||||
"editor.formatOnSave": false
|
||||
"editor.formatOnSave": false,
|
||||
"cSpell.words": [
|
||||
"Nuxtodon"
|
||||
]
|
||||
}
|
||||
|
|
2
app.vue
2
app.vue
|
@ -1,6 +1,6 @@
|
|||
<script setup>
|
||||
useHead({
|
||||
title: 'Vitesse Nuxt 3',
|
||||
title: 'Nuxtodon',
|
||||
link: [
|
||||
{
|
||||
rel: 'icon', type: 'image/png', href: '/nuxt.png',
|
||||
|
|
|
@ -7,18 +7,21 @@ const props = defineProps<{
|
|||
</script>
|
||||
|
||||
<template>
|
||||
<div flex justify-around px-2>
|
||||
<button flex gap-1 items-center>
|
||||
<div flex justify-between gap-4>
|
||||
<button flex gap-1 justify-center items-center p1 w-full rounded hover="bg-gray/10">
|
||||
<div i-ri:chat-3-line />
|
||||
<span>{{ post.replies_count }}</span>
|
||||
</button>
|
||||
<button flex gap-1 items-center>
|
||||
<button flex gap-1 justify-center items-center p1 w-full rounded hover="bg-gray/10">
|
||||
<div i-ri:repeat-fill />
|
||||
<span>{{ post.reblogs_count }}</span>
|
||||
</button>
|
||||
<button flex gap-1 items-center>
|
||||
<button flex gap-1 justify-center items-center p1 w-full rounded hover="bg-gray/10">
|
||||
<div i-ri:heart-3-line />
|
||||
<span>{{ post.favourites_count }}</span>
|
||||
</button>
|
||||
<button flex gap-1 justify-center items-center p1 w-full rounded hover="bg-gray/10">
|
||||
<div i-ri:more-2-fill />
|
||||
</button>
|
||||
</div>
|
||||
</template>
|
||||
|
|
29
components/PostBody.vue
Normal file
29
components/PostBody.vue
Normal file
|
@ -0,0 +1,29 @@
|
|||
<script setup lang="ts">
|
||||
import type { Post } from '~/api-client/types'
|
||||
|
||||
const props = defineProps<{
|
||||
post: Post
|
||||
}>()
|
||||
</script>
|
||||
|
||||
<template>
|
||||
<div class="post-body" v-html="sanitize(post.content)" />
|
||||
</template>
|
||||
|
||||
<style>
|
||||
.post-body a {
|
||||
--at-apply: text-primary hover:underline;
|
||||
}
|
||||
.post-body b {
|
||||
--at-apply: font-bold;
|
||||
}
|
||||
.post-body p {
|
||||
--at-apply: my-1;
|
||||
}
|
||||
.post-body a .invisible {
|
||||
--at-apply: hidden;
|
||||
}
|
||||
.post-body a .ellipsis {
|
||||
--at-apply: truncate overflow-hidden ws-nowrap;
|
||||
}
|
||||
</style>
|
|
@ -7,9 +7,9 @@ const props = defineProps<{
|
|||
</script>
|
||||
|
||||
<template>
|
||||
<div flex flex-col gap-4 mb-5>
|
||||
<NuxtLink flex flex-col gap-2 my-4 :to="`/${post.account.acct}/${post.id}`">
|
||||
<AccountInfo :account="post.account" />
|
||||
<div v-html="post.content" />
|
||||
<PostBody :post="post" />
|
||||
<PostActions :post="post" />
|
||||
</div>
|
||||
</NuxtLink>
|
||||
</template>
|
||||
|
|
11
composables/santize.ts
Normal file
11
composables/santize.ts
Normal file
|
@ -0,0 +1,11 @@
|
|||
import SanitizeHTML from 'sanitize-html'
|
||||
|
||||
export function sanitize(text: string) {
|
||||
return SanitizeHTML(text, {
|
||||
allowedAttributes: {
|
||||
a: ['href', 'name', 'target', 'class'],
|
||||
span: ['class'],
|
||||
img: ['src', 'srcset', 'alt', 'title', 'width', 'height', 'loading'],
|
||||
},
|
||||
})
|
||||
}
|
|
@ -1,15 +0,0 @@
|
|||
## Layouts
|
||||
|
||||
Vue components in this dir are used as layouts.
|
||||
|
||||
By default, `default.vue` will be used unless an alternative is specified in the route meta.
|
||||
|
||||
```html
|
||||
<script setup lang="ts">
|
||||
definePageMeta({
|
||||
layout: 'home',
|
||||
})
|
||||
</script>
|
||||
```
|
||||
|
||||
Learn more on https://v3.nuxtjs.org/guide/directory-structure/layouts
|
|
@ -1,5 +1,5 @@
|
|||
<template>
|
||||
<main class="py-20 px-10">
|
||||
<main class="py-10 px-10">
|
||||
<slot />
|
||||
</main>
|
||||
</template>
|
||||
|
|
|
@ -1,9 +0,0 @@
|
|||
<template>
|
||||
<main class="py-20 px-10 text-center">
|
||||
<slot />
|
||||
<Footer />
|
||||
<div class="mt-5 mx-auto text-center opacity-25 text-sm">
|
||||
[Home Layout]
|
||||
</div>
|
||||
</main>
|
||||
</template>
|
|
@ -11,6 +11,7 @@ export default defineNuxtConfig({
|
|||
},
|
||||
css: [
|
||||
'@unocss/reset/tailwind.css',
|
||||
'~/styles/vars.css',
|
||||
],
|
||||
colorMode: {
|
||||
classSuffix: '',
|
||||
|
|
|
@ -16,11 +16,14 @@
|
|||
"@iconify-json/twemoji": "^1.1.5",
|
||||
"@nuxtjs/color-mode": "^3.1.8",
|
||||
"@pinia/nuxt": "^0.4.3",
|
||||
"@types/sanitize-html": "^2.6.2",
|
||||
"@unocss/nuxt": "^0.46.5",
|
||||
"@vueuse/nuxt": "^9.5.0",
|
||||
"eslint": "^8.27.0",
|
||||
"masto": "^4.6.1",
|
||||
"nuxt": "^3.0.0-rc.13",
|
||||
"pinia": "^2.0.23",
|
||||
"sanitize-html": "^2.7.3",
|
||||
"typescript": "^4.8.4"
|
||||
}
|
||||
}
|
||||
|
|
13
pages/[user]/[post].vue
Normal file
13
pages/[user]/[post].vue
Normal file
|
@ -0,0 +1,13 @@
|
|||
<script setup lang="ts">
|
||||
const props = defineProps<{
|
||||
modelValue?: boolean
|
||||
}>()
|
||||
|
||||
const params = useRoute().params
|
||||
</script>
|
||||
|
||||
<template>
|
||||
<div>
|
||||
{{ params }}
|
||||
</div>
|
||||
</template>
|
|
@ -1,12 +1,12 @@
|
|||
<script setup lang="ts">
|
||||
const client = useClient()
|
||||
const posts = await client.getPublicTimeline()
|
||||
const { data: posts } = await useAsyncData(() => client.getPublicTimeline())
|
||||
</script>
|
||||
|
||||
<template>
|
||||
<div w-150>
|
||||
<template v-for="post in posts" :key="post.id">
|
||||
<PostCard :post="post" />
|
||||
<PostCard :post="post" border="t gray/10" pt-4 />
|
||||
</template>
|
||||
</div>
|
||||
</template>
|
||||
|
|
246
pnpm-lock.yaml
246
pnpm-lock.yaml
|
@ -7,11 +7,14 @@ specifiers:
|
|||
'@iconify-json/twemoji': ^1.1.5
|
||||
'@nuxtjs/color-mode': ^3.1.8
|
||||
'@pinia/nuxt': ^0.4.3
|
||||
'@types/sanitize-html': ^2.6.2
|
||||
'@unocss/nuxt': ^0.46.5
|
||||
'@vueuse/nuxt': ^9.5.0
|
||||
eslint: ^8.27.0
|
||||
masto: ^4.6.1
|
||||
nuxt: ^3.0.0-rc.13
|
||||
pinia: ^2.0.23
|
||||
sanitize-html: ^2.7.3
|
||||
typescript: ^4.8.4
|
||||
|
||||
devDependencies:
|
||||
|
@ -21,11 +24,14 @@ devDependencies:
|
|||
'@iconify-json/twemoji': 1.1.5
|
||||
'@nuxtjs/color-mode': 3.1.8
|
||||
'@pinia/nuxt': 0.4.3_typescript@4.8.4
|
||||
'@types/sanitize-html': 2.6.2
|
||||
'@unocss/nuxt': 0.46.5
|
||||
'@vueuse/nuxt': 9.5.0_nuxt@3.0.0-rc.13
|
||||
eslint: 8.27.0
|
||||
masto: 4.6.1
|
||||
nuxt: 3.0.0-rc.13_rmayb2veg2btbq6mbmnyivgasy
|
||||
pinia: 2.0.23_typescript@4.8.4
|
||||
sanitize-html: 2.7.3
|
||||
typescript: 4.8.4
|
||||
|
||||
packages:
|
||||
|
@ -1173,6 +1179,12 @@ packages:
|
|||
resolution: {integrity: sha512-60BCwRFOZCQhDncwQdxxeOEEkbc5dIMccYLwbxsS4TUNeVECQ/pBJ0j09mrHOl/JJvpRPGwO9SvE4nR2Nb/a4Q==}
|
||||
dev: true
|
||||
|
||||
/@types/sanitize-html/2.6.2:
|
||||
resolution: {integrity: sha512-7Lu2zMQnmHHQGKXVvCOhSziQMpa+R2hMHFefzbYoYMHeaXR0uXqNeOc3JeQQQ8/6Xa2Br/P1IQTLzV09xxAiUQ==}
|
||||
dependencies:
|
||||
htmlparser2: 6.1.0
|
||||
dev: true
|
||||
|
||||
/@types/semver/7.3.13:
|
||||
resolution: {integrity: sha512-21cFJr9z3g5dW8B0CVI9g2O9beqaThGQ6ZFBqHfwhzLDKUxaqTIy3vnfah/UPkfOiF2pLq+tGz+W8RyCskuslw==}
|
||||
dev: true
|
||||
|
@ -1917,6 +1929,10 @@ packages:
|
|||
resolution: {integrity: sha512-iAB+JbDEGXhyIUavoDl9WP/Jj106Kz9DEn1DPgYw5ruDn0e3Wgi3sKFm55sASdGBNOQB8F59d9qQ7deqrHA8wQ==}
|
||||
dev: true
|
||||
|
||||
/asynckit/0.4.0:
|
||||
resolution: {integrity: sha512-Oei9OH4tRh0YqU3GxhX79dM/mwVgvbZJaSNaRk+bshkj0S5cfHcgYakreBjrHwatXKbz+IoIdYLxrKim2MjW0Q==}
|
||||
dev: true
|
||||
|
||||
/autoprefixer/10.4.13_postcss@8.4.18:
|
||||
resolution: {integrity: sha512-49vKpMqcZYsJjwotvt4+h/BCjJVnhGwcLpDt5xkcaOG3eLrG/HUYLagrihYsQ+qrIBgIzX1Rw7a6L8I/ZA1Atg==}
|
||||
engines: {node: ^10 || ^12 || >=14}
|
||||
|
@ -1933,6 +1949,16 @@ packages:
|
|||
postcss-value-parser: 4.2.0
|
||||
dev: true
|
||||
|
||||
/axios/1.1.3:
|
||||
resolution: {integrity: sha512-00tXVRwKx/FZr/IDVFt4C+f9FYairX517WoGCL6dpOntqLkZofjhu43F/Xl44UOpqa+9sLFDrG/XAnFsUYgkDA==}
|
||||
dependencies:
|
||||
follow-redirects: 1.15.2
|
||||
form-data: 4.0.0
|
||||
proxy-from-env: 1.1.0
|
||||
transitivePeerDependencies:
|
||||
- debug
|
||||
dev: true
|
||||
|
||||
/balanced-match/1.0.2:
|
||||
resolution: {integrity: sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==}
|
||||
dev: true
|
||||
|
@ -2073,6 +2099,13 @@ packages:
|
|||
engines: {node: '>=6'}
|
||||
dev: true
|
||||
|
||||
/camel-case/4.1.2:
|
||||
resolution: {integrity: sha512-gxGWBrTT1JuMx6R+o5PTXMmUnhnVzLQ9SNutD4YqKtI6ap897t3tKECYla6gCWEkplXnlNybEkZg9GEGxKFCgw==}
|
||||
dependencies:
|
||||
pascal-case: 3.1.2
|
||||
tslib: 2.4.0
|
||||
dev: true
|
||||
|
||||
/camelcase/6.3.0:
|
||||
resolution: {integrity: sha512-Gmy6FhYlCY7uOElZUSbxo2UCDH8owEk996gkbrpsgGtrJLM3J7jGxl9Ic7Qwwj4ivOE5AWZWRMecDdF7hqGjFA==}
|
||||
engines: {node: '>=10'}
|
||||
|
@ -2095,6 +2128,14 @@ packages:
|
|||
resolution: {integrity: sha512-zBUoFU0ZcxpvSt9IU66dXVT/3ctO1cy4y9cscs1szkPlcWb6pasYM144GqrUygUbT+k7cmUCW61cvskjcv0enQ==}
|
||||
dev: true
|
||||
|
||||
/capital-case/1.0.4:
|
||||
resolution: {integrity: sha512-ds37W8CytHgwnhGGTi88pcPyR15qoNkOpYwmMMfnWqqWgESapLqvDx6huFjQ5vqWSn2Z06173XNA7LtMOeUh1A==}
|
||||
dependencies:
|
||||
no-case: 3.0.4
|
||||
tslib: 2.4.0
|
||||
upper-case-first: 2.0.2
|
||||
dev: true
|
||||
|
||||
/chalk/2.4.2:
|
||||
resolution: {integrity: sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==}
|
||||
engines: {node: '>=4'}
|
||||
|
@ -2117,6 +2158,23 @@ packages:
|
|||
engines: {node: ^12.17.0 || ^14.13 || >=16.0.0}
|
||||
dev: true
|
||||
|
||||
/change-case/4.1.2:
|
||||
resolution: {integrity: sha512-bSxY2ws9OtviILG1EiY5K7NNxkqg/JnRnFxLtKQ96JaviiIxi7djMrSd0ECT9AC+lttClmYwKw53BWpOMblo7A==}
|
||||
dependencies:
|
||||
camel-case: 4.1.2
|
||||
capital-case: 1.0.4
|
||||
constant-case: 3.0.4
|
||||
dot-case: 3.0.4
|
||||
header-case: 2.0.4
|
||||
no-case: 3.0.4
|
||||
param-case: 3.0.4
|
||||
pascal-case: 3.1.2
|
||||
path-case: 3.0.4
|
||||
sentence-case: 3.0.4
|
||||
snake-case: 3.0.4
|
||||
tslib: 2.4.0
|
||||
dev: true
|
||||
|
||||
/character-entities-legacy/1.1.4:
|
||||
resolution: {integrity: sha512-3Xnr+7ZFS1uxeiUDvV02wQ+QDbc55o97tIV5zHScSPJpcLm/r0DFPcoY3tYRp+VZukxuMeKgXYmsXQHO05zQeA==}
|
||||
dev: true
|
||||
|
@ -2246,6 +2304,13 @@ packages:
|
|||
resolution: {integrity: sha512-3tlv/dIP7FWvj3BsbHrGLJ6l/oKh1O3TcgBqMn+yyCagOxc23fyzDS6HypQbgxWbkpDnf52p1LuR4eWDQ/K9WQ==}
|
||||
dev: true
|
||||
|
||||
/combined-stream/1.0.8:
|
||||
resolution: {integrity: sha512-FQN4MRfuJeHf7cBbBMJFXhKSDq+2kAArBlmRBvcvFE5BB1HZKXtSFASDhdlz9zOYwxh8lDdnvmMOe/+5cdoEdg==}
|
||||
engines: {node: '>= 0.8'}
|
||||
dependencies:
|
||||
delayed-stream: 1.0.0
|
||||
dev: true
|
||||
|
||||
/commander/2.20.3:
|
||||
resolution: {integrity: sha512-GpVkmM8vF2vQUkj2LvZmD35JxeJOLCwJ9cUkugyk2nuhbv3+mJvpLYYt+0+USMxE+oj+ey/lJEnhZw75x/OMcQ==}
|
||||
dev: true
|
||||
|
@ -2286,6 +2351,14 @@ packages:
|
|||
resolution: {integrity: sha512-ty/fTekppD2fIwRvnZAVdeOiGd1c7YXEixbgJTNzqcxJWKQnjJ/V1bNEEE6hygpM3WjwHFUVK6HTjWSzV4a8sQ==}
|
||||
dev: true
|
||||
|
||||
/constant-case/3.0.4:
|
||||
resolution: {integrity: sha512-I2hSBi7Vvs7BEuJDr5dDHfzb/Ruj3FyvFyh7KLilAjNQw3Be+xgqUBA2W6scVEcL0hL1dwPRtIqEPVUCKkSsyQ==}
|
||||
dependencies:
|
||||
no-case: 3.0.4
|
||||
tslib: 2.4.0
|
||||
upper-case: 2.0.2
|
||||
dev: true
|
||||
|
||||
/convert-source-map/1.8.0:
|
||||
resolution: {integrity: sha512-+OQdjP49zViI/6i7nIJpA8rAl4sV/JdPfU9nZs3VqOwGIgizICvuN2ru6fMd+4llL0tar18UYJXfZ/TWtmhUjA==}
|
||||
dependencies:
|
||||
|
@ -2518,6 +2591,11 @@ packages:
|
|||
resolution: {integrity: sha512-pOFYRTIhoKujrmbTRhcW5lYQLBXw/dlTwfI8IguF1QCDJOcJzNH1w+YFjxqy6BAuJrClTy6MUE8q+oKJ2FLsIw==}
|
||||
dev: true
|
||||
|
||||
/delayed-stream/1.0.0:
|
||||
resolution: {integrity: sha512-ZySD7Nf91aLB0RxL4KGrKHBXl7Eds1DAmEdcoVawXnLD7SDhpNgtuII2aAkg7a7QS41jxPSZ17p4VdGnMHk3MQ==}
|
||||
engines: {node: '>=0.4.0'}
|
||||
dev: true
|
||||
|
||||
/delegates/1.0.0:
|
||||
resolution: {integrity: sha512-bd2L678uiWATM6m5Z1VzNCErI3jiGzt6HGY8OVICs40JQq/HALfbyNJmp0UDakEY4pMMaN0Ly5om/B1VI/+xfQ==}
|
||||
dev: true
|
||||
|
@ -2617,6 +2695,13 @@ packages:
|
|||
domhandler: 5.0.3
|
||||
dev: true
|
||||
|
||||
/dot-case/3.0.4:
|
||||
resolution: {integrity: sha512-Kv5nKlh6yRrdrGvxeJ2e5y2eRUpkUosIW4A2AS38zwSz27zu7ufDwQPi5Jhs3XAlGNetl3bmnGhQsMtkKJnj3w==}
|
||||
dependencies:
|
||||
no-case: 3.0.4
|
||||
tslib: 2.4.0
|
||||
dev: true
|
||||
|
||||
/dot-prop/7.2.0:
|
||||
resolution: {integrity: sha512-Ol/IPXUARn9CSbkrdV4VJo7uCy1I3VuSiWCaFSg+8BdUOzF9n3jefIpcgAydvUZbTdEBZs2vEiTiS9m61ssiDA==}
|
||||
engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0}
|
||||
|
@ -3494,6 +3579,24 @@ packages:
|
|||
optional: true
|
||||
dev: true
|
||||
|
||||
/form-data/2.5.1:
|
||||
resolution: {integrity: sha512-m21N3WOmEEURgk6B9GLOE4RuWOFf28Lhh9qGYeNlGq4VDXUlJy2th2slBNU8Gp8EzloYZOibZJ7t5ecIrFSjVA==}
|
||||
engines: {node: '>= 0.12'}
|
||||
dependencies:
|
||||
asynckit: 0.4.0
|
||||
combined-stream: 1.0.8
|
||||
mime-types: 2.1.35
|
||||
dev: true
|
||||
|
||||
/form-data/4.0.0:
|
||||
resolution: {integrity: sha512-ETEklSGi5t0QMZuiXoA/Q6vcnxcLQP5vdugSpuAyi6SVGi2clPPp+xgEhuMaHC+zGgn31Kd235W35f7Hykkaww==}
|
||||
engines: {node: '>= 6'}
|
||||
dependencies:
|
||||
asynckit: 0.4.0
|
||||
combined-stream: 1.0.8
|
||||
mime-types: 2.1.35
|
||||
dev: true
|
||||
|
||||
/formdata-polyfill/4.0.10:
|
||||
resolution: {integrity: sha512-buewHzMvYL29jdeQTVILecSaZKnt/RJWjoZCF5OW60Z67/GmSLBkOFM7qh1PI3zFNtJbaZL5eQu1vLfazOwj4g==}
|
||||
engines: {node: '>=12.20.0'}
|
||||
|
@ -3797,6 +3900,13 @@ packages:
|
|||
resolution: {integrity: sha512-WdZTbAByD+pHfl/g9QSsBIIwy8IT+EsPiKDs0KNX+zSHhdDLFKdZu0BQHljvO+0QI/BasbMSUa8wYNCZTvhslg==}
|
||||
dev: true
|
||||
|
||||
/header-case/2.0.4:
|
||||
resolution: {integrity: sha512-H/vuk5TEEVZwrR0lp2zed9OCo1uAILMlx0JEMgC26rzyJJ3N1v6XkwHHXJQdR2doSjcGPM6OKPYoJgf0plJ11Q==}
|
||||
dependencies:
|
||||
capital-case: 1.0.4
|
||||
tslib: 2.4.0
|
||||
dev: true
|
||||
|
||||
/hookable/5.4.1:
|
||||
resolution: {integrity: sha512-i808BglQ1OuSIcgPSZoWsDapCMLXKe5wLS6XZvIXpaBWdWLUZARM8vOLayu6cXewj5TSbaZaMzKnq+pRnfscEQ==}
|
||||
dev: true
|
||||
|
@ -3810,6 +3920,15 @@ packages:
|
|||
engines: {node: '>=8'}
|
||||
dev: true
|
||||
|
||||
/htmlparser2/6.1.0:
|
||||
resolution: {integrity: sha512-gyyPk6rgonLFEDGoeRgQNaEUvdJ4ktTmmUh/h2t7s+M8oPpIPxgNACWa+6ESR57kXstwqPiCut0V8NRpcwgU7A==}
|
||||
dependencies:
|
||||
domelementtype: 2.3.0
|
||||
domhandler: 4.3.1
|
||||
domutils: 2.8.0
|
||||
entities: 2.2.0
|
||||
dev: true
|
||||
|
||||
/htmlparser2/8.0.1:
|
||||
resolution: {integrity: sha512-4lVbmc1diZC7GUJQtRQ5yBAeUCL1exyMwmForWkRLnwyzWBFxN633SALPMGYaWZvKe9j1pRZJpauvmxENSp/EA==}
|
||||
dependencies:
|
||||
|
@ -4097,6 +4216,11 @@ packages:
|
|||
engines: {node: '>=8'}
|
||||
dev: true
|
||||
|
||||
/is-plain-object/5.0.0:
|
||||
resolution: {integrity: sha512-VRSzKkbMm5jMDoKLbltAkFQ5Qr7VDiTFGXxYFXXowVj387GeGNOCsOH6Msy00SGZ3Fp84b1Naa1psqgcCIEP5Q==}
|
||||
engines: {node: '>=0.10.0'}
|
||||
dev: true
|
||||
|
||||
/is-primitive/3.0.1:
|
||||
resolution: {integrity: sha512-GljRxhWvlCNRfZyORiH77FwdFwGcMO620o37EOYC0ORWdq+WYNVqW0w2Juzew4M+L81l6/QS3t5gkkihyRqv9w==}
|
||||
engines: {node: '>=0.10.0'}
|
||||
|
@ -4177,6 +4301,20 @@ packages:
|
|||
resolution: {integrity: sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw==}
|
||||
dev: true
|
||||
|
||||
/isomorphic-form-data/2.0.0:
|
||||
resolution: {integrity: sha512-TYgVnXWeESVmQSg4GLVbalmQ+B4NPi/H4eWxqALKj63KsUrcu301YDjBqaOw3h+cbak7Na4Xyps3BiptHtxTfg==}
|
||||
dependencies:
|
||||
form-data: 2.5.1
|
||||
dev: true
|
||||
|
||||
/isomorphic-ws/5.0.0_ws@8.9.0:
|
||||
resolution: {integrity: sha512-muId7Zzn9ywDsyXgTIafTry2sV3nySZeUDe6YedVd1Hvuuep5AsIlqK+XefWpYTyJG5e503F2xIuT2lcU6rCSw==}
|
||||
peerDependencies:
|
||||
ws: '*'
|
||||
dependencies:
|
||||
ws: 8.9.0
|
||||
dev: true
|
||||
|
||||
/jest-worker/26.6.2:
|
||||
resolution: {integrity: sha512-KWYVV1c4i+jbMpaBC+U++4Va0cp8OisU185o73T1vo99hqi7w8tSJfUXYswwqqrjzwxa6KpRK54WhPvwf5w6PQ==}
|
||||
engines: {node: '>= 10.13.0'}
|
||||
|
@ -4401,6 +4539,12 @@ packages:
|
|||
is-unicode-supported: 1.3.0
|
||||
dev: true
|
||||
|
||||
/lower-case/2.0.2:
|
||||
resolution: {integrity: sha512-7fm3l3NAF9WfN6W3JOmf5drwpVqX78JtoGJ3A6W0a6ZnldM41w2fV5D490psKFTpMds8TJse/eHLFFsNHHjHgg==}
|
||||
dependencies:
|
||||
tslib: 2.4.0
|
||||
dev: true
|
||||
|
||||
/lru-cache/6.0.0:
|
||||
resolution: {integrity: sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==}
|
||||
engines: {node: '>=10'}
|
||||
|
@ -4428,6 +4572,22 @@ packages:
|
|||
semver: 6.3.0
|
||||
dev: true
|
||||
|
||||
/masto/4.6.1:
|
||||
resolution: {integrity: sha512-l7n50KWR+AXcf27Q4GUE5SF+KSy53mikNo/FRJgDd5tJ112BHQjrGCm+cdJcwFsIoIa52DPS1EAHV5RwVnHOIw==}
|
||||
dependencies:
|
||||
axios: 1.1.3
|
||||
change-case: 4.1.2
|
||||
eventemitter3: 4.0.7
|
||||
isomorphic-form-data: 2.0.0
|
||||
isomorphic-ws: 5.0.0_ws@8.9.0
|
||||
semver: 7.3.8
|
||||
ws: 8.9.0
|
||||
transitivePeerDependencies:
|
||||
- bufferutil
|
||||
- debug
|
||||
- utf-8-validate
|
||||
dev: true
|
||||
|
||||
/mdast-util-from-markdown/0.8.5:
|
||||
resolution: {integrity: sha512-2hkTXtYYnr+NubD/g6KGBS/0mFmBcifAsI0yIWRiRo0PjVs6SSOSOdtzbp6kSGnShDN6G5aWZpKQ2lWRy27mWQ==}
|
||||
dependencies:
|
||||
|
@ -4486,6 +4646,18 @@ packages:
|
|||
picomatch: 2.3.1
|
||||
dev: true
|
||||
|
||||
/mime-db/1.52.0:
|
||||
resolution: {integrity: sha512-sPU4uV7dYlvtWJxwwxHD0PuihVNiE7TyAbQ5SWxDCB9mUYvOgroQOwYQQOKPJ8CIbE+1ETVlOoK1UC2nU3gYvg==}
|
||||
engines: {node: '>= 0.6'}
|
||||
dev: true
|
||||
|
||||
/mime-types/2.1.35:
|
||||
resolution: {integrity: sha512-ZDY+bPm5zTTF+YpCrAU9nK0UgICYPT0QtT1NZWFv4s++TNkcgVaT0g6+4R2uI4MjQjzysHB1zxuWL50hzaeXiw==}
|
||||
engines: {node: '>= 0.6'}
|
||||
dependencies:
|
||||
mime-db: 1.52.0
|
||||
dev: true
|
||||
|
||||
/mime/1.6.0:
|
||||
resolution: {integrity: sha512-x0Vn8spI+wuJ1O6S7gnbaQg8Pxh4NNHb7KSINmEWKiPE4RKOplvijn+NkmYmmRgP68mc70j2EbeTFRsrswaQeg==}
|
||||
engines: {node: '>=4'}
|
||||
|
@ -4709,6 +4881,13 @@ packages:
|
|||
- utf-8-validate
|
||||
dev: true
|
||||
|
||||
/no-case/3.0.4:
|
||||
resolution: {integrity: sha512-fgAN3jGAh+RoxUGZHTSOLJIqUc2wmoBwGR4tbpNAKmmovFoWq0OdRkb0VkldReO2a2iBT/OEulG9XSUc10r3zg==}
|
||||
dependencies:
|
||||
lower-case: 2.0.2
|
||||
tslib: 2.4.0
|
||||
dev: true
|
||||
|
||||
/node-domexception/1.0.0:
|
||||
resolution: {integrity: sha512-/jKZoMpw0F8GRwl4/eLROPA3cfcXtLApP0QzLmUT/HuPCZWyB7IY9ZrMeKw2O/nFIqPQB3PVM9aYm0F312AXDQ==}
|
||||
engines: {node: '>=10.5.0'}
|
||||
|
@ -5022,6 +5201,13 @@ packages:
|
|||
engines: {node: '>=6'}
|
||||
dev: true
|
||||
|
||||
/param-case/3.0.4:
|
||||
resolution: {integrity: sha512-RXlj7zCYokReqWpOPH9oYivUzLYZ5vAPIfEmCTNViosC78F8F0H9y7T7gG2M39ymgutxF5gcFEsyZQSph9Bp3A==}
|
||||
dependencies:
|
||||
dot-case: 3.0.4
|
||||
tslib: 2.4.0
|
||||
dev: true
|
||||
|
||||
/parent-module/1.0.1:
|
||||
resolution: {integrity: sha512-GQ2EWRpQV8/o+Aw8YqtfZZPfNRWZYkbidE9k5rpl/hC3vtHHBfGm2Ifi6qWV+coDGkrUKZAxE3Lot5kcsRlh+g==}
|
||||
engines: {node: '>=6'}
|
||||
|
@ -5064,6 +5250,10 @@ packages:
|
|||
protocols: 2.0.1
|
||||
dev: true
|
||||
|
||||
/parse-srcset/1.0.2:
|
||||
resolution: {integrity: sha512-/2qh0lav6CmI15FzA3i/2Bzk2zCgQhGMkvhOhKNcBVQ1ldgpbfiNTVslmooUmWJcADi1f1kIeynbDRVzNlfR6Q==}
|
||||
dev: true
|
||||
|
||||
/parse-url/8.1.0:
|
||||
resolution: {integrity: sha512-xDvOoLU5XRrcOZvnI6b8zA6n9O9ejNk/GExuz1yBuWUGn9KA97GI6HTs6u02wKara1CeVmZhH+0TZFdWScR89w==}
|
||||
dependencies:
|
||||
|
@ -5075,6 +5265,20 @@ packages:
|
|||
engines: {node: '>= 0.8'}
|
||||
dev: true
|
||||
|
||||
/pascal-case/3.1.2:
|
||||
resolution: {integrity: sha512-uWlGT3YSnK9x3BQJaOdcZwrnV6hPpd8jFH1/ucpiLRPh/2zCVJKS19E4GvYHvaCcACn3foXZ0cLB9Wrx1KGe5g==}
|
||||
dependencies:
|
||||
no-case: 3.0.4
|
||||
tslib: 2.4.0
|
||||
dev: true
|
||||
|
||||
/path-case/3.0.4:
|
||||
resolution: {integrity: sha512-qO4qCFjXqVTrcbPt/hQfhTQ+VhFsqNKOPtytgNKkKxSoEp3XPUQ8ObFuePylOIok5gjn69ry8XiULxCwot3Wfg==}
|
||||
dependencies:
|
||||
dot-case: 3.0.4
|
||||
tslib: 2.4.0
|
||||
dev: true
|
||||
|
||||
/path-exists/4.0.0:
|
||||
resolution: {integrity: sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==}
|
||||
engines: {node: '>=8'}
|
||||
|
@ -5519,6 +5723,10 @@ packages:
|
|||
resolution: {integrity: sha512-/XJ368cyBJ7fzLMwLKv1e4vLxOju2MNAIokcr7meSaNcVbWz/CPcW22cP04mwxOErdA5mwjA8Q6w/cdAQxVn7Q==}
|
||||
dev: true
|
||||
|
||||
/proxy-from-env/1.1.0:
|
||||
resolution: {integrity: sha512-D+zkORCbA9f1tdWRK0RaCR3GPv50cMxcrz4X8k5LTSUD1Dkw47mKJEZQNunItRTkWwgtaUSo1RVFRIG9ZXiFYg==}
|
||||
dev: true
|
||||
|
||||
/prr/1.0.1:
|
||||
resolution: {integrity: sha512-yPw4Sng1gWghHQWj0B3ZggWUm4qVbPwPFcRG8KyxiU7J2OHFSoEHKS+EZ3fv5l1t9CyCiop6l/ZYeWbrgoQejw==}
|
||||
dev: true
|
||||
|
@ -5778,6 +5986,17 @@ packages:
|
|||
resolution: {integrity: sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==}
|
||||
dev: true
|
||||
|
||||
/sanitize-html/2.7.3:
|
||||
resolution: {integrity: sha512-jMaHG29ak4miiJ8wgqA1849iInqORgNv7SLfSw9LtfOhEUQ1C0YHKH73R+hgyufBW9ZFeJrb057k9hjlfBCVlw==}
|
||||
dependencies:
|
||||
deepmerge: 4.2.2
|
||||
escape-string-regexp: 4.0.0
|
||||
htmlparser2: 6.1.0
|
||||
is-plain-object: 5.0.0
|
||||
parse-srcset: 1.0.2
|
||||
postcss: 8.4.18
|
||||
dev: true
|
||||
|
||||
/scule/0.3.2:
|
||||
resolution: {integrity: sha512-zIvPdjOH8fv8CgrPT5eqtxHQXmPNnV/vHJYffZhE43KZkvULvpCTvOt1HPlFaCZx287INL9qaqrZg34e8NgI4g==}
|
||||
dev: true
|
||||
|
@ -5829,6 +6048,14 @@ packages:
|
|||
- supports-color
|
||||
dev: true
|
||||
|
||||
/sentence-case/3.0.4:
|
||||
resolution: {integrity: sha512-8LS0JInaQMCRoQ7YUytAo/xUu5W2XnQxV2HI/6uM6U7CITS1RqPElr30V6uIqyMKM9lJGRVFy5/4CuzcixNYSg==}
|
||||
dependencies:
|
||||
no-case: 3.0.4
|
||||
tslib: 2.4.0
|
||||
upper-case-first: 2.0.2
|
||||
dev: true
|
||||
|
||||
/serialize-javascript/4.0.0:
|
||||
resolution: {integrity: sha512-GaNA54380uFefWghODBWEGisLZFj00nS5ACs6yHa9nLqlLpVLO8ChDGeKRjZnV4Nh4n0Qi7nhYZD/9fCPzEqkw==}
|
||||
dependencies:
|
||||
|
@ -5904,6 +6131,13 @@ packages:
|
|||
engines: {node: '>=12'}
|
||||
dev: true
|
||||
|
||||
/snake-case/3.0.4:
|
||||
resolution: {integrity: sha512-LAOh4z89bGQvl9pFfNF8V146i7o7/CqFPbqzYgP+yYzDIDeS9HaNFtXABamRW+AQzEVODcvE79ljJ+8a9YSdMg==}
|
||||
dependencies:
|
||||
dot-case: 3.0.4
|
||||
tslib: 2.4.0
|
||||
dev: true
|
||||
|
||||
/source-map-js/1.0.2:
|
||||
resolution: {integrity: sha512-R0XvVJ9WusLiqTCEiGCmICCMplcCkIwwR11mOSD9CR5u+IXYdiseeEuXCVAjS54zqwkLcPNnmU4OeJ6tUrWhDw==}
|
||||
engines: {node: '>=0.10.0'}
|
||||
|
@ -6503,6 +6737,18 @@ packages:
|
|||
picocolors: 1.0.0
|
||||
dev: true
|
||||
|
||||
/upper-case-first/2.0.2:
|
||||
resolution: {integrity: sha512-514ppYHBaKwfJRK/pNC6c/OxfGa0obSnAl106u97Ed0I625Nin96KAjttZF6ZL3e1XLtphxnqrOi9iWgm+u+bg==}
|
||||
dependencies:
|
||||
tslib: 2.4.0
|
||||
dev: true
|
||||
|
||||
/upper-case/2.0.2:
|
||||
resolution: {integrity: sha512-KgdgDGJt2TpuwBUIjgG6lzw2GWFRCW9Qkfkiv0DxqHHLYJHmtmdUIKcZd8rHgFSjopVTlw6ggzCm1b8MFQwikg==}
|
||||
dependencies:
|
||||
tslib: 2.4.0
|
||||
dev: true
|
||||
|
||||
/uri-js/4.4.1:
|
||||
resolution: {integrity: sha512-7rKUyy33Q1yc98pQ1DAmLtwX109F7TIfWlW1Ydo8Wl1ii1SeHieeh0HHfPeL2fMXK6z0s8ecKs9frCuLJvndBg==}
|
||||
dependencies:
|
||||
|
|
3
styles/vars.css
Normal file
3
styles/vars.css
Normal file
|
@ -0,0 +1,3 @@
|
|||
:root {
|
||||
--color-primary: #53b3cb;
|
||||
}
|
|
@ -31,4 +31,9 @@ export default defineConfig({
|
|||
transformerDirectives(),
|
||||
transformerVariantGroup(),
|
||||
],
|
||||
theme: {
|
||||
colors: {
|
||||
primary: 'var(--color-primary)',
|
||||
},
|
||||
},
|
||||
})
|
||||
|
|
Loading…
Reference in a new issue