Skip to content

A customizable Vue.js dialog component library with support for success, error, warning, and confirmation dialogs.

License

Notifications You must be signed in to change notification settings

kzamanbd/draftscripts.js

Repository files navigation

DraftScripts Node.js Library e.g. (Vue, React, Angular, Vanilla JS, etc.)

A customizable Vue.js dialog component library with support for success, error, warning, and confirmation dialogs.

View Demo

NPM Version Download Stars LICENSE

Explore the documentation

Features

  • Customizable dialog types: success, error, warning, and confirm.
  • Supports both options API and composition API.
  • Promise-based API for handling user responses.
  • Customizable CSS class names for styling flexibility.
  • Built with Vite for fast and modern development.

Installation

Install the plugin using npm:

npm install @draftscripts/vue

Or using yarn:

yarn add @draftscripts/vue

Usage

Register the Plugin

In your main application file (e.g., main.js or main.ts), register the plugin:

import { createApp } from 'vue';
import App from './App.vue';
import { DialogPlugin } from '@draftscripts/vue';

const app = createApp(App);

const options = {
  // Custom options here
};

app.use(DialogPlugin, options);

app.mount('#app');

Options API Example

To open a dialog using the Options API:

export default {
  methods: {
    showDialog() {
      this.$openDialog('Message', { type: 'success' });
    },
    showConfirmDialog() {
      this.$openDialog('Message', { type: 'confirm' }).then((action) => {
        if (action) {
          console.log('Confirmed');
        }
      }).catch(() => {
        console.log('Rejected');
      });
    }
  }
};

Composition API Example

To open a dialog using the Composition API:

import { inject } from 'vue';

export default {
  setup() {
    const openDialog = inject('openDialog');

    const showDialog = () => {
      openDialog('Message', { type: 'success' });
    };

    const showConfirmDialog = () => {
      openDialog('Message', { type: 'confirm' }).then((action) => {
        if (action) {
          console.log('Confirmed');
        }
      }).catch(() => {
        console.log('Rejected');
      });
    };

    return {
      showDialog,
      showConfirmDialog
    };
  }
};
    

About

A customizable Vue.js dialog component library with support for success, error, warning, and confirmation dialogs.

Resources

License

Stars

Watchers

Forks