PageSourceSearch

https://lpcaustin.com/assets/queries-dca7c81e52980abfa6c9.js

js lpcaustin.com collected 2026-10-08 09:03:33 UTC 76,211 bytes, 1 lines download raw bytes

1"use strict";(self.webpackChunk_fleetdm_fleet=self.webpackChunk_fleetdm_fleet||[]).push([[313],{75947:function(e,t,r){var a=r(96540),n=r(32485),l=r.n(n),s=r(36709),o=r(89937);t.A=({logDestination:e,webhookDestination:t,filesystemDestination:r,excludeTooltip:n=!1})=>{const i=(u=e)===o.r2?"indeterminate":u.replace(" ","-").toLowerCase();var u;const c=l()("log-destination-indicator",`log-destination-indicator--${i}`,`log-destination--${i}`),d=()=>{switch(e){case"filesystem":return"Filesystem";case"firehose":return"Amazon Kinesis Data Firehose";case"kinesis":return"Amazon Kinesis Data Streams";case"lambda":return"AWS Lambda";case"pubsub":return"Google Cloud Pub/Sub";case"kafka":return"Apache Kafka";case"nats":return"NATS";case"splunk":return"Splunk";case"stdout":return"Standard output (stdout)";case"webhook":return"Webhook";case"":return"Not configured";default:return e}};return n?a.createElement(a.Fragment,null,d()):a.createElement(s.A,{tipContent:(()=>{switch(e){case"filesystem":return a.createElement(a.Fragment,null,"Each time a report runs, the data is sent to ",a.createElement("br",null),r," ",a.createElement("br",null),"on the server's filesystem.");case"firehose":return a.createElement(a.Fragment,null,"Each time a report runs, the data is sent to ",a.createElement("br",null),"Amazon Kinesis Data Firehose.");case"kinesis":return a.createElement(a.Fragment,null,"Each time a report runs, the data is sent to ",a.createElement("br",null),"Amazon Kinesis Data Streams.");case"lambda":return a.createElement(a.Fragment,null,"Each time a report runs, the data ",a.createElement("br",null),"is sent to AWS Lambda.");case"pubsub":return a.createElement(a.Fragment,null,"Each time a report runs, the data is ",a.createElement("br",null)," sent to Google Cloud Pub / Sub.");case"kafka":return a.createElement(a.Fragment,null,"Each time a report runs, the data ",a.createElement("br",null)," is sent to Apache Kafka.");case"nats":return a.createElement(a.Fragment,null,"Each time a report runs, the data ",a.createElement("br",null)," is sent to NATS.");case"splunk":return a.createElement(a.Fragment,null,"Each time a report runs, the data ",a.createElement("br",null)," is sent to Splunk.");case"stdout":return a.createElement(a.Fragment,null,"Each time a report runs, the data is sent to ",a.createElement("br",null),"standard output(stdout) on the Fleet server.");case"webhook":return a.createElement(a.Fragment,null,"Each time a report runs, the data is sent via webhook to:"," ",t,".");case"":return a.createElement(a.Fragment,null,"Please configure a log destination.");default:return a.createElement(a.Fragment,null,"No additional information is available about this log destination.")}})(),className:c},d())}},19581:function(e,t,r){r.d(t,{A:function(){return l}});var a=r(96540),n=r(90710),l=({column:e})=>{const{setFilter:t}=e;return"last_fetched"===e.id?a.createElement(a.Fragment,null):a.createElement("div",{className:"filter-cell"},a.createElement(n.A,{placeholder:"",onClick:e=>e.stopPropagation(),onChange:e=>{t(e||void 0)},icon:"filter-funnel"}))}},33427:function(e,t,r){var a=r(96540),n=r(32485),l=r.n(n),s=r(2543),o=r(25663),i=r(52603),u=Object.defineProperty,c=Object.defineProperties,d=Object.getOwnPropertyDescriptors,m=Object.getOwnPropertySymbols,p=Object.prototype.hasOwnProperty,y=Object.prototype.propertyIsEnumerable,g=(e,t,r)=>t in e?u(e,t,{enumerable:!0,configurable:!0,writable:!0,value:r}):e[t]=r;const v="fleet-slider";t.A=e=>{const{onChange:t,value:r,inactiveText:n,activeText:u,labelTooltip:E,autoFocus:f,disabled:h}=e,b=(0,a.useRef)(null);(0,a.useEffect)(()=>{f&&b.current&&b.current.focus()},[f]);const _=l()(v,{[`${v}--active`]:r}),A=l()(`${v}__dot`,{[`${v}__dot--active`]:r}),w=(0,s.pick)(e,["helpText","label","error","name","className","disabled"]),S=l()(`${v}__wrapper`,{[`${v}__wrapper--disabled`]:h}),C=r?u:n;return a.createElement(o.A,(T=((e,t)=>{for(var r in t||(t={}))p.call(t,r)&&g(e,r,t[r]);if(m)for(var r of m(t))y.call(t,r)&&g(e,r,t[r]);return e})({},w),c(T,d({type:"slider"}))),a.createElement("div",{className:S},a.createElement("button",{role:"switch","aria-checked":r,className:`button button--unstyled ${_}`,onClick:e=>{e.preventDefault(),h||t()},disabled:h,ref:b},a.createElement("div",{className:A})),E?a.createElement(i.A,{tipContent:E}," ",a.createElement("span",{className:`${v}__label ${v}__label--${r?"active":"inactive"}`},C)):a.createElement("span",{className:`${v}__label ${v}__label--${r?"active":"inactive"}`},C)));var T}},26806:function(e,t,r){r.d(t,{A:function(){return a.A}});var a=r(33427)},45894:function(e,t,r){var a=r(96733),n=r(96540);t.A=({automationsEnabled:e,interval:t})=>{let r;r=e?0===t?"paused":"on":"off";const l="paused"===r?{tooltipText:n.createElement(n.Fragment,null,n.createElement("strong",null,"Automations")," will resume for this report when an interval is set.")}:void 0;return n.createElement(a.A,{value:r,tooltip:l,customIndicatorType:"query-automations"})}},49269:function(e,t,r){r.r(t),r.d(t,{default:function(){return $e}});
1var a=r(96540),n=r(75942),l=r(2543),s=r(68774),o=r(83535),i=r(69807),u=r(46157),c=r(89937),d=r(9467),m=r(12968),p=r(43015),y=r(72273),g=r(62131),v=r(43788),E=r(78263),f=r(29448),h=r(74953),b=r(85396),_=r(79519),A=r(827),w=r(82196),S=r(38944),C=r(52603),T=r(41995),O=r(34724),q=r(46692),N=r(2367),x=r(95681),P=r(52978),Q=r(5410),k=r(59227),R=r(42690),I=r(72828),D=r(61172),F=r(75679),L=r(5205),$=r(42619),j=r(59333),M=r(24292),H=r(45894),B=Object.defineProperty,G=Object.getOwnPropertySymbols,U=Object.prototype.hasOwnProperty,V=Object.prototype.propertyIsEnumerable,W=(e,t,r)=>t in e?B(e,t,{enumerable:!0,configurable:!0,writable:!0,value:r}):e[t]=r,z=(e,t)=>{for(var r in t||(t={}))U.call(t,r)&&W(e,r,t[r]);if(G)for(var r of G(t))V.call(t,r)&&W(e,r,t[r]);return e},K=Object.defineProperty,X=Object.defineProperties,Y=Object.getOwnPropertyDescriptors,J=Object.getOwnPropertySymbols,Z=Object.prototype.hasOwnProperty,ee=Object.prototype.propertyIsEnumerable,te=(e,t,r)=>t in e?K(e,t,{enumerable:!0,configurable:!0,writable:!0,value:r}):e[t]=r,re=(e,t)=>{for(var r in t||(t={}))Z.call(t,r)&&te(e,r,t[r]);if(J)for(var r of J(t))ee.call(t,r)&&te(e,r,t[r]);return e};const ae="queries-table",ne="name",le=[{disabled:!1,label:"All platforms",value:"all"},{disabled:!1,label:"macOS",value:"darwin"},{disabled:!1,label:"Windows",value:"windows"},{disabled:!1,label:"Linux",value:"linux"}];
1var se=({queries:e,totalQueriesCount:t,hasNextResults:r,curTeamScopeQueriesPresent:n,isLoading:l,onDeleteQueryClick:o,onAddReportClick:i,canAddReport:u,isOnlyObserver:c,isObserverPlus:y,isAnyTeamObserverPlus:v,router:f,queryParams:b,currentTeamId:_,isPremiumTier:A})=>{var w;const{currentUser:S,config:B}=(0,a.useContext)(s.BR),G=(0,a.useRef)(!0),U=null!=(V=null==b?void 0:b.query)?V:"";var V;const W=(()=>{var e;return null!=(e=null==b?void 0:b.order_key)?e:ne})(),K=(()=>{var e;return null!=(e=null==b?void 0:b.order_direction)?e:"asc"})(),J=b&&b.page?parseInt(null==b?void 0:b.page,10):0,Z=U,ee=J,te=K,se=W,oe=null==b?void 0:b.platform,ie=(0,p.ek)(oe)?oe:"all",ue=(0,a.useCallback)(e=>{const{pageIndex:t,searchQuery:r,sortDirection:a,sortHeader:n}=e,l={};l.order_key=n,l.order_direction=a,l.platform="all"===ie?void 0:ie,l.page=t,l.query=r,a===te&&n===se&&r===Z||(l.page="0"),l.fleet_id=null==b?void 0:b.fleet_id;const s=(0,d.g2)({pathPrefix:E.A.MANAGE_REPORTS,queryParams:re(re({},b),l)});G.current?(G.current=!1,null==f||f.replace(s)):null==f||f.push(s)},[ie,te,se,Z,b,f]),ce=A&&(null==_||_===g.jc);let de="No reports yet";A&&!(null==(w=null==B?void 0:B.partnerships)?void 0:w.enable_primo)&&(de=ce?"No reports apply to all fleets":"No reports for this fleet");const me={header:de,info:"Reports are queries that run on a schedule. Results are saved in Fleet.",primaryButton:u?a.createElement(h.A,{onClick:i,type:"button"},"Add report"):void 0};(Z||"all"!==ie)&&(delete me.primaryButton,me.header="No matching reports",me.info="No reports match the current filters.");const pe=(0,a.useCallback)(e=>{var t,r;null==f||f.push((0,d.g2)({pathPrefix:E.A.MANAGE_REPORTS,queryParams:(t=re({},b),r={page:0,platform:"all"===(null==e?void 0:e.value)||null==e?void 0:e.value},X(t,Y(r)))}))},[b,f]),ye=(0,a.useMemo)(()=>S&&(({currentUser:e,currentTeamId:t,omitSelectionColumn:r=!1})=>{const n=t?(0,x.s)(e,t):(0,x.l4)(e),l=t!==g.s_,s=[{title:"Name",Header:e=>a.createElement(I.A,{value:e.column.title,isSortedDesc:e.column.isSortedDesc}),accessor:"name",Cell:e=>{const{id:r,team_id:s,observer_can_run:o}=e.row.original;return a.createElement(R.A,{className:"w400",tooltipTruncate:!0,value:e.cell.value,suffix:a.createElement(a.Fragment,null,!n&&o&&a.createElement(C.A,{tipContent:"Observers can run this report.",underline:!1,showArrow:!0,position:"top",delayInMs:300},a.createElement(P.A,{className:"observer-can-run-query-icon",name:"query",size:"small",color:"ui-fleet-black-50"})),l&&s!==t&&a.createElement($.A,{tooltip:"This report runs on all hosts.",size:"small"},"Inherited")),path:(0,m.M8)(E.A.REPORT_DETAILS(r),{fleet_id:null!=s?s:t})})},sortType:"caseInsensitive"},{title:"Platform",Header:"Targeted platforms",disableSortBy:!0,accessor:"platform",Cell:e=>{if(!e.row.original.interval)return a.createElement(F.A,null);const t=e.cell.value.split(",").map(e=>e.trim()).filter(e=>(0,p.lV)(e));return a.createElement(D.A,{platforms:t})}},{title:"Interval",Header:"Interval",disableSortBy:!0,accessor:"interval",Cell:e=>{const t=e.cell.value?`Every ${(0,d.xR)(e.cell.value)}`:void 0;return a.createElement(F.A,{value:t,emptyCellTooltipText:a.createElement(a.Fragment,null,"Assign an interval to collect data on a schedule.")})}},{title:"Performance impact",Header:()=>a.createElement("div",null,a.createElement(C.A,{tipContent:"The average performance impact across all hosts."},"Performance impact")),disableSortBy:!0,accessor:"performance",Cell:e=>a.createElement(L.A,{value:{indicator:e.cell.value}})},{title:"Automations",Header:"Automations",disableSortBy:!0,accessor:"automations_enabled",Cell:e=>a.createElement(H.A,{automationsEnabled:e.cell.value,interval:e.row.original.interval})},{title:"Last modified",Header:e=>a.createElement(I.A,{value:e.column.title,isSortedDesc:e.column.isSortedDesc}),accessor:"updated_at",Cell:e=>a.createElement(F.A,{value:e.cell.value,formatter:e=>a.createElement(M.T,{timeString:e})})}];return((0,x.pS)(e)||(0,x.ik)(e)||t&&((0,x.TY)(e,t)||(0,x.Mo)(e,t)))&&!r&&s.unshift({id:"selection",Header:e=>{const r=(0,k.V)({headerProps:e,checkIfRowIsSelectable:e=>{var r;return(null!=(r=e.original.team_id)?r:void 0)===t}});
1return a.createElement(j.A,{position:"right",tipOffset:8,fixedPositionStrategy:!0,renderChildren:e=>a.createElement(Q.A,z({disabled:e,enableEnterToCheck:!0},r))})},Cell:e=>{var r;const n=(null!=(r=e.row.original.team_id)?r:void 0)!==t;if(l&&n)return a.createElement(a.Fragment,null);const{row:s}=e,{checked:o}=s.getToggleRowSelectedProps(),i={value:o,onChange:()=>s.toggleRowSelected()};return a.createElement(j.A,{position:"right",tipOffset:8,fixedPositionStrategy:!0,renderChildren:e=>a.createElement(Q.A,z({disabled:e,enableEnterToCheck:!0},i))})},disableHidden:!0}),s})({currentUser:S,currentTeamId:_,omitSelectionColumn:!n}),[S,_,n]),ge=0===(null!=t?t:0)&&!oe&&!Z,ve=(0,a.useCallback)(()=>a.createElement(T.A,{name:"platform-dropdown",value:ie,className:`${ae}__platform-dropdown`,options:le,onChange:pe,variant:"table-filter",iconName:"filter-alt",isDisabled:ge}),[ie,pe,ge]),Ee=Z.trim();return ye&&a.createElement("div",{className:`${ae}`},a.createElement(O.A,{resultsTitle:"reports",columnConfigs:ye,data:e,isLoading:l,defaultSortHeader:se||ne,defaultSortDirection:te||"asc",defaultSearchQuery:Ee,pageIndex:ee,disableNextPage:!r,showMarkAllPages:!1,isAllPagesSelected:!1,primarySelectAction:{name:"delete reports",buttonText:"Delete",iconSvg:"trash",variant:"secondary",onClick:o},emptyComponent:()=>a.createElement(N.A,re({},me)),renderCount:()=>a.createElement(q.A,{name:"reports",count:t}),inputPlaceHolder:"Search by name",onQueryChange:ue,searchable:!0,disableSearch:ge,customControl:ve,disableMultiRowSelect:!n,onClickRow:e=>{e.original.id&&(null==f||f.push((0,m.M8)(E.A.REPORT_DETAILS(e.original.id),{fleet_id:_})))},selectedDropdownFilter:ie}))},oe=r(99958);const ie="delete-query-modal";var ue=({isUpdatingQueries:e,onCancel:t,onSubmit:r})=>a.createElement(oe.A,{title:"Delete reports",onExit:t,onEnter:r,className:ie},a.createElement("div",{className:ie},"Are you sure you want to delete the selected reports?",a.createElement("div",{className:"modal-cta-wrap"},a.createElement(h.A,{type:"button",variant:"alert",onClick:r,className:"delete-loading",isLoading:e},"Delete"),a.createElement(h.A,{onClick:t,variant:"secondary"},"Cancel")))),ce=r(47867),de=r(15619),me=r(32485),pe=r.n(me),ye=r(45847),ge=({frequency:e,checked:t})=>{const r=(n=e.toString())===c.r2?"indeterminate":n.replace(" ","-").toLowerCase();var n;const l=pe()("query-frequency-indicator",`query-frequency-indicator--${r}`,`frequency--${r}`);return a.createElement("div",{className:`${l}\n        ${0===e&&!t&&"grey"}`},0===e?t?a.createElement(ye.A,{size:"medium",name:"warning"}):a.createElement(ye.A,{size:"medium",name:"clock",color:"ui-fleet-black-33"}):a.createElement(ye.A,{size:"medium",name:"clock"}),(()=>{switch(e){case 0:return"Never";case 3600:return"Hourly";case 86400:return"Daily";case 604800:return"Weekly";default:return(0,d.xR)(e)}})())},ve=r(75947),Ee=r(25809),fe=Object.defineProperty,he=Object.defineProperties,be=Object.getOwnPropertyDescriptors,_e=Object.getOwnPropertySymbols,Ae=Object.prototype.hasOwnProperty,we=Object.prototype.propertyIsEnumerable,Se=(e,t,r)=>t in e?fe(e,t,{enumerable:!0,configurable:!0,writable:!0,value:r}):e[t]=r;const Ce="manage-query-automations-modal";var Te=({isUpdatingAutomations:e,onSubmit:t,onCancel:r,isShowingPreviewDataModal:l,togglePreviewDataModal:o,teamId:i,logDestination:u,webhookDestination:c,filesystemDestination:d})=>{var m;const p=null==(m=(0,a.useContext)(s.BR).config)?void 0:m.gitops.gitops_mode_enabled,{data:y}=(0,n.useQuery)([{scope:"queries",teamId:i,orderKey:"name",orderDirection:"asc",mergeInherited:!1}],({queryKey:e})=>v.A.loadAll(e[0]),{refetchOnWindowFocus:!1}),g=(0,a.useMemo)(()=>{var e;return null!=(e=null==y?void 0:y.queries)?e:[]},[y]),E=(0,a.useMemo)(()=>g.filter(e=>e.automations_enabled).map(e=>e.id),[g]),f=(0,a.useMemo)(()=>[...g].sort((e,t)=>e.name.toLowerCase().localeCompare(t.name.toLowerCase())),[g]),[b,_]=(0,a.useState)([]);(0,a.useEffect)(()=>{f.length>0&&_(f.map(({name:e,id:t,interval:r})=>({name:e,id:t,isChecked:!!(null==E?void 0:E.includes(t)),interval:r})))},[f,E]);const A=e=>{e.preventDefault();const r=[];
1null==b||b.forEach(e=>e.isChecked&&r.push(e.id)),t({newAutomatedQueryIds:r,previousAutomatedQueryIds:E})};return(0,a.useEffect)(()=>{const e=e=>{"Enter"!==e.code&&"NumpadEnter"!==e.code||(e.preventDefault(),t({newAutomatedQueryIds:b.filter(e=>e.isChecked).map(e=>e.id),previousAutomatedQueryIds:E}))};return document.addEventListener("keydown",e),()=>{document.removeEventListener("keydown",e)}}),a.createElement(oe.A,{title:"Manage automations",onExit:r,className:Ce,width:"large",isHidden:l},a.createElement("div",{className:`${Ce} form`},a.createElement("div",{className:`${Ce}__heading`},"Report automations let you send data gathered from macOS, Windows, and Linux hosts to a log destination. Data is sent according to a report's interval."),g.length?a.createElement("div",{className:`${Ce}__select form-field`},a.createElement("div",{className:"form-field__label"},"Choose which reports will send data:"),a.createElement("div",{className:`${Ce}__checkboxes`},b&&b.map(e=>{const{isChecked:t,name:r,id:n,interval:l}=e;return a.createElement("div",{key:n,className:`${Ce}__query-item`},a.createElement(de.A,{value:t,name:r,onChange:()=>{var e;e=n,_(t=>t.map(t=>{return t.id!==e?t:(r=((e,t)=>{for(var r in t||(t={}))Ae.call(t,r)&&Se(e,r,t[r]);if(_e)for(var r of _e(t))we.call(t,r)&&Se(e,r,t[r]);return e})({},t),a={isChecked:!t.isChecked},he(r,be(a)));var r,a}))},disabled:p},a.createElement(Ee.A,{value:r})),a.createElement(ge,{frequency:l,checked:t}))}))):a.createElement("div",{className:`${Ce}__no-queries`},a.createElement("b",null,"You have no reports."),a.createElement("p",null,"Add a report to turn on automations.")),a.createElement("div",{className:`${Ce}__log-destination form-field`},a.createElement("div",{className:"form-field__label"},"Log destination:"),a.createElement("div",{className:`${Ce}__selection`},a.createElement(ve.A,{logDestination:u,webhookDestination:c,filesystemDestination:d})),a.createElement("div",{className:`${Ce}__configure form-field__help-text`},"Users with the admin role can ",a.createElement(ce.A,{url:"https://fleetdm.com/docs/using-fleet/log-destinations",text:"configure a different log destination",newTab:!0}))),a.createElement(h.A,{type:"button",variant:"secondary",onClick:o,className:`${Ce}__preview-data`},"Example data"),a.createElement("div",{className:"modal-cta-wrap"},a.createElement(j.A,{tipOffset:6,renderChildren:t=>a.createElement(h.A,{type:"submit",onClick:A,className:"save-loading",isLoading:e,disabled:t},"Save")}),a.createElement(h.A,{onClick:r,variant:"secondary"},"Cancel"))))};const Oe="preview-data-modal";var qe=({onCancel:e})=>a.createElement(oe.A,{title:"Example data",onExit:e,className:Oe},a.createElement("div",{className:`${Oe}__preview-modal`},a.createElement("p",null,a.createElement(C.A,{tipContent:a.createElement(a.Fragment,null,'The "snapshot" key includes the report\'s results. These will be unique to your report.')},"The data sent to your configured log destination will look similar to the following JSON:")),a.createElement("div",{className:`${Oe}__host-status-webhook-preview`},a.createElement("pre",{dangerouslySetInnerHTML:{__html:(0,d._j)({action:"snapshot",snapshot:[{remote_address:"0.0.0.0",remote_port:"0",cmdline:"/usr/sbin/syslogd"}],name:"xxxxxxx",hostIdentifier:"xxxxxxx",calendarTime:"xxx xxx  x xx:xx:xx xxxx UTC",unixTime:"xxxxxxxxx",epoch:"xxxxxxxxx",counter:"x",numerics:"x"})}})),a.createElement("div",{className:"modal-cta-wrap"},a.createElement(h.A,{onClick:e},"Close")))),Ne=Object.defineProperty,xe=Object.defineProperties,Pe=Object.getOwnPropertyDescriptors,Qe=Object.getOwnPropertySymbols,ke=Object.prototype.hasOwnProperty,Re=Object.prototype.propertyIsEnumerable,Ie=(e,t,r)=>t in e?Ne(e,t,{enumerable:!0,configurable:!0,writable:!0,value:r}):e[t]=r,De=(e,t,r)=>new Promise((a,n)=>{var l=e=>{try{o(r.next(e))}catch(e){n(e)}},s=e=>{try{o(r.throw(e))}catch(e){n(e)}},o=e=>e.done?a(e.value):Promise.resolve(e.value).then(l,s);o((r=r.apply(e,t)).next())});const Fe="manage-queries-page",Le=e=>{return t=((e,t)=>{for(var r in t||(t={}))ke.call(t,r)&&Ie(e,r,t[r]);if(Qe)for(var r of Qe(t))Re.call(t,r)&&Ie(e,r,t[r]);return e})({},e),r={performance:(0,d.Hv)((0,l.pick)(e.stats,["user_time_p50","system_time_p50","total_executions"])),targetedPlatforms:(a=e.platform,a.split(",").filter(p.ek))},xe(t,Pe(r));var t,r,a};var $e=({router:e,location:t})=>{var r,l,d,p;const{isGlobalAdmin:T,isGlobalMaintainer:O,isTeamAdmin:q,isTeamMaintainer:N,isOnlyObserver:x,isObserverPlus:P,isAnyTeamObserverPlus:Q,isOnGlobalTeam:k,setFilteredQueriesPath:R,filteredQueriesPath:I,isPremiumTier:D,config:F}=(0,a.useContext)(s.BR),{setLastEditedQueryBody:L,setSelectedQueryTargetsByType:$}=(0,a.useContext)(o.c),{setResetSelectedRows:j}=(0,a.useContext)(i.G),{userTeams:M,currentTeamId:H,handleTeamChange:B,teamIdForApi:G,isRouteOk:U}=(0,S.Ay)({location:t,router:e,includeAllTeams:!0,includeNoTeam:!1}),V=-1!==H,[W,z]=(0,a.useState)([]),[K,X]=(0,a.useState)(!1),[Y,J]=(0,a.useState)(!1),[Z,ee]=(0,a.useState)(!1),[te,re]=(0,a.useState)(!1),[ae,ne]=(0,a.useState)(!1),le=T||q,oe=t.query.page?parseInt(t.query.page,10):0,{data:ie,error:ce,isFetching:de,isLoading:me,refetch:pe}=(0,n.useQuery)([{scope:"queries",teamId:G,page:oe,perPage:20,query:t.query.query,orderDirection:t.query.order_direction,orderKey:t.query.order_key,mergeInherited:G!==g.s_,targetedPlatform:t.query.platform}],({queryKey:e})=>v.A.loadAll(e[0]),{refetchOnWindowFocus:!1,enabled:U,staleTime:5e3}),ye=(0,a.useMemo)(()=>(null==ie?void 0:ie.queries.map(Le))||[],[ie]),ge=V?(null!=(r=null==ie?void 0:ie.count)?r:0)>(null!=(l=null==ie?void 0:ie.inherited_query_count)?l:0):(null!=(d=null==ie?void 0:ie.count)?d:0)>0;(0,a.useEffect)(()=>
1{if("1"!==t.query.manage_automations)return;if(!ie)return;le&&ge&&J(!0);const r=t.query,{manage_automations:a}=r,n=((e,t)=>{var r={};for(var a in e)ke.call(e,a)&&t.indexOf(a)<0&&(r[a]=e[a]);if(null!=e&&Qe)for(var a of Qe(e))t.indexOf(a)<0&&Re.call(e,a)&&(r[a]=e[a]);return r})(r,["manage_automations"]);e.replace({pathname:t.pathname,query:n})},[t.query,t.pathname,e,le,ge,ie]),(0,a.useEffect)(()=>{const e=t.pathname+t.search;I!==e&&R(e)},[t,I,R]),(0,a.useEffect)(()=>{$(y.MQ)},[]);const ve=(0,a.useCallback)(e=>{B(e)},[B]),Ee=(0,a.useCallback)(()=>{L(c.Xl.query),e.push((0,m.M8)(E.A.NEW_REPORT,{fleet_id:H}))},[H,e,L]),fe=(0,a.useCallback)(()=>{X(!K)},[K,X]),he=(0,a.useCallback)(e=>{fe(),z(e)},[fe,z]),be=(0,a.useCallback)(()=>{J(!Y)},[Y,J]),_e=(0,a.useCallback)(()=>{ee(!Z)},[Z,ee]),Ae=(0,a.useCallback)(()=>De(null,null,function*(){const e=W.length>1;re(!0);try{e?yield v.A.bulkDestroy(W):yield v.A.destroy(W[0]),u.me.success("Successfully deleted reports."),j(!0),pe()}catch(e){u.me.error("There was an error deleting your reports. Please try again later.",{response:e})}finally{fe(),re(!1)}}),[pe,W,fe]),we=T||O||q||N||P,Se=(0,a.useCallback)(e=>De(null,[e],function*({newAutomatedQueryIds:e,previousAutomatedQueryIds:t}){ne(!0);const r=e.filter(e=>!t.includes(e)),a=t.filter(t=>!e.includes(t)),n=[];r.map(e=>n.push(v.A.update(e,{automations_enabled:!0}))),a.map(e=>n.push(v.A.update(e,{automations_enabled:!1})));try{yield Promise.all(n).then(()=>{u.me.success("Successfully updated report automations."),pe()})}catch(e){u.me.error("There was an error updating your report automations. Please try again later.",{response:e})}finally{be(),ne(!1)}}),[pe,be]);return a.createElement(A.A,{className:Fe},a.createElement(a.Fragment,null,a.createElement("div",{className:`${Fe}__header-wrap`},a.createElement("div",{className:`${Fe}__header`},a.createElement("div",{className:`${Fe}__text`},a.createElement("div",{className:`${Fe}__title`},(()=>{var e;if(D&&M&&!(null==(e=null==F?void 0:F.partnerships)?void 0:e.enable_primo)){if(M.length>1||k)return a.createElement(w.A,{currentUserFleets:M,selectedFleetId:H,onChange:ve});if(1===M.length&&!k)return a.createElement("h1",null,M[0].name)}return a.createElement("h1",null,"Reports")})())),we&&a.createElement("div",{className:`${Fe}__action-button-container`},le&&(ge?a.createElement(b.A,{onClick:()=>{be()},className:`${Fe}__manage-automations button`}):a.createElement(C.A,{tipContent:a.createElement("div",{className:`${Fe}__manage-automations-tooltip`},V&&(null!=(p=null==ie?void 0:ie.count)?p:0)>0?a.createElement(a.Fragment,null,"To manage automations add a report to this fleet. For inherited reports select “All fleets”."):"To manage automations add a report."),underline:!1,position:"top",showArrow:!0},a.createElement(b.A,{disabled:!0,className:`${Fe}__manage-automations button`}))),we&&a.createElement(h.A,{className:`${Fe}__create-button`,onClick:Ee},P?"Live report":"Add report"))),a.createElement(f.A,{content:"Gather data about your hosts."})),ce?a.createElement(_.A,{verticalPaddingSize:"pad-xxxlarge"}):a.createElement(se,{queries:ye||[],totalQueriesCount:null==ie?void 0:ie.count,hasNextResults:!!(null==ie?void 0:ie.meta.has_next_results),curTeamScopeQueriesPresent:G!==g.s_?ye.some(e=>e.team_id===H):ye.length>0,isLoading:me||de,onDeleteQueryClick:he,onAddReportClick:Ee,canAddReport:we,isOnlyObserver:x,isObserverPlus:P,isAnyTeamObserverPlus:Q||!1,router:e,queryParams:t.query,currentTeamId:G,isPremiumTier:D}),a.createElement(a.Fragment,null,K&&a.createElement(ue,{isUpdatingQueries:te,onCancel:fe,onSubmit:Ae}),Y&&a.createElement(Te,{isUpdatingAutomations:ae,onSubmit:Se,onCancel:be,isShowingPreviewDataModal:Z,togglePreviewDataModal:_e,teamId:G,logDestination:(null==F?void 0:F.logging.result.plugin)||"",webhookDestination:null==(Ce=null==F?void 0:F.logging.result.config)?void 0:Ce.result_url,filesystemDestination:null==(Oe=null==F?void 0:F.logging.result.config)?void 0:Oe.result_log_file}),Z&&a.createElement(qe,{onCancel:_e}))));var Ce,Oe}},84955:function(e,t,r){r.r(t),r.d(t,{default:function(){return ie}});var a=r(96540),n=r(75942),l=r(24740),s=r(78263),o=r(68774),i=r(43788),u=r(97126),c=r(90508),d=r(12968),m=r(95681),p=r(89937),y=r(38944),g=r(95163),v=r(74953),E=r(84945),f=r(827),h=r(36709),b=r(25809),_=r(45894),A=r(17015),w=r(75947),S=r(24432),C=r(38021),T=r(67310),O=r(29448),q=r(91936),N=r.n(q),x=r(37706),P=r(34724),Q=r(46692),k=r(80055),R=r(52603),I=r(2367),D=r
1(19581),F=r(72828),L=r(9467),$=r(24228),j=Object.defineProperty,M=Object.defineProperties,H=Object.getOwnPropertyDescriptors,B=Object.getOwnPropertySymbols,G=Object.prototype.hasOwnProperty,U=Object.prototype.propertyIsEnumerable,V=(e,t,r)=>t in e?j(e,t,{enumerable:!0,configurable:!0,writable:!0,value:r}):e[t]=r;var W=(e,t)=>{const r=(0,L.cv)(e);r.delete("host_id");return(e=>{const t=[...e],r=e.findIndex(e=>"host_display_name"===e.id);if(r>=0){const[e]=t.splice(r,1);t.unshift((a=((e,t)=>{for(var r in t||(t={}))G.call(t,r)&&V(e,r,t[r]);if(B)for(var r of B(t))U.call(t,r)&&V(e,r,t[r]);return e})({},e),M(a,H({id:"Host"}))))}var a;const n=e.findIndex(e=>"host_hostname"===e.id);return n>=0&&t.splice(n,1),t})(Array.from(r.keys()).map(e=>({id:e,Header:e=>a.createElement(F.A,{value:"last_fetched"===e.column.id?"Last fetched":e.column.id,isSortedDesc:e.column.isSortedDesc}),accessor:t=>t[e],Cell:e=>{var r,n;if("string"!=typeof e.cell.value)return null;if("Host"===e.column.id){const r=e.row.original.host_id;return null===t?a.createElement(a.Fragment,null,"cellProps.cell.value"):a.createElement($.A,{value:e.cell.value,path:s.A.HOST_REPORT_RESULTS(r,t)})}if("last_fetched"===e.column.id)return a.createElement(a.Fragment,null,(0,L.Hu)(null==(r=null==e?void 0:e.cell)?void 0:r.value));const l=null==(n=null==e?void 0:e.cell)?void 0:n.value;return(null==l?void 0:l.length)&&l.length>300?(0,L.sq)(l):a.createElement(a.Fragment,null,l)},Filter:D.A,filterType:"text",disableSortBy:!1,sortType:r.get(e)?"alphanumeric":"caseInsensitive"})))},z=Object.defineProperty,K=Object.getOwnPropertySymbols,X=Object.prototype.hasOwnProperty,Y=Object.prototype.propertyIsEnumerable,J=(e,t,r)=>t in e?z(e,t,{enumerable:!0,configurable:!0,writable:!0,value:r}):e[t]=r,Z=(e,t)=>{for(var r in t||(t={}))X.call(t,r)&&J(e,r,t[r]);if(K)for(var r of K(t))Y.call(t,r)&&J(e,r,t[r]);return e};const ee="query-report",te=e=>e.map(e=>{const t={host_id:e.host_id,host_display_name:e.host_name,last_fetched:e.last_fetched};return Z(Z({},t),e.columns)});var re=({queryReport:e,queryId:t,queryName:r,isClipped:n,canLiveQuery:l})=>{const[o,i]=(0,a.useState)(te((null==e?void 0:e.results)||[])),u=(0,a.useMemo)(()=>{var t;return(null==(t=null==e?void 0:e.results)?void 0:t.length)?W(te(e.results),e.query_id):[]},[e]),c=e=>{e.preventDefault(),N().saveAs((0,x.K4)(o,(0,x.$e)(`${r||"Report"} - Report`),u))},d=(0,a.useCallback)(()=>{const e=o.length;return n?a.createElement(a.Fragment,null,a.createElement(R.A,{tipContent:a.createElement(a.Fragment,null,"Fleet has retained a sample of early results for reference. Reporting is paused until existing data is deleted. ",a.createElement("br",null),a.createElement("br",null),"You can reset this report by updating the report's SQL, or by temporarily enabling the ",a.createElement("b",null,"discard data")," setting and disabling it again.")},(0,k.Y)("results",e))):a.createElement(Q.A,{name:"results",count:e})},[o.length,n]);return a.createElement("div",{className:`${ee}__wrapper`},a.createElement("div",{className:`${ee}__results-table-container`},a.createElement(P.A,{columnConfigs:u,data:te((null==e?void 0:e.results)||[]),emptyComponent:()=>a.createElement(I.A,{className:ee,header:"Nothing to report yet",info:a.createElement(a.Fragment,null,"This report hasn't returned data yet.",l&&a.createElement(a.Fragment,null,a.createElement("br",null),"Expecting to see results? Run a"," ",a.createElement(S.A,{url:s.A.LIVE_REPORT(t),text:"live report"})," ","to troubleshoot."))}),defaultSortHeader:"last_fetched",isLoading:!1,isClientSidePagination:!0,isClientSideFilter:!0,isMultiColumnFilter:!0,showMarkAllPages:!1,isAllPagesSelected:!1,resultsTitle:"results",customControl:()=>a.createElement("div",{className:`${ee}__results-cta`},a.createElement(v.A,{className:`${ee}__export-btn`,onClick:c,variant:"secondary",size:"small",icon:"download",iconPosition:"right"},"Export results")),setExportRows:i,renderCount:d,getRowId:(e,t)=>String(t)})))},ae=r(43924),ne=r(31826),le=r(25579),se=({queryId:e,queryInterval:t,queryUpdatedAt:r,disabledCaching:n,disabledCachingGlobally:l,discardDataEnabled:o,loggingSnapshot:i,canLiveQuery:u,canEditQuery:c})=>{const d=()=>{const e=r?(0,ae.O)(new Date,new Date(r)):0;return(t||0)+60-e},m=(null!=t?t:0)>0&&d()>0,p=(0,ne.k)((0,le.W)(new Date,{seconds:d()}),new Date);if(m&&!n){const e=()=>a.createElement(a.Fragment,null,"Fleet is collecting report results. ",a.createElement("br",null),"Check back in about ",p,".");return a.createElement(I.A,{header:"Collecting results...",info:e()})}const[y,g]=(()=>
1{if(n){const e=()=>l?a.createElement(a.Fragment,null,a.createElement("div",null,a.createElement("b",null,"Store report results")," is globally disabled in organization settings.")):o?a.createElement(a.Fragment,null,a.createElement("div",null,a.createElement("b",null,"Store data")," is disabled.")):i?"Unknown":a.createElement(a.Fragment,null,a.createElement("div",null,a.createElement("b",null,"Differential logging")," is enabled."));return["Nothing to report",a.createElement(a.Fragment,null,"Results from this report are"," ",a.createElement(h.A,{tipContent:e()},"not stored in Fleet"),".")]}return t?["Nothing to report yet",a.createElement(a.Fragment,null,"This report has returned no data so far.",u&&a.createElement(a.Fragment,null,a.createElement("br",null),"Expecting to see results? Run a"," ",a.createElement(S.A,{url:s.A.LIVE_REPORT(e),text:"live report"})," ","to troubleshoot."))]:["Nothing to report",a.createElement(a.Fragment,null,"This report does not collect data on a schedule.",(c||u)&&a.createElement(a.Fragment,null,a.createElement("br",null),c&&a.createElement(a.Fragment,null,"Add an ",a.createElement("strong",null,"interval")),c&&u&&" or ",u&&a.createElement(a.Fragment,null,c?"run":"Run"," a"," ",a.createElement(S.A,{url:s.A.LIVE_REPORT(e),text:"live report"}))," ","to see results."))]})();return a.createElement(I.A,{className:"no-results",header:y,info:g})};const oe="query-details-page";var ie=({router:e,params:{id:t},location:r})=>{var q,N;const x=parseInt(t,10);isNaN(x)&&e.push(s.A.MANAGE_REPORTS);const P=r.query,Q=(null==P?void 0:P.host_id)?parseInt(P.host_id,10):void 0,{currentTeamId:k}=(0,y.Ay)({location:r,router:e,includeAllTeams:!0,includeNoTeam:!1}),R=[{key:null!=(I=null==P?void 0:P.order_key)?I:"host_name",direction:null!=(D=null==P?void 0:P.order_direction)?D:"asc"}];var I,D;const F=(0,l.useErrorHandler)(),{currentUser:L,isGlobalAdmin:$,isGlobalMaintainer:j,isTeamMaintainerOrTeamAdmin:M,isObserverPlus:H,config:B,filteredQueriesPath:G,availableTeams:U,setCurrentTeam:V,isOnGlobalTeam:W,isGlobalTechnician:z,isTeamTechnician:K}=(0,a.useContext)(o.BR),[X,Y]=(0,a.useState)(!1),[J,Z]=(0,a.useState)(!0);(0,a.useEffect)(()=>{B&&Z(B.server_settings.query_reports_disabled)},[B]);const{isLoading:ee,data:te,error:ae}=(0,n.useQuery)(["query",x],()=>i.A.load(x),{enabled:!!x,select:e=>e.query,onError:e=>F(e)});W||ee||!(null==te?void 0:te.team_id)||(null==(q=null==te?void 0:te.team_id)?void 0:q.toString())===r.query.fleet_id||e.push((0,d.M8)(r.pathname,{fleet_id:null==(N=null==te?void 0:te.team_id)?void 0:N.toString()}));const ne=!!(null==te?void 0:te.discard_data),le="snapshot"===(null==te?void 0:te.logging),ie=J||ne||!le,{isLoading:ue,data:ce,error:de}=(0,n.useQuery)(["queryReport",x,k,R],()=>(({id:e,sortBy:t,teamId:r})=>{const a=(e=>{if(void 0===e||0===e.length)return{};const t=e[0];return{order_key:t.key,order_direction:t.direction}})(t),n={order_key:a.order_key,order_direction:a.order_direction};r&&r>0&&(n.fleet_id=r);const l=(0,d.IM)(n),s=`${c.A.QUERY_REPORT(e)}?${l}`;return(0,u.Ay)("GET",s)})({teamId:k,sortBy:R,id:x}),{enabled:!!x,refetchOnWindowFocus:!ie,refetchInterval:e=>{var t;return!ie&&0===(null==(t=null==e?void 0:e.results)?void 0:t.length)&&5e3},onError:e=>F(e)});(0,a.useEffect)(()=>{if(null==te?void 0:te.team_id){const e=null==U?void 0:U.find(e=>e.id===te.team_id);V(e)}},[te,U,V]),(0,a.useEffect)(()=>{(null==te?void 0:te.name)?document.title=`${te.name} | Reports | ${p.DI}`:document.title=`Reports | ${p.DI}`},[r.pathname,null==te?void 0:te.name]);const me=()=>{Y(!X)},pe=ee||ue,ye=ae||de,ge=null==ce?void 0:ce.report_clipped,ve=null==B?void 0:B.server_settings.live_query_disabled,Ee=(null==te?void 0:te.observer_can_run)||H||$||j||M||z||K,fe=Ee&&!ve,he=$||j||M&&(null==te?void 0:te.team_id);return a.createElement(f.A,{className:oe},a.createElement(a.Fragment,null,(()=>{var t,r;return a.createElement(a.Fragment,null,a.createElement("div",{className:`${oe}__header-links`},a.createElement(E.A,{text:Q?"Back to host details":"Back to reports",path:Q?(0,d.M8)(s.A.HOST_DETAILS(Q,k)):G||(0,d.M8)(s.A.MANAGE_REPORTS,{fleet_id:k})})),!pe&&!ye&&a.createElement(a.Fragment,null,a.createElement("div",{className:`${oe}__title-bar`},a.createElement("div",{className:`${oe}__name-description`},a.createElement("h1",{className:`${oe}__query-name`},a.createElement(b.A,{value:null==te?void 0:te.name,fixedPositionStrategy:!0}))),a.createElement("div",{className:`${oe}__action-button-container`},a.createElement(v.A,{className:`${oe}__show-query-btn`,onClick:me,variant:"secondary"},"Show query"),Ee&&a.createElement("div",{className:`button-wrap ${oe}__button-wrap--new-query`},a.createElement(h.A,{tipContent:"Live reports are disabled in organization settings.",position:"top",disableTooltip:!ve,underline:!1,showArrow:!0},a.createElement("div",null,a.createElement(v.A,{className:`${oe}__run`,variant:"secondary",onClick:()=>{x&&e.push((0,d.M8)(s.A.LIVE_REPORT(x),{host_id:Q,fleet_id:k}))}
1,disabled:ve,icon:"run",iconPosition:"right"},"Live report")))),he&&a.createElement(v.A,{onClick:()=>{x&&e.push((0,d.M8)(s.A.EDIT_REPORT(x),{fleet_id:k,host_id:Q}))},className:`${oe}__manage-automations button`},"Edit report"))),a.createElement(O.A,{className:`${oe}__query-description`,content:null==te?void 0:te.description}),a.createElement("div",{className:`${oe}__settings`},a.createElement("div",{className:`${oe}__automations`},a.createElement(h.A,{tipContent:a.createElement(a.Fragment,null,"Report automations let you send data to your log destination on a schedule. When automations are"," ",a.createElement("strong",null,"on"),", data is sent according to a report's interval.")},"Automations:"),a.createElement(_.A,{automationsEnabled:(null==te?void 0:te.automations_enabled)||!1,interval:(null==te?void 0:te.interval)||0})),a.createElement("div",{className:`${oe}__log-destination`},a.createElement("strong",null,"Log destination:")," ",a.createElement(w.A,{logDestination:(null==B?void 0:B.logging.result.plugin)||"",filesystemDestination:null==(t=null==B?void 0:B.logging.result.config)?void 0:t.result_log_file,webhookDestination:null==(r=null==B?void 0:B.logging.result.config)?void 0:r.result_url})))))})(),ge&&a.createElement(C.A,{color:"yellow",cta:a.createElement(S.A,{url:p.FI,text:"Get help",newTab:!0})},a.createElement("div",null,a.createElement("b",null,"Report clipped.")," A sample of this report's results is included below.",!(L&&(0,m.Et)(L)||(0,m.s)(L,null!=k?k:null))&&" You can still use automations to complete this report in your log destination.")),(()=>{var e,t;const r=0===(null!=(t=null==(e=null==ce?void 0:ce.results)?void 0:e.length)?t:0);return pe?a.createElement(g.A,null):ye?a.createElement(A.A,null):r||ne?a.createElement(se,{queryId:x,queryInterval:null==te?void 0:te.interval,queryUpdatedAt:null==te?void 0:te.updated_at,disabledCaching:ie,disabledCachingGlobally:J,discardDataEnabled:ne,loggingSnapshot:le,canLiveQuery:fe,canEditQuery:!!he}):a.createElement(re,{queryReport:ce,queryId:x,queryName:null==te?void 0:te.name,isClipped:ge,canLiveQuery:fe})})(),X&&a.createElement(T.A,{query:null==te?void 0:te.query,onCancel:me})))}},12673:function(e,t,r){r.r(t),r.d(t,{default:function(){return Me}});var a=r(96540),n=r(75942),l=r(24740),s=r(78263),o=r(68774),i=r(83535),u=r(38944),c=r(14332),d=r(65273),m=r(12968),p=r(89937),y=r(98544),g=r(43788),v=r(68612),E=r(12755),f=r(37863),h=r(827),b=r(56118),_=r(90125),A=r(24432),w=r(84945),S=r(38021),C=r(46157),T=r(2543),O=r(81591),q=r(9467),N=r(19984),x=r(64933),P=r(97873),Q=r(98220),k=r(22184),R=r(74953),I=r(25087),D=r(5410),F=r(79973),L=r(26806),$=r(52603),j=r(45584),M=r(45847),H=r(80717),B=r(75947),G=r(59333),U=r(22676),V=r(29448);const W={policy:"Policy",report:"Report"},z=({entity:e,isPremiumTier:t})=>{const r=W[e],n=[{value:"labelsIncludeAny",label:"Include any",helpText:a.createElement(a.Fragment,null,r," will target hosts that ",a.createElement("b",null,"have any")," of these labels:"),disabled:!1}];return t&&n.push({value:"labelsIncludeAll",label:"Include all",helpText:a.createElement(a.Fragment,null,r," will target hosts that ",a.createElement("b",null,"have all")," of these labels:"),disabled:!1}),"policy"===e&&n.push({value:"labelsExcludeAny",label:"Exclude any",helpText:a.createElement(a.Fragment,null,r," will target hosts that ",a.createElement("b",null,"don’t have any")," of these labels:"),disabled:!1}),n};var K=r(98598),X=r(52978),Y=r(99958);const J="discard-data-option";var Z=({queryReportsDisabled:e,selectedLoggingType:t,discardData:r,setDiscardData:n})=>{const[l,s]=(0,a.useState)(!1),o=e&&!l,i="differential"===t||"differential_ignore_removals"===t;return a.createElement("div",{className:J},i&&a.createElement(S.A,null,"The ",a.createElement("b",null,"Store data")," setting is ignored when differential logging is enabled. This report's results will not be saved in Fleet."),a.createElement(D.A,{name:"discardData",onChange:()=>n(!r),value:!r,disabled:o,helpText:a.createElement(a.Fragment,null,o?a.createElement(a.Fragment,null,"This setting is ignored since report results in Fleet have been"," ",a.createElement($.A,{tipContent:a.createElement(a.Fragment,null,"A Fleet administrator can enable report results under",a.createElement("strong",null,"Organization settings > Advanced options > Store report results"),".")},"globally disabled."),a.createElement(R.A,{onClick:e=>{e.preventDefault(),s(!0)},variant:"subdued",size:"small",className:`${J}__edit-anyway`},a.createElement(a.Fragment,null,"Edit anyway",a.createElement(X.A,{name:"chevron-right",color:"ui-fleet-black-75",size:"small"})))):"When disabled, results will not be available in Fleet.")},"Store data"))},ee=Object.defineProperty,te=Object.defineProperties,re=Object.getOwnPropertyDescriptors,ae=Object.getOwnPropertySymbols,ne=Object.prototype.hasOwnProperty,le=Object.prototype.propertyIsEnumerable,se=(e,t,r)=>t in e?ee(e,t,{enumerable:!0,configurable:!0,writable:!0,value:r}
1):e[t]=r,oe=(e,t)=>{for(var r in t||(t={}))ne.call(t,r)&&se(e,r,t[r]);if(ae)for(var r of ae(t))le.call(t,r)&&se(e,r,t[r]);return e},ie=(e,t)=>te(e,re(t));const ue="save-query-modal";var ce=({queryValue:e,apiTeamIdForQuery:t,isLoading:r,saveQuery:l,toggleSaveNewQueryModal:s,backendValidators:i,existingQuery:u,queryReportsDisabled:c,platformSelector:d})=>{var m,y,g,v,E;const{config:f,isPremiumTier:h,currentTeam:b}=(0,a.useContext)(o.BR),[_,A]=(0,a.useState)(""),[w,S]=(0,a.useState)(""),[C,O]=(0,a.useState)(null!=(m=null==u?void 0:u.interval)?m:3600),[q,N]=(0,a.useState)(null!=(y=null==u?void 0:u.min_osquery_version)?y:""),[x,Q]=(0,a.useState)(null!=(g=null==u?void 0:u.logging)?g:"snapshot"),[k,j]=(0,a.useState)(!1),[M,G]=(0,a.useState)(!1),[V,W]=(0,a.useState)("All hosts"),[J,ee]=(0,a.useState)("labelsIncludeAny"),[te,re]=(0,a.useState)({}),[ae,ne]=(0,a.useState)(!1),le=(0,a.useMemo)(()=>z({entity:"report",isPremiumTier:h}),[h]),[se,ce]=(0,a.useState)(i),[de,me]=(0,a.useState)(!1),{data:{labels:pe}={labels:[]},isFetching:ye}=(0,n.useQuery)(["custom_labels"],()=>P.Ay.summary(null==b?void 0:b.id,!0),ie(oe({},p.QL),{enabled:h&&!!b,staleTime:1e4,select:e=>({labels:(0,P.f2)(e.labels)})}));(0,K.A)(()=>{_&&ce({})},[_]),(0,a.useEffect)(()=>{ce(i)},[i]);const ge=d.isAnyPlatformSelected&&("All hosts"===V||Object.entries(te).some(([,e])=>e));return a.createElement(Y.A,{title:"Save report",onExit:s},a.createElement("form",{onSubmit:r=>{r.preventDefault();const a=_.trim(),{valid:n,errors:s}=(e=>{const t={};return e||(t.name="Report name must be present"),{valid:!(0,T.size)(t),errors:t}})(a);ce(oe(oe({},se),s)),A(a);const o=d.getSelectedPlatforms().join(",");if(n){const r=h&&"Custom"===V?Object.entries(te).filter(([,e])=>e).map(([e])=>e):[],n=e=>{if(h)return J===e?r:[]},s=n("labelsIncludeAny"),i=n("labelsIncludeAll");l({name:a,description:w,interval:C,observer_can_run:k,automations_enabled:M,discard_data:ae,platform:o,min_osquery_version:q,logging:x,query:e,fleet_id:t,labels_include_any:s,labels_include_all:i})}},className:ue,autoComplete:"off"},a.createElement(H.A,{name:"name",onChange:e=>A(e),onBlur:()=>{A(_.trim())},value:_,error:se.name,inputClassName:`${ue}__name`,label:"Name",autofocus:!0,inputOptions:{maxLength:p.fQ}}),a.createElement(H.A,{name:"description",onChange:e=>S(e),value:w,inputClassName:`${ue}__description`,label:"Description",type:"textarea",helpText:"What information does your report reveal? (optional)"}),a.createElement(F.A,{searchable:!1,options:p.GH,onChange:e=>{O(e)},placeholder:"Every hour",value:C,label:"Interval",wrapperClassName:`${ue}__form-field form-field--frequency`,helpText:"This is how often your report collects data."}),a.createElement(D.A,{name:"observerCanRun",onChange:j,value:k,wrapperClassName:"observer-can-run-wrapper",helpText:"Users with the Observer role will be able to run this report as a live report."},"Observers can run"),a.createElement(L.A,{onChange:()=>G(!M),value:M,activeText:a.createElement(a.Fragment,null,"Automations on",0===C&&a.createElement($.A,{tipContent:a.createElement(a.Fragment,null,"Automations and reporting will be paused for this report until an interval is set."),position:"right",tipOffset:9,showArrow:!0,underline:!1},a.createElement(X.A,{name:"warning"}))),inactiveText:"Automations off",helpText:a.createElement(a.Fragment,null,"Historical results will ",M?"":"not ","be sent to your log destination:"," ",a.createElement("b",null,a.createElement(B.A,{logDestination:(null==f?void 0:f.logging.result.plugin)||"",filesystemDestination:null==(v=null==f?void 0:f.logging.result.config)?void 0:v.result_log_file,webhookDestination:null==(E=null==f?void 0:f.logging.result.config)?void 0:E.result_url,excludeTooltip:!0})),".")}),d.render(),h&&a.createElement(U.m,{selectedTargetType:V,selectedCustomTarget:J,customTargetOptions:le,onSelectCustomTarget:e=>ee(e),selectedLabels:te,className:`${ue}__target`,onSelectTargetType:W,onSelectLabel:({name:e,value:t})=>{re(ie(oe({},te),{[e]:t}))},labels:pe||[],suppressTitle:!0}),a.createElement(I.A,{isShowing:de,className:"advanced-options-toggle",hideText:"Advanced options",showText:"Advanced options",caretPosition:"after",onClick:()=>{me(!de)}}),de&&a.createElement(a.Fragment,null,a.createElement(F.A,{options:p.IX,onChange:N,placeholder:"Select",value:q,label:"Minimum osquery version",wrapperClassName:`${ue}__form-field ${ue}__form-field--osquer-vers`}),a.createElement(F.A,{options:p.if,onChange:Q,placeholder:"Select",value:x,label:"Logging",wrapperClassName:`${ue}__form-field ${ue}__form-field--logging`}),void 0!==c&&a.createElement(Z,oe({},{queryReportsDisabled:c,selectedLoggingType:x,discardData:ae,setDiscardData:ne,breakHelpText:!0}))),a.createElement("div",{className:"modal-cta-wrap"},a.createElement(R.A,{type:"submit",className:"save-query-loading",isLoading:r||ye,disabled:!ge},"Save"),a.createElement(R.A,{onClick:s,variant:"secondary"},"Cancel"))))},de=({isUpdating:e,onSaveChanges:t,onClose:r,showChangedSQLCopy:n=!1})=>{const l=n?"Changing this report's SQL will delete its previous results, since the existing results do not reflect the updated SQL.":"The changes you are making to this report will delete its previous results.";return a.createElement(Y.A,{title:"Save changes?",onExit:r},a.createElement("form",{className:"save-changes-modal__form"},a.createElement("p",null,l),a.createElement("p",null,"You cannot undo this action."),a.createElement("div",{className:"modal-cta-wrap"},a.createElement(R.A,{type:"button",onClick:t,className:"save-loading",isLoading:e},"Save"),a.createElement(R.A,{onClick:r,variant:"secondary"},"Cancel"))))},me=r(62131),pe=r(82196),ye=Object.defineProperty,ge=Object.defineProperties,ve=Object.getOwnPropertyDescriptors,Ee=Object.getOwnPropertySymbols,fe=Object.prototype.hasOwnProperty,he=Object.prototype.propertyIsEnumerable,be=(e,t,r)=>t in e?ye(e,t,{enumerable:!0,configurable:!0,writable:!0,value:r}):e[t]=r,_e=(e,t)=>
1{for(var r in t||(t={}))fe.call(t,r)&&be(e,r,t[r]);if(Ee)for(var r of Ee(t))he.call(t,r)&&be(e,r,t[r]);return e},Ae=(e,t)=>ge(e,ve(t));const we="save-as-new-query-modal",Se=e=>{const t={};return e.queryName&&""!==e.queryName.trim()||(t.queryName="Name must be present"),t};var Ce=({router:e,location:t,initialQueryData:r,hostId:n,onExit:l})=>{const{isPremiumTier:i}=(0,a.useContext)(o.BR),[c,d]=(0,a.useState)({queryName:`Copy of ${r.name}`,team:{id:r.fleet_id,name:void 0}}),[y,v]=(0,a.useState)(!1),[f,h]=(0,a.useState)({}),{userTeams:b}=(0,u.xs)({router:e,location:t,includeAllTeams:!0,includeNoTeam:!1,permittedAccessByTeamRole:{admin:!0,maintainer:!0,observer:!1,observer_plus:!1,technician:!1}}),_=(0,a.useCallback)(({name:e,value:t})=>{const r=Ae(_e({},c),{[e]:t});d(r);const a=Se(r),n={};Object.keys(f).forEach(e=>{e in a&&(n[e]=a[e])}),h(n)},[c,f]),A=(0,a.useCallback)(e=>{const t=null==b?void 0:b.find(t=>t.id===e);d(r=>Ae(_e({},r),{team:{id:e,name:t?t.name:void 0}}))},[b]);return a.createElement(Y.A,{title:"Save as new",onExit:l},a.createElement("form",{onSubmit:t=>{return a=function*(){t.preventDefault();const a=Se(c);if(Object.keys(a).length>0)return void h(a);v(!0);const{queryName:l,team:{id:o,name:i}}=c,u=Ae(_e({},r),{name:l,fleet_id:o===me.jc?me.s_:o});try{const{query:t}=yield g.A.create(u);v(!1),C.me.success(`Successfully added report ${t.name}.`),e.push((0,m.M8)(s.A.REPORT_DETAILS(t.id),{fleet_id:t.team_id,host_id:n}))}catch(e){let t="Could not create report. Please try again.";const r=(0,E.F3)(e);if(r.includes("already exists")){let e;e=o!==me.jc?i?`the ${i} fleet`:"this fleet":"all fleets",t=`A report called "${l}" already exists for ${e}.`}else r.includes(p.ie)&&(t=p.uV);v(!1),C.me.error(t,{response:e})}},new Promise((e,t)=>{var r=e=>{try{l(a.next(e))}catch(e){t(e)}},n=e=>{try{l(a.throw(e))}catch(e){t(e)}},l=t=>t.done?e(t.value):Promise.resolve(t.value).then(r,n);l((a=a.apply(null,null)).next())});var a},className:we},a.createElement(H.A,{name:"queryName",onChange:_,onBlur:()=>{h(Se(c))},value:c.queryName,error:f.queryName,inputClassName:`${we}__name`,label:"Name",autofocus:!0,parseTarget:!0}),i&&((null==b?void 0:b.length)||0)>1&&a.createElement("div",{className:"form-field"},a.createElement("div",{className:"form-field__label"},"Fleet"),a.createElement(pe.A,{asFormField:!0,currentUserFleets:b||[],selectedFleetId:c.team.id,onChange:A})),a.createElement("div",{className:"modal-cta-wrap"},a.createElement(R.A,{type:"submit",className:"save-as-new-query",isLoading:y,disabled:Object.keys(f).length>0||y},"Save"),a.createElement(R.A,{onClick:l,variant:"secondary"},"Cancel"))))},Te=Object.defineProperty,Oe=Object.defineProperties,qe=Object.getOwnPropertyDescriptors,Ne=Object.getOwnPropertySymbols,xe=Object.prototype.hasOwnProperty,Pe=Object.prototype.propertyIsEnumerable,Qe=(e,t,r)=>t in e?Te(e,t,{enumerable:!0,configurable:!0,writable:!0,value:r}):e[t]=r,ke=(e,t)=>{for(var r in t||(t={}))xe.call(t,r)&&Qe(e,r,t[r]);if(Ne)for(var r of Ne(t))Pe.call(t,r)&&Qe(e,r,t[r]);return e},Re=(e,t)=>Oe(e,qe(t));const Ie="edit-query-form",De=e=>{const t={},{error:r,valid:a}=(0,k.B4)(e);return a||(t.query=null!=r?r:"Invalid query"),{valid:!(0,T.size)(t),errors:t}},Fe=(e,t,r,a,n)=>{if(e)return"Custom"!==t||r!==n?[]:Object.entries(a).filter(([,e])=>e).map(([e])=>e)};var Le=({router:e,location:t,queryIdForEdit:r,apiTeamIdForQuery:l,currentTeamId:u,currentTeamName:c,showOpenSchemaActionText:d,storedQuery:y,isStoredQueryLoading:g,isQuerySaving:v,isQueryUpdating:E,onSubmitNewQuery:f,onOsqueryTableSelect:h,onUpdate:b,onOpenSchemaSidebar:_,renderLiveQueryWarning:A,backendValidators:w,hostId:S,queryReportsDisabled:C,showConfirmSaveChangesModal:T,setShowConfirmSaveChangesModal:W})=>{const{lastEditedQueryId:K,lastEditedQueryName:X,lastEditedQueryDescription:Y,lastEditedQueryBody:J,lastEditedQueryObserverCanRun:ee,lastEditedQueryFrequency:te,lastEditedQueryAutomationsEnabled:re,lastEditedQueryPlatforms:ae,lastEditedQueryMinOsqueryVersion:ne,lastEditedQueryLoggingType:le,lastEditedQueryDiscardData:se,setLastEditedQueryName:oe,setLastEditedQueryDescription:ie,setLastEditedQueryBody:ue,setLastEditedQueryObserverCanRun:me,setLastEditedQueryFrequency:pe,setLastEditedQueryAutomationsEnabled:ye,setLastEditedQueryMinOsqueryVersion:ge,setLastEditedQueryLoggingType:ve,setLastEditedQueryDiscardData:Ee,setEditingExistingQuery:fe}=(0,a.useContext)(i.c),{isOnlyObserver:he,isGlobalObserver:be,isTeamMaintainerOrTeamAdmin:_e,isAnyTeamMaintainerOrTeamAdmin:Ae,isGlobalAdmin:we,isGlobalMaintainer:Se,isObserverPlus:Te,isAnyTeamObserverPlus:Oe,config:qe,isPremiumTier:Ne,isFreeTier:xe}=(0,a.useContext)(o.BR),Pe=!!r,Qe=null==qe?void 0:qe.server_settings.live_query_disabled,Le=null==qe?void 0:qe.gitops.gitops_mode_enabled,[$e,je]=(0,a.useState)({}),[Me,He]=(0,a.useState)(!1),[Be,Ge]=(0,a.useState)(!1),[Ue,Ve]=(0,a.useState)(Te||Oe||!1),[We,ze]=(0,a.useState)(!1),[Ke,Xe]=(0,a.useState)(!1),[Ye,Je]=(0,a.useState)(""),[Ze,et]=(0,a.useState)("labelsIncludeAny"),[tt,rt]=(0,a.useState)({}),at=(0,a.useMemo)(()=>z({entity:"report",isPremiumTier:Ne}),[Ne]),nt=(0,x.A)(ae,Ie,!1,void 0,void 0),lt={name:X.trim(),description:Y,query:J,platform:nt.getSelectedPlatforms().join(","),observer_can_run:ee,interval:te,automations_enabled:re,min_osquery_version:ne,logging:le,discard_data:se,labels_include_any:Fe(Ne,Ye,Ze,tt,"labelsIncludeAny"),labels_include_all:Fe(Ne,Ye,Ze,tt,"labelsIncludeAll")};(0,a.useEffect)(()=>{var e,t;const r=null!=(e=null==y?void 0:y.labels_include_any)?e:[],a=null!=(t=null==y?void 0:y.labels_include_all)?t:[],n=Ne&&(r.length||a.length);
1Je(n?"Custom":"All hosts"),et(a.length?"labelsIncludeAll":"labelsIncludeAny");const l=a.length?a:r;rt(l.reduce((e,t)=>Re(ke({},e),{[t.name]:!0}),{})||{})},[y,Ne]);const{data:{labels:st}={labels:[]},isFetching:ot}=(0,n.useQuery)(["custom_labels"],()=>P.Ay.summary(u,!0),Re(ke({},p.QL),{enabled:Ne,staleTime:1e4,select:e=>({labels:(0,P.f2)(e.labels)})})),it=(0,N.A)(),{setCompatiblePlatforms:ut}=it,ct=(0,O.YQ)(e=>{const{errors:t}=De(e);je(ke({},t))},500);r=r||0,(0,a.useEffect)(()=>{g||r!==K||ut(J),ct(J)},[J,K,g]);const dt=()=>{Ge(!Be)},mt=()=>{W(!T)},pt=()=>{He(!Me)},yt=e=>{e.setOptions({enableMultiselect:!1}),e.on("linkClick",e=>{const{type:t,value:r}=e.token;return"osquery-token"===t&&h(r)})},gt=e=>{Xe(!0),ue(e)},vt=(0,a.useMemo)(()=>(0,q.fj)(p.GH,te,e=>`Every ${(0,q.xR)(e)}`),[]),Et=({name:e,value:t})=>{rt(Re(ke({},tt),{[e]:t}))},ft=(0,a.useCallback)(e=>{pe(e)},[pe]),ht=()=>{ze(!We)},bt=(0,a.useCallback)(e=>{ge(e)},[ge]),_t=(0,a.useCallback)(e=>{ve(e)},[ve]),At=()=>e=>{if(e.preventDefault(),Pe&&!X)return je(Re(ke({},$e),{name:"Report name must be present"}));const{valid:t,errors:r}=De(J);(t||!t&&r.query!==k.Ni)&&(Pe?b(lt):(nt.setSelectedPlatforms(it.getCompatiblePlatforms()),Ge(!0)))},wt=()=>d?a.createElement(R.A,{variant:"subdued",onClick:_,icon:"info",iconPosition:"right"},"Schema"):null,St=()=>g||r!==K?null:it.render(),Ct=()=>Pe?a.createElement(H.A,{name:"query-name",label:"Name",placeholder:"Add name",value:X,error:$e&&$e.name,onChange:e=>oe(e),onBlur:()=>{oe(X.trim())},disabled:Le,inputOptions:{maxLength:p.fQ}}):a.createElement("h1",{className:`${Ie}__query-name no-hover`},"New report"),Tt=we||Se||_e,Ot=()=>xe||!c?null:Pe?Tt?a.createElement("p",null,"Editing report for ",a.createElement("strong",null,c),"."):a.createElement("p",null,"Viewing report for ",a.createElement("strong",null,c),"."):Tt?a.createElement("p",null,"Creating a new report for ",a.createElement("strong",null,c),"."):a.createElement("p",null,"Running a new report for ",a.createElement("strong",null,c),"."),qt=a.createElement("form",{className:`${Ie}`},a.createElement("h1",{className:`${Ie}__query-name no-hover`},X),Ot(),a.createElement(V.A,{className:`${Ie}__query-description no-hover`,content:Y}),(!Te&&be||!Oe)&&a.createElement(I.A,{isShowing:Ue,className:Ie,hideText:"Hide SQL",showText:"Show SQL",onClick:()=>Ve(!Ue)}),Ue&&a.createElement(Q.A,{value:J,name:"query editor",label:"Query",wrapperClassName:`${Ie}__text-editor-wrapper`,readOnly:!Te&&!Oe||Pe,labelActionComponent:Te&&wt(),wrapEnabled:!0,"data-testid":"ace-editor"}),St(),A(),(ee||Te||Oe)&&a.createElement("div",{className:`button-wrap ${Ie}__button-wrap--new-query`},a.createElement($.A,{className:"live-query-button-tooltip",tipContent:"Live reports are disabled in organization settings",disableTooltip:!Qe,position:"top",showArrow:!0,tipOffset:8,underline:!1},a.createElement(R.A,{onClick:()=>{e.push((0,m.M8)(s.A.LIVE_REPORT(r),{host_id:S,fleet_id:l}))},disabled:Qe,icon:"run",iconPosition:"right"},"Live report")))),Nt=y&&!y.discard_data&&!["differential","differential_ignore_removals"].includes(y.logging),xt=y&&J!==y.query,Pt=["differential","differential_ignore_removals"].includes(le),Qt=e=>null==e?void 0:e.replace(/\s/g,"").split(",").sort().toString(),kt=y&&Qt(ae)!==Qt(null==y?void 0:y.platform),Rt=y&&ne!==y.min_osquery_version,It=y&&se&&!y.discard_data,Dt=Nt&&(xt||Pt||It||kt||Rt),Ft=xt&&!Pt&&!It;return g||ot?a.createElement(j.A,null):be&&!Te||Te&&0!==r||he&&!Oe&&!be||Oe&&!Ae&&0!==r?qt:(()=>{var n,o;const i=""===X&&!!K||!!$e.query&&$e.query===k.Ni||Pe&&!nt.isAnyPlatformSelected||"Custom"===Ye&&!Object.entries(tt).some(([,e])=>e);return a.createElement(a.Fragment,null,a.createElement("form",{className:Ie,autoComplete:"off"},Pe?a.createElement("div",{className:`${Ie}__page-header`},a.createElement("h1",{className:`${Ie}__page-title`},"Edit report"),Ot()):a.createElement("div",{className:`${Ie}__query-name-fleet-name`},Ct(),Ot()),Pe&&Ct(),Pe?a.createElement(H.A,{name:"query-description",label:"Description",placeholder:"Add description",value:Y,type:"textarea",helpText:"What information does your report reveal? (optional)",onChange:e=>ie(e),disabled:Le}):null,Pe&&a.createElement("div",{className:Le?"disabled-by-gitops-mode form":"form"},a.createElement(F.A,{searchable:!1,options:vt,onChange:ft,placeholder:"Every day",value:te,label:"Interval",wrapperClassName:`${Ie}__form-field form-field--frequency`,helpText:"This is how often your report collects data."}),a.createElement(L.A,{onChange:()=>ye(!re),value:re,activeText:a.createElement(a.Fragment,null,"Automations on",0===te&&a.createElement($.A,{tipContent:a.createElement(a.Fragment,null,"Automations and reporting will be paused for this report until an interval is set."),position:"right",tipOffset:9,showArrow:!0,underline:!1},a.createElement(M.A,{name:"warning"}))),inactiveText:"Automations off",helpText:a.createElement(a.Fragment,null,"Historical results will",re?" ":" not ","be sent to your log destination:"," ",a.createElement("b",null,a.createElement(B.A,{logDestination:(null==qe?void 0:qe.logging.result.plugin)||"",filesystemDestination:null==(n=null==qe?void 0:qe.logging.result.config)?void 0:n.result_log_file,webhookDestination:null==(o=null==qe?void 0:qe.logging.result.config)?void 0:o.result_url,excludeTooltip:!0})),".")}),a.createElement(D.A,{value:ee,onChange:e=>me(e),helpText:"Users with the observer role will be able to run this report on hosts where they have access."},"Observers can run"),Pe&&nt.render(),Ne&&a.createElement(U.m,{selectedTargetType:Ye,selectedCustomTarget:Ze,customTargetOptions:at,onSelectCustomTarget:e=>et(e),selectedLabels:tt,className:`${Ie}__target`,onSelectTargetType:Je,onSelectLabel:Et,labels:st||[],disableOptions:Le,suppressTitle:!0})),a.createElement(Q.A,{value:J,error:$e.query,label:"Query",labelActionComponent:wt(),name:"query editor",onLoad:yt,wrapperClassName:`${Ie}__text-editor-wrapper form-field`,onChange:gt,handleSubmit:Dt?mt:At,wrapEnabled:!0,focus:!Pe}),St(),Pe&&a.createElement(a.Fragment,null,a.createElement(I.A,{isShowing:We,className:"advanced-options-toggle",hideText:"Advanced options",showText:"Advanced options",caretPosition:"after",onClick:ht}),We&&a.createElement(a.Fragment,null,a.createElement(F.A,{options:p.IX,onChange:bt,placeholder:"Select",value:ne,label:"Minimum osquery version",wrapperClassName:`${Ie}__form-field ${Ie}__form-field--osquer-vers`}),a.createElement(F.A,{options:p.if,onChange:_t,placeholder:"Select",value:le,label:"Logging",wrapperClassName:`${Ie}__form-field ${Ie}__form-field--logging`}),void 0!==C&&a.createElement(Z,{selectedLoggingType:le,discardData:se,setDiscardData:Ee,queryReportsDisabled:C}))),A(),a.createElement("div",{className:`button-wrap ${Ie}__button-wrap--new-query`},Tt&&a.createElement(a.Fragment,null,Pe&&a.createElement(G.A,{renderChildren:e=>a.createElement(R.A,{variant:"secondary",onClick:pt,disabled:i||e},"Save as new")}),a.createElement("div",{className:`${Ie}__button-wrap--save-query-button`},a.createElement(G.A,{tipOffset:8,renderChildren:e=>a.createElement(R.A,{className:"save-loading",onClick:Dt?mt:At(),disabled:i||e,isLoading:E},"Save")}))),a.createElement($.A,{className:"live-query-button-tooltip",tipContent:"Live reports are disabled in organization settings",disableTooltip:!Qe,position:"top",showArrow:!0,tipOffset:8,underline:!1},a.createElement(R.A,{className:`${Ie}__run`,variant:"secondary",onClick:()=>{Ke&&fe(!0),e.push((0,m.M8)(s.A.LIVE_REPORT(r),{host_id:S,fleet_id:u}))},disabled:Qe,icon:"run",iconPosition:"right"},"Live report")))),Be&&a.createElement(ce,{queryValue:J,apiTeamIdForQuery:l,saveQuery:f,toggleSaveNewQueryModal:dt,backendValidators:w,isLoading:v,queryReportsDisabled:C,platformSelector:nt}),Me&&a.createElement(Ce,{router:e,location:t,initialQueryData:Re(ke({},lt),{fleet_id:l}),hostId:S,onExit:pt}),T&&a.createElement(de,{onSaveChanges:At(),isUpdating:E,onClose:mt,showChangedSQLCopy:Ft}))})()},$e=(e,t,r)=>new Promise((a,n)=>{var l=e=>{try{o(r.next(e))}catch(e){n(e)}},s=e=>{try{o(r.throw(e))}catch(e){n(e)}},o=e=>e.done?a(e.value):Promise.resolve(e.value).then(l,s);o((r=r.apply(e,t)).next())});const je="edit-query-page";var Me=({router:e,params:{id:t},location:r})=>{var T,O;const q=t?parseInt(t,10):null,N=r.query.host_id?parseInt(r.query.host_id,10):void 0,{currentTeamName:x,teamIdForApi:P,currentTeamId:Q}=(0,u.Ay)({location:r,router:e,includeAllTeams:!0,includeNoTeam:!1}),k=(0,l.useErrorHandler)(),R=(0,n.useQueryClient)(),{isGlobalAdmin:I,isGlobalMaintainer:D,isTeamMaintainerOrTeamAdmin:F,isAnyTeamMaintainerOrTeamAdmin:L,isObserverPlus:$,isAnyTeamObserverPlus:j,config:M,filteredQueriesPath:H,isOnGlobalTeam:B}=(0,a.useContext)(o.BR),{editingExistingQuery:G,selectedOsqueryTable:U,setSelectedOsqueryTable:V,lastEditedQueryName:W,lastEditedQueryDescription:z,lastEditedQueryBody:K,lastEditedQueryObserverCanRun:X,lastEditedQueryFrequency:Y,lastEditedQueryAutomationsEnabled:J,lastEditedQueryPlatforms:Z,lastEditedQueryLoggingType:ee,lastEditedQueryMinOsqueryVersion:te,lastEditedQueryDiscardData:re,setLastEditedQueryId:ae,setLastEditedQueryName:ne,setLastEditedQueryDescription:le,setLastEditedQueryBody:se,setLastEditedQueryObserverCanRun:oe,setLastEditedQueryFrequency:ie,setLastEditedQueryAutomationsEnabled:ue,setLastEditedQueryLoggingType:ce,setLastEditedQueryMinOsqueryVersion:de,setLastEditedQueryPlatforms:me,setLastEditedQueryDiscardData:pe}=(0,a.useContext)(i.c),{setConfig:ye,availableTeams:ge,setCurrentTeam:ve}=(0,a.useContext)(o.BR),[Ee,fe]=(0,a.useState)(!0),[he,be]=(0,a.useState)(!0),[_e,Ae]=(0,a.useState)(!1),[we,Se]=(0,a.useState)(!1),{data:Ce}=(0,n.useQuery)(["config"],()=>y.A.loadAll(),{select:e=>e,onSuccess:e=>{ye(e)}}),{isLoading:Te,data:Oe,refetch:qe}=(0,n.useQuery)(["query",q],()=>g.A.load(q),{enabled:!!q&&!G,refetchOnWindowFocus:!1,select:e=>e.query,onSuccess:e=>{ae(e.id),ne(e.name),le(e.description),se(e.query),oe(e.observer_can_run),ie(e.interval),ue(e.automations_enabled),me(e.platform),ce(e.logging),de(e.min_osquery_version),pe(e.discard_data)},onError:e=>k(e)});B||Te||!(null==Oe?void 0:Oe.team_id)||(null==(T=null==Oe?void 0:Oe.team_id)?void 0:T.toString())===r.query.fleet_id||e.push((0,m.M8)(r.pathname,{fleet_id:null==(O=null==Oe?void 0:Oe.team_id)?void 0:O.toString(),host_id:N})),(0,a.useEffect)(()=>
1{if(null==Oe?void 0:Oe.team_id){const e=null==ge?void 0:ge.find(e=>e.id===Oe.team_id);ve(e)}},[Oe]),(0,a.useEffect)(()=>{const t=I||D||F&&(null==Oe?void 0:Oe.team_id);!Te&&q&&q>0&&!t&&e.push((0,m.M8)(s.A.REPORT_DETAILS(q),{host_id:r.query.host_id,fleet_id:r.query.fleet_id}))},[q,F,Te]),(0,a.useEffect)(()=>{v.A.live_query().catch(()=>{fe(!1)}),q||(ae(p.Xl.id),ne(p.Xl.name),le(p.Xl.description),oe(p.Xl.observer_can_run),ie(p.Xl.interval),ue(p.Xl.automations_enabled),ce(p.Xl.logging),de(p.Xl.min_osquery_version),me(p.Xl.platform),pe(p.Xl.discard_data))},[q]);const[Ne,xe]=(0,a.useState)(!1),[Pe,Qe]=(0,a.useState)(!1),[ke,Re]=(0,a.useState)({});(0,a.useEffect)(()=>{const e=(null==Oe?void 0:Oe.name)?`Editing ${Oe.name} | `:"";document.title=`${e}Reports | ${p.DI}`},[r.pathname,null==Oe?void 0:Oe.name]),(0,a.useEffect)(()=>{Ae(!he)},[he]);const Ie=(0,c.A)(t=>$e(null,null,function*(){xe(!0);try{const{query:r}=yield g.A.create(t);R.invalidateQueries({queryKey:[{scope:"queries"}]}),C.me.success("Report created."),e.push((0,m.M8)(s.A.REPORT_DETAILS(r.id),{fleet_id:r.team_id,host_id:N})),Re({})}catch(e){(0,E.F3)(e).includes("already exists")?Re({name:`A report with that name already exists for ${x&&0!==P?`the ${x} fleet`:"all fleets"}.`}):(C.me.error("Something went wrong creating your report. Please try again.",{response:e}),Re({}))}finally{xe(!1)}})),De=e=>{V(e)},Fe=he&&(I||D||L||$||j);return a.createElement(b.A,null,a.createElement(a.Fragment,null,a.createElement(h.A,{className:je},a.createElement(a.Fragment,null,a.createElement("div",{className:`${je}__header-links`},a.createElement(w.A,{text:q?"Back to report":N?"Back to host details":"Back to reports",path:q?(0,m.M8)(s.A.REPORT_DETAILS(q),{fleet_id:Q,host_id:N}):N?(0,m.M8)(s.A.HOST_DETAILS(N,Q)):H||(0,m.M8)(s.A.MANAGE_REPORTS,{fleet_id:Q})})),a.createElement(Le,{router:e,location:r,onSubmitNewQuery:Ie,onOsqueryTableSelect:De,onUpdate:t=>$e(null,null,function*(){if(!q)return!1;Qe(!0);const a=(0,d.A)(t,{lastEditedQueryName:W,lastEditedQueryDescription:z,lastEditedQueryBody:K,lastEditedQueryObserverCanRun:X,lastEditedQueryFrequency:Y,lastEditedQueryAutomationsEnabled:J,lastEditedQueryPlatforms:Z,lastEditedQueryLoggingType:ee,lastEditedQueryMinOsqueryVersion:te,lastEditedQueryDiscardData:re});try{yield g.A.update(q,a),R.invalidateQueries({queryKey:[{scope:"queries"}]}),C.me.success("Report updated."),e.push((0,m.M8)(s.A.REPORT_DETAILS(q),{host_id:r.query.host_id,fleet_id:r.query.fleet_id}))}catch(e){console.error(e);const t=(0,E.F3)(e);t.includes("Duplicate")?C.me.error("A report with this name already exists.",{response:e}):t.includes(p.ie)?C.me.error(p.uV,{response:e}):C.me.error("Something went wrong updating your report. Please try again.",{response:e})}return Qe(!1),Se(!1),!1}),storedQuery:Oe,queryIdForEdit:q,apiTeamIdForQuery:P,currentTeamId:Q,currentTeamName:x,isStoredQueryLoading:Te,showOpenSchemaActionText:_e,onOpenSchemaSidebar:()=>{be(!0)},renderLiveQueryWarning:()=>Ee||(null==M?void 0:M.server_settings.live_query_disabled)?null:a.createElement(S.A,{color:"yellow"},"Fleet is unable to run a live report. Refresh the page or log in again. If this keeps happening please"," ",a.createElement(A.A,{url:"https://github.com/fleetdm/fleet/issues/new/choose",text:"file an issue",newTab:!0,variant:"banner-link"})),backendValidators:ke,isQuerySaving:Ne,isQueryUpdating:Pe,hostId:N,queryReportsDisabled:null==Ce?void 0:Ce.server_settings.query_reports_disabled,showConfirmSaveChangesModal:we,setShowConfirmSaveChangesModal:Se}))),Fe&&a.createElement(_.A,null,a.createElement(f.A,{onOsqueryTableSelect:De,selectedOsqueryTable:U,onClose:()=>{be(!1)}}))))}},81952:function(e,t,r){r.r(t),r.d(t,{default:function(){return he}});var a=r(96540),n=r(75942),l=r(24740),s=r(78263),o=r(38944),i=r(68774),u=r(83535),c=r(89937),d=r(12968),m=r(43788),p=r(42235),y=r(827),g=r(6514),v=r(10162),E=r.n(v),f=r(46157),h=r(9467),b=r(77803),_=r(14332),A=r(47936),w=r(53806),S=r(32485),C=r.n(S),T=r(91936),O=r.n(T),q=r(81591),N=r(37706),x=r(74953),P=r(34724),Q=r(46692),k=r(15570),R=r(37738),I=r(67310),D=r(5534),F=r(499
115),L=r(2367),$=r(38021),j=r(24432),M=r(19581),H=r(72828),B=r(24228),G=Object.defineProperty,U=Object.defineProperties,V=Object.getOwnPropertyDescriptors,W=Object.getOwnPropertySymbols,z=Object.prototype.hasOwnProperty,K=Object.prototype.propertyIsEnumerable,X=(e,t,r)=>t in e?G(e,t,{enumerable:!0,configurable:!0,writable:!0,value:r}):e[t]=r;var Y=e=>{const t=(0,h.cv)(e);t.delete("host_id");return(e=>{const t=[...e],r=e.findIndex(e=>"host_display_name"===e.id);if(r>=0){const[e]=t.splice(r,1);t.unshift((a=((e,t)=>{for(var r in t||(t={}))z.call(t,r)&&X(e,r,t[r]);if(W)for(var r of W(t))K.call(t,r)&&X(e,r,t[r]);return e})({},e),U(a,V({id:"Host"}))))}var a;const n=e.findIndex(e=>"host_hostname"===e.id);return n>=0&&t.splice(n,1),t})(Array.from(t.keys()).map(e=>({id:e,Header:e=>a.createElement(H.A,{value:e.column.id,isSortedDesc:e.column.isSortedDesc}),accessor:t=>t[e],Cell:e=>{var t,r,n;if("Host"===(null==(r=null==(t=null==e?void 0:e.cell)?void 0:t.column)?void 0:r.id)){const t=e.row.original.host_id;return a.createElement(B.A,{value:e.cell.value,path:s.A.HOST_DETAILS(t)})}const l=null==(n=null==e?void 0:e.cell)?void 0:n.value;return(null==l?void 0:l.length)&&l.length>300?(0,h.sq)(l):null!=l?l:null},Filter:M.A,disableSortBy:!1,sortType:t.get(e)?"alphanumeric":"caseInsensitive"})))};const J="query-results",Z="New Report";var ee=({campaign:e,isQueryFinished:t,isQueryClipped:r,queryName:n,onRunQuery:l,onStopQuery:s,setSelectedTargets:o,goToQueryEditor:i,targetsTotalCount:d})=>{const{lastEditedQueryBody:m}=(0,a.useContext)(u.c),{uiHostCounts:p,serverHostCounts:y,queryResults:g,errors:v}=e||{},[E,f]=(0,a.useState)(0),[h,b]=(0,a.useState)(!1),[_,A]=(0,a.useState)([]),[S,T]=(0,a.useState)([]),[M,H]=(0,a.useState)([]),[B,G]=(0,a.useState)([]),[U,V]=(0,a.useState)(g),W=(0,a.useCallback)(()=>{V([]),l()},[l]),z=(0,q.YQ)(V,1e3,{maxWait:2e3});(0,a.useEffect)(()=>{z(g)},[g,z]),(0,a.useEffect)(()=>{if(g&&g.length>0){const e=Y(g);e!==M&&H(e)}},[g,m]),(0,a.useEffect)(()=>{if(0===(null==B?void 0:B.length)&&(null==v?void 0:v.length)&&(G(Y(v)),B&&B.length>0)){const e=Y(v);e!==M&&G(e)}},[v]);const K=e=>{e.preventDefault(),O().saveAs((0,N.K4)(_,(0,N.$e)(`${n||Z} - Results`),M))},X=e=>{e.preventDefault(),O().saveAs((0,N.K4)(S,(0,N.$e)(`${n||Z} - Errors`),B))},ee=()=>{b(!h)},te=()=>{const e=1===d?"host is":"hosts are",t=(null==v?void 0:v.length)?a.createElement(a.Fragment,null," ","or review the ",a.createElement("strong",null,"Errors")," tab for details"):null;return a.createElement(L.A,{header:"No results returned",info:a.createElement(a.Fragment,null,"Check whether the ",e," online",t,".")})},re=(0,a.useCallback)(e=>{const t="results"===e?_.length:S.length;return a.createElement(Q.A,{name:e,count:t})},[_.length,S.length]),ae=(e,t)=>a.createElement("div",{className:`${J}__results-table-container`},a.createElement(P.A,{defaultSortHeader:"host_display_name",columnConfigs:"results"===t?M:B,data:e||[],emptyComponent:te,isLoading:!1,isClientSidePagination:!0,isClientSideFilter:!0,isMultiColumnFilter:!0,showMarkAllPages:!1,isAllPagesSelected:!1,resultsTitle:t,customControl:()=>(e=>a.createElement("div",{className:`${J}__results-cta`},a.createElement(x.A,{className:`${J}__show-query-btn`,onClick:ee,variant:"secondary",icon:"eye",iconPosition:"right"},"Show query"),a.createElement(x.A,{className:`${J}__export-btn`,onClick:"errors"===e?X:K,variant:"secondary",icon:"download",iconPosition:"right"},"Export ",e)))(t),setExportRows:"results"===t?A:T,renderCount:()=>re(t),getRowId:(e,t)=>String(t)})),ne=C()("react-tabs__tab","no-count",{"errors-empty":!v||0===(null==v?void 0:v.length)});return a.createElement("div",{className:`${J} notranslate`},a.createElement(D.A,{numHostsTargeted:d,numHostsResponded:p.total,numHostsRespondedResults:y.countOfHostsWithResults,numHostsRespondedNoErrorsAndNoResults:y.countOfHostsWithNoResults,numHostsRespondedErrors:p.failed,isFinished:t,onClickClose:()=>{o([]),i()},onClickRunAgain:W,onClickStop:s}),r&&a.createElement($.A,{color:"yellow",cta:a.createElement(j.A,{url:c.FI,text:"Get help",newTab:!0})},a.createElement("div",null,a.createElement("b",null,"Results clipped.")," A sample of this report's results and errors is included below. Please target fewer hosts at once to build a full set of results.")),a.createElement(k.A,null,a.createElement(w.tU,{selectedIndex:E,onSelect:e=>f(e)},a.createElement(w.wb,null,a.createElement(w.oz,{className:ne},"Results"),a.createElement(w.oz,{disabled:!(null==v?void 0:v.length)},a.createElement(R.A,{count:null==v?void 0:v.length,countVariant:"alert"},"Errors"))),a.createElement(w.Kp,null,(()=>{const e=!(t||(null==g?void 0:g.length)&&null!==M),r=t&&!(null==g?void 0:g.length);return e?a.createElement(F.A,null):r?te():ae(U,"results")})()),a.createElement(w.Kp,null,ae(v,"errors")))),h&&a.createElement(I.A,{query:m,onCancel:ee}))},te=Object.defineProperty,re=Object.defineProperties,ae=Object.getOwnPropertyDescriptors,ne=Object.getOwnPropertySymbols,le=Object.prototype.hasOwnProperty,se=Object.prototype.propertyIsEnumerable,oe=(e,t,r)=>t in e?te(e,t,{enumerable:!0,configurable:!0,writable:!0,value:r}):e[t]=r,ie=(e,t)=>{for(var r in t||(t={}))le.call(t,r)&&oe(e,r,t[r]);if(ne)for(var r of ne(t))se.call(t,r)&&oe(e,r,t[r]);return e},ue=(e,t)=>
1re(e,ae(t));const ce={results:0,errors:0};var de=({storedQuery:e,selectedTargets:t,queryId:r,setSelectedTargets:n,goToQueryEditor:l,targetsTotalCount:s})=>{const{lastEditedQueryBody:o}=(0,a.useContext)(u.c),[i,d]=(0,a.useState)(!1),[p,y]=(0,a.useState)(!1),[g,v]=(0,a.useState)(c.LY),w=(null==e?void 0:e.query)!==o,S=(0,a.useRef)(null),C=(0,a.useRef)(null),T=(0,a.useRef)(null),O=(0,a.useRef)(null),q=(0,a.useRef)(ie({},ce)),N=()=>{T.current&&(T.current.close(),T.current=null,O.current=null,q.current=ce)},x=()=>{C.current&&(clearInterval(C.current),C.current=null),v(e=>ue(ie({},e),{queryIsRunning:!1,runQueryMilliseconds:0})),d(!0),N()},P=(0,_.A)(()=>{return e=function*(){if(!o)return void f.me.error("Something went wrong running your report. Please try again.");const e=(0,h.yp)(t);d(!1),N(),v(c.LY);try{(e=>{let{current:t}=S;t=new(E())(`${c.C1}/v1/fleet/results`,void 0,{}),t.onopen=()=>{var r;r=t,T.current=r,C.current||(C.current=setInterval(()=>{v(e=>ue(ie({},e),{runQueryMilliseconds:e.runQueryMilliseconds+1e3}))},1e3)),v(t=>ue(ie({},t),{campaign:ue(ie({},t.campaign),{returnedCampaign:e}),queryIsRunning:!0})),null==t||t.send(JSON.stringify({type:"auth",data:{token:A.A.get()}})),null==t||t.send(JSON.stringify({type:"select_campaign",data:{campaign_id:e.id}}))},t.onmessage=({data:e})=>{var t,r,a,n;if(e===O.current)return;O.current=e;const l=JSON.parse(e);if(v(e=>ie(ie({},e),b.A.updateCampaignState(l)(e))),q.current.results+=null!=(a=null==(r=null==(t=null==l?void 0:l.data)?void 0:t.rows)?void 0:r.length)?a:0,q.current.errors+=(null==(n=null==l?void 0:l.data)?void 0:n.error)?1:0,"status"===l.type&&"finished"===l.data.status)return x();q.current.results+q.current.errors>=25e4&&(x(),y(!0))}})(yield m.A.run({query:o,queryId:w?null:r,selected:e}))}catch(e){const t=String(e);return t.includes("no hosts targeted")?f.me.error("Your target selections did not include any hosts. Please try again.",{response:e}):t.includes("resource already created")?f.me.error("A campaign with the provided query text has already been created",{response:e}):t.includes("forbidden")||t.includes("unauthorized")?f.me.error("It seems you do not have the rights to run this report. If you believe this is an error, please contact your administrator.",{response:e}):f.me.error("Something has gone wrong. Please try again.",{response:e}),x()}},new Promise((t,r)=>{var a=t=>{try{l(e.next(t))}catch(e){r(e)}},n=t=>{try{l(e.throw(t))}catch(e){r(e)}},l=e=>e.done?t(e.value):Promise.resolve(e.value).then(a,n);l((e=e.apply(null,null)).next())});var e});(0,a.useEffect)(()=>{P()},[]);const{campaign:Q}=g;return a.createElement(ee,{campaign:Q,onRunQuery:P,onStopQuery:e=>(e.preventDefault(),x()),isQueryFinished:i,isQueryClipped:p,setSelectedTargets:n,goToQueryEditor:l,queryName:null==e?void 0:e.name,targetsTotalCount:s})},me=Object.defineProperty,pe=Object.getOwnPropertySymbols,ye=Object.prototype.hasOwnProperty,ge=Object.prototype.propertyIsEnumerable,ve=(e,t,r)=>t in e?me(e,t,{enumerable:!0,configurable:!0,writable:!0,value:r}):e[t]=r,Ee=(e,t)=>{for(var r in t||(t={}))ye.call(t,r)&&ve(e,r,t[r]);if(pe)for(var r of pe(t))ge.call(t,r)&&ve(e,r,t[r]);return e};const fe="run-query-page";var he=({router:e,params:{id:t},location:r})=>{const v=t?parseInt(t,10):null,{currentTeamId:E}=(0,o.Ay)({location:r,router:e,includeAllTeams:!0,includeNoTeam:!1}),f=(0,l.useErrorHandler)(),{config:h}=(0,a.useContext)(i.BR),{editingExistingQuery:b,selectedQueryTargets:_,setSelectedQueryTargets:A,selectedQueryTargetsByType:w,setSelectedQueryTargetsByType:S,setLastEditedQueryId:C,setLastEditedQueryName:T,setLastEditedQueryDescription:O,setLastEditedQueryBody:q,setLastEditedQueryObserverCanRun:N,setLastEditedQueryFrequency:x,setLastEditedQueryLoggingType:P,setLastEditedQueryMinOsqueryVersion:Q,setLastEditedQueryPlatforms:k}=(0,a.useContext)(u.c),[R,I]=(0,a.useState)(!1),[D,F]=(0,a.useState)(c.oV[1]),[L,$]=(0,a.useState)(w.hosts),[j,M]=(0,a.useState)(w.labels),[H,B]=(0,a.useState)(w.teams),[G,U]=(0,a.useState)(0);if(null==h?void 0:h.server_settings.live_query_disabled){const t=v?s.A.REPORT_DETAILS(v):s.A.NEW_REPORT;e.push((0,d.M8)(t,{fleet_id:E}
1))}const{data:V}=(0,n.useQuery)(["query",v],()=>m.A.load(v),{enabled:!!v&&!b,refetchOnWindowFocus:!1,select:e=>e.query,onSuccess:e=>{C(e.id),T(e.name),O(e.description),q(e.query),N(e.observer_can_run),x(e.interval),k(e.platform),P(e.logging),Q(e.min_osquery_version)},onError:e=>f(e)});(0,n.useQuery)("hostFromURL",()=>p.A.loadHostDetails(parseInt(r.query.host_id,10)),{enabled:!!r.query.host_id&&!R,select:e=>e.host,onSuccess:t=>{$(e=>e.filter(e=>e.id!==t.id).concat(t));const a=_;t.target_type="hosts",a.push(t),A([...a]),R||I(!0),e.replace(r.pathname)}}),(0,a.useEffect)(()=>{S({hosts:L,labels:j,teams:H})},[j,L,H]),(0,a.useEffect)(()=>{(null==V?void 0:V.name)?document.title=`Run ${V.name} | Reports | ${c.DI}`:document.title=`Reports | ${c.DI}`},[r.pathname,null==V?void 0:V.name]);const W=(0,a.useCallback)(()=>{const t=v?s.A.EDIT_REPORT(v):s.A.NEW_REPORT;e.push((0,d.M8)(t,{fleet_id:E}))},[]);return a.createElement(y.A,{className:fe},a.createElement("div",{className:`${fe}_wrapper`},(()=>{var e;const t={baseClass:fe,queryId:v,selectedTargets:_,targetedHosts:L,targetedLabels:j,targetedTeams:H,targetsTotalCount:G,goToQueryEditor:W,goToRunQuery:()=>F(c.oV[2]),setSelectedTargets:A,setTargetedHosts:$,setTargetedLabels:M,setTargetedTeams:B,setTargetsTotalCount:U,isObserverCanRunQuery:null==V?void 0:V.observer_can_run,queryTeamId:null!=(e=null==V?void 0:V.team_id)?e:null},r={queryId:v,selectedTargets:_,storedQuery:V,setSelectedTargets:A,goToQueryEditor:W,targetsTotalCount:G};return D===c.oV[2]?a.createElement(de,Ee({},r)):a.createElement(g.A,Ee({},t))})()))}}}]);

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.