@tanstack/pacer-devtools 1.0.0 → 1.0.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.
- package/README.md +165 -0
- package/dist/PacerContextProvider.js +142 -0
- package/dist/PacerContextProvider.js.map +1 -0
- package/dist/PacerDevtools.js +14 -0
- package/dist/PacerDevtools.js.map +1 -0
- package/dist/components/ActionButtons.js +154 -0
- package/dist/components/ActionButtons.js.map +1 -0
- package/dist/components/DetailsPanel.js +76 -0
- package/dist/components/DetailsPanel.js.map +1 -0
- package/dist/components/Shell.js +107 -0
- package/dist/components/Shell.js.map +1 -0
- package/dist/components/StateHeader.js +85 -0
- package/dist/components/StateHeader.js.map +1 -0
- package/dist/components/UtilList.js +72 -0
- package/dist/components/UtilList.js.map +1 -0
- package/dist/components/util-groups.js +57 -0
- package/dist/components/util-groups.js.map +1 -0
- package/dist/core.d.ts +20 -0
- package/dist/core.js +9 -0
- package/dist/core.js.map +1 -0
- package/dist/index.d.ts +14 -0
- package/dist/index.js +10 -0
- package/dist/index.js.map +1 -0
- package/dist/production.d.ts +2 -0
- package/dist/production.js +5 -0
- package/dist/styles/tokens.js +301 -0
- package/dist/styles/tokens.js.map +1 -0
- package/dist/{esm/styles → styles}/use-styles.js +60 -61
- package/dist/styles/use-styles.js.map +1 -0
- package/package.json +17 -27
- package/src/components/DetailsPanel.tsx +2 -2
- package/dist/esm/PacerContextProvider.d.ts +0 -19
- package/dist/esm/PacerContextProvider.js +0 -156
- package/dist/esm/PacerContextProvider.js.map +0 -1
- package/dist/esm/PacerDevtools.d.ts +0 -1
- package/dist/esm/PacerDevtools.js +0 -14
- package/dist/esm/PacerDevtools.js.map +0 -1
- package/dist/esm/components/ActionButtons.d.ts +0 -6
- package/dist/esm/components/ActionButtons.js +0 -157
- package/dist/esm/components/ActionButtons.js.map +0 -1
- package/dist/esm/components/DetailsPanel.d.ts +0 -11
- package/dist/esm/components/DetailsPanel.js +0 -80
- package/dist/esm/components/DetailsPanel.js.map +0 -1
- package/dist/esm/components/Shell.d.ts +0 -1
- package/dist/esm/components/Shell.js +0 -111
- package/dist/esm/components/Shell.js.map +0 -1
- package/dist/esm/components/StateHeader.d.ts +0 -11
- package/dist/esm/components/StateHeader.js +0 -92
- package/dist/esm/components/StateHeader.js.map +0 -1
- package/dist/esm/components/UtilList.d.ts +0 -8
- package/dist/esm/components/UtilList.js +0 -70
- package/dist/esm/components/UtilList.js.map +0 -1
- package/dist/esm/components/util-groups.d.ts +0 -8
- package/dist/esm/components/util-groups.js +0 -40
- package/dist/esm/components/util-groups.js.map +0 -1
- package/dist/esm/core.d.ts +0 -18
- package/dist/esm/core.js +0 -9
- package/dist/esm/core.js.map +0 -1
- package/dist/esm/index.d.ts +0 -9
- package/dist/esm/index.js +0 -7
- package/dist/esm/index.js.map +0 -1
- package/dist/esm/production.d.ts +0 -2
- package/dist/esm/production.js +0 -6
- package/dist/esm/production.js.map +0 -1
- package/dist/esm/styles/tokens.d.ts +0 -298
- package/dist/esm/styles/tokens.js +0 -94
- package/dist/esm/styles/tokens.js.map +0 -1
- package/dist/esm/styles/use-styles.d.ts +0 -40
- package/dist/esm/styles/use-styles.js.map +0 -1
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"use-styles.js","names":[],"sources":["../../src/styles/use-styles.ts"],"sourcesContent":["import * as goober from 'goober'\nimport { createEffect, createSignal } from 'solid-js'\nimport { useTheme } from '@tanstack/devtools-ui'\nimport { tokens } from './tokens'\n\nconst stylesFactory = (theme: 'light' | 'dark') => {\n const { colors, font, size, alpha, border } = tokens\n const { fontFamily, size: fontSize } = font\n const css = goober.css\n const t = (light: string, dark: string) => (theme === 'light' ? light : dark)\n\n return {\n mainContainer: css`\n display: flex;\n flex: 1;\n min-height: 0;\n overflow: hidden;\n padding: ${size[2]};\n padding-top: 0;\n margin-top: ${size[2]};\n `,\n dragHandle: css`\n width: 8px;\n background: ${t(colors.gray[300], colors.darkGray[600])};\n cursor: col-resize;\n position: relative;\n transition: all 0.2s ease;\n user-select: none;\n pointer-events: all;\n margin: 0 ${size[1]};\n border-radius: 2px;\n\n &:hover {\n background: ${t(colors.blue[600], colors.blue[500])};\n margin: 0 ${size[1]};\n }\n\n &.dragging {\n background: ${t(colors.blue[700], colors.blue[600])};\n margin: 0 ${size[1]};\n }\n\n &::after {\n content: '';\n position: absolute;\n top: 50%;\n left: 50%;\n transform: translate(-50%, -50%);\n width: 2px;\n height: 20px;\n background: ${t(colors.gray[400], colors.darkGray[400])};\n border-radius: 1px;\n pointer-events: none;\n }\n\n &:hover::after,\n &.dragging::after {\n background: ${t(colors.blue[500], colors.blue[300])};\n }\n `,\n leftPanel: css`\n background: ${t(colors.gray[100], colors.darkGray[800])};\n border-radius: ${border.radius.lg};\n border: 1px solid ${t(colors.gray[200], colors.darkGray[700])};\n display: flex;\n flex-direction: column;\n overflow: hidden;\n min-height: 0;\n flex-shrink: 0;\n `,\n rightPanel: css`\n background: ${t(colors.gray[100], colors.darkGray[800])};\n border-radius: ${border.radius.lg};\n border: 1px solid ${t(colors.gray[200], colors.darkGray[700])};\n display: flex;\n flex-direction: column;\n overflow: hidden;\n min-height: 0;\n flex: 1;\n `,\n panelHeader: css`\n font-size: ${fontSize.md};\n font-weight: ${font.weight.bold};\n color: ${t(colors.blue[700], colors.blue[400])};\n padding: ${size[2]};\n border-bottom: 1px solid ${t(colors.gray[200], colors.darkGray[700])};\n background: ${t(colors.gray[100], colors.darkGray[800])};\n flex-shrink: 0;\n `,\n utilList: css`\n flex: 1;\n overflow-y: auto;\n padding: ${size[1]};\n min-height: 0;\n `,\n utilGroup: css`\n margin-bottom: ${size[2]};\n `,\n utilGroupHeader: css`\n font-size: ${fontSize.xs};\n font-weight: ${font.weight.semibold};\n color: ${t(colors.gray[600], colors.gray[400])};\n text-transform: uppercase;\n letter-spacing: 0.05em;\n margin-bottom: ${size[1]};\n padding: ${size[1]} ${size[2]};\n background: ${t(colors.gray[200], colors.darkGray[700])};\n border-radius: ${border.radius.md};\n `,\n utilRow: css`\n display: flex;\n justify-content: space-between;\n align-items: center;\n padding: ${size[2]};\n margin-bottom: ${size[1]};\n background: ${t(colors.gray[200], colors.darkGray[700])};\n border-radius: ${border.radius.md};\n cursor: pointer;\n transition: all 0.2s ease;\n border: 1px solid transparent;\n\n &:hover {\n background: ${t(colors.gray[300], colors.darkGray[600])};\n border-color: ${t(colors.gray[400], colors.darkGray[500])};\n }\n `,\n utilRowSelected: css`\n background: ${t(colors.blue[100], colors.blue[900] + alpha[20])};\n border-color: ${t(colors.blue[600], colors.blue[500])};\n box-shadow: 0 0 0 1px\n ${t(colors.blue[600] + alpha[30], colors.blue[500] + alpha[30])};\n `,\n utilKey: css`\n font-family: ${fontFamily.mono};\n font-size: ${fontSize.xs};\n color: ${t(colors.gray[900], colors.gray[100])};\n flex: 1;\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: nowrap;\n `,\n utilStatus: css`\n font-size: ${fontSize.xs};\n color: ${t(colors.gray[600], colors.gray[400])};\n text-transform: uppercase;\n letter-spacing: 0.05em;\n padding: ${size[1]} ${size[1]};\n background: ${t(colors.gray[300], colors.darkGray[600])};\n border-radius: ${border.radius.sm};\n margin-left: ${size[1]};\n `,\n stateDetails: css`\n flex: 1;\n overflow-y: auto;\n padding: ${size[2]};\n min-height: 0;\n `,\n stateHeader: css`\n margin-bottom: ${size[2]};\n padding-bottom: ${size[2]};\n border-bottom: 1px solid ${t(colors.gray[200], colors.darkGray[700])};\n `,\n stateTitle: css`\n font-size: ${fontSize.md};\n font-weight: ${font.weight.bold};\n color: ${t(colors.blue[700], colors.blue[400])};\n margin-bottom: ${size[1]};\n `,\n stateKey: css`\n font-family: ${fontFamily.mono};\n font-size: ${fontSize.xs};\n color: ${t(colors.gray[600], colors.gray[400])};\n word-break: break-all;\n `,\n stateContent: css`\n background: ${t(colors.gray[100], colors.darkGray[700])};\n border-radius: ${border.radius.md};\n padding: ${size[2]};\n border: 1px solid ${t(colors.gray[300], colors.darkGray[600])};\n `,\n detailsGrid: css`\n display: grid;\n grid-template-columns: 1fr;\n gap: ${size[2]};\n align-items: start;\n `,\n detailSection: css`\n background: ${t(colors.white, colors.darkGray[700])};\n border: 1px solid ${t(colors.gray[300], colors.darkGray[600])};\n border-radius: ${border.radius.md};\n padding: ${size[2]};\n `,\n detailSectionHeader: css`\n font-size: ${fontSize.sm};\n font-weight: ${font.weight.bold};\n color: ${t(colors.gray[800], colors.gray[200])};\n margin-bottom: ${size[1]};\n text-transform: uppercase;\n letter-spacing: 0.04em;\n `,\n actionsRow: css`\n display: flex;\n flex-wrap: wrap;\n gap: ${size[2]};\n `,\n actionButton: css`\n display: inline-flex;\n align-items: center;\n gap: ${size[1]};\n padding: ${size[1]} ${size[2]};\n border-radius: ${border.radius.md};\n border: 1px solid ${t(colors.gray[300], colors.darkGray[500])};\n background: ${t(colors.gray[200], colors.darkGray[600])};\n color: ${t(colors.gray[900], colors.gray[100])};\n font-size: ${fontSize.xs};\n cursor: pointer;\n user-select: none;\n transition:\n background 0.15s,\n border-color 0.15s;\n &:hover {\n background: ${t(colors.gray[300], colors.darkGray[500])};\n border-color: ${t(colors.gray[400], colors.darkGray[400])};\n }\n &:disabled {\n opacity: 0.5;\n cursor: not-allowed;\n &:hover {\n background: ${t(colors.gray[200], colors.darkGray[600])};\n border-color: ${t(colors.gray[300], colors.darkGray[500])};\n }\n }\n `,\n actionDotBlue: css`\n width: 6px;\n height: 6px;\n border-radius: 9999px;\n background: ${colors.blue[400]};\n `,\n actionDotGreen: css`\n width: 6px;\n height: 6px;\n border-radius: 9999px;\n background: ${colors.green[400]};\n `,\n actionDotRed: css`\n width: 6px;\n height: 6px;\n border-radius: 9999px;\n background: ${colors.red[400]};\n `,\n actionDotYellow: css`\n width: 6px;\n height: 6px;\n border-radius: 9999px;\n background: ${colors.yellow[400]};\n `,\n actionDotOrange: css`\n width: 6px;\n height: 6px;\n border-radius: 9999px;\n background: ${colors.pink[400]};\n `,\n actionDotPurple: css`\n width: 6px;\n height: 6px;\n border-radius: 9999px;\n background: ${colors.purple[400]};\n `,\n infoGrid: css`\n display: grid;\n grid-template-columns: auto 1fr;\n gap: ${size[1]};\n row-gap: ${size[1]};\n align-items: center;\n `,\n infoLabel: css`\n color: ${t(colors.gray[600], colors.gray[400])};\n font-size: ${fontSize.xs};\n text-transform: uppercase;\n letter-spacing: 0.05em;\n `,\n infoValueMono: css`\n font-family: ${fontFamily.mono};\n font-size: ${fontSize.xs};\n color: ${t(colors.gray[900], colors.gray[100])};\n word-break: break-all;\n `,\n noSelection: css`\n flex: 1;\n display: flex;\n align-items: center;\n justify-content: center;\n color: ${t(colors.gray[500], colors.gray[500])};\n font-style: italic;\n text-align: center;\n padding: ${size[4]};\n `,\n // Keep existing styles for backward compatibility\n sectionContainer: css`\n display: flex;\n flex-wrap: wrap;\n gap: ${size[4]};\n `,\n section: css`\n background: ${t(colors.gray[100], colors.darkGray[800])};\n border-radius: ${border.radius.lg};\n box-shadow: ${tokens.shadow.md(\n t(colors.gray[400] + alpha[80], colors.black + alpha[80]),\n )};\n padding: ${size[4]};\n margin-bottom: ${size[4]};\n border: 1px solid ${t(colors.gray[200], colors.darkGray[700])};\n min-width: 0;\n max-width: 33%;\n max-height: fit-content;\n `,\n sectionHeader: css`\n font-size: ${fontSize.lg};\n font-weight: ${font.weight.bold};\n margin-bottom: ${size[2]};\n color: ${t(colors.blue[600], colors.blue[400])};\n letter-spacing: 0.01em;\n display: flex;\n align-items: center;\n gap: ${size[2]};\n `,\n sectionEmpty: css`\n color: ${t(colors.gray[500], colors.gray[500])};\n font-size: ${fontSize.sm};\n font-style: italic;\n margin: ${size[2]} 0;\n `,\n instanceList: css`\n display: flex;\n flex-direction: column;\n gap: ${size[2]};\n background: ${t(colors.gray[200], colors.darkGray[700])};\n border: 1px solid ${t(colors.gray[300], colors.darkGray[600])};\n `,\n instanceCard: css`\n background: ${t(colors.gray[200], colors.darkGray[700])};\n border-radius: ${border.radius.md};\n padding: ${size[3]};\n border: 1px solid ${t(colors.gray[300], colors.darkGray[600])};\n font-size: ${fontSize.sm};\n color: ${t(colors.gray[900], colors.gray[100])};\n font-family: ${fontFamily.mono};\n overflow-x: auto;\n transition:\n box-shadow 0.3s,\n background 0.3s;\n `,\n }\n}\n\nexport function useStyles() {\n const { theme } = useTheme()\n const [styles, setStyles] = createSignal(stylesFactory(theme()))\n createEffect(() => {\n setStyles(stylesFactory(theme()))\n })\n return styles\n}\n"],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,13 +1,13 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@tanstack/pacer-devtools",
|
|
3
|
-
"version": "1.0.
|
|
3
|
+
"version": "1.0.1",
|
|
4
4
|
"description": "Devtools for Pacer.",
|
|
5
5
|
"author": "Tanner Linsley",
|
|
6
6
|
"license": "MIT",
|
|
7
7
|
"repository": {
|
|
8
8
|
"type": "git",
|
|
9
|
-
"url": "https://github.com/TanStack/pacer.git",
|
|
10
|
-
"directory": "packages/pacer"
|
|
9
|
+
"url": "git+https://github.com/TanStack/pacer.git",
|
|
10
|
+
"directory": "packages/pacer-devtools"
|
|
11
11
|
},
|
|
12
12
|
"homepage": "https://tanstack.com/pacer",
|
|
13
13
|
"funding": {
|
|
@@ -23,21 +23,12 @@
|
|
|
23
23
|
"pacer"
|
|
24
24
|
],
|
|
25
25
|
"type": "module",
|
|
26
|
-
"
|
|
27
|
-
"module": "dist/
|
|
26
|
+
"main": "./dist/index.js",
|
|
27
|
+
"module": "./dist/index.js",
|
|
28
|
+
"types": "./dist/index.d.ts",
|
|
28
29
|
"exports": {
|
|
29
|
-
".":
|
|
30
|
-
|
|
31
|
-
"types": "./dist/esm/index.d.ts",
|
|
32
|
-
"default": "./dist/esm/index.js"
|
|
33
|
-
}
|
|
34
|
-
},
|
|
35
|
-
"./production": {
|
|
36
|
-
"import": {
|
|
37
|
-
"types": "./dist/esm/production.d.ts",
|
|
38
|
-
"default": "./dist/esm/production.js"
|
|
39
|
-
}
|
|
40
|
-
},
|
|
30
|
+
".": "./dist/index.js",
|
|
31
|
+
"./production": "./dist/production.js",
|
|
41
32
|
"./package.json": "./package.json"
|
|
42
33
|
},
|
|
43
34
|
"sideEffects": false,
|
|
@@ -49,19 +40,19 @@
|
|
|
49
40
|
"src"
|
|
50
41
|
],
|
|
51
42
|
"peerDependencies": {
|
|
52
|
-
"@tanstack/pacer": ">=0.16.
|
|
43
|
+
"@tanstack/pacer": ">=0.16.4"
|
|
53
44
|
},
|
|
54
45
|
"dependencies": {
|
|
55
|
-
"@tanstack/devtools-ui": "^0.
|
|
56
|
-
"@tanstack/devtools-utils": "^0.0.
|
|
57
|
-
"@tanstack/solid-store": "^0.
|
|
46
|
+
"@tanstack/devtools-ui": "^0.4.4",
|
|
47
|
+
"@tanstack/devtools-utils": "^0.0.9",
|
|
48
|
+
"@tanstack/solid-store": "^0.8.0",
|
|
58
49
|
"clsx": "^2.1.1",
|
|
59
|
-
"dayjs": "^1.11.
|
|
60
|
-
"goober": "^2.1.
|
|
61
|
-
"solid-js": "^1.9.
|
|
50
|
+
"dayjs": "^1.11.19",
|
|
51
|
+
"goober": "^2.1.18",
|
|
52
|
+
"solid-js": "^1.9.10"
|
|
62
53
|
},
|
|
63
54
|
"devDependencies": {
|
|
64
|
-
"vite-plugin-solid": "^2.11.
|
|
55
|
+
"vite-plugin-solid": "^2.11.10"
|
|
65
56
|
},
|
|
66
57
|
"scripts": {
|
|
67
58
|
"clean": "premove ./build ./dist",
|
|
@@ -70,7 +61,6 @@
|
|
|
70
61
|
"test:lib": "vitest",
|
|
71
62
|
"test:lib:dev": "pnpm test:lib --watch",
|
|
72
63
|
"test:types": "tsc",
|
|
73
|
-
"
|
|
74
|
-
"build": "vite build"
|
|
64
|
+
"build": "tsdown"
|
|
75
65
|
}
|
|
76
66
|
}
|
|
@@ -42,14 +42,14 @@ export function DetailsPanel(props: DetailsPanelProps) {
|
|
|
42
42
|
<div class={styles().detailSection}>
|
|
43
43
|
<div class={styles().detailSectionHeader}>State</div>
|
|
44
44
|
<div class={styles().stateContent}>
|
|
45
|
-
<JsonTree value={entry.instance.store?.state} />
|
|
45
|
+
<JsonTree value={entry.instance.store?.state as unknown} />
|
|
46
46
|
</div>
|
|
47
47
|
</div>
|
|
48
48
|
|
|
49
49
|
<div class={styles().detailSection}>
|
|
50
50
|
<div class={styles().detailSectionHeader}>Options</div>
|
|
51
51
|
<div class={styles().stateContent}>
|
|
52
|
-
<JsonTree value={entry.instance.options} />
|
|
52
|
+
<JsonTree value={entry.instance.options as unknown} />
|
|
53
53
|
</div>
|
|
54
54
|
</div>
|
|
55
55
|
</div>
|
|
@@ -1,19 +0,0 @@
|
|
|
1
|
-
import { AsyncBatcher, AsyncDebouncer, AsyncQueuer, AsyncRateLimiter, AsyncThrottler, Batcher, Debouncer, Queuer, RateLimiter, Throttler } from '@tanstack/pacer';
|
|
2
|
-
interface PacerDevtoolsContextType {
|
|
3
|
-
asyncBatchers: Array<AsyncBatcher<any>>;
|
|
4
|
-
asyncDebouncers: Array<AsyncDebouncer<any>>;
|
|
5
|
-
asyncQueuers: Array<AsyncQueuer<any>>;
|
|
6
|
-
asyncRateLimiters: Array<AsyncRateLimiter<any>>;
|
|
7
|
-
asyncThrottlers: Array<AsyncThrottler<any>>;
|
|
8
|
-
batchers: Array<Batcher<any>>;
|
|
9
|
-
debouncers: Array<Debouncer<any>>;
|
|
10
|
-
queuers: Array<Queuer<any>>;
|
|
11
|
-
rateLimiters: Array<RateLimiter<any>>;
|
|
12
|
-
throttlers: Array<Throttler<any>>;
|
|
13
|
-
lastUpdatedByKey: Record<string, number>;
|
|
14
|
-
}
|
|
15
|
-
export declare function PacerContextProvider(props: {
|
|
16
|
-
children: any;
|
|
17
|
-
}): import("solid-js").JSX.Element;
|
|
18
|
-
export declare const usePacerDevtoolsState: () => PacerDevtoolsContextType;
|
|
19
|
-
export {};
|
|
@@ -1,156 +0,0 @@
|
|
|
1
|
-
import { createComponent } from "solid-js/web";
|
|
2
|
-
import { createStore } from "solid-js/store";
|
|
3
|
-
import { createEffect, onCleanup, createContext, useContext } from "solid-js";
|
|
4
|
-
import { pacerEventClient } from "@tanstack/pacer/event-client";
|
|
5
|
-
const initialPacerDevtoolsStore = {
|
|
6
|
-
asyncBatchers: [],
|
|
7
|
-
asyncDebouncers: [],
|
|
8
|
-
asyncQueuers: [],
|
|
9
|
-
asyncRateLimiters: [],
|
|
10
|
-
asyncThrottlers: [],
|
|
11
|
-
batchers: [],
|
|
12
|
-
debouncers: [],
|
|
13
|
-
queuers: [],
|
|
14
|
-
rateLimiters: [],
|
|
15
|
-
throttlers: [],
|
|
16
|
-
lastUpdatedByKey: {}
|
|
17
|
-
};
|
|
18
|
-
const PacerDevtoolsContext = createContext([initialPacerDevtoolsStore, () => {
|
|
19
|
-
}]);
|
|
20
|
-
const updateOrAddToArray = (oldArray, newItem) => {
|
|
21
|
-
const index = oldArray.findIndex((item) => item.key === newItem.key);
|
|
22
|
-
if (index !== -1) {
|
|
23
|
-
return oldArray.map((item, i) => i === index ? newItem : item);
|
|
24
|
-
}
|
|
25
|
-
return [...oldArray, newItem];
|
|
26
|
-
};
|
|
27
|
-
function PacerContextProvider(props) {
|
|
28
|
-
const [store, setStore] = createStore(initialPacerDevtoolsStore);
|
|
29
|
-
createEffect(() => {
|
|
30
|
-
const cleanup = pacerEventClient.onAllPluginEvents((_e) => {
|
|
31
|
-
const e = _e;
|
|
32
|
-
switch (e.type) {
|
|
33
|
-
case "pacer:AsyncBatcher": {
|
|
34
|
-
setStore({
|
|
35
|
-
asyncBatchers: updateOrAddToArray(store.asyncBatchers, e.payload),
|
|
36
|
-
lastUpdatedByKey: {
|
|
37
|
-
...store.lastUpdatedByKey,
|
|
38
|
-
[e.payload.key]: Date.now()
|
|
39
|
-
}
|
|
40
|
-
});
|
|
41
|
-
break;
|
|
42
|
-
}
|
|
43
|
-
case "pacer:AsyncDebouncer": {
|
|
44
|
-
setStore({
|
|
45
|
-
asyncDebouncers: updateOrAddToArray(store.asyncDebouncers, e.payload),
|
|
46
|
-
lastUpdatedByKey: {
|
|
47
|
-
...store.lastUpdatedByKey,
|
|
48
|
-
[e.payload.key]: Date.now()
|
|
49
|
-
}
|
|
50
|
-
});
|
|
51
|
-
break;
|
|
52
|
-
}
|
|
53
|
-
case "pacer:AsyncQueuer": {
|
|
54
|
-
setStore({
|
|
55
|
-
asyncQueuers: updateOrAddToArray(store.asyncQueuers, e.payload),
|
|
56
|
-
lastUpdatedByKey: {
|
|
57
|
-
...store.lastUpdatedByKey,
|
|
58
|
-
[e.payload.key]: Date.now()
|
|
59
|
-
}
|
|
60
|
-
});
|
|
61
|
-
break;
|
|
62
|
-
}
|
|
63
|
-
case "pacer:AsyncRateLimiter": {
|
|
64
|
-
setStore({
|
|
65
|
-
asyncRateLimiters: updateOrAddToArray(store.asyncRateLimiters, e.payload),
|
|
66
|
-
lastUpdatedByKey: {
|
|
67
|
-
...store.lastUpdatedByKey,
|
|
68
|
-
[e.payload.key]: Date.now()
|
|
69
|
-
}
|
|
70
|
-
});
|
|
71
|
-
break;
|
|
72
|
-
}
|
|
73
|
-
case "pacer:AsyncThrottler": {
|
|
74
|
-
setStore({
|
|
75
|
-
asyncThrottlers: updateOrAddToArray(store.asyncThrottlers, e.payload),
|
|
76
|
-
lastUpdatedByKey: {
|
|
77
|
-
...store.lastUpdatedByKey,
|
|
78
|
-
[e.payload.key]: Date.now()
|
|
79
|
-
}
|
|
80
|
-
});
|
|
81
|
-
break;
|
|
82
|
-
}
|
|
83
|
-
case "pacer:Batcher": {
|
|
84
|
-
setStore({
|
|
85
|
-
batchers: updateOrAddToArray(store.batchers, e.payload),
|
|
86
|
-
lastUpdatedByKey: {
|
|
87
|
-
...store.lastUpdatedByKey,
|
|
88
|
-
[e.payload.key]: Date.now()
|
|
89
|
-
}
|
|
90
|
-
});
|
|
91
|
-
break;
|
|
92
|
-
}
|
|
93
|
-
case "pacer:Debouncer": {
|
|
94
|
-
setStore({
|
|
95
|
-
debouncers: updateOrAddToArray(store.debouncers, e.payload),
|
|
96
|
-
lastUpdatedByKey: {
|
|
97
|
-
...store.lastUpdatedByKey,
|
|
98
|
-
[e.payload.key]: Date.now()
|
|
99
|
-
}
|
|
100
|
-
});
|
|
101
|
-
break;
|
|
102
|
-
}
|
|
103
|
-
case "pacer:Queuer": {
|
|
104
|
-
setStore({
|
|
105
|
-
queuers: updateOrAddToArray(store.queuers, e.payload),
|
|
106
|
-
lastUpdatedByKey: {
|
|
107
|
-
...store.lastUpdatedByKey,
|
|
108
|
-
[e.payload.key]: Date.now()
|
|
109
|
-
}
|
|
110
|
-
});
|
|
111
|
-
break;
|
|
112
|
-
}
|
|
113
|
-
case "pacer:RateLimiter": {
|
|
114
|
-
setStore({
|
|
115
|
-
rateLimiters: updateOrAddToArray(store.rateLimiters, e.payload),
|
|
116
|
-
lastUpdatedByKey: {
|
|
117
|
-
...store.lastUpdatedByKey,
|
|
118
|
-
[e.payload.key]: Date.now()
|
|
119
|
-
}
|
|
120
|
-
});
|
|
121
|
-
break;
|
|
122
|
-
}
|
|
123
|
-
case "pacer:Throttler": {
|
|
124
|
-
setStore({
|
|
125
|
-
throttlers: updateOrAddToArray(store.throttlers, e.payload),
|
|
126
|
-
lastUpdatedByKey: {
|
|
127
|
-
...store.lastUpdatedByKey,
|
|
128
|
-
[e.payload.key]: Date.now()
|
|
129
|
-
}
|
|
130
|
-
});
|
|
131
|
-
break;
|
|
132
|
-
}
|
|
133
|
-
}
|
|
134
|
-
});
|
|
135
|
-
onCleanup(cleanup);
|
|
136
|
-
});
|
|
137
|
-
return createComponent(PacerDevtoolsContext.Provider, {
|
|
138
|
-
value: [store, setStore],
|
|
139
|
-
get children() {
|
|
140
|
-
return props.children;
|
|
141
|
-
}
|
|
142
|
-
});
|
|
143
|
-
}
|
|
144
|
-
const usePacerDevtoolsContext = () => {
|
|
145
|
-
const context = useContext(PacerDevtoolsContext);
|
|
146
|
-
return context;
|
|
147
|
-
};
|
|
148
|
-
const usePacerDevtoolsState = () => {
|
|
149
|
-
const [state] = usePacerDevtoolsContext();
|
|
150
|
-
return state;
|
|
151
|
-
};
|
|
152
|
-
export {
|
|
153
|
-
PacerContextProvider,
|
|
154
|
-
usePacerDevtoolsState
|
|
155
|
-
};
|
|
156
|
-
//# sourceMappingURL=PacerContextProvider.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"PacerContextProvider.js","sources":["../../src/PacerContextProvider.tsx"],"sourcesContent":["import { createStore } from 'solid-js/store'\nimport { createContext, createEffect, onCleanup, useContext } from 'solid-js'\nimport { pacerEventClient } from '@tanstack/pacer/event-client'\nimport type {\n AsyncBatcher,\n AsyncDebouncer,\n AsyncQueuer,\n AsyncRateLimiter,\n AsyncThrottler,\n Batcher,\n Debouncer,\n Queuer,\n RateLimiter,\n Throttler,\n} from '@tanstack/pacer'\n\ninterface PacerDevtoolsContextType {\n asyncBatchers: Array<AsyncBatcher<any>>\n asyncDebouncers: Array<AsyncDebouncer<any>>\n asyncQueuers: Array<AsyncQueuer<any>>\n asyncRateLimiters: Array<AsyncRateLimiter<any>>\n asyncThrottlers: Array<AsyncThrottler<any>>\n batchers: Array<Batcher<any>>\n debouncers: Array<Debouncer<any>>\n queuers: Array<Queuer<any>>\n rateLimiters: Array<RateLimiter<any>>\n throttlers: Array<Throttler<any>>\n lastUpdatedByKey: Record<string, number>\n}\n\nconst initialPacerDevtoolsStore = {\n asyncBatchers: [],\n asyncDebouncers: [],\n asyncQueuers: [],\n asyncRateLimiters: [],\n asyncThrottlers: [],\n batchers: [],\n debouncers: [],\n queuers: [],\n rateLimiters: [],\n throttlers: [],\n lastUpdatedByKey: {},\n}\n\nconst PacerDevtoolsContext = createContext<\n [\n PacerDevtoolsContextType,\n (newState: Partial<PacerDevtoolsContextType>) => void,\n ]\n>([initialPacerDevtoolsStore, () => {}])\n\nconst updateOrAddToArray = <T extends { key: string }>(\n oldArray: Array<T>,\n newItem: T,\n) => {\n const index = oldArray.findIndex((item) => item.key === newItem.key)\n if (index !== -1) {\n // Update existing item\n return oldArray.map((item, i) => (i === index ? newItem : item))\n }\n // Add new item\n return [...oldArray, newItem]\n}\n\nexport function PacerContextProvider(props: { children: any }) {\n const [store, setStore] = createStore<PacerDevtoolsContextType>(\n initialPacerDevtoolsStore,\n )\n\n createEffect(() => {\n const cleanup = pacerEventClient.onAllPluginEvents((_e) => {\n const e = _e as unknown as { type: string; payload: any }\n switch (e.type) {\n case 'pacer:AsyncBatcher': {\n setStore({\n asyncBatchers: updateOrAddToArray(store.asyncBatchers, e.payload),\n lastUpdatedByKey: {\n ...store.lastUpdatedByKey,\n [e.payload.key]: Date.now(),\n },\n })\n break\n }\n case 'pacer:AsyncDebouncer': {\n setStore({\n asyncDebouncers: updateOrAddToArray(\n store.asyncDebouncers,\n e.payload,\n ),\n lastUpdatedByKey: {\n ...store.lastUpdatedByKey,\n [e.payload.key]: Date.now(),\n },\n })\n break\n }\n case 'pacer:AsyncQueuer': {\n setStore({\n asyncQueuers: updateOrAddToArray(store.asyncQueuers, e.payload),\n lastUpdatedByKey: {\n ...store.lastUpdatedByKey,\n [e.payload.key]: Date.now(),\n },\n })\n break\n }\n case 'pacer:AsyncRateLimiter': {\n setStore({\n asyncRateLimiters: updateOrAddToArray(\n store.asyncRateLimiters,\n e.payload,\n ),\n lastUpdatedByKey: {\n ...store.lastUpdatedByKey,\n [e.payload.key]: Date.now(),\n },\n })\n break\n }\n case 'pacer:AsyncThrottler': {\n setStore({\n asyncThrottlers: updateOrAddToArray(\n store.asyncThrottlers,\n e.payload,\n ),\n lastUpdatedByKey: {\n ...store.lastUpdatedByKey,\n [e.payload.key]: Date.now(),\n },\n })\n break\n }\n case 'pacer:Batcher': {\n setStore({\n batchers: updateOrAddToArray(store.batchers, e.payload),\n lastUpdatedByKey: {\n ...store.lastUpdatedByKey,\n [e.payload.key]: Date.now(),\n },\n })\n break\n }\n case 'pacer:Debouncer': {\n setStore({\n debouncers: updateOrAddToArray(store.debouncers, e.payload),\n lastUpdatedByKey: {\n ...store.lastUpdatedByKey,\n [e.payload.key]: Date.now(),\n },\n })\n break\n }\n case 'pacer:Queuer': {\n setStore({\n queuers: updateOrAddToArray(store.queuers, e.payload),\n lastUpdatedByKey: {\n ...store.lastUpdatedByKey,\n [e.payload.key]: Date.now(),\n },\n })\n break\n }\n case 'pacer:RateLimiter': {\n setStore({\n rateLimiters: updateOrAddToArray(store.rateLimiters, e.payload),\n lastUpdatedByKey: {\n ...store.lastUpdatedByKey,\n [e.payload.key]: Date.now(),\n },\n })\n break\n }\n case 'pacer:Throttler': {\n setStore({\n throttlers: updateOrAddToArray(store.throttlers, e.payload),\n lastUpdatedByKey: {\n ...store.lastUpdatedByKey,\n [e.payload.key]: Date.now(),\n },\n })\n break\n }\n }\n })\n onCleanup(cleanup)\n })\n return (\n <PacerDevtoolsContext.Provider value={[store, setStore]}>\n {props.children}\n </PacerDevtoolsContext.Provider>\n )\n}\n\nconst usePacerDevtoolsContext = () => {\n const context = useContext(PacerDevtoolsContext)\n\n return context\n}\n\nexport const usePacerDevtoolsState = () => {\n const [state] = usePacerDevtoolsContext()\n return state\n}\n"],"names":["initialPacerDevtoolsStore","asyncBatchers","asyncDebouncers","asyncQueuers","asyncRateLimiters","asyncThrottlers","batchers","debouncers","queuers","rateLimiters","throttlers","lastUpdatedByKey","PacerDevtoolsContext","createContext","updateOrAddToArray","oldArray","newItem","index","findIndex","item","key","map","i","PacerContextProvider","props","store","setStore","createStore","createEffect","cleanup","pacerEventClient","onAllPluginEvents","_e","e","type","payload","Date","now","onCleanup","_$createComponent","Provider","value","children","usePacerDevtoolsContext","context","useContext","usePacerDevtoolsState","state"],"mappings":"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"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
export default function PacerDevtools(): import("solid-js").JSX.Element;
|
|
@@ -1,14 +0,0 @@
|
|
|
1
|
-
import { createComponent } from "solid-js/web";
|
|
2
|
-
import { PacerContextProvider } from "./PacerContextProvider.js";
|
|
3
|
-
import { Shell } from "./components/Shell.js";
|
|
4
|
-
function PacerDevtools() {
|
|
5
|
-
return createComponent(PacerContextProvider, {
|
|
6
|
-
get children() {
|
|
7
|
-
return createComponent(Shell, {});
|
|
8
|
-
}
|
|
9
|
-
});
|
|
10
|
-
}
|
|
11
|
-
export {
|
|
12
|
-
PacerDevtools as default
|
|
13
|
-
};
|
|
14
|
-
//# sourceMappingURL=PacerDevtools.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"PacerDevtools.js","sources":["../../src/PacerDevtools.tsx"],"sourcesContent":["import { PacerContextProvider } from './PacerContextProvider'\nimport { Shell } from './components/Shell'\n\nexport default function PacerDevtools() {\n return (\n <PacerContextProvider>\n <Shell />\n </PacerContextProvider>\n )\n}\n"],"names":["PacerDevtools","_$createComponent","PacerContextProvider","children","Shell"],"mappings":";;;AAGA,SAAwBA,gBAAgB;AACtC,SAAAC,gBACGC,sBAAoB;AAAA,IAAA,IAAAC,WAAA;AAAA,aAAAF,gBAClBG,OAAK,EAAA;AAAA,IAAA;AAAA,EAAA,CAAA;AAGZ;"}
|
|
@@ -1,157 +0,0 @@
|
|
|
1
|
-
import { template, effect, className, insert, delegateEvents } from "solid-js/web";
|
|
2
|
-
import { pacerEventClient } from "@tanstack/pacer";
|
|
3
|
-
import { useStyles } from "../styles/use-styles.js";
|
|
4
|
-
var _tmpl$ = /* @__PURE__ */ template(`<div>No actions available for this util`), _tmpl$2 = /* @__PURE__ */ template(`<div>`), _tmpl$3 = /* @__PURE__ */ template(`<button><span>`), _tmpl$4 = /* @__PURE__ */ template(`<button><span></span>Flush`), _tmpl$5 = /* @__PURE__ */ template(`<button><span></span>Cancel`), _tmpl$6 = /* @__PURE__ */ template(`<button><span></span>Reset`), _tmpl$7 = /* @__PURE__ */ template(`<button><span></span>Clear`);
|
|
5
|
-
function ActionButtons(props) {
|
|
6
|
-
const styles = useStyles();
|
|
7
|
-
const utilInstance = props.instance;
|
|
8
|
-
const utilState = utilInstance?.store?.state;
|
|
9
|
-
const hasPending = utilState && "isPending" in utilState;
|
|
10
|
-
const hasEmpty = utilState && "isEmpty" in utilState;
|
|
11
|
-
const isPending = hasPending ? !!utilState.isPending : false;
|
|
12
|
-
const isEmpty = hasEmpty ? utilState.isEmpty : void 0;
|
|
13
|
-
const hasFlush = typeof utilInstance.flush === "function";
|
|
14
|
-
const hasCancel = typeof utilInstance.cancel === "function";
|
|
15
|
-
const hasReset = typeof utilInstance.reset === "function";
|
|
16
|
-
const hasClear = typeof utilInstance.clear === "function";
|
|
17
|
-
const hasStart = typeof utilInstance.start === "function";
|
|
18
|
-
const hasStop = typeof utilInstance.stop === "function";
|
|
19
|
-
const hasStartStop = hasStart && hasStop;
|
|
20
|
-
const isRunning = utilState?.isRunning ?? true;
|
|
21
|
-
if (!hasPending && !hasFlush && !hasCancel && !hasReset && !hasClear) {
|
|
22
|
-
return (() => {
|
|
23
|
-
var _el$ = _tmpl$();
|
|
24
|
-
effect(() => className(_el$, styles().sectionEmpty));
|
|
25
|
-
return _el$;
|
|
26
|
-
})();
|
|
27
|
-
}
|
|
28
|
-
const emitName = `d-${props.utilName}`;
|
|
29
|
-
return (() => {
|
|
30
|
-
var _el$2 = _tmpl$2();
|
|
31
|
-
insert(_el$2, hasPending && (() => {
|
|
32
|
-
var _el$3 = _tmpl$3(), _el$4 = _el$3.firstChild;
|
|
33
|
-
_el$3.$$mousedown = () => {
|
|
34
|
-
const next = !isPending;
|
|
35
|
-
utilInstance.store.setState((prev) => ({
|
|
36
|
-
...prev,
|
|
37
|
-
isPending: next
|
|
38
|
-
}));
|
|
39
|
-
pacerEventClient.emit(emitName, utilInstance);
|
|
40
|
-
};
|
|
41
|
-
insert(_el$3, isPending ? "Restore Pending" : "Trigger Pending", null);
|
|
42
|
-
effect((_p$) => {
|
|
43
|
-
var _v$ = styles().actionButton, _v$2 = styles().actionDotBlue;
|
|
44
|
-
_v$ !== _p$.e && className(_el$3, _p$.e = _v$);
|
|
45
|
-
_v$2 !== _p$.t && className(_el$4, _p$.t = _v$2);
|
|
46
|
-
return _p$;
|
|
47
|
-
}, {
|
|
48
|
-
e: void 0,
|
|
49
|
-
t: void 0
|
|
50
|
-
});
|
|
51
|
-
return _el$3;
|
|
52
|
-
})(), null);
|
|
53
|
-
insert(_el$2, hasFlush && (() => {
|
|
54
|
-
var _el$5 = _tmpl$4(), _el$6 = _el$5.firstChild;
|
|
55
|
-
_el$5.$$mousedown = () => {
|
|
56
|
-
utilInstance.flush();
|
|
57
|
-
pacerEventClient.emit(emitName, utilInstance);
|
|
58
|
-
};
|
|
59
|
-
effect((_p$) => {
|
|
60
|
-
var _v$3 = styles().actionButton, _v$4 = props.utilName.toLowerCase().includes("debouncer") && !isPending || props.utilName.toLowerCase().includes("throttler") && !isPending || props.utilName.toLowerCase().includes("batcher") && isEmpty || props.utilName.toLowerCase().includes("queuer") && isEmpty, _v$5 = styles().actionDotGreen;
|
|
61
|
-
_v$3 !== _p$.e && className(_el$5, _p$.e = _v$3);
|
|
62
|
-
_v$4 !== _p$.t && (_el$5.disabled = _p$.t = _v$4);
|
|
63
|
-
_v$5 !== _p$.a && className(_el$6, _p$.a = _v$5);
|
|
64
|
-
return _p$;
|
|
65
|
-
}, {
|
|
66
|
-
e: void 0,
|
|
67
|
-
t: void 0,
|
|
68
|
-
a: void 0
|
|
69
|
-
});
|
|
70
|
-
return _el$5;
|
|
71
|
-
})(), null);
|
|
72
|
-
insert(_el$2, hasCancel && (() => {
|
|
73
|
-
var _el$7 = _tmpl$5(), _el$8 = _el$7.firstChild;
|
|
74
|
-
_el$7.$$mousedown = () => {
|
|
75
|
-
utilInstance.cancel();
|
|
76
|
-
pacerEventClient.emit(emitName, utilInstance);
|
|
77
|
-
};
|
|
78
|
-
effect((_p$) => {
|
|
79
|
-
var _v$6 = styles().actionButton, _v$7 = props.utilName.toLowerCase().includes("debouncer") && !isPending || props.utilName.toLowerCase().includes("throttler") && !isPending || props.utilName.toLowerCase().includes("batcher") && isEmpty || props.utilName.toLowerCase().includes("queuer") && isEmpty, _v$8 = styles().actionDotRed;
|
|
80
|
-
_v$6 !== _p$.e && className(_el$7, _p$.e = _v$6);
|
|
81
|
-
_v$7 !== _p$.t && (_el$7.disabled = _p$.t = _v$7);
|
|
82
|
-
_v$8 !== _p$.a && className(_el$8, _p$.a = _v$8);
|
|
83
|
-
return _p$;
|
|
84
|
-
}, {
|
|
85
|
-
e: void 0,
|
|
86
|
-
t: void 0,
|
|
87
|
-
a: void 0
|
|
88
|
-
});
|
|
89
|
-
return _el$7;
|
|
90
|
-
})(), null);
|
|
91
|
-
insert(_el$2, hasReset && (() => {
|
|
92
|
-
var _el$9 = _tmpl$6(), _el$0 = _el$9.firstChild;
|
|
93
|
-
_el$9.$$mousedown = () => {
|
|
94
|
-
utilInstance.reset();
|
|
95
|
-
pacerEventClient.emit(emitName, utilInstance);
|
|
96
|
-
};
|
|
97
|
-
effect((_p$) => {
|
|
98
|
-
var _v$9 = styles().actionButton, _v$0 = styles().actionDotYellow;
|
|
99
|
-
_v$9 !== _p$.e && className(_el$9, _p$.e = _v$9);
|
|
100
|
-
_v$0 !== _p$.t && className(_el$0, _p$.t = _v$0);
|
|
101
|
-
return _p$;
|
|
102
|
-
}, {
|
|
103
|
-
e: void 0,
|
|
104
|
-
t: void 0
|
|
105
|
-
});
|
|
106
|
-
return _el$9;
|
|
107
|
-
})(), null);
|
|
108
|
-
insert(_el$2, hasClear && (() => {
|
|
109
|
-
var _el$1 = _tmpl$7(), _el$10 = _el$1.firstChild;
|
|
110
|
-
_el$1.$$mousedown = () => {
|
|
111
|
-
utilInstance.clear();
|
|
112
|
-
pacerEventClient.emit(emitName, utilInstance);
|
|
113
|
-
};
|
|
114
|
-
effect((_p$) => {
|
|
115
|
-
var _v$1 = styles().actionButton, _v$10 = props.utilName.toLowerCase().includes("batcher") && isEmpty || props.utilName.toLowerCase().includes("queuer") && isEmpty, _v$11 = styles().actionDotOrange;
|
|
116
|
-
_v$1 !== _p$.e && className(_el$1, _p$.e = _v$1);
|
|
117
|
-
_v$10 !== _p$.t && (_el$1.disabled = _p$.t = _v$10);
|
|
118
|
-
_v$11 !== _p$.a && className(_el$10, _p$.a = _v$11);
|
|
119
|
-
return _p$;
|
|
120
|
-
}, {
|
|
121
|
-
e: void 0,
|
|
122
|
-
t: void 0,
|
|
123
|
-
a: void 0
|
|
124
|
-
});
|
|
125
|
-
return _el$1;
|
|
126
|
-
})(), null);
|
|
127
|
-
insert(_el$2, hasStartStop && (() => {
|
|
128
|
-
var _el$11 = _tmpl$3(), _el$12 = _el$11.firstChild;
|
|
129
|
-
_el$11.$$mousedown = () => {
|
|
130
|
-
if (isRunning) {
|
|
131
|
-
utilInstance.stop();
|
|
132
|
-
} else {
|
|
133
|
-
utilInstance.start();
|
|
134
|
-
}
|
|
135
|
-
pacerEventClient.emit(emitName, utilInstance);
|
|
136
|
-
};
|
|
137
|
-
insert(_el$11, isRunning ? "Stop" : "Start", null);
|
|
138
|
-
effect((_p$) => {
|
|
139
|
-
var _v$12 = styles().actionButton, _v$13 = styles().actionDotPurple;
|
|
140
|
-
_v$12 !== _p$.e && className(_el$11, _p$.e = _v$12);
|
|
141
|
-
_v$13 !== _p$.t && className(_el$12, _p$.t = _v$13);
|
|
142
|
-
return _p$;
|
|
143
|
-
}, {
|
|
144
|
-
e: void 0,
|
|
145
|
-
t: void 0
|
|
146
|
-
});
|
|
147
|
-
return _el$11;
|
|
148
|
-
})(), null);
|
|
149
|
-
effect(() => className(_el$2, styles().actionsRow));
|
|
150
|
-
return _el$2;
|
|
151
|
-
})();
|
|
152
|
-
}
|
|
153
|
-
delegateEvents(["mousedown"]);
|
|
154
|
-
export {
|
|
155
|
-
ActionButtons
|
|
156
|
-
};
|
|
157
|
-
//# sourceMappingURL=ActionButtons.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"ActionButtons.js","sources":["../../../src/components/ActionButtons.tsx"],"sourcesContent":["import { pacerEventClient } from '@tanstack/pacer'\nimport { useStyles } from '../styles/use-styles'\nimport type { PacerEventName } from '@tanstack/pacer'\n\ntype ActionButtonsProps = {\n instance: any\n utilName: string\n}\n\nexport function ActionButtons(props: ActionButtonsProps) {\n const styles = useStyles()\n const utilInstance = props.instance\n const utilState = utilInstance?.store?.state\n const hasPending = utilState && 'isPending' in utilState\n const hasEmpty = utilState && 'isEmpty' in utilState\n const isPending = hasPending ? !!utilState.isPending : false\n const isEmpty = hasEmpty ? utilState.isEmpty : undefined\n\n const hasFlush = typeof utilInstance.flush === 'function'\n const hasCancel = typeof utilInstance.cancel === 'function'\n const hasReset = typeof utilInstance.reset === 'function'\n const hasClear = typeof utilInstance.clear === 'function'\n const hasStart = typeof utilInstance.start === 'function'\n const hasStop = typeof utilInstance.stop === 'function'\n const hasStartStop = hasStart && hasStop\n\n const isRunning = utilState?.isRunning ?? true\n\n if (!hasPending && !hasFlush && !hasCancel && !hasReset && !hasClear) {\n return (\n <div class={styles().sectionEmpty}>\n No actions available for this util\n </div>\n )\n }\n\n const emitName = `d-${props.utilName}` as PacerEventName\n\n return (\n <div class={styles().actionsRow}>\n {hasPending && (\n <button\n class={styles().actionButton}\n onMouseDown={() => {\n const next = !isPending\n utilInstance.store.setState((prev: any) => ({\n ...prev,\n isPending: next,\n }))\n pacerEventClient.emit(emitName, utilInstance)\n }}\n >\n <span class={styles().actionDotBlue} />\n {isPending ? 'Restore Pending' : 'Trigger Pending'}\n </button>\n )}\n {hasFlush && (\n <button\n class={styles().actionButton}\n onMouseDown={() => {\n utilInstance.flush()\n pacerEventClient.emit(emitName, utilInstance)\n }}\n disabled={\n (props.utilName.toLowerCase().includes('debouncer') &&\n !isPending) ||\n (props.utilName.toLowerCase().includes('throttler') &&\n !isPending) ||\n (props.utilName.toLowerCase().includes('batcher') && isEmpty) ||\n (props.utilName.toLowerCase().includes('queuer') && isEmpty)\n }\n >\n <span class={styles().actionDotGreen} />\n Flush\n </button>\n )}\n {hasCancel && (\n <button\n class={styles().actionButton}\n onMouseDown={() => {\n utilInstance.cancel()\n pacerEventClient.emit(emitName, utilInstance)\n }}\n disabled={\n (props.utilName.toLowerCase().includes('debouncer') &&\n !isPending) ||\n (props.utilName.toLowerCase().includes('throttler') &&\n !isPending) ||\n (props.utilName.toLowerCase().includes('batcher') && isEmpty) ||\n (props.utilName.toLowerCase().includes('queuer') && isEmpty)\n }\n >\n <span class={styles().actionDotRed} />\n Cancel\n </button>\n )}\n {hasReset && (\n <button\n class={styles().actionButton}\n onMouseDown={() => {\n utilInstance.reset()\n pacerEventClient.emit(emitName, utilInstance)\n }}\n >\n <span class={styles().actionDotYellow} />\n Reset\n </button>\n )}\n {hasClear && (\n <button\n class={styles().actionButton}\n onMouseDown={() => {\n utilInstance.clear()\n pacerEventClient.emit(emitName, utilInstance)\n }}\n disabled={\n (props.utilName.toLowerCase().includes('batcher') && isEmpty) ||\n (props.utilName.toLowerCase().includes('queuer') && isEmpty)\n }\n >\n <span class={styles().actionDotOrange} />\n Clear\n </button>\n )}\n {hasStartStop && (\n <button\n class={styles().actionButton}\n onMouseDown={() => {\n if (isRunning) {\n utilInstance.stop()\n } else {\n utilInstance.start()\n }\n pacerEventClient.emit(emitName, utilInstance)\n }}\n >\n <span class={styles().actionDotPurple} />\n {isRunning ? 'Stop' : 'Start'}\n </button>\n )}\n </div>\n )\n}\n"],"names":["ActionButtons","props","styles","useStyles","utilInstance","instance","utilState","store","state","hasPending","hasEmpty","isPending","isEmpty","undefined","hasFlush","flush","hasCancel","cancel","hasReset","reset","hasClear","clear","hasStart","start","hasStop","stop","hasStartStop","isRunning","_el$","_tmpl$","_$effect","_$className","sectionEmpty","emitName","utilName","_el$2","_tmpl$2","_$insert","_el$3","_tmpl$3","_el$4","firstChild","$$mousedown","next","setState","prev","pacerEventClient","emit","_p$","_v$","actionButton","_v$2","actionDotBlue","e","t","_el$5","_tmpl$4","_el$6","_v$3","_v$4","toLowerCase","includes","_v$5","actionDotGreen","disabled","a","_el$7","_tmpl$5","_el$8","_v$6","_v$7","_v$8","actionDotRed","_el$9","_tmpl$6","_el$0","_v$9","_v$0","actionDotYellow","_el$1","_tmpl$7","_el$10","_v$1","_v$10","_v$11","actionDotOrange","_el$11","_el$12","_v$12","_v$13","actionDotPurple","actionsRow","_$delegateEvents"],"mappings":"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"}
|
|
@@ -1,11 +0,0 @@
|
|
|
1
|
-
type DetailsPanelProps = {
|
|
2
|
-
selectedInstance: () => {
|
|
3
|
-
instance: any;
|
|
4
|
-
type: string;
|
|
5
|
-
} | null;
|
|
6
|
-
utilState: () => {
|
|
7
|
-
lastUpdatedByKey: Record<string, number>;
|
|
8
|
-
};
|
|
9
|
-
};
|
|
10
|
-
export declare function DetailsPanel(props: DetailsPanelProps): import("solid-js").JSX.Element;
|
|
11
|
-
export {};
|
|
@@ -1,80 +0,0 @@
|
|
|
1
|
-
import { template, insert, effect, className, createComponent } from "solid-js/web";
|
|
2
|
-
import { JsonTree } from "@tanstack/devtools-ui";
|
|
3
|
-
import { useStyles } from "../styles/use-styles.js";
|
|
4
|
-
import { ActionButtons } from "./ActionButtons.js";
|
|
5
|
-
import { StateHeader } from "./StateHeader.js";
|
|
6
|
-
var _tmpl$ = /* @__PURE__ */ template(`<div>`), _tmpl$2 = /* @__PURE__ */ template(`<div>Select a util from the left panel to view its state`), _tmpl$3 = /* @__PURE__ */ template(`<div><div><div>Actions</div></div><div><div>State</div><div></div></div><div><div>Options</div><div>`);
|
|
7
|
-
function DetailsPanel(props) {
|
|
8
|
-
const styles = useStyles();
|
|
9
|
-
return (() => {
|
|
10
|
-
var _el$ = _tmpl$();
|
|
11
|
-
insert(_el$, () => {
|
|
12
|
-
const entry = props.selectedInstance();
|
|
13
|
-
if (!entry) {
|
|
14
|
-
return (() => {
|
|
15
|
-
var _el$2 = _tmpl$2();
|
|
16
|
-
effect(() => className(_el$2, styles().noSelection));
|
|
17
|
-
return _el$2;
|
|
18
|
-
})();
|
|
19
|
-
}
|
|
20
|
-
return [createComponent(StateHeader, {
|
|
21
|
-
get selectedInstance() {
|
|
22
|
-
return props.selectedInstance;
|
|
23
|
-
},
|
|
24
|
-
get utilState() {
|
|
25
|
-
return props.utilState;
|
|
26
|
-
}
|
|
27
|
-
}), (() => {
|
|
28
|
-
var _el$3 = _tmpl$3(), _el$4 = _el$3.firstChild, _el$5 = _el$4.firstChild, _el$6 = _el$4.nextSibling, _el$7 = _el$6.firstChild, _el$8 = _el$7.nextSibling, _el$9 = _el$6.nextSibling, _el$0 = _el$9.firstChild, _el$1 = _el$0.nextSibling;
|
|
29
|
-
insert(_el$4, createComponent(ActionButtons, {
|
|
30
|
-
get instance() {
|
|
31
|
-
return entry.instance;
|
|
32
|
-
},
|
|
33
|
-
get utilName() {
|
|
34
|
-
return entry.type;
|
|
35
|
-
}
|
|
36
|
-
}), null);
|
|
37
|
-
insert(_el$8, createComponent(JsonTree, {
|
|
38
|
-
get value() {
|
|
39
|
-
return entry.instance.store?.state;
|
|
40
|
-
}
|
|
41
|
-
}));
|
|
42
|
-
insert(_el$1, createComponent(JsonTree, {
|
|
43
|
-
get value() {
|
|
44
|
-
return entry.instance.options;
|
|
45
|
-
}
|
|
46
|
-
}));
|
|
47
|
-
effect((_p$) => {
|
|
48
|
-
var _v$ = styles().detailsGrid, _v$2 = styles().detailSection, _v$3 = styles().detailSectionHeader, _v$4 = styles().detailSection, _v$5 = styles().detailSectionHeader, _v$6 = styles().stateContent, _v$7 = styles().detailSection, _v$8 = styles().detailSectionHeader, _v$9 = styles().stateContent;
|
|
49
|
-
_v$ !== _p$.e && className(_el$3, _p$.e = _v$);
|
|
50
|
-
_v$2 !== _p$.t && className(_el$4, _p$.t = _v$2);
|
|
51
|
-
_v$3 !== _p$.a && className(_el$5, _p$.a = _v$3);
|
|
52
|
-
_v$4 !== _p$.o && className(_el$6, _p$.o = _v$4);
|
|
53
|
-
_v$5 !== _p$.i && className(_el$7, _p$.i = _v$5);
|
|
54
|
-
_v$6 !== _p$.n && className(_el$8, _p$.n = _v$6);
|
|
55
|
-
_v$7 !== _p$.s && className(_el$9, _p$.s = _v$7);
|
|
56
|
-
_v$8 !== _p$.h && className(_el$0, _p$.h = _v$8);
|
|
57
|
-
_v$9 !== _p$.r && className(_el$1, _p$.r = _v$9);
|
|
58
|
-
return _p$;
|
|
59
|
-
}, {
|
|
60
|
-
e: void 0,
|
|
61
|
-
t: void 0,
|
|
62
|
-
a: void 0,
|
|
63
|
-
o: void 0,
|
|
64
|
-
i: void 0,
|
|
65
|
-
n: void 0,
|
|
66
|
-
s: void 0,
|
|
67
|
-
h: void 0,
|
|
68
|
-
r: void 0
|
|
69
|
-
});
|
|
70
|
-
return _el$3;
|
|
71
|
-
})()];
|
|
72
|
-
});
|
|
73
|
-
effect(() => className(_el$, styles().stateDetails));
|
|
74
|
-
return _el$;
|
|
75
|
-
})();
|
|
76
|
-
}
|
|
77
|
-
export {
|
|
78
|
-
DetailsPanel
|
|
79
|
-
};
|
|
80
|
-
//# sourceMappingURL=DetailsPanel.js.map
|