analytica-frontend-lib
Version:
Repositório público dos componentes utilizados nas plataformas da Analytica Ensino
115 lines (106 loc) • 4.49 kB
JavaScript
;Object.defineProperty(exports, "__esModule", {value: true}); function _optionalChain(ops) { let lastAccessLHS = undefined; let value = ops[0]; let i = 1; while (i < ops.length) { const op = ops[i]; const fn = ops[i + 1]; i += 2; if ((op === 'optionalAccess' || op === 'optionalCall') && value == null) { return undefined; } if (op === 'access' || op === 'optionalAccess') { lastAccessLHS = value; value = fn(value); } else if (op === 'call' || op === 'optionalCall') { value = fn((...args) => value.call(lastAccessLHS, ...args)); lastAccessLHS = undefined; } } return value; }
var _chunk34ST3MKOjs = require('./chunk-34ST3MKO.js');
var _chunkANT66KVKjs = require('./chunk-ANT66KVK.js');
var _chunkTN3AYOMVjs = require('./chunk-TN3AYOMV.js');
// src/components/NotFound/NotFound.tsx
var _jsxruntime = require('react/jsx-runtime');
var NotFound = ({
title,
description,
buttonText = "Voltar",
onButtonClick,
className = "",
errorType = "404",
customErrorCode
}) => {
const getErrorCode = () => {
if (errorType === "custom") {
return _optionalChain([customErrorCode, 'optionalAccess', _ => _.trim, 'call', _2 => _2()]) || "ERROR";
}
return errorType;
};
const getDefaultTitle = () => {
switch (errorType) {
case "404":
return "P\xE1gina n\xE3o encontrada";
case "500":
return "Erro interno do servidor";
default:
return "Erro";
}
};
const getDefaultDescription = () => {
switch (errorType) {
case "404":
return "Oops! A p\xE1gina que voc\xEA est\xE1 procurando n\xE3o existe ou foi removida.";
case "500":
return "Algo deu errado em nossos servidores. Tente novamente mais tarde.";
default:
return "Ocorreu um erro inesperado.";
}
};
const handleButtonClick = (event) => {
event.preventDefault();
_optionalChain([onButtonClick, 'optionalCall', _3 => _3()]);
};
const errorTitle = title || getDefaultTitle();
const errorDescription = description || getDefaultDescription();
const errorCode = getErrorCode();
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
"div",
{
className: _chunkTN3AYOMVjs.cn.call(void 0,
"flex flex-col w-full h-screen items-center justify-center bg-background-50 px-4",
className
),
children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
"main",
{
role: "main",
"aria-labelledby": "error-title",
"aria-describedby": "error-description",
className: "flex flex-col items-center text-center max-w-md space-y-6",
children: /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "section", { "aria-label": `Erro ${errorCode}`, children: [
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
"div",
{
className: "text-8xl font-bold text-primary-300 select-none",
"aria-label": `C\xF3digo de erro: ${errorCode}`,
children: errorCode
}
),
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "header", { className: "space-y-2", children: [
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
_chunkANT66KVKjs.Text_default,
{
size: "xl",
weight: "bold",
className: "text-text-950",
id: "error-title",
"aria-level": 1,
children: errorTitle
}
),
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkANT66KVKjs.Text_default, { size: "md", className: "text-text-600", id: "error-description", children: errorDescription })
] }),
onButtonClick && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "nav", { "aria-label": "Navega\xE7\xE3o de erro", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
_chunk34ST3MKOjs.Button_default,
{
onClick: handleButtonClick,
variant: "solid",
size: "medium",
className: "mt-8",
"aria-describedby": "error-description",
"aria-label": `${buttonText}. ${errorDescription}`,
children: buttonText
}
) })
] })
}
)
}
);
};
var NotFound_default = NotFound;
exports.NotFound_default = NotFound_default;
//# sourceMappingURL=chunk-AIHJ7NPJ.js.map