@tanstack/devtools 0.0.0 → 0.1.1

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 (127) hide show
  1. package/README.md +41 -0
  2. package/dist/cjs/components/checkbox.cjs +55 -0
  3. package/dist/cjs/components/checkbox.cjs.map +1 -0
  4. package/dist/cjs/components/checkbox.d.cts +8 -0
  5. package/dist/cjs/components/content-panel.cjs +5 -1
  6. package/dist/cjs/components/content-panel.cjs.map +1 -1
  7. package/dist/cjs/components/input.cjs +57 -0
  8. package/dist/cjs/components/input.cjs.map +1 -0
  9. package/dist/cjs/components/input.d.cts +10 -0
  10. package/dist/cjs/components/logo.cjs.map +1 -1
  11. package/dist/cjs/components/main-panel.cjs +4 -1
  12. package/dist/cjs/components/main-panel.cjs.map +1 -1
  13. package/dist/cjs/components/main-panel.d.cts +1 -2
  14. package/dist/cjs/components/select.cjs +59 -0
  15. package/dist/cjs/components/select.cjs.map +1 -0
  16. package/dist/cjs/components/select.d.cts +13 -0
  17. package/dist/cjs/components/tab-content.cjs +2 -4
  18. package/dist/cjs/components/tab-content.cjs.map +1 -1
  19. package/dist/cjs/components/tabs.cjs.map +1 -1
  20. package/dist/cjs/components/trigger.cjs +1 -1
  21. package/dist/cjs/components/trigger.cjs.map +1 -1
  22. package/dist/cjs/constants.cjs +7 -0
  23. package/dist/cjs/constants.cjs.map +1 -0
  24. package/dist/cjs/constants.d.cts +2 -0
  25. package/dist/cjs/context/devtools-context.cjs +16 -1
  26. package/dist/cjs/context/devtools-context.cjs.map +1 -1
  27. package/dist/cjs/context/devtools-context.d.cts +49 -7
  28. package/dist/cjs/context/devtools-store.cjs.map +1 -1
  29. package/dist/cjs/context/devtools-store.d.cts +3 -3
  30. package/dist/cjs/context/use-devtools-context.cjs +2 -2
  31. package/dist/cjs/context/use-devtools-context.cjs.map +1 -1
  32. package/dist/cjs/context/use-devtools-context.d.cts +4 -5
  33. package/dist/cjs/core.cjs +29 -43
  34. package/dist/cjs/core.cjs.map +1 -1
  35. package/dist/cjs/core.d.cts +31 -8
  36. package/dist/cjs/devtools.cjs +40 -29
  37. package/dist/cjs/devtools.cjs.map +1 -1
  38. package/dist/cjs/hooks/use-disable-tabbing.cjs.map +1 -1
  39. package/dist/cjs/index.cjs +4 -1
  40. package/dist/cjs/index.cjs.map +1 -1
  41. package/dist/cjs/index.d.cts +4 -3
  42. package/dist/cjs/styles/tokens.cjs +7 -2
  43. package/dist/cjs/styles/tokens.cjs.map +1 -1
  44. package/dist/cjs/styles/use-styles.cjs +251 -11
  45. package/dist/cjs/styles/use-styles.cjs.map +1 -1
  46. package/dist/cjs/styles/use-styles.d.cts +29 -5
  47. package/dist/cjs/tabs/index.cjs.map +1 -1
  48. package/dist/cjs/tabs/plugins-tab.cjs +8 -12
  49. package/dist/cjs/tabs/plugins-tab.cjs.map +1 -1
  50. package/dist/cjs/tabs/settings-tab.cjs +172 -2
  51. package/dist/cjs/tabs/settings-tab.cjs.map +1 -1
  52. package/dist/cjs/utils/sanitize.cjs +2 -0
  53. package/dist/cjs/utils/sanitize.cjs.map +1 -1
  54. package/dist/cjs/utils/sanitize.d.cts +1 -0
  55. package/dist/cjs/utils/storage.cjs.map +1 -1
  56. package/dist/esm/components/checkbox.d.ts +8 -0
  57. package/dist/esm/components/checkbox.js +55 -0
  58. package/dist/esm/components/checkbox.js.map +1 -0
  59. package/dist/esm/components/content-panel.js +5 -1
  60. package/dist/esm/components/content-panel.js.map +1 -1
  61. package/dist/esm/components/input.d.ts +10 -0
  62. package/dist/esm/components/input.js +57 -0
  63. package/dist/esm/components/input.js.map +1 -0
  64. package/dist/esm/components/logo.js.map +1 -1
  65. package/dist/esm/components/main-panel.d.ts +1 -2
  66. package/dist/esm/components/main-panel.js +5 -2
  67. package/dist/esm/components/main-panel.js.map +1 -1
  68. package/dist/esm/components/select.d.ts +13 -0
  69. package/dist/esm/components/select.js +59 -0
  70. package/dist/esm/components/select.js.map +1 -0
  71. package/dist/esm/components/tab-content.js +2 -4
  72. package/dist/esm/components/tab-content.js.map +1 -1
  73. package/dist/esm/components/tabs.js.map +1 -1
  74. package/dist/esm/components/trigger.js +1 -1
  75. package/dist/esm/components/trigger.js.map +1 -1
  76. package/dist/esm/constants.d.ts +2 -0
  77. package/dist/esm/constants.js +7 -0
  78. package/dist/esm/constants.js.map +1 -0
  79. package/dist/esm/context/devtools-context.d.ts +49 -7
  80. package/dist/esm/context/devtools-context.js +16 -1
  81. package/dist/esm/context/devtools-context.js.map +1 -1
  82. package/dist/esm/context/devtools-store.d.ts +3 -3
  83. package/dist/esm/context/devtools-store.js.map +1 -1
  84. package/dist/esm/context/use-devtools-context.d.ts +4 -5
  85. package/dist/esm/context/use-devtools-context.js +2 -2
  86. package/dist/esm/context/use-devtools-context.js.map +1 -1
  87. package/dist/esm/core.d.ts +31 -8
  88. package/dist/esm/core.js +29 -43
  89. package/dist/esm/core.js.map +1 -1
  90. package/dist/esm/devtools.js +42 -31
  91. package/dist/esm/devtools.js.map +1 -1
  92. package/dist/esm/hooks/use-disable-tabbing.js.map +1 -1
  93. package/dist/esm/index.d.ts +4 -3
  94. package/dist/esm/index.js +5 -2
  95. package/dist/esm/index.js.map +1 -1
  96. package/dist/esm/styles/tokens.js +7 -2
  97. package/dist/esm/styles/tokens.js.map +1 -1
  98. package/dist/esm/styles/use-styles.d.ts +29 -5
  99. package/dist/esm/styles/use-styles.js +251 -11
  100. package/dist/esm/styles/use-styles.js.map +1 -1
  101. package/dist/esm/tabs/index.js.map +1 -1
  102. package/dist/esm/tabs/plugins-tab.js +9 -13
  103. package/dist/esm/tabs/plugins-tab.js.map +1 -1
  104. package/dist/esm/tabs/settings-tab.js +173 -3
  105. package/dist/esm/tabs/settings-tab.js.map +1 -1
  106. package/dist/esm/utils/sanitize.d.ts +1 -0
  107. package/dist/esm/utils/sanitize.js +3 -1
  108. package/dist/esm/utils/sanitize.js.map +1 -1
  109. package/dist/esm/utils/storage.js.map +1 -1
  110. package/package.json +7 -9
  111. package/src/components/checkbox.tsx +43 -0
  112. package/src/components/content-panel.tsx +3 -1
  113. package/src/components/input.tsx +42 -0
  114. package/src/components/main-panel.tsx +4 -4
  115. package/src/components/select.tsx +50 -0
  116. package/src/components/trigger.tsx +1 -1
  117. package/src/constants.ts +2 -0
  118. package/src/context/devtools-context.tsx +72 -11
  119. package/src/context/devtools-store.ts +3 -3
  120. package/src/context/use-devtools-context.ts +2 -3
  121. package/src/core.tsx +42 -20
  122. package/src/devtools.tsx +34 -18
  123. package/src/index.ts +7 -3
  124. package/src/styles/use-styles.ts +257 -13
  125. package/src/tabs/plugins-tab.tsx +11 -5
  126. package/src/tabs/settings-tab.tsx +217 -1
  127. package/src/utils/sanitize.ts +3 -0
@@ -5,6 +5,7 @@ const solidJs = require("solid-js");
5
5
  const clsx = require("clsx");
6
6
  const useDevtoolsContext = require("../context/use-devtools-context.cjs");
7
7
  const useStyles = require("../styles/use-styles.cjs");
8
+ const constants = require("../constants.cjs");
8
9
  var _tmpl$ = /* @__PURE__ */ web.template(`<div><div></div><div>`), _tmpl$2 = /* @__PURE__ */ web.template(`<div><h3>`);
