├── .prettierrc ├── .prettierignore ├── example ├── babel.config.js ├── src │ ├── shims-vue.d.ts │ ├── shims-tsx.d.ts │ ├── Button.spec.ts │ ├── button.css │ ├── Button.vue │ └── Button.stories.ts ├── cypress.json ├── .storybook │ ├── main.js │ └── preview.js ├── tsconfig.json ├── cypress │ ├── support │ │ ├── index.js │ │ └── commands.js │ └── plugins │ │ └── index.js └── package.json ├── .gitignore ├── tsconfig.json ├── .github └── workflows │ └── release.yml ├── LICENSE ├── package.json ├── CHANGELOG.md ├── src ├── decorateStory.ts └── index.ts └── README.md /.prettierrc: -------------------------------------------------------------------------------- 1 | {} 2 | -------------------------------------------------------------------------------- /.prettierignore: -------------------------------------------------------------------------------- 1 | dist 2 | -------------------------------------------------------------------------------- /example/babel.config.js: -------------------------------------------------------------------------------- 1 | module.exports = { 2 | presets: [ 3 | '@vue/cli-plugin-babel/preset' 4 | ] 5 | } 6 | -------------------------------------------------------------------------------- /example/src/shims-vue.d.ts: -------------------------------------------------------------------------------- 1 | declare module '*.vue' { 2 | import Vue from 'vue' 3 | export default Vue 4 | } 5 | -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- 1 | dist/ 2 | node_modules/ 3 | storybook-static/ 4 | build-storybook.log 5 | .DS_Store 6 | .env 7 | 8 | example/node_modules 9 | -------------------------------------------------------------------------------- /example/cypress.json: -------------------------------------------------------------------------------- 1 | { 2 | "fixturesFolder": false, 3 | "componentFolder": "src", 4 | "testFiles": "**/*.spec.{js,ts,jsx,tsx}" 5 | } 6 | -------------------------------------------------------------------------------- /example/.storybook/main.js: -------------------------------------------------------------------------------- 1 | module.exports = { 2 | "stories": [ 3 | "../src/**/*.stories.mdx", 4 | "../src/**/*.stories.@(js|jsx|ts|tsx)" 5 | ], 6 | "addons": [ 7 | "@storybook/addon-links", 8 | "@storybook/addon-essentials" 9 | ] 10 | } -------------------------------------------------------------------------------- /example/src/shims-tsx.d.ts: -------------------------------------------------------------------------------- 1 | import Vue, { VNode } from 'vue' 2 | 3 | declare global { 4 | namespace JSX { 5 | // tslint:disable no-empty-interface 6 | interface Element extends VNode {} 7 | // tslint:disable no-empty-interface 8 | interface ElementClass extends Vue {} 9 | interface IntrinsicElements { 10 | [elem: string]: any 11 | } 12 | } 13 | } 14 | -------------------------------------------------------------------------------- /example/src/Button.spec.ts: -------------------------------------------------------------------------------- 1 | import { mount } from '@cypress/vue'; 2 | import { composeStories } from '../../dist'; 3 | 4 | import * as stories from './Button.stories'; 5 | 6 | const { Primary, Secondary } = composeStories(stories); 7 | 8 | describe('