/**
 * Code Connect mapping for MTextInput
 * Links Figma _text input / base to @mozaic-ds/vue
 */
import figma, { html } from '@figma/code-connect/html';

figma.connect(
  'https://www.figma.com/design/Zyh9RyabNaqkjbuFWP9Aqj/%E2%9C%A8-Components--ADS2---Stable-version-?node-id=6-29794',
  {
    props: {
      size: figma.enum('Size', {
        S: 's',
        'M (default)': 'm',
      }),
      disabled: figma.enum('State', {
        Disabled: true,
        Default: false,
        Hovered: false,
        Focused: false,
        'Read-only': false,
      }),
      readonly: figma.enum('State', {
        'Read-only': true,
        Default: false,
        Hovered: false,
        Focused: false,
        Disabled: false,
      }),
      isInvalid: figma.enum('Is invalid', {
        True: true,
        False: false,
      }),
      isClearable: figma.boolean('Is clearable'),
    },
    example: ({ size, disabled, readonly, isInvalid, isClearable }) =>
      html`<script setup>
          import { MTextInput } from '@mozaic-ds/vue';
        </script>

        <MTextInput
          id="text-input-id"
          size=${size}
          disabled=${disabled}
          readonly=${readonly}
          :is-invalid=${isInvalid}
          :is-clearable=${isClearable}
          placeholder="Placeholder"
          model-value=""
        ></MTextInput>`,
  },
);