9
10
  const PluginsTab = () => {
10
11
  const {
@@ -14,11 +15,7 @@ const PluginsTab = () => {
14
15
  } = useDevtoolsContext.usePlugins();
15
16
  let activePluginRef;
16
17
  solidJs.createEffect(() => {
17
- var _a;
18
- const currentActivePlugin = (_a = plugins()) == null ? void 0 : _a.find((plugin) => {
19
- var _a2;
20
- return plugin.id === ((_a2 = activePlugin()) == null ? void 0 : _a2.id);
21
- });
18
+ const currentActivePlugin = plugins()?.find((plugin) => plugin.id === activePlugin());
22
19
  if (activePluginRef && currentActivePlugin) {
23
20
  currentActivePlugin.render(activePluginRef);
24
21
  }
@@ -39,21 +36,20 @@ const PluginsTab = () => {
39
36
  });
40
37
  return (() => {
41
38
  var _el$4 = _tmpl$2(), _el$5 = _el$4.firstChild;
42
- _el$4.$$click = () => setActivePlugin(plugin);
39
+ _el$4.$$click = () => setActivePlugin(plugin.id);
43
40
  var _ref$2 = pluginHeading;
44
41
  typeof _ref$2 === "function" ? web.use(_ref$2, _el$5) : pluginHeading = _el$5;
45
- web.effect(() => {
46
- var _a;
47
- return web.className(_el$4, clsx(styles().pluginName, {
48
- active: ((_a = activePlugin()) == null ? void 0 : _a.id) === plugin.id
49
- }));
50
- });
42
+ web.setAttribute(_el$5, "id", constants.PLUGIN_TITLE_CONTAINER_ID);
43
+ web.effect(() => web.className(_el$4, clsx(styles().pluginName, {
44
+ active: activePlugin() === plugin.id
45
+ })));
51
46
  return _el$4;
52
47
  })();
53
48
  }
54
49
  }));
55
50
  var _ref$ = activePluginRef;
56
51
  typeof _ref$ === "function" ? web.use(_ref$, _el$3) : activePluginRef = _el$3;
