1.17.0 • Published 10 months ago

@juspay/svelte-ui-components v1.17.0

Weekly downloads
-
License
-
Repository
-
Last release
10 months ago

Svelte UI Components

This library provides a collection of reusable UI components built with Svelte.

Installation

This library is publish on npm & can be installed via any npm client. Use the following command to install the library.

npm install @juspay/svelte-ui-components

Usage

The library contains a collection of components that can be imported & used in your svelte project.

Available components

  • Accordion
  • Badge
  • Banner
  • Brand Loader (aka Splash Screen )
  • Button
  • Carousel
  • Checkbox / Checklist Item
  • Icon
  • Input
  • Input with attached Button
  • List Item
  • Loader
  • Modal
  • Select
  • Status Screen
  • Table
  • Toggle
  • Toolbar

All of the components can be easily imported from the 'svelte-ui-components' package.

Example: Importing component from the package

<script lang="ts">
  import { Button, defaultButtonProperties } from '@juspay/svelte-ui-components';
</script>

<Button properties={{ ...defaultButtonProperties, text: 'Click' }} />

Customizing the components

Each component comes with a set of configuration options that can be used to customize the component. There are two ways to customize the component.

  1. Using css variables:

    • All the components have exposed css variables for all the properties available.
    • The css variables can be used to customize the component.
  2. Using props:

    • All the components have exposed props for dynamic values/variables.
    • The props can be used to customize the component.

Example: Customizing the component

<script lang="ts">
  import {
    Button,
    type ButtonProperties,
    defaultButtonProperties
  } from '@juspay/svelte-ui-components';

  const buttonProperties: ButtonProperties = {
    ...defaultButtonProperties,
    text: 'Submit'
  };

  function handleSubmitClick() {
    // handle click
  }
</script>

<div class="form">
  <Button properties={buttonProperties} on:click={handleSubmitClick} />
</div>

<style>
  .form {
    --button-color: black;
    --button-text-color: white;
    /* Other styling values */
  }
</style>

Contributing

  • Clone the repository
  • Install dependencies using pnpm install
  • Make changes to the components
  • Run tests using pnpm run test
  • Commit the changes
  • Push the changes
  • Create a pull request

Todo Items

  • Add demo support
  • Add documentation for all components
  • Add more components
  • Add tests
1.15.0

10 months ago

1.14.0

10 months ago

1.13.0

10 months ago

1.12.0

10 months ago

1.17.0

10 months ago

1.16.0

10 months ago

1.11.0

10 months ago

1.9.0

1 year ago

1.8.0

1 year ago

1.10.0

1 year ago

1.7.0

1 year ago

1.6.0

1 year ago

1.5.0

1 year ago

1.4.0

1 year ago

1.3.0

1 year ago

1.2.0

2 years ago

1.1.0

2 years ago

1.0.0

2 years ago