<html><head><meta name="color-scheme" content="light dark"></head><body><pre style="word-wrap: break-word; white-space: pre-wrap;">var Z=Object.defineProperty;var N=(e,t,r)=&gt;t in e?Z(e,t,{enumerable:!0,configurable:!0,writable:!0,value:r}):e[t]=r;var a=(e,t,r)=&gt;N(e,typeof t!="symbol"?t+"":t,r);import{n as q,j as y,r as G}from"../../../vendor/vendor/react-core.CM2XiWNG.min.js";import{x as K,y as M,g as b,t as S,z as Q,e as R,s as T,L,I as F,p as J,A as z,q as _,j as V,o as W,B as Y}from"../../layouts.BQZb9l4C.min.js";import{u as X,S as O}from"../../../chunks/SearchFormContext.DgfkRXsb.min.js";import{F as ee}from"../../../chunks/FilterFrame.NcnjfM_L.min.js";import{L as te}from"../../../chunks/LazyDateRange.DLOVUstd.min.js";import{b as P,g as re,c as ne}from"../../../vendor/vendor/redux.CFAXscAc.min.js";import{j as u,s as ae}from"../../../chunks/vendor/lodash.CCmFHa25.min.js";function H(e){return K(e).replace(/&amp;lt;em&amp;gt;/g,"&lt;em&gt;").replace(/&amp;lt;\/em&amp;gt;/g,"&lt;/em&gt;")}const oe=e=&gt;{if(b("searchConnectors.zendesk.enabled")){const t=b("searchConnectors.zendesk.endpoint");if(t)return`${t.substring(-1)==="/"?t.substring(0,t.length-1):t}${e}`;throw new Error("Cannot obtain Zendesk endpoint")}return""},se=q.create({baseURL:oe("/api/v2/help_center/articles/search"),transformRequest:[e=&gt;M(e)],paramsSerializer:e=&gt;M(e)});function ie(e){return{url:e.html_url,body:e.body?H(e.body):void 0,highlight:H(e.snippet??e.body),name:e.title,recordID:e.id,recordType:e.result_type??"zendesk",type:"zendesk",dateUpdated:e.edited_at,dateInserted:e.created_at,isForeign:!0}}function ce(e,t){const r=e.split(new RegExp("-|_"))[0],n=t.split(new RegExp("-|_"))[0];return r===n}function le(){return y.jsxs("svg",{width:"26",height:"26",fill:"none",xmlns:"http://www.w3.org/2000/svg",children:[y.jsx("circle",{cx:"13",cy:"13",r:"13",fill:"#EEEEEF"}),y.jsx("path",{d:"M13.5 16.25v-9.5H21l-7.5 9.5ZM12.5 9.75v9.5H5l7.5-9.5ZM8.7 10.65c2.043 0 3.7-1.857 3.7-3.9H5c0 2.043 1.657 3.9 3.7 3.9ZM17.3 15.35c-2.043 0-3.7 1.856-3.7 3.9H21c0-2.044-1.657-3.9-3.7-3.9Z",fill:"#555A62"})]})}function de(){const{form:e,updateForm:t,search:r}=X();return y.jsx(ee,{title:S("Filter Results"),handleSubmit:r,children:y.jsx(Q,{legend:S("Date Updated"),children:y.jsx(te,{onStartChange:n=&gt;{t({startDate:n})},onEndChange:n=&gt;{t({endDate:n})},start:e.startDate,end:e.endDate})})})}const k=P("@@federatedSearch/fetchSearchConnectors",async(e,{rejectWithValue:t})=&gt;{try{const{data:r}=await R.get("/search-connectors",e);return r}catch(r){return t(r)}}),E=P("@@federatedSearch/fetchSearchConnector",async(e,{rejectWithValue:t})=&gt;{try{const{data:r}=await R.get(`/search-connectors/${e}`);return r}catch(r){return t(r)}}),A=P("@@federatedSearch/patchSearchConnector",async({searchConnectorID:e,...t},{rejectWithValue:r})=&gt;{try{const{data:n}=await R.patch(`/search-connectors/${e}`,t);return n}catch(n){return r(n)}}),$=P("@@federatedSearch/postSearchConnector",async(e,{rejectWithValue:t})=&gt;{try{const{data:r}=await R.post("/search-connectors",{...e});return r}catch(r){return t(r)}}),pe={searchConnectorIDsByParamHash:{},searchConnectorsByID:{}},U=re({name:"federatedSearch",initialState:pe,reducers:{},extraReducers:e=&gt;{e.addCase(k.pending,(t,r)=&gt;{const n=T(r.meta.arg);t.searchConnectorIDsByParamHash[n]={status:L.LOADING}}).addCase(k.fulfilled,(t,r)=&gt;{const n=T(r.meta.arg);t.searchConnectorIDsByParamHash[n]={status:L.SUCCESS,data:r.payload.map(o=&gt;o.searchConnectorID)},r.payload.forEach(o=&gt;{t.searchConnectorsByID[o.searchConnectorID]=o})}).addCase(k.rejected,(t,r)=&gt;{const n=T(r.meta.arg);t.searchConnectorIDsByParamHash[n]={status:L.ERROR,error:r.error}}).addCase(E.pending,(t,r)=&gt;{}).addCase(E.fulfilled,(t,r)=&gt;{t.searchConnectorsByID[r.meta.arg]=r.payload}).addCase(E.rejected,(t,r)=&gt;{}).addCase(A.pending,(t,r)=&gt;{}).addCase(A.fulfilled,(t,r)=&gt;{const n=r.payload.searchConnectorID;t.searchConnectorsByID[n]={...t.searchConnectorsByID[n],...r.payload}}).addCase(A.rejected,(t,r)=&gt;{}).addCase($.pending,(t,r)=&gt;{}).addCase($.fulfilled,(t,r)=&gt;{const n=r.payload.searchConnectorID;t.searchConnectorsByID[n]={...r.payload}}).addCase($.rejected,(t,r)=&gt;{})}});ne(U).dispatch;function ue(e){return Object.fromEntries(e.split(", ").map(t=&gt;{var s;const r=t.match(/&lt;?([^&gt;]*)&gt;(.*)/),n=r==null?void 0:r[1];return[(s=r==null?void 0:r[2].match(/"(.*?)"/))==null?void 0:s[1],n]}))}function j(e){return new DOMParser().parseFromString(e,"text/html").documentElement.textContent??""}function he(e){return function(r){return{...Array.from(new Set([...Object.keys(e)])).reduce((s,i)=&gt;({...s,[i]:u(r,e[`${i}`],void 0)}),{}),recordType:"external",isForeign:!0,recordID:T(r)}}}function fe(e){return function(r){return{results:(Array.isArray(r)?r:e!=null&amp;&amp;e.results?u(r,e.results,[]):[]).map(o=&gt;({...o}))}}}const m=10;function ge(e){return function(r){var d,C;const{paginationConfig:n,endpoint:o,queryConfig:s,requestQuery:i}=e,l={...r,headers:{...r.headers,...ue(u(r.headers,"link",""))}},c=parseInt(u(l,`${n.currentPage}`))+(n!=null&amp;&amp;n.zeroBased?1:0);switch(n.paginationType){case"cursor":return{currentPage:c,total:parseInt(u(l,`${n.totalResultCount}`)),limit:m,nextURL:(d=n.nextUrl)!=null&amp;&amp;d.includes("link")?u(l,"headers.next"):u(l,`${n.nextUrl}`),prevURL:(C=n.previousURL)!=null&amp;&amp;C.includes("link")?u(l,"headers.prev"):u(l,`${n.previousURL}`)};case"offset":{const x=parseInt(u(l,`${n.totalResultCount}`)),p=parseInt(`${i.offset??0}`),I=p+m&lt;=x?p+m:null,h=p-m&gt;=0?p-m:null,D=B({...s,limit:n.limit,offset:n.offset}),f={...I!==null&amp;&amp;{nextUrl:`${o}?${M(D({...i,limit:m,[`${n.offset}`]:I}))}`},...h!==null&amp;&amp;{prevUrl:`${o}?${M(D({...i,limit:m,[`${n.offset}`]:h}))}`}};return{currentPage:parseInt(u(l,`${n.currentPage}`))/m+(n!=null&amp;&amp;n.zeroBased?1:0),total:parseInt(u(l,`${n.totalResultCount}`)),limit:m,...f.nextUrl&amp;&amp;{nextURL:f.nextUrl},...f.prevUrl&amp;&amp;{prevURL:f.prevUrl}}}default:return{currentPage:1,total:0,limit:10}}}}function B(e){return function(t){let r={};return Object.entries(e??{}).forEach(([n,o])=&gt;{n!=="staticParameters"?ae(r,`${o}`,t==null?void 0:t[n]):r={...r,...J(o??"")}}),r}}class me{constructor(t,r,n,o,s){a(this,"label");a(this,"endpoint");a(this,"searchConnectorID");a(this,"queryParamsMapperConfiguration");a(this,"responseMapperConfiguration");a(this,"paginationMapperConfiguration");a(this,"resultMapperConfiguration");a(this,"abortController");this.label=t.label,this.endpoint=t.endpoint,this.searchConnectorID=t.searchConnectorID,this.queryParamsMapperConfiguration=r,this.resultMapperConfiguration=o,this.paginationMapperConfiguration=n,this.responseMapperConfiguration=s,this.abortController=new AbortController}get key(){return this.searchConnectorID}abort(){this.abortController.abort(),this.abortController=new AbortController}get domains(){const t=this.searchConnectorID,r=this.label;return[new class extends O{constructor(){super(...arguments);a(this,"key",t);a(this,"isIsolatedType",!0);a(this,"sort",1);a(this,"name",r);a(this,"icon",y.jsx(F,{icon:"meta-external"}));a(this,"recordTypes",["external"])}}]}transformResults(t){const r=this.resultMapperConfiguration,n=he(r);return t.map(s=&gt;n(s)).map(s=&gt;({...s,...r.stripTags&amp;&amp;{name:j(s.name),...s.highlight&amp;&amp;{highlight:j(s.highlight)}},...r.shouldPrefixUrl&amp;&amp;r.urlPrefix.length&gt;0&amp;&amp;{url:`${r.urlPrefix}${s.url}`}}))}async performSearch(t,r){const{query:n}=t;if(!n)return{results:[],pagination:{}};let o={};r||(o=B(this.queryParamsMapperConfiguration)({...t,...this.queryParamsMapperConfiguration.offset&amp;&amp;!(t!=null&amp;&amp;t.offset)&amp;&amp;{[`${this.queryParamsMapperConfiguration.offset}`]:0}}));const s=r??this.endpoint,i=await q.get(s,{...!r&amp;&amp;{params:o},signal:this.abortController.signal,...this.queryParamsMapperConfiguration.staticHeaders&amp;&amp;{headers:JSON.parse(this.queryParamsMapperConfiguration.staticHeaders)}}),l=ge({paginationConfig:this.paginationMapperConfiguration,endpoint:this.endpoint,queryConfig:this.queryParamsMapperConfiguration,requestQuery:t})(i),c=fe(this.responseMapperConfiguration)(i);return{results:this.transformResults(c.results),pagination:l}}}function ye(e){return!!e&amp;&amp;!!e.match(/https:\/\/[-a-zA-Z0-9@:%._+~#=]{1,256}\.[a-zA-Z0-9()]([-a-zA-Z0-9()@:%_+.~#?&amp;/=]*)/gm)}function Ce(e){const t={};return ye(e.endpoint)||(t.endpoint="invalid"),e.label||(t.label="invalid"),e.searchConnectorID||(t.searchConnectorID="invalid"),t}const be={required:["totalResultCount"]};function Se(e){const t={};return be.required.forEach(n=&gt;{e[`${n}`]||(t[`${n}`]=`${n} is required.`)}),t}const v=e=&gt;{if(e.indexOf("{")===-1)return!1;try{JSON.parse(e)}catch(t){return z(t),!1}return!0};function xe(e){const t={};return e!=null&amp;&amp;e.query||(t.query="invalid"),e!=null&amp;&amp;e.staticHeaders&amp;&amp;!v(e==null?void 0:e.staticHeaders)&amp;&amp;(t.staticHeaders="Static Headers must be a valid object"),e!=null&amp;&amp;e.secretHeaders&amp;&amp;!v(e==null?void 0:e.secretHeaders)&amp;&amp;(t.secretHeaders="Authentication Headers must be a valid object"),t}function Ie(e){const t={};return e.results||(t.results="invalid"),t}const De={type:"object",properties:{name:{type:"string",minLength:1,maxLength:20,"x-control":{label:"Title",description:"The title of the search result",inputType:"dropDown",choices:{staticOptions:{}}}},url:{type:"string",minLength:1,maxLength:20,"x-control":{label:"URL",description:"Where the search result should link to",inputType:"dropDown",choices:{staticOptions:{}}}},shouldPrefixUrl:{type:"boolean",default:!1,"x-control":{label:"Add URL Prefix",description:"If your API provides relative URLs, check this option to add a static prefix",inputType:"checkBox",labelType:"wide",checkPosition:"right"}},urlPrefix:{type:"string",nullable:!0,"x-control":{label:"URL Prefix",description:"This is added to the beginning of every search result URL",inputType:"textBox",conditions:[{field:"shouldPrefixUrl",const:!0}]}},highlight:{type:"string",nullable:!0,minLength:1,maxLength:20,"x-control":{label:"Highlight/Excerpt",description:"What part of the result is relevant to the search term",inputType:"dropDown",choices:{staticOptions:{}}}},dateUpdated:{type:"string",nullable:!0,minLength:1,maxLength:20,"x-control":{label:"Date Updated",description:"The date when this result was last edited",inputType:"dropDown",choices:{staticOptions:{}}}},dateInserted:{type:"string",nullable:!0,minLength:1,maxLength:20,"x-control":{label:"Creation Date",description:"The date when this result was created",inputType:"dropDown",choices:{staticOptions:{}}}},stripTags:{type:"string",nullable:!0,minLength:1,maxLength:20,"x-control":{label:"Remove HTML from title and highlight/excerpt",description:"If your API provides HTML in the search results, check this option to remove it",inputType:"checkBox"}}},required:["name","url"]};function Re(e,t=De){const r={};return t.required.forEach(n=&gt;{e[n]||(r[n]="invalid")}),r}function we(e){const t={...Ce(e),...xe(e.queryMap??{}),...Se(e.paginationMap??{}),...Ie(e.responseMap??{}),...Re(e.resultMap??{})},r=Object.values(t).filter(n=&gt;n!==void 0).length===0;return r||z(`Search connector: ${e.searchConnectorID} - ${e.label}
configuration is invalid:`,t),r}function Te(){var r;const e=((r=b("searchConnectors.salesforce-official.label"))==null?void 0:r.length)&gt;=1?b("searchConnectors.salesforce-official.label"):S("Salesforce"),t=new class{constructor(){a(this,"abortController");this.abortController=new AbortController}abort(){this.abortController.abort(),this.abortController=new AbortController}get key(){return"salesforce-official"}get label(){return e}get domains(){return[new class extends O{constructor(){super(...arguments);a(this,"key","salesforce-official");a(this,"isIsolatedType",!0);a(this,"sort",1);a(this,"name",e);a(this,"icon",y.jsx(F,{icon:"search"}));a(this,"recordTypes",["external"]);a(this,"PanelComponent",G.Fragment);a(this,"getAllowedFields",i=&gt;[]);a(this,"transformFormToQuery",function(i){return{...i}})}}]}addDomain(o){throw new Error("Search connector does not support additional domains")}async performSearch(o){const{query:s,page:i,offset:l}=o,c=typeof i=="string"?parseInt(i):i??1,d=10,C=await R.get("/config?select=search.salesforce-official.endpoint"),x=C==null?void 0:C.data["search.salesforce-official.endpoint"];function p(g){return{url:g!=null&amp;&amp;g.UrlName?`${x}/s/article/${g.UrlName}`:x,body:g["snippet.text"]??"",highlight:g["snippet.text"]??"",name:g.Title??"",recordID:g.Id,recordType:"Salesforce",type:"salesforce-official",dateUpdated:g.LastPublishedDate??void 0,isForeign:!0}}const I=c*d-d,h=new URLSearchParams({q:s,fields:"id,title,lastPublishedDate,summary,urlName",sobject:"KnowledgeArticleVersion",snippet:"300",overallLimit:d.toString(),offset:I.toString()}),f=((await R.get(`search-connectors/salesforce-official/proxy?${h}`)).data.searchRecords??[]).map(p),w=f.length;return{results:f,pagination:{limit:d,currentPage:c,next:w&lt;d?void 0:c+1,prev:c===1?void 0:c-1,total:I===0&amp;&amp;w&lt;d?w:void 0,currentResultsLength:w}}}};_.addSource(t)}V(U.name,U.reducer);function Me(){const e=b("searchConnectors.zendesk.label").length&gt;=1?b("searchConnectors.zendesk.label"):S("Zendesk"),t=new class{constructor(){a(this,"abortController");a(this,"sortOptions",[{value:"relevance",name:S("Best Match")},{value:"newest",name:S("Newest")},{value:"Oldest",name:S("Oldest")}]);this.abortController=new AbortController}abort(){this.abortController.abort(),this.abortController=new AbortController}get key(){return"zendesk"}get label(){return e}get domains(){return[new class extends O{constructor(){super(...arguments);a(this,"key","zendesk");a(this,"isIsolatedType",!0);a(this,"sort",1);a(this,"name",e);a(this,"icon",y.jsx(le,{}));a(this,"recordTypes",["external"]);a(this,"PanelComponent",de);a(this,"getAllowedFields",s=&gt;["startDate","endDate"]);a(this,"transformFormToQuery",function(s){return{...s,dateInserted:Y({start:s.startDate,end:s.endDate}),startDate:void 0,endDate:void 0}})}}]}addDomain(n){throw new Error("Search connector does not support additional domains")}async performSearch(n){const{query:o,limit:s,page:i,sort:l,dateInserted:c}=n,d=(n.locale??b("ui.localeKey")).split(new RegExp("-|_"))[0];if(!o)return{results:[],pagination:{}};const C=()=&gt;{switch(l){case"dateInserted":return{sort_by:"created_at",sort_order:"asc"};case"-dateInserted":return{sort_by:"created_at",sort_order:"desc"};default:return{}}},x=()=&gt;{const h="updated";if(c){if(c.includes("&lt;="))return{[`${h}_before`]:c.split("&lt;=")[1]};if(c.includes("&gt;="))return{[`${h}_after`]:c.split("&gt;=")[1]};if(c.includes(",")){const D=c.match(new RegExp("[^[].*(?=])"));if(D){const f=D[0].split(",");return{[`${h}_before`]:f[1],[`${h}_after`]:f[0]}}}}return{}},p=await se.get("",{params:{query:o,locale:d,page:i,per_page:s,...C(),...x()},signal:this.abortController.signal});return{results:p.data.results.filter(h=&gt;ce(h.locale,d)).map(ie),pagination:{limit:10,total:p.data.count,currentPage:p.data.page,next:p.data.next_page?p.data.page+1:void 0,prev:p.data.page-1}}}};_.addSource(t)}function Pe(e){const t=new me({label:e.label,endpoint:e.endpoint,searchConnectorID:e.searchConnectorID,useProxy:e.useProxy,allowedRoleIDs:e.allowedRoleIDs},e.queryMap,e.paginationMap,e.resultMap,e.responseMap);_.addSource(t)}W(async()=&gt;{try{Object.entries(b("searchConnectors",{})).filter(([e,t])=&gt;t.enabled).forEach(([e,t])=&gt;{switch(e){case"zendesk":Me();break;case"salesforce-official":Te();break;default:we(t)&amp;&amp;Pe(t)}})}catch(e){console.error(e)}});
</pre></body></html>