unipo-ui 1.8.0 → 1.11.0
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.
- package/dist/{chunk-5T2FWP5A.js → chunk-3GCVMEWH.js} +116 -4
- package/dist/chunk-3GCVMEWH.js.map +1 -0
- package/dist/{chunk-LTADAXBH.cjs → chunk-ALNLOACG.cjs} +6 -5
- package/dist/chunk-ALNLOACG.cjs.map +1 -0
- package/dist/{chunk-4YZB47GC.cjs → chunk-BE6YT3UM.cjs} +54 -15
- package/dist/chunk-BE6YT3UM.cjs.map +1 -0
- package/dist/{chunk-2CDMQI7K.js → chunk-D2IW3JNM.js} +438 -29
- package/dist/chunk-D2IW3JNM.js.map +1 -0
- package/dist/{chunk-CM4EFDV7.js → chunk-D5LSMIRT.js} +4 -4
- package/dist/{chunk-CM4EFDV7.js.map → chunk-D5LSMIRT.js.map} +1 -1
- package/dist/{chunk-HGQGB7ET.cjs → chunk-F353BYGT.cjs} +115 -115
- package/dist/{chunk-HGQGB7ET.cjs.map → chunk-F353BYGT.cjs.map} +1 -1
- package/dist/{chunk-BRARGLUX.js → chunk-HF6PYMP6.js} +6 -5
- package/dist/chunk-HF6PYMP6.js.map +1 -0
- package/dist/{chunk-NA23226U.js → chunk-JVICOFZC.js} +5 -127
- package/dist/chunk-JVICOFZC.js.map +1 -0
- package/dist/{chunk-WCWWDV2A.cjs → chunk-M3YX3K3E.cjs} +512 -79
- package/dist/chunk-M3YX3K3E.cjs.map +1 -0
- package/dist/chunk-NIRXA7SK.js +127 -0
- package/dist/chunk-NIRXA7SK.js.map +1 -0
- package/dist/chunk-SB33KUBL.cjs +130 -0
- package/dist/chunk-SB33KUBL.cjs.map +1 -0
- package/dist/{chunk-5BRCBOYC.cjs → chunk-UUPG77ZE.cjs} +43 -167
- package/dist/chunk-UUPG77ZE.cjs.map +1 -0
- package/dist/{chunk-UC2H3PKQ.cjs → chunk-WYOQ7RBA.cjs} +189 -70
- package/dist/chunk-WYOQ7RBA.cjs.map +1 -0
- package/dist/{chunk-OLQKRLWL.js → chunk-XEZCQKEQ.js} +54 -15
- package/dist/chunk-XEZCQKEQ.js.map +1 -0
- package/dist/editor.cjs +125 -124
- package/dist/editor.cjs.map +1 -1
- package/dist/editor.js +5 -3
- package/dist/editor.js.map +1 -1
- package/dist/ikon.cjs +28 -28
- package/dist/ikon.d.cts +3 -1
- package/dist/ikon.d.ts +3 -1
- package/dist/ikon.js +1 -1
- package/dist/index.cjs +337 -241
- package/dist/index.d.cts +117 -6
- package/dist/index.d.ts +117 -6
- package/dist/index.js +7 -7
- package/dist/katalog.cjs +107 -108
- package/dist/katalog.cjs.map +1 -1
- package/dist/katalog.js +4 -5
- package/dist/katalog.js.map +1 -1
- package/dist/{pemeliharaan-C-wGiwqE.d.ts → landing-B5c1OZvz.d.ts} +161 -1
- package/dist/{pemeliharaan-DZRBOGGS.d.cts → landing-CwNnf1Qj.d.cts} +161 -1
- package/dist/registry.json +662 -2
- package/dist/scss/components/_cbt.scss +37 -1
- package/dist/scss/components/_content.scss +11 -0
- package/dist/scss/components/_display.scss +14 -0
- package/dist/scss/components/_landing.scss +831 -0
- package/dist/scss/components/_lms-belajar.scss +1764 -0
- package/dist/scss/components/_pmb-maba.scss +741 -0
- package/dist/scss/components/_pmb-publik.scss +690 -0
- package/dist/scss/components/_tata-letak.scss +283 -0
- package/dist/scss/index.scss +5 -0
- package/dist/siakad.cjs +12889 -7700
- package/dist/siakad.cjs.map +1 -1
- package/dist/siakad.d.cts +1534 -15
- package/dist/siakad.d.ts +1534 -15
- package/dist/siakad.js +12391 -7374
- package/dist/siakad.js.map +1 -1
- package/dist/ui-unipo.css +4614 -2
- package/dist/ui-unipo.min.css +1 -1
- package/package.json +2 -2
- package/src/components/display.tsx +65 -7
- package/src/components/landing.tsx +576 -0
- package/src/components/tata-letak.tsx +217 -0
- package/src/ikon/ilustrasi.tsx +23 -4
- package/src/index.ts +2 -0
- package/src/siakad/cbt.tsx +155 -29
- package/src/siakad/index.ts +3 -0
- package/src/siakad/kalender.tsx +23 -7
- package/src/siakad/lms-belajar.tsx +3297 -0
- package/src/siakad/lms.tsx +7 -3
- package/src/siakad/pmb-maba.tsx +1934 -0
- package/src/siakad/pmb-publik.tsx +1628 -0
- package/src/siakad/pmb.tsx +419 -66
- package/dist/chunk-2CDMQI7K.js.map +0 -1
- package/dist/chunk-4YZB47GC.cjs.map +0 -1
- package/dist/chunk-5BRCBOYC.cjs.map +0 -1
- package/dist/chunk-5T2FWP5A.js.map +0 -1
- package/dist/chunk-BRARGLUX.js.map +0 -1
- package/dist/chunk-FK24GBNJ.cjs +0 -150
- package/dist/chunk-FK24GBNJ.cjs.map +0 -1
- package/dist/chunk-ITIQ2IHX.js +0 -122
- package/dist/chunk-ITIQ2IHX.js.map +0 -1
- package/dist/chunk-LTADAXBH.cjs.map +0 -1
- package/dist/chunk-NA23226U.js.map +0 -1
- package/dist/chunk-OLQKRLWL.js.map +0 -1
- package/dist/chunk-UC2H3PKQ.cjs.map +0 -1
- package/dist/chunk-WCWWDV2A.cjs.map +0 -1
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
'use client';
|
|
2
|
-
import { Button, formatDate, Popover, formatBytes, Badge, InputGroup, Input, Dialog, Field, DialogClose, Tooltip, Checkbox, Empty, Skeleton, SortButton, Select, Pagination, formatTime, formatNumber, Menu, Separator } from './chunk-
|
|
2
|
+
import { Button, formatDate, Popover, formatBytes, Badge, InputGroup, Input, Dialog, Field, DialogClose, Tooltip, Checkbox, Empty, Skeleton, SortButton, Select, Pagination, formatTime, formatNumber, Menu, Separator } from './chunk-XEZCQKEQ.js';
|
|
3
3
|
import { dataFlag, cn } from './chunk-JSUHAYQ4.js';
|
|
4
4
|
import * as React4 from 'react';
|
|
5
5
|
import { ChevronLeft, ChevronRight, CalendarDays, UploadCloud, FileText, X, Check, Copy, PlusCircle, Search, SlidersHorizontal, ListFilter, Rows3, Columns3, Download, AlertTriangle, SearchX, CircleAlert, ArrowLeft, ArrowRight, Pencil, ArrowUpRight, ArrowDownRight, Minus, Wrench, CalendarClock, RefreshCw, MoreHorizontal } from 'lucide-react';
|
|
@@ -1703,7 +1703,119 @@ function BannerPemeliharaan({ start, end, message, showHoursBefore = 48, dismiss
|
|
|
1703
1703
|
)
|
|
1704
1704
|
] });
|
|
1705
1705
|
}
|
|
1706
|
+
var ANIMASI_FITUR = {
|
|
1707
|
+
notifikasi: "lonceng",
|
|
1708
|
+
pengumuman: "lonceng",
|
|
1709
|
+
kalender: "balik",
|
|
1710
|
+
agenda: "balik",
|
|
1711
|
+
portal: "balik",
|
|
1712
|
+
humas: "balik",
|
|
1713
|
+
keu: "naik",
|
|
1714
|
+
keuangan: "naik",
|
|
1715
|
+
pembayaran: "naik",
|
|
1716
|
+
unggah: "naik",
|
|
1717
|
+
berkas: "naik",
|
|
1718
|
+
pddikti: "putar",
|
|
1719
|
+
sinkron: "putar",
|
|
1720
|
+
integrasi: "putar",
|
|
1721
|
+
pemeliharaan: "putar",
|
|
1722
|
+
helpdesk: "denyut",
|
|
1723
|
+
tiket: "denyut",
|
|
1724
|
+
dasbor: "denyut",
|
|
1725
|
+
cbt: "denyut",
|
|
1726
|
+
kelulusan: "pantul",
|
|
1727
|
+
prestasi: "pantul",
|
|
1728
|
+
wisuda: "pantul",
|
|
1729
|
+
kemahasiswaan: "pantul",
|
|
1730
|
+
akses: "goyang",
|
|
1731
|
+
galat: "goyang",
|
|
1732
|
+
ditolak: "goyang",
|
|
1733
|
+
ai: "ketik",
|
|
1734
|
+
editor: "ketik",
|
|
1735
|
+
arsip: "geser",
|
|
1736
|
+
layanan: "geser",
|
|
1737
|
+
sukses: "sukses"
|
|
1738
|
+
};
|
|
1739
|
+
function animasiFitur(fitur) {
|
|
1740
|
+
return fitur && ANIMASI_FITUR[fitur] || "masuk";
|
|
1741
|
+
}
|
|
1742
|
+
var BERULANG = ["denyut", "mengambang", "putar"];
|
|
1743
|
+
function Animasi({ jenis = "masuk", tunda, durasi, pemicu, as = "div", ulang, className, style, children, ...rest }) {
|
|
1744
|
+
const p = pemicu ?? (BERULANG.includes(jenis) ? "selalu" : "muat");
|
|
1745
|
+
const ref = React4.useRef(null);
|
|
1746
|
+
const [terlihat, setTerlihat] = React4.useState(p !== "terlihat");
|
|
1747
|
+
React4.useEffect(() => {
|
|
1748
|
+
if (p !== "terlihat" || !ref.current || typeof IntersectionObserver === "undefined") return setTerlihat(true);
|
|
1749
|
+
const io = new IntersectionObserver(
|
|
1750
|
+
([e]) => {
|
|
1751
|
+
if (e.isIntersecting) {
|
|
1752
|
+
setTerlihat(true);
|
|
1753
|
+
io.disconnect();
|
|
1754
|
+
}
|
|
1755
|
+
},
|
|
1756
|
+
{ rootMargin: "0px 0px -10% 0px" }
|
|
1757
|
+
);
|
|
1758
|
+
io.observe(ref.current);
|
|
1759
|
+
return () => io.disconnect();
|
|
1760
|
+
}, [p]);
|
|
1761
|
+
const ms = tunda === void 0 ? void 0 : tunda > 20 ? tunda : tunda * 60;
|
|
1762
|
+
const Tag = as;
|
|
1763
|
+
return /* @__PURE__ */ jsx(
|
|
1764
|
+
Tag,
|
|
1765
|
+
{
|
|
1766
|
+
ref,
|
|
1767
|
+
className: cn("u-anim", className),
|
|
1768
|
+
"data-anim": jenis,
|
|
1769
|
+
"data-pemicu": p,
|
|
1770
|
+
"data-siap": terlihat || void 0,
|
|
1771
|
+
style: { ...ms !== void 0 ? { ["--u-anim-tunda"]: `${ms}ms` } : {}, ...durasi ? { ["--u-anim-durasi"]: `${durasi}ms` } : {}, ...style },
|
|
1772
|
+
...rest,
|
|
1773
|
+
children
|
|
1774
|
+
},
|
|
1775
|
+
ulang
|
|
1776
|
+
);
|
|
1777
|
+
}
|
|
1778
|
+
function Bertahap({ jenis = "masuk", jeda = 60, pemicu = "muat", className, children, as = "div" }) {
|
|
1779
|
+
return /* @__PURE__ */ jsx(Fragment, { children: React4.Children.toArray(children).map((c, i) => /* @__PURE__ */ jsx(Animasi, { jenis, tunda: i * jeda + 1, pemicu, className, as, children: c }, c.key ?? i)) });
|
|
1780
|
+
}
|
|
1781
|
+
function kurangiGerak() {
|
|
1782
|
+
return typeof window !== "undefined" && window.matchMedia?.("(prefers-reduced-motion: reduce)").matches;
|
|
1783
|
+
}
|
|
1784
|
+
function AngkaBerjalan({ nilai, durasi = 900, format = (n) => formatNumber(Math.round(n)), className }) {
|
|
1785
|
+
const [tampil, setTampil] = React4.useState(nilai);
|
|
1786
|
+
const dari = React4.useRef(0);
|
|
1787
|
+
React4.useEffect(() => {
|
|
1788
|
+
if (kurangiGerak()) return setTampil(nilai);
|
|
1789
|
+
const awal = dari.current;
|
|
1790
|
+
const t0 = performance.now();
|
|
1791
|
+
let id = 0;
|
|
1792
|
+
const langkah = (t) => {
|
|
1793
|
+
const p = Math.min(1, (t - t0) / durasi);
|
|
1794
|
+
const e = 1 - Math.pow(1 - p, 3);
|
|
1795
|
+
setTampil(awal + (nilai - awal) * e);
|
|
1796
|
+
if (p < 1) id = requestAnimationFrame(langkah);
|
|
1797
|
+
else dari.current = nilai;
|
|
1798
|
+
};
|
|
1799
|
+
id = requestAnimationFrame(langkah);
|
|
1800
|
+
return () => cancelAnimationFrame(id);
|
|
1801
|
+
}, [nilai, durasi]);
|
|
1802
|
+
return /* @__PURE__ */ jsx("span", { className: cn("u-angka-berjalan", className), "aria-label": format(nilai), children: /* @__PURE__ */ jsx("span", { "aria-hidden": true, children: format(tampil) }) });
|
|
1803
|
+
}
|
|
1804
|
+
function CentangSukses({ ukuran = 56, nada = "success", className, label = "Berhasil" }) {
|
|
1805
|
+
const silang = nada === "danger";
|
|
1806
|
+
return /* @__PURE__ */ jsxs("svg", { className: cn("u-centang", className), "data-nada": nada, width: ukuran, height: ukuran, viewBox: "0 0 52 52", role: "img", "aria-label": label, children: [
|
|
1807
|
+
/* @__PURE__ */ jsx("circle", { className: "u-centang-lingkar", cx: "26", cy: "26", r: "23", fill: "none", strokeWidth: "3" }),
|
|
1808
|
+
silang ? /* @__PURE__ */ jsx("path", { className: "u-centang-tanda", fill: "none", strokeWidth: "4", strokeLinecap: "round", d: "M18 18 34 34M34 18 18 34" }) : /* @__PURE__ */ jsx("path", { className: "u-centang-tanda", fill: "none", strokeWidth: "4", strokeLinecap: "round", strokeLinejoin: "round", d: "M15 27l7 7 15-16" })
|
|
1809
|
+
] });
|
|
1810
|
+
}
|
|
1811
|
+
function TitikMengetik({ label = "Sedang mengetik", className }) {
|
|
1812
|
+
return /* @__PURE__ */ jsxs("span", { className: cn("u-titik-mengetik", className), role: "status", "aria-label": label, children: [
|
|
1813
|
+
/* @__PURE__ */ jsx("i", {}),
|
|
1814
|
+
/* @__PURE__ */ jsx("i", {}),
|
|
1815
|
+
/* @__PURE__ */ jsx("i", {})
|
|
1816
|
+
] });
|
|
1817
|
+
}
|
|
1706
1818
|
|
|
1707
|
-
export { ActionList, ActivityFeed, BannerPemeliharaan, BarChart, BarList, BudgetMeter, CHART_COLORS, Calendar, CodeBlock, CopyButton, CycleSteps, DashboardGrid, DataTable, DatePicker, DonutChart, Dropzone, FacetFilter, FileList, FilterBar, FormGrid, Funnel, GroupedBarChart, InlineCode, KodeLaporan, LineChart, ModePemeliharaan, Panel, SegmentBar, Sparkline, StatCard, StatGrid, Wizard, WizardReview, chartColor, filterToQuery, monthMatrix, parseISODate, requestIdDari, toISODate, tokenize, useCopy, useFilterParams };
|
|
1708
|
-
//# sourceMappingURL=chunk-
|
|
1709
|
-
//# sourceMappingURL=chunk-
|
|
1819
|
+
export { ANIMASI_FITUR, ActionList, ActivityFeed, AngkaBerjalan, Animasi, BannerPemeliharaan, BarChart, BarList, Bertahap, BudgetMeter, CHART_COLORS, Calendar, CentangSukses, CodeBlock, CopyButton, CycleSteps, DashboardGrid, DataTable, DatePicker, DonutChart, Dropzone, FacetFilter, FileList, FilterBar, FormGrid, Funnel, GroupedBarChart, InlineCode, KodeLaporan, LineChart, ModePemeliharaan, Panel, SegmentBar, Sparkline, StatCard, StatGrid, TitikMengetik, Wizard, WizardReview, animasiFitur, chartColor, filterToQuery, monthMatrix, parseISODate, requestIdDari, toISODate, tokenize, useCopy, useFilterParams };
|
|
1820
|
+
//# sourceMappingURL=chunk-3GCVMEWH.js.map
|
|
1821
|
+
//# sourceMappingURL=chunk-3GCVMEWH.js.map
|