From 8fcb747032f7c7d1cc8fdaa49294c51bc1d0f2e0 Mon Sep 17 00:00:00 2001
From: Gao Sun
Date: Wed, 26 Jun 2024 16:32:45 +0800
Subject: [PATCH] refactor(console): upgrade mdx packages
---
packages/console/.parcelrc | 2 +-
packages/console/.parcelrc.arm64 | 2 +-
packages/console/package.json | 8 +-
packages/console/parcel-transformer-mdx2.js | 57 +
.../assets/docs/guides/api-express/README.mdx | 36 +-
.../assets/docs/guides/api-python/README.mdx | 12 +-
.../docs/guides/api-spring-boot/README.mdx | 18 +-
.../docs/guides/native-android/README.mdx | 18 +-
.../docs/guides/native-capacitor/README.mdx | 18 +-
.../assets/docs/guides/native-expo/README.mdx | 18 +-
.../docs/guides/native-flutter/README.mdx | 18 +-
.../docs/guides/native-ios-swift/README.mdx | 12 +-
.../assets/docs/guides/spa-angular/README.mdx | 6 +-
.../assets/docs/guides/spa-react/README.mdx | 18 +-
.../assets/docs/guides/spa-vanilla/README.mdx | 18 +-
.../src/assets/docs/guides/spa-vue/README.mdx | 6 +-
.../assets/docs/guides/spa-webflow/README.mdx | 18 +-
.../web-dotnet-core-blazor-server/README.mdx | 6 +-
.../web-dotnet-core-blazor-wasm/README.mdx | 6 +-
.../guides/web-dotnet-core-mvc/README.mdx | 6 +-
.../docs/guides/web-dotnet-core/README.mdx | 6 +-
.../assets/docs/guides/web-express/README.mdx | 12 +-
.../src/assets/docs/guides/web-go/README.mdx | 18 +-
.../guides/web-java-spring-boot/README.mdx | 6 +-
.../guides/web-next-app-router/README.mdx | 8 +-
.../docs/guides/web-next-auth/README.mdx | 6 +-
.../assets/docs/guides/web-next/README.mdx | 6 +-
.../assets/docs/guides/web-nuxt/README.mdx | 16 +-
.../src/assets/docs/guides/web-php/README.mdx | 24 +-
.../assets/docs/guides/web-python/README.mdx | 30 +-
.../assets/docs/guides/web-remix/README.mdx | 12 +-
.../assets/docs/guides/web-ruby/README.mdx | 30 +-
.../docs/guides/web-sveltekit/README.mdx | 18 +-
.../console/src/components/Guide/index.tsx | 34 +-
.../console/src/mdx-components/Code/index.tsx | 24 +
.../src/mdx-components/MdxProvider/index.tsx | 33 +
.../src/mdx-components/Mermaid/index.tsx | 82 +
.../EnterpriseSsoDetails/SsoGuide/index.tsx | 15 +-
pnpm-lock.yaml | 1728 +++++++++++------
39 files changed, 1521 insertions(+), 890 deletions(-)
create mode 100644 packages/console/parcel-transformer-mdx2.js
create mode 100644 packages/console/src/mdx-components/Code/index.tsx
create mode 100644 packages/console/src/mdx-components/MdxProvider/index.tsx
create mode 100644 packages/console/src/mdx-components/Mermaid/index.tsx
diff --git a/packages/console/.parcelrc b/packages/console/.parcelrc
index bdafd2c2b..eeade8d28 100644
--- a/packages/console/.parcelrc
+++ b/packages/console/.parcelrc
@@ -6,7 +6,7 @@
"@parcel/transformer-svg-react"
],
"*.{md,mdx}": [
- "@parcel/transformer-mdx"
+ "./parcel-transformer-mdx2.js"
]
},
"compressors": {
diff --git a/packages/console/.parcelrc.arm64 b/packages/console/.parcelrc.arm64
index 0bc273f89..c31f639e1 100644
--- a/packages/console/.parcelrc.arm64
+++ b/packages/console/.parcelrc.arm64
@@ -10,7 +10,7 @@
"@parcel/transformer-svg-react"
],
"*.{md,mdx}": [
- "@parcel/transformer-mdx"
+ "./parcel-transformer-mdx2.js"
]
},
"compressors": {
diff --git a/packages/console/package.json b/packages/console/package.json
index 02627ef31..ca2e8b905 100644
--- a/packages/console/package.json
+++ b/packages/console/package.json
@@ -36,12 +36,12 @@
"@logto/react": "^3.0.8",
"@logto/schemas": "workspace:^1.17.0",
"@logto/shared": "workspace:^3.1.1",
- "@mdx-js/react": "^1.6.22",
+ "@mdx-js/mdx": "^3.0.1",
+ "@mdx-js/react": "^3.0.1",
"@monaco-editor/react": "^4.6.0",
"@parcel/compressor-brotli": "2.9.3",
"@parcel/compressor-gzip": "2.9.3",
"@parcel/core": "2.9.3",
- "@parcel/transformer-mdx": "2.9.3",
"@parcel/transformer-sass": "2.9.3",
"@parcel/transformer-svg-react": "2.9.3",
"@silverhand/eslint-config": "6.0.1",
@@ -55,8 +55,7 @@
"@types/color": "^3.0.3",
"@types/debug": "^4.1.7",
"@types/jest": "^29.4.0",
- "@types/mdx": "^2.0.1",
- "@types/mdx-js__react": "^1.5.5",
+ "@types/mdx": "^2.0.13",
"@types/react": "^18.0.31",
"@types/react-color": "^3.0.6",
"@types/react-dom": "^18.0.0",
@@ -88,6 +87,7 @@
"ky": "^1.2.3",
"libphonenumber-js": "^1.10.51",
"lint-staged": "^15.0.0",
+ "mermaid": "^10.9.1",
"nanoid": "^5.0.1",
"overlayscrollbars": "^2.0.2",
"overlayscrollbars-react": "^0.5.0",
diff --git a/packages/console/parcel-transformer-mdx2.js b/packages/console/parcel-transformer-mdx2.js
new file mode 100644
index 000000000..367247041
--- /dev/null
+++ b/packages/console/parcel-transformer-mdx2.js
@@ -0,0 +1,57 @@
+// https://github.com/parcel-bundler/parcel/pull/7922#issuecomment-1750704973
+
+import { compile } from '@mdx-js/mdx';
+import { default as ThrowableDiagnostic } from '@parcel/diagnostic';
+import { Transformer } from '@parcel/plugin';
+
+export default new Transformer({
+ async transform({ asset }) {
+ const source = await asset.getCode();
+
+ let codeVFile;
+
+ try {
+ codeVFile = await compile(source, {
+ development: true,
+ jsx: true,
+ providerImportSource: '@mdx-js/react',
+ });
+ } catch (error) {
+ const { start, end } = error.position;
+
+ const highlight = {
+ message: error.reason,
+ start,
+ end,
+ };
+
+ if (!(end.line && end.column)) {
+ highlight.end = { ...start };
+ }
+
+ // Adjust for parser and reporter differences
+ highlight.start.column -= 1;
+ highlight.end.column -= 1;
+
+ throw new ThrowableDiagnostic({
+ diagnostic: {
+ message: 'Unable to compile MDX',
+ codeFrames: [
+ {
+ filePath: asset.filePath,
+ code: source,
+ codeHighlights: [highlight],
+ },
+ ],
+ },
+ });
+ }
+
+ const code = String(codeVFile);
+
+ asset.type = 'jsx';
+ asset.setCode(code);
+
+ return [asset];
+ },
+});
diff --git a/packages/console/src/assets/docs/guides/api-express/README.mdx b/packages/console/src/assets/docs/guides/api-express/README.mdx
index 7c0b04da8..9621af201 100644
--- a/packages/console/src/assets/docs/guides/api-express/README.mdx
+++ b/packages/console/src/assets/docs/guides/api-express/README.mdx
@@ -28,8 +28,7 @@ To proceed, you'll need to integrate the Logto SDK into your client application.
You'll also need to tweak the Logto SDK configuration to inform Logto that you want to request an access token for your API in this grant. Here's an example using React:
-
-
+
{`import { LogtoProvider } from '@logto/react';
const App = () => {
@@ -44,13 +43,11 @@ const App = () => {
);
};`}
-
-
+
Once a user signs in with Logto, `isAuthenticated` within the Logto SDK will become `true`:
-
-
+
{`import { useLogto } from '@logto/react';
const Content = () => {
@@ -58,13 +55,11 @@ const Content = () => {
console.log(isAuthenticated); // true
};`}
-
-
+
Now, you can use the `getAccessToken` method to retrieve an access token for your API:
-
-
+
{`const Content = () => {
const { getAccessToken, isAuthenticated } = useLogto();
@@ -75,13 +70,11 @@ Now, you can use the `getAccessToken` method to retrieve an access token for you
}
}, [isAuthenticated, getAccessToken]);
};`}
-
-
+
Lastly, include this access token in the `Authorization` header when making requests to your API:
-
-
+
{`const Content = () => {
const { getAccessToken, isAuthenticated } = useLogto();
@@ -97,8 +90,7 @@ Lastly, include this access token in the `Authorization` header when making requ
}
}, [isAuthenticated, getAccessToken]);
};`}
-
-
+
@@ -150,8 +142,7 @@ const extractBearerTokenFromHeaders = ({ authorization }: IncomingHttpHeaders) =
Subsequently, create a middleware to verify the access token:
-
-
+
{`import { createRemoteJWKSet, jwtVerify } from 'jose';
// Generate a JWKS using jwks_uri obtained from the Logto server
@@ -181,8 +172,7 @@ export const authMiddleware = async (req, res, next) => {
return next();
};`}
-
-
+
You can now employ this middleware to protect your API endpoints:
@@ -210,8 +200,7 @@ To address this, we can employ role-based access control (RBAC). In Logto, you c
After defining roles and permissions, you can add the `scopes` option to the `LogtoProvider` component:
-
-
+
{``}
-
-
+
Logto will then only issue an access token with the appropriate scope(s) to the user. For instance, if a user only has the `read:products` scope, the access token will solely contain that scope:
diff --git a/packages/console/src/assets/docs/guides/api-python/README.mdx b/packages/console/src/assets/docs/guides/api-python/README.mdx
index 621abc927..313af49f7 100644
--- a/packages/console/src/assets/docs/guides/api-python/README.mdx
+++ b/packages/console/src/assets/docs/guides/api-python/README.mdx
@@ -48,19 +48,16 @@ All the latest public Logto Authorization Configurations can be found at {
e.g. You can locate the following two fields in the response body if you request the above endpoint.
-
For đ RBAC , scope validation is also required.
diff --git a/packages/console/src/assets/docs/guides/api-spring-boot/README.mdx b/packages/console/src/assets/docs/guides/api-spring-boot/README.mdx
index 609441c5e..16bbfb725 100644
--- a/packages/console/src/assets/docs/guides/api-spring-boot/README.mdx
+++ b/packages/console/src/assets/docs/guides/api-spring-boot/README.mdx
@@ -59,16 +59,14 @@ Before moving on, you will need to get an issuer and a JWKS URI to verify the is
An example of the response:
-
-
+
{`{
// ...
"issuer": "${appendPath(props.endpoint, '/oidc')}",
"jwks_uri": "${appendPath(props.endpoint, '/oidc/jwks')}"
// ...
}`}
-
-
+
@@ -76,8 +74,7 @@ An example of the response:
Use an `application.yml` file (instead of the default `application.properties`) to configure the server port, audience, and OAuth2 resource server.
-
-
+
{`# path/to/project/src/main/resources/application.yaml
server:
port: 3000
@@ -92,8 +89,7 @@ spring:
jwt:
issuer-uri: ${appendPath(props.endpoint, '/oidc')}
jwk-set-uri: ${appendPath(props.endpoint, '/oidc/jwks')}`}
-
-
+
- `audience`: The unique API identifier of your protected API resource.
- `spring.security.oauth2.resourceserver.jwt.issuer-uri`: The iss claim value and the issuer URI in the JWT issued by Logto.
@@ -277,12 +273,10 @@ gradlew.bat bootRun
Request your protected API with the Access Token as the Bearer token in the Authorization header, e.g. execute the `curl` command.
-
-
+
{`curl --include '${appendPath(props.endpoint, '/api/profile')}' \\
--header 'Authorization: Bearer '`}
-
-
+
If successful, you will get a response with 200 status:
diff --git a/packages/console/src/assets/docs/guides/native-android/README.mdx b/packages/console/src/assets/docs/guides/native-android/README.mdx
index b6a966f56..9bf1c49f2 100644
--- a/packages/console/src/assets/docs/guides/native-android/README.mdx
+++ b/packages/console/src/assets/docs/guides/native-android/README.mdx
@@ -55,8 +55,7 @@ Since the SDK needs internet access, you need to add the following permission to
Create a `LogtoViewModel.kt` and init `LogtoClient` in this view model:
-
-
+
{`//...with other imports
import io.logto.sdk.android.LogtoClient
import io.logto.sdk.android.type.LogtoConfig
@@ -86,8 +85,7 @@ class LogtoViewModel(application: Application) : AndroidViewModel(application) {
}
}
}`}
-
-
+
then, create a `LogtoViewModel` for your `MainActivity.kt`:
@@ -121,8 +119,7 @@ You can add the redirect URI in the following input field:
After the redirect URI is configured, we add a `signIn` method to your `LogtoViewModel.kt`, which will call `logtoClient.signIn` API to invoke the Logto sign-in page:
-
-
+
{`//...with other imports
class LogtoViewModel(application: Application) : AndroidViewModel(application) {
// ...other codes
@@ -132,8 +129,7 @@ class LogtoViewModel(application: Application) : AndroidViewModel(application) {
}
}
}`}
-
-
+
Now setup on-click listener for the sign-in button in your `MainActivity.kt` to call the `signIn` method:
@@ -205,8 +201,7 @@ In Logto SDK, we can use `logtoClient.isAuthenticated` to check the authenticati
Now, let's add a live data to `LogtoViewModel.kt` to observe the authentication status, and update the status when the user signed in or signed out:
-
-
+
{`//...with other imports
class LogtoViewModel(application: Application) : AndroidViewModel(application) {
// ...other codes
@@ -232,8 +227,7 @@ class LogtoViewModel(application: Application) : AndroidViewModel(application) {
}
}
}`}
-
-
+
Then, we observe the `authenticated` live data in `MainActivity.kt`, when the user is signed in, we hide the sign-in button and show the sign-out button and vice versa:
diff --git a/packages/console/src/assets/docs/guides/native-capacitor/README.mdx b/packages/console/src/assets/docs/guides/native-capacitor/README.mdx
index ab26eae2e..a0e5c8e6a 100644
--- a/packages/console/src/assets/docs/guides/native-capacitor/README.mdx
+++ b/packages/console/src/assets/docs/guides/native-capacitor/README.mdx
@@ -27,16 +27,14 @@ npm install @capacitor/browser @capacitor/app @capacitor/preferences
Add the following code to your Capacitor project:
-
-
+
{`import LogtoClient from '@logto/capacitor';
const logtoClient = new LogtoClient({
endpoint: '${props.endpoint}',
appId: '${props.app.id}',
});`}
-
-
+
@@ -50,15 +48,13 @@ Ensure that the URI redirects to the Capacitor app, for example, `com.example.ap
Remember to click on **Save changes** after updating the redirect URI. Then, add the following code to the `onClick` handler of the sign-in button:
-
-
+
{`const onClick = async () => {
await logtoClient.signIn('${props.redirectUris[0] || 'com.example.app://callback'}');
console.log(await logtoClient.isAuthenticated()); // true
console.log(await logtoClient.getIdTokenClaims()); // { sub: '...', ... }
};`}
-
-
+
@@ -108,13 +104,11 @@ The user needs to click "Done" to close the web view and return to the Capacitor
Ensure that the post sign-out redirect URI redirects to the Capacitor app. Then add the following code to the `onClick` handler of the sign-out button:
-
-
+
{`const onClick = async () => {
await logtoClient.signOut('${props.postLogoutRedirectUris[0] || 'com.example.app://callback/sign-out'}');
};`}
-
-
+
diff --git a/packages/console/src/assets/docs/guides/native-expo/README.mdx b/packages/console/src/assets/docs/guides/native-expo/README.mdx
index 8cb488101..6d553853c 100644
--- a/packages/console/src/assets/docs/guides/native-expo/README.mdx
+++ b/packages/console/src/assets/docs/guides/native-expo/README.mdx
@@ -56,8 +56,7 @@ If you're installing this in a [bare React Native app](https://docs.expo.dev/bar
Import and use `LogtoProvider` to provide a Logto context:
-
-
+
{`import { LogtoProvider, LogtoConfig } from '@logto/rn';
const config: LogtoConfig = {
@@ -70,8 +69,7 @@ const App = () => (
);`}
-
-
+
@@ -100,8 +98,7 @@ The redirect URI is used to redirect the user back to your app after they sign i
You can use `useLogto` hook to sign in and sign out:
-
-
+
{`import { useLogto } from '@logto/rn';
import { Button } from 'react-native';
@@ -120,8 +117,7 @@ const Content = () => {
);
};`}
-
-
+
@@ -129,8 +125,7 @@ const Content = () => {
To display the user's information, you can use the `getIdTokenClaims()` method:
-
-
+
{`import { useLogto } from '@logto/rn';
import { Button, Text } from 'react-native';
@@ -162,8 +157,7 @@ const Content = () => {
);
};`}
-
-
+
diff --git a/packages/console/src/assets/docs/guides/native-flutter/README.mdx b/packages/console/src/assets/docs/guides/native-flutter/README.mdx
index c192872ef..8abd349a3 100644
--- a/packages/console/src/assets/docs/guides/native-flutter/README.mdx
+++ b/packages/console/src/assets/docs/guides/native-flutter/README.mdx
@@ -154,8 +154,7 @@ In order to capture the callback url from Logto's sign-in web page, you will nee
Import the `logto_dart_sdk` package and initialize the `LogtoClient` instance at the root of your application.
-
-
+
{`
import 'package:logto_dart_sdk/logto_dart_sdk.dart';
import 'package:http/http.dart' as http;
@@ -175,8 +174,7 @@ void init() async {
);
}
`}
-
-
+
@@ -193,14 +191,12 @@ Let's switch to the Application details page of Logto Admin Console. Add a Redir
### Implement a sign-in method
-
-
+
{`void signIn() async {
await logtoClient.signIn('${props.redirectUris[0] ?? 'io.logto://callback'}');
}
`}
-
-
+
@@ -235,8 +231,7 @@ user is signed in, the value will be `true`, otherwise, the value will be `false
Now let's wrap up the implementation and test your application.
-
-
+
{`import 'package:logto_dart_sdk/logto_dart_sdk.dart';
import 'package:http/http.dart' as http;
@@ -330,8 +325,7 @@ class _MyHomePageState extends State {
}
}
`}
-
-
+
diff --git a/packages/console/src/assets/docs/guides/native-ios-swift/README.mdx b/packages/console/src/assets/docs/guides/native-ios-swift/README.mdx
index 67cf5da0f..6bdfc3cef 100644
--- a/packages/console/src/assets/docs/guides/native-ios-swift/README.mdx
+++ b/packages/console/src/assets/docs/guides/native-ios-swift/README.mdx
@@ -44,8 +44,7 @@ CocoaPods [does not support local dependency](https://github.com/CocoaPods/Cocoa
subtitle="1 step"
>
-
-
+
{`import Logto
import LogtoClient
@@ -54,8 +53,7 @@ let config = try? LogtoConfig(
appId: "${props.app.id}"
)
let logtoClient = LogtoClient(useConfig: config)`}
-
-
+
By default, we store credentials like ID Token and Refresh Token in Keychain. Thus the user doesn't need to sign in again when he returns.
@@ -91,8 +89,7 @@ First, letâs configure your redirect URI scheme. E.g. `io.logto://callback`
Go back to Xcode, use the following code to implement sign-in:
-
-
+
{`do {
try await client.signInWithBrowser(redirectUri: "${
props.redirectUris[0] ?? 'io.logto://callback'
@@ -101,8 +98,7 @@ Go back to Xcode, use the following code to implement sign-in:
} catch let error as LogtoClientErrors.SignIn {
// error occured during sign in
}`}
-
-
+
diff --git a/packages/console/src/assets/docs/guides/spa-angular/README.mdx b/packages/console/src/assets/docs/guides/spa-angular/README.mdx
index 095f3e086..fd7f2d05c 100644
--- a/packages/console/src/assets/docs/guides/spa-angular/README.mdx
+++ b/packages/console/src/assets/docs/guides/spa-angular/README.mdx
@@ -58,8 +58,7 @@ After signing out, it'll be great to redirect user back to your website. For exa
Back to your Angular project, add the auth provider your `app.config.ts`:
-
-
+
{`import { UserScope, buildAngularAuthConfig } from '@logto/js';
import { provideAuth } from 'angular-auth-oidc-client';
@@ -77,8 +76,7 @@ export const appConfig: ApplicationConfig = {
// ...other providers
],
};`}
-
-
+
diff --git a/packages/console/src/assets/docs/guides/spa-react/README.mdx b/packages/console/src/assets/docs/guides/spa-react/README.mdx
index 8f684b45e..67bd12a9f 100644
--- a/packages/console/src/assets/docs/guides/spa-react/README.mdx
+++ b/packages/console/src/assets/docs/guides/spa-react/README.mdx
@@ -40,8 +40,7 @@ pnpm add @logto/react
Import and use `LogtoProvider` to provide a Logto context:
-
-
+
{`import { LogtoProvider, LogtoConfig } from '@logto/react';
const config: LogtoConfig = {
@@ -54,8 +53,7 @@ const App = () => (
);`}
-
-
+
@@ -80,8 +78,7 @@ We provide two hooks `useHandleSignInCallback()` and `useLogto()` which can help
Go back to your IDE/editor, use the following code to implement the sign-in button:
-
-
+
{`import { useLogto } from '@logto/react';
const SignIn = () => {
@@ -97,8 +94,7 @@ const SignIn = () => {
);
};`}
-
-
+
### Handle redirect
@@ -140,8 +136,7 @@ After signing out, it'll be great to redirect user back to your website. Let's a
### Implement a sign-out button
-
-
+
{`const SignOut = () => {
const { signOut } = useLogto();
@@ -153,8 +148,7 @@ After signing out, it'll be great to redirect user back to your website. Let's a
);
};`}
-
-
+
diff --git a/packages/console/src/assets/docs/guides/spa-vanilla/README.mdx b/packages/console/src/assets/docs/guides/spa-vanilla/README.mdx
index d0848d2b2..eab0facc9 100644
--- a/packages/console/src/assets/docs/guides/spa-vanilla/README.mdx
+++ b/packages/console/src/assets/docs/guides/spa-vanilla/README.mdx
@@ -40,16 +40,14 @@ pnpm add @logto/browser
Import and init `LogtoClient` with configs:
-
-
+
{`import LogtoClient from '@logto/browser';
const logtoClient = new LogtoClient({
endpoint: '${props.endpoint}',
appId: '${props.app.id}',
});`}
-
-
+
@@ -72,15 +70,13 @@ First, letâs enter your redirect URI. E.g. `http://localhost:3000/callback`.
Go back to your IDE/editor, use the following code to implement the sign-in button:
-
-
+
{`
Sign In
`}
-
-
+
### Handle redirect
@@ -119,15 +115,13 @@ After signing out, it'll be great to redirect user back to your website. Let's a
### Implement a sign-out button
-
-
+
{`
Sign Out
`}
-
-
+
diff --git a/packages/console/src/assets/docs/guides/spa-vue/README.mdx b/packages/console/src/assets/docs/guides/spa-vue/README.mdx
index b9a639977..154697da5 100644
--- a/packages/console/src/assets/docs/guides/spa-vue/README.mdx
+++ b/packages/console/src/assets/docs/guides/spa-vue/README.mdx
@@ -47,8 +47,7 @@ pnpm add @logto/vue
Import and use `createLogto` to install Logto plugin:
-
-
+
{`import { createLogto, LogtoConfig } from '@logto/vue';
const config: LogtoConfig = {
@@ -60,8 +59,7 @@ const app = createApp(App);
app.use(createLogto, config);
app.mount("#app");`}
-
-
+
diff --git a/packages/console/src/assets/docs/guides/spa-webflow/README.mdx b/packages/console/src/assets/docs/guides/spa-webflow/README.mdx
index 1ad4cf7cf..e36997b9f 100644
--- a/packages/console/src/assets/docs/guides/spa-webflow/README.mdx
+++ b/packages/console/src/assets/docs/guides/spa-webflow/README.mdx
@@ -22,8 +22,7 @@ In this step, we'll add global-level custom code to your Webflow site. Since NPM
Open the "Site settings" page, and navigate to the "Custom code" section. Add the following code to the "Head code" section.
-
-
+
{``}
-
-
+
@@ -59,15 +57,13 @@ First, letâs enter your redirect URI. E.g. `https://your-awesome-site.webflow.
Return to your Webflow designer, drag and drop a "Sign in" button to the home page, and assign it an ID âsign-inâ for later reference using `getElementById()`.
-
-
+
{``}
-
-
+
### Handle redirect
@@ -99,13 +95,11 @@ After signing out, it'll be great to redirect user back to your website. Let's a
Return to the Webflow designer, and add a âSign outâ button on your home page. Similarly, assign an ID âsign-outâ to the button, and add the following code to the page-level custom code.
-
-
+
{`const signOutButton = document.getElementById('sign-out');
const onClickSignOut = () => logtoClient.signOut('${props.postLogoutRedirectUris[0] ?? 'https://your-awesome-site.webflow.io'}');
signOutButton.addEventListener('click', onClickSignOut);`}
-
-
+
diff --git a/packages/console/src/assets/docs/guides/web-dotnet-core-blazor-server/README.mdx b/packages/console/src/assets/docs/guides/web-dotnet-core-blazor-server/README.mdx
index 1258ea8a8..af12ef46d 100644
--- a/packages/console/src/assets/docs/guides/web-dotnet-core-blazor-server/README.mdx
+++ b/packages/console/src/assets/docs/guides/web-dotnet-core-blazor-server/README.mdx
@@ -24,8 +24,7 @@ dotnet add package Logto.AspNetCore.Authentication
Open `Startup.cs` (or `Program.cs`) and add the following code to register Logto authentication middleware:
-
-
+
{`using Logto.AspNetCore.Authentication;
var builder = WebApplication.CreateBuilder(args);
@@ -38,8 +37,7 @@ builder.Services.AddLogtoAuthentication(options =>
});
app.UseAuthentication();`}
-
-
+
The `AddLogtoAuthentication` method will do the following things:
diff --git a/packages/console/src/assets/docs/guides/web-dotnet-core-blazor-wasm/README.mdx b/packages/console/src/assets/docs/guides/web-dotnet-core-blazor-wasm/README.mdx
index 757189964..1d111256d 100644
--- a/packages/console/src/assets/docs/guides/web-dotnet-core-blazor-wasm/README.mdx
+++ b/packages/console/src/assets/docs/guides/web-dotnet-core-blazor-wasm/README.mdx
@@ -90,8 +90,7 @@ For example, set the URI to {props.sampleUrls.origin + 'SignedOutCallback'
Add the following code to the `appsettings.json` file:
-
-
+
{`// ...
IdentityServer: {
Authority: '${props.endpoint}oidc',
@@ -103,8 +102,7 @@ Add the following code to the `appsettings.json` file:
},
}
`}
-
-
+
diff --git a/packages/console/src/assets/docs/guides/web-dotnet-core-mvc/README.mdx b/packages/console/src/assets/docs/guides/web-dotnet-core-mvc/README.mdx
index 8fa99eea2..4b109614e 100644
--- a/packages/console/src/assets/docs/guides/web-dotnet-core-mvc/README.mdx
+++ b/packages/console/src/assets/docs/guides/web-dotnet-core-mvc/README.mdx
@@ -24,8 +24,7 @@ dotnet add package Logto.AspNetCore.Authentication
Open `Startup.cs` (or `Program.cs`) and add the following code to register Logto authentication middleware:
-
-
+
{`using Logto.AspNetCore.Authentication;
var builder = WebApplication.CreateBuilder(args);
@@ -38,8 +37,7 @@ builder.Services.AddLogtoAuthentication(options =>
});
app.UseAuthentication();`}
-
-
+
The `AddLogtoAuthentication` method will do the following things:
diff --git a/packages/console/src/assets/docs/guides/web-dotnet-core/README.mdx b/packages/console/src/assets/docs/guides/web-dotnet-core/README.mdx
index 245a9fe3a..0d9892434 100644
--- a/packages/console/src/assets/docs/guides/web-dotnet-core/README.mdx
+++ b/packages/console/src/assets/docs/guides/web-dotnet-core/README.mdx
@@ -24,8 +24,7 @@ dotnet add package Logto.AspNetCore.Authentication
Open `Startup.cs` (or `Program.cs`) and add the following code to register Logto authentication middleware:
-
-
+
{`using Logto.AspNetCore.Authentication;
var builder = WebApplication.CreateBuilder(args);
@@ -38,8 +37,7 @@ builder.Services.AddLogtoAuthentication(options =>
});
app.UseAuthentication();`}
-
-
+
The `AddLogtoAuthentication` method will do the following things:
diff --git a/packages/console/src/assets/docs/guides/web-express/README.mdx b/packages/console/src/assets/docs/guides/web-express/README.mdx
index a498ee67a..bc957f100 100644
--- a/packages/console/src/assets/docs/guides/web-express/README.mdx
+++ b/packages/console/src/assets/docs/guides/web-express/README.mdx
@@ -48,8 +48,7 @@ pnpm add @logto/express cookie-parser express-session
Import and initialize LogtoClient:
-
-
+
{`import LogtoClient from '@logto/express';
export const logtoClient = new LogtoClient({
@@ -58,8 +57,7 @@ export const logtoClient = new LogtoClient({
appSecret: '${props.app.secret}',
baseUrl: 'http://localhost:3000', // Change to your own base URL
});`}
-
-
+
@@ -70,15 +68,13 @@ export const logtoClient = new LogtoClient({
The SDK requires [express-session](https://www.npmjs.com/package/express-session) to be configured in prior.
-
-
+
{`import cookieParser from 'cookie-parser';
import session from 'express-session';
app.use(cookieParser());
app.use(session({ secret: '${generateStandardSecret()}', cookie: { maxAge: 14 * 24 * 60 * 60 } }));`}
-
-
+
diff --git a/packages/console/src/assets/docs/guides/web-go/README.mdx b/packages/console/src/assets/docs/guides/web-go/README.mdx
index 3044cb21d..691056a82 100644
--- a/packages/console/src/assets/docs/guides/web-go/README.mdx
+++ b/packages/console/src/assets/docs/guides/web-go/README.mdx
@@ -144,8 +144,7 @@ sessionStorage := &SessionStorage{session: session}
First, create a Logto config:
-
-
+
{`// main.go
func main() {
// ...
@@ -158,8 +157,7 @@ func main() {
// ...
}`}
-
-
+
Then, you can create a `LogtoClient` for each user request with the Logto config above:
@@ -209,8 +207,7 @@ For example, if you add `http://localhost:8080/sign-in-callback` to your Redirec
After the redirect URI is configured, we add a `sign-in` route to handle the sign-in request and also add an sign-in link on the home page:
-
-
+
{`//main.go
func main() {
// ...
@@ -248,8 +245,7 @@ func main() {
// ...
}`}
-
-
+
Now, when your user visit `http://localhost:8080/sign-in`, the user will be redirected to the Logto sign-in page.
@@ -306,8 +302,7 @@ Assuming that you add `http://localhost:8080` to the Post Sign-out Redirect URI
Now, let's add the `sign-out` route to handle the sign-out request and also add a sign-out link on the home page:
-
-
+
{`//main.go
func main() {
// ...
@@ -346,8 +341,7 @@ func main() {
// ...
}`}
-
-
+
After the user makes a signing-out request, Logto will clear all user authentication information in the session.
diff --git a/packages/console/src/assets/docs/guides/web-java-spring-boot/README.mdx b/packages/console/src/assets/docs/guides/web-java-spring-boot/README.mdx
index 7019654e2..b043d49b7 100644
--- a/packages/console/src/assets/docs/guides/web-java-spring-boot/README.mdx
+++ b/packages/console/src/assets/docs/guides/web-java-spring-boot/README.mdx
@@ -67,8 +67,7 @@ For maven, include the following dependencies in your `pom.xml` file:
Register your application with Logto to get the client credentials and IdP configurations.
Add the following configuration to your `application.properties` file:
-
-
+
{`spring.security.oauth2.client.registration.logto.client-name=logto
spring.security.oauth2.client.registration.logto.client-id=${props.app.id}
spring.security.oauth2.client.registration.logto.client-secret=${props.app.secret}
@@ -81,8 +80,7 @@ spring.security.oauth2.client.provider.logto.issuer-uri=${props.endpoint}oidc
spring.security.oauth2.client.provider.logto.authorization-uri=${props.endpoint}oidc/auth
spring.security.oauth2.client.provider.logto.jwk-set-uri=${props.endpoint}oidc/jwks
`}
-
-
+
diff --git a/packages/console/src/assets/docs/guides/web-next-app-router/README.mdx b/packages/console/src/assets/docs/guides/web-next-app-router/README.mdx
index 51cec13fd..26915db22 100644
--- a/packages/console/src/assets/docs/guides/web-next-app-router/README.mdx
+++ b/packages/console/src/assets/docs/guides/web-next-app-router/README.mdx
@@ -47,8 +47,7 @@ pnpm add @logto/next
Prepare configuration for the Logto client. Create a new file `app/logto.ts` and add the following code:
-
-
+
{`export const logtoConfig = {
endpoint: '${props.endpoint}',
appId: '${props.app.id}',
@@ -58,8 +57,7 @@ Prepare configuration for the Logto client. Create a new file `app/logto.ts` and
cookieSecure: process.env.NODE_ENV === 'production',
};
`}
-
-
+
-
\ No newline at end of file
+
diff --git a/packages/console/src/assets/docs/guides/web-next-auth/README.mdx b/packages/console/src/assets/docs/guides/web-next-auth/README.mdx
index baeeff260..badcf9665 100644
--- a/packages/console/src/assets/docs/guides/web-next-auth/README.mdx
+++ b/packages/console/src/assets/docs/guides/web-next-auth/README.mdx
@@ -31,8 +31,7 @@ Modify your API route config of Next Auth, if you are using Pages Router, the fi
The following is an example of App Router:
-
-
+
{`import NextAuth from 'next-auth';
const handler = NextAuth({
@@ -64,8 +63,7 @@ const handler = NextAuth({
});
export { handler as GET, handler as POST };`}
-
-
+
diff --git a/packages/console/src/assets/docs/guides/web-next/README.mdx b/packages/console/src/assets/docs/guides/web-next/README.mdx
index 0313e9ddd..fa6100178 100644
--- a/packages/console/src/assets/docs/guides/web-next/README.mdx
+++ b/packages/console/src/assets/docs/guides/web-next/README.mdx
@@ -47,8 +47,7 @@ pnpm add @logto/next
Import and initialize LogtoClient:
-
-
+
{`// libraries/logto.js
import LogtoClient from '@logto/next';
@@ -60,8 +59,7 @@ export const logtoClient = new LogtoClient({
cookieSecret: '${generateStandardSecret()}', // Auto-generated 32 digit secret
cookieSecure: process.env.NODE_ENV === 'production',
});`}
-
-
+
diff --git a/packages/console/src/assets/docs/guides/web-nuxt/README.mdx b/packages/console/src/assets/docs/guides/web-nuxt/README.mdx
index 3ce9c63ca..d4bf7ef8e 100644
--- a/packages/console/src/assets/docs/guides/web-nuxt/README.mdx
+++ b/packages/console/src/assets/docs/guides/web-nuxt/README.mdx
@@ -46,7 +46,7 @@ pnpm add @logto/nuxt
-In your Nuxt config file (`next.config.ts`), add the Logto module:
+In your Nuxt config file (`nuxt.config.ts`), add the Logto module:
```ts
export default defineNuxtConfig({
@@ -57,9 +57,8 @@ export default defineNuxtConfig({
The minimal configuration for the module is as follows:
-
-
- {`export default defineNuxtConfig({
+
+{`export default defineNuxtConfig({
modules: ['@logto/nuxt'],
runtimeConfig: {
logto: {
@@ -71,20 +70,17 @@ The minimal configuration for the module is as follows:
},
// ...other configurations
});`}
-
-
+
Since these information are sensitive, it's recommended to use environment variables (`.env`):
-
-
+
{`NUXT_LOGTO_ENDPOINT=${props.endpoint}
NUXT_LOGTO_APP_ID=${props.app.id}
NUXT_LOGTO_APP_SECRET=${props.app.secret}
NUXT_LOGTO_COOKIE_ENCRYPTION_KEY=${cookieEncryptionKey} # Random-generated
`}
-
-
+
See [runtime config](https://nuxt.com/docs/guide/going-further/runtime-config) for more information.
diff --git a/packages/console/src/assets/docs/guides/web-php/README.mdx b/packages/console/src/assets/docs/guides/web-php/README.mdx
index 08ad78249..49122bc1a 100644
--- a/packages/console/src/assets/docs/guides/web-php/README.mdx
+++ b/packages/console/src/assets/docs/guides/web-php/README.mdx
@@ -26,8 +26,7 @@ composer require logto/sdk
Insert the following code into your PHP file:
-
-
+
{`use logto\sdk\LogtoClient;
use Logto\Sdk\LogtoConfig;
@@ -38,8 +37,7 @@ $client = new LogtoClient(
appSecret: "${props.app.secret}",
),
);`}
-
-
+
By default, the SDK uses the built-in PHP session to store the Logto data. If you want to use other storage, you can pass a custom storage object as the second parameter:
@@ -62,23 +60,19 @@ First, letâs enter your redirect URI. E.g. {props.sampleUrls.callback}
-
-
+
{`Route::get('/sign-in', function () {
return redirect($client->signIn('${props.redirectUris[0] || props.sampleUrls.callback}'));
});`}
-
-
+
If you want to show the sign-up page on the first screen, you can set `interactionMode` to `signUp`:
-
-
+
{`Route::get('/sign-in', function () {
return redirect($client->signIn('${props.redirectUris[0] || props.sampleUrls.callback}', InteractionMode::signUp));
});`}
-
-
+
Now, whenever your users visit `/sign-in`, it will start a new sign-in attempt and redirect the user to the Logto sign-in page.
@@ -112,16 +106,14 @@ To clean up the Python session and Logto session, we can designate a post sign-o
And a sign-out route can be implemented as follows:
-
-
+
{`Route::get('/sign-out', function () {
return redirect(
// Redirect the user to the home page after a successful sign-out
$client->signOut('${props.postLogoutRedirectUris[0] || props.sampleUrls.origin}')
);
});`}
-
-
+
The post sign-out redierct URI is optional, and if not provided, the user will be redirected to a Logto default page after a successful sign-out (without redirecting back to your application).
diff --git a/packages/console/src/assets/docs/guides/web-python/README.mdx b/packages/console/src/assets/docs/guides/web-python/README.mdx
index c29d61faf..5900e8198 100644
--- a/packages/console/src/assets/docs/guides/web-python/README.mdx
+++ b/packages/console/src/assets/docs/guides/web-python/README.mdx
@@ -24,8 +24,7 @@ pip install logto # or `poetry add logto` or whatever you use
Insert the following code into your Python file:
-
-
+
{`from logto import LogtoClient, LogtoConfig
client = LogtoClient(
@@ -35,8 +34,7 @@ client = LogtoClient(
appSecret="${props.app.secret}",
)
)`}
-
-
+
Also replace the default memory storage with a persistent storage, for example:
@@ -71,21 +69,18 @@ First, letâs enter your redirect URI. E.g. {props.sampleUrls.callback}
-
-
+
{`@app.route("/sign-in")
async def sign_in():
# Get the sign-in URL and redirect the user to it
return redirect(await client.signIn(
redirectUri="${props.redirectUris[0] || props.sampleUrls.callback}",
))`}
-
-
+
If you want to show the sign-up page on the first screen, you can set `interactionMode` to `signUp`:
-
-
+
{`@app.route("/sign-in")
async def sign_in():
# Get the sign-in URL and redirect the user to it
@@ -93,8 +88,7 @@ async def sign_in():
redirectUri="${props.redirectUris[0] || props.sampleUrls.callback}",
interactionMode="signUp", # Show the sign-up page on the first screen
))`}
-
-
+
Now, whenever your users visit `/sign-in`, it will start a new sign-in attempt and redirect the user to the Logto sign-in page.
@@ -104,8 +98,7 @@ Now, whenever your users visit `/sign-in`, it will start a new sign-in attempt a
After the user signs in, Logto will redirect the user to the callback URL you set in the Logto Console. In this example, we use `/callback` as the callback URL:
-
-
+
{`@app.route("/callback")
async def callback():
try:
@@ -115,8 +108,7 @@ async def callback():
# Change this to your error handling logic
return "Error: " + str(e)
`}
-
-
+
@@ -128,8 +120,7 @@ To clean up the Python session and Logto session, we can designate a post sign-o
And a sign-out route can be implemented as follows:
-
-
+
{`@app.route("/sign-out")
async def sign_out():
return redirect(
@@ -137,8 +128,7 @@ async def sign_out():
await client.signOut(postLogoutRedirectUri="${props.postLogoutRedirectUris[0] || props.sampleUrls.origin}")
)
`}
-
-
+
`postLogoutRedirectUri` is optional, and if not provided, the user will be redirected to a Logto default page after a successful sign-out (without redirecting back to your application).
diff --git a/packages/console/src/assets/docs/guides/web-remix/README.mdx b/packages/console/src/assets/docs/guides/web-remix/README.mdx
index 2c196c559..a476caf54 100644
--- a/packages/console/src/assets/docs/guides/web-remix/README.mdx
+++ b/packages/console/src/assets/docs/guides/web-remix/README.mdx
@@ -45,8 +45,7 @@ pnpm add @logto/remix
Before initializing the SDK, we have to create a `SessionStorage` instance which takes care of the session persistence. In our case, we want to use a cookie-based session:
-
-
+
{`
// services/authentication.ts
import { createCookieSessionStorage } from "@remix-run/node";
@@ -58,8 +57,7 @@ const sessionStorage = createCookieSessionStorage({
secrets: '${generateStandardSecret()}', // Auto-generated secret
},
});`}
-
-
+
@@ -70,8 +68,7 @@ const sessionStorage = createCookieSessionStorage({
Use the `sessionStorage` created in the previous step to initialize LogtoClient:
-
-
+
{`// app/services/authentication.ts
import { makeLogtoRemix } from "@logto/remix";
@@ -85,8 +82,7 @@ export const logto = makeLogtoRemix(
},
{ sessionStorage }
);`}
-
-
+
diff --git a/packages/console/src/assets/docs/guides/web-ruby/README.mdx b/packages/console/src/assets/docs/guides/web-ruby/README.mdx
index c94ffd883..0f19d4387 100644
--- a/packages/console/src/assets/docs/guides/web-ruby/README.mdx
+++ b/packages/console/src/assets/docs/guides/web-ruby/README.mdx
@@ -32,8 +32,7 @@ The following demonstration is for Ruby on Rails. However, you can apply the sam
In the file where you want to initialize the Logto client (e.g. a base controller or a middleware), add the following code:
-
-
+
{`require "logto/client"
@client = LogtoClient.new(
@@ -46,13 +45,11 @@ In the file where you want to initialize the Logto client (e.g. a base controlle
storage: LogtoClient::SessionStorage.new(the_session_object)
)
end`}
-
-
+
For instance, in a Rails controller, the code might look like this:
-
-
+
{`# app/controllers/sample_controller.rb
require "logto/client"
@@ -75,8 +72,7 @@ class SampleController < ApplicationController
)
end
end`}
-
-
+
@@ -104,26 +100,22 @@ After signing out, it'll be great to redirect user back to your website. For exa
Since the redirect URI has been set to {props.redirectUris[0] || 'http://localhost:3000/callback'}
, it needs to be handled it in our application. In a Rails controller, you can add the following code:
-
-
+
{`# app/controllers/sample_controller.rb
class SampleController < ApplicationController
def ${props.redirectUris[0]?.split('/').pop() || 'callback'}
@client.handle_sign_in_callback(url: request.original_url)
end
end`}
-
-
+
And configure the route in `config/routes.rb`:
-
-
+
{`Rails.application.routes.draw do
get "${new URL(props.redirectUris[0] || 'http://localhost:3000/callback').pathname}", to: "sample#${props.redirectUris[0]?.split('/').pop() || 'callback'}"
end`}
-
-
+
@@ -133,8 +125,7 @@ end`}
There are various ways to invoke sign-in and sign-out in your application. For example, you can implement two routes in your Rails application:
-
-
+
{`# app/controllers/sample_controller.rb
class SampleController < ApplicationController
def sign_in
@@ -147,8 +138,7 @@ class SampleController < ApplicationController
# ...
end`}
-
-
+
```ruby
# config/routes.rb
diff --git a/packages/console/src/assets/docs/guides/web-sveltekit/README.mdx b/packages/console/src/assets/docs/guides/web-sveltekit/README.mdx
index 3dbe09dc7..97b8ddb26 100644
--- a/packages/console/src/assets/docs/guides/web-sveltekit/README.mdx
+++ b/packages/console/src/assets/docs/guides/web-sveltekit/README.mdx
@@ -46,8 +46,7 @@ Create a `hooks.server.ts` file in your project `src` root if you don't have one
In your `hooks.server.ts` file, add the following code to inject the Logto hook into your server:
-
-
+
{`import { handleLogto } from '@logto/sveltekit';
export const handle = handleLogto(
@@ -60,13 +59,11 @@ export const handle = handleLogto(
encryptionKey: '${cookieEncryptionKey}', // Random-generated
}
);`}
-
-
+
Since these information are sensitive, it's recommended to use environment variables:
-
-
+
{`import { handleLogto } from '@logto/sveltekit';
import { env } from '$env/dynamic/private';
@@ -80,8 +77,7 @@ export const handle = handleLogto(
encryptionKey: env.LOGTO_COOKIE_ENCRYPTION_KEY,
}
);`}
-
-
+
If you have multiple hooks, you can use [the sequence() helper function](https://kit.svelte.dev/docs/modules#sveltejs-kit-hooks) to chain them:
@@ -126,8 +122,7 @@ After signing out, it'll be great to redirect user back to your website. For exa
In the page where you want to implement sign-in and sign-out, define the following actions:
-
-
+
{`// +page.server.ts
import type { Actions } from './$types';
@@ -142,8 +137,7 @@ export const actions: Actions = {
},
};
`}
-
-
+
Then use these actions in your Svelte component:
diff --git a/packages/console/src/components/Guide/index.tsx b/packages/console/src/components/Guide/index.tsx
index cebd7d168..9eee31256 100644
--- a/packages/console/src/components/Guide/index.tsx
+++ b/packages/console/src/components/Guide/index.tsx
@@ -1,15 +1,12 @@
import { type ApplicationResponse } from '@logto/schemas';
-import { MDXProvider } from '@mdx-js/react';
import classNames from 'classnames';
import { type LazyExoticComponent, Suspense, createContext, useContext } from 'react';
import { guides } from '@/assets/docs/guides';
import { type GuideMetadata } from '@/assets/docs/guides/types';
import Button from '@/ds-components/Button';
-import CodeEditor from '@/ds-components/CodeEditor';
import OverlayScrollbar from '@/ds-components/OverlayScrollbar';
-import TextLink from '@/ds-components/TextLink';
-import DetailsSummary from '@/mdx-components/DetailsSummary';
+import MdxProvider from '@/mdx-components/MdxProvider';
import NotFound from '@/pages/NotFound';
import StepsSkeleton from './StepsSkeleton';
@@ -66,36 +63,11 @@ function Guide({ className, guideId, isEmpty, isLoading, onClose }: Props) {
{isLoading && }
{isEmpty && !guide && }
- {
- const [, language] = /language-(\w+)/.exec(String(className ?? '')) ?? [];
-
- return language ? (
-
- ) : (
- {String(children).trimEnd()}
- );
- },
- a: ({ children, ...props }) => (
-
- {children}
-
- ),
- details: DetailsSummary,
- }}
- >
+
}>
{GuideComponent && }
-
+
{!isApiResourceGuide && (
diff --git a/packages/console/src/mdx-components/Code/index.tsx b/packages/console/src/mdx-components/Code/index.tsx
new file mode 100644
index 000000000..c700c3ef6
--- /dev/null
+++ b/packages/console/src/mdx-components/Code/index.tsx
@@ -0,0 +1,24 @@
+import CodeEditor from '@/ds-components/CodeEditor';
+
+import Mermaid from '../Mermaid';
+
+export default function Code({ className, children }: JSX.IntrinsicElements['code']) {
+ const [, language] = /language-(\w+)/.exec(String(className ?? '')) ?? [];
+
+ if (language === 'mermaid') {
+ return {String(children).trimEnd()} ;
+ }
+
+ return language ? (
+
+ ) : (
+ {String(children).trimEnd()}
+ );
+}
diff --git a/packages/console/src/mdx-components/MdxProvider/index.tsx b/packages/console/src/mdx-components/MdxProvider/index.tsx
new file mode 100644
index 000000000..f8108640d
--- /dev/null
+++ b/packages/console/src/mdx-components/MdxProvider/index.tsx
@@ -0,0 +1,33 @@
+import { MDXProvider } from '@mdx-js/react';
+import type React from 'react';
+
+import TextLink from '@/ds-components/TextLink';
+
+import Code from '../Code';
+import DetailsSummary from '../DetailsSummary';
+
+type Props = {
+ readonly children: React.ReactNode;
+};
+
+export default function MdxProvider({ children }: Props) {
+ return (
+ ` cannot be swapped out with a
+ // custom component now.
+ // See: https://github.com/orgs/mdx-js/discussions/2231#discussioncomment-4729474
+ Code,
+ a: ({ children, ...props }) => (
+
+ {children}
+
+ ),
+ details: DetailsSummary,
+ }}
+ >
+ {children}
+
+ );
+}
diff --git a/packages/console/src/mdx-components/Mermaid/index.tsx b/packages/console/src/mdx-components/Mermaid/index.tsx
new file mode 100644
index 000000000..7e41d79cb
--- /dev/null
+++ b/packages/console/src/mdx-components/Mermaid/index.tsx
@@ -0,0 +1,82 @@
+import { Theme } from '@logto/schemas';
+import mermaid from 'mermaid';
+import { useEffect } from 'react';
+
+import useTheme from '@/hooks/use-theme';
+
+mermaid.initialize({
+ startOnLoad: true,
+ theme: 'default',
+ securityLevel: 'loose',
+ themeCSS: `
+ g.classGroup rect {
+ fill: #282a36;
+ stroke: #6272a4;
+ }
+ g.classGroup text {
+ fill: #f8f8f2;
+ }
+ g.classGroup line {
+ stroke: #f8f8f2;
+ stroke-width: 0.5;
+ }
+ .classLabel .box {
+ stroke: #21222c;
+ stroke-width: 3;
+ fill: #21222c;
+ opacity: 1;
+ }
+ .classLabel .label {
+ fill: #f1fa8c;
+ }
+ .relation {
+ stroke: #ff79c6;
+ stroke-width: 1;
+ }
+ #compositionStart, #compositionEnd {
+ fill: #bd93f9;
+ stroke: #bd93f9;
+ stroke-width: 1;
+ }
+ #aggregationEnd, #aggregationStart {
+ fill: #21222c;
+ stroke: #50fa7b;
+ stroke-width: 1;
+ }
+ #dependencyStart, #dependencyEnd {
+ fill: #00bcd4;
+ stroke: #00bcd4;
+ stroke-width: 1;
+ }
+ #extensionStart, #extensionEnd {
+ fill: #f8f8f2;
+ stroke: #f8f8f2;
+ stroke-width: 1;
+ }`,
+ fontFamily: 'Fira Code',
+});
+
+type Props = {
+ readonly children: string;
+};
+
+const themeToMermaidTheme = Object.freeze({
+ [Theme.Dark]: 'dark',
+ [Theme.Light]: 'default',
+} satisfies Record);
+
+export default function Mermaid({ children }: Props) {
+ const theme = useTheme();
+
+ useEffect(() => {
+ mermaid.initialize({
+ theme: themeToMermaidTheme[theme],
+ });
+ }, [theme]);
+
+ useEffect(() => {
+ mermaid.contentLoaded();
+ }, []);
+
+ return {children}
;
+}
diff --git a/packages/console/src/pages/EnterpriseSsoDetails/SsoGuide/index.tsx b/packages/console/src/pages/EnterpriseSsoDetails/SsoGuide/index.tsx
index 1b1e21407..9e0f63b0e 100644
--- a/packages/console/src/pages/EnterpriseSsoDetails/SsoGuide/index.tsx
+++ b/packages/console/src/pages/EnterpriseSsoDetails/SsoGuide/index.tsx
@@ -1,12 +1,11 @@
import { type SsoConnectorWithProviderConfig } from '@logto/schemas';
-import { MDXProvider } from '@mdx-js/react';
import classNames from 'classnames';
import { Suspense } from 'react';
import ssoConnectorGuides from '@/assets/docs/single-sign-on';
import SsoConnectorContextProvider from '@/contexts/SsoConnectorContextProvider';
import OverlayScrollbar from '@/ds-components/OverlayScrollbar';
-import TextLink from '@/ds-components/TextLink';
+import MdxProvider from '@/mdx-components/MdxProvider';
import NotFound from '@/pages/NotFound';
import * as styles from './index.module.scss';
@@ -32,19 +31,11 @@ function SsoGuide({ ssoConnector, className }: Props) {
return (
- (
-
- {children}
-
- ),
- }}
- >
+
-
+
);
diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml
index 9f28f2d34..5980f161b 100644
--- a/pnpm-lock.yaml
+++ b/pnpm-lock.yaml
@@ -2884,9 +2884,12 @@ importers:
'@logto/shared':
specifier: workspace:^3.1.1
version: link:../shared
+ '@mdx-js/mdx':
+ specifier: ^3.0.1
+ version: 3.0.1
'@mdx-js/react':
- specifier: ^1.6.22
- version: 1.6.22(react@18.2.0)
+ specifier: ^3.0.1
+ version: 3.0.1(@types/react@18.0.31)(react@18.2.0)
'@monaco-editor/react':
specifier: ^4.6.0
version: 4.6.0(monaco-editor@0.47.0)(react-dom@18.2.0(react@18.2.0))(react@18.2.0)
@@ -2899,9 +2902,6 @@ importers:
'@parcel/core':
specifier: 2.9.3
version: 2.9.3
- '@parcel/transformer-mdx':
- specifier: 2.9.3
- version: 2.9.3(@mdx-js/react@1.6.22(react@18.2.0))(@parcel/core@2.9.3)
'@parcel/transformer-sass':
specifier: 2.9.3
version: 2.9.3(@parcel/core@2.9.3)
@@ -2942,11 +2942,8 @@ importers:
specifier: ^29.4.0
version: 29.4.0
'@types/mdx':
- specifier: ^2.0.1
- version: 2.0.1
- '@types/mdx-js__react':
- specifier: ^1.5.5
- version: 1.5.5
+ specifier: ^2.0.13
+ version: 2.0.13
'@types/react':
specifier: ^18.0.31
version: 18.0.31
@@ -3040,6 +3037,9 @@ importers:
lint-staged:
specifier: ^15.0.0
version: 15.0.2
+ mermaid:
+ specifier: ^10.9.1
+ version: 10.9.1
nanoid:
specifier: ^5.0.1
version: 5.0.1
@@ -3418,7 +3418,7 @@ importers:
version: 8.57.0
jest:
specifier: ^29.7.0
- version: 29.7.0(@types/node@20.10.4)
+ version: 29.7.0(@types/node@20.10.4)(ts-node@10.9.2(@types/node@20.10.4)(typescript@5.3.3))
jest-matcher-specific-error:
specifier: ^1.0.0
version: 1.0.0
@@ -3670,7 +3670,7 @@ importers:
version: 3.0.0
jest:
specifier: ^29.7.0
- version: 29.7.0(@types/node@20.12.7)
+ version: 29.7.0(@types/node@20.12.7)(ts-node@10.9.2(@swc/core@1.3.52(@swc/helpers@0.5.1))(@types/node@20.12.7)(typescript@5.3.3))
jest-environment-jsdom:
specifier: ^29.0.0
version: 29.2.2
@@ -3679,7 +3679,7 @@ importers:
version: 2.0.0
jest-transformer-svg:
specifier: ^2.0.0
- version: 2.0.0(jest@29.7.0(@types/node@20.12.7))(react@18.2.0)
+ version: 2.0.0(jest@29.7.0(@types/node@20.12.7)(ts-node@10.9.2(@swc/core@1.3.52(@swc/helpers@0.5.1))(@types/node@20.12.7)(typescript@5.3.3)))(react@18.2.0)
js-base64:
specifier: ^3.7.5
version: 3.7.5
@@ -3818,7 +3818,7 @@ importers:
version: 10.0.0
jest:
specifier: ^29.7.0
- version: 29.7.0(@types/node@20.10.4)
+ version: 29.7.0(@types/node@20.10.4)(ts-node@10.9.2(@types/node@20.10.4)(typescript@5.3.3))
jest-matcher-specific-error:
specifier: ^1.0.0
version: 1.0.0
@@ -4475,10 +4475,6 @@ packages:
resolution: {integrity: sha512-vg8Gih2MLK+kOkHJp4gBEIkyaIi00jgWot2D9QOmmfLC8jINSOzmCLta6Bvz/JSBCqnegV0L80jhxkol5GWNfQ==}
engines: {node: '>=6.9.0'}
- '@babel/core@7.12.9':
- resolution: {integrity: sha512-gTXYh3M5wb7FRXQy+FErKFAv90BnlOuNn1QkCK2lREoPAjrQCO49+HVSrFoe5uakFAF5eenS75KbO2vQiLrTMQ==}
- engines: {node: '>=6.9.0'}
-
'@babel/core@7.24.4':
resolution: {integrity: sha512-MBVlMXP+kkl5394RBLSxxk/iLTeVGuXTV3cIDXavPpMMqnSnt6apKgan/U8O3USWZCWZT/TbgfEpKa4uMgN4Dg==}
engines: {node: '>=6.9.0'}
@@ -4517,9 +4513,6 @@ packages:
peerDependencies:
'@babel/core': ^7.0.0
- '@babel/helper-plugin-utils@7.10.4':
- resolution: {integrity: sha512-O4KCvQA6lLiMU9l2eawBPMf1xPP8xPfB3iEQw150hOVTqj/rfXz0ThTb4HEzqQfs2Bmo5Ay8BzxfzVtBrr9dVg==}
-
'@babel/helper-plugin-utils@7.20.2':
resolution: {integrity: sha512-8RvlJG2mj4huQ4pZ+rU9lqKi9ZKiRmuvGuM2HlWmkmgOhbs6zEAw6IEiJ5cQqGbDzGZOhwuOQNtZMi/ENLjZoQ==}
engines: {node: '>=6.9.0'}
@@ -4574,12 +4567,6 @@ packages:
engines: {node: '>=6.0.0'}
hasBin: true
- '@babel/plugin-proposal-object-rest-spread@7.12.1':
- resolution: {integrity: sha512-s6SowJIjzlhx8o7lsFx5zmY4At6CTtDvgNQDdPzkBQucle58A6b/TTeEBYtyDgmcXjUTM+vE8YOGHZzzbc/ioA==}
- deprecated: This proposal has been merged to the ECMAScript standard and thus this plugin is no longer maintained. Please use @babel/plugin-transform-object-rest-spread instead.
- peerDependencies:
- '@babel/core': ^7.0.0-0
-
'@babel/plugin-syntax-async-generators@7.8.4':
resolution: {integrity: sha512-tycmZxkGfZaxhMRbXlPXuVFpdWlXpir2W4AMhSJgRKzk/eDlIXOhb2LHWoLpDF7TEHylV5zNhykX6KAgHJmTNw==}
peerDependencies:
@@ -4605,11 +4592,6 @@ packages:
peerDependencies:
'@babel/core': ^7.0.0-0
- '@babel/plugin-syntax-jsx@7.12.1':
- resolution: {integrity: sha512-1yRi7yAtB0ETgxdY9ti/p2TivUxJkTdhu/ZbF9MshVGqOx1TdB3b7xCXs49Fupgg50N45KcAsRP/ZqWjs9SRjg==}
- peerDependencies:
- '@babel/core': ^7.0.0-0
-
'@babel/plugin-syntax-jsx@7.18.6':
resolution: {integrity: sha512-6mmljtAedFGTWu2p/8WIORGwy+61PLgOMPOdazc7YoJ9ZCWUyFy3A6CpPkRKLKD1ToAesxX8KGEViAiLo9N+7Q==}
engines: {node: '>=6.9.0'}
@@ -4658,12 +4640,6 @@ packages:
peerDependencies:
'@babel/core': ^7.0.0-0
- '@babel/plugin-transform-parameters@7.20.3':
- resolution: {integrity: sha512-oZg/Fpx0YDrj13KsLyO8I/CX3Zdw7z0O9qOd95SqcoIzuqy/WTGWvePeHAnZCN54SfdyjHcb1S30gc8zlzlHcA==}
- engines: {node: '>=6.9.0'}
- peerDependencies:
- '@babel/core': ^7.0.0-0
-
'@babel/runtime@7.17.9':
resolution: {integrity: sha512-lSiBBvodq29uShpWGNbgFdKYNiFDo5/HIYsaCEY9ff4sb10x9jizo2+pRrSyF4jKZCXqgzuqBOQKbUm90gQwJg==}
engines: {node: '>=6.9.0'}
@@ -4703,6 +4679,9 @@ packages:
'@bcoe/v8-coverage@0.2.3':
resolution: {integrity: sha512-0hYQ8SB4Db5zvZB4axdMHGwEaQjkZzFjQiN9LVYvIFB2nSUHW9tYpxWriPrWDASIxiaXax83REcLxuSdnGPZtw==}
+ '@braintree/sanitize-url@6.0.4':
+ resolution: {integrity: sha512-s3jaWicZd0pkP0jf5ysyHUI/RE7MHos6qlToFcGWXVp+ykHOy77OUMrfbgJ9it2C5bow7OIQwYYaHjk9XlBQ2A==}
+
'@changesets/apply-release-plan@6.1.4':
resolution: {integrity: sha512-FMpKF1fRlJyCZVYHr3CbinpZZ+6MwvOtWUuO8uo+svcATEoc1zRDcj23pAurJ2TZ/uVz1wFHH6K3NlACy0PLew==}
@@ -5287,16 +5266,14 @@ packages:
'@manypkg/get-packages@1.1.3':
resolution: {integrity: sha512-fo+QhuU3qE/2TQMQmbVMqaQ6EWbMhi4ABWP+O4AM1NqPBuy0OrApV5LO6BrrgnhtAHS2NH6RrVk9OL181tTi8A==}
- '@mdx-js/mdx@1.6.22':
- resolution: {integrity: sha512-AMxuLxPz2j5/6TpF/XSdKpQP1NlG0z11dFOlq+2IP/lSgl11GY8ji6S/rgsViN/L0BDvHvUMruRb7ub+24LUYA==}
+ '@mdx-js/mdx@3.0.1':
+ resolution: {integrity: sha512-eIQ4QTrOWyL3LWEe/bu6Taqzq2HQvHcyTMaOrI95P2/LmJE7AsfPfgJGuFLPVqBUE1BC1rik3VIhU+s9u72arA==}
- '@mdx-js/react@1.6.22':
- resolution: {integrity: sha512-TDoPum4SHdfPiGSAaRBw7ECyI8VaHpK8GJugbJIJuqyh6kzw9ZLJZW3HGL3NNrJGxcAixUvqROm+YuQOo5eXtg==}
+ '@mdx-js/react@3.0.1':
+ resolution: {integrity: sha512-9ZrPIU4MGf6et1m1ov3zKf+q9+deetI51zprKB1D/z3NOb+rUxxtEl3mCjW5wTGh6VhRdwPueh1oRzi6ezkA8A==}
peerDependencies:
- react: ^16.13.1 || ^17.0.0
-
- '@mdx-js/util@1.6.22':
- resolution: {integrity: sha512-H1rQc1ZOHANWBvPcW+JpGwr+juXSxM8Q8YCkm3GhZd8REu1fHR3z99CErO1p9pkcfcxZnMdIZdIsXkOHY0NilA==}
+ '@types/react': '>=16'
+ react: '>=16'
'@microsoft/applicationinsights-web-snippet@1.0.1':
resolution: {integrity: sha512-2IHAOaLauc8qaAitvWS+U931T+ze+7MNWrDHY47IENP5y2UA0vqJDu67kWZDdpCN1fFC77sfgfB+HV7SrKshnQ==}
@@ -5603,12 +5580,6 @@ packages:
resolution: {integrity: sha512-yNL27dbOLhkkrjaQjiQ7Im9VOxmkfuuSNSmS0rA3gEjVcm07SLKRzWkAaPnyx44Lb6bzyOTWwVrb9aMmxgADpA==}
engines: {node: '>= 12.0.0', parcel: ^2.9.3}
- '@parcel/transformer-mdx@2.9.3':
- resolution: {integrity: sha512-SE3mnCPefhS3p3pWLMUvQmMf4tHfVLqTxVLikrKR1WRwhIBzuYEm9UbayDadZPmGB9JYE4QIQKGCeDa97geyAg==}
- engines: {node: '>= 12.0.0', parcel: ^2.9.3}
- peerDependencies:
- '@mdx-js/react': ^1.6.22
-
'@parcel/transformer-postcss@2.9.3':
resolution: {integrity: sha512-HoDvPqKzhpmvMmHqQhDnt8F1vH61m6plpGiYaYnYv2Om4HHi5ZIq9bO+9QLBnTKfaZ7ndYSefTKOxTYElg7wyw==}
engines: {node: '>= 12.0.0', parcel: ^2.9.3}
@@ -6453,6 +6424,9 @@ packages:
'@types/accepts@1.3.5':
resolution: {integrity: sha512-jOdnI/3qTpHABjM5cx1Hc0sKsPoYCp+DP/GJRGtDlPd7fiV9oXGGIcjW/ZOxLIvjGz8MA+uMZI9metHlgqbgwQ==}
+ '@types/acorn@4.0.6':
+ resolution: {integrity: sha512-veQTnWP+1D/xbxVrPC3zHnCZRjSrKfhbMUlEA43iMZLu7EsnTtkJklIuwrCPbOi8YkvDQAiW05VQQFvvz9oieQ==}
+
'@types/aria-query@5.0.1':
resolution: {integrity: sha512-XTIieEY+gvJ39ChLcB4If5zHtPxt3Syj5rgZR+e1ctpmK8NjPf0zFqsz4JpLJT0xla9GFDKjy8Cpu331nrmE1Q==}
@@ -6501,9 +6475,21 @@ packages:
'@types/cookies@0.7.7':
resolution: {integrity: sha512-h7BcvPUogWbKCzBR2lY4oqaZbO3jXZksexYJVFvkrFeLgbZjQkU4x8pRq6eg2MHXQhY0McQdqmmsxRWlVAHooA==}
+ '@types/d3-scale-chromatic@3.0.3':
+ resolution: {integrity: sha512-laXM4+1o5ImZv3RpFAsTRn3TEkzqkytiOY0Dz0sq5cnd1dtNlk6sHLon4OvqaiJb28T0S/TdsBI3Sjsy+keJrw==}
+
+ '@types/d3-scale@4.0.8':
+ resolution: {integrity: sha512-gkK1VVTr5iNiYJ7vWDI+yUFFlszhNMtVeneJ6lUTKPjprsvLLI9/tgEGiXJOnlINJA8FyA88gfnQsHbybVZrYQ==}
+
+ '@types/d3-time@3.0.3':
+ resolution: {integrity: sha512-2p6olUZ4w3s+07q3Tm2dbiMZy5pCDfYwtLXXHUnVzXgQlZ/OyPtUz6OL382BkOuGlLXqfT+wqv8Fw2v8/0geBw==}
+
'@types/debug@4.1.7':
resolution: {integrity: sha512-9AonUzyTjXXhEOa0DnqpzZi6VHlqKMswga9EXjpXnnqxwLtdvPPtlO8evrI5D9S6asFRCQ6v+wpiUKbw+vKqyg==}
+ '@types/estree-jsx@1.0.5':
+ resolution: {integrity: sha512-52CcUVNFyfb1A2ALocQw/Dd1BQFNmSdkuC3BkZ6iqhdMfQz7JWOFRuJFloOzjk+6WijU56m9oKXFAXc7o3Towg==}
+
'@types/estree@1.0.5':
resolution: {integrity: sha512-/kYRxGDLWzHOB7q+wtSUQlFrtcdUccpfy+X+9iMBpHK8QLLhx2wIPYuS5DYtR9Wa/YlZAbIovy7qVdB1Aq6Lyw==}
@@ -6594,17 +6580,14 @@ packages:
'@types/koa__cors@5.0.0':
resolution: {integrity: sha512-LCk/n25Obq5qlernGOK/2LUwa/2YJb2lxHUkkvYFDOpLXlVI6tKcdfCHRBQnOY4LwH6el5WOLs6PD/a8Uzau6g==}
- '@types/mdast@3.0.10':
- resolution: {integrity: sha512-W864tg/Osz1+9f4lrGTZpCSO5/z4608eUp19tbozkq2HJK6i3z1kT0H9tlADXuYIb1YYOBByU4Jsqkk75q48qA==}
+ '@types/mdast@3.0.15':
+ resolution: {integrity: sha512-LnwD+mUEfxWMa1QpDraczIn6k0Ee3SMicuYSSzS6ZYl2gKS09EClnJYGd8Du6rfc5r/GZEk5o1mRb8TaTj03sQ==}
'@types/mdast@4.0.1':
resolution: {integrity: sha512-IlKct1rUTJ1T81d8OHzyop15kGv9A/ff7Gz7IJgrk6jDb4Udw77pCJ+vq8oxZf4Ghpm+616+i1s/LNg/Vh7d+g==}
- '@types/mdx-js__react@1.5.5':
- resolution: {integrity: sha512-k8pnaP6JXVlQh18HgL5X6sYFNC/qZnzO7R2+HsmwrwUd+JnnsU0d9lyyT0RQrHg1anxDU36S98TI/fsGtmYqqg==}
-
- '@types/mdx@2.0.1':
- resolution: {integrity: sha512-JPEv4iAl0I+o7g8yVWDwk30es8mfVrjkvh5UeVR2sYPpZCK44vrAPsbJpIS+rJAUxLgaSAMKTEH5Vn5qd9XsrQ==}
+ '@types/mdx@2.0.13':
+ resolution: {integrity: sha512-+OWZQfAYyio6YkJb3HLxDrvnx6SWWDbC0zVPfBRzUk0/nqoDyf6dNxQi3eArPe8rJ473nobTMQ/8Zk+LxJ+Yuw==}
'@types/methods@1.1.4':
resolution: {integrity: sha512-ymXWVrDiCxTBE3+RIrrP533E70eA+9qu7zdWoHuOmGujkYtzf4HQF96b8nwHLqhuf4ykX61IGRIB38CC6/sImQ==}
@@ -6645,9 +6628,6 @@ packages:
'@types/parse-json@4.0.0':
resolution: {integrity: sha512-//oorEZjL6sbPcKUaCdIGlIUeH26mgzimjBB77G6XRgnDl/L5wOnpyBGRe/Mmf5CVW3PwEBE1NjiMZ/ssFh4wA==}
- '@types/parse5@5.0.3':
- resolution: {integrity: sha512-kUNnecmtkunAoQ3CnjmMkzNU/gtxG8guhi+Fk2U/kOpIKjIMKnXGp4IJCgQJrXSgMsWYimYG4TGjz/UzbGEBTw==}
-
'@types/pg@8.11.2':
resolution: {integrity: sha512-G2Mjygf2jFMU/9hCaTYxJrwdObdcnuQde1gndooZSOHsNSaCehAuwc7EIuSA34Do8Jx2yZ19KtvW8P0j4EuUXw==}
@@ -7138,14 +7118,6 @@ packages:
peerDependencies:
'@babel/core': ^7.8.0
- babel-plugin-apply-mdx-type-prop@1.6.22:
- resolution: {integrity: sha512-VefL+8o+F/DfK24lPZMtJctrCVOfgbqLAGZSkxwhazQv4VxPg3Za/i40fu22KR2m8eEda+IfSOlPLUSIiLcnCQ==}
- peerDependencies:
- '@babel/core': ^7.11.6
-
- babel-plugin-extract-import-names@1.6.22:
- resolution: {integrity: sha512-yJ9BsJaISua7d8zNT7oRG1ZLBJCIdZ4PZqmH8qa9N5AK01ifk3fnkc98AXhtzE7UkfCsEumvoQWgoYLhOnJ7jQ==}
-
babel-plugin-istanbul@6.1.1:
resolution: {integrity: sha512-Y1IQok9821cC9onCx5otgFfRm7Lm+I+wwxOx738M/WLPZ9Q42m4IG5W0FNX8WLL2gYMZo3JkuXIH2DOpWM+qwA==}
engines: {node: '>=8'}
@@ -7165,9 +7137,6 @@ packages:
peerDependencies:
'@babel/core': ^7.0.0
- bail@1.0.5:
- resolution: {integrity: sha512-xFbRxM1tahm08yHBP16MMjVUAvDaBMD38zsM9EMAUN61omwLmKlOpB/Zku5QkjZ8TZ4vn53pj+t518cH0S03RQ==}
-
bail@2.0.2:
resolution: {integrity: sha512-0xO6mYd7JB2YesxDKplafRpsiOzPt9V02ddPCLbY1xYGPOX24NTyN50qnUxgCPcSoYMhKpAuBTjQoRZCAkUDRw==}
@@ -7309,10 +7278,6 @@ packages:
resolution: {integrity: sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ==}
engines: {node: '>=6'}
- camelcase-css@2.0.1:
- resolution: {integrity: sha512-QOSvevhslijgYwRx6Rv7zKdMF8lbRmx+uQGx2+vDc+KI/eBnsy9kit5aj23AgGu3pa4t9AgwbnXWqS+iOY+2aA==}
- engines: {node: '>= 6'}
-
camelcase-keys@6.2.2:
resolution: {integrity: sha512-YrwaA0vEKazPBkn0ipTiMpSajYDSe+KjQfrjhcBMxJt/znbvlHd8Pw/Vamaz5EB4Wfhs3SUR3Z9mwRu/P3s3Yg==}
engines: {node: '>=8'}
@@ -7340,9 +7305,6 @@ packages:
caniuse-lite@1.0.30001618:
resolution: {integrity: sha512-p407+D1tIkDvsEAPS22lJxLQQaG8OTBEqo0KhzfABGk0TU4juBNDSfH0hyAp/HRyx+M8L17z/ltyhxh27FTfQg==}
- ccount@1.1.0:
- resolution: {integrity: sha512-vlNK021QdI7PNeiUh/lKkC/mNHHfV0m/Ad5JoI0TYtlBnJAslM/JIkm/tGC88bkLIwO6OQ5uV6ztS6kVAtCDlg==}
-
ccount@2.0.1:
resolution: {integrity: sha512-eyrF0jiFpY+3drT6383f1qhkbGsLSifNAjA61IUjZjmLCWjItY6LB9ft9YhoDgwfmclB2zhu51Lc7+95b8NRAg==}
@@ -7370,9 +7332,15 @@ packages:
resolution: {integrity: sha512-kWWXztvZ5SBQV+eRgKFeh8q5sLuZY2+8WUIzlxWVTg+oGwY14qylx1KbKzHd8P6ZYkAg0xyIDU9JMHhyJMZ1jw==}
engines: {node: '>=10'}
+ character-entities-html4@2.1.0:
+ resolution: {integrity: sha512-1v7fgQRj6hnSwFpq1Eu0ynr/CDEw0rXo2B61qXrLNdHZmPKgb7fqS1a2JwF0rISo9q77jDI8VMEHoApn8qDoZA==}
+
character-entities-legacy@1.1.4:
resolution: {integrity: sha512-3Xnr+7ZFS1uxeiUDvV02wQ+QDbc55o97tIV5zHScSPJpcLm/r0DFPcoY3tYRp+VZukxuMeKgXYmsXQHO05zQeA==}
+ character-entities-legacy@3.0.0:
+ resolution: {integrity: sha512-RpPp0asT/6ufRm//AJVwpViZbGM/MkjQFxJccQRHmISF/22NBtsHqAWmL+/pmkPWoIUJdWyeVleTl1wydHATVQ==}
+
character-entities@1.2.4:
resolution: {integrity: sha512-iBMyeEHxfVnIakwOuDXpVkc54HijNgCyQB2w0VfGQThle6NXn50zU6V/u+LDhxHcDUPojn6Kpga3PTAD8W1bQw==}
@@ -7382,6 +7350,9 @@ packages:
character-reference-invalid@1.1.4:
resolution: {integrity: sha512-mKKUkUbhPpQlCOfIuZkvSEgktjPFIsZKRRbC6KWVEMvlzblj3i3asQv5ODsrwt0N3pHAEvjP8KTQPHkp0+6jOg==}
+ character-reference-invalid@2.0.1:
+ resolution: {integrity: sha512-iBZ4F4wRbyORVsu0jPV7gXkOsGYjGHPmAyv+HiHG8gi5PtC9KI2j1+v8/tlibRvjoWX027ypmG/n0HtO5t7unw==}
+
chardet@0.7.0:
resolution: {integrity: sha512-mT8iDcrh03qDGRRmoA2hmBJnxpllMR+0/0qlzjqZES6NdiWDcZkCNAk4rPFZ9Q85r27unkiNNg8ZOiwZXBHwcA==}
@@ -7477,8 +7448,8 @@ packages:
resolution: {integrity: sha512-QVb0dM5HvG+uaxitm8wONl7jltx8dqhfU33DcqtOZcLSVIKSDDLDi7+0LbAKiyI8hD9u42m2YxXSkMGWThaecQ==}
engines: {iojs: '>= 1.0.0', node: '>= 0.12.0'}
- collapse-white-space@1.0.6:
- resolution: {integrity: sha512-jEovNnrhMuqyCcjfEJA56v0Xq8SkIoPKDyaHahwo3POf4qcSXqMYuwNcOTzp74vTsR9Tn08z4MxWqAhcekogkQ==}
+ collapse-white-space@2.1.0:
+ resolution: {integrity: sha512-loKTxY1zCOuG4j9f6EPnuyyYkf58RnhhWTvRoZEokgB+WbdXehfjFviyOVYkqzEWz1Q5kRiZdBYS5SwxbQYwzw==}
collect-v8-coverage@1.0.1:
resolution: {integrity: sha512-iBPtljfCNcTKNAto0KEtDfZ3qzjJvqE3aTGZsbhjSBlorqpXJlaWWtPO35D+ZImoC3KWejX64o+yPGxhWSTzfg==}
@@ -7531,6 +7502,10 @@ packages:
resolution: {integrity: sha512-QrWXB+ZQSVPmIWIhtEO9H+gwHaMGYiF5ChvoJ+K9ZGHG/sVsa6yiesAD1GC/x46sET00Xlwo1u49RVVVzvcSkw==}
engines: {node: '>= 10'}
+ commander@8.3.0:
+ resolution: {integrity: sha512-OkTL9umf+He2DZkUq8f8J9of7yL6RJKI24dVITBmNfZBmri9zYZQrKkuXiKhyfPSu8tUhnVBB1iKXevvnlR4Ww==}
+ engines: {node: '>= 12'}
+
commondir@1.0.1:
resolution: {integrity: sha512-W9pAhw0ja1Edb5GVdIF1mjZw/ASI0AlShXM83UUGe2DVr5TdAPEA1OA8m/g8zWp9x6On7gqufY+FatDbC3MDQg==}
@@ -7578,9 +7553,6 @@ packages:
engines: {node: '>=16'}
hasBin: true
- convert-source-map@1.9.0:
- resolution: {integrity: sha512-ASFBup0Mz1uyiIjANan1jzLQami9z1PoYSZCiiYW2FczPbenXc45FZdBZLzOT+r6+iciuEModtmCti+hjaAk0A==}
-
convert-source-map@2.0.0:
resolution: {integrity: sha512-Kvp459HrV2FEJ1CAsi1Ku+MY3kasH19TFykTz2xWmMeq6bk2NU3XXvfJ+Q61m0xktWwt+1HSYf3JZsTms3aRJg==}
@@ -7601,6 +7573,9 @@ packages:
core-js@3.34.0:
resolution: {integrity: sha512-aDdvlDder8QmY91H88GzNi9EtQi2TjvQhpCX6B1v/dAZHU1AuLgHvRh54RiOerpEhEW46Tkf+vgAViB/CWC0ag==}
+ cose-base@1.0.3:
+ resolution: {integrity: sha512-s9whTXInMSgAp/NVXVNuVxVKzGH2qck3aQlVHxDCdAEPgtMKwc4Wq6/QKhgdEdgbLSi9rBTAcPoRa6JpiG4ksg==}
+
cosmiconfig-typescript-loader@5.0.0:
resolution: {integrity: sha512-+8cK7jRAReYkMwMiG+bxhcNKiHJDM6bR9FD/nGBXOWdMLuYawjF5cGrtLilJ+LGd3ZjCXnJjR5DkfWPoIVlqJA==}
engines: {node: '>=v16'}
@@ -7719,26 +7694,133 @@ packages:
resolution: {integrity: sha512-YGZxdTTL9lmLkCUTpg4j0zQ7IhRB5ZmqNBbGCl3Tg6MP/d5/6sY7L5mmTjzbc6JKgVZYiqTQTNhPFsbXNGlRaA==}
engines: {node: '>=0.8'}
+ cytoscape-cose-bilkent@4.1.0:
+ resolution: {integrity: sha512-wgQlVIUJF13Quxiv5e1gstZ08rnZj2XaLHGoFMYXz7SkNfCDOOteKBE6SYRfA9WxxI/iBc3ajfDoc6hb/MRAHQ==}
+ peerDependencies:
+ cytoscape: ^3.2.0
+
+ cytoscape@3.29.2:
+ resolution: {integrity: sha512-2G1ycU28Nh7OHT9rkXRLpCDP30MKH1dXJORZuBhtEhEW7pKwgPi77ImqlCWinouyE1PNepIOGZBOrE84DG7LyQ==}
+ engines: {node: '>=0.10'}
+
d3-array@2.12.1:
resolution: {integrity: sha512-B0ErZK/66mHtEsR1TkPEEkwdy+WDesimkM5gpZr5Dsg54BiTA5RXtYW5qTLIAcekaS9xfZrzBLF/OAkB3Qn1YQ==}
+ d3-array@3.2.4:
+ resolution: {integrity: sha512-tdQAmyA18i4J7wprpYq8ClcxZy3SC31QMeByyCFyRt7BVHdREQZ5lpzoe5mFEYZUWe+oq8HBvk9JjpibyEV4Jg==}
+ engines: {node: '>=12'}
+
+ d3-axis@3.0.0:
+ resolution: {integrity: sha512-IH5tgjV4jE/GhHkRV0HiVYPDtvfjHQlQfJHs0usq7M30XcSBvOotpmH1IgkcXsO/5gEQZD43B//fc7SRT5S+xw==}
+ engines: {node: '>=12'}
+
+ d3-brush@3.0.0:
+ resolution: {integrity: sha512-ALnjWlVYkXsVIGlOsuWH1+3udkYFI48Ljihfnh8FZPF2QS9o+PzGLBslO0PjzVoHLZ2KCVgAM8NVkXPJB2aNnQ==}
+ engines: {node: '>=12'}
+
+ d3-chord@3.0.1:
+ resolution: {integrity: sha512-VE5S6TNa+j8msksl7HwjxMHDM2yNK3XCkusIlpX5kwauBfXuyLAtNg9jCp/iHH61tgI4sb6R/EIMWCqEIdjT/g==}
+ engines: {node: '>=12'}
+
d3-color@2.0.0:
resolution: {integrity: sha512-SPXi0TSKPD4g9tw0NMZFnR95XVgUZiBH+uUTqQuDu1OsE2zomHU7ho0FISciaPvosimixwHFl3WHLGabv6dDgQ==}
+ d3-color@3.1.0:
+ resolution: {integrity: sha512-zg/chbXyeBtMQ1LbD/WSoW2DpC3I0mpmPdW+ynRTj/x2DAWYrIY7qeZIHidozwV24m4iavr15lNwIwLxRmOxhA==}
+ engines: {node: '>=12'}
+
+ d3-contour@4.0.2:
+ resolution: {integrity: sha512-4EzFTRIikzs47RGmdxbeUvLWtGedDUNkTcmzoeyg4sP/dvCexO47AaQL7VKy/gul85TOxw+IBgA8US2xwbToNA==}
+ engines: {node: '>=12'}
+
+ d3-delaunay@6.0.4:
+ resolution: {integrity: sha512-mdjtIZ1XLAM8bm/hx3WwjfHt6Sggek7qH043O8KEjDXN40xi3vx/6pYSVTwLjEgiXQTbvaouWKynLBiUZ6SK6A==}
+ engines: {node: '>=12'}
+
+ d3-dispatch@3.0.1:
+ resolution: {integrity: sha512-rzUyPU/S7rwUflMyLc1ETDeBj0NRuHKKAcvukozwhshr6g6c5d8zh4c2gQjY2bZ0dXeGLWc1PF174P2tVvKhfg==}
+ engines: {node: '>=12'}
+
+ d3-drag@3.0.0:
+ resolution: {integrity: sha512-pWbUJLdETVA8lQNJecMxoXfH6x+mO2UQo8rSmZ+QqxcbyA3hfeprFgIT//HW2nlHChWeIIMwS2Fq+gEARkhTkg==}
+ engines: {node: '>=12'}
+
+ d3-dsv@3.0.1:
+ resolution: {integrity: sha512-UG6OvdI5afDIFP9w4G0mNq50dSOsXHJaRE8arAS5o9ApWnIElp8GZw1Dun8vP8OyHOZ/QJUKUJwxiiCCnUwm+Q==}
+ engines: {node: '>=12'}
+ hasBin: true
+
+ d3-ease@3.0.1:
+ resolution: {integrity: sha512-wR/XK3D3XcLIZwpbvQwQ5fK+8Ykds1ip7A2Txe0yxncXSdq1L9skcG7blcedkOX+ZcgxGAmLX1FrRGbADwzi0w==}
+ engines: {node: '>=12'}
+
+ d3-fetch@3.0.1:
+ resolution: {integrity: sha512-kpkQIM20n3oLVBKGg6oHrUchHM3xODkTzjMoj7aWQFq5QEM+R6E4WkzT5+tojDY7yjez8KgCBRoj4aEr99Fdqw==}
+ engines: {node: '>=12'}
+
+ d3-force@3.0.0:
+ resolution: {integrity: sha512-zxV/SsA+U4yte8051P4ECydjD/S+qeYtnaIyAs9tgHCqfguma/aAQDjo85A9Z6EKhBirHRJHXIgJUlffT4wdLg==}
+ engines: {node: '>=12'}
+
d3-format@2.0.0:
resolution: {integrity: sha512-Ab3S6XuE/Q+flY96HXT0jOXcM4EAClYFnRGY5zsjRGNy6qCYrQsMffs7cV5Q9xejb35zxW5hf/guKw34kvIKsA==}
+ d3-format@3.1.0:
+ resolution: {integrity: sha512-YyUI6AEuY/Wpt8KWLgZHsIU86atmikuoOmCfommt0LYHiQSPjvX2AcFc38PX0CBpr2RCyZhjex+NS/LPOv6YqA==}
+ engines: {node: '>=12'}
+
+ d3-geo@3.1.1:
+ resolution: {integrity: sha512-637ln3gXKXOwhalDzinUgY83KzNWZRKbYubaG+fGVuc/dxO64RRljtCTnf5ecMyE1RIdtqpkVcq0IbtU2S8j2Q==}
+ engines: {node: '>=12'}
+
+ d3-hierarchy@3.1.2:
+ resolution: {integrity: sha512-FX/9frcub54beBdugHjDCdikxThEqjnR93Qt7PvQTOHxyiNCAlvMrHhclk3cD5VeAaq9fxmfRp+CnWw9rEMBuA==}
+ engines: {node: '>=12'}
+
d3-interpolate@3.0.1:
resolution: {integrity: sha512-3bYs1rOD33uo8aqJfKP3JWPAibgw8Zm2+L9vBKEHJ2Rg+viTR7o5Mmv5mZcieN+FRYaAOWX5SJATX6k1PWz72g==}
engines: {node: '>=12'}
+ d3-path@1.0.9:
+ resolution: {integrity: sha512-VLaYcn81dtHVTjEHd8B+pbe9yHWpXKZUC87PzoFmsFrJqgFwDe/qxfp5MlfsfM1V5E/iVt0MmEbWQ7FVIXh/bg==}
+
d3-path@2.0.0:
resolution: {integrity: sha512-ZwZQxKhBnv9yHaiWd6ZU4x5BtCQ7pXszEV9CU6kRgwIQVQGLMv1oiL4M+MK/n79sYzsj+gcgpPQSctJUsLN7fA==}
+ d3-path@3.1.0:
+ resolution: {integrity: sha512-p3KP5HCf/bvjBSSKuXid6Zqijx7wIfNW+J/maPs+iwR35at5JCbLUT0LzF1cnjbCHWhqzQTIN2Jpe8pRebIEFQ==}
+ engines: {node: '>=12'}
+
+ d3-polygon@3.0.1:
+ resolution: {integrity: sha512-3vbA7vXYwfe1SYhED++fPUQlWSYTTGmFmQiany/gdbiWgU/iEyQzyymwL9SkJjFFuCS4902BSzewVGsHHmHtXg==}
+ engines: {node: '>=12'}
+
+ d3-quadtree@3.0.1:
+ resolution: {integrity: sha512-04xDrxQTDTCFwP5H6hRhsRcb9xxv2RzkcsygFzmkSIOJy3PeRJP7sNk3VRIbKXcog561P9oU0/rVH6vDROAgUw==}
+ engines: {node: '>=12'}
+
+ d3-random@3.0.1:
+ resolution: {integrity: sha512-FXMe9GfxTxqd5D6jFsQ+DJ8BJS4E/fT5mqqdjovykEB2oFbTMDVdg1MGFxfQW+FBOGoB++k8swBrgwSHT1cUXQ==}
+ engines: {node: '>=12'}
+
+ d3-sankey@0.12.3:
+ resolution: {integrity: sha512-nQhsBRmM19Ax5xEIPLMY9ZmJ/cDvd1BG3UVvt5h3WRxKg5zGRbvnteTyWAbzeSvlh3tW7ZEmq4VwR5mB3tutmQ==}
+
+ d3-scale-chromatic@3.1.0:
+ resolution: {integrity: sha512-A3s5PWiZ9YCXFye1o246KoscMWqf8BsD9eRiJ3He7C9OBaxKhAd5TFCdEx/7VbKtxxTsu//1mMJFrEt572cEyQ==}
+ engines: {node: '>=12'}
+
d3-scale@4.0.2:
resolution: {integrity: sha512-GZW464g1SH7ag3Y7hXjf8RoUuAFIqklOAq3MRl4OaWabTFJY9PN/E1YklhXLh+OQ3fM9yS2nOkCoS+WLZ6kvxQ==}
engines: {node: '>=12'}
+ d3-selection@3.0.0:
+ resolution: {integrity: sha512-fmTRWbNMmsmWq6xJV8D19U/gw/bwrHfNXxrIN+HfZgnzqTHp9jOmKMhsTUjXOJnZOdZY9Q28y4yebKzqDKlxlQ==}
+ engines: {node: '>=12'}
+
+ d3-shape@1.3.7:
+ resolution: {integrity: sha512-EUkvKjqPFUAZyOlhY5gzCxCeI0Aep04LwIRpsZ/mLFelJiUfnK56jo5JMDSE7yyP2kLSb6LtF+S5chMk7uqPqw==}
+
d3-shape@3.1.0:
resolution: {integrity: sha512-tGDh1Muf8kWjEDT/LswZJ8WF85yDZLvVJpYU9Nq+8+yW1Z5enxrmXOhTArlkaElU+CTn0OTVNli+/i+HP45QEQ==}
engines: {node: '>=12'}
@@ -7746,9 +7828,38 @@ packages:
d3-time-format@3.0.0:
resolution: {integrity: sha512-UXJh6EKsHBTjopVqZBhFysQcoXSv/5yLONZvkQ5Kk3qbwiUYkdX17Xa1PT6U1ZWXGGfB1ey5L8dKMlFq2DO0Ag==}
+ d3-time-format@4.1.0:
+ resolution: {integrity: sha512-dJxPBlzC7NugB2PDLwo9Q8JiTR3M3e4/XANkreKSUxF8vvXKqm1Yfq4Q5dl8budlunRVlUUaDUgFt7eA8D6NLg==}
+ engines: {node: '>=12'}
+
d3-time@2.1.1:
resolution: {integrity: sha512-/eIQe/eR4kCQwq7yxi7z4c6qEXf2IYGcjoWB5OOQy4Tq9Uv39/947qlDcN2TLkiTzQWzvnsuYPB9TrWaNfipKQ==}
+ d3-time@3.1.0:
+ resolution: {integrity: sha512-VqKjzBLejbSMT4IgbmVgDjpkYrNWUYJnbCGo874u7MMKIWsILRX+OpX/gTk8MqjpT1A/c6HY2dCA77ZN0lkQ2Q==}
+ engines: {node: '>=12'}
+
+ d3-timer@3.0.1:
+ resolution: {integrity: sha512-ndfJ/JxxMd3nw31uyKoY2naivF+r29V+Lc0svZxe1JvvIRmi8hUsrMvdOwgS1o6uBHmiz91geQ0ylPP0aj1VUA==}
+ engines: {node: '>=12'}
+
+ d3-transition@3.0.1:
+ resolution: {integrity: sha512-ApKvfjsSR6tg06xrL434C0WydLr7JewBB3V+/39RMHsaXTOG0zmt/OAXeng5M5LBm0ojmxJrpomQVZ1aPvBL4w==}
+ engines: {node: '>=12'}
+ peerDependencies:
+ d3-selection: 2 - 3
+
+ d3-zoom@3.0.0:
+ resolution: {integrity: sha512-b8AmV3kfQaqWAuacbPuNbL6vahnOJflOhexLzMMNLga62+/nh0JzvJ0aO/5a5MVgUFGS7Hu1P9P03o3fJkDCyw==}
+ engines: {node: '>=12'}
+
+ d3@7.9.0:
+ resolution: {integrity: sha512-e1U46jVP+w7Iut8Jt8ri1YsPOvFpg46k+K8TpCb0P+zjCkjkPnV7WzfDJzMHy1LnA+wj5pLT1wjO901gLXeEhA==}
+ engines: {node: '>=12'}
+
+ dagre-d3-es@7.0.10:
+ resolution: {integrity: sha512-qTCQmEhcynucuaZgY5/+ti3X/rnszKZhEQH/ZdWdtP1tA/y3VoHJzcVrO9pjjJCNpigfscAtoUB5ONcd2wNn0A==}
+
damerau-levenshtein@1.0.8:
resolution: {integrity: sha512-sdQSFB7+llfUcQHUQO3+B8ERRj0Oa4w9POWMI/puGtuf7gFywGmkaLCElnudfTiKZV+NvHqL0ifzdrI8Ro7ESA==}
@@ -7780,6 +7891,9 @@ packages:
resolution: {integrity: sha512-dDCnyH2WnnKusqvZZ6+jA1O51Ibt8ZMRNkDZdyAyK4YfbDwa/cEmuztzG5pk6hqlp9aSBPYcjOlktquahGwGeA==}
engines: {node: '>=0.11'}
+ dayjs@1.11.11:
+ resolution: {integrity: sha512-okzr3f11N6WuqYtZSvm+F776mB41wRZMhKP+hc34YdW+KmtYYK9iqvHSwo2k9FEH3fhGXvOPV6yz2IcSrfRUDg==}
+
dayjs@1.11.6:
resolution: {integrity: sha512-zZbY5giJAinCG+7AGaw0wIhNZ6J8AhWuSXKvuc1KAyMiRsvGQWqh4L+MomvhdAYjN+lqvVCMq1I41e3YHvXkyQ==}
@@ -7885,6 +7999,9 @@ packages:
resolution: {integrity: sha512-TllpMR/t0M5sqCXfj85i4XaAzxmS5tVA16dqvdkMwGmzI+dXLXnw3J+3Vdv7VKw+ThlTMboK6i9rnZ6Nntj5CQ==}
engines: {node: '>= 14'}
+ delaunator@5.0.1:
+ resolution: {integrity: sha512-8nvh+XBe96aCESrGOqMp/84b13H9cdKbG5P2ejQCh4d4sK9RL4371qou9drQjMhvnPmhWl5hnmqbEE0fXr9Xnw==}
+
delayed-stream@1.0.0:
resolution: {integrity: sha512-ZySD7Nf91aLB0RxL4KGrKHBXl7Eds1DAmEdcoVawXnLD7SDhpNgtuII2aAkg7a7QS41jxPSZ17p4VdGnMHk3MQ==}
engines: {node: '>=0.4.0'}
@@ -7911,9 +8028,6 @@ packages:
resolution: {integrity: sha512-2sJGJTaXIIaR1w4iJSNoN0hnMY7Gpc/n8D4qSCJw8QqFWXf7cuAgnEHxBpweaVcPevC2l3KpjYCx3NypQQgaJg==}
engines: {node: '>= 0.8', npm: 1.2.8000 || >= 1.4.16}
- detab@2.0.4:
- resolution: {integrity: sha512-8zdsQA5bIkoRECvCrNKPla84lyoR7DSAyf7p0YgXzBO9PDJx8KntPUay7NS6yp+KdxdVtiE5SpHKtbp2ZQyA9g==}
-
detect-indent@6.1.0:
resolution: {integrity: sha512-reYkTUJAZb9gUuZ2RvVCNhVHdg62RHnJ7WJl8ftMi4diZ6NWlciOzQN88pUhSELEwflJht4oQDv0F0BMlwaYtA==}
engines: {node: '>=8'}
@@ -7995,6 +8109,9 @@ packages:
resolution: {integrity: sha512-GrwoxYN+uWlzO8uhUXRl0P+kHE4GtVPfYzVLcUxPL7KNdHKj66vvlhiweIHqYYXWlw+T8iLMp42Lm67ghw4WMQ==}
engines: {node: '>= 4'}
+ dompurify@3.1.5:
+ resolution: {integrity: sha512-lwG+n5h8QNpxtyrJW/gJWckL+1/DQiYMX8f7t8Z2AZTPw1esVrqjI63i7Zc2Gz0aKzLVMYC1V1PL/ky+aY/NgA==}
+
domutils@2.8.0:
resolution: {integrity: sha512-w96Cjofp72M5IIhpjgobBimYEfoPjx1Vx0BSX9P30WBdZW2WIKU0T1Bd0kz2eNZ9ikjKgHbEyKx8BB6H1L3h3A==}
@@ -8037,6 +8154,9 @@ packages:
electron-to-chromium@1.4.738:
resolution: {integrity: sha512-lwKft2CLFztD+vEIpesrOtCrko/TFnEJlHFdRhazU7Y/jx5qc4cqsocfVrBg4So4gGe9lvxnbLIoev47WMpg+A==}
+ elkjs@0.9.3:
+ resolution: {integrity: sha512-f/ZeWvW/BCXbhGEf1Ujp29EASo/lk1FDnETgNKwJrsVvGZhUWCZyg3xLJjAsxfOmt8KjswHmI5EwCQcPMpOYhQ==}
+
emitter-listener@1.1.2:
resolution: {integrity: sha512-Bt1sBAGFHY9DKY+4/2cV6izcKJUf5T7/gkdmkxzX/qv9CcGH8xSwVRW5mtX03SWJtRTWSOpzCuWN9rBFYZepZQ==}
@@ -8380,6 +8500,21 @@ packages:
resolution: {integrity: sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA==}
engines: {node: '>=4.0'}
+ estree-util-attach-comments@3.0.0:
+ resolution: {integrity: sha512-cKUwm/HUcTDsYh/9FgnuFqpfquUbwIqwKM26BVCGDPVgvaCl/nDCCjUfiLlx6lsEZ3Z4RFxNbOQ60pkaEwFxGw==}
+
+ estree-util-build-jsx@3.0.1:
+ resolution: {integrity: sha512-8U5eiL6BTrPxp/CHbs2yMgP8ftMhR5ww1eIKoWRMlqvltHF8fZn5LRDvTKuxD3DUn+shRbLGqXemcP51oFCsGQ==}
+
+ estree-util-is-identifier-name@3.0.0:
+ resolution: {integrity: sha512-hFtqIDZTIUZ9BXLb8y4pYGyk6+wekIivNVTcmvk8NoOh+VeRn5y6cEHzbURrWbfp1fIqdVipilzj+lfaadNZmg==}
+
+ estree-util-to-js@2.0.0:
+ resolution: {integrity: sha512-WDF+xj5rRWmD5tj6bIqRi6CkLIXbbNQUcxQHzGysQzvHmdYG2G7p/Tf0J0gpxGgkeMZNTIjT/AoSvC9Xehcgdg==}
+
+ estree-util-visit@2.0.0:
+ resolution: {integrity: sha512-m5KgiH85xAhhW8Wta0vShLcUvOsh3LLPI2YVwcbio1l7E09NTLL1EyMZFM1OyWowoH0skScNbhOPl4kcBgzTww==}
+
estree-walker@2.0.2:
resolution: {integrity: sha512-Rfkk/Mp/DL7JVje3u18FxFujQlTNR2q6QfMSMB7AvCBx91NGj/ba3kCfza0f6dVDbw7YlRf/nDrn7pQrCCyQ/w==}
@@ -8902,24 +9037,15 @@ packages:
resolution: {integrity: sha512-0hJU9SCPvmMzIBdZFqNPXWa6dqh7WdH0cII9y+CyS8rG3nL48Bclra9HmKhVVUHyPWNH5Y7xDwAB7bfgSjkUMQ==}
engines: {node: '>= 0.4'}
- hast-to-hyperscript@9.0.1:
- resolution: {integrity: sha512-zQgLKqF+O2F72S1aa4y2ivxzSlko3MAvxkwG8ehGmNiqd98BIN3JM1rAJPmplEyLmGLO2QZYJtIneOSZ2YbJuA==}
-
- hast-util-from-parse5@6.0.1:
- resolution: {integrity: sha512-jeJUWiN5pSxW12Rh01smtVkZgZr33wBokLzKLwinYOUfSzm1Nl/c3GUGebDyOKjdsRgMvoVbV0VpAcpjF4NrJA==}
-
hast-util-parse-selector@2.2.5:
resolution: {integrity: sha512-7j6mrk/qqkSehsM92wQjdIgWM2/BW61u/53G6xmC8i1OmEdKLHbk419QKQUjz6LglWsfqoiHmyMRkP1BGjecNQ==}
- hast-util-raw@6.0.1:
- resolution: {integrity: sha512-ZMuiYA+UF7BXBtsTBNcLBF5HzXzkyE6MLzJnL605LKE8GJylNjGc4jjxazAHUtcwT5/CEt6afRKViYB4X66dig==}
+ hast-util-to-estree@3.1.0:
+ resolution: {integrity: sha512-lfX5g6hqVh9kjS/B9E2gSkvHH4SZNiQFiqWS0x9fENzEl+8W12RqdRxX6d/Cwxi30tPQs3bIO+aolQJNp1bIyw==}
hast-util-to-jsx-runtime@2.2.0:
resolution: {integrity: sha512-wSlp23N45CMjDg/BPW8zvhEi3R+8eRE1qFbjEyAUzMCzu2l1Wzwakq+Tlia9nkCtEl5mDxa7nKHsvYJ6Gfn21A==}
- hast-util-to-parse5@6.0.0:
- resolution: {integrity: sha512-Lu5m6Lgm/fWuz8eWnrKezHtVY83JeRGaNQ2kn9aJgqaxvVkFCZQBEhgodZUDUvoodgyROHDb3r5IxAEdl6suJQ==}
-
hast-util-whitespace@3.0.0:
resolution: {integrity: sha512-88JUN06ipLwsnv+dVn+OIYOvAuvBMy/Qoi6O7mQHxdPXpjy+Cd6xRkWwux7DKO+4sYILtLBRIKgsdpS2gQc7qw==}
@@ -8975,9 +9101,6 @@ packages:
html-url-attributes@3.0.0:
resolution: {integrity: sha512-/sXbVCWayk6GDVg3ctOX6nxaVj7So40FcFAnWlWGNAB1LpYKcV5Cd10APjPjW80O7zYW2MsjBV4zZ7IZO5fVow==}
- html-void-elements@1.0.5:
- resolution: {integrity: sha512-uE/TxKuyNIcx44cIWnjr/rfIATDH7ZaOMmstu0CwhFG1Dunhlp4OC6/NMbhiwoq5BpW0ubi303qnEk/PZj614w==}
-
htmlnano@2.0.3:
resolution: {integrity: sha512-S4PGGj9RbdgW8LhbILNK7W9JhmYP8zmDY7KDV/8eCiJBQJlbmltp5I0gv8c5ntLljfdxxfmJ+UJVSqyH4mb41A==}
peerDependencies:
@@ -9206,9 +9329,15 @@ packages:
is-alphabetical@1.0.4:
resolution: {integrity: sha512-DwzsA04LQ10FHTZuL0/grVDk4rFoVH1pjAToYwBrHSxcrBIGQuXrQMtD5U1b0U2XVgKZCTLLP8u2Qxqhy3l2Vg==}
+ is-alphabetical@2.0.1:
+ resolution: {integrity: sha512-FWyyY60MeTNyeSRpkM2Iry0G9hpr7/9kD40mD/cGQEuilcZYS4okz8SN2Q6rLCJ8gbCt6fN+rC+6tMGS99LaxQ==}
+
is-alphanumerical@1.0.4:
resolution: {integrity: sha512-UzoZUr+XfVz3t3v4KyGEniVL9BDRoQtY7tOyrRybkVNjDFWyo1yhXNGrrBTQxp3ib9BLAWs7k2YKBQsFRkZG9A==}
+ is-alphanumerical@2.0.1:
+ resolution: {integrity: sha512-hmbYhX/9MUMF5uh7tOXyK/n0ZvWpad5caBA17GsC6vyuCqaWliRG5K1qS9inmUhEMaOBIW7/whAnSwveW/LtZw==}
+
is-array-buffer@3.0.4:
resolution: {integrity: sha512-wcjaerHw0ydZwfhiKbXJWLDY8A7yV7KhjQOpb83hGgGfId/aQa4TOvwyzn2PuswW2gPCYEL/nEAiSVpdOj1lXw==}
engines: {node: '>= 0.4'}
@@ -9234,10 +9363,6 @@ packages:
resolution: {integrity: sha512-gDYaKHJmnj4aWxyj6YHyXVpdQawtVLHU5cb+eztPGczf6cjuTdwve5ZIEfgXqH4e57An1D1AKf8CZ3kYrQRqYA==}
engines: {node: '>= 0.4'}
- is-buffer@2.0.5:
- resolution: {integrity: sha512-i2R6zNFDwgEHJyQUtJEk0XFi1i0dPFn/oqjK3/vPCcDeJvW5NQ83V8QbicfF1SupOaB0h8ntgBC2YiE7dfyctQ==}
- engines: {node: '>=4'}
-
is-builtin-module@3.2.1:
resolution: {integrity: sha512-BSLE3HnV2syZ0FK0iMA/yUGplUeMmNz4AW5fnTunbCIqZi4vG3WjJT9FHMy5D69xmAYBHXQhJdALdpwVxV501A==}
engines: {node: '>=6'}
@@ -9267,6 +9392,9 @@ packages:
is-decimal@1.0.4:
resolution: {integrity: sha512-RGdriMmQQvZ2aqaQq3awNA6dCGtKpiDFcOzrTWrDAT2MiWrKQVPmxLGHl7Y2nNu6led0kEyoX0enY0qXYsv9zw==}
+ is-decimal@2.0.1:
+ resolution: {integrity: sha512-AAB9hiomQs5DXWcRB1rqsxGUstbRroFOPPVAomNk/3XHR5JyEZChOyTWe2oayKnsSsr/kcGqF+z6yuH6HHpN0A==}
+
is-extglob@2.1.1:
resolution: {integrity: sha512-SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ==}
engines: {node: '>=0.10.0'}
@@ -9300,6 +9428,9 @@ packages:
is-hexadecimal@1.0.4:
resolution: {integrity: sha512-gyPJuv83bHMpocVYoqof5VDiZveEoGoFL8m3BXNb2VW8Xs+rz9kqO8LOQ5DH6EsuvilT1ApazU0pyl+ytbPtlw==}
+ is-hexadecimal@2.0.1:
+ resolution: {integrity: sha512-DgZQp241c8oO6cA1SbTEWiXeoxV42vlcJxgH+B3hi1AiqqKruZR3ZGF8In3fj4+/y/7rHvlOZLZtgJ/4ttYGZg==}
+
is-interactive@2.0.0:
resolution: {integrity: sha512-qP1vozQRI+BMOPcjFzrjXuQvdak2pHNUMZoeG2eRbiSqyvbEf/wQtEOTOX1guk6E3t36RkaqiSt8A/6YElNxLQ==}
engines: {node: '>=12'}
@@ -9348,10 +9479,6 @@ packages:
resolution: {integrity: sha512-yvkRyxmFKEOQ4pNXCmJG5AEQNlXJS5LaONXo5/cLdTZdWvsZ1ioJEonLGAosKlMWE8lwUy/bJzMjcw8az73+Fg==}
engines: {node: '>=0.10.0'}
- is-plain-obj@2.1.0:
- resolution: {integrity: sha512-YWnfyRwxL/+SsrWYfOpUtz5b3YD+nyfkHvjbcanzk8zgyO4ASD67uVMRt8k5bM4lLMDnXfriRhOpemw+NfT1eA==}
- engines: {node: '>=8'}
-
is-plain-obj@4.1.0:
resolution: {integrity: sha512-+Pgi+vMuUNkJyExiMBt5IlFoMyKnr5zhJ4Uspz58WOhBF5QoIZkFyNHIbBAtHwzVAgk5RtndVNsDRN61/mmDqg==}
engines: {node: '>=12'}
@@ -9369,6 +9496,9 @@ packages:
is-reference@1.2.1:
resolution: {integrity: sha512-U82MsXXiFIrjCK4otLT+o2NA2Cd2g5MLoOVXUZjIOhLurrRxpEXzI8O0KZHr3IjLvlAH1kTPYSuqer5T9ZVBKQ==}
+ is-reference@3.0.2:
+ resolution: {integrity: sha512-v3rht/LgVcsdZa3O2Nqs+NMowLOxeOm7Ay9+/ARQ2F+qEoANRcqrjAZKGN0v8ymUetZGgkp26LTnGT7H0Qo9Pg==}
+
is-regex@1.1.4:
resolution: {integrity: sha512-kvRdxDsxZjhzUX07ZnLydzS1TU/TJlTUHHY4YLL87e37oUA49DfkLqgy+VjFocowy29cKvcSiu+kIv728jTTVg==}
engines: {node: '>= 0.4'}
@@ -9431,9 +9561,6 @@ packages:
resolution: {integrity: sha512-LvIm3/KWzS9oRFHugab7d+M/GcBXuXX5xZkzPmN+NxihdQlZUQ4dWuSV1xR/sq6upL1TJEDrfBgRepHFdBtSNQ==}
engines: {node: '>= 0.4'}
- is-whitespace-character@1.0.4:
- resolution: {integrity: sha512-SDweEzfIZM0SJV0EUga669UTKlmL0Pq8Lno0QDQsPnvECB3IM2aP0gdx5TrU0A01MAPfViaZiI2V1QMZLaKK5w==}
-
is-windows@0.2.0:
resolution: {integrity: sha512-n67eJYmXbniZB7RF4I/FTjK1s6RPOCTxhYrVYLRaCt3lF0mpWZPKr3T2LSZAqyjQsxR2qMmGYXXzK0YWwcPM1Q==}
engines: {node: '>=0.10.0'}
@@ -9442,9 +9569,6 @@ packages:
resolution: {integrity: sha512-eXK1UInq2bPmjyX6e3VHIzMLobc4J94i4AWn+Hpq3OU5KkrRC96OAcR3PRJ/pGu6m8TRnBHP9dkXQVsT/COVIA==}
engines: {node: '>=0.10.0'}
- is-word-character@1.0.4:
- resolution: {integrity: sha512-5SMO8RVennx3nZrqtKwCGyyetPE9VDba5ugvKLaD4KopPG5kR4mQ7tNt/r7feL5yt5h3lpuBbIUmCOG2eSzXHA==}
-
isarray@0.0.1:
resolution: {integrity: sha512-D2S+3GLxWH+uhrNEcoh/fnmYeP8E8/zHl644d/jdA0g2uyXvy3sb0qxotE+ne0LtccHknQzWwZEzhak7oJ0COQ==}
@@ -9810,6 +9934,10 @@ packages:
jws@4.0.0:
resolution: {integrity: sha512-KDncfTmOZoOMTFG4mBlG0qUIOlc03fmzH+ru6RgYVZhPkyiy/92Owlt/8UEN+a4TXR1FQetfIpJE8ApdvdVxTg==}
+ katex@0.16.10:
+ resolution: {integrity: sha512-ZiqaC04tp2O5utMsl2TEZTXxa6WSC4yo0fv5ML++D3QZv/vx2Mct0mTlRx3O+uUkjfuAgOkzsCmq5MiUEsDDdA==}
+ hasBin: true
+
keygrip@1.1.0:
resolution: {integrity: sha512-iYSchDJ+liQ8iwbSI2QqsQOvqv58eJCEanyJPJi+Khyu8smkcKSFUCbPwzFcL7YVtZ6eONjqRX/38caJ7QjRAQ==}
engines: {node: '>= 0.6'}
@@ -9817,6 +9945,9 @@ packages:
keyv@4.5.4:
resolution: {integrity: sha512-oxVHkHR/EJf2CNXnWxRLW6mg7JyCCUcG0DtEGmL2ctUo1PNTin1PUil+r/+4r5MpVgC/fn1kjsx7mjSujKqIpw==}
+ khroma@2.1.0:
+ resolution: {integrity: sha512-Ls993zuzfayK269Svk9hzpeGUKob/sIgZzyHYdjQoAdQetRKpOLj+k/QQQ/6Qi0Yz65mlROrfd+Ev+1+7dz9Kw==}
+
kind-of@6.0.3:
resolution: {integrity: sha512-dcS1ul+9tmeD95T+x28/ehLgd9mENa3LsvDTtzm3vyBEO7RPptvAD+t44WVXaUjTBRcrpFeFlC8WCruUR456hw==}
engines: {node: '>=0.10.0'}
@@ -9890,6 +10021,9 @@ packages:
resolution: {integrity: sha512-MbjN408fEndfiQXbFQ1vnd+1NoLDsnQW41410oQBXiyXDMYH5z505juWa4KUE1LqxRC7DgOgZDbKLxHIwm27hA==}
engines: {node: '>=0.10'}
+ layout-base@1.0.2:
+ resolution: {integrity: sha512-8h2oVEZNktL4BH2JCOI90iD1yXwL6iNW7KcCKT2QZgQJR2vbqDsldCTPRU9NifTCqHZci57XvQQ15YTu+sTYPg==}
+
leven@3.1.0:
resolution: {integrity: sha512-qsda+H8jTaUaN/x5vzW2rzc+8Rw4TAQ/4KjB46IwK5VH+IlVeeeje/EoZRpiXvIqjFgK84QffqPztGI3VBLG1A==}
engines: {node: '>=6'}
@@ -10161,8 +10295,9 @@ packages:
resolution: {integrity: sha512-2L3MIgJynYrZ3TYMriLDLWocz15okFakV6J12HXvMXDHui2x/zgChzg1u9mFFGbbGWE+GsLpQByt4POb9Or+uA==}
engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0}
- markdown-escapes@1.0.4:
- resolution: {integrity: sha512-8z4efJYk43E0upd0NbVXwgSTQs6cT3T06etieCMEg7dRbzCbxUCK/GHlX8mhHRDcp+OLlHkPKsvqQTCvsRl2cg==}
+ markdown-extensions@2.0.0:
+ resolution: {integrity: sha512-o5vL7aDWatOTX8LzaS1WMoaoxIiLRQJuIKKe2wAw6IeULDHaqbiqiggmx+pKvZDb1Sj+pE46Sn1T7lCqfFtg1Q==}
+ engines: {node: '>=16'}
markdown-table@3.0.2:
resolution: {integrity: sha512-y8j3a5/DkJCmS5x4dMCQL+OR0+2EAq3DOtio1COSHsmW2BGXnNCK3v12hJt1LrUz5iZH5g0LmuYOjDdI+czghA==}
@@ -10173,15 +10308,12 @@ packages:
mathml-tag-names@2.1.3:
resolution: {integrity: sha512-APMBEanjybaPzUrfqU0IMU5I0AswKMH7k8OTLs0vvV4KZpExkTkY87nR/zpbuTPj+gARop7aGUbl11pnDfW6xg==}
- mdast-squeeze-paragraphs@4.0.0:
- resolution: {integrity: sha512-zxdPn69hkQ1rm4J+2Cs2j6wDEv7O17TfXTJ33tl/+JPIoEmtV9t2ZzBM5LPHE8QlHsmVD8t3vPKCyY3oH+H8MQ==}
-
- mdast-util-definitions@4.0.0:
- resolution: {integrity: sha512-k8AJ6aNnUkB7IE+5azR9h81O5EQ/cTDXtWdMq9Kk5KcEW/8ritU5CeLg/9HhOC++nALHBlaogJ5jz0Ybk3kPMQ==}
-
mdast-util-find-and-replace@3.0.1:
resolution: {integrity: sha512-SG21kZHGC3XRTSUhtofZkBzZTJNM5ecCi0SK2IMKmSXR8vO3peL+kb1O0z7Zl83jKtutG4k5Wv/W7V3/YHvzPA==}
+ mdast-util-from-markdown@1.3.1:
+ resolution: {integrity: sha512-4xTO/M8c82qBcnQc1tgpNtubGUW/Y1tBQ1B0i5CtSoelOLKFYlElIr3bvgREYYO5iRqbMY1YuqZng0GVOI8Qww==}
+
mdast-util-from-markdown@2.0.0:
resolution: {integrity: sha512-n7MTOr/z+8NAX/wmhhDji8O3bRvPTV/U0oTCaZJkjhPSKTPhS3xufVhKGF8s1pJ7Ox4QgoIU7KHseh09S+9rTA==}
@@ -10203,18 +10335,30 @@ packages:
mdast-util-gfm@3.0.0:
resolution: {integrity: sha512-dgQEX5Amaq+DuUqf26jJqSK9qgixgd6rYDHAv4aTBuA92cTknZlKpPfa86Z/s8Dj8xsAQpFfBmPUHWJBWqS4Bw==}
+ mdast-util-mdx-expression@2.0.0:
+ resolution: {integrity: sha512-fGCu8eWdKUKNu5mohVGkhBXCXGnOTLuFqOvGMvdikr+J1w7lDJgxThOKpwRWzzbyXAU2hhSwsmssOY4yTokluw==}
+
+ mdast-util-mdx-jsx@3.1.2:
+ resolution: {integrity: sha512-eKMQDeywY2wlHc97k5eD8VC+9ASMjN8ItEZQNGwJ6E0XWKiW/Z0V5/H8pvoXUf+y+Mj0VIgeRRbujBmFn4FTyA==}
+
+ mdast-util-mdx@3.0.0:
+ resolution: {integrity: sha512-JfbYLAW7XnYTTbUsmpu0kdBUVe+yKVJZBItEjwyYJiDJuZ9w4eeaqks4HQO+R7objWgS2ymV60GYpI14Ug554w==}
+
+ mdast-util-mdxjs-esm@2.0.1:
+ resolution: {integrity: sha512-EcmOpxsZ96CvlP03NghtH1EsLtr0n9Tm4lPUJUBccV9RwUOneqSycg19n5HGzCf+10LozMRSObtVr3ee1WoHtg==}
+
mdast-util-phrasing@4.0.0:
resolution: {integrity: sha512-xadSsJayQIucJ9n053dfQwVu1kuXg7jCTdYsMK8rqzKZh52nLfSH/k0sAxE0u+pj/zKZX+o5wB+ML5mRayOxFA==}
- mdast-util-to-hast@10.0.1:
- resolution: {integrity: sha512-BW3LM9SEMnjf4HXXVApZMt8gLQWVNXc3jryK0nJu/rOXPOnlkUjmdkDlmxMirpbU9ILncGFIwLH/ubnWBbcdgA==}
-
mdast-util-to-hast@13.0.2:
resolution: {integrity: sha512-U5I+500EOOw9e3ZrclN3Is3fRpw8c19SMyNZlZ2IS+7vLsNzb2Om11VpIVOR+/0137GhZsFEF6YiKD5+0Hr2Og==}
mdast-util-to-markdown@2.1.0:
resolution: {integrity: sha512-SR2VnIEdVNCJbP6y7kVTJgPLifdr8WEU440fQec7qHoHOUz/oJ2jmNRqdDQ3rbiStOXb2mCDGTuwsK5OPUgYlQ==}
+ mdast-util-to-string@3.2.0:
+ resolution: {integrity: sha512-V4Zn/ncyN1QNSqSBxTrMOLpjr+IKdHl2v3KVLoWmDPscP4r9GcCi71gjgvUV1SFSKh92AjAG4peFuBl2/YgCJg==}
+
mdast-util-to-string@4.0.0:
resolution: {integrity: sha512-0H44vDimn51F0YwvxSJSm0eCDOJTRlmN0R1yBh4HLj9wiV1Dn0QoXGbvFAWj2hSItVTlCmBF1hqKlIyUBVFLPg==}
@@ -10224,9 +10368,6 @@ packages:
mdn-data@2.0.30:
resolution: {integrity: sha512-GaqWWShW4kv/G9IEucWScBx9G1/vsFZZJUO+tD26M8J8z3Kw5RDQjaoZe03YAClgeS/SWPOcb4nkFBTEi5DUEA==}
- mdurl@1.0.1:
- resolution: {integrity: sha512-/sKlQJCBYVY9Ers9hqzKou4H6V5UWc/M59TH2dvkt+84itfnq7uFOMLpOiOS4ujvHP4etln18fmIxA5R5fll0g==}
-
media-typer@0.3.0:
resolution: {integrity: sha512-dq+qelQ9akHpcOl/gUVRTxVIOkAJ1wR3QAvb4RsVjS8oVoFjDGTc679wJYmUmknUF5HwMLOgb5O+a3KxfWapPQ==}
engines: {node: '>= 0.6'}
@@ -10253,10 +10394,16 @@ packages:
resolution: {integrity: sha512-8q7VEgMJW4J8tcfVPy8g09NcQwZdbwFEqhe/WZkoIzjn/3TGDwtOCYtXGxA3O8tPzpczCCDgv+P2P5y00ZJOOg==}
engines: {node: '>= 8'}
+ mermaid@10.9.1:
+ resolution: {integrity: sha512-Mx45Obds5W1UkW1nv/7dHRsbfMM1aOKA2+Pxs/IGHNonygDHwmng8xTHyS9z4KWVi0rbko8gjiBmuwwXQ7tiNA==}
+
methods@1.1.2:
resolution: {integrity: sha512-iclAHeNqNm68zFtnZ0e+1L2yUIdvzNoauKU4WBA3VvH/vPFieF7qfRlwUZU+DA9P9bPXIS90ulxoUoCH23sV2w==}
engines: {node: '>= 0.6'}
+ micromark-core-commonmark@1.1.0:
+ resolution: {integrity: sha512-BgHO1aRbolh2hcrzL2d1La37V0Aoz73ymF8rAcKnohLy93titmv62E0gP8Hrx9PKcKrqCZ1BbLGbP3bEhoXYlw==}
+
micromark-core-commonmark@2.0.0:
resolution: {integrity: sha512-jThOz/pVmAYUtkroV3D5c1osFXAMv9e0ypGDOIZuCeAe91/sD6BoE2Sjzt30yuXtwOYUmySOhMas/PVyh02itA==}
@@ -10281,63 +10428,144 @@ packages:
micromark-extension-gfm@3.0.0:
resolution: {integrity: sha512-vsKArQsicm7t0z2GugkCKtZehqUm31oeGBV/KVSorWSy8ZlNAv7ytjFhvaryUiCUJYqs+NoE6AFhpQvBTM6Q4w==}
+ micromark-extension-mdx-expression@3.0.0:
+ resolution: {integrity: sha512-sI0nwhUDz97xyzqJAbHQhp5TfaxEvZZZ2JDqUo+7NvyIYG6BZ5CPPqj2ogUoPJlmXHBnyZUzISg9+oUmU6tUjQ==}
+
+ micromark-extension-mdx-jsx@3.0.0:
+ resolution: {integrity: sha512-uvhhss8OGuzR4/N17L1JwvmJIpPhAd8oByMawEKx6NVdBCbesjH4t+vjEp3ZXft9DwvlKSD07fCeI44/N0Vf2w==}
+
+ micromark-extension-mdx-md@2.0.0:
+ resolution: {integrity: sha512-EpAiszsB3blw4Rpba7xTOUptcFeBFi+6PY8VnJ2hhimH+vCQDirWgsMpz7w1XcZE7LVrSAUGb9VJpG9ghlYvYQ==}
+
+ micromark-extension-mdxjs-esm@3.0.0:
+ resolution: {integrity: sha512-DJFl4ZqkErRpq/dAPyeWp15tGrcrrJho1hKK5uBS70BCtfrIFg81sqcTVu3Ta+KD1Tk5vAtBNElWxtAa+m8K9A==}
+
+ micromark-extension-mdxjs@3.0.0:
+ resolution: {integrity: sha512-A873fJfhnJ2siZyUrJ31l34Uqwy4xIFmvPY1oj+Ean5PHcPBYzEsvqvWGaWcfEIr11O5Dlw3p2y0tZWpKHDejQ==}
+
+ micromark-factory-destination@1.1.0:
+ resolution: {integrity: sha512-XaNDROBgx9SgSChd69pjiGKbV+nfHGDPVYFs5dOoDd7ZnMAE+Cuu91BCpsY8RT2NP9vo/B8pds2VQNCLiu0zhg==}
+
micromark-factory-destination@2.0.0:
resolution: {integrity: sha512-j9DGrQLm/Uhl2tCzcbLhy5kXsgkHUrjJHg4fFAeoMRwJmJerT9aw4FEhIbZStWN8A3qMwOp1uzHr4UL8AInxtA==}
+ micromark-factory-label@1.1.0:
+ resolution: {integrity: sha512-OLtyez4vZo/1NjxGhcpDSbHQ+m0IIGnT8BoPamh+7jVlzLJBH98zzuCoUeMxvM6WsNeh8wx8cKvqLiPHEACn0w==}
+
micromark-factory-label@2.0.0:
resolution: {integrity: sha512-RR3i96ohZGde//4WSe/dJsxOX6vxIg9TimLAS3i4EhBAFx8Sm5SmqVfR8E87DPSR31nEAjZfbt91OMZWcNgdZw==}
+ micromark-factory-mdx-expression@2.0.1:
+ resolution: {integrity: sha512-F0ccWIUHRLRrYp5TC9ZYXmZo+p2AM13ggbsW4T0b5CRKP8KHVRB8t4pwtBgTxtjRmwrK0Irwm7vs2JOZabHZfg==}
+
+ micromark-factory-space@1.1.0:
+ resolution: {integrity: sha512-cRzEj7c0OL4Mw2v6nwzttyOZe8XY/Z8G0rzmWQZTBi/jjwyw/U4uqKtUORXQrR5bAZZnbTI/feRV/R7hc4jQYQ==}
+
micromark-factory-space@2.0.0:
resolution: {integrity: sha512-TKr+LIDX2pkBJXFLzpyPyljzYK3MtmllMUMODTQJIUfDGncESaqB90db9IAUcz4AZAJFdd8U9zOp9ty1458rxg==}
+ micromark-factory-title@1.1.0:
+ resolution: {integrity: sha512-J7n9R3vMmgjDOCY8NPw55jiyaQnH5kBdV2/UXCtZIpnHH3P6nHUKaH7XXEYuWwx/xUJcawa8plLBEjMPU24HzQ==}
+
micromark-factory-title@2.0.0:
resolution: {integrity: sha512-jY8CSxmpWLOxS+t8W+FG3Xigc0RDQA9bKMY/EwILvsesiRniiVMejYTE4wumNc2f4UbAa4WsHqe3J1QS1sli+A==}
+ micromark-factory-whitespace@1.1.0:
+ resolution: {integrity: sha512-v2WlmiymVSp5oMg+1Q0N1Lxmt6pMhIHD457whWM7/GUlEks1hI9xj5w3zbc4uuMKXGisksZk8DzP2UyGbGqNsQ==}
+
micromark-factory-whitespace@2.0.0:
resolution: {integrity: sha512-28kbwaBjc5yAI1XadbdPYHX/eDnqaUFVikLwrO7FDnKG7lpgxnvk/XGRhX/PN0mOZ+dBSZ+LgunHS+6tYQAzhA==}
+ micromark-util-character@1.2.0:
+ resolution: {integrity: sha512-lXraTwcX3yH/vMDaFWCQJP1uIszLVebzUa3ZHdrgxr7KEU/9mL4mVgCpGbyhvNLNlauROiNUq7WN5u7ndbY6xg==}
+
micromark-util-character@2.0.1:
resolution: {integrity: sha512-3wgnrmEAJ4T+mGXAUfMvMAbxU9RDG43XmGce4j6CwPtVxB3vfwXSZ6KhFwDzZ3mZHhmPimMAXg71veiBGzeAZw==}
+ micromark-util-chunked@1.1.0:
+ resolution: {integrity: sha512-Ye01HXpkZPNcV6FiyoW2fGZDUw4Yc7vT0E9Sad83+bEDiCJ1uXu0S3mr8WLpsz3HaG3x2q0HM6CTuPdcZcluFQ==}
+
micromark-util-chunked@2.0.0:
resolution: {integrity: sha512-anK8SWmNphkXdaKgz5hJvGa7l00qmcaUQoMYsBwDlSKFKjc6gjGXPDw3FNL3Nbwq5L8gE+RCbGqTw49FK5Qyvg==}
+ micromark-util-classify-character@1.1.0:
+ resolution: {integrity: sha512-SL0wLxtKSnklKSUplok1WQFoGhUdWYKggKUiqhX+Swala+BtptGCu5iPRc+xvzJ4PXE/hwM3FNXsfEVgoZsWbw==}
+
micromark-util-classify-character@2.0.0:
resolution: {integrity: sha512-S0ze2R9GH+fu41FA7pbSqNWObo/kzwf8rN/+IGlW/4tC6oACOs8B++bh+i9bVyNnwCcuksbFwsBme5OCKXCwIw==}
+ micromark-util-combine-extensions@1.1.0:
+ resolution: {integrity: sha512-Q20sp4mfNf9yEqDL50WwuWZHUrCO4fEyeDCnMGmG5Pr0Cz15Uo7KBs6jq+dq0EgX4DPwwrh9m0X+zPV1ypFvUA==}
+
micromark-util-combine-extensions@2.0.0:
resolution: {integrity: sha512-vZZio48k7ON0fVS3CUgFatWHoKbbLTK/rT7pzpJ4Bjp5JjkZeasRfrS9wsBdDJK2cJLHMckXZdzPSSr1B8a4oQ==}
+ micromark-util-decode-numeric-character-reference@1.1.0:
+ resolution: {integrity: sha512-m9V0ExGv0jB1OT21mrWcuf4QhP46pH1KkfWy9ZEezqHKAxkj4mPCy3nIH1rkbdMlChLHX531eOrymlwyZIf2iw==}
+
micromark-util-decode-numeric-character-reference@2.0.0:
resolution: {integrity: sha512-pIgcsGxpHEtTG/rPJRz/HOLSqp5VTuIIjXlPI+6JSDlK2oljApusG6KzpS8AF0ENUMCHlC/IBb5B9xdFiVlm5Q==}
+ micromark-util-decode-string@1.1.0:
+ resolution: {integrity: sha512-YphLGCK8gM1tG1bd54azwyrQRjCFcmgj2S2GoJDNnh4vYtnL38JS8M4gpxzOPNyHdNEpheyWXCTnnTDY3N+NVQ==}
+
micromark-util-decode-string@2.0.0:
resolution: {integrity: sha512-r4Sc6leeUTn3P6gk20aFMj2ntPwn6qpDZqWvYmAG6NgvFTIlj4WtrAudLi65qYoaGdXYViXYw2pkmn7QnIFasA==}
+ micromark-util-encode@1.1.0:
+ resolution: {integrity: sha512-EuEzTWSTAj9PA5GOAs992GzNh2dGQO52UvAbtSOMvXTxv3Criqb6IOzJUBCmEqrrXSblJIJBbFFv6zPxpreiJw==}
+
micromark-util-encode@2.0.0:
resolution: {integrity: sha512-pS+ROfCXAGLWCOc8egcBvT0kf27GoWMqtdarNfDcjb6YLuV5cM3ioG45Ys2qOVqeqSbjaKg72vU+Wby3eddPsA==}
+ micromark-util-events-to-acorn@2.0.2:
+ resolution: {integrity: sha512-Fk+xmBrOv9QZnEDguL9OI9/NQQp6Hz4FuQ4YmCb/5V7+9eAh1s6AYSvL20kHkD67YIg7EpE54TiSlcsf3vyZgA==}
+
+ micromark-util-html-tag-name@1.2.0:
+ resolution: {integrity: sha512-VTQzcuQgFUD7yYztuQFKXT49KghjtETQ+Wv/zUjGSGBioZnkA4P1XXZPT1FHeJA6RwRXSF47yvJ1tsJdoxwO+Q==}
+
micromark-util-html-tag-name@2.0.0:
resolution: {integrity: sha512-xNn4Pqkj2puRhKdKTm8t1YHC/BAjx6CEwRFXntTaRf/x16aqka6ouVoutm+QdkISTlT7e2zU7U4ZdlDLJd2Mcw==}
+ micromark-util-normalize-identifier@1.1.0:
+ resolution: {integrity: sha512-N+w5vhqrBihhjdpM8+5Xsxy71QWqGn7HYNUvch71iV2PM7+E3uWGox1Qp90loa1ephtCxG2ftRV/Conitc6P2Q==}
+
micromark-util-normalize-identifier@2.0.0:
resolution: {integrity: sha512-2xhYT0sfo85FMrUPtHcPo2rrp1lwbDEEzpx7jiH2xXJLqBuy4H0GgXk5ToU8IEwoROtXuL8ND0ttVa4rNqYK3w==}
+ micromark-util-resolve-all@1.1.0:
+ resolution: {integrity: sha512-b/G6BTMSg+bX+xVCshPTPyAu2tmA0E4X98NSR7eIbeC6ycCqCeE7wjfDIgzEbkzdEVJXRtOG4FbEm/uGbCRouA==}
+
micromark-util-resolve-all@2.0.0:
resolution: {integrity: sha512-6KU6qO7DZ7GJkaCgwBNtplXCvGkJToU86ybBAUdavvgsCiG8lSSvYxr9MhwmQ+udpzywHsl4RpGJsYWG1pDOcA==}
+ micromark-util-sanitize-uri@1.2.0:
+ resolution: {integrity: sha512-QO4GXv0XZfWey4pYFndLUKEAktKkG5kZTdUNaTAkzbuJxn2tNBOr+QtxR2XpWaMhbImT2dPzyLrPXLlPhph34A==}
+
micromark-util-sanitize-uri@2.0.0:
resolution: {integrity: sha512-WhYv5UEcZrbAtlsnPuChHUAsu/iBPOVaEVsntLBIdpibO0ddy8OzavZz3iL2xVvBZOpolujSliP65Kq0/7KIYw==}
+ micromark-util-subtokenize@1.1.0:
+ resolution: {integrity: sha512-kUQHyzRoxvZO2PuLzMt2P/dwVsTiivCK8icYTeR+3WgbuPqfHgPPy7nFKbeqRivBvn/3N3GBiNC+JRTMSxEC7A==}
+
micromark-util-subtokenize@2.0.0:
resolution: {integrity: sha512-vc93L1t+gpR3p8jxeVdaYlbV2jTYteDje19rNSS/H5dlhxUYll5Fy6vJ2cDwP8RnsXi818yGty1ayP55y3W6fg==}
+ micromark-util-symbol@1.1.0:
+ resolution: {integrity: sha512-uEjpEYY6KMs1g7QfJ2eX1SQEV+ZT4rUD3UcF6l57acZvLNK7PBZL+ty82Z1qhK1/yXIY4bdx04FKMgR0g4IAag==}
+
micromark-util-symbol@2.0.0:
resolution: {integrity: sha512-8JZt9ElZ5kyTnO94muPxIGS8oyElRJaiJO8EzV6ZSyGQ1Is8xwl4Q45qU5UOg+bGH4AikWziz0iN4sFLWs8PGw==}
+ micromark-util-types@1.1.0:
+ resolution: {integrity: sha512-ukRBgie8TIAcacscVHSiddHjO4k/q3pnedmzMQ4iwDcK0FtFCohKOlFbaOL/mPgfnPsL3C1ZyxJa4sbWrBl3jg==}
+
micromark-util-types@2.0.0:
resolution: {integrity: sha512-oNh6S2WMHWRZrmutsRmDDfkzKtxF+bc2VxLC9dvtrDIRFln627VsFP6fLMgTryGDljgLPjkrzQSDcPrjPyDJ5w==}
+ micromark@3.2.0:
+ resolution: {integrity: sha512-uD66tJj54JLYq0De10AhWycZWGQNUvDI55xPgk2sQM5kn1JYlhbCMTtEeT27+vAhW2FBQxLlOmS3pmA7/2z4aA==}
+
micromark@4.0.0:
resolution: {integrity: sha512-o/sd0nMof8kYff+TqcDx3VSrgBTcZpSvYcAHIfHhv5VAuNmisCxjhx6YmxS8PFEpb9z5WKWKPdzf0jM23ro3RQ==}
@@ -10443,6 +10671,10 @@ packages:
monaco-editor@0.47.0:
resolution: {integrity: sha512-VabVvHvQ9QmMwXu4du008ZDuyLnHs9j7ThVFsiJoXSOQk18+LF89N4ADzPbFenm0W4V2bGHnFBztIRQTgBfxzw==}
+ mri@1.2.0:
+ resolution: {integrity: sha512-tzzskb3bG8LvYGFF/mDTpq3jpI6Q9wc3LEmBaghu+DdCssd1FakN7Bc0hVNmEyGq1bq3RgfkCb3cmQLpNPOroA==}
+ engines: {node: '>=4'}
+
ms@2.1.2:
resolution: {integrity: sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==}
@@ -10575,6 +10807,9 @@ packages:
engines: {node: '>=10'}
hasBin: true
+ non-layered-tidy-tree-layout@2.0.2:
+ resolution: {integrity: sha512-gkXMxRzUH+PB0ax9dUN0yYF0S25BqeAYqhgMaLUFmpXLEk7Fcu8f4emJuOAY0V8kjDICxROIKsTAKsV/v355xw==}
+
nopt@1.0.10:
resolution: {integrity: sha512-NWmpvLSqUrgrAC9HCuxEvb+PSloHpqVu+FqcO4eeF2h5qYRhA7ev6KvelyQAKtegUbC6RypJnlEOhd8vloNKYg==}
hasBin: true
@@ -10838,6 +11073,9 @@ packages:
parse-entities@2.0.0:
resolution: {integrity: sha512-kkywGpCcRYhqQIchaWqZ875wzpS/bMKhz5HnN3p7wveJTkTtyAB/AlnS0f8DFSqYW1T82t6yEAkEcB+A1I3MbQ==}
+ parse-entities@4.0.1:
+ resolution: {integrity: sha512-SWzvYcSJh4d/SGLIOQfZ/CoNv6BTlI6YEQ7Nj82oDVnRpwe/Z/F1EMx42x3JAOwGBlCjeCH0BRJQbQ/opHL17w==}
+
parse-json@5.2.0:
resolution: {integrity: sha512-ayCKvm/phCGxOkYRSCM82iDwct8/EonSEgCSxWxD7ve6jHggsFl4fZVQBPRNgQoKiuV/odhFrGzQXZwbifC8Rg==}
engines: {node: '>=8'}
@@ -10846,9 +11084,6 @@ packages:
resolution: {integrity: sha512-1Y1A//QUXEZK7YKz+rD9WydcE1+EuPr6ZBgKecAB8tmoW6UFv0NREVJe1p+jRxtThkcbbKkfwIbWJe/IeE6m2Q==}
engines: {node: '>=0.10.0'}
- parse5@6.0.1:
- resolution: {integrity: sha512-Ofn/CTFzRGTTxwpNEs9PP93gXShHcTq255nzRYSKe8AkVpZY7e1fpmTfOyoIvjP5HG7Z2ZM7VS9PPhQGW2pOpw==}
-
parse5@7.1.1:
resolution: {integrity: sha512-kwpuwzB+px5WUg9pyK0IcK/shltJN5/OVhQagxhCQNtT9Y9QRZqNY2e1cmbu/paRh5LMnz/oVTVLBpjFmMZhSg==}
@@ -10908,6 +11143,9 @@ packages:
pend@1.2.0:
resolution: {integrity: sha512-F3asv42UuXchdzt+xXqfW1OGlVBe+mxa2mqI0pg5yAHZPvFmY3Y6drSf/GQ1A86WgWEN9Kzh/WrgKa6iGcHXLg==}
+ periscopic@3.1.0:
+ resolution: {integrity: sha512-vKiQ8RRtkl9P+r/+oefh25C3fhybptkHKCZSPlcXiJux2tJF55GnEj3BVn4A5gKfq9NWWXXrxkHBwVPUfH0opw==}
+
pg-cloudflare@1.1.1:
resolution: {integrity: sha512-xWPagP/4B6BgFO+EKz3JONXv3YDgvkbVrGw2mTo3D6tVDQRh1e7cqVGvyR3BE+eQgAvx1XhW/iEASj4/jCWl3Q==}
@@ -11596,34 +11834,21 @@ packages:
resolution: {integrity: sha512-qx+xQGZVsy55CH0a1hiVwHmqjLryfh7wQyF5HO07XJ9f7dQMY/gPQHhlyDkIzJKC+x2fUCpCcUODUUUFrm7SHA==}
hasBin: true
- remark-footnotes@2.0.0:
- resolution: {integrity: sha512-3Clt8ZMH75Ayjp9q4CorNeyjwIxHFcTkaektplKGl2A1jNGEUey8cKL0ZC5vJwfcD5GFGsNLImLG/NGzWIzoMQ==}
-
remark-gfm@4.0.0:
resolution: {integrity: sha512-U92vJgBPkbw4Zfu/IiW2oTZLSL3Zpv+uI7My2eq8JxKgqraFdU8YUGicEJCEgSbeaG+QDFqIcwwfMTOEelPxuA==}
- remark-mdx@1.6.22:
- resolution: {integrity: sha512-phMHBJgeV76uyFkH4rvzCftLfKCr2RZuF+/gmVcaKrpsihyzmhXjA0BEMDaPTXG5y8qZOKPVo83NAOX01LPnOQ==}
+ remark-mdx@3.0.1:
+ resolution: {integrity: sha512-3Pz3yPQ5Rht2pM5R+0J2MrGoBSrzf+tJG94N+t/ilfdh8YLyyKYtidAYwTveB20BoHAcwIopOUqhcmh2F7hGYA==}
remark-parse@11.0.0:
resolution: {integrity: sha512-FCxlKLNGknS5ba/1lmpYijMUzX2esxW5xQqjWxw2eHFfS2MSdaHVINFmhjo+qN1WhZhNimq0dZATN9pH0IDrpA==}
- remark-parse@8.0.3:
- resolution: {integrity: sha512-E1K9+QLGgggHxCQtLt++uXltxEprmWzNfg+MxpfHsZlrddKzZ/hZyWHDbK3/Ap8HJQqYJRXP+jHczdL6q6i85Q==}
-
remark-rehype@11.0.0:
resolution: {integrity: sha512-vx8x2MDMcxuE4lBmQ46zYUDfcFMmvg80WYX+UNLeG6ixjdCCLcw1lrgAukwBTuOFsS78eoAedHGn9sNM0w7TPw==}
- remark-squeeze-paragraphs@4.0.0:
- resolution: {integrity: sha512-8qRqmL9F4nuLPIgl92XUuxI3pFxize+F1H0e/W3llTk0UsjJaj01+RrirkMw7P21RKe4X6goQhYRSvNWX+70Rw==}
-
remark-stringify@11.0.0:
resolution: {integrity: sha512-1OSmLd3awB/t8qdoEOMazZkNsfVTeY4fTsgzcQFdXNq8ToTN4ZGwrMnlda4K6smTFKD+GRV6O48i6Z4iKgPPpw==}
- repeat-string@1.6.1:
- resolution: {integrity: sha512-PV0dzCYDNfRi1jCDbJzpW7jNNDRuCOG/jI5ctQcGKt/clZD+YcPS3yIlWuTJMmESC8aevCFmWJy5wjAFgNqN6w==}
- engines: {node: '>=0.10'}
-
require-directory@2.1.1:
resolution: {integrity: sha512-fGxEI7+wsG9xrvdjsrlmL22OMTTiHRwAMroiEeMgq8gzoLC/PQr7RsRDSTLUg/bZAZtF+TVIkHc6/4RIKrui+Q==}
engines: {node: '>=0.10.0'}
@@ -11725,6 +11950,9 @@ packages:
resolution: {integrity: sha512-3niqt5bXFY1InKU8HKWqqYTYjtrBaxBMnXELXCXUYgtNYGUtZM5rB46HIC430AyacL95iEniGf7RgqsesykLmQ==}
engines: {node: '>=18.0'}
+ robust-predicates@3.0.2:
+ resolution: {integrity: sha512-IXgzBWvWQwE6PrDI05OvmXUIruQTcoMDzRsOd5CDvHCVLcLHMTSYvOK5Cm46kWqlV3yAbuSpBZdJ5oP5OUoStg==}
+
rollup-plugin-output-size@1.3.0:
resolution: {integrity: sha512-OrTfhj8mxFAO4Yp7OEWwI388uhsiBNDCpfD6tOmcqPfNs5+CWZPDtVmTRZrmXMWfv8skWCOm5ToO4UPy7eRqYg==}
engines: {node: '>=14.16.0'}
@@ -11751,12 +11979,19 @@ packages:
run-parallel@1.2.0:
resolution: {integrity: sha512-5l4VyZR86LZ/lDxZTR6jqL8AFE2S0IFLMP26AbjsLVADxHdhB/c0GUsH+y39UfCi3dzz8OlQuPmnaJOMoDHQBA==}
+ rw@1.3.3:
+ resolution: {integrity: sha512-PdhdWy89SiZogBLaw42zdeqtRJ//zFd2PgQavcICDUgJT5oW10QCRKbJ6bg4r0/UY2M6BWd5tkxuGFRvCkgfHQ==}
+
rxjs@7.8.0:
resolution: {integrity: sha512-F2+gxDshqmIub1KdvZkaEfGDwLNpPvk9Fs6LD/MyQxNgMds/WH9OdDDXOmxUZpME+iSK3rQCctkL0DYyytUqMg==}
rxjs@7.8.1:
resolution: {integrity: sha512-AA3TVj+0A2iuIoQkWEK/tqFjBq2j+6PO6Y0zJcvzLAFhEFIO3HL0vls9hWLncZbAAbK0mar7oZ4V079I/qPMxg==}
+ sade@1.8.1:
+ resolution: {integrity: sha512-xal3CZX1Xlo/k4ApwCFrHVACi9fBqJ7V+mwhBsuf/1IOKbBy098Fex+Wa/5QMubw09pSZ/u8EY8PWgevJsXp1A==}
+ engines: {node: '>=6'}
+
safe-array-concat@1.1.2:
resolution: {integrity: sha512-vj6RsCsWBCf19jIeHEfkRMw8DPiBb+DMXklQ/1SGDHOMlHdPUkZXFQ2YdplS23zESTijAcurb1aSgJA3AgMu1Q==}
engines: {node: '>=0.4'}
@@ -11938,14 +12173,14 @@ packages:
source-map-support@0.5.13:
resolution: {integrity: sha512-SHSKFHadjVA5oR4PPqhtAVdcBWwRYVd6g6cAXnIbRiIwc2EhPrTuKUBdSLvlEKyIP3GCf89fltvcZiP9MMFA1w==}
- source-map@0.5.7:
- resolution: {integrity: sha512-LbrmJOMUSdEVxIKvdcJzQC+nQhe8FUZQTXQy6+I75skNgn3OoQ0DZA8YnFa7gp8tqtL3KPf1kmo0R5DoApeSGQ==}
- engines: {node: '>=0.10.0'}
-
source-map@0.6.1:
resolution: {integrity: sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==}
engines: {node: '>=0.10.0'}
+ source-map@0.7.4:
+ resolution: {integrity: sha512-l3BikUxvPOcn5E74dZiq5BGsTb5yEwhaTSzccU6t4sDOH8NWJCstKO5QT2CvtFoK6F0saL7p9xHAqHOlCPJygA==}
+ engines: {node: '>= 8'}
+
source-map@0.8.0-beta.0:
resolution: {integrity: sha512-2ymg6oRBpebeZi9UUNsgQ89bhx01TcTkmNTGnNO88imTmbSgy4nfujrgVEFKWpMTEGA11EDkTt7mqObTPdigIA==}
engines: {node: '>= 8'}
@@ -12014,9 +12249,6 @@ packages:
state-local@1.0.7:
resolution: {integrity: sha512-HTEHMNieakEnoe33shBYcZ7NX83ACUjCu8c40iOGEZsngj9zRnkqS9j1pqQPXwobB0ZcVTk27REb7COQ0UR59w==}
- state-toggle@1.0.3:
- resolution: {integrity: sha512-d/5Z4/2iiCnHw6Xzghyhb+GcmF89bxwgXG60wjIiZaxnymbyOmI8Hk4VqHXiVVp6u2ysaskFfXg3ekCj4WNftQ==}
-
statuses@1.5.0:
resolution: {integrity: sha512-OpZ3zP+jT1PI7I8nemJX4AKmAX070ZkYPVWV/AaKTJl+tXCTGyVdC1a4SL8RUQYEwk/f34ZX8UTykN68FwrqAA==}
engines: {node: '>= 0.6'}
@@ -12095,6 +12327,9 @@ packages:
string_decoder@1.3.0:
resolution: {integrity: sha512-hkRX8U1WjJFd8LsDJ2yQ/wWWxaopEsABU1XfkM8A+j0+85JAGppt16cr1Whg6KIbb4okU6Mql6BOj+uup/wKeA==}
+ stringify-entities@4.0.4:
+ resolution: {integrity: sha512-IwfBptatlO+QCJUo19AqvrPNqlVMpW9YEL2LIVY+Rpv2qsjCGxaDLNRgeGsQWJhfItebuJhsGSLjaBbNSQ+ieg==}
+
strip-ansi@6.0.1:
resolution: {integrity: sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==}
engines: {node: '>=8'}
@@ -12147,9 +12382,6 @@ packages:
style-search@0.1.0:
resolution: {integrity: sha512-Dj1Okke1C3uKKwQcetra4jSuk0DqbzbYtXipzFlFMZtowbF1x7BKJwB9AayVMyFARvU8EDrZdcax4At/452cAg==}
- style-to-object@0.3.0:
- resolution: {integrity: sha512-CzFnRRXhzWIdItT3OmF8SQfWyahHhjq3HwcMNCNLn+N7klOOqPjMeG/4JSu77D7ypZdGvSzvkrbyeTMizz2VrA==}
-
style-to-object@0.4.2:
resolution: {integrity: sha512-1JGpfPB3lo42ZX8cuPrheZbfQ6kqPPnPHlKMyeRYtfKD+0jG+QsXgXN57O/dvJlzlB2elI6dGmrPnl5VPQFPaA==}
@@ -12181,6 +12413,9 @@ packages:
engines: {node: ^14.13.1 || >=16.0.0}
hasBin: true
+ stylis@4.3.2:
+ resolution: {integrity: sha512-bhtUjWd/z6ltJiQwg0dUfxEJ+W+jdqQd8TbWLWyeIJHlnsqmGLRFFd8e5mA0AZi/zx90smXRlN66YMTcaSFifg==}
+
superagent@9.0.1:
resolution: {integrity: sha512-CcRSdb/P2oUVaEpQ87w9Obsl+E9FruRd6b2b7LdiBtJoyMr2DQt7a89anAfiX/EL59j9b2CbRFvf2S91DhuCww==}
engines: {node: '>=14.18.0'}
@@ -12358,16 +12593,6 @@ packages:
resolution: {integrity: sha512-jRKj0n0jXWo6kh62nA5TEh3+4igKDXLvzBJcPpiizP7oOolUrYIxmVBG9TOtHYFHoddUk6YvAkGeGoSVTXfQXQ==}
engines: {node: '>=12'}
- trim-trailing-lines@1.1.4:
- resolution: {integrity: sha512-rjUWSqnfTNrjbB9NQWfPMH/xRK1deHeGsHoVfpxJ++XeYXE0d6B1En37AHfw3jtfTU7dzMzZL2jjpe8Qb5gLIQ==}
-
- trim@0.0.1:
- resolution: {integrity: sha512-YzQV+TZg4AxpKxaTHK3c3D+kRDCGVEE7LemdlQZoQXn0iennk10RsIoY6ikzAqJTc9Xjl9C1/waHom/J86ziAQ==}
- deprecated: Use String.prototype.trim() instead
-
- trough@1.0.5:
- resolution: {integrity: sha512-rvuRbTarPXmMb79SmzEp8aqXNKcK+y0XaB298IXueQ8I2PsrATcPBCSPyK/dDNa2iWOhKlfNnOjdAOTBU/nkFA==}
-
trough@2.1.0:
resolution: {integrity: sha512-AqTiAOLcj85xS7vQ8QkAV41hPDIJ71XJB4RCUrzo/1GM2CQwhkJGaf9Hgr7BOugMRpgGUrqRg/DrBDl4H40+8g==}
@@ -12377,6 +12602,10 @@ packages:
peerDependencies:
typescript: '>=4.2.0'
+ ts-dedent@2.2.0:
+ resolution: {integrity: sha512-q5W7tVM71e2xjHZTlgfTDoPF/SmqKG5hddq9SzR49CH2hayqRKJtQ4mtRlSxKaJlR/+9rEM+mnBHf7I2/BQcpQ==}
+ engines: {node: '>=6.10'}
+
ts-node@10.9.2:
resolution: {integrity: sha512-f0FFpIdcHgn8zcPSbf1dRevwt047YMnaiJM3u2w2RewrB+fob/zePZcrOyQoLMMO7aBIddLcQIEK5dYjkLnGrQ==}
hasBin: true
@@ -12522,9 +12751,6 @@ packages:
undici-types@5.26.5:
resolution: {integrity: sha512-JlCMO+ehdEIKqlFxk6IfVoAUVmgz7cU7zD/h9XZ0qzeosSHmUJVOzSQvvYSYWXkFXC+IfLKSIffhv0sVZup6pA==}
- unherit@1.1.3:
- resolution: {integrity: sha512-Ft16BJcnapDKp0+J/rqFC3Rrk6Y/Ng4nzsC028k2jdDII/rdZ7Wd3pPT/6+vIIxRagwRc9K0IUX0Ra4fKvw+WQ==}
-
unicorn-magic@0.1.0:
resolution: {integrity: sha512-lRfVq8fE8gz6QMBuDM6a+LO3IAzTi05H6gCVaUpir2E1Rwpo4ZUog45KpNXKC/Mn3Yb9UDuHumeFTo9iV/D9FQ==}
engines: {node: '>=18'}
@@ -12532,48 +12758,27 @@ packages:
unified@11.0.3:
resolution: {integrity: sha512-jlCV402P+YDcFcB2VcN/n8JasOddqIiaxv118wNBoZXEhOn+lYG7BR4Bfg2BwxvlK58dwbuH2w7GX2esAjL6Mg==}
- unified@9.2.0:
- resolution: {integrity: sha512-vx2Z0vY+a3YoTj8+pttM3tiJHCwY5UFbYdiWrwBEbHmK8pvsPj2rtAX2BFfgXen8T39CJWblWRDT4L5WGXtDdg==}
-
- unist-builder@2.0.3:
- resolution: {integrity: sha512-f98yt5pnlMWlzP539tPc4grGMsFaQQlP/vM396b00jngsiINumNmsY8rkXjfoi1c6QaM8nQ3vaGDuoKWbe/1Uw==}
-
- unist-util-generated@1.1.6:
- resolution: {integrity: sha512-cln2Mm1/CZzN5ttGK7vkoGw+RZ8VcUH6BtGbq98DDtRGquAAOXig1mrBQYelOwMXYS8rK+vZDyyojSjp7JX+Lg==}
-
- unist-util-is@4.1.0:
- resolution: {integrity: sha512-ZOQSsnce92GrxSqlnEEseX0gi7GH9zTJZ0p9dtu87WRb/37mMPO2Ilx1s/t9vBHrFhbgweUwb+t7cIn5dxPhZg==}
-
unist-util-is@6.0.0:
resolution: {integrity: sha512-2qCTHimwdxLfz+YzdGfkqNlH0tLi9xjTnHddPmJwtIG9MGsdbutfTc4P+haPD7l7Cjxf/WZj+we5qfVPvvxfYw==}
- unist-util-position@3.1.0:
- resolution: {integrity: sha512-w+PkwCbYSFw8vpgWD0v7zRCl1FpY3fjDSQ3/N/wNd9Ffa4gPi8+4keqt99N3XW6F99t/mUzp2xAhNmfKWp95QA==}
+ unist-util-position-from-estree@2.0.0:
+ resolution: {integrity: sha512-KaFVRjoqLyF6YXCbVLNad/eS4+OfPQQn2yOd7zF/h5T/CSL2v8NpN6a5TPvtbXthAGw5nG+PuTtq+DdIZr+cRQ==}
unist-util-position@5.0.0:
resolution: {integrity: sha512-fucsC7HjXvkB5R3kTCO7kUjRdrS0BJt3M/FPxmHMBOm8JQi2BsHAHFsy27E0EolP8rp0NzXsJ+jNPyDWvOJZPA==}
- unist-util-remove-position@2.0.1:
- resolution: {integrity: sha512-fDZsLYIe2uT+oGFnuZmy73K6ZxOPG/Qcm+w7jbEjaFcJgbQ6cqjs/eSPzXhsmGpAsWPkqZM9pYjww5QTn3LHMA==}
+ unist-util-remove-position@5.0.0:
+ resolution: {integrity: sha512-Hp5Kh3wLxv0PHj9m2yZhhLt58KzPtEYKQQ4yxfYFEO7EvHwzyDYnduhHnY1mDxoqr7VUwVuHXk9RXKIiYS1N8Q==}
- unist-util-remove@2.1.0:
- resolution: {integrity: sha512-J8NYPyBm4baYLdCbjmf1bhPu45Cr1MWTm77qd9istEkzWpnN6O9tMsEbB2JhNnBCqGENRqEWomQ+He6au0B27Q==}
-
- unist-util-stringify-position@2.0.3:
- resolution: {integrity: sha512-3faScn5I+hy9VleOq/qNbAd6pAx7iH5jYBMS9I1HgQVijz/4mv5Bvw5iw1sC/90CODiKo81G/ps8AJrISn687g==}
+ unist-util-stringify-position@3.0.3:
+ resolution: {integrity: sha512-k5GzIBZ/QatR8N5X2y+drfpWG8IDBzdnVj6OInRNWm1oXrzydiaAT2OQiA8DPRRZyAKb9b6I2a6PxYklZD0gKg==}
unist-util-stringify-position@4.0.0:
resolution: {integrity: sha512-0ASV06AAoKCDkS2+xw5RXJywruurpbC4JZSm7nr7MOt1ojAzvyyaO+UxZf18j8FCF6kmzCZKcAgN/yu2gm2XgQ==}
- unist-util-visit-parents@3.1.1:
- resolution: {integrity: sha512-1KROIZWo6bcMrZEwiH2UrXDyalAa0uqzWCxCJj6lPOvTve2WkfgCytoDTPaMnodXh1WrXOq0haVYHj99ynJlsg==}
-
unist-util-visit-parents@6.0.1:
resolution: {integrity: sha512-L/PqWzfTP9lzzEa6CKs0k2nARxTdZduw3zyh8d2NVBnsyvHjSX4TWse388YrrQKbvI8w20fGjGlhgT96WwKykw==}
- unist-util-visit@2.0.3:
- resolution: {integrity: sha512-iJ4/RczbJMkD0712mGktuGpm/U4By4FfDonL7N/9tATGIF4imikjOuagyMY53tnZq3NP6BcmlrHhEKAfGWjh7Q==}
-
unist-util-visit@5.0.0:
resolution: {integrity: sha512-MR04uvD+07cwl/yhVuVWAtw+3GOR/knlL55Nd/wAdblk27GCVt3lqpTivy/tkJcZoNPzTwS1Y+KMojlLDhoTzg==}
@@ -12636,6 +12841,11 @@ packages:
resolution: {integrity: sha512-b+1eJOlsR9K8HJpow9Ok3fiWOWSIcIzXodvv0rQjVoOVNpWMpxf1wZNpt4y9h10odCNrqnYp1OBzRktckBe3sA==}
hasBin: true
+ uvu@0.5.6:
+ resolution: {integrity: sha512-+g8ENReyr8YsOc6fv/NVJs2vFdHBnBNdfE49rshrTzDWOlUx4Gq7KOS2GD8eqhy2j+Ejq29+SbKH8yjkAqXqoA==}
+ engines: {node: '>=8'}
+ hasBin: true
+
v8-compile-cache-lib@3.0.1:
resolution: {integrity: sha512-wa7YjyUGfNZngI/vtK0UHAN+lgDCxBPCylVXGp0zu59Fz5aiGtNXaq3DhIov063MorB+VfufLh3JlF2KdTK3xg==}
@@ -12650,18 +12860,9 @@ packages:
resolution: {integrity: sha512-BNGbWLfd0eUPabhkXUVm0j8uuvREyTh5ovRa/dyow/BqAbZJyC+5fU+IzQOzmAKzYqYRAISoRhdQr3eIZ/PXqg==}
engines: {node: '>= 0.8'}
- vfile-location@3.2.0:
- resolution: {integrity: sha512-aLEIZKv/oxuCDZ8lkJGhuhztf/BW4M+iHdCwglA/eWc+vtuRFJj8EtgceYFX4LRjOhCAAiNHsKGssC6onJ+jbA==}
-
- vfile-message@2.0.4:
- resolution: {integrity: sha512-DjssxRGkMvifUOJre00juHoP9DPWuzjxKuMDrhNbk2TdaYYBNMStsNhEOt3idrtI12VQYM/1+iM0KOzXi4pxwQ==}
-
vfile-message@4.0.2:
resolution: {integrity: sha512-jRDZ1IMLttGj41KcZvlrYAaI3CfqpLpfpf+Mfig13viT6NKvRzWZ+lXz0Y5D60w6uJIBAOGq9mSHf0gktF0duw==}
- vfile@4.2.1:
- resolution: {integrity: sha512-O6AE4OskCG5S1emQ/4gl8zK586RqA3srz3nfK/Viy0UPToBc5Trp9BVFb1u0CjsKrAWwnpr4ifM/KBXPWwJbCA==}
-
vfile@6.0.1:
resolution: {integrity: sha512-1bYqc7pt6NIADBJ98UiG0Bn/CHIVOoZ/IyEkqIruLg0mE1BKzkOXY2D6CSqQIcKqgadppE5lrxgWXJmXd7zZJw==}
@@ -12748,8 +12949,8 @@ packages:
weak-lru-cache@1.2.2:
resolution: {integrity: sha512-DEAoo25RfSYMuTGc9vPJzZcZullwIqRDSI9LOy+fkCJPi6hykCnfKaXTuPBDuXAUcqHXyOgFtHNp/kB2FjYHbw==}
- web-namespaces@1.1.4:
- resolution: {integrity: sha512-wYxSGajtmoP4WxfejAPIr4l0fVh+jeMXZb08wNc0tMg6xsfZXj3cECqIK0G7ZAqUq0PP8WlMDtaOGVBTAWztNw==}
+ web-worker@1.3.0:
+ resolution: {integrity: sha512-BSR9wyRsy/KOValMgd5kMyr3JzpdeoR9KVId8u5GVlTTAtNChlsE4yTxeY7zMdNSyOmoKBv8NH2qeRY9Tg+IaA==}
webidl-conversions@3.0.1:
resolution: {integrity: sha512-2JAn3z8AR6rjK8Sm8orRC0h/bcl/DqL7tRPdGZ4I1CjdF+EaMLmYxBHyXuKL849eucPFhvBoxMsflfOb8kxaeQ==}
@@ -12974,9 +13175,6 @@ packages:
zod@3.22.4:
resolution: {integrity: sha512-iC+8Io04lddc+mVqQ9AZ7OQ2MrUKGN+oIQyq1vemgt46jwCwLfhq7/pwnBnNXXXZb8VTVLKwp9EDkx+ryxIWmg==}
- zwitch@1.0.5:
- resolution: {integrity: sha512-V50KMwwzqJV0NpZIZFwfOD5/lyny3WlSzRiXgA0G7VUnRlqttta1L6UQIHzd6EuBY/cHGfwTIck7w1yH6Q5zUw==}
-
zwitch@2.0.2:
resolution: {integrity: sha512-JZxotl7SxAJH0j7dN4pxsTV6ZLXoLdGME+PsjkL/DaBrVryK9kTGq06GfKrwcSOqypP+fdXGoCHE36b99fWVoA==}
@@ -13690,27 +13888,6 @@ snapshots:
'@babel/compat-data@7.24.4': {}
- '@babel/core@7.12.9':
- dependencies:
- '@babel/code-frame': 7.24.2
- '@babel/generator': 7.24.4
- '@babel/helper-module-transforms': 7.23.3(@babel/core@7.12.9)
- '@babel/helpers': 7.24.4
- '@babel/parser': 7.24.4
- '@babel/template': 7.24.0
- '@babel/traverse': 7.24.1
- '@babel/types': 7.24.0
- convert-source-map: 1.9.0
- debug: 4.3.4
- gensync: 1.0.0-beta.2
- json5: 2.2.3
- lodash: 4.17.21
- resolve: 1.22.8
- semver: 5.7.2
- source-map: 0.5.7
- transitivePeerDependencies:
- - supports-color
-
'@babel/core@7.24.4':
dependencies:
'@ampproject/remapping': 2.3.0
@@ -13767,15 +13944,6 @@ snapshots:
dependencies:
'@babel/types': 7.24.0
- '@babel/helper-module-transforms@7.23.3(@babel/core@7.12.9)':
- dependencies:
- '@babel/core': 7.12.9
- '@babel/helper-environment-visitor': 7.22.20
- '@babel/helper-module-imports': 7.24.3
- '@babel/helper-simple-access': 7.22.5
- '@babel/helper-split-export-declaration': 7.22.6
- '@babel/helper-validator-identifier': 7.22.20
-
'@babel/helper-module-transforms@7.23.3(@babel/core@7.24.4)':
dependencies:
'@babel/core': 7.24.4
@@ -13785,8 +13953,6 @@ snapshots:
'@babel/helper-split-export-declaration': 7.22.6
'@babel/helper-validator-identifier': 7.22.20
- '@babel/helper-plugin-utils@7.10.4': {}
-
'@babel/helper-plugin-utils@7.20.2': {}
'@babel/helper-simple-access@7.22.5':
@@ -13836,13 +14002,6 @@ snapshots:
dependencies:
'@babel/types': 7.24.0
- '@babel/plugin-proposal-object-rest-spread@7.12.1(@babel/core@7.12.9)':
- dependencies:
- '@babel/core': 7.12.9
- '@babel/helper-plugin-utils': 7.20.2
- '@babel/plugin-syntax-object-rest-spread': 7.8.3(@babel/core@7.12.9)
- '@babel/plugin-transform-parameters': 7.20.3(@babel/core@7.12.9)
-
'@babel/plugin-syntax-async-generators@7.8.4(@babel/core@7.24.4)':
dependencies:
'@babel/core': 7.24.4
@@ -13868,11 +14027,6 @@ snapshots:
'@babel/core': 7.24.4
'@babel/helper-plugin-utils': 7.20.2
- '@babel/plugin-syntax-jsx@7.12.1(@babel/core@7.12.9)':
- dependencies:
- '@babel/core': 7.12.9
- '@babel/helper-plugin-utils': 7.20.2
-
'@babel/plugin-syntax-jsx@7.18.6(@babel/core@7.24.4)':
dependencies:
'@babel/core': 7.24.4
@@ -13893,11 +14047,6 @@ snapshots:
'@babel/core': 7.24.4
'@babel/helper-plugin-utils': 7.20.2
- '@babel/plugin-syntax-object-rest-spread@7.8.3(@babel/core@7.12.9)':
- dependencies:
- '@babel/core': 7.12.9
- '@babel/helper-plugin-utils': 7.20.2
-
'@babel/plugin-syntax-object-rest-spread@7.8.3(@babel/core@7.24.4)':
dependencies:
'@babel/core': 7.24.4
@@ -13923,11 +14072,6 @@ snapshots:
'@babel/core': 7.24.4
'@babel/helper-plugin-utils': 7.20.2
- '@babel/plugin-transform-parameters@7.20.3(@babel/core@7.12.9)':
- dependencies:
- '@babel/core': 7.12.9
- '@babel/helper-plugin-utils': 7.20.2
-
'@babel/runtime@7.17.9':
dependencies:
regenerator-runtime: 0.13.11
@@ -13985,6 +14129,8 @@ snapshots:
'@bcoe/v8-coverage@0.2.3': {}
+ '@braintree/sanitize-url@6.0.4': {}
+
'@changesets/apply-release-plan@6.1.4':
dependencies:
'@babel/runtime': 7.24.4
@@ -14487,6 +14633,41 @@ snapshots:
- supports-color
- ts-node
+ '@jest/core@29.7.0(ts-node@10.9.2(@types/node@20.10.4)(typescript@5.3.3))':
+ dependencies:
+ '@jest/console': 29.7.0
+ '@jest/reporters': 29.7.0
+ '@jest/test-result': 29.7.0
+ '@jest/transform': 29.7.0
+ '@jest/types': 29.6.3
+ '@types/node': 20.12.7
+ ansi-escapes: 4.3.2
+ chalk: 4.1.2
+ ci-info: 3.8.0
+ exit: 0.1.2
+ graceful-fs: 4.2.11
+ jest-changed-files: 29.7.0
+ jest-config: 29.7.0(@types/node@20.12.7)(ts-node@10.9.2(@types/node@20.10.4)(typescript@5.3.3))
+ jest-haste-map: 29.7.0
+ jest-message-util: 29.7.0
+ jest-regex-util: 29.6.3
+ jest-resolve: 29.7.0
+ jest-resolve-dependencies: 29.7.0
+ jest-runner: 29.7.0
+ jest-runtime: 29.7.0
+ jest-snapshot: 29.7.0
+ jest-util: 29.7.0
+ jest-validate: 29.7.0
+ jest-watcher: 29.7.0
+ micromatch: 4.0.5
+ pretty-format: 29.7.0
+ slash: 3.0.0
+ strip-ansi: 6.0.1
+ transitivePeerDependencies:
+ - babel-plugin-macros
+ - supports-color
+ - ts-node
+
'@jest/create-cache-key-function@27.5.1':
dependencies:
'@jest/types': 27.5.1
@@ -14802,36 +14983,40 @@ snapshots:
globby: 11.1.0
read-yaml-file: 1.1.0
- '@mdx-js/mdx@1.6.22':
+ '@mdx-js/mdx@3.0.1':
dependencies:
- '@babel/core': 7.12.9
- '@babel/plugin-syntax-jsx': 7.12.1(@babel/core@7.12.9)
- '@babel/plugin-syntax-object-rest-spread': 7.8.3(@babel/core@7.12.9)
- '@mdx-js/util': 1.6.22
- babel-plugin-apply-mdx-type-prop: 1.6.22(@babel/core@7.12.9)
- babel-plugin-extract-import-names: 1.6.22
- camelcase-css: 2.0.1
- detab: 2.0.4
- hast-util-raw: 6.0.1
- lodash.uniq: 4.5.0
- mdast-util-to-hast: 10.0.1
- remark-footnotes: 2.0.0
- remark-mdx: 1.6.22
- remark-parse: 8.0.3
- remark-squeeze-paragraphs: 4.0.0
- style-to-object: 0.3.0
- unified: 9.2.0
- unist-builder: 2.0.3
- unist-util-visit: 2.0.3
+ '@types/estree': 1.0.5
+ '@types/estree-jsx': 1.0.5
+ '@types/hast': 3.0.1
+ '@types/mdx': 2.0.13
+ 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.2.0
+ markdown-extensions: 2.0.0
+ periscopic: 3.1.0
+ remark-mdx: 3.0.1
+ remark-parse: 11.0.0
+ remark-rehype: 11.0.0
+ source-map: 0.7.4
+ unified: 11.0.3
+ 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
- '@mdx-js/react@1.6.22(react@18.2.0)':
+ '@mdx-js/react@3.0.1(@types/react@18.0.31)(react@18.2.0)':
dependencies:
+ '@types/mdx': 2.0.13
+ '@types/react': 18.0.31
react: 18.2.0
- '@mdx-js/util@1.6.22': {}
-
'@microsoft/applicationinsights-web-snippet@1.0.1': {}
'@mischnic/json-sourcemap@0.1.0':
@@ -15371,15 +15556,6 @@ snapshots:
transitivePeerDependencies:
- '@parcel/core'
- '@parcel/transformer-mdx@2.9.3(@mdx-js/react@1.6.22(react@18.2.0))(@parcel/core@2.9.3)':
- dependencies:
- '@mdx-js/mdx': 1.6.22
- '@mdx-js/react': 1.6.22(react@18.2.0)
- '@parcel/plugin': 2.9.3(@parcel/core@2.9.3)
- transitivePeerDependencies:
- - '@parcel/core'
- - supports-color
-
'@parcel/transformer-postcss@2.9.3(@parcel/core@2.9.3)':
dependencies:
'@parcel/diagnostic': 2.9.3
@@ -16441,6 +16617,10 @@ snapshots:
dependencies:
'@types/node': 20.12.7
+ '@types/acorn@4.0.6':
+ dependencies:
+ '@types/estree': 1.0.5
+
'@types/aria-query@5.0.1': {}
'@types/babel__core@7.1.19':
@@ -16505,10 +16685,22 @@ snapshots:
'@types/keygrip': 1.0.2
'@types/node': 20.12.7
+ '@types/d3-scale-chromatic@3.0.3': {}
+
+ '@types/d3-scale@4.0.8':
+ dependencies:
+ '@types/d3-time': 3.0.3
+
+ '@types/d3-time@3.0.3': {}
+
'@types/debug@4.1.7':
dependencies:
'@types/ms': 0.7.31
+ '@types/estree-jsx@1.0.5':
+ dependencies:
+ '@types/estree': 1.0.5
+
'@types/estree@1.0.5': {}
'@types/etag@1.8.1':
@@ -16635,19 +16827,15 @@ snapshots:
dependencies:
'@types/koa': 2.13.4
- '@types/mdast@3.0.10':
+ '@types/mdast@3.0.15':
dependencies:
- '@types/unist': 3.0.0
+ '@types/unist': 2.0.6
'@types/mdast@4.0.1':
dependencies:
'@types/unist': 3.0.0
- '@types/mdx-js__react@1.5.5':
- dependencies:
- '@types/react': 18.0.31
-
- '@types/mdx@2.0.1': {}
+ '@types/mdx@2.0.13': {}
'@types/methods@1.1.4': {}
@@ -16689,8 +16877,6 @@ snapshots:
'@types/parse-json@4.0.0': {}
- '@types/parse5@5.0.3': {}
-
'@types/pg@8.11.2':
dependencies:
'@types/node': 20.12.7
@@ -17341,16 +17527,6 @@ snapshots:
transitivePeerDependencies:
- supports-color
- babel-plugin-apply-mdx-type-prop@1.6.22(@babel/core@7.12.9):
- dependencies:
- '@babel/core': 7.12.9
- '@babel/helper-plugin-utils': 7.10.4
- '@mdx-js/util': 1.6.22
-
- babel-plugin-extract-import-names@1.6.22:
- dependencies:
- '@babel/helper-plugin-utils': 7.10.4
-
babel-plugin-istanbul@6.1.1:
dependencies:
'@babel/helper-plugin-utils': 7.20.2
@@ -17390,8 +17566,6 @@ snapshots:
babel-plugin-jest-hoist: 29.6.3
babel-preset-current-node-syntax: 1.0.1(@babel/core@7.24.4)
- bail@1.0.5: {}
-
bail@2.0.2: {}
balanced-match@1.0.2: {}
@@ -17536,8 +17710,6 @@ snapshots:
callsites@3.1.0: {}
- camelcase-css@2.0.1: {}
-
camelcase-keys@6.2.2:
dependencies:
camelcase: 5.3.1
@@ -17566,8 +17738,6 @@ snapshots:
caniuse-lite@1.0.30001618: {}
- ccount@1.1.0: {}
-
ccount@2.0.1: {}
chai@4.4.1:
@@ -17597,14 +17767,20 @@ snapshots:
char-regex@1.0.2: {}
+ character-entities-html4@2.1.0: {}
+
character-entities-legacy@1.1.4: {}
+ character-entities-legacy@3.0.0: {}
+
character-entities@1.2.4: {}
character-entities@2.0.1: {}
character-reference-invalid@1.1.4: {}
+ character-reference-invalid@2.0.1: {}
+
chardet@0.7.0: {}
check-error@1.0.3:
@@ -17700,7 +17876,7 @@ snapshots:
co@4.6.0: {}
- collapse-white-space@1.0.6: {}
+ collapse-white-space@2.1.0: {}
collect-v8-coverage@1.0.1: {}
@@ -17744,6 +17920,8 @@ snapshots:
commander@7.2.0: {}
+ commander@8.3.0: {}
+
commondir@1.0.1: {}
compare-func@2.0.0:
@@ -17789,8 +17967,6 @@ snapshots:
meow: 12.1.1
split2: 4.2.0
- convert-source-map@1.9.0: {}
-
convert-source-map@2.0.0: {}
cookiejar@2.1.4: {}
@@ -17811,6 +17987,10 @@ snapshots:
core-js@3.34.0: {}
+ cose-base@1.0.3:
+ dependencies:
+ layout-base: 1.0.2
+
cosmiconfig-typescript-loader@5.0.0(@types/node@20.12.7)(cosmiconfig@8.3.6(typescript@5.0.2))(typescript@5.0.2):
dependencies:
'@types/node': 20.12.7
@@ -17857,13 +18037,13 @@ snapshots:
dependencies:
lodash.get: 4.4.2
- create-jest@29.7.0(@types/node@20.10.4):
+ create-jest@29.7.0(@types/node@20.10.4)(ts-node@10.9.2(@types/node@20.10.4)(typescript@5.3.3)):
dependencies:
'@jest/types': 29.6.3
chalk: 4.1.2
exit: 0.1.2
graceful-fs: 4.2.11
- jest-config: 29.7.0(@types/node@20.10.4)
+ jest-config: 29.7.0(@types/node@20.10.4)(ts-node@10.9.2(@types/node@20.10.4)(typescript@5.3.3))
jest-util: 29.7.0
prompts: 2.4.2
transitivePeerDependencies:
@@ -17969,20 +18149,108 @@ snapshots:
find-pkg: 0.1.2
fs-exists-sync: 0.1.0
+ cytoscape-cose-bilkent@4.1.0(cytoscape@3.29.2):
+ dependencies:
+ cose-base: 1.0.3
+ cytoscape: 3.29.2
+
+ cytoscape@3.29.2: {}
+
d3-array@2.12.1:
dependencies:
internmap: 1.0.1
+ d3-array@3.2.4:
+ dependencies:
+ internmap: 1.0.1
+
+ d3-axis@3.0.0: {}
+
+ d3-brush@3.0.0:
+ dependencies:
+ d3-dispatch: 3.0.1
+ d3-drag: 3.0.0
+ d3-interpolate: 3.0.1
+ d3-selection: 3.0.0
+ d3-transition: 3.0.1(d3-selection@3.0.0)
+
+ d3-chord@3.0.1:
+ dependencies:
+ d3-path: 3.1.0
+
d3-color@2.0.0: {}
+ d3-color@3.1.0: {}
+
+ d3-contour@4.0.2:
+ dependencies:
+ d3-array: 3.2.4
+
+ d3-delaunay@6.0.4:
+ dependencies:
+ delaunator: 5.0.1
+
+ d3-dispatch@3.0.1: {}
+
+ d3-drag@3.0.0:
+ dependencies:
+ d3-dispatch: 3.0.1
+ d3-selection: 3.0.0
+
+ d3-dsv@3.0.1:
+ dependencies:
+ commander: 7.2.0
+ iconv-lite: 0.6.3
+ rw: 1.3.3
+
+ d3-ease@3.0.1: {}
+
+ d3-fetch@3.0.1:
+ dependencies:
+ d3-dsv: 3.0.1
+
+ d3-force@3.0.0:
+ dependencies:
+ d3-dispatch: 3.0.1
+ d3-quadtree: 3.0.1
+ d3-timer: 3.0.1
+
d3-format@2.0.0: {}
+ d3-format@3.1.0: {}
+
+ d3-geo@3.1.1:
+ dependencies:
+ d3-array: 3.2.4
+
+ d3-hierarchy@3.1.2: {}
+
d3-interpolate@3.0.1:
dependencies:
d3-color: 2.0.0
+ d3-path@1.0.9: {}
+
d3-path@2.0.0: {}
+ d3-path@3.1.0: {}
+
+ d3-polygon@3.0.1: {}
+
+ d3-quadtree@3.0.1: {}
+
+ d3-random@3.0.1: {}
+
+ d3-sankey@0.12.3:
+ dependencies:
+ d3-array: 2.12.1
+ d3-shape: 1.3.7
+
+ d3-scale-chromatic@3.1.0:
+ dependencies:
+ d3-color: 3.1.0
+ d3-interpolate: 3.0.1
+
d3-scale@4.0.2:
dependencies:
d3-array: 2.12.1
@@ -17991,6 +18259,12 @@ snapshots:
d3-time: 2.1.1
d3-time-format: 3.0.0
+ d3-selection@3.0.0: {}
+
+ d3-shape@1.3.7:
+ dependencies:
+ d3-path: 1.0.9
+
d3-shape@3.1.0:
dependencies:
d3-path: 2.0.0
@@ -17999,10 +18273,75 @@ snapshots:
dependencies:
d3-time: 2.1.1
+ d3-time-format@4.1.0:
+ dependencies:
+ d3-time: 3.1.0
+
d3-time@2.1.1:
dependencies:
d3-array: 2.12.1
+ d3-time@3.1.0:
+ dependencies:
+ d3-array: 3.2.4
+
+ d3-timer@3.0.1: {}
+
+ d3-transition@3.0.1(d3-selection@3.0.0):
+ dependencies:
+ d3-color: 3.1.0
+ d3-dispatch: 3.0.1
+ d3-ease: 3.0.1
+ d3-interpolate: 3.0.1
+ d3-selection: 3.0.0
+ d3-timer: 3.0.1
+
+ d3-zoom@3.0.0:
+ dependencies:
+ d3-dispatch: 3.0.1
+ d3-drag: 3.0.0
+ d3-interpolate: 3.0.1
+ d3-selection: 3.0.0
+ d3-transition: 3.0.1(d3-selection@3.0.0)
+
+ d3@7.9.0:
+ dependencies:
+ d3-array: 3.2.4
+ d3-axis: 3.0.0
+ d3-brush: 3.0.0
+ d3-chord: 3.0.1
+ d3-color: 3.1.0
+ d3-contour: 4.0.2
+ d3-delaunay: 6.0.4
+ d3-dispatch: 3.0.1
+ d3-drag: 3.0.0
+ d3-dsv: 3.0.1
+ d3-ease: 3.0.1
+ d3-fetch: 3.0.1
+ d3-force: 3.0.0
+ d3-format: 3.1.0
+ d3-geo: 3.1.1
+ d3-hierarchy: 3.1.2
+ d3-interpolate: 3.0.1
+ d3-path: 3.1.0
+ d3-polygon: 3.0.1
+ d3-quadtree: 3.0.1
+ d3-random: 3.0.1
+ d3-scale: 4.0.2
+ d3-scale-chromatic: 3.1.0
+ d3-selection: 3.0.0
+ d3-shape: 3.1.0
+ d3-time: 3.1.0
+ d3-time-format: 4.1.0
+ d3-timer: 3.0.1
+ d3-transition: 3.0.1(d3-selection@3.0.0)
+ d3-zoom: 3.0.0
+
+ dagre-d3-es@7.0.10:
+ dependencies:
+ d3: 7.9.0
+ lodash-es: 4.17.21
+
damerau-levenshtein@1.0.8: {}
dargs@8.1.0: {}
@@ -18035,8 +18374,14 @@ snapshots:
date-fns@2.29.3: {}
+ dayjs@1.11.11: {}
+
dayjs@1.11.6: {}
+ debug@3.2.7:
+ dependencies:
+ ms: 2.1.3
+
debug@3.2.7(supports-color@5.5.0):
dependencies:
ms: 2.1.3
@@ -18117,6 +18462,10 @@ snapshots:
escodegen: 2.1.0
esprima: 4.0.1
+ delaunator@5.0.1:
+ dependencies:
+ robust-predicates: 3.0.2
+
delayed-stream@1.0.0: {}
delegates@1.0.0: {}
@@ -18131,10 +18480,6 @@ snapshots:
destroy@1.2.0: {}
- detab@2.0.4:
- dependencies:
- repeat-string: 1.6.1
-
detect-indent@6.1.0: {}
detect-libc@1.0.3: {}
@@ -18208,6 +18553,8 @@ snapshots:
dependencies:
domelementtype: 2.3.0
+ dompurify@3.1.5: {}
+
domutils@2.8.0:
dependencies:
dom-serializer: 1.4.1
@@ -18250,6 +18597,8 @@ snapshots:
electron-to-chromium@1.4.738: {}
+ elkjs@0.9.3: {}
+
emitter-listener@1.1.2:
dependencies:
shimmer: 1.2.1
@@ -18505,7 +18854,7 @@ snapshots:
eslint-import-resolver-node@0.3.9:
dependencies:
- debug: 3.2.7(supports-color@5.5.0)
+ debug: 3.2.7
is-core-module: 2.13.1
resolve: 1.22.8
transitivePeerDependencies:
@@ -18530,7 +18879,7 @@ snapshots:
eslint-module-utils@2.8.1(@typescript-eslint/parser@7.7.0(eslint@8.57.0)(typescript@5.3.3))(eslint-import-resolver-node@0.3.9)(eslint-import-resolver-typescript@3.6.1(@typescript-eslint/parser@7.7.0(eslint@8.57.0)(typescript@5.3.3))(eslint-plugin-import@2.29.1)(eslint@8.57.0))(eslint@8.57.0):
dependencies:
- debug: 3.2.7(supports-color@5.5.0)
+ debug: 3.2.7
optionalDependencies:
'@typescript-eslint/parser': 7.7.0(eslint@8.57.0)(typescript@5.3.3)
eslint: 8.57.0
@@ -18563,7 +18912,7 @@ snapshots:
array.prototype.findlastindex: 1.2.5
array.prototype.flat: 1.3.2
array.prototype.flatmap: 1.3.2
- debug: 3.2.7(supports-color@5.5.0)
+ debug: 3.2.7
doctrine: 2.1.0
eslint: 8.57.0
eslint-import-resolver-node: 0.3.9
@@ -18780,6 +19129,30 @@ snapshots:
estraverse@5.3.0: {}
+ estree-util-attach-comments@3.0.0:
+ dependencies:
+ '@types/estree': 1.0.5
+
+ estree-util-build-jsx@3.0.1:
+ dependencies:
+ '@types/estree-jsx': 1.0.5
+ devlop: 1.1.0
+ estree-util-is-identifier-name: 3.0.0
+ estree-walker: 3.0.3
+
+ estree-util-is-identifier-name@3.0.0: {}
+
+ estree-util-to-js@2.0.0:
+ dependencies:
+ '@types/estree-jsx': 1.0.5
+ astring: 1.8.3
+ source-map: 0.7.4
+
+ estree-util-visit@2.0.0:
+ dependencies:
+ '@types/estree-jsx': 1.0.5
+ '@types/unist': 3.0.0
+
estree-walker@2.0.2: {}
estree-walker@3.0.3:
@@ -19362,39 +19735,28 @@ snapshots:
dependencies:
function-bind: 1.1.2
- hast-to-hyperscript@9.0.1:
- dependencies:
- '@types/unist': 2.0.6
- comma-separated-tokens: 1.0.8
- property-information: 5.6.0
- space-separated-tokens: 1.1.5
- style-to-object: 0.3.0
- unist-util-is: 4.1.0
- web-namespaces: 1.1.4
-
- hast-util-from-parse5@6.0.1:
- dependencies:
- '@types/parse5': 5.0.3
- hastscript: 6.0.0
- property-information: 5.6.0
- vfile: 4.2.1
- vfile-location: 3.2.0
- web-namespaces: 1.1.4
-
hast-util-parse-selector@2.2.5: {}
- hast-util-raw@6.0.1:
+ hast-util-to-estree@3.1.0:
dependencies:
- '@types/hast': 2.3.4
- hast-util-from-parse5: 6.0.1
- hast-util-to-parse5: 6.0.0
- html-void-elements: 1.0.5
- parse5: 6.0.1
- unist-util-position: 3.1.0
- vfile: 4.2.1
- web-namespaces: 1.1.4
- xtend: 4.0.2
- zwitch: 1.0.5
+ '@types/estree': 1.0.5
+ '@types/estree-jsx': 1.0.5
+ '@types/hast': 3.0.1
+ comma-separated-tokens: 2.0.2
+ 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.1.2
+ mdast-util-mdxjs-esm: 2.0.1
+ property-information: 6.2.0
+ space-separated-tokens: 2.0.1
+ style-to-object: 0.4.2
+ unist-util-position: 5.0.0
+ zwitch: 2.0.2
+ transitivePeerDependencies:
+ - supports-color
hast-util-to-jsx-runtime@2.2.0:
dependencies:
@@ -19408,14 +19770,6 @@ snapshots:
unist-util-position: 5.0.0
vfile-message: 4.0.2
- hast-util-to-parse5@6.0.0:
- dependencies:
- hast-to-hyperscript: 9.0.1
- property-information: 5.6.0
- web-namespaces: 1.1.4
- xtend: 4.0.2
- zwitch: 1.0.5
-
hast-util-whitespace@3.0.0:
dependencies:
'@types/hast': 3.0.1
@@ -19468,8 +19822,6 @@ snapshots:
html-url-attributes@3.0.0: {}
- html-void-elements@1.0.5: {}
-
htmlnano@2.0.3(postcss@8.4.31)(srcset@4.0.0)(svgo@2.8.0):
dependencies:
cosmiconfig: 7.1.0
@@ -19696,11 +20048,18 @@ snapshots:
is-alphabetical@1.0.4: {}
+ is-alphabetical@2.0.1: {}
+
is-alphanumerical@1.0.4:
dependencies:
is-alphabetical: 1.0.4
is-decimal: 1.0.4
+ is-alphanumerical@2.0.1:
+ dependencies:
+ is-alphabetical: 2.0.1
+ is-decimal: 2.0.1
+
is-array-buffer@3.0.4:
dependencies:
call-bind: 1.0.7
@@ -19727,8 +20086,6 @@ snapshots:
call-bind: 1.0.7
has-tostringtag: 1.0.0
- is-buffer@2.0.5: {}
-
is-builtin-module@3.2.1:
dependencies:
builtin-modules: 3.3.0
@@ -19757,6 +20114,8 @@ snapshots:
is-decimal@1.0.4: {}
+ is-decimal@2.0.1: {}
+
is-extglob@2.1.1: {}
is-finalizationregistry@1.0.2:
@@ -19784,6 +20143,8 @@ snapshots:
is-hexadecimal@1.0.4: {}
+ is-hexadecimal@2.0.1: {}
+
is-interactive@2.0.0: {}
is-js-type@2.0.0:
@@ -19817,8 +20178,6 @@ snapshots:
is-plain-obj@1.1.0: {}
- is-plain-obj@2.1.0: {}
-
is-plain-obj@4.1.0: {}
is-plain-object@5.0.0: {}
@@ -19834,6 +20193,10 @@ snapshots:
dependencies:
'@types/estree': 1.0.5
+ is-reference@3.0.2:
+ dependencies:
+ '@types/estree': 1.0.5
+
is-regex@1.1.4:
dependencies:
call-bind: 1.0.7
@@ -19888,14 +20251,10 @@ snapshots:
call-bind: 1.0.7
get-intrinsic: 1.2.4
- is-whitespace-character@1.0.4: {}
-
is-windows@0.2.0: {}
is-windows@1.0.2: {}
- is-word-character@1.0.4: {}
-
isarray@0.0.1: {}
isarray@2.0.5: {}
@@ -19999,35 +20358,16 @@ snapshots:
- babel-plugin-macros
- supports-color
- jest-cli@29.7.0(@types/node@20.10.4):
+ jest-cli@29.7.0(@types/node@20.10.4)(ts-node@10.9.2(@types/node@20.10.4)(typescript@5.3.3)):
dependencies:
- '@jest/core': 29.7.0(ts-node@10.9.2(@swc/core@1.3.52(@swc/helpers@0.5.1))(@types/node@20.12.7)(typescript@5.3.3))
+ '@jest/core': 29.7.0(ts-node@10.9.2(@types/node@20.10.4)(typescript@5.3.3))
'@jest/test-result': 29.7.0
'@jest/types': 29.6.3
chalk: 4.1.2
- create-jest: 29.7.0(@types/node@20.10.4)
+ create-jest: 29.7.0(@types/node@20.10.4)(ts-node@10.9.2(@types/node@20.10.4)(typescript@5.3.3))
exit: 0.1.2
import-local: 3.1.0
- jest-config: 29.7.0(@types/node@20.10.4)
- jest-util: 29.7.0
- jest-validate: 29.7.0
- yargs: 17.7.2
- transitivePeerDependencies:
- - '@types/node'
- - babel-plugin-macros
- - supports-color
- - ts-node
-
- jest-cli@29.7.0(@types/node@20.12.7):
- dependencies:
- '@jest/core': 29.7.0(ts-node@10.9.2(@swc/core@1.3.52(@swc/helpers@0.5.1))(@types/node@20.12.7)(typescript@5.3.3))
- '@jest/test-result': 29.7.0
- '@jest/types': 29.6.3
- chalk: 4.1.2
- create-jest: 29.7.0(@types/node@20.12.7)(ts-node@10.9.2(@swc/core@1.3.52(@swc/helpers@0.5.1))(@types/node@20.12.7)(typescript@5.3.3))
- exit: 0.1.2
- import-local: 3.1.0
- jest-config: 29.7.0(@types/node@20.12.7)(ts-node@10.9.2(@swc/core@1.3.52(@swc/helpers@0.5.1))(@types/node@20.12.7)(typescript@5.3.3))
+ jest-config: 29.7.0(@types/node@20.10.4)(ts-node@10.9.2(@types/node@20.10.4)(typescript@5.3.3))
jest-util: 29.7.0
jest-validate: 29.7.0
yargs: 17.7.2
@@ -20056,7 +20396,7 @@ snapshots:
- supports-color
- ts-node
- jest-config@29.7.0(@types/node@20.10.4):
+ jest-config@29.7.0(@types/node@20.10.4)(ts-node@10.9.2(@types/node@20.10.4)(typescript@5.3.3)):
dependencies:
'@babel/core': 7.24.4
'@jest/test-sequencer': 29.7.0
@@ -20082,6 +20422,7 @@ snapshots:
strip-json-comments: 3.1.1
optionalDependencies:
'@types/node': 20.10.4
+ ts-node: 10.9.2(@types/node@20.10.4)(typescript@5.3.3)
transitivePeerDependencies:
- babel-plugin-macros
- supports-color
@@ -20117,6 +20458,37 @@ snapshots:
- babel-plugin-macros
- supports-color
+ jest-config@29.7.0(@types/node@20.12.7)(ts-node@10.9.2(@types/node@20.10.4)(typescript@5.3.3)):
+ dependencies:
+ '@babel/core': 7.24.4
+ '@jest/test-sequencer': 29.7.0
+ '@jest/types': 29.6.3
+ babel-jest: 29.7.0(@babel/core@7.24.4)
+ chalk: 4.1.2
+ ci-info: 3.8.0
+ deepmerge: 4.3.1
+ glob: 7.2.3
+ graceful-fs: 4.2.11
+ jest-circus: 29.7.0
+ jest-environment-node: 29.7.0
+ jest-get-type: 29.6.3
+ jest-regex-util: 29.6.3
+ jest-resolve: 29.7.0
+ jest-runner: 29.7.0
+ jest-util: 29.7.0
+ jest-validate: 29.7.0
+ micromatch: 4.0.5
+ parse-json: 5.2.0
+ pretty-format: 29.7.0
+ slash: 3.0.0
+ strip-json-comments: 3.1.1
+ optionalDependencies:
+ '@types/node': 20.12.7
+ ts-node: 10.9.2(@types/node@20.10.4)(typescript@5.3.3)
+ transitivePeerDependencies:
+ - babel-plugin-macros
+ - supports-color
+
jest-dev-server@10.0.0:
dependencies:
chalk: 4.1.2
@@ -20391,11 +20763,6 @@ snapshots:
jest: 29.7.0(@types/node@20.12.7)(ts-node@10.9.2(@swc/core@1.3.52(@swc/helpers@0.5.1))(@types/node@20.12.7)(typescript@5.3.3))
react: 18.2.0
- jest-transformer-svg@2.0.0(jest@29.7.0(@types/node@20.12.7))(react@18.2.0):
- dependencies:
- jest: 29.7.0(@types/node@20.12.7)
- react: 18.2.0
-
jest-util@29.5.0:
dependencies:
'@jest/types': 29.6.3
@@ -20448,24 +20815,12 @@ snapshots:
merge-stream: 2.0.0
supports-color: 8.1.1
- jest@29.7.0(@types/node@20.10.4):
+ jest@29.7.0(@types/node@20.10.4)(ts-node@10.9.2(@types/node@20.10.4)(typescript@5.3.3)):
dependencies:
- '@jest/core': 29.7.0(ts-node@10.9.2(@swc/core@1.3.52(@swc/helpers@0.5.1))(@types/node@20.12.7)(typescript@5.3.3))
+ '@jest/core': 29.7.0(ts-node@10.9.2(@types/node@20.10.4)(typescript@5.3.3))
'@jest/types': 29.6.3
import-local: 3.1.0
- jest-cli: 29.7.0(@types/node@20.10.4)
- transitivePeerDependencies:
- - '@types/node'
- - babel-plugin-macros
- - supports-color
- - ts-node
-
- jest@29.7.0(@types/node@20.12.7):
- dependencies:
- '@jest/core': 29.7.0(ts-node@10.9.2(@swc/core@1.3.52(@swc/helpers@0.5.1))(@types/node@20.12.7)(typescript@5.3.3))
- '@jest/types': 29.6.3
- import-local: 3.1.0
- jest-cli: 29.7.0(@types/node@20.12.7)
+ jest-cli: 29.7.0(@types/node@20.10.4)(ts-node@10.9.2(@types/node@20.10.4)(typescript@5.3.3))
transitivePeerDependencies:
- '@types/node'
- babel-plugin-macros
@@ -20639,6 +20994,10 @@ snapshots:
jwa: 2.0.0
safe-buffer: 5.2.1
+ katex@0.16.10:
+ dependencies:
+ commander: 8.3.0
+
keygrip@1.1.0:
dependencies:
tsscmp: 1.0.6
@@ -20647,6 +21006,8 @@ snapshots:
dependencies:
json-buffer: 3.0.1
+ khroma@2.1.0: {}
+
kind-of@6.0.3: {}
kleur@3.0.3: {}
@@ -20783,6 +21144,8 @@ snapshots:
dependencies:
language-subtag-registry: 0.3.22
+ layout-base@1.0.2: {}
+
leven@3.1.0: {}
levn@0.3.0:
@@ -21037,7 +21400,7 @@ snapshots:
map-obj@5.0.0: {}
- markdown-escapes@1.0.4: {}
+ markdown-extensions@2.0.0: {}
markdown-table@3.0.2: {}
@@ -21045,14 +21408,6 @@ snapshots:
mathml-tag-names@2.1.3: {}
- mdast-squeeze-paragraphs@4.0.0:
- dependencies:
- unist-util-remove: 2.1.0
-
- mdast-util-definitions@4.0.0:
- dependencies:
- unist-util-visit: 2.0.3
-
mdast-util-find-and-replace@3.0.1:
dependencies:
'@types/mdast': 4.0.1
@@ -21060,6 +21415,23 @@ snapshots:
unist-util-is: 6.0.0
unist-util-visit-parents: 6.0.1
+ mdast-util-from-markdown@1.3.1:
+ dependencies:
+ '@types/mdast': 3.0.15
+ '@types/unist': 2.0.6
+ decode-named-character-reference: 1.0.1
+ mdast-util-to-string: 3.2.0
+ micromark: 3.2.0
+ micromark-util-decode-numeric-character-reference: 1.1.0
+ micromark-util-decode-string: 1.1.0
+ micromark-util-normalize-identifier: 1.1.0
+ micromark-util-symbol: 1.1.0
+ micromark-util-types: 1.1.0
+ unist-util-stringify-position: 3.0.3
+ uvu: 0.5.6
+ transitivePeerDependencies:
+ - supports-color
+
mdast-util-from-markdown@2.0.0:
dependencies:
'@types/mdast': 4.0.1
@@ -21134,22 +21506,61 @@ snapshots:
transitivePeerDependencies:
- supports-color
+ mdast-util-mdx-expression@2.0.0:
+ dependencies:
+ '@types/estree-jsx': 1.0.5
+ '@types/hast': 3.0.1
+ '@types/mdast': 4.0.1
+ devlop: 1.1.0
+ mdast-util-from-markdown: 2.0.0
+ mdast-util-to-markdown: 2.1.0
+ transitivePeerDependencies:
+ - supports-color
+
+ mdast-util-mdx-jsx@3.1.2:
+ dependencies:
+ '@types/estree-jsx': 1.0.5
+ '@types/hast': 3.0.1
+ '@types/mdast': 4.0.1
+ '@types/unist': 3.0.0
+ 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.4
+ unist-util-remove-position: 5.0.0
+ unist-util-stringify-position: 4.0.0
+ vfile-message: 4.0.2
+ transitivePeerDependencies:
+ - supports-color
+
+ mdast-util-mdx@3.0.0:
+ dependencies:
+ mdast-util-from-markdown: 2.0.0
+ mdast-util-mdx-expression: 2.0.0
+ mdast-util-mdx-jsx: 3.1.2
+ mdast-util-mdxjs-esm: 2.0.1
+ mdast-util-to-markdown: 2.1.0
+ transitivePeerDependencies:
+ - supports-color
+
+ mdast-util-mdxjs-esm@2.0.1:
+ dependencies:
+ '@types/estree-jsx': 1.0.5
+ '@types/hast': 3.0.1
+ '@types/mdast': 4.0.1
+ devlop: 1.1.0
+ mdast-util-from-markdown: 2.0.0
+ mdast-util-to-markdown: 2.1.0
+ transitivePeerDependencies:
+ - supports-color
+
mdast-util-phrasing@4.0.0:
dependencies:
'@types/mdast': 4.0.1
unist-util-is: 6.0.0
- mdast-util-to-hast@10.0.1:
- dependencies:
- '@types/mdast': 3.0.10
- '@types/unist': 2.0.6
- mdast-util-definitions: 4.0.0
- mdurl: 1.0.1
- unist-builder: 2.0.3
- unist-util-generated: 1.1.6
- unist-util-position: 3.1.0
- unist-util-visit: 2.0.3
-
mdast-util-to-hast@13.0.2:
dependencies:
'@types/hast': 3.0.1
@@ -21172,6 +21583,10 @@ snapshots:
unist-util-visit: 5.0.0
zwitch: 2.0.2
+ mdast-util-to-string@3.2.0:
+ dependencies:
+ '@types/mdast': 3.0.15
+
mdast-util-to-string@4.0.0:
dependencies:
'@types/mdast': 4.0.1
@@ -21180,8 +21595,6 @@ snapshots:
mdn-data@2.0.30: {}
- mdurl@1.0.1: {}
-
media-typer@0.3.0: {}
meow@10.1.5:
@@ -21221,8 +21634,52 @@ snapshots:
merge2@1.4.1: {}
+ mermaid@10.9.1:
+ dependencies:
+ '@braintree/sanitize-url': 6.0.4
+ '@types/d3-scale': 4.0.8
+ '@types/d3-scale-chromatic': 3.0.3
+ cytoscape: 3.29.2
+ cytoscape-cose-bilkent: 4.1.0(cytoscape@3.29.2)
+ d3: 7.9.0
+ d3-sankey: 0.12.3
+ dagre-d3-es: 7.0.10
+ dayjs: 1.11.11
+ dompurify: 3.1.5
+ elkjs: 0.9.3
+ katex: 0.16.10
+ khroma: 2.1.0
+ lodash-es: 4.17.21
+ mdast-util-from-markdown: 1.3.1
+ non-layered-tidy-tree-layout: 2.0.2
+ stylis: 4.3.2
+ ts-dedent: 2.2.0
+ uuid: 9.0.1
+ web-worker: 1.3.0
+ transitivePeerDependencies:
+ - supports-color
+
methods@1.1.2: {}
+ micromark-core-commonmark@1.1.0:
+ dependencies:
+ decode-named-character-reference: 1.0.1
+ micromark-factory-destination: 1.1.0
+ micromark-factory-label: 1.1.0
+ micromark-factory-space: 1.1.0
+ micromark-factory-title: 1.1.0
+ micromark-factory-whitespace: 1.1.0
+ micromark-util-character: 1.2.0
+ micromark-util-chunked: 1.1.0
+ micromark-util-classify-character: 1.1.0
+ micromark-util-html-tag-name: 1.2.0
+ micromark-util-normalize-identifier: 1.1.0
+ micromark-util-resolve-all: 1.1.0
+ micromark-util-subtokenize: 1.1.0
+ micromark-util-symbol: 1.1.0
+ micromark-util-types: 1.1.0
+ uvu: 0.5.6
+
micromark-core-commonmark@2.0.0:
dependencies:
decode-named-character-reference: 1.0.1
@@ -21300,12 +21757,76 @@ snapshots:
micromark-util-combine-extensions: 2.0.0
micromark-util-types: 2.0.0
+ micromark-extension-mdx-expression@3.0.0:
+ 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
+
+ micromark-extension-mdx-jsx@3.0.0:
+ 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
+
+ micromark-extension-mdx-md@2.0.0:
+ dependencies:
+ micromark-util-types: 2.0.0
+
+ micromark-extension-mdxjs-esm@3.0.0:
+ 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
+
+ micromark-extension-mdxjs@3.0.0:
+ 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
+
+ micromark-factory-destination@1.1.0:
+ dependencies:
+ micromark-util-character: 1.2.0
+ micromark-util-symbol: 1.1.0
+ micromark-util-types: 1.1.0
+
micromark-factory-destination@2.0.0:
dependencies:
micromark-util-character: 2.0.1
micromark-util-symbol: 2.0.0
micromark-util-types: 2.0.0
+ micromark-factory-label@1.1.0:
+ dependencies:
+ micromark-util-character: 1.2.0
+ micromark-util-symbol: 1.1.0
+ micromark-util-types: 1.1.0
+ uvu: 0.5.6
+
micromark-factory-label@2.0.0:
dependencies:
devlop: 1.1.0
@@ -21313,11 +21834,34 @@ snapshots:
micromark-util-symbol: 2.0.0
micromark-util-types: 2.0.0
+ micromark-factory-mdx-expression@2.0.1:
+ 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
+
+ micromark-factory-space@1.1.0:
+ dependencies:
+ micromark-util-character: 1.2.0
+ micromark-util-types: 1.1.0
+
micromark-factory-space@2.0.0:
dependencies:
micromark-util-character: 2.0.1
micromark-util-types: 2.0.0
+ micromark-factory-title@1.1.0:
+ dependencies:
+ micromark-factory-space: 1.1.0
+ micromark-util-character: 1.2.0
+ micromark-util-symbol: 1.1.0
+ micromark-util-types: 1.1.0
+
micromark-factory-title@2.0.0:
dependencies:
micromark-factory-space: 2.0.0
@@ -21325,6 +21869,13 @@ snapshots:
micromark-util-symbol: 2.0.0
micromark-util-types: 2.0.0
+ micromark-factory-whitespace@1.1.0:
+ dependencies:
+ micromark-factory-space: 1.1.0
+ micromark-util-character: 1.2.0
+ micromark-util-symbol: 1.1.0
+ micromark-util-types: 1.1.0
+
micromark-factory-whitespace@2.0.0:
dependencies:
micromark-factory-space: 2.0.0
@@ -21332,30 +21883,61 @@ snapshots:
micromark-util-symbol: 2.0.0
micromark-util-types: 2.0.0
+ micromark-util-character@1.2.0:
+ dependencies:
+ micromark-util-symbol: 1.1.0
+ micromark-util-types: 1.1.0
+
micromark-util-character@2.0.1:
dependencies:
micromark-util-symbol: 2.0.0
micromark-util-types: 2.0.0
+ micromark-util-chunked@1.1.0:
+ dependencies:
+ micromark-util-symbol: 1.1.0
+
micromark-util-chunked@2.0.0:
dependencies:
micromark-util-symbol: 2.0.0
+ micromark-util-classify-character@1.1.0:
+ dependencies:
+ micromark-util-character: 1.2.0
+ micromark-util-symbol: 1.1.0
+ micromark-util-types: 1.1.0
+
micromark-util-classify-character@2.0.0:
dependencies:
micromark-util-character: 2.0.1
micromark-util-symbol: 2.0.0
micromark-util-types: 2.0.0
+ micromark-util-combine-extensions@1.1.0:
+ dependencies:
+ micromark-util-chunked: 1.1.0
+ micromark-util-types: 1.1.0
+
micromark-util-combine-extensions@2.0.0:
dependencies:
micromark-util-chunked: 2.0.0
micromark-util-types: 2.0.0
+ micromark-util-decode-numeric-character-reference@1.1.0:
+ dependencies:
+ micromark-util-symbol: 1.1.0
+
micromark-util-decode-numeric-character-reference@2.0.0:
dependencies:
micromark-util-symbol: 2.0.0
+ micromark-util-decode-string@1.1.0:
+ dependencies:
+ decode-named-character-reference: 1.0.1
+ micromark-util-character: 1.2.0
+ micromark-util-decode-numeric-character-reference: 1.1.0
+ micromark-util-symbol: 1.1.0
+
micromark-util-decode-string@2.0.0:
dependencies:
decode-named-character-reference: 1.0.1
@@ -21363,24 +21945,60 @@ snapshots:
micromark-util-decode-numeric-character-reference: 2.0.0
micromark-util-symbol: 2.0.0
+ micromark-util-encode@1.1.0: {}
+
micromark-util-encode@2.0.0: {}
+ micromark-util-events-to-acorn@2.0.2:
+ dependencies:
+ '@types/acorn': 4.0.6
+ '@types/estree': 1.0.5
+ '@types/unist': 3.0.0
+ 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
+
+ micromark-util-html-tag-name@1.2.0: {}
+
micromark-util-html-tag-name@2.0.0: {}
+ micromark-util-normalize-identifier@1.1.0:
+ dependencies:
+ micromark-util-symbol: 1.1.0
+
micromark-util-normalize-identifier@2.0.0:
dependencies:
micromark-util-symbol: 2.0.0
+ micromark-util-resolve-all@1.1.0:
+ dependencies:
+ micromark-util-types: 1.1.0
+
micromark-util-resolve-all@2.0.0:
dependencies:
micromark-util-types: 2.0.0
+ micromark-util-sanitize-uri@1.2.0:
+ dependencies:
+ micromark-util-character: 1.2.0
+ micromark-util-encode: 1.1.0
+ micromark-util-symbol: 1.1.0
+
micromark-util-sanitize-uri@2.0.0:
dependencies:
micromark-util-character: 2.0.1
micromark-util-encode: 2.0.0
micromark-util-symbol: 2.0.0
+ micromark-util-subtokenize@1.1.0:
+ dependencies:
+ micromark-util-chunked: 1.1.0
+ micromark-util-symbol: 1.1.0
+ micromark-util-types: 1.1.0
+ uvu: 0.5.6
+
micromark-util-subtokenize@2.0.0:
dependencies:
devlop: 1.1.0
@@ -21388,10 +22006,36 @@ snapshots:
micromark-util-symbol: 2.0.0
micromark-util-types: 2.0.0
+ micromark-util-symbol@1.1.0: {}
+
micromark-util-symbol@2.0.0: {}
+ micromark-util-types@1.1.0: {}
+
micromark-util-types@2.0.0: {}
+ micromark@3.2.0:
+ dependencies:
+ '@types/debug': 4.1.7
+ debug: 4.3.4
+ decode-named-character-reference: 1.0.1
+ micromark-core-commonmark: 1.1.0
+ micromark-factory-space: 1.1.0
+ micromark-util-character: 1.2.0
+ micromark-util-chunked: 1.1.0
+ micromark-util-combine-extensions: 1.1.0
+ micromark-util-decode-numeric-character-reference: 1.1.0
+ micromark-util-encode: 1.1.0
+ micromark-util-normalize-identifier: 1.1.0
+ micromark-util-resolve-all: 1.1.0
+ micromark-util-sanitize-uri: 1.2.0
+ micromark-util-subtokenize: 1.1.0
+ micromark-util-symbol: 1.1.0
+ micromark-util-types: 1.1.0
+ uvu: 0.5.6
+ transitivePeerDependencies:
+ - supports-color
+
micromark@4.0.0:
dependencies:
'@types/debug': 4.1.7
@@ -21489,6 +22133,8 @@ snapshots:
monaco-editor@0.47.0: {}
+ mri@1.2.0: {}
+
ms@2.1.2: {}
ms@2.1.3: {}
@@ -21618,6 +22264,8 @@ snapshots:
touch: 3.1.0
undefsafe: 2.0.5
+ non-layered-tidy-tree-layout@2.0.2: {}
+
nopt@1.0.10:
dependencies:
abbrev: 1.1.1
@@ -21949,6 +22597,17 @@ snapshots:
is-decimal: 1.0.4
is-hexadecimal: 1.0.4
+ parse-entities@4.0.1:
+ dependencies:
+ '@types/unist': 2.0.6
+ character-entities: 2.0.1
+ character-entities-legacy: 3.0.0
+ character-reference-invalid: 2.0.1
+ decode-named-character-reference: 1.0.1
+ is-alphanumerical: 2.0.1
+ is-decimal: 2.0.1
+ is-hexadecimal: 2.0.1
+
parse-json@5.2.0:
dependencies:
'@babel/code-frame': 7.22.5
@@ -21958,8 +22617,6 @@ snapshots:
parse-passwd@1.0.0: {}
- parse5@6.0.1: {}
-
parse5@7.1.1:
dependencies:
entities: 4.4.0
@@ -22004,6 +22661,12 @@ snapshots:
pend@1.2.0: {}
+ periscopic@3.1.0:
+ dependencies:
+ '@types/estree': 1.0.5
+ estree-walker: 3.0.3
+ is-reference: 3.0.2
+
pg-cloudflare@1.1.1:
optional: true
@@ -22724,8 +23387,6 @@ snapshots:
dependencies:
jsesc: 0.5.0
- remark-footnotes@2.0.0: {}
-
remark-gfm@4.0.0:
dependencies:
'@types/mdast': 4.0.1
@@ -22737,16 +23398,10 @@ snapshots:
transitivePeerDependencies:
- supports-color
- remark-mdx@1.6.22:
+ remark-mdx@3.0.1:
dependencies:
- '@babel/core': 7.12.9
- '@babel/helper-plugin-utils': 7.10.4
- '@babel/plugin-proposal-object-rest-spread': 7.12.1(@babel/core@7.12.9)
- '@babel/plugin-syntax-jsx': 7.12.1(@babel/core@7.12.9)
- '@mdx-js/util': 1.6.22
- is-alphabetical: 1.0.4
- remark-parse: 8.0.3
- unified: 9.2.0
+ mdast-util-mdx: 3.0.0
+ micromark-extension-mdxjs: 3.0.0
transitivePeerDependencies:
- supports-color
@@ -22759,25 +23414,6 @@ snapshots:
transitivePeerDependencies:
- supports-color
- remark-parse@8.0.3:
- dependencies:
- ccount: 1.1.0
- collapse-white-space: 1.0.6
- is-alphabetical: 1.0.4
- is-decimal: 1.0.4
- is-whitespace-character: 1.0.4
- is-word-character: 1.0.4
- markdown-escapes: 1.0.4
- parse-entities: 2.0.0
- repeat-string: 1.6.1
- state-toggle: 1.0.3
- trim: 0.0.1
- trim-trailing-lines: 1.1.4
- unherit: 1.1.3
- unist-util-remove-position: 2.0.1
- vfile-location: 3.2.0
- xtend: 4.0.2
-
remark-rehype@11.0.0:
dependencies:
'@types/hast': 3.0.1
@@ -22786,18 +23422,12 @@ snapshots:
unified: 11.0.3
vfile: 6.0.1
- remark-squeeze-paragraphs@4.0.0:
- dependencies:
- mdast-squeeze-paragraphs: 4.0.0
-
remark-stringify@11.0.0:
dependencies:
'@types/mdast': 4.0.1
mdast-util-to-markdown: 2.1.0
unified: 11.0.3
- repeat-string@1.6.1: {}
-
require-directory@2.1.1: {}
require-from-string@2.0.2: {}
@@ -22903,6 +23533,8 @@ snapshots:
safe-stable-stringify: 2.4.3
semver-compare: 1.0.0
+ robust-predicates@3.0.2: {}
+
rollup-plugin-output-size@1.3.0(rollup@4.12.0):
dependencies:
colorette: 2.0.20
@@ -22966,6 +23598,8 @@ snapshots:
dependencies:
queue-microtask: 1.2.3
+ rw@1.3.3: {}
+
rxjs@7.8.0:
dependencies:
tslib: 2.5.0
@@ -22974,6 +23608,10 @@ snapshots:
dependencies:
tslib: 2.6.2
+ sade@1.8.1:
+ dependencies:
+ mri: 1.2.0
+
safe-array-concat@1.1.2:
dependencies:
call-bind: 1.0.7
@@ -23178,10 +23816,10 @@ snapshots:
buffer-from: 1.1.2
source-map: 0.6.1
- source-map@0.5.7: {}
-
source-map@0.6.1: {}
+ source-map@0.7.4: {}
+
source-map@0.8.0-beta.0:
dependencies:
whatwg-url: 7.1.0
@@ -23240,8 +23878,6 @@ snapshots:
state-local@1.0.7: {}
- state-toggle@1.0.3: {}
-
statuses@1.5.0: {}
statuses@2.0.1: {}
@@ -23344,6 +23980,11 @@ snapshots:
dependencies:
safe-buffer: 5.2.1
+ stringify-entities@4.0.4:
+ dependencies:
+ character-entities-html4: 2.1.0
+ character-entities-legacy: 3.0.0
+
strip-ansi@6.0.1:
dependencies:
ansi-regex: 5.0.1
@@ -23384,10 +24025,6 @@ snapshots:
style-search@0.1.0: {}
- style-to-object@0.3.0:
- dependencies:
- inline-style-parser: 0.1.1
-
style-to-object@0.4.2:
dependencies:
inline-style-parser: 0.1.1
@@ -23463,6 +24100,8 @@ snapshots:
- supports-color
- typescript
+ stylis@4.3.2: {}
+
superagent@9.0.1:
dependencies:
component-emitter: 1.3.0
@@ -23653,18 +24292,14 @@ snapshots:
trim-newlines@4.1.1: {}
- trim-trailing-lines@1.1.4: {}
-
- trim@0.0.1: {}
-
- trough@1.0.5: {}
-
trough@2.1.0: {}
ts-api-utils@1.3.0(typescript@5.3.3):
dependencies:
typescript: 5.3.3
+ ts-dedent@2.2.0: {}
+
ts-node@10.9.2(@swc/core@1.3.52(@swc/helpers@0.5.1))(@types/node@20.12.7)(typescript@5.3.3):
dependencies:
'@cspotcode/source-map-support': 0.8.1
@@ -23685,6 +24320,25 @@ snapshots:
optionalDependencies:
'@swc/core': 1.3.52(@swc/helpers@0.5.1)
+ ts-node@10.9.2(@types/node@20.10.4)(typescript@5.3.3):
+ dependencies:
+ '@cspotcode/source-map-support': 0.8.1
+ '@tsconfig/node10': 1.0.9
+ '@tsconfig/node12': 1.0.11
+ '@tsconfig/node14': 1.0.3
+ '@tsconfig/node16': 1.0.4
+ '@types/node': 20.10.4
+ acorn: 8.10.0
+ acorn-walk: 8.2.0
+ arg: 4.1.3
+ create-require: 1.1.1
+ diff: 4.0.2
+ make-error: 1.3.6
+ typescript: 5.3.3
+ v8-compile-cache-lib: 3.0.1
+ yn: 3.1.1
+ optional: true
+
tsconfig-paths@3.15.0:
dependencies:
'@types/json5': 0.0.29
@@ -23807,11 +24461,6 @@ snapshots:
undici-types@5.26.5: {}
- unherit@1.1.3:
- dependencies:
- inherits: 2.0.4
- xtend: 4.0.2
-
unicorn-magic@0.1.0: {}
unified@11.0.3:
@@ -23824,41 +24473,24 @@ snapshots:
trough: 2.1.0
vfile: 6.0.1
- unified@9.2.0:
- dependencies:
- '@types/unist': 2.0.6
- bail: 1.0.5
- extend: 3.0.2
- is-buffer: 2.0.5
- is-plain-obj: 2.1.0
- trough: 1.0.5
- vfile: 4.2.1
-
- unist-builder@2.0.3: {}
-
- unist-util-generated@1.1.6: {}
-
- unist-util-is@4.1.0: {}
-
unist-util-is@6.0.0:
dependencies:
'@types/unist': 3.0.0
- unist-util-position@3.1.0: {}
+ unist-util-position-from-estree@2.0.0:
+ dependencies:
+ '@types/unist': 3.0.0
unist-util-position@5.0.0:
dependencies:
'@types/unist': 3.0.0
- unist-util-remove-position@2.0.1:
+ unist-util-remove-position@5.0.0:
dependencies:
- unist-util-visit: 2.0.3
+ '@types/unist': 3.0.0
+ unist-util-visit: 5.0.0
- unist-util-remove@2.1.0:
- dependencies:
- unist-util-is: 4.1.0
-
- unist-util-stringify-position@2.0.3:
+ unist-util-stringify-position@3.0.3:
dependencies:
'@types/unist': 2.0.6
@@ -23866,22 +24498,11 @@ snapshots:
dependencies:
'@types/unist': 3.0.0
- unist-util-visit-parents@3.1.1:
- dependencies:
- '@types/unist': 2.0.6
- unist-util-is: 4.1.0
-
unist-util-visit-parents@6.0.1:
dependencies:
'@types/unist': 3.0.0
unist-util-is: 6.0.0
- unist-util-visit@2.0.3:
- dependencies:
- '@types/unist': 2.0.6
- unist-util-is: 4.1.0
- unist-util-visit-parents: 3.1.1
-
unist-util-visit@5.0.0:
dependencies:
'@types/unist': 3.0.0
@@ -23933,6 +24554,13 @@ snapshots:
uuid@9.0.1: {}
+ uvu@0.5.6:
+ dependencies:
+ dequal: 2.0.3
+ diff: 5.2.0
+ kleur: 4.1.4
+ sade: 1.8.1
+
v8-compile-cache-lib@3.0.1: {}
v8-to-istanbul@9.2.0:
@@ -23948,25 +24576,11 @@ snapshots:
vary@1.1.2: {}
- vfile-location@3.2.0: {}
-
- vfile-message@2.0.4:
- dependencies:
- '@types/unist': 2.0.6
- unist-util-stringify-position: 2.0.3
-
vfile-message@4.0.2:
dependencies:
'@types/unist': 3.0.0
unist-util-stringify-position: 4.0.0
- vfile@4.2.1:
- dependencies:
- '@types/unist': 2.0.6
- is-buffer: 2.0.5
- unist-util-stringify-position: 2.0.3
- vfile-message: 2.0.4
-
vfile@6.0.1:
dependencies:
'@types/unist': 3.0.0
@@ -24186,7 +24800,7 @@ snapshots:
weak-lru-cache@1.2.2: {}
- web-namespaces@1.1.4: {}
+ web-worker@1.3.0: {}
webidl-conversions@3.0.1: {}
@@ -24419,6 +25033,4 @@ snapshots:
zod@3.22.4: {}
- zwitch@1.0.5: {}
-
zwitch@2.0.2: {}