2 lines
7.7 KiB
JavaScript
Vendored
2 lines
7.7 KiB
JavaScript
Vendored
import o from"./TopBar.2e057c1e.js";import s from"./Container.f87d9f62.js";import a from"./Content.e22a1fd6.js";import n from"./Page.3927bdbf.js";import m from"./PageHeader.a5f457a5.js";import l from"./PageHeaderTitle.3ed783af.js";import p from"./PageBody.dec1fae1.js";import f from"./Button.f17dffc9.js";import c from"./List.d5d221b1.js";import u from"./ListItem.ee1e88fb.js";import d from"./StatusBubble.4f1d8322.js";import _ from"./NotificationBadge.b6fae3d5.js";import h from"./MainLayout.17290af6.js";import y from"./SettingsLayout.3305573b.js";import b from"./SettingsSegment.e8fdfb41.js";import g from"./FormInput.7debc7c5.js";import v from"./FormSelect.6e35ae7d.js";import T from"./FormTextarea.5b8e3d32.js";import S from"./Form.2cdcadd9.js";import x from"./Pagination.a93b6f75.js";import k from"./EmptyImage.4bfdf9ac.js";import C from"./FormActions.83ccca91.js";import{u as P}from"./confirm.059313bf.js";import w from"./Tabs.d2cdbef6.js";import D from"./Table.5d32c28c.js";import I from"./TableHead.1eed799b.js";import $ from"./TableHeader.44bdf327.js";import B from"./TableRow.6382a60a.js";import F from"./TableBody.c78326a3.js";import H from"./TableData.c69a64ca.js";import{n as L}from"./plugin-vue2_normalizer.000ba15c.js";import"./TopBar.27b84f08.js";import"./Dropdown.d1060583.js";import"./DropdownList.02c48c2f.js";import"./DropdownListItem.ac31464c.js";import"./IconMoon.ade3e41b.js";import"./IconSun.8809e5d7.js";import"./IconSearch.27dac870.js";import"./IconButton.eadc8d3d.js";import"./Breadcrumbs.d39e2491.js";import"./BreadcrumbsItem.da3f8155.js";import"./TopBarTabBarContainer.3bdb2bb3.js";import"./TabBar.c1d45ed5.js";import"./TabBarItem.e9886f0a.js";import"./Confirm.888708f1.js";import"./Notification.d432029f.js";import"./IconDanger.2f6e115d.js";import"./IconWarning.ca92fb65.js";import"./IconSuccess.09b85716.js";import"./IconInfo.ad7662f9.js";import"./SearchPalette.282fdde5.js";import"./notification.db2f2ae7.js";import"./app.79e1f42d.js";import"./FormGroup.efd02a6a.js";import"./Label.9d0d3ee0.js";import"./ErrorText.b141a597.js";import"./HelperText.14a7ed0b.js";import"./IconClipboard.8551be1b.js";import"./IconKey.455a255f.js";const j={metaInfo(){return{title:`${this.__("Certificates")} - ${this.site.domain}`}},layout:h,components:{TopBar:o,Container:s,Content:a,Page:n,PageHeader:m,PageHeaderTitle:l,PageBody:p,Button:f,List:c,ListItem:u,StatusBubble:d,NotificationBadge:_,FormInput:g,FormSelect:v,FormTextarea:T,SettingsLayout:y,SettingsSegment:b,Form:S,FormActions:C,Pagination:x,Tabs:w,Table:D,TableHead:I,TableHeader:$,TableRow:B,TableBody:F,TableData:H,EmptyImage:k},data(){return{sending:!1,form:{domain:null,type:"letsencrypt",certificate:null,private:null},breadcrumbs:[{title:this.$page.props.settings.name,to:"/"},{title:this.__("Sites"),to:this.route("sites.index")},{title:this.site.domain,to:this.route("sites.show",this.site.id)},{title:this.__("Certificates"),to:this.route("sites.certificates.index",this.site.id)}]}},mounted(){this.shouldBePolling&&this.startPollingInterval(),this.setDomainData()},watch:{shouldBePolling:function(i){if(!i){this.clearPollingInterval();return}this.pollingInterval||this.startPollingInterval()}},computed:{shouldBePolling(){return!!this.certificates.data.filter(i=>i.status==="busy").length}},props:{site:Object,certificates:Object},methods:{startPollingInterval(){this.pollingInterval=setInterval(function(){this.poll()}.bind(this),3e3)},clearPollingInterval(){clearTimeout(this.pollingInterval),this.pollingInterval=null},poll(){this.$inertia.get(this.route("sites.certificates.index",this.site.id),{only:["certificates"],preserveScroll:!0})},submit(){this.sending=!0,this.$inertia.post(this.route("sites.certificates.store",this.site.id),this.form,{onFinish:()=>{this.sending=!1,Object.keys(this.$page.props.errors).length||this.setDomainData()}})},confirmDelete(i){P({title:this.__("Are you sure?"),message:"Your certificate will be deleted permanently, this action cannot be undone.",onConfirm:()=>this.delete(i)})},delete(i){this.$inertia.delete(this.route("sites.certificates.delete",[this.site.id,i.id]),{preserveScroll:!0})},setDomainData(i){this.form.certificate=null,this.form.private=null,this.site.domain.startsWith("www.")?this.form.domain=this.site.domain+","+this.site.domain.replace("www.",""):this.form.domain=this.site.domain+",www."+this.site.domain,i&&(this.form.domain=this.form.domain+","+this.site.aliases.join(","))}},beforeDestroy(){this.clearPollingInterval()}};var R=function(){var t=this,e=t._self._c;return e("Page",[e("TopBar",{attrs:{breadcrumbs:t.breadcrumbs}}),e("Content",[e("Container",[e("PageHeader",{scopedSlots:t._u([{key:"start",fn:function(){return[e("PageHeaderTitle",[t._v(t._s(t.__("Certificates")))])]},proxy:!0}])}),e("PageBody",[e("SettingsLayout",{scopedSlots:t._u([{key:"nav",fn:function(){return[e("Tabs",{attrs:{site:t.site}})]},proxy:!0},{key:"segments",fn:function(){return[e("SettingsSegment",{scopedSlots:t._u([{key:"title",fn:function(){return[t._v(t._s(t.__("Create")))]},proxy:!0},{key:"subtitle",fn:function(){return[t.form.type==="letsencrypt"?e("span",{domProps:{textContent:t._s(t.__("Request a new Let's Encrypt certificate here. Make sure that the DNS has fully propagated."))}}):t._e(),t.form.type==="custom"?e("span",{domProps:{textContent:t._s(t.__("Install your own SSL certificate here. Make sure to enter the private key and certificate."))}}):t._e()]},proxy:!0},{key:"form",fn:function(){return[e("form",{staticClass:"space-y-4",on:{submit:function(r){return r.preventDefault(),t.submit.apply(null,arguments)}}},[e("FormSelect",{attrs:{label:t.__("Select certificate type")},model:{value:t.form.type,callback:function(r){t.$set(t.form,"type",r)},expression:"form.type"}},[e("option",{attrs:{value:"letsencrypt"}},[t._v("Let's Encrypt certificate")]),e("option",{attrs:{value:"custom"}},[t._v("Custom SSL certificate")])]),e("div",[t.form.type==="letsencrypt"?e("FormInput",{attrs:{label:t.__("Domain"),errors:t.$page.props.errors.domain},model:{value:t.form.domain,callback:function(r){t.$set(t.form,"domain",r)},expression:"form.domain"}}):t._e(),e("button",{staticClass:"text-primary text-small border-b border-dotted",attrs:{type:"button"},on:{click:function(r){return t.setDomainData(!0)}}},[t._v("Click here to add aliases")])],1),t.form.type==="custom"?e("FormTextarea",{attrs:{label:t.__("Private key"),errors:t.$page.props.errors.private,rows:"2"},model:{value:t.form.private,callback:function(r){t.$set(t.form,"private",r)},expression:"form.private"}}):t._e(),t.form.type==="custom"?e("FormTextarea",{attrs:{label:t.__("Certificate"),errors:t.$page.props.errors.certificate,rows:"2"},model:{value:t.form.certificate,callback:function(r){t.$set(t.form,"certificate",r)},expression:"form.certificate"}}):t._e(),e("FormActions",[e("Button",[t._v(t._s(t.__("Save changes")))])],1)],1)]},proxy:!0}])}),t.certificates.meta.total?t._e():e("EmptyImage"),t.certificates.meta.total?e("SettingsSegment",{scopedSlots:t._u([{key:"title",fn:function(){return[t._v(t._s(t.__("Certificates")))]},proxy:!0},{key:"content",fn:function(){return[e("div",[e("Table",{attrs:{caption:"Cronjob list overview"}},[e("TableHead",[e("TableRow",[e("TableHeader"),e("TableHeader",[t._v(t._s(t.__("Certificate")))]),e("TableHeader")],1)],1),e("TableBody",t._l(t.certificates.data,function(r){return e("TableRow",{key:r.id},[e("TableData",[e("StatusBubble",{attrs:{variant:r.status==="busy"?"gray":"success"}})],1),e("TableData",[t._v(t._s(r.domain))]),e("TableData",[e("Button",{attrs:{disabled:r.status==="busy",variant:"danger",size:"sm"},on:{click:function(M){return t.confirmDelete(r)}}},[t._v("Delete ")])],1)],1)}),1)],1)],1),e("pagination",{attrs:{links:t.certificates}})]},proxy:!0}],null,!1,728015176)}):t._e()]},proxy:!0}])})],1)],1)],1)],1)},E=[],A=L(j,R,E,!1,null,null,null,null);const Yt=A.exports;export{Yt as default};
|