.then(function(lines) { var build = this , addonVersion = build.version.split('.').join(', ') , blenderVersion = build.blender.version.split('.').join(', ') ; var pre = _.takeWhile( lines , function(line) { return /^bl_info = {$/.test(line) === false; } ); var post = _.drop(_.dropWhile( _.drop(lines, pre.length) , function(line) { return /^}$/.test(line) === false; } ), 1); return pre .concat([ "bl_info = {" , [ ' "name":' + '"' + build.blender.name + '"' , ' "author":' + '"' + build.blender.author + '"' , ' "version":' + '(' + addonVersion + ')' , ' "blender":' + '(' + blenderVersion + ')' , ' "category":' + '"' + build.blender.category + '"' ].join(',\n') , "}" ]) .concat(post) ; })
static parseCriterion(input: *) { let age = parseInt(input, 10); if (isNaN(age)) throw new Error('Invalid age'); const ageQualifier = _.head(input.match(/Y|M|d|h|m|s/)) || 's'; age = _.dropWhile(qualifiers, ([qualifier]) => qualifier !== ageQualifier) .reduce((a, [, multiplier]) => a * multiplier, age); return { op: '<=', age }; }
export default function evaluate({ getter, data }) { if (_.every(getter, val => typeof val === 'string')) { return data.getIn(getter) } else { const getters = _.takeWhile(getter, val => _.isArray(val)) const coalescer = _.dropWhile(getter, val => _.isArray(val))[0] const values = getters.map(g => evaluate({ data, getter: g, })) return coalescer.apply(null, values) } }
add: function(history, task) { var src = history[0]; var dist = history[history.length - 1]; src = _.split(src, this.getSeparator(src)); src = _.dropWhile(src, function(o) { return !(o === 'src'); }); // drop src category from name of route src = _.drop(src); src = _.join(src, '/'); dist = _.split(dist, this.getSeparator(dist)); dist = _.dropWhile(dist, function(o) { return !(o === 'public'); }); dist = _.join(dist, '/'); // todo: for production need another way to give dist if (task && task in config.tasks && history[history.length - 1].indexOf(config.tasks[task].publicPath) !== -1) { dist = history[history.length - 1]; } if (src && dist) { this.map[src] = dist; } },
// where's span when I need it! function readUnread(chapters:Array<ChapterAndRead>) { var last = lastReadChapter(chapters) if (!last) { return {read: [], unread: chapters} } var read = takeWhile(chapters, function(c) { return c != last }).concat([last]) var unread = tail(dropWhile(chapters, function(c) { return c != last })) return {read, unread} }
function parseSection(section){ // Bűbájos bajok (Terry Pratchett) //- Highlight on Page 13 | Loc. 186-1 | Added on Monday, 21 April 14 17:34:53 GMT+02:01 var lines = section.trim().split(KIDNEL_NEWLINE), metaData = lines[1].match(METADATA_PARSER), page = metaData[2], location = metaData[3], locationStart = location ? location.split('-')[0] : undefined, time = new Date(metaData[4]); return { title: lines[0], type: metaData[1], page: page, location: location, time: time, order: parseInt(_.dropWhile([page, locationStart, time.getTime()], isNaN)[0], 10), content: lines.splice(2).join('\n').trim() } }
exports.create = function(comment, tag) { /** @var {Array.<exports.Line>} */ var lines = _.dropWhile(comment.getLines(), function(/** exports.Line **/line) { return !_.startsWith(line.getText().toLowerCase(), '@' + tag); }); if(lines.length === 0) { return []; } /** @var {Array.<exports.Line>} */ var body = _.takeWhile(_.rest(lines), function(/** exports.Line **/line) { return !_.startsWith(line.getText(), '@'); }); var name = exports.getName(lines[0]); var title = exports.getTitle(lines[0]); return [new exports.Tag(comment.getFile(), name, title, lines[0].getNum(), body)]; };
module.exports = function dropWhile(array, predicate, thisArg) { assertArgument(array = toArray(array), 1, 'Arrayable'); assertArgument(isPredicate(predicate), 2, 'Function | Object | string'); return _.dropWhile(array, predicate, thisArg); };
uriToPath (uri) { let filePath = decodeURI(url.parse(uri).pathname || '') if (process.platform === 'win32') { filePath = filePath.replace(/\//g, '\\').replace(/^(.+)\|/, '$1:').replace(/\\([A-Z]:\\)/, '$1') } else if (!filePath.startsWith('/')) { filePath = `/${filePath}` } return filePath }, heredoc (input) { if (input === null) { return null } const lines = _.dropWhile(input.split(/\r\n|\n|\r/), line => line.length === 0) const indentLength = _.takeWhile(lines[0], char => char === ' ').length const truncatedLines = lines.map(line => line.slice(indentLength)) return truncatedLines.join('\n') }, promisify (target) { return (...args) => { return new Promise((resolve, reject) => { target(...args, (error, data) => { error ? reject(error) : resolve(data) }) }) } }, getEditorDetails () {
], evaluate(thing, data) { const postTime = thing.getTimestamp(); if (!postTime) return false; const now = new Date(); return numericalCompare(data.op, now - postTime, data.age); }, pattern: 'x[(Y|M|d|h|m)] — where x is the number of seconds or Y year, M month, h hour, m minute (case sensitive)', qualifiers: [['Y', 12], ['M', 30.44], ['d', 24], ['h', 60], ['m', 60], ['s', 1000]], parse(input) { let age = parseFloat(input, 10); if (isNaN(age)) return null; const ageQualifier = _.head(input.match(/Y|M|d|h|m|s/)) || 's'; age = _.dropWhile(this.qualifiers, ([qualifier]): * => qualifier !== ageQualifier) .reduce((a, [, multiplier]) => a * multiplier, age); return this.defaultTemplate('<=', age); }, fromSelected(thing) { let remainder = (new Date() - new Date(thing.getTimestamp())); if (isNaN(remainder)) return null; let remainderQualifier = ''; for (const [qualifier, multiplier] of this.qualifiers.slice().reverse()) { if (remainder < multiplier) return remainder.toFixed(2) + remainderQualifier; remainder /= multiplier; remainderQualifier = qualifier; } },
var referenceBranch = "origin/master"; var restartWithFramework = args.restartWith || ''; var core = ["webdriver-ts", "webdriver-ts-results"].map(f => ["", f]); var frameworks = [].concat( fs.readdirSync('./frameworks/keyed').map(f => ['frameworks/keyed/', f]), fs.readdirSync('./frameworks/non-keyed').map(f => ['frameworks/non-keyed/', f])); var notRestarter = ([_, name]) => !name.startsWith(restartWithFramework || undefined); var [skippable, buildable] = !restartWithFramework ? [[], frameworks] : [_.takeWhile(frameworks, notRestarter), _.dropWhile(frameworks, notRestarter)]; var relevant = args.skipIrrelevant && !_.some(core, isDifferent) ? _.filter(buildable, isDifferent) : buildable; _.each(skippable, ([dir,name]) => console.log("*** Skipping " + dir + name)); _.each([].concat(relevant, core), function([dir,name]) { let fullname = dir + name; if(fs.statSync(fullname).isDirectory() && fs.existsSync(path.join(fullname, "package.json"))) { console.log("*** Executing npm install in "+fullname); exec('npm install', { cwd: fullname, stdio: 'inherit' });