@qtalo/qt-ui-library 0.1.18 → 0.1.20

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/index.js CHANGED
@@ -1,6 +1,6 @@
1
1
  import clsx from "clsx";
2
2
  import { twMerge } from "tailwind-merge";
3
- import { Children, Fragment, cloneElement, createContext, isValidElement, useCallback, useContext, useEffect, useLayoutEffect, useMemo, useRef, useState, useSyncExternalStore } from "react";
3
+ import { Children, Fragment, cloneElement, createContext, isValidElement, useCallback, useContext, useEffect, useId, useLayoutEffect, useMemo, useRef, useState, useSyncExternalStore } from "react";
4
4
  import { Fragment as Fragment$1, jsx, jsxs } from "react/jsx-runtime";
5
5
  import { createPortal } from "react-dom";
6
6
  import { tv } from "tailwind-variants";
@@ -326,20 +326,20 @@ var html$1 = freeze(/* @__PURE__ */ "a.abbr.acronym.address.area.article.aside.a
326
326
  function createDOMPurify() {
327
327
  let e = arguments.length > 0 && arguments[0] !== void 0 ? arguments[0] : getGlobal(), t = (e) => createDOMPurify(e);
328
328
  if (t.version = "3.3.1", t.removed = [], !e || !e.document || e.document.nodeType !== NODE_TYPE.document || !e.Element) return t.isSupported = !1, t;
329
- let { document: n } = e, r = n, i = r.currentScript, { DocumentFragment: a, HTMLTemplateElement: o, Node: s, Element: c, NodeFilter: l, NamedNodeMap: u = e.NamedNodeMap || e.MozNamedAttrMap, HTMLFormElement: f, DOMParser: p, trustedTypes: h } = e, g = c.prototype, O = lookupGetter(g, "cloneNode"), yo = lookupGetter(g, "remove"), bo = lookupGetter(g, "nextSibling"), A = lookupGetter(g, "childNodes"), xo = lookupGetter(g, "parentNode");
329
+ let { document: n } = e, r = n, i = r.currentScript, { DocumentFragment: a, HTMLTemplateElement: o, Node: s, Element: c, NodeFilter: l, NamedNodeMap: u = e.NamedNodeMap || e.MozNamedAttrMap, HTMLFormElement: f, DOMParser: p, trustedTypes: h } = e, Go = c.prototype, g = lookupGetter(Go, "cloneNode"), O = lookupGetter(Go, "remove"), Ko = lookupGetter(Go, "nextSibling"), qo = lookupGetter(Go, "childNodes"), Jo = lookupGetter(Go, "parentNode");
330
330
  if (typeof o == "function") {
331
331
  let e = n.createElement("template");
332
332
  e.content && e.content.ownerDocument && (n = e.content.ownerDocument);
333
333
  }
334
- let R, So = "", { implementation: Co, createNodeIterator: wo, createDocumentFragment: To, getElementsByTagName: Eo } = n, { importNode: Do } = r, Oo = _createHooksMap();
335
- t.isSupported = typeof entries == "function" && typeof xo == "function" && Co && Co.createHTMLDocument !== void 0;
336
- let { MUSTACHE_EXPR: ko, ERB_EXPR: Ao, TMPLIT_EXPR: jo, DATA_ATTR: Mo, ARIA_ATTR: No, IS_SCRIPT_OR_DATA: Po, ATTR_WHITESPACE: Fo, CUSTOM_ELEMENT: Io } = EXPRESSIONS, { IS_ALLOWED_URI: Lo } = EXPRESSIONS, B = null, Ro = addToSet({}, [
334
+ let A, R = "", { implementation: Yo, createNodeIterator: Xo, createDocumentFragment: Zo, getElementsByTagName: Qo } = n, { importNode: $o } = r, B = _createHooksMap();
335
+ t.isSupported = typeof entries == "function" && typeof Jo == "function" && Yo && Yo.createHTMLDocument !== void 0;
336
+ let { MUSTACHE_EXPR: es, ERB_EXPR: ts, TMPLIT_EXPR: ns, DATA_ATTR: rs, ARIA_ATTR: is, IS_SCRIPT_OR_DATA: as, ATTR_WHITESPACE: os, CUSTOM_ELEMENT: ss } = EXPRESSIONS, { IS_ALLOWED_URI: cs } = EXPRESSIONS, V = null, ls = addToSet({}, [
337
337
  ...html$1,
338
338
  ...svg$1,
339
339
  ...svgFilters,
340
340
  ...mathMl$1,
341
341
  ...text
342
- ]), V = null, zo = addToSet({}, [
342
+ ]), us = null, ds = addToSet({}, [
343
343
  ...html,
344
344
  ...svg,
345
345
  ...mathMl,
@@ -363,7 +363,7 @@ function createDOMPurify() {
363
363
  enumerable: !0,
364
364
  value: !1
365
365
  }
366
- })), Bo = null, Vo = null, Ho = Object.seal(create(null, {
366
+ })), fs = null, ps = null, ms = Object.seal(create(null, {
367
367
  tagCheck: {
368
368
  writable: !0,
369
369
  configurable: !1,
@@ -376,7 +376,7 @@ function createDOMPurify() {
376
376
  enumerable: !0,
377
377
  value: null
378
378
  }
379
- })), Uo = !0, Wo = !0, Go = !1, Ko = !0, qo = !1, Jo = !0, Yo = !1, Xo = !1, Zo = !1, Qo = !1, $o = !1, es = !1, ts = !0, ns = !1, rs = !0, is = !1, as = {}, os = null, ss = addToSet({}, [
379
+ })), hs = !0, gs = !0, _s = !1, vs = !0, ys = !1, bs = !0, xs = !1, Ss = !1, Cs = !1, ws = !1, Ts = !1, Es = !1, Ds = !0, Os = !1, ks = !0, As = !1, js = {}, Ms = null, Ns = addToSet({}, [
380
380
  "annotation-xml",
381
381
  "audio",
382
382
  "colgroup",
@@ -402,14 +402,14 @@ function createDOMPurify() {
402
402
  "title",
403
403
  "video",
404
404
  "xmp"
405
- ]), cs = null, ls = addToSet({}, [
405
+ ]), Ps = null, Fs = addToSet({}, [
406
406
  "audio",
407
407
  "video",
408
408
  "img",
409
409
  "source",
410
410
  "image",
411
411
  "track"
412
- ]), us = null, ds = addToSet({}, [
412
+ ]), Is = null, Ls = addToSet({}, [
413
413
  "alt",
414
414
  "class",
415
415
  "for",
@@ -424,58 +424,58 @@ function createDOMPurify() {
424
424
  "value",
425
425
  "style",
426
426
  "xmlns"
427
- ]), fs = "http://www.w3.org/1998/Math/MathML", ps = "http://www.w3.org/2000/svg", ms = "http://www.w3.org/1999/xhtml", hs = ms, gs = !1, _s = null, vs = addToSet({}, [
428
- fs,
429
- ps,
430
- ms
431
- ], stringToString), ys = addToSet({}, [
427
+ ]), Rs = "http://www.w3.org/1998/Math/MathML", zs = "http://www.w3.org/2000/svg", Bs = "http://www.w3.org/1999/xhtml", Vs = Bs, Hs = !1, Us = null, Ws = addToSet({}, [
428
+ Rs,
429
+ zs,
430
+ Bs
431
+ ], stringToString), Gs = addToSet({}, [
432
432
  "mi",
433
433
  "mo",
434
434
  "mn",
435
435
  "ms",
436
436
  "mtext"
437
- ]), bs = addToSet({}, ["annotation-xml"]), xs = addToSet({}, [
437
+ ]), Ks = addToSet({}, ["annotation-xml"]), qs = addToSet({}, [
438
438
  "title",
439
439
  "style",
440
440
  "font",
441
441
  "a",
442
442
  "script"
443
- ]), Ss = null, Cs = ["application/xhtml+xml", "text/html"], Y = null, ws = null, Ts = n.createElement("form"), Es = function(e) {
443
+ ]), Js = null, Ys = ["application/xhtml+xml", "text/html"], Y = null, Xs = null, Zs = n.createElement("form"), Qs = function(e) {
444
444
  return e instanceof RegExp || e instanceof Function;
445
- }, Ds = function() {
445
+ }, $s = function() {
446
446
  let e = arguments.length > 0 && arguments[0] !== void 0 ? arguments[0] : {};
447
- if (!(ws && ws === e)) {
448
- if ((!e || typeof e != "object") && (e = {}), e = clone(e), Ss = Cs.indexOf(e.PARSER_MEDIA_TYPE) === -1 ? "text/html" : e.PARSER_MEDIA_TYPE, Y = Ss === "application/xhtml+xml" ? stringToString : stringToLowerCase, B = objectHasOwnProperty(e, "ALLOWED_TAGS") ? addToSet({}, e.ALLOWED_TAGS, Y) : Ro, V = objectHasOwnProperty(e, "ALLOWED_ATTR") ? addToSet({}, e.ALLOWED_ATTR, Y) : zo, _s = objectHasOwnProperty(e, "ALLOWED_NAMESPACES") ? addToSet({}, e.ALLOWED_NAMESPACES, stringToString) : vs, us = objectHasOwnProperty(e, "ADD_URI_SAFE_ATTR") ? addToSet(clone(ds), e.ADD_URI_SAFE_ATTR, Y) : ds, cs = objectHasOwnProperty(e, "ADD_DATA_URI_TAGS") ? addToSet(clone(ls), e.ADD_DATA_URI_TAGS, Y) : ls, os = objectHasOwnProperty(e, "FORBID_CONTENTS") ? addToSet({}, e.FORBID_CONTENTS, Y) : ss, Bo = objectHasOwnProperty(e, "FORBID_TAGS") ? addToSet({}, e.FORBID_TAGS, Y) : clone({}), Vo = objectHasOwnProperty(e, "FORBID_ATTR") ? addToSet({}, e.FORBID_ATTR, Y) : clone({}), as = objectHasOwnProperty(e, "USE_PROFILES") ? e.USE_PROFILES : !1, Uo = e.ALLOW_ARIA_ATTR !== !1, Wo = e.ALLOW_DATA_ATTR !== !1, Go = e.ALLOW_UNKNOWN_PROTOCOLS || !1, Ko = e.ALLOW_SELF_CLOSE_IN_ATTR !== !1, qo = e.SAFE_FOR_TEMPLATES || !1, Jo = e.SAFE_FOR_XML !== !1, Yo = e.WHOLE_DOCUMENT || !1, Qo = e.RETURN_DOM || !1, $o = e.RETURN_DOM_FRAGMENT || !1, es = e.RETURN_TRUSTED_TYPE || !1, Zo = e.FORCE_BODY || !1, ts = e.SANITIZE_DOM !== !1, ns = e.SANITIZE_NAMED_PROPS || !1, rs = e.KEEP_CONTENT !== !1, is = e.IN_PLACE || !1, Lo = e.ALLOWED_URI_REGEXP || IS_ALLOWED_URI, hs = e.NAMESPACE || ms, ys = e.MATHML_TEXT_INTEGRATION_POINTS || ys, bs = e.HTML_INTEGRATION_POINTS || bs, H = e.CUSTOM_ELEMENT_HANDLING || {}, e.CUSTOM_ELEMENT_HANDLING && Es(e.CUSTOM_ELEMENT_HANDLING.tagNameCheck) && (H.tagNameCheck = e.CUSTOM_ELEMENT_HANDLING.tagNameCheck), e.CUSTOM_ELEMENT_HANDLING && Es(e.CUSTOM_ELEMENT_HANDLING.attributeNameCheck) && (H.attributeNameCheck = e.CUSTOM_ELEMENT_HANDLING.attributeNameCheck), e.CUSTOM_ELEMENT_HANDLING && typeof e.CUSTOM_ELEMENT_HANDLING.allowCustomizedBuiltInElements == "boolean" && (H.allowCustomizedBuiltInElements = e.CUSTOM_ELEMENT_HANDLING.allowCustomizedBuiltInElements), qo && (Wo = !1), $o && (Qo = !0), as && (B = addToSet({}, text), V = [], as.html === !0 && (addToSet(B, html$1), addToSet(V, html)), as.svg === !0 && (addToSet(B, svg$1), addToSet(V, svg), addToSet(V, xml)), as.svgFilters === !0 && (addToSet(B, svgFilters), addToSet(V, svg), addToSet(V, xml)), as.mathMl === !0 && (addToSet(B, mathMl$1), addToSet(V, mathMl), addToSet(V, xml))), e.ADD_TAGS && (typeof e.ADD_TAGS == "function" ? Ho.tagCheck = e.ADD_TAGS : (B === Ro && (B = clone(B)), addToSet(B, e.ADD_TAGS, Y))), e.ADD_ATTR && (typeof e.ADD_ATTR == "function" ? Ho.attributeCheck = e.ADD_ATTR : (V === zo && (V = clone(V)), addToSet(V, e.ADD_ATTR, Y))), e.ADD_URI_SAFE_ATTR && addToSet(us, e.ADD_URI_SAFE_ATTR, Y), e.FORBID_CONTENTS && (os === ss && (os = clone(os)), addToSet(os, e.FORBID_CONTENTS, Y)), e.ADD_FORBID_CONTENTS && (os === ss && (os = clone(os)), addToSet(os, e.ADD_FORBID_CONTENTS, Y)), rs && (B["#text"] = !0), Yo && addToSet(B, [
447
+ if (!(Xs && Xs === e)) {
448
+ if ((!e || typeof e != "object") && (e = {}), e = clone(e), Js = Ys.indexOf(e.PARSER_MEDIA_TYPE) === -1 ? "text/html" : e.PARSER_MEDIA_TYPE, Y = Js === "application/xhtml+xml" ? stringToString : stringToLowerCase, V = objectHasOwnProperty(e, "ALLOWED_TAGS") ? addToSet({}, e.ALLOWED_TAGS, Y) : ls, us = objectHasOwnProperty(e, "ALLOWED_ATTR") ? addToSet({}, e.ALLOWED_ATTR, Y) : ds, Us = objectHasOwnProperty(e, "ALLOWED_NAMESPACES") ? addToSet({}, e.ALLOWED_NAMESPACES, stringToString) : Ws, Is = objectHasOwnProperty(e, "ADD_URI_SAFE_ATTR") ? addToSet(clone(Ls), e.ADD_URI_SAFE_ATTR, Y) : Ls, Ps = objectHasOwnProperty(e, "ADD_DATA_URI_TAGS") ? addToSet(clone(Fs), e.ADD_DATA_URI_TAGS, Y) : Fs, Ms = objectHasOwnProperty(e, "FORBID_CONTENTS") ? addToSet({}, e.FORBID_CONTENTS, Y) : Ns, fs = objectHasOwnProperty(e, "FORBID_TAGS") ? addToSet({}, e.FORBID_TAGS, Y) : clone({}), ps = objectHasOwnProperty(e, "FORBID_ATTR") ? addToSet({}, e.FORBID_ATTR, Y) : clone({}), js = objectHasOwnProperty(e, "USE_PROFILES") ? e.USE_PROFILES : !1, hs = e.ALLOW_ARIA_ATTR !== !1, gs = e.ALLOW_DATA_ATTR !== !1, _s = e.ALLOW_UNKNOWN_PROTOCOLS || !1, vs = e.ALLOW_SELF_CLOSE_IN_ATTR !== !1, ys = e.SAFE_FOR_TEMPLATES || !1, bs = e.SAFE_FOR_XML !== !1, xs = e.WHOLE_DOCUMENT || !1, ws = e.RETURN_DOM || !1, Ts = e.RETURN_DOM_FRAGMENT || !1, Es = e.RETURN_TRUSTED_TYPE || !1, Cs = e.FORCE_BODY || !1, Ds = e.SANITIZE_DOM !== !1, Os = e.SANITIZE_NAMED_PROPS || !1, ks = e.KEEP_CONTENT !== !1, As = e.IN_PLACE || !1, cs = e.ALLOWED_URI_REGEXP || IS_ALLOWED_URI, Vs = e.NAMESPACE || Bs, Gs = e.MATHML_TEXT_INTEGRATION_POINTS || Gs, Ks = e.HTML_INTEGRATION_POINTS || Ks, H = e.CUSTOM_ELEMENT_HANDLING || {}, e.CUSTOM_ELEMENT_HANDLING && Qs(e.CUSTOM_ELEMENT_HANDLING.tagNameCheck) && (H.tagNameCheck = e.CUSTOM_ELEMENT_HANDLING.tagNameCheck), e.CUSTOM_ELEMENT_HANDLING && Qs(e.CUSTOM_ELEMENT_HANDLING.attributeNameCheck) && (H.attributeNameCheck = e.CUSTOM_ELEMENT_HANDLING.attributeNameCheck), e.CUSTOM_ELEMENT_HANDLING && typeof e.CUSTOM_ELEMENT_HANDLING.allowCustomizedBuiltInElements == "boolean" && (H.allowCustomizedBuiltInElements = e.CUSTOM_ELEMENT_HANDLING.allowCustomizedBuiltInElements), ys && (gs = !1), Ts && (ws = !0), js && (V = addToSet({}, text), us = [], js.html === !0 && (addToSet(V, html$1), addToSet(us, html)), js.svg === !0 && (addToSet(V, svg$1), addToSet(us, svg), addToSet(us, xml)), js.svgFilters === !0 && (addToSet(V, svgFilters), addToSet(us, svg), addToSet(us, xml)), js.mathMl === !0 && (addToSet(V, mathMl$1), addToSet(us, mathMl), addToSet(us, xml))), e.ADD_TAGS && (typeof e.ADD_TAGS == "function" ? ms.tagCheck = e.ADD_TAGS : (V === ls && (V = clone(V)), addToSet(V, e.ADD_TAGS, Y))), e.ADD_ATTR && (typeof e.ADD_ATTR == "function" ? ms.attributeCheck = e.ADD_ATTR : (us === ds && (us = clone(us)), addToSet(us, e.ADD_ATTR, Y))), e.ADD_URI_SAFE_ATTR && addToSet(Is, e.ADD_URI_SAFE_ATTR, Y), e.FORBID_CONTENTS && (Ms === Ns && (Ms = clone(Ms)), addToSet(Ms, e.FORBID_CONTENTS, Y)), e.ADD_FORBID_CONTENTS && (Ms === Ns && (Ms = clone(Ms)), addToSet(Ms, e.ADD_FORBID_CONTENTS, Y)), ks && (V["#text"] = !0), xs && addToSet(V, [
449
449
  "html",
450
450
  "head",
451
451
  "body"
452
- ]), B.table && (addToSet(B, ["tbody"]), delete Bo.tbody), e.TRUSTED_TYPES_POLICY) {
452
+ ]), V.table && (addToSet(V, ["tbody"]), delete fs.tbody), e.TRUSTED_TYPES_POLICY) {
453
453
  if (typeof e.TRUSTED_TYPES_POLICY.createHTML != "function") throw typeErrorCreate("TRUSTED_TYPES_POLICY configuration option must provide a \"createHTML\" hook.");
454
454
  if (typeof e.TRUSTED_TYPES_POLICY.createScriptURL != "function") throw typeErrorCreate("TRUSTED_TYPES_POLICY configuration option must provide a \"createScriptURL\" hook.");
455
- R = e.TRUSTED_TYPES_POLICY, So = R.createHTML("");
456
- } else R === void 0 && (R = _createTrustedTypesPolicy(h, i)), R !== null && typeof So == "string" && (So = R.createHTML(""));
457
- freeze && freeze(e), ws = e;
455
+ A = e.TRUSTED_TYPES_POLICY, R = A.createHTML("");
456
+ } else A === void 0 && (A = _createTrustedTypesPolicy(h, i)), A !== null && typeof R == "string" && (R = A.createHTML(""));
457
+ freeze && freeze(e), Xs = e;
458
458
  }
459
- }, Os = addToSet({}, [
459
+ }, ec = addToSet({}, [
460
460
  ...svg$1,
461
461
  ...svgFilters,
462
462
  ...svgDisallowed
463
- ]), ks = addToSet({}, [...mathMl$1, ...mathMlDisallowed]), As = function(e) {
464
- let t = xo(e);
463
+ ]), tc = addToSet({}, [...mathMl$1, ...mathMlDisallowed]), nc = function(e) {
464
+ let t = Jo(e);
465
465
  (!t || !t.tagName) && (t = {
466
- namespaceURI: hs,
466
+ namespaceURI: Vs,
467
467
  tagName: "template"
468
468
  });
469
469
  let n = stringToLowerCase(e.tagName), r = stringToLowerCase(t.tagName);
470
- return _s[e.namespaceURI] ? e.namespaceURI === ps ? t.namespaceURI === ms ? n === "svg" : t.namespaceURI === fs ? n === "svg" && (r === "annotation-xml" || ys[r]) : !!Os[n] : e.namespaceURI === fs ? t.namespaceURI === ms ? n === "math" : t.namespaceURI === ps ? n === "math" && bs[r] : !!ks[n] : e.namespaceURI === ms ? t.namespaceURI === ps && !bs[r] || t.namespaceURI === fs && !ys[r] ? !1 : !ks[n] && (xs[n] || !Os[n]) : !!(Ss === "application/xhtml+xml" && _s[e.namespaceURI]) : !1;
471
- }, js = function(e) {
470
+ return Us[e.namespaceURI] ? e.namespaceURI === zs ? t.namespaceURI === Bs ? n === "svg" : t.namespaceURI === Rs ? n === "svg" && (r === "annotation-xml" || Gs[r]) : !!ec[n] : e.namespaceURI === Rs ? t.namespaceURI === Bs ? n === "math" : t.namespaceURI === zs ? n === "math" && Ks[r] : !!tc[n] : e.namespaceURI === Bs ? t.namespaceURI === zs && !Ks[r] || t.namespaceURI === Rs && !Gs[r] ? !1 : !tc[n] && (qs[n] || !ec[n]) : !!(Js === "application/xhtml+xml" && Us[e.namespaceURI]) : !1;
471
+ }, rc = function(e) {
472
472
  arrayPush(t.removed, { element: e });
473
473
  try {
474
- xo(e).removeChild(e);
474
+ Jo(e).removeChild(e);
475
475
  } catch {
476
- yo(e);
476
+ O(e);
477
477
  }
478
- }, Ms = function(e, n) {
478
+ }, ic = function(e, n) {
479
479
  try {
480
480
  arrayPush(t.removed, {
481
481
  attribute: n.getAttributeNode(e),
@@ -487,196 +487,196 @@ function createDOMPurify() {
487
487
  from: n
488
488
  });
489
489
  }
490
- if (n.removeAttribute(e), e === "is") if (Qo || $o) try {
491
- js(n);
490
+ if (n.removeAttribute(e), e === "is") if (ws || Ts) try {
491
+ rc(n);
492
492
  } catch {}
493
493
  else try {
494
494
  n.setAttribute(e, "");
495
495
  } catch {}
496
- }, Ns = function(e) {
496
+ }, ac = function(e) {
497
497
  let t = null, r = null;
498
- if (Zo) e = "<remove></remove>" + e;
498
+ if (Cs) e = "<remove></remove>" + e;
499
499
  else {
500
500
  let t = stringMatch(e, /^[\r\n\t ]+/);
501
501
  r = t && t[0];
502
502
  }
503
- Ss === "application/xhtml+xml" && hs === ms && (e = "<html xmlns=\"http://www.w3.org/1999/xhtml\"><head></head><body>" + e + "</body></html>");
504
- let i = R ? R.createHTML(e) : e;
505
- if (hs === ms) try {
506
- t = new p().parseFromString(i, Ss);
503
+ Js === "application/xhtml+xml" && Vs === Bs && (e = "<html xmlns=\"http://www.w3.org/1999/xhtml\"><head></head><body>" + e + "</body></html>");
504
+ let i = A ? A.createHTML(e) : e;
505
+ if (Vs === Bs) try {
506
+ t = new p().parseFromString(i, Js);
507
507
  } catch {}
508
508
  if (!t || !t.documentElement) {
509
- t = Co.createDocument(hs, "template", null);
509
+ t = Yo.createDocument(Vs, "template", null);
510
510
  try {
511
- t.documentElement.innerHTML = gs ? So : i;
511
+ t.documentElement.innerHTML = Hs ? R : i;
512
512
  } catch {}
513
513
  }
514
514
  let a = t.body || t.documentElement;
515
- return e && r && a.insertBefore(n.createTextNode(r), a.childNodes[0] || null), hs === ms ? Eo.call(t, Yo ? "html" : "body")[0] : Yo ? t.documentElement : a;
516
- }, Ps = function(e) {
517
- return wo.call(e.ownerDocument || e, e, l.SHOW_ELEMENT | l.SHOW_COMMENT | l.SHOW_TEXT | l.SHOW_PROCESSING_INSTRUCTION | l.SHOW_CDATA_SECTION, null);
518
- }, Fs = function(e) {
515
+ return e && r && a.insertBefore(n.createTextNode(r), a.childNodes[0] || null), Vs === Bs ? Qo.call(t, xs ? "html" : "body")[0] : xs ? t.documentElement : a;
516
+ }, oc = function(e) {
517
+ return Xo.call(e.ownerDocument || e, e, l.SHOW_ELEMENT | l.SHOW_COMMENT | l.SHOW_TEXT | l.SHOW_PROCESSING_INSTRUCTION | l.SHOW_CDATA_SECTION, null);
518
+ }, sc = function(e) {
519
519
  return e instanceof f && (typeof e.nodeName != "string" || typeof e.textContent != "string" || typeof e.removeChild != "function" || !(e.attributes instanceof u) || typeof e.removeAttribute != "function" || typeof e.setAttribute != "function" || typeof e.namespaceURI != "string" || typeof e.insertBefore != "function" || typeof e.hasChildNodes != "function");
520
- }, Is = function(e) {
520
+ }, cc = function(e) {
521
521
  return typeof s == "function" && e instanceof s;
522
522
  };
523
- function Ls(e, n, r) {
523
+ function lc(e, n, r) {
524
524
  arrayForEach(e, (e) => {
525
- e.call(t, n, r, ws);
525
+ e.call(t, n, r, Xs);
526
526
  });
527
527
  }
528
- let Rs = function(e) {
528
+ let uc = function(e) {
529
529
  let n = null;
530
- if (Ls(Oo.beforeSanitizeElements, e, null), Fs(e)) return js(e), !0;
530
+ if (lc(B.beforeSanitizeElements, e, null), sc(e)) return rc(e), !0;
531
531
  let r = Y(e.nodeName);
532
- if (Ls(Oo.uponSanitizeElement, e, {
532
+ if (lc(B.uponSanitizeElement, e, {
533
533
  tagName: r,
534
- allowedTags: B
535
- }), Jo && e.hasChildNodes() && !Is(e.firstElementChild) && regExpTest(/<[/\w!]/g, e.innerHTML) && regExpTest(/<[/\w!]/g, e.textContent) || e.nodeType === NODE_TYPE.progressingInstruction || Jo && e.nodeType === NODE_TYPE.comment && regExpTest(/<[/\w]/g, e.data)) return js(e), !0;
536
- if (!(Ho.tagCheck instanceof Function && Ho.tagCheck(r)) && (!B[r] || Bo[r])) {
537
- if (!Bo[r] && Bs(r) && (H.tagNameCheck instanceof RegExp && regExpTest(H.tagNameCheck, r) || H.tagNameCheck instanceof Function && H.tagNameCheck(r))) return !1;
538
- if (rs && !os[r]) {
539
- let t = xo(e) || e.parentNode, n = A(e) || e.childNodes;
534
+ allowedTags: V
535
+ }), bs && e.hasChildNodes() && !cc(e.firstElementChild) && regExpTest(/<[/\w!]/g, e.innerHTML) && regExpTest(/<[/\w!]/g, e.textContent) || e.nodeType === NODE_TYPE.progressingInstruction || bs && e.nodeType === NODE_TYPE.comment && regExpTest(/<[/\w]/g, e.data)) return rc(e), !0;
536
+ if (!(ms.tagCheck instanceof Function && ms.tagCheck(r)) && (!V[r] || fs[r])) {
537
+ if (!fs[r] && fc(r) && (H.tagNameCheck instanceof RegExp && regExpTest(H.tagNameCheck, r) || H.tagNameCheck instanceof Function && H.tagNameCheck(r))) return !1;
538
+ if (ks && !Ms[r]) {
539
+ let t = Jo(e) || e.parentNode, n = qo(e) || e.childNodes;
540
540
  if (n && t) {
541
541
  let r = n.length;
542
542
  for (let i = r - 1; i >= 0; --i) {
543
- let r = O(n[i], !0);
544
- r.__removalCount = (e.__removalCount || 0) + 1, t.insertBefore(r, bo(e));
543
+ let r = g(n[i], !0);
544
+ r.__removalCount = (e.__removalCount || 0) + 1, t.insertBefore(r, Ko(e));
545
545
  }
546
546
  }
547
547
  }
548
- return js(e), !0;
548
+ return rc(e), !0;
549
549
  }
550
- return e instanceof c && !As(e) || (r === "noscript" || r === "noembed" || r === "noframes") && regExpTest(/<\/no(script|embed|frames)/i, e.innerHTML) ? (js(e), !0) : (qo && e.nodeType === NODE_TYPE.text && (n = e.textContent, arrayForEach([
551
- ko,
552
- Ao,
553
- jo
550
+ return e instanceof c && !nc(e) || (r === "noscript" || r === "noembed" || r === "noframes") && regExpTest(/<\/no(script|embed|frames)/i, e.innerHTML) ? (rc(e), !0) : (ys && e.nodeType === NODE_TYPE.text && (n = e.textContent, arrayForEach([
551
+ es,
552
+ ts,
553
+ ns
554
554
  ], (e) => {
555
555
  n = stringReplace(n, e, " ");
556
- }), e.textContent !== n && (arrayPush(t.removed, { element: e.cloneNode() }), e.textContent = n)), Ls(Oo.afterSanitizeElements, e, null), !1);
557
- }, zs = function(e, t, r) {
558
- if (ts && (t === "id" || t === "name") && (r in n || r in Ts)) return !1;
559
- if (!(Wo && !Vo[t] && regExpTest(Mo, t)) && !(Uo && regExpTest(No, t)) && !(Ho.attributeCheck instanceof Function && Ho.attributeCheck(t, e))) {
560
- if (!V[t] || Vo[t]) {
561
- if (!(Bs(e) && (H.tagNameCheck instanceof RegExp && regExpTest(H.tagNameCheck, e) || H.tagNameCheck instanceof Function && H.tagNameCheck(e)) && (H.attributeNameCheck instanceof RegExp && regExpTest(H.attributeNameCheck, t) || H.attributeNameCheck instanceof Function && H.attributeNameCheck(t, e)) || t === "is" && H.allowCustomizedBuiltInElements && (H.tagNameCheck instanceof RegExp && regExpTest(H.tagNameCheck, r) || H.tagNameCheck instanceof Function && H.tagNameCheck(r)))) return !1;
562
- } else if (!us[t] && !regExpTest(Lo, stringReplace(r, Fo, "")) && !((t === "src" || t === "xlink:href" || t === "href") && e !== "script" && stringIndexOf(r, "data:") === 0 && cs[e]) && !(Go && !regExpTest(Po, stringReplace(r, Fo, ""))) && r) return !1;
556
+ }), e.textContent !== n && (arrayPush(t.removed, { element: e.cloneNode() }), e.textContent = n)), lc(B.afterSanitizeElements, e, null), !1);
557
+ }, dc = function(e, t, r) {
558
+ if (Ds && (t === "id" || t === "name") && (r in n || r in Zs)) return !1;
559
+ if (!(gs && !ps[t] && regExpTest(rs, t)) && !(hs && regExpTest(is, t)) && !(ms.attributeCheck instanceof Function && ms.attributeCheck(t, e))) {
560
+ if (!us[t] || ps[t]) {
561
+ if (!(fc(e) && (H.tagNameCheck instanceof RegExp && regExpTest(H.tagNameCheck, e) || H.tagNameCheck instanceof Function && H.tagNameCheck(e)) && (H.attributeNameCheck instanceof RegExp && regExpTest(H.attributeNameCheck, t) || H.attributeNameCheck instanceof Function && H.attributeNameCheck(t, e)) || t === "is" && H.allowCustomizedBuiltInElements && (H.tagNameCheck instanceof RegExp && regExpTest(H.tagNameCheck, r) || H.tagNameCheck instanceof Function && H.tagNameCheck(r)))) return !1;
562
+ } else if (!Is[t] && !regExpTest(cs, stringReplace(r, os, "")) && !((t === "src" || t === "xlink:href" || t === "href") && e !== "script" && stringIndexOf(r, "data:") === 0 && Ps[e]) && !(_s && !regExpTest(as, stringReplace(r, os, ""))) && r) return !1;
563
563
  }
564
564
  return !0;
565
- }, Bs = function(e) {
566
- return e !== "annotation-xml" && stringMatch(e, Io);
567
- }, Vs = function(e) {
568
- Ls(Oo.beforeSanitizeAttributes, e, null);
565
+ }, fc = function(e) {
566
+ return e !== "annotation-xml" && stringMatch(e, ss);
567
+ }, pc = function(e) {
568
+ lc(B.beforeSanitizeAttributes, e, null);
569
569
  let { attributes: n } = e;
570
- if (!n || Fs(e)) return;
570
+ if (!n || sc(e)) return;
571
571
  let r = {
572
572
  attrName: "",
573
573
  attrValue: "",
574
574
  keepAttr: !0,
575
- allowedAttributes: V,
575
+ allowedAttributes: us,
576
576
  forceKeepAttr: void 0
577
577
  }, i = n.length;
578
578
  for (; i--;) {
579
579
  let { name: a, namespaceURI: o, value: s } = n[i], c = Y(a), l = s, u = a === "value" ? l : stringTrim(l);
580
- if (r.attrName = c, r.attrValue = u, r.keepAttr = !0, r.forceKeepAttr = void 0, Ls(Oo.uponSanitizeAttribute, e, r), u = r.attrValue, ns && (c === "id" || c === "name") && (Ms(a, e), u = "user-content-" + u), Jo && regExpTest(/((--!?|])>)|<\/(style|title|textarea)/i, u)) {
581
- Ms(a, e);
580
+ if (r.attrName = c, r.attrValue = u, r.keepAttr = !0, r.forceKeepAttr = void 0, lc(B.uponSanitizeAttribute, e, r), u = r.attrValue, Os && (c === "id" || c === "name") && (ic(a, e), u = "user-content-" + u), bs && regExpTest(/((--!?|])>)|<\/(style|title|textarea)/i, u)) {
581
+ ic(a, e);
582
582
  continue;
583
583
  }
584
584
  if (c === "attributename" && stringMatch(u, "href")) {
585
- Ms(a, e);
585
+ ic(a, e);
586
586
  continue;
587
587
  }
588
588
  if (r.forceKeepAttr) continue;
589
589
  if (!r.keepAttr) {
590
- Ms(a, e);
590
+ ic(a, e);
591
591
  continue;
592
592
  }
593
- if (!Ko && regExpTest(/\/>/i, u)) {
594
- Ms(a, e);
593
+ if (!vs && regExpTest(/\/>/i, u)) {
594
+ ic(a, e);
595
595
  continue;
596
596
  }
597
- qo && arrayForEach([
598
- ko,
599
- Ao,
600
- jo
597
+ ys && arrayForEach([
598
+ es,
599
+ ts,
600
+ ns
601
601
  ], (e) => {
602
602
  u = stringReplace(u, e, " ");
603
603
  });
604
604
  let f = Y(e.nodeName);
605
- if (!zs(f, c, u)) {
606
- Ms(a, e);
605
+ if (!dc(f, c, u)) {
606
+ ic(a, e);
607
607
  continue;
608
608
  }
609
- if (R && typeof h == "object" && typeof h.getAttributeType == "function" && !o) switch (h.getAttributeType(f, c)) {
609
+ if (A && typeof h == "object" && typeof h.getAttributeType == "function" && !o) switch (h.getAttributeType(f, c)) {
610
610
  case "TrustedHTML":
611
- u = R.createHTML(u);
611
+ u = A.createHTML(u);
612
612
  break;
613
613
  case "TrustedScriptURL":
614
- u = R.createScriptURL(u);
614
+ u = A.createScriptURL(u);
615
615
  break;
616
616
  }
617
617
  if (u !== l) try {
618
- o ? e.setAttributeNS(o, a, u) : e.setAttribute(a, u), Fs(e) ? js(e) : arrayPop(t.removed);
618
+ o ? e.setAttributeNS(o, a, u) : e.setAttribute(a, u), sc(e) ? rc(e) : arrayPop(t.removed);
619
619
  } catch {
620
- Ms(a, e);
620
+ ic(a, e);
621
621
  }
622
622
  }
623
- Ls(Oo.afterSanitizeAttributes, e, null);
624
- }, Hs = function e(t) {
625
- let n = null, r = Ps(t);
626
- for (Ls(Oo.beforeSanitizeShadowDOM, t, null); n = r.nextNode();) Ls(Oo.uponSanitizeShadowNode, n, null), Rs(n), Vs(n), n.content instanceof a && e(n.content);
627
- Ls(Oo.afterSanitizeShadowDOM, t, null);
623
+ lc(B.afterSanitizeAttributes, e, null);
624
+ }, mc = function e(t) {
625
+ let n = null, r = oc(t);
626
+ for (lc(B.beforeSanitizeShadowDOM, t, null); n = r.nextNode();) lc(B.uponSanitizeShadowNode, n, null), uc(n), pc(n), n.content instanceof a && e(n.content);
627
+ lc(B.afterSanitizeShadowDOM, t, null);
628
628
  };
629
629
  return t.sanitize = function(e) {
630
630
  let n = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : {}, i = null, o = null, c = null, l = null;
631
- if (gs = !e, gs && (e = "<!-->"), typeof e != "string" && !Is(e)) if (typeof e.toString == "function") {
631
+ if (Hs = !e, Hs && (e = "<!-->"), typeof e != "string" && !cc(e)) if (typeof e.toString == "function") {
632
632
  if (e = e.toString(), typeof e != "string") throw typeErrorCreate("dirty is not a string, aborting");
633
633
  } else throw typeErrorCreate("toString is not a function");
634
634
  if (!t.isSupported) return e;
635
- if (Xo || Ds(n), t.removed = [], typeof e == "string" && (is = !1), is) {
635
+ if (Ss || $s(n), t.removed = [], typeof e == "string" && (As = !1), As) {
636
636
  if (e.nodeName) {
637
637
  let t = Y(e.nodeName);
638
- if (!B[t] || Bo[t]) throw typeErrorCreate("root node is forbidden and cannot be sanitized in-place");
638
+ if (!V[t] || fs[t]) throw typeErrorCreate("root node is forbidden and cannot be sanitized in-place");
639
639
  }
640
- } else if (e instanceof s) i = Ns("<!---->"), o = i.ownerDocument.importNode(e, !0), o.nodeType === NODE_TYPE.element && o.nodeName === "BODY" || o.nodeName === "HTML" ? i = o : i.appendChild(o);
640
+ } else if (e instanceof s) i = ac("<!---->"), o = i.ownerDocument.importNode(e, !0), o.nodeType === NODE_TYPE.element && o.nodeName === "BODY" || o.nodeName === "HTML" ? i = o : i.appendChild(o);
641
641
  else {
642
- if (!Qo && !qo && !Yo && e.indexOf("<") === -1) return R && es ? R.createHTML(e) : e;
643
- if (i = Ns(e), !i) return Qo ? null : es ? So : "";
642
+ if (!ws && !ys && !xs && e.indexOf("<") === -1) return A && Es ? A.createHTML(e) : e;
643
+ if (i = ac(e), !i) return ws ? null : Es ? R : "";
644
644
  }
645
- i && Zo && js(i.firstChild);
646
- let u = Ps(is ? e : i);
647
- for (; c = u.nextNode();) Rs(c), Vs(c), c.content instanceof a && Hs(c.content);
648
- if (is) return e;
649
- if (Qo) {
650
- if ($o) for (l = To.call(i.ownerDocument); i.firstChild;) l.appendChild(i.firstChild);
645
+ i && Cs && rc(i.firstChild);
646
+ let u = oc(As ? e : i);
647
+ for (; c = u.nextNode();) uc(c), pc(c), c.content instanceof a && mc(c.content);
648
+ if (As) return e;
649
+ if (ws) {
650
+ if (Ts) for (l = Zo.call(i.ownerDocument); i.firstChild;) l.appendChild(i.firstChild);
651
651
  else l = i;
652
- return (V.shadowroot || V.shadowrootmode) && (l = Do.call(r, l, !0)), l;
652
+ return (us.shadowroot || us.shadowrootmode) && (l = $o.call(r, l, !0)), l;
653
653
  }
654
- let f = Yo ? i.outerHTML : i.innerHTML;
655
- return Yo && B["!doctype"] && i.ownerDocument && i.ownerDocument.doctype && i.ownerDocument.doctype.name && regExpTest(DOCTYPE_NAME, i.ownerDocument.doctype.name) && (f = "<!DOCTYPE " + i.ownerDocument.doctype.name + ">\n" + f), qo && arrayForEach([
656
- ko,
657
- Ao,
658
- jo
654
+ let f = xs ? i.outerHTML : i.innerHTML;
655
+ return xs && V["!doctype"] && i.ownerDocument && i.ownerDocument.doctype && i.ownerDocument.doctype.name && regExpTest(DOCTYPE_NAME, i.ownerDocument.doctype.name) && (f = "<!DOCTYPE " + i.ownerDocument.doctype.name + ">\n" + f), ys && arrayForEach([
656
+ es,
657
+ ts,
658
+ ns
659
659
  ], (e) => {
660
660
  f = stringReplace(f, e, " ");
661
- }), R && es ? R.createHTML(f) : f;
661
+ }), A && Es ? A.createHTML(f) : f;
662
662
  }, t.setConfig = function() {
663
- Ds(arguments.length > 0 && arguments[0] !== void 0 ? arguments[0] : {}), Xo = !0;
663
+ $s(arguments.length > 0 && arguments[0] !== void 0 ? arguments[0] : {}), Ss = !0;
664
664
  }, t.clearConfig = function() {
665
- ws = null, Xo = !1;
665
+ Xs = null, Ss = !1;
666
666
  }, t.isValidAttribute = function(e, t, n) {
667
- return ws || Ds({}), zs(Y(e), Y(t), n);
667
+ return Xs || $s({}), dc(Y(e), Y(t), n);
668
668
  }, t.addHook = function(e, t) {
669
- typeof t == "function" && arrayPush(Oo[e], t);
669
+ typeof t == "function" && arrayPush(B[e], t);
670
670
  }, t.removeHook = function(e, t) {
671
671
  if (t !== void 0) {
672
- let n = arrayLastIndexOf(Oo[e], t);
673
- return n === -1 ? void 0 : arraySplice(Oo[e], n, 1)[0];
672
+ let n = arrayLastIndexOf(B[e], t);
673
+ return n === -1 ? void 0 : arraySplice(B[e], n, 1)[0];
674
674
  }
675
- return arrayPop(Oo[e]);
675
+ return arrayPop(B[e]);
676
676
  }, t.removeHooks = function(e) {
677
- Oo[e] = [];
677
+ B[e] = [];
678
678
  }, t.removeAllHooks = function() {
679
- Oo = _createHooksMap();
679
+ B = _createHooksMap();
680
680
  }, t;
681
681
  }
682
682
  var purify = createDOMPurify();
@@ -21328,33 +21328,33 @@ function Button({ className: e, children: t, ...n }) {
21328
21328
  });
21329
21329
  }
21330
21330
  function Checkbox({ checked: e, defaultChecked: t, icon: n, indeterminate: r, indeterminateIcon: i, onChange: a, disabled: o, children: s, className: c }) {
21331
- let u = useRef(null), [f, g] = useState(t ?? !1), O = e ?? f;
21331
+ let u = useRef(null), [f, p] = useState(t ?? !1), g = e ?? f;
21332
21332
  useEffect(() => {
21333
21333
  u.current && (u.current.indeterminate = !!r);
21334
21334
  }, [r]);
21335
- function A(t) {
21335
+ function O(t) {
21336
21336
  let n = t.target.checked;
21337
- e === void 0 && g(n), a?.(n);
21337
+ e === void 0 && p(n), a?.(n);
21338
21338
  }
21339
21339
  return /* @__PURE__ */ jsxs("label", {
21340
- className: cn("relative inline-flex w-fit cursor-pointer items-center gap-2 select-none", o && "pointer-events-none opacity-50", c),
21340
+ className: cn("gap-2 relative inline-flex w-fit cursor-pointer items-center select-none", o && "pointer-events-none opacity-50", c),
21341
21341
  children: [
21342
21342
  /* @__PURE__ */ jsx("input", {
21343
21343
  ref: u,
21344
21344
  type: "checkbox",
21345
- className: cn("absolute h-px w-px overflow-hidden p-0 whitespace-nowrap", "[clip-path:inset(50%)]", "border-0"),
21345
+ className: cn("p-0 absolute h-px w-px overflow-hidden whitespace-nowrap", "[clip-path:inset(50%)]", "border-0"),
21346
21346
  disabled: o,
21347
- onChange: A,
21347
+ onChange: O,
21348
21348
  ...e === void 0 ? { defaultChecked: t } : { checked: e }
21349
21349
  }),
21350
21350
  /* @__PURE__ */ jsx("span", {
21351
21351
  role: "checkbox",
21352
- "aria-checked": r ? "mixed" : O,
21352
+ "aria-checked": r ? "mixed" : g,
21353
21353
  tabIndex: -1,
21354
- "data-state": r ? "indeterminate" : O ? "checked" : "unchecked",
21354
+ "data-state": r ? "indeterminate" : g ? "checked" : "unchecked",
21355
21355
  className: "checkbox-box inline-flex items-center justify-center",
21356
21356
  children: /* @__PURE__ */ jsx("span", {
21357
- className: cn("checkbox-icon", !(O || r) && "opacity-0"),
21357
+ className: cn("checkbox-icon", !(g || r) && "opacity-0"),
21358
21358
  children: r ? i ?? "—" : n ?? "✓"
21359
21359
  })
21360
21360
  }),
@@ -21371,60 +21371,75 @@ function useDropdown() {
21371
21371
  if (!e) throw Error("useDropdown must be used inside Dropdown");
21372
21372
  return e;
21373
21373
  }
21374
- function Dropdown({ trigger: e, children: t, align: n = "start", side: r = "bottom", offsetX: i = 0, offsetY: a = 0, disabled: o = !1 }) {
21375
- let [s, c] = useState(!1), f = useRef(null), g = useRef(null), O = useRef(null), [xo, R] = useState(null);
21376
- useLayoutEffect(() => {
21377
- if (!s || !f.current || !g.current) return;
21378
- let e = f.current.getBoundingClientRect(), t = g.current.getBoundingClientRect(), o = e.left;
21374
+ function Dropdown({ trigger: e, children: t, align: n = "start", side: r = "bottom", offsetX: i = 0, offsetY: a = 0, disabled: o = !1, openOnHover: c = !0, open: u, onOpenChange: p }) {
21375
+ let g = u !== void 0, [O, A] = useState(!1), R = g ? u : O, Yo = useCallback((e) => {
21376
+ e !== R && (g || A(e), p?.(e));
21377
+ }, [
21378
+ R,
21379
+ g,
21380
+ p
21381
+ ]), Xo = useRef(null), Zo = useRef(null), Qo = useRef(null), [$o, B] = useState(null), es = useCallback(() => {
21382
+ if (!Xo.current || !Zo.current) return;
21383
+ let e = Xo.current.getBoundingClientRect(), t = Zo.current.getBoundingClientRect(), o = e.left;
21379
21384
  n === "end" ? o = e.right - t.width : n === "center" && (o = e.left + (e.width - t.width) / 2), o += i;
21380
- let c;
21381
- c = r === "bottom" ? e.bottom + a : e.top - t.height + a, queueMicrotask(() => R({
21382
- top: c,
21385
+ let s;
21386
+ s = r === "bottom" ? e.bottom + a : e.top - t.height + a, queueMicrotask(() => B({
21387
+ top: s,
21383
21388
  left: o
21384
21389
  }));
21385
21390
  }, [
21386
- s,
21387
21391
  n,
21388
21392
  r,
21389
21393
  i,
21390
21394
  a
21391
21395
  ]);
21392
- function So() {
21393
- O.current &&= (clearTimeout(O.current), null), c(!0);
21394
- }
21395
- function Co() {
21396
- O.current = window.setTimeout(() => {
21397
- c(!1);
21396
+ useLayoutEffect(() => {
21397
+ R && es();
21398
+ }, [R, es]), useEffect(() => {
21399
+ if (!R) return;
21400
+ let e = () => es();
21401
+ return window.addEventListener("resize", e), window.addEventListener("scroll", e, !0), () => {
21402
+ window.removeEventListener("resize", e), window.removeEventListener("scroll", e, !0);
21403
+ };
21404
+ }, [R, es]);
21405
+ let ts = useCallback(() => {
21406
+ Qo.current &&= (clearTimeout(Qo.current), null), Yo(!0);
21407
+ }, [Yo]), ns = useCallback(() => {
21408
+ Qo.current = window.setTimeout(() => {
21409
+ Yo(!1);
21398
21410
  }, 120);
21399
- }
21411
+ }, [Yo]);
21400
21412
  return useEffect(() => {
21401
21413
  function e(e) {
21402
21414
  let t = e.target;
21403
- f.current?.contains(t) || g.current?.contains(t) || c(!1);
21415
+ Xo.current?.contains(t) || Zo.current?.contains(t) || Yo(!1);
21404
21416
  }
21405
21417
  return document.addEventListener("mousedown", e), () => document.removeEventListener("mousedown", e);
21406
- }, []), useEffect(() => () => {
21407
- O.current && clearTimeout(O.current);
21418
+ }, [Yo]), useEffect(() => () => {
21419
+ Qo.current && clearTimeout(Qo.current);
21408
21420
  }, []), /* @__PURE__ */ jsxs(DropdownContext.Provider, {
21409
- value: { close: () => c(!1) },
21421
+ value: {
21422
+ close: () => Yo(!1),
21423
+ open: ts
21424
+ },
21410
21425
  children: [/* @__PURE__ */ jsx("div", {
21411
- ref: f,
21426
+ ref: Xo,
21412
21427
  className: "inline-flex",
21413
- onMouseEnter: So,
21414
- onMouseLeave: Co,
21415
- onClick: () => c((e) => !e),
21428
+ onMouseEnter: c ? ts : void 0,
21429
+ onMouseLeave: c ? ns : void 0,
21430
+ onClick: () => Yo(!R),
21416
21431
  "aria-haspopup": "menu",
21417
- "aria-expanded": s,
21432
+ "aria-expanded": R,
21418
21433
  children: e
21419
- }), s && !o && createPortal(/* @__PURE__ */ jsx("div", {
21420
- ref: g,
21421
- onMouseEnter: So,
21422
- onMouseLeave: Co,
21434
+ }), R && !o && createPortal(/* @__PURE__ */ jsx("div", {
21435
+ ref: Zo,
21436
+ onMouseEnter: c ? ts : void 0,
21437
+ onMouseLeave: c ? ns : void 0,
21423
21438
  style: {
21424
21439
  position: "fixed",
21425
- top: xo?.top ?? 0,
21426
- left: xo?.left ?? 0,
21427
- visibility: xo ? "visible" : "hidden",
21440
+ top: $o?.top ?? 0,
21441
+ left: $o?.left ?? 0,
21442
+ visibility: $o ? "visible" : "hidden",
21428
21443
  zIndex: 1e3
21429
21444
  },
21430
21445
  children: t
@@ -21433,11 +21448,11 @@ function Dropdown({ trigger: e, children: t, align: n = "start", side: r = "bott
21433
21448
  }
21434
21449
  function Input({ type: e = "text", value: t, defaultValue: n, disabled: r = !1, error: i = !1, placeholder: a, onChange: o, onKeyDown: s, className: c }) {
21435
21450
  let [l, u] = useState(n ?? ""), f = t !== void 0, p = f ? t : l;
21436
- function g(e) {
21451
+ function h(e) {
21437
21452
  let t = e.target.value;
21438
21453
  f || u(t), o?.(t);
21439
21454
  }
21440
- function O(e) {
21455
+ function g(e) {
21441
21456
  s?.(e);
21442
21457
  }
21443
21458
  return /* @__PURE__ */ jsx("input", {
@@ -21447,8 +21462,8 @@ function Input({ type: e = "text", value: t, defaultValue: n, disabled: r = !1,
21447
21462
  disabled: r,
21448
21463
  "aria-disabled": r || void 0,
21449
21464
  "aria-invalid": i || void 0,
21450
- onChange: g,
21451
- onKeyDown: O,
21465
+ onChange: h,
21466
+ onKeyDown: g,
21452
21467
  className: cn("bg-transparent outline-none", r && "pointer-events-none", c)
21453
21468
  });
21454
21469
  }
@@ -21486,17 +21501,17 @@ function getVerticalAlign(e, t, n) {
21486
21501
  return n === "start" ? e.top : n === "end" ? e.bottom - t.height : e.top + e.height / 2 - t.height / 2;
21487
21502
  }
21488
21503
  function Tooltip({ children: e, content: t, position: n = "top", delay: r = 120, className: i }) {
21489
- let a = useRef(null), o = useRef(null), s = useRef(null), [c, f] = useState(!1), [g, xo] = useState(null), R = () => {
21504
+ let a = useRef(null), o = useRef(null), s = useRef(null), [c, u] = useState(!1), [p, g] = useState(null), A = () => {
21490
21505
  s.current &&= (clearTimeout(s.current), null), s.current = window.setTimeout(() => {
21491
- f(!0);
21506
+ u(!0);
21492
21507
  }, r);
21493
- }, So = () => {
21494
- s.current &&= (clearTimeout(s.current), null), f(!1);
21508
+ }, R = () => {
21509
+ s.current &&= (clearTimeout(s.current), null), u(!1);
21495
21510
  };
21496
21511
  return useLayoutEffect(() => {
21497
21512
  if (!c || !a.current || !o.current) return;
21498
21513
  let e = a.current.getBoundingClientRect(), t = o.current.getBoundingClientRect(), [r, i] = n.split("-"), s = i ?? "center", l = 0, u = 0;
21499
- r === "top" || r === "bottom" ? (l = r === "top" ? e.top - t.height - 4 : e.bottom + 4, u = getHorizontalAlign(e, t, s)) : (u = r === "left" ? e.left - t.width - 4 : e.right + 4, l = getVerticalAlign(e, t, s)), xo((e) => e && e.top === l && e.left === u ? e : {
21514
+ r === "top" || r === "bottom" ? (l = r === "top" ? e.top - t.height - 4 : e.bottom + 4, u = getHorizontalAlign(e, t, s)) : (u = r === "left" ? e.left - t.width - 4 : e.right + 4, l = getVerticalAlign(e, t, s)), g((e) => e && e.top === l && e.left === u ? e : {
21500
21515
  top: l,
21501
21516
  left: u
21502
21517
  });
@@ -21505,19 +21520,19 @@ function Tooltip({ children: e, content: t, position: n = "top", delay: r = 120,
21505
21520
  }, []), /* @__PURE__ */ jsxs(Fragment$1, { children: [/* @__PURE__ */ jsx("div", {
21506
21521
  ref: a,
21507
21522
  className: "inline-flex",
21508
- onMouseEnter: R,
21509
- onMouseLeave: So,
21510
- onFocus: R,
21511
- onBlur: So,
21523
+ onMouseEnter: A,
21524
+ onMouseLeave: R,
21525
+ onFocus: A,
21526
+ onBlur: R,
21512
21527
  children: e
21513
21528
  }), c && createPortal(/* @__PURE__ */ jsx("div", {
21514
21529
  ref: o,
21515
21530
  role: "tooltip",
21516
21531
  style: {
21517
21532
  position: "fixed",
21518
- top: g?.top ?? 0,
21519
- left: g?.left ?? 0,
21520
- visibility: g ? "visible" : "hidden",
21533
+ top: p?.top ?? 0,
21534
+ left: p?.left ?? 0,
21535
+ visibility: p ? "visible" : "hidden",
21521
21536
  zIndex: 1e3
21522
21537
  },
21523
21538
  className: cn(i),
@@ -22385,30 +22400,62 @@ function FireIcon({ pathProps: e, ...t }) {
22385
22400
  })
22386
22401
  });
22387
22402
  }
22388
- function InsightIcon({ pathProps: e, ...t }) {
22403
+ function InsightFillIcon({ pathProps: e, ...t }) {
22389
22404
  return /* @__PURE__ */ jsxs(Icon, {
22390
- viewBox: "0 0 36 36",
22405
+ viewBox: "0 0 20 20",
22391
22406
  ...t,
22392
22407
  children: [
22393
22408
  /* @__PURE__ */ jsx("path", {
22394
- d: "M17.0527 16.4541C18.2689 19.5795 20.869 22.0499 24.1299 23.2246C20.8699 24.3991 18.2702 26.8695 17.0537 29.9932C15.8366 26.8693 13.2372 24.3989 9.97656 23.2246C13.2373 22.0499 15.8365 19.5788 17.0527 16.4541Z",
22409
+ d: "M9.45,9.14c.68,1.74,2.12,3.11,3.93,3.76-1.81.65-3.26,2.02-3.93,3.76-.68-1.74-2.12-3.11-3.93-3.76,1.81-.65,3.26-2.03,3.93-3.76Z",
22395
22410
  fill: "currentColor",
22396
22411
  stroke: "currentColor",
22397
- strokeWidth: "1.5",
22412
+ strokeWidth: "1",
22413
+ strokeMiterlimit: "10",
22398
22414
  ...e
22399
22415
  }),
22400
22416
  /* @__PURE__ */ jsx("path", {
22401
- d: "M22.7314 8.93945C23.4251 10.4334 24.6294 11.6381 26.123 12.332C24.6301 13.0254 23.4251 14.2296 22.7314 15.7227C22.0375 14.2298 20.8332 13.0254 19.3398 12.332C20.8337 11.6382 22.0379 10.4335 22.7314 8.93945Z",
22417
+ d: "M12.6,4.96c.39.83,1.05,1.5,1.88,1.88-.83.39-1.5,1.05-1.88,1.88-.39-.83-1.05-1.5-1.88-1.88.83-.39,1.5-1.05,1.88-1.88Z",
22402
22418
  fill: "currentColor",
22403
22419
  stroke: "currentColor",
22404
- strokeWidth: "1.3",
22420
+ strokeWidth: "1",
22421
+ strokeMiterlimit: "10",
22405
22422
  ...e
22406
22423
  }),
22407
22424
  /* @__PURE__ */ jsx("path", {
22408
- d: "M14.2139 6.0166C14.7609 7.10848 15.6497 7.99743 16.7412 8.54492C15.6505 9.09176 14.7612 9.97957 14.2139 11.0703C13.6666 9.97972 12.7784 9.09169 11.6875 8.54492C12.7791 7.99747 13.6667 7.10806 14.2139 6.0166Z",
22425
+ d: "M7.87,3.34c.3.61.8,1.1,1.4,1.4-.61.3-1.1.8-1.4,1.4-.3-.61-.8-1.1-1.4-1.4.61-.3,1.1-.8,1.4-1.4Z",
22409
22426
  fill: "currentColor",
22410
22427
  stroke: "currentColor",
22411
- strokeWidth: "1.2",
22428
+ strokeWidth: "1",
22429
+ strokeMiterlimit: "10",
22430
+ ...e
22431
+ })
22432
+ ]
22433
+ });
22434
+ }
22435
+ function InsightIcon({ pathProps: e, ...t }) {
22436
+ return /* @__PURE__ */ jsxs(Icon, {
22437
+ viewBox: "0 0 20 20",
22438
+ ...t,
22439
+ children: [
22440
+ /* @__PURE__ */ jsx("path", {
22441
+ d: "M9.45,9.14c.68,1.74,2.12,3.11,3.93,3.76-1.81.65-3.26,2.02-3.93,3.76-.68-1.74-2.12-3.11-3.93-3.76,1.81-.65,3.26-2.03,3.93-3.76Z",
22442
+ stroke: "currentColor",
22443
+ strokeWidth: "1.5",
22444
+ strokeMiterlimit: "10",
22445
+ ...e
22446
+ }),
22447
+ /* @__PURE__ */ jsx("path", {
22448
+ d: "M12.6,4.96c.39.83,1.05,1.5,1.88,1.88-.83.39-1.5,1.05-1.88,1.88-.39-.83-1.05-1.5-1.88-1.88.83-.39,1.5-1.05,1.88-1.88Z",
22449
+ stroke: "currentColor",
22450
+ strokeWidth: "1.5",
22451
+ strokeMiterlimit: "10",
22452
+ ...e
22453
+ }),
22454
+ /* @__PURE__ */ jsx("path", {
22455
+ d: "M7.87,3.34c.3.61.8,1.1,1.4,1.4-.61.3-1.1.8-1.4,1.4-.3-.61-.8-1.1-1.4-1.4.61-.3,1.1-.8,1.4-1.4Z",
22456
+ stroke: "currentColor",
22457
+ strokeWidth: "1.5",
22458
+ strokeMiterlimit: "10",
22412
22459
  ...e
22413
22460
  })
22414
22461
  ]
@@ -22576,10 +22623,10 @@ function DarkIcon({ pathProps: e, ...t }) {
22576
22623
  }
22577
22624
  function EmptyBoxIcon({ pathProps: e, ...t }) {
22578
22625
  return /* @__PURE__ */ jsx(Icon, {
22579
- viewBox: "0 0 24 24",
22626
+ viewBox: "0 0 20 20",
22580
22627
  ...t,
22581
22628
  children: /* @__PURE__ */ jsx("path", {
22582
- d: "M2.34,24c-.68,0-1.23-.22-1.68-.66s-.66-1-.66-1.68V2.34c0-.68.22-1.23.66-1.68s1-.66,1.68-.66h19.32c.68,0,1.23.22,1.68.66s.66,1,.66,1.68v19.32c0,.68-.22,1.23-.66,1.68s-1,.66-1.68.66H2.34ZM2.34,22.91h19.32c.36,0,.66-.12.9-.35s.35-.53.35-.9v-4.21h-5.84c-.52.99-1.23,1.75-2.12,2.3s-1.88.82-2.94.82-2.05-.27-2.94-.82-1.6-1.31-2.12-2.3H1.09v4.21c0,.36.12.66.35.9s.53.35.9.35ZM14.69,18.62c.81-.57,1.36-1.32,1.68-2.26h6.55V2.34c0-.36-.12-.66-.35-.9s-.53-.35-.9-.35H2.34c-.36,0-.66.12-.9.35s-.35.53-.35.9v14.03h6.55c.31.94.87,1.69,1.68,2.26s1.7.86,2.69.86,1.88-.29,2.69-.86ZM2.34,22.91h-1.25,21.82H2.34Z",
22629
+ d: "M15.7,2.66H4.29c-.9,0-1.61.73-1.61,1.63v11.41c0,.9.71,1.63,1.61,1.63h11.42c.9,0,1.63-.73,1.63-1.63V4.3c0-.9-.73-1.63-1.63-1.63M15.7,12.44h-3.26c0,1.35-1.1,2.45-2.44,2.45s-2.44-1.09-2.44-2.45h-3.27V4.3h11.42v8.15Z",
22583
22630
  fill: "currentColor",
22584
22631
  ...e
22585
22632
  })
@@ -22598,10 +22645,21 @@ function ExternalLinkIcon({ pathProps: e, ...t }) {
22598
22645
  }
22599
22646
  function HomeIcon({ pathProps: e, ...t }) {
22600
22647
  return /* @__PURE__ */ jsx(Icon, {
22601
- viewBox: "0 0 24 24",
22648
+ viewBox: "0 0 20 20",
22602
22649
  ...t,
22603
22650
  children: /* @__PURE__ */ jsx("path", {
22604
- d: "M3.48,21.87h4.75v-8.44h7.54v8.44h4.75v-12.79L12,2.66,3.48,9.08v12.79ZM1.35,24v-15.98L12,0l10.65,8.02v15.98h-9.02v-8.44h-3.28v8.44H1.35Z",
22651
+ d: "M4.79,16.03h2.91v-5.16h4.61v5.16h2.91v-7.82l-5.21-3.92-5.21,3.92v7.82ZM3.49,17.34V7.57l6.51-4.9,6.51,4.9v9.77h-5.51v-5.16h-2v5.16H3.49Z",
22652
+ fill: "currentColor",
22653
+ ...e
22654
+ })
22655
+ });
22656
+ }
22657
+ function InboxIcon({ pathProps: e, ...t }) {
22658
+ return /* @__PURE__ */ jsx(Icon, {
22659
+ viewBox: "0 0 20 20",
22660
+ ...t,
22661
+ children: /* @__PURE__ */ jsx("path", {
22662
+ d: "M15.7,2.66H4.29c-.9,0-1.61.73-1.61,1.63v11.41c0,.9.71,1.63,1.61,1.63h11.42c.9,0,1.63-.73,1.63-1.63V4.3c0-.9-.73-1.63-1.63-1.63M15.7,12.44h-3.26c0,1.35-1.1,2.45-2.44,2.45s-2.44-1.09-2.44-2.45h-3.27V4.3h11.42v8.15ZM13.26,8.37h-1.63v-2.44h-3.26v2.44h-1.63l3.26,3.26,3.26-3.26Z",
22605
22663
  fill: "currentColor",
22606
22664
  ...e
22607
22665
  })
@@ -22618,6 +22676,17 @@ function LightIcon({ pathProps: e, ...t }) {
22618
22676
  })
22619
22677
  });
22620
22678
  }
22679
+ function MailIcon({ pathProps: e, ...t }) {
22680
+ return /* @__PURE__ */ jsx(Icon, {
22681
+ viewBox: "0 0 20 20",
22682
+ ...t,
22683
+ children: /* @__PURE__ */ jsx("path", {
22684
+ d: "M4.13,15.87c-.4,0-.75-.14-1.04-.43s-.43-.63-.43-1.04V5.6c0-.4.14-.75.43-1.04s.63-.43,1.04-.43h11.74c.4,0,.75.14,1.04.43s.43.63.43,1.04v8.8c0,.4-.14.75-.43,1.04s-.63.43-1.04.43H4.13ZM10,10.73l-5.87-3.67v7.34h11.74v-7.34l-5.87,3.67ZM10,9.27l5.87-3.67H4.13l5.87,3.67ZM4.13,7.07v-1.47,8.8-7.34Z",
22685
+ fill: "currentColor",
22686
+ ...e
22687
+ })
22688
+ });
22689
+ }
22621
22690
  function MinusIcon({ pathProps: e, ...t }) {
22622
22691
  return /* @__PURE__ */ jsx(Icon, {
22623
22692
  viewBox: "0 0 16 16",
@@ -22786,10 +22855,142 @@ function DropdownMenu({ trigger: e, children: t, className: n, ...r }) {
22786
22855
  })
22787
22856
  });
22788
22857
  }
22858
+ function HelpPanelEngine({ title: e, items: t, footer: n, closeLabel: r = "Close", defaultOpenValue: i, classNames: a }) {
22859
+ let o = useId(), { close: s } = useDropdown(), c = a ?? {}, l = i ?? t[0]?.value;
22860
+ return /* @__PURE__ */ jsxs("div", {
22861
+ className: cn("rounded-md overflow-hidden bg-white", c.root),
22862
+ role: "dialog",
22863
+ "aria-modal": "true",
22864
+ "aria-labelledby": o,
22865
+ children: [
22866
+ /* @__PURE__ */ jsxs("header", {
22867
+ className: cn("gap-2 p-4 flex shrink-0 items-center justify-between", c.header),
22868
+ children: [/* @__PURE__ */ jsx("div", {
22869
+ id: o,
22870
+ className: c.title,
22871
+ children: e
22872
+ }), /* @__PURE__ */ jsx(Button, {
22873
+ type: "button",
22874
+ onClick: s,
22875
+ "aria-label": r,
22876
+ className: c.closeButton,
22877
+ children: /* @__PURE__ */ jsx(CloseIcon, {
22878
+ size: 18,
22879
+ "aria-hidden": !0
22880
+ })
22881
+ })]
22882
+ }),
22883
+ /* @__PURE__ */ jsx("div", {
22884
+ className: c.body,
22885
+ children: /* @__PURE__ */ jsx(Accordion, {
22886
+ type: "single",
22887
+ className: c.accordion,
22888
+ defaultValue: l,
22889
+ children: (e) => /* @__PURE__ */ jsx(Fragment$1, { children: t.map((t) => /* @__PURE__ */ jsxs(AccordionItem, {
22890
+ value: t.value,
22891
+ className: c.item,
22892
+ children: [/* @__PURE__ */ jsxs(AccordionTrigger, {
22893
+ value: t.value,
22894
+ className: cn("gap-2 p-3 flex w-full items-center justify-between", c.itemTrigger),
22895
+ children: [t.label, /* @__PURE__ */ jsx(ArrowIcon, {
22896
+ size: 20,
22897
+ direction: e.openItems.has(t.value) ? "up" : "down",
22898
+ className: "shrink-0 text-neutral-600"
22899
+ })]
22900
+ }), /* @__PURE__ */ jsx(AccordionContent, {
22901
+ value: t.value,
22902
+ className: cn("p-3", c.itemContent),
22903
+ children: t.content
22904
+ })]
22905
+ }, t.value)) })
22906
+ })
22907
+ }),
22908
+ n == null ? null : /* @__PURE__ */ jsx("div", {
22909
+ className: cn("p-3", c.footer),
22910
+ children: n
22911
+ })
22912
+ ]
22913
+ });
22914
+ }
22915
+ const ONBOARDING_DISMISSED_STORAGE_KEY = "onboarding_dismissed";
22916
+ function readDismissedFromStorage(e) {
22917
+ if (typeof window > "u") return /* @__PURE__ */ new Set();
22918
+ try {
22919
+ let t = localStorage.getItem(e);
22920
+ if (t == null || t === "") return /* @__PURE__ */ new Set();
22921
+ let n = JSON.parse(t);
22922
+ return Array.isArray(n) ? new Set(n.filter((e) => typeof e == "string")) : /* @__PURE__ */ new Set();
22923
+ } catch {
22924
+ return /* @__PURE__ */ new Set();
22925
+ }
22926
+ }
22927
+ function findActiveStep(e, t, n) {
22928
+ for (let r = 0; r < e.length; r++) {
22929
+ let i = e[r];
22930
+ if (!t.has(i.id) && i.isVisible(n)) return {
22931
+ step: i,
22932
+ index: r
22933
+ };
22934
+ }
22935
+ return null;
22936
+ }
22937
+ function OnboardingEngine({ steps: e, context: t, storageKey: n, isEnabled: r = !0, children: i }) {
22938
+ let a = n ?? "onboarding_dismissed", [o, c] = useState(() => readDismissedFromStorage(a));
22939
+ useLayoutEffect(() => {
22940
+ c(readDismissedFromStorage(a));
22941
+ }, [a]), useEffect(() => {
22942
+ if (!(typeof window > "u")) try {
22943
+ localStorage.setItem(a, JSON.stringify([...o]));
22944
+ } catch {}
22945
+ }, [o, a]), useEffect(() => {
22946
+ let t = new Set(e.map((e) => e.id)), n = readDismissedFromStorage(a), r = /* @__PURE__ */ new Set();
22947
+ for (let e of n) t.has(e) && r.add(e);
22948
+ queueMicrotask(() => {
22949
+ c((e) => e.size === r.size && [...e].every((e) => r.has(e)) ? e : r);
22950
+ });
22951
+ }, [e, a]);
22952
+ let u = useMemo(() => r ? findActiveStep(e, o, t) : null, [
22953
+ r,
22954
+ e,
22955
+ o,
22956
+ t
22957
+ ]), h = u?.step ?? null, g = u?.index ?? null, qo = useCallback((e) => {
22958
+ c((t) => {
22959
+ if (t.has(e)) return t;
22960
+ let n = new Set(t);
22961
+ return n.add(e), n;
22962
+ });
22963
+ }, []), Jo = useCallback(() => {
22964
+ c((n) => {
22965
+ let r = findActiveStep(e, n, t);
22966
+ if (r == null || n.has(r.step.id)) return n;
22967
+ let i = new Set(n);
22968
+ return i.add(r.step.id), i;
22969
+ });
22970
+ }, [e, t]), A = useCallback(() => {
22971
+ c(new Set(e.map((e) => e.id)));
22972
+ }, [e]);
22973
+ return /* @__PURE__ */ jsx(Fragment$1, { children: i({
22974
+ context: t,
22975
+ currentStep: h,
22976
+ currentStepIndex: g,
22977
+ dismissedStepIds: o,
22978
+ actions: useMemo(() => ({
22979
+ dismissCurrentStep: Jo,
22980
+ dismissStep: qo,
22981
+ skipAll: A,
22982
+ close: A
22983
+ }), [
22984
+ Jo,
22985
+ qo,
22986
+ A
22987
+ ])
22988
+ }) });
22989
+ }
22789
22990
  function RichContent({ content: e, className: t }) {
22790
22991
  let n = normalizeContent(e);
22791
22992
  return /* @__PURE__ */ jsx("div", {
22792
- className: cn("normalized-content text-sm leading-[1.3] font-normal text-neutral-900", t),
22993
+ className: cn("normalized-content text-sm font-normal leading-[1.3] text-neutral-900", t),
22793
22994
  dangerouslySetInnerHTML: { __html: n }
22794
22995
  });
22795
22996
  }
@@ -22869,7 +23070,7 @@ function isTopPosition(e) {
22869
23070
  function isRenderFn(e) {
22870
23071
  return typeof e == "function";
22871
23072
  }
22872
- var subscribeNoop = () => () => {}, getClientSnapshot = () => !0, getServerSnapshot = () => !1;
23073
+ var subscribeNoop$1 = () => () => {}, getClientSnapshot$1 = () => !0, getServerSnapshot$1 = () => !1;
22873
23074
  function groupByPosition(e) {
22874
23075
  return e.reduce((e, t) => ((e[t.position] ??= []).push(t), e), {});
22875
23076
  }
@@ -22940,7 +23141,7 @@ function useToastTimers(e, t) {
22940
23141
  }), n;
22941
23142
  });
22942
23143
  }, COUNTDOWN_INTERVAL_MS);
22943
- }, []), g = useCallback(() => {
23144
+ }, []), p = useCallback(() => {
22944
23145
  if (o.current) return;
22945
23146
  o.current = !0;
22946
23147
  let e = Date.now();
@@ -22954,7 +23155,7 @@ function useToastTimers(e, t) {
22954
23155
  isPaused: !0
22955
23156
  });
22956
23157
  }), a.current &&= (clearInterval(a.current), null);
22957
- }, []), O = useCallback(() => {
23158
+ }, []), g = useCallback(() => {
22958
23159
  o.current && (o.current = !1, i.current.forEach((t, n) => {
22959
23160
  if (t.isPaused && t.remainingTime > 0) {
22960
23161
  let r = e.find((e) => e.id === n);
@@ -22965,7 +23166,7 @@ function useToastTimers(e, t) {
22965
23166
  e,
22966
23167
  u,
22967
23168
  f
22968
- ]), yo = useCallback((e) => {
23169
+ ]), O = useCallback((e) => {
22969
23170
  i.current.delete(e), r((t) => {
22970
23171
  let n = new Map(t);
22971
23172
  return n.delete(e), n;
@@ -22985,23 +23186,23 @@ function useToastTimers(e, t) {
22985
23186
  a.current && clearInterval(a.current);
22986
23187
  }, []), {
22987
23188
  remainingTimes: n,
22988
- pauseAll: g,
22989
- resumeAll: O,
22990
- cleanupTimer: yo
23189
+ pauseAll: p,
23190
+ resumeAll: g,
23191
+ cleanupTimer: O
22991
23192
  };
22992
23193
  }
22993
23194
  function Toaster() {
22994
- let [e, t] = useState([]), [n, r] = useState([]), i = useRef(/* @__PURE__ */ new Set()), a = useRef(/* @__PURE__ */ new Map()), o = useRef([]), { remainingTimes: c, pauseAll: u, resumeAll: f, cleanupTimer: xo } = useToastTimers(e, a);
23195
+ let [e, t] = useState([]), [n, r] = useState([]), i = useRef(/* @__PURE__ */ new Set()), a = useRef(/* @__PURE__ */ new Map()), o = useRef([]), { remainingTimes: c, pauseAll: u, resumeAll: f, cleanupTimer: p } = useToastTimers(e, a);
22995
23196
  useEffect(() => toastStore.subscribe(t), []);
22996
- let R = useSyncExternalStore(subscribeNoop, getClientSnapshot, getServerSnapshot), So = useCallback((e) => {
23197
+ let A = useSyncExternalStore(subscribeNoop$1, getClientSnapshot$1, getServerSnapshot$1), R = useCallback((e) => {
22997
23198
  e.callbacks?.onOpen?.();
22998
- }, []), Co = useCallback((e, t) => {
23199
+ }, []), Yo = useCallback((e, t) => {
22999
23200
  t === "manual" ? e.callbacks?.onClose?.() : (t === "timeout" || t === "replaced") && e.callbacks?.onAutoClose?.(), e.callbacks?.onDismiss?.(t);
23000
23201
  }, []);
23001
23202
  useEffect(() => {
23002
23203
  let t = new Set(e.map((e) => e.id)), n = new Map(e.map((e) => [e.id, e])), s = i.current;
23003
23204
  o.current.filter((e) => !t.has(e.id) && e.animationState !== "exiting").forEach((e) => {
23004
- Co(e, a.current.get(e.id) ?? toastStore.consumePendingDismissReason(e.id) ?? "timeout"), a.current.delete(e.id);
23205
+ Yo(e, a.current.get(e.id) ?? toastStore.consumePendingDismissReason(e.id) ?? "timeout"), a.current.delete(e.id);
23005
23206
  }), r((r) => {
23006
23207
  let i = r.map((e) => {
23007
23208
  let t = n.get(e.id);
@@ -23010,7 +23211,7 @@ function Toaster() {
23010
23211
  content: t.content,
23011
23212
  duration: t.duration
23012
23213
  } : e;
23013
- }).map((e) => markAsExiting(e, !t.has(e.id))).map(updateAnimationState), a = [...e.filter((e) => !s.has(e.id)).map((e) => (So(e), {
23214
+ }).map((e) => markAsExiting(e, !t.has(e.id))).map(updateAnimationState), a = [...e.filter((e) => !s.has(e.id)).map((e) => (R(e), {
23014
23215
  ...e,
23015
23216
  animationState: "entering"
23016
23217
  })), ...i];
@@ -23018,20 +23219,20 @@ function Toaster() {
23018
23219
  }), i.current = t;
23019
23220
  }, [
23020
23221
  e,
23021
- So,
23022
- Co
23222
+ R,
23223
+ Yo
23023
23224
  ]);
23024
- let wo = useCallback((e) => {
23225
+ let Xo = useCallback((e) => {
23025
23226
  r((t) => {
23026
23227
  let n = t.filter((t) => t.id !== e);
23027
23228
  return o.current = n, n;
23028
- }), xo(e), toastStore.cleanup(e);
23029
- }, [xo]), To = useCallback((e) => {
23229
+ }), p(e), toastStore.cleanup(e);
23230
+ }, [p]), Zo = useCallback((e) => {
23030
23231
  a.current.set(e, "manual"), toastStore.remove(e);
23031
23232
  }, []);
23032
- if (!R) return null;
23033
- let Eo = groupByPosition(n);
23034
- return createPortal(/* @__PURE__ */ jsx(Fragment$1, { children: Object.entries(Eo).map(([e, t]) => {
23233
+ if (!A) return null;
23234
+ let Qo = groupByPosition(n);
23235
+ return createPortal(/* @__PURE__ */ jsx(Fragment$1, { children: Object.entries(Qo).map(([e, t]) => {
23035
23236
  let n = t.filter((e) => e.singleSlot), r = t.filter((e) => !e.singleSlot), i = n.length > 0 ? /* @__PURE__ */ jsx("div", {
23036
23237
  className: cn("isolate inline-grid max-w-[min(100vw,100%)] grid-cols-1 grid-rows-1", SINGLE_SLOT_PLACE[e]),
23037
23238
  children: n.map((e, t) => /* @__PURE__ */ jsx("div", {
@@ -23040,8 +23241,8 @@ function Toaster() {
23040
23241
  children: /* @__PURE__ */ jsx(ToastWrapper, {
23041
23242
  toast: e,
23042
23243
  remainingTime: c.get(e.id) ?? e.duration,
23043
- onExitComplete: wo,
23044
- onClose: To,
23244
+ onExitComplete: Xo,
23245
+ onClose: Zo,
23045
23246
  onHoverStart: u,
23046
23247
  onHoverEnd: f
23047
23248
  })
@@ -23049,13 +23250,13 @@ function Toaster() {
23049
23250
  }) : null, a = r.map((e) => /* @__PURE__ */ jsx(ToastWrapper, {
23050
23251
  toast: e,
23051
23252
  remainingTime: c.get(e.id) ?? e.duration,
23052
- onExitComplete: wo,
23053
- onClose: To,
23253
+ onExitComplete: Xo,
23254
+ onClose: Zo,
23054
23255
  onHoverStart: u,
23055
23256
  onHoverEnd: f
23056
23257
  }, e.id));
23057
23258
  return /* @__PURE__ */ jsx("div", {
23058
- className: cn("pointer-events-none fixed z-1000 flex flex-col items-end gap-2 p-4", POSITION_CLASSES[e]),
23259
+ className: cn("gap-2 p-4 pointer-events-none fixed z-1000 flex flex-col items-end", POSITION_CLASSES[e]),
23059
23260
  children: isTopPosition(e) ? /* @__PURE__ */ jsxs(Fragment$1, { children: [i, a] }) : /* @__PURE__ */ jsxs(Fragment$1, { children: [a, i] })
23060
23261
  }, e);
23061
23262
  }) }), document.body);
@@ -23143,7 +23344,7 @@ const AVATAR_COLOR = {
23143
23344
  }
23144
23345
  }, AVATAR_COLOR_KEYS = Object.keys(AVATAR_COLOR);
23145
23346
  var avatarStyles = tv({
23146
- base: "flex shrink-0 items-center justify-center rounded-full leading-none font-semibold select-none",
23347
+ base: "font-semibold flex shrink-0 items-center justify-center rounded-full leading-none select-none",
23147
23348
  variants: { size: {
23148
23349
  xs: "h-[16px] w-[16px] text-[0.5em]",
23149
23350
  sm: "h-[20px] w-[20px] text-[0.625em]",
@@ -23167,8 +23368,8 @@ function Avatar({ name: e, size: t = "sm", className: n }) {
23167
23368
  }
23168
23369
  var statusBadgeStyles = tv({
23169
23370
  slots: {
23170
- root: "relative flex items-center gap-1 rounded-full border",
23171
- text: "truncate text-xs font-semibold whitespace-nowrap"
23371
+ root: "gap-1 relative flex items-center rounded-full border",
23372
+ text: "text-xs font-semibold truncate whitespace-nowrap"
23172
23373
  },
23173
23374
  variants: { status: {
23174
23375
  fire: {
@@ -23205,21 +23406,21 @@ var statusBadgeStyles = tv({
23205
23406
  }
23206
23407
  };
23207
23408
  function StatusBadge({ className: e, label: t, status: n, onAction: r, density: i = "normal" }) {
23208
- let [a, o] = useState(!1), s = i === "compact", c = STATUS_CONFIG[n], l = s ? c.compact : c.normal, u = statusBadgeStyles({ status: n }), f = l.includes("icon"), p = l.includes("label"), g = l.includes("action") && r;
23409
+ let [a, o] = useState(!1), s = i === "compact", c = STATUS_CONFIG[n], l = s ? c.compact : c.normal, u = statusBadgeStyles({ status: n }), f = l.includes("icon"), p = l.includes("label"), h = l.includes("action") && r;
23209
23410
  return /* @__PURE__ */ jsx(Badge, {
23210
23411
  className: cn(u.root(), s ? "h-6 w-6" : "py-1 pr-2.5 pl-2", e),
23211
23412
  icon: f ? /* @__PURE__ */ jsx(c.icon, {
23212
23413
  size: 16,
23213
- className: cn(u.text(), s && g && "absolute inset-0 m-auto", s && g && a && "opacity-0")
23414
+ className: cn(u.text(), s && h && "inset-0 absolute m-auto", s && h && a && "opacity-0")
23214
23415
  }) : void 0,
23215
23416
  label: p ? /* @__PURE__ */ jsx("span", {
23216
- className: cn(u.text(), s && "absolute inset-0 flex items-center justify-center text-center text-[10px]"),
23417
+ className: cn(u.text(), s && "inset-0 absolute flex items-center justify-center text-center text-[10px]"),
23217
23418
  children: t ?? c.label
23218
23419
  }) : void 0,
23219
- action: g ? /* @__PURE__ */ jsx(Button, {
23420
+ action: h ? /* @__PURE__ */ jsx(Button, {
23220
23421
  onClick: r,
23221
23422
  "aria-label": "Dismiss status",
23222
- className: cn("group", s ? cn("absolute inset-0 m-auto transition-opacity", a ? "opacity-100" : "opacity-0") : void 0),
23423
+ className: cn("group", s ? cn("inset-0 absolute m-auto transition-opacity", a ? "opacity-100" : "opacity-0") : void 0),
23223
23424
  children: /* @__PURE__ */ jsx(CloseIcon, {
23224
23425
  size: 16,
23225
23426
  className: cn(u.text(), "group-hover:scale-90")
@@ -23231,15 +23432,15 @@ function StatusBadge({ className: e, label: t, status: n, onAction: r, density:
23231
23432
  }
23232
23433
  function BulkActionsSkeleton({ className: e }) {
23233
23434
  return /* @__PURE__ */ jsxs("div", {
23234
- className: cn("grid grid-cols-[minmax(0,1fr)_auto_auto] items-center gap-4", e),
23435
+ className: cn("gap-4 grid grid-cols-[minmax(0,1fr)_auto_auto] items-center", e),
23235
23436
  children: [
23236
23437
  /* @__PURE__ */ jsxs("div", {
23237
- className: "flex items-center gap-2",
23438
+ className: "gap-2 flex items-center",
23238
23439
  children: [/* @__PURE__ */ jsx(Skeleton, { className: "h-5 w-5 rounded" }), /* @__PURE__ */ jsx(Skeleton, { className: "h-4 w-30" })]
23239
23440
  }),
23240
23441
  /* @__PURE__ */ jsx("div", { className: "flex items-center divide-x divide-neutral-400-variant-1" }),
23241
23442
  /* @__PURE__ */ jsxs("div", {
23242
- className: "flex items-center gap-2",
23443
+ className: "gap-2 flex items-center",
23243
23444
  children: [/* @__PURE__ */ jsx(Skeleton, { className: "m-1 h-5 w-5 rounded" }), /* @__PURE__ */ jsx(Skeleton, { className: "m-1 h-5 w-5 rounded" })]
23244
23445
  })
23245
23446
  ]
@@ -23258,17 +23459,17 @@ function IconButton({ icon: e, ...t }) {
23258
23459
  function InfoTooltip({ className: e, ...t }) {
23259
23460
  return /* @__PURE__ */ jsx(Tooltip, {
23260
23461
  ...t,
23261
- className: cn("rounded bg-neutral-700 px-2 py-1 text-[0.625em] font-medium whitespace-nowrap text-white", e)
23462
+ className: cn("rounded px-2 py-1 font-medium bg-neutral-700 text-[0.625em] whitespace-nowrap text-white", e)
23262
23463
  });
23263
23464
  }
23264
23465
  function BulkActions({ totalItems: e = 0, selectedItems: t = 0, onSelectAll: n, actions: r, defaultDensity: i = "normal", onDensityChange: a, className: o }) {
23265
- let s = e > 0, c = s && t === e, l = s && t > 0 && t < e, u = c ? `All (${e})` : l ? `${t}/${e} selected` : `Select all (${e})`, [f, p] = useState(i ?? "normal"), g = () => {
23466
+ let s = e > 0, c = s && t === e, l = s && t > 0 && t < e, u = c ? `All (${e})` : l ? `${t}/${e} selected` : `Select all (${e})`, [f, p] = useState(i ?? "normal"), h = () => {
23266
23467
  n(!c);
23267
23468
  };
23268
- function A(e) {
23469
+ function g(e) {
23269
23470
  p(e), a?.(e);
23270
23471
  }
23271
- let xo = {
23472
+ let Jo = {
23272
23473
  fire: [{
23273
23474
  id: "fire",
23274
23475
  tooltip: "Mark as fire",
@@ -23320,7 +23521,7 @@ function BulkActions({ totalItems: e = 0, selectedItems: t = 0, onSelectAll: n,
23320
23521
  }),
23321
23522
  onClick: r.read.off
23322
23523
  }]
23323
- }, R = [{
23524
+ }, A = [{
23324
23525
  value: "normal",
23325
23526
  tooltip: "Normal density",
23326
23527
  icon: /* @__PURE__ */ jsx(NormalDensityIcon, { size: 20 })
@@ -23330,12 +23531,12 @@ function BulkActions({ totalItems: e = 0, selectedItems: t = 0, onSelectAll: n,
23330
23531
  icon: /* @__PURE__ */ jsx(CompactDensityIcon, { size: 20 })
23331
23532
  }];
23332
23533
  return /* @__PURE__ */ jsxs("div", {
23333
- className: cn("grid grid-cols-[minmax(0,1fr)_auto_auto] items-center gap-4", o),
23534
+ className: cn("gap-4 grid grid-cols-[minmax(0,1fr)_auto_auto] items-center", o),
23334
23535
  children: [
23335
23536
  /* @__PURE__ */ jsx(Checkbox, {
23336
23537
  checked: c,
23337
23538
  indeterminate: l,
23338
- onChange: g,
23539
+ onChange: h,
23339
23540
  icon: /* @__PURE__ */ jsx(CheckboxIcon, {
23340
23541
  size: 16,
23341
23542
  className: "text-white-variant-7"
@@ -23349,8 +23550,8 @@ function BulkActions({ totalItems: e = 0, selectedItems: t = 0, onSelectAll: n,
23349
23550
  }),
23350
23551
  /* @__PURE__ */ jsx("div", {
23351
23552
  className: "flex items-center divide-x divide-neutral-400-variant-1",
23352
- children: t > 0 && /* @__PURE__ */ jsx(Fragment$1, { children: Object.entries(xo).map(([e, t]) => /* @__PURE__ */ jsx("div", {
23353
- className: "flex items-center gap-2 px-1",
23553
+ children: t > 0 && /* @__PURE__ */ jsx(Fragment$1, { children: Object.entries(Jo).map(([e, t]) => /* @__PURE__ */ jsx("div", {
23554
+ className: "gap-2 px-1 flex items-center",
23354
23555
  children: t.map((e) => /* @__PURE__ */ jsx(InfoTooltip, {
23355
23556
  content: e.tooltip,
23356
23557
  className: "border-black",
@@ -23363,14 +23564,14 @@ function BulkActions({ totalItems: e = 0, selectedItems: t = 0, onSelectAll: n,
23363
23564
  }, e)) })
23364
23565
  }),
23365
23566
  /* @__PURE__ */ jsx("div", {
23366
- className: "flex items-center gap-2",
23367
- children: R.map(({ value: e, tooltip: t, icon: n }) => {
23567
+ className: "gap-2 flex items-center",
23568
+ children: A.map(({ value: e, tooltip: t, icon: n }) => {
23368
23569
  let r = f === e;
23369
23570
  return /* @__PURE__ */ jsx(InfoTooltip, {
23370
23571
  content: t,
23371
23572
  children: /* @__PURE__ */ jsx(IconButton, {
23372
23573
  className: cn("h-7 w-7 p-0 text-neutral-900", r && "bg-white-variant-4"),
23373
- onClick: () => A(e),
23574
+ onClick: () => g(e),
23374
23575
  icon: n,
23375
23576
  "aria-pressed": r
23376
23577
  })
@@ -23382,8 +23583,8 @@ function BulkActions({ totalItems: e = 0, selectedItems: t = 0, onSelectAll: n,
23382
23583
  }
23383
23584
  var filterButtonStyles = tv({
23384
23585
  slots: {
23385
- root: "inline-flex w-fit items-center gap-1 rounded-full border-[1.5px] px-2 py-1 transition-colors",
23386
- label: "flex shrink-0 items-center gap-1 text-xs whitespace-nowrap"
23586
+ root: "gap-1 px-2 py-1 inline-flex w-fit items-center rounded-full border-[1.5px] transition-colors",
23587
+ label: "gap-1 text-xs flex shrink-0 items-center whitespace-nowrap"
23387
23588
  },
23388
23589
  variants: {
23389
23590
  variant: {
@@ -23449,6 +23650,7 @@ var filterButtonStyles = tv({
23449
23650
  },
23450
23651
  insight: {
23451
23652
  icon: InsightIcon,
23653
+ selectedIcon: InsightFillIcon,
23452
23654
  label: "Insights",
23453
23655
  iconColor: "text-primary-600"
23454
23656
  },
@@ -23497,9 +23699,9 @@ function FilterButton({ variant: e = "custom", label: t, count: n, selected: r =
23497
23699
  function IconCountButtonSkeleton({ orientation: e = "vertical", className: t }) {
23498
23700
  let n = e === "vertical";
23499
23701
  return /* @__PURE__ */ jsxs("div", {
23500
- className: cn("flex w-fit items-center", n ? "flex-col gap-1" : "flex-row gap-2", t),
23702
+ className: cn("flex w-fit items-center", n ? "gap-1 flex-col" : "gap-2 flex-row", t),
23501
23703
  children: [/* @__PURE__ */ jsx(Skeleton, { className: "size-8 rounded-full" }), /* @__PURE__ */ jsx("div", {
23502
- className: cn("flex items-center gap-1", n && "text-[9px]"),
23704
+ className: cn("gap-1 flex items-center", n && "text-[9px]"),
23503
23705
  children: /* @__PURE__ */ jsx(Skeleton, { className: cn("h-3", n ? "w-10" : "w-14") })
23504
23706
  })]
23505
23707
  });
@@ -23507,8 +23709,8 @@ function IconCountButtonSkeleton({ orientation: e = "vertical", className: t })
23507
23709
  var iconCountButtonStyles = tv({
23508
23710
  slots: {
23509
23711
  root: "flex w-fit items-center",
23510
- bubble: "flex size-8 items-center justify-center rounded-full border-[1.5px] transition-opacity hover:opacity-70",
23511
- label: "flex items-center gap-1 transition-colors",
23712
+ bubble: "size-8 flex items-center justify-center rounded-full border-[1.5px] transition-opacity hover:opacity-70",
23713
+ label: "gap-1 flex items-center transition-colors",
23512
23714
  count: "font-normal",
23513
23715
  icon: ""
23514
23716
  },
@@ -23527,11 +23729,11 @@ var iconCountButtonStyles = tv({
23527
23729
  },
23528
23730
  orientation: {
23529
23731
  vertical: {
23530
- root: "flex-col gap-1",
23531
- label: "text-[9px] font-semibold"
23732
+ root: "gap-1 flex-col",
23733
+ label: "font-semibold text-[9px]"
23532
23734
  },
23533
23735
  horizontal: {
23534
- root: "flex-row gap-2",
23736
+ root: "gap-2 flex-row",
23535
23737
  label: "text-xs font-semibold"
23536
23738
  }
23537
23739
  }
@@ -23605,12 +23807,12 @@ function ToggleControlPortal({ isPressed: e, isPortalHovered: t, portalPosition:
23605
23807
  tabIndex: 0,
23606
23808
  "aria-pressed": e,
23607
23809
  "aria-label": c,
23608
- className: "flex size-5 cursor-pointer items-center justify-center rounded-full bg-white",
23810
+ className: "size-5 flex cursor-pointer items-center justify-center rounded-full bg-white",
23609
23811
  onMouseEnter: r,
23610
23812
  onMouseLeave: i,
23611
23813
  onClick: a,
23612
23814
  children: /* @__PURE__ */ jsxs("div", {
23613
- className: cn("flex size-4 items-center justify-center rounded-full border", e ? "border-tertiary-500" : "border-neutral-800"),
23815
+ className: cn("size-4 flex items-center justify-center rounded-full border", e ? "border-tertiary-500" : "border-neutral-800"),
23614
23816
  children: [o && /* @__PURE__ */ jsx("div", { className: "size-2 rounded-full bg-neutral-800" }), e && /* @__PURE__ */ jsx(CloseIcon, {
23615
23817
  size: 12,
23616
23818
  className: "text-tertiary-500"
@@ -23620,20 +23822,20 @@ function ToggleControlPortal({ isPressed: e, isPortalHovered: t, portalPosition:
23620
23822
  })
23621
23823
  }), document.body);
23622
23824
  }
23623
- function IconCountButton({ icon: e, label: t, count: n, variant: r = "primary", orientation: i = "vertical", status: a = "active", alwaysShowCount: o = !1, showToggleControl: s = !1, pressed: c, defaultPressed: l = !1, onPressedChange: f, classNames: g, ...O }) {
23624
- let A = iconCountButtonStyles({
23825
+ function IconCountButton({ icon: e, label: t, count: n, variant: r = "primary", orientation: i = "vertical", status: a = "active", alwaysShowCount: o = !1, showToggleControl: s = !1, pressed: c, defaultPressed: l = !1, onPressedChange: u, classNames: p, ...g }) {
23826
+ let O = iconCountButtonStyles({
23625
23827
  variant: r,
23626
23828
  orientation: i,
23627
23829
  status: a
23628
- }), xo = useRef(null), [R, So] = useState(!1), [Co, wo] = useState(!1), [To, Eo] = useState(l), [Do, Oo] = useState(null), ko = c ?? To, Ao = s && (R || Co || ko), jo = typeof n == "number" && n > 0 && (o || a === "active");
23629
- function Mo(e) {
23630
- c === void 0 && Eo(e), f?.(e);
23830
+ }), Jo = useRef(null), [A, R] = useState(!1), [Yo, Xo] = useState(!1), [Zo, Qo] = useState(l), [$o, B] = useState(null), es = c ?? Zo, ts = s && (A || Yo || es), ns = typeof n == "number" && n > 0 && (o || a === "active");
23831
+ function rs(e) {
23832
+ c === void 0 && Qo(e), u?.(e);
23631
23833
  }
23632
23834
  return useLayoutEffect(() => {
23633
- if (!Ao || !xo.current) return;
23835
+ if (!ts || !Jo.current) return;
23634
23836
  function e() {
23635
- let e = xo.current?.getBoundingClientRect();
23636
- e && Oo({
23837
+ let e = Jo.current?.getBoundingClientRect();
23838
+ e && B({
23637
23839
  top: e.top - 8,
23638
23840
  left: e.right - 12
23639
23841
  });
@@ -23641,30 +23843,30 @@ function IconCountButton({ icon: e, label: t, count: n, variant: r = "primary",
23641
23843
  return e(), window.addEventListener("resize", e), window.addEventListener("scroll", e, !0), () => {
23642
23844
  window.removeEventListener("resize", e), window.removeEventListener("scroll", e, !0);
23643
23845
  };
23644
- }, [Ao]), /* @__PURE__ */ jsxs(Button, {
23645
- ...O,
23646
- className: cn(A.root(), g?.root),
23647
- onMouseEnter: () => So(!0),
23648
- onMouseLeave: () => So(!1),
23846
+ }, [ts]), /* @__PURE__ */ jsxs(Button, {
23847
+ ...g,
23848
+ className: cn(O.root(), p?.root),
23849
+ onMouseEnter: () => R(!0),
23850
+ onMouseLeave: () => R(!1),
23649
23851
  children: [/* @__PURE__ */ jsxs("div", {
23650
23852
  className: "relative",
23651
23853
  children: [/* @__PURE__ */ jsx("div", {
23652
- ref: xo,
23653
- className: cn(A.bubble(), g?.bubble),
23654
- children: renderIcon(e, A.icon())
23655
- }), Ao && Do && typeof document < "u" && ToggleControlPortal({
23656
- isPressed: ko,
23657
- isPortalHovered: Co,
23658
- portalPosition: Do,
23659
- onMouseEnter: () => wo(!0),
23660
- onMouseLeave: () => wo(!1),
23661
- onToggle: () => Mo(!ko)
23854
+ ref: Jo,
23855
+ className: cn(O.bubble(), p?.bubble),
23856
+ children: renderIcon(e, O.icon())
23857
+ }), ts && $o && typeof document < "u" && ToggleControlPortal({
23858
+ isPressed: es,
23859
+ isPortalHovered: Yo,
23860
+ portalPosition: $o,
23861
+ onMouseEnter: () => Xo(!0),
23862
+ onMouseLeave: () => Xo(!1),
23863
+ onToggle: () => rs(!es)
23662
23864
  })]
23663
23865
  }), /* @__PURE__ */ jsxs("div", {
23664
- className: cn(A.label(), g?.label),
23665
- children: [/* @__PURE__ */ jsx("span", { children: t }), jo && /* @__PURE__ */ jsxs("span", {
23866
+ className: cn(O.label(), p?.label),
23867
+ children: [/* @__PURE__ */ jsx("span", { children: t }), ns && /* @__PURE__ */ jsxs("span", {
23666
23868
  "aria-label": `${n} items`,
23667
- className: cn(A.count(), g?.count),
23869
+ className: cn(O.count(), p?.count),
23668
23870
  children: [
23669
23871
  "(",
23670
23872
  formatCount(n),
@@ -23676,7 +23878,7 @@ function IconCountButton({ icon: e, label: t, count: n, variant: r = "primary",
23676
23878
  }
23677
23879
  function ActionMenuItem({ icon: e, label: t, className: n, selected: r, ...a }) {
23678
23880
  return /* @__PURE__ */ jsxs(Button, {
23679
- className: cn("flex items-center justify-start gap-2 bg-white px-3 py-2 hover:bg-neutral-100", r && "bg-primary-500 text-white hover:bg-primary-bright", n),
23881
+ className: cn("gap-2 px-3 py-2 flex items-center justify-start bg-white hover:bg-neutral-100", r && "bg-primary-500 text-white hover:bg-primary-bright", n),
23680
23882
  ...a,
23681
23883
  children: [e && cloneElement(e, {
23682
23884
  size: e.props.size ?? 16,
@@ -23690,13 +23892,13 @@ function ActionMenuItem({ icon: e, label: t, className: n, selected: r, ...a })
23690
23892
  function ActionMenu({ trigger: e, children: t, className: n, ...r }) {
23691
23893
  return /* @__PURE__ */ jsx(DropdownMenu, {
23692
23894
  trigger: e,
23693
- className: cn("mt-1 min-w-20 overflow-hidden rounded border border-neutral-400 bg-white p-0 shadow-lg", n),
23895
+ className: cn("mt-1 min-w-20 rounded p-0 shadow-lg overflow-hidden border border-neutral-400 bg-white", n),
23694
23896
  ...r,
23695
23897
  children: t
23696
23898
  });
23697
23899
  }
23698
23900
  function CalendarPanel({ mode: e, selectedDate: t, selectedRange: n, onDateSelect: r, onRangeSelect: i }) {
23699
- let { close: a } = useDropdown(), o = useMemo(() => /* @__PURE__ */ new Date(), []), [s, c] = useState(null), u = useRef(t), g = useRef(n), [O, A] = useState(() => {
23901
+ let { close: a } = useDropdown(), o = useMemo(() => /* @__PURE__ */ new Date(), []), [s, c] = useState(null), u = useRef(t), f = useRef(n), [g, O] = useState(() => {
23700
23902
  let r = e === "single" ? t ?? o : n.startDate ?? n.endDate ?? o;
23701
23903
  return {
23702
23904
  year: r.getFullYear(),
@@ -23704,28 +23906,28 @@ function CalendarPanel({ mode: e, selectedDate: t, selectedRange: n, onDateSelec
23704
23906
  };
23705
23907
  });
23706
23908
  useEffect(() => {
23707
- (e === "single" && t && (!u.current || t.getTime() !== u.current.getTime()) || e === "range" && (n.startDate?.getTime() !== g.current.startDate?.getTime() || n.endDate?.getTime() !== g.current.endDate?.getTime())) && queueMicrotask(() => {
23708
- if (e === "single" && t) A({
23909
+ (e === "single" && t && (!u.current || t.getTime() !== u.current.getTime()) || e === "range" && (n.startDate?.getTime() !== f.current.startDate?.getTime() || n.endDate?.getTime() !== f.current.endDate?.getTime())) && queueMicrotask(() => {
23910
+ if (e === "single" && t) O({
23709
23911
  year: t.getFullYear(),
23710
23912
  month: t.getMonth()
23711
23913
  });
23712
23914
  else if (e === "range") {
23713
23915
  let e = n.startDate ?? n.endDate;
23714
- e && A({
23916
+ e && O({
23715
23917
  year: e.getFullYear(),
23716
23918
  month: e.getMonth()
23717
23919
  });
23718
23920
  }
23719
- }), u.current = t, g.current = n;
23921
+ }), u.current = t, f.current = n;
23720
23922
  }, [
23721
23923
  e,
23722
23924
  t,
23723
23925
  n
23724
23926
  ]);
23725
- let xo = useMemo(() => generateCalendarDays(O.year, O.month), [O.year, O.month]);
23726
- function R(t) {
23927
+ let Jo = useMemo(() => generateCalendarDays(g.year, g.month), [g.year, g.month]);
23928
+ function A(t) {
23727
23929
  let o = t.getMonth(), s = t.getFullYear();
23728
- if ((o !== O.month || s !== O.year) && A({
23930
+ if ((o !== g.month || s !== g.year) && O({
23729
23931
  year: s,
23730
23932
  month: o
23731
23933
  }), e === "single") r(t), a();
@@ -23740,8 +23942,8 @@ function CalendarPanel({ mode: e, selectedDate: t, selectedRange: n, onDateSelec
23740
23942
  }), a());
23741
23943
  }
23742
23944
  }
23743
- function So() {
23744
- A((e) => e.month === 0 ? {
23945
+ function R() {
23946
+ O((e) => e.month === 0 ? {
23745
23947
  year: e.year - 1,
23746
23948
  month: 11
23747
23949
  } : {
@@ -23749,8 +23951,8 @@ function CalendarPanel({ mode: e, selectedDate: t, selectedRange: n, onDateSelec
23749
23951
  month: e.month - 1
23750
23952
  });
23751
23953
  }
23752
- function Co() {
23753
- A((e) => e.month === 11 ? {
23954
+ function Yo() {
23955
+ O((e) => e.month === 11 ? {
23754
23956
  year: e.year + 1,
23755
23957
  month: 0
23756
23958
  } : {
@@ -23758,28 +23960,28 @@ function CalendarPanel({ mode: e, selectedDate: t, selectedRange: n, onDateSelec
23758
23960
  month: e.month + 1
23759
23961
  });
23760
23962
  }
23761
- let wo = getWeekdays();
23963
+ let Xo = getWeekdays();
23762
23964
  return /* @__PURE__ */ jsxs("div", {
23763
- className: "mt-1 w-fit rounded-lg border border-neutral-400 bg-white p-2 shadow-lg",
23965
+ className: "mt-1 rounded-lg p-2 shadow-lg w-fit border border-neutral-400 bg-white",
23764
23966
  children: [
23765
23967
  /* @__PURE__ */ jsxs("div", {
23766
- className: "mb-4 flex items-center justify-between border-b border-neutral-400 pb-2",
23968
+ className: "mb-4 pb-2 flex items-center justify-between border-b border-neutral-400",
23767
23969
  children: [
23768
23970
  /* @__PURE__ */ jsx(IconButton, {
23769
23971
  icon: /* @__PURE__ */ jsx(ArrowIcon, {
23770
23972
  direction: "left",
23771
23973
  size: 20
23772
23974
  }),
23773
- onClick: So,
23975
+ onClick: R,
23774
23976
  className: "hover:opacity-60",
23775
23977
  "aria-label": "Previous month"
23776
23978
  }),
23777
23979
  /* @__PURE__ */ jsxs("div", {
23778
- className: "text-[10px] font-bold text-neutral-900",
23980
+ className: "font-bold text-[10px] text-neutral-900",
23779
23981
  children: [
23780
- getMonthName(O.month),
23982
+ getMonthName(g.month),
23781
23983
  " ",
23782
- O.year
23984
+ g.year
23783
23985
  ]
23784
23986
  }),
23785
23987
  /* @__PURE__ */ jsx(IconButton, {
@@ -23787,7 +23989,7 @@ function CalendarPanel({ mode: e, selectedDate: t, selectedRange: n, onDateSelec
23787
23989
  direction: "right",
23788
23990
  size: 20
23789
23991
  }),
23790
- onClick: Co,
23992
+ onClick: Yo,
23791
23993
  className: "hover:opacity-60",
23792
23994
  "aria-label": "Next month"
23793
23995
  })
@@ -23795,20 +23997,20 @@ function CalendarPanel({ mode: e, selectedDate: t, selectedRange: n, onDateSelec
23795
23997
  }),
23796
23998
  /* @__PURE__ */ jsx("div", {
23797
23999
  className: "mb-2 grid grid-cols-7",
23798
- children: wo.map((e) => /* @__PURE__ */ jsx("div", {
23799
- className: "flex items-center justify-center p-0.5 text-[9px] font-bold text-neutral-900",
24000
+ children: Xo.map((e) => /* @__PURE__ */ jsx("div", {
24001
+ className: "p-0.5 font-bold flex items-center justify-center text-[9px] text-neutral-900",
23800
24002
  children: e
23801
24003
  }, e))
23802
24004
  }),
23803
24005
  /* @__PURE__ */ jsx("div", {
23804
24006
  className: "grid grid-cols-7",
23805
- children: xo.map(({ day: r, date: i, isCurrentMonth: a }) => {
23806
- let o = isToday(i), l = e === "single" && t && isSameDay(i, t), { startDate: u, endDate: f } = n, p = u && isSameDay(i, u), h = f && isSameDay(i, f), g = u, O = s;
23807
- e === "range" && u && !f && s && !isDateBefore(s, u) ? (g = u, O = s) : (g = null, O = null);
23808
- let bo = e === "range" && (isDateInRange(i, u, f) || isDateInRange(i, g, O)), A = l || p || h;
24007
+ children: Jo.map(({ day: r, date: i, isCurrentMonth: a }) => {
24008
+ let o = isToday(i), l = e === "single" && t && isSameDay(i, t), { startDate: u, endDate: f } = n, p = u && isSameDay(i, u), h = f && isSameDay(i, f), Go = u, g = s;
24009
+ e === "range" && u && !f && s && !isDateBefore(s, u) ? (Go = u, g = s) : (Go = null, g = null);
24010
+ let O = e === "range" && (isDateInRange(i, u, f) || isDateInRange(i, Go, g)), qo = l || p || h;
23809
24011
  return /* @__PURE__ */ jsx(Button, {
23810
24012
  type: "button",
23811
- onClick: () => R(i),
24013
+ onClick: () => A(i),
23812
24014
  onMouseEnter: () => {
23813
24015
  e === "range" && u && !f && !isDateBefore(i, u) && c(i);
23814
24016
  },
@@ -23817,9 +24019,9 @@ function CalendarPanel({ mode: e, selectedDate: t, selectedRange: n, onDateSelec
23817
24019
  },
23818
24020
  className: "p-0.5",
23819
24021
  "aria-label": `Select ${formatDate(i)}`,
23820
- "aria-selected": A || void 0,
24022
+ "aria-selected": qo || void 0,
23821
24023
  children: /* @__PURE__ */ jsx("div", {
23822
- className: cn("flex h-[26px] w-[26px] items-center justify-center rounded text-[9px] transition-colors", A && "bg-primary-500 font-semibold text-white-variant-1 hover:bg-primary-500", bo && !A && "bg-primary-500/20 font-normal text-neutral-900 hover:bg-primary-500/30", o && !A && !bo && "border border-primary-500 bg-primary-500/15 font-bold hover:bg-primary-500 hover:text-white", !A && !bo && (a ? "text-neutral-900 hover:bg-neutral-300" : "text-neutral-600 hover:bg-neutral-200")),
24024
+ className: cn("rounded flex h-[26px] w-[26px] items-center justify-center text-[9px] transition-colors", qo && "font-semibold bg-primary-500 text-white-variant-1 hover:bg-primary-500", O && !qo && "font-normal bg-primary-500/20 text-neutral-900 hover:bg-primary-500/30", o && !qo && !O && "font-bold border border-primary-500 bg-primary-500/15 hover:bg-primary-500 hover:text-white", !qo && !O && (a ? "text-neutral-900 hover:bg-neutral-300" : "text-neutral-600 hover:bg-neutral-200")),
23823
24025
  children: r
23824
24026
  })
23825
24027
  }, `${i.getFullYear()}-${i.getMonth()}-${r}`);
@@ -23835,7 +24037,7 @@ function DatePickerTrigger({ displayText: e, disabled: t, className: n, onClear:
23835
24037
  }
23836
24038
  return /* @__PURE__ */ jsxs(Pressable, {
23837
24039
  disabled: t,
23838
- className: cn("flex items-center justify-start gap-1 rounded-full border border-neutral-300 bg-white px-2 py-1 text-left text-xs text-neutral-800 transition-colors hover:border-neutral-500", e && "border-primary-400 hover:border-primary-500 hover:bg-primary-light", n),
24040
+ className: cn("gap-1 px-2 py-1 text-xs flex items-center justify-start rounded-full border border-neutral-300 bg-white text-left text-neutral-800 transition-colors hover:border-neutral-500", e && "border-primary-400 hover:border-primary-500 hover:bg-primary-light", n),
23839
24041
  children: [
23840
24042
  /* @__PURE__ */ jsx(CalendarIcon, {
23841
24043
  size: 20,
@@ -23881,14 +24083,14 @@ function DatePicker({ mode: e = "single", value: t, defaultValue: n, onChange: r
23881
24083
  startDate: null,
23882
24084
  endDate: null
23883
24085
  };
23884
- function g(t) {
24086
+ function h(t) {
23885
24087
  e === "single" && (u || s(t), r?.(t));
23886
24088
  }
23887
- function bo(t) {
24089
+ function g(t) {
23888
24090
  e === "range" && (u || l(t), r?.(t));
23889
24091
  }
23890
- function A() {
23891
- e === "single" ? g(null) : bo({
24092
+ function qo() {
24093
+ e === "single" ? h(null) : g({
23892
24094
  startDate: null,
23893
24095
  endDate: null
23894
24096
  });
@@ -23898,15 +24100,15 @@ function DatePicker({ mode: e = "single", value: t, defaultValue: n, onChange: r
23898
24100
  displayText: e === "single" ? formatDate(f) : formatDateRange(p.startDate, p.endDate),
23899
24101
  disabled: i,
23900
24102
  className: a,
23901
- onClear: A
24103
+ onClear: qo
23902
24104
  }),
23903
24105
  disabled: i,
23904
24106
  children: /* @__PURE__ */ jsx(CalendarPanel, {
23905
24107
  mode: e,
23906
24108
  selectedDate: f,
23907
24109
  selectedRange: p,
23908
- onDateSelect: g,
23909
- onRangeSelect: bo
24110
+ onDateSelect: h,
24111
+ onRangeSelect: g
23910
24112
  })
23911
24113
  }) });
23912
24114
  }
@@ -23925,14 +24127,14 @@ const EVENT_CARD_HEIGHT_SIZE = {
23925
24127
  };
23926
24128
  function EventCardSkeleton({ density: e = "normal", className: t, style: n }) {
23927
24129
  return /* @__PURE__ */ jsx(Card, {
23928
- className: cn("w-full rounded-lg bg-white-variant-5 p-4", e === "normal" ? `${EVENT_CARD_HEIGHT_SIZE.normal.style}` : `${EVENT_CARD_HEIGHT_SIZE.compact.style}`, t),
24130
+ className: cn("rounded-lg p-4 w-full bg-white-variant-5", e === "normal" ? `${EVENT_CARD_HEIGHT_SIZE.normal.style}` : `${EVENT_CARD_HEIGHT_SIZE.compact.style}`, t),
23929
24131
  style: n,
23930
24132
  children: e === "normal" ? /* @__PURE__ */ jsxs(CardLayout, {
23931
24133
  className: "gap-x-2 gap-y-1",
23932
24134
  children: [
23933
24135
  /* @__PURE__ */ jsx(CardSidebar, { children: /* @__PURE__ */ jsx(Skeleton, { className: "h-5 w-5" }) }),
23934
24136
  /* @__PURE__ */ jsxs(CardHeader, {
23935
- className: "grid grid-cols-[auto_minmax(0,1fr)_auto_auto] items-center gap-2",
24137
+ className: "gap-2 grid grid-cols-[auto_minmax(0,1fr)_auto_auto] items-center",
23936
24138
  children: [
23937
24139
  /* @__PURE__ */ jsx(Skeleton, { className: "h-4 w-4" }),
23938
24140
  /* @__PURE__ */ jsx(Skeleton, { className: "h-4 w-24" }),
@@ -23941,17 +24143,17 @@ function EventCardSkeleton({ density: e = "normal", className: t, style: n }) {
23941
24143
  ]
23942
24144
  }),
23943
24145
  /* @__PURE__ */ jsx(CardTitle, {
23944
- className: "flex h-5 items-center",
24146
+ className: "h-5 flex items-center",
23945
24147
  children: /* @__PURE__ */ jsx(Skeleton, { className: "h-4 w-48" })
23946
24148
  }),
23947
24149
  /* @__PURE__ */ jsxs(CardContent, { children: [/* @__PURE__ */ jsx(Skeleton, { className: "my-1 h-4 w-full" }), /* @__PURE__ */ jsx(Skeleton, { className: "my-1 h-4 w-3/4" })] }),
23948
24150
  /* @__PURE__ */ jsxs(CardFooter, {
23949
- className: "mt-3 grid grid-cols-[minmax(0,1fr)_auto] items-center gap-1",
24151
+ className: "mt-3 gap-1 grid grid-cols-[minmax(0,1fr)_auto] items-center",
23950
24152
  children: [/* @__PURE__ */ jsx("div", {
23951
- className: "flex gap-2",
24153
+ className: "gap-2 flex",
23952
24154
  children: /* @__PURE__ */ jsx(Skeleton, { className: "h-6 w-23 rounded-full" })
23953
24155
  }), /* @__PURE__ */ jsxs("div", {
23954
- className: "flex gap-2",
24156
+ className: "gap-2 flex",
23955
24157
  children: [
23956
24158
  /* @__PURE__ */ jsx(Skeleton, { className: "h-6 w-6 rounded-full" }),
23957
24159
  /* @__PURE__ */ jsx(Skeleton, { className: "h-6 w-6 rounded-full" }),
@@ -23961,16 +24163,16 @@ function EventCardSkeleton({ density: e = "normal", className: t, style: n }) {
23961
24163
  })
23962
24164
  ]
23963
24165
  }) : /* @__PURE__ */ jsxs(CardLayout, {
23964
- className: "grid grid-cols-[auto_1fr] grid-rows-1 gap-x-2",
24166
+ className: "gap-x-2 grid grid-cols-[auto_1fr] grid-rows-1",
23965
24167
  children: [/* @__PURE__ */ jsx(CardSidebar, {
23966
24168
  className: "flex items-center justify-center",
23967
24169
  children: /* @__PURE__ */ jsx(Skeleton, { className: "h-5 w-5" })
23968
24170
  }), /* @__PURE__ */ jsxs(CardHeader, {
23969
- className: "flex min-w-0 items-center gap-2",
24171
+ className: "min-w-0 gap-2 flex items-center",
23970
24172
  children: [
23971
24173
  /* @__PURE__ */ jsx(Skeleton, { className: "h-4 w-4" }),
23972
24174
  /* @__PURE__ */ jsx("div", {
23973
- className: "flex min-w-0 items-center gap-2",
24175
+ className: "min-w-0 gap-2 flex items-center",
23974
24176
  children: /* @__PURE__ */ jsx(Skeleton, { className: "h-4 w-32" })
23975
24177
  }),
23976
24178
  /* @__PURE__ */ jsx("div", { className: "flex-1" }),
@@ -24010,7 +24212,7 @@ var EVENT_ACTION_CONFIG = {
24010
24212
  })
24011
24213
  }
24012
24214
  }, eventCardStyles = tv({
24013
- base: "w-full rounded-lg border-[1.5px] bg-white-variant-5 p-4",
24215
+ base: "rounded-lg p-4 w-full border-[1.5px] bg-white-variant-5",
24014
24216
  variants: {
24015
24217
  tone: {
24016
24218
  default: "hover:bg-primary-light",
@@ -24088,7 +24290,7 @@ function EventCheckbox({ checked: e, onCheckedChange: t }) {
24088
24290
  }
24089
24291
  function EventStatusesList({ statusBadges: e, density: t }) {
24090
24292
  return Object.keys(e).length === 0 ? null : /* @__PURE__ */ jsx("div", {
24091
- className: "flex gap-2",
24293
+ className: "gap-2 flex",
24092
24294
  children: /* @__PURE__ */ jsx(StopPropagation, { children: Object.keys(e).map((n) => {
24093
24295
  let r = e[n];
24094
24296
  return r ? /* @__PURE__ */ jsx(StatusBadge, {
@@ -24102,7 +24304,7 @@ function EventStatusesList({ statusBadges: e, density: t }) {
24102
24304
  }
24103
24305
  function EventActionsList({ actions: e, className: t }) {
24104
24306
  return Object.keys(e).length === 0 ? null : /* @__PURE__ */ jsx("div", {
24105
- className: cn("flex gap-2", t),
24307
+ className: cn("gap-2 flex", t),
24106
24308
  children: /* @__PURE__ */ jsx(StopPropagation, { children: Object.keys(e).map((t) => {
24107
24309
  let n = e[t];
24108
24310
  return n ? /* @__PURE__ */ jsx(IconButton, {
@@ -24112,18 +24314,18 @@ function EventActionsList({ actions: e, className: t }) {
24112
24314
  }) })
24113
24315
  });
24114
24316
  }
24115
- function EventCard({ icon: e, service: t, sender: n, title: r, content: i, timestamp: a, timestampTooltip: o, workspace: s, read: c = !1, selected: l = !1, onSelect: u, checked: f = !1, onCheckedChange: p, statusBadges: h = {}, actions: g = {}, density: O = "normal", className: A, style: xo, isPriority: R, isDone: So }) {
24317
+ function EventCard({ icon: e, service: t, sender: n, title: r, content: i, timestamp: a, timestampTooltip: o, workspace: s, read: c = !1, selected: l = !1, onSelect: u, checked: f = !1, onCheckedChange: p, statusBadges: h = {}, actions: Go = {}, density: g = "normal", className: O, style: Jo, isPriority: A, isDone: R }) {
24116
24318
  return /* @__PURE__ */ jsx(Card, {
24117
24319
  as: Pressable,
24118
24320
  onPress: u,
24119
24321
  className: cn(eventCardStyles({
24120
- tone: R ? "priority" : So ? "done" : "default",
24322
+ tone: A ? "priority" : R ? "done" : "default",
24121
24323
  state: l ? "selected" : c ? "read" : "unread",
24122
- density: O
24123
- }), A),
24124
- style: xo,
24324
+ density: g
24325
+ }), O),
24326
+ style: Jo,
24125
24327
  "data-service": t,
24126
- children: O === "normal" ? /* @__PURE__ */ jsxs(CardLayout, {
24328
+ children: g === "normal" ? /* @__PURE__ */ jsxs(CardLayout, {
24127
24329
  className: "gap-x-2 gap-y-1",
24128
24330
  children: [
24129
24331
  /* @__PURE__ */ jsx(CardSidebar, { children: /* @__PURE__ */ jsx(EventCheckbox, {
@@ -24131,11 +24333,11 @@ function EventCard({ icon: e, service: t, sender: n, title: r, content: i, times
24131
24333
  onCheckedChange: p
24132
24334
  }) }),
24133
24335
  /* @__PURE__ */ jsxs(CardHeader, {
24134
- className: "grid grid-cols-[auto_minmax(0,1fr)_auto_auto] items-center gap-2",
24336
+ className: "gap-2 grid grid-cols-[auto_minmax(0,1fr)_auto_auto] items-center",
24135
24337
  children: [
24136
24338
  e,
24137
24339
  /* @__PURE__ */ jsx("span", {
24138
- className: cn("min-w-0 -translate-x-0.5 truncate text-sm font-bold text-neutral-900", c && "font-medium"),
24340
+ className: cn("min-w-0 -translate-x-0.5 text-sm font-bold truncate text-neutral-900", c && "font-medium"),
24139
24341
  children: n
24140
24342
  }),
24141
24343
  /* @__PURE__ */ jsx("span", {
@@ -24149,23 +24351,23 @@ function EventCard({ icon: e, service: t, sender: n, title: r, content: i, times
24149
24351
  ]
24150
24352
  }),
24151
24353
  /* @__PURE__ */ jsx(CardTitle, {
24152
- className: cn("line-clamp-1 text-sm font-bold text-neutral-900", c && "font-medium"),
24354
+ className: cn("text-sm font-bold line-clamp-1 text-neutral-900", c && "font-medium"),
24153
24355
  children: r
24154
24356
  }),
24155
24357
  /* @__PURE__ */ jsx(CardContent, {
24156
- className: "line-clamp-2 min-w-0 text-sm text-neutral-900",
24358
+ className: "min-w-0 text-sm line-clamp-2 text-neutral-900",
24157
24359
  children: i
24158
24360
  }),
24159
24361
  /* @__PURE__ */ jsxs(CardFooter, {
24160
- className: "mt-3 grid grid-cols-[minmax(0,1fr)_auto] items-center gap-1",
24362
+ className: "mt-3 gap-1 grid grid-cols-[minmax(0,1fr)_auto] items-center",
24161
24363
  children: [/* @__PURE__ */ jsx(EventStatusesList, { statusBadges: h }), /* @__PURE__ */ jsx(EventActionsList, {
24162
- actions: g,
24364
+ actions: Go,
24163
24365
  className: "col-start-2 justify-self-end"
24164
24366
  })]
24165
24367
  })
24166
24368
  ]
24167
24369
  }) : /* @__PURE__ */ jsxs(CardLayout, {
24168
- className: "grid grid-cols-[auto_1fr] grid-rows-1 gap-x-2",
24370
+ className: "gap-x-2 grid grid-cols-[auto_1fr] grid-rows-1",
24169
24371
  children: [/* @__PURE__ */ jsx(CardSidebar, {
24170
24372
  className: "flex items-center justify-center",
24171
24373
  children: /* @__PURE__ */ jsx(EventCheckbox, {
@@ -24173,22 +24375,22 @@ function EventCard({ icon: e, service: t, sender: n, title: r, content: i, times
24173
24375
  onCheckedChange: p
24174
24376
  })
24175
24377
  }), /* @__PURE__ */ jsxs(CardHeader, {
24176
- className: "flex min-w-0 items-center gap-2",
24378
+ className: "min-w-0 gap-2 flex items-center",
24177
24379
  children: [
24178
24380
  e,
24179
24381
  /* @__PURE__ */ jsx(EventStatusesList, {
24180
24382
  statusBadges: h,
24181
- density: O
24383
+ density: g
24182
24384
  }),
24183
24385
  /* @__PURE__ */ jsxs("div", {
24184
- className: cn("flex min-w-0 items-center gap-2 text-sm font-bold whitespace-nowrap text-neutral-900", c && "font-medium"),
24386
+ className: cn("min-w-0 gap-2 text-sm font-bold flex items-center whitespace-nowrap text-neutral-900", c && "font-medium"),
24185
24387
  children: [
24186
24388
  /* @__PURE__ */ jsx("span", {
24187
24389
  className: "truncate",
24188
24390
  children: n
24189
24391
  }),
24190
24392
  /* @__PURE__ */ jsx("span", {
24191
- className: "shrink-0 text-sm text-neutral-500",
24393
+ className: "text-sm shrink-0 text-neutral-500",
24192
24394
  children: "•"
24193
24395
  }),
24194
24396
  /* @__PURE__ */ jsx("span", {
@@ -24198,7 +24400,7 @@ function EventCard({ icon: e, service: t, sender: n, title: r, content: i, times
24198
24400
  ]
24199
24401
  }),
24200
24402
  /* @__PURE__ */ jsx("div", { className: "flex-1" }),
24201
- /* @__PURE__ */ jsx(EventActionsList, { actions: g }),
24403
+ /* @__PURE__ */ jsx(EventActionsList, { actions: Go }),
24202
24404
  /* @__PURE__ */ jsx(InfoTooltip, {
24203
24405
  content: o,
24204
24406
  children: /* @__PURE__ */ jsx("span", {
@@ -24217,12 +24419,12 @@ function EventCard({ icon: e, service: t, sender: n, title: r, content: i, times
24217
24419
  }
24218
24420
  function EventDetailContentDetailsPanel({ title: e, rows: t }) {
24219
24421
  return /* @__PURE__ */ jsxs("div", {
24220
- className: "flex flex-col gap-2 rounded-lg bg-neutral-100-variant-3 p-4 text-sm text-neutral-800",
24422
+ className: "gap-2 rounded-lg p-4 text-sm flex flex-col bg-neutral-100-variant-3 text-neutral-800",
24221
24423
  children: [e && /* @__PURE__ */ jsx("div", {
24222
24424
  className: "font-bold",
24223
24425
  children: e
24224
24426
  }), /* @__PURE__ */ jsx("div", {
24225
- className: "grid grid-cols-[auto_1fr] gap-x-4 gap-y-1",
24427
+ className: "gap-x-4 gap-y-1 grid grid-cols-[auto_1fr]",
24226
24428
  children: t.map(({ label: e, value: t }) => /* @__PURE__ */ jsxs(Fragment, { children: [/* @__PURE__ */ jsxs("div", {
24227
24429
  className: "font-bold",
24228
24430
  children: [e, ":"]
@@ -24254,25 +24456,22 @@ function EventDetailContentCalendarDetails({ from: e, to: t, link: n, location:
24254
24456
  ] });
24255
24457
  }
24256
24458
  function EventDetailPriority({ priorityText: e }) {
24257
- return /* @__PURE__ */ jsxs("div", {
24258
- className: "sticky top-14 z-5 flex min-h-14 shrink-0 items-center gap-4 bg-tertiary-50 px-4 py-2",
24259
- children: [/* @__PURE__ */ jsx(FireIcon, {
24260
- size: 32,
24261
- className: "text-tertiary-500-variant-2"
24262
- }), /* @__PURE__ */ jsxs("div", {
24263
- className: "py-1 text-xs leading-[1.2] font-normal text-neutral-800",
24459
+ return /* @__PURE__ */ jsx("div", {
24460
+ className: "top-14 min-h-14 gap-4 px-4 py-3 sticky z-5 flex shrink-0 items-center bg-tertiary-50",
24461
+ children: /* @__PURE__ */ jsxs("div", {
24462
+ className: "py-1 text-xs font-normal leading-[1.2] text-neutral-800",
24264
24463
  children: [/* @__PURE__ */ jsx("span", {
24265
- className: "font-bold",
24464
+ className: "font-bold text-tertiary-500",
24266
24465
  children: "High Urgency:\xA0"
24267
24466
  }), e]
24268
- })]
24467
+ })
24269
24468
  });
24270
24469
  }
24271
24470
  function EventDetailSummary({ summary: e }) {
24272
24471
  return /* @__PURE__ */ jsxs("div", {
24273
- className: "flex gap-2 rounded-lg bg-neutral-100-variant-3 p-4",
24472
+ className: "gap-2 rounded-lg p-4 flex bg-neutral-100-variant-3",
24274
24473
  children: [/* @__PURE__ */ jsx(SummaryIcon, { size: 24 }), /* @__PURE__ */ jsxs("p", {
24275
- className: "text-sm leading-[1.3] font-normal text-neutral-800",
24474
+ className: "text-sm font-normal leading-[1.3] text-neutral-800",
24276
24475
  children: [/* @__PURE__ */ jsx("span", {
24277
24476
  className: "font-bold",
24278
24477
  children: "Summary:\xA0"
@@ -24280,17 +24479,13 @@ function EventDetailSummary({ summary: e }) {
24280
24479
  })]
24281
24480
  });
24282
24481
  }
24283
- function EventDetailContentHeader({ summary: e, priorityText: t, highlightPriority: n = !1, children: r, className: i }) {
24482
+ function EventDetailContentHeader({ summary: e, priorityText: t, children: n, className: r }) {
24284
24483
  return /* @__PURE__ */ jsxs("div", {
24285
- className: cn("flex flex-col", n && "relative", i),
24286
- children: [
24287
- n && /* @__PURE__ */ jsx("div", { className: "absolute top-0 left-0 z-10 h-full w-1 bg-tertiary-500-variant-2" }),
24288
- t != null && /* @__PURE__ */ jsx(EventDetailPriority, { priorityText: t }),
24289
- /* @__PURE__ */ jsxs("div", {
24290
- className: "flex flex-col gap-4 p-4",
24291
- children: [e != null && /* @__PURE__ */ jsx(EventDetailSummary, { summary: e }), r]
24292
- })
24293
- ]
24484
+ className: cn("flex flex-col", r),
24485
+ children: [t != null && /* @__PURE__ */ jsx(EventDetailPriority, { priorityText: t }), /* @__PURE__ */ jsxs("div", {
24486
+ className: "gap-4 p-4 flex flex-col",
24487
+ children: [e != null && /* @__PURE__ */ jsx(EventDetailSummary, { summary: e }), n]
24488
+ })]
24294
24489
  });
24295
24490
  }
24296
24491
  function EventDetailContentCalendar({ detail: { summary: e, body: t, priorityText: n, from: r, to: i, link: a, location: o }, className: s }) {
@@ -24333,7 +24528,6 @@ function EventDetailContentEmail({ detail: { summary: e, body: t, priorityText:
24333
24528
  return /* @__PURE__ */ jsxs(EventDetailContentHeader, {
24334
24529
  summary: e,
24335
24530
  priorityText: n,
24336
- highlightPriority: !!n,
24337
24531
  className: s,
24338
24532
  children: [/* @__PURE__ */ jsx(EventDetailContentEmailDetails, {
24339
24533
  subject: r,
@@ -24341,18 +24535,18 @@ function EventDetailContentEmail({ detail: { summary: e, body: t, priorityText:
24341
24535
  date: a,
24342
24536
  from: o
24343
24537
  }), /* @__PURE__ */ jsx(RichContent, {
24344
- className: "max-w-[1260px] px-4",
24538
+ className: "px-4 max-w-[1260px]",
24345
24539
  content: t
24346
24540
  })]
24347
24541
  });
24348
24542
  }
24349
24543
  function DateSeparator({ timestamp: e }) {
24350
24544
  return /* @__PURE__ */ jsxs("div", {
24351
- className: "flex items-center gap-4",
24545
+ className: "gap-4 flex items-center",
24352
24546
  children: [
24353
24547
  /* @__PURE__ */ jsx("div", { className: "h-px flex-1 bg-neutral-300-variant-2" }),
24354
24548
  /* @__PURE__ */ jsx("span", {
24355
- className: "rounded-full border border-neutral-300-variant-2 px-3 py-1 text-xs font-semibold text-neutral-600",
24549
+ className: "px-3 py-1 text-xs font-semibold rounded-full border border-neutral-300-variant-2 text-neutral-600",
24356
24550
  children: e
24357
24551
  }),
24358
24552
  /* @__PURE__ */ jsx("div", { className: "h-px flex-1 bg-neutral-300-variant-2" })
@@ -24386,7 +24580,7 @@ function MessageContent({ content: e }) {
24386
24580
  function RepliesTrigger({ replyId: e, replyCount: t }) {
24387
24581
  let { openItems: n } = useAccordion();
24388
24582
  return /* @__PURE__ */ jsxs("div", {
24389
- className: "flex items-center gap-2 p-1.5 px-2 text-xs font-medium text-neutral-600",
24583
+ className: "gap-2 p-1.5 px-2 text-xs font-medium flex items-center text-neutral-600",
24390
24584
  children: [/* @__PURE__ */ jsx(ArrowIcon, {
24391
24585
  direction: n.has(`replies-${e}`) ? "up" : "down",
24392
24586
  size: 12,
@@ -24407,26 +24601,26 @@ function MessageReplies({ replies: e }) {
24407
24601
  defaultValue: [`replies-${t}`],
24408
24602
  children: /* @__PURE__ */ jsxs(AccordionItem, {
24409
24603
  value: `replies-${t}`,
24410
- className: "flex flex-col gap-2",
24604
+ className: "gap-2 flex flex-col",
24411
24605
  children: [/* @__PURE__ */ jsx(AccordionTrigger, {
24412
24606
  value: `replies-${t}`,
24413
- className: "flex items-center justify-between rounded transition-colors hover:bg-neutral-50",
24607
+ className: "rounded hover:bg-neutral-50 flex items-center justify-between transition-colors",
24414
24608
  children: /* @__PURE__ */ jsx(RepliesTrigger, {
24415
24609
  replyId: t,
24416
24610
  replyCount: e.length
24417
24611
  })
24418
24612
  }), /* @__PURE__ */ jsx(AccordionContent, {
24419
24613
  value: `replies-${t}`,
24420
- className: "ml-3 flex flex-col gap-4 border-l-2 border-neutral-500 pl-4",
24614
+ className: "ml-3 gap-4 pl-4 flex flex-col border-l-2 border-neutral-500",
24421
24615
  children: e.map((e) => /* @__PURE__ */ jsxs("div", {
24422
- className: "flex gap-3",
24616
+ className: "gap-3 flex",
24423
24617
  children: [/* @__PURE__ */ jsx(Avatar, {
24424
24618
  name: e.author,
24425
24619
  size: "lg"
24426
24620
  }), /* @__PURE__ */ jsxs("div", {
24427
24621
  className: "min-w-0 flex-1",
24428
24622
  children: [/* @__PURE__ */ jsxs("div", {
24429
- className: "flex items-center gap-2",
24623
+ className: "gap-2 flex items-center",
24430
24624
  children: [/* @__PURE__ */ jsx("div", {
24431
24625
  className: "text-sm font-semibold text-neutral-900",
24432
24626
  children: e.author
@@ -24445,16 +24639,16 @@ function MessageItem({ message: e, isPriority: t = !1 }) {
24445
24639
  return /* @__PURE__ */ jsx("div", {
24446
24640
  className: "transition-colors",
24447
24641
  children: /* @__PURE__ */ jsxs("div", {
24448
- className: "flex gap-3",
24642
+ className: "gap-3 flex",
24449
24643
  children: [/* @__PURE__ */ jsx(Avatar, {
24450
24644
  name: e.author,
24451
24645
  size: t ? "xl" : "lg"
24452
24646
  }), /* @__PURE__ */ jsxs("div", {
24453
- className: "flex min-w-0 flex-1 flex-col gap-2",
24647
+ className: "min-w-0 gap-2 flex flex-1 flex-col",
24454
24648
  children: [/* @__PURE__ */ jsxs("div", {
24455
- className: "flex flex-col gap-1",
24649
+ className: "gap-1 flex flex-col",
24456
24650
  children: [/* @__PURE__ */ jsxs("div", {
24457
- className: "flex items-center gap-2",
24651
+ className: "gap-2 flex items-center",
24458
24652
  children: [
24459
24653
  /* @__PURE__ */ jsx("div", {
24460
24654
  className: "text-sm font-semibold text-neutral-900",
@@ -24480,14 +24674,14 @@ function PriorityNavigation({ priorityIndex: e, priorityTotal: t, onPreviousPrio
24480
24674
  if (!e || !t || t <= 1) return null;
24481
24675
  let i = e > 1, a = e < t;
24482
24676
  return !a && !i ? null : /* @__PURE__ */ jsx("div", {
24483
- className: "mb-3 flex justify-center px-2",
24677
+ className: "mb-3 px-2 flex justify-center",
24484
24678
  children: /* @__PURE__ */ jsxs("div", {
24485
- className: "flex w-full items-center justify-center gap-4",
24679
+ className: "gap-4 flex w-full items-center justify-center",
24486
24680
  children: [
24487
24681
  /* @__PURE__ */ jsx("div", {
24488
24682
  className: "flex flex-1 justify-end",
24489
24683
  children: a && /* @__PURE__ */ jsxs(Button, {
24490
- className: "flex gap-1.5 rounded-md border border-tertiary-500 bg-white px-2.5 py-1.5 text-xs font-medium text-tertiary-500 transition-colors hover:bg-tertiary-50",
24684
+ className: "gap-1.5 rounded-md px-2.5 py-1.5 text-xs font-medium flex border border-tertiary-500 bg-white text-tertiary-500 transition-colors hover:bg-tertiary-50",
24491
24685
  "aria-label": "Previous Fire",
24492
24686
  onClick: n,
24493
24687
  children: [/* @__PURE__ */ jsx(ArrowIcon, {
@@ -24507,7 +24701,7 @@ function PriorityNavigation({ priorityIndex: e, priorityTotal: t, onPreviousPrio
24507
24701
  /* @__PURE__ */ jsx("div", {
24508
24702
  className: "flex-1",
24509
24703
  children: i && /* @__PURE__ */ jsxs(Button, {
24510
- className: "flex gap-1.5 rounded-md border border-tertiary-500 bg-white px-2.5 py-1.5 text-xs font-medium text-tertiary-500 transition-colors hover:bg-tertiary-50",
24704
+ className: "gap-1.5 rounded-md px-2.5 py-1.5 text-xs font-medium flex border border-tertiary-500 bg-white text-tertiary-500 transition-colors hover:bg-tertiary-50",
24511
24705
  "aria-label": "Next Fire",
24512
24706
  onClick: r,
24513
24707
  children: [/* @__PURE__ */ jsx("span", { children: "Next Fire" }), /* @__PURE__ */ jsx(ArrowIcon, {
@@ -24522,15 +24716,15 @@ function PriorityNavigation({ priorityIndex: e, priorityTotal: t, onPreviousPrio
24522
24716
  }
24523
24717
  function PriorityGroupHeader({ title: e, onMarkAsNotFireClick: t }) {
24524
24718
  return e ? /* @__PURE__ */ jsx("div", {
24525
- className: "border-b border-neutral-200 pb-3",
24719
+ className: "pb-3 border-b border-neutral-200",
24526
24720
  children: /* @__PURE__ */ jsxs("div", {
24527
- className: "flex items-center gap-2",
24721
+ className: "gap-2 flex items-center",
24528
24722
  children: [/* @__PURE__ */ jsx(IconButton, {
24529
24723
  icon: /* @__PURE__ */ jsx(FireIcon, {
24530
24724
  size: 16,
24531
24725
  className: "text-tertiary-500"
24532
24726
  }),
24533
- className: "relative flex h-6 w-6 shrink-0 items-center justify-center rounded-full border border-tertiary-400 bg-tertiary-50 transition-opacity hover:opacity-70",
24727
+ className: "h-6 w-6 relative flex shrink-0 items-center justify-center rounded-full border border-tertiary-400 bg-tertiary-50 transition-opacity hover:opacity-70",
24534
24728
  "aria-label": "Priority",
24535
24729
  onClick: t
24536
24730
  }), /* @__PURE__ */ jsx("h4", {
@@ -24550,7 +24744,7 @@ function PriorityGroup({ group: e, children: t, onPreviousPriority: n, onNextPri
24550
24744
  onPreviousPriority: n,
24551
24745
  onNextPriority: r
24552
24746
  }), /* @__PURE__ */ jsxs("div", {
24553
- className: "relative flex flex-col gap-4 rounded-r-lg border-l-[3px] border-tertiary-500 bg-tertiary-50-alpha-50 p-4",
24747
+ className: "gap-4 rounded-r-lg p-4 relative flex flex-col border-l-[3px] border-tertiary-500 bg-tertiary-50-alpha-50",
24554
24748
  children: [/* @__PURE__ */ jsx(PriorityGroupHeader, {
24555
24749
  title: e.priorityText,
24556
24750
  onMarkAsNotFireClick: i
@@ -24560,7 +24754,7 @@ function PriorityGroup({ group: e, children: t, onPreviousPriority: n, onNextPri
24560
24754
  }
24561
24755
  function MessageGroup({ group: e, onPreviousPriority: t, onNextPriority: n }) {
24562
24756
  return /* @__PURE__ */ jsxs("div", {
24563
- className: "flex flex-col gap-4",
24757
+ className: "gap-4 flex flex-col",
24564
24758
  children: [/* @__PURE__ */ jsx(DateSeparator, { timestamp: e.timestamp }), /* @__PURE__ */ jsx(PriorityGroup, {
24565
24759
  group: e,
24566
24760
  onPreviousPriority: t,
@@ -24598,7 +24792,7 @@ function EventDetailContentMessage({ detail: { groups: e, summary: t, priorityTe
24598
24792
  className: r,
24599
24793
  children: /* @__PURE__ */ jsxs("div", {
24600
24794
  ref: a,
24601
- className: "flex flex-col gap-4",
24795
+ className: "gap-4 flex flex-col",
24602
24796
  children: [e.map((e) => {
24603
24797
  let t = e.isPriority ? c-- : 0, n = t ? () => {
24604
24798
  let e = t + 1;
@@ -24675,12 +24869,11 @@ function EventDetailContentTicketDetails({ issue: e, notification: t, project: n
24675
24869
  ]
24676
24870
  })] });
24677
24871
  }
24678
- function EventDetailContentTicket({ detail: { summary: e, body: t, priorityText: n, issue: r, notification: i, project: a, task: o, dueDate: s, startDate: c, assignees: l, reporter: u, team: f, location: p, related: h }, className: g }) {
24872
+ function EventDetailContentTicket({ detail: { summary: e, body: t, priorityText: n, issue: r, notification: i, project: a, task: o, dueDate: s, startDate: c, assignees: l, reporter: u, team: f, location: p, related: h }, className: Go }) {
24679
24873
  return /* @__PURE__ */ jsxs(EventDetailContentHeader, {
24680
24874
  summary: e,
24681
24875
  priorityText: n,
24682
- highlightPriority: !!n,
24683
- className: g,
24876
+ className: Go,
24684
24877
  children: [
24685
24878
  /* @__PURE__ */ jsx(EventDetailContentTicketDetails, {
24686
24879
  issue: r,
@@ -24700,18 +24893,149 @@ function EventDetailContentTicket({ detail: { summary: e, body: t, priorityText:
24700
24893
  children: "Description"
24701
24894
  }),
24702
24895
  /* @__PURE__ */ jsx(RichContent, {
24703
- className: "max-w-[1260px] px-4",
24896
+ className: "px-4 max-w-[1260px]",
24704
24897
  content: t
24705
24898
  })
24706
24899
  ]
24707
24900
  });
24708
24901
  }
24709
- function EventDetailHeader({ icon: e, subject: t, from: n, prefixTimestamp: r, timestamp: a, isPriority: o, isOpen: s, isFirstEvent: c, isSingleEvent: l, className: u }) {
24902
+ var eventSummaryCardStyles = tv({
24903
+ base: "gap-1 rounded-lg p-4 flex w-full flex-col justify-between border-[1.5px] bg-white-variant-5",
24904
+ variants: {
24905
+ tone: {
24906
+ default: "hover:bg-primary-light",
24907
+ priority: "hover:bg-tertiary-500-variant-4"
24908
+ },
24909
+ state: {
24910
+ normal: "",
24911
+ selected: ""
24912
+ }
24913
+ },
24914
+ compoundVariants: [
24915
+ {
24916
+ tone: "default",
24917
+ state: "normal",
24918
+ class: "border-neutral-400"
24919
+ },
24920
+ {
24921
+ tone: "default",
24922
+ state: "selected",
24923
+ class: "border-primary-500 bg-primary-light"
24924
+ },
24925
+ {
24926
+ tone: "priority",
24927
+ state: "normal",
24928
+ class: "border-tertiary-500-variant-3"
24929
+ },
24930
+ {
24931
+ tone: "priority",
24932
+ state: "selected",
24933
+ class: "border-tertiary-500-variant-2 bg-tertiary-500-variant-4"
24934
+ }
24935
+ ]
24936
+ });
24937
+ function insightLabelVisible(e) {
24938
+ return e != null && e !== "";
24939
+ }
24940
+ function EventSummaryInsightChip({ label: e }) {
24710
24941
  return /* @__PURE__ */ jsxs("div", {
24711
- className: cn("flex h-14 w-full min-w-0 items-center overflow-hidden bg-white px-4 py-2", o && "relative", u),
24712
- "data-priority": o,
24713
- children: [o && /* @__PURE__ */ jsx("div", { className: "absolute top-0 left-0 z-10 h-full w-1 shrink-0 bg-tertiary-500-variant-2" }), /* @__PURE__ */ jsxs("div", {
24714
- className: "flex w-full min-w-0 items-center gap-4 overflow-hidden",
24942
+ className: "h-5 gap-1 px-1.5 inline-flex shrink-0 items-center rounded-full border border-primary-400 bg-primary-light",
24943
+ children: [/* @__PURE__ */ jsx(InsightIcon, {
24944
+ size: 13,
24945
+ className: "text-primary-500"
24946
+ }), /* @__PURE__ */ jsx("span", {
24947
+ className: "font-semibold text-[10px] leading-none whitespace-nowrap text-primary-500",
24948
+ children: e
24949
+ })]
24950
+ });
24951
+ }
24952
+ function EventSummaryFireButton({ active: e, onClick: t }) {
24953
+ return /* @__PURE__ */ jsx(StopPropagation, { children: /* @__PURE__ */ jsx(IconButton, {
24954
+ className: cn("group h-5 w-5 rounded-full border border-neutral-300 hover:border-tertiary-400 hover:bg-tertiary-50", e && "border-tertiary-400 bg-tertiary-50"),
24955
+ icon: e ? /* @__PURE__ */ jsxs("span", {
24956
+ className: "contents",
24957
+ children: [/* @__PURE__ */ jsx(FireFillIcon, {
24958
+ size: 16,
24959
+ className: "block text-tertiary-500-variant-2 opacity-100 group-hover:hidden group-hover:opacity-0"
24960
+ }), /* @__PURE__ */ jsx(CloseIcon, {
24961
+ size: 12,
24962
+ className: "hidden text-neutral-500 opacity-0 group-hover:block group-hover:text-tertiary-500-variant-2 group-hover:opacity-100",
24963
+ strokeWidth: 2
24964
+ })]
24965
+ }) : /* @__PURE__ */ jsx(FireIcon, {
24966
+ size: 16,
24967
+ className: "text-neutral-500 group-hover:text-tertiary-500-variant-2"
24968
+ }),
24969
+ onClick: t,
24970
+ "aria-pressed": e
24971
+ }) });
24972
+ }
24973
+ function EventSummaryCard({ icon: e, service: t, sender: n, title: r, content: i, timestamp: a, workspace: o, selected: s = !1, onSelect: c, actions: l, className: u }) {
24974
+ let { fire: f, insight: p, link: h } = l, Go = p?.label ?? null;
24975
+ return /* @__PURE__ */ jsxs(Pressable, {
24976
+ onPress: c,
24977
+ className: cn(eventSummaryCardStyles({
24978
+ tone: f.active ? "priority" : "default",
24979
+ state: s ? "selected" : "normal"
24980
+ }), EVENT_SUMMARY_CARD_HEIGHT_SIZE.style, u),
24981
+ "data-service": t,
24982
+ children: [
24983
+ /* @__PURE__ */ jsxs("div", {
24984
+ className: "gap-1.5 flex items-center justify-between",
24985
+ children: [
24986
+ e,
24987
+ /* @__PURE__ */ jsx("span", {
24988
+ className: "min-w-0 -translate-x-0.5 text-sm font-medium truncate text-neutral-900",
24989
+ children: n
24990
+ }),
24991
+ /* @__PURE__ */ jsx(InfoTooltip, {
24992
+ content: o,
24993
+ children: /* @__PURE__ */ jsx(Avatar, {
24994
+ name: o,
24995
+ size: "xs"
24996
+ })
24997
+ }),
24998
+ /* @__PURE__ */ jsx("span", {
24999
+ className: "text-xs leading-tight font-semibold tracking-wide flex-1 text-right whitespace-nowrap text-neutral-800",
25000
+ children: a
25001
+ }),
25002
+ insightLabelVisible(Go) && /* @__PURE__ */ jsx(EventSummaryInsightChip, { label: Go }),
25003
+ /* @__PURE__ */ jsx(EventSummaryFireButton, {
25004
+ active: f.active,
25005
+ onClick: f.onClick
25006
+ })
25007
+ ]
25008
+ }),
25009
+ /* @__PURE__ */ jsx("div", {
25010
+ className: "text-sm font-medium line-clamp-1 text-neutral-900",
25011
+ children: r
25012
+ }),
25013
+ /* @__PURE__ */ jsxs("div", {
25014
+ className: "gap-2 flex",
25015
+ children: [/* @__PURE__ */ jsx("div", {
25016
+ className: "min-w-0 text-sm font-normal line-clamp-1 flex-1 text-neutral-700",
25017
+ children: i
25018
+ }), /* @__PURE__ */ jsx(InfoTooltip, {
25019
+ content: h.tooltip,
25020
+ children: /* @__PURE__ */ jsx(StopPropagation, { children: /* @__PURE__ */ jsx(IconButton, {
25021
+ type: "button",
25022
+ icon: /* @__PURE__ */ jsx(ExternalLinkIcon, {
25023
+ size: 16,
25024
+ className: "text-neutral-800"
25025
+ }),
25026
+ className: "text-primary-500",
25027
+ onClick: h.onClick
25028
+ }) })
25029
+ })]
25030
+ })
25031
+ ]
25032
+ });
25033
+ }
25034
+ function EventDetailHeader({ icon: e, subject: t, from: n, prefixTimestamp: r, timestamp: a, isPriority: o, isOpen: s, isFirstEvent: c, isSingleEvent: l, className: u, onFireClick: f }) {
25035
+ return /* @__PURE__ */ jsx("div", {
25036
+ className: cn("h-14 min-w-0 px-4 py-2 flex w-full items-center overflow-hidden bg-white", u),
25037
+ children: /* @__PURE__ */ jsxs("div", {
25038
+ className: "min-w-0 gap-3 flex w-full items-center overflow-hidden",
24715
25039
  children: [
24716
25040
  c && /* @__PURE__ */ jsx(IconButton, {
24717
25041
  icon: /* @__PURE__ */ jsx(ArrowIcon, {
@@ -24720,41 +25044,36 @@ function EventDetailHeader({ icon: e, subject: t, from: n, prefixTimestamp: r, t
24720
25044
  className: "text-neutral-700"
24721
25045
  }),
24722
25046
  "aria-label": "Go back",
24723
- className: "rounded p-1 hover:bg-neutral-100 md:hidden"
24724
- }),
24725
- /* @__PURE__ */ jsx("div", {
24726
- className: "relative shrink-0",
24727
- children: /* @__PURE__ */ jsxs("div", {
24728
- className: "relative flex items-center justify-center",
24729
- children: [cloneElement(e, { size: 36 }), !s && o && /* @__PURE__ */ jsx(FireIcon, {
24730
- size: 16,
24731
- className: "absolute right-[-12px] bottom-0 text-tertiary-500-variant-2"
24732
- })]
24733
- })
25047
+ className: "rounded p-1 md:hidden hover:bg-neutral-100"
24734
25048
  }),
25049
+ cloneElement(e, { size: 36 }),
24735
25050
  /* @__PURE__ */ jsxs("div", {
24736
25051
  className: "w-0 min-w-0 flex-1 overflow-hidden",
24737
25052
  children: [/* @__PURE__ */ jsx("h3", {
24738
- className: "block truncate text-sm leading-[1.3] font-bold text-neutral-900",
25053
+ className: "text-sm font-bold block truncate leading-[1.3] text-neutral-900",
24739
25054
  children: n
24740
25055
  }), /* @__PURE__ */ jsx("div", {
24741
- className: "block truncate text-sm leading-[1.3] font-normal text-neutral-900",
25056
+ className: "text-sm font-normal block truncate leading-[1.3] text-neutral-900",
24742
25057
  children: t
24743
25058
  })]
24744
25059
  }),
24745
25060
  /* @__PURE__ */ jsxs("div", {
24746
- className: "flex max-w-[180px] min-w-0 shrink items-center gap-1 text-right text-xs leading-[1.2] tracking-[0.12px]",
25061
+ className: "min-w-0 gap-1 text-xs flex max-w-[180px] shrink items-center text-right leading-[1.2] tracking-[0.12px]",
24747
25062
  children: [r != null && /* @__PURE__ */ jsx("span", {
24748
- className: "min-w-0 truncate font-normal text-neutral-600",
25063
+ className: "min-w-0 font-normal truncate text-neutral-600",
24749
25064
  children: r
24750
25065
  }), /* @__PURE__ */ jsx("span", {
24751
- className: "shrink-0 font-semibold whitespace-nowrap text-neutral-800",
25066
+ className: "font-medium shrink-0 whitespace-nowrap text-neutral-600",
24752
25067
  children: a
24753
25068
  })]
24754
25069
  }),
24755
- /* @__PURE__ */ jsxs("div", {
24756
- className: "flex shrink-0 items-center gap-2",
24757
- children: [!l && /* @__PURE__ */ jsx(IconButton, {
25070
+ /* @__PURE__ */ jsx(EventSummaryFireButton, {
25071
+ active: o,
25072
+ onClick: f
25073
+ }),
25074
+ !l && /* @__PURE__ */ jsx("div", {
25075
+ className: "gap-2 flex shrink-0 items-center",
25076
+ children: /* @__PURE__ */ jsx(IconButton, {
24758
25077
  icon: /* @__PURE__ */ jsx(ArrowIcon, {
24759
25078
  size: 24,
24760
25079
  className: "text-neutral-700",
@@ -24762,17 +25081,21 @@ function EventDetailHeader({ icon: e, subject: t, from: n, prefixTimestamp: r, t
24762
25081
  }),
24763
25082
  "aria-label": "Toggle event",
24764
25083
  className: "rounded p-1 hover:bg-neutral-100"
24765
- }), c && /* @__PURE__ */ jsx(IconButton, {
25084
+ })
25085
+ }),
25086
+ c && /* @__PURE__ */ jsx("div", {
25087
+ className: "gap-2 md:hidden flex shrink-0 items-center",
25088
+ children: /* @__PURE__ */ jsx(IconButton, {
24766
25089
  icon: /* @__PURE__ */ jsx(MoreIcon, {
24767
25090
  size: 24,
24768
25091
  className: "text-neutral-700"
24769
25092
  }),
24770
25093
  "aria-label": "Close",
24771
- className: "rounded p-1 hover:bg-neutral-100 md:hidden"
24772
- })]
25094
+ className: "rounded p-1 hover:bg-neutral-100"
25095
+ })
24773
25096
  })
24774
25097
  ]
24775
- })]
25098
+ })
24776
25099
  });
24777
25100
  }
24778
25101
  function EventDetailSkeleton({ className: e }) {
@@ -24783,13 +25106,13 @@ function EventDetailSkeleton({ className: e }) {
24783
25106
  }
24784
25107
  function EventDetailHeaderSkeleton({ className: e }) {
24785
25108
  return /* @__PURE__ */ jsx("div", {
24786
- className: cn("flex h-14 w-full items-center bg-white px-4 py-2", e),
25109
+ className: cn("h-14 px-4 py-2 flex w-full items-center bg-white", e),
24787
25110
  children: /* @__PURE__ */ jsxs("div", {
24788
- className: "flex w-full items-center gap-4",
25111
+ className: "gap-4 flex w-full items-center",
24789
25112
  children: [
24790
25113
  /* @__PURE__ */ jsx(Skeleton, { className: "h-9 w-9 rounded-full" }),
24791
25114
  /* @__PURE__ */ jsxs("div", {
24792
- className: "min-w-0 flex-1 space-y-2",
25115
+ className: "min-w-0 space-y-2 flex-1",
24793
25116
  children: [/* @__PURE__ */ jsx(Skeleton, { className: "h-3 w-3/12" }), /* @__PURE__ */ jsx(Skeleton, { className: "h-3 w-9/12" })]
24794
25117
  }),
24795
25118
  /* @__PURE__ */ jsx(Skeleton, { className: "h-3 w-14" })
@@ -24801,11 +25124,11 @@ function EventDetailContentSkeleton() {
24801
25124
  return /* @__PURE__ */ jsx("div", {
24802
25125
  className: "flex flex-col",
24803
25126
  children: /* @__PURE__ */ jsxs("div", {
24804
- className: "flex flex-col gap-4 p-4",
25127
+ className: "gap-4 p-4 flex flex-col",
24805
25128
  children: [/* @__PURE__ */ jsxs("div", {
24806
- className: "flex gap-2 rounded-lg bg-neutral-100-variant-3 p-4",
25129
+ className: "gap-2 rounded-lg p-4 flex bg-neutral-100-variant-3",
24807
25130
  children: [/* @__PURE__ */ jsx(Skeleton, { className: "h-6 w-6 rounded" }), /* @__PURE__ */ jsxs("div", {
24808
- className: "flex-1 space-y-2",
25131
+ className: "space-y-2 flex-1",
24809
25132
  children: [
24810
25133
  /* @__PURE__ */ jsx(Skeleton, { className: "h-3 w-6/12" }),
24811
25134
  /* @__PURE__ */ jsx(Skeleton, { className: "h-3 w-10/12" }),
@@ -24847,7 +25170,7 @@ function renderEventContent(e) {
24847
25170
  function getEventValue(e, t) {
24848
25171
  return e.id ?? `${e.type}-${e.timestamp}-${t}`;
24849
25172
  }
24850
- function EventDetail({ events: e, expandedEventIndex: t }) {
25173
+ function EventDetail({ events: e, expandedEventIndex: t, onFireClick: n }) {
24851
25174
  if (e.length === 0) return null;
24852
25175
  if (e.length === 1) {
24853
25176
  let t = e[0];
@@ -24863,67 +25186,69 @@ function EventDetail({ events: e, expandedEventIndex: t }) {
24863
25186
  isOpen: !0,
24864
25187
  isFirstEvent: !0,
24865
25188
  isSingleEvent: !0,
24866
- className: "sticky top-0 z-10 border-b border-neutral-400"
25189
+ className: "top-0 sticky z-10 border-b border-neutral-400",
25190
+ onFireClick: n
24867
25191
  }), renderEventContent(t)]
24868
25192
  });
24869
25193
  }
24870
25194
  return /* @__PURE__ */ jsx(Accordion, {
24871
25195
  className: "w-full",
24872
25196
  defaultValue: t === void 0 ? getEventValue(e[0], 0) : getEventValue(e[t], t),
24873
- children: ({ openItems: t }) => /* @__PURE__ */ jsx(Fragment$1, { children: e.map((n, r) => {
24874
- let i = getEventValue(n, r), a = t.has(i);
25197
+ children: ({ openItems: t }) => /* @__PURE__ */ jsx(Fragment$1, { children: e.map((r, i) => {
25198
+ let a = getEventValue(r, i), o = t.has(a);
24875
25199
  return /* @__PURE__ */ jsxs(AccordionItem, {
24876
- value: i,
25200
+ value: a,
24877
25201
  children: [/* @__PURE__ */ jsx(AccordionTrigger, {
24878
- value: i,
24879
- className: "sticky top-0 z-10",
25202
+ value: a,
25203
+ className: "top-0 sticky z-10",
24880
25204
  children: /* @__PURE__ */ jsx(EventDetailHeader, {
24881
- icon: n.icon,
24882
- subject: n.subject,
24883
- from: n.from,
24884
- prefixTimestamp: n.prefixTimestamp,
24885
- timestamp: n.timestamp,
24886
- isPriority: n.isPriority,
24887
- isFirstEvent: r === 0,
25205
+ icon: r.icon,
25206
+ subject: r.subject,
25207
+ from: r.from,
25208
+ prefixTimestamp: r.prefixTimestamp,
25209
+ timestamp: r.timestamp,
25210
+ isPriority: r.isPriority,
25211
+ isFirstEvent: i === 0,
24888
25212
  isSingleEvent: !1,
24889
- isOpen: a,
24890
- className: "border-b border-neutral-400"
25213
+ isOpen: o,
25214
+ className: "border-b border-neutral-400",
25215
+ onFireClick: n
24891
25216
  })
24892
25217
  }), /* @__PURE__ */ jsx(AccordionContent, {
24893
- value: i,
24894
- className: cn(r < e.length - 1 && a && "border-b border-neutral-400"),
24895
- children: renderEventContent(n)
25218
+ value: a,
25219
+ className: cn(i < e.length - 1 && o && "border-b border-neutral-400"),
25220
+ children: renderEventContent(r)
24896
25221
  })]
24897
- }, i);
25222
+ }, a);
24898
25223
  }) })
24899
25224
  });
24900
25225
  }
24901
25226
  const EventEmptyState = ({ icon: e, title: t, description: n }) => /* @__PURE__ */ jsxs("div", {
24902
- className: "flex w-full flex-1 flex-col items-center justify-center gap-3 p-4",
25227
+ className: "gap-3 p-4 flex w-full flex-1 flex-col items-center justify-center",
24903
25228
  children: [cloneElement(e, {
24904
25229
  size: e.props.size ?? 35,
24905
25230
  className: "text-neutral-500"
24906
25231
  }), /* @__PURE__ */ jsxs("div", {
24907
- className: "flex flex-col items-center justify-center gap-1",
25232
+ className: "gap-1 flex flex-col items-center justify-center",
24908
25233
  children: [/* @__PURE__ */ jsx("h3", {
24909
- className: "text-base leading-[1.3] font-medium text-neutral-900",
25234
+ className: "text-base font-medium leading-[1.3] text-neutral-900",
24910
25235
  children: t
24911
25236
  }), /* @__PURE__ */ jsx("p", {
24912
- className: "w-full text-center text-xs leading-[1.3] font-normal text-neutral-600",
25237
+ className: "text-xs font-normal w-full text-center leading-[1.3] text-neutral-600",
24913
25238
  children: n
24914
25239
  })]
24915
25240
  })]
24916
25241
  });
24917
25242
  function EventSummaryCardSkeleton({ className: e, style: t }) {
24918
25243
  return /* @__PURE__ */ jsxs("div", {
24919
- className: cn("flex w-full flex-col justify-between gap-1 rounded-lg border-[1.5px] border-neutral-400 bg-white-variant-5 p-4", EVENT_SUMMARY_CARD_HEIGHT_SIZE.style, e),
25244
+ className: cn("gap-1 rounded-lg p-4 flex w-full flex-col justify-between bg-white-variant-5", EVENT_SUMMARY_CARD_HEIGHT_SIZE.style, e),
24920
25245
  style: t,
24921
25246
  children: [
24922
25247
  /* @__PURE__ */ jsxs("div", {
24923
- className: "grid grid-cols-[auto_minmax(0,1fr)_auto_auto_auto_auto] items-center gap-1.5",
25248
+ className: "gap-1.5 grid grid-cols-[auto_minmax(0,1fr)_auto_auto_auto_auto] items-center",
24924
25249
  children: [
24925
25250
  /* @__PURE__ */ jsx(Skeleton, { className: "h-4 w-4" }),
24926
- /* @__PURE__ */ jsx(Skeleton, { className: "h-4 w-full max-w-40" }),
25251
+ /* @__PURE__ */ jsx(Skeleton, { className: "h-4 max-w-40 w-full" }),
24927
25252
  /* @__PURE__ */ jsx(Skeleton, { className: "size-4 rounded-full" }),
24928
25253
  /* @__PURE__ */ jsx(Skeleton, { className: "h-3 w-12" }),
24929
25254
  /* @__PURE__ */ jsx(Skeleton, { className: "h-5 w-16 rounded-full" }),
@@ -24932,162 +25257,47 @@ function EventSummaryCardSkeleton({ className: e, style: t }) {
24932
25257
  }),
24933
25258
  /* @__PURE__ */ jsx(Skeleton, { className: "h-4 w-7/12" }),
24934
25259
  /* @__PURE__ */ jsxs("div", {
24935
- className: "flex items-center gap-2",
25260
+ className: "gap-2 flex items-center",
24936
25261
  children: [/* @__PURE__ */ jsx(Skeleton, { className: "h-4 min-w-0 flex-1" }), /* @__PURE__ */ jsx(Skeleton, { className: "size-5 shrink-0" })]
24937
25262
  })
24938
25263
  ]
24939
25264
  });
24940
25265
  }
24941
- var eventSummaryCardStyles = tv({
24942
- base: "flex w-full flex-col justify-between gap-1 rounded-lg border-[1.5px] bg-white-variant-5 p-4",
24943
- variants: {
24944
- tone: {
24945
- default: "hover:bg-primary-light",
24946
- priority: "hover:bg-tertiary-500-variant-4"
24947
- },
24948
- state: {
24949
- normal: "",
24950
- selected: ""
24951
- }
24952
- },
24953
- compoundVariants: [
24954
- {
24955
- tone: "default",
24956
- state: "normal",
24957
- class: "border-neutral-400"
24958
- },
24959
- {
24960
- tone: "default",
24961
- state: "selected",
24962
- class: "border-primary-500 bg-primary-light"
24963
- },
24964
- {
24965
- tone: "priority",
24966
- state: "normal",
24967
- class: "border-tertiary-500-variant-3"
24968
- },
24969
- {
24970
- tone: "priority",
24971
- state: "selected",
24972
- class: "border-tertiary-500-variant-2 bg-tertiary-500-variant-4"
24973
- }
24974
- ]
24975
- });
24976
- function insightLabelVisible(e) {
24977
- return e != null && e !== "";
24978
- }
24979
- function EventSummaryInsightChip({ label: e }) {
24980
- return /* @__PURE__ */ jsxs("div", {
24981
- className: "inline-flex h-5 shrink-0 items-center gap-1 rounded-full border border-primary-400 bg-primary-light px-1.5",
24982
- children: [/* @__PURE__ */ jsx(InsightIcon, {
24983
- size: 13,
24984
- className: "text-primary-500"
24985
- }), /* @__PURE__ */ jsx("span", {
24986
- className: "text-[10px] leading-none font-semibold whitespace-nowrap text-primary-500",
24987
- children: e
24988
- })]
24989
- });
24990
- }
24991
- function EventSummaryFireButton({ active: e, onClick: t }) {
24992
- return /* @__PURE__ */ jsx(StopPropagation, { children: /* @__PURE__ */ jsx(IconButton, {
24993
- className: cn("group h-5 w-5 rounded-full border border-neutral-300 hover:border-tertiary-400 hover:bg-tertiary-50", e && "border-tertiary-400 bg-tertiary-50"),
24994
- icon: e ? /* @__PURE__ */ jsxs("span", {
24995
- className: "contents",
24996
- children: [/* @__PURE__ */ jsx(FireFillIcon, {
24997
- size: 16,
24998
- className: "block text-tertiary-500-variant-2 opacity-100 group-hover:hidden group-hover:opacity-0"
24999
- }), /* @__PURE__ */ jsx(CloseIcon, {
25000
- size: 12,
25001
- className: "hidden text-neutral-500 opacity-0 group-hover:block group-hover:text-tertiary-500-variant-2 group-hover:opacity-100",
25002
- strokeWidth: 2
25003
- })]
25004
- }) : /* @__PURE__ */ jsx(FireIcon, {
25005
- size: 16,
25006
- className: "text-neutral-500 group-hover:text-tertiary-500-variant-2"
25007
- }),
25008
- onClick: t,
25009
- "aria-pressed": e
25010
- }) });
25011
- }
25012
- function EventSummaryCard({ icon: e, service: t, sender: n, title: r, content: i, timestamp: a, workspace: o, selected: s = !1, onSelect: c, actions: l, className: u }) {
25013
- let { fire: f, insight: p, link: h } = l, g = p?.label ?? null;
25014
- return /* @__PURE__ */ jsxs(Pressable, {
25015
- onPress: c,
25016
- className: cn(eventSummaryCardStyles({
25017
- tone: f.active ? "priority" : "default",
25018
- state: s ? "selected" : "normal"
25019
- }), EVENT_SUMMARY_CARD_HEIGHT_SIZE.style, u),
25020
- "data-service": t,
25021
- children: [
25022
- /* @__PURE__ */ jsxs("div", {
25023
- className: "flex items-center justify-between gap-1.5",
25024
- children: [
25025
- e,
25026
- /* @__PURE__ */ jsx("span", {
25027
- className: "min-w-0 -translate-x-0.5 truncate text-sm font-medium text-neutral-900",
25028
- children: n
25029
- }),
25030
- /* @__PURE__ */ jsx(InfoTooltip, {
25031
- content: o,
25032
- children: /* @__PURE__ */ jsx(Avatar, {
25033
- name: o,
25034
- size: "xs"
25035
- })
25036
- }),
25037
- /* @__PURE__ */ jsx("span", {
25038
- className: "flex-1 text-right text-xs leading-tight font-semibold tracking-wide whitespace-nowrap text-neutral-800",
25039
- children: a
25040
- }),
25041
- insightLabelVisible(g) && /* @__PURE__ */ jsx(EventSummaryInsightChip, { label: g }),
25042
- /* @__PURE__ */ jsx(EventSummaryFireButton, {
25043
- active: f.active,
25044
- onClick: f.onClick
25045
- })
25046
- ]
25047
- }),
25048
- /* @__PURE__ */ jsx("div", {
25049
- className: "line-clamp-1 text-sm font-medium text-neutral-900",
25050
- children: r
25051
- }),
25052
- /* @__PURE__ */ jsxs("div", {
25053
- className: "flex gap-2",
25054
- children: [/* @__PURE__ */ jsx("div", {
25055
- className: "line-clamp-1 min-w-0 flex-1 text-sm font-normal text-neutral-700",
25056
- children: i
25057
- }), /* @__PURE__ */ jsx(InfoTooltip, {
25058
- content: h.tooltip,
25059
- children: /* @__PURE__ */ jsx(StopPropagation, { children: /* @__PURE__ */ jsx(IconButton, {
25060
- type: "button",
25061
- icon: /* @__PURE__ */ jsx(ExternalLinkIcon, {
25062
- size: 16,
25063
- className: "text-neutral-800"
25064
- }),
25065
- className: "text-primary-500",
25066
- onClick: h.onClick
25067
- }) })
25068
- })]
25069
- })
25070
- ]
25071
- });
25072
- }
25073
25266
  function FilterBarSkeleton({ itemCount: e = 3, className: t }) {
25074
25267
  return /* @__PURE__ */ jsx("div", {
25075
- className: cn("flex flex-wrap items-center gap-2", t),
25268
+ className: cn("gap-2 flex flex-wrap items-center", t),
25076
25269
  children: Array.from({ length: e }).map((e, t) => /* @__PURE__ */ jsx(FilterChipSkeleton, {}, t))
25077
25270
  });
25078
25271
  }
25079
25272
  function FilterChipSkeleton() {
25080
25273
  return /* @__PURE__ */ jsxs("div", {
25081
- className: "flex items-center gap-1 rounded-full border border-neutral-300 bg-white px-2 py-1",
25274
+ className: "gap-1 px-2 py-1 flex items-center rounded-full border border-neutral-300 bg-white",
25082
25275
  children: [/* @__PURE__ */ jsx(Skeleton, { className: "m-0.5 size-4 rounded-full" }), /* @__PURE__ */ jsx(Skeleton, { className: "h-3 w-15" })]
25083
25276
  });
25084
25277
  }
25085
25278
  function FilterBar({ children: e, className: t }) {
25086
25279
  return /* @__PURE__ */ jsx("div", {
25087
- className: cn("flex flex-wrap items-center gap-2", t),
25280
+ className: cn("gap-2 flex flex-wrap items-center", t),
25088
25281
  children: e.map((e, t) => cloneElement(e, { key: t }))
25089
25282
  });
25090
25283
  }
25284
+ function HelpPanel({ classNames: e, ...t }) {
25285
+ return /* @__PURE__ */ jsx(HelpPanelEngine, {
25286
+ ...t,
25287
+ classNames: {
25288
+ root: cn("right-3 rounded-2xl shadow-2xl top-[68px] z-99999 max-h-[calc(100vh-84px)] w-[300px] border border-neutral-200 bg-white", e?.root),
25289
+ header: cn("p-4 bg-primary-500", e?.header),
25290
+ title: cn("text-sm font-semibold text-white", e?.title),
25291
+ closeButton: cn("text-white/70 hover:text-white", e?.closeButton),
25292
+ body: e?.body,
25293
+ accordion: e?.accordion,
25294
+ item: e?.item,
25295
+ itemTrigger: cn("p-3 font-semibold hover:bg-neutral-100", e?.itemTrigger),
25296
+ itemContent: cn("p-4", e?.itemContent),
25297
+ footer: cn("px-4 py-3 border-t border-neutral-200", e?.footer)
25298
+ }
25299
+ });
25300
+ }
25091
25301
  var dividerStyles = tv({
25092
25302
  base: "bg-neutral-400-variant-4",
25093
25303
  variants: {
@@ -25143,7 +25353,7 @@ function Divider({ className: e, ...t }) {
25143
25353
  return /* @__PURE__ */ jsx("div", { className: cn(dividerStyles(t), e) });
25144
25354
  }
25145
25355
  function IntegrationBarSkeleton({ orientation: e = "vertical", itemCount: t = 3, className: n }) {
25146
- let r = e === "vertical", i = cn("size-full", r ? "overflow-x-hidden" : "overflow-y-hidden"), a = cn("grid h-full w-full place-items-center gap-4", r ? "grid-cols-1" : "auto-cols-max grid-flow-col", n), o = cn("flex w-fit items-center", r ? "flex-col gap-1" : "flex-row gap-2"), s = cn("h-3", r ? "w-12 text-[9px]" : "w-16 text-xs"), c = cn("h-3", r ? "w-8 text-[9px]" : "w-10 text-xs");
25356
+ let r = e === "vertical", i = cn("size-full", r ? "overflow-x-hidden" : "overflow-y-hidden"), a = cn("gap-4 grid h-full w-full place-items-center", r ? "grid-cols-1" : "auto-cols-max grid-flow-col", n), o = cn("flex w-fit items-center", r ? "gap-1 flex-col" : "gap-2 flex-row"), s = cn("h-3", r ? "w-12 text-[9px]" : "w-16 text-xs"), c = cn("h-3", r ? "w-8 text-[9px]" : "w-10 text-xs");
25147
25357
  return /* @__PURE__ */ jsx("div", {
25148
25358
  className: i,
25149
25359
  children: /* @__PURE__ */ jsxs("div", {
@@ -25164,10 +25374,10 @@ function IntegrationBarSkeleton({ orientation: e = "vertical", itemCount: t = 3,
25164
25374
  }
25165
25375
  function IntegrationBar({ orientation: e = "vertical", children: t, onAddMore: n, className: r }) {
25166
25376
  return /* @__PURE__ */ jsxs("div", {
25167
- className: cn("flex size-full min-h-0 min-w-0", e === "vertical" ? "flex-col items-center" : "flex-row items-center", r),
25377
+ className: cn("min-h-0 min-w-0 flex size-full", e === "vertical" ? "flex-col items-center" : "flex-row items-center", r),
25168
25378
  children: [
25169
25379
  /* @__PURE__ */ jsx("div", {
25170
- className: cn("grid min-h-0 min-w-0 place-items-center", e === "vertical" ? "w-full flex-1 grid-cols-1 overflow-x-hidden overflow-y-auto" : "h-full flex-1 auto-cols-max grid-flow-col overflow-x-auto overflow-y-hidden"),
25380
+ className: cn("min-h-0 min-w-0 grid place-items-center", e === "vertical" ? "w-full flex-1 grid-cols-1 overflow-x-hidden overflow-y-auto" : "h-full flex-1 auto-cols-max grid-flow-col overflow-x-auto overflow-y-hidden"),
25171
25381
  children: t.map((t) => cloneElement(t, { classNames: { root: e === "vertical" ? "py-2" : "px-2" } }))
25172
25382
  }),
25173
25383
  /* @__PURE__ */ jsx(Divider, { orientation: e === "vertical" ? "horizontal" : "vertical" }),
@@ -25186,9 +25396,9 @@ function IntegrationItemSkeleton() {
25186
25396
  return /* @__PURE__ */ jsx("div", {
25187
25397
  className: "flex w-full items-center justify-center",
25188
25398
  children: /* @__PURE__ */ jsx("div", {
25189
- className: "flex w-full flex-col gap-2 rounded-lg bg-neutral-100-variant-3 px-3 py-3",
25399
+ className: "gap-2 rounded-lg px-3 py-3 flex w-full flex-col bg-neutral-100-variant-3",
25190
25400
  children: /* @__PURE__ */ jsxs("div", {
25191
- className: "flex items-center justify-between gap-2",
25401
+ className: "gap-2 flex items-center justify-between",
25192
25402
  children: [/* @__PURE__ */ jsx(Skeleton, { className: "h-4 w-1/3" }), /* @__PURE__ */ jsx(Skeleton, { className: "h-4 w-1/8" })]
25193
25403
  })
25194
25404
  })
@@ -25197,14 +25407,14 @@ function IntegrationItemSkeleton() {
25197
25407
  function IntegrationsCard({ icon: e, name: t, maxConnectionsPerService: r, connectLabel: a, onConnect: o, isLoading: s, children: c }) {
25198
25408
  let l = Children.toArray(c).length;
25199
25409
  return /* @__PURE__ */ jsxs("div", {
25200
- className: "flex flex-col gap-4 rounded-lg border border-neutral-400 bg-white p-4",
25410
+ className: "gap-4 rounded-lg p-4 flex flex-col border border-neutral-400 bg-white",
25201
25411
  children: [
25202
25412
  /* @__PURE__ */ jsxs("div", {
25203
25413
  className: "flex items-center justify-between",
25204
25414
  children: [/* @__PURE__ */ jsxs("div", {
25205
- className: "flex min-w-0 flex-1 items-center gap-2",
25415
+ className: "min-w-0 gap-2 flex flex-1 items-center",
25206
25416
  children: [/* @__PURE__ */ jsx("div", {
25207
- className: "flex h-11 w-11 shrink-0 items-center justify-center",
25417
+ className: "h-11 w-11 flex shrink-0 items-center justify-center",
25208
25418
  children: /* @__PURE__ */ jsx("div", {
25209
25419
  className: "flex items-center justify-center",
25210
25420
  children: cloneElement(e, {
@@ -25213,9 +25423,9 @@ function IntegrationsCard({ icon: e, name: t, maxConnectionsPerService: r, conne
25213
25423
  })
25214
25424
  })
25215
25425
  }), /* @__PURE__ */ jsxs("div", {
25216
- className: "flex min-w-0 flex-1 flex-col",
25426
+ className: "min-w-0 flex flex-1 flex-col",
25217
25427
  children: [/* @__PURE__ */ jsx("div", {
25218
- className: "truncate text-xs font-bold text-neutral-800",
25428
+ className: "text-xs font-bold truncate text-neutral-800",
25219
25429
  children: t
25220
25430
  }), /* @__PURE__ */ jsx("div", {
25221
25431
  className: "text-xs font-normal text-neutral-800",
@@ -25223,14 +25433,14 @@ function IntegrationsCard({ icon: e, name: t, maxConnectionsPerService: r, conne
25223
25433
  })]
25224
25434
  })]
25225
25435
  }), l < r && !s && /* @__PURE__ */ jsx(Button, {
25226
- className: "flex shrink-0 items-center gap-1 rounded-lg border border-brand-primary bg-white px-2 py-1 text-xs font-bold text-brand-primary transition-opacity hover:opacity-70",
25436
+ className: "gap-1 rounded-lg px-2 py-1 text-xs font-bold flex shrink-0 items-center border border-brand-primary bg-white text-brand-primary transition-opacity hover:opacity-70",
25227
25437
  onClick: o,
25228
25438
  children: a
25229
25439
  })]
25230
25440
  }),
25231
25441
  s && /* @__PURE__ */ jsx(IntegrationItemSkeleton, {}),
25232
25442
  l > 0 && c && /* @__PURE__ */ jsx("div", {
25233
- className: "flex flex-col gap-2",
25443
+ className: "gap-2 flex flex-col",
25234
25444
  children: c
25235
25445
  })
25236
25446
  ]
@@ -25238,19 +25448,19 @@ function IntegrationsCard({ icon: e, name: t, maxConnectionsPerService: r, conne
25238
25448
  }
25239
25449
  function IntegrationItem({ account: e, valid: t, disconnectLabel: n, onDisconnect: r, invalidLabel: i, invalidDescription: a }) {
25240
25450
  return /* @__PURE__ */ jsxs("div", {
25241
- className: cn("flex flex-col gap-2 rounded-lg border px-3 py-3", t === !1 ? "border-error-base bg-error-base/5" : "border-brand-primary bg-neutral-100-variant-3"),
25451
+ className: cn("gap-2 rounded-lg px-3 py-3 flex flex-col border", t === !1 ? "border-error-base bg-error-base/5" : "border-brand-primary bg-neutral-100-variant-3"),
25242
25452
  children: [/* @__PURE__ */ jsxs("div", {
25243
- className: "flex items-center justify-between gap-2",
25453
+ className: "gap-2 flex items-center justify-between",
25244
25454
  children: [/* @__PURE__ */ jsx("div", {
25245
- className: "flex-1 truncate text-xs font-bold text-neutral-800",
25455
+ className: "text-xs font-bold flex-1 truncate text-neutral-800",
25246
25456
  children: e
25247
25457
  }), /* @__PURE__ */ jsx(Button, {
25248
- className: "shrink-0 text-xs font-medium text-error-base underline transition-opacity hover:opacity-70",
25458
+ className: "text-xs font-medium shrink-0 text-error-base underline transition-opacity hover:opacity-70",
25249
25459
  onClick: r,
25250
25460
  children: n
25251
25461
  })]
25252
25462
  }), t === !1 && /* @__PURE__ */ jsxs("div", {
25253
- className: "flex gap-2",
25463
+ className: "gap-2 flex",
25254
25464
  children: [/* @__PURE__ */ jsx("div", {
25255
25465
  className: "text-xs font-semibold text-error-base",
25256
25466
  children: i
@@ -25261,17 +25471,191 @@ function IntegrationItem({ account: e, valid: t, disconnectLabel: n, onDisconnec
25261
25471
  })]
25262
25472
  });
25263
25473
  }
25474
+ function ArrowTowardCardEnd() {
25475
+ return /* @__PURE__ */ jsx("div", {
25476
+ className: "h-0 w-0 shrink-0 border-y-8 border-r-10 border-y-transparent border-r-primary-500",
25477
+ "aria-hidden": !0
25478
+ });
25479
+ }
25480
+ function ArrowTowardCardStart() {
25481
+ return /* @__PURE__ */ jsx("div", {
25482
+ className: "h-0 w-0 shrink-0 border-y-8 border-l-10 border-y-transparent border-l-primary-500",
25483
+ "aria-hidden": !0
25484
+ });
25485
+ }
25486
+ function ArrowTowardCardBelow() {
25487
+ return /* @__PURE__ */ jsx("div", {
25488
+ className: "h-0 w-0 shrink-0 border-x-8 border-b-10 border-x-transparent border-b-primary-500",
25489
+ "aria-hidden": !0
25490
+ });
25491
+ }
25492
+ function ArrowTowardCardAbove() {
25493
+ return /* @__PURE__ */ jsx("div", {
25494
+ className: "h-0 w-0 shrink-0 border-x-8 border-t-10 border-x-transparent border-t-primary-500",
25495
+ "aria-hidden": !0
25496
+ });
25497
+ }
25498
+ function OnboardingCardArrow({ layout: e, placement: t }) {
25499
+ return jsx(e === "horizontal" ? t === "before" ? ArrowTowardCardEnd : ArrowTowardCardStart : t === "before" ? ArrowTowardCardBelow : ArrowTowardCardAbove, {});
25500
+ }
25501
+ function wrapArrow(e, t, n) {
25502
+ return t == null && n == null ? e : /* @__PURE__ */ jsx("div", {
25503
+ className: t,
25504
+ style: n,
25505
+ "aria-hidden": !0,
25506
+ children: e
25507
+ });
25508
+ }
25509
+ function OnboardingCard({ stepLabel: e, title: t, description: n, titleAccessory: r, primaryAction: i, secondaryAction: a, layout: o, arrowPlacement: s = "before", arrowWrapperClassName: c, arrowWrapperStyle: l, className: u, cardClassName: f }) {
25510
+ let p = i != null || a != null, h = /* @__PURE__ */ jsxs("div", {
25511
+ className: cn("rounded-xl p-4 shadow-xl bg-primary-500 text-white", f),
25512
+ children: [
25513
+ e != null && /* @__PURE__ */ jsx("p", {
25514
+ className: "mb-1 font-semibold tracking-widest text-[10px] text-white uppercase opacity-70",
25515
+ children: e
25516
+ }),
25517
+ r == null ? /* @__PURE__ */ jsx("div", {
25518
+ className: "mb-1 text-sm leading-snug font-semibold",
25519
+ children: t
25520
+ }) : /* @__PURE__ */ jsxs("div", {
25521
+ className: "mb-1 gap-1.5 flex items-center",
25522
+ children: [/* @__PURE__ */ jsx("div", {
25523
+ className: "text-sm leading-snug font-semibold",
25524
+ children: t
25525
+ }), r]
25526
+ }),
25527
+ /* @__PURE__ */ jsx("div", {
25528
+ className: "mb-4 text-xs leading-relaxed font-normal opacity-90",
25529
+ children: n
25530
+ }),
25531
+ p && /* @__PURE__ */ jsxs("div", {
25532
+ className: "gap-2 flex items-center",
25533
+ children: [i, a]
25534
+ })
25535
+ ]
25536
+ }), Go = wrapArrow(/* @__PURE__ */ jsx(OnboardingCardArrow, {
25537
+ layout: o,
25538
+ placement: s
25539
+ }), c, l), g = s === "before" ? /* @__PURE__ */ jsxs(Fragment$1, { children: [Go, h] }) : /* @__PURE__ */ jsxs(Fragment$1, { children: [h, Go] });
25540
+ return o === "horizontal" ? /* @__PURE__ */ jsx("div", {
25541
+ className: cn("flex items-center", u),
25542
+ children: g
25543
+ }) : /* @__PURE__ */ jsx("div", {
25544
+ className: cn("flex flex-col items-center", u),
25545
+ children: g
25546
+ });
25547
+ }
25548
+ var subscribeNoop = () => () => {}, getClientSnapshot = () => !0, getServerSnapshot = () => !1, PRIMARY_BTN = "rounded-lg bg-white px-4 py-1.5 text-xs font-semibold text-primary-500 transition-opacity hover:opacity-90", GHOST_BTN = "text-xs font-semibold text-white/70 transition-colors hover:text-white";
25549
+ function measureStepPosition(e, t) {
25550
+ let n = t.getBoundingClientRect();
25551
+ return e.layout === "horizontal" ? {
25552
+ mode: "horizontal",
25553
+ top: (e.horizontalAlign ?? "target-center") === "viewport-center" ? window.innerHeight / 2 : n.top + n.height / 2,
25554
+ left: n.right + 12
25555
+ } : {
25556
+ mode: "vertical",
25557
+ top: n.bottom + 10,
25558
+ left: n.left,
25559
+ arrowMarginLeft: n.width / 2 - 8
25560
+ };
25561
+ }
25562
+ function measureActiveStep(e) {
25563
+ if (e == null) return null;
25564
+ let t = document.getElementById(e.targetId);
25565
+ return t ? measureStepPosition(e, t) : null;
25566
+ }
25567
+ function OnboardingPortal({ currentStep: e, currentStepIndex: t, actions: n, steps: r, onFinish: i }) {
25568
+ let a = useSyncExternalStore(subscribeNoop, getClientSnapshot, getServerSnapshot), [o, s] = useState(null), c = useRef(!1), u = e != null;
25569
+ if (useLayoutEffect(() => {
25570
+ if (!a || !u) {
25571
+ let e = requestAnimationFrame(() => s(null));
25572
+ return () => cancelAnimationFrame(e);
25573
+ }
25574
+ let t = 0, n = () => {
25575
+ cancelAnimationFrame(t), t = requestAnimationFrame(() => {
25576
+ s(measureActiveStep(e));
25577
+ });
25578
+ };
25579
+ return n(), window.addEventListener("scroll", n, !0), window.addEventListener("resize", n), () => {
25580
+ cancelAnimationFrame(t), window.removeEventListener("scroll", n, !0), window.removeEventListener("resize", n);
25581
+ };
25582
+ }, [
25583
+ a,
25584
+ u,
25585
+ e,
25586
+ r
25587
+ ]), useEffect(() => {
25588
+ c.current && !u && i?.(), c.current = u;
25589
+ }, [u, i]), !a || typeof document > "u" || !u || o == null) return null;
25590
+ let p = e.layout === "vertical" && o.mode === "vertical" ? {
25591
+ marginLeft: o.arrowMarginLeft,
25592
+ ...e.arrowWrapperStyle
25593
+ } : e.arrowWrapperStyle, O = /* @__PURE__ */ jsx(OnboardingCard, {
25594
+ stepLabel: e.stepLabel ?? (t == null ? void 0 : `${t + 1} / ${r.length}`),
25595
+ title: e.title,
25596
+ description: e.description,
25597
+ titleAccessory: e.titleAccessory,
25598
+ layout: e.layout,
25599
+ arrowPlacement: e.arrowPlacement ?? "before",
25600
+ className: cn("tour-fade-in-up", e.layout === "vertical" && "items-start", e.className),
25601
+ cardClassName: e.cardClassName,
25602
+ arrowWrapperClassName: e.arrowWrapperClassName,
25603
+ arrowWrapperStyle: p,
25604
+ primaryAction: /* @__PURE__ */ jsx(Button, {
25605
+ type: "button",
25606
+ className: PRIMARY_BTN,
25607
+ onClick: () => n.dismissCurrentStep(),
25608
+ children: "Got it"
25609
+ }),
25610
+ secondaryAction: /* @__PURE__ */ jsx(Button, {
25611
+ type: "button",
25612
+ className: GHOST_BTN,
25613
+ onClick: () => n.skipAll(),
25614
+ children: "Skip"
25615
+ })
25616
+ }, e.id);
25617
+ return createPortal(/* @__PURE__ */ jsx("div", {
25618
+ ...o.mode === "horizontal" ? {
25619
+ className: "pointer-events-auto fixed z-[999999] flex items-center",
25620
+ style: {
25621
+ top: o.top,
25622
+ left: o.left,
25623
+ transform: "translateY(-50%)"
25624
+ }
25625
+ } : {
25626
+ className: "pointer-events-auto fixed z-[999999] flex flex-col items-start",
25627
+ style: {
25628
+ top: o.top,
25629
+ left: o.left
25630
+ }
25631
+ },
25632
+ children: O
25633
+ }), document.body);
25634
+ }
25635
+ function Onboarding({ steps: e, context: t, storageKey: n, onFinish: r, isEnabled: i = !0 }) {
25636
+ return /* @__PURE__ */ jsx(OnboardingEngine, {
25637
+ steps: e,
25638
+ context: t,
25639
+ storageKey: n,
25640
+ isEnabled: i,
25641
+ children: (t) => /* @__PURE__ */ jsx(OnboardingPortal, {
25642
+ ...t,
25643
+ steps: e,
25644
+ onFinish: r
25645
+ })
25646
+ });
25647
+ }
25264
25648
  function SearchInput({ value: e, defaultValue: t, placeholder: n = "Search...", onChange: r, onKeyDown: i, onClear: a, disabled: o = !1, className: s }) {
25265
25649
  let [c, l] = useState(t ?? ""), u = typeof e == "string", f = u ? e : c, p = f.length > 0;
25266
- function g(e) {
25650
+ function h(e) {
25267
25651
  u || l(e), r?.(e);
25268
25652
  }
25269
- function O() {
25653
+ function g() {
25270
25654
  u || l(""), r?.(""), a?.();
25271
25655
  }
25272
25656
  return /* @__PURE__ */ jsxs("fieldset", {
25273
25657
  role: "search",
25274
- className: cn("flex h-8 min-w-0 items-center gap-1.5 rounded-full border border-neutral-500-variant-3 bg-white px-2 py-1", o && "pointer-events-none bg-neutral-200 opacity-70", s),
25658
+ className: cn("h-8 min-w-0 gap-1.5 px-2 py-1 flex items-center rounded-full border border-neutral-500-variant-3 bg-white", o && "pointer-events-none bg-neutral-200 opacity-70", s),
25275
25659
  disabled: o,
25276
25660
  children: [
25277
25661
  /* @__PURE__ */ jsx(SearchIcon, {
@@ -25282,9 +25666,9 @@ function SearchInput({ value: e, defaultValue: t, placeholder: n = "Search...",
25282
25666
  type: "text",
25283
25667
  value: f,
25284
25668
  placeholder: n,
25285
- onChange: g,
25669
+ onChange: h,
25286
25670
  onKeyDown: i,
25287
- className: cn("m-0 h-5 min-w-0 flex-1 border-0 p-0 text-xs text-neutral-800", "bg-transparent outline-none", "placeholder:text-neutral-700-alpha-60", o && "text-neutral-700-alpha-60")
25671
+ className: cn("m-0 h-5 min-w-0 p-0 text-xs flex-1 border-0 text-neutral-800", "bg-transparent outline-none", "placeholder:text-neutral-700-alpha-60", o && "text-neutral-700-alpha-60")
25288
25672
  }),
25289
25673
  p && !o && /* @__PURE__ */ jsx(IconButton, {
25290
25674
  type: "button",
@@ -25292,7 +25676,7 @@ function SearchInput({ value: e, defaultValue: t, placeholder: n = "Search...",
25292
25676
  size: 16,
25293
25677
  className: "text-neutral-700"
25294
25678
  }),
25295
- onClick: O,
25679
+ onClick: g,
25296
25680
  "aria-label": "Clear search",
25297
25681
  className: "rounded p-0 transition-opacity hover:opacity-70"
25298
25682
  })
@@ -25363,9 +25747,9 @@ function ConfirmationToast({ title: e, description: t, cancelLabel: n, acceptLab
25363
25747
  }
25364
25748
  function ConfirmationTemplate({ title: e, description: t, cancelLabel: n, acceptLabel: r, onCancel: i, onAccept: a }) {
25365
25749
  return /* @__PURE__ */ jsxs("div", {
25366
- className: "flex w-full max-w-md flex-col justify-center gap-6 rounded-lg bg-white p-6 shadow-xl",
25750
+ className: "max-w-md gap-6 rounded-lg p-6 shadow-xl flex w-full flex-col justify-center bg-white",
25367
25751
  children: [/* @__PURE__ */ jsxs("div", {
25368
- className: "flex flex-col justify-center gap-3",
25752
+ className: "gap-3 flex flex-col justify-center",
25369
25753
  children: [/* @__PURE__ */ jsx("h3", {
25370
25754
  className: "text-base font-medium text-neutral-900",
25371
25755
  children: e
@@ -25374,13 +25758,13 @@ function ConfirmationTemplate({ title: e, description: t, cancelLabel: n, accept
25374
25758
  children: t
25375
25759
  })]
25376
25760
  }), /* @__PURE__ */ jsxs("div", {
25377
- className: "flex items-center justify-end gap-3",
25761
+ className: "gap-3 flex items-center justify-end",
25378
25762
  children: [/* @__PURE__ */ jsx(Button, {
25379
- className: "rounded-lg border border-neutral-300 px-4 py-2 text-sm font-medium text-neutral-900 transition-opacity hover:opacity-70",
25763
+ className: "rounded-lg px-4 py-2 text-sm font-medium border border-neutral-300 text-neutral-900 transition-opacity hover:opacity-70",
25380
25764
  onClick: () => i(close),
25381
25765
  children: n
25382
25766
  }), /* @__PURE__ */ jsx(Button, {
25383
- className: "rounded-lg bg-error-base px-4 py-2 text-sm font-medium text-white transition-opacity hover:opacity-90",
25767
+ className: "rounded-lg px-4 py-2 text-sm font-medium bg-error-base text-white transition-opacity hover:opacity-90",
25384
25768
  onClick: () => a(close),
25385
25769
  children: r
25386
25770
  })]
@@ -25398,12 +25782,12 @@ function UndoToast({ title: e, subtitle: t, description: n, onUndo: r, onClose:
25398
25782
  }
25399
25783
  function UndoToastTemplate({ title: e, subtitle: t, description: n, onUndo: r, onClose: i }) {
25400
25784
  return /* @__PURE__ */ jsxs("div", {
25401
- className: "grid max-w-[400px] min-w-[280px] grid-cols-[auto_1fr] gap-3 rounded-lg bg-success-base p-4",
25785
+ className: "gap-3 rounded-lg p-4 grid max-w-[400px] min-w-[280px] grid-cols-[auto_1fr] bg-success-base",
25402
25786
  children: [/* @__PURE__ */ jsxs("div", {
25403
- className: "flex flex-col justify-center gap-1",
25787
+ className: "gap-1 flex flex-col justify-center",
25404
25788
  children: [
25405
25789
  /* @__PURE__ */ jsxs("div", {
25406
- className: "flex items-center gap-2",
25790
+ className: "gap-2 flex items-center",
25407
25791
  children: [/* @__PURE__ */ jsx("span", {
25408
25792
  className: "text-xs font-medium text-white",
25409
25793
  children: e
@@ -25414,11 +25798,11 @@ function UndoToastTemplate({ title: e, subtitle: t, description: n, onUndo: r, o
25414
25798
  })]
25415
25799
  }),
25416
25800
  t && /* @__PURE__ */ jsx("div", {
25417
- className: "line-clamp-2 text-xs font-semibold text-white-alpha-90",
25801
+ className: "text-xs font-semibold line-clamp-2 text-white-alpha-90",
25418
25802
  children: t
25419
25803
  }),
25420
25804
  n && /* @__PURE__ */ jsx("div", {
25421
- className: "line-clamp-2 text-xs text-white-alpha-80",
25805
+ className: "text-xs line-clamp-2 text-white-alpha-80",
25422
25806
  children: n
25423
25807
  })
25424
25808
  ]
@@ -25479,6 +25863,6 @@ function QtaloImage({ size: e = 40, className: t, ...n }) {
25479
25863
  }) })]
25480
25864
  });
25481
25865
  }
25482
- export { AVATAR_COLOR, AVATAR_COLOR_KEYS, Accordion, AccordionContent, AccordionItem, AccordionTrigger, AccountIcon, AccountInfo, ActionMenu, ActionMenuItem, AddCircleIcon, AddIcon, ArrowIcon, AsanaIcon, Avatar, Badge, BulkActions, BulkActionsSkeleton, Button, CalendarIcon, Card, CardContent, CardFooter, CardHeader, CardLayout, CardSidebar, CardTitle, CheckCircleEmptyIcon, CheckCircleIcon, CheckSquareIcon, Checkbox, CheckboxIcon, ClickUpIcon, CloseIcon, CompactDensityIcon, CopyIcon, DarkIcon, DatePicker, Divider, Dropdown, DropdownContext, DropdownMenu, DropdownMenuItem, EVENT_CARD_HEIGHT_SIZE, EVENT_SUMMARY_CARD_HEIGHT_SIZE, EmptyBoxIcon, EventCard, EventCardSkeleton, EventDetail, EventDetailContentCalendar, EventDetailContentEmail, EventDetailContentHeader, EventDetailContentMessage, EventDetailContentTicket, EventDetailHeader, EventDetailPriority, EventDetailSkeleton, EventDetailSummary, EventEmptyState, EventSummaryCard, EventSummaryCardSkeleton, ExternalLinkIcon, FilterBar, FilterBarSkeleton, FilterButton, FireFillIcon, FireIcon, GmailIcon, GoogleCalendarIcon, HomeIcon, Icon, IconButton, IconCountButton, IconCountButtonSkeleton, InfoTooltip, Input, InsightIcon, IntegrationBar, IntegrationBarSkeleton, IntegrationItem, IntegrationItemSkeleton, IntegrationsCard, JiraIcon, LightIcon, LogoIcon, MinusIcon, MoreIcon, NormalDensityIcon, NotFireIcon, OutlookCalendarIcon, OutlookIcon, Pressable, QtaloImage, ReadIcon, RichContent, SearchIcon, SearchInput, SignOutIcon, Skeleton, SlackIcon, StatusBadge, StopPropagation, SummaryIcon, SystemIcon, TeamsIcon, Toaster, Tooltip, UnreadIcon, capitalize, cn, colors, formatDate, formatDateRange, formatTimestamp, generateCalendarDays, getDaysInMonth, getFirstDayOfMonth, getInitials, getMonthName, getWeekdays, isDateBefore, isDateInRange, isSameDay, isToday, normalizeContent, parseDate, pickColorFromPalette, stringHash, toMondayBased, toast, toastStore, useAccordion, useDropdown, useLongPress };
25866
+ export { AVATAR_COLOR, AVATAR_COLOR_KEYS, Accordion, AccordionContent, AccordionItem, AccordionTrigger, AccountIcon, AccountInfo, ActionMenu, ActionMenuItem, AddCircleIcon, AddIcon, ArrowIcon, AsanaIcon, Avatar, Badge, BulkActions, BulkActionsSkeleton, Button, CalendarIcon, Card, CardContent, CardFooter, CardHeader, CardLayout, CardSidebar, CardTitle, CheckCircleEmptyIcon, CheckCircleIcon, CheckSquareIcon, Checkbox, CheckboxIcon, ClickUpIcon, CloseIcon, CompactDensityIcon, CopyIcon, DarkIcon, DatePicker, Divider, Dropdown, DropdownContext, DropdownMenu, DropdownMenuItem, EVENT_CARD_HEIGHT_SIZE, EVENT_SUMMARY_CARD_HEIGHT_SIZE, EmptyBoxIcon, EventCard, EventCardSkeleton, EventDetail, EventDetailContentCalendar, EventDetailContentEmail, EventDetailContentHeader, EventDetailContentMessage, EventDetailContentTicket, EventDetailHeader, EventDetailPriority, EventDetailSkeleton, EventDetailSummary, EventEmptyState, EventSummaryCard, EventSummaryCardSkeleton, EventSummaryFireButton, ExternalLinkIcon, FilterBar, FilterBarSkeleton, FilterButton, FireFillIcon, FireIcon, GmailIcon, GoogleCalendarIcon, HelpPanel, HelpPanelEngine, HomeIcon, Icon, IconButton, IconCountButton, IconCountButtonSkeleton, InboxIcon, InfoTooltip, Input, InsightFillIcon, InsightIcon, IntegrationBar, IntegrationBarSkeleton, IntegrationItem, IntegrationItemSkeleton, IntegrationsCard, JiraIcon, LightIcon, LogoIcon, MailIcon, MinusIcon, MoreIcon, NormalDensityIcon, NotFireIcon, ONBOARDING_DISMISSED_STORAGE_KEY, Onboarding, OnboardingCard, OnboardingEngine, OutlookCalendarIcon, OutlookIcon, Pressable, QtaloImage, ReadIcon, RichContent, SearchIcon, SearchInput, SignOutIcon, Skeleton, SlackIcon, StatusBadge, StopPropagation, SummaryIcon, SystemIcon, TeamsIcon, Toaster, Tooltip, UnreadIcon, capitalize, cn, colors, formatDate, formatDateRange, formatTimestamp, generateCalendarDays, getDaysInMonth, getFirstDayOfMonth, getInitials, getMonthName, getWeekdays, isDateBefore, isDateInRange, isSameDay, isToday, normalizeContent, parseDate, pickColorFromPalette, stringHash, toMondayBased, toast, toastStore, useAccordion, useDropdown, useLongPress };
25483
25867
 
25484
25868
  //# sourceMappingURL=index.js.map