one
Version:
One is a React framework for web, iOS, and Android apps.
1 lines • 17.4 kB
Source Map (JSON)
{"version":3,"file":"ErrorBoundary.js","names":[],"sources":["esm/views/ErrorBoundary.js"],"sourcesContent":["import React from \"react\";\nimport { Fragment, jsx, jsxs } from \"react/jsx-runtime\";\nfunction ErrorBoundary({ error, retry, route }) {\n const isDev = process.env.NODE_ENV === \"development\";\n React.useEffect(() => {\n if (typeof window !== \"undefined\") {\n window.dispatchEvent(\n new CustomEvent(\"one-error\", {\n detail: {\n error: {\n message: error.message,\n stack: error.stack,\n name: error.name\n },\n route: route || {},\n timestamp: Date.now(),\n type: \"render\"\n }\n })\n );\n }\n }, [error, route]);\n return /* @__PURE__ */ jsx(\n \"div\",\n {\n style: {\n minHeight: \"100vh\",\n display: \"flex\",\n alignItems: \"center\",\n justifyContent: \"center\",\n backgroundColor: \"#0a0a0f\",\n fontFamily: '-apple-system, BlinkMacSystemFont, \"Segoe UI\", Roboto, Helvetica, Arial, sans-serif',\n color: \"#e8e8e8\",\n padding: \"24px\"\n },\n children: /* @__PURE__ */ jsxs(\n \"div\",\n {\n style: {\n maxWidth: \"600px\",\n width: \"100%\",\n backgroundColor: \"#1a1a2e\",\n borderRadius: \"12px\",\n boxShadow: \"0 8px 32px rgba(0, 0, 0, 0.4)\",\n overflow: \"hidden\"\n },\n children: [\n /* @__PURE__ */ jsxs(\n \"div\",\n {\n style: {\n padding: \"16px 20px\",\n backgroundColor: \"#ef4444\",\n display: \"flex\",\n alignItems: \"center\",\n gap: \"12px\"\n },\n children: [\n /* @__PURE__ */ jsxs(\n \"svg\",\n {\n width: \"24\",\n height: \"24\",\n viewBox: \"0 0 24 24\",\n fill: \"none\",\n stroke: \"white\",\n strokeWidth: \"2\",\n children: [\n /* @__PURE__ */ jsx(\"circle\", { cx: \"12\", cy: \"12\", r: \"10\" }),\n /* @__PURE__ */ jsx(\"line\", { x1: \"12\", y1: \"8\", x2: \"12\", y2: \"12\" }),\n /* @__PURE__ */ jsx(\"line\", { x1: \"12\", y1: \"16\", x2: \"12.01\", y2: \"16\" })\n ]\n }\n ),\n /* @__PURE__ */ jsxs(\"div\", { children: [\n /* @__PURE__ */ jsx(\"div\", { style: { fontWeight: 600, fontSize: \"16px\", color: \"white\" }, children: \"Something went wrong\" }),\n route?.pathname && /* @__PURE__ */ jsxs(\n \"div\",\n {\n style: {\n fontSize: \"13px\",\n color: \"rgba(255,255,255,0.8)\",\n marginTop: \"2px\"\n },\n children: [\n \"on \",\n route.pathname\n ]\n }\n )\n ] })\n ]\n }\n ),\n /* @__PURE__ */ jsxs(\"div\", { style: { padding: \"20px\" }, children: [\n /* @__PURE__ */ jsx(\n \"div\",\n {\n style: {\n backgroundColor: \"#2a2a4a\",\n borderRadius: \"8px\",\n padding: \"16px\",\n marginBottom: \"16px\"\n },\n children: /* @__PURE__ */ jsx(\n \"div\",\n {\n style: {\n fontFamily: \"monospace\",\n fontSize: \"14px\",\n lineHeight: \"1.5\",\n color: \"#f87171\",\n wordBreak: \"break-word\"\n },\n children: error.message || \"An unexpected error occurred\"\n }\n )\n }\n ),\n isDev && error.stack && /* @__PURE__ */ jsxs(\n \"details\",\n {\n style: {\n marginBottom: \"16px\"\n },\n children: [\n /* @__PURE__ */ jsx(\n \"summary\",\n {\n style: {\n cursor: \"pointer\",\n fontSize: \"13px\",\n color: \"#888\",\n marginBottom: \"8px\"\n },\n children: \"Stack trace\"\n }\n ),\n /* @__PURE__ */ jsx(\n \"div\",\n {\n style: {\n backgroundColor: \"#16162a\",\n borderRadius: \"8px\",\n padding: \"12px\",\n maxHeight: \"200px\",\n overflow: \"auto\"\n },\n children: /* @__PURE__ */ jsx(\n \"pre\",\n {\n style: {\n fontFamily: \"monospace\",\n fontSize: \"11px\",\n lineHeight: \"1.6\",\n color: \"#a0a0a0\",\n margin: 0,\n whiteSpace: \"pre-wrap\",\n wordBreak: \"break-word\"\n },\n children: error.stack\n }\n )\n }\n )\n ]\n }\n ),\n isDev && route && /* @__PURE__ */ jsxs(\n \"details\",\n {\n style: {\n marginBottom: \"16px\"\n },\n children: [\n /* @__PURE__ */ jsx(\n \"summary\",\n {\n style: {\n cursor: \"pointer\",\n fontSize: \"13px\",\n color: \"#888\",\n marginBottom: \"8px\"\n },\n children: \"Route info\"\n }\n ),\n /* @__PURE__ */ jsxs(\n \"div\",\n {\n style: {\n backgroundColor: \"#16162a\",\n borderRadius: \"8px\",\n padding: \"12px\",\n display: \"grid\",\n gridTemplateColumns: \"auto 1fr\",\n gap: \"8px\",\n fontFamily: \"monospace\",\n fontSize: \"12px\"\n },\n children: [\n route.pathname && /* @__PURE__ */ jsxs(Fragment, { children: [\n /* @__PURE__ */ jsx(\"span\", { style: { color: \"#888\" }, children: \"pathname\" }),\n /* @__PURE__ */ jsx(\"span\", { style: { color: \"#e8e8e8\" }, children: route.pathname })\n ] }),\n route.routeName && /* @__PURE__ */ jsxs(Fragment, { children: [\n /* @__PURE__ */ jsx(\"span\", { style: { color: \"#888\" }, children: \"route\" }),\n /* @__PURE__ */ jsx(\"span\", { style: { color: \"#e8e8e8\" }, children: route.routeName })\n ] }),\n route.params && Object.keys(route.params).length > 0 && /* @__PURE__ */ jsxs(Fragment, { children: [\n /* @__PURE__ */ jsx(\"span\", { style: { color: \"#888\" }, children: \"params\" }),\n /* @__PURE__ */ jsx(\"span\", { style: { color: \"#e8e8e8\" }, children: JSON.stringify(route.params) })\n ] })\n ]\n }\n )\n ]\n }\n ),\n /* @__PURE__ */ jsxs(\"div\", { style: { display: \"flex\", gap: \"12px\" }, children: [\n /* @__PURE__ */ jsx(\n \"button\",\n {\n onClick: () => retry(),\n style: {\n flex: 1,\n padding: \"12px 20px\",\n backgroundColor: \"#3b82f6\",\n color: \"white\",\n border: \"none\",\n borderRadius: \"8px\",\n fontSize: \"14px\",\n fontWeight: 500,\n cursor: \"pointer\",\n transition: \"background-color 0.15s\"\n },\n onMouseOver: (e) => {\n e.currentTarget.style.backgroundColor = \"#2563eb\";\n },\n onMouseOut: (e) => {\n e.currentTarget.style.backgroundColor = \"#3b82f6\";\n },\n children: \"Try Again\"\n }\n ),\n /* @__PURE__ */ jsx(\n \"button\",\n {\n onClick: () => {\n if (typeof window !== \"undefined\") {\n window.location.href = \"/\";\n }\n },\n style: {\n padding: \"12px 20px\",\n backgroundColor: \"transparent\",\n color: \"#888\",\n border: \"1px solid #3a3a5a\",\n borderRadius: \"8px\",\n fontSize: \"14px\",\n fontWeight: 500,\n cursor: \"pointer\",\n transition: \"all 0.15s\"\n },\n onMouseOver: (e) => {\n e.currentTarget.style.backgroundColor = \"#2a2a4a\";\n e.currentTarget.style.color = \"#e8e8e8\";\n },\n onMouseOut: (e) => {\n e.currentTarget.style.backgroundColor = \"transparent\";\n e.currentTarget.style.color = \"#888\";\n },\n children: \"Go Home\"\n }\n )\n ] })\n ] }),\n isDev && /* @__PURE__ */ jsxs(\n \"div\",\n {\n style: {\n padding: \"12px 20px\",\n backgroundColor: \"#16162a\",\n borderTop: \"1px solid #2a2a4a\",\n fontSize: \"11px\",\n color: \"#666\",\n display: \"flex\",\n alignItems: \"center\",\n gap: \"8px\"\n },\n children: [\n /* @__PURE__ */ jsxs(\n \"svg\",\n {\n width: \"12\",\n height: \"12\",\n viewBox: \"0 0 24 24\",\n fill: \"none\",\n stroke: \"#666\",\n strokeWidth: \"2\",\n children: [\n /* @__PURE__ */ jsx(\"circle\", { cx: \"12\", cy: \"12\", r: \"10\" }),\n /* @__PURE__ */ jsx(\"path\", { d: \"M12 16v-4\" }),\n /* @__PURE__ */ jsx(\"path\", { d: \"M12 8h.01\" })\n ]\n }\n ),\n /* @__PURE__ */ jsxs(\"span\", { children: [\n \"Press\",\n \" \",\n /* @__PURE__ */ jsx(\n \"kbd\",\n {\n style: {\n padding: \"2px 6px\",\n backgroundColor: \"#2a2a4a\",\n borderRadius: \"4px\"\n },\n children: \"Alt+E\"\n }\n ),\n \" \",\n \"to open Error Panel\"\n ] })\n ]\n }\n )\n ]\n }\n )\n }\n );\n}\nexport {\n ErrorBoundary\n};\n//# sourceMappingURL=ErrorBoundary.web.js.map\n"],"mappings":"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"}