2019-04-08 01:14:32 +09:00
|
|
|
<template>
|
|
|
|
<div id="about">
|
|
|
|
<div id="brand">
|
|
|
|
<div id="logo">
|
|
|
|
<img :alt="productName+' logo'" src="@/assets/logo.png" width="194" draggable="false">
|
|
|
|
</div>
|
|
|
|
<p id="app-name">{{ productName }}</p>
|
2019-04-08 05:00:05 +09:00
|
|
|
<p id="web-site">
|
2019-04-10 00:26:04 +09:00
|
|
|
<a :href="homePage">Web site</a>
|
2019-04-08 05:00:05 +09:00
|
|
|
</p>
|
2019-04-08 01:14:32 +09:00
|
|
|
</div>
|
|
|
|
<dl class="version">
|
2019-04-09 00:33:51 +09:00
|
|
|
<template v-for="(version, i) in versions">
|
|
|
|
<dt :key="'name-'+i">{{ version.name }}</dt>
|
|
|
|
<dd :key="'ver-'+i">{{ version.version }}</dd>
|
2019-04-08 01:14:32 +09:00
|
|
|
</template>
|
|
|
|
</dl>
|
|
|
|
<div id="copyright">
|
|
|
|
<small>{{ copyright }}</small>
|
|
|
|
</div>
|
|
|
|
</div>
|
|
|
|
</template>
|
|
|
|
|
|
|
|
<style lang="postcss">
|
|
|
|
body {
|
|
|
|
margin: 0;
|
2019-04-10 00:26:04 +09:00
|
|
|
font-family: "Avenir", Helvetica, Arial, sans-serif;
|
2019-04-08 01:14:32 +09:00
|
|
|
-webkit-font-smoothing: antialiased;
|
|
|
|
-webkit-app-region: drag;
|
|
|
|
user-select: none;
|
|
|
|
}
|
|
|
|
#about {
|
2019-04-10 00:26:04 +09:00
|
|
|
padding: 0.5em;
|
2019-04-08 01:14:32 +09:00
|
|
|
text-align: center;
|
|
|
|
}
|
|
|
|
#brand {
|
2019-04-10 00:26:04 +09:00
|
|
|
margin-top: 0.5em;
|
2019-04-08 01:14:32 +09:00
|
|
|
& > p {
|
2019-04-08 05:00:05 +09:00
|
|
|
margin: 0;
|
2019-04-08 01:14:32 +09:00
|
|
|
}
|
|
|
|
}
|
|
|
|
#app-name {
|
|
|
|
font-weight: bold;
|
|
|
|
}
|
2019-04-08 05:00:05 +09:00
|
|
|
#web-site {
|
|
|
|
-webkit-app-region: no-drag;
|
|
|
|
user-select: auto;
|
|
|
|
}
|
2019-04-08 01:14:32 +09:00
|
|
|
dl.version {
|
|
|
|
margin: 0;
|
|
|
|
display: grid;
|
|
|
|
grid-template-columns: repeat(2, 1fr);
|
|
|
|
grid-auto-rows: 1.5em;
|
|
|
|
text-align: left;
|
|
|
|
-webkit-app-region: no-drag;
|
2019-04-09 22:52:07 +09:00
|
|
|
user-select: text;
|
2019-04-10 00:26:04 +09:00
|
|
|
padding: 0.5em;
|
|
|
|
dt,
|
|
|
|
dd {
|
2019-04-08 01:14:32 +09:00
|
|
|
margin-left: 0;
|
|
|
|
line-height: 1.5em;
|
|
|
|
}
|
|
|
|
}
|
|
|
|
</style>
|
|
|
|
|
2019-04-09 00:33:51 +09:00
|
|
|
<script lang="ts">
|
2019-04-10 00:26:04 +09:00
|
|
|
import { Component, Vue } from "vue-property-decorator"
|
|
|
|
import { ipcRenderer } from "electron"
|
2019-04-08 01:14:32 +09:00
|
|
|
|
2019-04-09 00:33:51 +09:00
|
|
|
interface Version {
|
|
|
|
name: string
|
|
|
|
version: string
|
|
|
|
}
|
|
|
|
|
|
|
|
@Component
|
|
|
|
export default class About extends Vue {
|
|
|
|
public productName: string
|
|
|
|
public homePage: string
|
|
|
|
public copyright: string
|
|
|
|
public versions: Version[]
|
|
|
|
|
|
|
|
constructor() {
|
|
|
|
super()
|
|
|
|
let { productName, homePage, copyright, codeName, versions } = ipcRenderer.sendSync('thedesk-info')
|
|
|
|
this.productName = productName
|
|
|
|
this.homePage = homePage
|
|
|
|
this.copyright = copyright
|
|
|
|
this.versions = [
|
|
|
|
{
|
|
|
|
name: "Code Name",
|
|
|
|
version: codeName,
|
|
|
|
},
|
|
|
|
{
|
|
|
|
name: "Internal Version",
|
|
|
|
version: versions.internal,
|
2019-04-08 01:14:32 +09:00
|
|
|
},
|
2019-04-09 00:33:51 +09:00
|
|
|
{
|
|
|
|
name: "Chromium",
|
|
|
|
version: versions.chrome,
|
|
|
|
},
|
|
|
|
{
|
|
|
|
name: "Electron",
|
|
|
|
version: versions.electron,
|
|
|
|
},
|
|
|
|
{
|
|
|
|
name: "Node.js",
|
|
|
|
version: versions.node,
|
|
|
|
},
|
|
|
|
]
|
|
|
|
}
|
2019-04-08 01:14:32 +09:00
|
|
|
}
|
|
|
|
</script>
|