@prosekit/solid 0.7.0-beta.1 → 0.7.0-beta.2

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.
Files changed (119) hide show
  1. package/dist/prosekit-solid-autocomplete.d.ts +225 -19
  2. package/dist/prosekit-solid-autocomplete.d.ts.map +1 -1
  3. package/dist/prosekit-solid-autocomplete.js +204 -9
  4. package/dist/prosekit-solid-autocomplete.js.map +1 -1
  5. package/dist/prosekit-solid-block-handle.d.ts +209 -15
  6. package/dist/prosekit-solid-block-handle.d.ts.map +1 -1
  7. package/dist/prosekit-solid-block-handle.js +160 -7
  8. package/dist/prosekit-solid-block-handle.js.map +1 -1
  9. package/dist/prosekit-solid-drop-indicator.d.ts +26 -7
  10. package/dist/prosekit-solid-drop-indicator.d.ts.map +1 -1
  11. package/dist/prosekit-solid-drop-indicator.js +29 -3
  12. package/dist/prosekit-solid-drop-indicator.js.map +1 -1
  13. package/dist/prosekit-solid-inline-popover.d.ts +203 -9
  14. package/dist/prosekit-solid-inline-popover.d.ts.map +1 -1
  15. package/dist/prosekit-solid-inline-popover.js +128 -5
  16. package/dist/prosekit-solid-inline-popover.js.map +1 -1
  17. package/dist/prosekit-solid-menu.d.ts +287 -0
  18. package/dist/prosekit-solid-menu.d.ts.map +1 -0
  19. package/dist/prosekit-solid-menu.js +241 -0
  20. package/dist/prosekit-solid-menu.js.map +1 -0
  21. package/dist/prosekit-solid-popover.d.ts +226 -15
  22. package/dist/prosekit-solid-popover.d.ts.map +1 -1
  23. package/dist/prosekit-solid-popover.js +165 -7
  24. package/dist/prosekit-solid-popover.js.map +1 -1
  25. package/dist/prosekit-solid-resizable.d.ts +55 -13
  26. package/dist/prosekit-solid-resizable.d.ts.map +1 -1
  27. package/dist/prosekit-solid-resizable.js +69 -7
  28. package/dist/prosekit-solid-resizable.js.map +1 -1
  29. package/dist/prosekit-solid-table-handle.d.ts +446 -39
  30. package/dist/prosekit-solid-table-handle.d.ts.map +1 -1
  31. package/dist/prosekit-solid-table-handle.js +334 -19
  32. package/dist/prosekit-solid-table-handle.js.map +1 -1
  33. package/dist/prosekit-solid-tooltip.d.ts +210 -15
  34. package/dist/prosekit-solid-tooltip.d.ts.map +1 -1
  35. package/dist/prosekit-solid-tooltip.js +149 -7
  36. package/dist/prosekit-solid-tooltip.js.map +1 -1
  37. package/dist/prosekit-solid.d.ts +23 -2
  38. package/dist/prosekit-solid.d.ts.map +1 -1
  39. package/package.json +26 -18
  40. package/src/components/autocomplete/autocomplete-empty.gen.ts +22 -24
  41. package/src/components/autocomplete/autocomplete-item.gen.ts +82 -26
  42. package/src/components/autocomplete/autocomplete-popup.gen.ts +78 -0
  43. package/src/components/autocomplete/autocomplete-positioner.gen.ts +167 -0
  44. package/src/components/autocomplete/autocomplete-root.gen.ts +110 -0
  45. package/src/components/autocomplete/index.gen.ts +12 -4
  46. package/src/components/autocomplete/index.ts +27 -0
  47. package/src/components/block-handle/block-handle-add.gen.ts +54 -26
  48. package/src/components/block-handle/block-handle-draggable.gen.ts +54 -26
  49. package/src/components/block-handle/block-handle-popup.gen.ts +27 -0
  50. package/src/components/block-handle/block-handle-positioner.gen.ts +185 -0
  51. package/src/components/block-handle/block-handle-root.gen.ts +82 -0
  52. package/src/components/block-handle/index.gen.ts +13 -3
  53. package/src/components/block-handle/index.ts +27 -0
  54. package/src/components/drop-indicator/drop-indicator.gen.ts +60 -26
  55. package/src/components/drop-indicator/index.gen.ts +5 -1
  56. package/src/components/drop-indicator/index.ts +14 -0
  57. package/src/components/inline-popover/index.gen.ts +11 -1
  58. package/src/components/inline-popover/index.ts +22 -0
  59. package/src/components/inline-popover/inline-popover-popup.gen.ts +27 -0
  60. package/src/components/inline-popover/inline-popover-positioner.gen.ts +191 -0
  61. package/src/components/inline-popover/inline-popover-root.gen.ts +106 -0
  62. package/src/components/menu/index.gen.ts +19 -0
  63. package/src/components/menu/index.ts +37 -0
  64. package/src/components/menu/menu-item.gen.ts +89 -0
  65. package/src/components/menu/menu-popup.gen.ts +53 -0
  66. package/src/components/menu/menu-positioner.gen.ts +192 -0
  67. package/src/components/menu/menu-root.gen.ts +86 -0
  68. package/src/components/menu/menu-submenu-root.gen.ts +27 -0
  69. package/src/components/menu/menu-submenu-trigger.gen.ts +27 -0
  70. package/src/components/menu/menu-trigger.gen.ts +77 -0
  71. package/src/components/popover/index.gen.ts +11 -3
  72. package/src/components/popover/index.ts +24 -0
  73. package/src/components/popover/popover-popup.gen.ts +27 -0
  74. package/src/components/popover/popover-positioner.gen.ts +192 -0
  75. package/src/components/popover/popover-root.gen.ts +90 -26
  76. package/src/components/popover/popover-trigger.gen.ts +90 -26
  77. package/src/components/resizable/index.gen.ts +8 -2
  78. package/src/components/resizable/index.ts +20 -0
  79. package/src/components/resizable/resizable-handle.gen.ts +49 -26
  80. package/src/components/resizable/resizable-root.gen.ts +89 -26
  81. package/src/components/table-handle/index.gen.ts +17 -9
  82. package/src/components/table-handle/index.ts +58 -0
  83. package/src/components/table-handle/table-handle-column-menu-root.gen.ts +61 -0
  84. package/src/components/table-handle/table-handle-column-menu-trigger.gen.ts +55 -0
  85. package/src/components/table-handle/table-handle-column-popup.gen.ts +27 -0
  86. package/src/components/table-handle/table-handle-column-positioner.gen.ts +196 -0
  87. package/src/components/table-handle/table-handle-drag-preview.gen.ts +52 -26
  88. package/src/components/table-handle/table-handle-drop-indicator.gen.ts +52 -26
  89. package/src/components/table-handle/table-handle-root.gen.ts +54 -26
  90. package/src/components/table-handle/table-handle-row-menu-root.gen.ts +61 -0
  91. package/src/components/table-handle/table-handle-row-menu-trigger.gen.ts +55 -0
  92. package/src/components/table-handle/table-handle-row-popup.gen.ts +27 -0
  93. package/src/components/table-handle/table-handle-row-positioner.gen.ts +196 -0
  94. package/src/components/tooltip/index.gen.ts +11 -3
  95. package/src/components/tooltip/index.ts +24 -0
  96. package/src/components/tooltip/tooltip-popup.gen.ts +27 -0
  97. package/src/components/tooltip/tooltip-positioner.gen.ts +192 -0
  98. package/src/components/tooltip/tooltip-root.gen.ts +83 -26
  99. package/src/components/tooltip/tooltip-trigger.gen.ts +58 -26
  100. package/dist/create-component.js +0 -41
  101. package/dist/create-component.js.map +0 -1
  102. package/dist/create-props.d.ts +0 -6
  103. package/dist/create-props.d.ts.map +0 -1
  104. package/dist/types.d.ts +0 -26
  105. package/dist/types.d.ts.map +0 -1
  106. package/src/components/autocomplete/autocomplete-list.gen.ts +0 -29
  107. package/src/components/autocomplete/autocomplete-popover.gen.ts +0 -29
  108. package/src/components/block-handle/block-handle-popover.gen.ts +0 -29
  109. package/src/components/create-component.ts +0 -60
  110. package/src/components/create-props.ts +0 -13
  111. package/src/components/inline-popover/inline-popover.gen.ts +0 -29
  112. package/src/components/popover/popover-content.gen.ts +0 -29
  113. package/src/components/table-handle/table-handle-column-root.gen.ts +0 -29
  114. package/src/components/table-handle/table-handle-column-trigger.gen.ts +0 -29
  115. package/src/components/table-handle/table-handle-popover-content.gen.ts +0 -29
  116. package/src/components/table-handle/table-handle-popover-item.gen.ts +0 -29
  117. package/src/components/table-handle/table-handle-row-root.gen.ts +0 -29
  118. package/src/components/table-handle/table-handle-row-trigger.gen.ts +0 -29
  119. package/src/components/tooltip/tooltip-content.gen.ts +0 -29
