diff --git a/public/demo/images/dock/appstore.svg b/public/demo/images/dock/appstore.svg new file mode 100644 index 000000000..fc5126465 --- /dev/null +++ b/public/demo/images/dock/appstore.svg @@ -0,0 +1,83 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/public/demo/images/dock/finder.svg b/public/demo/images/dock/finder.svg new file mode 100644 index 000000000..601eb187a --- /dev/null +++ b/public/demo/images/dock/finder.svg @@ -0,0 +1,67 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/public/demo/images/dock/github.svg b/public/demo/images/dock/github.svg new file mode 100644 index 000000000..837467db9 --- /dev/null +++ b/public/demo/images/dock/github.svg @@ -0,0 +1,89 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/public/demo/images/dock/photos.svg b/public/demo/images/dock/photos.svg new file mode 100644 index 000000000..e13afbb1c --- /dev/null +++ b/public/demo/images/dock/photos.svg @@ -0,0 +1,187 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/public/demo/images/dock/preview.png b/public/demo/images/dock/preview.png new file mode 100644 index 000000000..9edf5d270 Binary files /dev/null and b/public/demo/images/dock/preview.png differ diff --git a/public/demo/images/dock/safari.svg b/public/demo/images/dock/safari.svg new file mode 100644 index 000000000..c2d94d38b --- /dev/null +++ b/public/demo/images/dock/safari.svg @@ -0,0 +1,57 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/public/demo/images/dock/settings.png b/public/demo/images/dock/settings.png new file mode 100644 index 000000000..9701b7587 Binary files /dev/null and b/public/demo/images/dock/settings.png differ diff --git a/public/demo/images/dock/terminal.svg b/public/demo/images/dock/terminal.svg new file mode 100644 index 000000000..c4d526965 --- /dev/null +++ b/public/demo/images/dock/terminal.svg @@ -0,0 +1,11 @@ + + + + + + + + + + + diff --git a/public/demo/images/dock/trash.png b/public/demo/images/dock/trash.png new file mode 100644 index 000000000..b76ead7f1 Binary files /dev/null and b/public/demo/images/dock/trash.png differ diff --git a/src/assets/images/dock/window.jpg b/src/assets/images/dock/window.jpg new file mode 100644 index 000000000..8372ed942 Binary files /dev/null and b/src/assets/images/dock/window.jpg differ diff --git a/src/assets/menu/menu.json b/src/assets/menu/menu.json index a56f052e1..0656175c7 100644 --- a/src/assets/menu/menu.json +++ b/src/assets/menu/menu.json @@ -672,6 +672,11 @@ { "name": "TieredMenu", "to": "/tieredmenu" + }, + { + "name": "Dock", + "to": "/dock", + "badge": "New" } ] }, diff --git a/src/components/dock/Dock.d.ts b/src/components/dock/Dock.d.ts new file mode 100644 index 000000000..7686ba197 --- /dev/null +++ b/src/components/dock/Dock.d.ts @@ -0,0 +1,17 @@ +import { VNode } from 'vue'; + +interface DockProps { + position?: string; + model?: any[]; + class?: string; + style?: any; +} + +declare class Dock { + $props: DockProps; + $slots: { + 'item': VNode[]; + } +} + +export default Dock; diff --git a/src/components/dock/Dock.vue b/src/components/dock/Dock.vue new file mode 100644 index 000000000..e1f01b675 --- /dev/null +++ b/src/components/dock/Dock.vue @@ -0,0 +1,163 @@ + + + + + \ No newline at end of file diff --git a/src/components/dock/DockSub.vue b/src/components/dock/DockSub.vue new file mode 100644 index 000000000..f0c6ecce7 --- /dev/null +++ b/src/components/dock/DockSub.vue @@ -0,0 +1,70 @@ + + + \ No newline at end of file diff --git a/src/components/dock/package.json b/src/components/dock/package.json new file mode 100644 index 000000000..a60167bef --- /dev/null +++ b/src/components/dock/package.json @@ -0,0 +1,9 @@ +{ + "main": "./dock.cjs.js", + "module": "./dock.esm.js", + "unpkg": "./dock.min.js", + "types": "./Dock.d.ts", + "browser": { + "./sfc": "./Dock.vue" + } + } \ No newline at end of file diff --git a/src/main.js b/src/main.js index 7e9272f47..067414f6c 100644 --- a/src/main.js +++ b/src/main.js @@ -34,6 +34,7 @@ import DataViewLayoutOptions from './components/dataviewlayoutoptions/DataViewLa import DeferredContent from './components/deferredcontent/DeferredContent'; import Dialog from './components/dialog/Dialog'; import Divider from './components/divider/Divider'; +import Dock from './components/dock/Dock'; import Dropdown from './components/dropdown/Dropdown'; import Editor from './components/editor/Editor'; import Fieldset from './components/fieldset/Fieldset'; @@ -155,6 +156,7 @@ app.component('DataViewLayoutOptions', DataViewLayoutOptions); app.component('DeferredContent', DeferredContent); app.component('Dialog', Dialog); app.component('Divider', Divider); +app.component('Dock', Dock); app.component('Dropdown', Dropdown); app.component('Editor', Editor); app.component('Fieldset', Fieldset); diff --git a/src/router/index.js b/src/router/index.js index 0fd79f847..948143942 100644 --- a/src/router/index.js +++ b/src/router/index.js @@ -332,6 +332,11 @@ const routes = [ name: 'divider', component: () => import('../views/divider/DividerDemo.vue') }, + { + path: '/dock', + name: 'dock', + component: () => import('../views/dock/DockDemo.vue') + }, { path: '/dropdown', name: 'dropdown',