Skip to content

Commit 450429a

Browse files
authored
Merge pull request #3780 from udecode/sync/template
Sync/template
2 parents b772f19 + 3eea07f commit 450429a

30 files changed

+1568
-109
lines changed

apps/www/src/registry/default/plate-ui/media-placeholder-element.tsx

+5-1
Original file line numberDiff line numberDiff line change
@@ -6,6 +6,11 @@ import type { ReactNode } from 'react';
66
import type { TPlaceholderElement } from '@udecode/plate-media';
77

88
import { cn } from '@udecode/cn';
9+
import {
10+
insertNodes,
11+
removeNodes,
12+
withoutSavingHistory,
13+
} from '@udecode/plate-common';
914
import {
1015
findNodePath,
1116
useEditorPlugin,
@@ -21,7 +26,6 @@ import {
2126
VideoPlugin,
2227
updateUploadHistory,
2328
} from '@udecode/plate-media/react';
24-
import { insertNodes, removeNodes, withoutSavingHistory } from '@udecode/slate';
2529
import { AudioLines, FileUp, Film, ImageIcon } from 'lucide-react';
2630
import { useFilePicker } from 'use-file-picker';
2731

apps/www/src/registry/default/plate-ui/media-toolbar-button.tsx

+20-23
Original file line numberDiff line numberDiff line change
@@ -5,15 +5,14 @@ import React, { useCallback, useEffect, useState } from 'react';
55
import type { DropdownMenuProps } from '@radix-ui/react-dropdown-menu';
66

77
import { cn } from '@udecode/cn';
8-
import { useEditorRef } from '@udecode/plate-core/react';
8+
import { insertNodes } from '@udecode/plate-common';
9+
import { focusEditor, useEditorRef } from '@udecode/plate-common/react';
910
import {
1011
AudioPlugin,
1112
FilePlugin,
1213
ImagePlugin,
1314
VideoPlugin,
1415
} from '@udecode/plate-media/react';
15-
import { insertNodes } from '@udecode/slate';
16-
import { focusEditor } from '@udecode/slate-react';
1716
import {
1817
AudioLinesIcon,
1918
FileUpIcon,
@@ -171,26 +170,24 @@ export function MediaToolbarButton({
171170
<AlertDialogContent>
172171
<AlertDialogHeader>
173172
<AlertDialogTitle>{currentConfig.title}</AlertDialogTitle>
174-
<AlertDialogDescription className="flex items-center gap-2">
175-
<div className="group relative w-full">
176-
<label
177-
className="absolute top-1/2 block -translate-y-1/2 cursor-text px-1 text-sm text-muted-foreground/70 transition-all group-focus-within:pointer-events-none group-focus-within:top-0 group-focus-within:cursor-default group-focus-within:text-xs group-focus-within:font-medium group-focus-within:text-foreground has-[+input:not(:placeholder-shown)]:pointer-events-none has-[+input:not(:placeholder-shown)]:top-0 has-[+input:not(:placeholder-shown)]:cursor-default has-[+input:not(:placeholder-shown)]:text-xs has-[+input:not(:placeholder-shown)]:font-medium has-[+input:not(:placeholder-shown)]:text-foreground"
178-
htmlFor="input-32"
179-
>
180-
<span className="inline-flex bg-background px-2">URL</span>
181-
</label>
182-
<Input
183-
id="input-32"
184-
value={url}
185-
onChange={(e) => setUrl(e.target.value)}
186-
onKeyDown={(e) => {
187-
if (e.key === 'Enter') embedMedia();
188-
}}
189-
placeholder=""
190-
type="email"
191-
autoFocus
192-
/>
193-
</div>
173+
<AlertDialogDescription className="group relative flex w-full items-center gap-2">
174+
<label
175+
className="absolute top-1/2 block -translate-y-1/2 cursor-text px-1 text-sm text-muted-foreground/70 transition-all group-focus-within:pointer-events-none group-focus-within:top-0 group-focus-within:cursor-default group-focus-within:text-xs group-focus-within:font-medium group-focus-within:text-foreground has-[+input:not(:placeholder-shown)]:pointer-events-none has-[+input:not(:placeholder-shown)]:top-0 has-[+input:not(:placeholder-shown)]:cursor-default has-[+input:not(:placeholder-shown)]:text-xs has-[+input:not(:placeholder-shown)]:font-medium has-[+input:not(:placeholder-shown)]:text-foreground"
176+
htmlFor="input-32"
177+
>
178+
<span className="inline-flex bg-background px-2">URL</span>
179+
</label>
180+
<Input
181+
id="input-32"
182+
value={url}
183+
onChange={(e) => setUrl(e.target.value)}
184+
onKeyDown={(e) => {
185+
if (e.key === 'Enter') embedMedia();
186+
}}
187+
placeholder=""
188+
type="email"
189+
autoFocus
190+
/>
194191
</AlertDialogDescription>
195192
</AlertDialogHeader>
196193
<AlertDialogFooter>

apps/www/src/registry/default/plate-ui/media-upload-toast.tsx

+1-1
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
import { useEffect } from 'react';
22

3-
import { useEditorRef } from '@udecode/plate-core/react';
3+
import { useEditorRef } from '@udecode/plate-common/react';
44
import { PlaceholderPlugin, UploadErrorCode } from '@udecode/plate-media/react';
55
import { toast } from 'sonner';
66

Original file line numberDiff line numberDiff line change
@@ -0,0 +1,2 @@
1+
OPENAI_API_KEY=
2+
UPLOADTHING_TOKEN=

templates/plate-playground-template/README.md

+1
Original file line numberDiff line numberDiff line change
@@ -41,6 +41,7 @@ cp .env.example .env.local
4141
Configure `.env.local`:
4242

4343
- `OPENAI_API_KEY` – OpenAI API key ([get one here](https://platform.openai.com/account/api-keys))
44+
- `UPLOADTHING_TOKEN` – UploadThing API key ([get one here](https://uploadthing.com/dashboard)) You can also using your own backend
4445

4546
Start the development server:
4647

templates/plate-playground-template/package.json

+12-5
Original file line numberDiff line numberDiff line change
@@ -20,14 +20,15 @@
2020
"@radix-ui/react-checkbox": "^1.1.2",
2121
"@radix-ui/react-context-menu": "^2.2.2",
2222
"@radix-ui/react-dialog": "^1.1.2",
23+
"@radix-ui/react-alert-dialog": "^1.1.1",
2324
"@radix-ui/react-dropdown-menu": "^2.1.2",
2425
"@radix-ui/react-popover": "^1.1.2",
2526
"@radix-ui/react-separator": "^1.1.0",
2627
"@radix-ui/react-slot": "^1.1.0",
2728
"@radix-ui/react-toolbar": "^1.1.0",
2829
"@radix-ui/react-tooltip": "^1.1.3",
2930
"@udecode/cn": "^39.0.0",
30-
"@udecode/plate-ai": "40.0.4",
31+
"@udecode/plate-ai": "40.1.0",
3132
"@udecode/plate-alignment": "^40.0.0",
3233
"@udecode/plate-autoformat": "^40.0.0",
3334
"@udecode/plate-basic-elements": "^40.0.2",
@@ -43,7 +44,7 @@
4344
"@udecode/plate-cursor": "^40.0.0",
4445
"@udecode/plate-date": "^40.0.0",
4546
"@udecode/plate-dnd": "40.0.0",
46-
"@udecode/plate-docx": "40.0.2",
47+
"@udecode/plate-docx": "40.2.0",
4748
"@udecode/plate-emoji": "^40.0.0",
4849
"@udecode/plate-excalidraw": "^40.0.0",
4950
"@udecode/plate-floating": "^40.0.0",
@@ -58,20 +59,26 @@
5859
"@udecode/plate-layout": "^40.0.0",
5960
"@udecode/plate-line-height": "^40.0.0",
6061
"@udecode/plate-link": "^40.0.0",
61-
"@udecode/plate-markdown": "^40.0.4",
62+
"@udecode/plate-markdown": "40.0.5",
6263
"@udecode/plate-math": "^40.0.0",
63-
"@udecode/plate-media": "40.0.0",
64+
"@udecode/plate-media": "40.2.0",
6465
"@udecode/plate-mention": "40.0.0",
6566
"@udecode/plate-node-id": "^40.0.0",
6667
"@udecode/plate-reset-node": "^40.0.0",
6768
"@udecode/plate-resizable": "^40.0.0",
6869
"@udecode/plate-select": "^40.0.0",
69-
"@udecode/plate-selection": "^40.0.0",
70+
"@udecode/plate-selection": "40.1.0",
7071
"@udecode/plate-slash-command": "^40.0.0",
7172
"@udecode/plate-tabbable": "^40.0.0",
7273
"@udecode/plate-table": "^40.0.0",
7374
"@udecode/plate-toggle": "^40.0.0",
7475
"@udecode/plate-trailing-block": "^40.0.0",
76+
"@uploadthing/react": "7.1.0",
77+
"uploadthing": "7.2.0",
78+
"zod": "^3.23.8",
79+
"react-player": "^2.16.0",
80+
"sonner": "^1.5.0",
81+
"use-file-picker": "^2.1.2",
7582
"ai": "^3.4.33",
7683
"class-variance-authority": "0.7.0",
7784
"clsx": "^2.1.1",

0 commit comments

Comments
 (0)