@@ -1,14 +1,172 @@
1
- import { t as createComponent } from "./create-component.js";
2
- import { popoverContentEvents, popoverContentProps, popoverRootEvents, popoverRootProps, popoverTriggerEvents, popoverTriggerProps } from "@prosekit/web/popover";
3
- //#region src/components/popover/popover-content.gen.ts
4
- const PopoverContent = createComponent("prosekit-popover-content", Object.keys(popoverContentProps), Object.keys(popoverContentEvents));
1
+ import { createEffect, createSignal, mergeProps, splitProps } from "solid-js";
2
+ import h from "solid-js/h";
3
+ import { OpenChangeEvent, registerPopoverPopupElement, registerPopoverPositionerElement, registerPopoverRootElement, registerPopoverTriggerElement } from "@prosekit/web/popover";
4
+ //#region src/components/popover/popover-popup.gen.ts
5
+ /**
6
+ * This file is auto-generated by the "@aria-ui/cli" tool. Do not edit this file directly.
7
+ */
8
+ /**
9
+ * A Solid component that renders an `prosekit-popover-popup` custom element.
10
+ *
11
+ * @public
12
+ */
13
+ const PopoverPopup = (props) => {
14
+ registerPopoverPopupElement();
15
+ const restProps = props;
16
+ return () => h("prosekit-popover-popup", restProps);
17
+ };
18
+ //#endregion
19
+ //#region src/components/popover/popover-positioner.gen.ts
20
+ /**
21
+ * This file is auto-generated by the "@aria-ui/cli" tool. Do not edit this file directly.
22
+ */
23
+ /**
24
+ * A Solid component that renders an `prosekit-popover-positioner` custom element.
25
+ *
26
+ * @public
27
+ */
28
+ const PopoverPositioner = (props) => {
29
+ registerPopoverPositionerElement();
30
+ const [getElement, setElement] = createSignal(null);
31
+ const [elementProps, restProps] = splitProps(props, [
32
+ "altBoundary",
33
+ "autoUpdate",
34
+ "boundary",
35
+ "elementContext",
36
+ "fitViewport",
37
+ "flip",
38
+ "hide",
39
+ "hoist",
40
+ "inline",
41
+ "offset",
42
+ "overflowPadding",
43
+ "overlap",
44
+ "placement",
45
+ "rootBoundary",
46
+ "sameHeight",
47
+ "sameWidth",
48
+ "shift",
49
+ "strategy"
50
+ ]);
51
+ createEffect(() => {
52
+ const element = getElement();
53
+ if (!element) return;
54
+ Object.assign(element, {
55
+ altBoundary: elementProps.altBoundary,
56
+ autoUpdate: elementProps.autoUpdate,
57
+ boundary: elementProps.boundary,
58
+ elementContext: elementProps.elementContext,
59
+ fitViewport: elementProps.fitViewport,
60
+ flip: elementProps.flip,
61
+ hide: elementProps.hide,
62
+ hoist: elementProps.hoist,
63
+ inline: elementProps.inline,
64
+ offset: elementProps.offset,
65
+ overflowPadding: elementProps.overflowPadding,
66
+ overlap: elementProps.overlap,
67
+ placement: elementProps.placement,
68
+ rootBoundary: elementProps.rootBoundary,
69
+ sameHeight: elementProps.sameHeight,
70
+ sameWidth: elementProps.sameWidth,
71
+ shift: elementProps.shift,
72
+ strategy: elementProps.strategy
73
+ });
74
+ });
75
+ return () => h("prosekit-popover-positioner", mergeProps(restProps, { ref: (el) => {
76
+ setElement(el);
77
+ } }));
78
+ };
5
79
  //#endregion
6
80
  //#region src/components/popover/popover-root.gen.ts
