import {html} from "htl";
import {arrayify, maybeColumns} from "./array.js";
import {maybeWidth} from "./css.js";
import {maybeDatalist} from "./datalist.js";
import {preventDefault} from "./event.js";
import {formatLocaleNumber, localize, stringify} from "./format.js";
import {maybeLabel} from "./label.js";
import {onoff, truefalse} from "./text.js";
export function search(data, {
locale,
format = formatResults(locale), // length format
label,
query = "", // initial search query
placeholder = "Search", // placeholder text to show when empty
columns = maybeColumns(data),
spellcheck,
autocomplete,
autocapitalize,
filter = columns === undefined ? searchFilter : columnFilter(columns), // returns the filter function given query
datalist,
disabled,
required = true, // if true, the value is everything if nothing is selected
width
} = {}) {
let value = [];
data = arrayify(data);
required = !!required;
const [list, listId] = maybeDatalist(datalist);
const input = html``;
const output = html`