@qwik.dev/devtools 2.0.0-beta.45 → 2.0.0-beta.47

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 (32) hide show
  1. package/dist/kit/index.d.mts +6 -0
  2. package/dist/plugin/codegen.mjs +1 -1
  3. package/dist/plugin/{create-hook-runtime-CoRDu99E.mjs → create-hook-runtime-CAtQC5B3.mjs} +40 -18
  4. package/dist/plugin/index.mjs +12 -1
  5. package/dist/ui/lib-types/ui/src/features/HookTree/hookTreeHelpers.d.ts +1 -1
  6. package/dist/ui/packages/devtools/ui/src/components/DevtoolsButton/DevtoolsButton.qwik.mjs +6 -6
  7. package/dist/ui/packages/devtools/ui/src/components/DevtoolsPanel/DevtoolsPanel.qwik.mjs +19 -19
  8. package/dist/ui/packages/devtools/ui/src/components/Tab/Tab.qwik.mjs +2 -2
  9. package/dist/ui/packages/devtools/ui/src/components/Tree/Tree.qwik.mjs +5 -5
  10. package/dist/ui/packages/devtools/ui/src/devtools/CommandPalette.qwik.mjs +13 -13
  11. package/dist/ui/packages/devtools/ui/src/devtools/CustomizeTabsPanel.qwik.mjs +11 -11
  12. package/dist/ui/packages/devtools/ui/src/devtools/DevtoolsSidebar.qwik.mjs +5 -5
  13. package/dist/ui/packages/devtools/ui/src/devtools/QwikDevtools.qwik.mjs +3 -3
  14. package/dist/ui/packages/devtools/ui/src/devtools/QwikDevtoolsExtension.qwik.mjs +2 -2
  15. package/dist/ui/packages/devtools/ui/src/features/BuildAnalysis/BuildAnalysis.qwik.mjs +5 -5
  16. package/dist/ui/packages/devtools/ui/src/features/CodeBreak/CodeBreak.qwik.mjs +3 -3
  17. package/dist/ui/packages/devtools/ui/src/features/CodeBreak/HtmlParser.qwik.mjs +4 -4
  18. package/dist/ui/packages/devtools/ui/src/features/CodeBreak/StateParser.qwik.mjs +4 -4
  19. package/dist/ui/packages/devtools/ui/src/features/HookTree/HookTree.qwik.mjs +23 -23
  20. package/dist/ui/packages/devtools/ui/src/features/HookTree/hookTreeHelpers.qwik.mjs +2 -2
  21. package/dist/ui/packages/devtools/ui/src/features/Overview/Overview.qwik.mjs +6 -6
  22. package/dist/ui/packages/devtools/ui/src/features/Packages/Packages.qwik.mjs +15 -15
  23. package/dist/ui/packages/devtools/ui/src/features/Packages/components/DependencyCard/DependencyCard.qwik.mjs +6 -6
  24. package/dist/ui/packages/devtools/ui/src/features/Packages/components/DependencyToolbar/DependencyToolbar.qwik.mjs +4 -4
  25. package/dist/ui/packages/devtools/ui/src/features/Packages/components/PackageIcon/PackageIcon.qwik.mjs +2 -2
  26. package/dist/ui/packages/devtools/ui/src/features/Packages/components/SearchResultCard/SearchResultCard.qwik.mjs +3 -3
  27. package/dist/ui/packages/devtools/ui/src/features/Performance/Performance.qwik.mjs +10 -10
  28. package/dist/ui/packages/devtools/ui/src/features/Preloads/Preloads.qwik.mjs +19 -19
  29. package/dist/ui/packages/devtools/ui/src/features/RenderTree/RenderTree.qwik.mjs +13 -13
  30. package/dist/ui/packages/devtools/ui/src/features/RenderTree/components/HookFiltersCard.qwik.mjs +2 -2
  31. package/dist/ui/q-manifest.json +62 -62
  32. package/package.json +4 -4
@@ -1,7 +1,7 @@
1
1
  import { IconGripVertical, IconXMark } from "../components/Icons/Icons.qwik.mjs";
2
2
  import { IconButton } from "../components/IconButton/IconButton.qwik.mjs";
3
3
  import { getAvailableTabs, reorderVisibleTabs, resolveTabs, saveVisibleTabIds, setTabVisible } from "./sidebar-tabs.qwik.mjs";
4
- import { Slot, _captures, _fnSignal, _jsxSorted, _qrlSync, _wrapProp, componentQrl, inlinedQrl, useSignal } from "@qwik.dev/core";
4
+ import { Slot, _capturesObj, _fnSignal, _jsxSorted, _qrlSync, _wrapProp, componentQrl, inlinedQrl, useSignal } from "@qwik.dev/core";
5
5
  var _hf0 = (p0) => ["transition-opacity", p0.dragging ? "opacity-40" : ""];
6
6
  var _hf0_str = "[\"transition-opacity\",p0.dragging?\"opacity-40\":\"\"]";
7
7
  var _hf1 = (p0, p1) => p0.value === p1;
@@ -23,7 +23,7 @@ var TabRow = /*#__PURE__*/ componentQrl(/*#__PURE__*/ inlinedQrl((props) => /*#_
23
23
  class: "h-3.5 w-3.5 rounded",
24
24
  style: { accentColor: "var(--color-primary-active)" },
25
25
  "q-e:change": /*#__PURE__*/ inlinedQrl((_, el) => {
26
- const props = _captures[0];
26
+ let props = _capturesObj._[0];
27
27
  return props.onToggle$(props.id, el.checked);
28
28
  }, "TabRow_component_li_label_input_q_e_change_34xiTR3EoWM", [props])
29
29
  }, null, 3, null),
