JSPM

  • Created
  • Published
  • Downloads 14
  • Score
    100M100P100Q74170F
  • License MIT

A collection of reusable Vue 3 input components with TypeScript support

Package Exports

  • @a-vision-software/vue-input-components
  • @a-vision-software/vue-input-components/dist/favicon.ico
  • @a-vision-software/vue-input-components/dist/src/components/Action.vue.d.ts
  • @a-vision-software/vue-input-components/dist/src/components/Checkbox.vue.d.ts
  • @a-vision-software/vue-input-components/dist/src/components/Dropdown.vue.d.ts
  • @a-vision-software/vue-input-components/dist/src/components/FileUpload.vue.d.ts
  • @a-vision-software/vue-input-components/dist/src/components/List.vue.d.ts
  • @a-vision-software/vue-input-components/dist/src/components/Modal.vue.d.ts
  • @a-vision-software/vue-input-components/dist/src/components/Navigation.vue.d.ts
  • @a-vision-software/vue-input-components/dist/src/components/TextInput.vue.d.ts
  • @a-vision-software/vue-input-components/dist/src/config.d.ts
  • @a-vision-software/vue-input-components/dist/src/global.d.ts
  • @a-vision-software/vue-input-components/dist/src/index.d.ts
  • @a-vision-software/vue-input-components/dist/src/main.d.ts
  • @a-vision-software/vue-input-components/dist/src/router/index.d.ts
  • @a-vision-software/vue-input-components/dist/src/types/action.d.ts
  • @a-vision-software/vue-input-components/dist/src/types/checkbox.d.ts
  • @a-vision-software/vue-input-components/dist/src/types/dropdown.d.ts
  • @a-vision-software/vue-input-components/dist/src/types/fileupload.d.ts
  • @a-vision-software/vue-input-components/dist/src/types/index.d.ts
  • @a-vision-software/vue-input-components/dist/src/types/list.d.ts
  • @a-vision-software/vue-input-components/dist/src/types/modal.d.ts
  • @a-vision-software/vue-input-components/dist/src/types/navigation.d.ts
  • @a-vision-software/vue-input-components/dist/src/types/textinput.d.ts
  • @a-vision-software/vue-input-components/dist/vue-input-components.cjs.js
  • @a-vision-software/vue-input-components/dist/vue-input-components.css
  • @a-vision-software/vue-input-components/dist/vue-input-components.es.js
  • @a-vision-software/vue-input-components/dist/vue-input-components.umd.js
  • @a-vision-software/vue-input-components/global
  • @a-vision-software/vue-input-components/styles
  • @a-vision-software/vue-input-components/styles.css

Readme

Vue Input Components

A collection of reusable Vue 3 input components with consistent styling and behavior.

Documentation

For detailed documentation, please visit our documentation site.

Features

  • 🚀 Built with Vue 3 and TypeScript
  • 🎨 Customizable styling with CSS variables
  • 📦 Tree-shakeable components
  • 🎯 Fully typed with TypeScript
  • 🎨 Beautiful and consistent design
  • 🔍 Accessible by default
  • 📱 Responsive and mobile-friendly

Components

Text Input

A versatile text input component that supports icons, validation, and custom styling.

File Upload

A file upload component with drag and drop support, file validation, and preview capabilities.

Action

A flexible action component that can be used as a button, link, or icon button with various styles.

A navigation component with multiple styles, icons support, and responsive design.

A dropdown component that supports single/multiple selection, filtering, and custom styling.

Checkbox

A checkbox component with support for single/multiple selection and various presentation modes.

List

A flexible and customizable list component that supports sorting, filtering, and different presentation styles.

Quick Installation

npm install @a-vision-software/vue-input-components

Declare global types

Add the global types to your tsconfig.app.json

{
  ...
 "compilerOptions": {
    ...
    "types": ["@a-vision-software/vue-input-components/global"],
  }
}

Quick Start

<template>
  <TextInput v-model="text" placeholder="Enter text" icon="user" />
  <FileUpload v-model="files" accept="image/*" />
  <Action type="button" label="Click me" icon="check" />
  <Navigation :items="navigationItems" type="tiles" />
  <Dropdown v-model="selected" :options="options" />
  <Checkbox v-model="selected" :options="options" />
</template>

<script setup lang="ts">
import {
  TextInput,
  FileUpload,
  Action,
  Navigation,
  Dropdown,
  Checkbox,
} from '@a-vision-software/vue-input-components'
</script>

Styling

All components support custom styling through CSS variables and props:

:root {
  --primary: #4a90e2;
  --text-primary: rgba(0, 0, 0, 0.8);
  --text-secondary: rgba(0, 0, 0, 0.6);
  --text-disabled: rgba(0, 0, 0, 0.4);
}

Development

Setup

# Install dependencies
npm install

# Start development server
npm run dev

# Build for production
npm run build

# Run tests
npm run test

License

MIT