UNPKG

filefive

Version:

SFTP/FTP/Amazon S3 client and dual-panel file manager for macOS and Linux

25 lines (24 loc) 651 B
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.filterRegExp = filterRegExp; function escapeRegExp(s) { let re = s.replace(/[/\-\\^$+.()|[\]{}]/g, '\\$&'); re = re.replaceAll('*', '.*'); re = re.replaceAll('?', '.{1}'); return re; } function filterRegExp(settings) { if (!settings?.text.length) { return null; } let source = settings.useRe ? settings.text : escapeRegExp(settings.text); if (settings.wholeWord) { source = `^${source}$`; } try { return new RegExp(source, settings.matchCase ? '' : 'i'); } catch { return null; } }