@prosekit/web 0.1.6 → 0.1.8
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.
|
@@ -4,8 +4,8 @@ import { Context } from '@aria-ui/core';
|
|
|
4
4
|
import { defaultPopoverContentProps } from '@aria-ui/popover';
|
|
5
5
|
import { defaultPopoverRootProps } from '@aria-ui/popover';
|
|
6
6
|
import { defaultPopoverTriggerProps } from '@aria-ui/popover';
|
|
7
|
-
import { defaultTooltipContentProps } from '@aria-ui/tooltip';
|
|
8
7
|
import { defaultTooltipRootProps } from '@aria-ui/tooltip';
|
|
8
|
+
import { defaultTooltipTriggerProps } from '@aria-ui/tooltip';
|
|
9
9
|
import { Editor } from '@prosekit/core';
|
|
10
10
|
import type { EditorView } from '@prosekit/pm/view';
|
|
11
11
|
import { Extension } from '@prosekit/core';
|
|
@@ -22,13 +22,13 @@ import { ReadonlySignal } from '@aria-ui/core';
|
|
|
22
22
|
import type { ReferenceElement } from '@floating-ui/dom';
|
|
23
23
|
import type { Selection as Selection_2 } from '@prosekit/pm/state';
|
|
24
24
|
import { SignalState } from '@aria-ui/core';
|
|
25
|
-
import { TooltipContentProps } from '@aria-ui/tooltip';
|
|
25
|
+
import type { TooltipContentProps } from '@aria-ui/tooltip';
|
|
26
26
|
import { TooltipRootProps } from '@aria-ui/tooltip';
|
|
27
|
+
import { TooltipTriggerProps } from '@aria-ui/tooltip';
|
|
27
28
|
import { UpdateHandler } from '@prosekit/core';
|
|
28
29
|
import { usePopoverContent } from '@aria-ui/popover';
|
|
29
30
|
import { usePopoverRoot } from '@aria-ui/popover';
|
|
30
31
|
import { usePopoverTrigger } from '@aria-ui/popover';
|
|
31
|
-
import { useTooltipContent } from '@aria-ui/tooltip';
|
|
32
32
|
import { useTooltipRoot } from '@aria-ui/tooltip';
|
|
33
33
|
import { useTooltipTrigger } from '@aria-ui/tooltip';
|
|
34
34
|
import type { VirtualElement } from '@floating-ui/dom';
|
|
@@ -324,21 +324,21 @@ declare const defaultInlinePopoverProps: Readonly<{
|
|
|
324
324
|
onOpenChange: null;
|
|
325
325
|
placement: "top";
|
|
326
326
|
offset: 12;
|
|
327
|
+
shift: true;
|
|
327
328
|
flip: true;
|
|
328
329
|
hide: true;
|
|
329
330
|
overlap: true;
|
|
330
331
|
inline: true;
|
|
332
|
+
overflowPadding: 8;
|
|
331
333
|
hoist: true;
|
|
334
|
+
boundary: never[];
|
|
332
335
|
strategy: "absolute";
|
|
333
336
|
autoUpdate: true;
|
|
334
337
|
transform: false;
|
|
335
|
-
shift: false;
|
|
336
338
|
fitViewport: false;
|
|
337
339
|
sameWidth: false;
|
|
338
340
|
sameHeight: false;
|
|
339
|
-
boundary: "clippingAncestors";
|
|
340
341
|
rootBoundary: "viewport";
|
|
341
|
-
overflowPadding: 0;
|
|
342
342
|
elementContext: "floating";
|
|
343
343
|
altBoundary: true;
|
|
344
344
|
}>;
|
|
@@ -373,19 +373,45 @@ declare const defaultResizableRootProps: {
|
|
|
373
373
|
export { defaultResizableRootProps }
|
|
374
374
|
export { defaultResizableRootProps as defaultResizableRootProps_alias_1 }
|
|
375
375
|
|
|
376
|
+
declare const defaultTooltipContentProps: {
|
|
377
|
+
shift: true;
|
|
378
|
+
flip: true;
|
|
379
|
+
offset: number;
|
|
380
|
+
overflowPadding: number;
|
|
381
|
+
hoist: true;
|
|
382
|
+
boundary: never[];
|
|
383
|
+
strategy: "absolute";
|
|
384
|
+
placement: "top";
|
|
385
|
+
autoUpdate: true;
|
|
386
|
+
transform: false;
|
|
387
|
+
overlap: false;
|
|
388
|
+
fitViewport: false;
|
|
389
|
+
sameWidth: false;
|
|
390
|
+
sameHeight: false;
|
|
391
|
+
inline: false;
|
|
392
|
+
hide: false;
|
|
393
|
+
rootBoundary: "viewport";
|
|
394
|
+
elementContext: "floating";
|
|
395
|
+
altBoundary: true;
|
|
396
|
+
};
|
|
376
397
|
export { defaultTooltipContentProps }
|
|
377
398
|
export { defaultTooltipContentProps as defaultTooltipContentProps_alias_1 }
|
|
378
399
|
|
|
379
400
|
export { defaultTooltipRootProps }
|
|
380
401
|
export { defaultTooltipRootProps as defaultTooltipRootProps_alias_1 }
|
|
381
402
|
|
|
382
|
-
declare const defaultTooltipTriggerProps: {};
|
|
383
403
|
export { defaultTooltipTriggerProps }
|
|
384
404
|
export { defaultTooltipTriggerProps as defaultTooltipTriggerProps_alias_1 }
|
|
385
405
|
|
|
386
406
|
export declare function defineCustomElement(name: string, constructor: CustomElementConstructor, options?: ElementDefinitionOptions): void;
|
|
387
407
|
|
|
388
|
-
export declare function defineElementHoverHandler(handler: ElementHoverHandler): Extension< {
|
|
408
|
+
export declare function defineElementHoverHandler(handler: ElementHoverHandler): Extension< {
|
|
409
|
+
Nodes: any;
|
|
410
|
+
Marks: any;
|
|
411
|
+
Commands: {
|
|
412
|
+
[x: string]: any;
|
|
413
|
+
};
|
|
414
|
+
}>;
|
|
389
415
|
|
|
390
416
|
export declare type ElementHoverHandler = (reference: VirtualElement | null, element: HTMLElement | null, node: ProseMirrorNode | null, pos: number | null) => void;
|
|
391
417
|
|
|
@@ -627,8 +653,6 @@ declare const TooltipTriggerElement_base: {
|
|
|
627
653
|
prototype: HTMLElement;
|
|
628
654
|
};
|
|
629
655
|
|
|
630
|
-
declare interface TooltipTriggerProps {
|
|
631
|
-
}
|
|
632
656
|
export { TooltipTriggerProps }
|
|
633
657
|
export { TooltipTriggerProps as TooltipTriggerProps_alias_1 }
|
|
634
658
|
|
|
@@ -670,7 +694,7 @@ export declare function useResizableHandle(host: ConnectableElement, props?: Par
|
|
|
670
694
|
|
|
671
695
|
export declare function useResizableRoot(host: ConnectableElement, props?: Partial<ResizableRootProps>): SignalState<Readonly<ResizableRootProps>>;
|
|
672
696
|
|
|
673
|
-
export
|
|
697
|
+
export declare function useTooltipContent(element: ConnectableElement, props?: Partial<TooltipContentProps>): SignalState<TooltipContentProps>;
|
|
674
698
|
|
|
675
699
|
export { useTooltipRoot }
|
|
676
700
|
|
|
@@ -1,3 +1,6 @@
|
|
|
1
|
+
import {
|
|
2
|
+
useEditorExtension
|
|
3
|
+
} from "./chunk-VJEVDINM.js";
|
|
1
4
|
import {
|
|
2
5
|
defineCustomElement
|
|
3
6
|
} from "./chunk-LCDA7GFP.js";
|
|
@@ -138,6 +141,9 @@ function useAutocompleteList(element, props) {
|
|
|
138
141
|
};
|
|
139
142
|
}
|
|
140
143
|
});
|
|
144
|
+
useEffect2(element, () => {
|
|
145
|
+
element.tabIndex = -1;
|
|
146
|
+
});
|
|
141
147
|
return { editor, filter };
|
|
142
148
|
}
|
|
143
149
|
function useKeyboardHandler(element, open, editor) {
|
|
@@ -208,10 +214,16 @@ import {
|
|
|
208
214
|
createComputed,
|
|
209
215
|
createSignal as createSignal3,
|
|
210
216
|
mapSignals,
|
|
217
|
+
useAnimationFrame,
|
|
211
218
|
useEffect as useEffect4
|
|
212
219
|
} from "@aria-ui/core";
|
|
213
220
|
import { useOverlayPositionerState } from "@aria-ui/overlay";
|
|
214
221
|
import { usePresence } from "@aria-ui/presence";
|
|
222
|
+
import {
|
|
223
|
+
Priority as Priority2,
|
|
224
|
+
defineKeymap,
|
|
225
|
+
withPriority as withPriority2
|
|
226
|
+
} from "@prosekit/core";
|
|
215
227
|
import {
|
|
216
228
|
AutocompleteRule,
|
|
217
229
|
defineAutocomplete
|
|
@@ -253,7 +265,7 @@ function useAutocompletePopoverState(host, state) {
|
|
|
253
265
|
queryContext.provide(host, query);
|
|
254
266
|
onSubmitContext.provide(host, onSubmit);
|
|
255
267
|
openContext.provide(host, presence);
|
|
256
|
-
useEscapeKeydown(host, createKeymapHandler(onDismiss, presence));
|
|
268
|
+
useEscapeKeydown(host, editor, createKeymapHandler(onDismiss, presence));
|
|
257
269
|
useAutocompleteExtension(
|
|
258
270
|
host,
|
|
259
271
|
editor,
|
|
@@ -273,10 +285,15 @@ function useAutocompletePopoverState(host, state) {
|
|
|
273
285
|
(_a = state.onQueryChange.peek()) == null ? void 0 : _a(queryValue);
|
|
274
286
|
}
|
|
275
287
|
});
|
|
276
|
-
|
|
277
|
-
var _a;
|
|
288
|
+
useAnimationFrame(host, () => {
|
|
278
289
|
const presenceValue = presence.value;
|
|
279
|
-
|
|
290
|
+
const onOpenChangeValue = state.onOpenChange.peek();
|
|
291
|
+
if (!onOpenChangeValue) {
|
|
292
|
+
return;
|
|
293
|
+
}
|
|
294
|
+
return () => {
|
|
295
|
+
onOpenChangeValue(presenceValue);
|
|
296
|
+
};
|
|
280
297
|
});
|
|
281
298
|
}
|
|
282
299
|
function useAutocompleteExtension(host, editor, regex, reference, query, onDismiss, onSubmit) {
|
|
@@ -332,19 +349,10 @@ function createKeymapHandler(handler, enabled) {
|
|
|
332
349
|
return true;
|
|
333
350
|
};
|
|
334
351
|
}
|
|
335
|
-
function useEscapeKeydown(host, handler) {
|
|
336
|
-
|
|
337
|
-
|
|
338
|
-
|
|
339
|
-
return;
|
|
340
|
-
}
|
|
341
|
-
if (handler()) {
|
|
342
|
-
event.preventDefault();
|
|
343
|
-
}
|
|
344
|
-
};
|
|
345
|
-
document.addEventListener("keydown", handleKeyDown);
|
|
346
|
-
return () => document.removeEventListener("keydown", handleKeyDown);
|
|
347
|
-
});
|
|
352
|
+
function useEscapeKeydown(host, editor, handler) {
|
|
353
|
+
const keymap = { Escape: handler };
|
|
354
|
+
const extension = withPriority2(defineKeymap(keymap), Priority2.highest);
|
|
355
|
+
return useEditorExtension(host, editor, extension);
|
|
348
356
|
}
|
|
349
357
|
|
|
350
358
|
// src/components/autocomplete/autocomplete-popover/element.gen.ts
|
|
@@ -17,11 +17,15 @@ var defaultInlinePopoverProps = Object.freeze({
|
|
|
17
17
|
onOpenChange: null,
|
|
18
18
|
placement: "top",
|
|
19
19
|
offset: 12,
|
|
20
|
+
shift: true,
|
|
20
21
|
flip: true,
|
|
21
22
|
hide: true,
|
|
22
23
|
overlap: true,
|
|
23
24
|
inline: true,
|
|
24
|
-
|
|
25
|
+
overflowPadding: 8,
|
|
26
|
+
// Don't need boundary when hoist is true.
|
|
27
|
+
hoist: true,
|
|
28
|
+
boundary: []
|
|
25
29
|
});
|
|
26
30
|
|
|
27
31
|
// src/components/inline-popover/inline-popover/state.ts
|
|
@@ -6,10 +6,24 @@ import {
|
|
|
6
6
|
import { ElementMixin } from "@aria-ui/core";
|
|
7
7
|
|
|
8
8
|
// src/components/tooltip/tooltip-content/props.ts
|
|
9
|
-
import { defaultTooltipContentProps } from "@aria-ui/tooltip";
|
|
9
|
+
import { defaultTooltipContentProps as defaultProps } from "@aria-ui/tooltip";
|
|
10
|
+
var defaultTooltipContentProps = {
|
|
11
|
+
...defaultProps,
|
|
12
|
+
shift: true,
|
|
13
|
+
flip: true,
|
|
14
|
+
offset: 6,
|
|
15
|
+
overflowPadding: 4,
|
|
16
|
+
// Don't need boundary when hoist is true.
|
|
17
|
+
hoist: true,
|
|
18
|
+
boundary: []
|
|
19
|
+
};
|
|
10
20
|
|
|
11
21
|
// src/components/tooltip/tooltip-content/state.ts
|
|
12
|
-
import {
|
|
22
|
+
import { assignProps } from "@aria-ui/core";
|
|
23
|
+
import { useTooltipContent as useElement } from "@aria-ui/tooltip";
|
|
24
|
+
function useTooltipContent(element, props) {
|
|
25
|
+
return useElement(element, assignProps(defaultTooltipContentProps, props));
|
|
26
|
+
}
|
|
13
27
|
|
|
14
28
|
// src/components/tooltip/tooltip-content/element.gen.ts
|
|
15
29
|
var TooltipContentElement = class extends ElementMixin(useTooltipContent, defaultTooltipContentProps) {
|
|
@@ -34,7 +48,7 @@ defineCustomElement("prosekit-tooltip-root", TooltipRootElement);
|
|
|
34
48
|
import { ElementMixin as ElementMixin3 } from "@aria-ui/core";
|
|
35
49
|
|
|
36
50
|
// src/components/tooltip/tooltip-trigger/props.ts
|
|
37
|
-
|
|
51
|
+
import { defaultTooltipTriggerProps } from "@aria-ui/tooltip";
|
|
38
52
|
|
|
39
53
|
// src/components/tooltip/tooltip-trigger/state.ts
|
|
40
54
|
import { useTooltipTrigger } from "@aria-ui/tooltip";
|
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@prosekit/web",
|
|
3
3
|
"type": "module",
|
|
4
|
-
"version": "0.1.
|
|
4
|
+
"version": "0.1.8",
|
|
5
5
|
"private": false,
|
|
6
6
|
"author": {
|
|
7
7
|
"name": "ocavue",
|
|
@@ -68,21 +68,21 @@
|
|
|
68
68
|
"@aria-ui/collection": "^0.0.3",
|
|
69
69
|
"@aria-ui/core": "^0.0.14",
|
|
70
70
|
"@aria-ui/listbox": "^0.0.13",
|
|
71
|
-
"@aria-ui/overlay": "^0.0.
|
|
72
|
-
"@aria-ui/popover": "^0.0.
|
|
71
|
+
"@aria-ui/overlay": "^0.0.15",
|
|
72
|
+
"@aria-ui/popover": "^0.0.14",
|
|
73
73
|
"@aria-ui/presence": "^0.0.9",
|
|
74
|
-
"@aria-ui/tooltip": "^0.0.
|
|
74
|
+
"@aria-ui/tooltip": "^0.0.16",
|
|
75
75
|
"@floating-ui/dom": "^1.6.5",
|
|
76
|
-
"@prosekit/core": "^0.5.
|
|
77
|
-
"@prosekit/extensions": "^0.5.
|
|
78
|
-
"@prosekit/pm": "^0.1.
|
|
79
|
-
"@zag-js/dom-query": "^0.
|
|
76
|
+
"@prosekit/core": "^0.5.2",
|
|
77
|
+
"@prosekit/extensions": "^0.5.1",
|
|
78
|
+
"@prosekit/pm": "^0.1.4",
|
|
79
|
+
"@zag-js/dom-query": "^0.51.2"
|
|
80
80
|
},
|
|
81
81
|
"devDependencies": {
|
|
82
|
-
"@prosekit/dev": "*",
|
|
83
82
|
"tsup": "^8.0.2",
|
|
84
83
|
"typescript": "^5.4.5",
|
|
85
|
-
"vitest": "^1.6.0"
|
|
84
|
+
"vitest": "^1.6.0",
|
|
85
|
+
"@prosekit/dev": "0.0.0"
|
|
86
86
|
},
|
|
87
87
|
"scripts": {
|
|
88
88
|
"build:tsup": "tsup",
|