From 58865ea6be4f469c7b51a97a25a35b6d7d6f706a Mon Sep 17 00:00:00 2001 From: SanjayramVempati <101228879+SanjayramVempati@users.noreply.github.com> Date: Fri, 3 Mar 2023 18:28:27 -0500 Subject: [PATCH] simple navbar --- astro.config.mjs | 7 +- package-lock.json | 1294 +++++++++++++++++++++++++++++++++++++- package.json | 7 +- src/components/Nav.astro | 61 ++ src/images/logo.png | Bin 0 -> 19636 bytes src/layouts/Layout.astro | 17 + src/pages/index.astro | 21 +- tailwind.config.cjs | 8 + 8 files changed, 1398 insertions(+), 17 deletions(-) create mode 100644 src/components/Nav.astro create mode 100644 src/images/logo.png create mode 100644 src/layouts/Layout.astro create mode 100644 tailwind.config.cjs diff --git a/astro.config.mjs b/astro.config.mjs index 882e651..39d964c 100644 --- a/astro.config.mjs +++ b/astro.config.mjs @@ -1,4 +1,9 @@ import { defineConfig } from 'astro/config'; // https://astro.build/config -export default defineConfig({}); +import tailwind from "@astrojs/tailwind"; + +// https://astro.build/config +export default defineConfig({ + integrations: [tailwind()] +}); \ No newline at end of file diff --git a/package-lock.json b/package-lock.json index bb000c6..b55868a 100644 --- a/package-lock.json +++ b/package-lock.json @@ -8,7 +8,10 @@ "name": "website-final", "version": "0.0.1", "dependencies": { - "astro": "^2.0.17" + "@astrojs/tailwind": "^3.0.1", + "astro": "^2.0.17", + "astro-icon": "^0.8.0", + "tailwindcss": "^3.2.7" } }, "node_modules/@ampproject/remapping": { @@ -89,6 +92,21 @@ "node": ">=16.12.0" } }, + "node_modules/@astrojs/tailwind": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/@astrojs/tailwind/-/tailwind-3.0.1.tgz", + "integrity": "sha512-QSYh/xmz454j1yZU9rjw2J24PpH7j3h2ClesqMaAniOtcuL8RfP7KYCnCrk01xvjwqqO+QBpZNDD/SUhHNtFFg==", + "dependencies": { + "@proload/core": "^0.3.2", + "autoprefixer": "^10.4.7", + "postcss": "^8.4.14", + "postcss-load-config": "^4.0.1" + }, + "peerDependencies": { + "astro": "^2.0.4", + "tailwindcss": "^3.0.24" + } + }, "node_modules/@astrojs/telemetry": { "version": "2.0.1", "resolved": "https://registry.npmjs.org/@astrojs/telemetry/-/telemetry-2.0.1.tgz", @@ -913,6 +931,23 @@ "url": "https://opencollective.com/unts" } }, + "node_modules/@proload/core": { + "version": "0.3.3", + "resolved": "https://registry.npmjs.org/@proload/core/-/core-0.3.3.tgz", + "integrity": "sha512-7dAFWsIK84C90AMl24+N/ProHKm4iw0akcnoKjRvbfHifJZBLhaDsDus1QJmhG12lXj4e/uB/8mB/0aduCW+NQ==", + "dependencies": { + "deepmerge": "^4.2.2", + "escalade": "^3.1.1" + } + }, + "node_modules/@trysound/sax": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/@trysound/sax/-/sax-0.2.0.tgz", + "integrity": "sha512-L7z9BgrNEcYyUYtF+HaEfiS5ebkh9jXqbszz7pC0hRBPaatV0XjSD3+eHrpqFemQfgwiFF0QPIarnIihIDn7OA==", + "engines": { + "node": ">=10.13.0" + } + }, "node_modules/@types/babel__core": { "version": "7.20.0", "resolved": "https://registry.npmjs.org/@types/babel__core/-/babel__core-7.20.0.tgz", @@ -1050,6 +1085,35 @@ "node": ">=0.4.0" } }, + "node_modules/acorn-node": { + "version": "1.8.2", + "resolved": "https://registry.npmjs.org/acorn-node/-/acorn-node-1.8.2.tgz", + "integrity": "sha512-8mt+fslDufLYntIoPAaIMUe/lrbrehIiwmR3t2k9LljIzoigEPF27eLk2hy8zSGzmR/ogr7zbRKINMo1u0yh5A==", + "dependencies": { + "acorn": "^7.0.0", + "acorn-walk": "^7.0.0", + "xtend": "^4.0.2" + } + }, + "node_modules/acorn-node/node_modules/acorn": { + "version": "7.4.1", + "resolved": "https://registry.npmjs.org/acorn/-/acorn-7.4.1.tgz", + "integrity": "sha512-nQyp0o1/mNdbTO1PO6kHkwSrmgZ0MT/jCCpNiwbUjGoRN4dlBhqJtoQuCnEOKzgTVwg0ZWiCoQy6SxMebQVh8A==", + "bin": { + "acorn": "bin/acorn" + }, + "engines": { + "node": ">=0.4.0" + } + }, + "node_modules/acorn-walk": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/acorn-walk/-/acorn-walk-7.2.0.tgz", + "integrity": "sha512-OPdCF6GsMIP+Az+aWfAAOEt2/+iVDKE7oy6lJ098aoe59oAmK76qV6Gw60SbZ8jHuG2wH058GF4pLFbYamYrVA==", + "engines": { + "node": ">=0.4.0" + } + }, "node_modules/ansi-align": { "version": "3.0.1", "resolved": "https://registry.npmjs.org/ansi-align/-/ansi-align-3.0.1.tgz", @@ -1117,6 +1181,23 @@ "node": ">=4" } }, + "node_modules/anymatch": { + "version": "3.1.3", + "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-3.1.3.tgz", + "integrity": "sha512-KMReFUr0B4t+D+OBkjR3KYqvocp2XaSzO55UcB6mgQMd3KbcE+mWTyvVV7D/zsdEbNnV6acZUutkiHQXvTr1Rw==", + "dependencies": { + "normalize-path": "^3.0.0", + "picomatch": "^2.0.4" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/arg": { + "version": "5.0.2", + "resolved": "https://registry.npmjs.org/arg/-/arg-5.0.2.tgz", + "integrity": "sha512-PYjyFOLKQ9y57JvQ6QLo8dAgNqswh8M1RMJYdQduT6xbWSgK36P/Z/v+p888pM69jMMfS8Xd8F6I1kQ/I9HUGg==" + }, "node_modules/argparse": { "version": "1.0.10", "resolved": "https://registry.npmjs.org/argparse/-/argparse-1.0.10.tgz", @@ -1200,6 +1281,48 @@ "npm": ">=6.14.0" } }, + "node_modules/astro-icon": { + "version": "0.8.0", + "resolved": "https://registry.npmjs.org/astro-icon/-/astro-icon-0.8.0.tgz", + "integrity": "sha512-sCzhZcl46BIyLJVg89hq5J4uQABn2psmGvK4cUaxib+M/kBI3TrPy1w3g2O5h/WcrTHLVN9LyxjgkD4lEJJFpw==", + "dependencies": { + "node-fetch": "^3.1.0", + "resolve-pkg": "^2.0.0", + "svgo": "^2.8.0" + } + }, + "node_modules/autoprefixer": { + "version": "10.4.13", + "resolved": "https://registry.npmjs.org/autoprefixer/-/autoprefixer-10.4.13.tgz", + "integrity": "sha512-49vKpMqcZYsJjwotvt4+h/BCjJVnhGwcLpDt5xkcaOG3eLrG/HUYLagrihYsQ+qrIBgIzX1Rw7a6L8I/ZA1Atg==", + "funding": [ + { + "type": "opencollective", + "url": "https://opencollective.com/postcss/" + }, + { + "type": "tidelift", + "url": "https://tidelift.com/funding/github/npm/autoprefixer" + } + ], + "dependencies": { + "browserslist": "^4.21.4", + "caniuse-lite": "^1.0.30001426", + "fraction.js": "^4.2.0", + "normalize-range": "^0.1.2", + "picocolors": "^1.0.0", + "postcss-value-parser": "^4.2.0" + }, + "bin": { + "autoprefixer": "bin/autoprefixer" + }, + "engines": { + "node": "^10 || ^12 || >=14" + }, + "peerDependencies": { + "postcss": "^8.1.0" + } + }, "node_modules/bail": { "version": "2.0.2", "resolved": "https://registry.npmjs.org/bail/-/bail-2.0.2.tgz", @@ -1228,6 +1351,14 @@ } ] }, + "node_modules/binary-extensions": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/binary-extensions/-/binary-extensions-2.2.0.tgz", + "integrity": "sha512-jDctJ/IVQbZoJykoeHbhXpOlNBqGNcwXJKJog42E5HDPUwQTSdjCHdihjj0DlnheQ7blbT6dHOafNAiS8ooQKA==", + "engines": { + "node": ">=8" + } + }, "node_modules/bl": { "version": "5.1.0", "resolved": "https://registry.npmjs.org/bl/-/bl-5.1.0.tgz", @@ -1238,6 +1369,11 @@ "readable-stream": "^3.4.0" } }, + "node_modules/boolbase": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/boolbase/-/boolbase-1.0.0.tgz", + "integrity": "sha512-JZOSA7Mo9sNGB8+UjSgzdLtokWAky1zbztM3WRLCbZ70/3cTANmQmOdR7y2g+J0e2WXywy1yS468tY+IruqEww==" + }, "node_modules/boxen": { "version": "6.2.1", "resolved": "https://registry.npmjs.org/boxen/-/boxen-6.2.1.tgz", @@ -1406,6 +1542,14 @@ "url": "https://github.com/sponsors/sindresorhus" } }, + "node_modules/camelcase-css": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/camelcase-css/-/camelcase-css-2.0.1.tgz", + "integrity": "sha512-QOSvevhslijgYwRx6Rv7zKdMF8lbRmx+uQGx2+vDc+KI/eBnsy9kit5aj23AgGu3pa4t9AgwbnXWqS+iOY+2aA==", + "engines": { + "node": ">= 6" + } + }, "node_modules/caniuse-lite": { "version": "1.0.30001460", "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001460.tgz", @@ -1470,6 +1614,32 @@ "url": "https://github.com/sponsors/wooorm" } }, + "node_modules/chokidar": { + "version": "3.5.3", + "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-3.5.3.tgz", + "integrity": "sha512-Dr3sfKRP6oTcjf2JmUmFJfeVMvXBdegxB0iVQ5eb2V10uFJUCAS8OByZdVAyVb8xXNz3GjjTgj9kLWsZTqE6kw==", + "funding": [ + { + "type": "individual", + "url": "https://paulmillr.com/funding/" + } + ], + "dependencies": { + "anymatch": "~3.1.2", + "braces": "~3.0.2", + "glob-parent": "~5.1.2", + "is-binary-path": "~2.1.0", + "is-glob": "~4.0.1", + "normalize-path": "~3.0.0", + "readdirp": "~3.6.0" + }, + "engines": { + "node": ">= 8.10.0" + }, + "optionalDependencies": { + "fsevents": "~2.3.2" + } + }, "node_modules/ci-info": { "version": "3.8.0", "resolved": "https://registry.npmjs.org/ci-info/-/ci-info-3.8.0.tgz", @@ -1550,6 +1720,14 @@ "url": "https://github.com/sponsors/wooorm" } }, + "node_modules/commander": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/commander/-/commander-7.2.0.tgz", + "integrity": "sha512-QrWXB+ZQSVPmIWIhtEO9H+gwHaMGYiF5ChvoJ+K9ZGHG/sVsa6yiesAD1GC/x46sET00Xlwo1u49RVVVzvcSkw==", + "engines": { + "node": ">= 10" + } + }, "node_modules/common-ancestor-path": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/common-ancestor-path/-/common-ancestor-path-1.0.1.tgz", @@ -1581,6 +1759,82 @@ "node": ">= 8" } }, + "node_modules/css-select": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/css-select/-/css-select-4.3.0.tgz", + "integrity": "sha512-wPpOYtnsVontu2mODhA19JrqWxNsfdatRKd64kmpRbQgh1KtItko5sTnEpPdpSaJszTOhEMlF/RPz28qj4HqhQ==", + "dependencies": { + "boolbase": "^1.0.0", + "css-what": "^6.0.1", + "domhandler": "^4.3.1", + "domutils": "^2.8.0", + "nth-check": "^2.0.1" + }, + "funding": { + "url": "https://github.com/sponsors/fb55" + } + }, + "node_modules/css-tree": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/css-tree/-/css-tree-1.1.3.tgz", + "integrity": "sha512-tRpdppF7TRazZrjJ6v3stzv93qxRcSsFmW6cX0Zm2NVKpxE1WV1HblnghVv9TreireHkqI/VDEsfolRF1p6y7Q==", + "dependencies": { + "mdn-data": "2.0.14", + "source-map": "^0.6.1" + }, + "engines": { + "node": ">=8.0.0" + } + }, + "node_modules/css-tree/node_modules/source-map": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", + "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/css-what": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/css-what/-/css-what-6.1.0.tgz", + "integrity": "sha512-HTUrgRJ7r4dsZKU6GjmpfRK1O76h97Z8MfS1G0FozR+oF2kG6Vfe8JE6zwrkbxigziPHinCJ+gCPjA9EaBDtRw==", + "engines": { + "node": ">= 6" + }, + "funding": { + "url": "https://github.com/sponsors/fb55" + } + }, + "node_modules/cssesc": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/cssesc/-/cssesc-3.0.0.tgz", + "integrity": "sha512-/Tb/JcjK111nNScGob5MNtsntNM1aCNUDipB/TkwZFhyDrrE47SOx/18wF2bbjgc3ZzCSKW1T5nt5EbFoAz/Vg==", + "bin": { + "cssesc": "bin/cssesc" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/csso": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/csso/-/csso-4.2.0.tgz", + "integrity": "sha512-wvlcdIbf6pwKEk7vHj8/Bkc0B4ylXZruLvOgs9doS5eOsOpuodOV2zJChSpkp+pRpYQLQMeF04nr3Z68Sta9jA==", + "dependencies": { + "css-tree": "^1.1.2" + }, + "engines": { + "node": ">=8.0.0" + } + }, + "node_modules/data-uri-to-buffer": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/data-uri-to-buffer/-/data-uri-to-buffer-4.0.1.tgz", + "integrity": "sha512-0R9ikRb668HB7QDxT1vkpuUBtqc53YyAwMwGeUFKRojY/NWKvdZ+9UYtRfGmhqNbRkTSVpMbmyhXipFFv2cb/A==", + "engines": { + "node": ">= 12" + } + }, "node_modules/debug": { "version": "4.3.4", "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.4.tgz", @@ -1609,6 +1863,14 @@ "url": "https://github.com/sponsors/wooorm" } }, + "node_modules/deepmerge": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/deepmerge/-/deepmerge-4.3.0.tgz", + "integrity": "sha512-z2wJZXrmeHdvYJp/Ux55wIjqo81G5Bp4c+oELTW+7ar6SogWHajt5a9gO3s3IDaGSAXjDk0vlQKN3rms8ab3og==", + "engines": { + "node": ">=0.10.0" + } + }, "node_modules/deepmerge-ts": { "version": "4.3.0", "resolved": "https://registry.npmjs.org/deepmerge-ts/-/deepmerge-ts-4.3.0.tgz", @@ -1636,6 +1898,14 @@ "node": ">=8" } }, + "node_modules/defined": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/defined/-/defined-1.0.1.tgz", + "integrity": "sha512-hsBd2qSVCRE+5PmNdHt1uzyrFu5d3RwmFDKzyNZMFq/EwDNJF7Ee5+D5oEKF0hU6LhtoUF1macFvOe4AskQC1Q==", + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, "node_modules/dequal": { "version": "2.0.3", "resolved": "https://registry.npmjs.org/dequal/-/dequal-2.0.3.tgz", @@ -1644,11 +1914,32 @@ "node": ">=6" } }, + "node_modules/detective": { + "version": "5.2.1", + "resolved": "https://registry.npmjs.org/detective/-/detective-5.2.1.tgz", + "integrity": "sha512-v9XE1zRnz1wRtgurGu0Bs8uHKFSTdteYZNbIPFVhUZ39L/S79ppMpdmVOZAnoz1jfEFodc48n6MX483Xo3t1yw==", + "dependencies": { + "acorn-node": "^1.8.2", + "defined": "^1.0.0", + "minimist": "^1.2.6" + }, + "bin": { + "detective": "bin/detective.js" + }, + "engines": { + "node": ">=0.8.0" + } + }, "node_modules/devalue": { "version": "4.3.0", "resolved": "https://registry.npmjs.org/devalue/-/devalue-4.3.0.tgz", "integrity": "sha512-n94yQo4LI3w7erwf84mhRUkUJfhLoCZiLyoOZ/QFsDbcWNZePrLwbQpvZBUG2TNxwV3VjCKPxkiiQA6pe3TrTA==" }, + "node_modules/didyoumean": { + "version": "1.2.2", + "resolved": "https://registry.npmjs.org/didyoumean/-/didyoumean-1.2.2.tgz", + "integrity": "sha512-gxtyfqMg7GKyhQmb056K7M3xszy/myH8w+B4RT+QXBQsvAOdc3XymqDDPHx1BgPgsdAA5SIifona89YtRATDzw==" + }, "node_modules/diff": { "version": "5.1.0", "resolved": "https://registry.npmjs.org/diff/-/diff-5.1.0.tgz", @@ -1662,6 +1953,57 @@ "resolved": "https://registry.npmjs.org/dlv/-/dlv-1.1.3.tgz", "integrity": "sha512-+HlytyjlPKnIG8XuRG8WvmBP8xs8P71y+SKKS6ZXWoEgLuePxtDoUEiH7WkdePWrQ5JBpE6aoVqfZfJUQkjXwA==" }, + "node_modules/dom-serializer": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/dom-serializer/-/dom-serializer-1.4.1.tgz", + "integrity": "sha512-VHwB3KfrcOOkelEG2ZOfxqLZdfkil8PtJi4P8N2MMXucZq2yLp75ClViUlOVwyoHEDjYU433Aq+5zWP61+RGag==", + "dependencies": { + "domelementtype": "^2.0.1", + "domhandler": "^4.2.0", + "entities": "^2.0.0" + }, + "funding": { + "url": "https://github.com/cheeriojs/dom-serializer?sponsor=1" + } + }, + "node_modules/domelementtype": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/domelementtype/-/domelementtype-2.3.0.tgz", + "integrity": "sha512-OLETBj6w0OsagBwdXnPdN0cnMfF9opN69co+7ZrbfPGrdpPVNBUj02spi6B1N7wChLQiPn4CSH/zJvXw56gmHw==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/fb55" + } + ] + }, + "node_modules/domhandler": { + "version": "4.3.1", + "resolved": "https://registry.npmjs.org/domhandler/-/domhandler-4.3.1.tgz", + "integrity": "sha512-GrwoxYN+uWlzO8uhUXRl0P+kHE4GtVPfYzVLcUxPL7KNdHKj66vvlhiweIHqYYXWlw+T8iLMp42Lm67ghw4WMQ==", + "dependencies": { + "domelementtype": "^2.2.0" + }, + "engines": { + "node": ">= 4" + }, + "funding": { + "url": "https://github.com/fb55/domhandler?sponsor=1" + } + }, + "node_modules/domutils": { + "version": "2.8.0", + "resolved": "https://registry.npmjs.org/domutils/-/domutils-2.8.0.tgz", + "integrity": "sha512-w96Cjofp72M5IIhpjgobBimYEfoPjx1Vx0BSX9P30WBdZW2WIKU0T1Bd0kz2eNZ9ikjKgHbEyKx8BB6H1L3h3A==", + "dependencies": { + "dom-serializer": "^1.0.1", + "domelementtype": "^2.2.0", + "domhandler": "^4.2.0" + }, + "funding": { + "url": "https://github.com/fb55/domutils?sponsor=1" + } + }, "node_modules/dset": { "version": "3.1.2", "resolved": "https://registry.npmjs.org/dset/-/dset-3.1.2.tgz", @@ -1694,6 +2036,14 @@ "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-9.2.2.tgz", "integrity": "sha512-L18DaJsXSUk2+42pv8mLs5jJT2hqFkFE4j21wOmgbUqsZ2hL72NsUU785g9RXgo3s0ZNgVl42TiHp3ZtOv/Vyg==" }, + "node_modules/entities": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/entities/-/entities-2.2.0.tgz", + "integrity": "sha512-p92if5Nz619I0w+akJrLZH0MX0Pb5DX39XOwQTtXSdQQOaYH03S1uIQp4mhOZtAXrxq4ViO67YTiLBo2638o9A==", + "funding": { + "url": "https://github.com/fb55/entities?sponsor=1" + } + }, "node_modules/es-module-lexer": { "version": "1.2.0", "resolved": "https://registry.npmjs.org/es-module-lexer/-/es-module-lexer-1.2.0.tgz", @@ -1840,6 +2190,28 @@ "reusify": "^1.0.4" } }, + "node_modules/fetch-blob": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/fetch-blob/-/fetch-blob-3.2.0.tgz", + "integrity": "sha512-7yAQpD2UMJzLi1Dqv7qFYnPbaPx7ZfFK6PiIxQ4PfkGPyNyl2Ugx+a/umUonmKqjhM4DnfbMvdX6otXq83soQQ==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/jimmywarting" + }, + { + "type": "paypal", + "url": "https://paypal.me/jimmywarting" + } + ], + "dependencies": { + "node-domexception": "^1.0.0", + "web-streams-polyfill": "^3.0.3" + }, + "engines": { + "node": "^12.20 || >= 14.13" + } + }, "node_modules/fill-range": { "version": "7.0.1", "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.0.1.tgz", @@ -1875,6 +2247,29 @@ "pkg-dir": "^4.2.0" } }, + "node_modules/formdata-polyfill": { + "version": "4.0.10", + "resolved": "https://registry.npmjs.org/formdata-polyfill/-/formdata-polyfill-4.0.10.tgz", + "integrity": "sha512-buewHzMvYL29jdeQTVILecSaZKnt/RJWjoZCF5OW60Z67/GmSLBkOFM7qh1PI3zFNtJbaZL5eQu1vLfazOwj4g==", + "dependencies": { + "fetch-blob": "^3.1.2" + }, + "engines": { + "node": ">=12.20.0" + } + }, + "node_modules/fraction.js": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/fraction.js/-/fraction.js-4.2.0.tgz", + "integrity": "sha512-MhLuK+2gUcnZe8ZHlaaINnQLl0xRIGRfcGk2yl8xoQAfHrSsL3rYu6FCmBdkdbhc9EPlwyGHewaRsvwRMJtAlA==", + "engines": { + "node": "*" + }, + "funding": { + "type": "patreon", + "url": "https://www.patreon.com/infusion" + } + }, "node_modules/fsevents": { "version": "2.3.2", "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.3.2.tgz", @@ -2166,6 +2561,17 @@ "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz", "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==" }, + "node_modules/is-binary-path": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/is-binary-path/-/is-binary-path-2.1.0.tgz", + "integrity": "sha512-ZMERYes6pDydyuGidse7OsHxtbI7WVeUEozgR/g7rd0xUimYNlvZRE/K2MgZTjWy725IfelLeVcEM97mmtRGXw==", + "dependencies": { + "binary-extensions": "^2.0.0" + }, + "engines": { + "node": ">=8" + } + }, "node_modules/is-buffer": { "version": "2.0.5", "resolved": "https://registry.npmjs.org/is-buffer/-/is-buffer-2.0.5.tgz", @@ -2390,6 +2796,14 @@ "node": ">=6" } }, + "node_modules/lilconfig": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/lilconfig/-/lilconfig-2.1.0.tgz", + "integrity": "sha512-utWOt/GHzuUxnLKxB6dk81RoOeoNeHgbrXiuGk4yyF5qlRz+iIVWu56E2fqGHFrXz0QNUhLB/8nKqvRH66JKGQ==", + "engines": { + "node": ">=10" + } + }, "node_modules/load-yaml-file": { "version": "0.2.0", "resolved": "https://registry.npmjs.org/load-yaml-file/-/load-yaml-file-0.2.0.tgz", @@ -2703,6 +3117,11 @@ "url": "https://opencollective.com/unified" } }, + "node_modules/mdn-data": { + "version": "2.0.14", + "resolved": "https://registry.npmjs.org/mdn-data/-/mdn-data-2.0.14.tgz", + "integrity": "sha512-dn6wd0uw5GsdswPFfsgMp5NSB0/aDe6fK94YJV/AJDYXL6HVLWBsxeq7js7Ad+mU2K9LAlwpk6kN2D5mwCPVow==" + }, "node_modules/merge-stream": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/merge-stream/-/merge-stream-2.0.0.tgz", @@ -3287,6 +3706,14 @@ "url": "https://github.com/sponsors/sindresorhus" } }, + "node_modules/minimist": { + "version": "1.2.8", + "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.8.tgz", + "integrity": "sha512-2yyAR8qBkN3YuheJanUpWC5U3bb5osDywNB8RzDVlDwDHbocAJveqqj1u8+SVD7jkWT4yvsHCpWqqWqAxb0zCA==", + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, "node_modules/mri": { "version": "1.2.0", "resolved": "https://registry.npmjs.org/mri/-/mri-1.2.0.tgz", @@ -3323,11 +3750,62 @@ "url": "https://opencollective.com/unified" } }, + "node_modules/node-domexception": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/node-domexception/-/node-domexception-1.0.0.tgz", + "integrity": "sha512-/jKZoMpw0F8GRwl4/eLROPA3cfcXtLApP0QzLmUT/HuPCZWyB7IY9ZrMeKw2O/nFIqPQB3PVM9aYm0F312AXDQ==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/jimmywarting" + }, + { + "type": "github", + "url": "https://paypal.me/jimmywarting" + } + ], + "engines": { + "node": ">=10.5.0" + } + }, + "node_modules/node-fetch": { + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/node-fetch/-/node-fetch-3.3.0.tgz", + "integrity": "sha512-BKwRP/O0UvoMKp7GNdwPlObhYGB5DQqwhEDQlNKuoqwVYSxkSZCSbHjnFFmUEtwSKRPU4kNK8PbDYYitwaE3QA==", + "dependencies": { + "data-uri-to-buffer": "^4.0.0", + "fetch-blob": "^3.1.4", + "formdata-polyfill": "^4.0.10" + }, + "engines": { + "node": "^12.20.0 || ^14.13.1 || >=16.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/node-fetch" + } + }, "node_modules/node-releases": { "version": "2.0.10", "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-2.0.10.tgz", "integrity": "sha512-5GFldHPXVG/YZmFzJvKK2zDSzPKhEp0+ZR5SVaoSag9fsL5YgHbUHDfnG5494ISANDcK4KwPXAx2xqVEydmd7w==" }, + "node_modules/normalize-path": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-3.0.0.tgz", + "integrity": "sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/normalize-range": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/normalize-range/-/normalize-range-0.1.2.tgz", + "integrity": "sha512-bdok/XvKII3nUpklnV6P2hxtMNrCboOjAcyBuQnWEhO665FwrSNRxU+AqpsyvO6LgGYPspN+lu5CLtw4jPRKNA==", + "engines": { + "node": ">=0.10.0" + } + }, "node_modules/npm-run-path": { "version": "5.1.0", "resolved": "https://registry.npmjs.org/npm-run-path/-/npm-run-path-5.1.0.tgz", @@ -3353,6 +3831,25 @@ "url": "https://github.com/sponsors/sindresorhus" } }, + "node_modules/nth-check": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/nth-check/-/nth-check-2.1.1.tgz", + "integrity": "sha512-lqjrjmaOoAnWfMmBPL+XNnynZh2+swxiX3WUE0s4yEHI6m+AwrK2UZOimIRl3X/4QctVqS8AiZjFqyOGrMXb/w==", + "dependencies": { + "boolbase": "^1.0.0" + }, + "funding": { + "url": "https://github.com/fb55/nth-check?sponsor=1" + } + }, + "node_modules/object-hash": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/object-hash/-/object-hash-3.0.0.tgz", + "integrity": "sha512-RSn9F68PjH9HqtltsSnqYC1XXoWe9Bju5+213R98cNGttag9q9yAOTzdbsqvIa7aNm5WffBZFpWYr2aWrklWAw==", + "engines": { + "node": ">= 6" + } + }, "node_modules/onetime": { "version": "6.0.0", "resolved": "https://registry.npmjs.org/onetime/-/onetime-6.0.0.tgz", @@ -3617,6 +4114,103 @@ "node": "^10 || ^12 || >=14" } }, + "node_modules/postcss-import": { + "version": "14.1.0", + "resolved": "https://registry.npmjs.org/postcss-import/-/postcss-import-14.1.0.tgz", + "integrity": "sha512-flwI+Vgm4SElObFVPpTIT7SU7R3qk2L7PyduMcokiaVKuWv9d/U+Gm/QAd8NDLuykTWTkcrjOeD2Pp1rMeBTGw==", + "dependencies": { + "postcss-value-parser": "^4.0.0", + "read-cache": "^1.0.0", + "resolve": "^1.1.7" + }, + "engines": { + "node": ">=10.0.0" + }, + "peerDependencies": { + "postcss": "^8.0.0" + } + }, + "node_modules/postcss-js": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/postcss-js/-/postcss-js-4.0.1.tgz", + "integrity": "sha512-dDLF8pEO191hJMtlHFPRa8xsizHaM82MLfNkUHdUtVEV3tgTp5oj+8qbEqYM57SLfc74KSbw//4SeJma2LRVIw==", + "dependencies": { + "camelcase-css": "^2.0.1" + }, + "engines": { + "node": "^12 || ^14 || >= 16" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/postcss/" + }, + "peerDependencies": { + "postcss": "^8.4.21" + } + }, + "node_modules/postcss-load-config": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/postcss-load-config/-/postcss-load-config-4.0.1.tgz", + "integrity": "sha512-vEJIc8RdiBRu3oRAI0ymerOn+7rPuMvRXslTvZUKZonDHFIczxztIyJ1urxM1x9JXEikvpWWTUUqal5j/8QgvA==", + "dependencies": { + "lilconfig": "^2.0.5", + "yaml": "^2.1.1" + }, + "engines": { + "node": ">= 14" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/postcss/" + }, + "peerDependencies": { + "postcss": ">=8.0.9", + "ts-node": ">=9.0.0" + }, + "peerDependenciesMeta": { + "postcss": { + "optional": true + }, + "ts-node": { + "optional": true + } + } + }, + "node_modules/postcss-nested": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/postcss-nested/-/postcss-nested-6.0.0.tgz", + "integrity": "sha512-0DkamqrPcmkBDsLn+vQDIrtkSbNkv5AD/M322ySo9kqFkCIYklym2xEmWkwo+Y3/qZo34tzEPNUw4y7yMCdv5w==", + "dependencies": { + "postcss-selector-parser": "^6.0.10" + }, + "engines": { + "node": ">=12.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/postcss/" + }, + "peerDependencies": { + "postcss": "^8.2.14" + } + }, + "node_modules/postcss-selector-parser": { + "version": "6.0.11", + "resolved": "https://registry.npmjs.org/postcss-selector-parser/-/postcss-selector-parser-6.0.11.tgz", + "integrity": "sha512-zbARubNdogI9j7WY4nQJBiNqQf3sLS3wCP4WfOidu+p28LofJqDH1tcXypGrcmMHhDk2t9wGhCsYe/+szLTy1g==", + "dependencies": { + "cssesc": "^3.0.0", + "util-deprecate": "^1.0.2" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/postcss-value-parser": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/postcss-value-parser/-/postcss-value-parser-4.2.0.tgz", + "integrity": "sha512-1NNCs6uurfkVbeXG4S8JFT9t19m45ICnif8zWLd5oPSZ50QnwMfK+H3jv408d4jw/7Bttv5axS5IiHoLaVNHeQ==" + }, "node_modules/preferred-pm": { "version": "3.0.3", "resolved": "https://registry.npmjs.org/preferred-pm/-/preferred-pm-3.0.3.tgz", @@ -3721,6 +4315,33 @@ } ] }, + "node_modules/quick-lru": { + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/quick-lru/-/quick-lru-5.1.1.tgz", + "integrity": "sha512-WuyALRjWPDGtt/wzJiadO5AXY+8hZ80hVpe6MyivgraREW751X3SbhRvG3eLKOYN+8VEvqLcf3wdnt44Z4S4SA==", + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/read-cache": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/read-cache/-/read-cache-1.0.0.tgz", + "integrity": "sha512-Owdv/Ft7IjOgm/i0xvNDZ1LrRANRfew4b2prF3OWMQLxLfu3bS8FVhCsrSCMK4lR56Y9ya+AThoTpDCTxCmpRA==", + "dependencies": { + "pify": "^2.3.0" + } + }, + "node_modules/read-cache/node_modules/pify": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/pify/-/pify-2.3.0.tgz", + "integrity": "sha512-udgsAY+fTnvv7kI7aaxbqwWNb0AHiB0qBO89PZKPkoTmGOgdbrHDKD+0B2X4uTfJ/FT1R09r9gTsjUjNJotuog==", + "engines": { + "node": ">=0.10.0" + } + }, "node_modules/readable-stream": { "version": "3.6.1", "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.6.1.tgz", @@ -3734,6 +4355,17 @@ "node": ">= 6" } }, + "node_modules/readdirp": { + "version": "3.6.0", + "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-3.6.0.tgz", + "integrity": "sha512-hOS089on8RduqdbhvQ5Z37A0ESjsqz6qnRcffsMU3495FuTdqSm+7bhJ29JvIOsBDEEnan5DPu9t3To9VRlMzA==", + "dependencies": { + "picomatch": "^2.2.1" + }, + "engines": { + "node": ">=8.10.0" + } + }, "node_modules/rehype": { "version": "12.0.1", "resolved": "https://registry.npmjs.org/rehype/-/rehype-12.0.1.tgz", @@ -3865,6 +4497,25 @@ "url": "https://github.com/sponsors/ljharb" } }, + "node_modules/resolve-from": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-5.0.0.tgz", + "integrity": "sha512-qYg9KP24dD5qka9J47d0aVky0N+b4fTU89LN9iDnjB5waksiC49rvMB0PrUJQGoTmH50XPiqOvAjDfaijGxYZw==", + "engines": { + "node": ">=8" + } + }, + "node_modules/resolve-pkg": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/resolve-pkg/-/resolve-pkg-2.0.0.tgz", + "integrity": "sha512-+1lzwXehGCXSeryaISr6WujZzowloigEofRB+dj75y9RRa/obVcYgbHJd53tdYw8pvZj8GojXaaENws8Ktw/hQ==", + "dependencies": { + "resolve-from": "^5.0.0" + }, + "engines": { + "node": ">=8" + } + }, "node_modules/restore-cursor": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/restore-cursor/-/restore-cursor-4.0.0.tgz", @@ -4182,6 +4833,12 @@ "resolved": "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.0.3.tgz", "integrity": "sha512-D9cPgkvLlV3t3IzL0D0YLvGA9Ahk4PcvVwUbN0dSGr1aP0Nrt4AEnTUbuGvquEC0mA64Gqt1fzirlRs5ibXx8g==" }, + "node_modules/stable": { + "version": "0.1.8", + "resolved": "https://registry.npmjs.org/stable/-/stable-0.1.8.tgz", + "integrity": "sha512-ji9qxRnOVfcuLDySj9qzhGSEFVobyt1kIOSkj1qZzYLzq7Tos/oUUWvotUPQLlrsidqsK6tBH89Bc9kL5zHA6w==", + "deprecated": "Modern JS already guarantees Array#sort() is a stable sort, so this library is deprecated. See the compatibility table on MDN: https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Array/sort#browser_compatibility" + }, "node_modules/streamsearch": { "version": "1.1.0", "resolved": "https://registry.npmjs.org/streamsearch/-/streamsearch-1.1.0.tgz", @@ -4306,6 +4963,26 @@ "url": "https://github.com/sponsors/ljharb" } }, + "node_modules/svgo": { + "version": "2.8.0", + "resolved": "https://registry.npmjs.org/svgo/-/svgo-2.8.0.tgz", + "integrity": "sha512-+N/Q9kV1+F+UeWYoSiULYo4xYSDQlTgb+ayMobAXPwMnLvop7oxKMo9OzIrX5x3eS4L4f2UHhc9axXwY8DpChg==", + "dependencies": { + "@trysound/sax": "0.2.0", + "commander": "^7.2.0", + "css-select": "^4.1.3", + "css-tree": "^1.1.3", + "csso": "^4.2.0", + "picocolors": "^1.0.0", + "stable": "^0.1.8" + }, + "bin": { + "svgo": "bin/svgo" + }, + "engines": { + "node": ">=10.13.0" + } + }, "node_modules/synckit": { "version": "0.8.5", "resolved": "https://registry.npmjs.org/synckit/-/synckit-0.8.5.tgz", @@ -4321,6 +4998,98 @@ "url": "https://opencollective.com/unts" } }, + "node_modules/tailwindcss": { + "version": "3.2.7", + "resolved": "https://registry.npmjs.org/tailwindcss/-/tailwindcss-3.2.7.tgz", + "integrity": "sha512-B6DLqJzc21x7wntlH/GsZwEXTBttVSl1FtCzC8WP4oBc/NKef7kaax5jeihkkCEWc831/5NDJ9gRNDK6NEioQQ==", + "dependencies": { + "arg": "^5.0.2", + "chokidar": "^3.5.3", + "color-name": "^1.1.4", + "detective": "^5.2.1", + "didyoumean": "^1.2.2", + "dlv": "^1.1.3", + "fast-glob": "^3.2.12", + "glob-parent": "^6.0.2", + "is-glob": "^4.0.3", + "lilconfig": "^2.0.6", + "micromatch": "^4.0.5", + "normalize-path": "^3.0.0", + "object-hash": "^3.0.0", + "picocolors": "^1.0.0", + "postcss": "^8.0.9", + "postcss-import": "^14.1.0", + "postcss-js": "^4.0.0", + "postcss-load-config": "^3.1.4", + "postcss-nested": "6.0.0", + "postcss-selector-parser": "^6.0.11", + "postcss-value-parser": "^4.2.0", + "quick-lru": "^5.1.1", + "resolve": "^1.22.1" + }, + "bin": { + "tailwind": "lib/cli.js", + "tailwindcss": "lib/cli.js" + }, + "engines": { + "node": ">=12.13.0" + }, + "peerDependencies": { + "postcss": "^8.0.9" + } + }, + "node_modules/tailwindcss/node_modules/color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==" + }, + "node_modules/tailwindcss/node_modules/glob-parent": { + "version": "6.0.2", + "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-6.0.2.tgz", + "integrity": "sha512-XxwI8EOhVQgWp6iDL+3b0r86f4d6AX6zSU55HfB4ydCEuXLXc5FcYeOu+nnGftS4TEju/11rt4KJPTMgbfmv4A==", + "dependencies": { + "is-glob": "^4.0.3" + }, + "engines": { + "node": ">=10.13.0" + } + }, + "node_modules/tailwindcss/node_modules/postcss-load-config": { + "version": "3.1.4", + "resolved": "https://registry.npmjs.org/postcss-load-config/-/postcss-load-config-3.1.4.tgz", + "integrity": "sha512-6DiM4E7v4coTE4uzA8U//WhtPwyhiim3eyjEMFCnUpzbrkK9wJHgKDT2mR+HbtSrd/NubVaYTOpSpjUl8NQeRg==", + "dependencies": { + "lilconfig": "^2.0.5", + "yaml": "^1.10.2" + }, + "engines": { + "node": ">= 10" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/postcss/" + }, + "peerDependencies": { + "postcss": ">=8.0.9", + "ts-node": ">=9.0.0" + }, + "peerDependenciesMeta": { + "postcss": { + "optional": true + }, + "ts-node": { + "optional": true + } + } + }, + "node_modules/tailwindcss/node_modules/yaml": { + "version": "1.10.2", + "resolved": "https://registry.npmjs.org/yaml/-/yaml-1.10.2.tgz", + "integrity": "sha512-r3vXyErRCYJ7wg28yvBY5VSoAF8ZvlcW9/BwUzEtUsjvX/DKs24dIkuwjtuprwJJHsbyUbLApepYTR1BN4uHrg==", + "engines": { + "node": ">= 6" + } + }, "node_modules/tiny-glob": { "version": "0.2.9", "resolved": "https://registry.npmjs.org/tiny-glob/-/tiny-glob-0.2.9.tgz", @@ -4798,6 +5567,14 @@ "url": "https://github.com/sponsors/wooorm" } }, + "node_modules/web-streams-polyfill": { + "version": "3.2.1", + "resolved": "https://registry.npmjs.org/web-streams-polyfill/-/web-streams-polyfill-3.2.1.tgz", + "integrity": "sha512-e0MO3wdXWKrLbL0DgGnUV7WHVuw9OUvL4hjgnPkIeEvESk74gAITi5G606JtZPp39cd8HA9VQzCIvA49LpPN5Q==", + "engines": { + "node": ">= 8" + } + }, "node_modules/which": { "version": "2.0.2", "resolved": "https://registry.npmjs.org/which/-/which-2.0.2.tgz", @@ -4873,11 +5650,27 @@ "url": "https://github.com/chalk/ansi-styles?sponsor=1" } }, + "node_modules/xtend": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/xtend/-/xtend-4.0.2.tgz", + "integrity": "sha512-LKYU1iAXJXUgAXn9URjiu+MWhyUXHsvfp7mcuYm9dSUKK0/CjtrUwFAxD82/mCWbtLsGjFIad0wIsod4zrTAEQ==", + "engines": { + "node": ">=0.4" + } + }, "node_modules/yallist": { "version": "3.1.1", "resolved": "https://registry.npmjs.org/yallist/-/yallist-3.1.1.tgz", "integrity": "sha512-a4UGQaWPH59mOXUYnAG2ewncQS4i4F43Tv3JoAM+s2VDAmS9NsK8GpDMLrCHPksFT7h3K6TOoUNn2pb7RoXx4g==" }, + "node_modules/yaml": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/yaml/-/yaml-2.2.1.tgz", + "integrity": "sha512-e0WHiYql7+9wr4cWMx3TVQrNwejKaEe7/rHNmQmqRjazfOP5W8PB6Jpebb5o6fIapbz9o9+2ipcaTM2ZwDI6lw==", + "engines": { + "node": ">= 14" + } + }, "node_modules/yargs-parser": { "version": "21.1.1", "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-21.1.1.tgz", @@ -4984,6 +5777,17 @@ "prismjs": "^1.28.0" } }, + "@astrojs/tailwind": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/@astrojs/tailwind/-/tailwind-3.0.1.tgz", + "integrity": "sha512-QSYh/xmz454j1yZU9rjw2J24PpH7j3h2ClesqMaAniOtcuL8RfP7KYCnCrk01xvjwqqO+QBpZNDD/SUhHNtFFg==", + "requires": { + "@proload/core": "^0.3.2", + "autoprefixer": "^10.4.7", + "postcss": "^8.4.14", + "postcss-load-config": "^4.0.1" + } + }, "@astrojs/telemetry": { "version": "2.0.1", "resolved": "https://registry.npmjs.org/@astrojs/telemetry/-/telemetry-2.0.1.tgz", @@ -5489,6 +6293,20 @@ "tslib": "^2.4.0" } }, + "@proload/core": { + "version": "0.3.3", + "resolved": "https://registry.npmjs.org/@proload/core/-/core-0.3.3.tgz", + "integrity": "sha512-7dAFWsIK84C90AMl24+N/ProHKm4iw0akcnoKjRvbfHifJZBLhaDsDus1QJmhG12lXj4e/uB/8mB/0aduCW+NQ==", + "requires": { + "deepmerge": "^4.2.2", + "escalade": "^3.1.1" + } + }, + "@trysound/sax": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/@trysound/sax/-/sax-0.2.0.tgz", + "integrity": "sha512-L7z9BgrNEcYyUYtF+HaEfiS5ebkh9jXqbszz7pC0hRBPaatV0XjSD3+eHrpqFemQfgwiFF0QPIarnIihIDn7OA==" + }, "@types/babel__core": { "version": "7.20.0", "resolved": "https://registry.npmjs.org/@types/babel__core/-/babel__core-7.20.0.tgz", @@ -5622,6 +6440,28 @@ "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.8.2.tgz", "integrity": "sha512-xjIYgE8HBrkpd/sJqOGNspf8uHG+NOHGOw6a/Urj8taM2EXfdNAH2oFcPeIFfsv3+kz/mJrS5VuMqbNLjCa2vw==" }, + "acorn-node": { + "version": "1.8.2", + "resolved": "https://registry.npmjs.org/acorn-node/-/acorn-node-1.8.2.tgz", + "integrity": "sha512-8mt+fslDufLYntIoPAaIMUe/lrbrehIiwmR3t2k9LljIzoigEPF27eLk2hy8zSGzmR/ogr7zbRKINMo1u0yh5A==", + "requires": { + "acorn": "^7.0.0", + "acorn-walk": "^7.0.0", + "xtend": "^4.0.2" + }, + "dependencies": { + "acorn": { + "version": "7.4.1", + "resolved": "https://registry.npmjs.org/acorn/-/acorn-7.4.1.tgz", + "integrity": "sha512-nQyp0o1/mNdbTO1PO6kHkwSrmgZ0MT/jCCpNiwbUjGoRN4dlBhqJtoQuCnEOKzgTVwg0ZWiCoQy6SxMebQVh8A==" + } + } + }, + "acorn-walk": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/acorn-walk/-/acorn-walk-7.2.0.tgz", + "integrity": "sha512-OPdCF6GsMIP+Az+aWfAAOEt2/+iVDKE7oy6lJ098aoe59oAmK76qV6Gw60SbZ8jHuG2wH058GF4pLFbYamYrVA==" + }, "ansi-align": { "version": "3.0.1", "resolved": "https://registry.npmjs.org/ansi-align/-/ansi-align-3.0.1.tgz", @@ -5673,6 +6513,20 @@ "color-convert": "^1.9.0" } }, + "anymatch": { + "version": "3.1.3", + "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-3.1.3.tgz", + "integrity": "sha512-KMReFUr0B4t+D+OBkjR3KYqvocp2XaSzO55UcB6mgQMd3KbcE+mWTyvVV7D/zsdEbNnV6acZUutkiHQXvTr1Rw==", + "requires": { + "normalize-path": "^3.0.0", + "picomatch": "^2.0.4" + } + }, + "arg": { + "version": "5.0.2", + "resolved": "https://registry.npmjs.org/arg/-/arg-5.0.2.tgz", + "integrity": "sha512-PYjyFOLKQ9y57JvQ6QLo8dAgNqswh8M1RMJYdQduT6xbWSgK36P/Z/v+p888pM69jMMfS8Xd8F6I1kQ/I9HUGg==" + }, "argparse": { "version": "1.0.10", "resolved": "https://registry.npmjs.org/argparse/-/argparse-1.0.10.tgz", @@ -5745,6 +6599,29 @@ "zod": "^3.17.3" } }, + "astro-icon": { + "version": "0.8.0", + "resolved": "https://registry.npmjs.org/astro-icon/-/astro-icon-0.8.0.tgz", + "integrity": "sha512-sCzhZcl46BIyLJVg89hq5J4uQABn2psmGvK4cUaxib+M/kBI3TrPy1w3g2O5h/WcrTHLVN9LyxjgkD4lEJJFpw==", + "requires": { + "node-fetch": "^3.1.0", + "resolve-pkg": "^2.0.0", + "svgo": "^2.8.0" + } + }, + "autoprefixer": { + "version": "10.4.13", + "resolved": "https://registry.npmjs.org/autoprefixer/-/autoprefixer-10.4.13.tgz", + "integrity": "sha512-49vKpMqcZYsJjwotvt4+h/BCjJVnhGwcLpDt5xkcaOG3eLrG/HUYLagrihYsQ+qrIBgIzX1Rw7a6L8I/ZA1Atg==", + "requires": { + "browserslist": "^4.21.4", + "caniuse-lite": "^1.0.30001426", + "fraction.js": "^4.2.0", + "normalize-range": "^0.1.2", + "picocolors": "^1.0.0", + "postcss-value-parser": "^4.2.0" + } + }, "bail": { "version": "2.0.2", "resolved": "https://registry.npmjs.org/bail/-/bail-2.0.2.tgz", @@ -5755,6 +6632,11 @@ "resolved": "https://registry.npmjs.org/base64-js/-/base64-js-1.5.1.tgz", "integrity": "sha512-AKpaYlHn8t4SVbOHCy+b5+KKgvR4vrsD8vbvrbiQJps7fKDTkjkDry6ji0rUJjC0kzbNePLwzxq8iypo41qeWA==" }, + "binary-extensions": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/binary-extensions/-/binary-extensions-2.2.0.tgz", + "integrity": "sha512-jDctJ/IVQbZoJykoeHbhXpOlNBqGNcwXJKJog42E5HDPUwQTSdjCHdihjj0DlnheQ7blbT6dHOafNAiS8ooQKA==" + }, "bl": { "version": "5.1.0", "resolved": "https://registry.npmjs.org/bl/-/bl-5.1.0.tgz", @@ -5765,6 +6647,11 @@ "readable-stream": "^3.4.0" } }, + "boolbase": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/boolbase/-/boolbase-1.0.0.tgz", + "integrity": "sha512-JZOSA7Mo9sNGB8+UjSgzdLtokWAky1zbztM3WRLCbZ70/3cTANmQmOdR7y2g+J0e2WXywy1yS468tY+IruqEww==" + }, "boxen": { "version": "6.2.1", "resolved": "https://registry.npmjs.org/boxen/-/boxen-6.2.1.tgz", @@ -5866,6 +6753,11 @@ "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-6.3.0.tgz", "integrity": "sha512-Gmy6FhYlCY7uOElZUSbxo2UCDH8owEk996gkbrpsgGtrJLM3J7jGxl9Ic7Qwwj4ivOE5AWZWRMecDdF7hqGjFA==" }, + "camelcase-css": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/camelcase-css/-/camelcase-css-2.0.1.tgz", + "integrity": "sha512-QOSvevhslijgYwRx6Rv7zKdMF8lbRmx+uQGx2+vDc+KI/eBnsy9kit5aj23AgGu3pa4t9AgwbnXWqS+iOY+2aA==" + }, "caniuse-lite": { "version": "1.0.30001460", "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001460.tgz", @@ -5901,6 +6793,21 @@ "resolved": "https://registry.npmjs.org/character-entities-legacy/-/character-entities-legacy-3.0.0.tgz", "integrity": "sha512-RpPp0asT/6ufRm//AJVwpViZbGM/MkjQFxJccQRHmISF/22NBtsHqAWmL+/pmkPWoIUJdWyeVleTl1wydHATVQ==" }, + "chokidar": { + "version": "3.5.3", + "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-3.5.3.tgz", + "integrity": "sha512-Dr3sfKRP6oTcjf2JmUmFJfeVMvXBdegxB0iVQ5eb2V10uFJUCAS8OByZdVAyVb8xXNz3GjjTgj9kLWsZTqE6kw==", + "requires": { + "anymatch": "~3.1.2", + "braces": "~3.0.2", + "fsevents": "~2.3.2", + "glob-parent": "~5.1.2", + "is-binary-path": "~2.1.0", + "is-glob": "~4.0.1", + "normalize-path": "~3.0.0", + "readdirp": "~3.6.0" + } + }, "ci-info": { "version": "3.8.0", "resolved": "https://registry.npmjs.org/ci-info/-/ci-info-3.8.0.tgz", @@ -5947,6 +6854,11 @@ "resolved": "https://registry.npmjs.org/comma-separated-tokens/-/comma-separated-tokens-2.0.3.tgz", "integrity": "sha512-Fu4hJdvzeylCfQPp9SGWidpzrMs7tTrlu6Vb8XGaRGck8QSNZJJp538Wrb60Lax4fPwR64ViY468OIUTbRlGZg==" }, + "commander": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/commander/-/commander-7.2.0.tgz", + "integrity": "sha512-QrWXB+ZQSVPmIWIhtEO9H+gwHaMGYiF5ChvoJ+K9ZGHG/sVsa6yiesAD1GC/x46sET00Xlwo1u49RVVVzvcSkw==" + }, "common-ancestor-path": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/common-ancestor-path/-/common-ancestor-path-1.0.1.tgz", @@ -5972,6 +6884,57 @@ "which": "^2.0.1" } }, + "css-select": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/css-select/-/css-select-4.3.0.tgz", + "integrity": "sha512-wPpOYtnsVontu2mODhA19JrqWxNsfdatRKd64kmpRbQgh1KtItko5sTnEpPdpSaJszTOhEMlF/RPz28qj4HqhQ==", + "requires": { + "boolbase": "^1.0.0", + "css-what": "^6.0.1", + "domhandler": "^4.3.1", + "domutils": "^2.8.0", + "nth-check": "^2.0.1" + } + }, + "css-tree": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/css-tree/-/css-tree-1.1.3.tgz", + "integrity": "sha512-tRpdppF7TRazZrjJ6v3stzv93qxRcSsFmW6cX0Zm2NVKpxE1WV1HblnghVv9TreireHkqI/VDEsfolRF1p6y7Q==", + "requires": { + "mdn-data": "2.0.14", + "source-map": "^0.6.1" + }, + "dependencies": { + "source-map": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", + "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==" + } + } + }, + "css-what": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/css-what/-/css-what-6.1.0.tgz", + "integrity": "sha512-HTUrgRJ7r4dsZKU6GjmpfRK1O76h97Z8MfS1G0FozR+oF2kG6Vfe8JE6zwrkbxigziPHinCJ+gCPjA9EaBDtRw==" + }, + "cssesc": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/cssesc/-/cssesc-3.0.0.tgz", + "integrity": "sha512-/Tb/JcjK111nNScGob5MNtsntNM1aCNUDipB/TkwZFhyDrrE47SOx/18wF2bbjgc3ZzCSKW1T5nt5EbFoAz/Vg==" + }, + "csso": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/csso/-/csso-4.2.0.tgz", + "integrity": "sha512-wvlcdIbf6pwKEk7vHj8/Bkc0B4ylXZruLvOgs9doS5eOsOpuodOV2zJChSpkp+pRpYQLQMeF04nr3Z68Sta9jA==", + "requires": { + "css-tree": "^1.1.2" + } + }, + "data-uri-to-buffer": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/data-uri-to-buffer/-/data-uri-to-buffer-4.0.1.tgz", + "integrity": "sha512-0R9ikRb668HB7QDxT1vkpuUBtqc53YyAwMwGeUFKRojY/NWKvdZ+9UYtRfGmhqNbRkTSVpMbmyhXipFFv2cb/A==" + }, "debug": { "version": "4.3.4", "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.4.tgz", @@ -5988,6 +6951,11 @@ "character-entities": "^2.0.0" } }, + "deepmerge": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/deepmerge/-/deepmerge-4.3.0.tgz", + "integrity": "sha512-z2wJZXrmeHdvYJp/Ux55wIjqo81G5Bp4c+oELTW+7ar6SogWHajt5a9gO3s3IDaGSAXjDk0vlQKN3rms8ab3og==" + }, "deepmerge-ts": { "version": "4.3.0", "resolved": "https://registry.npmjs.org/deepmerge-ts/-/deepmerge-ts-4.3.0.tgz", @@ -6006,16 +6974,36 @@ "resolved": "https://registry.npmjs.org/define-lazy-prop/-/define-lazy-prop-2.0.0.tgz", "integrity": "sha512-Ds09qNh8yw3khSjiJjiUInaGX9xlqZDY7JVryGxdxV7NPeuqQfplOpQ66yJFZut3jLa5zOwkXw1g9EI2uKh4Og==" }, + "defined": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/defined/-/defined-1.0.1.tgz", + "integrity": "sha512-hsBd2qSVCRE+5PmNdHt1uzyrFu5d3RwmFDKzyNZMFq/EwDNJF7Ee5+D5oEKF0hU6LhtoUF1macFvOe4AskQC1Q==" + }, "dequal": { "version": "2.0.3", "resolved": "https://registry.npmjs.org/dequal/-/dequal-2.0.3.tgz", "integrity": "sha512-0je+qPKHEMohvfRTCEo3CrPG6cAzAYgmzKyxRiYSSDkS6eGJdyVJm7WaYA5ECaAD9wLB2T4EEeymA5aFVcYXCA==" }, + "detective": { + "version": "5.2.1", + "resolved": "https://registry.npmjs.org/detective/-/detective-5.2.1.tgz", + "integrity": "sha512-v9XE1zRnz1wRtgurGu0Bs8uHKFSTdteYZNbIPFVhUZ39L/S79ppMpdmVOZAnoz1jfEFodc48n6MX483Xo3t1yw==", + "requires": { + "acorn-node": "^1.8.2", + "defined": "^1.0.0", + "minimist": "^1.2.6" + } + }, "devalue": { "version": "4.3.0", "resolved": "https://registry.npmjs.org/devalue/-/devalue-4.3.0.tgz", "integrity": "sha512-n94yQo4LI3w7erwf84mhRUkUJfhLoCZiLyoOZ/QFsDbcWNZePrLwbQpvZBUG2TNxwV3VjCKPxkiiQA6pe3TrTA==" }, + "didyoumean": { + "version": "1.2.2", + "resolved": "https://registry.npmjs.org/didyoumean/-/didyoumean-1.2.2.tgz", + "integrity": "sha512-gxtyfqMg7GKyhQmb056K7M3xszy/myH8w+B4RT+QXBQsvAOdc3XymqDDPHx1BgPgsdAA5SIifona89YtRATDzw==" + }, "diff": { "version": "5.1.0", "resolved": "https://registry.npmjs.org/diff/-/diff-5.1.0.tgz", @@ -6026,6 +7014,39 @@ "resolved": "https://registry.npmjs.org/dlv/-/dlv-1.1.3.tgz", "integrity": "sha512-+HlytyjlPKnIG8XuRG8WvmBP8xs8P71y+SKKS6ZXWoEgLuePxtDoUEiH7WkdePWrQ5JBpE6aoVqfZfJUQkjXwA==" }, + "dom-serializer": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/dom-serializer/-/dom-serializer-1.4.1.tgz", + "integrity": "sha512-VHwB3KfrcOOkelEG2ZOfxqLZdfkil8PtJi4P8N2MMXucZq2yLp75ClViUlOVwyoHEDjYU433Aq+5zWP61+RGag==", + "requires": { + "domelementtype": "^2.0.1", + "domhandler": "^4.2.0", + "entities": "^2.0.0" + } + }, + "domelementtype": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/domelementtype/-/domelementtype-2.3.0.tgz", + "integrity": "sha512-OLETBj6w0OsagBwdXnPdN0cnMfF9opN69co+7ZrbfPGrdpPVNBUj02spi6B1N7wChLQiPn4CSH/zJvXw56gmHw==" + }, + "domhandler": { + "version": "4.3.1", + "resolved": "https://registry.npmjs.org/domhandler/-/domhandler-4.3.1.tgz", + "integrity": "sha512-GrwoxYN+uWlzO8uhUXRl0P+kHE4GtVPfYzVLcUxPL7KNdHKj66vvlhiweIHqYYXWlw+T8iLMp42Lm67ghw4WMQ==", + "requires": { + "domelementtype": "^2.2.0" + } + }, + "domutils": { + "version": "2.8.0", + "resolved": "https://registry.npmjs.org/domutils/-/domutils-2.8.0.tgz", + "integrity": "sha512-w96Cjofp72M5IIhpjgobBimYEfoPjx1Vx0BSX9P30WBdZW2WIKU0T1Bd0kz2eNZ9ikjKgHbEyKx8BB6H1L3h3A==", + "requires": { + "dom-serializer": "^1.0.1", + "domelementtype": "^2.2.0", + "domhandler": "^4.2.0" + } + }, "dset": { "version": "3.1.2", "resolved": "https://registry.npmjs.org/dset/-/dset-3.1.2.tgz", @@ -6055,6 +7076,11 @@ "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-9.2.2.tgz", "integrity": "sha512-L18DaJsXSUk2+42pv8mLs5jJT2hqFkFE4j21wOmgbUqsZ2hL72NsUU785g9RXgo3s0ZNgVl42TiHp3ZtOv/Vyg==" }, + "entities": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/entities/-/entities-2.2.0.tgz", + "integrity": "sha512-p92if5Nz619I0w+akJrLZH0MX0Pb5DX39XOwQTtXSdQQOaYH03S1uIQp4mhOZtAXrxq4ViO67YTiLBo2638o9A==" + }, "es-module-lexer": { "version": "1.2.0", "resolved": "https://registry.npmjs.org/es-module-lexer/-/es-module-lexer-1.2.0.tgz", @@ -6166,6 +7192,15 @@ "reusify": "^1.0.4" } }, + "fetch-blob": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/fetch-blob/-/fetch-blob-3.2.0.tgz", + "integrity": "sha512-7yAQpD2UMJzLi1Dqv7qFYnPbaPx7ZfFK6PiIxQ4PfkGPyNyl2Ugx+a/umUonmKqjhM4DnfbMvdX6otXq83soQQ==", + "requires": { + "node-domexception": "^1.0.0", + "web-streams-polyfill": "^3.0.3" + } + }, "fill-range": { "version": "7.0.1", "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.0.1.tgz", @@ -6192,6 +7227,19 @@ "pkg-dir": "^4.2.0" } }, + "formdata-polyfill": { + "version": "4.0.10", + "resolved": "https://registry.npmjs.org/formdata-polyfill/-/formdata-polyfill-4.0.10.tgz", + "integrity": "sha512-buewHzMvYL29jdeQTVILecSaZKnt/RJWjoZCF5OW60Z67/GmSLBkOFM7qh1PI3zFNtJbaZL5eQu1vLfazOwj4g==", + "requires": { + "fetch-blob": "^3.1.2" + } + }, + "fraction.js": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/fraction.js/-/fraction.js-4.2.0.tgz", + "integrity": "sha512-MhLuK+2gUcnZe8ZHlaaINnQLl0xRIGRfcGk2yl8xoQAfHrSsL3rYu6FCmBdkdbhc9EPlwyGHewaRsvwRMJtAlA==" + }, "fsevents": { "version": "2.3.2", "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.3.2.tgz", @@ -6396,6 +7444,14 @@ "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz", "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==" }, + "is-binary-path": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/is-binary-path/-/is-binary-path-2.1.0.tgz", + "integrity": "sha512-ZMERYes6pDydyuGidse7OsHxtbI7WVeUEozgR/g7rd0xUimYNlvZRE/K2MgZTjWy725IfelLeVcEM97mmtRGXw==", + "requires": { + "binary-extensions": "^2.0.0" + } + }, "is-buffer": { "version": "2.0.5", "resolved": "https://registry.npmjs.org/is-buffer/-/is-buffer-2.0.5.tgz", @@ -6521,6 +7577,11 @@ "resolved": "https://registry.npmjs.org/kleur/-/kleur-4.1.5.tgz", "integrity": "sha512-o+NO+8WrRiQEE4/7nwRJhN1HWpVmJm511pBHUxPLtp0BUISzlBplORYSmTclCnJvQq2tKu/sgl3xVpkc7ZWuQQ==" }, + "lilconfig": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/lilconfig/-/lilconfig-2.1.0.tgz", + "integrity": "sha512-utWOt/GHzuUxnLKxB6dk81RoOeoNeHgbrXiuGk4yyF5qlRz+iIVWu56E2fqGHFrXz0QNUhLB/8nKqvRH66JKGQ==" + }, "load-yaml-file": { "version": "0.2.0", "resolved": "https://registry.npmjs.org/load-yaml-file/-/load-yaml-file-0.2.0.tgz", @@ -6747,6 +7808,11 @@ "@types/mdast": "^3.0.0" } }, + "mdn-data": { + "version": "2.0.14", + "resolved": "https://registry.npmjs.org/mdn-data/-/mdn-data-2.0.14.tgz", + "integrity": "sha512-dn6wd0uw5GsdswPFfsgMp5NSB0/aDe6fK94YJV/AJDYXL6HVLWBsxeq7js7Ad+mU2K9LAlwpk6kN2D5mwCPVow==" + }, "merge-stream": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/merge-stream/-/merge-stream-2.0.0.tgz", @@ -7075,6 +8141,11 @@ "resolved": "https://registry.npmjs.org/mimic-fn/-/mimic-fn-4.0.0.tgz", "integrity": "sha512-vqiC06CuhBTUdZH+RYl8sFrL096vA45Ok5ISO6sE/Mr1jRbGH4Csnhi8f3wKVl7x8mO4Au7Ir9D3Oyv1VYMFJw==" }, + "minimist": { + "version": "1.2.8", + "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.8.tgz", + "integrity": "sha512-2yyAR8qBkN3YuheJanUpWC5U3bb5osDywNB8RzDVlDwDHbocAJveqqj1u8+SVD7jkWT4yvsHCpWqqWqAxb0zCA==" + }, "mri": { "version": "1.2.0", "resolved": "https://registry.npmjs.org/mri/-/mri-1.2.0.tgz", @@ -7098,11 +8169,36 @@ "@types/nlcst": "^1.0.0" } }, + "node-domexception": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/node-domexception/-/node-domexception-1.0.0.tgz", + "integrity": "sha512-/jKZoMpw0F8GRwl4/eLROPA3cfcXtLApP0QzLmUT/HuPCZWyB7IY9ZrMeKw2O/nFIqPQB3PVM9aYm0F312AXDQ==" + }, + "node-fetch": { + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/node-fetch/-/node-fetch-3.3.0.tgz", + "integrity": "sha512-BKwRP/O0UvoMKp7GNdwPlObhYGB5DQqwhEDQlNKuoqwVYSxkSZCSbHjnFFmUEtwSKRPU4kNK8PbDYYitwaE3QA==", + "requires": { + "data-uri-to-buffer": "^4.0.0", + "fetch-blob": "^3.1.4", + "formdata-polyfill": "^4.0.10" + } + }, "node-releases": { "version": "2.0.10", "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-2.0.10.tgz", "integrity": "sha512-5GFldHPXVG/YZmFzJvKK2zDSzPKhEp0+ZR5SVaoSag9fsL5YgHbUHDfnG5494ISANDcK4KwPXAx2xqVEydmd7w==" }, + "normalize-path": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-3.0.0.tgz", + "integrity": "sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==" + }, + "normalize-range": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/normalize-range/-/normalize-range-0.1.2.tgz", + "integrity": "sha512-bdok/XvKII3nUpklnV6P2hxtMNrCboOjAcyBuQnWEhO665FwrSNRxU+AqpsyvO6LgGYPspN+lu5CLtw4jPRKNA==" + }, "npm-run-path": { "version": "5.1.0", "resolved": "https://registry.npmjs.org/npm-run-path/-/npm-run-path-5.1.0.tgz", @@ -7118,6 +8214,19 @@ } } }, + "nth-check": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/nth-check/-/nth-check-2.1.1.tgz", + "integrity": "sha512-lqjrjmaOoAnWfMmBPL+XNnynZh2+swxiX3WUE0s4yEHI6m+AwrK2UZOimIRl3X/4QctVqS8AiZjFqyOGrMXb/w==", + "requires": { + "boolbase": "^1.0.0" + } + }, + "object-hash": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/object-hash/-/object-hash-3.0.0.tgz", + "integrity": "sha512-RSn9F68PjH9HqtltsSnqYC1XXoWe9Bju5+213R98cNGttag9q9yAOTzdbsqvIa7aNm5WffBZFpWYr2aWrklWAw==" + }, "onetime": { "version": "6.0.0", "resolved": "https://registry.npmjs.org/onetime/-/onetime-6.0.0.tgz", @@ -7290,6 +8399,55 @@ "source-map-js": "^1.0.2" } }, + "postcss-import": { + "version": "14.1.0", + "resolved": "https://registry.npmjs.org/postcss-import/-/postcss-import-14.1.0.tgz", + "integrity": "sha512-flwI+Vgm4SElObFVPpTIT7SU7R3qk2L7PyduMcokiaVKuWv9d/U+Gm/QAd8NDLuykTWTkcrjOeD2Pp1rMeBTGw==", + "requires": { + "postcss-value-parser": "^4.0.0", + "read-cache": "^1.0.0", + "resolve": "^1.1.7" + } + }, + "postcss-js": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/postcss-js/-/postcss-js-4.0.1.tgz", + "integrity": "sha512-dDLF8pEO191hJMtlHFPRa8xsizHaM82MLfNkUHdUtVEV3tgTp5oj+8qbEqYM57SLfc74KSbw//4SeJma2LRVIw==", + "requires": { + "camelcase-css": "^2.0.1" + } + }, + "postcss-load-config": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/postcss-load-config/-/postcss-load-config-4.0.1.tgz", + "integrity": "sha512-vEJIc8RdiBRu3oRAI0ymerOn+7rPuMvRXslTvZUKZonDHFIczxztIyJ1urxM1x9JXEikvpWWTUUqal5j/8QgvA==", + "requires": { + "lilconfig": "^2.0.5", + "yaml": "^2.1.1" + } + }, + "postcss-nested": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/postcss-nested/-/postcss-nested-6.0.0.tgz", + "integrity": "sha512-0DkamqrPcmkBDsLn+vQDIrtkSbNkv5AD/M322ySo9kqFkCIYklym2xEmWkwo+Y3/qZo34tzEPNUw4y7yMCdv5w==", + "requires": { + "postcss-selector-parser": "^6.0.10" + } + }, + "postcss-selector-parser": { + "version": "6.0.11", + "resolved": "https://registry.npmjs.org/postcss-selector-parser/-/postcss-selector-parser-6.0.11.tgz", + "integrity": "sha512-zbARubNdogI9j7WY4nQJBiNqQf3sLS3wCP4WfOidu+p28LofJqDH1tcXypGrcmMHhDk2t9wGhCsYe/+szLTy1g==", + "requires": { + "cssesc": "^3.0.0", + "util-deprecate": "^1.0.2" + } + }, + "postcss-value-parser": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/postcss-value-parser/-/postcss-value-parser-4.2.0.tgz", + "integrity": "sha512-1NNCs6uurfkVbeXG4S8JFT9t19m45ICnif8zWLd5oPSZ50QnwMfK+H3jv408d4jw/7Bttv5axS5IiHoLaVNHeQ==" + }, "preferred-pm": { "version": "3.0.3", "resolved": "https://registry.npmjs.org/preferred-pm/-/preferred-pm-3.0.3.tgz", @@ -7355,6 +8513,26 @@ "resolved": "https://registry.npmjs.org/queue-microtask/-/queue-microtask-1.2.3.tgz", "integrity": "sha512-NuaNSa6flKT5JaSYQzJok04JzTL1CA6aGhv5rfLW3PgqA+M2ChpZQnAC8h8i4ZFkBS8X5RqkDBHA7r4hej3K9A==" }, + "quick-lru": { + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/quick-lru/-/quick-lru-5.1.1.tgz", + "integrity": "sha512-WuyALRjWPDGtt/wzJiadO5AXY+8hZ80hVpe6MyivgraREW751X3SbhRvG3eLKOYN+8VEvqLcf3wdnt44Z4S4SA==" + }, + "read-cache": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/read-cache/-/read-cache-1.0.0.tgz", + "integrity": "sha512-Owdv/Ft7IjOgm/i0xvNDZ1LrRANRfew4b2prF3OWMQLxLfu3bS8FVhCsrSCMK4lR56Y9ya+AThoTpDCTxCmpRA==", + "requires": { + "pify": "^2.3.0" + }, + "dependencies": { + "pify": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/pify/-/pify-2.3.0.tgz", + "integrity": "sha512-udgsAY+fTnvv7kI7aaxbqwWNb0AHiB0qBO89PZKPkoTmGOgdbrHDKD+0B2X4uTfJ/FT1R09r9gTsjUjNJotuog==" + } + } + }, "readable-stream": { "version": "3.6.1", "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.6.1.tgz", @@ -7365,6 +8543,14 @@ "util-deprecate": "^1.0.1" } }, + "readdirp": { + "version": "3.6.0", + "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-3.6.0.tgz", + "integrity": "sha512-hOS089on8RduqdbhvQ5Z37A0ESjsqz6qnRcffsMU3495FuTdqSm+7bhJ29JvIOsBDEEnan5DPu9t3To9VRlMzA==", + "requires": { + "picomatch": "^2.2.1" + } + }, "rehype": { "version": "12.0.1", "resolved": "https://registry.npmjs.org/rehype/-/rehype-12.0.1.tgz", @@ -7459,6 +8645,19 @@ "supports-preserve-symlinks-flag": "^1.0.0" } }, + "resolve-from": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-5.0.0.tgz", + "integrity": "sha512-qYg9KP24dD5qka9J47d0aVky0N+b4fTU89LN9iDnjB5waksiC49rvMB0PrUJQGoTmH50XPiqOvAjDfaijGxYZw==" + }, + "resolve-pkg": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/resolve-pkg/-/resolve-pkg-2.0.0.tgz", + "integrity": "sha512-+1lzwXehGCXSeryaISr6WujZzowloigEofRB+dj75y9RRa/obVcYgbHJd53tdYw8pvZj8GojXaaENws8Ktw/hQ==", + "requires": { + "resolve-from": "^5.0.0" + } + }, "restore-cursor": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/restore-cursor/-/restore-cursor-4.0.0.tgz", @@ -7675,6 +8874,11 @@ "resolved": "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.0.3.tgz", "integrity": "sha512-D9cPgkvLlV3t3IzL0D0YLvGA9Ahk4PcvVwUbN0dSGr1aP0Nrt4AEnTUbuGvquEC0mA64Gqt1fzirlRs5ibXx8g==" }, + "stable": { + "version": "0.1.8", + "resolved": "https://registry.npmjs.org/stable/-/stable-0.1.8.tgz", + "integrity": "sha512-ji9qxRnOVfcuLDySj9qzhGSEFVobyt1kIOSkj1qZzYLzq7Tos/oUUWvotUPQLlrsidqsK6tBH89Bc9kL5zHA6w==" + }, "streamsearch": { "version": "1.1.0", "resolved": "https://registry.npmjs.org/streamsearch/-/streamsearch-1.1.0.tgz", @@ -7759,6 +8963,20 @@ "resolved": "https://registry.npmjs.org/supports-preserve-symlinks-flag/-/supports-preserve-symlinks-flag-1.0.0.tgz", "integrity": "sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w==" }, + "svgo": { + "version": "2.8.0", + "resolved": "https://registry.npmjs.org/svgo/-/svgo-2.8.0.tgz", + "integrity": "sha512-+N/Q9kV1+F+UeWYoSiULYo4xYSDQlTgb+ayMobAXPwMnLvop7oxKMo9OzIrX5x3eS4L4f2UHhc9axXwY8DpChg==", + "requires": { + "@trysound/sax": "0.2.0", + "commander": "^7.2.0", + "css-select": "^4.1.3", + "css-tree": "^1.1.3", + "csso": "^4.2.0", + "picocolors": "^1.0.0", + "stable": "^0.1.8" + } + }, "synckit": { "version": "0.8.5", "resolved": "https://registry.npmjs.org/synckit/-/synckit-0.8.5.tgz", @@ -7768,6 +8986,65 @@ "tslib": "^2.5.0" } }, + "tailwindcss": { + "version": "3.2.7", + "resolved": "https://registry.npmjs.org/tailwindcss/-/tailwindcss-3.2.7.tgz", + "integrity": "sha512-B6DLqJzc21x7wntlH/GsZwEXTBttVSl1FtCzC8WP4oBc/NKef7kaax5jeihkkCEWc831/5NDJ9gRNDK6NEioQQ==", + "requires": { + "arg": "^5.0.2", + "chokidar": "^3.5.3", + "color-name": "^1.1.4", + "detective": "^5.2.1", + "didyoumean": "^1.2.2", + "dlv": "^1.1.3", + "fast-glob": "^3.2.12", + "glob-parent": "^6.0.2", + "is-glob": "^4.0.3", + "lilconfig": "^2.0.6", + "micromatch": "^4.0.5", + "normalize-path": "^3.0.0", + "object-hash": "^3.0.0", + "picocolors": "^1.0.0", + "postcss": "^8.0.9", + "postcss-import": "^14.1.0", + "postcss-js": "^4.0.0", + "postcss-load-config": "^3.1.4", + "postcss-nested": "6.0.0", + "postcss-selector-parser": "^6.0.11", + "postcss-value-parser": "^4.2.0", + "quick-lru": "^5.1.1", + "resolve": "^1.22.1" + }, + "dependencies": { + "color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==" + }, + "glob-parent": { + "version": "6.0.2", + "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-6.0.2.tgz", + "integrity": "sha512-XxwI8EOhVQgWp6iDL+3b0r86f4d6AX6zSU55HfB4ydCEuXLXc5FcYeOu+nnGftS4TEju/11rt4KJPTMgbfmv4A==", + "requires": { + "is-glob": "^4.0.3" + } + }, + "postcss-load-config": { + "version": "3.1.4", + "resolved": "https://registry.npmjs.org/postcss-load-config/-/postcss-load-config-3.1.4.tgz", + "integrity": "sha512-6DiM4E7v4coTE4uzA8U//WhtPwyhiim3eyjEMFCnUpzbrkK9wJHgKDT2mR+HbtSrd/NubVaYTOpSpjUl8NQeRg==", + "requires": { + "lilconfig": "^2.0.5", + "yaml": "^1.10.2" + } + }, + "yaml": { + "version": "1.10.2", + "resolved": "https://registry.npmjs.org/yaml/-/yaml-1.10.2.tgz", + "integrity": "sha512-r3vXyErRCYJ7wg28yvBY5VSoAF8ZvlcW9/BwUzEtUsjvX/DKs24dIkuwjtuprwJJHsbyUbLApepYTR1BN4uHrg==" + } + } + }, "tiny-glob": { "version": "0.2.9", "resolved": "https://registry.npmjs.org/tiny-glob/-/tiny-glob-0.2.9.tgz", @@ -8081,6 +9358,11 @@ "resolved": "https://registry.npmjs.org/web-namespaces/-/web-namespaces-2.0.1.tgz", "integrity": "sha512-bKr1DkiNa2krS7qxNtdrtHAmzuYGFQLiQ13TsorsdT6ULTkPLKuu5+GsFpDlg6JFjUTwX2DyhMPG2be8uPrqsQ==" }, + "web-streams-polyfill": { + "version": "3.2.1", + "resolved": "https://registry.npmjs.org/web-streams-polyfill/-/web-streams-polyfill-3.2.1.tgz", + "integrity": "sha512-e0MO3wdXWKrLbL0DgGnUV7WHVuw9OUvL4hjgnPkIeEvESk74gAITi5G606JtZPp39cd8HA9VQzCIvA49LpPN5Q==" + }, "which": { "version": "2.0.2", "resolved": "https://registry.npmjs.org/which/-/which-2.0.2.tgz", @@ -8128,11 +9410,21 @@ } } }, + "xtend": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/xtend/-/xtend-4.0.2.tgz", + "integrity": "sha512-LKYU1iAXJXUgAXn9URjiu+MWhyUXHsvfp7mcuYm9dSUKK0/CjtrUwFAxD82/mCWbtLsGjFIad0wIsod4zrTAEQ==" + }, "yallist": { "version": "3.1.1", "resolved": "https://registry.npmjs.org/yallist/-/yallist-3.1.1.tgz", "integrity": "sha512-a4UGQaWPH59mOXUYnAG2ewncQS4i4F43Tv3JoAM+s2VDAmS9NsK8GpDMLrCHPksFT7h3K6TOoUNn2pb7RoXx4g==" }, + "yaml": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/yaml/-/yaml-2.2.1.tgz", + "integrity": "sha512-e0WHiYql7+9wr4cWMx3TVQrNwejKaEe7/rHNmQmqRjazfOP5W8PB6Jpebb5o6fIapbz9o9+2ipcaTM2ZwDI6lw==" + }, "yargs-parser": { "version": "21.1.1", "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-21.1.1.tgz", diff --git a/package.json b/package.json index 8bce564..bba3e92 100644 --- a/package.json +++ b/package.json @@ -10,6 +10,9 @@ "astro": "astro" }, "dependencies": { - "astro": "^2.0.17" + "@astrojs/tailwind": "^3.0.1", + "astro": "^2.0.17", + "astro-icon": "^0.8.0", + "tailwindcss": "^3.2.7" } -} \ No newline at end of file +} diff --git a/src/components/Nav.astro b/src/components/Nav.astro new file mode 100644 index 0000000..29f7790 --- /dev/null +++ b/src/components/Nav.astro @@ -0,0 +1,61 @@ +--- +// Imports +import { Icon } from "astro-icon"; + +// Image imports +import logo from "../images/logo.png"; +// Pages +const navbar = [ + { + name: "Home", + href: "/", + }, + { + name: "Blog", + href: "/blog/", + }, + { + name: "Docs", + href: "/docs/", + }, + { + name: "Source", + href: "https://github.com/lancerossdev/nofuss", + }, +]; +const desktopIcons = "dark:text-zinc-300 text-black hover:text-zinc-500 dark:hover:text-zinc-400 hidden sm:block"; +const mobileIcons = "dark:text-zinc-300 text-black hover:text-zinc-500 dark:hover:text-zinc-400 sm:hidden"; +--- + +<header class="bg-white dark:bg-zinc-900 text-lg dark:text-zinc-300 mx-auto max-w-6xl flex flex-row justify-between"> + <a href="/" class="mx-8 flex items-center" aria-label="Website Logo"> + <img src={logo} alt="" class="h-11"> + </a> + { + ( + <nav class="pt-6 flex flex-row space-x-8"> + {navbar.map((navbar) => ( + <a href={navbar.href} class={desktopIcons}> + {navbar.name} + </a> + ))} + </nav> + ) + } + <button class="nav-toggle mx-8 my-5 sm:invisible" aria-label="menu button"> + <Icon name="ri:menu-4-line" class="w-8 h-8" /> + </button> +</header> +<header class="nav-menu hidden bg-white dark:bg-zinc-900"> + { + ( + <nav class="m-8 flex-col inline-flex space-y-3"> + {navbar.map((navbar) => ( + <a href={navbar.href} class={mobileIcons}> + {navbar.name} + </a> + ))} + </nav> + ) + } +</header> \ No newline at end of file diff --git a/src/images/logo.png b/src/images/logo.png new file mode 100644 index 0000000000000000000000000000000000000000..d9bd55974203d275741122499aa4827f616816c6 GIT binary patch literal 19636 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 AivR!s literal 0 HcmV?d00001 diff --git a/src/layouts/Layout.astro b/src/layouts/Layout.astro new file mode 100644 index 0000000..4c696b3 --- /dev/null +++ b/src/layouts/Layout.astro @@ -0,0 +1,17 @@ +--- +var {title} = Astro.props; +--- + +<html lang="en"> + <head> + <meta charset="utf-8" /> + <link rel="icon" type="image/svg+xml" href="/favicon.svg" /> + <meta name="viewport" content="width=device-width" /> + <meta name="generator" content={Astro.generator} /> + <title>{title}</title> + </head> + <body> + <slot></slot> + + </body> +</html> diff --git a/src/pages/index.astro b/src/pages/index.astro index da17313..9a6c472 100644 --- a/src/pages/index.astro +++ b/src/pages/index.astro @@ -1,16 +1,11 @@ --- +import Layout from '../layouts/Layout.astro'; +import Nav from '../components/Nav.astro'; --- -<html lang="en"> - <head> - <meta charset="utf-8" /> - <link rel="icon" type="image/svg+xml" href="/favicon.svg" /> - <meta name="viewport" content="width=device-width" /> - <meta name="generator" content={Astro.generator} /> - <title>Astro</title> - </head> - <body> - <h1>Astro</h1> - </body> -</html> -<!-- Init --> +<Layout> + <Nav></Nav> + + + +</Layout> \ No newline at end of file diff --git a/tailwind.config.cjs b/tailwind.config.cjs new file mode 100644 index 0000000..f5368a7 --- /dev/null +++ b/tailwind.config.cjs @@ -0,0 +1,8 @@ +/** @type {import('tailwindcss').Config} */ +module.exports = { + content: ['./src/**/*.{astro,html,js,jsx,md,mdx,svelte,ts,tsx,vue}'], + theme: { + extend: {}, + }, + plugins: [], +}