7
- const PopoverRoot = createComponent("prosekit-popover-root", Object.keys(popoverRootProps), Object.keys(popoverRootEvents));
81
+ /**
82
+ * This file is auto-generated by the "@aria-ui/cli" tool. Do not edit this file directly.
83
+ */
84
+ /**
85
+ * A Solid component that renders an `prosekit-popover-root` custom element.
86
+ *
87
+ * @public
88
+ */
89
+ const PopoverRoot = (props) => {
90
+ registerPopoverRootElement();
91
+ const [getElement, setElement] = createSignal(null);
92
+ const handlers = [];
93
+ const [elementProps, eventHandlers, restProps] = splitProps(props, [
94
+ "defaultOpen",
95
+ "disabled",
96
+ "modal",
97
+ "open"
98
+ ], ["onOpenChange"]);
99
+ createEffect(() => {
100
+ const element = getElement();
101
+ if (!element) return;
102
+ Object.assign(element, {
103
+ defaultOpen: elementProps.defaultOpen,
104
+ disabled: elementProps.disabled,
105
+ modal: elementProps.modal,
106
+ open: elementProps.open
107
+ });
108
+ handlers.length = 0;
109
+ handlers.push(eventHandlers.onOpenChange);
110
+ });
111
+ createEffect(() => {
112
+ const element = getElement();
113
+ if (!element) return;
114
+ const ac = new AbortController();
115
+ for (const [index, eventName] of ["openChange"].entries()) element.addEventListener(eventName, (event) => {
116
+ handlers[index]?.(event);
117
+ }, { signal: ac.signal });
118
+ return () => ac.abort();
119
+ });
120
+ return () => h("prosekit-popover-root", mergeProps(restProps, { ref: (el) => {
121
+ setElement(el);
122
+ } }));
123
+ };
8
124
  //#endregion
9
125
  //#region src/components/popover/popover-trigger.gen.ts
10
- const PopoverTrigger = createComponent("prosekit-popover-trigger", Object.keys(popoverTriggerProps), Object.keys(popoverTriggerEvents));
126
+ /**
127
+ * This file is auto-generated by the "@aria-ui/cli" tool. Do not edit this file directly.
128
+ */
129
+ /**
130
+ * A Solid component that renders an `prosekit-popover-trigger` custom element.
131
+ *
132
+ * @public
133
+ */
134
+ const PopoverTrigger = (props) => {
135
+ registerPopoverTriggerElement();
136
+ const [getElement, setElement] = createSignal(null);
137
+ const handlers = [];
138
+ const [elementProps, eventHandlers, restProps] = splitProps(props, [
139
+ "closeDelay",
140
+ "delay",
141
+ "disabled",
142
+ "openOnHover"
143
+ ], ["onOpenChange"]);
144
+ createEffect(() => {
145
+ const element = getElement();
146
+ if (!element) return;
147
+ Object.assign(element, {
148
+ closeDelay: elementProps.closeDelay,
149
+ delay: elementProps.delay,
150
+ disabled: elementProps.disabled,
151
+ openOnHover: elementProps.openOnHover
152
+ });
153
+ handlers.length = 0;
154
+ handlers.push(eventHandlers.onOpenChange);
155
+ });
156
+ createEffect(() => {
157
+ const element = getElement();
158
+ if (!element) return;
159
+ const ac = new AbortController();
160
+ for (const [index, eventName] of ["openChange"].entries()) element.addEventListener(eventName, (event) => {
161
+ handlers[index]?.(event);
162
+ }, { signal: ac.signal });
163
+ return () => ac.abort();
164
+ });
165
+ return () => h("prosekit-popover-trigger", mergeProps(restProps, { ref: (el) => {
166
+ setElement(el);
167
+ } }));
168
+ };
11
169
  //#endregion
12
- export { PopoverContent, PopoverRoot, PopoverTrigger };
170
+ export { OpenChangeEvent, PopoverPopup, PopoverPositioner, PopoverRoot, PopoverTrigger };
13
171
 
14
172
  //# sourceMappingURL=prosekit-solid-popover.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"prosekit-solid-popover.js","names":[],"sources":["../src/components/popover/popover-content.gen.ts","../src/components/popover/popover-root.gen.ts","../src/components/popover/popover-trigger.gen.ts"],"sourcesContent":["import { \n type PopoverContentElement,\n type PopoverContentProps as Props,\n type PopoverContentEvents as Events,\n popoverContentProps,\n popoverContentEvents,\n} from '@prosekit/web/popover'\nimport type { Component } from 'solid-js'\n\nimport type { PropsWithElement } from '../../types.ts'\nimport { createComponent } from '../create-component.ts'\nimport type { CreateProps } from '../create-props.ts'\n\n/**\n * Props for the {@link PopoverContent} component.\n */\nexport interface PopoverContentProps extends Partial<CreateProps<Props, Events>> {}\n\nexport const PopoverContent: Component<PropsWithElement<\n PopoverContentProps,\n PopoverContentElement\n>> = createComponent<\n PopoverContentProps,\n PopoverContentElement\n>(\n 'prosekit-popover-content', \n Object.keys(popoverContentProps),\n Object.keys(popoverContentEvents),\n)\n","import { \n type PopoverRootElement,\n type PopoverRootProps as Props,\n type PopoverRootEvents as Events,\n popoverRootProps,\n popoverRootEvents,\n} from '@prosekit/web/popover'\nimport type { Component } from 'solid-js'\n\nimport type { PropsWithElement } from '../../types.ts'\nimport { createComponent } from '../create-component.ts'\nimport type { CreateProps } from '../create-props.ts'\n\n/**\n * Props for the {@link PopoverRoot} component.\n */\nexport interface PopoverRootProps extends Partial<CreateProps<Props, Events>> {}\n\nexport const PopoverRoot: Component<PropsWithElement<\n PopoverRootProps,\n PopoverRootElement\n>> = createComponent<\n PopoverRootProps,\n PopoverRootElement\n>(\n 'prosekit-popover-root', \n Object.keys(popoverRootProps),\n Object.keys(popoverRootEvents),\n)\n","import { \n type PopoverTriggerElement,\n type PopoverTriggerProps as Props,\n type PopoverTriggerEvents as Events,\n popoverTriggerProps,\n popoverTriggerEvents,\n} from '@prosekit/web/popover'\nimport type { Component } from 'solid-js'\n\nimport type { PropsWithElement } from '../../types.ts'\nimport { createComponent } from '../create-component.ts'\nimport type { CreateProps } from '../create-props.ts'\n\n/**\n * Props for the {@link PopoverTrigger} component.\n */\nexport interface PopoverTriggerProps extends Partial<CreateProps<Props, Events>> {}\n\nexport const PopoverTrigger: Component<PropsWithElement<\n PopoverTriggerProps,\n PopoverTriggerElement\n>> = createComponent<\n PopoverTriggerProps,\n PopoverTriggerElement\n>(\n 'prosekit-popover-trigger', \n Object.keys(popoverTriggerProps),\n Object.keys(popoverTriggerEvents),\n)\n"],"mappings":";;;AAkBA,MAAa,iBAGR,gBAIH,4BACA,OAAO,KAAK,oBAAoB,EAChC,OAAO,KAAK,qBAAqB,CAClC;;;ACVD,MAAa,cAGR,gBAIH,yBACA,OAAO,KAAK,iBAAiB,EAC7B,OAAO,KAAK,kBAAkB,CAC/B;;;ACVD,MAAa,iBAGR,gBAIH,4BACA,OAAO,KAAK,oBAAoB,EAChC,OAAO,KAAK,qBAAqB,CAClC"}
