@contember/react-devbar 2.0.0-alpha.9 → 2.0.0-beta.2

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 (64) hide show
  1. package/dist/development/src/DevErrorManager.cjs.map +1 -1
  2. package/dist/development/src/DevErrorManager.js.map +1 -1
  3. package/dist/development/src/errorHandling.cjs.map +1 -1
  4. package/dist/development/src/errorHandling.js.map +1 -1
  5. package/dist/development/src/hooks/useParsedStacktrace.cjs +6 -1
  6. package/dist/development/src/hooks/useParsedStacktrace.cjs.map +1 -1
  7. package/dist/development/src/hooks/useParsedStacktrace.js +6 -1
  8. package/dist/development/src/hooks/useParsedStacktrace.js.map +1 -1
  9. package/dist/development/src/ui/DevBar/DevBar.cjs +128 -174
  10. package/dist/development/src/ui/DevBar/DevBar.cjs.map +1 -1
  11. package/dist/development/src/ui/DevBar/DevBar.js +130 -176
  12. package/dist/development/src/ui/DevBar/DevBar.js.map +1 -1
  13. package/dist/development/src/ui/DevError/DevError.cjs +5 -5
  14. package/dist/development/src/ui/DevError/DevError.cjs.map +1 -1
  15. package/dist/development/src/ui/DevError/DevError.js +5 -5
  16. package/dist/development/src/ui/DevError/DevError.js.map +1 -1
  17. package/dist/development/src/ui/DevError/DevErrorInner.cjs +1 -1
  18. package/dist/development/src/ui/DevError/DevErrorInner.cjs.map +1 -1
  19. package/dist/development/src/ui/DevError/DevErrorInner.js +1 -1
  20. package/dist/development/src/ui/DevError/DevErrorInner.js.map +1 -1
  21. package/dist/development/src/ui/DevError/DevErrorList.cjs +28 -17
  22. package/dist/development/src/ui/DevError/DevErrorList.cjs.map +1 -1
  23. package/dist/development/src/ui/DevError/DevErrorList.js +28 -17
  24. package/dist/development/src/ui/DevError/DevErrorList.js.map +1 -1
  25. package/dist/development/src/ui/DevError/StackTrace.cjs.map +1 -1
  26. package/dist/development/src/ui/DevError/StackTrace.js.map +1 -1
  27. package/dist/production/src/errorHandling.cjs.map +1 -1
  28. package/dist/production/src/errorHandling.js.map +1 -1
  29. package/dist/production/src/hooks/useParsedStacktrace.cjs +6 -1
  30. package/dist/production/src/hooks/useParsedStacktrace.cjs.map +1 -1
  31. package/dist/production/src/hooks/useParsedStacktrace.js +6 -1
  32. package/dist/production/src/hooks/useParsedStacktrace.js.map +1 -1
  33. package/dist/production/src/ui/DevBar/DevBar.cjs +74 -112
  34. package/dist/production/src/ui/DevBar/DevBar.cjs.map +1 -1
  35. package/dist/production/src/ui/DevBar/DevBar.js +77 -115
  36. package/dist/production/src/ui/DevBar/DevBar.js.map +1 -1
  37. package/dist/production/src/ui/DevError/DevError.cjs.map +1 -1
  38. package/dist/production/src/ui/DevError/DevError.js.map +1 -1
  39. package/dist/production/src/ui/DevError/DevErrorBadge.cjs.map +1 -1
  40. package/dist/production/src/ui/DevError/DevErrorBadge.js.map +1 -1
  41. package/dist/production/src/ui/DevError/DevErrorInner.cjs +1 -1
  42. package/dist/production/src/ui/DevError/DevErrorInner.cjs.map +1 -1
  43. package/dist/production/src/ui/DevError/DevErrorInner.js +1 -1
  44. package/dist/production/src/ui/DevError/DevErrorInner.js.map +1 -1
  45. package/dist/production/src/ui/DevError/DevErrorList.cjs +11 -4
  46. package/dist/production/src/ui/DevError/DevErrorList.cjs.map +1 -1
  47. package/dist/production/src/ui/DevError/DevErrorList.js +11 -4
  48. package/dist/production/src/ui/DevError/DevErrorList.js.map +1 -1
  49. package/dist/production/src/ui/DevError/StackTrace.cjs.map +1 -1
  50. package/dist/production/src/ui/DevError/StackTrace.js.map +1 -1
  51. package/dist/types/hooks/useParsedStacktrace.d.ts +1 -1
  52. package/dist/types/hooks/useParsedStacktrace.d.ts.map +1 -1
  53. package/dist/types/tsconfig.tsbuildinfo +1 -1
  54. package/dist/types/ui/DevBar/DevBar.d.ts +5 -4
  55. package/dist/types/ui/DevBar/DevBar.d.ts.map +1 -1
  56. package/dist/types/ui/DevError/DevError.d.ts.map +1 -1
  57. package/dist/types/ui/DevError/DevErrorList.d.ts.map +1 -1
  58. package/package.json +7 -6
  59. package/src/hooks/useParsedStacktrace.ts +6 -1
  60. package/src/index.css +290 -227
  61. package/src/ui/DevBar/DevBar.tsx +72 -97
  62. package/src/ui/DevError/DevError.tsx +0 -1
  63. package/src/ui/DevError/DevErrorInner.tsx +1 -1
  64. package/src/ui/DevError/DevErrorList.tsx +14 -5
@@ -1,16 +1,14 @@
1
1
  import { jsxDEV } from "react/jsx-dev-runtime";
2
- import { useWindowSize, useReferentiallyStableCallback, useOnElementClickOutsideCallback, useId, useOnElementMouseEnterDelayedCallback } from "@contember/react-utils";
2
+ import { useWindowSize, useReferentiallyStableCallback, useOnElementClickOutsideCallback, useId } from "@contember/react-utils";
3
3
  import { dataAttribute } from "@contember/utilities";
4
- import { useState, useRef, useEffect } from "react";
4
+ import { useState, useEffect, useRef, useCallback } from "react";
5
5
  const className = (cls) => cls ? `cui-devBar-${cls}` : "cui-devBar";
