tailwind package

This commit is contained in:
Max Peintner
2023-04-14 13:35:27 +02:00
parent b275a0de62
commit 2c04b79f1b
27 changed files with 264 additions and 221 deletions

View File

@@ -20,8 +20,9 @@ export default function Page() {
<div className="block">
<TextInput title="loginname" label="Loginname" />
</div>
<div className="hello">hello</div>
<div>
hello
<IdentityProviders />
</div>
<div className="mt-8 flex w-full flex-row items-center justify-between">

View File

@@ -1,13 +1,15 @@
import '#/styles/globals.css';
import { AddressBar } from '#/ui/AddressBar';
import { GlobalNav } from '#/ui/GlobalNav';
import { VercelLogo } from '#/ui/VercelLogo';
import { ZitadelLogo } from '#/ui/ZitadelLogo';
import { Lato } from '@next/font/google';
import "#/styles/globals.css";
// include styles from the ui package
import "@zitadel/react/styles.css";
import { AddressBar } from "#/ui/AddressBar";
import { GlobalNav } from "#/ui/GlobalNav";
import { VercelLogo } from "#/ui/VercelLogo";
import { ZitadelLogo } from "#/ui/ZitadelLogo";
import { Lato } from "@next/font/google";
const lato = Lato({
weight: '400',
subsets: ['latin'],
weight: "400",
subsets: ["latin"],
});
export default function RootLayout({

View File

@@ -1,5 +1,5 @@
import { demos } from '#/lib/demos';
import Link from 'next/link';
import { demos } from "#/lib/demos";
import Link from "next/link";
export default function Page() {
return (
@@ -13,7 +13,6 @@ export default function Page() {
<div className="text-xs font-semibold uppercase tracking-wider text-gray-500">
{section.name}
</div>
<div className="grid grid-cols-1 gap-5 lg:grid-cols-2">
{section.items.map((item) => {
return (

View File

@@ -7,7 +7,6 @@ module.exports = {
"./app/**/*.{js,ts,jsx,tsx}",
"./page/**/*.{js,ts,jsx,tsx}",
"./ui/**/*.{js,ts,jsx,tsx}",
"../../packages/zitadel-react/**/*.{js,ts,jsx,tsx}",
],
future: {
hoverOnlyWhenSupported: true,

View File

@@ -29,7 +29,7 @@
},
"dependencies": {
"jose": "^4.13.1",
"nice-grpc": "2.0.1",
"nice-grpc-web": "^3.2.3",
"protobufjs": "^7.2.3"
}
}

View File

@@ -1,28 +0,0 @@
import { CompatServiceDefinition } from "nice-grpc/lib/service-definitions";
import { createChannel, createClientFactory } from "nice-grpc";
import {
AuthServiceClient,
AuthServiceDefinition,
} from "./proto/server/zitadel/auth";
import {
AdminServiceClient,
AdminServiceDefinition,
} from "./proto/server/zitadel/admin";
import { authMiddleware } from "./middleware";
const createClient = <Client>(
definition: CompatServiceDefinition,
accessToken: string
) => {
const channel = createChannel(process.env.ZITADEL_API_URL ?? "");
return createClientFactory()
.use(authMiddleware(accessToken))
.create(definition, channel) as Client;
};
export const getAdmin = () =>
createClient<AdminServiceClient>(
AdminServiceDefinition as CompatServiceDefinition,
process.env.ZITADEL_ADMIN_TOKEN ?? ""
);

View File

@@ -1,25 +1,19 @@
import { CompatServiceDefinition } from "nice-grpc/lib/service-definitions";
import { createChannel, createClientFactory } from "nice-grpc";
import {
AuthServiceClient,
AuthServiceDefinition,
} from "./proto/server/zitadel/auth";
import { ZitadelApp } from "./app";
import { authMiddleware } from "./middleware";
const createClient = <Client>(
definition: CompatServiceDefinition,
accessToken: string
) => {
const channel = createChannel(process.env.ZITADEL_API_URL ?? "");
return createClientFactory()
.use(authMiddleware(accessToken))
.create(definition, channel) as Client;
};
// const createClient = <Client>(
// definition: CompatServiceDefinition,
// accessToken: string
// ) => {
// const channel = createChannel(process.env.ZITADEL_API_URL ?? "");
// return createClientFactory()
// .use(authMiddleware(accessToken))
// .create(definition, channel) as Client;
// };
export async function getAuth(app?: ZitadelApp): Promise<AuthServiceClient> {
return createClient<AuthServiceClient>(
AuthServiceDefinition as CompatServiceDefinition,
""
);
export async function getAuth(app?: ZitadelApp) {
// return createClient<AuthServiceClient>(
// AuthServiceDefinition as CompatServiceDefinition,
// ""
// );
}

View File

@@ -1,8 +1,5 @@
export { initializeApp, getApps } from "./app";
export { getAuth } from "./auth";
export { getManagement } from "./management";
export { getAdmin } from "./admin";
export { getSystem } from "./system";
export type { ZitadelOptions } from "./app";

View File

@@ -1,45 +0,0 @@
import { CompatServiceDefinition } from "nice-grpc/lib/service-definitions";
import { createChannel, createClientFactory } from "nice-grpc";
import {
ManagementServiceClient,
ManagementServiceDefinition,
} from "./proto/server/zitadel/management";
import { authMiddleware } from "./middleware";
import { ZitadelApp, getApps } from "./app";
const createClient = <Client>(
definition: CompatServiceDefinition,
apiUrl: string,
token: string
) => {
if (!apiUrl) {
throw Error("ZITADEL_API_URL not set");
}
const channel = createChannel(process.env.ZITADEL_API_URL ?? "");
return createClientFactory()
.use(authMiddleware(token))
.create(definition, channel) as Client;
};
export const getManagement = (app?: string | ZitadelApp) => {
let config;
if (app && typeof app === "string") {
const apps = getApps();
config = apps.find((a) => a.name === app)?.config;
} else if (app && typeof app === "object") {
config = app.config;
}
if (!config) {
throw Error("No ZITADEL app found");
}
return createClient<ManagementServiceClient>(
ManagementServiceDefinition as CompatServiceDefinition,
config.apiUrl,
config.token
);
};

View File

@@ -1,4 +1,4 @@
import { CallOptions, ClientMiddlewareCall, Metadata } from "nice-grpc";
import { CallOptions, ClientMiddlewareCall, Metadata } from "nice-grpc-web";
export const authMiddleware = (token: string) =>
async function* <Request, Response>(

View File

@@ -1,35 +0,0 @@
import { CompatServiceDefinition } from "nice-grpc/lib/service-definitions";
import { importPKCS8, SignJWT } from "jose";
import { createChannel, createClientFactory } from "nice-grpc";
import {
SystemServiceClient,
SystemServiceDefinition,
} from "./proto/server/zitadel/system";
import { authMiddleware } from "./middleware";
const createSystemClient = <Client>(
definition: CompatServiceDefinition,
accessToken: string
) => {
const channel = createChannel(process.env.ZITADEL_SYSTEM_API_URL ?? "");
return createClientFactory()
.use(authMiddleware(accessToken))
.create(definition, channel) as Client;
};
export const getSystem = async () => {
const token = await new SignJWT({})
.setProtectedHeader({ alg: "RS256" })
.setIssuedAt()
.setExpirationTime("1h")
.setIssuer(process.env.ZITADEL_SYSTEM_API_USERID ?? "")
.setSubject(process.env.ZITADEL_SYSTEM_API_USERID ?? "")
.setAudience(process.env.ZITADEL_ISSUER ?? "")
.sign(await importPKCS8(process.env.ZITADEL_SYSTEM_API_KEY ?? "", "RS256"));
return createSystemClient<SystemServiceClient>(
SystemServiceDefinition as CompatServiceDefinition,
token
);
};

View File

@@ -1,31 +1,38 @@
{
"name": "@zitadel/react",
"version": "0.0.0",
"main": "./dist/index.js",
"module": "./dist/index.mjs",
"types": "./dist/index.d.ts",
"sideEffects": false,
"license": "MIT",
"files": [
"dist/**"
"sideEffects": [
"**/*.css"
],
"license": "MIT",
"exports": {
".": "./dist",
"./styles.css": "./dist/index.css",
"./assets/*": "./dist/assets/*"
},
"scripts": {
"build": "tsup src/index.tsx --format esm,cjs --dts --external react",
"dev": "tsup src/index.tsx --format esm,cjs --watch --dts --external react",
"build": "tsup",
"dev": "tsup --watch",
"lint": "eslint \"src/**/*.ts*\"",
"clean": "rm -rf .turbo && rm -rf node_modules && rm -rf dist"
},
"devDependencies": {
"@types/react": "^17.0.13",
"@types/react-dom": "^17.0.8",
"@zitadel/tsconfig": "workspace:*",
"eslint": "^7.32.0",
"eslint-config-zitadel": "workspace:*",
"@types/react": "^17.0.13",
"@types/react-dom": "^17.0.8",
"react": "^17.0.2",
"postcss": "8.4.21",
"sass": "^1.62.0",
"tailwindcss": "3.2.4",
"tsup": "^5.10.1",
"typescript": "^4.5.3"
},
"publishConfig": {
"access": "public"
},
"peerDependencies": {
"react": "18.2.0"
}
}

View File

@@ -0,0 +1,9 @@
// If you want to use other PostCSS plugins, see the following:
// https://tailwindcss.com/docs/using-with-preprocessors
module.exports = {
plugins: {
tailwindcss: {},
autoprefixer: {},
},
};

View File

Before

Width:  |  Height:  |  Size: 968 B

After

Width:  |  Height:  |  Size: 968 B

View File

Before

Width:  |  Height:  |  Size: 968 B

After

Width:  |  Height:  |  Size: 968 B

View File

Before

Width:  |  Height:  |  Size: 856 B

After

Width:  |  Height:  |  Size: 856 B

View File

Before

Width:  |  Height:  |  Size: 4.5 KiB

After

Width:  |  Height:  |  Size: 4.5 KiB

View File

Before

Width:  |  Height:  |  Size: 343 B

After

Width:  |  Height:  |  Size: 343 B

View File

Before

Width:  |  Height:  |  Size: 9.6 KiB

After

Width:  |  Height:  |  Size: 9.6 KiB

View File

@@ -6,15 +6,15 @@ export interface SignInWithGoogleProps {
export function SignInWithGoogle(props: SignInWithGoogleProps) {
return (
<div className="flex flex-row items-center bg-white text-gray-500 dark:bg-transparent dark:text-white rounded-md p-4 text-sm">
<div className="ui-flex ui-flex-row ui-items-center ui-bg-white ui-text-black dark:ui-bg-transparent dark:ui-text-white rounded-md p-4 text-sm">
<img
className="h-8 w-8"
src="idp/google.png"
src="./assets/google.png"
alt="google"
height={24}
width={24}
/>
Sign in with Google
<span className="ui-ml-4">Sign in with Google</span>
</div>
);
}

View File

@@ -1,5 +1,6 @@
import * as React from "react";
import "./styles.css";
export {
SignInWithGoogle,
type SignInWithGoogleProps,
} from "./SignInWithGoogle";
} from "./components/SignInWithGoogle";

View File

@@ -0,0 +1,7 @@
@tailwind base;
@tailwind components;
@tailwind utilities;
.hello {
color: yellow;
}

View File

@@ -0,0 +1,17 @@
const colors = require("tailwindcss/colors");
/** @type {import('tailwindcss').Config} */
module.exports = {
prefix: "ui-",
darkMode: "class",
content: [`src/**/*.{js,ts,jsx,tsx}`],
theme: {
extend: {
colors: {
brandblue: colors.blue[500],
brandred: colors.red[500],
},
},
},
plugins: [],
};

View File

@@ -0,0 +1,13 @@
import { defineConfig, Options } from "tsup";
export default defineConfig((options: Options) => ({
treeshake: true,
splitting: true,
entry: ["src/**/*.tsx"],
format: ["esm"],
dts: true,
minify: true,
clean: true,
external: ["react"],
...options,
}));

View File

@@ -29,6 +29,7 @@
},
"dependencies": {
"jose": "^4.13.1",
"long": "^5.2.1",
"nice-grpc": "2.0.1",
"protobufjs": "^7.2.3"
}

View File

@@ -1,13 +1,6 @@
/**
* Return a slugified copy of a string.
*
* @param {CoreProps} str The ZITADEL client configuration
* @return {Core} The client implementation.
*/
let apps: ZitadelApp[] = [];
export interface ZitadelCoreProps {
export interface ZitadelClientProps {
clientId: string;
apiUrl: string; // process.env.ZITADEL_API_URL
token: string;
@@ -15,17 +8,17 @@ export interface ZitadelCoreProps {
managementToken?: string;
}
export interface ZitadelOptions extends ZitadelCoreProps {
export interface ZitadelOptions extends ZitadelClientProps {
name?: string;
}
export interface ZitadelApp {
name: string | undefined;
config: ZitadelCoreProps;
config: ZitadelClientProps;
}
export async function initializeApp(
config: ZitadelCoreProps,
config: ZitadelClientProps,
name?: string
): Promise<ZitadelApp> {
const app = { config, name };

207
pnpm-lock.yaml generated
View File

@@ -14,7 +14,7 @@ importers:
eslint: 7.32.0
eslint-config-zitadel: link:packages/eslint-config-zitadel
prettier: 2.8.0
turbo: 1.8.8
turbo: 1.9.1
apps/login:
specifiers:
@@ -28,9 +28,9 @@ importers:
'@types/react-dom': 18.0.9
'@types/tinycolor2': 1.4.3
'@vercel/git-hooks': 1.0.0
'@zitadel/core': workspace:*
'@zitadel/next': workspace:*
'@zitadel/react': workspace:*
'@zitadel/server': workspace:*
'@zitadel/tsconfig': workspace:*
autoprefixer: 10.4.13
clsx: 1.2.1
@@ -57,9 +57,9 @@ importers:
'@heroicons/react': 2.0.13_react@18.2.0
'@next/font': 13.0.5
'@tailwindcss/forms': 0.5.3_tailwindcss@3.2.4
'@zitadel/core': link:../../packages/zitadel-core
'@zitadel/next': link:../../packages/zitadel-next
'@zitadel/react': link:../../packages/zitadel-react
'@zitadel/server': link:../../packages/zitadel-server
clsx: 1.2.1
date-fns: 2.29.3
dinero.js: 2.0.0-alpha.8
@@ -98,25 +98,25 @@ importers:
eslint-config-turbo: latest
eslint-plugin-react: 7.28.0
dependencies:
eslint-config-next: 13.2.4_hsf322ms6xhhd4b5ne6lb74y4a
eslint-config-next: 13.3.0_hsf322ms6xhhd4b5ne6lb74y4a
eslint-config-prettier: 8.5.0_eslint@8.28.0
eslint-config-turbo: 1.8.8_eslint@8.28.0
eslint-config-turbo: 1.9.1_eslint@8.28.0
eslint-plugin-react: 7.28.0_eslint@8.28.0
packages/zitadel-core:
packages/zitadel-client:
specifiers:
'@zitadel/tsconfig': workspace:*
eslint: ^7.32.0
eslint-config-zitadel: workspace:*
jose: ^4.13.1
nice-grpc: 2.0.1
nice-grpc-web: ^3.2.3
protobufjs: ^7.2.3
ts-proto: ^1.139.0
tsup: ^5.10.1
typescript: ^4.5.3
dependencies:
jose: 4.13.1
nice-grpc: 2.0.1
nice-grpc-web: 3.2.3_ws@8.13.0
protobufjs: 7.2.3
devDependencies:
'@zitadel/tsconfig': link:../zitadel-tsconfig
@@ -150,16 +150,48 @@ importers:
'@zitadel/tsconfig': workspace:*
eslint: ^7.32.0
eslint-config-zitadel: workspace:*
react: ^17.0.2
postcss: 8.4.21
react: 18.2.0
sass: ^1.62.0
tailwindcss: 3.2.4
tsup: ^5.10.1
typescript: ^4.5.3
dependencies:
react: 18.2.0
devDependencies:
'@types/react': 17.0.52
'@types/react-dom': 17.0.18
'@zitadel/tsconfig': link:../zitadel-tsconfig
eslint: 7.32.0
eslint-config-zitadel: link:../eslint-config-zitadel
react: 17.0.2
postcss: 8.4.21
sass: 1.62.0
tailwindcss: 3.2.4_postcss@8.4.21
tsup: 5.12.9_krdp57wjjbbhfrtrh2uomx3tgy
typescript: 4.9.3
packages/zitadel-server:
specifiers:
'@zitadel/tsconfig': workspace:*
eslint: ^7.32.0
eslint-config-zitadel: workspace:*
jose: ^4.13.1
long: ^5.2.1
nice-grpc: 2.0.1
protobufjs: ^7.2.3
ts-proto: ^1.139.0
tsup: ^5.10.1
typescript: ^4.5.3
dependencies:
jose: 4.13.1
long: 5.2.1
nice-grpc: 2.0.1
protobufjs: 7.2.3
devDependencies:
'@zitadel/tsconfig': link:../zitadel-tsconfig
eslint: 7.32.0
eslint-config-zitadel: link:../eslint-config-zitadel
ts-proto: 1.146.0
tsup: 5.12.9_typescript@4.9.3
typescript: 4.9.3
@@ -1925,8 +1957,8 @@ packages:
resolution: {integrity: sha512-FN50r/E+b8wuqyRjmGaqvqNDuWBWYWQiigfZ50KnSFH0f+AMQQyaZl+Zm2+CIpKk0fL9QxhLxOpTVA3xFHgFow==}
dev: false
/@next/eslint-plugin-next/13.2.4:
resolution: {integrity: sha512-ck1lI+7r1mMJpqLNa3LJ5pxCfOB1lfJncKmRJeJxcJqcngaFwylreLP7da6Rrjr6u2gVRTfmnkSkjc80IiQCwQ==}
/@next/eslint-plugin-next/13.3.0:
resolution: {integrity: sha512-wuGN5qSEjSgcq9fVkH0Y/qIPFjnZtW3ZPwfjJOn7l/rrf6y8J24h/lo61kwqunTyzZJm/ETGfGVU9PUs8cnzEA==}
dependencies:
glob: 7.1.7
dev: false
@@ -3406,8 +3438,8 @@ packages:
engines: {node: '>=12'}
dev: true
/eslint-config-next/13.2.4_hsf322ms6xhhd4b5ne6lb74y4a:
resolution: {integrity: sha512-lunIBhsoeqw6/Lfkd6zPt25w1bn0znLA/JCL+au1HoEpSb4/PpsOYsYtgV/q+YPsoKIOzFyU5xnb04iZnXjUvg==}
/eslint-config-next/13.3.0_hsf322ms6xhhd4b5ne6lb74y4a:
resolution: {integrity: sha512-6YEwmFBX0VjBd3ODGW9df0Is0FLaRFdMN8eAahQG9CN6LjQ28J8AFr19ngxqMSg7Qv6Uca/3VeeBosJh1bzu0w==}
peerDependencies:
eslint: ^7.23.0 || ^8.0.0
typescript: '>=3.3.1'
@@ -3415,7 +3447,7 @@ packages:
typescript:
optional: true
dependencies:
'@next/eslint-plugin-next': 13.2.4
'@next/eslint-plugin-next': 13.3.0
'@rushstack/eslint-patch': 1.2.0
'@typescript-eslint/parser': 5.44.0_hsf322ms6xhhd4b5ne6lb74y4a
eslint: 8.28.0
@@ -3440,13 +3472,13 @@ packages:
eslint: 8.28.0
dev: false
/eslint-config-turbo/1.8.8_eslint@8.28.0:
resolution: {integrity: sha512-+yT22sHOT5iC1sbBXfLIdXfbZuiv9bAyOXsxTxFCWelTeFFnANqmuKB3x274CFvf7WRuZ/vYP/VMjzU9xnFnxA==}
/eslint-config-turbo/1.9.1_eslint@8.28.0:
resolution: {integrity: sha512-tUqm5TxI5bpbDEgClbw+UygVPAwYB20FIpAiQsZI8imJNDz30E40TZkp6uWpAKmxykU8T0+t3jwkYokvXmXc0Q==}
peerDependencies:
eslint: '>6.6.0'
dependencies:
eslint: 8.28.0
eslint-plugin-turbo: 1.8.8_eslint@8.28.0
eslint-plugin-turbo: 1.9.1_eslint@8.28.0
dev: false
/eslint-import-resolver-node/0.3.6:
@@ -3614,8 +3646,8 @@ packages:
string.prototype.matchall: 4.0.8
dev: false
/eslint-plugin-turbo/1.8.8_eslint@8.28.0:
resolution: {integrity: sha512-zqyTIvveOY4YU5jviDWw9GXHd4RiKmfEgwsjBrV/a965w0PpDwJgEUoSMB/C/dU310Sv9mF3DSdEjxjJLaw6rA==}
/eslint-plugin-turbo/1.9.1_eslint@8.28.0:
resolution: {integrity: sha512-QPd0EG0xkoDkXJLwPQKULxHjkR27VmvJtILW4C9aIrqauLZ+Yc/V7R+A9yVwAi6nkMHxUlCSUsBxmiQP9TIlPw==}
peerDependencies:
eslint: '>6.6.0'
dependencies:
@@ -4228,6 +4260,10 @@ packages:
resolution: {integrity: sha512-CmxgYGiEPCLhfLnpPp1MoRmifwEIOgjcHXxOBjv7mY96c+eWScsOP9c112ZyLdWHi0FxHjI+4uVhKYp/gcdRmQ==}
engines: {node: '>= 4'}
/immutable/4.3.0:
resolution: {integrity: sha512-0AOCmOip+xgJwEVTQj1EfiDDOkPmuyllDuTuEX+DDXUgapLAsBIfkg3sxCYyCEA8mQqZrrxPUGjcOQ2JS3WLkg==}
dev: true
/import-fresh/3.3.0:
resolution: {integrity: sha512-veYYhQa+D1QBKznvhUHxb8faxlrwUnxseDAbAp457E0wLNio2bOSKnjYDhMj+YiAq61xrMGhQk9iXVk5FzgQMw==}
engines: {node: '>=6'}
@@ -4430,6 +4466,14 @@ packages:
/isexe/2.0.0:
resolution: {integrity: sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw==}
/isomorphic-ws/5.0.0_ws@8.13.0:
resolution: {integrity: sha512-muId7Zzn9ywDsyXgTIafTry2sV3nySZeUDe6YedVd1Hvuuep5AsIlqK+XefWpYTyJG5e503F2xIuT2lcU6rCSw==}
peerDependencies:
ws: '*'
dependencies:
ws: 8.13.0
dev: false
/jose/4.13.1:
resolution: {integrity: sha512-MSJQC5vXco5Br38mzaQKiq9mwt7lwj2eXpgpRyQYNHYt2lq1PjkWa7DLXX0WVcQLE9HhMh3jPiufS7fhJf+CLQ==}
dev: false
@@ -4439,6 +4483,10 @@ packages:
engines: {node: '>=10'}
dev: true
/js-base64/3.7.5:
resolution: {integrity: sha512-3MEt5DTINKqfScXKfJFrRbxkrnk2AxPWGBL/ycjz4dK8iqiSJ06UxD8jh8xuh6p10TX4t2+7FsBYVxxQbMg+qA==}
dev: false
/js-sdsl/4.2.0:
resolution: {integrity: sha512-dyBIzQBDkCqCu+0upx25Y2jGdbTGxE9fshMsCdK0ViOongpV+n5tXRcZY9v7CaVQ79AGS9KA1KHtojxiM7aXSQ==}
dev: false
@@ -4668,6 +4716,7 @@ packages:
hasBin: true
dependencies:
js-tokens: 4.0.0
dev: false
/lru-cache/4.1.5:
resolution: {integrity: sha512-sWZlbEP2OsHNkXrMl5GYk/jKk70MBng6UU4YI/qGDYbgf6YbP4EvmqISbXCoJiRKs+1bSpFHVgQxvJ17F2li5g==}
@@ -4967,6 +5016,17 @@ packages:
ts-error: 1.0.6
dev: false
/nice-grpc-web/3.2.3_ws@8.13.0:
resolution: {integrity: sha512-oNuCBhCffmpED/dTtbQycKkMkJ6DCaPeyi/W/hbLaGIZfiwSFg+kmWSKmTdI07XqMQ1POKxn//bdldXZsE1ZUg==}
dependencies:
abort-controller-x: 0.4.1
isomorphic-ws: 5.0.0_ws@8.13.0
js-base64: 3.7.5
nice-grpc-common: 2.0.2
transitivePeerDependencies:
- ws
dev: false
/nice-grpc/2.0.1:
resolution: {integrity: sha512-Q5CGXO08STsv+HAkXeFgRayANT62X1LnIDhNXdCf+LP0XaP7EiHM0Cr3QefnoFjDZAx/Kxq+qiQfY66BrtKcNQ==}
dependencies:
@@ -5502,14 +5562,6 @@ packages:
resolution: {integrity: sha512-24e6ynE2H+OKt4kqsOvNd8kBpV65zoxbA4BVsEOB3ARVWQki/DHzaUoC5KuON/BiccDaCCTZBuOcfZs70kR8bQ==}
dev: false
/react/17.0.2:
resolution: {integrity: sha512-gnhPt75i/dq/z3/6q/0asP78D0u592D5L1pd7M8P+dck6Fu/jJeL6iVVK23fptSUZj8Vjf++7wXA8UNclGQcbA==}
engines: {node: '>=0.10.0'}
dependencies:
loose-envify: 1.4.0
object-assign: 4.1.1
dev: true
/react/18.2.0:
resolution: {integrity: sha512-/3IjMdb2L9QbBdWiW5e3P2/npwMBaU9mHCSCUzNln0ZCYbcfTsGbTJrU/kGemdH2IWmB2ioZ+zkxtmq6g09fGQ==}
engines: {node: '>=0.10.0'}
@@ -5747,6 +5799,16 @@ packages:
resolution: {integrity: sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==}
dev: true
/sass/1.62.0:
resolution: {integrity: sha512-Q4USplo4pLYgCi+XlipZCWUQz5pkg/ruSSgJ0WRDSb/+3z9tXUOkQ7QPYn4XrhZKYAK4HlpaQecRwKLJX6+DBg==}
engines: {node: '>=14.0.0'}
hasBin: true
dependencies:
chokidar: 3.5.3
immutable: 4.3.0
source-map-js: 1.0.2
dev: true
/scheduler/0.23.0:
resolution: {integrity: sha512-CtuThmgHNg7zIZWAXi3AsyIzA3n4xx7aNyjwC2VJldO2LMVDhFK+63xGqq6CsJH4rTAt6/M+N4GhZiDYPx9eUw==}
dependencies:
@@ -6308,6 +6370,42 @@ packages:
/tslib/2.4.1:
resolution: {integrity: sha512-tGyy4dAjRIEwI7BzsB0lynWgOpfqjUdq91XXAlIWD2OwKBH7oCl/GZG/HT4BOHrTlPMOASlMQ7veyTqpmRcrNA==}
/tsup/5.12.9_krdp57wjjbbhfrtrh2uomx3tgy:
resolution: {integrity: sha512-dUpuouWZYe40lLufo64qEhDpIDsWhRbr2expv5dHEMjwqeKJS2aXA/FPqs1dxO4T6mBojo7rvo3jP9NNzaKyDg==}
hasBin: true
peerDependencies:
'@swc/core': ^1
postcss: ^8.4.12
typescript: ^4.1.0
peerDependenciesMeta:
'@swc/core':
optional: true
postcss:
optional: true
typescript:
optional: true
dependencies:
bundle-require: 3.1.2_esbuild@0.14.54
cac: 6.7.14
chokidar: 3.5.3
debug: 4.3.4
esbuild: 0.14.54
execa: 5.1.1
globby: 11.1.0
joycon: 3.1.1
postcss: 8.4.21
postcss-load-config: 3.1.4_postcss@8.4.21
resolve-from: 5.0.0
rollup: 2.79.1
source-map: 0.8.0-beta.0
sucrase: 3.29.0
tree-kill: 1.2.2
typescript: 4.9.3
transitivePeerDependencies:
- supports-color
- ts-node
dev: true
/tsup/5.12.9_typescript@4.9.3:
resolution: {integrity: sha512-dUpuouWZYe40lLufo64qEhDpIDsWhRbr2expv5dHEMjwqeKJS2aXA/FPqs1dxO4T6mBojo7rvo3jP9NNzaKyDg==}
hasBin: true
@@ -6367,65 +6465,65 @@ packages:
yargs: 17.6.2
dev: true
/turbo-darwin-64/1.8.8:
resolution: {integrity: sha512-18cSeIm7aeEvIxGyq7PVoFyEnPpWDM/0CpZvXKHpQ6qMTkfNt517qVqUTAwsIYqNS8xazcKAqkNbvU1V49n65Q==}
/turbo-darwin-64/1.9.1:
resolution: {integrity: sha512-IX/Ph4CO80lFKd9pPx3BWpN2dynt6mcUFifyuHUNVkOP1Usza/G9YuZnKQFG6wUwKJbx40morFLjk1TTeLe04w==}
cpu: [x64]
os: [darwin]
requiresBuild: true
dev: true
optional: true
/turbo-darwin-arm64/1.8.8:
resolution: {integrity: sha512-ruGRI9nHxojIGLQv1TPgN7ud4HO4V8mFBwSgO6oDoZTNuk5ybWybItGR+yu6fni5vJoyMHXOYA2srnxvOc7hjQ==}
/turbo-darwin-arm64/1.9.1:
resolution: {integrity: sha512-6tCbmIboy9dTbhIZ/x9KIpje73nvxbiyVnHbr9xKnsxLJavD0xqjHZzbL5U2tHp8chqmYf0E4WYOXd+XCNg+OQ==}
cpu: [arm64]
os: [darwin]
requiresBuild: true
dev: true
optional: true
/turbo-linux-64/1.8.8:
resolution: {integrity: sha512-N/GkHTHeIQogXB1/6ZWfxHx+ubYeb8Jlq3b/3jnU4zLucpZzTQ8XkXIAfJG/TL3Q7ON7xQ8yGOyGLhHL7MpFRg==}
/turbo-linux-64/1.9.1:
resolution: {integrity: sha512-ti8XofnJFO1XaadL92lYJXgxb0VBl03Yu9VfhxkOTywFe7USTLBkJcdvQ4EpFk/KZwLiTdCmT2NQVxsG4AxBiQ==}
cpu: [x64]
os: [linux]
requiresBuild: true
dev: true
optional: true
/turbo-linux-arm64/1.8.8:
resolution: {integrity: sha512-hKqLbBHgUkYf2Ww8uBL9UYdBFQ5677a7QXdsFhONXoACbDUPvpK4BKlz3NN7G4NZ+g9dGju+OJJjQP0VXRHb5w==}
/turbo-linux-arm64/1.9.1:
resolution: {integrity: sha512-XYvIbeiCCCr+ENujd2Jtck/lJPTKWb8T2MSL/AEBx21Zy3Sa7HgrQX6LX0a0pNHjaleHz00XXt1D0W5hLeP+tA==}
cpu: [arm64]
os: [linux]
requiresBuild: true
dev: true
optional: true
/turbo-windows-64/1.8.8:
resolution: {integrity: sha512-2ndjDJyzkNslXxLt+PQuU21AHJWc8f6MnLypXy3KsN4EyX/uKKGZS0QJWz27PeHg0JS75PVvhfFV+L9t9i+Yyg==}
/turbo-windows-64/1.9.1:
resolution: {integrity: sha512-x7lWAspe4/v3XQ0gaFRWDX/X9uyWdhwFBPEfb8BA0YKtnsrPOHkV0mRHCRrXzvzjA7pcDCl2agGzb7o863O+Jg==}
cpu: [x64]
os: [win32]
requiresBuild: true
dev: true
optional: true
/turbo-windows-arm64/1.8.8:
resolution: {integrity: sha512-xCA3oxgmW9OMqpI34AAmKfOVsfDljhD5YBwgs0ZDsn5h3kCHhC4x9W5dDk1oyQ4F5EXSH3xVym5/xl1J6WRpUg==}
/turbo-windows-arm64/1.9.1:
resolution: {integrity: sha512-QSLNz8dRBLDqXOUv/KnoesBomSbIz2Huef/a3l2+Pat5wkQVgMfzFxDOnkK5VWujPYXz+/prYz+/7cdaC78/kw==}
cpu: [arm64]
os: [win32]
requiresBuild: true
dev: true
optional: true
/turbo/1.8.8:
resolution: {integrity: sha512-qYJ5NjoTX+591/x09KgsDOPVDUJfU9GoS+6jszQQlLp1AHrf1wRFA3Yps8U+/HTG03q0M4qouOfOLtRQP4QypA==}
/turbo/1.9.1:
resolution: {integrity: sha512-Rqe8SP96e53y4Pk29kk2aZbA8EF11UtHJ3vzXJseadrc1T3V6UhzvAWwiKJL//x/jojyOoX1axnoxmX3UHbZ0g==}
hasBin: true
requiresBuild: true
optionalDependencies:
turbo-darwin-64: 1.8.8
turbo-darwin-arm64: 1.8.8
turbo-linux-64: 1.8.8
turbo-linux-arm64: 1.8.8
turbo-windows-64: 1.8.8
turbo-windows-arm64: 1.8.8
turbo-darwin-64: 1.9.1
turbo-darwin-arm64: 1.9.1
turbo-linux-64: 1.9.1
turbo-linux-arm64: 1.9.1
turbo-windows-64: 1.9.1
turbo-windows-arm64: 1.9.1
dev: true
/type-check/0.4.0:
@@ -6633,6 +6731,19 @@ packages:
/wrappy/1.0.2:
resolution: {integrity: sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ==}
/ws/8.13.0:
resolution: {integrity: sha512-x9vcZYTrFPC7aSIbj7sRCYo7L/Xb8Iy+pW0ng0wt2vCJv7M9HOMy0UoN3rr+IFC7hb7vXoqS+P9ktyLLLhO+LA==}
engines: {node: '>=10.0.0'}
peerDependencies:
bufferutil: ^4.0.1
utf-8-validate: '>=5.0.2'
peerDependenciesMeta:
bufferutil:
optional: true
utf-8-validate:
optional: true
dev: false
/xtend/4.0.2:
resolution: {integrity: sha512-LKYU1iAXJXUgAXn9URjiu+MWhyUXHsvfp7mcuYm9dSUKK0/CjtrUwFAxD82/mCWbtLsGjFIad0wIsod4zrTAEQ==}
engines: {node: '>=0.4'}