1
+ {"version":3,"file":"prosekit-solid-popover.js","names":[],"sources":["../src/components/popover/popover-popup.gen.ts","../src/components/popover/popover-positioner.gen.ts","../src/components/popover/popover-root.gen.ts","../src/components/popover/popover-trigger.gen.ts"],"sourcesContent":["/**\n * This file is auto-generated by the \"@aria-ui/cli\" tool. Do not edit this file directly.\n */\n\nimport { registerPopoverPopupElement, type PopoverPopupElement } from '@prosekit/web/popover';\nimport type { Component, JSX } from 'solid-js';\nimport h from 'solid-js/h';\n\n/**\n * Props for the {@link PopoverPopup} Solid component.\n *\n * @public\n */\nexport interface PopoverPopupProps extends JSX.HTMLAttributes<PopoverPopupElement> {}\n\n/**\n * A Solid component that renders an `prosekit-popover-popup` custom element.\n *\n * @public\n */\nexport const PopoverPopup: Component<PopoverPopupProps> = (props): any => {\n registerPopoverPopupElement();\n\n const restProps = props;\n\n return () => h('prosekit-popover-popup', restProps);\n};\n","/**\n * This file is auto-generated by the \"@aria-ui/cli\" tool. Do not edit this file directly.\n */\n\nimport { registerPopoverPositionerElement, type PopoverPositionerElement, type PopoverPositionerProps as PopoverPositionerElementProps } from '@prosekit/web/popover';\nimport { createEffect, createSignal, mergeProps, splitProps } from 'solid-js';\nimport type { Component, JSX } from 'solid-js';\nimport h from 'solid-js/h';\n\n/**\n * Props for the {@link PopoverPositioner} Solid component.\n *\n * @public\n */\nexport interface PopoverPositionerProps extends JSX.HTMLAttributes<PopoverPositionerElement> {\n /**\n * The strategy to use for positioning\n *\n * @default \"absolute\"\n */\n strategy?: PopoverPositionerElementProps['strategy'];\n /**\n * The initial placement of the floating element\n *\n * @default \"top\"\n */\n placement?: PopoverPositionerElementProps['placement'];\n /**\n * Options to activate auto-update listeners\n *\n * @see https://floating-ui.com/docs/autoUpdate\n *\n * @default true\n */\n autoUpdate?: PopoverPositionerElementProps['autoUpdate'];\n /**\n * Whether to use the browser Popover API to place the floating element on\n * top of other page content.\n *\n * @default true\n */\n hoist?: PopoverPositionerElementProps['hoist'];\n /**\n * The distance between the reference and floating element.\n *\n * @default 6\n */\n offset?: PopoverPositionerElementProps['offset'];\n /**\n * Whether to flip the `placement` in order to keep it in view when the\n * preferred placement(s) will overflow the clipping boundary. You can also\n * provide an array of placements to try sequentially if the preferred\n * `placement` does not fit.\n *\n * @default true\n */\n flip?: PopoverPositionerElementProps['flip'];\n /**\n * Whether the floating element should shift to keep it in view.\n *\n * @default true\n */\n shift?: PopoverPositionerElementProps['shift'];\n /**\n * Whether the floating element can overlap the reference element to keep it\n * in view.\n *\n * @default false\n */\n overlap?: PopoverPositionerElementProps['overlap'];\n /**\n * Whether to constrain the floating element's width and height to not exceed\n * the viewport.\n *\n * @default false\n */\n fitViewport?: PopoverPositionerElementProps['fitViewport'];\n /**\n * Whether to constrain the floating element's width so that it matches the\n * reference element.\n *\n * @default false\n */\n sameWidth?: PopoverPositionerElementProps['sameWidth'];\n /**\n * Whether to constrain the floating element's height so that it matches the\n * reference element.\n *\n * @default false\n */\n sameHeight?: PopoverPositionerElementProps['sameHeight'];\n /**\n * Whether to improve positioning for inline reference elements that span over\n * multiple lines.\n *\n * @default false\n */\n inline?: PopoverPositionerElementProps['inline'];\n /**\n * Whether to hide the floating element when the reference element or the\n * floating element is fully clipped.\n *\n * @default false\n */\n hide?: PopoverPositionerElementProps['hide'];\n /**\n * Describes the clipping element(s) or area that overflow will be checked relative to.\n * Please see https://floating-ui.com/docs/detectoverflow#boundary for more information.\n *\n * @default 'clippingAncestors'\n */\n boundary?: PopoverPositionerElementProps['boundary'];\n /**\n * Describes the root boundary that the element will be checked for overflow relative to.\n * Please see https://floating-ui.com/docs/detectoverflow#rootboundary for more information.\n *\n * @default 'viewport'\n */\n rootBoundary?: PopoverPositionerElementProps['rootBoundary'];\n /**\n * Describes the virtual padding around the boundary to check for overflow.\n * Please see https://floating-ui.com/docs/detectoverflow#padding for more information.\n *\n * @default 4\n */\n overflowPadding?: PopoverPositionerElementProps['overflowPadding'];\n /**\n * The element that will be used to check for overflow. Please see\n * https://floating-ui.com/docs/detectoverflow#elementcontext for more\n * information.\n *\n * @default 'floating'\n */\n elementContext?: PopoverPositionerElementProps['elementContext'];\n /**\n * Whether to check the alternate elementContext's boundary. Please see\n * https://floating-ui.com/docs/detectoverflow#altboundary for more\n * information.\n *\n * @default false\n */\n altBoundary?: PopoverPositionerElementProps['altBoundary'];\n}\n\n/**\n * A Solid component that renders an `prosekit-popover-positioner` custom element.\n *\n * @public\n */\nexport const PopoverPositioner: Component<PopoverPositionerProps> = (props): any => {\n registerPopoverPositionerElement();\n\n const [getElement, setElement] = createSignal<PopoverPositionerElement | null>(null);\n\n const [elementProps, restProps] = splitProps(props, ['altBoundary', 'autoUpdate', 'boundary', 'elementContext', 'fitViewport', 'flip', 'hide', 'hoist', 'inline', 'offset', 'overflowPadding', 'overlap', 'placement', 'rootBoundary', 'sameHeight', 'sameWidth', 'shift', 'strategy']);\n\n createEffect(() => {\n const element = getElement();\n if (!element) return;\n\n Object.assign(element, {\n altBoundary: elementProps.altBoundary,\n autoUpdate: elementProps.autoUpdate,\n boundary: elementProps.boundary,\n elementContext: elementProps.elementContext,\n fitViewport: elementProps.fitViewport,\n flip: elementProps.flip,\n hide: elementProps.hide,\n hoist: elementProps.hoist,\n inline: elementProps.inline,\n offset: elementProps.offset,\n overflowPadding: elementProps.overflowPadding,\n overlap: elementProps.overlap,\n placement: elementProps.placement,\n rootBoundary: elementProps.rootBoundary,\n sameHeight: elementProps.sameHeight,\n sameWidth: elementProps.sameWidth,\n shift: elementProps.shift,\n strategy: elementProps.strategy,\n });\n });\n\n return () =>\n h(\n 'prosekit-popover-positioner',\n mergeProps(restProps, {\n ref: (el: PopoverPositionerElement | null) => {\n setElement(el);\n },\n }),\n );\n};\n","/**\n * This file is auto-generated by the \"@aria-ui/cli\" tool. Do not edit this file directly.\n */\n\nimport { registerPopoverRootElement, type PopoverRootElement, type PopoverRootEvents, type PopoverRootProps as PopoverRootElementProps } from '@prosekit/web/popover';\nimport { createEffect, createSignal, mergeProps, splitProps } from 'solid-js';\nimport type { Component, JSX } from 'solid-js';\nimport h from 'solid-js/h';\n\n/**\n * Props for the {@link PopoverRoot} Solid component.\n *\n * @public\n */\nexport interface PopoverRootProps extends JSX.HTMLAttributes<PopoverRootElement> {\n /**\n * Whether the popover should be modal.\n * When true, the popover will trap focus and prevent interaction with the rest of the page.\n *\n * @default false\n */\n modal?: PopoverRootElementProps['modal'];\n /**\n * Whether the overlay is initially open.\n * @default false\n */\n defaultOpen?: PopoverRootElementProps['defaultOpen'];\n /**\n * Whether the overlay is currently open.\n * @default null\n */\n open?: PopoverRootElementProps['open'];\n /**\n * Whether the component should ignore user interaction.\n * @default false\n */\n disabled?: PopoverRootElementProps['disabled'];\n /** Emitted when the popover is opened or closed. */\n onOpenChange?: (event: PopoverRootEvents['openChange']) => void;\n}\n\n/**\n * A Solid component that renders an `prosekit-popover-root` custom element.\n *\n * @public\n */\nexport const PopoverRoot: Component<PopoverRootProps> = (props): any => {\n registerPopoverRootElement();\n\n const [getElement, setElement] = createSignal<PopoverRootElement | null>(null);\n const handlers: Array<((event: any) => void) | undefined> = [];\n\n const [elementProps, eventHandlers, restProps] = splitProps(props, ['defaultOpen', 'disabled', 'modal', 'open'], ['onOpenChange']);\n\n createEffect(() => {\n const element = getElement();\n if (!element) return;\n\n Object.assign(element, { defaultOpen: elementProps.defaultOpen, disabled: elementProps.disabled, modal: elementProps.modal, open: elementProps.open });\n\n handlers.length = 0;\n handlers.push(eventHandlers.onOpenChange);\n });\n\n createEffect(() => {\n const element = getElement();\n if (!element) return;\n\n const ac = new AbortController();\n for (const [index, eventName] of ['openChange'].entries()) {\n element.addEventListener(\n eventName,\n (event) => {\n handlers[index]?.(event);\n },\n { signal: ac.signal },\n );\n }\n return () => ac.abort();\n });\n\n return () =>\n h(\n 'prosekit-popover-root',\n mergeProps(restProps, {\n ref: (el: PopoverRootElement | null) => {\n setElement(el);\n },\n }),\n );\n};\n\nexport type { PopoverRootEvents };\n","/**\n * This file is auto-generated by the \"@aria-ui/cli\" tool. Do not edit this file directly.\n */\n\nimport { registerPopoverTriggerElement, type PopoverTriggerElement, type PopoverTriggerEvents, type PopoverTriggerProps as PopoverTriggerElementProps } from '@prosekit/web/popover';\nimport { createEffect, createSignal, mergeProps, splitProps } from 'solid-js';\nimport type { Component, JSX } from 'solid-js';\nimport h from 'solid-js/h';\n\n/**\n * Props for the {@link PopoverTrigger} Solid component.\n *\n * @public\n */\nexport interface PopoverTriggerProps extends JSX.HTMLAttributes<PopoverTriggerElement> {\n /**\n * Whether the component should ignore user interaction.\n * @default false\n */\n disabled?: PopoverTriggerElementProps['disabled'];\n /**\n * Whether the popover should also open when the trigger is hovered.\n * @default false\n */\n openOnHover?: PopoverTriggerElementProps['openOnHover'];\n /**\n * The delay in milliseconds before opening the popover when hovering.\n * Only applies when `openOnHover` is true.\n * @default 300\n */\n delay?: PopoverTriggerElementProps['delay'];\n /**\n * The delay in milliseconds before closing the popover when hover ends.\n * Only applies when `openOnHover` is true.\n * @default 0\n */\n closeDelay?: PopoverTriggerElementProps['closeDelay'];\n /** Emitted when the popover is opened or closed. */\n onOpenChange?: (event: PopoverTriggerEvents['openChange']) => void;\n}\n\n/**\n * A Solid component that renders an `prosekit-popover-trigger` custom element.\n *\n * @public\n */\nexport const PopoverTrigger: Component<PopoverTriggerProps> = (props): any => {\n registerPopoverTriggerElement();\n\n const [getElement, setElement] = createSignal<PopoverTriggerElement | null>(null);\n const handlers: Array<((event: any) => void) | undefined> = [];\n\n const [elementProps, eventHandlers, restProps] = splitProps(props, ['closeDelay', 'delay', 'disabled', 'openOnHover'], ['onOpenChange']);\n\n createEffect(() => {\n const element = getElement();\n if (!element) return;\n\n Object.assign(element, { closeDelay: elementProps.closeDelay, delay: elementProps.delay, disabled: elementProps.disabled, openOnHover: elementProps.openOnHover });\n\n handlers.length = 0;\n handlers.push(eventHandlers.onOpenChange);\n });\n\n createEffect(() => {\n const element = getElement();\n if (!element) return;\n\n const ac = new AbortController();\n for (const [index, eventName] of ['openChange'].entries()) {\n element.addEventListener(\n eventName,\n (event) => {\n handlers[index]?.(event);\n },\n { signal: ac.signal },\n );\n }\n return () => ac.abort();\n });\n\n return () =>\n h(\n 'prosekit-popover-trigger',\n mergeProps(restProps, {\n ref: (el: PopoverTriggerElement | null) => {\n setElement(el);\n },\n }),\n );\n};\n\nexport type { PopoverTriggerEvents };\n"],"mappings":"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"}
@@ -1,21 +1,63 @@
1
- import { i as PropsWithElement } from "./types.js";
2
- import { t as CreateProps } from "./create-props.js";
3
- import { Component } from "solid-js";
4
- import { ResizableHandleElement, ResizableHandleEvents, ResizableHandleProps as ResizableHandleProps$1, ResizableRootElement, ResizableRootEvents, ResizableRootProps as ResizableRootProps$1 } from "@prosekit/web/resizable";
1
+ import { Component, JSX } from "solid-js";
2
+ import { ResizableHandleElement, ResizableHandleProps as ResizableHandleProps$1, ResizableRootElement, ResizableRootEvents, ResizableRootProps as ResizableRootProps$1, ResizeEndEvent, ResizeStartEvent } from "@prosekit/web/resizable";
5
3
 