6
6
  const DevBar = ({
7
7
  breakpoint = 768,
8
- children,
9
- brand
8
+ children
10
9
  }) => {
11
- const [expanded, setExpanded] = useState(true);
10
+ const [expanded, setExpanded] = useState(false);
12
11
  const isSmallScreen = useWindowSize().width < breakpoint;
13
- const toggleButtonRef = useRef(null);
14
12
  const handleToggle = useReferentiallyStableCallback(() => {
15
13
  setExpanded((expanded2) => !expanded2);
16
14
  });
@@ -19,16 +17,7 @@ const DevBar = ({
19
17
  if (event.code === "KeyJ" && (event.ctrlKey || event.metaKey)) {
20
18
  event.preventDefault();
21
19
  event.stopPropagation();
22
- if (expanded) {
23
- setExpanded(false);
24
- toggleButtonRef.current?.blur();
25
- } else {
26
- if (toggleButtonRef.current !== document.activeElement) {
27
- toggleButtonRef.current?.focus();
28
- } else {
29
- toggleButtonRef.current?.blur();
30
- }
31
- }
20
+ handleToggle();
32
21
  }
33
22
  }
34
23
  document.addEventListener("keydown", handleKeyDown);
@@ -38,99 +27,49 @@ const DevBar = ({
38
27
  useOnElementClickOutsideCallback(devBarContentRef, () => {
39
28
  if (expanded) {
40
29
  setExpanded(false);
41
- toggleButtonRef.current?.blur();
42
30
  }
43
31
  });
44
32
  const id = `dev-bar-panel${useId()}`;
45
33
  return /* @__PURE__ */ jsxDEV(
46
34
  "section",
47
35
  {
48
- "data-transparent": true,
49
- "data-overrides-lucide-icons": true,
36
+ "data-transparent": "true",
37
+ "data-overrides-lucide-icons": "true",
50
38
  "data-expanded": dataAttribute(expanded),
51
39
  "data-small-screen": dataAttribute(isSmallScreen),
52
40
  className: className(null),
53
- onKeyDown: (event) => {
54
- if (event.code === "Escape") {
55
- event.preventDefault();
56
- event.stopPropagation();
57
- if (expanded) {
58
- setExpanded(false);
59
- } else if (document.activeElement && document.activeElement instanceof HTMLElement) {
60
- document.activeElement.blur();
61
- }
62
- }
63
- },
64
- children: [
65
- /* @__PURE__ */ jsxDEV("style", { children: `svg { pointer-events: none }` }, void 0, false, {
66
- fileName: "/home/runner/work/contember/contember/packages/react-devbar/src/ui/DevBar/DevBar.tsx",
67
- lineNumber: 83,
68
- columnNumber: 4
69
- }, void 0),
70
- /* @__PURE__ */ jsxDEV("div", { ref: devBarContentRef, className: className("content"), children: [
71
- /* @__PURE__ */ jsxDEV(
72
- "div",
73
- {
74
- "data-expanded": dataAttribute(expanded),
75
- id,
76
- role: "dialog",
77
- style: { display: "contents" },
78
- children: [
79
- /* @__PURE__ */ jsxDEV("div", { className: className("brand"), children: brand }, void 0, false, {
80
- fileName: "/home/runner/work/contember/contember/packages/react-devbar/src/ui/DevBar/DevBar.tsx",
81
- lineNumber: 91,
82
- columnNumber: 6
83
- }, void 0),
84
- /* @__PURE__ */ jsxDEV("div", { className: className("panels"), children }, void 0, false, {
85
- fileName: "/home/runner/work/contember/contember/packages/react-devbar/src/ui/DevBar/DevBar.tsx",
86
- lineNumber: 96,
87
- columnNumber: 6
88
- }, void 0)
89
- ]
90
- },
91
- void 0,
92
- true,
93
- {
94
- fileName: "/home/runner/work/contember/contember/packages/react-devbar/src/ui/DevBar/DevBar.tsx",
95
- lineNumber: 85,
96
- columnNumber: 5
97
- },
98
- void 0
99
- ),
100
- /* @__PURE__ */ jsxDEV(
101
- "button",
102
- {
103
- ref: toggleButtonRef,
104
- id: "dev-bar-toggle-button",
105
- "aria-label": "Toggle Contember Developer Toolbar",
106
- "aria-controls": id,
107
- "aria-expanded": expanded,
108
- className: className("close"),
109
- onClick: handleToggle,
110
- tabIndex: 0,
111
- children: expanded ? "🗙" : "ᐸ"
112
- },
113
- void 0,
114
- false,
115
- {
116
- fileName: "/home/runner/work/contember/contember/packages/react-devbar/src/ui/DevBar/DevBar.tsx",
117
- lineNumber: 102,
118
- columnNumber: 5
119
- },
120
- void 0
121
- )
122
- ] }, void 0, true, {
41
+ children: /* @__PURE__ */ jsxDEV("div", { ref: devBarContentRef, className: className("content"), children: /* @__PURE__ */ jsxDEV(
42
+ "div",
43
+ {
44
+ "data-expanded": true,
45
+ id,
46
+ role: "dialog",
47
+ style: { display: "contents" },
48
+ children: /* @__PURE__ */ jsxDEV("div", { className: className("panels"), children }, void 0, false, {
49
+ fileName: "/home/runner/work/contember/contember/packages/react-devbar/src/ui/DevBar/DevBar.tsx",
50
+ lineNumber: 64,
51
+ columnNumber: 6
52
+ }, void 0)
53
+ },
54
+ void 0,
55
+ false,
56
+ {
123
57
  fileName: "/home/runner/work/contember/contember/packages/react-devbar/src/ui/DevBar/DevBar.tsx",
124
- lineNumber: 84,
125
- columnNumber: 4
126
- }, void 0)
127
- ]
58
+ lineNumber: 58,
59
+ columnNumber: 5
60
+ },
61
+ void 0
62
+ ) }, void 0, false, {
63
+ fileName: "/home/runner/work/contember/contember/packages/react-devbar/src/ui/DevBar/DevBar.tsx",
64
+ lineNumber: 57,
65
+ columnNumber: 4
66
+ }, void 0)
128
67
  },
129
68
  void 0,
130
- true,
69
+ false,
131
70
  {
132
71
  fileName: "/home/runner/work/contember/contember/packages/react-devbar/src/ui/DevBar/DevBar.tsx",
133
- lineNumber: 64,
72
+ lineNumber: 50,
134
73
  columnNumber: 3
135
74
  },
136
75
  void 0
@@ -138,97 +77,112 @@ const DevBar = ({
138
77
  };
139
78
  const DevPanel = ({ heading, icon, children, preview }) => {
140
79
  const id = `cui-devBar-panel-${useId()}`;
141
- const [expanded, setExpanded] = useState(false);
142
- const mouseEnterTimeStampRef = useRef(void 0);
143
- const devPanelRef = useRef(null);
144
- useOnElementMouseEnterDelayedCallback(devPanelRef, useReferentiallyStableCallback(({ type }) => {
145
- if (type === "mouseenter") {
146
- mouseEnterTimeStampRef.current = Date.now() + 300;
147
- setExpanded(true);
148
- }
149
- }));
150
- return /* @__PURE__ */ jsxDEV(
151
- "div",
152
- {
153
- ref: devPanelRef,
154
- "data-expanded": dataAttribute(expanded),
155
- className: className("trigger"),
156
- onMouseLeave: useReferentiallyStableCallback(() => {
157
- setExpanded(false);
158
- }),
159
- onKeyDown: useReferentiallyStableCallback((event) => {
160
- if (expanded && event.code === "Escape") {
161
- event.preventDefault();
162
- event.stopPropagation();
163
- setExpanded(false);
164
- }
165
- }),
166
- children: [
80
+ const dialogRef = useRef(null);
81
+ const triggerRef = useRef(null);
82
+ const handleOpen = useCallback(() => {
83
+ dialogRef.current?.showModal();
84
+ }, []);
85
+ const handleClose = useCallback(() => {
86
+ dialogRef.current?.close();
87
+ }, []);
88
+ useEffect(() => {
89
+ const dialog = dialogRef.current;
90
+ if (!dialog) return;
91
+ const handleClickOutside = (event) => {
92
+ const rect = dialog.getBoundingClientRect();
93
+ const isInDialog = rect.top <= event.clientY && event.clientY <= rect.top + rect.height && rect.left <= event.clientX && event.clientX <= rect.left + rect.width;
94
+ if (!isInDialog) {
95
+ dialog.close();
96
+ }
97
+ };
98
+ dialog.addEventListener("click", handleClickOutside);
99
+ return () => dialog.removeEventListener("click", handleClickOutside);
100
+ }, []);
101
+ useEffect(() => {
102
+ const handleEscape = (event) => {
103
+ if (event.key === "Escape") {
104
+ handleClose();
105
+ }
106
+ };
107
+ document.addEventListener("keydown", handleEscape);
108
+ return () => document.removeEventListener("keydown", handleEscape);
109
+ }, [handleClose]);
110
+ return /* @__PURE__ */ jsxDEV("div", { className: className("trigger"), children: [
111
+ /* @__PURE__ */ jsxDEV(
112
+ "button",
113
+ {
114
+ ref: triggerRef,
115
+ tabIndex: 0,
116
+ "aria-haspopup": "dialog",
117
+ "aria-controls": id,
118
+ className: className("trigger-label"),
119
+ onClick: handleOpen,
120
+ children: [
121
+ icon,
122
+ /* @__PURE__ */ jsxDEV("span", { className: className("trigger-label-text"), children: preview ?? heading }, void 0, false, {
123
+ fileName: "/home/runner/work/contember/contember/packages/react-devbar/src/ui/DevBar/DevBar.tsx",
124
+ lineNumber: 137,
125
+ columnNumber: 5
126
+ }, void 0)
127
+ ]
128
+ },
129
+ void 0,
130
+ true,
131
+ {
132
+ fileName: "/home/runner/work/contember/contember/packages/react-devbar/src/ui/DevBar/DevBar.tsx",
133
+ lineNumber: 128,
134
+ columnNumber: 4
135
+ },
136
+ void 0
137
+ ),
138
+ /* @__PURE__ */ jsxDEV("dialog", { ref: dialogRef, id, className: className("panel"), children: /* @__PURE__ */ jsxDEV("div", { className: className("panel-content"), children: [
139
+ /* @__PURE__ */ jsxDEV("div", { className: className("panel-header"), children: [
140
+ /* @__PURE__ */ jsxDEV("h2", { className: "h4", children: heading }, void 0, false, {
141
+ fileName: "/home/runner/work/contember/contember/packages/react-devbar/src/ui/DevBar/DevBar.tsx",
142
+ lineNumber: 145,
143
+ columnNumber: 7
144
+ }, void 0),
167
145
  /* @__PURE__ */ jsxDEV(
168
146
  "button",
169
147
  {
170
- tabIndex: 0,
171
- "aria-haspopup": "dialog",
172
- "aria-controls": id,
173
- "aria-expanded": expanded,
174
- className: className("trigger-label"),
175
- onClick: useReferentiallyStableCallback(() => {
176
- if (mouseEnterTimeStampRef.current && Date.now() < mouseEnterTimeStampRef.current) {
177
- return;
178
- } else {
179
- setExpanded((expanded2) => !expanded2);
180
- mouseEnterTimeStampRef.current = void 0;
181
- }
182
- }),
183
- children: [
184
- icon,
185
- /* @__PURE__ */ jsxDEV("span", { className: className("trigger-label-text"), children: preview ?? heading }, void 0, false, {
186
- fileName: "/home/runner/work/contember/contember/packages/react-devbar/src/ui/DevBar/DevBar.tsx",
187
- lineNumber: 170,
188
- columnNumber: 5
189
- }, void 0)
190
- ]
148
+ onClick: handleClose,
149
+ className: className("close-button"),
150
+ "aria-label": "Close",
151
+ children: "✕"
191
152
  },
192
153
  void 0,
193
- true,
154
+ false,
194
155
  {
195
156
  fileName: "/home/runner/work/contember/contember/packages/react-devbar/src/ui/DevBar/DevBar.tsx",
196
- lineNumber: 154,
197
- columnNumber: 4
157
+ lineNumber: 146,
158
+ columnNumber: 7
198
159
  },
199
160
  void 0
200
- ),
201
- expanded && /* @__PURE__ */ jsxDEV("div", { tabIndex: 0, id, role: "dialog", className: className("panel"), children: /* @__PURE__ */ jsxDEV("div", { className: className("panel-content"), children: [
202
- /* @__PURE__ */ jsxDEV("h2", { className: "h4", children: heading }, void 0, false, {
203
- fileName: "/home/runner/work/contember/contember/packages/react-devbar/src/ui/DevBar/DevBar.tsx",
204
- lineNumber: 175,
205
- columnNumber: 7
206
- }, void 0),
207
- /* @__PURE__ */ jsxDEV("div", { className: className("panel-body"), children }, void 0, false, {
208
- fileName: "/home/runner/work/contember/contember/packages/react-devbar/src/ui/DevBar/DevBar.tsx",
209
- lineNumber: 178,
210
- columnNumber: 7
211
- }, void 0)
212
- ] }, void 0, true, {
213
- fileName: "/home/runner/work/contember/contember/packages/react-devbar/src/ui/DevBar/DevBar.tsx",
214
- lineNumber: 174,
215
- columnNumber: 6
216
- }, void 0) }, void 0, false, {
217
- fileName: "/home/runner/work/contember/contember/packages/react-devbar/src/ui/DevBar/DevBar.tsx",
218
- lineNumber: 173,
219
- columnNumber: 5
220
- }, void 0)
221
- ]
222
- },
223
- void 0,
224
- true,
225
- {
161
+ )
162
+ ] }, void 0, true, {
163
+ fileName: "/home/runner/work/contember/contember/packages/react-devbar/src/ui/DevBar/DevBar.tsx",
164
+ lineNumber: 144,
165
+ columnNumber: 6
166
+ }, void 0),
167
+ /* @__PURE__ */ jsxDEV("div", { className: className("panel-body"), children }, void 0, false, {
168
+ fileName: "/home/runner/work/contember/contember/packages/react-devbar/src/ui/DevBar/DevBar.tsx",
169
+ lineNumber: 154,
170
+ columnNumber: 6
171
+ }, void 0)
172
+ ] }, void 0, true, {
226
173
  fileName: "/home/runner/work/contember/contember/packages/react-devbar/src/ui/DevBar/DevBar.tsx",
227
- lineNumber: 139,
228
- columnNumber: 3
229
- },
230
- void 0
231
- );
174
+ lineNumber: 143,
175
+ columnNumber: 5
176
+ }, void 0) }, void 0, false, {
177
+ fileName: "/home/runner/work/contember/contember/packages/react-devbar/src/ui/DevBar/DevBar.tsx",
178
+ lineNumber: 142,
179
+ columnNumber: 4
180
+ }, void 0)
181
+ ] }, void 0, true, {
182
+ fileName: "/home/runner/work/contember/contember/packages/react-devbar/src/ui/DevBar/DevBar.tsx",
183
+ lineNumber: 127,
184
+ columnNumber: 3
185
+ }, void 0);
232
186
  };
233
187
  export {
234
188
  DevBar,
@@ -1 +1 @@
1
- {"version":3,"file":"DevBar.js","sources":["../../../../../../packages/react-devbar/src/ui/DevBar/DevBar.tsx"],"sourcesContent":["import {\n\tuseId,\n\tuseOnElementClickOutsideCallback,\n\tuseOnElementMouseEnterDelayedCallback,\n\tuseReferentiallyStableCallback,\n\tuseWindowSize,\n} from '@contember/react-utils'\nimport { dataAttribute } from '@contember/utilities'\nimport { PropsWithChildren, ReactNode, useEffect, useRef, useState } from 'react'\n\nconst className = (cls: string | null) => cls ? `cui-devBar-${cls}` : 'cui-devBar'\n\nexport const DevBar = ({\n\tbreakpoint = 768,\n\tchildren,\n\tbrand,\n}: PropsWithChildren<{\n\tbrand?: ReactNode\n\tbreakpoint?: number\n}>) => {\n\tconst [expanded, setExpanded] = useState(true)\n\tconst isSmallScreen = useWindowSize().width < breakpoint\n\tconst toggleButtonRef = useRef<HTMLButtonElement>(null)\n\n\tconst handleToggle = useReferentiallyStableCallback(() => {\n\t\tsetExpanded(expanded => !expanded)\n\t})\n\n\tuseEffect(() => {\n\t\tfunction handleKeyDown(event: KeyboardEvent) {\n\t\t\tif (event.code === 'KeyJ' && (event.ctrlKey || event.metaKey)) {\n\t\t\t\tevent.preventDefault()\n\t\t\t\tevent.stopPropagation()\n\n\t\t\t\tif (expanded) {\n\t\t\t\t\tsetExpanded(false)\n\t\t\t\t\ttoggleButtonRef.current?.blur()\n\t\t\t\t} else {\n\t\t\t\t\tif (toggleButtonRef.current !== document.activeElement) {\n\t\t\t\t\t\ttoggleButtonRef.current?.focus()\n\t\t\t\t\t} else {\n\t\t\t\t\t\ttoggleButtonRef.current?.blur()\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\n\t\tdocument.addEventListener('keydown', handleKeyDown)\n\t\treturn () => document.removeEventListener('keydown', handleKeyDown)\n\t}, [expanded, handleToggle])\n\n\tconst devBarContentRef = useRef<HTMLDivElement>(null)\n\n\tuseOnElementClickOutsideCallback(devBarContentRef, () => {\n\t\tif (expanded) {\n\t\t\tsetExpanded(false)\n\t\t\ttoggleButtonRef.current?.blur()\n\t\t}\n\t})\n\n\tconst id = `dev-bar-panel${useId()}`\n\n\treturn (\n\t\t<section\n\t\t\tdata-transparent\n\t\t\tdata-overrides-lucide-icons\n\t\t\tdata-expanded={dataAttribute(expanded)}\n\t\t\tdata-small-screen={dataAttribute(isSmallScreen)}\n\t\t\tclassName={className(null)}\n\t\t\tonKeyDown={event => {\n\t\t\t\tif (event.code === 'Escape') {\n\t\t\t\t\tevent.preventDefault()\n\t\t\t\t\tevent.stopPropagation()\n\n\t\t\t\t\tif (expanded) {\n\t\t\t\t\t\tsetExpanded(false)\n\t\t\t\t\t} else if (document.activeElement && document.activeElement instanceof HTMLElement) {\n\t\t\t\t\t\tdocument.activeElement.blur()\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}}\n\t\t>\n\t\t\t<style>{`svg { pointer-events: none }`}</style>\n\t\t\t<div ref={devBarContentRef} className={className('content')}>\n\t\t\t\t<div\n\t\t\t\t\tdata-expanded={dataAttribute(expanded)}\n\t\t\t\t\tid={id}\n\t\t\t\t\trole=\"dialog\"\n\t\t\t\t\tstyle={{ display: 'contents' }}\n\t\t\t\t>\n\t\t\t\t\t<div className={className('brand')}>\n\t\t\t\t\t\t{brand}\n\n\t\t\t\t\t</div>\n\n\t\t\t\t\t<div className={className('panels')}>\n\t\t\t\t\t\t{children}\n\t\t\t\t\t</div>\n\n\t\t\t\t</div>\n\n\t\t\t\t<button\n\t\t\t\t\tref={toggleButtonRef}\n\t\t\t\t\tid=\"dev-bar-toggle-button\"\n\t\t\t\t\taria-label=\"Toggle Contember Developer Toolbar\"\n\t\t\t\t\taria-controls={id}\n\t\t\t\t\taria-expanded={expanded}\n\t\t\t\t\tclassName={className('close')}\n\t\t\t\t\tonClick={handleToggle}\n\t\t\t\t\ttabIndex={0}\n\t\t\t\t>\n\t\t\t\t\t{expanded ? '🗙' : 'ᐸ'}\n\t\t\t\t</button>\n\t\t\t</div>\n\t\t</section>\n\t)\n}\n\nexport const DevPanel = ({ heading, icon, children, preview }: {\n\ticon: ReactNode\n\theading: ReactNode\n\tchildren: ReactNode\n\tpreview?: ReactNode\n}) => {\n\tconst id = `cui-devBar-panel-${useId()}`\n\tconst [expanded, setExpanded] = useState(false)\n\tconst mouseEnterTimeStampRef = useRef<ReturnType<typeof Date.now> | undefined>(undefined)\n\n\tconst devPanelRef = useRef<HTMLDivElement>(null)\n\n\tuseOnElementMouseEnterDelayedCallback(devPanelRef, useReferentiallyStableCallback(({ type }) => {\n\t\tif (type === 'mouseenter') {\n\t\t\tmouseEnterTimeStampRef.current = Date.now() + 300\n\t\t\tsetExpanded(true)\n\t\t}\n\t}))\n\n\treturn (\n\t\t<div\n\t\t\tref={devPanelRef}\n\t\t\tdata-expanded={dataAttribute(expanded)}\n\t\t\tclassName={className('trigger')}\n\t\t\tonMouseLeave={useReferentiallyStableCallback(() => {\n\t\t\t\tsetExpanded(false)\n\t\t\t})}\n\t\t\tonKeyDown={useReferentiallyStableCallback(event => {\n\t\t\t\tif (expanded && event.code === 'Escape') {\n\t\t\t\t\tevent.preventDefault()\n\t\t\t\t\tevent.stopPropagation()\n\t\t\t\t\tsetExpanded(false)\n\t\t\t\t}\n\t\t\t})}\n\t\t>\n\t\t\t<button\n\t\t\t\ttabIndex={0}\n\t\t\t\taria-haspopup=\"dialog\"\n\t\t\t\taria-controls={id}\n\t\t\t\taria-expanded={expanded}\n\t\t\t\tclassName={className('trigger-label')}\n\t\t\t\tonClick={useReferentiallyStableCallback(() => {\n\t\t\t\t\tif (mouseEnterTimeStampRef.current && Date.now() < mouseEnterTimeStampRef.current) {\n\t\t\t\t\t\treturn\n\t\t\t\t\t} else {\n\t\t\t\t\t\tsetExpanded(expanded => !expanded)\n\t\t\t\t\t\tmouseEnterTimeStampRef.current = undefined\n\t\t\t\t\t}\n\t\t\t\t})}\n\t\t\t>\n\t\t\t\t{icon}\n\t\t\t\t<span className={className('trigger-label-text')}>{preview ?? heading}</span>\n\t\t\t</button>\n\t\t\t{expanded && (\n\t\t\t\t<div tabIndex={0} id={id} role=\"dialog\" className={className('panel')}>\n\t\t\t\t\t<div className={className('panel-content')}>\n\t\t\t\t\t\t<h2 className=\"h4\">\n\t\t\t\t\t\t\t{heading}\n\t\t\t\t\t\t</h2>\n\t\t\t\t\t\t<div className={className('panel-body')}>\n\t\t\t\t\t\t\t{children}\n\t\t\t\t\t\t</div>\n\t\t\t\t\t</div>\n\t\t\t\t</div>\n\t\t\t)}\n\t\t</div>\n\t)\n}\n"],"names":["expanded","this"],"mappings":"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"}
1
+ {"version":3,"file":"DevBar.js","sources":["../../../../../../packages/react-devbar/src/ui/DevBar/DevBar.tsx"],"sourcesContent":["import {\n\tuseId,\n\tuseOnElementClickOutsideCallback,\n\tuseReferentiallyStableCallback,\n\tuseWindowSize,\n} from '@contember/react-utils'\nimport { dataAttribute } from '@contember/utilities'\nimport { PropsWithChildren, ReactNode, useCallback, useEffect, useRef, useState } from 'react'\n\nconst className = (cls: string | null) => cls ? `cui-devBar-${cls}` : 'cui-devBar'\n\nexport const DevBar = ({\n\tbreakpoint = 768,\n\tchildren,\n}: PropsWithChildren<{\n\tbreakpoint?: number\n}>) => {\n\tconst [expanded, setExpanded] = useState(false)\n\tconst isSmallScreen = useWindowSize().width < breakpoint\n\n\tconst handleToggle = useReferentiallyStableCallback(() => {\n\t\tsetExpanded(expanded => !expanded)\n\t})\n\n\tuseEffect(() => {\n\t\tfunction handleKeyDown(event: KeyboardEvent) {\n\t\t\tif (event.code === 'KeyJ' && (event.ctrlKey || event.metaKey)) {\n\t\t\t\tevent.preventDefault()\n\t\t\t\tevent.stopPropagation()\n\n\t\t\t\thandleToggle()\n\t\t\t}\n\t\t}\n\n\t\tdocument.addEventListener('keydown', handleKeyDown)\n\t\treturn () => document.removeEventListener('keydown', handleKeyDown)\n\t}, [expanded, handleToggle])\n\n\tconst devBarContentRef = useRef<HTMLDivElement>(null)\n\n\tuseOnElementClickOutsideCallback(devBarContentRef, () => {\n\t\tif (expanded) {\n\t\t\tsetExpanded(false)\n\t\t}\n\t})\n\n\tconst id = `dev-bar-panel${useId()}`\n\n\treturn (\n\t\t<section\n\t\t\tdata-transparent=\"true\"\n\t\t\tdata-overrides-lucide-icons=\"true\"\n\t\t\tdata-expanded={dataAttribute(expanded)}\n\t\t\tdata-small-screen={dataAttribute(isSmallScreen)}\n\t\t\tclassName={className(null)}\n\t\t>\n\t\t\t<div ref={devBarContentRef} className={className('content')}>\n\t\t\t\t<div\n\t\t\t\t\tdata-expanded={true}\n\t\t\t\t\tid={id}\n\t\t\t\t\trole=\"dialog\"\n\t\t\t\t\tstyle={{ display: 'contents' }}\n\t\t\t\t>\n\t\t\t\t\t<div className={className('panels')}>\n\t\t\t\t\t\t{children}\n\t\t\t\t\t</div>\n\t\t\t\t</div>\n\t\t\t</div>\n\t\t</section>\n\t)\n}\n\ninterface DevPanelProps {\n\ticon: ReactNode\n\theading: ReactNode\n\tchildren: ReactNode\n\tpreview?: ReactNode\n}\n\nexport const DevPanel = ({ heading, icon, children, preview }: DevPanelProps) => {\n\tconst id = `cui-devBar-panel-${useId()}`\n\tconst dialogRef = useRef<HTMLDialogElement>(null)\n\tconst triggerRef = useRef<HTMLButtonElement>(null)\n\n\tconst handleOpen = useCallback(() => {\n\t\tdialogRef.current?.showModal()\n\t}, [])\n\n\tconst handleClose = useCallback(() => {\n\t\tdialogRef.current?.close()\n\t}, [])\n\n\tuseEffect(() => {\n\t\tconst dialog = dialogRef.current\n\t\tif (!dialog) return\n\n\t\tconst handleClickOutside = (event: MouseEvent) => {\n\t\t\tconst rect = dialog.getBoundingClientRect()\n\t\t\tconst isInDialog = (\n\t\t\t\trect.top <= event.clientY &&\n\t\t\t\tevent.clientY <= rect.top + rect.height &&\n\t\t\t\trect.left <= event.clientX &&\n\t\t\t\tevent.clientX <= rect.left + rect.width\n\t\t\t)\n\n\t\t\tif (!isInDialog) {\n\t\t\t\tdialog.close()\n\t\t\t}\n\t\t}\n\n\t\tdialog.addEventListener('click', handleClickOutside)\n\t\treturn () => dialog.removeEventListener('click', handleClickOutside)\n\t}, [])\n\n\tuseEffect(() => {\n\t\tconst handleEscape = (event: KeyboardEvent) => {\n\t\t\tif (event.key === 'Escape') {\n\t\t\t\thandleClose()\n\t\t\t}\n\t\t}\n\n\t\tdocument.addEventListener('keydown', handleEscape)\n\t\treturn () => document.removeEventListener('keydown', handleEscape)\n\t}, [handleClose])\n\n\treturn (\n\t\t<div className={className('trigger')}>\n\t\t\t<button\n\t\t\t\tref={triggerRef}\n\t\t\t\ttabIndex={0}\n\t\t\t\taria-haspopup=\"dialog\"\n\t\t\t\taria-controls={id}\n\t\t\t\tclassName={className('trigger-label')}\n\t\t\t\tonClick={handleOpen}\n\t\t\t>\n\t\t\t\t{icon}\n\t\t\t\t<span className={className('trigger-label-text')}>\n\t\t\t\t\t{preview ?? heading}\n\t\t\t\t</span>\n\t\t\t</button>\n\n\t\t\t<dialog ref={dialogRef} id={id} className={className('panel')}>\n\t\t\t\t<div className={className('panel-content')}>\n\t\t\t\t\t<div className={className('panel-header')}>\n\t\t\t\t\t\t<h2 className=\"h4\">{heading}</h2>\n\t\t\t\t\t\t<button\n\t\t\t\t\t\t\tonClick={handleClose}\n\t\t\t\t\t\t\tclassName={className('close-button')}\n\t\t\t\t\t\t\taria-label=\"Close\"\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t✕\n\t\t\t\t\t\t</button>\n\t\t\t\t\t</div>\n\t\t\t\t\t<div className={className('panel-body')}>\n\t\t\t\t\t\t{children}\n\t\t\t\t\t</div>\n\t\t\t\t</div>\n\t\t\t</dialog>\n\t\t</div>\n\t)\n}\n"],"names":["expanded","this"],"mappings":"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"}
@@ -7,25 +7,25 @@ function DevError(props) {
7
7
  return /* @__PURE__ */ jsxDevRuntime.jsxDEV("div", { className: className(), children: /* @__PURE__ */ jsxDevRuntime.jsxDEV("div", { className: className("in"), children: [
8
8
  /* @__PURE__ */ jsxDevRuntime.jsxDEV("div", { className: className("bar"), children: /* @__PURE__ */ jsxDevRuntime.jsxDEV("div", { className: className("errorSource"), children: props.source }, void 0, false, {
9
9
  fileName: "/home/runner/work/contember/contember/packages/react-devbar/src/ui/DevError/DevError.tsx",
10
- lineNumber: 15,
10
+ lineNumber: 14,
11
11
  columnNumber: 6
12
12
  }, this) }, void 0, false, {
13
13
  fileName: "/home/runner/work/contember/contember/packages/react-devbar/src/ui/DevError/DevError.tsx",
14
- lineNumber: 14,
14
+ lineNumber: 13,
15
15
  columnNumber: 5
16
16
  }, this),
17
17
  /* @__PURE__ */ jsxDevRuntime.jsxDEV(DevErrorInner.DevErrorInner, { error: props.error }, void 0, false, {
18
18
  fileName: "/home/runner/work/contember/contember/packages/react-devbar/src/ui/DevError/DevError.tsx",
19
- lineNumber: 17,
19
+ lineNumber: 16,
20
20
  columnNumber: 5
21
21
  }, this)
22
22
  ] }, void 0, true, {
23
23
  fileName: "/home/runner/work/contember/contember/packages/react-devbar/src/ui/DevError/DevError.tsx",
24
- lineNumber: 13,
24
+ lineNumber: 12,
25
25
  columnNumber: 4
26
26
  }, this) }, void 0, false, {
27
27
  fileName: "/home/runner/work/contember/contember/packages/react-devbar/src/ui/DevError/DevError.tsx",
28
- lineNumber: 12,
28
+ lineNumber: 11,
29
29
  columnNumber: 3
30
30
  }, this);
31
31
  }
@@ -1 +1 @@
1
- {"version":3,"file":"DevError.cjs","sources":["../../../../../../packages/react-devbar/src/ui/DevError/DevError.tsx"],"sourcesContent":["import { DevErrorInner, DevErrorInnerProps } from './DevErrorInner'\n\nexport interface DevErrorProps extends DevErrorInnerProps {\n\tsource: string\n}\n\nconst className = (cls?: string | null) => cls ? `cui-devError-${cls}` : 'cui-devError'\n\nexport function DevError(props: DevErrorProps) {\n\n\treturn (\n\t\t<div className={className()}>\n\t\t\t<div className={className('in')}>\n\t\t\t\t<div className={className('bar')}>\n\t\t\t\t\t<div className={className('errorSource')}>{props.source}</div>\n\t\t\t\t</div>\n\t\t\t\t<DevErrorInner error={props.error} />\n\t\t\t</div>\n\t\t</div>\n\t)\n}\n"],"names":["jsxDEV","DevErrorInner"],"mappings":";;;;AAMA,MAAM,YAAY,CAAC,QAAwB,MAAM,gBAAgB,GAAG,KAAK;AAElE,SAAS,SAAS,OAAsB;AAG7C,SAAAA,8BAAA,OAAC,OAAI,EAAA,WAAW,UAAU,GACzB,+CAAC,OAAI,EAAA,WAAW,UAAU,IAAI,GAC7B,UAAA;AAAA,IAAAA,qCAAC,OAAI,EAAA,WAAW,UAAU,KAAK,GAC9B,UAAAA,8BAAAA,OAAC,OAAI,EAAA,WAAW,UAAU,aAAa,GAAI,UAAA,MAAM,OAAjD,GAAA,QAAA,OAAA;AAAA,MAAA,UAAA;AAAA,MAAA,YAAA;AAAA,MAAA,cAAA;AAAA,IAAA,GAAA,IAAwD,EADzD,GAAA,QAAA,OAAA;AAAA,MAAA,UAAA;AAAA,MAAA,YAAA;AAAA,MAAA,cAAA;AAAA,IAEA,GAAA,IAAA;AAAA,IACCA,qCAAAC,cAAAA,eAAA,EAAc,OAAO,MAAM,SAA5B,QAAA,OAAA;AAAA,MAAA,UAAA;AAAA,MAAA,YAAA;AAAA,MAAA,cAAA;AAAA,IAAmC,GAAA,IAAA;AAAA,EAAA,KAJpC,QAAA,MAAA;AAAA,IAAA,UAAA;AAAA,IAAA,YAAA;AAAA,IAAA,cAAA;AAAA,EAAA,GAAA,IAKA,EAND,GAAA,QAAA,OAAA;AAAA,IAAA,UAAA;AAAA,IAAA,YAAA;AAAA,IAAA,cAAA;AAAA,EAOA,GAAA,IAAA;AAEF;;"}
1
+ {"version":3,"file":"DevError.cjs","sources":["../../../../../../packages/react-devbar/src/ui/DevError/DevError.tsx"],"sourcesContent":["import { DevErrorInner, DevErrorInnerProps } from './DevErrorInner'\n\nexport interface DevErrorProps extends DevErrorInnerProps {\n\tsource: string\n}\n\nconst className = (cls?: string | null) => cls ? `cui-devError-${cls}` : 'cui-devError'\n\nexport function DevError(props: DevErrorProps) {\n\treturn (\n\t\t<div className={className()}>\n\t\t\t<div className={className('in')}>\n\t\t\t\t<div className={className('bar')}>\n\t\t\t\t\t<div className={className('errorSource')}>{props.source}</div>\n\t\t\t\t</div>\n\t\t\t\t<DevErrorInner error={props.error} />\n\t\t\t</div>\n\t\t</div>\n\t)\n}\n"],"names":["jsxDEV","DevErrorInner"],"mappings":";;;;AAMA,MAAM,YAAY,CAAC,QAAwB,MAAM,gBAAgB,GAAG,KAAK;AAElE,SAAS,SAAS,OAAsB;AAE7C,SAAAA,8BAAA,OAAC,OAAI,EAAA,WAAW,UAAU,GACzB,+CAAC,OAAI,EAAA,WAAW,UAAU,IAAI,GAC7B,UAAA;AAAA,IAAAA,qCAAC,OAAI,EAAA,WAAW,UAAU,KAAK,GAC9B,UAAAA,8BAAAA,OAAC,OAAI,EAAA,WAAW,UAAU,aAAa,GAAI,UAAA,MAAM,OAAjD,GAAA,QAAA,OAAA;AAAA,MAAA,UAAA;AAAA,MAAA,YAAA;AAAA,MAAA,cAAA;AAAA,IAAA,GAAA,IAAwD,EADzD,GAAA,QAAA,OAAA;AAAA,MAAA,UAAA;AAAA,MAAA,YAAA;AAAA,MAAA,cAAA;AAAA,IAEA,GAAA,IAAA;AAAA,IACCA,qCAAAC,cAAAA,eAAA,EAAc,OAAO,MAAM,SAA5B,QAAA,OAAA;AAAA,MAAA,UAAA;AAAA,MAAA,YAAA;AAAA,MAAA,cAAA;AAAA,IAAA,GAAmC,IAAA;AAAA,EAAA,KAJpC,QAAA,MAAA;AAAA,IAAA,UAAA;AAAA,IAAA,YAAA;AAAA,IAAA,cAAA;AAAA,EAAA,GAAA,IAKA,EAND,GAAA,QAAA,OAAA;AAAA,IAAA,UAAA;AAAA,IAAA,YAAA;AAAA,IAAA,cAAA;AAAA,EAOA,GAAA,IAAA;AAEF;;"}
@@ -5,25 +5,25 @@ function DevError(props) {
5
5
  return /* @__PURE__ */ jsxDEV("div", { className: className(), children: /* @__PURE__ */ jsxDEV("div", { className: className("in"), children: [
6
6
  /* @__PURE__ */ jsxDEV("div", { className: className("bar"), children: /* @__PURE__ */ jsxDEV("div", { className: className("errorSource"), children: props.source }, void 0, false, {
7
7
  fileName: "/home/runner/work/contember/contember/packages/react-devbar/src/ui/DevError/DevError.tsx",
8
- lineNumber: 15,
8
+ lineNumber: 14,
9
9
  columnNumber: 6
10
10
  }, this) }, void 0, false, {
11
11
  fileName: "/home/runner/work/contember/contember/packages/react-devbar/src/ui/DevError/DevError.tsx",
12
- lineNumber: 14,
12
+ lineNumber: 13,
13
13
  columnNumber: 5
14
14
  }, this),
15
15
  /* @__PURE__ */ jsxDEV(DevErrorInner, { error: props.error }, void 0, false, {
16
16
  fileName: "/home/runner/work/contember/contember/packages/react-devbar/src/ui/DevError/DevError.tsx",
17
- lineNumber: 17,
17
+ lineNumber: 16,
18
18
  columnNumber: 5
19
19
  }, this)
20
20
  ] }, void 0, true, {
21
21
  fileName: "/home/runner/work/contember/contember/packages/react-devbar/src/ui/DevError/DevError.tsx",
22
- lineNumber: 13,
22
+ lineNumber: 12,
23
23
  columnNumber: 4
24
24
  }, this) }, void 0, false, {
25
25
  fileName: "/home/runner/work/contember/contember/packages/react-devbar/src/ui/DevError/DevError.tsx",
26
- lineNumber: 12,
26
+ lineNumber: 11,
27
27
  columnNumber: 3
28
28
  }, this);
29
29
  }
@@ -1 +1 @@
1
- {"version":3,"file":"DevError.js","sources":["../../../../../../packages/react-devbar/src/ui/DevError/DevError.tsx"],"sourcesContent":["import { DevErrorInner, DevErrorInnerProps } from './DevErrorInner'\n\nexport interface DevErrorProps extends DevErrorInnerProps {\n\tsource: string\n}\n\nconst className = (cls?: string | null) => cls ? `cui-devError-${cls}` : 'cui-devError'\n\nexport function DevError(props: DevErrorProps) {\n\n\treturn (\n\t\t<div className={className()}>\n\t\t\t<div className={className('in')}>\n\t\t\t\t<div className={className('bar')}>\n\t\t\t\t\t<div className={className('errorSource')}>{props.source}</div>\n\t\t\t\t</div>\n\t\t\t\t<DevErrorInner error={props.error} />\n\t\t\t</div>\n\t\t</div>\n\t)\n}\n"],"names":[],"mappings":";;AAMA,MAAM,YAAY,CAAC,QAAwB,MAAM,gBAAgB,GAAG,KAAK;AAElE,SAAS,SAAS,OAAsB;AAG7C,SAAA,uBAAC,OAAI,EAAA,WAAW,UAAU,GACzB,iCAAC,OAAI,EAAA,WAAW,UAAU,IAAI,GAC7B,UAAA;AAAA,IAAA,uBAAC,OAAI,EAAA,WAAW,UAAU,KAAK,GAC9B,UAAA,uBAAC,OAAI,EAAA,WAAW,UAAU,aAAa,GAAI,UAAA,MAAM,OAAjD,GAAA,QAAA,OAAA;AAAA,MAAA,UAAA;AAAA,MAAA,YAAA;AAAA,MAAA,cAAA;AAAA,IAAA,GAAA,IAAwD,EADzD,GAAA,QAAA,OAAA;AAAA,MAAA,UAAA;AAAA,MAAA,YAAA;AAAA,MAAA,cAAA;AAAA,IAEA,GAAA,IAAA;AAAA,IACC,uBAAA,eAAA,EAAc,OAAO,MAAM,SAA5B,QAAA,OAAA;AAAA,MAAA,UAAA;AAAA,MAAA,YAAA;AAAA,MAAA,cAAA;AAAA,IAAmC,GAAA,IAAA;AAAA,EAAA,KAJpC,QAAA,MAAA;AAAA,IAAA,UAAA;AAAA,IAAA,YAAA;AAAA,IAAA,cAAA;AAAA,EAAA,GAAA,IAKA,EAND,GAAA,QAAA,OAAA;AAAA,IAAA,UAAA;AAAA,IAAA,YAAA;AAAA,IAAA,cAAA;AAAA,EAOA,GAAA,IAAA;AAEF;"}
1
+ {"version":3,"file":"DevError.js","sources":["../../../../../../packages/react-devbar/src/ui/DevError/DevError.tsx"],"sourcesContent":["import { DevErrorInner, DevErrorInnerProps } from './DevErrorInner'\n\nexport interface DevErrorProps extends DevErrorInnerProps {\n\tsource: string\n}\n\nconst className = (cls?: string | null) => cls ? `cui-devError-${cls}` : 'cui-devError'\n\nexport function DevError(props: DevErrorProps) {\n\treturn (\n\t\t<div className={className()}>\n\t\t\t<div className={className('in')}>\n\t\t\t\t<div className={className('bar')}>\n\t\t\t\t\t<div className={className('errorSource')}>{props.source}</div>\n\t\t\t\t</div>\n\t\t\t\t<DevErrorInner error={props.error} />\n\t\t\t</div>\n\t\t</div>\n\t)\n}\n"],"names":[],"mappings":";;AAMA,MAAM,YAAY,CAAC,QAAwB,MAAM,gBAAgB,GAAG,KAAK;AAElE,SAAS,SAAS,OAAsB;AAE7C,SAAA,uBAAC,OAAI,EAAA,WAAW,UAAU,GACzB,iCAAC,OAAI,EAAA,WAAW,UAAU,IAAI,GAC7B,UAAA;AAAA,IAAA,uBAAC,OAAI,EAAA,WAAW,UAAU,KAAK,GAC9B,UAAA,uBAAC,OAAI,EAAA,WAAW,UAAU,aAAa,GAAI,UAAA,MAAM,OAAjD,GAAA,QAAA,OAAA;AAAA,MAAA,UAAA;AAAA,MAAA,YAAA;AAAA,MAAA,cAAA;AAAA,IAAA,GAAA,IAAwD,EADzD,GAAA,QAAA,OAAA;AAAA,MAAA,UAAA;AAAA,MAAA,YAAA;AAAA,MAAA,cAAA;AAAA,IAEA,GAAA,IAAA;AAAA,IACC,uBAAA,eAAA,EAAc,OAAO,MAAM,SAA5B,QAAA,OAAA;AAAA,MAAA,UAAA;AAAA,MAAA,YAAA;AAAA,MAAA,cAAA;AAAA,IAAA,GAAmC,IAAA;AAAA,EAAA,KAJpC,QAAA,MAAA;AAAA,IAAA,UAAA;AAAA,IAAA,YAAA;AAAA,IAAA,cAAA;AAAA,EAAA,GAAA,IAKA,EAND,GAAA,QAAA,OAAA;AAAA,IAAA,UAAA;AAAA,IAAA,YAAA;AAAA,IAAA,cAAA;AAAA,EAOA,GAAA,IAAA;AAEF;"}
@@ -22,7 +22,7 @@ function DevErrorInner({ error, level = 1 }) {
22
22
  lineNumber: 23,
23
23
  columnNumber: 31
24
24
  }, this),
25
- "details" in errorObject && /* @__PURE__ */ jsxDevRuntime.jsxDEV("h3", { className: className("errorDetails"), children: errorObject.details }, void 0, false, {
25
+ "details" in errorObject && /* @__PURE__ */ jsxDevRuntime.jsxDEV("div", { className: className("errorDetails"), children: errorObject.details }, void 0, false, {
26
26
  fileName: "/home/runner/work/contember/contember/packages/react-devbar/src/ui/DevError/DevErrorInner.tsx",
27
27
  lineNumber: 24,
28
28
  columnNumber: 36
@@ -1 +1 @@
1
- {"version":3,"file":"DevErrorInner.cjs","sources":["../../../../../../packages/react-devbar/src/ui/DevError/DevErrorInner.tsx"],"sourcesContent":["import { StackTrace } from './StackTrace'\nimport type { ProcessedError } from './types'\n\nexport interface DevErrorInnerProps {\n\terror: ProcessedError\n\tlevel?: number\n}\n\n\nconst className = (cls?: string | null) => cls ? `cui-devError-${cls}` : 'cui-devError'\n\nexport function DevErrorInner({ error, level = 1 }: DevErrorInnerProps) {\n\n\tlet errorObject: Error | undefined = error.error instanceof Error ? error.error : undefined\n\n\treturn (\n\t\t<>\n\t\t\t<div className={className('header')}>\n\t\t\t\t{errorObject ? (\n\t\t\t\t\t<>\n\t\t\t\t\t\t<h1 className={className('errorName')}>{errorObject.name}</h1>\n\t\t\t\t\t\t{error.cause && <a href={`#error-${level}`} className={className('causeLink')}>caused by &gt;</a>}\n\t\t\t\t\t\t{errorObject.message && <h2 className={className('errorMessage')}>{errorObject.message}</h2>}\n\t\t\t\t\t\t{'details' in errorObject && <h3 className={className('errorDetails')}>{(errorObject as any).details}</h3>}\n\t\t\t\t\t</>\n\t\t\t\t) : (\n\t\t\t\t\t<h1 className={className('errorName')}>Unknown error</h1>\n\t\t\t\t)}\n\t\t\t</div>\n\t\t\t{error.parsedStackStrace ? (\n\t\t\t\t<StackTrace stackTrace={error.parsedStackStrace} />\n\t\t\t) : errorObject?.stack ? (\n\t\t\t\t<div className={className('stack')}>\n\t\t\t\t\t<div className={className('stack-dump')}>{errorObject.stack}</div>\n\t\t\t\t</div>\n\t\t\t) : null}\n\t\t\t{error.cause ? (\n\t\t\t\t<>\n\t\t\t\t\t<div className={className('causedBy')} id={`error-${level}`}>\n\t\t\t\t\t\tCaused by\n\t\t\t\t\t</div>\n\t\t\t\t\t<DevErrorInner error={error.cause} level={level + 1} />\n\t\t\t\t</>\n\t\t\t) : null}\n\t\t</>\n\t)\n}\n"],"names":["jsxDEV","Fragment","StackTrace"],"mappings":"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"}
1
+ {"version":3,"file":"DevErrorInner.cjs","sources":["../../../../../../packages/react-devbar/src/ui/DevError/DevErrorInner.tsx"],"sourcesContent":["import { StackTrace } from './StackTrace'\nimport type { ProcessedError } from './types'\n\nexport interface DevErrorInnerProps {\n\terror: ProcessedError\n\tlevel?: number\n}\n\n\nconst className = (cls?: string | null) => cls ? `cui-devError-${cls}` : 'cui-devError'\n\nexport function DevErrorInner({ error, level = 1 }: DevErrorInnerProps) {\n\n\tlet errorObject: Error | undefined = error.error instanceof Error ? error.error : undefined\n\n\treturn (\n\t\t<>\n\t\t\t<div className={className('header')}>\n\t\t\t\t{errorObject ? (\n\t\t\t\t\t<>\n\t\t\t\t\t\t<h1 className={className('errorName')}>{errorObject.name}</h1>\n\t\t\t\t\t\t{error.cause && <a href={`#error-${level}`} className={className('causeLink')}>caused by &gt;</a>}\n\t\t\t\t\t\t{errorObject.message && <h2 className={className('errorMessage')}>{errorObject.message}</h2>}\n\t\t\t\t\t\t{'details' in errorObject && <div className={className('errorDetails')}>{(errorObject as any).details}</div>}\n\t\t\t\t\t</>\n\t\t\t\t) : (\n\t\t\t\t\t<h1 className={className('errorName')}>Unknown error</h1>\n\t\t\t\t)}\n\t\t\t</div>\n\t\t\t{error.parsedStackStrace ? (\n\t\t\t\t<StackTrace stackTrace={error.parsedStackStrace} />\n\t\t\t) : errorObject?.stack ? (\n\t\t\t\t<div className={className('stack')}>\n\t\t\t\t\t<div className={className('stack-dump')}>{errorObject.stack}</div>\n\t\t\t\t</div>\n\t\t\t) : null}\n\t\t\t{error.cause ? (\n\t\t\t\t<>\n\t\t\t\t\t<div className={className('causedBy')} id={`error-${level}`}>\n\t\t\t\t\t\tCaused by\n\t\t\t\t\t</div>\n\t\t\t\t\t<DevErrorInner error={error.cause} level={level + 1} />\n\t\t\t\t</>\n\t\t\t) : null}\n\t\t</>\n\t)\n}\n"],"names":["jsxDEV","Fragment","StackTrace"],"mappings":"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"}
@@ -20,7 +20,7 @@ function DevErrorInner({ error, level = 1 }) {
20
20
  lineNumber: 23,
21
21
  columnNumber: 31
22
22
  }, this),
23
- "details" in errorObject && /* @__PURE__ */ jsxDEV("h3", { className: className("errorDetails"), children: errorObject.details }, void 0, false, {
23
+ "details" in errorObject && /* @__PURE__ */ jsxDEV("div", { className: className("errorDetails"), children: errorObject.details }, void 0, false, {
24
24
  fileName: "/home/runner/work/contember/contember/packages/react-devbar/src/ui/DevError/DevErrorInner.tsx",
25
25
  lineNumber: 24,
26
26
  columnNumber: 36
@@ -1 +1 @@
1
- {"version":3,"file":"DevErrorInner.js","sources":["../../../../../../packages/react-devbar/src/ui/DevError/DevErrorInner.tsx"],"sourcesContent":["import { StackTrace } from './StackTrace'\nimport type { ProcessedError } from './types'\n\nexport interface DevErrorInnerProps {\n\terror: ProcessedError\n\tlevel?: number\n}\n\n\nconst className = (cls?: string | null) => cls ? `cui-devError-${cls}` : 'cui-devError'\n\nexport function DevErrorInner({ error, level = 1 }: DevErrorInnerProps) {\n\n\tlet errorObject: Error | undefined = error.error instanceof Error ? error.error : undefined\n\n\treturn (\n\t\t<>\n\t\t\t<div className={className('header')}>\n\t\t\t\t{errorObject ? (\n\t\t\t\t\t<>\n\t\t\t\t\t\t<h1 className={className('errorName')}>{errorObject.name}</h1>\n\t\t\t\t\t\t{error.cause && <a href={`#error-${level}`} className={className('causeLink')}>caused by &gt;</a>}\n\t\t\t\t\t\t{errorObject.message && <h2 className={className('errorMessage')}>{errorObject.message}</h2>}\n\t\t\t\t\t\t{'details' in errorObject && <h3 className={className('errorDetails')}>{(errorObject as any).details}</h3>}\n\t\t\t\t\t</>\n\t\t\t\t) : (\n\t\t\t\t\t<h1 className={className('errorName')}>Unknown error</h1>\n\t\t\t\t)}\n\t\t\t</div>\n\t\t\t{error.parsedStackStrace ? (\n\t\t\t\t<StackTrace stackTrace={error.parsedStackStrace} />\n\t\t\t) : errorObject?.stack ? (\n\t\t\t\t<div className={className('stack')}>\n\t\t\t\t\t<div className={className('stack-dump')}>{errorObject.stack}</div>\n\t\t\t\t</div>\n\t\t\t) : null}\n\t\t\t{error.cause ? (\n\t\t\t\t<>\n\t\t\t\t\t<div className={className('causedBy')} id={`error-${level}`}>\n\t\t\t\t\t\tCaused by\n\t\t\t\t\t</div>\n\t\t\t\t\t<DevErrorInner error={error.cause} level={level + 1} />\n\t\t\t\t</>\n\t\t\t) : null}\n\t\t</>\n\t)\n}\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"DevErrorInner.js","sources":["../../../../../../packages/react-devbar/src/ui/DevError/DevErrorInner.tsx"],"sourcesContent":["import { StackTrace } from './StackTrace'\nimport type { ProcessedError } from './types'\n\nexport interface DevErrorInnerProps {\n\terror: ProcessedError\n\tlevel?: number\n}\n\n\nconst className = (cls?: string | null) => cls ? `cui-devError-${cls}` : 'cui-devError'\n\nexport function DevErrorInner({ error, level = 1 }: DevErrorInnerProps) {\n\n\tlet errorObject: Error | undefined = error.error instanceof Error ? error.error : undefined\n\n\treturn (\n\t\t<>\n\t\t\t<div className={className('header')}>\n\t\t\t\t{errorObject ? (\n\t\t\t\t\t<>\n\t\t\t\t\t\t<h1 className={className('errorName')}>{errorObject.name}</h1>\n\t\t\t\t\t\t{error.cause && <a href={`#error-${level}`} className={className('causeLink')}>caused by &gt;</a>}\n\t\t\t\t\t\t{errorObject.message && <h2 className={className('errorMessage')}>{errorObject.message}</h2>}\n\t\t\t\t\t\t{'details' in errorObject && <div className={className('errorDetails')}>{(errorObject as any).details}</div>}\n\t\t\t\t\t</>\n\t\t\t\t) : (\n\t\t\t\t\t<h1 className={className('errorName')}>Unknown error</h1>\n\t\t\t\t)}\n\t\t\t</div>\n\t\t\t{error.parsedStackStrace ? (\n\t\t\t\t<StackTrace stackTrace={error.parsedStackStrace} />\n\t\t\t) : errorObject?.stack ? (\n\t\t\t\t<div className={className('stack')}>\n\t\t\t\t\t<div className={className('stack-dump')}>{errorObject.stack}</div>\n\t\t\t\t</div>\n\t\t\t) : null}\n\t\t\t{error.cause ? (\n\t\t\t\t<>\n\t\t\t\t\t<div className={className('causedBy')} id={`error-${level}`}>\n\t\t\t\t\t\tCaused by\n\t\t\t\t\t</div>\n\t\t\t\t\t<DevErrorInner error={error.cause} level={level + 1} />\n\t\t\t\t</>\n\t\t\t) : null}\n\t\t</>\n\t)\n}\n"],"names":[],"mappings":"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"}