Update.
This commit is contained in:
parent
7320592dc2
commit
cfbae4c5d5
3 changed files with 12 additions and 17 deletions
|
@ -1,4 +1,4 @@
|
||||||
const {each, debounce} = require('../lo');
|
const {filter, debounce} = require('../lo');
|
||||||
const {dom} = require('../dom');
|
const {dom} = require('../dom');
|
||||||
const event = require('../core/event');
|
const event = require('../core/event');
|
||||||
const location = require('../core/location');
|
const location = require('../core/location');
|
||||||
|
@ -25,8 +25,7 @@ let $filter;
|
||||||
let $input;
|
let $input;
|
||||||
|
|
||||||
|
|
||||||
const filter = pattern => {
|
const filterItems = (pattern = '') => {
|
||||||
pattern = pattern || '';
|
|
||||||
if (pattern === prevPattern) {
|
if (pattern === prevPattern) {
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
@ -40,26 +39,20 @@ const filter = pattern => {
|
||||||
$filter.addCls('pending');
|
$filter.addCls('pending');
|
||||||
|
|
||||||
const re = new RegExp(pattern, settings.ignorecase ? 'i' : '');
|
const re = new RegExp(pattern, settings.ignorecase ? 'i' : '');
|
||||||
const matchedItems = [];
|
const items = filter(location.getItem().content, item => re.test(item.label));
|
||||||
|
|
||||||
each(location.getItem().content, item => {
|
|
||||||
if (re.test(item.label)) {
|
|
||||||
matchedItems.push(item);
|
|
||||||
}
|
|
||||||
});
|
|
||||||
|
|
||||||
$filter.rmCls('pending');
|
$filter.rmCls('pending');
|
||||||
view.setHint('noMatch');
|
view.setHint('noMatch');
|
||||||
view.setItems(matchedItems);
|
view.setItems(items);
|
||||||
};
|
};
|
||||||
|
|
||||||
const update = () => {
|
const update = () => {
|
||||||
if (inputIsVisible) {
|
if (inputIsVisible) {
|
||||||
$filter.addCls('active');
|
$filter.addCls('active');
|
||||||
$input[0].focus();
|
$input[0].focus();
|
||||||
filter(util.parsePattern($input.val(), settings.advanced));
|
filterItems(util.parsePattern($input.val(), settings.advanced));
|
||||||
} else {
|
} else {
|
||||||
filter();
|
filterItems();
|
||||||
$filter.rmCls('active');
|
$filter.rmCls('active');
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
|
|
|
@ -27,8 +27,7 @@ let $search;
|
||||||
let $input;
|
let $input;
|
||||||
|
|
||||||
|
|
||||||
const search = pattern => {
|
const search = (pattern = '') => {
|
||||||
pattern = pattern || '';
|
|
||||||
if (pattern === prevPattern) {
|
if (pattern === prevPattern) {
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
|
@ -11,7 +11,10 @@ const settings = Object.assign({
|
||||||
clickndrag: false,
|
clickndrag: false,
|
||||||
checkboxes: false
|
checkboxes: false
|
||||||
}, allsettings.select);
|
}, allsettings.select);
|
||||||
const template = '<span class="selector"><img src="' + resource.image('selected') + '" alt="selected"/></span>';
|
const selectorTpl =
|
||||||
|
`<span class="selector">
|
||||||
|
<img src="${resource.image('selected')}" alt="selected"/>
|
||||||
|
</span>`;
|
||||||
let x = 0;
|
let x = 0;
|
||||||
let y = 0;
|
let y = 0;
|
||||||
let l = 0;
|
let l = 0;
|
||||||
|
@ -148,7 +151,7 @@ function onSelectorClick(ev) {
|
||||||
|
|
||||||
function addCheckbox(item) {
|
function addCheckbox(item) {
|
||||||
if (item.$view && !item.isCurrentParentFolder()) {
|
if (item.$view && !item.isCurrentParentFolder()) {
|
||||||
jq(template)
|
jq(selectorTpl)
|
||||||
.on('click', onSelectorClick)
|
.on('click', onSelectorClick)
|
||||||
.appendTo(item.$view.find('a'));
|
.appendTo(item.$view.find('a'));
|
||||||
}
|
}
|
||||||
|
|
Loading…
Add table
Reference in a new issue