6
- //#region src/components/resizable/resizable-handle.gen.d.ts
4
+ //#region src/components/resizable/resizable-root.gen.d.ts
5
+ /**
6
+ * Props for the {@link ResizableRoot} Solid component.
7
+ *
8
+ * @public
9
+ */
10
+ interface ResizableRootProps extends JSX.HTMLAttributes<ResizableRootElement> {
11
+ /**
12
+ * The width of the resizable element.
13
+ *
14
+ * @default null
15
+ */
16
+ width?: ResizableRootProps$1['width'];
17
+ /**
18
+ * The height of the resizable element.
19
+ *
20
+ * @default null
21
+ */
22
+ height?: ResizableRootProps$1['height'];
23
+ /**
24
+ * The aspect ratio of the resizable element.
25
+ *
26
+ * @default null
27
+ */
28
+ aspectRatio?: ResizableRootProps$1['aspectRatio'];
29
+ /** Emitted when a resize operation starts. */
30
+ onResizeStart?: (event: ResizableRootEvents['resizeStart']) => void;
31
+ /** Emitted when a resize operation ends. */
32
+ onResizeEnd?: (event: ResizableRootEvents['resizeEnd']) => void;
33
+ }
7
34
  /**
8
- * Props for the {@link ResizableHandle} component.
35
+ * A Solid component that renders an `prosekit-resizable-root` custom element.
36
+ *
37
+ * @public
9
38
  */
