D7net
Home
Console
Upload
information
Create File
Create Folder
About
Tools
:
/
opt
/
psa
/
admin
/
cp
/
public
/
javascript
/
components
/
pages
/
VirtualDirectoryPage
/
Filename :
Browse.js
back
Copy
(self.webpackChunkPlesk=self.webpackChunkPlesk||[]).push([["components/pages/VirtualDirectoryPage/Browse"],{2788:(e,t,i)=>{"use strict";i.r(t),i.d(t,{default:()=>C});var n=i(285),a=i(596),r=i.n(a),o=i(89),s=i(646),l=i(286),c=i(1101),d=i(1173),u=i(628),m=i(536),p=i(547),h=i(1183),y=i.n(h),f=i(2789),v=i.n(f);const b=o.Locale.getTranslate("smb.components.lists.virtualdirectories"),k=o.Locale.getSection("smb.components.lists.virtualdirectories"),x=o.Locale.getTranslate("components.buttons"),j="UP_LEVEL",D="DIRECTORY",g="VIRTUAL_DIRECTORY",T=({type:e})=>e===j,N=({type:e})=>"FILE"===e,V=({type:e})=>[D,g].includes(e),S=({type:e})=>e===g,w=({type:e,fileType:t,name:n})=>S({type:e})?i(2790):(0,p.getTypeIcon)({type:t,isDirectory:V({type:e})||T({type:e}),name:n}),I=e=>{if(!e)return null;const t=e.split("/").slice(0,-1).join("/");return{key:"..",type:j,name:"..",relativePath:t||"/",doesExist:!0}},P=({path:e,domainId:t,domainName:i,canCreateDir:a=!1,canCreateVirtualDir:r=!1,showProtection:o=!1})=>{const[p,h]=(0,n.useState)([]),[f,j]=(0,n.useState)([]);(0,n.useEffect)((()=>{h([]),j([])}),[e]);const{queryResult:{refetch:D},listProps:{data:g,...P},listInput:C}=(0,c.useGraphQlList)({key:`VirtualDirectoryPage${t}`,onListInputChange:()=>h([]),query:y(),variables:{domainId:btoa(`Domain:${t}`),path:e},extractList:e=>e.domain.hosting.virtualDirectory.content}),[E]=(0,u.useMutation)(v(),{refetchQueries:[y()],awaitRefetchQueries:!0,onCompleted(){(0,m.addToast)({intent:"success",message:k.lmsg("removeSuccess")})},onError({message:e}){(0,m.addToast)({intent:"danger",message:e}),D()}}),L=(0,n.useMemo)((()=>e.endsWith("/")||e.endsWith("\\")?e.slice(0,-1):e),[e]),$=(0,n.useMemo)((()=>[I(L),...g.map((e=>({...e,relativePath:`${L}/${e.name}`})))].filter(Boolean)),[g,L]),R=(0,n.useMemo)((()=>$.filter((e=>!e.isReserved&&!T(e))).map((({name:e})=>e))),[$]),O=[r&&(0,n.jsx)(l.Button,{id:"createVirtualDir",intent:"primary",component:s.default,to:(0,d.buildUrl)("create-virtual-directory",{path:e}),tooltip:(0,n.jsx)(b,{content:"buttonCreateVirtualDirHint"}),children:(0,n.jsx)(b,{content:"buttonCreateVirtualDir"})},"createVirtualDir"),a&&(0,n.jsx)(l.Button,{id:"createDir",intent:r?void 0:"primary",component:s.default,to:(0,d.buildUrl)("create-directory",{path:e}),tooltip:(0,n.jsx)(b,{content:"buttonCreateDirHint"}),children:(0,n.jsx)(b,{content:"buttonCreateDir"})},"createDir")].filter(Boolean);return(0,n.jsx)(c.GraphQlList,{rowKey:"name",filtered:!!C.searchFilters?.name,loadingRows:f,selection:p,onSelectionChange:R.length?e=>h(e.filter((e=>R.includes(e)))):null,renderSelectionCheckbox:(e,t)=>(0,n.jsx)(l.Checkbox,{...e,disabled:t&&t.isReserved,checked:t?p.includes(t.name):p.length===R.length}),columns:[o&&{key:"isProtected",width:"1%",title:(0,n.jsx)(b,{content:"protection"}),sortable:!0,render:({type:e,isProtected:t,relativePath:i})=>V({type:e})&&(0,n.jsx)(l.Tooltip,{title:(0,n.jsx)(b,{content:t?"protectionOn":"protectionOff"}),children:(0,n.jsx)(s.default,{to:{pathname:"../protection",search:`?path=${i}`},children:(0,n.jsx)(l.Icon,{name:t?"shield-filled":"cross-mark-circle-filled",intent:t?"success":"inactive"})})})},{key:"name",title:(0,n.jsx)(b,{content:"name"}),sortable:!0,type:"title",render:e=>(0,n.jsx)(l.Tooltip,{title:(0,n.jsx)(b,{content:`${e.type.toLowerCase()}Type`}),children:(0,n.jsx)(l.Action,{icon:(0,n.jsx)(l.Icon,{src:w(e)}),component:N(e)?"span":s.default,to:(0,d.buildUrl)(`/cp/domains/${t}/virtual-directory`,{path:e.relativePath}),bottomAddon:!e.doesExist&&(0,n.jsx)(l.Status,{intent:"danger",children:(0,n.jsx)(b,{content:"isMissing"})}),children:e.name})})},{key:"actions",type:"actions",render:({type:a,name:r,relativePath:o,canManagePermissions:c,baseName:u,dirName:m,fileType:p})=>!T({type:a})&&(0,n.jsxs)(l.ListActions,{children:[(0,n.jsx)(l.ListAction,{primary:!0,icon:"web",component:"a",href:`http://${i}${o}`,target:"_blank","data-type":"buttonOpen",children:(0,n.jsx)(b,{content:"actionOpen"})}),(0,n.jsx)(l.ListAction,{primary:!0,icon:"pencil",component:s.default,to:(0,d.buildUrl)(`./${r}/edit-virtual-directory`,{path:e}),hidden:!S({type:a}),"data-type":"buttonEdit",children:(0,n.jsx)(b,{content:"actionEdit"})}),(0,n.jsx)(l.ListAction,{primary:!0,icon:"lock-closed-check",component:s.default,to:(0,d.buildUrl)(`/cp/domains/${t}/virtual-directory/browse/permissions`,{file:u,currentDir:m,isDirectory:!N({type:a}),fileType:p,path:e}),hidden:!c,"data-type":"buttonPermissions",children:(0,n.jsx)(b,{content:"actionPermissions"})})]})}].filter(Boolean),toolbar:(0,n.jsxs)(l.Toolbar,{children:[O.length>0&&(0,n.jsx)(l.ToolbarGroup,{title:"",children:O}),(0,n.jsx)(l.ToolbarGroup,{title:"",children:(0,n.jsx)(l.ListOperation,{critical:!0,noSelectionText:k.lmsg("noSelectionText"),confirmationText:()=>k.formatMessage("removeConfirmation",{name:(0,n.jsx)("b",{children:p[0]}),count:p.length}),actionButtonText:(0,n.jsx)(x,{content:"yesRemove"}),cancelButtonText:(0,n.jsx)(x,{content:"cancel"}),children:(0,n.jsx)(l.Button,{id:"removeVirtualDirectory",onClick:async()=>{j(p),await E({variables:{domainId:btoa(`Domain:${t}`),path:e,names:p}}),j([])},children:(0,n.jsx)(b,{content:"buttonRemove"})})})}),(0,n.jsx)(l.ToolbarExpander,{}),(0,n.jsx)(l.ToolbarGroup,{groupable:!1,title:"",children:(0,n.jsx)(c.GraphQlList.SearchBar,{name:"name"})})]}),rowProps:e=>({virtual:T(e)}),data:$,emptyView:(0,n.jsx)(l.ListEmptyView,{actions:O}),...P})};P.propTypes={domainId:r().number.isRequired,domainName:r().string.isRequired,path:r().string.isRequired,canCreateVirtualDir:r().bool,canCreateDir:r().bool,showProtection:r().bool};const C=P},2787:(e,t,i)=>{"use strict";i.r(t),i.d(t,{default:()=>p});var n=i(596),a=i.n(n),r=i(579),o=i(580),s=i(586),l=i(2788),c=i(1178),d=i.n(c),u=i(285);const m=({params:{domainId:e}})=>{const[t]=(0,r.useSearchParams)(),i=t.get("path")||"/",{data:{domain:{name:n,hosting:{virtualDirectory:{isVirtual:a,doesExist:c,isWritable:m,isAccessible:p}},subscription:{permissions:{manageProtectedDirectories:h}}}}}=(0,s.useQuery)(d(),{variables:{domainId:btoa(`Domain:${e}`),path:i}});return(0,u.jsxs)(u.Fragment,{children:[(0,u.jsx)(l.default,{domainId:+e,domainName:n,path:i,canCreateDir:m,canCreateVirtualDir:a&&c&&p,showProtection:h}),(0,u.jsx)(o.Outlet,{})]})};m.propTypes={params:a().object.isRequired};const p=m},2786:(e,t,i)=>{"use strict";i.r(t),i.d(t,{default:()=>n.default});var n=i(2787)},2790:e=>{e.exports=Jsw.skinUrl+"/icons/16/plesk/file-virtdir.png?89bae94000675d3836b903cb2747d16e"},2789:e=>{var t={kind:"Document",definitions:[{kind:"OperationDefinition",operation:"mutation",name:{kind:"Name",value:"DeleteVirtualDirectory"},variableDefinitions:[{kind:"VariableDefinition",variable:{kind:"Variable",name:{kind:"Name",value:"domainId"}},type:{kind:"NonNullType",type:{kind:"NamedType",name:{kind:"Name",value:"ID"}}},directives:[]},{kind:"VariableDefinition",variable:{kind:"Variable",name:{kind:"Name",value:"path"}},type:{kind:"NonNullType",type:{kind:"NamedType",name:{kind:"Name",value:"String"}}},directives:[]},{kind:"VariableDefinition",variable:{kind:"Variable",name:{kind:"Name",value:"names"}},type:{kind:"NonNullType",type:{kind:"ListType",type:{kind:"NonNullType",type:{kind:"NamedType",name:{kind:"Name",value:"String"}}}}},directives:[]}],directives:[],selectionSet:{kind:"SelectionSet",selections:[{kind:"Field",name:{kind:"Name",value:"deleteVirtualDirectory"},arguments:[{kind:"Argument",name:{kind:"Name",value:"input"},value:{kind:"ObjectValue",fields:[{kind:"ObjectField",name:{kind:"Name",value:"domainId"},value:{kind:"Variable",name:{kind:"Name",value:"domainId"}}},{kind:"ObjectField",name:{kind:"Name",value:"path"},value:{kind:"Variable",name:{kind:"Name",value:"path"}}},{kind:"ObjectField",name:{kind:"Name",value:"names"},value:{kind:"Variable",name:{kind:"Name",value:"names"}}}]}}],directives:[],selectionSet:{kind:"SelectionSet",selections:[{kind:"Field",name:{kind:"Name",value:"names"},arguments:[],directives:[]}]}}]}}],loc:{start:0,end:197}};t.loc.source={body:"mutation DeleteVirtualDirectory($domainId: ID!, $path: String!, $names: [String!]!) {\n deleteVirtualDirectory(input: { domainId: $domainId, path: $path, names: $names} ) {\n names\n }\n}\n",name:"GraphQL request",locationOffset:{line:1,column:1}};function i(e,t){if("FragmentSpread"===e.kind)t.add(e.name.value);else if("VariableDefinition"===e.kind){var n=e.type;"NamedType"===n.kind&&t.add(n.name.value)}e.selectionSet&&e.selectionSet.selections.forEach((function(e){i(e,t)})),e.variableDefinitions&&e.variableDefinitions.forEach((function(e){i(e,t)})),e.definitions&&e.definitions.forEach((function(e){i(e,t)}))}var n={};function a(e,t){for(var i=0;i<e.definitions.length;i++){var n=e.definitions[i];if(n.name&&n.name.value==t)return n}}t.definitions.forEach((function(e){if(e.name){var t=new Set;i(e,t),n[e.name.value]=t}})),e.exports=t,e.exports.DeleteVirtualDirectory=function(e,t){var i={kind:e.kind,definitions:[a(e,t)]};e.hasOwnProperty("loc")&&(i.loc=e.loc);var r=n[t]||new Set,o=new Set,s=new Set;for(r.forEach((function(e){s.add(e)}));s.size>0;){var l=s;s=new Set,l.forEach((function(e){o.has(e)||(o.add(e),(n[e]||new Set).forEach((function(e){s.add(e)})))}))}return o.forEach((function(t){var n=a(e,t);n&&i.definitions.push(n)})),i}(t,"DeleteVirtualDirectory")}}]); //# sourceMappingURL=Browse.js.map?2d813ca9ea5715576c5b