{"version":3,"file":"Input.stories.mjs","names":["InputRules","UInput","meta","title","component","tags","argTypes","variant","table","disable","size","control","options","disabled","type","autocomplete","name","tooltipTitle","tooltipText","tooltipTheme","tooltipPosition","error","errorMessages","rules","validateOn","prependIcon","appendIcon","Default","render","args","components","setup","template","methods","validationError","validationSuccess","blurHandle","console","log","modelValue","inputHandle","changeHandle","submitHandle","appendClickHandle","prependClickHandle","label","placeholder","hint","email","IconLeading"],"sources":["../../src/stories/Input.stories.ts"],"sourcesContent":["import type { Meta, StoryObj } from '@storybook/vue3'\nimport Sizes from '@/types/sizes'\nimport { InputRules } from '@/types/inputRules'\nimport { InputProps } from '@/types/inputProps'\nimport { ExtractPropTypes } from 'vue'\nimport { UInput } from '../components'\n\nconst meta: Meta<typeof UInput> = {\n  title: 'Example/Input',\n  component: UInput,\n  tags: ['autodocs'],\n  argTypes: {\n    variant: { table: { disable: true } },\n    size: { control: 'select', options: ['sm', 'md'] },\n    disabled: { control: 'boolean' },\n    type: { control: 'text' },\n    autocomplete: { control: 'boolean' },\n    name: { control: 'text' },\n    tooltipTitle: { control: 'text' },\n    tooltipText: { control: 'text' },\n    tooltipTheme: {\n      control: 'select',\n      options: ['light', 'dark'],\n    },\n    tooltipPosition: {\n      control: 'select',\n      options: [\n        'none top',\n        'none bottom',\n        'bottom',\n        'bottom-start',\n        'bottom-end',\n        'top',\n        'top-start',\n        'top-end',\n        'left',\n        'right',\n      ],\n    },\n    error: { control: 'boolean' },\n    errorMessages: {\n      control: 'multi-select',\n      options: [\n        'This is an error message #1.',\n        'This is an error message #2.',\n        'This is an error message #3.',\n        'This is an error message #4.',\n      ],\n    },\n    rules: { table: { disable: true } },\n    validateOn: {\n      control: 'select',\n      options: ['blur', 'input', 'change', 'submit'],\n    },\n    prependIcon: {\n      control: 'select',\n      options: ['mail1', 'mail2', 'mail3', 'mail4', 'mail5'],\n    },\n    appendIcon: {\n      control: 'select',\n      options: [null, 'helpCircle', 'helpHexagon', 'helpOctagon', 'helpSquare'],\n    },\n  },\n}\n\nexport default meta\n\ntype Story = StoryObj<typeof UInput>\n\nexport const Default: Story = {\n  render: (args: ExtractPropTypes<InputProps>) => ({\n    components: { UInput },\n    setup() {\n      return { args }\n    },\n    template:\n      // eslint-disable-next-line max-len\n      '<UInput v-bind=\"args\" v-model=\"args.modelValue\" @validationError=\"validationError\" @validationSuccess=\"validationSuccess\" @blur=\"blurHandle\" @input=\"inputHandle\" @change=\"changeHandle\" @submit=\"submitHandle\" @click:append=\"appendClickHandle\" @click:prepend=\"prependClickHandle\"></UInput>',\n    methods: {\n      validationError() {\n        args.error = true\n      },\n      validationSuccess() {\n        args.error = false\n      },\n      blurHandle() {\n        console.log('%c[blur]', 'background-color: black; color: gold;')\n        console.log(\n          '%c[modelValue]',\n          'background-color: black; color: lime;',\n          this.args.modelValue\n        ) //modelValue demo on blur\n      },\n      inputHandle() {\n        console.log('%c[input]', 'background-color: black; color: orange;')\n      },\n      changeHandle() {\n        console.log('%c[change]', 'background-color: black; color: tomato;')\n      },\n      submitHandle() {\n        console.log('%c[submit]', 'background-color: black; color: red;')\n      },\n      appendClickHandle() {\n        console.log(\n          '%c[click-append]',\n          'background-color: black; color: aquamarine;'\n        )\n      },\n      prependClickHandle() {\n        console.log(\n          '%c[click-prepend]',\n          'background-color: black; color: turquoise;'\n        )\n      },\n    },\n  }),\n  args: {\n    error: false,\n    autocomplete: false,\n    variant: 'default',\n    label: 'Email',\n    placeholder: 'olivia@untitledui.com',\n    tooltipTitle: 'This is a tooltip',\n    tooltipText:\n      // eslint-disable-next-line max-len\n      'Tooltips are used to describe or identify an element. In most scenarios, tooltips help the user understand meaning, function or alt-text.',\n    tooltipTheme: 'light',\n    tooltipPosition: 'top-start',\n    hint: 'This is a hint text to help user.',\n    size: 'sm' as Sizes,\n    rules: InputRules.email,\n    errorMessages: [\n      'This is an error message #1.',\n      'This is an error message #2.',\n      'This is an error message #3.',\n    ],\n    name: 'email',\n    modelValue: '',\n    appendIcon: null,\n  },\n}\n\nexport const IconLeading: Story = {\n  render: (args: ExtractPropTypes<InputProps>) => ({\n    components: { UInput },\n    setup() {\n      return { args }\n    },\n    template:\n      // eslint-disable-next-line max-len\n      '<UInput v-bind=\"args\" class=\"mt-20 ml-5\" v-model=\"args.modelValue\" @validationError=\"validationError\" @validationSuccess=\"validationSuccess\" @blur=\"blurHandle\" @input=\"inputHandle\" @change=\"changeHandle\" @submit=\"submitHandle\" @click:append=\"appendClickHandle\" @click:prepend=\"prependClickHandle\"></UInput>',\n    methods: {\n      validationError() {\n        args.error = true\n      },\n      validationSuccess() {\n        args.error = false\n      },\n      blurHandle() {\n        console.log('%c[blur]', 'background-color: black; color: gold;')\n        console.log(\n          '%c[modelValue]',\n          'background-color: black; color: lime;',\n          this.args.modelValue\n        )\n      },\n      inputHandle() {\n        console.log('%c[input]', 'background-color: black; color: orange;')\n      },\n      changeHandle() {\n        console.log('%c[change]', 'background-color: black; color: tomato;')\n      },\n      submitHandle() {\n        console.log('%c[submit]', 'background-color: black; color: red;')\n      },\n      appendClickHandle() {\n        console.log(\n          '%c[click-append]',\n          'background-color: black; color: aquamarine;'\n        )\n      },\n      prependClickHandle() {\n        console.log(\n          '%c[click-prepend]',\n          'background-color: black; color: turquoise;'\n        )\n      },\n    },\n  }),\n  args: {\n    error: false,\n    variant: 'iconLeading',\n    label: 'Email',\n    placeholder: 'olivia@untitledui.com',\n    tooltipTitle: 'This is a tooltip',\n    tooltipText:\n      // eslint-disable-next-line max-len\n      'Tooltips are used to describe or identify an element. In most scenarios, tooltips help the user understand meaning, function or alt-text.',\n    tooltipTheme: 'light',\n    tooltipPosition: 'top-start',\n    hint: 'This is a hint text to help user.',\n    size: 'sm' as Sizes,\n    rules: InputRules.email,\n    errorMessages: ['This is an error message #1.'],\n    name: 'email',\n    appendIcon: 'helpCircle',\n    prependIcon: 'mail1',\n    modelValue: '',\n  },\n}\n"],"mappings":"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"}