@delmaredigital/payload-puck 0.6.6 → 0.6.7
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/fields/richtext/controls/ColorPickerControl.d.ts.map +1 -1
- package/dist/fields/richtext/controls/ColorPickerControl.js +17 -18
- package/dist/fields/richtext/controls/ColorPickerControl.js.map +1 -1
- package/dist/fields/richtext/controls/DropdownPortal.d.ts +16 -9
- package/dist/fields/richtext/controls/DropdownPortal.d.ts.map +1 -1
- package/dist/fields/richtext/controls/DropdownPortal.js +13 -87
- package/dist/fields/richtext/controls/DropdownPortal.js.map +1 -1
- package/dist/fields/richtext/controls/FontSizeControl.d.ts.map +1 -1
- package/dist/fields/richtext/controls/FontSizeControl.js +19 -22
- package/dist/fields/richtext/controls/FontSizeControl.js.map +1 -1
- package/dist/fields/richtext/controls/HighlightControl.d.ts.map +1 -1
- package/dist/fields/richtext/controls/HighlightControl.js +17 -18
- package/dist/fields/richtext/controls/HighlightControl.js.map +1 -1
- package/dist/fields/richtext/controls/shared.d.ts +0 -31
- package/dist/fields/richtext/controls/shared.d.ts.map +1 -1
- package/dist/fields/richtext/controls/shared.js +1 -53
- package/dist/fields/richtext/controls/shared.js.map +1 -1
- package/dist/version.d.ts +1 -1
- package/dist/version.js +1 -1
- package/package.json +2 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ColorPickerControl.d.ts","sourceRoot":"","sources":["../../../../src/fields/richtext/controls/ColorPickerControl.tsx"],"names":[],"mappings":"AAkBA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,eAAe,CAAA;AAE3C,UAAU,uBAAuB;IAC/B,MAAM,EAAE,MAAM,CAAA;IACd,YAAY,EAAE,MAAM,GAAG,SAAS,CAAA;CACjC;AAED,wBAAgB,kBAAkB,CAAC,EAAE,MAAM,EAAE,YAAY,EAAE,EAAE,uBAAuB,
|
|
1
|
+
{"version":3,"file":"ColorPickerControl.d.ts","sourceRoot":"","sources":["../../../../src/fields/richtext/controls/ColorPickerControl.tsx"],"names":[],"mappings":"AAkBA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,eAAe,CAAA;AAE3C,UAAU,uBAAuB;IAC/B,MAAM,EAAE,MAAM,CAAA;IACd,YAAY,EAAE,MAAM,GAAG,SAAS,CAAA;CACjC;AAED,wBAAgB,kBAAkB,CAAC,EAAE,MAAM,EAAE,YAAY,EAAE,EAAE,uBAAuB,2CA2DnF;AAMD,UAAU,qBAAqB;IAC7B,YAAY,EAAE,MAAM,GAAG,SAAS,CAAA;IAChC,aAAa,EAAE,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI,KAAK,IAAI,CAAA;IAC7C,OAAO,EAAE,MAAM,IAAI,CAAA;IACnB,IAAI,EAAE,MAAM,GAAG,WAAW,CAAA;IAC1B,WAAW,CAAC,EAAE,OAAO,CAAA;CACtB;AAED,wBAAgB,gBAAgB,CAAC,EAC/B,YAAY,EACZ,aAAa,EACb,OAAO,EACP,IAAI,EACJ,WAAkB,GACnB,EAAE,qBAAqB,2CAqLvB"}
|
|
@@ -10,14 +10,13 @@ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
|
10
10
|
* - Theme color presets
|
|
11
11
|
* - "Theme Color (Auto)" option for dark/light mode adaptation
|
|
12
12
|
*/
|
|
13
|
-
import { useState,
|
|
13
|
+
import { useState, useCallback } from 'react';
|
|
14
14
|
import { Palette, ChevronDown } from 'lucide-react';
|
|
15
15
|
import { useTheme } from '../../../theme';
|
|
16
|
-
import { parseColor, normalizeHex, hexToRgba, controlStyles
|
|
17
|
-
import {
|
|
16
|
+
import { parseColor, normalizeHex, hexToRgba, controlStyles } from './shared';
|
|
17
|
+
import { Dropdown } from './DropdownPortal';
|
|
18
18
|
export function ColorPickerControl({ editor, currentColor }) {
|
|
19
19
|
const [isOpen, setIsOpen] = useState(false);
|
|
20
|
-
const triggerRef = useRef(null);
|
|
21
20
|
const handleColorChange = useCallback((color) => {
|
|
22
21
|
if (color) {
|
|
23
22
|
editor.chain().focus().setColor(color).run();
|
|
@@ -25,23 +24,23 @@ export function ColorPickerControl({ editor, currentColor }) {
|
|
|
25
24
|
else {
|
|
26
25
|
editor.chain().focus().unsetColor().run();
|
|
27
26
|
}
|
|
28
|
-
forcePuckUpdate(editor);
|
|
29
27
|
}, [editor]);
|
|
30
28
|
const close = useCallback(() => setIsOpen(false), []);
|
|
31
29
|
const hasColor = Boolean(currentColor);
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
30
|
+
const trigger = (_jsxs("button", { type: "button", title: "Text Color", style: {
|
|
31
|
+
...controlStyles.dropdownTrigger,
|
|
32
|
+
...(hasColor ? controlStyles.dropdownTriggerActive : {}),
|
|
33
|
+
}, children: [_jsx(Palette, { style: controlStyles.icon }), _jsx(ChevronDown, { style: { width: '12px', height: '12px' } }), currentColor && (_jsx("span", { style: {
|
|
34
|
+
position: 'absolute',
|
|
35
|
+
bottom: '2px',
|
|
36
|
+
left: '50%',
|
|
37
|
+
transform: 'translateX(-50%)',
|
|
38
|
+
width: '12px',
|
|
39
|
+
height: '3px',
|
|
40
|
+
borderRadius: '1px',
|
|
41
|
+
backgroundColor: currentColor,
|
|
42
|
+
} }))] }));
|
|
43
|
+
return (_jsx("div", { style: { position: 'relative' }, children: _jsx(Dropdown, { isOpen: isOpen, onOpenChange: setIsOpen, trigger: trigger, minWidth: 260, children: _jsx(ColorPickerPanel, { currentColor: currentColor, onColorChange: handleColorChange, onClose: close, mode: "text" }) }) }));
|
|
45
44
|
}
|
|
46
45
|
export function ColorPickerPanel({ currentColor, onColorChange, onClose, mode, showOpacity = true, }) {
|
|
47
46
|
const theme = useTheme();
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ColorPickerControl.js","sourceRoot":"","sources":["../../../../src/fields/richtext/controls/ColorPickerControl.tsx"],"names":[],"mappings":"AAAA,YAAY,CAAA;;AAEZ;;;;;;;;;GASG;AAEH,OAAc,EAAE,QAAQ,EAAE,
|
|
1
|
+
{"version":3,"file":"ColorPickerControl.js","sourceRoot":"","sources":["../../../../src/fields/richtext/controls/ColorPickerControl.tsx"],"names":[],"mappings":"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"}
|
|
@@ -1,17 +1,24 @@
|
|
|
1
1
|
/**
|
|
2
|
-
*
|
|
2
|
+
* Dropdown - Renders dropdown content using Radix Popover for proper focus management
|
|
3
3
|
*
|
|
4
|
-
* Uses
|
|
5
|
-
*
|
|
4
|
+
* Uses @radix-ui/react-popover which provides:
|
|
5
|
+
* - Proper focus management that integrates with Puck's dirty state tracking
|
|
6
|
+
* - Automatic close on escape and click outside
|
|
7
|
+
* - Focus restoration to trigger element on close
|
|
8
|
+
*
|
|
9
|
+
* IMPORTANT: Uses data-puck-rte-menu attribute so Puck's blur handler recognizes
|
|
10
|
+
* this dropdown as part of the rich text menu. Without this, clicking the dropdown
|
|
11
|
+
* causes the editor to blur, clearing currentRichText state and breaking all menu
|
|
12
|
+
* controls (including native Puck ones like HeadingSelect).
|
|
6
13
|
*/
|
|
7
|
-
import
|
|
8
|
-
interface
|
|
14
|
+
import { type ReactNode } from 'react';
|
|
15
|
+
interface DropdownProps {
|
|
9
16
|
isOpen: boolean;
|
|
10
|
-
|
|
11
|
-
|
|
17
|
+
onOpenChange: (open: boolean) => void;
|
|
18
|
+
trigger: ReactNode;
|
|
12
19
|
children: ReactNode;
|
|
13
20
|
minWidth?: number;
|
|
14
21
|
}
|
|
15
|
-
export declare function
|
|
16
|
-
export {};
|
|
22
|
+
export declare function Dropdown({ isOpen, onOpenChange, trigger, children, minWidth }: DropdownProps): import("react/jsx-runtime").JSX.Element;
|
|
23
|
+
export { Dropdown as DropdownPortal };
|
|
17
24
|
//# sourceMappingURL=DropdownPortal.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"DropdownPortal.d.ts","sourceRoot":"","sources":["../../../../src/fields/richtext/controls/DropdownPortal.tsx"],"names":[],"mappings":"AAEA
|
|
1
|
+
{"version":3,"file":"DropdownPortal.d.ts","sourceRoot":"","sources":["../../../../src/fields/richtext/controls/DropdownPortal.tsx"],"names":[],"mappings":"AAEA;;;;;;;;;;;;GAYG;AAEH,OAAc,EAAE,KAAK,SAAS,EAAE,MAAM,OAAO,CAAA;AAQ7C,UAAU,aAAa;IACrB,MAAM,EAAE,OAAO,CAAA;IACf,YAAY,EAAE,CAAC,IAAI,EAAE,OAAO,KAAK,IAAI,CAAA;IACrC,OAAO,EAAE,SAAS,CAAA;IAClB,QAAQ,EAAE,SAAS,CAAA;IACnB,QAAQ,CAAC,EAAE,MAAM,CAAA;CAClB;AAED,wBAAgB,QAAQ,CAAC,EAAE,MAAM,EAAE,YAAY,EAAE,OAAO,EAAE,QAAQ,EAAE,QAAc,EAAE,EAAE,aAAa,2CAuBlG;AAGD,OAAO,EAAE,QAAQ,IAAI,cAAc,EAAE,CAAA"}
|
|
@@ -1,90 +1,16 @@
|
|
|
1
1
|
'use client';
|
|
2
|
-
import { jsx as _jsx } from "react/jsx-runtime";
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
const [position, setPosition] = useState(null);
|
|
14
|
-
// Calculate position based on trigger element
|
|
15
|
-
useEffect(() => {
|
|
16
|
-
if (isOpen && triggerRef.current) {
|
|
17
|
-
const rect = triggerRef.current.getBoundingClientRect();
|
|
18
|
-
const dropdownWidth = minWidth;
|
|
19
|
-
const viewportWidth = window.innerWidth;
|
|
20
|
-
// Position below the trigger
|
|
21
|
-
let left = rect.left;
|
|
22
|
-
const top = rect.bottom + 4;
|
|
23
|
-
// Check if it would overflow the right edge
|
|
24
|
-
if (left + dropdownWidth > viewportWidth - 16) {
|
|
25
|
-
// Align to right edge of trigger instead
|
|
26
|
-
left = rect.right - dropdownWidth;
|
|
27
|
-
}
|
|
28
|
-
// Ensure it doesn't go off the left edge
|
|
29
|
-
if (left < 16) {
|
|
30
|
-
left = 16;
|
|
31
|
-
}
|
|
32
|
-
setPosition({ top, left });
|
|
33
|
-
}
|
|
34
|
-
}, [isOpen, triggerRef, minWidth]);
|
|
35
|
-
// Close on click outside
|
|
36
|
-
useEffect(() => {
|
|
37
|
-
if (!isOpen)
|
|
38
|
-
return;
|
|
39
|
-
function handleClickOutside(event) {
|
|
40
|
-
const target = event.target;
|
|
41
|
-
// Don't close if clicking color input (native picker)
|
|
42
|
-
const activeElement = document.activeElement;
|
|
43
|
-
if (activeElement?.tagName === 'INPUT' && activeElement.type === 'color') {
|
|
44
|
-
return;
|
|
45
|
-
}
|
|
46
|
-
// Check if click is outside both dropdown and trigger
|
|
47
|
-
if (dropdownRef.current &&
|
|
48
|
-
!dropdownRef.current.contains(target) &&
|
|
49
|
-
triggerRef.current &&
|
|
50
|
-
!triggerRef.current.contains(target)) {
|
|
51
|
-
onClose();
|
|
52
|
-
}
|
|
53
|
-
}
|
|
54
|
-
// Use setTimeout to avoid closing immediately on the click that opened it
|
|
55
|
-
const timeoutId = setTimeout(() => {
|
|
56
|
-
document.addEventListener('mousedown', handleClickOutside);
|
|
57
|
-
}, 0);
|
|
58
|
-
return () => {
|
|
59
|
-
clearTimeout(timeoutId);
|
|
60
|
-
document.removeEventListener('mousedown', handleClickOutside);
|
|
61
|
-
};
|
|
62
|
-
}, [isOpen, onClose, triggerRef]);
|
|
63
|
-
// Close on escape key
|
|
64
|
-
useEffect(() => {
|
|
65
|
-
if (!isOpen)
|
|
66
|
-
return;
|
|
67
|
-
function handleEscape(event) {
|
|
68
|
-
if (event.key === 'Escape') {
|
|
69
|
-
onClose();
|
|
70
|
-
}
|
|
71
|
-
}
|
|
72
|
-
document.addEventListener('keydown', handleEscape);
|
|
73
|
-
return () => document.removeEventListener('keydown', handleEscape);
|
|
74
|
-
}, [isOpen, onClose]);
|
|
75
|
-
if (!isOpen || !position)
|
|
76
|
-
return null;
|
|
77
|
-
const style = {
|
|
78
|
-
position: 'fixed',
|
|
79
|
-
top: position.top,
|
|
80
|
-
left: position.left,
|
|
81
|
-
backgroundColor: 'var(--puck-color-white)',
|
|
82
|
-
border: '1px solid var(--puck-color-grey-09)',
|
|
83
|
-
borderRadius: '8px',
|
|
84
|
-
boxShadow: '0 10px 15px -3px rgba(0, 0, 0, 0.1), 0 4px 6px -2px rgba(0, 0, 0, 0.05)',
|
|
85
|
-
zIndex: 99999,
|
|
86
|
-
minWidth,
|
|
87
|
-
};
|
|
88
|
-
return ReactDOM.createPortal(_jsx("div", { ref: dropdownRef, style: style, "data-puck-dropdown-portal": true, children: children }), document.body);
|
|
2
|
+
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
3
|
+
import { Root as PopoverRoot, Trigger as PopoverTrigger, Portal as PopoverPortal, Content as PopoverContent, } from '@radix-ui/react-popover';
|
|
4
|
+
export function Dropdown({ isOpen, onOpenChange, trigger, children, minWidth = 160 }) {
|
|
5
|
+
return (_jsxs(PopoverRoot, { open: isOpen, onOpenChange: onOpenChange, children: [_jsx(PopoverTrigger, { asChild: true, children: trigger }), _jsx(PopoverPortal, { children: _jsx(PopoverContent, { align: "start", sideOffset: 4, style: {
|
|
6
|
+
backgroundColor: 'var(--puck-color-white)',
|
|
7
|
+
border: '1px solid var(--puck-color-grey-09)',
|
|
8
|
+
borderRadius: '8px',
|
|
9
|
+
boxShadow: '0 10px 15px -3px rgba(0, 0, 0, 0.1), 0 4px 6px -2px rgba(0, 0, 0, 0.05)',
|
|
10
|
+
zIndex: 99999,
|
|
11
|
+
minWidth,
|
|
12
|
+
}, "data-puck-rte-menu": true, children: children }) })] }));
|
|
89
13
|
}
|
|
14
|
+
// Keep the old export name for backwards compatibility during migration
|
|
15
|
+
export { Dropdown as DropdownPortal };
|
|
90
16
|
//# sourceMappingURL=DropdownPortal.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"DropdownPortal.js","sourceRoot":"","sources":["../../../../src/fields/richtext/controls/DropdownPortal.tsx"],"names":[],"mappings":"AAAA,YAAY,CAAA;;
|
|
1
|
+
{"version":3,"file":"DropdownPortal.js","sourceRoot":"","sources":["../../../../src/fields/richtext/controls/DropdownPortal.tsx"],"names":[],"mappings":"AAAA,YAAY,CAAA;;AAiBZ,OAAO,EACL,IAAI,IAAI,WAAW,EACnB,OAAO,IAAI,cAAc,EACzB,MAAM,IAAI,aAAa,EACvB,OAAO,IAAI,cAAc,GAC1B,MAAM,yBAAyB,CAAA;AAUhC,MAAM,UAAU,QAAQ,CAAC,EAAE,MAAM,EAAE,YAAY,EAAE,OAAO,EAAE,QAAQ,EAAE,QAAQ,GAAG,GAAG,EAAiB;IACjG,OAAO,CACL,MAAC,WAAW,IAAC,IAAI,EAAE,MAAM,EAAE,YAAY,EAAE,YAAY,aACnD,KAAC,cAAc,IAAC,OAAO,kBAAE,OAAO,GAAkB,EAClD,KAAC,aAAa,cACZ,KAAC,cAAc,IACb,KAAK,EAAC,OAAO,EACb,UAAU,EAAE,CAAC,EACb,KAAK,EAAE;wBACL,eAAe,EAAE,yBAAyB;wBAC1C,MAAM,EAAE,qCAAqC;wBAC7C,YAAY,EAAE,KAAK;wBACnB,SAAS,EAAE,yEAAyE;wBACpF,MAAM,EAAE,KAAK;wBACb,QAAQ;qBACT,wCAGA,QAAQ,GACM,GACH,IACJ,CACf,CAAA;AACH,CAAC;AAED,wEAAwE;AACxE,OAAO,EAAE,QAAQ,IAAI,cAAc,EAAE,CAAA"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"FontSizeControl.d.ts","sourceRoot":"","sources":["../../../../src/fields/richtext/controls/FontSizeControl.tsx"],"names":[],"mappings":"AAcA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,eAAe,CAAA;AAE3C,UAAU,oBAAoB;IAC5B,MAAM,EAAE,MAAM,CAAA;IACd,WAAW,EAAE,MAAM,GAAG,SAAS,CAAA;CAChC;AAED,wBAAgB,eAAe,CAAC,EAAE,MAAM,EAAE,WAAW,EAAE,EAAE,oBAAoB,
|
|
1
|
+
{"version":3,"file":"FontSizeControl.d.ts","sourceRoot":"","sources":["../../../../src/fields/richtext/controls/FontSizeControl.tsx"],"names":[],"mappings":"AAcA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,eAAe,CAAA;AAE3C,UAAU,oBAAoB;IAC5B,MAAM,EAAE,MAAM,CAAA;IACd,WAAW,EAAE,MAAM,GAAG,SAAS,CAAA;CAChC;AAED,wBAAgB,eAAe,CAAC,EAAE,MAAM,EAAE,WAAW,EAAE,EAAE,oBAAoB,2CA6H5E"}
|
|
@@ -7,15 +7,14 @@ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
|
7
7
|
* - 9 preset sizes (XS to 4XL)
|
|
8
8
|
* - Custom size input with px/rem/em unit selection
|
|
9
9
|
*/
|
|
10
|
-
import { useState,
|
|
10
|
+
import { useState, useCallback } from 'react';
|
|
11
11
|
import { ALargeSmall, ChevronDown } from 'lucide-react';
|
|
12
|
-
import { FONT_SIZES, FONT_SIZE_UNITS, controlStyles
|
|
13
|
-
import {
|
|
12
|
+
import { FONT_SIZES, FONT_SIZE_UNITS, controlStyles } from './shared';
|
|
13
|
+
import { Dropdown } from './DropdownPortal';
|
|
14
14
|
export function FontSizeControl({ editor, currentSize }) {
|
|
15
15
|
const [isOpen, setIsOpen] = useState(false);
|
|
16
16
|
const [customValue, setCustomValue] = useState('');
|
|
17
17
|
const [customUnit, setCustomUnit] = useState('px');
|
|
18
|
-
const triggerRef = useRef(null);
|
|
19
18
|
const handlePresetClick = useCallback((value) => {
|
|
20
19
|
if (value) {
|
|
21
20
|
editor.chain().focus().setFontSize(value).run();
|
|
@@ -24,7 +23,6 @@ export function FontSizeControl({ editor, currentSize }) {
|
|
|
24
23
|
editor.chain().focus().unsetFontSize().run();
|
|
25
24
|
}
|
|
26
25
|
setIsOpen(false);
|
|
27
|
-
forcePuckUpdate(editor);
|
|
28
26
|
}, [editor]);
|
|
29
27
|
const handleCustomApply = useCallback(() => {
|
|
30
28
|
if (customValue) {
|
|
@@ -32,7 +30,6 @@ export function FontSizeControl({ editor, currentSize }) {
|
|
|
32
30
|
editor.chain().focus().setFontSize(size).run();
|
|
33
31
|
setIsOpen(false);
|
|
34
32
|
setCustomValue('');
|
|
35
|
-
forcePuckUpdate(editor);
|
|
36
33
|
}
|
|
37
34
|
}, [editor, customValue, customUnit]);
|
|
38
35
|
const handleCustomKeyDown = useCallback((e) => {
|
|
@@ -41,24 +38,24 @@ export function FontSizeControl({ editor, currentSize }) {
|
|
|
41
38
|
handleCustomApply();
|
|
42
39
|
}
|
|
43
40
|
}, [handleCustomApply]);
|
|
44
|
-
const close = useCallback(() => setIsOpen(false), []);
|
|
45
41
|
// Find current preset label if any
|
|
46
42
|
const currentPreset = FONT_SIZES.find((s) => s.value === currentSize);
|
|
47
43
|
const hasCustomSize = currentSize && !currentPreset;
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
44
|
+
const trigger = (_jsxs("button", { type: "button", title: "Font Size", style: {
|
|
45
|
+
...controlStyles.dropdownTrigger,
|
|
46
|
+
...(currentSize ? controlStyles.dropdownTriggerActive : {}),
|
|
47
|
+
}, children: [_jsx(ALargeSmall, { style: controlStyles.icon }), _jsx(ChevronDown, { style: { width: '12px', height: '12px' } })] }));
|
|
48
|
+
return (_jsx("div", { style: { position: 'relative' }, children: _jsxs(Dropdown, { isOpen: isOpen, onOpenChange: setIsOpen, trigger: trigger, minWidth: 200, children: [_jsx("div", { style: controlStyles.dropdownLabel, children: "Presets" }), _jsx("div", { style: controlStyles.fontSizeGrid, children: FONT_SIZES.map((size) => {
|
|
49
|
+
const isActive = size.value === currentSize || (!size.value && !currentSize);
|
|
50
|
+
return (_jsx("button", { type: "button", onClick: () => handlePresetClick(size.value), title: size.px, style: {
|
|
51
|
+
...controlStyles.fontSizeButton,
|
|
52
|
+
...(isActive ? controlStyles.fontSizeButtonActive : {}),
|
|
53
|
+
}, children: size.label }, size.label));
|
|
54
|
+
}) }), _jsxs("div", { style: controlStyles.customSizeRow, children: [_jsx("input", { type: "number", placeholder: "16", min: "8", max: "200", value: customValue, onChange: (e) => setCustomValue(e.target.value), onKeyDown: handleCustomKeyDown, style: controlStyles.customSizeInput }), _jsx("select", { value: customUnit, onChange: (e) => setCustomUnit(e.target.value), style: controlStyles.customSizeSelect, children: FONT_SIZE_UNITS.map((unit) => (_jsx("option", { value: unit, children: unit }, unit))) }), _jsx("button", { type: "button", onClick: handleCustomApply, style: controlStyles.customSizeApply, children: "Apply" })] }), hasCustomSize && (_jsxs("div", { style: {
|
|
55
|
+
padding: '8px 12px',
|
|
56
|
+
fontSize: '12px',
|
|
57
|
+
color: 'var(--puck-color-grey-05)',
|
|
58
|
+
borderTop: '1px solid var(--puck-color-grey-03)',
|
|
59
|
+
}, children: ["Current: ", currentSize] }))] }) }));
|
|
63
60
|
}
|
|
64
61
|
//# sourceMappingURL=FontSizeControl.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"FontSizeControl.js","sourceRoot":"","sources":["../../../../src/fields/richtext/controls/FontSizeControl.tsx"],"names":[],"mappings":"AAAA,YAAY,CAAA;;AAEZ;;;;;;GAMG;AAEH,OAAc,EAAE,QAAQ,EAAE,
|
|
1
|
+
{"version":3,"file":"FontSizeControl.js","sourceRoot":"","sources":["../../../../src/fields/richtext/controls/FontSizeControl.tsx"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"HighlightControl.d.ts","sourceRoot":"","sources":["../../../../src/fields/richtext/controls/HighlightControl.tsx"],"names":[],"mappings":"AAkBA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,eAAe,CAAA;AAE3C,UAAU,qBAAqB;IAC7B,MAAM,EAAE,MAAM,CAAA;IACd,YAAY,EAAE,MAAM,GAAG,SAAS,CAAA;IAChC,QAAQ,EAAE,OAAO,CAAA;CAClB;AAED,wBAAgB,gBAAgB,CAAC,EAAE,MAAM,EAAE,YAAY,EAAE,QAAQ,EAAE,EAAE,qBAAqB,
|
|
1
|
+
{"version":3,"file":"HighlightControl.d.ts","sourceRoot":"","sources":["../../../../src/fields/richtext/controls/HighlightControl.tsx"],"names":[],"mappings":"AAkBA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,eAAe,CAAA;AAE3C,UAAU,qBAAqB;IAC7B,MAAM,EAAE,MAAM,CAAA;IACd,YAAY,EAAE,MAAM,GAAG,SAAS,CAAA;IAChC,QAAQ,EAAE,OAAO,CAAA;CAClB;AAED,wBAAgB,gBAAgB,CAAC,EAAE,MAAM,EAAE,YAAY,EAAE,QAAQ,EAAE,EAAE,qBAAqB,2CAyDzF"}
|
|
@@ -10,14 +10,13 @@ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
|
10
10
|
* - Theme color presets
|
|
11
11
|
* - Remove highlight option
|
|
12
12
|
*/
|
|
13
|
-
import { useState,
|
|
13
|
+
import { useState, useCallback } from 'react';
|
|
14
14
|
import { Highlighter, ChevronDown } from 'lucide-react';
|
|
15
|
-
import { controlStyles
|
|
15
|
+
import { controlStyles } from './shared';
|
|
16
16
|
import { ColorPickerPanel } from './ColorPickerControl';
|
|
17
|
-
import {
|
|
17
|
+
import { Dropdown } from './DropdownPortal';
|
|
18
18
|
export function HighlightControl({ editor, currentColor, isActive }) {
|
|
19
19
|
const [isOpen, setIsOpen] = useState(false);
|
|
20
|
-
const triggerRef = useRef(null);
|
|
21
20
|
const handleColorChange = useCallback((color) => {
|
|
22
21
|
if (color) {
|
|
23
22
|
editor.chain().focus().setHighlight({ color }).run();
|
|
@@ -25,21 +24,21 @@ export function HighlightControl({ editor, currentColor, isActive }) {
|
|
|
25
24
|
else {
|
|
26
25
|
editor.chain().focus().unsetHighlight().run();
|
|
27
26
|
}
|
|
28
|
-
forcePuckUpdate(editor);
|
|
29
27
|
}, [editor]);
|
|
30
28
|
const close = useCallback(() => setIsOpen(false), []);
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
29
|
+
const trigger = (_jsxs("button", { type: "button", title: "Highlight", style: {
|
|
30
|
+
...controlStyles.dropdownTrigger,
|
|
31
|
+
...(isActive ? controlStyles.dropdownTriggerActive : {}),
|
|
32
|
+
}, children: [_jsx(Highlighter, { style: controlStyles.icon }), _jsx(ChevronDown, { style: { width: '12px', height: '12px' } }), currentColor && (_jsx("span", { style: {
|
|
33
|
+
position: 'absolute',
|
|
34
|
+
bottom: '2px',
|
|
35
|
+
left: '50%',
|
|
36
|
+
transform: 'translateX(-50%)',
|
|
37
|
+
width: '12px',
|
|
38
|
+
height: '3px',
|
|
39
|
+
borderRadius: '1px',
|
|
40
|
+
backgroundColor: currentColor,
|
|
41
|
+
} }))] }));
|
|
42
|
+
return (_jsx("div", { style: { position: 'relative' }, children: _jsx(Dropdown, { isOpen: isOpen, onOpenChange: setIsOpen, trigger: trigger, minWidth: 260, children: _jsx(ColorPickerPanel, { currentColor: currentColor, onColorChange: handleColorChange, onClose: close, mode: "highlight" }) }) }));
|
|
44
43
|
}
|
|
45
44
|
//# sourceMappingURL=HighlightControl.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"HighlightControl.js","sourceRoot":"","sources":["../../../../src/fields/richtext/controls/HighlightControl.tsx"],"names":[],"mappings":"AAAA,YAAY,CAAA;;AAEZ;;;;;;;;;GASG;AAEH,OAAc,EAAE,QAAQ,EAAE,
|
|
1
|
+
{"version":3,"file":"HighlightControl.js","sourceRoot":"","sources":["../../../../src/fields/richtext/controls/HighlightControl.tsx"],"names":[],"mappings":"AAAA,YAAY,CAAA;;AAEZ;;;;;;;;;GASG;AAEH,OAAc,EAAE,QAAQ,EAAE,WAAW,EAAE,MAAM,OAAO,CAAA;AACpD,OAAO,EAAE,WAAW,EAAE,WAAW,EAAE,MAAM,cAAc,CAAA;AACvD,OAAO,EAAE,aAAa,EAAE,MAAM,UAAU,CAAA;AACxC,OAAO,EAAE,gBAAgB,EAAE,MAAM,sBAAsB,CAAA;AACvD,OAAO,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAA;AAS3C,MAAM,UAAU,gBAAgB,CAAC,EAAE,MAAM,EAAE,YAAY,EAAE,QAAQ,EAAyB;IACxF,MAAM,CAAC,MAAM,EAAE,SAAS,CAAC,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAA;IAE3C,MAAM,iBAAiB,GAAG,WAAW,CACnC,CAAC,KAAoB,EAAE,EAAE;QACvB,IAAI,KAAK,EAAE,CAAC;YACV,MAAM,CAAC,KAAK,EAAE,CAAC,KAAK,EAAE,CAAC,YAAY,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC,GAAG,EAAE,CAAA;QACtD,CAAC;aAAM,CAAC;YACN,MAAM,CAAC,KAAK,EAAE,CAAC,KAAK,EAAE,CAAC,cAAc,EAAE,CAAC,GAAG,EAAE,CAAA;QAC/C,CAAC;IACH,CAAC,EACD,CAAC,MAAM,CAAC,CACT,CAAA;IAED,MAAM,KAAK,GAAG,WAAW,CAAC,GAAG,EAAE,CAAC,SAAS,CAAC,KAAK,CAAC,EAAE,EAAE,CAAC,CAAA;IAErD,MAAM,OAAO,GAAG,CACd,kBACE,IAAI,EAAC,QAAQ,EACb,KAAK,EAAC,WAAW,EACjB,KAAK,EAAE;YACL,GAAG,aAAa,CAAC,eAAe;YAChC,GAAG,CAAC,QAAQ,CAAC,CAAC,CAAC,aAAa,CAAC,qBAAqB,CAAC,CAAC,CAAC,EAAE,CAAC;SACzD,aAED,KAAC,WAAW,IAAC,KAAK,EAAE,aAAa,CAAC,IAAI,GAAI,EAC1C,KAAC,WAAW,IAAC,KAAK,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,GAAI,EAExD,YAAY,IAAI,CACf,eACE,KAAK,EAAE;oBACL,QAAQ,EAAE,UAAU;oBACpB,MAAM,EAAE,KAAK;oBACb,IAAI,EAAE,KAAK;oBACX,SAAS,EAAE,kBAAkB;oBAC7B,KAAK,EAAE,MAAM;oBACb,MAAM,EAAE,KAAK;oBACb,YAAY,EAAE,KAAK;oBACnB,eAAe,EAAE,YAAY;iBAC9B,GACD,CACH,IACM,CACV,CAAA;IAED,OAAO,CACL,cAAK,KAAK,EAAE,EAAE,QAAQ,EAAE,UAAU,EAAE,YAClC,KAAC,QAAQ,IAAC,MAAM,EAAE,MAAM,EAAE,YAAY,EAAE,SAAS,EAAE,OAAO,EAAE,OAAO,EAAE,QAAQ,EAAE,GAAG,YAChF,KAAC,gBAAgB,IACf,YAAY,EAAE,YAAY,EAC1B,aAAa,EAAE,iBAAiB,EAChC,OAAO,EAAE,KAAK,EACd,IAAI,EAAC,WAAW,GAChB,GACO,GACP,CACP,CAAA;AACH,CAAC"}
|
|
@@ -4,37 +4,6 @@
|
|
|
4
4
|
* Color manipulation, font size presets, and common types.
|
|
5
5
|
*/
|
|
6
6
|
import type { CSSProperties } from 'react';
|
|
7
|
-
import type { Editor } from '@tiptap/react';
|
|
8
|
-
/**
|
|
9
|
-
* Forces Puck to recognize editor changes after applying text styles.
|
|
10
|
-
*
|
|
11
|
-
* ## Why this is needed
|
|
12
|
-
*
|
|
13
|
-
* Puck's `useSyncedEditor` hook has a guard condition in its `onUpdate` callback:
|
|
14
|
-
*
|
|
15
|
-
* ```js
|
|
16
|
-
* onUpdate: ({ editor }) => {
|
|
17
|
-
* if (syncingRef.current || !isFocused) {
|
|
18
|
-
* return; // Changes are dropped!
|
|
19
|
-
* }
|
|
20
|
-
* // ... save changes
|
|
21
|
-
* }
|
|
22
|
-
* ```
|
|
23
|
-
*
|
|
24
|
-
* When using dropdown controls (font size, color picker), focus moves from the
|
|
25
|
-
* editor to the dropdown. Even though we call `editor.chain().focus()...run()`,
|
|
26
|
-
* Puck's React `isFocused` state may not have updated yet, causing the change
|
|
27
|
-
* to be silently dropped.
|
|
28
|
-
*
|
|
29
|
-
* This workaround inserts and immediately removes a zero-width space character
|
|
30
|
-
* after a delay, which:
|
|
31
|
-
* 1. Waits for React state to settle (focus state update)
|
|
32
|
-
* 2. Forces a real document change that triggers Puck's onUpdate
|
|
33
|
-
* 3. The insert+delete is atomic, so it doesn't affect undo history badly
|
|
34
|
-
*
|
|
35
|
-
* @see https://github.com/measuredco/puck - Core Puck library
|
|
36
|
-
*/
|
|
37
|
-
export declare function forcePuckUpdate(editor: Editor): void;
|
|
38
7
|
export declare const FONT_SIZES: readonly [{
|
|
39
8
|
readonly label: "XS";
|
|
40
9
|
readonly value: "0.75rem";
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"shared.d.ts","sourceRoot":"","sources":["../../../../src/fields/richtext/controls/shared.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,OAAO,CAAA;
|
|
1
|
+
{"version":3,"file":"shared.d.ts","sourceRoot":"","sources":["../../../../src/fields/richtext/controls/shared.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,OAAO,CAAA;AAM1C,eAAO,MAAM,UAAU;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAUb,CAAA;AAEV,eAAO,MAAM,eAAe,8BAA+B,CAAA;AAE3D,MAAM,MAAM,YAAY,GAAG,CAAC,OAAO,eAAe,CAAC,CAAC,MAAM,CAAC,CAAA;AAM3D;;GAEG;AACH,wBAAgB,YAAY,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAYhD;AAED;;GAEG;AACH,wBAAgB,SAAS,CAAC,GAAG,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,MAAM,CAM9D;AAED;;GAEG;AACH,wBAAgB,UAAU,CAAC,KAAK,EAAE,MAAM,GAAG,SAAS,GAAG;IAAE,GAAG,EAAE,MAAM,CAAC;IAAC,OAAO,EAAE,MAAM,CAAA;CAAE,CAqBtF;AAMD,eAAO,MAAM,aAAa;UAInB,aAAa;qBAcb,aAAa;2BAIb,aAAa;cAab,aAAa;kBAab,aAAa;mBASb,aAAa;uBAMb,aAAa;0BASb,aAAa;oBAMb,aAAa;sBAUb,aAAa;yBAab,aAAa;wBAUb,aAAa;6BAUb,aAAa;wBAKb,aAAa;+BAMb,aAAa;8BAMb,aAAa;6BAKb,aAAa;6BAMb,aAAa;8BAQb,aAAa;kCAUb,aAAa;6BAYb,aAAa;6BAMb,aAAa;4BAMb,aAAa;6BAWb,aAAa;qCAWb,aAAa;4BAeb,aAAa;4BASb,aAAa;kBAQb,aAAa;oBAYb,aAAa;0BAOb,aAAa;mBAQb,aAAa;qBAWb,aAAa;sBAUb,aAAa;qBAWb,aAAa;CACnB,CAAA"}
|
|
@@ -4,58 +4,6 @@
|
|
|
4
4
|
* Color manipulation, font size presets, and common types.
|
|
5
5
|
*/
|
|
6
6
|
// =============================================================================
|
|
7
|
-
// Puck Focus Workaround
|
|
8
|
-
// =============================================================================
|
|
9
|
-
/**
|
|
10
|
-
* Forces Puck to recognize editor changes after applying text styles.
|
|
11
|
-
*
|
|
12
|
-
* ## Why this is needed
|
|
13
|
-
*
|
|
14
|
-
* Puck's `useSyncedEditor` hook has a guard condition in its `onUpdate` callback:
|
|
15
|
-
*
|
|
16
|
-
* ```js
|
|
17
|
-
* onUpdate: ({ editor }) => {
|
|
18
|
-
* if (syncingRef.current || !isFocused) {
|
|
19
|
-
* return; // Changes are dropped!
|
|
20
|
-
* }
|
|
21
|
-
* // ... save changes
|
|
22
|
-
* }
|
|
23
|
-
* ```
|
|
24
|
-
*
|
|
25
|
-
* When using dropdown controls (font size, color picker), focus moves from the
|
|
26
|
-
* editor to the dropdown. Even though we call `editor.chain().focus()...run()`,
|
|
27
|
-
* Puck's React `isFocused` state may not have updated yet, causing the change
|
|
28
|
-
* to be silently dropped.
|
|
29
|
-
*
|
|
30
|
-
* This workaround inserts and immediately removes a zero-width space character
|
|
31
|
-
* after a delay, which:
|
|
32
|
-
* 1. Waits for React state to settle (focus state update)
|
|
33
|
-
* 2. Forces a real document change that triggers Puck's onUpdate
|
|
34
|
-
* 3. The insert+delete is atomic, so it doesn't affect undo history badly
|
|
35
|
-
*
|
|
36
|
-
* @see https://github.com/measuredco/puck - Core Puck library
|
|
37
|
-
*/
|
|
38
|
-
export function forcePuckUpdate(editor) {
|
|
39
|
-
// Use setTimeout to ensure React state has settled after focus change
|
|
40
|
-
setTimeout(() => {
|
|
41
|
-
if (editor.isDestroyed)
|
|
42
|
-
return;
|
|
43
|
-
// Save current selection
|
|
44
|
-
const { from, to } = editor.state.selection;
|
|
45
|
-
// Insert and immediately delete a zero-width space to force a document change
|
|
46
|
-
// This triggers Puck's onUpdate with the focus state now correctly set
|
|
47
|
-
// We insert at the end of the document to avoid disrupting the user's cursor
|
|
48
|
-
const docEnd = editor.state.doc.content.size;
|
|
49
|
-
editor
|
|
50
|
-
.chain()
|
|
51
|
-
.focus()
|
|
52
|
-
.insertContentAt(docEnd, '\u200B') // Zero-width space at end
|
|
53
|
-
.deleteRange({ from: docEnd, to: docEnd + 1 })
|
|
54
|
-
.setTextSelection({ from, to }) // Restore original selection
|
|
55
|
-
.run();
|
|
56
|
-
}, 50);
|
|
57
|
-
}
|
|
58
|
-
// =============================================================================
|
|
59
7
|
// Font Size Presets
|
|
60
8
|
// =============================================================================
|
|
61
9
|
export const FONT_SIZES = [
|
|
@@ -356,7 +304,7 @@ export const controlStyles = {
|
|
|
356
304
|
},
|
|
357
305
|
fontSizeButtonActive: {
|
|
358
306
|
backgroundColor: 'var(--puck-color-azure-11)',
|
|
359
|
-
|
|
307
|
+
border: '1px solid var(--puck-color-azure-11)',
|
|
360
308
|
color: 'var(--puck-color-azure-04)',
|
|
361
309
|
fontWeight: 500,
|
|
362
310
|
},
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"shared.js","sourceRoot":"","sources":["../../../../src/fields/richtext/controls/shared.ts"],"names":[],"mappings":"AAAA;;;;GAIG;
|
|
1
|
+
{"version":3,"file":"shared.js","sourceRoot":"","sources":["../../../../src/fields/richtext/controls/shared.ts"],"names":[],"mappings":"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"}
|
package/dist/version.d.ts
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
export declare const VERSION = "0.6.
|
|
1
|
+
export declare const VERSION = "0.6.7";
|
|
2
2
|
//# sourceMappingURL=version.d.ts.map
|
package/dist/version.js
CHANGED
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@delmaredigital/payload-puck",
|
|
3
|
-
"version": "0.6.
|
|
3
|
+
"version": "0.6.7",
|
|
4
4
|
"description": "Puck visual page builder plugin for Payload CMS",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"license": "MIT",
|
|
@@ -127,6 +127,7 @@
|
|
|
127
127
|
"@puckeditor/cloud-client": "^0.5.0",
|
|
128
128
|
"@puckeditor/plugin-ai": "^0.5.0",
|
|
129
129
|
"@puckeditor/plugin-heading-analyzer": "^0.21.0",
|
|
130
|
+
"@radix-ui/react-popover": "^1.1.15",
|
|
130
131
|
"@tiptap/core": "^3.14.0",
|
|
131
132
|
"@tiptap/extension-color": "^3.14.0",
|
|
132
133
|
"@tiptap/extension-highlight": "^3.14.0",
|