diff --git a/src/vue-poc/components/core.js b/src/vue-poc/core.js similarity index 96% rename from src/vue-poc/components/core.js rename to src/vue-poc/core.js index ebed939..99cad47 100644 --- a/src/vue-poc/components/core.js +++ b/src/vue-poc/core.js @@ -141,5 +141,10 @@ const Fullscreen={ }; Vue.use(Fullscreen); +//leaflet +Vue.component('v-map', Vue2Leaflet.Map); +Vue.component('v-tilelayer', Vue2Leaflet.TileLayer); +Vue.component('v-marker', Vue2Leaflet.Marker); + Vue.use(Vuetify); new Vuepoc().$mount('#app') diff --git a/src/vue-poc/data/vue-poc/namespaces.xml b/src/vue-poc/data/vue-poc/namespaces.xml index bc4f2b2..2502838 100644 --- a/src/vue-poc/data/vue-poc/namespaces.xml +++ b/src/vue-poc/data/vue-poc/namespaces.xml @@ -62,4 +62,9 @@ Schematron + + + Geo + + \ No newline at end of file diff --git a/src/vue-poc/features/collection/collections.xqm b/src/vue-poc/features/collection/collections.xqm index 5dc933c..bc891e4 100644 --- a/src/vue-poc/features/collection/collections.xqm +++ b/src/vue-poc/features/collection/collections.xqm @@ -39,6 +39,7 @@ declare function vue-api:file($url as xs:string,$protocol as xs:string) as element(json) { + let $_:=trace($protocol,"proto:") let $reader:=map{ "webfile":ufile:webfile#1, "xmldb":ufile:xmldb#1 diff --git a/src/vue-poc/features/collection/files.vue b/src/vue-poc/features/collection/files.vue index d5576e5..c1a3f98 100644 --- a/src/vue-poc/features/collection/files.vue +++ b/src/vue-poc/features/collection/files.vue @@ -19,8 +19,12 @@ content_paste S: {{selection.length}} + + hide-details single-line @keyup.enter="setfilter" + :append-icon="this.q?'clear':''" :append-icon-cb="e=>this.q=''"> + + @@ -65,7 +69,7 @@ - {{ itemIcon(item) }} + {{ itemIcon(item) }} {{ item.name }} @@ -84,7 +88,7 @@ - {{ itemIcon(item) }} + {{ itemIcon(item) }} {{ item.name }} @@ -127,10 +131,11 @@ return { url: "", items: [], - q: "", + q: null, busy: false, showInfo: false, clipboard: null, + buttons: [ {method: this.todo, icon: "view_quilt"}, {method: this.add, icon: "add"}, @@ -162,6 +167,7 @@ HTTP.get("collection",{params:{url:url,protocol:this.protocol}}) .then(r=>{ this.items=r.data.items + this.q=null this.busy=false }) .catch(error=> { @@ -170,6 +176,9 @@ alert("Get query error"+url) }); + }, + clearq(){ + this.q=null }, action(b){ b.method(b.icon) @@ -198,6 +207,9 @@ todo(icon){ alert("todo: " + icon) }, + itemClass(item){ + return (item.selected)?"blue--text text--darken-2":"" + }, itemIcon(item){ if(item.selected) return "check_circle" else return (item.type=="folder")?"folder":"insert_drive_file" @@ -214,10 +226,10 @@ return (this.protocol=="xmldb")?"developer_mode":"folder" }, xfiles(){ - return this.items.filter(item=>{return item.type!="folder"}) + return this.items.filter(item=>{return item.type!="folder" &&((!this.q) || item.name.includes(this.q))}) }, xfolders(){ - return this.items.filter(item=>{return item.type=="folder"}) + return this.items.filter(item=>{return item.type=="folder" &&((!this.q) || item.name.includes(this.q))}) }, // array of {name:"that", path:"/this/that/"} for url crumbs(){ diff --git a/src/vue-poc/features/edit/edit.vue b/src/vue-poc/features/edit/edit.vue index 3311631..59ac12c 100644 --- a/src/vue-poc/features/edit/edit.vue +++ b/src/vue-poc/features/edit/edit.vue @@ -1,15 +1,17 @@