PageSourceSearch

https://dashboard.joomlatools.com/dashboard-spa-assets/site-De1uBTRy.js

js joomlatools.com collected 2026-10-09 21:48:50 UTC 7,698 bytes, 1 lines download raw bytes

1import{j as s}from"./jsx-runtime-D_zvdyIk.js";import{E as g}from"./extensionLogo-PP7DMlId.js";import{B as N,h as x,j as d}from"./index-C7EgWwA-.js";import{B as v}from"./badge-BvLSaqrN.js";import{C as _,a as U,d as C,e as S}from"./card-BBJaHS75.js";import{r as h}from"./chunk-PVWAREVJ-DsWl2CVF.js";import{h as T}from"./spinner-Cor3ZFKm.js";import{f as k,q as R}from"./auth-B6yVWG9n.js";import{R as W}from"./refresh-cw-qW89l476.js";import{C as w,T as J}from"./alert-BGUX8sl6.js";function l(e,r,n){let o=0;const i={dev:-6,alpha:-5,a:-5,beta:-4,b:-4,RC:-3,rc:-3,"#":-2,p:1,pl:1},m=a=>(a=`${a}`.replace(/[_\-+]/g,"."),a=a.replace(/([^.\d]+)/g,".$1.").replace(/\.{2,}/g,"."),a.length?a.split("."):[-8]),u=a=>a?Number.isNaN(a)?i[a]||-7:Number.parseInt(a,10):0;e=m(e),r=m(r);const f=Math.max(e.length,r.length);for(let a=0;a<f;a++)if(e[a]!==r[a]){if(e[a]=u(e[a]),r[a]=u(r[a]),e[a]<r[a]){o=-1;break}else if(e[a]>r[a]){o=1;break}}if(!n)return o;switch(n){case">":case"gt":return o>0;case">=":case"ge":return o>=0;case"<=":case"le":return o<=0;case"===":case"=":case"eq":return o===0;case"<>":case"!==":case"ne":return o!==0;case"":case"<":case"lt":return o<0;default:return null}}const t={versionCompare:l,getAdminUrl(e,r){return e?`${e.url}/administrator/index.php${r||""}`:""},getWordpressAdminUrl(e,r){return e?`${e.url}/wp-admin/${r||""}`:""},isDormant(e){const r=Number.parseInt(e.status,10);return r===202||r===204},isEnabled(e){const r=Number.parseInt(e.status,10);return r>=200&&r<300},isProductionSite(e){return e.environment===""||e.environment==="production"},hasPhpWarning(e){return e?.php&&e.php!==""&&l(e.php,"7","lt")},hasError(e,r){return!this.extensionsUpToDate(e,r)||this.hasJoomlaVersion(e)&&!this.isJoomlaUpToDate(e,r.joomla.latest_version)||this.hasWordpressVersion(e)&&!this.isWordpressUpToDate(e,r.wordpress.latest_version)},hasJoomlaVersion(e){return e?.joomla_version&&e.joomla_version!=="3.8"},isJoomlaSite(e){return e&&(!e.wordpress||e.wordpress==="0")},isWordpressSite(e){return e?.wordpress&&e.wordpress!=="0"},hasWordpressVersion(e){return e?.wordpress_version},isJoomlaUpToDate(e,r){return l(r,e.joomla_version,"le")},isWordpressUpToDate(e,r){return l(r,e.wordpress_version,"le")},extensionsUpToDate(e,r){const n=Object.values(r.extensions).reduce((o,i)=>(o[i.machine_name]=i.version,o),{});if(this.isJoomlaSite(e)){for(const o of Object.keys(n))if(e[o]&&e[o]!==""&&l(n[o],e[o],"gt"))return!1}return!(this.isWordpressSite(e)&&e.docman&&l(n["docman-wordpress"],e.docman,"gt"))},connectUpToDate(e,r){const n=r.extensions.connect.version;return n?!(e.connect&&l(n,e.connect,"gt")):!0},humanize(e){let r=e,n=null;return r.substr(0,2)==="//"&&(r=r.substr(2)),r.indexOf("/")!==-1&&(n=r.substr(r.indexOf("/")+1),r=r.substr(0,r.indexOf("/"))),r=r.substr(0,r.lastIndexOf(".")),r=r.replace(/[\-_.]/g," "),r=r.replace(/[\s]{2,}/g," ").trim(),r=r.charAt(0).toUpperCase()+r.substr(1),n?`${r} (${n})`:r}};function K({site:e,appData:r}){return e?s.jsxs("div",{className:"flex flex-col",children:[s.jsxs("div",{className:"flex flex-col md:flex-row border-b mb-2",children:[s.jsxs("div",{className:"md:flex-1",children:[s.jsx("h2",{className:"pt-2 px-2 font-semibold",children:e&&t.humanize(e.install_location)}),s.jsx("small",{className:"p-2",children:e?.url})]}),s.jsx("div",{className:"md:justify-center md:text-center p-2",children:s.jsx(A,{site:e},e.id)})]}),e.displayType==="wordpress"&&r?.extensions&&s.jsxs("div",{className:"grid md:grid-cols-3 gap-2 px-2",children:[s.jsxs(c,{header:s.jsxs("div",{className:"flex flex-row items-center",children:[s.jsx(g,{extension:"docman"})," ",r.extensions["docman-wordpress"].name]}),footer:r?b(e,e.docman,r.extensions["docman-wordpress"].version,"docman"):null,children:["Version: ",e.docman||"Not installed"]}),s.jsx($,{site:e,appData:r}),s.jsx(j,{site:e})]}),e.joomla_version&&s.jsxs(s.Fragment,{children:[s.jsxs("div",{className:"grid md:grid-cols-2 gap-2 p-2",children:[s.jsx(y,{site:e,appData:r}),s.jsx(j,{site:e})]}),s.jsx("div",{className:"grid md:grid-cols-3 gap-2 p-2",children:["docman","fileman","logman","leadman","textman","connect"].map(n=>s.jsxs(c,{header:s.jsxs("div",{className:"flex flex-row items-center",children:[s.jsx(g,{extension:n})," ",r?r.extensions[n].name:n]}),footer:r?b(e,e[n],r.extensions[n].version,n):null,children:["Version: ",e[n]||"Not installed"]},n))})]})]}):null}
1function c({header:e,children:r,footer:n,className:o=""}){return s.jsxs(_,{className:x("flex-1 flex flex-col",o),children:[s.jsx(U,{className:"bg-muted/40 border-b rounded-t-lg gap-0 rounded-b-none p-2 flex-row ",children:e}),s.jsx(C,{className:"px-2",children:r}),s.jsx(S,{className:"grow bg-muted/40  rounded-b-lg rounded-t-none border-t  p-2",children:n})]})}function j({site:e}){const r=e?.php&&e.php!==""&&t.versionCompare(e.php,"7","gt");return s.jsxs(c,{header:s.jsxs("div",{className:"flex flex-row items-center",children:[s.jsx("img",{alt:"PHP logo",className:"w-[24px] h-[24px] inline",src:"/dashboard-spa-assets/img/php-logo.svg"})," PHP"]}),footer:e.php&&r?s.jsx(p,{caption:"Supported"}):"",children:["Version: ",e.php||"Unknown"]})}function $({site:e,appData:r}){const n=e.wordpress_version&&r?t.isWordpressUpToDate(e,r.wordpress.latest_version)?s.jsx(p,{}):s.jsxs("a",{className:d({variant:"destructive",size:"sm"}),target:"_blank",rel:"noreferrer",href:t.getWordpressAdminUrl(e,"update-core.php"),children:["Update to ",r.wordpress.latest_version]}):"",o=s.jsxs("div",{className:"flex flex-row items-center",children:[s.jsx("img",{alt:"Wordpress logo",className:"w-[24px] h-[24px] inline",src:"/dashboard-spa-assets/img/wordpress-logo.png"})," WordPress"]});return s.jsxs(c,{header:o,footer:n,children:["Version: ",e.wordpress_version||"Unknown"]})}function y({site:e,appData:r}){const n=e.joomla_version&&r?t.isJoomlaUpToDate(e,r.joomla.latest_version)?s.jsx(p,{}):s.jsxs("a",{className:d({variant:"destructive",size:"sm"}),target:"_blank",rel:"noreferrer",href:t.getAdminUrl(e,"?option=com_joomlaupdate"),children:["Update to ",r.joomla.latest_version]}):"",o=s.jsxs("div",{className:"flex flex-row items-center",children:[s.jsx("img",{alt:"Joomla logo",className:"w-[24px] h-[24px] inline",src:"/dashboard-spa-assets/img/joomla-logo.png"})," Joomla"]});return s.jsxs(c,{header:o,footer:n,children:["Version: ",e.joomla_version||"Unknown"]})}const p=({caption:e})=>s.jsxs("button",{disabled:!0,className:x(d({variant:"outline",size:"sm"}),"hover:bg-background cursor-default"),children:[s.jsx(w,{className:"w-4 h-4",color:"green"}),e??"Up to date"]}),b=(e,r,n,o)=>!r||r==="0"||r===""||r==="unknown"?s.jsx("a",{href:`/downloads/${o}`,className:d({variant:"outline",size:"sm"}),children:"Download"}):t.versionCompare(n,r,"le")?s.jsx(p,{}):s.jsxs("a",{className:x(d({variant:"destructive",size:"sm"}),""),target:"_blank",rel:"noreferrer",href:t.getAdminUrl(e,`?option=com_installer&view=update&filter[search]=${o}`),children:["Update to ",n]});function A({site:e}){const[r,n]=h.useState(!1),[o,i]=h.useState(!1),[m,u]=h.useState(!1);async function f(a){a.preventDefault(),n(!0);try{await k(e),await R.invalidateQueries({queryKey:["sites"]}),n(!1),i(!0)}catch{n(!1),u(!0)}}return s.jsxs(N,{variant:"outline",onClick:f,disabled:r||o,className:o?"border-success text-success":"",children:[r&&s.jsx(W,{className:"h-4 w-4 animate-spin"}),o&&s.jsx(w,{className:"h-4 w-4"}),m&&s.jsx(J,{className:"h-4 w-4"}),r?"Refreshing…":o?"Refreshed":"Refresh versions"]},e.id)}function L({site:e}){const{data:r}=T();return r?t.extensionsUpToDate(e,r)?null:s.jsx(v,{variant:"outline",className:"p-0.5 font-normal text-destructive-button-foreground bg-destructive-button border-red-300",children:"pending update"}):null}export{L as S,K as a,t as f};

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.