@plitzi/sdk-dev-tools 0.37.9 → 0.37.10

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 (189) hide show
  1. package/CHANGELOG.md +591 -0
  2. package/dist/DevToolsContainer.d.ts +7 -1
  3. package/dist/DevToolsContainer.mjs +66 -60
  4. package/dist/agentInspector/flowRuns.d.ts +22 -0
  5. package/dist/agentInspector/flowRuns.mjs +26 -0
  6. package/dist/agentInspector/inspector.d.ts +27 -0
  7. package/dist/agentInspector/inspector.mjs +20 -0
  8. package/dist/agentInspector/report.d.ts +36 -0
  9. package/dist/agentInspector/report.mjs +53 -0
  10. package/dist/agentInspector/useAgentInspector.d.ts +15 -0
  11. package/dist/agentInspector/useAgentInspector.mjs +36 -0
  12. package/dist/components/DevToolsOverlay/DevToolsOverlay.d.ts +6 -1
  13. package/dist/components/DevToolsOverlay/DevToolsOverlay.mjs +25 -15
  14. package/dist/components/DevToolsPanel/DevToolsBody.d.ts +3 -1
  15. package/dist/components/DevToolsPanel/DevToolsBody.mjs +35 -31
  16. package/dist/components/DevToolsPanel/DevToolsHeader.d.ts +3 -1
  17. package/dist/components/DevToolsPanel/DevToolsHeader.mjs +20 -10
  18. package/dist/components/DevToolsPanel/DevToolsPanel.d.ts +3 -1
  19. package/dist/components/DevToolsPanel/DevToolsPanel.mjs +25 -23
  20. package/dist/components/DevToolsPanel/DevToolsSubHeader.mjs +41 -45
  21. package/dist/components/DevToolsPanel/tabs/ActionsViewer/ActionsViewer.mjs +10 -10
  22. package/dist/components/DevToolsPanel/tabs/ElementsViewer/ElementsViewer.d.ts +4 -0
  23. package/dist/components/DevToolsPanel/tabs/ElementsViewer/ElementsViewer.mjs +33 -18
  24. package/dist/components/DevToolsPanel/tabs/ElementsViewer/components/DetailsAttributes/DetailsAttributes.mjs +16 -0
  25. package/dist/components/DevToolsPanel/tabs/ElementsViewer/components/DetailsAttributes/index.d.ts +3 -0
  26. package/dist/components/DevToolsPanel/tabs/ElementsViewer/components/DetailsAttributes/index.mjs +5 -0
  27. package/dist/components/DevToolsPanel/tabs/ElementsViewer/components/DetailsDefinition/DetailsDefinition.mjs +18 -0
  28. package/dist/components/DevToolsPanel/tabs/ElementsViewer/components/DetailsDefinition/index.d.ts +3 -0
  29. package/dist/components/DevToolsPanel/tabs/ElementsViewer/components/DetailsDefinition/index.mjs +5 -0
  30. package/dist/components/DevToolsPanel/tabs/ElementsViewer/components/DetailsRow/DetailsRow.d.ts +8 -0
  31. package/dist/components/DevToolsPanel/tabs/ElementsViewer/components/DetailsRow/DetailsRow.mjs +14 -0
  32. package/dist/components/DevToolsPanel/tabs/ElementsViewer/components/DetailsRow/index.d.ts +3 -0
  33. package/dist/components/DevToolsPanel/tabs/ElementsViewer/components/DetailsRow/index.mjs +5 -0
  34. package/dist/components/DevToolsPanel/tabs/ElementsViewer/components/DetailsRuntime/DetailsRuntime.d.ts +9 -0
  35. package/dist/components/DevToolsPanel/tabs/ElementsViewer/components/DetailsRuntime/DetailsRuntime.mjs +54 -0
  36. package/dist/components/DevToolsPanel/tabs/ElementsViewer/components/DetailsRuntime/index.d.ts +3 -0
  37. package/dist/components/DevToolsPanel/tabs/ElementsViewer/components/DetailsRuntime/index.mjs +5 -0
  38. package/dist/components/DevToolsPanel/tabs/ElementsViewer/components/DetailsValue/DetailsValue.d.ts +9 -0
  39. package/dist/components/DevToolsPanel/tabs/ElementsViewer/components/DetailsValue/DetailsValue.mjs +15 -0
  40. package/dist/components/DevToolsPanel/tabs/ElementsViewer/components/DetailsValue/index.d.ts +3 -0
  41. package/dist/components/DevToolsPanel/tabs/ElementsViewer/components/DetailsValue/index.mjs +5 -0
  42. package/dist/components/DevToolsPanel/tabs/ElementsViewer/components/ElementDetails/ElementDetails.d.ts +7 -0
  43. package/dist/components/DevToolsPanel/tabs/ElementsViewer/components/ElementDetails/ElementDetails.mjs +46 -0
  44. package/dist/components/DevToolsPanel/tabs/ElementsViewer/components/ElementDetails/index.d.ts +3 -0
  45. package/dist/components/DevToolsPanel/tabs/ElementsViewer/components/ElementDetails/index.mjs +5 -0
  46. package/dist/components/DevToolsPanel/tabs/ElementsViewer/components/ElementLink/ElementLink.d.ts +7 -0
  47. package/dist/components/DevToolsPanel/tabs/ElementsViewer/components/ElementLink/ElementLink.mjs +14 -0
  48. package/dist/components/DevToolsPanel/tabs/ElementsViewer/components/ElementLink/index.d.ts +3 -0
  49. package/dist/components/DevToolsPanel/tabs/ElementsViewer/components/ElementLink/index.mjs +5 -0
  50. package/dist/components/DevToolsPanel/tabs/ElementsViewer/components/ElementsTree/ElementsTree.d.ts +12 -0
  51. package/dist/components/DevToolsPanel/tabs/ElementsViewer/components/ElementsTree/ElementsTree.mjs +39 -0
  52. package/dist/components/DevToolsPanel/tabs/ElementsViewer/components/ElementsTree/index.d.ts +3 -0
  53. package/dist/components/DevToolsPanel/tabs/ElementsViewer/components/ElementsTree/index.mjs +5 -0
  54. package/dist/components/DevToolsPanel/tabs/ElementsViewer/components/TreeRow/TreeRow.d.ts +10 -0
  55. package/dist/components/DevToolsPanel/tabs/ElementsViewer/components/TreeRow/TreeRow.mjs +36 -0
  56. package/dist/components/DevToolsPanel/tabs/ElementsViewer/components/TreeRow/index.d.ts +3 -0
  57. package/dist/components/DevToolsPanel/tabs/ElementsViewer/components/TreeRow/index.mjs +5 -0
  58. package/dist/components/DevToolsPanel/tabs/ElementsViewer/components/TreeSection/TreeSection.d.ts +13 -0
  59. package/dist/components/DevToolsPanel/tabs/ElementsViewer/components/TreeSection/TreeSection.mjs +39 -0
  60. package/dist/components/DevToolsPanel/tabs/ElementsViewer/components/TreeSection/index.d.ts +3 -0
  61. package/dist/components/DevToolsPanel/tabs/ElementsViewer/components/TreeSection/index.mjs +5 -0
  62. package/dist/components/DevToolsPanel/tabs/ElementsViewer/helpers/renderTree.d.ts +31 -0
  63. package/dist/components/DevToolsPanel/tabs/ElementsViewer/helpers/renderTree.mjs +61 -0
  64. package/dist/components/DevToolsPanel/tabs/FlagsViewer/FlagSource.d.ts +7 -0
  65. package/dist/components/DevToolsPanel/tabs/FlagsViewer/FlagSource.mjs +23 -0
  66. package/dist/components/DevToolsPanel/tabs/FlagsViewer/FlagsListItem.d.ts +11 -0
  67. package/dist/components/DevToolsPanel/tabs/FlagsViewer/FlagsListItem.mjs +66 -0
  68. package/dist/components/DevToolsPanel/tabs/FlagsViewer/FlagsViewer.d.ts +10 -0
  69. package/dist/components/DevToolsPanel/tabs/FlagsViewer/FlagsViewer.mjs +43 -0
  70. package/dist/components/DevToolsPanel/tabs/FlagsViewer/index.d.ts +3 -0
  71. package/dist/components/DevToolsPanel/tabs/FlagsViewer/index.mjs +5 -0
  72. package/dist/components/DevToolsPanel/tabs/Logs/Log.d.ts +3 -8
  73. package/dist/components/DevToolsPanel/tabs/Logs/Log.mjs +42 -31
  74. package/dist/components/DevToolsPanel/tabs/Logs/Logs.mjs +1 -6
  75. package/dist/components/DevToolsPanel/tabs/Logs/categories/LogInteraction/BodyHeader.mjs +53 -54
  76. package/dist/components/DevToolsPanel/tabs/Logs/categories/LogInteraction/LogInteraction.mjs +17 -17
  77. package/dist/components/DevToolsPanel/tabs/Logs/categories/LogNavigation/LogNavigationBody.mjs +26 -26
  78. package/dist/components/DevToolsPanel/tabs/Logs/categories/LogRealtime/LogRealtime.d.ts +10 -0
  79. package/dist/components/DevToolsPanel/tabs/Logs/categories/LogRealtime/LogRealtime.mjs +58 -0
  80. package/dist/components/DevToolsPanel/tabs/Logs/categories/LogRealtime/index.d.ts +3 -0
  81. package/dist/components/DevToolsPanel/tabs/Logs/categories/LogRealtime/index.mjs +5 -0
  82. package/dist/components/DevToolsPanel/tabs/QaViewer/QaAllChecksButton.d.ts +3 -0
  83. package/dist/components/DevToolsPanel/tabs/QaViewer/QaAllChecksButton.mjs +16 -0
  84. package/dist/components/DevToolsPanel/tabs/QaViewer/QaCheckRow.d.ts +7 -0
  85. package/dist/components/DevToolsPanel/tabs/QaViewer/QaCheckRow.mjs +47 -0
  86. package/dist/components/DevToolsPanel/tabs/QaViewer/QaChecks.d.ts +3 -0
  87. package/dist/components/DevToolsPanel/tabs/QaViewer/QaChecks.mjs +24 -0
  88. package/dist/components/DevToolsPanel/tabs/QaViewer/QaDivider.d.ts +3 -0
  89. package/dist/components/DevToolsPanel/tabs/QaViewer/QaDivider.mjs +5 -0
  90. package/dist/components/DevToolsPanel/tabs/QaViewer/QaFindingItem.d.ts +7 -0
  91. package/dist/components/DevToolsPanel/tabs/QaViewer/QaFindingItem.mjs +32 -0
  92. package/dist/components/DevToolsPanel/tabs/QaViewer/QaInspectorDetails.d.ts +9 -0
  93. package/dist/components/DevToolsPanel/tabs/QaViewer/QaInspectorDetails.mjs +135 -0
  94. package/dist/components/DevToolsPanel/tabs/QaViewer/QaInspectorEmpty.d.ts +3 -0
  95. package/dist/components/DevToolsPanel/tabs/QaViewer/QaInspectorEmpty.mjs +17 -0
  96. package/dist/components/DevToolsPanel/tabs/QaViewer/QaInspectorPanel.d.ts +3 -0
  97. package/dist/components/DevToolsPanel/tabs/QaViewer/QaInspectorPanel.mjs +22 -0
  98. package/dist/components/DevToolsPanel/tabs/QaViewer/QaProperty.d.ts +8 -0
  99. package/dist/components/DevToolsPanel/tabs/QaViewer/QaProperty.mjs +14 -0
  100. package/dist/components/DevToolsPanel/tabs/QaViewer/QaRescanButton.d.ts +3 -0
  101. package/dist/components/DevToolsPanel/tabs/QaViewer/QaRescanButton.mjs +15 -0
  102. package/dist/components/DevToolsPanel/tabs/QaViewer/QaRuleItem.d.ts +7 -0
  103. package/dist/components/DevToolsPanel/tabs/QaViewer/QaRuleItem.mjs +38 -0
  104. package/dist/components/DevToolsPanel/tabs/QaViewer/QaToolChip.d.ts +13 -0
  105. package/dist/components/DevToolsPanel/tabs/QaViewer/QaToolChip.mjs +27 -0
  106. package/dist/components/DevToolsPanel/tabs/QaViewer/QaToolbar.d.ts +3 -0
  107. package/dist/components/DevToolsPanel/tabs/QaViewer/QaToolbar.mjs +58 -0
  108. package/dist/components/DevToolsPanel/tabs/QaViewer/QaViewer.d.ts +8 -0
  109. package/dist/components/DevToolsPanel/tabs/QaViewer/QaViewer.mjs +14 -0
  110. package/dist/components/DevToolsPanel/tabs/QaViewer/QaVisionSelect.d.ts +3 -0
  111. package/dist/components/DevToolsPanel/tabs/QaViewer/QaVisionSelect.mjs +50 -0
  112. package/dist/components/DevToolsPanel/tabs/QaViewer/index.d.ts +3 -0
  113. package/dist/components/DevToolsPanel/tabs/QaViewer/index.mjs +5 -0
  114. package/dist/components/DevToolsPanel/tabs/TracingViewer/TracingViewer.mjs +31 -31
  115. package/dist/components/DevToolsPanel/tabs/VariablesViewer/VariablesViewer.mjs +12 -12
  116. package/dist/highlight/index.d.ts +2 -0
  117. package/dist/highlight/index.mjs +5 -0
  118. package/dist/highlight/useHighlightElement.d.ts +6 -0
  119. package/dist/{components/DevToolsPanel/tabs/TracingViewer → highlight}/useHighlightElement.mjs +1 -1
  120. package/dist/qa/QaContext.d.ts +29 -0
  121. package/dist/qa/QaContext.mjs +73 -0
  122. package/dist/qa/QaLayer.d.ts +9 -0
  123. package/dist/qa/QaLayer.mjs +69 -0
  124. package/dist/qa/checks/contrast.d.ts +6 -0
  125. package/dist/qa/checks/contrast.mjs +23 -0
  126. package/dist/qa/checks/dom.d.ts +15 -0
  127. package/dist/qa/checks/dom.mjs +4 -0
  128. package/dist/qa/checks/headings.d.ts +6 -0
  129. package/dist/qa/checks/headings.mjs +28 -0
  130. package/dist/qa/checks/images.d.ts +6 -0
  131. package/dist/qa/checks/images.mjs +20 -0
  132. package/dist/qa/checks/index.d.ts +15 -0
  133. package/dist/qa/checks/index.mjs +47 -0
  134. package/dist/qa/checks/names.d.ts +9 -0
  135. package/dist/qa/checks/names.mjs +27 -0
  136. package/dist/qa/checks/overflow.d.ts +3 -0
  137. package/dist/qa/checks/overflow.mjs +24 -0
  138. package/dist/qa/checks/targets.d.ts +8 -0
  139. package/dist/qa/checks/targets.mjs +17 -0
  140. package/dist/qa/findings.d.ts +5 -0
  141. package/dist/qa/findings.mjs +11 -0
  142. package/dist/qa/inspect/colour.d.ts +33 -0
  143. package/dist/qa/inspect/colour.mjs +111 -0
  144. package/dist/qa/inspect/describe.d.ts +32 -0
  145. package/dist/qa/inspect/describe.mjs +42 -0
  146. package/dist/qa/inspect/measure.d.ts +20 -0
  147. package/dist/qa/inspect/measure.mjs +23 -0
  148. package/dist/qa/inspect/rules.d.ts +12 -0
  149. package/dist/qa/inspect/rules.mjs +29 -0
  150. package/dist/qa/overlays/QaBoxModel.d.ts +9 -0
  151. package/dist/qa/overlays/QaBoxModel.mjs +49 -0
  152. package/dist/qa/overlays/QaContrastBadge.d.ts +7 -0
  153. package/dist/qa/overlays/QaContrastBadge.mjs +13 -0
  154. package/dist/qa/overlays/QaGrid.d.ts +10 -0
  155. package/dist/qa/overlays/QaGrid.mjs +24 -0
  156. package/dist/qa/overlays/QaInspector.d.ts +7 -0
  157. package/dist/qa/overlays/QaInspector.mjs +50 -0
  158. package/dist/qa/overlays/QaMeasure.d.ts +7 -0
  159. package/dist/qa/overlays/QaMeasure.mjs +39 -0
  160. package/dist/qa/overlays/QaSwatch.d.ts +6 -0
  161. package/dist/qa/overlays/QaSwatch.mjs +11 -0
  162. package/dist/qa/overlays/QaTabOrder.d.ts +6 -0
  163. package/dist/qa/overlays/QaTabOrder.mjs +39 -0
  164. package/dist/qa/overlays/QaTooltip.d.ts +6 -0
  165. package/dist/qa/overlays/QaTooltip.mjs +65 -0
  166. package/dist/qa/overlays/QaViewport.d.ts +10 -0
  167. package/dist/qa/overlays/QaViewport.mjs +27 -0
  168. package/dist/qa/qaCss.d.ts +12 -0
  169. package/dist/qa/qaCss.mjs +45 -0
  170. package/dist/qa/qaSettings.d.ts +38 -0
  171. package/dist/qa/qaSettings.mjs +28 -0
  172. package/dist/qa/tabOrder.d.ts +2 -0
  173. package/dist/qa/tabOrder.mjs +8 -0
  174. package/dist/qa/usePageBox.d.ts +13 -0
  175. package/dist/qa/usePageBox.mjs +23 -0
  176. package/package.json +371 -31
  177. package/dist/components/DevToolsPanel/tabs/ElementsViewer/DetailsAttributes.mjs +0 -19
  178. package/dist/components/DevToolsPanel/tabs/ElementsViewer/DetailsDefinition.mjs +0 -20
  179. package/dist/components/DevToolsPanel/tabs/ElementsViewer/DetailsValue.d.ts +0 -10
  180. package/dist/components/DevToolsPanel/tabs/ElementsViewer/DetailsValue.mjs +0 -31
  181. package/dist/components/DevToolsPanel/tabs/ElementsViewer/ElementDetails.d.ts +0 -8
  182. package/dist/components/DevToolsPanel/tabs/ElementsViewer/ElementDetails.mjs +0 -21
  183. package/dist/components/DevToolsPanel/tabs/ElementsViewer/ElementsList.d.ts +0 -8
  184. package/dist/components/DevToolsPanel/tabs/ElementsViewer/ElementsList.mjs +0 -42
  185. package/dist/components/DevToolsPanel/tabs/ElementsViewer/ElementsListItem.d.ts +0 -9
  186. package/dist/components/DevToolsPanel/tabs/ElementsViewer/ElementsListItem.mjs +0 -24
  187. package/dist/components/DevToolsPanel/tabs/TracingViewer/useHighlightElement.d.ts +0 -2
  188. /package/dist/components/DevToolsPanel/tabs/ElementsViewer/{DetailsAttributes.d.ts → components/DetailsAttributes/DetailsAttributes.d.ts} +0 -0
  189. /package/dist/components/DevToolsPanel/tabs/ElementsViewer/{DetailsDefinition.d.ts → components/DetailsDefinition/DetailsDefinition.d.ts} +0 -0
