diff --git a/.changeset/violet-geckos-hang.md b/.changeset/violet-geckos-hang.md
new file mode 100644
index 0000000..4fa8a11
--- /dev/null
+++ b/.changeset/violet-geckos-hang.md
@@ -0,0 +1,5 @@
+---
+"astro-remote": minor
+---
+
+Add support for custom Heading, CodeBlock, and CodeSpan components. Improve documentation.
diff --git a/packages/astro-remote/README.md b/packages/astro-remote/README.md
index b3be594..0a5cb68 100644
--- a/packages/astro-remote/README.md
+++ b/packages/astro-remote/README.md
@@ -1,3 +1,136 @@
# Astro Remote
-Render (and customize) remote HTML or Markdown content with Astro
+Render remote HTML or Markdown content in Astro with full control over the output.
+
+Powered by [`ultrahtml`](https://github.com/natemoo-re/ultrahtml) and [`marked`](https://github.com/markedjs/marked).
+
+## Rendering Remote Content
+
+The most basic function of `astro-remote` is to convert a string of HTML or Markdown to HTML. Use the `Markup` and `Markdown` components depending on your input.
+
+```astro
+---
+import { Markup, Markdown } from 'astro-remote';
+const { html, markdown } = await fetch('http://my-site.com/api/v1/post').then(res => res.json());
+---
+
+
+
+```
+
+### Sanitization
+
+By default, all content will be sanitized with sensible defaults (`script` blocks are dropped). This can be controlled using the [`SanitizeOptions`](https://github.com/natemoo-re/ultrahtml/blob/71e723f6093abea2584c9ea3bfecc0ce68d02d8d/src/index.ts#L251-L268) available in `ultrahtml`. Set to `false` to disable sanitization.
+
+```astro
+---
+import { Markdown } from 'astro-remote';
+const content = await fetch('http://my-site.com/api/v1/post').then(res => res.text());
+---
+
+
+
+```
+
+### Customization
+
+Both `Markup` and `Markdown` allow full control over the rendering of output. The `components` option allows you to replace a standard HTML element with a custom component.
+
+```astro
+---
+import { Markdown } from 'astro-remote';
+import Title from '../components/Title.astro';
+const content = await fetch('http://my-site.com/api/v1/post').then(res => res.text());
+---
+
+
+
+```
+
+In addition to built-in HTML Elements, `Markdown` also supports a few custom components for convenience.
+
+#### ``
+
+The `Heading` component renders all `h1` through `h6` elements. It receives the following props:
+
+- `as`, the `h1` through `h6` tag
+- `href`, a pre-generated, slugified `href`
+- `text`, the text content of the children (for generating a custom slug)
+
+```astro
+---
+import { Markdown } from 'astro-remote';
+import Heading from '../components/Heading.astro';
+const content = await fetch('http://my-site.com/api/v1/post').then(res => res.text());
+---
+
+
+
+```
+
+A sample `Heading` component might look something like this.
+
+```astro
+---
+const { as: Component, href } = Astro.props;
+---
+
+
+```
+
+#### ``
+
+The `CodeBlock` component allows you customize the rendering of code blocks. It receives the following props:
+
+- `lang`, the language specified after the three backticks (defaults to `plaintext`)
+- `code`, the raw code to be highlighted. **Be sure to escape the output!**
+- `...props`, any other attributes passed to the three backticks. These should follow HTML attribute format (`name="value"`)
+
+A sample `CodeBlock` component might look something like this.
+
+```astro
+---
+const { lang, code, ...props } = Astro.props;
+const highlighted = await highlight(code, { lang });
+---
+
+
+```
+
+#### ``
+
+The `CodeSpan` component allows you customize the rendering of inline code spans. It receives the following props:
+
+- `code`, the value of the code span
+
+A sample `CodeSpan` component might look something like this.
+
+```astro
+---
+const { code } = Astro.props;
+---
+
+
+```
+
+### Custom Components in Markdown
+
+If you'd like to allow custom components in Markdown, you can do so using a combination of the `sanitize` and `components` options. By default, sanitization removes components.
+
+Given the following markdown source:
+
+```markdown
+# Hello world!
+
+It works!
+```
+
+```astro
+---
+import { Markdown } from 'astro-remote';
+import MyCustomComponent from '../components/MyCustomComponent.astro';
+const content = await fetch('http://my-site.com/api/v1/post').then(res => res.text());
+---
+
+
+```
diff --git a/packages/astro-remote/lib/utils.ts b/packages/astro-remote/lib/utils.ts
index d31a410..7195045 100644
--- a/packages/astro-remote/lib/utils.ts
+++ b/packages/astro-remote/lib/utils.ts
@@ -3,14 +3,20 @@ import { transform } from 'ultrahtml';
import { jsx as h } from 'astro/jsx-runtime';
import { renderJSX } from 'astro/runtime/server/jsx';
import { __unsafeHTML } from 'ultrahtml';
+import 'he';
-export function createComponentProxy(result, _components: Record) {
+declare var he: any;
+
+export function createComponentProxy(result, _components: Record = {}) {
const components = {};
for (const [key, value] of Object.entries(_components)) {
if (typeof value === 'string') {
components[key] = value;
} else {
components[key] = async (props, children) => {
+ if (key === 'CodeBlock' || key === 'CodeSpan') {
+ props.code = he.decode(props.code);
+ }
const output = await renderJSX(
result,
h(value, { ...props, 'set:html': children.value })
@@ -48,7 +54,36 @@ export async function markdown(
input: string,
opts: HTMLOptions = {}
): Promise {
+ const renderer: any = {};
+ if (opts.components) {
+ if ('Heading' in opts.components) {
+ renderer.heading = (children: string, level: number, raw: string, slugger) => {
+ const slug = slugger.slug(raw);
+ return `${children}`
+ }
+ }
+ if ('CodeBlock' in opts.components) {
+ renderer.code = (code: string, meta = '') => {
+ const info = meta.split(/\s+/g) ?? [];
+ const lang = info[0] ?? 'plaintext';
+ const value = he.encode(code)
+ return ``
+ }
+ }
+ if ('CodeSpan' in opts.components) {
+ renderer.codespan = (code: string) => {
+ const value = he.encode(code)
+ return `${code}`
+ }
+ }
+ }
+ marked.use({
+ gfm: true,
+ smartypants: true,
+ renderer
+ })
const content = await marked.parse(dedent(input));
+
return transform(content, {
sanitize: opts.sanitize,
components: opts.components,
diff --git a/packages/astro-remote/package.json b/packages/astro-remote/package.json
index 348a5d6..067185c 100644
--- a/packages/astro-remote/package.json
+++ b/packages/astro-remote/package.json
@@ -35,10 +35,11 @@
},
"license": "MIT",
"dependencies": {
+ "he": "^1.2.0",
"marked": "^4.0.18",
"ultrahtml": "^0.1.1"
},
"devDependencies": {
- "astro": "1.0.0-rc.7"
+ "astro": "1.3.0"
}
}
diff --git a/packages/demo/package.json b/packages/demo/package.json
index 563404e..ddf2229 100644
--- a/packages/demo/package.json
+++ b/packages/demo/package.json
@@ -10,9 +10,9 @@
"astro": "astro"
},
"devDependencies": {
- "astro": "^1.0.0-rc.7"
+ "astro": "^1.3.0"
},
"dependencies": {
- "astro-remote": "link:../astro-remote"
+ "astro-remote": "^0.1.0"
}
}
diff --git a/packages/demo/src/components/CodeBlock.astro b/packages/demo/src/components/CodeBlock.astro
new file mode 100644
index 0000000..354861e
--- /dev/null
+++ b/packages/demo/src/components/CodeBlock.astro
@@ -0,0 +1,5 @@
+---
+const { lang, code, ...props } = Astro.props;
+---
+
+
diff --git a/packages/demo/src/components/CodeSpan.astro b/packages/demo/src/components/CodeSpan.astro
new file mode 100644
index 0000000..0d6ae63
--- /dev/null
+++ b/packages/demo/src/components/CodeSpan.astro
@@ -0,0 +1,5 @@
+---
+const { code } = Astro.props;
+---
+
+
diff --git a/packages/demo/src/components/Heading.astro b/packages/demo/src/components/Heading.astro
new file mode 100644
index 0000000..f28da81
--- /dev/null
+++ b/packages/demo/src/components/Heading.astro
@@ -0,0 +1,11 @@
+---
+const { as: Component, href } = Astro.props;
+---
+
+
+
+
diff --git a/packages/demo/src/components/Title.astro b/packages/demo/src/components/Title.astro
deleted file mode 100644
index 14f74be..0000000
--- a/packages/demo/src/components/Title.astro
+++ /dev/null
@@ -1,7 +0,0 @@
-
-
-
diff --git a/packages/demo/src/pages/index.astro b/packages/demo/src/pages/index.astro
index c901bd0..56b7001 100644
--- a/packages/demo/src/pages/index.astro
+++ b/packages/demo/src/pages/index.astro
@@ -1,26 +1,50 @@
---
-import { Markdown, Markup } from 'astro-remote';
-import Title from '../components/Title.astro';
+import { Markdown, Markup } from "astro-remote";
+import CodeSpan from "../components/CodeSpan.astro";
+import CodeBlock from "../components/CodeBlock.astro";
+import Heading from "../components/Heading.astro";
-const example = await fetch('https://example.com/').then(res => res.text());
-const readme = await fetch('https://raw.githubusercontent.com/natemoo-re/astro-remote/main/README.md').then(res => res.text());
+const example = await fetch("https://example.com/").then((res) => res.text());
+const readme = `
+# Hello \`world\`
+
+"Nice"
+
+\`inline\`
+
+\`\`\`html filename="cool"
+Hello world!
+\`\`\`
+`;
+// const readme = await fetch(
+// "https://raw.githubusercontent.com/natemoo-re/astro-remote/main/packages/astro-remote/README.md"
+// ).then((res) => res.text());
---
-
-
-
- Astro
-
-
-
-
Markup
-
-
-
-
-
Markdown
-
-
-
+
+
+
+ Astro
+
+
+
+
Markup
+
+
+
+
+
Markdown
+
+
+
diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml
index 13b09a0..8e14465 100644
--- a/pnpm-lock.yaml
+++ b/pnpm-lock.yaml
@@ -15,23 +15,25 @@ importers:
packages/astro-remote:
specifiers:
- astro: 1.0.0-rc.7
+ astro: 1.3.0
+ he: ^1.2.0
marked: ^4.0.18
ultrahtml: ^0.1.1
dependencies:
+ he: 1.2.0
marked: 4.0.18
ultrahtml: 0.1.1
devDependencies:
- astro: 1.0.0-rc.7
+ astro: 1.3.0
packages/demo:
specifiers:
- astro: ^1.0.0-rc.7
- astro-remote: link:../astro-remote
+ astro: ^1.3.0
+ astro-remote: ^0.1.0
dependencies:
astro-remote: link:../astro-remote
devDependencies:
- astro: 1.0.0-rc.7
+ astro: 1.3.0
packages:
@@ -43,17 +45,23 @@ packages:
'@jridgewell/trace-mapping': 0.3.14
dev: true
- /@astrojs/compiler/0.23.1:
- resolution: {integrity: sha512-KsoDrASGwTKZoWXbjy8SlIeoDv7y1OfBJtHVLuPuzhConA8e0SZpGzFqIuVRfG4bhisSTptZLDQZ7oxwgPv2jA==}
+ /@astrojs/compiler/0.23.5:
+ resolution: {integrity: sha512-vBMPy9ok4iLapSyCCT1qsZ9dK7LkVFl9mObtLEmWiec9myGHS9h2kQY2xzPeFNJiWXUf9O6tSyQpQTy5As/p3g==}
+ dev: true
+
+ /@astrojs/compiler/0.24.0:
+ resolution: {integrity: sha512-xZ81C/oMfExdF18I1Tyd2BKKzBqO+qYYctSy4iCwH4UWSo/4Y8A8MAzV1hG67uuE7hFRourSl6H5KUbhyChv/A==}
dev: true
- /@astrojs/language-server/0.20.3:
- resolution: {integrity: sha512-MuzTsSpUjtmMXfrBThtZwgO39Jc+Bbl5hLevumkp01N/YCKE+Iipd3ELSdbk7+TPiuBV+/SKrVmaQPvJBnWPkA==}
+ /@astrojs/language-server/0.26.2:
+ resolution: {integrity: sha512-9nkfdd6CMXLDIJojnwbYu5XrYfOI+g63JlktOlpFCwFjFNpm1u0e/+pXXmj6Zs+PkSTo0kV1UM77dRKRS5OC1Q==}
hasBin: true
dependencies:
'@vscode/emmet-helper': 2.8.4
+ events: 3.3.0
+ prettier: 2.7.1
+ prettier-plugin-astro: 0.5.4
source-map: 0.7.4
- typescript: 4.6.4
vscode-css-languageservice: 6.0.1
vscode-html-languageservice: 5.0.1
vscode-languageserver: 8.0.2
@@ -63,14 +71,15 @@ packages:
vscode-uri: 3.0.3
dev: true
- /@astrojs/markdown-remark/0.14.1:
- resolution: {integrity: sha512-u072l5Nvb7GGMIBXmm65+IakPoF3nQ0ICIrDyFolznUB6e51AEa0ZGdpZa1jiT5fugR1gZgFPPJGcwWlSadZJA==}
+ /@astrojs/markdown-remark/1.1.2:
+ resolution: {integrity: sha512-afZWKRX7HFq1DdXq1jsUiqYee67Ln0Qan0yNgjNP2Nht0dxYD6JAK40+uiptKiRmP73cQjAVLGh54sgrruBDwA==}
dependencies:
'@astrojs/micromark-extension-mdx-jsx': 1.0.3
- '@astrojs/prism': 0.7.0
+ '@astrojs/prism': 1.0.1
acorn: 8.8.0
acorn-jsx: 5.3.2_acorn@8.8.0
github-slugger: 1.4.0
+ hast-util-to-html: 8.0.3
mdast-util-mdx-expression: 1.3.0
mdast-util-mdx-jsx: 1.2.0
micromark-extension-mdx-expression: 1.0.3
@@ -82,7 +91,7 @@ packages:
remark-parse: 10.0.1
remark-rehype: 10.1.0
remark-smartypants: 2.0.0
- shiki: 0.10.1
+ shiki: 0.11.1
unified: 10.1.2
unist-util-map: 3.1.1
unist-util-visit: 4.1.0
@@ -105,15 +114,15 @@ packages:
vfile-message: 3.1.2
dev: true
- /@astrojs/prism/0.7.0:
- resolution: {integrity: sha512-5gh4BL9BlgCKBru0crQI3Y7GQCCC389wLBy+0yPnfss/pA0rVgCupRnGcs3oinsRopymOlNblEDfJXdTbCWEtg==}
+ /@astrojs/prism/1.0.1:
+ resolution: {integrity: sha512-HxEFslvbv+cfOs51q/C7aMVFuW3EAGg0d1xXU/0e/QeScDzfrp5Ra4SOb8mV082SgENVjtVvet4zR84t3at4VQ==}
engines: {node: ^14.18.0 || >=16.12.0}
dependencies:
prismjs: 1.28.0
dev: true
- /@astrojs/telemetry/0.4.1:
- resolution: {integrity: sha512-xssM9IxVQGQHPNfzNlmbaQyevnD5CjSFNEszdYEoJRgsN0yzkxjgGzzVZ4Toq+7gwM5oSO2/oxNWVbP9loHEKg==}
+ /@astrojs/telemetry/1.0.0:
+ resolution: {integrity: sha512-a8edSHK2CpWrGubLp2RR2D/uC9Paa614hQM/lS4In2lhmcCjaQA9ZyYT6l44peuDwUNt1V82DqXk3TFiDBWM8g==}
engines: {node: ^14.18.0 || >=16.12.0}
dependencies:
ci-info: 3.3.2
@@ -128,8 +137,8 @@ packages:
- supports-color
dev: true
- /@astrojs/webapi/0.12.0:
- resolution: {integrity: sha512-rie5SYbvXVykKYBsNFnkUtDe7/0mGmrvj7Gg5pOKV34Cg/CrCJbvUSwH2oyCG2OLGtN2ttUOLvSgnVq3eipCsQ==}
+ /@astrojs/webapi/1.0.0:
+ resolution: {integrity: sha512-+klQ75oQbRdAMEbvAgrKE14hxh6GVHsQWZE4j/eJ2qhnvMSu7pw13MVQtFaAV96+pUkcYSjwWd1k+Oxoxkuo3g==}
dependencies:
node-fetch: 3.2.10
dev: true
@@ -585,6 +594,15 @@ packages:
resolution: {integrity: sha512-8HqW8EVqjnCmWXVpqAOZf+EGESdkR27odcMMMGefgKXtar00SoYNSryGv//TELI4T3QFsECo78p+0lmalk/CFA==}
dev: true
+ /@esbuild/android-arm/0.15.9:
+ resolution: {integrity: sha512-VZPy/ETF3fBG5PiinIkA0W/tlsvlEgJccyN2DzWZEl0DlVKRbu91PvY2D6Lxgluj4w9QtYHjOWjAT44C+oQ+EQ==}
+ engines: {node: '>=12'}
+ cpu: [arm]
+ os: [android]
+ requiresBuild: true
+ dev: true
+ optional: true
+
/@esbuild/linux-loong64/0.14.53:
resolution: {integrity: sha512-W2dAL6Bnyn4xa/QRSU3ilIK4EzD5wgYXKXJiS1HDF5vU3675qc2bvFyLwbUcdmssDveyndy7FbitrCoiV/eMLg==}
engines: {node: '>=12'}
@@ -594,6 +612,15 @@ packages:
dev: true
optional: true
+ /@esbuild/linux-loong64/0.15.9:
+ resolution: {integrity: sha512-O+NfmkfRrb3uSsTa4jE3WApidSe3N5++fyOVGP1SmMZi4A3BZELkhUUvj5hwmMuNdlpzAZ8iAPz2vmcR7DCFQA==}
+ engines: {node: '>=12'}
+ cpu: [loong64]
+ os: [linux]
+ requiresBuild: true
+ dev: true
+ optional: true
+
/@jridgewell/gen-mapping/0.1.1:
resolution: {integrity: sha512-sQXCasFk+U8lWYEe66WxRDOE9PjVz4vSM51fTu3Hw+ClTpUSQb718772vH3pyS5pShp6lvQM7SxgIDXXXmOX7w==}
engines: {node: '>=6.0.0'}
@@ -674,23 +701,35 @@ packages:
'@nodelib/fs.scandir': 2.1.5
fastq: 1.13.0
+ /@pkgr/utils/2.3.1:
+ resolution: {integrity: sha512-wfzX8kc1PMyUILA+1Z/EqoE4UCXGy0iRGMhPwdfae1+f0OXlLqCk+By+aMzgJBzR9AzS4CDizioG6Ss1gvAFJw==}
+ engines: {node: ^12.20.0 || ^14.18.0 || >=16.0.0}
+ dependencies:
+ cross-spawn: 7.0.3
+ is-glob: 4.0.3
+ open: 8.4.0
+ picocolors: 1.0.0
+ tiny-glob: 0.2.9
+ tslib: 2.4.0
+ dev: true
+
/@polka/url/1.0.0-next.21:
resolution: {integrity: sha512-a5Sab1C4/icpTZVzZc5Ghpz88yQtGOyNqYXcZgOssB2uuAr+wF/MvN6bgtW32q7HHrvBki+BsZ0OuNv6EV3K9g==}
dev: true
- /@proload/core/0.3.2:
- resolution: {integrity: sha512-4ga4HpS0ieVYWVMS+F62W++6SNACBu0lkw8snw3tEdH6AeqZu8i8262n3I81jWAWXVcg3sMfhb+kBexrfGrTUQ==}
+ /@proload/core/0.3.3:
+ resolution: {integrity: sha512-7dAFWsIK84C90AMl24+N/ProHKm4iw0akcnoKjRvbfHifJZBLhaDsDus1QJmhG12lXj4e/uB/8mB/0aduCW+NQ==}
dependencies:
deepmerge: 4.2.2
escalade: 3.1.1
dev: true
- /@proload/plugin-tsm/0.2.1_@proload+core@0.3.2:
+ /@proload/plugin-tsm/0.2.1_@proload+core@0.3.3:
resolution: {integrity: sha512-Ex1sL2BxU+g8MHdAdq9SZKz+pU34o8Zcl9PHWo2WaG9hrnlZme607PU6gnpoAYsDBpHX327+eu60wWUk+d/b+A==}
peerDependencies:
'@proload/core': ^0.3.2
dependencies:
- '@proload/core': 0.3.2
+ '@proload/core': 0.3.3
tsm: 2.2.2
dev: true
@@ -700,6 +739,35 @@ packages:
'@types/estree': 1.0.0
dev: true
+ /@types/babel__core/7.1.19:
+ resolution: {integrity: sha512-WEOTgRsbYkvA/KCsDwVEGkd7WAr1e3g31VHQ8zy5gul/V1qKullU/BU5I68X5v7V3GnB9eotmom4v5a5gjxorw==}
+ dependencies:
+ '@babel/parser': 7.18.11
+ '@babel/types': 7.18.10
+ '@types/babel__generator': 7.6.4
+ '@types/babel__template': 7.4.1
+ '@types/babel__traverse': 7.18.2
+ dev: true
+
+ /@types/babel__generator/7.6.4:
+ resolution: {integrity: sha512-tFkciB9j2K755yrTALxD44McOrk+gfpIpvC3sxHjRawj6PfnQxrse4Clq5y/Rq+G3mrBurMax/lG8Qn2t9mSsg==}
+ dependencies:
+ '@babel/types': 7.18.10
+ dev: true
+
+ /@types/babel__template/7.4.1:
+ resolution: {integrity: sha512-azBFKemX6kMg5Io+/rdGT0dkGreboUVR0Cdm3fz9QJWpaQGJRQXl7C+6hOTCZcMll7KFyEQpgbYI2lHdsS4U7g==}
+ dependencies:
+ '@babel/parser': 7.18.11
+ '@babel/types': 7.18.10
+ dev: true
+
+ /@types/babel__traverse/7.18.2:
+ resolution: {integrity: sha512-FcFaxOr2V5KZCviw1TnutEMVUVsGt4D2hP1TAfXZAMKuHYW3xQhe3jTxNPWutgCJ3/X1c5yX8ZoGVEItxKbwBg==}
+ dependencies:
+ '@babel/types': 7.18.10
+ dev: true
+
/@types/debug/4.1.7:
resolution: {integrity: sha512-9AonUzyTjXXhEOa0DnqpzZi6VHlqKMswga9EXjpXnnqxwLtdvPPtlO8evrI5D9S6asFRCQ6v+wpiUKbw+vKqyg==}
dependencies:
@@ -728,6 +796,10 @@ packages:
'@types/unist': 2.0.6
dev: true
+ /@types/html-escaper/3.0.0:
+ resolution: {integrity: sha512-OcJcvP3Yk8mjYwf/IdXZtTE1tb/u0WF0qa29ER07ZHCYUBZXSN29Z1mBS+/96+kNMGTFUAbSz9X+pHmHpZrTCw==}
+ dev: true
+
/@types/is-ci/3.0.0:
resolution: {integrity: sha512-Q0Op0hdWbYd1iahB+IFNQcWXFq4O0Q5MwQP7uN0souuQ4rPg1vEYcnIOfr1gY+M+6rc8FGoRaBO1mOOvL29sEQ==}
dependencies:
@@ -786,6 +858,10 @@ packages:
resolution: {integrity: sha512-PBjIUxZHOuj0R15/xuwJYjFi+KZdNFrehocChv4g5hu6aFroHue8m0lBP0POdK2nKzbw0cgV1mws8+V/JAcEkQ==}
dev: true
+ /@types/yargs-parser/21.0.0:
+ resolution: {integrity: sha512-iO9ZQHkZxHn4mSakYV0vFHAVDyEOIJQrV2uZ06HxEPcx+mt8swXoZHIbaaJ2crJYFfErySgktuTZ3BeLz+XmFA==}
+ dev: true
+
/@vscode/emmet-helper/2.8.4:
resolution: {integrity: sha512-lUki5QLS47bz/U8IlG9VQ+1lfxMtxMZENmU5nu4Z71eOD5j9FK0SmYGL5NiVJg9WBWeAU0VxRADMY2Qpq7BfVg==}
dependencies:
@@ -884,25 +960,27 @@ packages:
tslib: 2.4.0
dev: true
- /astro/1.0.0-rc.7:
- resolution: {integrity: sha512-FXUvSO2A40m7A7rMf3811yh5XA9X4qaJWlDg4m6TL9PkTIFfp9nyAl3EuX7r8rPmNTJ7EYevV0bDLk8ETWtN9w==}
+ /astro/1.3.0:
+ resolution: {integrity: sha512-cWBtLkkUcj38J0knrTaZvyoVFJxjOAWPRbECIXFxvGZ/ASNr+FNumeUk/u3uAGIF0pbqEgc+5zAvmPoe0pCd9w==}
engines: {node: ^14.18.0 || >=16.12.0, npm: '>=6.14.0'}
hasBin: true
dependencies:
- '@astrojs/compiler': 0.23.1
- '@astrojs/language-server': 0.20.3
- '@astrojs/markdown-remark': 0.14.1
- '@astrojs/telemetry': 0.4.1
- '@astrojs/webapi': 0.12.0
+ '@astrojs/compiler': 0.24.0
+ '@astrojs/language-server': 0.26.2
+ '@astrojs/markdown-remark': 1.1.2
+ '@astrojs/telemetry': 1.0.0
+ '@astrojs/webapi': 1.0.0
'@babel/core': 7.18.10
'@babel/generator': 7.18.12
'@babel/parser': 7.18.11
'@babel/plugin-transform-react-jsx': 7.18.10_@babel+core@7.18.10
'@babel/traverse': 7.18.11
'@babel/types': 7.18.10
- '@proload/core': 0.3.2
- '@proload/plugin-tsm': 0.2.1_@proload+core@0.3.2
- ast-types: 0.14.2
+ '@proload/core': 0.3.3
+ '@proload/plugin-tsm': 0.2.1_@proload+core@0.3.3
+ '@types/babel__core': 7.1.19
+ '@types/html-escaper': 3.0.0
+ '@types/yargs-parser': 21.0.0
boxen: 6.2.1
ci-info: 3.3.2
common-ancestor-path: 1.0.1
@@ -930,18 +1008,19 @@ packages:
recast: 0.20.5
rehype: 12.0.1
resolve: 1.22.1
- rollup: 2.77.2
+ rollup: 2.78.1
semver: 7.3.7
- shiki: 0.10.1
+ shiki: 0.11.1
sirv: 2.0.2
slash: 4.0.0
string-width: 5.1.2
strip-ansi: 7.0.1
supports-esm: 1.0.0
tsconfig-resolver: 3.0.1
+ typescript: 4.6.4
unist-util-visit: 4.1.0
vfile: 5.3.4
- vite: 3.0.4
+ vite: 3.1.3
yargs-parser: 21.1.1
zod: 3.17.10
transitivePeerDependencies:
@@ -1254,6 +1333,11 @@ packages:
dependencies:
clone: 1.0.4
+ /define-lazy-prop/2.0.0:
+ resolution: {integrity: sha512-Ds09qNh8yw3khSjiJjiUInaGX9xlqZDY7JVryGxdxV7NPeuqQfplOpQ66yJFZut3jLa5zOwkXw1g9EI2uKh4Og==}
+ engines: {node: '>=8'}
+ dev: true
+
/define-properties/1.1.4:
resolution: {integrity: sha512-uckOqKcfaVvtBdsVkdPv3XjveQJsNQqmhXgRi8uhvWWuPYZCNlzT8qAyblUgNoXdHdjMTzAqeGjAoli8f+bzPA==}
engines: {node: '>= 0.4'}
@@ -1394,6 +1478,15 @@ packages:
dev: true
optional: true
+ /esbuild-android-64/0.15.9:
+ resolution: {integrity: sha512-HQCX7FJn9T4kxZQkhPjNZC7tBWZqJvhlLHPU2SFzrQB/7nDXjmTIFpFTjt7Bd1uFpeXmuwf5h5fZm+x/hLnhbw==}
+ engines: {node: '>=12'}
+ cpu: [x64]
+ os: [android]
+ requiresBuild: true
+ dev: true
+ optional: true
+
/esbuild-android-arm64/0.14.53:
resolution: {integrity: sha512-PC7KaF1v0h/nWpvlU1UMN7dzB54cBH8qSsm7S9mkwFA1BXpaEOufCg8hdoEI1jep0KeO/rjZVWrsH8+q28T77A==}
engines: {node: '>=12'}
@@ -1403,6 +1496,15 @@ packages:
dev: true
optional: true
+ /esbuild-android-arm64/0.15.9:
+ resolution: {integrity: sha512-E6zbLfqbFVCNEKircSHnPiSTsm3fCRxeIMPfrkS33tFjIAoXtwegQfVZqMGR0FlsvVxp2NEDOUz+WW48COCjSg==}
+ engines: {node: '>=12'}
+ cpu: [arm64]
+ os: [android]
+ requiresBuild: true
+ dev: true
+ optional: true
+
/esbuild-darwin-64/0.14.53:
resolution: {integrity: sha512-gE7P5wlnkX4d4PKvLBUgmhZXvL7lzGRLri17/+CmmCzfncIgq8lOBvxGMiQ4xazplhxq+72TEohyFMZLFxuWvg==}
engines: {node: '>=12'}
@@ -1412,6 +1514,15 @@ packages:
dev: true
optional: true
+ /esbuild-darwin-64/0.15.9:
+ resolution: {integrity: sha512-gI7dClcDN/HHVacZhTmGjl0/TWZcGuKJ0I7/xDGJwRQQn7aafZGtvagOFNmuOq+OBFPhlPv1T6JElOXb0unkSQ==}
+ engines: {node: '>=12'}
+ cpu: [x64]
+ os: [darwin]
+ requiresBuild: true
+ dev: true
+ optional: true
+
/esbuild-darwin-arm64/0.14.53:
resolution: {integrity: sha512-otJwDU3hnI15Q98PX4MJbknSZ/WSR1I45il7gcxcECXzfN4Mrpft5hBDHXNRnCh+5858uPXBXA1Vaz2jVWLaIA==}
engines: {node: '>=12'}
@@ -1421,6 +1532,15 @@ packages:
dev: true
optional: true
+ /esbuild-darwin-arm64/0.15.9:
+ resolution: {integrity: sha512-VZIMlcRN29yg/sv7DsDwN+OeufCcoTNaTl3Vnav7dL/nvsApD7uvhVRbgyMzv0zU/PP0xRhhIpTyc7lxEzHGSw==}
+ engines: {node: '>=12'}
+ cpu: [arm64]
+ os: [darwin]
+ requiresBuild: true
+ dev: true
+ optional: true
+
/esbuild-freebsd-64/0.14.53:
resolution: {integrity: sha512-WkdJa8iyrGHyKiPF4lk0MiOF87Q2SkE+i+8D4Cazq3/iqmGPJ6u49je300MFi5I2eUsQCkaOWhpCVQMTKGww2w==}
engines: {node: '>=12'}
@@ -1430,6 +1550,15 @@ packages:
dev: true
optional: true
+ /esbuild-freebsd-64/0.15.9:
+ resolution: {integrity: sha512-uM4z5bTvuAXqPxrI204txhlsPIolQPWRMLenvGuCPZTnnGlCMF2QLs0Plcm26gcskhxewYo9LkkmYSS5Czrb5A==}
+ engines: {node: '>=12'}
+ cpu: [x64]
+ os: [freebsd]
+ requiresBuild: true
+ dev: true
+ optional: true
+
/esbuild-freebsd-arm64/0.14.53:
resolution: {integrity: sha512-9T7WwCuV30NAx0SyQpw8edbKvbKELnnm1FHg7gbSYaatH+c8WJW10g/OdM7JYnv7qkimw2ZTtSA+NokOLd2ydQ==}
engines: {node: '>=12'}
@@ -1439,6 +1568,15 @@ packages:
dev: true
optional: true
+ /esbuild-freebsd-arm64/0.15.9:
+ resolution: {integrity: sha512-HHDjT3O5gWzicGdgJ5yokZVN9K9KG05SnERwl9nBYZaCjcCgj/sX8Ps1jvoFSfNCO04JSsHSOWo4qvxFuj8FoA==}
+ engines: {node: '>=12'}
+ cpu: [arm64]
+ os: [freebsd]
+ requiresBuild: true
+ dev: true
+ optional: true
+
/esbuild-linux-32/0.14.53:
resolution: {integrity: sha512-VGanLBg5en2LfGDgLEUxQko2lqsOS7MTEWUi8x91YmsHNyzJVT/WApbFFx3MQGhkf+XdimVhpyo5/G0PBY91zg==}
engines: {node: '>=12'}
@@ -1448,6 +1586,15 @@ packages:
dev: true
optional: true
+ /esbuild-linux-32/0.15.9:
+ resolution: {integrity: sha512-AQIdE8FugGt1DkcekKi5ycI46QZpGJ/wqcMr7w6YUmOmp2ohQ8eO4sKUsOxNOvYL7hGEVwkndSyszR6HpVHLFg==}
+ engines: {node: '>=12'}
+ cpu: [ia32]
+ os: [linux]
+ requiresBuild: true
+ dev: true
+ optional: true
+
/esbuild-linux-64/0.14.53:
resolution: {integrity: sha512-pP/FA55j/fzAV7N9DF31meAyjOH6Bjuo3aSKPh26+RW85ZEtbJv9nhoxmGTd9FOqjx59Tc1ZbrJabuiXlMwuZQ==}
engines: {node: '>=12'}
@@ -1457,6 +1604,15 @@ packages:
dev: true
optional: true
+ /esbuild-linux-64/0.15.9:
+ resolution: {integrity: sha512-4RXjae7g6Qs7StZyiYyXTZXBlfODhb1aBVAjd+ANuPmMhWthQilWo7rFHwJwL7DQu1Fjej2sODAVwLbcIVsAYQ==}
+ engines: {node: '>=12'}
+ cpu: [x64]
+ os: [linux]
+ requiresBuild: true
+ dev: true
+ optional: true
+
/esbuild-linux-arm/0.14.53:
resolution: {integrity: sha512-/u81NGAVZMopbmzd21Nu/wvnKQK3pT4CrvQ8BTje1STXcQAGnfyKgQlj3m0j2BzYbvQxSy+TMck4TNV2onvoPA==}
engines: {node: '>=12'}
@@ -1466,6 +1622,15 @@ packages:
dev: true
optional: true
+ /esbuild-linux-arm/0.15.9:
+ resolution: {integrity: sha512-3Zf2GVGUOI7XwChH3qrnTOSqfV1V4CAc/7zLVm4lO6JT6wbJrTgEYCCiNSzziSju+J9Jhf9YGWk/26quWPC6yQ==}
+ engines: {node: '>=12'}
+ cpu: [arm]
+ os: [linux]
+ requiresBuild: true
+ dev: true
+ optional: true
+
/esbuild-linux-arm64/0.14.53:
resolution: {integrity: sha512-GDmWITT+PMsjCA6/lByYk7NyFssW4Q6in32iPkpjZ/ytSyH+xeEx8q7HG3AhWH6heemEYEWpTll/eui3jwlSnw==}
engines: {node: '>=12'}
@@ -1475,6 +1640,15 @@ packages:
dev: true
optional: true
+ /esbuild-linux-arm64/0.15.9:
+ resolution: {integrity: sha512-a+bTtxJmYmk9d+s2W4/R1SYKDDAldOKmWjWP0BnrWtDbvUBNOm++du0ysPju4mZVoEFgS1yLNW+VXnG/4FNwdQ==}
+ engines: {node: '>=12'}
+ cpu: [arm64]
+ os: [linux]
+ requiresBuild: true
+ dev: true
+ optional: true
+
/esbuild-linux-mips64le/0.14.53:
resolution: {integrity: sha512-d6/XHIQW714gSSp6tOOX2UscedVobELvQlPMkInhx1NPz4ThZI9uNLQ4qQJHGBGKGfu+rtJsxM4NVHLhnNRdWQ==}
engines: {node: '>=12'}
@@ -1484,6 +1658,15 @@ packages:
dev: true
optional: true
+ /esbuild-linux-mips64le/0.15.9:
+ resolution: {integrity: sha512-Zn9HSylDp89y+TRREMDoGrc3Z4Hs5u56ozZLQCiZAUx2+HdbbXbWdjmw3FdTJ/i7t5Cew6/Q+6kfO3KCcFGlyw==}
+ engines: {node: '>=12'}
+ cpu: [mips64el]
+ os: [linux]
+ requiresBuild: true
+ dev: true
+ optional: true
+
/esbuild-linux-ppc64le/0.14.53:
resolution: {integrity: sha512-ndnJmniKPCB52m+r6BtHHLAOXw+xBCWIxNnedbIpuREOcbSU/AlyM/2dA3BmUQhsHdb4w3amD5U2s91TJ3MzzA==}
engines: {node: '>=12'}
@@ -1493,6 +1676,15 @@ packages:
dev: true
optional: true
+ /esbuild-linux-ppc64le/0.15.9:
+ resolution: {integrity: sha512-OEiOxNAMH9ENFYqRsWUj3CWyN3V8P3ZXyfNAtX5rlCEC/ERXrCEFCJji/1F6POzsXAzxvUJrTSTCy7G6BhA6Fw==}
+ engines: {node: '>=12'}
+ cpu: [ppc64]
+ os: [linux]
+ requiresBuild: true
+ dev: true
+ optional: true
+
/esbuild-linux-riscv64/0.14.53:
resolution: {integrity: sha512-yG2sVH+QSix6ct4lIzJj329iJF3MhloLE6/vKMQAAd26UVPVkhMFqFopY+9kCgYsdeWvXdPgmyOuKa48Y7+/EQ==}
engines: {node: '>=12'}
@@ -1502,6 +1694,15 @@ packages:
dev: true
optional: true
+ /esbuild-linux-riscv64/0.15.9:
+ resolution: {integrity: sha512-ukm4KsC3QRausEFjzTsOZ/qqazw0YvJsKmfoZZm9QW27OHjk2XKSQGGvx8gIEswft/Sadp03/VZvAaqv5AIwNA==}
+ engines: {node: '>=12'}
+ cpu: [riscv64]
+ os: [linux]
+ requiresBuild: true
+ dev: true
+ optional: true
+
/esbuild-linux-s390x/0.14.53:
resolution: {integrity: sha512-OCJlgdkB+XPYndHmw6uZT7jcYgzmx9K+28PVdOa/eLjdoYkeAFvH5hTwX4AXGLZLH09tpl4bVsEtvuyUldaNCg==}
engines: {node: '>=12'}
@@ -1511,6 +1712,15 @@ packages:
dev: true
optional: true
+ /esbuild-linux-s390x/0.15.9:
+ resolution: {integrity: sha512-uDOQEH55wQ6ahcIKzQr3VyjGc6Po/xblLGLoUk3fVL1qjlZAibtQr6XRfy5wPJLu/M2o0vQKLq4lyJ2r1tWKcw==}
+ engines: {node: '>=12'}
+ cpu: [s390x]
+ os: [linux]
+ requiresBuild: true
+ dev: true
+ optional: true
+
/esbuild-netbsd-64/0.14.53:
resolution: {integrity: sha512-gp2SB+Efc7MhMdWV2+pmIs/Ja/Mi5rjw+wlDmmbIn68VGXBleNgiEZG+eV2SRS0kJEUyHNedDtwRIMzaohWedQ==}
engines: {node: '>=12'}
@@ -1520,6 +1730,15 @@ packages:
dev: true
optional: true
+ /esbuild-netbsd-64/0.15.9:
+ resolution: {integrity: sha512-yWgxaYTQz+TqX80wXRq6xAtb7GSBAp6gqLKfOdANg9qEmAI1Bxn04IrQr0Mzm4AhxvGKoHzjHjMgXbCCSSDxcw==}
+ engines: {node: '>=12'}
+ cpu: [x64]
+ os: [netbsd]
+ requiresBuild: true
+ dev: true
+ optional: true
+
/esbuild-openbsd-64/0.14.53:
resolution: {integrity: sha512-eKQ30ZWe+WTZmteDYg8S+YjHV5s4iTxeSGhJKJajFfQx9TLZJvsJX0/paqwP51GicOUruFpSUAs2NCc0a4ivQQ==}
engines: {node: '>=12'}
@@ -1529,6 +1748,15 @@ packages:
dev: true
optional: true
+ /esbuild-openbsd-64/0.15.9:
+ resolution: {integrity: sha512-JmS18acQl4iSAjrEha1MfEmUMN4FcnnrtTaJ7Qg0tDCOcgpPPQRLGsZqhes0vmx8VA6IqRyScqXvaL7+Q0Uf3A==}
+ engines: {node: '>=12'}
+ cpu: [x64]
+ os: [openbsd]
+ requiresBuild: true
+ dev: true
+ optional: true
+
/esbuild-sunos-64/0.14.53:
resolution: {integrity: sha512-OWLpS7a2FrIRukQqcgQqR1XKn0jSJoOdT+RlhAxUoEQM/IpytS3FXzCJM6xjUYtpO5GMY0EdZJp+ur2pYdm39g==}
engines: {node: '>=12'}
@@ -1538,6 +1766,15 @@ packages:
dev: true
optional: true
+ /esbuild-sunos-64/0.15.9:
+ resolution: {integrity: sha512-UKynGSWpzkPmXW3D2UMOD9BZPIuRaSqphxSCwScfEE05Be3KAmvjsBhht1fLzKpiFVJb0BYMd4jEbWMyJ/z1hQ==}
+ engines: {node: '>=12'}
+ cpu: [x64]
+ os: [sunos]
+ requiresBuild: true
+ dev: true
+ optional: true
+
/esbuild-windows-32/0.14.53:
resolution: {integrity: sha512-m14XyWQP5rwGW0tbEfp95U6A0wY0DYPInWBB7D69FAXUpBpBObRoGTKRv36lf2RWOdE4YO3TNvj37zhXjVL5xg==}
engines: {node: '>=12'}
@@ -1547,6 +1784,15 @@ packages:
dev: true
optional: true
+ /esbuild-windows-32/0.15.9:
+ resolution: {integrity: sha512-aqXvu4/W9XyTVqO/hw3rNxKE1TcZiEYHPsXM9LwYmKSX9/hjvfIJzXwQBlPcJ/QOxedfoMVH0YnhhQ9Ffb0RGA==}
+ engines: {node: '>=12'}
+ cpu: [ia32]
+ os: [win32]
+ requiresBuild: true
+ dev: true
+ optional: true
+
/esbuild-windows-64/0.14.53:
resolution: {integrity: sha512-s9skQFF0I7zqnQ2K8S1xdLSfZFsPLuOGmSx57h2btSEswv0N0YodYvqLcJMrNMXh6EynOmWD7rz+0rWWbFpIHQ==}
engines: {node: '>=12'}
@@ -1556,6 +1802,15 @@ packages:
dev: true
optional: true
+ /esbuild-windows-64/0.15.9:
+ resolution: {integrity: sha512-zm7h91WUmlS4idMtjvCrEeNhlH7+TNOmqw5dJPJZrgFaxoFyqYG6CKDpdFCQXdyKpD5yvzaQBOMVTCBVKGZDEg==}
+ engines: {node: '>=12'}
+ cpu: [x64]
+ os: [win32]
+ requiresBuild: true
+ dev: true
+ optional: true
+
/esbuild-windows-arm64/0.14.53:
resolution: {integrity: sha512-E+5Gvb+ZWts+00T9II6wp2L3KG2r3iGxByqd/a1RmLmYWVsSVUjkvIxZuJ3hYTIbhLkH5PRwpldGTKYqVz0nzQ==}
engines: {node: '>=12'}
@@ -1565,6 +1820,15 @@ packages:
dev: true
optional: true
+ /esbuild-windows-arm64/0.15.9:
+ resolution: {integrity: sha512-yQEVIv27oauAtvtuhJVfSNMztJJX47ismRS6Sv2QMVV9RM+6xjbMWuuwM2nxr5A2/gj/mu2z9YlQxiwoFRCfZA==}
+ engines: {node: '>=12'}
+ cpu: [arm64]
+ os: [win32]
+ requiresBuild: true
+ dev: true
+ optional: true
+
/esbuild/0.14.53:
resolution: {integrity: sha512-ohO33pUBQ64q6mmheX1mZ8mIXj8ivQY/L4oVuAshr+aJI+zLl+amrp3EodrUNDNYVrKJXGPfIHFGhO8slGRjuw==}
engines: {node: '>=12'}
@@ -1594,6 +1858,36 @@ packages:
esbuild-windows-arm64: 0.14.53
dev: true
+ /esbuild/0.15.9:
+ resolution: {integrity: sha512-OnYr1rkMVxtmMHIAKZLMcEUlJmqcbxBz9QoBU8G9v455na0fuzlT/GLu6l+SRghrk0Mm2fSSciMmzV43Q8e0Gg==}
+ engines: {node: '>=12'}
+ hasBin: true
+ requiresBuild: true
+ optionalDependencies:
+ '@esbuild/android-arm': 0.15.9
+ '@esbuild/linux-loong64': 0.15.9
+ esbuild-android-64: 0.15.9
+ esbuild-android-arm64: 0.15.9
+ esbuild-darwin-64: 0.15.9
+ esbuild-darwin-arm64: 0.15.9
+ esbuild-freebsd-64: 0.15.9
+ esbuild-freebsd-arm64: 0.15.9
+ esbuild-linux-32: 0.15.9
+ esbuild-linux-64: 0.15.9
+ esbuild-linux-arm: 0.15.9
+ esbuild-linux-arm64: 0.15.9
+ esbuild-linux-mips64le: 0.15.9
+ esbuild-linux-ppc64le: 0.15.9
+ esbuild-linux-riscv64: 0.15.9
+ esbuild-linux-s390x: 0.15.9
+ esbuild-netbsd-64: 0.15.9
+ esbuild-openbsd-64: 0.15.9
+ esbuild-sunos-64: 0.15.9
+ esbuild-windows-32: 0.15.9
+ esbuild-windows-64: 0.15.9
+ esbuild-windows-arm64: 0.15.9
+ dev: true
+
/escalade/3.1.1:
resolution: {integrity: sha512-k0er2gUkLf8O0zKJiAhmkTnJlTvINGv7ygDNPbeIsX/TJjGJZHuh9B2UxbsaEkmlEo9MfhrSzmhIlhRlI2GXnw==}
engines: {node: '>=6'}
@@ -1623,6 +1917,11 @@ packages:
'@types/unist': 2.0.6
dev: true
+ /events/3.3.0:
+ resolution: {integrity: sha512-mQw+2fkQbALzQ7V0MY0IqdnXNOeTtP4r0lN9z7AAawCXgqea7bDii20AYrIBrFd/Hx0M2Ocz6S111CaFkUcb0Q==}
+ engines: {node: '>=0.8.x'}
+ dev: true
+
/execa/6.1.0:
resolution: {integrity: sha512-QVWlX2e50heYJcCPG0iWtf8r0xjEYfz/OYLGDYH+IyjWezzPNxz63qNFOu0l4YftGWuizFVZHHs8PrLU5p2IDA==}
engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0}
@@ -1807,6 +2106,10 @@ packages:
engines: {node: '>=4'}
dev: true
+ /globalyzer/0.1.0:
+ resolution: {integrity: sha512-40oNTM9UfG6aBmuKxk/giHn5nQ8RVz/SS4Ir6zgzOv9/qC3kKZ9v4etGTcJbEl/NyVQH7FGU7d+X1egr57Md2Q==}
+ dev: true
+
/globby/11.1.0:
resolution: {integrity: sha512-jhIXaOzy1sb8IyocaruWSn1TjmnBVs8Ayhcy83rmxNJ8q2uWKCAj3CnJY+KpGSXCueAPc0i05kVvVKtP1t9S3g==}
engines: {node: '>=10'}
@@ -1819,6 +2122,10 @@ packages:
slash: 3.0.0
dev: false
+ /globrex/0.1.2:
+ resolution: {integrity: sha512-uHJgbwAMwNFf5mLst7IWLNg14x1CkeqglJb/K3doi4dw6q2IvAAmM/Y81kevy83wP+Sst+nutFTYOGg3d1lsxg==}
+ dev: true
+
/graceful-fs/4.2.10:
resolution: {integrity: sha512-9ByhssR2fPVsNZj478qUUbKfmL0+t5BDVyjShtyZZLiK7ZDAArFFfopyOTj0M05wE2tJPisA4iTnnXl2YoPvOA==}
@@ -1977,6 +2284,11 @@ packages:
space-separated-tokens: 2.0.1
dev: true
+ /he/1.2.0:
+ resolution: {integrity: sha512-F/1DnUGPopORZi0ni+CvrCgHQ5FyEAHRLSApuYWMmrbSwoN2Mn/7k+Gl38gJnR7yyDZk6WLXwiGod1JOWNDKGw==}
+ hasBin: true
+ dev: false
+
/hosted-git-info/2.8.9:
resolution: {integrity: sha512-mxIDAb9Lsm6DoOJ7xH+5+X4y1LU/4Hi50L9C5sIswK3JzULS4bwk1FvjdBgvYR4bzT4tuUQiC15FE2f5HbLvYw==}
dev: false
@@ -2992,6 +3304,15 @@ packages:
mimic-fn: 4.0.0
dev: true
+ /open/8.4.0:
+ resolution: {integrity: sha512-XgFPPM+B28FtCCgSb9I+s9szOC1vZRSwgWsRUA5ylIxRTgKozqjOCrVOqGsYABPYK5qnfqClxZTFBa8PKt2v6Q==}
+ engines: {node: '>=12'}
+ dependencies:
+ define-lazy-prop: 2.0.0
+ is-docker: 2.2.1
+ is-wsl: 2.2.0
+ dev: true
+
/ora/6.1.2:
resolution: {integrity: sha512-EJQ3NiP5Xo94wJXIzAyOtSb0QEIAUu7m8t6UZ9krbz0vAJqr92JpcK/lEXg91q6B9pEGqrykkd2EQplnifDSBw==}
engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0}
@@ -3174,6 +3495,16 @@ packages:
path-exists: 4.0.0
which-pm: 2.0.0
+ /prettier-plugin-astro/0.5.4:
+ resolution: {integrity: sha512-ILs/WgUYtKBOn3Zh217/PwjCFtUWEKQjcCFJDevri0hGEBwEnnda9aqSLL0/nhCOmQn/UE7M9zLQvThu970ZHw==}
+ engines: {node: ^14.15.0 || >=16.0.0, npm: '>=6.14.0'}
+ dependencies:
+ '@astrojs/compiler': 0.23.5
+ prettier: 2.7.1
+ sass-formatter: 0.7.5
+ synckit: 0.7.3
+ dev: true
+
/prettier/1.19.1:
resolution: {integrity: sha512-s7PoyDv/II1ObgQunCbB9PdLmUcBZcnWOcxDh7O0N/UwDEsHyqkW+Qh28jW+mVuCdx7gLB0BotYI1Y6uI9iyew==}
engines: {node: '>=4'}
@@ -3426,8 +3757,8 @@ packages:
resolution: {integrity: sha512-U9nH88a3fc/ekCF1l0/UP1IosiuIjyTh7hBvXVMHYgVcfGvt897Xguj2UOLDeI5BG2m7/uwyaLVT6fbtCwTyzw==}
engines: {iojs: '>=1.0.0', node: '>=0.10.0'}
- /rollup/2.77.2:
- resolution: {integrity: sha512-m/4YzYgLcpMQbxX3NmAqDvwLATZzxt8bIegO78FZLl+lAgKJBd1DRAOeEiZcKOIOPjxE6ewHWHNgGEalFXuz1g==}
+ /rollup/2.78.1:
+ resolution: {integrity: sha512-VeeCgtGi4P+o9hIg+xz4qQpRl6R401LWEXBmxYKOV4zlF82lyhgh2hTZnheFUbANE8l2A41F458iwj2vEYaXJg==}
engines: {node: '>=10.0.0'}
hasBin: true
optionalDependencies:
@@ -3439,6 +3770,10 @@ packages:
dependencies:
queue-microtask: 1.2.3
+ /s.color/0.0.15:
+ resolution: {integrity: sha512-AUNrbEUHeKY8XsYr/DYpl+qk5+aM+DChopnWOPEzn8YKzOhv4l2zH6LzZms3tOZP3wwdOyc0RmTciyi46HLIuA==}
+ dev: true
+
/sade/1.8.1:
resolution: {integrity: sha512-xal3CZX1Xlo/k4ApwCFrHVACi9fBqJ7V+mwhBsuf/1IOKbBy098Fex+Wa/5QMubw09pSZ/u8EY8PWgevJsXp1A==}
engines: {node: '>=6'}
@@ -3458,6 +3793,12 @@ packages:
resolution: {integrity: sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==}
dev: false
+ /sass-formatter/0.7.5:
+ resolution: {integrity: sha512-NKFP8ddjhUYi6A/iD1cEtzkEs91U61kzqe3lY9SVNuvX7LGc88xnEN0mmsWL7Ol//YTi2GL/ol7b9XZ2+hgXuA==}
+ dependencies:
+ suf-log: 2.5.3
+ dev: true
+
/section-matter/1.0.0:
resolution: {integrity: sha512-vfD3pmTzGpufjScBh50YHKzEu2lxBWhVEHsNGoEXmCmn2hKGfeNLYMzCJpe8cD7gqX7TJluOVpBkAequ6dgMmA==}
engines: {node: '>=4'}
@@ -3512,12 +3853,12 @@ packages:
engines: {node: '>=8'}
dev: true
- /shiki/0.10.1:
- resolution: {integrity: sha512-VsY7QJVzU51j5o1+DguUd+6vmCmZ5v/6gYu4vyYAhzjuNQU6P/vmSy4uQaOhvje031qQMiW0d2BwgMH52vqMng==}
+ /shiki/0.11.1:
+ resolution: {integrity: sha512-EugY9VASFuDqOexOgXR18ZV+TbFrQHeCpEYaXamO+SZlsnT/2LxuLBX25GGtIrwaEVFXUAbUQ601SWE2rMwWHA==}
dependencies:
jsonc-parser: 3.1.0
vscode-oniguruma: 1.6.2
- vscode-textmate: 5.2.0
+ vscode-textmate: 6.0.0
dev: true
/side-channel/1.0.4:
@@ -3719,6 +4060,12 @@ packages:
inline-style-parser: 0.1.1
dev: true
+ /suf-log/2.5.3:
+ resolution: {integrity: sha512-KvC8OPjzdNOe+xQ4XWJV2whQA0aM1kGVczMQ8+dStAO6KfEB140JEVQ9dE76ONZ0/Ylf67ni4tILPJB41U0eow==}
+ dependencies:
+ s.color: 0.0.15
+ dev: true
+
/supports-color/5.5.0:
resolution: {integrity: sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==}
engines: {node: '>=4'}
@@ -3741,11 +4088,26 @@ packages:
resolution: {integrity: sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w==}
engines: {node: '>= 0.4'}
+ /synckit/0.7.3:
+ resolution: {integrity: sha512-jNroMv7Juy+mJ/CHW5H6TzsLWpa1qck6sCHbkv8YTur+irSq2PjbvmGnm2gy14BUQ6jF33vyR4DPssHqmqsDQw==}
+ engines: {node: ^12.20.0 || ^14.18.0 || >=16.0.0}
+ dependencies:
+ '@pkgr/utils': 2.3.1
+ tslib: 2.4.0
+ dev: true
+
/term-size/2.2.1:
resolution: {integrity: sha512-wK0Ri4fOGjv/XPy8SBHZChl8CM7uMc5VML7SqiQ0zG7+J5Vr+RMQDoHa2CNT6KHUnTGIXH34UDMkPzAUyapBZg==}
engines: {node: '>=8'}
dev: false
+ /tiny-glob/0.2.9:
+ resolution: {integrity: sha512-g/55ssRPUjShh+xkfx9UPDXqhckHEsHr4Vd9zX55oSdGZc/MD0m3sferOkwWtp98bv+kcVfEHtRJgBVJzelrzg==}
+ dependencies:
+ globalyzer: 0.1.0
+ globrex: 0.1.2
+ dev: true
+
/tmp/0.0.33:
resolution: {integrity: sha512-jRCJlojKnZ3addtTOjdIqoRuPEKBvNXcGYqzO6zWZX8KfKEpnGY5jfggJQ3EjKuu8D4bJRr0y+cYJFmYbImXGw==}
engines: {node: '>=0.6.0'}
@@ -4008,8 +4370,8 @@ packages:
vfile-message: 3.1.2
dev: true
- /vite/3.0.4:
- resolution: {integrity: sha512-NU304nqnBeOx2MkQnskBQxVsa0pRAH5FphokTGmyy8M3oxbvw7qAXts2GORxs+h/2vKsD+osMhZ7An6yK6F1dA==}
+ /vite/3.1.3:
+ resolution: {integrity: sha512-/3XWiktaopByM5bd8dqvHxRt5EEgRikevnnrpND0gRfNkrMrPaGGexhtLCzv15RcCMtV2CLw+BPas8YFeSG0KA==}
engines: {node: ^14.18.0 || >=16.0.0}
hasBin: true
peerDependencies:
@@ -4027,10 +4389,10 @@ packages:
terser:
optional: true
dependencies:
- esbuild: 0.14.53
+ esbuild: 0.15.9
postcss: 8.4.16
resolve: 1.22.1
- rollup: 2.77.2
+ rollup: 2.78.1
optionalDependencies:
fsevents: 2.3.2
dev: true
@@ -4088,8 +4450,8 @@ packages:
resolution: {integrity: sha512-KH8+KKov5eS/9WhofZR8M8dMHWN2gTxjMsG4jd04YhpbPR91fUj7rYQ2/XjeHCJWbg7X++ApRIU9NUwM2vTvLA==}
dev: true
- /vscode-textmate/5.2.0:
- resolution: {integrity: sha512-Uw5ooOQxRASHgu6C7GVvUxisKXfSgW4oFlO+aa+PAkgmH89O3CXxEEzNRNtHSqtXFTl0nAC1uYj0GMSH27uwtQ==}
+ /vscode-textmate/6.0.0:
+ resolution: {integrity: sha512-gu73tuZfJgu+mvCSy4UZwd2JXykjK9zAZsfmDeut5dx/1a7FeTk0XwJsSuqQn+cuMCGVbIBfl+s53X4T19DnzQ==}
dev: true
/vscode-uri/2.1.2: