diff --git a/.github/workflows/publish.yml b/.github/workflows/astro-ghostcms.yml similarity index 85% rename from .github/workflows/publish.yml rename to .github/workflows/astro-ghostcms.yml index 28826aab..7bdbe1fa 100644 --- a/.github/workflows/publish.yml +++ b/.github/workflows/astro-ghostcms.yml @@ -1,12 +1,15 @@ -name: publish npm +name: Publish Astro-GhostCMS on: release: - types: [created] + types: [published] jobs: publishnpm: runs-on: ubuntu-latest + defaults: + run: + working-directory: ./packages/astro-ghostcms steps: - name: checkout uses: actions/checkout@v3 @@ -29,6 +32,9 @@ jobs: contents: read packages: write runs-on: ubuntu-latest + defaults: + run: + working-directory: ./packages/astro-ghostcms steps: - name: checkout uses: actions/checkout@v3 diff --git a/.github/workflows/lighthouse.yml b/.github/workflows/lighthouse.yml new file mode 100644 index 00000000..4756ecd3 --- /dev/null +++ b/.github/workflows/lighthouse.yml @@ -0,0 +1,24 @@ +name: Unlighthouse - Demo Site + +on: + workflow_call: + +jobs: + Unlighthouse-demo: + runs-on: ubuntu-latest + steps: + - uses: actions/checkout@v2 + with: + fetch-depth: 0 + + - name: Install Dependencies + run: npm install -g @unlighthouse/cli puppeteer netlify-cli + + - name: Unlighthouse assertions and client + run: unlighthouse-ci --site demo.astro-ghostcms.xyz --budget 75 --build-static + + - name: Deploy + run: netlify deploy --dir=.unlighthouse --prod --message="New Release Deploy from GitHub Actions" + env: + NETLIFY_AUTH_TOKEN: ${{ secrets.NETLIFY_AUTH_TOKEN }} + NETLIFY_SITE_ID: ${{ secrets.NETLIFY_SITE_ID }} diff --git a/DELETE_ME.md b/DELETE_ME.md deleted file mode 100644 index cd67c9ad..00000000 --- a/DELETE_ME.md +++ /dev/null @@ -1,19 +0,0 @@ -## Checklist - -- [ ] Update all `TODO:` -- [ ] Update all `package-name` occurences -- [ ] Add a LICENSE.md at the root -- [ ] Have gh cli installed -- [ ] Work on the integration logic -- [ ] Work on docs - - [ ] JSDoc - - [ ] Package README -- [ ] Format/lint (`pnpm lint:fix`) -- [ ] Setup GitHub repository -- [ ] Release (see below) -- [ ] Share! - -To create a release: -- [ ] `pnpm run changeset` -- [ ] Commit and push -- [ ] `pnpm release` diff --git a/demo/.env b/demo/.env new file mode 100644 index 00000000..fbeecd6d --- /dev/null +++ b/demo/.env @@ -0,0 +1,2 @@ +CONTENT_API_KEY=a33da3965a3a9fb2c6b3f63b48 +CONTENT_API_URL=https://ghostdemo.matthiesen.xyz \ No newline at end of file diff --git a/demo/.env.demo b/demo/.env.demo new file mode 100644 index 00000000..fbeecd6d --- /dev/null +++ b/demo/.env.demo @@ -0,0 +1,2 @@ +CONTENT_API_KEY=a33da3965a3a9fb2c6b3f63b48 +CONTENT_API_URL=https://ghostdemo.matthiesen.xyz \ No newline at end of file diff --git a/demo/.vscode/extensions.json b/demo/.vscode/extensions.json new file mode 100644 index 00000000..22a15055 --- /dev/null +++ b/demo/.vscode/extensions.json @@ -0,0 +1,4 @@ +{ + "recommendations": ["astro-build.astro-vscode"], + "unwantedRecommendations": [] +} diff --git a/demo/.vscode/launch.json b/demo/.vscode/launch.json new file mode 100644 index 00000000..d6422097 --- /dev/null +++ b/demo/.vscode/launch.json @@ -0,0 +1,11 @@ +{ + "version": "0.2.0", + "configurations": [ + { + "command": "./node_modules/.bin/astro dev", + "name": "Development server", + "request": "launch", + "type": "node-terminal" + } + ] +} diff --git a/demo/LICENSE b/demo/LICENSE new file mode 100644 index 00000000..88dd1335 --- /dev/null +++ b/demo/LICENSE @@ -0,0 +1,21 @@ +MIT License + +Copyright (c) 2024 Matthiesen XYZ + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. diff --git a/demo/README.md b/demo/README.md new file mode 100644 index 00000000..e844e622 --- /dev/null +++ b/demo/README.md @@ -0,0 +1,12 @@ +# Astro-GhostCMS Demo Template + +![Vercel](https://vercelbadge.vercel.app/api/matthiesenxyz/astro-ghostcms-demo) + +This Repo is a Demo Website for the [@matthiesenxyz/astro-ghostcms](https://github.com/MatthiesenXYZ/astro-ghostcms) integraion. + +- For a live preview goto [Demo.Astro-GhostCMS.xyz](https://demo.astro-ghostcms.xyz) +- To see the Current Lighthouse test that is ran every deployment goto [Test.Demo.Astro-GhostCMS.xyz](https://test.demo.astro-ghostcms.xyz) + +### For more information Check our website + +[Astro-GhostCMS.xyz](https://astro-ghostcms.xyz) diff --git a/demo/astro.config.mjs b/demo/astro.config.mjs new file mode 100644 index 00000000..e445154c --- /dev/null +++ b/demo/astro.config.mjs @@ -0,0 +1,8 @@ +import { defineConfig } from 'astro/config'; +import GhostCMS from "@matthiesenxyz/astro-ghostcms"; + +// https://astro.build/config +export default defineConfig({ + site: "https://demo.astro-ghostcms.xyz/", + integrations: [GhostCMS()] +}); diff --git a/demo/package.json b/demo/package.json new file mode 100644 index 00000000..cfc7662e --- /dev/null +++ b/demo/package.json @@ -0,0 +1,20 @@ +{ + "name": "demo", + "type": "module", + "version": "0.0.1", + "scripts": { + "dev": "astro dev", + "start": "astro dev", + "build": "astro check && astro build", + "preview": "astro preview", + "astro": "astro" + }, + "dependencies": { + "@astrojs/check": "^0.4.1", + "@matthiesenxyz/astro-ghostcms": "^2.1.8", + "astro": "^4.2.0", + "astro-robots-txt": "^1.0.0", + "typescript": "^5.3.3", + "zod-validation-error": "^3.0.0" + } +} diff --git a/demo/public/favicon.svg b/demo/public/favicon.svg new file mode 100644 index 00000000..f157bd1c --- /dev/null +++ b/demo/public/favicon.svg @@ -0,0 +1,9 @@ + + + + diff --git a/demo/public/rss.xsl b/demo/public/rss.xsl new file mode 100644 index 00000000..7fdf8788 --- /dev/null +++ b/demo/public/rss.xsl @@ -0,0 +1,52 @@ + + + + + + + <xsl:value-of select="/rss/channel/title"/> Blog Feed + + + + + + + +
+
+

+ + +

+

+ + + + + Visit Website → + +
+

Recent Blog Posts

+ +
+

+ + + + + + +

+ + Published: + +

+ +

+
+
+
+ + +
+
\ No newline at end of file diff --git a/demo/src/env.d.ts b/demo/src/env.d.ts new file mode 100644 index 00000000..e8c8b171 --- /dev/null +++ b/demo/src/env.d.ts @@ -0,0 +1,9 @@ +/// +interface ImportMetaEnv { + readonly CONTENT_API_KEY: string + readonly CONTENT_API_URL: string +} + +interface ImportMeta { + readonly env: ImportMetaEnv; +} \ No newline at end of file diff --git a/demo/tsconfig.json b/demo/tsconfig.json new file mode 100644 index 00000000..77da9dd0 --- /dev/null +++ b/demo/tsconfig.json @@ -0,0 +1,3 @@ +{ + "extends": "astro/tsconfigs/strict" +} \ No newline at end of file diff --git a/package.json b/package.json index f72417dc..167713fb 100644 --- a/package.json +++ b/package.json @@ -7,6 +7,8 @@ }, "scripts": { "playground:dev": "pnpm --filter playground dev", + "www:dev": "pnpm --filter www dev", + "demo:dev": "pnpm --filter demo dev", "lint": "biome check .", "lint:fix": "biome check --apply ." }, diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index acc87434..f1b2e99d 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -15,6 +15,27 @@ importers: specifier: ^2.27.1 version: 2.27.1 + demo: + dependencies: + '@astrojs/check': + specifier: ^0.4.1 + version: 0.4.1(typescript@5.3.3) + '@matthiesenxyz/astro-ghostcms': + specifier: ^2.1.8 + version: link:../packages/astro-ghostcms + astro: + specifier: ^4.2.0 + version: 4.2.3(@types/node@20.11.5)(sass@1.70.0)(typescript@5.3.3) + astro-robots-txt: + specifier: ^1.0.0 + version: 1.0.0 + typescript: + specifier: ^5.3.3 + version: 5.3.3 + zod-validation-error: + specifier: ^3.0.0 + version: 3.0.0(zod@3.22.4) + packages/astro-ghostcms: dependencies: '@astrojs/check': @@ -94,6 +115,27 @@ importers: specifier: ^5.3.3 version: 5.3.3 + www: + dependencies: + '@astrojs/check': + specifier: ^0.4.1 + version: 0.4.1(typescript@5.3.3) + '@astrojs/starlight': + specifier: ^0.15.4 + version: 0.15.4(astro@4.2.3) + astro: + specifier: ^4.2.0 + version: 4.2.3(@types/node@20.11.5)(sass@1.70.0)(typescript@5.3.3) + sass: + specifier: ^1.69.5 + version: 1.70.0 + sharp: + specifier: ^0.32.6 + version: 0.32.6 + typescript: + specifier: ^5.3.3 + version: 5.3.3 + packages: /@aashutoshrathi/word-wrap@1.2.6: @@ -141,7 +183,6 @@ packages: transitivePeerDependencies: - prettier - prettier-plugin-astro - dev: true /@astrojs/compiler@1.8.2: resolution: {integrity: sha512-o/ObKgtMzl8SlpIdzaxFnt7SATKPxu4oIP/1NL+HDJRzxfJcAkOTAb/ZKMRyULbz4q+1t2/DAebs2Z1QairkZw==} @@ -209,6 +250,32 @@ packages: - supports-color dev: false + /@astrojs/mdx@2.0.6(astro@4.2.3): + resolution: {integrity: sha512-PY6FYN5TN8dsRFSzcPIt5ofJ/w+v+5GtUUyDYbznu8zmFWlL9TkTLJ9U1zaQ3s2Qh6r1cAeLdEYjW/hW+vZzlw==} + engines: {node: '>=18.14.1'} + peerDependencies: + astro: ^4.0.0 + dependencies: + '@astrojs/markdown-remark': 4.2.0 + '@mdx-js/mdx': 3.0.0 + acorn: 8.11.3 + astro: 4.2.3(@types/node@20.11.5)(sass@1.70.0)(typescript@5.3.3) + es-module-lexer: 1.4.1 + estree-util-visit: 2.0.0 + github-slugger: 2.0.0 + gray-matter: 4.0.3 + hast-util-to-html: 9.0.0 + kleur: 4.1.5 + rehype-raw: 7.0.0 + remark-gfm: 4.0.0 + remark-smartypants: 2.1.0 + source-map: 0.7.4 + unist-util-visit: 5.0.0 + vfile: 6.0.1 + transitivePeerDependencies: + - supports-color + dev: false + /@astrojs/prism@3.0.0: resolution: {integrity: sha512-g61lZupWq1bYbcBnYZqdjndShr/J3l/oFobBKPA3+qMat146zce3nz2kdO4giGbhYDt4gYdhmoBz0vZJ4sIurQ==} engines: {node: '>=18.14.1'} @@ -230,6 +297,33 @@ packages: zod: 3.22.4 dev: false + /@astrojs/starlight@0.15.4(astro@4.2.3): + resolution: {integrity: sha512-o3heYH+RltsCsvO3L0qLnnFJEakwLSRoxW4wFX2zDeDWta9BIpdSOo7+Zg+sSn7k9RPOhI9SGvdFx67B53I18Q==} + peerDependencies: + astro: ^4.0.0 + dependencies: + '@astrojs/mdx': 2.0.6(astro@4.2.3) + '@astrojs/sitemap': 3.0.5 + '@pagefind/default-ui': 1.0.4 + '@types/hast': 3.0.3 + '@types/mdast': 4.0.3 + astro: 4.2.3(@types/node@20.11.5)(sass@1.70.0)(typescript@5.3.3) + astro-expressive-code: 0.31.0(astro@4.2.3) + bcp-47: 2.1.0 + hast-util-select: 6.0.2 + hastscript: 8.0.0 + mdast-util-directive: 3.0.0 + pagefind: 1.0.4 + rehype: 13.0.1 + remark-directive: 3.0.0 + unified: 11.0.4 + unist-util-remove: 4.0.0 + unist-util-visit: 5.0.0 + vfile: 6.0.1 + transitivePeerDependencies: + - supports-color + dev: false + /@astrojs/telemetry@3.0.4: resolution: {integrity: sha512-A+0c7k/Xy293xx6odsYZuXiaHO0PL+bnDoXOc47sGDF5ffIKdKQGRPFl2NMlCF4L0NqN4Ynbgnaip+pPF0s7pQ==} engines: {node: '>=18.14.1'} @@ -747,6 +841,11 @@ packages: prettier: 2.8.8 dev: true + /@ctrl/tinycolor@3.6.1: + resolution: {integrity: sha512-SITSV6aIXsuVNV3f3O0f2n/cgyEDWoSqtZMYiAmcsYHydcKrOz3gUxB/iXd/Qf08+IZX4KpgNbvUdMBmWz+kcA==} + engines: {node: '>=10'} + dev: false + /@emmetio/abbreviation@2.3.3: resolution: {integrity: sha512-mgv58UrU3rh4YgbE/TzgLQwJ3pFsHHhCLqY20aJq+9comytTXUDNGG/SMtSeMJdkpxgXSXunBGLD8Boka3JyVA==} dependencies: @@ -1202,6 +1301,38 @@ packages: engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} dev: false + /@expressive-code/core@0.31.0: + resolution: {integrity: sha512-zeCuojWRYeFs0UDOhzpKMzpjI/tJPCQna4jcVp5SJLMn4qNtHXgVmz3AngoMFoFcAlK6meE3wxzy//0d6K4NPw==} + dependencies: + '@ctrl/tinycolor': 3.6.1 + hast-util-to-html: 8.0.4 + hastscript: 7.2.0 + postcss: 8.4.33 + postcss-nested: 6.0.1(postcss@8.4.33) + dev: false + + /@expressive-code/plugin-frames@0.31.0: + resolution: {integrity: sha512-eYWfK3i4w2gSpOGBFNnu05JKSXC90APgUNdam8y5i0Ie2CVAwpxDtEp0NRqugvEKC0aMJe6ZmHN5Hu2WAVJmig==} + dependencies: + '@expressive-code/core': 0.31.0 + hastscript: 7.2.0 + dev: false + + /@expressive-code/plugin-shiki@0.31.0: + resolution: {integrity: sha512-fU5wPPfV1LGcS+Z1wcEkzI1fzBq9IAdt0DN0ni8sT7E+gpkULda4GA4IFD9iWKCGIhSDsBbG+bjc9hrYoJsDIQ==} + dependencies: + '@expressive-code/core': 0.31.0 + shikiji: 0.8.7 + dev: false + + /@expressive-code/plugin-text-markers@0.31.0: + resolution: {integrity: sha512-32o3pPMBq6bVUfRsAfFyqNpHbD1Z3iftoX9yt95F5zakLMsmHzZL4f0jyNr8XpXe7qcTnl0kIijBkUpvS6Pxfg==} + dependencies: + '@expressive-code/core': 0.31.0 + hastscript: 7.2.0 + unist-util-visit-parents: 5.1.3 + dev: false + /@humanwhocodes/config-array@0.11.14: resolution: {integrity: sha512-3T8LkOmg45BV5FICb15QQMsyUSWrQ8AygVfC7ZG32zOalnqrilm018ZVCw0eapXux8FtA33q8PSRSstjee3jSg==} engines: {node: '>=10.10.0'} @@ -1271,6 +1402,36 @@ packages: read-yaml-file: 1.1.0 dev: true + /@mdx-js/mdx@3.0.0: + resolution: {integrity: sha512-Icm0TBKBLYqroYbNW3BPnzMGn+7mwpQOK310aZ7+fkCtiU3aqv2cdcX+nd0Ydo3wI5Rx8bX2Z2QmGb/XcAClCw==} + dependencies: + '@types/estree': 1.0.5 + '@types/estree-jsx': 1.0.3 + '@types/hast': 3.0.3 + '@types/mdx': 2.0.10 + collapse-white-space: 2.1.0 + devlop: 1.1.0 + estree-util-build-jsx: 3.0.1 + estree-util-is-identifier-name: 3.0.0 + estree-util-to-js: 2.0.0 + estree-walker: 3.0.3 + hast-util-to-estree: 3.1.0 + hast-util-to-jsx-runtime: 2.3.0 + markdown-extensions: 2.0.0 + periscopic: 3.1.0 + remark-mdx: 3.0.0 + remark-parse: 11.0.0 + remark-rehype: 11.1.0 + source-map: 0.7.4 + unified: 11.0.4 + unist-util-position-from-estree: 2.0.0 + unist-util-stringify-position: 4.0.0 + unist-util-visit: 5.0.0 + vfile: 6.0.1 + transitivePeerDependencies: + - supports-color + dev: false + /@nodelib/fs.scandir@2.1.5: resolution: {integrity: sha512-vq24Bq3ym5HEQm2NKCr3yXDwjc7vTsEThRDnkp2DK9p1uqLR+DHurm/NOTo0KG7HYHU7eppKZj3MyqYuMBf62g==} engines: {node: '>= 8'} @@ -1289,6 +1450,50 @@ packages: '@nodelib/fs.scandir': 2.1.5 fastq: 1.16.0 + /@pagefind/darwin-arm64@1.0.4: + resolution: {integrity: sha512-2OcthvceX2xhm5XbgOmW+lT45oLuHqCmvFeFtxh1gsuP5cO8vcD8ZH8Laj4pXQFCcK6eAdSShx+Ztx/LsQWZFQ==} + cpu: [arm64] + os: [darwin] + requiresBuild: true + dev: false + optional: true + + /@pagefind/darwin-x64@1.0.4: + resolution: {integrity: sha512-xkdvp0D9Ld/ZKsjo/y1bgfhTEU72ITimd2PMMQtts7jf6JPIOJbsiErCvm37m/qMFuPGEq/8d+fZ4pydOj08HQ==} + cpu: [x64] + os: [darwin] + requiresBuild: true + dev: false + optional: true + + /@pagefind/default-ui@1.0.4: + resolution: {integrity: sha512-edkcaPSKq67C49Vehjo+LQCpT615v4d7JRhfGzFPccePvdklaL+VXrfghN/uIfsdoG+HoLI1PcYy2iFcB9CTkw==} + dev: false + + /@pagefind/linux-arm64@1.0.4: + resolution: {integrity: sha512-jGBrcCzIrMnNxLKVtogaQyajVfTAXM59KlBEwg6vTn8NW4fQ6nuFbbhlG4dTIsaamjEM5e8ZBEAKZfTB/qd9xw==} + cpu: [arm64] + os: [linux] + requiresBuild: true + dev: false + optional: true + + /@pagefind/linux-x64@1.0.4: + resolution: {integrity: sha512-LIn/QcvcEtLEBqKe5vpSbSC2O3fvqbRCWOTIklslqSORisCsvzsWbP6j+LYxE9q0oWIfkdMoWV1vrE/oCKRxHg==} + cpu: [x64] + os: [linux] + requiresBuild: true + dev: false + optional: true + + /@pagefind/windows-x64@1.0.4: + resolution: {integrity: sha512-QlBCVeZfj9fc9sbUgdOz76ZDbeK4xZihOBAFqGuRJeChfM8pnVeH9iqSnXgO3+m9oITugTf7PicyRUFAG76xeQ==} + cpu: [x64] + os: [win32] + requiresBuild: true + dev: false + optional: true + /@pkgr/core@0.1.1: resolution: {integrity: sha512-cq8o4cWH0ibXh9VGi5P20Tu9XF/0fFXl9EUinr9QfTM7a7p0oTA4iJRCQWppXR1Pg8dSM0UCItCkPwsk9qWWYA==} engines: {node: ^12.20.0 || ^14.18.0 || >=16.0.0} @@ -1398,6 +1603,12 @@ packages: dev: false optional: true + /@types/acorn@4.0.6: + resolution: {integrity: sha512-veQTnWP+1D/xbxVrPC3zHnCZRjSrKfhbMUlEA43iMZLu7EsnTtkJklIuwrCPbOi8YkvDQAiW05VQQFvvz9oieQ==} + dependencies: + '@types/estree': 1.0.5 + dev: false + /@types/babel__core@7.20.5: resolution: {integrity: sha512-qoQprZvz5wQFJwMDqeseRXWv3rqMvhgpbXFfVyWhbx9X47POIA6i/+dXefEmZKoAgOaTdaIgNSMqMIU61yRyzA==} dependencies: @@ -1433,10 +1644,22 @@ packages: '@types/ms': 0.7.34 dev: false + /@types/estree-jsx@1.0.3: + resolution: {integrity: sha512-pvQ+TKeRHeiUGRhvYwRrQ/ISnohKkSJR14fT2yqyZ4e9K5vqc7hrtY2Y1Dw0ZwAzQ6DQsxsaCUuSIIi8v0Cq6w==} + dependencies: + '@types/estree': 1.0.5 + dev: false + /@types/estree@1.0.5: resolution: {integrity: sha512-/kYRxGDLWzHOB7q+wtSUQlFrtcdUccpfy+X+9iMBpHK8QLLhx2wIPYuS5DYtR9Wa/YlZAbIovy7qVdB1Aq6Lyw==} dev: false + /@types/hast@2.3.9: + resolution: {integrity: sha512-pTHyNlaMD/oKJmS+ZZUyFUcsZeBZpC0lmGquw98CqRVNgAdJZJeD7GoeLiT6Xbx5rU9VCjSt0RwEvDgzh4obFw==} + dependencies: + '@types/unist': 2.0.10 + dev: false + /@types/hast@3.0.3: resolution: {integrity: sha512-2fYGlaDy/qyLlhidX42wAH0KBi2TCjKMH8CHmBXgRlJ3Y+OXTiqsPQ6IWarZKwF1JoUcAJdPogv1d4b0COTpmQ==} dependencies: @@ -1453,6 +1676,10 @@ packages: '@types/unist': 3.0.2 dev: false + /@types/mdx@2.0.10: + resolution: {integrity: sha512-Rllzc5KHk0Al5/WANwgSPl1/CwjqCy+AZrGd78zuK+jO9aDM6ffblZ+zIjgPNAaEBmlO0RYDvLNh7wD0zKVgEg==} + dev: false + /@types/minimist@1.2.5: resolution: {integrity: sha512-hov8bUuiLiyFPGyFPE1lwWhmzYbirOXQNNo40+y3zow8aFVTeyn3VWL0VFFfdNddA8S4Vf0Tc062rzyNr7Paag==} dev: true @@ -1485,6 +1712,10 @@ packages: resolution: {integrity: sha512-37i+OaWTh9qeK4LSHPsyRC7NahnGotNuZvjLSgcPzblpHB3rrCJxAOgI5gCdKm7coonsaX1Of0ILiTcnZjbfxA==} dev: true + /@types/parse5@6.0.3: + resolution: {integrity: sha512-SuT16Q1K51EAVPz1K29DJ/sXjhSQ0zjvsypYJ6tlwVsRV9jwW5Adq2ch8Dq8kDBCkYnELS7N7VNCSB5nC56t/g==} + dev: false + /@types/sax@1.2.7: resolution: {integrity: sha512-rO73L89PJxeYM3s3pPPjiPgVVcymqU490g0YO5n5By0k2Erzj6tay/4lr1CHAAU4JyOWd1rpQ8bCf6cZfHU96A==} dependencies: @@ -1853,6 +2084,11 @@ packages: engines: {node: '>=0.10.0'} dev: true + /astring@1.8.6: + resolution: {integrity: sha512-ISvCdHdlTDlH5IpxQJIex7BWBywFWgjJSVdwst+/iQCoEYnyOaQ95+X1JGshuBjGp6nxKUy1jMgE3zPqN7fQdg==} + hasBin: true + dev: false + /astro-eslint-parser@0.16.2: resolution: {integrity: sha512-JJ/AlnPEiFgu5Tuuj9AxkSjiyobg2x7hjiXpglZtyzN2Bkj7GSXVppDQL6oavwtk0kHOAAkvyuJJ+8cC5c1NqQ==} engines: {node: ^14.18.0 || >=16.0.0} @@ -1870,6 +2106,15 @@ packages: - supports-color dev: false + /astro-expressive-code@0.31.0(astro@4.2.3): + resolution: {integrity: sha512-o6eFrRSYLnlM/2FKkO3MgkbmVxT8N6DJcKvbRf1wbUcRXpz7s1KfugbdsaGw3ABEWUBuQIBsRppcGGw2L816Vg==} + peerDependencies: + astro: ^3.3.0 || ^4.0.0-beta + dependencies: + astro: 4.2.3(@types/node@20.11.5)(sass@1.70.0)(typescript@5.3.3) + remark-expressive-code: 0.31.0 + dev: false + /astro-font@0.0.72: resolution: {integrity: sha512-FUjIerovSg2lsfJfvvqY23hgvc++gHi69ikFkxm0mqO3MPFykK5ppeUuROUjhNbE6vwdD8MpiJOy1CR5S0g/lQ==} dev: false @@ -2002,7 +2247,6 @@ packages: resolution: {integrity: sha512-fpWrvyVHEKyeEvbKZTVOeZF3VSKKWtJxFIxX/jaVPf+cLbGUSitjb49pHLqPV2BUNNZ0LcoeEGfE/YCpyDYHIw==} requiresBuild: true dev: false - optional: true /bail@2.0.2: resolution: {integrity: sha512-0xO6mYd7JB2YesxDKplafRpsiOzPt9V02ddPCLbY1xYGPOX24NTyN50qnUxgCPcSoYMhKpAuBTjQoRZCAkUDRw==} @@ -2020,6 +2264,18 @@ packages: resolution: {integrity: sha512-AKpaYlHn8t4SVbOHCy+b5+KKgvR4vrsD8vbvrbiQJps7fKDTkjkDry6ji0rUJjC0kzbNePLwzxq8iypo41qeWA==} dev: false + /bcp-47-match@2.0.3: + resolution: {integrity: sha512-JtTezzbAibu8G0R9op9zb3vcWZd9JF6M0xOYGPn0fNCd7wOpRB1mU2mH9T8gaBGbAAyIIVgB2G7xG0GP98zMAQ==} + dev: false + + /bcp-47@2.1.0: + resolution: {integrity: sha512-9IIS3UPrvIa1Ej+lVDdDwO7zLehjqsaByECw0bu2RRGP73jALm6FYbzI5gWbgHLvNdkvfXB5YrSbocZdOS0c0w==} + dependencies: + is-alphabetical: 2.0.1 + is-alphanumerical: 2.0.1 + is-decimal: 2.0.1 + dev: false + /better-path-resolve@1.0.0: resolution: {integrity: sha512-pbnl5XzGBdrFU/wT4jqmJVPn2B6UHPBOhzMQkY/SPUPB6QtUXtmBHBIwCbXJol93mOpGMnQyP/+BB19q04xj7g==} engines: {node: '>=4'} @@ -2039,7 +2295,6 @@ packages: inherits: 2.0.4 readable-stream: 3.6.2 dev: false - optional: true /bl@5.1.0: resolution: {integrity: sha512-tv1ZJHLfTDnXE6tMHv73YgSJaWR2AFuPwMntBe7XL/GBFHnT0CLnsHMogfk5+GzCDC5ZWarSCYaIGATZt9dNsQ==} @@ -2049,6 +2304,10 @@ packages: readable-stream: 3.6.2 dev: false + /boolbase@1.0.0: + resolution: {integrity: sha512-JZOSA7Mo9sNGB8+UjSgzdLtokWAky1zbztM3WRLCbZ70/3cTANmQmOdR7y2g+J0e2WXywy1yS468tY+IruqEww==} + dev: false + /boxen@7.1.1: resolution: {integrity: sha512-2hCgjEmP8YLWQ130n2FerGv7rYpfBmnmp9Uy2Le1vge6X3gZIfSmEzP5QTDElFxcvVcXlEn8Aq6MU/PZygIOog==} engines: {node: '>=14.16'} @@ -2106,7 +2365,6 @@ packages: base64-js: 1.5.1 ieee754: 1.2.1 dev: false - optional: true /buffer@6.0.3: resolution: {integrity: sha512-FTiCpNxtwiZZHEZbcbTIcZjERVICn9yq/pDFkTl95/AxzD1naBctN7YO68riM/gLSDY7sdrMby8hofADYuuqOA==} @@ -2187,6 +2445,10 @@ packages: resolution: {integrity: sha512-shx7oQ0Awen/BRIdkjkvz54PnEEI/EjwXDSIZp86/KKdbafHh1Df/RYGBhn4hbe2+uKC9FnT5UCEdyPz3ai9hQ==} dev: false + /character-reference-invalid@2.0.1: + resolution: {integrity: sha512-iBZ4F4wRbyORVsu0jPV7gXkOsGYjGHPmAyv+HiHG8gi5PtC9KI2j1+v8/tlibRvjoWX027ypmG/n0HtO5t7unw==} + dev: false + /chardet@0.7.0: resolution: {integrity: sha512-mT8iDcrh03qDGRRmoA2hmBJnxpllMR+0/0qlzjqZES6NdiWDcZkCNAk4rPFZ9Q85r27unkiNNg8ZOiwZXBHwcA==} dev: true @@ -2209,7 +2471,6 @@ packages: resolution: {integrity: sha512-jJ0bqzaylmJtVnNgzTeSOs8DPavpbYgEr/b0YL8/2GO3xJEhInFmhKMUnEJQjZumK7KXGFhUy89PrsJWlakBVg==} requiresBuild: true dev: false - optional: true /ci-info@3.9.0: resolution: {integrity: sha512-NIxF55hv4nSqQswkAeiOi1r83xy8JldOFDTWiug55KBu9Jnblncd2U6ViHmYgHf01TPZS77NJBhBMKdWj9HQMQ==} @@ -2263,6 +2524,10 @@ packages: engines: {node: '>=6'} dev: false + /collapse-white-space@2.1.0: + resolution: {integrity: sha512-loKTxY1zCOuG4j9f6EPnuyyYkf58RnhhWTvRoZEokgB+WbdXehfjFviyOVYkqzEWz1Q5kRiZdBYS5SwxbQYwzw==} + dev: false + /color-convert@1.9.3: resolution: {integrity: sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==} dependencies: @@ -2287,7 +2552,6 @@ packages: color-name: 1.1.4 simple-swizzle: 0.2.2 dev: false - optional: true /color@4.2.3: resolution: {integrity: sha512-1rXeuUUiGGrykh+CeBdu5Ie7OJwinCgQY0bc7GCRxy5xVHy+moaqkpL/jqQq0MtQOeYcrqEz4abc5f0KtU7W4A==} @@ -2297,7 +2561,6 @@ packages: color-convert: 2.0.1 color-string: 1.9.1 dev: false - optional: true /combined-stream@1.0.8: resolution: {integrity: sha512-FQN4MRfuJeHf7cBbBMJFXhKSDq+2kAArBlmRBvcvFE5BB1HZKXtSFASDhdlz9zOYwxh8lDdnvmMOe/+5cdoEdg==} @@ -2344,6 +2607,10 @@ packages: which: 2.0.2 dev: false + /css-selector-parser@3.0.4: + resolution: {integrity: sha512-pnmS1dbKsz6KA4EW4BznyPL2xxkNDRg62hcD0v8g6DEw2W7hxOln5M953jsp9hmw5Dg57S6o/A8GOn37mbAgcQ==} + dev: false + /cssesc@3.0.0: resolution: {integrity: sha512-/Tb/JcjK111nNScGob5MNtsntNM1aCNUDipB/TkwZFhyDrrE47SOx/18wF2bbjgc3ZzCSKW1T5nt5EbFoAz/Vg==} engines: {node: '>=4'} @@ -2432,14 +2699,12 @@ packages: dependencies: mimic-response: 3.1.0 dev: false - optional: true /deep-extend@0.6.0: resolution: {integrity: sha512-LOHxIOaPYdHlJRtCQfDIVZtfw/ufM8+rVj649RIHzcm/vGwQRXFt6OPqIFWsm2XEMrNIEtWR64sY1LEKD2vAOA==} engines: {node: '>=4.0.0'} requiresBuild: true dev: false - optional: true /deep-is@0.1.4: resolution: {integrity: sha512-oIPzksmTg4/MriiaYGO+okXDT7ztn/w3Eptv/+gSIdMdKsJo0u4CfYNFJPy+4SKMuCqGw2wxnA+URMg3t8a/bQ==} @@ -2489,7 +2754,6 @@ packages: engines: {node: '>=8'} requiresBuild: true dev: false - optional: true /deterministic-object-hash@2.0.2: resolution: {integrity: sha512-KxektNH63SrbfUyDiwXqRb1rLwKt33AmMv+5Nhsw1kqZ13SJBRTgZHtGbE+hH3a1mVW1cz+4pqSWVPAtLVXTzQ==} @@ -2519,6 +2783,11 @@ packages: dependencies: path-type: 4.0.0 + /direction@2.0.1: + resolution: {integrity: sha512-9S6m9Sukh1cZNknO1CWAr2QAWsbKLafQiyM5gZ7VgXHeuaoUwffKN4q6NC4A/Mf9iiPlOXQEKW/Mv/mh9/3YFA==} + hasBin: true + dev: false + /dlv@1.1.3: resolution: {integrity: sha512-+HlytyjlPKnIG8XuRG8WvmBP8xs8P71y+SKKS6ZXWoEgLuePxtDoUEiH7WkdePWrQ5JBpE6aoVqfZfJUQkjXwA==} dev: false @@ -2566,7 +2835,6 @@ packages: dependencies: once: 1.4.0 dev: false - optional: true /enquirer@2.4.1: resolution: {integrity: sha512-rRqJg/6gd538VHvR3PSrdRBb/1Vy2YfzHqzvbhGIQpDRKIa4FgV/54b5Q1xYSxOOwKvjXweS26E0Q+nAMwp2pQ==} @@ -2858,6 +3126,40 @@ packages: engines: {node: '>=4.0'} dev: false + /estree-util-attach-comments@3.0.0: + resolution: {integrity: sha512-cKUwm/HUcTDsYh/9FgnuFqpfquUbwIqwKM26BVCGDPVgvaCl/nDCCjUfiLlx6lsEZ3Z4RFxNbOQ60pkaEwFxGw==} + dependencies: + '@types/estree': 1.0.5 + dev: false + + /estree-util-build-jsx@3.0.1: + resolution: {integrity: sha512-8U5eiL6BTrPxp/CHbs2yMgP8ftMhR5ww1eIKoWRMlqvltHF8fZn5LRDvTKuxD3DUn+shRbLGqXemcP51oFCsGQ==} + dependencies: + '@types/estree-jsx': 1.0.3 + devlop: 1.1.0 + estree-util-is-identifier-name: 3.0.0 + estree-walker: 3.0.3 + dev: false + + /estree-util-is-identifier-name@3.0.0: + resolution: {integrity: sha512-hFtqIDZTIUZ9BXLb8y4pYGyk6+wekIivNVTcmvk8NoOh+VeRn5y6cEHzbURrWbfp1fIqdVipilzj+lfaadNZmg==} + dev: false + + /estree-util-to-js@2.0.0: + resolution: {integrity: sha512-WDF+xj5rRWmD5tj6bIqRi6CkLIXbbNQUcxQHzGysQzvHmdYG2G7p/Tf0J0gpxGgkeMZNTIjT/AoSvC9Xehcgdg==} + dependencies: + '@types/estree-jsx': 1.0.3 + astring: 1.8.6 + source-map: 0.7.4 + dev: false + + /estree-util-visit@2.0.0: + resolution: {integrity: sha512-m5KgiH85xAhhW8Wta0vShLcUvOsh3LLPI2YVwcbio1l7E09NTLL1EyMZFM1OyWowoH0skScNbhOPl4kcBgzTww==} + dependencies: + '@types/estree-jsx': 1.0.3 + '@types/unist': 3.0.2 + dev: false + /estree-walker@3.0.3: resolution: {integrity: sha512-7RUKfXgSMMkzt6ZuXmqapOurLGPPfgj6l9uRZ7lRGolvk0y2yocc35LdcxKC5PQZdn2DMqioAQ2NoWcrTKmm6g==} dependencies: @@ -2893,7 +3195,15 @@ packages: engines: {node: '>=6'} requiresBuild: true dev: false - optional: true + + /expressive-code@0.31.0: + resolution: {integrity: sha512-rxKGYS8iRwNUbRNfyCyoe3XQvBLTtGdXbNKM+ODDWCn4VL2DVT1gD1M2N2Alg8HQHIWZJsZIMsYbziO0MRjPlw==} + dependencies: + '@expressive-code/core': 0.31.0 + '@expressive-code/plugin-frames': 0.31.0 + '@expressive-code/plugin-shiki': 0.31.0 + '@expressive-code/plugin-text-markers': 0.31.0 + dev: false /extend-shallow@2.0.1: resolution: {integrity: sha512-zCnTtlxNoAiDc3gqY2aYAWFx7XWWiasuF2K8Me5WbN8otHKTUKBwjPtNpRs/rbUZm7KxWAaNj7P1a/p52GbVug==} @@ -2927,7 +3237,6 @@ packages: resolution: {integrity: sha512-/d9sfos4yxzpwkDkuN7k2SqFKtYNmCTzgfEpz82x34IM9/zc8KGxQoXg1liNC/izpRM/MBdt44Nmx41ZWqk+FQ==} requiresBuild: true dev: false - optional: true /fast-glob@3.3.2: resolution: {integrity: sha512-oX2ruAFQwf/Orj8m737Y5adxDQO0LAB7/S5MnxCdTNDd4p6BsyIVsv9JQsATbTSq8KHRpLwIHbVlUNatxd+1Ow==} @@ -3044,7 +3353,6 @@ packages: resolution: {integrity: sha512-y6OAwoSIf7FyjMIv94u+b5rdheZEjzR63GTyZJm5qh4Bi+2YgwLCcI/fPFZkL5PSixOt6ZNKm+w+Hfp/Bciwow==} requiresBuild: true dev: false - optional: true /fs-extra@7.0.1: resolution: {integrity: sha512-YJDaCJZEnBmcbw13fvdAM9AwNOJwOzrE4pqMqBq5nFiEqXUqHwlK4B+3pUw6JNvfSPtX05xFHtYy/1ni01eGCw==} @@ -3132,7 +3440,6 @@ packages: resolution: {integrity: sha512-SyHy3T1v2NUXn29OsWdxmK6RwHD+vkj3v8en8AOBZ1wBQ/hCAQ5bAQTD02kW4W9tUp/3Qh6J8r9EvntiyCmOOw==} requiresBuild: true dev: false - optional: true /github-slugger@2.0.0: resolution: {integrity: sha512-IaOQ9puYtjrkq7Y0Ygl9KDZnrf/aiUJYUpVf89y8kyaxbRG7Y1SrX/jaumrv81vc61+kiMempujsM3Yw7w5qcw==} @@ -3276,6 +3583,18 @@ packages: vfile-message: 4.0.2 dev: false + /hast-util-from-parse5@7.1.2: + resolution: {integrity: sha512-Nz7FfPBuljzsN3tCQ4kCBKqdNhQE2l0Tn+X1ubgKBPRoiDIu1mL08Cfw4k7q71+Duyaw7DXDN+VTAp4Vh3oCOw==} + dependencies: + '@types/hast': 2.3.9 + '@types/unist': 2.0.10 + hastscript: 7.2.0 + property-information: 6.4.0 + vfile: 5.3.7 + vfile-location: 4.1.0 + web-namespaces: 2.0.1 + dev: false + /hast-util-from-parse5@8.0.1: resolution: {integrity: sha512-Er/Iixbc7IEa7r/XLtuG52zoqn/b3Xng/w6aZQ0xGVxzhw5xUFxcRqdPzP6yFi/4HBYRaifaI5fQ1RH8n0ZeOQ==} dependencies: @@ -3289,12 +3608,40 @@ packages: web-namespaces: 2.0.1 dev: false + /hast-util-has-property@3.0.0: + resolution: {integrity: sha512-MNilsvEKLFpV604hwfhVStK0usFY/QmM5zX16bo7EjnAEGofr5YyI37kzopBlZJkHD4t887i+q/C8/tr5Q94cA==} + dependencies: + '@types/hast': 3.0.3 + dev: false + + /hast-util-parse-selector@3.1.1: + resolution: {integrity: sha512-jdlwBjEexy1oGz0aJ2f4GKMaVKkA9jwjr4MjAAI22E5fM/TXVZHuS5OpONtdeIkRKqAaryQ2E9xNQxijoThSZA==} + dependencies: + '@types/hast': 2.3.9 + dev: false + /hast-util-parse-selector@4.0.0: resolution: {integrity: sha512-wkQCkSYoOGCRKERFWcxMVMOcYE2K1AaNLU8DXS9arxnLOUEWbOXKXiJUNzEpqZ3JOKpnha3jkFrumEjVliDe7A==} dependencies: '@types/hast': 3.0.3 dev: false + /hast-util-raw@7.2.3: + resolution: {integrity: sha512-RujVQfVsOrxzPOPSzZFiwofMArbQke6DJjnFfceiEbFh7S05CbPt0cYN+A5YeD3pso0JQk6O1aHBnx9+Pm2uqg==} + dependencies: + '@types/hast': 2.3.9 + '@types/parse5': 6.0.3 + hast-util-from-parse5: 7.1.2 + hast-util-to-parse5: 7.1.0 + html-void-elements: 2.0.1 + parse5: 6.0.1 + unist-util-position: 4.0.4 + unist-util-visit: 4.1.2 + vfile: 5.3.7 + web-namespaces: 2.0.1 + zwitch: 2.0.4 + dev: false + /hast-util-raw@9.0.2: resolution: {integrity: sha512-PldBy71wO9Uq1kyaMch9AHIghtQvIwxBUkv823pKmkTM3oV1JxtsTNYdevMxvUHqcnOAuO65JKU2+0NOxc2ksA==} dependencies: @@ -3313,6 +3660,66 @@ packages: zwitch: 2.0.4 dev: false + /hast-util-select@6.0.2: + resolution: {integrity: sha512-hT/SD/d/Meu+iobvgkffo1QecV8WeKWxwsNMzcTJsKw1cKTQKSR/7ArJeURLNJF9HDjp9nVoORyNNJxrvBye8Q==} + dependencies: + '@types/hast': 3.0.3 + '@types/unist': 3.0.2 + bcp-47-match: 2.0.3 + comma-separated-tokens: 2.0.3 + css-selector-parser: 3.0.4 + devlop: 1.1.0 + direction: 2.0.1 + hast-util-has-property: 3.0.0 + hast-util-to-string: 3.0.0 + hast-util-whitespace: 3.0.0 + not: 0.1.0 + nth-check: 2.1.1 + property-information: 6.4.0 + space-separated-tokens: 2.0.2 + unist-util-visit: 5.0.0 + zwitch: 2.0.4 + dev: false + + /hast-util-to-estree@3.1.0: + resolution: {integrity: sha512-lfX5g6hqVh9kjS/B9E2gSkvHH4SZNiQFiqWS0x9fENzEl+8W12RqdRxX6d/Cwxi30tPQs3bIO+aolQJNp1bIyw==} + dependencies: + '@types/estree': 1.0.5 + '@types/estree-jsx': 1.0.3 + '@types/hast': 3.0.3 + comma-separated-tokens: 2.0.3 + devlop: 1.1.0 + estree-util-attach-comments: 3.0.0 + estree-util-is-identifier-name: 3.0.0 + hast-util-whitespace: 3.0.0 + mdast-util-mdx-expression: 2.0.0 + mdast-util-mdx-jsx: 3.0.0 + mdast-util-mdxjs-esm: 2.0.1 + property-information: 6.4.0 + space-separated-tokens: 2.0.2 + style-to-object: 0.4.4 + unist-util-position: 5.0.0 + zwitch: 2.0.4 + transitivePeerDependencies: + - supports-color + dev: false + + /hast-util-to-html@8.0.4: + resolution: {integrity: sha512-4tpQTUOr9BMjtYyNlt0P50mH7xj0Ks2xpo8M943Vykljf99HW6EzulIoJP1N3eKOSScEHzyzi9dm7/cn0RfGwA==} + dependencies: + '@types/hast': 2.3.9 + '@types/unist': 2.0.10 + ccount: 2.0.1 + comma-separated-tokens: 2.0.3 + hast-util-raw: 7.2.3 + hast-util-whitespace: 2.0.1 + html-void-elements: 2.0.1 + property-information: 6.4.0 + space-separated-tokens: 2.0.2 + stringify-entities: 4.0.3 + zwitch: 2.0.4 + dev: false + /hast-util-to-html@9.0.0: resolution: {integrity: sha512-IVGhNgg7vANuUA2XKrT6sOIIPgaYZnmLx3l/CCOAK0PtgfoHrZwX7jCSYyFxHTrGmC6S9q8aQQekjp4JPZF+cw==} dependencies: @@ -3330,6 +3737,39 @@ packages: zwitch: 2.0.4 dev: false + /hast-util-to-jsx-runtime@2.3.0: + resolution: {integrity: sha512-H/y0+IWPdsLLS738P8tDnrQ8Z+dj12zQQ6WC11TIM21C8WFVoIxcqWXf2H3hiTVZjF1AWqoimGwrTWecWrnmRQ==} + dependencies: + '@types/estree': 1.0.5 + '@types/hast': 3.0.3 + '@types/unist': 3.0.2 + comma-separated-tokens: 2.0.3 + devlop: 1.1.0 + estree-util-is-identifier-name: 3.0.0 + hast-util-whitespace: 3.0.0 + mdast-util-mdx-expression: 2.0.0 + mdast-util-mdx-jsx: 3.0.0 + mdast-util-mdxjs-esm: 2.0.1 + property-information: 6.4.0 + space-separated-tokens: 2.0.2 + style-to-object: 1.0.5 + unist-util-position: 5.0.0 + vfile-message: 4.0.2 + transitivePeerDependencies: + - supports-color + dev: false + + /hast-util-to-parse5@7.1.0: + resolution: {integrity: sha512-YNRgAJkH2Jky5ySkIqFXTQiaqcAtJyVE+D5lkN6CdtOqrnkLfGYYrEcKuHOJZlp+MwjSwuD3fZuawI+sic/RBw==} + dependencies: + '@types/hast': 2.3.9 + comma-separated-tokens: 2.0.3 + property-information: 6.4.0 + space-separated-tokens: 2.0.2 + web-namespaces: 2.0.1 + zwitch: 2.0.4 + dev: false + /hast-util-to-parse5@8.0.0: resolution: {integrity: sha512-3KKrV5ZVI8if87DVSi1vDeByYrkGzg4mEfeu4alwgmmIeARiBLKCZS2uw5Gb6nU9x9Yufyj3iudm6i7nl52PFw==} dependencies: @@ -3342,12 +3782,32 @@ packages: zwitch: 2.0.4 dev: false + /hast-util-to-string@3.0.0: + resolution: {integrity: sha512-OGkAxX1Ua3cbcW6EJ5pT/tslVb90uViVkcJ4ZZIMW/R33DX/AkcJcRrPebPwJkHYwlDHXz4aIwvAAaAdtrACFA==} + dependencies: + '@types/hast': 3.0.3 + dev: false + + /hast-util-whitespace@2.0.1: + resolution: {integrity: sha512-nAxA0v8+vXSBDt3AnRUNjyRIQ0rD+ntpbAp4LnPkumc5M9yUbSMa4XDU9Q6etY4f1Wp4bNgvc1yjiZtsTTrSng==} + dev: false + /hast-util-whitespace@3.0.0: resolution: {integrity: sha512-88JUN06ipLwsnv+dVn+OIYOvAuvBMy/Qoi6O7mQHxdPXpjy+Cd6xRkWwux7DKO+4sYILtLBRIKgsdpS2gQc7qw==} dependencies: '@types/hast': 3.0.3 dev: false + /hastscript@7.2.0: + resolution: {integrity: sha512-TtYPq24IldU8iKoJQqvZOuhi5CyCQRAbvDOX0x1eW6rsHSxa/1i2CCiptNTotGHJ3VoHRGmqiv6/D3q113ikkw==} + dependencies: + '@types/hast': 2.3.9 + comma-separated-tokens: 2.0.3 + hast-util-parse-selector: 3.1.1 + property-information: 6.4.0 + space-separated-tokens: 2.0.2 + dev: false + /hastscript@8.0.0: resolution: {integrity: sha512-dMOtzCEd3ABUeSIISmrETiKuyydk1w0pa+gE/uormcTpSYuaNJPbX1NU3JLyscSLjwAQM8bWMhhIlnCqnRvDTw==} dependencies: @@ -3366,6 +3826,10 @@ packages: resolution: {integrity: sha512-RuMffC89BOWQoY0WKGpIhn5gX3iI54O6nRA0yC124NYVtzjmFWBIiFd8M0x+ZdX0P9R4lADg1mgP8C7PxGOWuQ==} dev: false + /html-void-elements@2.0.1: + resolution: {integrity: sha512-0quDb7s97CfemeJAnW9wC0hw78MtW7NU3hqtCD75g2vFlDLt36llsYD7uB7SUzojLMP24N5IatXf7ylGXiGG9A==} + dev: false + /html-void-elements@3.0.0: resolution: {integrity: sha512-bEqo66MRXsUGxWHV5IP0PUiAWwoEjba4VCzg0LjFJBpchPaTfyfCKTG6bc5F8ucKec3q5y6qOdGyYTSBEvhCrg==} dev: false @@ -3438,7 +3902,14 @@ packages: resolution: {integrity: sha512-JV/yugV2uzW5iMRSiZAyDtQd+nxtUnjeLt0acNdw98kKLrvuRVyB80tsREOE7yvGVgalhZ6RNXCmEHkUKBKxew==} requiresBuild: true dev: false - optional: true + + /inline-style-parser@0.1.1: + resolution: {integrity: sha512-7NXolsK4CAS5+xvdj5OMMbI962hU/wvwoxk+LWR9Ek9bVtyuuYScDN6eS0rUm6TxApFpw7CX1o4uJzcd4AyD3Q==} + dev: false + + /inline-style-parser@0.2.2: + resolution: {integrity: sha512-EcKzdTHVe8wFVOGEYXiW9WmJXPjqi1T+234YpJr98RiFYKHV3cdy1+3mkTE+KHTHxFFLH51SfaGOoUdW+v7ViQ==} + dev: false /internal-slot@1.0.6: resolution: {integrity: sha512-Xj6dv+PsbtwyPpEflsejS+oIZxmMlV44zAhG479uYu89MsjcYOhCFnNyKrkJrihbsiasQyY0afoCl/9BLR65bg==} @@ -3449,6 +3920,17 @@ packages: side-channel: 1.0.4 dev: true + /is-alphabetical@2.0.1: + resolution: {integrity: sha512-FWyyY60MeTNyeSRpkM2Iry0G9hpr7/9kD40mD/cGQEuilcZYS4okz8SN2Q6rLCJ8gbCt6fN+rC+6tMGS99LaxQ==} + dev: false + + /is-alphanumerical@2.0.1: + resolution: {integrity: sha512-hmbYhX/9MUMF5uh7tOXyK/n0ZvWpad5caBA17GsC6vyuCqaWliRG5K1qS9inmUhEMaOBIW7/whAnSwveW/LtZw==} + dependencies: + is-alphabetical: 2.0.1 + is-decimal: 2.0.1 + dev: false + /is-array-buffer@3.0.2: resolution: {integrity: sha512-y+FyyR/w8vfIRq4eQcM1EYgSTnmHXPqaF+IgzgraytCFq5Xh8lllDVmAZolPJiZttZLeFSINPYMaEJ7/vWUa1w==} dependencies: @@ -3465,7 +3947,6 @@ packages: resolution: {integrity: sha512-eVRqCvVlZbuw3GrM63ovNSNAeA1K16kaR/LRY/92w0zxQ5/1YzwblUX652i4Xs9RwAGjW9d9y6X88t8OaAJfWQ==} requiresBuild: true dev: false - optional: true /is-bigint@1.0.4: resolution: {integrity: sha512-zB9CruMamjym81i2JZ3UMn54PKGsQzsJeo6xvN3HJJ4CAsQNB6iRutp2To77OfCNuoxspsIhzaPoO1zyCEhFOg==} @@ -3509,6 +3990,10 @@ packages: has-tostringtag: 1.0.0 dev: true + /is-decimal@2.0.1: + resolution: {integrity: sha512-AAB9hiomQs5DXWcRB1rqsxGUstbRroFOPPVAomNk/3XHR5JyEZChOyTWe2oayKnsSsr/kcGqF+z6yuH6HHpN0A==} + dev: false + /is-docker@3.0.0: resolution: {integrity: sha512-eljcgEDlEns/7AXFosB5K/2nCM4P7FQPkGc/DWLy5rmFEWvZayGrik1d9/QIY5nJ4f9YsVvBkA6kJpHn9rISdQ==} engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0} @@ -3534,6 +4019,10 @@ packages: dependencies: is-extglob: 2.1.1 + /is-hexadecimal@2.0.1: + resolution: {integrity: sha512-DgZQp241c8oO6cA1SbTEWiXeoxV42vlcJxgH+B3hi1AiqqKruZR3ZGF8In3fj4+/y/7rHvlOZLZtgJ/4ttYGZg==} + dev: false + /is-inside-container@1.0.0: resolution: {integrity: sha512-KIYLCCJghfHZxqjYBE7rEy0OBuTd5xCHS7tHVgvCLkx7StIoaxwNW3hCALgEUjFfeRk+MG/Qxmp/vtETEF3tRA==} engines: {node: '>=14.16'} @@ -3578,6 +4067,12 @@ packages: engines: {node: '>=12'} dev: false + /is-reference@3.0.2: + resolution: {integrity: sha512-v3rht/LgVcsdZa3O2Nqs+NMowLOxeOm7Ay9+/ARQ2F+qEoANRcqrjAZKGN0v8ymUetZGgkp26LTnGT7H0Qo9Pg==} + dependencies: + '@types/estree': 1.0.5 + dev: false + /is-regex@1.1.4: resolution: {integrity: sha512-kvRdxDsxZjhzUX07ZnLydzS1TU/TJlTUHHY4YLL87e37oUA49DfkLqgy+VjFocowy29cKvcSiu+kIv728jTTVg==} engines: {node: '>= 0.4'} @@ -3817,6 +4312,11 @@ packages: engines: {node: '>=8'} dev: true + /markdown-extensions@2.0.0: + resolution: {integrity: sha512-o5vL7aDWatOTX8LzaS1WMoaoxIiLRQJuIKKe2wAw6IeULDHaqbiqiggmx+pKvZDb1Sj+pE46Sn1T7lCqfFtg1Q==} + engines: {node: '>=16'} + dev: false + /markdown-table@3.0.3: resolution: {integrity: sha512-Z1NL3Tb1M9wH4XESsCDEksWoKTdlUafKc4pt0GRwjUyXaCFZ+dc3g2erqB6zm3szA2IUSi7VnPI+o/9jnxh9hw==} dev: false @@ -3829,6 +4329,21 @@ packages: unist-util-visit: 5.0.0 dev: false + /mdast-util-directive@3.0.0: + resolution: {integrity: sha512-JUpYOqKI4mM3sZcNxmF/ox04XYFFkNwr0CFlrQIkCwbvH0xzMCqkMqAde9wRd80VAhaUrwFwKm2nxretdT1h7Q==} + dependencies: + '@types/mdast': 4.0.3 + '@types/unist': 3.0.2 + devlop: 1.1.0 + mdast-util-from-markdown: 2.0.0 + mdast-util-to-markdown: 2.1.0 + parse-entities: 4.0.1 + stringify-entities: 4.0.3 + unist-util-visit-parents: 6.0.1 + transitivePeerDependencies: + - supports-color + dev: false + /mdast-util-find-and-replace@3.0.1: resolution: {integrity: sha512-SG21kZHGC3XRTSUhtofZkBzZTJNM5ecCi0SK2IMKmSXR8vO3peL+kb1O0z7Zl83jKtutG4k5Wv/W7V3/YHvzPA==} dependencies: @@ -3926,6 +4441,64 @@ packages: - supports-color dev: false + /mdast-util-mdx-expression@2.0.0: + resolution: {integrity: sha512-fGCu8eWdKUKNu5mohVGkhBXCXGnOTLuFqOvGMvdikr+J1w7lDJgxThOKpwRWzzbyXAU2hhSwsmssOY4yTokluw==} + dependencies: + '@types/estree-jsx': 1.0.3 + '@types/hast': 3.0.3 + '@types/mdast': 4.0.3 + devlop: 1.1.0 + mdast-util-from-markdown: 2.0.0 + mdast-util-to-markdown: 2.1.0 + transitivePeerDependencies: + - supports-color + dev: false + + /mdast-util-mdx-jsx@3.0.0: + resolution: {integrity: sha512-XZuPPzQNBPAlaqsTTgRrcJnyFbSOBovSadFgbFu8SnuNgm+6Bdx1K+IWoitsmj6Lq6MNtI+ytOqwN70n//NaBA==} + dependencies: + '@types/estree-jsx': 1.0.3 + '@types/hast': 3.0.3 + '@types/mdast': 4.0.3 + '@types/unist': 3.0.2 + ccount: 2.0.1 + devlop: 1.1.0 + mdast-util-from-markdown: 2.0.0 + mdast-util-to-markdown: 2.1.0 + parse-entities: 4.0.1 + stringify-entities: 4.0.3 + unist-util-remove-position: 5.0.0 + unist-util-stringify-position: 4.0.0 + vfile-message: 4.0.2 + transitivePeerDependencies: + - supports-color + dev: false + + /mdast-util-mdx@3.0.0: + resolution: {integrity: sha512-JfbYLAW7XnYTTbUsmpu0kdBUVe+yKVJZBItEjwyYJiDJuZ9w4eeaqks4HQO+R7objWgS2ymV60GYpI14Ug554w==} + dependencies: + mdast-util-from-markdown: 2.0.0 + mdast-util-mdx-expression: 2.0.0 + mdast-util-mdx-jsx: 3.0.0 + mdast-util-mdxjs-esm: 2.0.1 + mdast-util-to-markdown: 2.1.0 + transitivePeerDependencies: + - supports-color + dev: false + + /mdast-util-mdxjs-esm@2.0.1: + resolution: {integrity: sha512-EcmOpxsZ96CvlP03NghtH1EsLtr0n9Tm4lPUJUBccV9RwUOneqSycg19n5HGzCf+10LozMRSObtVr3ee1WoHtg==} + dependencies: + '@types/estree-jsx': 1.0.3 + '@types/hast': 3.0.3 + '@types/mdast': 4.0.3 + devlop: 1.1.0 + mdast-util-from-markdown: 2.0.0 + mdast-util-to-markdown: 2.1.0 + transitivePeerDependencies: + - supports-color + dev: false + /mdast-util-phrasing@4.0.0: resolution: {integrity: sha512-xadSsJayQIucJ9n053dfQwVu1kuXg7jCTdYsMK8rqzKZh52nLfSH/k0sAxE0u+pj/zKZX+o5wB+ML5mRayOxFA==} dependencies: @@ -4011,6 +4584,18 @@ packages: micromark-util-types: 2.0.0 dev: false + /micromark-extension-directive@3.0.0: + resolution: {integrity: sha512-61OI07qpQrERc+0wEysLHMvoiO3s2R56x5u7glHq2Yqq6EHbH4dW25G9GfDdGCDYqA21KE6DWgNSzxSwHc2hSg==} + dependencies: + devlop: 1.1.0 + micromark-factory-space: 2.0.0 + micromark-factory-whitespace: 2.0.0 + micromark-util-character: 2.0.1 + micromark-util-symbol: 2.0.0 + micromark-util-types: 2.0.0 + parse-entities: 4.0.1 + dev: false + /micromark-extension-gfm-autolink-literal@2.0.0: resolution: {integrity: sha512-rTHfnpt/Q7dEAK1Y5ii0W8bhfJlVJFnJMHIPisfPK3gpVNuOP0VnRl96+YJ3RYWV/P4gFeQoGKNlT3RhuvpqAg==} dependencies: @@ -4083,6 +4668,67 @@ packages: micromark-util-types: 2.0.0 dev: false + /micromark-extension-mdx-expression@3.0.0: + resolution: {integrity: sha512-sI0nwhUDz97xyzqJAbHQhp5TfaxEvZZZ2JDqUo+7NvyIYG6BZ5CPPqj2ogUoPJlmXHBnyZUzISg9+oUmU6tUjQ==} + dependencies: + '@types/estree': 1.0.5 + devlop: 1.1.0 + micromark-factory-mdx-expression: 2.0.1 + micromark-factory-space: 2.0.0 + micromark-util-character: 2.0.1 + micromark-util-events-to-acorn: 2.0.2 + micromark-util-symbol: 2.0.0 + micromark-util-types: 2.0.0 + dev: false + + /micromark-extension-mdx-jsx@3.0.0: + resolution: {integrity: sha512-uvhhss8OGuzR4/N17L1JwvmJIpPhAd8oByMawEKx6NVdBCbesjH4t+vjEp3ZXft9DwvlKSD07fCeI44/N0Vf2w==} + dependencies: + '@types/acorn': 4.0.6 + '@types/estree': 1.0.5 + devlop: 1.1.0 + estree-util-is-identifier-name: 3.0.0 + micromark-factory-mdx-expression: 2.0.1 + micromark-factory-space: 2.0.0 + micromark-util-character: 2.0.1 + micromark-util-symbol: 2.0.0 + micromark-util-types: 2.0.0 + vfile-message: 4.0.2 + dev: false + + /micromark-extension-mdx-md@2.0.0: + resolution: {integrity: sha512-EpAiszsB3blw4Rpba7xTOUptcFeBFi+6PY8VnJ2hhimH+vCQDirWgsMpz7w1XcZE7LVrSAUGb9VJpG9ghlYvYQ==} + dependencies: + micromark-util-types: 2.0.0 + dev: false + + /micromark-extension-mdxjs-esm@3.0.0: + resolution: {integrity: sha512-DJFl4ZqkErRpq/dAPyeWp15tGrcrrJho1hKK5uBS70BCtfrIFg81sqcTVu3Ta+KD1Tk5vAtBNElWxtAa+m8K9A==} + dependencies: + '@types/estree': 1.0.5 + devlop: 1.1.0 + micromark-core-commonmark: 2.0.0 + micromark-util-character: 2.0.1 + micromark-util-events-to-acorn: 2.0.2 + micromark-util-symbol: 2.0.0 + micromark-util-types: 2.0.0 + unist-util-position-from-estree: 2.0.0 + vfile-message: 4.0.2 + dev: false + + /micromark-extension-mdxjs@3.0.0: + resolution: {integrity: sha512-A873fJfhnJ2siZyUrJ31l34Uqwy4xIFmvPY1oj+Ean5PHcPBYzEsvqvWGaWcfEIr11O5Dlw3p2y0tZWpKHDejQ==} + dependencies: + acorn: 8.11.3 + acorn-jsx: 5.3.2(acorn@8.11.3) + micromark-extension-mdx-expression: 3.0.0 + micromark-extension-mdx-jsx: 3.0.0 + micromark-extension-mdx-md: 2.0.0 + micromark-extension-mdxjs-esm: 3.0.0 + micromark-util-combine-extensions: 2.0.0 + micromark-util-types: 2.0.0 + dev: false + /micromark-factory-destination@2.0.0: resolution: {integrity: sha512-j9DGrQLm/Uhl2tCzcbLhy5kXsgkHUrjJHg4fFAeoMRwJmJerT9aw4FEhIbZStWN8A3qMwOp1uzHr4UL8AInxtA==} dependencies: @@ -4100,6 +4746,19 @@ packages: micromark-util-types: 2.0.0 dev: false + /micromark-factory-mdx-expression@2.0.1: + resolution: {integrity: sha512-F0ccWIUHRLRrYp5TC9ZYXmZo+p2AM13ggbsW4T0b5CRKP8KHVRB8t4pwtBgTxtjRmwrK0Irwm7vs2JOZabHZfg==} + dependencies: + '@types/estree': 1.0.5 + devlop: 1.1.0 + micromark-util-character: 2.0.1 + micromark-util-events-to-acorn: 2.0.2 + micromark-util-symbol: 2.0.0 + micromark-util-types: 2.0.0 + unist-util-position-from-estree: 2.0.0 + vfile-message: 4.0.2 + dev: false + /micromark-factory-space@2.0.0: resolution: {integrity: sha512-TKr+LIDX2pkBJXFLzpyPyljzYK3MtmllMUMODTQJIUfDGncESaqB90db9IAUcz4AZAJFdd8U9zOp9ty1458rxg==} dependencies: @@ -4172,6 +4831,19 @@ packages: resolution: {integrity: sha512-pS+ROfCXAGLWCOc8egcBvT0kf27GoWMqtdarNfDcjb6YLuV5cM3ioG45Ys2qOVqeqSbjaKg72vU+Wby3eddPsA==} dev: false + /micromark-util-events-to-acorn@2.0.2: + resolution: {integrity: sha512-Fk+xmBrOv9QZnEDguL9OI9/NQQp6Hz4FuQ4YmCb/5V7+9eAh1s6AYSvL20kHkD67YIg7EpE54TiSlcsf3vyZgA==} + dependencies: + '@types/acorn': 4.0.6 + '@types/estree': 1.0.5 + '@types/unist': 3.0.2 + devlop: 1.1.0 + estree-util-visit: 2.0.0 + micromark-util-symbol: 2.0.0 + micromark-util-types: 2.0.0 + vfile-message: 4.0.2 + dev: false + /micromark-util-html-tag-name@2.0.0: resolution: {integrity: sha512-xNn4Pqkj2puRhKdKTm8t1YHC/BAjx6CEwRFXntTaRf/x16aqka6ouVoutm+QdkISTlT7e2zU7U4ZdlDLJd2Mcw==} dev: false @@ -4277,7 +4949,6 @@ packages: engines: {node: '>=10'} requiresBuild: true dev: false - optional: true /min-indent@1.0.1: resolution: {integrity: sha512-I9jwMn07Sy/IwOj3zVkVik2JTvgpaykDZEigL6Rx6N9LbMywwUSMtxET+7lVoDLLd3O3IXwJwvuuns8UB/HeAg==} @@ -4310,7 +4981,6 @@ packages: resolution: {integrity: sha512-2yyAR8qBkN3YuheJanUpWC5U3bb5osDywNB8RzDVlDwDHbocAJveqqj1u8+SVD7jkWT4yvsHCpWqqWqAxb0zCA==} requiresBuild: true dev: false - optional: true /mixme@0.5.10: resolution: {integrity: sha512-5H76ANWinB1H3twpJ6JY8uvAtpmFvHNArpilJAjXRKXSDDLPIMoZArw5SH0q9z+lLs8IrMw7Q2VWpWimFKFT1Q==} @@ -4321,7 +4991,6 @@ packages: resolution: {integrity: sha512-gKLcREMhtuZRwRAfqP3RFW+TK4JqApVBtOIftVgjuABpAtpxhPGaDcfvbhNvD0B8iD1oUr/txX35NjcaY6Ns/A==} requiresBuild: true dev: false - optional: true /ms@2.0.0: resolution: {integrity: sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==} @@ -4348,7 +5017,6 @@ packages: resolution: {integrity: sha512-ONmRUqK7zj7DWX0D9ADe03wbwOBZxNAfF20PlGfCWQcD3+/MakShIHrMqx9YwPTfxDdF1zLeL+RGZiR9kGMLdg==} requiresBuild: true dev: false - optional: true /natural-compare@1.4.0: resolution: {integrity: sha512-OWND8ei3VtNC9h7V60qff3SVobHr996CTwgxubgyQYEpg290h9J0buyECNNJexkFm5sOajh5G116RYA1c8ZMSw==} @@ -4379,13 +5047,11 @@ packages: dependencies: semver: 7.5.4 dev: false - optional: true /node-addon-api@6.1.0: resolution: {integrity: sha512-+eawOlIgy680F0kBzPUNFhMZGtJ1YmqM6l4+Crf4IkImjYrO/mqPwRMh352g23uIaQKFItcQ64I7KMaJxHgAVA==} requiresBuild: true dev: false - optional: true /node-releases@2.0.14: resolution: {integrity: sha512-y10wOWt8yZpqXmOgRo77WaHEmhYQYGNA6y421PKsKYWEK8aW+cqAphborZDhqfyKrbZEN92CN1X2KbafY2s7Yw==} @@ -4404,6 +5070,10 @@ packages: resolution: {integrity: sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==} engines: {node: '>=0.10.0'} + /not@0.1.0: + resolution: {integrity: sha512-5PDmaAsVfnWUgTUbJ3ERwn7u79Z0dYxN9ErxCpVJJqe2RK0PJ3z+iFUxuqjwtlDDegXvtWoxD/3Fzxox7tFGWA==} + dev: false + /npm-run-path@5.2.0: resolution: {integrity: sha512-W4/tgAXFqFA0iL7fk0+uQ3g7wkL8xJmx3XdK0VGb4cHW//eZTtKGvFBBoRKVTpY7n6ze4NL9ly7rgXcHufqXKg==} engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0} @@ -4411,6 +5081,12 @@ packages: path-key: 4.0.0 dev: false + /nth-check@2.1.1: + resolution: {integrity: sha512-lqjrjmaOoAnWfMmBPL+XNnynZh2+swxiX3WUE0s4yEHI6m+AwrK2UZOimIRl3X/4QctVqS8AiZjFqyOGrMXb/w==} + dependencies: + boolbase: 1.0.0 + dev: false + /object-inspect@1.13.1: resolution: {integrity: sha512-5qoj1RUiKOMsCCNLV1CBiPYE10sziTsnmNxkAI/rZhiD63CF7IqdFGC/XzjWjpSgLf0LxXX3bDFIh0E18f6UhQ==} dev: true @@ -4546,6 +5222,17 @@ packages: resolution: {integrity: sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ==} engines: {node: '>=6'} + /pagefind@1.0.4: + resolution: {integrity: sha512-oRIizYe+zSI2Jw4zcMU0ebDZm27751hRFiSOBLwc1OIYMrsZKk+3m8p9EVaOmc6zZdtqwwdilNUNxXvBeHcP9w==} + hasBin: true + optionalDependencies: + '@pagefind/darwin-arm64': 1.0.4 + '@pagefind/darwin-x64': 1.0.4 + '@pagefind/linux-arm64': 1.0.4 + '@pagefind/linux-x64': 1.0.4 + '@pagefind/windows-x64': 1.0.4 + dev: false + /parent-module@1.0.1: resolution: {integrity: sha512-GQ2EWRpQV8/o+Aw8YqtfZZPfNRWZYkbidE9k5rpl/hC3vtHHBfGm2Ifi6qWV+coDGkrUKZAxE3Lot5kcsRlh+g==} engines: {node: '>=6'} @@ -4553,6 +5240,19 @@ packages: callsites: 3.1.0 dev: false + /parse-entities@4.0.1: + resolution: {integrity: sha512-SWzvYcSJh4d/SGLIOQfZ/CoNv6BTlI6YEQ7Nj82oDVnRpwe/Z/F1EMx42x3JAOwGBlCjeCH0BRJQbQ/opHL17w==} + dependencies: + '@types/unist': 2.0.10 + character-entities: 2.0.2 + character-entities-legacy: 3.0.0 + character-reference-invalid: 2.0.1 + decode-named-character-reference: 1.0.2 + is-alphanumerical: 2.0.1 + is-decimal: 2.0.1 + is-hexadecimal: 2.0.1 + dev: false + /parse-json@5.2.0: resolution: {integrity: sha512-ayCKvm/phCGxOkYRSCM82iDwct8/EonSEgCSxWxD7ve6jHggsFl4fZVQBPRNgQoKiuV/odhFrGzQXZwbifC8Rg==} engines: {node: '>=8'} @@ -4571,6 +5271,10 @@ packages: unist-util-visit-children: 2.0.2 dev: false + /parse5@6.0.1: + resolution: {integrity: sha512-Ofn/CTFzRGTTxwpNEs9PP93gXShHcTq255nzRYSKe8AkVpZY7e1fpmTfOyoIvjP5HG7Z2ZM7VS9PPhQGW2pOpw==} + dev: false + /parse5@7.1.2: resolution: {integrity: sha512-Czj1WaSVpaoj0wbhMzLmWD69anp2WH7FXMB9n1Sy8/ZFF9jolSQVMu1Ij5WIyGmcBmhk7EOndpO4mIpihVqAXw==} dependencies: @@ -4610,6 +5314,14 @@ packages: resolution: {integrity: sha512-gDKb8aZMDeD/tZWs9P6+q0J9Mwkdl6xMV8TjnGP3qJVJ06bdMgkbBlLU8IdfOsIsFz2BW1rNVT3XuNEl8zPAvw==} engines: {node: '>=8'} + /periscopic@3.1.0: + resolution: {integrity: sha512-vKiQ8RRtkl9P+r/+oefh25C3fhybptkHKCZSPlcXiJux2tJF55GnEj3BVn4A5gKfq9NWWXXrxkHBwVPUfH0opw==} + dependencies: + '@types/estree': 1.0.5 + estree-walker: 3.0.3 + is-reference: 3.0.2 + dev: false + /picocolors@1.0.0: resolution: {integrity: sha512-1fygroTLlHu66zi26VoTDv8yRgm0Fccecssto+MhsZ0D/DGW2sm8E8AjW7NU5VVTRt5GxbeZ5qBuJr+HyLYkjQ==} dev: false @@ -4628,6 +5340,16 @@ packages: dependencies: find-up: 4.1.0 + /postcss-nested@6.0.1(postcss@8.4.33): + resolution: {integrity: sha512-mEp4xPMi5bSWiMbsgoPfcP74lsWLHkQbZc3sY+jWYd65CUwXrUaTp0fmNpa01ZcETKlIgUdFN/MpS2xZtqL9dQ==} + engines: {node: '>=12.0'} + peerDependencies: + postcss: ^8.2.14 + dependencies: + postcss: 8.4.33 + postcss-selector-parser: 6.0.15 + dev: false + /postcss-selector-parser@6.0.15: resolution: {integrity: sha512-rEYkQOMUCEMhsKbK66tbEU9QVIxbhN18YiniAwA7XQYTVBqrBy+P2p5JcdqsHgKM2zWylp8d7J6eszocfds5Sw==} engines: {node: '>=4'} @@ -4664,7 +5386,6 @@ packages: tar-fs: 2.1.1 tunnel-agent: 0.6.0 dev: false - optional: true /preferred-pm@3.1.2: resolution: {integrity: sha512-nk7dKrcW8hfCZ4H6klWcdRknBOXWzNQByJ0oJyX97BOupsYD+FzLS4hflgEu/uPUEHZCuRfMxzCBsuWd7OzT8Q==} @@ -4741,7 +5462,6 @@ packages: end-of-stream: 1.4.4 once: 1.4.0 dev: false - optional: true /punycode@2.3.1: resolution: {integrity: sha512-vYt7UD1U9Wg6138shLtLOvdAu+8DsC/ilFtEVHcH+wydcSpNE20AfSOduf6MkRFahL5FY7X1oU7nKVZFtfq8Fg==} @@ -4755,7 +5475,6 @@ packages: resolution: {integrity: sha512-kJt5qhMxoszgU/62PLP1CJytzd2NKetjSRnyuj31fDd3Rlcz3fzlFdFLD1SItunPwyqEOkca6GbV612BWfaBag==} requiresBuild: true dev: false - optional: true /quick-lru@4.0.1: resolution: {integrity: sha512-ARhCpm70fzdcvNQfPoy49IaanKkTlRWF2JMzqhcJbhSFRZv7nPTvZJdcY7301IPmvW+/p0RgIWnQDLJxifsQ7g==} @@ -4772,7 +5491,6 @@ packages: minimist: 1.2.8 strip-json-comments: 2.0.1 dev: false - optional: true /read-pkg-up@7.0.1: resolution: {integrity: sha512-zK0TB7Xd6JpCLmlLmufqykGE+/TlOePD6qKClNW7hHDKFh/J7/7gCWGR7joEQEW1bKq3a3yUZSObOoWLFQ4ohg==} @@ -4872,6 +5590,25 @@ packages: unified: 11.0.4 dev: false + /remark-directive@3.0.0: + resolution: {integrity: sha512-l1UyWJ6Eg1VPU7Hm/9tt0zKtReJQNOA4+iDMAxTyZNWnJnFlbS/7zhiel/rogTLQ2vMYwDzSJa4BiVNqGlqIMA==} + dependencies: + '@types/mdast': 4.0.3 + mdast-util-directive: 3.0.0 + micromark-extension-directive: 3.0.0 + unified: 11.0.4 + transitivePeerDependencies: + - supports-color + dev: false + + /remark-expressive-code@0.31.0: + resolution: {integrity: sha512-ZnKXo9lB0kBUHZIlw2NdqMMgXriVVajEhtQfJ+MWeibMpyM1kuOa28jefNfNFd3FAoNPrc/A3M0fDRkYvWw9Gw==} + dependencies: + expressive-code: 0.31.0 + hast-util-to-html: 8.0.4 + unist-util-visit: 4.1.2 + dev: false + /remark-gfm@4.0.0: resolution: {integrity: sha512-U92vJgBPkbw4Zfu/IiW2oTZLSL3Zpv+uI7My2eq8JxKgqraFdU8YUGicEJCEgSbeaG+QDFqIcwwfMTOEelPxuA==} dependencies: @@ -4885,6 +5622,15 @@ packages: - supports-color dev: false + /remark-mdx@3.0.0: + resolution: {integrity: sha512-O7yfjuC6ra3NHPbRVxfflafAj3LTwx3b73aBvkEFU5z4PsD6FD4vrqJAkE5iNGLz71GdjXfgRqm3SQ0h0VuE7g==} + dependencies: + mdast-util-mdx: 3.0.0 + micromark-extension-mdxjs: 3.0.0 + transitivePeerDependencies: + - supports-color + dev: false + /remark-parse@11.0.0: resolution: {integrity: sha512-FCxlKLNGknS5ba/1lmpYijMUzX2esxW5xQqjWxw2eHFfS2MSdaHVINFmhjo+qN1WhZhNimq0dZATN9pH0IDrpA==} dependencies: @@ -5157,7 +5903,6 @@ packages: tar-fs: 3.0.4 tunnel-agent: 0.6.0 dev: false - optional: true /shebang-command@1.2.0: resolution: {integrity: sha512-EV3L1+UQWGor21OmnvojK36mhg+TyIKDh3iFBKBohr5xeXIhNBcx8oWdgkTEEQ+BEFFYdLRuqMfd5L84N1V5Vg==} @@ -5187,6 +5932,12 @@ packages: resolution: {integrity: sha512-AFJu/vcNT21t0e6YrfadZ+9q86gvPum6iywRyt1OtIPjPFe25RQnYJyxHQPMLKCCWA992TPxmEmbNcOZCAJclw==} dev: false + /shikiji@0.8.7: + resolution: {integrity: sha512-j5usxwI0yHkDTHOuhuSJl9+wT5CNYeYO82dJMSJBlJ/NYT5SIebGcPoL6y9QOyH15wGrJC4LOP2nz5k8mUDGRQ==} + dependencies: + hast-util-to-html: 9.0.0 + dev: false + /shikiji@0.9.19: resolution: {integrity: sha512-Kw2NHWktdcdypCj1GkKpXH4o6Vxz8B8TykPlPuLHOGSV8VkhoCLcFOH4k19K4LXAQYRQmxg+0X/eM+m2sLhAkg==} dependencies: @@ -5213,7 +5964,6 @@ packages: resolution: {integrity: sha512-cSFtAPtRhljv69IK0hTVZQ+OfE9nePi/rtJmw5UjHeVyVroEqJXP1sFztKUy1qU+xvz3u/sfYJLa947b7nAN2Q==} requiresBuild: true dev: false - optional: true /simple-get@4.0.1: resolution: {integrity: sha512-brv7p5WgH0jmQJr1ZDDfKDOSeWWg+OVypG99A/5vYGPqJ6pxiaHLy8nxtFjBA7oMa01ebA9gfh1uMCFqOuXxvA==} @@ -5223,7 +5973,6 @@ packages: once: 1.4.0 simple-concat: 1.0.1 dev: false - optional: true /simple-swizzle@0.2.2: resolution: {integrity: sha512-JA//kQgZtbuY83m+xT+tXJkmJncGMTFT+C+g2h2R9uxkYIrE2yy9sgmcLhCnw57/WSD+Eh3J97FPEDFnbXnDUg==} @@ -5231,7 +5980,6 @@ packages: dependencies: is-arrayish: 0.3.2 dev: false - optional: true /sisteransi@1.0.5: resolution: {integrity: sha512-bLGGlR1QxBcynn2d5YmDX4MGjlZvy2MRBDRNHLJ8VI6l6+9FUiyTFNJ0IveOSP0bcXgVDPRcfGqA0pjaqUpfVg==} @@ -5270,6 +6018,11 @@ packages: engines: {node: '>=0.10.0'} dev: false + /source-map@0.7.4: + resolution: {integrity: sha512-l3BikUxvPOcn5E74dZiq5BGsTb5yEwhaTSzccU6t4sDOH8NWJCstKO5QT2CvtFoK6F0saL7p9xHAqHOlCPJygA==} + engines: {node: '>= 8'} + dev: false + /space-separated-tokens@2.0.2: resolution: {integrity: sha512-PEGlAwrG8yXGXRjW32fGbg66JAlOAwbObuqVoJpv/mRgoWDQfgH1wDPvtzWyUSNAXBGSk8h755YDbbcEy3SH2Q==} dev: false @@ -5334,7 +6087,6 @@ packages: fast-fifo: 1.3.2 queue-tick: 1.0.1 dev: false - optional: true /string-width@4.2.3: resolution: {integrity: sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==} @@ -5448,7 +6200,6 @@ packages: engines: {node: '>=0.10.0'} requiresBuild: true dev: false - optional: true /strip-json-comments@3.1.1: resolution: {integrity: sha512-6fPc+R4ihwqP6N/aIv2f1gMH8lOVtWQHoqC4yK6oSDVVocumAsfCqjkXnqiYMhmMwS/mEHLp7Vehlt3ql6lEig==} @@ -5459,6 +6210,18 @@ packages: resolution: {integrity: sha512-J8bbNyKKXl5qYcR36TIO8W3mVGVHrmmxsd5PAItGkmyzwJvybiw2IVq5nqd0i4LSNSkB/sx9VHllbfFdr9k1JA==} dev: false + /style-to-object@0.4.4: + resolution: {integrity: sha512-HYNoHZa2GorYNyqiCaBgsxvcJIn7OHq6inEga+E6Ke3m5JkoqpQbnFssk4jwe+K7AhGa2fcha4wSOf1Kn01dMg==} + dependencies: + inline-style-parser: 0.1.1 + dev: false + + /style-to-object@1.0.5: + resolution: {integrity: sha512-rDRwHtoDD3UMMrmZ6BzOW0naTjMsVZLIjsGleSKS/0Oz+cgCfAPRspaqJuE8rDzpKha/nEvnM0IF4seEAZUTKQ==} + dependencies: + inline-style-parser: 0.2.2 + dev: false + /suf-log@2.5.3: resolution: {integrity: sha512-KvC8OPjzdNOe+xQ4XWJV2whQA0aM1kGVczMQ8+dStAO6KfEB140JEVQ9dE76ONZ0/Ylf67ni4tILPJB41U0eow==} dependencies: @@ -5497,7 +6260,6 @@ packages: pump: 3.0.0 tar-stream: 2.2.0 dev: false - optional: true /tar-fs@3.0.4: resolution: {integrity: sha512-5AFQU8b9qLfZCX9zp2duONhPmZv0hGYiBPJsyUdqMjzq/mqVpy/rEUSeHk1+YitmxugaptgBh5oDGU3VsAJq4w==} @@ -5507,7 +6269,6 @@ packages: pump: 3.0.0 tar-stream: 3.1.7 dev: false - optional: true /tar-stream@2.2.0: resolution: {integrity: sha512-ujeqbceABgwMZxEJnk2HDY2DlnUZ+9oEcb1KzTVfYHio0UE6dG71n60d8D2I4qNvleWrrXpmjpt7vZeF1LnMZQ==} @@ -5520,7 +6281,6 @@ packages: inherits: 2.0.4 readable-stream: 3.6.2 dev: false - optional: true /tar-stream@3.1.7: resolution: {integrity: sha512-qJj60CXt7IU1Ffyc3NJMjh6EkuCFej46zUqJ4J7pqYlThyd9bO0XBTmcOIhSzZJVWfsLks0+nle/j538YAW9RQ==} @@ -5530,7 +6290,6 @@ packages: fast-fifo: 1.3.2 streamx: 2.15.6 dev: false - optional: true /term-size@2.2.1: resolution: {integrity: sha512-wK0Ri4fOGjv/XPy8SBHZChl8CM7uMc5VML7SqiQ0zG7+J5Vr+RMQDoHa2CNT6KHUnTGIXH34UDMkPzAUyapBZg==} @@ -5622,7 +6381,6 @@ packages: dependencies: safe-buffer: 5.2.1 dev: false - optional: true /type-check@0.4.0: resolution: {integrity: sha512-XleUoc9uwGXqjWwXaUTZAmzMcFZ5858QA2vvx1Ur5xIcixXIP+8LnFDgRplU30us6teqdlskFfu+ae4K79Ooew==} @@ -5767,12 +6525,39 @@ packages: array-iterate: 2.0.1 dev: false + /unist-util-position-from-estree@2.0.0: + resolution: {integrity: sha512-KaFVRjoqLyF6YXCbVLNad/eS4+OfPQQn2yOd7zF/h5T/CSL2v8NpN6a5TPvtbXthAGw5nG+PuTtq+DdIZr+cRQ==} + dependencies: + '@types/unist': 3.0.2 + dev: false + + /unist-util-position@4.0.4: + resolution: {integrity: sha512-kUBE91efOWfIVBo8xzh/uZQ7p9ffYRtUbMRZBNFYwf0RK8koUMx6dGUfwylLOKmaT2cs4wSW96QoYUSXAyEtpg==} + dependencies: + '@types/unist': 2.0.10 + dev: false + /unist-util-position@5.0.0: resolution: {integrity: sha512-fucsC7HjXvkB5R3kTCO7kUjRdrS0BJt3M/FPxmHMBOm8JQi2BsHAHFsy27E0EolP8rp0NzXsJ+jNPyDWvOJZPA==} dependencies: '@types/unist': 3.0.2 dev: false + /unist-util-remove-position@5.0.0: + resolution: {integrity: sha512-Hp5Kh3wLxv0PHj9m2yZhhLt58KzPtEYKQQ4yxfYFEO7EvHwzyDYnduhHnY1mDxoqr7VUwVuHXk9RXKIiYS1N8Q==} + dependencies: + '@types/unist': 3.0.2 + unist-util-visit: 5.0.0 + dev: false + + /unist-util-remove@4.0.0: + resolution: {integrity: sha512-b4gokeGId57UVRX/eVKej5gXqGlc9+trkORhFJpu9raqZkZhU0zm8Doi05+HaiBsMEIJowL+2WtQ5ItjsngPXg==} + dependencies: + '@types/unist': 3.0.2 + unist-util-is: 6.0.0 + unist-util-visit-parents: 6.0.1 + dev: false + /unist-util-stringify-position@3.0.3: resolution: {integrity: sha512-k5GzIBZ/QatR8N5X2y+drfpWG8IDBzdnVj6OInRNWm1oXrzydiaAT2OQiA8DPRRZyAKb9b6I2a6PxYklZD0gKg==} dependencies: @@ -5861,6 +6646,13 @@ packages: spdx-expression-parse: 3.0.1 dev: true + /vfile-location@4.1.0: + resolution: {integrity: sha512-YF23YMyASIIJXpktBa4vIGLJ5Gs88UB/XePgqPmTa7cDA+JeO3yclbpheQYCHjVHBn/yePzrXuygIL+xbvRYHw==} + dependencies: + '@types/unist': 2.0.10 + vfile: 5.3.7 + dev: false + /vfile-location@5.0.2: resolution: {integrity: sha512-NXPYyxyBSH7zB5U6+3uDdd6Nybz6o6/od9rk8bp9H8GR3L+cm/fC0uUTbqBmUTnMCUDslAGBOIKNfvvb+gGlDg==} dependencies: diff --git a/pnpm-workspace.yaml b/pnpm-workspace.yaml index 2127a8c0..401540ba 100644 --- a/pnpm-workspace.yaml +++ b/pnpm-workspace.yaml @@ -1,4 +1,6 @@ packages: - package - "packages/*" - - "playground" \ No newline at end of file + - "playground" + - "www" + - "demo" \ No newline at end of file diff --git a/www/.gitignore b/www/.gitignore new file mode 100644 index 00000000..bffa11f0 --- /dev/null +++ b/www/.gitignore @@ -0,0 +1,21 @@ +# build output +dist/ +# generated types +.astro/ + +# dependencies +node_modules/ + +# logs +npm-debug.log* +yarn-debug.log* +yarn-error.log* +pnpm-debug.log* + + +# environment variables +.env +.env.production + +# macOS-specific files +.DS_Store \ No newline at end of file diff --git a/www/README.md b/www/README.md new file mode 100644 index 00000000..55801475 --- /dev/null +++ b/www/README.md @@ -0,0 +1 @@ +Repo for Astro-ghostcms.xyz website \ No newline at end of file diff --git a/www/astro.config.mjs b/www/astro.config.mjs new file mode 100644 index 00000000..d217656a --- /dev/null +++ b/www/astro.config.mjs @@ -0,0 +1,44 @@ +import { defineConfig } from 'astro/config'; +import fs from 'node:fs'; +import { ExpressiveCodeTheme } from '@astrojs/starlight/expressive-code'; +import starlight from "@astrojs/starlight"; + +const houstonFile = `./houston-vscode.jsonc`; +const houston = fs.readFileSync( + new URL(houstonFile, import.meta.url),'utf-8'); +const houstonTheme = ExpressiveCodeTheme.fromJSONString(houston); + +// https://astro.build/config +export default defineConfig({ + site: 'https://astro-ghostcms.xyz', + integrations: [ + starlight({ + title: 'Astro-GhostCMS', + logo: { + src: './src/assets/favicon.svg' + }, + favicon: 'favicon.svg', + customCss: [ './src/styles/starlight.css' ], + expressiveCode: { themes: [ houstonTheme ] }, + social: { + github: 'https://github.com/MatthiesenXYZ/astro-ghostcms', + }, + sidebar: [ + { label: 'Docs Home', link: '/docs/' }, + { label: 'Introduction', items: [ + { label: 'Getting Started', link: '/docs/introduction/getting-started' }, + { label: 'Integration Mode', items: [ + { label: 'Quick Install', link: '/docs/introduction/integration/quick' }, + { label: 'Manual Install', link: '/docs/introduction/integration/manual' }, + { label: 'Configuration Options', link: '/docs/introduction/integration/config', + badge: { text: 'BETA', variant: 'caution' }, }, ], }, + { label: 'API ( DIY ) Mode', items: [ + { label: 'Install', link: '/docs/introduction/api/install' }, + { label: 'Basic API Usage', link: '/docs/introduction/api/usage' }, ], }, ], }, + //{ label: 'Advanced Usage', link: '/docs/#' }, + { label: 'Tutorials', autogenerate: { directory: 'docs/tutorials' }, }, + { label: 'Reference', autogenerate: { directory: 'docs/reference' }, }, + ], + }), + ], +}); \ No newline at end of file diff --git a/www/houston-vscode.jsonc b/www/houston-vscode.jsonc new file mode 100644 index 00000000..37e5ea46 --- /dev/null +++ b/www/houston-vscode.jsonc @@ -0,0 +1,2369 @@ +{ + "$schema": "vscode://schemas/color-theme", + "type": "dark", + "colors": { + "activityBar.activeBackground": "#343841", + "activityBar.background": "#17191e", + "activityBar.border": "#343841", + "activityBar.foreground": "#eef0f9", + "activityBar.inactiveForeground": "#858b98", + "activityBarBadge.background": "#4bf3c8", + "activityBarBadge.foreground": "#000000", + "badge.background": "#bfc1c9", + "badge.foreground": "#17191e", + "breadcrumb.activeSelectionForeground": "#eef0f9", + "breadcrumb.background": "#17191e", + "breadcrumb.focusForeground": "#eef0f9", + "breadcrumb.foreground": "#858b98", + "button.background": "#4bf3c8", + "button.foreground": "#17191e", + "button.hoverBackground": "#31c19c", + "button.secondaryBackground": "#545864", + "button.secondaryForeground": "#eef0f9", + "button.secondaryHoverBackground": "#858b98", + "checkbox.background": "#23262d", + "checkbox.border": "#00000000", + "checkbox.foreground": "#eef0f9", + "debugExceptionWidget.background": "#23262d", + "debugExceptionWidget.border": "#8996d5", + "debugToolBar.background": "#000000", + "debugToolBar.border": "#ffffff00", + "diffEditor.border": "#ffffff00", + "diffEditor.insertedTextBackground": "#4bf3c824", + "diffEditor.removedTextBackground": "#dc365724", + "dropdown.background": "#23262d", + "dropdown.border": "#00000000", + "dropdown.foreground": "#eef0f9", + "editor.background": "#17191e", + "editor.findMatchBackground": "#515c6a", + "editor.findMatchBorder": "#74879f", + "editor.findMatchHighlightBackground": "#ea5c0055", + "editor.findMatchHighlightBorder": "#ffffff00", + "editor.findRangeHighlightBackground": "#23262d", + "editor.findRangeHighlightBorder": "#b2434300", + "editor.foldBackground": "#ad5dca26", + "editor.foreground": "#eef0f9", + "editor.hoverHighlightBackground": "#5495d740", + "editor.inactiveSelectionBackground": "#2a2d34", + "editor.lineHighlightBackground": "#23262d", + "editor.lineHighlightBorder": "#ffffff00", + "editor.rangeHighlightBackground": "#ffffff0b", + "editor.rangeHighlightBorder": "#ffffff00", + "editor.selectionBackground": "#ad5dca44", + "editor.selectionHighlightBackground": "#add6ff34", + "editor.selectionHighlightBorder": "#495f77", + "editor.wordHighlightBackground": "#494949b8", + "editor.wordHighlightStrongBackground": "#004972b8", + "editorBracketMatch.background": "#545864", + "editorBracketMatch.border": "#ffffff00", + "editorCodeLens.foreground": "#bfc1c9", + "editorCursor.background": "#000000", + "editorCursor.foreground": "#aeafad", + "editorError.background": "#ffffff00", + "editorError.border": "#ffffff00", + "editorError.foreground": "#f4587e", + "editorGroup.border": "#343841", + "editorGroup.emptyBackground": "#17191e", + "editorGroupHeader.border": "#ffffff00", + "editorGroupHeader.tabsBackground": "#23262d", + "editorGroupHeader.tabsBorder": "#ffffff00", + "editorGutter.addedBackground": "#4bf3c8", + "editorGutter.background": "#17191e", + "editorGutter.commentRangeForeground": "#545864", + "editorGutter.deletedBackground": "#f06788", + "editorGutter.foldingControlForeground": "#545864", + "editorGutter.modifiedBackground": "#54b9ff", + "editorHoverWidget.background": "#252526", + "editorHoverWidget.border": "#454545", + "editorHoverWidget.foreground": "#cccccc", + "editorIndentGuide.activeBackground": "#858b98", + "editorIndentGuide.background": "#343841", + "editorInfo.background": "#4490bf00", + "editorInfo.border": "#4490bf00", + "editorInfo.foreground": "#54b9ff", + "editorLineNumber.activeForeground": "#858b98", + "editorLineNumber.foreground": "#545864", + "editorLink.activeForeground": "#54b9ff", + "editorMarkerNavigation.background": "#23262d", + "editorMarkerNavigationError.background": "#dc3657", + "editorMarkerNavigationInfo.background": "#54b9ff", + "editorMarkerNavigationWarning.background": "#ffd493", + "editorOverviewRuler.background": "#ffffff00", + "editorOverviewRuler.border": "#ffffff00", + "editorRuler.foreground": "#545864", + "editorSuggestWidget.background": "#252526", + "editorSuggestWidget.border": "#454545", + "editorSuggestWidget.foreground": "#d4d4d4", + "editorSuggestWidget.highlightForeground": "#0097fb", + "editorSuggestWidget.selectedBackground": "#062f4a", + "editorWarning.background": "#a9904000", + "editorWarning.border": "#ffffff00", + "editorWarning.foreground": "#fbc23b", + "editorWhitespace.foreground": "#cc75f450", + "editorWidget.background": "#343841", + "editorWidget.foreground": "#ffffff", + "editorWidget.resizeBorder": "#cc75f4", + "focusBorder": "#00daef", + "foreground": "#cccccc", + "gitDecoration.addedResourceForeground": "#4bf3c8", + "gitDecoration.conflictingResourceForeground": "#00daef", + "gitDecoration.deletedResourceForeground": "#f4587e", + "gitDecoration.ignoredResourceForeground": "#858b98", + "gitDecoration.modifiedResourceForeground": "#ffd493", + "gitDecoration.stageDeletedResourceForeground": "#c74e39", + "gitDecoration.stageModifiedResourceForeground": "#ffd493", + "gitDecoration.submoduleResourceForeground": "#54b9ff", + "gitDecoration.untrackedResourceForeground": "#4bf3c8", + "icon.foreground": "#cccccc", + "input.background": "#23262d", + "input.border": "#bfc1c9", + "input.foreground": "#eef0f9", + "input.placeholderForeground": "#858b98", + "inputOption.activeBackground": "#54b9ff", + "inputOption.activeBorder": "#007acc00", + "inputOption.activeForeground": "#17191e", + "list.activeSelectionBackground": "#2d4860", + "list.activeSelectionForeground": "#ffffff", + "list.dropBackground": "#17191e", + "list.focusBackground": "#54b9ff", + "list.focusForeground": "#ffffff", + "list.highlightForeground": "#ffffff", + "list.hoverBackground": "#343841", + "list.hoverForeground": "#eef0f9", + "list.inactiveSelectionBackground": "#17191e", + "list.inactiveSelectionForeground": "#eef0f9", + "listFilterWidget.background": "#2d4860", + "listFilterWidget.noMatchesOutline": "#dc3657", + "listFilterWidget.outline": "#54b9ff", + "menu.background": "#252526", + "menu.border": "#00000085", + "menu.foreground": "#cccccc", + "menu.selectionBackground": "#094771", + "menu.selectionBorder": "#00000000", + "menu.selectionForeground": "#4bf3c8", + "menu.separatorBackground": "#bbbbbb", + "menubar.selectionBackground": "#ffffff1a", + "menubar.selectionForeground": "#cccccc", + "merge.commonContentBackground": "#282828", + "merge.commonHeaderBackground": "#383838", + "merge.currentContentBackground": "#27403b", + "merge.currentHeaderBackground": "#367366", + "merge.incomingContentBackground": "#28384b", + "merge.incomingHeaderBackground": "#395f8f", + "minimap.background": "#17191e", + "minimap.errorHighlight": "#dc3657", + "minimap.findMatchHighlight": "#515c6a", + "minimap.selectionHighlight": "#3757b942", + "minimap.warningHighlight": "#fbc23b", + "minimapGutter.addedBackground": "#4bf3c8", + "minimapGutter.deletedBackground": "#f06788", + "minimapGutter.modifiedBackground": "#54b9ff", + "notificationCenter.border": "#ffffff00", + "notificationCenterHeader.background": "#343841", + "notificationCenterHeader.foreground": "#17191e", + "notificationToast.border": "#ffffff00", + "notifications.background": "#343841", + "notifications.border": "#bfc1c9", + "notifications.foreground": "#ffffff", + "notificationsErrorIcon.foreground": "#f4587e", + "notificationsInfoIcon.foreground": "#54b9ff", + "notificationsWarningIcon.foreground": "#ff8551", + "panel.background": "#23262d", + "panel.border": "#17191e", + "panelSection.border": "#17191e", + "panelTitle.activeBorder": "#e7e7e7", + "panelTitle.activeForeground": "#eef0f9", + "panelTitle.inactiveForeground": "#bfc1c9", + "peekView.border": "#007acc", + "peekViewEditor.background": "#001f33", + "peekViewEditor.matchHighlightBackground": "#ff8f0099", + "peekViewEditor.matchHighlightBorder": "#ee931e", + "peekViewEditorGutter.background": "#001f33", + "peekViewResult.background": "#252526", + "peekViewResult.fileForeground": "#ffffff", + "peekViewResult.lineForeground": "#bbbbbb", + "peekViewResult.matchHighlightBackground": "#ff0000", + "peekViewResult.selectionBackground": "#3399ff33", + "peekViewResult.selectionForeground": "#ffffff", + "peekViewTitle.background": "#1e1e1e", + "peekViewTitleDescription.foreground": "#ccccccb3", + "peekViewTitleLabel.foreground": "#ffffff", + "pickerGroup.border": "#ffffff00", + "pickerGroup.foreground": "#eef0f9", + "progressBar.background": "#4bf3c8", + "scrollbar.shadow": "#000000", + "scrollbarSlider.activeBackground": "#54b9ff66", + "scrollbarSlider.background": "#54586466", + "scrollbarSlider.hoverBackground": "#545864b3", + "selection.background": "#00daef56", + "settings.focusedRowBackground": "#ffffff07", + "settings.headerForeground": "#cccccc", + "sideBar.background": "#23262d", + "sideBar.border": "#17191e", + "sideBar.dropBackground": "#17191e", + "sideBar.foreground": "#bfc1c9", + "sideBarSectionHeader.background": "#343841", + "sideBarSectionHeader.border": "#17191e", + "sideBarSectionHeader.foreground": "#eef0f9", + "sideBarTitle.foreground": "#eef0f9", + "statusBar.background": "#17548b", + "statusBar.debuggingBackground": "#cc75f4", + "statusBar.debuggingForeground": "#eef0f9", + "statusBar.foreground": "#eef0f9", + "statusBar.noFolderBackground": "#6c3c7d", + "statusBar.noFolderForeground": "#eef0f9", + "statusBarItem.activeBackground": "#ffffff25", + "statusBarItem.hoverBackground": "#ffffff1f", + "statusBarItem.remoteBackground": "#297763", + "statusBarItem.remoteForeground": "#eef0f9", + "tab.activeBackground": "#17191e", + "tab.activeBorder": "#ffffff00", + "tab.activeBorderTop": "#eef0f9", + "tab.activeForeground": "#eef0f9", + "tab.border": "#17191e", + "tab.hoverBackground": "#343841", + "tab.hoverForeground": "#eef0f9", + "tab.inactiveBackground": "#23262d", + "tab.inactiveForeground": "#858b98", + "terminal.ansiBlack": "#17191e", + "terminal.ansiBlue": "#2b7eca", + "terminal.ansiBrightBlack": "#545864", + "terminal.ansiBrightBlue": "#54b9ff", + "terminal.ansiBrightCyan": "#00daef", + "terminal.ansiBrightGreen": "#4bf3c8", + "terminal.ansiBrightMagenta": "#cc75f4", + "terminal.ansiBrightRed": "#f4587e", + "terminal.ansiBrightWhite": "#fafafa", + "terminal.ansiBrightYellow": "#ffd493", + "terminal.ansiCyan": "#24c0cf", + "terminal.ansiGreen": "#23d18b", + "terminal.ansiMagenta": "#ad5dca", + "terminal.ansiRed": "#dc3657", + "terminal.ansiWhite": "#eef0f9", + "terminal.ansiYellow": "#ffc368", + "terminal.border": "#80808059", + "terminal.foreground": "#cccccc", + "terminal.selectionBackground": "#ffffff40", + "terminalCursor.background": "#0087ff", + "terminalCursor.foreground": "#ffffff", + "textLink.foreground": "#54b9ff", + "titleBar.activeBackground": "#17191e", + "titleBar.activeForeground": "#cccccc", + "titleBar.border": "#00000000", + "titleBar.inactiveBackground": "#3c3c3c99", + "titleBar.inactiveForeground": "#cccccc99", + "tree.indentGuidesStroke": "#545864", + "walkThrough.embeddedEditorBackground": "#00000050", + "widget.shadow": "#ffffff00", + //"actionBar.toggledBackground": "#54b9ff", + //"activityBar.activeBorder": "#eef0f9", + //"activityBar.dropBorder": "#eef0f9", + //"banner.background": "#2d4860", + //"banner.foreground": "#ffffff", + //"banner.iconForeground": "#54b9ff", + //"breadcrumbPicker.background": "#343841", + //"button.separator": "#17191e66", + //"charts.blue": "#54b9ff", + //"charts.foreground": "#cccccc", + //"charts.green": "#89d185", + //"charts.lines": "#cccccc80", + //"charts.orange": "#515c6a", + //"charts.purple": "#b180d7", + //"charts.red": "#f4587e", + //"charts.yellow": "#fbc23b", + //"chat.avatarBackground": "#1f1f1f", + //"chat.avatarForeground": "#cccccc", + //"chat.requestBorder": "#ffffff1a", + //"chat.slashCommandBackground": "#34414b", + //"chat.slashCommandForeground": "#40a6ff", + //"checkbox.selectBackground": "#343841", + //"checkbox.selectBorder": "#cccccc", + //"commandCenter.activeBackground": "#ffffff14", + //"commandCenter.activeBorder": "#cccccc4d", + //"commandCenter.activeForeground": "#cccccc", + //"commandCenter.background": "#ffffff0d", + //"commandCenter.border": "#cccccc33", + //"commandCenter.debuggingBackground": "#cc75f442", + //"commandCenter.foreground": "#cccccc", + //"commandCenter.inactiveBorder": "#cccccc26", + //"commandCenter.inactiveForeground": "#cccccc99", + //"commentsView.resolvedIcon": "#cccccc80", + //"commentsView.unresolvedIcon": "#00daef", + //"consoleninja.logTime": "#6a9955", + //"debugConsole.errorForeground": "#f48771", + //"debugConsole.infoForeground": "#54b9ff", + //"debugConsole.sourceForeground": "#cccccc", + //"debugConsole.warningForeground": "#fbc23b", + //"debugConsoleInputIcon.foreground": "#cccccc", + //"debugIcon.breakpointCurrentStackframeForeground": "#ffcc00", + //"debugIcon.breakpointDisabledForeground": "#848484", + //"debugIcon.breakpointForeground": "#e51400", + //"debugIcon.breakpointStackframeForeground": "#89d185", + //"debugIcon.breakpointUnverifiedForeground": "#848484", + //"debugIcon.continueForeground": "#75beff", + //"debugIcon.disconnectForeground": "#f48771", + //"debugIcon.pauseForeground": "#75beff", + //"debugIcon.restartForeground": "#89d185", + //"debugIcon.startForeground": "#89d185", + //"debugIcon.stepBackForeground": "#75beff", + //"debugIcon.stepIntoForeground": "#75beff", + //"debugIcon.stepOutForeground": "#75beff", + //"debugIcon.stepOverForeground": "#75beff", + //"debugIcon.stopForeground": "#f48771", + //"debugTokenExpression.boolean": "#4e94ce", + //"debugTokenExpression.error": "#f48771", + //"debugTokenExpression.name": "#c586c0", + //"debugTokenExpression.number": "#b5cea8", + //"debugTokenExpression.string": "#ce9178", + //"debugTokenExpression.value": "#cccccc99", + //"debugView.exceptionLabelBackground": "#6c2022", + //"debugView.exceptionLabelForeground": "#cccccc", + //"debugView.stateLabelBackground": "#88888844", + //"debugView.stateLabelForeground": "#cccccc", + //"debugView.valueChangedHighlight": "#569cd6", + //"descriptionForeground": "#ccccccb3", + //"diffEditor.diagonalFill": "#cccccc33", + //"diffEditor.insertedLineBackground": "#9bb95533", + //"diffEditor.move.border": "#8b8b8b9c", + //"diffEditor.moveActive.border": "#ffa500", + //"diffEditor.removedLineBackground": "#ff000033", + //"diffEditor.unchangedCodeBackground": "#74747429", + //"diffEditor.unchangedRegionBackground": "#23262d", + //"diffEditor.unchangedRegionForeground": "#cccccc", + //"diffEditor.unchangedRegionShadow": "#000000", + //"disabledForeground": "#cccccc80", + //"editor.focusedStackFrameHighlightBackground": "#7abd7a4d", + //"editor.inlineValuesBackground": "#ffc80033", + //"editor.inlineValuesForeground": "#ffffff80", + //"editor.linkedEditingBackground": "#ff00004d", + //"editor.snippetFinalTabstopHighlightBorder": "#525252", + //"editor.snippetTabstopHighlightBackground": "#7c7c7c4d", + //"editor.stackFrameHighlightBackground": "#ffff0033", + //"editor.symbolHighlightBackground": "#ea5c0055", + //"editor.wordHighlightTextBackground": "#494949b8", + //"editorActiveLineNumber.foreground": "#c6c6c6", + //"editorBracketHighlight.foreground1": "#ffd700", + //"editorBracketHighlight.foreground2": "#da70d6", + //"editorBracketHighlight.foreground3": "#179fff", + //"editorBracketHighlight.foreground4": "#00000000", + //"editorBracketHighlight.foreground5": "#00000000", + //"editorBracketHighlight.foreground6": "#00000000", + //"editorBracketHighlight.unexpectedBracket.foreground": "#ff1212cc", + //"editorBracketPairGuide.activeBackground1": "#00000000", + //"editorBracketPairGuide.activeBackground2": "#00000000", + //"editorBracketPairGuide.activeBackground3": "#00000000", + //"editorBracketPairGuide.activeBackground4": "#00000000", + //"editorBracketPairGuide.activeBackground5": "#00000000", + //"editorBracketPairGuide.activeBackground6": "#00000000", + //"editorBracketPairGuide.background1": "#00000000", + //"editorBracketPairGuide.background2": "#00000000", + //"editorBracketPairGuide.background3": "#00000000", + //"editorBracketPairGuide.background4": "#00000000", + //"editorBracketPairGuide.background5": "#00000000", + //"editorBracketPairGuide.background6": "#00000000", + //"editorCommentsWidget.rangeActiveBackground": "#00daef1a", + //"editorCommentsWidget.rangeBackground": "#00daef1a", + //"editorCommentsWidget.replyInputBackground": "#1e1e1e", + //"editorCommentsWidget.resolvedBorder": "#cccccc80", + //"editorCommentsWidget.unresolvedBorder": "#00daef", + //"editorGhostText.foreground": "#ffffff56", + //"editorGroup.dropBackground": "#53595d80", + //"editorGroup.dropIntoPromptBackground": "#343841", + //"editorGroup.dropIntoPromptForeground": "#ffffff", + //"editorGroupHeader.noTabsBackground": "#17191e", + //"editorGutter.commentGlyphForeground": "#eef0f9", + //"editorGutter.commentUnresolvedGlyphForeground": "#eef0f9", + //"editorHint.foreground": "#eeeeeeb3", + //"editorHoverWidget.highlightForeground": "#ffffff", + //"editorHoverWidget.statusBarBackground": "#2c2c2d", + //"editorIndentGuide.activeBackground1": "#858b98", + //"editorIndentGuide.activeBackground2": "#00000000", + //"editorIndentGuide.activeBackground3": "#00000000", + //"editorIndentGuide.activeBackground4": "#00000000", + //"editorIndentGuide.activeBackground5": "#00000000", + //"editorIndentGuide.activeBackground6": "#00000000", + //"editorIndentGuide.background1": "#343841", + //"editorIndentGuide.background2": "#00000000", + //"editorIndentGuide.background3": "#00000000", + //"editorIndentGuide.background4": "#00000000", + //"editorIndentGuide.background5": "#00000000", + //"editorIndentGuide.background6": "#00000000", + //"editorInlayHint.background": "#bfc1c91a", + //"editorInlayHint.foreground": "#969696", + //"editorInlayHint.parameterBackground": "#bfc1c91a", + //"editorInlayHint.parameterForeground": "#969696", + //"editorInlayHint.typeBackground": "#bfc1c91a", + //"editorInlayHint.typeForeground": "#969696", + //"editorLightBulb.foreground": "#ffcc00", + //"editorLightBulbAi.foreground": "#7a7a7a", + //"editorLightBulbAutoFix.foreground": "#75beff", + //"editorMarkerNavigationError.headerBackground": "#dc36571a", + //"editorMarkerNavigationInfo.headerBackground": "#54b9ff1a", + //"editorMarkerNavigationWarning.headerBackground": "#ffd4931a", + //"editorOverviewRuler.addedForeground": "#4bf3c899", + //"editorOverviewRuler.bracketMatchForeground": "#a0a0a0", + //"editorOverviewRuler.commentForeground": "#545864", + //"editorOverviewRuler.commentUnresolvedForeground": "#545864", + //"editorOverviewRuler.commonContentForeground": "#383838", + //"editorOverviewRuler.currentContentForeground": "#367366", + //"editorOverviewRuler.deletedForeground": "#f0678899", + //"editorOverviewRuler.errorForeground": "#ff1212b3", + //"editorOverviewRuler.findMatchForeground": "#d186167e", + //"editorOverviewRuler.incomingContentForeground": "#395f8f", + //"editorOverviewRuler.infoForeground": "#54b9ff", + //"editorOverviewRuler.modifiedForeground": "#54b9ff99", + //"editorOverviewRuler.rangeHighlightForeground": "#007acc99", + //"editorOverviewRuler.selectionHighlightForeground": "#a0a0a0cc", + //"editorOverviewRuler.warningForeground": "#fbc23b", + //"editorOverviewRuler.wordHighlightForeground": "#a0a0a0cc", + //"editorOverviewRuler.wordHighlightStrongForeground": "#c0a0c0cc", + //"editorOverviewRuler.wordHighlightTextForeground": "#a0a0a0cc", + //"editorPane.background": "#17191e", + //"editorStickyScroll.background": "#17191e", + //"editorStickyScrollHover.background": "#2a2d2e", + //"editorSuggestWidget.focusHighlightForeground": "#ffffff", + //"editorSuggestWidget.selectedForeground": "#ffffff", + //"editorSuggestWidgetStatus.foreground": "#d4d4d480", + //"editorUnicodeHighlight.background": "#bd9b0326", + //"editorUnicodeHighlight.border": "#bd9b03", + //"editorUnnecessaryCode.opacity": "#000000aa", + //"editorWidget.border": "#454545", + //"errorForeground": "#f48771", + //"extensionBadge.remoteBackground": "#4bf3c8", + //"extensionBadge.remoteForeground": "#000000", + //"extensionButton.background": "#4bf3c8", + //"extensionButton.foreground": "#17191e", + //"extensionButton.hoverBackground": "#31c19c", + //"extensionButton.prominentBackground": "#4bf3c8", + //"extensionButton.prominentForeground": "#17191e", + //"extensionButton.prominentHoverBackground": "#31c19c", + //"extensionButton.separator": "#17191e66", + //"extensionIcon.preReleaseForeground": "#1d9271", + //"extensionIcon.sponsorForeground": "#d758b3", + //"extensionIcon.starForeground": "#ff8e00", + //"extensionIcon.verifiedForeground": "#54b9ff", + //"gitDecoration.renamedResourceForeground": "#73c991", + //"inlineChat.background": "#343841", + //"inlineChat.border": "#454545", + //"inlineChat.regionHighlight": "#5495d740", + //"inlineChat.shadow": "#ffffff00", + //"inlineChatDiff.inserted": "#4bf3c812", + //"inlineChatDiff.removed": "#dc365712", + //"inlineChatInput.background": "#23262d", + //"inlineChatInput.border": "#454545", + //"inlineChatInput.focusBorder": "#00daef", + //"inlineChatInput.placeholderForeground": "#858b98", + //"inputOption.hoverBackground": "#5a5d5e80", + //"inputValidation.errorBackground": "#5a1d1d", + //"inputValidation.errorBorder": "#be1100", + //"inputValidation.infoBackground": "#063b49", + //"inputValidation.infoBorder": "#007acc", + //"inputValidation.warningBackground": "#352a05", + //"inputValidation.warningBorder": "#b89500", + //"interactive.activeCodeBorder": "#007acc", + //"interactive.inactiveCodeBorder": "#17191e", + //"keybindingLabel.background": "#8080802b", + //"keybindingLabel.border": "#33333399", + //"keybindingLabel.bottomBorder": "#44444499", + //"keybindingLabel.foreground": "#cccccc", + //"keybindingTable.headerBackground": "#cccccc0a", + //"keybindingTable.rowsBackground": "#cccccc0a", + //"list.deemphasizedForeground": "#8c8c8c", + //"list.errorForeground": "#f88070", + //"list.filterMatchBackground": "#ea5c0055", + //"list.filterMatchBorder": "#ffffff00", + //"list.focusHighlightForeground": "#ffffff", + //"list.focusOutline": "#00daef", + //"list.invalidItemForeground": "#b89500", + //"list.warningForeground": "#cca700", + //"listFilterWidget.shadow": "#ffffff00", + //"markdown.extension.editor.codeSpan.background": "#00000000", + //"markdown.extension.editor.codeSpan.border": "#ad5dca44", + //"markdown.extension.editor.formattingMark.foreground": "#cc75f450", + //"markdown.extension.editor.trailingSpace.background": "#cccccc33", + //"mergeEditor.change.background": "#9bb95533", + //"mergeEditor.change.word.background": "#9ccc2c33", + //"mergeEditor.changeBase.background": "#4b1818", + //"mergeEditor.changeBase.word.background": "#6f1313", + //"mergeEditor.conflict.handled.minimapOverViewRuler": "#adaca8ee", + //"mergeEditor.conflict.handledFocused.border": "#c1c1c1cc", + //"mergeEditor.conflict.handledUnfocused.border": "#86868649", + //"mergeEditor.conflict.input1.background": "#36736666", + //"mergeEditor.conflict.input2.background": "#395f8f66", + //"mergeEditor.conflict.unhandled.minimapOverViewRuler": "#fcba03", + //"mergeEditor.conflict.unhandledFocused.border": "#ffa600", + //"mergeEditor.conflict.unhandledUnfocused.border": "#ffa6007a", + //"mergeEditor.conflictingLines.background": "#ffea0047", + //"minimap.foregroundOpacity": "#000000", + //"minimap.infoHighlight": "#54b9ff", + //"minimap.selectionOccurrenceHighlight": "#676767", + //"minimapSlider.activeBackground": "#54b9ff33", + //"minimapSlider.background": "#54586433", + //"minimapSlider.hoverBackground": "#5458645a", + //"multiDiffEditor.headerBackground": "#808080", + //"notebook.cellBorderColor": "#17191e", + //"notebook.cellEditorBackground": "#23262d", + //"notebook.cellInsertionIndicator": "#00daef", + //"notebook.cellStatusBarItemHoverBackground": "#ffffff26", + //"notebook.cellToolbarSeparator": "#80808059", + //"notebook.editorBackground": "#17191e", + //"notebook.focusedCellBorder": "#00daef", + //"notebook.focusedEditorBorder": "#00daef", + //"notebook.inactiveFocusedCellBorder": "#17191e", + //"notebook.selectedCellBackground": "#17191e", + //"notebook.selectedCellBorder": "#17191e", + //"notebook.symbolHighlightBackground": "#ffffff0b", + //"notebookEditorOverviewRuler.runningCellForeground": "#89d185", + //"notebookScrollbarSlider.activeBackground": "#54b9ff66", + //"notebookScrollbarSlider.background": "#54586466", + //"notebookScrollbarSlider.hoverBackground": "#545864b3", + //"notebookStatusErrorIcon.foreground": "#f48771", + //"notebookStatusRunningIcon.foreground": "#cccccc", + //"notebookStatusSuccessIcon.foreground": "#89d185", + //"notificationLink.foreground": "#54b9ff", + //"panel.dropBorder": "#eef0f9", + //"panelInput.border": "#bfc1c9", + //"panelSection.dropBackground": "#53595d80", + //"panelSectionHeader.background": "#80808033", + //"peekViewEditorStickyScroll.background": "#001f33", + //"ports.iconRunningProcessForeground": "#297763", + //"problemsErrorIcon.foreground": "#f4587e", + //"problemsInfoIcon.foreground": "#54b9ff", + //"problemsWarningIcon.foreground": "#fbc23b", + //"profileBadge.background": "#4d4d4d", + //"profileBadge.foreground": "#ffffff", + //"quickInput.background": "#343841", + //"quickInput.foreground": "#ffffff", + //"quickInputList.focusBackground": "#2d4860", + //"quickInputList.focusForeground": "#ffffff", + //"quickInputTitle.background": "#ffffff1b", + //"remoteHub.decorations.addedForegroundColor": "#81b88b", + //"remoteHub.decorations.conflictForegroundColor": "#e4676b", + //"remoteHub.decorations.deletedForegroundColor": "#c74e39", + //"remoteHub.decorations.ignoredResourceForeground": "#8c8c8c", + //"remoteHub.decorations.incomingAddedForegroundColor": "#81b88b", + //"remoteHub.decorations.incomingDeletedForegroundColor": "#c74e39", + //"remoteHub.decorations.incomingModifiedForegroundColor": "#e2c08d", + //"remoteHub.decorations.incomingRenamedForegroundColor": "#73c991", + //"remoteHub.decorations.modifiedForegroundColor": "#e2c08d", + //"remoteHub.decorations.possibleConflictForegroundColor": "#cca700", + //"remoteHub.decorations.submoduleForegroundColor": "#8db9e2", + //"remoteHub.decorations.workspaceRepositoriesView.hasUncommittedChangesForegroundColor": "#e2c08d", + //"sash.hoverBorder": "#00daef", + //"scm.historyItemAdditionsForeground": "#4bf3c8", + //"scm.historyItemDeletionsForeground": "#f4587e", + //"scm.historyItemSelectedStatisticsBorder": "#ffffff33", + //"scm.historyItemStatisticsBorder": "#cccccc33", + //"search.resultsInfoForeground": "#cccccca6", + //"searchEditor.findMatchBackground": "#ea5c0038", + //"searchEditor.findMatchBorder": "#ffffff00", + //"searchEditor.textInputBorder": "#bfc1c9", + //"settings.checkboxBackground": "#23262d", + //"settings.checkboxBorder": "#00000000", + //"settings.checkboxForeground": "#eef0f9", + //"settings.dropdownBackground": "#23262d", + //"settings.dropdownBorder": "#00000000", + //"settings.dropdownForeground": "#eef0f9", + //"settings.dropdownListBorder": "#454545", + //"settings.focusedRowBorder": "#00daef", + //"settings.headerBorder": "#17191e", + //"settings.modifiedItemIndicator": "#0c7d9d", + //"settings.numberInputBackground": "#23262d", + //"settings.numberInputBorder": "#bfc1c9", + //"settings.numberInputForeground": "#eef0f9", + //"settings.rowHoverBackground": "#3438414d", + //"settings.sashBorder": "#17191e", + //"settings.settingsHeaderHoverForeground": "#ccccccb3", + //"settings.textInputBackground": "#23262d", + //"settings.textInputBorder": "#bfc1c9", + //"settings.textInputForeground": "#eef0f9", + //"sideBySideEditor.horizontalBorder": "#343841", + //"sideBySideEditor.verticalBorder": "#343841", + //"simpleFindWidget.sashBorder": "#454545", + //"statusBar.focusBorder": "#eef0f9", + //"statusBarItem.compactHoverBackground": "#ffffff33", + //"statusBarItem.errorBackground": "#c72e0f", + //"statusBarItem.errorForeground": "#ffffff", + //"statusBarItem.errorHoverBackground": "#ffffff1f", + //"statusBarItem.errorHoverForeground": "#eef0f9", + //"statusBarItem.focusBorder": "#eef0f9", + //"statusBarItem.hoverForeground": "#eef0f9", + //"statusBarItem.offlineBackground": "#6c1717", + //"statusBarItem.offlineForeground": "#eef0f9", + //"statusBarItem.offlineHoverBackground": "#ffffff1f", + //"statusBarItem.offlineHoverForeground": "#eef0f9", + //"statusBarItem.prominentBackground": "#00000080", + //"statusBarItem.prominentForeground": "#eef0f9", + //"statusBarItem.prominentHoverBackground": "#0000004d", + //"statusBarItem.prominentHoverForeground": "#eef0f9", + //"statusBarItem.remoteHoverBackground": "#ffffff1f", + //"statusBarItem.remoteHoverForeground": "#eef0f9", + //"statusBarItem.warningBackground": "#b68104", + //"statusBarItem.warningForeground": "#ffffff", + //"statusBarItem.warningHoverBackground": "#ffffff1f", + //"statusBarItem.warningHoverForeground": "#eef0f9", + //"symbolIcon.arrayForeground": "#cccccc", + //"symbolIcon.booleanForeground": "#cccccc", + //"symbolIcon.classForeground": "#ee9d28", + //"symbolIcon.colorForeground": "#cccccc", + //"symbolIcon.constantForeground": "#cccccc", + //"symbolIcon.constructorForeground": "#b180d7", + //"symbolIcon.enumeratorForeground": "#ee9d28", + //"symbolIcon.enumeratorMemberForeground": "#75beff", + //"symbolIcon.eventForeground": "#ee9d28", + //"symbolIcon.fieldForeground": "#75beff", + //"symbolIcon.fileForeground": "#cccccc", + //"symbolIcon.folderForeground": "#cccccc", + //"symbolIcon.functionForeground": "#b180d7", + //"symbolIcon.interfaceForeground": "#75beff", + //"symbolIcon.keyForeground": "#cccccc", + //"symbolIcon.keywordForeground": "#cccccc", + //"symbolIcon.methodForeground": "#b180d7", + //"symbolIcon.moduleForeground": "#cccccc", + //"symbolIcon.namespaceForeground": "#cccccc", + //"symbolIcon.nullForeground": "#cccccc", + //"symbolIcon.numberForeground": "#cccccc", + //"symbolIcon.objectForeground": "#cccccc", + //"symbolIcon.operatorForeground": "#cccccc", + //"symbolIcon.packageForeground": "#cccccc", + //"symbolIcon.propertyForeground": "#cccccc", + //"symbolIcon.referenceForeground": "#cccccc", + //"symbolIcon.snippetForeground": "#cccccc", + //"symbolIcon.stringForeground": "#cccccc", + //"symbolIcon.structForeground": "#cccccc", + //"symbolIcon.textForeground": "#cccccc", + //"symbolIcon.typeParameterForeground": "#cccccc", + //"symbolIcon.unitForeground": "#cccccc", + //"symbolIcon.variableForeground": "#75beff", + //"tab.activeModifiedBorder": "#3399cc", + //"tab.inactiveModifiedBorder": "#3399cc80", + //"tab.lastPinnedBorder": "#545864", + //"tab.unfocusedActiveBackground": "#17191e", + //"tab.unfocusedActiveBorder": "#ffffff00", + //"tab.unfocusedActiveBorderTop": "#eef0f980", + //"tab.unfocusedActiveForeground": "#eef0f980", + //"tab.unfocusedActiveModifiedBorder": "#3399cc80", + //"tab.unfocusedHoverBackground": "#34384180", + //"tab.unfocusedHoverForeground": "#eef0f980", + //"tab.unfocusedInactiveBackground": "#23262d", + //"tab.unfocusedInactiveForeground": "#858b9880", + //"tab.unfocusedInactiveModifiedBorder": "#3399cc40", + //"terminal.dropBackground": "#53595d80", + //"terminal.findMatchBackground": "#515c6a", + //"terminal.findMatchHighlightBackground": "#ea5c0055", + //"terminal.hoverHighlightBackground": "#5495d720", + //"terminal.inactiveSelectionBackground": "#ffffff20", + //"terminal.tab.activeBorder": "#ffffff00", + //"terminalCommandDecoration.defaultBackground": "#ffffff40", + //"terminalCommandDecoration.errorBackground": "#f14c4c", + //"terminalCommandDecoration.successBackground": "#1b81a8", + //"terminalOverviewRuler.cursorForeground": "#a0a0a0cc", + //"terminalOverviewRuler.findMatchForeground": "#d186167e", + //"terminalStickyScrollHover.background": "#2a2d2e", + //"testing.iconErrored": "#f14c4c", + //"testing.iconFailed": "#f14c4c", + //"testing.iconPassed": "#73c991", + //"testing.iconQueued": "#cca700", + //"testing.iconSkipped": "#848484", + //"testing.iconUnset": "#848484", + //"testing.message.error.decorationForeground": "#f4587e", + //"testing.message.error.lineBackground": "#ff000033", + //"testing.message.info.decorationForeground": "#eef0f980", + //"testing.peekBorder": "#f4587e", + //"testing.peekHeaderBackground": "#f4587e1a", + //"testing.runAction": "#73c991", + //"textBlockQuote.background": "#222222", + //"textBlockQuote.border": "#007acc80", + //"textCodeBlock.background": "#0a0a0a66", + //"textLink.activeForeground": "#3794ff", + //"textPreformat.background": "#ffffff1a", + //"textPreformat.foreground": "#d7ba7d", + //"textSeparator.foreground": "#ffffff2e", + //"toolbar.activeBackground": "#63666750", + //"toolbar.hoverBackground": "#5a5d5e50", + //"tree.inactiveIndentGuidesStroke": "#54586466", + //"tree.tableColumnsBorder": "#cccccc20", + //"tree.tableOddRowsBackground": "#cccccc0a", + //"walkthrough.stepTitle.foreground": "#ffffff", + //"welcomePage.progress.background": "#23262d", + //"welcomePage.progress.foreground": "#54b9ff", + //"welcomePage.tileBackground": "#343841", + //"welcomePage.tileBorder": "#ffffff1a", + //"welcomePage.tileHoverBackground": "#3e434e", + //"activityBar.activeFocusBorder": null, + //"button.border": null, + //"contrastActiveBorder": null, + //"contrastBorder": null, + //"diffEditor.insertedTextBorder": null, + //"diffEditor.removedTextBorder": null, + //"diffEditorGutter.insertedLineBackground": null, + //"diffEditorGutter.removedLineBackground": null, + //"diffEditorOverview.insertedForeground": null, + //"diffEditorOverview.removedForeground": null, + //"dropdown.listBackground": null, + //"editor.selectionForeground": null, + //"editor.snippetFinalTabstopHighlightBackground": null, + //"editor.snippetTabstopHighlightBorder": null, + //"editor.symbolHighlightBorder": null, + //"editor.wordHighlightBorder": null, + //"editor.wordHighlightStrongBorder": null, + //"editor.wordHighlightTextBorder": null, + //"editorGhostText.background": null, + //"editorGhostText.border": null, + //"editorGroup.dropIntoPromptBorder": null, + //"editorGroup.focusedEmptyBorder": null, + //"editorHint.border": null, + //"editorLineNumber.dimmedForeground": null, + //"editorSuggestWidget.selectedIconForeground": null, + //"editorUnnecessaryCode.border": null, + //"inputValidation.errorForeground": null, + //"inputValidation.infoForeground": null, + //"inputValidation.warningForeground": null, + //"list.activeSelectionIconForeground": null, + //"list.focusAndSelectionOutline": null, + //"list.inactiveFocusBackground": null, + //"list.inactiveFocusOutline": null, + //"list.inactiveSelectionIconForeground": null, + //"menubar.selectionBorder": null, + //"merge.border": null, + //"notebook.cellHoverBackground": null, + //"notebook.focusedCellBackground": null, + //"notebook.inactiveSelectedCellBorder": null, + //"notebook.outputContainerBackgroundColor": null, + //"notebook.outputContainerBorderColor": null, + //"panelSectionHeader.border": null, + //"panelSectionHeader.foreground": null, + //"quickInput.list.focusBackground": null, + //"quickInputList.focusIconForeground": null, + //"statusBar.border": null, + //"statusBar.debuggingBorder": null, + //"statusBar.noFolderBorder": null, + //"tab.hoverBorder": null, + //"tab.unfocusedHoverBorder": null, + //"terminal.background": null, + //"terminal.findMatchBorder": null, + //"terminal.findMatchHighlightBorder": null, + //"terminal.selectionForeground": null, + //"terminalStickyScroll.background": null, + //"testing.message.info.lineBackground": null, + //"toolbar.hoverOutline": null, + //"welcomePage.background": null, + //"widget.border": null, + //"window.activeBorder": null, + //"window.inactiveBorder": null + }, + "tokenColors": [ + { + "scope": "punctuation.definition.delayed.unison,punctuation.definition.list.begin.unison,punctuation.definition.list.end.unison,punctuation.definition.ability.begin.unison,punctuation.definition.ability.end.unison,punctuation.operator.assignment.as.unison,punctuation.separator.pipe.unison,punctuation.separator.delimiter.unison,punctuation.definition.hash.unison", + "settings": { + "foreground": "#4BF3C8" + } + }, + { + "scope": "variable.other.generic-type.haskell", + "settings": { + "foreground": "#54B9FF" + } + }, + { + "scope": "storage.type.haskell", + "settings": { + "foreground": "#FFD493" + } + }, + { + "scope": "support.variable.magic.python", + "settings": { + "foreground": "#4BF3C8" + } + }, + { + "scope": "punctuation.separator.period.python,punctuation.separator.element.python,punctuation.parenthesis.begin.python,punctuation.parenthesis.end.python", + "settings": { + "foreground": "#EEF0F9" + } + }, + { + "scope": "variable.parameter.function.language.special.self.python", + "settings": { + "foreground": "#ACAFFF" + } + }, + { + "scope": "storage.modifier.lifetime.rust", + "settings": { + "foreground": "#EEF0F9" + } + }, + { + "scope": "support.function.std.rust", + "settings": { + "foreground": "#00DAEF" + } + }, + { + "scope": "entity.name.lifetime.rust", + "settings": { + "foreground": "#ACAFFF" + } + }, + { + "scope": "variable.language.rust", + "settings": { + "foreground": "#4BF3C8" + } + }, + { + "scope": "support.constant.edge", + "settings": { + "foreground": "#54B9FF" + } + }, + { + "scope": "constant.other.character-class.regexp", + "settings": { + "foreground": "#4BF3C8" + } + }, + { + "scope": "keyword.operator.quantifier.regexp", + "settings": { + "foreground": "#FFD493" + } + }, + { + "scope": "punctuation.definition.string.begin,punctuation.definition.string.end", + "settings": { + "foreground": "#FFD493" + } + }, + { + "scope": "variable.parameter.function", + "settings": { + "foreground": "#EEF0F9" + } + }, + { + "scope": "comment markup.link", + "settings": { + "foreground": "#545864" + } + }, + { + "scope": "markup.changed.diff", + "settings": { + "foreground": "#ACAFFF" + } + }, + { + "scope": "meta.diff.header.from-file,meta.diff.header.to-file,punctuation.definition.from-file.diff,punctuation.definition.to-file.diff", + "settings": { + "foreground": "#00DAEF" + } + }, + { + "scope": "markup.inserted.diff", + "settings": { + "foreground": "#FFD493" + } + }, + { + "scope": "markup.deleted.diff", + "settings": { + "foreground": "#4BF3C8" + } + }, + { + "scope": "meta.function.c,meta.function.cpp", + "settings": { + "foreground": "#4BF3C8" + } + }, + { + "scope": "punctuation.section.block.begin.bracket.curly.cpp,punctuation.section.block.end.bracket.curly.cpp,punctuation.terminator.statement.c,punctuation.section.block.begin.bracket.curly.c,punctuation.section.block.end.bracket.curly.c,punctuation.section.parens.begin.bracket.round.c,punctuation.section.parens.end.bracket.round.c,punctuation.section.parameters.begin.bracket.round.c,punctuation.section.parameters.end.bracket.round.c", + "settings": { + "foreground": "#EEF0F9" + } + }, + { + "scope": "punctuation.separator.key-value", + "settings": { + "foreground": "#EEF0F9" + } + }, + { + "scope": "keyword.operator.expression.import", + "settings": { + "foreground": "#00DAEF" + } + }, + { + "scope": "support.constant.math", + "settings": { + "foreground": "#ACAFFF" + } + }, + { + "scope": "support.constant.property.math", + "settings": { + "foreground": "#FFD493" + } + }, + { + "scope": "variable.other.constant", + "settings": { + "foreground": "#ACAFFF" + } + }, + { + "scope": [ + "storage.type.annotation.java", + "storage.type.object.array.java" + ], + "settings": { + "foreground": "#ACAFFF" + } + }, + { + "scope": "source.java", + "settings": { + "foreground": "#4BF3C8" + } + }, + { + "scope": "punctuation.section.block.begin.java,punctuation.section.block.end.java,punctuation.definition.method-parameters.begin.java,punctuation.definition.method-parameters.end.java,meta.method.identifier.java,punctuation.section.method.begin.java,punctuation.section.method.end.java,punctuation.terminator.java,punctuation.section.class.begin.java,punctuation.section.class.end.java,punctuation.section.inner-class.begin.java,punctuation.section.inner-class.end.java,meta.method-call.java,punctuation.section.class.begin.bracket.curly.java,punctuation.section.class.end.bracket.curly.java,punctuation.section.method.begin.bracket.curly.java,punctuation.section.method.end.bracket.curly.java,punctuation.separator.period.java,punctuation.bracket.angle.java,punctuation.definition.annotation.java,meta.method.body.java", + "settings": { + "foreground": "#EEF0F9" + } + }, + { + "scope": "meta.method.java", + "settings": { + "foreground": "#00DAEF" + } + }, + { + "scope": "storage.modifier.import.java,storage.type.java,storage.type.generic.java", + "settings": { + "foreground": "#ACAFFF" + } + }, + { + "scope": "keyword.operator.instanceof.java", + "settings": { + "foreground": "#54B9FF" + } + }, + { + "scope": "meta.definition.variable.name.java", + "settings": { + "foreground": "#4BF3C8" + } + }, + { + "scope": "keyword.operator.logical", + "settings": { + "foreground": "#EEF0F9" + } + }, + { + "scope": "keyword.operator.bitwise", + "settings": { + "foreground": "#EEF0F9" + } + }, + { + "scope": "keyword.operator.channel", + "settings": { + "foreground": "#EEF0F9" + } + }, + { + "scope": "support.constant.property-value.scss,support.constant.property-value.css", + "settings": { + "foreground": "#FFD493" + } + }, + { + "scope": "keyword.operator.css,keyword.operator.scss,keyword.operator.less", + "settings": { + "foreground": "#EEF0F9" + } + }, + { + "scope": "support.constant.color.w3c-standard-color-name.css,support.constant.color.w3c-standard-color-name.scss", + "settings": { + "foreground": "#FFD493" + } + }, + { + "scope": "punctuation.separator.list.comma.css", + "settings": { + "foreground": "#EEF0F9" + } + }, + { + "scope": "support.constant.color.w3c-standard-color-name.css", + "settings": { + "foreground": "#FFD493" + } + }, + { + "scope": "support.type.vendored.property-name.css", + "settings": { + "foreground": "#EEF0F9" + } + }, + { + "scope": "support.module.node,support.type.object.module,support.module.node", + "settings": { + "foreground": "#ACAFFF" + } + }, + { + "scope": "entity.name.type.module", + "settings": { + "foreground": "#FFD493" + } + }, + { + "scope": "variable.other.readwrite,meta.object-literal.key,support.variable.property,support.variable.object.process,support.variable.object.node", + "settings": { + "foreground": "#4BF3C8" + } + }, + { + "scope": "support.constant.json", + "settings": { + "foreground": "#FFD493" + } + }, + { + "scope": [ + "keyword.operator.expression.instanceof", + "keyword.operator.new", + "keyword.operator.ternary", + "keyword.operator.optional", + "keyword.operator.expression.keyof" + ], + "settings": { + "foreground": "#54B9FF" + } + }, + { + "scope": "support.type.object.console", + "settings": { + "foreground": "#4BF3C8" + } + }, + { + "scope": "support.variable.property.process", + "settings": { + "foreground": "#FFD493" + } + }, + { + "scope": "entity.name.function,support.function.console", + "settings": { + "foreground": "#00DAEF" + } + }, + { + "scope": "keyword.operator.misc.rust", + "settings": { + "foreground": "#EEF0F9" + } + }, + { + "scope": "keyword.operator.sigil.rust", + "settings": { + "foreground": "#54B9FF" + } + }, + { + "scope": "keyword.operator.delete", + "settings": { + "foreground": "#54B9FF" + } + }, + { + "scope": "support.type.object.dom", + "settings": { + "foreground": "#EEF0F9" + } + }, + { + "scope": "support.variable.dom,support.variable.property.dom", + "settings": { + "foreground": "#4BF3C8" + } + }, + { + "scope": "keyword.operator.arithmetic,keyword.operator.comparison,keyword.operator.decrement,keyword.operator.increment,keyword.operator.relational", + "settings": { + "foreground": "#EEF0F9" + } + }, + { + "scope": "keyword.operator.assignment.c,keyword.operator.comparison.c,keyword.operator.c,keyword.operator.increment.c,keyword.operator.decrement.c,keyword.operator.bitwise.shift.c,keyword.operator.assignment.cpp,keyword.operator.comparison.cpp,keyword.operator.cpp,keyword.operator.increment.cpp,keyword.operator.decrement.cpp,keyword.operator.bitwise.shift.cpp", + "settings": { + "foreground": "#54B9FF" + } + }, + { + "scope": "punctuation.separator.delimiter", + "settings": { + "foreground": "#EEF0F9" + } + }, + { + "scope": "punctuation.separator.c,punctuation.separator.cpp", + "settings": { + "foreground": "#54B9FF" + } + }, + { + "scope": "support.type.posix-reserved.c,support.type.posix-reserved.cpp", + "settings": { + "foreground": "#EEF0F9" + } + }, + { + "scope": "keyword.operator.sizeof.c,keyword.operator.sizeof.cpp", + "settings": { + "foreground": "#54B9FF" + } + }, + { + "scope": "variable.parameter.function.language.python", + "settings": { + "foreground": "#FFD493" + } + }, + { + "scope": "support.type.python", + "settings": { + "foreground": "#EEF0F9" + } + }, + { + "scope": "keyword.operator.logical.python", + "settings": { + "foreground": "#54B9FF" + } + }, + { + "scope": "variable.parameter.function.python", + "settings": { + "foreground": "#FFD493" + } + }, + { + "scope": "punctuation.definition.arguments.begin.python,punctuation.definition.arguments.end.python,punctuation.separator.arguments.python,punctuation.definition.list.begin.python,punctuation.definition.list.end.python", + "settings": { + "foreground": "#EEF0F9" + } + }, + { + "scope": "meta.function-call.generic.python", + "settings": { + "foreground": "#00DAEF" + } + }, + { + "scope": "constant.character.format.placeholder.other.python", + "settings": { + "foreground": "#FFD493" + } + }, + { + "scope": "keyword.operator", + "settings": { + "foreground": "#EEF0F9" + } + }, + { + "scope": "keyword.operator.assignment.compound", + "settings": { + "foreground": "#54B9FF" + } + }, + { + "scope": "keyword.operator.assignment.compound.js,keyword.operator.assignment.compound.ts", + "settings": { + "foreground": "#EEF0F9" + } + }, + { + "scope": "keyword", + "settings": { + "foreground": "#54B9FF" + } + }, + { + "scope": "entity.name.namespace", + "settings": { + "foreground": "#ACAFFF" + } + }, + { + "scope": "variable", + "settings": { + "foreground": "#4BF3C8" + } + }, + { + "scope": "variable.c", + "settings": { + "foreground": "#EEF0F9" + } + }, + { + "scope": "variable.language", + "settings": { + "foreground": "#ACAFFF" + } + }, + { + "scope": "token.variable.parameter.java", + "settings": { + "foreground": "#EEF0F9" + } + }, + { + "scope": "import.storage.java", + "settings": { + "foreground": "#ACAFFF" + } + }, + { + "scope": "token.package.keyword", + "settings": { + "foreground": "#54B9FF" + } + }, + { + "scope": "token.package", + "settings": { + "foreground": "#EEF0F9" + } + }, + { + "scope": [ + "entity.name.function", + "meta.require", + "support.function.any-method", + "variable.function" + ], + "settings": { + "foreground": "#00DAEF" + } + }, + { + "scope": "entity.name.type.namespace", + "settings": { + "foreground": "#ACAFFF" + } + }, + { + "scope": "support.class, entity.name.type.class", + "settings": { + "foreground": "#ACAFFF" + } + }, + { + "scope": "entity.name.class.identifier.namespace.type", + "settings": { + "foreground": "#ACAFFF" + } + }, + { + "scope": [ + "entity.name.class", + "variable.other.class.js", + "variable.other.class.ts" + ], + "settings": { + "foreground": "#ACAFFF" + } + }, + { + "scope": "variable.other.class.php", + "settings": { + "foreground": "#4BF3C8" + } + }, + { + "scope": "entity.name.type", + "settings": { + "foreground": "#ACAFFF" + } + }, + { + "scope": "keyword.control", + "settings": { + "foreground": "#54B9FF" + } + }, + { + "scope": "control.elements, keyword.operator.less", + "settings": { + "foreground": "#FFD493" + } + }, + { + "scope": "keyword.other.special-method", + "settings": { + "foreground": "#00DAEF" + } + }, + { + "scope": "storage", + "settings": { + "foreground": "#54B9FF" + } + }, + { + "scope": "token.storage", + "settings": { + "foreground": "#54B9FF" + } + }, + { + "scope": "keyword.operator.expression.delete,keyword.operator.expression.in,keyword.operator.expression.of,keyword.operator.expression.instanceof,keyword.operator.new,keyword.operator.expression.typeof,keyword.operator.expression.void", + "settings": { + "foreground": "#54B9FF" + } + }, + { + "scope": "token.storage.type.java", + "settings": { + "foreground": "#ACAFFF" + } + }, + { + "scope": "support.function", + "settings": { + "foreground": "#EEF0F9" + } + }, + { + "scope": "support.type.property-name", + "settings": { + "foreground": "#EEF0F9" + } + }, + { + "scope": "support.constant.property-value", + "settings": { + "foreground": "#EEF0F9" + } + }, + { + "scope": "support.constant.font-name", + "settings": { + "foreground": "#FFD493" + } + }, + { + "scope": "meta.tag", + "settings": { + "foreground": "#EEF0F9" + } + }, + { + "scope": "string", + "settings": { + "foreground": "#FFD493" + } + }, + { + "scope": "entity.other.inherited-class", + "settings": { + "foreground": "#ACAFFF" + } + }, + { + "scope": "constant.other.symbol", + "settings": { + "foreground": "#EEF0F9" + } + }, + { + "scope": "constant.numeric", + "settings": { + "foreground": "#FFD493" + } + }, + { + "scope": "constant", + "settings": { + "foreground": "#FFD493" + } + }, + { + "scope": "punctuation.definition.constant", + "settings": { + "foreground": "#FFD493" + } + }, + { + "scope": "entity.name.tag", + "settings": { + "foreground": "#54B9FF" + } + }, + { + "scope": "entity.other.attribute-name", + "settings": { + "foreground": "#4BF3C8" + } + }, + { + "scope": "entity.other.attribute-name.html", + "settings": { + "foreground": "#ACAFFF" + } + }, + { + "scope": "source.astro.meta.attribute.client:idle.html", + "settings": { + "foreground": "#FFD493", + "fontStyle": "italic" + } + }, + { + "scope": "string.quoted.double.html,string.quoted.single.html,string.template.html,punctuation.definition.string.begin.html,punctuation.definition.string.end.html", + "settings": { + "foreground": "#4BF3C8" + } + }, + { + "scope": "entity.other.attribute-name.id", + "settings": { + "foreground": "#00DAEF", + "fontStyle": "normal" + } + }, + { + "scope": "entity.other.attribute-name.class.css", + "settings": { + "foreground": "#4BF3C8", + "fontStyle": "normal" + } + }, + { + "scope": "meta.selector", + "settings": { + "foreground": "#54B9FF" + } + }, + { + "scope": "markup.heading", + "settings": { + "foreground": "#4BF3C8" + } + }, + { + "scope": "markup.heading punctuation.definition.heading, entity.name.section", + "settings": { + "foreground": "#00DAEF" + } + }, + { + "scope": "keyword.other.unit", + "settings": { + "foreground": "#4BF3C8" + } + }, + { + "scope": "markup.bold,todo.bold", + "settings": { + "foreground": "#FFD493" + } + }, + { + "scope": "punctuation.definition.bold", + "settings": { + "foreground": "#ACAFFF" + } + }, + { + "scope": "markup.italic, punctuation.definition.italic,todo.emphasis", + "settings": { + "foreground": "#54B9FF" + } + }, + { + "scope": "emphasis md", + "settings": { + "foreground": "#54B9FF" + } + }, + { + "scope": "entity.name.section.markdown", + "settings": { + "foreground": "#4BF3C8" + } + }, + { + "scope": "punctuation.definition.heading.markdown", + "settings": { + "foreground": "#4BF3C8" + } + }, + { + "scope": "punctuation.definition.list.begin.markdown", + "settings": { + "foreground": "#4BF3C8" + } + }, + { + "scope": "markup.heading.setext", + "settings": { + "foreground": "#EEF0F9" + } + }, + { + "scope": "punctuation.definition.bold.markdown", + "settings": { + "foreground": "#FFD493" + } + }, + { + "scope": "markup.inline.raw.markdown", + "settings": { + "foreground": "#FFD493" + } + }, + { + "scope": "markup.inline.raw.string.markdown", + "settings": { + "foreground": "#FFD493" + } + }, + { + "scope": "punctuation.definition.list.markdown", + "settings": { + "foreground": "#4BF3C8" + } + }, + { + "scope": [ + "punctuation.definition.string.begin.markdown", + "punctuation.definition.string.end.markdown", + "punctuation.definition.metadata.markdown" + ], + "settings": { + "foreground": "#4BF3C8" + } + }, + { + "scope": [ + "beginning.punctuation.definition.list.markdown" + ], + "settings": { + "foreground": "#4BF3C8" + } + }, + { + "scope": "punctuation.definition.metadata.markdown", + "settings": { + "foreground": "#4BF3C8" + } + }, + { + "scope": "markup.underline.link.markdown,markup.underline.link.image.markdown", + "settings": { + "foreground": "#54B9FF" + } + }, + { + "scope": "string.other.link.title.markdown,string.other.link.description.markdown", + "settings": { + "foreground": "#00DAEF" + } + }, + { + "scope": "string.regexp", + "settings": { + "foreground": "#EEF0F9" + } + }, + { + "scope": "constant.character.escape", + "settings": { + "foreground": "#EEF0F9" + } + }, + { + "scope": "punctuation.section.embedded, variable.interpolation", + "settings": { + "foreground": "#4BF3C8" + } + }, + { + "scope": "punctuation.section.embedded.begin,punctuation.section.embedded.end", + "settings": { + "foreground": "#54B9FF" + } + }, + { + "scope": "invalid.illegal", + "settings": { + "foreground": "#FFFFFF" + } + }, + { + "scope": "invalid.illegal.bad-ampersand.html", + "settings": { + "foreground": "#EEF0F9" + } + }, + { + "scope": "invalid.broken", + "settings": { + "foreground": "#FFFFFF" + } + }, + { + "scope": "invalid.deprecated", + "settings": { + "foreground": "#FFFFFF" + } + }, + { + "scope": "invalid.unimplemented", + "settings": { + "foreground": "#FFFFFF" + } + }, + { + "scope": "source.json meta.structure.dictionary.json > string.quoted.json", + "settings": { + "foreground": "#CC75F4" + } + }, + { + "scope": "source.json meta.structure.dictionary.json > string.quoted.json > punctuation.string", + "settings": { + "foreground": "#4BF3C8" + } + }, + { + "scope": "source.json meta.structure.dictionary.json > value.json > string.quoted.json,source.json meta.structure.array.json > value.json > string.quoted.json,source.json meta.structure.dictionary.json > value.json > string.quoted.json > punctuation,source.json meta.structure.array.json > value.json > string.quoted.json > punctuation", + "settings": { + "foreground": "#FFD493" + } + }, + { + "scope": "source.json meta.structure.dictionary.json > constant.language.json,source.json meta.structure.array.json > constant.language.json", + "settings": { + "foreground": "#EEF0F9" + } + }, + { + "scope": "support.type.property-name.json", + "settings": { + "foreground": "#4BF3C8" + } + }, + { + "scope": "support.type.property-name.json punctuation", + "settings": { + "foreground": "#4BF3C8" + } + }, + { + "scope": "text.html.laravel-blade source.php.embedded.line.html entity.name.tag.laravel-blade", + "settings": { + "foreground": "#54B9FF" + } + }, + { + "scope": "text.html.laravel-blade source.php.embedded.line.html support.constant.laravel-blade", + "settings": { + "foreground": "#54B9FF" + } + }, + { + "scope": "support.other.namespace.use.php,support.other.namespace.use-as.php,support.other.namespace.php,entity.other.alias.php,meta.interface.php", + "settings": { + "foreground": "#ACAFFF" + } + }, + { + "scope": "keyword.operator.error-control.php", + "settings": { + "foreground": "#54B9FF" + } + }, + { + "scope": "keyword.operator.type.php", + "settings": { + "foreground": "#54B9FF" + } + }, + { + "scope": "punctuation.section.array.begin.php", + "settings": { + "foreground": "#EEF0F9" + } + }, + { + "scope": "punctuation.section.array.end.php", + "settings": { + "foreground": "#EEF0F9" + } + }, + { + "scope": "invalid.illegal.non-null-typehinted.php", + "settings": { + "foreground": "#F44747" + } + }, + { + "scope": "storage.type.php,meta.other.type.phpdoc.php,keyword.other.type.php,keyword.other.array.phpdoc.php", + "settings": { + "foreground": "#ACAFFF" + } + }, + { + "scope": "meta.function-call.php,meta.function-call.object.php,meta.function-call.static.php", + "settings": { + "foreground": "#00DAEF" + } + }, + { + "scope": "punctuation.definition.parameters.begin.bracket.round.php,punctuation.definition.parameters.end.bracket.round.php,punctuation.separator.delimiter.php,punctuation.section.scope.begin.php,punctuation.section.scope.end.php,punctuation.terminator.expression.php,punctuation.definition.arguments.begin.bracket.round.php,punctuation.definition.arguments.end.bracket.round.php,punctuation.definition.storage-type.begin.bracket.round.php,punctuation.definition.storage-type.end.bracket.round.php,punctuation.definition.array.begin.bracket.round.php,punctuation.definition.array.end.bracket.round.php,punctuation.definition.begin.bracket.round.php,punctuation.definition.end.bracket.round.php,punctuation.definition.begin.bracket.curly.php,punctuation.definition.end.bracket.curly.php,punctuation.definition.section.switch-block.end.bracket.curly.php,punctuation.definition.section.switch-block.start.bracket.curly.php,punctuation.definition.section.switch-block.begin.bracket.curly.php,punctuation.definition.section.switch-block.end.bracket.curly.php", + "settings": { + "foreground": "#EEF0F9" + } + }, + { + "scope": "support.constant.core.rust", + "settings": { + "foreground": "#FFD493" + } + }, + { + "scope": "support.constant.ext.php,support.constant.std.php,support.constant.core.php,support.constant.parser-token.php", + "settings": { + "foreground": "#FFD493" + } + }, + { + "scope": "entity.name.goto-label.php,support.other.php", + "settings": { + "foreground": "#00DAEF" + } + }, + { + "scope": "keyword.operator.logical.php,keyword.operator.bitwise.php,keyword.operator.arithmetic.php", + "settings": { + "foreground": "#EEF0F9" + } + }, + { + "scope": "keyword.operator.regexp.php", + "settings": { + "foreground": "#54B9FF" + } + }, + { + "scope": "keyword.operator.comparison.php", + "settings": { + "foreground": "#EEF0F9" + } + }, + { + "scope": "keyword.operator.heredoc.php,keyword.operator.nowdoc.php", + "settings": { + "foreground": "#54B9FF" + } + }, + { + "scope": "meta.function.decorator.python", + "settings": { + "foreground": "#00DAEF" + } + }, + { + "scope": "support.token.decorator.python,meta.function.decorator.identifier.python", + "settings": { + "foreground": "#EEF0F9" + } + }, + { + "scope": "function.parameter", + "settings": { + "foreground": "#EEF0F9" + } + }, + { + "scope": "function.brace", + "settings": { + "foreground": "#EEF0F9" + } + }, + { + "scope": "function.parameter.ruby, function.parameter.cs", + "settings": { + "foreground": "#EEF0F9" + } + }, + { + "scope": "constant.language.symbol.ruby", + "settings": { + "foreground": "#EEF0F9" + } + }, + { + "scope": "rgb-value", + "settings": { + "foreground": "#EEF0F9" + } + }, + { + "scope": "inline-color-decoration rgb-value", + "settings": { + "foreground": "#FFD493" + } + }, + { + "scope": "less rgb-value", + "settings": { + "foreground": "#FFD493" + } + }, + { + "scope": "selector.sass", + "settings": { + "foreground": "#4BF3C8" + } + }, + { + "scope": "support.type.primitive.ts,support.type.builtin.ts,support.type.primitive.tsx,support.type.builtin.tsx", + "settings": { + "foreground": "#ACAFFF" + } + }, + { + "scope": "block.scope.end,block.scope.begin", + "settings": { + "foreground": "#EEF0F9" + } + }, + { + "scope": "storage.type.cs", + "settings": { + "foreground": "#ACAFFF" + } + }, + { + "scope": "entity.name.variable.local.cs", + "settings": { + "foreground": "#4BF3C8" + } + }, + { + "scope": "token.info-token", + "settings": { + "foreground": "#00DAEF" + } + }, + { + "scope": "token.warn-token", + "settings": { + "foreground": "#FFD493" + } + }, + { + "scope": "token.error-token", + "settings": { + "foreground": "#F44747" + } + }, + { + "scope": "token.debug-token", + "settings": { + "foreground": "#54B9FF" + } + }, + { + "scope": [ + "punctuation.definition.template-expression.begin", + "punctuation.definition.template-expression.end", + "punctuation.section.embedded" + ], + "settings": { + "foreground": "#54B9FF" + } + }, + { + "scope": [ + "meta.template.expression" + ], + "settings": { + "foreground": "#EEF0F9" + } + }, + { + "scope": [ + "keyword.operator.module" + ], + "settings": { + "foreground": "#54B9FF" + } + }, + { + "scope": [ + "support.type.type.flowtype" + ], + "settings": { + "foreground": "#00DAEF" + } + }, + { + "scope": [ + "support.type.primitive" + ], + "settings": { + "foreground": "#ACAFFF" + } + }, + { + "scope": [ + "meta.property.object" + ], + "settings": { + "foreground": "#4BF3C8" + } + }, + { + "scope": [ + "variable.parameter.function.js" + ], + "settings": { + "foreground": "#4BF3C8" + } + }, + { + "scope": [ + "keyword.other.template.begin" + ], + "settings": { + "foreground": "#FFD493" + } + }, + { + "scope": [ + "keyword.other.template.end" + ], + "settings": { + "foreground": "#FFD493" + } + }, + { + "scope": [ + "keyword.other.substitution.begin" + ], + "settings": { + "foreground": "#FFD493" + } + }, + { + "scope": [ + "keyword.other.substitution.end" + ], + "settings": { + "foreground": "#FFD493" + } + }, + { + "scope": [ + "keyword.operator.assignment" + ], + "settings": { + "foreground": "#EEF0F9" + } + }, + { + "scope": [ + "keyword.operator.assignment.go" + ], + "settings": { + "foreground": "#ACAFFF" + } + }, + { + "scope": [ + "keyword.operator.arithmetic.go", + "keyword.operator.address.go" + ], + "settings": { + "foreground": "#54B9FF" + } + }, + { + "scope": [ + "entity.name.package.go" + ], + "settings": { + "foreground": "#ACAFFF" + } + }, + { + "scope": [ + "support.type.prelude.elm" + ], + "settings": { + "foreground": "#EEF0F9" + } + }, + { + "scope": [ + "support.constant.elm" + ], + "settings": { + "foreground": "#FFD493" + } + }, + { + "scope": [ + "punctuation.quasi.element" + ], + "settings": { + "foreground": "#54B9FF" + } + }, + { + "scope": [ + "constant.character.entity" + ], + "settings": { + "foreground": "#4BF3C8" + } + }, + { + "scope": [ + "entity.other.attribute-name.pseudo-element", + "entity.other.attribute-name.pseudo-class" + ], + "settings": { + "foreground": "#EEF0F9" + } + }, + { + "scope": [ + "entity.global.clojure" + ], + "settings": { + "foreground": "#ACAFFF" + } + }, + { + "scope": [ + "meta.symbol.clojure" + ], + "settings": { + "foreground": "#4BF3C8" + } + }, + { + "scope": [ + "constant.keyword.clojure" + ], + "settings": { + "foreground": "#EEF0F9" + } + }, + { + "scope": [ + "meta.arguments.coffee", + "variable.parameter.function.coffee" + ], + "settings": { + "foreground": "#4BF3C8" + } + }, + { + "scope": [ + "source.ini" + ], + "settings": { + "foreground": "#FFD493" + } + }, + { + "scope": [ + "meta.scope.prerequisites.makefile" + ], + "settings": { + "foreground": "#4BF3C8" + } + }, + { + "scope": [ + "source.makefile" + ], + "settings": { + "foreground": "#ACAFFF" + } + }, + { + "scope": [ + "storage.modifier.import.groovy" + ], + "settings": { + "foreground": "#ACAFFF" + } + }, + { + "scope": [ + "meta.method.groovy" + ], + "settings": { + "foreground": "#00DAEF" + } + }, + { + "scope": [ + "meta.definition.variable.name.groovy" + ], + "settings": { + "foreground": "#4BF3C8" + } + }, + { + "scope": [ + "meta.definition.class.inherited.classes.groovy" + ], + "settings": { + "foreground": "#FFD493" + } + }, + { + "scope": [ + "support.variable.semantic.hlsl" + ], + "settings": { + "foreground": "#ACAFFF" + } + }, + { + "scope": [ + "support.type.texture.hlsl", + "support.type.sampler.hlsl", + "support.type.object.hlsl", + "support.type.object.rw.hlsl", + "support.type.fx.hlsl", + "support.type.object.hlsl" + ], + "settings": { + "foreground": "#54B9FF" + } + }, + { + "scope": [ + "text.variable", + "text.bracketed" + ], + "settings": { + "foreground": "#4BF3C8" + } + }, + { + "scope": [ + "support.type.swift", + "support.type.vb.asp" + ], + "settings": { + "foreground": "#ACAFFF" + } + }, + { + "scope": [ + "entity.name.function.xi" + ], + "settings": { + "foreground": "#ACAFFF" + } + }, + { + "scope": [ + "entity.name.class.xi" + ], + "settings": { + "foreground": "#EEF0F9" + } + }, + { + "scope": [ + "constant.character.character-class.regexp.xi" + ], + "settings": { + "foreground": "#4BF3C8" + } + }, + { + "scope": [ + "constant.regexp.xi" + ], + "settings": { + "foreground": "#54B9FF" + } + }, + { + "scope": [ + "keyword.control.xi" + ], + "settings": { + "foreground": "#EEF0F9" + } + }, + { + "scope": [ + "invalid.xi" + ], + "settings": { + "foreground": "#EEF0F9" + } + }, + { + "scope": [ + "beginning.punctuation.definition.quote.markdown.xi" + ], + "settings": { + "foreground": "#FFD493" + } + }, + { + "scope": [ + "beginning.punctuation.definition.list.markdown.xi" + ], + "settings": { + "foreground": "#EEF0F98F" + } + }, + { + "scope": [ + "constant.character.xi" + ], + "settings": { + "foreground": "#00DAEF" + } + }, + { + "scope": [ + "accent.xi" + ], + "settings": { + "foreground": "#00DAEF" + } + }, + { + "scope": [ + "wikiword.xi" + ], + "settings": { + "foreground": "#FFD493" + } + }, + { + "scope": [ + "constant.other.color.rgb-value.xi" + ], + "settings": { + "foreground": "#FFFFFF" + } + }, + { + "scope": [ + "punctuation.definition.tag.xi" + ], + "settings": { + "foreground": "#545864" + } + }, + { + "scope": [ + "entity.name.label.cs", + "entity.name.scope-resolution.function.call", + "entity.name.scope-resolution.function.definition" + ], + "settings": { + "foreground": "#ACAFFF" + } + }, + { + "scope": [ + "entity.name.label.cs", + "markup.heading.setext.1.markdown", + "markup.heading.setext.2.markdown" + ], + "settings": { + "foreground": "#4BF3C8" + } + }, + { + "scope": [ + " meta.brace.square" + ], + "settings": { + "foreground": "#EEF0F9" + } + }, + { + "scope": "comment, punctuation.definition.comment", + "settings": { + "foreground": "#EEF0F98F", + "fontStyle": "italic" + } + }, + { + "scope": "markup.quote.markdown", + "settings": { + "foreground": "#EEF0F98F" + } + }, + { + "scope": "punctuation.definition.block.sequence.item.yaml", + "settings": { + "foreground": "#EEF0F9" + } + }, + { + "scope": [ + "constant.language.symbol.elixir" + ], + "settings": { + "foreground": "#EEF0F9" + } + }, + { + "scope": "entity.other.attribute-name.js,entity.other.attribute-name.ts,entity.other.attribute-name.jsx,entity.other.attribute-name.tsx,variable.parameter,variable.language.super", + "settings": { + "fontStyle": "italic" + } + }, + { + "scope": "comment.line.double-slash,comment.block.documentation", + "settings": { + "fontStyle": "italic" + } + }, + { + "scope": "keyword.control.import.python,keyword.control.flow.python", + "settings": { + "fontStyle": "italic" + } + }, + { + "scope": "markup.italic.markdown", + "settings": { + "fontStyle": "italic" + } + } + ] +} \ No newline at end of file diff --git a/www/package.json b/www/package.json new file mode 100644 index 00000000..e6863c0c --- /dev/null +++ b/www/package.json @@ -0,0 +1,20 @@ +{ + "name": "www", + "type": "module", + "version": "0.0.1", + "scripts": { + "dev": "astro dev", + "start": "astro dev", + "build": "astro check && astro build", + "preview": "astro preview", + "astro": "astro" + }, + "dependencies": { + "@astrojs/check": "^0.4.1", + "@astrojs/starlight": "^0.15.4", + "astro": "^4.2.0", + "sass": "^1.69.5", + "sharp": "^0.32.6", + "typescript": "^5.3.3" + } +} diff --git a/www/public/favicon.ico b/www/public/favicon.ico new file mode 100644 index 00000000..fba93592 Binary files /dev/null and b/www/public/favicon.ico differ diff --git a/www/public/favicon.svg b/www/public/favicon.svg new file mode 100644 index 00000000..51eef27e --- /dev/null +++ b/www/public/favicon.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/www/src/assets/favicon.svg b/www/src/assets/favicon.svg new file mode 100644 index 00000000..51eef27e --- /dev/null +++ b/www/src/assets/favicon.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/www/src/assets/houston-vscode.jsonc b/www/src/assets/houston-vscode.jsonc new file mode 100644 index 00000000..37e5ea46 --- /dev/null +++ b/www/src/assets/houston-vscode.jsonc @@ -0,0 +1,2369 @@ +{ + "$schema": "vscode://schemas/color-theme", + "type": "dark", + "colors": { + "activityBar.activeBackground": "#343841", + "activityBar.background": "#17191e", + "activityBar.border": "#343841", + "activityBar.foreground": "#eef0f9", + "activityBar.inactiveForeground": "#858b98", + "activityBarBadge.background": "#4bf3c8", + "activityBarBadge.foreground": "#000000", + "badge.background": "#bfc1c9", + "badge.foreground": "#17191e", + "breadcrumb.activeSelectionForeground": "#eef0f9", + "breadcrumb.background": "#17191e", + "breadcrumb.focusForeground": "#eef0f9", + "breadcrumb.foreground": "#858b98", + "button.background": "#4bf3c8", + "button.foreground": "#17191e", + "button.hoverBackground": "#31c19c", + "button.secondaryBackground": "#545864", + "button.secondaryForeground": "#eef0f9", + "button.secondaryHoverBackground": "#858b98", + "checkbox.background": "#23262d", + "checkbox.border": "#00000000", + "checkbox.foreground": "#eef0f9", + "debugExceptionWidget.background": "#23262d", + "debugExceptionWidget.border": "#8996d5", + "debugToolBar.background": "#000000", + "debugToolBar.border": "#ffffff00", + "diffEditor.border": "#ffffff00", + "diffEditor.insertedTextBackground": "#4bf3c824", + "diffEditor.removedTextBackground": "#dc365724", + "dropdown.background": "#23262d", + "dropdown.border": "#00000000", + "dropdown.foreground": "#eef0f9", + "editor.background": "#17191e", + "editor.findMatchBackground": "#515c6a", + "editor.findMatchBorder": "#74879f", + "editor.findMatchHighlightBackground": "#ea5c0055", + "editor.findMatchHighlightBorder": "#ffffff00", + "editor.findRangeHighlightBackground": "#23262d", + "editor.findRangeHighlightBorder": "#b2434300", + "editor.foldBackground": "#ad5dca26", + "editor.foreground": "#eef0f9", + "editor.hoverHighlightBackground": "#5495d740", + "editor.inactiveSelectionBackground": "#2a2d34", + "editor.lineHighlightBackground": "#23262d", + "editor.lineHighlightBorder": "#ffffff00", + "editor.rangeHighlightBackground": "#ffffff0b", + "editor.rangeHighlightBorder": "#ffffff00", + "editor.selectionBackground": "#ad5dca44", + "editor.selectionHighlightBackground": "#add6ff34", + "editor.selectionHighlightBorder": "#495f77", + "editor.wordHighlightBackground": "#494949b8", + "editor.wordHighlightStrongBackground": "#004972b8", + "editorBracketMatch.background": "#545864", + "editorBracketMatch.border": "#ffffff00", + "editorCodeLens.foreground": "#bfc1c9", + "editorCursor.background": "#000000", + "editorCursor.foreground": "#aeafad", + "editorError.background": "#ffffff00", + "editorError.border": "#ffffff00", + "editorError.foreground": "#f4587e", + "editorGroup.border": "#343841", + "editorGroup.emptyBackground": "#17191e", + "editorGroupHeader.border": "#ffffff00", + "editorGroupHeader.tabsBackground": "#23262d", + "editorGroupHeader.tabsBorder": "#ffffff00", + "editorGutter.addedBackground": "#4bf3c8", + "editorGutter.background": "#17191e", + "editorGutter.commentRangeForeground": "#545864", + "editorGutter.deletedBackground": "#f06788", + "editorGutter.foldingControlForeground": "#545864", + "editorGutter.modifiedBackground": "#54b9ff", + "editorHoverWidget.background": "#252526", + "editorHoverWidget.border": "#454545", + "editorHoverWidget.foreground": "#cccccc", + "editorIndentGuide.activeBackground": "#858b98", + "editorIndentGuide.background": "#343841", + "editorInfo.background": "#4490bf00", + "editorInfo.border": "#4490bf00", + "editorInfo.foreground": "#54b9ff", + "editorLineNumber.activeForeground": "#858b98", + "editorLineNumber.foreground": "#545864", + "editorLink.activeForeground": "#54b9ff", + "editorMarkerNavigation.background": "#23262d", + "editorMarkerNavigationError.background": "#dc3657", + "editorMarkerNavigationInfo.background": "#54b9ff", + "editorMarkerNavigationWarning.background": "#ffd493", + "editorOverviewRuler.background": "#ffffff00", + "editorOverviewRuler.border": "#ffffff00", + "editorRuler.foreground": "#545864", + "editorSuggestWidget.background": "#252526", + "editorSuggestWidget.border": "#454545", + "editorSuggestWidget.foreground": "#d4d4d4", + "editorSuggestWidget.highlightForeground": "#0097fb", + "editorSuggestWidget.selectedBackground": "#062f4a", + "editorWarning.background": "#a9904000", + "editorWarning.border": "#ffffff00", + "editorWarning.foreground": "#fbc23b", + "editorWhitespace.foreground": "#cc75f450", + "editorWidget.background": "#343841", + "editorWidget.foreground": "#ffffff", + "editorWidget.resizeBorder": "#cc75f4", + "focusBorder": "#00daef", + "foreground": "#cccccc", + "gitDecoration.addedResourceForeground": "#4bf3c8", + "gitDecoration.conflictingResourceForeground": "#00daef", + "gitDecoration.deletedResourceForeground": "#f4587e", + "gitDecoration.ignoredResourceForeground": "#858b98", + "gitDecoration.modifiedResourceForeground": "#ffd493", + "gitDecoration.stageDeletedResourceForeground": "#c74e39", + "gitDecoration.stageModifiedResourceForeground": "#ffd493", + "gitDecoration.submoduleResourceForeground": "#54b9ff", + "gitDecoration.untrackedResourceForeground": "#4bf3c8", + "icon.foreground": "#cccccc", + "input.background": "#23262d", + "input.border": "#bfc1c9", + "input.foreground": "#eef0f9", + "input.placeholderForeground": "#858b98", + "inputOption.activeBackground": "#54b9ff", + "inputOption.activeBorder": "#007acc00", + "inputOption.activeForeground": "#17191e", + "list.activeSelectionBackground": "#2d4860", + "list.activeSelectionForeground": "#ffffff", + "list.dropBackground": "#17191e", + "list.focusBackground": "#54b9ff", + "list.focusForeground": "#ffffff", + "list.highlightForeground": "#ffffff", + "list.hoverBackground": "#343841", + "list.hoverForeground": "#eef0f9", + "list.inactiveSelectionBackground": "#17191e", + "list.inactiveSelectionForeground": "#eef0f9", + "listFilterWidget.background": "#2d4860", + "listFilterWidget.noMatchesOutline": "#dc3657", + "listFilterWidget.outline": "#54b9ff", + "menu.background": "#252526", + "menu.border": "#00000085", + "menu.foreground": "#cccccc", + "menu.selectionBackground": "#094771", + "menu.selectionBorder": "#00000000", + "menu.selectionForeground": "#4bf3c8", + "menu.separatorBackground": "#bbbbbb", + "menubar.selectionBackground": "#ffffff1a", + "menubar.selectionForeground": "#cccccc", + "merge.commonContentBackground": "#282828", + "merge.commonHeaderBackground": "#383838", + "merge.currentContentBackground": "#27403b", + "merge.currentHeaderBackground": "#367366", + "merge.incomingContentBackground": "#28384b", + "merge.incomingHeaderBackground": "#395f8f", + "minimap.background": "#17191e", + "minimap.errorHighlight": "#dc3657", + "minimap.findMatchHighlight": "#515c6a", + "minimap.selectionHighlight": "#3757b942", + "minimap.warningHighlight": "#fbc23b", + "minimapGutter.addedBackground": "#4bf3c8", + "minimapGutter.deletedBackground": "#f06788", + "minimapGutter.modifiedBackground": "#54b9ff", + "notificationCenter.border": "#ffffff00", + "notificationCenterHeader.background": "#343841", + "notificationCenterHeader.foreground": "#17191e", + "notificationToast.border": "#ffffff00", + "notifications.background": "#343841", + "notifications.border": "#bfc1c9", + "notifications.foreground": "#ffffff", + "notificationsErrorIcon.foreground": "#f4587e", + "notificationsInfoIcon.foreground": "#54b9ff", + "notificationsWarningIcon.foreground": "#ff8551", + "panel.background": "#23262d", + "panel.border": "#17191e", + "panelSection.border": "#17191e", + "panelTitle.activeBorder": "#e7e7e7", + "panelTitle.activeForeground": "#eef0f9", + "panelTitle.inactiveForeground": "#bfc1c9", + "peekView.border": "#007acc", + "peekViewEditor.background": "#001f33", + "peekViewEditor.matchHighlightBackground": "#ff8f0099", + "peekViewEditor.matchHighlightBorder": "#ee931e", + "peekViewEditorGutter.background": "#001f33", + "peekViewResult.background": "#252526", + "peekViewResult.fileForeground": "#ffffff", + "peekViewResult.lineForeground": "#bbbbbb", + "peekViewResult.matchHighlightBackground": "#ff0000", + "peekViewResult.selectionBackground": "#3399ff33", + "peekViewResult.selectionForeground": "#ffffff", + "peekViewTitle.background": "#1e1e1e", + "peekViewTitleDescription.foreground": "#ccccccb3", + "peekViewTitleLabel.foreground": "#ffffff", + "pickerGroup.border": "#ffffff00", + "pickerGroup.foreground": "#eef0f9", + "progressBar.background": "#4bf3c8", + "scrollbar.shadow": "#000000", + "scrollbarSlider.activeBackground": "#54b9ff66", + "scrollbarSlider.background": "#54586466", + "scrollbarSlider.hoverBackground": "#545864b3", + "selection.background": "#00daef56", + "settings.focusedRowBackground": "#ffffff07", + "settings.headerForeground": "#cccccc", + "sideBar.background": "#23262d", + "sideBar.border": "#17191e", + "sideBar.dropBackground": "#17191e", + "sideBar.foreground": "#bfc1c9", + "sideBarSectionHeader.background": "#343841", + "sideBarSectionHeader.border": "#17191e", + "sideBarSectionHeader.foreground": "#eef0f9", + "sideBarTitle.foreground": "#eef0f9", + "statusBar.background": "#17548b", + "statusBar.debuggingBackground": "#cc75f4", + "statusBar.debuggingForeground": "#eef0f9", + "statusBar.foreground": "#eef0f9", + "statusBar.noFolderBackground": "#6c3c7d", + "statusBar.noFolderForeground": "#eef0f9", + "statusBarItem.activeBackground": "#ffffff25", + "statusBarItem.hoverBackground": "#ffffff1f", + "statusBarItem.remoteBackground": "#297763", + "statusBarItem.remoteForeground": "#eef0f9", + "tab.activeBackground": "#17191e", + "tab.activeBorder": "#ffffff00", + "tab.activeBorderTop": "#eef0f9", + "tab.activeForeground": "#eef0f9", + "tab.border": "#17191e", + "tab.hoverBackground": "#343841", + "tab.hoverForeground": "#eef0f9", + "tab.inactiveBackground": "#23262d", + "tab.inactiveForeground": "#858b98", + "terminal.ansiBlack": "#17191e", + "terminal.ansiBlue": "#2b7eca", + "terminal.ansiBrightBlack": "#545864", + "terminal.ansiBrightBlue": "#54b9ff", + "terminal.ansiBrightCyan": "#00daef", + "terminal.ansiBrightGreen": "#4bf3c8", + "terminal.ansiBrightMagenta": "#cc75f4", + "terminal.ansiBrightRed": "#f4587e", + "terminal.ansiBrightWhite": "#fafafa", + "terminal.ansiBrightYellow": "#ffd493", + "terminal.ansiCyan": "#24c0cf", + "terminal.ansiGreen": "#23d18b", + "terminal.ansiMagenta": "#ad5dca", + "terminal.ansiRed": "#dc3657", + "terminal.ansiWhite": "#eef0f9", + "terminal.ansiYellow": "#ffc368", + "terminal.border": "#80808059", + "terminal.foreground": "#cccccc", + "terminal.selectionBackground": "#ffffff40", + "terminalCursor.background": "#0087ff", + "terminalCursor.foreground": "#ffffff", + "textLink.foreground": "#54b9ff", + "titleBar.activeBackground": "#17191e", + "titleBar.activeForeground": "#cccccc", + "titleBar.border": "#00000000", + "titleBar.inactiveBackground": "#3c3c3c99", + "titleBar.inactiveForeground": "#cccccc99", + "tree.indentGuidesStroke": "#545864", + "walkThrough.embeddedEditorBackground": "#00000050", + "widget.shadow": "#ffffff00", + //"actionBar.toggledBackground": "#54b9ff", + //"activityBar.activeBorder": "#eef0f9", + //"activityBar.dropBorder": "#eef0f9", + //"banner.background": "#2d4860", + //"banner.foreground": "#ffffff", + //"banner.iconForeground": "#54b9ff", + //"breadcrumbPicker.background": "#343841", + //"button.separator": "#17191e66", + //"charts.blue": "#54b9ff", + //"charts.foreground": "#cccccc", + //"charts.green": "#89d185", + //"charts.lines": "#cccccc80", + //"charts.orange": "#515c6a", + //"charts.purple": "#b180d7", + //"charts.red": "#f4587e", + //"charts.yellow": "#fbc23b", + //"chat.avatarBackground": "#1f1f1f", + //"chat.avatarForeground": "#cccccc", + //"chat.requestBorder": "#ffffff1a", + //"chat.slashCommandBackground": "#34414b", + //"chat.slashCommandForeground": "#40a6ff", + //"checkbox.selectBackground": "#343841", + //"checkbox.selectBorder": "#cccccc", + //"commandCenter.activeBackground": "#ffffff14", + //"commandCenter.activeBorder": "#cccccc4d", + //"commandCenter.activeForeground": "#cccccc", + //"commandCenter.background": "#ffffff0d", + //"commandCenter.border": "#cccccc33", + //"commandCenter.debuggingBackground": "#cc75f442", + //"commandCenter.foreground": "#cccccc", + //"commandCenter.inactiveBorder": "#cccccc26", + //"commandCenter.inactiveForeground": "#cccccc99", + //"commentsView.resolvedIcon": "#cccccc80", + //"commentsView.unresolvedIcon": "#00daef", + //"consoleninja.logTime": "#6a9955", + //"debugConsole.errorForeground": "#f48771", + //"debugConsole.infoForeground": "#54b9ff", + //"debugConsole.sourceForeground": "#cccccc", + //"debugConsole.warningForeground": "#fbc23b", + //"debugConsoleInputIcon.foreground": "#cccccc", + //"debugIcon.breakpointCurrentStackframeForeground": "#ffcc00", + //"debugIcon.breakpointDisabledForeground": "#848484", + //"debugIcon.breakpointForeground": "#e51400", + //"debugIcon.breakpointStackframeForeground": "#89d185", + //"debugIcon.breakpointUnverifiedForeground": "#848484", + //"debugIcon.continueForeground": "#75beff", + //"debugIcon.disconnectForeground": "#f48771", + //"debugIcon.pauseForeground": "#75beff", + //"debugIcon.restartForeground": "#89d185", + //"debugIcon.startForeground": "#89d185", + //"debugIcon.stepBackForeground": "#75beff", + //"debugIcon.stepIntoForeground": "#75beff", + //"debugIcon.stepOutForeground": "#75beff", + //"debugIcon.stepOverForeground": "#75beff", + //"debugIcon.stopForeground": "#f48771", + //"debugTokenExpression.boolean": "#4e94ce", + //"debugTokenExpression.error": "#f48771", + //"debugTokenExpression.name": "#c586c0", + //"debugTokenExpression.number": "#b5cea8", + //"debugTokenExpression.string": "#ce9178", + //"debugTokenExpression.value": "#cccccc99", + //"debugView.exceptionLabelBackground": "#6c2022", + //"debugView.exceptionLabelForeground": "#cccccc", + //"debugView.stateLabelBackground": "#88888844", + //"debugView.stateLabelForeground": "#cccccc", + //"debugView.valueChangedHighlight": "#569cd6", + //"descriptionForeground": "#ccccccb3", + //"diffEditor.diagonalFill": "#cccccc33", + //"diffEditor.insertedLineBackground": "#9bb95533", + //"diffEditor.move.border": "#8b8b8b9c", + //"diffEditor.moveActive.border": "#ffa500", + //"diffEditor.removedLineBackground": "#ff000033", + //"diffEditor.unchangedCodeBackground": "#74747429", + //"diffEditor.unchangedRegionBackground": "#23262d", + //"diffEditor.unchangedRegionForeground": "#cccccc", + //"diffEditor.unchangedRegionShadow": "#000000", + //"disabledForeground": "#cccccc80", + //"editor.focusedStackFrameHighlightBackground": "#7abd7a4d", + //"editor.inlineValuesBackground": "#ffc80033", + //"editor.inlineValuesForeground": "#ffffff80", + //"editor.linkedEditingBackground": "#ff00004d", + //"editor.snippetFinalTabstopHighlightBorder": "#525252", + //"editor.snippetTabstopHighlightBackground": "#7c7c7c4d", + //"editor.stackFrameHighlightBackground": "#ffff0033", + //"editor.symbolHighlightBackground": "#ea5c0055", + //"editor.wordHighlightTextBackground": "#494949b8", + //"editorActiveLineNumber.foreground": "#c6c6c6", + //"editorBracketHighlight.foreground1": "#ffd700", + //"editorBracketHighlight.foreground2": "#da70d6", + //"editorBracketHighlight.foreground3": "#179fff", + //"editorBracketHighlight.foreground4": "#00000000", + //"editorBracketHighlight.foreground5": "#00000000", + //"editorBracketHighlight.foreground6": "#00000000", + //"editorBracketHighlight.unexpectedBracket.foreground": "#ff1212cc", + //"editorBracketPairGuide.activeBackground1": "#00000000", + //"editorBracketPairGuide.activeBackground2": "#00000000", + //"editorBracketPairGuide.activeBackground3": "#00000000", + //"editorBracketPairGuide.activeBackground4": "#00000000", + //"editorBracketPairGuide.activeBackground5": "#00000000", + //"editorBracketPairGuide.activeBackground6": "#00000000", + //"editorBracketPairGuide.background1": "#00000000", + //"editorBracketPairGuide.background2": "#00000000", + //"editorBracketPairGuide.background3": "#00000000", + //"editorBracketPairGuide.background4": "#00000000", + //"editorBracketPairGuide.background5": "#00000000", + //"editorBracketPairGuide.background6": "#00000000", + //"editorCommentsWidget.rangeActiveBackground": "#00daef1a", + //"editorCommentsWidget.rangeBackground": "#00daef1a", + //"editorCommentsWidget.replyInputBackground": "#1e1e1e", + //"editorCommentsWidget.resolvedBorder": "#cccccc80", + //"editorCommentsWidget.unresolvedBorder": "#00daef", + //"editorGhostText.foreground": "#ffffff56", + //"editorGroup.dropBackground": "#53595d80", + //"editorGroup.dropIntoPromptBackground": "#343841", + //"editorGroup.dropIntoPromptForeground": "#ffffff", + //"editorGroupHeader.noTabsBackground": "#17191e", + //"editorGutter.commentGlyphForeground": "#eef0f9", + //"editorGutter.commentUnresolvedGlyphForeground": "#eef0f9", + //"editorHint.foreground": "#eeeeeeb3", + //"editorHoverWidget.highlightForeground": "#ffffff", + //"editorHoverWidget.statusBarBackground": "#2c2c2d", + //"editorIndentGuide.activeBackground1": "#858b98", + //"editorIndentGuide.activeBackground2": "#00000000", + //"editorIndentGuide.activeBackground3": "#00000000", + //"editorIndentGuide.activeBackground4": "#00000000", + //"editorIndentGuide.activeBackground5": "#00000000", + //"editorIndentGuide.activeBackground6": "#00000000", + //"editorIndentGuide.background1": "#343841", + //"editorIndentGuide.background2": "#00000000", + //"editorIndentGuide.background3": "#00000000", + //"editorIndentGuide.background4": "#00000000", + //"editorIndentGuide.background5": "#00000000", + //"editorIndentGuide.background6": "#00000000", + //"editorInlayHint.background": "#bfc1c91a", + //"editorInlayHint.foreground": "#969696", + //"editorInlayHint.parameterBackground": "#bfc1c91a", + //"editorInlayHint.parameterForeground": "#969696", + //"editorInlayHint.typeBackground": "#bfc1c91a", + //"editorInlayHint.typeForeground": "#969696", + //"editorLightBulb.foreground": "#ffcc00", + //"editorLightBulbAi.foreground": "#7a7a7a", + //"editorLightBulbAutoFix.foreground": "#75beff", + //"editorMarkerNavigationError.headerBackground": "#dc36571a", + //"editorMarkerNavigationInfo.headerBackground": "#54b9ff1a", + //"editorMarkerNavigationWarning.headerBackground": "#ffd4931a", + //"editorOverviewRuler.addedForeground": "#4bf3c899", + //"editorOverviewRuler.bracketMatchForeground": "#a0a0a0", + //"editorOverviewRuler.commentForeground": "#545864", + //"editorOverviewRuler.commentUnresolvedForeground": "#545864", + //"editorOverviewRuler.commonContentForeground": "#383838", + //"editorOverviewRuler.currentContentForeground": "#367366", + //"editorOverviewRuler.deletedForeground": "#f0678899", + //"editorOverviewRuler.errorForeground": "#ff1212b3", + //"editorOverviewRuler.findMatchForeground": "#d186167e", + //"editorOverviewRuler.incomingContentForeground": "#395f8f", + //"editorOverviewRuler.infoForeground": "#54b9ff", + //"editorOverviewRuler.modifiedForeground": "#54b9ff99", + //"editorOverviewRuler.rangeHighlightForeground": "#007acc99", + //"editorOverviewRuler.selectionHighlightForeground": "#a0a0a0cc", + //"editorOverviewRuler.warningForeground": "#fbc23b", + //"editorOverviewRuler.wordHighlightForeground": "#a0a0a0cc", + //"editorOverviewRuler.wordHighlightStrongForeground": "#c0a0c0cc", + //"editorOverviewRuler.wordHighlightTextForeground": "#a0a0a0cc", + //"editorPane.background": "#17191e", + //"editorStickyScroll.background": "#17191e", + //"editorStickyScrollHover.background": "#2a2d2e", + //"editorSuggestWidget.focusHighlightForeground": "#ffffff", + //"editorSuggestWidget.selectedForeground": "#ffffff", + //"editorSuggestWidgetStatus.foreground": "#d4d4d480", + //"editorUnicodeHighlight.background": "#bd9b0326", + //"editorUnicodeHighlight.border": "#bd9b03", + //"editorUnnecessaryCode.opacity": "#000000aa", + //"editorWidget.border": "#454545", + //"errorForeground": "#f48771", + //"extensionBadge.remoteBackground": "#4bf3c8", + //"extensionBadge.remoteForeground": "#000000", + //"extensionButton.background": "#4bf3c8", + //"extensionButton.foreground": "#17191e", + //"extensionButton.hoverBackground": "#31c19c", + //"extensionButton.prominentBackground": "#4bf3c8", + //"extensionButton.prominentForeground": "#17191e", + //"extensionButton.prominentHoverBackground": "#31c19c", + //"extensionButton.separator": "#17191e66", + //"extensionIcon.preReleaseForeground": "#1d9271", + //"extensionIcon.sponsorForeground": "#d758b3", + //"extensionIcon.starForeground": "#ff8e00", + //"extensionIcon.verifiedForeground": "#54b9ff", + //"gitDecoration.renamedResourceForeground": "#73c991", + //"inlineChat.background": "#343841", + //"inlineChat.border": "#454545", + //"inlineChat.regionHighlight": "#5495d740", + //"inlineChat.shadow": "#ffffff00", + //"inlineChatDiff.inserted": "#4bf3c812", + //"inlineChatDiff.removed": "#dc365712", + //"inlineChatInput.background": "#23262d", + //"inlineChatInput.border": "#454545", + //"inlineChatInput.focusBorder": "#00daef", + //"inlineChatInput.placeholderForeground": "#858b98", + //"inputOption.hoverBackground": "#5a5d5e80", + //"inputValidation.errorBackground": "#5a1d1d", + //"inputValidation.errorBorder": "#be1100", + //"inputValidation.infoBackground": "#063b49", + //"inputValidation.infoBorder": "#007acc", + //"inputValidation.warningBackground": "#352a05", + //"inputValidation.warningBorder": "#b89500", + //"interactive.activeCodeBorder": "#007acc", + //"interactive.inactiveCodeBorder": "#17191e", + //"keybindingLabel.background": "#8080802b", + //"keybindingLabel.border": "#33333399", + //"keybindingLabel.bottomBorder": "#44444499", + //"keybindingLabel.foreground": "#cccccc", + //"keybindingTable.headerBackground": "#cccccc0a", + //"keybindingTable.rowsBackground": "#cccccc0a", + //"list.deemphasizedForeground": "#8c8c8c", + //"list.errorForeground": "#f88070", + //"list.filterMatchBackground": "#ea5c0055", + //"list.filterMatchBorder": "#ffffff00", + //"list.focusHighlightForeground": "#ffffff", + //"list.focusOutline": "#00daef", + //"list.invalidItemForeground": "#b89500", + //"list.warningForeground": "#cca700", + //"listFilterWidget.shadow": "#ffffff00", + //"markdown.extension.editor.codeSpan.background": "#00000000", + //"markdown.extension.editor.codeSpan.border": "#ad5dca44", + //"markdown.extension.editor.formattingMark.foreground": "#cc75f450", + //"markdown.extension.editor.trailingSpace.background": "#cccccc33", + //"mergeEditor.change.background": "#9bb95533", + //"mergeEditor.change.word.background": "#9ccc2c33", + //"mergeEditor.changeBase.background": "#4b1818", + //"mergeEditor.changeBase.word.background": "#6f1313", + //"mergeEditor.conflict.handled.minimapOverViewRuler": "#adaca8ee", + //"mergeEditor.conflict.handledFocused.border": "#c1c1c1cc", + //"mergeEditor.conflict.handledUnfocused.border": "#86868649", + //"mergeEditor.conflict.input1.background": "#36736666", + //"mergeEditor.conflict.input2.background": "#395f8f66", + //"mergeEditor.conflict.unhandled.minimapOverViewRuler": "#fcba03", + //"mergeEditor.conflict.unhandledFocused.border": "#ffa600", + //"mergeEditor.conflict.unhandledUnfocused.border": "#ffa6007a", + //"mergeEditor.conflictingLines.background": "#ffea0047", + //"minimap.foregroundOpacity": "#000000", + //"minimap.infoHighlight": "#54b9ff", + //"minimap.selectionOccurrenceHighlight": "#676767", + //"minimapSlider.activeBackground": "#54b9ff33", + //"minimapSlider.background": "#54586433", + //"minimapSlider.hoverBackground": "#5458645a", + //"multiDiffEditor.headerBackground": "#808080", + //"notebook.cellBorderColor": "#17191e", + //"notebook.cellEditorBackground": "#23262d", + //"notebook.cellInsertionIndicator": "#00daef", + //"notebook.cellStatusBarItemHoverBackground": "#ffffff26", + //"notebook.cellToolbarSeparator": "#80808059", + //"notebook.editorBackground": "#17191e", + //"notebook.focusedCellBorder": "#00daef", + //"notebook.focusedEditorBorder": "#00daef", + //"notebook.inactiveFocusedCellBorder": "#17191e", + //"notebook.selectedCellBackground": "#17191e", + //"notebook.selectedCellBorder": "#17191e", + //"notebook.symbolHighlightBackground": "#ffffff0b", + //"notebookEditorOverviewRuler.runningCellForeground": "#89d185", + //"notebookScrollbarSlider.activeBackground": "#54b9ff66", + //"notebookScrollbarSlider.background": "#54586466", + //"notebookScrollbarSlider.hoverBackground": "#545864b3", + //"notebookStatusErrorIcon.foreground": "#f48771", + //"notebookStatusRunningIcon.foreground": "#cccccc", + //"notebookStatusSuccessIcon.foreground": "#89d185", + //"notificationLink.foreground": "#54b9ff", + //"panel.dropBorder": "#eef0f9", + //"panelInput.border": "#bfc1c9", + //"panelSection.dropBackground": "#53595d80", + //"panelSectionHeader.background": "#80808033", + //"peekViewEditorStickyScroll.background": "#001f33", + //"ports.iconRunningProcessForeground": "#297763", + //"problemsErrorIcon.foreground": "#f4587e", + //"problemsInfoIcon.foreground": "#54b9ff", + //"problemsWarningIcon.foreground": "#fbc23b", + //"profileBadge.background": "#4d4d4d", + //"profileBadge.foreground": "#ffffff", + //"quickInput.background": "#343841", + //"quickInput.foreground": "#ffffff", + //"quickInputList.focusBackground": "#2d4860", + //"quickInputList.focusForeground": "#ffffff", + //"quickInputTitle.background": "#ffffff1b", + //"remoteHub.decorations.addedForegroundColor": "#81b88b", + //"remoteHub.decorations.conflictForegroundColor": "#e4676b", + //"remoteHub.decorations.deletedForegroundColor": "#c74e39", + //"remoteHub.decorations.ignoredResourceForeground": "#8c8c8c", + //"remoteHub.decorations.incomingAddedForegroundColor": "#81b88b", + //"remoteHub.decorations.incomingDeletedForegroundColor": "#c74e39", + //"remoteHub.decorations.incomingModifiedForegroundColor": "#e2c08d", + //"remoteHub.decorations.incomingRenamedForegroundColor": "#73c991", + //"remoteHub.decorations.modifiedForegroundColor": "#e2c08d", + //"remoteHub.decorations.possibleConflictForegroundColor": "#cca700", + //"remoteHub.decorations.submoduleForegroundColor": "#8db9e2", + //"remoteHub.decorations.workspaceRepositoriesView.hasUncommittedChangesForegroundColor": "#e2c08d", + //"sash.hoverBorder": "#00daef", + //"scm.historyItemAdditionsForeground": "#4bf3c8", + //"scm.historyItemDeletionsForeground": "#f4587e", + //"scm.historyItemSelectedStatisticsBorder": "#ffffff33", + //"scm.historyItemStatisticsBorder": "#cccccc33", + //"search.resultsInfoForeground": "#cccccca6", + //"searchEditor.findMatchBackground": "#ea5c0038", + //"searchEditor.findMatchBorder": "#ffffff00", + //"searchEditor.textInputBorder": "#bfc1c9", + //"settings.checkboxBackground": "#23262d", + //"settings.checkboxBorder": "#00000000", + //"settings.checkboxForeground": "#eef0f9", + //"settings.dropdownBackground": "#23262d", + //"settings.dropdownBorder": "#00000000", + //"settings.dropdownForeground": "#eef0f9", + //"settings.dropdownListBorder": "#454545", + //"settings.focusedRowBorder": "#00daef", + //"settings.headerBorder": "#17191e", + //"settings.modifiedItemIndicator": "#0c7d9d", + //"settings.numberInputBackground": "#23262d", + //"settings.numberInputBorder": "#bfc1c9", + //"settings.numberInputForeground": "#eef0f9", + //"settings.rowHoverBackground": "#3438414d", + //"settings.sashBorder": "#17191e", + //"settings.settingsHeaderHoverForeground": "#ccccccb3", + //"settings.textInputBackground": "#23262d", + //"settings.textInputBorder": "#bfc1c9", + //"settings.textInputForeground": "#eef0f9", + //"sideBySideEditor.horizontalBorder": "#343841", + //"sideBySideEditor.verticalBorder": "#343841", + //"simpleFindWidget.sashBorder": "#454545", + //"statusBar.focusBorder": "#eef0f9", + //"statusBarItem.compactHoverBackground": "#ffffff33", + //"statusBarItem.errorBackground": "#c72e0f", + //"statusBarItem.errorForeground": "#ffffff", + //"statusBarItem.errorHoverBackground": "#ffffff1f", + //"statusBarItem.errorHoverForeground": "#eef0f9", + //"statusBarItem.focusBorder": "#eef0f9", + //"statusBarItem.hoverForeground": "#eef0f9", + //"statusBarItem.offlineBackground": "#6c1717", + //"statusBarItem.offlineForeground": "#eef0f9", + //"statusBarItem.offlineHoverBackground": "#ffffff1f", + //"statusBarItem.offlineHoverForeground": "#eef0f9", + //"statusBarItem.prominentBackground": "#00000080", + //"statusBarItem.prominentForeground": "#eef0f9", + //"statusBarItem.prominentHoverBackground": "#0000004d", + //"statusBarItem.prominentHoverForeground": "#eef0f9", + //"statusBarItem.remoteHoverBackground": "#ffffff1f", + //"statusBarItem.remoteHoverForeground": "#eef0f9", + //"statusBarItem.warningBackground": "#b68104", + //"statusBarItem.warningForeground": "#ffffff", + //"statusBarItem.warningHoverBackground": "#ffffff1f", + //"statusBarItem.warningHoverForeground": "#eef0f9", + //"symbolIcon.arrayForeground": "#cccccc", + //"symbolIcon.booleanForeground": "#cccccc", + //"symbolIcon.classForeground": "#ee9d28", + //"symbolIcon.colorForeground": "#cccccc", + //"symbolIcon.constantForeground": "#cccccc", + //"symbolIcon.constructorForeground": "#b180d7", + //"symbolIcon.enumeratorForeground": "#ee9d28", + //"symbolIcon.enumeratorMemberForeground": "#75beff", + //"symbolIcon.eventForeground": "#ee9d28", + //"symbolIcon.fieldForeground": "#75beff", + //"symbolIcon.fileForeground": "#cccccc", + //"symbolIcon.folderForeground": "#cccccc", + //"symbolIcon.functionForeground": "#b180d7", + //"symbolIcon.interfaceForeground": "#75beff", + //"symbolIcon.keyForeground": "#cccccc", + //"symbolIcon.keywordForeground": "#cccccc", + //"symbolIcon.methodForeground": "#b180d7", + //"symbolIcon.moduleForeground": "#cccccc", + //"symbolIcon.namespaceForeground": "#cccccc", + //"symbolIcon.nullForeground": "#cccccc", + //"symbolIcon.numberForeground": "#cccccc", + //"symbolIcon.objectForeground": "#cccccc", + //"symbolIcon.operatorForeground": "#cccccc", + //"symbolIcon.packageForeground": "#cccccc", + //"symbolIcon.propertyForeground": "#cccccc", + //"symbolIcon.referenceForeground": "#cccccc", + //"symbolIcon.snippetForeground": "#cccccc", + //"symbolIcon.stringForeground": "#cccccc", + //"symbolIcon.structForeground": "#cccccc", + //"symbolIcon.textForeground": "#cccccc", + //"symbolIcon.typeParameterForeground": "#cccccc", + //"symbolIcon.unitForeground": "#cccccc", + //"symbolIcon.variableForeground": "#75beff", + //"tab.activeModifiedBorder": "#3399cc", + //"tab.inactiveModifiedBorder": "#3399cc80", + //"tab.lastPinnedBorder": "#545864", + //"tab.unfocusedActiveBackground": "#17191e", + //"tab.unfocusedActiveBorder": "#ffffff00", + //"tab.unfocusedActiveBorderTop": "#eef0f980", + //"tab.unfocusedActiveForeground": "#eef0f980", + //"tab.unfocusedActiveModifiedBorder": "#3399cc80", + //"tab.unfocusedHoverBackground": "#34384180", + //"tab.unfocusedHoverForeground": "#eef0f980", + //"tab.unfocusedInactiveBackground": "#23262d", + //"tab.unfocusedInactiveForeground": "#858b9880", + //"tab.unfocusedInactiveModifiedBorder": "#3399cc40", + //"terminal.dropBackground": "#53595d80", + //"terminal.findMatchBackground": "#515c6a", + //"terminal.findMatchHighlightBackground": "#ea5c0055", + //"terminal.hoverHighlightBackground": "#5495d720", + //"terminal.inactiveSelectionBackground": "#ffffff20", + //"terminal.tab.activeBorder": "#ffffff00", + //"terminalCommandDecoration.defaultBackground": "#ffffff40", + //"terminalCommandDecoration.errorBackground": "#f14c4c", + //"terminalCommandDecoration.successBackground": "#1b81a8", + //"terminalOverviewRuler.cursorForeground": "#a0a0a0cc", + //"terminalOverviewRuler.findMatchForeground": "#d186167e", + //"terminalStickyScrollHover.background": "#2a2d2e", + //"testing.iconErrored": "#f14c4c", + //"testing.iconFailed": "#f14c4c", + //"testing.iconPassed": "#73c991", + //"testing.iconQueued": "#cca700", + //"testing.iconSkipped": "#848484", + //"testing.iconUnset": "#848484", + //"testing.message.error.decorationForeground": "#f4587e", + //"testing.message.error.lineBackground": "#ff000033", + //"testing.message.info.decorationForeground": "#eef0f980", + //"testing.peekBorder": "#f4587e", + //"testing.peekHeaderBackground": "#f4587e1a", + //"testing.runAction": "#73c991", + //"textBlockQuote.background": "#222222", + //"textBlockQuote.border": "#007acc80", + //"textCodeBlock.background": "#0a0a0a66", + //"textLink.activeForeground": "#3794ff", + //"textPreformat.background": "#ffffff1a", + //"textPreformat.foreground": "#d7ba7d", + //"textSeparator.foreground": "#ffffff2e", + //"toolbar.activeBackground": "#63666750", + //"toolbar.hoverBackground": "#5a5d5e50", + //"tree.inactiveIndentGuidesStroke": "#54586466", + //"tree.tableColumnsBorder": "#cccccc20", + //"tree.tableOddRowsBackground": "#cccccc0a", + //"walkthrough.stepTitle.foreground": "#ffffff", + //"welcomePage.progress.background": "#23262d", + //"welcomePage.progress.foreground": "#54b9ff", + //"welcomePage.tileBackground": "#343841", + //"welcomePage.tileBorder": "#ffffff1a", + //"welcomePage.tileHoverBackground": "#3e434e", + //"activityBar.activeFocusBorder": null, + //"button.border": null, + //"contrastActiveBorder": null, + //"contrastBorder": null, + //"diffEditor.insertedTextBorder": null, + //"diffEditor.removedTextBorder": null, + //"diffEditorGutter.insertedLineBackground": null, + //"diffEditorGutter.removedLineBackground": null, + //"diffEditorOverview.insertedForeground": null, + //"diffEditorOverview.removedForeground": null, + //"dropdown.listBackground": null, + //"editor.selectionForeground": null, + //"editor.snippetFinalTabstopHighlightBackground": null, + //"editor.snippetTabstopHighlightBorder": null, + //"editor.symbolHighlightBorder": null, + //"editor.wordHighlightBorder": null, + //"editor.wordHighlightStrongBorder": null, + //"editor.wordHighlightTextBorder": null, + //"editorGhostText.background": null, + //"editorGhostText.border": null, + //"editorGroup.dropIntoPromptBorder": null, + //"editorGroup.focusedEmptyBorder": null, + //"editorHint.border": null, + //"editorLineNumber.dimmedForeground": null, + //"editorSuggestWidget.selectedIconForeground": null, + //"editorUnnecessaryCode.border": null, + //"inputValidation.errorForeground": null, + //"inputValidation.infoForeground": null, + //"inputValidation.warningForeground": null, + //"list.activeSelectionIconForeground": null, + //"list.focusAndSelectionOutline": null, + //"list.inactiveFocusBackground": null, + //"list.inactiveFocusOutline": null, + //"list.inactiveSelectionIconForeground": null, + //"menubar.selectionBorder": null, + //"merge.border": null, + //"notebook.cellHoverBackground": null, + //"notebook.focusedCellBackground": null, + //"notebook.inactiveSelectedCellBorder": null, + //"notebook.outputContainerBackgroundColor": null, + //"notebook.outputContainerBorderColor": null, + //"panelSectionHeader.border": null, + //"panelSectionHeader.foreground": null, + //"quickInput.list.focusBackground": null, + //"quickInputList.focusIconForeground": null, + //"statusBar.border": null, + //"statusBar.debuggingBorder": null, + //"statusBar.noFolderBorder": null, + //"tab.hoverBorder": null, + //"tab.unfocusedHoverBorder": null, + //"terminal.background": null, + //"terminal.findMatchBorder": null, + //"terminal.findMatchHighlightBorder": null, + //"terminal.selectionForeground": null, + //"terminalStickyScroll.background": null, + //"testing.message.info.lineBackground": null, + //"toolbar.hoverOutline": null, + //"welcomePage.background": null, + //"widget.border": null, + //"window.activeBorder": null, + //"window.inactiveBorder": null + }, + "tokenColors": [ + { + "scope": "punctuation.definition.delayed.unison,punctuation.definition.list.begin.unison,punctuation.definition.list.end.unison,punctuation.definition.ability.begin.unison,punctuation.definition.ability.end.unison,punctuation.operator.assignment.as.unison,punctuation.separator.pipe.unison,punctuation.separator.delimiter.unison,punctuation.definition.hash.unison", + "settings": { + "foreground": "#4BF3C8" + } + }, + { + "scope": "variable.other.generic-type.haskell", + "settings": { + "foreground": "#54B9FF" + } + }, + { + "scope": "storage.type.haskell", + "settings": { + "foreground": "#FFD493" + } + }, + { + "scope": "support.variable.magic.python", + "settings": { + "foreground": "#4BF3C8" + } + }, + { + "scope": "punctuation.separator.period.python,punctuation.separator.element.python,punctuation.parenthesis.begin.python,punctuation.parenthesis.end.python", + "settings": { + "foreground": "#EEF0F9" + } + }, + { + "scope": "variable.parameter.function.language.special.self.python", + "settings": { + "foreground": "#ACAFFF" + } + }, + { + "scope": "storage.modifier.lifetime.rust", + "settings": { + "foreground": "#EEF0F9" + } + }, + { + "scope": "support.function.std.rust", + "settings": { + "foreground": "#00DAEF" + } + }, + { + "scope": "entity.name.lifetime.rust", + "settings": { + "foreground": "#ACAFFF" + } + }, + { + "scope": "variable.language.rust", + "settings": { + "foreground": "#4BF3C8" + } + }, + { + "scope": "support.constant.edge", + "settings": { + "foreground": "#54B9FF" + } + }, + { + "scope": "constant.other.character-class.regexp", + "settings": { + "foreground": "#4BF3C8" + } + }, + { + "scope": "keyword.operator.quantifier.regexp", + "settings": { + "foreground": "#FFD493" + } + }, + { + "scope": "punctuation.definition.string.begin,punctuation.definition.string.end", + "settings": { + "foreground": "#FFD493" + } + }, + { + "scope": "variable.parameter.function", + "settings": { + "foreground": "#EEF0F9" + } + }, + { + "scope": "comment markup.link", + "settings": { + "foreground": "#545864" + } + }, + { + "scope": "markup.changed.diff", + "settings": { + "foreground": "#ACAFFF" + } + }, + { + "scope": "meta.diff.header.from-file,meta.diff.header.to-file,punctuation.definition.from-file.diff,punctuation.definition.to-file.diff", + "settings": { + "foreground": "#00DAEF" + } + }, + { + "scope": "markup.inserted.diff", + "settings": { + "foreground": "#FFD493" + } + }, + { + "scope": "markup.deleted.diff", + "settings": { + "foreground": "#4BF3C8" + } + }, + { + "scope": "meta.function.c,meta.function.cpp", + "settings": { + "foreground": "#4BF3C8" + } + }, + { + "scope": "punctuation.section.block.begin.bracket.curly.cpp,punctuation.section.block.end.bracket.curly.cpp,punctuation.terminator.statement.c,punctuation.section.block.begin.bracket.curly.c,punctuation.section.block.end.bracket.curly.c,punctuation.section.parens.begin.bracket.round.c,punctuation.section.parens.end.bracket.round.c,punctuation.section.parameters.begin.bracket.round.c,punctuation.section.parameters.end.bracket.round.c", + "settings": { + "foreground": "#EEF0F9" + } + }, + { + "scope": "punctuation.separator.key-value", + "settings": { + "foreground": "#EEF0F9" + } + }, + { + "scope": "keyword.operator.expression.import", + "settings": { + "foreground": "#00DAEF" + } + }, + { + "scope": "support.constant.math", + "settings": { + "foreground": "#ACAFFF" + } + }, + { + "scope": "support.constant.property.math", + "settings": { + "foreground": "#FFD493" + } + }, + { + "scope": "variable.other.constant", + "settings": { + "foreground": "#ACAFFF" + } + }, + { + "scope": [ + "storage.type.annotation.java", + "storage.type.object.array.java" + ], + "settings": { + "foreground": "#ACAFFF" + } + }, + { + "scope": "source.java", + "settings": { + "foreground": "#4BF3C8" + } + }, + { + "scope": "punctuation.section.block.begin.java,punctuation.section.block.end.java,punctuation.definition.method-parameters.begin.java,punctuation.definition.method-parameters.end.java,meta.method.identifier.java,punctuation.section.method.begin.java,punctuation.section.method.end.java,punctuation.terminator.java,punctuation.section.class.begin.java,punctuation.section.class.end.java,punctuation.section.inner-class.begin.java,punctuation.section.inner-class.end.java,meta.method-call.java,punctuation.section.class.begin.bracket.curly.java,punctuation.section.class.end.bracket.curly.java,punctuation.section.method.begin.bracket.curly.java,punctuation.section.method.end.bracket.curly.java,punctuation.separator.period.java,punctuation.bracket.angle.java,punctuation.definition.annotation.java,meta.method.body.java", + "settings": { + "foreground": "#EEF0F9" + } + }, + { + "scope": "meta.method.java", + "settings": { + "foreground": "#00DAEF" + } + }, + { + "scope": "storage.modifier.import.java,storage.type.java,storage.type.generic.java", + "settings": { + "foreground": "#ACAFFF" + } + }, + { + "scope": "keyword.operator.instanceof.java", + "settings": { + "foreground": "#54B9FF" + } + }, + { + "scope": "meta.definition.variable.name.java", + "settings": { + "foreground": "#4BF3C8" + } + }, + { + "scope": "keyword.operator.logical", + "settings": { + "foreground": "#EEF0F9" + } + }, + { + "scope": "keyword.operator.bitwise", + "settings": { + "foreground": "#EEF0F9" + } + }, + { + "scope": "keyword.operator.channel", + "settings": { + "foreground": "#EEF0F9" + } + }, + { + "scope": "support.constant.property-value.scss,support.constant.property-value.css", + "settings": { + "foreground": "#FFD493" + } + }, + { + "scope": "keyword.operator.css,keyword.operator.scss,keyword.operator.less", + "settings": { + "foreground": "#EEF0F9" + } + }, + { + "scope": "support.constant.color.w3c-standard-color-name.css,support.constant.color.w3c-standard-color-name.scss", + "settings": { + "foreground": "#FFD493" + } + }, + { + "scope": "punctuation.separator.list.comma.css", + "settings": { + "foreground": "#EEF0F9" + } + }, + { + "scope": "support.constant.color.w3c-standard-color-name.css", + "settings": { + "foreground": "#FFD493" + } + }, + { + "scope": "support.type.vendored.property-name.css", + "settings": { + "foreground": "#EEF0F9" + } + }, + { + "scope": "support.module.node,support.type.object.module,support.module.node", + "settings": { + "foreground": "#ACAFFF" + } + }, + { + "scope": "entity.name.type.module", + "settings": { + "foreground": "#FFD493" + } + }, + { + "scope": "variable.other.readwrite,meta.object-literal.key,support.variable.property,support.variable.object.process,support.variable.object.node", + "settings": { + "foreground": "#4BF3C8" + } + }, + { + "scope": "support.constant.json", + "settings": { + "foreground": "#FFD493" + } + }, + { + "scope": [ + "keyword.operator.expression.instanceof", + "keyword.operator.new", + "keyword.operator.ternary", + "keyword.operator.optional", + "keyword.operator.expression.keyof" + ], + "settings": { + "foreground": "#54B9FF" + } + }, + { + "scope": "support.type.object.console", + "settings": { + "foreground": "#4BF3C8" + } + }, + { + "scope": "support.variable.property.process", + "settings": { + "foreground": "#FFD493" + } + }, + { + "scope": "entity.name.function,support.function.console", + "settings": { + "foreground": "#00DAEF" + } + }, + { + "scope": "keyword.operator.misc.rust", + "settings": { + "foreground": "#EEF0F9" + } + }, + { + "scope": "keyword.operator.sigil.rust", + "settings": { + "foreground": "#54B9FF" + } + }, + { + "scope": "keyword.operator.delete", + "settings": { + "foreground": "#54B9FF" + } + }, + { + "scope": "support.type.object.dom", + "settings": { + "foreground": "#EEF0F9" + } + }, + { + "scope": "support.variable.dom,support.variable.property.dom", + "settings": { + "foreground": "#4BF3C8" + } + }, + { + "scope": "keyword.operator.arithmetic,keyword.operator.comparison,keyword.operator.decrement,keyword.operator.increment,keyword.operator.relational", + "settings": { + "foreground": "#EEF0F9" + } + }, + { + "scope": "keyword.operator.assignment.c,keyword.operator.comparison.c,keyword.operator.c,keyword.operator.increment.c,keyword.operator.decrement.c,keyword.operator.bitwise.shift.c,keyword.operator.assignment.cpp,keyword.operator.comparison.cpp,keyword.operator.cpp,keyword.operator.increment.cpp,keyword.operator.decrement.cpp,keyword.operator.bitwise.shift.cpp", + "settings": { + "foreground": "#54B9FF" + } + }, + { + "scope": "punctuation.separator.delimiter", + "settings": { + "foreground": "#EEF0F9" + } + }, + { + "scope": "punctuation.separator.c,punctuation.separator.cpp", + "settings": { + "foreground": "#54B9FF" + } + }, + { + "scope": "support.type.posix-reserved.c,support.type.posix-reserved.cpp", + "settings": { + "foreground": "#EEF0F9" + } + }, + { + "scope": "keyword.operator.sizeof.c,keyword.operator.sizeof.cpp", + "settings": { + "foreground": "#54B9FF" + } + }, + { + "scope": "variable.parameter.function.language.python", + "settings": { + "foreground": "#FFD493" + } + }, + { + "scope": "support.type.python", + "settings": { + "foreground": "#EEF0F9" + } + }, + { + "scope": "keyword.operator.logical.python", + "settings": { + "foreground": "#54B9FF" + } + }, + { + "scope": "variable.parameter.function.python", + "settings": { + "foreground": "#FFD493" + } + }, + { + "scope": "punctuation.definition.arguments.begin.python,punctuation.definition.arguments.end.python,punctuation.separator.arguments.python,punctuation.definition.list.begin.python,punctuation.definition.list.end.python", + "settings": { + "foreground": "#EEF0F9" + } + }, + { + "scope": "meta.function-call.generic.python", + "settings": { + "foreground": "#00DAEF" + } + }, + { + "scope": "constant.character.format.placeholder.other.python", + "settings": { + "foreground": "#FFD493" + } + }, + { + "scope": "keyword.operator", + "settings": { + "foreground": "#EEF0F9" + } + }, + { + "scope": "keyword.operator.assignment.compound", + "settings": { + "foreground": "#54B9FF" + } + }, + { + "scope": "keyword.operator.assignment.compound.js,keyword.operator.assignment.compound.ts", + "settings": { + "foreground": "#EEF0F9" + } + }, + { + "scope": "keyword", + "settings": { + "foreground": "#54B9FF" + } + }, + { + "scope": "entity.name.namespace", + "settings": { + "foreground": "#ACAFFF" + } + }, + { + "scope": "variable", + "settings": { + "foreground": "#4BF3C8" + } + }, + { + "scope": "variable.c", + "settings": { + "foreground": "#EEF0F9" + } + }, + { + "scope": "variable.language", + "settings": { + "foreground": "#ACAFFF" + } + }, + { + "scope": "token.variable.parameter.java", + "settings": { + "foreground": "#EEF0F9" + } + }, + { + "scope": "import.storage.java", + "settings": { + "foreground": "#ACAFFF" + } + }, + { + "scope": "token.package.keyword", + "settings": { + "foreground": "#54B9FF" + } + }, + { + "scope": "token.package", + "settings": { + "foreground": "#EEF0F9" + } + }, + { + "scope": [ + "entity.name.function", + "meta.require", + "support.function.any-method", + "variable.function" + ], + "settings": { + "foreground": "#00DAEF" + } + }, + { + "scope": "entity.name.type.namespace", + "settings": { + "foreground": "#ACAFFF" + } + }, + { + "scope": "support.class, entity.name.type.class", + "settings": { + "foreground": "#ACAFFF" + } + }, + { + "scope": "entity.name.class.identifier.namespace.type", + "settings": { + "foreground": "#ACAFFF" + } + }, + { + "scope": [ + "entity.name.class", + "variable.other.class.js", + "variable.other.class.ts" + ], + "settings": { + "foreground": "#ACAFFF" + } + }, + { + "scope": "variable.other.class.php", + "settings": { + "foreground": "#4BF3C8" + } + }, + { + "scope": "entity.name.type", + "settings": { + "foreground": "#ACAFFF" + } + }, + { + "scope": "keyword.control", + "settings": { + "foreground": "#54B9FF" + } + }, + { + "scope": "control.elements, keyword.operator.less", + "settings": { + "foreground": "#FFD493" + } + }, + { + "scope": "keyword.other.special-method", + "settings": { + "foreground": "#00DAEF" + } + }, + { + "scope": "storage", + "settings": { + "foreground": "#54B9FF" + } + }, + { + "scope": "token.storage", + "settings": { + "foreground": "#54B9FF" + } + }, + { + "scope": "keyword.operator.expression.delete,keyword.operator.expression.in,keyword.operator.expression.of,keyword.operator.expression.instanceof,keyword.operator.new,keyword.operator.expression.typeof,keyword.operator.expression.void", + "settings": { + "foreground": "#54B9FF" + } + }, + { + "scope": "token.storage.type.java", + "settings": { + "foreground": "#ACAFFF" + } + }, + { + "scope": "support.function", + "settings": { + "foreground": "#EEF0F9" + } + }, + { + "scope": "support.type.property-name", + "settings": { + "foreground": "#EEF0F9" + } + }, + { + "scope": "support.constant.property-value", + "settings": { + "foreground": "#EEF0F9" + } + }, + { + "scope": "support.constant.font-name", + "settings": { + "foreground": "#FFD493" + } + }, + { + "scope": "meta.tag", + "settings": { + "foreground": "#EEF0F9" + } + }, + { + "scope": "string", + "settings": { + "foreground": "#FFD493" + } + }, + { + "scope": "entity.other.inherited-class", + "settings": { + "foreground": "#ACAFFF" + } + }, + { + "scope": "constant.other.symbol", + "settings": { + "foreground": "#EEF0F9" + } + }, + { + "scope": "constant.numeric", + "settings": { + "foreground": "#FFD493" + } + }, + { + "scope": "constant", + "settings": { + "foreground": "#FFD493" + } + }, + { + "scope": "punctuation.definition.constant", + "settings": { + "foreground": "#FFD493" + } + }, + { + "scope": "entity.name.tag", + "settings": { + "foreground": "#54B9FF" + } + }, + { + "scope": "entity.other.attribute-name", + "settings": { + "foreground": "#4BF3C8" + } + }, + { + "scope": "entity.other.attribute-name.html", + "settings": { + "foreground": "#ACAFFF" + } + }, + { + "scope": "source.astro.meta.attribute.client:idle.html", + "settings": { + "foreground": "#FFD493", + "fontStyle": "italic" + } + }, + { + "scope": "string.quoted.double.html,string.quoted.single.html,string.template.html,punctuation.definition.string.begin.html,punctuation.definition.string.end.html", + "settings": { + "foreground": "#4BF3C8" + } + }, + { + "scope": "entity.other.attribute-name.id", + "settings": { + "foreground": "#00DAEF", + "fontStyle": "normal" + } + }, + { + "scope": "entity.other.attribute-name.class.css", + "settings": { + "foreground": "#4BF3C8", + "fontStyle": "normal" + } + }, + { + "scope": "meta.selector", + "settings": { + "foreground": "#54B9FF" + } + }, + { + "scope": "markup.heading", + "settings": { + "foreground": "#4BF3C8" + } + }, + { + "scope": "markup.heading punctuation.definition.heading, entity.name.section", + "settings": { + "foreground": "#00DAEF" + } + }, + { + "scope": "keyword.other.unit", + "settings": { + "foreground": "#4BF3C8" + } + }, + { + "scope": "markup.bold,todo.bold", + "settings": { + "foreground": "#FFD493" + } + }, + { + "scope": "punctuation.definition.bold", + "settings": { + "foreground": "#ACAFFF" + } + }, + { + "scope": "markup.italic, punctuation.definition.italic,todo.emphasis", + "settings": { + "foreground": "#54B9FF" + } + }, + { + "scope": "emphasis md", + "settings": { + "foreground": "#54B9FF" + } + }, + { + "scope": "entity.name.section.markdown", + "settings": { + "foreground": "#4BF3C8" + } + }, + { + "scope": "punctuation.definition.heading.markdown", + "settings": { + "foreground": "#4BF3C8" + } + }, + { + "scope": "punctuation.definition.list.begin.markdown", + "settings": { + "foreground": "#4BF3C8" + } + }, + { + "scope": "markup.heading.setext", + "settings": { + "foreground": "#EEF0F9" + } + }, + { + "scope": "punctuation.definition.bold.markdown", + "settings": { + "foreground": "#FFD493" + } + }, + { + "scope": "markup.inline.raw.markdown", + "settings": { + "foreground": "#FFD493" + } + }, + { + "scope": "markup.inline.raw.string.markdown", + "settings": { + "foreground": "#FFD493" + } + }, + { + "scope": "punctuation.definition.list.markdown", + "settings": { + "foreground": "#4BF3C8" + } + }, + { + "scope": [ + "punctuation.definition.string.begin.markdown", + "punctuation.definition.string.end.markdown", + "punctuation.definition.metadata.markdown" + ], + "settings": { + "foreground": "#4BF3C8" + } + }, + { + "scope": [ + "beginning.punctuation.definition.list.markdown" + ], + "settings": { + "foreground": "#4BF3C8" + } + }, + { + "scope": "punctuation.definition.metadata.markdown", + "settings": { + "foreground": "#4BF3C8" + } + }, + { + "scope": "markup.underline.link.markdown,markup.underline.link.image.markdown", + "settings": { + "foreground": "#54B9FF" + } + }, + { + "scope": "string.other.link.title.markdown,string.other.link.description.markdown", + "settings": { + "foreground": "#00DAEF" + } + }, + { + "scope": "string.regexp", + "settings": { + "foreground": "#EEF0F9" + } + }, + { + "scope": "constant.character.escape", + "settings": { + "foreground": "#EEF0F9" + } + }, + { + "scope": "punctuation.section.embedded, variable.interpolation", + "settings": { + "foreground": "#4BF3C8" + } + }, + { + "scope": "punctuation.section.embedded.begin,punctuation.section.embedded.end", + "settings": { + "foreground": "#54B9FF" + } + }, + { + "scope": "invalid.illegal", + "settings": { + "foreground": "#FFFFFF" + } + }, + { + "scope": "invalid.illegal.bad-ampersand.html", + "settings": { + "foreground": "#EEF0F9" + } + }, + { + "scope": "invalid.broken", + "settings": { + "foreground": "#FFFFFF" + } + }, + { + "scope": "invalid.deprecated", + "settings": { + "foreground": "#FFFFFF" + } + }, + { + "scope": "invalid.unimplemented", + "settings": { + "foreground": "#FFFFFF" + } + }, + { + "scope": "source.json meta.structure.dictionary.json > string.quoted.json", + "settings": { + "foreground": "#CC75F4" + } + }, + { + "scope": "source.json meta.structure.dictionary.json > string.quoted.json > punctuation.string", + "settings": { + "foreground": "#4BF3C8" + } + }, + { + "scope": "source.json meta.structure.dictionary.json > value.json > string.quoted.json,source.json meta.structure.array.json > value.json > string.quoted.json,source.json meta.structure.dictionary.json > value.json > string.quoted.json > punctuation,source.json meta.structure.array.json > value.json > string.quoted.json > punctuation", + "settings": { + "foreground": "#FFD493" + } + }, + { + "scope": "source.json meta.structure.dictionary.json > constant.language.json,source.json meta.structure.array.json > constant.language.json", + "settings": { + "foreground": "#EEF0F9" + } + }, + { + "scope": "support.type.property-name.json", + "settings": { + "foreground": "#4BF3C8" + } + }, + { + "scope": "support.type.property-name.json punctuation", + "settings": { + "foreground": "#4BF3C8" + } + }, + { + "scope": "text.html.laravel-blade source.php.embedded.line.html entity.name.tag.laravel-blade", + "settings": { + "foreground": "#54B9FF" + } + }, + { + "scope": "text.html.laravel-blade source.php.embedded.line.html support.constant.laravel-blade", + "settings": { + "foreground": "#54B9FF" + } + }, + { + "scope": "support.other.namespace.use.php,support.other.namespace.use-as.php,support.other.namespace.php,entity.other.alias.php,meta.interface.php", + "settings": { + "foreground": "#ACAFFF" + } + }, + { + "scope": "keyword.operator.error-control.php", + "settings": { + "foreground": "#54B9FF" + } + }, + { + "scope": "keyword.operator.type.php", + "settings": { + "foreground": "#54B9FF" + } + }, + { + "scope": "punctuation.section.array.begin.php", + "settings": { + "foreground": "#EEF0F9" + } + }, + { + "scope": "punctuation.section.array.end.php", + "settings": { + "foreground": "#EEF0F9" + } + }, + { + "scope": "invalid.illegal.non-null-typehinted.php", + "settings": { + "foreground": "#F44747" + } + }, + { + "scope": "storage.type.php,meta.other.type.phpdoc.php,keyword.other.type.php,keyword.other.array.phpdoc.php", + "settings": { + "foreground": "#ACAFFF" + } + }, + { + "scope": "meta.function-call.php,meta.function-call.object.php,meta.function-call.static.php", + "settings": { + "foreground": "#00DAEF" + } + }, + { + "scope": "punctuation.definition.parameters.begin.bracket.round.php,punctuation.definition.parameters.end.bracket.round.php,punctuation.separator.delimiter.php,punctuation.section.scope.begin.php,punctuation.section.scope.end.php,punctuation.terminator.expression.php,punctuation.definition.arguments.begin.bracket.round.php,punctuation.definition.arguments.end.bracket.round.php,punctuation.definition.storage-type.begin.bracket.round.php,punctuation.definition.storage-type.end.bracket.round.php,punctuation.definition.array.begin.bracket.round.php,punctuation.definition.array.end.bracket.round.php,punctuation.definition.begin.bracket.round.php,punctuation.definition.end.bracket.round.php,punctuation.definition.begin.bracket.curly.php,punctuation.definition.end.bracket.curly.php,punctuation.definition.section.switch-block.end.bracket.curly.php,punctuation.definition.section.switch-block.start.bracket.curly.php,punctuation.definition.section.switch-block.begin.bracket.curly.php,punctuation.definition.section.switch-block.end.bracket.curly.php", + "settings": { + "foreground": "#EEF0F9" + } + }, + { + "scope": "support.constant.core.rust", + "settings": { + "foreground": "#FFD493" + } + }, + { + "scope": "support.constant.ext.php,support.constant.std.php,support.constant.core.php,support.constant.parser-token.php", + "settings": { + "foreground": "#FFD493" + } + }, + { + "scope": "entity.name.goto-label.php,support.other.php", + "settings": { + "foreground": "#00DAEF" + } + }, + { + "scope": "keyword.operator.logical.php,keyword.operator.bitwise.php,keyword.operator.arithmetic.php", + "settings": { + "foreground": "#EEF0F9" + } + }, + { + "scope": "keyword.operator.regexp.php", + "settings": { + "foreground": "#54B9FF" + } + }, + { + "scope": "keyword.operator.comparison.php", + "settings": { + "foreground": "#EEF0F9" + } + }, + { + "scope": "keyword.operator.heredoc.php,keyword.operator.nowdoc.php", + "settings": { + "foreground": "#54B9FF" + } + }, + { + "scope": "meta.function.decorator.python", + "settings": { + "foreground": "#00DAEF" + } + }, + { + "scope": "support.token.decorator.python,meta.function.decorator.identifier.python", + "settings": { + "foreground": "#EEF0F9" + } + }, + { + "scope": "function.parameter", + "settings": { + "foreground": "#EEF0F9" + } + }, + { + "scope": "function.brace", + "settings": { + "foreground": "#EEF0F9" + } + }, + { + "scope": "function.parameter.ruby, function.parameter.cs", + "settings": { + "foreground": "#EEF0F9" + } + }, + { + "scope": "constant.language.symbol.ruby", + "settings": { + "foreground": "#EEF0F9" + } + }, + { + "scope": "rgb-value", + "settings": { + "foreground": "#EEF0F9" + } + }, + { + "scope": "inline-color-decoration rgb-value", + "settings": { + "foreground": "#FFD493" + } + }, + { + "scope": "less rgb-value", + "settings": { + "foreground": "#FFD493" + } + }, + { + "scope": "selector.sass", + "settings": { + "foreground": "#4BF3C8" + } + }, + { + "scope": "support.type.primitive.ts,support.type.builtin.ts,support.type.primitive.tsx,support.type.builtin.tsx", + "settings": { + "foreground": "#ACAFFF" + } + }, + { + "scope": "block.scope.end,block.scope.begin", + "settings": { + "foreground": "#EEF0F9" + } + }, + { + "scope": "storage.type.cs", + "settings": { + "foreground": "#ACAFFF" + } + }, + { + "scope": "entity.name.variable.local.cs", + "settings": { + "foreground": "#4BF3C8" + } + }, + { + "scope": "token.info-token", + "settings": { + "foreground": "#00DAEF" + } + }, + { + "scope": "token.warn-token", + "settings": { + "foreground": "#FFD493" + } + }, + { + "scope": "token.error-token", + "settings": { + "foreground": "#F44747" + } + }, + { + "scope": "token.debug-token", + "settings": { + "foreground": "#54B9FF" + } + }, + { + "scope": [ + "punctuation.definition.template-expression.begin", + "punctuation.definition.template-expression.end", + "punctuation.section.embedded" + ], + "settings": { + "foreground": "#54B9FF" + } + }, + { + "scope": [ + "meta.template.expression" + ], + "settings": { + "foreground": "#EEF0F9" + } + }, + { + "scope": [ + "keyword.operator.module" + ], + "settings": { + "foreground": "#54B9FF" + } + }, + { + "scope": [ + "support.type.type.flowtype" + ], + "settings": { + "foreground": "#00DAEF" + } + }, + { + "scope": [ + "support.type.primitive" + ], + "settings": { + "foreground": "#ACAFFF" + } + }, + { + "scope": [ + "meta.property.object" + ], + "settings": { + "foreground": "#4BF3C8" + } + }, + { + "scope": [ + "variable.parameter.function.js" + ], + "settings": { + "foreground": "#4BF3C8" + } + }, + { + "scope": [ + "keyword.other.template.begin" + ], + "settings": { + "foreground": "#FFD493" + } + }, + { + "scope": [ + "keyword.other.template.end" + ], + "settings": { + "foreground": "#FFD493" + } + }, + { + "scope": [ + "keyword.other.substitution.begin" + ], + "settings": { + "foreground": "#FFD493" + } + }, + { + "scope": [ + "keyword.other.substitution.end" + ], + "settings": { + "foreground": "#FFD493" + } + }, + { + "scope": [ + "keyword.operator.assignment" + ], + "settings": { + "foreground": "#EEF0F9" + } + }, + { + "scope": [ + "keyword.operator.assignment.go" + ], + "settings": { + "foreground": "#ACAFFF" + } + }, + { + "scope": [ + "keyword.operator.arithmetic.go", + "keyword.operator.address.go" + ], + "settings": { + "foreground": "#54B9FF" + } + }, + { + "scope": [ + "entity.name.package.go" + ], + "settings": { + "foreground": "#ACAFFF" + } + }, + { + "scope": [ + "support.type.prelude.elm" + ], + "settings": { + "foreground": "#EEF0F9" + } + }, + { + "scope": [ + "support.constant.elm" + ], + "settings": { + "foreground": "#FFD493" + } + }, + { + "scope": [ + "punctuation.quasi.element" + ], + "settings": { + "foreground": "#54B9FF" + } + }, + { + "scope": [ + "constant.character.entity" + ], + "settings": { + "foreground": "#4BF3C8" + } + }, + { + "scope": [ + "entity.other.attribute-name.pseudo-element", + "entity.other.attribute-name.pseudo-class" + ], + "settings": { + "foreground": "#EEF0F9" + } + }, + { + "scope": [ + "entity.global.clojure" + ], + "settings": { + "foreground": "#ACAFFF" + } + }, + { + "scope": [ + "meta.symbol.clojure" + ], + "settings": { + "foreground": "#4BF3C8" + } + }, + { + "scope": [ + "constant.keyword.clojure" + ], + "settings": { + "foreground": "#EEF0F9" + } + }, + { + "scope": [ + "meta.arguments.coffee", + "variable.parameter.function.coffee" + ], + "settings": { + "foreground": "#4BF3C8" + } + }, + { + "scope": [ + "source.ini" + ], + "settings": { + "foreground": "#FFD493" + } + }, + { + "scope": [ + "meta.scope.prerequisites.makefile" + ], + "settings": { + "foreground": "#4BF3C8" + } + }, + { + "scope": [ + "source.makefile" + ], + "settings": { + "foreground": "#ACAFFF" + } + }, + { + "scope": [ + "storage.modifier.import.groovy" + ], + "settings": { + "foreground": "#ACAFFF" + } + }, + { + "scope": [ + "meta.method.groovy" + ], + "settings": { + "foreground": "#00DAEF" + } + }, + { + "scope": [ + "meta.definition.variable.name.groovy" + ], + "settings": { + "foreground": "#4BF3C8" + } + }, + { + "scope": [ + "meta.definition.class.inherited.classes.groovy" + ], + "settings": { + "foreground": "#FFD493" + } + }, + { + "scope": [ + "support.variable.semantic.hlsl" + ], + "settings": { + "foreground": "#ACAFFF" + } + }, + { + "scope": [ + "support.type.texture.hlsl", + "support.type.sampler.hlsl", + "support.type.object.hlsl", + "support.type.object.rw.hlsl", + "support.type.fx.hlsl", + "support.type.object.hlsl" + ], + "settings": { + "foreground": "#54B9FF" + } + }, + { + "scope": [ + "text.variable", + "text.bracketed" + ], + "settings": { + "foreground": "#4BF3C8" + } + }, + { + "scope": [ + "support.type.swift", + "support.type.vb.asp" + ], + "settings": { + "foreground": "#ACAFFF" + } + }, + { + "scope": [ + "entity.name.function.xi" + ], + "settings": { + "foreground": "#ACAFFF" + } + }, + { + "scope": [ + "entity.name.class.xi" + ], + "settings": { + "foreground": "#EEF0F9" + } + }, + { + "scope": [ + "constant.character.character-class.regexp.xi" + ], + "settings": { + "foreground": "#4BF3C8" + } + }, + { + "scope": [ + "constant.regexp.xi" + ], + "settings": { + "foreground": "#54B9FF" + } + }, + { + "scope": [ + "keyword.control.xi" + ], + "settings": { + "foreground": "#EEF0F9" + } + }, + { + "scope": [ + "invalid.xi" + ], + "settings": { + "foreground": "#EEF0F9" + } + }, + { + "scope": [ + "beginning.punctuation.definition.quote.markdown.xi" + ], + "settings": { + "foreground": "#FFD493" + } + }, + { + "scope": [ + "beginning.punctuation.definition.list.markdown.xi" + ], + "settings": { + "foreground": "#EEF0F98F" + } + }, + { + "scope": [ + "constant.character.xi" + ], + "settings": { + "foreground": "#00DAEF" + } + }, + { + "scope": [ + "accent.xi" + ], + "settings": { + "foreground": "#00DAEF" + } + }, + { + "scope": [ + "wikiword.xi" + ], + "settings": { + "foreground": "#FFD493" + } + }, + { + "scope": [ + "constant.other.color.rgb-value.xi" + ], + "settings": { + "foreground": "#FFFFFF" + } + }, + { + "scope": [ + "punctuation.definition.tag.xi" + ], + "settings": { + "foreground": "#545864" + } + }, + { + "scope": [ + "entity.name.label.cs", + "entity.name.scope-resolution.function.call", + "entity.name.scope-resolution.function.definition" + ], + "settings": { + "foreground": "#ACAFFF" + } + }, + { + "scope": [ + "entity.name.label.cs", + "markup.heading.setext.1.markdown", + "markup.heading.setext.2.markdown" + ], + "settings": { + "foreground": "#4BF3C8" + } + }, + { + "scope": [ + " meta.brace.square" + ], + "settings": { + "foreground": "#EEF0F9" + } + }, + { + "scope": "comment, punctuation.definition.comment", + "settings": { + "foreground": "#EEF0F98F", + "fontStyle": "italic" + } + }, + { + "scope": "markup.quote.markdown", + "settings": { + "foreground": "#EEF0F98F" + } + }, + { + "scope": "punctuation.definition.block.sequence.item.yaml", + "settings": { + "foreground": "#EEF0F9" + } + }, + { + "scope": [ + "constant.language.symbol.elixir" + ], + "settings": { + "foreground": "#EEF0F9" + } + }, + { + "scope": "entity.other.attribute-name.js,entity.other.attribute-name.ts,entity.other.attribute-name.jsx,entity.other.attribute-name.tsx,variable.parameter,variable.language.super", + "settings": { + "fontStyle": "italic" + } + }, + { + "scope": "comment.line.double-slash,comment.block.documentation", + "settings": { + "fontStyle": "italic" + } + }, + { + "scope": "keyword.control.import.python,keyword.control.flow.python", + "settings": { + "fontStyle": "italic" + } + }, + { + "scope": "markup.italic.markdown", + "settings": { + "fontStyle": "italic" + } + } + ] +} \ No newline at end of file diff --git a/www/src/assets/quickstart.sh b/www/src/assets/quickstart.sh new file mode 100644 index 00000000..ab6560f9 --- /dev/null +++ b/www/src/assets/quickstart.sh @@ -0,0 +1,5 @@ +# First Create a fresh Astro Install +npm create astro@latest +# Create Empty Install with standard typescript +# Then Delete entire 'pages' folder under '/src/' +npx astro add @matthiesenxyz/astro-ghostcms \ No newline at end of file diff --git a/www/src/components/BaseHead.astro b/www/src/components/BaseHead.astro new file mode 100644 index 00000000..4f9aba05 --- /dev/null +++ b/www/src/components/BaseHead.astro @@ -0,0 +1,21 @@ +--- +import { ViewTransitions } from 'astro:transitions'; +import SEO, { type Props as SEOProps } from './SEO.astro'; +import { SiteTitle, SiteDescription } from '../consts'; +import favicon from '../assets/favicon.svg'; + +export type Props = Partial; +const { title = SiteTitle, name = SiteTitle, description = SiteDescription, ...seo } = Astro.props; +--- + + + + + + + + + diff --git a/www/src/components/Footer.astro b/www/src/components/Footer.astro new file mode 100644 index 00000000..2978b455 --- /dev/null +++ b/www/src/components/Footer.astro @@ -0,0 +1,12 @@ +--- +import '../styles/global.scss'; +--- + + diff --git a/www/src/components/FormattedDate.astro b/www/src/components/FormattedDate.astro new file mode 100644 index 00000000..377286d9 --- /dev/null +++ b/www/src/components/FormattedDate.astro @@ -0,0 +1,25 @@ +--- +import type { HTMLAttributes } from 'astro/types'; + +type Props = HTMLAttributes<'time'> & { + date: Date; +}; + +const { date, ...attrs } = Astro.props; +--- + + + + diff --git a/www/src/components/GhostAstroFooter.astro b/www/src/components/GhostAstroFooter.astro new file mode 100644 index 00000000..9cd703de --- /dev/null +++ b/www/src/components/GhostAstroFooter.astro @@ -0,0 +1,4 @@ +--- + +--- +
Astro-GhostCMS is independently maintained and not provided by Ghost or Astro, Ghost is a trademark of The Ghost Foundation.
\ No newline at end of file diff --git a/www/src/components/Header.astro b/www/src/components/Header.astro new file mode 100644 index 00000000..2f649d8d --- /dev/null +++ b/www/src/components/Header.astro @@ -0,0 +1,30 @@ +--- +import '../styles/global.scss'; +import { SiteTitle } from '../consts'; +import favicon from '../assets/favicon.svg' +import { Image } from 'astro:assets'; +--- + +
+ +
+ + diff --git a/www/src/components/QuickStart.astro b/www/src/components/QuickStart.astro new file mode 100644 index 00000000..e704f21d --- /dev/null +++ b/www/src/components/QuickStart.astro @@ -0,0 +1,14 @@ +--- +import { Code } from "astro:components" +import quickstart from "../assets/quickstart.sh?raw" + +--- +
+ +
+
/|\ Astro-GhostCMS Quickstart /|\
+
+ + + +
diff --git a/www/src/components/SEO.astro b/www/src/components/SEO.astro new file mode 100644 index 00000000..1e2ddcca --- /dev/null +++ b/www/src/components/SEO.astro @@ -0,0 +1,87 @@ +--- +import type { ImageMetadata } from 'astro'; +type Image = { + src: string | ImageMetadata; + alt: string; +}; + +type SEOMetadata = { + name: string; + title: string; + description: string; + image?: Image | undefined; + canonicalURL?: URL | string | undefined; + locale?: string; +}; + +type OpenGraph = Partial & { + type?: string; +}; + +type Twitter = Partial & { + handle?: string; + card?: 'summary' | 'summary_large_image'; +}; + +export type Props = SEOMetadata & { + og?: OpenGraph; + twitter?: Twitter; +}; + +const { + name, + title, + description, + image, + locale = 'en', + canonicalURL = new URL(Astro.url.pathname, Astro.site), +} = Astro.props; + +const og = { + name, + title, + description, + canonicalURL, + image, + locale, + type: 'website', + ...(Astro.props.og ?? {}), +} satisfies OpenGraph; + +const twitter = { + name, + title, + description, + canonicalURL, + image, + locale, + card: 'summary_large_image', + ...Astro.props.twitter, +}; + +function normalizeImageUrl(image: string | ImageMetadata) { + return typeof image === 'string' ? image : image.src; +} +--- + + + + + + + + + + + + +{og.image && } +{og.image && } + + + + + + +{twitter.image && } +{twitter.image && } diff --git a/www/src/consts.ts b/www/src/consts.ts new file mode 100644 index 00000000..ce7d7548 --- /dev/null +++ b/www/src/consts.ts @@ -0,0 +1,5 @@ +// Place any global data in this file. +// You can import this data from anywhere in your site by using the `import` keyword. + +export const SiteTitle = 'Astro-GhostCMS'; +export const SiteDescription = 'Astro-GhostCMS Integration & API'; diff --git a/www/src/content/archivedreleases/v2_0/2_0_5.md b/www/src/content/archivedreleases/v2_0/2_0_5.md new file mode 100644 index 00000000..36b51333 --- /dev/null +++ b/www/src/content/archivedreleases/v2_0/2_0_5.md @@ -0,0 +1,48 @@ +--- +title: 'Introducing Astro-GhostCMS.xyz!' +date: '01-17-2024' +versionNumber: '2.0.5' +description: 'This is the First Release posted to our new website!' +#image: +# src: '../../assets/starlog-placeholder-2.jpg' +# alt: 'The full Astro logo.' +--- + +## Introducing Astro-GhostCMS.xyz! + +Greetings, Astro-GhostCMS users! We're happy to announce the launch of our new website astro-ghostcms.xyz a central location to get all your relevent updates regarding our Astro-GhostCMS integration! + +### Welcome to Astro-GhostCMS + +- [Live Demo](https://demo.astro-ghostcms.xyz/) of the Astro-GhostCMS integration in action! +- [Live Demo's Repo](https://github.com/MatthiesenXYZ/astro-ghostcms-demo) for an example of how the setup looks. + +Astro minimum Version: **Astro v4.0** + +This Integration is 2 parts. Firstly, there is the API portion that uses the `@tryghost/content-api` to create the link between astro and GhostCMS. From there we move to the Second Part, which is a theme pre-programmed to pull ALL of its data from GhostCMS iteself instead of storing any data locally outside of Build. + +- *This package contains a independent copy of the tryghost content-api.js that is used to establish the connection so this package dose not depend on `@tryghost/content-api` package.* +- If you are looking for a more Customizable option please check [astro-ghostcms-basetheme](https://github.com/MatthiesenXYZ/astro-ghostcms-basetheme) +- This project is not setup for SSR in Integration mode. As such is will most likely not function properly in that mode. You will need to build your own project around the API or customize the *basetheme* linked above. + +### Quick Start : Astro Integration Mode + +In this mode, the addon will not be just an API, but will be a full Route takeover, there is plans to add more themes in time, but for now there is only the base Casper theme based on Ghost's main Theme. + +## Astro Add Installation + +```sh +# For fresh Install +npm create astro@latest +# Create Empty Install with standard typescript +# Then Delete entire `pages` folder under `/src/` +npx astro add @matthiesenxyz/astro-ghostcms +``` +#### Dont forget to set your environment Variables! + +You must also create 2 environment variables in a `.env` file with the following(*Below info is for DEMO Purposes. Please generate your own API_KEY for your Ghost install.*): + +```ansi frame="code" title=".env" +CONTENT_API_KEY=a33da3965a3a9fb2c6b3f63b48 +CONTENT_API_URL=https://ghostdemo.matthiesen.xyz +``` diff --git a/www/src/content/archivedreleases/v2_0/2_0_8.md b/www/src/content/archivedreleases/v2_0/2_0_8.md new file mode 100644 index 00000000..1bc9d977 --- /dev/null +++ b/www/src/content/archivedreleases/v2_0/2_0_8.md @@ -0,0 +1,13 @@ +--- +title: 'New Feature: Theming (BETA)' +date: '01-18-2024' +versionNumber: '2.0.8' +description: 'New Feature Alert! Theming!' +#image: +# src: '../../assets/starlog-placeholder-2.jpg' +# alt: 'The full Astro logo.' +--- + +## New Feature: Themes (BETA)! + +As of posting this there is now a new undocumented feature. Themes! this feature will allow the end-user the option of changing how their website's astro-ghostcms install looks and functons! I will be building a Theme Skeleton and then documentation for this new feature. Stay tuned for more updates as this is a beta feature! \ No newline at end of file diff --git a/www/src/content/config.ts b/www/src/content/config.ts new file mode 100644 index 00000000..0ea0835a --- /dev/null +++ b/www/src/content/config.ts @@ -0,0 +1,35 @@ +import { defineCollection, z } from 'astro:content'; +import { docsSchema } from '@astrojs/starlight/schema'; + +const releases = defineCollection({ + schema: ({ image }) => + z.object({ + title: z.string(), + description: z.string(), + versionNumber: z.string(), + image: z.object({ + src: image(), + alt: z.string(), + }).optional(), + date: z.date({ coerce: true }), + }), +}); + +const archivedreleases = defineCollection({ + schema: ({ image }) => + z.object({ + title: z.string(), + description: z.string(), + versionNumber: z.string(), + image: z.object({ + src: image(), + alt: z.string(), + }).optional(), + date: z.date({ coerce: true }), + }), +}); + +export const collections = { + docs: defineCollection({ schema: docsSchema() }), + releases, archivedreleases, +}; diff --git a/www/src/content/docs/docs/index.md b/www/src/content/docs/docs/index.md new file mode 100644 index 00000000..0b78d88f --- /dev/null +++ b/www/src/content/docs/docs/index.md @@ -0,0 +1,11 @@ +--- +title: Welcome to the Docs +description: Learn more about Astro-GhostCMS - Docs built on Starlight +--- + +Demo site status: +![Vercel](https://vercelbadge.vercel.app/api/matthiesenxyz/astro-ghostcms-demo) + +Welcome to the Astro-GhostCMS Docs! Powered by Starlight & Astro.build! + +Here you will find a document reference for the Astro-GhostCMS Integration & API \ No newline at end of file diff --git a/www/src/content/docs/docs/introduction/api/install.md b/www/src/content/docs/docs/introduction/api/install.md new file mode 100644 index 00000000..f6aa490e --- /dev/null +++ b/www/src/content/docs/docs/introduction/api/install.md @@ -0,0 +1,34 @@ +--- +title: API Only Mode - Install +description: API Only Mode - Install +--- + +# API Mode Install + +In this mode the integration will not deploy routes at all. you will have to build your own website to utilize the exported functions listed below. + +```sh +npx astro add @matthiesenxyz/astro-ghostcms +``` + +You must also create 2 environment variables in a `.env` file with the following: + +```ansi frame="code" title=".env" +CONTENT_API_KEY=a33da3965a3a9fb2c6b3f63b48 +CONTENT_API_URL=https://ghostdemo.matthiesen.xyz +``` + +***When you deploy your install dont forget to set the above ENVIRONMENT VARIABLES!*** + +Then Change your astro config option in `astro.config.ts` to looks like this: + +```ts frame="code" title="astro.config.ts" +import { defineConfig } from "astro/config"; +import GhostCMS from '@matthiesenxyz/astro-ghostcms'; + +export default defineConfig({ + site: "https://YOUR-DOMAIN-HERE.com", + // THIS WILL DISABLE DEFAULT ROUTE INJECT + integrations: [ GhostCMS({ disableRouteInjection: true })], +}); +``` \ No newline at end of file diff --git a/www/src/content/docs/docs/introduction/api/usage.md b/www/src/content/docs/docs/introduction/api/usage.md new file mode 100644 index 00000000..ea6e2ea4 --- /dev/null +++ b/www/src/content/docs/docs/introduction/api/usage.md @@ -0,0 +1,136 @@ +--- +title: API Only Mode - Basic Usage +description: API Only Mode - Basic Usage +--- + +## Manual Function Usage Examples: + +### getGhostPosts() - Get list of posts + +```astro frame="code" title="getGhostPosts()" +--- +// IMPORT {GET} GhostPosts Function +import { getGhostPosts } from '@matthiesenxyz/astro-ghostcms/api'; +// GET LIST OF ALL POSTS +const ghostPosts = await getGhostPosts(); +--- +``` + +### getGhostRecentPosts(setLimit?) - Get Recent Posts (setLimit={6}) + +```astro frame="code" title="getGhostRecentPosts()" +--- +// IMPORT {GET} GhostFeaturedPosts Function +import { getGhostRecentPosts } from "@matthiesenxyz/astro-ghostcms/api"; +// CREATE INTERFACE TO PASS 'setLimit' for POST LIMIT +interface Props { + setLimit?:number; +} +// IF 'setLimit' IS NOT DEFINED AS PROP THEN MAKE IT DEFAULT TO 'undefined' +const { setLimit = undefined } = Astro.props +// GET POSTS with Limit +const ghostPosts = await getGhostRecentPosts(setLimit); +--- +``` + +### getGhostFeaturedPosts(setLimit?) - Get Featured Posts (setLimit={1}) + +```astro frame="code" title="getGhostFeaturedPosts()" +--- +// IMPORT {GET} GhostFeaturedPosts Function +import { getGhostFeaturedPosts } from "@matthiesenxyz/astro-ghostcms/api"; +// CREATE INTERFACE TO PASS 'setLimit' for POST LIMIT +interface Props { + setLimit?:number; +} +// IF 'setLimit' IS NOT DEFINED AS PROP THEN MAKE IT DEFAULT TO 'undefined' +const { setLimit = undefined } = Astro.props +// GET POSTS with Limit +const ghostPosts = await getGhostFeaturedPosts(setLimit); +--- +``` + +### getGhostPostbySlug(slug) - Get Post by Slug + +```astro frame="code" title="getGhostPostbySlug()" +--- +// IMPORT {GET} GhostPostbySlug Function +import { getGhostPostbySlug } from '@matthiesenxyz/astro-ghostcms/api'; +// GET SLUG from /blog/[slug] +const { slug } = Astro.params; +// GET CURRENT POST BY PASSING SLUG TO FUNCTION +const ghostPost = await getGhostPostbySlug(slug); +--- +``` + +### getGhostPostsbyTag(slug) - Get Posts list by Tag slug + +```astro frame="code" title="getGhostPostbyTag()" +--- +// IMPORT {GET} GhostPostsbyTag, and GhostTagbySlug Functions +import { getGhostPostsbyTag, getGhostTagbySlug } from '@matthiesenxyz/astro-ghostcms/api'; +// GET SLUG from /blog/tag/[slug] +const { slug } = Astro.params; +// GET TAG BY SLUG TO DISPLAY TAG INFO +const ghostTag = await getGhostTagbySlug(slug); +// GET POSTS FILTERED BY TAG SLUG +const ghostPosts = await getGhostPostsbyTag(slug) +--- +``` + +### getGhostTags() - Get list of tags + +```astro frame="code" title="getGhostTag()" +--- +// IMPORT {GET} GhostTags Function +import { getGhostTags } from "@matthiesenxyz/astro-ghostcms/api"; +// GET LIST OF ALL TAGS +const ghostTags = await getGhostTags(); +--- +``` + +### getGhostAuthors() - Get list of Authors + +```astro frame="code" title="getGhostAuthors()" +--- +// IMPORT {GET} GhostAuthors Function +import { getGhostAuthors } from "@matthiesenxyz/astro-ghostcms/api"; +// GET LIST OF ALL AUTHORS +const ghostAuthors = await getGhostAuthors(); +--- +``` + +### getGhostPages() - Get list of Pages + +```astro frame="code" title="getGhostPages()" +--- +// IMPORT {GET} GhostAuthors Function +import { getGhostPages } from "@matthiesenxyz/astro-ghostcms/api"; +// GET LIST OF ALL AUTHORS +const ghostPages = await getGhostPages(); +--- +``` + +### getGhostPage(slug) - Get page by slug + +```astro frame="code" title="getGhostPage()" +--- +// IMPORT {GET} GhostPostbySlug Function +import { getGhostPage } from '@matthiesenxyz/astro-ghostcms/api'; +// GET SLUG from /blog/[slug] +const { slug } = Astro.params; +// GET CURRENT POST BY PASSING SLUG TO FUNCTION +const ghostpage = await getGhostPage(slug); +--- +``` + +### getGhostSettings() - Get Settings for GhostCMS + +```astro frame="code" title="getGhostSettings()" +--- +// IMPORT {GET} GhostAuthors Function +import { getGhostSettings } from "@matthiesenxyz/astro-ghostcms/api"; +// GET LIST OF ALL AUTHORS +const ghostSettings = await getGhostSettings(); +--- +``` \ No newline at end of file diff --git a/www/src/content/docs/docs/introduction/getting-started.md b/www/src/content/docs/docs/introduction/getting-started.md new file mode 100644 index 00000000..41dc4951 --- /dev/null +++ b/www/src/content/docs/docs/introduction/getting-started.md @@ -0,0 +1,17 @@ +--- +title: Getting Started with Astro-GhostCMS +description: Getting Started +--- + + +- [Live Demo](https://demo.astro-ghostcms.xyz/) of the Astro-GhostCMS integration in action! +- [Live Demo - Unlighthouse Test](https://test.demo.astro-ghostcms.xyz) for a Automatically updated Lighthouse test from every deploy! +- [Live Demo's Repo](https://github.com/MatthiesenXYZ/astro-ghostcms-demo) for an example of how the setup looks. + +Astro minimum Version: **Astro v4.0** + +This Integration is 2 parts. Firstly, there is the API portion that uses the `@tryghost/content-api` to create the link between astro and GhostCMS. From there we move to the Second Part, which is a theme pre-programmed to pull ALL of its data from GhostCMS iteself instead of storing any data locally outside of Build. + +- *This package contains a independent copy of the tryghost content-api.js that is used to establish the connection so this package dose not depend on `@tryghost/content-api` package.* +- If you are looking for a more Customizable option please check [astro-ghostcms-basetheme](https://github.com/MatthiesenXYZ/astro-ghostcms-basetheme) +- The default theme is not setup for SSR in Integration mode. As such is will most likely not function properly in that mode. You will need to build your own project around the API or customize the *basetheme* linked above. diff --git a/www/src/content/docs/docs/introduction/integration/config.md b/www/src/content/docs/docs/introduction/integration/config.md new file mode 100644 index 00000000..9f7f514c --- /dev/null +++ b/www/src/content/docs/docs/introduction/integration/config.md @@ -0,0 +1,50 @@ +--- +title: Integration Mode - Configuration Options +description: Integration Mode - Configuration Options +--- + +### This is still a *BETA* Feature + +Theme config option in `astro.config.ts` looks like this: + +```ts frame="code" title="astro.config.ts" +import { defineConfig } from "astro/config"; +import GhostCMS from '@matthiesenxyz/astro-ghostcms'; + +export default defineConfig({ + site: "https://YOUR-DOMAIN-HERE.com", + integrations: [ + GhostCMS({ + // *OPTIONAL* THIS Option allows the user to disable default route + // injections, disabling the default layout and theme all together. + // Allowing the user to still use integration features while building + // off of the included API functions + disableRouteInjection: false // DEFAULT VALUE + // *OPTIONAL* Setting this to true will disable the extra info logs + disableConsoleOutput: false // DEFAULT VALUE + // *OPTIONAL* THIS IS THE DEFAULT VALUE + theme: '@matthiesenxyz/astro-ghostcms', + // THIS IS TO SHOW SUPPORTED FEATURES FOR MORE INFO SEE + // npm:@astrojs/sitemap package README + sitemap: { + customPages: // OPTIONAL - string[] + entryLimit: // OPTIONAL - number + } + // THIS IS TO SHOW SUPPORTED FEATURES FOR MORE INFO SEE + // npm:astro-robots-txt package README + robotstxt: { + host: // OPTIONAL - string + sitemap: // OPTIONAL - string + sitemapBaseFileName: // OPTIONAL - string + policy: { // OPTIONAL + userAgent: // REQUIRED IF POLICY IS PRESENT - string + allow: // OPTIONAL - string + disallow: //OPTIONAL - string + cleanParam: //OPTIONAL - string + crawlDelay: //OPTIONAL - number + } + } + }), + ], +}); +``` \ No newline at end of file diff --git a/www/src/content/docs/docs/introduction/integration/manual.md b/www/src/content/docs/docs/introduction/integration/manual.md new file mode 100644 index 00000000..69510e52 --- /dev/null +++ b/www/src/content/docs/docs/introduction/integration/manual.md @@ -0,0 +1,49 @@ +--- +title: Integration Mode - Manual Install +description: Integration Mode - Manual Install +--- + +## Install + +```sh +npm i @matthiesenxyz/astro-ghostcms +``` + +Then set your `astro.config.ts` to look like this: + +```ts frame="code" title="astro.config.ts" +import { defineConfig } from "astro/config"; +import GhostCMS from '@matthiesenxyz/astro-ghostcms'; + +// https://astro.build/config +export default defineConfig({ + site: "https://YOUR-DOMAIN-HERE.com" + integrations: [GhostCMS()], +}); +``` + + +## Setup `.env` variables + +```ansi frame="code" title=".env" +CONTENT_API_KEY=a33da3965a3a9fb2c6b3f63b48 +CONTENT_API_URL=https://ghostdemo.matthiesen.xyz +``` + +***When you deploy your install dont forget to set the above ENVIRONMENT VARIABLES!*** + +## Created Routes + +The routes are the same as a standard Ghost Blog so you can migrate to Astro easily. + +| Route | Content | +| --------------------- | ----------------------------------------- | +| `/` | Homepage with recents/features Blog Posts | +| `/404` | 404 Page | +| `/[slug]` | Post or Page | +| `/author/[slug]` | Author page with related posts | +| `/authors` | All the authors | +| `/tag[slug]` | Tag page with related posts | +| `/tags` | All the tags | +| `/archives/[...page]` | All the posts, paginated | +| `/rss.xml` | All the posts, in a FEED | diff --git a/www/src/content/docs/docs/introduction/integration/quick.md b/www/src/content/docs/docs/introduction/integration/quick.md new file mode 100644 index 00000000..c0c57e20 --- /dev/null +++ b/www/src/content/docs/docs/introduction/integration/quick.md @@ -0,0 +1,39 @@ +--- +title: Integration Mode - Quick Install +description: Integration Mode - Quick Install +--- + +## Install + +```sh +# For fresh Install +npm create astro@latest +# Create Empty Install with standard typescript +# Then Delete entire `pages` folder under `/src/` +npx astro add @matthiesenxyz/astro-ghostcms +``` + +## Setup `.env` variables + +```ansi frame="code" title=".env" +CONTENT_API_KEY=a33da3965a3a9fb2c6b3f63b48 +CONTENT_API_URL=https://ghostdemo.matthiesen.xyz +``` + +***When you deploy your install dont forget to set the above ENVIRONMENT VARIABLES!*** + +## Created Routes + +The routes are the same as a standard Ghost Blog so you can migrate to Astro easily. + +| Route | Content | +| --------------------- | ----------------------------------------- | +| `/` | Homepage with recents/features Blog Posts | +| `/404` | 404 Page | +| `/[slug]` | Post or Page | +| `/author/[slug]` | Author page with related posts | +| `/authors` | All the authors | +| `/tag[slug]` | Tag page with related posts | +| `/tags` | All the tags | +| `/archives/[...page]` | All the posts, paginated | +| `/rss.xml` | All the posts, in a FEED | diff --git a/www/src/content/docs/docs/reference/ghost-content-api-ref.md b/www/src/content/docs/docs/reference/ghost-content-api-ref.md new file mode 100644 index 00000000..5244cdf0 --- /dev/null +++ b/www/src/content/docs/docs/reference/ghost-content-api-ref.md @@ -0,0 +1,205 @@ +--- +title: Ghost Content API References +description: Ghost Content API References +--- + +- [Main Content API Docs (ghost.org)](https://ghost.org/docs/content-api/) + +## Example of Posts Output + +```json frame="code" title="Posts" +{ + "posts": [ + { + "slug": "welcome-short", + "id": "5c7ece47da174000c0c5c6d7", + "uuid": "3a033ce7-9e2d-4b3b-a9ef-76887efacc7f", + "title": "Welcome", + "html": "

