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.
Files changed (85) hide show
  1. package/README.md +123 -2
  2. package/dist/index.cjs +42 -39
  3. package/dist/index.cjs.map +1 -1
  4. package/dist/index.d.cts +7 -5
  5. package/dist/index.d.ts +7 -5
  6. package/dist/index.js +42 -39
  7. package/dist/index.js.map +1 -1
  8. package/dist/solid/index.cjs +97 -54
  9. package/dist/solid/index.cjs.map +1 -1
  10. package/dist/solid/index.d.cts +4 -1
  11. package/dist/solid/index.d.ts +4 -1
  12. package/dist/solid/index.js +96 -53
  13. package/dist/solid/index.js.map +1 -1
  14. package/dist/store/index.cjs +450 -0
  15. package/dist/store/index.cjs.map +1 -0
  16. package/dist/store/index.d.cts +124 -0
  17. package/dist/store/index.d.ts +124 -0
  18. package/dist/store/index.js +425 -0
  19. package/dist/store/index.js.map +1 -0
  20. package/dist/styles.css +31 -0
  21. package/dist/svelte/Portal.svelte +30 -0
  22. package/dist/svelte/Portal.svelte.d.ts +9 -0
  23. package/dist/svelte/Portal.svelte.d.ts.map +1 -0
  24. package/dist/svelte/components/ButtonGroup.svelte +16 -0
  25. package/dist/svelte/components/ButtonGroup.svelte.d.ts +11 -0
  26. package/dist/svelte/components/ButtonGroup.svelte.d.ts.map +1 -0
  27. package/dist/svelte/components/ColorControl.svelte +81 -0
  28. package/dist/svelte/components/ColorControl.svelte.d.ts +9 -0
  29. package/dist/svelte/components/ColorControl.svelte.d.ts.map +1 -0
  30. package/dist/svelte/components/ControlRenderer.svelte +84 -0
  31. package/dist/svelte/components/ControlRenderer.svelte.d.ts +11 -0
  32. package/dist/svelte/components/ControlRenderer.svelte.d.ts.map +1 -0
  33. package/dist/svelte/components/DialRoot.svelte +65 -0
  34. package/dist/svelte/components/DialRoot.svelte.d.ts +11 -0
  35. package/dist/svelte/components/DialRoot.svelte.d.ts.map +1 -0
  36. package/dist/svelte/components/EasingVisualization.svelte +50 -0
  37. package/dist/svelte/components/EasingVisualization.svelte.d.ts +10 -0
  38. package/dist/svelte/components/EasingVisualization.svelte.d.ts.map +1 -0
  39. package/dist/svelte/components/Folder.svelte +204 -0
  40. package/dist/svelte/components/Folder.svelte.d.ts +14 -0
  41. package/dist/svelte/components/Folder.svelte.d.ts.map +1 -0
  42. package/dist/svelte/components/Panel.svelte +144 -0
  43. package/dist/svelte/components/Panel.svelte.d.ts +10 -0
  44. package/dist/svelte/components/Panel.svelte.d.ts.map +1 -0
  45. package/dist/svelte/components/PresetManager.svelte +156 -0
  46. package/dist/svelte/components/PresetManager.svelte.d.ts +10 -0
  47. package/dist/svelte/components/PresetManager.svelte.d.ts.map +1 -0
  48. package/dist/svelte/components/SegmentedControl.svelte +106 -0
  49. package/dist/svelte/components/SegmentedControl.svelte.d.ts +13 -0
  50. package/dist/svelte/components/SegmentedControl.svelte.d.ts.map +1 -0
  51. package/dist/svelte/components/SelectControl.svelte +151 -0
  52. package/dist/svelte/components/SelectControl.svelte.d.ts +14 -0
  53. package/dist/svelte/components/SelectControl.svelte.d.ts.map +1 -0
  54. package/dist/svelte/components/Slider.svelte +345 -0
  55. package/dist/svelte/components/Slider.svelte.d.ts +13 -0
  56. package/dist/svelte/components/Slider.svelte.d.ts.map +1 -0
  57. package/dist/svelte/components/SpringControl.svelte +124 -0
  58. package/dist/svelte/components/SpringControl.svelte.d.ts +12 -0
  59. package/dist/svelte/components/SpringControl.svelte.d.ts.map +1 -0
  60. package/dist/svelte/components/SpringVisualization.svelte +115 -0
  61. package/dist/svelte/components/SpringVisualization.svelte.d.ts +9 -0
  62. package/dist/svelte/components/SpringVisualization.svelte.d.ts.map +1 -0
  63. package/dist/svelte/components/TextControl.svelte +19 -0
  64. package/dist/svelte/components/TextControl.svelte.d.ts +10 -0
  65. package/dist/svelte/components/TextControl.svelte.d.ts.map +1 -0
  66. package/dist/svelte/components/Toggle.svelte +21 -0
  67. package/dist/svelte/components/Toggle.svelte.d.ts +9 -0
  68. package/dist/svelte/components/Toggle.svelte.d.ts.map +1 -0
  69. package/dist/svelte/components/TransitionControl.svelte +200 -0
  70. package/dist/svelte/components/TransitionControl.svelte.d.ts +12 -0
  71. package/dist/svelte/components/TransitionControl.svelte.d.ts.map +1 -0
  72. package/dist/svelte/components/transitions.d.ts +6 -0
  73. package/dist/svelte/components/transitions.d.ts.map +1 -0
  74. package/dist/svelte/components/transitions.js +14 -0
  75. package/dist/svelte/createDialKit.svelte.d.ts +7 -0
  76. package/dist/svelte/createDialKit.svelte.d.ts.map +1 -0
  77. package/dist/svelte/createDialKit.svelte.js +82 -0
  78. package/dist/svelte/index.d.ts +19 -0
  79. package/dist/svelte/index.d.ts.map +1 -0
  80. package/dist/svelte/index.js +19 -0
  81. package/dist/svelte/shims.d.ts +9 -0
  82. package/dist/svelte/theme-css.d.ts +2 -0
  83. package/dist/svelte/theme-css.d.ts.map +1 -0
  84. package/dist/svelte/theme-css.js +1097 -0
  85. package/package.json +29 -5