52
+ web.setAttribute(_el$3, "id", constants.PLUGIN_CONTAINER_ID);
57
53
  web.effect((_p$) => {
58
54
  var _v$ = styles().pluginsTabPanel, _v$2 = styles().pluginsTabSidebar, _v$3 = styles().pluginsTabContent;
59
55
  _v$ !== _p$.e && web.className(_el$, _p$.e = _v$);
@@ -1 +1 @@
1
- {"version":3,"file":"plugins-tab.cjs","sources":["../../../src/tabs/plugins-tab.tsx"],"sourcesContent":["import { For, createEffect } from 'solid-js'\nimport clsx from 'clsx'\nimport { usePlugins } from '../context/use-devtools-context'\nimport { useStyles } from '../styles/use-styles'\n\nexport const PluginsTab = () => {\n const { plugins, activePlugin, setActivePlugin } = usePlugins()\n let activePluginRef: HTMLDivElement | undefined\n createEffect(() => {\n const currentActivePlugin = plugins()?.find(\n (plugin) => plugin.id === activePlugin()?.id,\n )\n if (activePluginRef && currentActivePlugin) {\n currentActivePlugin.render(activePluginRef)\n }\n })\n const styles = useStyles()\n return (\n <div class={styles().pluginsTabPanel}>\n <div class={styles().pluginsTabSidebar}>\n <For each={plugins()}>\n {(plugin) => {\n let pluginHeading: HTMLHeadingElement | undefined\n createEffect(() => {\n if (pluginHeading) {\n typeof plugin.name === 'string'\n ? (pluginHeading.textContent = plugin.name)\n : plugin.name(pluginHeading)\n }\n })\n return (\n <div\n onClick={() => setActivePlugin(plugin)}\n class={clsx(styles().pluginName, {\n active: activePlugin()?.id === plugin.id,\n })}\n >\n <h3 ref={pluginHeading} />\n </div>\n )\n }}\n </For>\n </div>\n <div ref={activePluginRef} class={styles().pluginsTabContent}></div>\n </div>\n )\n}\n"],"names":["PluginsTab","plugins","activePlugin","setActivePlugin","usePlugins","activePluginRef","createEffect","currentActivePlugin","find","plugin","id","render","styles","useStyles","_el$","_tmpl$","_el$2","firstChild","_el$3","nextSibling","_$createComponent","For","each","children","pluginHeading","name","textContent","_el$4","_tmpl$2","_el$5","$$click","_ref$2","_$use","_$effect","_$className","clsx","pluginName","active","_ref$","_p$","_v$","pluginsTabPanel","_v$2","pluginsTabSidebar","_v$3","pluginsTabContent","e","t","a","undefined","_$delegateEvents"],"mappings":";;;;;;;;AAKO,MAAMA,aAAaA,MAAM;AACxB,QAAA;AAAA,IAAEC;AAAAA,IAASC;AAAAA,IAAcC;AAAAA,MAAoBC,8BAAW;AAC1DC,MAAAA;AACJC,UAAAA,aAAa,MAAM;;AACXC,UAAAA,uBAAsBN,aAAWO,MAAXP,mBAAWO,KACpCC,YAAWA;;AAAAA,oBAAOC,SAAOR,MAAAA,aAAa,MAAbA,gBAAAA,IAAgBQ;AAAAA;AAE5C,QAAIL,mBAAmBE,qBAAqB;AAC1CA,0BAAoBI,OAAON,eAAe;AAAA,IAAA;AAAA,EAC5C,CACD;AACD,QAAMO,SAASC,UAAAA,UAAU;AACzB,UAAA,MAAA;AAAA,QAAAC,OAAAC,OAAA,GAAAC,QAAAF,KAAAG,YAAAC,QAAAF,MAAAG;AAAAH,eAAAA,OAAAI,oBAGOC,aAAG;AAAA,MAAA,IAACC,OAAI;AAAA,eAAErB,QAAQ;AAAA,MAAC;AAAA,MAAAsB,UAChBd,CAAW,WAAA;AACPe,YAAAA;AACJlB,gBAAAA,aAAa,MAAM;AACjB,cAAIkB,eAAe;AACVf,mBAAAA,OAAOgB,SAAS,WAClBD,cAAcE,cAAcjB,OAAOgB,OACpChB,OAAOgB,KAAKD,aAAa;AAAA,UAAA;AAAA,QAC/B,CACD;AACD,gBAAA,MAAA;AAAA,cAAAG,QAAAC,QAAAA,GAAAC,QAAAF,MAAAV;AAAAa,gBAAAA,UAEa,MAAM3B,gBAAgBM,MAAM;AAAC,cAAAsB,SAK7BP;AAAa,iBAAAO,WAAAC,aAAAA,IAAAA,IAAAD,QAAAF,KAAA,IAAbL,gBAAaK;AAAAI,cAAAA,OAAAC,MAAAA;;AAAAA,uBAAAA,UAAAP,OAJfQ,KAAKvB,SAASwB,YAAY;AAAA,cAC/BC,UAAQnC,kBAAAA,MAAAA,mBAAgBQ,QAAOD,OAAOC;AAAAA,YACvC,CAAA,CAAC;AAAA,WAAA;AAAAiB,iBAAAA;AAAAA,QAAAA,GAAA;AAAA,MAAA;AAAA,IAKR,CAAC,CAAA;AAAA,QAAAW,QAGKjC;AAAe,WAAAiC,UAAAN,aAAAA,IAAAA,IAAAM,OAAApB,KAAA,IAAfb,kBAAea;AAAAe,QAAAA,OAAAM,CAAA,QAAA;AAAAC,UAAAA,MAzBf5B,SAAS6B,iBAAeC,OACtB9B,OAAS+B,EAAAA,mBAAiBC,OAwBJhC,OAAAA,EAASiC;AAAiBL,cAAAD,IAAAO,KAAAZ,IAAAA,UAAApB,MAAAyB,IAAAO,IAAAN,GAAA;AAAAE,eAAAH,IAAAQ,KAAAb,IAAAA,UAAAlB,OAAAuB,IAAAQ,IAAAL,IAAA;AAAAE,eAAAL,IAAAS,KAAAd,IAAAA,UAAAhB,OAAAqB,IAAAS,IAAAJ,IAAA;AAAAL,aAAAA;AAAAA,IAAAA,GAAA;AAAA,MAAAO,GAAAG;AAAAA,MAAAF,GAAAE;AAAAA,MAAAD,GAAAC;AAAAA,IAAAA,CAAA;AAAAnC,WAAAA;AAAAA,EAAAA,GAAA;AAGlE;AAACoC,IAAAA,eAAA,CAAA,OAAA,CAAA;;"}
1
+ {"version":3,"file":"plugins-tab.cjs","sources":["../../../src/tabs/plugins-tab.tsx"],"sourcesContent":["import { For, createEffect } from 'solid-js'\nimport clsx from 'clsx'\nimport { usePlugins } from '../context/use-devtools-context'\nimport { useStyles } from '../styles/use-styles'\nimport { PLUGIN_CONTAINER_ID, PLUGIN_TITLE_CONTAINER_ID } from '../constants'\n\nexport const PluginsTab = () => {\n const { plugins, activePlugin, setActivePlugin } = usePlugins()\n let activePluginRef: HTMLDivElement | undefined\n\n createEffect(() => {\n const currentActivePlugin = plugins()?.find(\n (plugin) => plugin.id === activePlugin(),\n )\n if (activePluginRef && currentActivePlugin) {\n currentActivePlugin.render(activePluginRef)\n }\n })\n const styles = useStyles()\n return (\n <div class={styles().pluginsTabPanel}>\n <div class={styles().pluginsTabSidebar}>\n <For each={plugins()}>\n {(plugin) => {\n let pluginHeading: HTMLHeadingElement | undefined\n createEffect(() => {\n if (pluginHeading) {\n typeof plugin.name === 'string'\n ? (pluginHeading.textContent = plugin.name)\n : plugin.name(pluginHeading)\n }\n })\n return (\n <div\n onClick={() => setActivePlugin(plugin.id!)}\n class={clsx(styles().pluginName, {\n active: activePlugin() === plugin.id,\n })}\n >\n <h3 id={PLUGIN_TITLE_CONTAINER_ID} ref={pluginHeading} />\n </div>\n )\n }}\n </For>\n </div>\n <div\n id={PLUGIN_CONTAINER_ID}\n ref={activePluginRef}\n class={styles().pluginsTabContent}\n ></div>\n </div>\n )\n}\n"],"names":["PluginsTab","plugins","activePlugin","setActivePlugin","usePlugins","activePluginRef","createEffect","currentActivePlugin","find","plugin","id","render","styles","useStyles","_el$","_tmpl$","_el$2","firstChild","_el$3","nextSibling","_$insert","_$createComponent","For","each","children","pluginHeading","name","textContent","_el$4","_tmpl$2","_el$5","$$click","_ref$2","_$use","_$setAttribute","PLUGIN_TITLE_CONTAINER_ID","_$effect","_$className","clsx","pluginName","active","_ref$","PLUGIN_CONTAINER_ID","_p$","_v$","pluginsTabPanel","_v$2","pluginsTabSidebar","_v$3","pluginsTabContent","e","t","a","undefined","_$delegateEvents"],"mappings":";;;;;;;;;AAMO,MAAMA,aAAaA,MAAM;AAC9B,QAAM;AAAA,IAAEC;AAAAA,IAASC;AAAAA,IAAcC;AAAAA,EAAAA,IAAoBC,8BAAAA;AACnD,MAAIC;AAEJC,UAAAA,aAAa,MAAM;AACjB,UAAMC,sBAAsBN,WAAWO,KACpCC,YAAWA,OAAOC,OAAOR,cAC5B;AACA,QAAIG,mBAAmBE,qBAAqB;AAC1CA,0BAAoBI,OAAON,eAAe;AAAA,IAC5C;AAAA,EACF,CAAC;AACD,QAAMO,SAASC,UAAAA,UAAAA;AACf,UAAA,MAAA;AAAA,QAAAC,OAAAC,OAAAA,GAAAC,QAAAF,KAAAG,YAAAC,QAAAF,MAAAG;AAAAC,eAAAJ,OAAAK,IAAAA,gBAGOC,aAAG;AAAA,MAAA,IAACC,OAAI;AAAA,eAAEtB,QAAAA;AAAAA,MAAS;AAAA,MAAAuB,UAChBf,CAAAA,WAAW;AACX,YAAIgB;AACJnB,gBAAAA,aAAa,MAAM;AACjB,cAAImB,eAAe;AACjB,mBAAOhB,OAAOiB,SAAS,WAClBD,cAAcE,cAAclB,OAAOiB,OACpCjB,OAAOiB,KAAKD,aAAa;AAAA,UAC/B;AAAA,QACF,CAAC;AACD,gBAAA,MAAA;AAAA,cAAAG,QAAAC,QAAAA,GAAAC,QAAAF,MAAAX;AAAAW,gBAAAG,UAEa,MAAM5B,gBAAgBM,OAAOC,EAAG;AAAC,cAAAsB,SAKFP;AAAa,iBAAAO,WAAA,aAAAC,IAAAA,IAAAD,QAAAF,KAAA,IAAbL,gBAAaK;AAAAI,2BAAAJ,OAAA,MAA7CK,mCAAyB;AAAAC,cAAAA,OAAA,MAAAC,IAAAA,UAAAT,OAJ1BU,KAAK1B,OAAAA,EAAS2B,YAAY;AAAA,YAC/BC,QAAQtC,aAAAA,MAAmBO,OAAOC;AAAAA,UAAAA,CACnC,CAAC,CAAA;AAAA,iBAAAkB;AAAAA,QAAA,GAAA;AAAA,MAKR;AAAA,IAAA,CAAC,CAAA;AAAA,QAAAa,QAKEpC;AAAe,WAAAoC,UAAA,aAAAR,IAAAA,IAAAQ,OAAAvB,KAAA,IAAfb,kBAAea;AAAAgB,qBAAAhB,OAAA,MADhBwB,6BAAmB;AAAAN,QAAAA,OAAAO,CAAAA,QAAA;AAAA,UAAAC,MA1BfhC,SAASiC,iBAAeC,OACtBlC,SAASmC,mBAAiBC,OA2B7BpC,OAAAA,EAASqC;AAAiBL,cAAAD,IAAAO,KAAAb,IAAAA,UAAAvB,MAAA6B,IAAAO,IAAAN,GAAA;AAAAE,eAAAH,IAAAQ,KAAAd,IAAAA,UAAArB,OAAA2B,IAAAQ,IAAAL,IAAA;AAAAE,eAAAL,IAAAS,KAAAf,IAAAA,UAAAnB,OAAAyB,IAAAS,IAAAJ,IAAA;AAAA,aAAAL;AAAAA,IAAA,GAAA;AAAA,MAAAO,GAAAG;AAAAA,MAAAF,GAAAE;AAAAA,MAAAD,GAAAC;AAAAA,IAAAA,CAAA;AAAA,WAAAvC;AAAAA,EAAA,GAAA;AAIzC;AAACwC,IAAAA,eAAA,CAAA,OAAA,CAAA;;"}
@@ -1,9 +1,179 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
3
3
  const web = require("solid-js/web");
4
- var _tmpl$ = /* @__PURE__ */ web.template(`<div>Settings`);
4
+ const solidJs = require("solid-js");
5
+ const input = require("../components/input.cjs");
6
+ const select = require("../components/select.cjs");
7
+ const useDevtoolsContext = require("../context/use-devtools-context.cjs");
8
+ const sanitize = require("../utils/sanitize.cjs");
9
+ const checkbox = require("../components/checkbox.cjs");
10
+ const useStyles = require("../styles/use-styles.cjs");
11
+ var _tmpl$ = /* @__PURE__ */ web.template(`<div>`), _tmpl$2 = /* @__PURE__ */ web.template(`<div><div><h3><svg xmlns=http://www.w3.org/2000/svg width=20 height=20 viewBox="0 0 24 24"fill=none stroke=currentColor stroke-width=2 stroke-linecap=round stroke-linejoin=round><path d="M9.671 4.136a2.34 2.34 0 0 1 4.659 0 2.34 2.34 0 0 0 3.319 1.915 2.34 2.34 0 0 1 2.33 4.033 2.34 2.34 0 0 0 0 3.831 2.34 2.34 0 0 1-2.33 4.033 2.34 2.34 0 0 0-3.319 1.915 2.34 2.34 0 0 1-4.659 0 2.34 2.34 0 0 0-3.32-1.915 2.34 2.34 0 0 1-2.33-4.033 2.34 2.34 0 0 0 0-3.831A2.34 2.34 0 0 1 6.35 6.051a2.34 2.34 0 0 0 3.319-1.915"></path><circle cx=12 cy=12 r=3></circle></svg>General</h3><p>Configure general behavior of the devtools panel.</p><div></div></div><div><h3><svg xmlns=http://www.w3.org/2000/svg width=20 height=20 viewBox="0 0 24 24"fill=none stroke=currentColor stroke-width=2 stroke-linecap=round stroke-linejoin=round><path d="M9 17H7A5 5 0 0 1 7 7h2"></path><path d="M15 7h2a5 5 0 1 1 0 10h-2"></path><line x1=8 x2=16 y1=12 y2=12></line></svg>URL Configuration</h3><p>Control when devtools are available based on URL parameters.</p><div></div></div><div><h3><svg xmlns=http://www.w3.org/2000/svg width=20 height=20 viewBox="0 0 24 24"fill=none stroke=currentColor stroke-width=2 stroke-linecap=round stroke-linejoin=round><path d="M10 8h.01"></path><path d="M12 12h.01"></path><path d="M14 8h.01"></path><path d="M16 12h.01"></path><path d="M18 8h.01"></path><path d="M6 8h.01"></path><path d="M7 16h10"></path><path d="M8 12h.01"></path><rect width=20 height=16 x=2 y=4 rx=2></rect></svg>Keyboard</h3><p>Customize keyboard shortcuts for quick access.</p><div></div></div><div><h3><svg xmlns=http://www.w3.org/2000/svg width=20 height=20 viewBox="0 0 24 24"fill=none stroke=currentColor stroke-width=2 stroke-linecap=round stroke-linejoin=round><path d="M20 10c0 4.993-5.539 10.193-7.399 11.799a1 1 0 0 1-1.202 0C9.539 20.193 4 14.993 4 10a8 8 0 0 1 16 0"></path><circle cx=12 cy=10 r=3></circle></svg>Position</h3><p>Adjust the position of the trigger button and devtools panel.</p><div><div>`);
5
12
  const SettingsTab = () => {
6
- return _tmpl$();
13
+ const {
14
+ setSettings,
15
+ settings
16
+ } = useDevtoolsContext.useDevtoolsSettings();
17
+ const styles = useStyles.useStyles();
18
+ return (() => {
19
+ var _el$ = _tmpl$2(), _el$2 = _el$.firstChild, _el$3 = _el$2.firstChild, _el$4 = _el$3.firstChild, _el$5 = _el$3.nextSibling, _el$6 = _el$5.nextSibling, _el$7 = _el$2.nextSibling, _el$8 = _el$7.firstChild, _el$9 = _el$8.firstChild, _el$10 = _el$8.nextSibling, _el$11 = _el$10.nextSibling, _el$13 = _el$7.nextSibling, _el$14 = _el$13.firstChild, _el$15 = _el$14.firstChild, _el$16 = _el$14.nextSibling, _el$17 = _el$16.nextSibling, _el$18 = _el$13.nextSibling, _el$19 = _el$18.firstChild, _el$20 = _el$19.firstChild, _el$21 = _el$19.nextSibling, _el$22 = _el$21.nextSibling, _el$23 = _el$22.firstChild;
20
+ web.insert(_el$6, web.createComponent(checkbox.Checkbox, {
21
+ label: "Default open",
22
+ description: "Automatically open the devtools panel when the page loads",
23
+ onChange: () => setSettings({
24
+ defaultOpen: !settings().defaultOpen
25
+ }),
26
+ get checked() {
27
+ return settings().defaultOpen;
28
+ }
29
+ }), null);
30
+ web.insert(_el$6, web.createComponent(checkbox.Checkbox, {
31
+ label: "Hide trigger until hovered",
32
+ description: "Keep the devtools trigger button hidden until you hover over its area",
33
+ onChange: () => setSettings({
34
+ hideUntilHover: !settings().hideUntilHover
35
+ }),
36
+ get checked() {
37
+ return settings().hideUntilHover;
38
+ }
39
+ }), null);
40
+ web.insert(_el$11, web.createComponent(checkbox.Checkbox, {
41
+ label: "Require URL Flag",
42
+ description: "Only show devtools when a specific URL parameter is present",
43
+ get checked() {
44
+ return settings().requireUrlFlag;
45
+ },
46
+ onChange: (checked) => setSettings({
47
+ requireUrlFlag: checked
48
+ })
49
+ }), null);
50
+ web.insert(_el$11, web.createComponent(solidJs.Show, {
51
+ get when() {
52
+ return settings().requireUrlFlag;
53
+ },
54
+ get children() {
55
+ var _el$12 = _tmpl$();
56
+ web.insert(_el$12, web.createComponent(input.Input, {
57
+ label: "URL flag",
58
+ description: "Enter the URL parameter name (e.g., 'debug' for ?debug=true)",
59
+ placeholder: "debug",
60
+ get value() {
61
+ return settings().urlFlag;
62
+ },
63
+ onChange: (e) => setSettings({
64
+ urlFlag: e
65
+ })
66
+ }));
67
+ web.effect(() => web.className(_el$12, styles().conditionalSetting));
68
+ return _el$12;
69
+ }
70
+ }), null);
71
+ web.insert(_el$17, web.createComponent(input.Input, {
72
+ label: "Hotkey to open/close devtools",
73
+ description: "Use '+' to combine keys (e.g., 'Ctrl+Shift+D' or 'Alt+D')",
74
+ placeholder: "Ctrl+Shift+D",
75
+ get value() {
76
+ return settings().openHotkey.join("+");
77
+ },
78
+ onChange: (e) => setSettings({
79
+ openHotkey: e.split("+").map((key) => sanitize.uppercaseFirstLetter(key)).filter(Boolean)
80
+ })
81
+ }));
82
+ web.insert(_el$23, web.createComponent(select.Select, {
83
+ label: "Trigger Position",
84
+ options: [{
85
+ label: "Bottom Right",
86
+ value: "bottom-right"
87
+ }, {
88
+ label: "Bottom Left",
89
+ value: "bottom-left"
90
+ }, {
91
+ label: "Top Right",
92
+ value: "top-right"
93
+ }, {
94
+ label: "Top Left",
95
+ value: "top-left"
96
+ }, {
97
+ label: "Middle Right",
98
+ value: "middle-right"
99
+ }, {
100
+ label: "Middle Left",
101
+ value: "middle-left"
102
+ }],
103
+ get value() {
104
+ return settings().position;
105
+ },
106
+ onChange: (value) => setSettings({
107
+ position: value
108
+ })
109
+ }), null);
110
+ web.insert(_el$23, web.createComponent(select.Select, {
111
+ label: "Panel Position",
112
+ get value() {
113
+ return settings().panelLocation;
114
+ },
115
+ options: [{
116
+ label: "Top",
117
+ value: "top"
118
+ }, {
119
+ label: "Bottom",
120
+ value: "bottom"
121
+ }],
122
+ onChange: (value) => setSettings({
123
+ panelLocation: value
124
+ })
125
+ }), null);
126
+ web.effect((_p$) => {
127
+ var _v$ = styles().settingsContainer, _v$2 = styles().settingsSection, _v$3 = styles().sectionTitle, _v$4 = styles().sectionIcon, _v$5 = styles().sectionDescription, _v$6 = styles().settingsGroup, _v$7 = styles().settingsSection, _v$8 = styles().sectionTitle, _v$9 = styles().sectionIcon, _v$10 = styles().sectionDescription, _v$11 = styles().settingsGroup, _v$12 = styles().settingsSection, _v$13 = styles().sectionTitle, _v$14 = styles().sectionIcon, _v$15 = styles().sectionDescription, _v$16 = styles().settingsGroup, _v$17 = styles().settingsSection, _v$18 = styles().sectionTitle, _v$19 = styles().sectionIcon, _v$20 = styles().sectionDescription, _v$21 = styles().settingsGroup, _v$22 = styles().settingRow;
128
+ _v$ !== _p$.e && web.className(_el$, _p$.e = _v$);
129
+ _v$2 !== _p$.t && web.className(_el$2, _p$.t = _v$2);
130
+ _v$3 !== _p$.a && web.className(_el$3, _p$.a = _v$3);
131
+ _v$4 !== _p$.o && web.setAttribute(_el$4, "class", _p$.o = _v$4);
132
+ _v$5 !== _p$.i && web.className(_el$5, _p$.i = _v$5);
133
+ _v$6 !== _p$.n && web.className(_el$6, _p$.n = _v$6);
134
+ _v$7 !== _p$.s && web.className(_el$7, _p$.s = _v$7);
135
+ _v$8 !== _p$.h && web.className(_el$8, _p$.h = _v$8);
136
+ _v$9 !== _p$.r && web.setAttribute(_el$9, "class", _p$.r = _v$9);
137
+ _v$10 !== _p$.d && web.className(_el$10, _p$.d = _v$10);
138
+ _v$11 !== _p$.l && web.className(_el$11, _p$.l = _v$11);
139
+ _v$12 !== _p$.u && web.className(_el$13, _p$.u = _v$12);
140
+ _v$13 !== _p$.c && web.className(_el$14, _p$.c = _v$13);
141
+ _v$14 !== _p$.w && web.setAttribute(_el$15, "class", _p$.w = _v$14);
142
+ _v$15 !== _p$.m && web.className(_el$16, _p$.m = _v$15);
143
+ _v$16 !== _p$.f && web.className(_el$17, _p$.f = _v$16);
144
+ _v$17 !== _p$.y && web.className(_el$18, _p$.y = _v$17);
145
+ _v$18 !== _p$.g && web.className(_el$19, _p$.g = _v$18);
146
+ _v$19 !== _p$.p && web.setAttribute(_el$20, "class", _p$.p = _v$19);
147
+ _v$20 !== _p$.b && web.className(_el$21, _p$.b = _v$20);
148
+ _v$21 !== _p$.T && web.className(_el$22, _p$.T = _v$21);
149
+ _v$22 !== _p$.A && web.className(_el$23, _p$.A = _v$22);
150
+ return _p$;
151
+ }, {
152
+ e: void 0,
153
+ t: void 0,
154
+ a: void 0,
155
+ o: void 0,
156
+ i: void 0,
157
+ n: void 0,
158
+ s: void 0,
159
+ h: void 0,
160
+ r: void 0,
161
+ d: void 0,
162
+ l: void 0,
163
+ u: void 0,
164
+ c: void 0,
165
+ w: void 0,
166
+ m: void 0,
167
+ f: void 0,
168
+ y: void 0,
169
+ g: void 0,
170
+ p: void 0,
171
+ b: void 0,
172
+ T: void 0,
173
+ A: void 0
174
+ });
175
+ return _el$;
176
+ })();
7
177
  };
8
178
  exports.SettingsTab = SettingsTab;
9
179
  //# sourceMappingURL=settings-tab.cjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"settings-tab.cjs","sources":["../../../src/tabs/settings-tab.tsx"],"sourcesContent":["export const SettingsTab = () => {\n return <div>Settings</div>\n}\n"],"names":["SettingsTab","_tmpl$"],"mappings":";;;;AAAO,MAAMA,cAAcA,MAAM;AAC/B,SAAAC,OAAA;AACF;;"}
1
+ {"version":3,"file":"settings-tab.cjs","sources":["../../../src/tabs/settings-tab.tsx"],"sourcesContent":["import { Show } from 'solid-js'\nimport { Input } from '../components/input'\nimport { Select } from '../components/select'\nimport { useDevtoolsSettings } from '../context/use-devtools-context'\nimport { uppercaseFirstLetter } from '../utils/sanitize'\nimport { Checkbox } from '../components/checkbox'\nimport { useStyles } from '../styles/use-styles'\n\nexport const SettingsTab = () => {\n const { setSettings, settings } = useDevtoolsSettings()\n const styles = useStyles()\n\n return (\n <div class={styles().settingsContainer}>\n {/* General Settings */}\n <div class={styles().settingsSection}>\n <h3 class={styles().sectionTitle}>\n <svg\n xmlns=\"http://www.w3.org/2000/svg\"\n width=\"20\"\n height=\"20\"\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n stroke-width=\"2\"\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n class={styles().sectionIcon}\n >\n <path d=\"M9.671 4.136a2.34 2.34 0 0 1 4.659 0 2.34 2.34 0 0 0 3.319 1.915 2.34 2.34 0 0 1 2.33 4.033 2.34 2.34 0 0 0 0 3.831 2.34 2.34 0 0 1-2.33 4.033 2.34 2.34 0 0 0-3.319 1.915 2.34 2.34 0 0 1-4.659 0 2.34 2.34 0 0 0-3.32-1.915 2.34 2.34 0 0 1-2.33-4.033 2.34 2.34 0 0 0 0-3.831A2.34 2.34 0 0 1 6.35 6.051a2.34 2.34 0 0 0 3.319-1.915\" />\n <circle cx=\"12\" cy=\"12\" r=\"3\" />\n </svg>\n General\n </h3>\n <p class={styles().sectionDescription}>\n Configure general behavior of the devtools panel.\n </p>\n <div class={styles().settingsGroup}>\n <Checkbox\n label=\"Default open\"\n description=\"Automatically open the devtools panel when the page loads\"\n onChange={() =>\n setSettings({ defaultOpen: !settings().defaultOpen })\n }\n checked={settings().defaultOpen}\n />\n <Checkbox\n label=\"Hide trigger until hovered\"\n description=\"Keep the devtools trigger button hidden until you hover over its area\"\n onChange={() =>\n setSettings({ hideUntilHover: !settings().hideUntilHover })\n }\n checked={settings().hideUntilHover}\n />\n </div>\n </div>\n\n {/* URL Flag Settings */}\n <div class={styles().settingsSection}>\n <h3 class={styles().sectionTitle}>\n <svg\n class={styles().sectionIcon}\n xmlns=\"http://www.w3.org/2000/svg\"\n width=\"20\"\n height=\"20\"\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n stroke-width=\"2\"\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n >\n <path d=\"M9 17H7A5 5 0 0 1 7 7h2\" />\n <path d=\"M15 7h2a5 5 0 1 1 0 10h-2\" />\n <line x1=\"8\" x2=\"16\" y1=\"12\" y2=\"12\" />\n </svg>\n URL Configuration\n </h3>\n <p class={styles().sectionDescription}>\n Control when devtools are available based on URL parameters.\n </p>\n <div class={styles().settingsGroup}>\n <Checkbox\n label=\"Require URL Flag\"\n description=\"Only show devtools when a specific URL parameter is present\"\n checked={settings().requireUrlFlag}\n onChange={(checked) =>\n setSettings({\n requireUrlFlag: checked,\n })\n }\n />\n <Show when={settings().requireUrlFlag}>\n <div class={styles().conditionalSetting}>\n <Input\n label=\"URL flag\"\n description=\"Enter the URL parameter name (e.g., 'debug' for ?debug=true)\"\n placeholder=\"debug\"\n value={settings().urlFlag}\n onChange={(e) =>\n setSettings({\n urlFlag: e,\n })\n }\n />\n </div>\n </Show>\n </div>\n </div>\n\n {/* Keyboard Settings */}\n <div class={styles().settingsSection}>\n <h3 class={styles().sectionTitle}>\n <svg\n class={styles().sectionIcon}\n xmlns=\"http://www.w3.org/2000/svg\"\n width=\"20\"\n height=\"20\"\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n stroke-width=\"2\"\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n >\n <path d=\"M10 8h.01\" />\n <path d=\"M12 12h.01\" />\n <path d=\"M14 8h.01\" />\n <path d=\"M16 12h.01\" />\n <path d=\"M18 8h.01\" />\n <path d=\"M6 8h.01\" />\n <path d=\"M7 16h10\" />\n <path d=\"M8 12h.01\" />\n <rect width=\"20\" height=\"16\" x=\"2\" y=\"4\" rx=\"2\" />\n </svg>\n Keyboard\n </h3>\n <p class={styles().sectionDescription}>\n Customize keyboard shortcuts for quick access.\n </p>\n <div class={styles().settingsGroup}>\n <Input\n label=\"Hotkey to open/close devtools\"\n description=\"Use '+' to combine keys (e.g., 'Ctrl+Shift+D' or 'Alt+D')\"\n placeholder=\"Ctrl+Shift+D\"\n value={settings().openHotkey.join('+')}\n onChange={(e) =>\n setSettings({\n openHotkey: e\n .split('+')\n .map((key) => uppercaseFirstLetter(key))\n .filter(Boolean),\n })\n }\n />\n </div>\n </div>\n\n {/* Position Settings */}\n <div class={styles().settingsSection}>\n <h3 class={styles().sectionTitle}>\n <svg\n class={styles().sectionIcon}\n xmlns=\"http://www.w3.org/2000/svg\"\n width=\"20\"\n height=\"20\"\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n stroke-width=\"2\"\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n >\n <path d=\"M20 10c0 4.993-5.539 10.193-7.399 11.799a1 1 0 0 1-1.202 0C9.539 20.193 4 14.993 4 10a8 8 0 0 1 16 0\" />\n <circle cx=\"12\" cy=\"10\" r=\"3\" />\n </svg>\n Position\n </h3>\n <p class={styles().sectionDescription}>\n Adjust the position of the trigger button and devtools panel.\n </p>\n <div class={styles().settingsGroup}>\n <div class={styles().settingRow}>\n <Select\n label=\"Trigger Position\"\n options={[\n { label: 'Bottom Right', value: 'bottom-right' },\n { label: 'Bottom Left', value: 'bottom-left' },\n { label: 'Top Right', value: 'top-right' },\n { label: 'Top Left', value: 'top-left' },\n { label: 'Middle Right', value: 'middle-right' },\n { label: 'Middle Left', value: 'middle-left' },\n ]}\n value={settings().position}\n onChange={(value) =>\n setSettings({\n position: value,\n })\n }\n />\n <Select\n label=\"Panel Position\"\n value={settings().panelLocation}\n options={[\n { label: 'Top', value: 'top' },\n { label: 'Bottom', value: 'bottom' },\n ]}\n onChange={(value) =>\n setSettings({\n panelLocation: value,\n })\n }\n />\n </div>\n </div>\n </div>\n </div>\n )\n}\n"],"names":["SettingsTab","setSettings","settings","useDevtoolsSettings","styles","useStyles","_el$","_tmpl$2","_el$2","firstChild","_el$3","_el$4","_el$5","nextSibling","_el$6","_el$7","_el$8","_el$9","_el$10","_el$11","_el$13","_el$14","_el$15","_el$16","_el$17","_el$18","_el$19","_el$20","_el$21","_el$22","_el$23","_$insert","_$createComponent","Checkbox","label","description","onChange","defaultOpen","checked","hideUntilHover","requireUrlFlag","Show","when","children","_el$12","_tmpl$","Input","placeholder","value","urlFlag","e","_$effect","_$className","conditionalSetting","openHotkey","join","split","map","key","uppercaseFirstLetter","filter","Boolean","Select","options","position","panelLocation","_p$","_v$","settingsContainer","_v$2","settingsSection","_v$3","sectionTitle","_v$4","sectionIcon","_v$5","sectionDescription","_v$6","settingsGroup","_v$7","_v$8","_v$9","_v$10","_v$11","_v$12","_v$13","_v$14","_v$15","_v$16","_v$17","_v$18","_v$19","_v$20","_v$21","_v$22","settingRow","t","a","o","_$setAttribute","i","n","s","h","r","d","l","u","c","w","m","f","y","g","p","b","T","A","undefined"],"mappings":"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"}
@@ -8,5 +8,7 @@ const tryParseJson = (json) => {
8
8
  return void 0;
9
9
  }
10
10
  };
11
+ const uppercaseFirstLetter = (value) => value.charAt(0).toUpperCase() + value.slice(1);
11
12
  exports.tryParseJson = tryParseJson;
13
+ exports.uppercaseFirstLetter = uppercaseFirstLetter;
12
14
  //# sourceMappingURL=sanitize.cjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"sanitize.cjs","sources":["../../../src/utils/sanitize.ts"],"sourcesContent":["export const tryParseJson = <T>(json: string | null): T | undefined => {\n if (!json) return undefined\n try {\n return JSON.parse(json)\n } catch (_e) {\n return undefined\n }\n}\n"],"names":[],"mappings":";;AAAa,MAAA,eAAe,CAAI,SAAuC;AACjE,MAAA,CAAC,KAAa,QAAA;AACd,MAAA;AACK,WAAA,KAAK,MAAM,IAAI;AAAA,WACf,IAAI;AACJ,WAAA;AAAA,EAAA;AAEX;;"}
1
+ {"version":3,"file":"sanitize.cjs","sources":["../../../src/utils/sanitize.ts"],"sourcesContent":["export const tryParseJson = <T>(json: string | null): T | undefined => {\n if (!json) return undefined\n try {\n return JSON.parse(json)\n } catch (_e) {\n return undefined\n }\n}\n\nexport const uppercaseFirstLetter = (value: string) =>\n value.charAt(0).toUpperCase() + value.slice(1)\n"],"names":[],"mappings":";;AAAO,MAAM,eAAe,CAAI,SAAuC;AACrE,MAAI,CAAC,KAAM,QAAO;AAClB,MAAI;AACF,WAAO,KAAK,MAAM,IAAI;AAAA,EACxB,SAAS,IAAI;AACX,WAAO;AAAA,EACT;AACF;AAEO,MAAM,uBAAuB,CAAC,UACnC,MAAM,OAAO,CAAC,EAAE,YAAA,IAAgB,MAAM,MAAM,CAAC;;;"}
@@ -1 +1,2 @@
1
1
  export declare const tryParseJson: <T>(json: string | null) => T | undefined;
2
+ export declare const uppercaseFirstLetter: (value: string) => string;
@@ -1 +1 @@
1
- {"version":3,"file":"storage.cjs","sources":["../../../src/utils/storage.ts"],"sourcesContent":["export const getStorageItem = (key: string) => localStorage.getItem(key)\nexport const setStorageItem = (key: string, value: string) => {\n try {\n localStorage.setItem(key, value)\n } catch (_e) {\n return\n }\n}\n\nexport const TANSTACK_DEVTOOLS = 'tanstack_devtools'\nexport const TANSTACK_DEVTOOLS_STATE = 'tanstack_devtools_state'\nexport const TANSTACK_DEVTOOLS_SETTINGS = 'tanstack_devtools_settings'\n"],"names":[],"mappings":";;AAAO,MAAM,iBAAiB,CAAC,QAAgB,aAAa,QAAQ,GAAG;AAC1D,MAAA,iBAAiB,CAAC,KAAa,UAAkB;AACxD,MAAA;AACW,iBAAA,QAAQ,KAAK,KAAK;AAAA,WACxB,IAAI;AACX;AAAA,EAAA;AAEJ;AAEO,MAAM,oBAAoB;AAC1B,MAAM,0BAA0B;AAChC,MAAM,6BAA6B;;;;;;"}
1
+ {"version":3,"file":"storage.cjs","sources":["../../../src/utils/storage.ts"],"sourcesContent":["export const getStorageItem = (key: string) => localStorage.getItem(key)\nexport const setStorageItem = (key: string, value: string) => {\n try {\n localStorage.setItem(key, value)\n } catch (_e) {\n return\n }\n}\n\nexport const TANSTACK_DEVTOOLS = 'tanstack_devtools'\nexport const TANSTACK_DEVTOOLS_STATE = 'tanstack_devtools_state'\nexport const TANSTACK_DEVTOOLS_SETTINGS = 'tanstack_devtools_settings'\n"],"names":[],"mappings":";;AAAO,MAAM,iBAAiB,CAAC,QAAgB,aAAa,QAAQ,GAAG;AAChE,MAAM,iBAAiB,CAAC,KAAa,UAAkB;AAC5D,MAAI;AACF,iBAAa,QAAQ,KAAK,KAAK;AAAA,EACjC,SAAS,IAAI;AACX;AAAA,EACF;AACF;AAEO,MAAM,oBAAoB;AAC1B,MAAM,0BAA0B;AAChC,MAAM,6BAA6B;;;;;;"}
@@ -0,0 +1,8 @@
1
+ interface CheckboxProps {
2
+ label?: string;
3
+ checked?: boolean;
4
+ onChange?: (checked: boolean) => void;
5
+ description?: string;
6
+ }
7
+ export declare function Checkbox(props: CheckboxProps): import("solid-js").JSX.Element;
8
+ export {};
@@ -0,0 +1,55 @@
1
+ import { template, insert, memo, effect, className, delegateEvents } from "solid-js/web";
2
+ import { createSignal } from "solid-js";
3
+ import { useStyles } from "../styles/use-styles.js";
4
+ var _tmpl$ = /* @__PURE__ */ template(`<div><label><input type=checkbox><div>`), _tmpl$2 = /* @__PURE__ */ template(`<span>`);
5
+ function Checkbox(props) {
6
+ const styles = useStyles();
7
+ const [isChecked, setIsChecked] = createSignal(props.checked || false);
8
+ const handleChange = (e) => {
9
+ const checked = e.target.checked;
10
+ setIsChecked(checked);
11
+ props.onChange?.(checked);
12
+ };
13
+ return (() => {
14
+ var _el$ = _tmpl$(), _el$2 = _el$.firstChild, _el$3 = _el$2.firstChild, _el$4 = _el$3.nextSibling;
15
+ _el$3.$$input = handleChange;
16
+ insert(_el$4, (() => {
17
+ var _c$ = memo(() => !!props.label);
18
+ return () => _c$() && (() => {
19
+ var _el$5 = _tmpl$2();
20
+ insert(_el$5, () => props.label);
21
+ effect(() => className(_el$5, styles().checkboxLabel));
22
+ return _el$5;
23
+ })();
24
+ })(), null);
25
+ insert(_el$4, (() => {
26
+ var _c$2 = memo(() => !!props.description);
27
+ return () => _c$2() && (() => {
28
+ var _el$6 = _tmpl$2();
29
+ insert(_el$6, () => props.description);
30
+ effect(() => className(_el$6, styles().checkboxDescription));
31
+ return _el$6;
32
+ })();
33
+ })(), null);
34
+ effect((_p$) => {
35
+ var _v$ = styles().checkboxContainer, _v$2 = styles().checkboxWrapper, _v$3 = styles().checkbox, _v$4 = styles().checkboxLabelContainer;
36
+ _v$ !== _p$.e && className(_el$, _p$.e = _v$);
37
+ _v$2 !== _p$.t && className(_el$2, _p$.t = _v$2);
38
+ _v$3 !== _p$.a && className(_el$3, _p$.a = _v$3);
39
+ _v$4 !== _p$.o && className(_el$4, _p$.o = _v$4);
40
+ return _p$;
41
+ }, {
42
+ e: void 0,
43
+ t: void 0,
44
+ a: void 0,
45
+ o: void 0
46
+ });
47
+ effect(() => _el$3.checked = isChecked());
48
+ return _el$;
49
+ })();
50
+ }
51
+ delegateEvents(["input"]);
52
+ export {
53
+ Checkbox
54
+ };
55
+ //# sourceMappingURL=checkbox.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"checkbox.js","sources":["../../../src/components/checkbox.tsx"],"sourcesContent":["import { createSignal } from 'solid-js'\nimport { useStyles } from '../styles/use-styles'\n\ninterface CheckboxProps {\n label?: string\n checked?: boolean\n onChange?: (checked: boolean) => void\n description?: string\n}\n\nexport function Checkbox(props: CheckboxProps) {\n const styles = useStyles()\n const [isChecked, setIsChecked] = createSignal(props.checked || false)\n\n const handleChange = (e: Event) => {\n const checked = (e.target as HTMLInputElement).checked\n setIsChecked(checked)\n props.onChange?.(checked)\n }\n\n return (\n <div class={styles().checkboxContainer}>\n <label class={styles().checkboxWrapper}>\n <input\n type=\"checkbox\"\n checked={isChecked()}\n class={styles().checkbox}\n onInput={handleChange}\n />\n <div class={styles().checkboxLabelContainer}>\n {props.label && (\n <span class={styles().checkboxLabel}>{props.label}</span>\n )}\n {props.description && (\n <span class={styles().checkboxDescription}>\n {props.description}\n </span>\n )}\n </div>\n </label>\n </div>\n )\n}\n"],"names":["Checkbox","props","styles","useStyles","isChecked","setIsChecked","createSignal","checked","handleChange","e","target","onChange","_el$","_tmpl$","_el$2","firstChild","_el$3","_el$4","nextSibling","$$input","_$insert","_c$","_$memo","label","_el$5","_tmpl$2","_$effect","_$className","checkboxLabel","_c$2","description","_el$6","checkboxDescription","_p$","_v$","checkboxContainer","_v$2","checkboxWrapper","_v$3","checkbox","_v$4","checkboxLabelContainer","t","a","o","undefined","_$delegateEvents"],"mappings":";;;;AAUO,SAASA,SAASC,OAAsB;AAC7C,QAAMC,SAASC,UAAAA;AACf,QAAM,CAACC,WAAWC,YAAY,IAAIC,aAAaL,MAAMM,WAAW,KAAK;AAErE,QAAMC,eAAeA,CAACC,MAAa;AACjC,UAAMF,UAAWE,EAAEC,OAA4BH;AAC/CF,iBAAaE,OAAO;AACpBN,UAAMU,WAAWJ,OAAO;AAAA,EAC1B;AAEA,UAAA,MAAA;AAAA,QAAAK,OAAAC,UAAAC,QAAAF,KAAAG,YAAAC,QAAAF,MAAAC,YAAAE,QAAAD,MAAAE;AAAAF,UAAAG,UAOiBX;AAAYY,WAAAH,QAAA,MAAA;AAAA,UAAAI,MAAAC,KAAA,MAAA,CAAA,CAGpBrB,MAAMsB,KAAK;AAAA,aAAA,MAAXF,IAAAA,MAAA,MAAA;AAAA,YAAAG,QAAAC,QAAAA;AAAAL,eAAAI,OAAA,MACuCvB,MAAMsB,KAAK;AAAAG,eAAA,MAAAC,UAAAH,OAApCtB,OAAAA,EAAS0B,aAAa,CAAA;AAAA,eAAAJ;AAAAA,MAAA,GAAA;AAAA,IACpC,GAAA,GAAA,IAAA;AAAAJ,WAAAH,QAAA,MAAA;AAAA,UAAAY,OAAAP,KAAA,MAAA,CAAA,CACArB,MAAM6B,WAAW;AAAA,aAAA,MAAjBD,KAAAA,MAAA,MAAA;AAAA,YAAAE,QAAAN,QAAAA;AAAAL,eAAAW,OAAA,MAEI9B,MAAM6B,WAAW;AAAAJ,eAAA,MAAAC,UAAAI,OADP7B,OAAAA,EAAS8B,mBAAmB,CAAA;AAAA,eAAAD;AAAAA,MAAA,GAAA;AAAA,IAG1C,GAAA,GAAA,IAAA;AAAAL,WAAAO,CAAAA,QAAA;AAAA,UAAAC,MAhBKhC,OAAAA,EAASiC,mBAAiBC,OACtBlC,OAAAA,EAASmC,iBAAeC,OAI3BpC,OAAAA,EAASqC,UAAQC,OAGdtC,SAASuC;AAAsBP,cAAAD,IAAAxB,KAAAkB,UAAAf,MAAAqB,IAAAxB,IAAAyB,GAAA;AAAAE,eAAAH,IAAAS,KAAAf,UAAAb,OAAAmB,IAAAS,IAAAN,IAAA;AAAAE,eAAAL,IAAAU,KAAAhB,UAAAX,OAAAiB,IAAAU,IAAAL,IAAA;AAAAE,eAAAP,IAAAW,KAAAjB,UAAAV,OAAAgB,IAAAW,IAAAJ,IAAA;AAAA,aAAAP;AAAAA,IAAA,GAAA;AAAA,MAAAxB,GAAAoC;AAAAA,MAAAH,GAAAG;AAAAA,MAAAF,GAAAE;AAAAA,MAAAD,GAAAC;AAAAA,IAAAA,CAAA;AAAAnB,iBAAAV,MAAAT,UAJhCH,UAAAA,CAAW;AAAA,WAAAQ;AAAAA,EAAA,GAAA;AAiB9B;AAACkC,eAAA,CAAA,OAAA,CAAA;"}
@@ -1,8 +1,12 @@
1
1
  import { template, use, insert, memo, addEventListener, effect, className, delegateEvents } from "solid-js/web";
2
+ import { useDevtoolsSettings } from "../context/use-devtools-context.js";
2
3
  import { useStyles } from "../styles/use-styles.js";
3
4
  var _tmpl$ = /* @__PURE__ */ template(`<div>`);
4
5
  const ContentPanel = (props) => {
5
6
  const styles = useStyles();
7
+ const {
8
+ settings
9
+ } = useDevtoolsSettings();
6
10
  return (() => {
7
11
  var _el$ = _tmpl$();
8
12
  var _ref$ = props.ref;
@@ -12,7 +16,7 @@ const ContentPanel = (props) => {
12
16
  return () => _c$() ? (() => {
13
17
  var _el$2 = _tmpl$();
14
18
  addEventListener(_el$2, "mousedown", props.handleDragStart, true);
15
- effect(() => className(_el$2, styles().dragHandle));
19
+ effect(() => className(_el$2, styles().dragHandle(settings().panelLocation)));
16
20
  return _el$2;
17
21
  })() : null;
18
22
  })(), null);
@@ -1 +1 @@
1
- {"version":3,"file":"content-panel.js","sources":["../../../src/components/content-panel.tsx"],"sourcesContent":["import { useStyles } from '../styles/use-styles'\nimport type { JSX } from 'solid-js/jsx-runtime'\n\nexport const ContentPanel = (props: {\n ref: (el: HTMLDivElement | undefined) => void\n children: JSX.Element\n handleDragStart?: (e: any) => void\n}) => {\n const styles = useStyles()\n return (\n <div ref={props.ref} class={styles().devtoolsPanel}>\n {props.handleDragStart ? (\n <div\n class={styles().dragHandle}\n onMouseDown={props.handleDragStart}\n ></div>\n ) : null}\n {props.children}\n </div>\n )\n}\n"],"names":["ContentPanel","props","styles","useStyles","_el$","_tmpl$","_ref$","ref","_$use","_$insert","_c$","_$memo","handleDragStart","_el$2","_$addEventListener","_$effect","_$className","dragHandle","children","devtoolsPanel","_$delegateEvents"],"mappings":";;;AAGaA,MAAAA,eAAeA,CAACC,UAIvB;AACJ,QAAMC,SAASC,UAAU;AACzB,UAAA,MAAA;AAAA,QAAAC,OAAAC,OAAA;AAAA,QAAAC,QACYL,MAAMM;AAAG,WAAAD,UAAA,aAAAE,IAAAF,OAAAF,IAAA,IAATH,MAAMM,MAAGH;AAAAK,WAAAL,OAAA,MAAA;AAAA,UAAAM,MAAAC,KAChBV,MAAAA,CAAAA,CAAAA,MAAMW,eAAe;AAAA,aAAA,MAArBF,IAAA,KAAA,MAAA;AAAA,YAAAG,QAAAR,OAAA;AAAAS,yBAAAD,OAGgBZ,aAAAA,MAAMW,iBAAe,IAAA;AAAAG,eAAA,MAAAC,UAAAH,OAD3BX,OAAO,EAAEe,UAAU,CAAA;AAAAJ,eAAAA;AAAAA,aAG1B;AAAA,IAAI,GAAA,GAAA,IAAA;AAAAJ,WAAAL,MACPH,MAAAA,MAAMiB,UAAQ,IAAA;AAAAH,WAAA,MAAAC,UAAAZ,MAPWF,OAAO,EAAEiB,aAAa,CAAA;AAAAf,WAAAA;AAAAA,EAAAA,GAAA;AAUtD;AAACgB,eAAA,CAAA,WAAA,CAAA;"}
1
+ {"version":3,"file":"content-panel.js","sources":["../../../src/components/content-panel.tsx"],"sourcesContent":["import { useDevtoolsSettings } from '../context/use-devtools-context'\nimport { useStyles } from '../styles/use-styles'\nimport type { JSX } from 'solid-js/jsx-runtime'\n\nexport const ContentPanel = (props: {\n ref: (el: HTMLDivElement | undefined) => void\n children: JSX.Element\n handleDragStart?: (e: any) => void\n}) => {\n const styles = useStyles()\n const { settings } = useDevtoolsSettings()\n return (\n <div ref={props.ref} class={styles().devtoolsPanel}>\n {props.handleDragStart ? (\n <div\n class={styles().dragHandle(settings().panelLocation)}\n onMouseDown={props.handleDragStart}\n ></div>\n ) : null}\n {props.children}\n </div>\n )\n}\n"],"names":["ContentPanel","props","styles","useStyles","settings","useDevtoolsSettings","_el$","_tmpl$","_ref$","ref","_$use","_$insert","_c$","_$memo","handleDragStart","_el$2","_$addEventListener","_$effect","_$className","dragHandle","panelLocation","children","devtoolsPanel","_$delegateEvents"],"mappings":";;;;AAIO,MAAMA,eAAeA,CAACC,UAIvB;AACJ,QAAMC,SAASC,UAAAA;AACf,QAAM;AAAA,IAAEC;AAAAA,EAAAA,IAAaC,oBAAAA;AACrB,UAAA,MAAA;AAAA,QAAAC,OAAAC,OAAAA;AAAA,QAAAC,QACYP,MAAMQ;AAAG,WAAAD,UAAA,aAAAE,IAAAF,OAAAF,IAAA,IAATL,MAAMQ,MAAGH;AAAAK,WAAAL,OAAA,MAAA;AAAA,UAAAM,MAAAC,KAAA,MAAA,CAAA,CAChBZ,MAAMa,eAAe;AAAA,aAAA,MAArBF,IAAAA,KAAA,MAAA;AAAA,YAAAG,QAAAR,OAAAA;AAAAS,yBAAAD,OAAA,aAGgBd,MAAMa,iBAAe,IAAA;AAAAG,qBAAAC,UAAAH,OAD3Bb,OAAAA,EAASiB,WAAWf,SAAAA,EAAWgB,aAAa,CAAC,CAAA;AAAA,eAAAL;AAAAA,MAAA,OAGpD;AAAA,IAAI,GAAA,GAAA,IAAA;AAAAJ,WAAAL,MAAA,MACPL,MAAMoB,UAAQ,IAAA;AAAAJ,WAAA,MAAAC,UAAAZ,MAPWJ,OAAAA,EAASoB,aAAa,CAAA;AAAA,WAAAhB;AAAAA,EAAA,GAAA;AAUtD;AAACiB,eAAA,CAAA,WAAA,CAAA;"}
@@ -0,0 +1,10 @@
1
+ interface InputProps {
2
+ label?: string;
3
+ type?: 'text' | 'number' | 'password' | 'email';
4
+ value?: string;
5
+ placeholder?: string;
6
+ onChange?: (value: string) => void;
7
+ description?: string;
8
+ }
9
+ export declare function Input(props: InputProps): import("solid-js").JSX.Element;
10
+ export {};
@@ -0,0 +1,57 @@
1
+ import { template, insert, memo, effect, className, setAttribute, delegateEvents } from "solid-js/web";
2
+ import { createSignal } from "solid-js";
3
+ import { useStyles } from "../styles/use-styles.js";
4
+ var _tmpl$ = /* @__PURE__ */ template(`<div><div><input>`), _tmpl$2 = /* @__PURE__ */ template(`<label>`), _tmpl$3 = /* @__PURE__ */ template(`<p>`);
5
+ function Input(props) {
6
+ const styles = useStyles();
7
+ const [val, setVal] = createSignal(props.value || "");
8
+ const handleChange = (e) => {
9
+ const value = e.target.value;
10
+ setVal((prev) => prev !== value ? value : prev);
11
+ props.onChange?.(value);
12
+ };
13
+ return (() => {
14
+ var _el$ = _tmpl$(), _el$2 = _el$.firstChild, _el$3 = _el$2.firstChild;
15
+ insert(_el$2, (() => {
16
+ var _c$ = memo(() => !!props.label);
17
+ return () => _c$() && (() => {
18
+ var _el$4 = _tmpl$2();
19
+ insert(_el$4, () => props.label);
20
+ effect(() => className(_el$4, styles().inputLabel));
21
+ return _el$4;
22
+ })();
23
+ })(), _el$3);
24
+ insert(_el$2, (() => {
25
+ var _c$2 = memo(() => !!props.description);
26
+ return () => _c$2() && (() => {
27
+ var _el$5 = _tmpl$3();
28
+ insert(_el$5, () => props.description);
29
+ effect(() => className(_el$5, styles().inputDescription));
30
+ return _el$5;
31
+ })();
32
+ })(), _el$3);
33
+ _el$3.$$input = handleChange;
34
+ effect((_p$) => {
35
+ var _v$ = styles().inputContainer, _v$2 = styles().inputWrapper, _v$3 = props.type || "text", _v$4 = styles().input, _v$5 = props.placeholder;
36
+ _v$ !== _p$.e && className(_el$, _p$.e = _v$);
37
+ _v$2 !== _p$.t && className(_el$2, _p$.t = _v$2);
38
+ _v$3 !== _p$.a && setAttribute(_el$3, "type", _p$.a = _v$3);
39
+ _v$4 !== _p$.o && className(_el$3, _p$.o = _v$4);
40
+ _v$5 !== _p$.i && setAttribute(_el$3, "placeholder", _p$.i = _v$5);
41
+ return _p$;
42
+ }, {
43
+ e: void 0,
44
+ t: void 0,
45
+ a: void 0,
46
+ o: void 0,
47
+ i: void 0
48
+ });
49
+ effect(() => _el$3.value = val());
50
+ return _el$;
51
+ })();
52
+ }
53
+ delegateEvents(["input"]);
54
+ export {
55
+ Input
56
+ };
57
+ //# sourceMappingURL=input.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"input.js","sources":["../../../src/components/input.tsx"],"sourcesContent":["import { createSignal } from 'solid-js'\nimport { useStyles } from '../styles/use-styles'\n\ninterface InputProps {\n label?: string\n type?: 'text' | 'number' | 'password' | 'email'\n value?: string\n placeholder?: string\n onChange?: (value: string) => void\n description?: string\n}\n\nexport function Input(props: InputProps) {\n const styles = useStyles()\n const [val, setVal] = createSignal(props.value || '')\n\n const handleChange = (e: Event) => {\n const value = (e.target as HTMLInputElement).value\n setVal((prev) => (prev !== value ? value : prev))\n props.onChange?.(value)\n }\n\n return (\n <div class={styles().inputContainer}>\n <div class={styles().inputWrapper}>\n {props.label && (\n <label class={styles().inputLabel}>{props.label}</label>\n )}\n {props.description && (\n <p class={styles().inputDescription}>{props.description}</p>\n )}\n <input\n type={props.type || 'text'}\n class={styles().input}\n value={val()}\n placeholder={props.placeholder}\n onInput={handleChange}\n />\n </div>\n </div>\n )\n}\n"],"names":["Input","props","styles","useStyles","val","setVal","createSignal","value","handleChange","e","target","prev","onChange","_el$","_tmpl$","_el$2","firstChild","_el$3","_$insert","_c$","_$memo","label","_el$4","_tmpl$2","_$effect","_$className","inputLabel","_c$2","description","_el$5","_tmpl$3","inputDescription","$$input","_p$","_v$","inputContainer","_v$2","inputWrapper","_v$3","type","_v$4","input","_v$5","placeholder","t","a","_$setAttribute","o","i","undefined","_$delegateEvents"],"mappings":";;;;AAYO,SAASA,MAAMC,OAAmB;AACvC,QAAMC,SAASC,UAAAA;AACf,QAAM,CAACC,KAAKC,MAAM,IAAIC,aAAaL,MAAMM,SAAS,EAAE;AAEpD,QAAMC,eAAeA,CAACC,MAAa;AACjC,UAAMF,QAASE,EAAEC,OAA4BH;AAC7CF,WAAQM,CAAAA,SAAUA,SAASJ,QAAQA,QAAQI,IAAK;AAChDV,UAAMW,WAAWL,KAAK;AAAA,EACxB;AAEA,UAAA,MAAA;AAAA,QAAAM,OAAAC,OAAAA,GAAAC,QAAAF,KAAAG,YAAAC,QAAAF,MAAAC;AAAAE,WAAAH,QAAA,MAAA;AAAA,UAAAI,MAAAC,KAAA,MAAA,CAAA,CAGOnB,MAAMoB,KAAK;AAAA,aAAA,MAAXF,IAAAA,MAAA,MAAA;AAAA,YAAAG,QAAAC,QAAAA;AAAAL,eAAAI,OAAA,MACqCrB,MAAMoB,KAAK;AAAAG,eAAA,MAAAC,UAAAH,OAAjCpB,OAAAA,EAASwB,UAAU,CAAA;AAAA,eAAAJ;AAAAA,MAAA,GAAA;AAAA,IAClC,GAAA,GAAAL,KAAA;AAAAC,WAAAH,QAAA,MAAA;AAAA,UAAAY,OAAAP,KAAA,MAAA,CAAA,CACAnB,MAAM2B,WAAW;AAAA,aAAA,MAAjBD,KAAAA,MAAA,MAAA;AAAA,YAAAE,QAAAC,QAAAA;AAAAZ,eAAAW,OAAA,MACuC5B,MAAM2B,WAAW;AAAAJ,eAAA,MAAAC,UAAAI,OAA7C3B,OAAAA,EAAS6B,gBAAgB,CAAA;AAAA,eAAAF;AAAAA,MAAA,GAAA;AAAA,IACpC,GAAA,GAAAZ,KAAA;AAAAA,UAAAe,UAMUxB;AAAYgB,WAAAS,CAAAA,QAAA;AAAA,UAAAC,MAbfhC,SAASiC,gBAAcC,OACrBlC,SAASmC,cAAYC,OAQvBrC,MAAMsC,QAAQ,QAAMC,OACnBtC,SAASuC,OAAKC,OAERzC,MAAM0C;AAAWT,cAAAD,IAAAxB,KAAAgB,UAAAZ,MAAAoB,IAAAxB,IAAAyB,GAAA;AAAAE,eAAAH,IAAAW,KAAAnB,UAAAV,OAAAkB,IAAAW,IAAAR,IAAA;AAAAE,eAAAL,IAAAY,KAAAC,aAAA7B,OAAA,QAAAgB,IAAAY,IAAAP,IAAA;AAAAE,eAAAP,IAAAc,KAAAtB,UAAAR,OAAAgB,IAAAc,IAAAP,IAAA;AAAAE,eAAAT,IAAAe,KAAAF,aAAA7B,OAAA,eAAAgB,IAAAe,IAAAN,IAAA;AAAA,aAAAT;AAAAA,IAAA,GAAA;AAAA,MAAAxB,GAAAwC;AAAAA,MAAAL,GAAAK;AAAAA,MAAAJ,GAAAI;AAAAA,MAAAF,GAAAE;AAAAA,MAAAD,GAAAC;AAAAA,IAAAA,CAAA;AAAAzB,iBAAAP,MAAAV,QADvBH,IAAAA,CAAK;AAAA,WAAAS;AAAAA,EAAA,GAAA;AAOtB;AAACqC,eAAA,CAAA,OAAA,CAAA;"}