From b6a8fd9ad3d9ce4e9925a734e86859eb95b59c48 Mon Sep 17 00:00:00 2001
From: Arno V
Date: Mon, 18 Mar 2024 10:07:32 -0400
Subject: [PATCH] docs: better code highlight with Prism (#428)
## Summary by CodeRabbit
- **New Features**
- Enhanced code presentation in the documentation with syntax
highlighting using `prism-react-renderer`.
- Added a new story in the "Getting Started" section, demonstrating the
usage of UI components with highlighted code blocks.
- **Documentation**
- Updated the `Getting Started` documentation to include
syntax-highlighted code blocks for installation, configuration, and
usage sections.
- **Dependencies**
- Updated `@ladle/react` to version `4.0.3`.
- Added `prism-react-renderer` version `2.3.1` to improve documentation
readability.
---
packages/documentation/package.json | 4 +-
.../GettingStarted/2-Installation.stories.tsx | 53 ++-
.../3-configuration.stories.tsx | 39 +-
.../src/GettingStarted/4-usage.stories.mdx | 69 ----
.../src/GettingStarted/4-usage.stories.tsx | 89 +++++
pnpm-lock.yaml | 339 ++++++------------
6 files changed, 278 insertions(+), 315 deletions(-)
delete mode 100644 packages/documentation/src/GettingStarted/4-usage.stories.mdx
create mode 100644 packages/documentation/src/GettingStarted/4-usage.stories.tsx
diff --git a/packages/documentation/package.json b/packages/documentation/package.json
index a99fc29e..595d1808 100644
--- a/packages/documentation/package.json
+++ b/packages/documentation/package.json
@@ -17,7 +17,7 @@
"test": "echo \"WARNING: no test specified\" && exit 0"
},
"devDependencies": {
- "@ladle/react": "4.0.2"
+ "@ladle/react": "4.0.3"
},
"dependencies": {
"@tailwindcss/typography": "0.5.10",
@@ -27,6 +27,8 @@
"@versini/ui-styles": "workspace:../ui-styles",
"@versini/ui-system": "workspace:../ui-system",
"clsx": "2.1.0",
+ "prismjs": "1.29.0",
+ "prism-react-renderer": "2.3.1",
"react": "18.2.0",
"react-dom": "18.2.0",
"tailwindcss": "3.4.1"
diff --git a/packages/documentation/src/GettingStarted/2-Installation.stories.tsx b/packages/documentation/src/GettingStarted/2-Installation.stories.tsx
index 120cb830..ceedf31a 100644
--- a/packages/documentation/src/GettingStarted/2-Installation.stories.tsx
+++ b/packages/documentation/src/GettingStarted/2-Installation.stories.tsx
@@ -1,3 +1,5 @@
+/* eslint-disable @typescript-eslint/ban-ts-comment */
+
import { linkTo, Story } from "@ladle/react";
import {
ButtonIcon,
@@ -9,11 +11,16 @@ import {
} from "@versini/ui-components";
import { IconNext, IconPrevious } from "@versini/ui-icons";
import { Flexgrid, FlexgridItem } from "@versini/ui-system";
+import { Highlight, Prism, themes } from "prism-react-renderer";
export default {
title: "Getting Started",
};
+(typeof global !== "undefined" ? global : window).Prism = Prism;
+// @ts-ignore
+await import("prismjs/components/prism-bash");
+
const data = [
{
id: 1,
@@ -83,19 +90,45 @@ export const Installation: Story = () => (
If you only need some core components and of course the CSS styles
associated1, use the following command:
-
-
- {`$ npm install --save-dev @versini/ui-styles
-$ npm install --save @versini/ui-components
-`}
-
-
+
+ {({ style, tokens, getLineProps, getTokenProps }) => (
+
+ {tokens.map((line, i) => (
+
+ {line.map((token, key) => (
+
+ ))}
+
+ ))}
+
+ )}
+
+
You also need to install React and React-DOM (at least 18.0.0 or above).
-
- $ npm install --save react react-dom
-
+
+ {({ style, tokens, getLineProps, getTokenProps }) => (
+
+ {tokens.map((line, i) => (
+
+ {line.map((token, key) => (
+
+ ))}
+
+ ))}
+
+ )}
+
1{" "}
diff --git a/packages/documentation/src/GettingStarted/3-configuration.stories.tsx b/packages/documentation/src/GettingStarted/3-configuration.stories.tsx
index 601d4603..234d1d17 100644
--- a/packages/documentation/src/GettingStarted/3-configuration.stories.tsx
+++ b/packages/documentation/src/GettingStarted/3-configuration.stories.tsx
@@ -2,11 +2,22 @@ import { linkTo, Story } from "@ladle/react";
import { ButtonIcon } from "@versini/ui-components";
import { IconNext, IconPrevious } from "@versini/ui-icons";
import { Flexgrid, FlexgridItem } from "@versini/ui-system";
+import { Highlight, themes } from "prism-react-renderer";
export default {
title: "Getting Started",
};
+const codeBlock = `// tailwind.config.js
+/** @type {import('tailwindcss').Config} */
+
+import { twPlugin } from "@versini/ui-styles";
+
+export default twPlugin.merge({
+ // this is an example, you can change the path to your files
+ content: ["./src/**/*.{js,ts,jsx,tsx}"],
+});`;
+
export const Configuration: Story = () => (
<>
Configuration
@@ -44,19 +55,21 @@ export const Configuration: Story = () => (
you can take advantage of tree-shaking unused styles:
-
-
- {`// tailwind.config.js
-/** @type {import('tailwindcss').Config} */
-
-import { twPlugin } from "@versini/ui-styles";
-
-export default twPlugin.merge({
- // this is an example, you can change the path to your files
- content: ["./src/**/*.{js,ts,jsx,tsx}"],
-});`}
-
-
+
+
+ {({ style, tokens, getLineProps, getTokenProps }) => (
+
+ {tokens.map((line, i) => (
+
+ {line.map((token, key) => (
+
+ ))}
+
+ ))}
+
+ )}
+
+
diff --git a/packages/documentation/src/GettingStarted/4-usage.stories.mdx b/packages/documentation/src/GettingStarted/4-usage.stories.mdx
deleted file mode 100644
index 153cd70e..00000000
--- a/packages/documentation/src/GettingStarted/4-usage.stories.mdx
+++ /dev/null
@@ -1,69 +0,0 @@
-import { linkTo, Meta } from "@ladle/react";
-import { Button, ButtonIcon, Card } from "@versini/ui-components";
-import { Flexgrid, FlexgridItem } from "@versini/ui-system";
-import { IconNext, IconPrevious } from "@versini/ui-icons";
-
-
-
-Usage
-
-```jsx
-// App.jsx
-import { Button, Card } from "@versini/ui-components";
-
-/**
- * Now that the required components are
- * available in the scope, you can use them
- * in your return method in JSX:
- */
-function App() {
- return (
-
- Hooray
-
- }
- >
- Hello World
-
- );
-}
-```
-
-
- {"If everything works well, this is what you should see in your page:"}
-
-
-
- Hooray
-
- }
->
- Hello World
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/packages/documentation/src/GettingStarted/4-usage.stories.tsx b/packages/documentation/src/GettingStarted/4-usage.stories.tsx
new file mode 100644
index 00000000..b3bdc2e6
--- /dev/null
+++ b/packages/documentation/src/GettingStarted/4-usage.stories.tsx
@@ -0,0 +1,89 @@
+import { linkTo, Story } from "@ladle/react";
+import { Button, ButtonIcon, Card } from "@versini/ui-components";
+import { IconNext, IconPrevious } from "@versini/ui-icons";
+import { Flexgrid, FlexgridItem } from "@versini/ui-system";
+import { Highlight, themes } from "prism-react-renderer";
+
+export default {
+ title: "Getting Started",
+};
+
+const codeBlock = `// App.tsx
+import { Button, Card } from "@versini/ui-components";
+
+/**
+ * Now that the required components are
+ * available in the scope, you can use them
+ * in your return method in JSX:
+ */
+function App() {
+ return (
+
+ Hooray
+
+ }
+ >
+ Hello World
+
+ );
+}`;
+
+export const Usage: Story = () => (
+ <>
+ Usage
+
+ Example
+
+
+ {({ style, tokens, getLineProps, getTokenProps }) => (
+
+ {tokens.map((line, i) => (
+
+ {line.map((token, key) => (
+
+ ))}
+
+ ))}
+
+ )}
+
+
+
+ {"If everything works well, this is what you should see in your page:"}
+
+
+ Hooray
+
+ }
+ >
+ Hello World
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ >
+);
diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml
index 2450f22d..ecd7f881 100644
--- a/pnpm-lock.yaml
+++ b/pnpm-lock.yaml
@@ -151,6 +151,12 @@ importers:
clsx:
specifier: 2.1.0
version: 2.1.0
+ prism-react-renderer:
+ specifier: 2.3.1
+ version: 2.3.1(react@18.2.0)
+ prismjs:
+ specifier: 1.29.0
+ version: 1.29.0
react:
specifier: 18.2.0
version: 18.2.0
@@ -162,8 +168,8 @@ importers:
version: 3.4.1
devDependencies:
'@ladle/react':
- specifier: 4.0.2
- version: 4.0.2(@types/react@18.2.66)(react-dom@18.2.0)(react@18.2.0)(typescript@5.4.2)
+ specifier: 4.0.3
+ version: 4.0.3(@types/react@18.2.66)(react-dom@18.2.0)(react@18.2.0)(typescript@5.4.2)
packages/eslint-plugin-client:
dependencies:
@@ -351,20 +357,20 @@ packages:
engines: {node: '>=6.9.0'}
dev: true
- /@babel/core@7.23.9:
- resolution: {integrity: sha512-5q0175NOjddqpvvzU+kDiSOAk4PfdO6FvwCWoQ6RO7rTzEe8vlo+4HVfcnAREhD4npMs0e9uZypjTwzZPCf/cw==}
+ /@babel/core@7.24.0:
+ resolution: {integrity: sha512-fQfkg0Gjkza3nf0c7/w6Xf34BW4YvzNfACRLmmb7XRLa6XHdR+K9AlJlxneFfWYf6uhOzuzZVTjF/8KfndZANw==}
engines: {node: '>=6.9.0'}
dependencies:
'@ampproject/remapping': 2.2.1
'@babel/code-frame': 7.23.5
'@babel/generator': 7.23.6
'@babel/helper-compilation-targets': 7.23.6
- '@babel/helper-module-transforms': 7.23.3(@babel/core@7.23.9)
- '@babel/helpers': 7.23.9
- '@babel/parser': 7.23.9
- '@babel/template': 7.23.9
- '@babel/traverse': 7.23.9
- '@babel/types': 7.23.9
+ '@babel/helper-module-transforms': 7.23.3(@babel/core@7.24.0)
+ '@babel/helpers': 7.24.0
+ '@babel/parser': 7.24.0
+ '@babel/template': 7.24.0
+ '@babel/traverse': 7.24.0
+ '@babel/types': 7.24.0
convert-source-map: 2.0.0
debug: 4.3.4(supports-color@5.5.0)
gensync: 1.0.0-beta.2
@@ -378,9 +384,9 @@ packages:
resolution: {integrity: sha512-qrSfCYxYQB5owCmGLbl8XRpX1ytXlpueOb0N0UmQwA073KZxejgQTzAmJezxvpwQD9uGtK2shHdi55QT+MbjIw==}
engines: {node: '>=6.9.0'}
dependencies:
- '@babel/types': 7.23.9
+ '@babel/types': 7.24.0
'@jridgewell/gen-mapping': 0.3.3
- '@jridgewell/trace-mapping': 0.3.22
+ '@jridgewell/trace-mapping': 0.3.25
jsesc: 2.5.2
dev: true
@@ -390,7 +396,7 @@ packages:
dependencies:
'@babel/compat-data': 7.23.5
'@babel/helper-validator-option': 7.23.5
- browserslist: 4.22.3
+ browserslist: 4.23.0
lru-cache: 5.1.1
semver: 6.3.1
dev: true
@@ -404,31 +410,31 @@ packages:
resolution: {integrity: sha512-OErEqsrxjZTJciZ4Oo+eoZqeW9UIiOcuYKRJA4ZAgV9myA+pOXhhmpfNCKjEH/auVfEYVFJ6y1Tc4r0eIApqiw==}
engines: {node: '>=6.9.0'}
dependencies:
- '@babel/template': 7.23.9
- '@babel/types': 7.23.9
+ '@babel/template': 7.24.0
+ '@babel/types': 7.24.0
dev: true
/@babel/helper-hoist-variables@7.22.5:
resolution: {integrity: sha512-wGjk9QZVzvknA6yKIUURb8zY3grXCcOZt+/7Wcy8O2uctxhplmUPkOdlgoNhmdVee2c92JXbf1xpMtVNbfoxRw==}
engines: {node: '>=6.9.0'}
dependencies:
- '@babel/types': 7.23.9
+ '@babel/types': 7.24.0
dev: true
/@babel/helper-module-imports@7.22.15:
resolution: {integrity: sha512-0pYVBnDKZO2fnSPCrgM/6WMc7eS20Fbok+0r88fp+YtWVLZrp4CkafFGIp+W0VKw4a22sgebPT99y+FDNMdP4w==}
engines: {node: '>=6.9.0'}
dependencies:
- '@babel/types': 7.23.9
+ '@babel/types': 7.24.0
dev: true
- /@babel/helper-module-transforms@7.23.3(@babel/core@7.23.9):
+ /@babel/helper-module-transforms@7.23.3(@babel/core@7.24.0):
resolution: {integrity: sha512-7bBs4ED9OmswdfDzpz4MpWgSrV7FXlc3zIagvLFjS5H+Mk7Snr21vQ6QwrsoCGMfNC4e4LQPdoULEt4ykz0SRQ==}
engines: {node: '>=6.9.0'}
peerDependencies:
'@babel/core': ^7.0.0
dependencies:
- '@babel/core': 7.23.9
+ '@babel/core': 7.24.0
'@babel/helper-environment-visitor': 7.22.20
'@babel/helper-module-imports': 7.22.15
'@babel/helper-simple-access': 7.22.5
@@ -445,14 +451,14 @@ packages:
resolution: {integrity: sha512-n0H99E/K+Bika3++WNL17POvo4rKWZ7lZEp1Q+fStVbUi8nxPQEBOlTmCOxW/0JsS56SKKQ+ojAe2pHKJHN35w==}
engines: {node: '>=6.9.0'}
dependencies:
- '@babel/types': 7.23.9
+ '@babel/types': 7.24.0
dev: true
/@babel/helper-split-export-declaration@7.22.6:
resolution: {integrity: sha512-AsUnxuLhRYsisFiaJwvp1QF+I3KjD5FOxut14q/GzovUe6orHLesW2C7d754kRm53h5gqrz6sFl6sxc4BVtE/g==}
engines: {node: '>=6.9.0'}
dependencies:
- '@babel/types': 7.23.9
+ '@babel/types': 7.24.0
dev: true
/@babel/helper-string-parser@7.23.4:
@@ -470,13 +476,13 @@ packages:
engines: {node: '>=6.9.0'}
dev: true
- /@babel/helpers@7.23.9:
- resolution: {integrity: sha512-87ICKgU5t5SzOT7sBMfCOZQ2rHjRU+Pcb9BoILMYz600W6DkVRLFBPwQ18gwUVvggqXivaUakpnxWQGbpywbBQ==}
+ /@babel/helpers@7.24.0:
+ resolution: {integrity: sha512-ulDZdc0Aj5uLc5nETsa7EPx2L7rM0YJM8r7ck7U73AXi7qOV44IHHRAYZHY6iU1rr3C5N4NtTmMRUJP6kwCWeA==}
engines: {node: '>=6.9.0'}
dependencies:
- '@babel/template': 7.23.9
- '@babel/traverse': 7.23.9
- '@babel/types': 7.23.9
+ '@babel/template': 7.24.0
+ '@babel/traverse': 7.24.0
+ '@babel/types': 7.24.0
transitivePeerDependencies:
- supports-color
dev: true
@@ -498,23 +504,31 @@ packages:
'@babel/types': 7.23.9
dev: true
- /@babel/plugin-transform-react-jsx-self@7.23.3(@babel/core@7.23.9):
+ /@babel/parser@7.24.0:
+ resolution: {integrity: sha512-QuP/FxEAzMSjXygs8v4N9dvdXzEHN4W1oF3PxuWAtPo08UdM17u89RDMgjLn/mlc56iM0HlLmVkO/wgR+rDgHg==}
+ engines: {node: '>=6.0.0'}
+ hasBin: true
+ dependencies:
+ '@babel/types': 7.24.0
+ dev: true
+
+ /@babel/plugin-transform-react-jsx-self@7.23.3(@babel/core@7.24.0):
resolution: {integrity: sha512-qXRvbeKDSfwnlJnanVRp0SfuWE5DQhwQr5xtLBzp56Wabyo+4CMosF6Kfp+eOD/4FYpql64XVJ2W0pVLlJZxOQ==}
engines: {node: '>=6.9.0'}
peerDependencies:
'@babel/core': ^7.0.0-0
dependencies:
- '@babel/core': 7.23.9
+ '@babel/core': 7.24.0
'@babel/helper-plugin-utils': 7.22.5
dev: true
- /@babel/plugin-transform-react-jsx-source@7.23.3(@babel/core@7.23.9):
+ /@babel/plugin-transform-react-jsx-source@7.23.3(@babel/core@7.24.0):
resolution: {integrity: sha512-91RS0MDnAWDNvGC6Wio5XYkyWI39FMFO+JK9+4AlgaTH+yWwVTsw7/sn6LK0lH7c5F+TFkpv/3LfCJ1Ydwof/g==}
engines: {node: '>=6.9.0'}
peerDependencies:
'@babel/core': ^7.0.0-0
dependencies:
- '@babel/core': 7.23.9
+ '@babel/core': 7.24.0
'@babel/helper-plugin-utils': 7.22.5
dev: true
@@ -525,17 +539,17 @@ packages:
regenerator-runtime: 0.14.1
dev: true
- /@babel/template@7.23.9:
- resolution: {integrity: sha512-+xrD2BWLpvHKNmX2QbpdpsBaWnRxahMwJjO+KZk2JOElj5nSmKezyS1B4u+QbHMTX69t4ukm6hh9lsYQ7GHCKA==}
+ /@babel/template@7.24.0:
+ resolution: {integrity: sha512-Bkf2q8lMB0AFpX0NFEqSbx1OkTHf0f+0j82mkw+ZpzBnkk7e9Ql0891vlfgi+kHwOk8tQjiQHpqh4LaSa0fKEA==}
engines: {node: '>=6.9.0'}
dependencies:
'@babel/code-frame': 7.23.5
- '@babel/parser': 7.23.9
- '@babel/types': 7.23.9
+ '@babel/parser': 7.24.0
+ '@babel/types': 7.24.0
dev: true
- /@babel/traverse@7.23.9:
- resolution: {integrity: sha512-I/4UJ9vs90OkBtY6iiiTORVMyIhJ4kAVmsKo9KFc8UOxMeUfi2hvtIBsET5u9GizXE6/GFSuKCTNfgCswuEjRg==}
+ /@babel/traverse@7.24.0:
+ resolution: {integrity: sha512-HfuJlI8qq3dEDmNU5ChzzpZRWq+oxCZQyMzIMEqLho+AQnhMnKQUzH6ydo3RBl/YjPCuk68Y6s0Gx0AeyULiWw==}
engines: {node: '>=6.9.0'}
dependencies:
'@babel/code-frame': 7.23.5
@@ -544,8 +558,8 @@ packages:
'@babel/helper-function-name': 7.23.0
'@babel/helper-hoist-variables': 7.22.5
'@babel/helper-split-export-declaration': 7.22.6
- '@babel/parser': 7.23.9
- '@babel/types': 7.23.9
+ '@babel/parser': 7.24.0
+ '@babel/types': 7.24.0
debug: 4.3.4(supports-color@5.5.0)
globals: 11.12.0
transitivePeerDependencies:
@@ -561,6 +575,15 @@ packages:
to-fast-properties: 2.0.0
dev: true
+ /@babel/types@7.24.0:
+ resolution: {integrity: sha512-+j7a5c253RfKh8iABBhywc8NSfP5LURe7Uh4qpsh6jc+aLJguvmIUBdjSdEMQv2bENrCR5MfRdjGo7vzS/ob7w==}
+ engines: {node: '>=6.9.0'}
+ dependencies:
+ '@babel/helper-string-parser': 7.23.4
+ '@babel/helper-validator-identifier': 7.22.20
+ to-fast-properties: 2.0.0
+ dev: true
+
/@bcoe/v8-coverage@0.2.3:
resolution: {integrity: sha512-0hYQ8SB4Db5zvZB4axdMHGwEaQjkZzFjQiN9LVYvIFB2nSUHW9tYpxWriPrWDASIxiaXax83REcLxuSdnGPZtw==}
dev: true
@@ -923,7 +946,7 @@ packages:
dependencies:
'@inquirer/type': 1.2.0
'@types/mute-stream': 0.0.4
- '@types/node': 20.11.17
+ '@types/node': 20.11.28
'@types/wrap-ansi': 3.0.0
ansi-escapes: 4.3.2
chalk: 4.1.2
@@ -1033,8 +1056,8 @@ packages:
react-dom: 18.2.0(react@18.2.0)
dev: true
- /@ladle/react@4.0.2(@types/react@18.2.66)(react-dom@18.2.0)(react@18.2.0)(typescript@5.4.2):
- resolution: {integrity: sha512-SnYniR/U7kJX1Zh199jhjxqiFa5e5eA8chuX6uYEZYAUtCCY/hQqGr7/7Grr0j6Q4FYu9iQyyV2K1NJKDdUZIw==}
+ /@ladle/react@4.0.3(@types/react@18.2.66)(react-dom@18.2.0)(react@18.2.0)(typescript@5.4.2):
+ resolution: {integrity: sha512-O/iKMPZ27y8EdiyVREmY9aohuZiiDbsT+xtHPlhREo9ln5n/jwjyesZSZm6PhCgrOHQjcyFr8FkoyiANPqt5Ig==}
engines: {node: '>=18.0.0'}
hasBin: true
peerDependencies:
@@ -1042,35 +1065,35 @@ packages:
react-dom: '>=18.0.0'
dependencies:
'@babel/code-frame': 7.23.5
- '@babel/core': 7.23.9
+ '@babel/core': 7.24.0
'@babel/generator': 7.23.6
- '@babel/parser': 7.23.9
- '@babel/template': 7.23.9
- '@babel/traverse': 7.23.9
- '@babel/types': 7.23.9
+ '@babel/parser': 7.24.0
+ '@babel/template': 7.24.0
+ '@babel/traverse': 7.24.0
+ '@babel/types': 7.24.0
'@ladle/react-context': 1.0.1(react-dom@18.2.0)(react@18.2.0)
'@mdx-js/mdx': 3.0.1
'@mdx-js/react': 3.0.1(@types/react@18.2.66)(react@18.2.0)
- '@vitejs/plugin-react': 4.2.1(vite@5.1.0)
- '@vitejs/plugin-react-swc': 3.6.0(vite@5.1.0)
- axe-core: 4.8.3
+ '@vitejs/plugin-react': 4.2.1(vite@5.1.6)
+ '@vitejs/plugin-react-swc': 3.6.0(vite@5.1.6)
+ axe-core: 4.8.4
boxen: 7.1.1
chokidar: 3.6.0
classnames: 2.5.1
- commander: 11.1.0
+ commander: 12.0.0
cross-spawn: 7.0.3
debug: 4.3.4(supports-color@5.5.0)
get-port: 7.0.0
globby: 14.0.1
history: 5.3.0
- koa: 2.15.0
+ koa: 2.15.1
koa-connect: 2.1.0
lodash.merge: 4.6.2
- msw: 2.2.0(typescript@5.4.2)
- open: 9.1.0
+ msw: 2.2.7(typescript@5.4.2)
+ open: 10.1.0
prism-react-renderer: 2.3.1(react@18.2.0)
prop-types: 15.8.1
- query-string: 8.2.0
+ query-string: 9.0.0
react: 18.2.0
react-dom: 18.2.0(react@18.2.0)
react-hotkeys-hook: 4.5.0(react-dom@18.2.0)(react@18.2.0)
@@ -1080,8 +1103,8 @@ packages:
remark-gfm: 4.0.0
source-map: 0.7.4
vfile: 6.0.1
- vite: 5.1.0
- vite-tsconfig-paths: 4.3.1(typescript@5.4.2)(vite@5.1.0)
+ vite: 5.1.6
+ vite-tsconfig-paths: 4.3.2(typescript@5.4.2)(vite@5.1.6)
transitivePeerDependencies:
- '@swc/helpers'
- '@types/node'
@@ -2171,8 +2194,8 @@ packages:
/@types/babel__core@7.20.5:
resolution: {integrity: sha512-qoQprZvz5wQFJwMDqeseRXWv3rqMvhgpbXFfVyWhbx9X47POIA6i/+dXefEmZKoAgOaTdaIgNSMqMIU61yRyzA==}
dependencies:
- '@babel/parser': 7.23.9
- '@babel/types': 7.23.9
+ '@babel/parser': 7.24.0
+ '@babel/types': 7.24.0
'@types/babel__generator': 7.6.8
'@types/babel__template': 7.4.4
'@types/babel__traverse': 7.20.5
@@ -2181,20 +2204,20 @@ packages:
/@types/babel__generator@7.6.8:
resolution: {integrity: sha512-ASsj+tpEDsEiFr1arWrlN6V3mdfjRMZt6LtK/Vp/kreFLnr5QH5+DhvD5nINYZXzwJvXeGq+05iUXcAzVrqWtw==}
dependencies:
- '@babel/types': 7.23.9
+ '@babel/types': 7.24.0
dev: true
/@types/babel__template@7.4.4:
resolution: {integrity: sha512-h/NUaSyG5EyxBIp8YRxo4RMe2/qQgvyowRwVMzhYhBCONbW8PUsg4lkFMrhgZhUe5z3L3MiLDuvyJ/CaPa2A8A==}
dependencies:
- '@babel/parser': 7.23.9
- '@babel/types': 7.23.9
+ '@babel/parser': 7.24.0
+ '@babel/types': 7.24.0
dev: true
/@types/babel__traverse@7.20.5:
resolution: {integrity: sha512-WXCyOcRtH37HAUkpXhUduaxdm82b4GSlyTqajXviN4EfiuPgNYR109xMCKvpl6zPIpua0DGlMEDCq+g8EdoheQ==}
dependencies:
- '@babel/types': 7.23.9
+ '@babel/types': 7.24.0
dev: true
/@types/body-parser@1.19.5:
@@ -2386,7 +2409,7 @@ packages:
/@types/mute-stream@0.0.4:
resolution: {integrity: sha512-CPM9nzrCPPJHQNA9keH9CVkVI+WR5kMa+7XEs5jcGQ0VoAGnLv242w8lIVgwAEfmE4oufJRaTc9PNLQl0ioAow==}
dependencies:
- '@types/node': 20.11.17
+ '@types/node': 20.11.28
dev: true
/@types/node-forge@1.3.11:
@@ -2401,12 +2424,6 @@ packages:
'@types/node': 20.11.28
dev: true
- /@types/node@20.11.17:
- resolution: {integrity: sha512-QmgQZGWu1Yw9TDyAP9ZzpFJKynYNeOvwMJmaxABfieQoVoiVOS6MN1WSpqpRcbeA5+RW82kraAVxCCJg+780Qw==}
- dependencies:
- undici-types: 5.26.5
- dev: true
-
/@types/node@20.11.20:
resolution: {integrity: sha512-7/rR21OS+fq8IyHTgtLkDK949uzsa6n8BkziAKtPVpugIkO6D+/ooXMvzXxDnZrmtXVfjb1bKQafYpb8s89LOg==}
dependencies:
@@ -2425,7 +2442,6 @@ packages:
/@types/prismjs@1.26.3:
resolution: {integrity: sha512-A0D0aTXvjlqJ5ZILMz3rNfDBOx9hHxLZYv2by47Sm/pqW35zzjusrZTryatjN/Rf8Us2gZrJD+KeHbUSTux1Cw==}
- dev: true
/@types/prop-types@15.7.11:
resolution: {integrity: sha512-ga8y9v9uyeiLdpKddhxYQkxNDrfvuPrlFb0N1qnZZByvcElJaXthF1UhvCh9TLWJBEHeNtdnbysW7Y6Uq8CVng==}
@@ -2791,17 +2807,6 @@ packages:
'@types/yargs': 17.0.32
dev: true
- /@vitejs/plugin-react-swc@3.6.0(vite@5.1.0):
- resolution: {integrity: sha512-XFRbsGgpGxGzEV5i5+vRiro1bwcIaZDIdBRP16qwm+jP68ue/S8FJTBEgOeojtVDYrbSua3XFp71kC8VJE6v+g==}
- peerDependencies:
- vite: ^4 || ^5
- dependencies:
- '@swc/core': 1.3.107
- vite: 5.1.0
- transitivePeerDependencies:
- - '@swc/helpers'
- dev: true
-
/@vitejs/plugin-react-swc@3.6.0(vite@5.1.6):
resolution: {integrity: sha512-XFRbsGgpGxGzEV5i5+vRiro1bwcIaZDIdBRP16qwm+jP68ue/S8FJTBEgOeojtVDYrbSua3XFp71kC8VJE6v+g==}
peerDependencies:
@@ -2813,18 +2818,18 @@ packages:
- '@swc/helpers'
dev: true
- /@vitejs/plugin-react@4.2.1(vite@5.1.0):
+ /@vitejs/plugin-react@4.2.1(vite@5.1.6):
resolution: {integrity: sha512-oojO9IDc4nCUUi8qIR11KoQm0XFFLIwsRBwHRR4d/88IWghn1y6ckz/bJ8GHDCsYEJee8mDzqtJxh15/cisJNQ==}
engines: {node: ^14.18.0 || >=16.0.0}
peerDependencies:
vite: ^4.2.0 || ^5.0.0
dependencies:
- '@babel/core': 7.23.9
- '@babel/plugin-transform-react-jsx-self': 7.23.3(@babel/core@7.23.9)
- '@babel/plugin-transform-react-jsx-source': 7.23.3(@babel/core@7.23.9)
+ '@babel/core': 7.24.0
+ '@babel/plugin-transform-react-jsx-self': 7.23.3(@babel/core@7.24.0)
+ '@babel/plugin-transform-react-jsx-source': 7.23.3(@babel/core@7.24.0)
'@types/babel__core': 7.20.5
react-refresh: 0.14.0
- vite: 5.1.0
+ vite: 5.1.6
transitivePeerDependencies:
- supports-color
dev: true
@@ -3542,8 +3547,8 @@ packages:
possible-typed-array-names: 1.0.0
dev: true
- /axe-core@4.8.3:
- resolution: {integrity: sha512-d5ZQHPSPkF9Tw+yfyDcRoUOc4g/8UloJJe5J8m4L5+c7AtDdjDLRxew/knnI4CxvtdxEUVgWz4x3OIQUIFiMfw==}
+ /axe-core@4.8.4:
+ resolution: {integrity: sha512-CZLSKisu/bhJ2awW4kJndluz2HLZYIHh5Uy1+ZwDRkJi69811xgIXXfdU9HSLX0Th+ILrHj8qfL/5wzamsFtQg==}
engines: {node: '>=4'}
dev: true
@@ -3590,11 +3595,6 @@ packages:
resolution: {integrity: sha512-NzUnlZexiaH/46WDhANlyR2bXRopNg4F/zuSA3OpZnllCUgRaOF2znDioDWrmbNVsuZk6l9pMquQB38cfBZwkQ==}
dev: true
- /big-integer@1.6.52:
- resolution: {integrity: sha512-QxD8cf2eVqJOOz63z6JIN9BzvVs/dlySa5HGSBH5xtR8dPteIRQnBxxKqkNTiT6jbDTF6jAfrd4oMcND9RGbQg==}
- engines: {node: '>=0.6'}
- dev: true
-
/binary-extensions@2.2.0:
resolution: {integrity: sha512-jDctJ/IVQbZoJykoeHbhXpOlNBqGNcwXJKJog42E5HDPUwQTSdjCHdihjj0DlnheQ7blbT6dHOafNAiS8ooQKA==}
engines: {node: '>=8'}
@@ -3652,13 +3652,6 @@ packages:
wrap-ansi: 8.1.0
dev: true
- /bplist-parser@0.2.0:
- resolution: {integrity: sha512-z0M+byMThzQmD9NILRniCUXYsYpjwnlO8N5uCFaCqIOpqRsJCrQL9NK3JsD67CN5a08nF5oIL2bD6loTdHOuKw==}
- engines: {node: '>= 5.10.0'}
- dependencies:
- big-integer: 1.6.52
- dev: true
-
/brace-expansion@1.1.11:
resolution: {integrity: sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==}
dependencies:
@@ -3724,13 +3717,6 @@ packages:
semver: 7.6.0
dev: true
- /bundle-name@3.0.0:
- resolution: {integrity: sha512-PKA4BeSvBpQKQ8iPOGCSiell+N8P+Tf1DlwqmYhpe2gAhKPHn8EYOxVT+ShuGmhg8lN8XiSlS80yiExKXrURlw==}
- engines: {node: '>=12'}
- dependencies:
- run-applescript: 5.0.0
- dev: true
-
/bundle-name@4.1.0:
resolution: {integrity: sha512-tjwM5exMg6BGRI+kNmTntNsvdZS1X8BFYS6tnJ2hdH0kVxM6/eVZ2xy+FqStSWvYmtfFMDLIxurorHwDKfDz5Q==}
engines: {node: '>=18'}
@@ -4177,6 +4163,11 @@ packages:
engines: {node: '>=16'}
dev: true
+ /commander@12.0.0:
+ resolution: {integrity: sha512-MwVNWlYjDTtOjX5PiD7o5pK0UrFU/OYgcJfjjK4RaHZETNtjJqrZa9Y9ds88+A+f+d5lv+561eZ+yCKoS3gbAA==}
+ engines: {node: '>=18'}
+ dev: true
+
/commander@2.20.3:
resolution: {integrity: sha512-GpVkmM8vF2vQUkj2LvZmD35JxeJOLCwJ9cUkugyk2nuhbv3+mJvpLYYt+0+USMxE+oj+ey/lJEnhZw75x/OMcQ==}
dev: true
@@ -4637,29 +4628,11 @@ packages:
/deep-is@0.1.4:
resolution: {integrity: sha512-oIPzksmTg4/MriiaYGO+okXDT7ztn/w3Eptv/+gSIdMdKsJo0u4CfYNFJPy+4SKMuCqGw2wxnA+URMg3t8a/bQ==}
- /default-browser-id@3.0.0:
- resolution: {integrity: sha512-OZ1y3y0SqSICtE8DE4S8YOE9UZOJ8wO16fKWVP5J1Qz42kV9jcnMVFrEE/noXb/ss3Q4pZIH79kxofzyNNtUNA==}
- engines: {node: '>=12'}
- dependencies:
- bplist-parser: 0.2.0
- untildify: 4.0.0
- dev: true
-
/default-browser-id@5.0.0:
resolution: {integrity: sha512-A6p/pu/6fyBcA1TRz/GqWYPViplrftcW2gZC9q79ngNCKAeR/X3gcEdXQHl4KNXV+3wgIJ1CPkJQ3IHM6lcsyA==}
engines: {node: '>=18'}
dev: true
- /default-browser@4.0.0:
- resolution: {integrity: sha512-wX5pXO1+BrhMkSbROFsyxUm0i/cJEScyNhA4PPxc41ICuv05ZZB/MX28s8aZx6xjmatvebIapF6hLEKEcpneUA==}
- engines: {node: '>=14.16'}
- dependencies:
- bundle-name: 3.0.0
- default-browser-id: 3.0.0
- execa: 7.2.0
- titleize: 3.0.0
- dev: true
-
/default-browser@5.2.1:
resolution: {integrity: sha512-WY/3TUME0x3KPYdRRxEJJvXRHV4PyPoUsxtZa78lwItwRQRHhd2U9xOscaT/YTf8uCXIAjeJOFBVEh/7FtD8Xg==}
engines: {node: '>=18'}
@@ -5525,21 +5498,6 @@ packages:
strip-final-newline: 2.0.0
dev: true
- /execa@7.2.0:
- resolution: {integrity: sha512-UduyVP7TLB5IcAQl+OzLyLcS/l32W/GLg+AhHJ+ow40FOk2U3SAllPwR44v4vmdFwIWqpdwxxpQbF1n5ta9seA==}
- engines: {node: ^14.18.0 || ^16.14.0 || >=18.0.0}
- dependencies:
- cross-spawn: 7.0.3
- get-stream: 6.0.1
- human-signals: 4.3.1
- is-stream: 3.0.0
- merge-stream: 2.0.0
- npm-run-path: 5.2.0
- onetime: 6.0.0
- signal-exit: 3.0.7
- strip-final-newline: 3.0.0
- dev: true
-
/execa@8.0.1:
resolution: {integrity: sha512-VyhnebXciFV2DESc+p6B+y0LjSm0krU4OgJN44qFAhBY0TJ+1V61tYD2+wHusZ6F9n5K+vl8k0sTy7PEfV4qpg==}
engines: {node: '>=16.17'}
@@ -6624,11 +6582,6 @@ packages:
engines: {node: '>=10.17.0'}
dev: true
- /human-signals@4.3.1:
- resolution: {integrity: sha512-nZXjEF2nbo7lIw3mgYjItAfgQXog3OjJogSbKa2CQIIvSGWcKgeJnQlNXip6NglNzYH45nSRiEVimMvYL8DDqQ==}
- engines: {node: '>=14.18.0'}
- dev: true
-
/human-signals@5.0.0:
resolution: {integrity: sha512-AXcZb6vzzrFAUE61HnN4mpLqd/cSIwNQjtNWR0euPm6y0iqx3G4gOXaIDdtdDwZmhwe82LA6+zinmW4UBWVePQ==}
engines: {node: '>=16.17.0'}
@@ -7525,8 +7478,8 @@ packages:
koa-compose: 4.1.0
dev: true
- /koa@2.15.0:
- resolution: {integrity: sha512-KEL/vU1knsoUvfP4MC4/GthpQrY/p6dzwaaGI6Rt4NQuFqkw3qrvsdYF5pz3wOfi7IGTvMPHC9aZIcUKYFNxsw==}
+ /koa@2.15.1:
+ resolution: {integrity: sha512-kpxzGxsv7tlc0WmccWd6CfdWqYXk4o/FsCTjnKaDnHLjPK/Sy1MpoBkuKO5LN7GdPHgPljrAVmMO3wbFxEJTeA==}
engines: {node: ^4.8.4 || ^6.10.1 || ^7.10.1 || >= 8.1.4}
dependencies:
accepts: 1.3.8
@@ -8802,13 +8755,13 @@ packages:
resolution: {integrity: sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==}
dev: true
- /msw@2.2.0(typescript@5.4.2):
- resolution: {integrity: sha512-98cUGcIphhdf3KDbmSxji7XFqLxeSFAmPUNV00N/U76GOkuUKEwp6MHqM6KW70rlpgeJP8qIWueppdnVThzG1g==}
+ /msw@2.2.7(typescript@5.4.2):
+ resolution: {integrity: sha512-ZxJpzw2Y8QvgPsYY4D4giBOkQNrTauqr3zh2aGguW4alnf9JHryJNCui/pGlsWfhwbpz2KkndmGkl9dVFHzHZA==}
engines: {node: '>=18'}
hasBin: true
requiresBuild: true
peerDependencies:
- typescript: '>= 4.7.x <= 5.3.x'
+ typescript: '>= 4.7.x'
peerDependenciesMeta:
typescript:
optional: true
@@ -9395,16 +9348,6 @@ packages:
is-wsl: 2.2.0
dev: true
- /open@9.1.0:
- resolution: {integrity: sha512-OS+QTnw1/4vrf+9hh1jc1jnYjzSG4ttTBB8UxOwAnInG3Uo4ssetzC1ihqaIHjLJnA5GGlRl6QlZXOTQhRBUvg==}
- engines: {node: '>=14.16'}
- dependencies:
- default-browser: 4.0.0
- define-lazy-prop: 3.0.0
- is-inside-container: 1.0.0
- is-wsl: 2.2.0
- dev: true
-
/optionator@0.9.3:
resolution: {integrity: sha512-JjCoypp+jKn1ttEFExxhetCKeJt9zhAgAve5FXHixTvFDW/5aEktX9bufBKLRRMdU7bNtpLfcGu94B3cdEJgjg==}
engines: {node: '>= 0.8.0'}
@@ -10075,7 +10018,11 @@ packages:
'@types/prismjs': 1.26.3
clsx: 2.1.0
react: 18.2.0
- dev: true
+
+ /prismjs@1.29.0:
+ resolution: {integrity: sha512-Kx/1w86q/epKcmte75LNrEoT+lX8pBpavuAbvJWRXar7Hz8jrtF+e3vY751p0R8H9HdArwaCTNDDzHg/ScJK1Q==}
+ engines: {node: '>=6'}
+ dev: false
/proc-log@3.0.0:
resolution: {integrity: sha512-++Vn7NS4Xf9NacaU9Xq3URUuqZETPsf8L4j5/ckhaRYsfPeRyzGw+iDjFhV/Jr3uNmTvvddEJFWh5R1gRgUH8A==}
@@ -10157,9 +10104,9 @@ packages:
side-channel: 1.0.4
dev: true
- /query-string@8.2.0:
- resolution: {integrity: sha512-tUZIw8J0CawM5wyGBiDOAp7ObdRQh4uBor/fUR9ZjmbZVvw95OD9If4w3MQxr99rg0DJZ/9CIORcpEqU5hQG7g==}
- engines: {node: '>=14.16'}
+ /query-string@9.0.0:
+ resolution: {integrity: sha512-4EWwcRGsO2H+yzq6ddHcVqkCQ2EFUSfDMEjF8ryp8ReymyZhIuaFRGLomeOQLkrzacMHoyky2HW0Qe30UbzkKw==}
+ engines: {node: '>=18'}
dependencies:
decode-uri-component: 0.4.1
filter-obj: 5.1.0
@@ -10635,13 +10582,6 @@ packages:
resolution: {integrity: sha512-APM0Gt1KoXBz0iIkkdB/kfvGOwC4UuJFeG/c+yV7wSc7q96cG/kJ0HiYCnzivD9SB53cLV1MlHFNfOuPaadYSw==}
dev: true
- /run-applescript@5.0.0:
- resolution: {integrity: sha512-XcT5rBksx1QdIhlFOCtgZkB99ZEouFZ1E2Kc2LHqNW13U3/74YGdkQRmThTwxy4QIyookibDKYZOPqX//6BlAg==}
- engines: {node: '>=12'}
- dependencies:
- execa: 5.1.1
- dev: true
-
/run-applescript@7.0.0:
resolution: {integrity: sha512-9by4Ij99JUr/MCFBUkDKLWK3G9HVXmabKz9U5MlIAIuvuzkiOicRYs8XJLxX+xahD+mLiiCYDqF9dKAgtzKP1A==}
engines: {node: '>=18'}
@@ -11593,11 +11533,6 @@ packages:
engines: {node: '>=14.0.0'}
dev: true
- /titleize@3.0.0:
- resolution: {integrity: sha512-KxVu8EYHDPBdUYdKZdKtU2aj2XfEx9AfjXxE/Aj0vT06w2icA09Vus1rh6eSu1y01akYg6BjIK/hxyLJINoMLQ==}
- engines: {node: '>=12'}
- dev: true
-
/tmp@0.0.33:
resolution: {integrity: sha512-jRCJlojKnZ3addtTOjdIqoRuPEKBvNXcGYqzO6zWZX8KfKEpnGY5jfggJQ3EjKuu8D4bJRr0y+cYJFmYbImXGw==}
engines: {node: '>=0.6.0'}
@@ -11713,8 +11648,8 @@ packages:
webpack: 5.90.3(esbuild@0.19.12)(webpack-cli@5.1.4)
dev: true
- /tsconfck@3.0.2(typescript@5.4.2):
- resolution: {integrity: sha512-6lWtFjwuhS3XI4HsX4Zg0izOI3FU/AI9EGVlPEUMDIhvLPMD4wkiof0WCoDgW7qY+Dy198g4d9miAqUHWHFH6Q==}
+ /tsconfck@3.0.3(typescript@5.4.2):
+ resolution: {integrity: sha512-4t0noZX9t6GcPTfBAbIbbIU4pfpCwh0ueq3S4O/5qXI1VwK1outmxhe9dOiEWqMz3MW2LKgDTpqWV+37IWuVbA==}
engines: {node: ^18 || >=20}
hasBin: true
peerDependencies:
@@ -12077,11 +12012,6 @@ packages:
engines: {node: '>= 0.8'}
dev: true
- /untildify@4.0.0:
- resolution: {integrity: sha512-KK8xQ1mkzZeg9inewmFVDNkg3l5LUhoq9kN6iWYB/CC9YMG8HA+c1Q8HwDe6dEX7kErrEVNVBO3fWsVq5iDgtw==}
- engines: {node: '>=8'}
- dev: true
-
/upath@2.0.1:
resolution: {integrity: sha512-1uEe95xksV1O0CYKXo8vQvN1JEbtJp7lb7C5U9HMsIp6IVwntkH/oNUzyVNQSd4S1sYk2FpSSW44FqMc8qee5w==}
engines: {node: '>=4'}
@@ -12275,8 +12205,8 @@ packages:
vite: 5.1.6
dev: true
- /vite-tsconfig-paths@4.3.1(typescript@5.4.2)(vite@5.1.0):
- resolution: {integrity: sha512-cfgJwcGOsIxXOLU/nELPny2/LUD/lcf1IbfyeKTv2bsupVbTH/xpFtdQlBmIP1GEK2CjjLxYhFfB+QODFAx5aw==}
+ /vite-tsconfig-paths@4.3.2(typescript@5.4.2)(vite@5.1.6):
+ resolution: {integrity: sha512-0Vd/a6po6Q+86rPlntHye7F31zA2URZMbH8M3saAZ/xR9QoGN/L21bxEGfXdWmFdNkqPpRdxFT7nmNe12e9/uA==}
peerDependencies:
vite: '*'
peerDependenciesMeta:
@@ -12285,48 +12215,13 @@ packages:
dependencies:
debug: 4.3.4(supports-color@5.5.0)
globrex: 0.1.2
- tsconfck: 3.0.2(typescript@5.4.2)
- vite: 5.1.0
+ tsconfck: 3.0.3(typescript@5.4.2)
+ vite: 5.1.6
transitivePeerDependencies:
- supports-color
- typescript
dev: true
- /vite@5.1.0:
- resolution: {integrity: sha512-STmSFzhY4ljuhz14bg9LkMTk3d98IO6DIArnTY6MeBwiD1Za2StcQtz7fzOUnRCqrHSD5+OS2reg4HOz1eoLnw==}
- engines: {node: ^18.0.0 || >=20.0.0}
- hasBin: true
- peerDependencies:
- '@types/node': ^18.0.0 || >=20.0.0
- less: '*'
- lightningcss: ^1.21.0
- sass: '*'
- stylus: '*'
- sugarss: '*'
- terser: ^5.4.0
- peerDependenciesMeta:
- '@types/node':
- optional: true
- less:
- optional: true
- lightningcss:
- optional: true
- sass:
- optional: true
- stylus:
- optional: true
- sugarss:
- optional: true
- terser:
- optional: true
- dependencies:
- esbuild: 0.19.12
- postcss: 8.4.35
- rollup: 4.13.0
- optionalDependencies:
- fsevents: 2.3.3
- dev: true
-
/vite@5.1.6:
resolution: {integrity: sha512-yYIAZs9nVfRJ/AiOLCA91zzhjsHUgMjB+EigzFb6W2XTLO8JixBCKCjvhKZaye+NKYHCrkv3Oh50dH9EdLU2RA==}
engines: {node: ^18.0.0 || >=20.0.0}