UNPKG

@shopware-ag/meteor-component-library

Version:

The meteor component library is a Vue component library developed by Shopware. It is based on the [Meteor Design System](https://shopware.design/).

78 lines (72 loc) 1.71 kB
import baseFieldArgTypes from "../_internal/mt-base-field/arg-types"; import type { StoryObj } from "@storybook/vue3"; import type { SlottedMeta } from "@/_internal/story-helper"; import MtSlider from "./mt-slider.vue"; export type MtSliderMeta = SlottedMeta< typeof MtSlider, | "default" | "inheritanceRemove" | "inheritanceRestore" | "isInherited" | "change" | "updateModelValue" | "modelValue" | "hint" | "suffix" | "prefix" | "error" >; export default { title: "Components/mt-slider", component: MtSlider, render: (args) => ({ template: ` <div> <mt-slider v-bind="args" v-model="args.modelValue" :disabled="args.disabled" @inheritance-restore="inheritanceRestoreWrapper" @inheritance-remove="inheritanceRemoveWrapper"> <template v-if="args.hint" #hint> {{ args.hint }} </template> </mt-slider> <h4 style="display: none;">hidden</h4> </div>`, components: { MtSlider }, methods: { inheritanceRemoveWrapper() { args.inheritanceRemove(); args.isInherited = false; }, inheritanceRestoreWrapper() { args.inheritanceRestore(); args.isInherited = true; }, }, setup: () => { return { args, }; }, }), args: { label: "Slider", min: 0, max: 100, step: 1, isRange: false, markCount: 5, disabled: false, hasFocus: false, helpText: "", }, argTypes: { ...baseFieldArgTypes, }, } as MtSliderMeta; export type MtSliderStory = StoryObj<MtSliderMeta>; export const Default: MtSliderStory = {};