xqlint string constructor
This commit is contained in:
parent
0b87640f57
commit
2cdc2c50c1
13 changed files with 11753 additions and 11396 deletions
|
@ -1,5 +1,5 @@
|
||||||
WARNING=DO NOT MODIFY THIS FILE IF YOU DON'T UNDERSTAND
|
WARNING=DO NOT MODIFY THIS FILE IF YOU DON'T UNDERSTAND
|
||||||
defaultDestination=C\:/Users/andy/Desktop/basex.865/webapp
|
defaultDestination=C\:/Users/andy/Desktop/basex.9b/webapp
|
||||||
defaultVariables=
|
defaultVariables=
|
||||||
eclipse.preferences.version=1
|
eclipse.preferences.version=1
|
||||||
includeTeamPrivateFiles=false
|
includeTeamPrivateFiles=false
|
||||||
|
|
|
@ -64,16 +64,21 @@
|
||||||
</namespace>
|
</namespace>
|
||||||
|
|
||||||
<namespace uri="http://www.opengis.net/kml/2.2" prefix="kml">
|
<namespace uri="http://www.opengis.net/kml/2.2" prefix="kml">
|
||||||
<description>Geo
|
<description>Geo
|
||||||
</description>
|
</description>
|
||||||
</namespace>
|
</namespace>
|
||||||
|
|
||||||
<namespace uri="http://www.w3.org/ns/xproc" prefix="xproc">
|
<namespace uri="http://www.w3.org/ns/xproc" prefix="xproc">
|
||||||
<description>XProc
|
<description>XProc
|
||||||
</description>
|
</description>
|
||||||
</namespace>
|
</namespace>
|
||||||
<namespace uri="http://www.w3.org/ns/xproc-step" prefix="c">
|
<namespace uri="http://www.w3.org/ns/xproc-step" prefix="c">
|
||||||
<description>XProc step
|
<description>XProc step
|
||||||
</description>
|
</description>
|
||||||
</namespace>
|
</namespace>
|
||||||
|
|
||||||
|
<namespace uri="http://www.w3.org/ns/xproc-step" prefix="pkg">
|
||||||
|
<description>EXpath packaging
|
||||||
|
</description>
|
||||||
|
</namespace>
|
||||||
</namespaces>
|
</namespaces>
|
|
@ -58,7 +58,7 @@ as element(json)
|
||||||
{for $f in $items/*
|
{for $f in $items/*
|
||||||
order by $f/@name/lower-case(.)
|
order by $f/@name/lower-case(.)
|
||||||
return <_ type="object">
|
return <_ type="object">
|
||||||
{vue-api:details($f,"folder")}
|
{vue-api:details($f=>trace("foo"),"folder")}
|
||||||
</_>
|
</_>
|
||||||
}
|
}
|
||||||
</items>
|
</items>
|
||||||
|
@ -73,7 +73,7 @@ as element(*)*
|
||||||
,<modified>{$f/@last-modified/string()}</modified>
|
,<modified>{$f/@last-modified/string()}</modified>
|
||||||
,<size type="number">{$f/@size/string()}</size>
|
,<size type="number">{$f/@size/string()}</size>
|
||||||
,<selected type="boolean">false</selected>
|
,<selected type="boolean">false</selected>
|
||||||
,<mime>unknown</mime>
|
,<mime>{$f/@content-type/string()}</mime>
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
||||||
|
|
|
@ -8,6 +8,11 @@
|
||||||
<v-btn icon :to="{query: { url: '/' }}">
|
<v-btn icon :to="{query: { url: '/' }}">
|
||||||
<v-icon >{{icon}}</v-icon>
|
<v-icon >{{icon}}</v-icon>
|
||||||
</v-btn>
|
</v-btn>
|
||||||
|
|
||||||
|
<v-btn icon @click="load()">
|
||||||
|
<v-icon>refresh</v-icon>
|
||||||
|
</v-btn>
|
||||||
|
|
||||||
<v-toolbar-title>
|
<v-toolbar-title>
|
||||||
<v-breadcrumbs>
|
<v-breadcrumbs>
|
||||||
<v-breadcrumbs-item v-for="item in crumbs" :key="item.path"
|
<v-breadcrumbs-item v-for="item in crumbs" :key="item.path"
|
||||||
|
@ -34,12 +39,15 @@
|
||||||
</v-btn>
|
</v-btn>
|
||||||
</v-toolbar-items>
|
</v-toolbar-items>
|
||||||
|
|
||||||
<v-toolbar-items v-if="selection.length">
|
|
||||||
<v-btn icon v-for="b in selopts" :key="b.icon" @click="action(b)">
|
|
||||||
<v-icon v-text="b.icon"></v-icon>
|
|
||||||
</v-btn>
|
|
||||||
|
|
||||||
</v-toolbar-items>
|
|
||||||
|
<v-toolbar-items v-if="selection.length">
|
||||||
|
<v-btn icon v-for="b in selopts" :key="b.icon" @click="action(b)">
|
||||||
|
<v-icon v-text="b.icon"></v-icon>
|
||||||
|
</v-btn>
|
||||||
|
</v-toolbar-items>
|
||||||
|
|
||||||
|
|
||||||
<v-menu offset-y v-if="selection.length">
|
<v-menu offset-y v-if="selection.length">
|
||||||
<v-btn icon slot="activator">
|
<v-btn icon slot="activator">
|
||||||
<v-icon>more_vert</v-icon>
|
<v-icon>more_vert</v-icon>
|
||||||
|
@ -58,6 +66,7 @@
|
||||||
</v-list>
|
</v-list>
|
||||||
</v-menu>
|
</v-menu>
|
||||||
|
|
||||||
|
|
||||||
</v-toolbar>
|
</v-toolbar>
|
||||||
|
|
||||||
<v-layout v-if="!busy">
|
<v-layout v-if="!busy">
|
||||||
|
@ -73,7 +82,10 @@
|
||||||
</v-list-tile-avatar>
|
</v-list-tile-avatar>
|
||||||
<v-list-tile-content >
|
<v-list-tile-content >
|
||||||
<v-list-tile-title>{{ item.name }}</v-list-tile-title>
|
<v-list-tile-title>{{ item.name }}</v-list-tile-title>
|
||||||
<v-list-tile-sub-title>modified: {{ item.modified | formatDate}} size: {{ item.size | readablizeBytes}}</v-list-tile-sub-title>
|
<v-list-tile-sub-title>modified: {{ item.modified | formatDate}}
|
||||||
|
size: {{ item.size | readablizeBytes}}
|
||||||
|
mimetype: {{ item.mime}}
|
||||||
|
</v-list-tile-sub-title>
|
||||||
</v-list-tile-content>
|
</v-list-tile-content>
|
||||||
<v-list-tile-action>
|
<v-list-tile-action>
|
||||||
<v-btn icon @click.stop="info(item)">
|
<v-btn icon @click.stop="info(item)">
|
||||||
|
@ -92,7 +104,10 @@
|
||||||
</v-list-tile-avatar>
|
</v-list-tile-avatar>
|
||||||
<v-list-tile-content @click="file(item.name)">
|
<v-list-tile-content @click="file(item.name)">
|
||||||
<v-list-tile-title >{{ item.name }}</v-list-tile-title>
|
<v-list-tile-title >{{ item.name }}</v-list-tile-title>
|
||||||
<v-list-tile-sub-title>modified: {{item.modified | formatDate}} size: {{item.size|readablizeBytes }}</v-list-tile-sub-title>
|
<v-list-tile-sub-title>modified: {{item.modified | formatDate}},
|
||||||
|
size: {{item.size|readablizeBytes }},
|
||||||
|
mimetype: {{ item.mime}}
|
||||||
|
</v-list-tile-sub-title>
|
||||||
</v-list-tile-content>
|
</v-list-tile-content>
|
||||||
<v-list-tile-action>
|
<v-list-tile-action>
|
||||||
<v-btn icon ripple @click.stop="info(item)">
|
<v-btn icon ripple @click.stop="info(item)">
|
||||||
|
|
|
@ -40,31 +40,31 @@
|
||||||
<v-card class="grey lighten-2 pt-1">
|
<v-card class="grey lighten-2 pt-1">
|
||||||
<v-card-media :src="src(image)" @dblclick="go(image)"
|
<v-card-media :src="src(image)" @dblclick="go(image)"
|
||||||
height="80px" contain>
|
height="80px" contain>
|
||||||
<v-layout align-baseline align-end fill-height>
|
|
||||||
<v-flex >
|
|
||||||
<v-icon class="green--text">check_circle</v-icon>
|
|
||||||
</v-flex>
|
|
||||||
</v-layout>
|
|
||||||
</v-card-media>
|
</v-card-media>
|
||||||
|
|
||||||
<v-card-actions >
|
<v-card-actions >
|
||||||
|
|
||||||
<span v-if="image.keywords >0 ">#{{image.keywords}}</span>
|
|
||||||
<v-btn icon small v-if="image.geo">
|
|
||||||
<v-icon>place</v-icon>
|
|
||||||
</v-btn>
|
|
||||||
<v-spacer></v-spacer>
|
|
||||||
<v-tooltip bottom >
|
<v-tooltip bottom >
|
||||||
<v-btn icon small slot="activator">
|
<v-btn icon small slot="activator">
|
||||||
<v-icon>info</v-icon>
|
<v-icon>info</v-icon>
|
||||||
</v-btn>
|
</v-btn>
|
||||||
<span v-text="image.path"></span>
|
<span v-text="image.path"></span>
|
||||||
</v-tooltip>
|
</v-tooltip>
|
||||||
|
<span v-if="image.keywords >0 ">#{{image.keywords}}</span>
|
||||||
|
<v-btn icon small v-if="image.geo">
|
||||||
|
<v-icon>place</v-icon>
|
||||||
|
</v-btn>
|
||||||
|
<v-spacer></v-spacer>
|
||||||
|
|
||||||
<v-btn icon small @click="selected(image)">
|
<v-btn icon small @click="selected(image)">
|
||||||
<v-icon>share</v-icon>
|
<v-icon>share</v-icon>
|
||||||
</v-btn>
|
</v-btn>
|
||||||
</v-card-actions>
|
</v-card-actions>
|
||||||
|
<div style="position:absolute;right:0;top:0" >
|
||||||
|
<v-icon class="white primary--text">check_circle</v-icon>
|
||||||
|
</div
|
||||||
</v-card>
|
</v-card>
|
||||||
</v-flex>
|
</v-flex>
|
||||||
</v-layout>
|
</v-layout>
|
||||||
|
@ -85,7 +85,7 @@
|
||||||
label="Keyword" item-value="text" item-text="text"
|
label="Keyword" item-value="text" item-text="text"
|
||||||
autocomplete clearable
|
autocomplete clearable
|
||||||
>
|
>
|
||||||
<template slot="item" scope="data">
|
<template slot="item" slot-scope="data">
|
||||||
<v-list-tile-content>
|
<v-list-tile-content>
|
||||||
<v-list-tile-title v-html="data.item.text"></v-list-tile-title>
|
<v-list-tile-title v-html="data.item.text"></v-list-tile-title>
|
||||||
<v-list-tile-sub-title v-html="data.item.count"></v-list-tile-sub-title>
|
<v-list-tile-sub-title v-html="data.item.count"></v-list-tile-sub-title>
|
||||||
|
@ -112,7 +112,7 @@
|
||||||
></v-text-field>
|
></v-text-field>
|
||||||
|
|
||||||
<v-date-picker v-model="query.from" scrollable actions>
|
<v-date-picker v-model="query.from" scrollable actions>
|
||||||
<template scope="{ save, cancel }">
|
<template slot-scope="{ save, cancel }">
|
||||||
<v-card-actions>
|
<v-card-actions>
|
||||||
<v-btn flat color="primary" @click="cancel()">Cancel</v-btn>
|
<v-btn flat color="primary" @click="cancel()">Cancel</v-btn>
|
||||||
<v-btn flat color="primary" @click="save()">Save</v-btn>
|
<v-btn flat color="primary" @click="save()">Save</v-btn>
|
||||||
|
@ -142,7 +142,7 @@
|
||||||
></v-text-field>
|
></v-text-field>
|
||||||
|
|
||||||
<v-date-picker v-model="query.until" scrollable actions>
|
<v-date-picker v-model="query.until" scrollable actions>
|
||||||
<template scope="{ save, cancel }">
|
<template slot-scope="{ save, cancel }">
|
||||||
<v-card-actions>
|
<v-card-actions>
|
||||||
<v-btn flat color="primary" @click="cancel()">Cancel</v-btn>
|
<v-btn flat color="primary" @click="cancel()">Cancel</v-btn>
|
||||||
<v-btn flat color="primary" @click="save()">Save</v-btn>
|
<v-btn flat color="primary" @click="save()">Save</v-btn>
|
||||||
|
|
|
@ -142,15 +142,14 @@ as element(*)*
|
||||||
let $id:=$vue-api:entity?access?id($image)
|
let $id:=$vue-api:entity?access?id($image)
|
||||||
let $path:=$vue-api:entity?access?path($image)
|
let $path:=$vue-api:entity?access?path($image)
|
||||||
let $name:=$vue-api:entity?access?name($image)
|
let $name:=$vue-api:entity?access?name($image)
|
||||||
let $geo:=$vue-api:entity?access?geo($image)
|
let $geo:=$vue-api:entity?json?geo($image)
|
||||||
let $keywords:=$vue-api:entity?access?keywords($image)
|
let $keywords:=$vue-api:entity?json?keywords($image)
|
||||||
let $thumb:= $cfg:THUMBDIR || $path
|
let $thumb:= $cfg:THUMBDIR || $path
|
||||||
let $thumb:=if(file:exists($thumb)) then $thumb else $cfg:THUMBDIR || "missing.jpg"
|
let $thumb:=if(file:exists($thumb)) then $thumb else $cfg:THUMBDIR || "missing.jpg"
|
||||||
return ( <id>{$id}</id>
|
return ( <id>{$id}</id>
|
||||||
,<name>{$name}</name>
|
,<name>{$name}</name>
|
||||||
,<path>{$path}</path>
|
,<path>{$path}</path>
|
||||||
,<geo>{$geo}</geo>
|
,$geo,$keywords
|
||||||
,<keywords>{$keywords}</keywords>
|
|
||||||
,<data>{fetch:binary($thumb)}</data>
|
,<data>{fetch:binary($thumb)}</data>
|
||||||
,<mime>{fetch:content-type($thumb)}</mime>)
|
,<mime>{fetch:content-type($thumb)}</mime>)
|
||||||
};
|
};
|
||||||
|
|
|
@ -17,18 +17,19 @@
|
||||||
</v-card-actions>
|
</v-card-actions>
|
||||||
</v-card>
|
</v-card>
|
||||||
|
|
||||||
<v-tabs-bar class="grey lighten-3">
|
<v-tabs-bar class="grey lighten-3" dense>
|
||||||
<v-tabs-item
|
<v-tabs-item
|
||||||
v-for="i in 13"
|
v-for="i in 13"
|
||||||
:key="i"
|
:key="i"
|
||||||
:href="'#mobile-tabs-6-' + i"
|
:href="'#mobile-tabs-6-' + i"
|
||||||
>
|
>
|
||||||
<v-chip label close>
|
|
||||||
|
|
||||||
<v-icon>favorite</v-icon>
|
<v-icon>favorite</v-icon>
|
||||||
|
<span>Item {{ i }} more</span>
|
||||||
Item {{ i }} more
|
<v-spacer></v-spacer>
|
||||||
</v-chip>
|
<v-btn small icon class="grey">
|
||||||
|
<v-icon>close</v-icon>
|
||||||
|
</v-btn>
|
||||||
</v-tabs-item>
|
</v-tabs-item>
|
||||||
<v-tabs-slider class="primary"></v-tabs-slider>
|
<v-tabs-slider class="primary"></v-tabs-slider>
|
||||||
</v-tabs-bar>
|
</v-tabs-bar>
|
||||||
|
|
|
@ -35,26 +35,31 @@ as element(c:directory)
|
||||||
declare function ufile:xmldb($url as xs:string)
|
declare function ufile:xmldb($url as xs:string)
|
||||||
as element(c:directory)
|
as element(c:directory)
|
||||||
{
|
{
|
||||||
<c:directory name="" xml:base="xmldb:/" last-modified="2017-07-01T13:39:38.98691Z" size="4096">{
|
<c:directory name="" xml:base="xmldb:/" last-modified="?" size="?">{
|
||||||
if($url="/") then
|
if($url="/") then
|
||||||
db:list()!
|
db:list()!
|
||||||
<c:directory name="{db:property(.,'name')}"
|
<c:directory name="{db:property(.,'name')}" content-type="text/directory"
|
||||||
last-modified="{db:property(.,'timestamp')}"
|
last-modified="{db:property(.,'timestamp')}"
|
||||||
size="{db:property(.,'size')}"/>
|
size="{db:property(.,'size')}"/>
|
||||||
|
|
||||||
else
|
else
|
||||||
|
let $db:=substring-before(substring($url,2),"/")
|
||||||
|
let $path:=substring($url,2+string-length($db))
|
||||||
let $map:=ufile:collection-next($url)
|
let $map:=ufile:collection-next($url)
|
||||||
for $name in map:keys($map)
|
for $name in map:keys($map)
|
||||||
|
|
||||||
(: db:list-details($db as xs:string, $path as xs:string) as element(resource)* :)
|
(: db:list-details($db as xs:string, $path as xs:string) as element(resource)* :)
|
||||||
return if($map($name)="file") then
|
return if($map($name)="file") then
|
||||||
<c:file name="{$name}" size="0"/>
|
let $x:=db:list-details($db , $path || $name)=>trace("detail")
|
||||||
|
return <c:file name="{$name}" size="0"/>
|
||||||
else
|
else
|
||||||
<c:directory name="{$name}" size="0"/>
|
<c:directory name="{$name}" content-type="text/directory" size="0"/>
|
||||||
}</c:directory>
|
}</c:directory>
|
||||||
};
|
};
|
||||||
|
|
||||||
(:~ return map of next level database contents
|
(:~ return map of next level database contents
|
||||||
:@param $url a database base collection e.g /dbname/fred/
|
:@param $url a database base collection e.g /dbname/fred/
|
||||||
|
:@result keys are names, values are "file" or "directory"
|
||||||
:)
|
:)
|
||||||
declare function ufile:collection-next($url as xs:string)
|
declare function ufile:collection-next($url as xs:string)
|
||||||
as map(*)
|
as map(*)
|
||||||
|
|
|
@ -1,5 +1,5 @@
|
||||||
(:~
|
(:~
|
||||||
: Update `generated/models.xqm` from files in `data/models`
|
: Genrate html xquery documntation
|
||||||
: using file:///C:/Users/andy/workspace/app-doc/src/doc/data/doc/models
|
: using file:///C:/Users/andy/workspace/app-doc/src/doc/data/doc/models
|
||||||
: $efolder:="file:///C:/Users/andy/workspace/app-doc/src/doc/data/doc/models"
|
: $efolder:="file:///C:/Users/andy/workspace/app-doc/src/doc/data/doc/models"
|
||||||
: $target:="file:///C:/Users/andy/workspace/app-doc/src/doc/generated/models.xqm"
|
: $target:="file:///C:/Users/andy/workspace/app-doc/src/doc/generated/models.xqm"
|
||||||
|
@ -40,13 +40,14 @@ declare function xqd:gendoc(
|
||||||
$params as map(*)
|
$params as map(*)
|
||||||
)
|
)
|
||||||
{
|
{
|
||||||
let $target:=file:path-to-native($target)
|
let $_:= if(file:is-dir($target)) then () else file:create-dir($target)
|
||||||
let $ip:=$f/@name/resolve-uri(.,base-uri(.))
|
let $target:= file:path-to-native($target)
|
||||||
let $op:=$f/ancestor-or-self::*/@name=>tail()=>string-join("/")
|
let $ip:= $f/@name/resolve-uri(.,base-uri(.))
|
||||||
let $dest:=file:resolve-path($op,$target)
|
let $op:= $f/ancestor-or-self::*/@name=>tail()=>string-join("/")
|
||||||
|
let $dest:= file:resolve-path($op,$target)
|
||||||
|
|
||||||
let $xqdoc:=xqd:xqdoc($ip,map{})
|
let $xqdoc:= xqd:xqdoc($ip,map{})
|
||||||
let $xq:=fetch:text($ip)
|
let $xq:= fetch:text($ip)
|
||||||
let $params:=map:merge((map{
|
let $params:=map:merge((map{
|
||||||
"source":$xq,
|
"source":$xq,
|
||||||
"filename":$f/@name/string(),
|
"filename":$f/@name/string(),
|
||||||
|
|
File diff suppressed because one or more lines are too long
|
@ -1,4 +1,4 @@
|
||||||
// generated 2017-10-22T22:09:51.205+01:00
|
// generated 2017-10-26T21:35:41.214+01:00
|
||||||
Vue.component('qd-confirm',{template:`
|
Vue.component('qd-confirm',{template:`
|
||||||
<v-dialog v-model="value">
|
<v-dialog v-model="value">
|
||||||
<v-card>
|
<v-card>
|
||||||
|
@ -517,6 +517,11 @@ Vue.filter('round', function(value, decimals) {
|
||||||
<v-btn icon="" :to="{query: { url: '/' }}">
|
<v-btn icon="" :to="{query: { url: '/' }}">
|
||||||
<v-icon>{{icon}}</v-icon>
|
<v-icon>{{icon}}</v-icon>
|
||||||
</v-btn>
|
</v-btn>
|
||||||
|
|
||||||
|
<v-btn icon="" @click="load()">
|
||||||
|
<v-icon>refresh</v-icon>
|
||||||
|
</v-btn>
|
||||||
|
|
||||||
<v-toolbar-title>
|
<v-toolbar-title>
|
||||||
<v-breadcrumbs>
|
<v-breadcrumbs>
|
||||||
<v-breadcrumbs-item v-for="item in crumbs" :key="item.path" :to="{ query: { url: item.path }}" :exact="true">
|
<v-breadcrumbs-item v-for="item in crumbs" :key="item.path" :to="{ query: { url: item.path }}" :exact="true">
|
||||||
|
@ -540,12 +545,15 @@ Vue.filter('round', function(value, decimals) {
|
||||||
</v-btn>
|
</v-btn>
|
||||||
</v-toolbar-items>
|
</v-toolbar-items>
|
||||||
|
|
||||||
<v-toolbar-items v-if="selection.length">
|
|
||||||
<v-btn icon="" v-for="b in selopts" :key="b.icon" @click="action(b)">
|
|
||||||
<v-icon v-text="b.icon"></v-icon>
|
|
||||||
</v-btn>
|
|
||||||
|
|
||||||
</v-toolbar-items>
|
|
||||||
|
<v-toolbar-items v-if="selection.length">
|
||||||
|
<v-btn icon="" v-for="b in selopts" :key="b.icon" @click="action(b)">
|
||||||
|
<v-icon v-text="b.icon"></v-icon>
|
||||||
|
</v-btn>
|
||||||
|
</v-toolbar-items>
|
||||||
|
|
||||||
|
|
||||||
<v-menu offset-y="" v-if="selection.length">
|
<v-menu offset-y="" v-if="selection.length">
|
||||||
<v-btn icon="" slot="activator">
|
<v-btn icon="" slot="activator">
|
||||||
<v-icon>more_vert</v-icon>
|
<v-icon>more_vert</v-icon>
|
||||||
|
@ -564,6 +572,7 @@ Vue.filter('round', function(value, decimals) {
|
||||||
</v-list>
|
</v-list>
|
||||||
</v-menu>
|
</v-menu>
|
||||||
|
|
||||||
|
|
||||||
</v-toolbar>
|
</v-toolbar>
|
||||||
|
|
||||||
<v-layout v-if="!busy">
|
<v-layout v-if="!busy">
|
||||||
|
@ -578,7 +587,10 @@ Vue.filter('round', function(value, decimals) {
|
||||||
</v-list-tile-avatar>
|
</v-list-tile-avatar>
|
||||||
<v-list-tile-content>
|
<v-list-tile-content>
|
||||||
<v-list-tile-title>{{ item.name }}</v-list-tile-title>
|
<v-list-tile-title>{{ item.name }}</v-list-tile-title>
|
||||||
<v-list-tile-sub-title>modified: {{ item.modified | formatDate}} size: {{ item.size | readablizeBytes}}</v-list-tile-sub-title>
|
<v-list-tile-sub-title>modified: {{ item.modified | formatDate}}
|
||||||
|
size: {{ item.size | readablizeBytes}}
|
||||||
|
mimetype: {{ item.mime}}
|
||||||
|
</v-list-tile-sub-title>
|
||||||
</v-list-tile-content>
|
</v-list-tile-content>
|
||||||
<v-list-tile-action>
|
<v-list-tile-action>
|
||||||
<v-btn icon="" @click.stop="info(item)">
|
<v-btn icon="" @click.stop="info(item)">
|
||||||
|
@ -597,7 +609,10 @@ Vue.filter('round', function(value, decimals) {
|
||||||
</v-list-tile-avatar>
|
</v-list-tile-avatar>
|
||||||
<v-list-tile-content @click="file(item.name)">
|
<v-list-tile-content @click="file(item.name)">
|
||||||
<v-list-tile-title>{{ item.name }}</v-list-tile-title>
|
<v-list-tile-title>{{ item.name }}</v-list-tile-title>
|
||||||
<v-list-tile-sub-title>modified: {{item.modified | formatDate}} size: {{item.size|readablizeBytes }}</v-list-tile-sub-title>
|
<v-list-tile-sub-title>modified: {{item.modified | formatDate}},
|
||||||
|
size: {{item.size|readablizeBytes }},
|
||||||
|
mimetype: {{ item.mime}}
|
||||||
|
</v-list-tile-sub-title>
|
||||||
</v-list-tile-content>
|
</v-list-tile-content>
|
||||||
<v-list-tile-action>
|
<v-list-tile-action>
|
||||||
<v-btn icon="" ripple="" @click.stop="info(item)">
|
<v-btn icon="" ripple="" @click.stop="info(item)">
|
||||||
|
@ -1526,33 +1541,32 @@ Entities
|
||||||
<v-flex height="80px" xs2="" v-for="image in images" :key="image.name">
|
<v-flex height="80px" xs2="" v-for="image in images" :key="image.name">
|
||||||
<v-card class="grey lighten-2 pt-1">
|
<v-card class="grey lighten-2 pt-1">
|
||||||
<v-card-media :src="src(image)" @dblclick="go(image)" height="80px" contain="">
|
<v-card-media :src="src(image)" @dblclick="go(image)" height="80px" contain="">
|
||||||
<v-layout align-baseline="" align-end="" fill-height="">
|
|
||||||
<v-flex>
|
|
||||||
<v-icon class="green--text">check_circle</v-icon>
|
|
||||||
</v-flex>
|
|
||||||
</v-layout>
|
|
||||||
</v-card-media>
|
</v-card-media>
|
||||||
|
|
||||||
<v-card-actions>
|
<v-card-actions>
|
||||||
|
|
||||||
<span v-if="image.keywords >0 ">#{{image.keywords}}</span>
|
|
||||||
<v-btn icon="" small="" v-if="image.geo">
|
|
||||||
<v-icon>place</v-icon>
|
|
||||||
</v-btn>
|
|
||||||
<v-spacer></v-spacer>
|
|
||||||
<v-tooltip bottom="">
|
<v-tooltip bottom="">
|
||||||
<v-btn icon="" small="" slot="activator">
|
<v-btn icon="" small="" slot="activator">
|
||||||
<v-icon>info</v-icon>
|
<v-icon>info</v-icon>
|
||||||
</v-btn>
|
</v-btn>
|
||||||
<span v-text="image.path"></span>
|
<span v-text="image.path"></span>
|
||||||
</v-tooltip>
|
</v-tooltip>
|
||||||
|
<span v-if="image.keywords >0 ">#{{image.keywords}}</span>
|
||||||
|
<v-btn icon="" small="" v-if="image.geo">
|
||||||
|
<v-icon>place</v-icon>
|
||||||
|
</v-btn>
|
||||||
|
<v-spacer></v-spacer>
|
||||||
|
|
||||||
<v-btn icon="" small="" @click="selected(image)">
|
<v-btn icon="" small="" @click="selected(image)">
|
||||||
<v-icon>share</v-icon>
|
<v-icon>share</v-icon>
|
||||||
</v-btn>
|
</v-btn>
|
||||||
</v-card-actions>
|
</v-card-actions>
|
||||||
|
<div style="position:absolute;right:0;top:0">
|
||||||
</v-card>
|
<v-icon class="white primary--text">check_circle</v-icon>
|
||||||
</v-flex>
|
</div>
|
||||||
|
</v-card></v-flex>
|
||||||
</v-layout>
|
</v-layout>
|
||||||
</v-container>
|
</v-container>
|
||||||
|
|
||||||
|
@ -1566,7 +1580,7 @@ Entities
|
||||||
|
|
||||||
<v-card-text>
|
<v-card-text>
|
||||||
<v-select v-bind:items="keywords" v-model="query.keyword" label="Keyword" item-value="text" item-text="text" autocomplete="" clearable="">
|
<v-select v-bind:items="keywords" v-model="query.keyword" label="Keyword" item-value="text" item-text="text" autocomplete="" clearable="">
|
||||||
<template slot="item" scope="data">
|
<template slot="item" slot-scope="data">
|
||||||
<v-list-tile-content>
|
<v-list-tile-content>
|
||||||
<v-list-tile-title v-html="data.item.text"></v-list-tile-title>
|
<v-list-tile-title v-html="data.item.text"></v-list-tile-title>
|
||||||
<v-list-tile-sub-title v-html="data.item.count"></v-list-tile-sub-title>
|
<v-list-tile-sub-title v-html="data.item.count"></v-list-tile-sub-title>
|
||||||
|
@ -1578,7 +1592,7 @@ Entities
|
||||||
<v-text-field slot="activator" label="Earliest date" v-model="query.from" prepend-icon="event" readonly=""></v-text-field>
|
<v-text-field slot="activator" label="Earliest date" v-model="query.from" prepend-icon="event" readonly=""></v-text-field>
|
||||||
|
|
||||||
<v-date-picker v-model="query.from" scrollable="" actions="">
|
<v-date-picker v-model="query.from" scrollable="" actions="">
|
||||||
<template scope="{ save, cancel }">
|
<template slot-scope="{ save, cancel }">
|
||||||
<v-card-actions>
|
<v-card-actions>
|
||||||
<v-btn flat="" color="primary" @click="cancel()">Cancel</v-btn>
|
<v-btn flat="" color="primary" @click="cancel()">Cancel</v-btn>
|
||||||
<v-btn flat="" color="primary" @click="save()">Save</v-btn>
|
<v-btn flat="" color="primary" @click="save()">Save</v-btn>
|
||||||
|
@ -1593,7 +1607,7 @@ Entities
|
||||||
<v-text-field slot="activator" label="Latest date" v-model="query.until" prepend-icon="event" readonly=""></v-text-field>
|
<v-text-field slot="activator" label="Latest date" v-model="query.until" prepend-icon="event" readonly=""></v-text-field>
|
||||||
|
|
||||||
<v-date-picker v-model="query.until" scrollable="" actions="">
|
<v-date-picker v-model="query.until" scrollable="" actions="">
|
||||||
<template scope="{ save, cancel }">
|
<template slot-scope="{ save, cancel }">
|
||||||
<v-card-actions>
|
<v-card-actions>
|
||||||
<v-btn flat="" color="primary" @click="cancel()">Cancel</v-btn>
|
<v-btn flat="" color="primary" @click="cancel()">Cancel</v-btn>
|
||||||
<v-btn flat="" color="primary" @click="save()">Save</v-btn>
|
<v-btn flat="" color="primary" @click="save()">Save</v-btn>
|
||||||
|
@ -2835,12 +2849,13 @@ svg
|
||||||
|
|
||||||
<v-tabs-bar class="grey lighten-3">
|
<v-tabs-bar class="grey lighten-3">
|
||||||
<v-tabs-item v-for="i in 13" :key="i" :href="'#mobile-tabs-6-' + i">
|
<v-tabs-item v-for="i in 13" :key="i" :href="'#mobile-tabs-6-' + i">
|
||||||
<v-chip label="" close="">
|
|
||||||
|
|
||||||
<v-icon>favorite</v-icon>
|
<v-icon>favorite</v-icon>
|
||||||
|
<span>Item {{ i }} more</span>
|
||||||
Item {{ i }} more
|
<v-spacer></v-spacer>
|
||||||
</v-chip>
|
<v-btn small="" icon="" class="grey">
|
||||||
|
<v-icon>close</v-icon>
|
||||||
|
</v-btn>
|
||||||
</v-tabs-item>
|
</v-tabs-item>
|
||||||
<v-tabs-slider class="primary"></v-tabs-slider>
|
<v-tabs-slider class="primary"></v-tabs-slider>
|
||||||
</v-tabs-bar>
|
</v-tabs-bar>
|
||||||
|
@ -3588,10 +3603,11 @@ router.beforeEach((to, from, next) => {
|
||||||
</v-btn>
|
</v-btn>
|
||||||
<v-dialog v-model="frmFav">
|
<v-dialog v-model="frmFav">
|
||||||
<v-card>
|
<v-card>
|
||||||
|
<v-toolbar class="amber">
|
||||||
<v-card-title>
|
<v-card-title>
|
||||||
Bookmark
|
Bookmark this page
|
||||||
</v-card-title>
|
</v-card-title>
|
||||||
|
</v-toolbar>
|
||||||
<v-card-text>
|
<v-card-text>
|
||||||
<h6>{{$route.meta.title}}</h6>
|
<h6>{{$route.meta.title}}</h6>
|
||||||
<v-select v-model="tags" label="tags" chips="" tags="" :items="taglist"></v-select>
|
<v-select v-model="tags" label="tags" chips="" tags="" :items="taglist"></v-select>
|
||||||
|
@ -3603,9 +3619,9 @@ router.beforeEach((to, from, next) => {
|
||||||
</v-card>
|
</v-card>
|
||||||
</v-dialog>
|
</v-dialog>
|
||||||
<v-spacer></v-spacer>
|
<v-spacer></v-spacer>
|
||||||
|
<v-text-field prepend-icon="search" label="Search..." v-model="q" hide-details="" single-line="" dark="" @keyup.enter="search"></v-text-field>
|
||||||
<v-spacer></v-spacer>
|
<v-spacer></v-spacer>
|
||||||
<v-text-field prepend-icon="search" label="Search..." v-model="q" hide-details="" single-line="" dark="" @keyup.enter="search"></v-text-field>
|
|
||||||
<v-menu left="" transition="v-fade-transition">
|
<v-menu left="" transition="v-fade-transition">
|
||||||
<v-btn dark="" icon="" slot="activator">
|
<v-btn dark="" icon="" slot="activator">
|
||||||
{{$auth.user}}
|
{{$auth.user}}
|
||||||
|
|
|
@ -37,8 +37,8 @@
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<script src="https://cdnjs.cloudflare.com/ajax/libs/vue/2.4.4/vue.js"></script>
|
<script src="https://cdnjs.cloudflare.com/ajax/libs/vue/2.5.2/vue.js"></script>
|
||||||
<script src="https://cdnjs.cloudflare.com/ajax/libs/vue-router/2.7.0/vue-router.js"></script>
|
<script src="https://cdnjs.cloudflare.com/ajax/libs/vue-router/3.0.1/vue-router.js"></script>
|
||||||
<script src="https://cdnjs.cloudflare.com/ajax/libs/axios/0.16.1/axios.js"></script>
|
<script src="https://cdnjs.cloudflare.com/ajax/libs/axios/0.16.1/axios.js"></script>
|
||||||
<script src="https://cdnjs.cloudflare.com/ajax/libs/qs/6.4.0/qs.js"></script>
|
<script src="https://cdnjs.cloudflare.com/ajax/libs/qs/6.4.0/qs.js"></script>
|
||||||
<script src="https://unpkg.com/vuetify@0.16.9/dist/vuetify.min.js"></script>
|
<script src="https://unpkg.com/vuetify@0.16.9/dist/vuetify.min.js"></script>
|
||||||
|
|
|
@ -52,10 +52,11 @@
|
||||||
</v-btn>
|
</v-btn>
|
||||||
<v-dialog v-model="frmFav">
|
<v-dialog v-model="frmFav">
|
||||||
<v-card>
|
<v-card>
|
||||||
|
<v-toolbar class="amber">
|
||||||
<v-card-title>
|
<v-card-title>
|
||||||
Bookmark
|
Bookmark this page
|
||||||
</v-card-title>
|
</v-card-title>
|
||||||
|
</v-toolbar>
|
||||||
<v-card-text>
|
<v-card-text>
|
||||||
<h6>{{$route.meta.title}}</h6>
|
<h6>{{$route.meta.title}}</h6>
|
||||||
<v-select
|
<v-select
|
||||||
|
@ -73,10 +74,10 @@
|
||||||
</v-card>
|
</v-card>
|
||||||
</v-dialog>
|
</v-dialog>
|
||||||
<v-spacer></v-spacer>
|
<v-spacer></v-spacer>
|
||||||
|
<v-text-field prepend-icon="search" label="Search..." v-model="q"
|
||||||
<v-spacer></v-spacer>
|
|
||||||
<v-text-field prepend-icon="search" label="Search..." v-model="q"
|
|
||||||
hide-details single-line dark @keyup.enter="search"></v-text-field>
|
hide-details single-line dark @keyup.enter="search"></v-text-field>
|
||||||
|
<v-spacer></v-spacer>
|
||||||
|
|
||||||
<v-menu left transition="v-fade-transition">
|
<v-menu left transition="v-fade-transition">
|
||||||
<v-btn dark icon slot="activator">
|
<v-btn dark icon slot="activator">
|
||||||
{{$auth.user}}
|
{{$auth.user}}
|
||||||
|
|
Loading…
Add table
Reference in a new issue