From b61e6a596e73ae77a6b866a7da3ac0e69bc95d48 Mon Sep 17 00:00:00 2001 From: Simon Farshid Date: Sat, 26 Oct 2024 01:08:43 -0700 Subject: [PATCH] feat: shadcn registry site (#1082) --- .github/workflows/changeset.yaml | 8 +- .github/workflows/registry.yaml | 44 +++++ .gitignore | 2 +- apps/docs/package.json | 3 +- apps/docs/public/b/assistant-ui.json | 17 ++ apps/docs/public/b/chat/quick-start.json | 16 ++ apps/docs/public/b/edge-backend.json | 17 ++ apps/docs/public/b/markdown.json | 17 ++ .../registry}/.eslintrc.json | 0 apps/registry/.gitignore | 1 + .../registry}/components.json | 0 .../ui/assistant-ui/markdown-text.tsx | 0 .../ui/assistant-ui/syntax-highlighter.tsx | 0 .../components/ui/assistant-ui/thread.tsx | 0 .../ui/assistant-ui/tooltip-icon-button.tsx | 0 .../registry}/components/ui/avatar.tsx | 0 .../registry}/components/ui/button.tsx | 0 .../registry}/components/ui/resizable.tsx | 0 .../registry}/components/ui/tooltip.tsx | 0 .../registry}/lib/utils.ts | 0 .../registry}/package.json | 4 +- .../registry/assistant-ui/assistant-modal.tsx | 0 .../assistant-ui/assistant-sidebar.tsx | 0 .../registry/assistant-ui/full/thread.tsx | 0 .../registry/assistant-ui/markdown-text.tsx | 0 .../assistant-ui/syntax-highlighter.tsx | 0 .../registry/assistant-ui/thread.tsx | 0 .../assistant-ui/tooltip-icon-button.tsx | 0 .../components/assistant-ui/thread.tsx | 19 ++ .../registry}/registry/registry.ts | 23 ++- .../registry/routes/api/chat/route.ts | 0 .../registry}/registry/schema.ts | 0 .../registry}/scripts/build-registry.ts | 4 +- .../registry}/tailwind.config.ts | 0 .../registry}/tsconfig.json | 0 apps/registry/vercel.json | 9 + packages/shadcn-registry/CHANGELOG.md | 7 - .../components/assistant-ui/thread.tsx | 11 -- pnpm-lock.yaml | 186 +++++++++--------- 39 files changed, 260 insertions(+), 128 deletions(-) create mode 100644 .github/workflows/registry.yaml create mode 100644 apps/docs/public/b/assistant-ui.json create mode 100644 apps/docs/public/b/chat/quick-start.json create mode 100644 apps/docs/public/b/edge-backend.json create mode 100644 apps/docs/public/b/markdown.json rename {packages/shadcn-registry => apps/registry}/.eslintrc.json (100%) create mode 100644 apps/registry/.gitignore rename {packages/shadcn-registry => apps/registry}/components.json (100%) rename {packages/shadcn-registry => apps/registry}/components/ui/assistant-ui/markdown-text.tsx (100%) rename {packages/shadcn-registry => apps/registry}/components/ui/assistant-ui/syntax-highlighter.tsx (100%) rename {packages/shadcn-registry => apps/registry}/components/ui/assistant-ui/thread.tsx (100%) rename {packages/shadcn-registry => apps/registry}/components/ui/assistant-ui/tooltip-icon-button.tsx (100%) rename {packages/shadcn-registry => apps/registry}/components/ui/avatar.tsx (100%) rename {packages/shadcn-registry => apps/registry}/components/ui/button.tsx (100%) rename {packages/shadcn-registry => apps/registry}/components/ui/resizable.tsx (100%) rename {packages/shadcn-registry => apps/registry}/components/ui/tooltip.tsx (100%) rename {packages/shadcn-registry => apps/registry}/lib/utils.ts (100%) rename {packages/shadcn-registry => apps/registry}/package.json (93%) rename {packages/shadcn-registry => apps/registry}/registry/assistant-ui/assistant-modal.tsx (100%) rename {packages/shadcn-registry => apps/registry}/registry/assistant-ui/assistant-sidebar.tsx (100%) rename {packages/shadcn-registry => apps/registry}/registry/assistant-ui/full/thread.tsx (100%) rename {packages/shadcn-registry => apps/registry}/registry/assistant-ui/markdown-text.tsx (100%) rename {packages/shadcn-registry => apps/registry}/registry/assistant-ui/syntax-highlighter.tsx (100%) rename {packages/shadcn-registry => apps/registry}/registry/assistant-ui/thread.tsx (100%) rename {packages/shadcn-registry => apps/registry}/registry/assistant-ui/tooltip-icon-button.tsx (100%) create mode 100644 apps/registry/registry/components/assistant-ui/thread.tsx rename {packages/shadcn-registry => apps/registry}/registry/registry.ts (64%) rename {packages/shadcn-registry => apps/registry}/registry/routes/api/chat/route.ts (100%) rename {packages/shadcn-registry => apps/registry}/registry/schema.ts (100%) rename {packages/shadcn-registry => apps/registry}/scripts/build-registry.ts (88%) rename {packages/shadcn-registry => apps/registry}/tailwind.config.ts (100%) rename {packages/shadcn-registry => apps/registry}/tsconfig.json (100%) create mode 100644 apps/registry/vercel.json delete mode 100644 packages/shadcn-registry/CHANGELOG.md delete mode 100644 packages/shadcn-registry/registry/components/assistant-ui/thread.tsx diff --git a/.github/workflows/changeset.yaml b/.github/workflows/changeset.yaml index dcffbac56..b0a703394 100644 --- a/.github/workflows/changeset.yaml +++ b/.github/workflows/changeset.yaml @@ -18,7 +18,7 @@ jobs: version: runs-on: ubuntu-latest steps: - - name: checkout code repository + - name: Checkout code repository uses: actions/checkout@v4 with: fetch-depth: 1 @@ -26,7 +26,7 @@ jobs: - name: Install pnpm uses: pnpm/action-setup@v4 - - name: setup node.js + - name: Setup node.js uses: actions/setup-node@v4 with: node-version: 20 @@ -40,10 +40,10 @@ jobs: restore-keys: | ${{ runner.os }}-turbo- - - name: install dependencies + - name: Install dependencies run: pnpm install --frozen-lockfile - - name: create and publish versions + - name: Create and publish versions uses: changesets/action@v1 with: commit: "chore: update versions" diff --git a/.github/workflows/registry.yaml b/.github/workflows/registry.yaml new file mode 100644 index 000000000..e8428e00f --- /dev/null +++ b/.github/workflows/registry.yaml @@ -0,0 +1,44 @@ +name: Deploy Shadcn Registry +env: + VERCEL_ORG_ID: ${{ secrets.VERCEL_ORG_ID }} + VERCEL_PROJECT_ID: ${{ secrets.VERCEL_REGISTRY_PROJECT_ID }} +on: + push: + branches: + - main + paths: + - apps/registry/** + +jobs: + Deploy-Production: + runs-on: ubuntu-latest + steps: + - name: Checkout code repository + uses: actions/checkout@v4 + with: + fetch-depth: 1 + + - name: Install pnpm + uses: pnpm/action-setup@v4 + + - name: Setup node.js + uses: actions/setup-node@v4 + with: + node-version: 20 + cache: "pnpm" + + - name: Install Vercel CLI + run: npm install --global vercel@latest + + - name: Install dependencies + run: pnpm install --frozen-lockfile + + - name: Pull Vercel Environment Information + working-directory: apps/registry + run: vercel pull --yes --environment=production --token=${{ secrets.VERCEL_TOKEN }} + - name: Build Project Artifacts + working-directory: apps/registry + run: vercel build --prod --token=${{ secrets.VERCEL_TOKEN }} + - name: Deploy Project Artifacts to Vercel + working-directory: apps/registry + run: vercel deploy --prebuilt --prod --token=${{ secrets.VERCEL_TOKEN }} diff --git a/.gitignore b/.gitignore index 9b61f34c3..bb83d8a5d 100644 --- a/.gitignore +++ b/.gitignore @@ -33,7 +33,7 @@ out/ # production build dist -apps/docs/public/b/ +apps/shadcn-registry/dist/ generated # turbo diff --git a/apps/docs/package.json b/apps/docs/package.json index 393894152..6f666f892 100644 --- a/apps/docs/package.json +++ b/apps/docs/package.json @@ -3,9 +3,8 @@ "version": "0.0.0", "private": true, "scripts": { - "build": "pnpm run build:registry && pnpm build:docs && next build", + "build": "pnpm build:docs && next build", "build:docs": "tsx ./scripts/generate-docs.mts", - "build:registry": "pnpm --filter @assistant-ui/shadcn-registry run build:registry", "dev": "next dev --turbo", "start": "next start", "lint": "next lint" diff --git a/apps/docs/public/b/assistant-ui.json b/apps/docs/public/b/assistant-ui.json new file mode 100644 index 000000000..86a8708d1 --- /dev/null +++ b/apps/docs/public/b/assistant-ui.json @@ -0,0 +1,17 @@ +{ + "name": "assistant-ui", + "type": "registry:component", + "registryDependencies": [], + "tailwind": { + "config": { + "plugins": [ + "require(\"tailwindcss-animate\")", + "require(\"@assistant-ui/react/tailwindcss\")({ shadcn: true })" + ] + } + }, + "dependencies": [ + "tailwindcss-animate", + "@assistant-ui/react" + ] +} \ No newline at end of file diff --git a/apps/docs/public/b/chat/quick-start.json b/apps/docs/public/b/chat/quick-start.json new file mode 100644 index 000000000..dc3044f62 --- /dev/null +++ b/apps/docs/public/b/chat/quick-start.json @@ -0,0 +1,16 @@ +{ + "name": "chat/quick-start", + "type": "registry:block", + "files": [ + { + "content": "\"use client\";\n\nimport { useEdgeRuntime, Thread } from \"@assistant-ui/react\";\n\nexport const MyAssistant = () => {\n const runtime = useEdgeRuntime({\n api: \"/api/chat\",\n });\n\n return ;\n};\n", + "type": "registry:component", + "path": "components/assistant-ui/thread.tsx" + } + ], + "registryDependencies": [ + "https://assistant-ui.com/r/assistant-ui", + "https://assistant-ui.com/r/markdown", + "https://assistant-ui.com/r/edge-backend" + ] +} \ No newline at end of file diff --git a/apps/docs/public/b/edge-backend.json b/apps/docs/public/b/edge-backend.json new file mode 100644 index 000000000..8f3ebd2e4 --- /dev/null +++ b/apps/docs/public/b/edge-backend.json @@ -0,0 +1,17 @@ +{ + "name": "edge-backend", + "type": "registry:block", + "files": [ + { + "content": "import { openai } from \"@ai-sdk/openai\";\nimport { getEdgeRuntimeResponse } from \"@assistant-ui/react/edge\";\n\nexport const maxDuration = 30;\n\nexport const POST = async (request: Request) => {\n const requestData = await request.json();\n\n return getEdgeRuntimeResponse({\n options: {\n model: openai(\"gpt-4o\"),\n },\n requestData,\n abortSignal: request.signal,\n });\n};\n", + "type": "registry:page", + "path": "routes/api/chat/route.ts" + } + ], + "registryDependencies": [ + "https://assistant-ui.com/r/assistant-ui" + ], + "dependencies": [ + "@ai-sdk/openai" + ] +} \ No newline at end of file diff --git a/apps/docs/public/b/markdown.json b/apps/docs/public/b/markdown.json new file mode 100644 index 000000000..e787fb52f --- /dev/null +++ b/apps/docs/public/b/markdown.json @@ -0,0 +1,17 @@ +{ + "name": "markdown", + "type": "registry:component", + "registryDependencies": [ + "https://assistant-ui.com/r/assistant-ui" + ], + "tailwind": { + "config": { + "plugins": [ + "require(\"@assistant-ui/react-markdown/tailwindcss\")" + ] + } + }, + "dependencies": [ + "@assistant-ui/react-markdown" + ] +} \ No newline at end of file diff --git a/packages/shadcn-registry/.eslintrc.json b/apps/registry/.eslintrc.json similarity index 100% rename from packages/shadcn-registry/.eslintrc.json rename to apps/registry/.eslintrc.json diff --git a/apps/registry/.gitignore b/apps/registry/.gitignore new file mode 100644 index 000000000..e985853ed --- /dev/null +++ b/apps/registry/.gitignore @@ -0,0 +1 @@ +.vercel diff --git a/packages/shadcn-registry/components.json b/apps/registry/components.json similarity index 100% rename from packages/shadcn-registry/components.json rename to apps/registry/components.json diff --git a/packages/shadcn-registry/components/ui/assistant-ui/markdown-text.tsx b/apps/registry/components/ui/assistant-ui/markdown-text.tsx similarity index 100% rename from packages/shadcn-registry/components/ui/assistant-ui/markdown-text.tsx rename to apps/registry/components/ui/assistant-ui/markdown-text.tsx diff --git a/packages/shadcn-registry/components/ui/assistant-ui/syntax-highlighter.tsx b/apps/registry/components/ui/assistant-ui/syntax-highlighter.tsx similarity index 100% rename from packages/shadcn-registry/components/ui/assistant-ui/syntax-highlighter.tsx rename to apps/registry/components/ui/assistant-ui/syntax-highlighter.tsx diff --git a/packages/shadcn-registry/components/ui/assistant-ui/thread.tsx b/apps/registry/components/ui/assistant-ui/thread.tsx similarity index 100% rename from packages/shadcn-registry/components/ui/assistant-ui/thread.tsx rename to apps/registry/components/ui/assistant-ui/thread.tsx diff --git a/packages/shadcn-registry/components/ui/assistant-ui/tooltip-icon-button.tsx b/apps/registry/components/ui/assistant-ui/tooltip-icon-button.tsx similarity index 100% rename from packages/shadcn-registry/components/ui/assistant-ui/tooltip-icon-button.tsx rename to apps/registry/components/ui/assistant-ui/tooltip-icon-button.tsx diff --git a/packages/shadcn-registry/components/ui/avatar.tsx b/apps/registry/components/ui/avatar.tsx similarity index 100% rename from packages/shadcn-registry/components/ui/avatar.tsx rename to apps/registry/components/ui/avatar.tsx diff --git a/packages/shadcn-registry/components/ui/button.tsx b/apps/registry/components/ui/button.tsx similarity index 100% rename from packages/shadcn-registry/components/ui/button.tsx rename to apps/registry/components/ui/button.tsx diff --git a/packages/shadcn-registry/components/ui/resizable.tsx b/apps/registry/components/ui/resizable.tsx similarity index 100% rename from packages/shadcn-registry/components/ui/resizable.tsx rename to apps/registry/components/ui/resizable.tsx diff --git a/packages/shadcn-registry/components/ui/tooltip.tsx b/apps/registry/components/ui/tooltip.tsx similarity index 100% rename from packages/shadcn-registry/components/ui/tooltip.tsx rename to apps/registry/components/ui/tooltip.tsx diff --git a/packages/shadcn-registry/lib/utils.ts b/apps/registry/lib/utils.ts similarity index 100% rename from packages/shadcn-registry/lib/utils.ts rename to apps/registry/lib/utils.ts diff --git a/packages/shadcn-registry/package.json b/apps/registry/package.json similarity index 93% rename from packages/shadcn-registry/package.json rename to apps/registry/package.json index d1d89ed1c..5d2e4bd61 100644 --- a/packages/shadcn-registry/package.json +++ b/apps/registry/package.json @@ -1,6 +1,6 @@ { "name": "@assistant-ui/shadcn-registry", - "version": "0.0.2", + "version": "0.0.1", "private": true, "license": "MIT", "type": "module", @@ -37,6 +37,6 @@ "zod": "^3.23.8" }, "scripts": { - "build:registry": "tsx ./scripts/build-registry.ts" + "build": "tsx ./scripts/build-registry.ts" } } diff --git a/packages/shadcn-registry/registry/assistant-ui/assistant-modal.tsx b/apps/registry/registry/assistant-ui/assistant-modal.tsx similarity index 100% rename from packages/shadcn-registry/registry/assistant-ui/assistant-modal.tsx rename to apps/registry/registry/assistant-ui/assistant-modal.tsx diff --git a/packages/shadcn-registry/registry/assistant-ui/assistant-sidebar.tsx b/apps/registry/registry/assistant-ui/assistant-sidebar.tsx similarity index 100% rename from packages/shadcn-registry/registry/assistant-ui/assistant-sidebar.tsx rename to apps/registry/registry/assistant-ui/assistant-sidebar.tsx diff --git a/packages/shadcn-registry/registry/assistant-ui/full/thread.tsx b/apps/registry/registry/assistant-ui/full/thread.tsx similarity index 100% rename from packages/shadcn-registry/registry/assistant-ui/full/thread.tsx rename to apps/registry/registry/assistant-ui/full/thread.tsx diff --git a/packages/shadcn-registry/registry/assistant-ui/markdown-text.tsx b/apps/registry/registry/assistant-ui/markdown-text.tsx similarity index 100% rename from packages/shadcn-registry/registry/assistant-ui/markdown-text.tsx rename to apps/registry/registry/assistant-ui/markdown-text.tsx diff --git a/packages/shadcn-registry/registry/assistant-ui/syntax-highlighter.tsx b/apps/registry/registry/assistant-ui/syntax-highlighter.tsx similarity index 100% rename from packages/shadcn-registry/registry/assistant-ui/syntax-highlighter.tsx rename to apps/registry/registry/assistant-ui/syntax-highlighter.tsx diff --git a/packages/shadcn-registry/registry/assistant-ui/thread.tsx b/apps/registry/registry/assistant-ui/thread.tsx similarity index 100% rename from packages/shadcn-registry/registry/assistant-ui/thread.tsx rename to apps/registry/registry/assistant-ui/thread.tsx diff --git a/packages/shadcn-registry/registry/assistant-ui/tooltip-icon-button.tsx b/apps/registry/registry/assistant-ui/tooltip-icon-button.tsx similarity index 100% rename from packages/shadcn-registry/registry/assistant-ui/tooltip-icon-button.tsx rename to apps/registry/registry/assistant-ui/tooltip-icon-button.tsx diff --git a/apps/registry/registry/components/assistant-ui/thread.tsx b/apps/registry/registry/components/assistant-ui/thread.tsx new file mode 100644 index 000000000..e01538eff --- /dev/null +++ b/apps/registry/registry/components/assistant-ui/thread.tsx @@ -0,0 +1,19 @@ +"use client"; + +import { useEdgeRuntime, Thread } from "@assistant-ui/react"; +import { makeMarkdownText } from "@assistant-ui/react-markdown"; + +const MarkdownText = makeMarkdownText(); + +export const MyAssistant = () => { + const runtime = useEdgeRuntime({ + api: "/api/chat", + }); + + return ( + + ); +}; diff --git a/packages/shadcn-registry/registry/registry.ts b/apps/registry/registry/registry.ts similarity index 64% rename from packages/shadcn-registry/registry/registry.ts rename to apps/registry/registry/registry.ts index b60ec619c..72bc06227 100644 --- a/packages/shadcn-registry/registry/registry.ts +++ b/apps/registry/registry/registry.ts @@ -18,7 +18,7 @@ export const registry: RegistryItem[] = [ { name: "markdown", type: "registry:component", - registryDependencies: ["https://assistant-ui.com/r/assistant-ui"], + registryDependencies: ["https://r.assistant-ui.com/assistant-ui"], tailwind: { config: { plugins: [`require("@assistant-ui/react-markdown/tailwindcss")`], @@ -26,6 +26,17 @@ export const registry: RegistryItem[] = [ }, dependencies: ["@assistant-ui/react-markdown"], }, + { + name: "trieve", + type: "registry:component", + registryDependencies: ["https://r.assistant-ui.com/assistant-ui"], + tailwind: { + config: { + plugins: [`require("@assistant-ui/react-trieve/tailwindcss")`], + }, + }, + dependencies: ["@assistant-ui/react-trieve"], + }, { name: "edge-backend", type: "registry:block", @@ -35,11 +46,11 @@ export const registry: RegistryItem[] = [ path: "routes/api/chat/route.ts", }, ], - registryDependencies: ["https://assistant-ui.com/r/assistant-ui"], + registryDependencies: ["https://r.assistant-ui.com/assistant-ui"], dependencies: ["@ai-sdk/openai"], }, { - name: "chat/quick-start", + name: "quick-start", type: "registry:block", files: [ { @@ -48,9 +59,9 @@ export const registry: RegistryItem[] = [ }, ], registryDependencies: [ - "https://assistant-ui.com/r/assistant-ui", - "https://assistant-ui.com/r/markdown", - "https://assistant-ui.com/r/edge-backend", + "https://r.assistant-ui.com/assistant-ui", + "https://r.assistant-ui.com/markdown", + "https://r.assistant-ui.com/edge-backend", ], }, ]; diff --git a/packages/shadcn-registry/registry/routes/api/chat/route.ts b/apps/registry/registry/routes/api/chat/route.ts similarity index 100% rename from packages/shadcn-registry/registry/routes/api/chat/route.ts rename to apps/registry/registry/routes/api/chat/route.ts diff --git a/packages/shadcn-registry/registry/schema.ts b/apps/registry/registry/schema.ts similarity index 100% rename from packages/shadcn-registry/registry/schema.ts rename to apps/registry/registry/schema.ts diff --git a/packages/shadcn-registry/scripts/build-registry.ts b/apps/registry/scripts/build-registry.ts similarity index 88% rename from packages/shadcn-registry/scripts/build-registry.ts rename to apps/registry/scripts/build-registry.ts index 8d770383f..7d24dfc24 100644 --- a/packages/shadcn-registry/scripts/build-registry.ts +++ b/apps/registry/scripts/build-registry.ts @@ -1,9 +1,9 @@ import { promises as fs, readFileSync } from "node:fs"; -import path from "node:path"; +import * as path from "node:path"; import { registry } from "../registry/registry"; import { RegistryItem } from "@/registry/schema"; -const REGISTRY_PATH = path.join(process.cwd(), "../../apps/docs/public/b"); +const REGISTRY_PATH = path.join(process.cwd(), "dist"); async function buildRegistry(registry: RegistryItem[]) { await fs.mkdir(REGISTRY_PATH, { recursive: true }); diff --git a/packages/shadcn-registry/tailwind.config.ts b/apps/registry/tailwind.config.ts similarity index 100% rename from packages/shadcn-registry/tailwind.config.ts rename to apps/registry/tailwind.config.ts diff --git a/packages/shadcn-registry/tsconfig.json b/apps/registry/tsconfig.json similarity index 100% rename from packages/shadcn-registry/tsconfig.json rename to apps/registry/tsconfig.json diff --git a/apps/registry/vercel.json b/apps/registry/vercel.json new file mode 100644 index 000000000..151ad14a8 --- /dev/null +++ b/apps/registry/vercel.json @@ -0,0 +1,9 @@ +{ + "rewrites": [ + { + "source": "/:name", + "destination": "/:name.json" + } + ], + "outputDirectory": "dist" +} diff --git a/packages/shadcn-registry/CHANGELOG.md b/packages/shadcn-registry/CHANGELOG.md deleted file mode 100644 index c31b59c1e..000000000 --- a/packages/shadcn-registry/CHANGELOG.md +++ /dev/null @@ -1,7 +0,0 @@ -# @assistant-ui/shadcn-registry - -## 0.0.2 - -### Patch Changes - -- 9a55735: chore: update deps diff --git a/packages/shadcn-registry/registry/components/assistant-ui/thread.tsx b/packages/shadcn-registry/registry/components/assistant-ui/thread.tsx deleted file mode 100644 index 866991c62..000000000 --- a/packages/shadcn-registry/registry/components/assistant-ui/thread.tsx +++ /dev/null @@ -1,11 +0,0 @@ -"use client"; - -import { useEdgeRuntime, Thread } from "@assistant-ui/react"; - -export const MyAssistant = () => { - const runtime = useEdgeRuntime({ - api: "/api/chat", - }); - - return ; -}; diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index a77f73951..a8447e2ac 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -172,6 +172,99 @@ importers: specifier: ^5.6.3 version: 5.6.3 + apps/registry: + devDependencies: + '@ai-sdk/openai': + specifier: ^0.0.68 + version: 0.0.68(zod@3.23.8) + '@assistant-ui/react': + specifier: workspace:* + version: link:../../packages/react + '@assistant-ui/react-markdown': + specifier: workspace:* + version: link:../../packages/react-markdown + '@assistant-ui/react-syntax-highlighter': + specifier: workspace:* + version: link:../../packages/react-syntax-highlighter + '@assistant-ui/tsconfig': + specifier: workspace:* + version: link:../../packages/tsconfig + '@radix-ui/react-avatar': + specifier: ^1.1.1 + version: 1.1.1(@types/react-dom@18.3.1)(@types/react@18.3.12)(react-dom@19.0.0-rc-69d4b800-20241021(react@19.0.0-rc-69d4b800-20241021))(react@19.0.0-rc-69d4b800-20241021) + '@radix-ui/react-icons': + specifier: ^1.3.0 + version: 1.3.0(react@19.0.0-rc-69d4b800-20241021) + '@radix-ui/react-popover': + specifier: ^1.1.2 + version: 1.1.2(@types/react-dom@18.3.1)(@types/react@18.3.12)(react-dom@19.0.0-rc-69d4b800-20241021(react@19.0.0-rc-69d4b800-20241021))(react@19.0.0-rc-69d4b800-20241021) + '@radix-ui/react-slot': + specifier: ^1.1.0 + version: 1.1.0(@types/react@18.3.12)(react@19.0.0-rc-69d4b800-20241021) + '@radix-ui/react-tooltip': + specifier: ^1.1.3 + version: 1.1.3(@types/react-dom@18.3.1)(@types/react@18.3.12)(react-dom@19.0.0-rc-69d4b800-20241021(react@19.0.0-rc-69d4b800-20241021))(react@19.0.0-rc-69d4b800-20241021) + '@types/node': + specifier: ^22.7.9 + version: 22.7.9 + '@types/react': + specifier: ^18 + version: 18.3.12 + '@types/react-syntax-highlighter': + specifier: ^15.5.13 + version: 15.5.13 + class-variance-authority: + specifier: ^0.7.0 + version: 0.7.0 + clsx: + specifier: ^2.1.1 + version: 2.1.1 + eslint: + specifier: ^9 + version: 9.13.0(jiti@1.21.6) + lucide-react: + specifier: ^0.453.0 + version: 0.453.0(react@19.0.0-rc-69d4b800-20241021) + react: + specifier: 19.0.0-rc-69d4b800-20241021 + version: 19.0.0-rc-69d4b800-20241021 + react-resizable-panels: + specifier: ^2.1.5 + version: 2.1.5(react-dom@19.0.0-rc-69d4b800-20241021(react@19.0.0-rc-69d4b800-20241021))(react@19.0.0-rc-69d4b800-20241021) + react-syntax-highlighter: + specifier: ^15.6.1 + version: 15.6.1(react@19.0.0-rc-69d4b800-20241021) + rehype-katex: + specifier: ^7.0.1 + version: 7.0.1 + remark-gfm: + specifier: ^4.0.0 + version: 4.0.0 + remark-math: + specifier: ^6.0.0 + version: 6.0.0 + rimraf: + specifier: ^6.0.1 + version: 6.0.1 + tailwind-merge: + specifier: ^2.5.4 + version: 2.5.4 + tailwindcss: + specifier: ^3.4.14 + version: 3.4.14 + tailwindcss-animate: + specifier: ^1.0.7 + version: 1.0.7(tailwindcss@3.4.14) + tsx: + specifier: ^4.19.1 + version: 4.19.1 + typescript: + specifier: ^5.6.3 + version: 5.6.3 + zod: + specifier: ^3.23.8 + version: 3.23.8 + examples/local-ollama: dependencies: '@assistant-ui/react': @@ -1576,99 +1669,6 @@ importers: specifier: ^4.19.1 version: 4.19.1 - packages/shadcn-registry: - devDependencies: - '@ai-sdk/openai': - specifier: ^0.0.68 - version: 0.0.68(zod@3.23.8) - '@assistant-ui/react': - specifier: workspace:* - version: link:../react - '@assistant-ui/react-markdown': - specifier: workspace:* - version: link:../react-markdown - '@assistant-ui/react-syntax-highlighter': - specifier: workspace:* - version: link:../react-syntax-highlighter - '@assistant-ui/tsconfig': - specifier: workspace:* - version: link:../tsconfig - '@radix-ui/react-avatar': - specifier: ^1.1.1 - version: 1.1.1(@types/react-dom@18.3.1)(@types/react@18.3.12)(react-dom@19.0.0-rc-69d4b800-20241021(react@19.0.0-rc-69d4b800-20241021))(react@19.0.0-rc-69d4b800-20241021) - '@radix-ui/react-icons': - specifier: ^1.3.0 - version: 1.3.0(react@19.0.0-rc-69d4b800-20241021) - '@radix-ui/react-popover': - specifier: ^1.1.2 - version: 1.1.2(@types/react-dom@18.3.1)(@types/react@18.3.12)(react-dom@19.0.0-rc-69d4b800-20241021(react@19.0.0-rc-69d4b800-20241021))(react@19.0.0-rc-69d4b800-20241021) - '@radix-ui/react-slot': - specifier: ^1.1.0 - version: 1.1.0(@types/react@18.3.12)(react@19.0.0-rc-69d4b800-20241021) - '@radix-ui/react-tooltip': - specifier: ^1.1.3 - version: 1.1.3(@types/react-dom@18.3.1)(@types/react@18.3.12)(react-dom@19.0.0-rc-69d4b800-20241021(react@19.0.0-rc-69d4b800-20241021))(react@19.0.0-rc-69d4b800-20241021) - '@types/node': - specifier: ^22.7.9 - version: 22.7.9 - '@types/react': - specifier: ^18 - version: 18.3.12 - '@types/react-syntax-highlighter': - specifier: ^15.5.13 - version: 15.5.13 - class-variance-authority: - specifier: ^0.7.0 - version: 0.7.0 - clsx: - specifier: ^2.1.1 - version: 2.1.1 - eslint: - specifier: ^9 - version: 9.13.0(jiti@1.21.6) - lucide-react: - specifier: ^0.453.0 - version: 0.453.0(react@19.0.0-rc-69d4b800-20241021) - react: - specifier: 19.0.0-rc-69d4b800-20241021 - version: 19.0.0-rc-69d4b800-20241021 - react-resizable-panels: - specifier: ^2.1.5 - version: 2.1.5(react-dom@19.0.0-rc-69d4b800-20241021(react@19.0.0-rc-69d4b800-20241021))(react@19.0.0-rc-69d4b800-20241021) - react-syntax-highlighter: - specifier: ^15.6.1 - version: 15.6.1(react@19.0.0-rc-69d4b800-20241021) - rehype-katex: - specifier: ^7.0.1 - version: 7.0.1 - remark-gfm: - specifier: ^4.0.0 - version: 4.0.0 - remark-math: - specifier: ^6.0.0 - version: 6.0.0 - rimraf: - specifier: ^6.0.1 - version: 6.0.1 - tailwind-merge: - specifier: ^2.5.4 - version: 2.5.4 - tailwindcss: - specifier: ^3.4.14 - version: 3.4.14 - tailwindcss-animate: - specifier: ^1.0.7 - version: 1.0.7(tailwindcss@3.4.14) - tsx: - specifier: ^4.19.1 - version: 4.19.1 - typescript: - specifier: ^5.6.3 - version: 5.6.3 - zod: - specifier: ^3.23.8 - version: 3.23.8 - packages/tailwindcss-transformer: dependencies: postcss: