![Oracle Drags Its Feet in the JavaScript Trademark Dispute](https://cdn.sanity.io/images/cgdhsj6q/production/919c3b22c24f93884c548d60cbb338e819ff2435-1024x1024.webp?w=400&fit=max&auto=format)
Security News
Oracle Drags Its Feet in the JavaScript Trademark Dispute
Oracle seeks to dismiss fraud claims in the JavaScript trademark dispute, delaying the case and avoiding questions about its right to the name.
searchpicker
Advanced tools
Searchpicker or combo-box dropdown with multiple choices support, written in typescript. No dependencies.
Searchpicker or combo-box dropdown with multiple choices support, written in typescript. No dependencies.
npm i searchpicker --save
npm start
Server stared at http://localhost:8080
Initialize picker control to specified container in your app:
import {SearchPicker} from 'searchpicker';
const picker = new SearchPicker(document.getElementById('searchpicker-container'), options);
placeholder: string
- Default ''
maxSelectedChoices: number
- amount of choices that user can select. 1 - single choice. Default - unlimited
minLengthToSearch: number
- minimal text length in field length to start search from
searchInValues: boolean
- instruct default searcher to search text in picker identifiers. Default - false
resultsLimit: number
- maximum shown results. Default - all results returned by searcher.
pickerItemFactory?: (item: any) => IPickerItem
- allow to convert source data to picker item for default searcher
source: any[]
- data for search with default searcher.
resultRenderer: (item: IPickerItem, query: string) => Node
- allow to override default picker item view.
noResultsRenderer: (query: string) => Node
- allows to override default view when no results found
choiceRenderer: (item: IPickerItem, renderClose?:boolean) => Node
- allow to override default choice view
searcher: ISearcher
- allows to add custom logic for result search. For instance: async fetch data from server side.
export interface ISearcher {
/**
* Search data
* @param {string} query user query
* @param {ISearchPickerOptions} options current searchpicker options
* @param {(items: IPickerItem[]) => void} onresults callback with result
* @param {(message: string) => void} onerror callback with search error
*/
search(query: string
, options: ISearchPickerOptions
, onresults: (items: IPickerItem[]) => void
, onerror?: (message: string) => void);
}
Sample of custom data searcher
export class BackendSearcher implements ISearcher {
private pickerItems: IPickerItem[] = null;
private lastSearchText: string;
private foundItems: IPickerItem[] = [];
private tmrId: number;
search(query: string
, options: ISearchPickerOptions
, onresults: (items: IPickerItem[]) => void
, onerror?: (message: string) => void) {
if (this.tmrId)
clearTimeout(this.tmrId);
// fetch data from server
fetch("api/search?q=" + query)
.then((results) => {
onresults(results.map(r => { return {title: r.title, id: r.login} }));
}, err => {
onerror(err);
});
}
}
You can subscribe for picker events and read current selected values
Invokes when user add new choice
const picker = new SearchPicker(...);
picker.on("choiceAdded", (item: IPickerItem) => {
console.log(picker.getChoices());
});
Invokes when user remove selected choice
const picker = new SearchPicker(...);
picker.on("choiceRemoved", (item: IPickerItem) => {
console.log(picker.getChoices());
});
npm run test
npm run build:lib
FAQs
Searchpicker or combo-box dropdown with multiple choices support, written in typescript. No dependencies.
The npm package searchpicker receives a total of 26 weekly downloads. As such, searchpicker popularity was classified as not popular.
We found that searchpicker demonstrated a not healthy version release cadence and project activity because the last version was released a year ago. It has 3 open source maintainers collaborating on the project.
Did you know?
Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.
Security News
Oracle seeks to dismiss fraud claims in the JavaScript trademark dispute, delaying the case and avoiding questions about its right to the name.
Security News
The Linux Foundation is warning open source developers that compliance with global sanctions is mandatory, highlighting legal risks and restrictions on contributions.
Security News
Maven Central now validates Sigstore signatures, making it easier for developers to verify the provenance of Java packages.