0.4.0 • Published 4 months ago

@shapla/vanilla-components v0.4.0

Weekly downloads
-
License
MIT
Repository
github
Last release
4 months ago

Shapla Components

IMPORTANT: Shapla Components is a work in progress and subject to major changes until 1.0 release.

A collection of reusable components using vanilla javaScript.

Table of contents

Installation

Install using npm package manager

npm i @shapla/vanilla-components

or using yarn package manager

yarn add @shapla/vanilla-components

Usage

Here we export all components script as ES module and all style as SCSS mixins. So you need to import SCSS mixin to load style of component and also need to import ES module and register as vue component.

For example, to use button and progress bar components:

Styles (SCSS)

// Add the following line at top of your scss file
@use "@shapla/vanilla-components/src/index.scss" as shapla;

@include shapla.spinner;
@include shapla.notification;
// Include other mixins as your requirement

Javascript Instantiation

import {Spinner, Notify} from "@shapla/vanilla-components";

List of Components

A loading spinner component using vanilla javaScript.

Include SCSS mixin

// Add the following line at top of your scss file
@use "@shapla/vanilla-components/src/index.scss" as shapla;

@include shapla.spinner;

Import javaScript module

import {Spinner} from "@shapla/vanilla-components";

// Show spinner
Spinner.show();

// Show single spinner with 'Loading...' text
Spinner.show({single: true, showText: true});

// Hide spinner
Spinner.hide();

Available Props for Spinner.show() method

PropertyTypeRequiredDefaultDescription
singleBooleannofalseIf set true, only primary color will be shown for all layers.
showTextBooleannofalseIf set true, Loading... text will be show beside spinner.
loadingTextStringnoLoading...Loading text
positionStringnofixedValue can be fixed, absolute, or static.
sizeStringnodefaultValue can be default, small, or medium or large.

A simple notification component using vanilla javaScript.

Include SCSS mixin

// Add the following line at top of your scss file
@use "@shapla/vanilla-components/src/index.scss" as shapla;

@include shapla.delete-icon;
@include shapla.notification;

Import javaScript module

import {Notify} from "@shapla/vanilla-components";

// Show success notification
Notify.success('Message content');

// You can also include title and timeout
Notify.success('Message content', 'Success!', 5000);

Notify API

  • Notify.info(message, title, timeout);
  • Notify.success(message, title, timeout);
  • Notify.warning(message, title, timeout);
  • Notify.error(message, title, timeout);
PropertyTypeRequiredDefaultDescription
messageStringyes | Notification message
titleStringno | Notification title
timeoutNumberno4000The popup timeout in milliseconds

A simple dialog component for confirm/alert dialog using vanilla javaScript.

Include SCSS mixin

// Add the following line at top of your scss file
@use "@shapla/vanilla-components/src/index.scss" as shapla;

@include shapla.modal;

Import javaScript module

import {Dialog} from "@shapla/vanilla-components";

// Show confirm dialog
Dialog.confirm('Are you sure to delete the item?').then(() => {
    // User confirmed to delete the item
});

// Show alert dialog
Dialog.alert('A simple alert message like native JavaScript alert');
0.4.0

4 months ago

0.2.0

6 months ago

0.1.0

6 months ago