@@ -41,22 +41,22 @@ var CustomizeTabsPanel = /*#__PURE__*/ componentQrl(/*#__PURE__*/ inlinedQrl((_r
41
41
  const visibleTabs = resolveTabs(pendingVisibleIds.value);
42
42
  const availableTabs = getAvailableTabs(pendingVisibleIds.value);
43
43
  const toggle$ = /*#__PURE__*/ inlinedQrl((id, checked) => {
44
- const pendingVisibleIds = _captures[0];
44
+ let pendingVisibleIds = _capturesObj._[0];
45
45
  pendingVisibleIds.value = setTabVisible(pendingVisibleIds.value, id, checked);
46
46
  }, "CustomizeTabsPanel_component_toggle_7ito2DKngBw", [pendingVisibleIds]);
47
47
  const endDrag$ = /*#__PURE__*/ inlinedQrl(() => {
48
- const draggingId = _captures[0];
48
+ let draggingId = _capturesObj._[0];
49
49
  return draggingId.value = null;
50
50
  }, "CustomizeTabsPanel_component_endDrag_GuR2fyNtG9E", [draggingId]);
51
51
  return /*#__PURE__*/ _jsxSorted("div", null, { class: "absolute inset-0 z-30 flex items-start justify-start p-4" }, [/*#__PURE__*/ _jsxSorted("div", null, {
52
52
  class: "absolute inset-0 bg-black/40 backdrop-blur-sm transition-opacity",
53
53
  "q-e:click": /*#__PURE__*/ inlinedQrl(() => {
54
- const _rawProps = _captures[0];
54
+ let _rawProps = _capturesObj._[0];
55
55
  return _rawProps.state.isCustomizeOpen = false;
56
56
  }, "CustomizeTabsPanel_component_div_div_q_e_click_l3t3UrZvZ6Y", [_rawProps])
57
57
  }, null, 3, null), /*#__PURE__*/ _jsxSorted("div", null, { class: "glass-panel relative z-10 flex max-h-full w-80 flex-col overflow-hidden rounded-2xl" }, [
58
58
  /*#__PURE__*/ _jsxSorted("div", null, { class: "flex items-start justify-between p-4 pb-3" }, [/*#__PURE__*/ _jsxSorted("div", null, null, [/*#__PURE__*/ _jsxSorted("h2", null, { class: "text-foreground text-base font-semibold" }, "Customize Tabs", 3, null), /*#__PURE__*/ _jsxSorted("p", null, { class: "text-muted-foreground text-xs" }, "Choose which tools appear in the sidebar.", 3, null)], 3, null), /*#__PURE__*/ _jsxSorted(IconButton, { onClick$: /*#__PURE__*/ inlinedQrl(() => {
59
- const _rawProps = _captures[0];
59
+ let _rawProps = _capturesObj._[0];
60
60
  return _rawProps.state.isCustomizeOpen = false;
61
61
  }, "CustomizeTabsPanel_component_div_div_div_IconButton_onClick_BD1Lcw5n01g", [_rawProps]) }, { title: "Close" }, /*#__PURE__*/ _jsxSorted(IconXMark, null, { class: "h-5 w-5" }, null, 3, "Ig_4"), 0, "Ig_5")], 1, null),
62
62
  /*#__PURE__*/ _jsxSorted("div", null, { class: "custom-scrollbar flex flex-1 flex-col gap-4 overflow-y-auto px-4 pb-3" }, [/*#__PURE__*/ _jsxSorted("section", {
@@ -74,7 +74,7 @@ var CustomizeTabsPanel = /*#__PURE__*/ componentQrl(/*#__PURE__*/ inlinedQrl((_r
74
74
  dragging: _fnSignal(_hf1, [draggingId, id], _hf1_str),
75
75
  id,
76
76
  onDragEnter$: /*#__PURE__*/ inlinedQrl(() => {
77
- const draggingId = _captures[0], id = _captures[1], pendingVisibleIds = _captures[2];
77
+ let draggingId = _capturesObj._[0], id = _capturesObj._[1], pendingVisibleIds = _capturesObj._[2];
78
78
  const dragged = draggingId.value;
79
79
  if (dragged && dragged !== id) pendingVisibleIds.value = reorderVisibleTabs(pendingVisibleIds.value, dragged, id);
80
80
  }, "CustomizeTabsPanel_component_div_div_div_section_ul_TabRow_onDragEnter_yYXv7uhV1nk", [
@@ -83,8 +83,8 @@ var CustomizeTabsPanel = /*#__PURE__*/ componentQrl(/*#__PURE__*/ inlinedQrl((_r
83
83
  pendingVisibleIds
84
84
  ]),
85
85
  onDragStart$: /*#__PURE__*/ inlinedQrl(() => {
86
- const draggingId = _captures[0];
87
- return draggingId.value = _captures[1];
86
+ let draggingId = _capturesObj._[0];
87
+ return draggingId.value = _capturesObj._[1];
88
88
  }, "CustomizeTabsPanel_component_div_div_div_section_ul_TabRow_onDragStart_j7We62qpm2E", [draggingId, id]),
89
89
  title: _wrapProp(tab, "title")
90
90
  }, {
@@ -108,13 +108,13 @@ var CustomizeTabsPanel = /*#__PURE__*/ componentQrl(/*#__PURE__*/ inlinedQrl((_r
108
108
  /*#__PURE__*/ _jsxSorted("div", null, { class: "border-glass-border flex justify-end gap-2 border-t p-4" }, [/*#__PURE__*/ _jsxSorted("button", null, {
109
109
  class: "text-muted-foreground hover:text-foreground rounded-lg px-4 py-1.5 text-sm font-medium transition-colors",
110
110
  "q-e:click": /*#__PURE__*/ inlinedQrl(() => {
111
- const _rawProps = _captures[0];
111
+ let _rawProps = _capturesObj._[0];
112
112
  return _rawProps.state.isCustomizeOpen = false;
113
113
  }, "CustomizeTabsPanel_component_div_div_div_button_q_e_click_bKi0Y3F44SM", [_rawProps])
114
114
  }, "Cancel", 3, null), /*#__PURE__*/ _jsxSorted("button", null, {
115
115
  class: "bg-primary rounded-lg px-4 py-1.5 text-sm font-medium text-white transition-opacity hover:opacity-90",
116
116
  "q-e:click": /*#__PURE__*/ inlinedQrl(() => {
117
- const _rawProps = _captures[0], pendingVisibleIds = _captures[1];
117
+ let _rawProps = _capturesObj._[0], pendingVisibleIds = _capturesObj._[1];
118
118
  _rawProps.state.visibleTabIds = [...pendingVisibleIds.value];
119
119
  saveVisibleTabIds(pendingVisibleIds.value);
120
120
  _rawProps.state.isCustomizeOpen = false;
@@ -2,7 +2,7 @@ import { IconAdjustmentsHorizontal, IconEllipsisHorizontal } from "../components
2
2
  import { getAvailableTabs, getVisibleTabs } from "./sidebar-tabs.qwik.mjs";
3
3
  import { Tab } from "../components/Tab/Tab.qwik.mjs";
4
4
  import { QwikThemeToggle } from "../components/ThemeToggle/QwikThemeToggle.qwik.mjs";
5
- import { Slot, _captures, _fnSignal, _jsxSorted, _wrapProp, componentQrl, inlinedQrl, useSignal } from "@qwik.dev/core";
5
+ import { Slot, _capturesObj, _fnSignal, _jsxSorted, _wrapProp, componentQrl, inlinedQrl, useSignal } from "@qwik.dev/core";
6
6
  import { Fragment } from "@qwik.dev/core/jsx-runtime";
7
7
  var _hf0 = (p0, p1) => p1.value || p0;
8
8
  var _hf0_str = "p1.value||p0";
@@ -18,7 +18,7 @@ var DevtoolsSidebar = /*#__PURE__*/ componentQrl(/*#__PURE__*/ inlinedQrl((_rawP
18
18
  const moreTabs = getAvailableTabs(_rawProps.state.visibleTabIds);
19
19
  const isMoreActive = moreTabs.some((tab) => tab.id === _rawProps.state.activeTab);
20
20
  const DevtoolsSidebar_component_div_div_div_Fragment_div_button_q_e_click_UeLOkJekfd8 = /*#__PURE__*/ inlinedQrl((_, _1, id) => {
21
- const _rawProps = _captures[0], isMoreOpen = _captures[1];
21
+ let _rawProps = _capturesObj._[0], isMoreOpen = _capturesObj._[1];
22
22
  _rawProps.state.activeTab = id;
23
23
  isMoreOpen.value = false;
24
24
  }, "DevtoolsSidebar_component_div_div_div_Fragment_div_button_q_e_click_UeLOkJekfd8", [_rawProps, isMoreOpen]).m();
@@ -29,13 +29,13 @@ var DevtoolsSidebar = /*#__PURE__*/ componentQrl(/*#__PURE__*/ inlinedQrl((_rawP
29
29
  moreTabs.length > 0 && /*#__PURE__*/ _jsxSorted("div", null, { class: "relative" }, [/*#__PURE__*/ _jsxSorted(SidebarIconButton, { active: _fnSignal(_hf0, [isMoreActive, isMoreOpen], _hf0_str) }, {
30
30
  title: "More tools",
31
31
  onClick$: /*#__PURE__*/ inlinedQrl(() => {
32
- const isMoreOpen = _captures[0];
32
+ let isMoreOpen = _capturesObj._[0];
33
33
  return isMoreOpen.value = !isMoreOpen.value;
34
34
  }, "DevtoolsSidebar_component_div_div_div_SidebarIconButton_onClick_Ehnn3kErcX8", [isMoreOpen])
35
35
  }, /*#__PURE__*/ _jsxSorted(IconEllipsisHorizontal, null, { class: "h-6 w-6" }, null, 3, "BY_2"), 1, "BY_3"), isMoreOpen.value && /*#__PURE__*/ _jsxSorted(Fragment, null, null, [/*#__PURE__*/ _jsxSorted("div", null, {
36
36
  class: "fixed inset-0 z-20",
37
37
  "q-e:click": /*#__PURE__*/ inlinedQrl(() => {
38
- const isMoreOpen = _captures[0];
38
+ let isMoreOpen = _capturesObj._[0];
39
39
  return isMoreOpen.value = false;
40
40
  }, "DevtoolsSidebar_component_div_div_div_Fragment_div_q_e_click_90NEvxKYiKk", [isMoreOpen])
41
41
  }, null, 3, null), /*#__PURE__*/ _jsxSorted("div", null, { class: "glass-panel absolute bottom-0 left-full z-30 ml-2 flex min-w-40 flex-col gap-1 rounded-xl p-2" }, moreTabs.map((tab) => {
@@ -46,7 +46,7 @@ var DevtoolsSidebar = /*#__PURE__*/ componentQrl(/*#__PURE__*/ inlinedQrl((_rawP
46
46
  }, { class: "text-muted-foreground hover:bg-card-item-hover-bg hover:text-foreground flex items-center gap-3 rounded-lg px-2 py-1.5 text-left" }, [tab.renderIcon(), /*#__PURE__*/ _jsxSorted("span", null, { class: "text-foreground text-sm" }, _wrapProp(tab, "title"), 1, null)], 4, id);
47
47
  }), 1, null)], 1, "BY_4")], 1, "BY_5"),
48
48
  !_rawProps.state.isExtension && /*#__PURE__*/ _jsxSorted(SidebarIconButton, { onClick$: /*#__PURE__*/ inlinedQrl(() => {
49
- const _rawProps = _captures[0];
49
+ let _rawProps = _capturesObj._[0];
50
50
  return _rawProps.state.isCustomizeOpen = true;
51
51
  }, "DevtoolsSidebar_component_div_div_SidebarIconButton_onClick_h0rhNZi5Tq0", [_rawProps]) }, { title: "Customize Tabs" }, /*#__PURE__*/ _jsxSorted(IconAdjustmentsHorizontal, null, { class: "h-6 w-6" }, null, 3, "BY_6"), 0, "BY_7"),
52
52
  /*#__PURE__*/ _jsxSorted("div", null, { class: "mb-2 opacity-80 transition-opacity hover:opacity-100" }, /*#__PURE__*/ _jsxSorted(QwikThemeToggle, null, null, null, 3, "BY_8"), 1, null)
@@ -12,14 +12,14 @@ import { CustomizeTabsPanel } from "./CustomizeTabsPanel.qwik.mjs";
12
12
  import { CommandPalette } from "./CommandPalette.qwik.mjs";
13
13
  import { ensurePreloadRuntime } from "../runtime/preloads.qwik.mjs";
14
14
  import { isExcludedPathname, normalizeExcludePathnames } from "../../../kit/src/overlay-paths.qwik.mjs";
15
- import { _captures, _jsxSorted, componentQrl, inlinedQrl, useSignal, useStore, useVisibleTaskQrl } from "@qwik.dev/core";
15
+ import { _capturesObj, _jsxSorted, componentQrl, inlinedQrl, useSignal, useStore, useVisibleTaskQrl } from "@qwik.dev/core";
16
16
  import { QWIK_DEVTOOLS_GLOBAL, getQwikDevtoolsGlobal } from "@qwik.dev/devtools/kit";
17
17
  var QwikDevtools = /*#__PURE__*/ componentQrl(/*#__PURE__*/ inlinedQrl((props) => {
18
18
  const state = useStore(createDevtoolsState());
19
19
  const excludePathnames = normalizeExcludePathnames(props.excludePathnames);
20
20
  const shouldRender = useSignal(excludePathnames.length === 0);
21
21
  useVisibleTaskQrl(/*#__PURE__*/ inlinedQrl(async () => {
22
- const excludePathnames = _captures[0], shouldRender = _captures[1], state = _captures[2];
22
+ let excludePathnames = _capturesObj._[0], shouldRender = _capturesObj._[1], state = _capturesObj._[2];
23
23
  if (isExcludedPathname(location.pathname, excludePathnames)) {
24
24
  shouldRender.value = false;
25
25
  return;
@@ -37,7 +37,7 @@ var QwikDevtools = /*#__PURE__*/ componentQrl(/*#__PURE__*/ inlinedQrl((props) =
37
37
  state
38
38
  ]), { strategy: "document-ready" });
39
39
  useVisibleTaskQrl(/*#__PURE__*/ inlinedQrl(({ cleanup }) => {
40
- const state = _captures[0];
40
+ let state = _capturesObj._[0];
41
41
  const handleShortcut = (event) => {
42
42
  if ((event.metaKey || event.ctrlKey) && (event.key === "k" || event.key === "K")) {
43
43
  if (!state.isOpen) return;
@@ -3,7 +3,7 @@ import { loadDevtoolsData } from "./rpc.qwik.mjs";
3
3
  import { DevtoolsContent } from "./DevtoolsContent.qwik.mjs";
4
4
  import { createDevtoolsState } from "./state.qwik.mjs";
5
5
  import { DevtoolsSidebar } from "./DevtoolsSidebar.qwik.mjs";
6
- import { _captures, _jsxSorted, componentQrl, inlinedQrl, useStore, useVisibleTaskQrl } from "@qwik.dev/core";
6
+ import { _capturesObj, _jsxSorted, componentQrl, inlinedQrl, useStore, useVisibleTaskQrl } from "@qwik.dev/core";
7
7
  /**
8
8
  * Extension-only devtools layout.
9
9
  *
@@ -18,7 +18,7 @@ import { _captures, _jsxSorted, componentQrl, inlinedQrl, useStore, useVisibleTa
18
18
  var QwikDevtoolsExtension = /*#__PURE__*/ componentQrl(/*#__PURE__*/ inlinedQrl(() => {
19
19
  const state = useStore(createDevtoolsState({ isExtension: true }));
20
20
  useVisibleTaskQrl(/*#__PURE__*/ inlinedQrl(async () => {
21
- const state = _captures[0];
21
+ let state = _capturesObj._[0];
22
22
  await loadDevtoolsData(state);
23
23
  }, "QwikDevtoolsExtension_component_useVisibleTask_uLhNm8VeHHc", [state]));
24
24
  return /*#__PURE__*/ _jsxSorted("div", null, {
@@ -1,5 +1,5 @@
1
1
  import { getDevtoolsRpc } from "../../devtools/rpc.qwik.mjs";
2
- import { _captures, _fnSignal, _jsxSorted, _wrapProp, componentQrl, inlinedQrl, isBrowser, useSignal, useVisibleTaskQrl } from "@qwik.dev/core";
2
+ import { _capturesObj, _fnSignal, _jsxSorted, _wrapProp, componentQrl, inlinedQrl, isBrowser, useSignal, useVisibleTaskQrl } from "@qwik.dev/core";
3
3
  import { Fragment } from "@qwik.dev/core/jsx-runtime";
4
4
  var _hf0 = (p0) => p0.value ? "Rebuilding..." : "Rebuild Report";
5
5
  var _hf0_str = "p0.value?\"Rebuilding...\":\"Rebuild Report\"";
@@ -24,7 +24,7 @@ var BuildAnalysis = /*#__PURE__*/ componentQrl(/*#__PURE__*/ inlinedQrl(() => {
24
24
  const buildTriggerHint = useSignal("");
25
25
  const errorMessage = useSignal("");
26
26
  const loadStatus = /*#__PURE__*/ inlinedQrl(async () => {
27
- const buildCommand = _captures[0], buildTriggerHint = _captures[1], canTriggerBuild = _captures[2], errorMessage = _captures[3], hasReport = _captures[4], isChecking = _captures[5], reportPath = _captures[6];
27
+ let buildCommand = _capturesObj._[0], buildTriggerHint = _capturesObj._[1], canTriggerBuild = _capturesObj._[2], errorMessage = _capturesObj._[3], hasReport = _capturesObj._[4], isChecking = _capturesObj._[5], reportPath = _capturesObj._[6];
28
28
  isChecking.value = true;
29
29
  errorMessage.value = "";
30
30
  try {
@@ -49,11 +49,11 @@ var BuildAnalysis = /*#__PURE__*/ componentQrl(/*#__PURE__*/ inlinedQrl(() => {
49
49
  reportPath
50
50
  ]);
51
51
  const refreshFrame = /*#__PURE__*/ inlinedQrl(() => {
52
- const iframeVersion = _captures[0];
52
+ let iframeVersion = _capturesObj._[0];
53
53
  iframeVersion.value += 1;
54
54
  }, "BuildAnalysis_component_refreshFrame_KBOtgw7vjAM", [iframeVersion]);
55
55
  const buildReport = /*#__PURE__*/ inlinedQrl(async () => {
56
- const buildCommand = _captures[0], buildTriggerHint = _captures[1], canTriggerBuild = _captures[2], errorMessage = _captures[3], iframeVersion = _captures[4], isBuilding = _captures[5], loadStatus = _captures[6];
56
+ let buildCommand = _capturesObj._[0], buildTriggerHint = _capturesObj._[1], canTriggerBuild = _capturesObj._[2], errorMessage = _capturesObj._[3], iframeVersion = _capturesObj._[4], isBuilding = _capturesObj._[5], loadStatus = _capturesObj._[6];
57
57
  if (!buildCommand.value) {
58
58
  errorMessage.value = "No build script found. Expected \"build.client\" or \"build\" in package.json.";
59
59
  return;
@@ -88,7 +88,7 @@ var BuildAnalysis = /*#__PURE__*/ componentQrl(/*#__PURE__*/ inlinedQrl(() => {
88
88
  loadStatus
89
89
  ]);
90
90
  useVisibleTaskQrl(/*#__PURE__*/ inlinedQrl(async () => {
91
- const loadStatus = _captures[0];
91
+ let loadStatus = _capturesObj._[0];
92
92
  await loadStatus();
93
93
  }, "BuildAnalysis_component_useVisibleTask_aOkClGsXcvo", [loadStatus]));
94
94
  return /*#__PURE__*/ _jsxSorted("div", null, { class: "flex h-full min-h-0 flex-col gap-4" }, [/*#__PURE__*/ _jsxSorted("div", null, { class: "border-glass-border bg-card-item-bg rounded-2xl border p-5" }, /*#__PURE__*/ _jsxSorted("div", null, { class: "flex flex-col gap-3" }, [
@@ -1,6 +1,6 @@
1
1
  import { StateParser } from "./StateParser.qwik.mjs";
2
2
  import { HtmlParser } from "./HtmlParser.qwik.mjs";
3
- import { _captures, _jsxSorted, componentQrl, inlinedQrl, useSignal, useStylesQrl } from "@qwik.dev/core";
3
+ import { _capturesObj, _jsxSorted, componentQrl, inlinedQrl, useSignal, useStylesQrl } from "@qwik.dev/core";
4
4
  var CodeBreak = /*#__PURE__*/ componentQrl(/*#__PURE__*/ inlinedQrl(() => {
5
5
  useStylesQrl(/*#__PURE__*/ inlinedQrl(`
6
6
  .code-output-container {
@@ -23,14 +23,14 @@ var CodeBreak = /*#__PURE__*/ componentQrl(/*#__PURE__*/ inlinedQrl(() => {
23
23
  "bg-accent text-white shadow": currentTab.value === "state",
24
24
  "text-muted-foreground hover:bg-foreground/5": currentTab.value !== "state"
25
25
  } }, { "q-e:click": /*#__PURE__*/ inlinedQrl(() => {
26
- const currentTab = _captures[0];
26
+ let currentTab = _capturesObj._[0];
27
27
  return currentTab.value = "state";
28
28
  }, "CodeBreak_component_div_div_div_button_q_e_click_xWgXsjQPkqw", [currentTab]) }, "State Parser", 3, null), /*#__PURE__*/ _jsxSorted("button", { class: {
29
29
  "rounded-lg px-3 py-2 text-sm font-medium transition-colors md:px-4": true,
30
30
  "bg-accent text-white shadow": currentTab.value === "html",
31
31
  "text-muted-foreground hover:bg-foreground/5": currentTab.value !== "html"
32
32
  } }, { "q-e:click": /*#__PURE__*/ inlinedQrl(() => {
33
- const currentTab = _captures[0];
33
+ let currentTab = _capturesObj._[0];
34
34
  return currentTab.value = "html";
35
35
  }, "CodeBreak_component_div_div_div_button_q_e_click_1_LC2WyereJ0c", [currentTab]) }, "HTML Parser", 3, null)], 1, null), 1, null),
36
36
  currentTab.value === "state" && /*#__PURE__*/ _jsxSorted(StateParser, null, null, null, 3, "Qk_0"),
@@ -1,5 +1,5 @@
1
1
  import { getHighlighter } from "../../utils/shiki.qwik.mjs";
2
- import { _captures, _fnSignal, _jsxSorted, _wrapProp, componentQrl, inlinedQrl, useSignal, useStylesQrl, useVisibleTaskQrl } from "@qwik.dev/core";
2
+ import { _capturesObj, _fnSignal, _jsxSorted, _wrapProp, componentQrl, inlinedQrl, useSignal, useStylesQrl, useVisibleTaskQrl } from "@qwik.dev/core";
3
3
  import { _getDomContainer, _vnode_toString } from "@qwik.dev/core/internal";
4
4
  var _hf0 = (p0) => p0.value || "";
5
5
  var _hf0_str = "p0.value||\"\"";
@@ -12,7 +12,7 @@ var HtmlParser = /*#__PURE__*/ componentQrl(/*#__PURE__*/ inlinedQrl(() => {
12
12
  const htmlResult = useSignal("");
13
13
  const highlightedHtml = useSignal("");
14
14
  const onParseHtml$ = /*#__PURE__*/ inlinedQrl(() => {
15
- const htmlResult = _captures[0], inputHtml = _captures[1], parsingTime = _captures[2];
15
+ let htmlResult = _capturesObj._[0], inputHtml = _capturesObj._[1], parsingTime = _capturesObj._[2];
16
16
  if (!inputHtml.value.trim()) {
17
17
  parsingTime.value = null;
18
18
  htmlResult.value = "// Paste HTML on the left to parse";
@@ -53,7 +53,7 @@ var HtmlParser = /*#__PURE__*/ componentQrl(/*#__PURE__*/ inlinedQrl(() => {
53
53
  ]);
54
54
  const shikiRef = useSignal(null);
55
55
  useVisibleTaskQrl(/*#__PURE__*/ inlinedQrl(async ({ track }) => {
56
- const highlightedHtml = _captures[0], htmlResult = _captures[1], shikiRef = _captures[2];
56
+ let highlightedHtml = _capturesObj._[0], htmlResult = _capturesObj._[1], shikiRef = _capturesObj._[2];
57
57
  track(() => htmlResult.value);
58
58
  if (!htmlResult.value) {
59
59
  highlightedHtml.value = "";
@@ -72,7 +72,7 @@ var HtmlParser = /*#__PURE__*/ componentQrl(/*#__PURE__*/ inlinedQrl(() => {
72
72
  return /*#__PURE__*/ _jsxSorted("div", null, { class: "grid grid-cols-1 gap-4 md:grid-cols-2" }, [/*#__PURE__*/ _jsxSorted("div", null, { class: "border-glass-border bg-card-item-bg flex h-[60vh] min-h-0 flex-col rounded-xl border" }, [/*#__PURE__*/ _jsxSorted("div", null, { class: "border-glass-border flex items-center justify-between border-b p-3" }, [/*#__PURE__*/ _jsxSorted("div", null, { class: "text-sm font-medium" }, "Input HTML", 3, null), parsingTime.value !== null && /*#__PURE__*/ _jsxSorted("span", null, { class: "border-glass-border text-muted-foreground rounded-full border px-2 py-0.5 text-xs" }, [_wrapProp(parsingTime), "ms"], 3, "nu_0")], 1, null), /*#__PURE__*/ _jsxSorted("div", null, { class: "min-h-0 flex-1 flex-col space-y-3 p-3" }, [/*#__PURE__*/ _jsxSorted("textarea", null, {
73
73
  value: _wrapProp(inputHtml),
74
74
  "q-e:input": /*#__PURE__*/ inlinedQrl((e, t) => {
75
- const inputHtml = _captures[0];
75
+ let inputHtml = _capturesObj._[0];
76
76
  return inputHtml.value = t.value;
77
77
  }, "HtmlParser_component_div_div_div_textarea_q_e_input_XIyjbAjuy8w", [inputHtml]),
78
78
  placeholder: "Paste HTML and click to parse/format.",
@@ -1,5 +1,5 @@
1
1
  import { getHighlighter } from "../../utils/shiki.qwik.mjs";
2
- import { _captures, _fnSignal, _jsxSorted, _wrapProp, componentQrl, inlinedQrl, useSignal, useStylesQrl, useVisibleTaskQrl } from "@qwik.dev/core";
2
+ import { _capturesObj, _fnSignal, _jsxSorted, _wrapProp, componentQrl, inlinedQrl, useSignal, useStylesQrl, useVisibleTaskQrl } from "@qwik.dev/core";
3
3
  import { _dumpState, _preprocessState } from "@qwik.dev/core/internal";
4
4
  var _hf0 = (p0) => p0.value || "";
5
5
  var _hf0_str = "p0.value||\"\"";
@@ -12,7 +12,7 @@ var StateParser = /*#__PURE__*/ componentQrl(/*#__PURE__*/ inlinedQrl(() => {
12
12
  const stateResult = useSignal("");
13
13
  const highlightedState = useSignal("");
14
14
  const onParseState$ = /*#__PURE__*/ inlinedQrl(() => {
15
- const inputState = _captures[0], parsingTime = _captures[1], stateResult = _captures[2];
15
+ let inputState = _capturesObj._[0], parsingTime = _capturesObj._[1], stateResult = _capturesObj._[2];
16
16
  if (!inputState.value.trim()) {
17
17
  parsingTime.value = null;
18
18
  stateResult.value = "// Paste state on the left to parse";
@@ -68,7 +68,7 @@ var StateParser = /*#__PURE__*/ componentQrl(/*#__PURE__*/ inlinedQrl(() => {
68
68
  ]);
69
69
  const shikiRef = useSignal(null);
70
70
  useVisibleTaskQrl(/*#__PURE__*/ inlinedQrl(async ({ track }) => {
71
- const highlightedState = _captures[0], shikiRef = _captures[1], stateResult = _captures[2];
71
+ let highlightedState = _capturesObj._[0], shikiRef = _capturesObj._[1], stateResult = _capturesObj._[2];
72
72
  track(() => stateResult?.value);
73
73
  const currentState = stateResult?.value ?? "";
74
74
  if (!currentState) {
@@ -101,7 +101,7 @@ var StateParser = /*#__PURE__*/ componentQrl(/*#__PURE__*/ inlinedQrl(() => {
101
101
  }, "Parse State", 3, null)], 1, null), /*#__PURE__*/ _jsxSorted("div", null, { class: "flex min-h-0 flex-1 flex-col p-3" }, /*#__PURE__*/ _jsxSorted("textarea", null, {
102
102
  value: _wrapProp(inputState),
103
103
  "q-e:input": /*#__PURE__*/ inlinedQrl((e, t) => {
104
- const inputState = _captures[0];
104
+ let inputState = _capturesObj._[0];
105
105
  return inputState.value = t.value;
106
106
  }, "StateParser_component_div_div_div_textarea_q_e_input_kcp2t0mamTI", [inputState]),
107
107
  placeholder: "Paste Qwik state and click to parse/format.",
@@ -6,7 +6,7 @@ import { RenderTreeTabs } from "../RenderTree/components/RenderTreeTabs.qwik.mjs
6
6
  import { StateTreeNodeLabel } from "../RenderTree/components/StateTreeNodeLabel.qwik.mjs";
7
7
  import { HookFiltersCard } from "../RenderTree/components/HookFiltersCard.qwik.mjs";
8
8
  import { IconButton } from "../../components/IconButton/IconButton.qwik.mjs";
9
- import { _captures, _fnSignal, _jsxSorted, _wrapProp, componentQrl, inlinedQrl, useComputedQrl, useSignal, useVisibleTaskQrl } from "@qwik.dev/core";
9
+ import { _capturesObj, _fnSignal, _jsxSorted, _wrapProp, componentQrl, inlinedQrl, useComputedQrl, useSignal, useVisibleTaskQrl } from "@qwik.dev/core";
10
10
  var _hf0 = (p0) => p0.value ? "Picking..." : "Pick";
11
11
  var _hf0_str = "p0.value?\"Picking...\":\"Pick\"";
12
12
  var _hf1 = (p0) => p0.value ? "Collapse all" : "Expand all";
@@ -154,7 +154,7 @@ function expandAndScrollToNode(targetName) {
154
154
  }
155
155
  var HookTree = /*#__PURE__*/ componentQrl(/*#__PURE__*/ inlinedQrl((_rawProps) => {
156
156
  const revealNode = useComputedQrl(/*#__PURE__*/ inlinedQrl(() => {
157
- return _captures[0].state.componentReveal;
157
+ return _capturesObj._[0].state.componentReveal;
158
158
  }, "HookTree_component_revealNode_useComputed_tpsp3UJyFJs", [_rawProps]));
159
159
  const treeData = useSignal([]);
160
160
  const treeVersion = useSignal(0);
@@ -169,7 +169,7 @@ var HookTree = /*#__PURE__*/ componentQrl(/*#__PURE__*/ inlinedQrl((_rawProps) =
169
169
  const editValue = useSignal("");
170
170
  const inspecting = useSignal(false);
171
171
  const handleElementPicked = /*#__PURE__*/ inlinedQrl((payload) => {
172
- const inspecting = _captures[0], onNodeClick = _captures[1], treeData = _captures[2];
172
+ let inspecting = _capturesObj._[0], onNodeClick = _capturesObj._[1], treeData = _capturesObj._[2];
173
173
  inspecting.value = false;
174
174
  let found = null;
175
175
  if (payload.treeNodeId) found = findNodeById(treeData.value, payload.treeNodeId);
@@ -188,7 +188,7 @@ var HookTree = /*#__PURE__*/ componentQrl(/*#__PURE__*/ inlinedQrl((_rawProps) =
188
188
  return tree.filter((node) => filters.some((f) => f.key === node.label && f.display));
189
189
  }, "HookTree_component_applyFilters_BI0rmhS6jV0");
190
190
  const refreshSelectedDetail = /*#__PURE__*/ inlinedQrl(async () => {
191
- const applyFilters = _captures[0], fullStateTree = _captures[1], hookFilters = _captures[2], selectedNode = _captures[3], stateTree = _captures[4];
191
+ let applyFilters = _capturesObj._[0], fullStateTree = _capturesObj._[1], hookFilters = _capturesObj._[2], selectedNode = _capturesObj._[3], stateTree = _capturesObj._[4];
192
192
  const sel = selectedNode.value;
193
193
  if (!sel) return;
194
194
  const source = getPageDataSource();
@@ -217,7 +217,7 @@ var HookTree = /*#__PURE__*/ componentQrl(/*#__PURE__*/ inlinedQrl((_rawProps) =
217
217
  stateTree
218
218
  ]);
219
219
  useVisibleTaskQrl(/*#__PURE__*/ inlinedQrl(({ cleanup }) => {
220
- const handleElementPicked = _captures[0], lastTreeIds = _captures[1], refreshSelectedDetail = _captures[2], selectedNode = _captures[3], stateTree = _captures[4], treeData = _captures[5], treeVersion = _captures[6];
220
+ let handleElementPicked = _capturesObj._[0], lastTreeIds = _capturesObj._[1], refreshSelectedDetail = _capturesObj._[2], selectedNode = _capturesObj._[3], stateTree = _capturesObj._[4], treeData = _capturesObj._[5], treeVersion = _capturesObj._[6];
221
221
  const source = getPageDataSource();
222
222
  const loadInitial = async (retries = 3) => {
223
223
  const vnodeTree = await source.readVNodeTree();
@@ -296,7 +296,7 @@ var HookTree = /*#__PURE__*/ componentQrl(/*#__PURE__*/ inlinedQrl((_rawProps) =
296
296
  treeVersion
297
297
  ]));
298
298
  const onNodeClick = /*#__PURE__*/ inlinedQrl(async (node) => {
299
- const fullStateTree = _captures[0], hookFilters = _captures[1], selectedNode = _captures[2], stateTree = _captures[3];
299
+ let fullStateTree = _capturesObj._[0], hookFilters = _capturesObj._[1], selectedNode = _capturesObj._[2], stateTree = _capturesObj._[3];
300
300
  const source = getPageDataSource();
301
301
  const name = node.name || node.label || "";
302
302
  if (!name) {
@@ -337,7 +337,7 @@ var HookTree = /*#__PURE__*/ componentQrl(/*#__PURE__*/ inlinedQrl((_rawProps) =
337
337
  stateTree
338
338
  ]);
339
339
  const onStateNodeClick = /*#__PURE__*/ inlinedQrl(async (node) => {
340
- const editValue = _captures[0], editingNodeId = _captures[1];
340
+ let editValue = _capturesObj._[0], editingNodeId = _capturesObj._[1];
341
341
  if (node.children && node.children.length > 0) return;
342
342
  const match = (node.label || "").match(/^let (\S+) = : (.+)$/);
343
343
  if (!match) return;
@@ -346,7 +346,7 @@ var HookTree = /*#__PURE__*/ componentQrl(/*#__PURE__*/ inlinedQrl((_rawProps) =
346
346
  editValue.value = rawVal.startsWith("\"") && rawVal.endsWith("\"") ? rawVal.slice(1, -1) : rawVal;
347
347
  }, "HookTree_component_onStateNodeClick_w05LL5ft0xI", [editValue, editingNodeId]);
348
348
  const commitEdit = /*#__PURE__*/ inlinedQrl(async () => {
349
- const editValue = _captures[0], editingNodeId = _captures[1], refreshSelectedDetail = _captures[2], selectedNode = _captures[3], stateTree = _captures[4];
349
+ let editValue = _capturesObj._[0], editingNodeId = _capturesObj._[1], refreshSelectedDetail = _capturesObj._[2], selectedNode = _capturesObj._[3], stateTree = _capturesObj._[4];
350
350
  if (!editingNodeId.value || !selectedNode.value) return;
351
351
  const sel = selectedNode.value;
352
352
  const source = getPageDataSource();
@@ -372,11 +372,11 @@ var HookTree = /*#__PURE__*/ componentQrl(/*#__PURE__*/ inlinedQrl((_rawProps) =
372
372
  stateTree
373
373
  ]);
374
374
  const cancelEdit = /*#__PURE__*/ inlinedQrl(() => {
375
- const editingNodeId = _captures[0];
375
+ let editingNodeId = _capturesObj._[0];
376
376
  editingNodeId.value = null;
377
377
  }, "HookTree_component_cancelEdit_T9PZ4ZUP0kg", [editingNodeId]);
378
378
  const handleSelectAll = /*#__PURE__*/ inlinedQrl(async () => {
379
- const applyFilters = _captures[0], fullStateTree = _captures[1], hookFilters = _captures[2], stateTree = _captures[3];
379
+ let applyFilters = _capturesObj._[0], fullStateTree = _capturesObj._[1], hookFilters = _capturesObj._[2], stateTree = _capturesObj._[3];
380
380
  hookFilters.value = hookFilters.value.map((f) => ({
381
381
  ...f,
382
382
  display: true
@@ -389,7 +389,7 @@ var HookTree = /*#__PURE__*/ componentQrl(/*#__PURE__*/ inlinedQrl((_rawProps) =
389
389
  stateTree
390
390
  ]);
391
391
  const handleClear = /*#__PURE__*/ inlinedQrl(async () => {
392
- const applyFilters = _captures[0], fullStateTree = _captures[1], hookFilters = _captures[2], stateTree = _captures[3];
392
+ let applyFilters = _capturesObj._[0], fullStateTree = _capturesObj._[1], hookFilters = _capturesObj._[2], stateTree = _capturesObj._[3];
393
393
  hookFilters.value = hookFilters.value.map((f) => ({
394
394
  ...f,
395
395
  display: false
@@ -402,7 +402,7 @@ var HookTree = /*#__PURE__*/ componentQrl(/*#__PURE__*/ inlinedQrl((_rawProps) =
402
402
  stateTree
403
403
  ]);
404
404
  const handleFilterChange = /*#__PURE__*/ inlinedQrl(async (index, checked) => {
405
- const applyFilters = _captures[0], fullStateTree = _captures[1], hookFilters = _captures[2], stateTree = _captures[3];
405
+ let applyFilters = _capturesObj._[0], fullStateTree = _capturesObj._[1], hookFilters = _capturesObj._[2], stateTree = _capturesObj._[3];
406
406
  hookFilters.value = hookFilters.value.map((f, i) => i === index ? {
407
407
  ...f,
408
408
  display: checked
@@ -415,7 +415,7 @@ var HookTree = /*#__PURE__*/ componentQrl(/*#__PURE__*/ inlinedQrl((_rawProps) =
415
415
  stateTree
416
416
  ]);
417
417
  const startInspect = /*#__PURE__*/ inlinedQrl(() => {
418
- const inspecting = _captures[0];
418
+ let inspecting = _capturesObj._[0];
419
419
  const port = window.__devtools_port;
420
420
  if (port) {
421
421
  inspecting.value = true;
@@ -423,7 +423,7 @@ var HookTree = /*#__PURE__*/ componentQrl(/*#__PURE__*/ inlinedQrl((_rawProps) =
423
423
  }
424
424
  }, "HookTree_component_startInspect_ivplr7Kh8Cg", [inspecting]);
425
425
  const stopInspect = /*#__PURE__*/ inlinedQrl(() => {
426
- const inspecting = _captures[0];
426
+ let inspecting = _capturesObj._[0];
427
427
  const port = window.__devtools_port;
428
428
  if (port) {
429
429
  inspecting.value = false;
@@ -432,7 +432,7 @@ var HookTree = /*#__PURE__*/ componentQrl(/*#__PURE__*/ inlinedQrl((_rawProps) =
432
432
  }, "HookTree_component_stopInspect_0GbFiCX0c2U", [inspecting]);
433
433
  const treeExpanded = useSignal(true);
434
434
  const toggleTreeExpand = /*#__PURE__*/ inlinedQrl(() => {
435
- const treeExpanded = _captures[0];
435
+ let treeExpanded = _capturesObj._[0];
436
436
  const container = document.getElementById("hook-tree-left");
437
437
  if (!container) return;
438
438
  const chevrons = Array.from(container.querySelectorAll("svg[class*=\"shrink-0\"]"));
@@ -461,7 +461,7 @@ var HookTree = /*#__PURE__*/ componentQrl(/*#__PURE__*/ inlinedQrl((_rawProps) =
461
461
  }, treeData.value.length === 0 ? /*#__PURE__*/ _jsxSorted("div", null, { class: "text-muted-foreground flex h-full items-center justify-center text-sm" }, "Waiting for component tree...", 3, "n0_6") : /*#__PURE__*/ _jsxSorted(Tree, {
462
462
  onNodeClick,
463
463
  onRevealed$: /*#__PURE__*/ inlinedQrl(() => {
464
- const _rawProps = _captures[0];
464
+ let _rawProps = _capturesObj._[0];
465
465
  return _rawProps.state.componentReveal = null;
466
466
  }, "HookTree_component_div_div_div_div_Tree_onRevealed_bBy7gH7s5cA", [_rawProps])
467
467
  }, {
@@ -473,11 +473,11 @@ var HookTree = /*#__PURE__*/ componentQrl(/*#__PURE__*/ inlinedQrl((_rawProps) =
473
473
  /*#__PURE__*/ _jsxSorted(RenderTreeTabs, null, {
474
474
  currentTab: _wrapProp(currentTab),
475
475
  onStateClick$: /*#__PURE__*/ inlinedQrl(() => {
476
- const currentTab = _captures[0];
476
+ let currentTab = _capturesObj._[0];
477
477
  return currentTab.value = "state";
478
478
  }, "HookTree_component_div_div_div_RenderTreeTabs_onStateClick_91eAngQRRXU", [currentTab]),
479
479
  onCodeClick$: /*#__PURE__*/ inlinedQrl(() => {
480
- const currentTab = _captures[0];
480
+ let currentTab = _capturesObj._[0];
481
481
  return currentTab.value = "code";
482
482
  }, "HookTree_component_div_div_div_RenderTreeTabs_onCodeClick_0lAe8vTbWRQ", [currentTab])
483
483
  }, null, 3, "n0_7"),
@@ -487,7 +487,7 @@ var HookTree = /*#__PURE__*/ componentQrl(/*#__PURE__*/ inlinedQrl((_rawProps) =
487
487
  onSelectAll$: handleSelectAll,
488
488
  onClear$: handleClear,
489
489
  onToggleOpen$: /*#__PURE__*/ inlinedQrl(() => {
490
- const hooksOpen = _captures[0];
490
+ let hooksOpen = _capturesObj._[0];
491
491
  return hooksOpen.value = !hooksOpen.value;
492
492
  }, "HookTree_component_div_div_div_div_HookFiltersCard_onToggleOpen_wb4o4GAUjKQ", [hooksOpen]),
493
493
  onFilterChange$: handleFilterChange
@@ -498,8 +498,8 @@ var HookTree = /*#__PURE__*/ componentQrl(/*#__PURE__*/ inlinedQrl((_rawProps) =
498
498
  animationDuration: 200,
499
499
  isHover: true,
500
500
  renderNode: /*#__PURE__*/ inlinedQrl((node) => {
501
- const cancelEdit = _captures[0], commitEdit = _captures[1], editValue = _captures[2];
502
- if (_captures[3].value === node.id) return /*#__PURE__*/ _jsxSorted("form", null, {
501
+ let cancelEdit = _capturesObj._[0], commitEdit = _capturesObj._[1], editValue = _capturesObj._[2];
502
+ if (_capturesObj._[3].value === node.id) return /*#__PURE__*/ _jsxSorted("form", null, {
503
503
  "preventdefault:submit": true,
504
504
  "q-e:submit": commitEdit,
505
505
  class: "inline-flex items-center gap-1"
@@ -507,11 +507,11 @@ var HookTree = /*#__PURE__*/ componentQrl(/*#__PURE__*/ inlinedQrl((_rawProps) =
507
507
  type: "text",
508
508
  class: "border-primary/50 bg-card-item-hover-bg text-foreground focus:border-primary w-32 rounded border px-1.5 py-0.5 text-xs outline-none",
509
509
  "q-e:input": /*#__PURE__*/ inlinedQrl((_, el) => {
510
- const editValue = _captures[0];
510
+ let editValue = _capturesObj._[0];
511
511
  editValue.value = el.value;
512
512
  }, "HookTree_component_div_div_div_div_div_Tree_renderNode_form_input_q_e_input_z05hdrGPzhg", [editValue]),
513
513
  "q-e:keydown": /*#__PURE__*/ inlinedQrl((e) => {
514
- const cancelEdit = _captures[0];
514
+ let cancelEdit = _capturesObj._[0];
515
515
  if (e.key === "Escape") cancelEdit();
516
516
  }, "HookTree_component_div_div_div_div_div_Tree_renderNode_form_input_q_e_keydown_0AuxXsO3Wa0", [cancelEdit]),
517
517
  autoFocus: true
@@ -8,12 +8,12 @@ function toTreeNodes(vnodes) {
8
8
  children: v.children ? toTreeNodes(v.children) : void 0
9
9
  }));
10
10
  }
11
- /** Quick structural fingerprint from node IDs. */
11
+ /** Includes names so collected source metadata refreshes existing nodes. */
12
12
  function treeIdFingerprint(nodes) {
13
13
  const ids = [];
14
14
  const walk = (list) => {
15
15
  for (const n of list) {
16
- ids.push(n.id);
16
+ ids.push(n.name ? `${n.id}:${n.name}` : n.id);
17
17
  if (n.children) walk(n.children);
18
18
  }
19
19
  };
@@ -1,6 +1,6 @@
1
1
  import { IconCubeOutline, IconFolderTree, IconPhotoOutline } from "../../components/Icons/Icons.qwik.mjs";
2
2
  import { InfoBanner } from "../../components/InfoBanner/InfoBanner.qwik.mjs";
3
- import { _captures, _fnSignal, _jsxSorted, _qrlSync, componentQrl, inlinedQrl } from "@qwik.dev/core";
3
+ import { _capturesObj, _fnSignal, _jsxSorted, _qrlSync, componentQrl, inlinedQrl } from "@qwik.dev/core";
4
4
  import { Fragment } from "@qwik.dev/core/jsx-runtime";
5
5
  var _hf0 = (p0) => p0.state.routes?.length;
6
6
  var _hf0_str = "p0.state.routes?.length";
@@ -11,7 +11,7 @@ var _hf2_str = "p0.state.assets.length||0";
11
11
  var Overview = /*#__PURE__*/ componentQrl(/*#__PURE__*/ inlinedQrl((_rawProps) => {
12
12
  const isExtension = _rawProps.state.isExtension;
13
13
  const pageJump = /*#__PURE__*/ inlinedQrl((pageName) => {
14
- const _rawProps = _captures[0];
14
+ let _rawProps = _capturesObj._[0];
15
15
  _rawProps.state.activeTab = pageName;
16
16
  }, "Overview_component_pageJump_0Fqlp0MwWqk", [_rawProps]);
17
17
  const stopPropagation = _qrlSync((e) => {
@@ -21,22 +21,22 @@ var Overview = /*#__PURE__*/ componentQrl(/*#__PURE__*/ inlinedQrl((_rawProps) =
21
21
  isExtension && _rawProps.state.vitePluginDetected && /*#__PURE__*/ _jsxSorted(InfoBanner, null, { class: "mb-5" }, [/*#__PURE__*/ _jsxSorted("span", null, { class: "text-foreground font-medium" }, "Vite plugin detected", 3, null), /*#__PURE__*/ _jsxSorted("span", null, { class: "text-muted-foreground" }, [" ", "- the in-app overlay has additional features (routes, assets, packages, code inspection)"], 3, null)], 3, "pG_0"),
22
22
  /*#__PURE__*/ _jsxSorted("div", null, { class: "grid grid-cols-1 gap-5 md:grid-cols-3" }, [
23
23
  !isExtension && /*#__PURE__*/ _jsxSorted("div", { "q-e:click": [/*#__PURE__*/ inlinedQrl(() => {
24
- const pageJump = _captures[0];
24
+ let pageJump = _capturesObj._[0];
25
25
  return pageJump("routes");
26
26
  }, "Overview_component_Fragment_div_div_q_e_click_qb0eJJi67Us", [pageJump]), stopPropagation] }, { class: "border-border bg-card-item-bg hover:bg-card-item-hover-bg flex cursor-pointer items-center gap-5 rounded-xl border p-5 transition-all duration-200 hover:-translate-y-0.5" }, [/*#__PURE__*/ _jsxSorted("div", null, { class: "bg-foreground/5 border-border rounded-lg border p-3.5" }, /*#__PURE__*/ _jsxSorted(IconFolderTree, null, { class: "text-accent h-6 w-6" }, null, 3, "pG_1"), 1, null), /*#__PURE__*/ _jsxSorted("div", null, null, [/*#__PURE__*/ _jsxSorted("div", null, { class: "text-3xl font-semibold" }, _fnSignal(_hf0, [_rawProps], _hf0_str), 1, null), /*#__PURE__*/ _jsxSorted("div", null, { class: "text-muted-foreground text-sm" }, "pages", 3, null)], 1, null)], 0, "pG_2"),
27
27
  /*#__PURE__*/ _jsxSorted("div", { "q-e:click": [/*#__PURE__*/ inlinedQrl(() => {
28
- const pageJump = _captures[0];
28
+ let pageJump = _capturesObj._[0];
29
29
  return pageJump("renderTree");
30
30
  }, "Overview_component_Fragment_div_div_q_e_click_1_B7lsWRRqMVk", [pageJump]), stopPropagation] }, { class: "border-border bg-card-item-bg hover:bg-card-item-hover-bg flex cursor-pointer items-center gap-5 rounded-xl border p-5 transition-all duration-200 hover:-translate-y-0.5" }, [/*#__PURE__*/ _jsxSorted("div", null, { class: "bg-foreground/5 border-border rounded-lg border p-3.5" }, /*#__PURE__*/ _jsxSorted(IconCubeOutline, null, { class: "text-accent h-6 w-6" }, null, 3, "pG_3"), 1, null), /*#__PURE__*/ _jsxSorted("div", null, null, [/*#__PURE__*/ _jsxSorted("div", null, { class: "text-3xl font-semibold" }, _fnSignal(_hf1, [_rawProps], _hf1_str), 1, null), /*#__PURE__*/ _jsxSorted("div", null, { class: "text-muted-foreground text-sm" }, "components", 3, null)], 1, null)], 0, null),
31
31
  !isExtension && /*#__PURE__*/ _jsxSorted("div", { "q-e:click": [/*#__PURE__*/ inlinedQrl(() => {
32
- const pageJump = _captures[0];
32
+ let pageJump = _capturesObj._[0];
33
33
  return pageJump("assets");
34
34
  }, "Overview_component_Fragment_div_div_q_e_click_2_ZsZbMuPvZFo", [pageJump]), stopPropagation] }, { class: "border-border bg-card-item-bg hover:bg-card-item-hover-bg flex cursor-pointer items-center gap-5 rounded-xl border p-5 transition-all duration-200 hover:-translate-y-0.5" }, [/*#__PURE__*/ _jsxSorted("div", null, { class: "bg-foreground/5 border-border rounded-lg border p-3.5" }, /*#__PURE__*/ _jsxSorted(IconPhotoOutline, null, { class: "text-accent h-6 w-6" }, null, 3, "pG_4"), 1, null), /*#__PURE__*/ _jsxSorted("div", null, null, [/*#__PURE__*/ _jsxSorted("div", null, { class: "text-3xl font-semibold" }, _fnSignal(_hf2, [_rawProps], _hf2_str), 1, null), /*#__PURE__*/ _jsxSorted("div", null, { class: "text-muted-foreground text-sm" }, "assets", 3, null)], 1, null)], 0, "pG_5")
35
35
  ], 1, null),
36
36
  _rawProps.state.npmPackages.length > 0 && /*#__PURE__*/ _jsxSorted("div", {
37
37
  class: ["border-border bg-card-item-bg mt-6 space-y-4 rounded-xl border p-5 md:mt-6", !isExtension && "hover:bg-card-item-hover-bg cursor-pointer hover:-translate-y-0.5"],
38
38
  "q-e:click": isExtension ? void 0 : [/*#__PURE__*/ inlinedQrl(() => {
39
- const pageJump = _captures[0];
39
+ let pageJump = _capturesObj._[0];
40
40
  return pageJump("packages");
41
41
  }, "Overview_component_Fragment_div_q_e_click_vcC0WjWKJuE", [pageJump]), stopPropagation]
42
42
  }, null, [/*#__PURE__*/ _jsxSorted("h3", null, { class: "text-lg font-semibold" }, "Installed Packages", 3, null), /*#__PURE__*/ _jsxSorted("div", null, { class: "grid grid-cols-1 gap-3 md:grid-cols-2" }, _rawProps.state.npmPackages.map(([name, version]) => /*#__PURE__*/ _jsxSorted("div", null, { class: "bg-foreground/5 flex items-center justify-between rounded-lg p-3" }, [/*#__PURE__*/ _jsxSorted("div", null, { class: "text-sm" }, name, 1, null), /*#__PURE__*/ _jsxSorted("div", null, { class: "bg-foreground/5 border-border text-muted-foreground rounded-full border px-2 py-1 text-xs" }, version, 1, null)], 1, name)), 1, null)], 0, "pG_6"),