Big News: Socket raises $60M Series C at a $1B valuation to secure software supply chains for AI-driven development.Announcement
Sign In

@sudobility/analytics-components

Package Overview
Dependencies
Maintainers
1
Versions
16
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

@sudobility/analytics-components - npm Package Compare versions

Comparing version
2.0.11
to
2.0.13
+1
-1
dist/comparison-section.d.ts.map

@@ -1,1 +0,1 @@

{"version":3,"file":"comparison-section.d.ts","sourceRoot":"","sources":["../src/comparison-section.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EAAO,KAAK,YAAY,EAAE,MAAM,0BAA0B,CAAC;AAGlE,QAAA,MAAM,eAAe;;;8EAiBnB,CAAC;AAuCH,MAAM,WAAW,cAAc;IAC7B,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IACvB,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB;AAED,MAAM,WAAW,cAAc;IAC7B,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IACvB,KAAK,EAAE,cAAc,EAAE,CAAC;IACxB,OAAO,EAAE,aAAa,GAAG,MAAM,GAAG,SAAS,GAAG,UAAU,CAAC;IACzD,KAAK,CAAC,EAAE;QACN,IAAI,EAAE,MAAM,CAAC;QACb,KAAK,CAAC,EAAE,KAAK,GAAG,OAAO,GAAG,MAAM,GAAG,MAAM,CAAC;KAC3C,CAAC;CACH;AAED,MAAM,WAAW,sBACf,SAAQ,YAAY,CAAC,OAAO,eAAe,CAAC;IAC5C,SAAS,CAAC,EAAE,MAAM,CAAC;IAGnB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,WAAW,EAAE,cAAc,CAAC;IAC5B,IAAI,EAAE,cAAc,CAAC;IAGrB,aAAa,CAAC,EAAE,MAAM,GAAG,OAAO,GAAG,OAAO,CAAC;IAG3C,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,cAAc,CAAC,EAAE,MAAM,CAAC;IAGxB,eAAe,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IAClC,QAAQ,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;CAC5B;AAgBD,eAAO,MAAM,iBAAiB,EAAE,KAAK,CAAC,EAAE,CAAC,sBAAsB,CAsH9D,CAAC;AAGF,eAAO,MAAM,oBAAoB,GAC/B,OAAO,MAAM,EACb,OAAO,CAAC,MAAM,GAAG,cAAc,CAAC,EAAE,EAClC,SAAS,aAAa,GAAG,MAAM,GAAG,SAAS,GAAG,UAAU,EACxD,UAAU;IACR,IAAI,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IACvB,KAAK,CAAC,EAAE,cAAc,CAAC,OAAO,CAAC,CAAC;CACjC,KACA,cAKD,CAAC;AAIH,eAAO,MAAM,yBAAyB,GAAI,SAAS;IACjD,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,gBAAgB,CAAC,EAAE;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAA;KAAE,EAAE,CAAC;IACpD,SAAS,CAAC,EAAE;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAA;KAAE,EAAE,CAAC;IAC7C,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;;;CAkCA,CAAC"}
{"version":3,"file":"comparison-section.d.ts","sourceRoot":"","sources":["../src/comparison-section.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EAAO,KAAK,YAAY,EAAE,MAAM,0BAA0B,CAAC;AAGlE,QAAA,MAAM,eAAe;;;8EAiBnB,CAAC;AAuCH,MAAM,WAAW,cAAc;IAC7B,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IACvB,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB;AAED,MAAM,WAAW,cAAc;IAC7B,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IACvB,KAAK,EAAE,cAAc,EAAE,CAAC;IACxB,OAAO,EAAE,aAAa,GAAG,MAAM,GAAG,SAAS,GAAG,UAAU,CAAC;IACzD,KAAK,CAAC,EAAE;QACN,IAAI,EAAE,MAAM,CAAC;QACb,KAAK,CAAC,EAAE,KAAK,GAAG,OAAO,GAAG,MAAM,GAAG,MAAM,CAAC;KAC3C,CAAC;CACH;AAED,MAAM,WAAW,sBAAuB,SAAQ,YAAY,CAC1D,OAAO,eAAe,CACvB;IACC,SAAS,CAAC,EAAE,MAAM,CAAC;IAGnB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,WAAW,EAAE,cAAc,CAAC;IAC5B,IAAI,EAAE,cAAc,CAAC;IAGrB,aAAa,CAAC,EAAE,MAAM,GAAG,OAAO,GAAG,OAAO,CAAC;IAG3C,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,cAAc,CAAC,EAAE,MAAM,CAAC;IAGxB,eAAe,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IAClC,QAAQ,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;CAC5B;AAgBD,eAAO,MAAM,iBAAiB,EAAE,KAAK,CAAC,EAAE,CAAC,sBAAsB,CAsH9D,CAAC;AAGF,eAAO,MAAM,oBAAoB,GAC/B,OAAO,MAAM,EACb,OAAO,CAAC,MAAM,GAAG,cAAc,CAAC,EAAE,EAClC,SAAS,aAAa,GAAG,MAAM,GAAG,SAAS,GAAG,UAAU,EACxD,UAAU;IACR,IAAI,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IACvB,KAAK,CAAC,EAAE,cAAc,CAAC,OAAO,CAAC,CAAC;CACjC,KACA,cAKD,CAAC;AAIH,eAAO,MAAM,yBAAyB,GAAI,SAAS;IACjD,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,gBAAgB,CAAC,EAAE;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAA;KAAE,EAAE,CAAC;IACpD,SAAS,CAAC,EAAE;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAA;KAAE,EAAE,CAAC;IAC7C,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;;;CAkCA,CAAC"}

@@ -1,306 +0,46 @@

import se from "react";
import { cn as x } from "@sudobility/components";
var C = { exports: {} }, j = {};
var L;
function ie() {
if (L) return j;
L = 1;
var t = /* @__PURE__ */ Symbol.for("react.transitional.element"), a = /* @__PURE__ */ Symbol.for("react.fragment");
function r(n, o, i) {
var u = null;
if (i !== void 0 && (u = "" + i), o.key !== void 0 && (u = "" + o.key), "key" in o) {
i = {};
for (var c in o)
c !== "key" && (i[c] = o[c]);
} else i = o;
return o = i.ref, {
$$typeof: t,
type: n,
key: u,
ref: o !== void 0 ? o : null,
props: i
};
}
return j.Fragment = a, j.jsx = r, j.jsxs = r, j;
import { jsxs as m, jsx as n } from "react/jsx-runtime";
import { cn as l } from "@sudobility/components";
function N(e) {
var t, r, a = "";
if (typeof e == "string" || typeof e == "number") a += e;
else if (typeof e == "object") if (Array.isArray(e)) {
var o = e.length;
for (t = 0; t < o; t++) e[t] && (r = N(e[t])) && (a && (a += " "), a += r);
} else for (r in e) e[r] && (a && (a += " "), a += r);
return a;
}
var T = {};
var q;
function le() {
return q || (q = 1, process.env.NODE_ENV !== "production" && (function() {
function t(e) {
if (e == null) return null;
if (typeof e == "function")
return e.$$typeof === ae ? null : e.displayName || e.name || null;
if (typeof e == "string") return e;
switch (e) {
case p:
return "Fragment";
case U:
return "Profiler";
case k:
return "StrictMode";
case K:
return "Suspense";
case ee:
return "SuspenseList";
case te:
return "Activity";
}
if (typeof e == "object")
switch (typeof e.tag == "number" && console.error(
"Received an unexpected object in getComponentNameFromType(). This is likely a bug in React. Please file an issue."
), e.$$typeof) {
case E:
return "Portal";
case H:
return e.displayName || "Context";
case Q:
return (e._context.displayName || "Context") + ".Consumer";
case Z:
var s = e.render;
return e = e.displayName, e || (e = s.displayName || s.name || "", e = e !== "" ? "ForwardRef(" + e + ")" : "ForwardRef"), e;
case re:
return s = e.displayName || null, s !== null ? s : t(e.type) || "Memo";
case O:
s = e._payload, e = e._init;
try {
return t(e(s));
} catch {
}
}
return null;
}
function a(e) {
return "" + e;
}
function r(e) {
try {
a(e);
var s = !1;
} catch {
s = !0;
}
if (s) {
s = console;
var d = s.error, g = typeof Symbol == "function" && Symbol.toStringTag && e[Symbol.toStringTag] || e.constructor.name || "Object";
return d.call(
s,
"The provided key is an unsupported type %s. This value must be coerced to a string before using it here.",
g
), a(e);
}
}
function n(e) {
if (e === p) return "<>";
if (typeof e == "object" && e !== null && e.$$typeof === O)
return "<...>";
try {
var s = t(e);
return s ? "<" + s + ">" : "<...>";
} catch {
return "<...>";
}
}
function o() {
var e = S.A;
return e === null ? null : e.getOwner();
}
function i() {
return Error("react-stack-top-frame");
}
function u(e) {
if ($.call(e, "key")) {
var s = Object.getOwnPropertyDescriptor(e, "key").get;
if (s && s.isReactWarning) return !1;
}
return e.key !== void 0;
}
function c(e, s) {
function d() {
D || (D = !0, console.error(
"%s: `key` is not a prop. Trying to access it will result in `undefined` being returned. If you need to access the same value within the child component, you should pass it as a different prop. (https://react.dev/link/special-props)",
s
));
}
d.isReactWarning = !0, Object.defineProperty(e, "key", {
get: d,
configurable: !0
});
}
function _() {
var e = t(this.type);
return Y[e] || (Y[e] = !0, console.error(
"Accessing element.ref was removed in React 19. ref is now a regular prop. It will be removed from the JSX Element type in a future release."
)), e = this.props.ref, e !== void 0 ? e : null;
}
function f(e, s, d, g, N, P) {
var m = d.ref;
return e = {
$$typeof: b,
type: e,
key: s,
props: d,
_owner: g
}, (m !== void 0 ? m : null) !== null ? Object.defineProperty(e, "ref", {
enumerable: !1,
get: _
}) : Object.defineProperty(e, "ref", { enumerable: !1, value: null }), e._store = {}, Object.defineProperty(e._store, "validated", {
configurable: !1,
enumerable: !1,
writable: !0,
value: 0
}), Object.defineProperty(e, "_debugInfo", {
configurable: !1,
enumerable: !1,
writable: !0,
value: null
}), Object.defineProperty(e, "_debugStack", {
configurable: !1,
enumerable: !1,
writable: !0,
value: N
}), Object.defineProperty(e, "_debugTask", {
configurable: !1,
enumerable: !1,
writable: !0,
value: P
}), Object.freeze && (Object.freeze(e.props), Object.freeze(e)), e;
}
function y(e, s, d, g, N, P) {
var m = s.children;
if (m !== void 0)
if (g)
if (ne(m)) {
for (g = 0; g < m.length; g++)
h(m[g]);
Object.freeze && Object.freeze(m);
} else
console.error(
"React.jsx: Static children should always be an array. You are likely explicitly calling React.jsxs or React.jsxDEV. Use the Babel transform instead."
);
else h(m);
if ($.call(s, "key")) {
m = t(e);
var R = Object.keys(s).filter(function(oe) {
return oe !== "key";
});
g = 0 < R.length ? "{key: someKey, " + R.join(": ..., ") + ": ...}" : "{key: someKey}", M[m + g] || (R = 0 < R.length ? "{" + R.join(": ..., ") + ": ...}" : "{}", console.error(
`A props object containing a "key" prop is being spread into JSX:
let props = %s;
<%s {...props} />
React keys must be passed directly to JSX without using spread:
let props = %s;
<%s key={someKey} {...props} />`,
g,
m,
R,
m
), M[m + g] = !0);
}
if (m = null, d !== void 0 && (r(d), m = "" + d), u(s) && (r(s.key), m = "" + s.key), "key" in s) {
d = {};
for (var I in s)
I !== "key" && (d[I] = s[I]);
} else d = s;
return m && c(
d,
typeof e == "function" ? e.displayName || e.name || "Unknown" : e
), f(
e,
m,
d,
o(),
N,
P
);
}
function h(e) {
v(e) ? e._store && (e._store.validated = 1) : typeof e == "object" && e !== null && e.$$typeof === O && (e._payload.status === "fulfilled" ? v(e._payload.value) && e._payload.value._store && (e._payload.value._store.validated = 1) : e._store && (e._store.validated = 1));
}
function v(e) {
return typeof e == "object" && e !== null && e.$$typeof === b;
}
var w = se, b = /* @__PURE__ */ Symbol.for("react.transitional.element"), E = /* @__PURE__ */ Symbol.for("react.portal"), p = /* @__PURE__ */ Symbol.for("react.fragment"), k = /* @__PURE__ */ Symbol.for("react.strict_mode"), U = /* @__PURE__ */ Symbol.for("react.profiler"), Q = /* @__PURE__ */ Symbol.for("react.consumer"), H = /* @__PURE__ */ Symbol.for("react.context"), Z = /* @__PURE__ */ Symbol.for("react.forward_ref"), K = /* @__PURE__ */ Symbol.for("react.suspense"), ee = /* @__PURE__ */ Symbol.for("react.suspense_list"), re = /* @__PURE__ */ Symbol.for("react.memo"), O = /* @__PURE__ */ Symbol.for("react.lazy"), te = /* @__PURE__ */ Symbol.for("react.activity"), ae = /* @__PURE__ */ Symbol.for("react.client.reference"), S = w.__CLIENT_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE, $ = Object.prototype.hasOwnProperty, ne = Array.isArray, A = console.createTask ? console.createTask : function() {
return null;
};
w = {
react_stack_bottom_frame: function(e) {
return e();
}
};
var D, Y = {}, W = w.react_stack_bottom_frame.bind(
w,
i
)(), F = A(n(i)), M = {};
T.Fragment = p, T.jsx = function(e, s, d) {
var g = 1e4 > S.recentlyCreatedOwnerStacks++;
return y(
e,
s,
d,
!1,
g ? Error("react-stack-top-frame") : W,
g ? A(n(e)) : F
);
}, T.jsxs = function(e, s, d) {
var g = 1e4 > S.recentlyCreatedOwnerStacks++;
return y(
e,
s,
d,
!0,
g ? Error("react-stack-top-frame") : W,
g ? A(n(e)) : F
);
};
})()), T;
function j() {
for (var e, t, r = 0, a = "", o = arguments.length; r < o; r++) (e = arguments[r]) && (t = N(e)) && (a && (a += " "), a += t);
return a;
}
var z;
function ce() {
return z || (z = 1, process.env.NODE_ENV === "production" ? C.exports = ie() : C.exports = le()), C.exports;
}
var l = ce();
function X(t) {
var a, r, n = "";
if (typeof t == "string" || typeof t == "number") n += t;
else if (typeof t == "object") if (Array.isArray(t)) {
var o = t.length;
for (a = 0; a < o; a++) t[a] && (r = X(t[a])) && (n && (n += " "), n += r);
} else for (r in t) t[r] && (n && (n += " "), n += r);
return n;
}
function de() {
for (var t, a, r = 0, n = "", o = arguments.length; r < o; r++) (t = arguments[r]) && (a = X(t)) && (n && (n += " "), n += a);
return n;
}
const J = (t) => typeof t == "boolean" ? `${t}` : t === 0 ? "0" : t, G = de, V = (t, a) => (r) => {
var n;
if (a?.variants == null) return G(t, r?.class, r?.className);
const { variants: o, defaultVariants: i } = a, u = Object.keys(o).map((f) => {
const y = r?.[f], h = i?.[f];
if (y === null) return null;
const v = J(y) || J(h);
return o[f][v];
}), c = r && Object.entries(r).reduce((f, y) => {
let [h, v] = y;
return v === void 0 || (f[h] = v), f;
}, {}), _ = a == null || (n = a.compoundVariants) === null || n === void 0 ? void 0 : n.reduce((f, y) => {
let { class: h, className: v, ...w } = y;
return Object.entries(w).every((b) => {
let [E, p] = b;
return Array.isArray(p) ? p.includes({
const w = (e) => typeof e == "boolean" ? `${e}` : e === 0 ? "0" : e, U = j, p = (e, t) => (r) => {
var a;
if (t?.variants == null) return U(e, r?.class, r?.className);
const { variants: o, defaultVariants: i } = t, s = Object.keys(o).map((c) => {
const u = r?.[c], y = i?.[c];
if (u === null) return null;
const b = w(u) || w(y);
return o[c][b];
}), d = r && Object.entries(r).reduce((c, u) => {
let [y, b] = u;
return b === void 0 || (c[y] = b), c;
}, {}), v = t == null || (a = t.compoundVariants) === null || a === void 0 ? void 0 : a.reduce((c, u) => {
let { class: y, className: b, ...f } = u;
return Object.entries(f).every((g) => {
let [k, x] = g;
return Array.isArray(x) ? x.includes({
...i,
...c
}[E]) : {
...d
}[k]) : {
...i,
...c
}[E] === p;
...d
}[k] === x;
}) ? [
...f,
h,
v
] : f;
...c,
y,
b
] : c;
}, []);
return G(t, u, _, r?.class, r?.className);
}, ue = V("grid gap-8", {
return U(e, s, v, r?.class, r?.className);
}, D = p("grid gap-8", {
variants: {

@@ -322,3 +62,3 @@ layout: {

}
}), ge = V("rounded-xl p-6 transition-all duration-300", {
}), I = p("rounded-xl p-6 transition-all duration-300", {
variants: {

@@ -341,3 +81,3 @@ variant: {

}
}), me = V("text-lg font-bold mb-4 flex items-center gap-3", {
}), S = p("text-lg font-bold mb-4 flex items-center gap-3", {
variants: {

@@ -354,3 +94,3 @@ variant: {

}
}), fe = {
}), W = {
traditional: "❌",

@@ -360,3 +100,3 @@ web3: "✅",

elevated: "⭐"
}, be = {
}, T = {
red: "bg-red-100 text-red-800 dark:bg-red-900/30 dark:text-red-300",

@@ -366,36 +106,36 @@ green: "bg-green-100 text-green-800 dark:bg-green-900/30 dark:text-green-300",

gray: "bg-gray-100 text-gray-800 dark:bg-gray-800 dark:text-gray-300"
}, ye = ({
className: t,
layout: a = "grid",
}, O = ({
className: e,
layout: t = "grid",
spacing: r = "md",
title: n,
title: a,
subtitle: o,
traditional: i,
web3: u,
cardAnimation: c = "hover",
animate: _ = !0,
animationDelay: f = 0,
traditionalIcon: y,
web3Icon: h
web3: s,
cardAnimation: d = "hover",
animate: v = !0,
animationDelay: c = 0,
traditionalIcon: u,
web3Icon: y
}) => {
const v = (b, E) => {
const p = /* @__PURE__ */ l.jsxs(
const b = (g, k) => {
const x = /* @__PURE__ */ m(
"div",
{
className: x(
ge({ variant: b.variant, animation: c })
className: l(
I({ variant: g.variant, animation: d })
),
children: [
/* @__PURE__ */ l.jsxs("div", { className: x(me({ variant: b.variant })), children: [
/* @__PURE__ */ l.jsx("span", { className: "text-2xl", children: b.icon || (E === 0 ? y : h) || fe[b.variant] }),
/* @__PURE__ */ l.jsx("div", { className: "flex-1", children: /* @__PURE__ */ l.jsxs("div", { className: "flex items-center gap-2", children: [
/* @__PURE__ */ l.jsx("span", { children: b.title }),
b.badge && /* @__PURE__ */ l.jsx(
/* @__PURE__ */ m("div", { className: l(S({ variant: g.variant })), children: [
/* @__PURE__ */ n("span", { className: "text-2xl", children: g.icon || (k === 0 ? u : y) || W[g.variant] }),
/* @__PURE__ */ n("div", { className: "flex-1", children: /* @__PURE__ */ m("div", { className: "flex items-center gap-2", children: [
/* @__PURE__ */ n("span", { children: g.title }),
g.badge && /* @__PURE__ */ n(
"span",
{
className: x(
className: l(
"text-xs font-medium px-2 py-1 rounded-full",
be[b.badge.color || "gray"]
T[g.badge.color || "gray"]
),
children: b.badge.text
children: g.badge.text
}

@@ -405,26 +145,26 @@ )

] }),
/* @__PURE__ */ l.jsx("ul", { className: "space-y-3", children: b.items.map((k, U) => /* @__PURE__ */ l.jsxs(
/* @__PURE__ */ n("ul", { className: "space-y-3", children: g.items.map((h, V) => /* @__PURE__ */ m(
"li",
{
className: x(
className: l(
"flex items-start gap-3 text-sm leading-relaxed",
k.highlight && "font-medium"
h.highlight && "font-medium"
),
children: [
k.icon && /* @__PURE__ */ l.jsx("span", { className: "flex-shrink-0 mt-0.5 text-base", children: k.icon }),
/* @__PURE__ */ l.jsxs("div", { className: "flex-1", children: [
/* @__PURE__ */ l.jsx(
h.icon && /* @__PURE__ */ n("span", { className: "flex-shrink-0 mt-0.5 text-base", children: h.icon }),
/* @__PURE__ */ m("div", { className: "flex-1", children: [
/* @__PURE__ */ n(
"span",
{
className: x(
b.variant === "traditional" || b.variant === "web3" ? "text-gray-700 dark:text-gray-300" : "text-gray-600 dark:text-gray-400"
className: l(
g.variant === "traditional" || g.variant === "web3" ? "text-gray-700 dark:text-gray-300" : "text-gray-600 dark:text-gray-400"
),
children: k.text
children: h.text
}
),
k.subtext && /* @__PURE__ */ l.jsx("p", { className: "text-xs text-gray-500 dark:text-gray-500 mt-1", children: k.subtext })
h.subtext && /* @__PURE__ */ n("p", { className: "text-xs text-gray-500 dark:text-gray-500 mt-1", children: h.subtext })
] })
]
},
U
V
)) })

@@ -434,21 +174,21 @@ ]

);
return /* @__PURE__ */ l.jsx("div", { children: p }, b.title);
return /* @__PURE__ */ n("div", { children: x }, g.title);
};
return /* @__PURE__ */ l.jsxs("div", { className: x("space-y-8", t), children: [
(n || o) && /* @__PURE__ */ l.jsxs("div", { className: "text-center space-y-4", children: [
n && /* @__PURE__ */ l.jsx("h2", { className: "text-2xl sm:text-3xl font-bold text-gray-900 dark:text-white", children: n }),
o && /* @__PURE__ */ l.jsx("p", { className: "text-lg text-gray-600 dark:text-gray-400 max-w-2xl mx-auto", children: o })
return /* @__PURE__ */ m("div", { className: l("space-y-8", e), children: [
(a || o) && /* @__PURE__ */ m("div", { className: "text-center space-y-4", children: [
a && /* @__PURE__ */ n("h2", { className: "text-2xl sm:text-3xl font-bold text-gray-900 dark:text-white", children: a }),
o && /* @__PURE__ */ n("p", { className: "text-lg text-gray-600 dark:text-gray-400 max-w-2xl mx-auto", children: o })
] }),
/* @__PURE__ */ l.jsxs("div", { className: x(ue({ layout: a, spacing: r })), children: [
v(i, 0),
v(u, 1)
/* @__PURE__ */ m("div", { className: l(D({ layout: t, spacing: r })), children: [
b(i, 0),
b(s, 1)
] })
] });
}, B = (t, a, r, n) => ({
title: t,
}, C = (e, t, r, a) => ({
title: e,
variant: r,
items: a.map((o) => typeof o == "string" ? { text: o } : o),
...n
}), he = (t) => {
const a = [
items: t.map((o) => typeof o == "string" ? { text: o } : o),
...a
}), R = (e) => {
const t = [
{ text: "Create account with email/password", icon: "🔑" },

@@ -469,31 +209,31 @@ { text: "Remember multiple passwords", icon: "🧠" },

return {
traditional: B(
t?.traditionalTitle || "Traditional Email",
t?.traditionalItems || a,
traditional: C(
e?.traditionalTitle || "Traditional Email",
e?.traditionalItems || t,
"traditional",
{ badge: { text: t?.traditionalBadge || "Old Way", color: "red" } }
{ badge: { text: e?.traditionalBadge || "Old Way", color: "red" } }
),
web3: B(
t?.web3Title || "Web3 Email",
t?.web3Items || r,
web3: C(
e?.web3Title || "Web3 Email",
e?.web3Items || r,
"web3",
{ badge: { text: t?.web3Badge || "New Way", color: "green" } }
{ badge: { text: e?.web3Badge || "New Way", color: "green" } }
)
};
}, pe = ({
className: t,
children: a,
}, $ = ({
className: e,
children: t,
disabled: r = !1,
onClick: n,
onClick: a,
onTrack: o,
trackingLabel: i,
componentName: u = "UcontainerUstats"
componentName: s = "UcontainerUstats"
}) => {
const c = () => {
r || (o?.({ action: "click", trackingLabel: i, componentName: u }), n?.());
const d = () => {
r || (o?.({ action: "click", trackingLabel: i, componentName: s }), a?.());
};
return /* @__PURE__ */ l.jsx(
return /* @__PURE__ */ n(
"div",
{
className: x(
className: l(
"p-4 rounded-lg border transition-colors",

@@ -505,26 +245,26 @@ "bg-white dark:bg-gray-900",

"hover:bg-gray-50 dark:hover:bg-gray-800",
t
e
),
onClick: c,
onClick: d,
role: "region",
"aria-label": "UcontainerUstats",
children: a || "UcontainerUstats Component"
children: t || "UcontainerUstats Component"
}
);
}, ke = ({
className: t,
children: a,
}, L = ({
className: e,
children: t,
disabled: r = !1,
onClick: n,
onClick: a,
onTrack: o,
trackingLabel: i,
componentName: u = "UfeatureUcomparison"
componentName: s = "UfeatureUcomparison"
}) => {
const c = () => {
r || (o?.({ action: "click", trackingLabel: i, componentName: u }), n?.());
const d = () => {
r || (o?.({ action: "click", trackingLabel: i, componentName: s }), a?.());
};
return /* @__PURE__ */ l.jsx(
return /* @__PURE__ */ n(
"div",
{
className: x(
className: l(
"p-4 rounded-lg border transition-colors",

@@ -536,26 +276,26 @@ "bg-white dark:bg-gray-900",

"hover:bg-gray-50 dark:hover:bg-gray-800",
t
e
),
onClick: c,
onClick: d,
role: "region",
"aria-label": "UfeatureUcomparison",
children: a || "UfeatureUcomparison Component"
children: t || "UfeatureUcomparison Component"
}
);
}, we = ({
className: t,
children: a,
}, _ = ({
className: e,
children: t,
disabled: r = !1,
onClick: n,
onClick: a,
onTrack: o,
trackingLabel: i,
componentName: u = "UfeatureUimportance"
componentName: s = "UfeatureUimportance"
}) => {
const c = () => {
r || (o?.({ action: "click", trackingLabel: i, componentName: u }), n?.());
const d = () => {
r || (o?.({ action: "click", trackingLabel: i, componentName: s }), a?.());
};
return /* @__PURE__ */ l.jsx(
return /* @__PURE__ */ n(
"div",
{
className: x(
className: l(
"p-4 rounded-lg border transition-colors",

@@ -567,26 +307,26 @@ "bg-white dark:bg-gray-900",

"hover:bg-gray-50 dark:hover:bg-gray-800",
t
e
),
onClick: c,
onClick: d,
role: "region",
"aria-label": "UfeatureUimportance",
children: a || "UfeatureUimportance Component"
children: t || "UfeatureUimportance Component"
}
);
}, _e = ({
className: t,
children: a,
}, B = ({
className: e,
children: t,
disabled: r = !1,
onClick: n,
onClick: a,
onTrack: o,
trackingLabel: i,
componentName: u = "UmodelUprediction"
componentName: s = "UmodelUprediction"
}) => {
const c = () => {
r || (o?.({ action: "click", trackingLabel: i, componentName: u }), n?.());
const d = () => {
r || (o?.({ action: "click", trackingLabel: i, componentName: s }), a?.());
};
return /* @__PURE__ */ l.jsx(
return /* @__PURE__ */ n(
"div",
{
className: x(
className: l(
"p-4 rounded-lg border transition-colors",

@@ -598,14 +338,14 @@ "bg-white dark:bg-gray-900",

"hover:bg-gray-50 dark:hover:bg-gray-800",
t
e
),
onClick: c,
onClick: d,
role: "region",
"aria-label": "UmodelUprediction",
children: a || "UmodelUprediction Component"
children: t || "UmodelUprediction Component"
}
);
}, Ee = ({ className: t, children: a, disabled: r }) => /* @__PURE__ */ l.jsx(
}, E = ({ className: e, children: t, disabled: r }) => /* @__PURE__ */ n(
"div",
{
className: x(
className: l(
"p-4 rounded-lg border transition-colors",

@@ -616,24 +356,24 @@ "bg-white dark:bg-gray-900",

r && "opacity-50 cursor-not-allowed",
t
e
),
role: "region",
"aria-label": "QaReport",
children: a || "QaReport Component"
children: t || "QaReport Component"
}
), Re = ({
className: t,
children: a,
), F = ({
className: e,
children: t,
disabled: r = !1,
onClick: n,
onClick: a,
onTrack: o,
trackingLabel: i,
componentName: u = "UreportUbuilder"
componentName: s = "UreportUbuilder"
}) => {
const c = () => {
r || (o?.({ action: "click", trackingLabel: i, componentName: u }), n?.());
const d = () => {
r || (o?.({ action: "click", trackingLabel: i, componentName: s }), a?.());
};
return /* @__PURE__ */ l.jsx(
return /* @__PURE__ */ n(
"div",
{
className: x(
className: l(
"p-4 rounded-lg border transition-colors",

@@ -645,18 +385,18 @@ "bg-white dark:bg-gray-900",

"hover:bg-gray-50 dark:hover:bg-gray-800",
t
e
),
onClick: c,
onClick: d,
role: "region",
"aria-label": "UreportUbuilder",
children: a || "UreportUbuilder Component"
children: t || "UreportUbuilder Component"
}
);
}, je = ({
className: t,
children: a,
}, P = ({
className: e,
children: t,
disabled: r
}) => /* @__PURE__ */ l.jsx(
}) => /* @__PURE__ */ n(
"div",
{
className: x(
className: l(
"p-4 rounded-lg border transition-colors",

@@ -667,33 +407,33 @@ "bg-white dark:bg-gray-900",

r && "opacity-50 cursor-not-allowed",
t
e
),
role: "region",
"aria-label": "SupportDashboard",
children: a || "SupportDashboard Component"
children: t || "SupportDashboard Component"
}
), Te = ({
value: t,
previousValue: a,
), Q = ({
value: e,
previousValue: t,
format: r = "percentage",
currency: n = "$",
currency: a = "$",
showArrow: o = !0,
size: i = "md",
className: u
className: s
}) => {
const c = t - a, _ = a !== 0 ? c / a * 100 : 0, f = c >= 0, y = () => {
const d = e - t, v = t !== 0 ? d / t * 100 : 0, c = d >= 0, u = () => {
switch (r) {
case "percentage":
return `${Math.abs(_).toFixed(1)}%`;
return `${Math.abs(v).toFixed(1)}%`;
case "currency":
return `${n}${Math.abs(c).toFixed(2)}`;
return `${a}${Math.abs(d).toFixed(2)}`;
case "number":
return Math.abs(c).toFixed(0);
return Math.abs(d).toFixed(0);
default:
return "";
}
}, h = {
}, y = {
sm: "text-xs",
md: "text-sm",
lg: "text-base"
}, v = {
}, b = {
sm: "w-3 h-3",

@@ -703,20 +443,20 @@ md: "w-4 h-4",

};
return /* @__PURE__ */ l.jsxs(
return /* @__PURE__ */ m(
"div",
{
className: x(
className: l(
"inline-flex items-center gap-1 font-semibold",
f ? "text-green-600 dark:text-green-400" : "text-red-600 dark:text-red-400",
h[i],
u
c ? "text-green-600 dark:text-green-400" : "text-red-600 dark:text-red-400",
y[i],
s
),
children: [
o && /* @__PURE__ */ l.jsx(
o && /* @__PURE__ */ n(
"svg",
{
className: x(v[i]),
className: l(b[i]),
fill: "none",
stroke: "currentColor",
viewBox: "0 0 24 24",
children: f ? /* @__PURE__ */ l.jsx(
children: c ? /* @__PURE__ */ n(
"path",

@@ -729,3 +469,3 @@ {

}
) : /* @__PURE__ */ l.jsx(
) : /* @__PURE__ */ n(
"path",

@@ -741,5 +481,5 @@ {

),
/* @__PURE__ */ l.jsxs("span", { children: [
f ? "+" : "-",
y()
/* @__PURE__ */ m("span", { children: [
c ? "+" : "-",
u()
] })

@@ -751,13 +491,13 @@ ]

export {
ye as ComparisonSection,
Ee as QaReport,
je as SupportDashboard,
Te as TrendIndicator,
pe as UcontainerUstats,
ke as UfeatureUcomparison,
we as UfeatureUimportance,
_e as UmodelUprediction,
Re as UreportUbuilder,
B as createComparisonData,
he as createEmailComparisonData
O as ComparisonSection,
E as QaReport,
P as SupportDashboard,
Q as TrendIndicator,
$ as UcontainerUstats,
L as UfeatureUcomparison,
_ as UfeatureUimportance,
B as UmodelUprediction,
F as UreportUbuilder,
C as createComparisonData,
R as createEmailComparisonData
};

@@ -1,6 +0,1 @@

(function(m,T){typeof exports=="object"&&typeof module<"u"?T(exports,require("react"),require("@sudobility/components")):typeof define=="function"&&define.amd?define(["exports","react","@sudobility/components"],T):(m=typeof globalThis<"u"?globalThis:m||self,T(m.Components={},m.React,m.components))})(this,(function(m,T,v){"use strict";var U={exports:{}},C={};var W;function Z(){if(W)return C;W=1;var t=Symbol.for("react.transitional.element"),a=Symbol.for("react.fragment");function r(n,o,l){var u=null;if(l!==void 0&&(u=""+l),o.key!==void 0&&(u=""+o.key),"key"in o){l={};for(var c in o)c!=="key"&&(l[c]=o[c])}else l=o;return o=l.ref,{$$typeof:t,type:n,key:u,ref:o!==void 0?o:null,props:l}}return C.Fragment=a,C.jsx=r,C.jsxs=r,C}var N={};var F;function K(){return F||(F=1,process.env.NODE_ENV!=="production"&&(function(){function t(e){if(e==null)return null;if(typeof e=="function")return e.$$typeof===Ee?null:e.displayName||e.name||null;if(typeof e=="string")return e;switch(e){case p:return"Fragment";case P:return"Profiler";case w:return"StrictMode";case ke:return"Suspense";case pe:return"SuspenseList";case _e:return"Activity"}if(typeof e=="object")switch(typeof e.tag=="number"&&console.error("Received an unexpected object in getComponentNameFromType(). This is likely a bug in React. Please file an issue."),e.$$typeof){case R:return"Portal";case ye:return e.displayName||"Context";case ve:return(e._context.displayName||"Context")+".Consumer";case he:var i=e.render;return e=e.displayName,e||(e=i.displayName||i.name||"",e=e!==""?"ForwardRef("+e+")":"ForwardRef"),e;case we:return i=e.displayName||null,i!==null?i:t(e.type)||"Memo";case D:i=e._payload,e=e._init;try{return t(e(i))}catch{}}return null}function a(e){return""+e}function r(e){try{a(e);var i=!1}catch{i=!0}if(i){i=console;var d=i.error,g=typeof Symbol=="function"&&Symbol.toStringTag&&e[Symbol.toStringTag]||e.constructor.name||"Object";return d.call(i,"The provided key is an unsupported type %s. This value must be coerced to a string before using it here.",g),a(e)}}function n(e){if(e===p)return"<>";if(typeof e=="object"&&e!==null&&e.$$typeof===D)return"<...>";try{var i=t(e);return i?"<"+i+">":"<...>"}catch{return"<...>"}}function o(){var e=I.A;return e===null?null:e.getOwner()}function l(){return Error("react-stack-top-frame")}function u(e){if(J.call(e,"key")){var i=Object.getOwnPropertyDescriptor(e,"key").get;if(i&&i.isReactWarning)return!1}return e.key!==void 0}function c(e,i){function d(){G||(G=!0,console.error("%s: `key` is not a prop. Trying to access it will result in `undefined` being returned. If you need to access the same value within the child component, you should pass it as a different prop. (https://react.dev/link/special-props)",i))}d.isReactWarning=!0,Object.defineProperty(e,"key",{get:d,configurable:!0})}function E(){var e=t(this.type);return B[e]||(B[e]=!0,console.error("Accessing element.ref was removed in React 19. ref is now a regular prop. It will be removed from the JSX Element type in a future release.")),e=this.props.ref,e!==void 0?e:null}function b(e,i,d,g,S,Y){var f=d.ref;return e={$$typeof:x,type:e,key:i,props:d,_owner:g},(f!==void 0?f:null)!==null?Object.defineProperty(e,"ref",{enumerable:!1,get:E}):Object.defineProperty(e,"ref",{enumerable:!1,value:null}),e._store={},Object.defineProperty(e._store,"validated",{configurable:!1,enumerable:!1,writable:!0,value:0}),Object.defineProperty(e,"_debugInfo",{configurable:!1,enumerable:!1,writable:!0,value:null}),Object.defineProperty(e,"_debugStack",{configurable:!1,enumerable:!1,writable:!0,value:S}),Object.defineProperty(e,"_debugTask",{configurable:!1,enumerable:!1,writable:!0,value:Y}),Object.freeze&&(Object.freeze(e.props),Object.freeze(e)),e}function h(e,i,d,g,S,Y){var f=i.children;if(f!==void 0)if(g)if(Re(f)){for(g=0;g<f.length;g++)k(f[g]);Object.freeze&&Object.freeze(f)}else console.error("React.jsx: Static children should always be an array. You are likely explicitly calling React.jsxs or React.jsxDEV. Use the Babel transform instead.");else k(f);if(J.call(i,"key")){f=t(e);var j=Object.keys(i).filter(function(je){return je!=="key"});g=0<j.length?"{key: someKey, "+j.join(": ..., ")+": ...}":"{key: someKey}",H[f+g]||(j=0<j.length?"{"+j.join(": ..., ")+": ...}":"{}",console.error(`A props object containing a "key" prop is being spread into JSX:
let props = %s;
<%s {...props} />
React keys must be passed directly to JSX without using spread:
let props = %s;
<%s key={someKey} {...props} />`,g,f,j,f),H[f+g]=!0)}if(f=null,d!==void 0&&(r(d),f=""+d),u(i)&&(r(i.key),f=""+i.key),"key"in i){d={};for(var $ in i)$!=="key"&&(d[$]=i[$])}else d=i;return f&&c(d,typeof e=="function"?e.displayName||e.name||"Unknown":e),b(e,f,d,o(),S,Y)}function k(e){y(e)?e._store&&(e._store.validated=1):typeof e=="object"&&e!==null&&e.$$typeof===D&&(e._payload.status==="fulfilled"?y(e._payload.value)&&e._payload.value._store&&(e._payload.value._store.validated=1):e._store&&(e._store.validated=1))}function y(e){return typeof e=="object"&&e!==null&&e.$$typeof===x}var _=T,x=Symbol.for("react.transitional.element"),R=Symbol.for("react.portal"),p=Symbol.for("react.fragment"),w=Symbol.for("react.strict_mode"),P=Symbol.for("react.profiler"),ve=Symbol.for("react.consumer"),ye=Symbol.for("react.context"),he=Symbol.for("react.forward_ref"),ke=Symbol.for("react.suspense"),pe=Symbol.for("react.suspense_list"),we=Symbol.for("react.memo"),D=Symbol.for("react.lazy"),_e=Symbol.for("react.activity"),Ee=Symbol.for("react.client.reference"),I=_.__CLIENT_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE,J=Object.prototype.hasOwnProperty,Re=Array.isArray,V=console.createTask?console.createTask:function(){return null};_={react_stack_bottom_frame:function(e){return e()}};var G,B={},Q=_.react_stack_bottom_frame.bind(_,l)(),X=V(n(l)),H={};N.Fragment=p,N.jsx=function(e,i,d){var g=1e4>I.recentlyCreatedOwnerStacks++;return h(e,i,d,!1,g?Error("react-stack-top-frame"):Q,g?V(n(e)):X)},N.jsxs=function(e,i,d){var g=1e4>I.recentlyCreatedOwnerStacks++;return h(e,i,d,!0,g?Error("react-stack-top-frame"):Q,g?V(n(e)):X)}})()),N}var M;function ee(){return M||(M=1,process.env.NODE_ENV==="production"?U.exports=Z():U.exports=K()),U.exports}var s=ee();function L(t){var a,r,n="";if(typeof t=="string"||typeof t=="number")n+=t;else if(typeof t=="object")if(Array.isArray(t)){var o=t.length;for(a=0;a<o;a++)t[a]&&(r=L(t[a]))&&(n&&(n+=" "),n+=r)}else for(r in t)t[r]&&(n&&(n+=" "),n+=r);return n}function re(){for(var t,a,r=0,n="",o=arguments.length;r<o;r++)(t=arguments[r])&&(a=L(t))&&(n&&(n+=" "),n+=a);return n}const q=t=>typeof t=="boolean"?`${t}`:t===0?"0":t,z=re,O=(t,a)=>r=>{var n;if(a?.variants==null)return z(t,r?.class,r?.className);const{variants:o,defaultVariants:l}=a,u=Object.keys(o).map(b=>{const h=r?.[b],k=l?.[b];if(h===null)return null;const y=q(h)||q(k);return o[b][y]}),c=r&&Object.entries(r).reduce((b,h)=>{let[k,y]=h;return y===void 0||(b[k]=y),b},{}),E=a==null||(n=a.compoundVariants)===null||n===void 0?void 0:n.reduce((b,h)=>{let{class:k,className:y,..._}=h;return Object.entries(_).every(x=>{let[R,p]=x;return Array.isArray(p)?p.includes({...l,...c}[R]):{...l,...c}[R]===p})?[...b,k,y]:b},[]);return z(t,u,E,r?.class,r?.className)},te=O("grid gap-8",{variants:{layout:{grid:"grid-cols-1 md:grid-cols-2",stacked:"grid-cols-1 space-y-8",cards:"grid-cols-1 md:grid-cols-2 gap-6"},spacing:{sm:"gap-4",md:"gap-8",lg:"gap-12"}},defaultVariants:{layout:"grid",spacing:"md"}}),ae=O("rounded-xl p-6 transition-all duration-300",{variants:{variant:{traditional:"bg-red-50 dark:bg-red-900/20 border-2 border-red-100 dark:border-red-800/30 hover:border-red-200 dark:hover:border-red-700/50",web3:"bg-green-50 dark:bg-green-900/20 border-2 border-green-100 dark:border-green-800/30 hover:border-green-200 dark:hover:border-green-700/50",neutral:"bg-gray-50 dark:bg-gray-800/50 border-2 border-gray-100 dark:border-gray-700/30 hover:border-gray-200 dark:hover:border-gray-600/50",elevated:"bg-white dark:bg-gray-800 shadow-lg hover:shadow-xl border border-gray-200 dark:border-gray-700"},animation:{none:"",hover:"hover:transform hover:scale-[1.02]",float:"hover:-translate-y-1"}},defaultVariants:{variant:"traditional",animation:"hover"}}),ne=O("text-lg font-bold mb-4 flex items-center gap-3",{variants:{variant:{traditional:"text-red-600 dark:text-red-400",web3:"text-green-600 dark:text-green-400",neutral:"text-gray-900 dark:text-white",elevated:"text-gray-900 dark:text-white"}},defaultVariants:{variant:"traditional"}}),oe={traditional:"❌",web3:"✅",neutral:"ℹ️",elevated:"⭐"},ie={red:"bg-red-100 text-red-800 dark:bg-red-900/30 dark:text-red-300",green:"bg-green-100 text-green-800 dark:bg-green-900/30 dark:text-green-300",blue:"bg-blue-100 text-blue-800 dark:bg-blue-900/30 dark:text-blue-300",gray:"bg-gray-100 text-gray-800 dark:bg-gray-800 dark:text-gray-300"},se=({className:t,layout:a="grid",spacing:r="md",title:n,subtitle:o,traditional:l,web3:u,cardAnimation:c="hover",animate:E=!0,animationDelay:b=0,traditionalIcon:h,web3Icon:k})=>{const y=(x,R)=>{const p=s.jsxs("div",{className:v.cn(ae({variant:x.variant,animation:c})),children:[s.jsxs("div",{className:v.cn(ne({variant:x.variant})),children:[s.jsx("span",{className:"text-2xl",children:x.icon||(R===0?h:k)||oe[x.variant]}),s.jsx("div",{className:"flex-1",children:s.jsxs("div",{className:"flex items-center gap-2",children:[s.jsx("span",{children:x.title}),x.badge&&s.jsx("span",{className:v.cn("text-xs font-medium px-2 py-1 rounded-full",ie[x.badge.color||"gray"]),children:x.badge.text})]})})]}),s.jsx("ul",{className:"space-y-3",children:x.items.map((w,P)=>s.jsxs("li",{className:v.cn("flex items-start gap-3 text-sm leading-relaxed",w.highlight&&"font-medium"),children:[w.icon&&s.jsx("span",{className:"flex-shrink-0 mt-0.5 text-base",children:w.icon}),s.jsxs("div",{className:"flex-1",children:[s.jsx("span",{className:v.cn(x.variant==="traditional"||x.variant==="web3"?"text-gray-700 dark:text-gray-300":"text-gray-600 dark:text-gray-400"),children:w.text}),w.subtext&&s.jsx("p",{className:"text-xs text-gray-500 dark:text-gray-500 mt-1",children:w.subtext})]})]},P))})]});return s.jsx("div",{children:p},x.title)};return s.jsxs("div",{className:v.cn("space-y-8",t),children:[(n||o)&&s.jsxs("div",{className:"text-center space-y-4",children:[n&&s.jsx("h2",{className:"text-2xl sm:text-3xl font-bold text-gray-900 dark:text-white",children:n}),o&&s.jsx("p",{className:"text-lg text-gray-600 dark:text-gray-400 max-w-2xl mx-auto",children:o})]}),s.jsxs("div",{className:v.cn(te({layout:a,spacing:r})),children:[y(l,0),y(u,1)]})]})},A=(t,a,r,n)=>({title:t,variant:r,items:a.map(o=>typeof o=="string"?{text:o}:o),...n}),le=t=>{const a=[{text:"Create account with email/password",icon:"🔑"},{text:"Remember multiple passwords",icon:"🧠"},{text:"Verify email address",icon:"📧"},{text:"Risk of password theft",icon:"⚠️"},{text:"Data stored on company servers",icon:"🏢"},{text:"Account can be locked/suspended",icon:"🔒"}],r=[{text:"Connect your wallet",icon:"🔗"},{text:"No passwords needed",icon:"🚫"},{text:"Instant authentication",icon:"⚡"},{text:"Cryptographically secure",icon:"🔐"},{text:"You own your data",icon:"👑"},{text:"Censorship resistant",icon:"🛡️"}];return{traditional:A(t?.traditionalTitle||"Traditional Email",t?.traditionalItems||a,"traditional",{badge:{text:t?.traditionalBadge||"Old Way",color:"red"}}),web3:A(t?.web3Title||"Web3 Email",t?.web3Items||r,"web3",{badge:{text:t?.web3Badge||"New Way",color:"green"}})}},ce=({className:t,children:a,disabled:r=!1,onClick:n,onTrack:o,trackingLabel:l,componentName:u="UcontainerUstats"})=>{const c=()=>{r||(o?.({action:"click",trackingLabel:l,componentName:u}),n?.())};return s.jsx("div",{className:v.cn("p-4 rounded-lg border transition-colors","bg-white dark:bg-gray-900","border-gray-200 dark:border-gray-700","text-gray-900 dark:text-white",r&&"opacity-50 cursor-not-allowed","hover:bg-gray-50 dark:hover:bg-gray-800",t),onClick:c,role:"region","aria-label":"UcontainerUstats",children:a||"UcontainerUstats Component"})},de=({className:t,children:a,disabled:r=!1,onClick:n,onTrack:o,trackingLabel:l,componentName:u="UfeatureUcomparison"})=>{const c=()=>{r||(o?.({action:"click",trackingLabel:l,componentName:u}),n?.())};return s.jsx("div",{className:v.cn("p-4 rounded-lg border transition-colors","bg-white dark:bg-gray-900","border-gray-200 dark:border-gray-700","text-gray-900 dark:text-white",r&&"opacity-50 cursor-not-allowed","hover:bg-gray-50 dark:hover:bg-gray-800",t),onClick:c,role:"region","aria-label":"UfeatureUcomparison",children:a||"UfeatureUcomparison Component"})},ue=({className:t,children:a,disabled:r=!1,onClick:n,onTrack:o,trackingLabel:l,componentName:u="UfeatureUimportance"})=>{const c=()=>{r||(o?.({action:"click",trackingLabel:l,componentName:u}),n?.())};return s.jsx("div",{className:v.cn("p-4 rounded-lg border transition-colors","bg-white dark:bg-gray-900","border-gray-200 dark:border-gray-700","text-gray-900 dark:text-white",r&&"opacity-50 cursor-not-allowed","hover:bg-gray-50 dark:hover:bg-gray-800",t),onClick:c,role:"region","aria-label":"UfeatureUimportance",children:a||"UfeatureUimportance Component"})},ge=({className:t,children:a,disabled:r=!1,onClick:n,onTrack:o,trackingLabel:l,componentName:u="UmodelUprediction"})=>{const c=()=>{r||(o?.({action:"click",trackingLabel:l,componentName:u}),n?.())};return s.jsx("div",{className:v.cn("p-4 rounded-lg border transition-colors","bg-white dark:bg-gray-900","border-gray-200 dark:border-gray-700","text-gray-900 dark:text-white",r&&"opacity-50 cursor-not-allowed","hover:bg-gray-50 dark:hover:bg-gray-800",t),onClick:c,role:"region","aria-label":"UmodelUprediction",children:a||"UmodelUprediction Component"})},fe=({className:t,children:a,disabled:r})=>s.jsx("div",{className:v.cn("p-4 rounded-lg border transition-colors","bg-white dark:bg-gray-900","border-gray-200 dark:border-gray-700","text-gray-900 dark:text-white",r&&"opacity-50 cursor-not-allowed",t),role:"region","aria-label":"QaReport",children:a||"QaReport Component"}),me=({className:t,children:a,disabled:r=!1,onClick:n,onTrack:o,trackingLabel:l,componentName:u="UreportUbuilder"})=>{const c=()=>{r||(o?.({action:"click",trackingLabel:l,componentName:u}),n?.())};return s.jsx("div",{className:v.cn("p-4 rounded-lg border transition-colors","bg-white dark:bg-gray-900","border-gray-200 dark:border-gray-700","text-gray-900 dark:text-white",r&&"opacity-50 cursor-not-allowed","hover:bg-gray-50 dark:hover:bg-gray-800",t),onClick:c,role:"region","aria-label":"UreportUbuilder",children:a||"UreportUbuilder Component"})},be=({className:t,children:a,disabled:r})=>s.jsx("div",{className:v.cn("p-4 rounded-lg border transition-colors","bg-white dark:bg-gray-900","border-gray-200 dark:border-gray-700","text-gray-900 dark:text-white",r&&"opacity-50 cursor-not-allowed",t),role:"region","aria-label":"SupportDashboard",children:a||"SupportDashboard Component"}),xe=({value:t,previousValue:a,format:r="percentage",currency:n="$",showArrow:o=!0,size:l="md",className:u})=>{const c=t-a,E=a!==0?c/a*100:0,b=c>=0,h=()=>{switch(r){case"percentage":return`${Math.abs(E).toFixed(1)}%`;case"currency":return`${n}${Math.abs(c).toFixed(2)}`;case"number":return Math.abs(c).toFixed(0);default:return""}},k={sm:"text-xs",md:"text-sm",lg:"text-base"},y={sm:"w-3 h-3",md:"w-4 h-4",lg:"w-5 h-5"};return s.jsxs("div",{className:v.cn("inline-flex items-center gap-1 font-semibold",b?"text-green-600 dark:text-green-400":"text-red-600 dark:text-red-400",k[l],u),children:[o&&s.jsx("svg",{className:v.cn(y[l]),fill:"none",stroke:"currentColor",viewBox:"0 0 24 24",children:b?s.jsx("path",{strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:2,d:"M5 10l7-7m0 0l7 7m-7-7v18"}):s.jsx("path",{strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:2,d:"M19 14l-7 7m0 0l-7-7m7 7V3"})}),s.jsxs("span",{children:[b?"+":"-",h()]})]})};m.ComparisonSection=se,m.QaReport=fe,m.SupportDashboard=be,m.TrendIndicator=xe,m.UcontainerUstats=ce,m.UfeatureUcomparison=de,m.UfeatureUimportance=ue,m.UmodelUprediction=ge,m.UreportUbuilder=me,m.createComparisonData=A,m.createEmailComparisonData=le,Object.defineProperty(m,Symbol.toStringTag,{value:"Module"})}));
(function(l,t){typeof exports=="object"&&typeof module<"u"?t(exports,require("react/jsx-runtime"),require("@sudobility/components")):typeof define=="function"&&define.amd?define(["exports","react/jsx-runtime","@sudobility/components"],t):(l=typeof globalThis<"u"?globalThis:l||self,t(l.Components={},l.ReactJSXRuntime,l.SudobilityComponents))})(this,(function(l,t,s){"use strict";function U(e){var a,r,o="";if(typeof e=="string"||typeof e=="number")o+=e;else if(typeof e=="object")if(Array.isArray(e)){var n=e.length;for(a=0;a<n;a++)e[a]&&(r=U(e[a]))&&(o&&(o+=" "),o+=r)}else for(r in e)e[r]&&(o&&(o+=" "),o+=r);return o}function V(){for(var e,a,r=0,o="",n=arguments.length;r<n;r++)(e=arguments[r])&&(a=U(e))&&(o&&(o+=" "),o+=a);return o}const w=e=>typeof e=="boolean"?`${e}`:e===0?"0":e,C=V,f=(e,a)=>r=>{var o;if(a?.variants==null)return C(e,r?.class,r?.className);const{variants:n,defaultVariants:i}=a,c=Object.keys(n).map(g=>{const u=r?.[g],h=i?.[g];if(u===null)return null;const y=w(u)||w(h);return n[g][y]}),d=r&&Object.entries(r).reduce((g,u)=>{let[h,y]=u;return y===void 0||(g[h]=y),g},{}),m=a==null||(o=a.compoundVariants)===null||o===void 0?void 0:o.reduce((g,u)=>{let{class:h,className:y,...N}=u;return Object.entries(N).every(b=>{let[k,v]=b;return Array.isArray(v)?v.includes({...i,...d}[k]):{...i,...d}[k]===v})?[...g,h,y]:g},[]);return C(e,c,m,r?.class,r?.className)},S=f("grid gap-8",{variants:{layout:{grid:"grid-cols-1 md:grid-cols-2",stacked:"grid-cols-1 space-y-8",cards:"grid-cols-1 md:grid-cols-2 gap-6"},spacing:{sm:"gap-4",md:"gap-8",lg:"gap-12"}},defaultVariants:{layout:"grid",spacing:"md"}}),j=f("rounded-xl p-6 transition-all duration-300",{variants:{variant:{traditional:"bg-red-50 dark:bg-red-900/20 border-2 border-red-100 dark:border-red-800/30 hover:border-red-200 dark:hover:border-red-700/50",web3:"bg-green-50 dark:bg-green-900/20 border-2 border-green-100 dark:border-green-800/30 hover:border-green-200 dark:hover:border-green-700/50",neutral:"bg-gray-50 dark:bg-gray-800/50 border-2 border-gray-100 dark:border-gray-700/30 hover:border-gray-200 dark:hover:border-gray-600/50",elevated:"bg-white dark:bg-gray-800 shadow-lg hover:shadow-xl border border-gray-200 dark:border-gray-700"},animation:{none:"",hover:"hover:transform hover:scale-[1.02]",float:"hover:-translate-y-1"}},defaultVariants:{variant:"traditional",animation:"hover"}}),D=f("text-lg font-bold mb-4 flex items-center gap-3",{variants:{variant:{traditional:"text-red-600 dark:text-red-400",web3:"text-green-600 dark:text-green-400",neutral:"text-gray-900 dark:text-white",elevated:"text-gray-900 dark:text-white"}},defaultVariants:{variant:"traditional"}}),T={traditional:"❌",web3:"✅",neutral:"ℹ️",elevated:"⭐"},I={red:"bg-red-100 text-red-800 dark:bg-red-900/30 dark:text-red-300",green:"bg-green-100 text-green-800 dark:bg-green-900/30 dark:text-green-300",blue:"bg-blue-100 text-blue-800 dark:bg-blue-900/30 dark:text-blue-300",gray:"bg-gray-100 text-gray-800 dark:bg-gray-800 dark:text-gray-300"},W=({className:e,layout:a="grid",spacing:r="md",title:o,subtitle:n,traditional:i,web3:c,cardAnimation:d="hover",animate:m=!0,animationDelay:g=0,traditionalIcon:u,web3Icon:h})=>{const y=(b,k)=>{const v=t.jsxs("div",{className:s.cn(j({variant:b.variant,animation:d})),children:[t.jsxs("div",{className:s.cn(D({variant:b.variant})),children:[t.jsx("span",{className:"text-2xl",children:b.icon||(k===0?u:h)||T[b.variant]}),t.jsx("div",{className:"flex-1",children:t.jsxs("div",{className:"flex items-center gap-2",children:[t.jsx("span",{children:b.title}),b.badge&&t.jsx("span",{className:s.cn("text-xs font-medium px-2 py-1 rounded-full",I[b.badge.color||"gray"]),children:b.badge.text})]})})]}),t.jsx("ul",{className:"space-y-3",children:b.items.map((x,B)=>t.jsxs("li",{className:s.cn("flex items-start gap-3 text-sm leading-relaxed",x.highlight&&"font-medium"),children:[x.icon&&t.jsx("span",{className:"flex-shrink-0 mt-0.5 text-base",children:x.icon}),t.jsxs("div",{className:"flex-1",children:[t.jsx("span",{className:s.cn(b.variant==="traditional"||b.variant==="web3"?"text-gray-700 dark:text-gray-300":"text-gray-600 dark:text-gray-400"),children:x.text}),x.subtext&&t.jsx("p",{className:"text-xs text-gray-500 dark:text-gray-500 mt-1",children:x.subtext})]})]},B))})]});return t.jsx("div",{children:v},b.title)};return t.jsxs("div",{className:s.cn("space-y-8",e),children:[(o||n)&&t.jsxs("div",{className:"text-center space-y-4",children:[o&&t.jsx("h2",{className:"text-2xl sm:text-3xl font-bold text-gray-900 dark:text-white",children:o}),n&&t.jsx("p",{className:"text-lg text-gray-600 dark:text-gray-400 max-w-2xl mx-auto",children:n})]}),t.jsxs("div",{className:s.cn(S({layout:a,spacing:r})),children:[y(i,0),y(c,1)]})]})},p=(e,a,r,o)=>({title:e,variant:r,items:a.map(n=>typeof n=="string"?{text:n}:n),...o}),M=e=>{const a=[{text:"Create account with email/password",icon:"🔑"},{text:"Remember multiple passwords",icon:"🧠"},{text:"Verify email address",icon:"📧"},{text:"Risk of password theft",icon:"⚠️"},{text:"Data stored on company servers",icon:"🏢"},{text:"Account can be locked/suspended",icon:"🔒"}],r=[{text:"Connect your wallet",icon:"🔗"},{text:"No passwords needed",icon:"🚫"},{text:"Instant authentication",icon:"⚡"},{text:"Cryptographically secure",icon:"🔐"},{text:"You own your data",icon:"👑"},{text:"Censorship resistant",icon:"🛡️"}];return{traditional:p(e?.traditionalTitle||"Traditional Email",e?.traditionalItems||a,"traditional",{badge:{text:e?.traditionalBadge||"Old Way",color:"red"}}),web3:p(e?.web3Title||"Web3 Email",e?.web3Items||r,"web3",{badge:{text:e?.web3Badge||"New Way",color:"green"}})}},O=({className:e,children:a,disabled:r=!1,onClick:o,onTrack:n,trackingLabel:i,componentName:c="UcontainerUstats"})=>{const d=()=>{r||(n?.({action:"click",trackingLabel:i,componentName:c}),o?.())};return t.jsx("div",{className:s.cn("p-4 rounded-lg border transition-colors","bg-white dark:bg-gray-900","border-gray-200 dark:border-gray-700","text-gray-900 dark:text-white",r&&"opacity-50 cursor-not-allowed","hover:bg-gray-50 dark:hover:bg-gray-800",e),onClick:d,role:"region","aria-label":"UcontainerUstats",children:a||"UcontainerUstats Component"})},A=({className:e,children:a,disabled:r=!1,onClick:o,onTrack:n,trackingLabel:i,componentName:c="UfeatureUcomparison"})=>{const d=()=>{r||(n?.({action:"click",trackingLabel:i,componentName:c}),o?.())};return t.jsx("div",{className:s.cn("p-4 rounded-lg border transition-colors","bg-white dark:bg-gray-900","border-gray-200 dark:border-gray-700","text-gray-900 dark:text-white",r&&"opacity-50 cursor-not-allowed","hover:bg-gray-50 dark:hover:bg-gray-800",e),onClick:d,role:"region","aria-label":"UfeatureUcomparison",children:a||"UfeatureUcomparison Component"})},$=({className:e,children:a,disabled:r=!1,onClick:o,onTrack:n,trackingLabel:i,componentName:c="UfeatureUimportance"})=>{const d=()=>{r||(n?.({action:"click",trackingLabel:i,componentName:c}),o?.())};return t.jsx("div",{className:s.cn("p-4 rounded-lg border transition-colors","bg-white dark:bg-gray-900","border-gray-200 dark:border-gray-700","text-gray-900 dark:text-white",r&&"opacity-50 cursor-not-allowed","hover:bg-gray-50 dark:hover:bg-gray-800",e),onClick:d,role:"region","aria-label":"UfeatureUimportance",children:a||"UfeatureUimportance Component"})},E=({className:e,children:a,disabled:r=!1,onClick:o,onTrack:n,trackingLabel:i,componentName:c="UmodelUprediction"})=>{const d=()=>{r||(n?.({action:"click",trackingLabel:i,componentName:c}),o?.())};return t.jsx("div",{className:s.cn("p-4 rounded-lg border transition-colors","bg-white dark:bg-gray-900","border-gray-200 dark:border-gray-700","text-gray-900 dark:text-white",r&&"opacity-50 cursor-not-allowed","hover:bg-gray-50 dark:hover:bg-gray-800",e),onClick:d,role:"region","aria-label":"UmodelUprediction",children:a||"UmodelUprediction Component"})},L=({className:e,children:a,disabled:r})=>t.jsx("div",{className:s.cn("p-4 rounded-lg border transition-colors","bg-white dark:bg-gray-900","border-gray-200 dark:border-gray-700","text-gray-900 dark:text-white",r&&"opacity-50 cursor-not-allowed",e),role:"region","aria-label":"QaReport",children:a||"QaReport Component"}),P=({className:e,children:a,disabled:r=!1,onClick:o,onTrack:n,trackingLabel:i,componentName:c="UreportUbuilder"})=>{const d=()=>{r||(n?.({action:"click",trackingLabel:i,componentName:c}),o?.())};return t.jsx("div",{className:s.cn("p-4 rounded-lg border transition-colors","bg-white dark:bg-gray-900","border-gray-200 dark:border-gray-700","text-gray-900 dark:text-white",r&&"opacity-50 cursor-not-allowed","hover:bg-gray-50 dark:hover:bg-gray-800",e),onClick:d,role:"region","aria-label":"UreportUbuilder",children:a||"UreportUbuilder Component"})},Q=({className:e,children:a,disabled:r})=>t.jsx("div",{className:s.cn("p-4 rounded-lg border transition-colors","bg-white dark:bg-gray-900","border-gray-200 dark:border-gray-700","text-gray-900 dark:text-white",r&&"opacity-50 cursor-not-allowed",e),role:"region","aria-label":"SupportDashboard",children:a||"SupportDashboard Component"}),_=({value:e,previousValue:a,format:r="percentage",currency:o="$",showArrow:n=!0,size:i="md",className:c})=>{const d=e-a,m=a!==0?d/a*100:0,g=d>=0,u=()=>{switch(r){case"percentage":return`${Math.abs(m).toFixed(1)}%`;case"currency":return`${o}${Math.abs(d).toFixed(2)}`;case"number":return Math.abs(d).toFixed(0);default:return""}},h={sm:"text-xs",md:"text-sm",lg:"text-base"},y={sm:"w-3 h-3",md:"w-4 h-4",lg:"w-5 h-5"};return t.jsxs("div",{className:s.cn("inline-flex items-center gap-1 font-semibold",g?"text-green-600 dark:text-green-400":"text-red-600 dark:text-red-400",h[i],c),children:[n&&t.jsx("svg",{className:s.cn(y[i]),fill:"none",stroke:"currentColor",viewBox:"0 0 24 24",children:g?t.jsx("path",{strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:2,d:"M5 10l7-7m0 0l7 7m-7-7v18"}):t.jsx("path",{strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:2,d:"M19 14l-7 7m0 0l-7-7m7 7V3"})}),t.jsxs("span",{children:[g?"+":"-",u()]})]})};l.ComparisonSection=W,l.QaReport=L,l.SupportDashboard=Q,l.TrendIndicator=_,l.UcontainerUstats=O,l.UfeatureUcomparison=A,l.UfeatureUimportance=$,l.UmodelUprediction=E,l.UreportUbuilder=P,l.createComparisonData=p,l.createEmailComparisonData=M,Object.defineProperty(l,Symbol.toStringTag,{value:"Module"})}));
{
"name": "@sudobility/analytics-components",
"version": "2.0.11",
"version": "2.0.13",
"description": "analytics UI components for React",

@@ -54,5 +54,3 @@ "type": "module",

"jsdom": "^27.0.1",
"prettier": "^3.6.2",
"react": "^19.2.0",
"react-dom": "^19.2.0",
"prettier": "^3.8.1",
"tailwind-merge": "^3.3.1",

@@ -59,0 +57,0 @@ "typescript": "^5.9.3",