@@ -572,7 +572,8 @@ var _tmpl$4 = /* @__PURE__ */ (0, import_web.template)(`<div class=dialkit-folde
572
572
  var _tmpl$5 = /* @__PURE__ */ (0, import_web.template)(`<div class=dialkit-folder-title-row><span class=dialkit-folder-title>`);
573
573
  var _tmpl$6 = /* @__PURE__ */ (0, import_web.template)(`<svg class=dialkit-panel-icon viewBox="0 0 16 16"fill=none><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></path><circle cx=6 cy=8 r=0.998596 fill=currentColor stroke=currentColor stroke-width=1.25></circle><circle cx=10.4999 cy=3.5 r=0.998657 fill=currentColor stroke=currentColor stroke-width=1.25></circle><circle cx=9.75015 cy=12.5 r=0.997986 fill=currentColor stroke=currentColor stroke-width=1.25>`);
574
574
  var _tmpl$7 = /* @__PURE__ */ (0, import_web.template)(`<svg class=dialkit-folder-icon viewBox="0 0 24 24"fill=none stroke=currentColor stroke-width=2.5 stroke-linecap=round stroke-linejoin=round><path d="M6 9.5L12 15.5L18 9.5">`);
575
- var _tmpl$8 = /* @__PURE__ */ (0, import_web.template)(`<div class=dialkit-panel-inner>`);
575
+ var _tmpl$8 = /* @__PURE__ */ (0, import_web.template)(`<div class="dialkit-panel-inner dialkit-panel-inline">`);
576
+ var _tmpl$9 = /* @__PURE__ */ (0, import_web.template)(`<div class=dialkit-panel-inner>`);
576
577
  function Folder(props) {
577
578
  const [isOpen, setIsOpen] = (0, import_solid_js2.createSignal)(props.defaultOpen ?? true);
578
579
  const [isCollapsed, setIsCollapsed] = (0, import_solid_js2.createSignal)(!(props.defaultOpen ?? true));
@@ -616,6 +617,7 @@ function Folder(props) {
616
617
  (0, import_solid_js2.onCleanup)(() => chevronAnim?.stop());
617
618
  });
618
619
  const handleToggle = () => {
620
+ if (props.inline && props.isRoot) return;
619
621
  const next = !isOpen();
620
622
  setIsOpen(next);
621
623
  if (next) {
@@ -690,8 +692,12 @@ function Folder(props) {
690
692
  })();
691
693
  })(), null);
692
694
  (0, import_web8.insert)(_el$3, (() => {
693
- var _c$2 = (0, import_web9.memo)(() => !!props.isRoot);
694
- return () => _c$2() ? _tmpl$6() : (() => {
695
+ var _c$2 = (0, import_web9.memo)(() => !!(props.isRoot && !props.inline));
696
+ return () => _c$2() && _tmpl$6();
697
+ })(), null);
698
+ (0, import_web8.insert)(_el$3, (() => {
699
+ var _c$3 = (0, import_web9.memo)(() => !!!props.isRoot);
700
+ return () => _c$3() && (() => {
695
701
  var _el$10 = _tmpl$7();
696
702
  var _ref$ = folderChevronRef;
697
703
  typeof _ref$ === "function" ? (0, import_web10.use)(_ref$, _el$10) : folderChevronRef = _el$10;
@@ -756,6 +762,13 @@ function Folder(props) {
756
762
  return _el$;
757
763
  })();
758
764
  if (props.isRoot) {
765
+ if (props.inline) {
766
+ return (() => {
767
+ var _el$11 = _tmpl$8();
768
+ (0, import_web8.insert)(_el$11, folderContent);
769
+ return _el$11;
770
+ })();
771
+ }
759
772
  let panelRef;
760
773
  let rootPanelAnim = null;
761
774
  let rootPanelInitialized = false;
@@ -812,8 +825,8 @@ function Folder(props) {
812
825
  panelTapAnim?.stop();
813
826
  });
814
827
  return (() => {
815
- var _el$11 = _tmpl$8();
816
- _el$11.addEventListener("pointerleave", () => {
828
+ var _el$12 = _tmpl$9();
829
+ _el$12.addEventListener("pointerleave", () => {
817
830
  if (isOpen()) return;
818
831
  panelTapAnim?.stop();
819
832
  panelTapAnim = (0, import_motion.animate)(panelRef, {
@@ -824,7 +837,7 @@ function Folder(props) {
824
837
  bounce: 0.3
825
838
  });
826
839
  });
827
- _el$11.addEventListener("pointercancel", () => {
840
+ _el$12.addEventListener("pointercancel", () => {
828
841
  if (isOpen()) return;
829
842
  panelTapAnim?.stop();
830
843
  panelTapAnim = (0, import_motion.animate)(panelRef, {
@@ -835,7 +848,7 @@ function Folder(props) {
835
848
  bounce: 0.3
836
849
  });
837
850
  });
838
- _el$11.$$pointerup = () => {
851
+ _el$12.$$pointerup = () => {
839
852
  if (isOpen()) return;
840
853
  panelTapAnim?.stop();
841
854
  panelTapAnim = (0, import_motion.animate)(panelRef, {
@@ -846,7 +859,7 @@ function Folder(props) {
846
859
  bounce: 0.3
847
860
  });
848
861
  };
849
- _el$11.$$pointerdown = () => {
862
+ _el$12.$$pointerdown = () => {
850
863
  if (isOpen()) return;
851
864
  document.activeElement?.blur?.();
852
865
  panelTapAnim?.stop();
@@ -859,10 +872,10 @@ function Folder(props) {
859
872
  });
860
873
  };
861
874
  var _ref$2 = panelRef;
862
- typeof _ref$2 === "function" ? (0, import_web10.use)(_ref$2, _el$11) : panelRef = _el$11;
863
- (0, import_web8.insert)(_el$11, folderContent);
864
- (0, import_web6.effect)(() => (0, import_web3.setAttribute)(_el$11, "data-collapsed", String(isCollapsed())));
865
- return _el$11;
875
+ typeof _ref$2 === "function" ? (0, import_web10.use)(_ref$2, _el$12) : panelRef = _el$12;
876
+ (0, import_web8.insert)(_el$12, folderContent);
877
+ (0, import_web6.effect)(() => (0, import_web3.setAttribute)(_el$12, "data-collapsed", String(isCollapsed())));
878
+ return _el$12;
866
879
  })();
867
880
  }
868
881
  return folderContent();
@@ -880,7 +893,7 @@ var import_web17 = require("solid-js/web");
880
893
  var import_web18 = require("solid-js/web");
881
894
  var import_solid_js3 = require("solid-js");
882
895
  var import_motion2 = require("motion");
883
- var _tmpl$9 = /* @__PURE__ */ (0, import_web11.template)(`<div class=dialkit-slider-hashmark>`);
896
+ var _tmpl$10 = /* @__PURE__ */ (0, import_web11.template)(`<div class=dialkit-slider-hashmark>`);
884
897
  var _tmpl$22 = /* @__PURE__ */ (0, import_web11.template)(`<div class=dialkit-slider-wrapper><div><div class=dialkit-slider-hashmarks></div><div class=dialkit-slider-fill style="transition:background 0.15s"></div><div class=dialkit-slider-handle style="transform:translateY(-50%) scaleX(0.25) scaleY(1);opacity:0;background:rgba(255, 255, 255, 0.9)"></div><span class=dialkit-slider-label>`);
885
898
  var _tmpl$32 = /* @__PURE__ */ (0, import_web11.template)(`<input type=text class=dialkit-slider-input>`);
886
899
  var _tmpl$42 = /* @__PURE__ */ (0, import_web11.template)(`<span>`);
@@ -1188,7 +1201,7 @@ function Slider(props) {
1188
1201
  }, (_, i) => {
1189
1202
  const pct = (i + 1) * step() / (max() - min()) * 100;
1190
1203
  return (() => {
1191
- var _el$ = _tmpl$9();
1204
+ var _el$ = _tmpl$10();
1192
1205
  (0, import_web18.setStyleProperty)(_el$, "left", `${pct}%`);
1193
1206
  return _el$;
1194
1207
  })();
@@ -1199,7 +1212,7 @@ function Slider(props) {
1199
1212
  }, (_, i) => {
1200
1213
  const pct = (i + 1) * 10;
1201
1214
  return (() => {
1202
- var _el$2 = _tmpl$9();
1215
+ var _el$2 = _tmpl$10();
1203
1216
  (0, import_web18.setStyleProperty)(_el$2, "left", `${pct}%`);
1204
1217
  return _el$2;
1205
1218
  })();
@@ -1294,7 +1307,7 @@ var import_web25 = require("solid-js/web");
1294
1307
  var import_web26 = require("solid-js/web");
1295
1308
  var import_solid_js4 = require("solid-js");
1296
1309
  var import_motion3 = require("motion");
1297
- var _tmpl$10 = /* @__PURE__ */ (0, import_web19.template)(`<div class=dialkit-segmented><div class=dialkit-segmented-pill style=left:0px;width:0px>`);
1310
+ var _tmpl$11 = /* @__PURE__ */ (0, import_web19.template)(`<div class=dialkit-segmented><div class=dialkit-segmented-pill style=left:0px;width:0px>`);
1298
1311
  var _tmpl$23 = /* @__PURE__ */ (0, import_web19.template)(`<button class=dialkit-segmented-button>`);
1299
1312
  function SegmentedControl(props) {
1300
1313
  let containerRef;
@@ -1364,7 +1377,7 @@ function SegmentedControl(props) {
1364
1377
  });
1365
1378
  });
1366
1379
  return (() => {
1367
- var _el$ = _tmpl$10(), _el$2 = _el$.firstChild;
1380
+ var _el$ = _tmpl$11(), _el$2 = _el$.firstChild;
1368
1381
  var _ref$ = containerRef;
1369
1382
  typeof _ref$ === "function" ? (0, import_web26.use)(_ref$, _el$) : containerRef = _el$;
1370
1383
  var _ref$2 = pillRef;
@@ -1392,10 +1405,10 @@ function SegmentedControl(props) {
1392
1405
  (0, import_web20.delegateEvents)(["click"]);
1393
1406
 
1394
1407
  // src/solid/components/Toggle.tsx
1395
- var _tmpl$11 = /* @__PURE__ */ (0, import_web27.template)(`<div class=dialkit-labeled-control><span class=dialkit-labeled-control-label>`);
1408
+ var _tmpl$12 = /* @__PURE__ */ (0, import_web27.template)(`<div class=dialkit-labeled-control><span class=dialkit-labeled-control-label>`);
1396
1409
  function Toggle(props) {
1397
1410
  return (() => {
1398
- var _el$ = _tmpl$11(), _el$2 = _el$.firstChild;
1411
+ var _el$ = _tmpl$12(), _el$2 = _el$.firstChild;
1399
1412
  (0, import_web30.insert)(_el$2, () => props.label);
1400
1413
  (0, import_web30.insert)(_el$, (0, import_web28.createComponent)(SegmentedControl, {
1401
1414
  options: [{
@@ -1426,7 +1439,7 @@ var import_web31 = require("solid-js/web");
1426
1439
  var import_web32 = require("solid-js/web");
1427
1440
  var import_web33 = require("solid-js/web");
1428
1441
  var import_web34 = require("solid-js/web");
1429
- var _tmpl$12 = /* @__PURE__ */ (0, import_web31.template)(`<svg><line y1=0 y2=140 stroke="rgba(255, 255, 255, 0.08)"stroke-width=1></svg>`, false, true, false);
1442
+ var _tmpl$13 = /* @__PURE__ */ (0, import_web31.template)(`<svg><line y1=0 y2=140 stroke="rgba(255, 255, 255, 0.08)"stroke-width=1></svg>`, false, true, false);
1430
1443
  var _tmpl$24 = /* @__PURE__ */ (0, import_web31.template)(`<svg><line x1=0 x2=256 stroke="rgba(255, 255, 255, 0.08)"stroke-width=1></svg>`, false, true, false);
1431
1444
  var _tmpl$33 = /* @__PURE__ */ (0, import_web31.template)(`<svg viewBox="0 0 256 140"class=dialkit-spring-viz><line x1=0 y1=70 x2=256 y2=70 stroke="rgba(255, 255, 255, 0.15)"stroke-width=1 stroke-dasharray=4,4></line><path fill=none stroke="rgba(255, 255, 255, 0.6)"stroke-width=2 stroke-linecap=round stroke-linejoin=round>`);
1432
1445
  function generateSpringCurve(stiffness, damping, mass, duration) {
@@ -1486,7 +1499,7 @@ function SpringVisualization(props) {
1486
1499
  const x = width / 4 * i;
1487
1500
  const y = height / 4 * i;
1488
1501
  lines.push((() => {
1489
- var _el$ = _tmpl$12();
1502
+ var _el$ = _tmpl$13();
1490
1503
  (0, import_web34.setAttribute)(_el$, "x1", x);
1491
1504
  (0, import_web34.setAttribute)(_el$, "x2", x);
1492
1505
  return _el$;
@@ -1508,7 +1521,7 @@ function SpringVisualization(props) {
1508
1521
  }
1509
1522
 
1510
1523
  // src/solid/components/SpringControl.tsx
1511
- var _tmpl$13 = /* @__PURE__ */ (0, import_web35.template)(`<div style=display:flex;flex-direction:column;gap:6px><div class=dialkit-labeled-control><span class=dialkit-labeled-control-label>Type`);
1524
+ var _tmpl$14 = /* @__PURE__ */ (0, import_web35.template)(`<div style=display:flex;flex-direction:column;gap:6px><div class=dialkit-labeled-control><span class=dialkit-labeled-control-label>Type`);
1512
1525
  function SpringControl(props) {
1513
1526
  const [mode, setMode] = (0, import_solid_js5.createSignal)(DialStore.getSpringMode(props.panelId, props.path));
1514
1527
  (0, import_solid_js5.onMount)(() => {
@@ -1578,7 +1591,7 @@ function SpringControl(props) {
1578
1591
  },
1579
1592
  defaultOpen: true,
1580
1593
  get children() {
1581
- var _el$ = _tmpl$13(), _el$2 = _el$.firstChild, _el$3 = _el$2.firstChild;
1594
+ var _el$ = _tmpl$14(), _el$2 = _el$.firstChild, _el$3 = _el$2.firstChild;
1582
1595
  (0, import_web37.insert)(_el$, (0, import_web38.createComponent)(SpringVisualization, {
1583
1596
  get spring() {
1584
1597
  return props.spring;
@@ -1662,11 +1675,11 @@ var import_web41 = require("solid-js/web");
1662
1675
  var import_web42 = require("solid-js/web");
1663
1676
  var import_web43 = require("solid-js/web");
1664
1677
  var import_solid_js6 = require("solid-js");
1665
- var _tmpl$14 = /* @__PURE__ */ (0, import_web39.template)(`<div class=dialkit-text-control><label class=dialkit-text-label></label><input type=text class=dialkit-text-input>`);
1678
+ var _tmpl$15 = /* @__PURE__ */ (0, import_web39.template)(`<div class=dialkit-text-control><label class=dialkit-text-label></label><input type=text class=dialkit-text-input>`);
1666
1679
  function TextControl(props) {
1667
1680
  const inputId = (0, import_solid_js6.createUniqueId)();
1668
1681
  return (() => {
1669
- var _el$ = _tmpl$14(), _el$2 = _el$.firstChild, _el$3 = _el$2.nextSibling;
1682
+ var _el$ = _tmpl$15(), _el$2 = _el$.firstChild, _el$3 = _el$2.nextSibling;
1670
1683
  (0, import_web43.setAttribute)(_el$2, "for", inputId);
1671
1684
  (0, import_web42.insert)(_el$2, () => props.label);
1672
1685
  _el$3.$$input = (e) => props.onChange(e.currentTarget.value);
@@ -1691,7 +1704,7 @@ var import_web52 = require("solid-js/web");
1691
1704
  var import_solid_js7 = require("solid-js");
1692
1705
  var import_web53 = require("solid-js/web");
1693
1706
  var import_motion4 = require("motion");
1694
- var _tmpl$15 = /* @__PURE__ */ (0, import_web44.template)(`<div class=dialkit-select-dropdown>`);
1707
+ var _tmpl$16 = /* @__PURE__ */ (0, import_web44.template)(`<div class=dialkit-select-dropdown>`);
1695
1708
  var _tmpl$25 = /* @__PURE__ */ (0, import_web44.template)(`<div class=dialkit-select-row><button class=dialkit-select-trigger><span class=dialkit-select-label></span><div class=dialkit-select-right><span class=dialkit-select-value></span><svg class=dialkit-select-chevron viewBox="0 0 24 24"fill=none stroke=currentColor stroke-width=2.5 stroke-linecap=round stroke-linejoin=round><path d="M6 9.5L12 15.5L18 9.5">`);
1696
1709
  var _tmpl$34 = /* @__PURE__ */ (0, import_web44.template)(`<button class=dialkit-select-option>`);
1697
1710
  function toTitleCase(s) {
@@ -1839,7 +1852,7 @@ function SelectControl(props) {
1839
1852
  return (0, import_web50.memo)(() => !!mounted())() && pos();
1840
1853
  },
1841
1854
  get children() {
1842
- var _el$7 = _tmpl$15();
1855
+ var _el$7 = _tmpl$16();
1843
1856
  (0, import_web52.use)((el) => {
1844
1857
  dropdownRef = el;
1845
1858
  const above = pos()?.above ?? false;
@@ -1892,7 +1905,7 @@ var import_web59 = require("solid-js/web");
1892
1905
  var import_web60 = require("solid-js/web");
1893
1906
  var import_web61 = require("solid-js/web");
1894
1907
  var import_solid_js8 = require("solid-js");
1895
- var _tmpl$16 = /* @__PURE__ */ (0, import_web54.template)(`<input type=text class=dialkit-color-hex-input autofocus>`);
1908
+ var _tmpl$17 = /* @__PURE__ */ (0, import_web54.template)(`<input type=text class=dialkit-color-hex-input autofocus>`);
1896
1909
  var _tmpl$26 = /* @__PURE__ */ (0, import_web54.template)(`<div class=dialkit-color-control><label class=dialkit-color-label></label><div class=dialkit-color-inputs><button class=dialkit-color-swatch title="Pick color"></button><input type=color class=dialkit-color-picker-native>`);
1897
1910
  var _tmpl$35 = /* @__PURE__ */ (0, import_web54.template)(`<span class=dialkit-color-hex>`);
1898
1911
  var HEX_COLOR_REGEX = /^#([0-9A-Fa-f]{3}|[0-9A-Fa-f]{6}|[0-9A-Fa-f]{8})$/;
@@ -1942,7 +1955,7 @@ function ColorControl(props) {
1942
1955
  })();
1943
1956
  },
1944
1957
  get children() {
1945
- var _el$4 = _tmpl$16();
1958
+ var _el$4 = _tmpl$17();
1946
1959
  _el$4.$$keydown = handleKeyDown;
1947
1960
  _el$4.addEventListener("blur", handleTextSubmit);
1948
1961
  _el$4.$$input = (e) => setEditValue(e.currentTarget.value);
@@ -1985,7 +1998,7 @@ var import_web70 = require("solid-js/web");
1985
1998
  var import_solid_js9 = require("solid-js");
1986
1999
  var import_web71 = require("solid-js/web");
1987
2000
  var import_motion5 = require("motion");
1988
- var _tmpl$17 = /* @__PURE__ */ (0, import_web62.template)(`<div class="dialkit-root dialkit-preset-dropdown"style=position:fixed><div class=dialkit-preset-item><span class=dialkit-preset-name>Version 1`);
2001
+ var _tmpl$18 = /* @__PURE__ */ (0, import_web62.template)(`<div class="dialkit-root dialkit-preset-dropdown"style=position:fixed><div class=dialkit-preset-item><span class=dialkit-preset-name>Version 1`);
1989
2002
  var _tmpl$27 = /* @__PURE__ */ (0, import_web62.template)(`<div class=dialkit-preset-manager><button class=dialkit-preset-trigger><span class=dialkit-preset-label></span><svg class=dialkit-select-chevron viewBox="0 0 24 24"fill=none stroke=currentColor stroke-width=2.5 stroke-linecap=round stroke-linejoin=round><path d="M6 9.5L12 15.5L18 9.5">`);
1990
2003
  var _tmpl$36 = /* @__PURE__ */ (0, import_web62.template)(`<div class=dialkit-preset-item><span class=dialkit-preset-name></span><button class=dialkit-preset-delete title="Delete preset"><svg viewBox="0 0 24 24"fill=none stroke=currentColor stroke-width=2 stroke-linecap=round stroke-linejoin=round><path d="M5 6.5L5.80734 18.2064C5.91582 19.7794 7.22348 21 8.80023 21H15.1998C16.7765 21 18.0842 19.7794 18.1927 18.2064L19 6.5"></path><path d="M10 11V16"></path><path d="M14 11V16"></path><path d="M3.5 6H20.5"></path><path d="M8.07092 5.74621C8.42348 3.89745 10.0485 2.5 12 2.5C13.9515 2.5 15.5765 3.89745 15.9291 5.74621">`);
1991
2004
  function PresetManager(props) {
@@ -2125,7 +2138,7 @@ function PresetManager(props) {
2125
2138
  return mounted();
2126
2139
  },
2127
2140
  get children() {
2128
- var _el$5 = _tmpl$17(), _el$6 = _el$5.firstChild;
2141
+ var _el$5 = _tmpl$18(), _el$6 = _el$5.firstChild;
2129
2142
  (0, import_web70.use)((el) => {
2130
2143
  dropdownRef = el;
2131
2144
  (0, import_motion5.animate)(el, {
@@ -2189,7 +2202,7 @@ function PresetManager(props) {
2189
2202
  (0, import_web63.delegateEvents)(["click"]);
2190
2203
 
2191
2204
  // src/solid/components/Panel.tsx
2192
- var _tmpl$18 = /* @__PURE__ */ (0, import_web72.template)(`<button class=dialkit-button>`);
2205
+ var _tmpl$19 = /* @__PURE__ */ (0, import_web72.template)(`<button class=dialkit-button>`);
2193
2206
  var _tmpl$28 = /* @__PURE__ */ (0, import_web72.template)(`<button class=dialkit-toolbar-add title="Add preset"><svg viewBox="0 0 24 24"fill=none stroke=currentColor stroke-width=2.5 stroke-linecap=round stroke-linejoin=round><path d="M4 6H20"></path><path d="M4 12H10"></path><path d="M15 15L21 15"></path><path d="M18 12V18"></path><path d="M4 18H10">`);
2194
2207
  var _tmpl$37 = /* @__PURE__ */ (0, import_web72.template)(`<button class=dialkit-toolbar-copy title="Copy parameters"><span class=dialkit-toolbar-copy-icon-wrap><span class=dialkit-toolbar-copy-icon style=opacity:1;transform:scale(1);filter:blur(0px)><svg viewBox="0 0 24 24"fill=none width=16 height=16><path d="M8 6C8 4.34315 9.34315 3 11 3H13C14.6569 3 16 4.34315 16 6V7H8V6Z"stroke=currentColor stroke-width=2 stroke-linejoin=round></path><path d="M19.2405 16.1852L18.5436 14.3733C18.4571 14.1484 18.241 14 18 14C17.759 14 17.5429 14.1484 17.4564 14.3733L16.7595 16.1852C16.658 16.4493 16.4493 16.658 16.1852 16.7595L14.3733 17.4564C14.1484 17.5429 14 17.759 14 18C14 18.241 14.1484 18.4571 14.3733 18.5436L16.1852 19.2405C16.4493 19.342 16.658 19.5507 16.7595 19.8148L17.4564 21.6267C17.5429 21.8516 17.759 22 18 22C18.241 22 18.4571 21.8516 18.5436 21.6267L19.2405 19.8148C19.342 19.5507 19.5507 19.342 19.8148 19.2405L21.6267 18.5436C21.8516 18.4571 22 18.241 22 18C22 17.759 21.8516 17.5429 21.6267 17.4564L19.8148 16.7595C19.5507 16.658 19.342 16.4493 19.2405 16.1852Z"fill=currentColor></path><path d="M16 5H17C18.6569 5 20 6.34315 20 8V11M8 5H7C5.34315 5 4 6.34315 4 8V18C4 19.6569 5.34315 21 7 21H12"stroke=currentColor stroke-width=2 stroke-linecap=round stroke-linejoin=round></path></svg></span><span class=dialkit-toolbar-copy-icon style=opacity:0;transform:scale(0.5);filter:blur(4px)><svg viewBox="0 0 24 24"fill=none stroke=currentColor stroke-width=2 stroke-linecap=round stroke-linejoin=round width=16 height=16><path d="M5 12.75L10 19L19 5"></path></svg></span></span>Copy`);
2195
2208
  var _tmpl$43 = /* @__PURE__ */ (0, import_web72.template)(`<div class=dialkit-panel-wrapper>`);
@@ -2416,7 +2429,7 @@ Apply these values as the new defaults in the createDialKit call.`;
2416
2429
  return props.panel.controls;
2417
2430
  },
