New Case Study:See how Anthropic automated 95% of dependency reviews with Socket.Learn More
Socket
Sign inDemoInstall
Socket

@clevercloud/components

Package Overview
Dependencies
Maintainers
6
Versions
173
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

@clevercloud/components - npm Package Compare versions

Comparing version 3.0.2 to 4.0.0-beta.0

dist/assets/backup.svg

4

dist/addon/cc-addon-admin.js

@@ -1,2 +0,2 @@

import"../molecules/cc-block-section.js";import"../molecules/cc-block.js";import{css as t,html as e,LitElement as i}from"lit-element";import{dispatchCustomEvent as n}from"../lib/events.js";import{i18n as c}from"../lib/i18n.js";export class CcAddonAdmin extends i{static get properties(){return{addon:{type:Object,attribute:!1},error:{type:String},saving:{type:Boolean},_name:{type:String,attribute:!1},_skeleton:{type:Boolean,attribute:!1},_tags:{type:Array,attribute:!1}}}constructor(){super(),this.addon=null,this.error=!1,this.saving=!1}set addon(t){this._skeleton=null==t,this._name=this._skeleton?"":t.name,this._tags=this._skeleton?[]:t.tags}_onNameInput({detail:t}){this._name=t}_onNameSubmit(){n(this,"update-name",{name:this._name})}_onTagsInput({detail:t}){this._tags=t}_onTagsSubmit(){n(this,"update-tags",{tags:this._tags})}_onDeleteSubmit(){n(this,"delete-addon")}_onDismissError(){this.error=!1}render(){const t=!1!==this.error||this.saving,i="loading"===this.error;return e`<cc-block><div slot=title>${c("cc-addon-admin.admin")}</div>${i?"":e`<cc-block-section><div slot=title>${c("cc-addon-admin.addon-name")}</div><div slot=info></div><div class=one-line-form><cc-input-text ?skeleton=${this._skeleton} ?disabled=${t} .value=${this._name} @cc-input-text:input=${this._onNameInput} @cc-input-text:requestimplicitsubmit=${this._onNameSubmit}></cc-input-text><cc-button primary ?skeleton=${this._skeleton} ?disabled=${t} @cc-button:click=${this._onNameSubmit}>${c("cc-addon-admin.update")}</cc-button></div></cc-block-section><cc-block-section><div slot=title>${c("cc-addon-admin.tags")}</div><div slot=info>${c("cc-addon-admin.tags-description")}</div><div class=one-line-form><cc-input-text ?skeleton=${this._skeleton} ?disabled=${t} .tags=${this._tags} placeholder=${c("cc-addon-admin.tags-empty")} @cc-input-text:tags=${this._onTagsInput} @cc-input-text:requestimplicitsubmit=${this._onTagsSubmit}></cc-input-text><cc-button primary ?skeleton=${this._skeleton} ?disabled=${t} @cc-button:click=${this._onTagsSubmit}>${c("cc-addon-admin.tags-update")}</cc-button></div></cc-block-section><cc-block-section><div slot=title class=danger>${c("cc-addon-admin.danger-zone")}</div><div slot=info>${c("cc-addon-admin.delete-unavailable")}<br>${c("cc-addon-admin.delete-24h-delay")}<br>${c("cc-addon-admin.delete-keep-backups")}</div><div><cc-button danger ?skeleton=${this._skeleton} ?disabled=${t} @cc-button:click=${this._onDeleteSubmit}>${c("cc-addon-admin.delete")}</cc-button></div></cc-block-section>`} ${i?e`<cc-error>${c("cc-addon-admin.error-loading")}</cc-error>`:""} ${this.saving?e`<cc-loader slot=overlay></cc-loader>`:""} ${"saving"===this.error?e`<div slot=overlay><cc-error mode=confirm @cc-error:ok=${this._onDismissError}>${c("cc-addon-admin.error-saving")}</cc-error></div>`:""}</cc-block>`}static get styles(){return[t`:host{display:block}.one-line-form{display:flex}.one-line-form cc-input-text{flex:1 1 10rem;margin-right:.5rem}cc-button,cc-input-text{margin:0}`]}}window.customElements.define("cc-addon-admin",CcAddonAdmin);
//# sourceMappingURL=cc-addon-admin.js.map
import{LitElement as t,html as e,css as i}from"lit-element";import{dispatchCustomEvent as o}from"../lib/events.js";import{i18n as n}from"../lib/i18n.js";import"../atoms/cc-input-text.js";import"../atoms/cc-loader.js";import"../molecules/cc-block-section.js";import"../molecules/cc-block.js";import"../molecules/cc-error.js";class s extends t{static get properties(){return{addon:{type:Object},error:{type:String},saving:{type:Boolean},_name:{type:String,attribute:!1},_skeleton:{type:Boolean,attribute:!1},_tags:{type:Array,attribute:!1}}}constructor(){super(),this._skeleton=!1,this.addon=null,this.error=!1,this.saving=!1}set addon(t){this._skeleton=null==t,this._name=this._skeleton?"":t.name,this._tags=this._skeleton?[]:t.tags}_onNameInput({detail:t}){this._name=t}_onNameSubmit(){o(this,"update-name",{name:this._name})}_onTagsInput({detail:t}){this._tags=t}_onTagsSubmit(){o(this,"update-tags",{tags:this._tags})}_onDeleteSubmit(){o(this,"delete-addon")}_onDismissError(){this.error=!1}render(){const t=!1!==this.error||this.saving,i="loading"===this.error;return e`<cc-block><div slot=title>${n("cc-addon-admin.admin")}</div>${i?"":e`<cc-block-section><div slot=title>${n("cc-addon-admin.addon-name")}</div><div slot=info></div><div class=one-line-form><cc-input-text ?skeleton=${this._skeleton} ?disabled=${t} .value=${this._name} @cc-input-text:input=${this._onNameInput} @cc-input-text:requestimplicitsubmit=${this._onNameSubmit}></cc-input-text><cc-button primary ?skeleton=${this._skeleton} ?disabled=${t} @cc-button:click=${this._onNameSubmit}>${n("cc-addon-admin.update")}</cc-button></div></cc-block-section><cc-block-section><div slot=title>${n("cc-addon-admin.tags")}</div><div slot=info>${n("cc-addon-admin.tags-description")}</div><div class=one-line-form><cc-input-text ?skeleton=${this._skeleton} ?disabled=${t} .tags=${this._tags} placeholder=${n("cc-addon-admin.tags-empty")} @cc-input-text:tags=${this._onTagsInput} @cc-input-text:requestimplicitsubmit=${this._onTagsSubmit}></cc-input-text><cc-button primary ?skeleton=${this._skeleton} ?disabled=${t} @cc-button:click=${this._onTagsSubmit}>${n("cc-addon-admin.tags-update")}</cc-button></div></cc-block-section><cc-block-section><div slot=title class=danger>${n("cc-addon-admin.danger-zone")}</div><div slot=info>${n("cc-addon-admin.delete-description")}</div><div><cc-button danger ?skeleton=${this._skeleton} ?disabled=${t} @cc-button:click=${this._onDeleteSubmit}>${n("cc-addon-admin.delete")}</cc-button></div></cc-block-section>`} ${i?e`<cc-error>${n("cc-addon-admin.error-loading")}</cc-error>`:""} ${this.saving?e`<cc-loader slot=overlay></cc-loader>`:""} ${"saving"===this.error?e`<div slot=overlay><cc-error mode=confirm @cc-error:ok=${this._onDismissError}>${n("cc-addon-admin.error-saving")}</cc-error></div>`:""}</cc-block>`}static get styles(){return[i`:host{display:block}.one-line-form{display:flex}.one-line-form cc-input-text{flex:1 1 10rem;margin-right:.5rem}`]}}window.customElements.define("cc-addon-admin",s);export{s as CcAddonAdmin};
//# sourceMappingURL=cc-addon-admin.js.map

@@ -1,2 +0,2 @@

import"../atoms/cc-button.js";import"../atoms/cc-input-text.js";import"../molecules/cc-block-section.js";import"../molecules/cc-block.js";import"../molecules/cc-error.js";import e from"./backup.svg";import t from"../overview/close.svg";import{ccLink as c,linkStyles as s}from"../templates/cc-link.js";import{classMap as o}from"lit-html/directives/class-map.js";import{css as i,html as a,LitElement as r}from"lit-element";import{fakeString as l}from"../lib/fake-strings.js";import{i18n as d}from"../lib/i18n.js";import{skeleton as n}from"../styles/skeleton.js";export class CcAddonBackups extends r{static get properties(){return{backups:{type:Object,attribute:!1},error:{type:Boolean},_overlay:{type:String,attribute:!1},_selectedBackup:{type:Object,attribute:!1}}}constructor(){super(),this.error=!1,this._overlay=null,this._selectedBackup=null}static get skeletonBackups(){const e={createdAt:new Date,expiresAt:new Date};return{providerId:"",passwordForCommand:"",list:new Array(5).fill(e)}}_getDescription(e){switch(e){case"es-addon":return d("cc-addon-backups.description.es-addon");case"es-addon-old":return d("cc-addon-backups.description.es-addon-old");default:return l(150)}}_getBackupText({createdAt:e,expiresAt:t}){return null!=t?d("cc-addon-backups.text",{createdAt:e,expiresAt:t}):d("cc-addon-backups.text.user-defined-retention",{createdAt:e})}_getBackupLink(e){switch(e){case"es-addon":return d("cc-addon-backups.link.es-addon");case"es-addon-old":return d("cc-addon-backups.link.es-addon-old");default:return l(18)}}_displaySectionWithService(e){switch(e){case"es-addon":return!0;case"es-addon-old":default:return!1}}_getRestoreWithServiceTitle(e){switch(e){case"es-addon":return d("cc-addon-backups.restore.with-service.title.es-addon");default:return l(20)}}_getRestoreWithServiceDescription(e,t){switch(e){case"es-addon":return d("cc-addon-backups.restore.with-service.description.es-addon",{href:t});default:return l(80)}}_getManualRestoreDescription(e){switch(e){case"es-addon":case"es-addon-old":return d("cc-addon-backups.restore.manual.description.es-addon");default:return l(70)}}_getDeleteWithServiceTitle(e){switch(e){case"es-addon":return d("cc-addon-backups.delete.with-service.title.es-addon");default:return l(20)}}_getDeleteWithServiceDescription(e,t){switch(e){case"es-addon":return d("cc-addon-backups.delete.with-service.description.es-addon",{href:t});default:return l(80)}}_getManualDeleteDescription(e){switch(e){case"es-addon":case"es-addon-old":return d("cc-addon-backups.delete.manual.description.es-addon");default:return l(70)}}_onOpenOverlay(e,t,c){this._overlay=t,this._selectedBackup=c,this._overlayTarget=e.target,this.updateComplete.then(()=>{this.shadowRoot.querySelector(".overlay cc-button").focus(),this.shadowRoot.querySelector(".overlay").scrollIntoView({behavior:"smooth",block:"center"})})}_onCloseOverlay(){this._overlay=null,this._selectedBackup=null,this.updateComplete.then(()=>{this._overlayTarget.focus(),this._overlayTarget.scrollIntoView({behavior:"smooth",block:"center"}),this._overlayTarget=null})}render(){const s=null==this.backups,{providerId:i,list:r,passwordForCommand:l}=s?CcAddonBackups.skeletonBackups:this.backups,n=!this.error&&r.length>0,u=!this.error&&0===r.length;return a`<cc-block><div slot=title>${d("cc-addon-backups.title")}</div>${n?a`<div><span class=${o({skeleton:s})}>${this._getDescription(i)}</span></div><div class=backup-list>${r.map(t=>a`<div class=backup><span class=backup-icon><img src=${e} alt=""></span><span class=backup-text><span class="${o({skeleton:s})} backup-text-details">${this._getBackupText(t)}</span><br>${c(null==this._overlay?t.url:null,this._getBackupLink(i),s)}<cc-button link ?disabled=${null!=this._overlay} ?skeleton=${s} @cc-button:click=${e=>this._onOpenOverlay(e,"restore",t)}>${d("cc-addon-backups.restore.btn")}</cc-button><cc-button link ?disabled=${null!=this._overlay} ?skeleton=${s} @cc-button:click=${e=>this._onOpenOverlay(e,"delete",t)}>${d("cc-addon-backups.delete.btn")}</cc-button></span></div>`)}</div>`:""} ${u?a`<div class=cc-block_empty-msg>${d("cc-addon-backups.empty")}</div>`:""} ${this.error?a`<cc-error>${d("cc-addon-backups.loading-error")}</cc-error>`:""} ${"restore"===this._overlay?a`<div slot=overlay><cc-block class=overlay><div slot=title>${d("cc-addon-backups.restore",this._selectedBackup)}</div><cc-button slot=button image=${t} @cc-button:click=${this._onCloseOverlay}></cc-button>${this._displaySectionWithService(i)?a`<cc-block-section><div slot=title>${this._getRestoreWithServiceTitle(i)}</div><div>${this._getRestoreWithServiceDescription(i,this._selectedBackup.url)}</div></cc-block-section>`:""}<cc-block-section><div slot=title>${d("cc-addon-backups.restore.manual.title")}</div><div>${this._getManualRestoreDescription(i)}</div><cc-input-text readonly=readonly clipboard value=${this._selectedBackup.restoreCommand}></cc-input-text><div>${d("cc-addon-backups.command-password")}</div><cc-input-text readonly=readonly clipboard secret value=${l}></cc-input-text></cc-block-section></cc-block></div>`:""} ${"delete"===this._overlay?a`<div slot=overlay><cc-block class=overlay><div slot=title>${d("cc-addon-backups.delete",this._selectedBackup)}</div><cc-button slot=button image=${t} @cc-button:click=${this._onCloseOverlay}></cc-button>${this._displaySectionWithService(i)?a`<cc-block-section><div slot=title>${this._getDeleteWithServiceTitle(i)}</div><div>${this._getDeleteWithServiceDescription(i,this._selectedBackup.url)}</div></cc-block-section>`:""}<cc-block-section><div slot=title>${d("cc-addon-backups.delete.manual.title")}</div><div>${this._getManualDeleteDescription(i)}</div><cc-input-text readonly=readonly clipboard value=${this._selectedBackup.deleteCommand}></cc-input-text><div>${d("cc-addon-backups.command-password")}</div><cc-input-text readonly=readonly clipboard secret value=${l}></cc-input-text></cc-block-section></cc-block></div>`:""}</cc-block>`}static get styles(){return[n,s,i`:host{display:grid;grid-gap:1rem;line-height:1.5}.backup-list{display:grid;grid-gap:1.5rem}.backup{display:flex;line-height:1.5rem}.backup-icon,.backup-text{margin-right:.5rem}.backup-icon{flex:0 0 auto;height:1.5rem;width:1.5rem}.backup-icon img{display:block;height:100%;width:100%}.backup-text{color:#555}.backup-text-details:not(.skeleton) strong{color:#000}[title]{cursor:help}cc-input-text{margin:0}.skeleton{background-color:#bbb}.overlay{box-shadow:0 0 1rem #aaa;max-width:80%;margin:2rem}.cc-link,cc-button[link]{margin-right:.5rem}`]}}window.customElements.define("cc-addon-backups",CcAddonBackups);
//# sourceMappingURL=cc-addon-backups.js.map
import{LitElement as e,html as t,css as c}from"lit-element";import{classMap as s}from"lit-html/directives/class-map.js";import{assetUrl as i}from"../lib/asset-url.js";import{i18n as o}from"../lib/i18n.js";import{skeletonStyles as a}from"../styles/skeleton.js";import"../atoms/cc-input-text.js";import"../molecules/cc-block-section.js";import{ccLink as r,linkStyles as l}from"../templates/cc-link.js";import"../atoms/cc-button.js";import"../molecules/cc-block.js";import"../molecules/cc-error.js";import{fakeString as d}from"../lib/fake-strings.js";const n=i(import.meta,"../assets/backup.svg"),u=i(import.meta,"../assets/close.svg"),p={providerId:"",passwordForCommand:"",list:new Array(5).fill({createdAt:new Date,expiresAt:new Date})};class b extends e{static get properties(){return{backups:{type:Object},error:{type:Boolean},_overlay:{type:String,attribute:!1},_selectedBackup:{type:Object,attribute:!1}}}constructor(){super(),this.error=!1,this._overlay=null,this._selectedBackup=null}_getDescription(e){switch(e){case"es-addon":return o("cc-addon-backups.description.es-addon");case"es-addon-old":return o("cc-addon-backups.description.es-addon-old");default:return d(150)}}_getBackupText({createdAt:e,expiresAt:t}){return null!=t?o("cc-addon-backups.text",{createdAt:e,expiresAt:t}):o("cc-addon-backups.text.user-defined-retention",{createdAt:e})}_getBackupLink(e){switch(e){case"es-addon":return o("cc-addon-backups.link.es-addon");case"es-addon-old":return o("cc-addon-backups.link.es-addon-old");default:return d(18)}}_displaySectionWithService(e){switch(e){case"es-addon":return!0;case"es-addon-old":default:return!1}}_getRestoreWithServiceTitle(e){switch(e){case"es-addon":return o("cc-addon-backups.restore.with-service.title.es-addon");default:return d(20)}}_getRestoreWithServiceDescription(e,t){switch(e){case"es-addon":return o("cc-addon-backups.restore.with-service.description.es-addon",{href:t});default:return d(80)}}_getManualRestoreDescription(e){switch(e){case"es-addon":case"es-addon-old":return o("cc-addon-backups.restore.manual.description.es-addon");default:return d(70)}}_getDeleteWithServiceTitle(e){switch(e){case"es-addon":return o("cc-addon-backups.delete.with-service.title.es-addon");default:return d(20)}}_getDeleteWithServiceDescription(e,t){switch(e){case"es-addon":return o("cc-addon-backups.delete.with-service.description.es-addon",{href:t});default:return d(80)}}_getManualDeleteDescription(e){switch(e){case"es-addon":case"es-addon-old":return o("cc-addon-backups.delete.manual.description.es-addon");default:return d(70)}}_onOpenOverlay(e,t,c){this._overlay=t,this._selectedBackup=c,this._overlayTarget=e.target,this.updateComplete.then(()=>{this.shadowRoot.querySelector(".overlay cc-button").focus(),this.shadowRoot.querySelector(".overlay").scrollIntoView({behavior:"smooth",block:"center"})})}_onCloseOverlay(){this._overlay=null,this._selectedBackup=null,this.updateComplete.then(()=>{this._overlayTarget.focus(),this._overlayTarget.scrollIntoView({behavior:"smooth",block:"center"}),this._overlayTarget=null})}render(){const e=null==this.backups,{providerId:c,list:i,passwordForCommand:a}=e?p:this.backups,l=!this.error&&i.length>0,d=!this.error&&0===i.length;return t`<cc-block><div slot=title>${o("cc-addon-backups.title")}</div>${l?t`<div><span class=${s({skeleton:e})}>${this._getDescription(c)}</span></div><div class=backup-list>${i.map(i=>t`<div class=backup><span class=backup-icon><img src=${n} alt=""></span><span class=backup-text><span class="${s({skeleton:e})} backup-text-details">${this._getBackupText(i)}</span><br>${r(null==this._overlay?i.url:null,this._getBackupLink(c),e)}<cc-button link ?disabled=${null!=this._overlay} ?skeleton=${e} @cc-button:click=${e=>this._onOpenOverlay(e,"restore",i)}>${o("cc-addon-backups.restore.btn")}</cc-button><cc-button link ?disabled=${null!=this._overlay} ?skeleton=${e} @cc-button:click=${e=>this._onOpenOverlay(e,"delete",i)}>${o("cc-addon-backups.delete.btn")}</cc-button></span></div>`)}</div>`:""} ${d?t`<div class=cc-block_empty-msg>${o("cc-addon-backups.empty")}</div>`:""} ${this.error?t`<cc-error>${o("cc-addon-backups.loading-error")}</cc-error>`:""} ${"restore"===this._overlay?t`<div slot=overlay><cc-block class=overlay><div slot=title>${o("cc-addon-backups.restore",this._selectedBackup)}</div><cc-button slot=button image=${u} @cc-button:click=${this._onCloseOverlay}></cc-button>${this._displaySectionWithService(c)?t`<cc-block-section><div slot=title>${this._getRestoreWithServiceTitle(c)}</div><div>${this._getRestoreWithServiceDescription(c,this._selectedBackup.url)}</div></cc-block-section>`:""}<cc-block-section><div slot=title>${o("cc-addon-backups.restore.manual.title")}</div><div>${this._getManualRestoreDescription(c)}</div><cc-input-text readonly=readonly clipboard value=${this._selectedBackup.restoreCommand}></cc-input-text><div>${o("cc-addon-backups.command-password")}</div><cc-input-text readonly=readonly clipboard secret value=${a}></cc-input-text></cc-block-section></cc-block></div>`:""} ${"delete"===this._overlay?t`<div slot=overlay><cc-block class=overlay><div slot=title>${o("cc-addon-backups.delete",this._selectedBackup)}</div><cc-button slot=button image=${u} @cc-button:click=${this._onCloseOverlay}></cc-button>${this._displaySectionWithService(c)?t`<cc-block-section><div slot=title>${this._getDeleteWithServiceTitle(c)}</div><div>${this._getDeleteWithServiceDescription(c,this._selectedBackup.url)}</div></cc-block-section>`:""}<cc-block-section><div slot=title>${o("cc-addon-backups.delete.manual.title")}</div><div>${this._getManualDeleteDescription(c)}</div><cc-input-text readonly=readonly clipboard value=${this._selectedBackup.deleteCommand}></cc-input-text><div>${o("cc-addon-backups.command-password")}</div><cc-input-text readonly=readonly clipboard secret value=${a}></cc-input-text></cc-block-section></cc-block></div>`:""}</cc-block>`}static get styles(){return[a,l,c`:host{display:grid;grid-gap:1rem;line-height:1.5}.backup-list{display:grid;grid-gap:1.5rem}.backup{display:flex;line-height:1.5rem}.backup-icon,.backup-text{margin-right:.5rem}.backup-icon{flex:0 0 auto;height:1.5rem;width:1.5rem}.backup-icon img{display:block;height:100%;width:100%}.backup-text{color:#555}.backup-text-details:not(.skeleton) strong{color:#000}[title]{cursor:help}.skeleton{background-color:#bbb}.overlay{box-shadow:0 0 1rem #aaa;max-width:80%;margin:2rem}.cc-link,cc-button[link]{margin-right:.5rem;vertical-align:baseline}`]}}window.customElements.define("cc-addon-backups",b);export{b as CcAddonBackups};
//# sourceMappingURL=cc-addon-backups.js.map

@@ -1,2 +0,2 @@

import"../atoms/cc-input-text.js";import"../molecules/cc-block.js";import"../molecules/cc-error.js";import{css as e,html as t,LitElement as r}from"lit-element";import{i18n as i}from"../lib/i18n.js";import{ifDefined as c}from"lit-html/directives/if-defined.js";import{skeleton as s}from"../styles/skeleton.js";export class CcAddonCredentials extends r{static get properties(){return{credentials:{type:Array,attribute:!1},error:{type:Boolean},icon:{type:String},name:{type:String},toggleState:{type:Boolean,attribute:"toggle-state"},type:{type:String}}}constructor(){super(),this.error=!1,this.toggleState="off"}_getDescription(e){switch(e){case"apm":return i("cc-addon-credentials.description.apm");case"elasticsearch":return i("cc-addon-credentials.description.elasticsearch");case"kibana":return i("cc-addon-credentials.description.kibana");default:return null}}_getFieldName(e){switch(e){case"auth-token":return i("cc-addon-credentials.field.auth-token");case"host":return i("cc-addon-credentials.field.host");case"password":return i("cc-addon-credentials.field.password");case"user":return i("cc-addon-credentials.field.user");default:return null}}render(){return t`<cc-block icon=${this.icon} state=${this.toggleState}><div slot=title>${i("cc-addon-credentials.title",{name:this.name})}</div>${this.error?"":t`<div>${this._getDescription(this.type)}</div>${null!=this.credentials?t`<div class=credential-list>${this.credentials.map(({type:e,secret:r,value:i})=>t`<cc-input-text readonly=readonly clipboard ?secret=${r} ?skeleton=${null==i} value=${c(i)} label=${this._getFieldName(e)}></cc-input-text>`)}</div>`:""}`} ${this.error?t`<cc-error>${i("cc-addon-credentials.loading-error")}</cc-error>`:""}</cc-block>`}static get styles(){return[s,e`:host{display:block}.credential-list{display:flex;flex-wrap:wrap;margin:-1rem;padding:.5rem}cc-input-text{flex:1 0 18rem;margin:.5rem}.skeleton{background-color:#bbb}`]}}window.customElements.define("cc-addon-credentials",CcAddonCredentials);
//# sourceMappingURL=cc-addon-credentials.js.map
import{LitElement as e,html as t,css as r}from"lit-element";import{ifDefined as c}from"lit-html/directives/if-defined.js";import{i18n as i}from"../lib/i18n.js";import{skeletonStyles as s}from"../styles/skeleton.js";import"../atoms/cc-input-text.js";import"../molecules/cc-block.js";import"../molecules/cc-error.js";import"../atoms/cc-flex-gap.js";class a extends e{static get properties(){return{credentials:{type:Array},error:{type:Boolean},icon:{type:String},name:{type:String},toggleState:{type:Boolean,attribute:"toggle-state"},type:{type:String}}}constructor(){super(),this.error=!1,this.toggleState="off"}_getDescription(e){switch(e){case"apm":return i("cc-addon-credentials.description.apm");case"elasticsearch":return i("cc-addon-credentials.description.elasticsearch");case"kibana":return i("cc-addon-credentials.description.kibana");default:return""}}_getFieldName(e){switch(e){case"auth-token":return i("cc-addon-credentials.field.auth-token");case"host":return i("cc-addon-credentials.field.host");case"password":return i("cc-addon-credentials.field.password");case"user":return i("cc-addon-credentials.field.user");default:return""}}render(){return t`<cc-block icon=${this.icon} state=${this.toggleState}><div slot=title>${i("cc-addon-credentials.title",{name:this.name})}</div>${this.error?"":t`<div>${this._getDescription(this.type)}</div>${null!=this.credentials?t`<cc-flex-gap class=credential-list>${this.credentials.map(({type:e,secret:r,value:i})=>t`<cc-input-text readonly=readonly clipboard ?secret=${r} ?skeleton=${null==i} value=${c(i)} label=${this._getFieldName(e)}></cc-input-text>`)}</cc-flex-gap>`:""}`} ${this.error?t`<cc-error>${i("cc-addon-credentials.loading-error")}</cc-error>`:""}</cc-block>`}static get styles(){return[s,r`:host{display:block}.credential-list{--cc-gap:1rem}cc-input-text{flex:1 0 18rem}.skeleton{background-color:#bbb}`]}}window.customElements.define("cc-addon-credentials",a);export{a as CcAddonCredentials};
//# sourceMappingURL=cc-addon-credentials.js.map

@@ -1,2 +0,2 @@

import"../molecules/cc-block.js";import"../molecules/cc-error.js";import e from"./cpu.svg";import r from"./disk.svg";import a from"./ram.svg";import{classMap as t}from"lit-html/directives/class-map.js";import{css as o,html as s,LitElement as c}from"lit-element";import{i18n as i}from"../lib/i18n.js";import{skeleton as n}from"../styles/skeleton.js";const l={cpus:e,vcpus:e,disk:r,memory:a,ram:a},d=["cpus","vcpus","memory","disk"];export class CcAddonFeatures extends c{static get properties(){return{error:{type:Boolean},features:{type:Array,attribute:!1}}}constructor(){super(),this.error=!1}static get skeletonFeatures(){return[{name:"??????",value:"????????"},{name:"????",value:"??"},{name:"?????",value:"????"},{name:"???????",value:"????????"}]}_getFeatureName(e,r){return"disk"===e?i("cc-addon-features.feature-name.disk"):"nodes"===e?i("cc-addon-features.feature-name.nodes"):"memory"===e?i("cc-addon-features.feature-name.memory"):r}_getFeatureValue(e,r){return"dedicated"===e?i("cc-addon-features.feature-value.dedicated"):"no"===e?i("cc-addon-features.feature-value.no"):"yes"===e?i("cc-addon-features.feature-value.yes"):r}_sortFeatures(e){const r=e.slice(0);return r.sort((e,r)=>{const a=d.indexOf(e.name.toLowerCase())+1||d.length+1,t=d.indexOf(r.name.toLowerCase())+1||d.length+1;return String(a).localeCompare(String(t),void 0,{numeric:!0})}),r}render(){const e=null==this.features,r=(e?CcAddonFeatures.skeletonFeatures:this.features).map(e=>{const r=e.name.toLowerCase(),a=e.value.toLowerCase();return{...e,icon:l[r],name:this._getFeatureName(r,e.name),value:this._getFeatureValue(a,e.value)}}),a=this._sortFeatures(r);return s`<cc-block><div slot=title>${i("cc-addon-features.title")}</div>${this.error?"":s`<div>${i("cc-addon-features.details")}</div><div class=feature-list>${a.map(r=>s`<div class="${t({skeleton:e})} feature">${null!=r.icon?s`<div class=feature-icon><img class=feature-icon_img src=${r.icon} alt=""></div>`:""}<div class=feature-name>${r.name}</div><div class=feature-value>${r.value}</div></div>`)}</div>`} ${this.error?s`<cc-error>${i("cc-addon-features.loading-error")}</cc-error>`:""}</cc-block>`}static get styles(){return[n,o`:host{display:block}.feature-list{--color:#496D93;--gap:1rem;--bdw:2px;--padding:0.6rem;display:flex;flex-wrap:wrap;margin:calc(var(--gap)/ -2)}.feature{background-color:var(--color);border-radius:calc(2 * var(--bdw));border:var(--bdw) solid var(--color);display:flex;flex-wrap:wrap;margin:calc(var(--gap)/ 2)}.feature-icon{margin:calc(var(--padding)/ 2) 0 calc(var(--padding)/ 2) var(--padding);position:relative;width:1.3rem}.feature-icon_img{display:block;height:100%;left:0;object-fit:contain;object-position:center center;position:absolute;top:0;width:100%}.feature-name,.feature-value{box-sizing:border-box;flex:1 1 auto;font-weight:700;padding:calc(var(--padding)/ 2) var(--padding);text-align:center}.feature-name{color:#fff}.skeleton .feature-name{color:var(--color)}.feature-value{background-color:#fff;color:var(--color);border-radius:var(--bdw)}.skeleton .feature-value{color:#fff}`]}}window.customElements.define("cc-addon-features",CcAddonFeatures);
//# sourceMappingURL=cc-addon-features.js.map
import{LitElement as e,html as r,css as a}from"lit-element";import{classMap as t}from"lit-html/directives/class-map.js";import{assetUrl as o}from"../lib/asset-url.js";import{i18n as s}from"../lib/i18n.js";import{skeletonStyles as c}from"../styles/skeleton.js";import"../molecules/cc-block.js";import"../molecules/cc-error.js";import"../atoms/cc-flex-gap.js";const i=o(import.meta,"../assets/cpu.svg"),l=o(import.meta,"../assets/disk.svg"),n=o(import.meta,"../assets/ram.svg"),d={cpus:i,vcpus:i,disk:l,memory:n,ram:n},u=["cpus","vcpus","memory","disk"],m=[{name:"??????",value:"????????"},{name:"????",value:"??"},{name:"?????",value:"????"},{name:"???????",value:"????????"}];class f extends e{static get properties(){return{error:{type:Boolean},features:{type:Array}}}constructor(){super(),this.error=!1}_getFeatureName(e,r){return"disk"===e?s("cc-addon-features.feature-name.disk"):"nodes"===e?s("cc-addon-features.feature-name.nodes"):"memory"===e?s("cc-addon-features.feature-name.memory"):r}_getFeatureValue(e,r){return"dedicated"===e?s("cc-addon-features.feature-value.dedicated"):"no"===e?s("cc-addon-features.feature-value.no"):"yes"===e?s("cc-addon-features.feature-value.yes"):r}_sortFeatures(e){const r=e.slice(0);return r.sort((e,r)=>{const a=u.indexOf(e.name.toLowerCase())+1||u.length+1,t=u.indexOf(r.name.toLowerCase())+1||u.length+1;return String(a).localeCompare(String(t),void 0,{numeric:!0})}),r}render(){const e=null==this.features,a=(e?m:this.features).map(e=>{const r=e.name.toLowerCase(),a=e.value.toLowerCase();return{...e,icon:d[r],name:this._getFeatureName(r,e.name),value:this._getFeatureValue(a,e.value)}}),o=this._sortFeatures(a);return r`<cc-block><div slot=title>${s("cc-addon-features.title")}</div>${this.error?"":r`<div>${s("cc-addon-features.details")}</div><cc-flex-gap class=feature-list>${o.map(a=>r`<div class="${t({skeleton:e})} feature">${null!=a.icon?r`<div class=feature-icon><img class=feature-icon_img src=${a.icon} alt=""></div>`:""}<div class=feature-name>${a.name}</div><div class=feature-value>${a.value}</div></div>`)}</cc-flex-gap>`} ${this.error?r`<cc-error>${s("cc-addon-features.loading-error")}</cc-error>`:""}</cc-block>`}static get styles(){return[c,a`:host{display:block}.feature-list{--bdw:2px;--cc-gap:1rem;--color:#496D93;--padding:0.6rem}.feature{background-color:var(--color);border-radius:calc(2 * var(--bdw));border:var(--bdw) solid var(--color);display:flex;flex-wrap:wrap}.feature-icon{margin:calc(var(--padding)/ 2) 0 calc(var(--padding)/ 2) var(--padding);position:relative;width:1.3rem}.feature-icon_img{display:block;height:100%;left:0;object-fit:contain;object-position:center center;position:absolute;top:0;width:100%}.feature-name,.feature-value{box-sizing:border-box;flex:1 1 auto;font-weight:700;padding:calc(var(--padding)/ 2) var(--padding);text-align:center}.feature-name{color:#fff}.skeleton .feature-name{color:var(--color)}.feature-value{background-color:#fff;color:var(--color);border-radius:var(--bdw)}.skeleton .feature-value{color:#fff}`]}}window.customElements.define("cc-addon-features",f);export{f as CcAddonFeatures};
//# sourceMappingURL=cc-addon-features.js.map

@@ -1,2 +0,2 @@

import"../atoms/cc-img.js";import"../molecules/cc-block.js";import"../molecules/cc-error.js";import{ccLink as e,linkStyles as i}from"../templates/cc-link.js";import{classMap as t}from"lit-html/directives/class-map.js";import{css as n,html as o,LitElement as r}from"lit-element";import{i18n as s}from"../lib/i18n.js";import{ifDefined as l}from"lit-html/directives/if-defined.js";import{skeleton as a}from"../styles/skeleton.js";export class CcAddonLinkedApps extends r{static get properties(){return{applications:{type:Array,attribute:!1},error:{type:Boolean}}}constructor(){super(),this.error=!1}static get skeletonApplications(){return[{name:"??????????????????",link:"",instance:{variant:{}},zone:"???"},{name:"???????????????????????",link:"",instance:{variant:{}},zone:"?????"},{name:"????????????????????",link:"",instance:{variant:{}},zone:"???"}]}render(){const i=null==this.applications,n=i?CcAddonLinkedApps.skeletonApplications:this.applications,r=!this.error&&n.length>0,a=!this.error&&0===n.length;return o`<cc-block><div slot=title>${s("cc-addon-linked-apps.title")}</div>${r?o`<div>${s("cc-addon-linked-apps.details")}</div>${n.map(n=>o`<div class=application><cc-img class=logo ?skeleton=${i} src=${l(n.instance.variant.logo)} title=${l(n.instance.variant.name)}></cc-img><div class=name>${e(n.link,n.name,i)}</div><div class="${t({skeleton:i})} zone">${s("cc-addon-linked-apps.zone")}${n.zone}</div></div>`)}`:""} ${a?o`<div class=cc-block_empty-msg>${s("cc-addon-linked-apps.no-linked-applications")}</div>`:""} ${this.error?o`<cc-error>${s("cc-addon-linked-apps.loading-error")}</cc-error>`:""}</cc-block>`}static get styles(){return[a,i,n`:host{display:block}.application{align-items:flex-start;display:flex;line-height:1.6rem}.logo{flex:0 0 auto;border-radius:.25rem;height:1.6rem;width:1.6rem}.name{margin-left:.5rem;margin-right:.5rem}.zone{background-color:#496d93;border-radius:.25rem;box-sizing:border-box;font-size:.9rem;font-weight:700;padding:0 .3rem}.zone:not(.skeleton){color:#fff}.name.skeleton{background-color:#bbb}[title]{cursor:help}`]}}window.customElements.define("cc-addon-linked-apps",CcAddonLinkedApps);
//# sourceMappingURL=cc-addon-linked-apps.js.map
import{LitElement as e,html as i,css as t}from"lit-element";import{classMap as o}from"lit-html/directives/class-map.js";import{ifDefined as r}from"lit-html/directives/if-defined.js";import{i18n as n}from"../lib/i18n.js";import{skeletonStyles as s}from"../styles/skeleton.js";import{ccLink as a,linkStyles as c}from"../templates/cc-link.js";import"../atoms/cc-img.js";import"../molecules/cc-block.js";import"../molecules/cc-error.js";const l=[{name:"??????????????????",link:"",instance:{variant:{}},zone:"???"},{name:"???????????????????????",link:"",instance:{variant:{}},zone:"?????"},{name:"????????????????????",link:"",instance:{variant:{}},zone:"???"}];class d extends e{static get properties(){return{applications:{type:Array},error:{type:Boolean}}}constructor(){super(),this.error=!1}render(){const e=null==this.applications,t=e?l:this.applications,s=!this.error&&t.length>0,c=!this.error&&0===t.length;return i`<cc-block><div slot=title>${n("cc-addon-linked-apps.title")}</div>${s?i`<div>${n("cc-addon-linked-apps.details")}</div>${t.map(t=>i`<div class=application><cc-img class=logo ?skeleton=${e} src=${r(t.instance.variant.logo)} title=${r(t.instance.variant.name)}></cc-img><div class=name>${a(t.link,t.name,e)}</div><div class="${o({skeleton:e})} zone">${n("cc-addon-linked-apps.zone")}${t.zone}</div></div>`)}`:""} ${c?i`<div class=cc-block_empty-msg>${n("cc-addon-linked-apps.no-linked-applications")}</div>`:""} ${this.error?i`<cc-error>${n("cc-addon-linked-apps.loading-error")}</cc-error>`:""}</cc-block>`}static get styles(){return[s,c,t`:host{display:block}.application{align-items:flex-start;display:flex;line-height:1.6rem}.logo{flex:0 0 auto;border-radius:.25rem;height:1.6rem;width:1.6rem}.name{margin-left:.5rem;margin-right:.5rem}.zone{background-color:#496d93;border-radius:.25rem;box-sizing:border-box;font-size:.9rem;font-weight:700;padding:0 .3rem}.zone:not(.skeleton){color:#fff}.name.skeleton{background-color:#bbb}[title]{cursor:help}`]}}window.customElements.define("cc-addon-linked-apps",d);export{d as CcAddonLinkedApps};
//# sourceMappingURL=cc-addon-linked-apps.js.map

@@ -1,2 +0,2 @@

import"../atoms/cc-img.js";import"../molecules/cc-error.js";import e from"../overview/info.svg";import{ccLink as r,linkStyles as s}from"../templates/cc-link.js";import{classMap as c}from"lit-html/directives/class-map.js";import{css as i,html as t,LitElement as a}from"lit-element";import{i18n as l}from"../lib/i18n.js";import{skeleton as o}from"../styles/skeleton.js";export class CcElasticsearchInfo extends a{static get properties(){return{links:{type:Array,attribute:"links"},error:{type:Boolean,attribute:"error"}}}constructor(){super(),this.error=!1}render(){const s=this.links||[],i=s.find(({type:e})=>"elasticsearch"===e),a=s.find(({type:e})=>"kibana"===e),o=s.find(({type:e})=>"apm"===e);return t`<div class=info-ribbon>${l("cc-elasticsearch-info.info")}</div>${this.error?"":t`<div class=info-text>${l("cc-elasticsearch-info.text")}</div><div class=link-list>${r("https://www.clever-cloud.com/doc/addons/elastic/",t`<cc-img src=${e}></cc-img><span>${l("cc-elasticsearch-info.link.doc")}</span>`)} ${null!=i?t`${r(i.href,t`<cc-img src=${"https://static-assets.cellar.services.clever-cloud.com/logos/elastic.svg"}></cc-img><span class=${c({skeleton:null==i.href})}>${l("cc-elasticsearch-info.link.elasticsearch")}</span>`)}`:""} ${null!=a?t`${r(a.href,t`<cc-img src=${"https://static-assets.cellar.services.clever-cloud.com/logos/elasticsearch-kibana.svg"}></cc-img><span class=${c({skeleton:null==a.href})}>${l("cc-elasticsearch-info.link.kibana")}</span>`)}`:""} ${null!=o?t`${r(o.href,t`<cc-img src=${"https://static-assets.cellar.services.clever-cloud.com/logos/elasticsearch-apm.svg"}></cc-img><span class=${c({skeleton:null==o.href})}>${l("cc-elasticsearch-info.link.apm")}</span>`)}`:""}</div>`} ${this.error?t`<cc-error>${l("cc-elasticsearch-info.error")}</cc-error>`:""}`}static get styles(){return[o,s,i`:host{background-color:#fff;border-radius:.25rem;border:1px solid #bcc2d1;display:grid;grid-gap:1rem;overflow:hidden;padding:1rem 1rem 1rem 4rem;position:relative}.link-list{display:flex;flex-wrap:wrap;margin:-.5rem -.75rem}.cc-link{align-items:center;display:flex;margin:.5rem .75rem}cc-img{border-radius:.25rem;flex:0 0 auto;height:1.5rem;margin-right:.5rem;width:1.5rem}.info-ribbon{--height:1.5rem;--width:8rem;--r:-45deg;--translate:1.6rem;background:#3a3871;color:#fff;font-size:.9rem;font-weight:700;height:var(--height);left:calc(var(--width)/ -2);line-height:var(--height);position:absolute;text-align:center;top:calc(var(--height)/ -2);transform:rotate(var(--r)) translateY(var(--translate));width:var(--width);z-index:2}.skeleton{background-color:#bbb}cc-error{text-align:center}`]}}window.customElements.define("cc-elasticsearch-info",CcElasticsearchInfo);
//# sourceMappingURL=cc-elasticsearch-info.js.map
import{LitElement as e,html as r,css as s}from"lit-element";import{classMap as c}from"lit-html/directives/class-map.js";import{assetUrl as t}from"../lib/asset-url.js";import{i18n as i}from"../lib/i18n.js";import{skeletonStyles as a}from"../styles/skeleton.js";import{ccLink as l,linkStyles as o}from"../templates/cc-link.js";import"../atoms/cc-img.js";import"../molecules/cc-error.js";import"../atoms/cc-flex-gap.js";const n=t(import.meta,"../assets/info.svg");class m extends e{static get properties(){return{links:{type:Array,attribute:"links"},error:{type:Boolean,attribute:"error"}}}constructor(){super(),this.error=!1}render(){const e=this.links||[],s=e.find(({type:e})=>"elasticsearch"===e),t=e.find(({type:e})=>"kibana"===e),a=e.find(({type:e})=>"apm"===e);return r`<div class=info-ribbon>${i("cc-elasticsearch-info.info")}</div>${this.error?"":r`<div class=info-text>${i("cc-elasticsearch-info.text")}</div><cc-flex-gap class=link-list>${l("https://www.clever-cloud.com/doc/addons/elastic/",r`<cc-img src=${n}></cc-img><span>${i("cc-elasticsearch-info.link.doc")}</span>`)} ${null!=s?r`${l(s.href,r`<cc-img src=${"https://static-assets.cellar.services.clever-cloud.com/logos/elastic.svg"}></cc-img><span class=${c({skeleton:null==s.href})}>${i("cc-elasticsearch-info.link.elasticsearch")}</span>`)}`:""} ${null!=t?r`${l(t.href,r`<cc-img src=${"https://static-assets.cellar.services.clever-cloud.com/logos/elasticsearch-kibana.svg"}></cc-img><span class=${c({skeleton:null==t.href})}>${i("cc-elasticsearch-info.link.kibana")}</span>`)}`:""} ${null!=a?r`${l(a.href,r`<cc-img src=${"https://static-assets.cellar.services.clever-cloud.com/logos/elasticsearch-apm.svg"}></cc-img><span class=${c({skeleton:null==a.href})}>${i("cc-elasticsearch-info.link.apm")}</span>`)}`:""}</cc-flex-gap>`} ${this.error?r`<cc-error>${i("cc-elasticsearch-info.error")}</cc-error>`:""}`}static get styles(){return[a,o,s`:host{--cc-gap:1rem;background-color:#fff;border-radius:.25rem;border:1px solid #bcc2d1;display:grid;grid-gap:var(--cc-gap);overflow:hidden;padding:var(--cc-gap);padding-left:4rem;position:relative}.cc-link{align-items:center;display:flex}cc-img{border-radius:.25rem;flex:0 0 auto;height:1.5rem;margin-right:.5rem;width:1.5rem}.info-ribbon{--height:1.5rem;--width:8rem;--r:-45deg;--translate:1.6rem;background:#3a3871;color:#fff;font-size:.9rem;font-weight:700;height:var(--height);left:calc(var(--width)/ -2);line-height:var(--height);position:absolute;text-align:center;top:calc(var(--height)/ -2);transform:rotate(var(--r)) translateY(var(--translate));width:var(--width);z-index:2}.skeleton{background-color:#bbb}cc-error{text-align:center}`]}}window.customElements.define("cc-elasticsearch-info",m);export{m as CcElasticsearchInfo};
//# sourceMappingURL=cc-elasticsearch-info.js.map

@@ -1,2 +0,2 @@

import"../atoms/cc-button.js";import"../atoms/cc-img.js";import"../atoms/cc-toggle.js";import"../molecules/cc-block.js";import{classMap as i}from"lit-html/directives/class-map.js";import{css as t,html as a,LitElement as e}from"lit-element";import{dispatchCustomEvent as o}from"../lib/events.js";import{i18n as c}from"../lib/i18n.js";import{linkStyles as s}from"../templates/cc-link.js";export class CcElasticsearchOptions extends e{static get properties(){return{apmEnabled:{type:Boolean,attribute:"apm-enabled"},apmFlavor:{type:Object,attribute:"apm-flavor"},kibanaEnabled:{type:Boolean,attribute:"kibana-enabled"},kibanaFlavor:{type:Object,attribute:"kibana-flavor"}}}constructor(){super(),this.apmEnabled=!1,this.kibanaEnabled=!1}_onToggleKibana(){this.kibanaEnabled=!this.kibanaEnabled}_onToggleApm(){this.apmEnabled=!this.apmEnabled}_onSubmit(){o(this,"submit",{kibana:this.kibanaEnabled,apm:this.apmEnabled})}render(){const t=[{label:c("cc-elasticsearch-options.disabled"),value:!1},{label:c("cc-elasticsearch-options.enabled"),value:!0}];return a`<cc-block><div slot=title>${c("cc-elasticsearch-options.title")}</div><div class=description>${c("cc-elasticsearch-options.description")}</div><div class="${i({"option--enabled":this.kibanaEnabled})} option"><cc-img class=logo src=${"https://static-assets.cellar.services.clever-cloud.com/logos/elasticsearch-kibana.svg"}></cc-img><div class=option-main><div class=option-name>Kibana</div><div class=option-details>${c("cc-elasticsearch-options.description.kibana")}</div><cc-error class=option-warning>${c("cc-elasticsearch-options.warning.kibana")} ${null!=this.kibanaFlavor?a`${c("cc-elasticsearch-options.warning.kibana.details",this.kibanaFlavor)}`:""}</cc-error><cc-toggle .choices=${t} .value=${this.kibanaEnabled} @cc-toggle:input=${this._onToggleKibana}></cc-toggle></div></div><div class="${i({"option--enabled":this.apmEnabled})} option"><cc-img class=logo src=${"https://static-assets.cellar.services.clever-cloud.com/logos/elasticsearch-apm.svg"}></cc-img><div class=option-main><div class=option-name>APM</div><div class=option-details>${c("cc-elasticsearch-options.description.apm")}</div><cc-error class=option-warning>${c("cc-elasticsearch-options.warning.apm")} ${null!=this.apmFlavor?a`${c("cc-elasticsearch-options.warning.apm.details",this.apmFlavor)}`:""}</cc-error><cc-toggle .choices=${t} .value=${this.apmEnabled} @cc-toggle:input=${this._onToggleApm}></cc-toggle></div></div><div class=button-bar><cc-button primary @cc-button:click=${this._onSubmit}>${c("cc-elasticsearch-options.confirm")}</cc-button></div></cc-block>`}static get styles(){return[s,t`:host{display:block}.option{border-radius:.25rem;display:grid;grid-gap:1rem;grid-template-columns:min-content 1fr;padding:1rem}.option:not(.option--enabled){background-color:#f8f8f8;border:2px solid #f8f8f8}.option.option--enabled{border:2px solid #30ab61}.logo{border-radius:.25rem;height:1.6rem;width:1.6rem}.option-main{display:grid;grid-gap:.5rem}.option-name{font-weight:700;line-height:1.6rem;min-height:1.6rem}.description,.option-details{line-height:1.5}.option-warning{color:#555;font-style:italic}cc-toggle{justify-self:end;margin:.5rem 0 0}.option--enabled cc-toggle{--cc-toggle-color:hsl(144, 56%, 43%)}.button-bar{display:grid;justify-content:flex-end}cc-button{margin:0}[title]{cursor:help}`]}}window.customElements.define("cc-elasticsearch-options",CcElasticsearchOptions);
//# sourceMappingURL=cc-elasticsearch-options.js.map
import{LitElement as i,html as t,css as a}from"lit-element";import{classMap as e}from"lit-html/directives/class-map.js";import{dispatchCustomEvent as o}from"../lib/events.js";import{i18n as c}from"../lib/i18n.js";import{linkStyles as s}from"../templates/cc-link.js";import"../atoms/cc-button.js";import"../atoms/cc-img.js";import"../molecules/cc-block.js";import"../molecules/cc-error.js";import"../atoms/cc-toggle.js";class n extends i{static get properties(){return{apmEnabled:{type:Boolean,attribute:"apm-enabled"},apmFlavor:{type:Object,attribute:"apm-flavor"},kibanaEnabled:{type:Boolean,attribute:"kibana-enabled"},kibanaFlavor:{type:Object,attribute:"kibana-flavor"}}}constructor(){super(),this.apmEnabled=!1,this.kibanaEnabled=!1}_onToggleKibana(){this.kibanaEnabled=!this.kibanaEnabled}_onToggleApm(){this.apmEnabled=!this.apmEnabled}_onSubmit(){o(this,"submit",{kibana:this.kibanaEnabled,apm:this.apmEnabled})}render(){const i=[{label:c("cc-elasticsearch-options.disabled"),value:!1},{label:c("cc-elasticsearch-options.enabled"),value:!0}];return t`<cc-block><div slot=title>${c("cc-elasticsearch-options.title")}</div><div class=description>${c("cc-elasticsearch-options.description")}</div><div class="${e({"option--enabled":this.kibanaEnabled})} option"><cc-img class=logo src=${"https://static-assets.cellar.services.clever-cloud.com/logos/elasticsearch-kibana.svg"}></cc-img><div class=option-main><div class=option-name>Kibana</div><div class=option-details>${c("cc-elasticsearch-options.description.kibana")}</div><cc-error class=option-warning>${c("cc-elasticsearch-options.warning.kibana")} ${null!=this.kibanaFlavor?t`${c("cc-elasticsearch-options.warning.kibana.details",this.kibanaFlavor)}`:""}</cc-error><cc-toggle .choices=${i} .value=${this.kibanaEnabled} @cc-toggle:input=${this._onToggleKibana}></cc-toggle></div></div><div class="${e({"option--enabled":this.apmEnabled})} option"><cc-img class=logo src=${"https://static-assets.cellar.services.clever-cloud.com/logos/elasticsearch-apm.svg"}></cc-img><div class=option-main><div class=option-name>APM</div><div class=option-details>${c("cc-elasticsearch-options.description.apm")}</div><cc-error class=option-warning>${c("cc-elasticsearch-options.warning.apm")} ${null!=this.apmFlavor?t`${c("cc-elasticsearch-options.warning.apm.details",this.apmFlavor)}`:""}</cc-error><cc-toggle .choices=${i} .value=${this.apmEnabled} @cc-toggle:input=${this._onToggleApm}></cc-toggle></div></div><div class=button-bar><cc-button primary @cc-button:click=${this._onSubmit}>${c("cc-elasticsearch-options.confirm")}</cc-button></div></cc-block>`}static get styles(){return[s,a`:host{display:block}.option{border-radius:.25rem;display:grid;grid-gap:1rem;grid-template-columns:min-content 1fr;padding:1rem}.option:not(.option--enabled){background-color:#f8f8f8;border:2px solid #f8f8f8}.option.option--enabled{border:2px solid #30ab61}.logo{border-radius:.25rem;height:1.6rem;width:1.6rem}.option-main{display:grid;grid-gap:.5rem}.option-name{font-weight:700;line-height:1.6rem;min-height:1.6rem}.description,.option-details{line-height:1.5}.option-warning{color:#555;font-style:italic}cc-toggle{justify-self:end;margin-top:.5rem}.option--enabled cc-toggle{--cc-toggle-color:hsl(144, 56%, 43%)}.button-bar{display:grid;justify-content:flex-end}[title]{cursor:help}`]}}window.customElements.define("cc-elasticsearch-options",n);export{n as CcElasticsearchOptions};
//# sourceMappingURL=cc-elasticsearch-options.js.map

@@ -1,2 +0,2 @@

import"../atoms/cc-img.js";import"../atoms/cc-input-text.js";import"../molecules/cc-error.js";import{classMap as e}from"lit-html/directives/class-map.js";import{css as r,html as i,LitElement as t}from"lit-element";import{i18n as d}from"../lib/i18n.js";import{ifDefined as o}from"lit-html/directives/if-defined.js";import{skeleton as s}from"../styles/skeleton.js";export class CcHeaderAddon extends t{static get properties(){return{addon:{type:Object,attribute:!1},error:{type:Boolean},version:{type:String}}}constructor(){super(),this.error=!1}static get skeletonAddon(){return{name:"??????????????????????????",provider:{},plan:{name:"?????????"},creationDate:0}}static get skeletonVersion(){return"????????"}render(){const r=null==this.addon,t=r?CcHeaderAddon.skeletonAddon:this.addon,s=null==this.version,a=s?CcHeaderAddon.skeletonVersion:this.version,n=d("cc-header-addon.creation-date.short",{date:t.creationDate}),c=r?void 0:d("cc-header-addon.creation-date.full",{date:t.creationDate});return i`${this.error?"":i`<div class=main><cc-img class=logo src=${o(t.provider.logoUrl)} ?skeleton=${r} text=${t.provider.name} title=${o(t.provider.name)}></cc-img><div class=details><div class=name><span class=${e({skeleton:r})}>${t.name}</span></div><cc-input-text class=id readonly=readonly clipboard value=${o(t.id)} ?skeleton=${r}></cc-input-text></div><div class=description><div class=description-item><div class=description-label>${d("cc-header-addon.plan")}</div><div class=${e({skeleton:r})}>${t.plan.name}</div></div><div class=description-item><div class=description-label>${d("cc-header-addon.version")}</div><div class=${e({skeleton:s})}>${a}</div></div><div class=description-item><div class=description-label>${d("cc-header-addon.creation-date")}</div><div class=${e({skeleton:r})} title=${o(c)}>${n}</div></div></div></div>`} ${this.error?i`<cc-error>${d("cc-header-addon.error")}</cc-error>`:""}`}static get styles(){return[s,r`:host{background-color:#fff;border-radius:.25rem;border:1px solid #bcc2d1;display:block}.main{align-items:center;display:flex;flex-wrap:wrap;justify-content:flex-start}.logo{align-self:flex-start;border-radius:.25rem;height:3.25rem;margin:1rem;width:3.25rem}.details{flex:1 1 0;margin:1rem 1rem 1rem 0}.description-label,.name{margin-bottom:.35rem}.name{font-size:1.1rem;font-weight:700;min-width:12rem}.id{margin:0}.description{display:flex;padding:.5rem 1rem .5rem 0}.description-item{flex:1 1 auto;margin:.5rem 0 .5rem 1rem}.description-label{font-weight:700}cc-error{padding:1rem;text-align:center}[title]{cursor:help}.skeleton{background-color:#bbb}`]}}window.customElements.define("cc-header-addon",CcHeaderAddon);
//# sourceMappingURL=cc-header-addon.js.map
import{LitElement as e,html as i,css as r}from"lit-element";import{classMap as t}from"lit-html/directives/class-map.js";import{ifDefined as o}from"lit-html/directives/if-defined.js";import{i18n as c}from"../lib/i18n.js";import{skeletonStyles as s}from"../styles/skeleton.js";import"../atoms/cc-input-text.js";import"../atoms/cc-img.js";import"../molecules/cc-error.js";import"../atoms/cc-flex-gap.js";const a={name:"??????????????????????????",provider:{},plan:{name:"?????????"},creationDate:0};class d extends e{static get properties(){return{addon:{type:Object},error:{type:Boolean},version:{type:String}}}constructor(){super(),this.error=!1}render(){const e=null==this.addon,r=e?a:this.addon,s=null==this.version,d=s?"????????":this.version,n=c("cc-header-addon.creation-date.short",{date:r.creationDate}),l=e?void 0:c("cc-header-addon.creation-date.full",{date:r.creationDate});return i`${this.error?"":i`<cc-flex-gap class=main><cc-img class=logo src=${o(r.provider.logoUrl)} ?skeleton=${e} text=${r.provider.name} title=${o(r.provider.name)}></cc-img><div class=details><div class=name><span class=${t({skeleton:e})}>${r.name}</span></div><cc-input-text readonly=readonly clipboard value=${o(r.id)} ?skeleton=${e}></cc-input-text></div><cc-flex-gap class=description><div class=description-item><div class=description-label>${c("cc-header-addon.plan")}</div><div class=${t({skeleton:e})}>${r.plan.name}</div></div><div class=description-item><div class=description-label>${c("cc-header-addon.version")}</div><div class=${t({skeleton:s})}>${d}</div></div><div class=description-item><div class=description-label>${c("cc-header-addon.creation-date")}</div><div class=${t({skeleton:e})} title=${o(l)}>${n}</div></div></cc-flex-gap></cc-flex-gap>`} ${this.error?i`<cc-error>${c("cc-header-addon.error")}</cc-error>`:""}`}static get styles(){return[s,r`:host{--cc-gap:1rem;background-color:#fff;border-radius:.25rem;border:1px solid #bcc2d1;display:block}.main{padding:var(--cc-gap)}.logo{border-radius:.25rem;height:3.25rem;width:3.25rem}.details{flex:1 1 0}.description-label,.name{margin-bottom:.35rem}.name{font-size:1.1rem;font-weight:700;min-width:12rem}.description{align-self:center}.description-item{flex:1 1 auto}.description-label{font-weight:700}cc-error{padding:var(--cc-gap);text-align:center}[title]{cursor:help}.skeleton{background-color:#bbb}`]}}window.customElements.define("cc-header-addon",d);export{d as CcHeaderAddon};
//# sourceMappingURL=cc-header-addon.js.map

@@ -1,2 +0,2 @@

import{css as t,html as e,LitElement as o}from"lit-element";import{i18n as i}from"../lib/i18n.js";export class CcBeta extends o{static get properties(){return{fill:{type:Boolean,reflect:!0},position:{type:String,reflect:!0}}}constructor(){super(),this.fill=!1,this.position="top-left"}render(){return e`<slot></slot><div class=beta>${i("cc-beta.label")}</div>`}static get styles(){return[t`:host{display:grid;overflow:hidden;position:relative}:host([fill]) ::slotted(*){box-sizing:border-box;height:100%;width:100%}.beta{--height:1.5rem;--width:8rem;background:#3a3871;color:#fff;font-size:.9rem;font-weight:700;height:var(--height);line-height:var(--height);position:absolute;text-align:center;transform:rotate(var(--r)) translateY(var(--translate));width:var(--width);z-index:2}:host([position^=top-]) .beta{top:calc(var(--height)/ -2);--translate:1.6rem}:host([position^=bottom-]) .beta{bottom:calc(var(--height)/ -2);--translate:-1.6rem}:host([position$="-left"]) .beta{left:calc(var(--width)/ -2)}:host([position$="-right"]) .beta{right:calc(var(--width)/ -2)}:host([position=bottom-right]) .beta,:host([position=top-left]) .beta{--r:-45deg}:host([position=bottom-left]) .beta,:host([position=top-right]) .beta{--r:45deg}`]}}window.customElements.define("cc-beta",CcBeta);
//# sourceMappingURL=cc-beta.js.map
import{LitElement as t,html as e,css as o}from"lit-element";import{i18n as i}from"../lib/i18n.js";class r extends t{static get properties(){return{fill:{type:Boolean,reflect:!0},position:{type:String,reflect:!0}}}constructor(){super(),this.fill=!1,this.position="top-left"}render(){return e`<slot></slot><div class=beta>${i("cc-beta.label")}</div>`}static get styles(){return[o`:host{display:grid;overflow:hidden;position:relative}:host([fill]) ::slotted(*){box-sizing:border-box;height:100%;width:100%}.beta{--height:1.5rem;--width:8rem;background:#3a3871;color:#fff;font-size:.9rem;font-weight:700;height:var(--height);line-height:var(--height);position:absolute;text-align:center;transform:rotate(var(--r)) translateY(var(--translate));width:var(--width);z-index:2}:host([position^=top-]) .beta{top:calc(var(--height)/ -2);--translate:1.6rem}:host([position^=bottom-]) .beta{bottom:calc(var(--height)/ -2);--translate:-1.6rem}:host([position$="-left"]) .beta{left:calc(var(--width)/ -2)}:host([position$="-right"]) .beta{right:calc(var(--width)/ -2)}:host([position=bottom-right]) .beta,:host([position=top-left]) .beta{--r:-45deg}:host([position=bottom-left]) .beta,:host([position=top-right]) .beta{--r:45deg}`]}}window.customElements.define("cc-beta",r);export{r as CcBeta};
//# sourceMappingURL=cc-beta.js.map

@@ -1,2 +0,2 @@

import{classMap as e}from"lit-html/directives/class-map.js";import{css as t,html as i,LitElement as s}from"lit-element";import{dispatchCustomEvent as o}from"../lib/events.js";import{i18n as n}from"../lib/i18n.js";import{linkStyles as r}from"../templates/cc-link.js";import{skeleton as l}from"../styles/skeleton.js";export class CcButton extends s{static get properties(){return{danger:{type:Boolean},delay:{type:Number},disabled:{type:Boolean,reflect:!0},image:{type:String},link:{type:Boolean,reflect:!0},outlined:{type:Boolean},primary:{type:Boolean},skeleton:{type:Boolean},success:{type:Boolean},warning:{type:Boolean},_cancelMode:{type:Boolean,attribute:!1}}}constructor(){super(),this.danger=!1,this.disabled=!1,this.link=!1,this.outlined=!1,this.primary=!1,this.skeleton=!1,this.success=!1,this.warning=!1,this._cancelMode=!1}set disabled(e){const t=this._disabled;this._disabled=e,this.requestUpdate("disabled",t),!0===e&&this._cancelClick()}get disabled(){return this._disabled}focus(){this.shadowRoot.querySelector("button").focus()}_cancelClick(){null!=this._animation&&(this._animation.cancel(),this._animation=null),clearTimeout(this._timeoutId),this._cancelMode=!1}_onClick(e){if(e.stopPropagation(),null==this.delay||this.link)return o(this,"click");this._cancelMode?this._cancelClick():(this._cancelMode=!0,this._timeoutId=setTimeout(()=>{o(this,"click"),this._cancelMode=!1},1e3*this.delay))}render(){const t={primary:this.primary&&!this.success&&!this.warning&&!this.danger&&!this.link,success:!this.primary&&this.success&&!this.warning&&!this.danger&&!this.link,warning:!this.primary&&!this.success&&this.warning&&!this.danger&&!this.link,danger:!this.primary&&!this.success&&!this.warning&&this.danger&&!this.link,skeleton:this.skeleton,image:null!=this.image,btn:!this.link,"cc-link":this.link},s=null==this.delay||this.link?null:this.delay;return t.simple=!(t.primary||t.success||t.warning||t.danger||this.link),t.outlined=(this.outlined||t.simple)&&!this.link,i`<button type=button class=${e(t)} .disabled=${this.disabled||this.skeleton} @click=${this._onClick}><div class=${e({hidden:this._cancelMode})}>${null!=this.image?i`<img src=${this.image} alt="">`:""}<slot></slot></div>${null!=s?i`<div class=${e({hidden:!this._cancelMode})}>${n("cc-button.cancel")}</div><progress class=${e({active:this._cancelMode})} style=--delay:${s}s></progress>`:""}</button>`}static get styles(){return[l,r,t`:host{box-sizing:border-box;display:inline-block;margin:.2rem;vertical-align:top}:host([link]){margin:0;vertical-align:initial}button{background:#fff;border:none;display:block;font-family:inherit;font-size:unset;margin:0;padding:0}.btn{border-radius:.15rem;border:1px solid #000;cursor:pointer;font-size:14px;font-weight:700;min-height:2rem;overflow:hidden;padding:0 .5rem;position:relative;text-transform:uppercase;-moz-user-select:none;-webkit-user-select:none;-ms-user-select:none;user-select:none;width:100%;background-color:var(--btn-color);border-color:var(--btn-color);color:#fff;box-shadow:0 0 0 0 rgba(255,255,255,0);transition:box-shadow 75ms ease-in-out}.primary{--btn-color:hsl(213, 55%, 62%)}.success{--btn-color:hsl(144, 56%, 43%)}.warning{--btn-color:hsl(35, 84%, 37%)}.danger{--btn-color:hsl(351, 70%, 47%)}.outlined{background-color:#fff;color:var(--btn-color)}.simple{--btn-color:hsl(210, 23%, 26%);border-color:#aaa}.btn:enabled:focus{box-shadow:0 0 0 .2em rgba(50,115,220,.25);outline:0}.btn:enabled:hover{box-shadow:0 1px 3px #888}.btn:enabled:active{box-shadow:none;outline:0}button:disabled{cursor:inherit;opacity:.5}.skeleton{background-color:#bbb;border-color:#777;color:transparent}.hidden{color:transparent;height:0;overflow:hidden}progress{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:none;bottom:0;height:.2rem;left:0;position:absolute;width:0}progress.active{transition:width var(--delay) linear;width:100%}progress,progress::-webkit-progress-bar{background-color:#fff}.outlined progress,.outlined progress::-webkit-progress-bar{background-color:var(--btn-color)}progress::-moz-progress-bar,progress::-webkit-progress-value{background-color:transparent}button::-moz-focus-inner{border:0}.image{min-height:0;padding:.2rem;height:1.6rem;width:1.6rem}.image img{display:block;height:100%;width:100%}.cc-link{cursor:pointer;text-decoration:underline}`]}}window.customElements.define("cc-button",CcButton);
//# sourceMappingURL=cc-button.js.map
import{LitElement as e,html as t,css as i}from"lit-element";import{classMap as s}from"lit-html/directives/class-map.js";import{dispatchCustomEvent as o}from"../lib/events.js";import{i18n as n}from"../lib/i18n.js";import{skeletonStyles as r}from"../styles/skeleton.js";import{linkStyles as a}from"../templates/cc-link.js";class l extends e{static get properties(){return{danger:{type:Boolean},delay:{type:Number},disabled:{type:Boolean,reflect:!0},image:{type:String},link:{type:Boolean,reflect:!0},outlined:{type:Boolean},primary:{type:Boolean},skeleton:{type:Boolean},success:{type:Boolean},waiting:{type:Boolean},warning:{type:Boolean},_cancelMode:{type:Boolean,attribute:!1}}}constructor(){super(),this.danger=!1,this.disabled=!1,this.link=!1,this.waiting=!1,this.outlined=!1,this.primary=!1,this.skeleton=!1,this.success=!1,this.warning=!1,this._cancelMode=!1}set disabled(e){const t=this._disabled;this._disabled=e,this.requestUpdate("disabled",t),!0===e&&this._cancelClick()}get disabled(){return this._disabled}focus(){this.shadowRoot.querySelector("button").focus()}_cancelClick(){clearTimeout(this._timeoutId),this._cancelMode=!1}_onClick(e){if(e.stopPropagation(),null==this.delay||0===this.delay||this.link)return o(this,"click");this._cancelMode?this._cancelClick():(this._cancelMode=!0,this._timeoutId=setTimeout(()=>{o(this,"click"),this._cancelMode=!1},1e3*this.delay))}render(){const e={primary:this.primary&&!this.success&&!this.warning&&!this.danger&&!this.link,success:!this.primary&&this.success&&!this.warning&&!this.danger&&!this.link,warning:!this.primary&&!this.success&&this.warning&&!this.danger&&!this.link,danger:!this.primary&&!this.success&&!this.warning&&this.danger&&!this.link,skeleton:this.skeleton,image:null!=this.image,btn:!this.link,"cc-link":this.link},i=null==this.delay||this.link?null:this.delay,o=this.waiting&&!this.link;return e.simple=!(e.primary||e.success||e.warning||e.danger||this.link),e.outlined=(this.outlined||e.simple)&&!this.link,t`<button type=button class=${s(e)} .disabled=${this.disabled||this.skeleton||this.waiting} @click=${this._onClick}><div class="${s({"cancel-mode":this._cancelMode})} text-wrapper">${null!=this.image?t`<img src=${this.image} alt="">`:""}<div class=text-normal><slot></slot></div>${null!=i?t`<div class=text-cancel>${n("cc-button.cancel")}</div>`:""}</div>${null!=i?t`<progress class="${s({active:this._cancelMode})} delay" style=--delay:${i}s></progress>`:""} ${o?t`<progress class=waiting></progress>`:""}</button>`}static get styles(){return[r,a,i`:host{box-sizing:border-box;display:inline-block;vertical-align:middle}button{background:#fff;border:none;display:block;font-family:inherit;font-size:unset;margin:0;padding:0}.btn{border-radius:.15rem;border:1px solid #000;cursor:pointer;font-size:14px;font-weight:700;min-height:2rem;overflow:hidden;padding:0 .5rem;position:relative;text-transform:uppercase;-moz-user-select:none;-webkit-user-select:none;-ms-user-select:none;user-select:none;width:100%;background-color:var(--btn-color);border-color:var(--btn-color);color:#fff;box-shadow:0 0 0 0 rgba(255,255,255,0);transition:box-shadow 75ms ease-in-out}.primary{--btn-color:hsl(213, 55%, 62%)}.success{--btn-color:hsl(144, 56%, 43%)}.warning{--btn-color:hsl(35, 84%, 37%)}.danger{--btn-color:hsl(351, 70%, 47%)}.outlined{background-color:#fff;color:var(--btn-color)}.simple{--btn-color:hsl(210, 23%, 26%);border-color:#aaa}.btn:enabled:focus{box-shadow:0 0 0 .2em rgba(50,115,220,.25);outline:0}.btn:enabled:hover{box-shadow:0 1px 3px #888}.btn:enabled:active{box-shadow:none;outline:0}button:disabled{cursor:inherit;opacity:.5}.skeleton{background-color:#bbb;border-color:#777;color:transparent}.text-wrapper{display:grid}.text-cancel,.text-normal{grid-area:1/1/2/2}.text-wrapper.cancel-mode .text-normal,.text-wrapper:not(.cancel-mode) .text-cancel{visibility:hidden}progress,progress:-webkit-progress-bar{background-color:#fff}.outlined progress,.outlined progress::-webkit-progress-bar{background-color:var(--btn-color)}progress::-moz-progress-bar,progress::-webkit-progress-value{background-color:transparent}progress.delay{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:none;bottom:0;height:.2rem;left:0;position:absolute;width:0}progress.delay.active{transition:width var(--delay) linear;width:100%}@keyframes waiting{from{left:-52%}to{left:52%}}progress.waiting{--width:25%;animation:1s ease-in-out infinite alternate waiting;appearance:none;-webkit-appearance:none;-moz-appearance:none;border:none;bottom:0;height:.2rem;margin-left:calc(50% - calc(var(--width)/ 2));position:absolute;width:var(--width)}button::-moz-focus-inner{border:0}.image{min-height:0;padding:.2rem;height:1.6rem;width:1.6rem}.image img{display:block;height:100%;width:100%}.cc-link{cursor:pointer;text-decoration:underline}`]}}window.customElements.define("cc-button",l);export{l as CcButton};
//# sourceMappingURL=cc-button.js.map

@@ -1,2 +0,2 @@

import{i18n as t}from"../lib/i18n.js";const e=[];let i;function a(){e.forEach(t=>t._triggerUpdate())}export class CcDatetimeRelative extends HTMLElement{static get observedAttributes(){return["datetime"]}get datetime(){return this.getAttribute("datetime")}set datetime(t){this.setAttribute("datetime",t)}attributeChangedCallback(e,i,a){"datetime"===e&&(this.title=t("cc-datetime-relative.title",{date:a}),this._triggerUpdate())}connectedCallback(){e.push(this),null==i&&(a(),i=setInterval(a,1e4))}disconnectedCallback(){const t=e.indexOf(this);-1!==t&&e.splice(t,1),e.length>0&&null!=i&&(clearInterval(i),i=null)}_triggerUpdate(){const e=this.getAttribute("datetime"),i=t("cc-datetime-relative.distance",{date:e});this.textContent!==i&&(this.textContent=i)}}window.customElements.define("cc-datetime-relative",CcDatetimeRelative);
//# sourceMappingURL=cc-datetime-relative.js.map
import{i18n as t}from"../lib/i18n.js";const e=[];let i;function a(){e.forEach(t=>t._triggerUpdate())}class n extends HTMLElement{static get observedAttributes(){return["datetime"]}get datetime(){return this.getAttribute("datetime")}set datetime(t){this.setAttribute("datetime",t)}attributeChangedCallback(e,i,a){"datetime"===e&&(this.title=t("cc-datetime-relative.title",{date:a}),this._triggerUpdate())}connectedCallback(){e.push(this),null==i&&(a(),i=setInterval(a,1e4))}disconnectedCallback(){const t=e.indexOf(this);-1!==t&&e.splice(t,1),e.length>0&&null!=i&&(clearInterval(i),i=null)}_triggerUpdate(){const e=this.getAttribute("datetime"),i=t("cc-datetime-relative.distance",{date:e});this.textContent!==i&&(this.textContent=i)}}window.customElements.define("cc-datetime-relative",n);export{n as CcDatetimeRelative};
//# sourceMappingURL=cc-datetime-relative.js.map

@@ -1,2 +0,2 @@

const e=e=>document.createElement(e),t=(e,t)=>e.appendChild(t);export class CcExpand extends HTMLElement{constructor(){super();const s=this.attachShadow({mode:"open"}),i=e("style");i.textContent=":host {display:block;overflow:hidden}",this._wrapper=e("div");const n=e("slot");t(s,i),t(s,this._wrapper),t(this._wrapper,n)}connectedCallback(){null!=window.ResizeObserver&&(this._ro=new ResizeObserver(()=>{const e=getComputedStyle(this).height;this._oldHeight!==e&&(null!=this._oldHeight&&this.animate([{height:this._oldHeight},{height:e}],{duration:300,easing:"ease-in-out"}),this._oldHeight=e)}),this._ro.observe(this._wrapper))}disconnectedCallback(){null!=window.ResizeObserver&&this._ro.unobserve(this._wrapper)}}window.customElements.define("cc-expand",CcExpand);
//# sourceMappingURL=cc-expand.js.map
const e=e=>document.createElement(e),t=(e,t)=>e.appendChild(t);class s extends HTMLElement{constructor(){super();const s=this.attachShadow({mode:"open"}),i=e("style");i.textContent=":host {display:block;overflow:hidden}",this._wrapper=e("div");const o=e("slot");t(s,i),t(s,this._wrapper),t(this._wrapper,o)}connectedCallback(){null!=window.ResizeObserver&&(this._ro=new ResizeObserver(()=>{const e=getComputedStyle(this).height;this._oldHeight!==e&&(null!=this._oldHeight&&this.animate([{height:this._oldHeight},{height:e}],{duration:300,easing:"ease-in-out"}),this._oldHeight=e)}),this._ro.observe(this._wrapper))}disconnectedCallback(){null!=window.ResizeObserver&&this._ro.unobserve(this._wrapper)}}window.customElements.define("cc-expand",s);export{s as CcExpand};
//# sourceMappingURL=cc-expand.js.map

@@ -1,2 +0,2 @@

import{classMap as e}from"lit-html/directives/class-map.js";import{css as t,html as r,LitElement as s}from"lit-element";import{ifDefined as o}from"lit-html/directives/if-defined.js";import{skeleton as i}from"../styles/skeleton.js";export class CcImg extends s{static get properties(){return{skeleton:{type:Boolean,reflect:!0},src:{type:String},text:{type:String},_error:{type:Boolean,attribute:!1},_loaded:{type:Boolean,attribute:!1}}}constructor(){super(),this.skeleton=!1,this._error=!1,this._loaded=!1}set src(e){const t=this._src;this._src=e,this.requestUpdate("src",t),this._error=!1,this._loaded=!1}get src(){return this._src}_onLoad(e){this._loaded=!0,this.skeleton=!1}_onError(e){this._error=!0,this.skeleton=!1}render(){const t=null!=this.src&&!this._loaded&&!this._error,s=this.skeleton||t,i=null==this.src||this._error;return r`<div class="${e({skeleton:s,loaded:this._loaded,text:i})} wrapper"><img src=${o(this.src)} @load=${this._onLoad} @error=${this._onError} alt=""> ${i?r`<div class=error-msg>${this.text}</div>`:""}</div>`}static get styles(){return[i,t`:host{display:inline-block;overflow:hidden}.wrapper,img{height:100%;width:100%}.wrapper{align-items:center;display:flex;justify-content:center;position:relative}.wrapper.skeleton{background-color:#bbb}.wrapper.text{background-color:#eee}img{display:block;object-fit:cover;object-position:center center;opacity:0;position:absolute;top:0;transition:opacity 150ms ease-in-out;left:0}.wrapper.loaded img{opacity:1}.error-msg{font-size:.9rem;overflow:hidden;padding:.25rem;text-align:center;text-overflow:ellipsis;white-space:nowrap}`]}}window.customElements.define("cc-img",CcImg);
//# sourceMappingURL=cc-img.js.map
import{LitElement as e,html as t,css as r}from"lit-element";import{classMap as s}from"lit-html/directives/class-map.js";import{ifDefined as o}from"lit-html/directives/if-defined.js";import{skeletonStyles as i}from"../styles/skeleton.js";class l extends e{static get properties(){return{skeleton:{type:Boolean,reflect:!0},src:{type:String},text:{type:String},_error:{type:Boolean,attribute:!1},_loaded:{type:Boolean,attribute:!1}}}constructor(){super(),this.skeleton=!1,this._error=!1,this._loaded=!1}set src(e){const t=this._src;this._src=e,this.requestUpdate("src",t),this._error=!1,this._loaded=!1}get src(){return this._src}_onLoad(e){this._loaded=!0,this.skeleton=!1}_onError(e){this._error=!0,this.skeleton=!1}render(){const e=null!=this.src&&!this._loaded&&!this._error,r=this.skeleton||e,i=null==this.src||this._error;return t`<div class="${s({skeleton:r,loaded:this._loaded,text:i})} wrapper"><img src=${o(this.src)} @load=${this._onLoad} @error=${this._onError} alt=""> ${i?t`<div class=error-msg>${this.text}</div>`:""}</div>`}static get styles(){return[i,r`:host{display:inline-block;overflow:hidden}.wrapper,img{height:100%;width:100%}.wrapper{align-items:center;display:flex;justify-content:center;position:relative}.wrapper.skeleton{background-color:#bbb}.wrapper.text{background-color:#eee}img{display:block;object-fit:cover;object-position:center center;opacity:0;position:absolute;top:0;transition:opacity 150ms ease-in-out;left:0}.wrapper.loaded img{opacity:1}.error-msg{font-size:.9rem;overflow:hidden;padding:.25rem;text-align:center;text-overflow:ellipsis;white-space:nowrap}`]}}window.customElements.define("cc-img",l);export{l as CcImg};
//# sourceMappingURL=cc-img.js.map

@@ -1,2 +0,2 @@

import e from"./clipboard.svg";import t from"clipboard-copy";import i from"./eye-closed.svg";import s from"./eye-open.svg";import o from"./tick.svg";import{classMap as r}from"lit-html/directives/class-map.js";import{css as n,html as l,LitElement as a}from"lit-element";import{dispatchCustomEvent as d}from"../lib/events.js";import{i18n as c}from"../lib/i18n.js";import{skeleton as h}from"../styles/skeleton.js";export class CcInputText extends a{static get properties(){return{clipboard:{type:Boolean,reflect:!0},disabled:{type:Boolean,reflect:!0},label:{type:String},multi:{type:Boolean,reflect:!0},name:{type:String,reflect:!0},placeholder:{type:String},readonly:{type:Boolean,reflect:!0},secret:{type:Boolean,reflect:!0},skeleton:{type:Boolean,reflect:!0},tags:{type:Array,attribute:!1},_tagsEnabled:{type:Boolean,attribute:!1},value:{type:String},_showSecret:{type:Boolean,attribute:!1},_copyOk:{type:Boolean,attribute:!1}}}constructor(){super(),this.clipboard=!1,this.disabled=!1,this.multi=!1,this.placeholder="",this.readonly=!1,this.secret=!1,this.skeleton=!1,this.tags=null,this.value="",this._copyOk=!1,this._showSecret=!1,this._tagsEnabled=!1,this._uniqueName=Math.random().toString(36).slice(2)}get tags(){return this._tagsEnabled?this.value.split(" ").filter(e=>""!==e):null}set tags(e){if(this._tagsEnabled=null!=e,this._tagsEnabled){const t=this.tags;(function(e,t){if(e===t)return!0;if(null==e||null==t)return!1;if(t.length!==e.length)return!1;for(let i=0;i<e.length;i+=1)if(e[i]!==t[i])return!1;return!0})(t,e)||(this.value=e.join(" "),this.requestUpdate("tags",t))}}focus(){this.shadowRoot.querySelector(".input").focus()}_onInput(e){if(this._tagsEnabled&&e.target.value.includes("\n")){const{selectionStart:t,selectionEnd:i}=e.target,s=e.target.value,o=e.target.value.replace(/\n/g,""),r=s.length-o.length;e.target.value=o,e.target.setSelectionRange(t-r,i-r)}this.value=e.target.value,d(this,"input",this.value),this._tagsEnabled&&d(this,"tags",this.tags)}_onFocus(e){this.readonly&&e.target.select()}_onClickCopy(){t(this.value).then(()=>{this._copyOk=!0,setTimeout(()=>this._copyOk=!1,1e3)})}_onClickSecret(){this._showSecret=!this._showSecret}_onKeyEvent(e){"keydown"!==e.type&&"keypress"!==e.type||e.stopPropagation(),this._tagsEnabled&&"keydown"===e.type&&13===e.keyCode&&(e.preventDefault(),d(this,"requestimplicitsubmit")),this.readonly||"keypress"!==e.type||13!==e.keyCode||(!this.multi||this.multi&&e.ctrlKey)&&d(this,"requestimplicitsubmit")}render(){const t=(this.value||"").split("\n").length,n=this.clipboard&&!this.disabled&&!this.skeleton,a=this.secret&&!this.multi&&!this.disabled&&!this.skeleton,d=this.multi||this._tagsEnabled,h=this.value.split(" ").map((e,t,i)=>l`<span class=tag>${e}</span>${t!==i.length-1?" ":""}`);return l`${null!=this.label?l`<label for=${this._uniqueName}>${this.label}</label>`:""}<div class=meta-input><div class="${r({skeleton:this.skeleton})} wrapper" @input=${this._onInput} @keydown=${this._onKeyEvent} @keypress=${this._onKeyEvent}>${d?l`${this._tagsEnabled&&!this.skeleton?l`<div class="input input-underlayer" style=--rows:${t}><div class=all-tags>${h}</div></div>`:""} <textarea id=${this._uniqueName} class="${r({"input-tags":this._tagsEnabled})} input" style=--rows:${t} rows=${t} ?disabled=${this.disabled||this.skeleton} ?readonly=${this.readonly} .value=${this.value} name=${this.name} placeholder=${this.placeholder} spellcheck=false wrap=${this._tagsEnabled?"soft":"off"} @focus=${this._onFocus}></textarea>`:""} ${d?"":l`${n&&this.readonly?l`<div class="input input-mirror">${this.value}</div>`:""} <input id=${this._uniqueName} type=${this.secret&&!this._showSecret?"password":"text"} class=input ?disabled=${this.disabled||this.skeleton} ?readonly=${this.readonly} .value=${this.value} name=${this.name} placeholder=${this.placeholder} spellcheck=false @focus=${this._onFocus}>`}<div class=ring></div></div>${a?l`<button class=btn @click=${this._onClickSecret} title=${this._showSecret?c("cc-input-text.secret.hide"):c("cc-input-text.secret.show")}><img class=btn-img src=${this._showSecret?i:s} alt=""></button>`:""} ${n?l`<button class=btn @click=${this._onClickCopy} title=${c("cc-input-text.clipboard")}><img class=btn-img src=${this._copyOk?o:e} alt=""></button>`:""}</div>`}static get styles(){return[h,n`:host{display:inline-block;margin:.2rem}:host([multi]){display:block}label{cursor:pointer;display:block;padding-bottom:.35rem}.meta-input{display:inline-flex;box-sizing:border-box;position:relative;vertical-align:top;width:100%}:host([multi]) .meta-input{display:flex}.wrapper{display:grid;flex:1 1 0;margin:.15rem .5rem;min-width:0;overflow:hidden}.input{-webkit-appearance:none;background:0 0;border:1px solid #000;box-sizing:border-box;display:block;font-family:SourceCodePro,monaco,monospace;font-size:14px;margin:0;padding:0;resize:none;width:100%;border:none;grid-area:1/1/1/1;height:calc(var(--rows,1) * 1.7rem);line-height:1.7rem;overflow:hidden;z-index:2}.input:active,.input:focus{outline:0}.input[disabled]{opacity:.75;pointer-events:none}.input-mirror{height:0}.input-tags,.input-underlayer{height:auto;padding:0 3px;word-break:break-all}.input-underlayer{color:transparent;-moz-user-select:none;-webkit-user-select:none;-ms-user-select:none;user-select:none;white-space:pre-wrap;z-index:1}.input-underlayer .tag:not(:empty){--color:rgba(50, 50, 255, 0.15);background-color:var(--color);border-radius:4px;box-shadow:0 0 0 2px var(--color);padding:1px 0}.ring{border-radius:.25rem;border:1px solid #aaa;bottom:0;box-shadow:0 0 0 0 rgba(255,255,255,0);left:0;overflow:hidden;position:absolute;right:0;top:0;z-index:0}.input:focus+.ring{border-color:#777;box-shadow:0 0 0 .2em rgba(50,115,220,.25)}.input:hover+.ring{border-color:#777}:host([disabled]) .ring{background:#eee;border-color:#eee}:host([readonly]) .ring{background:#eee}.skeleton .input:hover+.ring,.skeleton .ring,.skeleton:hover .ring{background-color:#eee;border-color:#eee;cursor:progress}.skeleton .input,.skeleton .input::placeholder{color:transparent}.btn{background:0 0;border:none;display:block;font-family:inherit;margin:.2rem .2rem .2rem 0;padding:0;border-radius:.15rem;cursor:pointer;flex-shrink:0;height:1.6rem;width:1.6rem;z-index:2}.btn:focus{box-shadow:0 0 0 .2rem rgba(50,115,220,.25);outline:0}.btn:active,.btn:hover{box-shadow:none;outline:0}.btn:hover{background-color:#f5f5f5}.btn:active{background-color:#eee}:host([readonly]) .btn:hover{background-color:#e5e5e5}:host([readonly]) .btn:active{background-color:#ddd}.btn::-moz-focus-inner{border:0}.btn-img{box-sizing:border-box;filter:grayscale(100%);height:100%;padding:15%;width:100%}.btn-img:hover{filter:grayscale(0)}`]}}window.customElements.define("cc-input-text",CcInputText);
//# sourceMappingURL=cc-input-text.js.map
import e from"clipboard-copy";import{LitElement as t,html as i,css as s}from"lit-element";import{classMap as o}from"lit-html/directives/class-map.js";import{ifDefined as r}from"lit-html/directives/if-defined.js";import{assetUrl as n}from"../lib/asset-url.js";import{dispatchCustomEvent as l}from"../lib/events.js";import{i18n as a}from"../lib/i18n.js";import{skeletonStyles as d}from"../styles/skeleton.js";const c=n(import.meta,"../assets/clipboard.svg"),h=n(import.meta,"../assets/eye-closed.svg"),p=n(import.meta,"../assets/eye-open.svg"),u=n(import.meta,"../assets/tick.svg");class b extends t{static get properties(){return{clipboard:{type:Boolean,reflect:!0},disabled:{type:Boolean,reflect:!0},label:{type:String},multi:{type:Boolean,reflect:!0},name:{type:String,reflect:!0},placeholder:{type:String},readonly:{type:Boolean,reflect:!0},secret:{type:Boolean,reflect:!0},skeleton:{type:Boolean,reflect:!0},tags:{type:Array},_tagsEnabled:{type:Boolean,attribute:!1},value:{type:String},_showSecret:{type:Boolean,attribute:!1},_copyOk:{type:Boolean,attribute:!1}}}constructor(){super(),this.clipboard=!1,this.disabled=!1,this.multi=!1,this.placeholder="",this.readonly=!1,this.secret=!1,this.skeleton=!1,this.tags=null,this.value="",this._copyOk=!1,this._showSecret=!1,this._tagsEnabled=!1,this._uniqueName=Math.random().toString(36).slice(2)}get tags(){return this._tagsEnabled?this.value.split(" ").filter(e=>""!==e):null}set tags(e){if(this._tagsEnabled=null!=e,this._tagsEnabled){const t=this.tags;(function(e,t){if(e===t)return!0;if(null==e||null==t)return!1;if(t.length!==e.length)return!1;for(let i=0;i<e.length;i+=1)if(e[i]!==t[i])return!1;return!0})(t,e)||(this.value=e.join(" "),this.requestUpdate("tags",t))}}focus(){this.shadowRoot.querySelector(".input").focus()}_onInput(e){if(this._tagsEnabled&&e.target.value.includes("\n")){const{selectionStart:t,selectionEnd:i}=e.target,s=e.target.value,o=e.target.value.replace(/\n/g,""),r=s.length-o.length;e.target.value=o,e.target.setSelectionRange(t-r,i-r)}this.value=e.target.value,l(this,"input",this.value),this._tagsEnabled&&l(this,"tags",this.tags)}_onFocus(e){this.readonly&&e.target.select()}_onClickCopy(){e(this.value).then(()=>{this._copyOk=!0,setTimeout(()=>this._copyOk=!1,1e3)})}_onClickSecret(){this._showSecret=!this._showSecret}_onKeyEvent(e){"keydown"!==e.type&&"keypress"!==e.type||e.stopPropagation(),this._tagsEnabled&&"keydown"===e.type&&13===e.keyCode&&(e.preventDefault(),l(this,"requestimplicitsubmit")),this.readonly||"keypress"!==e.type||13!==e.keyCode||(!this.multi||this.multi&&e.ctrlKey)&&l(this,"requestimplicitsubmit")}render(){const e=(this.value||"").split("\n").length,t=this.clipboard&&!this.disabled&&!this.skeleton,s=this.secret&&!this.multi&&!this.disabled&&!this.skeleton,n=this.multi||this._tagsEnabled,l=this.value.split(" ").map((e,t,s)=>i`<span class=tag>${e}</span>${t!==s.length-1?" ":""}`);return i`${null!=this.label?i`<label for=${this._uniqueName}>${this.label}</label>`:""}<div class=meta-input><div class="${o({skeleton:this.skeleton})} wrapper" @input=${this._onInput} @keydown=${this._onKeyEvent} @keypress=${this._onKeyEvent}>${n?i`${this._tagsEnabled&&!this.skeleton?i`<div class="input input-underlayer" style=--rows:${e}><div class=all-tags>${l}</div></div>`:""} <textarea id=${this._uniqueName} class="${o({"input-tags":this._tagsEnabled})} input" style=--rows:${e} rows=${e} ?disabled=${this.disabled||this.skeleton} ?readonly=${this.readonly} .value=${this.value} name=${this.name} placeholder=${this.placeholder} spellcheck=false wrap=${r(this._tagsEnabled?"soft":void 0)} @focus=${this._onFocus}></textarea>`:""} ${n?"":i`${t&&this.readonly?i`<div class="input input-mirror">${this.value}</div>`:""} <input id=${this._uniqueName} type=${this.secret&&!this._showSecret?"password":"text"} class=input ?disabled=${this.disabled||this.skeleton} ?readonly=${this.readonly} .value=${this.value} name=${this.name} placeholder=${this.placeholder} spellcheck=false @focus=${this._onFocus}>`}<div class=ring></div></div>${s?i`<button class=btn @click=${this._onClickSecret} title=${this._showSecret?a("cc-input-text.secret.hide"):a("cc-input-text.secret.show")}><img class=btn-img src=${this._showSecret?h:p} alt=""></button>`:""} ${t?i`<button class=btn @click=${this._onClickCopy} title=${a("cc-input-text.clipboard")}><img class=btn-img src=${this._copyOk?u:c} alt=""></button>`:""}</div>`}static get styles(){return[d,s`:host{display:inline-block}:host([multi]){display:block}label{cursor:pointer;display:block;padding-bottom:.35rem}.meta-input{display:inline-flex;box-sizing:border-box;position:relative;vertical-align:top;width:100%}:host([multi]) .meta-input{display:flex}.wrapper{display:grid;flex:1 1 0;margin:.15rem .5rem;min-width:0;overflow:hidden}.input{-webkit-appearance:none;background:0 0;border:1px solid #000;box-sizing:border-box;display:block;font-family:SourceCodePro,monaco,monospace;font-size:14px;margin:0;padding:0;resize:none;width:100%;border:none;grid-area:1/1/1/1;height:calc(var(--rows,1) * 1.7rem);line-height:1.7rem;overflow:hidden;z-index:2}textarea:not([wrap]){white-space:pre}.input:active,.input:focus{outline:0}.input[disabled]{opacity:.75;pointer-events:none}.input-mirror{height:0}.input-tags,.input-underlayer{height:auto;padding:0 3px;word-break:break-all}.input-underlayer{color:transparent;-moz-user-select:none;-webkit-user-select:none;-ms-user-select:none;user-select:none;white-space:pre-wrap;z-index:1}.input-underlayer .tag:not(:empty){--color:rgba(50, 50, 255, 0.15);background-color:var(--color);border-radius:4px;box-shadow:0 0 0 2px var(--color);padding:1px 0}.ring{border-radius:.25rem;border:1px solid #aaa;bottom:0;box-shadow:0 0 0 0 rgba(255,255,255,0);left:0;overflow:hidden;position:absolute;right:0;top:0;z-index:0}.input:focus+.ring{border-color:#777;box-shadow:0 0 0 .2em rgba(50,115,220,.25)}.input:hover+.ring{border-color:#777}:host([disabled]) .ring{background:#eee;border-color:#eee}:host([readonly]) .ring{background:#eee}.skeleton .input:hover+.ring,.skeleton .ring,.skeleton:hover .ring{background-color:#eee;border-color:#eee;cursor:progress}.skeleton .input,.skeleton .input::placeholder{color:transparent}.btn{background:0 0;border:none;display:block;font-family:inherit;margin:.2rem .2rem .2rem 0;padding:0;border-radius:.15rem;cursor:pointer;flex-shrink:0;height:1.6rem;width:1.6rem;z-index:2}.btn:focus{box-shadow:0 0 0 .2rem rgba(50,115,220,.25);outline:0}.btn:active,.btn:hover{box-shadow:none;outline:0}.btn:hover{background-color:#f5f5f5}.btn:active{background-color:#eee}:host([readonly]) .btn:hover{background-color:#e5e5e5}:host([readonly]) .btn:active{background-color:#ddd}.btn::-moz-focus-inner{border:0}.btn-img{box-sizing:border-box;filter:grayscale(100%);height:100%;padding:15%;width:100%}.btn-img:hover{filter:grayscale(0)}`]}}window.customElements.define("cc-input-text",b);export{b as CcInputText};
//# sourceMappingURL=cc-input-text.js.map

@@ -1,2 +0,2 @@

import{LitElement as r,css as e,html as t}from"lit-element";export class CcLoader extends r{render(){return t`<svg xmlns=http://www.w3.org/2000/svg viewBox="20 20 40 40"><circle cx=40px cy=40px r=16px></circle></svg>`}static get styles(){return[e`:host{display:flex}svg{animation:1.75s linear infinite progress-circular-rotate;height:100%;margin:auto;max-height:2.5rem;max-width:2.5rem;width:100%}circle{animation:1.75s ease-in-out infinite progress-circular-dash;fill:transparent;stroke-linecap:round;stroke-width:5px;stroke:var(--cc-loader-color,#2653af)}@keyframes progress-circular-rotate{0%{transform:rotate(0turn)}100%{transform:rotate(1turn)}}@keyframes progress-circular-dash{0%{stroke-dasharray:0,100px;stroke-dashoffset:0}50%{stroke-dasharray:80px,100px;stroke-dashoffset:0}100%{stroke-dasharray:80px,100px;stroke-dashoffset:-100px}}`]}}window.customElements.define("cc-loader",CcLoader);
//# sourceMappingURL=cc-loader.js.map
import{LitElement as r,html as e,css as t}from"lit-element";class s extends r{render(){return e`<svg xmlns=http://www.w3.org/2000/svg viewBox="20 20 40 40"><circle cx=40px cy=40px r=16px></circle></svg>`}static get styles(){return[t`:host{display:flex}svg{animation:1.75s linear infinite progress-circular-rotate;height:100%;margin:auto;max-height:2.5rem;max-width:2.5rem;width:100%}circle{animation:1.75s ease-in-out infinite progress-circular-dash;fill:transparent;stroke-linecap:round;stroke-width:5px;stroke:var(--cc-loader-color,#2653af)}@keyframes progress-circular-rotate{0%{transform:rotate(0turn)}100%{transform:rotate(1turn)}}@keyframes progress-circular-dash{0%{stroke-dasharray:0,100px;stroke-dashoffset:0}50%{stroke-dasharray:80px,100px;stroke-dashoffset:0}100%{stroke-dasharray:80px,100px;stroke-dashoffset:-100px}}`]}}window.customElements.define("cc-loader",s);export{s as CcLoader};
//# sourceMappingURL=cc-loader.js.map

@@ -1,2 +0,2 @@

import{classMap as e}from"lit-html/directives/class-map.js";import{css as o,html as t,LitElement as l}from"lit-element";import{dispatchCustomEvent as r}from"../lib/events.js";import{repeat as a}from"lit-html/directives/repeat.js";export class CcToggle extends l{static get properties(){return{choices:{type:Array},disabled:{type:Boolean},value:{type:String,reflect:!0}}}constructor(){super(),this.disabled=!1,this._uniqueName=Math.random().toString(36).slice(2)}_onChange(e){this.value=e.target.value,r(this,"input",this.value)}render(){return t`<div class="${e({disabled:this.disabled,enabled:!this.disabled})} toggle-group">${a(this.choices,({value:e})=>e,({label:e,value:o})=>t`<input type=radio name=${this._uniqueName} value=${o} id=${o} ?disabled=${this.disabled} .checked=${this.value===o} @change=${this._onChange}> <label for=${o}>${e}</label>`)}</div>`}static get styles(){return[o`:host{--cc-toggle-color:#334252;display:flex;margin:.2rem}.toggle-group{border-radius:.15rem;border:1px solid var(--cc-toggle-color);display:flex;overflow:hidden}.toggle-group.enabled:focus-within{box-shadow:0 0 0 .2em rgba(50,115,220,.25);outline:0}.toggle-group.enabled:hover{box-shadow:0 1px 3px #888}.toggle-group.enabled:active{box-shadow:none;outline:0}.toggle-group.disabled{opacity:.5}input{-moz-appearance:none;-webkit-appearance:none;appearance:none;border:0;display:block;height:0;margin:0;outline:0;width:0}label{background-color:#fff;color:var(--cc-toggle-color);cursor:pointer;font-size:14px;font-weight:700;padding:.35rem .5rem;text-transform:uppercase;-moz-user-select:none;-webkit-user-select:none;-ms-user-select:none;user-select:none}.disabled label{cursor:default}input:not(:checked):enabled:hover+label{background-color:#eff2f5}input:checked+label{background-color:var(--cc-toggle-color);color:#fff;position:relative}`]}}window.customElements.define("cc-toggle",CcToggle);
//# sourceMappingURL=cc-toggle.js.map
import{LitElement as e,html as o,css as t}from"lit-element";import{classMap as l}from"lit-html/directives/class-map.js";import{dispatchCustomEvent as r}from"../lib/events.js";import{repeat as a}from"lit-html/directives/repeat.js";class i extends e{static get properties(){return{choices:{type:Array},disabled:{type:Boolean},value:{type:String,reflect:!0}}}constructor(){super(),this.disabled=!1,this._uniqueName=Math.random().toString(36).slice(2)}_onChange(e){this.value=e.target.value,r(this,"input",this.value)}render(){return o`<div class="${l({disabled:this.disabled,enabled:!this.disabled})} toggle-group">${a(this.choices,({value:e})=>e,({label:e,value:t})=>o`<input type=radio name=${this._uniqueName} .value=${t} id=${t} ?disabled=${this.disabled} .checked=${this.value===t} @change=${this._onChange}> <label for=${t}>${e}</label>`)}</div>`}static get styles(){return[t`:host{--cc-toggle-color:#334252;display:flex}.toggle-group{border-radius:.15rem;border:1px solid var(--cc-toggle-color);display:flex;overflow:hidden}.toggle-group.enabled:focus-within{box-shadow:0 0 0 .2em rgba(50,115,220,.25);outline:0}.toggle-group.enabled:hover{box-shadow:0 1px 3px #888}.toggle-group.enabled:active{box-shadow:none;outline:0}.toggle-group.disabled{opacity:.5}input{-moz-appearance:none;-webkit-appearance:none;appearance:none;border:0;display:block;height:0;margin:0;outline:0;width:0}label{background-color:#fff;color:var(--cc-toggle-color);cursor:pointer;font-size:14px;font-weight:700;padding:.35rem .5rem;text-transform:uppercase;-moz-user-select:none;-webkit-user-select:none;-ms-user-select:none;user-select:none}.disabled label{cursor:default}input:not(:checked):enabled:hover+label{background-color:#eff2f5}input:checked+label{background-color:var(--cc-toggle-color);color:#fff;position:relative}`]}}window.customElements.define("cc-toggle",i);export{i as CcToggle};
//# sourceMappingURL=cc-toggle.js.map

@@ -1,2 +0,2 @@

export function animate(a,r,e,o){Array.from(a.querySelectorAll(r)).forEach(a=>a.animate(e,o))}export const QUICK_SHRINK=[[{transform:"scale(1)"},{transform:"scale(0.9)"},{transform:"scale(1)"}],{duration:200,easing:"ease-in-out"}];
//# sourceMappingURL=animate.js.map
function r(r,a,e,o){Array.from(r.querySelectorAll(a)).forEach(r=>r.animate(e,o))}const a=[[{transform:"scale(1)"},{transform:"scale(0.9)"},{transform:"scale(1)"}],{duration:200,easing:"ease-in-out"}];export{a as QUICK_SHRINK,r as animate};
//# sourceMappingURL=animate.js.map

@@ -1,2 +0,2 @@

export function dispatchCustomEvent(e,t,o,n={}){const s=`${e.nodeName.toLocaleLowerCase()}:${t}`;e.dispatchEvent(new CustomEvent(s,{detail:o,bubbles:!0,composed:!0,...n}))}
//# sourceMappingURL=events.js.map
function e(e,o,t,n={}){const s=`${e.nodeName.toLocaleLowerCase()}:${o}`;e.dispatchEvent(new CustomEvent(s,{detail:t,bubbles:!0,composed:!0,...n}))}export{e as dispatchCustomEvent};
//# sourceMappingURL=events.js.map

@@ -1,2 +0,2 @@

export function fakeString(r){return"??? ??????????? ???? ?????? ??? ????????????? ????????? ?? ??????? ?? ????? ????????????? ?? ?????? ??? ?? ??????? ?? ????????? ?? ?????????? ?? ??????????? ????? ?????????? ?? ???? ???????????? ???? ????? ????????????????".substr(0,r)}
//# sourceMappingURL=fake-strings.js.map
function r(r){return"??? ??????????? ???? ?????? ??? ????????????? ????????? ?? ??????? ?? ????? ????????????? ?? ?????? ??? ?? ??????? ?? ????????? ?? ?????????? ?? ??????????? ????? ?????????? ?? ???? ???????????? ???? ????? ????????????????".substr(0,r)}export{r as fakeString};
//# sourceMappingURL=fake-strings.js.map

@@ -1,2 +0,2 @@

const t=[{unit:"year",duration:315576e5},{unit:"month",duration:26298e5},{unit:"week",duration:6048e5},{unit:"day",duration:864e5},{unit:"hour",duration:36e5},{unit:"minute",duration:6e4},{unit:"second",duration:1e3}];export function prepareFormatDistanceToNow(e,n,r){const o="RelativeTimeFormat"in Intl?(t,n)=>new Intl.RelativeTimeFormat(e,{numeric:"auto"}).format(-t,n):n;return function(e){const n=new Date(e).getTime(),a=(new Date).getTime()-n;for(const{unit:e,duration:n}of t){const t=a/n,r=Math.round(t);if(t>=1)return o(r,e)}return r}}export function prepareFormatDate(t){const e=new Intl.DateTimeFormat(t,{year:"numeric",month:"short",day:"numeric",hour:"numeric",minute:"numeric",timeZoneName:"short"});return t=>{const n=new Date(t);return e.format(n)}}export function prepareFormatDatetime(t){const e=new Intl.DateTimeFormat(t,{year:"numeric",month:"short",day:"numeric",hour:"numeric",minute:"numeric"});return t=>{const n=new Date(t);return e.format(n)}}export function prepareFormatDateOnly(t){const e=new Intl.DateTimeFormat(t,{year:"numeric",month:"short",day:"numeric"});return t=>{const n=new Date(t);return e.format(n)}}export function prepareFormatHours(t){const e=new Intl.DateTimeFormat(t,{hour:"numeric"});return t=>{const n=new Date(t);return e.format(n)}}
//# sourceMappingURL=i18n-date.js.map
const n=[{unit:"year",duration:315576e5},{unit:"month",duration:26298e5},{unit:"week",duration:6048e5},{unit:"day",duration:864e5},{unit:"hour",duration:36e5},{unit:"minute",duration:6e4},{unit:"second",duration:1e3}];function t(t,e,r){const o="RelativeTimeFormat"in Intl?(n,e)=>new Intl.RelativeTimeFormat(t,{numeric:"auto"}).format(-n,e):e;return function(t){const e=new Date(t).getTime(),u=(new Date).getTime()-e;for(const{unit:t,duration:e}of n){const n=u/e,r=Math.round(n);if(n>=1)return o(r,t)}return r}}function e(n){const t=new Intl.DateTimeFormat(n,{year:"numeric",month:"short",day:"numeric",hour:"numeric",minute:"numeric",timeZoneName:"short"});return n=>{const e=new Date(n);return t.format(e)}}function r(n){const t=new Intl.DateTimeFormat(n,{year:"numeric",month:"short",day:"numeric",hour:"numeric",minute:"numeric"});return n=>{const e=new Date(n);return t.format(e)}}function o(n){const t=new Intl.DateTimeFormat(n,{year:"numeric",month:"short",day:"numeric"});return n=>{const e=new Date(n);return t.format(e)}}function u(n){const t=new Intl.DateTimeFormat(n,{hour:"numeric"});return n=>{const e=new Date(n);return t.format(e)}}export{e as prepareFormatDate,o as prepareFormatDateOnly,r as prepareFormatDatetime,t as prepareFormatDistanceToNow,u as prepareFormatHours};
//# sourceMappingURL=i18n-date.js.map

@@ -1,2 +0,2 @@

export function prepareNumberUnitFormatter(t){const r=new Intl.NumberFormat(t,{minimumFractionDigits:1,maximumFractionDigits:1});function n(t,n){return t<10?r.format(t)+n:Math.round(t)+n}return t=>t>=1e6?n(t/1e6,"M"):t>=1e3?n(t/1e3,"K"):t}
//# sourceMappingURL=i18n-number.js.map
function t(t){const n=new Intl.NumberFormat(t,{minimumFractionDigits:1,maximumFractionDigits:1});function i(t,i){return t<10?n.format(t)+i:Math.round(t)+i}return t=>t>=1e6?i(t/1e6,"M"):t>=1e3?i(t/1e3,"K"):t}export{t as prepareNumberUnitFormatter};
//# sourceMappingURL=i18n-number.js.map

@@ -1,2 +0,2 @@

const e=["STRONG","EM","CODE","A","BR"],t=(()=>{if(null==globalThis.document)return()=>"";const e=document.createElement("span"),t=document.createTextNode("");return e.appendChild(t),n=>(t.data=n,e.innerHTML)})();function n(e){return null!=e&&e.nodeType===document.TEXT_NODE?(e.parentNode.removeChild(e),e.data):""}export function sanitize(o,...r){let a="";for(let e=0;e<o.length;e++)a+=o[e],null!=r[e]&&(a+=t(r[e]));const l=document.createElement("template");return l.innerHTML=a,Array.from(l.content.querySelectorAll("*")).forEach(t=>{if(e.includes(t.tagName))Array.from(t.attributes).filter(e=>"title"!==e.name&&("A"!==t.tagName||"href"!==e.name)).forEach(e=>(console.warn(`Attribute ${e.name} is not allowed on <${t.tagName.toLowerCase()}> in translations!`),t.removeAttribute(e.name))),"A"===t.tagName&&null!=t.getAttribute("href")&&t.origin!==window.location.origin&&(t.classList.add("sanitized-link"),t.setAttribute("rel","noopener noreferrer"),t.setAttribute("target","_blank"));else{const e=n(t.previousSibling),o=n(t.nextSibling),r=document.createTextNode(e+t.textContent+o);t.parentNode.replaceChild(r,t),console.warn(`Node <${t.tagName.toLowerCase()}> is not allowed in translations!`)}}),l.content.cloneNode(!0)}
//# sourceMappingURL=i18n-sanitize.js.map
const e=["STRONG","EM","CODE","A","BR","P"],t=(()=>{if(null==globalThis.document)return()=>"";const e=document.createElement("span"),t=document.createTextNode("");return e.appendChild(t),n=>(t.data=n,e.innerHTML)})();function n(e){return null!=e&&e.nodeType===document.TEXT_NODE?(e.parentNode.removeChild(e),e.data):""}function o(o,...r){let a="";for(let e=0;e<o.length;e++)a+=o[e],null!=r[e]&&(a+=t(r[e]));const l=document.createElement("template");return l.innerHTML=a,Array.from(l.content.querySelectorAll("*")).forEach(t=>{if(e.includes(t.tagName))Array.from(t.attributes).filter(e=>"title"!==e.name&&("A"!==t.tagName||"href"!==e.name)).forEach(e=>(console.warn(`Attribute ${e.name} is not allowed on <${t.tagName.toLowerCase()}> in translations!`),t.removeAttribute(e.name))),"A"===t.tagName&&null!=t.getAttribute("href")&&t.origin!==window.location.origin&&(t.classList.add("sanitized-link"),t.setAttribute("rel","noopener noreferrer"),t.setAttribute("target","_blank"));else{const e=n(t.previousSibling),o=n(t.nextSibling),r=document.createTextNode(e+t.textContent+o);t.parentNode.replaceChild(r,t),console.warn(`Node <${t.tagName.toLowerCase()}> is not allowed in translations!`)}}),l.content.cloneNode(!0)}export{o as sanitize};
//# sourceMappingURL=i18n-sanitize.js.map

@@ -1,2 +0,2 @@

export function i18n(n,t){const a=function(n){try{return i18n._translations[i18n._lang][n]}catch(n){return null}}(n);return null==a?(console.warn(`Unknown translation [${i18n._lang}] "${n}"`),i18n.MISSING_TEXT):"function"==typeof a?a(t):a}i18n.MISSING_TEXT="🤬🤬🤬🤬🤬",i18n._translations={};export function setLanguage(n){i18n._lang=n}export function getLanguage(){return i18n._lang}export function addTranslations(n,t){null==i18n._translations[n]&&(i18n._translations[n]={});for(const a in t)i18n._translations[n][a]=t[a]}export function getAvailableLanguages(){const n={};for(const t in i18n._translations){const{LANGUAGE:a}=i18n._translations[t];n[a]=t}return n}
//# sourceMappingURL=i18n.js.map
function n(t,o){const r=function(t){try{return n._translations[n._lang][t]}catch(n){return null}}(t);return null==r?(console.warn(`Unknown translation [${n._lang}] "${t}"`),n.MISSING_TEXT):"function"==typeof r?r(o):r}function t(t){n._lang=t}function o(){return n._lang}function r(t,o){null==n._translations[t]&&(n._translations[t]={});for(const r in o)n._translations[t][r]=o[r]}function a(){const t={};for(const o in n._translations){const{LANGUAGE:r}=n._translations[o];t[r]=o}return t}n.MISSING_TEXT="🤬🤬🤬🤬🤬",n._translations={};export{r as addTranslations,a as getAvailableLanguages,o as getLanguage,n as i18n,t as setLanguage};
//# sourceMappingURL=i18n.js.map

@@ -1,2 +0,2 @@

import"../atoms/cc-toggle.js";import"./cc-map.js";import{css as e,html as t,LitElement as o}from"lit-element";import{dispatchCustomEvent as a}from"../lib/events.js";import{i18n as i}from"../lib/i18n.js";export class CcLogsMap extends o{static get properties(){return{appName:{type:String,attribute:"app-name"},centerLat:{type:Number,attribute:"center-lat"},centerLon:{type:Number,attribute:"center-lon"},error:{type:Boolean,reflect:!0},heatmapPoints:{type:Array,attribute:!1},loading:{type:Boolean,reflect:!0},mode:{type:String},orgaName:{type:String,attribute:"orga-name"},viewZoom:{type:Number,attribute:"view-zoom"}}}constructor(){super(),this.centerLat=48.9,this.centerLon=2.4,this.error=!1,this.heatmapPoints=[],this.loading=!1,this.mode="points",this.viewZoom=2}static get modes(){return[{label:i("cc-logsmap.mode.points"),value:"points"},{label:i("cc-logsmap.mode.heatmap"),value:"heatmap"}]}addPoints(...e){this.shadowRoot.querySelector("cc-map").addPoints(...e)}_getLegend(){return"points"===this.mode?null==this.appName?i("cc-logsmap.legend.points",{orgaName:this.orgaName}):i("cc-logsmap.legend.points.app",{appName:this.appName}):null==this.appName?i("cc-logsmap.legend.heatmap",{orgaName:this.orgaName}):i("cc-logsmap.legend.heatmap.app",{appName:this.appName})}render(){return t`<cc-toggle .choices=${CcLogsMap.modes} value=${this.mode} @cc-toggle:input=${this._onModeChange}></cc-toggle><cc-map center-lat=${this.centerLat} center-lon=${this.centerLon} view-zoom=${this.viewZoom} mode=${this.mode} ?loading=${this.loading} ?error=${this.error} .heatmapPoints=${this.heatmapPoints}>${this._getLegend()}</cc-map>`}_onModeChange({detail:e}){this.mode=e,a(this,"mode",this.mode)}static get styles(){return e`:host{border-radius:.25rem;border:1px solid #ccc;display:block;height:15rem;overflow:hidden;position:relative;width:20rem}cc-toggle{position:absolute;left:.5rem;top:.5rem;z-index:2}cc-map{height:100%;left:0;position:absolute;top:0;width:100%;z-index:1}`}}window.customElements.define("cc-logsmap",CcLogsMap);
//# sourceMappingURL=cc-logsmap.js.map
import{LitElement as e,html as t,css as o}from"lit-element";import{dispatchCustomEvent as a}from"../lib/events.js";import{i18n as i}from"../lib/i18n.js";import"../atoms/cc-toggle.js";import"./cc-map.js";class r extends e{static get properties(){return{appName:{type:String,attribute:"app-name"},centerLat:{type:Number,attribute:"center-lat"},centerLon:{type:Number,attribute:"center-lon"},error:{type:Boolean,reflect:!0},heatmapPoints:{type:Array},loading:{type:Boolean,reflect:!0},mode:{type:String},orgaName:{type:String,attribute:"orga-name"},viewZoom:{type:Number,attribute:"view-zoom"}}}constructor(){super(),this.centerLat=48.9,this.centerLon=2.4,this.error=!1,this.loading=!1,this.mode="points",this.viewZoom=2}addPoints(...e){this.shadowRoot.querySelector("cc-map").addPoints(...e)}_getModes(){return[{label:i("cc-logsmap.mode.points"),value:"points"},{label:i("cc-logsmap.mode.heatmap"),value:"heatmap"}]}_getLegend(){return"points"===this.mode?null==this.appName?i("cc-logsmap.legend.points",{orgaName:this.orgaName}):i("cc-logsmap.legend.points.app",{appName:this.appName}):null==this.appName?i("cc-logsmap.legend.heatmap",{orgaName:this.orgaName}):i("cc-logsmap.legend.heatmap.app",{appName:this.appName})}render(){return t`<cc-toggle .choices=${this._getModes()} value=${this.mode} @cc-toggle:input=${this._onModeChange}></cc-toggle><cc-map center-lat=${this.centerLat} center-lon=${this.centerLon} view-zoom=${this.viewZoom} mode=${this.mode} ?loading=${this.loading} ?error=${this.error} .heatmapPoints=${this.heatmapPoints}>${this._getLegend()}</cc-map>`}_onModeChange({detail:e}){this.mode=e,a(this,"mode",this.mode)}static get styles(){return o`:host{border-radius:.25rem;border:1px solid #ccc;display:block;height:15rem;overflow:hidden;position:relative;width:20rem}cc-toggle{position:absolute;left:.5rem;top:.5rem;z-index:2}cc-map{height:100%;left:0;position:absolute;top:0;width:100%;z-index:1}`}}window.customElements.define("cc-logsmap",r);export{r as CcLogsMap};
//# sourceMappingURL=cc-logsmap.js.map

@@ -1,2 +0,2 @@

import"../atoms/cc-loader.js";import"../molecules/cc-error.js";import leaflet from"leaflet";import"leaflet.heat";import{css as t,html as e,LitElement as o}from"lit-element";import{i18n as i}from"../lib/i18n.js";import{leafletStyles as r}from"../styles/leaflet.js";import{withResizeObserver as s}from"../mixins/with-resize-observer.js";import{WORLD_GEOJSON as a}from"./world-110m.geo.js";import{classMap as n}from"lit-html/directives/class-map";const l=["#40b970","#36a562","#2c9254","#237f46","#1a6c39","#115a2c","#084920","#003814"];export class CcMap extends(s(o)){static get properties(){return{centerLat:{type:Number,attribute:"center-lat"},centerLon:{type:Number,attribute:"center-lon"},error:{type:Boolean,reflect:!0},heatmapPoints:{type:Array,attribute:!1},loading:{type:Boolean,reflect:!0},mode:{type:String},viewZoom:{type:Number,attribute:"view-zoom",reflect:!0}}}constructor(){super(),this.centerLat=48.9,this.centerLon=2.4,this.error=!1,this.heatmapPoints=[],this.loading=!1,this.mode="points",this.viewZoom=2,this._points=[],this._markers={},this._colorIndex=0}get centerLat(){return this._centerLat}get centerLon(){return this._centerLon}get viewZoom(){return this._viewZoom}get mode(){return this._mode}get heatmapPoints(){return this._heatmapPoints}set centerLat(t){const e=this._centerLat;this._centerLat=t,this.requestUpdate("centerLat",e),null!=this._map&&this._map.setView([t,this._centerLon])}set centerLon(t){const e=this._centerLon;this._centerLon=t,this.requestUpdate("centerLon",e),null!=this._map&&this._map.setView([this._centerLat,t])}set viewZoom(t){const e=this._viewZoom;this._viewZoom=t,this.requestUpdate("viewZoom",e),null!=this._map&&this._map.setZoom(t)}set mode(t){const e=this._mode;this._mode=t,this.requestUpdate("mode",e),this._resetCurrentLayer()}set heatmapPoints(t){this._heatmapPoints=t,null==this._map?this.updateComplete.then(()=>this._updateHeatmap(t)):this._updateHeatmap(t)}addPoints(t,e={}){if(null==this._map)return void this.updateComplete.then(()=>this.addPoints(t,e));const{spreadDuration:o=!1}=e,i=!1!==o?Math.floor(o/t.length):0;t.forEach((t,e)=>{setTimeout(()=>this._addPoint(t),i*e)})}_resetCurrentLayer(){null!=this._map&&("heatmap"===this._mode?this._map.addLayer(this._heatLayer):this._map.removeLayer(this._heatLayer),"points"===this._mode?this._map.addLayer(this._pointsLayer):this._map.removeLayer(this._pointsLayer))}_updateHeatmap(t){const e=t.map(({count:t})=>t),o=t.length>0?Math.max(...e):1,i=t.map(({lat:t,lon:e,count:o})=>[t,e,o]),r={blur:7,max:o,minOpacity:.3,radius:8};this._heatLayer.clearLayers().addLayer(leaflet.heatLayer(i,r))}_addPoint({lat:t,lon:e,count:o=1,delay:i=1e3,tooltip:r,country:s}){const a={lat:t,lon:e,count:o,delay:i,tooltip:r,country:s,coords:[t,e].join(",")};this._points.push(a),this._updateMarker(a),"number"==typeof i&&setTimeout(()=>{this._points=this._points.filter(t=>t!==a),this._updateMarker(a)},i)}_updateMarker(t){this._removeMarker(t);const e=this._points.filter(e=>e.coords===t.coords).map(t=>t.count).reduce((t,e)=>t+e,0);if(0===e)return;const o=this._getColorVariables(e),i=leaflet.divIcon({html:`<div class="dot" style="${o}"></div>`,iconSize:[30,30],bgPos:[15,15],className:"cc-map-marker"}),r=leaflet.marker([t.lat,t.lon],{icon:i}).addTo(this._pointsLayer);this._markers[t.coords]=r;const s=this._points.filter(e=>e.coords===t.coords&&null!=e.tooltip&&""!==e.tooltip).map(t=>t.tooltip),a=Array.from(new Set(s));if(s.length>0){const t=a.length>=3?"...":"",e=a.slice(0,3).join("<br>")+t;r.bindTooltip(e,{direction:"top"})}}_removeMarker(t){const e=this._markers[t.coords];null!=e&&(this._pointsLayer.removeLayer(e),delete this._markers[t.coords])}_getColorVariables(t){const e=Math.floor(Math.log(t)),o=Math.min(e,l.length),i=l[o];return[`--dot-color: ${i}ff`,`--dot-color-half: ${i}66`,`--dot-color-zero: ${i}00`].join(";")}onResize(){this._map.invalidateSize()}firstUpdated(){this._map=leaflet.map(this.renderRoot.getElementById("cc-map-container"),{attributionControl:!1,doubleClickZoom:!0,dragging:!0,keyboard:!0,maxBounds:[[-84,-180],[90,180]],maxBoundsViscosity:1,maxZoom:6,minZoom:1,zoomControl:!0}).setView([this._centerLat,this._centerLon],this._viewZoom),this._map.on("zoomanim",t=>{this.viewZoom=t.zoom}),this._map.zoomControl.setPosition("bottomright"),leaflet.geoJSON(a,{style:{className:"map-country"},pane:"tilePane"}).addTo(this._map),this._pointsLayer=leaflet.layerGroup(),this._heatLayer=leaflet.layerGroup(),this._resetCurrentLayer()}render(){const t=!this.error&&"heatmap"===this.mode&&null!=this.heatmapPoints&&0===this.heatmapPoints.length,o=this.loading?"loading":"info";return e`<div id=cc-map-container class=${n({"no-data":t})}></div><div class="${n({"no-data":t})} legend"><slot></slot></div>${this.loading&&!this.error?e`<cc-loader class=loader></cc-loader>`:""} ${this.error||t?e`<div class=msg-container>${this.error?e`<cc-error mode=${o}>${i("cc-map.error")}</cc-error>`:""} ${t?e`<div class=msg>${i("cc-map.no-points")}</div>`:""}</div>`:""}`}static get styles(){return[r,t`:host{display:flex;flex-direction:column;height:15rem;position:relative;width:20rem}#cc-map-container{flex:1 1 0;width:100%}:host([error]) .leaflet-control-container,:host([loading]) .leaflet-control-container{display:none}#cc-map-container.no-data,.legend.no-data,:host([error]) #cc-map-container,:host([error]) .legend,:host([loading]) #cc-map-container,:host([loading]) .legend{filter:blur(.1rem)}.leaflet-container{background-color:#aadaff;z-index:1}.map-country{fill:#f5f5f5;fill-opacity:1;stroke:#ddd;stroke-width:1}:host(:not(:empty)) .legend{background-color:#f1f5ff;box-shadow:inset 0 6px 6px -6px #a4b1c9;box-sizing:border-box;color:#2e2e2e;font-size:.9rem;font-style:italic;padding:.4rem 1rem}.loader{height:100%;left:0;position:absolute;top:0;width:100%;z-index:2000}.msg-container{align-items:center;display:flex;height:100%;justify-content:center;left:0;position:absolute;top:0;width:100%;z-index:2000}.msg,cc-error{max-width:80%}.msg{align-items:center;background-color:#fff;border-radius:.25rem;border:1px solid #bcc2d1;box-shadow:0 0 1rem #aaa;display:flex;justify-content:center;padding:1rem}.cc-map-marker{align-items:center;background:0 0;display:flex;justify-content:center}.dot{animation:2s infinite pulse;background:var(--dot-color);border-radius:50%;color:#1a1a1a;cursor:pointer;height:var(--dot-size);line-height:var(--dot-size);position:relative;text-align:center;width:var(--dot-size)}:host([view-zoom="1"]) .dot{--dot-size:6px}:host([view-zoom="2"]) .dot{--dot-size:8px}:host([view-zoom="3"]) .dot{--dot-size:10px}:host([view-zoom="4"]) .dot{--dot-size:12px}:host([view-zoom="5"]) .dot{--dot-size:14px}:host([view-zoom="6"]) .dot{--dot-size:16px}@keyframes pulse{0%{box-shadow:0 0 0 0 var(--dot-color-half)}70%{box-shadow:0 0 0 var(--dot-size) var(--dot-color-zero)}100%{box-shadow:0 0 0 0 var(--dot-color-zero)}}`]}}window.customElements.define("cc-map",CcMap);
//# sourceMappingURL=cc-map.js.map
import{html as t,css as e,LitElement as o}from"lit-element";import{classMap as r}from"lit-html/directives/class-map.js";import{i18n as i}from"../lib/i18n.js";import"../atoms/cc-loader.js";import"../molecules/cc-error.js";import s from"leaflet";import"leaflet.heat";import{WORLD_GEOJSON as a}from"../assets/world-110m.geo.js";import{withResizeObserver as n}from"../mixins/with-resize-observer.js";import{leafletStyles as l}from"../styles/leaflet.js";const d=["#40b970","#36a562","#2c9254","#237f46","#1a6c39","#115a2c","#084920","#003814"];class c extends(n(o)){static get properties(){return{centerLat:{type:Number,attribute:"center-lat"},centerLon:{type:Number,attribute:"center-lon"},error:{type:Boolean,reflect:!0},heatmapPoints:{type:Array},loading:{type:Boolean,reflect:!0},mode:{type:String},viewZoom:{type:Number,attribute:"view-zoom",reflect:!0}}}constructor(){super(),this.centerLat=48.9,this.centerLon=2.4,this.error=!1,this.loading=!1,this.mode="points",this.viewZoom=2,this._points=[],this._markers={},this._colorIndex=0}get centerLat(){return this._centerLat}get centerLon(){return this._centerLon}get viewZoom(){return this._viewZoom}get mode(){return this._mode}get heatmapPoints(){return this._heatmapPoints}set centerLat(t){const e=this._centerLat;this._centerLat=t,this.requestUpdate("centerLat",e),null!=this._map&&this._map.setView([t,this._centerLon])}set centerLon(t){const e=this._centerLon;this._centerLon=t,this.requestUpdate("centerLon",e),null!=this._map&&this._map.setView([this._centerLat,t])}set viewZoom(t){const e=this._viewZoom;this._viewZoom=t,this.requestUpdate("viewZoom",e),null!=this._map&&this._map.setZoom(t)}set mode(t){const e=this._mode;this._mode=t,this.requestUpdate("mode",e),this._resetCurrentLayer()}set heatmapPoints(t){this._heatmapPoints=t,null==this._map?this.updateComplete.then(()=>this._updateHeatmap(t)):this._updateHeatmap(t)}addPoints(t,e={}){if(null==this._map)return void this.updateComplete.then(()=>this.addPoints(t,e));const{spreadDuration:o=!1}=e,r=!1!==o?Math.floor(o/t.length):0;t.forEach((t,e)=>{setTimeout(()=>this._addPoint(t),r*e)})}_resetCurrentLayer(){null!=this._map&&("heatmap"===this._mode?this._map.addLayer(this._heatLayer):this._map.removeLayer(this._heatLayer),"points"===this._mode?this._map.addLayer(this._pointsLayer):this._map.removeLayer(this._pointsLayer))}_updateHeatmap(t){if(!Array.isArray(t))return;const e=t.map(({count:t})=>t),o=t.length>0?Math.max(...e):1,r=t.map(({lat:t,lon:e,count:o})=>[t,e,o]),i={blur:7,max:o,minOpacity:.3,radius:8};this._heatLayer.clearLayers().addLayer(s.heatLayer(r,i))}_addPoint({lat:t,lon:e,count:o=1,delay:r=1e3,tooltip:i,country:s}){const a={lat:t,lon:e,count:o,delay:r,tooltip:i,country:s,coords:[t,e].join(",")};this._points.push(a),this._updateMarker(a),"number"==typeof r&&setTimeout(()=>{this._points=this._points.filter(t=>t!==a),this._updateMarker(a)},r)}_updateMarker(t){this._removeMarker(t);const e=this._points.filter(e=>e.coords===t.coords).map(t=>t.count).reduce((t,e)=>t+e,0);if(0===e)return;const o=this._getColorVariables(e),r=s.divIcon({html:`<div class="dot" style="${o}"></div>`,iconSize:[30,30],bgPos:[15,15],className:"cc-map-marker"}),i=s.marker([t.lat,t.lon],{icon:r}).addTo(this._pointsLayer);this._markers[t.coords]=i;const a=this._points.filter(e=>e.coords===t.coords&&null!=e.tooltip&&""!==e.tooltip).map(t=>t.tooltip),n=Array.from(new Set(a));if(a.length>0){const t=n.length>=3?"...":"",e=n.slice(0,3).join("<br>")+t;i.bindTooltip(e,{direction:"top"})}}_removeMarker(t){const e=this._markers[t.coords];null!=e&&(this._pointsLayer.removeLayer(e),delete this._markers[t.coords])}_getColorVariables(t){const e=Math.floor(Math.log(t)),o=Math.min(e,d.length),r=d[o];return[`--dot-color: ${r}ff`,`--dot-color-half: ${r}66`,`--dot-color-zero: ${r}00`].join(";")}onResize(){this._map.invalidateSize()}firstUpdated(){this._map=s.map(this.renderRoot.getElementById("cc-map-container"),{attributionControl:!1,doubleClickZoom:!0,dragging:!0,keyboard:!0,maxBounds:[[-84,-180],[90,180]],maxBoundsViscosity:1,maxZoom:6,minZoom:1,zoomControl:!0}).setView([this._centerLat,this._centerLon],this._viewZoom),this._map.on("zoomanim",t=>{this.viewZoom=t.zoom}),this._map.zoomControl.setPosition("bottomright"),s.geoJSON(a,{style:{className:"map-country"},pane:"tilePane"}).addTo(this._map),this._pointsLayer=s.layerGroup(),this._heatLayer=s.layerGroup(),this._resetCurrentLayer()}render(){const e=!this.error&&"heatmap"===this.mode&&null!=this.heatmapPoints&&0===this.heatmapPoints.length,o=this.loading?"loading":"info";return t`<div id=cc-map-container class=${r({"no-data":e})}></div><div class="${r({"no-data":e})} legend"><slot></slot></div>${this.loading&&!this.error?t`<cc-loader class=loader></cc-loader>`:""} ${this.error||e?t`<div class=msg-container>${this.error?t`<cc-error mode=${o}>${i("cc-map.error")}</cc-error>`:""} ${e?t`<div class=msg>${i("cc-map.no-points")}</div>`:""}</div>`:""}`}static get styles(){return[l,e`:host{display:flex;flex-direction:column;height:15rem;position:relative;width:20rem}#cc-map-container{flex:1 1 0;width:100%}:host([error]) .leaflet-control-container,:host([loading]) .leaflet-control-container{display:none}#cc-map-container.no-data,.legend.no-data,:host([error]) #cc-map-container,:host([error]) .legend,:host([loading]) #cc-map-container,:host([loading]) .legend{filter:blur(.1rem)}.leaflet-container{background-color:#aadaff;z-index:1}.map-country{fill:#f5f5f5;fill-opacity:1;stroke:#ddd;stroke-width:1}:host(:not(:empty)) .legend{background-color:#f1f5ff;box-shadow:inset 0 6px 6px -6px #a4b1c9;box-sizing:border-box;color:#2e2e2e;font-size:.9rem;font-style:italic;padding:.4rem 1rem}.loader{height:100%;left:0;position:absolute;top:0;width:100%;z-index:2000}.msg-container{align-items:center;display:flex;height:100%;justify-content:center;left:0;position:absolute;top:0;width:100%;z-index:2000}.msg,cc-error{max-width:80%}.msg{align-items:center;background-color:#fff;border-radius:.25rem;border:1px solid #bcc2d1;box-shadow:0 0 1rem #aaa;display:flex;justify-content:center;padding:1rem}.cc-map-marker{align-items:center;background:0 0;display:flex;justify-content:center}.dot{animation:2s infinite pulse;background:var(--dot-color);border-radius:50%;color:#1a1a1a;cursor:pointer;height:var(--dot-size);line-height:var(--dot-size);position:relative;text-align:center;width:var(--dot-size)}:host([view-zoom="1"]) .dot{--dot-size:6px}:host([view-zoom="2"]) .dot{--dot-size:8px}:host([view-zoom="3"]) .dot{--dot-size:10px}:host([view-zoom="4"]) .dot{--dot-size:12px}:host([view-zoom="5"]) .dot{--dot-size:14px}:host([view-zoom="6"]) .dot{--dot-size:16px}@keyframes pulse{0%{box-shadow:0 0 0 0 var(--dot-color-half)}70%{box-shadow:0 0 0 var(--dot-size) var(--dot-color-zero)}100%{box-shadow:0 0 0 0 var(--dot-color-zero)}}`]}}window.customElements.define("cc-map",c);export{c as CcMap};
//# sourceMappingURL=cc-map.js.map

@@ -1,2 +0,2 @@

export function withResizeObserver(e){const t="ResizeObserver"in window?Promise.resolve(window.ResizeObserver):import("resize-observer-polyfill/dist/ResizeObserver.es.js").then(e=>e.default);return class extends e{_onResize({width:e}){null!=this.onResize&&this.onResize({width:e}),null!=this.breakpoints&&this.breakpoints.width.forEach(t=>{const s="w-gte-"+t;t<=e?this.setAttribute(s,""):this.removeAttribute(s);const i="w-lt-"+t;e<t?this.setAttribute(i,""):this.removeAttribute(i)})}async connectedCallback(){null!=super.connectedCallback&&super.connectedCallback();const e=new(await t)(()=>{const{width:e}=this.getBoundingClientRect();this._onResize({width:e})});e.observe(this),this._unobserveResize=()=>e.unobserve(this)}disconnectedCallback(){null!=super.connectedCallback&&super.disconnectedCallback(),this._unobserveResize&&this._unobserveResize()}}}
//# sourceMappingURL=with-resize-observer.js.map
function e(e){const t="ResizeObserver"in window?Promise.resolve(window.ResizeObserver):import("resize-observer-polyfill/dist/ResizeObserver.es.js").then(e=>e.default);return class extends e{_onResize({width:e}){null!=this.onResize&&this.onResize({width:e}),null!=this.breakpoints&&this.breakpoints.width.forEach(t=>{const s="w-gte-"+t;t<=e?this.setAttribute(s,""):this.removeAttribute(s);const i="w-lt-"+t;e<t?this.setAttribute(i,""):this.removeAttribute(i)})}async connectedCallback(){null!=super.connectedCallback&&super.connectedCallback();const e=new(await t)(()=>{const{width:e}=this.getBoundingClientRect();this._onResize({width:e})});e.observe(this),this._unobserveResize=()=>e.unobserve(this)}disconnectedCallback(){null!=super.connectedCallback&&super.disconnectedCallback(),this._unobserveResize&&this._unobserveResize()}}}export{e as withResizeObserver};
//# sourceMappingURL=with-resize-observer.js.map

@@ -1,2 +0,2 @@

import{css as t,html as e,LitElement as o}from"lit-element";export class CcBlockSection extends o{render(){return e`<slot name=title></slot><div class=section><slot name=info></slot><slot class=main></slot></div>`}static get styles(){return[t`:host{display:grid;grid-gap:1rem}:host(:not(:first-of-type)){border-top:1px solid #bcc2d1;margin-top:1rem;padding-top:2rem}::slotted([slot=title]){font-weight:700}::slotted([slot=title].danger){color:#cb233d}.section{display:flex;flex-wrap:wrap;margin:-.5rem -1.5rem}.main,::slotted([slot=info]){margin:.5rem 1.5rem}::slotted([slot=info]){color:#333;flex:1 1 15rem;line-height:1.5}.main{display:grid;flex:2 2 30rem;grid-gap:1rem}`]}}window.customElements.define("cc-block-section",CcBlockSection);
//# sourceMappingURL=cc-block-section.js.map
import{LitElement as t,html as e,css as o}from"lit-element";class l extends t{render(){return e`<slot name=title></slot><div class=section><slot name=info></slot><slot class=main></slot></div>`}static get styles(){return[o`:host{display:grid;grid-gap:1rem}:host(:not(:first-of-type)){border-top:1px solid #bcc2d1;margin-top:1rem;padding-top:2rem}::slotted([slot=title]){font-weight:700}::slotted([slot=title].danger){color:#cb233d}.section{display:flex;flex-wrap:wrap;margin:-.5rem -1.5rem}.main,::slotted([slot=info]){margin:.5rem 1.5rem}::slotted([slot=info]){color:#333;flex:1 1 15rem;line-height:1.5}.main{display:grid;flex:2 2 30rem;grid-gap:1rem}`]}}window.customElements.define("cc-block-section",l);export{l as CcBlockSection};
//# sourceMappingURL=cc-block-section.js.map

@@ -1,2 +0,2 @@

import"../atoms/cc-button.js";import"../atoms/cc-expand.js";import"../atoms/cc-img.js";import t from"./down.svg";import e from"./up.svg";import{classMap as o}from"lit-html/directives/class-map.js";import{css as s,html as r,LitElement as i}from"lit-element";import{i18n as l}from"../lib/i18n.js";export class CcBlock extends i{static get properties(){return{icon:{type:String},state:{type:String,reflect:!0},_overlay:{type:Boolean,attribute:!1}}}constructor(){super(),this.state="off",this._overlay=!1}_clickToggle(){"close"===this.state?this.state="open":"open"===this.state&&(this.state="close")}_getToggleTitle(){return"close"===this.state?l("cc-block.toggle.close"):l("cc-block.toggle.open")}render(){const s="open"===this.state||"close"===this.state,i="close"!==this.state;return r`<div class=head @click=${this._clickToggle}>${null!=this.icon?r`<cc-img src=${this.icon}></cc-img>`:""}<slot name=title></slot>${s?r`<cc-button @cc-button:click=${this._clickToggle} image=${i?e:t} title=${this._getToggleTitle()}></cc-button>`:""}<slot name=button></slot></div><cc-expand class="${o({"main-wrapper--overlay":this._overlay})} main-wrapper">${!s||i?r`<div class=main><slot></slot></div>`:""}</cc-expand><slot name=overlay></slot>`}firstUpdated(){const t=this.shadowRoot.querySelector('slot[name="overlay"]');t.addEventListener("slotchange",e=>{const o=this._overlay;this._overlay=t.assignedNodes().length>0,this.requestUpdate("_overlay",o)})}static get styles(){return[s`:host{background-color:#fff;border-radius:.25rem;border:1px solid #bcc2d1;box-sizing:border-box;display:grid;overflow:hidden}.head{align-items:center;display:flex;padding:1rem}:host([state=close]) .head:hover,:host([state=open]) .head:hover{background-color:#fafafa;cursor:pointer}cc-img{border-radius:.25rem;margin-right:1rem;height:1.5rem;width:1.5rem}::slotted([slot=title]){color:#3a3871;flex:1 1 0;font-size:1.2rem;font-weight:700}.main{display:grid;grid-gap:1rem;padding:.5rem 1rem 1rem}.main-wrapper--overlay{filter:blur(.3rem);opacity:.35}.main-wrapper,::slotted([slot=overlay]){grid-area:2/1/auto/auto}::slotted([slot=overlay]){align-content:center;display:grid;justify-items:center;place-self:stretch;z-index:10}::slotted(.cc-block_empty-msg){color:#555;font-style:italic}`]}}window.customElements.define("cc-block",CcBlock);
//# sourceMappingURL=cc-block.js.map
import{LitElement as t,html as e,css as s}from"lit-element";import{classMap as o}from"lit-html/directives/class-map.js";import{assetUrl as i}from"../lib/asset-url.js";import{i18n as r}from"../lib/i18n.js";import"../atoms/cc-button.js";import"../atoms/cc-expand.js";import"../atoms/cc-img.js";const a=i(import.meta,"../assets/down.svg"),l=i(import.meta,"../assets/up.svg");class c extends t{static get properties(){return{icon:{type:String},state:{type:String,reflect:!0},_overlay:{type:Boolean,attribute:!1}}}constructor(){super(),this.state="off",this._overlay=!1}_clickToggle(){"close"===this.state?this.state="open":"open"===this.state&&(this.state="close")}_getToggleTitle(){return"close"===this.state?r("cc-block.toggle.close"):r("cc-block.toggle.open")}render(){const t="open"===this.state||"close"===this.state,s="close"!==this.state;return e`<div class=head @click=${this._clickToggle}>${null!=this.icon?e`<cc-img src=${this.icon}></cc-img>`:""}<slot name=title></slot>${t?e`<cc-button @cc-button:click=${this._clickToggle} image=${s?l:a} title=${this._getToggleTitle()}></cc-button>`:""}<slot name=button></slot></div><cc-expand class="${o({"main-wrapper--overlay":this._overlay})} main-wrapper">${!t||s?e`<div class=main><slot></slot></div>`:""}</cc-expand><slot name=overlay></slot>`}firstUpdated(){const t=this.shadowRoot.querySelector('slot[name="overlay"]');t.addEventListener("slotchange",e=>{const s=this._overlay;this._overlay=t.assignedNodes().length>0,this.requestUpdate("_overlay",s)})}static get styles(){return[s`:host{background-color:#fff;border-radius:.25rem;border:1px solid #bcc2d1;box-sizing:border-box;display:grid;overflow:hidden}.head{align-items:center;display:flex;padding:1rem}:host([state=close]) .head:hover,:host([state=open]) .head:hover{background-color:#fafafa;cursor:pointer}cc-img{align-self:flex-start;border-radius:.25rem;margin-right:1rem;height:1.5rem;width:1.5rem}::slotted([slot=title]){color:#3a3871;flex:1 1 0;font-size:1.2rem;font-weight:700}.main{display:grid;grid-gap:1rem;padding:.5rem 1rem 1rem}.main-wrapper--overlay{filter:blur(.3rem);opacity:.35}.main-wrapper,::slotted([slot=overlay]){grid-area:2/1/auto/auto}::slotted([slot=overlay]){align-content:center;display:grid;justify-items:center;z-index:10}::slotted(.cc-block_empty-msg){color:#555;font-style:italic}`]}}window.customElements.define("cc-block",c);export{c as CcBlock};
//# sourceMappingURL=cc-block.js.map

@@ -1,2 +0,2 @@

import"../atoms/cc-button.js";import"../atoms/cc-loader.js";import t from"./warning.svg";import{css as r,html as o,LitElement as e}from"lit-element";import{dispatchCustomEvent as i}from"../lib/events.js";import{i18n as c}from"../lib/i18n.js";export class CcError extends e{static get properties(){return{mode:{type:String,reflect:!0}}}constructor(){super(),this.mode="inline"}_onOkClick(){i(this,"ok")}render(){return o`${"loading"===this.mode?o`<cc-loader></cc-loader>`:""}<div><img src=${t} alt=""><slot></slot></div>${"confirm"===this.mode?o`<cc-button @cc-button:click=${this._onOkClick}>${c("cc-error.ok")}</cc-button>`:""}`}static get styles(){return[r`:host{display:block}:host([mode=confirm]),:host([mode=info]),:host([mode=loading]){align-items:center;background-color:#fff;border-radius:.25rem;border:1px solid #bcc2d1;box-shadow:0 0 1rem #aaa;display:grid;grid-gap:1rem;justify-content:center;justify-items:center;padding:1rem}:host([mode=loading]){grid-template-columns:min-content auto}cc-loader{height:1.5rem;width:1.5rem}img{display:inline-block;height:1rem;margin-right:.4rem;margin-top:.1rem;vertical-align:text-top;width:1rem}cc-button{display:block;margin:0}`]}}window.customElements.define("cc-error",CcError);
//# sourceMappingURL=cc-error.js.map
import{LitElement as t,html as e,css as o}from"lit-element";import{assetUrl as r}from"../lib/asset-url.js";import{dispatchCustomEvent as i}from"../lib/events.js";import{i18n as s}from"../lib/i18n.js";import"../atoms/cc-loader.js";import"../atoms/cc-button.js";const c=r(import.meta,"../assets/warning.svg");class n extends t{static get properties(){return{mode:{type:String,reflect:!0}}}constructor(){super(),this.mode="inline"}_onOkClick(){i(this,"ok")}render(){return e`${"loading"===this.mode?e`<cc-loader></cc-loader>`:""}<div><img src=${c} alt=""><slot></slot></div>${"confirm"===this.mode?e`<cc-button @cc-button:click=${this._onOkClick}>${s("cc-error.ok")}</cc-button>`:""}`}static get styles(){return[o`:host{display:block}:host([mode=confirm]),:host([mode=info]),:host([mode=loading]){align-items:center;background-color:#fff;border-radius:.25rem;border:1px solid #bcc2d1;box-shadow:0 0 1rem #aaa;display:grid;grid-gap:1rem;justify-content:center;justify-items:center;padding:1rem}:host([mode=loading]){grid-template-columns:min-content auto}cc-loader{height:1.5rem;width:1.5rem}img{display:inline-block;height:1rem;margin-right:.4rem;margin-top:.1rem;vertical-align:text-top;width:1rem}cc-button{display:block}`]}}window.customElements.define("cc-error",n);export{n as CcError};
//# sourceMappingURL=cc-error.js.map

@@ -1,2 +0,2 @@

import"../atoms/cc-button.js";import"../molecules/cc-error.js";import t from"./git.svg";import e from"./restart-failed.svg";import i from"./restarting.svg";import s from"./restarting-with-downtime.svg";import a from"./running.svg";import r from"./start-failed.svg";import n from"./starting.svg";import o from"./stopped.svg";import c from"./unknown.svg";import{ccLink as l,linkStyles as m}from"../templates/cc-link.js";import{classMap as p}from"lit-html/directives/class-map.js";import{css as d,html as g,LitElement as u}from"lit-element";import{dispatchCustomEvent as h}from"../lib/events.js";import{i18n as b}from"../lib/i18n.js";import{ifDefined as f}from"lit-html/directives/if-defined.js";import{skeleton as $}from"../styles/skeleton.js";const _={git:t,running:a,starting:n},w={"restart-failed":e,restarting:i,"restarting-with-downtime":s,running:a,"start-failed":r,starting:n,stopped:o};export class CcHeaderApp extends u{static get properties(){return{app:{type:Object,attribute:!1},disableButtons:{type:Boolean,attribute:"disable-buttons",reflect:!0},error:{type:Boolean,reflect:!0},runningCommit:{type:String,attribute:"running-commit"},startingCommit:{type:String,attribute:"starting-commit"},status:{type:String},_lastUserAction:{type:String,attribute:!1}}}constructor(){super(),this.disableButtons=!1,this.error=!1}set status(t){const e=this._status;this._lastUserAction=this.status!==t?null:this._lastUserAction,this._status=t,this.requestUpdate("status",e)}get status(){return this._status}static get skeletonApp(){return{name:"??????????????????????????",commit:"????????????????????????????????????????"}}static get skeletonStatus(){return"unknown"}_getCommitTitle(t,e){if(null!=e)return"git"===t?b("cc-header-app.commits.git",{commit:e}):"running"===t?b("cc-header-app.commits.running",{commit:e}):"starting"===t?b("cc-header-app.commits.starting",{commit:e}):void 0}_getStatusMsg(t){return"restart-failed"===t?b("cc-header-app.state-msg.app-is-running")+" "+b("cc-header-app.state-msg.last-deploy-failed"):"restarting"===t||"restarting-with-downtime"===t?b("cc-header-app.state-msg.app-is-restarting"):"running"===t?b("cc-header-app.state-msg.app-is-running"):"start-failed"===t?b("cc-header-app.state-msg.app-is-stopped")+" "+b("cc-header-app.state-msg.last-deploy-failed"):b("starting"===t?"cc-header-app.state-msg.app-is-starting":"stopped"===t?"cc-header-app.state-msg.app-is-stopped":"cc-header-app.state-msg.unknown-state")}_getLastUserActionMsg(){return"start"===this._lastUserAction?b("cc-header-app.user-action-msg.app-will-start"):"restart"===this._lastUserAction?b("cc-header-app.user-action-msg.deploy-will-begin"):"cancel"===this._lastUserAction?b("cc-header-app.user-action-msg.deploy-cancelled"):"stop"===this._lastUserAction?b("cc-header-app.user-action-msg.app-will-stop"):void 0}_onStart(t){this._lastUserAction="start",h(this,"start",t)}_onRestart(t){this._lastUserAction="restart",h(this,"restart",t)}_onCancel(){this._lastUserAction="cancel",h(this,"cancel")}_onStop(){this._lastUserAction="stop",h(this,"stop")}_renderCommit(t,e,i){return null==t&&"git"!==e?"":g`<span class="${p({"is-deploying":"starting"===e})} commit-item" title=${f(i?void 0:this._getCommitTitle(e,t))} data-type=${e}><img class=commit_img src=${_[e]} alt=""> ${null!=t?g`<span class=${p({skeleton:i})}>${t.slice(0,8)}<span class=commit_rest>${t.slice(8)}</span></span>`:""} ${null==t?g`<span>${b("cc-header-app.commits.no-commits")}</span>`:""}</span>`}render(){if(this.error)return g`<cc-error>${b("cc-header-app.error")}</cc-error>`;const t=null==this.app,{name:e,commit:i,variantName:s,variantLogo:a,lastDeploymentLogsUrl:r}=t?CcHeaderApp.skeletonApp:this.app,n=null==this.status,o=n?CcHeaderApp.skeletonStatus:this.status,m=["restarting","restarting-with-downtime","starting"].includes(o),d=["restart-failed","restarting","running"].includes(o),u=null!=this._lastUserAction||this.disableButtons,h=["start-failed","stopped","unknown"].includes(o),$=["start-failed","stopped"].includes(o),_=n||["restart-failed","running","unknown"].includes(o),v="start"!==this._lastUserAction&&"stop"!==this._lastUserAction,y=["restart-failed","restarting","restarting-with-downtime","starting","start-failed"].includes(o),k=this.disableButtons?b("cc-header-app.disable-buttons"):void 0;return g`<div class=main><div class="${p({skeleton:t})} flavor-logo" title=${f(s)}><img class=flavor-logo_img src=${f(a)} alt=""></div><div class=details><div class=name><span class=${p({skeleton:t})}>${e}</span></div><div class=commits>${this._renderCommit(i,"git",t)} ${d?this._renderCommit(this.runningCommit,"running",t):""} ${m?this._renderCommit(this.startingCommit,"starting",t):""}</div></div><div class=buttons>${$?g`<cc-button title=${f(k)} ?disabled=${u} @cc-button:click=${()=>this._onStart("normal")}>${b("cc-header-app.action.start")}</cc-button><cc-button title=${f(k)} ?disabled=${u} @cc-button:click=${()=>this._onStart("rebuild")}>${b("cc-header-app.action.start-rebuild")}</cc-button><cc-button title=${f(k)} ?disabled=${u} @cc-button:click=${()=>this._onStart("last-commit")}>${b("cc-header-app.action.start-last-commit")}</cc-button>`:""} ${_?g`<cc-button title=${f(k)} ?skeleton=${n} ?disabled=${u} @cc-button:click=${()=>this._onRestart("normal")}>${b("cc-header-app.action.restart")}</cc-button><cc-button title=${f(k)} ?skeleton=${n} ?disabled=${u} @cc-button:click=${()=>this._onRestart("rebuild")}>${b("cc-header-app.action.restart-rebuild")}</cc-button><cc-button title=${f(k)} ?skeleton=${n} ?disabled=${u} @cc-button:click=${()=>this._onRestart("last-commit")}>${b("cc-header-app.action.restart-last-commit")}</cc-button>`:""} ${m?g`<cc-button warning outlined title=${f(k)} ?disabled=${u} @cc-button:click=${this._onCancel}>${b("cc-header-app.action.cancel-deployment")}</cc-button>`:""}<cc-button danger outlined delay=3 title=${f(k)} ?skeleton=${n} ?disabled=${u||h} @cc-button:click=${this._onStop}>${b("cc-header-app.action.stop")}</cc-button></div></div><div class="${p({"is-deploying":m})} messages">${v?g`<img class=status-icon src=${w[o]||c} alt=""> <span class=${p({skeleton:n})}>${this._getStatusMsg(o)} </span>${y?l(r,b("cc-header-app.read-logs")):""}`:""} ${null!=this._lastUserAction?g`${this._getLastUserActionMsg()}`:""}</div>`}static get styles(){return[$,m,d`:host{background-color:#fff;border-radius:.25rem;border:1px solid #bcc2d1;display:flex;flex-direction:column;flex-wrap:wrap}cc-error{padding:1rem;text-align:center}.main{align-items:center;box-sizing:border-box;display:flex;flex-wrap:wrap;justify-content:flex-end}.flavor-logo{border-radius:.25rem;align-self:flex-start;height:3.25rem;margin:1rem;overflow:hidden;width:3.25rem}.flavor-logo_img{display:block;height:100%;width:100%}.skeleton .flavor-logo_img{opacity:0}.details{display:flex;flex-direction:column;flex:1 1 0;min-height:3rem;margin:1rem 1rem 1rem 0;justify-content:space-between}.name{font-weight:700;font-size:1.1rem;min-width:12rem}.commits{display:flex;flex-wrap:wrap}.commit-item{align-items:flex-start;display:flex;margin-right:.75rem;margin-top:.5rem}.commit-item[data-type=git]{color:#5d5d5d}.commit-item[data-type=running]{color:#2faa60}.commit-item[data-type=starting]{color:#2b96fd}.commit_img{height:1.1rem;margin-right:.2rem;overflow:hidden;width:1.1rem}.commit_rest{font-size:0}.buttons{display:flex;flex-wrap:wrap;padding:.5rem 1rem .5rem 0}cc-button{flex:1 1 auto;margin:.5rem 0 .5rem 1rem;min-width:0}:host([disable-buttons]) cc-button{cursor:not-allowed}@keyframes deploying{from{opacity:.85}to{opacity:1}}.messages{background-color:#f1f5ff;box-shadow:inset 0 6px 6px -6px #a4b1c9;box-sizing:border-box;color:#2e2e2e;font-size:.9rem;font-style:italic;padding:.4rem 1rem}.is-deploying{animation-direction:alternate;animation-duration:.5s;animation-iteration-count:infinite;animation-name:deploying}.status-icon{height:1.25rem;vertical-align:middle;min-width:1.25rem}[title]{cursor:help}.skeleton{background-color:#bbb}`]}}window.customElements.define("cc-header-app",CcHeaderApp);
//# sourceMappingURL=cc-header-app.js.map
import{LitElement as t,html as s,css as e}from"lit-element";import{classMap as i}from"lit-html/directives/class-map.js";import{ifDefined as a}from"lit-html/directives/if-defined.js";import{assetUrl as r}from"../lib/asset-url.js";import{dispatchCustomEvent as n}from"../lib/events.js";import{i18n as c}from"../lib/i18n.js";import{skeletonStyles as o}from"../styles/skeleton.js";import{ccLink as l,linkStyles as p}from"../templates/cc-link.js";import"../atoms/cc-button.js";import"../molecules/cc-error.js";import"../atoms/cc-flex-gap.js";import{waitingStyles as m}from"../styles/waiting.js";const d=r(import.meta,"../assets/git.svg"),g=r(import.meta,"../assets/restart-failed.svg"),u=r(import.meta,"../assets/restarting-with-downtime.svg"),h=r(import.meta,"../assets/restarting.svg"),b=r(import.meta,"../assets/running.svg"),f=r(import.meta,"../assets/start-failed.svg"),$=r(import.meta,"../assets/starting.svg"),_=r(import.meta,"../assets/stopped.svg"),v=r(import.meta,"../assets/unknown.svg"),w={git:d,running:b,starting:$},k={"restart-failed":g,restarting:h,"restarting-with-downtime":u,running:b,"start-failed":f,starting:$,stopped:_},y={name:"??????????????????????????",commit:"????????????????????????????????????????"};class x extends t{static get properties(){return{app:{type:Object},disableButtons:{type:Boolean,attribute:"disable-buttons",reflect:!0},error:{type:Boolean,reflect:!0},runningCommit:{type:String,attribute:"running-commit"},startingCommit:{type:String,attribute:"starting-commit"},status:{type:String},_lastUserAction:{type:String,attribute:!1}}}constructor(){super(),this.disableButtons=!1,this.error=!1}set status(t){const s=this._status;this._lastUserAction=this.status!==t?null:this._lastUserAction,this._status=t,this.requestUpdate("status",s)}get status(){return this._status}_getCommitTitle(t,s){if(null!=s)return"git"===t?c("cc-header-app.commits.git",{commit:s}):"running"===t?c("cc-header-app.commits.running",{commit:s}):"starting"===t?c("cc-header-app.commits.starting",{commit:s}):void 0}_getStatusMsg(t){return"restart-failed"===t?c("cc-header-app.state-msg.app-is-running")+" "+c("cc-header-app.state-msg.last-deploy-failed"):"restarting"===t||"restarting-with-downtime"===t?c("cc-header-app.state-msg.app-is-restarting"):"running"===t?c("cc-header-app.state-msg.app-is-running"):"start-failed"===t?c("cc-header-app.state-msg.app-is-stopped")+" "+c("cc-header-app.state-msg.last-deploy-failed"):c("starting"===t?"cc-header-app.state-msg.app-is-starting":"stopped"===t?"cc-header-app.state-msg.app-is-stopped":"cc-header-app.state-msg.unknown-state")}_getLastUserActionMsg(){return"start"===this._lastUserAction?c("cc-header-app.user-action-msg.app-will-start"):"restart"===this._lastUserAction?c("cc-header-app.user-action-msg.deploy-will-begin"):"cancel"===this._lastUserAction?c("cc-header-app.user-action-msg.deploy-cancelled"):"stop"===this._lastUserAction?c("cc-header-app.user-action-msg.app-will-stop"):void 0}_onStart(t){this._lastUserAction="start",n(this,"start",t)}_onRestart(t){this._lastUserAction="restart",n(this,"restart",t)}_onCancel(){this._lastUserAction="cancel",n(this,"cancel")}_onStop(){this._lastUserAction="stop",n(this,"stop")}_renderCommit(t,e,r){return null==t&&"git"!==e?"":s`<span class="${i({"cc-waiting":"starting"===e})} commit" title=${a(r?void 0:this._getCommitTitle(e,t))} data-type=${e}><img class=commit_img src=${w[e]} alt=""> ${null!=t?s`<span class=${i({skeleton:r})}>${t.slice(0,8)}<span class=commit_rest>${t.slice(8)}</span></span>`:""} ${null==t?s`<span>${c("cc-header-app.commits.no-commits")}</span>`:""}</span>`}render(){if(this.error)return s`<cc-error>${c("cc-header-app.error")}</cc-error>`;const t=null==this.app,{name:e,commit:r,variantName:n,variantLogo:o,lastDeploymentLogsUrl:p}=t?y:this.app,m=null==this.status,d=m?"unknown":this.status,g=["restarting","restarting-with-downtime","starting"].includes(d),u=["restart-failed","restarting","running"].includes(d),h=null!=this._lastUserAction||this.disableButtons,b=["start-failed","stopped","unknown"].includes(d),f=["start-failed","stopped"].includes(d),$=m||["restart-failed","running","unknown"].includes(d),_="start"!==this._lastUserAction&&"stop"!==this._lastUserAction,w=["restart-failed","restarting","restarting-with-downtime","starting","start-failed"].includes(d),x=this.disableButtons?c("cc-header-app.disable-buttons"):void 0;return s`<cc-flex-gap class=main><div class="${i({skeleton:t})} flavor-logo" title=${a(n)}><img class=flavor-logo_img src=${a(o)} alt=""></div><div class=details><div class=name><span class=${i({skeleton:t})}>${e}</span></div><cc-flex-gap class=commits>${this._renderCommit(r,"git",t)} ${u?this._renderCommit(this.runningCommit,"running",t):""} ${g?this._renderCommit(this.startingCommit,"starting",t):""}</cc-flex-gap></div><cc-flex-gap class=buttons>${f?s`<cc-button title=${a(x)} ?disabled=${h} @cc-button:click=${()=>this._onStart("normal")}>${c("cc-header-app.action.start")}</cc-button><cc-button title=${a(x)} ?disabled=${h} @cc-button:click=${()=>this._onStart("rebuild")}>${c("cc-header-app.action.start-rebuild")}</cc-button><cc-button title=${a(x)} ?disabled=${h} @cc-button:click=${()=>this._onStart("last-commit")}>${c("cc-header-app.action.start-last-commit")}</cc-button>`:""} ${$?s`<cc-button title=${a(x)} ?skeleton=${m} ?disabled=${h} @cc-button:click=${()=>this._onRestart("normal")}>${c("cc-header-app.action.restart")}</cc-button><cc-button title=${a(x)} ?skeleton=${m} ?disabled=${h} @cc-button:click=${()=>this._onRestart("rebuild")}>${c("cc-header-app.action.restart-rebuild")}</cc-button><cc-button title=${a(x)} ?skeleton=${m} ?disabled=${h} @cc-button:click=${()=>this._onRestart("last-commit")}>${c("cc-header-app.action.restart-last-commit")}</cc-button>`:""} ${g?s`<cc-button warning outlined title=${a(x)} ?disabled=${h} @cc-button:click=${this._onCancel}>${c("cc-header-app.action.cancel-deployment")}</cc-button>`:""}<cc-button danger outlined delay=3 title=${a(x)} ?skeleton=${m} ?disabled=${h||b} @cc-button:click=${this._onStop}>${c("cc-header-app.action.stop")}</cc-button></cc-flex-gap></cc-flex-gap><div class="${i({"cc-waiting":g})} messages">${_?s`<img class=status-icon src=${k[d]||v} alt=""> <span class=${i({skeleton:m})}>${this._getStatusMsg(d)} </span>${w?l(p,c("cc-header-app.read-logs")):""}`:""} ${null!=this._lastUserAction?s`${this._getLastUserActionMsg()}`:""}</div>`}static get styles(){return[o,p,m,e`:host{--cc-gap:1rem;background-color:#fff;border-radius:.25rem;border:1px solid #bcc2d1;display:block}cc-error{padding:var(--cc-gap);text-align:center}.main{padding:var(--cc-gap)}.flavor-logo{border-radius:.25rem;align-self:flex-start;height:3.25rem;overflow:hidden;width:3.25rem}.flavor-logo_img{display:block;height:100%;width:100%}.skeleton .flavor-logo_img{opacity:0}.details{display:flex;flex-direction:column;flex:1 1 0;justify-content:space-between}.name{font-weight:700;font-size:1.1rem;min-width:12rem}.commit{align-items:flex-start;display:flex}.commit[data-type=git]{color:#5d5d5d}.commit[data-type=running]{color:#2faa60}.commit[data-type=starting]{color:#2b96fd}.commit_img{height:1.1rem;margin-right:.2rem;overflow:hidden;width:1.1rem}.commit_rest{font-size:0}.buttons{align-self:center}cc-button{flex:1 1 auto;min-width:0}:host([disable-buttons]) cc-button{cursor:not-allowed}.messages{background-color:#f1f5ff;box-shadow:inset 0 6px 6px -6px #a4b1c9;box-sizing:border-box;color:#2e2e2e;font-size:.9rem;font-style:italic;padding:.4rem var(--cc-gap)}.status-icon{height:1.25rem;vertical-align:middle;min-width:1.25rem}[title]{cursor:help}.skeleton{background-color:#bbb}`]}}window.customElements.define("cc-header-app",x);export{x as CcHeaderApp};
//# sourceMappingURL=cc-header-app.js.map

@@ -1,2 +0,2 @@

import"../atoms/cc-img.js";import"../molecules/cc-error.js";import e from"./badge-white.svg";import r from"./phone.svg";import{classMap as i}from"lit-html/directives/class-map.js";import{css as t,html as o,LitElement as s}from"lit-element";import{i18n as a}from"../lib/i18n.js";import{ifDefined as n}from"lit-html/directives/if-defined";import{skeleton as l}from"../styles/skeleton.js";export class CcHeaderOrga extends s{static get properties(){return{error:{type:Boolean,reflect:!0},orga:{type:Object,attribute:!1}}}constructor(){super(),this.error=!1}static get skeletonOrga(){return{name:"??????????????????????????"}}render(){const t=null==this.orga,s=t?CcHeaderOrga.skeletonOrga:this.orga,l=t?"":this.orga.name.split(" ").slice(0,2).map(e=>e[0].toUpperCase()).join("");return o`<div class="${i({enterprise:s.cleverEnterprise})} wrapper">${this.error?o`<cc-error>${a("cc-header-orga.error")}</cc-error>`:""} ${this.error?"":o`<cc-img class=logo ?skeleton=${t} src=${n(s.avatar)} text=${l}></cc-img><div class=details><div class="${i({skeleton:t})} name">${s.name}</div>${s.cleverEnterprise?o`<div class=spacer></div><div class=badge><img class=badge_img src=${e} alt=""> Clever Cloud Enterprise</div>`:""}</div><div class=spacer></div>${null!=s.emergencyNumber?o`<div class=hotline><div class=hotline_label>${a("cc-header-orga.hotline")}</div><a class=hotline_number href=tel:${s.emergencyNumber}><img class=hotline_number_img src=${r} alt=""> ${s.emergencyNumber}</a></div>`:""}`}</div>`}static get styles(){return[l,t`:host{display:block}.wrapper{align-items:stretch;background-color:#fff;border-radius:.25rem;border:1px solid #bcc2d1;display:flex;flex-wrap:wrap;padding:0 1rem 1rem;overflow:hidden}.wrapper.enterprise{border-color:#1ea2f1;border-width:2px}cc-error{margin-top:1rem}.logo{border-radius:.25rem;height:3.25rem;margin-right:1rem;margin-top:1rem;width:3.25rem}.details,.hotline{align-items:flex-start;display:flex;margin-top:1rem;flex-direction:column}.details{justify-content:center;margin-right:1rem}.hotline{justify-content:space-between}.name{font-size:1.1rem;font-weight:700;min-width:12rem}.badge,.hotline_number{align-items:center;border-radius:.15rem;display:flex;font-size:.8rem;font-weight:700;padding:.2rem .4rem}.badge{background:#1ea2f1;color:#fff}.hotline_number{cursor:pointer;border:1px solid #1ea2f1;color:#1ea2f1}.badge_img,.hotline_number_img{height:.9rem;margin-right:.4rem;overflow:hidden;width:.9rem}.hotline_number:focus{box-shadow:0 0 0 .2em rgba(50,115,220,.25);outline:0}.hotline_number:hover{box-shadow:0 1px 3px #888}.hotline_number:active{box-shadow:none;outline:0}.hotline_number::-moz-focus-inner{border:0}.spacer{flex:1 1 0}.skeleton{background-color:#bbb}`]}}window.customElements.define("cc-header-orga",CcHeaderOrga);
//# sourceMappingURL=cc-header-orga.js.map
import{LitElement as e,html as r,css as o}from"lit-element";import{classMap as t}from"lit-html/directives/class-map.js";import{ifDefined as i}from"lit-html/directives/if-defined.js";import{assetUrl as s}from"../lib/asset-url.js";import{i18n as a}from"../lib/i18n.js";import{skeletonStyles as l}from"../styles/skeleton.js";import"../atoms/cc-img.js";import"../molecules/cc-error.js";import"../atoms/cc-flex-gap.js";const n=s(import.meta,"../assets/badge-white.svg"),c=s(import.meta,"../assets/phone.svg"),m={name:"??????????????????????????"};class d extends e{static get properties(){return{error:{type:Boolean,reflect:!0},orga:{type:Object}}}constructor(){super(),this.error=!1}render(){const e=null==this.orga,o=e?m:this.orga,s=e?"":this.orga.name.split(" ").slice(0,2).map(e=>e[0].toUpperCase()).join("");return r`<cc-flex-gap class="${t({enterprise:o.cleverEnterprise})} wrapper">${this.error?r`<cc-error>${a("cc-header-orga.error")}</cc-error>`:""} ${this.error?"":r`<cc-img class=logo ?skeleton=${e} src=${i(o.avatar)} text=${s}></cc-img><div class=details><div class="${t({skeleton:e})} name">${o.name}</div>${o.cleverEnterprise?r`<div class=spacer></div><div class=badge><img class=badge_img src=${n} alt=""> Clever Cloud Enterprise</div>`:""}</div><div class=spacer></div>${null!=o.emergencyNumber?r`<div class=hotline><div class=hotline_label>${a("cc-header-orga.hotline")}</div><a class=hotline_number href=tel:${o.emergencyNumber}><img class=hotline_number_img src=${c} alt=""> ${o.emergencyNumber}</a></div>`:""}`}</cc-flex-gap>`}static get styles(){return[l,o`:host{--cc-gap:1rem;display:block}.wrapper{background-color:#fff;border-radius:.25rem;border:1px solid #bcc2d1;display:block;padding:var(--cc-gap);overflow:hidden}.wrapper.enterprise{border-color:#1ea2f1;border-width:2px}.logo{border-radius:.25rem;height:3.25rem;width:3.25rem}.details,.hotline{align-items:flex-start;display:flex;flex-direction:column}.details{justify-content:center}.hotline{justify-content:space-between}.name{font-size:1.1rem;font-weight:700;min-width:12rem}.badge,.hotline_number{align-items:center;border-radius:.15rem;display:flex;font-size:.8rem;font-weight:700;padding:.2rem .4rem}.badge{background:#1ea2f1;color:#fff}.hotline_number{cursor:pointer;border:1px solid #1ea2f1;color:#1ea2f1}.badge_img,.hotline_number_img{height:.9rem;margin-right:.4rem;overflow:hidden;width:.9rem}.hotline_number:focus{box-shadow:0 0 0 .2em rgba(50,115,220,.25);outline:0}.hotline_number:hover{box-shadow:0 1px 3px #888}.hotline_number:active{box-shadow:none;outline:0}.hotline_number::-moz-focus-inner{border:0}.spacer{flex:1 1 0}.skeleton{background-color:#bbb}`]}}window.customElements.define("cc-header-orga",d);export{d as CcHeaderOrga};
//# sourceMappingURL=cc-header-orga.js.map

@@ -1,2 +0,2 @@

import{css as t,html as e,LitElement as r}from"lit-element";import{withResizeObserver as a}from"../mixins/with-resize-observer.js";export class CcOverview extends(a(r)){static get properties(){return{mode:{type:String,reflect:!0}}}constructor(){super(),this.breakpoints={width:[570,860,1150]}}render(){return e`<slot></slot>`}static get styles(){return t`:host{display:grid;grid-gap:1rem;--cc-overview-head-count:1}:host([w-lt-570]){grid-template-columns:[main-start] 1fr [main-end]}:host([w-gte-570][w-lt-860]){grid-template-columns:[main-start] 1fr 1fr [main-end]}:host([w-gte-860][w-lt-1150]){grid-template-columns:[main-start] 1fr 1fr [main-end] 1fr}:host([w-gte-1150]){grid-template-columns:[main-start] 1fr 1fr 1fr [main-end] 1fr}:host([mode=app][w-lt-570]){grid-template-rows:repeat(calc(var(--cc-overview-head-count) + 6),min-content) [main-start] 1fr [main-end]}:host([mode=app][w-gte-570][w-lt-860]){grid-template-rows:repeat(calc(var(--cc-overview-head-count) + 3),min-content) [main-start] 1fr [main-end]}:host([mode=app][w-gte-860][w-lt-1150]){grid-template-rows:repeat(calc(var(--cc-overview-head-count) + 1),min-content) [main-start] min-content 1fr 1fr [main-end]}:host([mode=app][w-gte-1150]){grid-template-rows:repeat(calc(var(--cc-overview-head-count) + 1),min-content) [main-start] 1fr 1fr [main-end]}:host([mode=orga][w-lt-570]){grid-template-rows:repeat(calc(var(--cc-overview-head-count) + 2),min-content) [main-start] 1fr [main-end]}:host([mode=orga][w-gte-570][w-lt-860]){grid-template-rows:repeat(calc(var(--cc-overview-head-count) + 1),min-content) [main-start] 1fr [main-end]}:host([mode=orga][w-gte-860]){grid-template-rows:repeat(calc(var(--cc-overview-head-count) + 0),min-content) [main-start] 1fr 1fr [main-end]}::slotted(.head){grid-column:1/-1}::slotted(.main){grid-column:main-start/main-end;grid-row:main-start/main-end;height:auto;min-height:25rem;width:auto}`}}window.customElements.define("cc-overview",CcOverview);
//# sourceMappingURL=cc-overview.js.map
import{LitElement as t,html as e,css as r}from"lit-element";import{withResizeObserver as a}from"../mixins/with-resize-observer.js";class n extends(a(t)){static get properties(){return{mode:{type:String,reflect:!0}}}constructor(){super(),this.breakpoints={width:[570,860,1150]}}render(){return e`<slot></slot>`}static get styles(){return r`:host{display:grid;grid-gap:1rem;--cc-overview-head-count:1}:host([w-lt-570]){grid-template-columns:[main-start] 1fr [main-end]}:host([w-gte-570][w-lt-860]){grid-template-columns:[main-start] 1fr 1fr [main-end]}:host([w-gte-860][w-lt-1150]){grid-template-columns:[main-start] 1fr 1fr [main-end] 1fr}:host([w-gte-1150]){grid-template-columns:[main-start] 1fr 1fr 1fr [main-end] 1fr}:host([mode=app][w-lt-570]){grid-template-rows:repeat(calc(var(--cc-overview-head-count) + 6),min-content) [main-start] 1fr [main-end]}:host([mode=app][w-gte-570][w-lt-860]){grid-template-rows:repeat(calc(var(--cc-overview-head-count) + 3),min-content) [main-start] 1fr [main-end]}:host([mode=app][w-gte-860][w-lt-1150]){grid-template-rows:repeat(calc(var(--cc-overview-head-count) + 1),min-content) [main-start] min-content 1fr 1fr [main-end]}:host([mode=app][w-gte-1150]){grid-template-rows:repeat(calc(var(--cc-overview-head-count) + 1),min-content) [main-start] 1fr 1fr [main-end]}:host([mode=orga][w-lt-570]){grid-template-rows:repeat(calc(var(--cc-overview-head-count) + 2),min-content) [main-start] 1fr [main-end]}:host([mode=orga][w-gte-570][w-lt-860]){grid-template-rows:repeat(calc(var(--cc-overview-head-count) + 1),min-content) [main-start] 1fr [main-end]}:host([mode=orga][w-gte-860]){grid-template-rows:repeat(calc(var(--cc-overview-head-count) + 0),min-content) [main-start] 1fr 1fr [main-end]}::slotted(.head){grid-column:1/-1}::slotted(.main){grid-column:main-start/main-end;grid-row:main-start/main-end;height:auto;min-height:25rem;width:auto}`}}window.customElements.define("cc-overview",n);export{n as CcOverview};
//# sourceMappingURL=cc-overview.js.map

@@ -1,2 +0,2 @@

import"../molecules/cc-error.js";import{classMap as t}from"lit-html/directives/class-map.js";import{css as s,html as e,LitElement as o}from"lit-element";import{i18n as n}from"../lib/i18n.js";import{skeleton as i}from"../styles/skeleton.js";import{tileStyles as r}from"../styles/info-tiles.js";export class CcTileConsumption extends o{static get properties(){return{consumption:{type:Object,attribute:!1},error:{type:Boolean,reflect:!0}}}constructor(){super(),this.error=!1}static get _skeletonConsumption(){return{yesterday:.7,last30Days:14.6}}render(){const s=null==this.consumption,{yesterday:o,last30Days:i}=s?CcTileConsumption._skeletonConsumption:this.consumption;return e`<div class=tile_title>${n("cc-tile-consumption.title")}</div>${this.error?"":e`<div class=tile_body><div class=line><span>${n("cc-tile-consumption.yesterday")}</span> <span class=separator></span> <span class="${t({skeleton:s})} value">${n("cc-tile-consumption.amount",{amount:o})}</span></div><div class=line><span>${n("cc-tile-consumption.last-30-days")}</span> <span class=separator></span> <span class="${t({skeleton:s})} value">${n("cc-tile-consumption.amount",{amount:i})}</span></div></div>`} ${this.error?e`<cc-error class=tile_message>${n("cc-tile-consumption.error")}</cc-error>`:""}`}static get styles(){return[r,i,s`.line{align-items:center;display:flex;padding:.5rem 0;width:100%}.separator{flex:1 1 0;border-top:1px dotted #8c8c8c;margin:0 10px}.value{font-weight:700}.skeleton{background-color:#bbb}`]}}window.customElements.define("cc-tile-consumption",CcTileConsumption);
//# sourceMappingURL=cc-tile-consumption.js.map
import{LitElement as s,html as t,css as e}from"lit-element";import{classMap as o}from"lit-html/directives/class-map.js";import{i18n as r}from"../lib/i18n.js";import{skeletonStyles as n}from"../styles/skeleton.js";import"../molecules/cc-error.js";import{tileStyles as i}from"../styles/info-tiles.js";const c={yesterday:.7,last30Days:14.6};class l extends s{static get properties(){return{consumption:{type:Object},error:{type:Boolean,reflect:!0}}}constructor(){super(),this.error=!1}render(){const s=null==this.consumption,{yesterday:e,last30Days:n}=s?c:this.consumption;return t`<div class=tile_title>${r("cc-tile-consumption.title")}</div>${this.error?"":t`<div class=tile_body><div class=line><span>${r("cc-tile-consumption.yesterday")}</span> <span class=separator></span> <span class="${o({skeleton:s})} value">${r("cc-tile-consumption.amount",{amount:e})}</span></div><div class=line><span>${r("cc-tile-consumption.last-30-days")}</span> <span class=separator></span> <span class="${o({skeleton:s})} value">${r("cc-tile-consumption.amount",{amount:n})}</span></div></div>`} ${this.error?t`<cc-error class=tile_message>${r("cc-tile-consumption.error")}</cc-error>`:""}`}static get styles(){return[i,n,e`.line{align-items:center;display:flex;padding:.5rem 0;width:100%}.separator{flex:1 1 0;border-top:1px dotted #8c8c8c;margin:0 10px}.value{font-weight:700}.skeleton{background-color:#bbb}`]}}window.customElements.define("cc-tile-consumption",l);export{l as CcTileConsumption};
//# sourceMappingURL=cc-tile-consumption.js.map

@@ -1,2 +0,2 @@

import"../atoms/cc-datetime-relative.js";import"../molecules/cc-error.js";import{ccLink as t,linkStyles as e}from"../templates/cc-link.js";import{classMap as s}from"lit-html/directives/class-map.js";import{css as l,html as a,LitElement as o}from"lit-element";import{i18n as r}from"../lib/i18n.js";import{skeleton as i}from"../styles/skeleton.js";import{tileStyles as c}from"../styles/info-tiles.js";export class CcTileDeployments extends o{static get properties(){return{deployments:{type:Array,attribute:!1},error:{type:Boolean,reflect:!0}}}constructor(){super(),this.error=!1}static get skeletonDeploys(){return[{state:"???????",date:"??????????"},{state:"??????",date:"???????????"}]}_getStateLabel(t,e){return"OK"===t?r("UNDEPLOY"===e?"cc-tile-deployments.state.stopped":"cc-tile-deployments.state.started"):"FAIL"===t?r("cc-tile-deployments.state.failed"):"CANCELLED"===t?r("cc-tile-deployments.state.cancelled"):t}render(){const e=null==this.deployments,l=e?CcTileDeployments.skeletonDeploys:this.deployments,o=!this.error&&l.length>0,i=!this.error&&0===l.length;return a`<div class=tile_title>${r("cc-tile-deployments.title")}</div>${o?a`<div class=tile_body>${l.map(l=>a`<div class=state data-state=${l.state}><span class=${s({skeleton:e})}>${this._getStateLabel(l.state,l.action)}</span></div><div class=date>${e?a`<span class=skeleton>${l.date}</span>`:""} ${e?"":a`<cc-datetime-relative datetime=${l.date}></cc-datetime-relative>`}</div><div>${t(l.logsUrl,"logs",e)}</div>`)}</div>`:""} ${i?a`<div class=tile_message>${r("cc-tile-deployments.empty")}</div>`:""} ${this.error?a`<cc-error class=tile_message>${r("cc-tile-deployments.error")}</cc-error>`:""}`}static get styles(){return[c,i,e,l`.tile_body{align-items:start;grid-gap:1rem;grid-template-columns:auto auto auto;justify-content:space-between}.state{color:#fff;font-weight:700}.state[data-state=CANCELLED]{color:#b06d0f}.state[data-state=FAIL]{color:#cc0028}.state[data-state=OK]{color:#2faa60}[title]{cursor:help}.skeleton{background-color:#bbb}`]}}window.customElements.define("cc-tile-deployments",CcTileDeployments);
//# sourceMappingURL=cc-tile-deployments.js.map
import{LitElement as t,html as e,css as s}from"lit-element";import{classMap as a}from"lit-html/directives/class-map.js";import{i18n as l}from"../lib/i18n.js";import{skeletonStyles as r}from"../styles/skeleton.js";import{ccLink as o,linkStyles as i}from"../templates/cc-link.js";import"../molecules/cc-error.js";import"../atoms/cc-datetime-relative.js";import{tileStyles as c}from"../styles/info-tiles.js";const d=[{state:"???????",date:"??????????"},{state:"??????",date:"???????????"}];class n extends t{static get properties(){return{deployments:{type:Array},error:{type:Boolean,reflect:!0}}}constructor(){super(),this.error=!1}_getStateLabel(t,e){return"OK"===t?l("UNDEPLOY"===e?"cc-tile-deployments.state.stopped":"cc-tile-deployments.state.started"):"FAIL"===t?l("cc-tile-deployments.state.failed"):"CANCELLED"===t?l("cc-tile-deployments.state.cancelled"):t}render(){const t=null==this.deployments,s=t?d:this.deployments,r=!this.error&&s.length>0,i=!this.error&&0===s.length;return e`<div class=tile_title>${l("cc-tile-deployments.title")}</div>${r?e`<div class=tile_body>${s.map(s=>e`<div class=state data-state=${s.state}><span class=${a({skeleton:t})}>${this._getStateLabel(s.state,s.action)}</span></div><div class=date>${t?e`<span class=skeleton>${s.date}</span>`:""} ${t?"":e`<cc-datetime-relative datetime=${s.date}></cc-datetime-relative>`}</div><div>${o(s.logsUrl,"logs",t)}</div>`)}</div>`:""} ${i?e`<div class=tile_message>${l("cc-tile-deployments.empty")}</div>`:""} ${this.error?e`<cc-error class=tile_message>${l("cc-tile-deployments.error")}</cc-error>`:""}`}static get styles(){return[c,r,i,s`.tile_body{align-items:start;grid-gap:1rem;grid-template-columns:auto auto auto;justify-content:space-between}.state{color:#fff;font-weight:700}.state[data-state=CANCELLED]{color:#b06d0f}.state[data-state=FAIL]{color:#cc0028}.state[data-state=OK]{color:#2faa60}[title]{cursor:help}.skeleton{background-color:#bbb}`]}}window.customElements.define("cc-tile-deployments",n);export{n as CcTileDeployments};
//# sourceMappingURL=cc-tile-deployments.js.map

@@ -1,2 +0,2 @@

import"../atoms/cc-expand.js";import"../atoms/cc-loader.js";import"../molecules/cc-error.js";import t from"./running.svg";import e from"./starting.svg";import{animate as n,QUICK_SHRINK as s}from"../lib/animate.js";import{css as i,html as a,LitElement as r}from"lit-element";import{i18n as o}from"../lib/i18n.js";import{instanceDetails as c,tileStyles as l}from"../styles/info-tiles.js";const u={running:t,deploying:e};export class CcTileInstances extends r{static get properties(){return{error:{type:Boolean,reflect:!0},instances:{type:Object,attribute:!1}}}constructor(){super(),this.error=!1}static get skeletonInstances(){return{running:[],deploying:[]}}_getStatusLabel(t){return"running"===t?o("cc-tile-instances.status.running"):"deploying"===t?o("cc-tile-instances.status.deploying"):void 0}_renderInstances(t,e){return t.length?a`<div class=instances data-type=${e}><img class=instances_status-img src=${u[e]} alt=""> <span class=instances_status>${this._getStatusLabel(e)}</span> ${t.map(({flavorName:t,count:e})=>a`<span class=size-label>${t}<span class=count-bubble>${e}</span></span>`)}</div>`:""}render(){const t=null==this.instances,e=t&&!this.error,i=t?CcTileInstances.skeletonInstances:this.instances,r=i.running.map(t=>t.count).reduce((t,e)=>t+e,0),c=i.deploying.map(t=>t.count).reduce((t,e)=>t+e,0),l=!t&&!this.error&&0===r&&0===c;return this._lastRunningCount!==r&&this.updateComplete.then(()=>{n(this.shadowRoot,".instances[data-type=running] .count-bubble",...s),this._lastRunningCount=r}),this._lastDeployingCount!==c&&this.updateComplete.then(()=>{n(this.shadowRoot,".instances[data-type=deploying] .count-bubble",...s),this._lastDeployingCount=c}),a`<div class=tile_title>${o("cc-tile-instances.title")}</div>${this.error||l?"":a`<div class=tile_body><cc-expand>${this._renderInstances(i.running,"running")} ${this._renderInstances(i.deploying,"deploying")}</cc-expand>${e?a`<cc-loader></cc-loader>`:""}</div>`} ${l?a`<div class=tile_message>${o("cc-tile-instances.empty")}</div>`:""} ${this.error?a`<cc-error class=tile_message>${o("cc-tile-instances.error")}</cc-error>`:""}`}static get styles(){return[l,c,i`cc-expand{width:100%}.instances{align-items:center;display:flex;width:100%}.instances[data-type=running]{--status-color:#2faa60}@keyframes deploying{from{opacity:.85}to{opacity:1}}.instances[data-type=deploying]{--status-color:#2b96fd;animation-direction:alternate;animation-duration:.5s;animation-iteration-count:infinite;animation-name:deploying}.instances_status-img{height:1.75rem;width:1.75rem}.instances_status{color:var(--status-color);flex:1 1 0;font-size:1.2rem;margin-left:.25rem}.size-label{margin:var(--bubble-r);position:relative}.count-bubble{background-color:var(--status-color);bottom:calc(var(--bubble-d)/ -2);position:absolute;right:calc(var(--bubble-d)/ -2)}`]}}window.customElements.define("cc-tile-instances",CcTileInstances);
//# sourceMappingURL=cc-tile-instances.js.map
import{LitElement as t,html as s,css as e}from"lit-element";import{classMap as n}from"lit-html/directives/class-map.js";import{assetUrl as i}from"../lib/asset-url.js";import{i18n as a}from"../lib/i18n.js";import"../atoms/cc-loader.js";import"../atoms/cc-expand.js";import"../molecules/cc-error.js";import{waitingStyles as r}from"../styles/waiting.js";import{tileStyles as o,instanceDetailsStyles as c}from"../styles/info-tiles.js";import{animate as l,QUICK_SHRINK as u}from"../lib/animate.js";const p={running:i(import.meta,"../assets/running.svg"),deploying:i(import.meta,"../assets/starting.svg")},d={running:[],deploying:[]};class m extends t{static get properties(){return{error:{type:Boolean,reflect:!0},instances:{type:Object}}}constructor(){super(),this.error=!1}_getStatusLabel(t){return"running"===t?a("cc-tile-instances.status.running"):"deploying"===t?a("cc-tile-instances.status.deploying"):void 0}_renderInstances(t,e){return t.length?s`<div class="${n({"cc-waiting":"deploying"===e})} instances" data-type=${e}><img class=instances_status-img src=${p[e]} alt=""> <span class=instances_status>${this._getStatusLabel(e)}</span> ${t.map(({flavorName:t,count:e})=>s`<span class=size-label>${t}<span class=count-bubble>${e}</span></span>`)}</div>`:""}render(){const t=null==this.instances,e=t&&!this.error,n=t?d:this.instances,i=n.running.map(t=>t.count).reduce((t,s)=>t+s,0),r=n.deploying.map(t=>t.count).reduce((t,s)=>t+s,0),o=!t&&!this.error&&0===i&&0===r;return this._lastRunningCount!==i&&this.updateComplete.then(()=>{l(this.shadowRoot,".instances[data-type=running] .count-bubble",...u),this._lastRunningCount=i}),this._lastDeployingCount!==r&&this.updateComplete.then(()=>{l(this.shadowRoot,".instances[data-type=deploying] .count-bubble",...u),this._lastDeployingCount=r}),s`<div class=tile_title>${a("cc-tile-instances.title")}</div>${this.error||o?"":s`<div class=tile_body><cc-expand>${this._renderInstances(n.running,"running")} ${this._renderInstances(n.deploying,"deploying")}</cc-expand>${e?s`<cc-loader></cc-loader>`:""}</div>`} ${o?s`<div class=tile_message>${a("cc-tile-instances.empty")}</div>`:""} ${this.error?s`<cc-error class=tile_message>${a("cc-tile-instances.error")}</cc-error>`:""}`}static get styles(){return[o,c,r,e`cc-expand{width:100%}.instances{align-items:center;display:flex;width:100%}.instances[data-type=running]{--status-color:#2faa60}.instances[data-type=deploying]{--status-color:#2b96fd}.instances_status-img{height:1.75rem;width:1.75rem}.instances_status{color:var(--status-color);flex:1 1 0;font-size:1.2rem;margin-left:.25rem}.size-label{margin:var(--bubble-r);position:relative}.count-bubble{background-color:var(--status-color);bottom:calc(var(--bubble-d)/ -2);position:absolute;right:calc(var(--bubble-d)/ -2)}`]}}window.customElements.define("cc-tile-instances",m);export{m as CcTileInstances};
//# sourceMappingURL=cc-tile-instances.js.map

@@ -1,2 +0,2 @@

import"../atoms/cc-button.js";import"../molecules/cc-error.js";import t from"chart.js";import e from"chartjs-plugin-datalabels";import s from"./close.svg";import i from"./info.svg";import{classMap as o}from"lit-html/directives/class-map";import{css as r,html as a,LitElement as l}from"lit-element";import{i18n as n}from"../lib/i18n.js";import{ifDefined as c}from"lit-html/directives/if-defined";import{skeleton as d}from"../styles/skeleton.js";import{tileStyles as h}from"../styles/info-tiles.js";import{withResizeObserver as u}from"../mixins/with-resize-observer.js";export class CcTileRequests extends(u(l)){static get properties(){return{data:{type:Object,attribute:!1},error:{type:Boolean,reflect:!0},_skeleton:{type:Boolean,attribute:!1},_empty:{type:Boolean,attribute:!1},_docs:{type:Boolean,attribute:!1},_barCount:{type:Number,attribute:!1}}}constructor(){super(),this.error=0,this._barCount=6,this._data=null,this._docs=!1}static get skeletonRequests(){return Array.from(new Array(24)).map(()=>[0,0,1])}get data(){return this._data}set data(t){const e=this._data;this._data=t,this._refreshChart(),this.requestUpdate("data",e)}onResize({width:t}){t<380&&(this._barCount=6),t>=380&&t<540&&(this._barCount=8),t>=540&&(this._barCount=12),this._refreshChart(),this.requestUpdate()}_onToggleDocs(){this._docs=!this._docs}async _refreshChart(){this._skeleton=null==this.data;const t=this._skeleton?CcTileRequests.skeletonRequests:this.data;if(this._empty=0===t.length,this._empty)return;const e=24/this._barCount;this._groupedData=Array.from(new Array(this._barCount)).map((s,i)=>{const o=i*e,r=(i+1)*e;return[t[o][0],t[r-1][1],t.slice(o,r).map(t=>t[2]).reduce((t,e)=>t+e,0)]}),this._groupedValues=this._groupedData.map(([t,e,s])=>s),this._xLabels=this._skeleton?this._groupedData.map(()=>"??"):this._groupedData.map(([t],e)=>n("cc-tile-requests.date-hours",{date:t}));const s=this._skeleton?"#bbb":"#30ab61";await this.updateComplete;const i=Math.ceil(1.3*Math.max(...this._groupedValues));this._chart.options.scales.yAxes[0].ticks.suggestedMax=i,this._chart.options.tooltips.enabled=!this._skeleton;const o=this._groupedValues.reduce((t,e)=>t+e,0);this._chart.options.title.text=this._skeleton?"...":n("cc-tile-requests.requests-nb.total",{totalRequests:o}),this._chart.data={labels:this._xLabels,datasets:[{backgroundColor:s,data:this._groupedValues}]},this._chart.options.animation.duration=this._skeleton?0:300,this._chart.update(),this._chart.resize()}render(){const t=!this.error&&!this._empty&&!this._docs,e=this.error&&!this._docs,r=this._empty&&!this._docs,l=this._docs;return a`<div class="tile_title tile_title--image">${n("cc-tile-requests.title")}<cc-button class=docs-toggle image=${l?s:i} title=${c(l?void 0:n("cc-tile-requests.about"))} @cc-button:click=${this._onToggleDocs}></cc-button></div><div class="${o({"tile--hidden":!t})} tile_body"><div class="${o({skeleton:this._skeleton})} chart-container"><canvas id=chart></canvas></div></div><div class="${o({"tile--hidden":!r})} tile_message">${n("cc-tile-requests.empty")}</div><cc-error class="${o({"tile--hidden":!e})} tile_message">${n("cc-tile-requests.error")}</cc-error><div class="${o({"tile--hidden":!l})} tile_docs"><p>${n("cc-tile-requests.docs.msg",{windowHours:24/this._barCount})}</p></div>`}firstUpdated(){this._ctx=this.renderRoot.getElementById("chart"),this._chart=new t(this._ctx,{plugins:[e],type:"bar",options:{responsive:!1,maintainAspectRatio:!1,title:{display:!0,position:"bottom",padding:0,fontStyle:"italic"},legend:{display:!1},plugins:{datalabels:{anchor:"end",offset:0,align:"end",formatter:(t,e)=>this._skeleton?"?":n("cc-tile-requests.requests-count",{requestCount:t})}},scales:{xAxes:[{gridLines:{drawOnChartArea:!1,drawTicks:!1},ticks:{padding:10,fontSize:12}}],yAxes:[{display:!1,ticks:{beginAtZero:!0}}]},tooltips:{backgroundColor:"#000",displayColors:!1,callbacks:{title:(t,e)=>{const[s,i]=this._groupedData[t[0].index];return n("cc-tile-requests.date-tooltip",{from:s,to:i})},label:(t,e)=>{const s=24/this._barCount;return n("cc-tile-requests.requests-nb",{value:this._groupedValues[t.index],windowHours:s})}}},animation:{duration:0}}})}static get styles(){return[h,d,r`.tile_title{align-items:center;display:flex;justify-content:space-between}.docs-toggle{margin:0 0 0 1rem}.chart-container{height:100%;min-width:0;position:absolute;width:100%}.tile_body,.tile_docs,.tile_message{grid-area:2/1/2/1}.tile--hidden{visibility:hidden}.tile_body{position:relative;min-height:140px}.tile_docs{align-self:center;font-size:.9rem;font-style:italic}.tile_docs_link{color:#2b96fd;text-decoration:underline}`]}}window.customElements.define("cc-tile-requests",CcTileRequests);
//# sourceMappingURL=cc-tile-requests.js.map
import{LitElement as t,html as e,css as s}from"lit-element";import{classMap as i}from"lit-html/directives/class-map.js";import{ifDefined as o}from"lit-html/directives/if-defined.js";import{assetUrl as r}from"../lib/asset-url.js";import{i18n as a}from"../lib/i18n.js";import{skeletonStyles as l}from"../styles/skeleton.js";import"../atoms/cc-button.js";import"../molecules/cc-error.js";import{withResizeObserver as n}from"../mixins/with-resize-observer.js";import{tileStyles as c}from"../styles/info-tiles.js";import d from"chart.js";import h from"chartjs-plugin-datalabels";const u=r(import.meta,"../assets/close.svg"),p=r(import.meta,"../assets/info.svg"),_=Array.from(new Array(24)).map(()=>[0,0,1]);class m extends(n(t)){static get properties(){return{data:{type:Object},error:{type:Boolean,reflect:!0},_skeleton:{type:Boolean,attribute:!1},_empty:{type:Boolean,attribute:!1},_docs:{type:Boolean,attribute:!1},_barCount:{type:Number,attribute:!1}}}constructor(){super(),this.error=0,this._barCount=6,this._data=null,this._docs=!1}get data(){return this._data}set data(t){const e=this._data;this._data=t,this._refreshChart(),this.requestUpdate("data",e)}onResize({width:t}){t<380&&(this._barCount=6),t>=380&&t<540&&(this._barCount=8),t>=540&&(this._barCount=12),this._refreshChart(),this.requestUpdate()}_onToggleDocs(){this._docs=!this._docs}async _refreshChart(){this._skeleton=null==this.data;const t=this._skeleton?_:this.data;if(this._empty=0===t.length,this._empty)return;const e=24/this._barCount;this._groupedData=Array.from(new Array(this._barCount)).map((s,i)=>{const o=i*e,r=(i+1)*e;return[t[o][0],t[r-1][1],t.slice(o,r).map(t=>t[2]).reduce((t,e)=>t+e,0)]}),this._groupedValues=this._groupedData.map(([t,e,s])=>s),this._xLabels=this._skeleton?this._groupedData.map(()=>"??"):this._groupedData.map(([t],e)=>a("cc-tile-requests.date-hours",{date:t}));const s=this._skeleton?"#bbb":"#30ab61";await this.updateComplete;const i=Math.ceil(1.3*Math.max(...this._groupedValues));this._chart.options.scales.yAxes[0].ticks.suggestedMax=i,this._chart.options.tooltips.enabled=!this._skeleton;const o=this._groupedValues.reduce((t,e)=>t+e,0);this._chart.options.title.text=this._skeleton?"...":a("cc-tile-requests.requests-nb.total",{totalRequests:o}),this._chart.data={labels:this._xLabels,datasets:[{backgroundColor:s,data:this._groupedValues}]},this._chart.options.animation.duration=this._skeleton?0:300,this._chart.update(),this._chart.resize()}render(){const t=!this.error&&!this._empty&&!this._docs,s=this.error&&!this._docs,r=this._empty&&!this._docs,l=this._docs;return e`<div class="tile_title tile_title--image">${a("cc-tile-requests.title")}<cc-button class=docs-toggle image=${l?u:p} title=${o(l?void 0:a("cc-tile-requests.about"))} @cc-button:click=${this._onToggleDocs}></cc-button></div><div class="${i({"tile--hidden":!t})} tile_body"><div class="${i({skeleton:this._skeleton})} chart-container"><canvas id=chart></canvas></div></div><div class="${i({"tile--hidden":!r})} tile_message">${a("cc-tile-requests.empty")}</div><cc-error class="${i({"tile--hidden":!s})} tile_message">${a("cc-tile-requests.error")}</cc-error><div class="${i({"tile--hidden":!l})} tile_docs"><p>${a("cc-tile-requests.docs.msg",{windowHours:24/this._barCount})}</p></div>`}firstUpdated(){this._ctx=this.renderRoot.getElementById("chart"),this._chart=new d(this._ctx,{plugins:[h],type:"bar",options:{responsive:!1,maintainAspectRatio:!1,title:{display:!0,position:"bottom",padding:0,fontStyle:"italic"},legend:{display:!1},plugins:{datalabels:{anchor:"end",offset:0,align:"end",formatter:(t,e)=>this._skeleton?"?":a("cc-tile-requests.requests-count",{requestCount:t})}},scales:{xAxes:[{gridLines:{drawOnChartArea:!1,drawTicks:!1},ticks:{padding:10,fontSize:12}}],yAxes:[{display:!1,ticks:{beginAtZero:!0}}]},tooltips:{backgroundColor:"#000",displayColors:!1,callbacks:{title:(t,e)=>{const[s,i]=this._groupedData[t[0].index];return a("cc-tile-requests.date-tooltip",{from:s,to:i})},label:(t,e)=>{const s=24/this._barCount;return a("cc-tile-requests.requests-nb",{value:this._groupedValues[t.index],windowHours:s})}}},animation:{duration:0}}})}static get styles(){return[c,l,s`.tile_title{align-items:center;display:flex;justify-content:space-between}.docs-toggle{margin:0 0 0 1rem}.chart-container{height:100%;min-width:0;position:absolute;width:100%}.tile_body,.tile_docs,.tile_message{grid-area:2/1/2/1}.tile--hidden{visibility:hidden}.tile_body{position:relative;min-height:140px}.tile_docs{align-self:center;font-size:.9rem;font-style:italic}.tile_docs_link{color:#2b96fd;text-decoration:underline}`]}}window.customElements.define("cc-tile-requests",m);export{m as CcTileRequests};
//# sourceMappingURL=cc-tile-requests.js.map

@@ -1,2 +0,2 @@

import"../molecules/cc-error.js";import{classMap as e}from"lit-html/directives/class-map.js";import{css as i,html as t,LitElement as l}from"lit-element";import{i18n as s}from"../lib/i18n.js";import{ifDefined as a}from"lit-html/directives/if-defined.js";import{instanceDetails as r,tileStyles as c}from"../styles/info-tiles.js";import{skeleton as o}from"../styles/skeleton.js";export class CcTileScalability extends l{static get properties(){return{error:{type:Boolean,reflect:!0},scalability:{type:Object,attribute:!1}}}static get _skeletonScalability(){return{minFlavor:{name:"??"},maxFlavor:{name:"?"},minInstances:0,maxInstances:0}}_getFlavorDetails(e){if(null!=e.cpus)return s("cc-tile-scalability.flavor-info",{...e})}_formatFlavorName(e){return e.replace(/^ML_/,"")}render(){const i=null==this.scalability,{minFlavor:l,maxFlavor:r,minInstances:c,maxInstances:o}=i?CcTileScalability._skeletonScalability:this.scalability;return t`<div class=tile_title>${s("cc-tile-scalability.title")}</div>${this.error?"":t`<div class=tile_body><div class=label>${s("cc-tile-scalability.size")}</div><div class=info><div class="${e({skeleton:i})} size-label" title=${a(this._getFlavorDetails(l))}>${this._formatFlavorName(l.name)}</div><div class=separator></div><div class="${e({skeleton:i})} size-label" title=${a(this._getFlavorDetails(r))}>${this._formatFlavorName(r.name)}</div></div><div class=label>${s("cc-tile-scalability.number")}</div><div class=info><div class="${e({skeleton:i})} count-bubble">${c}</div><div class=separator></div><div class="${e({skeleton:i})} count-bubble">${o}</div></div></div>`} ${this.error?t`<cc-error class=tile_message>${s("cc-tile-scalability.error")}</cc-error>`:""}`}static get styles(){return[c,r,o,i`.tile_body{grid-template-columns:auto 1fr;grid-row-gap:1rem;grid-column-gap:2rem;align-items:center}.info{align-items:center;display:flex;justify-content:center;width:100%}.separator{border-top:1px dashed #8c8c8c;flex:1 1 0;width:1.5rem}[title]{cursor:help}`]}}window.customElements.define("cc-tile-scalability",CcTileScalability);
//# sourceMappingURL=cc-tile-scalability.js.map
import{LitElement as e,html as i,css as t}from"lit-element";import{classMap as l}from"lit-html/directives/class-map.js";import{ifDefined as s}from"lit-html/directives/if-defined.js";import{i18n as a}from"../lib/i18n.js";import{skeletonStyles as r}from"../styles/skeleton.js";import"../molecules/cc-error.js";import{tileStyles as c,instanceDetailsStyles as o}from"../styles/info-tiles.js";const n={minFlavor:{name:"??"},maxFlavor:{name:"?"},minInstances:0,maxInstances:0};class m extends e{static get properties(){return{error:{type:Boolean,reflect:!0},scalability:{type:Object}}}_getFlavorDetails(e){if(null!=e.cpus)return a("cc-tile-scalability.flavor-info",{...e})}_formatFlavorName(e){return e.replace(/^ML_/,"")}render(){const e=null==this.scalability,{minFlavor:t,maxFlavor:r,minInstances:c,maxInstances:o}=e?n:this.scalability;return i`<div class=tile_title>${a("cc-tile-scalability.title")}</div>${this.error?"":i`<div class=tile_body><div class=label>${a("cc-tile-scalability.size")}</div><div class=info><div class="${l({skeleton:e})} size-label" title=${s(this._getFlavorDetails(t))}>${this._formatFlavorName(t.name)}</div><div class=separator></div><div class="${l({skeleton:e})} size-label" title=${s(this._getFlavorDetails(r))}>${this._formatFlavorName(r.name)}</div></div><div class=label>${a("cc-tile-scalability.number")}</div><div class=info><div class="${l({skeleton:e})} count-bubble">${c}</div><div class=separator></div><div class="${l({skeleton:e})} count-bubble">${o}</div></div></div>`} ${this.error?i`<cc-error class=tile_message>${a("cc-tile-scalability.error")}</cc-error>`:""}`}static get styles(){return[c,o,r,t`.tile_body{grid-template-columns:auto 1fr;grid-row-gap:1rem;grid-column-gap:2rem;align-items:center}.info{align-items:center;display:flex;justify-content:center;width:100%}.separator{border-top:1px dashed #8c8c8c;flex:1 1 0;width:1.5rem}[title]{cursor:help}`]}}window.customElements.define("cc-tile-scalability",m);export{m as CcTileScalability};
//# sourceMappingURL=cc-tile-scalability.js.map

@@ -1,2 +0,2 @@

import"../atoms/cc-button.js";import"../molecules/cc-error.js";import t from"chart.js";import e from"./close.svg";import s from"./info.svg";import{cache as i}from"lit-html/directives/cache";import{linkStyles as o}from"../templates/cc-link.js";import{classMap as a}from"lit-html/directives/class-map";import{css as l,html as c,LitElement as r}from"lit-element";import{i18n as n}from"../lib/i18n.js";import{ifDefined as d}from"lit-html/directives/if-defined";import{skeleton as h}from"../styles/skeleton.js";import{STATUS_CODES as u}from"statuses";import{tileStyles as m}from"../styles/info-tiles.js";export class CcTileStatusCodes extends r{static get properties(){return{error:{type:Boolean,reflect:!0},statusCodes:{type:Object,attribute:!1},_skeleton:{type:Boolean,attribute:!1},_empty:{type:Boolean,attribute:!1},_docs:{type:Boolean,attribute:!1}}}constructor(){super(),this.error=null,this.statusCodes=null,this._docs=!1}static get skeletonStatusCodes(){return{200:1}}static get COLORS(){return{1:"#bbb",2:"#30ab61",3:"#365bd3",4:"#ff9f40",5:"#cf3942"}}get statusCodes(){return this._statusCodes}set statusCodes(t){this._skeleton=null==t;const e=this._skeleton?CcTileStatusCodes.skeletonStatusCodes:t;this._statusCodes=e,this._empty=0===Object.keys(e).length,this._labels=Object.keys(e),this._chartLabels=this._skeleton?this._labels.map(()=>"???"):this._labels.map(t=>t[0]+"xx"),this._data=Object.values(e),this._backgroundColor=this._skeleton?this._labels.map(()=>"#bbb"):this._labels.map(t=>CcTileStatusCodes.COLORS[t[0]]),this.updateComplete.then(()=>{this._chart.options.animation.duration=this._skeleton?0:300,this._chart.options.tooltips.enabled=!this._skeleton,this._chart.data={labels:this._chartLabels,datasets:[{data:this._data,backgroundColor:this._backgroundColor}]},this._chart.update()})}_onToggleDocs(){this._docs=!this._docs}render(){const t=!this.error&&!this._empty&&!this._docs,o=this.error&&!this._docs,l=this._empty&&!this._docs,r=this._docs;return c`<div class="tile_title tile_title--image">${n("cc-tile-status-codes.title")}<cc-button class=docs-toggle image=${r?e:s} title=${d(r?void 0:n("cc-tile-status-codes.about"))} @cc-button:click=${this._onToggleDocs}></cc-button></div>${i(t?c`<div class=tile_body><div class="${a({skeleton:this._skeleton})} chart-container"><canvas id=chart></canvas></div></div>`:"")} ${l?c`<div class=tile_message>${n("cc-tile-status-codes.empty")}</div>`:""} ${o?c`<cc-error class=tile_message>${n("cc-tile-status-codes.error")}</cc-error>`:""}<div class="${a({"tile_docs--hidden":!r})} tile_docs"><p>${n("cc-tile-status-codes.docs.msg")}</p><p>${n("cc-tile-status-codes.docs.link")}</p></div>`}firstUpdated(){this._ctx=this.renderRoot.getElementById("chart"),this._chart=new t(this._ctx,{type:"doughnut",options:{responsive:!0,maintainAspectRatio:!1,legend:{onClick:function(t,e){const s=this.chart.getDatasetMeta(0);this.chart.data.labels.forEach((i,o)=>{const a=i===e.text;var l,c;l=t.shiftKey,c=a,Number(l)^Number(c)&&(s.data[o].hidden=!s.data[o].hidden)}),this.chart.update()},onHover:t=>{this._ctx.style.cursor="pointer"},onLeave:t=>{this._ctx.style.cursor=null},position:"right",labels:{fontFamily:"monospace",usePointStyle:!0,filter:(t,e)=>t.text!==e.labels[t.index-1]}},plugins:{datalabels:{display:!1}},tooltips:{backgroundColor:"#000",displayColors:!1,callbacks:{title:(t,e)=>{const s=this._labels[t[0].index];return`HTTP ${s}: ${u[s]}`},label:(t,e)=>{const s=e.datasets[t.datasetIndex].data,i=s.reduce((t,e)=>t+e,0),o=s[t.index];return n("cc-tile-status-codes.tooltip",{value:o,percent:o/i})}}},animation:{duration:0}}})}static get styles(){return[m,h,o,l`.tile_title{align-items:center;display:flex;justify-content:space-between}.docs-toggle{margin:0 0 0 1rem}.tile_body{position:relative}.chart-container{height:100%;min-width:0;position:absolute;width:100%}.tile_body,.tile_docs,.tile_message{grid-area:2/1/2/1}.tile_docs{align-self:center;font-size:.9rem;font-style:italic}.tile_docs.tile_docs--hidden{visibility:hidden}.tile_docs_link{color:#2b96fd;text-decoration:underline}`]}}window.customElements.define("cc-tile-status-codes",CcTileStatusCodes);
//# sourceMappingURL=cc-tile-status-codes.js.map
import{LitElement as t,html as s,css as e}from"lit-element";import{classMap as i}from"lit-html/directives/class-map.js";import{ifDefined as o}from"lit-html/directives/if-defined.js";import{assetUrl as a}from"../lib/asset-url.js";import{i18n as l}from"../lib/i18n.js";import{skeletonStyles as c}from"../styles/skeleton.js";import{linkStyles as r}from"../templates/cc-link.js";import"../atoms/cc-button.js";import"../molecules/cc-error.js";import{tileStyles as n}from"../styles/info-tiles.js";import d from"chart.js";import{cache as h}from"lit-html/directives/cache.js";import m from"statuses";const p=a(import.meta,"../assets/close.svg"),u=a(import.meta,"../assets/info.svg");const _={1:"#bbb",2:"#30ab61",3:"#365bd3",4:"#ff9f40",5:"#cf3942"},b={200:1};class g extends t{static get properties(){return{error:{type:Boolean,reflect:!0},statusCodes:{type:Object},_skeleton:{type:Boolean,attribute:!1},_empty:{type:Boolean,attribute:!1},_docs:{type:Boolean,attribute:!1}}}constructor(){super(),this.error=null,this.statusCodes=null,this._docs=!1}get statusCodes(){return this._statusCodes}set statusCodes(t){this._skeleton=null==t;const s=this._skeleton?b:t;this._statusCodes=s,this._empty=0===Object.keys(s).length,this._labels=Object.keys(s),this._chartLabels=this._skeleton?this._labels.map(()=>"???"):this._labels.map(t=>t[0]+"xx"),this._data=Object.values(s),this._backgroundColor=this._skeleton?this._labels.map(()=>"#bbb"):this._labels.map(t=>_[t[0]]),this.updateComplete.then(()=>{this._chart.options.animation.duration=this._skeleton?0:300,this._chart.options.tooltips.enabled=!this._skeleton,this._chart.data={labels:this._chartLabels,datasets:[{data:this._data,backgroundColor:this._backgroundColor}]},this._chart.update()})}_onToggleDocs(){this._docs=!this._docs}render(){const t=!this.error&&!this._empty&&!this._docs,e=this.error&&!this._docs,a=this._empty&&!this._docs,c=this._docs;return s`<div class="tile_title tile_title--image">${l("cc-tile-status-codes.title")}<cc-button class=docs-toggle image=${c?p:u} title=${o(c?void 0:l("cc-tile-status-codes.about"))} @cc-button:click=${this._onToggleDocs}></cc-button></div>${h(t?s`<div class=tile_body><div class="${i({skeleton:this._skeleton})} chart-container"><canvas id=chart></canvas></div></div>`:"")} ${a?s`<div class=tile_message>${l("cc-tile-status-codes.empty")}</div>`:""} ${e?s`<cc-error class=tile_message>${l("cc-tile-status-codes.error")}</cc-error>`:""}<div class="${i({"tile_docs--hidden":!c})} tile_docs"><p>${l("cc-tile-status-codes.docs.msg")}</p><p>${l("cc-tile-status-codes.docs.link")}</p></div>`}firstUpdated(){this._ctx=this.renderRoot.getElementById("chart"),this._chart=new d(this._ctx,{type:"doughnut",options:{responsive:!0,maintainAspectRatio:!1,legend:{onClick:function(t,s){const e=this.chart.getDatasetMeta(0);this.chart.data.labels.forEach((i,o)=>{const a=i===s.text;var l,c;l=t.shiftKey,c=a,Number(l)^Number(c)&&(e.data[o].hidden=!e.data[o].hidden)}),this.chart.update()},onHover:t=>{this._ctx.style.cursor="pointer"},onLeave:t=>{this._ctx.style.cursor=null},position:"right",labels:{fontFamily:"monospace",usePointStyle:!0,filter:(t,s)=>t.text!==s.labels[t.index-1]}},plugins:{datalabels:{display:!1}},tooltips:{backgroundColor:"#000",displayColors:!1,callbacks:{title:(t,s)=>{const e=this._labels[t[0].index];return`HTTP ${e}: ${m.message[e]}`},label:(t,s)=>{const e=s.datasets[t.datasetIndex].data,i=e.reduce((t,s)=>t+s,0),o=e[t.index];return l("cc-tile-status-codes.tooltip",{value:o,percent:o/i})}}},animation:{duration:0}}})}static get styles(){return[n,c,r,e`.tile_title{align-items:center;display:flex;justify-content:space-between}.docs-toggle{margin:0 0 0 1rem}.tile_body{position:relative}.chart-container{height:100%;min-width:0;position:absolute;width:100%}.tile_body,.tile_docs,.tile_message{grid-area:2/1/2/1}.tile_docs{align-self:center;font-size:.9rem;font-style:italic}.tile_docs.tile_docs--hidden{visibility:hidden}.tile_docs_link{color:#2b96fd;text-decoration:underline}`]}}window.customElements.define("cc-tile-status-codes",g);export{g as CcTileStatusCodes};
//# sourceMappingURL=cc-tile-status-codes.js.map

@@ -1,2 +0,2 @@

import{css as e}from"lit-element";export const tileStyles=e`:host{background-color:#fff;border-radius:.25rem;border:1px solid #bcc2d1;box-sizing:border-box;display:grid;grid-gap:1rem;grid-template-rows:auto 1fr;min-height:9rem;overflow:hidden;padding:1rem}.tile_title{color:#5d5d5d;font-size:1.25rem;text-align:center}.tile_title--image{text-align:left}.tile_body{align-content:center;display:grid}.tile_message{align-self:center;text-align:center}`;export const instanceDetails=e`:host{--bubble-d:1.5rem;--bubble-r:calc(var(--bubble-d) / 2)}.size-label{background-color:#eaeaea;border-radius:.25rem;border:1px solid #484848;box-sizing:border-box;display:block;font-weight:700;height:1.65rem;line-height:1.65rem;padding:0 var(--bubble-r);text-align:center}.count-bubble{background-color:#8c8c8c;border-radius:50%;color:#fff;display:block;font-weight:700;height:var(--bubble-d);line-height:var(--bubble-d);text-align:center;width:var(--bubble-d)}`;
//# sourceMappingURL=info-tiles.js.map
import{css as e}from"lit-element";const r=e`:host{background-color:#fff;border-radius:.25rem;border:1px solid #bcc2d1;box-sizing:border-box;display:grid;grid-gap:1rem;grid-template-rows:auto 1fr;min-height:9rem;overflow:hidden;padding:1rem}.tile_title{color:#5d5d5d;font-size:1.25rem;text-align:center}.tile_title--image{text-align:left}.tile_body{align-content:center;display:grid}.tile_message{align-self:center;text-align:center}`,i=e`:host{--bubble-d:1.5rem;--bubble-r:calc(var(--bubble-d) / 2)}.size-label{background-color:#eaeaea;border-radius:.25rem;border:1px solid #484848;box-sizing:border-box;display:block;font-weight:700;height:1.65rem;line-height:1.65rem;padding:0 var(--bubble-r);text-align:center}.count-bubble{background-color:#8c8c8c;border-radius:50%;color:#fff;display:block;font-weight:700;height:var(--bubble-d);line-height:var(--bubble-d);text-align:center;width:var(--bubble-d)}`;export{i as instanceDetailsStyles,r as tileStyles};
//# sourceMappingURL=info-tiles.js.map

@@ -1,2 +0,2 @@

import{css as e}from"lit-element";export const leafletStyles=e`.leaflet-heatmap-layer{pointer-events:none}.leaflet-image-layer,.leaflet-layer,.leaflet-marker-icon,.leaflet-marker-shadow,.leaflet-pane,.leaflet-pane>canvas,.leaflet-pane>svg,.leaflet-tile,.leaflet-tile-container,.leaflet-zoom-box{position:absolute;left:0;top:0}.leaflet-container{overflow:hidden;-webkit-tap-highlight-color:transparent;background:#202e78;outline:0;font:12px/1.5 "Helvetica Neue",Arial,Helvetica,sans-serif}.leaflet-marker-icon,.leaflet-marker-shadow,.leaflet-tile{-webkit-user-select:none;-moz-user-select:none;user-select:none;-webkit-user-drag:none}.leaflet-tile::selection{background:0 0}.leaflet-safari .leaflet-tile{image-rendering:-webkit-optimize-contrast}.leaflet-safari .leaflet-tile-container{width:1600px;height:1600px;-webkit-transform-origin:0 0}.leaflet-marker-icon,.leaflet-marker-shadow{display:block}.leaflet-container .leaflet-marker-pane img,.leaflet-container .leaflet-overlay-pane svg,.leaflet-container .leaflet-shadow-pane img,.leaflet-container .leaflet-tile,.leaflet-container .leaflet-tile-pane img,.leaflet-container img.leaflet-image-layer{max-width:none!important;max-height:none!important}.leaflet-container.leaflet-touch-zoom{-ms-touch-action:pan-x pan-y;touch-action:pan-x pan-y}.leaflet-container.leaflet-touch-drag{-ms-touch-action:pinch-zoom;touch-action:none;touch-action:pinch-zoom}.leaflet-container.leaflet-touch-drag.leaflet-touch-zoom{-ms-touch-action:none;touch-action:none}.leaflet-container a{-webkit-tap-highlight-color:rgba(51,181,229,.4);color:#0078a8}.leaflet-tile{filter:inherit;visibility:hidden}.leaflet-tile-loaded{visibility:inherit}.leaflet-zoom-box{width:0;height:0;-moz-box-sizing:border-box;box-sizing:border-box;z-index:800}.leaflet-overlay-pane svg{-moz-user-select:none}.leaflet-pane{z-index:400}.leaflet-tile-pane{z-index:200}.leaflet-overlay-pane{z-index:400}.leaflet-shadow-pane{z-index:500}.leaflet-marker-pane{z-index:600}.leaflet-tooltip-pane{z-index:650}.leaflet-popup-pane{z-index:700}.leaflet-map-pane canvas{z-index:100}.leaflet-map-pane svg{z-index:200}.leaflet-vml-shape{width:1px;height:1px}.lvml{behavior:url(#default#VML);display:inline-block;position:absolute}.leaflet-control{position:relative;z-index:800;pointer-events:visiblePainted;pointer-events:auto;float:left;clear:both}.leaflet-bottom,.leaflet-top{position:absolute;z-index:1000;pointer-events:none}.leaflet-top{top:0}.leaflet-right{right:0}.leaflet-bottom{bottom:0}.leaflet-left{left:0}.leaflet-right .leaflet-control{float:right;margin-right:10px}.leaflet-top .leaflet-control{margin-top:10px}.leaflet-bottom .leaflet-control{margin-bottom:10px}.leaflet-left .leaflet-control{margin-left:10px}.leaflet-fade-anim .leaflet-tile{will-change:opacity}.leaflet-fade-anim .leaflet-popup{opacity:0;-webkit-transition:opacity .2s linear;-moz-transition:opacity .2s linear;transition:opacity .2s linear}.leaflet-fade-anim .leaflet-map-pane .leaflet-popup{opacity:1}.leaflet-zoom-animated{-webkit-transform-origin:0 0;-ms-transform-origin:0 0;transform-origin:0 0}.leaflet-zoom-anim .leaflet-zoom-animated{will-change:transform;-webkit-transition:-webkit-transform .25s cubic-bezier(0,0,.25,1);-moz-transition:-moz-transform .25s cubic-bezier(0,0,.25,1);transition:transform .25s cubic-bezier(0,0,.25,1)}.leaflet-pan-anim .leaflet-tile,.leaflet-zoom-anim .leaflet-tile{-webkit-transition:none;-moz-transition:none;transition:none}.leaflet-zoom-anim .leaflet-zoom-hide{visibility:hidden}.leaflet-interactive{cursor:pointer}.leaflet-grab{cursor:-webkit-grab;cursor:-moz-grab;cursor:grab}.leaflet-crosshair,.leaflet-crosshair .leaflet-interactive{cursor:crosshair}.leaflet-control,.leaflet-popup-pane{cursor:auto}.leaflet-dragging .leaflet-grab,.leaflet-dragging .leaflet-grab .leaflet-interactive,.leaflet-dragging .leaflet-marker-draggable{cursor:move;cursor:-webkit-grabbing;cursor:-moz-grabbing;cursor:grabbing}.leaflet-image-layer,.leaflet-marker-icon,.leaflet-marker-shadow,.leaflet-pane>svg path,.leaflet-tile-container{pointer-events:none}.leaflet-image-layer.leaflet-interactive,.leaflet-marker-icon.leaflet-interactive,.leaflet-pane>svg path.leaflet-interactive,svg.leaflet-image-layer.leaflet-interactive path{pointer-events:visiblePainted;pointer-events:auto}.leaflet-container a.leaflet-active{outline:orange solid 2px}.leaflet-zoom-box{border:2px dotted #38f;background:rgba(255,255,255,.5)}.leaflet-bar{box-shadow:0 1px 5px rgba(0,0,0,.65);border-radius:4px}.leaflet-bar a,.leaflet-bar a:hover{background-color:#fff;border-bottom:1px solid #ccc;width:26px;height:26px;line-height:26px;display:block;text-align:center;text-decoration:none;color:#000}.leaflet-bar a,.leaflet-control-layers-toggle{background-position:50% 50%;background-repeat:no-repeat;display:block}.leaflet-bar a:hover{background-color:#f4f4f4}.leaflet-bar a:first-child{border-top-left-radius:4px;border-top-right-radius:4px}.leaflet-bar a:last-child{border-bottom-left-radius:4px;border-bottom-right-radius:4px;border-bottom:none}.leaflet-bar a.leaflet-disabled{cursor:default;background-color:#f4f4f4;color:#bbb}.leaflet-touch .leaflet-bar a{width:30px;height:30px;line-height:30px}.leaflet-touch .leaflet-bar a:first-child{border-top-left-radius:2px;border-top-right-radius:2px}.leaflet-touch .leaflet-bar a:last-child{border-bottom-left-radius:2px;border-bottom-right-radius:2px}.leaflet-control-zoom-in,.leaflet-control-zoom-out{font:bold 18px 'Lucida Console',Monaco,monospace;text-indent:1px}.leaflet-touch .leaflet-control-zoom-in,.leaflet-touch .leaflet-control-zoom-out{font-size:22px}.leaflet-control-layers{box-shadow:0 1px 5px rgba(0,0,0,.4);background:#fff;border-radius:5px}.leaflet-control-layers-toggle{background-image:url(images/layers.png);width:36px;height:36px}.leaflet-retina .leaflet-control-layers-toggle{background-image:url(images/layers-2x.png);background-size:26px 26px}.leaflet-touch .leaflet-control-layers-toggle{width:44px;height:44px}.leaflet-control-layers .leaflet-control-layers-list,.leaflet-control-layers-expanded .leaflet-control-layers-toggle{display:none}.leaflet-control-layers-expanded .leaflet-control-layers-list{display:block;position:relative}.leaflet-control-layers-expanded{padding:6px 10px 6px 6px;color:#333;background:#fff}.leaflet-control-layers-scrollbar{overflow-y:scroll;overflow-x:hidden;padding-right:5px}.leaflet-control-layers-selector{margin-top:2px;position:relative;top:1px}.leaflet-control-layers label{display:block}.leaflet-control-layers-separator{height:0;border-top:1px solid #ddd;margin:5px -10px 5px -6px}.leaflet-default-icon-path{background-image:url(images/marker-icon.png)}.leaflet-container .leaflet-control-attribution{background:rgba(255,255,255,.7);margin:0}.leaflet-control-attribution,.leaflet-control-scale-line{padding:0 5px;color:#333}.leaflet-control-attribution a{text-decoration:none}.leaflet-control-attribution a:hover{text-decoration:underline}.leaflet-container .leaflet-control-attribution,.leaflet-container .leaflet-control-scale{font-size:11px}.leaflet-left .leaflet-control-scale{margin-left:5px}.leaflet-bottom .leaflet-control-scale{margin-bottom:5px}.leaflet-control-scale-line{border:2px solid #777;border-top:none;line-height:1.1;padding:2px 5px 1px;font-size:11px;white-space:nowrap;overflow:hidden;-moz-box-sizing:border-box;box-sizing:border-box;background:rgba(255,255,255,.5)}.leaflet-control-scale-line:not(:first-child){border-top:2px solid #777;border-bottom:none;margin-top:-2px}.leaflet-control-scale-line:not(:first-child):not(:last-child){border-bottom:2px solid #777}.leaflet-touch .leaflet-bar,.leaflet-touch .leaflet-control-attribution,.leaflet-touch .leaflet-control-layers{box-shadow:none}.leaflet-touch .leaflet-bar,.leaflet-touch .leaflet-control-layers{border:2px solid rgba(0,0,0,.2);background-clip:padding-box}.leaflet-popup{position:absolute;text-align:center;margin-bottom:20px}.leaflet-popup-content-wrapper{padding:1px;text-align:left;border-radius:12px}.leaflet-popup-content{margin:13px 19px;line-height:1.4}.leaflet-popup-content p{margin:18px 0}.leaflet-popup-tip-container{width:40px;height:20px;position:absolute;left:50%;margin-left:-20px;overflow:hidden;pointer-events:none}.leaflet-popup-tip{width:17px;height:17px;padding:1px;margin:-10px auto 0;-webkit-transform:rotate(45deg);-moz-transform:rotate(45deg);-ms-transform:rotate(45deg);transform:rotate(45deg)}.leaflet-popup-content-wrapper,.leaflet-popup-tip{background:#fff;color:#333;box-shadow:0 3px 14px rgba(0,0,0,.4)}.leaflet-container a.leaflet-popup-close-button{position:absolute;top:0;right:0;padding:4px 4px 0 0;border:none;text-align:center;width:18px;height:14px;font:700 16px/14px Tahoma,Verdana,sans-serif;color:#c3c3c3;text-decoration:none;background:0 0}.leaflet-container a.leaflet-popup-close-button:hover{color:#999}.leaflet-popup-scrolled{overflow:auto;border-bottom:1px solid #ddd;border-top:1px solid #ddd}.leaflet-oldie .leaflet-popup-content-wrapper{zoom:1}.leaflet-oldie .leaflet-popup-tip{width:24px;margin:0 auto}.leaflet-oldie .leaflet-popup-tip-container{margin-top:-1px}.leaflet-oldie .leaflet-control-layers,.leaflet-oldie .leaflet-control-zoom,.leaflet-oldie .leaflet-popup-content-wrapper,.leaflet-oldie .leaflet-popup-tip{border:1px solid #999}.leaflet-div-icon{background:#fff;border:1px solid #666}.leaflet-tooltip{position:absolute;padding:6px;background-color:#fff;border:1px solid #fff;border-radius:3px;color:#222;white-space:nowrap;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;pointer-events:none;box-shadow:0 1px 3px rgba(0,0,0,.4)}.leaflet-tooltip.leaflet-clickable{cursor:pointer;pointer-events:auto}.leaflet-tooltip-bottom:before,.leaflet-tooltip-left:before,.leaflet-tooltip-right:before,.leaflet-tooltip-top:before{position:absolute;pointer-events:none;border:6px solid transparent;background:0 0;content:""}.leaflet-tooltip-bottom{margin-top:6px}.leaflet-tooltip-top{margin-top:-6px}.leaflet-tooltip-bottom:before,.leaflet-tooltip-top:before{left:50%;margin-left:-6px}.leaflet-tooltip-top:before{bottom:0;margin-bottom:-12px;border-top-color:#fff}.leaflet-tooltip-bottom:before{top:0;margin-top:-12px;margin-left:-6px;border-bottom-color:#fff}.leaflet-tooltip-left{margin-left:-6px}.leaflet-tooltip-right{margin-left:6px}.leaflet-tooltip-left:before,.leaflet-tooltip-right:before{top:50%;margin-top:-6px}.leaflet-tooltip-left:before{right:0;margin-right:-12px;border-left-color:#fff}.leaflet-tooltip-right:before{left:0;margin-left:-12px;border-right-color:#fff}`;
//# sourceMappingURL=leaflet.js.map
import{css as e}from"lit-element";const t=e`.leaflet-heatmap-layer{pointer-events:none}.leaflet-image-layer,.leaflet-layer,.leaflet-marker-icon,.leaflet-marker-shadow,.leaflet-pane,.leaflet-pane>canvas,.leaflet-pane>svg,.leaflet-tile,.leaflet-tile-container,.leaflet-zoom-box{position:absolute;left:0;top:0}.leaflet-container{overflow:hidden;-webkit-tap-highlight-color:transparent;background:#202e78;outline:0;font:12px/1.5 "Helvetica Neue",Arial,Helvetica,sans-serif}.leaflet-marker-icon,.leaflet-marker-shadow,.leaflet-tile{-webkit-user-select:none;-moz-user-select:none;user-select:none;-webkit-user-drag:none}.leaflet-tile::selection{background:0 0}.leaflet-safari .leaflet-tile{image-rendering:-webkit-optimize-contrast}.leaflet-safari .leaflet-tile-container{width:1600px;height:1600px;transform-origin:0 0}.leaflet-marker-icon,.leaflet-marker-shadow{display:block}.leaflet-container .leaflet-marker-pane img,.leaflet-container .leaflet-overlay-pane svg,.leaflet-container .leaflet-shadow-pane img,.leaflet-container .leaflet-tile,.leaflet-container .leaflet-tile-pane img,.leaflet-container img.leaflet-image-layer{max-width:none!important;max-height:none!important}.leaflet-container.leaflet-touch-zoom{-ms-touch-action:pan-x pan-y;touch-action:pan-x pan-y}.leaflet-container.leaflet-touch-drag{-ms-touch-action:pinch-zoom;touch-action:none;touch-action:pinch-zoom}.leaflet-container.leaflet-touch-drag.leaflet-touch-zoom{-ms-touch-action:none;touch-action:none}.leaflet-container a{-webkit-tap-highlight-color:rgba(51,181,229,.4);color:#0078a8}.leaflet-tile{filter:inherit;visibility:hidden}.leaflet-tile-loaded{visibility:inherit}.leaflet-zoom-box{width:0;height:0;-moz-box-sizing:border-box;box-sizing:border-box;z-index:800}.leaflet-overlay-pane svg{-moz-user-select:none}.leaflet-pane{z-index:400}.leaflet-tile-pane{z-index:200}.leaflet-overlay-pane{z-index:400}.leaflet-shadow-pane{z-index:500}.leaflet-marker-pane{z-index:600}.leaflet-tooltip-pane{z-index:650}.leaflet-popup-pane{z-index:700}.leaflet-map-pane canvas{z-index:100}.leaflet-map-pane svg{z-index:200}.leaflet-vml-shape{width:1px;height:1px}.lvml{behavior:url(#default#VML);display:inline-block;position:absolute}.leaflet-control{position:relative;z-index:800;pointer-events:visiblePainted;pointer-events:auto;float:left;clear:both}.leaflet-bottom,.leaflet-top{position:absolute;z-index:1000;pointer-events:none}.leaflet-top{top:0}.leaflet-right{right:0}.leaflet-bottom{bottom:0}.leaflet-left{left:0}.leaflet-right .leaflet-control{float:right;margin-right:10px}.leaflet-top .leaflet-control{margin-top:10px}.leaflet-bottom .leaflet-control{margin-bottom:10px}.leaflet-left .leaflet-control{margin-left:10px}.leaflet-fade-anim .leaflet-tile{will-change:opacity}.leaflet-fade-anim .leaflet-popup{opacity:0;-webkit-transition:opacity .2s linear;-moz-transition:opacity .2s linear;transition:opacity .2s linear}.leaflet-fade-anim .leaflet-map-pane .leaflet-popup{opacity:1}.leaflet-zoom-animated{-webkit-transform-origin:0 0;-ms-transform-origin:0 0;transform-origin:0 0}.leaflet-zoom-anim .leaflet-zoom-animated{will-change:transform;-webkit-transition:-webkit-transform .25s cubic-bezier(0,0,.25,1);-moz-transition:-moz-transform .25s cubic-bezier(0,0,.25,1);transition:transform .25s cubic-bezier(0,0,.25,1)}.leaflet-pan-anim .leaflet-tile,.leaflet-zoom-anim .leaflet-tile{-webkit-transition:none;-moz-transition:none;transition:none}.leaflet-zoom-anim .leaflet-zoom-hide{visibility:hidden}.leaflet-interactive{cursor:pointer}.leaflet-grab{cursor:-webkit-grab;cursor:-moz-grab;cursor:grab}.leaflet-crosshair,.leaflet-crosshair .leaflet-interactive{cursor:crosshair}.leaflet-control,.leaflet-popup-pane{cursor:auto}.leaflet-dragging .leaflet-grab,.leaflet-dragging .leaflet-grab .leaflet-interactive,.leaflet-dragging .leaflet-marker-draggable{cursor:move;cursor:-webkit-grabbing;cursor:-moz-grabbing;cursor:grabbing}.leaflet-image-layer,.leaflet-marker-icon,.leaflet-marker-shadow,.leaflet-pane>svg path,.leaflet-tile-container{pointer-events:none}.leaflet-image-layer.leaflet-interactive,.leaflet-marker-icon.leaflet-interactive,.leaflet-pane>svg path.leaflet-interactive,svg.leaflet-image-layer.leaflet-interactive path{pointer-events:visiblePainted;pointer-events:auto}.leaflet-container a.leaflet-active{outline:orange solid 2px}.leaflet-zoom-box{border:2px dotted #38f;background:rgba(255,255,255,.5)}.leaflet-bar{box-shadow:0 1px 5px rgba(0,0,0,.65);border-radius:4px}.leaflet-bar a,.leaflet-bar a:hover{background-color:#fff;border-bottom:1px solid #ccc;width:26px;height:26px;line-height:26px;display:block;text-align:center;text-decoration:none;color:#000}.leaflet-bar a,.leaflet-control-layers-toggle{background-position:50% 50%;background-repeat:no-repeat;display:block}.leaflet-bar a:hover{background-color:#f4f4f4}.leaflet-bar a:first-child{border-top-left-radius:4px;border-top-right-radius:4px}.leaflet-bar a:last-child{border-bottom-left-radius:4px;border-bottom-right-radius:4px;border-bottom:none}.leaflet-bar a.leaflet-disabled{cursor:default;background-color:#f4f4f4;color:#bbb}.leaflet-touch .leaflet-bar a{width:30px;height:30px;line-height:30px}.leaflet-touch .leaflet-bar a:first-child{border-top-left-radius:2px;border-top-right-radius:2px}.leaflet-touch .leaflet-bar a:last-child{border-bottom-left-radius:2px;border-bottom-right-radius:2px}.leaflet-control-zoom-in,.leaflet-control-zoom-out{font:bold 18px 'Lucida Console',Monaco,monospace;text-indent:1px}.leaflet-touch .leaflet-control-zoom-in,.leaflet-touch .leaflet-control-zoom-out{font-size:22px}.leaflet-control-layers{box-shadow:0 1px 5px rgba(0,0,0,.4);background:#fff;border-radius:5px}.leaflet-control-layers-toggle{background-image:url(images/layers.png);width:36px;height:36px}.leaflet-retina .leaflet-control-layers-toggle{background-image:url(images/layers-2x.png);background-size:26px 26px}.leaflet-touch .leaflet-control-layers-toggle{width:44px;height:44px}.leaflet-control-layers .leaflet-control-layers-list,.leaflet-control-layers-expanded .leaflet-control-layers-toggle{display:none}.leaflet-control-layers-expanded .leaflet-control-layers-list{display:block;position:relative}.leaflet-control-layers-expanded{padding:6px 10px 6px 6px;color:#333;background:#fff}.leaflet-control-layers-scrollbar{overflow-y:scroll;overflow-x:hidden;padding-right:5px}.leaflet-control-layers-selector{margin-top:2px;position:relative;top:1px}.leaflet-control-layers label{display:block}.leaflet-control-layers-separator{height:0;border-top:1px solid #ddd;margin:5px -10px 5px -6px}.leaflet-default-icon-path{background-image:url(images/marker-icon.png)}.leaflet-container .leaflet-control-attribution{background:rgba(255,255,255,.7);margin:0}.leaflet-control-attribution,.leaflet-control-scale-line{padding:0 5px;color:#333}.leaflet-control-attribution a{text-decoration:none}.leaflet-control-attribution a:hover{text-decoration:underline}.leaflet-container .leaflet-control-attribution,.leaflet-container .leaflet-control-scale{font-size:11px}.leaflet-left .leaflet-control-scale{margin-left:5px}.leaflet-bottom .leaflet-control-scale{margin-bottom:5px}.leaflet-control-scale-line{border:2px solid #777;border-top:none;line-height:1.1;padding:2px 5px 1px;font-size:11px;white-space:nowrap;overflow:hidden;-moz-box-sizing:border-box;box-sizing:border-box;background:rgba(255,255,255,.5)}.leaflet-control-scale-line:not(:first-child){border-top:2px solid #777;border-bottom:none;margin-top:-2px}.leaflet-control-scale-line:not(:first-child):not(:last-child){border-bottom:2px solid #777}.leaflet-touch .leaflet-bar,.leaflet-touch .leaflet-control-attribution,.leaflet-touch .leaflet-control-layers{box-shadow:none}.leaflet-touch .leaflet-bar,.leaflet-touch .leaflet-control-layers{border:2px solid rgba(0,0,0,.2);background-clip:padding-box}.leaflet-popup{position:absolute;text-align:center;margin-bottom:20px}.leaflet-popup-content-wrapper{padding:1px;text-align:left;border-radius:12px}.leaflet-popup-content{margin:13px 19px;line-height:1.4}.leaflet-popup-content p{margin:18px 0}.leaflet-popup-tip-container{width:40px;height:20px;position:absolute;left:50%;margin-left:-20px;overflow:hidden;pointer-events:none}.leaflet-popup-tip{width:17px;height:17px;padding:1px;margin:-10px auto 0;-webkit-transform:rotate(45deg);-moz-transform:rotate(45deg);-ms-transform:rotate(45deg);transform:rotate(45deg)}.leaflet-popup-content-wrapper,.leaflet-popup-tip{background:#fff;color:#333;box-shadow:0 3px 14px rgba(0,0,0,.4)}.leaflet-container a.leaflet-popup-close-button{position:absolute;top:0;right:0;padding:4px 4px 0 0;border:none;text-align:center;width:18px;height:14px;font:700 16px/14px Tahoma,Verdana,sans-serif;color:#c3c3c3;text-decoration:none;background:0 0}.leaflet-container a.leaflet-popup-close-button:hover{color:#999}.leaflet-popup-scrolled{overflow:auto;border-bottom:1px solid #ddd;border-top:1px solid #ddd}.leaflet-oldie .leaflet-popup-content-wrapper{zoom:1}.leaflet-oldie .leaflet-popup-tip{width:24px;margin:0 auto}.leaflet-oldie .leaflet-popup-tip-container{margin-top:-1px}.leaflet-oldie .leaflet-control-layers,.leaflet-oldie .leaflet-control-zoom,.leaflet-oldie .leaflet-popup-content-wrapper,.leaflet-oldie .leaflet-popup-tip{border:1px solid #999}.leaflet-div-icon{background:#fff;border:1px solid #666}.leaflet-tooltip{position:absolute;padding:6px;background-color:#fff;border:1px solid #fff;border-radius:3px;color:#222;white-space:nowrap;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;pointer-events:none;box-shadow:0 1px 3px rgba(0,0,0,.4)}.leaflet-tooltip.leaflet-clickable{cursor:pointer;pointer-events:auto}.leaflet-tooltip-bottom:before,.leaflet-tooltip-left:before,.leaflet-tooltip-right:before,.leaflet-tooltip-top:before{position:absolute;pointer-events:none;border:6px solid transparent;background:0 0;content:""}.leaflet-tooltip-bottom{margin-top:6px}.leaflet-tooltip-top{margin-top:-6px}.leaflet-tooltip-bottom:before,.leaflet-tooltip-top:before{left:50%;margin-left:-6px}.leaflet-tooltip-top:before{bottom:0;margin-bottom:-12px;border-top-color:#fff}.leaflet-tooltip-bottom:before{top:0;margin-top:-12px;margin-left:-6px;border-bottom-color:#fff}.leaflet-tooltip-left{margin-left:-6px}.leaflet-tooltip-right{margin-left:6px}.leaflet-tooltip-left:before,.leaflet-tooltip-right:before{top:50%;margin-top:-6px}.leaflet-tooltip-left:before{right:0;margin-right:-12px;border-left-color:#fff}.leaflet-tooltip-right:before{left:0;margin-left:-12px;border-right-color:#fff}`;export{t as leafletStyles};
//# sourceMappingURL=leaflet.js.map

@@ -1,2 +0,2 @@

import{css as e}from"lit-element";export const skeleton=e`@keyframes skeleton-pulse{from{opacity:.85}to{opacity:.45}}.skeleton{animation-direction:alternate;animation-duration:.5s;animation-iteration-count:infinite;animation-name:skeleton-pulse;animation-play-state:var(--cc-skeleton-state,running);color:transparent;cursor:progress;-moz-user-select:none;-webkit-user-select:none;-ms-user-select:none;user-select:none}`;
//# sourceMappingURL=skeleton.js.map
import{css as e}from"lit-element";const n=e`@keyframes skeleton-pulse{from{opacity:.85}to{opacity:.45}}.skeleton{animation-direction:alternate;animation-duration:.5s;animation-iteration-count:infinite;animation-name:skeleton-pulse;animation-play-state:var(--cc-skeleton-state,running);color:transparent;cursor:progress;-moz-user-select:none;-webkit-user-select:none;-ms-user-select:none;user-select:none}`;export{n as skeletonStyles};
//# sourceMappingURL=skeleton.js.map

@@ -1,2 +0,2 @@

import{classMap as e}from"lit-html/directives/class-map.js";import{css as n,html as o}from"lit-element";import{ifDefined as i}from"lit-html/directives/if-defined.js";function r(e){try{return new URL(e,location.href).origin!==location.origin}catch(e){return!0}}export const ccLink=(n,l,c=!1)=>{const t=null!=n?n:void 0,s=r(t)?"_blank":void 0,a=r(t)?"noopener noreferrer":void 0;return o`<a class="${e({skeleton:c})} cc-link" href=${i(t)} target=${i(s)} rel=${i(a)}>${l}</a>`};export const linkStyles=n`.cc-link,.sanitized-link{color:#0269c9}.cc-link:enabled:hover,.sanitized-link:enabled:hover{color:#01417e}.cc-link:focus,.sanitized-link:focus{background-color:#fff;border-radius:.1rem;box-shadow:0 0 0 .1rem #fff,0 0 0 .3rem rgba(50,115,220,.25);outline:0}.cc-link::-moz-focus-inner,.sanitized-link::-moz-focus-inner{border:0}.cc-link .skeleton,.cc-link.skeleton,.sanitized-link .skeleton,.sanitized-link.skeleton{color:transparent;background-color:#76bcfd}`;
//# sourceMappingURL=cc-link.js.map
import{css as e,html as n}from"lit-element";import{classMap as o}from"lit-html/directives/class-map.js";import{ifDefined as i}from"lit-html/directives/if-defined.js";function r(e){try{return new URL(e,location.href).origin!==location.origin}catch(e){return!0}}const l=(e,l,c=!1)=>{const t=null!=e?e:void 0,s=r(t)?"_blank":void 0,a=r(t)?"noopener noreferrer":void 0;return n`<a class="${o({skeleton:c})} cc-link" href=${i(t)} target=${i(s)} rel=${i(a)}>${l}</a>`},c=e`.cc-link,.sanitized-link{color:#0269c9}.cc-link:enabled:hover,.sanitized-link:enabled:hover{color:#01417e}.cc-link:focus,.sanitized-link:focus{background-color:#fff;border-radius:.1rem;box-shadow:0 0 0 .1rem #fff,0 0 0 .3rem rgba(50,115,220,.25);outline:0}.cc-link::-moz-focus-inner,.sanitized-link::-moz-focus-inner{border:0}.cc-link .skeleton,.cc-link.skeleton,.sanitized-link .skeleton,.sanitized-link.skeleton{color:transparent;background-color:#76bcfd}`;export{l as ccLink,c as linkStyles};
//# sourceMappingURL=cc-link.js.map

@@ -1,2 +0,10 @@

import{prepareFormatDate as e,prepareFormatDateOnly as a,prepareFormatDatetime as t,prepareFormatDistanceToNow as n,prepareFormatHours as o}from"../lib/i18n-date.js";import{prepareNumberUnitFormatter as i}from"../lib/i18n-number.js";import{sanitize as s}from"../lib/i18n-sanitize.js";export const lang="en";function r(e,a=e+"s"){return t=>1===t?e:a}const c=n("en",(e,a)=>`${e} ${r(a)(e)} ago`,"just now"),d=e("en"),l=t("en"),p=a("en"),m=o("en"),u=new Intl.NumberFormat("en",{style:"currency",currency:"EUR"}),h=new Intl.NumberFormat("en",{style:"percent",minimumFractionDigits:1,maximumFractionDigits:1}),g=new Intl.NumberFormat("en"),v=i("en");function b(e){return[`CPUs: ${e.cpus}`+(e.microservice?" (shared)":""),e.gpus>0?`GPUs: ${e.gpus}`:"",`RAM: ${e.mem<1024?`${e.mem} MB`:`${e.mem/1024} GB`}`].filter(e=>e).join("\n")}export const translations={LANGUAGE:"🇬🇧 English","cc-addon-backups.command-password":"This command will ask for your password, here it is:","cc-addon-backups.delete":({createdAt:e})=>s`Delete the backup from <strong title="${d(e)}">${l(e)}</strong>`,"cc-addon-backups.delete.btn":"delete...","cc-addon-backups.delete.with-service.title.es-addon":"Delete with Kibana","cc-addon-backups.delete.with-service.description.es-addon":({href:e})=>s`You can delete this backup using Kibana by going to the <a href="${e}">backup repository</a>.`,"cc-addon-backups.delete.manual.title":"Delete manually","cc-addon-backups.delete.manual.description.es-addon":"You can delete this backup using cURL by executing this command:","cc-addon-backups.description.es-addon":"Backups are managed by Elasticsearch itself. You can define the retention period and backup frequency through Kibana's UI.","cc-addon-backups.description.es-addon-old":"Backups are managed by Elasticsearch itself. The version of your Elasticsearch does not allow to define a retention policy. Deleting a backup can be done manually through Elasticsearch's API.","cc-addon-backups.empty":"There are no backups yet.","cc-addon-backups.link.es-addon":"open in Kibana","cc-addon-backups.link.es-addon-old":"open in Elasticsearch","cc-addon-backups.loading-error":"Something went wrong while loading the backups.","cc-addon-backups.restore":({createdAt:e})=>s`Restore the backup from <strong title="${d(e)}">${l(e)}</strong>`,"cc-addon-backups.restore.btn":"restore...","cc-addon-backups.restore.with-service.title.es-addon":"Restore with Kibana","cc-addon-backups.restore.with-service.description.es-addon":({href:e})=>s`You can restore this backup using Kibana by going to the <a href="${e}">backup repository</a>.`,"cc-addon-backups.restore.manual.title":"Restore manually","cc-addon-backups.restore.manual.description.es-addon":"You can restore this backup using cURL by executing this command:","cc-addon-backups.text":({createdAt:e,expiresAt:a})=>s`Backup from <strong title="${d(e)}">${l(e)}</strong> (expires on <strong>${p(a)}</strong>)`,"cc-addon-backups.text.user-defined-retention":({createdAt:e})=>s`Backup from <strong title="${d(e)}">${l(e)}</strong> (expires after defined retention)`,"cc-addon-backups.title":"Backups","cc-addon-credentials.description.apm":"Use those credentials to connect an APM Server instance to your Elasticsearch cluster.","cc-addon-credentials.description.elasticsearch":"Use those credentials to connect to your Elasticsearch cluster.","cc-addon-credentials.description.kibana":"Use those credentials to connect a Kibana instance to your Elasticsearch cluster.","cc-addon-credentials.field.auth-token":"Authentication token","cc-addon-credentials.field.host":"Domain name","cc-addon-credentials.field.password":"Password","cc-addon-credentials.field.user":"User","cc-addon-credentials.loading-error":"Something went wrong while loading the credentials.","cc-addon-credentials.title":({name:e})=>`${e} credentials`,"cc-addon-features.details":"Here's the list of all the features of your add-on. Features may evolve and your add-on would need a migration to match them all.","cc-addon-features.feature-name.disk":"Disk","cc-addon-features.feature-name.memory":"Memory","cc-addon-features.feature-name.nodes":"Nodes","cc-addon-features.feature-value.dedicated":"Dedicated","cc-addon-features.feature-value.no":"No","cc-addon-features.feature-value.yes":"Yes","cc-addon-features.loading-error":"Something went wrong while loading add-on features.","cc-addon-features.title":"Features","cc-addon-linked-apps.details":"Here's the list of applications linked to this add-on. The add-on exposes its environment variables to those linked applications.","cc-addon-linked-apps.loading-error":"Something went wrong while loading linked applications.","cc-addon-linked-apps.no-linked-applications":"No applications linked yet.","cc-addon-linked-apps.title":"Linked applications","cc-addon-linked-apps.zone":"zone:","cc-beta.label":"beta","cc-block.toggle.open":"Open","cc-block.toggle.close":"Close","cc-button.cancel":"Click to cancel","cc-datetime-relative.distance":({date:e})=>c(e),"cc-datetime-relative.title":({date:e})=>d(e),"cc-elasticsearch-info.error":"Something went wrong while loading add-ons linked to this application.","cc-elasticsearch-info.info":"Info","cc-elasticsearch-info.link.apm":"Open APM","cc-elasticsearch-info.link.doc":"Read the documentation","cc-elasticsearch-info.link.elasticsearch":"Check out the Elasticsearch add-on","cc-elasticsearch-info.link.kibana":"Open Kibana","cc-elasticsearch-info.text":"This add-on is part of the Elastic Stack offer. You can find the documentation and linked services right below.","cc-elasticsearch-options.enabled":"Enabled","cc-elasticsearch-options.disabled":"Disabled","cc-elasticsearch-options.confirm":"Confirm options","cc-elasticsearch-options.title":"Options for the Elastic Stack","cc-elasticsearch-options.description":()=>s`This add-on is part of the Elastic Stack offer which includes two options. Both these options will be deployed as applications, managed and updated by Clever Cloud on your behalf. They will appear as regular applications that you can stop, scale up or down automatically like one of your own applications. As such, <strong>enabling these options will result in an increase in credits consumption</strong> as well.`,"cc-elasticsearch-options.description.kibana":()=>s`Kibana is the admin UI for the Elastic Stack. It lets you visualize your Elasticsearch data and navigate the stack so you can do anything from tracking query load to understanding the way requests flow through your apps. Learn more in the <a href="https://www.elastic.co/guide/en/kibana/master/index.html">official Kibana documentation</a>.`,"cc-elasticsearch-options.description.apm":()=>s`Elastic APM server is an application performance monitoring system built on the Elastic Stack. Deploying this will allow you to automatically send APM metrics from any applications linked to the Elasticsearch add-on instance, providing you add the Elastic APM agent to the application code. Learn more in the <a href="https://www.elastic.co/guide/en/apm/get-started/current/overview.html">official APM server documentation</a>.`,"cc-elasticsearch-options.warning.kibana":"If you enable this option, we'll deploy and manage a Kibana application for you, this will lead to additional costs.","cc-elasticsearch-options.warning.kibana.details":e=>s`By default, the app will start on a <strong title="${b(e)}">${e.name} instance</strong> which costs around <strong>${u.format(e.monthlyCost)} per month</strong>.`,"cc-elasticsearch-options.warning.apm":"If you enable this option, we'll deploy and manage an Elastic APM server application for you, this will lead to additional costs.","cc-elasticsearch-options.warning.apm.details":e=>s`By default, the app will start on a <strong title="${b(e)}">${e.name} instance</strong> which costs around <strong>${u.format(e.monthlyCost)} per month</strong>.`,"cc-error.ok":"OK","cc-header-addon.plan":"Plan","cc-header-addon.version":"Version","cc-header-addon.creation-date":"Creation date","cc-header-addon.creation-date.short":({date:e})=>p(e),"cc-header-addon.creation-date.full":({date:e})=>d(e),"cc-header-addon.error":"Something went wrong while loading add-on info.","cc-header-app.action.cancel-deployment":"Cancel deployment","cc-header-app.action.restart":"Restart","cc-header-app.action.restart-last-commit":"Restart last pushed commit","cc-header-app.action.restart-rebuild":"Re-build and restart","cc-header-app.action.start":"Start","cc-header-app.action.start-last-commit":"Start last pushed commit","cc-header-app.action.start-rebuild":"Re-build and start","cc-header-app.action.stop":"Stop app","cc-header-app.disable-buttons":"You are not authorized to perform those actions","cc-header-app.read-logs":"read logs here","cc-header-app.commits.no-commits":"no commits yet","cc-header-app.commits.git":({commit:e})=>`git repo version (HEAD): ${e}`,"cc-header-app.commits.running":({commit:e})=>`running version: ${e}`,"cc-header-app.commits.starting":({commit:e})=>`deploying version: ${e}`,"cc-header-app.state-msg.app-is-restarting":"Your application is restarting...","cc-header-app.state-msg.app-is-running":"Your application is running!","cc-header-app.state-msg.app-is-starting":"Your application is starting...","cc-header-app.state-msg.app-is-stopped":"Your application is currently stopped.","cc-header-app.state-msg.last-deploy-failed":"The last deployment failed,","cc-header-app.state-msg.unknown-state":"Unknown state, try to restart the application or contact our support if you have additional questions.","cc-header-app.user-action-msg.app-will-start":"Your application is about to start...","cc-header-app.user-action-msg.deploy-will-begin":"A new deployment is about to begin...","cc-header-app.user-action-msg.deploy-cancelled":"This deployment has been cancelled.","cc-header-app.user-action-msg.app-will-stop":"Your application is about to stop...","cc-header-app.error":"Something went wrong while loading app info.","cc-header-orga.hotline":"Hotline:","cc-header-orga.error":"Something went wrong while loading organization info.","cc-addon-admin.addon-name":"Add-on name","cc-addon-admin.admin":"Administration","cc-addon-admin.delete":"Delete the add-on","cc-addon-admin.danger-zone":"Danger zone","cc-addon-admin.delete-24h-delay":"The virtual machine will be stopped in 24 hours.","cc-addon-admin.delete-keep-backups":"Backups will be kept according to the retention policy.","cc-addon-admin.delete-unavailable":"Deleting this add-on will make it immediately unavailable.","cc-addon-admin.error-loading":"Something went wrong while loading add-on info.","cc-addon-admin.error-saving":"An error occurred when saving your modifications.","cc-addon-admin.tags":"Tags","cc-addon-admin.tags-description":"Tags allow you to classify your applications and add-ons to create categories","cc-addon-admin.tags-empty":"No defined tags","cc-addon-admin.tags-update":"Update tags","cc-addon-admin.update":"Update name","cc-tile-consumption.title":"Credits consumption","cc-tile-consumption.yesterday":"Yesterday","cc-tile-consumption.last-30-days":"Last 30 days","cc-tile-consumption.amount":({amount:e})=>u.format(e),"cc-tile-consumption.error":"Something went wrong while loading consumption info.","cc-tile-deployments.title":"Last deployments","cc-tile-deployments.state.failed":"Failed","cc-tile-deployments.state.started":"Started","cc-tile-deployments.state.cancelled":"Cancelled","cc-tile-deployments.state.stopped":"Stopped","cc-tile-deployments.empty":"No deployments yet.","cc-tile-deployments.error":"Something went wrong while loading deployments info.","cc-tile-instances.title":"Instances","cc-tile-instances.status.deploying":"Deploying","cc-tile-instances.status.running":"Running","cc-tile-instances.empty":"No instances. Your app is stopped.","cc-tile-instances.error":"Something went wrong while loading instances.","cc-tile-requests.title":"HTTP requests","cc-tile-requests.about":"About this chart...","cc-tile-requests.date-hours":({date:e})=>m(e),"cc-tile-requests.date-tooltip":({from:e,to:a})=>`${p(e)}: from ${m(e)} to ${m(a)}`,"cc-tile-requests.requests-nb":({value:e,windowHours:a})=>{const t=r("request")(e),n=r("hour")(a);return`${g.format(e)} ${t} (in ${a} ${n})`},"cc-tile-requests.requests-nb.total":({totalRequests:e})=>{const a=r("request")(e);return`${v(e)} ${a} in 24 hours`},"cc-tile-requests.requests-count":({requestCount:e})=>v(e),"cc-tile-requests.empty":"No data to display for now.","cc-tile-requests.error":"Something went wrong while loading HTTP requests.","cc-tile-requests.docs.msg":({windowHours:e})=>{const a=r("hour")(e);return s`HTTP requests received in the last 24 hours. Each bar represents a time window of <strong>${e} ${a}</strong>.`},"cc-tile-scalability.title":"Scalability","cc-tile-scalability.size":"Size","cc-tile-scalability.number":"Number","cc-tile-scalability.flavor-info":e=>b(e),"cc-tile-scalability.error":"Something went wrong while loading scalability config.","cc-tile-status-codes.title":"HTTP response codes","cc-tile-status-codes.about":"About this chart...","cc-tile-status-codes.tooltip":({value:e,percent:a})=>{const t=r("request")(e);return`${g.format(e)} ${t} (${h.format(a)})`},"cc-tile-status-codes.error":"Something went wrong while loading HTTP response codes.","cc-tile-status-codes.empty":"No data to display for now.","cc-tile-status-codes.docs.msg":"Repartition of HTTP response codes returned in the last 24 hours. Click on legend items to show/hide HTTP code categories.","cc-tile-status-codes.docs.link":()=>s`<a href="https://developer.mozilla.org/en/docs/Web/HTTP/Status">HTTP response status codes (MDN)</a>`,"cc-input-text.clipboard":"Copy to clipboard","cc-input-text.secret.show":"Show secret","cc-input-text.secret.hide":"Hide secret","cc-logsmap.mode.points":"Realtime","cc-logsmap.mode.heatmap":"Last 24h","cc-logsmap.legend.points":({orgaName:e})=>s`Realtime map of HTTP requests received by all apps from <strong>${e}</strong>.`,"cc-logsmap.legend.points.app":({appName:e})=>s`Realtime map of HTTP requests received by <strong>${e}</strong>.`,"cc-logsmap.legend.heatmap":({orgaName:e})=>s`Heatmap of HTTP requests received by all apps from <strong>${e}</strong> during the last 24 hours.`,"cc-logsmap.legend.heatmap.app":({appName:e})=>s`Heatmap of HTTP requests received by <strong>${e}</strong> during the last 24 hours.`,"cc-map.error":"Something went wrong while trying to fetch data for the map.","cc-map.no-points":"No data to display on the map right now.","env-var-create.name.placeholder":"VARIABLE_NAME","env-var-create.value.placeholder":"variable value","env-var-create.create-button":"Add","env-var-create.errors.invalid-name":({name:e})=>s`Name <code>${e}</code> is invalid`,"env-var-create.errors.already-defined-name":({name:e})=>s`Name <code>${e}</code> is already defined`,"env-var-editor-simple.empty-data":"There are no variables.","env-var-editor-expert.placeholder":'VARIABLE_NAME="variable value"',"env-var-editor-expert.placeholder-readonly":"There are no variables.","env-var-editor-expert.errors.unknown":"Unknown Error","env-var-editor-expert.errors.line":"line","env-var-editor-expert.errors.invalid-name":({name:e})=>s`<code>${e}</code> is not a valid variable name`,"env-var-editor-expert.errors.duplicated-name":({name:e})=>s`be careful, the name <code>${e}</code> is already defined`,"env-var-editor-expert.errors.invalid-line":()=>s`this line is not valid, the correct pattern is: <code>NAME="VALUE"</code>`,"env-var-editor-expert.errors.invalid-value":()=>s`the value is not valid, if you use quotes, you need to escape them like this: <code>\\"</code> or quote the whole value.`,"env-var-linked-services.description.addon":({serviceName:e,appName:a})=>s`List of variables exposed by the add-on <strong>${e}</strong>.<br>Those variables will be injected as environment variables in the application <strong>${a}</strong>.`,"env-var-linked-services.description.app":({serviceName:e,appName:a})=>s`Configuration exposed by the application <strong>${e}</strong>.<br>Those variables will be injected as environement variables in the application <strong>${a}</strong>.`,"env-var-linked-services.empty.addon":({appName:e})=>s`No add-ons linked to <strong>${e}</strong>.`,"env-var-linked-services.empty.app":({appName:e})=>s`No applications linked to <strong>${e}</strong>.`,"env-var-linked-services.error.addon":({appName:e})=>s`Something went wrong while loading add-ons linked to <strong>${e}</strong>.`,"env-var-linked-services.error.app":({appName:e})=>s`Something went wrong while loading applications linked to <strong>${e}</strong>.`,"env-var-linked-services.heading.addon":({name:e})=>`Add-on: ${e}`,"env-var-linked-services.heading.app":({name:e})=>`Application: ${e}`,"env-var-linked-services.loading.addon":({appName:e})=>s`Loading variables exposed by add-ons linked to <strong>${e}</strong>...`,"env-var-linked-services.loading.app":({appName:e})=>s`Loading configuration exposed by applications linked to <strong>${e}</strong>...`,"env-var-form.mode.simple":"Simple","env-var-form.mode.expert":"Expert","env-var-form.reset":"Reset changes","env-var-form.restart-app":"Restart the app to apply changes","env-var-form.update":"Update changes","env-var-form.error.loading":"Something went wrong while loading variables.","env-var-form.error.saving":"Something went wrong while updating variables.","env-var-form.error.unknown":"Something went wrong...","env-var-form.heading.env-var":"Environment variables","env-var-form.heading.exposed-config":"Exposed configuration","env-var-form.description.env-var":({appName:e})=>s`List of environment variables that will be injected in the application <strong>${e}</strong>. <a href="http://doc.clever-cloud.com/admin-console/environment-variables/">Learn more</a>`,"env-var-form.description.exposed-config":({appName:e})=>s`Configuration exposed to dependent applications.<br>Those variables won't be injected in the application <strong>${e}</strong>, they will be injected as environment variables in applications that have <strong>${e}</strong> in their service dependencies. <a href="https://www.clever-cloud.com/doc/admin-console/service-dependencies/">Learn more</a>`,"env-var-input.delete-button":"Remove","env-var-input.keep-button":"Keep","env-var-input.value-placeholder":"variable value"};
//# sourceMappingURL=translations.en.js.map
import{prepareFormatDistanceToNow as e,prepareFormatDate as a,prepareFormatDatetime as t,prepareFormatDateOnly as o,prepareFormatHours as n}from"../lib/i18n-date.js";import{prepareNumberUnitFormatter as i}from"../lib/i18n-number.js";import{sanitize as r}from"../lib/i18n-sanitize.js";const c="en";function s(e,a=e+"s"){return t=>1===t?e:a}const d=e("en",(e,a)=>`${e} ${s(a)(e)} ago`,"just now"),l=a("en"),p=t("en"),m=o("en"),u=n("en"),h=new Intl.NumberFormat("en",{style:"currency",currency:"EUR"}),g=new Intl.NumberFormat("en",{style:"percent",minimumFractionDigits:1,maximumFractionDigits:1}),v=new Intl.NumberFormat("en"),b=i("en");function f(e){return[`CPUs: ${e.cpus}`+(e.microservice?" (shared)":""),e.gpus>0?`GPUs: ${e.gpus}`:"",`RAM: ${e.mem<1024?`${e.mem} MB`:`${e.mem/1024} GB`}`].filter(e=>e).join("\n")}const w={LANGUAGE:"🇬🇧 English","cc-addon-backups.command-password":"This command will ask for your password, here it is:","cc-addon-backups.delete":({createdAt:e})=>r`Delete the backup from <strong title="${l(e)}">${p(e)}</strong>`,"cc-addon-backups.delete.btn":"delete...","cc-addon-backups.delete.with-service.title.es-addon":"Delete with Kibana","cc-addon-backups.delete.with-service.description.es-addon":({href:e})=>r`You can delete this backup using Kibana by going to the <a href="${e}">backup repository</a>.`,"cc-addon-backups.delete.manual.title":"Delete manually","cc-addon-backups.delete.manual.description.es-addon":"You can delete this backup using cURL by executing this command:","cc-addon-backups.description.es-addon":"Backups are managed by Elasticsearch itself. You can define the retention period and backup frequency through Kibana's UI.","cc-addon-backups.description.es-addon-old":"Backups are managed by Elasticsearch itself. The version of your Elasticsearch does not allow to define a retention policy. Deleting a backup can be done manually through Elasticsearch's API.","cc-addon-backups.empty":"There are no backups yet.","cc-addon-backups.link.es-addon":"open in Kibana","cc-addon-backups.link.es-addon-old":"open in Elasticsearch","cc-addon-backups.loading-error":"Something went wrong while loading the backups.","cc-addon-backups.restore":({createdAt:e})=>r`Restore the backup from <strong title="${l(e)}">${p(e)}</strong>`,"cc-addon-backups.restore.btn":"restore...","cc-addon-backups.restore.with-service.title.es-addon":"Restore with Kibana","cc-addon-backups.restore.with-service.description.es-addon":({href:e})=>r`You can restore this backup using Kibana by going to the <a href="${e}">backup repository</a>.`,"cc-addon-backups.restore.manual.title":"Restore manually","cc-addon-backups.restore.manual.description.es-addon":"You can restore this backup using cURL by executing this command:","cc-addon-backups.text":({createdAt:e,expiresAt:a})=>r`Backup from <strong title="${l(e)}">${p(e)}</strong> (expires on <strong>${m(a)}</strong>)`,"cc-addon-backups.text.user-defined-retention":({createdAt:e})=>r`Backup from <strong title="${l(e)}">${p(e)}</strong> (expires after defined retention)`,"cc-addon-backups.title":"Backups","cc-addon-credentials.description.apm":"Use those credentials to connect an APM Server instance to your Elasticsearch cluster.","cc-addon-credentials.description.elasticsearch":"Use those credentials to connect to your Elasticsearch cluster.","cc-addon-credentials.description.kibana":"Use those credentials to connect a Kibana instance to your Elasticsearch cluster.","cc-addon-credentials.field.auth-token":"Authentication token","cc-addon-credentials.field.host":"Domain name","cc-addon-credentials.field.password":"Password","cc-addon-credentials.field.user":"User","cc-addon-credentials.loading-error":"Something went wrong while loading the credentials.","cc-addon-credentials.title":({name:e})=>`${e} credentials`,"cc-addon-features.details":"Here's the list of all the features of your add-on. Features may evolve and your add-on would need a migration to match them all.","cc-addon-features.feature-name.disk":"Disk","cc-addon-features.feature-name.memory":"Memory","cc-addon-features.feature-name.nodes":"Nodes","cc-addon-features.feature-value.dedicated":"Dedicated","cc-addon-features.feature-value.no":"No","cc-addon-features.feature-value.yes":"Yes","cc-addon-features.loading-error":"Something went wrong while loading add-on features.","cc-addon-features.title":"Features","cc-addon-linked-apps.details":"Here's the list of applications linked to this add-on. The add-on exposes its environment variables to those linked applications.","cc-addon-linked-apps.loading-error":"Something went wrong while loading linked applications.","cc-addon-linked-apps.no-linked-applications":"No applications linked yet.","cc-addon-linked-apps.title":"Linked applications","cc-addon-linked-apps.zone":"zone:","cc-beta.label":"beta","cc-block.toggle.open":"Open","cc-block.toggle.close":"Close","cc-button.cancel":"Click to cancel","cc-datetime-relative.distance":({date:e})=>d(e),"cc-datetime-relative.title":({date:e})=>l(e),"cc-elasticsearch-info.error":"Something went wrong while loading add-ons linked to this application.","cc-elasticsearch-info.info":"Info","cc-elasticsearch-info.link.apm":"Open APM","cc-elasticsearch-info.link.doc":"Read the documentation","cc-elasticsearch-info.link.elasticsearch":"Check out the Elasticsearch add-on","cc-elasticsearch-info.link.kibana":"Open Kibana","cc-elasticsearch-info.text":"This add-on is part of the Elastic Stack offer. You can find the documentation and linked services right below.","cc-elasticsearch-options.enabled":"Enabled","cc-elasticsearch-options.disabled":"Disabled","cc-elasticsearch-options.confirm":"Confirm options","cc-elasticsearch-options.title":"Options for the Elastic Stack","cc-elasticsearch-options.description":()=>r`This add-on is part of the Elastic Stack offer which includes two options. Both these options will be deployed as applications, managed and updated by Clever Cloud on your behalf. They will appear as regular applications that you can stop, scale up or down automatically like one of your own applications. As such, <strong>enabling these options will result in an increase in credits consumption</strong> as well.`,"cc-elasticsearch-options.description.kibana":()=>r`Kibana is the admin UI for the Elastic Stack. It lets you visualize your Elasticsearch data and navigate the stack so you can do anything from tracking query load to understanding the way requests flow through your apps. Learn more in the <a href="https://www.elastic.co/guide/en/kibana/master/index.html">official Kibana documentation</a>.`,"cc-elasticsearch-options.description.apm":()=>r`Elastic APM server is an application performance monitoring system built on the Elastic Stack. Deploying this will allow you to automatically send APM metrics from any applications linked to the Elasticsearch add-on instance, providing you add the Elastic APM agent to the application code. Learn more in the <a href="https://www.elastic.co/guide/en/apm/get-started/current/overview.html">official APM server documentation</a>.`,"cc-elasticsearch-options.warning.kibana":"If you enable this option, we'll deploy and manage a Kibana application for you, this will lead to additional costs.","cc-elasticsearch-options.warning.kibana.details":e=>r`By default, the app will start on a <strong title="${f(e)}">${e.name} instance</strong> which costs around <strong>${h.format(e.monthlyCost)} per month</strong>.`,"cc-elasticsearch-options.warning.apm":"If you enable this option, we'll deploy and manage an Elastic APM server application for you, this will lead to additional costs.","cc-elasticsearch-options.warning.apm.details":e=>r`By default, the app will start on a <strong title="${f(e)}">${e.name} instance</strong> which costs around <strong>${h.format(e.monthlyCost)} per month</strong>.`,"cc-error.ok":"OK","cc-header-addon.plan":"Plan","cc-header-addon.version":"Version","cc-header-addon.creation-date":"Creation date","cc-header-addon.creation-date.short":({date:e})=>m(e),"cc-header-addon.creation-date.full":({date:e})=>l(e),"cc-header-addon.error":"Something went wrong while loading add-on info.","cc-header-app.action.cancel-deployment":"Cancel deployment","cc-header-app.action.restart":"Restart","cc-header-app.action.restart-last-commit":"Restart last pushed commit","cc-header-app.action.restart-rebuild":"Re-build and restart","cc-header-app.action.start":"Start","cc-header-app.action.start-last-commit":"Start last pushed commit","cc-header-app.action.start-rebuild":"Re-build and start","cc-header-app.action.stop":"Stop app","cc-header-app.disable-buttons":"You are not authorized to perform those actions","cc-header-app.read-logs":"read logs here","cc-header-app.commits.no-commits":"no commits yet","cc-header-app.commits.git":({commit:e})=>`git repo version (HEAD): ${e}`,"cc-header-app.commits.running":({commit:e})=>`running version: ${e}`,"cc-header-app.commits.starting":({commit:e})=>`deploying version: ${e}`,"cc-header-app.state-msg.app-is-restarting":"Your application is restarting...","cc-header-app.state-msg.app-is-running":"Your application is running!","cc-header-app.state-msg.app-is-starting":"Your application is starting...","cc-header-app.state-msg.app-is-stopped":"Your application is currently stopped.","cc-header-app.state-msg.last-deploy-failed":"The last deployment failed,","cc-header-app.state-msg.unknown-state":"Unknown state, try to restart the application or contact our support if you have additional questions.","cc-header-app.user-action-msg.app-will-start":"Your application is about to start...","cc-header-app.user-action-msg.deploy-will-begin":"A new deployment is about to begin...","cc-header-app.user-action-msg.deploy-cancelled":"This deployment has been cancelled.","cc-header-app.user-action-msg.app-will-stop":"Your application is about to stop...","cc-header-app.error":"Something went wrong while loading app info.","cc-header-orga.hotline":"Hotline:","cc-header-orga.error":"Something went wrong while loading organization info.","cc-addon-admin.addon-name":"Add-on name","cc-addon-admin.admin":"Administration","cc-addon-admin.delete":"Delete the add-on","cc-addon-admin.danger-zone":"Danger zone","cc-addon-admin.delete-description":()=>r`Deleting this add-on will make it immediately unavailable.<br>The virtual machine will be stopped in 24 hours.<br>Backups will be kept according to the retention policy.`,"cc-addon-admin.error-loading":"Something went wrong while loading add-on info.","cc-addon-admin.error-saving":"An error occurred when saving your modifications.","cc-addon-admin.tags":"Tags","cc-addon-admin.tags-description":"Tags allow you to classify your applications and add-ons to create categories","cc-addon-admin.tags-empty":"No defined tags","cc-addon-admin.tags-update":"Update tags","cc-addon-admin.update":"Update name","cc-tcp-redirection.create-button":"Create","cc-tcp-redirection.delete-button":"Delete","cc-tcp-redirection.retry-button":"Retry","cc-tcp-redirection.namespace-additionaldescription-cleverapps":()=>r`This namespace is used by all <em>cleverapps.io</em> domains (e.g. <em>my-app.cleverapps.io</em>).`,"cc-tcp-redirection.namespace-additionaldescription-default":()=>r`This namespace is used by all custom domains (e.g. <em>my-app.com</em>).`,"cc-tcp-redirection.namespace-private":"This is your private namespace.","cc-tcp-redirection.redirection-defined":({namespace:e,sourcePort:a})=>r`This application has a redirection from port <code>${a}</code> to port <code>4040</code> in the <strong>${e}</strong> namespace.`,"cc-tcp-redirection.redirection-not-defined":({namespace:e})=>r`You can create a redirection in the <strong>${e}</strong> namespace.`,"cc-tcp-redirection.error.redirection-defined":({namespace:e,sourcePort:a})=>r`An error occurred while deleting the redirection from port <code>${a}</code> to port <code>4040</code> in the <strong>${e}</strong> namespace.`,"cc-tcp-redirection.error.redirection-not-defined":({namespace:e})=>r`An error occured while creating a redirection in the <strong>${e}</strong> namespace.`,"cc-tcp-redirection-form.description":()=>r`
<p>
A TCP redirection allows you to route external traffic to the <code>4040</code> port of the application via the load balancers.<br>
You can create one TCP redirection per application for each namespace you have access to.
</p>
<p>
A namespace is a group of load balancers: either the default public ones, cleverapps.io or dedicated ones if you are a Clever Cloud Premium customer.
</p>
`,"cc-tcp-redirection-form.empty":"You do not have access to any namespaces.","cc-tcp-redirection-form.error":"An error occured while loading TCP redirections.","cc-tcp-redirection-form.title":"TCP Redirections","cc-tile-consumption.title":"Credits consumption","cc-tile-consumption.yesterday":"Yesterday","cc-tile-consumption.last-30-days":"Last 30 days","cc-tile-consumption.amount":({amount:e})=>h.format(e),"cc-tile-consumption.error":"Something went wrong while loading consumption info.","cc-tile-deployments.title":"Last deployments","cc-tile-deployments.state.failed":"Failed","cc-tile-deployments.state.started":"Started","cc-tile-deployments.state.cancelled":"Cancelled","cc-tile-deployments.state.stopped":"Stopped","cc-tile-deployments.empty":"No deployments yet.","cc-tile-deployments.error":"Something went wrong while loading deployments info.","cc-tile-instances.title":"Instances","cc-tile-instances.status.deploying":"Deploying","cc-tile-instances.status.running":"Running","cc-tile-instances.empty":"No instances. Your app is stopped.","cc-tile-instances.error":"Something went wrong while loading instances.","cc-tile-requests.title":"HTTP requests","cc-tile-requests.about":"About this chart...","cc-tile-requests.date-hours":({date:e})=>u(e),"cc-tile-requests.date-tooltip":({from:e,to:a})=>`${m(e)}: from ${u(e)} to ${u(a)}`,"cc-tile-requests.requests-nb":({value:e,windowHours:a})=>{const t=s("request")(e),o=s("hour")(a);return`${v.format(e)} ${t} (in ${a} ${o})`},"cc-tile-requests.requests-nb.total":({totalRequests:e})=>{const a=s("request")(e);return`${b(e)} ${a} in 24 hours`},"cc-tile-requests.requests-count":({requestCount:e})=>b(e),"cc-tile-requests.empty":"No data to display for now.","cc-tile-requests.error":"Something went wrong while loading HTTP requests.","cc-tile-requests.docs.msg":({windowHours:e})=>{const a=s("hour")(e);return r`HTTP requests received in the last 24 hours. Each bar represents a time window of <strong>${e} ${a}</strong>.`},"cc-tile-scalability.title":"Scalability","cc-tile-scalability.size":"Size","cc-tile-scalability.number":"Number","cc-tile-scalability.flavor-info":e=>f(e),"cc-tile-scalability.error":"Something went wrong while loading scalability config.","cc-tile-status-codes.title":"HTTP response codes","cc-tile-status-codes.about":"About this chart...","cc-tile-status-codes.tooltip":({value:e,percent:a})=>{const t=s("request")(e);return`${v.format(e)} ${t} (${g.format(a)})`},"cc-tile-status-codes.error":"Something went wrong while loading HTTP response codes.","cc-tile-status-codes.empty":"No data to display for now.","cc-tile-status-codes.docs.msg":"Repartition of HTTP response codes returned in the last 24 hours. Click on legend items to show/hide HTTP code categories.","cc-tile-status-codes.docs.link":()=>r`<a href="https://developer.mozilla.org/en/docs/Web/HTTP/Status">HTTP response status codes (MDN)</a>`,"cc-input-text.clipboard":"Copy to clipboard","cc-input-text.secret.show":"Show secret","cc-input-text.secret.hide":"Hide secret","cc-logsmap.mode.points":"Realtime","cc-logsmap.mode.heatmap":"Last 24h","cc-logsmap.legend.points":({orgaName:e})=>r`Realtime map of HTTP requests received by all apps from <strong>${e}</strong>.`,"cc-logsmap.legend.points.app":({appName:e})=>r`Realtime map of HTTP requests received by <strong>${e}</strong>.`,"cc-logsmap.legend.heatmap":({orgaName:e})=>r`Heatmap of HTTP requests received by all apps from <strong>${e}</strong> during the last 24 hours.`,"cc-logsmap.legend.heatmap.app":({appName:e})=>r`Heatmap of HTTP requests received by <strong>${e}</strong> during the last 24 hours.`,"cc-map.error":"Something went wrong while trying to fetch data for the map.","cc-map.no-points":"No data to display on the map right now.","env-var-create.name.placeholder":"VARIABLE_NAME","env-var-create.value.placeholder":"variable value","env-var-create.create-button":"Add","env-var-create.errors.invalid-name":({name:e})=>r`Name <code>${e}</code> is invalid`,"env-var-create.errors.already-defined-name":({name:e})=>r`Name <code>${e}</code> is already defined`,"env-var-editor-simple.empty-data":"There are no variables.","env-var-editor-expert.placeholder":'VARIABLE_NAME="variable value"',"env-var-editor-expert.placeholder-readonly":"There are no variables.","env-var-editor-expert.errors.unknown":"Unknown Error","env-var-editor-expert.errors.line":"line","env-var-editor-expert.errors.invalid-name":({name:e})=>r`<code>${e}</code> is not a valid variable name`,"env-var-editor-expert.errors.duplicated-name":({name:e})=>r`be careful, the name <code>${e}</code> is already defined`,"env-var-editor-expert.errors.invalid-line":()=>r`this line is not valid, the correct pattern is: <code>NAME="VALUE"</code>`,"env-var-editor-expert.errors.invalid-value":()=>r`the value is not valid, if you use quotes, you need to escape them like this: <code>\\"</code> or quote the whole value.`,"env-var-linked-services.description.addon":({serviceName:e,appName:a})=>r`List of variables exposed by the add-on <strong>${e}</strong>.<br>Those variables will be injected as environment variables in the application <strong>${a}</strong>.`,"env-var-linked-services.description.app":({serviceName:e,appName:a})=>r`Configuration exposed by the application <strong>${e}</strong>.<br>Those variables will be injected as environement variables in the application <strong>${a}</strong>.`,"env-var-linked-services.empty.addon":({appName:e})=>r`No add-ons linked to <strong>${e}</strong>.`,"env-var-linked-services.empty.app":({appName:e})=>r`No applications linked to <strong>${e}</strong>.`,"env-var-linked-services.error.addon":({appName:e})=>r`Something went wrong while loading add-ons linked to <strong>${e}</strong>.`,"env-var-linked-services.error.app":({appName:e})=>r`Something went wrong while loading applications linked to <strong>${e}</strong>.`,"env-var-linked-services.heading.addon":({name:e})=>`Add-on: ${e}`,"env-var-linked-services.heading.app":({name:e})=>`Application: ${e}`,"env-var-linked-services.loading.addon":({appName:e})=>r`Loading variables exposed by add-ons linked to <strong>${e}</strong>...`,"env-var-linked-services.loading.app":({appName:e})=>r`Loading configuration exposed by applications linked to <strong>${e}</strong>...`,"env-var-form.mode.simple":"Simple","env-var-form.mode.expert":"Expert","env-var-form.reset":"Reset changes","env-var-form.restart-app":"Restart the app to apply changes","env-var-form.update":"Update changes","env-var-form.error.loading":"Something went wrong while loading variables.","env-var-form.error.saving":"Something went wrong while updating variables.","env-var-form.error.unknown":"Something went wrong...","env-var-form.heading.env-var":"Environment variables","env-var-form.heading.exposed-config":"Exposed configuration","env-var-form.description.env-var":({appName:e})=>r`List of environment variables that will be injected in the application <strong>${e}</strong>. <a href="http://doc.clever-cloud.com/admin-console/environment-variables/">Learn more</a>`,"env-var-form.description.exposed-config":({appName:e})=>r`Configuration exposed to dependent applications.<br>Those variables won't be injected in the application <strong>${e}</strong>, they will be injected as environment variables in applications that have <strong>${e}</strong> in their service dependencies. <a href="https://www.clever-cloud.com/doc/admin-console/service-dependencies/">Learn more</a>`,"env-var-input.delete-button":"Remove","env-var-input.keep-button":"Keep","env-var-input.value-placeholder":"variable value"};export{c as lang,w as translations};
//# sourceMappingURL=translations.en.js.map

@@ -1,2 +0,10 @@

import{prepareFormatDate as e,prepareFormatDateOnly as a,prepareFormatDatetime as r,prepareFormatDistanceToNow as n,prepareFormatHours as t}from"../lib/i18n-date.js";import{prepareNumberUnitFormatter as s}from"../lib/i18n-number.js";import{sanitize as i}from"../lib/i18n-sanitize";export const lang="fr";function o(e,a=e+"s"){return r=>r<=1?e:a}const c={year:"année",month:"mois",week:"semaine",day:"jour",hour:"heure",minute:"minute",second:"seconde"},d=n("fr",(e,a)=>{const r=c[a];return`il y a ${e} ${r.endsWith("s")?o(r,r)(e):o(r)(e)}`},"à l'instant"),l=e("fr"),p=r("fr"),u=a("fr"),m=t("fr"),v=new Intl.NumberFormat("fr",{style:"currency",currency:"EUR"}),g=new Intl.NumberFormat("fr",{style:"percent",minimumFractionDigits:1,maximumFractionDigits:1}),h=new Intl.NumberFormat("fr"),f=s("fr");function b(e){return[`CPUs : ${e.cpus}`+(e.microservice?" (partagé)":""),e.gpus>0?`GPUs : ${e.gpus}`:"",`RAM : ${e.mem<1024?`${e.mem} Mo`:`${e.mem/1024} Go`}`].filter(e=>e).join("\n")}export const translations={LANGUAGE:"🇫🇷 Français","cc-addon-backups.command-password":"Cette commande vous demandera votre mot de passe, le voici :","cc-addon-backups.delete":({createdAt:e})=>i`Supprimer la sauvegarde du <strong title="${l(e)}">${p(e)}</strong>`,"cc-addon-backups.delete.btn":"supprimer...","cc-addon-backups.delete.with-service.title.es-addon":"Suppression avec Kibana","cc-addon-backups.delete.with-service.description.es-addon":({href:e})=>i`Vous pouvez supprimer cette sauvegarde avec Kibana en vous rendant sur le <a href="${e}">dépôt de sauvegardes</a>.`,"cc-addon-backups.delete.manual.title":"Suppression manuelle","cc-addon-backups.delete.manual.description.es-addon":"Vous pouvez supprimer cette sauvegarde manuellement grâce à l'outil cURL en exécutant cette commande :","cc-addon-backups.description.es-addon":"Les sauvegardes sont gérées par Elasticsearch lui-même. Vous pouvez définir la rétention ainsi que la périodicité des sauvegardes dans l'interface de Kibana.","cc-addon-backups.description.es-addon-old":"Les sauvegardes sont gérées par Elasticsearch lui-même. La version de votre Elasticsearch ne permet pas de définir de politique de rétention. La suppression d'une sauvegarde se fait manuellement avec l'API d'Elasticsearch.","cc-addon-backups.empty":"Il n'y a aucune sauvegarde pour l'instant.","cc-addon-backups.link.es-addon":"ouvrir dans Kibana","cc-addon-backups.link.es-addon-old":"ouvrir dans Elasticsearch","cc-addon-backups.loading-error":"Une erreur est survenue pendant le chargement des sauvegardes.","cc-addon-backups.restore":({createdAt:e})=>i`Restaurer la sauvegarde du <strong title="${l(e)}">${p(e)}</strong>`,"cc-addon-backups.restore.btn":"restaurer...","cc-addon-backups.restore.with-service.title.es-addon":"Restauration avec Kibana","cc-addon-backups.restore.with-service.description.es-addon":({href:e})=>i`Vous pouvez restaurer cette sauvegarde avec Kibana en vous rendant sur le <a href="${e}">dépôt de sauvegardes</a>.`,"cc-addon-backups.restore.manual.title":"Restauration manuelle","cc-addon-backups.restore.manual.description.es-addon":"Vous pouvez restaurer cette sauvegarde manuellement grâce à l'outil cURL en exécutant cette commande :","cc-addon-backups.text":({createdAt:e,expiresAt:a})=>i`Sauvegarde du <strong title="${l(e)}">${p(e)}</strong> (expire le <strong>${u(a)}</strong>)`,"cc-addon-backups.text.user-defined-retention":({createdAt:e})=>i`Sauvegarde du <strong title="${l(e)}">${p(e)}</strong> (expire après la durée de rétention définie)`,"cc-addon-backups.title":"Sauvegardes","cc-addon-credentials.description.apm":"Utilisez ces identifiants pour connecter une instance d'APM Server à votre cluster Elasticsearch.","cc-addon-credentials.description.elasticsearch":"Utilisez ces identifiants pour vous connecter à votre cluster Elasticsearch.","cc-addon-credentials.description.kibana":"Utilisez ces identifiants pour connecter une instance de Kibana à votre cluster Elasticsearch.","cc-addon-credentials.field.auth-token":"Token d'authentification","cc-addon-credentials.field.host":"Nom de domaine","cc-addon-credentials.field.password":"Mot de passe","cc-addon-credentials.field.user":"Utilisateur","cc-addon-credentials.loading-error":"Une erreur est survenue pendant le chargement des informations de connexion.","cc-addon-credentials.title":({name:e})=>`Identifiants ${e}`,"cc-addon-features.details":"Ci-dessous, les spécifications de votre add-on. Elles peuvent évoluer et une migration de l'add-on peut être nécessaire pour en bénéficier.","cc-addon-features.feature-name.disk":"Disque","cc-addon-features.feature-name.memory":"Mémoire","cc-addon-features.feature-name.nodes":"Nœuds","cc-addon-features.feature-value.dedicated":"Dédié","cc-addon-features.feature-value.no":"Non","cc-addon-features.feature-value.yes":"Oui","cc-addon-features.loading-error":"Une erreur est survenue pendant le chargement des spécifications de l'add-on","cc-addon-features.title":"Spécifications","cc-addon-linked-apps.details":"Ci-dessous la liste des applications liées à l'add-on. L'add-on expose ses variables d'environnement aux applications qui lui sont liées.","cc-addon-linked-apps.loading-error":"Une erreur est survenue pendant le chargement des applications liées.","cc-addon-linked-apps.no-linked-applications":"Aucune application liée pour l'instant.","cc-addon-linked-apps.title":"Applications liées","cc-addon-linked-apps.zone":"zone:","cc-beta.label":"bêta","cc-error.ok":"OK","cc-block.toggle.open":"Ouvrir","cc-block.toggle.close":"Fermer","cc-button.cancel":"Cliquez pour annuler","cc-datetime-relative.distance":({date:e})=>d(e),"cc-datetime-relative.title":({date:e})=>l(e),"cc-elasticsearch-info.error":"Une erreur est survenue pendant le chargement des liens des add-on liés à cette application.","cc-elasticsearch-info.info":"Info","cc-elasticsearch-info.link.apm":"Ouvrir APM","cc-elasticsearch-info.link.doc":"Lire la documentation","cc-elasticsearch-info.link.elasticsearch":"Voir l'add-on Elasticsearch","cc-elasticsearch-info.link.kibana":"Ouvrir Kibana","cc-elasticsearch-info.text":"Cet add-on fait partie de l'offre Suite Elastic. Vous pouvez retrouver la documentation ainsi que les différents services liés ci-dessous.","cc-elasticsearch-options.enabled":"Activé","cc-elasticsearch-options.disabled":"Désactivé","cc-elasticsearch-options.confirm":"Confirmer les options","cc-elasticsearch-options.title":"Options pour la Suite Elastic","cc-elasticsearch-options.description":()=>i`Cet add-on fait partie de l'offre Suite Elastic qui inclue deux options. Ces options sont déployées comme des applications et seront gérées et mises à jour par Clever Cloud. Elles apparaîtront donc comme des applications habituelles que vous pouvez arrêter, supprimer, scaler comme n'importe quelle autre application. <strong>Activer ces options augmentera votre consommation de crédits.</strong>`,"cc-elasticsearch-options.description.kibana":()=>i`Kibana est l'interface d'administration de la Suite Elastic. Kibana vous permet de visualiser vos données Elasticsearch et de naviguer dans la Suite Elastic. Vous voulez effectuer le suivi de la charge de travail liée à la recherche ou comprendre le flux des requêtes dans vos applications ? Kibana est là pour ça. Retrouvez plus de détails dans <a href="https://www.elastic.co/guide/en/kibana/master/index.html">la documentation officielle de Kibana</a>.`,"cc-elasticsearch-options.description.apm":()=>i`Elastic APM est un serveur de monitoring de performance applicative pour la Suite Elastic. Déployer cette option permet d'envoyer automatiquement les métriques de toute application liée à cette instance d'add-on Elasticsearch, en supposant que vous utilisez bien l'agent Elastic APM dans les dépendances de vos applications. Retrouvez plus de détails dans <a href="https://www.elastic.co/guide/en/apm/get-started/current/overview.html">la documentation officielle de APM server</a>.`,"cc-elasticsearch-options.warning.kibana":"Si vous activez cette option, nous allons déployer et gérer pour vous un Kibana, ce qui entraînera des coûts supplémentaires.","cc-elasticsearch-options.warning.kibana.details":e=>i`Par défaut, l'app sera démarrée sur une <strong title="${b(e)}">instance ${e.name}</strong> qui coûte environ <strong>${v.format(e.monthlyCost)} par mois</strong>.`,"cc-elasticsearch-options.warning.apm":"Si vous activez cette option, nous allons déployer et gérer pour vous un APM server, ce qui entraînera des coûts supplémentaires.","cc-elasticsearch-options.warning.apm.details":e=>i`Par défaut, l'app sera démarrée sur une <strong title="${b(e)}">instance ${e.name}</strong> qui coûte environ <strong>${v.format(e.monthlyCost)} par mois</strong>. `,"cc-header-addon.plan":"Plan","cc-header-addon.version":"Version","cc-header-addon.creation-date":"Date de création","cc-header-addon.creation-date.short":({date:e})=>u(e),"cc-header-addon.creation-date.full":({date:e})=>l(e),"cc-header-addon.error":"Une erreur est survenue pendant le chargement des informations de l'add-on.","cc-header-app.action.cancel-deployment":"Annuler le déploiement","cc-header-app.action.restart":"Redémarrer","cc-header-app.action.restart-last-commit":"Redémarrer le dernier commit poussé","cc-header-app.action.restart-rebuild":"Re-build et redémarrer","cc-header-app.action.start":"Démarrer","cc-header-app.action.start-last-commit":"Démarrer le dernier commit poussé","cc-header-app.action.start-rebuild":"Re-build et démarrer","cc-header-app.action.stop":"Arrêter l'application","cc-header-app.disable-buttons":"Vous n'êtes pas autorisé à réaliser ces actions","cc-header-app.read-logs":"voir les logs","cc-header-app.commits.no-commits":"pas encore de commit","cc-header-app.commits.git":({commit:e})=>`version du dépôt git (HEAD) : ${e}`,"cc-header-app.commits.running":({commit:e})=>`version en ligne : ${e}`,"cc-header-app.commits.starting":({commit:e})=>`version en cours de déploiement : ${e}`,"cc-header-app.state-msg.app-is-restarting":"L'application redémarre...","cc-header-app.state-msg.app-is-running":"Votre application est disponible !","cc-header-app.state-msg.app-is-starting":"L'application démarre...","cc-header-app.state-msg.app-is-stopped":"L'application est arrêtée.","cc-header-app.state-msg.last-deploy-failed":"Le dernier déploiement a échoué,","cc-header-app.state-msg.unknown-state":"État inconnu, essayez de redémarrer l'application ou de contacter notre support si vous avez des questions.","cc-header-app.user-action-msg.app-will-start":"L'application va bientôt démarrer...","cc-header-app.user-action-msg.deploy-will-begin":"Un déploiement va bientôt commencer...","cc-header-app.user-action-msg.deploy-cancelled":"Ce déploiement a été annulé.","cc-header-app.user-action-msg.app-will-stop":"L'application va s'arrêter...","cc-header-app.error":"Une erreur est survenue pendant le chargement des informations de l'application.","cc-header-orga.hotline":"Numéro d'urgence :","cc-header-orga.error":"Une erreur est survenue pendant le chargement des informations de l'organisation.","cc-addon-admin.addon-name":"Nom de l'add-on","cc-addon-admin.admin":"Administration","cc-addon-admin.danger-zone":"Zone de danger","cc-addon-admin.delete":"Supprimer l'add-on","cc-addon-admin.delete-24h-delay":"La machine virtuelle sera arrêtée dans 24 heures.","cc-addon-admin.delete-keep-backups":"Les backups seront gardés suivant la politique de rétention.","cc-addon-admin.delete-unavailable":"Supprimer cet add-on le rendra directement indisponible.","cc-addon-admin.error-loading":"Une erreur est survenue pendant le chargement des informations de l'add-on.","cc-addon-admin.error-saving":"Une erreur est survenue pendant la sauvegarde des modifications","cc-addon-admin.tags":"Tags","cc-addon-admin.tags-description":"Les tags vous permettent de classer vos applications et add-ons afin de les catégoriser","cc-addon-admin.tags-empty":"Pas de tags définis","cc-addon-admin.tags-update":"Mettre à jour les tags","cc-addon-admin.update":"Mettre à jour le nom","cc-tile-consumption.title":"Consommation de crédits","cc-tile-consumption.yesterday":"Hier","cc-tile-consumption.last-30-days":"30 derniers jours","cc-tile-consumption.amount":({amount:e})=>v.format(e),"cc-tile-consumption.error":"Une erreur est survenue pendant le chargement de la consommation.","cc-tile-deployments.title":"Derniers déploiements","cc-tile-deployments.state.failed":"Échoué","cc-tile-deployments.state.started":"Démarré","cc-tile-deployments.state.cancelled":"Annulé","cc-tile-deployments.state.stopped":"Arrêté","cc-tile-deployments.empty":"Pas encore de déploiement.","cc-tile-deployments.error":"Une erreur est survenue pendant le chargement des déploiements.","cc-tile-instances.title":"Instances","cc-tile-instances.status.deploying":"Déploiement","cc-tile-instances.status.running":"En ligne","cc-tile-instances.empty":"Pas d'instance. L'application est arrêtée.","cc-tile-instances.error":"Une erreur est survenue pendant le chargement des instances.","cc-tile-requests.title":"Requêtes HTTP","cc-tile-requests.about":"À propos de ce graphe...","cc-tile-requests.date-hours":({date:e})=>m(e),"cc-tile-requests.date-tooltip":({from:e,to:a})=>`${u(e)} : de ${m(e)} à ${m(a)}`,"cc-tile-requests.requests-nb":({value:e,windowHours:a})=>{const r=o("requête")(e),n=o("heure")(a);return`${h.format(e)} ${r} (en ${a} ${n})`},"cc-tile-requests.requests-nb.total":({totalRequests:e})=>{const a=o("requête")(e);return`${f(e)} ${a} sur 24 heures`},"cc-tile-requests.requests-count":({requestCount:e})=>f(e),"cc-tile-requests.empty":"Il n'y a pas de données à afficher pour l'instant.","cc-tile-requests.error":"Une erreur est survenue pendant le chargement des requêtes.","cc-tile-requests.docs.msg":({windowHours:e})=>{const a=o("heure")(e);return i`Requêtes HTTP reçues durant les dernières 24 heures. Chaque barre représente une fenêtre de temps de <strong>${e} ${a}</strong>.`},"cc-tile-scalability.title":"Scalabilité","cc-tile-scalability.size":"Taille","cc-tile-scalability.number":"Nombre","cc-tile-scalability.flavor-info":e=>b(e),"cc-tile-scalability.error":"Une erreur est survenue pendant le chargement de la configuration de scalabilité.","cc-tile-status-codes.title":"Codes de réponses HTTP","cc-tile-status-codes.about":"À propos de ce graphe...","cc-tile-status-codes.tooltip":({value:e,percent:a})=>{const r=o("requête")(e);return`${h.format(e)} ${r} (${g.format(a)})`},"cc-tile-status-codes.error":"Une erreur est survenue pendant le chargement des codes de réponses HTTP.","cc-tile-status-codes.empty":"Il n'y a pas de données à afficher pour l'instant.","cc-tile-status-codes.docs.msg":"Répartition des codes de réponses HTTP envoyés durant les dernières 24 heures. Cliquez sur les éléments de légende pour cacher/montrer certaines catégories de codes.","cc-tile-status-codes.docs.link":()=>i`<a href="https://developer.mozilla.org/fr/docs/Web/HTTP/Status">Codes de réponses HTTP (MDN)</a>`,"cc-input-text.clipboard":"Copier dans le presse-papier","cc-input-text.secret.show":"Afficher le secret","cc-input-text.secret.hide":"Cacher le secret","cc-logsmap.mode.points":"En direct","cc-logsmap.mode.heatmap":"Dernières 24h","cc-logsmap.legend.points":({orgaName:e})=>i`Carte temps réel des requêtes HTTP reçues par toutes les applications de <strong>${e}</strong>.`,"cc-logsmap.legend.points.app":({appName:e})=>i`Carte temps réel des requêtes HTTP reçues par l'application <strong>${e}</strong>.`,"cc-logsmap.legend.heatmap":({orgaName:e})=>i`Carte de chaleur des requêtes HTTP reçues par les applications de <strong>${e}</strong> durant les dernières 24 heures.`,"cc-logsmap.legend.heatmap.app":({appName:e})=>i`Carte de chaleur des requêtes HTTP reçues par l'application <strong>${e}</strong> durant les dernières 24 heures.`,"cc-map.error":"Une erreur est survenue pendant le chargement des données de la carte.","cc-map.no-points":"Pas de données à afficher sur la carte en ce moment.","env-var-create.name.placeholder":"NOM_DE_LA_VARIABLE","env-var-create.value.placeholder":"valeur de la variable","env-var-create.create-button":"Ajouter","env-var-create.errors.invalid-name":({name:e})=>i`Le nom <code>${e}</code> n'est pas valide`,"env-var-create.errors.already-defined-name":({name:e})=>i`Le nom <code>${e}</code> est déjà défini`,"env-var-editor-simple.empty-data":"Il n'y a pas de variable.","env-var-editor-expert.placeholder":'NOM_DE_LA_VARIABLE="valeur de la variable"',"env-var-editor-expert.placeholder-readonly":"Il n'y a pas de variable.","env-var-editor-expert.errors.unknown":"Erreur inconnue","env-var-editor-expert.errors.line":"ligne","env-var-editor-expert.errors.invalid-name":({name:e})=>i`Le nom <code>${e}</code> n'est pas valide`,"env-var-editor-expert.errors.duplicated-name":({name:e})=>i`attention, le nom <code>${e}</code> est déjà défini`,"env-var-editor-expert.errors.invalid-line":()=>i`cette ligne est invalide, le format correct est : <code>NOM="VALEUR"</code>`,"env-var-editor-expert.errors.invalid-value":()=>i`la valeur est invalide, si vous utilisez des guillements, vous devez les échapper comme ceci : <code>\\"</code> ou alors mettre toute la valeur entre guillemets.`,"env-var-linked-services.description.addon":({serviceName:e,appName:a})=>i`Liste des variables exposées par l'add-on <strong>${e}</strong>.<br>Ces variables seront injectées en tant que variables d'environnement dans l'application <strong>${a}</strong>.`,"env-var-linked-services.description.app":({serviceName:e,appName:a})=>i`Configuration publiée par l'application <strong>${e}</strong>.<br>Ces variables seront injectées en tant que variables d'environnement dans l'application <strong>${a}</strong>.`,"env-var-linked-services.empty.addon":({appName:e})=>i`Aucun add-on lié à <strong>${e}</strong>.`,"env-var-linked-services.empty.app":({appName:e})=>i`Aucune application liée à <strong>${e}</strong>.`,"env-var-linked-services.error.addon":({appName:e})=>i`Une erreur est survenue pendant le chargement des add-ons liés à <strong>${e}</strong>.`,"env-var-linked-services.error.app":({appName:e})=>i`Une erreur est survenue pendant le chargement des applications liées à <strong>${e}</strong>.`,"env-var-linked-services.heading.addon":({name:e})=>`Add-on : ${e}`,"env-var-linked-services.heading.app":({name:e})=>`Application : ${e}`,"env-var-linked-services.loading.addon":({appName:e})=>i`Chargement des variables exposées par les add-ons liés à <strong>${e}</strong>...`,"env-var-linked-services.loading.app":({appName:e})=>i`Chargement de la configuration publiée par les applications liées à <strong>${e}</strong>...`,"env-var-form.mode.simple":"Simple","env-var-form.mode.expert":"Expert","env-var-form.reset":"Annuler les changements","env-var-form.restart-app":"Redémarrer l'app pour appliquer les changements","env-var-form.update":"Mettre à jour les changements","env-var-form.error.loading":"Une erreur est survenue pendant le chargement des variables.","env-var-form.error.saving":"Une erreur est survenue pendant la mise à jour des variables.","env-var-form.error.unknown":"Une erreur est survenue...","env-var-form.heading.env-var":"Variables d'environnement","env-var-form.heading.exposed-config":"Configuration publiée","env-var-form.description.env-var":({appName:e})=>i`Liste des variables d'environnement qui seront injectées dans l'application <strong>${e}</strong>. <a href="http://doc.clever-cloud.com/admin-console/environment-variables/">En savoir plus</a>`,"env-var-form.description.exposed-config":({appName:e})=>i`Configuration publiée pour les applications dépendantes.<br>Ces variables ne seront pas injectées dans l'application <strong>${e}</strong>, elles seront injectées en tant que variables d'environnement dans les applications qui ont <strong>${e}</strong> dans leurs services liés. <a href="https://www.clever-cloud.com/doc/admin-console/service-dependencies/">En savoir plus</a>`,"env-var-input.delete-button":"Enlever","env-var-input.keep-button":"Garder","env-var-input.value-placeholder":"valeur de la variable"};
//# sourceMappingURL=translations.fr.js.map
import{prepareFormatDistanceToNow as e,prepareFormatDate as a,prepareFormatDatetime as r,prepareFormatDateOnly as n,prepareFormatHours as t}from"../lib/i18n-date.js";import{prepareNumberUnitFormatter as s}from"../lib/i18n-number.js";import{sanitize as i}from"../lib/i18n-sanitize.js";const c="fr";function o(e,a=e+"s"){return r=>r<=1?e:a}const d={year:"année",month:"mois",week:"semaine",day:"jour",hour:"heure",minute:"minute",second:"seconde"},l=e("fr",(e,a)=>{const r=d[a];return`il y a ${e} ${r.endsWith("s")?o(r,r)(e):o(r)(e)}`},"à l'instant"),p=a("fr"),u=r("fr"),m=n("fr"),v=t("fr"),g=new Intl.NumberFormat("fr",{style:"currency",currency:"EUR"}),h=new Intl.NumberFormat("fr",{style:"percent",minimumFractionDigits:1,maximumFractionDigits:1}),f=new Intl.NumberFormat("fr"),b=s("fr");function $(e){return[`CPUs : ${e.cpus}`+(e.microservice?" (partagé)":""),e.gpus>0?`GPUs : ${e.gpus}`:"",`RAM : ${e.mem<1024?`${e.mem} Mo`:`${e.mem/1024} Go`}`].filter(e=>e).join("\n")}const k={LANGUAGE:"🇫🇷 Français","cc-addon-backups.command-password":"Cette commande vous demandera votre mot de passe, le voici :","cc-addon-backups.delete":({createdAt:e})=>i`Supprimer la sauvegarde du <strong title="${p(e)}">${u(e)}</strong>`,"cc-addon-backups.delete.btn":"supprimer...","cc-addon-backups.delete.with-service.title.es-addon":"Suppression avec Kibana","cc-addon-backups.delete.with-service.description.es-addon":({href:e})=>i`Vous pouvez supprimer cette sauvegarde avec Kibana en vous rendant sur le <a href="${e}">dépôt de sauvegardes</a>.`,"cc-addon-backups.delete.manual.title":"Suppression manuelle","cc-addon-backups.delete.manual.description.es-addon":"Vous pouvez supprimer cette sauvegarde manuellement grâce à l'outil cURL en exécutant cette commande :","cc-addon-backups.description.es-addon":"Les sauvegardes sont gérées par Elasticsearch lui-même. Vous pouvez définir la rétention ainsi que la périodicité des sauvegardes dans l'interface de Kibana.","cc-addon-backups.description.es-addon-old":"Les sauvegardes sont gérées par Elasticsearch lui-même. La version de votre Elasticsearch ne permet pas de définir de politique de rétention. La suppression d'une sauvegarde se fait manuellement avec l'API d'Elasticsearch.","cc-addon-backups.empty":"Il n'y a aucune sauvegarde pour l'instant.","cc-addon-backups.link.es-addon":"ouvrir dans Kibana","cc-addon-backups.link.es-addon-old":"ouvrir dans Elasticsearch","cc-addon-backups.loading-error":"Une erreur est survenue pendant le chargement des sauvegardes.","cc-addon-backups.restore":({createdAt:e})=>i`Restaurer la sauvegarde du <strong title="${p(e)}">${u(e)}</strong>`,"cc-addon-backups.restore.btn":"restaurer...","cc-addon-backups.restore.with-service.title.es-addon":"Restauration avec Kibana","cc-addon-backups.restore.with-service.description.es-addon":({href:e})=>i`Vous pouvez restaurer cette sauvegarde avec Kibana en vous rendant sur le <a href="${e}">dépôt de sauvegardes</a>.`,"cc-addon-backups.restore.manual.title":"Restauration manuelle","cc-addon-backups.restore.manual.description.es-addon":"Vous pouvez restaurer cette sauvegarde manuellement grâce à l'outil cURL en exécutant cette commande :","cc-addon-backups.text":({createdAt:e,expiresAt:a})=>i`Sauvegarde du <strong title="${p(e)}">${u(e)}</strong> (expire le <strong>${m(a)}</strong>)`,"cc-addon-backups.text.user-defined-retention":({createdAt:e})=>i`Sauvegarde du <strong title="${p(e)}">${u(e)}</strong> (expire après la durée de rétention définie)`,"cc-addon-backups.title":"Sauvegardes","cc-addon-credentials.description.apm":"Utilisez ces identifiants pour connecter une instance d'APM Server à votre cluster Elasticsearch.","cc-addon-credentials.description.elasticsearch":"Utilisez ces identifiants pour vous connecter à votre cluster Elasticsearch.","cc-addon-credentials.description.kibana":"Utilisez ces identifiants pour connecter une instance de Kibana à votre cluster Elasticsearch.","cc-addon-credentials.field.auth-token":"Token d'authentification","cc-addon-credentials.field.host":"Nom de domaine","cc-addon-credentials.field.password":"Mot de passe","cc-addon-credentials.field.user":"Utilisateur","cc-addon-credentials.loading-error":"Une erreur est survenue pendant le chargement des informations de connexion.","cc-addon-credentials.title":({name:e})=>`Identifiants ${e}`,"cc-addon-features.details":"Ci-dessous, les spécifications de votre add-on. Elles peuvent évoluer et une migration de l'add-on peut être nécessaire pour en bénéficier.","cc-addon-features.feature-name.disk":"Disque","cc-addon-features.feature-name.memory":"Mémoire","cc-addon-features.feature-name.nodes":"Nœuds","cc-addon-features.feature-value.dedicated":"Dédié","cc-addon-features.feature-value.no":"Non","cc-addon-features.feature-value.yes":"Oui","cc-addon-features.loading-error":"Une erreur est survenue pendant le chargement des spécifications de l'add-on","cc-addon-features.title":"Spécifications","cc-addon-linked-apps.details":"Ci-dessous la liste des applications liées à l'add-on. L'add-on expose ses variables d'environnement aux applications qui lui sont liées.","cc-addon-linked-apps.loading-error":"Une erreur est survenue pendant le chargement des applications liées.","cc-addon-linked-apps.no-linked-applications":"Aucune application liée pour l'instant.","cc-addon-linked-apps.title":"Applications liées","cc-addon-linked-apps.zone":"zone:","cc-beta.label":"bêta","cc-error.ok":"OK","cc-block.toggle.open":"Ouvrir","cc-block.toggle.close":"Fermer","cc-button.cancel":"Cliquez pour annuler","cc-datetime-relative.distance":({date:e})=>l(e),"cc-datetime-relative.title":({date:e})=>p(e),"cc-elasticsearch-info.error":"Une erreur est survenue pendant le chargement des liens des add-on liés à cette application.","cc-elasticsearch-info.info":"Info","cc-elasticsearch-info.link.apm":"Ouvrir APM","cc-elasticsearch-info.link.doc":"Lire la documentation","cc-elasticsearch-info.link.elasticsearch":"Voir l'add-on Elasticsearch","cc-elasticsearch-info.link.kibana":"Ouvrir Kibana","cc-elasticsearch-info.text":"Cet add-on fait partie de l'offre Suite Elastic. Vous pouvez retrouver la documentation ainsi que les différents services liés ci-dessous.","cc-elasticsearch-options.enabled":"Activé","cc-elasticsearch-options.disabled":"Désactivé","cc-elasticsearch-options.confirm":"Confirmer les options","cc-elasticsearch-options.title":"Options pour la Suite Elastic","cc-elasticsearch-options.description":()=>i`Cet add-on fait partie de l'offre Suite Elastic qui inclue deux options. Ces options sont déployées comme des applications et seront gérées et mises à jour par Clever Cloud. Elles apparaîtront donc comme des applications habituelles que vous pouvez arrêter, supprimer, scaler comme n'importe quelle autre application. <strong>Activer ces options augmentera votre consommation de crédits.</strong>`,"cc-elasticsearch-options.description.kibana":()=>i`Kibana est l'interface d'administration de la Suite Elastic. Kibana vous permet de visualiser vos données Elasticsearch et de naviguer dans la Suite Elastic. Vous voulez effectuer le suivi de la charge de travail liée à la recherche ou comprendre le flux des requêtes dans vos applications ? Kibana est là pour ça. Retrouvez plus de détails dans <a href="https://www.elastic.co/guide/en/kibana/master/index.html">la documentation officielle de Kibana</a>.`,"cc-elasticsearch-options.description.apm":()=>i`Elastic APM est un serveur de monitoring de performance applicative pour la Suite Elastic. Déployer cette option permet d'envoyer automatiquement les métriques de toute application liée à cette instance d'add-on Elasticsearch, en supposant que vous utilisez bien l'agent Elastic APM dans les dépendances de vos applications. Retrouvez plus de détails dans <a href="https://www.elastic.co/guide/en/apm/get-started/current/overview.html">la documentation officielle de APM server</a>.`,"cc-elasticsearch-options.warning.kibana":"Si vous activez cette option, nous allons déployer et gérer pour vous un Kibana, ce qui entraînera des coûts supplémentaires.","cc-elasticsearch-options.warning.kibana.details":e=>i`Par défaut, l'app sera démarrée sur une <strong title="${$(e)}">instance ${e.name}</strong> qui coûte environ <strong>${g.format(e.monthlyCost)} par mois</strong>.`,"cc-elasticsearch-options.warning.apm":"Si vous activez cette option, nous allons déployer et gérer pour vous un APM server, ce qui entraînera des coûts supplémentaires.","cc-elasticsearch-options.warning.apm.details":e=>i`Par défaut, l'app sera démarrée sur une <strong title="${$(e)}">instance ${e.name}</strong> qui coûte environ <strong>${g.format(e.monthlyCost)} par mois</strong>. `,"cc-header-addon.plan":"Plan","cc-header-addon.version":"Version","cc-header-addon.creation-date":"Date de création","cc-header-addon.creation-date.short":({date:e})=>m(e),"cc-header-addon.creation-date.full":({date:e})=>p(e),"cc-header-addon.error":"Une erreur est survenue pendant le chargement des informations de l'add-on.","cc-header-app.action.cancel-deployment":"Annuler le déploiement","cc-header-app.action.restart":"Redémarrer","cc-header-app.action.restart-last-commit":"Redémarrer le dernier commit poussé","cc-header-app.action.restart-rebuild":"Re-build et redémarrer","cc-header-app.action.start":"Démarrer","cc-header-app.action.start-last-commit":"Démarrer le dernier commit poussé","cc-header-app.action.start-rebuild":"Re-build et démarrer","cc-header-app.action.stop":"Arrêter l'application","cc-header-app.disable-buttons":"Vous n'êtes pas autorisé à réaliser ces actions","cc-header-app.read-logs":"voir les logs","cc-header-app.commits.no-commits":"pas encore de commit","cc-header-app.commits.git":({commit:e})=>`version du dépôt git (HEAD) : ${e}`,"cc-header-app.commits.running":({commit:e})=>`version en ligne : ${e}`,"cc-header-app.commits.starting":({commit:e})=>`version en cours de déploiement : ${e}`,"cc-header-app.state-msg.app-is-restarting":"L'application redémarre...","cc-header-app.state-msg.app-is-running":"Votre application est disponible !","cc-header-app.state-msg.app-is-starting":"L'application démarre...","cc-header-app.state-msg.app-is-stopped":"L'application est arrêtée.","cc-header-app.state-msg.last-deploy-failed":"Le dernier déploiement a échoué,","cc-header-app.state-msg.unknown-state":"État inconnu, essayez de redémarrer l'application ou de contacter notre support si vous avez des questions.","cc-header-app.user-action-msg.app-will-start":"L'application va bientôt démarrer...","cc-header-app.user-action-msg.deploy-will-begin":"Un déploiement va bientôt commencer...","cc-header-app.user-action-msg.deploy-cancelled":"Ce déploiement a été annulé.","cc-header-app.user-action-msg.app-will-stop":"L'application va s'arrêter...","cc-header-app.error":"Une erreur est survenue pendant le chargement des informations de l'application.","cc-header-orga.hotline":"Numéro d'urgence :","cc-header-orga.error":"Une erreur est survenue pendant le chargement des informations de l'organisation.","cc-addon-admin.addon-name":"Nom de l'add-on","cc-addon-admin.admin":"Administration","cc-addon-admin.danger-zone":"Zone de danger","cc-addon-admin.delete":"Supprimer l'add-on","cc-addon-admin.delete-description":()=>i`La machine virtuelle sera arrêtée dans 24 heures.<br>Les backups seront gardés suivant la politique de rétention.<br>Supprimer cet add-on le rendra directement indisponible.`,"cc-addon-admin.error-loading":"Une erreur est survenue pendant le chargement des informations de l'add-on.","cc-addon-admin.error-saving":"Une erreur est survenue pendant la sauvegarde des modifications","cc-addon-admin.tags":"Tags","cc-addon-admin.tags-description":"Les tags vous permettent de classer vos applications et add-ons afin de les catégoriser","cc-addon-admin.tags-empty":"Pas de tags définis","cc-addon-admin.tags-update":"Mettre à jour les tags","cc-addon-admin.update":"Mettre à jour le nom","cc-tcp-redirection.create-button":"Créer","cc-tcp-redirection.delete-button":"Supprimer","cc-tcp-redirection.retry-button":"Réessayer","cc-tcp-redirection.namespace-additionaldescription-cleverapps":()=>i`Cet espace de nommage est utilisé par tous les noms de domaine <em>cleverapps.io</em> (p. ex. <em>mon-application.cleverapps.io</em>).`,"cc-tcp-redirection.namespace-additionaldescription-default":()=>i`Cet espace de nommage est utilisé par tous les noms de domaine personnalisés (p. ex. <em>mon-application.fr</em>).`,"cc-tcp-redirection.namespace-private":"Cet espace de nommage vous est dédié.","cc-tcp-redirection.redirection-defined":({namespace:e,sourcePort:a})=>i`Cette application a une redirection du port <code>${a}</code> vers le port <code>4040</code> dans l'espace de nommage <strong>${e}</strong>.`,"cc-tcp-redirection.redirection-not-defined":({namespace:e})=>i`Vous pouvez créer une redirection dans l'espace de nommage <strong>${e}</strong>.`,"cc-tcp-redirection.error.redirection-defined":({namespace:e,sourcePort:a})=>i`Une erreur est survenue pendant la suppression de la redirection du port <code>${a}</code> vers le port <code>4040</code> dans l'espace de nommage <strong>${e}</strong>.`,"cc-tcp-redirection.error.redirection-not-defined":({namespace:e})=>i`Une erreur est survenue pendant la création d'une redirection dans l'espace de nommage <strong>${e}</strong>.`,"cc-tcp-redirection-form.description":()=>i`
<p>
Une redirection TCP permet d'obtenir un accès au port <code>4040</code> de l'application au travers des frontaux.<br>
Vous pouvez créer une redirection TCP par application sur chaque espace de nommage auquel vous avez accès.
</p>
<p>
Un espace de nommage correspond à un groupe de frontaux : public, cleverapps.io ou encore dédiés dans le cadre de Clever Cloud Premium.
</p>
`,"cc-tcp-redirection-form.empty":"Vous n'avez accès à aucun espace de nommage.","cc-tcp-redirection-form.error":"Une erreur est survenue pendant le chargement des redirections TCP.","cc-tcp-redirection-form.title":"Redirections TCP","cc-tile-consumption.title":"Consommation de crédits","cc-tile-consumption.yesterday":"Hier","cc-tile-consumption.last-30-days":"30 derniers jours","cc-tile-consumption.amount":({amount:e})=>g.format(e),"cc-tile-consumption.error":"Une erreur est survenue pendant le chargement de la consommation.","cc-tile-deployments.title":"Derniers déploiements","cc-tile-deployments.state.failed":"Échoué","cc-tile-deployments.state.started":"Démarré","cc-tile-deployments.state.cancelled":"Annulé","cc-tile-deployments.state.stopped":"Arrêté","cc-tile-deployments.empty":"Pas encore de déploiement.","cc-tile-deployments.error":"Une erreur est survenue pendant le chargement des déploiements.","cc-tile-instances.title":"Instances","cc-tile-instances.status.deploying":"Déploiement","cc-tile-instances.status.running":"En ligne","cc-tile-instances.empty":"Pas d'instance. L'application est arrêtée.","cc-tile-instances.error":"Une erreur est survenue pendant le chargement des instances.","cc-tile-requests.title":"Requêtes HTTP","cc-tile-requests.about":"À propos de ce graphe...","cc-tile-requests.date-hours":({date:e})=>v(e),"cc-tile-requests.date-tooltip":({from:e,to:a})=>`${m(e)} : de ${v(e)} à ${v(a)}`,"cc-tile-requests.requests-nb":({value:e,windowHours:a})=>{const r=o("requête")(e),n=o("heure")(a);return`${f.format(e)} ${r} (en ${a} ${n})`},"cc-tile-requests.requests-nb.total":({totalRequests:e})=>{const a=o("requête")(e);return`${b(e)} ${a} sur 24 heures`},"cc-tile-requests.requests-count":({requestCount:e})=>b(e),"cc-tile-requests.empty":"Il n'y a pas de données à afficher pour l'instant.","cc-tile-requests.error":"Une erreur est survenue pendant le chargement des requêtes.","cc-tile-requests.docs.msg":({windowHours:e})=>{const a=o("heure")(e);return i`Requêtes HTTP reçues durant les dernières 24 heures. Chaque barre représente une fenêtre de temps de <strong>${e} ${a}</strong>.`},"cc-tile-scalability.title":"Scalabilité","cc-tile-scalability.size":"Taille","cc-tile-scalability.number":"Nombre","cc-tile-scalability.flavor-info":e=>$(e),"cc-tile-scalability.error":"Une erreur est survenue pendant le chargement de la configuration de scalabilité.","cc-tile-status-codes.title":"Codes de réponses HTTP","cc-tile-status-codes.about":"À propos de ce graphe...","cc-tile-status-codes.tooltip":({value:e,percent:a})=>{const r=o("requête")(e);return`${f.format(e)} ${r} (${h.format(a)})`},"cc-tile-status-codes.error":"Une erreur est survenue pendant le chargement des codes de réponses HTTP.","cc-tile-status-codes.empty":"Il n'y a pas de données à afficher pour l'instant.","cc-tile-status-codes.docs.msg":"Répartition des codes de réponses HTTP envoyés durant les dernières 24 heures. Cliquez sur les éléments de légende pour cacher/montrer certaines catégories de codes.","cc-tile-status-codes.docs.link":()=>i`<a href="https://developer.mozilla.org/fr/docs/Web/HTTP/Status">Codes de réponses HTTP (MDN)</a>`,"cc-input-text.clipboard":"Copier dans le presse-papier","cc-input-text.secret.show":"Afficher le secret","cc-input-text.secret.hide":"Cacher le secret","cc-logsmap.mode.points":"En direct","cc-logsmap.mode.heatmap":"Dernières 24h","cc-logsmap.legend.points":({orgaName:e})=>i`Carte temps réel des requêtes HTTP reçues par toutes les applications de <strong>${e}</strong>.`,"cc-logsmap.legend.points.app":({appName:e})=>i`Carte temps réel des requêtes HTTP reçues par l'application <strong>${e}</strong>.`,"cc-logsmap.legend.heatmap":({orgaName:e})=>i`Carte de chaleur des requêtes HTTP reçues par les applications de <strong>${e}</strong> durant les dernières 24 heures.`,"cc-logsmap.legend.heatmap.app":({appName:e})=>i`Carte de chaleur des requêtes HTTP reçues par l'application <strong>${e}</strong> durant les dernières 24 heures.`,"cc-map.error":"Une erreur est survenue pendant le chargement des données de la carte.","cc-map.no-points":"Pas de données à afficher sur la carte en ce moment.","env-var-create.name.placeholder":"NOM_DE_LA_VARIABLE","env-var-create.value.placeholder":"valeur de la variable","env-var-create.create-button":"Ajouter","env-var-create.errors.invalid-name":({name:e})=>i`Le nom <code>${e}</code> n'est pas valide`,"env-var-create.errors.already-defined-name":({name:e})=>i`Le nom <code>${e}</code> est déjà défini`,"env-var-editor-simple.empty-data":"Il n'y a pas de variable.","env-var-editor-expert.placeholder":'NOM_DE_LA_VARIABLE="valeur de la variable"',"env-var-editor-expert.placeholder-readonly":"Il n'y a pas de variable.","env-var-editor-expert.errors.unknown":"Erreur inconnue","env-var-editor-expert.errors.line":"ligne","env-var-editor-expert.errors.invalid-name":({name:e})=>i`Le nom <code>${e}</code> n'est pas valide`,"env-var-editor-expert.errors.duplicated-name":({name:e})=>i`attention, le nom <code>${e}</code> est déjà défini`,"env-var-editor-expert.errors.invalid-line":()=>i`cette ligne est invalide, le format correct est : <code>NOM="VALEUR"</code>`,"env-var-editor-expert.errors.invalid-value":()=>i`la valeur est invalide, si vous utilisez des guillements, vous devez les échapper comme ceci : <code>\\"</code> ou alors mettre toute la valeur entre guillemets.`,"env-var-linked-services.description.addon":({serviceName:e,appName:a})=>i`Liste des variables exposées par l'add-on <strong>${e}</strong>.<br>Ces variables seront injectées en tant que variables d'environnement dans l'application <strong>${a}</strong>.`,"env-var-linked-services.description.app":({serviceName:e,appName:a})=>i`Configuration publiée par l'application <strong>${e}</strong>.<br>Ces variables seront injectées en tant que variables d'environnement dans l'application <strong>${a}</strong>.`,"env-var-linked-services.empty.addon":({appName:e})=>i`Aucun add-on lié à <strong>${e}</strong>.`,"env-var-linked-services.empty.app":({appName:e})=>i`Aucune application liée à <strong>${e}</strong>.`,"env-var-linked-services.error.addon":({appName:e})=>i`Une erreur est survenue pendant le chargement des add-ons liés à <strong>${e}</strong>.`,"env-var-linked-services.error.app":({appName:e})=>i`Une erreur est survenue pendant le chargement des applications liées à <strong>${e}</strong>.`,"env-var-linked-services.heading.addon":({name:e})=>`Add-on : ${e}`,"env-var-linked-services.heading.app":({name:e})=>`Application : ${e}`,"env-var-linked-services.loading.addon":({appName:e})=>i`Chargement des variables exposées par les add-ons liés à <strong>${e}</strong>...`,"env-var-linked-services.loading.app":({appName:e})=>i`Chargement de la configuration publiée par les applications liées à <strong>${e}</strong>...`,"env-var-form.mode.simple":"Simple","env-var-form.mode.expert":"Expert","env-var-form.reset":"Annuler les changements","env-var-form.restart-app":"Redémarrer l'app pour appliquer les changements","env-var-form.update":"Mettre à jour les changements","env-var-form.error.loading":"Une erreur est survenue pendant le chargement des variables.","env-var-form.error.saving":"Une erreur est survenue pendant la mise à jour des variables.","env-var-form.error.unknown":"Une erreur est survenue...","env-var-form.heading.env-var":"Variables d'environnement","env-var-form.heading.exposed-config":"Configuration publiée","env-var-form.description.env-var":({appName:e})=>i`Liste des variables d'environnement qui seront injectées dans l'application <strong>${e}</strong>. <a href="http://doc.clever-cloud.com/admin-console/environment-variables/">En savoir plus</a>`,"env-var-form.description.exposed-config":({appName:e})=>i`Configuration publiée pour les applications dépendantes.<br>Ces variables ne seront pas injectées dans l'application <strong>${e}</strong>, elles seront injectées en tant que variables d'environnement dans les applications qui ont <strong>${e}</strong> dans leurs services liés. <a href="https://www.clever-cloud.com/doc/admin-console/service-dependencies/">En savoir plus</a>`,"env-var-input.delete-button":"Enlever","env-var-input.keep-button":"Garder","env-var-input.value-placeholder":"valeur de la variable"};export{c as lang,k as translations};
//# sourceMappingURL=translations.fr.js.map
{
"name": "@clevercloud/components",
"version": "3.0.2",
"version": "4.0.0-beta.0",
"description": "This is a Work In Progress to introduce Web Components in our Clever Cloud Web based UIs.",

@@ -15,19 +15,19 @@ "license": "Apache-2.0",

"scripts": {
"components:build": "node tasks/minify-components.js",
"components:build": "rollup -c rollup-npm.config.js",
"components:check-i18n": "node tasks/check-i18n.js",
"components:docs": "wca analyze components/** --format markdown --outDir .components-docs",
"components:docs-json": "wca analyze components/** --outFile .components-docs/custom-elements.json ",
"components:check-lit": "lit-analyzer src",
"components:docs": "npm run components:docs-md && npm run components:docs-json",
"components:docs-md": "wca analyze src/** --format markdown --outDir .components-docs",
"components:docs-json": "wca analyze src/** --outFile .components-docs/custom-elements.json",
"cypress": "cypress open",
"lint": "eslint components stories tasks",
"lint:fix": "eslint --fix components stories tasks",
"prepack": "npm run lint && npm run components:check-i18n && npm run components:build",
"prestorybook:dev": "npm run components:docs && npm run components:docs-json",
"size": "node tasks/size.js",
"size:dev": "nodemon -w components -x 'npm run components:build && npm run size'",
"lint": "eslint rollup*.js src stories tasks",
"lint:fix": "eslint --fix rollup*.js src stories tasks",
"prepack": "npm run lint && npm run components:check-lit && npm run components:check-i18n && npm run components:build",
"prestorybook:dev": "npm run components:docs",
"start": "static -H '{\"cache-control\": \"no-cache, no-store, must-revalidate\", \"Pragma\": \"no-cache\", \"Expires\": \"0\"}' -a 0.0.0.0 -p 8080 storybook-static",
"storybook:build": "npm run components:docs && npm run components:docs-json && build-storybook -o storybook-static${STORYBOOK_PATH}",
"storybook:build": "npm run components:docs && build-storybook -o storybook-static${STORYBOOK_PATH}",
"storybook:dev": "start-storybook -p 6006 --ci"
},
"dependencies": {
"@clevercloud/client": "^5.0.1",
"@clevercloud/client": "^5.1.0",
"chart.js": "^2.9.3",

@@ -38,48 +38,53 @@ "chartjs-plugin-datalabels": "^0.7.0",

"leaflet.heat": "^0.2.0",
"lit-element": "^2.2.1",
"lit-html": "^1.1.2",
"lit-element": "^2.3.1",
"lit-html": "^1.2.1",
"resize-observer-polyfill": "^1.5.1",
"statuses": "^1.5.0"
"statuses": "^2.0.0"
},
"devDependencies": {
"@babel/core": "^7.8.7",
"@babel/plugin-syntax-dynamic-import": "^7.8.3",
"@storybook/addon-a11y": "^5.3.17",
"@storybook/addon-actions": "^5.3.17",
"@storybook/addon-docs": "^5.3.17",
"@storybook/addon-knobs": "^5.3.17",
"@storybook/addon-notes": "^5.3.17",
"@storybook/addon-viewport": "^5.3.17",
"@storybook/addons": "^5.3.17",
"@babel/plugin-syntax-import-meta": "^7.8.3",
"@rollup/plugin-json": "^4.0.3",
"@storybook/addon-a11y": "^5.3.18",
"@storybook/addon-actions": "^5.3.18",
"@storybook/addon-docs": "^5.3.18",
"@storybook/addon-knobs": "^5.3.18",
"@storybook/addon-notes": "^5.3.18",
"@storybook/addon-viewport": "^5.3.18",
"@storybook/addons": "^5.3.18",
"@storybook/csf": "0.0.1",
"@storybook/theming": "^5.3.17",
"@storybook/web-components": "^5.3.17",
"babel-loader": "^8.0.6",
"@storybook/theming": "^5.3.18",
"@storybook/web-components": "^5.3.18",
"babel-eslint": "^10.1.0",
"babel-loader": "^8.1.0",
"babel-plugin-inline-svg": "^1.0.1",
"babel-plugin-template-html-minifier": "^4.0.0",
"bundle-phobia-cli": "^0.14.3",
"cypress": "^4.1.0",
"del": "^5.1.0",
"babel-plugin-template-html-minifier": "^4.1.0",
"copy-webpack-plugin": "^5.1.1",
"cypress": "^4.5.0",
"eslint": "^6.8.0",
"eslint-config-standard": "^14.1.0",
"eslint-plugin-import": "^2.20.1",
"eslint-plugin-node": "^11.0.0",
"eslint-config-standard": "^14.1.1",
"eslint-plugin-import": "^2.20.2",
"eslint-plugin-lit": "^1.2.0",
"eslint-plugin-node": "^11.1.0",
"eslint-plugin-promise": "^4.2.1",
"eslint-plugin-simple-import-sort": "^5.0.3",
"eslint-plugin-standard": "^4.0.1",
"esm": "^3.2.25",
"fs-extra": "^8.1.0",
"github-markdown-css": "^4.0.0",
"glob": "^7.1.6",
"gzip-size": "^5.1.1",
"highlight.js": "^9.18.1",
"highlight.js": "^10.0.1",
"html-to-react": "^1.4.2",
"i18n-extract": "^0.6.7",
"lit-analyzer": "^1.1.10",
"markdown-it": "^10.0.0",
"node-static": "^0.7.11",
"nodemon": "^2.0.2",
"rollup": "^2.7.3",
"rollup-plugin-babel": "^4.4.0",
"rollup-plugin-clear": "^2.0.7",
"rollup-plugin-copy": "^3.3.0",
"rollup-plugin-terser": "^5.3.0",
"rollup-plugin-visualizer": "^4.0.4",
"svgo": "^1.3.2",
"terser": "^4.6.6",
"text-table": "^0.2.0",
"web-component-analyzer": "1.0.3"
}
}

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap
  • Changelog

Packages

npm

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc