diff --git a/.storybook/preview-head.html b/.storybook/preview-head.html
new file mode 100644
index 0000000..12c80a6
--- /dev/null
+++ b/.storybook/preview-head.html
@@ -0,0 +1 @@
+
diff --git a/components/global/VButton.vue b/components/base/VButton.vue
similarity index 100%
rename from components/global/VButton.vue
rename to components/base/VButton.vue
diff --git a/components/base/VIcon.vue b/components/base/VIcon.vue
new file mode 100644
index 0000000..30e98ad
--- /dev/null
+++ b/components/base/VIcon.vue
@@ -0,0 +1,87 @@
+
+
+
+
+
+
+
+
+
diff --git a/components/base/VImage.vue b/components/base/VImage.vue
new file mode 100644
index 0000000..c7a6b9b
--- /dev/null
+++ b/components/base/VImage.vue
@@ -0,0 +1,50 @@
+
+
+
+
![]()
+
+
+
+
+
+
diff --git a/nuxt.config.js b/nuxt.config.js
index 9d23be4..f84d300 100644
--- a/nuxt.config.js
+++ b/nuxt.config.js
@@ -15,6 +15,11 @@ export default {
],
link: [
{ rel: 'icon', type: 'image/x-icon', href: '/favicon.ico' }
+ ],
+ script: [
+ {
+ src: 'https://code.iconify.design/1/1.0.7/iconify.min.js', body: true,
+ }
]
},
@@ -45,7 +50,7 @@ export default {
// Auto import components: https://go.nuxtjs.dev/config-components
components: [
- '@/components/global'
+ '@/components/base'
],
// Modules: https://go.nuxtjs.dev/config-modules
diff --git a/stories/global/VButton.stories.js b/stories/base/VButton.stories.js
similarity index 69%
rename from stories/global/VButton.stories.js
rename to stories/base/VButton.stories.js
index 05a2bd2..7ffafa6 100644
--- a/stories/global/VButton.stories.js
+++ b/stories/base/VButton.stories.js
@@ -1,15 +1,15 @@
import base, { filename } from 'paths.macro'
import { argEvents, dirnameTitle } from '@/.storybook/utils'
-import VButton from '@/components/global/VButton.vue'
+import VButton from '@/components/base/VButton.vue'
export default {
title: dirnameTitle(base, filename),
component: VButton,
}
-const Template = ({ 'v-model': model, slot, onlyIcon, ...restProps }, { argTypes }) => ({
+const Template = ({ 'v-model': model, slot, ...restProps }, { argTypes }) => ({
props: {
- args: { default: () => ({ model, slot, onlyIcon, restProps }) },
+ args: { default: () => ({ model, slot, restProps }) },
events: { default: () => argEvents(argTypes) }
},
components: { VButton },
diff --git a/stories/base/VIcon.stories.js b/stories/base/VIcon.stories.js
new file mode 100644
index 0000000..2f98594
--- /dev/null
+++ b/stories/base/VIcon.stories.js
@@ -0,0 +1,29 @@
+import base, { filename } from 'paths.macro'
+import { argEvents, dirnameTitle, controlOptions } from '@/.storybook/utils'
+import VIcon, { SIZE, COLOR } from '@/components/base/VIcon.vue'
+
+export default {
+ title: dirnameTitle(base, filename),
+ component: VIcon,
+ argTypes: {
+ size: controlOptions(Object.keys(SIZE)),
+ color: controlOptions(Object.keys(COLOR)),
+ }
+}
+
+const Template = ({ 'v-model': model, slot, ...restProps }, { argTypes }) => ({
+ props: {
+ args: { default: () => ({ model, slot, restProps }) },
+ events: { default: () => argEvents(argTypes) }
+ },
+ components: { VIcon },
+ template: `
+
+ `
+})
+
+export const Default = Template.bind({})
+Default.args = {
+ name: 'ant-design:home-filled',
+ color: 'primary',
+}
diff --git a/stories/base/VImage.stories.js b/stories/base/VImage.stories.js
new file mode 100644
index 0000000..a0a111d
--- /dev/null
+++ b/stories/base/VImage.stories.js
@@ -0,0 +1,24 @@
+import base, { filename } from 'paths.macro'
+import { argEvents, dirnameTitle } from '@/.storybook/utils'
+import VImage from '@/components/base/VImage.vue'
+
+export default {
+ title: dirnameTitle(base, filename),
+ component: VImage,
+}
+
+const Template = ({ 'v-model': model, slot, ...restProps }, { argTypes }) => ({
+ props: {
+ args: { default: () => ({ model, slot, restProps }) },
+ events: { default: () => argEvents(argTypes) }
+ },
+ components: { VImage },
+ template: `
+
+ `
+})
+
+export const Default = Template.bind({})
+Default.args = {
+ src: 'https://fakeimg.pl/250x200',
+}