feat: scaffolding of docs-generator done and first "live" docs (#28)

* feat(docs): scaffolding docs-generator

* fix: typo in build (script) and fix copy folder command

* chore(docs): update
This commit is contained in:
Jeff Galbraith 2019-08-22 16:55:35 -06:00 committed by nothingismagick
parent 47a430153c
commit bab276fcf3
66 changed files with 2500 additions and 27 deletions

View File

@ -1 +1,2 @@
/dist
/src/markdown

View File

@ -1,13 +1,15 @@
{
"name": "docs-generator",
"version": "0.0.1",
"description": "A Quasar Framework app",
"productName": "Quasar App",
"description": "Tauri Documentation",
"productName": "Tauri Documentation",
"cordovaId": "org.cordova.quasar.app",
"author": "Daniel Thompson-Yvetot <denjell@quasar.dev>",
"private": true,
"scripts": {
"build": "quasar build && cp ./src/404.html ./dist/spa && cp -r ./dist/spa/. ../docs",
"lint": "eslint --ext .js,.vue src",
"lint-fix": "eslint --ext .js,.vue src --fix",
"test": "echo \"No test specified\" && exit 0"
},
"dependencies": {
@ -17,11 +19,14 @@
"devDependencies": {
"@quasar/app": "^1.0.0",
"@quasar/quasar-app-extension-qmarkdown": "^1.0.0-beta.18",
"@quasar/quasar-app-extension-qpublish": "^1.0.0-alpha.5",
"@quasar/quasar-app-extension-qribbon": "^1.0.0-beta.3",
"@vue/eslint-config-standard": "^4.0.0",
"babel-eslint": "^10.0.1",
"eslint": "^5.10.0",
"eslint-loader": "^2.1.1",
"eslint-plugin-vue": "^5.0.0"
"eslint-plugin-vue": "^5.0.0",
"quasar-app-extension-qautomate": "^1.0.0-alpha.5"
},
"engines": {
"node": ">= 8.9.0",

View File

@ -31,6 +31,8 @@ module.exports = function (ctx) {
// all: true, // --- includes everything; for dev only!
components: [
'QCard',
'QExpansionItem',
'QLayout',
'QHeader',
'QDrawer',
@ -43,7 +45,14 @@ module.exports = function (ctx) {
'QList',
'QItem',
'QItemSection',
'QItemLabel'
'QItemLabel',
'QPageScroller',
'QScrollArea',
'QSeparator',
'QTabs',
'QTab',
'QTabPanels',
'QTabPanel'
],
directives: [
@ -56,11 +65,12 @@ module.exports = function (ctx) {
]
},
supportIE: false,
supportIE: true,
build: {
scopeHoisting: true,
// vueRouterMode: 'history',
vueRouterMode: 'history',
publicPath: 'tauri',
// vueCompiler: true,
// gzip: true,
// analyze: true,

View File

@ -1,3 +1,5 @@
{
"@quasar/qmarkdown": {}
"@quasar/qmarkdown": {},
"@quasar/qribbon": {},
"@quasar/qpublish": {}
}

View File

@ -0,0 +1,23 @@
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="utf-8" />
<title>404 Redirect</title>
<script>
sessionStorage.redirect = location.href;
</script>
<meta http-equiv="refresh" content="0;URL='/tauri'"></meta>
</head>
<body>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
</body>
</html>

View File

@ -0,0 +1,26 @@
export function copyHeading (id) {
const text = window.location.origin + window.location.pathname + '#' + id
var textArea = document.createElement('textarea')
textArea.className = 'fixed-top'
textArea.value = text
document.body.appendChild(textArea)
textArea.focus()
textArea.select()
document.execCommand('copy')
document.body.removeChild(textArea)
this.$q.notify({
message: 'Anchor has been copied to clipboard.',
color: 'white',
textColor: 'primary',
icon: 'done',
position: 'top',
timeout: 2000
})
}
export function slugify (str) {
return encodeURIComponent(String(str).trim().replace(/\s+/g, '-'))
}

View File

@ -0,0 +1,124 @@
<template>
<section :id="slugifiedTitle" class="q-pa-md overflow-auto">
<q-card flat bordered class="no-shadow">
<q-toolbar>
<q-ribbon
position="left"
color="rgba(0,0,0,.58)"
background-color="#c0c0c0"
leaf-color="#a0a0a0"
leaf-position="bottom"
decoration="rounded-out"
>
<q-toolbar-title
class="example-title"
style="padding: 5px 20px;"
@click="copyHeading(slugifiedTitle)"><span class="ellipsis">{{ title }}</span></q-toolbar-title>
</q-ribbon>
</q-toolbar>
<q-separator v-if="this.$slots.default" />
<q-card-section v-if="this.$slots.default">
<slot></slot>
</q-card-section>
<q-separator />
<q-expansion-item
group="someGroup"
caption="Code"
>
<q-card>
<q-tabs
v-model="tab"
dense
class="text-grey"
active-color="primary"
indicator-color="primary"
align="left"
narrow-indicator
>
<q-tab name="template" v-if="parts.template" label="Template" />
<q-tab name="script" v-if="parts.script" label="Script" />
<q-tab name="style" v-if="parts.style" label="Style" />
</q-tabs>
<q-separator />
<q-tab-panels v-model="tab" animated>
<q-tab-panel v-if="parts.template" name="template">
<q-markdown :src="parts.template" />
</q-tab-panel>
<q-tab-panel v-if="parts.script" name="script">
<q-markdown :src="parts.script" />
</q-tab-panel>
<q-tab-panel v-if="parts.style" name="style">
<q-markdown :src="parts.style" />
</q-tab-panel>
</q-tab-panels>
</q-card>
</q-expansion-item>
<q-separator />
<component v-bind:is="name" style="overflow: hidden;" />
</q-card>
</section>
</template>
<script>
import { copyHeading, slugify } from 'assets/page-utils'
export default {
name: 'ExampleCard',
components: {
TauriBasic: () => import('../examples/TauriBasic'),
TauriAdvanced: () => import('../examples/TauriAdvanced')
},
props: {
title: {
type: String,
required: true
},
name: {
type: String,
required: true
},
tagParts: {
type: Object,
default: () => {}
}
},
data () {
return {
tab: 'template',
parts: {}
}
},
mounted () {
this.updateParts()
},
computed: {
slugifiedTitle () {
return slugify(this.title)
}
},
methods: {
copyHeading,
updateParts () {
this.parts = {}
Object.keys(this.tagParts).forEach(key => {
if (this.tagParts[key] !== '') {
this.parts[key] = '```\n' + this.tagParts[key] + '\n```'
}
})
}
}
}
</script>

View File

@ -0,0 +1,28 @@
<template>
<h1 :id="slugifiedTitle" class="q-markdown--heading-h1 q-markdown--title-heavy example-title" @click="copyHeading(slugifiedTitle)">{{ title }}</h1>
</template>
<script>
import { copyHeading, slugify } from 'assets/page-utils'
export default {
name: 'ExampleTitle',
props: {
title: {
type: String,
required: true
}
},
computed: {
slugifiedTitle () {
return slugify(this.title)
}
},
methods: {
copyHeading
}
}
</script>

View File

@ -0,0 +1,24 @@
<template>
<div>
<section class="page-header">
<h1 class="project-name">Tauri</h1>
<h2 class="project-tagline"></h2>
<q-btn type="a" href="https://github.com/quasarframework/tauri" target="_blank" class="btn" label="View on GitHub" no-caps flat/>
<q-btn to="/docs" class="btn" label="Docs" no-caps flat/>
<q-btn to="/examples" class="btn" label="Examples" no-caps flat/>
<q-btn type="a" href="https://donate.quasar.dev" target="_blank" class="btn" label="Donate" no-caps flat/>
</section>
<main class="flex flex-start justify-center inset-shadow">
<div class="q-pa-md col-12-sm col-8-md col-6-lg inset-shadow" style="width: 100%; height: 3px;" />
<div class="q-pa-md col-12-sm col-8-md col-6-lg bg-white shadow-1" style="max-width: 800px; width: 100%;">
<slot></slot>
</div>
</main>
</div>
</template>
<script>
export default {
name: 'Hero'
}
</script>

View File

@ -1 +1,281 @@
// app global css
// Tauri color scheme
// background: #231F20
// highlight: #FFFCDF
// text: #283238
$fgColor ?= #FFFCDF
$bgColor ?= #231F20
.qribbon__container
position relative
.qribbon__horizontal--left
position unset !important
padding unset !important
margin-left -22px !important
z-index 1 !important
&:before
margin-left -22px
.example-title
cursor pointer
&:after
content ' #'
opacity 0
&:hover:after
opacity 1
.example-page
padding 16px 46px
font-weight 300
max-width 900px
margin-left auto
margin-right auto
body {
padding 0
margin 0
font-family "Open Sans", "Helvetica Neue", Helvetica, Arial, sans-serif
/* font-size 16px */
line-height 1.5
background-color #f8f8ff
color #606c71 }
a
color #1e6bb8
text-decoration none
&:hover
text-decoration underline
.btn
display inline-block
margin-bottom 1rem
color rgba(255, 255, 255, 0.7)
background-color rgba(255, 255, 255, 0.08)
border-color rgba(255, 255, 255, 0.2)
border-style solid
border-width 1px
border-radius 0.3rem
transition color 0.2s, background-color 0.2s, border-color 0.2s
&:hover
color rgba(255, 255, 255, 0.8)
text-decoration none
background-color rgba(255, 255, 255, 0.2)
border-color rgba(255, 255, 255, 0.3)
.btn + .btn
margin-left 1rem
@media screen and (min-width 64em)
.btn
padding 0.75rem 1rem
@media screen and (min-width 42em) and (max-width 64em)
.btn
padding 0.6rem 0.9rem
font-size 0.9rem
@media screen and (max-width 42em)
.btn
display block
width 100%
padding 0.75rem
font-size 0.9rem
.btn + .btn
margin-left 0
.page-header
color #fff
text-align center
background-color $bgColor
background-image linear-gradient(120deg, $bgColor, $fgColor)
@media screen and (min-width 64em)
.page-header
padding 5rem 6rem
@media screen and (min-width 42em) and (max-width 64em)
.page-header
padding 3rem 4rem
@media screen and (max-width 42em)
.page-header
padding 2rem 1rem 1rem 1rem
.project-name
font-weight 700
margin-top 0
margin-bottom 0.1rem
@media screen and (min-width 64em)
.project-name
font-size 3.25rem
@media screen and (min-width 42em) and (max-width 64em)
.project-name
font-size 2.25rem
@media screen and (max-width 42em)
.project-name
font-size 1.75rem
.project-tagline
margin-bottom 2rem
font-weight normal
opacity 0.7
@media screen and (min-width 64em)
.project-tagline
font-size 1.25rem
@media screen and (min-width 42em) and (max-width 64em)
.project-tagline
font-size 1.15rem
@media screen and (max-width 42em)
.project-tagline
font-size 1rem
.main-content :first-child
margin-top 0
.main-content img
max-width 100%
.main-content h1, .main-content h2, .main-content h3, .main-content h4, .main-content h5, .main-content h6
margin-top 2rem
margin-bottom 1rem
font-weight normal
color $fgColor
.main-content p
margin-bottom 1em
.main-content code
padding 2px 4px
font-family Consolas, "Liberation Mono", Menlo, Courier, monospace
font-size 0.9rem
color #383e41
background-color #f3f6fa
border-radius 0.3rem
.main-content pre
padding 0.8rem
margin-top 0
margin-bottom 1rem
font 1rem Consolas, "Liberation Mono", Menlo, Courier, monospace
color #567482
word-wrap normal
background-color #f3f6fa
border solid 1px #dce6f0
border-radius 0.3rem
.main-content pre > code
padding 0
margin 0
font-size 0.9rem
color #567482
word-break normal
white-space pre
background transparent
border 0
.main-content .highlight
margin-bottom 1rem
.main-content .highlight pre
margin-bottom 0
word-break normal
.main-content .highlight pre, .main-content pre
padding 0.8rem
overflow auto
font-size 0.9rem
line-height 1.45
border-radius 0.3rem
.main-content pre code, .main-content pre tt
display inline
max-width initial
padding 0
margin 0
overflow initial
line-height inherit
word-wrap normal
background-color transparent
border 0
.main-content pre code:before, .main-content pre code:after, .main-content pre tt:before, .main-content pre tt:after
content normal
.main-content ul, .main-content ol
margin-top 0
.main-content blockquote
padding 0 1rem
margin-left 0
color #819198
border-left 0.3rem solid #dce6f0
.main-content blockquote > :first-child
margin-top 0
.main-content blockquote > :last-child
margin-bottom 0
.main-content table
display block
width 100%
overflow auto
word-break normal
word-break keep-all
.main-content table th
font-weight bold
.main-content table th, .main-content table td
padding 0.5rem 1rem
border 1px solid #e9ebec
.main-content dl
padding 0
.main-content dl dt
padding 0
margin-top 1rem
font-size 1rem
font-weight bold
.main-content dl dd
padding 0
margin-bottom 1rem
.main-content hr
height 2px
padding 0
margin 1rem 0
background-color #eff0f1
border 0
@media screen and (min-width 64em)
.main-content
max-width 64rem
padding 2rem 6rem
margin 0 auto
font-size 1.1rem
@media screen and (min-width 42em) and (max-width 64em)
.main-content
padding 2rem 4rem
font-size 1.1rem
@media screen and (max-width 42em)
.main-content
padding 2rem 1rem
font-size 1rem
.site-footer
padding-top 2rem
margin-top 2rem
border-top solid 1px #eff0f1
.site-footer-owner
display block
font-weight bold
.site-footer-credits
color #819198
@media screen and (min-width 64em)
.site-footer
font-size 1rem
@media screen and (min-width 42em) and (max-width 64em)
.site-footer
font-size 1rem
@media screen and (max-width 42em)
.site-footer
font-size 0.9rem

View File

View File

@ -0,0 +1,23 @@
<template>
<div class="q-pa-md">
<p>You can put any regular Vue code (SFC) into one of these files.</p>
<p>It will be displayed as an example.</p>
<p>template, script, and css will be separated out into 3 parts and each will have a tab.</p>
</div>
</template>
<script>
export default {
data () {
return {
var1: 10,
var2: 'string'
}
}
}
</script>
<style lang="stylus">
.my-class
background-color black
</style>

View File

@ -0,0 +1,22 @@
<template>
<div class="q-pa-md">
<p>You can put any regular Vue code (SFC) into one of these files.</p>
<p>It will be displayed as an example.</p>
</div>
</template>
<script>
export default {
data () {
return {
var1: 10,
var2: 'string'
}
}
}
</script>
<style lang="stylus">
.my-class
background-color black
</style>

File diff suppressed because it is too large Load Diff

View File

@ -1,5 +1,5 @@
<template>
<q-layout view="lHh Lpr lFf">
<q-layout view="HHh LpR fFf">
<q-header elevated>
<q-toolbar>
<q-btn
@ -13,17 +13,28 @@
</q-btn>
<q-toolbar-title>
Quasar App
Tauri <!-- <span class="text-subtitle2">v{{ version }}</span> -->
</q-toolbar-title>
<div>Quasar v{{ $q.version }}</div>
<q-btn
flat
dense
round
@click="rightDrawerOpen = !rightDrawerOpen"
aria-label="Table of Contents"
>
<q-icon name="menu" />
</q-btn>
</q-toolbar>
</q-header>
<q-drawer
v-model="leftDrawerOpen"
bordered
content-class="bg-grey-2"
content-style="background-color: #f8f8ff"
>
<q-list>
<q-item-label header>Essential Links</q-item-label>
@ -84,6 +95,32 @@
</q-list>
</q-drawer>
<q-drawer
v-model="rightDrawerOpen"
side="right"
bordered
content-style="background-color: #f8f8ff"
>
<q-scroll-area class="fit">
<q-list dense>
<q-item
v-for="item in toc"
:key="item.id"
clickable
v-ripple
dense
@click="scrollTo(item.id)"
:active="activeToc === item.id"
>
<q-item-section v-if="item.level > 1" side> </q-item-section>
<q-item-section
:class="`toc-item toc-level-${item.level}`"
>{{ item.label }}</q-item-section>
</q-item>
</q-list>
</q-scroll-area>
</q-drawer>
<q-page-container>
<router-view />
</q-page-container>
@ -91,20 +128,57 @@
</template>
<script>
import { openURL } from 'quasar'
import { mapGetters } from 'vuex'
import { scroll } from 'quasar'
export default {
name: 'MyLayout',
name: 'MainLayout',
data () {
return {
leftDrawerOpen: this.$q.platform.is.desktop
leftDrawerOpen: this.$q.platform.is.desktop,
rightDrawerOpen: this.$q.platform.is.desktop,
activeToc: 0
}
},
computed: {
...mapGetters({
toc: 'common/toc'
})
},
mounted () {
// code to handle anchor link on refresh/new page, etc
if (location.hash !== '') {
const id = location.hash.substring(1, location.hash.length)
setTimeout(() => {
this.scrollTo(id)
}, 200)
}
},
methods: {
openURL
scrollTo (id) {
this.activeToc = id
const el = document.getElementById(id)
if (el) {
this.scrollPage(el)
}
},
scrollPage (el) {
const offset = el.offsetTop - 50
scroll.setScrollPosition(window, offset, 500)
}
}
}
</script>
<style>
<style lang="stylus">
.toc-level
&-2
margin-left 0
&-3
margin-left 10px
</style>

View File

@ -0,0 +1,53 @@
<template>
<q-layout view="lHh Lpr lFf">
<q-header elevated class="glossy">
<q-toolbar>
<q-btn
flat
dense
round
@click="leftDrawerOpen = !leftDrawerOpen"
aria-label="Menu"
>
<q-icon name="menu"></q-icon>
</q-btn>
<q-toolbar-title v-if="$q.screen.width > 500">
Tauri <!-- <span class="text-subtitle2">v{{ version }}</span> -->
</q-toolbar-title>
<div>Quasar v{{ $q.version }}</div>
</q-toolbar>
</q-header>
<q-drawer
v-model="leftDrawerOpen"
bordered
content-class="bg-grey-2"
>
<!-- QScrollArea is optional -->
<q-scroll-area class="fit q-pa-sm">
<!-- Content here -->
</q-scroll-area>
</q-drawer>
<q-page-container>
<!-- This is where pages get injected -->
<router-view />
</q-page-container>
</q-layout>
</template>
<script>
export default {
// name: 'LayoutName',
data () {
return {
leftDrawer: true
}
}
}
</script>

View File

@ -0,0 +1,32 @@
Tauri
===
You can add any markdown to this file. It is your opening page.
> All levels (headings) must have a unique name or browser will complain about identical keys
# Lorem Ipsum
Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Pharetra et ultrices neque ornare aenean euismod elementum. Ac tincidunt vitae semper quis. Sodales neque sodales ut etiam sit. Ut morbi tincidunt augue interdum velit euismod in. Fames ac turpis egestas sed tempus urna. Nec feugiat in fermentum posuere urna nec tincidunt. Non consectetur a erat nam. Habitant morbi tristique senectus et netus et malesuada. At urna condimentum mattis pellentesque id nibh tortor id. Aenean vel elit scelerisque mauris pellentesque pulvinar pellentesque habitant morbi. Penatibus et magnis dis parturient montes nascetur ridiculus mus. Quam id leo in vitae. Viverra suspendisse potenti nullam ac tortor. Nisl nunc mi ipsum faucibus vitae. Lorem donec massa sapien faucibus et. Orci dapibus ultrices in iaculis nunc sed. Est pellentesque elit ullamcorper dignissim cras tincidunt. Viverra ipsum nunc aliquet bibendum. Erat imperdiet sed euismod nisi porta.
In egestas erat imperdiet sed euismod nisi porta. Nunc mi ipsum faucibus vitae. Arcu cursus vitae congue mauris rhoncus aenean. In fermentum posuere urna nec. Dis parturient montes nascetur ridiculus mus. Aliquet enim tortor at auctor urna nunc id cursus metus. Praesent semper feugiat nibh sed pulvinar proin gravida hendrerit lectus. Vestibulum lorem sed risus ultricies tristique nulla aliquet. Varius duis at consectetur lorem donec. Fusce ut placerat orci nulla pellentesque dignissim enim.
Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Pharetra et ultrices neque ornare aenean euismod elementum. Ac tincidunt vitae semper quis. Sodales neque sodales ut etiam sit. Ut morbi tincidunt augue interdum velit euismod in. Fames ac turpis egestas sed tempus urna. Nec feugiat in fermentum posuere urna nec tincidunt. Non consectetur a erat nam. Habitant morbi tristique senectus et netus et malesuada. At urna condimentum mattis pellentesque id nibh tortor id. Aenean vel elit scelerisque mauris pellentesque pulvinar pellentesque habitant morbi. Penatibus et magnis dis parturient montes nascetur ridiculus mus. Quam id leo in vitae. Viverra suspendisse potenti nullam ac tortor. Nisl nunc mi ipsum faucibus vitae. Lorem donec massa sapien faucibus et. Orci dapibus ultrices in iaculis nunc sed. Est pellentesque elit ullamcorper dignissim cras tincidunt. Viverra ipsum nunc aliquet bibendum. Erat imperdiet sed euismod nisi porta.
## Second level
In egestas erat imperdiet sed euismod nisi porta. Nunc mi ipsum faucibus vitae. Arcu cursus vitae congue mauris rhoncus aenean. In fermentum posuere urna nec. Dis parturient montes nascetur ridiculus mus. Aliquet enim tortor at auctor urna nunc id cursus metus. Praesent semper feugiat nibh sed pulvinar proin gravida hendrerit lectus. Vestibulum lorem sed risus ultricies tristique nulla aliquet. Varius duis at consectetur lorem donec. Fusce ut placerat orci nulla pellentesque dignissim enim.
Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Pharetra et ultrices neque ornare aenean euismod elementum. Ac tincidunt vitae semper quis. Sodales neque sodales ut etiam sit. Ut morbi tincidunt augue interdum velit euismod in. Fames ac turpis egestas sed tempus urna. Nec feugiat in fermentum posuere urna nec tincidunt. Non consectetur a erat nam. Habitant morbi tristique senectus et netus et malesuada. At urna condimentum mattis pellentesque id nibh tortor id. Aenean vel elit scelerisque mauris pellentesque pulvinar pellentesque habitant morbi. Penatibus et magnis dis parturient montes nascetur ridiculus mus. Quam id leo in vitae. Viverra suspendisse potenti nullam ac tortor. Nisl nunc mi ipsum faucibus vitae. Lorem donec massa sapien faucibus et. Orci dapibus ultrices in iaculis nunc sed. Est pellentesque elit ullamcorper dignissim cras tincidunt. Viverra ipsum nunc aliquet bibendum. Erat imperdiet sed euismod nisi porta.
### Level III
In egestas erat imperdiet sed euismod nisi porta. Nunc mi ipsum faucibus vitae. Arcu cursus vitae congue mauris rhoncus aenean. In fermentum posuere urna nec. Dis parturient montes nascetur ridiculus mus. Aliquet enim tortor at auctor urna nunc id cursus metus. Praesent semper feugiat nibh sed pulvinar proin gravida hendrerit lectus. Vestibulum lorem sed risus ultricies tristique nulla aliquet. Varius duis at consectetur lorem donec. Fusce ut placerat orci nulla pellentesque dignissim enim.
Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Pharetra et ultrices neque ornare aenean euismod elementum. Ac tincidunt vitae semper quis. Sodales neque sodales ut etiam sit. Ut morbi tincidunt augue interdum velit euismod in. Fames ac turpis egestas sed tempus urna. Nec feugiat in fermentum posuere urna nec tincidunt. Non consectetur a erat nam. Habitant morbi tristique senectus et netus et malesuada. At urna condimentum mattis pellentesque id nibh tortor id. Aenean vel elit scelerisque mauris pellentesque pulvinar pellentesque habitant morbi. Penatibus et magnis dis parturient montes nascetur ridiculus mus. Quam id leo in vitae. Viverra suspendisse potenti nullam ac tortor. Nisl nunc mi ipsum faucibus vitae. Lorem donec massa sapien faucibus et. Orci dapibus ultrices in iaculis nunc sed. Est pellentesque elit ullamcorper dignissim cras tincidunt. Viverra ipsum nunc aliquet bibendum. Erat imperdiet sed euismod nisi porta.
In egestas erat imperdiet sed euismod nisi porta. Nunc mi ipsum faucibus vitae. Arcu cursus vitae congue mauris rhoncus aenean. In fermentum posuere urna nec. Dis parturient montes nascetur ridiculus mus. Aliquet enim tortor at auctor urna nunc id cursus metus. Praesent semper feugiat nibh sed pulvinar proin gravida hendrerit lectus. Vestibulum lorem sed risus ultricies tristique nulla aliquet. Varius duis at consectetur lorem donec. Fusce ut placerat orci nulla pellentesque dignissim enim.
Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Pharetra et ultrices neque ornare aenean euismod elementum. Ac tincidunt vitae semper quis. Sodales neque sodales ut etiam sit. Ut morbi tincidunt augue interdum velit euismod in. Fames ac turpis egestas sed tempus urna. Nec feugiat in fermentum posuere urna nec tincidunt. Non consectetur a erat nam. Habitant morbi tristique senectus et netus et malesuada. At urna condimentum mattis pellentesque id nibh tortor id. Aenean vel elit scelerisque mauris pellentesque pulvinar pellentesque habitant morbi. Penatibus et magnis dis parturient montes nascetur ridiculus mus. Quam id leo in vitae. Viverra suspendisse potenti nullam ac tortor. Nisl nunc mi ipsum faucibus vitae. Lorem donec massa sapien faucibus et. Orci dapibus ultrices in iaculis nunc sed. Est pellentesque elit ullamcorper dignissim cras tincidunt. Viverra ipsum nunc aliquet bibendum. Erat imperdiet sed euismod nisi porta.
In egestas erat imperdiet sed euismod nisi porta. Nunc mi ipsum faucibus vitae. Arcu cursus vitae congue mauris rhoncus aenean. In fermentum posuere urna nec. Dis parturient montes nascetur ridiculus mus. Aliquet enim tortor at auctor urna nunc id cursus metus. Praesent semper feugiat nibh sed pulvinar proin gravida hendrerit lectus. Vestibulum lorem sed risus ultricies tristique nulla aliquet. Varius duis at consectetur lorem donec. Fusce ut placerat orci nulla pellentesque dignissim enim.

View File

@ -0,0 +1,85 @@
<template>
<hero>
<q-markdown>
You can add markdown to your page by surrounding it with `q-markdown` tag.
Be aware, markdown is sensitive to being on left side, otherwise will wrap it in blocks (indented).
</q-markdown>
<q-markdown>
This is an exampe of a title. It calls outside of the markdown, so be to register the label in the TOC below.
</q-markdown>
<example-title title="Basic" />
<example-card title="Tauri - Basic" name="TauriBasic" :tag-parts="getTagParts(require('!!raw-loader!../examples/TauriBasic.vue').default)" />
<example-card title="Tauri - Advanced" name="TauriAdvanced" :tag-parts="getTagParts(require('!!raw-loader!../examples/TauriAdvanced.vue').default)" />
</hero>
</template>
<script>
import Hero from '../components/Hero'
import ExampleTitle from '../components/ExampleTitle'
import ExampleCard from '../components/ExampleCard'
import { slugify } from 'assets/page-utils'
import getTagParts from '@quasar/quasar-app-extension-qmarkdown/src/lib/getTagParts'
export default {
name: 'Examples',
components: {
Hero,
ExampleTitle,
ExampleCard
},
data () {
return {
tempToc: []
}
},
mounted () {
this.toc = []
this.tempToc = []
// example of top-level toc
this.addToToc('Basic')
// example of second-level toc
this.addToToc('Tauri - Basic', 2)
this.addToToc('Tauri - Advanced', 2)
// add the toc to right drawer
this.toc = this.tempToc
},
computed: {
toc:
{
get () {
return this.$store.state.common.toc
},
set (toc) {
this.$store.commit('common/toc', toc)
}
}
},
methods: {
getTagParts,
addToToc (name, level = 1) {
const slug = slugify(name)
this.tempToc.push({
children: [],
id: slug,
label: name,
level: level
})
}
}
}
</script>
<style>
</style>

View File

@ -1,14 +1,69 @@
<template>
<q-page class="flex flex-center">
<img alt="Quasar logo" src="~assets/quasar-logo-full.svg">
</q-page>
<hero>
<q-markdown :src="markdown" toc @data="onToc" />
<component-api
title="Tauri API"
:json="json"
/>
<!-- You can specify any amount of APIs here -->
<q-markdown>
# Donate
If you appreciate the work that went into this App Extension, please consider [donating to Quasar](https://donate.quasar.dev).
---
This page created with [QMarkdown](https://quasarframework.github.io/app-extension-qmarkdown), another great Quasar App Extension.
</q-markdown>
<q-page-scroller position="bottom-right" :scroll-offset="150" :offset="[18, 18]">
<q-btn fab icon="keyboard_arrow_up" color="primary" />
</q-page-scroller>
</hero>
</template>
<style>
</style>
<script>
import Hero from '../components/Hero'
import markdown from '../markdown/tauri.md'
// import json from '@quasar/tauri/src/Tauri.json'
import json from '../json/tauri.json'
export default {
name: 'PageIndex'
name: 'PageIndex',
components: {
Hero
},
data () {
return {
markdown: markdown,
json: json
}
},
computed: {
toc:
{
get () {
return this.$store.state.common.toc
},
set (toc) {
// console.log('toc:', toc)
this.$store.commit('common/toc', toc)
}
}
},
methods: {
onToc (toc) {
// add anything not picked uip by the markdown processor
toc.push({ id: 'Tauri-API', label: 'Tauri API', level: 1, children: Array(0) })
toc.push({ id: 'Donate', label: 'Donate', level: 1, children: Array(0) })
this.toc = toc
}
}
}
</script>

View File

@ -1,11 +1,23 @@
const routes = [
{
// redirect to docs
path: '/',
component: () => import('layouts/MyLayout.vue'),
redirect: '/docs'
},
{
path: '/docs',
component: () => import('layouts/MainLayout.vue'),
children: [
{ path: '', component: () => import('pages/Index.vue') }
]
},
{
path: '/examples',
component: () => import('layouts/MainLayout.vue'),
children: [
{ path: '', component: () => import('pages/Examples.vue') }
]
}
]

View File

@ -0,0 +1,4 @@
/*
export function someAction (context) {
}
*/

View File

@ -0,0 +1,2 @@
export const titlebarHeight = (state) => state.titlebarHeight
export const toc = (state) => state.toc

View File

@ -0,0 +1,12 @@
import state from './state'
import * as getters from './getters'
import * as mutations from './mutations'
import * as actions from './actions'
export default {
namespaced: true,
state,
getters,
mutations,
actions
}

View File

@ -0,0 +1,6 @@
export const titlebarHeight = (state, height) => {
state.titlebarHeight = height
}
export const toc = (state, toc) => {
state.toc = toc
}

View File

@ -0,0 +1,4 @@
export default {
titlebarHeight: 0,
toc: []
}

View File

@ -1,7 +1,7 @@
import Vue from 'vue'
import Vuex from 'vuex'
// import example from './module-example'
import common from './common'
Vue.use(Vuex)
@ -13,7 +13,7 @@ Vue.use(Vuex)
export default function (/* { ssrContext } */) {
const Store = new Vuex.Store({
modules: {
// example
common
},
// enable strict mode (adds overhead!)

View File

@ -954,6 +954,20 @@
raw-loader "^3.1.0"
ware-loader "^0.2.4"
"@quasar/quasar-app-extension-qpublish@^1.0.0-alpha.5":
version "1.0.0-alpha.5"
resolved "https://registry.yarnpkg.com/@quasar/quasar-app-extension-qpublish/-/quasar-app-extension-qpublish-1.0.0-alpha.5.tgz#ee4ade92b69b41114d94d9dff9c99d113fab6d8d"
integrity sha512-Ity//otADASULVdgqn4lXtFavg8dHssrnLQ6n5/FWSAs3O7PtHqvUGklU0dzgxv+j+2sbTV4Bi+XFg4gKpKqPQ==
dependencies:
quasar-mixin-colorize "^1.0.0-alpha.6"
"@quasar/quasar-app-extension-qribbon@^1.0.0-beta.3":
version "1.0.0-beta.3"
resolved "https://registry.yarnpkg.com/@quasar/quasar-app-extension-qribbon/-/quasar-app-extension-qribbon-1.0.0-beta.3.tgz#4c49b0020b039668d08291a7e21cf1efdc4aa578"
integrity sha512-jSRHzY3t6Bl64XlWfpe2CQdvrhTvSxxZSQ6t7qVMFKsIxp2C0wCM0aLO9lvIcWB6Q6m+iYs1ZKUhQj7FKTcBAw==
dependencies:
quasar-mixin-colorize "^1.0.0-alpha.4"
"@types/events@*":
version "3.0.0"
resolved "https://registry.npmjs.org/@types/events/-/events-3.0.0.tgz#2862f3f58a9a7f7c3e78d79f130dd4d71c25c2a7"
@ -3550,7 +3564,7 @@ front-matter@^3.0.2:
dependencies:
js-yaml "^3.13.1"
fs-extra@8.1.0:
fs-extra@8.1.0, fs-extra@^8.1.0:
version "8.1.0"
resolved "https://registry.npmjs.org/fs-extra/-/fs-extra-8.1.0.tgz#49d43c45a88cd9677668cb7be1b46efdb8d2e1c0"
integrity sha512-yhlQgA6mnOJUKOsRUFsgJdQCvkKhcz8tlZG5HBQfReYZy46OwLcY+Zia0mtdHsOo9y/hP+CxMN0TU9QxoOtG4g==
@ -4144,7 +4158,7 @@ inquirer@6.5.0:
strip-ansi "^5.1.0"
through "^2.3.6"
inquirer@^6.2.2:
inquirer@^6.2.2, inquirer@^6.4.1:
version "6.5.1"
resolved "https://registry.npmjs.org/inquirer/-/inquirer-6.5.1.tgz#8bfb7a5ac02dac6ff641ac4c5ff17da112fcdb42"
integrity sha512-uxNHBeQhRXIoHWTSNYUFhQVrHYFThIt6IVo2fFmSe8aBwdR3/w6b58hJpiL/fMukFkvGzjg+hSxFtwvVmKZmXw==
@ -6453,6 +6467,22 @@ qs@6.7.0:
resolved "https://registry.npmjs.org/qs/-/qs-6.7.0.tgz#41dc1a015e3d581f1621776be31afb2876a9b1bc"
integrity sha512-VCdBRNFTX1fyE7Nb6FYoURo/SPe62QCaAyzJvUjwRaIsc+NePBEniHlvxFmmX56+HZphIGtV0XeCirBtpDrTyQ==
quasar-app-extension-qautomate@^1.0.0-alpha.5:
version "1.0.0-alpha.5"
resolved "https://registry.yarnpkg.com/quasar-app-extension-qautomate/-/quasar-app-extension-qautomate-1.0.0-alpha.5.tgz#05c3ba95d17b78d180d2dae043c86a6b60629d99"
integrity sha512-VjClH4OJWEHOR3/rVj2jAl4pT/Mg/UBRtAruGDtbOtq09bmEiKEcbzET2tHOC2cMn3GjYA/7HQQpXBCC82ZSOQ==
dependencies:
chalk "^2.4.2"
fs-extra "^8.1.0"
inquirer "^6.4.1"
param-case "^2.1.1"
ware-loader "^0.2.4"
quasar-mixin-colorize@^1.0.0-alpha.4, quasar-mixin-colorize@^1.0.0-alpha.6:
version "1.0.0-alpha.9"
resolved "https://registry.yarnpkg.com/quasar-mixin-colorize/-/quasar-mixin-colorize-1.0.0-alpha.9.tgz#e19c433a5b3f40c4ce4ab5c6e8506f7cb6eb83bb"
integrity sha512-xg49b7Z68D2+zdDOgq/XntKKAd2Anl1kIsLI3dKS26CCNGARB1JjPH9+tKd+r2MCcMf3R6qf775/vPKbsDZ4BQ==
quasar@^1.0.0:
version "1.0.5"
resolved "https://registry.npmjs.org/quasar/-/quasar-1.0.5.tgz#caddfac55fca0779c996dc1b3977a045ae1426e6"

23
docs/404.html Normal file
View File

@ -0,0 +1,23 @@
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="utf-8" />
<title>404 Redirect</title>
<script>
sessionStorage.redirect = location.href;
</script>
<meta http-equiv="refresh" content="0;URL='/tauri'"></meta>
</head>
<body>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
</body>
</html>

View File

@ -0,0 +1 @@
.toc-level-2{margin-left:0}.toc-level-3{margin-left:10px}

View File

@ -0,0 +1 @@
.my-class{background-color:#000}

View File

@ -0,0 +1 @@
.my-class{background-color:#000}

File diff suppressed because one or more lines are too long

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

1
docs/index.html Normal file
View File

@ -0,0 +1 @@
<!DOCTYPE html><html><head><title>Tauri Documentation</title><meta charset=utf-8><meta name=description content="Tauri Documentation"><meta name=format-detection content="telephone=no"><meta name=msapplication-tap-highlight content=no><meta name=viewport content="user-scalable=no,initial-scale=1,maximum-scale=1,minimum-scale=1,width=device-width"><link rel=icon type=image/png href=statics/app-logo-128x128.png><link rel=icon type=image/png sizes=16x16 href=statics/icons/favicon-16x16.png><link rel=icon type=image/png sizes=32x32 href=statics/icons/favicon-32x32.png><link rel=icon type=image/png sizes=96x96 href=statics/icons/favicon-96x96.png><link rel=icon type=image/ico href=statics/icons/favicon.ico><link href=/tauri/css/26b7cbd2.97bb784a.css rel=prefetch><link href=/tauri/css/41b4ae5e.79381a9e.css rel=prefetch><link href=/tauri/css/4e8dcd81.79381a9e.css rel=prefetch><link href=/tauri/js/26b7cbd2.ab56db38.js rel=prefetch><link href=/tauri/js/36a33e16.f0b60e78.js rel=prefetch><link href=/tauri/js/41b4ae5e.3a9b3c65.js rel=prefetch><link href=/tauri/js/4b47640d.487f7fb3.js rel=prefetch><link href=/tauri/js/4e8dcd81.b5cebbed.js rel=prefetch><link href=/tauri/js/bfc1f58c.4d92919e.js rel=prefetch><link href=/tauri/css/app.d8a3568f.css rel=preload as=style><link href=/tauri/js/app.33d68068.js rel=preload as=script><link href=/tauri/js/runtime.5d312108.js rel=preload as=script><link href=/tauri/js/vendor.927dd664.js rel=preload as=script><link href=/tauri/css/app.d8a3568f.css rel=stylesheet><base href=/tauri/ ></head><body><div id=q-app></div><script type=text/javascript src=/tauri/js/app.33d68068.js></script><script type=text/javascript src=/tauri/js/runtime.5d312108.js></script><script type=text/javascript src=/tauri/js/vendor.927dd664.js></script></body></html>

View File

@ -0,0 +1 @@
(window["webpackJsonp"]=window["webpackJsonp"]||[]).push([["26b7cbd2"],{"546f":function(t,e,a){"use strict";var r=a("58c1"),i=a.n(r);i.a},"58c1":function(t,e,a){},"713b":function(t,e,a){"use strict";a.r(e);var r=function(){var t=this,e=t.$createElement,a=t._self._c||e;return a("q-layout",{attrs:{view:"HHh LpR fFf"}},[a("q-header",{attrs:{elevated:""}},[a("q-toolbar",[a("q-btn",{attrs:{flat:"",dense:"",round:"","aria-label":"Menu"},on:{click:function(e){t.leftDrawerOpen=!t.leftDrawerOpen}}},[a("q-icon",{attrs:{name:"menu"}})],1),a("q-toolbar-title",[t._v("\n Tauri ")]),a("div",[t._v("Quasar v"+t._s(t.$q.version))]),a("q-btn",{attrs:{flat:"",dense:"",round:"","aria-label":"Table of Contents"},on:{click:function(e){t.rightDrawerOpen=!t.rightDrawerOpen}}},[a("q-icon",{attrs:{name:"menu"}})],1)],1)],1),a("q-drawer",{attrs:{bordered:"","content-style":"background-color: #f8f8ff"},model:{value:t.leftDrawerOpen,callback:function(e){t.leftDrawerOpen=e},expression:"leftDrawerOpen"}},[a("q-list",[a("q-item-label",{attrs:{header:""}},[t._v("Essential Links")]),a("q-item",{attrs:{clickable:"",tag:"a",target:"_blank",href:"https://quasar.dev"}},[a("q-item-section",{attrs:{avatar:""}},[a("q-icon",{attrs:{name:"school"}})],1),a("q-item-section",[a("q-item-label",[t._v("Docs")]),a("q-item-label",{attrs:{caption:""}},[t._v("quasar.dev")])],1)],1),a("q-item",{attrs:{clickable:"",tag:"a",target:"_blank",href:"https://github.quasar.dev"}},[a("q-item-section",{attrs:{avatar:""}},[a("q-icon",{attrs:{name:"code"}})],1),a("q-item-section",[a("q-item-label",[t._v("Github")]),a("q-item-label",{attrs:{caption:""}},[t._v("github.com/quasarframework")])],1)],1),a("q-item",{attrs:{clickable:"",tag:"a",target:"_blank",href:"https://chat.quasar.dev"}},[a("q-item-section",{attrs:{avatar:""}},[a("q-icon",{attrs:{name:"chat"}})],1),a("q-item-section",[a("q-item-label",[t._v("Discord Chat Channel")]),a("q-item-label",{attrs:{caption:""}},[t._v("chat.quasar.dev")])],1)],1),a("q-item",{attrs:{clickable:"",tag:"a",target:"_blank",href:"https://forum.quasar.dev"}},[a("q-item-section",{attrs:{avatar:""}},[a("q-icon",{attrs:{name:"record_voice_over"}})],1),a("q-item-section",[a("q-item-label",[t._v("Forum")]),a("q-item-label",{attrs:{caption:""}},[t._v("forum.quasar.dev")])],1)],1),a("q-item",{attrs:{clickable:"",tag:"a",target:"_blank",href:"https://twitter.quasar.dev"}},[a("q-item-section",{attrs:{avatar:""}},[a("q-icon",{attrs:{name:"rss_feed"}})],1),a("q-item-section",[a("q-item-label",[t._v("Twitter")]),a("q-item-label",{attrs:{caption:""}},[t._v("@quasarframework")])],1)],1),a("q-item",{attrs:{clickable:"",tag:"a",target:"_blank",href:"https://facebook.quasar.dev"}},[a("q-item-section",{attrs:{avatar:""}},[a("q-icon",{attrs:{name:"public"}})],1),a("q-item-section",[a("q-item-label",[t._v("Facebook")]),a("q-item-label",{attrs:{caption:""}},[t._v("@QuasarFramework")])],1)],1)],1)],1),a("q-drawer",{attrs:{side:"right",bordered:"","content-style":"background-color: #f8f8ff"},model:{value:t.rightDrawerOpen,callback:function(e){t.rightDrawerOpen=e},expression:"rightDrawerOpen"}},[a("q-scroll-area",{staticClass:"fit"},[a("q-list",{attrs:{dense:""}},t._l(t.toc,function(e){return a("q-item",{directives:[{name:"ripple",rawName:"v-ripple"}],key:e.id,attrs:{clickable:"",dense:"",active:t.activeToc===e.id},on:{click:function(a){return t.scrollTo(e.id)}}},[e.level>1?a("q-item-section",{attrs:{side:""}},[t._v(" • ")]):t._e(),a("q-item-section",{class:"toc-item toc-level-"+e.level},[t._v(t._s(e.label))])],1)}),1)],1)],1),a("q-page-container",[a("router-view")],1)],1)},i=[],n=(a("8e6e"),a("8a81"),a("ac6a"),a("cadf"),a("06db"),a("456d"),a("c47a")),o=a.n(n),c=a("2f62"),s=a("0831");function l(t,e){var a=Object.keys(t);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(t);e&&(r=r.filter(function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable})),a.push.apply(a,r)}return a}function u(t){for(var e=1;e<arguments.length;e++){var a=null!=arguments[e]?arguments[e]:{};e%2?l(a,!0).forEach(function(e){o()(t,e,a[e])}):Object.getOwnPropertyDescriptors?Object.defineProperties(t,Object.getOwnPropertyDescriptors(a)):l(a).forEach(function(e){Object.defineProperty(t,e,Object.getOwnPropertyDescriptor(a,e))})}return t}var m={name:"MainLayout",data:function(){return{leftDrawerOpen:this.$q.platform.is.desktop,rightDrawerOpen:this.$q.platform.is.desktop,activeToc:0}},computed:u({},Object(c["b"])({toc:"common/toc"})),mounted:function(){var t=this;if(""!==location.hash){var e=location.hash.substring(1,location.hash.length);setTimeout(function(){t.scrollTo(e)},200)}},methods:{scrollTo:function(t){this.activeToc=t;var e=document.getElementById(t);e&&this.scrollPage(e)},scrollPage:function(t){var e=t.offsetTop-50;s["a"].setScrollPosition(window,e,500)}}},f=m,b=(a("546f"),a("2877")),q=Object(b["a"])(f,r,i,!1,null,null,null);e["default"]=q.exports}}]);

File diff suppressed because one or more lines are too long

View File

@ -0,0 +1 @@
(window["webpackJsonp"]=window["webpackJsonp"]||[]).push([["41b4ae5e"],{"515a":function(e,n,a){},"76d6":function(e,n,a){"use strict";a.r(n);var t=function(){var e=this,n=e.$createElement;e._self._c;return e._m(0)},r=[function(){var e=this,n=e.$createElement,a=e._self._c||n;return a("div",{staticClass:"q-pa-md"},[a("p",[e._v("You can put any regular Vue code (SFC) into one of these files.")]),a("p",[e._v("It will be displayed as an example.")])])}],s={data:function(){return{var1:10,var2:"string"}}},u=s,i=(a("a445"),a("2877")),c=Object(i["a"])(u,t,r,!1,null,null,null);n["default"]=c.exports},a445:function(e,n,a){"use strict";var t=a("515a"),r=a.n(t);r.a}}]);

File diff suppressed because one or more lines are too long

View File

@ -0,0 +1 @@
(window["webpackJsonp"]=window["webpackJsonp"]||[]).push([["4e8dcd81"],{"153d":function(e,t,a){"use strict";var n=a("64e9"),s=a.n(n);s.a},"1be3":function(e,t,a){"use strict";a.r(t);var n=function(){var e=this,t=e.$createElement;e._self._c;return e._m(0)},s=[function(){var e=this,t=e.$createElement,a=e._self._c||t;return a("div",{staticClass:"q-pa-md"},[a("p",[e._v("You can put any regular Vue code (SFC) into one of these files.")]),a("p",[e._v("It will be displayed as an example.")]),a("p",[e._v("template, script, and css will be separated out into 3 parts and each will have a tab.")])])}],r={data:function(){return{var1:10,var2:"string"}}},i=r,l=(a("153d"),a("2877")),c=Object(l["a"])(i,n,s,!1,null,null,null);t["default"]=c.exports},"64e9":function(e,t,a){}}]);

1
docs/js/app.33d68068.js Normal file
View File

@ -0,0 +1 @@
(window["webpackJsonp"]=window["webpackJsonp"]||[]).push([["app"],{0:function(e,t,n){e.exports=n("2f39")},"018e":function(e,t){},"2f39":function(e,t,n){"use strict";n.r(t);var r={};n.r(r),n.d(r,"titlebarHeight",function(){return F}),n.d(r,"toc",function(){return M});var a={};n.r(a),n.d(a,"titlebarHeight",function(){return R}),n.d(a,"toc",function(){return z});var o=n("967e"),c=n.n(o),u=(n("96cf"),n("fa84")),i=n.n(u),f=(n("5c7d"),n("7d6e"),n("e54f"),n("62f2"),n("7e6d"),n("d5b2"),n("2913"),n("b7f2"),n("5503"),n("e191"),n("2cd3"),n("2b0e")),s=n("b05d"),p=n("f09f"),b=n("54b4"),l=n("4d5a"),d=n("9898"),h=n("f2cc"),v=n("c7a0"),m=n("2ea3"),Q=n("65c6"),g=n("6ac5"),w=n("9c40"),x=n("0016"),j=n("497d"),y=n("6ab5"),k=n("033f"),T=n("e208"),H=n("5096"),I=n("4983"),O=n("eb85"),P=n("429b"),S=n("7460"),C=n("adad"),E=n("823b"),L=n("714f"),_=n("2a19");f["a"].use(s["a"],{config:{},components:{QCard:p["a"],QExpansionItem:b["a"],QLayout:l["a"],QHeader:d["a"],QDrawer:h["a"],QPageContainer:v["a"],QPage:m["a"],QToolbar:Q["a"],QToolbarTitle:g["a"],QBtn:w["a"],QIcon:x["a"],QList:j["a"],QItem:y["a"],QItemSection:k["a"],QItemLabel:T["a"],QPageScroller:H["a"],QScrollArea:I["a"],QSeparator:O["a"],QTabs:P["a"],QTab:S["a"],QTabPanels:C["a"],QTabPanel:E["a"]},directives:{Ripple:L["a"]},plugins:{Notify:_["a"]}});var D=function(){var e=this,t=e.$createElement,n=e._self._c||t;return n("div",{attrs:{id:"q-app"}},[n("router-view")],1)},N=[],V={name:"App"},q=V,A=n("2877"),B=Object(A["a"])(q,D,N,!1,null,null,null),J=B.exports,U=n("2f62"),$={titlebarHeight:0,toc:[]},F=function(e){return e.titlebarHeight},M=function(e){return e.toc},R=function(e,t){e.titlebarHeight=t},z=function(e,t){e.toc=t},G=n("018e"),K={namespaced:!0,state:$,getters:r,mutations:a,actions:G};f["a"].use(U["a"]);var W=function(){var e=new U["a"].Store({modules:{common:K},strict:!1});return e},X=n("8c4f"),Y=[{path:"/",redirect:"/docs"},{path:"/docs",component:function(){return n.e("26b7cbd2").then(n.bind(null,"713b"))},children:[{path:"",component:function(){return n.e("bfc1f58c").then(n.bind(null,"8b24"))}}]},{path:"/examples",component:function(){return n.e("26b7cbd2").then(n.bind(null,"713b"))},children:[{path:"",component:function(){return n.e("36a33e16").then(n.bind(null,"0960"))}}]}];Y.push({path:"*",component:function(){return n.e("4b47640d").then(n.bind(null,"e51e"))}});var Z=Y;f["a"].use(X["a"]);var ee=function(){var e=new X["a"]({scrollBehavior:function(){return{x:0,y:0}},routes:Z,mode:"history",base:"/tauri/"});return e},te=function(){var e="function"===typeof W?W({Vue:f["a"]}):W,t="function"===typeof ee?ee({Vue:f["a"],store:e}):ee;e.$router=t;var n={el:"#q-app",router:t,store:e,render:function(e){return e(J)}};return{app:n,store:e,router:t}},ne=n("2330"),re=n("030f"),ae=n("b692"),oe=te(),ce=oe.app,ue=oe.store,ie=oe.router;function fe(){return se.apply(this,arguments)}function se(){return se=i()(c.a.mark(function e(){var t,n;return c.a.wrap(function(e){while(1)switch(e.prev=e.next){case 0:t=[ne["a"],re["a"],ae["a"]],n=0;case 2:if(!(n<t.length)){e.next=20;break}if("function"===typeof t[n]){e.next=5;break}return e.abrupt("continue",17);case 5:return e.prev=5,e.next=8,t[n]({app:ce,router:ie,store:ue,Vue:f["a"],ssrContext:null});case 8:e.next=17;break;case 10:if(e.prev=10,e.t0=e["catch"](5),!e.t0||!e.t0.url){e.next=15;break}return window.location.href=e.t0.url,e.abrupt("return");case 15:return console.error("[Quasar] boot error:",e.t0),e.abrupt("return");case 17:n++,e.next=2;break;case 20:new f["a"](ce);case 21:case"end":return e.stop()}},e,null,[[5,10]])})),se.apply(this,arguments)}fe()},"7e6d":function(e,t,n){},cd50:function(e,t,n){var r={"./bmp":"0dcc","./bmp.js":"0dcc","./gif":"c416","./gif.js":"c416","./jpg":"135b","./jpg.js":"135b","./png":"e9ef","./png.js":"e9ef","./psd":"520c","./psd.js":"520c","./svg":"b0bf","./svg.js":"b0bf","./tiff":"f270","./tiff.js":"f270","./webp":"cf1e","./webp.js":"cf1e"};function a(e){var t=o(e);return n(t)}function o(e){if(!n.o(r,e)){var t=new Error("Cannot find module '"+e+"'");throw t.code="MODULE_NOT_FOUND",t}return r[e]}a.keys=function(){return Object.keys(r)},a.resolve=o,e.exports=a,a.id="cd50"}},[[0,"runtime","vendor"]]]);

File diff suppressed because one or more lines are too long

View File

@ -0,0 +1 @@
(function(e){function t(t){for(var n,o,c=t[0],i=t[1],f=t[2],l=0,d=[];l<c.length;l++)o=c[l],a[o]&&d.push(a[o][0]),a[o]=0;for(n in i)Object.prototype.hasOwnProperty.call(i,n)&&(e[n]=i[n]);s&&s(t);while(d.length)d.shift()();return u.push.apply(u,f||[]),r()}function r(){for(var e,t=0;t<u.length;t++){for(var r=u[t],n=!0,o=1;o<r.length;o++){var c=r[o];0!==a[c]&&(n=!1)}n&&(u.splice(t--,1),e=i(i.s=r[0]))}return e}var n={},o={runtime:0},a={runtime:0},u=[];function c(e){return i.p+"js/"+({}[e]||e)+"."+{"26b7cbd2":"ab56db38","36a33e16":"f0b60e78","4b47640d":"487f7fb3",bfc1f58c:"4d92919e","41b4ae5e":"3a9b3c65","4e8dcd81":"b5cebbed"}[e]+".js"}function i(t){if(n[t])return n[t].exports;var r=n[t]={i:t,l:!1,exports:{}};return e[t].call(r.exports,r,r.exports,i),r.l=!0,r.exports}i.e=function(e){var t=[],r={"26b7cbd2":1,"41b4ae5e":1,"4e8dcd81":1};o[e]?t.push(o[e]):0!==o[e]&&r[e]&&t.push(o[e]=new Promise(function(t,r){for(var n="css/"+({}[e]||e)+"."+{"26b7cbd2":"97bb784a","36a33e16":"31d6cfe0","4b47640d":"31d6cfe0",bfc1f58c:"31d6cfe0","41b4ae5e":"79381a9e","4e8dcd81":"79381a9e"}[e]+".css",a=i.p+n,u=document.getElementsByTagName("link"),c=0;c<u.length;c++){var f=u[c],l=f.getAttribute("data-href")||f.getAttribute("href");if("stylesheet"===f.rel&&(l===n||l===a))return t()}var d=document.getElementsByTagName("style");for(c=0;c<d.length;c++){f=d[c],l=f.getAttribute("data-href");if(l===n||l===a)return t()}var s=document.createElement("link");s.rel="stylesheet",s.type="text/css",s.onload=t,s.onerror=function(t){var n=t&&t.target&&t.target.src||a,u=new Error("Loading CSS chunk "+e+" failed.\n("+n+")");u.code="CSS_CHUNK_LOAD_FAILED",u.request=n,delete o[e],s.parentNode.removeChild(s),r(u)},s.href=a;var p=document.getElementsByTagName("head")[0];p.appendChild(s)}).then(function(){o[e]=0}));var n=a[e];if(0!==n)if(n)t.push(n[2]);else{var u=new Promise(function(t,r){n=a[e]=[t,r]});t.push(n[2]=u);var f,l=document.createElement("script");l.charset="utf-8",l.timeout=120,i.nc&&l.setAttribute("nonce",i.nc),l.src=c(e);var d=new Error;f=function(t){l.onerror=l.onload=null,clearTimeout(s);var r=a[e];if(0!==r){if(r){var n=t&&("load"===t.type?"missing":t.type),o=t&&t.target&&t.target.src;d.message="Loading chunk "+e+" failed.\n("+n+": "+o+")",d.name="ChunkLoadError",d.type=n,d.request=o,r[1](d)}a[e]=void 0}};var s=setTimeout(function(){f({type:"timeout",target:l})},12e4);l.onerror=l.onload=f,document.head.appendChild(l)}return Promise.all(t)},i.m=e,i.c=n,i.d=function(e,t,r){i.o(e,t)||Object.defineProperty(e,t,{enumerable:!0,get:r})},i.r=function(e){"undefined"!==typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},i.t=function(e,t){if(1&t&&(e=i(e)),8&t)return e;if(4&t&&"object"===typeof e&&e&&e.__esModule)return e;var r=Object.create(null);if(i.r(r),Object.defineProperty(r,"default",{enumerable:!0,value:e}),2&t&&"string"!=typeof e)for(var n in e)i.d(r,n,function(t){return e[t]}.bind(null,n));return r},i.n=function(e){var t=e&&e.__esModule?function(){return e["default"]}:function(){return e};return i.d(t,"a",t),t},i.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},i.p="/tauri/",i.oe=function(e){throw console.error(e),e};var f=window["webpackJsonp"]=window["webpackJsonp"]||[],l=f.push.bind(f);f.push=t,f=f.slice();for(var d=0;d<f.length;d++)t(f[d]);var s=l;r()})([]);

File diff suppressed because one or more lines are too long

Binary file not shown.

After

Width:  |  Height:  |  Size: 9.0 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 8.2 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 10 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 12 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 13 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 700 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.8 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 6.5 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 5.1 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 9.0 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 14 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 18 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 28 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 39 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 10 KiB

View File

@ -0,0 +1 @@
<svg xmlns="http://www.w3.org/2000/svg" width="1240" height="1240"><path d="M585.5 119.157c-24.392 1.775-55.454 6.582-80.743 12.495l-10.743 2.512-.257 65.522-.257 65.523-12.5 4.911c-24.453 9.608-54.301 25.574-75.692 40.488-14.402 10.041-29.52 22.393-29.025 23.713.243.648 1.692 5.443 3.22 10.655 11.868 40.48 32.267 84.639 55.173 119.442l8.503 12.917 6.683-12.417c23.502-43.672 46.807-74.722 84.066-112.002 25.738-25.754 47.825-44.173 78.072-65.109 33.386-23.108 77-46.934 117.761-64.332l16.261-6.94-.261-40.974-.261-40.973-4.5-1.319c-8.958-2.625-43.862-9.169-59.5-11.155-31.749-4.032-66.513-5.102-96-2.957M734.906 277.25c-22.472 24.627-42.334 51.05-58.443 77.75-5.099 8.45-21.464 39.014-21.462 40.083 0 .229 14.287.445 31.75.479 33.627.065 45.612 1.017 75.303 5.978 85.759 14.331 172.63 53.33 254.813 114.394l15.221 11.31 25.706-14.808c14.138-8.144 30.112-17.312 35.497-20.372l9.79-5.564-.61-3.5c-1.096-6.29-14.149-44.185-19.977-58-17.139-40.622-35.248-72.077-61.599-107-11.686-15.488-30.818-37.844-39.039-45.62l-4.356-4.119-55 31.858c-30.25 17.522-55.747 32.106-56.66 32.408-1.079.358-4.75-1.93-10.5-6.543-20.084-16.116-40.545-29.274-64.607-41.547C777.601 277.739 748.585 265 746.461 265c-.207 0-5.407 5.512-11.555 12.25m-483.911 2.889c-52.729 57.452-89.592 121.745-111.254 194.044l-3.501 11.683 56.707 32.735 56.706 32.734-1.326 7.583c-4.069 23.272-5.894 57.248-4.381 81.582.926 14.898 4.591 46.254 5.526 47.28.898.986 34.289 8.122 48.028 10.264 28.958 4.515 64.488 6.499 90.867 5.074 10.377-.56 19.07-1.222 19.319-1.471.248-.248-2.035-4.306-5.074-9.017-37.96-58.843-62.879-131.564-72.005-210.13-3.219-27.711-3.869-43.866-3.307-82.149.534-36.338 1.631-53.441 5.12-79.832.798-6.039 1.368-11.04 1.266-11.112-.102-.073-15.261-8.815-33.686-19.427-18.425-10.613-34.464-19.919-35.642-20.682-2.027-1.312-2.739-.735-13.363 10.841M606.5 522.653c-25.669 4.073-49.712 18.357-64.437 38.283-12.956 17.531-18.769 33.768-19.713 55.064-1.087 24.502 5.901 45.6 21.676 65.452 13.091 16.473 32.315 28.634 53.974 34.141 10.222 2.599 34.507 2.629 44 .054 24.469-6.637 42.328-18.418 56.253-37.107 8.576-11.511 13.261-21.347 17.403-36.54 2.782-10.202 2.502-34.762-.523-46-4.654-17.286-13.403-32.422-26.057-45.076-18.639-18.639-40.322-27.911-66.576-28.47-7.15-.152-14.35-.062-16 .199m243.676 14.396c-9.529.421-17.487.928-17.685 1.126-.198.198 3.43 6.427 8.061 13.843 9.872 15.805 25.076 45.255 32.515 62.982 17.89 42.628 30.726 92.267 36.33 140.5 5.776 49.707 5.41 110.661-.955 158.936-.793 6.015-1.442 12.144-1.442 13.62 0 2.476 2.712 4.248 35.027 22.888 19.264 11.113 35.44 20.059 35.946 19.88.506-.178 5.205-4.957 10.444-10.619 40.968-44.285 71.417-91.321 94.113-145.385 7.518-17.906 21.003-57.989 20.208-60.062-.302-.785-25.229-15.681-55.393-33.103-30.165-17.421-55.37-32.011-56.011-32.422-.843-.54-.908-2.132-.233-5.74 6.158-32.924 6.854-78.418 1.771-115.688l-2.141-15.695-10.616-2.49c-29.261-6.862-56.983-10.974-81.615-12.105-25.026-1.149-31.483-1.212-48.324-.466M173.193 732.877c-18.869 10.91-34.771 20.301-35.338 20.868-.708.708.416 5.685 3.59 15.893 22.372 71.955 57.534 133.26 108.468 189.112 6.144 6.737 11.715 12.235 12.379 12.217.665-.019 26.402-14.607 57.195-32.419l55.987-32.386 5.013 4.231c28.719 24.239 69.849 48.122 106.705 61.961l6.691 2.512 11.972-13.183c14.282-15.727 20.74-23.512 31.675-38.183 15.78-21.171 34.174-51.134 42.972-70l4.197-9-32.6-.072c-33.662-.073-44.236-.877-72.599-5.517-52.086-8.52-104.017-26.026-157-52.926-34.47-17.5-69.941-39.589-100.682-62.699-7.525-5.657-13.825-10.277-14-10.266-.175.011-15.756 8.946-34.625 19.857M791.52 772.25c-22.058 42.207-48.977 78.371-85.449 114.795-38.124 38.072-77.236 67.416-127.546 95.69-17.969 10.099-51.743 26.686-70.775 34.76l-13.75 5.834v82.327l13.75 3.194c23.233 5.395 43.059 8.689 68.25 11.336 16.09 1.691 73.361 1.705 89 .021 25.772-2.774 47.439-6.375 68.25-11.344l12.75-3.045V974.95l2.75-1.001c20.982-7.643 52.157-22.755 69.847-33.859 18.882-11.852 45.274-31.559 45.357-33.868.102-2.831-15.119-46.644-20.841-59.99-7.171-16.726-16.651-35.878-24.655-49.808-6.712-11.68-20.708-33.401-21.531-33.415-.315-.005-2.748 4.154-5.407 9.241" fill="#42a5f5" fill-rule="evenodd"/></svg>

After

Width:  |  Height:  |  Size: 4.0 KiB