PageSourceSearch

https://piquora.com/static/js/7580.6356b7aa.chunk.js

js piquora.com collected 2026-09-25 21:46:36 UTC 16,035 bytes, 2 lines download raw bytes

1/*! For license information please see 7580.6356b7aa.chunk.js.LICENSE.txt */
2"use strict";(self.webpackChunkpiquoraweb_frontend=self.webpackChunkpiquoraweb_frontend||[]).push([[7580],{37580(e,n,i){i.r(n),i.d(n,{default:()=>se});var r,t,o,a,d,l,s,c,p,u,v,x,h,g,m,f,b,y,w,A,k,j=i(89379),S=i(57528),q=i(88094),z=i(19434),C=i(86940),M=i(72590),D=i(50221),I=i(99721),P=i(86443),N=i(55214),L=i(55007),T=i(40974),Q=i(28831),R=i(67206),U=i(50381),Y=i(15678);let _={ts:0,data:[]};const E=z.Ay.div(r||(r=(0,S.A)(["\n  display: flex;\n  flex-direction: column;\n  width: 100%;\n  flex: 1;\n  min-height: 0;\n  overflow-y: auto;\n  overflow-x: hidden;\n  background: var(--piq-bg);\n  padding: 0;\n  box-sizing: border-box;\n  \n  &::-webkit-scrollbar {\n    width: 6px;\n  }\n  \n  &::-webkit-scrollbar-track {\n    background: var(--piq-surface-2);\n  }\n  \n  &::-webkit-scrollbar-thumb {\n    background: var(--piq-border);\n    border-radius: 3px;\n    \n    &:hover {\n      background: var(--piq-muted);\n    }\n  }\n\n  @media (max-width: 768px) {\n    padding: 8px 4px;\n  }\n"]))),O=z.Ay.div(t||(t=(0,S.A)(["\n  padding: 12px 12px 6px;\n  color: var(--piq-muted);\n  font-size: 12px;\n  font-weight: 700;\n  letter-spacing: 0.3px;\n"]))),F=z.Ay.div(o||(o=(0,S.A)(["\n  display: flex;\n  align-items: center;\n  gap: 12px;\n  padding: 10px 12px;\n  border-bottom: 1px solid var(--piq-border);\n  background: ",";\n  cursor: pointer;\n  -webkit-tap-highlight-color: transparent;\n\n  @media (hover: hover) {\n    &:hover {\n      background: ",";\n    }\n  }\n\n  &:active {\n    background: ",";\n  }\n"])),e=>e.$selected?"var(--piq-surface-2)":"transparent",e=>e.$selected?"var(--piq-surface-2)":"var(--piq-surface)",e=>e.$selected?"var(--piq-surface-2)":"var(--piq-surface)"),$=z.Ay.img(a||(a=(0,S.A)(["\n  width: 40px;\n  height: 40px;\n  border-radius: 50%;\n  object-fit: cover;\n  border: 1px solid var(--piq-border);\n  flex-shrink: 0;\n"]))),H=z.Ay.div(d||(d=(0,S.A)(["\n  flex: 1;\n  min-width: 0;\n  display: flex;\n  flex-direction: column;\n  gap: 3px;\n"]))),J=z.Ay.div(l||(l=(0,S.A)(["\n  display: flex;\n  align-items: center;\n  justify-content: space-between;\n  gap: 8px;\n  min-width: 0;\n"]))),V=z.Ay.div(s||(s=(0,S.A)(["\n  color: var(--piq-text);\n  font-weight: 700;\n  font-size: 14px;\n  overflow: hidden;\n  text-overflow: ellipsis;\n  white-space: nowrap;\n"]))),B=z.Ay.div(c||(c=(0,S.A)(["\n  color: var(--piq-placeholder);\n  font-size: 12px;\n  white-space: nowrap;\n  display: inline-flex;\n  align-items: center;\n  gap: 4px;\n"]))),W=z.Ay.div(p||(p=(0,S.A)(["\n  color: var(--piq-muted);\n  font-size: 13px;\n  overflow: hidden;\n  text-overflow: ellipsis;\n  white-space: nowrap;\n  display: flex;\n  align-items: center;\n  gap: 8px;\n  min-width: 0;\n"]))),G=z.Ay.div(u||(u=(0,S.A)(["\n  width: 8px;\n  height: 8px;\n  border-radius: 50%;\n  background: var(--piq-danger);\n  flex-shrink: 0;\n"]))),K=z.Ay.div(v||(v=(0,S.A)(["\n  width: 18px;\n  height: 18px;\n  display: inline-flex;\n  align-items: center;\n  justify-content: center;\n  color: var(--piq-primary);\n  flex-shrink: 0;\n"]))),X=z.Ay.div(x||(x=(0,S.A)(["\n  position: sticky;\n  top: 0;\n  z-index: 10;\n  display: flex;\n  align-items: center;\n  justify-content: space-between;\n  gap: 10px;\n  padding: 10px 12px;\n  background: var(--piq-bg);\n  border-bottom: 1px solid var(--piq-border);\n"]))),Z=z.Ay.div(h||(h=(0,S.A)(["\n  color: var(--piq-text);\n  font-size: 13px;\n  font-weight: 800;\n"]))),ee=z.Ay.div(g||(g=(0,S.A)(["\n  display: flex;\n  align-items: center;\n  gap: 8px;\n"]))),ne=z.Ay.button(m||(m=(0,S.A)(["\n  display: inline-flex;\n  align-items: center;\n  justify-content: center;\n  width: 36px;\n  height: 36px;\n  border-radius: 12px;\n  border: 1px solid var(--piq-border);\n  background: var(--piq-surface);\n  color: var(--piq-text);\n  cursor: pointer;\n  -webkit-tap-highlight-color: transparent;\n\n  @media (hover: hover) {\n    &:hover {\n      background: var(--piq-surface-2);\n    }\n  }\n\n  &:active {\n    transform: scale(0.98);\n  }\n"]))),ie=e=>{var n;
2let{sender:i,icebreaker:r,selectionMode:t,isSelected:o,toggleSelect:a,enterSelectionMode:d,onOpenChat:l,onHide:s,getUserAvatar:c,formatTime:p}=e;const u=String((null===r||void 0===r?void 0:r._id)||(null===r||void 0===r?void 0:r.id)||""),v=(0,q.useRef)(null),x=()=>{v.current&&(clearTimeout(v.current),v.current=null)},h=(0,R.u)({onSwipedRight:()=>null===l||void 0===l?void 0:l(i),onSwipedLeft:()=>null===s||void 0===s?void 0:s(u),trackMouse:!1,delta:30,preventScrollOnSwipe:!0}),g=(Array.isArray(null===r||void 0===r?void 0:r.parsedQuestions)&&r.parsedQuestions.length>0?String((null===(n=r.parsedQuestions[0])||void 0===n?void 0:n.question)||"").trim():"")||String((null===r||void 0===r?void 0:r.message)||"Tap to message back").trim();return(0,Y.jsxs)(F,(0,j.A)((0,j.A)({$selected:o},h),{},{onPointerDown:e=>{x();const n=null===e||void 0===e?void 0:e.pointerType;"touch"!==n&&"pen"!==n||(v.current=setTimeout(()=>{null===d||void 0===d||d(u)},450))},onPointerUp:x,onPointerCancel:x,onPointerLeave:x,onClick:()=>{t?null===a||void 0===a||a(u):null===l||void 0===l||l(i)},children:[t?(0,Y.jsx)(K,{children:o?(0,Y.jsx)(M.A,{size:18}):(0,Y.jsx)("span",{style:{width:14,height:14,borderRadius:999,border:"2px solid var(--piq-border)",display:"inline-block"}})}):null,(0,Y.jsx)($,{src:null===c||void 0===c?void 0:c(null===i||void 0===i?void 0:i.senderProfile),alt:(null===i||void 0===i?void 0:i.senderName)||"User",onError:e=>{e.target.src="/assets/men-placeholder.jfif"}}),(0,Y.jsxs)(H,{children:[(0,Y.jsxs)(J,{children:[(0,Y.jsx)(V,{children:(null===i||void 0===i?void 0:i.senderName)||"Unknown"}),(0,Y.jsxs)(B,{children:[(0,Y.jsx)(I.A,{size:12}),null===p||void 0===p?void 0:p(null===r||void 0===r?void 0:r.time)]})]}),(0,Y.jsxs)(W,{children:[(0,Y.jsx)(P.A,{size:14}),(0,Y.jsx)("span",{style:{overflow:"hidden",textOverflow:"ellipsis",whiteSpace:"nowrap",minWidth:0},children:g||"Tap to message back"}),null!==r&&void 0!==r&&r.isRead?null:(0,Y.jsx)(G,{})]})]})]}))},re=z.Ay.div(f||(f=(0,S.A)(["\n  display: flex;\n  flex-direction: column;\n  align-items: center;\n  justify-content: center;\n  padding: 60px 20px;\n  text-align: center;\n\n  @media (max-width: 768px) {\n    padding: 40px 16px;\n  }\n\n  @media (max-width: 480px) {\n    padding: 30px 12px;\n  }\n"]))),te=z.Ay.div(b||(b=(0,S.A)(["\n  width: 120px;\n  height: 120px;\n  border-radius: 50%;\n  background: linear-gradient(135deg, color-mix(in srgb, var(--piq-brand-b) 10%, transparent) 0%, color-mix(in srgb, var(--piq-brand-a) 10%, transparent) 100%);\n  display: flex;\n  align-items: center;\n  justify-content: center;\n  margin-bottom: 24px;\n\n  @media (max-width: 768px) {\n    width: 100px;\n    height: 100px;\n    margin-bottom: 20px;\n  }\n\n  @media (max-width: 480px) {\n    width: 80px;\n    height: 80px;\n    margin-bottom: 16px;\n  }\n"]))),oe=z.Ay.h3(y||(y=(0,S.A)(["\n  margin: 0 0 8px 0;\n  font-size: 20px;\n  font-weight: 600;\n  color: var(--piq-text);\n\n  @media (max-width: 768px) {\n    font-size: 18px;\n    margin-bottom: 6px;\n  }\n\n  @media (max-width: 480px) {\n    font-size: 16px;\n    margin-bottom: 4px;\n  }\n"]))),ae=z.Ay.p(w||(w=(0,S.A)(["\n  margin: 0;\n  font-size: 14px;\n  color: var(--piq-text-secondary);\n  max-width: 400px;\n\n  @media (max-width: 768px) {\n    font-size: 13px;\n    max-width: 100%;\n    padding: 0 8px;\n  }\n\n  @media (max-width: 480px) {\n    font-size: 12px;\n    padding: 0 4px;\n  }\n"]))),de=z.Ay.div(A||(A=(0,S.A)(["\n  display: flex;\n  flex-direction: column;\n  align-items: center;\n  justify-content: center;\n  padding: 60px 20px;\n  gap: 16px;\n\n  @media (max-width: 768px) {\n    padding: 40px 16px;\n    gap: 12px;\n  }\n\n  @media (max-width: 480px) {\n    padding: 30px 12px;\n    gap: 10px;\n  }\n"]))),le=z.Ay.div(k||(k=(0,S.A)(["\n  font-size: 14px;\n  color: var(--piq-text-secondary);\n"]))),se=e=>{let{onUserSelect:n,onMenuChange:i,searchQuery:r="",unreadOnly:t=!1}=e;const{openConversation:o,markAsRead:a}=(0,U.Y)()||{},[d,l]=(0,q.useState)([]),[s,c]=(0,q.useState)(!0),[p,u]=(0,q.useState)(null),[v,x]=(0,q.useState)(()=>new Set),[h,g]=(0,q.useState)(!1),[m,f]=(0,q.useState)(()=>new Set),b=(0,q.useCallback)(async function(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};const n=!0===(null===e||void 0===e?void 0:e.silent);n||(c(!0),u(null));try{const e=await(0,T.xF)();l(e||[]);try{_.ts=Date.now(),_.data=Array.isArray(e)?e:[]}catch(i){}}catch(r){let e=(null===r||void 0===r?void 0:r.message)||"Unknown error";e.includes("403")||e.toLowerCase().includes("forbidden")?e="You are not authorized to view icebreakers. Please complete your profile or log in.":(e.includes("401")||e.toLowerCase().includes("unauthorized"))&&(e="Session expired or unauthorized. Please log in again."),n||u(e)}finally{n||c(!1)}},[]);(0,q.useEffect)(()=>{const e=Date.now(),n=_.ts&&e-_.ts<6e4;if(Array.isArray(_.data)&&_.data.length>0)return l(_.data),c(!1),void(n||b({silent:!0}));b()},[b]);const y=e=>{if(!e)return"";const n=new Date(e),i=new Date,r=(i-n)/36e5;return r<1?"Just now":r<24?n.toLocaleTimeString([],{hour:"2-digit",minute:"2-digit"}):r<48?"Yesterday":n.toLocaleDateString([],{month:"short",day:"numeric",year:n.getFullYear()!==i.getFullYear()?"numeric":void 0})},w=e=>e?(0,Q.uQ)(e,"/assets/men-placeholder.jfif"):"/assets/men-placeholder.jfif",A=(0,q.useCallback)(e=>{const n=Array.isArray(null===e||void 0===e?void 0:e.parsedQuestions)&&e.parsedQuestions.length>0?e.parsedQuestions[0]:null,i=String((null===n||void 0===n?void 0:n.question)||"").trim(),r
2=String((null===e||void 0===e?void 0:e.message)||"").trim(),t=String((null===n||void 0===n?void 0:n.answer)||(null===n||void 0===n?void 0:n.reply)||(null===n||void 0===n?void 0:n.response)||r||"").trim(),o=i||r;if(!o)return"";try{return JSON.stringify({kind:"icebreaker-reply-draft",version:1,context:o,senderAnswer:t,prefill:""})}catch(a){return"Icebreaker: ".concat(o,"\n\nMy answer: ")}},[]),k=(0,q.useCallback)(async(e,r)=>{const t=String((null===e||void 0===e?void 0:e.senderId)||"").trim();if(!t)return;const d=Array.from(new Set([null===e||void 0===e?void 0:e.senderId,null===e||void 0===e?void 0:e.senderPublicId,null===e||void 0===e?void 0:e.publicId,null===e||void 0===e?void 0:e._id].map(e=>String(e||"").trim()).filter(Boolean))),s={pubProfileID:t,publicProfile:null===e||void 0===e?void 0:e.senderName,items:null===e||void 0===e?void 0:e.senderProfile,publicProfileAge:null===e||void 0===e?void 0:e.senderAge,senderPublicId:null===e||void 0===e?void 0:e.senderPublicId,publicId:(null===e||void 0===e?void 0:e.senderPublicId)||(null===e||void 0===e?void 0:e.publicId)||void 0},c=String((null===r||void 0===r?void 0:r._id)||(null===r||void 0===r?void 0:r.id)||"").trim(),p=A(r);if(p&&"undefined"!==typeof sessionStorage){for(const e of d)try{sessionStorage.setItem("".concat("piq:ai-icebreaker-draft:").concat(e),p),c&&sessionStorage.setItem("".concat("piq:ai-icebreaker-focus:").concat(e),c)}catch(u){}try{"undefined"!==typeof window&&window.dispatchEvent(new CustomEvent("piq:icebreaker-draft-updated",{detail:{ids:d,targetMessageId:c||null}}))}catch(v){}}i&&i("chats"),n&&n(s);try{"function"===typeof o&&await o(t,d),"function"===typeof a&&a(t)}catch(x){}c&&l(e=>(Array.isArray(e)?e:[]).map(e=>{const n=Array.isArray(null===e||void 0===e?void 0:e.icebreakers)?e.icebreakers.map(e=>String((null===e||void 0===e?void 0:e._id)||(null===e||void 0===e?void 0:e.id)||"").trim()!==c?e:(0,j.A)((0,j.A)({},e),{},{isRead:!0})):null===e||void 0===e?void 0:e.icebreakers;return(0,j.A)((0,j.A)({},e),{},{icebreakers:n})}))},[A,a,i,n,o]),S=(r||"").trim().toLowerCase(),z=(0,q.useMemo)(()=>{const e=[];for(const n of Array.isArray(d)?d:[]){const i=Array.isArray(null===n||void 0===n?void 0:n.icebreakers)?n.icebreakers:[];for(const r of i)e.push({sender:n,icebreaker:r})}return e.sort((e,n)=>{var i,r;const t=new Date((null===e||void 0===e||null===(i=e.icebreaker)||void 0===i?void 0:i.time)||0).getTime();return new Date((null===n||void 0===n||null===(r=n.icebreaker)||void 0===r?void 0:r.time)||0).getTime()-t}),e},[d]),M=(0,q.useMemo)(()=>{let e=z;return v.size&&(e=e.filter(e=>{let{icebreaker:n}=e;return!v.has(String((null===n||void 0===n?void 0:n._id)||(null===n||void 0===n?void 0:n.id)||""))})),t&&(e=e.filter(e=>{let{icebreaker:n}=e;return!(null!==n&&void 0!==n&&n.isRead)})),S&&(e=e.filter(e=>{var n;let{sender:i,icebreaker:r}=e;const t=String((null===i||void 0===i?void 0:i.senderName)||"").toLowerCase(),o=Array.isArray(null===r||void 0===r?void 0:r.parsedQuestions)&&r.parsedQuestions.length>0?String((null===(n=r.parsedQuestions[0])||void 0===n?void 0:n.question)||"").toLowerCase():"",a=String((null===r||void 0===r?void 0:r.message)||"").toLowerCase();return t.includes(S)||o.includes(S)||a.includes(S)})),e},[z,v,S,t]),I=(0,q.useMemo)(()=>{const e=[];let n=null;const i=new Date,r=new Date(i.getFullYear(),i.getMonth(),i.getDate()),t=new Date(r);t.setDate(r.getDate()-1);for(const a of M){var o;const i=null===a||void 0===a||null===(o=a.icebreaker)||void 0===o?void 0:o.time,d=i?new Date(i):null;let l="Earlier";d&&!Number.isNaN(d.getTime())&&(l=d>=r?"Today":d>=t?"Yesterday":d.toLocaleDateString("en-US",{weekday:"short",month:"short",day:"numeric"})),l!==n?(e.push({label:l,items:[a]}),n=l):e[e.length-1].items.push(a)}return e},[M]),R=(0,q.useCallback)(e=>{f(n=>{const i=new Set(n);return i.has(e)?i.delete(e):i.add(e),i})},[]),F=(0,q.useCallback)(e=>{g(!0),f(n=>{const i=new Set(n);return i.add(e),i})},[]),$=(0,q.useCallback)(()=>{g(!1),f(new Set)},[]);return s?(0,Y.jsx)(E,{children:(0,Y.jsxs)(de,{children:[(0,Y.jsx)(D.A,{size:32,className:"animate-spin",style:{color:"var(--piq-primary)"}}),(0,Y.jsx)(le,{children:"Loading icebreakers..."})]})}):p?(0,Y.jsx)(E,{children:(0,Y.jsxs)(re,{children:[(0,Y.jsx)(te,{children:(0,Y.jsx)(C.A,{size:48,style:{color:"var(--piq-danger)",opacity:.5}})}),(0,Y.jsx)(oe,{children:"Error loading icebreakers"}),(0,Y.jsx)(ae,{children:p})]})}):0===d.length?(0,Y.jsx)(E,{children:(0,Y.jsxs)(re,{children:[(0,Y.jsx)(te,{children:(0,Y.jsx)(P.A,{size:48,style:{color:"var(--piq-muted)",opacity:.5}})}),(0,Y.jsx)(oe,{children:"No icebreakers received"}),(0,Y.jsx)(ae,{children:"You haven't received any icebreakers yet. Icebreakers you receive will appear here."})]})}):0===M.length?(0,Y.jsx)(E,{children:(0,Y.jsxs)(re,{children:[(0,Y.jsx)(te,{children:(0,Y.jsx)(P.A,{size:48,style:{color:"var(--piq-muted)",opacity:.5}})}),(0,Y.jsx)(oe,{children:"No icebreakers found"}),(0,Y.jsx)(ae,{children:S?"No icebreakers match your search.":t?"No unread icebreakers right now.":"Icebreakers you receive will appear here."})]})}):(0,Y.jsxs)(E,{children:[h?(0,Y.jsxs)(X,{children:[(0,Y.jsxs)(Z,{children:["Selected: ",m.size]}),(0,Y.jsxs)(ee,{children:[(0,Y.jsx)(ne,{type:"button",title:"Remove","aria-label":"Remove selected",onClick:()=>{0!==m.size&&(x(e=>{const n=new Set(e);for(const i of m)n.add(i);return n}),$())},children:(0,Y.jsx)(N.A,{size:18})}),(0,Y.jsx)(ne,{type:"button",title:"Cancel","aria-label":"Cancel",onClick:$,children:(0,Y.jsx)(L.A,{size:18})})]})]}):null,I.map(e=>(0,Y.jsxs)(q.Fragment,{children:[(0,Y.jsx)(O,{children:e.label}),e.items.map(e=>{let{sender:n,icebreaker:i}=e;const r=String((null===i||void 0===i?void 0:i._id)||(null===i||void 0===i?void 0:i.id)||"");return(0,Y.jsx)(ie,{sender:n,icebreaker:i,selectionMode:h,isSelected:m.has(r),toggleSelect:R,enterSelectionMode:F,onOpenChat:e=>k(e,i),onHide:e=>{x(n=>{const i=new Set(n);return i.add(e),i})},getUserAvatar:w,formatTime:y},r)})]},e.label))]})}},50221(e,n,i){i.d(n,{A:()=>r});const r=(0,i(74557).A)("loader-circle",[["path",{d:"M21 12a9 9 0 1 1-6.219-8.56",key:"13zald"}]])}
2,55214(e,n,i){i.d(n,{A:()=>r});const r=(0,i(74557).A)("trash-2",[["path",{d:"M10 11v6",key:"nco0om"}],["path",{d:"M14 11v6",key:"outv1u"}],["path",{d:"M19 6v14a2 2 0 0 1-2 2H7a2 2 0 0 1-2-2V6",key:"miytrc"}],["path",{d:"M3 6h18",key:"d0wm0j"}],["path",{d:"M8 6V4a2 2 0 0 1 2-2h4a2 2 0 0 1 2 2v2",key:"e791ji"}]])}}]);

Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.