analytica-frontend-lib
Version:
Repositório público dos componentes utilizados nas plataformas da Analytica Ensino
134 lines (119 loc) • 3.88 kB
JavaScript
;Object.defineProperty(exports, "__esModule", {value: true});
var _chunk4E56FKY7js = require('./chunk-4E56FKY7.js');
var _chunkANT66KVKjs = require('./chunk-ANT66KVK.js');
var _chunkTN3AYOMVjs = require('./chunk-TN3AYOMV.js');
// src/components/StudentRanking/StudentRanking.tsx
var _TrendUp = require('@phosphor-icons/react/dist/csr/TrendUp');
var _TrendDown = require('@phosphor-icons/react/dist/csr/TrendDown');
var _jsxruntime = require('react/jsx-runtime');
var StudentCard = ({
student,
variant
}) => {
const TrendIcon = variant === "highlight" ? _TrendUp.TrendUpIcon : _TrendDown.TrendDownIcon;
const backgroundClass = _chunk4E56FKY7js.getPositionBackgroundClass.call(void 0, variant, student.position);
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
"div",
{
className: _chunkTN3AYOMVjs.cn.call(void 0,
"flex flex-row items-center w-full p-4 gap-2 rounded-xl",
backgroundClass
),
children: [
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
_chunkANT66KVKjs.Text_default,
{
size: "xs",
weight: "bold",
"aria-label": `Posi\xE7\xE3o ${student.position}`,
className: _chunkTN3AYOMVjs.cn.call(void 0,
"w-5 h-5 rounded-full flex items-center justify-center text-text",
_chunk4E56FKY7js.BADGE_BACKGROUND_CLASSES[variant]
),
children: student.position
}
),
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
_chunkANT66KVKjs.Text_default,
{
size: "sm",
weight: "bold",
className: "flex-1 min-w-0 text-text-950 tracking-[0.2px] truncate",
children: student.name
}
),
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
_chunkANT66KVKjs.Text_default,
{
size: "xs",
weight: "bold",
"aria-label": `Desempenho ${student.percentage}%`,
className: _chunkTN3AYOMVjs.cn.call(void 0,
"flex flex-row items-center h-[22px] px-2 gap-1 rounded text-text",
_chunk4E56FKY7js.PERCENTAGE_BADGE_CLASSES[variant]
),
children: [
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, TrendIcon, { size: 16, weight: "bold", "aria-hidden": "true" }),
student.percentage,
"%"
]
}
)
]
}
);
};
var RankingCard = ({
title,
variant,
students,
className,
...props
}) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
_chunk4E56FKY7js.BaseRankingCard,
{
title,
variant,
items: students,
renderItem: (student, v, index) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
StudentCard,
{
student,
variant: v
},
`${v}-${index}-${student.position}`
),
className,
...props
}
);
var StudentRanking = ({
highlightTitle = "Estudantes em destaque",
attentionTitle = "Estudantes precisando de aten\xE7\xE3o",
highlightStudents,
attentionStudents,
className,
...props
}) => {
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunk4E56FKY7js.RankingLayout, { className, ...props, children: [
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
RankingCard,
{
title: highlightTitle,
variant: "highlight",
students: highlightStudents
}
),
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
RankingCard,
{
title: attentionTitle,
variant: "attention",
students: attentionStudents
}
)
] });
};
var StudentRanking_default = StudentRanking;
exports.RankingCard = RankingCard; exports.StudentRanking = StudentRanking; exports.StudentRanking_default = StudentRanking_default;
//# sourceMappingURL=chunk-MRFQHTX5.js.map