@tanstack/pacer-devtools 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 (69) hide show
  1. package/README.md +165 -0
  2. package/dist/PacerContextProvider.js +142 -0
  3. package/dist/PacerContextProvider.js.map +1 -0
  4. package/dist/PacerDevtools.js +14 -0
  5. package/dist/PacerDevtools.js.map +1 -0
  6. package/dist/components/ActionButtons.js +154 -0
  7. package/dist/components/ActionButtons.js.map +1 -0
  8. package/dist/components/DetailsPanel.js +76 -0
  9. package/dist/components/DetailsPanel.js.map +1 -0
  10. package/dist/components/Shell.js +107 -0
  11. package/dist/components/Shell.js.map +1 -0
  12. package/dist/components/StateHeader.js +85 -0
  13. package/dist/components/StateHeader.js.map +1 -0
  14. package/dist/components/UtilList.js +72 -0
  15. package/dist/components/UtilList.js.map +1 -0
  16. package/dist/components/util-groups.js +57 -0
  17. package/dist/components/util-groups.js.map +1 -0
  18. package/dist/core.d.ts +20 -0
  19. package/dist/core.js +9 -0
  20. package/dist/core.js.map +1 -0
  21. package/dist/index.d.ts +14 -0
  22. package/dist/index.js +10 -0
  23. package/dist/index.js.map +1 -0
  24. package/dist/production.d.ts +2 -0
  25. package/dist/production.js +5 -0
  26. package/dist/styles/tokens.js +301 -0
  27. package/dist/styles/tokens.js.map +1 -0
  28. package/dist/{esm/styles → styles}/use-styles.js +60 -61
  29. package/dist/styles/use-styles.js.map +1 -0
  30. package/package.json +17 -27
  31. package/src/components/DetailsPanel.tsx +2 -2
  32. package/dist/esm/PacerContextProvider.d.ts +0 -19
  33. package/dist/esm/PacerContextProvider.js +0 -156
  34. package/dist/esm/PacerContextProvider.js.map +0 -1
  35. package/dist/esm/PacerDevtools.d.ts +0 -1
  36. package/dist/esm/PacerDevtools.js +0 -14
  37. package/dist/esm/PacerDevtools.js.map +0 -1
  38. package/dist/esm/components/ActionButtons.d.ts +0 -6
  39. package/dist/esm/components/ActionButtons.js +0 -157
  40. package/dist/esm/components/ActionButtons.js.map +0 -1
  41. package/dist/esm/components/DetailsPanel.d.ts +0 -11
  42. package/dist/esm/components/DetailsPanel.js +0 -80
  43. package/dist/esm/components/DetailsPanel.js.map +0 -1
  44. package/dist/esm/components/Shell.d.ts +0 -1
  45. package/dist/esm/components/Shell.js +0 -111
  46. package/dist/esm/components/Shell.js.map +0 -1
  47. package/dist/esm/components/StateHeader.d.ts +0 -11
  48. package/dist/esm/components/StateHeader.js +0 -92
  49. package/dist/esm/components/StateHeader.js.map +0 -1
  50. package/dist/esm/components/UtilList.d.ts +0 -8
  51. package/dist/esm/components/UtilList.js +0 -70
  52. package/dist/esm/components/UtilList.js.map +0 -1
  53. package/dist/esm/components/util-groups.d.ts +0 -8
  54. package/dist/esm/components/util-groups.js +0 -40
  55. package/dist/esm/components/util-groups.js.map +0 -1
  56. package/dist/esm/core.d.ts +0 -18
  57. package/dist/esm/core.js +0 -9
  58. package/dist/esm/core.js.map +0 -1
  59. package/dist/esm/index.d.ts +0 -9
  60. package/dist/esm/index.js +0 -7
  61. package/dist/esm/index.js.map +0 -1
  62. package/dist/esm/production.d.ts +0 -2
  63. package/dist/esm/production.js +0 -6
  64. package/dist/esm/production.js.map +0 -1
  65. package/dist/esm/styles/tokens.d.ts +0 -298
  66. package/dist/esm/styles/tokens.js +0 -94
  67. package/dist/esm/styles/tokens.js.map +0 -1
  68. package/dist/esm/styles/use-styles.d.ts +0 -40
  69. package/dist/esm/styles/use-styles.js.map +0 -1
