dialkit 1.0.0 → 1.1.0
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/README.md +123 -2
- package/dist/index.cjs +42 -39
- package/dist/index.cjs.map +1 -1
- package/dist/index.d.cts +7 -5
- package/dist/index.d.ts +7 -5
- package/dist/index.js +42 -39
- package/dist/index.js.map +1 -1
- package/dist/solid/index.cjs +97 -54
- package/dist/solid/index.cjs.map +1 -1
- package/dist/solid/index.d.cts +4 -1
- package/dist/solid/index.d.ts +4 -1
- package/dist/solid/index.js +96 -53
- package/dist/solid/index.js.map +1 -1
- package/dist/store/index.cjs +450 -0
- package/dist/store/index.cjs.map +1 -0
- package/dist/store/index.d.cts +124 -0
- package/dist/store/index.d.ts +124 -0
- package/dist/store/index.js +425 -0
- package/dist/store/index.js.map +1 -0
- package/dist/styles.css +31 -0
- package/dist/svelte/Portal.svelte +30 -0
- package/dist/svelte/Portal.svelte.d.ts +9 -0
- package/dist/svelte/Portal.svelte.d.ts.map +1 -0
- package/dist/svelte/components/ButtonGroup.svelte +16 -0
- package/dist/svelte/components/ButtonGroup.svelte.d.ts +11 -0
- package/dist/svelte/components/ButtonGroup.svelte.d.ts.map +1 -0
- package/dist/svelte/components/ColorControl.svelte +81 -0
- package/dist/svelte/components/ColorControl.svelte.d.ts +9 -0
- package/dist/svelte/components/ColorControl.svelte.d.ts.map +1 -0
- package/dist/svelte/components/ControlRenderer.svelte +84 -0
- package/dist/svelte/components/ControlRenderer.svelte.d.ts +11 -0
- package/dist/svelte/components/ControlRenderer.svelte.d.ts.map +1 -0
- package/dist/svelte/components/DialRoot.svelte +65 -0
- package/dist/svelte/components/DialRoot.svelte.d.ts +11 -0
- package/dist/svelte/components/DialRoot.svelte.d.ts.map +1 -0
- package/dist/svelte/components/EasingVisualization.svelte +50 -0
- package/dist/svelte/components/EasingVisualization.svelte.d.ts +10 -0
- package/dist/svelte/components/EasingVisualization.svelte.d.ts.map +1 -0
- package/dist/svelte/components/Folder.svelte +204 -0
- package/dist/svelte/components/Folder.svelte.d.ts +14 -0
- package/dist/svelte/components/Folder.svelte.d.ts.map +1 -0
- package/dist/svelte/components/Panel.svelte +144 -0
- package/dist/svelte/components/Panel.svelte.d.ts +10 -0
- package/dist/svelte/components/Panel.svelte.d.ts.map +1 -0
- package/dist/svelte/components/PresetManager.svelte +156 -0
- package/dist/svelte/components/PresetManager.svelte.d.ts +10 -0
- package/dist/svelte/components/PresetManager.svelte.d.ts.map +1 -0
- package/dist/svelte/components/SegmentedControl.svelte +106 -0
- package/dist/svelte/components/SegmentedControl.svelte.d.ts +13 -0
- package/dist/svelte/components/SegmentedControl.svelte.d.ts.map +1 -0
- package/dist/svelte/components/SelectControl.svelte +151 -0
- package/dist/svelte/components/SelectControl.svelte.d.ts +14 -0
- package/dist/svelte/components/SelectControl.svelte.d.ts.map +1 -0
- package/dist/svelte/components/Slider.svelte +345 -0
- package/dist/svelte/components/Slider.svelte.d.ts +13 -0
- package/dist/svelte/components/Slider.svelte.d.ts.map +1 -0
- package/dist/svelte/components/SpringControl.svelte +124 -0
- package/dist/svelte/components/SpringControl.svelte.d.ts +12 -0
- package/dist/svelte/components/SpringControl.svelte.d.ts.map +1 -0
- package/dist/svelte/components/SpringVisualization.svelte +115 -0
- package/dist/svelte/components/SpringVisualization.svelte.d.ts +9 -0
- package/dist/svelte/components/SpringVisualization.svelte.d.ts.map +1 -0
- package/dist/svelte/components/TextControl.svelte +19 -0
- package/dist/svelte/components/TextControl.svelte.d.ts +10 -0
- package/dist/svelte/components/TextControl.svelte.d.ts.map +1 -0
- package/dist/svelte/components/Toggle.svelte +21 -0
- package/dist/svelte/components/Toggle.svelte.d.ts +9 -0
- package/dist/svelte/components/Toggle.svelte.d.ts.map +1 -0
- package/dist/svelte/components/TransitionControl.svelte +200 -0
- package/dist/svelte/components/TransitionControl.svelte.d.ts +12 -0
- package/dist/svelte/components/TransitionControl.svelte.d.ts.map +1 -0
- package/dist/svelte/components/transitions.d.ts +6 -0
- package/dist/svelte/components/transitions.d.ts.map +1 -0
- package/dist/svelte/components/transitions.js +14 -0
- package/dist/svelte/createDialKit.svelte.d.ts +7 -0
- package/dist/svelte/createDialKit.svelte.d.ts.map +1 -0
- package/dist/svelte/createDialKit.svelte.js +82 -0
- package/dist/svelte/index.d.ts +19 -0
- package/dist/svelte/index.d.ts.map +1 -0
- package/dist/svelte/index.js +19 -0
- package/dist/svelte/shims.d.ts +9 -0
- package/dist/svelte/theme-css.d.ts +2 -0
- package/dist/svelte/theme-css.d.ts.map +1 -0
- package/dist/svelte/theme-css.js +1097 -0
- package/package.json +29 -5
package/README.md
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
# dialkit
|
|
2
2
|
|
|
3
|
-
Real-time parameter tweaking for React
|
|
3
|
+
Real-time parameter tweaking for React, Solid, and Svelte.
|
|
4
4
|
|
|
5
5
|
## Quick Start
|
|
6
6
|
|
|
@@ -256,8 +256,36 @@ const values = useDialKit('Controls', {
|
|
|
256
256
|
|------|------|---------|
|
|
257
257
|
| `position` | `'top-right' \| 'top-left' \| 'bottom-right' \| 'bottom-left'` | `'top-right'` |
|
|
258
258
|
| `defaultOpen` | `boolean` | `true` |
|
|
259
|
+
| `mode` | `'popover' \| 'inline'` | `'popover'` |
|
|
259
260
|
|
|
260
|
-
Mount once at your app root.
|
|
261
|
+
Mount once at your app root. In the default `popover` mode, the panel renders via a portal on `document.body`. It collapses to a small icon button and expands to 280px wide on click.
|
|
262
|
+
|
|
263
|
+
### Inline mode
|
|
264
|
+
|
|
265
|
+
Use `mode="inline"` to render DialKit directly in your layout instead of as a floating popover. The panel fills its container and scrolls internally, which is useful for embedding in a sidebar or resizable panel. Inline mode works across all frameworks:
|
|
266
|
+
|
|
267
|
+
**React:**
|
|
268
|
+
```tsx
|
|
269
|
+
<aside style={{ width: 300, height: '100vh', overflow: 'hidden' }}>
|
|
270
|
+
<DialRoot mode="inline" />
|
|
271
|
+
</aside>
|
|
272
|
+
```
|
|
273
|
+
|
|
274
|
+
**Solid:**
|
|
275
|
+
```tsx
|
|
276
|
+
<aside style={{ width: '300px', height: '100vh', overflow: 'hidden' }}>
|
|
277
|
+
<DialRoot mode="inline" />
|
|
278
|
+
</aside>
|
|
279
|
+
```
|
|
280
|
+
|
|
281
|
+
**Svelte:**
|
|
282
|
+
```svelte
|
|
283
|
+
<aside style:width="300px" style:height="100vh" style:overflow="hidden">
|
|
284
|
+
<DialRoot mode="inline" />
|
|
285
|
+
</aside>
|
|
286
|
+
```
|
|
287
|
+
|
|
288
|
+
In inline mode, the `position` prop is ignored and the collapse-to-icon behavior is disabled.
|
|
261
289
|
|
|
262
290
|
---
|
|
263
291
|
|
|
@@ -328,6 +356,99 @@ function PhotoStack() {
|
|
|
328
356
|
|
|
329
357
|
---
|
|
330
358
|
|
|
359
|
+
## Solid
|
|
360
|
+
|
|
361
|
+
DialKit also works with Solid. Import from `dialkit/solid` instead of `dialkit` — the API mirrors the React version, with `createDialKit` replacing `useDialKit` and `DialRoot` as a Solid component.
|
|
362
|
+
|
|
363
|
+
```bash
|
|
364
|
+
npm install dialkit solid-js
|
|
365
|
+
```
|
|
366
|
+
|
|
367
|
+
```tsx
|
|
368
|
+
// App.tsx
|
|
369
|
+
import { DialRoot } from 'dialkit/solid';
|
|
370
|
+
import 'dialkit/styles.css';
|
|
371
|
+
|
|
372
|
+
export default function App() {
|
|
373
|
+
return (
|
|
374
|
+
<>
|
|
375
|
+
<MyComponent />
|
|
376
|
+
<DialRoot />
|
|
377
|
+
</>
|
|
378
|
+
);
|
|
379
|
+
}
|
|
380
|
+
```
|
|
381
|
+
|
|
382
|
+
```tsx
|
|
383
|
+
// component.tsx
|
|
384
|
+
import { createDialKit } from 'dialkit/solid';
|
|
385
|
+
|
|
386
|
+
function Card() {
|
|
387
|
+
const params = createDialKit('Card', {
|
|
388
|
+
blur: [24, 0, 100],
|
|
389
|
+
scale: 1.2,
|
|
390
|
+
color: '#ff5500',
|
|
391
|
+
visible: true,
|
|
392
|
+
});
|
|
393
|
+
|
|
394
|
+
return (
|
|
395
|
+
<div style={{
|
|
396
|
+
filter: `blur(${params().blur}px)`,
|
|
397
|
+
transform: `scale(${params().scale})`,
|
|
398
|
+
color: params().color,
|
|
399
|
+
opacity: params().visible ? 1 : 0,
|
|
400
|
+
}}>
|
|
401
|
+
...
|
|
402
|
+
</div>
|
|
403
|
+
);
|
|
404
|
+
}
|
|
405
|
+
```
|
|
406
|
+
|
|
407
|
+
`createDialKit` returns an accessor — call `params()` to read the current values. All control types, config shapes, and panel features (presets, copy, folders) work identically to the React version.
|
|
408
|
+
|
|
409
|
+
---
|
|
410
|
+
|
|
411
|
+
## Svelte
|
|
412
|
+
|
|
413
|
+
DialKit works with Svelte 5 (≥5.8.0). Import from `dialkit/svelte` — no extra dependencies needed.
|
|
414
|
+
|
|
415
|
+
```bash
|
|
416
|
+
npm install dialkit
|
|
417
|
+
```
|
|
418
|
+
|
|
419
|
+
```svelte
|
|
420
|
+
<!-- +layout.svelte -->
|
|
421
|
+
<script>
|
|
422
|
+
import { DialRoot } from 'dialkit/svelte';
|
|
423
|
+
let { children } = $props();
|
|
424
|
+
</script>
|
|
425
|
+
|
|
426
|
+
{@render children()}
|
|
427
|
+
<DialRoot />
|
|
428
|
+
```
|
|
429
|
+
|
|
430
|
+
```svelte
|
|
431
|
+
<!-- Card.svelte -->
|
|
432
|
+
<script>
|
|
433
|
+
import { createDialKit } from 'dialkit/svelte';
|
|
434
|
+
|
|
435
|
+
const params = createDialKit('Card', {
|
|
436
|
+
blur: [24, 0, 100],
|
|
437
|
+
scale: 1.2,
|
|
438
|
+
color: '#ff5500',
|
|
439
|
+
visible: true
|
|
440
|
+
});
|
|
441
|
+
</script>
|
|
442
|
+
|
|
443
|
+
<div style:filter={`blur(${params.blur}px)`} style:color={params.color}>
|
|
444
|
+
...
|
|
445
|
+
</div>
|
|
446
|
+
```
|
|
447
|
+
|
|
448
|
+
`createDialKit` returns a reactive object — access values directly (e.g. `params.blur`). Styles are injected automatically by `DialRoot` (no CSS import needed). Cleanup is automatic when the component unmounts. All control types, presets, folders, and transitions match the React/Solid entries.
|
|
449
|
+
|
|
450
|
+
---
|
|
451
|
+
|
|
331
452
|
## Types
|
|
332
453
|
|
|
333
454
|
All config and value types are exported:
|
package/dist/index.cjs
CHANGED
|
@@ -561,7 +561,7 @@ var import_react16 = require("motion/react");
|
|
|
561
561
|
var import_react2 = require("react");
|
|
562
562
|
var import_react3 = require("motion/react");
|
|
563
563
|
var import_jsx_runtime = require("react/jsx-runtime");
|
|
564
|
-
function Folder({ title, children, defaultOpen = true, isRoot = false, onOpenChange, toolbar }) {
|
|
564
|
+
function Folder({ title, children, defaultOpen = true, isRoot = false, inline = false, onOpenChange, toolbar }) {
|
|
565
565
|
const [isOpen, setIsOpen] = (0, import_react2.useState)(defaultOpen);
|
|
566
566
|
const [isCollapsed, setIsCollapsed] = (0, import_react2.useState)(!defaultOpen);
|
|
567
567
|
const contentRef = (0, import_react2.useRef)(null);
|
|
@@ -579,6 +579,7 @@ function Folder({ title, children, defaultOpen = true, isRoot = false, onOpenCha
|
|
|
579
579
|
return () => ro.disconnect();
|
|
580
580
|
}, [isOpen]);
|
|
581
581
|
const handleToggle = () => {
|
|
582
|
+
if (inline && isRoot) return;
|
|
582
583
|
const next = !isOpen;
|
|
583
584
|
setIsOpen(next);
|
|
584
585
|
if (next) {
|
|
@@ -592,40 +593,35 @@ function Folder({ title, children, defaultOpen = true, isRoot = false, onOpenCha
|
|
|
592
593
|
/* @__PURE__ */ (0, import_jsx_runtime.jsxs)("div", { className: `dialkit-folder-header ${isRoot ? "dialkit-panel-header" : ""}`, onClick: handleToggle, children: [
|
|
593
594
|
/* @__PURE__ */ (0, import_jsx_runtime.jsxs)("div", { className: "dialkit-folder-header-top", children: [
|
|
594
595
|
isRoot ? isOpen && /* @__PURE__ */ (0, import_jsx_runtime.jsx)("div", { className: "dialkit-folder-title-row", children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)("span", { className: "dialkit-folder-title dialkit-folder-title-root", children: title }) }) : /* @__PURE__ */ (0, import_jsx_runtime.jsx)("div", { className: "dialkit-folder-title-row", children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)("span", { className: "dialkit-folder-title", children: title }) }),
|
|
595
|
-
isRoot
|
|
596
|
-
|
|
597
|
-
|
|
598
|
-
"
|
|
599
|
-
|
|
600
|
-
|
|
601
|
-
|
|
602
|
-
fill: "
|
|
603
|
-
|
|
604
|
-
|
|
605
|
-
|
|
606
|
-
|
|
607
|
-
|
|
608
|
-
|
|
609
|
-
|
|
610
|
-
|
|
611
|
-
|
|
612
|
-
|
|
613
|
-
|
|
614
|
-
|
|
615
|
-
|
|
616
|
-
|
|
617
|
-
|
|
618
|
-
|
|
619
|
-
|
|
620
|
-
|
|
621
|
-
|
|
622
|
-
|
|
623
|
-
|
|
624
|
-
animate: { rotate: isOpen ? 0 : 180 },
|
|
625
|
-
transition: { type: "spring", visualDuration: 0.35, bounce: 0.15 },
|
|
626
|
-
children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)("path", { d: "M6 9.5L12 15.5L18 9.5" })
|
|
627
|
-
}
|
|
628
|
-
)
|
|
596
|
+
isRoot && !inline && /* @__PURE__ */ (0, import_jsx_runtime.jsxs)(
|
|
597
|
+
"svg",
|
|
598
|
+
{
|
|
599
|
+
className: "dialkit-panel-icon",
|
|
600
|
+
viewBox: "0 0 16 16",
|
|
601
|
+
fill: "none",
|
|
602
|
+
children: [
|
|
603
|
+
/* @__PURE__ */ (0, import_jsx_runtime.jsx)("path", { opacity: "0.5", d: "M6.84766 11.75C6.78583 11.9899 6.75 12.2408 6.75 12.5C6.75 12.7592 6.78583 13.0101 6.84766 13.25H2C1.58579 13.25 1.25 12.9142 1.25 12.5C1.25 12.0858 1.58579 11.75 2 11.75H6.84766ZM14 11.75C14.4142 11.75 14.75 12.0858 14.75 12.5C14.75 12.9142 14.4142 13.25 14 13.25H12.6523C12.7142 13.0101 12.75 12.7592 12.75 12.5C12.75 12.2408 12.7142 11.9899 12.6523 11.75H14ZM3.09766 7.25C3.03583 7.48994 3 7.74075 3 8C3 8.25925 3.03583 8.51006 3.09766 8.75H2C1.58579 8.75 1.25 8.41421 1.25 8C1.25 7.58579 1.58579 7.25 2 7.25H3.09766ZM14 7.25C14.4142 7.25 14.75 7.58579 14.75 8C14.75 8.41421 14.4142 8.75 14 8.75H8.90234C8.96417 8.51006 9 8.25925 9 8C9 7.74075 8.96417 7.48994 8.90234 7.25H14ZM7.59766 2.75C7.53583 2.98994 7.5 3.24075 7.5 3.5C7.5 3.75925 7.53583 4.01006 7.59766 4.25H2C1.58579 4.25 1.25 3.91421 1.25 3.5C1.25 3.08579 1.58579 2.75 2 2.75H7.59766ZM14 2.75C14.4142 2.75 14.75 3.08579 14.75 3.5C14.75 3.91421 14.4142 4.25 14 4.25H13.4023C13.4642 4.01006 13.5 3.75925 13.5 3.5C13.5 3.24075 13.4642 2.98994 13.4023 2.75H14Z", fill: "currentColor" }),
|
|
604
|
+
/* @__PURE__ */ (0, import_jsx_runtime.jsx)("circle", { cx: "6", cy: "8", r: "0.998596", fill: "currentColor", stroke: "currentColor", strokeWidth: "1.25" }),
|
|
605
|
+
/* @__PURE__ */ (0, import_jsx_runtime.jsx)("circle", { cx: "10.4999", cy: "3.5", r: "0.998657", fill: "currentColor", stroke: "currentColor", strokeWidth: "1.25" }),
|
|
606
|
+
/* @__PURE__ */ (0, import_jsx_runtime.jsx)("circle", { cx: "9.75015", cy: "12.5", r: "0.997986", fill: "currentColor", stroke: "currentColor", strokeWidth: "1.25" })
|
|
607
|
+
]
|
|
608
|
+
}
|
|
609
|
+
),
|
|
610
|
+
!isRoot && /* @__PURE__ */ (0, import_jsx_runtime.jsx)(
|
|
611
|
+
import_react3.motion.svg,
|
|
612
|
+
{
|
|
613
|
+
className: "dialkit-folder-icon",
|
|
614
|
+
viewBox: "0 0 24 24",
|
|
615
|
+
fill: "none",
|
|
616
|
+
stroke: "currentColor",
|
|
617
|
+
strokeWidth: "2.5",
|
|
618
|
+
strokeLinecap: "round",
|
|
619
|
+
strokeLinejoin: "round",
|
|
620
|
+
initial: false,
|
|
621
|
+
animate: { rotate: isOpen ? 0 : 180 },
|
|
622
|
+
transition: { type: "spring", visualDuration: 0.35, bounce: 0.15 },
|
|
623
|
+
children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)("path", { d: "M6 9.5L12 15.5L18 9.5" })
|
|
624
|
+
}
|
|
629
625
|
)
|
|
630
626
|
] }),
|
|
631
627
|
isRoot && toolbar && isOpen && /* @__PURE__ */ (0, import_jsx_runtime.jsx)("div", { className: "dialkit-panel-toolbar", onClick: (e) => e.stopPropagation(), children: toolbar })
|
|
@@ -644,6 +640,9 @@ function Folder({ title, children, defaultOpen = true, isRoot = false, onOpenCha
|
|
|
644
640
|
) })
|
|
645
641
|
] });
|
|
646
642
|
if (isRoot) {
|
|
643
|
+
if (inline) {
|
|
644
|
+
return /* @__PURE__ */ (0, import_jsx_runtime.jsx)("div", { className: "dialkit-panel-inner dialkit-panel-inline", children: folderContent });
|
|
645
|
+
}
|
|
647
646
|
const panelStyle = isOpen ? { width: 280, height: contentHeight !== void 0 ? contentHeight + 24 : "auto", borderRadius: 14, boxShadow: "0 8px 32px rgba(0, 0, 0, 0.5)", cursor: void 0 } : { width: 42, height: 42, borderRadius: 21, boxShadow: "0 4px 16px rgba(0, 0, 0, 0.25)", overflow: "hidden", cursor: "pointer" };
|
|
648
647
|
return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(
|
|
649
648
|
import_react3.motion.div,
|
|
@@ -1838,7 +1837,7 @@ function PresetManager({ panelId, presets, activePresetId, onAdd }) {
|
|
|
1838
1837
|
|
|
1839
1838
|
// src/components/Panel.tsx
|
|
1840
1839
|
var import_jsx_runtime13 = require("react/jsx-runtime");
|
|
1841
|
-
function Panel({ panel, defaultOpen = true }) {
|
|
1840
|
+
function Panel({ panel, defaultOpen = true, inline = false }) {
|
|
1842
1841
|
const [copied, setCopied] = (0, import_react15.useState)(false);
|
|
1843
1842
|
const [isPanelOpen, setIsPanelOpen] = (0, import_react15.useState)(defaultOpen);
|
|
1844
1843
|
const values = (0, import_react15.useSyncExternalStore)(
|
|
@@ -2043,14 +2042,15 @@ Apply these values as the new defaults in the useDialKit call.`;
|
|
|
2043
2042
|
}
|
|
2044
2043
|
)
|
|
2045
2044
|
] });
|
|
2046
|
-
return /* @__PURE__ */ (0, import_jsx_runtime13.jsx)("div", { className: "dialkit-panel-wrapper", children: /* @__PURE__ */ (0, import_jsx_runtime13.jsx)(Folder, { title: panel.name, defaultOpen, isRoot: true, onOpenChange: setIsPanelOpen, toolbar, children: renderControls() }) });
|
|
2045
|
+
return /* @__PURE__ */ (0, import_jsx_runtime13.jsx)("div", { className: "dialkit-panel-wrapper", children: /* @__PURE__ */ (0, import_jsx_runtime13.jsx)(Folder, { title: panel.name, defaultOpen, isRoot: true, inline, onOpenChange: setIsPanelOpen, toolbar, children: renderControls() }) });
|
|
2047
2046
|
}
|
|
2048
2047
|
|
|
2049
2048
|
// src/components/DialRoot.tsx
|
|
2050
2049
|
var import_jsx_runtime14 = require("react/jsx-runtime");
|
|
2051
|
-
function DialRoot({ position = "top-right", defaultOpen = true }) {
|
|
2050
|
+
function DialRoot({ position = "top-right", defaultOpen = true, mode = "popover" }) {
|
|
2052
2051
|
const [panels, setPanels] = (0, import_react17.useState)([]);
|
|
2053
2052
|
const [mounted, setMounted] = (0, import_react17.useState)(false);
|
|
2053
|
+
const inline = mode === "inline";
|
|
2054
2054
|
(0, import_react17.useEffect)(() => {
|
|
2055
2055
|
setMounted(true);
|
|
2056
2056
|
setPanels(DialStore.getPanels());
|
|
@@ -2065,7 +2065,10 @@ function DialRoot({ position = "top-right", defaultOpen = true }) {
|
|
|
2065
2065
|
if (panels.length === 0) {
|
|
2066
2066
|
return null;
|
|
2067
2067
|
}
|
|
2068
|
-
const content = /* @__PURE__ */ (0, import_jsx_runtime14.jsx)("div", { className: "dialkit-root", children: /* @__PURE__ */ (0, import_jsx_runtime14.jsx)("div", { className: "dialkit-panel", "data-position": position, children: panels.map((panel) => /* @__PURE__ */ (0, import_jsx_runtime14.jsx)(Panel, { panel, defaultOpen }, panel.id)) }) });
|
|
2068
|
+
const content = /* @__PURE__ */ (0, import_jsx_runtime14.jsx)("div", { className: "dialkit-root", "data-mode": mode, children: /* @__PURE__ */ (0, import_jsx_runtime14.jsx)("div", { className: "dialkit-panel", "data-position": inline ? void 0 : position, "data-mode": mode, children: panels.map((panel) => /* @__PURE__ */ (0, import_jsx_runtime14.jsx)(Panel, { panel, defaultOpen: inline || defaultOpen, inline }, panel.id)) }) });
|
|
2069
|
+
if (inline) {
|
|
2070
|
+
return content;
|
|
2071
|
+
}
|
|
2069
2072
|
return (0, import_react_dom3.createPortal)(content, document.body);
|
|
2070
2073
|
}
|
|
2071
2074
|
|