@qtalo/qt-ui-library 0.1.29 → 0.2.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.cjs +17 -16
- package/dist/index.cjs.map +1 -1
- package/dist/index.css +1 -1
- package/dist/index.d.ts +231 -0
- package/dist/index.js +1720 -320
- package/dist/index.js.map +1 -1
- package/package.json +1 -1
- package/src/styles/styles.css +66 -0
package/dist/index.js
CHANGED
|
@@ -326,25 +326,25 @@ var html$1 = freeze(/* @__PURE__ */ "a.abbr.acronym.address.area.article.aside.a
|
|
|
326
326
|
function createDOMPurify() {
|
|
327
327
|
let e = arguments.length > 0 && arguments[0] !== void 0 ? arguments[0] : getGlobal(), t = (e) => createDOMPurify(e);
|
|
328
328
|
if (t.version = "3.3.1", t.removed = [], !e || !e.document || e.document.nodeType !== NODE_TYPE.document || !e.Element) return t.isSupported = !1, t;
|
|
329
|
-
let { document: n } = e, r = n, i = r.currentScript, { DocumentFragment: a, HTMLTemplateElement: o, Node: s, Element: c, NodeFilter: l, NamedNodeMap: u = e.NamedNodeMap || e.MozNamedAttrMap, HTMLFormElement: f, DOMParser: p, trustedTypes: h } = e,
|
|
329
|
+
let { document: n } = e, r = n, i = r.currentScript, { DocumentFragment: a, HTMLTemplateElement: o, Node: s, Element: c, NodeFilter: l, NamedNodeMap: u = e.NamedNodeMap || e.MozNamedAttrMap, HTMLFormElement: f, DOMParser: p, trustedTypes: h } = e, g = c.prototype, O = lookupGetter(g, "cloneNode"), A = lookupGetter(g, "remove"), Ws = lookupGetter(g, "nextSibling"), Gs = lookupGetter(g, "childNodes"), Ks = lookupGetter(g, "parentNode");
|
|
330
330
|
if (typeof o == "function") {
|
|
331
331
|
let e = n.createElement("template");
|
|
332
332
|
e.content && e.content.ownerDocument && (n = e.content.ownerDocument);
|
|
333
333
|
}
|
|
334
|
-
let
|
|
335
|
-
t.isSupported = typeof entries == "function" && typeof
|
|
336
|
-
let { MUSTACHE_EXPR:
|
|
334
|
+
let R, B = "", { implementation: V, createNodeIterator: qs, createDocumentFragment: Js, getElementsByTagName: Ys } = n, { importNode: Xs } = r, H = _createHooksMap();
|
|
335
|
+
t.isSupported = typeof entries == "function" && typeof Ks == "function" && V && V.createHTMLDocument !== void 0;
|
|
336
|
+
let { MUSTACHE_EXPR: Zs, ERB_EXPR: Qs, TMPLIT_EXPR: $s, DATA_ATTR: ec, ARIA_ATTR: tc, IS_SCRIPT_OR_DATA: nc, ATTR_WHITESPACE: rc, CUSTOM_ELEMENT: ic } = EXPRESSIONS, { IS_ALLOWED_URI: ac } = EXPRESSIONS, oc = null, sc = addToSet({}, [
|
|
337
337
|
...html$1,
|
|
338
338
|
...svg$1,
|
|
339
339
|
...svgFilters,
|
|
340
340
|
...mathMl$1,
|
|
341
341
|
...text
|
|
342
|
-
]),
|
|
342
|
+
]), cc = null, lc = addToSet({}, [
|
|
343
343
|
...html,
|
|
344
344
|
...svg,
|
|
345
345
|
...mathMl,
|
|
346
346
|
...xml
|
|
347
|
-
]),
|
|
347
|
+
]), Y = Object.seal(create(null, {
|
|
348
348
|
tagNameCheck: {
|
|
349
349
|
writable: !0,
|
|
350
350
|
configurable: !1,
|
|
@@ -363,7 +363,7 @@ function createDOMPurify() {
|
|
|
363
363
|
enumerable: !0,
|
|
364
364
|
value: !1
|
|
365
365
|
}
|
|
366
|
-
})),
|
|
366
|
+
})), uc = null, dc = null, fc = Object.seal(create(null, {
|
|
367
367
|
tagCheck: {
|
|
368
368
|
writable: !0,
|
|
369
369
|
configurable: !1,
|
|
@@ -376,7 +376,7 @@ function createDOMPurify() {
|
|
|
376
376
|
enumerable: !0,
|
|
377
377
|
value: null
|
|
378
378
|
}
|
|
379
|
-
})),
|
|
379
|
+
})), pc = !0, mc = !0, hc = !1, gc = !0, _c = !1, vc = !0, yc = !1, bc = !1, xc = !1, Sc = !1, Cc = !1, wc = !1, Tc = !0, Ec = !1, Dc = !0, Oc = !1, kc = {}, Ac = null, jc = addToSet({}, [
|
|
380
380
|
"annotation-xml",
|
|
381
381
|
"audio",
|
|
382
382
|
"colgroup",
|
|
@@ -402,14 +402,14 @@ function createDOMPurify() {
|
|
|
402
402
|
"title",
|
|
403
403
|
"video",
|
|
404
404
|
"xmp"
|
|
405
|
-
]),
|
|
405
|
+
]), Mc = null, Nc = addToSet({}, [
|
|
406
406
|
"audio",
|
|
407
407
|
"video",
|
|
408
408
|
"img",
|
|
409
409
|
"source",
|
|
410
410
|
"image",
|
|
411
411
|
"track"
|
|
412
|
-
]),
|
|
412
|
+
]), Pc = null, Fc = addToSet({}, [
|
|
413
413
|
"alt",
|
|
414
414
|
"class",
|
|
415
415
|
"for",
|
|
@@ -424,58 +424,58 @@ function createDOMPurify() {
|
|
|
424
424
|
"value",
|
|
425
425
|
"style",
|
|
426
426
|
"xmlns"
|
|
427
|
-
]),
|
|
428
|
-
|
|
429
|
-
|
|
430
|
-
|
|
431
|
-
], stringToString),
|
|
427
|
+
]), Ic = "http://www.w3.org/1998/Math/MathML", Lc = "http://www.w3.org/2000/svg", Rc = "http://www.w3.org/1999/xhtml", zc = Rc, Bc = !1, Vc = null, Hc = addToSet({}, [
|
|
428
|
+
Ic,
|
|
429
|
+
Lc,
|
|
430
|
+
Rc
|
|
431
|
+
], stringToString), Uc = addToSet({}, [
|
|
432
432
|
"mi",
|
|
433
433
|
"mo",
|
|
434
434
|
"mn",
|
|
435
435
|
"ms",
|
|
436
436
|
"mtext"
|
|
437
|
-
]),
|
|
437
|
+
]), Wc = addToSet({}, ["annotation-xml"]), Gc = addToSet({}, [
|
|
438
438
|
"title",
|
|
439
439
|
"style",
|
|
440
440
|
"font",
|
|
441
441
|
"a",
|
|
442
442
|
"script"
|
|
443
|
-
]),
|
|
443
|
+
]), Kc = null, qc = ["application/xhtml+xml", "text/html"], Jc = null, Yc = null, Xc = n.createElement("form"), Zc = function(e) {
|
|
444
444
|
return e instanceof RegExp || e instanceof Function;
|
|
445
|
-
},
|
|
445
|
+
}, Qc = function() {
|
|
446
446
|
let e = arguments.length > 0 && arguments[0] !== void 0 ? arguments[0] : {};
|
|
447
|
-
if (!(
|
|
448
|
-
if ((!e || typeof e != "object") && (e = {}), e = clone(e),
|
|
447
|
+
if (!(Yc && Yc === e)) {
|
|
448
|
+
if ((!e || typeof e != "object") && (e = {}), e = clone(e), Kc = qc.indexOf(e.PARSER_MEDIA_TYPE) === -1 ? "text/html" : e.PARSER_MEDIA_TYPE, Jc = Kc === "application/xhtml+xml" ? stringToString : stringToLowerCase, oc = objectHasOwnProperty(e, "ALLOWED_TAGS") ? addToSet({}, e.ALLOWED_TAGS, Jc) : sc, cc = objectHasOwnProperty(e, "ALLOWED_ATTR") ? addToSet({}, e.ALLOWED_ATTR, Jc) : lc, Vc = objectHasOwnProperty(e, "ALLOWED_NAMESPACES") ? addToSet({}, e.ALLOWED_NAMESPACES, stringToString) : Hc, Pc = objectHasOwnProperty(e, "ADD_URI_SAFE_ATTR") ? addToSet(clone(Fc), e.ADD_URI_SAFE_ATTR, Jc) : Fc, Mc = objectHasOwnProperty(e, "ADD_DATA_URI_TAGS") ? addToSet(clone(Nc), e.ADD_DATA_URI_TAGS, Jc) : Nc, Ac = objectHasOwnProperty(e, "FORBID_CONTENTS") ? addToSet({}, e.FORBID_CONTENTS, Jc) : jc, uc = objectHasOwnProperty(e, "FORBID_TAGS") ? addToSet({}, e.FORBID_TAGS, Jc) : clone({}), dc = objectHasOwnProperty(e, "FORBID_ATTR") ? addToSet({}, e.FORBID_ATTR, Jc) : clone({}), kc = objectHasOwnProperty(e, "USE_PROFILES") ? e.USE_PROFILES : !1, pc = e.ALLOW_ARIA_ATTR !== !1, mc = e.ALLOW_DATA_ATTR !== !1, hc = e.ALLOW_UNKNOWN_PROTOCOLS || !1, gc = e.ALLOW_SELF_CLOSE_IN_ATTR !== !1, _c = e.SAFE_FOR_TEMPLATES || !1, vc = e.SAFE_FOR_XML !== !1, yc = e.WHOLE_DOCUMENT || !1, Sc = e.RETURN_DOM || !1, Cc = e.RETURN_DOM_FRAGMENT || !1, wc = e.RETURN_TRUSTED_TYPE || !1, xc = e.FORCE_BODY || !1, Tc = e.SANITIZE_DOM !== !1, Ec = e.SANITIZE_NAMED_PROPS || !1, Dc = e.KEEP_CONTENT !== !1, Oc = e.IN_PLACE || !1, ac = e.ALLOWED_URI_REGEXP || IS_ALLOWED_URI, zc = e.NAMESPACE || Rc, Uc = e.MATHML_TEXT_INTEGRATION_POINTS || Uc, Wc = e.HTML_INTEGRATION_POINTS || Wc, Y = e.CUSTOM_ELEMENT_HANDLING || {}, e.CUSTOM_ELEMENT_HANDLING && Zc(e.CUSTOM_ELEMENT_HANDLING.tagNameCheck) && (Y.tagNameCheck = e.CUSTOM_ELEMENT_HANDLING.tagNameCheck), e.CUSTOM_ELEMENT_HANDLING && Zc(e.CUSTOM_ELEMENT_HANDLING.attributeNameCheck) && (Y.attributeNameCheck = e.CUSTOM_ELEMENT_HANDLING.attributeNameCheck), e.CUSTOM_ELEMENT_HANDLING && typeof e.CUSTOM_ELEMENT_HANDLING.allowCustomizedBuiltInElements == "boolean" && (Y.allowCustomizedBuiltInElements = e.CUSTOM_ELEMENT_HANDLING.allowCustomizedBuiltInElements), _c && (mc = !1), Cc && (Sc = !0), kc && (oc = addToSet({}, text), cc = [], kc.html === !0 && (addToSet(oc, html$1), addToSet(cc, html)), kc.svg === !0 && (addToSet(oc, svg$1), addToSet(cc, svg), addToSet(cc, xml)), kc.svgFilters === !0 && (addToSet(oc, svgFilters), addToSet(cc, svg), addToSet(cc, xml)), kc.mathMl === !0 && (addToSet(oc, mathMl$1), addToSet(cc, mathMl), addToSet(cc, xml))), e.ADD_TAGS && (typeof e.ADD_TAGS == "function" ? fc.tagCheck = e.ADD_TAGS : (oc === sc && (oc = clone(oc)), addToSet(oc, e.ADD_TAGS, Jc))), e.ADD_ATTR && (typeof e.ADD_ATTR == "function" ? fc.attributeCheck = e.ADD_ATTR : (cc === lc && (cc = clone(cc)), addToSet(cc, e.ADD_ATTR, Jc))), e.ADD_URI_SAFE_ATTR && addToSet(Pc, e.ADD_URI_SAFE_ATTR, Jc), e.FORBID_CONTENTS && (Ac === jc && (Ac = clone(Ac)), addToSet(Ac, e.FORBID_CONTENTS, Jc)), e.ADD_FORBID_CONTENTS && (Ac === jc && (Ac = clone(Ac)), addToSet(Ac, e.ADD_FORBID_CONTENTS, Jc)), Dc && (oc["#text"] = !0), yc && addToSet(oc, [
|
|
449
449
|
"html",
|
|
450
450
|
"head",
|
|
451
451
|
"body"
|
|
452
|
-
]),
|
|
452
|
+
]), oc.table && (addToSet(oc, ["tbody"]), delete uc.tbody), e.TRUSTED_TYPES_POLICY) {
|
|
453
453
|
if (typeof e.TRUSTED_TYPES_POLICY.createHTML != "function") throw typeErrorCreate("TRUSTED_TYPES_POLICY configuration option must provide a \"createHTML\" hook.");
|
|
454
454
|
if (typeof e.TRUSTED_TYPES_POLICY.createScriptURL != "function") throw typeErrorCreate("TRUSTED_TYPES_POLICY configuration option must provide a \"createScriptURL\" hook.");
|
|
455
|
-
|
|
456
|
-
} else
|
|
457
|
-
freeze && freeze(e),
|
|
455
|
+
R = e.TRUSTED_TYPES_POLICY, B = R.createHTML("");
|
|
456
|
+
} else R === void 0 && (R = _createTrustedTypesPolicy(h, i)), R !== null && typeof B == "string" && (B = R.createHTML(""));
|
|
457
|
+
freeze && freeze(e), Yc = e;
|
|
458
458
|
}
|
|
459
|
-
},
|
|
459
|
+
}, $c = addToSet({}, [
|
|
460
460
|
...svg$1,
|
|
461
461
|
...svgFilters,
|
|
462
462
|
...svgDisallowed
|
|
463
|
-
]),
|
|
464
|
-
let t =
|
|
463
|
+
]), el = addToSet({}, [...mathMl$1, ...mathMlDisallowed]), tl = function(e) {
|
|
464
|
+
let t = Ks(e);
|
|
465
465
|
(!t || !t.tagName) && (t = {
|
|
466
|
-
namespaceURI:
|
|
466
|
+
namespaceURI: zc,
|
|
467
467
|
tagName: "template"
|
|
468
468
|
});
|
|
469
469
|
let n = stringToLowerCase(e.tagName), r = stringToLowerCase(t.tagName);
|
|
470
|
-
return
|
|
471
|
-
},
|
|
470
|
+
return Vc[e.namespaceURI] ? e.namespaceURI === Lc ? t.namespaceURI === Rc ? n === "svg" : t.namespaceURI === Ic ? n === "svg" && (r === "annotation-xml" || Uc[r]) : !!$c[n] : e.namespaceURI === Ic ? t.namespaceURI === Rc ? n === "math" : t.namespaceURI === Lc ? n === "math" && Wc[r] : !!el[n] : e.namespaceURI === Rc ? t.namespaceURI === Lc && !Wc[r] || t.namespaceURI === Ic && !Uc[r] ? !1 : !el[n] && (Gc[n] || !$c[n]) : !!(Kc === "application/xhtml+xml" && Vc[e.namespaceURI]) : !1;
|
|
471
|
+
}, nl = function(e) {
|
|
472
472
|
arrayPush(t.removed, { element: e });
|
|
473
473
|
try {
|
|
474
|
-
|
|
474
|
+
Ks(e).removeChild(e);
|
|
475
475
|
} catch {
|
|
476
|
-
|
|
476
|
+
A(e);
|
|
477
477
|
}
|
|
478
|
-
},
|
|
478
|
+
}, rl = function(e, n) {
|
|
479
479
|
try {
|
|
480
480
|
arrayPush(t.removed, {
|
|
481
481
|
attribute: n.getAttributeNode(e),
|
|
@@ -487,196 +487,196 @@ function createDOMPurify() {
|
|
|
487
487
|
from: n
|
|
488
488
|
});
|
|
489
489
|
}
|
|
490
|
-
if (n.removeAttribute(e), e === "is") if (
|
|
491
|
-
|
|
490
|
+
if (n.removeAttribute(e), e === "is") if (Sc || Cc) try {
|
|
491
|
+
nl(n);
|
|
492
492
|
} catch {}
|
|
493
493
|
else try {
|
|
494
494
|
n.setAttribute(e, "");
|
|
495
495
|
} catch {}
|
|
496
|
-
},
|
|
496
|
+
}, il = function(e) {
|
|
497
497
|
let t = null, r = null;
|
|
498
|
-
if (
|
|
498
|
+
if (xc) e = "<remove></remove>" + e;
|
|
499
499
|
else {
|
|
500
500
|
let t = stringMatch(e, /^[\r\n\t ]+/);
|
|
501
501
|
r = t && t[0];
|
|
502
502
|
}
|
|
503
|
-
|
|
504
|
-
let i =
|
|
505
|
-
if (
|
|
506
|
-
t = new p().parseFromString(i,
|
|
503
|
+
Kc === "application/xhtml+xml" && zc === Rc && (e = "<html xmlns=\"http://www.w3.org/1999/xhtml\"><head></head><body>" + e + "</body></html>");
|
|
504
|
+
let i = R ? R.createHTML(e) : e;
|
|
505
|
+
if (zc === Rc) try {
|
|
506
|
+
t = new p().parseFromString(i, Kc);
|
|
507
507
|
} catch {}
|
|
508
508
|
if (!t || !t.documentElement) {
|
|
509
|
-
t =
|
|
509
|
+
t = V.createDocument(zc, "template", null);
|
|
510
510
|
try {
|
|
511
|
-
t.documentElement.innerHTML =
|
|
511
|
+
t.documentElement.innerHTML = Bc ? B : i;
|
|
512
512
|
} catch {}
|
|
513
513
|
}
|
|
514
514
|
let a = t.body || t.documentElement;
|
|
515
|
-
return e && r && a.insertBefore(n.createTextNode(r), a.childNodes[0] || null),
|
|
516
|
-
},
|
|
517
|
-
return
|
|
518
|
-
},
|
|
515
|
+
return e && r && a.insertBefore(n.createTextNode(r), a.childNodes[0] || null), zc === Rc ? Ys.call(t, yc ? "html" : "body")[0] : yc ? t.documentElement : a;
|
|
516
|
+
}, al = function(e) {
|
|
517
|
+
return qs.call(e.ownerDocument || e, e, l.SHOW_ELEMENT | l.SHOW_COMMENT | l.SHOW_TEXT | l.SHOW_PROCESSING_INSTRUCTION | l.SHOW_CDATA_SECTION, null);
|
|
518
|
+
}, ol = function(e) {
|
|
519
519
|
return e instanceof f && (typeof e.nodeName != "string" || typeof e.textContent != "string" || typeof e.removeChild != "function" || !(e.attributes instanceof u) || typeof e.removeAttribute != "function" || typeof e.setAttribute != "function" || typeof e.namespaceURI != "string" || typeof e.insertBefore != "function" || typeof e.hasChildNodes != "function");
|
|
520
|
-
},
|
|
520
|
+
}, sl = function(e) {
|
|
521
521
|
return typeof s == "function" && e instanceof s;
|
|
522
522
|
};
|
|
523
|
-
function
|
|
523
|
+
function cl(e, n, r) {
|
|
524
524
|
arrayForEach(e, (e) => {
|
|
525
|
-
e.call(t, n, r,
|
|
525
|
+
e.call(t, n, r, Yc);
|
|
526
526
|
});
|
|
527
527
|
}
|
|
528
|
-
let
|
|
528
|
+
let ll = function(e) {
|
|
529
529
|
let n = null;
|
|
530
|
-
if (
|
|
531
|
-
let r =
|
|
532
|
-
if (
|
|
530
|
+
if (cl(H.beforeSanitizeElements, e, null), ol(e)) return nl(e), !0;
|
|
531
|
+
let r = Jc(e.nodeName);
|
|
532
|
+
if (cl(H.uponSanitizeElement, e, {
|
|
533
533
|
tagName: r,
|
|
534
|
-
allowedTags:
|
|
535
|
-
}),
|
|
536
|
-
if (!(
|
|
537
|
-
if (!
|
|
538
|
-
if (
|
|
539
|
-
let t =
|
|
534
|
+
allowedTags: oc
|
|
535
|
+
}), vc && e.hasChildNodes() && !sl(e.firstElementChild) && regExpTest(/<[/\w!]/g, e.innerHTML) && regExpTest(/<[/\w!]/g, e.textContent) || e.nodeType === NODE_TYPE.progressingInstruction || vc && e.nodeType === NODE_TYPE.comment && regExpTest(/<[/\w]/g, e.data)) return nl(e), !0;
|
|
536
|
+
if (!(fc.tagCheck instanceof Function && fc.tagCheck(r)) && (!oc[r] || uc[r])) {
|
|
537
|
+
if (!uc[r] && dl(r) && (Y.tagNameCheck instanceof RegExp && regExpTest(Y.tagNameCheck, r) || Y.tagNameCheck instanceof Function && Y.tagNameCheck(r))) return !1;
|
|
538
|
+
if (Dc && !Ac[r]) {
|
|
539
|
+
let t = Ks(e) || e.parentNode, n = Gs(e) || e.childNodes;
|
|
540
540
|
if (n && t) {
|
|
541
541
|
let r = n.length;
|
|
542
542
|
for (let i = r - 1; i >= 0; --i) {
|
|
543
|
-
let r =
|
|
544
|
-
r.__removalCount = (e.__removalCount || 0) + 1, t.insertBefore(r,
|
|
543
|
+
let r = O(n[i], !0);
|
|
544
|
+
r.__removalCount = (e.__removalCount || 0) + 1, t.insertBefore(r, Ws(e));
|
|
545
545
|
}
|
|
546
546
|
}
|
|
547
547
|
}
|
|
548
|
-
return
|
|
548
|
+
return nl(e), !0;
|
|
549
549
|
}
|
|
550
|
-
return e instanceof c && !
|
|
551
|
-
|
|
552
|
-
|
|
553
|
-
|
|
550
|
+
return e instanceof c && !tl(e) || (r === "noscript" || r === "noembed" || r === "noframes") && regExpTest(/<\/no(script|embed|frames)/i, e.innerHTML) ? (nl(e), !0) : (_c && e.nodeType === NODE_TYPE.text && (n = e.textContent, arrayForEach([
|
|
551
|
+
Zs,
|
|
552
|
+
Qs,
|
|
553
|
+
$s
|
|
554
554
|
], (e) => {
|
|
555
555
|
n = stringReplace(n, e, " ");
|
|
556
|
-
}), e.textContent !== n && (arrayPush(t.removed, { element: e.cloneNode() }), e.textContent = n)),
|
|
557
|
-
},
|
|
558
|
-
if (
|
|
559
|
-
if (!(
|
|
560
|
-
if (!
|
|
561
|
-
if (!(
|
|
562
|
-
} else if (!
|
|
556
|
+
}), e.textContent !== n && (arrayPush(t.removed, { element: e.cloneNode() }), e.textContent = n)), cl(H.afterSanitizeElements, e, null), !1);
|
|
557
|
+
}, ul = function(e, t, r) {
|
|
558
|
+
if (Tc && (t === "id" || t === "name") && (r in n || r in Xc)) return !1;
|
|
559
|
+
if (!(mc && !dc[t] && regExpTest(ec, t)) && !(pc && regExpTest(tc, t)) && !(fc.attributeCheck instanceof Function && fc.attributeCheck(t, e))) {
|
|
560
|
+
if (!cc[t] || dc[t]) {
|
|
561
|
+
if (!(dl(e) && (Y.tagNameCheck instanceof RegExp && regExpTest(Y.tagNameCheck, e) || Y.tagNameCheck instanceof Function && Y.tagNameCheck(e)) && (Y.attributeNameCheck instanceof RegExp && regExpTest(Y.attributeNameCheck, t) || Y.attributeNameCheck instanceof Function && Y.attributeNameCheck(t, e)) || t === "is" && Y.allowCustomizedBuiltInElements && (Y.tagNameCheck instanceof RegExp && regExpTest(Y.tagNameCheck, r) || Y.tagNameCheck instanceof Function && Y.tagNameCheck(r)))) return !1;
|
|
562
|
+
} else if (!Pc[t] && !regExpTest(ac, stringReplace(r, rc, "")) && !((t === "src" || t === "xlink:href" || t === "href") && e !== "script" && stringIndexOf(r, "data:") === 0 && Mc[e]) && !(hc && !regExpTest(nc, stringReplace(r, rc, ""))) && r) return !1;
|
|
563
563
|
}
|
|
564
564
|
return !0;
|
|
565
|
-
},
|
|
566
|
-
return e !== "annotation-xml" && stringMatch(e,
|
|
567
|
-
},
|
|
568
|
-
|
|
565
|
+
}, dl = function(e) {
|
|
566
|
+
return e !== "annotation-xml" && stringMatch(e, ic);
|
|
567
|
+
}, fl = function(e) {
|
|
568
|
+
cl(H.beforeSanitizeAttributes, e, null);
|
|
569
569
|
let { attributes: n } = e;
|
|
570
|
-
if (!n ||
|
|
570
|
+
if (!n || ol(e)) return;
|
|
571
571
|
let r = {
|
|
572
572
|
attrName: "",
|
|
573
573
|
attrValue: "",
|
|
574
574
|
keepAttr: !0,
|
|
575
|
-
allowedAttributes:
|
|
575
|
+
allowedAttributes: cc,
|
|
576
576
|
forceKeepAttr: void 0
|
|
577
577
|
}, i = n.length;
|
|
578
578
|
for (; i--;) {
|
|
579
|
-
let { name: a, namespaceURI: o, value: s } = n[i], c =
|
|
580
|
-
if (r.attrName = c, r.attrValue = u, r.keepAttr = !0, r.forceKeepAttr = void 0,
|
|
581
|
-
|
|
579
|
+
let { name: a, namespaceURI: o, value: s } = n[i], c = Jc(a), l = s, u = a === "value" ? l : stringTrim(l);
|
|
580
|
+
if (r.attrName = c, r.attrValue = u, r.keepAttr = !0, r.forceKeepAttr = void 0, cl(H.uponSanitizeAttribute, e, r), u = r.attrValue, Ec && (c === "id" || c === "name") && (rl(a, e), u = "user-content-" + u), vc && regExpTest(/((--!?|])>)|<\/(style|title|textarea)/i, u)) {
|
|
581
|
+
rl(a, e);
|
|
582
582
|
continue;
|
|
583
583
|
}
|
|
584
584
|
if (c === "attributename" && stringMatch(u, "href")) {
|
|
585
|
-
|
|
585
|
+
rl(a, e);
|
|
586
586
|
continue;
|
|
587
587
|
}
|
|
588
588
|
if (r.forceKeepAttr) continue;
|
|
589
589
|
if (!r.keepAttr) {
|
|
590
|
-
|
|
590
|
+
rl(a, e);
|
|
591
591
|
continue;
|
|
592
592
|
}
|
|
593
|
-
if (!
|
|
594
|
-
|
|
593
|
+
if (!gc && regExpTest(/\/>/i, u)) {
|
|
594
|
+
rl(a, e);
|
|
595
595
|
continue;
|
|
596
596
|
}
|
|
597
|
-
|
|
598
|
-
|
|
599
|
-
|
|
600
|
-
|
|
597
|
+
_c && arrayForEach([
|
|
598
|
+
Zs,
|
|
599
|
+
Qs,
|
|
600
|
+
$s
|
|
601
601
|
], (e) => {
|
|
602
602
|
u = stringReplace(u, e, " ");
|
|
603
603
|
});
|
|
604
|
-
let f =
|
|
605
|
-
if (!
|
|
606
|
-
|
|
604
|
+
let f = Jc(e.nodeName);
|
|
605
|
+
if (!ul(f, c, u)) {
|
|
606
|
+
rl(a, e);
|
|
607
607
|
continue;
|
|
608
608
|
}
|
|
609
|
-
if (
|
|
609
|
+
if (R && typeof h == "object" && typeof h.getAttributeType == "function" && !o) switch (h.getAttributeType(f, c)) {
|
|
610
610
|
case "TrustedHTML":
|
|
611
|
-
u =
|
|
611
|
+
u = R.createHTML(u);
|
|
612
612
|
break;
|
|
613
613
|
case "TrustedScriptURL":
|
|
614
|
-
u =
|
|
614
|
+
u = R.createScriptURL(u);
|
|
615
615
|
break;
|
|
616
616
|
}
|
|
617
617
|
if (u !== l) try {
|
|
618
|
-
o ? e.setAttributeNS(o, a, u) : e.setAttribute(a, u),
|
|
618
|
+
o ? e.setAttributeNS(o, a, u) : e.setAttribute(a, u), ol(e) ? nl(e) : arrayPop(t.removed);
|
|
619
619
|
} catch {
|
|
620
|
-
|
|
620
|
+
rl(a, e);
|
|
621
621
|
}
|
|
622
622
|
}
|
|
623
|
-
|
|
624
|
-
},
|
|
625
|
-
let n = null, r =
|
|
626
|
-
for (
|
|
627
|
-
|
|
623
|
+
cl(H.afterSanitizeAttributes, e, null);
|
|
624
|
+
}, pl = function e(t) {
|
|
625
|
+
let n = null, r = al(t);
|
|
626
|
+
for (cl(H.beforeSanitizeShadowDOM, t, null); n = r.nextNode();) cl(H.uponSanitizeShadowNode, n, null), ll(n), fl(n), n.content instanceof a && e(n.content);
|
|
627
|
+
cl(H.afterSanitizeShadowDOM, t, null);
|
|
628
628
|
};
|
|
629
629
|
return t.sanitize = function(e) {
|
|
630
630
|
let n = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : {}, i = null, o = null, c = null, l = null;
|
|
631
|
-
if (
|
|
631
|
+
if (Bc = !e, Bc && (e = "<!-->"), typeof e != "string" && !sl(e)) if (typeof e.toString == "function") {
|
|
632
632
|
if (e = e.toString(), typeof e != "string") throw typeErrorCreate("dirty is not a string, aborting");
|
|
633
633
|
} else throw typeErrorCreate("toString is not a function");
|
|
634
634
|
if (!t.isSupported) return e;
|
|
635
|
-
if (
|
|
635
|
+
if (bc || Qc(n), t.removed = [], typeof e == "string" && (Oc = !1), Oc) {
|
|
636
636
|
if (e.nodeName) {
|
|
637
|
-
let t =
|
|
638
|
-
if (!
|
|
637
|
+
let t = Jc(e.nodeName);
|
|
638
|
+
if (!oc[t] || uc[t]) throw typeErrorCreate("root node is forbidden and cannot be sanitized in-place");
|
|
639
639
|
}
|
|
640
|
-
} else if (e instanceof s) i =
|
|
640
|
+
} else if (e instanceof s) i = il("<!---->"), o = i.ownerDocument.importNode(e, !0), o.nodeType === NODE_TYPE.element && o.nodeName === "BODY" || o.nodeName === "HTML" ? i = o : i.appendChild(o);
|
|
641
641
|
else {
|
|
642
|
-
if (!
|
|
643
|
-
if (i =
|
|
642
|
+
if (!Sc && !_c && !yc && e.indexOf("<") === -1) return R && wc ? R.createHTML(e) : e;
|
|
643
|
+
if (i = il(e), !i) return Sc ? null : wc ? B : "";
|
|
644
644
|
}
|
|
645
|
-
i &&
|
|
646
|
-
let u =
|
|
647
|
-
for (; c = u.nextNode();)
|
|
648
|
-
if (
|
|
649
|
-
if (
|
|
650
|
-
if (
|
|
645
|
+
i && xc && nl(i.firstChild);
|
|
646
|
+
let u = al(Oc ? e : i);
|
|
647
|
+
for (; c = u.nextNode();) ll(c), fl(c), c.content instanceof a && pl(c.content);
|
|
648
|
+
if (Oc) return e;
|
|
649
|
+
if (Sc) {
|
|
650
|
+
if (Cc) for (l = Js.call(i.ownerDocument); i.firstChild;) l.appendChild(i.firstChild);
|
|
651
651
|
else l = i;
|
|
652
|
-
return (
|
|
652
|
+
return (cc.shadowroot || cc.shadowrootmode) && (l = Xs.call(r, l, !0)), l;
|
|
653
653
|
}
|
|
654
|
-
let f =
|
|
655
|
-
return
|
|
656
|
-
|
|
657
|
-
|
|
658
|
-
|
|
654
|
+
let f = yc ? i.outerHTML : i.innerHTML;
|
|
655
|
+
return yc && oc["!doctype"] && i.ownerDocument && i.ownerDocument.doctype && i.ownerDocument.doctype.name && regExpTest(DOCTYPE_NAME, i.ownerDocument.doctype.name) && (f = "<!DOCTYPE " + i.ownerDocument.doctype.name + ">\n" + f), _c && arrayForEach([
|
|
656
|
+
Zs,
|
|
657
|
+
Qs,
|
|
658
|
+
$s
|
|
659
659
|
], (e) => {
|
|
660
660
|
f = stringReplace(f, e, " ");
|
|
661
|
-
}),
|
|
661
|
+
}), R && wc ? R.createHTML(f) : f;
|
|
662
662
|
}, t.setConfig = function() {
|
|
663
|
-
|
|
663
|
+
Qc(arguments.length > 0 && arguments[0] !== void 0 ? arguments[0] : {}), bc = !0;
|
|
664
664
|
}, t.clearConfig = function() {
|
|
665
|
-
|
|
665
|
+
Yc = null, bc = !1;
|
|
666
666
|
}, t.isValidAttribute = function(e, t, n) {
|
|
667
|
-
return
|
|
667
|
+
return Yc || Qc({}), ul(Jc(e), Jc(t), n);
|
|
668
668
|
}, t.addHook = function(e, t) {
|
|
669
|
-
typeof t == "function" && arrayPush(
|
|
669
|
+
typeof t == "function" && arrayPush(H[e], t);
|
|
670
670
|
}, t.removeHook = function(e, t) {
|
|
671
671
|
if (t !== void 0) {
|
|
672
|
-
let n = arrayLastIndexOf(
|
|
673
|
-
return n === -1 ? void 0 : arraySplice(
|
|
672
|
+
let n = arrayLastIndexOf(H[e], t);
|
|
673
|
+
return n === -1 ? void 0 : arraySplice(H[e], n, 1)[0];
|
|
674
674
|
}
|
|
675
|
-
return arrayPop(
|
|
675
|
+
return arrayPop(H[e]);
|
|
676
676
|
}, t.removeHooks = function(e) {
|
|
677
|
-
|
|
677
|
+
H[e] = [];
|
|
678
678
|
}, t.removeAllHooks = function() {
|
|
679
|
-
|
|
679
|
+
H = _createHooksMap();
|
|
680
680
|
}, t;
|
|
681
681
|
}
|
|
682
682
|
var purify = createDOMPurify();
|
|
@@ -21328,11 +21328,11 @@ function Button({ className: e, children: t, ...n }) {
|
|
|
21328
21328
|
});
|
|
21329
21329
|
}
|
|
21330
21330
|
function Checkbox({ checked: e, defaultChecked: t, icon: n, indeterminate: r, indeterminateIcon: i, onChange: a, disabled: o, children: s, className: c }) {
|
|
21331
|
-
let u = useRef(null), [f, p] = useState(t ?? !1),
|
|
21331
|
+
let u = useRef(null), [f, p] = useState(t ?? !1), O = e ?? f;
|
|
21332
21332
|
useEffect(() => {
|
|
21333
21333
|
u.current && (u.current.indeterminate = !!r);
|
|
21334
21334
|
}, [r]);
|
|
21335
|
-
function
|
|
21335
|
+
function A(t) {
|
|
21336
21336
|
let n = t.target.checked;
|
|
21337
21337
|
e === void 0 && p(n), a?.(n);
|
|
21338
21338
|
}
|
|
@@ -21344,17 +21344,17 @@ function Checkbox({ checked: e, defaultChecked: t, icon: n, indeterminate: r, in
|
|
|
21344
21344
|
type: "checkbox",
|
|
21345
21345
|
className: cn("p-0 absolute h-px w-px overflow-hidden whitespace-nowrap", "[clip-path:inset(50%)]", "border-0"),
|
|
21346
21346
|
disabled: o,
|
|
21347
|
-
onChange:
|
|
21347
|
+
onChange: A,
|
|
21348
21348
|
...e === void 0 ? { defaultChecked: t } : { checked: e }
|
|
21349
21349
|
}),
|
|
21350
21350
|
/* @__PURE__ */ jsx("span", {
|
|
21351
21351
|
role: "checkbox",
|
|
21352
|
-
"aria-checked": r ? "mixed" :
|
|
21352
|
+
"aria-checked": r ? "mixed" : O,
|
|
21353
21353
|
tabIndex: -1,
|
|
21354
|
-
"data-state": r ? "indeterminate" :
|
|
21354
|
+
"data-state": r ? "indeterminate" : O ? "checked" : "unchecked",
|
|
21355
21355
|
className: "checkbox-box inline-flex items-center justify-center",
|
|
21356
21356
|
children: /* @__PURE__ */ jsx("span", {
|
|
21357
|
-
className: cn("checkbox-icon", !(
|
|
21357
|
+
className: cn("checkbox-icon", !(O || r) && "opacity-0"),
|
|
21358
21358
|
children: r ? i ?? "—" : n ?? "✓"
|
|
21359
21359
|
})
|
|
21360
21360
|
}),
|
|
@@ -21372,18 +21372,18 @@ function useDropdown() {
|
|
|
21372
21372
|
return e;
|
|
21373
21373
|
}
|
|
21374
21374
|
function Dropdown({ trigger: e, children: t, align: n = "start", side: r = "bottom", offsetX: i = 0, offsetY: a = 0, disabled: o = !1, openOnHover: c = !0, open: u, onOpenChange: p }) {
|
|
21375
|
-
let
|
|
21376
|
-
e !==
|
|
21375
|
+
let O = u !== void 0, [A, R] = useState(!1), B = O ? u : A, V = useCallback((e) => {
|
|
21376
|
+
e !== B && (O || R(e), p?.(e));
|
|
21377
21377
|
}, [
|
|
21378
|
-
|
|
21379
|
-
|
|
21378
|
+
B,
|
|
21379
|
+
O,
|
|
21380
21380
|
p
|
|
21381
|
-
]),
|
|
21382
|
-
if (!
|
|
21383
|
-
let e =
|
|
21381
|
+
]), qs = useRef(null), Js = useRef(null), Ys = useRef(null), [Xs, H] = useState(null), Zs = useCallback(() => {
|
|
21382
|
+
if (!qs.current || !Js.current) return;
|
|
21383
|
+
let e = qs.current.getBoundingClientRect(), t = Js.current.getBoundingClientRect(), o = e.left;
|
|
21384
21384
|
n === "end" ? o = e.right - t.width : n === "center" && (o = e.left + (e.width - t.width) / 2), o += i;
|
|
21385
21385
|
let s;
|
|
21386
|
-
s = r === "bottom" ? e.bottom + a : e.top - t.height + a, queueMicrotask(() =>
|
|
21386
|
+
s = r === "bottom" ? e.bottom + a : e.top - t.height + a, queueMicrotask(() => H({
|
|
21387
21387
|
top: s,
|
|
21388
21388
|
left: o
|
|
21389
21389
|
}));
|
|
@@ -21394,52 +21394,52 @@ function Dropdown({ trigger: e, children: t, align: n = "start", side: r = "bott
|
|
|
21394
21394
|
a
|
|
21395
21395
|
]);
|
|
21396
21396
|
useLayoutEffect(() => {
|
|
21397
|
-
|
|
21398
|
-
}, [
|
|
21399
|
-
if (!
|
|
21400
|
-
let e = () =>
|
|
21397
|
+
B && Zs();
|
|
21398
|
+
}, [B, Zs]), useEffect(() => {
|
|
21399
|
+
if (!B) return;
|
|
21400
|
+
let e = () => Zs();
|
|
21401
21401
|
return window.addEventListener("resize", e), window.addEventListener("scroll", e, !0), () => {
|
|
21402
21402
|
window.removeEventListener("resize", e), window.removeEventListener("scroll", e, !0);
|
|
21403
21403
|
};
|
|
21404
|
-
}, [
|
|
21405
|
-
let
|
|
21406
|
-
|
|
21407
|
-
}, [
|
|
21408
|
-
|
|
21409
|
-
|
|
21404
|
+
}, [B, Zs]);
|
|
21405
|
+
let Qs = useCallback(() => {
|
|
21406
|
+
Ys.current &&= (clearTimeout(Ys.current), null), V(!0);
|
|
21407
|
+
}, [V]), $s = useCallback(() => {
|
|
21408
|
+
Ys.current = window.setTimeout(() => {
|
|
21409
|
+
V(!1);
|
|
21410
21410
|
}, 120);
|
|
21411
|
-
}, [
|
|
21411
|
+
}, [V]);
|
|
21412
21412
|
return useEffect(() => {
|
|
21413
21413
|
function e(e) {
|
|
21414
21414
|
let t = e.target;
|
|
21415
|
-
|
|
21415
|
+
qs.current?.contains(t) || Js.current?.contains(t) || V(!1);
|
|
21416
21416
|
}
|
|
21417
21417
|
return document.addEventListener("mousedown", e), () => document.removeEventListener("mousedown", e);
|
|
21418
|
-
}, [
|
|
21419
|
-
|
|
21418
|
+
}, [V]), useEffect(() => () => {
|
|
21419
|
+
Ys.current && clearTimeout(Ys.current);
|
|
21420
21420
|
}, []), /* @__PURE__ */ jsxs(DropdownContext.Provider, {
|
|
21421
21421
|
value: {
|
|
21422
|
-
close: () =>
|
|
21423
|
-
open:
|
|
21422
|
+
close: () => V(!1),
|
|
21423
|
+
open: Qs
|
|
21424
21424
|
},
|
|
21425
21425
|
children: [/* @__PURE__ */ jsx("div", {
|
|
21426
|
-
ref:
|
|
21426
|
+
ref: qs,
|
|
21427
21427
|
className: "inline-flex",
|
|
21428
|
-
onMouseEnter: c ?
|
|
21429
|
-
onMouseLeave: c ?
|
|
21430
|
-
onClick: () =>
|
|
21428
|
+
onMouseEnter: c ? Qs : void 0,
|
|
21429
|
+
onMouseLeave: c ? $s : void 0,
|
|
21430
|
+
onClick: () => V(!B),
|
|
21431
21431
|
"aria-haspopup": "menu",
|
|
21432
|
-
"aria-expanded":
|
|
21432
|
+
"aria-expanded": B,
|
|
21433
21433
|
children: e
|
|
21434
|
-
}),
|
|
21435
|
-
ref:
|
|
21436
|
-
onMouseEnter: c ?
|
|
21437
|
-
onMouseLeave: c ?
|
|
21434
|
+
}), B && !o && createPortal(/* @__PURE__ */ jsx("div", {
|
|
21435
|
+
ref: Js,
|
|
21436
|
+
onMouseEnter: c ? Qs : void 0,
|
|
21437
|
+
onMouseLeave: c ? $s : void 0,
|
|
21438
21438
|
style: {
|
|
21439
21439
|
position: "fixed",
|
|
21440
|
-
top:
|
|
21441
|
-
left:
|
|
21442
|
-
visibility:
|
|
21440
|
+
top: Xs?.top ?? 0,
|
|
21441
|
+
left: Xs?.left ?? 0,
|
|
21442
|
+
visibility: Xs ? "visible" : "hidden",
|
|
21443
21443
|
zIndex: 1e3
|
|
21444
21444
|
},
|
|
21445
21445
|
children: t
|
|
@@ -21452,7 +21452,7 @@ function Input({ type: e = "text", value: t, defaultValue: n, disabled: r = !1,
|
|
|
21452
21452
|
let t = e.target.value;
|
|
21453
21453
|
f || u(t), o?.(t);
|
|
21454
21454
|
}
|
|
21455
|
-
function
|
|
21455
|
+
function O(e) {
|
|
21456
21456
|
s?.(e);
|
|
21457
21457
|
}
|
|
21458
21458
|
return /* @__PURE__ */ jsx("input", {
|
|
@@ -21463,7 +21463,7 @@ function Input({ type: e = "text", value: t, defaultValue: n, disabled: r = !1,
|
|
|
21463
21463
|
"aria-disabled": r || void 0,
|
|
21464
21464
|
"aria-invalid": i || void 0,
|
|
21465
21465
|
onChange: h,
|
|
21466
|
-
onKeyDown:
|
|
21466
|
+
onKeyDown: O,
|
|
21467
21467
|
className: cn("bg-transparent outline-none", r && "pointer-events-none", c)
|
|
21468
21468
|
});
|
|
21469
21469
|
}
|
|
@@ -21501,17 +21501,17 @@ function getVerticalAlign(e, t, n) {
|
|
|
21501
21501
|
return n === "start" ? e.top : n === "end" ? e.bottom - t.height : e.top + e.height / 2 - t.height / 2;
|
|
21502
21502
|
}
|
|
21503
21503
|
function Tooltip({ children: e, content: t, position: n = "top", delay: r = 120, className: i }) {
|
|
21504
|
-
let a = useRef(null), o = useRef(null), s = useRef(null), [c, u] = useState(!1), [p,
|
|
21504
|
+
let a = useRef(null), o = useRef(null), s = useRef(null), [c, u] = useState(!1), [p, O] = useState(null), R = () => {
|
|
21505
21505
|
s.current &&= (clearTimeout(s.current), null), s.current = window.setTimeout(() => {
|
|
21506
21506
|
u(!0);
|
|
21507
21507
|
}, r);
|
|
21508
|
-
},
|
|
21508
|
+
}, B = () => {
|
|
21509
21509
|
s.current &&= (clearTimeout(s.current), null), u(!1);
|
|
21510
21510
|
};
|
|
21511
21511
|
return useLayoutEffect(() => {
|
|
21512
21512
|
if (!c || !a.current || !o.current) return;
|
|
21513
21513
|
let e = a.current.getBoundingClientRect(), t = o.current.getBoundingClientRect(), [r, i] = n.split("-"), s = i ?? "center", l = 0, u = 0;
|
|
21514
|
-
r === "top" || r === "bottom" ? (l = r === "top" ? e.top - t.height - 4 : e.bottom + 4, u = getHorizontalAlign(e, t, s)) : (u = r === "left" ? e.left - t.width - 4 : e.right + 4, l = getVerticalAlign(e, t, s)),
|
|
21514
|
+
r === "top" || r === "bottom" ? (l = r === "top" ? e.top - t.height - 4 : e.bottom + 4, u = getHorizontalAlign(e, t, s)) : (u = r === "left" ? e.left - t.width - 4 : e.right + 4, l = getVerticalAlign(e, t, s)), O((e) => e && e.top === l && e.left === u ? e : {
|
|
21515
21515
|
top: l,
|
|
21516
21516
|
left: u
|
|
21517
21517
|
});
|
|
@@ -21520,10 +21520,10 @@ function Tooltip({ children: e, content: t, position: n = "top", delay: r = 120,
|
|
|
21520
21520
|
}, []), /* @__PURE__ */ jsxs(Fragment$1, { children: [/* @__PURE__ */ jsx("div", {
|
|
21521
21521
|
ref: a,
|
|
21522
21522
|
className: "inline-flex",
|
|
21523
|
-
onMouseEnter:
|
|
21524
|
-
onMouseLeave:
|
|
21525
|
-
onFocus:
|
|
21526
|
-
onBlur:
|
|
21523
|
+
onMouseEnter: R,
|
|
21524
|
+
onMouseLeave: B,
|
|
21525
|
+
onFocus: R,
|
|
21526
|
+
onBlur: B,
|
|
21527
21527
|
children: e
|
|
21528
21528
|
}), c && createPortal(/* @__PURE__ */ jsx("div", {
|
|
21529
21529
|
ref: o,
|
|
@@ -22353,6 +22353,17 @@ function TeamsIcon(e) {
|
|
|
22353
22353
|
})] })]
|
|
22354
22354
|
});
|
|
22355
22355
|
}
|
|
22356
|
+
function CheckIcon({ pathProps: e, ...t }) {
|
|
22357
|
+
return /* @__PURE__ */ jsx(Icon, {
|
|
22358
|
+
viewBox: "0 0 24 24",
|
|
22359
|
+
...t,
|
|
22360
|
+
children: /* @__PURE__ */ jsx("path", {
|
|
22361
|
+
d: "M9 16.17L4.83 12l-1.42 1.41L9 19 21 7l-1.41-1.41z",
|
|
22362
|
+
fill: "currentColor",
|
|
22363
|
+
...e
|
|
22364
|
+
})
|
|
22365
|
+
});
|
|
22366
|
+
}
|
|
22356
22367
|
function CheckboxIcon({ pathProps: e, ...t }) {
|
|
22357
22368
|
return /* @__PURE__ */ jsx(Icon, {
|
|
22358
22369
|
viewBox: "0 0 16 16",
|
|
@@ -22391,6 +22402,17 @@ function CheckCircleIcon({ pathProps: e, ...t }) {
|
|
|
22391
22402
|
})
|
|
22392
22403
|
});
|
|
22393
22404
|
}
|
|
22405
|
+
function EyeFillIcon({ pathProps: e, ...t }) {
|
|
22406
|
+
return /* @__PURE__ */ jsx(Icon, {
|
|
22407
|
+
viewBox: "0 0 24 24",
|
|
22408
|
+
...t,
|
|
22409
|
+
children: /* @__PURE__ */ jsx("path", {
|
|
22410
|
+
d: "M12 4.5C7 4.5 2.73 7.61 1 12c1.73 4.39 6 7.5 11 7.5s9.27-3.11 11-7.5c-1.73-4.39-6-7.5-11-7.5zM12 17c-2.76 0-5-2.24-5-5s2.24-5 5-5 5 2.24 5 5-2.24 5-5 5zm0-8c-1.66 0-3 1.34-3 3s1.34 3 3 3 3-1.34 3-3-1.34-3-3-3z",
|
|
22411
|
+
fill: "currentColor",
|
|
22412
|
+
...e
|
|
22413
|
+
})
|
|
22414
|
+
});
|
|
22415
|
+
}
|
|
22394
22416
|
function FireFillIcon({ pathProps: e, ...t }) {
|
|
22395
22417
|
return /* @__PURE__ */ jsx(Icon, {
|
|
22396
22418
|
viewBox: "0 0 20 20",
|
|
@@ -22413,6 +22435,17 @@ function FireIcon({ pathProps: e, ...t }) {
|
|
|
22413
22435
|
})
|
|
22414
22436
|
});
|
|
22415
22437
|
}
|
|
22438
|
+
function HomeFillIcon({ pathProps: e, ...t }) {
|
|
22439
|
+
return /* @__PURE__ */ jsx(Icon, {
|
|
22440
|
+
viewBox: "0 0 24 24",
|
|
22441
|
+
...t,
|
|
22442
|
+
children: /* @__PURE__ */ jsx("path", {
|
|
22443
|
+
d: "M10 20v-6h4v6h5v-8h3L12 3 2 12h3v8z",
|
|
22444
|
+
fill: "currentColor",
|
|
22445
|
+
...e
|
|
22446
|
+
})
|
|
22447
|
+
});
|
|
22448
|
+
}
|
|
22416
22449
|
function InsightFillIcon({ pathProps: e, ...t }) {
|
|
22417
22450
|
return /* @__PURE__ */ jsxs(Icon, {
|
|
22418
22451
|
viewBox: "0 0 20 20",
|
|
@@ -22492,6 +22525,17 @@ function NotFireIcon({ pathProps: e, ...t }) {
|
|
|
22492
22525
|
})]
|
|
22493
22526
|
});
|
|
22494
22527
|
}
|
|
22528
|
+
function PatternIcon({ pathProps: e, ...t }) {
|
|
22529
|
+
return /* @__PURE__ */ jsx(Icon, {
|
|
22530
|
+
viewBox: "0 0 24 24",
|
|
22531
|
+
...t,
|
|
22532
|
+
children: /* @__PURE__ */ jsx("path", {
|
|
22533
|
+
d: "M20 8h-2.81c-.45-.78-1.07-1.45-1.82-1.96L17 4.41 15.59 3l-2.17 2.17C12.96 5.06 12.49 5 12 5c-.49 0-.96.06-1.41.17L8.41 3 7 4.41l1.62 1.63C7.88 6.55 7.26 7.22 6.81 8H4v2h2.09c-.05.33-.09.66-.09 1v1H4v2h2v1c0 .34.04.67.09 1H4v2h2.81c1.04 1.79 2.97 3 5.19 3s4.15-1.21 5.19-3H20v-2h-2.09c.05-.33.09-.66.09-1v-1h2v-2h-2v-1c0-.34-.04-.67-.09-1H20V8zm-6 8h-4v-2h4v2zm0-4h-4v-2h4v2z",
|
|
22534
|
+
fill: "currentColor",
|
|
22535
|
+
...e
|
|
22536
|
+
})
|
|
22537
|
+
});
|
|
22538
|
+
}
|
|
22495
22539
|
function ReadIcon({ pathProps: e, ...t }) {
|
|
22496
22540
|
return /* @__PURE__ */ jsx(Icon, {
|
|
22497
22541
|
viewBox: "0 0 20 20",
|
|
@@ -22514,6 +22558,17 @@ function UnreadIcon({ pathProps: e, ...t }) {
|
|
|
22514
22558
|
})
|
|
22515
22559
|
});
|
|
22516
22560
|
}
|
|
22561
|
+
function WarningIcon({ pathProps: e, ...t }) {
|
|
22562
|
+
return /* @__PURE__ */ jsx(Icon, {
|
|
22563
|
+
viewBox: "0 0 24 24",
|
|
22564
|
+
...t,
|
|
22565
|
+
children: /* @__PURE__ */ jsx("path", {
|
|
22566
|
+
d: "M1 21h22L12 2 1 21zm12-3h-2v-2h2v2zm0-4h-2v-4h2v4z",
|
|
22567
|
+
fill: "currentColor",
|
|
22568
|
+
...e
|
|
22569
|
+
})
|
|
22570
|
+
});
|
|
22571
|
+
}
|
|
22517
22572
|
function AccountIcon({ pathProps: e, ...t }) {
|
|
22518
22573
|
return /* @__PURE__ */ jsx(Icon, {
|
|
22519
22574
|
viewBox: "0 0 24 24",
|
|
@@ -22525,6 +22580,25 @@ function AccountIcon({ pathProps: e, ...t }) {
|
|
|
22525
22580
|
})
|
|
22526
22581
|
});
|
|
22527
22582
|
}
|
|
22583
|
+
function AccountOutlineIcon({ pathProps: e, ...t }) {
|
|
22584
|
+
return /* @__PURE__ */ jsxs(Icon, {
|
|
22585
|
+
viewBox: "0 0 24 24",
|
|
22586
|
+
...t,
|
|
22587
|
+
children: [/* @__PURE__ */ jsx("circle", {
|
|
22588
|
+
cx: "12",
|
|
22589
|
+
cy: "8",
|
|
22590
|
+
r: "4",
|
|
22591
|
+
stroke: "currentColor",
|
|
22592
|
+
strokeWidth: "2"
|
|
22593
|
+
}), /* @__PURE__ */ jsx("path", {
|
|
22594
|
+
d: "M4 20c0-4 4-6 8-6s8 2 8 6",
|
|
22595
|
+
stroke: "currentColor",
|
|
22596
|
+
strokeWidth: "2",
|
|
22597
|
+
strokeLinecap: "round",
|
|
22598
|
+
...e
|
|
22599
|
+
})]
|
|
22600
|
+
});
|
|
22601
|
+
}
|
|
22528
22602
|
function AddCircleIcon({ pathProps: e, ...t }) {
|
|
22529
22603
|
return /* @__PURE__ */ jsx(Icon, {
|
|
22530
22604
|
viewBox: "0 0 24 24",
|
|
@@ -22568,6 +22642,47 @@ function ArrowIcon({ direction: e = "down", className: t, pathProps: n, ...r })
|
|
|
22568
22642
|
})
|
|
22569
22643
|
});
|
|
22570
22644
|
}
|
|
22645
|
+
function BuildingIcon({ pathProps: e, ...t }) {
|
|
22646
|
+
return /* @__PURE__ */ jsx(Icon, {
|
|
22647
|
+
viewBox: "0 0 24 24",
|
|
22648
|
+
...t,
|
|
22649
|
+
children: /* @__PURE__ */ jsx("path", {
|
|
22650
|
+
d: "M5 21V4C5 3.45 5.196 2.979 5.588 2.587C5.98 2.195 6.45 1.999 7 1.999H13C13.55 1.999 14.021 2.195 14.413 2.587C14.805 2.979 15.001 3.45 15.001 4V21H19.001V10H17.001V8H19.001C19.55 8 20.021 8.196 20.413 8.588C20.805 8.98 21.001 9.45 21.001 10V21H23.001V23H1V21H3V4C3 3.45 3.196 2.979 3.588 2.587C3.98 2.195 4.45 1.999 5 1.999V21ZM7 8H9V6H7V8ZM7 12H9V10H7V12ZM7 16H9V14H7V16ZM11 8H13V6H11V8ZM11 12H13V10H11V12ZM11 16H13V14H11V16Z",
|
|
22651
|
+
fill: "currentColor",
|
|
22652
|
+
...e
|
|
22653
|
+
})
|
|
22654
|
+
});
|
|
22655
|
+
}
|
|
22656
|
+
function BuildingOutlineIcon({ pathProps: e, ...t }) {
|
|
22657
|
+
return /* @__PURE__ */ jsxs(Icon, {
|
|
22658
|
+
viewBox: "0 0 24 24",
|
|
22659
|
+
...t,
|
|
22660
|
+
children: [
|
|
22661
|
+
/* @__PURE__ */ jsx("rect", {
|
|
22662
|
+
x: "4",
|
|
22663
|
+
y: "3",
|
|
22664
|
+
width: "16",
|
|
22665
|
+
height: "18",
|
|
22666
|
+
rx: "1",
|
|
22667
|
+
stroke: "currentColor",
|
|
22668
|
+
strokeWidth: "2"
|
|
22669
|
+
}),
|
|
22670
|
+
/* @__PURE__ */ jsx("path", {
|
|
22671
|
+
d: "M9 21v-4a1 1 0 0 1 1-1h4a1 1 0 0 1 1 1v4",
|
|
22672
|
+
stroke: "currentColor",
|
|
22673
|
+
strokeWidth: "2",
|
|
22674
|
+
...e
|
|
22675
|
+
}),
|
|
22676
|
+
/* @__PURE__ */ jsx("path", {
|
|
22677
|
+
d: "M8 7h.01M12 7h.01M16 7h.01M8 11h.01M12 11h.01M16 11h.01",
|
|
22678
|
+
stroke: "currentColor",
|
|
22679
|
+
strokeWidth: "2",
|
|
22680
|
+
strokeLinecap: "round",
|
|
22681
|
+
...e
|
|
22682
|
+
})
|
|
22683
|
+
]
|
|
22684
|
+
});
|
|
22685
|
+
}
|
|
22571
22686
|
function CalendarIcon({ pathProps: e, ...t }) {
|
|
22572
22687
|
return /* @__PURE__ */ jsx(Icon, {
|
|
22573
22688
|
viewBox: "0 0 24 24",
|
|
@@ -22590,6 +22705,20 @@ function CheckSquareIcon({ pathProps: e, ...t }) {
|
|
|
22590
22705
|
})
|
|
22591
22706
|
});
|
|
22592
22707
|
}
|
|
22708
|
+
function CloseBoldIcon({ pathProps: e, ...t }) {
|
|
22709
|
+
return /* @__PURE__ */ jsx(Icon, {
|
|
22710
|
+
viewBox: "0 0 16 16",
|
|
22711
|
+
...t,
|
|
22712
|
+
children: /* @__PURE__ */ jsx("path", {
|
|
22713
|
+
d: "M12 4L4 12M4 4L12 12",
|
|
22714
|
+
stroke: "currentColor",
|
|
22715
|
+
strokeWidth: "2",
|
|
22716
|
+
strokeLinecap: "round",
|
|
22717
|
+
strokeLinejoin: "round",
|
|
22718
|
+
...e
|
|
22719
|
+
})
|
|
22720
|
+
});
|
|
22721
|
+
}
|
|
22593
22722
|
function CloseIcon({ pathProps: e, ...t }) {
|
|
22594
22723
|
return /* @__PURE__ */ jsx(Icon, {
|
|
22595
22724
|
viewBox: "0 0 24 24",
|
|
@@ -23003,36 +23132,36 @@ function OnboardingEngine({ steps: e, context: t, storageKey: n, isEnabled: r =
|
|
|
23003
23132
|
e,
|
|
23004
23133
|
o,
|
|
23005
23134
|
t
|
|
23006
|
-
]),
|
|
23135
|
+
]), O = h?.step ?? null, Gs = h?.index ?? null, Ks = useCallback((e) => {
|
|
23007
23136
|
c((t) => {
|
|
23008
23137
|
if (t.has(e)) return t;
|
|
23009
23138
|
let n = new Set(t);
|
|
23010
23139
|
return n.add(e), n;
|
|
23011
23140
|
});
|
|
23012
|
-
}, []),
|
|
23141
|
+
}, []), R = useCallback(() => {
|
|
23013
23142
|
c((n) => {
|
|
23014
23143
|
let r = findActiveStep(e, n, t);
|
|
23015
23144
|
if (r == null || n.has(r.step.id)) return n;
|
|
23016
23145
|
let i = new Set(n);
|
|
23017
23146
|
return i.add(r.step.id), i;
|
|
23018
23147
|
});
|
|
23019
|
-
}, [e, t]),
|
|
23148
|
+
}, [e, t]), B = useCallback(() => {
|
|
23020
23149
|
c(new Set(e.map((e) => e.id)));
|
|
23021
23150
|
}, [e]);
|
|
23022
23151
|
return /* @__PURE__ */ jsx(Fragment$1, { children: i({
|
|
23023
23152
|
context: t,
|
|
23024
|
-
currentStep:
|
|
23025
|
-
currentStepIndex:
|
|
23153
|
+
currentStep: O,
|
|
23154
|
+
currentStepIndex: Gs,
|
|
23026
23155
|
dismissedStepIds: o,
|
|
23027
23156
|
actions: useMemo(() => ({
|
|
23028
|
-
dismissCurrentStep:
|
|
23029
|
-
dismissStep:
|
|
23030
|
-
skipAll:
|
|
23031
|
-
close:
|
|
23157
|
+
dismissCurrentStep: R,
|
|
23158
|
+
dismissStep: Ks,
|
|
23159
|
+
skipAll: B,
|
|
23160
|
+
close: B
|
|
23032
23161
|
}), [
|
|
23033
|
-
|
|
23034
|
-
|
|
23035
|
-
|
|
23162
|
+
R,
|
|
23163
|
+
Ks,
|
|
23164
|
+
B
|
|
23036
23165
|
])
|
|
23037
23166
|
}) });
|
|
23038
23167
|
}
|
|
@@ -23204,7 +23333,7 @@ function useToastTimers(e, t) {
|
|
|
23204
23333
|
isPaused: !0
|
|
23205
23334
|
});
|
|
23206
23335
|
}), a.current &&= (clearInterval(a.current), null);
|
|
23207
|
-
}, []),
|
|
23336
|
+
}, []), O = useCallback(() => {
|
|
23208
23337
|
o.current && (o.current = !1, i.current.forEach((t, n) => {
|
|
23209
23338
|
if (t.isPaused && t.remainingTime > 0) {
|
|
23210
23339
|
let r = e.find((e) => e.id === n);
|
|
@@ -23215,7 +23344,7 @@ function useToastTimers(e, t) {
|
|
|
23215
23344
|
e,
|
|
23216
23345
|
u,
|
|
23217
23346
|
f
|
|
23218
|
-
]),
|
|
23347
|
+
]), A = useCallback((e) => {
|
|
23219
23348
|
i.current.delete(e), r((t) => {
|
|
23220
23349
|
let n = new Map(t);
|
|
23221
23350
|
return n.delete(e), n;
|
|
@@ -23236,22 +23365,22 @@ function useToastTimers(e, t) {
|
|
|
23236
23365
|
}, []), {
|
|
23237
23366
|
remainingTimes: n,
|
|
23238
23367
|
pauseAll: p,
|
|
23239
|
-
resumeAll:
|
|
23240
|
-
cleanupTimer:
|
|
23368
|
+
resumeAll: O,
|
|
23369
|
+
cleanupTimer: A
|
|
23241
23370
|
};
|
|
23242
23371
|
}
|
|
23243
23372
|
function Toaster() {
|
|
23244
23373
|
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);
|
|
23245
23374
|
useEffect(() => toastStore.subscribe(t), []);
|
|
23246
|
-
let
|
|
23375
|
+
let R = useSyncExternalStore(subscribeNoop$1, getClientSnapshot$1, getServerSnapshot$1), B = useCallback((e) => {
|
|
23247
23376
|
e.callbacks?.onOpen?.();
|
|
23248
|
-
}, []),
|
|
23377
|
+
}, []), V = useCallback((e, t) => {
|
|
23249
23378
|
t === "manual" ? e.callbacks?.onClose?.() : (t === "timeout" || t === "replaced") && e.callbacks?.onAutoClose?.(), e.callbacks?.onDismiss?.(t);
|
|
23250
23379
|
}, []);
|
|
23251
23380
|
useEffect(() => {
|
|
23252
23381
|
let t = new Set(e.map((e) => e.id)), n = new Map(e.map((e) => [e.id, e])), s = i.current;
|
|
23253
23382
|
o.current.filter((e) => !t.has(e.id) && e.animationState !== "exiting").forEach((e) => {
|
|
23254
|
-
|
|
23383
|
+
V(e, a.current.get(e.id) ?? toastStore.consumePendingDismissReason(e.id) ?? "timeout"), a.current.delete(e.id);
|
|
23255
23384
|
}), r((r) => {
|
|
23256
23385
|
let i = r.map((e) => {
|
|
23257
23386
|
let t = n.get(e.id);
|
|
@@ -23260,7 +23389,7 @@ function Toaster() {
|
|
|
23260
23389
|
content: t.content,
|
|
23261
23390
|
duration: t.duration
|
|
23262
23391
|
} : e;
|
|
23263
|
-
}).map((e) => markAsExiting(e, !t.has(e.id))).map(updateAnimationState), a = [...e.filter((e) => !s.has(e.id)).map((e) => (
|
|
23392
|
+
}).map((e) => markAsExiting(e, !t.has(e.id))).map(updateAnimationState), a = [...e.filter((e) => !s.has(e.id)).map((e) => (B(e), {
|
|
23264
23393
|
...e,
|
|
23265
23394
|
animationState: "entering"
|
|
23266
23395
|
})), ...i];
|
|
@@ -23268,20 +23397,20 @@ function Toaster() {
|
|
|
23268
23397
|
}), i.current = t;
|
|
23269
23398
|
}, [
|
|
23270
23399
|
e,
|
|
23271
|
-
|
|
23272
|
-
|
|
23400
|
+
B,
|
|
23401
|
+
V
|
|
23273
23402
|
]);
|
|
23274
|
-
let
|
|
23403
|
+
let qs = useCallback((e) => {
|
|
23275
23404
|
r((t) => {
|
|
23276
23405
|
let n = t.filter((t) => t.id !== e);
|
|
23277
23406
|
return o.current = n, n;
|
|
23278
23407
|
}), p(e), toastStore.cleanup(e);
|
|
23279
|
-
}, [p]),
|
|
23408
|
+
}, [p]), Js = useCallback((e) => {
|
|
23280
23409
|
a.current.set(e, "manual"), toastStore.remove(e);
|
|
23281
23410
|
}, []);
|
|
23282
|
-
if (!
|
|
23283
|
-
let
|
|
23284
|
-
return createPortal(/* @__PURE__ */ jsx(Fragment$1, { children: Object.entries(
|
|
23411
|
+
if (!R) return null;
|
|
23412
|
+
let Ys = groupByPosition(n);
|
|
23413
|
+
return createPortal(/* @__PURE__ */ jsx(Fragment$1, { children: Object.entries(Ys).map(([e, t]) => {
|
|
23285
23414
|
let n = t.filter((e) => e.singleSlot), r = t.filter((e) => !e.singleSlot), i = n.length > 0 ? /* @__PURE__ */ jsx("div", {
|
|
23286
23415
|
className: cn("isolate inline-grid max-w-[min(100vw,100%)] grid-cols-1 grid-rows-1", SINGLE_SLOT_PLACE[e]),
|
|
23287
23416
|
children: n.map((e, t) => /* @__PURE__ */ jsx("div", {
|
|
@@ -23290,8 +23419,8 @@ function Toaster() {
|
|
|
23290
23419
|
children: /* @__PURE__ */ jsx(ToastWrapper, {
|
|
23291
23420
|
toast: e,
|
|
23292
23421
|
remainingTime: c.get(e.id) ?? e.duration,
|
|
23293
|
-
onExitComplete:
|
|
23294
|
-
onClose:
|
|
23422
|
+
onExitComplete: qs,
|
|
23423
|
+
onClose: Js,
|
|
23295
23424
|
onHoverStart: u,
|
|
23296
23425
|
onHoverEnd: f
|
|
23297
23426
|
})
|
|
@@ -23299,8 +23428,8 @@ function Toaster() {
|
|
|
23299
23428
|
}) : null, a = r.map((e) => /* @__PURE__ */ jsx(ToastWrapper, {
|
|
23300
23429
|
toast: e,
|
|
23301
23430
|
remainingTime: c.get(e.id) ?? e.duration,
|
|
23302
|
-
onExitComplete:
|
|
23303
|
-
onClose:
|
|
23431
|
+
onExitComplete: qs,
|
|
23432
|
+
onClose: Js,
|
|
23304
23433
|
onHoverStart: u,
|
|
23305
23434
|
onHoverEnd: f
|
|
23306
23435
|
}, e.id));
|
|
@@ -23479,6 +23608,18 @@ function StatusBadge({ className: e, label: t, status: n, onAction: r, density:
|
|
|
23479
23608
|
onMouseLeave: s ? () => o(!1) : void 0
|
|
23480
23609
|
});
|
|
23481
23610
|
}
|
|
23611
|
+
function BetaResizeHandle({ onPointerDown: e, onKeyDown: t, isResizing: n = !1, className: r }) {
|
|
23612
|
+
return /* @__PURE__ */ jsx("div", {
|
|
23613
|
+
role: "separator",
|
|
23614
|
+
"aria-orientation": "vertical",
|
|
23615
|
+
"aria-label": "Resize panel",
|
|
23616
|
+
tabIndex: 0,
|
|
23617
|
+
onPointerDown: e,
|
|
23618
|
+
onKeyDown: t,
|
|
23619
|
+
className: cn("flex w-2 shrink-0 cursor-col-resize items-center justify-center transition-colors max-md:hidden", n ? "bg-primary-500/20" : "bg-neutral-100 hover:bg-primary-500/20", r),
|
|
23620
|
+
children: /* @__PURE__ */ jsx("div", { className: cn("h-8 w-px rounded-full transition-colors", n ? "bg-primary-500" : "bg-resize-handle-grip") })
|
|
23621
|
+
});
|
|
23622
|
+
}
|
|
23482
23623
|
function BulkActionsSkeleton({ className: e }) {
|
|
23483
23624
|
return /* @__PURE__ */ jsxs("div", {
|
|
23484
23625
|
className: cn("gap-4 grid grid-cols-[minmax(0,1fr)_auto_auto] items-center", e),
|
|
@@ -23515,10 +23656,10 @@ function BulkActions({ totalItems: e = 0, selectedItems: t = 0, onSelectAll: n,
|
|
|
23515
23656
|
let s = e > 0, c = s && t === e, l = s && t > 0 && t < e, u = c ? `All (${e})` : l ? `${t}/${e} selected` : `Select all (${e})`, [f, p] = useState(i ?? "normal"), h = () => {
|
|
23516
23657
|
n(!c);
|
|
23517
23658
|
};
|
|
23518
|
-
function
|
|
23659
|
+
function O(e) {
|
|
23519
23660
|
p(e), a?.(e);
|
|
23520
23661
|
}
|
|
23521
|
-
let
|
|
23662
|
+
let Ks = {
|
|
23522
23663
|
fire: [{
|
|
23523
23664
|
id: "fire",
|
|
23524
23665
|
tooltip: "Mark as fire",
|
|
@@ -23570,7 +23711,7 @@ function BulkActions({ totalItems: e = 0, selectedItems: t = 0, onSelectAll: n,
|
|
|
23570
23711
|
}),
|
|
23571
23712
|
onClick: r.read.off
|
|
23572
23713
|
}]
|
|
23573
|
-
},
|
|
23714
|
+
}, R = [{
|
|
23574
23715
|
value: "normal",
|
|
23575
23716
|
tooltip: "Normal density",
|
|
23576
23717
|
icon: /* @__PURE__ */ jsx(NormalDensityIcon, { size: 20 })
|
|
@@ -23599,7 +23740,7 @@ function BulkActions({ totalItems: e = 0, selectedItems: t = 0, onSelectAll: n,
|
|
|
23599
23740
|
}),
|
|
23600
23741
|
/* @__PURE__ */ jsx("div", {
|
|
23601
23742
|
className: "flex items-center divide-x divide-neutral-400-variant-1",
|
|
23602
|
-
children: t > 0 && /* @__PURE__ */ jsx(Fragment$1, { children: Object.entries(
|
|
23743
|
+
children: t > 0 && /* @__PURE__ */ jsx(Fragment$1, { children: Object.entries(Ks).map(([e, t]) => /* @__PURE__ */ jsx("div", {
|
|
23603
23744
|
className: "gap-2 px-1 flex items-center",
|
|
23604
23745
|
children: t.map((e) => /* @__PURE__ */ jsx(InfoTooltip, {
|
|
23605
23746
|
content: e.tooltip,
|
|
@@ -23614,13 +23755,13 @@ function BulkActions({ totalItems: e = 0, selectedItems: t = 0, onSelectAll: n,
|
|
|
23614
23755
|
}),
|
|
23615
23756
|
/* @__PURE__ */ jsx("div", {
|
|
23616
23757
|
className: "gap-2 flex items-center",
|
|
23617
|
-
children:
|
|
23758
|
+
children: R.map(({ value: e, tooltip: t, icon: n }) => {
|
|
23618
23759
|
let r = f === e;
|
|
23619
23760
|
return /* @__PURE__ */ jsx(InfoTooltip, {
|
|
23620
23761
|
content: t,
|
|
23621
23762
|
children: /* @__PURE__ */ jsx(IconButton, {
|
|
23622
23763
|
className: cn("h-7 w-7 p-0 text-neutral-900", r && "bg-white-variant-4"),
|
|
23623
|
-
onClick: () =>
|
|
23764
|
+
onClick: () => O(e),
|
|
23624
23765
|
icon: n,
|
|
23625
23766
|
"aria-pressed": r
|
|
23626
23767
|
})
|
|
@@ -23871,20 +24012,20 @@ function ToggleControlPortal({ isPressed: e, isPortalHovered: t, portalPosition:
|
|
|
23871
24012
|
})
|
|
23872
24013
|
}), document.body);
|
|
23873
24014
|
}
|
|
23874
|
-
function IconCountButton({ icon: e, label: t, count: n, variant: r = "primary", orientation: i = "vertical", status: a = "active", alwaysShowCount: o = !1, showToggleControl: s = !1, pressed: c, defaultPressed: l = !1, onPressedChange: u, classNames: p, ...
|
|
23875
|
-
let
|
|
24015
|
+
function IconCountButton({ icon: e, label: t, count: n, variant: r = "primary", orientation: i = "vertical", status: a = "active", alwaysShowCount: o = !1, showToggleControl: s = !1, pressed: c, defaultPressed: l = !1, onPressedChange: u, classNames: p, ...O }) {
|
|
24016
|
+
let A = iconCountButtonStyles({
|
|
23876
24017
|
variant: r,
|
|
23877
24018
|
orientation: i,
|
|
23878
24019
|
status: a
|
|
23879
|
-
}),
|
|
23880
|
-
function
|
|
23881
|
-
c === void 0 &&
|
|
24020
|
+
}), Ks = useRef(null), [R, B] = useState(!1), [V, qs] = useState(!1), [Js, Ys] = useState(l), [Xs, H] = useState(null), Zs = c ?? Js, Qs = s && (R || V || Zs), $s = typeof n == "number" && n > 0 && (o || a === "active");
|
|
24021
|
+
function ec(e) {
|
|
24022
|
+
c === void 0 && Ys(e), u?.(e);
|
|
23882
24023
|
}
|
|
23883
24024
|
return useLayoutEffect(() => {
|
|
23884
|
-
if (!
|
|
24025
|
+
if (!Qs || !Ks.current) return;
|
|
23885
24026
|
function e() {
|
|
23886
|
-
let e =
|
|
23887
|
-
e &&
|
|
24027
|
+
let e = Ks.current?.getBoundingClientRect();
|
|
24028
|
+
e && H({
|
|
23888
24029
|
top: e.top - 8,
|
|
23889
24030
|
left: e.right - 12
|
|
23890
24031
|
});
|
|
@@ -23892,30 +24033,30 @@ function IconCountButton({ icon: e, label: t, count: n, variant: r = "primary",
|
|
|
23892
24033
|
return e(), window.addEventListener("resize", e), window.addEventListener("scroll", e, !0), () => {
|
|
23893
24034
|
window.removeEventListener("resize", e), window.removeEventListener("scroll", e, !0);
|
|
23894
24035
|
};
|
|
23895
|
-
}, [
|
|
23896
|
-
...
|
|
23897
|
-
className: cn(
|
|
23898
|
-
onMouseEnter: () =>
|
|
23899
|
-
onMouseLeave: () =>
|
|
24036
|
+
}, [Qs]), /* @__PURE__ */ jsxs(Button, {
|
|
24037
|
+
...O,
|
|
24038
|
+
className: cn(A.root(), p?.root),
|
|
24039
|
+
onMouseEnter: () => B(!0),
|
|
24040
|
+
onMouseLeave: () => B(!1),
|
|
23900
24041
|
children: [/* @__PURE__ */ jsxs("div", {
|
|
23901
24042
|
className: "relative",
|
|
23902
24043
|
children: [/* @__PURE__ */ jsx("div", {
|
|
23903
|
-
ref:
|
|
23904
|
-
className: cn(
|
|
23905
|
-
children: renderIcon(e,
|
|
23906
|
-
}),
|
|
23907
|
-
isPressed:
|
|
23908
|
-
isPortalHovered:
|
|
23909
|
-
portalPosition:
|
|
23910
|
-
onMouseEnter: () =>
|
|
23911
|
-
onMouseLeave: () =>
|
|
23912
|
-
onToggle: () =>
|
|
24044
|
+
ref: Ks,
|
|
24045
|
+
className: cn(A.bubble(), p?.bubble),
|
|
24046
|
+
children: renderIcon(e, A.icon())
|
|
24047
|
+
}), Qs && Xs && typeof document < "u" && ToggleControlPortal({
|
|
24048
|
+
isPressed: Zs,
|
|
24049
|
+
isPortalHovered: V,
|
|
24050
|
+
portalPosition: Xs,
|
|
24051
|
+
onMouseEnter: () => qs(!0),
|
|
24052
|
+
onMouseLeave: () => qs(!1),
|
|
24053
|
+
onToggle: () => ec(!Zs)
|
|
23913
24054
|
})]
|
|
23914
24055
|
}), /* @__PURE__ */ jsxs("div", {
|
|
23915
|
-
className: cn(
|
|
23916
|
-
children: [/* @__PURE__ */ jsx("span", { children: t }),
|
|
24056
|
+
className: cn(A.label(), p?.label),
|
|
24057
|
+
children: [/* @__PURE__ */ jsx("span", { children: t }), $s && /* @__PURE__ */ jsxs("span", {
|
|
23917
24058
|
"aria-label": `${n} items`,
|
|
23918
|
-
className: cn(
|
|
24059
|
+
className: cn(A.count(), p?.count),
|
|
23919
24060
|
children: [
|
|
23920
24061
|
"(",
|
|
23921
24062
|
formatCount(n),
|
|
@@ -23947,7 +24088,7 @@ function ActionMenu({ trigger: e, children: t, className: n, ...r }) {
|
|
|
23947
24088
|
});
|
|
23948
24089
|
}
|
|
23949
24090
|
function CalendarPanel({ mode: e, selectedDate: t, selectedRange: n, onDateSelect: r, onRangeSelect: i }) {
|
|
23950
|
-
let { close: a } = useDropdown(), o = useMemo(() => /* @__PURE__ */ new Date(), []), [s, c] = useState(null), u = useRef(t), f = useRef(n), [
|
|
24091
|
+
let { close: a } = useDropdown(), o = useMemo(() => /* @__PURE__ */ new Date(), []), [s, c] = useState(null), u = useRef(t), f = useRef(n), [O, A] = useState(() => {
|
|
23951
24092
|
let r = e === "single" ? t ?? o : n.startDate ?? n.endDate ?? o;
|
|
23952
24093
|
return {
|
|
23953
24094
|
year: r.getFullYear(),
|
|
@@ -23956,13 +24097,13 @@ function CalendarPanel({ mode: e, selectedDate: t, selectedRange: n, onDateSelec
|
|
|
23956
24097
|
});
|
|
23957
24098
|
useEffect(() => {
|
|
23958
24099
|
(e === "single" && t && (!u.current || t.getTime() !== u.current.getTime()) || e === "range" && (n.startDate?.getTime() !== f.current.startDate?.getTime() || n.endDate?.getTime() !== f.current.endDate?.getTime())) && queueMicrotask(() => {
|
|
23959
|
-
if (e === "single" && t)
|
|
24100
|
+
if (e === "single" && t) A({
|
|
23960
24101
|
year: t.getFullYear(),
|
|
23961
24102
|
month: t.getMonth()
|
|
23962
24103
|
});
|
|
23963
24104
|
else if (e === "range") {
|
|
23964
24105
|
let e = n.startDate ?? n.endDate;
|
|
23965
|
-
e &&
|
|
24106
|
+
e && A({
|
|
23966
24107
|
year: e.getFullYear(),
|
|
23967
24108
|
month: e.getMonth()
|
|
23968
24109
|
});
|
|
@@ -23973,10 +24114,10 @@ function CalendarPanel({ mode: e, selectedDate: t, selectedRange: n, onDateSelec
|
|
|
23973
24114
|
t,
|
|
23974
24115
|
n
|
|
23975
24116
|
]);
|
|
23976
|
-
let
|
|
23977
|
-
function
|
|
24117
|
+
let Ks = useMemo(() => generateCalendarDays(O.year, O.month), [O.year, O.month]);
|
|
24118
|
+
function R(t) {
|
|
23978
24119
|
let o = t.getMonth(), s = t.getFullYear();
|
|
23979
|
-
if ((o !==
|
|
24120
|
+
if ((o !== O.month || s !== O.year) && A({
|
|
23980
24121
|
year: s,
|
|
23981
24122
|
month: o
|
|
23982
24123
|
}), e === "single") r(t), a();
|
|
@@ -23991,8 +24132,8 @@ function CalendarPanel({ mode: e, selectedDate: t, selectedRange: n, onDateSelec
|
|
|
23991
24132
|
}), a());
|
|
23992
24133
|
}
|
|
23993
24134
|
}
|
|
23994
|
-
function
|
|
23995
|
-
|
|
24135
|
+
function B() {
|
|
24136
|
+
A((e) => e.month === 0 ? {
|
|
23996
24137
|
year: e.year - 1,
|
|
23997
24138
|
month: 11
|
|
23998
24139
|
} : {
|
|
@@ -24000,8 +24141,8 @@ function CalendarPanel({ mode: e, selectedDate: t, selectedRange: n, onDateSelec
|
|
|
24000
24141
|
month: e.month - 1
|
|
24001
24142
|
});
|
|
24002
24143
|
}
|
|
24003
|
-
function
|
|
24004
|
-
|
|
24144
|
+
function V() {
|
|
24145
|
+
A((e) => e.month === 11 ? {
|
|
24005
24146
|
year: e.year + 1,
|
|
24006
24147
|
month: 0
|
|
24007
24148
|
} : {
|
|
@@ -24009,7 +24150,7 @@ function CalendarPanel({ mode: e, selectedDate: t, selectedRange: n, onDateSelec
|
|
|
24009
24150
|
month: e.month + 1
|
|
24010
24151
|
});
|
|
24011
24152
|
}
|
|
24012
|
-
let
|
|
24153
|
+
let qs = getWeekdays();
|
|
24013
24154
|
return /* @__PURE__ */ jsxs("div", {
|
|
24014
24155
|
className: "mt-1 rounded-lg p-2 shadow-lg w-fit border border-neutral-400 bg-white",
|
|
24015
24156
|
children: [
|
|
@@ -24021,16 +24162,16 @@ function CalendarPanel({ mode: e, selectedDate: t, selectedRange: n, onDateSelec
|
|
|
24021
24162
|
direction: "left",
|
|
24022
24163
|
size: 20
|
|
24023
24164
|
}),
|
|
24024
|
-
onClick:
|
|
24165
|
+
onClick: B,
|
|
24025
24166
|
className: "hover:opacity-60",
|
|
24026
24167
|
"aria-label": "Previous month"
|
|
24027
24168
|
}),
|
|
24028
24169
|
/* @__PURE__ */ jsxs("div", {
|
|
24029
24170
|
className: "font-bold text-[10px] text-neutral-900",
|
|
24030
24171
|
children: [
|
|
24031
|
-
getMonthName(
|
|
24172
|
+
getMonthName(O.month),
|
|
24032
24173
|
" ",
|
|
24033
|
-
|
|
24174
|
+
O.year
|
|
24034
24175
|
]
|
|
24035
24176
|
}),
|
|
24036
24177
|
/* @__PURE__ */ jsx(IconButton, {
|
|
@@ -24038,7 +24179,7 @@ function CalendarPanel({ mode: e, selectedDate: t, selectedRange: n, onDateSelec
|
|
|
24038
24179
|
direction: "right",
|
|
24039
24180
|
size: 20
|
|
24040
24181
|
}),
|
|
24041
|
-
onClick:
|
|
24182
|
+
onClick: V,
|
|
24042
24183
|
className: "hover:opacity-60",
|
|
24043
24184
|
"aria-label": "Next month"
|
|
24044
24185
|
})
|
|
@@ -24046,20 +24187,20 @@ function CalendarPanel({ mode: e, selectedDate: t, selectedRange: n, onDateSelec
|
|
|
24046
24187
|
}),
|
|
24047
24188
|
/* @__PURE__ */ jsx("div", {
|
|
24048
24189
|
className: "mb-2 grid grid-cols-7",
|
|
24049
|
-
children:
|
|
24190
|
+
children: qs.map((e) => /* @__PURE__ */ jsx("div", {
|
|
24050
24191
|
className: "p-0.5 font-bold flex items-center justify-center text-[9px] text-neutral-900",
|
|
24051
24192
|
children: e
|
|
24052
24193
|
}, e))
|
|
24053
24194
|
}),
|
|
24054
24195
|
/* @__PURE__ */ jsx("div", {
|
|
24055
24196
|
className: "grid grid-cols-7",
|
|
24056
|
-
children:
|
|
24057
|
-
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),
|
|
24058
|
-
e === "range" && u && !f && s && !isDateBefore(s, u) ? (
|
|
24059
|
-
let
|
|
24197
|
+
children: Ks.map(({ day: r, date: i, isCurrentMonth: a }) => {
|
|
24198
|
+
let o = isToday(i), l = e === "single" && t && isSameDay(i, t), { startDate: u, endDate: f } = n, p = u && isSameDay(i, u), h = f && isSameDay(i, f), g = u, O = s;
|
|
24199
|
+
e === "range" && u && !f && s && !isDateBefore(s, u) ? (g = u, O = s) : (g = null, O = null);
|
|
24200
|
+
let A = e === "range" && (isDateInRange(i, u, f) || isDateInRange(i, g, O)), Gs = l || p || h;
|
|
24060
24201
|
return /* @__PURE__ */ jsx(Button, {
|
|
24061
24202
|
type: "button",
|
|
24062
|
-
onClick: () =>
|
|
24203
|
+
onClick: () => R(i),
|
|
24063
24204
|
onMouseEnter: () => {
|
|
24064
24205
|
e === "range" && u && !f && !isDateBefore(i, u) && c(i);
|
|
24065
24206
|
},
|
|
@@ -24068,9 +24209,9 @@ function CalendarPanel({ mode: e, selectedDate: t, selectedRange: n, onDateSelec
|
|
|
24068
24209
|
},
|
|
24069
24210
|
className: "p-0.5",
|
|
24070
24211
|
"aria-label": `Select ${formatDate(i)}`,
|
|
24071
|
-
"aria-selected":
|
|
24212
|
+
"aria-selected": Gs || void 0,
|
|
24072
24213
|
children: /* @__PURE__ */ jsx("div", {
|
|
24073
|
-
className: cn("rounded flex h-[26px] w-[26px] items-center justify-center text-[9px] transition-colors",
|
|
24214
|
+
className: cn("rounded flex h-[26px] w-[26px] items-center justify-center text-[9px] transition-colors", Gs && "font-semibold bg-primary-500 text-white-variant-1 hover:bg-primary-500", A && !Gs && "font-normal bg-primary-500/20 text-neutral-900 hover:bg-primary-500/30", o && !Gs && !A && "font-bold border border-primary-500 bg-primary-500/15 hover:bg-primary-500 hover:text-white", !Gs && !A && (a ? "text-neutral-900 hover:bg-neutral-300" : "text-neutral-600 hover:bg-neutral-200")),
|
|
24074
24215
|
children: r
|
|
24075
24216
|
})
|
|
24076
24217
|
}, `${i.getFullYear()}-${i.getMonth()}-${r}`);
|
|
@@ -24135,11 +24276,11 @@ function DatePicker({ mode: e = "single", value: t, defaultValue: n, onChange: r
|
|
|
24135
24276
|
function h(t) {
|
|
24136
24277
|
e === "single" && (u || s(t), r?.(t));
|
|
24137
24278
|
}
|
|
24138
|
-
function
|
|
24279
|
+
function O(t) {
|
|
24139
24280
|
e === "range" && (u || l(t), r?.(t));
|
|
24140
24281
|
}
|
|
24141
|
-
function
|
|
24142
|
-
e === "single" ? h(null) :
|
|
24282
|
+
function Gs() {
|
|
24283
|
+
e === "single" ? h(null) : O({
|
|
24143
24284
|
startDate: null,
|
|
24144
24285
|
endDate: null
|
|
24145
24286
|
});
|
|
@@ -24149,7 +24290,7 @@ function DatePicker({ mode: e = "single", value: t, defaultValue: n, onChange: r
|
|
|
24149
24290
|
displayText: e === "single" ? formatDate(f) : formatDateRange(p.startDate, p.endDate),
|
|
24150
24291
|
disabled: i,
|
|
24151
24292
|
className: a,
|
|
24152
|
-
onClear:
|
|
24293
|
+
onClear: Gs
|
|
24153
24294
|
}),
|
|
24154
24295
|
disabled: i,
|
|
24155
24296
|
children: /* @__PURE__ */ jsx(CalendarPanel, {
|
|
@@ -24157,7 +24298,7 @@ function DatePicker({ mode: e = "single", value: t, defaultValue: n, onChange: r
|
|
|
24157
24298
|
selectedDate: f,
|
|
24158
24299
|
selectedRange: p,
|
|
24159
24300
|
onDateSelect: h,
|
|
24160
|
-
onRangeSelect:
|
|
24301
|
+
onRangeSelect: O
|
|
24161
24302
|
})
|
|
24162
24303
|
}) });
|
|
24163
24304
|
}
|
|
@@ -24363,18 +24504,18 @@ function EventActionsList({ actions: e, className: t }) {
|
|
|
24363
24504
|
}) })
|
|
24364
24505
|
});
|
|
24365
24506
|
}
|
|
24366
|
-
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:
|
|
24507
|
+
function EventCard({ icon: e, service: t, sender: n, title: r, content: i, timestamp: a, timestampTooltip: o, workspace: s, read: c = !1, selected: l = !1, onSelect: u, checked: f = !1, onCheckedChange: p, statusBadges: h = {}, actions: g = {}, density: O = "normal", className: A, style: Ks, isPriority: R, isDone: B }) {
|
|
24367
24508
|
return /* @__PURE__ */ jsx(Card, {
|
|
24368
24509
|
as: Pressable,
|
|
24369
24510
|
onPress: u,
|
|
24370
24511
|
className: cn(eventCardStyles({
|
|
24371
|
-
tone:
|
|
24512
|
+
tone: R ? "priority" : B ? "done" : "default",
|
|
24372
24513
|
state: l ? "selected" : c ? "read" : "unread",
|
|
24373
|
-
density:
|
|
24374
|
-
}),
|
|
24375
|
-
style:
|
|
24514
|
+
density: O
|
|
24515
|
+
}), A),
|
|
24516
|
+
style: Ks,
|
|
24376
24517
|
"data-service": t,
|
|
24377
|
-
children:
|
|
24518
|
+
children: O === "normal" ? /* @__PURE__ */ jsxs(CardLayout, {
|
|
24378
24519
|
className: "gap-x-2 gap-y-1",
|
|
24379
24520
|
children: [
|
|
24380
24521
|
/* @__PURE__ */ jsx(CardSidebar, { children: /* @__PURE__ */ jsx(EventCheckbox, {
|
|
@@ -24410,7 +24551,7 @@ function EventCard({ icon: e, service: t, sender: n, title: r, content: i, times
|
|
|
24410
24551
|
/* @__PURE__ */ jsxs(CardFooter, {
|
|
24411
24552
|
className: "mt-3 gap-1 grid grid-cols-[minmax(0,1fr)_auto] items-center",
|
|
24412
24553
|
children: [/* @__PURE__ */ jsx(EventStatusesList, { statusBadges: h }), /* @__PURE__ */ jsx(EventActionsList, {
|
|
24413
|
-
actions:
|
|
24554
|
+
actions: g,
|
|
24414
24555
|
className: "col-start-2 justify-self-end"
|
|
24415
24556
|
})]
|
|
24416
24557
|
})
|
|
@@ -24429,7 +24570,7 @@ function EventCard({ icon: e, service: t, sender: n, title: r, content: i, times
|
|
|
24429
24570
|
e,
|
|
24430
24571
|
/* @__PURE__ */ jsx(EventStatusesList, {
|
|
24431
24572
|
statusBadges: h,
|
|
24432
|
-
density:
|
|
24573
|
+
density: O
|
|
24433
24574
|
}),
|
|
24434
24575
|
/* @__PURE__ */ jsxs("div", {
|
|
24435
24576
|
className: cn("min-w-0 gap-2 text-sm font-bold flex items-center whitespace-nowrap text-neutral-900", c && "font-medium"),
|
|
@@ -24449,7 +24590,7 @@ function EventCard({ icon: e, service: t, sender: n, title: r, content: i, times
|
|
|
24449
24590
|
]
|
|
24450
24591
|
}),
|
|
24451
24592
|
/* @__PURE__ */ jsx("div", { className: "flex-1" }),
|
|
24452
|
-
/* @__PURE__ */ jsx(EventActionsList, { actions:
|
|
24593
|
+
/* @__PURE__ */ jsx(EventActionsList, { actions: g }),
|
|
24453
24594
|
/* @__PURE__ */ jsx(InfoTooltip, {
|
|
24454
24595
|
content: o,
|
|
24455
24596
|
children: /* @__PURE__ */ jsx("span", {
|
|
@@ -24694,11 +24835,11 @@ function EventSummaryFireButton({ active: e, onClick: t }) {
|
|
|
24694
24835
|
}) });
|
|
24695
24836
|
}
|
|
24696
24837
|
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 }) {
|
|
24697
|
-
let { fire: f, insight: p, link: h } = l,
|
|
24838
|
+
let { fire: f, insight: p, link: h } = l, g = p?.label ?? null;
|
|
24698
24839
|
return /* @__PURE__ */ jsxs(Pressable, {
|
|
24699
24840
|
onPress: c,
|
|
24700
24841
|
className: cn(eventSummaryCardStyles({
|
|
24701
|
-
tone: f.active ? "priority" : insightLabelVisible(
|
|
24842
|
+
tone: f.active ? "priority" : insightLabelVisible(g) ? "insight" : "default",
|
|
24702
24843
|
state: s ? "selected" : "normal"
|
|
24703
24844
|
}), EVENT_SUMMARY_CARD_HEIGHT_SIZE.style, u),
|
|
24704
24845
|
"data-service": t,
|
|
@@ -24722,7 +24863,7 @@ function EventSummaryCard({ icon: e, service: t, sender: n, title: r, content: i
|
|
|
24722
24863
|
className: "text-xs leading-tight font-semibold tracking-wide flex-1 text-right whitespace-nowrap text-neutral-800",
|
|
24723
24864
|
children: a
|
|
24724
24865
|
}),
|
|
24725
|
-
insightLabelVisible(
|
|
24866
|
+
insightLabelVisible(g) && /* @__PURE__ */ jsx(EventSummaryInsightChip, { label: g }),
|
|
24726
24867
|
f.onClick && /* @__PURE__ */ jsx(EventSummaryFireButton, {
|
|
24727
24868
|
active: f.active,
|
|
24728
24869
|
onClick: f.onClick
|
|
@@ -24754,9 +24895,9 @@ function EventSummaryCard({ icon: e, service: t, sender: n, title: r, content: i
|
|
|
24754
24895
|
]
|
|
24755
24896
|
});
|
|
24756
24897
|
}
|
|
24757
|
-
function DateSeparator({ timestamp: e }) {
|
|
24898
|
+
function DateSeparator({ timestamp: e, mode: t }) {
|
|
24758
24899
|
return /* @__PURE__ */ jsxs("div", {
|
|
24759
|
-
className: "gap-4 flex items-center",
|
|
24900
|
+
className: cn("gap-4 flex items-center px-4 py-2 -mx-4", t === "insight" && "bg-primary-light border-l-[3px] border-primary-500", t === "fire" && "bg-tertiary-50-alpha-50 border-l-[3px] border-tertiary-500"),
|
|
24760
24901
|
children: [
|
|
24761
24902
|
/* @__PURE__ */ jsx("div", { className: "h-px flex-1 bg-neutral-300-variant-2" }),
|
|
24762
24903
|
/* @__PURE__ */ jsx("span", {
|
|
@@ -24972,7 +25113,10 @@ function PriorityGroup({ group: e, children: t, onPreviousPriority: n, onNextPri
|
|
|
24972
25113
|
function MessageGroup({ group: e, onPreviousPriority: t, onNextPriority: n }) {
|
|
24973
25114
|
return /* @__PURE__ */ jsxs("div", {
|
|
24974
25115
|
className: "gap-4 flex flex-col",
|
|
24975
|
-
children: [/* @__PURE__ */ jsx(DateSeparator, {
|
|
25116
|
+
children: [/* @__PURE__ */ jsx(DateSeparator, {
|
|
25117
|
+
timestamp: e.timestamp,
|
|
25118
|
+
mode: e.separatorMode
|
|
25119
|
+
}), /* @__PURE__ */ jsx(PriorityGroup, {
|
|
24976
25120
|
group: e,
|
|
24977
25121
|
onPreviousPriority: t,
|
|
24978
25122
|
onNextPriority: n,
|
|
@@ -24985,13 +25129,22 @@ function MessageGroup({ group: e, onPreviousPriority: t, onNextPriority: n }) {
|
|
|
24985
25129
|
});
|
|
24986
25130
|
}
|
|
24987
25131
|
function EventDetailContentMessage({ detail: { groups: e, summary: t, priorityText: n, followUpTitle: r, followUpSubtitle: i }, className: a }) {
|
|
24988
|
-
let o = e.filter((e) => e.isPriority).length, c = e.filter((e) => !e.isPriority && e.isInsight)
|
|
25132
|
+
let o = e.filter((e) => e.isPriority).length, c = e.filter((e) => !e.isPriority && e.isInsight), u = c.reduce((e, t) => {
|
|
25133
|
+
let n = t.insightBadgeId ?? t.id;
|
|
25134
|
+
return e.includes(n) || e.push(n), e;
|
|
25135
|
+
}, []), f = u.length, p = new Map(c.map((e) => {
|
|
25136
|
+
let t = e.insightBadgeId ?? e.id, n = u.indexOf(t);
|
|
25137
|
+
return [e.id, f - n];
|
|
25138
|
+
})), g = /* @__PURE__ */ new Set(), O = new Set(c.reduce((e, t) => {
|
|
25139
|
+
let n = t.insightBadgeId ?? t.id;
|
|
25140
|
+
return g.has(n) || (g.add(n), e.push(t.id)), e;
|
|
25141
|
+
}, [])), A = useRef(null), Ks = useRef(null), R = useRef(!1);
|
|
24989
25142
|
useEffect(() => {
|
|
24990
|
-
if (e.length === 0 ||
|
|
24991
|
-
|
|
25143
|
+
if (e.length === 0 || R.current) return;
|
|
25144
|
+
R.current = !0;
|
|
24992
25145
|
let t = [...e].reverse().find((e) => e.isPriority), n = [...e].reverse().find((e) => !e.isPriority && e.isInsight), r = t ?? n;
|
|
24993
|
-
if (r &&
|
|
24994
|
-
let e =
|
|
25146
|
+
if (r && A.current) {
|
|
25147
|
+
let e = A.current.querySelector(`[data-group-id="${r.id}"]`);
|
|
24995
25148
|
if (e) {
|
|
24996
25149
|
e.scrollIntoView({
|
|
24997
25150
|
behavior: "smooth",
|
|
@@ -25000,11 +25153,11 @@ function EventDetailContentMessage({ detail: { groups: e, summary: t, priorityTe
|
|
|
25000
25153
|
return;
|
|
25001
25154
|
}
|
|
25002
25155
|
}
|
|
25003
|
-
|
|
25156
|
+
Ks.current?.scrollIntoView({ behavior: "smooth" });
|
|
25004
25157
|
}, [e]);
|
|
25005
|
-
let
|
|
25006
|
-
if (!
|
|
25007
|
-
let r = Array.from(
|
|
25158
|
+
let B = o, V = useCallback((t, n) => {
|
|
25159
|
+
if (!A.current) return;
|
|
25160
|
+
let r = Array.from(A.current.querySelectorAll("[data-group-id][class*=\"scroll-mt\"]")), i = n === "fire" ? o : f, a = r.filter((t) => {
|
|
25008
25161
|
let r = t.getAttribute("data-group-id");
|
|
25009
25162
|
if (!r) return !1;
|
|
25010
25163
|
let i = e.find((e) => e.id === r);
|
|
@@ -25017,7 +25170,7 @@ function EventDetailContentMessage({ detail: { groups: e, summary: t, priorityTe
|
|
|
25017
25170
|
}, [
|
|
25018
25171
|
e,
|
|
25019
25172
|
o,
|
|
25020
|
-
|
|
25173
|
+
f
|
|
25021
25174
|
]);
|
|
25022
25175
|
return /* @__PURE__ */ jsx(EventDetailContentHeader, {
|
|
25023
25176
|
summary: t,
|
|
@@ -25026,27 +25179,29 @@ function EventDetailContentMessage({ detail: { groups: e, summary: t, priorityTe
|
|
|
25026
25179
|
followUpSubtitle: i,
|
|
25027
25180
|
className: a,
|
|
25028
25181
|
children: /* @__PURE__ */ jsxs("div", {
|
|
25029
|
-
ref:
|
|
25182
|
+
ref: A,
|
|
25030
25183
|
className: "gap-4 flex flex-col",
|
|
25031
25184
|
children: [e.map((e) => {
|
|
25032
|
-
let t = e.isPriority ? "fire" : e.isInsight ? "insight" : null, n = e.isPriority ?
|
|
25185
|
+
let t = e.isPriority ? "fire" : e.isInsight ? "insight" : null, n = e.isPriority ? B-- : e.isInsight ? p.get(e.id) ?? 0 : 0, r = e.isPriority ? o : e.isInsight ? f : 0, i = n && t ? () => {
|
|
25033
25186
|
let e = n + 1;
|
|
25034
|
-
e <= r &&
|
|
25187
|
+
e <= r && V(e, t);
|
|
25035
25188
|
} : void 0, a = n && t ? () => {
|
|
25036
25189
|
let e = n - 1;
|
|
25037
|
-
e >= 1 &&
|
|
25038
|
-
} : void 0;
|
|
25190
|
+
e >= 1 && V(e, t);
|
|
25191
|
+
} : void 0, s = e.isInsight && !e.isPriority && !O.has(e.id);
|
|
25039
25192
|
return /* @__PURE__ */ jsx(MessageGroup, {
|
|
25040
25193
|
group: {
|
|
25041
25194
|
...e,
|
|
25042
25195
|
priorityIndex: n,
|
|
25043
|
-
totalPriorityGroups: r
|
|
25196
|
+
totalPriorityGroups: r,
|
|
25197
|
+
insightText: s ? void 0 : e.insightText,
|
|
25198
|
+
separatorMode: s ? "insight" : void 0
|
|
25044
25199
|
},
|
|
25045
25200
|
onPreviousPriority: i,
|
|
25046
25201
|
onNextPriority: a
|
|
25047
25202
|
}, e.id);
|
|
25048
25203
|
}), /* @__PURE__ */ jsx("div", {
|
|
25049
|
-
ref:
|
|
25204
|
+
ref: Ks,
|
|
25050
25205
|
"aria-hidden": "true"
|
|
25051
25206
|
})]
|
|
25052
25207
|
})
|
|
@@ -25104,13 +25259,13 @@ function EventDetailContentTicketDetails({ issue: e, notification: t, project: n
|
|
|
25104
25259
|
]
|
|
25105
25260
|
})] });
|
|
25106
25261
|
}
|
|
25107
|
-
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:
|
|
25262
|
+
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: g, related: O }, className: A }) {
|
|
25108
25263
|
return /* @__PURE__ */ jsxs(EventDetailContentHeader, {
|
|
25109
25264
|
summary: e,
|
|
25110
25265
|
priorityText: n,
|
|
25111
25266
|
followUpTitle: r,
|
|
25112
25267
|
followUpSubtitle: i,
|
|
25113
|
-
className:
|
|
25268
|
+
className: A,
|
|
25114
25269
|
children: [
|
|
25115
25270
|
/* @__PURE__ */ jsx(EventDetailContentTicketDetails, {
|
|
25116
25271
|
issue: a,
|
|
@@ -25122,8 +25277,8 @@ function EventDetailContentTicket({ detail: { summary: e, body: t, priorityText:
|
|
|
25122
25277
|
assignees: f,
|
|
25123
25278
|
reporter: p,
|
|
25124
25279
|
team: h,
|
|
25125
|
-
location:
|
|
25126
|
-
related:
|
|
25280
|
+
location: g,
|
|
25281
|
+
related: O
|
|
25127
25282
|
}),
|
|
25128
25283
|
/* @__PURE__ */ jsx("h2", {
|
|
25129
25284
|
className: "px-4 text-sm font-bold text-neutral-900",
|
|
@@ -25371,6 +25526,277 @@ function EventSummaryCardSkeleton({ className: e, style: t }) {
|
|
|
25371
25526
|
]
|
|
25372
25527
|
});
|
|
25373
25528
|
}
|
|
25529
|
+
var roleBadgeStyles = tv({
|
|
25530
|
+
base: "rounded-full border px-1.5 py-px text-[9px] font-bold tracking-wide uppercase",
|
|
25531
|
+
variants: { role: {
|
|
25532
|
+
client: "border-amber-200 bg-amber-50 text-amber-700",
|
|
25533
|
+
team: "border-blue-200 bg-blue-50 text-blue-700"
|
|
25534
|
+
} }
|
|
25535
|
+
}), ROLE_LABEL = {
|
|
25536
|
+
client: "Client",
|
|
25537
|
+
team: "Your team"
|
|
25538
|
+
};
|
|
25539
|
+
function RoleBadge({ role: e, className: t, ...n }) {
|
|
25540
|
+
return /* @__PURE__ */ jsx("span", {
|
|
25541
|
+
className: cn(roleBadgeStyles({ role: e }), t),
|
|
25542
|
+
...n,
|
|
25543
|
+
children: ROLE_LABEL[e]
|
|
25544
|
+
});
|
|
25545
|
+
}
|
|
25546
|
+
function SourceIcon({ sourceType: e }) {
|
|
25547
|
+
return e === "gmail" ? /* @__PURE__ */ jsx(GmailIcon, { size: 18 }) : e === "slack" ? /* @__PURE__ */ jsx(SlackIcon, { size: 18 }) : null;
|
|
25548
|
+
}
|
|
25549
|
+
function DetailPill({ children: e }) {
|
|
25550
|
+
return /* @__PURE__ */ jsx("span", {
|
|
25551
|
+
className: "min-w-0 shrink-0 truncate rounded-full border border-neutral-300 bg-neutral-100 px-2 py-px text-[10px] font-medium text-neutral-700-variant-1",
|
|
25552
|
+
children: e
|
|
25553
|
+
});
|
|
25554
|
+
}
|
|
25555
|
+
function OpenInIcon() {
|
|
25556
|
+
return /* @__PURE__ */ jsxs("svg", {
|
|
25557
|
+
width: "10",
|
|
25558
|
+
height: "10",
|
|
25559
|
+
viewBox: "0 0 24 24",
|
|
25560
|
+
fill: "none",
|
|
25561
|
+
stroke: "currentColor",
|
|
25562
|
+
strokeWidth: "2.5",
|
|
25563
|
+
strokeLinecap: "round",
|
|
25564
|
+
strokeLinejoin: "round",
|
|
25565
|
+
children: [
|
|
25566
|
+
/* @__PURE__ */ jsx("path", { d: "M18 13v6a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2V8a2 2 0 0 1 2-2h6" }),
|
|
25567
|
+
/* @__PURE__ */ jsx("polyline", { points: "15 3 21 3 21 9" }),
|
|
25568
|
+
/* @__PURE__ */ jsx("line", {
|
|
25569
|
+
x1: "10",
|
|
25570
|
+
y1: "14",
|
|
25571
|
+
x2: "21",
|
|
25572
|
+
y2: "3"
|
|
25573
|
+
})
|
|
25574
|
+
]
|
|
25575
|
+
});
|
|
25576
|
+
}
|
|
25577
|
+
var ABSENCE_BUBBLE_STYLES = {
|
|
25578
|
+
fire: {
|
|
25579
|
+
bg: "bg-red-50",
|
|
25580
|
+
border: "border-red-200",
|
|
25581
|
+
title: "text-red-700"
|
|
25582
|
+
},
|
|
25583
|
+
review: {
|
|
25584
|
+
bg: "bg-amber-50",
|
|
25585
|
+
border: "border-amber-200",
|
|
25586
|
+
title: "text-amber-700"
|
|
25587
|
+
},
|
|
25588
|
+
neutral: {
|
|
25589
|
+
bg: "bg-neutral-100",
|
|
25590
|
+
border: "border-neutral-300",
|
|
25591
|
+
title: "text-neutral-700-variant-1"
|
|
25592
|
+
}
|
|
25593
|
+
};
|
|
25594
|
+
function TimelineConnector({ isFirst: e, isLast: t, variant: n }) {
|
|
25595
|
+
return /* @__PURE__ */ jsxs("div", {
|
|
25596
|
+
className: "flex w-[7px] flex-col items-center",
|
|
25597
|
+
children: [
|
|
25598
|
+
/* @__PURE__ */ jsx("div", { className: cn(n === "message" ? "h-[17px]" : "h-3.5", "w-px", !e && "bg-neutral-300") }),
|
|
25599
|
+
/* @__PURE__ */ jsx("div", {
|
|
25600
|
+
className: "relative z-10 h-[7px] w-[7px] shrink-0",
|
|
25601
|
+
children: n === "absence" ? /* @__PURE__ */ jsxs(Fragment$1, { children: [/* @__PURE__ */ jsx("div", { className: "absolute inset-0 animate-ping rounded-full border border-red-500" }), /* @__PURE__ */ jsx("div", { className: "h-[7px] w-[7px] rounded-full border-[1.5px] border-red-500 bg-white" })] }) : /* @__PURE__ */ jsx("div", { className: cn("h-[7px] w-[7px] rounded-full", n === "message" ? "bg-blue-500" : "bg-neutral-400") })
|
|
25602
|
+
}),
|
|
25603
|
+
!t && /* @__PURE__ */ jsx("div", { className: "w-px flex-1 bg-neutral-300" })
|
|
25604
|
+
]
|
|
25605
|
+
});
|
|
25606
|
+
}
|
|
25607
|
+
function TimelineItem({ item: e, isFirst: t, isLast: n, tone: r }) {
|
|
25608
|
+
if (e.absence) {
|
|
25609
|
+
let i = ABSENCE_BUBBLE_STYLES[r];
|
|
25610
|
+
return /* @__PURE__ */ jsxs("div", {
|
|
25611
|
+
className: "flex items-stretch gap-3",
|
|
25612
|
+
children: [/* @__PURE__ */ jsx(TimelineConnector, {
|
|
25613
|
+
isFirst: t,
|
|
25614
|
+
isLast: n,
|
|
25615
|
+
variant: "absence"
|
|
25616
|
+
}), /* @__PURE__ */ jsxs("div", {
|
|
25617
|
+
className: cn("mb-2 min-w-0 flex-1 rounded-lg border px-3 py-2.5", i.bg, i.border),
|
|
25618
|
+
children: [/* @__PURE__ */ jsxs("p", {
|
|
25619
|
+
className: cn("text-[10px] font-bold uppercase", i.title),
|
|
25620
|
+
children: ["QTalo · ", e.stageLabel]
|
|
25621
|
+
}), /* @__PURE__ */ jsx("p", {
|
|
25622
|
+
className: "mt-1 text-[13px] break-words text-neutral-800",
|
|
25623
|
+
children: e.summary
|
|
25624
|
+
})]
|
|
25625
|
+
})]
|
|
25626
|
+
});
|
|
25627
|
+
}
|
|
25628
|
+
if (e.type === "source_message") {
|
|
25629
|
+
let r = e.direction === "internal_outbound" ? "team" : "client";
|
|
25630
|
+
return /* @__PURE__ */ jsxs("div", {
|
|
25631
|
+
className: "flex items-stretch gap-3",
|
|
25632
|
+
children: [/* @__PURE__ */ jsx(TimelineConnector, {
|
|
25633
|
+
isFirst: t,
|
|
25634
|
+
isLast: n,
|
|
25635
|
+
variant: "message"
|
|
25636
|
+
}), /* @__PURE__ */ jsxs("div", {
|
|
25637
|
+
className: "mb-2 min-w-0 flex-1 rounded-xl border border-neutral-200-variant-1 bg-white-variant-8 px-4 py-3",
|
|
25638
|
+
children: [/* @__PURE__ */ jsxs("div", {
|
|
25639
|
+
className: "mb-1 flex flex-wrap items-center gap-1.5",
|
|
25640
|
+
children: [
|
|
25641
|
+
/* @__PURE__ */ jsx("span", {
|
|
25642
|
+
className: "text-[11px] font-semibold text-blue-700 uppercase tracking-wide",
|
|
25643
|
+
children: e.stageLabel
|
|
25644
|
+
}),
|
|
25645
|
+
e.senderName && /* @__PURE__ */ jsx("span", {
|
|
25646
|
+
className: "text-[12px] font-semibold text-neutral-900",
|
|
25647
|
+
children: e.senderName
|
|
25648
|
+
}),
|
|
25649
|
+
/* @__PURE__ */ jsx(RoleBadge, { role: r }),
|
|
25650
|
+
/* @__PURE__ */ jsx("span", {
|
|
25651
|
+
className: "text-[11px] text-neutral-700-variant-1",
|
|
25652
|
+
children: e.timestampDisplay
|
|
25653
|
+
}),
|
|
25654
|
+
/* @__PURE__ */ jsx("span", {
|
|
25655
|
+
className: "ml-auto",
|
|
25656
|
+
children: /* @__PURE__ */ jsx(SourceIcon, { sourceType: e.sourceType })
|
|
25657
|
+
})
|
|
25658
|
+
]
|
|
25659
|
+
}), /* @__PURE__ */ jsx("p", {
|
|
25660
|
+
className: "text-[13px] break-words text-neutral-800",
|
|
25661
|
+
children: e.summary
|
|
25662
|
+
})]
|
|
25663
|
+
})]
|
|
25664
|
+
});
|
|
25665
|
+
}
|
|
25666
|
+
return /* @__PURE__ */ jsxs("div", {
|
|
25667
|
+
className: "flex items-stretch gap-3",
|
|
25668
|
+
children: [/* @__PURE__ */ jsx(TimelineConnector, {
|
|
25669
|
+
isFirst: t,
|
|
25670
|
+
isLast: n,
|
|
25671
|
+
variant: "check"
|
|
25672
|
+
}), /* @__PURE__ */ jsxs("div", {
|
|
25673
|
+
className: "mb-2 min-w-0 flex-1 rounded-lg border border-neutral-200-variant-1 bg-white-variant-8 px-3 py-2.5",
|
|
25674
|
+
children: [/* @__PURE__ */ jsxs("p", {
|
|
25675
|
+
className: "text-[10px] font-semibold text-neutral-800 uppercase",
|
|
25676
|
+
children: ["QTalo · ", e.stageLabel]
|
|
25677
|
+
}), /* @__PURE__ */ jsx("p", {
|
|
25678
|
+
className: "mt-1 text-[13px] break-words text-neutral-700-variant-1",
|
|
25679
|
+
children: e.summary
|
|
25680
|
+
})]
|
|
25681
|
+
})]
|
|
25682
|
+
});
|
|
25683
|
+
}
|
|
25684
|
+
function EvidenceTimeline({ items: e, canExpandThread: t = !1, tone: n = "fire", threadTitle: r, clientCompany: i, contactName: a, teamCompanyName: o, recipientLabel: s, className: c, ...l }) {
|
|
25685
|
+
let [u, f] = useState(!0), p = e.filter((e) => e.type === "source_message");
|
|
25686
|
+
return /* @__PURE__ */ jsxs("div", {
|
|
25687
|
+
className: cn("flex flex-col", c),
|
|
25688
|
+
...l,
|
|
25689
|
+
children: [e.map((t, r) => /* @__PURE__ */ jsx(TimelineItem, {
|
|
25690
|
+
item: t,
|
|
25691
|
+
isFirst: r === 0,
|
|
25692
|
+
isLast: r === e.length - 1,
|
|
25693
|
+
tone: n
|
|
25694
|
+
}, t.id)), t && p.length > 0 && /* @__PURE__ */ jsxs("div", {
|
|
25695
|
+
className: "mt-1 border-t border-neutral-200-variant-1 pt-2",
|
|
25696
|
+
children: [/* @__PURE__ */ jsxs("button", {
|
|
25697
|
+
type: "button",
|
|
25698
|
+
onClick: () => f((e) => !e),
|
|
25699
|
+
className: "inline-flex items-center gap-1.5 text-xs font-medium text-neutral-700-variant-1 transition-colors hover:text-neutral-900",
|
|
25700
|
+
children: [/* @__PURE__ */ jsx("svg", {
|
|
25701
|
+
width: "11",
|
|
25702
|
+
height: "11",
|
|
25703
|
+
viewBox: "0 0 24 24",
|
|
25704
|
+
fill: "none",
|
|
25705
|
+
stroke: "currentColor",
|
|
25706
|
+
strokeWidth: "2",
|
|
25707
|
+
strokeLinecap: "round",
|
|
25708
|
+
strokeLinejoin: "round",
|
|
25709
|
+
children: u ? /* @__PURE__ */ jsx("polyline", { points: "18 15 12 9 6 15" }) : /* @__PURE__ */ jsx("polyline", { points: "6 9 12 15 18 9" })
|
|
25710
|
+
}), u ? "Hide full thread" : "View full thread"]
|
|
25711
|
+
}), u && /* @__PURE__ */ jsxs("div", {
|
|
25712
|
+
className: "mt-2 overflow-hidden rounded-xl border border-neutral-200-variant-1",
|
|
25713
|
+
children: [/* @__PURE__ */ jsxs("div", {
|
|
25714
|
+
className: "flex items-center justify-between gap-2 border-b border-neutral-200-variant-1 bg-neutral-100 px-4 py-3",
|
|
25715
|
+
children: [/* @__PURE__ */ jsxs("div", {
|
|
25716
|
+
className: "flex min-w-0 items-center gap-2",
|
|
25717
|
+
children: [/* @__PURE__ */ jsx(SourceIcon, { sourceType: p[0]?.sourceType }), /* @__PURE__ */ jsx("span", {
|
|
25718
|
+
className: "truncate text-xs font-semibold text-neutral-800",
|
|
25719
|
+
children: r
|
|
25720
|
+
})]
|
|
25721
|
+
}), /* @__PURE__ */ jsxs("span", {
|
|
25722
|
+
className: "shrink-0 text-[11px] font-medium text-neutral-700-variant-1",
|
|
25723
|
+
children: [p.length, " messages"]
|
|
25724
|
+
})]
|
|
25725
|
+
}), /* @__PURE__ */ jsx("div", {
|
|
25726
|
+
className: "flex flex-col gap-3 bg-neutral-50 px-4 py-4",
|
|
25727
|
+
children: p.map((e) => {
|
|
25728
|
+
let t = e.direction === "internal_outbound", n = e.senderName ?? a ?? "", r = t ? o : i, c = t ? [a, i].filter(Boolean) : [o, s].filter(Boolean), l = t ? "team" : "client", u = t ? "client" : "team";
|
|
25729
|
+
return /* @__PURE__ */ jsx("div", {
|
|
25730
|
+
className: cn("rounded-xl border px-4 py-3", t ? "border-blue-200 bg-blue-50" : "border-neutral-200-variant-1 bg-white-variant-8"),
|
|
25731
|
+
children: /* @__PURE__ */ jsxs("div", {
|
|
25732
|
+
className: "flex gap-3",
|
|
25733
|
+
children: [/* @__PURE__ */ jsx("div", {
|
|
25734
|
+
className: cn("flex h-8 w-8 shrink-0 items-center justify-center rounded-full text-[13px] font-bold", t ? "bg-blue-200 text-blue-800" : "bg-neutral-200 text-neutral-700-variant-1"),
|
|
25735
|
+
children: n.charAt(0).toUpperCase()
|
|
25736
|
+
}), /* @__PURE__ */ jsxs("div", {
|
|
25737
|
+
className: "min-w-0 flex-1",
|
|
25738
|
+
children: [
|
|
25739
|
+
/* @__PURE__ */ jsxs("div", {
|
|
25740
|
+
className: "flex items-start justify-between gap-2",
|
|
25741
|
+
children: [/* @__PURE__ */ jsxs("div", {
|
|
25742
|
+
className: "flex min-w-0 flex-1 flex-col gap-1",
|
|
25743
|
+
children: [/* @__PURE__ */ jsxs("div", {
|
|
25744
|
+
className: "flex min-w-0 items-center gap-1.5",
|
|
25745
|
+
children: [
|
|
25746
|
+
/* @__PURE__ */ jsx("span", {
|
|
25747
|
+
className: "w-9 shrink-0 text-[10px] font-bold tracking-wide text-neutral-700-variant-1 uppercase",
|
|
25748
|
+
children: "From"
|
|
25749
|
+
}),
|
|
25750
|
+
/* @__PURE__ */ jsx("span", {
|
|
25751
|
+
className: "truncate text-[13px] font-bold text-neutral-900",
|
|
25752
|
+
children: n
|
|
25753
|
+
}),
|
|
25754
|
+
r && /* @__PURE__ */ jsx(DetailPill, { children: r }),
|
|
25755
|
+
/* @__PURE__ */ jsx(RoleBadge, { role: l })
|
|
25756
|
+
]
|
|
25757
|
+
}), c.length > 0 && /* @__PURE__ */ jsxs("div", {
|
|
25758
|
+
className: "flex min-w-0 flex-wrap items-center gap-1.5",
|
|
25759
|
+
children: [
|
|
25760
|
+
/* @__PURE__ */ jsx("span", {
|
|
25761
|
+
className: "w-9 shrink-0 text-[10px] font-bold tracking-wide text-neutral-700-variant-1 uppercase",
|
|
25762
|
+
children: "To"
|
|
25763
|
+
}),
|
|
25764
|
+
c.map((e) => /* @__PURE__ */ jsx(DetailPill, { children: e }, e)),
|
|
25765
|
+
/* @__PURE__ */ jsx(RoleBadge, { role: u })
|
|
25766
|
+
]
|
|
25767
|
+
})]
|
|
25768
|
+
}), /* @__PURE__ */ jsxs("div", {
|
|
25769
|
+
className: "flex shrink-0 items-center gap-1.5",
|
|
25770
|
+
children: [/* @__PURE__ */ jsx(SourceIcon, { sourceType: e.sourceType }), /* @__PURE__ */ jsx("span", {
|
|
25771
|
+
className: "text-[11px] font-medium text-neutral-700-variant-1",
|
|
25772
|
+
children: e.timestampDisplay
|
|
25773
|
+
})]
|
|
25774
|
+
})]
|
|
25775
|
+
}),
|
|
25776
|
+
/* @__PURE__ */ jsx("p", {
|
|
25777
|
+
className: "mt-2 border-t border-neutral-200-variant-1 pt-2.5 text-sm break-words text-neutral-800",
|
|
25778
|
+
children: e.summary
|
|
25779
|
+
}),
|
|
25780
|
+
e.link && /* @__PURE__ */ jsx("div", {
|
|
25781
|
+
className: "mt-2.5 border-t border-neutral-200-variant-1 pt-2",
|
|
25782
|
+
children: /* @__PURE__ */ jsxs("a", {
|
|
25783
|
+
href: e.link,
|
|
25784
|
+
target: "_blank",
|
|
25785
|
+
rel: "noopener noreferrer",
|
|
25786
|
+
className: "inline-flex items-center gap-1 text-[11px] font-medium text-neutral-700-variant-1 transition-colors hover:text-neutral-900 hover:underline",
|
|
25787
|
+
children: [e.sourceType === "gmail" ? "Open in Gmail" : "Open in Slack", /* @__PURE__ */ jsx(OpenInIcon, {})]
|
|
25788
|
+
})
|
|
25789
|
+
})
|
|
25790
|
+
]
|
|
25791
|
+
})]
|
|
25792
|
+
})
|
|
25793
|
+
}, e.id);
|
|
25794
|
+
})
|
|
25795
|
+
})]
|
|
25796
|
+
})]
|
|
25797
|
+
})]
|
|
25798
|
+
});
|
|
25799
|
+
}
|
|
25374
25800
|
function FilterBarSkeleton({ itemCount: e = 3, className: t }) {
|
|
25375
25801
|
return /* @__PURE__ */ jsx("div", {
|
|
25376
25802
|
className: cn("gap-2 flex flex-wrap items-center", t),
|
|
@@ -25647,16 +26073,16 @@ function OnboardingCard({ stepLabel: e, title: t, description: n, titleAccessory
|
|
|
25647
26073
|
children: [i, a]
|
|
25648
26074
|
})
|
|
25649
26075
|
]
|
|
25650
|
-
}),
|
|
26076
|
+
}), g = wrapArrow(/* @__PURE__ */ jsx(OnboardingCardArrow, {
|
|
25651
26077
|
layout: o,
|
|
25652
26078
|
placement: s
|
|
25653
|
-
}), c, l),
|
|
26079
|
+
}), c, l), O = s === "before" ? /* @__PURE__ */ jsxs(Fragment$1, { children: [g, h] }) : /* @__PURE__ */ jsxs(Fragment$1, { children: [h, g] });
|
|
25654
26080
|
return o === "horizontal" ? /* @__PURE__ */ jsx("div", {
|
|
25655
26081
|
className: cn("flex items-center", u),
|
|
25656
|
-
children:
|
|
26082
|
+
children: O
|
|
25657
26083
|
}) : /* @__PURE__ */ jsx("div", {
|
|
25658
26084
|
className: cn("flex flex-col items-center", u),
|
|
25659
|
-
children:
|
|
26085
|
+
children: O
|
|
25660
26086
|
});
|
|
25661
26087
|
}
|
|
25662
26088
|
var subscribeNoop = () => () => {}, getClientSnapshot = () => !0, getServerSnapshot = () => !1, PRIMARY_BTN = "rounded-lg bg-white px-4 py-1.5 text-xs font-semibold text-primary-500 transition-opacity hover:opacity-90", GHOST_BTN = "text-xs font-semibold text-white/70 transition-colors hover:text-white";
|
|
@@ -25704,7 +26130,7 @@ function OnboardingPortal({ currentStep: e, currentStepIndex: t, actions: n, ste
|
|
|
25704
26130
|
let p = e.layout === "vertical" && o.mode === "vertical" ? {
|
|
25705
26131
|
marginLeft: o.arrowMarginLeft,
|
|
25706
26132
|
...e.arrowWrapperStyle
|
|
25707
|
-
} : e.arrowWrapperStyle,
|
|
26133
|
+
} : e.arrowWrapperStyle, A = /* @__PURE__ */ jsx(OnboardingCard, {
|
|
25708
26134
|
stepLabel: e.stepLabel ?? (t == null ? void 0 : `${t + 1} / ${r.length}`),
|
|
25709
26135
|
title: e.title,
|
|
25710
26136
|
description: e.description,
|
|
@@ -25743,7 +26169,7 @@ function OnboardingPortal({ currentStep: e, currentStepIndex: t, actions: n, ste
|
|
|
25743
26169
|
left: o.left
|
|
25744
26170
|
}
|
|
25745
26171
|
},
|
|
25746
|
-
children:
|
|
26172
|
+
children: A
|
|
25747
26173
|
}), document.body);
|
|
25748
26174
|
}
|
|
25749
26175
|
function Onboarding({ steps: e, context: t, storageKey: n, onFinish: r, isEnabled: i = !0 }) {
|
|
@@ -25759,12 +26185,143 @@ function Onboarding({ steps: e, context: t, storageKey: n, onFinish: r, isEnable
|
|
|
25759
26185
|
})
|
|
25760
26186
|
});
|
|
25761
26187
|
}
|
|
26188
|
+
var pulseFilterChipStyles = tv({
|
|
26189
|
+
slots: {
|
|
26190
|
+
root: "inline-flex shrink-0 items-center gap-1 rounded-full border bg-white px-2.5 py-1 text-[11px] transition-colors",
|
|
26191
|
+
content: "inline-flex items-center",
|
|
26192
|
+
dot: "h-1.5 w-1.5 shrink-0 rounded-full",
|
|
26193
|
+
count: "inline-flex h-[14px] min-w-[14px] items-center justify-center rounded-full px-1 text-[9px] font-bold"
|
|
26194
|
+
},
|
|
26195
|
+
variants: {
|
|
26196
|
+
tone: {
|
|
26197
|
+
fire: {
|
|
26198
|
+
root: "font-medium",
|
|
26199
|
+
content: "gap-1.5",
|
|
26200
|
+
dot: "bg-red-500"
|
|
26201
|
+
},
|
|
26202
|
+
review: {
|
|
26203
|
+
root: "font-medium",
|
|
26204
|
+
content: "gap-1.5",
|
|
26205
|
+
dot: "bg-amber-400"
|
|
26206
|
+
},
|
|
26207
|
+
neutral: {
|
|
26208
|
+
root: "font-medium",
|
|
26209
|
+
content: "gap-1.5",
|
|
26210
|
+
dot: "bg-neutral-500"
|
|
26211
|
+
},
|
|
26212
|
+
brand: {
|
|
26213
|
+
root: "font-semibold",
|
|
26214
|
+
content: "gap-1",
|
|
26215
|
+
dot: "hidden"
|
|
26216
|
+
}
|
|
26217
|
+
},
|
|
26218
|
+
selected: {
|
|
26219
|
+
true: { count: "bg-white-variant-1/20 text-white-variant-1" },
|
|
26220
|
+
false: { count: "bg-neutral-100 text-neutral-700" }
|
|
26221
|
+
},
|
|
26222
|
+
disabled: {
|
|
26223
|
+
true: { root: "cursor-default border-neutral-200 bg-neutral-50 text-neutral-600 opacity-60" },
|
|
26224
|
+
false: {}
|
|
26225
|
+
}
|
|
26226
|
+
},
|
|
26227
|
+
compoundVariants: [
|
|
26228
|
+
{
|
|
26229
|
+
tone: "fire",
|
|
26230
|
+
selected: !1,
|
|
26231
|
+
disabled: !1,
|
|
26232
|
+
class: { root: "border-red-200 text-red-700 hover:border-red-400" }
|
|
26233
|
+
},
|
|
26234
|
+
{
|
|
26235
|
+
tone: "fire",
|
|
26236
|
+
selected: !0,
|
|
26237
|
+
disabled: !1,
|
|
26238
|
+
class: { root: "bg-red-600 border-red-600 text-white-variant-1" }
|
|
26239
|
+
},
|
|
26240
|
+
{
|
|
26241
|
+
tone: "review",
|
|
26242
|
+
selected: !1,
|
|
26243
|
+
disabled: !1,
|
|
26244
|
+
class: { root: "border-amber-200 text-amber-700 hover:border-amber-400" }
|
|
26245
|
+
},
|
|
26246
|
+
{
|
|
26247
|
+
tone: "review",
|
|
26248
|
+
selected: !0,
|
|
26249
|
+
disabled: !1,
|
|
26250
|
+
class: { root: "bg-amber-500 border-amber-500 text-white-variant-1" }
|
|
26251
|
+
},
|
|
26252
|
+
{
|
|
26253
|
+
tone: "neutral",
|
|
26254
|
+
selected: !1,
|
|
26255
|
+
disabled: !1,
|
|
26256
|
+
class: { root: "border-neutral-300 text-neutral-700 hover:border-neutral-500" }
|
|
26257
|
+
},
|
|
26258
|
+
{
|
|
26259
|
+
tone: "neutral",
|
|
26260
|
+
selected: !0,
|
|
26261
|
+
disabled: !1,
|
|
26262
|
+
class: { root: "bg-pulse-chip-neutral-active-bg border-pulse-chip-neutral-active-bg text-pulse-chip-neutral-active-text" }
|
|
26263
|
+
},
|
|
26264
|
+
{
|
|
26265
|
+
tone: "brand",
|
|
26266
|
+
selected: !1,
|
|
26267
|
+
disabled: !1,
|
|
26268
|
+
class: { root: "border-neutral-300 text-neutral-900 hover:border-neutral-600" }
|
|
26269
|
+
},
|
|
26270
|
+
{
|
|
26271
|
+
tone: "brand",
|
|
26272
|
+
selected: !0,
|
|
26273
|
+
disabled: !1,
|
|
26274
|
+
class: { root: "bg-primary-500 border-primary-500 text-white-variant-1" }
|
|
26275
|
+
}
|
|
26276
|
+
],
|
|
26277
|
+
defaultVariants: {
|
|
26278
|
+
tone: "neutral",
|
|
26279
|
+
selected: !1,
|
|
26280
|
+
disabled: !1
|
|
26281
|
+
}
|
|
26282
|
+
});
|
|
26283
|
+
function PulseFilterChip({ label: e, count: t, tone: n = "neutral", icon: r, selected: i = !1, disabled: a = !1, onClick: o, onRemove: s, className: c }) {
|
|
26284
|
+
let l = pulseFilterChipStyles({
|
|
26285
|
+
tone: n,
|
|
26286
|
+
selected: i,
|
|
26287
|
+
disabled: a
|
|
26288
|
+
});
|
|
26289
|
+
return /* @__PURE__ */ jsxs("span", {
|
|
26290
|
+
className: cn(l.root(), c),
|
|
26291
|
+
children: [/* @__PURE__ */ jsxs(Pressable, {
|
|
26292
|
+
as: "span",
|
|
26293
|
+
onPress: a ? void 0 : o,
|
|
26294
|
+
disabled: a,
|
|
26295
|
+
className: l.content(),
|
|
26296
|
+
children: [
|
|
26297
|
+
r ?? /* @__PURE__ */ jsx("span", { className: l.dot() }),
|
|
26298
|
+
/* @__PURE__ */ jsx("span", { children: e }),
|
|
26299
|
+
typeof t == "number" && /* @__PURE__ */ jsx("span", {
|
|
26300
|
+
className: l.count(),
|
|
26301
|
+
children: t
|
|
26302
|
+
})
|
|
26303
|
+
]
|
|
26304
|
+
}), s && /* @__PURE__ */ jsx(Pressable, {
|
|
26305
|
+
as: "span",
|
|
26306
|
+
onPress: s,
|
|
26307
|
+
"aria-label": `Clear ${e}`,
|
|
26308
|
+
className: "inline-flex shrink-0 items-center justify-center rounded-full opacity-80 hover:opacity-100 focus-visible:ring-2 focus-visible:ring-current",
|
|
26309
|
+
children: /* @__PURE__ */ jsx(CloseIcon, { size: 12 })
|
|
26310
|
+
})]
|
|
26311
|
+
});
|
|
26312
|
+
}
|
|
26313
|
+
function PulseFilterChipSkeleton({ labelWidthClassName: e = "w-16", className: t }) {
|
|
26314
|
+
return /* @__PURE__ */ jsxs("span", {
|
|
26315
|
+
className: cn("inline-flex shrink-0 items-center gap-1.5 rounded-full border border-neutral-300 bg-white px-2.5 py-1", t),
|
|
26316
|
+
children: [/* @__PURE__ */ jsx("div", { className: "size-3 shrink-0 rounded-full bg-neutral-300-variant-3" }), /* @__PURE__ */ jsx(Skeleton, { className: cn("h-3", e) })]
|
|
26317
|
+
});
|
|
26318
|
+
}
|
|
25762
26319
|
function SearchInput({ value: e, defaultValue: t, placeholder: n = "Search...", onChange: r, onKeyDown: i, onClear: a, disabled: o = !1, className: s }) {
|
|
25763
26320
|
let [c, l] = useState(t ?? ""), u = typeof e == "string", f = u ? e : c, p = f.length > 0;
|
|
25764
26321
|
function h(e) {
|
|
25765
26322
|
u || l(e), r?.(e);
|
|
25766
26323
|
}
|
|
25767
|
-
function
|
|
26324
|
+
function O() {
|
|
25768
26325
|
u || l(""), r?.(""), a?.();
|
|
25769
26326
|
}
|
|
25770
26327
|
return /* @__PURE__ */ jsxs("fieldset", {
|
|
@@ -25790,13 +26347,856 @@ function SearchInput({ value: e, defaultValue: t, placeholder: n = "Search...",
|
|
|
25790
26347
|
size: 16,
|
|
25791
26348
|
className: "text-neutral-700"
|
|
25792
26349
|
}),
|
|
25793
|
-
onClick:
|
|
26350
|
+
onClick: O,
|
|
25794
26351
|
"aria-label": "Clear search",
|
|
25795
26352
|
className: "rounded p-0 transition-opacity hover:opacity-70"
|
|
25796
26353
|
})
|
|
25797
26354
|
]
|
|
25798
26355
|
});
|
|
25799
26356
|
}
|
|
26357
|
+
var chipStyles = tv({
|
|
26358
|
+
slots: {
|
|
26359
|
+
root: "inline-flex h-5 min-w-0 items-center gap-1 rounded-full py-0.5 pr-1 pl-2 text-[11px] font-semibold",
|
|
26360
|
+
close: "flex h-3.5 w-3.5 shrink-0 items-center justify-center rounded-full opacity-80 hover:opacity-100 focus-visible:ring-2 focus-visible:ring-current"
|
|
26361
|
+
},
|
|
26362
|
+
variants: { type: {
|
|
26363
|
+
client: { root: "bg-search-suggestion-client-bg text-search-suggestion-client-text" },
|
|
26364
|
+
member: { root: "bg-search-suggestion-member-bg text-search-suggestion-member-text" }
|
|
26365
|
+
} }
|
|
26366
|
+
});
|
|
26367
|
+
function SelectedChip({ suggestion: e, onClear: t }) {
|
|
26368
|
+
let n = chipStyles({ type: e.type });
|
|
26369
|
+
return /* @__PURE__ */ jsxs("span", {
|
|
26370
|
+
className: n.root(),
|
|
26371
|
+
children: [/* @__PURE__ */ jsx("span", {
|
|
26372
|
+
className: "truncate",
|
|
26373
|
+
children: e.label
|
|
26374
|
+
}), /* @__PURE__ */ jsx(StopPropagation, { children: /* @__PURE__ */ jsx(Pressable, {
|
|
26375
|
+
as: "span",
|
|
26376
|
+
onPress: t,
|
|
26377
|
+
"aria-label": `Clear ${e.label}`,
|
|
26378
|
+
className: n.close(),
|
|
26379
|
+
children: /* @__PURE__ */ jsx(CloseBoldIcon, { size: 10 })
|
|
26380
|
+
}) })]
|
|
26381
|
+
});
|
|
26382
|
+
}
|
|
26383
|
+
function SuggestionRow({ suggestion: e, onSelect: t }) {
|
|
26384
|
+
return /* @__PURE__ */ jsxs("button", {
|
|
26385
|
+
type: "button",
|
|
26386
|
+
onMouseDown: (n) => {
|
|
26387
|
+
n.preventDefault(), t(e);
|
|
26388
|
+
},
|
|
26389
|
+
className: "hover:bg-neutral-50 flex w-full items-center gap-2 px-3 py-2 text-left text-[12px] text-neutral-800",
|
|
26390
|
+
children: [e.type === "client" ? /* @__PURE__ */ jsx(BuildingOutlineIcon, {
|
|
26391
|
+
size: 12,
|
|
26392
|
+
className: "text-neutral-600"
|
|
26393
|
+
}) : /* @__PURE__ */ jsx(AccountOutlineIcon, {
|
|
26394
|
+
size: 12,
|
|
26395
|
+
className: "text-neutral-600"
|
|
26396
|
+
}), e.label]
|
|
26397
|
+
});
|
|
26398
|
+
}
|
|
26399
|
+
function SearchWithSuggestions({ value: e, onChange: t, suggestions: n, selected: r, onSelect: i, onClear: a, placeholder: o = "Search...", className: s }) {
|
|
26400
|
+
let [c, l] = useState(!1), u = n.filter((e) => e.type === "client"), f = n.filter((e) => e.type === "member"), p = c && !e && !r && n.length > 0;
|
|
26401
|
+
function h(e) {
|
|
26402
|
+
e.key === "Escape" && l(!1);
|
|
26403
|
+
}
|
|
26404
|
+
return /* @__PURE__ */ jsx(Dropdown, {
|
|
26405
|
+
open: p,
|
|
26406
|
+
onOpenChange: () => {},
|
|
26407
|
+
openOnHover: !1,
|
|
26408
|
+
align: "start",
|
|
26409
|
+
side: "bottom",
|
|
26410
|
+
offsetY: 4,
|
|
26411
|
+
trigger: /* @__PURE__ */ jsxs("div", {
|
|
26412
|
+
onFocus: () => l(!0),
|
|
26413
|
+
onBlur: () => l(!1),
|
|
26414
|
+
className: cn("border-neutral-500-variant-3 focus-within:border-primary-500 flex h-8 min-w-0 items-center gap-1.5 rounded-full border bg-white px-2 py-1", s),
|
|
26415
|
+
children: [/* @__PURE__ */ jsx(SearchIcon, {
|
|
26416
|
+
size: 20,
|
|
26417
|
+
className: "text-neutral-700"
|
|
26418
|
+
}), r ? /* @__PURE__ */ jsx(SelectedChip, {
|
|
26419
|
+
suggestion: r,
|
|
26420
|
+
onClear: a
|
|
26421
|
+
}) : /* @__PURE__ */ jsx(Input, {
|
|
26422
|
+
type: "text",
|
|
26423
|
+
value: e,
|
|
26424
|
+
placeholder: o,
|
|
26425
|
+
onChange: t,
|
|
26426
|
+
onKeyDown: h,
|
|
26427
|
+
className: "text-neutral-800 placeholder:text-neutral-700-alpha-60 m-0 h-5 min-w-0 flex-1 border-0 bg-transparent p-0 text-xs outline-none"
|
|
26428
|
+
})]
|
|
26429
|
+
}),
|
|
26430
|
+
children: /* @__PURE__ */ jsxs("div", {
|
|
26431
|
+
className: "border-neutral-200 w-[260px] overflow-hidden rounded-xl border bg-white shadow-lg",
|
|
26432
|
+
children: [
|
|
26433
|
+
u.length > 0 && /* @__PURE__ */ jsxs("div", {
|
|
26434
|
+
className: "pb-1",
|
|
26435
|
+
children: [/* @__PURE__ */ jsx("p", {
|
|
26436
|
+
className: "text-neutral-600 px-3 pt-2.5 pb-1 text-[10px] font-bold tracking-widest uppercase",
|
|
26437
|
+
children: "Clients"
|
|
26438
|
+
}), u.map((e) => /* @__PURE__ */ jsx(SuggestionRow, {
|
|
26439
|
+
suggestion: e,
|
|
26440
|
+
onSelect: i
|
|
26441
|
+
}, e.label))]
|
|
26442
|
+
}),
|
|
26443
|
+
u.length > 0 && f.length > 0 && /* @__PURE__ */ jsx("div", { className: "border-neutral-200 mt-1 border-t-2" }),
|
|
26444
|
+
f.length > 0 && /* @__PURE__ */ jsxs("div", {
|
|
26445
|
+
className: "pb-1",
|
|
26446
|
+
children: [/* @__PURE__ */ jsx("p", {
|
|
26447
|
+
className: "text-neutral-600 px-3 pt-2.5 pb-1 text-[10px] font-bold tracking-widest uppercase",
|
|
26448
|
+
children: "Members"
|
|
26449
|
+
}), f.map((e) => /* @__PURE__ */ jsx(SuggestionRow, {
|
|
26450
|
+
suggestion: e,
|
|
26451
|
+
onSelect: i
|
|
26452
|
+
}, e.label))]
|
|
26453
|
+
}),
|
|
26454
|
+
/* @__PURE__ */ jsx("div", {
|
|
26455
|
+
className: "border-neutral-200 mt-1 border-t-2 px-3 py-2",
|
|
26456
|
+
children: /* @__PURE__ */ jsx("p", {
|
|
26457
|
+
className: "text-neutral-600 text-[11px] font-medium",
|
|
26458
|
+
children: "Type to search all signals"
|
|
26459
|
+
})
|
|
26460
|
+
})
|
|
26461
|
+
]
|
|
26462
|
+
})
|
|
26463
|
+
});
|
|
26464
|
+
}
|
|
26465
|
+
var SEVERITY_CONFIG$1 = {
|
|
26466
|
+
fire: {
|
|
26467
|
+
icon: FireFillIcon,
|
|
26468
|
+
text: "text-tertiary-500-variant-2"
|
|
26469
|
+
},
|
|
26470
|
+
spark: {
|
|
26471
|
+
icon: InsightFillIcon,
|
|
26472
|
+
text: "text-primary-500"
|
|
26473
|
+
},
|
|
26474
|
+
watching: {
|
|
26475
|
+
icon: EyeFillIcon,
|
|
26476
|
+
text: "text-neutral-700-variant-1"
|
|
26477
|
+
},
|
|
26478
|
+
healthy: {
|
|
26479
|
+
icon: CheckIcon,
|
|
26480
|
+
text: "text-success-base"
|
|
26481
|
+
}
|
|
26482
|
+
}, signalCardStyles = tv({
|
|
26483
|
+
base: "relative h-full w-full text-left transition-colors focus:outline-none",
|
|
26484
|
+
variants: {
|
|
26485
|
+
layout: {
|
|
26486
|
+
home: "rounded-lg border-[1.5px] p-4",
|
|
26487
|
+
row: "border-b border-l-[3px] px-4 py-3.5"
|
|
26488
|
+
},
|
|
26489
|
+
status: {
|
|
26490
|
+
needs_response: "",
|
|
26491
|
+
needs_review: "",
|
|
26492
|
+
resolved: ""
|
|
26493
|
+
},
|
|
26494
|
+
selected: {
|
|
26495
|
+
true: "",
|
|
26496
|
+
false: ""
|
|
26497
|
+
}
|
|
26498
|
+
},
|
|
26499
|
+
compoundVariants: [
|
|
26500
|
+
{
|
|
26501
|
+
layout: "home",
|
|
26502
|
+
status: "needs_response",
|
|
26503
|
+
selected: !1,
|
|
26504
|
+
class: "border-tertiary-500-variant-3 bg-white-variant-8 hover:bg-tertiary-500-variant-4"
|
|
26505
|
+
},
|
|
26506
|
+
{
|
|
26507
|
+
layout: "home",
|
|
26508
|
+
status: "needs_response",
|
|
26509
|
+
selected: !0,
|
|
26510
|
+
class: "border-tertiary-500-variant-2 bg-tertiary-500-variant-4"
|
|
26511
|
+
},
|
|
26512
|
+
{
|
|
26513
|
+
layout: "home",
|
|
26514
|
+
status: "needs_review",
|
|
26515
|
+
selected: !1,
|
|
26516
|
+
class: "border-amber-200 bg-white-variant-8 hover:bg-amber-50"
|
|
26517
|
+
},
|
|
26518
|
+
{
|
|
26519
|
+
layout: "home",
|
|
26520
|
+
status: "needs_review",
|
|
26521
|
+
selected: !0,
|
|
26522
|
+
class: "border-amber-400 bg-amber-50"
|
|
26523
|
+
},
|
|
26524
|
+
{
|
|
26525
|
+
layout: "home",
|
|
26526
|
+
status: "resolved",
|
|
26527
|
+
selected: !1,
|
|
26528
|
+
class: "border-green-200 bg-white-variant-8 hover:bg-green-50"
|
|
26529
|
+
},
|
|
26530
|
+
{
|
|
26531
|
+
layout: "home",
|
|
26532
|
+
status: "resolved",
|
|
26533
|
+
selected: !0,
|
|
26534
|
+
class: "border-green-500 bg-green-50"
|
|
26535
|
+
},
|
|
26536
|
+
{
|
|
26537
|
+
layout: "row",
|
|
26538
|
+
status: "needs_response",
|
|
26539
|
+
selected: !1,
|
|
26540
|
+
class: "border-neutral-200 border-l-transparent hover:bg-neutral-50"
|
|
26541
|
+
},
|
|
26542
|
+
{
|
|
26543
|
+
layout: "row",
|
|
26544
|
+
status: "needs_response",
|
|
26545
|
+
selected: !0,
|
|
26546
|
+
class: "border-neutral-200 border-l-red-500 bg-neutral-50"
|
|
26547
|
+
},
|
|
26548
|
+
{
|
|
26549
|
+
layout: "row",
|
|
26550
|
+
status: "needs_review",
|
|
26551
|
+
selected: !1,
|
|
26552
|
+
class: "border-neutral-200 border-l-transparent hover:bg-neutral-50"
|
|
26553
|
+
},
|
|
26554
|
+
{
|
|
26555
|
+
layout: "row",
|
|
26556
|
+
status: "needs_review",
|
|
26557
|
+
selected: !0,
|
|
26558
|
+
class: "border-neutral-200 border-l-amber-400 bg-neutral-50"
|
|
26559
|
+
},
|
|
26560
|
+
{
|
|
26561
|
+
layout: "row",
|
|
26562
|
+
status: "resolved",
|
|
26563
|
+
selected: !1,
|
|
26564
|
+
class: "border-neutral-200 border-l-transparent hover:bg-neutral-50"
|
|
26565
|
+
},
|
|
26566
|
+
{
|
|
26567
|
+
layout: "row",
|
|
26568
|
+
status: "resolved",
|
|
26569
|
+
selected: !0,
|
|
26570
|
+
class: "border-neutral-200 border-l-green-500 bg-neutral-50"
|
|
26571
|
+
}
|
|
26572
|
+
]
|
|
26573
|
+
});
|
|
26574
|
+
function SourceIcons({ sourceTypes: e }) {
|
|
26575
|
+
return /* @__PURE__ */ jsxs("span", {
|
|
26576
|
+
className: "absolute top-3.5 right-3 flex items-center gap-1",
|
|
26577
|
+
children: [e.includes("gmail") && /* @__PURE__ */ jsx(GmailIcon, { size: 16 }), e.includes("slack") && /* @__PURE__ */ jsx(SlackIcon, { size: 18 })]
|
|
26578
|
+
});
|
|
26579
|
+
}
|
|
26580
|
+
function SignalCard({ title: e, clientName: t, requesterName: n, explanation: r, severity: i, status: a, slaLabel: o, slaStatusLabel: s, sourceTypes: c, patternContext: l, variant: u = "home", selected: f = !1, onClick: p, className: h }) {
|
|
26581
|
+
let g = SEVERITY_CONFIG$1[i];
|
|
26582
|
+
return /* @__PURE__ */ jsxs(Pressable, {
|
|
26583
|
+
onPress: p,
|
|
26584
|
+
className: cn(signalCardStyles({
|
|
26585
|
+
layout: u,
|
|
26586
|
+
status: a,
|
|
26587
|
+
selected: f
|
|
26588
|
+
}), h),
|
|
26589
|
+
children: [
|
|
26590
|
+
/* @__PURE__ */ jsx(SourceIcons, { sourceTypes: c }),
|
|
26591
|
+
/* @__PURE__ */ jsxs("div", {
|
|
26592
|
+
className: "mb-1 flex items-center gap-1.5 pr-10",
|
|
26593
|
+
children: [/* @__PURE__ */ jsx(InfoTooltip, {
|
|
26594
|
+
content: s,
|
|
26595
|
+
children: /* @__PURE__ */ jsx("span", {
|
|
26596
|
+
className: cn("shrink-0", g.text),
|
|
26597
|
+
children: /* @__PURE__ */ jsx(g.icon, { size: 16 })
|
|
26598
|
+
})
|
|
26599
|
+
}), /* @__PURE__ */ jsx("span", {
|
|
26600
|
+
className: cn("text-[12px] font-semibold", g.text),
|
|
26601
|
+
children: o
|
|
26602
|
+
})]
|
|
26603
|
+
}),
|
|
26604
|
+
/* @__PURE__ */ jsx("p", {
|
|
26605
|
+
className: "mb-1 line-clamp-1 pr-10 text-[13px] leading-snug font-semibold text-neutral-900",
|
|
26606
|
+
children: e
|
|
26607
|
+
}),
|
|
26608
|
+
r && /* @__PURE__ */ jsx("p", {
|
|
26609
|
+
className: "mb-1 line-clamp-1 pr-10 text-[11px] leading-snug text-neutral-700-variant-1",
|
|
26610
|
+
children: r
|
|
26611
|
+
}),
|
|
26612
|
+
(t || n) && /* @__PURE__ */ jsx("p", {
|
|
26613
|
+
className: "line-clamp-1 pr-10 text-[11px] font-medium text-neutral-700-variant-1",
|
|
26614
|
+
children: [t, n].filter(Boolean).join(" · ")
|
|
26615
|
+
}),
|
|
26616
|
+
l && /* @__PURE__ */ jsx("p", {
|
|
26617
|
+
className: "mt-1 pr-10 text-[10px] font-medium text-primary-500",
|
|
26618
|
+
children: l
|
|
26619
|
+
})
|
|
26620
|
+
]
|
|
26621
|
+
});
|
|
26622
|
+
}
|
|
26623
|
+
function SignalCardSkeleton({ variant: e = "home", className: t }) {
|
|
26624
|
+
return /* @__PURE__ */ jsxs("div", {
|
|
26625
|
+
className: cn("relative h-full w-full", e === "home" ? "rounded-lg border-[1.5px] border-neutral-200-variant-1 bg-white-variant-8 p-4" : "border-b border-neutral-200-variant-1 px-4 py-3.5", t),
|
|
26626
|
+
children: [
|
|
26627
|
+
/* @__PURE__ */ jsx("div", { className: "absolute top-3.5 right-3 size-4 rounded-md bg-neutral-300-variant-3" }),
|
|
26628
|
+
/* @__PURE__ */ jsxs("div", {
|
|
26629
|
+
className: "mb-1 flex items-center gap-2 pr-10",
|
|
26630
|
+
children: [/* @__PURE__ */ jsx("div", { className: "size-4 shrink-0 rounded-md bg-neutral-300-variant-3" }), /* @__PURE__ */ jsx(Skeleton, { className: "h-3.5 w-28" })]
|
|
26631
|
+
}),
|
|
26632
|
+
/* @__PURE__ */ jsx(Skeleton, { className: "mb-1 h-4.5 w-8/12" }),
|
|
26633
|
+
/* @__PURE__ */ jsx(Skeleton, { className: "mb-1 h-4 w-10/12" }),
|
|
26634
|
+
/* @__PURE__ */ jsx(Skeleton, { className: "h-4 w-6/12" })
|
|
26635
|
+
]
|
|
26636
|
+
});
|
|
26637
|
+
}
|
|
26638
|
+
function SignalClusterCard({ title: e, body: t, ctaQuestion: n, destinationLabel: r, signalCount: i, onClick: a, className: o }) {
|
|
26639
|
+
return /* @__PURE__ */ jsxs(Pressable, {
|
|
26640
|
+
onPress: a,
|
|
26641
|
+
className: cn("h-full w-full rounded-lg border-[1.5px] border-neutral-400-variant-4 bg-white-variant-8 p-4 text-left transition-colors hover:border-neutral-500-variant-4 hover:bg-neutral-200-variant-1", o),
|
|
26642
|
+
children: [
|
|
26643
|
+
/* @__PURE__ */ jsxs("div", {
|
|
26644
|
+
className: "mb-1.5 flex items-start justify-between gap-2",
|
|
26645
|
+
children: [/* @__PURE__ */ jsx("p", {
|
|
26646
|
+
className: "text-[13px] leading-snug font-semibold text-neutral-800",
|
|
26647
|
+
children: e
|
|
26648
|
+
}), /* @__PURE__ */ jsxs("span", {
|
|
26649
|
+
className: "mt-0.5 shrink-0 text-[10px] font-medium text-neutral-600-variant-2",
|
|
26650
|
+
children: [
|
|
26651
|
+
i,
|
|
26652
|
+
" signal",
|
|
26653
|
+
i === 1 ? "" : "s"
|
|
26654
|
+
]
|
|
26655
|
+
})]
|
|
26656
|
+
}),
|
|
26657
|
+
/* @__PURE__ */ jsx("p", {
|
|
26658
|
+
className: "mb-1.5 text-[11px] leading-snug text-neutral-700-variant-1",
|
|
26659
|
+
children: t
|
|
26660
|
+
}),
|
|
26661
|
+
/* @__PURE__ */ jsx("p", {
|
|
26662
|
+
className: "mb-3 text-[11px] leading-snug text-neutral-700-variant-1",
|
|
26663
|
+
children: n
|
|
26664
|
+
}),
|
|
26665
|
+
/* @__PURE__ */ jsxs("div", {
|
|
26666
|
+
className: "text-primary-500 flex items-center gap-1 text-[11px] font-medium",
|
|
26667
|
+
children: [/* @__PURE__ */ jsx("span", { children: r }), /* @__PURE__ */ jsx(ArrowIcon, {
|
|
26668
|
+
direction: "right",
|
|
26669
|
+
size: 10
|
|
26670
|
+
})]
|
|
26671
|
+
})
|
|
26672
|
+
]
|
|
26673
|
+
});
|
|
26674
|
+
}
|
|
26675
|
+
function SignalClusterCardSkeleton({ className: e }) {
|
|
26676
|
+
return /* @__PURE__ */ jsxs("div", {
|
|
26677
|
+
className: cn("h-full w-full rounded-lg border-[1.5px] border-neutral-200-variant-1 bg-white-variant-8 p-4", e),
|
|
26678
|
+
children: [
|
|
26679
|
+
/* @__PURE__ */ jsxs("div", {
|
|
26680
|
+
className: "mb-1.5 flex items-start justify-between gap-2",
|
|
26681
|
+
children: [/* @__PURE__ */ jsx(Skeleton, { className: "h-4 w-7/12" }), /* @__PURE__ */ jsx(Skeleton, { className: "mt-0.5 h-3 w-12 shrink-0" })]
|
|
26682
|
+
}),
|
|
26683
|
+
/* @__PURE__ */ jsx(Skeleton, { className: "mb-1.5 h-3 w-11/12" }),
|
|
26684
|
+
/* @__PURE__ */ jsx(Skeleton, { className: "mb-3 h-3 w-9/12" }),
|
|
26685
|
+
/* @__PURE__ */ jsx(Skeleton, { className: "h-3 w-5/12" })
|
|
26686
|
+
]
|
|
26687
|
+
});
|
|
26688
|
+
}
|
|
26689
|
+
var barStyles = tv({
|
|
26690
|
+
base: "h-full rounded-full",
|
|
26691
|
+
variants: { status: {
|
|
26692
|
+
met: "bg-green-400",
|
|
26693
|
+
on_track: "bg-green-400",
|
|
26694
|
+
approaching: "bg-yellow-300",
|
|
26695
|
+
overdue: "bg-amber-400",
|
|
26696
|
+
way_overdue: "bg-red-500"
|
|
26697
|
+
} }
|
|
26698
|
+
}), badgeStyles = tv({
|
|
26699
|
+
base: "rounded-full px-2 py-0.5 text-[10px] font-semibold",
|
|
26700
|
+
variants: { status: {
|
|
26701
|
+
met: "bg-green-50 text-green-700",
|
|
26702
|
+
on_track: "bg-green-50 text-green-700",
|
|
26703
|
+
approaching: "bg-yellow-50 text-yellow-700",
|
|
26704
|
+
overdue: "bg-amber-50 text-amber-700",
|
|
26705
|
+
way_overdue: "bg-red-50 text-red-700"
|
|
26706
|
+
} }
|
|
26707
|
+
});
|
|
26708
|
+
function SlaProgressBar({ policyLabel: e, statusLabel: t, status: n, actualLabel: r, windowLabel: i, percentUsed: a, className: o, ...s }) {
|
|
26709
|
+
let c = Math.min(a, 100);
|
|
26710
|
+
return /* @__PURE__ */ jsxs("div", {
|
|
26711
|
+
className: cn("flex flex-col gap-2", o),
|
|
26712
|
+
...s,
|
|
26713
|
+
children: [
|
|
26714
|
+
/* @__PURE__ */ jsxs("div", {
|
|
26715
|
+
className: "flex items-center justify-between",
|
|
26716
|
+
children: [/* @__PURE__ */ jsx("p", {
|
|
26717
|
+
className: "text-[10px] font-bold tracking-widest text-neutral-900 uppercase",
|
|
26718
|
+
children: e
|
|
26719
|
+
}), /* @__PURE__ */ jsx("span", {
|
|
26720
|
+
className: badgeStyles({ status: n }),
|
|
26721
|
+
children: t
|
|
26722
|
+
})]
|
|
26723
|
+
}),
|
|
26724
|
+
/* @__PURE__ */ jsx("div", {
|
|
26725
|
+
className: "h-1.5 overflow-hidden rounded-full bg-neutral-200",
|
|
26726
|
+
children: /* @__PURE__ */ jsx("div", {
|
|
26727
|
+
className: barStyles({ status: n }),
|
|
26728
|
+
style: { width: `${c}%` }
|
|
26729
|
+
})
|
|
26730
|
+
}),
|
|
26731
|
+
/* @__PURE__ */ jsxs("div", {
|
|
26732
|
+
className: "flex items-center justify-between text-[11px] text-neutral-700",
|
|
26733
|
+
children: [/* @__PURE__ */ jsxs("span", { children: [
|
|
26734
|
+
"Actual:",
|
|
26735
|
+
" ",
|
|
26736
|
+
/* @__PURE__ */ jsx("span", {
|
|
26737
|
+
className: "font-semibold text-neutral-800",
|
|
26738
|
+
children: r
|
|
26739
|
+
})
|
|
26740
|
+
] }), /* @__PURE__ */ jsxs("span", { children: [
|
|
26741
|
+
"Window:",
|
|
26742
|
+
" ",
|
|
26743
|
+
/* @__PURE__ */ jsx("span", {
|
|
26744
|
+
className: "font-semibold text-neutral-800",
|
|
26745
|
+
children: i
|
|
26746
|
+
})
|
|
26747
|
+
] })]
|
|
26748
|
+
})
|
|
26749
|
+
]
|
|
26750
|
+
});
|
|
26751
|
+
}
|
|
26752
|
+
var SEVERITY_CONFIG = {
|
|
26753
|
+
fire: {
|
|
26754
|
+
icon: FireFillIcon,
|
|
26755
|
+
text: "text-tertiary-500-variant-2",
|
|
26756
|
+
label: "Fire"
|
|
26757
|
+
},
|
|
26758
|
+
spark: {
|
|
26759
|
+
icon: InsightFillIcon,
|
|
26760
|
+
text: "text-primary-500",
|
|
26761
|
+
label: "Spark"
|
|
26762
|
+
},
|
|
26763
|
+
watching: {
|
|
26764
|
+
icon: void 0,
|
|
26765
|
+
text: "text-neutral-700-variant-1",
|
|
26766
|
+
label: "Watching"
|
|
26767
|
+
}
|
|
26768
|
+
}, STATUS_BADGE_STYLES = {
|
|
26769
|
+
fire: {
|
|
26770
|
+
badge: "bg-red-50 text-red-700 border-red-200",
|
|
26771
|
+
dot: "bg-red-500",
|
|
26772
|
+
accentBar: "border-l-[3px] border-l-red-500"
|
|
26773
|
+
},
|
|
26774
|
+
review: {
|
|
26775
|
+
badge: "bg-amber-50 text-amber-700 border-amber-200",
|
|
26776
|
+
dot: "bg-amber-400",
|
|
26777
|
+
accentBar: "border-l-[3px] border-l-amber-400"
|
|
26778
|
+
},
|
|
26779
|
+
neutral: {
|
|
26780
|
+
badge: "bg-neutral-100 text-neutral-700 border-neutral-300",
|
|
26781
|
+
dot: "bg-neutral-400",
|
|
26782
|
+
accentBar: "border-l-[3px] border-l-neutral-400"
|
|
26783
|
+
}
|
|
26784
|
+
};
|
|
26785
|
+
function SectionCard({ title: e, titleAdornment: t, children: n }) {
|
|
26786
|
+
return /* @__PURE__ */ jsxs("div", {
|
|
26787
|
+
className: "rounded-xl border border-neutral-200-variant-1 bg-white-variant-8 px-4 py-3.5",
|
|
26788
|
+
children: [/* @__PURE__ */ jsxs("div", {
|
|
26789
|
+
className: "mb-2 flex items-center gap-1.5",
|
|
26790
|
+
children: [/* @__PURE__ */ jsx("p", {
|
|
26791
|
+
className: "text-[10px] font-bold tracking-widest text-neutral-900 uppercase",
|
|
26792
|
+
children: e
|
|
26793
|
+
}), t]
|
|
26794
|
+
}), n]
|
|
26795
|
+
});
|
|
26796
|
+
}
|
|
26797
|
+
function OpenSourceIcon() {
|
|
26798
|
+
return /* @__PURE__ */ jsxs("svg", {
|
|
26799
|
+
width: "11",
|
|
26800
|
+
height: "11",
|
|
26801
|
+
viewBox: "0 0 24 24",
|
|
26802
|
+
fill: "none",
|
|
26803
|
+
stroke: "currentColor",
|
|
26804
|
+
strokeWidth: "2",
|
|
26805
|
+
strokeLinecap: "round",
|
|
26806
|
+
strokeLinejoin: "round",
|
|
26807
|
+
children: [
|
|
26808
|
+
/* @__PURE__ */ jsx("path", { d: "M18 13v6a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2V8a2 2 0 0 1 2-2h6" }),
|
|
26809
|
+
/* @__PURE__ */ jsx("polyline", { points: "15 3 21 3 21 9" }),
|
|
26810
|
+
/* @__PURE__ */ jsx("line", {
|
|
26811
|
+
x1: "10",
|
|
26812
|
+
y1: "14",
|
|
26813
|
+
x2: "21",
|
|
26814
|
+
y2: "3"
|
|
26815
|
+
})
|
|
26816
|
+
]
|
|
26817
|
+
});
|
|
26818
|
+
}
|
|
26819
|
+
function CheckActionIcon() {
|
|
26820
|
+
return /* @__PURE__ */ jsx("svg", {
|
|
26821
|
+
width: "11",
|
|
26822
|
+
height: "11",
|
|
26823
|
+
viewBox: "0 0 24 24",
|
|
26824
|
+
fill: "none",
|
|
26825
|
+
stroke: "currentColor",
|
|
26826
|
+
strokeWidth: "2.5",
|
|
26827
|
+
strokeLinecap: "round",
|
|
26828
|
+
strokeLinejoin: "round",
|
|
26829
|
+
children: /* @__PURE__ */ jsx("path", { d: "M20 6 9 17l-5-5" })
|
|
26830
|
+
});
|
|
26831
|
+
}
|
|
26832
|
+
function DismissActionIcon() {
|
|
26833
|
+
return /* @__PURE__ */ jsx("svg", {
|
|
26834
|
+
width: "11",
|
|
26835
|
+
height: "11",
|
|
26836
|
+
viewBox: "0 0 24 24",
|
|
26837
|
+
fill: "none",
|
|
26838
|
+
stroke: "currentColor",
|
|
26839
|
+
strokeWidth: "2.5",
|
|
26840
|
+
strokeLinecap: "round",
|
|
26841
|
+
strokeLinejoin: "round",
|
|
26842
|
+
children: /* @__PURE__ */ jsx("path", { d: "M18 6 6 18M6 6l12 12" })
|
|
26843
|
+
});
|
|
26844
|
+
}
|
|
26845
|
+
function CopyActionIcon() {
|
|
26846
|
+
return /* @__PURE__ */ jsxs("svg", {
|
|
26847
|
+
width: "11",
|
|
26848
|
+
height: "11",
|
|
26849
|
+
viewBox: "0 0 24 24",
|
|
26850
|
+
fill: "none",
|
|
26851
|
+
stroke: "currentColor",
|
|
26852
|
+
strokeWidth: "2",
|
|
26853
|
+
strokeLinecap: "round",
|
|
26854
|
+
strokeLinejoin: "round",
|
|
26855
|
+
children: [/* @__PURE__ */ jsx("rect", {
|
|
26856
|
+
x: "9",
|
|
26857
|
+
y: "9",
|
|
26858
|
+
width: "13",
|
|
26859
|
+
height: "13",
|
|
26860
|
+
rx: "2",
|
|
26861
|
+
ry: "2"
|
|
26862
|
+
}), /* @__PURE__ */ jsx("path", { d: "M5 15H4a2 2 0 0 1-2-2V4a2 2 0 0 1 2-2h9a2 2 0 0 1 2 2v1" })]
|
|
26863
|
+
});
|
|
26864
|
+
}
|
|
26865
|
+
function GuardrailTooltip({ text: e }) {
|
|
26866
|
+
return /* @__PURE__ */ jsx(InfoTooltip, {
|
|
26867
|
+
content: e,
|
|
26868
|
+
children: /* @__PURE__ */ jsx("span", {
|
|
26869
|
+
className: "flex text-neutral-600 transition-colors hover:text-neutral-900",
|
|
26870
|
+
children: /* @__PURE__ */ jsx("svg", {
|
|
26871
|
+
width: "13",
|
|
26872
|
+
height: "13",
|
|
26873
|
+
viewBox: "0 0 24 24",
|
|
26874
|
+
fill: "currentColor",
|
|
26875
|
+
"aria-hidden": "true",
|
|
26876
|
+
children: /* @__PURE__ */ jsx("path", { 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" })
|
|
26877
|
+
})
|
|
26878
|
+
})
|
|
26879
|
+
});
|
|
26880
|
+
}
|
|
26881
|
+
function SignalDetailPanel({ title: e, severity: t, slaDurationLabel: n, statusLabel: r, statusTone: i, sourceType: a, sourceLink: o, clientCompany: s, contactName: c, teamCompanyName: l, recipientLabel: u, sla: f, claim: p, sameThreadGuardrail: h, evidenceItems: O, nextStep: A, actionRationale: Ks, rankingRationale: R, dismissOptions: B, onClose: V, onResolve: qs, onDismiss: Js, className: Ys, ...Xs }) {
|
|
26882
|
+
let H = SEVERITY_CONFIG[t], [Zs, Qs] = useState(!1), [$s, ec] = useState(null), [tc, nc] = useState(!1), rc = () => {
|
|
26883
|
+
let t = [
|
|
26884
|
+
e,
|
|
26885
|
+
"",
|
|
26886
|
+
p,
|
|
26887
|
+
"",
|
|
26888
|
+
h
|
|
26889
|
+
];
|
|
26890
|
+
navigator.clipboard.writeText(t.join("\n")).catch(() => {}), nc(!0), setTimeout(() => nc(!1), 2e3);
|
|
26891
|
+
}, ic = () => {
|
|
26892
|
+
Js?.($s ?? void 0), Qs(!1), ec(null);
|
|
26893
|
+
};
|
|
26894
|
+
return /* @__PURE__ */ jsxs("div", {
|
|
26895
|
+
className: cn("flex h-full flex-col overflow-y-auto bg-white-variant-8", STATUS_BADGE_STYLES[i].accentBar, Ys),
|
|
26896
|
+
...Xs,
|
|
26897
|
+
children: [/* @__PURE__ */ jsxs("div", {
|
|
26898
|
+
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",
|
|
26899
|
+
children: [/* @__PURE__ */ jsxs("div", {
|
|
26900
|
+
className: "flex items-start justify-between gap-3",
|
|
26901
|
+
children: [/* @__PURE__ */ jsxs("div", {
|
|
26902
|
+
className: "flex min-w-0 flex-1 flex-wrap items-center gap-2.5",
|
|
26903
|
+
children: [
|
|
26904
|
+
/* @__PURE__ */ jsx("h2", {
|
|
26905
|
+
className: "truncate text-[15px] leading-snug font-semibold text-neutral-900",
|
|
26906
|
+
children: e
|
|
26907
|
+
}),
|
|
26908
|
+
/* @__PURE__ */ jsxs("span", {
|
|
26909
|
+
className: cn("inline-flex shrink-0 items-center gap-1 text-[12px] font-semibold", H.text),
|
|
26910
|
+
children: [
|
|
26911
|
+
H.icon && /* @__PURE__ */ jsx(H.icon, { size: 16 }),
|
|
26912
|
+
H.label,
|
|
26913
|
+
n && ` · ${n}`
|
|
26914
|
+
]
|
|
26915
|
+
}),
|
|
26916
|
+
/* @__PURE__ */ jsxs("span", {
|
|
26917
|
+
className: cn("inline-flex shrink-0 items-center gap-1.5 rounded-full border px-2 py-0.5 text-[11px] font-medium", STATUS_BADGE_STYLES[i].badge),
|
|
26918
|
+
children: [/* @__PURE__ */ jsx("span", { className: cn("h-1.5 w-1.5 shrink-0 rounded-full", STATUS_BADGE_STYLES[i].dot) }), r]
|
|
26919
|
+
})
|
|
26920
|
+
]
|
|
26921
|
+
}), V && /* @__PURE__ */ jsx("button", {
|
|
26922
|
+
type: "button",
|
|
26923
|
+
onClick: V,
|
|
26924
|
+
"aria-label": "Close",
|
|
26925
|
+
className: "flex h-7 w-7 shrink-0 items-center justify-center rounded-lg hover:bg-neutral-100",
|
|
26926
|
+
children: /* @__PURE__ */ jsx("svg", {
|
|
26927
|
+
width: "14",
|
|
26928
|
+
height: "14",
|
|
26929
|
+
viewBox: "0 0 24 24",
|
|
26930
|
+
fill: "none",
|
|
26931
|
+
stroke: "currentColor",
|
|
26932
|
+
strokeWidth: "2",
|
|
26933
|
+
children: /* @__PURE__ */ jsx("path", {
|
|
26934
|
+
d: "M18 6 6 18M6 6l12 12",
|
|
26935
|
+
strokeLinecap: "round"
|
|
26936
|
+
})
|
|
26937
|
+
})
|
|
26938
|
+
})]
|
|
26939
|
+
}), (c || l || u) && /* @__PURE__ */ jsxs("div", {
|
|
26940
|
+
className: "mt-2 flex flex-col gap-1.5 rounded-lg border border-neutral-200-variant-1 bg-neutral-50 px-3 py-2.5",
|
|
26941
|
+
children: [c && /* @__PURE__ */ jsxs("div", {
|
|
26942
|
+
className: "flex items-center gap-2 min-w-0",
|
|
26943
|
+
children: [
|
|
26944
|
+
/* @__PURE__ */ jsx("span", {
|
|
26945
|
+
className: "w-9 shrink-0 text-[10px] font-semibold tracking-wide text-neutral-700-variant-1 uppercase",
|
|
26946
|
+
children: "From"
|
|
26947
|
+
}),
|
|
26948
|
+
/* @__PURE__ */ jsx("span", {
|
|
26949
|
+
className: "flex h-[18px] w-[18px] shrink-0 items-center justify-center rounded-full bg-neutral-200 text-[9px] font-bold text-neutral-700-variant-1",
|
|
26950
|
+
children: c.charAt(0).toUpperCase()
|
|
26951
|
+
}),
|
|
26952
|
+
/* @__PURE__ */ jsx("span", {
|
|
26953
|
+
className: "truncate text-[12px] font-semibold text-neutral-900",
|
|
26954
|
+
children: c
|
|
26955
|
+
}),
|
|
26956
|
+
s && /* @__PURE__ */ jsx("span", {
|
|
26957
|
+
className: "shrink-0 truncate rounded-full border border-neutral-300 bg-white px-2 py-px text-[10px] font-medium text-neutral-700-variant-1",
|
|
26958
|
+
children: s
|
|
26959
|
+
}),
|
|
26960
|
+
/* @__PURE__ */ jsx(RoleBadge, { role: "client" })
|
|
26961
|
+
]
|
|
26962
|
+
}), (l || u) && /* @__PURE__ */ jsxs("div", {
|
|
26963
|
+
className: "flex items-center gap-2 min-w-0",
|
|
26964
|
+
children: [
|
|
26965
|
+
/* @__PURE__ */ jsx("span", {
|
|
26966
|
+
className: "w-9 shrink-0 text-[10px] font-semibold tracking-wide text-neutral-700-variant-1 uppercase",
|
|
26967
|
+
children: "To"
|
|
26968
|
+
}),
|
|
26969
|
+
/* @__PURE__ */ jsx("span", {
|
|
26970
|
+
className: "flex h-[18px] w-[18px] shrink-0 items-center justify-center",
|
|
26971
|
+
children: jsx(a === "gmail" ? GmailIcon : SlackIcon, { size: 15 })
|
|
26972
|
+
}),
|
|
26973
|
+
l && /* @__PURE__ */ jsx("span", {
|
|
26974
|
+
className: "truncate text-[12px] font-semibold text-neutral-900",
|
|
26975
|
+
children: l
|
|
26976
|
+
}),
|
|
26977
|
+
u && /* @__PURE__ */ jsx("span", {
|
|
26978
|
+
className: "shrink-0 truncate rounded-full border border-neutral-300 bg-white px-2 py-px text-[10px] font-medium text-neutral-700-variant-1",
|
|
26979
|
+
children: u
|
|
26980
|
+
}),
|
|
26981
|
+
/* @__PURE__ */ jsx(RoleBadge, { role: "team" })
|
|
26982
|
+
]
|
|
26983
|
+
})]
|
|
26984
|
+
})]
|
|
26985
|
+
}), /* @__PURE__ */ jsxs("div", {
|
|
26986
|
+
className: "flex flex-col gap-3 p-4",
|
|
26987
|
+
children: [
|
|
26988
|
+
f ? /* @__PURE__ */ jsxs("div", {
|
|
26989
|
+
className: "grid grid-cols-1 items-stretch gap-3 xl:grid-cols-2",
|
|
26990
|
+
children: [/* @__PURE__ */ jsx("div", {
|
|
26991
|
+
className: "rounded-xl border border-neutral-200-variant-1 bg-white-variant-8 px-4 py-3.5",
|
|
26992
|
+
children: /* @__PURE__ */ jsx(SlaProgressBar, { ...f })
|
|
26993
|
+
}), /* @__PURE__ */ jsx(SectionCard, {
|
|
26994
|
+
title: "What QTalo found",
|
|
26995
|
+
titleAdornment: /* @__PURE__ */ jsx(GuardrailTooltip, { text: h }),
|
|
26996
|
+
children: /* @__PURE__ */ jsx("p", {
|
|
26997
|
+
className: "text-sm leading-snug text-neutral-800",
|
|
26998
|
+
children: p
|
|
26999
|
+
})
|
|
27000
|
+
})]
|
|
27001
|
+
}) : /* @__PURE__ */ jsx(SectionCard, {
|
|
27002
|
+
title: "What QTalo found",
|
|
27003
|
+
titleAdornment: /* @__PURE__ */ jsx(GuardrailTooltip, { text: h }),
|
|
27004
|
+
children: /* @__PURE__ */ jsx("p", {
|
|
27005
|
+
className: "text-sm leading-snug text-neutral-800",
|
|
27006
|
+
children: p
|
|
27007
|
+
})
|
|
27008
|
+
}),
|
|
27009
|
+
/* @__PURE__ */ jsx(SectionCard, {
|
|
27010
|
+
title: "Evidence analysis",
|
|
27011
|
+
children: /* @__PURE__ */ jsx(EvidenceTimeline, {
|
|
27012
|
+
items: O,
|
|
27013
|
+
canExpandThread: !0,
|
|
27014
|
+
tone: i,
|
|
27015
|
+
threadTitle: e,
|
|
27016
|
+
clientCompany: s,
|
|
27017
|
+
contactName: c,
|
|
27018
|
+
teamCompanyName: l,
|
|
27019
|
+
recipientLabel: u
|
|
27020
|
+
})
|
|
27021
|
+
}),
|
|
27022
|
+
A && /* @__PURE__ */ jsxs(SectionCard, {
|
|
27023
|
+
title: "Next step",
|
|
27024
|
+
children: [/* @__PURE__ */ jsx("p", {
|
|
27025
|
+
className: "text-sm font-semibold text-neutral-900",
|
|
27026
|
+
children: A
|
|
27027
|
+
}), Ks && /* @__PURE__ */ jsx("p", {
|
|
27028
|
+
className: "mt-1 text-sm text-neutral-700",
|
|
27029
|
+
children: Ks
|
|
27030
|
+
})]
|
|
27031
|
+
}),
|
|
27032
|
+
R && /* @__PURE__ */ jsxs("div", {
|
|
27033
|
+
className: "rounded-xl border border-neutral-200-variant-1 bg-neutral-50 px-4 py-3.5",
|
|
27034
|
+
children: [/* @__PURE__ */ jsx("p", {
|
|
27035
|
+
className: "mb-2 text-[10px] font-bold tracking-widest text-neutral-900 uppercase",
|
|
27036
|
+
children: "Why ranked first"
|
|
27037
|
+
}), /* @__PURE__ */ jsx("p", {
|
|
27038
|
+
className: "text-sm text-neutral-800",
|
|
27039
|
+
children: R
|
|
27040
|
+
})]
|
|
27041
|
+
}),
|
|
27042
|
+
/* @__PURE__ */ jsx(SectionCard, {
|
|
27043
|
+
title: "What do you want to do?",
|
|
27044
|
+
children: Zs ? /* @__PURE__ */ jsxs("div", {
|
|
27045
|
+
className: "flex flex-col gap-2",
|
|
27046
|
+
children: [
|
|
27047
|
+
/* @__PURE__ */ jsx("p", {
|
|
27048
|
+
className: "text-[12px] text-neutral-700-variant-1",
|
|
27049
|
+
children: "Why isn't this useful?"
|
|
27050
|
+
}),
|
|
27051
|
+
/* @__PURE__ */ jsx("div", {
|
|
27052
|
+
className: "flex flex-wrap gap-1.5",
|
|
27053
|
+
children: B.map((e) => /* @__PURE__ */ jsx("button", {
|
|
27054
|
+
type: "button",
|
|
27055
|
+
onClick: () => ec((t) => t === e.id ? null : e.id),
|
|
27056
|
+
className: $s === 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",
|
|
27057
|
+
children: e.label
|
|
27058
|
+
}, e.id))
|
|
27059
|
+
}),
|
|
27060
|
+
/* @__PURE__ */ jsxs("div", {
|
|
27061
|
+
className: "mt-1 flex items-center gap-3",
|
|
27062
|
+
children: [
|
|
27063
|
+
/* @__PURE__ */ jsx("button", {
|
|
27064
|
+
type: "button",
|
|
27065
|
+
onClick: ic,
|
|
27066
|
+
className: "rounded-lg bg-neutral-800 px-3 py-1.5 text-xs font-semibold text-white",
|
|
27067
|
+
children: "Confirm"
|
|
27068
|
+
}),
|
|
27069
|
+
/* @__PURE__ */ jsx("button", {
|
|
27070
|
+
type: "button",
|
|
27071
|
+
onClick: () => {
|
|
27072
|
+
Qs(!1), ec(null);
|
|
27073
|
+
},
|
|
27074
|
+
className: "text-xs font-medium text-neutral-700-variant-1 hover:underline",
|
|
27075
|
+
children: "Cancel"
|
|
27076
|
+
}),
|
|
27077
|
+
/* @__PURE__ */ jsx("button", {
|
|
27078
|
+
type: "button",
|
|
27079
|
+
onClick: qs,
|
|
27080
|
+
className: "ml-auto text-xs font-medium text-primary-500 hover:underline",
|
|
27081
|
+
children: "Mark handled instead"
|
|
27082
|
+
})
|
|
27083
|
+
]
|
|
27084
|
+
})
|
|
27085
|
+
]
|
|
27086
|
+
}) : /* @__PURE__ */ jsxs("div", {
|
|
27087
|
+
className: "flex flex-wrap items-center gap-2",
|
|
27088
|
+
children: [
|
|
27089
|
+
o && /* @__PURE__ */ jsxs("a", {
|
|
27090
|
+
href: o,
|
|
27091
|
+
target: "_blank",
|
|
27092
|
+
rel: "noopener noreferrer",
|
|
27093
|
+
className: "inline-flex items-center 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",
|
|
27094
|
+
children: [/* @__PURE__ */ jsx(OpenSourceIcon, {}), "Open source"]
|
|
27095
|
+
}),
|
|
27096
|
+
/* @__PURE__ */ jsxs("button", {
|
|
27097
|
+
type: "button",
|
|
27098
|
+
onClick: qs,
|
|
27099
|
+
className: "inline-flex items-center 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 hover:bg-green-100",
|
|
27100
|
+
children: [/* @__PURE__ */ jsx(CheckActionIcon, {}), "Mark handled"]
|
|
27101
|
+
}),
|
|
27102
|
+
/* @__PURE__ */ jsxs("button", {
|
|
27103
|
+
type: "button",
|
|
27104
|
+
onClick: () => Qs(!0),
|
|
27105
|
+
className: "inline-flex items-center 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",
|
|
27106
|
+
children: [/* @__PURE__ */ jsx(DismissActionIcon, {}), "Mark not useful"]
|
|
27107
|
+
}),
|
|
27108
|
+
/* @__PURE__ */ jsxs("button", {
|
|
27109
|
+
type: "button",
|
|
27110
|
+
onClick: rc,
|
|
27111
|
+
className: tc ? "inline-flex items-center 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" : "inline-flex items-center 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",
|
|
27112
|
+
children: [jsx(tc ? CheckActionIcon : CopyActionIcon, {}), tc ? "Copied" : "Copy evidence"]
|
|
27113
|
+
})
|
|
27114
|
+
]
|
|
27115
|
+
})
|
|
27116
|
+
})
|
|
27117
|
+
]
|
|
27118
|
+
})]
|
|
27119
|
+
});
|
|
27120
|
+
}
|
|
27121
|
+
function SignalDetailPanelSkeleton({ className: e }) {
|
|
27122
|
+
return /* @__PURE__ */ jsxs("div", {
|
|
27123
|
+
className: cn("flex h-full flex-col overflow-y-auto bg-white-variant-8", e),
|
|
27124
|
+
children: [/* @__PURE__ */ jsxs("div", {
|
|
27125
|
+
className: "shrink-0 border-b border-neutral-200-variant-1 px-4 pt-5 pb-4",
|
|
27126
|
+
children: [/* @__PURE__ */ jsxs("div", {
|
|
27127
|
+
className: "flex items-start justify-between gap-3",
|
|
27128
|
+
children: [/* @__PURE__ */ jsxs("div", {
|
|
27129
|
+
className: "flex min-w-0 flex-1 items-center gap-2.5",
|
|
27130
|
+
children: [
|
|
27131
|
+
/* @__PURE__ */ jsx(Skeleton, { className: "h-4 w-7/12" }),
|
|
27132
|
+
/* @__PURE__ */ jsx(Skeleton, { className: "h-3 w-24 shrink-0" }),
|
|
27133
|
+
/* @__PURE__ */ jsx(Skeleton, { className: "h-5 w-20 shrink-0 rounded-full" })
|
|
27134
|
+
]
|
|
27135
|
+
}), /* @__PURE__ */ jsx(Skeleton, { className: "size-7 shrink-0 rounded-lg" })]
|
|
27136
|
+
}), /* @__PURE__ */ jsxs("div", {
|
|
27137
|
+
className: "mt-2 flex flex-col gap-1.5 rounded-lg border border-neutral-200-variant-1 bg-neutral-50 px-3 py-2.5",
|
|
27138
|
+
children: [/* @__PURE__ */ jsxs("div", {
|
|
27139
|
+
className: "flex items-center gap-2",
|
|
27140
|
+
children: [
|
|
27141
|
+
/* @__PURE__ */ jsx(Skeleton, { className: "h-3 w-9" }),
|
|
27142
|
+
/* @__PURE__ */ jsx(Skeleton, { className: "size-[18px] rounded-full" }),
|
|
27143
|
+
/* @__PURE__ */ jsx(Skeleton, { className: "h-3 w-24" })
|
|
27144
|
+
]
|
|
27145
|
+
}), /* @__PURE__ */ jsxs("div", {
|
|
27146
|
+
className: "flex items-center gap-2",
|
|
27147
|
+
children: [
|
|
27148
|
+
/* @__PURE__ */ jsx(Skeleton, { className: "h-3 w-9" }),
|
|
27149
|
+
/* @__PURE__ */ jsx(Skeleton, { className: "size-[18px] rounded-full" }),
|
|
27150
|
+
/* @__PURE__ */ jsx(Skeleton, { className: "h-3 w-24" })
|
|
27151
|
+
]
|
|
27152
|
+
})]
|
|
27153
|
+
})]
|
|
27154
|
+
}), /* @__PURE__ */ jsxs("div", {
|
|
27155
|
+
className: "flex flex-col gap-3 p-4",
|
|
27156
|
+
children: [
|
|
27157
|
+
/* @__PURE__ */ jsxs("div", {
|
|
27158
|
+
className: "grid grid-cols-1 gap-3 xl:grid-cols-2",
|
|
27159
|
+
children: [/* @__PURE__ */ jsxs("div", {
|
|
27160
|
+
className: "rounded-xl border border-neutral-200-variant-1 bg-white-variant-8 px-4 py-3.5",
|
|
27161
|
+
children: [
|
|
27162
|
+
/* @__PURE__ */ jsx(Skeleton, { className: "mb-3 h-3 w-8/12" }),
|
|
27163
|
+
/* @__PURE__ */ jsx(Skeleton, { className: "mb-2.5 h-1.5 w-full rounded-full" }),
|
|
27164
|
+
/* @__PURE__ */ jsxs("div", {
|
|
27165
|
+
className: "flex items-center justify-between",
|
|
27166
|
+
children: [/* @__PURE__ */ jsx(Skeleton, { className: "h-3 w-16" }), /* @__PURE__ */ jsx(Skeleton, { className: "h-3 w-16" })]
|
|
27167
|
+
})
|
|
27168
|
+
]
|
|
27169
|
+
}), /* @__PURE__ */ jsxs("div", {
|
|
27170
|
+
className: "rounded-xl border border-neutral-200-variant-1 bg-white-variant-8 px-4 py-3.5",
|
|
27171
|
+
children: [/* @__PURE__ */ jsx(Skeleton, { className: "mb-2 h-3 w-8/12" }), /* @__PURE__ */ jsx(Skeleton, { className: "h-3 w-full" })]
|
|
27172
|
+
})]
|
|
27173
|
+
}),
|
|
27174
|
+
/* @__PURE__ */ jsxs("div", {
|
|
27175
|
+
className: "rounded-xl border border-neutral-200-variant-1 bg-white-variant-8 px-4 py-3.5",
|
|
27176
|
+
children: [/* @__PURE__ */ jsx(Skeleton, { className: "mb-3 h-3 w-6/12" }), /* @__PURE__ */ jsxs("div", {
|
|
27177
|
+
className: "flex flex-col gap-2",
|
|
27178
|
+
children: [/* @__PURE__ */ jsx(Skeleton, { className: "h-14 w-full rounded-xl" }), /* @__PURE__ */ jsx(Skeleton, { className: "h-12 w-full rounded-lg" })]
|
|
27179
|
+
})]
|
|
27180
|
+
}),
|
|
27181
|
+
/* @__PURE__ */ jsxs("div", {
|
|
27182
|
+
className: "rounded-xl border border-neutral-200-variant-1 bg-white-variant-8 px-4 py-3.5",
|
|
27183
|
+
children: [/* @__PURE__ */ jsx(Skeleton, { className: "mb-2 h-3 w-4/12" }), /* @__PURE__ */ jsx(Skeleton, { className: "h-4 w-9/12" })]
|
|
27184
|
+
}),
|
|
27185
|
+
/* @__PURE__ */ jsxs("div", {
|
|
27186
|
+
className: "rounded-xl border border-neutral-200-variant-1 bg-white-variant-8 px-4 py-3.5",
|
|
27187
|
+
children: [/* @__PURE__ */ jsx(Skeleton, { className: "mb-3 h-3 w-8/12" }), /* @__PURE__ */ jsxs("div", {
|
|
27188
|
+
className: "flex items-center gap-2",
|
|
27189
|
+
children: [
|
|
27190
|
+
/* @__PURE__ */ jsx(Skeleton, { className: "h-8 w-24 rounded-lg" }),
|
|
27191
|
+
/* @__PURE__ */ jsx(Skeleton, { className: "h-8 w-24 rounded-lg" }),
|
|
27192
|
+
/* @__PURE__ */ jsx(Skeleton, { className: "h-8 w-24 rounded-lg" })
|
|
27193
|
+
]
|
|
27194
|
+
})]
|
|
27195
|
+
})
|
|
27196
|
+
]
|
|
27197
|
+
})]
|
|
27198
|
+
});
|
|
27199
|
+
}
|
|
25800
27200
|
var DEFAULT_DURATION = 4e3, DEFAULT_POSITION = "bottom-right";
|
|
25801
27201
|
function buildCallbacks({ onOpen: e, onClose: t, onAutoClose: n, onDismiss: r }) {
|
|
25802
27202
|
return e || t || n || r ? {
|
|
@@ -26020,6 +27420,6 @@ function QtaloBlueImage({ size: e = 40, className: t, ...n }) {
|
|
|
26020
27420
|
}) })]
|
|
26021
27421
|
});
|
|
26022
27422
|
}
|
|
26023
|
-
export { AVATAR_COLOR, AVATAR_COLOR_KEYS, Accordion, AccordionContent, AccordionItem, AccordionTrigger, AccountIcon, AccountInfo, ActionMenu, ActionMenuItem, AddCircleIcon, AddIcon, ArrowIcon, AsanaIcon, Avatar, Badge, BulkActions, BulkActionsSkeleton, Button, CalendarIcon, Card, CardContent, CardFooter, CardHeader, CardLayout, CardSidebar, CardTitle, CheckCircleEmptyIcon, CheckCircleIcon, CheckSquareIcon, Checkbox, CheckboxIcon, ClickUpIcon, CloseIcon, CompactDensityIcon, CopyIcon, DarkIcon, DatePicker, Divider, Dropdown, DropdownContext, DropdownMenu, DropdownMenuItem, EVENT_CARD_HEIGHT_SIZE, EVENT_SUMMARY_CARD_HEIGHT_SIZE, EmptyBoxIcon, EventCard, EventCardSkeleton, EventDetail, EventDetailContentCalendar, EventDetailContentEmail, EventDetailContentHeader, EventDetailContentMessage, EventDetailContentTicket, EventDetailFollowUp, EventDetailHeader, EventDetailPriority, EventDetailSkeleton, EventDetailSummary, EventEmptyState, EventSummaryCard, EventSummaryCardSkeleton, EventSummaryFireButton, ExternalLinkIcon, EyeIcon, FilterBar, FilterBarSkeleton, FilterButton, FireFillIcon, FireIcon, GmailIcon, GoogleCalendarIcon, HelpPanel, HelpPanelEngine, HomeIcon, Icon, IconButton, IconCountButton, IconCountButtonSkeleton, InboxIcon, InfoTooltip, Input, InsightFillIcon, InsightIcon, IntegrationBar, IntegrationBarSkeleton, IntegrationItem, IntegrationItemSkeleton, IntegrationsCard, JiraIcon, LightIcon, LogoIcon, MailIcon, MinusIcon, MoreIcon, NoEyeIcon, NormalDensityIcon, NotFireIcon, ONBOARDING_DISMISSED_STORAGE_KEY, Onboarding, OnboardingCard, OnboardingEngine, OutlookCalendarIcon, OutlookIcon, Pressable, QtaloBlueImage, QtaloImage, ReadIcon, ReplyIoIcon, RichContent, SearchIcon, SearchInput, SignOutIcon, Skeleton, SlackIcon, StatusBadge, StopPropagation, SummaryIcon, SystemIcon, TeamsIcon, Toaster, Tooltip, UnreadIcon, capitalize, cn, colors, formatDate, formatDateRange, formatTimestamp, generateCalendarDays, getDaysInMonth, getFirstDayOfMonth, getInitials, getMonthName, getWeekdays, isDateBefore, isDateInRange, isSameDay, isToday, normalizeContent, parseDate, pickColorFromPalette, stringHash, toMondayBased, toast, toastStore, useAccordion, useDropdown, useLongPress };
|
|
27423
|
+
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 };
|
|
26024
27424
|
|
|
26025
27425
|
//# sourceMappingURL=index.js.map
|