@@ -1 +0,0 @@
1
- {"version":3,"file":"DetailsPanel.js","sources":["../../../src/components/DetailsPanel.tsx"],"sourcesContent":["import { JsonTree } from '@tanstack/devtools-ui'\nimport { useStyles } from '../styles/use-styles'\nimport { ActionButtons } from './ActionButtons'\nimport { StateHeader } from './StateHeader'\n\ntype DetailsPanelProps = {\n selectedInstance: () => { instance: any; type: string } | null\n utilState: () => { lastUpdatedByKey: Record<string, number> }\n}\n\nexport function DetailsPanel(props: DetailsPanelProps) {\n const styles = useStyles()\n\n return (\n <div class={styles().stateDetails}>\n {(() => {\n const entry = props.selectedInstance()\n if (!entry) {\n return (\n <div class={styles().noSelection}>\n Select a util from the left panel to view its state\n </div>\n )\n }\n\n return (\n <>\n <StateHeader\n selectedInstance={props.selectedInstance}\n utilState={props.utilState}\n />\n\n <div class={styles().detailsGrid}>\n <div class={styles().detailSection}>\n <div class={styles().detailSectionHeader}>Actions</div>\n <ActionButtons\n instance={entry.instance}\n utilName={entry.type}\n />\n </div>\n\n <div class={styles().detailSection}>\n <div class={styles().detailSectionHeader}>State</div>\n <div class={styles().stateContent}>\n <JsonTree value={entry.instance.store?.state} />\n </div>\n </div>\n\n <div class={styles().detailSection}>\n <div class={styles().detailSectionHeader}>Options</div>\n <div class={styles().stateContent}>\n <JsonTree value={entry.instance.options} />\n </div>\n </div>\n </div>\n </>\n )\n })()}\n </div>\n )\n}\n"],"names":["DetailsPanel","props","styles","useStyles","_el$","_tmpl$","_$insert","entry","selectedInstance","_el$2","_tmpl$2","_$effect","_$className","noSelection","_$createComponent","StateHeader","utilState","_el$3","_tmpl$3","_el$4","firstChild","_el$5","_el$6","nextSibling","_el$7","_el$8","_el$9","_el$0","_el$1","ActionButtons","instance","utilName","type","JsonTree","value","store","state","options","_p$","_v$","detailsGrid","_v$2","detailSection","_v$3","detailSectionHeader","_v$4","_v$5","_v$6","stateContent","_v$7","_v$8","_v$9","e","t","a","o","i","n","s","h","r","undefined","stateDetails"],"mappings":"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"}
@@ -1 +0,0 @@
1
- export declare function Shell(): import("solid-js").JSX.Element;
@@ -1,111 +0,0 @@
1
- import { createComponent, template, insert, setStyleProperty, effect, className, delegateEvents } from "solid-js/web";
2
- import { createSignal, createMemo, onMount, onCleanup } from "solid-js";
3
- import { MainPanel, Header, HeaderLogo } from "@tanstack/devtools-ui";
4
- import { useStyles } from "../styles/use-styles.js";
5
- import { usePacerDevtoolsState } from "../PacerContextProvider.js";
6
- import { UTIL_GROUPS } from "./util-groups.js";
7
- import { UtilList } from "./UtilList.js";
8
- import { DetailsPanel } from "./DetailsPanel.js";
9
- var _tmpl$ = /* @__PURE__ */ template(`<div><div style=min-width:150px;max-width:800px></div><div></div><div><div>Details`);
10
- function Shell() {
11
- const styles = useStyles();
12
- const state = usePacerDevtoolsState();
13
- const utilState = () => state;
14
- const [selectedKey, setSelectedKey] = createSignal(null);
15
- const [leftPanelWidth, setLeftPanelWidth] = createSignal(300);
16
- const [isDragging, setIsDragging] = createSignal(false);
17
- const selectedInstance = createMemo(() => {
18
- const key = selectedKey();
19
- if (!key) return null;
20
- for (const group of UTIL_GROUPS) {
21
- const instance = utilState()[group.key].find((inst) => inst.key === key);
22
- if (instance) return {
23
- instance,
24
- type: group.displayName
25
- };
26
- }
27
- return null;
28
- });
29
- let dragStartX = 0;
30
- let dragStartWidth = 0;
31
- const handleMouseDown = (e) => {
32
- e.preventDefault();
33
- e.stopPropagation();
34
- setIsDragging(true);
35
- document.body.style.cursor = "col-resize";
36
- document.body.style.userSelect = "none";
37
- dragStartX = e.clientX;
38
- dragStartWidth = leftPanelWidth();
39
- };
40
- const handleMouseMove = (e) => {
41
- if (!isDragging()) return;
42
- e.preventDefault();
43
- const deltaX = e.clientX - dragStartX;
44
- const newWidth = Math.max(150, Math.min(800, dragStartWidth + deltaX));
45
- setLeftPanelWidth(newWidth);
46
- };
47
- const handleMouseUp = () => {
48
- setIsDragging(false);
49
- document.body.style.cursor = "";
50
- document.body.style.userSelect = "";
51
- };
52
- onMount(() => {
53
- document.addEventListener("mousemove", handleMouseMove);
54
- document.addEventListener("mouseup", handleMouseUp);
55
- });
56
- onCleanup(() => {
57
- document.removeEventListener("mousemove", handleMouseMove);
58
- document.removeEventListener("mouseup", handleMouseUp);
59
- });
60
- return createComponent(MainPanel, {
61
- get children() {
62
- return [createComponent(Header, {
63
- get children() {
64
- return createComponent(HeaderLogo, {
65
- flavor: {
66
- light: "#84cc16",
67
- dark: "#84cc16"
68
- },
69
- children: "TanStack Pacer"
70
- });
71
- }
72
- }), (() => {
73
- var _el$ = _tmpl$(), _el$2 = _el$.firstChild, _el$3 = _el$2.nextSibling, _el$4 = _el$3.nextSibling, _el$5 = _el$4.firstChild;
74
- insert(_el$2, createComponent(UtilList, {
75
- selectedKey,
76
- setSelectedKey,
77
- utilState
78
- }));
79
- _el$3.$$mousedown = handleMouseDown;
80
- setStyleProperty(_el$4, "flex", "1");
81
- insert(_el$4, createComponent(DetailsPanel, {
82
- selectedInstance,
83
- utilState
84
- }), null);
85
- effect((_p$) => {
86
- var _v$ = styles().mainContainer, _v$2 = styles().leftPanel, _v$3 = `${leftPanelWidth()}px`, _v$4 = `${styles().dragHandle} ${isDragging() ? "dragging" : ""}`, _v$5 = styles().rightPanel, _v$6 = styles().panelHeader;
87
- _v$ !== _p$.e && className(_el$, _p$.e = _v$);
88
- _v$2 !== _p$.t && className(_el$2, _p$.t = _v$2);
89
- _v$3 !== _p$.a && setStyleProperty(_el$2, "width", _p$.a = _v$3);
90
- _v$4 !== _p$.o && className(_el$3, _p$.o = _v$4);
91
- _v$5 !== _p$.i && className(_el$4, _p$.i = _v$5);
92
- _v$6 !== _p$.n && className(_el$5, _p$.n = _v$6);
93
- return _p$;
94
- }, {
95
- e: void 0,
96
- t: void 0,
97
- a: void 0,
98
- o: void 0,
99
- i: void 0,
100
- n: void 0
101
- });
102
- return _el$;
103
- })()];
104
- }
105
- });
106
- }
107
- delegateEvents(["mousedown"]);
108
- export {
109
- Shell
110
- };
111
- //# sourceMappingURL=Shell.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"Shell.js","sources":["../../../src/components/Shell.tsx"],"sourcesContent":["import { createMemo, createSignal, onCleanup, onMount } from 'solid-js'\nimport { Header, HeaderLogo, MainPanel } from '@tanstack/devtools-ui'\nimport { useStyles } from '../styles/use-styles'\nimport { usePacerDevtoolsState } from '../PacerContextProvider'\nimport { UTIL_GROUPS } from './util-groups'\nimport { UtilList } from './UtilList'\nimport { DetailsPanel } from './DetailsPanel'\nimport type { StateKey } from './util-groups'\n\nexport function Shell() {\n const styles = useStyles()\n const state = usePacerDevtoolsState()\n const utilState = () => state\n const [selectedKey, setSelectedKey] = createSignal<string | null>(null)\n const [leftPanelWidth, setLeftPanelWidth] = createSignal(300)\n const [isDragging, setIsDragging] = createSignal(false)\n\n const selectedInstance = createMemo(() => {\n const key = selectedKey()\n if (!key) return null\n for (const group of UTIL_GROUPS) {\n const instance = (utilState() as unknown as Record<StateKey, Array<any>>)[\n group.key\n ].find((inst) => inst.key === key)\n if (instance) return { instance, type: group.displayName }\n }\n return null\n })\n\n let dragStartX = 0\n let dragStartWidth = 0\n\n const handleMouseDown = (e: MouseEvent) => {\n e.preventDefault()\n e.stopPropagation()\n setIsDragging(true)\n document.body.style.cursor = 'col-resize'\n document.body.style.userSelect = 'none'\n dragStartX = e.clientX\n dragStartWidth = leftPanelWidth()\n }\n\n const handleMouseMove = (e: MouseEvent) => {\n if (!isDragging()) return\n\n e.preventDefault()\n const deltaX = e.clientX - dragStartX\n const newWidth = Math.max(150, Math.min(800, dragStartWidth + deltaX))\n setLeftPanelWidth(newWidth)\n }\n\n const handleMouseUp = () => {\n setIsDragging(false)\n document.body.style.cursor = ''\n document.body.style.userSelect = ''\n }\n\n onMount(() => {\n document.addEventListener('mousemove', handleMouseMove)\n document.addEventListener('mouseup', handleMouseUp)\n })\n\n onCleanup(() => {\n document.removeEventListener('mousemove', handleMouseMove)\n document.removeEventListener('mouseup', handleMouseUp)\n })\n\n return (\n <MainPanel>\n <Header>\n <HeaderLogo flavor={{ light: '#84cc16', dark: '#84cc16' }}>\n TanStack Pacer\n </HeaderLogo>\n </Header>\n\n <div class={styles().mainContainer}>\n <div\n class={styles().leftPanel}\n style={{\n width: `${leftPanelWidth()}px`,\n 'min-width': '150px',\n 'max-width': '800px',\n }}\n >\n <UtilList\n selectedKey={selectedKey}\n setSelectedKey={setSelectedKey}\n utilState={utilState}\n />\n </div>\n\n <div\n class={`${styles().dragHandle} ${isDragging() ? 'dragging' : ''}`}\n onMouseDown={handleMouseDown}\n />\n\n <div class={styles().rightPanel} style={{ flex: 1 }}>\n <div class={styles().panelHeader}>Details</div>\n <DetailsPanel\n selectedInstance={selectedInstance}\n utilState={utilState}\n />\n </div>\n </div>\n </MainPanel>\n )\n}\n"],"names":["Shell","styles","useStyles","state","usePacerDevtoolsState","utilState","selectedKey","setSelectedKey","createSignal","leftPanelWidth","setLeftPanelWidth","isDragging","setIsDragging","selectedInstance","createMemo","key","group","UTIL_GROUPS","instance","find","inst","type","displayName","dragStartX","dragStartWidth","handleMouseDown","e","preventDefault","stopPropagation","document","body","style","cursor","userSelect","clientX","handleMouseMove","deltaX","newWidth","Math","max","min","handleMouseUp","onMount","addEventListener","onCleanup","removeEventListener","_$createComponent","MainPanel","children","Header","HeaderLogo","flavor","light","dark","_el$","_tmpl$","_el$2","firstChild","_el$3","nextSibling","_el$4","_el$5","_$insert","UtilList","$$mousedown","_$setStyleProperty","DetailsPanel","_$effect","_p$","_v$","mainContainer","_v$2","leftPanel","_v$3","_v$4","dragHandle","_v$5","rightPanel","_v$6","panelHeader","_$className","t","a","o","i","n","undefined","_$delegateEvents"],"mappings":"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"}
@@ -1,11 +0,0 @@
1
- type StateHeaderProps = {
2
- selectedInstance: () => {
3
- instance: any;
4
- type: string;
5
- } | null;
6
- utilState: () => {
7
- lastUpdatedByKey: Record<string, number>;
8
- };
9
- };
10
- export declare function StateHeader(props: StateHeaderProps): import("solid-js").JSX.Element;
11
- export {};
@@ -1,92 +0,0 @@
1
- import { template, insert, setStyleProperty, effect, className } from "solid-js/web";
2
- import dayjs from "dayjs";
3
- import relativeTime from "dayjs/plugin/relativeTime";
4
- import { createSignal, onMount, onCleanup } from "solid-js";
5
- import { useStyles } from "../styles/use-styles.js";
6
- var _tmpl$ = /* @__PURE__ */ template(`<div><div></div><div style=align-items:center><div><div>Key</div><div></div><div>Last Updated</div><div> (<!>)</div></div><div style=margin-left:auto;font-weight:bold>% reduction`);
7
- dayjs.extend(relativeTime);
8
- function StateHeader(props) {
9
- const styles = useStyles();
10
- const [now, setNow] = createSignal(Date.now());
11
- onMount(() => {
12
- const interval = setInterval(() => {
13
- setNow(Date.now());
14
- }, 1e3);
15
- onCleanup(() => {
16
- clearInterval(interval);
17
- });
18
- });
19
- const entry = props.selectedInstance();
20
- if (!entry) return null;
21
- const key = entry.instance.key;
22
- const updatedAt = props.utilState().lastUpdatedByKey[key] ?? Date.now();
23
- const getRelativeTime = () => {
24
- const diffMs = now() - updatedAt;
25
- const diffSeconds = Math.floor(diffMs / 1e3);
26
- if (diffSeconds < 60) {
27
- return `${diffSeconds} second${diffSeconds !== 1 ? "s" : ""} ago`;
28
- }
29
- return dayjs(updatedAt).fromNow();
30
- };
31
- const getReductionPercentage = () => {
32
- const state = entry.instance.store?.state || entry.instance.state;
33
- if (!state) return 0;
34
- const isAsync = entry.type.toLowerCase().includes("async");
35
- const completedExecutions = isAsync ? state.settleCount || 0 : state.executionCount || 0;
36
- if (entry.type.toLowerCase().includes("batcher")) {
37
- const totalItemsProcessed = state.totalItemsProcessed || 0;
38
- if (totalItemsProcessed === 0) return 0;
39
- return Math.round((totalItemsProcessed - completedExecutions) / totalItemsProcessed * 100);
40
- }
41
- let requestCount = 0;
42
- if (state.maybeExecuteCount !== void 0) {
43
- requestCount = state.maybeExecuteCount;
44
- } else if (state.addItemCount !== void 0) {
45
- requestCount = state.addItemCount;
46
- } else {
47
- return 0;
48
- }
49
- if (requestCount === 0) return 0;
50
- const reduction = requestCount - completedExecutions;
51
- return Math.round(reduction / requestCount * 100);
52
- };
53
- const reductionPercentage = getReductionPercentage();
54
- return (() => {
55
- var _el$ = _tmpl$(), _el$2 = _el$.firstChild, _el$3 = _el$2.nextSibling, _el$4 = _el$3.firstChild, _el$5 = _el$4.firstChild, _el$6 = _el$5.nextSibling, _el$7 = _el$6.nextSibling, _el$8 = _el$7.nextSibling, _el$9 = _el$8.firstChild, _el$1 = _el$9.nextSibling;
56
- _el$1.nextSibling;
57
- var _el$10 = _el$4.nextSibling, _el$11 = _el$10.firstChild;
58
- insert(_el$2, () => entry.type);
59
- setStyleProperty(_el$3, "display", "flex");
60
- setStyleProperty(_el$3, "gap", "16px");
61
- insert(_el$6, key);
62
- insert(_el$8, () => new Date(updatedAt).toLocaleTimeString(), _el$9);
63
- insert(_el$8, getRelativeTime, _el$1);
64
- insert(_el$10, reductionPercentage, _el$11);
65
- effect((_p$) => {
66
- var _v$ = styles().stateHeader, _v$2 = styles().stateTitle, _v$3 = styles().infoGrid, _v$4 = styles().infoLabel, _v$5 = styles().infoValueMono, _v$6 = styles().infoLabel, _v$7 = styles().infoValueMono, _v$8 = styles().infoValueMono;
67
- _v$ !== _p$.e && className(_el$, _p$.e = _v$);
68
- _v$2 !== _p$.t && className(_el$2, _p$.t = _v$2);
69
- _v$3 !== _p$.a && className(_el$4, _p$.a = _v$3);
70
- _v$4 !== _p$.o && className(_el$5, _p$.o = _v$4);
71
- _v$5 !== _p$.i && className(_el$6, _p$.i = _v$5);
72
- _v$6 !== _p$.n && className(_el$7, _p$.n = _v$6);
73
- _v$7 !== _p$.s && className(_el$8, _p$.s = _v$7);
74
- _v$8 !== _p$.h && className(_el$10, _p$.h = _v$8);
75
- return _p$;
76
- }, {
77
- e: void 0,
78
- t: void 0,
79
- a: void 0,
80
- o: void 0,
81
- i: void 0,
82
- n: void 0,
83
- s: void 0,
84
- h: void 0
85
- });
86
- return _el$;
87
- })();
88
- }
89
- export {
90
- StateHeader
91
- };
92
- //# sourceMappingURL=StateHeader.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"StateHeader.js","sources":["../../../src/components/StateHeader.tsx"],"sourcesContent":["import dayjs from 'dayjs'\nimport relativeTime from 'dayjs/plugin/relativeTime'\nimport { createSignal, onCleanup, onMount } from 'solid-js'\nimport { useStyles } from '../styles/use-styles'\n\ndayjs.extend(relativeTime)\n\ntype StateHeaderProps = {\n selectedInstance: () => { instance: any; type: string } | null\n utilState: () => { lastUpdatedByKey: Record<string, number> }\n}\n\nexport function StateHeader(props: StateHeaderProps) {\n const styles = useStyles()\n const [now, setNow] = createSignal(Date.now())\n\n onMount(() => {\n const interval = setInterval(() => {\n setNow(Date.now())\n }, 1000)\n\n onCleanup(() => {\n clearInterval(interval)\n })\n })\n\n const entry = props.selectedInstance()\n if (!entry) return null\n\n const key = entry.instance.key as string\n const updatedAt = props.utilState().lastUpdatedByKey[key] ?? Date.now()\n\n const getRelativeTime = () => {\n const diffMs = now() - updatedAt\n const diffSeconds = Math.floor(diffMs / 1000)\n\n if (diffSeconds < 60) {\n return `${diffSeconds} second${diffSeconds !== 1 ? 's' : ''} ago`\n }\n\n return dayjs(updatedAt).fromNow()\n }\n\n const getReductionPercentage = () => {\n const state = entry.instance.store?.state || entry.instance.state\n\n if (!state) return 0\n\n // Use settleCount for async utilities, executionCount for sync utilities\n const isAsync = entry.type.toLowerCase().includes('async')\n const completedExecutions = isAsync\n ? state.settleCount || 0\n : state.executionCount || 0\n\n // For batchers, calculate reduction based on items processed vs executions\n if (entry.type.toLowerCase().includes('batcher')) {\n const totalItemsProcessed = state.totalItemsProcessed || 0\n if (totalItemsProcessed === 0) return 0\n return Math.round(\n ((totalItemsProcessed - completedExecutions) / totalItemsProcessed) *\n 100,\n )\n }\n\n // For other utilities, calculate reduction based on request tracking\n let requestCount = 0\n\n if (state.maybeExecuteCount !== undefined) {\n requestCount = state.maybeExecuteCount\n } else if (state.addItemCount !== undefined) {\n requestCount = state.addItemCount\n } else {\n // For utilities that don't track requests, show 0%\n return 0\n }\n\n if (requestCount === 0) return 0\n\n const reduction = requestCount - completedExecutions\n return Math.round((reduction / requestCount) * 100)\n }\n\n const reductionPercentage = getReductionPercentage()\n\n return (\n <div class={styles().stateHeader}>\n <div class={styles().stateTitle}>{entry.type}</div>\n <div style={{ display: 'flex', 'align-items': 'center', gap: '16px' }}>\n <div class={styles().infoGrid}>\n <div class={styles().infoLabel}>Key</div>\n <div class={styles().infoValueMono}>{key}</div>\n <div class={styles().infoLabel}>Last Updated</div>\n <div class={styles().infoValueMono}>\n {new Date(updatedAt).toLocaleTimeString()} ({getRelativeTime()})\n </div>\n </div>\n <div\n class={styles().infoValueMono}\n style={{ 'margin-left': 'auto', 'font-weight': 'bold' }}\n >\n {reductionPercentage}% reduction\n </div>\n </div>\n </div>\n )\n}\n"],"names":["dayjs","extend","relativeTime","StateHeader","props","styles","useStyles","now","setNow","createSignal","Date","onMount","interval","setInterval","onCleanup","clearInterval","entry","selectedInstance","key","instance","updatedAt","utilState","lastUpdatedByKey","getRelativeTime","diffMs","diffSeconds","Math","floor","fromNow","getReductionPercentage","state","store","isAsync","type","toLowerCase","includes","completedExecutions","settleCount","executionCount","totalItemsProcessed","round","requestCount","maybeExecuteCount","undefined","addItemCount","reduction","reductionPercentage","_el$","_tmpl$","_el$2","firstChild","_el$3","nextSibling","_el$4","_el$5","_el$6","_el$7","_el$8","_el$9","_el$1","_el$10","_el$11","_$insert","_$setStyleProperty","toLocaleTimeString","_$effect","_p$","_v$","stateHeader","_v$2","stateTitle","_v$3","infoGrid","_v$4","infoLabel","_v$5","infoValueMono","_v$6","_v$7","_v$8","e","_$className","t","a","o","i","n","s","h"],"mappings":"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"}
@@ -1,8 +0,0 @@
1
- import { StateKey } from './util-groups.js';
2
- type UtilListProps = {
3
- selectedKey: () => string | null;
4
- setSelectedKey: (key: string | null) => void;
5
- utilState: () => Record<StateKey, Array<any>>;
6
- };
7
- export declare function UtilList(props: UtilListProps): import("solid-js").JSX.Element;
8
- export {};
@@ -1,70 +0,0 @@
1
- import { template, insert, createComponent, memo, effect, className, delegateEvents } from "solid-js/web";
2
- import { For } from "solid-js";
3
- import { useStore } from "@tanstack/solid-store";
4
- import clsx from "clsx";
5
- import { useStyles } from "../styles/use-styles.js";
6
- import { UTIL_GROUPS } from "./util-groups.js";
7
- var _tmpl$ = /* @__PURE__ */ template(`<div>`), _tmpl$2 = /* @__PURE__ */ template(`<div><div>`), _tmpl$3 = /* @__PURE__ */ template(`<div><div></div><div>`);
8
- function UtilList(props) {
9
- const styles = useStyles();
10
- return (() => {
11
- var _el$ = _tmpl$();
12
- insert(_el$, createComponent(For, {
13
- each: UTIL_GROUPS,
14
- children: (group) => memo(() => memo(() => props.utilState()[group.key].length > 0)() && (() => {
15
- var _el$2 = _tmpl$2(), _el$3 = _el$2.firstChild;
16
- insert(_el$3, () => group.label);
17
- insert(_el$2, createComponent(For, {
18
- get each() {
19
- return props.utilState()[group.key];
20
- },
21
- children: (instance) => {
22
- const status = (() => {
23
- try {
24
- const statusAccessor = useStore(instance.store, (s) => s.status);
25
- return () => statusAccessor() ?? "unknown";
26
- } catch {
27
- return () => "unknown";
28
- }
29
- })();
30
- return (() => {
31
- var _el$4 = _tmpl$3(), _el$5 = _el$4.firstChild, _el$6 = _el$5.nextSibling;
32
- _el$4.$$click = () => props.setSelectedKey(instance.key ?? null);
33
- insert(_el$5, () => instance.key);
34
- insert(_el$6, status);
35
- effect((_p$) => {
36
- var _v$3 = clsx(styles().utilRow, props.selectedKey() === instance.key && styles().utilRowSelected), _v$4 = styles().utilKey, _v$5 = styles().utilStatus;
37
- _v$3 !== _p$.e && className(_el$4, _p$.e = _v$3);
38
- _v$4 !== _p$.t && className(_el$5, _p$.t = _v$4);
39
- _v$5 !== _p$.a && className(_el$6, _p$.a = _v$5);
40
- return _p$;
41
- }, {
42
- e: void 0,
43
- t: void 0,
44
- a: void 0
45
- });
46
- return _el$4;
47
- })();
48
- }
49
- }), null);
50
- effect((_p$) => {
51
- var _v$ = styles().utilGroup, _v$2 = styles().utilGroupHeader;
52
- _v$ !== _p$.e && className(_el$2, _p$.e = _v$);
53
- _v$2 !== _p$.t && className(_el$3, _p$.t = _v$2);
54
- return _p$;
55
- }, {
56
- e: void 0,
57
- t: void 0
58
- });
59
- return _el$2;
60
- })())
61
- }));
62
- effect(() => className(_el$, styles().utilList));
63
- return _el$;
64
- })();
65
- }
66
- delegateEvents(["click"]);
67
- export {
68
- UtilList
69
- };
70
- //# sourceMappingURL=UtilList.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"UtilList.js","sources":["../../../src/components/UtilList.tsx"],"sourcesContent":["import { For } from 'solid-js'\nimport { useStore } from '@tanstack/solid-store'\nimport clsx from 'clsx'\nimport { useStyles } from '../styles/use-styles'\nimport { UTIL_GROUPS } from './util-groups'\nimport type { StateKey } from './util-groups'\n\ntype UtilListProps = {\n selectedKey: () => string | null\n setSelectedKey: (key: string | null) => void\n utilState: () => Record<StateKey, Array<any>>\n}\n\nexport function UtilList(props: UtilListProps) {\n const styles = useStyles()\n\n return (\n <div class={styles().utilList}>\n <For each={UTIL_GROUPS}>\n {(group) => (\n <>\n {props.utilState()[group.key].length > 0 && (\n <div class={styles().utilGroup}>\n <div class={styles().utilGroupHeader}>{group.label}</div>\n <For each={props.utilState()[group.key]}>\n {(instance) => {\n const status = (() => {\n try {\n const statusAccessor = useStore(\n instance.store,\n (s: any) => s.status,\n )\n return () => statusAccessor() ?? 'unknown'\n } catch {\n return () => 'unknown'\n }\n })()\n return (\n <div\n class={clsx(\n styles().utilRow,\n props.selectedKey() === instance.key &&\n styles().utilRowSelected,\n )}\n onClick={() =>\n props.setSelectedKey(instance.key ?? null)\n }\n >\n <div class={styles().utilKey}>{instance.key}</div>\n <div class={styles().utilStatus}>{status()}</div>\n </div>\n )\n }}\n </For>\n </div>\n )}\n </>\n )}\n </For>\n </div>\n )\n}\n"],"names":["UtilList","props","styles","useStyles","_el$","_tmpl$","_$insert","_$createComponent","For","each","UTIL_GROUPS","children","group","_$memo","utilState","key","length","_el$2","_tmpl$2","_el$3","firstChild","label","instance","status","statusAccessor","useStore","store","s","_el$4","_tmpl$3","_el$5","_el$6","nextSibling","$$click","setSelectedKey","_$effect","_p$","_v$3","clsx","utilRow","selectedKey","utilRowSelected","_v$4","utilKey","_v$5","utilStatus","e","_$className","t","a","undefined","_v$","utilGroup","_v$2","utilGroupHeader","utilList","_$delegateEvents"],"mappings":";;;;;;;AAaO,SAASA,SAASC,OAAsB;AAC7C,QAAMC,SAASC,UAAAA;AAEf,UAAA,MAAA;AAAA,QAAAC,OAAAC,OAAAA;AAAAC,WAAAF,MAAAG,gBAEKC,KAAG;AAAA,MAACC,MAAMC;AAAAA,MAAWC,UAClBC,CAAAA,UAAKC,WAEFA,KAAA,MAAAZ,MAAMa,UAAAA,EAAYF,MAAMG,GAAG,EAAEC,SAAS,CAAC,EAAA,MAAA,MAAA;AAAA,YAAAC,QAAAC,QAAAA,GAAAC,QAAAF,MAAAG;AAAAd,eAAAa,OAAA,MAEGP,MAAMS,KAAK;AAAAf,eAAAW,OAAAV,gBACjDC,KAAG;AAAA,UAAA,IAACC,OAAI;AAAA,mBAAER,MAAMa,YAAYF,MAAMG,GAAG;AAAA,UAAC;AAAA,UAAAJ,UACnCW,CAAAA,aAAa;AACb,kBAAMC,UAAU,MAAM;AACpB,kBAAI;AACF,sBAAMC,iBAAiBC,SACrBH,SAASI,OACT,CAACC,MAAWA,EAAEJ,MAChB;AACA,uBAAO,MAAMC,oBAAoB;AAAA,cACnC,QAAQ;AACN,uBAAO,MAAM;AAAA,cACf;AAAA,YACF,GAAA;AACA,oBAAA,MAAA;AAAA,kBAAAI,QAAAC,QAAAA,GAAAC,QAAAF,MAAAR,YAAAW,QAAAD,MAAAE;AAAAJ,oBAAAK,UAOa,MACPhC,MAAMiC,eAAeZ,SAASP,OAAO,IAAI;AAACT,qBAAAwB,OAAA,MAGbR,SAASP,GAAG;AAAAT,qBAAAyB,OACTR,MAAM;AAAAY,qBAAAC,CAAAA,QAAA;AAAA,oBAAAC,OAVjCC,KACLpC,OAAAA,EAASqC,SACTtC,MAAMuC,YAAAA,MAAkBlB,SAASP,OAC/Bb,SAASuC,eACb,GAACC,OAKWxC,OAAAA,EAASyC,SAAOC,OAChB1C,SAAS2C;AAAUR,yBAAAD,IAAAU,KAAAC,UAAAnB,OAAAQ,IAAAU,IAAAT,IAAA;AAAAK,yBAAAN,IAAAY,KAAAD,UAAAjB,OAAAM,IAAAY,IAAAN,IAAA;AAAAE,yBAAAR,IAAAa,KAAAF,UAAAhB,OAAAK,IAAAa,IAAAL,IAAA;AAAA,uBAAAR;AAAAA,cAAA,GAAA;AAAA,gBAAAU,GAAAI;AAAAA,gBAAAF,GAAAE;AAAAA,gBAAAD,GAAAC;AAAAA,cAAAA,CAAA;AAAA,qBAAAtB;AAAAA,YAAA,GAAA;AAAA,UAGrC;AAAA,QAAA,CAAC,GAAA,IAAA;AAAAO,eAAAC,CAAAA,QAAA;AAAA,cAAAe,MA9BOjD,OAAAA,EAASkD,WAASC,OAChBnD,SAASoD;AAAeH,kBAAAf,IAAAU,KAAAC,UAAA9B,OAAAmB,IAAAU,IAAAK,GAAA;AAAAE,mBAAAjB,IAAAY,KAAAD,UAAA5B,OAAAiB,IAAAY,IAAAK,IAAA;AAAA,iBAAAjB;AAAAA,QAAA,GAAA;AAAA,UAAAU,GAAAI;AAAAA,UAAAF,GAAAE;AAAAA,QAAAA,CAAA;AAAA,eAAAjC;AAAAA,MAAA,IAgCvC;AAAA,IAAA,CAEJ,CAAA;AAAAkB,WAAA,MAAAY,UAAA3C,MAxCOF,OAAAA,EAASqD,QAAQ,CAAA;AAAA,WAAAnD;AAAAA,EAAA,GAAA;AA4CjC;AAACoD,eAAA,CAAA,OAAA,CAAA;"}
@@ -1,8 +0,0 @@
1
- export type StateKey = 'asyncBatchers' | 'asyncDebouncers' | 'asyncQueuers' | 'asyncRateLimiters' | 'asyncThrottlers' | 'batchers' | 'debouncers' | 'queuers' | 'rateLimiters' | 'throttlers';
2
- type UtilGroup = {
3
- key: StateKey;
4
- label: string;
5
- displayName: string;
6
- };
7
- export declare const UTIL_GROUPS: Array<UtilGroup>;
8
- export {};
@@ -1,40 +0,0 @@
1
- const UTIL_GROUPS = [
2
- { key: "debouncers", label: "Debouncers", displayName: "Debouncer" },
3
- { key: "throttlers", label: "Throttlers", displayName: "Throttler" },
4
- { key: "batchers", label: "Batchers", displayName: "Batcher" },
5
- { key: "queuers", label: "Queuers", displayName: "Queuer" },
6
- {
7
- key: "rateLimiters",
8
- label: "Rate Limiters",
9
- displayName: "Rate Limiter"
10
- },
11
- {
12
- key: "asyncDebouncers",
13
- label: "Async Debouncers",
14
- displayName: "Async Debouncer"
15
- },
16
- {
17
- key: "asyncThrottlers",
18
- label: "Async Throttlers",
19
- displayName: "Async Throttler"
20
- },
21
- {
22
- key: "asyncBatchers",
23
- label: "Async Batchers",
24
- displayName: "Async Batcher"
25
- },
26
- {
27
- key: "asyncQueuers",
28
- label: "Async Queuers",
29
- displayName: "Async Queuer"
30
- },
31
- {
32
- key: "asyncRateLimiters",
33
- label: "Async Rate Limiters",
34
- displayName: "Async Rate Limiter"
35
- }
36
- ];
37
- export {
38
- UTIL_GROUPS
39
- };
40
- //# sourceMappingURL=util-groups.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"util-groups.js","sources":["../../../src/components/util-groups.ts"],"sourcesContent":["export type StateKey =\n | 'asyncBatchers'\n | 'asyncDebouncers'\n | 'asyncQueuers'\n | 'asyncRateLimiters'\n | 'asyncThrottlers'\n | 'batchers'\n | 'debouncers'\n | 'queuers'\n | 'rateLimiters'\n | 'throttlers'\n\ntype UtilGroup = {\n key: StateKey\n label: string\n displayName: string\n}\n\nexport const UTIL_GROUPS: Array<UtilGroup> = [\n { key: 'debouncers', label: 'Debouncers', displayName: 'Debouncer' },\n { key: 'throttlers', label: 'Throttlers', displayName: 'Throttler' },\n { key: 'batchers', label: 'Batchers', displayName: 'Batcher' },\n { key: 'queuers', label: 'Queuers', displayName: 'Queuer' },\n {\n key: 'rateLimiters',\n label: 'Rate Limiters',\n displayName: 'Rate Limiter',\n },\n {\n key: 'asyncDebouncers',\n label: 'Async Debouncers',\n displayName: 'Async Debouncer',\n },\n {\n key: 'asyncThrottlers',\n label: 'Async Throttlers',\n displayName: 'Async Throttler',\n },\n {\n key: 'asyncBatchers',\n label: 'Async Batchers',\n displayName: 'Async Batcher',\n },\n {\n key: 'asyncQueuers',\n label: 'Async Queuers',\n displayName: 'Async Queuer',\n },\n {\n key: 'asyncRateLimiters',\n label: 'Async Rate Limiters',\n displayName: 'Async Rate Limiter',\n },\n]\n"],"names":[],"mappings":"AAkBO,MAAM,cAAgC;AAAA,EAC3C,EAAE,KAAK,cAAc,OAAO,cAAc,aAAa,YAAA;AAAA,EACvD,EAAE,KAAK,cAAc,OAAO,cAAc,aAAa,YAAA;AAAA,EACvD,EAAE,KAAK,YAAY,OAAO,YAAY,aAAa,UAAA;AAAA,EACnD,EAAE,KAAK,WAAW,OAAO,WAAW,aAAa,SAAA;AAAA,EACjD;AAAA,IACE,KAAK;AAAA,IACL,OAAO;AAAA,IACP,aAAa;AAAA,EAAA;AAAA,EAEf;AAAA,IACE,KAAK;AAAA,IACL,OAAO;AAAA,IACP,aAAa;AAAA,EAAA;AAAA,EAEf;AAAA,IACE,KAAK;AAAA,IACL,OAAO;AAAA,IACP,aAAa;AAAA,EAAA;AAAA,EAEf;AAAA,IACE,KAAK;AAAA,IACL,OAAO;AAAA,IACP,aAAa;AAAA,EAAA;AAAA,EAEf;AAAA,IACE,KAAK;AAAA,IACL,OAAO;AAAA,IACP,aAAa;AAAA,EAAA;AAAA,EAEf;AAAA,IACE,KAAK;AAAA,IACL,OAAO;AAAA,IACP,aAAa;AAAA,EAAA;AAEjB;"}
@@ -1,18 +0,0 @@
1
- export interface PacerDevtoolsInit {
2
- }
3
- declare const PacerDevtoolsCore: new () => {
4
- #isMounted: boolean;
5
- #dispose?: () => void;
6
- #Component: any;
7
- #ThemeProvider: any;
8
- mount<T extends HTMLElement>(el: T, theme: "light" | "dark"): Promise<void>;
9
- unmount(): void;
10
- }, PacerDevtoolsCoreNoOp: new () => {
11
- mount<T extends HTMLElement>(_el: T, _theme: "light" | "dark"): Promise<void>;
12
- unmount(): void;
13
- #isMounted: boolean;
14
- #dispose?: () => void;
15
- #Component: any;
16
- #ThemeProvider: any;
17
- };
18
- export { PacerDevtoolsCore, PacerDevtoolsCoreNoOp };
package/dist/esm/core.js DELETED
@@ -1,9 +0,0 @@
1
- import { constructCoreClass } from "@tanstack/devtools-utils/solid";
2
- import { lazy } from "solid-js";
3
- const Component = lazy(() => import("./PacerDevtools.js"));
4
- const [PacerDevtoolsCore, PacerDevtoolsCoreNoOp] = constructCoreClass(Component);
5
- export {
6
- PacerDevtoolsCore,
7
- PacerDevtoolsCoreNoOp
8
- };
9
- //# sourceMappingURL=core.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"core.js","sources":["../../src/core.tsx"],"sourcesContent":["import { constructCoreClass } from '@tanstack/devtools-utils/solid'\nimport { lazy } from 'solid-js'\n\nconst Component = lazy(() => import('./PacerDevtools'))\n\nexport interface PacerDevtoolsInit {}\n\nconst [PacerDevtoolsCore, PacerDevtoolsCoreNoOp] = constructCoreClass(Component)\n\nexport { PacerDevtoolsCore, PacerDevtoolsCoreNoOp }\n"],"names":["Component","lazy","PacerDevtoolsCore","PacerDevtoolsCoreNoOp","constructCoreClass"],"mappings":";;AAGA,MAAMA,YAAYC,KAAK,MAAM,OAAO,oBAAiB,CAAC;AAItD,MAAM,CAACC,mBAAmBC,qBAAqB,IAAIC,mBAAmBJ,SAAS;"}
@@ -1,9 +0,0 @@
1
- export declare const PacerDevtoolsCore: new () => {
2
- #isMounted: boolean;
3
- #dispose?: () => void;
4
- #Component: any;
5
- #ThemeProvider: any;
6
- mount<T extends HTMLElement>(el: T, theme: "light" | "dark"): Promise<void>;
7
- unmount(): void;
8
- };
9
- export type { PacerDevtoolsInit } from './core.js';
package/dist/esm/index.js DELETED
@@ -1,7 +0,0 @@
1
- "use client";
2
- import { PacerDevtoolsCoreNoOp, PacerDevtoolsCore as PacerDevtoolsCore$1 } from "./core.js";
3
- const PacerDevtoolsCore = process.env.NODE_ENV !== "development" ? PacerDevtoolsCoreNoOp : PacerDevtoolsCore$1;
4
- export {
5
- PacerDevtoolsCore
6
- };
7
- //# sourceMappingURL=index.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.js","sources":["../../src/index.ts"],"sourcesContent":["'use client'\n\nimport * as Devtools from './core'\n\nexport const PacerDevtoolsCore =\n process.env.NODE_ENV !== 'development'\n ? Devtools.PacerDevtoolsCoreNoOp\n : Devtools.PacerDevtoolsCore\n\nexport type { PacerDevtoolsInit } from './core'\n"],"names":[],"mappings":";;AAIO;;;;"}
@@ -1,2 +0,0 @@
1
- export { PacerDevtoolsCore } from './core.js';
2
- export type { PacerDevtoolsInit } from './core.js';
@@ -1,6 +0,0 @@
1
- "use client";
2
- import { PacerDevtoolsCore } from "./core.js";
3
- export {
4
- PacerDevtoolsCore
5
- };
6
- //# sourceMappingURL=production.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"production.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;"}