@qtalo/qt-ui-library 0.3.4 → 0.4.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/index.js CHANGED
@@ -391,43 +391,43 @@ function createDOMPurify() {
391
391
  e.DocumentFragment;
392
392
  let a = e.HTMLTemplateElement, o = e.Node, s = e.Element, c = e.NodeFilter;
393
393
  e.NamedNodeMap === void 0 && (e.NamedNodeMap || e.MozNamedAttrMap), e.HTMLFormElement;
394
- let l = e.DOMParser, u = e.trustedTypes, f = s.prototype, p = lookupGetter(f, "cloneNode"), h = lookupGetter(f, "remove"), Fs = lookupGetter(f, "nextSibling"), g = lookupGetter(f, "childNodes"), O = lookupGetter(f, "parentNode"), Is = lookupGetter(f, "shadowRoot"), Ls = lookupGetter(f, "attributes"), A = o && o.prototype ? lookupGetter(o.prototype, "nodeType") : null, Rs = o && o.prototype ? lookupGetter(o.prototype, "nodeName") : null, R = o && o.prototype ? lookupGetter(o.prototype, "ownerDocument") : null;
394
+ let l = e.DOMParser, u = e.trustedTypes, f = s.prototype, p = lookupGetter(f, "cloneNode"), h = lookupGetter(f, "remove"), bc = lookupGetter(f, "nextSibling"), g = lookupGetter(f, "childNodes"), O = lookupGetter(f, "parentNode"), xc = lookupGetter(f, "shadowRoot"), Sc = lookupGetter(f, "attributes"), A = o && o.prototype ? lookupGetter(o.prototype, "nodeType") : null, Cc = o && o.prototype ? lookupGetter(o.prototype, "nodeName") : null, R = o && o.prototype ? lookupGetter(o.prototype, "ownerDocument") : null;
395
395
  if (typeof a == "function") {
396
396
  let e = n.createElement("template");
397
397
  e.content && e.content.ownerDocument && (n = e.content.ownerDocument);
398
398
  }
399
- let B, zs = "", Bs, Vs = !1, Hs = 0, Us = function() {
400
- if (Hs > 0) throw typeErrorCreate("A configured TRUSTED_TYPES_POLICY callback (createHTML or createScriptURL) must not call DOMPurify.sanitize, as that causes infinite recursion. Do not pass a policy whose callbacks wrap DOMPurify as TRUSTED_TYPES_POLICY; see the \"DOMPurify and Trusted Types\" section of the README.");
401
- }, Ws = function(e) {
402
- Us(), Hs++;
399
+ let B, wc = "", Tc, Ec = !1, Dc = 0, Oc = function() {
400
+ if (Dc > 0) throw typeErrorCreate("A configured TRUSTED_TYPES_POLICY callback (createHTML or createScriptURL) must not call DOMPurify.sanitize, as that causes infinite recursion. Do not pass a policy whose callbacks wrap DOMPurify as TRUSTED_TYPES_POLICY; see the \"DOMPurify and Trusted Types\" section of the README.");
401
+ }, kc = function(e) {
402
+ Oc(), Dc++;
403
403
  try {
404
404
  return B.createHTML(e);
405
405
  } finally {
406
- Hs--;
406
+ Dc--;
407
407
  }
408
- }, Gs = function(e) {
409
- Us(), Hs++;
408
+ }, Ac = function(e) {
409
+ Oc(), Dc++;
410
410
  try {
411
411
  return B.createScriptURL(e);
412
412
  } finally {
413
- Hs--;
413
+ Dc--;
414
414
  }
415
- }, Ks = function() {
416
- return Vs ||= (Bs = _createTrustedTypesPolicy(u, i), !0), Bs;
417
- }, qs = n, Js = qs.implementation, Ys = qs.createNodeIterator, Xs = qs.createDocumentFragment, Zs = qs.getElementsByTagName, Qs = r.importNode, V = _createHooksMap();
418
- t.isSupported = typeof entries == "function" && typeof O == "function" && Js && Js.createHTMLDocument !== void 0;
419
- let $s = MUSTACHE_EXPR, ec = ERB_EXPR, tc = TMPLIT_EXPR, nc = DATA_ATTR, rc = ARIA_ATTR, ic = IS_SCRIPT_OR_DATA, ac = ATTR_WHITESPACE, oc = CUSTOM_ELEMENT, sc = IS_ALLOWED_URI, H = null, cc = addToSet({}, [
415
+ }, jc = function() {
416
+ return Ec ||= (Tc = _createTrustedTypesPolicy(u, i), !0), Tc;
417
+ }, Mc = n, Nc = Mc.implementation, Pc = Mc.createNodeIterator, Fc = Mc.createDocumentFragment, Ic = Mc.getElementsByTagName, Lc = r.importNode, V = _createHooksMap();
418
+ t.isSupported = typeof entries == "function" && typeof O == "function" && Nc && Nc.createHTMLDocument !== void 0;
419
+ let Rc = MUSTACHE_EXPR, zc = ERB_EXPR, Bc = TMPLIT_EXPR, Vc = DATA_ATTR, Hc = ARIA_ATTR, Uc = IS_SCRIPT_OR_DATA, Wc = ATTR_WHITESPACE, Gc = CUSTOM_ELEMENT, Kc = IS_ALLOWED_URI, H = null, qc = addToSet({}, [
420
420
  ...html$1,
421
421
  ...svg$1,
422
422
  ...svgFilters,
423
423
  ...mathMl$1,
424
424
  ...text
425
- ]), Y = null, lc = addToSet({}, [
425
+ ]), Y = null, Jc = addToSet({}, [
426
426
  ...html,
427
427
  ...svg,
428
428
  ...mathMl,
429
429
  ...xml
430
- ]), uc = Object.seal(create(null, {
430
+ ]), Yc = Object.seal(create(null, {
431
431
  tagNameCheck: {
432
432
  writable: !0,
433
433
  configurable: !1,
@@ -446,7 +446,7 @@ function createDOMPurify() {
446
446
  enumerable: !0,
447
447
  value: !1
448
448
  }
449
- })), dc = null, fc = null, pc = Object.seal(create(null, {
449
+ })), Xc = null, Zc = null, Qc = Object.seal(create(null, {
450
450
  tagCheck: {
451
451
  writable: !0,
452
452
  configurable: !1,
@@ -459,14 +459,14 @@ function createDOMPurify() {
459
459
  enumerable: !0,
460
460
  value: null
461
461
  }
462
- })), mc = !0, hc = !0, gc = !1, _c = !0, vc = !1, yc = !0, bc = !1, xc = !1, Sc = null, Cc = null, wc = !1, Tc = !1, Ec = !1, Dc = !1, Oc = !0, kc = !1, Ac = "user-content-", jc = !0, Mc = !1, Nc = {}, Pc = null, Fc = addToSet({}, /* @__PURE__ */ "annotation-xml.audio.colgroup.desc.foreignobject.head.iframe.math.mi.mn.mo.ms.mtext.noembed.noframes.noscript.plaintext.script.selectedcontent.style.svg.template.thead.title.video.xmp".split(".")), Ic = null, Lc = addToSet({}, [
462
+ })), $c = !0, el = !0, tl = !1, nl = !0, rl = !1, il = !0, al = !1, ol = !1, sl = null, cl = null, ll = !1, ul = !1, dl = !1, fl = !1, pl = !0, ml = !1, hl = "user-content-", gl = !0, _l = !1, vl = {}, yl = null, bl = addToSet({}, /* @__PURE__ */ "annotation-xml.audio.colgroup.desc.foreignobject.head.iframe.math.mi.mn.mo.ms.mtext.noembed.noframes.noscript.plaintext.script.selectedcontent.style.svg.template.thead.title.video.xmp".split(".")), xl = null, Sl = addToSet({}, [
463
463
  "audio",
464
464
  "video",
465
465
  "img",
466
466
  "source",
467
467
  "image",
468
468
  "track"
469
- ]), Rc = null, zc = addToSet({}, [
469
+ ]), Cl = null, wl = addToSet({}, [
470
470
  "alt",
471
471
  "class",
472
472
  "for",
@@ -481,78 +481,78 @@ function createDOMPurify() {
481
481
  "value",
482
482
  "style",
483
483
  "xmlns"
484
- ]), Bc = "http://www.w3.org/1998/Math/MathML", Vc = "http://www.w3.org/2000/svg", Hc = "http://www.w3.org/1999/xhtml", Uc = Hc, Wc = !1, Gc = null, Kc = addToSet({}, [
485
- Bc,
486
- Vc,
487
- Hc
488
- ], stringToString), qc = freeze([
484
+ ]), Tl = "http://www.w3.org/1998/Math/MathML", El = "http://www.w3.org/2000/svg", Dl = "http://www.w3.org/1999/xhtml", Ol = Dl, kl = !1, Al = null, jl = addToSet({}, [
485
+ Tl,
486
+ El,
487
+ Dl
488
+ ], stringToString), Ml = freeze([
489
489
  "mi",
490
490
  "mo",
491
491
  "mn",
492
492
  "ms",
493
493
  "mtext"
494
- ]), Jc = addToSet({}, qc), Yc = freeze(["annotation-xml"]), Xc = addToSet({}, Yc), Zc = addToSet({}, [
494
+ ]), Nl = addToSet({}, Ml), Pl = freeze(["annotation-xml"]), Fl = addToSet({}, Pl), Il = addToSet({}, [
495
495
  "title",
496
496
  "style",
497
497
  "font",
498
498
  "a",
499
499
  "script"
500
- ]), Qc = null, $c = ["application/xhtml+xml", "text/html"], el = null, tl = null, nl = n.createElement("form"), rl = function(e) {
500
+ ]), Ll = null, Rl = ["application/xhtml+xml", "text/html"], zl = null, Bl = null, Vl = n.createElement("form"), Hl = function(e) {
501
501
  return e instanceof RegExp || e instanceof Function;
502
- }, il = function() {
502
+ }, Ul = function() {
503
503
  let e = arguments.length > 0 && arguments[0] !== void 0 ? arguments[0] : {};
504
- if (tl && tl === e) return;
505
- (!e || typeof e != "object") && (e = {}), e = clone(e), Qc = $c.indexOf(e.PARSER_MEDIA_TYPE) === -1 ? "text/html" : e.PARSER_MEDIA_TYPE, el = Qc === "application/xhtml+xml" ? stringToString : stringToLowerCase, H = _resolveSetOption(e, "ALLOWED_TAGS", cc, { transform: el }), Y = _resolveSetOption(e, "ALLOWED_ATTR", lc, { transform: el }), Gc = _resolveSetOption(e, "ALLOWED_NAMESPACES", Kc, { transform: stringToString }), Rc = _resolveSetOption(e, "ADD_URI_SAFE_ATTR", zc, {
506
- transform: el,
507
- base: zc
508
- }), Ic = _resolveSetOption(e, "ADD_DATA_URI_TAGS", Lc, {
509
- transform: el,
510
- base: Lc
511
- }), Pc = _resolveSetOption(e, "FORBID_CONTENTS", Fc, { transform: el }), dc = _resolveSetOption(e, "FORBID_TAGS", clone({}), { transform: el }), fc = _resolveSetOption(e, "FORBID_ATTR", clone({}), { transform: el }), Nc = objectHasOwnProperty(e, "USE_PROFILES") ? e.USE_PROFILES && typeof e.USE_PROFILES == "object" ? clone(e.USE_PROFILES) : e.USE_PROFILES : !1, mc = e.ALLOW_ARIA_ATTR !== !1, hc = e.ALLOW_DATA_ATTR !== !1, gc = e.ALLOW_UNKNOWN_PROTOCOLS || !1, _c = e.ALLOW_SELF_CLOSE_IN_ATTR !== !1, vc = e.SAFE_FOR_TEMPLATES || !1, yc = e.SAFE_FOR_XML !== !1, bc = e.WHOLE_DOCUMENT || !1, Tc = e.RETURN_DOM || !1, Ec = e.RETURN_DOM_FRAGMENT || !1, Dc = e.RETURN_TRUSTED_TYPE || !1, wc = e.FORCE_BODY || !1, Oc = e.SANITIZE_DOM !== !1, kc = e.SANITIZE_NAMED_PROPS || !1, jc = e.KEEP_CONTENT !== !1, Mc = e.IN_PLACE || !1, sc = isRegex(e.ALLOWED_URI_REGEXP) ? e.ALLOWED_URI_REGEXP : IS_ALLOWED_URI, Uc = typeof e.NAMESPACE == "string" ? e.NAMESPACE : Hc, Jc = objectHasOwnProperty(e, "MATHML_TEXT_INTEGRATION_POINTS") && e.MATHML_TEXT_INTEGRATION_POINTS && typeof e.MATHML_TEXT_INTEGRATION_POINTS == "object" ? clone(e.MATHML_TEXT_INTEGRATION_POINTS) : addToSet({}, qc), Xc = objectHasOwnProperty(e, "HTML_INTEGRATION_POINTS") && e.HTML_INTEGRATION_POINTS && typeof e.HTML_INTEGRATION_POINTS == "object" ? clone(e.HTML_INTEGRATION_POINTS) : addToSet({}, Yc);
504
+ if (Bl && Bl === e) return;
505
+ (!e || typeof e != "object") && (e = {}), e = clone(e), Ll = Rl.indexOf(e.PARSER_MEDIA_TYPE) === -1 ? "text/html" : e.PARSER_MEDIA_TYPE, zl = Ll === "application/xhtml+xml" ? stringToString : stringToLowerCase, H = _resolveSetOption(e, "ALLOWED_TAGS", qc, { transform: zl }), Y = _resolveSetOption(e, "ALLOWED_ATTR", Jc, { transform: zl }), Al = _resolveSetOption(e, "ALLOWED_NAMESPACES", jl, { transform: stringToString }), Cl = _resolveSetOption(e, "ADD_URI_SAFE_ATTR", wl, {
506
+ transform: zl,
507
+ base: wl
508
+ }), xl = _resolveSetOption(e, "ADD_DATA_URI_TAGS", Sl, {
509
+ transform: zl,
510
+ base: Sl
511
+ }), yl = _resolveSetOption(e, "FORBID_CONTENTS", bl, { transform: zl }), Xc = _resolveSetOption(e, "FORBID_TAGS", clone({}), { transform: zl }), Zc = _resolveSetOption(e, "FORBID_ATTR", clone({}), { transform: zl }), vl = objectHasOwnProperty(e, "USE_PROFILES") ? e.USE_PROFILES && typeof e.USE_PROFILES == "object" ? clone(e.USE_PROFILES) : e.USE_PROFILES : !1, $c = e.ALLOW_ARIA_ATTR !== !1, el = e.ALLOW_DATA_ATTR !== !1, tl = e.ALLOW_UNKNOWN_PROTOCOLS || !1, nl = e.ALLOW_SELF_CLOSE_IN_ATTR !== !1, rl = e.SAFE_FOR_TEMPLATES || !1, il = e.SAFE_FOR_XML !== !1, al = e.WHOLE_DOCUMENT || !1, ul = e.RETURN_DOM || !1, dl = e.RETURN_DOM_FRAGMENT || !1, fl = e.RETURN_TRUSTED_TYPE || !1, ll = e.FORCE_BODY || !1, pl = e.SANITIZE_DOM !== !1, ml = e.SANITIZE_NAMED_PROPS || !1, gl = e.KEEP_CONTENT !== !1, _l = e.IN_PLACE || !1, Kc = isRegex(e.ALLOWED_URI_REGEXP) ? e.ALLOWED_URI_REGEXP : IS_ALLOWED_URI, Ol = typeof e.NAMESPACE == "string" ? e.NAMESPACE : Dl, Nl = objectHasOwnProperty(e, "MATHML_TEXT_INTEGRATION_POINTS") && e.MATHML_TEXT_INTEGRATION_POINTS && typeof e.MATHML_TEXT_INTEGRATION_POINTS == "object" ? clone(e.MATHML_TEXT_INTEGRATION_POINTS) : addToSet({}, Ml), Fl = objectHasOwnProperty(e, "HTML_INTEGRATION_POINTS") && e.HTML_INTEGRATION_POINTS && typeof e.HTML_INTEGRATION_POINTS == "object" ? clone(e.HTML_INTEGRATION_POINTS) : addToSet({}, Pl);
512
512
  let t = objectHasOwnProperty(e, "CUSTOM_ELEMENT_HANDLING") && e.CUSTOM_ELEMENT_HANDLING && typeof e.CUSTOM_ELEMENT_HANDLING == "object" ? clone(e.CUSTOM_ELEMENT_HANDLING) : create(null);
513
- if (uc = create(null), objectHasOwnProperty(t, "tagNameCheck") && rl(t.tagNameCheck) && (uc.tagNameCheck = t.tagNameCheck), objectHasOwnProperty(t, "attributeNameCheck") && rl(t.attributeNameCheck) && (uc.attributeNameCheck = t.attributeNameCheck), objectHasOwnProperty(t, "allowCustomizedBuiltInElements") && typeof t.allowCustomizedBuiltInElements == "boolean" && (uc.allowCustomizedBuiltInElements = t.allowCustomizedBuiltInElements), seal(uc), vc && (hc = !1), Ec && (Tc = !0), Nc && (H = addToSet({}, text), Y = create(null), Nc.html === !0 && (addToSet(H, html$1), addToSet(Y, html)), Nc.svg === !0 && (addToSet(H, svg$1), addToSet(Y, svg), addToSet(Y, xml)), Nc.svgFilters === !0 && (addToSet(H, svgFilters), addToSet(Y, svg), addToSet(Y, xml)), Nc.mathMl === !0 && (addToSet(H, mathMl$1), addToSet(Y, mathMl), addToSet(Y, xml))), pc.tagCheck = null, pc.attributeCheck = null, objectHasOwnProperty(e, "ADD_TAGS") && (typeof e.ADD_TAGS == "function" ? pc.tagCheck = e.ADD_TAGS : arrayIsArray(e.ADD_TAGS) && (H === cc && (H = clone(H)), addToSet(H, e.ADD_TAGS, el))), objectHasOwnProperty(e, "ADD_ATTR") && (typeof e.ADD_ATTR == "function" ? pc.attributeCheck = e.ADD_ATTR : arrayIsArray(e.ADD_ATTR) && (Y === lc && (Y = clone(Y)), addToSet(Y, e.ADD_ATTR, el))), objectHasOwnProperty(e, "ADD_URI_SAFE_ATTR") && arrayIsArray(e.ADD_URI_SAFE_ATTR) && addToSet(Rc, e.ADD_URI_SAFE_ATTR, el), objectHasOwnProperty(e, "FORBID_CONTENTS") && arrayIsArray(e.FORBID_CONTENTS) && (Pc === Fc && (Pc = clone(Pc)), addToSet(Pc, e.FORBID_CONTENTS, el)), objectHasOwnProperty(e, "ADD_FORBID_CONTENTS") && arrayIsArray(e.ADD_FORBID_CONTENTS) && (Pc === Fc && (Pc = clone(Pc)), addToSet(Pc, e.ADD_FORBID_CONTENTS, el)), jc && (H["#text"] = !0), bc && addToSet(H, [
513
+ if (Yc = create(null), objectHasOwnProperty(t, "tagNameCheck") && Hl(t.tagNameCheck) && (Yc.tagNameCheck = t.tagNameCheck), objectHasOwnProperty(t, "attributeNameCheck") && Hl(t.attributeNameCheck) && (Yc.attributeNameCheck = t.attributeNameCheck), objectHasOwnProperty(t, "allowCustomizedBuiltInElements") && typeof t.allowCustomizedBuiltInElements == "boolean" && (Yc.allowCustomizedBuiltInElements = t.allowCustomizedBuiltInElements), seal(Yc), rl && (el = !1), dl && (ul = !0), vl && (H = addToSet({}, text), Y = create(null), vl.html === !0 && (addToSet(H, html$1), addToSet(Y, html)), vl.svg === !0 && (addToSet(H, svg$1), addToSet(Y, svg), addToSet(Y, xml)), vl.svgFilters === !0 && (addToSet(H, svgFilters), addToSet(Y, svg), addToSet(Y, xml)), vl.mathMl === !0 && (addToSet(H, mathMl$1), addToSet(Y, mathMl), addToSet(Y, xml))), Qc.tagCheck = null, Qc.attributeCheck = null, objectHasOwnProperty(e, "ADD_TAGS") && (typeof e.ADD_TAGS == "function" ? Qc.tagCheck = e.ADD_TAGS : arrayIsArray(e.ADD_TAGS) && (H === qc && (H = clone(H)), addToSet(H, e.ADD_TAGS, zl))), objectHasOwnProperty(e, "ADD_ATTR") && (typeof e.ADD_ATTR == "function" ? Qc.attributeCheck = e.ADD_ATTR : arrayIsArray(e.ADD_ATTR) && (Y === Jc && (Y = clone(Y)), addToSet(Y, e.ADD_ATTR, zl))), objectHasOwnProperty(e, "ADD_URI_SAFE_ATTR") && arrayIsArray(e.ADD_URI_SAFE_ATTR) && addToSet(Cl, e.ADD_URI_SAFE_ATTR, zl), objectHasOwnProperty(e, "FORBID_CONTENTS") && arrayIsArray(e.FORBID_CONTENTS) && (yl === bl && (yl = clone(yl)), addToSet(yl, e.FORBID_CONTENTS, zl)), objectHasOwnProperty(e, "ADD_FORBID_CONTENTS") && arrayIsArray(e.ADD_FORBID_CONTENTS) && (yl === bl && (yl = clone(yl)), addToSet(yl, e.ADD_FORBID_CONTENTS, zl)), gl && (H["#text"] = !0), al && addToSet(H, [
514
514
  "html",
515
515
  "head",
516
516
  "body"
517
- ]), H.table && (addToSet(H, ["tbody"]), delete dc.tbody), e.TRUSTED_TYPES_POLICY) {
517
+ ]), H.table && (addToSet(H, ["tbody"]), delete Xc.tbody), e.TRUSTED_TYPES_POLICY) {
518
518
  if (typeof e.TRUSTED_TYPES_POLICY.createHTML != "function") throw typeErrorCreate("TRUSTED_TYPES_POLICY configuration option must provide a \"createHTML\" hook.");
519
519
  if (typeof e.TRUSTED_TYPES_POLICY.createScriptURL != "function") throw typeErrorCreate("TRUSTED_TYPES_POLICY configuration option must provide a \"createScriptURL\" hook.");
520
520
  let t = B;
521
521
  B = e.TRUSTED_TYPES_POLICY;
522
522
  try {
523
- zs = Ws("");
523
+ wc = kc("");
524
524
  } catch (e) {
525
525
  throw B = t, e;
526
526
  }
527
- } else e.TRUSTED_TYPES_POLICY === null ? (B = void 0, zs = "") : (B === void 0 && (B = Ks()), B && typeof zs == "string" && (zs = Ws("")));
528
- freeze && freeze(e), tl = e;
529
- }, al = addToSet({}, [
527
+ } else e.TRUSTED_TYPES_POLICY === null ? (B = void 0, wc = "") : (B === void 0 && (B = jc()), B && typeof wc == "string" && (wc = kc("")));
528
+ freeze && freeze(e), Bl = e;
529
+ }, Wl = addToSet({}, [
530
530
  ...svg$1,
531
531
  ...svgFilters,
532
532
  ...svgDisallowed
533
- ]), ol = addToSet({}, [...mathMl$1, ...mathMlDisallowed]), sl = function(e, t, n) {
534
- return t.namespaceURI === Hc ? e === "svg" : t.namespaceURI === Bc ? e === "svg" && (n === "annotation-xml" || Jc[n]) : !!al[e];
535
- }, cl = function(e, t, n) {
536
- return t.namespaceURI === Hc ? e === "math" : t.namespaceURI === Vc ? e === "math" && Xc[n] : !!ol[e];
537
- }, ll = function(e, t, n) {
538
- return t.namespaceURI === Vc && !Xc[n] || t.namespaceURI === Bc && !Jc[n] ? !1 : !ol[e] && (Zc[e] || !al[e]);
539
- }, ul = function(e) {
533
+ ]), Gl = addToSet({}, [...mathMl$1, ...mathMlDisallowed]), Kl = function(e, t, n) {
534
+ return t.namespaceURI === Dl ? e === "svg" : t.namespaceURI === Tl ? e === "svg" && (n === "annotation-xml" || Nl[n]) : !!Wl[e];
535
+ }, ql = function(e, t, n) {
536
+ return t.namespaceURI === Dl ? e === "math" : t.namespaceURI === El ? e === "math" && Fl[n] : !!Gl[e];
537
+ }, Jl = function(e, t, n) {
538
+ return t.namespaceURI === El && !Fl[n] || t.namespaceURI === Tl && !Nl[n] ? !1 : !Gl[e] && (Il[e] || !Wl[e]);
539
+ }, Yl = function(e) {
540
540
  let t = O(e);
541
541
  (!t || !t.tagName) && (t = {
542
- namespaceURI: Uc,
542
+ namespaceURI: Ol,
543
543
  tagName: "template"
544
544
  });
545
545
  let n = stringToLowerCase(e.tagName), r = stringToLowerCase(t.tagName);
546
- return Gc[e.namespaceURI] ? e.namespaceURI === Vc ? sl(n, t, r) : e.namespaceURI === Bc ? cl(n, t, r) : e.namespaceURI === Hc ? ll(n, t, r) : !!(Qc === "application/xhtml+xml" && Gc[e.namespaceURI]) : !1;
547
- }, dl = function(e) {
546
+ return Al[e.namespaceURI] ? e.namespaceURI === El ? Kl(n, t, r) : e.namespaceURI === Tl ? ql(n, t, r) : e.namespaceURI === Dl ? Jl(n, t, r) : !!(Ll === "application/xhtml+xml" && Al[e.namespaceURI]) : !1;
547
+ }, Xl = function(e) {
548
548
  arrayPush(t.removed, { element: e });
549
549
  try {
550
550
  O(e).removeChild(e);
551
551
  } catch {
552
552
  if (h(e), !O(e)) throw typeErrorCreate("a node selected for removal could not be detached from its tree and cannot be safely returned; refusing to sanitize in place");
553
553
  }
554
- }, fl = function(e) {
555
- hl(e);
554
+ }, Zl = function(e) {
555
+ eu(e);
556
556
  let t = g(e);
557
557
  if (t) {
558
558
  let e = [];
@@ -564,14 +564,14 @@ function createDOMPurify() {
564
564
  } catch {}
565
565
  });
566
566
  }
567
- let n = Ls(e);
567
+ let n = Sc(e);
568
568
  if (n) for (let t = n.length - 1; t >= 0; --t) {
569
569
  let r = n[t], i = r && r.name;
570
570
  if (typeof i == "string") try {
571
571
  e.removeAttribute(i);
572
572
  } catch {}
573
573
  }
574
- }, pl = function(e, n) {
574
+ }, Ql = function(e, n) {
575
575
  try {
576
576
  arrayPush(t.removed, {
577
577
  attribute: n.getAttributeNode(e),
@@ -583,30 +583,30 @@ function createDOMPurify() {
583
583
  from: n
584
584
  });
585
585
  }
586
- if (n.removeAttribute(e), e === "is") if (Tc || Ec) try {
587
- dl(n);
586
+ if (n.removeAttribute(e), e === "is") if (ul || dl) try {
587
+ Xl(n);
588
588
  } catch {}
589
589
  else try {
590
590
  n.setAttribute(e, "");
591
591
  } catch {}
592
- }, ml = function(e) {
593
- let t = Ls(e);
592
+ }, $l = function(e) {
593
+ let t = Sc(e);
594
594
  if (t) for (let n = t.length - 1; n >= 0; --n) {
595
595
  let r = t[n], i = r && r.name;
596
- if (!(typeof i != "string" || Y[el(i)])) try {
596
+ if (!(typeof i != "string" || Y[zl(i)])) try {
597
597
  e.removeAttribute(i);
598
598
  } catch {}
599
599
  }
600
- }, hl = function(e) {
600
+ }, eu = function(e) {
601
601
  let t = [e];
602
602
  for (; t.length > 0;) {
603
603
  let e = t.pop();
604
- (A ? A(e) : e.nodeType) === NODE_TYPE.element && ml(e);
604
+ (A ? A(e) : e.nodeType) === NODE_TYPE.element && $l(e);
605
605
  let n = g(e);
606
606
  if (n) for (let e = n.length - 1; e >= 0; --e) t.push(n[e]);
607
607
  }
608
- }, gl = function(e) {
609
- if (!yc) return;
608
+ }, tu = function(e) {
609
+ if (!il) return;
610
610
  let t = [e];
611
611
  for (; t.length > 0;) {
612
612
  let e = t.pop(), n = A ? A(e) : e.nodeType;
@@ -617,7 +617,7 @@ function createDOMPurify() {
617
617
  continue;
618
618
  }
619
619
  if (n === NODE_TYPE.element) {
620
- let t = e, n = el(Rs ? Rs(e) : e.nodeName);
620
+ let t = e, n = zl(Cc ? Cc(e) : e.nodeName);
621
621
  try {
622
622
  t.hasAttribute && t.hasAttribute("patchsrc") && t.removeAttribute("patchsrc"), t.hasAttribute && t.hasAttribute("for") && n !== "label" && n !== "output" && t.removeAttribute("for");
623
623
  } catch {}
@@ -625,50 +625,50 @@ function createDOMPurify() {
625
625
  let r = g(e);
626
626
  if (r) for (let e = r.length - 1; e >= 0; --e) t.push(r[e]);
627
627
  }
628
- }, _l = function(e) {
628
+ }, nu = function(e) {
629
629
  let t = null, r = null;
630
- if (wc) e = "<remove></remove>" + e;
630
+ if (ll) e = "<remove></remove>" + e;
631
631
  else {
632
632
  let t = stringMatch(e, /^[\r\n\t ]+/);
633
633
  r = t && t[0];
634
634
  }
635
- Qc === "application/xhtml+xml" && Uc === Hc && (e = "<html xmlns=\"http://www.w3.org/1999/xhtml\"><head></head><body>" + e + "</body></html>");
636
- let i = B ? Ws(e) : e;
637
- if (Uc === Hc) try {
638
- t = new l().parseFromString(i, Qc);
635
+ Ll === "application/xhtml+xml" && Ol === Dl && (e = "<html xmlns=\"http://www.w3.org/1999/xhtml\"><head></head><body>" + e + "</body></html>");
636
+ let i = B ? kc(e) : e;
637
+ if (Ol === Dl) try {
638
+ t = new l().parseFromString(i, Ll);
639
639
  } catch {}
640
640
  if (!t || !t.documentElement) {
641
- t = Js.createDocument(Uc, "template", null);
641
+ t = Nc.createDocument(Ol, "template", null);
642
642
  try {
643
- t.documentElement.innerHTML = Wc ? zs : i;
643
+ t.documentElement.innerHTML = kl ? wc : i;
644
644
  } catch {}
645
645
  }
646
646
  let a = t.body || t.documentElement;
647
- return e && r && a.insertBefore(n.createTextNode(r), a.childNodes[0] || null), Uc === Hc ? Zs.call(t, bc ? "html" : "body")[0] : bc ? t.documentElement : a;
648
- }, vl = function(e) {
647
+ return e && r && a.insertBefore(n.createTextNode(r), a.childNodes[0] || null), Ol === Dl ? Ic.call(t, al ? "html" : "body")[0] : al ? t.documentElement : a;
648
+ }, ru = function(e) {
649
649
  let t = R ? R(e) : e.ownerDocument;
650
- return Ys.call(t || e, e, c.SHOW_ELEMENT | c.SHOW_COMMENT | c.SHOW_TEXT | c.SHOW_PROCESSING_INSTRUCTION | c.SHOW_CDATA_SECTION, null);
651
- }, yl = function(e) {
652
- return e = stringReplace(e, $s, " "), e = stringReplace(e, ec, " "), e = stringReplace(e, tc, " "), e;
653
- }, bl = function(e) {
650
+ return Pc.call(t || e, e, c.SHOW_ELEMENT | c.SHOW_COMMENT | c.SHOW_TEXT | c.SHOW_PROCESSING_INSTRUCTION | c.SHOW_CDATA_SECTION, null);
651
+ }, iu = function(e) {
652
+ return e = stringReplace(e, Rc, " "), e = stringReplace(e, zc, " "), e = stringReplace(e, Bc, " "), e;
653
+ }, au = function(e) {
654
654
  e.normalize();
655
- let t = R ? R(e) : e.ownerDocument, n = Ys.call(t || e, e, c.SHOW_TEXT | c.SHOW_COMMENT | c.SHOW_CDATA_SECTION | c.SHOW_PROCESSING_INSTRUCTION, null), r = n.nextNode();
656
- for (; r;) r.data = yl(r.data), r = n.nextNode();
655
+ let t = R ? R(e) : e.ownerDocument, n = Pc.call(t || e, e, c.SHOW_TEXT | c.SHOW_COMMENT | c.SHOW_CDATA_SECTION | c.SHOW_PROCESSING_INSTRUCTION, null), r = n.nextNode();
656
+ for (; r;) r.data = iu(r.data), r = n.nextNode();
657
657
  let i = e.querySelectorAll?.call(e, "template");
658
658
  i && arrayForEach(i, (e) => {
659
- Sl(e.content) && bl(e.content);
659
+ su(e.content) && au(e.content);
660
660
  });
661
- }, xl = function(e) {
662
- let t = Rs ? Rs(e) : null;
663
- return typeof t != "string" || el(t) !== "form" ? !1 : typeof e.nodeName != "string" || typeof e.textContent != "string" || typeof e.removeChild != "function" || e.attributes !== Ls(e) || typeof e.removeAttribute != "function" || typeof e.setAttribute != "function" || typeof e.namespaceURI != "string" || typeof e.insertBefore != "function" || typeof e.hasChildNodes != "function" || e.nodeType !== A(e) || e.childNodes !== g(e);
664
- }, Sl = function(e) {
661
+ }, ou = function(e) {
662
+ let t = Cc ? Cc(e) : null;
663
+ return typeof t != "string" || zl(t) !== "form" ? !1 : typeof e.nodeName != "string" || typeof e.textContent != "string" || typeof e.removeChild != "function" || e.attributes !== Sc(e) || typeof e.removeAttribute != "function" || typeof e.setAttribute != "function" || typeof e.namespaceURI != "string" || typeof e.insertBefore != "function" || typeof e.hasChildNodes != "function" || e.nodeType !== A(e) || e.childNodes !== g(e);
664
+ }, su = function(e) {
665
665
  if (!A || typeof e != "object" || !e) return !1;
666
666
  try {
667
667
  return A(e) === NODE_TYPE.documentFragment;
668
668
  } catch {
669
669
  return !1;
670
670
  }
671
- }, Cl = function(e) {
671
+ }, cu = function(e) {
672
672
  if (!A || typeof e != "object" || !e) return !1;
673
673
  try {
674
674
  return typeof A(e) == "number";
@@ -676,57 +676,57 @@ function createDOMPurify() {
676
676
  return !1;
677
677
  }
678
678
  };
679
- function wl(e, n, r) {
679
+ function lu(e, n, r) {
680
680
  e.length !== 0 && arrayForEach(e, (e) => {
681
- e.call(t, n, r, tl);
681
+ e.call(t, n, r, Bl);
682
682
  });
683
683
  }
684
- let Tl = function(e, t) {
685
- return !!(yc && e.hasChildNodes() && !Cl(e.firstElementChild) && regExpTest(ELEMENT_MARKUP_PROBE, e.textContent) && regExpTest(ELEMENT_MARKUP_PROBE, e.innerHTML) || yc && e.namespaceURI === Hc && t === "style" && Cl(e.firstElementChild) || e.nodeType === NODE_TYPE.processingInstruction || yc && e.nodeType === NODE_TYPE.comment && regExpTest(COMMENT_MARKUP_PROBE, e.data));
686
- }, El = function(e, t, n) {
687
- if (!dc[t] && jl(t) && (uc.tagNameCheck instanceof RegExp && regExpTest(uc.tagNameCheck, t) || uc.tagNameCheck instanceof Function && uc.tagNameCheck(t))) return !1;
688
- if (jc && !Pc[t]) {
684
+ let uu = function(e, t) {
685
+ return !!(il && e.hasChildNodes() && !cu(e.firstElementChild) && regExpTest(ELEMENT_MARKUP_PROBE, e.textContent) && regExpTest(ELEMENT_MARKUP_PROBE, e.innerHTML) || il && e.namespaceURI === Dl && t === "style" && cu(e.firstElementChild) || e.nodeType === NODE_TYPE.processingInstruction || il && e.nodeType === NODE_TYPE.comment && regExpTest(COMMENT_MARKUP_PROBE, e.data));
686
+ }, du = function(e, t, n) {
687
+ if (!Xc[t] && gu(t) && (Yc.tagNameCheck instanceof RegExp && regExpTest(Yc.tagNameCheck, t) || Yc.tagNameCheck instanceof Function && Yc.tagNameCheck(t))) return !1;
688
+ if (gl && !yl[t]) {
689
689
  let t = O(e), r = g(e);
690
690
  if (r && t) {
691
691
  let i = r.length;
692
692
  for (let a = i - 1; a >= 0; --a) {
693
693
  let i = e === n ? p(r[a], !0) : r[a];
694
- t.insertBefore(i, Fs(e));
694
+ t.insertBefore(i, bc(e));
695
695
  }
696
696
  }
697
697
  }
698
- return dl(e), !0;
699
- }, Dl = function(e, t, n, r) {
698
+ return Xl(e), !0;
699
+ }, fu = function(e, t, n, r) {
700
700
  return e.length === 0 ? t : t === n || t === r ? clone(t) : t;
701
- }, Ol = function(e, n) {
702
- if (wl(V.beforeSanitizeElements, e, null), e !== n && O(e) === null) return Mc && hl(e), !0;
703
- if (xl(e)) return dl(e), !0;
704
- let r = el(Rs ? Rs(e) : e.nodeName);
705
- if (H = Dl(V.uponSanitizeElement, H, cc, Sc), wl(V.uponSanitizeElement, e, {
701
+ }, pu = function(e, n) {
702
+ if (lu(V.beforeSanitizeElements, e, null), e !== n && O(e) === null) return _l && eu(e), !0;
703
+ if (ou(e)) return Xl(e), !0;
704
+ let r = zl(Cc ? Cc(e) : e.nodeName);
705
+ if (H = fu(V.uponSanitizeElement, H, qc, sl), lu(V.uponSanitizeElement, e, {
706
706
  tagName: r,
707
707
  allowedTags: H
708
- }), e !== n && O(e) === null) return Mc && hl(e), !0;
709
- if (Tl(e, r)) return dl(e), !0;
710
- if (dc[r] || !(pc.tagCheck instanceof Function && pc.tagCheck(r)) && !H[r]) {
711
- let t = El(e, r, n);
712
- return t === !1 && wl(V.afterSanitizeElements, e, null), t;
708
+ }), e !== n && O(e) === null) return _l && eu(e), !0;
709
+ if (uu(e, r)) return Xl(e), !0;
710
+ if (Xc[r] || !(Qc.tagCheck instanceof Function && Qc.tagCheck(r)) && !H[r]) {
711
+ let t = du(e, r, n);
712
+ return t === !1 && lu(V.afterSanitizeElements, e, null), t;
713
713
  }
714
- if ((A ? A(e) : e.nodeType) === NODE_TYPE.element && !ul(e) || (r === "noscript" || r === "noembed" || r === "noframes") && regExpTest(FALLBACK_TAG_CLOSE, e.innerHTML)) return dl(e), !0;
715
- if (vc && e.nodeType === NODE_TYPE.text) {
716
- let n = yl(e.textContent);
714
+ if ((A ? A(e) : e.nodeType) === NODE_TYPE.element && !Yl(e) || (r === "noscript" || r === "noembed" || r === "noframes") && regExpTest(FALLBACK_TAG_CLOSE, e.innerHTML)) return Xl(e), !0;
715
+ if (rl && e.nodeType === NODE_TYPE.text) {
716
+ let n = iu(e.textContent);
717
717
  e.textContent !== n && (arrayPush(t.removed, { element: e.cloneNode() }), e.textContent = n);
718
718
  }
719
- return wl(V.afterSanitizeElements, e, null), !1;
720
- }, kl = function(e, t, r) {
721
- if (fc[t] || yc && t === "patchsrc" || yc && t === "for" && e !== "label" && e !== "output" || Oc && (t === "id" || t === "name") && (r in n || r in nl)) return !1;
722
- let i = Y[t] || pc.attributeCheck instanceof Function && pc.attributeCheck(t, e);
723
- if (!(hc && regExpTest(nc, t)) && !(mc && regExpTest(rc, t))) {
719
+ return lu(V.afterSanitizeElements, e, null), !1;
720
+ }, mu = function(e, t, r) {
721
+ if (Zc[t] || il && t === "patchsrc" || il && t === "for" && e !== "label" && e !== "output" || pl && (t === "id" || t === "name") && (r in n || r in Vl)) return !1;
722
+ let i = Y[t] || Qc.attributeCheck instanceof Function && Qc.attributeCheck(t, e);
723
+ if (!(el && regExpTest(Vc, t)) && !($c && regExpTest(Hc, t))) {
724
724
  if (i) {
725
- if (!Rc[t] && !regExpTest(sc, stringReplace(r, ac, "")) && !((t === "src" || t === "xlink:href" || t === "href") && e !== "script" && stringIndexOf(r, "data:") === 0 && Ic[e]) && !(gc && !regExpTest(ic, stringReplace(r, ac, ""))) && r) return !1;
726
- } else if (!(jl(e) && (uc.tagNameCheck instanceof RegExp && regExpTest(uc.tagNameCheck, e) || uc.tagNameCheck instanceof Function && uc.tagNameCheck(e)) && (uc.attributeNameCheck instanceof RegExp && regExpTest(uc.attributeNameCheck, t) || uc.attributeNameCheck instanceof Function && uc.attributeNameCheck(t, e)) || t === "is" && uc.allowCustomizedBuiltInElements && (uc.tagNameCheck instanceof RegExp && regExpTest(uc.tagNameCheck, r) || uc.tagNameCheck instanceof Function && uc.tagNameCheck(r)))) return !1;
725
+ if (!Cl[t] && !regExpTest(Kc, stringReplace(r, Wc, "")) && !((t === "src" || t === "xlink:href" || t === "href") && e !== "script" && stringIndexOf(r, "data:") === 0 && xl[e]) && !(tl && !regExpTest(Uc, stringReplace(r, Wc, ""))) && r) return !1;
726
+ } else if (!(gu(e) && (Yc.tagNameCheck instanceof RegExp && regExpTest(Yc.tagNameCheck, e) || Yc.tagNameCheck instanceof Function && Yc.tagNameCheck(e)) && (Yc.attributeNameCheck instanceof RegExp && regExpTest(Yc.attributeNameCheck, t) || Yc.attributeNameCheck instanceof Function && Yc.attributeNameCheck(t, e)) || t === "is" && Yc.allowCustomizedBuiltInElements && (Yc.tagNameCheck instanceof RegExp && regExpTest(Yc.tagNameCheck, r) || Yc.tagNameCheck instanceof Function && Yc.tagNameCheck(r)))) return !1;
727
727
  }
728
728
  return !0;
729
- }, Al = addToSet({}, [
729
+ }, hu = addToSet({}, [
730
730
  "annotation-xml",
731
731
  "color-profile",
732
732
  "font-face",
@@ -735,67 +735,67 @@ function createDOMPurify() {
735
735
  "font-face-src",
736
736
  "font-face-uri",
737
737
  "missing-glyph"
738
- ]), jl = function(e) {
739
- return !Al[stringToLowerCase(e)] && regExpTest(oc, e);
740
- }, Ml = function(e, t, n, r) {
738
+ ]), gu = function(e) {
739
+ return !hu[stringToLowerCase(e)] && regExpTest(Gc, e);
740
+ }, _u = function(e, t, n, r) {
741
741
  if (B && typeof u == "object" && typeof u.getAttributeType == "function" && !n) switch (u.getAttributeType(e, t)) {
742
- case "TrustedHTML": return Ws(r);
743
- case "TrustedScriptURL": return Gs(r);
742
+ case "TrustedHTML": return kc(r);
743
+ case "TrustedScriptURL": return Ac(r);
744
744
  }
745
745
  return r;
746
- }, Nl = function(e, n, r, i) {
746
+ }, vu = function(e, n, r, i) {
747
747
  try {
748
- r ? e.setAttributeNS(r, n, i) : e.setAttribute(n, i), xl(e) ? dl(e) : arrayPop(t.removed);
748
+ r ? e.setAttributeNS(r, n, i) : e.setAttribute(n, i), ou(e) ? Xl(e) : arrayPop(t.removed);
749
749
  } catch {
750
- pl(n, e);
750
+ Ql(n, e);
751
751
  }
752
- }, Pl = function(e) {
753
- wl(V.beforeSanitizeAttributes, e, null);
752
+ }, yu = function(e) {
753
+ lu(V.beforeSanitizeAttributes, e, null);
754
754
  let t = e.attributes;
755
- if (!t || xl(e)) return;
756
- Y = Dl(V.uponSanitizeAttribute, Y, lc, Cc);
755
+ if (!t || ou(e)) return;
756
+ Y = fu(V.uponSanitizeAttribute, Y, Jc, cl);
757
757
  let n = {
758
758
  attrName: "",
759
759
  attrValue: "",
760
760
  keepAttr: !0,
761
761
  allowedAttributes: Y,
762
762
  forceKeepAttr: void 0
763
- }, r = t.length, i = el(e.nodeName);
763
+ }, r = t.length, i = zl(e.nodeName);
764
764
  for (; r--;) {
765
- let a = t[r], o = a.name, s = a.namespaceURI, c = a.value, l = el(o), u = c, f = o === "value" ? u : stringTrim(u);
766
- if (n.attrName = l, n.attrValue = f, n.keepAttr = !0, n.forceKeepAttr = void 0, wl(V.uponSanitizeAttribute, e, n), f = n.attrValue, kc && (l === "id" || l === "name") && stringIndexOf(f, Ac) !== 0 && (pl(o, e), f = Ac + f), yc && regExpTest(/((--!?|])>)|<\/(style|script|title|xmp|textarea|noscript|iframe|noembed|noframes)/i, f)) {
767
- pl(o, e);
765
+ let a = t[r], o = a.name, s = a.namespaceURI, c = a.value, l = zl(o), u = c, f = o === "value" ? u : stringTrim(u);
766
+ if (n.attrName = l, n.attrValue = f, n.keepAttr = !0, n.forceKeepAttr = void 0, lu(V.uponSanitizeAttribute, e, n), f = n.attrValue, ml && (l === "id" || l === "name") && stringIndexOf(f, hl) !== 0 && (Ql(o, e), f = hl + f), il && regExpTest(/((--!?|])>)|<\/(style|script|title|xmp|textarea|noscript|iframe|noembed|noframes)/i, f)) {
767
+ Ql(o, e);
768
768
  continue;
769
769
  }
770
770
  if (l === "attributename" && stringMatch(f, "href")) {
771
- pl(o, e);
771
+ Ql(o, e);
772
772
  continue;
773
773
  }
774
774
  if (!n.forceKeepAttr) {
775
775
  if (!n.keepAttr) {
776
- pl(o, e);
776
+ Ql(o, e);
777
777
  continue;
778
778
  }
779
- if (!_c && regExpTest(SELF_CLOSING_TAG, f)) {
780
- pl(o, e);
779
+ if (!nl && regExpTest(SELF_CLOSING_TAG, f)) {
780
+ Ql(o, e);
781
781
  continue;
782
782
  }
783
- if (vc && (f = yl(f)), !kl(i, l, f)) {
784
- pl(o, e);
783
+ if (rl && (f = iu(f)), !mu(i, l, f)) {
784
+ Ql(o, e);
785
785
  continue;
786
786
  }
787
- f = Ml(i, l, s, f), f !== u && Nl(e, o, s, f);
787
+ f = _u(i, l, s, f), f !== u && vu(e, o, s, f);
788
788
  }
789
789
  }
790
- wl(V.afterSanitizeAttributes, e, null);
791
- }, Fl = function(e) {
792
- let t = null, n = vl(e);
793
- for (wl(V.beforeSanitizeShadowDOM, e, null); t = n.nextNode();) if (wl(V.uponSanitizeShadowNode, t, null), Ol(t, e), Pl(t), Sl(t.content) && Fl(t.content), (A ? A(t) : t.nodeType) === NODE_TYPE.element) {
794
- let e = Is(t);
795
- Sl(e) && (Il(e), Fl(e));
790
+ lu(V.afterSanitizeAttributes, e, null);
791
+ }, bu = function(e) {
792
+ let t = null, n = ru(e);
793
+ for (lu(V.beforeSanitizeShadowDOM, e, null); t = n.nextNode();) if (lu(V.uponSanitizeShadowNode, t, null), pu(t, e), yu(t), su(t.content) && bu(t.content), (A ? A(t) : t.nodeType) === NODE_TYPE.element) {
794
+ let e = xc(t);
795
+ su(e) && (xu(e), bu(e));
796
796
  }
797
- wl(V.afterSanitizeShadowDOM, e, null);
798
- }, Il = function(e) {
797
+ lu(V.afterSanitizeShadowDOM, e, null);
798
+ }, xu = function(e) {
799
799
  let t = [{
800
800
  node: e,
801
801
  shadow: null
@@ -803,7 +803,7 @@ function createDOMPurify() {
803
803
  for (; t.length > 0;) {
804
804
  let e = t.pop();
805
805
  if (e.shadow) {
806
- Fl(e.shadow);
806
+ bu(e.shadow);
807
807
  continue;
808
808
  }
809
809
  let n = e.node, r = (A ? A(n) : n.nodeType) === NODE_TYPE.element, i = g(n);
@@ -812,18 +812,18 @@ function createDOMPurify() {
812
812
  shadow: null
813
813
  });
814
814
  if (r) {
815
- let e = Rs ? Rs(n) : null;
816
- if (typeof e == "string" && el(e) === "template") {
815
+ let e = Cc ? Cc(n) : null;
816
+ if (typeof e == "string" && zl(e) === "template") {
817
817
  let e = n.content;
818
- Sl(e) && t.push({
818
+ su(e) && t.push({
819
819
  node: e,
820
820
  shadow: null
821
821
  });
822
822
  }
823
823
  }
824
824
  if (r) {
825
- let e = Is(n);
826
- Sl(e) && t.push({
825
+ let e = xc(n);
826
+ su(e) && t.push({
827
827
  node: null,
828
828
  shadow: e
829
829
  }, {
@@ -835,54 +835,54 @@ function createDOMPurify() {
835
835
  };
836
836
  return t.sanitize = function(e) {
837
837
  let n = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : {}, i = null, a = null, o = null, s = null;
838
- if (Wc = !e, Wc && (e = "<!-->"), typeof e != "string" && !Cl(e) && (e = stringifyValue(e), typeof e != "string")) throw typeErrorCreate("dirty is not a string, aborting");
838
+ if (kl = !e, kl && (e = "<!-->"), typeof e != "string" && !cu(e) && (e = stringifyValue(e), typeof e != "string")) throw typeErrorCreate("dirty is not a string, aborting");
839
839
  if (!t.isSupported) return e;
840
- xc ? (H = Sc, Y = Cc) : il(n), (V.uponSanitizeElement.length > 0 || V.uponSanitizeAttribute.length > 0) && (H = clone(H)), V.uponSanitizeAttribute.length > 0 && (Y = clone(Y)), t.removed = [];
841
- let c = Mc && typeof e != "string" && Cl(e);
840
+ ol ? (H = sl, Y = cl) : Ul(n), (V.uponSanitizeElement.length > 0 || V.uponSanitizeAttribute.length > 0) && (H = clone(H)), V.uponSanitizeAttribute.length > 0 && (Y = clone(Y)), t.removed = [];
841
+ let c = _l && typeof e != "string" && cu(e);
842
842
  if (c) {
843
- gl(e);
844
- let t = Rs ? Rs(e) : e.nodeName;
843
+ tu(e);
844
+ let t = Cc ? Cc(e) : e.nodeName;
845
845
  if (typeof t == "string") {
846
- let n = el(t);
847
- if (!H[n] || dc[n]) throw fl(e), typeErrorCreate("root node is forbidden and cannot be sanitized in-place");
846
+ let n = zl(t);
847
+ if (!H[n] || Xc[n]) throw Zl(e), typeErrorCreate("root node is forbidden and cannot be sanitized in-place");
848
848
  }
849
- if (xl(e)) throw fl(e), typeErrorCreate("root node is clobbered and cannot be sanitized in-place");
849
+ if (ou(e)) throw Zl(e), typeErrorCreate("root node is clobbered and cannot be sanitized in-place");
850
850
  try {
851
- Il(e);
851
+ xu(e);
852
852
  } catch (t) {
853
- throw fl(e), t;
853
+ throw Zl(e), t;
854
854
  }
855
- } else if (Cl(e)) i = _l("<!---->"), a = i.ownerDocument.importNode(e, !0), a.nodeType === NODE_TYPE.element && a.nodeName === "BODY" || a.nodeName === "HTML" ? i = a : i.appendChild(a), Il(a);
855
+ } else if (cu(e)) i = nu("<!---->"), a = i.ownerDocument.importNode(e, !0), a.nodeType === NODE_TYPE.element && a.nodeName === "BODY" || a.nodeName === "HTML" ? i = a : i.appendChild(a), xu(a);
856
856
  else {
857
- if (!Tc && !vc && !bc && e.indexOf("<") === -1) return B && Dc ? Ws(e) : e;
858
- if (i = _l(e), !i) return Tc ? null : Dc ? zs : "";
857
+ if (!ul && !rl && !al && e.indexOf("<") === -1) return B && fl ? kc(e) : e;
858
+ if (i = nu(e), !i) return ul ? null : fl ? wc : "";
859
859
  }
860
- i && wc && dl(i.firstChild);
860
+ i && ll && Xl(i.firstChild);
861
861
  let l = c ? e : i;
862
862
  try {
863
- let e = vl(l);
864
- for (; o = e.nextNode();) Ol(o, l), Pl(o), Sl(o.content) && Fl(o.content);
863
+ let e = ru(l);
864
+ for (; o = e.nextNode();) pu(o, l), yu(o), su(o.content) && bu(o.content);
865
865
  } catch (n) {
866
- throw c && (fl(e), arrayForEach(t.removed, (e) => {
867
- e.element && hl(e.element);
866
+ throw c && (Zl(e), arrayForEach(t.removed, (e) => {
867
+ e.element && eu(e.element);
868
868
  })), n;
869
869
  }
870
870
  if (c) return arrayForEach(t.removed, (e) => {
871
- e.element && hl(e.element);
872
- }), vc && bl(e), e;
873
- if (Tc) {
874
- if (vc && bl(i), Ec) for (s = Xs.call(i.ownerDocument); i.firstChild;) s.appendChild(i.firstChild);
871
+ e.element && eu(e.element);
872
+ }), rl && au(e), e;
873
+ if (ul) {
874
+ if (rl && au(i), dl) for (s = Fc.call(i.ownerDocument); i.firstChild;) s.appendChild(i.firstChild);
875
875
  else s = i;
876
- return (Y.shadowroot || Y.shadowrootmode) && (s = Qs.call(r, s, !0)), s;
876
+ return (Y.shadowroot || Y.shadowrootmode) && (s = Lc.call(r, s, !0)), s;
877
877
  }
878
- let u = bc ? i.outerHTML : i.innerHTML;
879
- return bc && H["!doctype"] && i.ownerDocument && i.ownerDocument.doctype && i.ownerDocument.doctype.name && regExpTest(DOCTYPE_NAME, i.ownerDocument.doctype.name) && (u = "<!DOCTYPE " + i.ownerDocument.doctype.name + ">\n" + u), vc && (u = yl(u)), B && Dc ? Ws(u) : u;
878
+ let u = al ? i.outerHTML : i.innerHTML;
879
+ return al && H["!doctype"] && i.ownerDocument && i.ownerDocument.doctype && i.ownerDocument.doctype.name && regExpTest(DOCTYPE_NAME, i.ownerDocument.doctype.name) && (u = "<!DOCTYPE " + i.ownerDocument.doctype.name + ">\n" + u), rl && (u = iu(u)), B && fl ? kc(u) : u;
880
880
  }, t.setConfig = function() {
881
- il(arguments.length > 0 && arguments[0] !== void 0 ? arguments[0] : {}), xc = !0, Sc = H, Cc = Y;
881
+ Ul(arguments.length > 0 && arguments[0] !== void 0 ? arguments[0] : {}), ol = !0, sl = H, cl = Y;
882
882
  }, t.clearConfig = function() {
883
- tl = null, xc = !1, Sc = null, Cc = null, B = Bs, zs = "";
883
+ Bl = null, ol = !1, sl = null, cl = null, B = Tc, wc = "";
884
884
  }, t.isValidAttribute = function(e, t, n) {
885
- return tl || il({}), kl(el(e), el(t), n);
885
+ return Bl || Ul({}), mu(zl(e), zl(t), n);
886
886
  }, t.addHook = function(e, t) {
887
887
  typeof t == "function" && objectHasOwnProperty(V, e) && arrayPush(V[e], t);
888
888
  }, t.removeHook = function(e, t) {
@@ -21592,18 +21592,18 @@ function useDropdown() {
21592
21592
  return e;
21593
21593
  }
21594
21594
  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 }) {
21595
- let g = u !== void 0, [O, Rs] = useState(!1), R = g ? u : O, B = useCallback((e) => {
21596
- e !== R && (g || Rs(e), p?.(e));
21595
+ let g = u !== void 0, [O, Cc] = useState(!1), R = g ? u : O, B = useCallback((e) => {
21596
+ e !== R && (g || Cc(e), p?.(e));
21597
21597
  }, [
21598
21598
  R,
21599
21599
  g,
21600
21600
  p
21601
- ]), zs = useRef(null), Bs = useRef(null), Vs = useRef(null), [Hs, Us] = useState(null), Ws = useCallback(() => {
21602
- if (!zs.current || !Bs.current) return;
21603
- let e = zs.current.getBoundingClientRect(), t = Bs.current.getBoundingClientRect(), o = e.left;
21601
+ ]), wc = useRef(null), Tc = useRef(null), Ec = useRef(null), [Dc, Oc] = useState(null), kc = useCallback(() => {
21602
+ if (!wc.current || !Tc.current) return;
21603
+ let e = wc.current.getBoundingClientRect(), t = Tc.current.getBoundingClientRect(), o = e.left;
21604
21604
  n === "end" ? o = e.right - t.width : n === "center" && (o = e.left + (e.width - t.width) / 2), o += i;
21605
21605
  let s;
21606
- s = r === "bottom" ? e.bottom + a : e.top - t.height + a, queueMicrotask(() => Us({
21606
+ s = r === "bottom" ? e.bottom + a : e.top - t.height + a, queueMicrotask(() => Oc({
21607
21607
  top: s,
21608
21608
  left: o
21609
21609
  }));
@@ -21614,52 +21614,52 @@ function Dropdown({ trigger: e, children: t, align: n = "start", side: r = "bott
21614
21614
  a
21615
21615
  ]);
21616
21616
  useLayoutEffect(() => {
21617
- R && Ws();
21618
- }, [R, Ws]), useEffect(() => {
21617
+ R && kc();
21618
+ }, [R, kc]), useEffect(() => {
21619
21619
  if (!R) return;
21620
- let e = () => Ws();
21620
+ let e = () => kc();
21621
21621
  return window.addEventListener("resize", e), window.addEventListener("scroll", e, !0), () => {
21622
21622
  window.removeEventListener("resize", e), window.removeEventListener("scroll", e, !0);
21623
21623
  };
21624
- }, [R, Ws]);
21625
- let Gs = useCallback(() => {
21626
- Vs.current &&= (clearTimeout(Vs.current), null), B(!0);
21627
- }, [B]), Ks = useCallback(() => {
21628
- Vs.current = window.setTimeout(() => {
21624
+ }, [R, kc]);
21625
+ let Ac = useCallback(() => {
21626
+ Ec.current &&= (clearTimeout(Ec.current), null), B(!0);
21627
+ }, [B]), jc = useCallback(() => {
21628
+ Ec.current = window.setTimeout(() => {
21629
21629
  B(!1);
21630
21630
  }, 120);
21631
21631
  }, [B]);
21632
21632
  return useEffect(() => {
21633
21633
  function e(e) {
21634
21634
  let t = e.target;
21635
- zs.current?.contains(t) || Bs.current?.contains(t) || B(!1);
21635
+ wc.current?.contains(t) || Tc.current?.contains(t) || B(!1);
21636
21636
  }
21637
21637
  return document.addEventListener("mousedown", e), () => document.removeEventListener("mousedown", e);
21638
21638
  }, [B]), useEffect(() => () => {
21639
- Vs.current && clearTimeout(Vs.current);
21639
+ Ec.current && clearTimeout(Ec.current);
21640
21640
  }, []), /* @__PURE__ */ jsxs(DropdownContext.Provider, {
21641
21641
  value: {
21642
21642
  close: () => B(!1),
21643
- open: Gs
21643
+ open: Ac
21644
21644
  },
21645
21645
  children: [/* @__PURE__ */ jsx("div", {
21646
- ref: zs,
21646
+ ref: wc,
21647
21647
  className: "inline-flex",
21648
- onMouseEnter: c ? Gs : void 0,
21649
- onMouseLeave: c ? Ks : void 0,
21648
+ onMouseEnter: c ? Ac : void 0,
21649
+ onMouseLeave: c ? jc : void 0,
21650
21650
  onClick: () => B(!R),
21651
21651
  "aria-haspopup": "menu",
21652
21652
  "aria-expanded": R,
21653
21653
  children: e
21654
21654
  }), R && !o && createPortal(/* @__PURE__ */ jsx("div", {
21655
- ref: Bs,
21656
- onMouseEnter: c ? Gs : void 0,
21657
- onMouseLeave: c ? Ks : void 0,
21655
+ ref: Tc,
21656
+ onMouseEnter: c ? Ac : void 0,
21657
+ onMouseLeave: c ? jc : void 0,
21658
21658
  style: {
21659
21659
  position: "fixed",
21660
- top: Hs?.top ?? 0,
21661
- left: Hs?.left ?? 0,
21662
- visibility: Hs ? "visible" : "hidden",
21660
+ top: Dc?.top ?? 0,
21661
+ left: Dc?.left ?? 0,
21662
+ visibility: Dc ? "visible" : "hidden",
21663
21663
  zIndex: 1e3
21664
21664
  },
21665
21665
  children: t
@@ -21687,6 +21687,25 @@ function Input({ type: e = "text", value: t, defaultValue: n, disabled: r = !1,
21687
21687
  className: cn("bg-transparent outline-none", r && "pointer-events-none", c)
21688
21688
  });
21689
21689
  }
21690
+ function MsIcon({ name: e, size: t = 16, className: n }) {
21691
+ return /* @__PURE__ */ jsx("span", {
21692
+ "aria-hidden": "true",
21693
+ className: cn("inline-block shrink-0 select-none overflow-hidden whitespace-nowrap", n),
21694
+ style: {
21695
+ width: t,
21696
+ height: t,
21697
+ fontSize: t,
21698
+ lineHeight: 1,
21699
+ fontFamily: "'Material Symbols Outlined Variable'",
21700
+ fontStyle: "normal",
21701
+ fontWeight: "normal",
21702
+ letterSpacing: "normal",
21703
+ textTransform: "none",
21704
+ fontVariationSettings: "'wght' 300"
21705
+ },
21706
+ children: e
21707
+ });
21708
+ }
21690
21709
  function Pressable({ as: e, disabled: t = !1, onPress: n, className: r, children: i, ...a }) {
21691
21710
  let o = e || "div", c = useCallback(() => {
21692
21711
  t || n?.();
@@ -21721,7 +21740,7 @@ function getVerticalAlign(e, t, n) {
21721
21740
  return n === "start" ? e.top : n === "end" ? e.bottom - t.height : e.top + e.height / 2 - t.height / 2;
21722
21741
  }
21723
21742
  function Tooltip({ children: e, content: t, position: n = "top", delay: r = 120, className: i }) {
21724
- let a = useRef(null), o = useRef(null), s = useRef(null), [c, u] = useState(!1), [p, g] = useState(null), Rs = () => {
21743
+ let a = useRef(null), o = useRef(null), s = useRef(null), [c, u] = useState(!1), [p, g] = useState(null), Cc = () => {
21725
21744
  s.current &&= (clearTimeout(s.current), null), s.current = window.setTimeout(() => {
21726
21745
  u(!0);
21727
21746
  }, r);
@@ -21740,9 +21759,9 @@ function Tooltip({ children: e, content: t, position: n = "top", delay: r = 120,
21740
21759
  }, []), /* @__PURE__ */ jsxs(Fragment$1, { children: [/* @__PURE__ */ jsx("div", {
21741
21760
  ref: a,
21742
21761
  className: "inline-flex",
21743
- onMouseEnter: Rs,
21762
+ onMouseEnter: Cc,
21744
21763
  onMouseLeave: R,
21745
- onFocus: Rs,
21764
+ onFocus: Cc,
21746
21765
  onBlur: R,
21747
21766
  children: e
21748
21767
  }), c && createPortal(/* @__PURE__ */ jsx("div", {
@@ -22424,6 +22443,125 @@ function OutlookIcon(e) {
22424
22443
  })]
22425
22444
  });
22426
22445
  }
22446
+ function PulseGmailIcon({ pathProps: e, ...t }) {
22447
+ let n = useId(), r = `pulse-gmail-stripe-${n}`, i = `pulse-gmail-arch-${n}`;
22448
+ return /* @__PURE__ */ jsxs(Icon, {
22449
+ viewBox: "0 0 48 48",
22450
+ ...t,
22451
+ children: [
22452
+ /* @__PURE__ */ jsx("path", {
22453
+ d: "M36.5 11H46V38.5C46 40.1567 44.6567 41.5 43 41.5H38C37.6022 41.5 37.2206 41.342 36.9393 41.0607C36.658 40.7794 36.5 40.3978 36.5 40V11Z",
22454
+ fill: `url(#${r})`,
22455
+ ...e
22456
+ }),
22457
+ /* @__PURE__ */ jsx("path", {
22458
+ d: "M11.5 11H2V38.5C2 40.1567 3.34325 41.5 5 41.5H10C10.3978 41.5 10.7794 41.342 11.0607 41.0607C11.342 40.7794 11.5 40.3978 11.5 40V11Z",
22459
+ fill: "#FC413D"
22460
+ }),
22461
+ /* @__PURE__ */ jsx("path", {
22462
+ d: "M9.80655 7.614C7.7983 5.926 4.80205 6.1855 3.11405 8.19375C1.42605 10.2018 1.68555 13.198 3.6938 14.8863L22.7133 30.8735C23.0737 31.1764 23.5294 31.3425 24.0002 31.3425C24.471 31.3425 24.9267 31.1764 25.287 30.8735L44.3065 14.886C46.3145 13.198 46.574 10.2018 44.886 8.1935C43.198 6.1855 40.2018 5.926 38.1938 7.614L24 19.545L9.80655 7.614Z",
22463
+ fill: `url(#${i})`
22464
+ }),
22465
+ /* @__PURE__ */ jsxs("defs", { children: [/* @__PURE__ */ jsxs("linearGradient", {
22466
+ id: r,
22467
+ x1: "41.25",
22468
+ y1: "11",
22469
+ x2: "41.25",
22470
+ y2: "41.5",
22471
+ gradientUnits: "userSpaceOnUse",
22472
+ children: [
22473
+ /* @__PURE__ */ jsx("stop", { stopColor: "#60D673" }),
22474
+ /* @__PURE__ */ jsx("stop", {
22475
+ offset: "0.17",
22476
+ stopColor: "#42C868"
22477
+ }),
22478
+ /* @__PURE__ */ jsx("stop", {
22479
+ offset: "0.39",
22480
+ stopColor: "#0EBC5F"
22481
+ }),
22482
+ /* @__PURE__ */ jsx("stop", {
22483
+ offset: "0.62",
22484
+ stopColor: "#00A9BB"
22485
+ }),
22486
+ /* @__PURE__ */ jsx("stop", {
22487
+ offset: "0.86",
22488
+ stopColor: "#3C90FF"
22489
+ }),
22490
+ /* @__PURE__ */ jsx("stop", {
22491
+ offset: "1",
22492
+ stopColor: "#3186FF"
22493
+ })
22494
+ ]
22495
+ }), /* @__PURE__ */ jsxs("linearGradient", {
22496
+ id: i,
22497
+ x1: "2.00005",
22498
+ y1: "11.5325",
22499
+ x2: "46",
22500
+ y2: "11.5325",
22501
+ gradientUnits: "userSpaceOnUse",
22502
+ children: [
22503
+ /* @__PURE__ */ jsx("stop", {
22504
+ offset: "0.08",
22505
+ stopColor: "#FF63A0"
22506
+ }),
22507
+ /* @__PURE__ */ jsx("stop", {
22508
+ offset: "0.3",
22509
+ stopColor: "#FC413D"
22510
+ }),
22511
+ /* @__PURE__ */ jsx("stop", {
22512
+ offset: "0.5",
22513
+ stopColor: "#FC413D"
22514
+ }),
22515
+ /* @__PURE__ */ jsx("stop", {
22516
+ offset: "0.65",
22517
+ stopColor: "#FC413D"
22518
+ }),
22519
+ /* @__PURE__ */ jsx("stop", {
22520
+ offset: "0.72",
22521
+ stopColor: "#FC5C30"
22522
+ }),
22523
+ /* @__PURE__ */ jsx("stop", {
22524
+ offset: "0.86",
22525
+ stopColor: "#FEB10C"
22526
+ }),
22527
+ /* @__PURE__ */ jsx("stop", {
22528
+ offset: "0.91",
22529
+ stopColor: "#FEC700"
22530
+ }),
22531
+ /* @__PURE__ */ jsx("stop", {
22532
+ offset: "0.96",
22533
+ stopColor: "#FFDB0F"
22534
+ })
22535
+ ]
22536
+ })] })
22537
+ ]
22538
+ });
22539
+ }
22540
+ function PulseSlackIcon({ pathProps: e, ...t }) {
22541
+ return /* @__PURE__ */ jsxs(Icon, {
22542
+ viewBox: "0 0 42 42",
22543
+ ...t,
22544
+ children: [
22545
+ /* @__PURE__ */ jsx("path", {
22546
+ d: "M8.6928 26.0188C8.6928 28.4109 6.7574 30.3443 4.36276 30.3443C1.96811 30.3443 0.0327148 28.4109 0.0327148 26.0188C0.0327148 23.6267 1.96811 21.6933 4.36276 21.6933H8.6928V26.0188ZM10.8578 26.0188C10.8578 23.6267 12.7932 21.6933 15.1879 21.6933C17.5825 21.6933 19.5179 23.6267 19.5179 26.0188V36.8326C19.5179 39.2247 17.5825 41.1581 15.1879 41.1581C12.7932 41.1581 10.8578 39.2247 10.8578 36.8326V26.0188Z",
22547
+ fill: "#E01E5A",
22548
+ ...e
22549
+ }),
22550
+ /* @__PURE__ */ jsx("path", {
22551
+ d: "M15.188 8.65101C12.7933 8.65101 10.8579 6.71764 10.8579 4.3255C10.8579 1.93337 12.7933 0 15.188 0C17.5826 0 19.518 1.93337 19.518 4.3255V8.65101H15.188ZM15.188 10.8465C17.5826 10.8465 19.518 12.7799 19.518 15.172C19.518 17.5642 17.5826 19.4975 15.188 19.4975H4.33004C1.9354 19.4975 0 17.5642 0 15.172C0 12.7799 1.9354 10.8465 4.33004 10.8465H15.188Z",
22552
+ fill: "#36C5F0"
22553
+ }),
22554
+ /* @__PURE__ */ jsx("path", {
22555
+ d: "M32.5409 15.172C32.5409 12.7799 34.4763 10.8465 36.871 10.8465C39.2656 10.8465 41.201 12.7799 41.201 15.172C41.201 17.5642 39.2656 19.4975 36.871 19.4975H32.5409V15.172ZM30.3759 15.172C30.3759 17.5642 28.4405 19.4975 26.0459 19.4975C23.6512 19.4975 21.7158 17.5642 21.7158 15.172V4.3255C21.7158 1.93337 23.6512 0 26.0459 0C28.4405 0 30.3759 1.93337 30.3759 4.3255V15.172Z",
22556
+ fill: "#2EB67D"
22557
+ }),
22558
+ /* @__PURE__ */ jsx("path", {
22559
+ d: "M26.0459 32.5071C28.4405 32.5071 30.3759 34.4404 30.3759 36.8326C30.3759 39.2247 28.4405 41.1581 26.0459 41.1581C23.6512 41.1581 21.7158 39.2247 21.7158 36.8326V32.5071H26.0459ZM26.0459 30.3443C23.6512 30.3443 21.7158 28.4109 21.7158 26.0188C21.7158 23.6267 23.6512 21.6933 26.0459 21.6933H36.9038C39.2984 21.6933 41.2338 23.6267 41.2338 26.0188C41.2338 28.4109 39.2984 30.3443 36.9038 30.3443H26.0459Z",
22560
+ fill: "#ECB22E"
22561
+ })
22562
+ ]
22563
+ });
22564
+ }
22427
22565
  function ReplyIoIcon(e) {
22428
22566
  return /* @__PURE__ */ jsxs(Icon, {
22429
22567
  viewBox: "0 0 18 18",
@@ -22862,6 +23000,30 @@ function ArrowIcon({ direction: e = "down", className: t, pathProps: n, ...r })
22862
23000
  })
22863
23001
  });
22864
23002
  }
23003
+ function BriefcaseOutlineIcon({ pathProps: e, ...t }) {
23004
+ return /* @__PURE__ */ jsxs(Icon, {
23005
+ viewBox: "0 0 24 24",
23006
+ ...t,
23007
+ children: [/* @__PURE__ */ jsx("rect", {
23008
+ x: "2",
23009
+ y: "7",
23010
+ width: "20",
23011
+ height: "14",
23012
+ rx: "2",
23013
+ stroke: "currentColor",
23014
+ strokeWidth: "2",
23015
+ strokeLinecap: "round",
23016
+ strokeLinejoin: "round"
23017
+ }), /* @__PURE__ */ jsx("path", {
23018
+ d: "M16 21V5a2 2 0 0 0-2-2h-4a2 2 0 0 0-2 2v16",
23019
+ stroke: "currentColor",
23020
+ strokeWidth: "2",
23021
+ strokeLinecap: "round",
23022
+ strokeLinejoin: "round",
23023
+ ...e
23024
+ })]
23025
+ });
23026
+ }
22865
23027
  function BuildingIcon({ pathProps: e, ...t }) {
22866
23028
  return /* @__PURE__ */ jsx(Icon, {
22867
23029
  viewBox: "0 0 24 24",
@@ -22914,6 +23076,32 @@ function CalendarIcon({ pathProps: e, ...t }) {
22914
23076
  })
22915
23077
  });
22916
23078
  }
23079
+ function CheckBoldIcon({ pathProps: e, ...t }) {
23080
+ return /* @__PURE__ */ jsx(Icon, {
23081
+ viewBox: "0 0 24 24",
23082
+ ...t,
23083
+ children: /* @__PURE__ */ jsx("path", {
23084
+ d: "M5 12l5 5L20 7",
23085
+ stroke: "currentColor",
23086
+ strokeWidth: "3.5",
23087
+ ...e
23088
+ })
23089
+ });
23090
+ }
23091
+ function CheckOutlineIcon({ pathProps: e, ...t }) {
23092
+ return /* @__PURE__ */ jsx(Icon, {
23093
+ viewBox: "0 0 24 24",
23094
+ ...t,
23095
+ children: /* @__PURE__ */ jsx("path", {
23096
+ d: "M20 6L9 17L4 12",
23097
+ stroke: "currentColor",
23098
+ strokeWidth: "2.5",
23099
+ strokeLinecap: "round",
23100
+ strokeLinejoin: "round",
23101
+ ...e
23102
+ })
23103
+ });
23104
+ }
22917
23105
  function CheckSquareIcon({ pathProps: e, ...t }) {
22918
23106
  return /* @__PURE__ */ jsx(Icon, {
22919
23107
  viewBox: "0 0 24 24",
@@ -22925,6 +23113,20 @@ function CheckSquareIcon({ pathProps: e, ...t }) {
22925
23113
  })
22926
23114
  });
22927
23115
  }
23116
+ function ChevronRightIcon({ pathProps: e, ...t }) {
23117
+ return /* @__PURE__ */ jsx(Icon, {
23118
+ viewBox: "0 0 24 24",
23119
+ ...t,
23120
+ children: /* @__PURE__ */ jsx("path", {
23121
+ d: "M9 6l6 6-6 6",
23122
+ stroke: "currentColor",
23123
+ strokeWidth: "2.5",
23124
+ strokeLinecap: "round",
23125
+ strokeLinejoin: "round",
23126
+ ...e
23127
+ })
23128
+ });
23129
+ }
22928
23130
  function CloseBoldIcon({ pathProps: e, ...t }) {
22929
23131
  return /* @__PURE__ */ jsx(Icon, {
22930
23132
  viewBox: "0 0 16 16",
@@ -22950,6 +23152,20 @@ function CloseIcon({ pathProps: e, ...t }) {
22950
23152
  })
22951
23153
  });
22952
23154
  }
23155
+ function CloseOutlineIcon({ pathProps: e, ...t }) {
23156
+ return /* @__PURE__ */ jsx(Icon, {
23157
+ viewBox: "0 0 24 24",
23158
+ ...t,
23159
+ children: /* @__PURE__ */ jsx("path", {
23160
+ d: "M18 6L6 18M6 6l12 12",
23161
+ stroke: "currentColor",
23162
+ strokeWidth: "2.5",
23163
+ strokeLinecap: "round",
23164
+ strokeLinejoin: "round",
23165
+ ...e
23166
+ })
23167
+ });
23168
+ }
22953
23169
  function CompactDensityIcon({ pathProps: e, ...t }) {
22954
23170
  return /* @__PURE__ */ jsx(Icon, {
22955
23171
  viewBox: "0 0 24 24",
@@ -23005,6 +23221,39 @@ function ExternalLinkIcon({ pathProps: e, ...t }) {
23005
23221
  })
23006
23222
  });
23007
23223
  }
23224
+ function ExternalLinkOutlineIcon({ pathProps: e, ...t }) {
23225
+ return /* @__PURE__ */ jsxs(Icon, {
23226
+ viewBox: "0 0 24 24",
23227
+ ...t,
23228
+ children: [
23229
+ /* @__PURE__ */ jsx("path", {
23230
+ d: "M18 13v6a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2V8a2 2 0 0 1 2-2h6",
23231
+ stroke: "currentColor",
23232
+ strokeWidth: "2",
23233
+ strokeLinecap: "round",
23234
+ strokeLinejoin: "round",
23235
+ ...e
23236
+ }),
23237
+ /* @__PURE__ */ jsx("polyline", {
23238
+ points: "15 3 21 3 21 9",
23239
+ stroke: "currentColor",
23240
+ strokeWidth: "2",
23241
+ strokeLinecap: "round",
23242
+ strokeLinejoin: "round"
23243
+ }),
23244
+ /* @__PURE__ */ jsx("line", {
23245
+ x1: "10",
23246
+ y1: "14",
23247
+ x2: "21",
23248
+ y2: "3",
23249
+ stroke: "currentColor",
23250
+ strokeWidth: "2",
23251
+ strokeLinecap: "round",
23252
+ strokeLinejoin: "round"
23253
+ })
23254
+ ]
23255
+ });
23256
+ }
23008
23257
  function EyeIcon({ pathProps: e, ...t }) {
23009
23258
  return /* @__PURE__ */ jsxs(Icon, {
23010
23259
  viewBox: "0 0 20 20",
@@ -23050,6 +23299,17 @@ function InboxIcon({ pathProps: e, ...t }) {
23050
23299
  })
23051
23300
  });
23052
23301
  }
23302
+ function InfoFillIcon({ pathProps: e, ...t }) {
23303
+ return /* @__PURE__ */ jsx(Icon, {
23304
+ viewBox: "0 0 24 24",
23305
+ ...t,
23306
+ children: /* @__PURE__ */ jsx("path", {
23307
+ d: "M12 2C6.48 2 2 6.48 2 12s4.48 10 10 10 10-4.48 10-10S17.52 2 12 2zm1 15h-2v-6h2v6zm0-8h-2V7h2v2z",
23308
+ fill: "currentColor",
23309
+ ...e
23310
+ })
23311
+ });
23312
+ }
23053
23313
  function LightIcon({ pathProps: e, ...t }) {
23054
23314
  return /* @__PURE__ */ jsx(Icon, {
23055
23315
  viewBox: "0 0 24 24",
@@ -23174,6 +23434,28 @@ function SystemIcon({ pathProps: e, ...t }) {
23174
23434
  }) })
23175
23435
  });
23176
23436
  }
23437
+ function UserOutlineIcon({ pathProps: e, ...t }) {
23438
+ return /* @__PURE__ */ jsxs(Icon, {
23439
+ viewBox: "0 0 24 24",
23440
+ ...t,
23441
+ children: [/* @__PURE__ */ jsx("circle", {
23442
+ cx: "12",
23443
+ cy: "7",
23444
+ r: "4",
23445
+ stroke: "currentColor",
23446
+ strokeWidth: "2",
23447
+ strokeLinecap: "round",
23448
+ strokeLinejoin: "round"
23449
+ }), /* @__PURE__ */ jsx("path", {
23450
+ d: "M20 21v-2a4 4 0 0 0-4-4H8a4 4 0 0 0-4 4v2",
23451
+ stroke: "currentColor",
23452
+ strokeWidth: "2",
23453
+ strokeLinecap: "round",
23454
+ strokeLinejoin: "round",
23455
+ ...e
23456
+ })]
23457
+ });
23458
+ }
23177
23459
  function Badge({ icon: e, label: t, action: n, className: r, ...i }) {
23178
23460
  return /* @__PURE__ */ jsxs("div", {
23179
23461
  className: cn("w-fit", r),
@@ -23312,6 +23594,19 @@ function HelpPanelEngine({ title: e, items: t, footer: n, closeLabel: r = "Close
23312
23594
  ]
23313
23595
  });
23314
23596
  }
23597
+ function ResizeDivider({ isResizing: e = !1, onMouseDown: t, className: n }) {
23598
+ return /* @__PURE__ */ jsx("div", {
23599
+ role: "separator",
23600
+ "aria-orientation": "vertical",
23601
+ "aria-label": "Resize panel",
23602
+ onMouseDown: t,
23603
+ className: cn("max-md:hidden relative z-10 w-px shrink-0 cursor-col-resize transition-colors", e ? "bg-brand-primary" : "bg-neutral-400 hover:bg-brand-primary", n),
23604
+ children: /* @__PURE__ */ jsx("span", {
23605
+ "aria-hidden": "true",
23606
+ className: "inset-y-0 -left-1.5 w-3 absolute"
23607
+ })
23608
+ });
23609
+ }
23315
23610
  const ONBOARDING_DISMISSED_STORAGE_KEY = "onboarding_dismissed";
23316
23611
  function readDismissedFromStorage(e) {
23317
23612
  if (typeof window > "u") return /* @__PURE__ */ new Set();
@@ -23352,13 +23647,13 @@ function OnboardingEngine({ steps: e, context: t, storageKey: n, isEnabled: r =
23352
23647
  e,
23353
23648
  o,
23354
23649
  t
23355
- ]), g = h?.step ?? null, Ls = h?.index ?? null, A = useCallback((e) => {
23650
+ ]), g = h?.step ?? null, Sc = h?.index ?? null, A = useCallback((e) => {
23356
23651
  c((t) => {
23357
23652
  if (t.has(e)) return t;
23358
23653
  let n = new Set(t);
23359
23654
  return n.add(e), n;
23360
23655
  });
23361
- }, []), Rs = useCallback(() => {
23656
+ }, []), Cc = useCallback(() => {
23362
23657
  c((n) => {
23363
23658
  let r = findActiveStep(e, n, t);
23364
23659
  if (r == null || n.has(r.step.id)) return n;
@@ -23371,15 +23666,15 @@ function OnboardingEngine({ steps: e, context: t, storageKey: n, isEnabled: r =
23371
23666
  return /* @__PURE__ */ jsx(Fragment$1, { children: i({
23372
23667
  context: t,
23373
23668
  currentStep: g,
23374
- currentStepIndex: Ls,
23669
+ currentStepIndex: Sc,
23375
23670
  dismissedStepIds: o,
23376
23671
  actions: useMemo(() => ({
23377
- dismissCurrentStep: Rs,
23672
+ dismissCurrentStep: Cc,
23378
23673
  dismissStep: A,
23379
23674
  skipAll: R,
23380
23675
  close: R
23381
23676
  }), [
23382
- Rs,
23677
+ Cc,
23383
23678
  A,
23384
23679
  R
23385
23680
  ])
@@ -23592,7 +23887,7 @@ function useToastTimers(e, t) {
23592
23887
  function Toaster() {
23593
23888
  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);
23594
23889
  useEffect(() => toastStore.subscribe(t), []);
23595
- let Rs = useSyncExternalStore(subscribeNoop$1, getClientSnapshot$1, getServerSnapshot$1), R = useCallback((e) => {
23890
+ let Cc = useSyncExternalStore(subscribeNoop$1, getClientSnapshot$1, getServerSnapshot$1), R = useCallback((e) => {
23596
23891
  e.callbacks?.onOpen?.();
23597
23892
  }, []), B = useCallback((e, t) => {
23598
23893
  t === "manual" ? e.callbacks?.onClose?.() : (t === "timeout" || t === "replaced") && e.callbacks?.onAutoClose?.(), e.callbacks?.onDismiss?.(t);
@@ -23620,17 +23915,17 @@ function Toaster() {
23620
23915
  R,
23621
23916
  B
23622
23917
  ]);
23623
- let zs = useCallback((e) => {
23918
+ let wc = useCallback((e) => {
23624
23919
  r((t) => {
23625
23920
  let n = t.filter((t) => t.id !== e);
23626
23921
  return o.current = n, n;
23627
23922
  }), p(e), toastStore.cleanup(e);
23628
- }, [p]), Bs = useCallback((e) => {
23923
+ }, [p]), Tc = useCallback((e) => {
23629
23924
  a.current.set(e, "manual"), toastStore.remove(e);
23630
23925
  }, []);
23631
- if (!Rs) return null;
23632
- let Vs = groupByPosition(n);
23633
- return createPortal(/* @__PURE__ */ jsx(Fragment$1, { children: Object.entries(Vs).map(([e, t]) => {
23926
+ if (!Cc) return null;
23927
+ let Ec = groupByPosition(n);
23928
+ return createPortal(/* @__PURE__ */ jsx(Fragment$1, { children: Object.entries(Ec).map(([e, t]) => {
23634
23929
  let n = t.filter((e) => e.singleSlot), r = t.filter((e) => !e.singleSlot), i = n.length > 0 ? /* @__PURE__ */ jsx("div", {
23635
23930
  className: cn("isolate inline-grid max-w-[min(100vw,100%)] grid-cols-1 grid-rows-1", SINGLE_SLOT_PLACE[e]),
23636
23931
  children: n.map((e, t) => /* @__PURE__ */ jsx("div", {
@@ -23639,8 +23934,8 @@ function Toaster() {
23639
23934
  children: /* @__PURE__ */ jsx(ToastWrapper, {
23640
23935
  toast: e,
23641
23936
  remainingTime: c.get(e.id) ?? e.duration,
23642
- onExitComplete: zs,
23643
- onClose: Bs,
23937
+ onExitComplete: wc,
23938
+ onClose: Tc,
23644
23939
  onHoverStart: u,
23645
23940
  onHoverEnd: f
23646
23941
  })
@@ -23648,8 +23943,8 @@ function Toaster() {
23648
23943
  }) : null, a = r.map((e) => /* @__PURE__ */ jsx(ToastWrapper, {
23649
23944
  toast: e,
23650
23945
  remainingTime: c.get(e.id) ?? e.duration,
23651
- onExitComplete: zs,
23652
- onClose: Bs,
23946
+ onExitComplete: wc,
23947
+ onClose: Tc,
23653
23948
  onHoverStart: u,
23654
23949
  onHoverEnd: f
23655
23950
  }, e.id));
@@ -23659,6 +23954,20 @@ function Toaster() {
23659
23954
  }, e);
23660
23955
  }) }), document.body);
23661
23956
  }
23957
+ function ToolbarButton({ label: e, icon: t, count: n, variant: r = "tab", selected: i = !1, className: a, ...o }) {
23958
+ return /* @__PURE__ */ jsxs(Button, {
23959
+ ...o,
23960
+ className: cn("gap-1 rounded-md py-1 font-semibold inline-flex shrink-0 items-center border text-[11px] whitespace-nowrap transition-colors", r === "tab" ? "px-1.5" : "px-2", r === "tab" && (i ? "border-brand-primary bg-primary-light-variant-2 text-toolbar-button-active-text" : "border-neutral-400 bg-white-variant-4 text-neutral-700 hover:border-toolbar-button-hover-border hover:text-toolbar-text-strong"), r === "menu" && (i ? "border-brand-primary bg-primary-light-variant-2 text-toolbar-button-active-text" : "border-toolbar-button-menu-border bg-primary-light-variant-2 text-toolbar-button-active-text hover:border-brand-primary"), a),
23961
+ children: [
23962
+ t,
23963
+ /* @__PURE__ */ jsx("span", { children: e }),
23964
+ n !== void 0 && /* @__PURE__ */ jsx("span", {
23965
+ className: cn("h-4 min-w-4 rounded px-1 font-bold flex items-center justify-center text-[10px]", r === "menu" || i ? "bg-primary-subtle text-toolbar-button-active-text" : "bg-toolbar-badge-idle-bg text-neutral-700"),
23966
+ children: n
23967
+ })
23968
+ ]
23969
+ });
23970
+ }
23662
23971
  function AccountInfo({ title: e, value: t }) {
23663
23972
  return /* @__PURE__ */ jsxs("div", {
23664
23973
  className: "flex flex-col",
@@ -23931,7 +24240,7 @@ function BulkActions({ totalItems: e = 0, selectedItems: t = 0, onSelectAll: n,
23931
24240
  }),
23932
24241
  onClick: r.read.off
23933
24242
  }]
23934
- }, Rs = [{
24243
+ }, Cc = [{
23935
24244
  value: "normal",
23936
24245
  tooltip: "Normal density",
23937
24246
  icon: /* @__PURE__ */ jsx(NormalDensityIcon, { size: 20 })
@@ -23975,7 +24284,7 @@ function BulkActions({ totalItems: e = 0, selectedItems: t = 0, onSelectAll: n,
23975
24284
  }),
23976
24285
  /* @__PURE__ */ jsx("div", {
23977
24286
  className: "gap-2 flex items-center",
23978
- children: Rs.map(({ value: e, tooltip: t, icon: n }) => {
24287
+ children: Cc.map(({ value: e, tooltip: t, icon: n }) => {
23979
24288
  let r = f === e;
23980
24289
  return /* @__PURE__ */ jsx(InfoTooltip, {
23981
24290
  content: t,
@@ -24237,15 +24546,15 @@ function IconCountButton({ icon: e, label: t, count: n, variant: r = "primary",
24237
24546
  variant: r,
24238
24547
  orientation: i,
24239
24548
  status: a
24240
- }), A = useRef(null), [Rs, R] = useState(!1), [B, zs] = useState(!1), [Bs, Vs] = useState(l), [Hs, Us] = useState(null), Ws = c ?? Bs, Gs = s && (Rs || B || Ws), Ks = typeof n == "number" && n > 0 && (o || a === "active");
24241
- function qs(e) {
24242
- c === void 0 && Vs(e), u?.(e);
24549
+ }), A = useRef(null), [Cc, R] = useState(!1), [B, wc] = useState(!1), [Tc, Ec] = useState(l), [Dc, Oc] = useState(null), kc = c ?? Tc, Ac = s && (Cc || B || kc), jc = typeof n == "number" && n > 0 && (o || a === "active");
24550
+ function Mc(e) {
24551
+ c === void 0 && Ec(e), u?.(e);
24243
24552
  }
24244
24553
  return useLayoutEffect(() => {
24245
- if (!Gs || !A.current) return;
24554
+ if (!Ac || !A.current) return;
24246
24555
  function e() {
24247
24556
  let e = A.current?.getBoundingClientRect();
24248
- e && Us({
24557
+ e && Oc({
24249
24558
  top: e.top - 8,
24250
24559
  left: e.right - 12
24251
24560
  });
@@ -24253,7 +24562,7 @@ function IconCountButton({ icon: e, label: t, count: n, variant: r = "primary",
24253
24562
  return e(), window.addEventListener("resize", e), window.addEventListener("scroll", e, !0), () => {
24254
24563
  window.removeEventListener("resize", e), window.removeEventListener("scroll", e, !0);
24255
24564
  };
24256
- }, [Gs]), /* @__PURE__ */ jsxs(Button, {
24565
+ }, [Ac]), /* @__PURE__ */ jsxs(Button, {
24257
24566
  ...g,
24258
24567
  className: cn(O.root(), p?.root),
24259
24568
  onMouseEnter: () => R(!0),
@@ -24264,17 +24573,17 @@ function IconCountButton({ icon: e, label: t, count: n, variant: r = "primary",
24264
24573
  ref: A,
24265
24574
  className: cn(O.bubble(), p?.bubble),
24266
24575
  children: renderIcon(e, O.icon())
24267
- }), Gs && Hs && typeof document < "u" && ToggleControlPortal({
24268
- isPressed: Ws,
24576
+ }), Ac && Dc && typeof document < "u" && ToggleControlPortal({
24577
+ isPressed: kc,
24269
24578
  isPortalHovered: B,
24270
- portalPosition: Hs,
24271
- onMouseEnter: () => zs(!0),
24272
- onMouseLeave: () => zs(!1),
24273
- onToggle: () => qs(!Ws)
24579
+ portalPosition: Dc,
24580
+ onMouseEnter: () => wc(!0),
24581
+ onMouseLeave: () => wc(!1),
24582
+ onToggle: () => Mc(!kc)
24274
24583
  })]
24275
24584
  }), /* @__PURE__ */ jsxs("div", {
24276
24585
  className: cn(O.label(), p?.label),
24277
- children: [/* @__PURE__ */ jsx("span", { children: t }), Ks && /* @__PURE__ */ jsxs("span", {
24586
+ children: [/* @__PURE__ */ jsx("span", { children: t }), jc && /* @__PURE__ */ jsxs("span", {
24278
24587
  "aria-label": `${n} items`,
24279
24588
  className: cn(O.count(), p?.count),
24280
24589
  children: [
@@ -24286,6 +24595,54 @@ function IconCountButton({ icon: e, label: t, count: n, variant: r = "primary",
24286
24595
  })]
24287
24596
  });
24288
24597
  }
24598
+ function CustomerGroupHeader({ label: e, count: t, open: n, onToggle: r, allOpen: i = !0, onToggleAll: a, className: o }) {
24599
+ return /* @__PURE__ */ jsxs("div", {
24600
+ className: cn("group/header flex items-center transition-colors hover:bg-group-header-hover-bg", o),
24601
+ children: [/* @__PURE__ */ jsxs("button", {
24602
+ type: "button",
24603
+ "aria-expanded": n,
24604
+ onClick: r,
24605
+ className: "min-w-0 gap-2 py-3 pr-2 pl-5 flex flex-1 cursor-pointer items-center text-left",
24606
+ children: [
24607
+ /* @__PURE__ */ jsx(ChevronRightIcon, {
24608
+ size: 12,
24609
+ className: cn("shrink-0 text-neutral-700 transition-transform group-hover/header:text-group-header-text-strong", n && "rotate-90")
24610
+ }),
24611
+ /* @__PURE__ */ jsx("span", {
24612
+ "aria-hidden": "true",
24613
+ className: "h-5 w-5 font-bold flex shrink-0 items-center justify-center rounded-full bg-group-header-initial-bg text-[10px] text-group-header-initial-text",
24614
+ children: e.charAt(0)
24615
+ }),
24616
+ /* @__PURE__ */ jsx("span", {
24617
+ className: "font-semibold truncate text-[13px] text-group-header-text-strong",
24618
+ children: e
24619
+ }),
24620
+ /* @__PURE__ */ jsx("span", {
24621
+ className: "rounded px-1.5 font-semibold bg-neutral-400 text-[11px] text-neutral-700",
24622
+ children: t
24623
+ })
24624
+ ]
24625
+ }), a && /* @__PURE__ */ jsxs("button", {
24626
+ type: "button",
24627
+ onClick: a,
24628
+ className: "mr-3 gap-1 rounded-md px-1.5 py-1 font-medium inline-flex shrink-0 items-center text-[11px] whitespace-nowrap text-neutral-700 hover:text-group-header-text-strong",
24629
+ children: [/* @__PURE__ */ jsx(MsIcon, {
24630
+ name: i ? "unfold_less" : "unfold_more",
24631
+ size: 13
24632
+ }), /* @__PURE__ */ jsxs("span", {
24633
+ className: "grid text-left",
24634
+ children: [/* @__PURE__ */ jsx("span", {
24635
+ "aria-hidden": "true",
24636
+ className: "invisible col-start-1 row-start-1",
24637
+ children: "Collapse all"
24638
+ }), /* @__PURE__ */ jsx("span", {
24639
+ className: "col-start-1 row-start-1",
24640
+ children: i ? "Collapse all" : "Expand all"
24641
+ })]
24642
+ })]
24643
+ })]
24644
+ });
24645
+ }
24289
24646
  function ActionMenuItem({ icon: e, label: t, className: n, selected: r, ...a }) {
24290
24647
  return /* @__PURE__ */ jsxs(Button, {
24291
24648
  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),
@@ -24335,7 +24692,7 @@ function CalendarPanel({ mode: e, selectedDate: t, selectedRange: n, onDateSelec
24335
24692
  n
24336
24693
  ]);
24337
24694
  let A = useMemo(() => generateCalendarDays(g.year, g.month), [g.year, g.month]);
24338
- function Rs(t) {
24695
+ function Cc(t) {
24339
24696
  let o = t.getMonth(), s = t.getFullYear();
24340
24697
  if ((o !== g.month || s !== g.year) && O({
24341
24698
  year: s,
@@ -24370,7 +24727,7 @@ function CalendarPanel({ mode: e, selectedDate: t, selectedRange: n, onDateSelec
24370
24727
  month: e.month + 1
24371
24728
  });
24372
24729
  }
24373
- let zs = getWeekdays();
24730
+ let wc = getWeekdays();
24374
24731
  return /* @__PURE__ */ jsxs("div", {
24375
24732
  className: "mt-1 rounded-lg p-2 shadow-lg w-fit border border-neutral-400 bg-white",
24376
24733
  children: [
@@ -24407,7 +24764,7 @@ function CalendarPanel({ mode: e, selectedDate: t, selectedRange: n, onDateSelec
24407
24764
  }),
24408
24765
  /* @__PURE__ */ jsx("div", {
24409
24766
  className: "mb-2 grid grid-cols-7",
24410
- children: zs.map((e) => /* @__PURE__ */ jsx("div", {
24767
+ children: wc.map((e) => /* @__PURE__ */ jsx("div", {
24411
24768
  className: "p-0.5 font-bold flex items-center justify-center text-[9px] text-neutral-900",
24412
24769
  children: e
24413
24770
  }, e))
@@ -24415,12 +24772,12 @@ function CalendarPanel({ mode: e, selectedDate: t, selectedRange: n, onDateSelec
24415
24772
  /* @__PURE__ */ jsx("div", {
24416
24773
  className: "grid grid-cols-7",
24417
24774
  children: A.map(({ day: r, date: i, isCurrentMonth: a }) => {
24418
- 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), Fs = u, g = s;
24419
- e === "range" && u && !f && s && !isDateBefore(s, u) ? (Fs = u, g = s) : (Fs = null, g = null);
24420
- let O = e === "range" && (isDateInRange(i, u, f) || isDateInRange(i, Fs, g)), Ls = l || p || h;
24775
+ 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), bc = u, g = s;
24776
+ e === "range" && u && !f && s && !isDateBefore(s, u) ? (bc = u, g = s) : (bc = null, g = null);
24777
+ let O = e === "range" && (isDateInRange(i, u, f) || isDateInRange(i, bc, g)), Sc = l || p || h;
24421
24778
  return /* @__PURE__ */ jsx(Button, {
24422
24779
  type: "button",
24423
- onClick: () => Rs(i),
24780
+ onClick: () => Cc(i),
24424
24781
  onMouseEnter: () => {
24425
24782
  e === "range" && u && !f && !isDateBefore(i, u) && c(i);
24426
24783
  },
@@ -24429,9 +24786,9 @@ function CalendarPanel({ mode: e, selectedDate: t, selectedRange: n, onDateSelec
24429
24786
  },
24430
24787
  className: "p-0.5",
24431
24788
  "aria-label": `Select ${formatDate(i)}`,
24432
- "aria-selected": Ls || void 0,
24789
+ "aria-selected": Sc || void 0,
24433
24790
  children: /* @__PURE__ */ jsx("div", {
24434
- className: cn("rounded flex h-[26px] w-[26px] items-center justify-center text-[9px] transition-colors", Ls && "font-semibold bg-primary-500 text-white-variant-1 hover:bg-primary-500", O && !Ls && "font-normal bg-primary-500/20 text-neutral-900 hover:bg-primary-500/30", o && !Ls && !O && "font-bold border border-primary-500 bg-primary-500/15 hover:bg-primary-500 hover:text-white", !Ls && !O && (a ? "text-neutral-900 hover:bg-neutral-300" : "text-neutral-600 hover:bg-neutral-200")),
24791
+ className: cn("rounded flex h-[26px] w-[26px] items-center justify-center text-[9px] transition-colors", Sc && "font-semibold bg-primary-500 text-white-variant-1 hover:bg-primary-500", O && !Sc && "font-normal bg-primary-500/20 text-neutral-900 hover:bg-primary-500/30", o && !Sc && !O && "font-bold border border-primary-500 bg-primary-500/15 hover:bg-primary-500 hover:text-white", !Sc && !O && (a ? "text-neutral-900 hover:bg-neutral-300" : "text-neutral-600 hover:bg-neutral-200")),
24435
24792
  children: r
24436
24793
  })
24437
24794
  }, `${i.getFullYear()}-${i.getMonth()}-${r}`);
@@ -24499,7 +24856,7 @@ function DatePicker({ mode: e = "single", value: t, defaultValue: n, onChange: r
24499
24856
  function g(t) {
24500
24857
  e === "range" && (u || l(t), r?.(t));
24501
24858
  }
24502
- function Ls() {
24859
+ function Sc() {
24503
24860
  e === "single" ? h(null) : g({
24504
24861
  startDate: null,
24505
24862
  endDate: null
@@ -24510,7 +24867,7 @@ function DatePicker({ mode: e = "single", value: t, defaultValue: n, onChange: r
24510
24867
  displayText: e === "single" ? formatDate(f) : formatDateRange(p.startDate, p.endDate),
24511
24868
  disabled: i,
24512
24869
  className: a,
24513
- onClear: Ls
24870
+ onClear: Sc
24514
24871
  }),
24515
24872
  disabled: i,
24516
24873
  children: /* @__PURE__ */ jsx(CalendarPanel, {
@@ -24724,12 +25081,12 @@ function EventActionsList({ actions: e, className: t }) {
24724
25081
  }) })
24725
25082
  });
24726
25083
  }
24727
- 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: Fs = {}, density: g = "normal", className: O, style: A, isPriority: Rs, isDone: R }) {
25084
+ 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: bc = {}, density: g = "normal", className: O, style: A, isPriority: Cc, isDone: R }) {
24728
25085
  return /* @__PURE__ */ jsx(Card, {
24729
25086
  as: Pressable,
24730
25087
  onPress: u,
24731
25088
  className: cn(eventCardStyles({
24732
- tone: Rs ? "priority" : R ? "done" : "default",
25089
+ tone: Cc ? "priority" : R ? "done" : "default",
24733
25090
  state: l ? "selected" : c ? "read" : "unread",
24734
25091
  density: g
24735
25092
  }), O),
@@ -24771,7 +25128,7 @@ function EventCard({ icon: e, service: t, sender: n, title: r, content: i, times
24771
25128
  /* @__PURE__ */ jsxs(CardFooter, {
24772
25129
  className: "mt-3 gap-1 grid grid-cols-[minmax(0,1fr)_auto] items-center",
24773
25130
  children: [/* @__PURE__ */ jsx(EventStatusesList, { statusBadges: h }), /* @__PURE__ */ jsx(EventActionsList, {
24774
- actions: Fs,
25131
+ actions: bc,
24775
25132
  className: "col-start-2 justify-self-end"
24776
25133
  })]
24777
25134
  })
@@ -24810,7 +25167,7 @@ function EventCard({ icon: e, service: t, sender: n, title: r, content: i, times
24810
25167
  ]
24811
25168
  }),
24812
25169
  /* @__PURE__ */ jsx("div", { className: "flex-1" }),
24813
- /* @__PURE__ */ jsx(EventActionsList, { actions: Fs }),
25170
+ /* @__PURE__ */ jsx(EventActionsList, { actions: bc }),
24814
25171
  /* @__PURE__ */ jsx(InfoTooltip, {
24815
25172
  content: o,
24816
25173
  children: /* @__PURE__ */ jsx("span", {
@@ -25055,11 +25412,11 @@ function EventSummaryFireButton({ active: e, onClick: t }) {
25055
25412
  }) });
25056
25413
  }
25057
25414
  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 }) {
25058
- let { fire: f, insight: p, link: h } = l, Fs = p?.label ?? null;
25415
+ let { fire: f, insight: p, link: h } = l, bc = p?.label ?? null;
25059
25416
  return /* @__PURE__ */ jsxs(Pressable, {
25060
25417
  onPress: c,
25061
25418
  className: cn(eventSummaryCardStyles({
25062
- tone: f.active ? "priority" : insightLabelVisible(Fs) ? "insight" : "default",
25419
+ tone: f.active ? "priority" : insightLabelVisible(bc) ? "insight" : "default",
25063
25420
  state: s ? "selected" : "normal"
25064
25421
  }), EVENT_SUMMARY_CARD_HEIGHT_SIZE.style, u),
25065
25422
  "data-service": t,
@@ -25083,7 +25440,7 @@ function EventSummaryCard({ icon: e, service: t, sender: n, title: r, content: i
25083
25440
  className: "text-xs leading-tight font-semibold tracking-wide flex-1 text-right whitespace-nowrap text-neutral-800",
25084
25441
  children: a
25085
25442
  }),
25086
- insightLabelVisible(Fs) && /* @__PURE__ */ jsx(EventSummaryInsightChip, { label: Fs }),
25443
+ insightLabelVisible(bc) && /* @__PURE__ */ jsx(EventSummaryInsightChip, { label: bc }),
25087
25444
  f.onClick && /* @__PURE__ */ jsx(EventSummaryFireButton, {
25088
25445
  active: f.active,
25089
25446
  onClick: f.onClick
@@ -25355,13 +25712,13 @@ function EventDetailContentMessage({ detail: { groups: e, summary: t, priorityTe
25355
25712
  }, []), f = u.length, p = new Map(c.map((e) => {
25356
25713
  let t = e.insightBadgeId ?? e.id, n = u.indexOf(t);
25357
25714
  return [e.id, f - n];
25358
- })), Fs = /* @__PURE__ */ new Set(), g = new Set(c.reduce((e, t) => {
25715
+ })), bc = /* @__PURE__ */ new Set(), g = new Set(c.reduce((e, t) => {
25359
25716
  let n = t.insightBadgeId ?? t.id;
25360
- return Fs.has(n) || (Fs.add(n), e.push(t.id)), e;
25361
- }, [])), O = useRef(null), A = useRef(null), Rs = useRef(!1);
25717
+ return bc.has(n) || (bc.add(n), e.push(t.id)), e;
25718
+ }, [])), O = useRef(null), A = useRef(null), Cc = useRef(!1);
25362
25719
  useEffect(() => {
25363
- if (e.length === 0 || Rs.current) return;
25364
- Rs.current = !0;
25720
+ if (e.length === 0 || Cc.current) return;
25721
+ Cc.current = !0;
25365
25722
  let t = [...e].reverse().find((e) => e.isPriority), n = [...e].reverse().find((e) => !e.isPriority && e.isInsight), r = t ?? n;
25366
25723
  if (r && O.current) {
25367
25724
  let e = O.current.querySelector(`[data-group-id="${r.id}"]`);
@@ -25479,7 +25836,7 @@ function EventDetailContentTicketDetails({ issue: e, notification: t, project: n
25479
25836
  ]
25480
25837
  })] });
25481
25838
  }
25482
- function EventDetailContentTicket({ detail: { summary: e, body: t, priorityText: n, followUpTitle: r, followUpSubtitle: i, issue: a, notification: o, project: s, task: c, dueDate: l, startDate: u, assignees: f, reporter: p, team: h, location: Fs, related: g }, className: O }) {
25839
+ function EventDetailContentTicket({ detail: { summary: e, body: t, priorityText: n, followUpTitle: r, followUpSubtitle: i, issue: a, notification: o, project: s, task: c, dueDate: l, startDate: u, assignees: f, reporter: p, team: h, location: bc, related: g }, className: O }) {
25483
25840
  return /* @__PURE__ */ jsxs(EventDetailContentHeader, {
25484
25841
  summary: e,
25485
25842
  priorityText: n,
@@ -25497,7 +25854,7 @@ function EventDetailContentTicket({ detail: { summary: e, body: t, priorityText:
25497
25854
  assignees: f,
25498
25855
  reporter: p,
25499
25856
  team: h,
25500
- location: Fs,
25857
+ location: bc,
25501
25858
  related: g
25502
25859
  }),
25503
25860
  /* @__PURE__ */ jsx("h2", {
@@ -26293,10 +26650,10 @@ function OnboardingCard({ stepLabel: e, title: t, description: n, titleAccessory
26293
26650
  children: [i, a]
26294
26651
  })
26295
26652
  ]
26296
- }), Fs = wrapArrow(/* @__PURE__ */ jsx(OnboardingCardArrow, {
26653
+ }), bc = wrapArrow(/* @__PURE__ */ jsx(OnboardingCardArrow, {
26297
26654
  layout: o,
26298
26655
  placement: s
26299
- }), c, l), g = s === "before" ? /* @__PURE__ */ jsxs(Fragment$1, { children: [Fs, h] }) : /* @__PURE__ */ jsxs(Fragment$1, { children: [h, Fs] });
26656
+ }), c, l), g = s === "before" ? /* @__PURE__ */ jsxs(Fragment$1, { children: [bc, h] }) : /* @__PURE__ */ jsxs(Fragment$1, { children: [h, bc] });
26300
26657
  return o === "horizontal" ? /* @__PURE__ */ jsx("div", {
26301
26658
  className: cn("flex items-center", u),
26302
26659
  children: g
@@ -26539,6 +26896,171 @@ function PulseFilterChipSkeleton({ labelWidthClassName: e = "w-16", className: t
26539
26896
  children: [/* @__PURE__ */ jsx("div", { className: "size-3 shrink-0 rounded-full bg-neutral-300-variant-3" }), /* @__PURE__ */ jsx(Skeleton, { className: cn("h-3", e) })]
26540
26897
  });
26541
26898
  }
26899
+ var SEVERITY = {
26900
+ fire: {
26901
+ icon: FireFillIcon,
26902
+ text: "text-tertiary-500-variant-2"
26903
+ },
26904
+ spark: {
26905
+ icon: InsightFillIcon,
26906
+ text: "text-brand-primary"
26907
+ },
26908
+ watching: {
26909
+ icon: EyeFillIcon,
26910
+ text: "text-neutral-700-variant-1"
26911
+ }
26912
+ }, MOVE = {
26913
+ respond: {
26914
+ label: "Respond",
26915
+ style: "text-pulse-card-tag-respond-text border-pulse-card-tag-respond-border"
26916
+ },
26917
+ decide: {
26918
+ label: "Decide",
26919
+ style: "text-pulse-card-tag-decide-text border-pulse-card-tag-decide-border"
26920
+ },
26921
+ observe: {
26922
+ label: "Observe",
26923
+ style: "border-neutral-400 text-neutral-700"
26924
+ }
26925
+ };
26926
+ function PulseSignalStatus({ timeText: e, severity: t, slaLabel: n, move: r, keepSize: i = !1, className: a }) {
26927
+ let { icon: o, text: s } = SEVERITY[t];
26928
+ return /* @__PURE__ */ jsxs("div", {
26929
+ className: cn("gap-1.5 flex items-center", a),
26930
+ children: [
26931
+ e && /* @__PURE__ */ jsx("span", {
26932
+ className: cn("font-bold text-[13px]", i && "shrink-0", s),
26933
+ children: e
26934
+ }),
26935
+ /* @__PURE__ */ jsxs("span", {
26936
+ className: cn("gap-1 font-medium inline-flex items-center text-[11px] text-neutral-700", i && "shrink-0"),
26937
+ children: [/* @__PURE__ */ jsx(o, {
26938
+ size: 14,
26939
+ className: s
26940
+ }), n]
26941
+ }),
26942
+ r && /* @__PURE__ */ jsx("span", {
26943
+ className: cn("h-4 rounded px-1.5 font-semibold inline-flex items-center border text-[10px]", i && "shrink-0", MOVE[r].style),
26944
+ children: MOVE[r].label
26945
+ })
26946
+ ]
26947
+ });
26948
+ }
26949
+ var pulseSignalCardStyles = tv({
26950
+ base: "min-h-24 p-4 relative h-full w-full rounded-[4px] border bg-white-variant-5 text-left transition-colors outline-none focus-visible:ring-2 focus-visible:ring-brand-primary",
26951
+ variants: {
26952
+ tone: {
26953
+ response: "",
26954
+ review: "",
26955
+ spark: ""
26956
+ },
26957
+ selected: {
26958
+ true: "",
26959
+ false: "border-pulse-card-border"
26960
+ }
26961
+ },
26962
+ compoundVariants: [
26963
+ {
26964
+ tone: "response",
26965
+ selected: !0,
26966
+ class: "border-tertiary-500-variant-2"
26967
+ },
26968
+ {
26969
+ tone: "response",
26970
+ selected: !1,
26971
+ class: "hover:border-tertiary-500-variant-2 hover:bg-tertiary-500-variant-4"
26972
+ },
26973
+ {
26974
+ tone: "review",
26975
+ selected: !0,
26976
+ class: "border-amber-400"
26977
+ },
26978
+ {
26979
+ tone: "review",
26980
+ selected: !1,
26981
+ class: "hover:border-amber-400 hover:bg-pulse-card-review-hover-bg"
26982
+ },
26983
+ {
26984
+ tone: "spark",
26985
+ selected: !0,
26986
+ class: "border-brand-primary"
26987
+ },
26988
+ {
26989
+ tone: "spark",
26990
+ selected: !1,
26991
+ class: "hover:border-brand-primary hover:bg-pulse-card-spark-hover-bg"
26992
+ }
26993
+ ]
26994
+ });
26995
+ function PulseSignalCard({ timeText: e, severity: t, slaLabel: n, move: r, subject: i, askAuthor: a, askText: o, nextLabel: s, nextText: c, owner: l, sources: u, tone: f, selected: p = !1, onClick: h, onOpenThread: bc, className: g }) {
26996
+ return /* @__PURE__ */ jsxs(Pressable, {
26997
+ onPress: h,
26998
+ className: cn(pulseSignalCardStyles({
26999
+ tone: f,
27000
+ selected: p
27001
+ }), g),
27002
+ children: [
27003
+ /* @__PURE__ */ jsxs("span", {
27004
+ className: "right-3 gap-1.5 absolute top-[10px] flex items-center",
27005
+ children: [/* @__PURE__ */ jsx("span", {
27006
+ className: "gap-1 flex items-center",
27007
+ children: u
27008
+ }), bc && /* @__PURE__ */ jsx(InfoTooltip, {
27009
+ content: "Open thread",
27010
+ position: "top",
27011
+ children: /* @__PURE__ */ jsx("button", {
27012
+ type: "button",
27013
+ "aria-label": "Open thread",
27014
+ onClick: (e) => {
27015
+ e.stopPropagation(), bc();
27016
+ },
27017
+ onKeyDown: (e) => e.stopPropagation(),
27018
+ className: "h-6 w-6 rounded-md flex items-center justify-center text-neutral-700 transition-colors hover:bg-pulse-card-action-hover-bg hover:text-pulse-card-action-hover-text",
27019
+ children: /* @__PURE__ */ jsx(ExternalLinkOutlineIcon, { size: 12 })
27020
+ })
27021
+ })]
27022
+ }),
27023
+ /* @__PURE__ */ jsx(PulseSignalStatus, {
27024
+ className: "mb-1 pr-10",
27025
+ timeText: e,
27026
+ severity: t,
27027
+ slaLabel: n,
27028
+ move: r
27029
+ }),
27030
+ /* @__PURE__ */ jsx("p", {
27031
+ className: "mb-1 pr-10 leading-snug font-semibold line-clamp-1 text-[13px] text-neutral-900",
27032
+ children: i
27033
+ }),
27034
+ o && /* @__PURE__ */ jsxs("p", {
27035
+ className: "pr-10 leading-snug line-clamp-2 text-[12px] text-pulse-card-text",
27036
+ children: [
27037
+ /* @__PURE__ */ jsxs("span", {
27038
+ className: "font-semibold",
27039
+ children: [a, ":"]
27040
+ }),
27041
+ " “",
27042
+ o,
27043
+ "”"
27044
+ ]
27045
+ }),
27046
+ c && /* @__PURE__ */ jsxs("p", {
27047
+ className: "mt-1.5 pr-10 leading-snug text-[12px] text-pulse-card-text",
27048
+ children: [
27049
+ /* @__PURE__ */ jsx("span", {
27050
+ className: "font-semibold",
27051
+ children: s
27052
+ }),
27053
+ " ",
27054
+ c
27055
+ ]
27056
+ }),
27057
+ /* @__PURE__ */ jsx("p", {
27058
+ className: "mt-1 pr-10 line-clamp-1 text-[11px] text-neutral-700",
27059
+ children: l ? `Likely: ${l}` : "Responsibility unclear"
27060
+ })
27061
+ ]
27062
+ });
27063
+ }
26542
27064
  function SearchInput({ value: e, defaultValue: t, placeholder: n = "Search...", onChange: r, onKeyDown: i, onClear: a, disabled: o = !1, className: s }) {
26543
27065
  let [c, l] = useState(t ?? ""), u = typeof e == "string", f = u ? e : c, p = f.length > 0;
26544
27066
  function h(e) {
@@ -26848,14 +27370,14 @@ function SourceIcons({ sourceTypes: e, sourceLink: t, onOpenSource: n, sourceToo
26848
27370
  })]
26849
27371
  });
26850
27372
  }
26851
- function SignalCard({ title: e, clientName: t, requesterName: n, explanation: r, severity: i, status: a, slaLabel: o, slaStatusLabel: s, sourceTypes: c, sourceLink: l, onOpenSource: u, sourceTooltip: f, patternContext: p, variant: h = "home", selected: Fs = !1, onClick: g, className: O }) {
27373
+ function SignalCard({ title: e, clientName: t, requesterName: n, explanation: r, severity: i, status: a, slaLabel: o, slaStatusLabel: s, sourceTypes: c, sourceLink: l, onOpenSource: u, sourceTooltip: f, patternContext: p, variant: h = "home", selected: bc = !1, onClick: g, className: O }) {
26852
27374
  let A = SEVERITY_CONFIG$1[i];
26853
27375
  return /* @__PURE__ */ jsxs(Pressable, {
26854
27376
  onPress: g,
26855
27377
  className: cn(signalCardStyles({
26856
27378
  layout: h,
26857
27379
  status: a,
26858
- selected: Fs
27380
+ selected: bc
26859
27381
  }), O),
26860
27382
  children: [
26861
27383
  /* @__PURE__ */ jsx(SourceIcons, {
@@ -26962,7 +27484,7 @@ function SignalClusterCardSkeleton({ className: e }) {
26962
27484
  ]
26963
27485
  });
26964
27486
  }
26965
- var barStyles = tv({
27487
+ var barStyles$1 = tv({
26966
27488
  base: "h-full rounded-full",
26967
27489
  variants: { status: {
26968
27490
  met: "bg-green-400",
@@ -26971,7 +27493,7 @@ var barStyles = tv({
26971
27493
  overdue: "bg-amber-400",
26972
27494
  way_overdue: "bg-red-500"
26973
27495
  } }
26974
- }), badgeStyles = tv({
27496
+ }), badgeStyles$1 = tv({
26975
27497
  base: "rounded-full px-2 py-0.5 text-[10px] font-semibold",
26976
27498
  variants: { status: {
26977
27499
  met: "bg-green-50 text-green-700",
@@ -26993,14 +27515,14 @@ function SlaProgressBar({ policyLabel: e, statusLabel: t, status: n, actualLabel
26993
27515
  className: "text-[10px] font-bold tracking-widest text-neutral-900 uppercase",
26994
27516
  children: e
26995
27517
  }), /* @__PURE__ */ jsx("span", {
26996
- className: badgeStyles({ status: n }),
27518
+ className: badgeStyles$1({ status: n }),
26997
27519
  children: t
26998
27520
  })]
26999
27521
  }),
27000
27522
  /* @__PURE__ */ jsx("div", {
27001
27523
  className: "h-1.5 overflow-hidden rounded-full bg-neutral-200",
27002
27524
  children: /* @__PURE__ */ jsx("div", {
27003
- className: barStyles({ status: n }),
27525
+ className: barStyles$1({ status: n }),
27004
27526
  style: { width: `${c}%` }
27005
27527
  })
27006
27528
  }),
@@ -27164,8 +27686,8 @@ function GuardrailTooltip({ text: e }) {
27164
27686
  })
27165
27687
  });
27166
27688
  }
27167
- function SignalDetailPanel({ title: e, severity: t, slaDurationLabel: n, slaStatusLabel: r, statusLabel: i, statusTone: a, sourceType: o, sourceLink: s, onOpenSource: c, sourceTooltip: l, clientCompany: u, contactName: f, teamCompanyName: p, recipientLabel: h, sla: g, claim: O, sameThreadGuardrail: A, evidenceItems: Rs, nextStep: R, actionRationale: B, rankingRationale: zs, attentionRationale: Bs, dismissOptions: Vs, onClose: Hs, onResolve: Us, onDismiss: Ws, className: Gs, ...Ks }) {
27168
- let qs = SEVERITY_CONFIG[t], [Js, Ys] = useState(!1), [Xs, Zs] = useState(null), [Qs, V] = useState(!1), [ec, tc] = useState(!1), nc = () => {
27689
+ function SignalDetailPanel({ title: e, severity: t, slaDurationLabel: n, slaStatusLabel: r, statusLabel: i, statusTone: a, sourceType: o, sourceLink: s, onOpenSource: c, sourceTooltip: l, clientCompany: u, contactName: f, teamCompanyName: p, recipientLabel: h, sla: g, claim: O, sameThreadGuardrail: A, evidenceItems: Cc, nextStep: R, actionRationale: B, rankingRationale: wc, attentionRationale: Tc, dismissOptions: Ec, onClose: Dc, onResolve: Oc, onDismiss: kc, className: Ac, ...jc }) {
27690
+ let Mc = SEVERITY_CONFIG[t], [Nc, Pc] = useState(!1), [Fc, Ic] = useState(null), [Lc, V] = useState(!1), [zc, Bc] = useState(!1), Vc = () => {
27169
27691
  let t = [r, n].filter(Boolean).join(" · "), i = [
27170
27692
  e,
27171
27693
  "",
@@ -27175,12 +27697,12 @@ function SignalDetailPanel({ title: e, severity: t, slaDurationLabel: n, slaStat
27175
27697
  ...t ? ["", t] : []
27176
27698
  ];
27177
27699
  navigator.clipboard.writeText(i.join("\n")).catch(() => {}), V(!0), setTimeout(() => V(!1), 2e3);
27178
- }, rc = () => {
27179
- Ws?.(Xs ?? void 0), Ys(!1), Zs(null);
27700
+ }, Hc = () => {
27701
+ kc?.(Fc ?? void 0), Pc(!1), Ic(null);
27180
27702
  };
27181
27703
  return /* @__PURE__ */ jsxs("div", {
27182
- className: cn("flex h-full flex-col overflow-y-auto bg-white-variant-8", STATUS_BADGE_STYLES[a].accentBar, Gs),
27183
- ...Ks,
27704
+ className: cn("flex h-full flex-col overflow-y-auto bg-white-variant-8", STATUS_BADGE_STYLES[a].accentBar, Ac),
27705
+ ...jc,
27184
27706
  children: [/* @__PURE__ */ jsxs("div", {
27185
27707
  className: "sticky top-0 z-20 shrink-0 border-b border-neutral-200-variant-1 bg-white-variant-8 px-4 pt-5 pb-4",
27186
27708
  children: [/* @__PURE__ */ jsxs("div", {
@@ -27193,12 +27715,12 @@ function SignalDetailPanel({ title: e, severity: t, slaDurationLabel: n, slaStat
27193
27715
  children: e
27194
27716
  }),
27195
27717
  n && /* @__PURE__ */ jsx("span", {
27196
- className: cn("text-[13px] font-bold shrink-0", qs.text),
27718
+ className: cn("text-[13px] font-bold shrink-0", Mc.text),
27197
27719
  children: n
27198
27720
  }),
27199
27721
  r && /* @__PURE__ */ jsxs("span", {
27200
27722
  className: "inline-flex shrink-0 items-center gap-1 text-[10px] font-medium text-neutral-500",
27201
- children: [qs.icon && /* @__PURE__ */ jsx(qs.icon, {
27723
+ children: [Mc.icon && /* @__PURE__ */ jsx(Mc.icon, {
27202
27724
  size: 11,
27203
27725
  className: "text-neutral-500"
27204
27726
  }), r]
@@ -27208,9 +27730,9 @@ function SignalDetailPanel({ title: e, severity: t, slaDurationLabel: n, slaStat
27208
27730
  children: [/* @__PURE__ */ jsx("span", { className: cn("h-1.5 w-1.5 shrink-0 rounded-full", STATUS_BADGE_STYLES[a].dot) }), i]
27209
27731
  })
27210
27732
  ]
27211
- }), Hs && /* @__PURE__ */ jsx(Button, {
27733
+ }), Dc && /* @__PURE__ */ jsx(Button, {
27212
27734
  type: "button",
27213
- onClick: Hs,
27735
+ onClick: Dc,
27214
27736
  "aria-label": "Close",
27215
27737
  className: "h-7 w-7 shrink-0 rounded-lg hover:bg-neutral-100",
27216
27738
  children: /* @__PURE__ */ jsx("svg", {
@@ -27306,28 +27828,28 @@ function SignalDetailPanel({ title: e, severity: t, slaDurationLabel: n, slaStat
27306
27828
  children: B
27307
27829
  })]
27308
27830
  }),
27309
- zs ? /* @__PURE__ */ jsxs("div", {
27831
+ wc ? /* @__PURE__ */ jsxs("div", {
27310
27832
  className: "rounded-xl border border-neutral-200-variant-1 bg-neutral-50 px-4 py-3.5",
27311
27833
  children: [/* @__PURE__ */ jsx("p", {
27312
27834
  className: "mb-2 text-[10px] font-bold tracking-widest text-neutral-900 uppercase",
27313
27835
  children: "Why ranked first"
27314
27836
  }), /* @__PURE__ */ jsx("p", {
27315
27837
  className: "text-sm text-neutral-800",
27316
- children: zs
27838
+ children: wc
27317
27839
  })]
27318
- }) : Bs ? /* @__PURE__ */ jsxs("div", {
27840
+ }) : Tc ? /* @__PURE__ */ jsxs("div", {
27319
27841
  className: "rounded-xl border border-neutral-200-variant-1 bg-neutral-50 px-4 py-3.5",
27320
27842
  children: [/* @__PURE__ */ jsx("p", {
27321
27843
  className: "mb-2 text-[10px] font-bold tracking-widest text-neutral-900 uppercase",
27322
27844
  children: "Why this needs attention"
27323
27845
  }), /* @__PURE__ */ jsx("p", {
27324
27846
  className: "text-sm text-neutral-800",
27325
- children: Bs
27847
+ children: Tc
27326
27848
  })]
27327
27849
  }) : null,
27328
27850
  /* @__PURE__ */ jsx(SectionCard, {
27329
27851
  title: "What do you want to do?",
27330
- children: Js ? /* @__PURE__ */ jsxs("div", {
27852
+ children: Nc ? /* @__PURE__ */ jsxs("div", {
27331
27853
  className: "flex flex-col gap-2",
27332
27854
  children: [
27333
27855
  /* @__PURE__ */ jsx("p", {
@@ -27336,10 +27858,10 @@ function SignalDetailPanel({ title: e, severity: t, slaDurationLabel: n, slaStat
27336
27858
  }),
27337
27859
  /* @__PURE__ */ jsx("div", {
27338
27860
  className: "flex flex-wrap gap-1.5",
27339
- children: Vs.map((e) => /* @__PURE__ */ jsx(Button, {
27861
+ children: Ec.map((e) => /* @__PURE__ */ jsx(Button, {
27340
27862
  type: "button",
27341
- onClick: () => Zs((t) => t === e.id ? null : e.id),
27342
- className: Xs === e.id ? "rounded-full bg-neutral-800 px-2.5 py-1 text-[11px] font-medium text-white" : "rounded-full border border-neutral-300 bg-white px-2.5 py-1 text-[11px] font-medium text-neutral-700 hover:border-neutral-500",
27863
+ onClick: () => Ic((t) => t === e.id ? null : e.id),
27864
+ className: Fc === e.id ? "rounded-full bg-neutral-800 px-2.5 py-1 text-[11px] font-medium text-white" : "rounded-full border border-neutral-300 bg-white px-2.5 py-1 text-[11px] font-medium text-neutral-700 hover:border-neutral-500",
27343
27865
  children: e.label
27344
27866
  }, e.id))
27345
27867
  }),
@@ -27348,21 +27870,21 @@ function SignalDetailPanel({ title: e, severity: t, slaDurationLabel: n, slaStat
27348
27870
  children: [
27349
27871
  /* @__PURE__ */ jsx(Button, {
27350
27872
  type: "button",
27351
- onClick: rc,
27873
+ onClick: Hc,
27352
27874
  className: "rounded-lg bg-neutral-800 px-3 py-1.5 text-xs font-semibold text-white",
27353
27875
  children: "Confirm"
27354
27876
  }),
27355
27877
  /* @__PURE__ */ jsx(Button, {
27356
27878
  type: "button",
27357
27879
  onClick: () => {
27358
- Ys(!1), Zs(null);
27880
+ Pc(!1), Ic(null);
27359
27881
  },
27360
27882
  className: "text-xs font-medium text-neutral-700-variant-1 hover:underline",
27361
27883
  children: "Cancel"
27362
27884
  }),
27363
27885
  /* @__PURE__ */ jsx(Button, {
27364
27886
  type: "button",
27365
- onClick: Us,
27887
+ onClick: Oc,
27366
27888
  className: "ml-auto text-xs font-medium text-primary-500 hover:underline",
27367
27889
  children: "Mark handled instead"
27368
27890
  })
@@ -27390,21 +27912,21 @@ function SignalDetailPanel({ title: e, severity: t, slaDurationLabel: n, slaStat
27390
27912
  })(),
27391
27913
  /* @__PURE__ */ jsxs(Button, {
27392
27914
  type: "button",
27393
- onClick: Us,
27915
+ onClick: Oc,
27394
27916
  className: "gap-1.5 rounded-lg border border-neutral-300 bg-neutral-100 px-3 py-1.5 text-xs font-semibold text-neutral-700 transition-colors hover:bg-neutral-200",
27395
27917
  children: [/* @__PURE__ */ jsx(CheckActionIcon, {}), "Mark handled"]
27396
27918
  }),
27397
27919
  /* @__PURE__ */ jsxs(Button, {
27398
27920
  type: "button",
27399
- onClick: () => Ys(!0),
27921
+ onClick: () => Pc(!0),
27400
27922
  className: "gap-1.5 rounded-lg border border-neutral-300 bg-neutral-100 px-3 py-1.5 text-xs font-semibold text-neutral-700 transition-colors hover:bg-neutral-200",
27401
27923
  children: [/* @__PURE__ */ jsx(DismissActionIcon, {}), "Mark not useful"]
27402
27924
  }),
27403
27925
  /* @__PURE__ */ jsxs(Button, {
27404
27926
  type: "button",
27405
- onClick: nc,
27406
- className: Qs ? "gap-1.5 rounded-lg border border-green-400 bg-green-50 px-3 py-1.5 text-xs font-semibold text-green-800 transition-colors" : "gap-1.5 rounded-lg border border-neutral-300 bg-neutral-100 px-3 py-1.5 text-xs font-semibold text-neutral-700 transition-colors hover:bg-neutral-200",
27407
- children: [jsx(Qs ? CheckActionIcon : CopyActionIcon, {}), Qs ? "Copied" : "Copy evidence"]
27927
+ onClick: Vc,
27928
+ className: Lc ? "gap-1.5 rounded-lg border border-green-400 bg-green-50 px-3 py-1.5 text-xs font-semibold text-green-800 transition-colors" : "gap-1.5 rounded-lg border border-neutral-300 bg-neutral-100 px-3 py-1.5 text-xs font-semibold text-neutral-700 transition-colors hover:bg-neutral-200",
27929
+ children: [jsx(Lc ? CheckActionIcon : CopyActionIcon, {}), Lc ? "Copied" : "Copy evidence"]
27408
27930
  })
27409
27931
  ]
27410
27932
  })
@@ -27413,20 +27935,20 @@ function SignalDetailPanel({ title: e, severity: t, slaDurationLabel: n, slaStat
27413
27935
  className: "rounded-xl border border-neutral-200-variant-1 bg-white-variant-8 px-4 py-3.5",
27414
27936
  children: [/* @__PURE__ */ jsxs(Button, {
27415
27937
  type: "button",
27416
- onClick: () => tc((e) => !e),
27938
+ onClick: () => Bc((e) => !e),
27417
27939
  className: "w-full justify-between text-left",
27418
- "aria-expanded": ec,
27940
+ "aria-expanded": zc,
27419
27941
  children: [/* @__PURE__ */ jsx("span", {
27420
27942
  className: "text-[10px] font-bold tracking-widest text-neutral-900 uppercase",
27421
27943
  children: "Evidence analysis"
27422
27944
  }), /* @__PURE__ */ jsxs("span", {
27423
27945
  className: "inline-flex items-center gap-1 text-xs font-medium text-neutral-700-variant-1",
27424
- children: [ec ? "Hide proof" : "Show proof", /* @__PURE__ */ jsx(ChevronIcon, { expanded: ec })]
27946
+ children: [zc ? "Hide proof" : "Show proof", /* @__PURE__ */ jsx(ChevronIcon, { expanded: zc })]
27425
27947
  })]
27426
- }), ec && /* @__PURE__ */ jsx("div", {
27948
+ }), zc && /* @__PURE__ */ jsx("div", {
27427
27949
  className: "mt-3 border-t border-neutral-200-variant-1 pt-3",
27428
27950
  children: /* @__PURE__ */ jsx(EvidenceTimeline, {
27429
- items: Rs,
27951
+ items: Cc,
27430
27952
  canExpandThread: !0,
27431
27953
  tone: a,
27432
27954
  threadTitle: e,
@@ -27520,6 +28042,421 @@ function SignalDetailPanelSkeleton({ className: e }) {
27520
28042
  })]
27521
28043
  });
27522
28044
  }
28045
+ function SignalSummaryActionButton({ icon: e, label: t, className: n, ...r }) {
28046
+ return /* @__PURE__ */ jsxs(Button, {
28047
+ type: "button",
28048
+ ...r,
28049
+ className: cn("gap-1.5 rounded-lg px-3 py-1.5 text-xs font-semibold inline-flex items-center border-[1.5px] border-signal-summary-action-border bg-transparent text-neutral-700-variant-1 transition-colors hover:bg-signal-summary-action-hover-bg", n),
28050
+ children: [e, t]
28051
+ });
28052
+ }
28053
+ function SignalSummaryActionsSection({ title: e, children: t, className: n }) {
28054
+ return /* @__PURE__ */ jsxs("section", {
28055
+ className: cn("px-4 py-4", n),
28056
+ children: [/* @__PURE__ */ jsx("p", {
28057
+ className: "mb-3 font-bold tracking-widest text-[10px] text-neutral-900 uppercase",
28058
+ children: e
28059
+ }), t]
28060
+ });
28061
+ }
28062
+ function CursorTooltip({ content: e, children: t, position: n = "top-right", multiline: r = !1, className: i }) {
28063
+ let [a, o] = useState(null), s = (e) => o({
28064
+ x: e.clientX,
28065
+ y: e.clientY
28066
+ });
28067
+ return /* @__PURE__ */ jsxs(Fragment$1, { children: [/* @__PURE__ */ jsx("span", {
28068
+ onMouseEnter: s,
28069
+ onMouseMove: s,
28070
+ onMouseLeave: () => o(null),
28071
+ className: cn("text-sm block truncate", i),
28072
+ children: t
28073
+ }), a && createPortal(/* @__PURE__ */ jsx("div", {
28074
+ className: "pointer-events-none fixed z-[99999999]",
28075
+ style: {
28076
+ top: a.y - 14,
28077
+ left: a.x,
28078
+ transform: n === "top" ? "translate(-50%, calc(-100% - 4px))" : "translate(0, calc(-100% - 4px))"
28079
+ },
28080
+ children: /* @__PURE__ */ jsx("div", {
28081
+ className: cn("rounded px-3 py-1.5 font-medium shadow-lg bg-cursor-tooltip-bg text-white-variant-1", r ? "text-[11px]/snug max-w-[280px] whitespace-normal" : "text-xs whitespace-nowrap"),
28082
+ children: e
28083
+ })
28084
+ }), document.body)] });
28085
+ }
28086
+ function SignalSummaryClaimSection({ title: e, claim: t, guardrail: n, className: r }) {
28087
+ return /* @__PURE__ */ jsxs("section", {
28088
+ className: cn("px-4 py-4", r),
28089
+ children: [/* @__PURE__ */ jsxs("div", {
28090
+ className: "mb-2 gap-1.5 flex items-center",
28091
+ children: [/* @__PURE__ */ jsx("p", {
28092
+ className: "font-bold tracking-widest text-[10px] text-neutral-900 uppercase",
28093
+ children: e
28094
+ }), n && /* @__PURE__ */ jsx(CursorTooltip, {
28095
+ content: n,
28096
+ position: "top",
28097
+ multiline: !0,
28098
+ children: /* @__PURE__ */ jsx("span", {
28099
+ className: "flex text-neutral-600-variant-7 transition-colors hover:text-signal-summary-guardrail-hover",
28100
+ children: /* @__PURE__ */ jsx(InfoFillIcon, { size: 13 })
28101
+ })
28102
+ })]
28103
+ }), /* @__PURE__ */ jsx("p", {
28104
+ className: "text-sm leading-snug text-neutral-800",
28105
+ children: t
28106
+ })]
28107
+ });
28108
+ }
28109
+ function SignalSummaryDismissReasons({ prompt: e, options: t, selectedId: n, onSelect: r, confirmLabel: i, cancelLabel: a, insteadLabel: o, onConfirm: s, onCancel: c, onInstead: l, className: u }) {
28110
+ return /* @__PURE__ */ jsxs("div", {
28111
+ className: u,
28112
+ children: [
28113
+ /* @__PURE__ */ jsx("p", {
28114
+ className: "mb-2.5 text-xs text-neutral-700-variant-1",
28115
+ children: e
28116
+ }),
28117
+ /* @__PURE__ */ jsx("div", {
28118
+ className: "mb-3 gap-1.5 flex flex-wrap",
28119
+ children: t.map((e) => {
28120
+ let t = e.id === n;
28121
+ return /* @__PURE__ */ jsx(Button, {
28122
+ type: "button",
28123
+ "aria-pressed": t,
28124
+ onClick: () => r(e.id),
28125
+ className: cn("px-2.5 py-1 text-xs font-medium rounded-full border transition-colors", t ? "border-signal-summary-chip-selected-bg bg-signal-summary-chip-selected-bg text-signal-summary-chip-selected-text" : "border-signal-summary-chip-border bg-signal-summary-chip-bg text-neutral-700-variant-1 hover:border-neutral-400-variant-2"),
28126
+ children: e.label
28127
+ }, e.id);
28128
+ })
28129
+ }),
28130
+ /* @__PURE__ */ jsxs("div", {
28131
+ className: "gap-2 flex flex-wrap items-center",
28132
+ children: [
28133
+ /* @__PURE__ */ jsx(Button, {
28134
+ type: "button",
28135
+ onClick: s,
28136
+ className: "rounded-lg px-3 py-1.5 text-xs font-semibold bg-signal-summary-confirm-bg text-signal-summary-confirm-text transition-colors hover:bg-signal-summary-confirm-hover-bg",
28137
+ children: i
28138
+ }),
28139
+ /* @__PURE__ */ jsx(Button, {
28140
+ type: "button",
28141
+ onClick: c,
28142
+ className: "rounded-lg px-3 py-1.5 text-xs font-medium text-neutral-700-variant-1 transition-colors hover:text-neutral-900",
28143
+ children: a
28144
+ }),
28145
+ /* @__PURE__ */ jsx(Button, {
28146
+ type: "button",
28147
+ onClick: l,
28148
+ className: "text-xs font-medium ml-auto text-signal-summary-instead-text transition-colors hover:text-signal-summary-instead-hover-text",
28149
+ children: o
28150
+ })
28151
+ ]
28152
+ })
28153
+ ]
28154
+ });
28155
+ }
28156
+ function Label$1({ children: e }) {
28157
+ return /* @__PURE__ */ jsx("span", {
28158
+ className: "w-9 font-bold tracking-wider shrink-0 text-[10px] text-neutral-700-variant-1 uppercase",
28159
+ children: e
28160
+ });
28161
+ }
28162
+ function Name$1({ name: e, tooltip: t }) {
28163
+ let n = /* @__PURE__ */ jsx("span", {
28164
+ className: cn("text-xs font-semibold text-neutral-900", t && "cursor-default underline decoration-neutral-400-variant-2 decoration-dotted underline-offset-2"),
28165
+ children: e
28166
+ });
28167
+ return t ? /* @__PURE__ */ jsx(CursorTooltip, {
28168
+ content: t,
28169
+ children: n
28170
+ }) : n;
28171
+ }
28172
+ function AddressPill$1({ address: e }) {
28173
+ return /* @__PURE__ */ jsx("span", {
28174
+ className: "min-w-0 px-2 font-medium truncate rounded-full border border-signal-summary-border bg-white-variant-2 py-px text-[10px] text-neutral-700-variant-1",
28175
+ children: e
28176
+ });
28177
+ }
28178
+ function SignalSummaryHeader({ status: e, onClose: t, from: n, to: r, className: i }) {
28179
+ return /* @__PURE__ */ jsxs("div", {
28180
+ className: cn("top-0 sticky z-20 shrink-0 border-b border-signal-summary-border bg-white-variant-8", i),
28181
+ children: [/* @__PURE__ */ jsxs("div", {
28182
+ className: "h-12 gap-3 px-4 flex items-center justify-between border-b border-signal-summary-border",
28183
+ children: [e, t && /* @__PURE__ */ jsx("button", {
28184
+ type: "button",
28185
+ "aria-label": "Close",
28186
+ onClick: t,
28187
+ className: "h-7 w-7 rounded-lg md:hidden flex shrink-0 items-center justify-center text-neutral-700 transition-colors hover:bg-signal-summary-close-hover-bg hover:text-neutral-800-variant-3",
28188
+ children: /* @__PURE__ */ jsx("svg", {
28189
+ width: "14",
28190
+ height: "14",
28191
+ viewBox: "0 0 24 24",
28192
+ fill: "none",
28193
+ children: /* @__PURE__ */ jsx("path", {
28194
+ d: "M18 6L6 18M6 6l12 12",
28195
+ stroke: "currentColor",
28196
+ strokeWidth: "2",
28197
+ strokeLinecap: "round"
28198
+ })
28199
+ })
28200
+ })]
28201
+ }), /* @__PURE__ */ jsxs("div", {
28202
+ className: "gap-0.5 px-4 py-2.5 flex flex-col",
28203
+ children: [/* @__PURE__ */ jsxs("div", {
28204
+ className: "min-w-0 gap-2 flex items-center",
28205
+ children: [
28206
+ /* @__PURE__ */ jsx(Label$1, { children: "From" }),
28207
+ /* @__PURE__ */ jsx("span", {
28208
+ className: "font-bold flex h-[18px] w-[18px] shrink-0 items-center justify-center rounded-full bg-signal-summary-avatar-bg text-[9px] text-signal-summary-avatar-text",
28209
+ children: n.name.charAt(0).toUpperCase()
28210
+ }),
28211
+ /* @__PURE__ */ jsx(Name$1, {
28212
+ name: n.name,
28213
+ tooltip: n.company
28214
+ }),
28215
+ n.address && /* @__PURE__ */ jsx(AddressPill$1, { address: n.address })
28216
+ ]
28217
+ }), r && /* @__PURE__ */ jsxs("div", {
28218
+ className: "min-w-0 gap-2 flex items-center",
28219
+ children: [
28220
+ /* @__PURE__ */ jsx(Label$1, { children: "To" }),
28221
+ /* @__PURE__ */ jsx("span", {
28222
+ className: "flex h-[18px] w-[18px] shrink-0 items-center justify-center",
28223
+ children: r.icon
28224
+ }),
28225
+ /* @__PURE__ */ jsx(Name$1, {
28226
+ name: r.name,
28227
+ tooltip: r.tooltip
28228
+ }),
28229
+ r.addresses?.map((e) => /* @__PURE__ */ jsx(AddressPill$1, { address: e }, e))
28230
+ ]
28231
+ })]
28232
+ })]
28233
+ });
28234
+ }
28235
+ function SignalSummaryReviewSection({ title: e, decision: t, reasons: n = [], className: r }) {
28236
+ return /* @__PURE__ */ jsxs("section", {
28237
+ className: cn("px-4 py-4", r),
28238
+ children: [
28239
+ /* @__PURE__ */ jsx("p", {
28240
+ className: "mb-2 font-bold tracking-widest text-[10px] text-neutral-900 uppercase",
28241
+ children: e
28242
+ }),
28243
+ /* @__PURE__ */ jsx("p", {
28244
+ className: "text-sm/snug font-semibold text-neutral-900",
28245
+ children: t
28246
+ }),
28247
+ n.length > 0 && /* @__PURE__ */ jsx("ul", {
28248
+ className: "mt-2 gap-1 flex flex-col",
28249
+ children: n.map((e) => /* @__PURE__ */ jsx("li", {
28250
+ className: "text-[12px]/snug text-neutral-700",
28251
+ children: e
28252
+ }, e))
28253
+ })
28254
+ ]
28255
+ });
28256
+ }
28257
+ var badgeStyles = tv({
28258
+ base: "px-2 py-0.5 font-semibold rounded-full text-[10px]",
28259
+ variants: { status: {
28260
+ met: "bg-signal-summary-sla-good-badge-bg text-signal-summary-sla-good-badge-text",
28261
+ on_track: "bg-signal-summary-sla-good-badge-bg text-signal-summary-sla-good-badge-text",
28262
+ approaching: "bg-signal-summary-sla-approaching-badge-bg text-signal-summary-sla-approaching-badge-text",
28263
+ overdue: "bg-signal-summary-sla-overdue-badge-bg text-signal-summary-sla-overdue-badge-text",
28264
+ way_overdue: "bg-signal-summary-sla-way-overdue-badge-bg text-signal-summary-sla-way-overdue-badge-text"
28265
+ } }
28266
+ }), barStyles = tv({
28267
+ base: "h-full rounded-full",
28268
+ variants: { status: {
28269
+ met: "bg-signal-summary-sla-good-bar",
28270
+ on_track: "bg-signal-summary-sla-good-bar",
28271
+ approaching: "bg-signal-summary-sla-approaching-bar",
28272
+ overdue: "bg-signal-summary-sla-overdue-bar",
28273
+ way_overdue: "bg-signal-summary-sla-way-overdue-bar"
28274
+ } }
28275
+ });
28276
+ function SignalSummarySlaSection({ title: e, statusLabel: t, status: n, percentUsed: r, actual: i, window: a, className: o }) {
28277
+ return /* @__PURE__ */ jsxs("section", {
28278
+ className: cn("px-4 py-4", o),
28279
+ children: [
28280
+ /* @__PURE__ */ jsxs("div", {
28281
+ className: "mb-2.5 flex items-center justify-between",
28282
+ children: [/* @__PURE__ */ jsx("p", {
28283
+ className: "font-bold tracking-widest text-[10px] text-neutral-900 uppercase",
28284
+ children: e
28285
+ }), /* @__PURE__ */ jsx("span", {
28286
+ className: badgeStyles({ status: n }),
28287
+ children: t
28288
+ })]
28289
+ }),
28290
+ /* @__PURE__ */ jsx("div", {
28291
+ className: "mb-2.5 h-1.5 overflow-hidden rounded-full bg-signal-summary-sla-track",
28292
+ children: /* @__PURE__ */ jsx("div", {
28293
+ className: barStyles({ status: n }),
28294
+ style: { width: `${Math.min(r, 100)}%` }
28295
+ })
28296
+ }),
28297
+ /* @__PURE__ */ jsxs("div", {
28298
+ className: "flex items-center justify-between",
28299
+ children: [/* @__PURE__ */ jsxs("span", {
28300
+ className: "gap-1 inline-flex items-center text-[11px] text-neutral-700-variant-1",
28301
+ children: [
28302
+ "Actual:",
28303
+ " ",
28304
+ /* @__PURE__ */ jsx("span", {
28305
+ className: "font-semibold text-neutral-800",
28306
+ children: i
28307
+ })
28308
+ ]
28309
+ }), /* @__PURE__ */ jsxs("span", {
28310
+ className: "text-[11px] text-neutral-700-variant-1",
28311
+ children: [
28312
+ "Window:",
28313
+ " ",
28314
+ /* @__PURE__ */ jsx("span", {
28315
+ className: "font-semibold text-neutral-800",
28316
+ children: a
28317
+ })
28318
+ ]
28319
+ })]
28320
+ })
28321
+ ]
28322
+ });
28323
+ }
28324
+ function EvidenceHeader({ icon: e, title: t, muted: n = !1, meta: r, className: i }) {
28325
+ return /* @__PURE__ */ jsxs("div", {
28326
+ className: cn("top-0 h-12 gap-2 px-4 sticky z-10 flex shrink-0 items-center justify-between border-b border-evidence-border bg-white-variant-8", i),
28327
+ children: [/* @__PURE__ */ jsxs("div", {
28328
+ className: "min-w-0 gap-1.5 flex items-center",
28329
+ children: [e, /* @__PURE__ */ jsx("span", {
28330
+ className: cn("min-w-0 truncate text-[13px]", n ? "font-medium text-neutral-600-variant-7" : "font-bold text-neutral-900"),
28331
+ children: t
28332
+ })]
28333
+ }), r && /* @__PURE__ */ jsx("div", {
28334
+ className: "gap-2 flex shrink-0 items-center",
28335
+ children: /* @__PURE__ */ jsx("span", {
28336
+ className: "font-medium text-[11px] text-neutral-700",
28337
+ children: r
28338
+ })
28339
+ })]
28340
+ });
28341
+ }
28342
+ function ThreadDateDivider({ label: e, className: t }) {
28343
+ return /* @__PURE__ */ jsxs("div", {
28344
+ className: cn("px-4 py-3 relative flex items-center justify-center", t),
28345
+ children: [/* @__PURE__ */ jsx("div", { className: "inset-x-4 absolute top-1/2 h-px bg-evidence-border" }), /* @__PURE__ */ jsx("span", {
28346
+ className: "px-3 py-1 font-semibold relative z-10 inline-flex items-center rounded-full border border-thread-date-pill-border bg-white-variant-8 text-[12px] text-neutral-900",
28347
+ children: e
28348
+ })]
28349
+ });
28350
+ }
28351
+ function Name({ name: e, company: t }) {
28352
+ let n = /* @__PURE__ */ jsx("span", {
28353
+ className: cn("min-w-0 font-bold truncate text-[13px] text-neutral-900", t && "cursor-default underline decoration-neutral-400-variant-2 decoration-dotted underline-offset-2"),
28354
+ children: e
28355
+ });
28356
+ return t ? /* @__PURE__ */ jsx(CursorTooltip, {
28357
+ content: t,
28358
+ children: n
28359
+ }) : n;
28360
+ }
28361
+ function AddressPill({ address: e }) {
28362
+ return /* @__PURE__ */ jsx("span", {
28363
+ className: "min-w-0 px-2 font-medium truncate rounded-full border border-evidence-border bg-white-variant-2 py-px text-[10px] text-neutral-700-variant-1",
28364
+ children: e
28365
+ });
28366
+ }
28367
+ function Label({ children: e }) {
28368
+ return /* @__PURE__ */ jsx("span", {
28369
+ className: "w-9 font-bold tracking-wider shrink-0 text-[10px] text-neutral-700-variant-1 uppercase",
28370
+ children: e
28371
+ });
28372
+ }
28373
+ function ThreadEmailMessage({ icon: e, sourceLabel: t, onOpenSource: n, senderName: r, senderCompany: i, senderAddress: a, recipientName: o, recipientCompany: s, recipientAddresses: c, recipientNote: l, timestamp: u, body: f, className: p }) {
28374
+ return /* @__PURE__ */ jsxs("div", {
28375
+ className: cn("gap-2.5 px-4 pt-5 pb-4 flex border-b border-evidence-border last:border-b-0", p),
28376
+ children: [/* @__PURE__ */ jsx(CursorTooltip, {
28377
+ content: t,
28378
+ children: /* @__PURE__ */ jsx("button", {
28379
+ type: "button",
28380
+ "aria-label": t,
28381
+ onClick: n,
28382
+ className: "h-9 w-9 flex shrink-0 items-center justify-center rounded-full bg-thread-avatar-email-bg transition-opacity hover:opacity-80",
28383
+ children: e
28384
+ })
28385
+ }), /* @__PURE__ */ jsxs("div", {
28386
+ className: "min-w-0 flex-1",
28387
+ children: [/* @__PURE__ */ jsxs("div", {
28388
+ className: "gap-2 flex items-start justify-between",
28389
+ children: [/* @__PURE__ */ jsxs("div", {
28390
+ className: "min-w-0 gap-0.5 flex flex-1 flex-col",
28391
+ children: [/* @__PURE__ */ jsxs("div", {
28392
+ className: "min-w-0 gap-1.5 flex flex-wrap items-center",
28393
+ children: [
28394
+ /* @__PURE__ */ jsx(Label, { children: "From" }),
28395
+ /* @__PURE__ */ jsx(Name, {
28396
+ name: r,
28397
+ company: i
28398
+ }),
28399
+ a && /* @__PURE__ */ jsx(AddressPill, { address: a })
28400
+ ]
28401
+ }), o && /* @__PURE__ */ jsxs("div", {
28402
+ className: "min-w-0 gap-1.5 flex flex-wrap items-center",
28403
+ children: [
28404
+ /* @__PURE__ */ jsx(Label, { children: "To" }),
28405
+ /* @__PURE__ */ jsx(Name, {
28406
+ name: o,
28407
+ company: s
28408
+ }),
28409
+ c?.length ? c.map((e) => /* @__PURE__ */ jsx(AddressPill, { address: e }, e)) : l && /* @__PURE__ */ jsxs("span", {
28410
+ className: "min-w-0 truncate text-[11px] text-neutral-700 italic",
28411
+ children: [
28412
+ "(",
28413
+ l,
28414
+ ")"
28415
+ ]
28416
+ })
28417
+ ]
28418
+ })]
28419
+ }), /* @__PURE__ */ jsx("span", {
28420
+ className: "font-medium shrink-0 text-[11px] text-neutral-700-variant-1",
28421
+ children: u
28422
+ })]
28423
+ }), /* @__PURE__ */ jsx("p", {
28424
+ className: "mt-2 text-sm leading-relaxed text-neutral-800",
28425
+ children: f
28426
+ })]
28427
+ })]
28428
+ });
28429
+ }
28430
+ function ThreadSlackMessage({ sourceLabel: e, onOpenSource: t, senderName: n, timestamp: r, body: i, className: a }) {
28431
+ return /* @__PURE__ */ jsxs("div", {
28432
+ className: cn("gap-2.5 px-4 pt-3 pb-0.5 flex", a),
28433
+ children: [/* @__PURE__ */ jsx(CursorTooltip, {
28434
+ content: e,
28435
+ children: /* @__PURE__ */ jsx("button", {
28436
+ type: "button",
28437
+ "aria-label": e,
28438
+ onClick: t,
28439
+ className: "h-9 w-9 rounded-lg font-medium flex shrink-0 items-center justify-center bg-neutral-600-variant-3 text-[18px] text-white-variant-1 transition-opacity hover:opacity-80",
28440
+ children: n.charAt(0).toUpperCase()
28441
+ })
28442
+ }), /* @__PURE__ */ jsxs("div", {
28443
+ className: "min-w-0 flex-1",
28444
+ children: [/* @__PURE__ */ jsxs("div", {
28445
+ className: "gap-2 flex flex-wrap items-baseline",
28446
+ children: [/* @__PURE__ */ jsx("span", {
28447
+ className: "font-bold text-[14px] text-neutral-900",
28448
+ children: n
28449
+ }), /* @__PURE__ */ jsx("span", {
28450
+ className: "font-medium text-[11px] text-neutral-700-variant-1",
28451
+ children: r
28452
+ })]
28453
+ }), /* @__PURE__ */ jsx("p", {
28454
+ className: "text-sm leading-relaxed whitespace-pre-wrap text-neutral-800",
28455
+ children: i
28456
+ })]
28457
+ })]
28458
+ });
28459
+ }
27523
28460
  var DEFAULT_DURATION = 4e3, DEFAULT_POSITION = "bottom-right";
27524
28461
  function buildCallbacks({ onOpen: e, onClose: t, onAutoClose: n, onDismiss: r }) {
27525
28462
  return e || t || n || r ? {
@@ -27773,6 +28710,6 @@ function QtaloBlueImage({ size: e = 40, className: t, ...n }) {
27773
28710
  }) })]
27774
28711
  });
27775
28712
  }
27776
- export { AVATAR_COLOR, AVATAR_COLOR_KEYS, Accordion, AccordionContent, AccordionItem, AccordionTrigger, AccountIcon, AccountInfo, AccountOutlineIcon, ActionMenu, ActionMenuItem, AddCircleIcon, AddIcon, ArrowIcon, AsanaIcon, Avatar, Badge, BetaResizeHandle, BuildingIcon, BuildingOutlineIcon, BulkActions, BulkActionsSkeleton, Button, CalendarIcon, Card, CardContent, CardFooter, CardHeader, CardLayout, CardSidebar, CardTitle, CheckCircleEmptyIcon, CheckCircleIcon, CheckIcon, CheckSquareIcon, Checkbox, CheckboxIcon, ClickUpIcon, CloseBoldIcon, 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, EventDetailFollowUp, EventDetailHeader, EventDetailPriority, EventDetailSkeleton, EventDetailSummary, EventEmptyState, EventSummaryCard, EventSummaryCardSkeleton, EventSummaryFireButton, EvidenceTimeline, ExternalLinkIcon, EyeFillIcon, EyeIcon, FilterBar, FilterBarSkeleton, FilterButton, FireFillIcon, FireIcon, GmailIcon, GoogleCalendarIcon, HelpPanel, HelpPanelEngine, HomeFillIcon, HomeIcon, Icon, IconButton, IconCountButton, IconCountButtonSkeleton, InboxIcon, InfoTooltip, Input, InsightFillIcon, InsightIcon, IntegrationBar, IntegrationBarSkeleton, IntegrationItem, IntegrationItemSkeleton, IntegrationsCard, JiraIcon, LightIcon, LogoIcon, MailIcon, MinusIcon, MoreIcon, NoEyeIcon, NormalDensityIcon, NotFireIcon, ONBOARDING_DISMISSED_STORAGE_KEY, Onboarding, OnboardingCard, OnboardingEngine, OutlookCalendarIcon, OutlookIcon, PatternIcon, Pressable, PulseFilterChip, PulseFilterChipSkeleton, QtaloBlueImage, QtaloImage, ReadIcon, ReplyIoIcon, RichContent, RoleBadge, SearchIcon, SearchInput, SearchWithSuggestions, SignOutIcon, SignalCard, SignalCardSkeleton, SignalClusterCard, SignalClusterCardSkeleton, SignalDetailPanel, SignalDetailPanelSkeleton, Skeleton, SlaProgressBar, SlackIcon, StatusBadge, StopPropagation, SummaryIcon, SystemIcon, TeamsIcon, Toaster, Tooltip, UnreadIcon, WarningIcon, 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 };
28713
+ export { AVATAR_COLOR, AVATAR_COLOR_KEYS, Accordion, AccordionContent, AccordionItem, AccordionTrigger, AccountIcon, AccountInfo, AccountOutlineIcon, ActionMenu, ActionMenuItem, AddCircleIcon, AddIcon, ArrowIcon, AsanaIcon, Avatar, Badge, BetaResizeHandle, BriefcaseOutlineIcon, BuildingIcon, BuildingOutlineIcon, BulkActions, BulkActionsSkeleton, Button, CalendarIcon, Card, CardContent, CardFooter, CardHeader, CardLayout, CardSidebar, CardTitle, CheckBoldIcon, CheckCircleEmptyIcon, CheckCircleIcon, CheckIcon, CheckOutlineIcon, CheckSquareIcon, Checkbox, CheckboxIcon, ChevronRightIcon, ClickUpIcon, CloseBoldIcon, CloseIcon, CloseOutlineIcon, CompactDensityIcon, CopyIcon, CursorTooltip, CustomerGroupHeader, 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, EventDetailFollowUp, EventDetailHeader, EventDetailPriority, EventDetailSkeleton, EventDetailSummary, EventEmptyState, EventSummaryCard, EventSummaryCardSkeleton, EventSummaryFireButton, EvidenceHeader, EvidenceTimeline, ExternalLinkIcon, ExternalLinkOutlineIcon, EyeFillIcon, EyeIcon, FilterBar, FilterBarSkeleton, FilterButton, FireFillIcon, FireIcon, GmailIcon, GoogleCalendarIcon, HelpPanel, HelpPanelEngine, HomeFillIcon, HomeIcon, Icon, IconButton, IconCountButton, IconCountButtonSkeleton, InboxIcon, InfoFillIcon, InfoTooltip, Input, InsightFillIcon, InsightIcon, IntegrationBar, IntegrationBarSkeleton, IntegrationItem, IntegrationItemSkeleton, IntegrationsCard, JiraIcon, LightIcon, LogoIcon, MailIcon, MinusIcon, MoreIcon, MsIcon, NoEyeIcon, NormalDensityIcon, NotFireIcon, ONBOARDING_DISMISSED_STORAGE_KEY, Onboarding, OnboardingCard, OnboardingEngine, OutlookCalendarIcon, OutlookIcon, PatternIcon, Pressable, PulseFilterChip, PulseFilterChipSkeleton, PulseGmailIcon, PulseSignalCard, PulseSignalStatus, PulseSlackIcon, QtaloBlueImage, QtaloImage, ReadIcon, ReplyIoIcon, ResizeDivider, RichContent, RoleBadge, SearchIcon, SearchInput, SearchWithSuggestions, SignOutIcon, SignalCard, SignalCardSkeleton, SignalClusterCard, SignalClusterCardSkeleton, SignalDetailPanel, SignalDetailPanelSkeleton, SignalSummaryActionButton, SignalSummaryActionsSection, SignalSummaryClaimSection, SignalSummaryDismissReasons, SignalSummaryHeader, SignalSummaryReviewSection, SignalSummarySlaSection, Skeleton, SlaProgressBar, SlackIcon, StatusBadge, StopPropagation, SummaryIcon, SystemIcon, TeamsIcon, ThreadDateDivider, ThreadEmailMessage, ThreadSlackMessage, Toaster, ToolbarButton, Tooltip, UnreadIcon, UserOutlineIcon, WarningIcon, 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 };
27777
28714
 
27778
28715
  //# sourceMappingURL=index.js.map