👋 Welcome, it's great to have you here.

", + "comment_id": "5c7ece47da174000c0c5c6d7", + "feature_image": "https://casper.ghost.org/v2.0.0/images/welcome-to-ghost.jpg", + "feature_image_alt": null, + "feature_image_caption": null, + "featured": false, + "meta_title": null, + "meta_description": null, + "created_at": "2019-03-05T19:30:15.000+00:00", + "updated_at": "2019-03-26T19:45:31.000+00:00", + "published_at": "2012-11-27T15:30:00.000+00:00", + "custom_excerpt": "Welcome, it's great to have you here.", + "codeinjection_head": null, + "codeinjection_foot": null, + "og_image": null, + "og_title": null, + "og_description": null, + "twitter_image": null, + "twitter_title": null, + "twitter_description": null, + "custom_template": null, + "canonical_url": null, + "authors": [ + { + "id": "5951f5fca366002ebd5dbef7", + "name": "Ghost", + "slug": "ghost", + "profile_image": "https://demo.ghost.io/content/images/2017/07/ghost-icon.png", + "cover_image": null, + "bio": "The professional publishing platform", + "website": "https://ghost.org", + "location": null, + "facebook": "ghost", + "twitter": "@tryghost", + "meta_title": null, + "meta_description": null, + "url": "https://demo.ghost.io/author/ghost/" + } + ], + "tags": [ + { + "id": "59799bbd6ebb2f00243a33db", + "name": "Getting Started", + "slug": "getting-started", + "description": null, + "feature_image": null, + "visibility": "public", + "meta_title": null, + "meta_description": null, + "url": "https://demo.ghost.io/tag/getting-started/" + } + ], + "primary_author": { + "id": "5951f5fca366002ebd5dbef7", + "name": "Ghost", + "slug": "ghost", + "profile_image": "https://demo.ghost.io/content/images/2017/07/ghost-icon.png", + "cover_image": null, + "bio": "The professional publishing platform", + "website": "https://ghost.org", + "location": null, + "facebook": "ghost", + "twitter": "@tryghost", + "meta_title": null, + "meta_description": null, + "url": "https://demo.ghost.io/author/ghost/" + }, + "primary_tag": { + "id": "59799bbd6ebb2f00243a33db", + "name": "Getting Started", + "slug": "getting-started", + "description": null, + "feature_image": null, + "visibility": "public", + "meta_title": null, + "meta_description": null, + "url": "https://demo.ghost.io/tag/getting-started/" + }, + "url": "https://demo.ghost.io/welcome-short/", + "excerpt": "Welcome, it's great to have you here." + } + ] +} +``` + +## Example of Tags Output + +```json frame="code" title="Tags" +{ + "tags": [ + { + "slug": "getting-started", + "id": "5ddc9063c35e7700383b27e0", + "name": "Getting Started", + "description": null, + "feature_image": null, + "visibility": "public", + "meta_title": null, + "meta_description": null, + "og_image": null, + "og_title": null, + "og_description": null, + "twitter_image": null, + "twitter_title": null, + "twitter_description": null, + "codeinjection_head": null, + "codeinjection_foot": null, + "canonical_url": null, + "accent_color": null, + "url": "https://docs.ghost.io/tag/getting-started/" + } + ] +} +``` + +## Example of Authors Output + +```json frame="code" title="Authors" +{ + "authors": [ + { + "slug": "cameron", + "id": "5ddc9b9510d8970038255d02", + "name": "Cameron Almeida", + "profile_image": "https://docs.ghost.io/content/images/2019/03/1c2f492a-a5d0-4d2d-b350-cdcdebc7e413.jpg", + "cover_image": null, + "bio": "Editor at large.", + "website": "https://example.com", + "location": "Cape Town", + "facebook": "example", + "twitter": "@example", + "meta_title": null, + "meta_description": null, + "url": "https://docs.ghost.io/author/cameron/" + } + ] +} +``` + +## Example of Settings Output + +```json frame="code" title="Settings" +{ + "settings": { + "title": "Ghost", + "description": "The professional publishing platform", + "logo": "https://docs.ghost.io/content/images/2014/09/Ghost-Transparent-for-DARK-BG.png", + "icon": "https://docs.ghost.io/content/images/2017/07/favicon.png", + "accent_color": null, + "cover_image": "https://docs.ghost.io/content/images/2019/10/publication-cover.png", + "facebook": "ghost", + "twitter": "@tryghost", + "lang": "en", + "timezone": "Etc/UTC", + "codeinjection_head": null, + "codeinjection_foot": "", + "navigation": [ + { + "label": "Home", + "url": "/" + }, + { + "label": "About", + "url": "/about/" + }, + { + "label": "Getting Started", + "url": "/tag/getting-started/" + }, + { + "label": "Try Ghost", + "url": "https://ghost.org" + } + ], + "secondary_navigation": [], + "meta_title": null, + "meta_description": null, + "og_image": null, + "og_title": null, + "og_description": null, + "twitter_image": null, + "twitter_title": null, + "twitter_description": null, + "members_support_address": "noreply@docs.ghost.io", + "url": "https://docs.ghost.io/" + } +} +``` \ No newline at end of file diff --git a/www/src/content/docs/docs/reference/unlighthouse-reports.md b/www/src/content/docs/docs/reference/unlighthouse-reports.md new file mode 100644 index 00000000..4249a7dc --- /dev/null +++ b/www/src/content/docs/docs/reference/unlighthouse-reports.md @@ -0,0 +1,9 @@ +--- +title: Unlighthouse Report Lists +description: Unlighthouse Report Lists +--- + +Below you will find a list of links to different lighthouse reports generated using [Unlighthouse](https://unlighthouse.dev)'s CI utility + +- [Main Demo](https://test.demo.astro-ghostcms.xyz) +- [Base Theme Demo](https://test.basetheme-demo.astro-ghostcms.xyz) \ No newline at end of file diff --git a/www/src/content/releases/posts/01192024.md b/www/src/content/releases/posts/01192024.md new file mode 100644 index 00000000..1944f8cb --- /dev/null +++ b/www/src/content/releases/posts/01192024.md @@ -0,0 +1,13 @@ +--- +title: 'We now have automated Lighthouse Reports with Unlighthouse!' +date: '01-19-2024' +versionNumber: 'POST' +description: 'New Feature Alert! Theming!' +#image: +# src: '../../assets/starlog-placeholder-2.jpg' +# alt: 'The full Astro logo.' +--- + +## We now have automated Lighthouse Reports with Unlighthouse!! + +Hello! Our Main Demo site now autogenerates a Lighthouse Report every deployment! To see this test at any point just goto [test.demo.astro-ghostcms.xyz](https://test.demo.astro-ghostcms.xyz) eventually the goal will be to have a `test.*` domain for each of the themes as well to be able to demonstrate lighthouse scores for each of our inhouse projects! \ No newline at end of file diff --git a/www/src/content/releases/v2_1/2_1_0.md b/www/src/content/releases/v2_1/2_1_0.md new file mode 100644 index 00000000..824d4cab --- /dev/null +++ b/www/src/content/releases/v2_1/2_1_0.md @@ -0,0 +1,20 @@ +--- +title: 'Updates & Bug Fixes' +date: '01-20-2024 08:00' +versionNumber: '2.1.0' +description: 'Updates & Bug Fixes' +#image: +# src: '../../assets/starlog-placeholder-2.jpg' +# alt: 'The full Astro logo.' +--- + +## Updates + +This patch resolved some outstanding issues with the api integration itself. There had been some issues with types being imported and not working. that is now solved. + +RSS Implentation is successful, Integration now checks that .env file exisits with the required values set. + +New Features in progress: +- sitemap integration +- robots integration +- rss styling \ No newline at end of file diff --git a/www/src/content/releases/v2_1/2_1_3.md b/www/src/content/releases/v2_1/2_1_3.md new file mode 100644 index 00000000..b61f4216 --- /dev/null +++ b/www/src/content/releases/v2_1/2_1_3.md @@ -0,0 +1,22 @@ +--- +title: 'Updates & Bug Fixes' +date: '01-20-2024 11:00' +versionNumber: '2.1.3' +description: 'Updates & Bug Fixes' +#image: +# src: '../../assets/starlog-placeholder-2.jpg' +# alt: 'The full Astro logo.' +--- + +## Bug Fixes & New Config Options + +### Fixes: + +This patch resolved the issues that were causing sitemap, and robots to not load fully. Issue now resolved. + +### New: + +This patch also creates new Configuration Options for Sitemap and RobotsTxt allowing the user to modify the integrated plugins instead of having to run them independently from this Integration. More info on the Docs. + +#### Features in progress: +- rss styling \ No newline at end of file diff --git a/www/src/content/releases/v2_1/2_1_5.md b/www/src/content/releases/v2_1/2_1_5.md new file mode 100644 index 00000000..5c245851 --- /dev/null +++ b/www/src/content/releases/v2_1/2_1_5.md @@ -0,0 +1,22 @@ +--- +title: 'IntelliSense Docs Integration!' +date: '01-20-2024 14:40' +versionNumber: '2.1.5' +description: 'IntelliSense Docs Integration!' +#image: +# src: '../../assets/starlog-placeholder-2.jpg' +# alt: 'The full Astro logo.' +--- + +## IntelliSense Docs Integration! + +### Fixes: + +Unnoted v2.1.4 was supposed to add jsDocs to our IntelliSense but that caused all sorts of errors at first. But we are glad to announce, IT IS NOW WORKING! now while you are trying to setup your config it will give you some help! + +### New: + +- IntelliSense jsDoc Integration(Resources right in your code editor)! + +#### Features in progress: +- rss styling \ No newline at end of file diff --git a/www/src/content/releases/v2_1/2_1_7.md b/www/src/content/releases/v2_1/2_1_7.md new file mode 100644 index 00000000..cf0e3b9d --- /dev/null +++ b/www/src/content/releases/v2_1/2_1_7.md @@ -0,0 +1,23 @@ +--- +title: 'More Features! and a 404 page!' +date: '01-21-2024 01:20' +versionNumber: '2.1.7' +description: 'More Features! and a 404 page!' +#image: +# src: '../../assets/starlog-placeholder-2.jpg' +# alt: 'The full Astro logo.' +--- + +## More Features! and a 404 page! + +### Fixes: + +v2.1.6 & v2.1.7 include updates to include a new 404 page route, as well clean up a bunch of internal code. + +### New: + +- New options that allow users to disable both console logging and the default route injection + +#### Features in progress: + +- rss styling \ No newline at end of file diff --git a/www/src/content/releases/v2_1/2_1_8.md b/www/src/content/releases/v2_1/2_1_8.md new file mode 100644 index 00000000..42f506e3 --- /dev/null +++ b/www/src/content/releases/v2_1/2_1_8.md @@ -0,0 +1,17 @@ +--- +title: 'Minior Bug fixes & some code cleanup' +date: '01-21-2024 07:00' +versionNumber: '2.1.8' +description: 'Minior Bug fixes & some code cleanup' +#image: +# src: '../../assets/starlog-placeholder-2.jpg' +# alt: 'The full Astro logo.' +--- + +## Minior Bug fixes & some code cleanup + +Nothing Major in this update, i went through and cleaned up and reorganized some files and code. No breaking changes no bugs. + +#### Features in progress: + +- rss styling \ No newline at end of file diff --git a/www/src/env.d.ts b/www/src/env.d.ts new file mode 100644 index 00000000..c13bd73c --- /dev/null +++ b/www/src/env.d.ts @@ -0,0 +1,2 @@ +/// +/// \ No newline at end of file diff --git a/www/src/layouts/ArchivePostLayout.astro b/www/src/layouts/ArchivePostLayout.astro new file mode 100644 index 00000000..dcd19017 --- /dev/null +++ b/www/src/layouts/ArchivePostLayout.astro @@ -0,0 +1,41 @@ +--- +import type { CollectionEntry } from 'astro:content'; +import BaseHead from '../components/BaseHead.astro'; +import FormattedDate from '../components/FormattedDate.astro'; +import Header from '../components/Header.astro'; +import Footer from '../components/Footer.astro'; +import { SiteTitle } from '../consts'; + +type Props = { + arrelease: CollectionEntry<'archivedreleases'>; +}; + +const { arrelease } = Astro.props; +--- + + + + + {arrelease.data.versionNumber} | {SiteTitle} + + +
+
+
+
+
+
{arrelease.data.versionNumber}
+ +
+
+
+ +
+
+