10
- interface ResizableHandleProps extends Partial<CreateProps<ResizableHandleProps$1, ResizableHandleEvents>> {}
11
- declare const ResizableHandle: Component<PropsWithElement<ResizableHandleProps, ResizableHandleElement>>;
39
+ declare const ResizableRoot: Component<ResizableRootProps>;
12
40
  //#endregion
13
- //#region src/components/resizable/resizable-root.gen.d.ts
41
+ //#region src/components/resizable/resizable-handle.gen.d.ts
42
+ /**
43
+ * Props for the {@link ResizableHandle} Solid component.
44
+ *
45
+ * @public
46
+ */
47
+ interface ResizableHandleProps extends JSX.HTMLAttributes<ResizableHandleElement> {
48
+ /**
49
+ * The position of the handle.
50
+ *
51
+ * @default "bottom-right"
52
+ */
53
+ position?: ResizableHandleProps$1['position'];
54
+ }
14
55
  /**
15
- * Props for the {@link ResizableRoot} component.
56
+ * A Solid component that renders an `prosekit-resizable-handle` custom element.
57
+ *
58
+ * @public
16
59
  */
17
- interface ResizableRootProps extends Partial<CreateProps<ResizableRootProps$1, ResizableRootEvents>> {}
18
- declare const ResizableRoot: Component<PropsWithElement<ResizableRootProps, ResizableRootElement>>;
60
+ declare const ResizableHandle: Component<ResizableHandleProps>;
19
61
  //#endregion
20
- export { ResizableHandle, type ResizableHandleProps, ResizableRoot, type ResizableRootProps };
62
+ export { ResizableHandle, type ResizableHandleProps, ResizableRoot, type ResizableRootEvents, type ResizableRootProps, ResizeEndEvent, ResizeStartEvent };
21
63
  //# sourceMappingURL=prosekit-solid-resizable.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"prosekit-solid-resizable.d.ts","names":[],"sources":["../src/components/resizable/resizable-handle.gen.ts","../src/components/resizable/resizable-root.gen.ts"],"mappings":";;;;;;;;AAgBA;UAAiB,oBAAA,SAA6B,OAAA,CAAQ,WAAA,CAAY,sBAAA,EAAO,qBAAA;AAAA,cAE5D,eAAA,EAAiB,SAAA,CAAU,gBAAA,CACtC,oBAAA,EACA,sBAAA;;;;;AAJF;UCAiB,kBAAA,SAA2B,OAAA,CAAQ,WAAA,CAAY,oBAAA,EAAO,mBAAA;AAAA,cAE1D,aAAA,EAAe,SAAA,CAAU,gBAAA,CACpC,kBAAA,EACA,oBAAA"}
1
+ {"version":3,"file":"prosekit-solid-resizable.d.ts","names":[],"sources":["../src/components/resizable/resizable-root.gen.ts","../src/components/resizable/resizable-handle.gen.ts"],"mappings":";;;;;;;;;UAciB,kBAAA,SAA2B,GAAA,CAAI,cAAA,CAAe,oBAAA;EAoBrC;;;;;EAdxB,KAAA,GAAQ,oBAAA;EANsC;;;;;EAY9C,MAAA,GAAS,oBAAA;EAMT;;;;;EAAA,WAAA,GAAc,oBAAA;EAIQ;EAFtB,aAAA,IAAiB,KAAA,EAAO,mBAAA;EAE8B;EAAtD,WAAA,IAAe,KAAA,EAAO,mBAAA;AAAA;;;;;;cAQX,aAAA,EAAe,SAAA,CAAU,kBAAA;;;;;;;;UC9BrB,oBAAA,SAA6B,GAAA,CAAI,cAAA,CAAe,sBAAA;EDoBvC;;;;;ECdxB,QAAA,GAAW,sBAAA;AAAA;;;;;;cAQA,eAAA,EAAiB,SAAA,CAAU,oBAAA"}
@@ -1,11 +1,73 @@
1
- import { t as createComponent } from "./create-component.js";
2
- import { resizableHandleEvents, resizableHandleProps, resizableRootEvents, resizableRootProps } from "@prosekit/web/resizable";
3
- //#region src/components/resizable/resizable-handle.gen.ts
4
- const ResizableHandle = createComponent("prosekit-resizable-handle", Object.keys(resizableHandleProps), Object.keys(resizableHandleEvents));
5
- //#endregion
1
+ import { createEffect, createSignal, mergeProps, splitProps } from "solid-js";
2
+ import h from "solid-js/h";
3
+ import { ResizeEndEvent, ResizeStartEvent, registerResizableHandleElement, registerResizableRootElement } from "@prosekit/web/resizable";
6
4
  //#region src/components/resizable/resizable-root.gen.ts
