UNPKG

@achs/webkit

Version:

Conjunto de componentes de UI con el estilo del Sistema de Diseño ACHS (Asociación Chilena de Seguridad), para reutilizar de forma transversal en las aplicaciones web de ACHS. Construido con **React 19**, **TypeScript** y **Vite**, con soporte para las

57 lines (56 loc) 1.41 kB
import { jsxs as N, jsx as o } from "react/jsx-runtime"; import a from "./LoadingDots.module.scss.mjs"; const A = ({ size: n = 8, color: e, // si viene, domina sobre el tema themeColor: d = "primary", dotCount: i = 3, gap: p = 6, duration: r = 900, amplitude: m = 6, ariaLabel: s = "Cargando…", inline: c = !0, muted: y = !1, className: u, style: f, ...h }) => { const t = Math.max(1, Math.floor(i)), x = Array.from({ length: t }, (g, l) => `${l * r / t}ms`), $ = { "--ld-size": `${n}px`, "--ld-gap": `${p}px`, "--ld-duration": `${r}ms`, "--ld-amplitude": `${m}px`, // si el caller pasa `color`, pisa el valor temático ...e ? { "--ld-color": e } : null, ...f }; return /* @__PURE__ */ N( "div", { className: [ a.wrapper, c ? a.inline : "", y ? a.muted : "", u || "" ].filter(Boolean).join(" "), role: "status", "aria-live": "polite", "aria-label": s, style: $, "data-color": d, ...h, children: [ Array.from({ length: t }).map((g, l) => { const j = { "--ld-delay": x[l] }; return /* @__PURE__ */ o("span", { className: a.dot, style: j, "aria-hidden": "true" }, `dot-${l}`); }), /* @__PURE__ */ o("span", { className: a.srOnly, children: s }) ] } ); }; export { A as LoadingDots, A as default };