1.2.0 • Published 5 years ago

libj-vue-comp-dragging v1.2.0

Weekly downloads
3
License
ISC
Repository
-
Last release
5 years ago

libj-vue-comp-dragging

Part of libj tools

This contains a j-dragger and j-list-mover vue component which uses bootstrap styles

Usage (npm)

npm install libj-vue-comp-dragging

j-dragger component

This is used to let the user order items of a list

Properties

  • list (Array) | default: [] List of items for ordering
  • group (String) | default: 'a' The group to which this instance belongs. For example, if there are two j-dragger components on the page, each with 'somegroup' as group prop, then you can move items between these two instances
  • keyProp (String) | default: null The key property of the objects in the list
  • valueProp (String) | default: null The value property of the objects in the list. This is only used in the fallback section of the default slot to show an item. If set null, then item itself is printed
  • canDelete (Boolean) | default: false Can user delete an item
  • iconSize (String) | default: '24px' Size of the handle icon.

Slots

  • default slot scope props are item and index

j-list-mover component

This is used to let the user to devide an original list (origList) into two sets of ordered lists

Properties

  • group (String) | default: 'a' The group to which this instance's internal j-dragger components belong.
  • origList (Array) | default: [] The original list to divide its items into two groups
  • comparer (Function (a, b) => Boolean) | default: (a, b) => a === b The comparer function to check equality of items in origList array and dest.list array
  • source (Object)
    • label (String) | default: '' A label for the source list
    • keyProp (String) | default: '' The key property name of objects in source.list
    • valueProp (String) | default: '' The value property of objects in source.list. If you want to override source slot, then omit this
    • list (Array) | default: [] The array of items in source
  • dest (Object)
    • label (String) | default: '' A label for the dest list
    • keyProp (String) | default: '' The key property name of objects in dest.list_
    • valueProp (String) | default: '' The value property of objects in dest.list_. If you want to override dest slot, then omit this
    • list (Array) | default: [] The array of items in dest
  • direction (String) | default: 'ltr' 'ltr' or 'rtl'

Slots

  • source scope props are item (which is a member of source.list array) and index
  • dest scope props are item (which is a member of dest.list array) and index

With default theme

import 'libj-vue-comp-dragging/dist/libj-vue-comp-dragging.default.min.css'
import 'libj-vue-comp-dragging'
// Now, j-dragger and j-list-mover are available globally

Customize theme

You'll need a separate .scss file like (showcase/showcase.scss):

// Set variables here
.
.
.
@import 'libj-vue-comp-dragging/index.scss';
// Now override classes
.
.
.

SCSS Variables:

$j-dragger-border-color: #ccc !default;
$j-dragger-item-border-color: #aaa !default;

Test

  • Run this in a separate command line to start node server
node server.js
  • Run one of the following to re-create bundles
npm run dev
npm run dev:watch

Build

npm run build
npm run build:watch
1.2.0

5 years ago

1.1.0

5 years ago

1.0.1

5 years ago