7
- const ResizableRoot = createComponent("prosekit-resizable-root", Object.keys(resizableRootProps), Object.keys(resizableRootEvents));
5
+ /**
6
+ * This file is auto-generated by the "@aria-ui/cli" tool. Do not edit this file directly.
7
+ */
8
+ /**
9
+ * A Solid component that renders an `prosekit-resizable-root` custom element.
10
+ *
11
+ * @public
12
+ */
13
+ const ResizableRoot = (props) => {
14
+ registerResizableRootElement();
15
+ const [getElement, setElement] = createSignal(null);
16
+ const handlers = [];
17
+ const [elementProps, eventHandlers, restProps] = splitProps(props, [
18
+ "aspectRatio",
19
+ "height",
20
+ "width"
21
+ ], ["onResizeEnd", "onResizeStart"]);
22
+ createEffect(() => {
23
+ const element = getElement();
24
+ if (!element) return;
25
+ Object.assign(element, {
26
+ aspectRatio: elementProps.aspectRatio,
27
+ height: elementProps.height,
28
+ width: elementProps.width
29
+ });
30
+ handlers.length = 0;
31
+ handlers.push(eventHandlers.onResizeEnd);
32
+ handlers.push(eventHandlers.onResizeStart);
33
+ });
34
+ createEffect(() => {
35
+ const element = getElement();
36
+ if (!element) return;
37
+ const ac = new AbortController();
38
+ for (const [index, eventName] of ["resizeEnd", "resizeStart"].entries()) element.addEventListener(eventName, (event) => {
39
+ handlers[index]?.(event);
40
+ }, { signal: ac.signal });
41
+ return () => ac.abort();
42
+ });
43
+ return () => h("prosekit-resizable-root", mergeProps(restProps, { ref: (el) => {
44
+ setElement(el);
45
+ } }));
46
+ };
47
+ //#endregion
48
+ //#region src/components/resizable/resizable-handle.gen.ts
49
+ /**
50
+ * This file is auto-generated by the "@aria-ui/cli" tool. Do not edit this file directly.
51
+ */
52
+ /**
53
+ * A Solid component that renders an `prosekit-resizable-handle` custom element.
54
+ *
55
+ * @public
56
+ */
57
+ const ResizableHandle = (props) => {
58
+ registerResizableHandleElement();
59
+ const [getElement, setElement] = createSignal(null);
60
+ const [elementProps, restProps] = splitProps(props, ["position"]);
61
+ createEffect(() => {
62
+ const element = getElement();
63
+ if (!element) return;
64
+ Object.assign(element, { position: elementProps.position });
65
+ });
66
+ return () => h("prosekit-resizable-handle", mergeProps(restProps, { ref: (el) => {
67
+ setElement(el);
68
+ } }));
69
+ };
8
70
  //#endregion
9
- export { ResizableHandle, ResizableRoot };
71
+ export { ResizableHandle, ResizableRoot, ResizeEndEvent, ResizeStartEvent };
10
72
 
11
73
  //# sourceMappingURL=prosekit-solid-resizable.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"prosekit-solid-resizable.js","names":[],"sources":["../src/components/resizable/resizable-handle.gen.ts","../src/components/resizable/resizable-root.gen.ts"],"sourcesContent":["import { \n type ResizableHandleElement,\n type ResizableHandleProps as Props,\n type ResizableHandleEvents as Events,\n resizableHandleProps,\n resizableHandleEvents,\n} from '@prosekit/web/resizable'\nimport type { Component } from 'solid-js'\n\nimport type { PropsWithElement } from '../../types.ts'\nimport { createComponent } from '../create-component.ts'\nimport type { CreateProps } from '../create-props.ts'\n\n/**\n * Props for the {@link ResizableHandle} component.\n */\nexport interface ResizableHandleProps extends Partial<CreateProps<Props, Events>> {}\n\nexport const ResizableHandle: Component<PropsWithElement<\n ResizableHandleProps,\n ResizableHandleElement\n>> = createComponent<\n ResizableHandleProps,\n ResizableHandleElement\n>(\n 'prosekit-resizable-handle', \n Object.keys(resizableHandleProps),\n Object.keys(resizableHandleEvents),\n)\n","import { \n type ResizableRootElement,\n type ResizableRootProps as Props,\n type ResizableRootEvents as Events,\n resizableRootProps,\n resizableRootEvents,\n} from '@prosekit/web/resizable'\nimport type { Component } from 'solid-js'\n\nimport type { PropsWithElement } from '../../types.ts'\nimport { createComponent } from '../create-component.ts'\nimport type { CreateProps } from '../create-props.ts'\n\n/**\n * Props for the {@link ResizableRoot} component.\n */\nexport interface ResizableRootProps extends Partial<CreateProps<Props, Events>> {}\n\nexport const ResizableRoot: Component<PropsWithElement<\n ResizableRootProps,\n ResizableRootElement\n>> = createComponent<\n ResizableRootProps,\n ResizableRootElement\n>(\n 'prosekit-resizable-root', \n Object.keys(resizableRootProps),\n Object.keys(resizableRootEvents),\n)\n"],"mappings":";;;AAkBA,MAAa,kBAGR,gBAIH,6BACA,OAAO,KAAK,qBAAqB,EACjC,OAAO,KAAK,sBAAsB,CACnC;;;ACVD,MAAa,gBAGR,gBAIH,2BACA,OAAO,KAAK,mBAAmB,EAC/B,OAAO,KAAK,oBAAoB,CACjC"}
