1"use strict";(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[3979],{13979:(e,t,a)=>{a.r(t),a.d(t,{AuditLogPage:()=>ep});var s=a(95155),l=a(12115),i=a(50906),r=a(54485),n=a(37586),d=a(3473),o=a(23838),c=a(20508),u=a(66955),m=a(89559),x=a(31166),p=a(88376),h=a(18518),v=a(56830),_=a(40051),w=a(43698),b=a(77979),g=a(9119),f=a(59656),j=a(39867),y=a(24033),N=a(26232),k=a(1559),A=a(94546);let C={csv:"Export CSV",xml:"Export XML"},z=e=>{let{source:t,filters:a,disabled:i=!1,targetTenantId:r}=e,{showToast:n}=(0,k.d)(),[d,o]=(0,l.useState)(null),c=(0,l.useCallback)(async e=>{if(!d){o(e);try{await (0,A.downloadAuditExport)(t,e,a,r)}catch(t){n(t instanceof Error?t.message:"Failed to export ".concat(e.toUpperCase()),"error")}finally{o(null)}}},[d,t,a,r,n]),u=null!==d;return(0,s.jsxs)("div",{className:"inline-flex items-center",children:[(0,s.jsxs)(x.$,{variant:"ghost",size:"sm",onClick:()=>void c("csv"),disabled:i||u,loading:"csv"===d,title:"Export CSV","data-testid":"audit-export-csv",children:["csv"!==d&&(0,s.jsx)(j.A,{size:16,"aria-hidden":"true"}),C.csv]}),(0,s.jsxs)(N.rI,{children:[(0,s.jsx)(N.ty,{asChild:!0,children:(0,s.jsx)(x.$,{variant:"ghost",size:"sm",iconOnly:!0,disabled:i||u,"aria-label":"More export formats","data-testid":"audit-export-more",children:(0,s.jsx)(y.A,{size:16,"aria-hidden":"true"})})}),(0,s.jsxs)(N.SQ,{align:"end",children:[(0,s.jsx)(N._2,{onSelect:()=>void c("csv"),"data-testid":"audit-export-menu-csv",children:C.csv}),(0,s.jsx)(N._2,{onSelect:()=>void c("xml"),"data-testid":"audit-export-menu-xml",children:C.xml})]})]})]})},S={create:"success",update:"info",delete:"error",reset:"warning",granted:"success",revoked:"error",updated:"info",expired:"warning"},E={settings:"Settings",consent:"Org Consent"},L={settings:"default",consent:"info"},M={allowed_models:"Allowed AI Models",allowed_tools:"Allowed Tools",branding:"Branding",default_assistant_id:"Default Assistant",default_persona_id:"Default Persona",external_research_enabled:"External Research",guardrail_mode:"Guardrail Mode",guardrail_profile:"Guardrail Profile",guardrail_pack_id:"Guardrail Pack",knowledge_collections:"Knowledge Collections",logo_url:"Logo URL",memory_auto_extract_enabled:"Auto Memory Extraction",memory_enabled:"Memory",memory_max_per_project:"Max Memories per Folder",memory_max_per_user:"Max Memories per User",memory_scope:"Memory Scope",quota_cap_storage_mb:"Storage Quota (MB)",quota_cap_swtoken:"Token Quota",require_tool_approval:"Require Tool Approval",retention_days:"Data Retention (days)",sso_enabled:"SSO Enabled",swtoken_budget_monthly:"Monthly Token Budget",tool_approval_required:"Tool Approval Required",user_locked_fields:"User Locked Fields",web_search_enabled:"Web Search"},T=e=>{var t;return null!=(t=M[e])?t:e.replace(/_/g," ").replace(/\b\w/g,e=>e.toUpperCase())},I=e=>V(e.user_name,e.user_email,e.user_id),V=(e,t,a)=>{var s;let l=null!=e?e:t;return(null==l?void 0:l.includes("@"))?l.split("@")[0]||l:null!=(s=null!=l?l:a)?s:"system"},W=(e,t)=>t||((null==e?void 0:e.includes("@"))?e:void 0),O=e=>{try{return new Date(e).toLocaleString()}catch(t){return e}},R=function(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:60;if(null==e)return"â";let a=e=>e.length>t?e.slice(0,Math.max(0,t-3))+"â¦":e;try{let t=JSON.parse(e),s=null!==t&&"object"==typeof t&&"value"in t?t.value:t;if(null==s)return"â";if("boolean"==typeof s)return s?"Yes":"No";if("number"==typeof s)return s.toLocaleString();if(Array.isArray(s)){if(0===s.length)return"none";return a(s.map(e=>String(e)).join(", "))}if("string"==typeof s)return s?a(s):"â";return a(JSON.stringify(s))}catch(t){return a(e)}};var F=a(52799),q=a(50146);function K(e){let{label:t,value:a}=e;return(0,s.jsxs)("div",{className:"flex items-start justify-between gap-4 py-2.5 border-b border-sw-border-subtle last:border-0",children:[(0,s.jsx)("span",{className:"sw-text-caption-muted font-medium uppercase tracking-wide shrink-0",children:t}),(0,s.jsx)("span",{className:"text-sw-body text-sw-text text-right break-words min-w-0",children:a})]})}function D(e){var t;let{entry:a,onClose:l}=e;return(0,s.jsx)(q.tb,{open:null!==a,title:a?T(a.field_path):"",subt
1itle:a?"".concat(a.scope," \xb7 ").concat(a.action):void 0,onClose:l,children:a&&(0,s.jsxs)("div",{children:[(0,s.jsx)(K,{label:"Timestamp",value:O(a.timestamp)}),(0,s.jsx)(K,{label:"Actor",value:(0,s.jsxs)("span",{className:"flex flex-col items-end",children:[(0,s.jsx)("span",{children:I(a)}),a.user_email&&a.user_email!==I(a)&&(0,s.jsx)("span",{className:"sw-text-caption-muted",children:a.user_email}),a.user_id&&(0,s.jsx)("span",{className:"sw-text-caption-muted font-mono",children:a.user_id})]})}),(0,s.jsx)(K,{label:"Scope",value:(0,s.jsx)(F.E,{variant:"default",size:"sm",children:a.scope})}),a.scope_id&&(0,s.jsx)(K,{label:"Scope ID",value:(0,s.jsx)("span",{className:"font-mono text-sw-label",children:a.scope_id})}),(0,s.jsx)(K,{label:"Action",value:(0,s.jsx)(F.E,{variant:null!=(t=S[a.action])?t:"default",size:"sm",children:a.action})}),(0,s.jsx)(K,{label:"Setting",value:(0,s.jsx)("span",{title:a.field_path,children:T(a.field_path)})}),null!=a.old_value&&(0,s.jsx)(K,{label:"Previous value",value:(0,s.jsx)("span",{className:"line-through text-sw-text-muted",children:R(a.old_value,1/0)})}),(0,s.jsx)(K,{label:"New value",value:R(a.new_value,1/0)})]})})}let U=[10,20,50],G=[{value:"",label:"All Scopes"},{value:"tenant",label:"Tenant"},{value:"user",label:"User"},{value:"consent_tenant_default",label:"Org Consent"}],P=[{value:"",label:"All Sources"},{value:"settings",label:"Settings"},{value:"consent",label:"Org Consent"}],$=e=>{var t,a;let{initialEntries:i,scopeFilter:n,scopeIdFilter:d,targetTenantId:o}=e,[j,y]=(0,l.useState)(null!=i?i:[]),[N,k]=(0,l.useState)(!i),[A,C]=(0,l.useState)(null),[M,I]=(0,l.useState)(null!=n?n:""),[F,q]=(0,l.useState)(""),K=(0,g._)(),$=(0,l.useCallback)(async()=>{k(!0),C(null);try{let e=await f.Dz({scope:M||void 0,scope_id:d,source:F||void 0,limit:200,targetTenantId:o});y(e)}catch(e){C(e instanceof Error?e.message:"Failed to load audit log")}finally{k(!1)}},[M,F,d,o]);(0,l.useEffect)(()=>{null!=i&&i.length||$()},[$,i]);let H=(0,l.useCallback)(e=>{I(e)},[]),B=[{key:"source",header:"Source",className:"whitespace-nowrap",sortable:!0,sortValue:e=>e.source,width:"120px",minWidth:"90px",resizable:!0,render:e=>{var t,a;return(0,s.jsx)(h.Ex,{variant:null!=(t=L[e.source])?t:"default",size:"sm",children:null!=(a=E[e.source])?a:e.source})}},{key:"timestamp",header:"Timestamp",className:"text-sw-text-muted whitespace-nowrap",sortable:!0,sortValue:e=>e.timestamp,width:"180px",minWidth:"140px",resizable:!0,render:e=>O(e.timestamp)},{key:"actor",header:"Actor",className:"whitespace-nowrap overflow-hidden",sortable:!0,sortValue:e=>V(e.user_name,e.user_email,e.user_id),width:"180px",minWidth:"120px",resizable:!0,render:e=>(0,s.jsx)(h.aO,{kind:"user",id:e.user_id,name:V(e.user_name,e.user_email,e.user_id),email:W(e.user_name,e.user_email),icon:(0,s.jsx)(c.A,{size:13,className:"text-sw-text-muted shrink-0"}),className:"sw-text-body-default"})},{key:"scope",header:"Scope",className:"whitespace-nowrap",sortable:!0,sortValue:e=>e.scope,width:"120px",minWidth:"80px",resizable:!0,render:e=>(0,s.jsx)(h.Ex,{variant:"default",size:"sm",children:e.scope})},{key:"action",header:"Action",className:"whitespace-nowrap",sortable:!0,sortValue:e=>e.action,width:"110px",minWidth:"80px",resizable:!0,render:e=>{var t;return(0,s.jsx)(h.Ex,{variant:null!=(t=S[e.action])?t:"default",size:"sm",children:e.action})}},{key:"field",header:"Setting",sortable:!0,sortValue:e=>e.field_path,minWidth:"120px",resizable:!0,render:e=>(0,s.jsx)("span",{title:e.field_path,children:T(e.field_path)})},{key:"change",header:"What Changed",minWidth:"160px",render:e=>null!=e.old_value?(0,s.jsxs)("span",{className:"inline-flex items-center gap-1 flex-wrap",children:[(0,s.jsx)("span",{className:"text-sw-text-muted line-through",children:R(e.old_value)}),(0,s.jsx)("span",{className:"text-sw-text-muted",children:"â"}),(0,s.jsx)("span",{className:"text-sw-text",children:R(e.new_value)})]}):(0,s.jsx)("span",{className:"text-sw-text",children:R(e.new_value)})}];return(0,s.jsxs)("div",{className:"space-y-4",children:[(0,s.jsxs)("div",{className:"flex flex-wrap items-center justify-end gap-2",children:[(0,s.jsx)(u.A,{size:16,className:"text-sw-text-muted","aria-hidden":"true"}),(0,s.jsxs)(w.H5,{value:F||"__all__",onValueChange:e=>q("__all__"===e?"":e),children:[(0,s.jsx)(w.bq,{className:"w-36","aria-label":"Filter by source",children:(0,s.jsx)(w.yv,{})}),(0,s.jsx)(w.gC,{children:P.map(e=>(0,s.jsx)(w.eb,{value:e.value||"__all__",children:e.label},e.value||"__all__"))})]}),(0,s.jsxs)(w.H5,{value:M||"__all__",onValueChange:e=>H("__all__"===e?"":e),children:[(0,s.jsx)(w.bq,{className:"w-36","aria-label":"Filter by scope",children:(0,s.jsx)(w.yv,{})}),(0,s.jsx)(w.gC,{children:G.map(e=>(0,s.jsx)(w.eb,{value:e.value||"__all__",children:e.label},e.value||"__all__"))})]}),(0,s.jsx)(x.$,{variant:"ghost",size:"sm",onClick:$,disabled:N,title:"Refresh",children:(0,s.jsx)(m.A,{size:16,className:(0,b.cn)(N&&"animate-spin")})}),(0,s.jsx)(z,{source:"settings",filters:{scope:M||void 0,scope_id:d||void 0},disabled:0===j.length,targetTenantId:o})]}),A&&(0,s.jsx)(h.ZT,{variant:"error",actions:[{label:"Retry",onClick:$}],children:A}),N&&(0,s.jsx)("div",{role:"status","aria-label":"Loading audit log",className:"rounded-sw-md border border-sw-border divide-y divide-sw-border-subtle",children:Array.from({length:6}).map((e,t)=>(0,s.jsx)(_.vT,{},t))}),!N&&!A&&0===j.length&&(0,s.jsx)(p.p,{icon:r.A,title:"No audit entries found"}),!N&&j.length>0&&(0,s.jsx)(v.b,{columns:B,rows:j,rowKey:e=>e.id,onRowSelect:K.open,rowAriaLabel:e=>"Open audit detail: ".concat(T(e.field_path)," (").concat(e.action,")"),selectedKey:null!=(a=null==(t=K.selected)?void 0:t.id)?a:null,minWidthClass:"min-w-[720px]",rowVariant:"audit",paginated:!0,pageSizeOptions:U,columnConfig:!0,storageKey:"audit-settings"}),(0,s.jsx)(D,{entry:K.selected,onClose:K.close})]})};var H=a(58734),B=a(47937),Q=a(78192),Z=a(17910);let J=[10,25,50],X=[{value:"chat",label:"Chat"},{value:"folder",label:"Folders"},{value:"auth",label:"Authentication"},{value:"authz",label:"Authorization"},{value:"knowledge",label:"Knowledge"},{value:"assistants",label:"Assistants"},{value:"guardrails",label:"Guardrails"}],Y={message_sent:"Message sent",conversation_shared:"Conversation shared",conversation_unshared:"Conversation unshared",conversation_access_revoked:"Access revoked",folder_created:"Folder created",folder_archived:"Folder archived",folder_member_added:"Member added to folder",tenant_contact_recipient_updated:"Contact recipient updated",tenant_user_updated:"Member updated",tenant_user_memories_erased:"Member memories erased",user_invited:"Member invited",invitation_revoked:"Invitation revoked",login:"Sign-in",session_revoke:"Session revoked",api_key_create:"API key created",api_key_revoke:"API key revoked",privilege_escalation_denied:"Privilege escalation denied",admin_conversation_view:"Admin viewed conversation",rate_limit_exceeded:"Rate limit exceeded",view_conversation:"Conversation reviewed",knowledge_collection_created:"Knowledge collection created",knowledge_collection_updated:"Knowledge collection updated",knowledge_collection_deleted:"Knowledge collection deleted",assistant_created:"Assistant created",assistant_updated:"Assistant updated",assistant_deleted:"Assistant deleted",guardrail_created:"Guardrail created",guardrail_updated:"Guardrail updated",guardrail_deleted:"Guardrail deleted"},ee={message_sent:"info",conversation_shared:"success",conversation_unshared:"warning",conversation_access_revoked:"error",folder_created:"success",folder_archived:"warning",folder_member_added:"info",tenant_contact_recipient_updated:"info",tenant_user_updated:"info",tenant_user_memories_erased:"warning",user_invited:"success",invitation_revoked:"warning",login:"info",session_revoke:"warning",api_key_create:"success",api_key_revoke:"warning",privilege_escalation_denied:"error",admin_conversation_view:"warning",rate_limit_exceeded:"error",view_conversation:"info",knowledge_collection_created:"success",knowledge_collection_updated:"info",knowledge_collection_deleted:"warning",assistant_created:"success",assistant_updated:"info",assistant_deleted:"warning",guardrail_created:"success",guardrail_updated:"info",guardrail_deleted:"warning"},et={chat:(0,s.jsx)(n.A,{size:13,className:"text-sw-text-muted shrink-0"}),folder:(0,s.jsx)(H.A,{size:13,className:"text-sw-text-muted shrink-0"}),knowledge:(0,s.jsx)(B.A,{size:13,className:"text-sw-text-muted shrink-0"}),assistants:(0,s.jsx)(Q.A,{size:13,className:"text-sw-text-muted shrink-0"}),guardrails:(0,s.jsx)(Z.A,{size:13,className:"text-sw-text-muted shrink-0"})},ea=e=>{var t;return null!=(t=Y[e])?t:e.replace(/_/g," ").replace(/\b\w/g,e=>e.toUpperCase())},es=e=>
1{try{return new Date(e).toLocaleString()}catch(t){return e}},el=function(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:48;return e?e.length>t?e.slice(0,t-3)+"...":e:"â"},ei=e=>{var t,a,r;let{targetTenantId:n}=e,[d,o]=(0,l.useState)([]),[u,g]=(0,l.useState)(!0),[j,y]=(0,l.useState)(null),[N,k]=(0,l.useState)("auth"),[A,C]=(0,l.useState)(null),S=(0,l.useCallback)(async()=>{g(!0),y(null);try{let e=await f.Ll({module:N,limit:200,targetTenantId:n});o(e)}catch(e){y(e instanceof Error?e.message:"Failed to load activity log")}finally{g(!1)}},[N,n]);(0,l.useEffect)(()=>{S()},[S]);let E=(0,l.useCallback)(e=>{k(e)},[]),L=[{key:"timestamp",header:"Timestamp",className:"text-sw-text-muted whitespace-nowrap",sortable:!0,sortValue:e=>e.timestamp,width:"180px",minWidth:"140px",resizable:!0,render:e=>es(e.timestamp)},{key:"actor",header:"Actor",className:"whitespace-nowrap overflow-hidden",sortable:!0,sortValue:e=>V(e.user_name,e.user_email,e.user_id),width:"180px",minWidth:"120px",resizable:!0,render:e=>(0,s.jsx)(h.aO,{kind:"user",id:e.user_id,name:V(e.user_name,e.user_email,e.user_id),email:W(e.user_name,e.user_email),icon:(0,s.jsx)(c.A,{size:13,className:"text-sw-text-muted shrink-0"}),className:"sw-text-body-default"})},{key:"module",header:"Module",className:"whitespace-nowrap",sortable:!0,sortValue:e=>e.module,width:"130px",minWidth:"90px",resizable:!0,render:e=>{var t;return(0,s.jsxs)("span",{className:"inline-flex items-center gap-1.5",children:[null!=(t=et[e.module])?t:null,(0,s.jsx)(h.Ex,{variant:"default",size:"sm",children:e.module})]})}},{key:"action",header:"Action",sortable:!0,sortValue:e=>e.action,width:"190px",minWidth:"130px",resizable:!0,render:e=>{var t;return(0,s.jsx)(h.Ex,{variant:null!=(t=ee[e.action])?t:"default",size:"sm",wrap:!0,children:ea(e.action)})}},{key:"context",header:"Context",className:"text-sw-text-muted font-mono break-words",minWidth:"140px",render:e=>{var t,a;return(0,s.jsx)("span",{title:null!=(t=e.context_label)?t:e.resource_id,children:el(null!=(a=e.context_label)?a:e.resource_id,48)})}}];return(0,s.jsxs)("div",{className:"space-y-4",children:[(0,s.jsxs)("div",{className:"flex flex-wrap items-center justify-end gap-2",children:[(0,s.jsxs)(w.H5,{value:N,onValueChange:E,children:[(0,s.jsx)(w.bq,{className:"w-36","aria-label":"Filter by module",children:(0,s.jsx)(w.yv,{})}),(0,s.jsx)(w.gC,{children:X.map(e=>(0,s.jsx)(w.eb,{value:e.value,children:e.label},e.value))})]}),(0,s.jsx)(x.$,{variant:"ghost",size:"sm",onClick:S,disabled:u,title:"Refresh",children:(0,s.jsx)(m.A,{size:16,className:(0,b.cn)(u&&"animate-spin")})}),(0,s.jsx)(z,{source:"activity",filters:{module:N},disabled:0===d.length,targetTenantId:n})]}),j&&(0,s.jsx)(h.ZT,{variant:"error",actions:[{label:"Retry",onClick:S}],children:j}),u&&(0,s.jsx)("div",{role:"status","aria-label":"Loading activity log",className:"rounded-sw-md border border-sw-border divide-y divide-sw-border-subtle",children:Array.from({length:6}).map((e,t)=>(0,s.jsx)(_.vT,{},t))}),!u&&!j&&0===d.length&&(0,s.jsx)(p.p,{icon:i.A,title:"No activity found"}),!u&&d.length>0&&(0,s.jsx)(v.b,{columns:L,rows:d,rowKey:e=>e.id,onRowSelect:C,rowAriaLabel:e=>"Open activity detail: ".concat(ea(e.action)," â ").concat(es(e.timestamp)),selectedKey:null!=(t=null==A?void 0:A.id)?t:null,minWidthClass:"min-w-[720px]",rowVariant:"audit",paginated:!0,pageSizeOptions:J,columnConfig:!0,storageKey:"audit-activity"}),(0,s.jsx)(q.tb,{open:null!==A,title:A?ea(A.action):"",subtitle:A?es(A.timestamp):void 0,onClose:()=>C(null),children:A&&(0,s.jsxs)("div",{className:"bg-sw-surface border border-sw-border-subtle rounded-sw p-3 space-y-2 text-sw-caption",children:[(0,s.jsxs)("div",{className:"flex items-center justify-between gap-3",children:[(0,s.jsx)("span",{className:"text-sw-text-muted shrink-0",children:"Module"}),(0,s.jsxs)("span",{className:"inline-flex items-center gap-1.5",children:[null!=(a=et[A.module])?a:null,(0,s.jsx)(h.Ex,{variant:"default",size:"sm",children:A.module})]})]}),(0,s.jsxs)("div",{className:"flex items-start justify-between gap-3",children:[(0,s.jsx)("span",{className:"text-sw-text-muted shrink-0",children:"Action"}),(0,s.jsx)(h.Ex,{variant:null!=(r=ee[A.action])?r:"default",size:"sm",wrap:!0,className:"text-right",children:ea(A.action)})]}),(0,s.jsxs)("div",{className:"flex items-center justify-between gap-3",children:[(0,s.jsx)("span",{className:"text-sw-text-muted shrink-0",children:"Actor"}),(0,s.jsx)(h.aO,{kind:"user",id:A.user_id,name:V(A.user_name,A.user_email,A.user_id),email:W(A.user_name,A.user_email),showCopy:!0,className:"text-sw-text"})]}),(0,s.jsxs)("div",{className:"flex items-start justify-between gap-3",children:[(0,s.jsx)("span",{className:"text-sw-text-muted shrink-0",children:"Resource type"}),(0,s.jsx)("span",{className:"text-sw-text text-right break-words",children:A.resource_type||"â"})]}),(0,s.jsxs)("div",{className:"flex items-start justify-between gap-3",children:[(0,s.jsx)("span",{className:"text-sw-text-muted shrink-0",children:"Resource ID"}),(0,s.jsx)("span",{className:"font-mono text-sw-text text-right break-all",children:A.resource_id||"â"})]}),A.context_label&&(0,s.jsxs)("div",{className:"flex items-start justify-between gap-3",children:[(0,s.jsx)("span",{className:"text-sw-text-muted shrink-0",children:"Context"}),(0,s.jsx)("span",{className:"text-sw-text text-right break-words",children:A.context_label})]}),(0,s.jsxs)("div",{className:"flex items-center justify-between gap-3",children:[(0,s.jsx)("span",{className:"text-sw-text-muted shrink-0",children:"Timestamp"}),(0,s.jsx)("span",{className:"text-sw-text-muted text-right",children:es(A.timestamp)})]})]})})]})};var er=a(86651),en=a(65229);let ed=[10,25,50];function eo(e){var t;let a=null==(t=e.email)?void 0:t.split("@")[0];return{id:e.id,externalId:e.external_id,label:e.display_name||a||e.email||e.id,email:e.email}}
1function ec(e){try{return new Date(e).toLocaleString()}catch(t){return e}}let eu=e=>{var t,a;let{targetTenantId:i}=e,[r,d]=(0,l.useState)([]),[o,u]=(0,l.useState)(!0),[_,w]=(0,l.useState)(null),[g,j]=(0,l.useState)([]),[y,N]=(0,l.useState)(""),[k,C]=(0,l.useState)(""),[S,E]=(0,l.useState)(null),L=(0,l.useMemo)(()=>g.find(e=>e.id===k),[g,k]),M=(0,l.useCallback)(async()=>{u(!0),w(null);try{let e=await f.Ll({module:"chat",limit:200,user_id:null==L?void 0:L.id,user_external_id:null==L?void 0:L.externalId,user_email:null==L?void 0:L.email,targetTenantId:i});d(e)}catch(e){w(e instanceof Error?e.message:"Failed to load conversational activity")}finally{u(!1)}},[L,i]);(0,l.useEffect)(()=>{M()},[M]),(0,l.useEffect)(()=>{let e=!0;return(async function(){let t=[],a=1,s=1/0;for(;t.length<s;){var l,r,n;let e=await (0,A.getTenantUsers)({page:a,page_size:100,targetTenantId:i});if(t.push(...(null!=(r=e.users)?r:[]).filter(e=>"active"===e.status).map(eo)),s=null!=(n=e.total)?n:t.length,!(null==(l=e.users)?void 0:l.length)||e.users.length<100)break;a+=1}e&&j(t.sort((e,t)=>e.label.localeCompare(t.label)))})().catch(()=>{e&&j([])}),()=>{e=!1}},[i]);let T=(0,l.useMemo)(()=>{let e=new Map;for(let t of g)e.set(t.id.toLowerCase(),t),t.externalId&&e.set(t.externalId.toLowerCase(),t),t.email&&e.set(t.email.toLowerCase(),t);return e},[g]),I=(0,l.useMemo)(()=>{let e=r.map(e=>(function(e,t){var a,s,l,i;let r=t.get(e.user_id.toLowerCase())||(e.user_email?t.get(e.user_email.toLowerCase()):void 0),n=null!=(a=null==r?void 0:r.label)?a:V(e.user_name,e.user_email,e.user_id),d=null!=(s=null==r?void 0:r.email)?s:W(e.user_name,e.user_email);return{id:e.id,lastActivity:e.timestamp,title:null!=(i=null!=(l=e.context_label)?l:e.resource_id)?i:"â",actor:n,actorName:n,actorId:e.user_id,actorEmail:d,module:e.module,action:e.action,resourceId:e.resource_id}})(e,T));if(k&&(e=L?e.filter(e=>(function(e,t){let a=[e.actorId,e.actorEmail,e.actor].filter(Boolean).map(e=>e.toLowerCase());return[t.id,t.externalId,t.email].filter(Boolean).map(e=>e.toLowerCase()).some(e=>a.includes(e))})(e,L)):e),y){let t=y.toLowerCase();e=e.filter(e=>e.title.toLowerCase().includes(t))}return e},[r,T,k,L,y]),O=(0,l.useMemo)(()=>{if(g.length>0)return g;let e=new Map;for(let t of r){let a=V(t.user_name,t.user_email,t.user_id);e.set(a,{id:a,label:a,email:W(t.user_name,t.user_email)})}return Array.from(e.values()).sort((e,t)=>e.label.localeCompare(t.label))},[r,g]),R=[{key:"lastActivity",header:"Last Activity",className:"text-sw-text-muted whitespace-nowrap",sortable:!0,sortValue:e=>e.lastActivity,width:"180px",minWidth:"140px",resizable:!0,render:e=>ec(e.lastActivity)},{key:"title",header:"Message",sortable:!0,sortValue:e=>e.title,minWidth:"160px",resizable:!0,render:e=>(0,s.jsxs)("div",{className:"flex items-center gap-1.5 max-w-[320px]",children:[(0,s.jsx)(n.A,{size:13,className:"text-sw-text-muted shrink-0"}),(0,s.jsx)("span",{className:"truncate text-sw-text font-medium",children:e.title})]})},{key:"module",header:"Folder / Type",className:"whitespace-nowrap",sortable:!0,sortValue:e=>e.module,width:"140px",minWidth:"100px",resizable:!0,render:e=>(0,s.jsxs)("span",{className:"flex items-center gap-1 sw-text-caption-muted",children:[(0,s.jsx)(H.A,{size:12}),(0,s.jsx)("span",{className:"capitalize",children:e.module})]})},{key:"actor",header:"Actor",className:"whitespace-nowrap overflow-hidden",sortable:!0,sortValue:e=>e.actor,width:"180px",minWidth:"120px",resizable:!0,render:e=>(0,s.jsx)(h.aO,{kind:"user",id:e.actorId,name:e.actorName,email:e.actorEmail,icon:(0,s.jsx)(c.A,{size:13,className:"text-sw-text-muted shrink-0"}),className:"sw-text-body-default"})},{key:"action",header:"Event",className:"whitespace-nowrap",sortable:!0,sortValue:e=>e.action,width:"140px",minWidth:"90px",resizable:!0,render:e=>(0,s.jsx)(h.Ex,{variant:"info",size:"sm",children:e.action})}];return(0,s.jsxs)("div",{className:"space-y-4",children:[(0,s.jsxs)("div",{className:"flex flex-wrap items-center gap-3",children:[(0,s.jsxs)("div",{className:"relative flex-1 min-w-[200px] max-w-xs",children:[(0,s.jsx)(er.A,{size:14,className:"absolute left-2.5 top-1/2 -translate-y-1/2 text-sw-text-muted pointer-events-none"}),(0,s.jsx)("input",{type:"text",placeholder:"Search messagesâ¦",value:y,onChange:e=>N(e.target.value),className:"w-full pl-8 pr-3 py-1.5 text-sw-caption border border-sw-border rounded-sw-sm bg-sw-surface text-sw-text focus:outline-none focus:ring-1 focus:ring-sw-primary"}),y&&(0,s.jsx)("button",{onClick:()=>N(""),className:"absolute right-2 top-1/2 -translate-y-1/2 text-sw-text-muted hover:text-sw-text",children:(0,s.jsx)(en.A,{size:12})})]}),O.length>0&&(0,s.jsxs)("div",{className:"flex items-center gap-2",children:[(0,s.jsx)(c.A,{size:14,className:"text-sw-text-muted shrink-0"}),(0,s.jsxs)("select",{value:k,onChange:e=>C(e.target.value),className:"text-sw-caption border border-sw-border rounded-sw-sm px-2 py-1.5 bg-sw-surface text-sw-text focus:outline-none focus:ring-1 focus:ring-sw-primary","aria-label":"Filter by user",children:[(0,s.jsx)("option",{value:"",children:"All Users"}),O.map(e=>(0,s.jsx)("option",{value:e.id,children:e.label},e.id))]})]}),(0,s.jsxs)("div",{className:"ml-auto flex items-center gap-2",children:[(0,s.jsx)(x.$,{variant:"ghost",size:"sm",onClick:M,disabled:o,title:"Refresh",children:(0,s.jsx)(m.A,{size:14,className:(0,b.cn)(o&&"animate-spin")})}),(0,s.jsx)(z,{source:"conversational",filters:{search:y||void 0,user:k||void 0},disabled:0===I.length,targetTenantId:i})]})]}),_&&(0,s.jsx)(h.ZT,{variant:"error",children:_}),o&&(0,s.jsx)("div",{className:"flex items-center justify-center py-12",children:(0,s.jsx)(h.y$,{size:"lg",label:"Loading conversational activity"})}),!o&&0===I.length&&(0,s.jsx)(p.p,{icon:n.A,title:"No conversational activity",description:y||k?"No results match the current filters.":"No conversation activity recorded yet."}),!o&&I.length>0&&(0,s.jsx)(v.b,{columns:R,rows:I,rowKey:e=>e.id,onRowSelect:E,rowAriaLabel:e=>
1"Open conversation detail: ".concat(e.title),selectedKey:null!=(t=null==S?void 0:S.id)?t:null,minWidthClass:"min-w-[720px]",rowVariant:"audit",paginated:!0,pageSizeOptions:ed,columnConfig:!0,storageKey:"audit-conversational"}),(0,s.jsx)(q.tb,{open:null!==S,title:null!=(a=null==S?void 0:S.title)?a:"",subtitle:S?"Conversation \xb7 ".concat(ec(S.lastActivity)):void 0,onClose:()=>E(null),children:S&&(0,s.jsxs)("div",{className:"space-y-4",children:[(0,s.jsxs)("div",{className:"bg-sw-surface border border-sw-border-subtle rounded-sw p-3 space-y-2 text-sw-caption",children:[(0,s.jsxs)("div",{className:"flex items-center justify-between",children:[(0,s.jsx)("span",{className:"text-sw-text-muted",children:"Resource ID"}),(0,s.jsx)("span",{className:"font-mono text-sw-text",children:S.resourceId})]}),(0,s.jsxs)("div",{className:"flex items-center justify-between",children:[(0,s.jsx)("span",{className:"text-sw-text-muted",children:"Actor"}),(0,s.jsx)(h.aO,{kind:"user",id:S.actorId,name:S.actorName,email:S.actorEmail,showCopy:!0,className:"text-sw-text"})]}),S.actorEmail&&(0,s.jsxs)("div",{className:"flex items-center justify-between",children:[(0,s.jsx)("span",{className:"text-sw-text-muted",children:"Email"}),(0,s.jsx)("span",{className:"text-sw-text",children:S.actorEmail})]}),(0,s.jsxs)("div",{className:"flex items-center justify-between",children:[(0,s.jsx)("span",{className:"text-sw-text-muted",children:"Last event"}),(0,s.jsx)(h.Ex,{variant:"info",size:"sm",children:S.action})]}),(0,s.jsxs)("div",{className:"flex items-center justify-between",children:[(0,s.jsx)("span",{className:"text-sw-text-muted",children:"Timestamp"}),(0,s.jsx)("span",{className:"text-sw-text-muted",children:ec(S.lastActivity)})]})]}),(0,s.jsx)("div",{className:"p-3 rounded-sw bg-sw-surface-elevated border border-sw-border-subtle text-sw-caption text-sw-text-muted italic",children:"Full conversation replay requires the conversation detail endpoint (platform admin scope). This access is recorded in General Activity."})]})})]})};var em=a(75444);let ex=[{id:"activity",label:"General Activity",icon:i.A},{id:"settings",label:"Settings Changes",icon:r.A},{id:"conversational",label:"Conversational Activity",icon:n.A}],ep=e=>{let{targetTenantId:t}=e,a=(0,em.S)(),[i,n]=(0,l.useState)("activity");return a.loading?(0,s.jsx)("div",{role:"status","aria-label":"Loading permissions",className:"flex items-center justify-center py-20",children:(0,s.jsx)(h.y$,{size:"md"})}):a.isAdmin?(0,s.jsxs)(d.u,{title:"Audit Log",subtitle:"Settings changes, user activity, and conversational audit trail.",icon:(0,s.jsx)(r.A,{size:20,className:"text-sw-primary-text","aria-hidden":"true"}),children:[(0,s.jsx)(o.tU,{value:i,onValueChange:e=>n(e),children:(0,s.jsx)(o.WQ,{children:ex.map(e=>{let{id:t,label:a,icon:l}=e;return(0,s.jsxs)(o.Wy,{value:t,children:[(0,s.jsx)(l,{size:15}),a]},t)})})}),(0,s.jsxs)("div",{children:["activity"===i&&(0,s.jsx)(ei,{targetTenantId:t}),"settings"===i&&(0,s.jsx)($,{targetTenantId:t}),"conversational"===i&&(0,s.jsx)(eu,{targetTenantId:t})]})]}):(0,s.jsx)(h.Oy,{requiredRole:"Tenant Admin",description:"Tenant admin access is required to view the audit log.",contactHint:"Contact your tenant administrator."})}},50906:(e,t,a)=>{a.d(t,{A:()=>s});let s=(0,a(5121).A)("activity",[["path",{d:"M22 12h-2.48a2 2 0 0 0-1.93 1.46l-2.35 8.36a.25.25 0 0 1-.48 0L9.24 2.18a.25.25 0 0 0-.48 0l-2.35 8.36A2 2 0 0 1 4.49 12H2",key:"169zse"}]])},54485:(e,t,a)=>{a.d(t,{A:()=>s});let s=(0,a(5121).A)("history",[["path",{d:"M3 12a9 9 0 1 0 9-9 9.75 9.75 0 0 0-6.74 2.74L3 8",key:"1357e3"}],["path",{d:"M3 3v5h5",key:"1xhq8a"}],["path",{d:"M12 7v5l4 2",key:"1fdv2h"}]])},66955:(e,t,a)=>{a.d(t,{A:()=>s});let s=(0,a(5121).A)("funnel",[["path",{d:"M10 20a1 1 0 0 0 .553.895l2 1A1 1 0 0 0 14 21v-7a2 2 0 0 1 .517-1.341L21.74 4.67A1 1 0 0 0 21 3H3a1 1 0 0 0-.742 1.67l7.225 7.989A2 2 0 0 1 10 14z",key:"sc7q7i"}]])}}]);
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.