diff --git a/components/DeploymentEditor.tsx b/components/DeploymentEditor.tsx index e424cf7..53d6adf 100644 --- a/components/DeploymentEditor.tsx +++ b/components/DeploymentEditor.tsx @@ -1,113 +1,137 @@ -import ReactFlow, { - Controls, - MiniMap, - Background, -} from 'reactflow' import { shallow } from 'zustand/shallow' - -import { createStore, State } from 'state/store' - -import 'reactflow/dist/style.css' import { api_deployments } from '@prisma/client' import { useSupabaseClient } from '@supabase/auth-helpers-react' import { useEffect, useState } from 'react' +import { PlusIcon } from 'lucide-react' + +import { createStore, State } from 'state/store' + +import Button from './Button' +import Text from './typography/Text' const selector = (state: State) => ({ - nodes: state.nodes, - edges: state.edges, - onNodesChange: state.onNodesChange, - onEdgesChange: state.onEdgesChange, - onConnect: state.onConnect, + blocks: state.blocks, + addBlock: state.addBlock, + removeBlock: state.removeBlock, + changeBlock: state.changeBlock, }) -const useStore = createStore( - [ - { - id: '1', - type: 'input', - data: { label: 'Input' }, - position: { x: 250, y: 25 }, - }, - - { - id: '2', - data: { label: 'Default' }, - position: { x: 100, y: 125 }, - }, - { - id: '3', - type: 'output', - data: { label: 'Output' }, - position: { x: 250, y: 250 }, - }, - ], - [ - { id: 'e1-2', source: '1', target: '2' }, - { id: 'e2-3', source: '2', target: '3' }, - ] -) +const useStore = createStore([ + { + code: 'cd', + type: 'type', + }, + { + code: 'cd', + type: 'type', + }, + { + code: 'cd', + type: 'type', + }, + { + code: 'cd', + type: 'type', + }, +]) export interface Props { deployment: api_deployments } - -function useDeployment(deployment: api_deployments) { - const [latest, setLatest] = useState(deployment) - const client = useSupabaseClient() - - useEffect(function subscribe() { - const sub = client.channel('any') - .on('postgres_changes', - { - event: 'UPDATE', - schema: 'public', - table: 'api_deployments', - filter: `id=eq.${deployment.id}`, - }, payload => { - console.log('Change received!', payload) - setLatest(l => ({ ...l, data: payload.new.data })) - }) - .subscribe() - - return () => { - sub.unsubscribe() - } - }, [deployment, client]) - - return latest -} - - - +// function useDeployment(deployment: api_deployments) { +// const [latest, setLatest] = useState(deployment) +// const client = useSupabaseClient() + +// useEffect(function subscribe() { +// const sub = client.channel('any') +// .on('postgres_changes', +// { +// event: 'UPDATE', +// schema: 'public', +// table: 'api_deployments', +// filter: `id=eq.${deployment.id}`, +// }, payload => { +// console.log('Change received!', payload) +// setLatest(l => ({ ...l, data: payload.new.data })) +// }) +// .subscribe() + +// return () => { +// sub.unsubscribe() +// } +// }, [deployment, client]) + +// return latest +// } export default function DeploymentEditor({ deployment }: Props) { const { - nodes, - edges, - onNodesChange, - onEdgesChange, - onConnect, + addBlock, + blocks, + changeBlock, + removeBlock, } = useStore(selector, shallow) - const syncedDeployment = useDeployment(deployment) - - console.log(syncedDeployment) + // const syncedDeployment = useDeployment(deployment) + // const dbBlocks = blocks || syncedDeployment.data as unknown as State['blocks'] return ( - - - - - +
+
+ +
+
+ { + blocks.map((b, i) => +
+
{b.type}
+
{b.code}
+
+
+ ) + } +
+
+
+
) } diff --git a/db/supabase.ts b/db/supabase.ts new file mode 100644 index 0000000..ccfeb5e --- /dev/null +++ b/db/supabase.ts @@ -0,0 +1,351 @@ +export type Json = + | string + | number + | boolean + | null + | { [key: string]: Json } + | Json[] + +export interface Database { + public: { + Tables: { + api_deployments: { + Row: { + created_at: string | null + data: Json + id: number + team_id: string | null + } + Insert: { + created_at?: string | null + data: Json + id?: number + team_id?: string | null + } + Update: { + created_at?: string | null + data?: Json + id?: number + team_id?: string | null + } + } + api_keys: { + Row: { + api_key: string + owner_id: string + } + Insert: { + api_key: string + owner_id: string + } + Update: { + api_key?: string + owner_id?: string + } + } + apps: { + Row: { + created_at: string + id: string + repository_branch: string | null + repository_id: number | null + repository_path: string + subdomain: string | null + team_id: string | null + title: string | null + } + Insert: { + created_at?: string + id: string + repository_branch?: string | null + repository_id?: number | null + repository_path?: string + subdomain?: string | null + team_id?: string | null + title?: string | null + } + Update: { + created_at?: string + id?: string + repository_branch?: string | null + repository_id?: number | null + repository_path?: string + subdomain?: string | null + team_id?: string | null + title?: string | null + } + } + apps_content: { + Row: { + app_id: string + content: Json | null + created_at: string + updated_at: string + } + Insert: { + app_id: string + content?: Json | null + created_at?: string + updated_at?: string + } + Update: { + app_id?: string + content?: Json | null + created_at?: string + updated_at?: string + } + } + apps_feedback: { + Row: { + appId: string + created_at: string + feedback: string | null + id: number + properties: Json | null + } + Insert: { + appId: string + created_at?: string + feedback?: string | null + id?: number + properties?: Json | null + } + Update: { + appId?: string + created_at?: string + feedback?: string | null + id?: number + properties?: Json | null + } + } + code_snippets: { + Row: { + code: string | null + created_at: string + creator_id: string + env_vars: Json + id: string + template: string + title: string + } + Insert: { + code?: string | null + created_at?: string + creator_id: string + env_vars?: Json + id: string + template?: string + title?: string + } + Update: { + code?: string | null + created_at?: string + creator_id?: string + env_vars?: Json + id?: string + template?: string + title?: string + } + } + envs: { + Row: { + code_snippet_id: string | null + deps: string[] | null + id: string + state: Database["public"]["Enums"]["env_state"] | null + template: string | null + } + Insert: { + code_snippet_id?: string | null + deps?: string[] | null + id: string + state?: Database["public"]["Enums"]["env_state"] | null + template?: string | null + } + Update: { + code_snippet_id?: string | null + deps?: string[] | null + id?: string + state?: Database["public"]["Enums"]["env_state"] | null + template?: string | null + } + } + github_repositories: { + Row: { + installated_at: string + installation_id: number + repository_fullname: string + repository_id: number + } + Insert: { + installated_at?: string + installation_id: number + repository_fullname: string + repository_id?: number + } + Update: { + installated_at?: string + installation_id?: number + repository_fullname?: string + repository_id?: number + } + } + published_code_snippets: { + Row: { + code: string + code_snippet_id: string + env_vars: Json + id: string + published_at: string | null + template: string + title: string + } + Insert: { + code?: string + code_snippet_id: string + env_vars?: Json + id?: string + published_at?: string | null + template?: string + title?: string + } + Update: { + code?: string + code_snippet_id?: string + env_vars?: Json + id?: string + published_at?: string | null + template?: string + title?: string + } + } + slack_installations: { + Row: { + created_at: string + devbook_app_id: string + id: string + installation_data: Json + } + Insert: { + created_at?: string + devbook_app_id: string + id: string + installation_data: Json + } + Update: { + created_at?: string + devbook_app_id?: string + id?: string + installation_data?: Json + } + } + teams: { + Row: { + created_at: string + id: string + is_default: boolean + name: string | null + } + Insert: { + created_at?: string + id?: string + is_default?: boolean + name?: string | null + } + Update: { + created_at?: string + id?: string + is_default?: boolean + name?: string | null + } + } + user_feedback: { + Row: { + created_at: string | null + feedback: string | null + id: number + user_id: string | null + } + Insert: { + created_at?: string | null + feedback?: string | null + id?: number + user_id?: string | null + } + Update: { + created_at?: string | null + feedback?: string | null + id?: number + user_id?: string | null + } + } + users: { + Row: { + created_at: string | null + email: string | null + id: string + } + Insert: { + created_at?: string | null + email?: string | null + id: string + } + Update: { + created_at?: string | null + email?: string | null + id?: string + } + } + users_teams: { + Row: { + created_at: string + team_id: string + user_id: string + } + Insert: { + created_at?: string + team_id: string + user_id: string + } + Update: { + created_at?: string + team_id?: string + user_id?: string + } + } + } + Views: { + [_ in never]: never + } + Functions: { + [_ in never]: never + } + Enums: { + env_state: "Building" | "Failed" | "Done" | "None" + template: + | "Nodejs" + | "Go" + | "Bash" + | "Python3" + | "Java" + | "Rust" + | "Perl" + | "PHP" + | "Ansys" + | "Typescript" + template_old: + | "None" + | "Nodejs" + | "Go" + | "Bash" + | "Python" + | "Java" + | "Rust" + | "Perl" + | "PHP" + } + CompositeTypes: { + [_ in never]: never + } + } +} diff --git a/db/tables.ts b/db/tables.ts new file mode 100644 index 0000000..e72735b --- /dev/null +++ b/db/tables.ts @@ -0,0 +1 @@ +export const apiDeploymentsTable = 'api_deployments' diff --git a/package.json b/package.json index 7acacda..9009034 100644 --- a/package.json +++ b/package.json @@ -12,6 +12,7 @@ "dev:debug": "NODE_OPTIONS='--inspect' next dev", "db:generate": "prisma generate", "db:pull": "prisma db pull", + "supabase:generate": "supabase gen types typescript --project-id \"eazfkpnsvqrijiorxdbj\" --schema public > db/supabase.ts", "postinstall": "yarn db:generate" }, "dependencies": { @@ -28,7 +29,6 @@ "randomcolor": "^0.6.2", "react": "18.2.0", "react-dom": "18.2.0", - "reactflow": "^11.5.6", "server-only": "^0.0.1", "superjson": "^1.12.2", "swr": "^2.0.4", @@ -50,6 +50,7 @@ "postcss": "^8.4.21", "postcss-import": "^15.1.0", "prisma": "^4.11.0", + "supabase": "^1.41.6", "tailwindcss": "^3.2.7", "typescript": "^4.9.5", "vercel": "^28.16.12" diff --git a/pages/_app.tsx b/pages/_app.tsx index e4817bc..f978155 100644 --- a/pages/_app.tsx +++ b/pages/_app.tsx @@ -9,6 +9,7 @@ import clsx from 'clsx' import 'styles/global.css' import Header from '@/components/Header' +import { Database } from '@/db/supabase' const inter = Inter({ subsets: ['latin'], @@ -20,9 +21,9 @@ const jetBrains = JetBrains_Mono({ variable: '--font-jet-brains', }) -export default function App(props: AppProps<{ initialSession: Session }>) { +export default function App({ Component, pageProps }: AppProps<{ initialSession: Session }>) { const router = useRouter() - const [supabaseClient] = useState(() => createBrowserSupabaseClient()) + const [supabaseClient] = useState(() => createBrowserSupabaseClient()) const isSignIn = router.pathname === '/sign' && router.query.signup !== 'true' const isSignUp = router.pathname === '/sign' && router.query.signup === 'true' @@ -41,7 +42,7 @@ export default function App(props: AppProps<{ initialSession: Session }>) { )}> {!isSignIn && !isSignUp && @@ -55,7 +56,7 @@ export default function App(props: AppProps<{ initialSession: Session }>) { overflow-hidden " > - +
diff --git a/pages/settings.tsx b/pages/settings.tsx index b9fe712..828d1e7 100644 --- a/pages/settings.tsx +++ b/pages/settings.tsx @@ -6,9 +6,10 @@ import { useSupabaseClient, useUser } from '@supabase/auth-helpers-react' import Button from 'components/Button' import Text from 'components/typography/Text' +import { Database } from '@/db/supabase' export const getServerSideProps: GetServerSideProps = async (ctx) => { - const supabase = createServerSupabaseClient(ctx) + const supabase = createServerSupabaseClient(ctx) const { data: { session }, } = await supabase.auth.getSession() @@ -34,7 +35,7 @@ function Settings({ }: Props) { const user = useUser() const router = useRouter() - const supabaseClient = useSupabaseClient() + const supabaseClient = useSupabaseClient() async function handleSignOut() { await supabaseClient.auth.signOut() diff --git a/state/store.ts b/state/store.ts index b2ee51f..f3ef2be 100644 --- a/state/store.ts +++ b/state/store.ts @@ -1,44 +1,64 @@ -import { - Edge, - OnNodesChange, - OnEdgesChange, - OnConnect, - NodeChange, - applyNodeChanges, - EdgeChange, - applyEdgeChanges, - Connection, - addEdge, - Node, -} from 'reactflow' import { create } from 'zustand' import { immer } from 'zustand/middleware/immer' +import { createJSONStorage, persist } from 'zustand/middleware' +import { SupabaseClient } from '@supabase/supabase-js' +import { apiDeploymentsTable } from '@/db/tables' +import { Database } from '@/db/supabase' + +export interface Block { + type: string + code: string +} export interface State { - nodes: Node[] - edges: Edge[] - onNodesChange: OnNodesChange - onEdgesChange: OnEdgesChange - onConnect: OnConnect + blocks: Block[] + changeBlock: (index: number, block: Partial) => void + removeBlock: (index: number) => void + addBlock: (block: Block) => void } -export function createStore(nodes: Node[], edges: Edge[]) { +export function createStore(blocks: Block[], id: string, client: SupabaseClient) { const immerStore = immer((set) => ({ - nodes, - edges, - onNodesChange: (changes: NodeChange[]) => + blocks, + changeBlock: (index, block) => set(state => { - state.nodes = applyNodeChanges(changes, state.nodes) + state.blocks[index] = { ...state.blocks[index], ...block } }), - onEdgesChange: (changes: EdgeChange[]) => + removeBlock: (index) => set(state => { - state.edges = applyEdgeChanges(changes, state.edges) + state.blocks.splice(index, 1) }), - onConnect: (connection: Connection) => + addBlock: (block) => set(state => { - state.edges = addEdge(connection, state.edges) + state.blocks.push(block) }), })) - const useStore = create(immerStore) + + client.from('') + + const persistent = persist(immerStore, { + name: 'supabase-storage', + partialize: (state) => state.blocks, + storage: { + getItem: async (name) => { + const res = await client.from(apiDeploymentsTable).select('data').eq('id', id) + if (res.error) { + throw res.error + } + return res.data as Pick + }, + removeItem: () => { + + }, + setItem: (name, value) => { + + + value.state + + }, + } + }) + + const useStore = create(persistent) return useStore } diff --git a/yarn.lock b/yarn.lock index 5e7cee4..f6842ee 100644 --- a/yarn.lock +++ b/yarn.lock @@ -1463,60 +1463,6 @@ resolved "https://registry.yarnpkg.com/@prisma/engines/-/engines-4.11.0.tgz#c99749bfe20f58e8f4d2b5e04fee0785eba440e1" integrity sha512-0AEBi2HXGV02cf6ASsBPhfsVIbVSDC9nbQed4iiY5eHttW9ZtMxHThuKZE1pnESbr8HRdgmFSa/Kn4OSNYuibg== -"@reactflow/background@11.1.8": - version "11.1.8" - resolved "https://registry.yarnpkg.com/@reactflow/background/-/background-11.1.8.tgz#e804eb82ade6f70ab5f218dc767051083497c0f7" - integrity sha512-NYZwiEeKVc1qJbDRrRX5RgHbMMzofhzOAqz3teWtUIGju5d+kEf/vcx/35bLM+CZuhucL+OvJpRgCjKmViiTIw== - dependencies: - "@reactflow/core" "11.5.5" - classcat "^5.0.3" - zustand "^4.3.1" - -"@reactflow/controls@11.1.8": - version "11.1.8" - resolved "https://registry.yarnpkg.com/@reactflow/controls/-/controls-11.1.8.tgz#43c3756a53479382e34d495f4b123f45b8cf658f" - integrity sha512-QCG4q52HS/zmuBAFzmTFh4wkR6thmNDxSKHQPxTwfVIuQtV/oGpfz7zMaoU0ZSN84qSWl5UdzmV4PAC50tOAkQ== - dependencies: - "@reactflow/core" "11.5.5" - classcat "^5.0.3" - -"@reactflow/core@11.5.5": - version "11.5.5" - resolved "https://registry.yarnpkg.com/@reactflow/core/-/core-11.5.5.tgz#bced11d76fc200b4dc301f2f2b882c4f4ec3dad3" - integrity sha512-/FPnpvO9I4E6/mmfZInbsVusR214gzIZ2e2xgl9XJdBo90cWaqHgo0c5F2YPXX19R3mItzxveN+WlENFEOvdPg== - dependencies: - "@types/d3" "^7.4.0" - "@types/d3-drag" "^3.0.1" - "@types/d3-selection" "^3.0.3" - "@types/d3-zoom" "^3.0.1" - classcat "^5.0.3" - d3-drag "^3.0.0" - d3-selection "^3.0.0" - d3-zoom "^3.0.0" - zustand "^4.3.1" - -"@reactflow/minimap@11.3.8": - version "11.3.8" - resolved "https://registry.yarnpkg.com/@reactflow/minimap/-/minimap-11.3.8.tgz#f2324c2f038d75bf9f8b27d46d782f488038f341" - integrity sha512-hOW3FVP/ObRK3oZxvKSSKIIR/DRe1OR4KU+3AIHxTK6K2kt/D48zQU37fOmEasfohjBjsqEopK7Ux8tapTT0EA== - dependencies: - "@reactflow/core" "11.5.5" - "@types/d3-selection" "^3.0.3" - "@types/d3-zoom" "^3.0.1" - classcat "^5.0.3" - d3-selection "^3.0.0" - d3-zoom "^3.0.0" - zustand "^4.3.1" - -"@reactflow/node-toolbar@1.1.8": - version "1.1.8" - resolved "https://registry.yarnpkg.com/@reactflow/node-toolbar/-/node-toolbar-1.1.8.tgz#36a97fb390b8c622fa98e7ffaf1b03c2f75f812a" - integrity sha512-/Aj5dfarrBRvPeyDk+CZef7InP4LXlhMnlMPw6hnT/P9lVVChe02knzzkeKiVGmiWKXWL/gOCDXBFp9tMtIAsQ== - dependencies: - "@reactflow/core" "11.5.5" - classcat "^5.0.3" - zustand "^4.3.1" - "@remix-run/dev@npm:@vercel/remix-run-dev@1.13.0-patch.2": version "1.13.0-patch.2" resolved "https://registry.yarnpkg.com/@vercel/remix-run-dev/-/remix-run-dev-1.13.0-patch.2.tgz#77c83aecb414eb220ee6ce26842b1b1ffa09add9" @@ -1751,216 +1697,6 @@ resolved "https://registry.yarnpkg.com/@types/cookie/-/cookie-0.4.1.tgz#bfd02c1f2224567676c1545199f87c3a861d878d" integrity sha512-XW/Aa8APYr6jSVVA1y/DEIZX0/GMKLEVekNG727R8cs56ahETkRAy/3DR7+fJyh7oUgGwNQaRfXCun0+KbWY7Q== -"@types/d3-array@*": - version "3.0.4" - resolved "https://registry.yarnpkg.com/@types/d3-array/-/d3-array-3.0.4.tgz#44eebe40be57476cad6a0cd6a85b0f57d54185a2" - integrity sha512-nwvEkG9vYOc0Ic7G7kwgviY4AQlTfYGIZ0fqB7CQHXGyYM6nO7kJh5EguSNA3jfh4rq7Sb7eMVq8isuvg2/miQ== - -"@types/d3-axis@*": - version "3.0.2" - resolved "https://registry.yarnpkg.com/@types/d3-axis/-/d3-axis-3.0.2.tgz#96e11d51256baf5bdb2fa73a17d302993e79df07" - integrity sha512-uGC7DBh0TZrU/LY43Fd8Qr+2ja1FKmH07q2FoZFHo1eYl8aj87GhfVoY1saJVJiq24rp1+wpI6BvQJMKgQm8oA== - dependencies: - "@types/d3-selection" "*" - -"@types/d3-brush@*": - version "3.0.2" - resolved "https://registry.yarnpkg.com/@types/d3-brush/-/d3-brush-3.0.2.tgz#a610aad5a1e76c375be63e11c5eee1ed9fd2fb40" - integrity sha512-2TEm8KzUG3N7z0TrSKPmbxByBx54M+S9lHoP2J55QuLU0VSQ9mE96EJSAOVNEqd1bbynMjeTS9VHmz8/bSw8rA== - dependencies: - "@types/d3-selection" "*" - -"@types/d3-chord@*": - version "3.0.2" - resolved "https://registry.yarnpkg.com/@types/d3-chord/-/d3-chord-3.0.2.tgz#cf6f05ad2d8faaad524e9e6f454b4fd06b200930" - integrity sha512-abT/iLHD3sGZwqMTX1TYCMEulr+wBd0SzyOQnjYNLp7sngdOHYtNkMRI5v3w5thoN+BWtlHVDx2Osvq6fxhZWw== - -"@types/d3-color@*": - version "3.1.0" - resolved "https://registry.yarnpkg.com/@types/d3-color/-/d3-color-3.1.0.tgz#6594da178ded6c7c3842f3cc0ac84b156f12f2d4" - integrity sha512-HKuicPHJuvPgCD+np6Se9MQvS6OCbJmOjGvylzMJRlDwUXjKTTXs6Pwgk79O09Vj/ho3u1ofXnhFOaEWWPrlwA== - -"@types/d3-contour@*": - version "3.0.2" - resolved "https://registry.yarnpkg.com/@types/d3-contour/-/d3-contour-3.0.2.tgz#d8a0e4d12ec14f7d2bb6e59f3fbc1a527457d0b2" - integrity sha512-k6/bGDoAGJZnZWaKzeB+9glgXCYGvh6YlluxzBREiVo8f/X2vpTEdgPy9DN7Z2i42PZOZ4JDhVdlTSTSkLDPlQ== - dependencies: - "@types/d3-array" "*" - "@types/geojson" "*" - -"@types/d3-delaunay@*": - version "6.0.1" - resolved "https://registry.yarnpkg.com/@types/d3-delaunay/-/d3-delaunay-6.0.1.tgz#006b7bd838baec1511270cb900bf4fc377bbbf41" - integrity sha512-tLxQ2sfT0p6sxdG75c6f/ekqxjyYR0+LwPrsO1mbC9YDBzPJhs2HbJJRrn8Ez1DBoHRo2yx7YEATI+8V1nGMnQ== - -"@types/d3-dispatch@*": - version "3.0.2" - resolved "https://registry.yarnpkg.com/@types/d3-dispatch/-/d3-dispatch-3.0.2.tgz#b2fa80bab3bcead68680766e966f59cd6cb9a69f" - integrity sha512-rxN6sHUXEZYCKV05MEh4z4WpPSqIw+aP7n9ZN6WYAAvZoEAghEK1WeVZMZcHRBwyaKflU43PCUAJNjFxCzPDjg== - -"@types/d3-drag@*", "@types/d3-drag@^3.0.1": - version "3.0.2" - resolved "https://registry.yarnpkg.com/@types/d3-drag/-/d3-drag-3.0.2.tgz#5562da3e7b33d782c2c1f9e65c5e91bb01ee82cf" - integrity sha512-qmODKEDvyKWVHcWWCOVcuVcOwikLVsyc4q4EBJMREsoQnR2Qoc2cZQUyFUPgO9q4S3qdSqJKBsuefv+h0Qy+tw== - dependencies: - "@types/d3-selection" "*" - -"@types/d3-dsv@*": - version "3.0.1" - resolved "https://registry.yarnpkg.com/@types/d3-dsv/-/d3-dsv-3.0.1.tgz#c51a3505cee42653454b74a00f8713dc3548c362" - integrity sha512-76pBHCMTvPLt44wFOieouXcGXWOF0AJCceUvaFkxSZEu4VDUdv93JfpMa6VGNFs01FHfuP4a5Ou68eRG1KBfTw== - -"@types/d3-ease@*": - version "3.0.0" - resolved "https://registry.yarnpkg.com/@types/d3-ease/-/d3-ease-3.0.0.tgz#c29926f8b596f9dadaeca062a32a45365681eae0" - integrity sha512-aMo4eaAOijJjA6uU+GIeW018dvy9+oH5Y2VPPzjjfxevvGQ/oRDs+tfYC9b50Q4BygRR8yE2QCLsrT0WtAVseA== - -"@types/d3-fetch@*": - version "3.0.2" - resolved "https://registry.yarnpkg.com/@types/d3-fetch/-/d3-fetch-3.0.2.tgz#fe1f335243e07c9bd520c9a71756fed8330c54b1" - integrity sha512-gllwYWozWfbep16N9fByNBDTkJW/SyhH6SGRlXloR7WdtAaBui4plTP+gbUgiEot7vGw/ZZop1yDZlgXXSuzjA== - dependencies: - "@types/d3-dsv" "*" - -"@types/d3-force@*": - version "3.0.4" - resolved "https://registry.yarnpkg.com/@types/d3-force/-/d3-force-3.0.4.tgz#2d50bd2b695f709797e1745644f6bc123e6e5f5a" - integrity sha512-q7xbVLrWcXvSBBEoadowIUJ7sRpS1yvgMWnzHJggFy5cUZBq2HZL5k/pBSm0GdYWS1vs5/EDwMjSKF55PDY4Aw== - -"@types/d3-format@*": - version "3.0.1" - resolved "https://registry.yarnpkg.com/@types/d3-format/-/d3-format-3.0.1.tgz#194f1317a499edd7e58766f96735bdc0216bb89d" - integrity sha512-5KY70ifCCzorkLuIkDe0Z9YTf9RR2CjBX1iaJG+rgM/cPP+sO+q9YdQ9WdhQcgPj1EQiJ2/0+yUkkziTG6Lubg== - -"@types/d3-geo@*": - version "3.0.3" - resolved "https://registry.yarnpkg.com/@types/d3-geo/-/d3-geo-3.0.3.tgz#535e5f24be13722964c52354301be09b752f5d6e" - integrity sha512-bK9uZJS3vuDCNeeXQ4z3u0E7OeJZXjUgzFdSOtNtMCJCLvDtWDwfpRVWlyt3y8EvRzI0ccOu9xlMVirawolSCw== - dependencies: - "@types/geojson" "*" - -"@types/d3-hierarchy@*": - version "3.1.2" - resolved "https://registry.yarnpkg.com/@types/d3-hierarchy/-/d3-hierarchy-3.1.2.tgz#b3a446b5437faededb30ac32b7cc0486559ab1e2" - integrity sha512-9hjRTVoZjRFR6xo8igAJyNXQyPX6Aq++Nhb5ebrUF414dv4jr2MitM2fWiOY475wa3Za7TOS2Gh9fmqEhLTt0A== - -"@types/d3-interpolate@*": - version "3.0.1" - resolved "https://registry.yarnpkg.com/@types/d3-interpolate/-/d3-interpolate-3.0.1.tgz#e7d17fa4a5830ad56fe22ce3b4fac8541a9572dc" - integrity sha512-jx5leotSeac3jr0RePOH1KdR9rISG91QIE4Q2PYTu4OymLTZfA3SrnURSLzKH48HmXVUru50b8nje4E79oQSQw== - dependencies: - "@types/d3-color" "*" - -"@types/d3-path@*": - version "3.0.0" - resolved "https://registry.yarnpkg.com/@types/d3-path/-/d3-path-3.0.0.tgz#939e3a784ae4f80b1fde8098b91af1776ff1312b" - integrity sha512-0g/A+mZXgFkQxN3HniRDbXMN79K3CdTpLsevj+PXiTcb2hVyvkZUBg37StmgCQkaD84cUJ4uaDAWq7UJOQy2Tg== - -"@types/d3-polygon@*": - version "3.0.0" - resolved "https://registry.yarnpkg.com/@types/d3-polygon/-/d3-polygon-3.0.0.tgz#5200a3fa793d7736fa104285fa19b0dbc2424b93" - integrity sha512-D49z4DyzTKXM0sGKVqiTDTYr+DHg/uxsiWDAkNrwXYuiZVd9o9wXZIo+YsHkifOiyBkmSWlEngHCQme54/hnHw== - -"@types/d3-quadtree@*": - version "3.0.2" - resolved "https://registry.yarnpkg.com/@types/d3-quadtree/-/d3-quadtree-3.0.2.tgz#433112a178eb7df123aab2ce11c67f51cafe8ff5" - integrity sha512-QNcK8Jguvc8lU+4OfeNx+qnVy7c0VrDJ+CCVFS9srBo2GL9Y18CnIxBdTF3v38flrGy5s1YggcoAiu6s4fLQIw== - -"@types/d3-random@*": - version "3.0.1" - resolved "https://registry.yarnpkg.com/@types/d3-random/-/d3-random-3.0.1.tgz#5c8d42b36cd4c80b92e5626a252f994ca6bfc953" - integrity sha512-IIE6YTekGczpLYo/HehAy3JGF1ty7+usI97LqraNa8IiDur+L44d0VOjAvFQWJVdZOJHukUJw+ZdZBlgeUsHOQ== - -"@types/d3-scale-chromatic@*": - version "3.0.0" - resolved "https://registry.yarnpkg.com/@types/d3-scale-chromatic/-/d3-scale-chromatic-3.0.0.tgz#103124777e8cdec85b20b51fd3397c682ee1e954" - integrity sha512-dsoJGEIShosKVRBZB0Vo3C8nqSDqVGujJU6tPznsBJxNJNwMF8utmS83nvCBKQYPpjCzaaHcrf66iTRpZosLPw== - -"@types/d3-scale@*": - version "4.0.3" - resolved "https://registry.yarnpkg.com/@types/d3-scale/-/d3-scale-4.0.3.tgz#7a5780e934e52b6f63ad9c24b105e33dd58102b5" - integrity sha512-PATBiMCpvHJSMtZAMEhc2WyL+hnzarKzI6wAHYjhsonjWJYGq5BXTzQjv4l8m2jO183/4wZ90rKvSeT7o72xNQ== - dependencies: - "@types/d3-time" "*" - -"@types/d3-selection@*", "@types/d3-selection@^3.0.3": - version "3.0.4" - resolved "https://registry.yarnpkg.com/@types/d3-selection/-/d3-selection-3.0.4.tgz#923d7f8985718116de56f55307d26e5f00728dc5" - integrity sha512-ZeykX7286BCyMg9sH5fIAORyCB6hcATPSRQpN47jwBA2bMbAT0s+EvtDP5r1FZYJ95R8QoEE1CKJX+n0/M5Vhg== - -"@types/d3-shape@*": - version "3.1.1" - resolved "https://registry.yarnpkg.com/@types/d3-shape/-/d3-shape-3.1.1.tgz#15cc497751dac31192d7aef4e67a8d2c62354b95" - integrity sha512-6Uh86YFF7LGg4PQkuO2oG6EMBRLuW9cbavUW46zkIO5kuS2PfTqo2o9SkgtQzguBHbLgNnU90UNsITpsX1My+A== - dependencies: - "@types/d3-path" "*" - -"@types/d3-time-format@*": - version "4.0.0" - resolved "https://registry.yarnpkg.com/@types/d3-time-format/-/d3-time-format-4.0.0.tgz#ee7b6e798f8deb2d9640675f8811d0253aaa1946" - integrity sha512-yjfBUe6DJBsDin2BMIulhSHmr5qNR5Pxs17+oW4DoVPyVIXZ+m6bs7j1UVKP08Emv6jRmYrYqxYzO63mQxy1rw== - -"@types/d3-time@*": - version "3.0.0" - resolved "https://registry.yarnpkg.com/@types/d3-time/-/d3-time-3.0.0.tgz#e1ac0f3e9e195135361fa1a1d62f795d87e6e819" - integrity sha512-sZLCdHvBUcNby1cB6Fd3ZBrABbjz3v1Vm90nysCQ6Vt7vd6e/h9Lt7SiJUoEX0l4Dzc7P5llKyhqSi1ycSf1Hg== - -"@types/d3-timer@*": - version "3.0.0" - resolved "https://registry.yarnpkg.com/@types/d3-timer/-/d3-timer-3.0.0.tgz#e2505f1c21ec08bda8915238e397fb71d2fc54ce" - integrity sha512-HNB/9GHqu7Fo8AQiugyJbv6ZxYz58wef0esl4Mv828w1ZKpAshw/uFWVDUcIB9KKFeFKoxS3cHY07FFgtTRZ1g== - -"@types/d3-transition@*": - version "3.0.3" - resolved "https://registry.yarnpkg.com/@types/d3-transition/-/d3-transition-3.0.3.tgz#d4ac37d08703fb039c87f92851a598ba77400402" - integrity sha512-/S90Od8Id1wgQNvIA8iFv9jRhCiZcGhPd2qX0bKF/PS+y0W5CrXKgIiELd2CvG1mlQrWK/qlYh3VxicqG1ZvgA== - dependencies: - "@types/d3-selection" "*" - -"@types/d3-zoom@*", "@types/d3-zoom@^3.0.1": - version "3.0.2" - resolved "https://registry.yarnpkg.com/@types/d3-zoom/-/d3-zoom-3.0.2.tgz#067aa6a6ecbc75a78b753cc6f7a7f9f7e4e7d117" - integrity sha512-t09DDJVBI6AkM7N8kuPsnq/3d/ehtRKBN1xSiYjjMCgbiw6HM6Ged5VhvswmhprfKyGvzeTEL/4WBaK9llWvlA== - dependencies: - "@types/d3-interpolate" "*" - "@types/d3-selection" "*" - -"@types/d3@^7.4.0": - version "7.4.0" - resolved "https://registry.yarnpkg.com/@types/d3/-/d3-7.4.0.tgz#fc5cac5b1756fc592a3cf1f3dc881bf08225f515" - integrity sha512-jIfNVK0ZlxcuRDKtRS/SypEyOQ6UHaFQBKv032X45VvxSJ6Yi5G9behy9h6tNTHTDGh5Vq+KbmBjUWLgY4meCA== - dependencies: - "@types/d3-array" "*" - "@types/d3-axis" "*" - "@types/d3-brush" "*" - "@types/d3-chord" "*" - "@types/d3-color" "*" - "@types/d3-contour" "*" - "@types/d3-delaunay" "*" - "@types/d3-dispatch" "*" - "@types/d3-drag" "*" - "@types/d3-dsv" "*" - "@types/d3-ease" "*" - "@types/d3-fetch" "*" - "@types/d3-force" "*" - "@types/d3-format" "*" - "@types/d3-geo" "*" - "@types/d3-hierarchy" "*" - "@types/d3-interpolate" "*" - "@types/d3-path" "*" - "@types/d3-polygon" "*" - "@types/d3-quadtree" "*" - "@types/d3-random" "*" - "@types/d3-scale" "*" - "@types/d3-scale-chromatic" "*" - "@types/d3-selection" "*" - "@types/d3-shape" "*" - "@types/d3-time" "*" - "@types/d3-time-format" "*" - "@types/d3-timer" "*" - "@types/d3-transition" "*" - "@types/d3-zoom" "*" - "@types/debug@^4.0.0": version "4.1.7" resolved "https://registry.yarnpkg.com/@types/debug/-/debug-4.1.7.tgz#7cc0ea761509124709b8b2d1090d8f6c17aadb82" @@ -1987,11 +1723,6 @@ resolved "https://registry.yarnpkg.com/@types/estree/-/estree-1.0.0.tgz#5fb2e536c1ae9bf35366eed879e827fa59ca41c2" integrity sha512-WulqXMDUTYAXCjZnk6JtIHPigp55cVtDgDrO2gHRwhyJto21+1zbVCtOYB2L1F9w4qCQ0rOGWBnBe0FNTiEJIQ== -"@types/geojson@*": - version "7946.0.10" - resolved "https://registry.yarnpkg.com/@types/geojson/-/geojson-7946.0.10.tgz#6dfbf5ea17142f7f9a043809f1cd4c448cb68249" - integrity sha512-Nmh0K3iWQJzniTuPRcJn5hxXkfB1T1pgB89SBig5PlJQU5yocazeu4jATJlaA0GYFKWMqDdvYemoSnF2pXgLVA== - "@types/glob@^7.1.1": version "7.2.0" resolved "https://registry.yarnpkg.com/@types/glob/-/glob-7.2.0.tgz#bc1b5bf3aa92f25bd5dd39f35c57361bdce5b2eb" @@ -2660,6 +2391,16 @@ big.js@^5.2.2: resolved "https://registry.yarnpkg.com/big.js/-/big.js-5.2.2.tgz#65f0af382f578bcdc742bd9c281e9cb2d7768328" integrity sha512-vyL2OymJxmarO8gxMr0mhChsO9QGwhynfuu4+MHTAW6czfq9humCB7rKpUjDd9YUiDPU4mzpyupFSvOClAwbmQ== +bin-links@^4.0.1: + version "4.0.1" + resolved "https://registry.yarnpkg.com/bin-links/-/bin-links-4.0.1.tgz#afeb0549e642f61ff889b58ea2f8dca78fb9d8d3" + integrity sha512-bmFEM39CyX336ZGGRsGPlc6jZHriIoHacOQcTt72MktIjpPhZoP4te2jOyUXF3BLILmJ8aNLncoPVeIIFlrDeA== + dependencies: + cmd-shim "^6.0.0" + npm-normalize-package-bin "^3.0.0" + read-cmd-shim "^4.0.0" + write-file-atomic "^5.0.0" + binary-extensions@^2.0.0: version "2.2.0" resolved "https://registry.yarnpkg.com/binary-extensions/-/binary-extensions-2.2.0.tgz#75f502eeaf9ffde42fc98829645be4ea76bd9e2d" @@ -2903,11 +2644,6 @@ chownr@^2.0.0: resolved "https://registry.yarnpkg.com/chownr/-/chownr-2.0.0.tgz#15bfbe53d2eab4cf70f18a8cd68ebe5b3cb1dece" integrity sha512-bIomtDF5KGpdogkLd9VspvFzk9KfpyyGlS8YFVZl7TGPBHL5snIOnxeshwVgPteQ9b4Eydl+pVbIyE1DcvCWgQ== -classcat@^5.0.3: - version "5.0.4" - resolved "https://registry.yarnpkg.com/classcat/-/classcat-5.0.4.tgz#e12d1dfe6df6427f260f03b80dc63571a5107ba6" - integrity sha512-sbpkOw6z413p+HDGcBENe498WM9woqWHiJxCq7nvmxe9WmrUmqfAcxpIwAiMtM5Q3AhYkzXcNQHqsWq0mND51g== - clean-stack@^2.0.0: version "2.2.0" resolved "https://registry.yarnpkg.com/clean-stack/-/clean-stack-2.2.0.tgz#ee8472dbb129e727b31e8a10a427dee9dfe4008b" @@ -2952,6 +2688,11 @@ clsx@^1.2.1: resolved "https://registry.yarnpkg.com/clsx/-/clsx-1.2.1.tgz#0ddc4a20a549b59c93a4116bb26f5294ca17dc12" integrity sha512-EcR6r5a8bj6pu3ycsa/E/cKVGuTgZJZdsyUYHOksG/UHIiKfjxzRxYJpyVBwYaQeOvghal9fcc4PidlgzugAQg== +cmd-shim@^6.0.0: + version "6.0.1" + resolved "https://registry.yarnpkg.com/cmd-shim/-/cmd-shim-6.0.1.tgz#a65878080548e1dca760b3aea1e21ed05194da9d" + integrity sha512-S9iI9y0nKR4hwEQsVWpyxld/6kRfGepGfzff83FcaiEBpmvlbA2nnGe7Cylgrx2f/p1P5S5wpRm9oL8z1PbS3Q== + code-block-writer@^10.1.1: version "10.1.1" resolved "https://registry.yarnpkg.com/code-block-writer/-/code-block-writer-10.1.1.tgz#ad5684ed4bfb2b0783c8b131281ae84ee640a42f" @@ -3188,68 +2929,6 @@ csstype@^3.0.2, csstype@^3.0.7: resolved "https://registry.yarnpkg.com/csstype/-/csstype-3.1.1.tgz#841b532c45c758ee546a11d5bd7b7b473c8c30b9" integrity sha512-DJR/VvkAvSZW9bTouZue2sSxDwdTN92uHjqeKVm+0dAqdfNykRzQ95tay8aXMBAAPpUiq4Qcug2L7neoRh2Egw== -"d3-color@1 - 3": - version "3.1.0" - resolved "https://registry.yarnpkg.com/d3-color/-/d3-color-3.1.0.tgz#395b2833dfac71507f12ac2f7af23bf819de24e2" - integrity sha512-zg/chbXyeBtMQ1LbD/WSoW2DpC3I0mpmPdW+ynRTj/x2DAWYrIY7qeZIHidozwV24m4iavr15lNwIwLxRmOxhA== - -"d3-dispatch@1 - 3": - version "3.0.1" - resolved "https://registry.yarnpkg.com/d3-dispatch/-/d3-dispatch-3.0.1.tgz#5fc75284e9c2375c36c839411a0cf550cbfc4d5e" - integrity sha512-rzUyPU/S7rwUflMyLc1ETDeBj0NRuHKKAcvukozwhshr6g6c5d8zh4c2gQjY2bZ0dXeGLWc1PF174P2tVvKhfg== - -"d3-drag@2 - 3", d3-drag@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/d3-drag/-/d3-drag-3.0.0.tgz#994aae9cd23c719f53b5e10e3a0a6108c69607ba" - integrity sha512-pWbUJLdETVA8lQNJecMxoXfH6x+mO2UQo8rSmZ+QqxcbyA3hfeprFgIT//HW2nlHChWeIIMwS2Fq+gEARkhTkg== - dependencies: - d3-dispatch "1 - 3" - d3-selection "3" - -"d3-ease@1 - 3": - version "3.0.1" - resolved "https://registry.yarnpkg.com/d3-ease/-/d3-ease-3.0.1.tgz#9658ac38a2140d59d346160f1f6c30fda0bd12f4" - integrity sha512-wR/XK3D3XcLIZwpbvQwQ5fK+8Ykds1ip7A2Txe0yxncXSdq1L9skcG7blcedkOX+ZcgxGAmLX1FrRGbADwzi0w== - -"d3-interpolate@1 - 3": - version "3.0.1" - resolved "https://registry.yarnpkg.com/d3-interpolate/-/d3-interpolate-3.0.1.tgz#3c47aa5b32c5b3dfb56ef3fd4342078a632b400d" - integrity sha512-3bYs1rOD33uo8aqJfKP3JWPAibgw8Zm2+L9vBKEHJ2Rg+viTR7o5Mmv5mZcieN+FRYaAOWX5SJATX6k1PWz72g== - dependencies: - d3-color "1 - 3" - -"d3-selection@2 - 3", d3-selection@3, d3-selection@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/d3-selection/-/d3-selection-3.0.0.tgz#c25338207efa72cc5b9bd1458a1a41901f1e1b31" - integrity sha512-fmTRWbNMmsmWq6xJV8D19U/gw/bwrHfNXxrIN+HfZgnzqTHp9jOmKMhsTUjXOJnZOdZY9Q28y4yebKzqDKlxlQ== - -"d3-timer@1 - 3": - version "3.0.1" - resolved "https://registry.yarnpkg.com/d3-timer/-/d3-timer-3.0.1.tgz#6284d2a2708285b1abb7e201eda4380af35e63b0" - integrity sha512-ndfJ/JxxMd3nw31uyKoY2naivF+r29V+Lc0svZxe1JvvIRmi8hUsrMvdOwgS1o6uBHmiz91geQ0ylPP0aj1VUA== - -"d3-transition@2 - 3": - version "3.0.1" - resolved "https://registry.yarnpkg.com/d3-transition/-/d3-transition-3.0.1.tgz#6869fdde1448868077fdd5989200cb61b2a1645f" - integrity sha512-ApKvfjsSR6tg06xrL434C0WydLr7JewBB3V+/39RMHsaXTOG0zmt/OAXeng5M5LBm0ojmxJrpomQVZ1aPvBL4w== - dependencies: - d3-color "1 - 3" - d3-dispatch "1 - 3" - d3-ease "1 - 3" - d3-interpolate "1 - 3" - d3-timer "1 - 3" - -d3-zoom@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/d3-zoom/-/d3-zoom-3.0.0.tgz#d13f4165c73217ffeaa54295cd6969b3e7aee8f3" - integrity sha512-b8AmV3kfQaqWAuacbPuNbL6vahnOJflOhexLzMMNLga62+/nh0JzvJ0aO/5a5MVgUFGS7Hu1P9P03o3fJkDCyw== - dependencies: - d3-dispatch "1 - 3" - d3-drag "2 - 3" - d3-interpolate "1 - 3" - d3-selection "2 - 3" - d3-transition "2 - 3" - d@1, d@^1.0.1: version "1.0.1" resolved "https://registry.yarnpkg.com/d/-/d-1.0.1.tgz#8698095372d58dbee346ffd0c7093f99f8f9eb5a" @@ -3268,6 +2947,11 @@ data-uri-to-buffer@3: resolved "https://registry.yarnpkg.com/data-uri-to-buffer/-/data-uri-to-buffer-3.0.1.tgz#594b8973938c5bc2c33046535785341abc4f3636" integrity sha512-WboRycPNsVw3B3TL559F7kuBUM4d8CgMEvk6xEJlOp7OBPjt6G7z8WMWlD2rOFZLk6OYfFIUGsCOWzcQH9K2og== +data-uri-to-buffer@^4.0.0: + version "4.0.1" + resolved "https://registry.yarnpkg.com/data-uri-to-buffer/-/data-uri-to-buffer-4.0.1.tgz#d8feb2b2881e6a4f58c2e08acfd0e2834e26222e" + integrity sha512-0R9ikRb668HB7QDxT1vkpuUBtqc53YyAwMwGeUFKRojY/NWKvdZ+9UYtRfGmhqNbRkTSVpMbmyhXipFFv2cb/A== + deasync@^0.1.0: version "0.1.28" resolved "https://registry.yarnpkg.com/deasync/-/deasync-0.1.28.tgz#9b447b79b3f822432f0ab6a8614c0062808b5ad2" @@ -4349,6 +4033,14 @@ fault@^2.0.0: dependencies: format "^0.2.0" +fetch-blob@^3.1.2, fetch-blob@^3.1.4: + version "3.2.0" + resolved "https://registry.yarnpkg.com/fetch-blob/-/fetch-blob-3.2.0.tgz#f09b8d4bbd45adc6f0c20b7e787e793e309dcce9" + integrity sha512-7yAQpD2UMJzLi1Dqv7qFYnPbaPx7ZfFK6PiIxQ4PfkGPyNyl2Ugx+a/umUonmKqjhM4DnfbMvdX6otXq83soQQ== + dependencies: + node-domexception "^1.0.0" + web-streams-polyfill "^3.0.3" + figures@^3.0.0: version "3.2.0" resolved "https://registry.yarnpkg.com/figures/-/figures-3.2.0.tgz#625c18bd293c604dc4a8ddb2febf0c88341746af" @@ -4426,6 +4118,13 @@ format@^0.2.0: resolved "https://registry.yarnpkg.com/format/-/format-0.2.2.tgz#d6170107e9efdc4ed30c9dc39016df942b5cb58b" integrity sha512-wzsgA6WOq+09wrU1tsJ09udeR/YZRaeArL9e1wPbFg3GG2yDnC2ldKpxs4xunpFF9DgqCqOIra3bc1HWrJ37Ww== +formdata-polyfill@^4.0.10: + version "4.0.10" + resolved "https://registry.yarnpkg.com/formdata-polyfill/-/formdata-polyfill-4.0.10.tgz#24807c31c9d402e002ab3d8c720144ceb8848423" + integrity sha512-buewHzMvYL29jdeQTVILecSaZKnt/RJWjoZCF5OW60Z67/GmSLBkOFM7qh1PI3zFNtJbaZL5eQu1vLfazOwj4g== + dependencies: + fetch-blob "^3.1.2" + forwarded@0.2.0: version "0.2.0" resolved "https://registry.yarnpkg.com/forwarded/-/forwarded-0.2.0.tgz#2269936428aad4c15c7ebe9779a84bf0b2a81811" @@ -6225,6 +5924,11 @@ node-addon-api@^1.7.1: resolved "https://registry.yarnpkg.com/node-addon-api/-/node-addon-api-1.7.2.tgz#3df30b95720b53c24e59948b49532b662444f54d" integrity sha512-ibPK3iA+vaY1eEjESkQkM0BbCqFOaZMiXRTtdB0u7b4djtY6JnsjvPdUHVMg6xQt3B8fpTTWHI9A+ADjM9frzg== +node-domexception@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/node-domexception/-/node-domexception-1.0.0.tgz#6888db46a1f71c0b76b3f7555016b63fe64766e5" + integrity sha512-/jKZoMpw0F8GRwl4/eLROPA3cfcXtLApP0QzLmUT/HuPCZWyB7IY9ZrMeKw2O/nFIqPQB3PVM9aYm0F312AXDQ== + node-fetch@2.6.7: version "2.6.7" resolved "https://registry.yarnpkg.com/node-fetch/-/node-fetch-2.6.7.tgz#24de9fba827e3b4ae44dc8b20256a379160052ad" @@ -6239,6 +5943,15 @@ node-fetch@^2.6.7: dependencies: whatwg-url "^5.0.0" +node-fetch@^3.2.10: + version "3.3.0" + resolved "https://registry.yarnpkg.com/node-fetch/-/node-fetch-3.3.0.tgz#37e71db4ecc257057af828d523a7243d651d91e4" + integrity sha512-BKwRP/O0UvoMKp7GNdwPlObhYGB5DQqwhEDQlNKuoqwVYSxkSZCSbHjnFFmUEtwSKRPU4kNK8PbDYYitwaE3QA== + dependencies: + data-uri-to-buffer "^4.0.0" + fetch-blob "^3.1.4" + formdata-polyfill "^4.0.10" + node-gyp-build@^4.2.2, node-gyp-build@^4.3.0: version "4.6.0" resolved "https://registry.yarnpkg.com/node-gyp-build/-/node-gyp-build-4.6.0.tgz#0c52e4cbf54bbd28b709820ef7b6a3c2d6209055" @@ -6271,6 +5984,11 @@ normalize-url@^6.0.1: resolved "https://registry.yarnpkg.com/normalize-url/-/normalize-url-6.1.0.tgz#40d0885b535deffe3f3147bec877d05fe4c5668a" integrity sha512-DlL+XwOy3NxAQ8xuC0okPgK46iuVNAK01YN7RueYBqqFeGsBjV9XmCAzAdgt+667bCl5kPh9EqKKDwnaPG1I7A== +npm-normalize-package-bin@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/npm-normalize-package-bin/-/npm-normalize-package-bin-3.0.0.tgz#6097436adb4ef09e2628b59a7882576fe53ce485" + integrity sha512-g+DPQSkusnk7HYXr75NtzkIP4+N81i3RPsGFidF3DzHd9MT9wWngmqoeg/fnHFz5MNdtG4w03s+QnhewSLTT2Q== + npm-run-path@^4.0.1: version "4.0.1" resolved "https://registry.yarnpkg.com/npm-run-path/-/npm-run-path-4.0.1.tgz#b7ecd1e5ed53da8e37a55e1c2269e0b97ed748ea" @@ -7125,17 +6843,6 @@ react@18.2.0: dependencies: loose-envify "^1.1.0" -reactflow@^11.5.6: - version "11.5.6" - resolved "https://registry.yarnpkg.com/reactflow/-/reactflow-11.5.6.tgz#744e2aa6cfb2c376b560633377063c2a576f3eec" - integrity sha512-my4LUKT7H7t2mK/qy4n+bfAMgjqhHOhYGYrvzSWB4yPhOhamPGjs0Ted9G8JWEw15Svn7pHf8DppTHUfk5zH2g== - dependencies: - "@reactflow/background" "11.1.8" - "@reactflow/controls" "11.1.8" - "@reactflow/core" "11.5.5" - "@reactflow/minimap" "11.3.8" - "@reactflow/node-toolbar" "1.1.8" - read-cache@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/read-cache/-/read-cache-1.0.0.tgz#e664ef31161166c9751cdbe8dbcf86b5fb58f774" @@ -7143,6 +6850,11 @@ read-cache@^1.0.0: dependencies: pify "^2.3.0" +read-cmd-shim@^4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/read-cmd-shim/-/read-cmd-shim-4.0.0.tgz#640a08b473a49043e394ae0c7a34dd822c73b9bb" + integrity sha512-yILWifhaSEEytfXI76kB9xEEiG1AiozaCJZ83A87ytjRiN+jVibXjedjCRNjoZviinhG+4UkalO3mWTd8u5O0Q== + readable-stream@1.1.x: version "1.1.14" resolved "https://registry.yarnpkg.com/readable-stream/-/readable-stream-1.1.14.tgz#7cf4c54ef648e3813084c636dd2079e166c081d9" @@ -7525,7 +7237,7 @@ side-channel@^1.0.4: get-intrinsic "^1.0.2" object-inspect "^1.9.0" -signal-exit@^3.0.0, signal-exit@^3.0.2, signal-exit@^3.0.3: +signal-exit@^3.0.0, signal-exit@^3.0.2, signal-exit@^3.0.3, signal-exit@^3.0.7: version "3.0.7" resolved "https://registry.yarnpkg.com/signal-exit/-/signal-exit-3.0.7.tgz#a9a1767f8af84155114eaabd73f99273c8f59ad9" integrity sha512-wnD2ZE+l+SPC/uoS0vXeE9L1+0wuaMqKlfz9AMUo38JsyLSBWSFcHR1Rri62LZc12vLr1gb3jl7iwQhgwpAbGQ== @@ -7750,6 +7462,15 @@ stylehacks@^5.1.1: browserslist "^4.21.4" postcss-selector-parser "^6.0.4" +supabase@^1.41.6: + version "1.41.6" + resolved "https://registry.yarnpkg.com/supabase/-/supabase-1.41.6.tgz#cd1a488c19a0fc17b859c6cc33bbe916d4d70acd" + integrity sha512-vHsHpdDCsEpvyqScynIBR0FabTL/1lAT6QGVkMIFyZWngYIYLdCbA13gMVI9im7pMqutgxrzbOLJVYpGa/xg4g== + dependencies: + bin-links "^4.0.1" + node-fetch "^3.2.10" + tar "6.1.13" + superjson@^1.12.2: version "1.12.2" resolved "https://registry.yarnpkg.com/superjson/-/superjson-1.12.2.tgz#072471f1e6add2d95a38b77fef8c7a199d82103a" @@ -7864,7 +7585,7 @@ tar-stream@^2.1.4: inherits "^2.0.3" readable-stream "^3.1.1" -tar@^6.0.2, tar@^6.1.11: +tar@6.1.13, tar@^6.0.2, tar@^6.1.11: version "6.1.13" resolved "https://registry.yarnpkg.com/tar/-/tar-6.1.13.tgz#46e22529000f612180601a6fe0680e7da508847b" integrity sha512-jdIBIN6LTIe2jqzay/2vtYLlBHa3JF42ot3h1dW8Q0PaAG4v8rm0cvpVePtau5C6OKXGGcgO9q2AMNSWxiLqKw== @@ -8343,6 +8064,11 @@ wcwidth@^1.0.1: dependencies: defaults "^1.0.3" +web-streams-polyfill@^3.0.3: + version "3.2.1" + resolved "https://registry.yarnpkg.com/web-streams-polyfill/-/web-streams-polyfill-3.2.1.tgz#71c2718c52b45fd49dbeee88634b3a60ceab42a6" + integrity sha512-e0MO3wdXWKrLbL0DgGnUV7WHVuw9OUvL4hjgnPkIeEvESk74gAITi5G606JtZPp39cd8HA9VQzCIvA49LpPN5Q== + web-vitals@0.2.4: version "0.2.4" resolved "https://registry.yarnpkg.com/web-vitals/-/web-vitals-0.2.4.tgz#ec3df43c834a207fd7cdefd732b2987896e08511" @@ -8439,6 +8165,14 @@ wrappy@1: resolved "https://registry.yarnpkg.com/wrappy/-/wrappy-1.0.2.tgz#b5243d8f3ec1aa35f1364605bc0d1036e30ab69f" integrity sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ== +write-file-atomic@^5.0.0: + version "5.0.0" + resolved "https://registry.yarnpkg.com/write-file-atomic/-/write-file-atomic-5.0.0.tgz#54303f117e109bf3d540261125c8ea5a7320fab0" + integrity sha512-R7NYMnHSlV42K54lwY9lvW6MnSm1HSJqZL3xiSgi9E7//FYaI74r2G0rd+/X6VAMkHEdzxQaU5HUOXWUz5kA/w== + dependencies: + imurmurhash "^0.1.4" + signal-exit "^3.0.7" + ws@^7.4.5: version "7.5.9" resolved "https://registry.yarnpkg.com/ws/-/ws-7.5.9.tgz#54fa7db29f4c7cec68b1ddd3a89de099942bb591" @@ -8518,7 +8252,7 @@ yocto-queue@^0.1.0: resolved "https://registry.yarnpkg.com/yocto-queue/-/yocto-queue-0.1.0.tgz#0294eb3dee05028d31ee1a5fa2c556a6aaf10a1b" integrity sha512-rVksvsnNCdJ/ohGc6xgPwyN8eheCxsiLM8mxuE/t/mOVqJewPuO1miLpTHQiRgTKCLexL4MeAFVagts7HmNZ2Q== -zustand@^4.3.1, zustand@^4.3.5: +zustand@^4.3.5: version "4.3.5" resolved "https://registry.yarnpkg.com/zustand/-/zustand-4.3.5.tgz#011d2997534f8a187ea7b1d75db56df31f58453d" integrity sha512-2iPUzfwx+g3f0PagOMz2vDO9mZzEp2puFpNe7vrAymVPOEIEUjCPkC4/zy84eAscxIWmTU4j9g6upXYkJdzEFQ==