1
+ {"version":3,"file":"prosekit-solid-resizable.js","names":[],"sources":["../src/components/resizable/resizable-root.gen.ts","../src/components/resizable/resizable-handle.gen.ts"],"sourcesContent":["/**\n * This file is auto-generated by the \"@aria-ui/cli\" tool. Do not edit this file directly.\n */\n\nimport { registerResizableRootElement, type ResizableRootElement, type ResizableRootEvents, type ResizableRootProps as ResizableRootElementProps } from '@prosekit/web/resizable';\nimport { createEffect, createSignal, mergeProps, splitProps } from 'solid-js';\nimport type { Component, JSX } from 'solid-js';\nimport h from 'solid-js/h';\n\n/**\n * Props for the {@link ResizableRoot} Solid component.\n *\n * @public\n */\nexport interface ResizableRootProps extends JSX.HTMLAttributes<ResizableRootElement> {\n /**\n * The width of the resizable element.\n *\n * @default null\n */\n width?: ResizableRootElementProps['width'];\n /**\n * The height of the resizable element.\n *\n * @default null\n */\n height?: ResizableRootElementProps['height'];\n /**\n * The aspect ratio of the resizable element.\n *\n * @default null\n */\n aspectRatio?: ResizableRootElementProps['aspectRatio'];\n /** Emitted when a resize operation starts. */\n onResizeStart?: (event: ResizableRootEvents['resizeStart']) => void;\n /** Emitted when a resize operation ends. */\n onResizeEnd?: (event: ResizableRootEvents['resizeEnd']) => void;\n}\n\n/**\n * A Solid component that renders an `prosekit-resizable-root` custom element.\n *\n * @public\n */\nexport const ResizableRoot: Component<ResizableRootProps> = (props): any => {\n registerResizableRootElement();\n\n const [getElement, setElement] = createSignal<ResizableRootElement | null>(null);\n const handlers: Array<((event: any) => void) | undefined> = [];\n\n const [elementProps, eventHandlers, restProps] = splitProps(props, ['aspectRatio', 'height', 'width'], ['onResizeEnd', 'onResizeStart']);\n\n createEffect(() => {\n const element = getElement();\n if (!element) return;\n\n Object.assign(element, { aspectRatio: elementProps.aspectRatio, height: elementProps.height, width: elementProps.width });\n\n handlers.length = 0;\n handlers.push(eventHandlers.onResizeEnd);\n handlers.push(eventHandlers.onResizeStart);\n });\n\n createEffect(() => {\n const element = getElement();\n if (!element) return;\n\n const ac = new AbortController();\n for (const [index, eventName] of ['resizeEnd', 'resizeStart'].entries()) {\n element.addEventListener(\n eventName,\n (event) => {\n handlers[index]?.(event);\n },\n { signal: ac.signal },\n );\n }\n return () => ac.abort();\n });\n\n return () =>\n h(\n 'prosekit-resizable-root',\n mergeProps(restProps, {\n ref: (el: ResizableRootElement | null) => {\n setElement(el);\n },\n }),\n );\n};\n\nexport type { ResizableRootEvents };\n","/**\n * This file is auto-generated by the \"@aria-ui/cli\" tool. Do not edit this file directly.\n */\n\nimport { registerResizableHandleElement, type ResizableHandleElement, type ResizableHandleProps as ResizableHandleElementProps } from '@prosekit/web/resizable';\nimport { createEffect, createSignal, mergeProps, splitProps } from 'solid-js';\nimport type { Component, JSX } from 'solid-js';\nimport h from 'solid-js/h';\n\n/**\n * Props for the {@link ResizableHandle} Solid component.\n *\n * @public\n */\nexport interface ResizableHandleProps extends JSX.HTMLAttributes<ResizableHandleElement> {\n /**\n * The position of the handle.\n *\n * @default \"bottom-right\"\n */\n position?: ResizableHandleElementProps['position'];\n}\n\n/**\n * A Solid component that renders an `prosekit-resizable-handle` custom element.\n *\n * @public\n */\nexport const ResizableHandle: Component<ResizableHandleProps> = (props): any => {\n registerResizableHandleElement();\n\n const [getElement, setElement] = createSignal<ResizableHandleElement | null>(null);\n\n const [elementProps, restProps] = splitProps(props, ['position']);\n\n createEffect(() => {\n const element = getElement();\n if (!element) return;\n\n Object.assign(element, { position: elementProps.position });\n });\n\n return () =>\n h(\n 'prosekit-resizable-handle',\n mergeProps(restProps, {\n ref: (el: ResizableHandleElement | null) => {\n setElement(el);\n },\n }),\n );\n};\n"],"mappings":";;;;;;;;;;;;AA4CA,MAAa,iBAAgD,UAAe;AAC1E,+BAA8B;CAE9B,MAAM,CAAC,YAAY,cAAc,aAA0C,KAAK;CAChF,MAAM,WAAsD,EAAE;CAE9D,MAAM,CAAC,cAAc,eAAe,aAAa,WAAW,OAAO;EAAC;EAAe;EAAU;EAAQ,EAAE,CAAC,eAAe,gBAAgB,CAAC;AAExI,oBAAmB;EACjB,MAAM,UAAU,YAAY;AAC5B,MAAI,CAAC,QAAS;AAEd,SAAO,OAAO,SAAS;GAAE,aAAa,aAAa;GAAa,QAAQ,aAAa;GAAQ,OAAO,aAAa;GAAO,CAAC;AAEzH,WAAS,SAAS;AAClB,WAAS,KAAK,cAAc,YAAY;AACxC,WAAS,KAAK,cAAc,cAAc;GAC1C;AAEF,oBAAmB;EACjB,MAAM,UAAU,YAAY;AAC5B,MAAI,CAAC,QAAS;EAEd,MAAM,KAAK,IAAI,iBAAiB;AAChC,OAAK,MAAM,CAAC,OAAO,cAAc,CAAC,aAAa,cAAc,CAAC,SAAS,CACrE,SAAQ,iBACN,YACC,UAAU;AACT,YAAS,SAAS,MAAM;KAE1B,EAAE,QAAQ,GAAG,QAAQ,CACtB;AAEH,eAAa,GAAG,OAAO;GACvB;AAEF,cACE,EACE,2BACA,WAAW,WAAW,EACpB,MAAM,OAAoC;AACxC,aAAW,GAAG;IAEjB,CAAC,CACH;;;;;;;;;;;;AC5DL,MAAa,mBAAoD,UAAe;AAC9E,iCAAgC;CAEhC,MAAM,CAAC,YAAY,cAAc,aAA4C,KAAK;CAElF,MAAM,CAAC,cAAc,aAAa,WAAW,OAAO,CAAC,WAAW,CAAC;AAEjE,oBAAmB;EACjB,MAAM,UAAU,YAAY;AAC5B,MAAI,CAAC,QAAS;AAEd,SAAO,OAAO,SAAS,EAAE,UAAU,aAAa,UAAU,CAAC;GAC3D;AAEF,cACE,EACE,6BACA,WAAW,WAAW,EACpB,MAAM,OAAsC;AAC1C,aAAW,GAAG;IAEjB,CAAC,CACH"}