New team page (#229)
* Wrote blog * feat: implement new team page * refactor: reusable link comp * chore: update images * perf: compress images * refactor: update link * refactor: update icons, remove white border in favor or rounded corners, add investors * changes to roles * team changes * refactor: add a few changes * style: slightly better styling * update team images paths * use proper image element * update haris to match team style + keep constant * improve team member styling * use vite import pattern * team tweaks * fix brendan crop * fix text and gradient color to match brand colors * engineer not developer!!! * add annoucement banner since this can not be merged until post annoucement anyway * fade in stuff * better copy * better haris.jpg * style: slight update to styling * Update apps/landing/src/pages/team.tsx * update my image * chore: remove unused log * Update team.tsx * use incorp'd name everywhere * update team credits * hoist headings in credits * consistent marketing copy in cargo * fix types * style tweaks * blog updates * blog title tweaks * fix demo * jj said lets round it up Co-authored-by: Lu Hill <email@lewie.me> Co-authored-by: Jamie Pine <ijamespine@me.com> Co-authored-by: maxichrome <maxichrome@users.noreply.github.com> Co-authored-by: xPolar <50601857+xPolar@users.noreply.github.com>
|
@ -60,7 +60,7 @@ representative at an online or offline event.
|
|||
|
||||
Instances of abusive, harassing, or otherwise unacceptable behavior may be
|
||||
reported to the community leaders responsible for enforcement at
|
||||
[hello@jamiepine.com](mailto:hello@jamiepine.com).
|
||||
[jamie@spacedrive.com](mailto:jamie@spacedrive.com).
|
||||
All complaints will be reviewed and investigated promptly and fairly.
|
||||
|
||||
All community leaders are obligated to respect the privacy and security of the
|
||||
|
|
2
LICENSE
|
@ -1,4 +1,4 @@
|
|||
Copyright (c) 2021-present Jamie Pine.
|
||||
Copyright (c) 2021-present Spacedrive Technology Inc.
|
||||
|
||||
GNU GENERAL PUBLIC LICENSE
|
||||
Version 3, 29 June 2007
|
||||
|
|
|
@ -1,8 +1,8 @@
|
|||
[package]
|
||||
name = "spacedrive"
|
||||
version = "0.1.0"
|
||||
description = "The next gen private virtual filesystem."
|
||||
authors = ["Jamie Pine"]
|
||||
description = "The universal file manager."
|
||||
authors = ["Spacedrive Technology Inc."]
|
||||
license = ""
|
||||
repository = "https://github.com/spacedriveapp/spacedrive"
|
||||
default-run = "spacedrive"
|
||||
|
|
|
@ -24,9 +24,9 @@
|
|||
],
|
||||
"resources": [],
|
||||
"externalBin": [],
|
||||
"copyright": "Jamie Pine",
|
||||
"shortDescription": "The Universal File Explorer",
|
||||
"longDescription": "A cross-platform file explorer, powered by an open source virtual distributed filesystem.",
|
||||
"copyright": "Spacedrive Technology Inc.",
|
||||
"shortDescription": "The universal file manager.",
|
||||
"longDescription": "A cross-platform universal file explorer, powered by an open-source virtual distributed filesystem.",
|
||||
"deb": {
|
||||
"depends": []
|
||||
},
|
||||
|
|
|
@ -17,9 +17,9 @@
|
|||
"icon": ["icons/icon.icns"],
|
||||
"resources": [],
|
||||
"externalBin": [],
|
||||
"copyright": "Jamie Pine",
|
||||
"shortDescription": "Your personal virtual cloud.",
|
||||
"longDescription": "Spacedrive is an open source virtual filesystem, a personal cloud powered by your everyday devices. Feature-rich benefits of the cloud, only its owned and hosted by you with security, privacy and ownership as a foundation. Spacedrive makes it possible to create a limitless directory of your digital life that will stand the test of time.",
|
||||
"copyright": "Spacedrive Technology Inc.",
|
||||
"shortDescription": "The universal file manager.",
|
||||
"longDescription": "A cross-platform universal file explorer, powered by an open-source virtual distributed filesystem.",
|
||||
"deb": {
|
||||
"depends": []
|
||||
},
|
||||
|
|
3
apps/landing/.gitignore
vendored
|
@ -22,3 +22,6 @@ dist-ssr
|
|||
*.njsproj
|
||||
*.sln
|
||||
*.sw?
|
||||
|
||||
# Env
|
||||
.env
|
|
@ -18,7 +18,7 @@
|
|||
name="keywords"
|
||||
content="files,file manager,spacedrive,file explorer,vdfs,distributed filesystem,cas,content addressable storage,virtual filesystem,photos app, video organizer,video encoder,tags,tag based filesystem"
|
||||
/>
|
||||
<meta name="author" content="Jamie Pine" />
|
||||
<meta name="author" content="Spacedrive Technology Inc." />
|
||||
<meta name="robots" content="index, follow" />
|
||||
</head>
|
||||
<body>
|
||||
|
|
|
@ -17,6 +17,7 @@
|
|||
"@sd/interface": "workspace:*",
|
||||
"@sd/ui": "workspace:*",
|
||||
"@tailwindcss/typography": "^0.5.2",
|
||||
"@tryghost/content-api": "^1.11.0",
|
||||
"@types/compression": "^1.7.2",
|
||||
"@types/express": "^4.17.13",
|
||||
"clsx": "^1.1.1",
|
||||
|
@ -37,12 +38,14 @@
|
|||
},
|
||||
"devDependencies": {
|
||||
"@babel/preset-react": "^7.17.12",
|
||||
"@tailwindcss/line-clamp": "^0.4.0",
|
||||
"@types/lodash": "^4.14.182",
|
||||
"@types/node": "^17.0.36",
|
||||
"@types/prismjs": "^1.26.0",
|
||||
"@types/react": "^18.0.9",
|
||||
"@types/react-dom": "^18.0.5",
|
||||
"@types/react-helmet": "^6.1.5",
|
||||
"@types/tryghost__content-api": "^1.3.10",
|
||||
"@vitejs/plugin-react": "^1.3.2",
|
||||
"autoprefixer": "^10.4.7",
|
||||
"nodemon": "^2.0.16",
|
||||
|
|
BIN
apps/landing/src/assets/images/investors/TOM.jpg
Normal file
After Width: | Height: | Size: 139 KiB |
BIN
apps/landing/src/assets/images/investors/augusto.jpg
Normal file
After Width: | Height: | Size: 150 KiB |
BIN
apps/landing/src/assets/images/investors/austen.jpg
Normal file
After Width: | Height: | Size: 1.9 MiB |
BIN
apps/landing/src/assets/images/investors/davidmytton.jpg
Normal file
After Width: | Height: | Size: 224 KiB |
BIN
apps/landing/src/assets/images/investors/guillermo.jpg
Normal file
After Width: | Height: | Size: 133 KiB |
BIN
apps/landing/src/assets/images/investors/haoyuan.jpg
Normal file
After Width: | Height: | Size: 112 KiB |
BIN
apps/landing/src/assets/images/investors/josephjacks.jpg
Normal file
After Width: | Height: | Size: 129 KiB |
BIN
apps/landing/src/assets/images/investors/justinhoffman.jpg
Normal file
After Width: | Height: | Size: 91 KiB |
BIN
apps/landing/src/assets/images/investors/lesterlee.jpg
Normal file
After Width: | Height: | Size: 128 KiB |
BIN
apps/landing/src/assets/images/investors/naval.jpg
Normal file
After Width: | Height: | Size: 39 KiB |
BIN
apps/landing/src/assets/images/investors/naveen.jpg
Normal file
After Width: | Height: | Size: 100 KiB |
BIN
apps/landing/src/assets/images/investors/neha.jpg
Normal file
After Width: | Height: | Size: 111 KiB |
BIN
apps/landing/src/assets/images/investors/peer.jpg
Normal file
After Width: | Height: | Size: 129 KiB |
BIN
apps/landing/src/assets/images/investors/rywalker.jpg
Normal file
After Width: | Height: | Size: 121 KiB |
BIN
apps/landing/src/assets/images/investors/sanjay.jpg
Normal file
After Width: | Height: | Size: 170 KiB |
BIN
apps/landing/src/assets/images/investors/sharma.jpg
Normal file
After Width: | Height: | Size: 161 KiB |
BIN
apps/landing/src/assets/images/investors/tobiaslutke.jpg
Normal file
After Width: | Height: | Size: 137 KiB |
BIN
apps/landing/src/assets/images/investors/zacharysmith.jpg
Normal file
After Width: | Height: | Size: 147 KiB |
BIN
apps/landing/src/assets/images/team/benja.jpg
Normal file
After Width: | Height: | Size: 196 KiB |
BIN
apps/landing/src/assets/images/team/brendan.jpg
Normal file
After Width: | Height: | Size: 211 KiB |
BIN
apps/landing/src/assets/images/team/haden.jpg
Normal file
After Width: | Height: | Size: 299 KiB |
BIN
apps/landing/src/assets/images/team/haris.jpg
Normal file
After Width: | Height: | Size: 497 KiB |
BIN
apps/landing/src/assets/images/team/jamie.jpg
Normal file
After Width: | Height: | Size: 150 KiB |
BIN
apps/landing/src/assets/images/team/oscar.jpg
Normal file
After Width: | Height: | Size: 160 KiB |
21
apps/landing/src/components/BlogTag.tsx
Normal file
|
@ -0,0 +1,21 @@
|
|||
import { Tag } from '@tryghost/content-api';
|
||||
import clsx from 'clsx';
|
||||
import React from 'react';
|
||||
|
||||
export interface BlogTagProps {
|
||||
tag: Tag;
|
||||
}
|
||||
|
||||
export const BlogTag = (props: BlogTagProps) => {
|
||||
return (
|
||||
<span
|
||||
className={`px-2 py-0.5 rounded-md text-gray-500 text-sm bg-gray-550`}
|
||||
style={{
|
||||
backgroundColor: props.tag.accent_color + '' ?? '',
|
||||
color: parseInt(props.tag.accent_color?.slice(1) ?? '', 16) > 0xffffff / 2 ? '#000' : '#fff'
|
||||
}}
|
||||
>
|
||||
{props.tag.name}
|
||||
</span>
|
||||
);
|
||||
};
|
|
@ -26,7 +26,7 @@ export function Footer() {
|
|||
<AppLogo className="w-10 h-10 mb-5" />
|
||||
|
||||
<h3 className="mb-1 text-xl font-bold">Spacedrive</h3>
|
||||
<p className="text-sm text-gray-350">© Copyright 2022 Jamie Pine</p>
|
||||
<p className="text-sm text-gray-350">© Copyright 2022 Spacedrive Technology Inc.</p>
|
||||
<div className="flex flex-row mt-6 mb-10 space-x-3">
|
||||
<FooterLink link="https://twitter.com/spacedriveapp">
|
||||
<Twitter />
|
||||
|
@ -58,7 +58,7 @@ export function Footer() {
|
|||
Mission
|
||||
</FooterLink>
|
||||
<FooterLink link="/changelog">Changelog</FooterLink>
|
||||
<FooterLink link="https://blog.spacedrive.com">Blog</FooterLink>
|
||||
<FooterLink link="/blog">Blog</FooterLink>
|
||||
</div>
|
||||
<div className="flex flex-col col-span-1 space-y-2 pointer-events-none">
|
||||
<h3 className="mb-1 text-xs font-bold uppercase">Downloads</h3>
|
||||
|
|
|
@ -13,7 +13,7 @@ function MarkdownPage(props: MarkdownPageProps) {
|
|||
Prism.highlightAll();
|
||||
}, []);
|
||||
return (
|
||||
<div className="container max-w-4xl p-4 mt-32 mb-20">
|
||||
<div className="sm:container max-w-4xl p-4 mt-32 mb-20">
|
||||
<article id="content" className="m-auto prose lg:prose-xs dark:prose-invert">
|
||||
{props.children}
|
||||
</article>
|
||||
|
|
|
@ -9,7 +9,7 @@ import {
|
|||
import { Discord, Github } from '@icons-pack/react-simple-icons';
|
||||
import { Button, Dropdown } from '@sd/ui';
|
||||
import clsx from 'clsx';
|
||||
import { Link, List, MapPin, Question } from 'phosphor-react';
|
||||
import { BookmarkSimple, Link, List, MapPin } from 'phosphor-react';
|
||||
import React, { useEffect, useState } from 'react';
|
||||
|
||||
import { ReactComponent as AppLogo } from '../assets/app-logo.svg';
|
||||
|
@ -48,7 +48,7 @@ export default function NavBar() {
|
|||
: 'border-gray-550 bg-gray-750 bg-opacity-80 backdrop-blur'
|
||||
)}
|
||||
>
|
||||
<div className="container relative flex items-center h-full px-5 m-auto">
|
||||
<div className="relative flex items-center h-full px-5 m-auto sm:container">
|
||||
<a href="/" className="absolute flex flex-row items-center">
|
||||
<AppLogo className="z-30 w-8 h-8 mr-3" />
|
||||
<h3 className="text-xl font-bold text-white">
|
||||
|
@ -61,9 +61,8 @@ export default function NavBar() {
|
|||
<NavLink link="/roadmap">Roadmap</NavLink>
|
||||
<NavLink link="/faq">FAQ</NavLink>
|
||||
<NavLink link="/team">Team</NavLink>
|
||||
<NavLink link="https://spacedrive.hashnode.dev">Blog</NavLink>
|
||||
{/* <NavLink link="/change-log">Changelog</NavLink>
|
||||
<NavLink link="/privacy">Privacy</NavLink> */}
|
||||
<NavLink link="/blog">Blog</NavLink>
|
||||
{/* <NavLink link="/jobs">Jobs</NavLink> */}
|
||||
</div>
|
||||
<Dropdown
|
||||
className="absolute block h-6 w-44 top-2 right-4 lg:hidden"
|
||||
|
@ -82,6 +81,12 @@ export default function NavBar() {
|
|||
}
|
||||
],
|
||||
[
|
||||
{
|
||||
name: 'Blog',
|
||||
icon: BookmarkSimple,
|
||||
onPress: () => (window.location.href = '/blog'),
|
||||
selected: window.location.href.includes('/blog')
|
||||
},
|
||||
{
|
||||
name: 'Roadmap',
|
||||
icon: MapIcon,
|
||||
|
|
93
apps/landing/src/components/TeamMember.tsx
Normal file
|
@ -0,0 +1,93 @@
|
|||
import { Github, Twitch, Twitter } from '@icons-pack/react-simple-icons';
|
||||
import clsx from 'clsx';
|
||||
import React from 'react';
|
||||
|
||||
export interface TeamMemberProps {
|
||||
// Name of team member
|
||||
name: string;
|
||||
|
||||
// Member's role
|
||||
role: string;
|
||||
|
||||
// Member's avatar
|
||||
image: string;
|
||||
|
||||
// Socials
|
||||
socials?: {
|
||||
twitter?: string;
|
||||
twitch?: string;
|
||||
github?: string;
|
||||
};
|
||||
|
||||
// Which round an investor joined at
|
||||
investmentRound?: string;
|
||||
}
|
||||
|
||||
interface LinkProps {
|
||||
// Elements inside anchor tag
|
||||
children: React.ReactNode;
|
||||
|
||||
// Anchor href
|
||||
href: string;
|
||||
}
|
||||
|
||||
function Link(props: LinkProps) {
|
||||
return (
|
||||
<a
|
||||
className="duration-300 hover:scale-105 hover:opacity-80"
|
||||
href={props.href}
|
||||
rel="noreferer"
|
||||
target="_blank"
|
||||
>
|
||||
{props.children}
|
||||
</a>
|
||||
);
|
||||
}
|
||||
|
||||
export function TeamMember(props: TeamMemberProps) {
|
||||
const size = props.investmentRound ? 144 : 111;
|
||||
|
||||
return (
|
||||
<div className="flex flex-col">
|
||||
<img
|
||||
src={new URL(`../assets/images/${props.image}`, import.meta.url).href}
|
||||
role="img"
|
||||
alt={`Portrait of ${props.name}`}
|
||||
width={size}
|
||||
height={size}
|
||||
className={clsx('inline-flex m-0 rounded-md', {
|
||||
'w-32 h-32 !xs:w-36 !xs:h-36 !sm:w-40 !sm:h-40': !props.investmentRound,
|
||||
'lg:w-28 lg:h-28': props.investmentRound
|
||||
})}
|
||||
/>
|
||||
<h3 className="mt-4 mb-0 text-base">{props.name}</h3>
|
||||
<p
|
||||
className={clsx('text-xs', {
|
||||
'mb-0': props.investmentRound
|
||||
})}
|
||||
>
|
||||
{props.role}
|
||||
</p>
|
||||
{props.investmentRound && (
|
||||
<p className="mt-0 mb-0 text-sm font-semibold text-gray-450">{props.investmentRound}</p>
|
||||
)}
|
||||
<div className="flex flex-row mt-3 space-x-2">
|
||||
{props.socials?.twitter && (
|
||||
<Link href={props.socials.twitter}>
|
||||
<Twitter className="w-[20px] h-[20px]" />
|
||||
</Link>
|
||||
)}
|
||||
{props.socials?.github && (
|
||||
<Link href={props.socials.github}>
|
||||
<Github className="w-[20px] h-[20px]" />
|
||||
</Link>
|
||||
)}
|
||||
{props.socials?.twitch && (
|
||||
<Link href={props.socials.twitch}>
|
||||
<Twitch className="w-[20px] h-[20px]" />
|
||||
</Link>
|
||||
)}
|
||||
</div>
|
||||
</div>
|
||||
);
|
||||
}
|
|
@ -23,7 +23,7 @@ function App() {
|
|||
</Button>
|
||||
|
||||
<NavBar />
|
||||
<div className="container z-10 flex flex-col items-center px-4 mx-auto overflow-x-hidden sm:overflow-x-visible ">
|
||||
<div className="sm:container w-full z-10 flex flex-col items-center px-4 mx-auto overflow-x-hidden sm:overflow-x-visible ">
|
||||
{useRoutes(routes)}
|
||||
<Footer />
|
||||
</div>
|
||||
|
|
60
apps/landing/src/pages/blog/[slug].tsx
Normal file
|
@ -0,0 +1,60 @@
|
|||
import { PostOrPage, Tag } from '@tryghost/content-api';
|
||||
import Prism from 'prismjs';
|
||||
import 'prismjs/components/prism-rust';
|
||||
import React, { useEffect, useState } from 'react';
|
||||
|
||||
import '../../atom-one.css';
|
||||
import { BlogTag } from '../../components/BlogTag';
|
||||
import { getPost } from './posts';
|
||||
|
||||
function MarkdownPage() {
|
||||
const [post, setPost] = useState<PostOrPage | null>(null);
|
||||
|
||||
useEffect(() => {
|
||||
const get = async () => {
|
||||
let slug = window.location.pathname.split('/blog/')[1];
|
||||
const post = await getPost(slug);
|
||||
setPost(post);
|
||||
};
|
||||
get();
|
||||
Prism.highlightAll();
|
||||
}, []);
|
||||
|
||||
return (
|
||||
<div className="container max-w-4xl p-4 m-auto mt-8 mb-20 prose lg:prose-xs dark:prose-invert">
|
||||
{post && (
|
||||
<>
|
||||
<figure>
|
||||
<figcaption
|
||||
dangerouslySetInnerHTML={{ __html: post.feature_image_caption as any }}
|
||||
></figcaption>
|
||||
<img src={post?.feature_image as string} alt="" className="rounded-xl" />
|
||||
</figure>
|
||||
<section className="flex flex-wrap gap-4 px-8 -mx-8 rounded-xl">
|
||||
<div className="flex-grow">
|
||||
<h1 className="m-0 text-2xl leading-snug sm:leading-normal sm:text-4xl">
|
||||
{post?.title}
|
||||
</h1>
|
||||
<p className="m-0 mt-2">
|
||||
by <b>{post?.primary_author?.name}</b> ·{' '}
|
||||
{new Date(post?.published_at ?? '').toLocaleDateString()}
|
||||
</p>
|
||||
</div>
|
||||
<div className="flex flex-wrap gap-2">
|
||||
{post?.tags?.map((tag: Tag) => {
|
||||
return <BlogTag tag={tag} />;
|
||||
})}
|
||||
</div>
|
||||
</section>
|
||||
<article
|
||||
id="content"
|
||||
className="text-lg"
|
||||
dangerouslySetInnerHTML={{ __html: post.html as string }}
|
||||
></article>
|
||||
</>
|
||||
)}
|
||||
</div>
|
||||
);
|
||||
}
|
||||
|
||||
export default MarkdownPage;
|
67
apps/landing/src/pages/blog/index.tsx
Normal file
|
@ -0,0 +1,67 @@
|
|||
import { PostOrPage, PostsOrPages, Tag } from '@tryghost/content-api';
|
||||
import React, { useEffect, useState } from 'react';
|
||||
|
||||
import { BlogTag } from '../../components/BlogTag';
|
||||
import { blogEnabled, getPosts } from './posts';
|
||||
|
||||
function Page() {
|
||||
if (!blogEnabled) {
|
||||
window.location.href = '/';
|
||||
return <></>;
|
||||
}
|
||||
|
||||
const [posts, setPosts] = useState<PostsOrPages | never[]>([]);
|
||||
|
||||
useEffect(() => {
|
||||
const get = async () => {
|
||||
const posts: PostsOrPages | never[] = await getPosts();
|
||||
setPosts(posts);
|
||||
};
|
||||
get();
|
||||
}, []);
|
||||
|
||||
return (
|
||||
<div className="container flex flex-col max-w-4xl gap-20 p-4 m-auto mt-32 mb-20 prose lg:prose-xs dark:prose-invert">
|
||||
<section>
|
||||
<h1 className="m-0">Blog</h1>
|
||||
<p className="">Get the latest from Spacedrive.</p>
|
||||
</section>
|
||||
<section className="grid grid-cols-1 gap-4 sm:grid-cols-1 lg:grid-cols-1">
|
||||
{posts.map((post: PostOrPage) => {
|
||||
return (
|
||||
<div
|
||||
onClick={() => {
|
||||
window.location.href = `/blog/${post.slug}`;
|
||||
}}
|
||||
className="relative z-0 flex flex-col gap-2 mb-8 overflow-hidden transition-colors border border-gray-500 cursor-pointer rounded-xl"
|
||||
>
|
||||
{post.feature_image && (
|
||||
<img
|
||||
src={post.feature_image}
|
||||
alt=""
|
||||
className="inset-0 object-cover w-full m-0 h-96 -z-10 rounded-t-xl"
|
||||
/>
|
||||
)}
|
||||
<div className="p-8">
|
||||
<h2 className="m-0 text-4xl">{post.title}</h2>
|
||||
<small className="m-0">{post.reading_time} minute read.</small>
|
||||
<p className="my-2 line-clamp-3">{post.excerpt}</p>
|
||||
<p className="m-0 text-white">
|
||||
by {post.primary_author?.name} ·{' '}
|
||||
{new Date(post.published_at ?? '').toLocaleDateString()}
|
||||
</p>
|
||||
<div className="flex flex-wrap gap-2 mt-4">
|
||||
{post.tags?.map((tag: Tag) => {
|
||||
return <BlogTag tag={tag} />;
|
||||
})}
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
);
|
||||
})}
|
||||
</section>
|
||||
</div>
|
||||
);
|
||||
}
|
||||
|
||||
export default Page;
|
41
apps/landing/src/pages/blog/posts.ts
Normal file
|
@ -0,0 +1,41 @@
|
|||
import GhostContentAPI from '@tryghost/content-api';
|
||||
|
||||
// Ghost key is a public key
|
||||
const ghostKey = import.meta.env.VITE_CONTENT_API_KEY;
|
||||
const ghostURL = import.meta.env.VITE_API_URL;
|
||||
|
||||
export const blogEnabled = ghostURL && ghostKey;
|
||||
|
||||
export const api = blogEnabled
|
||||
? new GhostContentAPI({
|
||||
url: ghostURL,
|
||||
key: ghostKey,
|
||||
version: 'v4'
|
||||
})
|
||||
: null;
|
||||
|
||||
export async function getPosts() {
|
||||
if (!api) {
|
||||
return [];
|
||||
}
|
||||
const posts = await api.posts
|
||||
.browse({
|
||||
include: ['tags', 'authors']
|
||||
})
|
||||
.catch(() => []);
|
||||
return posts;
|
||||
}
|
||||
|
||||
export async function getPost(slug: string) {
|
||||
if (!api) {
|
||||
return null;
|
||||
}
|
||||
return await api.posts
|
||||
.read(
|
||||
{ slug },
|
||||
{
|
||||
include: ['tags', 'authors']
|
||||
}
|
||||
)
|
||||
.catch(() => null);
|
||||
}
|
|
@ -6,6 +6,7 @@ import { ReactComponent as Info } from '../../../../packages/interface/src/asset
|
|||
import AppEmbed from '../components/AppEmbed';
|
||||
import { Bubbles } from '../components/Bubbles';
|
||||
import HomeCTA from '../components/HomeCTA';
|
||||
import NewBanner from '../components/NewBanner';
|
||||
|
||||
interface SectionProps {
|
||||
orientation: 'left' | 'right';
|
||||
|
@ -78,18 +79,18 @@ function Page() {
|
|||
<>
|
||||
<div className="mt-22 lg:mt-28" id="content" aria-hidden="true" />
|
||||
<div className="mt-24 lg:mt-5" />
|
||||
{/* <NewBanner
|
||||
headline="Spacedrive raises $1.9M led by OSS Capital"
|
||||
href="https://spacedrive.hashnode.dev/spacedrive-funding-announcement"
|
||||
<NewBanner
|
||||
headline="Spacedrive raises $2M led by OSS Capital"
|
||||
href="https://spacedrive.com/blog/spacedrive-funding-announcement"
|
||||
link="Read post"
|
||||
/> */}
|
||||
/>
|
||||
{unsubscribedFromWaitlist && (
|
||||
<div
|
||||
className={
|
||||
'-mt-8 flex flex-row items-center bg-opacity-20 border-2 my-2 px-2 rounded-md bg-green-800 border-green-900'
|
||||
}
|
||||
>
|
||||
<Info className="fill-green-500 w-5 mr-1" />
|
||||
<Info className="w-5 mr-1 fill-green-500" />
|
||||
<p className={'text-sm text-green-500'}>You have been unsubscribed from the waitlist</p>
|
||||
</div>
|
||||
)}
|
||||
|
|
|
@ -1,8 +1,183 @@
|
|||
import React from 'react';
|
||||
import { Helmet } from 'react-helmet';
|
||||
import { ReactComponent as Content } from '~/docs/product/credits.md';
|
||||
|
||||
import { ReactComponent as ArrowRight } from '../../../../packages/interface/src/assets/svg/arrow-right.svg';
|
||||
import Markdown from '../components/Markdown';
|
||||
import { TeamMember, TeamMemberProps } from '../components/TeamMember';
|
||||
|
||||
const teamMembers: Array<TeamMemberProps> = [
|
||||
{
|
||||
name: 'Jamie Pine',
|
||||
role: 'Founder, Engineer & Designer',
|
||||
image: 'team/jamie.jpg',
|
||||
socials: {
|
||||
twitter: 'https://twitter.com/jamiepine',
|
||||
twitch: 'https://twitch.tv/jamiepinelive',
|
||||
github: 'https://github.com/jamiepine'
|
||||
}
|
||||
},
|
||||
{
|
||||
name: 'Brendan Allan',
|
||||
role: 'Rust Backend Engineer',
|
||||
image: 'team/brendan.jpg',
|
||||
socials: {
|
||||
twitter: 'https://twitter.com/brendonovichdev',
|
||||
twitch: 'https://twitch.tv/brendonovich',
|
||||
github: 'https://github.com/brendonovich'
|
||||
}
|
||||
},
|
||||
{
|
||||
name: 'Oscar Beaumont',
|
||||
role: 'Rust Backend Engineer',
|
||||
image: 'team/oscar.jpg',
|
||||
socials: {
|
||||
twitter: 'https://twitter.com/oscartbeaumont',
|
||||
twitch: 'https://twitch.tv/oscartbeaumont',
|
||||
github: 'https://github.com/oscartbeaumont'
|
||||
}
|
||||
},
|
||||
{
|
||||
name: 'Haden Fletcher',
|
||||
role: 'Engineer & Designer',
|
||||
image: 'team/haden.jpg',
|
||||
socials: {
|
||||
twitter: 'https://twitter.com/heymaxichrome',
|
||||
twitch: 'https://twitch.tv/maxichrome',
|
||||
github: 'https://github.com/maxichrome'
|
||||
}
|
||||
},
|
||||
{
|
||||
name: 'Benjamin Akar',
|
||||
role: 'Engineer & Designer',
|
||||
image: 'team/benja.jpg',
|
||||
socials: {
|
||||
twitter: 'https://twitter.com/benjaminakar',
|
||||
twitch: 'https://twitch.tv/akawr',
|
||||
github: 'https://github.com/benja'
|
||||
}
|
||||
},
|
||||
{
|
||||
name: 'Haris Mehrzad',
|
||||
role: 'Engineer Intern',
|
||||
image: 'team/haris.jpg',
|
||||
socials: {
|
||||
twitter: 'https://twitter.com/xPolarrr',
|
||||
twitch: 'https://twitch.tv/polar_dev',
|
||||
github: 'https://github.com/xPolar'
|
||||
}
|
||||
}
|
||||
];
|
||||
|
||||
const investors: Array<TeamMemberProps> = [
|
||||
{
|
||||
name: 'Joseph Jacks',
|
||||
role: 'Founder, OSSC',
|
||||
investmentRound: 'Lead Seed',
|
||||
image: 'investors/josephjacks.jpg'
|
||||
},
|
||||
{
|
||||
name: 'Guillermo Rauch',
|
||||
role: 'CEO, Vercel',
|
||||
investmentRound: 'Co-Lead Seed',
|
||||
image: 'investors/guillermo.jpg'
|
||||
},
|
||||
{
|
||||
name: 'Naval Ravikant',
|
||||
role: 'Founder, AngelList',
|
||||
investmentRound: 'Co-Lead Seed',
|
||||
image: 'investors/naval.jpg'
|
||||
},
|
||||
{
|
||||
name: 'Neha Narkhede',
|
||||
role: 'Confluent, Apache Kafka',
|
||||
investmentRound: 'Seed',
|
||||
image: 'investors/neha.jpg'
|
||||
},
|
||||
{
|
||||
name: 'Austen Allred',
|
||||
role: 'CEO, Bloom Institute of Technology',
|
||||
investmentRound: 'Seed',
|
||||
image: 'investors/austen.jpg'
|
||||
},
|
||||
{
|
||||
name: 'Tom Preston-Werner',
|
||||
role: 'Founder, GitHub',
|
||||
investmentRound: 'Seed',
|
||||
image: 'investors/TOM.jpg'
|
||||
},
|
||||
{
|
||||
name: 'Tobias Lütke',
|
||||
role: 'CEO, Shopify',
|
||||
investmentRound: 'Seed',
|
||||
image: 'investors/tobiaslutke.jpg'
|
||||
},
|
||||
{
|
||||
name: 'Justin Hoffman',
|
||||
role: 'Former VP Sales, Elasticsearch',
|
||||
investmentRound: 'Seed',
|
||||
image: 'investors/justinhoffman.jpg'
|
||||
},
|
||||
{
|
||||
name: 'Ry Walker',
|
||||
role: 'Founder, Astronomer',
|
||||
investmentRound: 'Seed',
|
||||
image: 'investors/rywalker.jpg'
|
||||
},
|
||||
{
|
||||
name: 'Zachary Smith',
|
||||
role: 'Head of Edge Infrastructure, Equinix',
|
||||
investmentRound: 'Seed',
|
||||
image: 'investors/zacharysmith.jpg'
|
||||
},
|
||||
{
|
||||
name: 'Sanjay Poonen',
|
||||
role: 'Former COO, VMware',
|
||||
investmentRound: 'Seed',
|
||||
image: 'investors/sanjay.jpg'
|
||||
},
|
||||
{
|
||||
name: 'David Mytton',
|
||||
role: 'CEO, console.dev',
|
||||
investmentRound: 'Seed',
|
||||
image: 'investors/davidmytton.jpg'
|
||||
},
|
||||
{
|
||||
name: 'Peer Richelsen',
|
||||
role: 'CEO, Cal.com',
|
||||
investmentRound: 'Seed',
|
||||
image: 'investors/peer.jpg'
|
||||
},
|
||||
{
|
||||
name: 'Lester Lee',
|
||||
role: 'Founder, Slapdash',
|
||||
investmentRound: 'Seed',
|
||||
image: 'investors/lesterlee.jpg'
|
||||
},
|
||||
{
|
||||
name: 'Haoyuan Li',
|
||||
role: 'Founder, Alluxio',
|
||||
investmentRound: 'Seed',
|
||||
image: 'investors/haoyuan.jpg'
|
||||
},
|
||||
{
|
||||
name: 'Augusto Marietti',
|
||||
role: 'CEO, Kong',
|
||||
investmentRound: 'Seed',
|
||||
image: 'investors/augusto.jpg'
|
||||
},
|
||||
{
|
||||
name: 'Vijay Sharma',
|
||||
role: 'CEO, Belong',
|
||||
investmentRound: 'Seed',
|
||||
image: 'investors/sharma.jpg'
|
||||
},
|
||||
{
|
||||
name: 'Naveen R',
|
||||
role: 'Founder, NocoDB',
|
||||
investmentRound: 'Seed',
|
||||
image: 'investors/naveen.jpg'
|
||||
}
|
||||
];
|
||||
|
||||
function Page() {
|
||||
return (
|
||||
|
@ -11,8 +186,66 @@ function Page() {
|
|||
<title>Our Team - Spacedrive</title>
|
||||
<meta name="description" content="Who's behind Spacedrive?" />
|
||||
</Helmet>
|
||||
<div className="team-page">
|
||||
<Content />
|
||||
<div className="relative team-page">
|
||||
<div
|
||||
className="absolute -top-60 -right-[400px] opacity-60 w-[1000px] h-[800px] fade-in"
|
||||
style={{
|
||||
background:
|
||||
'linear-gradient(180deg, rgba(180, 180, 180, 0.76) 0%, rgba(19, 4, 168, 0.41) 95.73%)',
|
||||
filter: 'blur(300px)',
|
||||
transform: 'rotate(56.81deg)'
|
||||
}}
|
||||
></div>
|
||||
<div className="relative z-10">
|
||||
<h1 className="text-5xl leading-snug fade-in-heading ">
|
||||
We believe file management should be <span className="title-gradient">universal</span>.
|
||||
</h1>
|
||||
<p className="text-gray-400 animation-delay-2 fade-in-heading ">
|
||||
Your priceless personal data shouldn't be stuck in a device ecosystem. It should be OS
|
||||
agnostic, permanent and owned by you.
|
||||
</p>
|
||||
<p className="text-gray-400 animation-delay-2 fade-in-heading ">
|
||||
The data we create daily is our legacy—that will long outlive us. Open source technology
|
||||
is the only way to ensure we retain absolute control over the files that define our
|
||||
lives, at unlimited scale.
|
||||
</p>
|
||||
<a
|
||||
href="/faq"
|
||||
className="flex flex-row items-center text-gray-400 duration-150 animation-delay-3 fade-in-heading hover:text-white text-underline underline-offset-4"
|
||||
>
|
||||
<ArrowRight className="mr-2" />
|
||||
Read more
|
||||
</a>
|
||||
<div className="fade-in-heading animation-delay-5">
|
||||
<h2 className="mt-10 text-2xl leading-relaxed sm:mt-20 ">Meet the team</h2>
|
||||
<div className="grid grid-cols-2 my-10 xs:grid-cols-3 sm:grid-cols-4 gap-x-5 gap-y-10">
|
||||
{teamMembers.map((member) => (
|
||||
<TeamMember key={member.name} {...member} />
|
||||
))}
|
||||
</div>
|
||||
<p className="text-sm text-gray-400">
|
||||
... and all the awesome{' '}
|
||||
<a
|
||||
href="https://github.com/spacedriveapp/spacedrive/graphs/contributors"
|
||||
target="_blank"
|
||||
rel="noreferer"
|
||||
className="duration-200 oss-credit-gradient hover:opacity-75"
|
||||
>
|
||||
open source contributors
|
||||
</a>{' '}
|
||||
on GitHub.
|
||||
</p>
|
||||
<h2 className="mt-10 mb-2 text-2xl leading-relaxed sm:mt-20 ">Our investors</h2>
|
||||
<p className="text-sm text-gray-400 ">
|
||||
We're backed by some of the greatest leaders in the technology industry.
|
||||
</p>
|
||||
<div className="grid grid-cols-3 my-10 sm:grid-cols-5 gap-x-5 gap-y-10">
|
||||
{investors.map((investor) => (
|
||||
<TeamMember key={investor.name + investor.investmentRound} {...investor} />
|
||||
))}
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</Markdown>
|
||||
);
|
||||
|
|
|
@ -7,6 +7,20 @@ html {
|
|||
}
|
||||
}
|
||||
|
||||
.title-gradient {
|
||||
background: linear-gradient(94.79deg, #e86aff 33.64%, #53afff 68.78%), #ffffff;
|
||||
-webkit-background-clip: text;
|
||||
-webkit-text-fill-color: transparent;
|
||||
background-clip: text;
|
||||
}
|
||||
|
||||
.oss-credit-gradient {
|
||||
background: linear-gradient(90.85deg, #ffffff 8.44%, #d1d1d1 21.35%);
|
||||
-webkit-background-clip: text;
|
||||
-webkit-text-fill-color: transparent;
|
||||
background-clip: text;
|
||||
}
|
||||
|
||||
.landing-img {
|
||||
background-image: url('/app.png');
|
||||
background-size: contain;
|
||||
|
@ -47,6 +61,12 @@ html {
|
|||
.animation-delay-3 {
|
||||
animation-delay: 700ms;
|
||||
}
|
||||
.animation-delay-4 {
|
||||
animation-delay: 1000ms;
|
||||
}
|
||||
.animation-delay-5 {
|
||||
animation-delay: 1200ms;
|
||||
}
|
||||
|
||||
@keyframes fadeInDown {
|
||||
from {
|
||||
|
|
|
@ -1,8 +1,8 @@
|
|||
[package]
|
||||
name = "sdcore"
|
||||
version = "0.1.0"
|
||||
description = "A virtual distributed filesystem."
|
||||
authors = ["Jamie Pine"]
|
||||
description = "Virtual distributed filesystem engine that powers Spacedrive."
|
||||
authors = ["Spacedrive Technology Inc."]
|
||||
license = "GNU GENERAL PUBLIC LICENSE"
|
||||
repository = "https://github.com/spacedriveapp/spacedrive"
|
||||
edition = "2021"
|
||||
|
|
|
@ -1,16 +1,16 @@
|
|||
## Spacedrive
|
||||
# Spacedrive
|
||||
|
||||
_© Copyright 2022-Present Jamie Pine_
|
||||
Copyright © 2022-present Spacedrive Technology Inc.
|
||||
|
||||
### Business contact
|
||||
## Business contact
|
||||
|
||||
hello@jamiepine.com
|
||||
jamie@spacedrive.com
|
||||
|
||||
### Developers
|
||||
## Developers
|
||||
|
||||
Jamie Pine, Brendonovich, Oscar Beaumont
|
||||
Jamie Pine, Brendan Allan, Oscar Beaumont, Haden Fletcher, Benjamin Akar, Haris Mehrzad, and all other contributors displayed below!
|
||||
|
||||
### Contributors
|
||||
## Contributors
|
||||
|
||||
<a href="https://github.com/spacedriveapp/spacedrive/graphs/contributors">
|
||||
<img
|
||||
|
|
4
packages/interface/src/assets/svg/arrow-right.svg
Normal file
|
@ -0,0 +1,4 @@
|
|||
<svg width="16" height="16" viewBox="0 0 16 16" fill="none" xmlns="http://www.w3.org/2000/svg">
|
||||
<path d="M2.5 8H13.5" stroke="#979BAE" stroke-linecap="round" stroke-linejoin="round"/>
|
||||
<path d="M9 3.5L13.5 8L9 12.5" stroke="#979BAE" stroke-linecap="round" stroke-linejoin="round"/>
|
||||
</svg>
|
After Width: | Height: | Size: 288 B |
|
@ -109,9 +109,12 @@ export const Sidebar: React.FC<SidebarProps> = (props) => {
|
|||
variant: 'gray'
|
||||
}}
|
||||
// buttonIcon={<Book weight="bold" className="w-4 h-4 mt-0.5 mr-1" />}
|
||||
buttonText={clientState?.node_name || 'Loading...'}
|
||||
buttonText={clientState?.node_name || 'My Library'}
|
||||
items={[
|
||||
[{ name: clientState?.node_name || '', selected: true }, { name: 'Private Library' }],
|
||||
[
|
||||
{ name: clientState?.node_name || 'My Library', selected: true },
|
||||
{ name: 'Private Library' }
|
||||
],
|
||||
[
|
||||
{ name: 'Library Settings', icon: CogIcon },
|
||||
{ name: 'Add Library', icon: PlusIcon },
|
||||
|
|
|
@ -206,19 +206,19 @@ export const OverviewScreen = () => {
|
|||
</div>
|
||||
</div>
|
||||
<div className="flex flex-col pb-4 space-y-4">
|
||||
{nodeState && (
|
||||
<Device
|
||||
name={nodeState?.node_name ?? 'This Device'}
|
||||
size="1.4TB"
|
||||
runningJob={{ amount: 65, task: 'Generating preview media' }}
|
||||
locations={[
|
||||
{ name: 'Pictures', folder: true },
|
||||
{ name: 'Downloads', folder: true },
|
||||
{ name: 'Minecraft', folder: true }
|
||||
]}
|
||||
type="laptop"
|
||||
/>
|
||||
)}
|
||||
<Device
|
||||
name={`James' MacBook Pro`}
|
||||
size="1TB"
|
||||
locations={[
|
||||
{ name: 'Documents', folder: true },
|
||||
{ name: 'Movies', folder: true },
|
||||
{ name: 'Downloads', folder: true },
|
||||
{ name: 'Minecraft', folder: true },
|
||||
{ name: 'Projects', folder: true },
|
||||
{ name: 'Notes', folder: true }
|
||||
]}
|
||||
type="desktop"
|
||||
/>
|
||||
<Device
|
||||
name={`James' iPhone 12`}
|
||||
size="47.7GB"
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
// const colors = require('tailwindcss/colors');
|
||||
// const plugin = require('tailwindcss/plugin');
|
||||
// const defaultTheme = require('tailwindcss/defaultTheme');
|
||||
const defaultTheme = require('tailwindcss/defaultTheme');
|
||||
|
||||
module.exports = function (app, options) {
|
||||
let config = {
|
||||
|
@ -11,6 +11,10 @@ module.exports = function (app, options) {
|
|||
darkMode: app == 'landing' ? 'class' : 'class',
|
||||
mode: 'jit',
|
||||
theme: {
|
||||
screens: {
|
||||
xs: '475px',
|
||||
...defaultTheme.screens
|
||||
},
|
||||
// fontFamily: {
|
||||
// sans: ['Inter', 'ui-sans-serif', 'system-ui'],
|
||||
// serif: ['Inter', 'ui-serif', 'Georgia'],
|
||||
|
@ -120,6 +124,7 @@ module.exports = function (app, options) {
|
|||
};
|
||||
if (app === 'landing') {
|
||||
config.plugins.push(require('@tailwindcss/typography'));
|
||||
config.plugins.push(require('@tailwindcss/line-clamp'));
|
||||
}
|
||||
return config;
|
||||
};
|
||||
|
|
147
pnpm-lock.yaml
|
@ -76,7 +76,9 @@ importers:
|
|||
'@sd/core': workspace:*
|
||||
'@sd/interface': workspace:*
|
||||
'@sd/ui': workspace:*
|
||||
'@tailwindcss/line-clamp': ^0.4.0
|
||||
'@tailwindcss/typography': ^0.5.2
|
||||
'@tryghost/content-api': ^1.11.0
|
||||
'@types/compression': ^1.7.2
|
||||
'@types/express': ^4.17.13
|
||||
'@types/lodash': ^4.14.182
|
||||
|
@ -85,6 +87,7 @@ importers:
|
|||
'@types/react': ^18.0.9
|
||||
'@types/react-dom': ^18.0.5
|
||||
'@types/react-helmet': ^6.1.5
|
||||
'@types/tryghost__content-api': ^1.3.10
|
||||
'@vitejs/plugin-react': ^1.3.2
|
||||
autoprefixer: ^10.4.7
|
||||
clsx: ^1.1.1
|
||||
|
@ -125,6 +128,7 @@ importers:
|
|||
'@sd/interface': link:../../packages/interface
|
||||
'@sd/ui': link:../../packages/ui
|
||||
'@tailwindcss/typography': 0.5.2
|
||||
'@tryghost/content-api': 1.11.0
|
||||
'@types/compression': 1.7.2
|
||||
'@types/express': 4.17.13
|
||||
clsx: 1.1.1
|
||||
|
@ -137,19 +141,21 @@ importers:
|
|||
react-device-detect: 2.2.2_ef5jwxihqo6n7gxfmzogljlgcm
|
||||
react-dom: 18.1.0_react@18.1.0
|
||||
react-helmet: 6.1.0_react@18.1.0
|
||||
react-hook-form: 7.31.3_react@18.1.0
|
||||
react-hook-form: 7.32.0_react@18.1.0
|
||||
react-router-dom: 6.3.0_ef5jwxihqo6n7gxfmzogljlgcm
|
||||
react-tsparticles: 2.0.6_react@18.1.0
|
||||
simple-icons: 7.0.0
|
||||
tsparticles: 2.0.6
|
||||
devDependencies:
|
||||
'@babel/preset-react': 7.17.12
|
||||
'@tailwindcss/line-clamp': 0.4.0
|
||||
'@types/lodash': 4.14.182
|
||||
'@types/node': 17.0.36
|
||||
'@types/prismjs': 1.26.0
|
||||
'@types/react': 18.0.9
|
||||
'@types/react-dom': 18.0.5
|
||||
'@types/react-helmet': 6.1.5
|
||||
'@types/tryghost__content-api': 1.3.10
|
||||
'@vitejs/plugin-react': 1.3.2
|
||||
autoprefixer: 10.4.7_postcss@8.4.14
|
||||
nodemon: 2.0.16
|
||||
|
@ -4835,6 +4841,12 @@ packages:
|
|||
defer-to-connect: 2.0.1
|
||||
dev: true
|
||||
|
||||
/@tailwindcss/line-clamp/0.4.0:
|
||||
resolution: {integrity: sha512-HQZo6gfx1D0+DU3nWlNLD5iA6Ef4JAXh0LeD8lOGrJwEDBwwJNKQza6WoXhhY1uQrxOuU8ROxV7CqiQV4CoiLw==}
|
||||
peerDependencies:
|
||||
tailwindcss: '>=2.0.0 || >=3.0.0 || >=3.0.0-alpha.1'
|
||||
dev: true
|
||||
|
||||
/@tailwindcss/typography/0.5.2:
|
||||
resolution: {integrity: sha512-coq8DBABRPFcVhVIk6IbKyyHUt7YTEC/C992tatFB+yEx5WGBQrCgsSFjxHUr8AWXphWckadVJbominEduYBqw==}
|
||||
peerDependencies:
|
||||
|
@ -4994,6 +5006,14 @@ packages:
|
|||
- supports-color
|
||||
dev: true
|
||||
|
||||
/@tryghost/content-api/1.11.0:
|
||||
resolution: {integrity: sha512-0JTlp5Ln4BfCJzCYuT2X3MC9ZupIkRtzZaHpf9KZw7O8uOsRnO9RwjItN+lwvkoLIesMzfgrZd/tBJ4BAzeBrg==}
|
||||
dependencies:
|
||||
axios: 0.27.2
|
||||
transitivePeerDependencies:
|
||||
- debug
|
||||
dev: false
|
||||
|
||||
/@tsconfig/node10/1.0.8:
|
||||
resolution: {integrity: sha512-6XFfSQmMgq0CFLY1MslA/CPUfhIL919M1rMsa5lP2P097N2Wd1sSX0tx1u4olM16fLNhtHZpRhedZJphNJqmZg==}
|
||||
dev: true
|
||||
|
@ -5383,6 +5403,10 @@ packages:
|
|||
resolution: {integrity: sha512-ipixuVrh2OdNmauvtT51o3d8z12p6LtFW9in7U79der/kwejjdNchQC5UMn5u/KxNoM7VHHOs/l8KS8uHxhODQ==}
|
||||
dev: true
|
||||
|
||||
/@types/tryghost__content-api/1.3.10:
|
||||
resolution: {integrity: sha512-aHEqp9IVTcVQKJwjWrUW0UzCkziUzJSIUF0E9IjPc5DIGakZHRPin2jh9SPuJfBXawlJmVVjJn71wyiRhha1Iw==}
|
||||
dev: true
|
||||
|
||||
/@types/uglify-js/3.13.2:
|
||||
resolution: {integrity: sha512-/xFrPIo+4zOeNGtVMbf9rUm0N+i4pDf1ynExomqtokIJmVzR3962lJ1UE+MmexMkA0cmN9oTzg5Xcbwge0Ij2Q==}
|
||||
dependencies:
|
||||
|
@ -6200,7 +6224,6 @@ packages:
|
|||
|
||||
/asynckit/0.4.0:
|
||||
resolution: {integrity: sha512-Oei9OH4tRh0YqU3GxhX79dM/mwVgvbZJaSNaRk+bshkj0S5cfHcgYakreBjrHwatXKbz+IoIdYLxrKim2MjW0Q==}
|
||||
dev: true
|
||||
|
||||
/at-least-node/1.0.0:
|
||||
resolution: {integrity: sha512-+q/t7Ekv1EDY2l6Gda6LLiX14rU9TV20Wa3ofeQmwPFZbOMo9DXrLbOjFaaclkXKWidIaopwAObQDqwWtGUjqg==}
|
||||
|
@ -6267,6 +6290,15 @@ packages:
|
|||
engines: {node: '>= 0.4'}
|
||||
dev: true
|
||||
|
||||
/axios/0.27.2:
|
||||
resolution: {integrity: sha512-t+yRIyySRTp/wua5xEr+z1q60QmLq8ABsS5O9Me1AsE5dfKqgnCFzwiCZZ/cGNd1lq4/7akDWMxdhVlucjmnOQ==}
|
||||
dependencies:
|
||||
follow-redirects: 1.15.1
|
||||
form-data: 4.0.0
|
||||
transitivePeerDependencies:
|
||||
- debug
|
||||
dev: false
|
||||
|
||||
/babel-loader/8.2.5_@babel+core@7.18.2:
|
||||
resolution: {integrity: sha512-OSiFfH89LrEMiWd4pLNqGz4CwJDtbs2ZVc+iGu2HrkRfPxId9F2anQj38IxWpmRfsUY0aBZYi1EFcd3mhtRMLQ==}
|
||||
engines: {node: '>= 8.9'}
|
||||
|
@ -6796,7 +6828,7 @@ packages:
|
|||
dev: true
|
||||
|
||||
/buffer-equal/0.0.1:
|
||||
resolution: {integrity: sha512-RgSV6InVQ9ODPdLWJ5UAqBqJBOg370Nz6ZQtRzpt6nUjc8v0St97uJ4PYC6NztqIScrAXafKM3mZPMygSe1ggA==}
|
||||
resolution: {integrity: sha1-kbx0sR6kBbyRa8aqkI+q+ltKrEs=}
|
||||
engines: {node: '>=0.4.0'}
|
||||
dev: true
|
||||
|
||||
|
@ -7346,7 +7378,6 @@ packages:
|
|||
engines: {node: '>= 0.8'}
|
||||
dependencies:
|
||||
delayed-stream: 1.0.0
|
||||
dev: true
|
||||
|
||||
/comma-separated-tokens/1.0.8:
|
||||
resolution: {integrity: sha512-GHuDRO12Sypu2cV70d1dkA2EUmXHgntrzbpvOB+Qy+49ypNfGgFQIC2fhhXbnyrJRynDCAARsT7Ou0M6hirpfw==}
|
||||
|
@ -8096,7 +8127,6 @@ packages:
|
|||
/delayed-stream/1.0.0:
|
||||
resolution: {integrity: sha512-ZySD7Nf91aLB0RxL4KGrKHBXl7Eds1DAmEdcoVawXnLD7SDhpNgtuII2aAkg7a7QS41jxPSZ17p4VdGnMHk3MQ==}
|
||||
engines: {node: '>=0.4.0'}
|
||||
dev: true
|
||||
|
||||
/delegates/1.0.0:
|
||||
resolution: {integrity: sha512-bd2L678uiWATM6m5Z1VzNCErI3jiGzt6HGY8OVICs40JQq/HALfbyNJmp0UDakEY4pMMaN0Ly5om/B1VI/+xfQ==}
|
||||
|
@ -9441,6 +9471,16 @@ packages:
|
|||
tslib: 1.14.1
|
||||
dev: true
|
||||
|
||||
/follow-redirects/1.15.1:
|
||||
resolution: {integrity: sha512-yLAMQs+k0b2m7cVxpS1VKJVvoz7SS9Td1zss3XRwXj+ZDH00RJgnuLx7E44wx02kQLrdM3aOOy+FpzS7+8OizA==}
|
||||
engines: {node: '>=4.0'}
|
||||
peerDependencies:
|
||||
debug: '*'
|
||||
peerDependenciesMeta:
|
||||
debug:
|
||||
optional: true
|
||||
dev: false
|
||||
|
||||
/for-each/0.3.3:
|
||||
resolution: {integrity: sha512-jqYfLp7mo9vIyQf8ykW2v7A+2N4QjeCeI5+Dz9XraiO1ign81wjiH7Fb9vSOWvQfNtmSa4H2RoQTrrXivdUZmw==}
|
||||
dependencies:
|
||||
|
@ -9562,6 +9602,15 @@ packages:
|
|||
mime-types: 2.1.35
|
||||
dev: true
|
||||
|
||||
/form-data/4.0.0:
|
||||
resolution: {integrity: sha512-ETEklSGi5t0QMZuiXoA/Q6vcnxcLQP5vdugSpuAyi6SVGi2clPPp+xgEhuMaHC+zGgn31Kd235W35f7Hykkaww==}
|
||||
engines: {node: '>= 6'}
|
||||
dependencies:
|
||||
asynckit: 0.4.0
|
||||
combined-stream: 1.0.8
|
||||
mime-types: 2.1.35
|
||||
dev: false
|
||||
|
||||
/format/0.2.2:
|
||||
resolution: {integrity: sha512-wzsgA6WOq+09wrU1tsJ09udeR/YZRaeArL9e1wPbFg3GG2yDnC2ldKpxs4xunpFF9DgqCqOIra3bc1HWrJ37Ww==}
|
||||
engines: {node: '>=0.4.x'}
|
||||
|
@ -9807,7 +9856,7 @@ packages:
|
|||
dev: true
|
||||
|
||||
/github-from-package/0.0.0:
|
||||
resolution: {integrity: sha512-SyHy3T1v2NUXn29OsWdxmK6RwHD+vkj3v8en8AOBZ1wBQ/hCAQ5bAQTD02kW4W9tUp/3Qh6J8r9EvntiyCmOOw==}
|
||||
resolution: {integrity: sha1-l/tdlr/eiXMxPyDoKI75oWf6ZM4=}
|
||||
dev: true
|
||||
|
||||
/github-slugger/1.4.0:
|
||||
|
@ -12650,7 +12699,7 @@ packages:
|
|||
engines: {node: '>= 0.8'}
|
||||
|
||||
/once/1.4.0:
|
||||
resolution: {integrity: sha1-WDsap3WWHUsROsF9nFC6753Xa9E=}
|
||||
resolution: {integrity: sha512-lNaJgI+2Q5URQBkccEKHTQOPaXdUxnZZElQTZY0MFUAuaEqe1E+Nyvgdz/aIyNi6Z9MzO5dv1H8n58/GELp3+w==}
|
||||
dependencies:
|
||||
wrappy: 1.0.2
|
||||
|
||||
|
@ -13077,7 +13126,7 @@ packages:
|
|||
dev: true
|
||||
|
||||
/path-is-absolute/1.0.1:
|
||||
resolution: {integrity: sha1-F0uSaHNVNP+8es5r9TpanhtcX18=}
|
||||
resolution: {integrity: sha512-AVbw3UJ2e9bq64vSaS9Am0fje1Pa8pbGqTTsmXfaIiMpnr5DlDhfJOuLj9Sf95ZPVDAUerDfEk88MPmPe7UCQg==}
|
||||
engines: {node: '>=0.10.0'}
|
||||
|
||||
/path-key/2.0.1:
|
||||
|
@ -13488,7 +13537,7 @@ packages:
|
|||
dev: true
|
||||
|
||||
/prepend-http/2.0.0:
|
||||
resolution: {integrity: sha1-6SQ0v6XqjBn0HN/UAddBo8gZ2Jc=}
|
||||
resolution: {integrity: sha512-ravE6m9Atw9Z/jjttRUZ+clIXogdghyZAuWJ3qEzjT+jI/dL1ifAqhZeC5VHzQp1MSt1+jxKkFNemj/iO7tVUA==}
|
||||
engines: {node: '>=4'}
|
||||
dev: true
|
||||
|
||||
|
@ -13957,8 +14006,8 @@ packages:
|
|||
react-side-effect: 2.1.1_react@18.1.0
|
||||
dev: false
|
||||
|
||||
/react-hook-form/7.31.3_react@18.1.0:
|
||||
resolution: {integrity: sha512-NVZdCWViIWXXXlQ3jxVQH0NuNfwPf8A/0KvuCxrM9qxtP1qYosfR2ZudarziFrVOC7eTUbWbm1T4OyYCwv9oSQ==}
|
||||
/react-hook-form/7.32.0_react@18.1.0:
|
||||
resolution: {integrity: sha512-AFUwl9MwVVnZZsFZW7Egc8PVyWem6c6/9FBq29Acsikm+8ecJCkqOn2Tl48GApFnXBgoBBEHC3zosjYvPfsGNg==}
|
||||
engines: {node: '>=12.22.0'}
|
||||
peerDependencies:
|
||||
react: ^16.8.0 || ^17 || ^18
|
||||
|
@ -14272,7 +14321,7 @@ packages:
|
|||
dev: true
|
||||
|
||||
/read-pkg-up/1.0.1:
|
||||
resolution: {integrity: sha1-nWPBMnbAZZGNV/ACpX9AobZD+wI=}
|
||||
resolution: {integrity: sha512-WD9MTlNtI55IwYUS27iHh9tK3YoIVhxis8yKhLpTqWtml739uXc9NWTpxoHkfZf3+DkCCsXox94/VWZniuZm6A==}
|
||||
engines: {node: '>=0.10.0'}
|
||||
dependencies:
|
||||
find-up: 1.1.2
|
||||
|
@ -14289,7 +14338,7 @@ packages:
|
|||
dev: true
|
||||
|
||||
/read-pkg/1.1.0:
|
||||
resolution: {integrity: sha1-9f+qXs0pyzHAR0vKfXVra7KePyg=}
|
||||
resolution: {integrity: sha512-7BGwRHqt4s/uVbuyoeejRn4YmFnYZiFl4AuaeXHlgZf3sONF0SOGlxs2Pw8g6hCKupo08RafIO5YXFNOKTfwsQ==}
|
||||
engines: {node: '>=0.10.0'}
|
||||
dependencies:
|
||||
load-json-file: 1.1.0
|
||||
|
@ -14363,7 +14412,7 @@ packages:
|
|||
picomatch: 2.3.1
|
||||
|
||||
/redent/1.0.0:
|
||||
resolution: {integrity: sha1-z5Fqsf1fHxbfsggi3W7H9zDCr94=}
|
||||
resolution: {integrity: sha512-qtW5hKzGQZqKoh6JNSD+4lfitfPKGz42e6QwiRmPM5mmKtR0N41AbJRYu0xJi7nhOJ4WDgRkKvAk6tw4WIwR4g==}
|
||||
engines: {node: '>=0.10.0'}
|
||||
dependencies:
|
||||
indent-string: 2.1.0
|
||||
|
@ -14568,7 +14617,7 @@ packages:
|
|||
dev: true
|
||||
|
||||
/repeating/2.0.1:
|
||||
resolution: {integrity: sha1-UhTFOpJtNVJwdSf7q0FdvAjQbdo=}
|
||||
resolution: {integrity: sha512-ZqtSMuVybkISo2OWvqvm7iHSWngvdaW3IpsT9/uP8v4gMi591LY6h35wdOfvQdWCKFWZWm2Y1Opp4kV7vQKT6A==}
|
||||
engines: {node: '>=0.10.0'}
|
||||
dependencies:
|
||||
is-finite: 1.1.0
|
||||
|
@ -14612,7 +14661,7 @@ packages:
|
|||
supports-preserve-symlinks-flag: 1.0.0
|
||||
|
||||
/responselike/1.0.2:
|
||||
resolution: {integrity: sha1-kYcg7ztjHFZCvgaPFa3lpG9Loec=}
|
||||
resolution: {integrity: sha512-/Fpe5guzJk1gPqdJLJR5u7eG/gNY4nImjbRDaVWVMRhne55TCmj2i9Q+54PBRfatRC8v/rIiv9BN0pMd9OV5EQ==}
|
||||
dependencies:
|
||||
lowercase-keys: 1.0.1
|
||||
dev: true
|
||||
|
@ -14870,7 +14919,7 @@ packages:
|
|||
dev: true
|
||||
|
||||
/semver-compare/1.0.0:
|
||||
resolution: {integrity: sha1-De4hahyUGrN+nvsXiPavxf9VN/w=}
|
||||
resolution: {integrity: sha512-YM3/ITh2MJ5MtzaM429anh+x2jiLVjqILF4m4oyQB18W7Ggea7BfqdH/wGMK7dDiMghv/6WG7znWMwUDzJiXow==}
|
||||
dev: true
|
||||
|
||||
/semver-diff/3.1.1:
|
||||
|
@ -14886,7 +14935,7 @@ packages:
|
|||
dev: true
|
||||
|
||||
/semver-truncate/1.1.2:
|
||||
resolution: {integrity: sha1-V/Qd5pcHpicJp+AQS6IRcQnqR+g=}
|
||||
resolution: {integrity: sha512-V1fGg9i4CL3qesB6U0L6XAm4xOJiHmt4QAacazumuasc03BvtFGIMCduv01JWQ69Nv+JST9TqhSCiJoxoY031w==}
|
||||
engines: {node: '>=0.10.0'}
|
||||
dependencies:
|
||||
semver: 5.7.1
|
||||
|
@ -15073,7 +15122,7 @@ packages:
|
|||
dev: true
|
||||
|
||||
/shebang-command/1.2.0:
|
||||
resolution: {integrity: sha1-RKrGW2lbAzmJaMOfNj/uXer98eo=}
|
||||
resolution: {integrity: sha512-EV3L1+UQWGor21OmnvojK36mhg+TyIKDh3iFBKBohr5xeXIhNBcx8oWdgkTEEQ+BEFFYdLRuqMfd5L84N1V5Vg==}
|
||||
engines: {node: '>=0.10.0'}
|
||||
dependencies:
|
||||
shebang-regex: 1.0.0
|
||||
|
@ -15087,7 +15136,7 @@ packages:
|
|||
dev: true
|
||||
|
||||
/shebang-regex/1.0.0:
|
||||
resolution: {integrity: sha1-2kL0l0DAtC2yypcoVxyxkMmO/qM=}
|
||||
resolution: {integrity: sha512-wpoSFAxys6b2a2wHZ1XpDSgD7N9iVjg29Ph9uV/uaP9Ex/KXlkTZTeddxDPSYQpgvzKLGJke2UU0AzoGCjNIvQ==}
|
||||
engines: {node: '>=0.10.0'}
|
||||
dev: true
|
||||
|
||||
|
@ -15129,7 +15178,7 @@ packages:
|
|||
dev: false
|
||||
|
||||
/simple-swizzle/0.2.2:
|
||||
resolution: {integrity: sha1-pNprY1/8zMoz9w0Xy5JZLeleVXo=}
|
||||
resolution: {integrity: sha512-JA//kQgZtbuY83m+xT+tXJkmJncGMTFT+C+g2h2R9uxkYIrE2yy9sgmcLhCnw57/WSD+Eh3J97FPEDFnbXnDUg==}
|
||||
dependencies:
|
||||
is-arrayish: 0.3.2
|
||||
dev: true
|
||||
|
@ -15186,21 +15235,21 @@ packages:
|
|||
dev: true
|
||||
|
||||
/sort-keys-length/1.0.1:
|
||||
resolution: {integrity: sha1-nLb09OnkgVWmqgZx7dM2/xR5oYg=}
|
||||
resolution: {integrity: sha512-GRbEOUqCxemTAk/b32F2xa8wDTs+Z1QHOkbhJDQTvv/6G3ZkbJ+frYWsTcc7cBB3Fu4wy4XlLCuNtJuMn7Gsvw==}
|
||||
engines: {node: '>=0.10.0'}
|
||||
dependencies:
|
||||
sort-keys: 1.1.2
|
||||
dev: true
|
||||
|
||||
/sort-keys/1.1.2:
|
||||
resolution: {integrity: sha1-RBttTTRnmPG05J6JIK37oOVD+a0=}
|
||||
resolution: {integrity: sha512-vzn8aSqKgytVik0iwdBEi+zevbTYZogewTUM6dtpmGwEcdzbub/TX4bCzRhebDCRC3QzXgJsLRKB2V/Oof7HXg==}
|
||||
engines: {node: '>=0.10.0'}
|
||||
dependencies:
|
||||
is-plain-obj: 1.1.0
|
||||
dev: true
|
||||
|
||||
/sort-keys/2.0.0:
|
||||
resolution: {integrity: sha1-ZYU1WEhh7JfXMNbPQYIuH1ZoQSg=}
|
||||
resolution: {integrity: sha512-/dPCrG1s3ePpWm6yBbxZq5Be1dXGLyLn9Z791chDC3NFrpkVbWGzkBwPN1knaciexFXgRJ7hzdnwZ4stHSDmjg==}
|
||||
engines: {node: '>=4'}
|
||||
dependencies:
|
||||
is-plain-obj: 1.1.0
|
||||
|
@ -15311,7 +15360,7 @@ packages:
|
|||
dev: true
|
||||
|
||||
/squeak/1.3.0:
|
||||
resolution: {integrity: sha1-MwRQN7ZDiLVnZ0uEMiplIQc5FsM=}
|
||||
resolution: {integrity: sha512-YQL1ulInM+ev8nXX7vfXsCsDh6IqXlrremc1hzi77776BtpWgYJUMto3UM05GSAaGzJgWekszjoKDrVNB5XG+A==}
|
||||
engines: {node: '>=0.10.0'}
|
||||
dependencies:
|
||||
chalk: 1.1.3
|
||||
|
@ -15429,12 +15478,12 @@ packages:
|
|||
dev: true
|
||||
|
||||
/strict-uri-encode/1.1.0:
|
||||
resolution: {integrity: sha1-J5siXfHVgrH1TmWt3UNS4Y+qBxM=}
|
||||
resolution: {integrity: sha512-R3f198pcvnB+5IpnBlRkphuE9n46WyVl8I39W/ZUTZLz4nqSP/oLYUrcnJrw462Ds8he4YKMov2efsTIw1BDGQ==}
|
||||
engines: {node: '>=0.10.0'}
|
||||
dev: true
|
||||
|
||||
/string-width/1.0.2:
|
||||
resolution: {integrity: sha1-EYvfW4zcUaKn5w0hHgfisLmxB9M=}
|
||||
resolution: {integrity: sha512-0XsVpQLnVCXHJfyEs8tC0zpTVIr5PKKsQtkT29IwupnPTjtPmQ3xT/4yCREF9hYkV/3M3kzcUTSAZT6a6h81tw==}
|
||||
engines: {node: '>=0.10.0'}
|
||||
dependencies:
|
||||
code-point-at: 1.1.0
|
||||
|
@ -15524,7 +15573,7 @@ packages:
|
|||
dev: true
|
||||
|
||||
/strip-ansi/3.0.1:
|
||||
resolution: {integrity: sha1-ajhfuIU9lS1f8F0Oiq+UJ43GPc8=}
|
||||
resolution: {integrity: sha512-VhumSSbBqDTP8p2ZLKj40UjBCV4+v8bUSEpUb4KjRgWk9pbqGF4REFj6KEagidb2f/M6AzC0EmFyDNGaw9OCzg==}
|
||||
engines: {node: '>=0.10.0'}
|
||||
dependencies:
|
||||
ansi-regex: 2.1.1
|
||||
|
@ -15543,7 +15592,7 @@ packages:
|
|||
dev: true
|
||||
|
||||
/strip-bom/2.0.0:
|
||||
resolution: {integrity: sha1-YhmoVhZSBJHzV4i9vxRHqZx+aw4=}
|
||||
resolution: {integrity: sha512-kwrX1y7czp1E69n2ajbG65mIo9dqvJ+8aBQXOGVxqwvNbsXdFM6Lq37dLAY3mknUwru8CfcCbfOLL/gMo+fi3g==}
|
||||
engines: {node: '>=0.10.0'}
|
||||
dependencies:
|
||||
is-utf8: 0.2.1
|
||||
|
@ -15561,7 +15610,7 @@ packages:
|
|||
dev: true
|
||||
|
||||
/strip-eof/1.0.0:
|
||||
resolution: {integrity: sha1-u0P/VZim6wXYm1n80SnJgzE2Br8=}
|
||||
resolution: {integrity: sha512-7FCwGGmx8mD5xQd3RPUvnSpUXHM3BWuzjtpD4TXsfcZ9EL4azvVVUscFYwD9nx8Kh+uCBC00XBtAykoMHwTh8Q==}
|
||||
engines: {node: '>=0.10.0'}
|
||||
dev: true
|
||||
|
||||
|
@ -15571,7 +15620,7 @@ packages:
|
|||
dev: true
|
||||
|
||||
/strip-indent/1.0.1:
|
||||
resolution: {integrity: sha1-DHlipq3vp7vUrDZkYKY4VSrhoKI=}
|
||||
resolution: {integrity: sha512-I5iQq6aFMM62fBEAIB/hXzwJD6EEZ0xEGCX2t7oXqaKPIRgt4WruAQ285BISgdkP+HLGWyeGmNJcpIwFeRYRUA==}
|
||||
engines: {node: '>=0.10.0'}
|
||||
hasBin: true
|
||||
dependencies:
|
||||
|
@ -15586,7 +15635,7 @@ packages:
|
|||
dev: true
|
||||
|
||||
/strip-json-comments/2.0.1:
|
||||
resolution: {integrity: sha1-PFMZQukIwml8DsNEhYwobHygpgo=}
|
||||
resolution: {integrity: sha512-4gB8na07fecVVkOI6Rs4e7T6NOTki5EmL7TUduTs6bu3EdnSycntVJ4re8kgZA+wx9IueI2Y11bfbgwtzuE0KQ==}
|
||||
engines: {node: '>=0.10.0'}
|
||||
dev: true
|
||||
|
||||
|
@ -15651,7 +15700,7 @@ packages:
|
|||
dev: true
|
||||
|
||||
/supports-color/2.0.0:
|
||||
resolution: {integrity: sha1-U10EXOa2Nj+kARcIRimZXp3zJMc=}
|
||||
resolution: {integrity: sha512-KKNVtd6pCYgPIKU4cp2733HWYCpplQhddZLBUryaAHou723x+FRzQ5Df824Fj+IyyuiQTRoub4SnIFfIcrp70g==}
|
||||
engines: {node: '>=0.8.0'}
|
||||
dev: true
|
||||
|
||||
|
@ -15837,12 +15886,12 @@ packages:
|
|||
dev: true
|
||||
|
||||
/temp-dir/1.0.0:
|
||||
resolution: {integrity: sha1-CnwOom06Oa+n4OvqnB/AvE2qAR0=}
|
||||
resolution: {integrity: sha512-xZFXEGbG7SNC3itwBzI3RYjq/cEhBkx2hJuKGIUOcEULmkQExXiHat2z/qkISYsuR+IKumhEfKKbV5qXmhICFQ==}
|
||||
engines: {node: '>=4'}
|
||||
dev: true
|
||||
|
||||
/tempfile/2.0.0:
|
||||
resolution: {integrity: sha1-awRGhWqbERTRhW/8vlCczLCXcmU=}
|
||||
resolution: {integrity: sha512-ZOn6nJUgvgC09+doCEF3oB+r3ag7kUvlsXEGX069QRD60p+P3uP7XG9N2/at+EyIRGSN//ZY3LyEotA1YpmjuA==}
|
||||
engines: {node: '>=4'}
|
||||
dependencies:
|
||||
temp-dir: 1.0.0
|
||||
|
@ -15947,7 +15996,7 @@ packages:
|
|||
dev: false
|
||||
|
||||
/through/2.3.8:
|
||||
resolution: {integrity: sha1-DdTJ/6q8NXlgsbckEV1+Doai4fU=}
|
||||
resolution: {integrity: sha512-w89qg7PI8wAdvX60bMDP+bFoD5Dvhm9oLheFp5O4a2QF0cSBGsBX4qZmadPMvVqlLJBBci+WqGGOAPvcDeNSVg==}
|
||||
dev: true
|
||||
|
||||
/through2/2.0.5:
|
||||
|
@ -15958,7 +16007,7 @@ packages:
|
|||
dev: true
|
||||
|
||||
/timed-out/4.0.1:
|
||||
resolution: {integrity: sha1-8y6srFoXW+ol1/q1Zas+2HQe9W8=}
|
||||
resolution: {integrity: sha512-G7r3AhovYtr5YKOWQkta8RKAPb+J9IsO4uVmzjl8AZwfhs8UcUwTiD6gcJYSgOtzyjvQKrKYn41syHbUWMkafA==}
|
||||
engines: {node: '>=0.10.0'}
|
||||
dev: true
|
||||
|
||||
|
@ -16074,12 +16123,12 @@ packages:
|
|||
dev: true
|
||||
|
||||
/trim-newlines/1.0.0:
|
||||
resolution: {integrity: sha1-WIeWa7WCpFA6QetST301ARgVphM=}
|
||||
resolution: {integrity: sha512-Nm4cF79FhSTzrLKGDMi3I4utBtFv8qKy4sq1enftf2gMdpqI8oVQTAfySkTz5r49giVzDj88SVZXP4CeYQwjaw==}
|
||||
engines: {node: '>=0.10.0'}
|
||||
dev: true
|
||||
|
||||
/trim-repeated/1.0.0:
|
||||
resolution: {integrity: sha1-42RqLqTokTEr9+rObPsFOAvAHCE=}
|
||||
resolution: {integrity: sha512-pkonvlKk8/ZuR0D5tLW8ljt5I8kmxp2XKymhepUeOdCEfKpZaktSArkLHZt76OB1ZvO9bssUsDty4SWhLvZpLg==}
|
||||
engines: {node: '>=0.10.0'}
|
||||
dependencies:
|
||||
escape-string-regexp: 1.0.5
|
||||
|
@ -16454,7 +16503,7 @@ packages:
|
|||
dev: true
|
||||
|
||||
/tunnel-agent/0.6.0:
|
||||
resolution: {integrity: sha1-J6XeoGs2sEoKmWZ3SykIaPD8QP0=}
|
||||
resolution: {integrity: sha512-McnNiV1l8RYeY8tBgEpuodCC1mLUdbSN+CYBL7kJsJNInOP8UjDDEwdk6Mw60vdLLrr5NHKZhMAOSrR2NZuQ+w==}
|
||||
dependencies:
|
||||
safe-buffer: 5.2.1
|
||||
dev: true
|
||||
|
@ -16906,21 +16955,21 @@ packages:
|
|||
dev: true
|
||||
|
||||
/url-parse-lax/1.0.0:
|
||||
resolution: {integrity: sha1-evjzA2Rem9eaJy56FKxovAYJ2nM=}
|
||||
resolution: {integrity: sha512-BVA4lR5PIviy2PMseNd2jbFQ+jwSwQGdJejf5ctd1rEXt0Ypd7yanUK9+lYechVlN5VaTJGsu2U/3MDDu6KgBA==}
|
||||
engines: {node: '>=0.10.0'}
|
||||
dependencies:
|
||||
prepend-http: 1.0.4
|
||||
dev: true
|
||||
|
||||
/url-parse-lax/3.0.0:
|
||||
resolution: {integrity: sha1-FrXK/Afb42dsGxmZF3gj1lA6yww=}
|
||||
resolution: {integrity: sha512-NjFKA0DidqPa5ciFcSrXnAltTtzz84ogy+NebPvfEgAck0+TNg4UJ4IN+fB7zRZfbgUf0syOo9MDxFkDSMuFaQ==}
|
||||
engines: {node: '>=4'}
|
||||
dependencies:
|
||||
prepend-http: 2.0.0
|
||||
dev: true
|
||||
|
||||
/url-to-options/1.0.1:
|
||||
resolution: {integrity: sha1-FQWgOiiaSMvXpDTvuu7FBV9WM6k=}
|
||||
resolution: {integrity: sha512-0kQLIzG4fdk/G5NONku64rSH/x32NOA39LVQqlK8Le6lvTF6GGRJpqaQFGgU+CLwySIqBSMdwYM0sYcW9f6P4A==}
|
||||
engines: {node: '>= 4'}
|
||||
dev: true
|
||||
|
||||
|
@ -17213,7 +17262,7 @@ packages:
|
|||
vite: ^2.6.0
|
||||
dependencies:
|
||||
'@svgr/core': 6.2.1
|
||||
vite: 2.9.9_sass@1.52.1
|
||||
vite: 2.9.9
|
||||
transitivePeerDependencies:
|
||||
- supports-color
|
||||
dev: true
|
||||
|
@ -17319,7 +17368,7 @@ packages:
|
|||
dev: true
|
||||
|
||||
/wcwidth/1.0.1:
|
||||
resolution: {integrity: sha1-8LDc+RW8X/FSivrbLA4XtTLaL+g=}
|
||||
resolution: {integrity: sha512-XHPEwS0q6TaxcvG85+8EYkbiCux2XtWG2mkc47Ng2A77BQu9+DqIOJldST4HgPkuea7dvKSj5VgX3P1d4rW8Tg==}
|
||||
dependencies:
|
||||
defaults: 1.0.3
|
||||
dev: true
|
||||
|
@ -17598,7 +17647,7 @@ packages:
|
|||
dev: true
|
||||
|
||||
/wrappy/1.0.2:
|
||||
resolution: {integrity: sha1-tSQ9jz7BqjXxNkYFvA0QNuMKtp8=}
|
||||
resolution: {integrity: sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ==}
|
||||
|
||||
/write-file-atomic/3.0.3:
|
||||
resolution: {integrity: sha512-AvHcyZ5JnSfq3ioSyjrBkH9yW4m7Ayk8/9My/DD9onKeu/94fwrMocemO2QAJFAlnnDN+ZDS+ZjAR5ua1/PV/Q==}
|
||||
|
@ -17658,7 +17707,7 @@ packages:
|
|||
dev: true
|
||||
|
||||
/xml-parse-from-string/1.0.1:
|
||||
resolution: {integrity: sha1-qQKekp09vN7RafPG4oI42VpdWig=}
|
||||
resolution: {integrity: sha512-ErcKwJTF54uRzzNMXq2X5sMIy88zJvfN2DmdoQvy7PAFJ+tPRU6ydWuOKNMyfmOjdyBQTFREi60s0Y0SyI0G0g==}
|
||||
dev: true
|
||||
|
||||
/xml2js/0.4.23:
|
||||
|
@ -17688,7 +17737,7 @@ packages:
|
|||
dev: true
|
||||
|
||||
/yallist/2.1.2:
|
||||
resolution: {integrity: sha1-HBH5IY8HYImkfdUS+TxmmaaoHVI=}
|
||||
resolution: {integrity: sha512-ncTzHV7NvsQZkYe1DW7cbDLm0YpzHmZF5r/iyP3ZnQtMiJ+pjzisCiMNI+Sj+xQF5pXhSHxSB3uDbsBTzY/c2A==}
|
||||
dev: true
|
||||
|
||||
/yallist/3.1.1:
|
||||
|
@ -17745,7 +17794,7 @@ packages:
|
|||
dev: true
|
||||
|
||||
/yauzl/2.10.0:
|
||||
resolution: {integrity: sha1-x+sXyT4RLLEIb6bY5R+wZnt5pfk=}
|
||||
resolution: {integrity: sha512-p4a9I6X6nu6IhoGmBqAcbJy1mlC4j27vEPZX9F4L4/vZT3Lyq1VkFHw/V/PUcB9Buo+DG3iHkT0x3Qya58zc3g==}
|
||||
dependencies:
|
||||
buffer-crc32: 0.2.13
|
||||
fd-slicer: 1.1.0
|
||||
|
|