@yoopta/ui 6.0.0-beta.5 → 6.0.0-beta.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/action-menu-list.js +1 -1
- package/dist/block-options/block-options.d.ts +68 -8
- package/dist/block-options/block-options.d.ts.map +1 -1
- package/dist/block-options/context.d.ts +11 -0
- package/dist/block-options/context.d.ts.map +1 -0
- package/dist/block-options/hooks.d.ts +14 -894
- package/dist/block-options/hooks.d.ts.map +1 -1
- package/dist/block-options/index.d.ts +2 -3
- package/dist/block-options/index.d.ts.map +1 -1
- package/dist/block-options.js +1 -1
- package/dist/chunks/floating-ui.react-33212df0.js +5 -0
- package/dist/chunks/highlight-color-picker-ea799f50.js +1 -0
- package/dist/chunks/{hooks-8cbb0736.js → hooks-814f49b9.js} +1 -1
- package/dist/chunks/hooks-ad9169d0.js +1 -0
- package/dist/chunks/index-e0185864.js +1 -0
- package/dist/element-options/components/element-options-color-picker.d.ts +6 -0
- package/dist/element-options/components/element-options-color-picker.d.ts.map +1 -0
- package/dist/element-options/components/element-options-content.d.ts +6 -0
- package/dist/element-options/components/element-options-content.d.ts.map +1 -0
- package/dist/element-options/components/element-options-group.d.ts +6 -0
- package/dist/element-options/components/element-options-group.d.ts.map +1 -0
- package/dist/element-options/components/element-options-input.d.ts +6 -0
- package/dist/element-options/components/element-options-input.d.ts.map +1 -0
- package/dist/element-options/components/element-options-label.d.ts +6 -0
- package/dist/element-options/components/element-options-label.d.ts.map +1 -0
- package/dist/element-options/components/element-options-root.d.ts +6 -0
- package/dist/element-options/components/element-options-root.d.ts.map +1 -0
- package/dist/element-options/components/element-options-select.d.ts +6 -0
- package/dist/element-options/components/element-options-select.d.ts.map +1 -0
- package/dist/element-options/components/element-options-separator.d.ts +6 -0
- package/dist/element-options/components/element-options-separator.d.ts.map +1 -0
- package/dist/element-options/components/element-options-slider.d.ts +6 -0
- package/dist/element-options/components/element-options-slider.d.ts.map +1 -0
- package/dist/element-options/components/element-options-toggle.d.ts +6 -0
- package/dist/element-options/components/element-options-toggle.d.ts.map +1 -0
- package/dist/element-options/components/element-options-trigger.d.ts +6 -0
- package/dist/element-options/components/element-options-trigger.d.ts.map +1 -0
- package/dist/element-options/context/element-options-context.d.ts +13 -0
- package/dist/element-options/context/element-options-context.d.ts.map +1 -0
- package/dist/element-options/index.d.ts +64 -0
- package/dist/element-options/index.d.ts.map +1 -0
- package/dist/element-options/types.d.ts +107 -0
- package/dist/element-options/types.d.ts.map +1 -0
- package/dist/element-options.js +14 -0
- package/dist/highlight-color-picker.js +1 -1
- package/dist/index.d.ts +6 -2
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +1 -1
- package/dist/overlay.js +1 -1
- package/dist/portal.js +1 -1
- package/dist/selection-box/SelectionBox.d.ts +19 -0
- package/dist/selection-box/SelectionBox.d.ts.map +1 -0
- package/dist/selection-box/hooks.d.ts +7 -0
- package/dist/selection-box/hooks.d.ts.map +1 -0
- package/dist/selection-box/index.d.ts +4 -0
- package/dist/selection-box/index.d.ts.map +1 -0
- package/dist/selection-box.js +1 -0
- package/dist/slash-command-menu.js +1 -1
- package/dist/toolbar/index.d.ts +1 -1
- package/dist/toolbar/index.d.ts.map +1 -1
- package/dist/toolbar.js +1 -1
- package/package.json +16 -4
- package/dist/block-options/store.d.ts +0 -15
- package/dist/block-options/store.d.ts.map +0 -1
- package/dist/block-options/store.test.d.ts +0 -2
- package/dist/block-options/store.test.d.ts.map +0 -1
- package/dist/chunks/floating-ui.react-0123aadf.js +0 -5
- package/dist/chunks/highlight-color-picker-13e8f1eb.js +0 -1
- package/dist/chunks/hooks-907f8ea7.js +0 -1
|
@@ -0,0 +1,107 @@
|
|
|
1
|
+
import type { CSSProperties, ReactNode, RefObject } from 'react';
|
|
2
|
+
import type { SlateElement, YooEditor } from '@yoopta/editor';
|
|
3
|
+
export type Side = 'top' | 'right' | 'bottom' | 'left';
|
|
4
|
+
export type Align = 'start' | 'center' | 'end';
|
|
5
|
+
export type ElementOptionsContextValue = {
|
|
6
|
+
blockId: string;
|
|
7
|
+
element: SlateElement;
|
|
8
|
+
editor: YooEditor;
|
|
9
|
+
isOpen: boolean;
|
|
10
|
+
setIsOpen: (open: boolean) => void;
|
|
11
|
+
triggerRef: RefObject<HTMLButtonElement | null>;
|
|
12
|
+
contentRef: RefObject<HTMLDivElement | null>;
|
|
13
|
+
anchorRef: RefObject<HTMLElement | null> | null;
|
|
14
|
+
};
|
|
15
|
+
export type ElementOptionsRootProps = {
|
|
16
|
+
blockId: string;
|
|
17
|
+
element: SlateElement;
|
|
18
|
+
children: ReactNode;
|
|
19
|
+
/** Ref to the element that Trigger should position relative to */
|
|
20
|
+
anchorRef?: RefObject<HTMLElement | null>;
|
|
21
|
+
className?: string;
|
|
22
|
+
style?: CSSProperties;
|
|
23
|
+
};
|
|
24
|
+
export type ElementOptionsTriggerProps = {
|
|
25
|
+
children?: ReactNode;
|
|
26
|
+
className?: string;
|
|
27
|
+
style?: CSSProperties;
|
|
28
|
+
/** Which side of the anchor to position the trigger */
|
|
29
|
+
side?: Side;
|
|
30
|
+
/** Alignment along the side */
|
|
31
|
+
align?: Align;
|
|
32
|
+
/** Offset from the side in pixels */
|
|
33
|
+
sideOffset?: number;
|
|
34
|
+
/** Offset along the alignment axis in pixels */
|
|
35
|
+
alignOffset?: number;
|
|
36
|
+
};
|
|
37
|
+
export type ElementOptionsContentProps = {
|
|
38
|
+
children: ReactNode;
|
|
39
|
+
className?: string;
|
|
40
|
+
style?: CSSProperties;
|
|
41
|
+
side?: Side;
|
|
42
|
+
align?: Align;
|
|
43
|
+
sideOffset?: number;
|
|
44
|
+
alignOffset?: number;
|
|
45
|
+
};
|
|
46
|
+
export type ElementOptionsGroupProps = {
|
|
47
|
+
children: ReactNode;
|
|
48
|
+
className?: string;
|
|
49
|
+
style?: CSSProperties;
|
|
50
|
+
};
|
|
51
|
+
export type ElementOptionsLabelProps = {
|
|
52
|
+
children: ReactNode;
|
|
53
|
+
className?: string;
|
|
54
|
+
style?: CSSProperties;
|
|
55
|
+
};
|
|
56
|
+
export type ElementOptionsSeparatorProps = {
|
|
57
|
+
className?: string;
|
|
58
|
+
style?: CSSProperties;
|
|
59
|
+
};
|
|
60
|
+
export type SelectOption<T = string> = {
|
|
61
|
+
value: T;
|
|
62
|
+
label: string;
|
|
63
|
+
icon?: ReactNode;
|
|
64
|
+
color?: string;
|
|
65
|
+
};
|
|
66
|
+
export type ElementOptionsSelectProps<T = string> = {
|
|
67
|
+
value: T;
|
|
68
|
+
options: SelectOption<T>[];
|
|
69
|
+
onValueChange: (value: T) => void;
|
|
70
|
+
placeholder?: string;
|
|
71
|
+
className?: string;
|
|
72
|
+
style?: CSSProperties;
|
|
73
|
+
renderOption?: (option: SelectOption<T>) => ReactNode;
|
|
74
|
+
renderValue?: (option: SelectOption<T> | undefined) => ReactNode;
|
|
75
|
+
};
|
|
76
|
+
export type ElementOptionsColorPickerProps = {
|
|
77
|
+
value: string;
|
|
78
|
+
onChange: (color: string) => void;
|
|
79
|
+
presetColors?: string[];
|
|
80
|
+
className?: string;
|
|
81
|
+
style?: CSSProperties;
|
|
82
|
+
};
|
|
83
|
+
export type ElementOptionsToggleProps = {
|
|
84
|
+
checked: boolean;
|
|
85
|
+
onCheckedChange: (checked: boolean) => void;
|
|
86
|
+
label?: string;
|
|
87
|
+
className?: string;
|
|
88
|
+
style?: CSSProperties;
|
|
89
|
+
};
|
|
90
|
+
export type ElementOptionsSliderProps = {
|
|
91
|
+
value: number;
|
|
92
|
+
onValueChange: (value: number) => void;
|
|
93
|
+
min?: number;
|
|
94
|
+
max?: number;
|
|
95
|
+
step?: number;
|
|
96
|
+
className?: string;
|
|
97
|
+
style?: CSSProperties;
|
|
98
|
+
};
|
|
99
|
+
export type ElementOptionsInputProps = {
|
|
100
|
+
value: string;
|
|
101
|
+
onChange: (value: string) => void;
|
|
102
|
+
placeholder?: string;
|
|
103
|
+
type?: 'text' | 'number' | 'url';
|
|
104
|
+
className?: string;
|
|
105
|
+
style?: CSSProperties;
|
|
106
|
+
};
|
|
107
|
+
//# sourceMappingURL=types.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/element-options/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,SAAS,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AACjE,OAAO,KAAK,EAAE,YAAY,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAG9D,MAAM,MAAM,IAAI,GAAG,KAAK,GAAG,OAAO,GAAG,QAAQ,GAAG,MAAM,CAAC;AACvD,MAAM,MAAM,KAAK,GAAG,OAAO,GAAG,QAAQ,GAAG,KAAK,CAAC;AAG/C,MAAM,MAAM,0BAA0B,GAAG;IACvC,OAAO,EAAE,MAAM,CAAC;IAChB,OAAO,EAAE,YAAY,CAAC;IACtB,MAAM,EAAE,SAAS,CAAC;IAClB,MAAM,EAAE,OAAO,CAAC;IAChB,SAAS,EAAE,CAAC,IAAI,EAAE,OAAO,KAAK,IAAI,CAAC;IACnC,UAAU,EAAE,SAAS,CAAC,iBAAiB,GAAG,IAAI,CAAC,CAAC;IAChD,UAAU,EAAE,SAAS,CAAC,cAAc,GAAG,IAAI,CAAC,CAAC;IAC7C,SAAS,EAAE,SAAS,CAAC,WAAW,GAAG,IAAI,CAAC,GAAG,IAAI,CAAC;CACjD,CAAC;AAGF,MAAM,MAAM,uBAAuB,GAAG;IACpC,OAAO,EAAE,MAAM,CAAC;IAChB,OAAO,EAAE,YAAY,CAAC;IACtB,QAAQ,EAAE,SAAS,CAAC;IACpB,kEAAkE;IAClE,SAAS,CAAC,EAAE,SAAS,CAAC,WAAW,GAAG,IAAI,CAAC,CAAC;IAC1C,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,KAAK,CAAC,EAAE,aAAa,CAAC;CACvB,CAAC;AAEF,MAAM,MAAM,0BAA0B,GAAG;IACvC,QAAQ,CAAC,EAAE,SAAS,CAAC;IACrB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,KAAK,CAAC,EAAE,aAAa,CAAC;IACtB,uDAAuD;IACvD,IAAI,CAAC,EAAE,IAAI,CAAC;IACZ,+BAA+B;IAC/B,KAAK,CAAC,EAAE,KAAK,CAAC;IACd,qCAAqC;IACrC,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,gDAAgD;IAChD,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB,CAAC;AAEF,MAAM,MAAM,0BAA0B,GAAG;IACvC,QAAQ,EAAE,SAAS,CAAC;IACpB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,KAAK,CAAC,EAAE,aAAa,CAAC;IACtB,IAAI,CAAC,EAAE,IAAI,CAAC;IACZ,KAAK,CAAC,EAAE,KAAK,CAAC;IACd,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB,CAAC;AAEF,MAAM,MAAM,wBAAwB,GAAG;IACrC,QAAQ,EAAE,SAAS,CAAC;IACpB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,KAAK,CAAC,EAAE,aAAa,CAAC;CACvB,CAAC;AAEF,MAAM,MAAM,wBAAwB,GAAG;IACrC,QAAQ,EAAE,SAAS,CAAC;IACpB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,KAAK,CAAC,EAAE,aAAa,CAAC;CACvB,CAAC;AAEF,MAAM,MAAM,4BAA4B,GAAG;IACzC,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,KAAK,CAAC,EAAE,aAAa,CAAC;CACvB,CAAC;AAGF,MAAM,MAAM,YAAY,CAAC,CAAC,GAAG,MAAM,IAAI;IACrC,KAAK,EAAE,CAAC,CAAC;IACT,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,CAAC,EAAE,SAAS,CAAC;IACjB,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB,CAAC;AAEF,MAAM,MAAM,yBAAyB,CAAC,CAAC,GAAG,MAAM,IAAI;IAClD,KAAK,EAAE,CAAC,CAAC;IACT,OAAO,EAAE,YAAY,CAAC,CAAC,CAAC,EAAE,CAAC;IAC3B,aAAa,EAAE,CAAC,KAAK,EAAE,CAAC,KAAK,IAAI,CAAC;IAClC,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,KAAK,CAAC,EAAE,aAAa,CAAC;IACtB,YAAY,CAAC,EAAE,CAAC,MAAM,EAAE,YAAY,CAAC,CAAC,CAAC,KAAK,SAAS,CAAC;IACtD,WAAW,CAAC,EAAE,CAAC,MAAM,EAAE,YAAY,CAAC,CAAC,CAAC,GAAG,SAAS,KAAK,SAAS,CAAC;CAClE,CAAC;AAGF,MAAM,MAAM,8BAA8B,GAAG;IAC3C,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;IAClC,YAAY,CAAC,EAAE,MAAM,EAAE,CAAC;IACxB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,KAAK,CAAC,EAAE,aAAa,CAAC;CACvB,CAAC;AAGF,MAAM,MAAM,yBAAyB,GAAG;IACtC,OAAO,EAAE,OAAO,CAAC;IACjB,eAAe,EAAE,CAAC,OAAO,EAAE,OAAO,KAAK,IAAI,CAAC;IAC5C,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,KAAK,CAAC,EAAE,aAAa,CAAC;CACvB,CAAC;AAGF,MAAM,MAAM,yBAAyB,GAAG;IACtC,KAAK,EAAE,MAAM,CAAC;IACd,aAAa,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;IACvC,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,KAAK,CAAC,EAAE,aAAa,CAAC;CACvB,CAAC;AAGF,MAAM,MAAM,wBAAwB,GAAG;IACrC,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;IAClC,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,IAAI,CAAC,EAAE,MAAM,GAAG,QAAQ,GAAG,KAAK,CAAC;IACjC,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,KAAK,CAAC,EAAE,aAAa,CAAC;CACvB,CAAC"}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import{s as e}from"./chunks/style-inject.es-e87a8d02.js";import{jsxs as t,Fragment as o,jsx as n}from"react/jsx-runtime";import{useState as a,useRef as r,useEffect as s,createContext as l,useContext as i,useMemo as d,forwardRef as c,createElement as p}from"react";import{u as m,o as u,f as g,s as b,a as f}from"./chunks/floating-ui.react-33212df0.js";import{Z as h}from"./chunks/index-e0185864.js";import{Portal as x}from"./portal.js";import{Elements as y,useYooptaEditor as k}from"@yoopta/editor";import"react-dom";e('[data-element-options-root]{position:relative}[data-element-options-trigger]{align-items:center;background:transparent;border:none;border-radius:4px;cursor:pointer;display:inline-flex;justify-content:center;padding:4px;transition:background-color .15s ease,opacity .15s ease}[data-element-options-trigger]:hover{background-color:rgba(0,0,0,.05)}[data-element-options-trigger]:focus-visible{outline:2px solid rgba(59,130,246,.5);outline-offset:2px}.yoo-element-options-trigger-icon{color:#6b7280;height:16px;width:16px}[data-element-options-content]{background-color:#fff;border:1px solid #e5e7eb;border-radius:8px;box-shadow:0 4px 6px -1px rgba(0,0,0,.1),0 2px 4px -2px rgba(0,0,0,.1);min-width:180px;padding:8px;z-index:50}[data-element-options-group]{display:flex;flex-direction:column;gap:6px}[data-element-options-group]+[data-element-options-group]{margin-top:8px}[data-element-options-label]{color:#6b7280;font-size:12px;font-weight:500}[data-element-options-separator]{background-color:#e5e7eb;height:1px;margin:8px 0}[data-element-options-select]{align-items:center;background-color:#fff;border:1px solid #e5e7eb;border-radius:6px;cursor:pointer;display:flex;font-size:13px;justify-content:space-between;padding:6px 10px;transition:border-color .15s ease;width:100%}[data-element-options-select]:hover{border-color:#d1d5db}[data-element-options-select]:focus-visible{outline:2px solid rgba(59,130,246,.5);outline-offset:2px}[data-element-options-select-value]{align-items:center;display:flex;gap:8px}[data-element-options-select-chevron]{color:#9ca3af;height:14px;transition:transform .15s ease;width:14px}[data-element-options-select][data-state=open] [data-element-options-select-chevron]{transform:rotate(180deg)}[data-element-options-select-content]{background-color:#fff;border:1px solid #e5e7eb;border-radius:6px;box-shadow:0 4px 6px -1px rgba(0,0,0,.1);min-width:140px;padding:4px;z-index:51}[data-element-options-select-item]{align-items:center;background:transparent;border:none;border-radius:4px;cursor:pointer;display:flex;font-size:13px;justify-content:space-between;padding:6px 8px;text-align:left;transition:background-color .15s ease;width:100%}[data-element-options-select-item]:hover{background-color:#f3f4f6}[data-element-options-select-item][data-selected=true]{background-color:#eff6ff}[data-element-options-select-item-content]{align-items:center;display:flex;gap:8px}[data-element-options-select-check]{color:#3b82f6;height:14px;width:14px}[data-element-options-select-icon]{align-items:center;display:flex;height:16px;justify-content:center;width:16px}[data-element-options-select-color]{border:1px solid rgba(0,0,0,.1);border-radius:50%;display:inline-block;height:12px;width:12px}[data-element-options-color-picker]{align-items:center;background-color:#fff;border:1px solid #e5e7eb;border-radius:6px;cursor:pointer;display:flex;font-size:13px;gap:8px;padding:6px 10px;transition:border-color .15s ease;width:100%}[data-element-options-color-picker]:hover{border-color:#d1d5db}[data-element-options-color-preview]{border:1px solid rgba(0,0,0,.1);border-radius:4px;display:inline-block;height:20px;width:20px}[data-element-options-color-value]{color:#6b7280;font-family:monospace;font-size:12px}[data-element-options-color-picker-content]{background-color:#fff;border:1px solid #e5e7eb;border-radius:8px;box-shadow:0 4px 6px -1px rgba(0,0,0,.1);padding:12px;z-index:51}[data-element-options-color-picker-content] .react-colorful{height:150px;width:180px}[data-element-options-color-presets]{border-top:1px solid #e5e7eb;display:flex;flex-wrap:wrap;gap:6px;margin-top:10px;padding-top:10px}[data-element-options-color-preset]{border:2px solid transparent;border-radius:4px;cursor:pointer;height:20px;padding:0;transition:border-color .15s ease,transform .15s ease;width:20px}[data-element-options-color-preset]:hover{transform:scale(1.1)}[data-element-options-color-preset][data-selected=true]{border-color:#3b82f6}[data-element-options-toggle]{align-items:center;background:transparent;border:none;cursor:pointer;display:inline-flex;gap:8px;padding:0}[data-element-options-toggle-thumb]{background-color:#e5e7eb;border-radius:10px;height:20px;position:relative;transition:background-color .2s ease;width:36px}[data-element-options-toggle-thumb]:after{background-color:#fff;border-radius:50%;box-shadow:0 1px 3px rgba(0,0,0,.1);content:"";height:16px;left:2px;position:absolute;top:2px;transition:transform .2s ease;width:16px}[data-element-options-toggle][data-state=checked] [data-element-options-toggle-thumb]{background-color:#3b82f6}[data-element-options-toggle][data-state=checked] [data-element-options-toggle-thumb]:after{transform:translateX(16px)}[data-element-options-toggle-label]{color:#374151;font-size:13px}[data-element-options-slider]{align-items:center;display:flex;gap:10px}[data-element-options-slider-input]{-webkit-appearance:none;-moz-appearance:none;appearance:none;background:linear-gradient(to right,#3b82f6 0,#3b82f6 var(--slider-percentage,0),#e5e7eb var(--slider-percentage,0),#e5e7eb 100%);border-radius:2px;cursor:pointer;flex:1;height:4px}[data-element-options-slider-input]::-webkit-slider-thumb{-webkit-appearance:none;appearance:none;background-color:#fff;border:2px solid #3b82f6;border-radius:50%;cursor:pointer;height:14px;-webkit-transition:transform .15s ease;transition:transform .15s ease;width:14px}[data-element-options-slider-input]::-webkit-slider-thumb:hover{transform:scale(1.1)}[data-element-options-slider-value]{color:#6b7280;font-family:monospace;font-size:12px;min-width:32px;text-align:right}[data-element-options-input]{background-color:#fff;border:1px solid #e5e7eb;border-radius:6px;font-size:13px;padding:6px 10px;transition:border-color .15s ease;width:100%}[data-element-options-input]:hover{border-color:#d1d5db}[data-element-options-input]:focus{border-color:#3b82f6;box-shadow:0 0 0 2px rgba(59,130,246,.1);outline:none}[data-element-options-input]::-moz-placeholder{color:#9ca3af}[data-element-options-input]::placeholder{color:#9ca3af}@media (prefers-color-scheme:dark){[data-element-options-color-picker-content],[data-element-options-content],[data-element-options-select-content]{background-color:#1f2937;border-color:#374151}[data-element-options-label]{color:#9ca3af}[data-element-options-separator]{background-color:#374151}[data-element-options-color-picker],[data-element-options-input],[data-element-options-select]{background-color:#1f2937;border-color:#374151;color:#f3f4f6}[data-element-options-color-picker]:hover,[data-element-options-input]:hover,[data-element-options-select]:hover{border-color:#4b5563}[data-element-options-select-item]:hover{background-color:#374151}[data-element-options-select-item][data-selected=true]{background-color:rgba(59,130,246,.2)}[data-element-options-color-presets]{border-top-color:#374151}[data-element-options-toggle-thumb]{background-color:#374151}[data-element-options-toggle-label]{color:#d1d5db}[data-element-options-slider-input]{background:linear-gradient(to right,#3b82f6 0,#3b82f6 var(--slider-percentage,0),#374151 var(--slider-percentage,0),#374151 100%)}.yoo-element-options-trigger-icon{color:#9ca3af}[data-element-options-trigger]:hover{background-color:hsla(0,0%,100%,.1)}}');const v=["#000000","#6B7280","#EF4444","#F59E0B","#22C55E","#3B82F6","#8B5CF6","#EC4899"],w=({value:e,onChange:l,presetColors:i=v,className:d,style:c})=>{const[p,y]=a(!1),k=r(null),{refs:w,floatingStyles:O}=m({open:p,placement:"bottom-start",middleware:[u(4),g({padding:8}),b({padding:8})],whileElementsMounted:f});s(()=>{k.current&&w.setReference(k.current)},[w]),s(()=>{if(!p)return;const e=e=>{const t=e.target;k.current&&!k.current.contains(t)&&w.floating.current&&!w.floating.current.contains(t)&&y(!1)},t=e=>{"Escape"===e.key&&y(!1)};return document.addEventListener("mousedown",e),document.addEventListener("keydown",t),()=>{document.removeEventListener("mousedown",e),document.removeEventListener("keydown",t)}},[p,w.floating]);const j=e=>{e.preventDefault()};return t(o,{children:[t("button",Object.assign({ref:k,type:"button",className:d,style:c,onClick:e=>{e.preventDefault(),e.stopPropagation(),y(!p)},onMouseDown:j,"data-element-options-color-picker":!0,"data-state":p?"open":"closed","aria-expanded":p},{children:[n("span",{"data-element-options-color-preview":!0,style:{backgroundColor:e}}),n("span",Object.assign({"data-element-options-color-value":!0},{children:e}))]})),p&&n(x,Object.assign({id:"element-options-color-picker-portal"},{children:t("div",Object.assign({ref:w.setFloating,style:O,"data-element-options-color-picker-content":!0,onMouseDown:j},{children:[n(h,{color:e,onChange:l}),i.length>0&&n("div",Object.assign({"data-element-options-color-presets":!0},{children:i.map(t=>n("button",{type:"button","data-element-options-color-preset":!0,"data-selected":t===e,style:{backgroundColor:t},onClick:()=>(e=>{l(e)})(t),onMouseDown:j,"aria-label":`Select color ${t}`},t))}))]}))}))]})};w.displayName="ElementOptions.ColorPicker";const O=l(null);function j(){const e=i(O);if(!e)throw new Error("useElementOptionsContext must be used within an ElementOptions.Root");return e}function N(){const{blockId:e,element:t,editor:o,isOpen:n,setIsOpen:a}=j();return{blockId:e,element:t,editor:o,isOpen:n,setIsOpen:a}}function E(){const{blockId:e,element:t,editor:o}=j();return n=>{y.updateElement(o,{blockId:e,type:t.type,props:Object.assign(Object.assign({},t.props),n)})}}O.displayName="ElementOptionsContext";const C=({children:e,className:t,style:o,side:a="bottom",align:l="end",sideOffset:i=4,alignOffset:d=0})=>{const{isOpen:c,setIsOpen:p,triggerRef:h,contentRef:y}=j(),k=r(null),v="center"===l?a:`${a}-${l}`,{refs:w,floatingStyles:O}=m({open:c,placement:v,middleware:[u({mainAxis:i,crossAxis:d}),g({padding:8}),b({padding:8})],whileElementsMounted:f});return s(()=>{h.current&&w.setReference(h.current)},[h,w]),s(()=>{if(!c)return;const e=e=>{const t=e.target,o=h.current,n=k.current;o&&!o.contains(t)&&n&&!n.contains(t)&&p(!1)},t=e=>{"Escape"===e.key&&p(!1)};return document.addEventListener("mousedown",e),document.addEventListener("keydown",t),()=>{document.removeEventListener("mousedown",e),document.removeEventListener("keydown",t)}},[c,p,h]),c?n(x,Object.assign({id:"element-options-portal"},{children:n("div",Object.assign({ref:e=>{w.setFloating(e),k.current=e,y&&(y.current=e)},className:t,style:Object.assign(Object.assign({},O),o),"data-element-options-content":!0,"data-state":"open","data-side":a,"data-align":l,role:"dialog","aria-modal":"true"},{children:e}))})):null};C.displayName="ElementOptions.Content";const D=({children:e,className:t,style:o})=>n("div",Object.assign({className:t,style:o,"data-element-options-group":!0},{children:e}));D.displayName="ElementOptions.Group";const z=({value:e,onChange:t,placeholder:o,type:a="text",className:r,style:s})=>n("input",{type:a,value:e,onChange:e=>{t(e.target.value)},onMouseDown:e=>{e.stopPropagation()},placeholder:o,className:r,style:s,"data-element-options-input":!0});z.displayName="ElementOptions.Input";const L=({children:e,className:t,style:o})=>n("label",Object.assign({className:t,style:o,"data-element-options-label":!0},{children:e}));L.displayName="ElementOptions.Label";const M=({blockId:e,element:t,children:o,anchorRef:s,className:l,style:i})=>{const c=k(),[p,m]=a(!1),u=r(null),g=r(null),b=d(()=>({blockId:e,element:t,editor:c,isOpen:p,setIsOpen:m,triggerRef:u,contentRef:g,anchorRef:null!=s?s:null}),[e,t,c,p,s]);return n(O.Provider,Object.assign({value:b},{children:n("div",Object.assign({className:l,style:i,"data-element-options-root":!0,"data-state":p?"open":"closed"},{children:o}))}))};M.displayName="ElementOptions.Root";
|
|
2
|
+
/**
|
|
3
|
+
* @license lucide-react v0.294.0 - ISC
|
|
4
|
+
*
|
|
5
|
+
* This source code is licensed under the ISC license.
|
|
6
|
+
* See the LICENSE file in the root directory of this source tree.
|
|
7
|
+
*/
|
|
8
|
+
var R={xmlns:"http://www.w3.org/2000/svg",width:24,height:24,viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"};
|
|
9
|
+
/**
|
|
10
|
+
* @license lucide-react v0.294.0 - ISC
|
|
11
|
+
*
|
|
12
|
+
* This source code is licensed under the ISC license.
|
|
13
|
+
* See the LICENSE file in the root directory of this source tree.
|
|
14
|
+
*/const I=(e,t)=>{const o=c(({color:o="currentColor",size:n=24,strokeWidth:a=2,absoluteStrokeWidth:r,className:s="",children:l,...i},d)=>{return p("svg",{ref:d,...R,width:n,height:n,stroke:o,strokeWidth:r?24*Number(a)/Number(n):a,className:["lucide",`lucide-${c=e,c.replace(/([a-z0-9])([A-Z])/g,"$1-$2").toLowerCase().trim()}`,s].join(" "),...i},[...t.map(([e,t])=>p(e,t)),...Array.isArray(l)?l:[l]]);var c});return o.displayName=`${e}`,o},S=I("Check",[["path",{d:"M20 6 9 17l-5-5",key:"1gmf2c"}]]),$=I("ChevronDown",[["path",{d:"m6 9 6 6 6-6",key:"qrunsl"}]]),P=I("MoreHorizontal",[["circle",{cx:"12",cy:"12",r:"1",key:"41hilf"}],["circle",{cx:"19",cy:"12",r:"1",key:"1wjl8i"}],["circle",{cx:"5",cy:"12",r:"1",key:"1pcz8c"}]]),F=({value:e,options:l,onValueChange:i,placeholder:d="Select...",className:c,style:p,renderOption:h,renderValue:y})=>{const[k,v]=a(!1),w=r(null),O=l.find(t=>t.value===e),{refs:j,floatingStyles:N}=m({open:k,placement:"bottom-start",middleware:[u(4),g({padding:8}),b({padding:8})],whileElementsMounted:f});s(()=>{w.current&&j.setReference(w.current)},[j]),s(()=>{if(!k)return;const e=e=>{const t=e.target;w.current&&!w.current.contains(t)&&j.floating.current&&!j.floating.current.contains(t)&&v(!1)},t=e=>{"Escape"===e.key&&v(!1)};return document.addEventListener("mousedown",e),document.addEventListener("keydown",t),()=>{document.removeEventListener("mousedown",e),document.removeEventListener("keydown",t)}},[k,j.floating]);const E=e=>{e.preventDefault()},C=e=>t(o,{children:[e.icon&&n("span",Object.assign({"data-element-options-select-icon":!0},{children:e.icon})),e.color&&n("span",{"data-element-options-select-color":!0,style:{backgroundColor:e.color}}),n("span",{children:e.label})]});return t(o,{children:[t("button",Object.assign({ref:w,type:"button",className:c,style:p,onClick:e=>{e.preventDefault(),e.stopPropagation(),v(!k)},onMouseDown:E,"data-element-options-select":!0,"data-state":k?"open":"closed","aria-expanded":k,"aria-haspopup":"listbox"},{children:[n("span",Object.assign({"data-element-options-select-value":!0},{children:y?y(O):(D=O,t(o,{children:[(null==D?void 0:D.icon)&&n("span",Object.assign({"data-element-options-select-icon":!0},{children:D.icon})),(null==D?void 0:D.color)&&n("span",{"data-element-options-select-color":!0,style:{backgroundColor:D.color}}),n("span",{children:null!==(z=null==D?void 0:D.label)&&void 0!==z?z:d})]}))})),n($,{"data-element-options-select-chevron":!0})]})),k&&n(x,Object.assign({id:"element-options-select-portal"},{children:n("div",Object.assign({ref:j.setFloating,style:N,"data-element-options-select-content":!0,role:"listbox","aria-activedescendant":e,tabIndex:0},{children:l.map(o=>t("button",Object.assign({type:"button",role:"option","aria-selected":o.value===e,"data-element-options-select-item":!0,"data-selected":o.value===e,onClick:()=>{return e=o.value,i(e),void v(!1);var e},onMouseDown:E},{children:[n("span",Object.assign({"data-element-options-select-item-content":!0},{children:h?h(o):C(o)})),o.value===e&&n(S,{"data-element-options-select-check":!0})]}),String(o.value)))}))}))]});var D,z};F.displayName="ElementOptions.Select";const A=({className:e,style:t})=>n("div",{className:e,style:t,"data-element-options-separator":!0,role:"separator","aria-orientation":"horizontal"});A.displayName="ElementOptions.Separator";const B=({value:e,onValueChange:o,min:a=0,max:r=100,step:s=1,className:l,style:i})=>{const d=(e-a)/(r-a)*100;return t("div",Object.assign({className:l,style:i,"data-element-options-slider":!0,onMouseDown:e=>{e.stopPropagation()}},{children:[n("input",{type:"range",min:a,max:r,step:s,value:e,onChange:e=>{o(Number(e.target.value))},"data-element-options-slider-input":!0,style:{"--slider-percentage":`${d}%`}}),n("span",Object.assign({"data-element-options-slider-value":!0},{children:e}))]}))};B.displayName="ElementOptions.Slider";const T=({checked:e,onCheckedChange:o,label:a,className:r,style:s})=>t("button",Object.assign({type:"button",role:"switch","aria-checked":e,className:r,style:s,onClick:t=>{t.preventDefault(),t.stopPropagation(),o(!e)},onMouseDown:e=>{e.preventDefault()},onKeyDown:t=>{"Enter"!==t.key&&" "!==t.key||(t.preventDefault(),o(!e))},"data-element-options-toggle":!0,"data-state":e?"checked":"unchecked"},{children:[n("span",{"data-element-options-toggle-thumb":!0}),a&&n("span",Object.assign({"data-element-options-toggle-label":!0},{children:a}))]}));T.displayName="ElementOptions.Toggle";const W=({children:e,className:t,style:o,side:a,align:r,sideOffset:l=0,alignOffset:i=0})=>{const{isOpen:d,setIsOpen:c,triggerRef:p,anchorRef:h}=j(),x=Boolean(h&&a),y=a?"center"!==r&&r?`${a}-${r}`:a:"bottom",{refs:k,floatingStyles:v}=m({placement:y,middleware:[u({mainAxis:l,crossAxis:i}),g({padding:8}),b({padding:8})],whileElementsMounted:f});s(()=>{(null==h?void 0:h.current)&&x&&k.setReference(h.current)},[h,k,x]);const w=x?Object.assign(Object.assign({},v),o):o;return n("button",Object.assign({ref:e=>{p.current=e,x&&k.setFloating(e)},type:"button",className:t,style:w,onClick:e=>{e.preventDefault(),e.stopPropagation(),c(!d)},onMouseDown:e=>{e.preventDefault()},"data-element-options-trigger":!0,"data-state":d?"open":"closed","aria-expanded":d,"aria-haspopup":"dialog"},{children:null!=e?e:n(P,{className:"yoo-element-options-trigger-icon"})}))};W.displayName="ElementOptions.Trigger";const V=Object.assign(M,{Root:M,Trigger:W,Content:C,Group:D,Label:L,Separator:A,Select:F,ColorPicker:w,Toggle:T,Slider:B,Input:z});export{V as ElementOptions,w as ElementOptionsColorPicker,C as ElementOptionsContent,O as ElementOptionsContext,D as ElementOptionsGroup,z as ElementOptionsInput,L as ElementOptionsLabel,M as ElementOptionsRoot,F as ElementOptionsSelect,A as ElementOptionsSeparator,B as ElementOptionsSlider,T as ElementOptionsToggle,W as ElementOptionsTrigger,N as useElementOptions,j as useElementOptionsContext,E as useUpdateElementProps};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{s as r}from"./chunks/style-inject.es-e87a8d02.js";export{H as HighlightColorPicker}from"./chunks/highlight-color-picker-
|
|
1
|
+
import{s as r}from"./chunks/style-inject.es-e87a8d02.js";export{H as HighlightColorPicker}from"./chunks/highlight-color-picker-ea799f50.js";import"react/jsx-runtime";import"react";import"./chunks/floating-ui.react-33212df0.js";import"react-dom";import"./chunks/index-e0185864.js";r(".yoopta-highlight-color-picker{--hcp-bg:#fff;--hcp-fg:#18181b;--hcp-muted:#71717a;--hcp-border:#e4e4e7;--hcp-ring:#3b82f6;--hcp-shadow:0 16px 48px -12px rgba(0,0,0,.18),0 4px 16px -4px rgba(0,0,0,.1);--hcp-radius:10px;--hcp-pad:10px;--hcp-gap:10px;--hcp-width:224px;--hcp-picker-height:120px;--hcp-preset-size:24px;--hcp-input-height:26px;background:var(--hcp-bg);border:1px solid var(--hcp-border);border-radius:var(--hcp-radius);box-shadow:var(--hcp-shadow);color:var(--hcp-fg);display:flex;flex-direction:column;gap:8px;outline:none;padding:var(--hcp-pad);-webkit-user-select:none;-moz-user-select:none;user-select:none;width:var(--hcp-width);z-index:9999}.dark .yoopta-highlight-color-picker,.yoopta-highlight-color-picker[data-theme=dark]{--hcp-bg:#18181b;--hcp-fg:#fafafa;--hcp-muted:#a1a1aa;--hcp-border:#3f3f46;--hcp-shadow:0 16px 48px -12px rgba(0,0,0,.5),0 4px 16px -4px rgba(0,0,0,.3)}.yoopta-highlight-color-picker__mode-toggle{background:var(--hcp-border);border-radius:8px;display:flex;flex-shrink:0;gap:4px;padding:4px}.yoopta-highlight-color-picker__mode-btn{background:transparent;border:none;border-radius:6px;color:var(--hcp-muted);cursor:pointer;flex:1;font-size:11px;font-weight:500;line-height:1.4;outline:none;padding:4px 8px;text-align:center;transition:background-color .12s ease,color .12s ease}.yoopta-highlight-color-picker__mode-btn:hover{color:var(--hcp-fg)}.yoopta-highlight-color-picker__mode-btn[data-active=true]{background:var(--hcp-bg);box-shadow:0 1px 2px rgba(0,0,0,.1);color:var(--hcp-fg)}.yoopta-highlight-color-picker__mode-btn:focus-visible{outline:2px solid var(--hcp-ring);outline-offset:2px}.yoopta-highlight-color-picker__react-colorful{height:var(--hcp-picker-height)!important;width:100%!important}.yoopta-highlight-color-picker__react-colorful .react-colorful__saturation{border:1px solid var(--hcp-border);border-radius:8px}.yoopta-highlight-color-picker__react-colorful .react-colorful__hue{border:1px solid var(--hcp-border);border-radius:999px;height:10px;margin-top:8px}.yoopta-highlight-color-picker__react-colorful .react-colorful__pointer{border:2px solid var(--hcp-bg);border-radius:999px;box-shadow:0 2px 6px rgba(0,0,0,.22);height:16px;width:16px}.yoopta-highlight-color-picker__presets{align-items:center;display:flex;flex-direction:row;flex-wrap:nowrap;gap:6px;overflow-x:auto;padding-bottom:2px;scrollbar-color:var(--hcp-border) transparent;scrollbar-width:thin}.yoopta-highlight-color-picker__presets::-webkit-scrollbar{height:6px}.yoopta-highlight-color-picker__presets::-webkit-scrollbar-track{background:transparent}.yoopta-highlight-color-picker__presets::-webkit-scrollbar-thumb{background-color:var(--hcp-border);border-radius:999px}.yoopta-highlight-color-picker__preset{border:2px solid var(--hcp-border);border-radius:7px;cursor:pointer;flex:0 0 auto;height:var(--hcp-preset-size);outline:none;padding:0;transition:transform .12s ease,border-color .12s ease,box-shadow .12s ease;width:var(--hcp-preset-size)}.yoopta-highlight-color-picker__preset:hover{transform:scale(1.08)}.yoopta-highlight-color-picker__preset:focus-visible{border-color:var(--hcp-ring);box-shadow:0 0 0 2px var(--hcp-ring)}.yoopta-highlight-color-picker__preset[data-selected=true]{border-color:var(--hcp-ring);box-shadow:0 0 0 2px rgba(59,130,246,.35)}.yoopta-highlight-color-picker__hex-row{align-items:center;display:flex;gap:8px}.yoopta-highlight-color-picker__swatch{border:1px solid var(--hcp-border);border-radius:7px;flex:0 0 auto;height:var(--hcp-input-height);width:var(--hcp-input-height)}.yoopta-highlight-color-picker__hex-input{background:transparent;border:1px solid var(--hcp-border);border-radius:9px;color:var(--hcp-fg);flex:1;font-size:12px;height:var(--hcp-input-height);line-height:1;min-width:0;outline:none;padding:0 10px}.yoopta-highlight-color-picker__hex-input:focus{border-color:var(--hcp-ring);box-shadow:0 0 0 2px rgba(59,130,246,.25)}.yoopta-highlight-color-picker__hex-input::-moz-placeholder{color:var(--hcp-muted)}.yoopta-highlight-color-picker__hex-input::placeholder{color:var(--hcp-muted)}");
|
package/dist/index.d.ts
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
export { FloatingBlockActions, useFloatingBlockActions,
|
|
2
|
-
export { BlockOptions,
|
|
1
|
+
export { FloatingBlockActions, useFloatingBlockActions, } from './floating-block-actions';
|
|
2
|
+
export { BlockOptions, useBlockActions, useBlockOptionsContext } from './block-options';
|
|
3
3
|
export { Toolbar, useToolbar } from './toolbar';
|
|
4
4
|
export { ActionMenuList, useActionMenuList, useActionMenuListActions } from './action-menu-list';
|
|
5
5
|
export { SlashCommandMenu } from './slash-command-menu';
|
|
@@ -9,4 +9,8 @@ export { Portal } from './portal';
|
|
|
9
9
|
export { Overlay } from './overlay';
|
|
10
10
|
export { HighlightColorPicker } from './highlight-color-picker';
|
|
11
11
|
export type { HighlightColorPickerProps } from './highlight-color-picker';
|
|
12
|
+
export { SelectionBox, useRectangeSelectionBox } from './selection-box';
|
|
13
|
+
export type { RectangeSelectionProps, RectangeSelectionState, SelectionBoxProps, } from './selection-box';
|
|
14
|
+
export { ElementOptions, useElementOptions, useElementOptionsContext, useUpdateElementProps, } from './element-options';
|
|
15
|
+
export type { ElementOptionsContextValue, ElementOptionsRootProps, ElementOptionsTriggerProps, ElementOptionsContentProps, ElementOptionsGroupProps, ElementOptionsLabelProps, ElementOptionsSeparatorProps, ElementOptionsSelectProps, ElementOptionsColorPickerProps, ElementOptionsToggleProps, ElementOptionsSliderProps, ElementOptionsInputProps, SelectOption, } from './element-options';
|
|
12
16
|
//# sourceMappingURL=index.d.ts.map
|
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,oBAAoB,EACpB,uBAAuB,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,oBAAoB,EACpB,uBAAuB,GACxB,MAAM,0BAA0B,CAAC;AAClC,OAAO,EAAE,YAAY,EAAE,eAAe,EAAE,sBAAsB,EAAE,MAAM,iBAAiB,CAAC;AACxF,OAAO,EAAE,OAAO,EAAE,UAAU,EAAE,MAAM,WAAW,CAAC;AAChD,OAAO,EAAE,cAAc,EAAE,iBAAiB,EAAE,wBAAwB,EAAE,MAAM,oBAAoB,CAAC;AACjG,OAAO,EAAE,gBAAgB,EAAE,MAAM,sBAAsB,CAAC;AACxD,OAAO,EAAE,QAAQ,EAAE,aAAa,EAAE,WAAW,EAAE,eAAe,EAAE,MAAM,SAAS,CAAC;AAChF,YAAY,EAAE,KAAK,EAAE,MAAM,SAAS,CAAC;AACrC,OAAO,EAAE,MAAM,EAAE,MAAM,UAAU,CAAC;AAClC,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACpC,OAAO,EAAE,oBAAoB,EAAE,MAAM,0BAA0B,CAAC;AAChE,YAAY,EAAE,yBAAyB,EAAE,MAAM,0BAA0B,CAAC;AAC1E,OAAO,EAAE,YAAY,EAAE,uBAAuB,EAAE,MAAM,iBAAiB,CAAC;AACxE,YAAY,EACV,sBAAsB,EACtB,sBAAsB,EACtB,iBAAiB,GAClB,MAAM,iBAAiB,CAAC;AACzB,OAAO,EACL,cAAc,EACd,iBAAiB,EACjB,wBAAwB,EACxB,qBAAqB,GACtB,MAAM,mBAAmB,CAAC;AAC3B,YAAY,EACV,0BAA0B,EAC1B,uBAAuB,EACvB,0BAA0B,EAC1B,0BAA0B,EAC1B,wBAAwB,EACxB,wBAAwB,EACxB,4BAA4B,EAC5B,yBAAyB,EACzB,8BAA8B,EAC9B,yBAAyB,EACzB,yBAAyB,EACzB,wBAAwB,EACxB,YAAY,GACb,MAAM,mBAAmB,CAAC"}
|
package/dist/index.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
export{SlashCommandMenu}from"./slash-command-menu.js";export{FloatingBlockActions,useFloatingBlockActions
|
|
1
|
+
export{SlashCommandMenu}from"./slash-command-menu.js";export{ElementOptions,useElementOptions,useElementOptionsContext,useUpdateElementProps}from"./element-options.js";export{FloatingBlockActions,useFloatingBlockActions}from"./floating-block-actions.js";export{BlockOptions,useBlockActions,useBlockOptionsContext}from"./block-options.js";export{T as Toolbar,u as useToolbar}from"./chunks/hooks-ad9169d0.js";export{A as ActionMenuList,u as useActionMenuList,a as useActionMenuListActions}from"./chunks/hooks-814f49b9.js";export{ThemeProvider,ThemeToggle,useTheme,useThemeContext}from"./theme.js";export{Portal}from"./portal.js";export{Overlay}from"./overlay.js";export{H as HighlightColorPicker}from"./chunks/highlight-color-picker-ea799f50.js";export{SelectionBox,useRectangeSelectionBox}from"./selection-box.js";import"react/jsx-runtime";import"react";import"@yoopta/editor";import"./chunks/floating-ui.react-33212df0.js";import"react-dom";import"./chunks/style-inject.es-e87a8d02.js";import"./chunks/index-e0185864.js";import"./chunks/_tslib-5e145dfd.js";import"./chunks/index-06d5c4e7.js";import"./chunks/throttle-dea4a39e.js";
|
package/dist/overlay.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
import{_ as o}from"./chunks/_tslib-5e145dfd.js";import{jsx as l}from"react/jsx-runtime";import{
|
|
1
|
+
import{_ as o}from"./chunks/_tslib-5e145dfd.js";import{jsx as l}from"react/jsx-runtime";import{k as r}from"./chunks/floating-ui.react-33212df0.js";import"react";import"react-dom";const c=c=>{var{className:a,children:s,lockScroll:n=!0}=c,t=o(c,["className","children","lockScroll"]);return l(r,Object.assign({lockScroll:n,className:a},t,{onClick:o=>{var l;o.stopPropagation(),null===(l=t.onClick)||void 0===l||l.call(t,o)},onMouseDown:o=>{var l;o.stopPropagation(),null===(l=t.onMouseDown)||void 0===l||l.call(t,o)}},{children:s}))};export{c as Overlay};
|
package/dist/portal.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
import{jsx as r}from"react/jsx-runtime";import{useState as t,useRef as e,useEffect as n}from"react";import{
|
|
1
|
+
import{jsx as r}from"react/jsx-runtime";import{useState as t,useRef as e,useEffect as n}from"react";import{j as o}from"./chunks/floating-ui.react-33212df0.js";import{useYooptaEditor as c}from"@yoopta/editor";import"react-dom";const a=new WeakMap,i=i=>{const[u,m]=t(!1),l=e(null),s=c();return n(()=>{m(!0);const r=s.refElement;if(!r)return;let t=r.querySelector(".yoopta-portal-container");t||(t=document.createElement("div"),t.className="yoopta-portal-container",r.appendChild(t),a.set(t,0));const e=a.get(t)||0;return a.set(t,e+1),l.current=t,()=>{if(l.current){const r=a.get(l.current)||0,t=Math.max(0,r-1);a.set(l.current,t),0===t&&l.current.parentNode&&(l.current.remove(),a.delete(l.current))}}},[s]),u&&l.current?r(o,Object.assign({id:`${i.id}-${s.id}`,root:l.current},{children:i.children})):null};export{i as Portal};
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
import type { YooEditor } from '@yoopta/editor';
|
|
2
|
+
export type SelectionBoxRoot = HTMLElement | {
|
|
3
|
+
current: HTMLElement | null;
|
|
4
|
+
};
|
|
5
|
+
export type RectangeSelectionProps = {
|
|
6
|
+
editor: YooEditor;
|
|
7
|
+
root?: SelectionBoxRoot;
|
|
8
|
+
};
|
|
9
|
+
export type RectangeSelectionState = {
|
|
10
|
+
origin: [number, number];
|
|
11
|
+
coords: [number, number];
|
|
12
|
+
selection: boolean;
|
|
13
|
+
};
|
|
14
|
+
export type SelectionBoxProps = {
|
|
15
|
+
selectionBoxElement?: SelectionBoxRoot | null;
|
|
16
|
+
};
|
|
17
|
+
declare const SelectionBox: ({ selectionBoxElement }: SelectionBoxProps) => import("react/jsx-runtime").JSX.Element | null;
|
|
18
|
+
export { SelectionBox };
|
|
19
|
+
//# sourceMappingURL=SelectionBox.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"SelectionBox.d.ts","sourceRoot":"","sources":["../../src/selection-box/SelectionBox.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAKhD,MAAM,MAAM,gBAAgB,GAAG,WAAW,GAAG;IAAE,OAAO,EAAE,WAAW,GAAG,IAAI,CAAA;CAAE,CAAC;AAE7E,MAAM,MAAM,sBAAsB,GAAG;IACnC,MAAM,EAAE,SAAS,CAAC;IAClB,IAAI,CAAC,EAAE,gBAAgB,CAAC;CACzB,CAAC;AAEF,MAAM,MAAM,sBAAsB,GAAG;IACnC,MAAM,EAAE,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACzB,MAAM,EAAE,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACzB,SAAS,EAAE,OAAO,CAAC;CACpB,CAAC;AAEF,MAAM,MAAM,iBAAiB,GAAG;IAC9B,mBAAmB,CAAC,EAAE,gBAAgB,GAAG,IAAI,CAAC;CAC/C,CAAC;AASF,QAAA,MAAM,YAAY,4BAA6B,iBAAiB,mDA2B/D,CAAC;AAEF,OAAO,EAAE,YAAY,EAAE,CAAC"}
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import type { RectangeSelectionProps, RectangeSelectionState } from './SelectionBox';
|
|
2
|
+
type RectangeSelectionReturn = RectangeSelectionState & {
|
|
3
|
+
onClose: () => void;
|
|
4
|
+
};
|
|
5
|
+
export declare const useRectangeSelectionBox: ({ editor, root, }: RectangeSelectionProps) => RectangeSelectionReturn;
|
|
6
|
+
export {};
|
|
7
|
+
//# sourceMappingURL=hooks.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"hooks.d.ts","sourceRoot":"","sources":["../../src/selection-box/hooks.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,sBAAsB,EAAE,sBAAsB,EAAE,MAAM,gBAAgB,CAAC;AAiCrF,KAAK,uBAAuB,GAAG,sBAAsB,GAAG;IACtD,OAAO,EAAE,MAAM,IAAI,CAAC;CACrB,CAAC;AASF,eAAO,MAAM,uBAAuB,sBAGjC,sBAAsB,KAAG,uBAgG3B,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/selection-box/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAC9C,YAAY,EACV,sBAAsB,EACtB,sBAAsB,EACtB,iBAAiB,EACjB,gBAAgB,GACjB,MAAM,gBAAgB,CAAC;AACxB,OAAO,EAAE,uBAAuB,EAAE,MAAM,SAAS,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{jsx as e}from"react/jsx-runtime";import{useState as t,useRef as o,useCallback as r,useEffect as n,useMemo as s}from"react";import{Paths as i,useYooptaEditor as c,useYooptaReadOnly as l}from"@yoopta/editor";const a={origin:[0,0],coords:[0,0],selection:!1},u=({editor:e,root:s})=>{const[c,l]=t(a),u=o(c);u.current=c;const d=r(()=>{l(a)},[]);return n(()=>{var t;if(e.readOnly)return;const o=s&&"current"in s?s.current:s||null;if(!o)return;if(null===(t=e.refElement)||void 0===t?void 0:t.contains(o))throw new Error("Root element should not be a child of the editor. Please check the `selectionBoxElement` prop");const r=t=>{var o;const r=null===(o=e.refElement)||void 0===o?void 0:o.contains(t.target),n=i.getSelectedPaths(e);if(!r&&!u.current.selection&&Array.isArray(n)&&n.length>0)return e.setPath({current:null}),void d();if(r)return;const s=[t.pageX,t.pageY-window.scrollY];l({origin:s,coords:s,selection:!0})},n=t=>{if(!u.current.selection)return;const o=[t.pageX,t.pageY-window.scrollY];l(e=>Object.assign(Object.assign({},e),{coords:o}));const r=((e,t,o)=>{var r;const n=[],s=null===(r=e.refElement)||void 0===r?void 0:r.querySelectorAll("[data-yoopta-block]");if(!s)return n;const i=Math.min(t[1],o[1]),c=Math.min(t[0],o[0]),l=Math.max(t[1],o[1]),a=Math.max(t[0],o[0]);return s.forEach((e,t)=>{const o=e.getBoundingClientRect();i<o.bottom&&l>o.top&&c<o.right&&a>o.left&&n.push(t)}),n})(e,u.current.origin,o);e.setPath({current:null,selected:r,source:"selection-box"})},c=()=>{u.current.selection&&d()};return o.addEventListener("mousedown",r),o.addEventListener("mousemove",n),o.addEventListener("mouseup",c),()=>{o.removeEventListener("mousedown",r),o.removeEventListener("mousemove",n),o.removeEventListener("mouseup",c)}},[e,s,d]),Object.assign(Object.assign({},c),{onClose:d})},d=(e,t)=>e[1]>t[1]&&e[0]>t[0]?"scaleY(-1) scaleX(-1)":e[1]>t[1]?"scaleY(-1)":e[0]>t[0]?"scaleX(-1)":void 0,m=({selectionBoxElement:t})=>{const o=c(),r=l(),{coords:n,origin:i,selection:a}=u({editor:o,root:null!=t?t:void 0}),m=s(()=>({zIndex:10,left:i[0],top:i[1],height:Math.abs(n[1]-i[1]-1),width:Math.abs(n[0]-i[0]-1),userSelect:"none",transformOrigin:"top left",transform:d(i,n),position:"fixed",backgroundColor:"rgba(35, 131, 226, 0.14)"}),[i,n]);return!a||r?null:e("div",{style:m})};export{m as SelectionBox,u as useRectangeSelectionBox};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{jsx as e,jsxs as t,Fragment as n}from"react/jsx-runtime";import{createContext as r,useContext as o,forwardRef as s,useRef as a,useEffect as i,useCallback as l,useMemo as c,useLayoutEffect as d,useReducer as p}from"react";import{useYooptaEditor as f,Blocks as h,getAllowedPluginsFromElement as m,getRootBlockElementType as u}from"@yoopta/editor";import{u as g,a as v,i as b,o as y,f as x,s as w,c as O,b as j}from"./chunks/floating-ui.react-0123aadf.js";import{s as k}from"./chunks/style-inject.es-e87a8d02.js";import"react-dom";const P=({children:t,className:n})=>{const r=e=>{e.stopPropagation(),e.preventDefault()};return e("div",Object.assign({tabIndex:0,role:"listbox","aria-label":"Slash commands",className:`slash-command-content ${n||""}`,onMouseDown:r,onMouseMove:r},{children:t}))};P.displayName="SlashCommand.Content";const E=r(null);function S(){const e=o(E);if(!e)throw new Error("useSlashCommandContext must be used within a SlashCommandProvider");return e}function N(){const{state:e}=S();return e}function C(){const{actionHandlers:e}=S();return e}function _(){const{filteredItems:e,groupedItems:t}=S();return{filteredItems:e,groupedItems:t}}function T(){const{refs:e,floatingStyles:t}=S();return{refs:e,floatingStyles:t}}E.displayName="SlashCommandContext";const I=({children:t,className:n})=>{const{filteredItems:r}=S();return r.length>0?null:e("div",Object.assign({className:`slash-command-empty ${n||""}`},{children:t||"No results found"}))};I.displayName="SlashCommand.Empty";const A=()=>t(n,{children:[t("div",Object.assign({className:"slash-command-footer-hint"},{children:[e("kbd",Object.assign({className:"slash-command-kbd"},{children:"↑"})),e("kbd",Object.assign({className:"slash-command-kbd"},{children:"↓"})),e("span",{children:"Navigate"})]})),t("div",Object.assign({className:"slash-command-footer-hint"},{children:[e("kbd",Object.assign({className:"slash-command-kbd"},{children:"↵"})),e("span",{children:"Select"})]})),t("div",Object.assign({className:"slash-command-footer-hint"},{children:[e("kbd",Object.assign({className:"slash-command-kbd"},{children:"Esc"})),e("span",{children:"Close"})]}))]}),R=({children:t,className:n,showHints:r=!0})=>e("div",Object.assign({className:`slash-command-footer ${n||""}`},{children:t||r&&e(A,{})}));R.displayName="SlashCommand.Footer";const D=({children:n,heading:r,className:o})=>t("div",Object.assign({role:"group","aria-label":r,className:`slash-command-group ${o||""}`},{children:[r&&e("div",Object.assign({className:"slash-command-group-heading"},{children:r})),n]}));D.displayName="SlashCommand.Group";const B=s(({placeholder:n="Search blocks...",className:r,showTrigger:o=!0,showEscHint:s=!0},a)=>{const{state:i,actionHandlers:l}=S();return t("div",Object.assign({className:`slash-command-input-wrapper ${r||""}`},{children:[o&&e("span",Object.assign({className:"slash-command-input-trigger"},{children:"/"})),e("input",{ref:a,type:"text",className:"slash-command-input",placeholder:n,value:i.search,onChange:e=>l.setSearch(e.target.value),autoComplete:"off",autoCorrect:"off",autoCapitalize:"off",spellCheck:!1}),s&&e("kbd",Object.assign({className:"slash-command-kbd"},{children:"ESC"}))]}))});B.displayName="SlashCommand.Input";const L=({children:r,value:o,title:s,description:c,icon:d,shortcut:p,disabled:f=!1,onSelect:h,className:m})=>{const{state:u,actionHandlers:g,filteredItems:v}=S(),b=a(null),y=v.findIndex(e=>e.id===o),x=y===u.selectedIndex&&-1!==y,w=-1!==y;i(()=>{x&&b.current&&b.current.scrollIntoView({block:"nearest",behavior:"smooth"})},[x]);const O=l(()=>{f||(h&&h(),g.selectItem(y),g.executeSelected())},[f,h,g,y]),j=l(()=>{f||-1===y||g.selectItem(y)},[f,y,g]);if(!w)return null;const k=r||t(n,{children:[d&&e("div",Object.assign({className:"slash-command-item-icon"},{children:d})),t("div",Object.assign({className:"slash-command-item-content"},{children:[s&&e("div",Object.assign({className:"slash-command-item-title"},{children:s})),c&&e("div",Object.assign({className:"slash-command-item-description"},{children:c}))]})),p&&p.length>0&&e("div",Object.assign({className:"slash-command-item-shortcut"},{children:p.map(t=>e("kbd",Object.assign({className:"slash-command-kbd"},{children:t}),t))}))]});return e("button",Object.assign({ref:b,type:"button",role:"option","aria-selected":x,"aria-disabled":f,"data-selected":x,"data-disabled":f,"data-value":o,className:`slash-command-item ${m||""}`,onClick:O,onMouseEnter:j,onMouseDown:e=>e.preventDefault(),disabled:f},{children:k}))};L.displayName="SlashCommand.Item";const q=({children:t,className:n,style:r})=>e("div",Object.assign({role:"group",className:`slash-command-list ${null!=n?n:""}`,style:r},{children:t}));q.displayName="SlashCommand.List";const M=({children:t,className:n})=>e("div",Object.assign({className:`slash-command-loading ${n||""}`},{children:t||e("div",{className:"slash-command-spinner"})}));M.displayName="SlashCommand.Loading";var z={ancestors(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},{reverse:n=!1}=t,r=z.levels(e,t);return r=n?r.slice(1):r.slice(0,-1)},common(e,t){for(var n=[],r=0;r<e.length&&r<t.length;r++){var o=e[r];if(o!==t[r])break;n.push(o)}return n},compare(e,t){for(var n=Math.min(e.length,t.length),r=0;r<n;r++){if(e[r]<t[r])return-1;if(e[r]>t[r])return 1}return 0},endsAfter(e,t){var n=e.length-1,r=e.slice(0,n),o=t.slice(0,n),s=e[n],a=t[n];return z.equals(r,o)&&s>a},endsAt(e,t){var n=e.length,r=e.slice(0,n),o=t.slice(0,n);return z.equals(r,o)},endsBefore(e,t){var n=e.length-1,r=e.slice(0,n),o=t.slice(0,n),s=e[n],a=t[n];return z.equals(r,o)&&s<a},equals:(e,t)=>e.length===t.length&&e.every((e,n)=>e===t[n]),hasPrevious:e=>e[e.length-1]>0,isAfter:(e,t)=>1===z.compare(e,t),isAncestor:(e,t)=>e.length<t.length&&0===z.compare(e,t),isBefore:(e,t)=>-1===z.compare(e,t),isChild:(e,t)=>e.length===t.length+1&&0===z.compare(e,t),isCommon:(e,t)=>e.length<=t.length&&0===z.compare(e,t),isDescendant:(e,t)=>e.length>t.length&&0===z.compare(e,t),isParent:(e,t)=>e.length+1===t.length&&0===z.compare(e,t),isPath:e=>Array.isArray(e)&&(0===e.length||"number"==typeof e[0]),isSibling(e,t){if(e.length!==t.length)return!1;var n=e.slice(0,-1),r=t.slice(0,-1);return e[e.length-1]!==t[t.length-1]&&z.equals(n,r)},levels(e){for(var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},{reverse:n=!1}=t,r=[],o=0;o<=e.length;o++)r.push(e.slice(0,o));return n&&r.reverse(),r},next(e){if(0===e.length)throw new Error("Cannot get the next path of a root path [".concat(e,"], because it has no next index."));var t=e[e.length-1];return e.slice(0,-1).concat(t+1)},operationCanTransformPath(e){switch(e.type){case"insert_node":case"remove_node":case"merge_node":case"split_node":case"move_node":return!0;default:return!1}},parent(e){if(0===e.length)throw new Error("Cannot get the parent path of the root path [".concat(e,"]."));return e.slice(0,-1)},previous(e){if(0===e.length)throw new Error("Cannot get the previous path of a root path [".concat(e,"], because it has no previous index."));var t=e[e.length-1];if(t<=0)throw new Error("Cannot get the previous path of a first child path [".concat(e,"] because it would result in a negative index."));return e.slice(0,-1).concat(t-1)},relative(e,t){if(!z.isAncestor(t,e)&&!z.equals(e,t))throw new Error("Cannot get the relative path of [".concat(e,"] inside ancestor [").concat(t,"], because it is not above or equal to the path."));return e.slice(t.length)},transform(e,t){var n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};if(!e)return null;var r=[...e],{affinity:o="forward"}=n;if(0===e.length)return r;switch(t.type){case"insert_node":var{path:s}=t;(z.equals(s,r)||z.endsBefore(s,r)||z.isAncestor(s,r))&&(r[s.length-1]+=1);break;case"remove_node":var{path:a}=t;if(z.equals(a,r)||z.isAncestor(a,r))return null;z.endsBefore(a,r)&&(r[a.length-1]-=1);break;case"merge_node":var{path:i,position:l}=t;z.equals(i,r)||z.endsBefore(i,r)?r[i.length-1]-=1:z.isAncestor(i,r)&&(r[i.length-1]-=1,r[i.length]+=l);break;case"split_node":var{path:c,position:d}=t;if(z.equals(c,r)){if("forward"===o)r[r.length-1]+=1;else if("backward"!==o)return null}else z.endsBefore(c,r)?r[c.length-1]+=1:z.isAncestor(c,r)&&e[c.length]>=d&&(r[c.length-1]+=1,r[c.length]-=d);break;case"move_node":var{path:p,newPath:f}=t;if(z.equals(p,f))return r;if(z.isAncestor(p,r)||z.equals(p,r)){var h=f.slice();return z.endsBefore(p,f)&&p.length<f.length&&(h[p.length-1]-=1),h.concat(r.slice(p.length))}z.isSibling(p,f)&&(z.isAncestor(f,r)||z.equals(f,r))?z.endsBefore(p,r)?r[p.length-1]-=1:r[p.length-1]+=1:z.endsBefore(f,r)||z.equals(f,r)||z.isAncestor(f,r)?(z.endsBefore(p,r)&&(r[p.length-1]-=1),r[f.length-1]+=1):z.endsBefore(p,r)&&(z.equals(f,r)&&(r[f.length-1]+=1),r[p.length-1]-=1)}return r}};function F(e){return F="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},F(e)}function V(e){var t=function(e,t){if("object"!==F(e)||null===e)return e;var n=e[Symbol.toPrimitive];if(void 0!==n){var r=n.call(e,t||"default");if("object"!==F(r))return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return("string"===t?String:Number)(e)}(e,"string");return"symbol"===F(t)?t:String(t)}function H(e,t,n){return(t=V(t))in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function W(e,t){if(null==e)return{};var n,r,o=function(e,t){if(null==e)return{};var n,r,o={},s=Object.keys(e);for(r=0;r<s.length;r++)n=s[r],t.indexOf(n)>=0||(o[n]=e[n]);return o}(e,t);if(Object.getOwnPropertySymbols){var s=Object.getOwnPropertySymbols(e);for(r=0;r<s.length;r++)n=s[r],t.indexOf(n)>=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(o[n]=e[n])}return o}var $=["anchor","focus"];function J(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable})),n.push.apply(n,r)}return n}var Z={edges(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},{reverse:n=!1}=t,{anchor:r,focus:o}=e;return Z.isBackward(e)===n?[r,o]:[o,r]},end(e){var[,t]=Z.edges(e);return t},equals:(e,t)=>pe.equals(e.anchor,t.anchor)&&pe.equals(e.focus,t.focus),surrounds(e,t){var n=Z.intersection(e,t);return!!n&&Z.equals(n,t)},includes(e,t){if(Z.isRange(t)){if(Z.includes(e,t.anchor)||Z.includes(e,t.focus))return!0;var[n,r]=Z.edges(e),[o,s]=Z.edges(t);return pe.isBefore(n,o)&&pe.isAfter(r,s)}var[a,i]=Z.edges(e),l=!1,c=!1;return pe.isPoint(t)?(l=pe.compare(t,a)>=0,c=pe.compare(t,i)<=0):(l=z.compare(t,a.path)>=0,c=z.compare(t,i.path)<=0),l&&c},intersection(e,t){var n=W(e,$),[r,o]=Z.edges(e),[s,a]=Z.edges(t),i=pe.isBefore(r,s)?s:r,l=pe.isBefore(o,a)?o:a;return pe.isBefore(l,i)?null:function(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{};t%2?J(Object(n),!0).forEach(function(t){H(e,t,n[t])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):J(Object(n)).forEach(function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))})}return e}({anchor:i,focus:l},n)},isBackward(e){var{anchor:t,focus:n}=e;return pe.isAfter(t,n)},isCollapsed(e){var{anchor:t,focus:n}=e;return pe.equals(t,n)},isExpanded:e=>!Z.isCollapsed(e),isForward:e=>!Z.isBackward(e),isRange:e=>se(e)&&pe.isPoint(e.anchor)&&pe.isPoint(e.focus),*points(e){yield[e.anchor,"anchor"],yield[e.focus,"focus"]},start(e){var[t]=Z.edges(e);return t},transform(e,t){var n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};if(null===e)return null;var r,o,{affinity:s="inward"}=n;if("inward"===s){var a=Z.isCollapsed(e);Z.isForward(e)?(r="forward",o=a?r:"backward"):(r="backward",o=a?r:"forward")}else"outward"===s?Z.isForward(e)?(r="backward",o="forward"):(r="forward",o="backward"):(r=s,o=s);var i=pe.transform(e.anchor,t,{affinity:r}),l=pe.transform(e.focus,t,{affinity:o});return i&&l?{anchor:i,focus:l}:null}},G=function(e){var{deep:t=!1}=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return!!se(e)&&("function"!=typeof e.apply&&(t?ee.isNodeList(e.children):Array.isArray(e.children)))},U={isAncestor(e){var{deep:t=!1}=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return se(e)&&ee.isNodeList(e.children,{deep:t})},isElement:G,isElementList(e){var{deep:t=!1}=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return Array.isArray(e)&&e.every(e=>U.isElement(e,{deep:t}))},isElementProps:e=>void 0!==e.children,isElementType:function(e,t){var n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:"type";return G(e)&&e[n]===t},matches(e,t){for(var n in t)if("children"!==n&&e[n]!==t[n])return!1;return!0}},X=["children"],Y=["text"];function K(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable})),n.push.apply(n,r)}return n}function Q(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{};t%2?K(Object(n),!0).forEach(function(t){H(e,t,n[t])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):K(Object(n)).forEach(function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))})}return e}var ee={ancestor(e,t){var n=ee.get(e,t);if(be.isText(n))throw new Error("Cannot get the ancestor node at path [".concat(t,"] because it refers to a text node instead: ").concat(he.stringify(n)));return n},ancestors(e,t){var n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};return function*(){for(var r of z.ancestors(t,n)){var o=[ee.ancestor(e,r),r];yield o}}()},child(e,t){if(be.isText(e))throw new Error("Cannot get the child of a text node: ".concat(he.stringify(e)));var n=e.children[t];if(null==n)throw new Error("Cannot get child at index `".concat(t,"` in node: ").concat(he.stringify(e)));return n},children(e,t){var n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};return function*(){for(var{reverse:r=!1}=n,o=ee.ancestor(e,t),{children:s}=o,a=r?s.length-1:0;r?a>=0:a<s.length;){var i=ee.child(o,a),l=t.concat(a);yield[i,l],a=r?a-1:a+1}}()},common(e,t,n){var r=z.common(t,n);return[ee.get(e,r),r]},descendant(e,t){var n=ee.get(e,t);if(le.isEditor(n))throw new Error("Cannot get the descendant node at path [".concat(t,"] because it refers to the root editor node instead: ").concat(he.stringify(n)));return n},descendants(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return function*(){for(var[n,r]of ee.nodes(e,t))0!==r.length&&(yield[n,r])}()},elements(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return function*(){for(var[n,r]of ee.nodes(e,t))U.isElement(n)&&(yield[n,r])}()},extractProps:e=>U.isAncestor(e)?W(e,X):W(e,Y),first(e,t){for(var n=t.slice(),r=ee.get(e,n);r&&!be.isText(r)&&0!==r.children.length;)r=r.children[0],n.push(0);return[r,n]},fragment(e,t){var n={children:e.children},[r,o]=Z.edges(t),s=ee.nodes(n,{reverse:!0,pass:e=>{var[,n]=e;return!Z.includes(t,n)}}),a=function(){if(!Z.includes(t,i)){var e=i[i.length-1];Pe(n,z.parent(i),t=>je(t,e,1))}z.equals(i,o.path)&&Ee(n,i,e=>{var t=e.text.slice(0,o.offset);return Q(Q({},e),{},{text:t})}),z.equals(i,r.path)&&Ee(n,i,e=>{var t=e.text.slice(r.offset);return Q(Q({},e),{},{text:t})})};for(var[,i]of s)a();return n.children},get(e,t){var n=ee.getIf(e,t);if(void 0===n)throw new Error("Cannot find a descendant at path [".concat(t,"] in node: ").concat(he.stringify(e)));return n},getIf(e,t){for(var n=e,r=0;r<t.length;r++){var o=t[r];if(be.isText(n)||!n.children[o])return;n=n.children[o]}return n},has(e,t){for(var n=e,r=0;r<t.length;r++){var o=t[r];if(be.isText(n)||!n.children[o])return!1;n=n.children[o]}return!0},isNode(e){var{deep:t=!1}=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return be.isText(e)||U.isElement(e,{deep:t})||le.isEditor(e,{deep:t})},isNodeList(e){var{deep:t=!1}=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return Array.isArray(e)&&e.every(e=>ee.isNode(e,{deep:t}))},last(e,t){for(var n=t.slice(),r=ee.get(e,n);r&&!be.isText(r)&&0!==r.children.length;){var o=r.children.length-1;r=r.children[o],n.push(o)}return[r,n]},leaf(e,t){var n=ee.get(e,t);if(!be.isText(n))throw new Error("Cannot get the leaf node at path [".concat(t,"] because it refers to a non-leaf node: ").concat(he.stringify(n)));return n},levels(e,t){var n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};return function*(){for(var r of z.levels(t,n)){var o=ee.get(e,r);yield[o,r]}}()},matches:(e,t)=>U.isElement(e)&&U.isElementProps(t)&&U.matches(e,t)||be.isText(e)&&be.isTextProps(t)&&be.matches(e,t),nodes(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return function*(){for(var{pass:n,reverse:r=!1}=t,{from:o=[],to:s}=t,a=new Set,i=[],l=e;!s||!(r?z.isBefore(i,s):z.isAfter(i,s));)if(a.has(l)||(yield[l,i]),a.has(l)||be.isText(l)||0===l.children.length||null!=n&&!1!==n([l,i])){if(0===i.length)break;if(!r){var c=z.next(i);if(ee.has(e,c)){i=c,l=ee.get(e,i);continue}}if(r&&0!==i[i.length-1])i=z.previous(i),l=ee.get(e,i);else i=z.parent(i),l=ee.get(e,i),a.add(l)}else{a.add(l);var d=r?l.children.length-1:0;z.isAncestor(i,o)&&(d=o[i.length]),i=i.concat(d),l=ee.get(e,i)}}()},parent(e,t){var n=z.parent(t),r=ee.get(e,n);if(be.isText(r))throw new Error("Cannot get the parent of path [".concat(t,"] because it does not exist in the root."));return r},string:e=>be.isText(e)?e.text:e.children.map(ee.string).join(""),texts(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return function*(){for(var[n,r]of ee.nodes(e,t))be.isText(n)&&(yield[n,r])}()}};function te(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable})),n.push.apply(n,r)}return n}function ne(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{};t%2?te(Object(n),!0).forEach(function(t){H(e,t,n[t])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):te(Object(n)).forEach(function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))})}return e}var re,oe={isNodeOperation:e=>oe.isOperation(e)&&e.type.endsWith("_node"),isOperation(e){if(!se(e))return!1;switch(e.type){case"insert_node":case"remove_node":return z.isPath(e.path)&&ee.isNode(e.node);case"insert_text":case"remove_text":return"number"==typeof e.offset&&"string"==typeof e.text&&z.isPath(e.path);case"merge_node":return"number"==typeof e.position&&z.isPath(e.path)&&se(e.properties);case"move_node":return z.isPath(e.path)&&z.isPath(e.newPath);case"set_node":return z.isPath(e.path)&&se(e.properties)&&se(e.newProperties);case"set_selection":return null===e.properties&&Z.isRange(e.newProperties)||null===e.newProperties&&Z.isRange(e.properties)||se(e.properties)&&se(e.newProperties);case"split_node":return z.isPath(e.path)&&"number"==typeof e.position&&se(e.properties);default:return!1}},isOperationList:e=>Array.isArray(e)&&e.every(e=>oe.isOperation(e)),isSelectionOperation:e=>oe.isOperation(e)&&e.type.endsWith("_selection"),isTextOperation:e=>oe.isOperation(e)&&e.type.endsWith("_text"),inverse(e){switch(e.type){case"insert_node":return ne(ne({},e),{},{type:"remove_node"});case"insert_text":return ne(ne({},e),{},{type:"remove_text"});case"merge_node":return ne(ne({},e),{},{type:"split_node",path:z.previous(e.path)});case"move_node":var{newPath:t,path:n}=e;if(z.equals(t,n))return e;if(z.isSibling(n,t))return ne(ne({},e),{},{path:t,newPath:n});var r=z.transform(n,e),o=z.transform(z.next(n),e);return ne(ne({},e),{},{path:r,newPath:o});case"remove_node":return ne(ne({},e),{},{type:"insert_node"});case"remove_text":return ne(ne({},e),{},{type:"insert_text"});case"set_node":var{properties:s,newProperties:a}=e;return ne(ne({},e),{},{properties:a,newProperties:s});case"set_selection":var{properties:i,newProperties:l}=e;return ne(ne({},e),{},null==i?{properties:l,newProperties:null}:null==l?{properties:null,newProperties:i}:{properties:l,newProperties:i});case"split_node":return ne(ne({},e),{},{type:"merge_node",path:z.next(e.path)})}}},se=e=>"object"==typeof e&&null!==e,ae=(e,t)=>{for(var n in e){var r=e[n],o=t[n];if(Array.isArray(r)&&Array.isArray(o)){if(r.length!==o.length)return!1;for(var s=0;s<r.length;s++)if(r[s]!==o[s])return!1}else if(se(r)&&se(o)){if(!ae(r,o))return!1}else if(r!==o)return!1}for(var a in t)if(void 0===e[a]&&void 0!==t[a])return!1;return!0},ie=e=>e.selection?e.selection:e.children.length>0?le.end(e,[]):[0];!function(e){e[e.None=0]="None",e[e.Extend=1]="Extend",e[e.ZWJ=2]="ZWJ",e[e.RI=4]="RI",e[e.Prepend=8]="Prepend",e[e.SpacingMark=16]="SpacingMark",e[e.L=32]="L",e[e.V=64]="V",e[e.T=128]="T",e[e.LV=256]="LV",e[e.LVT=512]="LVT",e[e.ExtPict=1024]="ExtPict",e[e.Any=2048]="Any"}(re||(re={})),re.L,re.L,re.V,re.LV,re.LVT,re.LV,re.V,re.V,re.T,re.LVT,re.T,re.T,re.Any,re.Extend,re.ZWJ,re.Any,re.SpacingMark,re.Prepend,re.Any,re.ZWJ,re.ExtPict,re.RI,re.RI;var le={above:(e,t)=>e.above(t),addMark(e,t,n){e.addMark(t,n)},after:(e,t,n)=>e.after(t,n),before:(e,t,n)=>e.before(t,n),deleteBackward(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},{unit:n="character"}=t;e.deleteBackward(n)},deleteForward(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},{unit:n="character"}=t;e.deleteForward(n)},deleteFragment(e,t){e.deleteFragment(t)},edges:(e,t)=>e.edges(t),elementReadOnly(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return e.elementReadOnly(t)},end:(e,t)=>e.end(t),first:(e,t)=>e.first(t),fragment:(e,t)=>e.fragment(t),hasBlocks:(e,t)=>e.hasBlocks(t),hasInlines:(e,t)=>e.hasInlines(t),hasPath:(e,t)=>e.hasPath(t),hasTexts:(e,t)=>e.hasTexts(t),insertBreak(e){e.insertBreak()},insertFragment(e,t,n){e.insertFragment(t,n)},insertNode(e,t){e.insertNode(t)},insertSoftBreak(e){e.insertSoftBreak()},insertText(e,t){e.insertText(t)},isBlock:(e,t)=>e.isBlock(t),isEdge:(e,t,n)=>e.isEdge(t,n),isEditor:e=>function(e){var{deep:t=!1}=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};if(!se(e))return!1;var n="function"==typeof e.addMark&&"function"==typeof e.apply&&"function"==typeof e.deleteFragment&&"function"==typeof e.insertBreak&&"function"==typeof e.insertSoftBreak&&"function"==typeof e.insertFragment&&"function"==typeof e.insertNode&&"function"==typeof e.insertText&&"function"==typeof e.isElementReadOnly&&"function"==typeof e.isInline&&"function"==typeof e.isSelectable&&"function"==typeof e.isVoid&&"function"==typeof e.normalizeNode&&"function"==typeof e.onChange&&"function"==typeof e.removeMark&&"function"==typeof e.getDirtyPaths&&(null===e.marks||se(e.marks))&&(null===e.selection||Z.isRange(e.selection))&&(!t||ee.isNodeList(e.children))&&oe.isOperationList(e.operations);return n}(e),isElementReadOnly:(e,t)=>e.isElementReadOnly(t),isEmpty:(e,t)=>e.isEmpty(t),isEnd:(e,t,n)=>e.isEnd(t,n),isInline:(e,t)=>e.isInline(t),isNormalizing:e=>e.isNormalizing(),isSelectable:(e,t)=>e.isSelectable(t),isStart:(e,t,n)=>e.isStart(t,n),isVoid:(e,t)=>e.isVoid(t),last:(e,t)=>e.last(t),leaf:(e,t,n)=>e.leaf(t,n),levels:(e,t)=>e.levels(t),marks:e=>e.getMarks(),next:(e,t)=>e.next(t),node:(e,t,n)=>e.node(t,n),nodes:(e,t)=>e.nodes(t),normalize(e,t){e.normalize(t)},parent:(e,t,n)=>e.parent(t,n),path:(e,t,n)=>e.path(t,n),pathRef:(e,t,n)=>e.pathRef(t,n),pathRefs:e=>e.pathRefs(),point:(e,t,n)=>e.point(t,n),pointRef:(e,t,n)=>e.pointRef(t,n),pointRefs:e=>e.pointRefs(),positions:(e,t)=>e.positions(t),previous:(e,t)=>e.previous(t),range:(e,t,n)=>e.range(t,n),rangeRef:(e,t,n)=>e.rangeRef(t,n),rangeRefs:e=>e.rangeRefs(),removeMark(e,t){e.removeMark(t)},setNormalizing(e,t){e.setNormalizing(t)},start:(e,t)=>e.start(t),string:(e,t,n)=>e.string(t,n),unhangRange:(e,t,n)=>e.unhangRange(t,n),void:(e,t)=>e.void(t),withoutNormalizing(e,t){e.withoutNormalizing(t)},shouldMergeNodesRemovePrevNode:(e,t,n)=>e.shouldMergeNodesRemovePrevNode(t,n)};function ce(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable})),n.push.apply(n,r)}return n}function de(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{};t%2?ce(Object(n),!0).forEach(function(t){H(e,t,n[t])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):ce(Object(n)).forEach(function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))})}return e}var pe={compare(e,t){var n=z.compare(e.path,t.path);return 0===n?e.offset<t.offset?-1:e.offset>t.offset?1:0:n},isAfter:(e,t)=>1===pe.compare(e,t),isBefore:(e,t)=>-1===pe.compare(e,t),equals:(e,t)=>e.offset===t.offset&&z.equals(e.path,t.path),isPoint:e=>se(e)&&"number"==typeof e.offset&&z.isPath(e.path),transform(e,t){var n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};if(null===e)return null;var{affinity:r="forward"}=n,{path:o,offset:s}=e;switch(t.type){case"insert_node":case"move_node":o=z.transform(o,t,n);break;case"insert_text":z.equals(t.path,o)&&(t.offset<s||t.offset===s&&"forward"===r)&&(s+=t.text.length);break;case"merge_node":z.equals(t.path,o)&&(s+=t.position),o=z.transform(o,t,n);break;case"remove_text":z.equals(t.path,o)&&t.offset<=s&&(s-=Math.min(s-t.offset,t.text.length));break;case"remove_node":if(z.equals(t.path,o)||z.isAncestor(t.path,o))return null;o=z.transform(o,t,n);break;case"split_node":if(z.equals(t.path,o)){if(t.position===s&&null==r)return null;(t.position<s||t.position===s&&"forward"===r)&&(s-=t.position,o=z.transform(o,t,de(de({},n),{},{affinity:"forward"})))}else o=z.transform(o,t,n);break;default:return e}return{path:o,offset:s}}},fe=void 0,he={setScrubber(e){fe=e},stringify:e=>JSON.stringify(e,fe)},me=["text"],ue=["anchor","focus","merge"];function ge(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable})),n.push.apply(n,r)}return n}function ve(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{};t%2?ge(Object(n),!0).forEach(function(t){H(e,t,n[t])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):ge(Object(n)).forEach(function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))})}return e}var be={equals(e,t){var n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{},{loose:r=!1}=n;function o(e){return W(e,me)}return ae(r?o(e):e,r?o(t):t)},isText:e=>se(e)&&"string"==typeof e.text,isTextList:e=>Array.isArray(e)&&e.every(e=>be.isText(e)),isTextProps:e=>void 0!==e.text,matches(e,t){for(var n in t)if("text"!==n&&(!e.hasOwnProperty(n)||e[n]!==t[n]))return!1;return!0},decorations(e,t){var n=[{leaf:ve({},e)}];for(var r of t){var{anchor:o,focus:s,merge:a}=r,i=W(r,ue),[l,c]=Z.edges(r),d=[],p=0,f=l.offset,h=c.offset,m=null!=a?a:Object.assign;for(var{leaf:u}of n){var{length:g}=u.text,v=p;if(p+=g,f<=v&&p<=h)m(u,i),d.push({leaf:u});else if(f!==h&&(f===p||h===v)||f>p||h<v||h===v&&0!==v)d.push({leaf:u});else{var b=u,y=void 0,x=void 0;if(h<p){var w=h-v;x={leaf:ve(ve({},b),{},{text:b.text.slice(w)})},b=ve(ve({},b),{},{text:b.text.slice(0,w)})}if(f>v){var O=f-v;y={leaf:ve(ve({},b),{},{text:b.text.slice(0,O)})},b=ve(ve({},b),{},{text:b.text.slice(O)})}m(b,i),y&&d.push(y),d.push({leaf:b}),x&&d.push(x)}}n=d}if(n.length>1){var j=0;for(var[k,P]of n.entries()){var E=j,S=E+P.leaf.text.length,N={start:E,end:S};0===k&&(N.isFirst=!0),k===n.length-1&&(N.isLast=!0),P.position=N,j=S}}return n}};function ye(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable})),n.push.apply(n,r)}return n}function xe(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{};t%2?ye(Object(n),!0).forEach(function(t){H(e,t,n[t])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):ye(Object(n)).forEach(function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))})}return e}var we=function(e,t){for(var n=arguments.length,r=new Array(n>2?n-2:0),o=2;o<n;o++)r[o-2]=arguments[o];return[...e.slice(0,t),...r,...e.slice(t)]},Oe=function(e,t,n){for(var r=arguments.length,o=new Array(r>3?r-3:0),s=3;s<r;s++)o[s-3]=arguments[s];return[...e.slice(0,t),...o,...e.slice(t+n)]},je=Oe,ke=(e,t,n)=>{if(0===t.length)throw new Error("Cannot modify the editor");for(var r=ee.get(e,t),o=t.slice(),s=n(r);o.length>1;){var a=o.pop(),i=ee.get(e,o);s=xe(xe({},i),{},{children:Oe(i.children,a,1,s)})}var l=o.pop();e.children=Oe(e.children,l,1,s)},Pe=(e,t,n)=>{0===t.length?e.children=n(e.children):ke(e,t,e=>{if(be.isText(e))throw new Error("Cannot get the element at path [".concat(t,"] because it refers to a leaf node: ").concat(he.stringify(e)));return xe(xe({},e),{},{children:n(e.children)})})},Ee=(e,t,n)=>ke(e,t,e=>{if(!be.isText(e))throw new Error("Cannot get the leaf node at path [".concat(t,"] because it refers to a non-leaf node: ").concat(he.stringify(e)));return n(e)});function Se(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable})),n.push.apply(n,r)}return n}function Ne(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{};t%2?Se(Object(n),!0).forEach(function(t){H(e,t,n[t])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):Se(Object(n)).forEach(function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))})}return e}var Ce={transform(e,t){var n=!1;switch(t.type){case"insert_node":var{path:r,node:o}=t;Pe(e,z.parent(r),e=>{var t=r[r.length-1];if(t>e.length)throw new Error('Cannot apply an "insert_node" operation at path ['.concat(r,"] because the destination is past the end of the node."));return we(e,t,o)}),n=!0;break;case"insert_text":var{path:s,offset:a,text:i}=t;if(0===i.length)break;Ee(e,s,e=>{var t=e.text.slice(0,a),n=e.text.slice(a);return Ne(Ne({},e),{},{text:t+i+n})}),n=!0;break;case"merge_node":var{path:l}=t,c=l[l.length-1],d=z.previous(l),p=d[d.length-1];Pe(e,z.parent(l),e=>{var t,n=e[c],r=e[p];if(be.isText(n)&&be.isText(r))t=Ne(Ne({},r),{},{text:r.text+n.text});else{if(be.isText(n)||be.isText(r))throw new Error('Cannot apply a "merge_node" operation at path ['.concat(l,"] to nodes of different interfaces: ").concat(he.stringify(n)," ").concat(he.stringify(r)));t=Ne(Ne({},r),{},{children:r.children.concat(n.children)})}return Oe(e,p,2,t)}),n=!0;break;case"move_node":var{path:f,newPath:h}=t,m=f[f.length-1];if(z.isAncestor(f,h))throw new Error("Cannot move a path [".concat(f,"] to new path [").concat(h,"] because the destination is inside itself."));var u=ee.get(e,f);Pe(e,z.parent(f),e=>je(e,m,1));var g=z.transform(f,t),v=g[g.length-1];Pe(e,z.parent(g),e=>we(e,v,u)),n=!0;break;case"remove_node":var{path:b}=t,y=b[b.length-1];if(Pe(e,z.parent(b),e=>je(e,y,1)),e.selection){var x=Ne({},e.selection);for(var[w,O]of Z.points(x)){var j=pe.transform(w,t);if(null!=x&&null!=j)x[O]=j;else{var k=void 0,P=void 0;for(var[E,S]of ee.texts(e)){if(-1!==z.compare(S,b)){P=[E,S];break}k=[E,S]}var N=!1;k&&P&&(N=!z.isSibling(k[1],b)&&(!!z.equals(P[1],b)||z.common(k[1],b).length<z.common(P[1],b).length)),k&&!N?x[O]={path:k[1],offset:k[0].text.length}:P?x[O]={path:P[1],offset:0}:x=null}}x&&Z.equals(x,e.selection)||(e.selection=x)}break;case"remove_text":var{path:C,offset:_,text:T}=t;if(0===T.length)break;Ee(e,C,e=>{var t=e.text.slice(0,_),n=e.text.slice(_+T.length);return Ne(Ne({},e),{},{text:t+n})}),n=!0;break;case"set_node":var{path:I,properties:A,newProperties:R}=t;if(0===I.length)throw new Error("Cannot set properties on the root node!");ke(e,I,e=>{var t=Ne({},e);for(var n in R){if("children"===n||"text"===n)throw new Error('Cannot set the "'.concat(n,'" property of nodes!'));var r=R[n];null==r?delete t[n]:t[n]=r}for(var o in A)R.hasOwnProperty(o)||delete t[o];return t});break;case"set_selection":var{newProperties:D}=t;if(null==D){e.selection=null;break}if(null==e.selection){if(!Z.isRange(D))throw new Error('Cannot apply an incomplete "set_selection" operation properties '.concat(he.stringify(D)," when there is no current selection."));e.selection=Ne({},D);break}var B=Ne({},e.selection);for(var L in D){var q=D[L];if(null==q){if("anchor"===L||"focus"===L)throw new Error('Cannot remove the "'.concat(L,'" selection property'));delete B[L]}else B[L]=q}e.selection=B;break;case"split_node":var{path:M,position:F,properties:V}=t,H=M[M.length-1];if(0===M.length)throw new Error('Cannot apply a "split_node" operation at path ['.concat(M,"] because the root node cannot be split."));Pe(e,z.parent(M),e=>{var t,n,r=e[H];if(be.isText(r)){var o=r.text.slice(0,F),s=r.text.slice(F);t=Ne(Ne({},r),{},{text:o}),n=Ne(Ne({},V),{},{text:s})}else{var a=r.children.slice(0,F),i=r.children.slice(F);t=Ne(Ne({},r),{},{children:a}),n=Ne(Ne({},V),{},{children:i})}return Oe(e,H,1,t,n)}),n=!0}if(n&&e.selection){var W=Ne({},e.selection);for(var[$,J]of Z.points(W))W[J]=pe.transform($,t);Z.equals(W,e.selection)||(e.selection=W)}}},_e={insertNodes(e,t,n){e.insertNodes(t,n)},liftNodes(e,t){e.liftNodes(t)},mergeNodes(e,t){e.mergeNodes(t)},moveNodes(e,t){e.moveNodes(t)},removeNodes(e,t){e.removeNodes(t)},setNodes(e,t,n){e.setNodes(t,n)},splitNodes(e,t){e.splitNodes(t)},unsetNodes(e,t,n){e.unsetNodes(t,n)},unwrapNodes(e,t){e.unwrapNodes(t)},wrapNodes(e,t,n){e.wrapNodes(t,n)}},Te={collapse(e,t){e.collapse(t)},deselect(e){e.deselect()},move(e,t){e.move(t)},select(e,t){e.select(t)},setPoint(e,t,n){e.setPoint(t,n)},setSelection(e,t){e.setSelection(t)}},Ie={delete(e,t){e.delete(t)},insertFragment(e,t,n){e.insertFragment(t,n)},insertText(e,t){var n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};le.withoutNormalizing(e,()=>{var{voids:r=!1}=n,{at:o=ie(e)}=n;if(z.isPath(o)&&(o=le.range(e,o)),Z.isRange(o))if(Z.isCollapsed(o))o=o.anchor;else{var s=Z.end(o);if(!r&&le.void(e,{at:s}))return;var a=Z.start(o),i=le.pointRef(e,a),l=le.pointRef(e,s);De.delete(e,{at:o,voids:r});var c=i.unref(),d=l.unref();o=c||d,De.setSelection(e,{anchor:o,focus:o})}if(!(!r&&le.void(e,{at:o})||le.elementReadOnly(e,{at:o}))){var{path:p,offset:f}=o;t.length>0&&e.apply({type:"insert_text",path:p,offset:f,text:t})}})}};function Ae(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable})),n.push.apply(n,r)}return n}function Re(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{};t%2?Ae(Object(n),!0).forEach(function(t){H(e,t,n[t])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):Ae(Object(n)).forEach(function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))})}return e}var De=Re(Re(Re(Re({},Ce),_e),Te),Ie);const Be="ArrowUp",Le="ArrowDown",qe="Enter",Me="Escape";function ze(e){return e.toLowerCase().trim()}function Fe(e,t){var n,r,o;if(!t)return 0;const s=ze(t),a=ze(e.title),i=ze(e.id);return a===s?100:a.startsWith(s)?80:i.startsWith(s)?70:(null===(n=e.keywords)||void 0===n?void 0:n.some(e=>ze(e)===s))?60:a.includes(s)?50:(null===(r=e.keywords)||void 0===r?void 0:r.some(e=>ze(e).startsWith(s)))?40:(null===(o=e.keywords)||void 0===o?void 0:o.some(e=>ze(e).includes(s)))?30:e.description&&ze(e.description).includes(s)?20:10}function Ve({items:e,search:t}){const n=c(()=>{const n=e.filter(e=>!e.disabled&&function(e,t){var n;if(!t)return!0;const r=ze(t);return!!(ze(e.title).includes(r)||ze(e.id).includes(r)||e.description&&ze(e.description).includes(r)||(null===(n=e.keywords)||void 0===n?void 0:n.some(e=>ze(e).includes(r))))}(e,t));return t&&n.sort((e,n)=>Fe(n,t)-Fe(e,t)),n},[e,t]),r=c(()=>{const e=new Map;return n.forEach(t=>{const n=t.group||"default",r=e.get(n)||[];e.set(n,[...r,t])}),e},[n]);return{filteredItems:n,groupedItems:r,isEmpty:0===n.length}}const He="undefined"!=typeof window?d:i;const We={isOpen:!1,search:"",selectedIndex:0,virtualElement:null,floatingContext:null};function $e(e,t){switch(t.type){case"OPEN":return Object.assign(Object.assign({},e),{isOpen:!0,search:"",selectedIndex:0,virtualElement:t.virtualElement,floatingContext:t.floatingContext});case"CLOSE":return Object.assign(Object.assign({},e),{isOpen:!1,search:"",selectedIndex:0,virtualElement:null,floatingContext:null});case"SET_SEARCH":return Object.assign(Object.assign({},e),{search:t.search,selectedIndex:0});case"SET_SELECTED_INDEX":return Object.assign(Object.assign({},e),{selectedIndex:t.index});case"RESET_SELECTION":return Object.assign(Object.assign({},e),{selectedIndex:0});default:return e}}function Je({items:e,trigger:t="/",onSelect:n}){const r=f(),[o,s]=p($e,We),a=c(()=>{if(!o.isOpen)return e;let t=null;if("number"==typeof r.path.current){const e=h.getBlockSlate(r,{at:r.path.current});e&&(t=m(r,e))}return t&&t.length>0?t.map(e=>{var t,n;const o=null===(t=r.plugins[e].options)||void 0===t?void 0:t.display;return{id:e,title:null!==(n=null==o?void 0:o.title)&&void 0!==n?n:e,description:null==o?void 0:o.description,icon:null==o?void 0:o.icon}}):e},[e,o.isOpen,r]),{filteredItems:d,groupedItems:u,isEmpty:k}=Ve({items:a,search:o.search}),{refs:P,floatingStyles:E,floatingContext:S}=function({isOpen:e,virtualElement:t}){const{refs:n,floatingStyles:r,context:o,update:s}=g({open:e,placement:"bottom-start",whileElementsMounted:v,middleware:[b(),y(10),x({fallbackPlacements:["top-start","top","bottom"],padding:10,crossAxis:!1,fallbackStrategy:"bestFit"}),w({padding:10}),O({apply({availableHeight:e,elements:t}){Object.assign(t.floating.style,{maxHeight:`${Math.max(200,e-20)}px`})},padding:10})],strategy:"fixed"});return He(()=>{t&&(n.setReference(t),s())},[n,e,t,s]),{refs:n,floatingStyles:r,floatingContext:o}}({isOpen:o.isOpen,virtualElement:o.virtualElement}),{isMounted:N,styles:C}=j(S,{duration:100}),_=l((e,t)=>{s({type:"OPEN",virtualElement:e,floatingContext:t})},[]),T=l(()=>{s({type:"CLOSE"})},[]),I=l(e=>{s({type:"SET_SEARCH",search:e})},[]),A=e=>{s({type:"SET_SELECTED_INDEX",index:e})},R=()=>{const e=d[o.selectedIndex];e&&(e.onSelect&&e.onSelect(),n?n(e):r.toggleBlock(e.id,{scope:"auto",focus:!0,preserveContent:!1}),T())};i(()=>{var e,n;if("number"!=typeof r.path.current)return;if(!h.getBlock(r,{at:r.path.current}))return;const s=r.refElement;if(!s)return;const a=e=>{if(e.isComposing)return;const t=h.getBlockSlate(r,{at:r.path.current});if(!(null==t?void 0:t.selection))return;if(s.contains(e.target)){if(function(e){return function(e){return"/"===e.key||191===e.keyCode||191===e.which||"Slash"===e.code||"/"===e.key||"."===e.key&&e.shiftKey}(e)}(e)){const e=z.parent(t.selection.anchor.path),n=le.string(t,e);if(le.isStart(t,t.selection.anchor,t.selection.focus)&&0===n.trim().length){const e=function(){const e=window.getSelection();if(!e||0===e.rangeCount)return null;const t=e.getRangeAt(0),n=t.getBoundingClientRect(),r=t.getClientRects();return{getBoundingClientRect:()=>n,getClientRects:()=>r}}();e&&_(e,S)}}o.isOpen&&(e.key===Le?(e.preventDefault(),e.stopPropagation(),A(o.selectedIndex===d.length-1?0:o.selectedIndex+1)):e.key===Be?(e.preventDefault(),e.stopPropagation(),A(0===o.selectedIndex?d.length-1:o.selectedIndex-1)):e.key===qe?(e.preventDefault(),e.stopPropagation(),R()):e.key===Me&&(e.preventDefault(),e.stopPropagation(),T()))}},i=e=>{if(e.isComposing)return;if(!o.isOpen)return;if(e.key===Le||e.key===Be)return;const n=h.getBlockSlate(r,{at:r.path.current});if(!(null==n?void 0:n.selection))return;const s=z.parent(n.selection.anchor.path),a=le.string(n,s);if(0===a.length)return void T();const i=a.replace(t,"").trim();I(i)};return null===(e=r.refElement)||void 0===e||e.addEventListener("keydown",a),null===(n=r.refElement)||void 0===n||n.addEventListener("keyup",i),()=>{var e,t;null===(e=r.refElement)||void 0===e||e.removeEventListener("keydown",a),null===(t=r.refElement)||void 0===t||t.removeEventListener("keyup",i)}},[r.path.current,o.isOpen,o.selectedIndex,P.setReference,t,_,T,I,d.length]),i(()=>{if(!o.isOpen)return;const e=e=>{var t,n;const r=e.target;(null===(n=null===(t=P.floating)||void 0===t?void 0:t.current)||void 0===n?void 0:n.contains(r))||T()},t=setTimeout(()=>{document.addEventListener("mousedown",e)},0);return()=>{clearTimeout(t),document.removeEventListener("mousedown",e)}},[o.isOpen,T,P.floating]),i(()=>{if(!o.isOpen||!k||0===o.search.length)return;const e=setTimeout(()=>{k&&T()},2e3);return()=>clearTimeout(e)},[o.isOpen,k,o.search,T]),i(()=>{if(!o.isOpen)return;const e=document.body.style.overflow,t=document.body.style.paddingRight,n=window.innerWidth-document.documentElement.clientWidth;return document.body.style.overflow="hidden",n>0&&(document.body.style.paddingRight=`${n}px`),()=>{document.body.style.overflow=e,document.body.style.paddingRight=t}},[o.isOpen]);return{refs:P,state:o,items:e,isEmpty:k,actionHandlers:{open:_,close:T,setSearch:I,selectItem:A,executeSelected:R},groupedItems:u,filteredItems:d,floatingStyles:E,transitionStyles:C,isMounted:N}}k('.slash-command-root{--slash-command-bg:#fff;--slash-command-bg-hover:#f4f4f5;--slash-command-bg-selected:#f4f4f5;--slash-command-border:#e4e4e7;--slash-command-border-radius:.375rem;--slash-command-shadow:0 16px 48px -12px rgba(0,0,0,.18),0 4px 16px -4px rgba(0,0,0,.1);--slash-command-text:#18181b;--slash-command-text-muted:#71717a;--slash-command-text-disabled:#a1a1aa;--slash-command-accent:#3b82f6;--slash-command-item-radius:8px;--slash-command-icon-bg:#fff;--slash-command-icon-border:#e4e4e7;--slash-command-font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,sans-serif;--slash-command-font-mono:ui-monospace,SFMono-Regular,"SF Mono",Menlo,monospace}.dark .slash-command-root,.slash-command-root[data-theme=dark]{--slash-command-bg:#18181b;--slash-command-bg-hover:#27272a;--slash-command-bg-selected:#27272a;--slash-command-border:#3f3f46;--slash-command-text:#fafafa;--slash-command-text-muted:#a1a1aa;--slash-command-text-disabled:#52525b;--slash-command-icon-bg:#27272a;--slash-command-icon-border:#3f3f46}.slash-command-content{animation:slash-command-in .15s ease-out;background-color:var(--slash-command-bg);border:1px solid var(--slash-command-border);border-radius:var(--slash-command-border-radius);box-shadow:var(--slash-command-shadow);display:flex;flex-direction:column;font-family:var(--slash-command-font-family);max-height:400px;overflow:hidden;width:300px;z-index:9999}@keyframes slash-command-in{0%{opacity:0;transform:translateY(-8px) scale(.96)}to{opacity:1;transform:translateY(0) scale(1)}}.slash-command-input-wrapper{align-items:center;border-bottom:1px solid var(--slash-command-border);display:flex;flex-shrink:0;gap:8px;padding:12px 14px}.slash-command-input-trigger{color:var(--slash-command-text-muted);font-family:var(--slash-command-font-mono);font-size:14px;font-weight:500;-webkit-user-select:none;-moz-user-select:none;user-select:none}.slash-command-input{background-color:transparent;border:none;color:var(--slash-command-text);flex:1;font-family:var(--slash-command-font-family);font-size:14px;min-width:0;outline:none}.slash-command-input::-moz-placeholder{color:var(--slash-command-text-muted)}.slash-command-input::placeholder{color:var(--slash-command-text-muted)}.slash-command-kbd{align-items:center;background-color:var(--slash-command-bg-hover);border:1px solid var(--slash-command-border);border-radius:4px;color:var(--slash-command-text-muted);display:inline-flex;font-family:var(--slash-command-font-family);font-size:10px;font-weight:500;justify-content:center;padding:2px 6px;-webkit-user-select:none;-moz-user-select:none;user-select:none}.slash-command-list{display:flex;flex:1;flex-direction:column;gap:2px;overflow-x:hidden;overflow-y:auto;overscroll-behavior:contain;padding:.5rem .25rem}.slash-command-list::-webkit-scrollbar{width:6px}.slash-command-list::-webkit-scrollbar-track{background:transparent}.slash-command-list::-webkit-scrollbar-thumb{background-color:var(--slash-command-border);border-radius:3px}.slash-command-list::-webkit-scrollbar-thumb:hover{background-color:var(--slash-command-text-muted)}.slash-command-group{margin-bottom:8px}.slash-command-group:last-child{margin-bottom:0}.slash-command-group-heading{color:var(--slash-command-text-muted);font-size:11px;font-weight:600;letter-spacing:.05em;padding:8px 12px 6px;text-transform:uppercase;-webkit-user-select:none;-moz-user-select:none;user-select:none}.slash-command-item{align-items:center;background-color:transparent;border:none;border-radius:var(--slash-command-item-radius);cursor:pointer;display:flex;font-family:var(--slash-command-font-family);gap:12px;outline:none;padding:4px 6px;text-align:left;transition:background-color .1s ease;width:100%}.slash-command-item:hover,.slash-command-item[data-selected=true]{background-color:var(--slash-command-bg-selected)}.slash-command-item:focus-visible{outline:2px solid var(--slash-command-accent);outline-offset:-2px}.slash-command-item[data-disabled=true]{cursor:not-allowed;opacity:.5;pointer-events:none}.slash-command-item-icon{align-items:center;background-color:var(--slash-command-icon-bg);border:1px solid var(--slash-command-icon-border);border-radius:8px;color:var(--slash-command-text-muted);display:flex;flex-shrink:0;height:40px;justify-content:center;transition:border-color .1s ease,box-shadow .1s ease;width:40px}.slash-command-item[data-selected=true] .slash-command-item-icon{border-color:var(--slash-command-text-muted);box-shadow:0 1px 3px rgba(0,0,0,.06)}.slash-command-item-icon svg{height:20px;width:20px}.slash-command-item-content{flex:1;min-width:0}.slash-command-item-title{color:var(--slash-command-text);font-size:14px;font-weight:500}.slash-command-item-description,.slash-command-item-title{line-height:1.4;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.slash-command-item-description{color:var(--slash-command-text-muted);font-size:12px;margin-top:1px}.slash-command-item-shortcut{align-items:center;display:flex;flex-shrink:0;gap:4px}.slash-command-empty{align-items:center;color:var(--slash-command-text-muted);display:flex;flex-direction:column;font-size:14px;justify-content:center;padding:32px 16px;text-align:center}.slash-command-empty-icon{margin-bottom:8px;opacity:.5}.slash-command-separator{background-color:var(--slash-command-border);height:1px;margin:8px 12px}.slash-command-footer{align-items:center;background-color:var(--slash-command-bg-hover);border-top:1px solid var(--slash-command-border);display:flex;flex-shrink:0;gap:16px;padding:8px 14px}.slash-command-footer-hint{align-items:center;color:var(--slash-command-text-muted);display:flex;font-size:11px;gap:4px}.slash-command-loading{align-items:center;display:flex;justify-content:center;padding:24px}.slash-command-spinner{animation:slash-command-spin .6s linear infinite;border:2px solid var(--slash-command-border);border-radius:50%;border-top-color:var(--slash-command-accent);height:20px;width:20px}@keyframes slash-command-spin{to{transform:rotate(1turn)}}');const Ze=({children:t,items:n,trigger:r="/",onSelect:o,className:s})=>{const a=f(),i=c(()=>{if(Array.isArray(n)&&n.length>0)return n;return Object.keys(a.plugins).filter(e=>{var t,n;const r=u(a.plugins[e].elements),o=r?a.plugins[e].elements[r]:void 0;return"inline"!==(null===(t=null==o?void 0:o.props)||void 0===t?void 0:t.nodeType)&&"inlineVoid"!==(null===(n=null==o?void 0:o.props)||void 0===n?void 0:n.nodeType)}).map(e=>{var t,n;const r=null===(t=a.plugins[e].options)||void 0===t?void 0:t.display;return{id:e,title:null!==(n=null==r?void 0:r.title)&&void 0!==n?n:e,description:null==r?void 0:r.description,icon:null==r?void 0:r.icon}})},[n,a]),{state:l,actionHandlers:d,filteredItems:p,groupedItems:h,refs:m,floatingStyles:g,transitionStyles:v,isMounted:b}=Je({items:i,trigger:r,onSelect:o}),y=c(()=>({state:l,actionHandlers:d,items:i,filteredItems:p,groupedItems:h,refs:m,floatingStyles:g}),[l,d,i,p,h,m,g]),x=Object.assign(Object.assign({},g),v),w="function"==typeof t?t({groupedItems:h,items:i}):t;return e(E.Provider,Object.assign({value:y},{children:e("div",Object.assign({ref:m.setFloating,style:x,className:`slash-command-root ${null!=s?s:""}`},{children:b?w:null}))}))};Ze.displayName="SlashCommand.Root";const Ge=({className:t})=>e("div",{role:"separator","aria-orientation":"horizontal",className:`slash-command-separator ${t||""}`});Ge.displayName="SlashCommand.Separator";const Ue=Object.assign(Ze,{Root:Ze,Content:P,Input:B,List:q,Group:D,Item:L,Empty:I,Separator:Ge,Footer:R,Loading:M});export{P as SlashCommandContent,E as SlashCommandContext,I as SlashCommandEmpty,R as SlashCommandFooter,D as SlashCommandGroup,B as SlashCommandInput,L as SlashCommandItem,q as SlashCommandList,M as SlashCommandLoading,Ue as SlashCommandMenu,Ze as SlashCommandRoot,Ge as SlashCommandSeparator,Je as useSlashCommand,C as useSlashCommandActions,S as useSlashCommandContext,_ as useSlashCommandItems,T as useSlashCommandRefs,N as useSlashCommandState};
|
|
1
|
+
import{jsx as e,jsxs as t,Fragment as n}from"react/jsx-runtime";import{createContext as r,useContext as o,forwardRef as s,useRef as a,useEffect as i,useCallback as l,useMemo as c,useLayoutEffect as d,useReducer as p}from"react";import{useYooptaEditor as f,Blocks as h,getAllowedPluginsFromElement as m,getRootBlockElementType as u}from"@yoopta/editor";import{u as g,a as v,i as b,o as y,f as x,s as w,c as O,b as j}from"./chunks/floating-ui.react-33212df0.js";import{s as k}from"./chunks/style-inject.es-e87a8d02.js";import"react-dom";const P=({children:t,className:n})=>{const r=e=>{e.stopPropagation(),e.preventDefault()};return e("div",Object.assign({tabIndex:0,role:"listbox","aria-label":"Slash commands",className:`slash-command-content ${n||""}`,onMouseDown:r,onMouseMove:r},{children:t}))};P.displayName="SlashCommand.Content";const E=r(null);function S(){const e=o(E);if(!e)throw new Error("useSlashCommandContext must be used within a SlashCommandProvider");return e}function N(){const{state:e}=S();return e}function C(){const{actionHandlers:e}=S();return e}function _(){const{filteredItems:e,groupedItems:t}=S();return{filteredItems:e,groupedItems:t}}function T(){const{refs:e,floatingStyles:t}=S();return{refs:e,floatingStyles:t}}E.displayName="SlashCommandContext";const I=({children:t,className:n})=>{const{filteredItems:r}=S();return r.length>0?null:e("div",Object.assign({className:`slash-command-empty ${n||""}`},{children:t||"No results found"}))};I.displayName="SlashCommand.Empty";const A=()=>t(n,{children:[t("div",Object.assign({className:"slash-command-footer-hint"},{children:[e("kbd",Object.assign({className:"slash-command-kbd"},{children:"↑"})),e("kbd",Object.assign({className:"slash-command-kbd"},{children:"↓"})),e("span",{children:"Navigate"})]})),t("div",Object.assign({className:"slash-command-footer-hint"},{children:[e("kbd",Object.assign({className:"slash-command-kbd"},{children:"↵"})),e("span",{children:"Select"})]})),t("div",Object.assign({className:"slash-command-footer-hint"},{children:[e("kbd",Object.assign({className:"slash-command-kbd"},{children:"Esc"})),e("span",{children:"Close"})]}))]}),R=({children:t,className:n,showHints:r=!0})=>e("div",Object.assign({className:`slash-command-footer ${n||""}`},{children:t||r&&e(A,{})}));R.displayName="SlashCommand.Footer";const D=({children:n,heading:r,className:o})=>t("div",Object.assign({role:"group","aria-label":r,className:`slash-command-group ${o||""}`},{children:[r&&e("div",Object.assign({className:"slash-command-group-heading"},{children:r})),n]}));D.displayName="SlashCommand.Group";const B=s(({placeholder:n="Search blocks...",className:r,showTrigger:o=!0,showEscHint:s=!0},a)=>{const{state:i,actionHandlers:l}=S();return t("div",Object.assign({className:`slash-command-input-wrapper ${r||""}`},{children:[o&&e("span",Object.assign({className:"slash-command-input-trigger"},{children:"/"})),e("input",{ref:a,type:"text",className:"slash-command-input",placeholder:n,value:i.search,onChange:e=>l.setSearch(e.target.value),autoComplete:"off",autoCorrect:"off",autoCapitalize:"off",spellCheck:!1}),s&&e("kbd",Object.assign({className:"slash-command-kbd"},{children:"ESC"}))]}))});B.displayName="SlashCommand.Input";const L=({children:r,value:o,title:s,description:c,icon:d,shortcut:p,disabled:f=!1,onSelect:h,className:m})=>{const{state:u,actionHandlers:g,filteredItems:v}=S(),b=a(null),y=v.findIndex(e=>e.id===o),x=y===u.selectedIndex&&-1!==y,w=-1!==y;i(()=>{x&&b.current&&b.current.scrollIntoView({block:"nearest",behavior:"smooth"})},[x]);const O=l(()=>{f||(h&&h(),g.selectItem(y),g.executeSelected())},[f,h,g,y]),j=l(()=>{f||-1===y||g.selectItem(y)},[f,y,g]);if(!w)return null;const k=r||t(n,{children:[d&&e("div",Object.assign({className:"slash-command-item-icon"},{children:d})),t("div",Object.assign({className:"slash-command-item-content"},{children:[s&&e("div",Object.assign({className:"slash-command-item-title"},{children:s})),c&&e("div",Object.assign({className:"slash-command-item-description"},{children:c}))]})),p&&p.length>0&&e("div",Object.assign({className:"slash-command-item-shortcut"},{children:p.map(t=>e("kbd",Object.assign({className:"slash-command-kbd"},{children:t}),t))}))]});return e("button",Object.assign({ref:b,type:"button",role:"option","aria-selected":x,"aria-disabled":f,"data-selected":x,"data-disabled":f,"data-value":o,className:`slash-command-item ${m||""}`,onClick:O,onMouseEnter:j,onMouseDown:e=>e.preventDefault(),disabled:f},{children:k}))};L.displayName="SlashCommand.Item";const q=({children:t,className:n,style:r})=>e("div",Object.assign({role:"group",className:`slash-command-list ${null!=n?n:""}`,style:r},{children:t}));q.displayName="SlashCommand.List";const M=({children:t,className:n})=>e("div",Object.assign({className:`slash-command-loading ${n||""}`},{children:t||e("div",{className:"slash-command-spinner"})}));M.displayName="SlashCommand.Loading";var z={ancestors(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},{reverse:n=!1}=t,r=z.levels(e,t);return r=n?r.slice(1):r.slice(0,-1)},common(e,t){for(var n=[],r=0;r<e.length&&r<t.length;r++){var o=e[r];if(o!==t[r])break;n.push(o)}return n},compare(e,t){for(var n=Math.min(e.length,t.length),r=0;r<n;r++){if(e[r]<t[r])return-1;if(e[r]>t[r])return 1}return 0},endsAfter(e,t){var n=e.length-1,r=e.slice(0,n),o=t.slice(0,n),s=e[n],a=t[n];return z.equals(r,o)&&s>a},endsAt(e,t){var n=e.length,r=e.slice(0,n),o=t.slice(0,n);return z.equals(r,o)},endsBefore(e,t){var n=e.length-1,r=e.slice(0,n),o=t.slice(0,n),s=e[n],a=t[n];return z.equals(r,o)&&s<a},equals:(e,t)=>e.length===t.length&&e.every((e,n)=>e===t[n]),hasPrevious:e=>e[e.length-1]>0,isAfter:(e,t)=>1===z.compare(e,t),isAncestor:(e,t)=>e.length<t.length&&0===z.compare(e,t),isBefore:(e,t)=>-1===z.compare(e,t),isChild:(e,t)=>e.length===t.length+1&&0===z.compare(e,t),isCommon:(e,t)=>e.length<=t.length&&0===z.compare(e,t),isDescendant:(e,t)=>e.length>t.length&&0===z.compare(e,t),isParent:(e,t)=>e.length+1===t.length&&0===z.compare(e,t),isPath:e=>Array.isArray(e)&&(0===e.length||"number"==typeof e[0]),isSibling(e,t){if(e.length!==t.length)return!1;var n=e.slice(0,-1),r=t.slice(0,-1);return e[e.length-1]!==t[t.length-1]&&z.equals(n,r)},levels(e){for(var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},{reverse:n=!1}=t,r=[],o=0;o<=e.length;o++)r.push(e.slice(0,o));return n&&r.reverse(),r},next(e){if(0===e.length)throw new Error("Cannot get the next path of a root path [".concat(e,"], because it has no next index."));var t=e[e.length-1];return e.slice(0,-1).concat(t+1)},operationCanTransformPath(e){switch(e.type){case"insert_node":case"remove_node":case"merge_node":case"split_node":case"move_node":return!0;default:return!1}},parent(e){if(0===e.length)throw new Error("Cannot get the parent path of the root path [".concat(e,"]."));return e.slice(0,-1)},previous(e){if(0===e.length)throw new Error("Cannot get the previous path of a root path [".concat(e,"], because it has no previous index."));var t=e[e.length-1];if(t<=0)throw new Error("Cannot get the previous path of a first child path [".concat(e,"] because it would result in a negative index."));return e.slice(0,-1).concat(t-1)},relative(e,t){if(!z.isAncestor(t,e)&&!z.equals(e,t))throw new Error("Cannot get the relative path of [".concat(e,"] inside ancestor [").concat(t,"], because it is not above or equal to the path."));return e.slice(t.length)},transform(e,t){var n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};if(!e)return null;var r=[...e],{affinity:o="forward"}=n;if(0===e.length)return r;switch(t.type){case"insert_node":var{path:s}=t;(z.equals(s,r)||z.endsBefore(s,r)||z.isAncestor(s,r))&&(r[s.length-1]+=1);break;case"remove_node":var{path:a}=t;if(z.equals(a,r)||z.isAncestor(a,r))return null;z.endsBefore(a,r)&&(r[a.length-1]-=1);break;case"merge_node":var{path:i,position:l}=t;z.equals(i,r)||z.endsBefore(i,r)?r[i.length-1]-=1:z.isAncestor(i,r)&&(r[i.length-1]-=1,r[i.length]+=l);break;case"split_node":var{path:c,position:d}=t;if(z.equals(c,r)){if("forward"===o)r[r.length-1]+=1;else if("backward"!==o)return null}else z.endsBefore(c,r)?r[c.length-1]+=1:z.isAncestor(c,r)&&e[c.length]>=d&&(r[c.length-1]+=1,r[c.length]-=d);break;case"move_node":var{path:p,newPath:f}=t;if(z.equals(p,f))return r;if(z.isAncestor(p,r)||z.equals(p,r)){var h=f.slice();return z.endsBefore(p,f)&&p.length<f.length&&(h[p.length-1]-=1),h.concat(r.slice(p.length))}z.isSibling(p,f)&&(z.isAncestor(f,r)||z.equals(f,r))?z.endsBefore(p,r)?r[p.length-1]-=1:r[p.length-1]+=1:z.endsBefore(f,r)||z.equals(f,r)||z.isAncestor(f,r)?(z.endsBefore(p,r)&&(r[p.length-1]-=1),r[f.length-1]+=1):z.endsBefore(p,r)&&(z.equals(f,r)&&(r[f.length-1]+=1),r[p.length-1]-=1)}return r}};function F(e){return F="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},F(e)}function V(e){var t=function(e,t){if("object"!==F(e)||null===e)return e;var n=e[Symbol.toPrimitive];if(void 0!==n){var r=n.call(e,t||"default");if("object"!==F(r))return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return("string"===t?String:Number)(e)}(e,"string");return"symbol"===F(t)?t:String(t)}function H(e,t,n){return(t=V(t))in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function W(e,t){if(null==e)return{};var n,r,o=function(e,t){if(null==e)return{};var n,r,o={},s=Object.keys(e);for(r=0;r<s.length;r++)n=s[r],t.indexOf(n)>=0||(o[n]=e[n]);return o}(e,t);if(Object.getOwnPropertySymbols){var s=Object.getOwnPropertySymbols(e);for(r=0;r<s.length;r++)n=s[r],t.indexOf(n)>=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(o[n]=e[n])}return o}var $=["anchor","focus"];function J(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable})),n.push.apply(n,r)}return n}var Z={edges(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},{reverse:n=!1}=t,{anchor:r,focus:o}=e;return Z.isBackward(e)===n?[r,o]:[o,r]},end(e){var[,t]=Z.edges(e);return t},equals:(e,t)=>pe.equals(e.anchor,t.anchor)&&pe.equals(e.focus,t.focus),surrounds(e,t){var n=Z.intersection(e,t);return!!n&&Z.equals(n,t)},includes(e,t){if(Z.isRange(t)){if(Z.includes(e,t.anchor)||Z.includes(e,t.focus))return!0;var[n,r]=Z.edges(e),[o,s]=Z.edges(t);return pe.isBefore(n,o)&&pe.isAfter(r,s)}var[a,i]=Z.edges(e),l=!1,c=!1;return pe.isPoint(t)?(l=pe.compare(t,a)>=0,c=pe.compare(t,i)<=0):(l=z.compare(t,a.path)>=0,c=z.compare(t,i.path)<=0),l&&c},intersection(e,t){var n=W(e,$),[r,o]=Z.edges(e),[s,a]=Z.edges(t),i=pe.isBefore(r,s)?s:r,l=pe.isBefore(o,a)?o:a;return pe.isBefore(l,i)?null:function(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{};t%2?J(Object(n),!0).forEach(function(t){H(e,t,n[t])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):J(Object(n)).forEach(function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))})}return e}({anchor:i,focus:l},n)},isBackward(e){var{anchor:t,focus:n}=e;return pe.isAfter(t,n)},isCollapsed(e){var{anchor:t,focus:n}=e;return pe.equals(t,n)},isExpanded:e=>!Z.isCollapsed(e),isForward:e=>!Z.isBackward(e),isRange:e=>se(e)&&pe.isPoint(e.anchor)&&pe.isPoint(e.focus),*points(e){yield[e.anchor,"anchor"],yield[e.focus,"focus"]},start(e){var[t]=Z.edges(e);return t},transform(e,t){var n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};if(null===e)return null;var r,o,{affinity:s="inward"}=n;if("inward"===s){var a=Z.isCollapsed(e);Z.isForward(e)?(r="forward",o=a?r:"backward"):(r="backward",o=a?r:"forward")}else"outward"===s?Z.isForward(e)?(r="backward",o="forward"):(r="forward",o="backward"):(r=s,o=s);var i=pe.transform(e.anchor,t,{affinity:r}),l=pe.transform(e.focus,t,{affinity:o});return i&&l?{anchor:i,focus:l}:null}},G=function(e){var{deep:t=!1}=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return!!se(e)&&("function"!=typeof e.apply&&(t?ee.isNodeList(e.children):Array.isArray(e.children)))},U={isAncestor(e){var{deep:t=!1}=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return se(e)&&ee.isNodeList(e.children,{deep:t})},isElement:G,isElementList(e){var{deep:t=!1}=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return Array.isArray(e)&&e.every(e=>U.isElement(e,{deep:t}))},isElementProps:e=>void 0!==e.children,isElementType:function(e,t){var n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:"type";return G(e)&&e[n]===t},matches(e,t){for(var n in t)if("children"!==n&&e[n]!==t[n])return!1;return!0}},X=["children"],Y=["text"];function K(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable})),n.push.apply(n,r)}return n}function Q(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{};t%2?K(Object(n),!0).forEach(function(t){H(e,t,n[t])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):K(Object(n)).forEach(function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))})}return e}var ee={ancestor(e,t){var n=ee.get(e,t);if(be.isText(n))throw new Error("Cannot get the ancestor node at path [".concat(t,"] because it refers to a text node instead: ").concat(he.stringify(n)));return n},ancestors(e,t){var n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};return function*(){for(var r of z.ancestors(t,n)){var o=[ee.ancestor(e,r),r];yield o}}()},child(e,t){if(be.isText(e))throw new Error("Cannot get the child of a text node: ".concat(he.stringify(e)));var n=e.children[t];if(null==n)throw new Error("Cannot get child at index `".concat(t,"` in node: ").concat(he.stringify(e)));return n},children(e,t){var n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};return function*(){for(var{reverse:r=!1}=n,o=ee.ancestor(e,t),{children:s}=o,a=r?s.length-1:0;r?a>=0:a<s.length;){var i=ee.child(o,a),l=t.concat(a);yield[i,l],a=r?a-1:a+1}}()},common(e,t,n){var r=z.common(t,n);return[ee.get(e,r),r]},descendant(e,t){var n=ee.get(e,t);if(le.isEditor(n))throw new Error("Cannot get the descendant node at path [".concat(t,"] because it refers to the root editor node instead: ").concat(he.stringify(n)));return n},descendants(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return function*(){for(var[n,r]of ee.nodes(e,t))0!==r.length&&(yield[n,r])}()},elements(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return function*(){for(var[n,r]of ee.nodes(e,t))U.isElement(n)&&(yield[n,r])}()},extractProps:e=>U.isAncestor(e)?W(e,X):W(e,Y),first(e,t){for(var n=t.slice(),r=ee.get(e,n);r&&!be.isText(r)&&0!==r.children.length;)r=r.children[0],n.push(0);return[r,n]},fragment(e,t){var n={children:e.children},[r,o]=Z.edges(t),s=ee.nodes(n,{reverse:!0,pass:e=>{var[,n]=e;return!Z.includes(t,n)}}),a=function(){if(!Z.includes(t,i)){var e=i[i.length-1];Pe(n,z.parent(i),t=>je(t,e,1))}z.equals(i,o.path)&&Ee(n,i,e=>{var t=e.text.slice(0,o.offset);return Q(Q({},e),{},{text:t})}),z.equals(i,r.path)&&Ee(n,i,e=>{var t=e.text.slice(r.offset);return Q(Q({},e),{},{text:t})})};for(var[,i]of s)a();return n.children},get(e,t){var n=ee.getIf(e,t);if(void 0===n)throw new Error("Cannot find a descendant at path [".concat(t,"] in node: ").concat(he.stringify(e)));return n},getIf(e,t){for(var n=e,r=0;r<t.length;r++){var o=t[r];if(be.isText(n)||!n.children[o])return;n=n.children[o]}return n},has(e,t){for(var n=e,r=0;r<t.length;r++){var o=t[r];if(be.isText(n)||!n.children[o])return!1;n=n.children[o]}return!0},isNode(e){var{deep:t=!1}=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return be.isText(e)||U.isElement(e,{deep:t})||le.isEditor(e,{deep:t})},isNodeList(e){var{deep:t=!1}=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return Array.isArray(e)&&e.every(e=>ee.isNode(e,{deep:t}))},last(e,t){for(var n=t.slice(),r=ee.get(e,n);r&&!be.isText(r)&&0!==r.children.length;){var o=r.children.length-1;r=r.children[o],n.push(o)}return[r,n]},leaf(e,t){var n=ee.get(e,t);if(!be.isText(n))throw new Error("Cannot get the leaf node at path [".concat(t,"] because it refers to a non-leaf node: ").concat(he.stringify(n)));return n},levels(e,t){var n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};return function*(){for(var r of z.levels(t,n)){var o=ee.get(e,r);yield[o,r]}}()},matches:(e,t)=>U.isElement(e)&&U.isElementProps(t)&&U.matches(e,t)||be.isText(e)&&be.isTextProps(t)&&be.matches(e,t),nodes(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return function*(){for(var{pass:n,reverse:r=!1}=t,{from:o=[],to:s}=t,a=new Set,i=[],l=e;!s||!(r?z.isBefore(i,s):z.isAfter(i,s));)if(a.has(l)||(yield[l,i]),a.has(l)||be.isText(l)||0===l.children.length||null!=n&&!1!==n([l,i])){if(0===i.length)break;if(!r){var c=z.next(i);if(ee.has(e,c)){i=c,l=ee.get(e,i);continue}}if(r&&0!==i[i.length-1])i=z.previous(i),l=ee.get(e,i);else i=z.parent(i),l=ee.get(e,i),a.add(l)}else{a.add(l);var d=r?l.children.length-1:0;z.isAncestor(i,o)&&(d=o[i.length]),i=i.concat(d),l=ee.get(e,i)}}()},parent(e,t){var n=z.parent(t),r=ee.get(e,n);if(be.isText(r))throw new Error("Cannot get the parent of path [".concat(t,"] because it does not exist in the root."));return r},string:e=>be.isText(e)?e.text:e.children.map(ee.string).join(""),texts(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return function*(){for(var[n,r]of ee.nodes(e,t))be.isText(n)&&(yield[n,r])}()}};function te(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable})),n.push.apply(n,r)}return n}function ne(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{};t%2?te(Object(n),!0).forEach(function(t){H(e,t,n[t])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):te(Object(n)).forEach(function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))})}return e}var re,oe={isNodeOperation:e=>oe.isOperation(e)&&e.type.endsWith("_node"),isOperation(e){if(!se(e))return!1;switch(e.type){case"insert_node":case"remove_node":return z.isPath(e.path)&&ee.isNode(e.node);case"insert_text":case"remove_text":return"number"==typeof e.offset&&"string"==typeof e.text&&z.isPath(e.path);case"merge_node":return"number"==typeof e.position&&z.isPath(e.path)&&se(e.properties);case"move_node":return z.isPath(e.path)&&z.isPath(e.newPath);case"set_node":return z.isPath(e.path)&&se(e.properties)&&se(e.newProperties);case"set_selection":return null===e.properties&&Z.isRange(e.newProperties)||null===e.newProperties&&Z.isRange(e.properties)||se(e.properties)&&se(e.newProperties);case"split_node":return z.isPath(e.path)&&"number"==typeof e.position&&se(e.properties);default:return!1}},isOperationList:e=>Array.isArray(e)&&e.every(e=>oe.isOperation(e)),isSelectionOperation:e=>oe.isOperation(e)&&e.type.endsWith("_selection"),isTextOperation:e=>oe.isOperation(e)&&e.type.endsWith("_text"),inverse(e){switch(e.type){case"insert_node":return ne(ne({},e),{},{type:"remove_node"});case"insert_text":return ne(ne({},e),{},{type:"remove_text"});case"merge_node":return ne(ne({},e),{},{type:"split_node",path:z.previous(e.path)});case"move_node":var{newPath:t,path:n}=e;if(z.equals(t,n))return e;if(z.isSibling(n,t))return ne(ne({},e),{},{path:t,newPath:n});var r=z.transform(n,e),o=z.transform(z.next(n),e);return ne(ne({},e),{},{path:r,newPath:o});case"remove_node":return ne(ne({},e),{},{type:"insert_node"});case"remove_text":return ne(ne({},e),{},{type:"insert_text"});case"set_node":var{properties:s,newProperties:a}=e;return ne(ne({},e),{},{properties:a,newProperties:s});case"set_selection":var{properties:i,newProperties:l}=e;return ne(ne({},e),{},null==i?{properties:l,newProperties:null}:null==l?{properties:null,newProperties:i}:{properties:l,newProperties:i});case"split_node":return ne(ne({},e),{},{type:"merge_node",path:z.next(e.path)})}}},se=e=>"object"==typeof e&&null!==e,ae=(e,t)=>{for(var n in e){var r=e[n],o=t[n];if(Array.isArray(r)&&Array.isArray(o)){if(r.length!==o.length)return!1;for(var s=0;s<r.length;s++)if(r[s]!==o[s])return!1}else if(se(r)&&se(o)){if(!ae(r,o))return!1}else if(r!==o)return!1}for(var a in t)if(void 0===e[a]&&void 0!==t[a])return!1;return!0},ie=e=>e.selection?e.selection:e.children.length>0?le.end(e,[]):[0];!function(e){e[e.None=0]="None",e[e.Extend=1]="Extend",e[e.ZWJ=2]="ZWJ",e[e.RI=4]="RI",e[e.Prepend=8]="Prepend",e[e.SpacingMark=16]="SpacingMark",e[e.L=32]="L",e[e.V=64]="V",e[e.T=128]="T",e[e.LV=256]="LV",e[e.LVT=512]="LVT",e[e.ExtPict=1024]="ExtPict",e[e.Any=2048]="Any"}(re||(re={})),re.L,re.L,re.V,re.LV,re.LVT,re.LV,re.V,re.V,re.T,re.LVT,re.T,re.T,re.Any,re.Extend,re.ZWJ,re.Any,re.SpacingMark,re.Prepend,re.Any,re.ZWJ,re.ExtPict,re.RI,re.RI;var le={above:(e,t)=>e.above(t),addMark(e,t,n){e.addMark(t,n)},after:(e,t,n)=>e.after(t,n),before:(e,t,n)=>e.before(t,n),deleteBackward(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},{unit:n="character"}=t;e.deleteBackward(n)},deleteForward(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},{unit:n="character"}=t;e.deleteForward(n)},deleteFragment(e,t){e.deleteFragment(t)},edges:(e,t)=>e.edges(t),elementReadOnly(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return e.elementReadOnly(t)},end:(e,t)=>e.end(t),first:(e,t)=>e.first(t),fragment:(e,t)=>e.fragment(t),hasBlocks:(e,t)=>e.hasBlocks(t),hasInlines:(e,t)=>e.hasInlines(t),hasPath:(e,t)=>e.hasPath(t),hasTexts:(e,t)=>e.hasTexts(t),insertBreak(e){e.insertBreak()},insertFragment(e,t,n){e.insertFragment(t,n)},insertNode(e,t){e.insertNode(t)},insertSoftBreak(e){e.insertSoftBreak()},insertText(e,t){e.insertText(t)},isBlock:(e,t)=>e.isBlock(t),isEdge:(e,t,n)=>e.isEdge(t,n),isEditor:e=>function(e){var{deep:t=!1}=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};if(!se(e))return!1;var n="function"==typeof e.addMark&&"function"==typeof e.apply&&"function"==typeof e.deleteFragment&&"function"==typeof e.insertBreak&&"function"==typeof e.insertSoftBreak&&"function"==typeof e.insertFragment&&"function"==typeof e.insertNode&&"function"==typeof e.insertText&&"function"==typeof e.isElementReadOnly&&"function"==typeof e.isInline&&"function"==typeof e.isSelectable&&"function"==typeof e.isVoid&&"function"==typeof e.normalizeNode&&"function"==typeof e.onChange&&"function"==typeof e.removeMark&&"function"==typeof e.getDirtyPaths&&(null===e.marks||se(e.marks))&&(null===e.selection||Z.isRange(e.selection))&&(!t||ee.isNodeList(e.children))&&oe.isOperationList(e.operations);return n}(e),isElementReadOnly:(e,t)=>e.isElementReadOnly(t),isEmpty:(e,t)=>e.isEmpty(t),isEnd:(e,t,n)=>e.isEnd(t,n),isInline:(e,t)=>e.isInline(t),isNormalizing:e=>e.isNormalizing(),isSelectable:(e,t)=>e.isSelectable(t),isStart:(e,t,n)=>e.isStart(t,n),isVoid:(e,t)=>e.isVoid(t),last:(e,t)=>e.last(t),leaf:(e,t,n)=>e.leaf(t,n),levels:(e,t)=>e.levels(t),marks:e=>e.getMarks(),next:(e,t)=>e.next(t),node:(e,t,n)=>e.node(t,n),nodes:(e,t)=>e.nodes(t),normalize(e,t){e.normalize(t)},parent:(e,t,n)=>e.parent(t,n),path:(e,t,n)=>e.path(t,n),pathRef:(e,t,n)=>e.pathRef(t,n),pathRefs:e=>e.pathRefs(),point:(e,t,n)=>e.point(t,n),pointRef:(e,t,n)=>e.pointRef(t,n),pointRefs:e=>e.pointRefs(),positions:(e,t)=>e.positions(t),previous:(e,t)=>e.previous(t),range:(e,t,n)=>e.range(t,n),rangeRef:(e,t,n)=>e.rangeRef(t,n),rangeRefs:e=>e.rangeRefs(),removeMark(e,t){e.removeMark(t)},setNormalizing(e,t){e.setNormalizing(t)},start:(e,t)=>e.start(t),string:(e,t,n)=>e.string(t,n),unhangRange:(e,t,n)=>e.unhangRange(t,n),void:(e,t)=>e.void(t),withoutNormalizing(e,t){e.withoutNormalizing(t)},shouldMergeNodesRemovePrevNode:(e,t,n)=>e.shouldMergeNodesRemovePrevNode(t,n)};function ce(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable})),n.push.apply(n,r)}return n}function de(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{};t%2?ce(Object(n),!0).forEach(function(t){H(e,t,n[t])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):ce(Object(n)).forEach(function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))})}return e}var pe={compare(e,t){var n=z.compare(e.path,t.path);return 0===n?e.offset<t.offset?-1:e.offset>t.offset?1:0:n},isAfter:(e,t)=>1===pe.compare(e,t),isBefore:(e,t)=>-1===pe.compare(e,t),equals:(e,t)=>e.offset===t.offset&&z.equals(e.path,t.path),isPoint:e=>se(e)&&"number"==typeof e.offset&&z.isPath(e.path),transform(e,t){var n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};if(null===e)return null;var{affinity:r="forward"}=n,{path:o,offset:s}=e;switch(t.type){case"insert_node":case"move_node":o=z.transform(o,t,n);break;case"insert_text":z.equals(t.path,o)&&(t.offset<s||t.offset===s&&"forward"===r)&&(s+=t.text.length);break;case"merge_node":z.equals(t.path,o)&&(s+=t.position),o=z.transform(o,t,n);break;case"remove_text":z.equals(t.path,o)&&t.offset<=s&&(s-=Math.min(s-t.offset,t.text.length));break;case"remove_node":if(z.equals(t.path,o)||z.isAncestor(t.path,o))return null;o=z.transform(o,t,n);break;case"split_node":if(z.equals(t.path,o)){if(t.position===s&&null==r)return null;(t.position<s||t.position===s&&"forward"===r)&&(s-=t.position,o=z.transform(o,t,de(de({},n),{},{affinity:"forward"})))}else o=z.transform(o,t,n);break;default:return e}return{path:o,offset:s}}},fe=void 0,he={setScrubber(e){fe=e},stringify:e=>JSON.stringify(e,fe)},me=["text"],ue=["anchor","focus","merge"];function ge(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable})),n.push.apply(n,r)}return n}function ve(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{};t%2?ge(Object(n),!0).forEach(function(t){H(e,t,n[t])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):ge(Object(n)).forEach(function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))})}return e}var be={equals(e,t){var n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{},{loose:r=!1}=n;function o(e){return W(e,me)}return ae(r?o(e):e,r?o(t):t)},isText:e=>se(e)&&"string"==typeof e.text,isTextList:e=>Array.isArray(e)&&e.every(e=>be.isText(e)),isTextProps:e=>void 0!==e.text,matches(e,t){for(var n in t)if("text"!==n&&(!e.hasOwnProperty(n)||e[n]!==t[n]))return!1;return!0},decorations(e,t){var n=[{leaf:ve({},e)}];for(var r of t){var{anchor:o,focus:s,merge:a}=r,i=W(r,ue),[l,c]=Z.edges(r),d=[],p=0,f=l.offset,h=c.offset,m=null!=a?a:Object.assign;for(var{leaf:u}of n){var{length:g}=u.text,v=p;if(p+=g,f<=v&&p<=h)m(u,i),d.push({leaf:u});else if(f!==h&&(f===p||h===v)||f>p||h<v||h===v&&0!==v)d.push({leaf:u});else{var b=u,y=void 0,x=void 0;if(h<p){var w=h-v;x={leaf:ve(ve({},b),{},{text:b.text.slice(w)})},b=ve(ve({},b),{},{text:b.text.slice(0,w)})}if(f>v){var O=f-v;y={leaf:ve(ve({},b),{},{text:b.text.slice(0,O)})},b=ve(ve({},b),{},{text:b.text.slice(O)})}m(b,i),y&&d.push(y),d.push({leaf:b}),x&&d.push(x)}}n=d}if(n.length>1){var j=0;for(var[k,P]of n.entries()){var E=j,S=E+P.leaf.text.length,N={start:E,end:S};0===k&&(N.isFirst=!0),k===n.length-1&&(N.isLast=!0),P.position=N,j=S}}return n}};function ye(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable})),n.push.apply(n,r)}return n}function xe(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{};t%2?ye(Object(n),!0).forEach(function(t){H(e,t,n[t])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):ye(Object(n)).forEach(function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))})}return e}var we=function(e,t){for(var n=arguments.length,r=new Array(n>2?n-2:0),o=2;o<n;o++)r[o-2]=arguments[o];return[...e.slice(0,t),...r,...e.slice(t)]},Oe=function(e,t,n){for(var r=arguments.length,o=new Array(r>3?r-3:0),s=3;s<r;s++)o[s-3]=arguments[s];return[...e.slice(0,t),...o,...e.slice(t+n)]},je=Oe,ke=(e,t,n)=>{if(0===t.length)throw new Error("Cannot modify the editor");for(var r=ee.get(e,t),o=t.slice(),s=n(r);o.length>1;){var a=o.pop(),i=ee.get(e,o);s=xe(xe({},i),{},{children:Oe(i.children,a,1,s)})}var l=o.pop();e.children=Oe(e.children,l,1,s)},Pe=(e,t,n)=>{0===t.length?e.children=n(e.children):ke(e,t,e=>{if(be.isText(e))throw new Error("Cannot get the element at path [".concat(t,"] because it refers to a leaf node: ").concat(he.stringify(e)));return xe(xe({},e),{},{children:n(e.children)})})},Ee=(e,t,n)=>ke(e,t,e=>{if(!be.isText(e))throw new Error("Cannot get the leaf node at path [".concat(t,"] because it refers to a non-leaf node: ").concat(he.stringify(e)));return n(e)});function Se(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable})),n.push.apply(n,r)}return n}function Ne(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{};t%2?Se(Object(n),!0).forEach(function(t){H(e,t,n[t])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):Se(Object(n)).forEach(function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))})}return e}var Ce={transform(e,t){var n=!1;switch(t.type){case"insert_node":var{path:r,node:o}=t;Pe(e,z.parent(r),e=>{var t=r[r.length-1];if(t>e.length)throw new Error('Cannot apply an "insert_node" operation at path ['.concat(r,"] because the destination is past the end of the node."));return we(e,t,o)}),n=!0;break;case"insert_text":var{path:s,offset:a,text:i}=t;if(0===i.length)break;Ee(e,s,e=>{var t=e.text.slice(0,a),n=e.text.slice(a);return Ne(Ne({},e),{},{text:t+i+n})}),n=!0;break;case"merge_node":var{path:l}=t,c=l[l.length-1],d=z.previous(l),p=d[d.length-1];Pe(e,z.parent(l),e=>{var t,n=e[c],r=e[p];if(be.isText(n)&&be.isText(r))t=Ne(Ne({},r),{},{text:r.text+n.text});else{if(be.isText(n)||be.isText(r))throw new Error('Cannot apply a "merge_node" operation at path ['.concat(l,"] to nodes of different interfaces: ").concat(he.stringify(n)," ").concat(he.stringify(r)));t=Ne(Ne({},r),{},{children:r.children.concat(n.children)})}return Oe(e,p,2,t)}),n=!0;break;case"move_node":var{path:f,newPath:h}=t,m=f[f.length-1];if(z.isAncestor(f,h))throw new Error("Cannot move a path [".concat(f,"] to new path [").concat(h,"] because the destination is inside itself."));var u=ee.get(e,f);Pe(e,z.parent(f),e=>je(e,m,1));var g=z.transform(f,t),v=g[g.length-1];Pe(e,z.parent(g),e=>we(e,v,u)),n=!0;break;case"remove_node":var{path:b}=t,y=b[b.length-1];if(Pe(e,z.parent(b),e=>je(e,y,1)),e.selection){var x=Ne({},e.selection);for(var[w,O]of Z.points(x)){var j=pe.transform(w,t);if(null!=x&&null!=j)x[O]=j;else{var k=void 0,P=void 0;for(var[E,S]of ee.texts(e)){if(-1!==z.compare(S,b)){P=[E,S];break}k=[E,S]}var N=!1;k&&P&&(N=!z.isSibling(k[1],b)&&(!!z.equals(P[1],b)||z.common(k[1],b).length<z.common(P[1],b).length)),k&&!N?x[O]={path:k[1],offset:k[0].text.length}:P?x[O]={path:P[1],offset:0}:x=null}}x&&Z.equals(x,e.selection)||(e.selection=x)}break;case"remove_text":var{path:C,offset:_,text:T}=t;if(0===T.length)break;Ee(e,C,e=>{var t=e.text.slice(0,_),n=e.text.slice(_+T.length);return Ne(Ne({},e),{},{text:t+n})}),n=!0;break;case"set_node":var{path:I,properties:A,newProperties:R}=t;if(0===I.length)throw new Error("Cannot set properties on the root node!");ke(e,I,e=>{var t=Ne({},e);for(var n in R){if("children"===n||"text"===n)throw new Error('Cannot set the "'.concat(n,'" property of nodes!'));var r=R[n];null==r?delete t[n]:t[n]=r}for(var o in A)R.hasOwnProperty(o)||delete t[o];return t});break;case"set_selection":var{newProperties:D}=t;if(null==D){e.selection=null;break}if(null==e.selection){if(!Z.isRange(D))throw new Error('Cannot apply an incomplete "set_selection" operation properties '.concat(he.stringify(D)," when there is no current selection."));e.selection=Ne({},D);break}var B=Ne({},e.selection);for(var L in D){var q=D[L];if(null==q){if("anchor"===L||"focus"===L)throw new Error('Cannot remove the "'.concat(L,'" selection property'));delete B[L]}else B[L]=q}e.selection=B;break;case"split_node":var{path:M,position:F,properties:V}=t,H=M[M.length-1];if(0===M.length)throw new Error('Cannot apply a "split_node" operation at path ['.concat(M,"] because the root node cannot be split."));Pe(e,z.parent(M),e=>{var t,n,r=e[H];if(be.isText(r)){var o=r.text.slice(0,F),s=r.text.slice(F);t=Ne(Ne({},r),{},{text:o}),n=Ne(Ne({},V),{},{text:s})}else{var a=r.children.slice(0,F),i=r.children.slice(F);t=Ne(Ne({},r),{},{children:a}),n=Ne(Ne({},V),{},{children:i})}return Oe(e,H,1,t,n)}),n=!0}if(n&&e.selection){var W=Ne({},e.selection);for(var[$,J]of Z.points(W))W[J]=pe.transform($,t);Z.equals(W,e.selection)||(e.selection=W)}}},_e={insertNodes(e,t,n){e.insertNodes(t,n)},liftNodes(e,t){e.liftNodes(t)},mergeNodes(e,t){e.mergeNodes(t)},moveNodes(e,t){e.moveNodes(t)},removeNodes(e,t){e.removeNodes(t)},setNodes(e,t,n){e.setNodes(t,n)},splitNodes(e,t){e.splitNodes(t)},unsetNodes(e,t,n){e.unsetNodes(t,n)},unwrapNodes(e,t){e.unwrapNodes(t)},wrapNodes(e,t,n){e.wrapNodes(t,n)}},Te={collapse(e,t){e.collapse(t)},deselect(e){e.deselect()},move(e,t){e.move(t)},select(e,t){e.select(t)},setPoint(e,t,n){e.setPoint(t,n)},setSelection(e,t){e.setSelection(t)}},Ie={delete(e,t){e.delete(t)},insertFragment(e,t,n){e.insertFragment(t,n)},insertText(e,t){var n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};le.withoutNormalizing(e,()=>{var{voids:r=!1}=n,{at:o=ie(e)}=n;if(z.isPath(o)&&(o=le.range(e,o)),Z.isRange(o))if(Z.isCollapsed(o))o=o.anchor;else{var s=Z.end(o);if(!r&&le.void(e,{at:s}))return;var a=Z.start(o),i=le.pointRef(e,a),l=le.pointRef(e,s);De.delete(e,{at:o,voids:r});var c=i.unref(),d=l.unref();o=c||d,De.setSelection(e,{anchor:o,focus:o})}if(!(!r&&le.void(e,{at:o})||le.elementReadOnly(e,{at:o}))){var{path:p,offset:f}=o;t.length>0&&e.apply({type:"insert_text",path:p,offset:f,text:t})}})}};function Ae(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable})),n.push.apply(n,r)}return n}function Re(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{};t%2?Ae(Object(n),!0).forEach(function(t){H(e,t,n[t])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):Ae(Object(n)).forEach(function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))})}return e}var De=Re(Re(Re(Re({},Ce),_e),Te),Ie);const Be="ArrowUp",Le="ArrowDown",qe="Enter",Me="Escape";function ze(e){return e.toLowerCase().trim()}function Fe(e,t){var n,r,o;if(!t)return 0;const s=ze(t),a=ze(e.title),i=ze(e.id);return a===s?100:a.startsWith(s)?80:i.startsWith(s)?70:(null===(n=e.keywords)||void 0===n?void 0:n.some(e=>ze(e)===s))?60:a.includes(s)?50:(null===(r=e.keywords)||void 0===r?void 0:r.some(e=>ze(e).startsWith(s)))?40:(null===(o=e.keywords)||void 0===o?void 0:o.some(e=>ze(e).includes(s)))?30:e.description&&ze(e.description).includes(s)?20:10}function Ve({items:e,search:t}){const n=c(()=>{const n=e.filter(e=>!e.disabled&&function(e,t){var n;if(!t)return!0;const r=ze(t);return!!(ze(e.title).includes(r)||ze(e.id).includes(r)||e.description&&ze(e.description).includes(r)||(null===(n=e.keywords)||void 0===n?void 0:n.some(e=>ze(e).includes(r))))}(e,t));return t&&n.sort((e,n)=>Fe(n,t)-Fe(e,t)),n},[e,t]),r=c(()=>{const e=new Map;return n.forEach(t=>{const n=t.group||"default",r=e.get(n)||[];e.set(n,[...r,t])}),e},[n]);return{filteredItems:n,groupedItems:r,isEmpty:0===n.length}}const He="undefined"!=typeof window?d:i;const We={isOpen:!1,search:"",selectedIndex:0,virtualElement:null,floatingContext:null};function $e(e,t){switch(t.type){case"OPEN":return Object.assign(Object.assign({},e),{isOpen:!0,search:"",selectedIndex:0,virtualElement:t.virtualElement,floatingContext:t.floatingContext});case"CLOSE":return Object.assign(Object.assign({},e),{isOpen:!1,search:"",selectedIndex:0,virtualElement:null,floatingContext:null});case"SET_SEARCH":return Object.assign(Object.assign({},e),{search:t.search,selectedIndex:0});case"SET_SELECTED_INDEX":return Object.assign(Object.assign({},e),{selectedIndex:t.index});case"RESET_SELECTION":return Object.assign(Object.assign({},e),{selectedIndex:0});default:return e}}function Je({items:e,trigger:t="/",onSelect:n}){const r=f(),[o,s]=p($e,We),a=c(()=>{if(!o.isOpen)return e;let t=null;if("number"==typeof r.path.current){const e=h.getBlockSlate(r,{at:r.path.current});e&&(t=m(r,e))}return t&&t.length>0?t.map(e=>{var t,n;const o=null===(t=r.plugins[e].options)||void 0===t?void 0:t.display;return{id:e,title:null!==(n=null==o?void 0:o.title)&&void 0!==n?n:e,description:null==o?void 0:o.description,icon:null==o?void 0:o.icon}}):e},[e,o.isOpen,r]),{filteredItems:d,groupedItems:u,isEmpty:k}=Ve({items:a,search:o.search}),{refs:P,floatingStyles:E,floatingContext:S}=function({isOpen:e,virtualElement:t}){const{refs:n,floatingStyles:r,context:o,update:s}=g({open:e,placement:"bottom-start",whileElementsMounted:v,middleware:[b(),y(10),x({fallbackPlacements:["top-start","top","bottom"],padding:10,crossAxis:!1,fallbackStrategy:"bestFit"}),w({padding:10}),O({apply({availableHeight:e,elements:t}){Object.assign(t.floating.style,{maxHeight:`${Math.max(200,e-20)}px`})},padding:10})],strategy:"fixed"});return He(()=>{t&&(n.setReference(t),s())},[n,e,t,s]),{refs:n,floatingStyles:r,floatingContext:o}}({isOpen:o.isOpen,virtualElement:o.virtualElement}),{isMounted:N,styles:C}=j(S,{duration:100}),_=l((e,t)=>{s({type:"OPEN",virtualElement:e,floatingContext:t})},[]),T=l(()=>{s({type:"CLOSE"})},[]),I=l(e=>{s({type:"SET_SEARCH",search:e})},[]),A=e=>{s({type:"SET_SELECTED_INDEX",index:e})},R=()=>{const e=d[o.selectedIndex];e&&(e.onSelect&&e.onSelect(),n?n(e):r.toggleBlock(e.id,{scope:"auto",focus:!0,preserveContent:!1}),T())};i(()=>{var e,n;if("number"!=typeof r.path.current)return;if(!h.getBlock(r,{at:r.path.current}))return;const s=r.refElement;if(!s)return;const a=e=>{if(e.isComposing)return;const t=h.getBlockSlate(r,{at:r.path.current});if(!(null==t?void 0:t.selection))return;if(s.contains(e.target)){if(function(e){return function(e){return"/"===e.key||191===e.keyCode||191===e.which||"Slash"===e.code||"/"===e.key||"."===e.key&&e.shiftKey}(e)}(e)){const e=z.parent(t.selection.anchor.path),n=le.string(t,e);if(le.isStart(t,t.selection.anchor,t.selection.focus)&&0===n.trim().length){const e=function(){const e=window.getSelection();if(!e||0===e.rangeCount)return null;const t=e.getRangeAt(0),n=t.getBoundingClientRect(),r=t.getClientRects();return{getBoundingClientRect:()=>n,getClientRects:()=>r}}();e&&_(e,S)}}o.isOpen&&(e.key===Le?(e.preventDefault(),e.stopPropagation(),A(o.selectedIndex===d.length-1?0:o.selectedIndex+1)):e.key===Be?(e.preventDefault(),e.stopPropagation(),A(0===o.selectedIndex?d.length-1:o.selectedIndex-1)):e.key===qe?(e.preventDefault(),e.stopPropagation(),R()):e.key===Me&&(e.preventDefault(),e.stopPropagation(),T()))}},i=e=>{if(e.isComposing)return;if(!o.isOpen)return;if(e.key===Le||e.key===Be)return;const n=h.getBlockSlate(r,{at:r.path.current});if(!(null==n?void 0:n.selection))return;const s=z.parent(n.selection.anchor.path),a=le.string(n,s);if(0===a.length)return void T();const i=a.replace(t,"").trim();I(i)};return null===(e=r.refElement)||void 0===e||e.addEventListener("keydown",a),null===(n=r.refElement)||void 0===n||n.addEventListener("keyup",i),()=>{var e,t;null===(e=r.refElement)||void 0===e||e.removeEventListener("keydown",a),null===(t=r.refElement)||void 0===t||t.removeEventListener("keyup",i)}},[r.path.current,o.isOpen,o.selectedIndex,P.setReference,t,_,T,I,d.length]),i(()=>{if(!o.isOpen)return;const e=e=>{var t,n;const r=e.target;(null===(n=null===(t=P.floating)||void 0===t?void 0:t.current)||void 0===n?void 0:n.contains(r))||T()},t=setTimeout(()=>{document.addEventListener("mousedown",e)},0);return()=>{clearTimeout(t),document.removeEventListener("mousedown",e)}},[o.isOpen,T,P.floating]),i(()=>{if(!o.isOpen||!k||0===o.search.length)return;const e=setTimeout(()=>{k&&T()},2e3);return()=>clearTimeout(e)},[o.isOpen,k,o.search,T]),i(()=>{if(!o.isOpen)return;const e=document.body.style.overflow,t=document.body.style.paddingRight,n=window.innerWidth-document.documentElement.clientWidth;return document.body.style.overflow="hidden",n>0&&(document.body.style.paddingRight=`${n}px`),()=>{document.body.style.overflow=e,document.body.style.paddingRight=t}},[o.isOpen]);return{refs:P,state:o,items:e,isEmpty:k,actionHandlers:{open:_,close:T,setSearch:I,selectItem:A,executeSelected:R},groupedItems:u,filteredItems:d,floatingStyles:E,transitionStyles:C,isMounted:N}}k('.slash-command-root{--slash-command-bg:#fff;--slash-command-bg-hover:#f4f4f5;--slash-command-bg-selected:#f4f4f5;--slash-command-border:#e4e4e7;--slash-command-border-radius:.375rem;--slash-command-shadow:0 16px 48px -12px rgba(0,0,0,.18),0 4px 16px -4px rgba(0,0,0,.1);--slash-command-text:#18181b;--slash-command-text-muted:#71717a;--slash-command-text-disabled:#a1a1aa;--slash-command-accent:#3b82f6;--slash-command-item-radius:8px;--slash-command-icon-bg:#fff;--slash-command-icon-border:#e4e4e7;--slash-command-font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,sans-serif;--slash-command-font-mono:ui-monospace,SFMono-Regular,"SF Mono",Menlo,monospace}.dark .slash-command-root,.slash-command-root[data-theme=dark]{--slash-command-bg:#18181b;--slash-command-bg-hover:#27272a;--slash-command-bg-selected:#27272a;--slash-command-border:#3f3f46;--slash-command-text:#fafafa;--slash-command-text-muted:#a1a1aa;--slash-command-text-disabled:#52525b;--slash-command-icon-bg:#27272a;--slash-command-icon-border:#3f3f46}.slash-command-content{animation:slash-command-in .15s ease-out;background-color:var(--slash-command-bg);border:1px solid var(--slash-command-border);border-radius:var(--slash-command-border-radius);box-shadow:var(--slash-command-shadow);display:flex;flex-direction:column;font-family:var(--slash-command-font-family);max-height:400px;overflow:hidden;width:300px;z-index:9999}@keyframes slash-command-in{0%{opacity:0;transform:translateY(-8px) scale(.96)}to{opacity:1;transform:translateY(0) scale(1)}}.slash-command-input-wrapper{align-items:center;border-bottom:1px solid var(--slash-command-border);display:flex;flex-shrink:0;gap:8px;padding:12px 14px}.slash-command-input-trigger{color:var(--slash-command-text-muted);font-family:var(--slash-command-font-mono);font-size:14px;font-weight:500;-webkit-user-select:none;-moz-user-select:none;user-select:none}.slash-command-input{background-color:transparent;border:none;color:var(--slash-command-text);flex:1;font-family:var(--slash-command-font-family);font-size:14px;min-width:0;outline:none}.slash-command-input::-moz-placeholder{color:var(--slash-command-text-muted)}.slash-command-input::placeholder{color:var(--slash-command-text-muted)}.slash-command-kbd{align-items:center;background-color:var(--slash-command-bg-hover);border:1px solid var(--slash-command-border);border-radius:4px;color:var(--slash-command-text-muted);display:inline-flex;font-family:var(--slash-command-font-family);font-size:10px;font-weight:500;justify-content:center;padding:2px 6px;-webkit-user-select:none;-moz-user-select:none;user-select:none}.slash-command-list{display:flex;flex:1;flex-direction:column;gap:2px;overflow-x:hidden;overflow-y:auto;overscroll-behavior:contain;padding:.5rem .25rem}.slash-command-list::-webkit-scrollbar{width:6px}.slash-command-list::-webkit-scrollbar-track{background:transparent}.slash-command-list::-webkit-scrollbar-thumb{background-color:var(--slash-command-border);border-radius:3px}.slash-command-list::-webkit-scrollbar-thumb:hover{background-color:var(--slash-command-text-muted)}.slash-command-group{margin-bottom:8px}.slash-command-group:last-child{margin-bottom:0}.slash-command-group-heading{color:var(--slash-command-text-muted);font-size:11px;font-weight:600;letter-spacing:.05em;padding:8px 12px 6px;text-transform:uppercase;-webkit-user-select:none;-moz-user-select:none;user-select:none}.slash-command-item{align-items:center;background-color:transparent;border:none;border-radius:var(--slash-command-item-radius);cursor:pointer;display:flex;font-family:var(--slash-command-font-family);gap:12px;outline:none;padding:4px 6px;text-align:left;transition:background-color .1s ease;width:100%}.slash-command-item:hover,.slash-command-item[data-selected=true]{background-color:var(--slash-command-bg-selected)}.slash-command-item:focus-visible{outline:2px solid var(--slash-command-accent);outline-offset:-2px}.slash-command-item[data-disabled=true]{cursor:not-allowed;opacity:.5;pointer-events:none}.slash-command-item-icon{align-items:center;background-color:var(--slash-command-icon-bg);border:1px solid var(--slash-command-icon-border);border-radius:8px;color:var(--slash-command-text-muted);display:flex;flex-shrink:0;height:40px;justify-content:center;transition:border-color .1s ease,box-shadow .1s ease;width:40px}.slash-command-item[data-selected=true] .slash-command-item-icon{border-color:var(--slash-command-text-muted);box-shadow:0 1px 3px rgba(0,0,0,.06)}.slash-command-item-icon svg{height:20px;width:20px}.slash-command-item-content{flex:1;min-width:0}.slash-command-item-title{color:var(--slash-command-text);font-size:14px;font-weight:500}.slash-command-item-description,.slash-command-item-title{line-height:1.4;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.slash-command-item-description{color:var(--slash-command-text-muted);font-size:12px;margin-top:1px}.slash-command-item-shortcut{align-items:center;display:flex;flex-shrink:0;gap:4px}.slash-command-empty{align-items:center;color:var(--slash-command-text-muted);display:flex;flex-direction:column;font-size:14px;justify-content:center;padding:32px 16px;text-align:center}.slash-command-empty-icon{margin-bottom:8px;opacity:.5}.slash-command-separator{background-color:var(--slash-command-border);height:1px;margin:8px 12px}.slash-command-footer{align-items:center;background-color:var(--slash-command-bg-hover);border-top:1px solid var(--slash-command-border);display:flex;flex-shrink:0;gap:16px;padding:8px 14px}.slash-command-footer-hint{align-items:center;color:var(--slash-command-text-muted);display:flex;font-size:11px;gap:4px}.slash-command-loading{align-items:center;display:flex;justify-content:center;padding:24px}.slash-command-spinner{animation:slash-command-spin .6s linear infinite;border:2px solid var(--slash-command-border);border-radius:50%;border-top-color:var(--slash-command-accent);height:20px;width:20px}@keyframes slash-command-spin{to{transform:rotate(1turn)}}');const Ze=({children:t,items:n,trigger:r="/",onSelect:o,className:s})=>{const a=f(),i=c(()=>{if(Array.isArray(n)&&n.length>0)return n;return Object.keys(a.plugins).filter(e=>{var t,n;const r=u(a.plugins[e].elements),o=r?a.plugins[e].elements[r]:void 0;return"inline"!==(null===(t=null==o?void 0:o.props)||void 0===t?void 0:t.nodeType)&&"inlineVoid"!==(null===(n=null==o?void 0:o.props)||void 0===n?void 0:n.nodeType)}).map(e=>{var t,n;const r=null===(t=a.plugins[e].options)||void 0===t?void 0:t.display;return{id:e,title:null!==(n=null==r?void 0:r.title)&&void 0!==n?n:e,description:null==r?void 0:r.description,icon:null==r?void 0:r.icon}})},[n,a]),{state:l,actionHandlers:d,filteredItems:p,groupedItems:h,refs:m,floatingStyles:g,transitionStyles:v,isMounted:b}=Je({items:i,trigger:r,onSelect:o}),y=c(()=>({state:l,actionHandlers:d,items:i,filteredItems:p,groupedItems:h,refs:m,floatingStyles:g}),[l,d,i,p,h,m,g]),x=Object.assign(Object.assign({},g),v),w="function"==typeof t?t({groupedItems:h,items:i}):t;return e(E.Provider,Object.assign({value:y},{children:e("div",Object.assign({ref:m.setFloating,style:x,className:`slash-command-root ${null!=s?s:""}`},{children:b?w:null}))}))};Ze.displayName="SlashCommand.Root";const Ge=({className:t})=>e("div",{role:"separator","aria-orientation":"horizontal",className:`slash-command-separator ${t||""}`});Ge.displayName="SlashCommand.Separator";const Ue=Object.assign(Ze,{Root:Ze,Content:P,Input:B,List:q,Group:D,Item:L,Empty:I,Separator:Ge,Footer:R,Loading:M});export{P as SlashCommandContent,E as SlashCommandContext,I as SlashCommandEmpty,R as SlashCommandFooter,D as SlashCommandGroup,B as SlashCommandInput,L as SlashCommandItem,q as SlashCommandList,M as SlashCommandLoading,Ue as SlashCommandMenu,Ze as SlashCommandRoot,Ge as SlashCommandSeparator,Je as useSlashCommand,C as useSlashCommandActions,S as useSlashCommandContext,_ as useSlashCommandItems,T as useSlashCommandRefs,N as useSlashCommandState};
|
package/dist/toolbar/index.d.ts
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
|
+
import './toolbar.css';
|
|
1
2
|
export { Toolbar } from './toolbar';
|
|
2
3
|
export { useToolbar } from './hooks';
|
|
3
4
|
export { useToolbarStore } from './store';
|
|
4
5
|
export type { ToolbarState, ToolbarStore } from './store';
|
|
5
|
-
import './toolbar.css';
|
|
6
6
|
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/toolbar/index.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/toolbar/index.ts"],"names":[],"mappings":"AAEA,OAAO,eAAe,CAAC;AAEvB,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAGpC,OAAO,EAAE,UAAU,EAAE,MAAM,SAAS,CAAC;AAGrC,OAAO,EAAE,eAAe,EAAE,MAAM,SAAS,CAAC;AAC1C,YAAY,EAAE,YAAY,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC"}
|
package/dist/toolbar.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
export{T as Toolbar,u as useToolbar,a as useToolbarStore}from"./chunks/hooks-
|
|
1
|
+
import{s as o}from"./chunks/style-inject.es-e87a8d02.js";export{T as Toolbar,u as useToolbar,a as useToolbarStore}from"./chunks/hooks-ad9169d0.js";import"./chunks/_tslib-5e145dfd.js";import"react/jsx-runtime";import"react";import"./portal.js";import"./chunks/floating-ui.react-33212df0.js";import"react-dom";import"@yoopta/editor";import"./chunks/index-06d5c4e7.js";import"./chunks/throttle-dea4a39e.js";o(":root{--yoopta-ui-background:0 0% 100%;--yoopta-ui-foreground:222.2 84% 4.9%;--yoopta-ui-border:214.3 31.8% 91.4%;--yoopta-ui-accent:210 40% 96.1%;--yoopta-ui-ring:222.2 84% 4.9%;--yoopta-ui-primary:221.2 83.2% 53.3%;--yoopta-ui-primary-foreground:210 40% 98%;--yoopta-ui-toolbar-gap:4px;--yoopta-ui-toolbar-padding:6px;--yoopta-ui-toolbar-radius:0.5rem;--yoopta-ui-toolbar-shadow:0 4px 6px -1px rgba(0,0,0,.1),0 2px 4px -2px rgba(0,0,0,.1);--yoopta-ui-toolbar-z-index:99;--yoopta-ui-toolbar-group-gap:2px;--yoopta-ui-toolbar-separator-height:24px;--yoopta-ui-toolbar-separator-margin:4px;--yoopta-ui-toolbar-button-min-width:32px;--yoopta-ui-toolbar-button-min-height:32px;--yoopta-ui-toolbar-button-padding-y:6px;--yoopta-ui-toolbar-button-padding-x:8px;--yoopta-ui-toolbar-button-font-size:0.875rem;--yoopta-ui-toolbar-button-font-weight:500;--yoopta-ui-toolbar-button-gap:4px;--yoopta-ui-toolbar-button-radius:0.375rem;--yoopta-ui-toolbar-icon-size:1rem;--yoopta-ui-toolbar-ring-offset:2px}.dark,[data-theme=dark]{--yoopta-ui-background:222.2 84% 4.9%;--yoopta-ui-foreground:210 40% 98%;--yoopta-ui-border:217.2 32.6% 17.5%;--yoopta-ui-accent:217.2 32.6% 17.5%;--yoopta-ui-ring:212.7 26.8% 83.9%}.yoopta-ui-toolbar{align-items:center;background:hsl(var(--yoopta-ui-background));border:1px solid hsl(var(--yoopta-ui-border));border-radius:var(--yoopta-ui-toolbar-radius,.5rem);box-shadow:var(--yoopta-ui-toolbar-shadow,0 4px 6px -1px rgba(0,0,0,.1),0 2px 4px -2px rgba(0,0,0,.1));display:flex;gap:var(--yoopta-ui-toolbar-gap,4px);padding:var(--yoopta-ui-toolbar-padding,6px);-webkit-user-select:none;-moz-user-select:none;user-select:none;z-index:var(--yoopta-ui-toolbar-z-index,99)}.yoopta-ui-toolbar-group{align-items:center;display:flex;gap:var(--yoopta-ui-toolbar-group-gap,2px)}.yoopta-ui-toolbar-separator{background:hsl(var(--yoopta-ui-border));height:var(--yoopta-ui-toolbar-separator-height,24px);margin:0 var(--yoopta-ui-toolbar-separator-margin,4px);width:1px}.yoopta-ui-toolbar-button{align-items:center;background:transparent;border:none;border-radius:var(--yoopta-ui-toolbar-button-radius,.375rem);color:hsl(var(--yoopta-ui-foreground));cursor:pointer;display:inline-flex;font-size:var(--yoopta-ui-toolbar-button-font-size,.875rem);font-weight:var(--yoopta-ui-toolbar-button-font-weight,500);gap:var(--yoopta-ui-toolbar-button-gap,4px);justify-content:center;min-height:var(--yoopta-ui-toolbar-button-min-height,32px);min-width:var(--yoopta-ui-toolbar-button-min-width,32px);outline:none;padding:var(--yoopta-ui-toolbar-button-padding-y,6px) var(--yoopta-ui-toolbar-button-padding-x,8px);transition:all .15s cubic-bezier(.4,0,.2,1);white-space:nowrap}.yoopta-ui-toolbar-button:hover:not(:disabled){background:hsl(var(--yoopta-ui-accent))}.yoopta-ui-toolbar-button:focus-visible{outline:2px solid hsl(var(--yoopta-ui-ring));outline-offset:var(--yoopta-ui-toolbar-ring-offset,2px)}.yoopta-ui-toolbar-button[data-active=true]{background:hsl(var(--yoopta-ui-primary,221.2 83.2% 53.3%));color:hsl(var(--yoopta-ui-primary-foreground,210 40% 98%))}.yoopta-ui-toolbar-button:disabled{cursor:not-allowed;opacity:.5}.yoopta-ui-toolbar-button svg{height:var(--yoopta-ui-toolbar-icon-size,1rem);width:var(--yoopta-ui-toolbar-icon-size,1rem)}");
|