mirror of
https://github.com/frappe/books.git
synced 2024-11-10 15:50:56 +00:00
26 lines
655 B
JavaScript
26 lines
655 B
JavaScript
|
const frappe = require('frappejs');
|
||
|
const BaseControl = require('./base');
|
||
|
const Awesomplete = require('awesomplete');
|
||
|
|
||
|
class LinkControl extends BaseControl {
|
||
|
make() {
|
||
|
super.make();
|
||
|
this.input.setAttribute('type', 'text');
|
||
|
this.awesomplete = new Awesomplete(this.input, {
|
||
|
autoFirst: true,
|
||
|
minChars: 0,
|
||
|
maxItems: 99
|
||
|
});
|
||
|
|
||
|
// rebuild the list on input
|
||
|
this.input.addEventListener('input', async (event) => {
|
||
|
this.awesomplete.list = (await frappe.db.get_all({
|
||
|
doctype: this.options,
|
||
|
filters: {keywords: ["like", this.input.value]},
|
||
|
limit: 50
|
||
|
})).map(d => d.name);
|
||
|
});
|
||
|
}
|
||
|
};
|
||
|
|
||
|
module.exports = LinkControl;
|