import { assign } from 'lodash'; import tpl from 'vj/utils/tpl'; import request from 'vj/utils/request'; import DOMAttachedObject from 'vj/components/DOMAttachedObject'; import AutoComplete from '.'; function getText(domain) { return domain._id; } function getItems(val) { return request.get('/domain/search', { q: val }); } function renderItem(domain) { return tpl`
${domain.name}
ID = ${domain._id}
`; } export default class DomainSelectAutoComplete extends AutoComplete { static DOMAttachKey = 'vjDomainSelectAutoCompleteInstance'; constructor($dom, options) { super($dom, { classes: 'domain-select', items: getItems, render: renderItem, text: getText, ...options, }); } } assign(DomainSelectAutoComplete, DOMAttachedObject); window.Hydro.components.DomainSelectAutoComplete = DomainSelectAutoComplete;