feat: build up side bar

finxol.io 7f6d3dff c846d997

verified
+2
astro.config.mjs
···
// @ts-check
import { defineConfig } from "astro/config";
import deno from "@deno/astro-adapter";
+
import icon from "astro-icon";
// https://astro.build/config
export default defineConfig({
site: "https://staging.colinozanne.fr",
output: "server",
adapter: deno(),
+
integrations: [icon()],
i18n: {
locales: ["en", "fr"],
defaultLocale: "fr",
+645 -3
deno.lock
···
{
"version": "5",
"specifiers": {
+
"npm:@astrojs/node@^9.5.0": "9.5.0_astro@5.15.3__vite@6.4.1___picomatch@4.0.3__zod@3.25.76",
"npm:@deno/astro-adapter@~0.3.2": "0.3.2_astro@5.15.3__vite@6.4.1___picomatch@4.0.3__zod@3.25.76",
+
"npm:@evilmartians/harmony@^1.4.0": "1.4.0",
+
"npm:@iconify-json/lucide@^1.2.73": "1.2.73",
+
"npm:@iconify-json/pixel@^1.2.1": "1.2.1",
+
"npm:astro-icon@^1.1.5": "1.1.5",
"npm:astro@^5.15.3": "5.15.3_vite@6.4.1__picomatch@4.0.3_zod@3.25.76"
},
"npm": {
+
"@antfu/install-pkg@1.1.0": {
+
"integrity": "sha512-MGQsmw10ZyI+EJo45CdSER4zEb+p31LpDAFp2Z3gkSd1yqVZGi0Ebx++YTEMonJy4oChEMLsxZ64j8FH6sSqtQ==",
+
"dependencies": [
+
"package-manager-detector",
+
"tinyexec"
+
]
+
},
+
"@antfu/utils@8.1.1": {
+
"integrity": "sha512-Mex9nXf9vR6AhcXmMrlz/HVgYYZpVGJ6YlPgwl7UnaFpnshXs6EK/oa5Gpf3CzENMjkvEx2tQtntGnb7UtSTOQ=="
+
},
"@astrojs/compiler@2.13.0": {
"integrity": "sha512-mqVORhUJViA28fwHYaWmsXSzLO9osbdZ5ImUfxBarqsYdMlPbqAqGJCxsNzvppp1BEzc1mJNjOVvQqeDN8Vspw=="
},
···
"unist-util-visit",
"unist-util-visit-parents",
"vfile"
+
]
+
},
+
"@astrojs/node@9.5.0_astro@5.15.3__vite@6.4.1___picomatch@4.0.3__zod@3.25.76": {
+
"integrity": "sha512-x1whLIatmCefaqJA8FjfI+P6FStF+bqmmrib0OUGM1M3cZhAXKLgPx6UF2AzQ3JgpXgCWYM24MHtraPvZhhyLQ==",
+
"dependencies": [
+
"@astrojs/internal-helpers",
+
"astro",
+
"send",
+
"server-destroy"
]
},
"@astrojs/prism@3.3.0": {
···
"os": ["win32"],
"cpu": ["x64"]
},
+
"@evilmartians/harmony@1.4.0": {
+
"integrity": "sha512-NgKkhTnQOSE07IvDxHHPLzFF81TaWU1Ir5nmaRM+PebXAol5vNXnk+Lp2JPgj1P/PBTu6lzSWckSpNjC19XSUw=="
+
},
+
"@iconify-json/lucide@1.2.73": {
+
"integrity": "sha512-++HFkqDNu4jqG5+vYT+OcVj9OiuPCw9wQuh8G5QWQnBRSJ9eKwSStiU8ORgOoK07xJsm/0VIHySMniXUUXP9Gw==",
+
"dependencies": [
+
"@iconify/types"
+
]
+
},
+
"@iconify-json/pixel@1.2.1": {
+
"integrity": "sha512-XwzURAMyZ/BJKeygh4PloKo9cUvS8GfcePueApzwrePvmwCwYT8SC581AQLxJHJl2FZjGWmUMVQ2FN3b9/cYyw==",
+
"dependencies": [
+
"@iconify/types"
+
]
+
},
+
"@iconify/tools@4.1.4": {
+
"integrity": "sha512-s6BcNUcCxQ3S6cvhlsoWzOuBt8qKXdVyXB9rT57uSJ/ARHD7dVM43+5ERBWn3tmkMWXeJ/s9DPVc3dUasayzeA==",
+
"dependencies": [
+
"@iconify/types",
+
"@iconify/utils",
+
"@types/tar",
+
"axios",
+
"cheerio",
+
"domhandler",
+
"extract-zip",
+
"local-pkg@0.5.1",
+
"pathe@1.1.2",
+
"svgo",
+
"tar"
+
]
+
},
+
"@iconify/types@2.0.0": {
+
"integrity": "sha512-+wluvCrRhXrhyOmRDJ3q8mux9JkKy5SJ/v8ol2tu4FVjyYvtEzkc/3pK15ET6RKg4b4w4BmTk1+gsCUhf21Ykg=="
+
},
+
"@iconify/utils@2.3.0": {
+
"integrity": "sha512-GmQ78prtwYW6EtzXRU1rY+KwOKfz32PD7iJh6Iyqw68GiKuoZ2A6pRtzWONz5VQJbp50mEjXh/7NkumtrAgRKA==",
+
"dependencies": [
+
"@antfu/install-pkg",
+
"@antfu/utils",
+
"@iconify/types",
+
"debug",
+
"globals",
+
"kolorist",
+
"local-pkg@1.1.2",
+
"mlly"
+
]
+
},
"@img/colour@1.0.0": {
"integrity": "sha512-A5P/LfWGFSl6nsckYtjw9da+19jB8hkJ6ACTGcDfEJ0aE+l2n2El7dsVM7UVHZQ9s2lmYMWlrS21YLy2IR1LUw=="
},
···
"tslib"
]
},
+
"@trysound/sax@0.2.0": {
+
"integrity": "sha512-L7z9BgrNEcYyUYtF+HaEfiS5ebkh9jXqbszz7pC0hRBPaatV0XjSD3+eHrpqFemQfgwiFF0QPIarnIihIDn7OA=="
+
},
"@types/debug@4.1.12": {
"integrity": "sha512-vIChWdVG3LG1SMxEvI/AK+FWJthlrqlTu7fbrlywTkkaONwk/UAGaULXRlf8vkzFBLVm0zkMdCquhL5aOjhXPQ==",
"dependencies": [
···
"integrity": "sha512-3xyG3pMCq3oYCNg7/ZP+E1ooTaGB4cG8JWRsqqOYQdbWNY4zbaV0Ennrd7stjiJEFZCaybcIgpTjJWHRfBSIDw==",
"dependencies": [
"undici-types"
+
]
+
},
+
"@types/tar@6.1.13": {
+
"integrity": "sha512-IznnlmU5f4WcGTh2ltRu/Ijpmk8wiWXfF0VA4s+HPjHZgvFggk1YaIkbo5krX/zUCzWF8N/l4+W/LNxnvAJ8nw==",
+
"dependencies": [
+
"@types/node",
+
"minipass@4.2.8"
]
},
"@types/unist@3.0.3": {
"integrity": "sha512-ko/gIFJRv177XgZsZcBwnqJN5x/Gien8qNOn0D5bQU/zAzVf9Zt3BlcUiLqhV9y4ARk0GbT3tnUiPNgnTXzc/Q=="
},
+
"@types/yauzl@2.10.3": {
+
"integrity": "sha512-oJoftv0LSuaDZE3Le4DbKX+KS9G36NzOeSap90UIK0yMA/NhKJhqlSGtNDORNRaIbQfzjXDrQa0ytJ6mNRGz/Q==",
+
"dependencies": [
+
"@types/node"
+
]
+
},
"@ungap/structured-clone@1.3.0": {
"integrity": "sha512-WmoN8qaIAo7WTYWbAZuG8PYEhn5fkz7dZrqTBZ7dtt//lL2Gwms1IcnQ5yHqjDfX8Ft5j4YzDM23f87zBfDe9g=="
},
···
},
"array-iterate@2.0.1": {
"integrity": "sha512-I1jXZMjAgCMmxT4qxXfPXa6SthSoE8h6gkSI9BGGNv8mP8G/v0blc+qFnZu6K42vTOiuME596QaLO0TP3Lk0xg=="
+
},
+
"astro-icon@1.1.5": {
+
"integrity": "sha512-CJYS5nWOw9jz4RpGWmzNQY7D0y2ZZacH7atL2K9DeJXJVaz7/5WrxeyIxO8KASk1jCM96Q4LjRx/F3R+InjJrw==",
+
"dependencies": [
+
"@iconify/tools",
+
"@iconify/types",
+
"@iconify/utils"
+
]
},
"astro@5.15.3_vite@6.4.1__picomatch@4.0.3_zod@3.25.76": {
"integrity": "sha512-wUO/isJrcUoduRoKacKB9jpO6TxTlPV1zw8UqQx39jSNY7z9IxusJAiib3AiNvqK+dCWhqXx+OnExCCwELmcUw==",
···
],
"bin": true
},
+
"asynckit@0.4.0": {
+
"integrity": "sha512-Oei9OH4tRh0YqU3GxhX79dM/mwVgvbZJaSNaRk+bshkj0S5cfHcgYakreBjrHwatXKbz+IoIdYLxrKim2MjW0Q=="
+
},
+
"axios@1.13.2": {
+
"integrity": "sha512-VPk9ebNqPcy5lRGuSlKx752IlDatOjT9paPlm8A7yOuW2Fbvp4X3JznJtT4f0GzGLLiWE9W8onz51SqLYwzGaA==",
+
"dependencies": [
+
"follow-redirects",
+
"form-data",
+
"proxy-from-env"
+
]
+
},
"axobject-query@4.1.0": {
"integrity": "sha512-qIj0G9wZbMGNLjLmg1PT6v2mE9AH2zlnADJD/2tC6E00hgmhUOfEB6greHPAfLRSufHqROIUTkw6E+M3lH0PTQ=="
},
···
"base64-js@1.5.1": {
"integrity": "sha512-AKpaYlHn8t4SVbOHCy+b5+KKgvR4vrsD8vbvrbiQJps7fKDTkjkDry6ji0rUJjC0kzbNePLwzxq8iypo41qeWA=="
},
+
"boolbase@1.0.0": {
+
"integrity": "sha512-JZOSA7Mo9sNGB8+UjSgzdLtokWAky1zbztM3WRLCbZ70/3cTANmQmOdR7y2g+J0e2WXywy1yS468tY+IruqEww=="
+
},
"boxen@8.0.1": {
"integrity": "sha512-F3PH5k5juxom4xktynS7MoFY+NUWH5LC4CnH11YB8NPew+HLpmBLCybSAEyb2F+4pRXhuhWqFesoQd6DAyc2hw==",
"dependencies": [
···
"base64-js"
]
},
+
"buffer-crc32@0.2.13": {
+
"integrity": "sha512-VO9Ht/+p3SN7SKWqcrgEzjGbRSJYTx+Q1pTQC0wrWqHx0vpJraQ6GtHx8tvcg1rlK1byhU5gccxgOgj7B0TDkQ=="
+
},
+
"call-bind-apply-helpers@1.0.2": {
+
"integrity": "sha512-Sp1ablJ0ivDkSzjcaJdxEunN5/XvksFJ2sMBFfq6x0ryhQV/2b/KwFe21cMpmHtPOSij8K99/wSfoEuTObmuMQ==",
+
"dependencies": [
+
"es-errors",
+
"function-bind"
+
]
+
},
"camelcase@8.0.0": {
"integrity": "sha512-8WB3Jcas3swSvjIeA2yvCJ+Miyz5l1ZmB6HFb9R1317dt9LCQoswg/BGrmAmkWVEszSrrg4RwmO46qIm2OEnSA=="
},
···
"character-entities@2.0.2": {
"integrity": "sha512-shx7oQ0Awen/BRIdkjkvz54PnEEI/EjwXDSIZp86/KKdbafHh1Df/RYGBhn4hbe2+uKC9FnT5UCEdyPz3ai9hQ=="
},
+
"cheerio-select@2.1.0": {
+
"integrity": "sha512-9v9kG0LvzrlcungtnJtpGNxY+fzECQKhK4EGJX2vByejiMX84MFNQw4UxPJl3bFbTMw+Dfs37XaIkCwTZfLh4g==",
+
"dependencies": [
+
"boolbase",
+
"css-select",
+
"css-what",
+
"domelementtype",
+
"domhandler",
+
"domutils"
+
]
+
},
+
"cheerio@1.0.0": {
+
"integrity": "sha512-quS9HgjQpdaXOvsZz82Oz7uxtXiy6UIsIQcpBj7HRw2M63Skasm9qlDocAM7jNuaxdhpPU7c4kJN+gA5MCu4ww==",
+
"dependencies": [
+
"cheerio-select",
+
"dom-serializer",
+
"domhandler",
+
"domutils",
+
"encoding-sniffer",
+
"htmlparser2",
+
"parse5",
+
"parse5-htmlparser2-tree-adapter",
+
"parse5-parser-stream",
+
"undici",
+
"whatwg-mimetype"
+
]
+
},
"chokidar@4.0.3": {
"integrity": "sha512-Qgzu8kfBvo+cA4962jnP1KkS6Dop5NS6g7R5LFYJr4b8Ub94PPQXUksCw9PvXoeXPRRddRNC5C1JQUR2SMGtnA==",
"dependencies": [
"readdirp"
]
},
+
"chownr@2.0.0": {
+
"integrity": "sha512-bIomtDF5KGpdogkLd9VspvFzk9KfpyyGlS8YFVZl7TGPBHL5snIOnxeshwVgPteQ9b4Eydl+pVbIyE1DcvCWgQ=="
+
},
"ci-info@4.3.1": {
"integrity": "sha512-Wdy2Igu8OcBpI2pZePZ5oWjPC38tmDVx5WKUXKwlLYkA0ozo85sLsLvkBbBn/sZaSCMFOGZJ14fvW9t5/d7kdA=="
},
···
"clsx@2.1.1": {
"integrity": "sha512-eYm0QWBtUrBWZWG0d386OGAw16Z995PiOVo2B7bjWSbHedGl5e0ZWaq65kOGgUSNesEIDkB9ISbTg/JK9dhCZA=="
},
+
"combined-stream@1.0.8": {
+
"integrity": "sha512-FQN4MRfuJeHf7cBbBMJFXhKSDq+2kAArBlmRBvcvFE5BB1HZKXtSFASDhdlz9zOYwxh8lDdnvmMOe/+5cdoEdg==",
+
"dependencies": [
+
"delayed-stream"
+
]
+
},
"comma-separated-tokens@2.0.3": {
"integrity": "sha512-Fu4hJdvzeylCfQPp9SGWidpzrMs7tTrlu6Vb8XGaRGck8QSNZJJp538Wrb60Lax4fPwR64ViY468OIUTbRlGZg=="
},
+
"commander@7.2.0": {
+
"integrity": "sha512-QrWXB+ZQSVPmIWIhtEO9H+gwHaMGYiF5ChvoJ+K9ZGHG/sVsa6yiesAD1GC/x46sET00Xlwo1u49RVVVzvcSkw=="
+
},
"common-ancestor-path@1.0.1": {
"integrity": "sha512-L3sHRo1pXXEqX8VU28kfgUY+YGsk09hPqZiZmLacNib6XNTCM8ubYeT7ryXQw8asB1sKgcU5lkB7ONug08aB8w=="
},
+
"confbox@0.1.8": {
+
"integrity": "sha512-RMtmw0iFkeR4YV+fUOSucriAQNb9g8zFR52MWCtl+cCZOFRNL6zeB395vPzFhEjjn4fMxXudmELnl/KF/WrK6w=="
+
},
+
"confbox@0.2.2": {
+
"integrity": "sha512-1NB+BKqhtNipMsov4xI/NnhCKp9XG9NamYp5PVm9klAT0fsrNPjaFICsCFhNhwZJKNh7zB/3q8qXz0E9oaMNtQ=="
+
},
"cookie-es@1.2.2": {
"integrity": "sha512-+W7VmiVINB+ywl1HGXJXmrqkOhpKrIiVZV6tQuV54ZyQC7MMuBt81Vc336GMLoHBq5hV/F9eXgt5Mnx0Rha5Fg=="
},
···
"uncrypto"
]
},
+
"css-select@5.2.2": {
+
"integrity": "sha512-TizTzUddG/xYLA3NXodFM0fSbNizXjOKhqiQQwvhlspadZokn1KDy0NZFS0wuEubIYAV5/c1/lAr0TaaFXEXzw==",
+
"dependencies": [
+
"boolbase",
+
"css-what",
+
"domhandler",
+
"domutils",
+
"nth-check"
+
]
+
},
+
"css-tree@2.2.1": {
+
"integrity": "sha512-OA0mILzGc1kCOCSJerOeqDxDQ4HOh+G8NbOJFOTgOCzpw7fCBubk0fEyxp8AgOL/jvLgYA/uV0cMbe43ElF1JA==",
+
"dependencies": [
+
"mdn-data@2.0.28",
+
"source-map-js"
+
]
+
},
+
"css-tree@2.3.1": {
+
"integrity": "sha512-6Fv1DV/TYw//QF5IzQdqsNDjx/wc8TrMBZsqjL9eW01tWb7R7k/mq+/VXfJCl7SoD5emsJop9cOByJZfs8hYIw==",
+
"dependencies": [
+
"mdn-data@2.0.30",
+
"source-map-js"
+
]
+
},
"css-tree@3.1.0": {
"integrity": "sha512-0eW44TGN5SQXU1mWSkKwFstI/22X2bG1nYzZTYMAWjylYURhse752YgbE4Cx46AC+bAvI+/dYTPRk1LqSUnu6w==",
"dependencies": [
-
"mdn-data",
+
"mdn-data@2.12.2",
"source-map-js"
]
+
},
+
"css-what@6.2.2": {
+
"integrity": "sha512-u/O3vwbptzhMs3L1fQE82ZSLHQQfto5gyZzwteVIEyeaY5Fc7R4dapF/BvRoSYFeqfBk4m0V1Vafq5Pjv25wvA=="
},
"cssesc@3.0.0": {
"integrity": "sha512-/Tb/JcjK111nNScGob5MNtsntNM1aCNUDipB/TkwZFhyDrrE47SOx/18wF2bbjgc3ZzCSKW1T5nt5EbFoAz/Vg==",
"bin": true
},
+
"csso@5.0.5": {
+
"integrity": "sha512-0LrrStPOdJj+SPCCrGhzryycLjwcgUSHBtxNA8aIDxf0GLsRh1cKYhB00Gd1lDOS4yGH69+SNn13+TWbVHETFQ==",
+
"dependencies": [
+
"css-tree@2.2.1"
+
]
+
},
"debug@4.4.3": {
"integrity": "sha512-RGwwWnwQvkVfavKVt22FGLw+xYSdzARwm0ru6DhTVA3umU5hZc28V3kO4stgYryrTlLpuvgI9GiijltAjNbcqA==",
"dependencies": [
···
"defu@6.1.4": {
"integrity": "sha512-mEQCMmwJu317oSz8CwdIOdwf3xMif1ttiM8LTufzc3g6kR+9Pe236twL8j3IYT1F7GfRgGcW6MWxzZjLIkuHIg=="
},
+
"delayed-stream@1.0.0": {
+
"integrity": "sha512-ZySD7Nf91aLB0RxL4KGrKHBXl7Eds1DAmEdcoVawXnLD7SDhpNgtuII2aAkg7a7QS41jxPSZ17p4VdGnMHk3MQ=="
+
},
+
"depd@2.0.0": {
+
"integrity": "sha512-g7nH6P6dyDioJogAAGprGpCtVImJhpPk/roCzdb3fIh61/s/nPsfR6onyMwkCAR/OlC3yBC0lESvUoQEAssIrw=="
+
},
"dequal@2.0.3": {
"integrity": "sha512-0je+qPKHEMohvfRTCEo3CrPG6cAzAYgmzKyxRiYSSDkS6eGJdyVJm7WaYA5ECaAD9wLB2T4EEeymA5aFVcYXCA=="
},
···
"dlv@1.1.3": {
"integrity": "sha512-+HlytyjlPKnIG8XuRG8WvmBP8xs8P71y+SKKS6ZXWoEgLuePxtDoUEiH7WkdePWrQ5JBpE6aoVqfZfJUQkjXwA=="
},
+
"dom-serializer@2.0.0": {
+
"integrity": "sha512-wIkAryiqt/nV5EQKqQpo3SToSOV9J0DnbJqwK7Wv/Trc92zIAYZ4FlMu+JPFW1DfGFt81ZTCGgDEabffXeLyJg==",
+
"dependencies": [
+
"domelementtype",
+
"domhandler",
+
"entities@4.5.0"
+
]
+
},
+
"domelementtype@2.3.0": {
+
"integrity": "sha512-OLETBj6w0OsagBwdXnPdN0cnMfF9opN69co+7ZrbfPGrdpPVNBUj02spi6B1N7wChLQiPn4CSH/zJvXw56gmHw=="
+
},
+
"domhandler@5.0.3": {
+
"integrity": "sha512-cgwlv/1iFQiFnU96XXgROh8xTeetsnJiDsTc7TYCLFd9+/WNkIqPTxiM/8pSd8VIrhXGTf1Ny1q1hquVqDJB5w==",
+
"dependencies": [
+
"domelementtype"
+
]
+
},
+
"domutils@3.2.2": {
+
"integrity": "sha512-6kZKyUajlDuqlHKVX1w7gyslj9MPIXzIFiz/rGu35uC1wMi+kMhQwGhl4lt9unC9Vb9INnY9Z3/ZA3+FhASLaw==",
+
"dependencies": [
+
"dom-serializer",
+
"domelementtype",
+
"domhandler"
+
]
+
},
"dset@3.1.4": {
"integrity": "sha512-2QF/g9/zTaPDc3BjNcVTGoBbXBgYfMTTceLaYcFJ/W9kggFUkhxD/hMEeuLKbugyef9SqAx8cpgwlIP/jinUTA=="
},
+
"dunder-proto@1.0.1": {
+
"integrity": "sha512-KIN/nDJBQRcXw0MLVhZE9iQHmG68qAVIBg9CqmUYjmQIhgij9U5MFvrqkUL5FbtyyzZuOeOt0zdeRe4UY7ct+A==",
+
"dependencies": [
+
"call-bind-apply-helpers",
+
"es-errors",
+
"gopd"
+
]
+
},
+
"ee-first@1.1.1": {
+
"integrity": "sha512-WMwm9LhRUo+WUaRN+vRuETqG89IgZphVSNkdFgeb6sS/E4OrDIN7t48CAewSHXc6C8lefD8KKfr5vY61brQlow=="
+
},
"emoji-regex@10.6.0": {
"integrity": "sha512-toUI84YS5YmxW219erniWD0CIVOo46xGKColeNQRgOzDorgBi1v4D71/OFzgD9GO2UGKIv1C3Sp8DAn0+j5w7A=="
},
"emoji-regex@8.0.0": {
"integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A=="
},
+
"encodeurl@2.0.0": {
+
"integrity": "sha512-Q0n9HRi4m6JuGIV1eFlmvJB7ZEVxu93IrMyiMsGC0lrMJMWzRgx6WGquyfQgZVb31vhGgXnfmPNNXmxnOkRBrg=="
+
},
+
"encoding-sniffer@0.2.1": {
+
"integrity": "sha512-5gvq20T6vfpekVtqrYQsSCFZ1wEg5+wW0/QaZMWkFr6BqD3NfKs0rLCx4rrVlSWJeZb5NBJgVLswK/w2MWU+Gw==",
+
"dependencies": [
+
"iconv-lite",
+
"whatwg-encoding"
+
]
+
},
+
"end-of-stream@1.4.5": {
+
"integrity": "sha512-ooEGc6HP26xXq/N+GCGOT0JKCLDGrq2bQUZrQ7gyrJiZANJ/8YDTxTpQBXGMn+WbIQXNVpyWymm7KYVICQnyOg==",
+
"dependencies": [
+
"once"
+
]
+
},
+
"entities@4.5.0": {
+
"integrity": "sha512-V0hjH4dGPh9Ao5p0MoRY6BVqtwCjhz6vI5LT8AJ55H+4g9/4vbHx1I54fS0XuclLhDHArPQCiMjDxjaL8fPxhw=="
+
},
"entities@6.0.1": {
"integrity": "sha512-aN97NXWF6AWBTahfVOIrB/NShkzi5H7F9r1s9mD3cDj4Ko5f2qhhVoYMibXF7GlLveb/D2ioWay8lxI97Ven3g=="
},
+
"es-define-property@1.0.1": {
+
"integrity": "sha512-e3nRfgfUZ4rNGL232gUgX06QNyyez04KdjFrF+LTRoOXmrOgFKDg4BCdsjW8EnT69eqdYGmRpJwiPVYNrCaW3g=="
+
},
+
"es-errors@1.3.0": {
+
"integrity": "sha512-Zf5H2Kxt2xjTvbJvP2ZWLEICxA6j+hAmMzIlypy4xcBg1vKVnx89Wy0GbS+kf5cwCVFFzdCFh2XSCFNULS6csw=="
+
},
"es-module-lexer@1.7.0": {
"integrity": "sha512-jEQoCwk8hyb2AZziIOLhDqpm5+2ww5uIE6lkO/6jcOCusfk6LhMHpXXfBLXTZ7Ydyt0j4VoUQv6uGNYbdW+kBA=="
+
},
+
"es-object-atoms@1.1.1": {
+
"integrity": "sha512-FGgH2h8zKNim9ljj7dankFPcICIK9Cp5bm+c2gQSYePhpaG5+esrLODihIorn+Pe6FGJzWhXQotPv73jTaldXA==",
+
"dependencies": [
+
"es-errors"
+
]
+
},
+
"es-set-tostringtag@2.1.0": {
+
"integrity": "sha512-j6vWzfrGVfyXxge+O0x5sh6cvxAog0a/4Rdd2K36zCMV5eJ+/+tOAngRO8cODMNWbVRdVlmGZQL2YS3yR8bIUA==",
+
"dependencies": [
+
"es-errors",
+
"get-intrinsic",
+
"has-tostringtag",
+
"hasown"
+
]
},
"esbuild@0.25.12": {
"integrity": "sha512-bbPBYYrtZbkt6Os6FiTLCTFxvq4tt3JKall1vRwshA3fdVztsLAatFaZobhkBC8/BrPetoa0oksYoKXoG4ryJg==",
···
],
"scripts": true,
"bin": true
+
},
+
"escape-html@1.0.3": {
+
"integrity": "sha512-NiSupZ4OeuGwr68lGIeym/ksIZMJodUGOSCZ/FSnTxcrekbvqrgdUxlJOMpijaKZVjAJrWrGs/6Jy8OMuyj9ow=="
},
"escape-string-regexp@5.0.0": {
"integrity": "sha512-/veY75JbMK4j1yjvuUxuVsiS/hr/4iHs9FTT6cgTexxdE0Ly/glccBAkloH/DofkjRbZU3bnoj38mOmhkZ0lHw=="
···
"@types/estree"
]
},
+
"etag@1.8.1": {
+
"integrity": "sha512-aIL5Fx7mawVa300al2BnEE4iNvo1qETxLrPI/o05L7z6go7fCw1J6EQmbK4FmJ2AS7kgVF/KEZWufBfdClMcPg=="
+
},
"eventemitter3@5.0.1": {
"integrity": "sha512-GWkBvjiSZK87ELrYOSESUYeVIc9mvLLf/nXalMOS5dYrgZq9o5OVkbZAVM06CVxYsCwH9BDZFPlQTlPA1j4ahA=="
},
+
"exsolve@1.0.7": {
+
"integrity": "sha512-VO5fQUzZtI6C+vx4w/4BWJpg3s/5l+6pRQEHzFRM8WFi4XffSP1Z+4qi7GbjWbvRQEbdIco5mIMq+zX4rPuLrw=="
+
},
"extend@3.0.2": {
"integrity": "sha512-fjquC59cD7CyW6urNXK0FBufkZcoiGG80wTuPujX590cB5Ttln20E2UB4S/WARVqhXffZl2LNgS+gQdPIIim/g=="
},
+
"extract-zip@2.0.1": {
+
"integrity": "sha512-GDhU9ntwuKyGXdZBUgTIe+vXnWj0fppUEtMDL0+idd5Sta8TGpHssn/eusA9mrPr9qNDym6SxAYZjNvCn/9RBg==",
+
"dependencies": [
+
"debug",
+
"get-stream",
+
"yauzl"
+
],
+
"optionalDependencies": [
+
"@types/yauzl"
+
],
+
"bin": true
+
},
"fast-deep-equal@3.1.3": {
"integrity": "sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q=="
},
+
"fd-slicer@1.1.0": {
+
"integrity": "sha512-cE1qsB/VwyQozZ+q1dGxR8LBYNZeofhEdUNGSMbQD3Gw2lAzX9Zb3uIU6Ebc/Fmyjo9AWWfnn0AUCHqtevs/8g==",
+
"dependencies": [
+
"pend"
+
]
+
},
"fdir@6.5.0_picomatch@4.0.3": {
"integrity": "sha512-tIbYtZbucOs0BRGqPJkshJUYdL+SDH7dVM8gjy+ERp3WAUjLEFJE+02kanyHtwjWOnwrKYBiwAmM0p4kLJAnXg==",
"dependencies": [
···
},
"flattie@1.1.1": {
"integrity": "sha512-9UbaD6XdAL97+k/n+N7JwX46K/M6Zc6KcFYskrYL8wbBV/Uyk0CTAMY0VT+qiK5PM7AIc9aTWYtq65U7T+aCNQ=="
+
},
+
"follow-redirects@1.15.11": {
+
"integrity": "sha512-deG2P0JfjrTxl50XGCDyfI97ZGVCxIpfKYmfyrQ54n5FO/0gfIES8C/Psl6kWVDolizcaaxZJnTS0QSMxvnsBQ=="
},
"fontace@0.3.1": {
"integrity": "sha512-9f5g4feWT1jWT8+SbL85aLIRLIXUaDygaM2xPXRmzPYxrOMNok79Lr3FGJoKVNKibE0WCunNiEVG2mwuE+2qEg==",
···
"unicode-trie"
]
},
+
"form-data@4.0.4": {
+
"integrity": "sha512-KrGhL9Q4zjj0kiUt5OO4Mr/A/jlI2jDYs5eHBpYHPcBEVSiipAvn2Ko2HnPe20rmcuuvMHNdZFp+4IlGTMF0Ow==",
+
"dependencies": [
+
"asynckit",
+
"combined-stream",
+
"es-set-tostringtag",
+
"hasown",
+
"mime-types@2.1.35"
+
]
+
},
+
"fresh@2.0.0": {
+
"integrity": "sha512-Rx/WycZ60HOaqLKAi6cHRKKI7zxWbJ31MhntmtwMoaTeF7XFH9hhBp8vITaMidfljRQ6eYWCKkaTK+ykVJHP2A=="
+
},
+
"fs-minipass@2.1.0": {
+
"integrity": "sha512-V/JgOLFCS+R6Vcq0slCuaeWEdNC3ouDlJMNIsacH2VtALiu9mV4LPrHc5cDl8k5aw6J8jwgWWpiTo5RYhmIzvg==",
+
"dependencies": [
+
"minipass@3.3.6"
+
]
+
},
"fsevents@2.3.3": {
"integrity": "sha512-5xoDfX+fL7faATnagmWPpbFtwh/R77WmMMqqHGS65C3vvB0YHrgF+B1YmZ3441tMj5n63k0212XNoJwzlhffQw==",
"os": ["darwin"],
"scripts": true
},
+
"function-bind@1.1.2": {
+
"integrity": "sha512-7XHNxH7qX9xG5mIwxkhumTox/MIRNcOgDrxWsMt2pAr23WHp6MrRlN7FBSFpCpr+oVO0F744iUgR82nJMfG2SA=="
+
},
"get-east-asian-width@1.4.0": {
"integrity": "sha512-QZjmEOC+IT1uk6Rx0sX22V6uHWVwbdbxf1faPqJ1QhLdGgsRGCZoyaQBm/piRdJy/D2um6hM1UP7ZEeQ4EkP+Q=="
},
+
"get-intrinsic@1.3.0": {
+
"integrity": "sha512-9fSjSaos/fRIVIp+xSJlE6lfwhES7LNtKaCBIamHsjr2na1BiABJPo0mOjjz8GJDURarmCPGqaiVg5mfjb98CQ==",
+
"dependencies": [
+
"call-bind-apply-helpers",
+
"es-define-property",
+
"es-errors",
+
"es-object-atoms",
+
"function-bind",
+
"get-proto",
+
"gopd",
+
"has-symbols",
+
"hasown",
+
"math-intrinsics"
+
]
+
},
+
"get-proto@1.0.1": {
+
"integrity": "sha512-sTSfBjoXBp89JvIKIefqw7U2CCebsc74kiY6awiGogKtoSGbgjYE/G/+l9sF3MWFPNc9IcoOC4ODfKHfxFmp0g==",
+
"dependencies": [
+
"dunder-proto",
+
"es-object-atoms"
+
]
+
},
+
"get-stream@5.2.0": {
+
"integrity": "sha512-nBF+F1rAZVCu/p7rjzgA+Yb4lfYXrpl7a6VmJrU8wF9I1CKvP/QwPNZHnOlwbTkY6dvtFIzFMSyQXbLoTQPRpA==",
+
"dependencies": [
+
"pump"
+
]
+
},
"github-slugger@2.0.0": {
"integrity": "sha512-IaOQ9puYtjrkq7Y0Ygl9KDZnrf/aiUJYUpVf89y8kyaxbRG7Y1SrX/jaumrv81vc61+kiMempujsM3Yw7w5qcw=="
},
+
"globals@15.15.0": {
+
"integrity": "sha512-7ACyT3wmyp3I61S4fG682L0VA2RGD9otkqGJIwNUMF1SWUombIIk+af1unuDYgMm082aHYwD+mzJvv9Iu8dsgg=="
+
},
+
"gopd@1.2.0": {
+
"integrity": "sha512-ZUKRh6/kUFoAiTAtTYPZJ3hw9wNxx+BIBOijnlG9PnrJsCcSjs1wyyD6vJpaYtgnzDrKYRSqf3OO6Rfa93xsRg=="
+
},
"h3@1.15.4": {
"integrity": "sha512-z5cFQWDffyOe4vQ9xIqNfCZdV4p//vy6fBnr8Q1AWnVZ0teurKMG66rLj++TKwKPUP3u7iMUvrvKaEUiQw2QWQ==",
"dependencies": [
···
"radix3",
"ufo",
"uncrypto"
+
]
+
},
+
"has-symbols@1.1.0": {
+
"integrity": "sha512-1cDNdwJ2Jaohmb3sg4OmKaMBwuC48sYni5HUw2DvsC8LjGTLK9h+eb1X6RyuOHe4hT0ULCW68iomhjUoKUqlPQ=="
+
},
+
"has-tostringtag@1.0.2": {
+
"integrity": "sha512-NqADB8VjPFLM2V0VvHUewwwsw0ZWBaIdgo+ieHtK3hasLz4qeCRjYcqfB6AQrBggRKppKF8L52/VqdVsO47Dlw==",
+
"dependencies": [
+
"has-symbols"
+
]
+
},
+
"hasown@2.0.2": {
+
"integrity": "sha512-0hJU9SCPvmMzIBdZFqNPXWa6dqh7WdH0cII9y+CyS8rG3nL48Bclra9HmKhVVUHyPWNH5Y7xDwAB7bfgSjkUMQ==",
+
"dependencies": [
+
"function-bind"
]
},
"hast-util-from-html@2.0.3": {
···
"html-void-elements@3.0.0": {
"integrity": "sha512-bEqo66MRXsUGxWHV5IP0PUiAWwoEjba4VCzg0LjFJBpchPaTfyfCKTG6bc5F8ucKec3q5y6qOdGyYTSBEvhCrg=="
},
+
"htmlparser2@9.1.0": {
+
"integrity": "sha512-5zfg6mHUoaer/97TxnGpxmbR7zJtPwIYFMZ/H5ucTlPZhKvtum05yiPK3Mgai3a0DyVxv7qYqoweaEd2nrYQzQ==",
+
"dependencies": [
+
"domelementtype",
+
"domhandler",
+
"domutils",
+
"entities@4.5.0"
+
]
+
},
"http-cache-semantics@4.2.0": {
"integrity": "sha512-dTxcvPXqPvXBQpq5dUr6mEMJX4oIEFv6bwom3FDwKRDsuIjjJGANqhBuoAn9c1RQJIdAKav33ED65E2ys+87QQ=="
},
+
"http-errors@2.0.0": {
+
"integrity": "sha512-FtwrG/euBzaEjYeRqOgly7G0qviiXoJWnvEH2Z1plBdXgbyjv34pHTSb9zoeHMyDy33+DWy5Wt9Wo+TURtOYSQ==",
+
"dependencies": [
+
"depd",
+
"inherits",
+
"setprototypeof",
+
"statuses",
+
"toidentifier"
+
]
+
},
+
"iconv-lite@0.6.3": {
+
"integrity": "sha512-4fCk79wshMdzMp2rH06qWrJE4iolqLhCUH+OiuIgU++RB0+94NlDL81atO7GX55uUKueo0txHNtvEyI6D7WdMw==",
+
"dependencies": [
+
"safer-buffer"
+
]
+
},
"import-meta-resolve@4.2.0": {
"integrity": "sha512-Iqv2fzaTQN28s/FwZAoFq0ZSs/7hMAHJVX+w8PZl3cY19Pxk6jFFalxQoIfW2826i/fDLXv8IiEZRIT0lDuWcg=="
+
},
+
"inherits@2.0.4": {
+
"integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ=="
},
"iron-webcrypto@1.2.1": {
"integrity": "sha512-feOM6FaSr6rEABp/eDfVseKyTMDt+KGpeB35SkVn9Tyn0CqvVsY3EwI0v5i8nMHyJnzCIQf7nsy3p41TPkJZhg=="
···
"kleur@3.0.3": {
"integrity": "sha512-eTIzlVOSUR+JxdDFepEYcBMtZ9Qqdef+rnzWdRZuMbOywu5tO2w2N7rqjoANZ5k9vywhL6Br1VRjUIgTQx4E8w=="
},
+
"kolorist@1.8.0": {
+
"integrity": "sha512-Y+60/zizpJ3HRH8DCss+q95yr6145JXZo46OTpFvDZWLfRCE4qChOyk1b26nMaNpfHHgxagk9dXT5OP0Tfe+dQ=="
+
},
+
"local-pkg@0.5.1": {
+
"integrity": "sha512-9rrA30MRRP3gBD3HTGnC6cDFpaE1kVDWxWgqWJUN0RvDNAo+Nz/9GxB+nHOH0ifbVFy0hSA1V6vFDvnx54lTEQ==",
+
"dependencies": [
+
"mlly",
+
"pkg-types@1.3.1"
+
]
+
},
+
"local-pkg@1.1.2": {
+
"integrity": "sha512-arhlxbFRmoQHl33a0Zkle/YWlmNwoyt6QNZEIJcqNbdrsix5Lvc4HyyI3EnwxTYlZYc32EbYrQ8SzEZ7dqgg9A==",
+
"dependencies": [
+
"mlly",
+
"pkg-types@2.3.0",
+
"quansync"
+
]
+
},
"longest-streak@3.1.0": {
"integrity": "sha512-9Ri+o0JYgehTaVBBDoMqIl8GXtbWg711O3srftcHhZ0dqnETqLaoIK0x17fUw9rFSlK/0NlsKe0Ahhyl5pXE2g=="
},
···
},
"markdown-table@3.0.4": {
"integrity": "sha512-wiYz4+JrLyb/DqW2hkFJxP7Vd7JuTDm77fvbM8VfEQdmSMqcImWeeRbHwZjBjIFki/VaMK2BhFi7oUUZeM5bqw=="
+
},
+
"math-intrinsics@1.1.0": {
+
"integrity": "sha512-/IXtbwEk5HTPyEwyKX6hGkYXxM9nbj64B+ilVJnC/R6B0pH5G4V3b0pVbL7DBj4tkhBAppbQUlf6F6Xl9LHu1g=="
},
"mdast-util-definitions@6.0.0": {
"integrity": "sha512-scTllyX6pnYNZH/AIp/0ePz6s4cZtARxImwoPJ7kS42n+MnVsI4XbnG6d4ibehRIldYMWM2LD7ImQblVhUejVQ==",
···
"dependencies": [
"@types/mdast"
+
},
+
"mdn-data@2.0.28": {
+
"integrity": "sha512-aylIc7Z9y4yzHYAJNuESG3hfhC+0Ibp/MAMiaOZgNv4pmEdFyfZhhhny4MNiAfWdBQ1RQ2mfDWmM1x8SvGyp8g=="
+
},
+
"mdn-data@2.0.30": {
+
"integrity": "sha512-GaqWWShW4kv/G9IEucWScBx9G1/vsFZZJUO+tD26M8J8z3Kw5RDQjaoZe03YAClgeS/SWPOcb4nkFBTEi5DUEA=="
},
"mdn-data@2.12.2": {
"integrity": "sha512-IEn+pegP1aManZuckezWCO+XZQDplx1366JoVhTpMpBB1sPey/SbveZQUosKiKiGYjg1wH4pMlNgXbCiYgihQA=="
···
"micromark-util-types"
},
+
"mime-db@1.52.0": {
+
"integrity": "sha512-sPU4uV7dYlvtWJxwwxHD0PuihVNiE7TyAbQ5SWxDCB9mUYvOgroQOwYQQOKPJ8CIbE+1ETVlOoK1UC2nU3gYvg=="
+
},
+
"mime-db@1.54.0": {
+
"integrity": "sha512-aU5EJuIN2WDemCcAp2vFBfp/m4EAhWJnUNSSw0ixs7/kXbd6Pg64EmwJkNdFhB8aWt1sH2CTXrLxo/iAGV3oPQ=="
+
},
+
"mime-types@2.1.35": {
+
"integrity": "sha512-ZDY+bPm5zTTF+YpCrAU9nK0UgICYPT0QtT1NZWFv4s++TNkcgVaT0g6+4R2uI4MjQjzysHB1zxuWL50hzaeXiw==",
+
"dependencies": [
+
"mime-db@1.52.0"
+
]
+
},
+
"mime-types@3.0.1": {
+
"integrity": "sha512-xRc4oEhT6eaBpU1XF7AjpOFD+xQmXNB5OVKwp4tqCuBpHLS/ZbBDrc07mYTDqVMg6PfxUjjNp85O6Cd2Z/5HWA==",
+
"dependencies": [
+
"mime-db@1.54.0"
+
]
+
},
+
"minipass@3.3.6": {
+
"integrity": "sha512-DxiNidxSEK+tHG6zOIklvNOwm3hvCrbUrdtzY74U6HKTJxvIDfOUL5W5P2Ghd3DTkhhKPYGqeNUIh5qcM4YBfw==",
+
"dependencies": [
+
"yallist"
+
]
+
},
+
"minipass@4.2.8": {
+
"integrity": "sha512-fNzuVyifolSLFL4NzpF+wEF4qrgqaaKX0haXPQEdQ7NKAN+WecoKMHV09YcuL/DHxrUsYQOK3MiuDf7Ip2OXfQ=="
+
},
+
"minipass@5.0.0": {
+
"integrity": "sha512-3FnjYuehv9k6ovOEbyOswadCDPX1piCfhV8ncmYtHOjuPwylVWsghTLo7rabjC3Rx5xD4HDx8Wm1xnMF7S5qFQ=="
+
},
+
"minizlib@2.1.2": {
+
"integrity": "sha512-bAxsR8BVfj60DWXHE3u30oHzfl4G7khkSuPW+qvpd7jFRHm7dLxOjUk1EHACJ/hxLY8phGJ0YhYHZo7jil7Qdg==",
+
"dependencies": [
+
"minipass@3.3.6",
+
"yallist"
+
]
+
},
+
"mkdirp@1.0.4": {
+
"integrity": "sha512-vVqVZQyf3WLx2Shd0qJ9xuvqgAyKPLAiqITEtqW0oIUjzo3PePDd6fW9iFz30ef7Ysp/oiWqbhszeGWW2T6Gzw==",
+
"bin": true
+
},
+
"mlly@1.8.0": {
+
"integrity": "sha512-l8D9ODSRWLe2KHJSifWGwBqpTZXIXTeo8mlKjY+E2HAakaTeNpqAyBZ8GSqLzHgw4XmHmC8whvpjJNMbFZN7/g==",
+
"dependencies": [
+
"acorn",
+
"pathe@2.0.3",
+
"pkg-types@1.3.1",
+
"ufo"
+
]
+
},
"mrmime@2.0.1": {
"integrity": "sha512-Y3wQdFg2Va6etvQ5I82yUhGdsKrcYox6p7FfL1LbK2J4V01F9TGlepTIhnK24t7koZibmg82KGglhA1XK5IsLQ=="
},
···
"normalize-path@3.0.0": {
"integrity": "sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA=="
},
+
"nth-check@2.1.1": {
+
"integrity": "sha512-lqjrjmaOoAnWfMmBPL+XNnynZh2+swxiX3WUE0s4yEHI6m+AwrK2UZOimIRl3X/4QctVqS8AiZjFqyOGrMXb/w==",
+
"dependencies": [
+
"boolbase"
+
]
+
},
"ofetch@1.5.1": {
"integrity": "sha512-2W4oUZlVaqAPAil6FUg/difl6YhqhUR7x2eZY4bQCko22UXg3hptq9KLQdqFClV+Wu85UX7hNtdGTngi/1BxcA==",
"dependencies": [
···
"ohash@2.0.11": {
"integrity": "sha512-RdR9FQrFwNBNXAr4GixM8YaRZRJ5PUWbKYbE5eOsrwAjJW0q2REGcf79oYPsLyskQCZG1PLN+S/K1V00joZAoQ=="
},
+
"on-finished@2.4.1": {
+
"integrity": "sha512-oVlzkg3ENAhCk2zdv7IJwd/QUD4z2RxRwpkcGY8psCVcCYZNq4wYnVWALHM+brtuJjePWiYF/ClmuDr8Ch5+kg==",
+
"dependencies": [
+
"ee-first"
+
]
+
},
+
"once@1.4.0": {
+
"integrity": "sha512-lNaJgI+2Q5URQBkccEKHTQOPaXdUxnZZElQTZY0MFUAuaEqe1E+Nyvgdz/aIyNi6Z9MzO5dv1H8n58/GELp3+w==",
+
"dependencies": [
+
"wrappy"
+
]
+
},
"oniguruma-parser@0.12.1": {
"integrity": "sha512-8Unqkvk1RYc6yq2WBYRj4hdnsAxVze8i7iPfQr8e4uSP3tRv0rpZcbGUDvxfQQcdwHt/e9PrMvGCsa8OqG9X3w=="
},
···
"vfile"
},
+
"parse5-htmlparser2-tree-adapter@7.1.0": {
+
"integrity": "sha512-ruw5xyKs6lrpo9x9rCZqZZnIUntICjQAd0Wsmp396Ul9lN/h+ifgVV1x1gZHi8euej6wTfpqX8j+BFQxF0NS/g==",
+
"dependencies": [
+
"domhandler",
+
"parse5"
+
]
+
},
+
"parse5-parser-stream@7.1.2": {
+
"integrity": "sha512-JyeQc9iwFLn5TbvvqACIF/VXG6abODeB3Fwmv/TGdLk2LfbWkaySGY72at4+Ty7EkPZj854u4CrICqNk2qIbow==",
+
"dependencies": [
+
"parse5"
+
]
+
},
"parse5@7.3.0": {
"integrity": "sha512-IInvU7fabl34qmi9gY8XOVxhYyMyuH2xUNpb2q8/Y+7552KlejkRvqvD19nMoUW/uQGGbqNpA6Tufu5FL5BZgw==",
"dependencies": [
-
"entities"
+
"entities@6.0.1"
},
+
"pathe@1.1.2": {
+
"integrity": "sha512-whLdWMYL2TwI08hn8/ZqAbrVemu0LNaNNJZX73O6qaIdCTfXutsLhMkjdENX0qhsQ9uIimo4/aQOmXkoon2nDQ=="
+
},
+
"pathe@2.0.3": {
+
"integrity": "sha512-WUjGcAqP1gQacoQe+OBJsFA7Ld4DyXuUIjZ5cc75cLHvJ7dtNsTugphxIADwspS+AraAUePCKrSVtPLFj/F88w=="
+
},
+
"pend@1.2.0": {
+
"integrity": "sha512-F3asv42UuXchdzt+xXqfW1OGlVBe+mxa2mqI0pg5yAHZPvFmY3Y6drSf/GQ1A86WgWEN9Kzh/WrgKa6iGcHXLg=="
+
},
"picocolors@1.1.1": {
"integrity": "sha512-xceH2snhtb5M9liqDsmEw56le376mTZkEX/jEb/RxNFyegNul7eNslCXP9FDj/Lcu0X8KEyMceP2ntpaHrDEVA=="
},
···
"picomatch@4.0.3": {
"integrity": "sha512-5gTmgEY/sqK6gFXLIsQNH19lWb4ebPDLA4SdLP7dsWkIXHWlG66oPuVvXSGFPppYZz8ZDZq0dYYrbHfBCVUb1Q=="
},
+
"pkg-types@1.3.1": {
+
"integrity": "sha512-/Jm5M4RvtBFVkKWRu2BLUTNP8/M2a+UwuAX+ae4770q1qVGtfjG+WTCupoZixokjmHiry8uI+dlY8KXYV5HVVQ==",
+
"dependencies": [
+
"confbox@0.1.8",
+
"mlly",
+
"pathe@2.0.3"
+
]
+
},
+
"pkg-types@2.3.0": {
+
"integrity": "sha512-SIqCzDRg0s9npO5XQ3tNZioRY1uK06lA41ynBC1YmFTmnY6FjUjVt6s4LoADmwoig1qqD0oK8h1p/8mlMx8Oig==",
+
"dependencies": [
+
"confbox@0.2.2",
+
"exsolve",
+
"pathe@2.0.3"
+
]
+
},
"postcss@8.5.6": {
"integrity": "sha512-3Ybi1tAuwAP9s0r1UQ2J4n5Y0G05bJkpUIO0/bI9MhwmD70S5aTWbXGBwxHrelT+XM1k6dM0pk+SwNkpTRN7Pg==",
"dependencies": [
···
"property-information@7.1.0": {
"integrity": "sha512-TwEZ+X+yCJmYfL7TPUOcvBZ4QfoT5YenQiJuX//0th53DE6w0xxLEtfK3iyryQFddXuvkIk51EEgrJQ0WJkOmQ=="
},
+
"proxy-from-env@1.1.0": {
+
"integrity": "sha512-D+zkORCbA9f1tdWRK0RaCR3GPv50cMxcrz4X8k5LTSUD1Dkw47mKJEZQNunItRTkWwgtaUSo1RVFRIG9ZXiFYg=="
+
},
+
"pump@3.0.3": {
+
"integrity": "sha512-todwxLMY7/heScKmntwQG8CXVkWUOdYxIvY2s0VWAAMh/nd8SoYiRaKjlr7+iCs984f2P8zvrfWcDDYVb73NfA==",
+
"dependencies": [
+
"end-of-stream",
+
"once"
+
]
+
},
+
"quansync@0.2.11": {
+
"integrity": "sha512-AifT7QEbW9Nri4tAwR5M/uzpBuqfZf+zwaEM/QkzEjj7NBuFD2rBuy0K3dE+8wltbezDV7JMA0WfnCPYRSYbXA=="
+
},
"radix3@1.1.2": {
"integrity": "sha512-b484I/7b8rDEdSDKckSSBA8knMpcdsXudlE/LNL639wFoHKwLbEkQFZHWEYwDC0wa0FKUcCY+GAF73Z7wxNVFA=="
+
},
+
"range-parser@1.2.1": {
+
"integrity": "sha512-Hrgsx+orqoygnmhFbKaHE6c296J+HTAQXoxEF6gNupROmmGJRoyzfG3ccAveqCBrwr/2yxQ5BVd/GTl5agOwSg=="
},
"readdirp@4.1.2": {
"integrity": "sha512-GDhwkLfywWL2s6vEjyhri+eXmfH6j1L7JE27WhqLeYzoh/A3DBaYGEj2H/HFZCn/kMfim73FXxEJTw06WtxQwg=="
···
],
"bin": true
},
+
"safer-buffer@2.1.2": {
+
"integrity": "sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg=="
+
},
"semver@7.7.3": {
"integrity": "sha512-SdsKMrI9TdgjdweUSR9MweHA4EJ8YxHn8DFaDisvhVlUOe4BF1tLD7GAj0lIqWVl+dPb/rExr0Btby5loQm20Q==",
"bin": true
},
+
"send@1.2.0": {
+
"integrity": "sha512-uaW0WwXKpL9blXE2o0bRhoL2EGXIrZxQ2ZQ4mgcfoBxdFmQold+qWsD2jLrfZ0trjKL6vOw0j//eAwcALFjKSw==",
+
"dependencies": [
+
"debug",
+
"encodeurl",
+
"escape-html",
+
"etag",
+
"fresh",
+
"http-errors",
+
"mime-types@3.0.1",
+
"ms",
+
"on-finished",
+
"range-parser",
+
"statuses"
+
]
+
},
+
"server-destroy@1.0.1": {
+
"integrity": "sha512-rb+9B5YBIEzYcD6x2VKidaa+cqYBJQKnU4oe4E3ANwRRN56yk/ua1YCJT1n21NTS8w6CcOclAKNP3PhdCXKYtQ=="
+
},
+
"setprototypeof@1.2.0": {
+
"integrity": "sha512-E5LDX7Wrp85Kil5bhZv46j8jOeboKq5JMmYM3gVGdGH8xFpPWXUMsNrlODCrkoxMEeNi/XZIwuRvY4XNwYMJpw=="
+
},
"sharp@0.34.4": {
"integrity": "sha512-FUH39xp3SBPnxWvd5iib1X8XY7J0K0X7d93sie9CJg2PO8/7gmg89Nve6OjItK53/MlAushNNxteBYfM6DEuoA==",
"dependencies": [
···
"space-separated-tokens@2.0.2": {
"integrity": "sha512-PEGlAwrG8yXGXRjW32fGbg66JAlOAwbObuqVoJpv/mRgoWDQfgH1wDPvtzWyUSNAXBGSk8h755YDbbcEy3SH2Q=="
},
+
"statuses@2.0.1": {
+
"integrity": "sha512-RwNA9Z/7PrK06rYLIzFMlaF+l73iwpzsqRIFgbMLbTcLD6cOao82TaWefPXQvB2fOC4AjuYSEndS7N/mTCbkdQ=="
+
},
"string-width@4.2.3": {
"integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==",
"dependencies": [
···
"ansi-regex@6.2.2"
},
+
"svgo@3.3.2": {
+
"integrity": "sha512-OoohrmuUlBs8B8o6MB2Aevn+pRIH9zDALSR+6hhqVfa6fRwG/Qw9VUMSMW9VNg2CFc/MTIfabtdOVl9ODIJjpw==",
+
"dependencies": [
+
"@trysound/sax",
+
"commander",
+
"css-select",
+
"css-tree@2.3.1",
+
"css-what",
+
"csso",
+
"picocolors"
+
],
+
"bin": true
+
},
+
"tar@6.2.1": {
+
"integrity": "sha512-DZ4yORTwrbTj/7MZYq2w+/ZFdI6OZ/f9SFHR+71gIVUZhOQPHzVCLpvRnPgyaMpfWxxk/4ONva3GQSyNIKRv6A==",
+
"dependencies": [
+
"chownr",
+
"fs-minipass",
+
"minipass@5.0.0",
+
"minizlib",
+
"mkdirp",
+
"yallist"
+
]
+
},
"tiny-inflate@1.0.3": {
"integrity": "sha512-pkY1fj1cKHb2seWDy0B16HeWyczlJA9/WW3u3c4z/NiWDsO3DOU5D7nhTLE9CF0yXv/QZFY7sEJmj24dK+Rrqw=="
},
···
"picomatch@4.0.3"
},
+
"toidentifier@1.0.1": {
+
"integrity": "sha512-o5sSPKEkg/DIQNmH43V0/uerLrpzVedkUh8tGNvaeXpfpuwjKenlSox/2O/BTlZUtEe+JG7s5YhEz608PlAHRA=="
+
},
"trim-lines@3.0.1": {
"integrity": "sha512-kRj8B+YHZCc9kQYdWfJB2/oUl9rA99qbowYYBtr4ui4mZyAQ2JpvVBd/6U2YloATfqBhBTSMhTpgBHtU0Mf3Rg=="
},
···
"undici-types@7.10.0": {
"integrity": "sha512-t5Fy/nfn+14LuOc2KNYg75vZqClpAiqscVvMygNnlsHBFpSXdJaYtXMcdNLpl/Qvc3P2cB3s6lOV51nqsFq4ag=="
},
+
"undici@6.22.0": {
+
"integrity": "sha512-hU/10obOIu62MGYjdskASR3CUAiYaFTtC9Pa6vHyf//mAipSvSQg6od2CnJswq7fvzNS3zJhxoRkgNVaHurWKw=="
+
},
"unicode-properties@1.4.1": {
"integrity": "sha512-CLjCCLQ6UuMxWnbIylkisbRj31qxHPAurvena/0iwSVbQ2G1VY5/HjV0IRabOEbDHlzZlRdCrD4NhB0JtU40Pg==",
"dependencies": [
···
"unifont@0.6.0": {
"integrity": "sha512-5Fx50fFQMQL5aeHyWnZX9122sSLckcDvcfFiBf3QYeHa7a1MKJooUy52b67moi2MJYkrfo/TWY+CoLdr/w0tTA==",
"dependencies": [
-
"css-tree",
+
"css-tree@3.1.0",
"ofetch",
"ohash"
···
"web-namespaces@2.0.1": {
"integrity": "sha512-bKr1DkiNa2krS7qxNtdrtHAmzuYGFQLiQ13TsorsdT6ULTkPLKuu5+GsFpDlg6JFjUTwX2DyhMPG2be8uPrqsQ=="
},
+
"whatwg-encoding@3.1.1": {
+
"integrity": "sha512-6qN4hJdMwfYBtE3YBTTHhoeuUrDBPZmbQaxWAqSALV/MeEnR5z1xd8UKud2RAkFoPkmB+hli1TZSnyi84xz1vQ==",
+
"dependencies": [
+
"iconv-lite"
+
]
+
},
+
"whatwg-mimetype@4.0.0": {
+
"integrity": "sha512-QaKxh0eNIi2mE9p2vEdzfagOKHCcj1pJ56EEHGQOVxp8r9/iszLUUV7v89x9O1p/T+NlTM5W7jW6+cz4Fq1YVg=="
+
},
"which-pm-runs@1.1.0": {
"integrity": "sha512-n1brCuqClxfFfq/Rb0ICg9giSZqCS+pLtccdag6C2HyufBrh3fBOiy9nb6ggRMvWOVH5GrdJskj5iGTZNxd7SA=="
},
···
"strip-ansi@7.1.2"
},
+
"wrappy@1.0.2": {
+
"integrity": "sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ=="
+
},
"xxhash-wasm@1.1.0": {
"integrity": "sha512-147y/6YNh+tlp6nd/2pWq38i9h6mz/EuQ6njIrmW8D1BS5nCqs0P6DG+m6zTGnNz5I+uhZ0SHxBs9BsPrwcKDA=="
},
+
"yallist@4.0.0": {
+
"integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A=="
+
},
"yargs-parser@21.1.1": {
"integrity": "sha512-tVpsJW7DdjecAiFpbIB1e3qxIQsE6NoPc5/eTdrbbIC4h0LVsWhnoa3g+m2HclBIujHzsxZ4VJVA+GUuc2/LBw=="
},
+
"yauzl@2.10.0": {
+
"integrity": "sha512-p4a9I6X6nu6IhoGmBqAcbJy1mlC4j27vEPZX9F4L4/vZT3Lyq1VkFHw/V/PUcB9Buo+DG3iHkT0x3Qya58zc3g==",
+
"dependencies": [
+
"buffer-crc32",
+
"fd-slicer"
+
]
+
},
"yocto-queue@1.2.1": {
"integrity": "sha512-AyeEbWOu/TAXdxlV9wmGcR0+yh2j3vYPGOECcIj2S7MkrLyC7ne+oye2BKTItt0ii2PHk4cDy+95+LshzbXnGg=="
},
···
"workspace": {
"packageJson": {
"dependencies": [
+
"npm:@astrojs/node@^9.5.0",
"npm:@deno/astro-adapter@~0.3.2",
+
"npm:@evilmartians/harmony@^1.4.0",
+
"npm:@iconify-json/lucide@^1.2.73",
+
"npm:@iconify-json/pixel@^1.2.1",
+
"npm:astro-icon@^1.1.5",
"npm:astro@^5.15.3"
+6 -1
package.json
···
"astro": "astro"
},
"dependencies": {
+
"@astrojs/node": "^9.5.0",
"@deno/astro-adapter": "^0.3.2",
-
"astro": "^5.15.3"
+
"@evilmartians/harmony": "^1.4.0",
+
"@iconify-json/lucide": "^1.2.73",
+
"@iconify-json/pixel": "^1.2.1",
+
"astro": "^5.15.3",
+
"astro-icon": "^1.1.5"
}
}
public/fonts/easy-coast/EasyCoast-Condensed.otf

This is a binary file and will not be displayed.

public/fonts/easy-coast/EasyCoast-Condensed.ttf

This is a binary file and will not be displayed.

public/fonts/easy-coast/EasyCoast-Condensed.woff

This is a binary file and will not be displayed.

public/fonts/easy-coast/EasyCoast-Condensed.woff2

This is a binary file and will not be displayed.

public/fonts/easy-coast/EasyCoast-Regular.otf

This is a binary file and will not be displayed.

public/fonts/easy-coast/EasyCoast-Regular.ttf

This is a binary file and will not be displayed.

public/fonts/easy-coast/EasyCoast-Regular.woff

This is a binary file and will not be displayed.

public/fonts/easy-coast/EasyCoast-Regular.woff2

This is a binary file and will not be displayed.

public/fonts/spagetty/Spagetty-Regular.otf

This is a binary file and will not be displayed.

public/fonts/spagetty/Spagetty-Regular.woff2

This is a binary file and will not be displayed.

public/fonts/spagetty/Spagetty-Rough.otf

This is a binary file and will not be displayed.

public/fonts/spagetty/Spagetty-Rough.woff2

This is a binary file and will not be displayed.

+24
src/assets/fonts/easycoast.css
···
+
@font-face {
+
font-family: "EasyCoast";
+
src:
+
url("/fonts/easy-coast/EasyCoast-Regular.woff2") format("woff2"),
+
url("/fonts/easy-coast/EasyCoast-Regular.woff") format("woff"),
+
url("/fonts/easy-coast/EasyCoast-Regular.ttf") format("truetype"),
+
url("/fonts/easy-coast/EasyCoast-Regular.otf") format("opentype");
+
font-weight: normal;
+
font-style: normal;
+
font-display: swap;
+
}
+
+
@font-face {
+
font-family: "EasyCoast";
+
src:
+
url("/fonts/easy-coast/EasyCoast-Condensed.woff2") format("woff2"),
+
url("/fonts/easy-coast/EasyCoast-Condensed.woff") format("woff"),
+
url("/fonts/easy-coast/EasyCoast-Condensed.ttf") format("truetype"),
+
url("/fonts/easy-coast/EasyCoast-Condensed.otf") format("opentype");
+
font-stretch: condensed;
+
font-weight: normal;
+
font-style: normal;
+
font-display: swap;
+
}
+20
src/assets/fonts/spagetty.css
···
+
@font-face {
+
font-family: "Spagetty";
+
src:
+
url("/fonts/spagetty/Spagetty-Regular.woff2") format("woff2"),
+
url("/fonts/spagetty/Spagetty-Regular.otf") format("opentype");
+
font-weight: normal;
+
font-style: normal;
+
font-display: swap;
+
}
+
+
@font-face {
+
font-family: "Spagetty";
+
src:
+
url("/fonts/spagetty/Spagetty-Rough.woff2") format("woff2"),
+
url("/fonts/spagetty/Spagetty-Rough.otf") format("opentype");
+
font-weight: normal;
+
font-style: normal;
+
font-variation-settings: "RUFF" 1;
+
font-display: swap;
+
}
src/assets/img/colin.png

This is a binary file and will not be displayed.

src/assets/img/colin.webp

This is a binary file and will not be displayed.

+58
src/assets/styles/main.css
···
+
/* https://harmonizer.evilmartians.com/#W1siMTAwIiwxMDAsbnVsbCwiMjAwIiw5MCxudWxsLCIzMDAiLDc3LG51bGwsIjQwMCIsNjUsbnVsbCwiNTAwIiw1MSxudWxsLCI2MDAiLDY1LG51bGwsIjcwMCIsNzcsbnVsbCwiODAwIiw5MCxudWxsLCI5MDAiLDEwMCxudWxsXSxbIlJlZCIsMjAsIk1haG9nYW55IiwzOCwiQnJvbnplIiw1NSwiT3JhbmdlIiw3MywiTXVzdGFyZCIsOTAsIkxpbWUiLDEzNSwiVHVycXVvaXNlIiwxODAsIkF6dXJlIiwyNTAsIkxhdmVuZGVyIiwyODUsIkZ1Y2hzaWEiLDMyMCwiRmxhbWluZ28iLDM2MF0sWyJhcGNhIiwiZmdUb0JnIiwiZXZlbiIsIiNmZmYiLCIjMDAwIiw1LCJwMyJdXQ */
+
/* https://color.surf/ */
+
@import "@evilmartians/harmony/css/amber.css";
+
@import "@evilmartians/harmony/css/emerald.css";
+
@import "@evilmartians/harmony/css/fuchsia.css";
+
@import "@evilmartians/harmony/css/rose.css";
+
@import "@evilmartians/harmony/css/gray.css";
+
+
/* Fonts */
+
@import url("@/assets/fonts/spagetty.css");
+
@import url("@/assets/fonts/easycoast.css");
+
+
:root {
+
--radius: 0.75rem;
+
--spacing: 0.75rem;
+
}
+
+
svg[data-icon] {
+
--size: 1.5rem;
+
+
width: var(--size);
+
height: var(--size);
+
}
+
+
@media (max-width: 768px) {
+
.desktop-only {
+
display: none;
+
}
+
}
+
+
.content-grid {
+
--padding-inline: min(2%, 1.5rem);
+
+
display: grid;
+
grid-template-columns:
+
[full-width-start] var(--padding-inline)
+
[breakout-start] var(--padding-inline)
+
[content-start] 1fr
+
[content-end]
+
var(--padding-inline) [breakout-end]
+
var(--padding-inline) [full-width-end];
+
justify-content: start;
+
align-content: start;
+
row-gap: calc(var(--spacing) * 4);
+
}
+
+
.content-grid > :not(.breakout, .full-width),
+
.full-width > :not(.breakout, .full-width) {
+
grid-column: content;
+
}
+
+
.content-grid > .breakout {
+
grid-column: breakout;
+
}
+
+
.content-grid > .full-width {
+
grid-column: full-width;
+
}
+93
src/assets/styles/reset.css
···
+
/* CSS Reset by Andy Bell : https://piccalil.li/blog/a-more-modern-css-reset/ */
+
+
/* Box sizing rules */
+
*,
+
*::before,
+
*::after {
+
box-sizing: border-box;
+
}
+
+
/* Prevent font size inflation */
+
html {
+
-moz-text-size-adjust: none;
+
-webkit-text-size-adjust: none;
+
text-size-adjust: none;
+
}
+
+
/* Remove default margin in favour of better control in authored CSS */
+
body,
+
h1,
+
h2,
+
h3,
+
h4,
+
p,
+
figure,
+
blockquote,
+
dl,
+
dd {
+
margin-block-end: 0;
+
}
+
+
/* Remove list styles on ul, ol elements with a list role, which suggests default styling will be removed */
+
ul[role="list"],
+
ol[role="list"] {
+
list-style: none;
+
}
+
+
/* Set core body defaults */
+
body {
+
line-height: 1.5;
+
padding: 0;
+
margin: 0;
+
}
+
+
/* Set shorter line heights on headings and interactive elements */
+
h1,
+
h2,
+
h3,
+
h4,
+
button,
+
input,
+
label {
+
line-height: 1.1;
+
}
+
+
/* Balance text wrapping on headings */
+
h1,
+
h2,
+
h3,
+
h4 {
+
text-wrap: balance;
+
}
+
+
/* A elements that don't have a class get default styles */
+
a:not([class]) {
+
text-decoration-skip-ink: auto;
+
color: currentColor;
+
}
+
+
/* Make images easier to work with */
+
img,
+
picture {
+
max-width: 100%;
+
display: block;
+
}
+
+
/* Inherit fonts for inputs and buttons */
+
input,
+
button,
+
textarea,
+
select {
+
font-family: inherit;
+
font-size: inherit;
+
}
+
+
/* Make sure textareas without a rows attribute are not tiny */
+
textarea:not([rows]) {
+
min-height: 10em;
+
}
+
+
/* Anything that has been anchored to should have extra scroll margin */
+
:target {
+
scroll-margin-block: 5ex;
+
}
+175 -79
src/layouts/Layout.astro
···
+
---
+
import "@/assets/styles/main.css";
+
import "@/assets/styles/reset.css";
+
import { Icon } from "astro-icon/components";
+
+
import colinPng from "@/assets/img/colin.png";
+
import colinWebp from "@/assets/img/colin.webp";
+
---
+
<!doctype html>
<html lang="en">
<head>
···
<title>Colin Ozanne</title>
</head>
<body>
-
<slot />
+
<header>
+
<picture>
+
<source srcset={colinWebp.src} type="image/webp" />
+
<img src={colinPng.src} alt="Colin Ozanne" />
+
</picture>
+
<h1>Colin <br class="desktop-only" /> Ozanne</h1>
+
<p>Étudiant M1 Informatique</p>
+
</header>
+
<main class="content-grid">
+
<slot />
+
</main>
+
<footer>
+
<a
+
href="https://bsky.app/profile/did:plc:hpmpe3pzpdtxbmvhlwrevhju"
+
target="_blank"
+
rel="noopener noreferrer"
+
>
+
<Icon name="pixel:bluesky" />
+
<span> Bluesky </span>
+
<Icon name="pixel:external-link" class="external-link" />
+
</a>
+
<a
+
href="mailto:contact@colinozanne.fr"
+
target="_blank"
+
rel="noopener noreferrer"
+
>
+
<Icon name="pixel:envelope" />
+
<span> Email </span>
+
<Icon name="pixel:external-link" class="external-link" />
+
</a>
+
<p>&copy; {new Date().getFullYear()} Colin Ozanne</p>
+
</footer>
</body>
</html>
<style>
-
/* CSS Reset by Andy Bell : https://piccalil.li/blog/a-more-modern-css-reset/ */
+
body {
+
width: 100%;
+
display: grid;
+
height: 100svh;
+
grid-template-columns: clamp(15rem, 20vw, 30rem) auto;
+
grid-template-rows: 1fr auto;
+
grid-auto-flow: row;
+
grid-template-areas:
+
"header main"
+
"footer main";
+
gap: 0;
+
font-family: sans-serif;
-
/* Box sizing rules */
-
*,
-
*::before,
-
*::after {
-
box-sizing: border-box;
-
}
+
header {
+
grid-area: header;
+
}
-
/* Prevent font size inflation */
-
html {
-
-moz-text-size-adjust: none;
-
-webkit-text-size-adjust: none;
-
text-size-adjust: none;
-
}
+
footer {
+
grid-area: footer;
+
}
-
/* Remove default margin in favour of better control in authored CSS */
-
body,
-
h1,
-
h2,
-
h3,
-
h4,
-
p,
-
figure,
-
blockquote,
-
dl,
-
dd {
-
margin-block-end: 0;
-
}
+
main {
+
grid-area: main;
+
}
-
/* Remove list styles on ul, ol elements with a list role, which suggests default styling will be removed */
-
ul[role="list"],
-
ol[role="list"] {
-
list-style: none;
+
@media screen and (max-width: 768px) {
+
grid-template-columns: 1fr;
+
grid-template-rows: auto 1fr auto;
+
grid-template-areas:
+
"header"
+
"main"
+
"footer";
+
gap: 0;
+
}
}
-
/* Set core body defaults */
-
body {
-
min-height: 100vh;
-
line-height: 1.5;
-
padding: 0;
-
margin: 0;
-
}
+
/* aside */
+
footer,
+
header {
+
container-type: inline-size;
+
container-name: sidebar;
+
display: flex;
+
flex-direction: column;
+
align-items: stretch;
+
gap: var(--spacing, 1rem);
+
width: 100%;
+
padding: var(--spacing, 1rem);
-
/* Set shorter line heights on headings and interactive elements */
-
h1,
-
h2,
-
h3,
-
h4,
-
button,
-
input,
-
label {
-
line-height: 1.1;
+
picture {
+
aspect-ratio: auto;
+
height: auto;
+
padding: 0;
+
margin: 0;
+
overflow: hidden;
+
}
+
+
h1 {
+
font-family: "EasyCoast", serif;
+
letter-spacing: initial;
+
font-size: 15cqi;
+
color: var(--clr-dark-a0);
+
margin: 0;
+
--aside-elem-color: var(--fuchsia-500);
+
--aside-elem-text-color: var(--fuchsia-950);
+
+
@media screen and (max-width: 768px) {
+
font-size: 2rem;
+
}
+
}
+
+
p {
+
margin: 0;
+
--aside-elem-color: var(--rose-500);
+
--aside-elem-text-color: var(--rose-950);
+
}
+
+
a {
+
display: flex;
+
align-items: center;
+
justify-content: center;
+
gap: 0.5rem;
+
color: var(--black-500);
+
text-decoration: none;
+
transition: color 0.3s ease-in-out;
+
--aside-elem-color: var(--amber-500);
+
--aside-elem-text-color: var(--amber-950);
+
+
&:hover {
+
color: var(--clr-dark-a1);
+
}
+
+
svg {
+
--size: 1.5rem;
+
+
&.external-link {
+
--size: 0.75rem;
+
}
+
}
+
}
+
+
& > * {
+
padding: var(--spacing);
+
width: calc(100% - 2rem * var(--spacing));
+
border-radius: var(--radius);
+
text-align: center;
+
color: var(--aside-elem-text-color, var(--emerald-950, black));
+
background-color: var(--aside-elem-color, var(--emerald-500, red));
+
font-family: "Spagetty", serif;
+
letter-spacing: 0.01em;
+
font-size: 1.2rem;
+
}
}
-
/* Balance text wrapping on headings */
-
h1,
-
h2,
-
h3,
-
h4 {
-
text-wrap: balance;
-
}
+
@media screen and (max-width: 768px) {
+
header {
+
--img-size: 5rem;
-
/* A elements that don't have a class get default styles */
-
a:not([class]) {
-
text-decoration-skip-ink: auto;
-
color: currentColor;
-
}
+
display: grid;
+
grid-template-columns: var(--img-size) 1fr;
+
grid-template-rows: 1fr auto;
+
grid-template-areas:
+
"img name"
+
"title title";
+
gap: var(--spacing);
-
/* Make images easier to work with */
-
img,
-
picture {
-
max-width: 100%;
-
display: block;
-
}
+
picture {
+
grid-area: img;
+
width: var(--img-size);
+
height: var(--img-size);
+
}
-
/* Inherit fonts for inputs and buttons */
-
input,
-
button,
-
textarea,
-
select {
-
font-family: inherit;
-
font-size: inherit;
-
}
+
h1 {
+
container-type: inline-size;
+
grid-area: name;
+
display: inline-grid;
+
place-items: center;
+
height: var(--img-size);
+
font-size: 7.6cqi;
+
}
-
/* Make sure textareas without a rows attribute are not tiny */
-
textarea:not([rows]) {
-
min-height: 10em;
+
p {
+
grid-area: title;
+
}
+
}
}
-
/* Anything that has been anchored to should have extra scroll margin */
-
:target {
-
scroll-margin-block: 5ex;
+
main {
+
border-left: 10px solid black;
+
overflow-y: scroll;
}
</style>
+1 -1
src/pages/fr/index.astro
···
import Layout from "@/layouts/Layout.astro";
---
-
<Layout> Bonjour Je m'appelle Colin </Layout>
+
<Layout> Bonjour </Layout>