@@ -4,51 +4,53 @@ import n from "./DevToolsSubHeader.mjs";
4
4
  import r from "@plitzi/plitzi-ui/hooks/useStorage";
5
5
  import i from "clsx";
6
6
  import { useCallback as a, useMemo as o, useRef as s, useState as c } from "react";
7
- import { jsx as l, jsxs as u } from "react/jsx-runtime";
8
- import d from "@plitzi/plitzi-ui/ContainerResizable";
9
- import { useCommonStore as f } from "@plitzi/sdk-shared/store";
7
+ import { useCommonStore as l } from "@plitzi/sdk-shared/store";
8
+ import { jsx as u, jsxs as d } from "react/jsx-runtime";
9
+ import f from "@plitzi/plitzi-ui/ContainerResizable";
10
10
  //#region src/components/DevToolsPanel/DevToolsPanel.tsx
11
- var p = "vertical", m = "horizontal", h = ({ className: p, orientation: m = "vertical", tabSelected: h, logTypeFilter: g, onCollapse: _, onTabSelect: v, onChangeOrientation: y }) => {
12
- let [b, x] = r("plitzi-sdk.dev-tools.size", {
11
+ var p = "vertical", m = "horizontal", h = ({ className: p, orientation: m = "vertical", tabSelected: h, logTypeFilter: g, onCollapse: _, onTabSelect: v, onChangeOrientation: y, qa: b = !1 }) => {
12
+ let [x, S] = r("plitzi-sdk.dev-tools.size", {
13
13
  width: 500,
14
14
  height: 200
15
- }), [S] = f("navigation.currentPageId"), [C, w] = c(), T = o(() => m === "vertical" ? ["w"] : ["n"], [m]), E = s(typeof document < "u" ? document.querySelector(".plitzi-sdk") : null), D = a((e) => w(e), [w]), O = a((e, t) => x((n) => ({
15
+ }), [C] = l("navigation.currentPageId"), [w, T] = c(), E = o(() => m === "vertical" ? ["w"] : ["n"], [m]), D = s(typeof document < "u" ? document.querySelector(".plitzi-sdk") : null), O = a((e) => T(e), [T]), k = a((e, t) => S((n) => ({
16
16
  width: Number.isFinite(e) ? e : n.width,
17
17
  height: Number.isFinite(t) ? t : n.height
18
- })), [x]);
19
- return /* @__PURE__ */ l(d, {
18
+ })), [S]);
19
+ return /* @__PURE__ */ u(f, {
20
20
  className: i("component__container-resizable-sidebar relative z-[1000000] text-xs", p, { "h-full": m === "vertical" }),
21
21
  minConstraintsX: m === "vertical" ? 500 : Infinity,
22
22
  maxConstraintsX: m === "vertical" ? 1e3 : Infinity,
23
23
  minConstraintsY: m === "vertical" ? Infinity : 34,
24
24
  maxConstraintsY: m === "vertical" ? Infinity : 600,
25
- width: m === "vertical" ? b.width : Infinity,
26
- height: m === "vertical" ? Infinity : b.height,
27
- resizeHandles: T,
28
- parentRef: E,
25
+ width: m === "vertical" ? x.width : Infinity,
26
+ height: m === "vertical" ? Infinity : x.height,
27
+ resizeHandles: E,
28
+ parentRef: D,
29
29
  autoGrow: !1,
30
- onChange: O,
31
- children: /* @__PURE__ */ u("div", {
30
+ onChange: k,
31
+ children: /* @__PURE__ */ d("div", {
32
32
  className: "flex h-full w-full flex-col bg-white text-zinc-800 dark:bg-zinc-900 dark:text-zinc-200",
33
33
  children: [
34
- /* @__PURE__ */ l(t, {
34
+ /* @__PURE__ */ u(t, {
35
35
  orientation: m,
36
36
  onChangeOrientation: y,
37
37
  onCollapse: _,
38
38
  onTabSelect: v,
39
- tabSelected: h
39
+ tabSelected: h,
40
+ qa: b
40
41
  }),
41
- ["store", "elements"].includes(h) && /* @__PURE__ */ l(n, {
42
- elementSelected: C,
43
- onSelectElement: D,
44
- currentPageId: S
42
+ ["store", "elements"].includes(h) && /* @__PURE__ */ u(n, {
43
+ elementSelected: w,
44
+ onSelectElement: O,
45
+ currentPageId: C
45
46
  }),
46
- /* @__PURE__ */ l(e, {
47
+ /* @__PURE__ */ u(e, {
47
48
  orientation: m,
48
49
  tabSelected: h,
49
50
  logTypeFilter: g,
50
- elementSelected: C,
51
- onSelectElement: D
51
+ elementSelected: w,
52
+ onSelectElement: O,
53
+ qa: b
52
54
  })
53
55
  ]
54
56
  })
@@ -1,62 +1,58 @@
1
- import e from "./DevToolsButton.mjs";
2
- import t from "clsx";
3
- import { useCallback as n, useEffect as r, useMemo as i, useState as a } from "react";
4
- import { throttle as o } from "@plitzi/plitzi-ui/helpers";
5
- import { jsx as s, jsxs as c } from "react/jsx-runtime";
1
+ import e from "../../highlight/index.mjs";
2
+ import t from "./DevToolsButton.mjs";
3
+ import n from "clsx";
4
+ import { useCallback as r, useEffect as i, useMemo as a, useState as o } from "react";
5
+ import { throttle as s } from "@plitzi/plitzi-ui/helpers";
6
+ import { jsx as c, jsxs as l } from "react/jsx-runtime";
7
+ import { elementOf as u } from "@plitzi/sdk-shared/helpers/eventTarget";
6
8
  //#region src/components/DevToolsPanel/DevToolsSubHeader.tsx
7
- var l = ({ className: l, elementSelected: u, currentPageId: d, onSelectElement: f }) => {
8
- let [p, m] = a(!1), h = n((e) => {
9
+ var d = ({ className: d, elementSelected: f, currentPageId: p, onSelectElement: m }) => {
10
+ let [h, g] = o(!1), _ = r((e) => {
9
11
  let { id: t } = e?.dataset ?? {};
10
- f(t);
11
- }, [f]), g = i(() => o(h, 100), [h]), _ = n((e) => {
12
- e.target.closest(".plitzi-sdk") && g(e.target.closest("[data-id]"));
13
- }, [g]), v = n((e) => {
14
- e.target.closest(".plitzi-sdk") && (e.stopPropagation(), e.preventDefault(), m(!1));
15
- }, []), y = n((e) => {
16
- e.stopPropagation(), e.preventDefault(), m(!0);
17
- }, [m]), b = n(() => {
18
- m(!1), f(d);
19
- }, [d, f]), x = n(() => {
20
- m(!1), f("");
21
- }, [f]);
22
- return r(() => {
23
- if (typeof document > "u") return;
24
- let e = document.querySelectorAll(`[data-id="${u}"]`);
25
- return e.forEach((e) => e.classList.add("devtools-element-hovered")), () => {
26
- e.forEach((e) => e.classList.remove("devtools-element-hovered"));
27
- };
28
- }, [u]), r(() => {
29
- if (!p || typeof document > "u") return;
12
+ m(t);
13
+ }, [m]), v = a(() => s(_, 100), [_]), y = r((e) => {
14
+ u(e.target)?.closest(".plitzi-sdk") && v(u(e.target)?.closest("[data-id]") ?? void 0);
15
+ }, [v]), b = r((e) => {
16
+ u(e.target)?.closest(".plitzi-sdk") && (e.stopPropagation(), e.preventDefault(), g(!1));
17
+ }, []), x = r((e) => {
18
+ e.stopPropagation(), e.preventDefault(), g(!0);
19
+ }, [g]), S = r(() => {
20
+ g(!1), m(p);
21
+ }, [p, m]), C = r(() => {
22
+ g(!1), m("");
23
+ }, [m]);
24
+ return e(f), i(() => {
25
+ if (!h || typeof document > "u") return;
30
26
  let e = document.getElementsByClassName("plitzi-sdk")[0];
31
- if (e) return e.addEventListener("click", v), e.addEventListener("mousemove", _), () => {
32
- e.removeEventListener("click", v), e.removeEventListener("mousemove", _);
27
+ if (e) return e.addEventListener("click", b), e.addEventListener("mousemove", y), () => {
28
+ e.removeEventListener("click", b), e.removeEventListener("mousemove", y);
33
29
  };
34
30
  }, [
35
- v,
36
- _,
37
- p
38
- ]), /* @__PURE__ */ c("div", {
39
- className: t("flex shrink-0 items-center justify-between gap-2 border-b border-zinc-200 bg-zinc-50 px-2 py-1 dark:border-zinc-700 dark:bg-zinc-800", l),
40
- children: [/* @__PURE__ */ c("div", {
31
+ b,
32
+ y,
33
+ h
34
+ ]), /* @__PURE__ */ l("div", {
35
+ className: n("flex shrink-0 items-center justify-between gap-2 border-b border-zinc-200 bg-zinc-50 px-2 py-1 dark:border-zinc-700 dark:bg-zinc-800", d),
36
+ children: [/* @__PURE__ */ l("div", {
41
37
  className: "flex gap-1",
42
- children: [/* @__PURE__ */ s(e, {
38
+ children: [/* @__PURE__ */ c(t, {
43
39
  iconClassName: "fa-regular fa-hand-pointer",
44
40
  title: "Select an element in the page to inspect it",
45
- onClick: y,
46
- isSelected: p
47
- }), /* @__PURE__ */ s(e, {
41
+ onClick: x,
42
+ isSelected: h
43
+ }), /* @__PURE__ */ c(t, {
48
44
  iconClassName: "fa-regular fa-file",
49
45
  title: "Current Page",
50
- onClick: b,
51
- isSelected: u === d
46
+ onClick: S,
47
+ isSelected: f === p
52
48
  })]
53
- }), /* @__PURE__ */ s(e, {
49
+ }), /* @__PURE__ */ c(t, {
54
50
  iconClassName: "fa-solid fa-ban",
55
- onClick: x,
51
+ onClick: C,
56
52
  title: "Clear",
57
- isSelected: !!u
53
+ isSelected: !!f
58
54
  })]
59
55
  });
60
56
  };
61
57
  //#endregion
62
- export { l as default };
58
+ export { d as default };
@@ -5,11 +5,11 @@ import i from "./components/RunDetail/index.mjs";
5
5
  import a from "./components/RunList/index.mjs";
6
6
  import o from "@plitzi/plitzi-ui/hooks/useStorage";
7
7
  import { useCallback as s, useMemo as c, useState as l } from "react";
8
- import { jsx as u, jsxs as d } from "react/jsx-runtime";
9
- import { cancelActionRun as f, useActionRuns as p, useCommonStore as m } from "@plitzi/sdk-shared/store";
8
+ import { cancelActionRun as u, useActionRuns as d, useCommonStore as f } from "@plitzi/sdk-shared/store";
9
+ import { jsx as p, jsxs as m } from "react/jsx-runtime";
10
10
  //#region src/components/DevToolsPanel/tabs/ActionsViewer/ActionsViewer.tsx
11
11
  var h = "This page is served without a Plitzi server: every action step is inert", g = () => {
12
- let { runs: g, clear: _ } = p(), [v] = m("actions.endpoint"), [y, b] = o("plitzi-sdk.dev-tools.actions.filter", "all"), [x, S] = l(""), [C, w] = l(), [T, E] = l(), D = c(() => n(g, y, x), [
12
+ let { runs: g, clear: _ } = d(), [v] = f("actions.endpoint"), [y, b] = o("plitzi-sdk.dev-tools.actions.filter", "all"), [x, S] = l(""), [C, w] = l(), [T, E] = l(), D = c(() => n(g, y, x), [
13
13
  g,
14
14
  y,
15
15
  x
@@ -17,13 +17,13 @@ var h = "This page is served without a Plitzi server: every action step is inert
17
17
  w((t) => t === e ? void 0 : e), E(void 0);
18
18
  }, []), j = s((e) => {
19
19
  E((t) => t === e ? void 0 : e);
20
- }, []), M = s((e) => f(e), []), N = s(() => {
20
+ }, []), M = s((e) => u(e), []), N = s(() => {
21
21
  _(), w(void 0), E(void 0);
22
22
  }, [_]);
23
- return /* @__PURE__ */ d("div", {
23
+ return /* @__PURE__ */ m("div", {
24
24
  className: "flex h-full w-full flex-col",
25
25
  children: [
26
- /* @__PURE__ */ u(e, {
26
+ /* @__PURE__ */ p(e, {
27
27
  filter: y,
28
28
  query: x,
29
29
  liveCount: O,
@@ -32,19 +32,19 @@ var h = "This page is served without a Plitzi server: every action step is inert
32
32
  onQueryChange: S,
33
33
  onClear: N
34
34
  }),
35
- v === void 0 && /* @__PURE__ */ u("div", {
35
+ v === void 0 && /* @__PURE__ */ p("div", {
36
36
  className: "shrink-0 border-b border-amber-200 bg-amber-50 px-2 py-1 text-[10px] text-amber-700 dark:border-amber-500/30 dark:bg-amber-500/10 dark:text-amber-400",
37
37
  children: h
38
38
  }),
39
- /* @__PURE__ */ d("div", {
39
+ /* @__PURE__ */ m("div", {
40
40
  className: "flex min-h-0 grow",
41
- children: [/* @__PURE__ */ u(a, {
41
+ children: [/* @__PURE__ */ p(a, {
42
42
  runs: D,
43
43
  total: g.length,
44
44
  selectedRunId: C,
45
45
  onSelect: A,
46
46
  onCancel: M
47
- }), k !== void 0 && /* @__PURE__ */ u(t, { children: /* @__PURE__ */ u(i, {
47
+ }), k !== void 0 && /* @__PURE__ */ p(t, { children: /* @__PURE__ */ p(i, {
48
48
  run: k,
49
49
  selectedStepId: T,
50
50
  onSelectStep: j
@@ -3,5 +3,9 @@ export type ElementsViewerProps = {
3
3
  elementSelected?: string;
4
4
  onSelectElement: (id?: string) => void;
5
5
  };
6
+ /**
7
+ * What is on screen, element by element: the layouts around the page, the page, and the components it places — each
8
+ * element outlined on the page while it is pointed at, and, selected, how it is doing and what the document says.
9
+ */
6
10
  declare const ElementsViewer: ({ className, elementSelected, onSelectElement }: ElementsViewerProps) => import('react').JSX.Element;
7
11
  export default ElementsViewer;
@@ -1,24 +1,39 @@
1
- import e from "./ElementDetails.mjs";
2
- import t from "./ElementsList.mjs";
3
- import n from "clsx";
4
- import { useCallback as r, useMemo as i } from "react";
5
- import { jsx as a, jsxs as o } from "react/jsx-runtime";
1
+ import e from "./components/ElementDetails/index.mjs";
2
+ import { renderTree as t } from "./helpers/renderTree.mjs";
3
+ import n from "./components/ElementsTree/index.mjs";
4
+ import r from "../../../../highlight/index.mjs";
5
+ import i from "clsx";
6
+ import { useMemo as a, useState as o } from "react";
6
7
  import { useCommonStore as s } from "@plitzi/sdk-shared/store";
8
+ import { jsx as c, jsxs as l } from "react/jsx-runtime";
7
9
  //#region src/components/DevToolsPanel/tabs/ElementsViewer/ElementsViewer.tsx
8
- var c = ({ className: c, elementSelected: l, onSelectElement: u }) => {
9
- let [[d, f]] = s(["schema.flat", "navigation.currentPageId"]), p = i(() => Object.values(d).filter((e) => e.definition.rootId === f), [d, f]), m = i(() => p.find((e) => e.id === l), [p, l]), h = r((e) => u(e), [u]);
10
- return /* @__PURE__ */ o("div", {
11
- className: n("flex h-full w-full", c),
12
- children: [/* @__PURE__ */ a(t, {
13
- elements: p,
14
- elementSelected: l,
15
- onSelect: h
16
- }), l && /* @__PURE__ */ a(e, {
17
- definition: m?.definition,
18
- attributes: m?.attributes,
19
- onSelectElement: u
10
+ var u = ({ className: u, elementSelected: d, onSelectElement: f }) => {
11
+ let [[p, m, h]] = s([
12
+ "schema.flat",
13
+ "schema.components",
14
+ "navigation.currentPageId"
15
+ ]), [g, _] = o(""), [v, y] = o(), b = a(() => t({
16
+ flat: p,
17
+ components: m
18
+ }, h), [
19
+ p,
20
+ m,
21
+ h
22
+ ]);
23
+ return r(v), /* @__PURE__ */ l("div", {
24
+ className: i("flex h-full w-full", u),
25
+ children: [/* @__PURE__ */ c(n, {
26
+ sections: b,
27
+ filter: g,
28
+ selected: d,
29
+ onFilter: _,
30
+ onSelect: f,
31
+ onHover: y
32
+ }), d && /* @__PURE__ */ c(e, {
33
+ id: d,
34
+ onSelectElement: f
20
35
  })]
21
36
  });
22
37
  };
23
38
  //#endregion
24
- export { c as default };
39
+ export { u as default };
@@ -0,0 +1,16 @@
1
+ import e from "../DetailsRow/index.mjs";
2
+ import t from "../DetailsValue/index.mjs";
3
+ import { jsx as n } from "react/jsx-runtime";
4
+ //#region src/components/DevToolsPanel/tabs/ElementsViewer/components/DetailsAttributes/DetailsAttributes.tsx
5
+ var r = ({ attributes: r = {} }) => /* @__PURE__ */ n("div", {
6
+ className: "w-full text-sm",
7
+ children: Object.entries(r).map(([r, i]) => /* @__PURE__ */ n(e, {
8
+ name: r,
9
+ children: /* @__PURE__ */ n(t, {
10
+ attribute: r,
11
+ value: i
12
+ })
13
+ }, r))
14
+ });
15
+ //#endregion
16
+ export { r as default };
@@ -0,0 +1,3 @@
1
+ import { default as DetailsAttributes } from './DetailsAttributes';
2
+ export * from './DetailsAttributes';
3
+ export default DetailsAttributes;
@@ -0,0 +1,5 @@
1
+ import e from "./DetailsAttributes.mjs";
2
+ //#region src/components/DevToolsPanel/tabs/ElementsViewer/components/DetailsAttributes/index.ts
3
+ var t = e;
4
+ //#endregion
5
+ export { t as default };
@@ -0,0 +1,18 @@
1
+ import e from "../DetailsRow/index.mjs";
2
+ import t from "../DetailsValue/index.mjs";
3
+ import { jsx as n } from "react/jsx-runtime";
4
+ //#region src/components/DevToolsPanel/tabs/ElementsViewer/components/DetailsDefinition/DetailsDefinition.tsx
5
+ var r = ({ definition: r, onSelectElement: i }) => /* @__PURE__ */ n("div", {
6
+ className: "w-full text-sm",
7
+ children: Object.entries(r ?? {}).map(([r, a]) => /* @__PURE__ */ n(e, {
8
+ name: r,
9
+ children: /* @__PURE__ */ n(t, {
10
+ isDefinition: !0,
11
+ attribute: r,
12
+ value: a,
13
+ onSelectElement: i
14
+ })
15
+ }, r))
16
+ });
17
+ //#endregion
18
+ export { r as default };
@@ -0,0 +1,3 @@
1
+ import { default as DetailsDefinition } from './DetailsDefinition';
2
+ export * from './DetailsDefinition';
3
+ export default DetailsDefinition;
@@ -0,0 +1,5 @@
1
+ import e from "./DetailsDefinition.mjs";
2
+ //#region src/components/DevToolsPanel/tabs/ElementsViewer/components/DetailsDefinition/index.ts
3
+ var t = e;
4
+ //#endregion
5
+ export { t as default };
@@ -0,0 +1,8 @@
1
+ import { ReactNode } from 'react';
2
+ export type DetailsRowProps = {
3
+ name: string;
4
+ children?: ReactNode;
5
+ };
6
+ /** One line of a details table: a name, and what it holds. */
7
+ declare const DetailsRow: ({ name, children }: DetailsRowProps) => import('react').JSX.Element;
8
+ export default DetailsRow;
@@ -0,0 +1,14 @@
1
+ import { jsx as e, jsxs as t } from "react/jsx-runtime";
2
+ //#region src/components/DevToolsPanel/tabs/ElementsViewer/components/DetailsRow/DetailsRow.tsx
3
+ var n = ({ name: n, children: r }) => /* @__PURE__ */ t("div", {
4
+ className: "flex gap-4 border-zinc-200 py-1 dark:border-zinc-700 [&:not(:first-child)]:border-t",
5
+ children: [/* @__PURE__ */ e("div", {
6
+ className: "grow basis-0 text-zinc-500 dark:text-zinc-400",
7
+ children: n
8
+ }), /* @__PURE__ */ e("div", {
9
+ className: "grow basis-0 truncate text-zinc-800 dark:text-zinc-200",
10
+ children: r
11
+ })]
12
+ });
13
+ //#endregion
14
+ export { n as default };
@@ -0,0 +1,3 @@
1
+ import { default as DetailsRow } from './DetailsRow';
2
+ export * from './DetailsRow';
3
+ export default DetailsRow;
@@ -0,0 +1,5 @@
1
+ import e from "./DetailsRow.mjs";
2
+ //#region src/components/DevToolsPanel/tabs/ElementsViewer/components/DetailsRow/index.ts
3
+ var t = e;
4
+ //#endregion
5
+ export { t as default };
@@ -0,0 +1,9 @@
1
+ export type DetailsRuntimeProps = {
2
+ id: string;
3
+ };
4
+ /**
5
+ * The element as the page has it now — the same report `window.__plitzi.element()` and `plitzi check --element` give:
6
+ * its own state, what it binds to, how many copies are on the page and where. Read again every second.
7
+ */
8
+ declare const DetailsRuntime: ({ id }: DetailsRuntimeProps) => import('react').JSX.Element;
9
+ export default DetailsRuntime;
@@ -0,0 +1,54 @@
1
+ import { elementReport as e } from "../../../../../../agentInspector/report.mjs";
2
+ import t from "../../../../../../freshness/useSecondsClock.mjs";
3
+ import n from "../DetailsRow/index.mjs";
4
+ import { useContext as r } from "react";
5
+ import { StoreContext as i } from "@plitzi/nexus/react";
6
+ import { jsx as a, jsxs as o } from "react/jsx-runtime";
7
+ //#region src/components/DevToolsPanel/tabs/ElementsViewer/components/DetailsRuntime/DetailsRuntime.tsx
8
+ var s = ({ visible: e, box: t }) => `${e ? "Yes" : "No"}${t ? ` · ${String(t.width)}×${String(t.height)} at ${String(t.x)}, ${String(t.y)}` : ""}`, c = ({ category: e, to: t, source: n, template: r }) => `${e === "attributes" ? "" : `${e} · `}${t} ← ${n}${r ? ` · ${r}` : ""}`, l = ({ id: l }) => {
9
+ let u = r(i);
10
+ t(!0);
11
+ let d = u && typeof document < "u" ? e(u.getState(), l, document) : void 0;
12
+ return d ? /* @__PURE__ */ o("div", {
13
+ className: "w-full text-sm",
14
+ children: [
15
+ /* @__PURE__ */ a(n, {
16
+ name: "Type",
17
+ children: d.type
18
+ }),
19
+ d.inComponent && /* @__PURE__ */ a(n, {
20
+ name: "In component",
21
+ children: d.inComponent
22
+ }),
23
+ d.instanceOf && /* @__PURE__ */ a(n, {
24
+ name: "Places component",
25
+ children: d.instanceOf
26
+ }),
27
+ /* @__PURE__ */ a(n, {
28
+ name: "Copies on the page",
29
+ children: d.copies
30
+ }),
31
+ /* @__PURE__ */ a(n, {
32
+ name: "On screen",
33
+ children: s(d)
34
+ }),
35
+ d.state !== void 0 && /* @__PURE__ */ a(n, {
36
+ name: "Own state",
37
+ children: JSON.stringify(d.state)
38
+ }),
39
+ (d.bindings ?? []).map((e) => /* @__PURE__ */ a(n, {
40
+ name: "Reads",
41
+ children: c(e)
42
+ }, `${e.category}-${e.to}`))
43
+ ]
44
+ }) : /* @__PURE__ */ o("div", {
45
+ className: "text-sm text-zinc-400 dark:text-zinc-500",
46
+ children: [
47
+ "Neither the document nor the page has “",
48
+ l,
49
+ "”."
50
+ ]
51
+ });
52
+ };
53
+ //#endregion
54
+ export { l as default };
@@ -0,0 +1,3 @@
1
+ import { default as DetailsRuntime } from './DetailsRuntime';
2
+ export * from './DetailsRuntime';
3
+ export default DetailsRuntime;
@@ -0,0 +1,5 @@
1
+ import e from "./DetailsRuntime.mjs";
2
+ //#region src/components/DevToolsPanel/tabs/ElementsViewer/components/DetailsRuntime/index.ts
3
+ var t = e;
4
+ //#endregion
5
+ export { t as default };
@@ -0,0 +1,9 @@
1
+ export type DetailsValueProps = {
2
+ attribute: string;
3
+ value: unknown;
4
+ isDefinition?: boolean;
5
+ onSelectElement?: (id: string) => void;
6
+ };
7
+ /** A value of a definition or an attribute as one line: the elements it names as links, anything else as text. */
8
+ declare const DetailsValue: ({ attribute, value, isDefinition, onSelectElement }: DetailsValueProps) => import('react').JSX.Element;
9
+ export default DetailsValue;
@@ -0,0 +1,15 @@
1
+ import e from "../ElementLink/index.mjs";
2
+ import { Fragment as t, jsx as n } from "react/jsx-runtime";
3
+ //#region src/components/DevToolsPanel/tabs/ElementsViewer/components/DetailsValue/DetailsValue.tsx
4
+ var r = /* @__PURE__ */ new Set(["rootId", "parentId"]), i = (e, t, n) => typeof t == "object" && t ? n && e === "styleSelectors" ? Object.values(t).join(", ") : JSON.stringify(t) : typeof t == "boolean" ? t ? "True" : "False" : typeof t == "string" || typeof t == "number" ? String(t) : "", a = ({ attribute: a, value: o, isDefinition: s = !1, onSelectElement: c }) => s && a === "items" && Array.isArray(o) ? /* @__PURE__ */ n("div", {
5
+ className: "flex flex-col",
6
+ children: o.filter((e) => typeof e == "string").map((t) => /* @__PURE__ */ n(e, {
7
+ id: t,
8
+ onSelect: c
9
+ }, t))
10
+ }) : s && r.has(a) && typeof o == "string" ? /* @__PURE__ */ n(e, {
11
+ id: o,
12
+ onSelect: c
13
+ }) : /* @__PURE__ */ n(t, { children: i(a, o, s) });
14
+ //#endregion
15
+ export { a as default };
@@ -0,0 +1,3 @@
1
+ import { default as DetailsValue } from './DetailsValue';
2
+ export * from './DetailsValue';
3
+ export default DetailsValue;
@@ -0,0 +1,5 @@
1
+ import e from "./DetailsValue.mjs";
2
+ //#region src/components/DevToolsPanel/tabs/ElementsViewer/components/DetailsValue/index.ts
3
+ var t = e;
4
+ //#endregion
5
+ export { t as default };
@@ -0,0 +1,7 @@
1
+ export type ElementDetailsProps = {
2
+ id: string;
3
+ onSelectElement: (id: string) => void;
4
+ };
5
+ /** One element: how it is doing on the page, and what the document says it is — wherever it is, a page or a component. */
6
+ declare const ElementDetails: ({ id, onSelectElement }: ElementDetailsProps) => import('react').JSX.Element;
7
+ export default ElementDetails;
@@ -0,0 +1,46 @@
1
+ import e from "../DetailsAttributes/index.mjs";
2
+ import t from "../DetailsDefinition/index.mjs";
3
+ import n from "../DetailsRuntime/index.mjs";
4
+ import { useMemo as r } from "react";
5
+ import { useCommonStore as i } from "@plitzi/sdk-shared/store";
6
+ import { jsx as a, jsxs as o } from "react/jsx-runtime";
7
+ import s from "@plitzi/plitzi-ui/ContainerTabs";
8
+ import { treeOf as c } from "@plitzi/sdk-schema/helpers/components";
9
+ //#region src/components/DevToolsPanel/tabs/ElementsViewer/components/ElementDetails/ElementDetails.tsx
10
+ var l = [
11
+ { label: "Runtime" },
12
+ { label: "Definition" },
13
+ { label: "Attributes" }
14
+ ], u = ({ id: u, onSelectElement: d }) => {
15
+ let [[f, p]] = i(["schema.flat", "schema.components"]), m = r(() => c({
16
+ flat: f,
17
+ components: p
18
+ }, u)?.flat[u], [
19
+ f,
20
+ p,
21
+ u
22
+ ]);
23
+ return /* @__PURE__ */ o(s, {
24
+ className: "w-full grow gap-4 overflow-hidden p-4",
25
+ children: [
26
+ /* @__PURE__ */ a(s.Tabs, { items: l }),
27
+ /* @__PURE__ */ a(s.TabContent, {
28
+ className: "flex-col overflow-y-auto",
29
+ children: /* @__PURE__ */ a(n, { id: u })
30
+ }),
31
+ /* @__PURE__ */ a(s.TabContent, {
32
+ className: "flex-col overflow-y-auto",
33
+ children: /* @__PURE__ */ a(t, {
34
+ definition: m?.definition,
35
+ onSelectElement: d
36
+ })
37
+ }),
38
+ /* @__PURE__ */ a(s.TabContent, {
39
+ className: "overflow-y-auto",
40
+ children: /* @__PURE__ */ a(e, { attributes: m?.attributes })
41
+ })
42
+ ]
43
+ });
44
+ };
45
+ //#endregion
46
+ export { u as default };
@@ -0,0 +1,3 @@
1
+ import { default as ElementDetails } from './ElementDetails';
2
+ export * from './ElementDetails';
3
+ export default ElementDetails;
@@ -0,0 +1,5 @@
1
+ import e from "./ElementDetails.mjs";
2
+ //#region src/components/DevToolsPanel/tabs/ElementsViewer/components/ElementDetails/index.ts
3
+ var t = e;
4
+ //#endregion
5
+ export { t as default };
@@ -0,0 +1,7 @@
1
+ export type ElementLinkProps = {
2
+ id: string;
3
+ onSelect?: (id: string) => void;
4
+ };
5
+ /** Another element named by a value — a child, the parent, the root — by its label, and selected on a click. */
6
+ declare const ElementLink: ({ id, onSelect }: ElementLinkProps) => import('react').JSX.Element;
7
+ export default ElementLink;
@@ -0,0 +1,14 @@
1
+ import { useCallback as e } from "react";
2
+ import { useCommonStore as t } from "@plitzi/sdk-shared/store";
3
+ import { jsx as n } from "react/jsx-runtime";
4
+ //#region src/components/DevToolsPanel/tabs/ElementsViewer/components/ElementLink/ElementLink.tsx
5
+ var r = ({ id: r, onSelect: i }) => {
6
+ let [a] = t("schema.flat"), o = Object.hasOwn(a, r) ? a[r].definition.label : r, s = e(() => i?.(r), [i, r]);
7
+ return /* @__PURE__ */ n("span", {
8
+ className: "cursor-pointer text-violet-600 hover:underline dark:text-violet-400",
9
+ onClick: s,
10
+ children: o
11
+ });
12
+ };
13
+ //#endregion
14
+ export { r as default };
@@ -0,0 +1,3 @@
1
+ import { default as ElementLink } from './ElementLink';
2
+ export * from './ElementLink';
3
+ export default ElementLink;
@@ -0,0 +1,5 @@
1
+ import e from "./ElementLink.mjs";
2
+ //#region src/components/DevToolsPanel/tabs/ElementsViewer/components/ElementLink/index.ts
3
+ var t = e;
4
+ //#endregion
5
+ export { t as default };