You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 
HerrHase 5c3d7588f9
init
6 days ago
example init 6 days ago
src init 6 days ago
.gitignore init 6 days ago
LICENSE Initial commit 7 days ago
README.md init 6 days ago
package-lock.json init 6 days ago
package.json init 6 days ago
webpack.config.js init 6 days ago

README.md

Tiny Components - Select

Created with Riot.js. Select Field Element, Filter-Option to connect a Observable. Using Styles for UI from Plain-UI

Source: https://git.node001.net/tiny-components/select

Installation

Setup this registry in your project .npmrc file:

@tiny-components:registry=https://git.node001.net/api/packages/tiny-components/npm/

Install with npm or yarn

npm i --save @tiny-components/select
yarn add @tiny-components/select

How to use

<tiny-field-select></tiny-field-select>

Attribute: multiple

Select Multiple Options

Attribute: searchable

Show Input-Field for Filtering Options, only works if Observable as Store is added and has Function Query.

Props: options

Default Options for Start

Props: store

import observable from '@riotjs/observable'

let store = observable({ locations: [{ 'label' : 'A', 'value' : 'a' },{ 'label' : 'B', 'value' : 'b' },{ 'label' : 'C', 'value' : 'c' },{ 'label' : 'D', 'value' : 'd' },{ 'label' : 'E', 'value' : 'e' },{ 'label' : 'F', 'value' : 'f' },{ 'label' : 'G', 'value' : 'g' },{ 'label' : 'H', 'value' : 'h' },{ 'label' : 'I', 'value' : 'i' },{ 'label' : 'J', 'value' : 'j' }],

query(value) {
    if (value !== undefined) {
        const results = []

        // run through locations and check string contains value
        for (let i = 0; i < this.locations.length; i++) {
            if (this.locations[i].value.includes(value)) {
                results.push(this.locations[i])
            }
        }

        this.trigger('update', results)
    } else {

        // if value is undefined, adding all locations
        this.trigger('update', this.locations)
    }
}

})