2418
2431
  children: (control) => (0, import_web76.memo)(() => (0, import_web76.memo)(() => control.type === "action")() ? (() => {
2419
- var _el$ = _tmpl$18();
2432
+ var _el$ = _tmpl$19();
2420
2433
  _el$.$$click = () => DialStore.triggerAction(props.panel.id, control.path);
2421
2434
  (0, import_web75.insert)(_el$, () => control.label);
2422
2435
  return _el$;
@@ -2469,6 +2482,9 @@ Apply these values as the new defaults in the createDialKit call.`;
2469
2482
  return props.defaultOpen ?? true;
2470
2483
  },
2471
2484
  isRoot: true,
2485
+ get inline() {
2486
+ return props.inline ?? false;
2487
+ },
2472
2488
  onOpenChange: setIsPanelOpen,
2473
2489
  toolbar,
2474
2490
  get children() {
@@ -2481,10 +2497,11 @@ Apply these values as the new defaults in the createDialKit call.`;
2481
2497
  (0, import_web73.delegateEvents)(["click", "pointerdown", "pointerup"]);
2482
2498
 
2483
2499
  // src/solid/components/DialRoot.tsx
2484
- var _tmpl$19 = /* @__PURE__ */ (0, import_web78.template)(`<div class=dialkit-root><div class=dialkit-panel>`);
2500
+ var _tmpl$20 = /* @__PURE__ */ (0, import_web78.template)(`<div class=dialkit-root><div class=dialkit-panel>`);
2485
2501
  function DialRoot(props) {
2486
2502
  const [panels, setPanels] = (0, import_solid_js11.createSignal)([]);
2487
2503
  const [mounted, setMounted] = (0, import_solid_js11.createSignal)(false);
2504
+ const inline = () => (props.mode ?? "popover") === "inline";
2488
2505
  (0, import_solid_js11.onMount)(() => {
2489
2506
  setMounted(true);
2490
2507
  setPanels(DialStore.getPanels());
@@ -2493,30 +2510,56 @@ function DialRoot(props) {
2493
2510
  });
2494
2511
  (0, import_solid_js11.onCleanup)(unsub);
2495
2512
  });
2496
- return (0, import_web82.createComponent)(import_solid_js11.Show, {
2513
+ const content = () => (() => {
2514
+ var _el$ = _tmpl$20(), _el$2 = _el$.firstChild;
2515
+ (0, import_web82.insert)(_el$2, (0, import_web83.createComponent)(import_solid_js11.For, {
2516
+ get each() {
2517
+ return panels();
2518
+ },
2519
+ children: (panel) => (0, import_web83.createComponent)(Panel, {
2520
+ panel,
2521
+ get defaultOpen() {
2522
+ return inline() || (props.defaultOpen ?? true);
2523
+ },
2524
+ get inline() {
2525
+ return inline();
2526
+ }
2527
+ })
2528
+ }));
2529
+ (0, import_web81.effect)((_p$) => {
2530
+ var _v$ = props.mode ?? "popover", _v$2 = inline() ? void 0 : props.position ?? "top-right", _v$3 = props.mode ?? "popover";
2531
+ _v$ !== _p$.e && (0, import_web80.setAttribute)(_el$, "data-mode", _p$.e = _v$);
2532
+ _v$2 !== _p$.t && (0, import_web80.setAttribute)(_el$2, "data-position", _p$.t = _v$2);
2533
+ _v$3 !== _p$.a && (0, import_web80.setAttribute)(_el$2, "data-mode", _p$.a = _v$3);
2534
+ return _p$;
2535
+ }, {
2536
+ e: void 0,
2537
+ t: void 0,
2538
+ a: void 0
2539
+ });
2540
+ return _el$;
2541
+ })();
2542
+ return (0, import_web83.createComponent)(import_solid_js11.Show, {
2497
2543
  get when() {
2498
- return (0, import_web83.memo)(() => !!(mounted() && typeof window !== "undefined"))() && panels().length > 0;
2544
+ return (0, import_web79.memo)(() => !!(mounted() && typeof window !== "undefined"))() && panels().length > 0;
2499
2545
  },
2500
2546
  get children() {
2501
- return (0, import_web82.createComponent)(import_web84.Portal, {
2502
- get mount() {
2503
- return document.body;
2547
+ return (0, import_web83.createComponent)(import_solid_js11.Show, {
2548
+ get when() {
2549
+ return !inline();
2550
+ },
2551
+ get fallback() {
2552
+ return content();
2504
2553
  },
2505
2554
  get children() {
2506
- var _el$ = _tmpl$19(), _el$2 = _el$.firstChild;
2507
- (0, import_web81.insert)(_el$2, (0, import_web82.createComponent)(import_solid_js11.For, {
2508
- get each() {
2509
- return panels();
2555
+ return (0, import_web83.createComponent)(import_web84.Portal, {
2556
+ get mount() {
2557
+ return document.body;
2510
2558
  },
2511
- children: (panel) => (0, import_web82.createComponent)(Panel, {
2512
- panel,
2513
- get defaultOpen() {
2514
- return props.defaultOpen ?? true;
2515
- }
2516
- })
2517
- }));
2518
- (0, import_web80.effect)(() => (0, import_web79.setAttribute)(_el$2, "data-position", props.position ?? "top-right"));
2519
- return _el$;
2559
+ get children() {
2560
+ return content();
2561
+ }
2562
+ });
2520
2563
  }
2521
2564
  });
2522
2565
  }
@@ -2530,11 +2573,11 @@ var import_web87 = require("solid-js/web");
2530
2573
  var import_web88 = require("solid-js/web");
2531
2574
  var import_web89 = require("solid-js/web");
2532
2575
  var import_solid_js12 = require("solid-js");
2533
- var _tmpl$20 = /* @__PURE__ */ (0, import_web85.template)(`<div class=dialkit-button-group>`);
2576
+ var _tmpl$21 = /* @__PURE__ */ (0, import_web85.template)(`<div class=dialkit-button-group>`);
2534
2577
  var _tmpl$29 = /* @__PURE__ */ (0, import_web85.template)(`<button class=dialkit-button>`);
2535
2578
  function ButtonGroup(props) {
2536
2579
  return (() => {
2537
- var _el$ = _tmpl$20();
2580
+ var _el$ = _tmpl$21();
2538
2581
  (0, import_web88.insert)(_el$, (0, import_web89.createComponent)(import_solid_js12.For, {
2539
2582
  get each() {
2540
2583
  return props.buttons;