New Case Study:See how Anthropic automated 95% of dependency reviews with Socket.Learn More
Socket
Sign inDemoInstall
Socket

flamebird

Package Overview
Dependencies
Maintainers
1
Versions
45
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

flamebird - npm Package Compare versions

Comparing version 1.7.1 to 1.7.3

223

lib/app/main.js

@@ -1,222 +0,1 @@

/* global $, axios, _ , FileLoader, WebLogger, Keyboard, TaskList, createSpan */
window.global = (function() {
var watchTaskLogsScrollTop = true
var theme
var logger
var taskList
var openedTask
var activeTab = 'Procfile'
var previousEnvs = null
function showTaskList() {
document.body.classList[
document.body.classList.contains('task-list-showed') ? 'remove' : 'add'
]('task-list-showed')
}
function runAllTasks(e) {
_.forEach(taskList.getAllFromActiveTab(), function(t) {
taskList.updateTask(t.name, t.isRun, t.isActive, true, false)
axios.post('/run/' + t.name)
})
}
function stopAllTasks(e) {
_.forEach(taskList.getAllFromActiveTab(true), function(t) {
taskList.updateTask(t.name, t.isRun, t.isActive, false, true)
axios.post('/stop/' + t.name)
})
}
function clearLogs(activeTask) {
if (!activeTask) {
activeTask = taskList.getActive()
}
axios.post('/clear-logs/' + activeTask.name)
activeTask.logs = []
logger.clear()
}
function triggerScrollWatcher(e) {
logger.scrollTo('bottom', true)
watchTaskLogsScrollTop = !watchTaskLogsScrollTop
$('.logs-button.autoscroll').toggleClass('active', watchTaskLogsScrollTop)
}
function handleClickTab(tab) {
if (tab !== activeTab) {
taskList.changeTab(tab)
}
}
function enableEnvsForm() {
$('.envs-log').addClass('active')
previousEnvs = _.clone(taskList.getActive().envs)
}
function updateEnvs() {
$('.envs-log').removeClass('active')
var activeTask = taskList.getActive()
_.each($('.envs-log > input'), function(el) {
var input = $(el)
previousEnvs[input.attr('key')] = input.val()
})
activeTask.envs = _.clone(previousEnvs)
clearLogs(activeTask)
axios.post('/update-envs', {
name: activeTask.name,
envs: _.clone(previousEnvs),
})
previousEnvs = null
}
function cancelEnvs() {
$('.envs-log').removeClass('active')
_.each($('.envs-log > input'), function(el) {
var input = $(el)
input.val(previousEnvs[input.attr('key')])
})
taskList.getActive().envs = _.clone(previousEnvs)
previousEnvs = null
}
function openTask(name) {
if (name !== openedTask) {
var task = taskList.getTask(name)
if (task.name) {
taskList.setActive(task)
openedTask = name
// setActiveCommand(task)
logger.clear(true)
axios.get('/logs/' + task.name).then(function(response) {
logger.updateDescription(task.task)
logger.updateEnvs(task.envs)
var logs = ''
_.forEach(response.data, function(log, index) {
logs += logger.createHTMLLog(log)
})
setTimeout(function() {
logger.push(logs, true)
logger.scrollTo('bottom')
}, 0)
})
}
}
}
function runTask(name) {
window.event.stopPropagation()
var task = taskList.getTask(name)
if (!task.isStartRunning && !task.isRun) {
taskList.setActive(task, true)
axios.post('/run/' + task.name)
}
}
function stopTask(name) {
window.event.stopPropagation()
var task = taskList.getTask(name)
if (!task.isStartRunning && task.isRun) {
// var taskButton = $('#' + task.name)
taskList.updateTask(task.name, false, task.isActive, false, true)
// taskButton.addClass('stopping')
axios.post('/stop/' + task.name)
}
}
function setTheme(newTheme) {
if (newTheme !== theme) {
localStorage.setItem('theme', newTheme)
if (theme !== 'white') {
FileLoader(theme + '-theme.css', true)
}
$('.menu-item.' + theme).removeClass('active')
$('.menu-item.' + newTheme).addClass('active')
if (newTheme !== 'white') {
FileLoader(newTheme + '-theme.css')
}
theme = newTheme
}
}
var keyboardEnabled = false
var fullscreene = false
function toggleKeyboard() {
keyboardEnabled = !keyboardEnabled
if (!keyboardEnabled && window.Keyboard) {
Keyboard.setEnabled(false)
window.Keyboard = null
}
document
.querySelector('.menu-item.keyboard')
.classList[keyboardEnabled ? 'add' : 'remove']('active')
FileLoader('keyboard-shortcuts.css', !keyboardEnabled)
FileLoader('keyboard.js', !keyboardEnabled)
}
function toggleResize() {
fullscreene = !fullscreene
document
.querySelector('.menu-item.resize')
.classList[fullscreene ? 'add' : 'remove']('active')
FileLoader('fullscreene.css', !fullscreene)
}
$(document).ready(function() {
setTheme(localStorage.getItem('theme') || 'white')
logger = window.logger = new WebLogger(document.getElementById('task-logs'))
axios.get('/info').then(function(response) {
var appName = response.data.appName
if (appName) {
$('title').text(appName + ' | fb')
var headerTitle = $('header > .title')
headerTitle
.text(appName)
.on('mouseover', function() {
axios.get('/project-version').then(function(response) {
if (response.data) {
headerTitle.html(
appName + createSpan('project-version', response.data)
)
}
})
})
.on('mouseleave', function() {
headerTitle.text(appName)
})
} // getProjectVersion
taskList = window.taskList = new TaskList(
document.getElementById('tasks'),
response.data.commands
)
new WebSocket('ws://' + location.host).onmessage = function(message) {
var data = JSON.parse(message.data)
if (data.name) {
var command = taskList.updateTask(data.name, data.isRun)
if (data.log) {
if (command.isActive) {
logger.push(data.log)
if (watchTaskLogsScrollTop) logger.scrollTo('bottom')
}
}
}
}
})
})
return {
showTaskList: showTaskList,
runAllTasks: runAllTasks,
stopAllTasks: stopAllTasks,
triggerScrollWatcher: triggerScrollWatcher,
handleClickTab: handleClickTab,
enableEnvsForm: enableEnvsForm,
updateEnvs: updateEnvs,
cancelEnvs: cancelEnvs,
clearLogs: clearLogs,
setTheme: setTheme,
openTask: openTask,
runTask: runTask,
stopTask: stopTask,
toggleKeyboard: toggleKeyboard,
toggleResize: toggleResize,
}
})()
!function(e){var t={};function n(o){if(t[o])return t[o].exports;var a=t[o]={i:o,l:!1,exports:{}};return e[o].call(a.exports,a,a.exports,n),a.l=!0,a.exports}n.m=e,n.c=t,n.d=function(e,t,o){n.o(e,t)||Object.defineProperty(e,t,{configurable:!1,enumerable:!0,get:o})},n.r=function(e){Object.defineProperty(e,"__esModule",{value:!0})},n.n=function(e){var t=e&&e.__esModule?function(){return e.default}:function(){return e};return n.d(t,"a",t),t},n.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},n.p="",n(n.s=0)}([function(e,t){window.global=function(){var e,t,n,o,a=!0,s="Procfile",i=null;function c(e){e||(e=n.getActive()),axios.post("/clear-logs/"+e.name),e.logs=[],t.clear()}function r(t){t!==e&&(localStorage.setItem("theme",t),"white"!==e&&FileLoader(e+"-theme.css",!0),$(".menu-item."+e).removeClass("active"),$(".menu-item."+t).addClass("active"),"white"!==t&&FileLoader(t+"-theme.css"),e=t)}var l=!1,u=!1;return $(document).ready(function(){r(localStorage.getItem("theme")||"white"),t=window.logger=new WebLogger(document.getElementById("task-logs")),axios.get("/info").then(function(e){var o=e.data.appName;if(o){$("title").text(o+" | fb");var s=$("header > .title");s.text(o).on("mouseover",function(){axios.get("/project-version").then(function(e){e.data&&s.html(o+createSpan("project-version",e.data))})}).on("mouseleave",function(){s.text(o)})}n=window.taskList=new TaskList(document.getElementById("tasks"),e.data.commands),new WebSocket("ws://"+location.host).onmessage=function(e){var o=JSON.parse(e.data);if(o.name){var s=n.updateTask(o.name,o.isRun);o.log&&s.isActive&&(t.push(o.log),a&&t.scrollTo("bottom"))}}})}),{showTaskList:function(){document.body.classList[document.body.classList.contains("task-list-showed")?"remove":"add"]("task-list-showed")},runAllTasks:function(e){_.forEach(n.getAllFromActiveTab(),function(e){n.updateTask(e.name,e.isRun,e.isActive,!0,!1),axios.post("/run/"+e.name)})},stopAllTasks:function(e){_.forEach(n.getAllFromActiveTab(!0),function(e){n.updateTask(e.name,e.isRun,e.isActive,!1,!0),axios.post("/stop/"+e.name)})},triggerScrollWatcher:function(e){t.scrollTo("bottom",!0),a=!a,$(".logs-button.autoscroll").toggleClass("active",a)},handleClickTab:function(e){e!==s&&n.changeTab(e)},enableEnvsForm:function(){$(".envs-log").addClass("active"),i=_.clone(n.getActive().envs)},updateEnvs:function(){$(".envs-log").removeClass("active");var e=n.getActive();_.each($(".envs-log > input"),function(e){var t=$(e);i[t.attr("key")]=t.val()}),e.envs=_.clone(i),c(e),axios.post("/update-envs",{name:e.name,envs:_.clone(i)}),i=null},cancelEnvs:function(){$(".envs-log").removeClass("active"),_.each($(".envs-log > input"),function(e){var t=$(e);t.val(i[t.attr("key")])}),n.getActive().envs=_.clone(i),i=null},clearLogs:c,setTheme:r,openTask:function(e){if(e!==o){var a=n.getTask(e);a.name&&(n.setActive(a),o=e,t.clear(!0),axios.get("/logs/"+a.name).then(function(e){t.updateDescription(a.task),t.updateEnvs(a.envs);var n="";_.forEach(e.data,function(e,o){n+=t.createHTMLLog(e)}),setTimeout(function(){t.push(n,!0),t.scrollTo("bottom")},0)}))}},runTask:function(e){window.event.stopPropagation();var t=n.getTask(e);t.isStartRunning||t.isRun||(n.setActive(t,!0),axios.post("/run/"+t.name))},stopTask:function(e){window.event.stopPropagation();var t=n.getTask(e);!t.isStartRunning&&t.isRun&&(n.updateTask(t.name,!1,t.isActive,!1,!0),axios.post("/stop/"+t.name))},toggleKeyboard:function(){!(l=!l)&&window.Keyboard&&(Keyboard.setEnabled(!1),window.Keyboard=null),document.querySelector(".menu-item.keyboard").classList[l?"add":"remove"]("active"),FileLoader("keyboard-shortcuts.css",!l),FileLoader("keyboard.js",!l)},toggleResize:function(){u=!u,document.querySelector(".menu-item.resize").classList[u?"add":"remove"]("active"),FileLoader("fullscreene.css",!u)}}}()}]);

@@ -1,92 +0,1 @@

/* global $, _ */
window.createButton = function(classes, icon, onClick, asJqElement, innerText) {// eslint-disable-line
var button
if (asJqElement) {
button = $('<button></button>')
button.addClass(classes)
if (icon) {
var iconEl = $('<i class="fas fa-' + icon + '"></i>')
button.html(iconEl)
}
if (innerText) {
button.append(window.createSpan('', innerText))
}
if (onClick) {
button.on('click', onClick)
}
} else {
button =
'<button ' +
(onClick ? 'onclick="' + onClick + '"' : '') +
' class="' +
classes +
'">' +
(icon ? '<i class="fas fa-' + icon + '"></i>' : '') +
(innerText || '') +
'</button>'
}
return button
}
window.createSpan = function(classes, text) {
return '<span class="' + (classes || '') + '">' + text + '</span>'
}
window.funcToStr = function(func) { // eslint-disable-line
var args = _.slice(arguments, 1)
return (
func.name +
'(' +
_(args)
.map(function(arg) {
switch (typeof arg) {
case 'string':
return "'" + arg + "'"
default:
return arg
}
})
.join(',') +
')'
)
}
window.createDiv = function(// eslint-disable-line
classes,
innerText,
icon,
id,
onClick,
asJqElement
) {
var element =
'<div ' +
(id ? "id='" + id + "'" : '') +
(onClick && !asJqElement ? 'onclick="' + onClick + '"' : '') +
' class="' +
classes +
'">' +
(icon ? '<i class="fas fa-' + icon + '"></i>' : '') +
(innerText || '') +
'</div>'
if (asJqElement) {
element = $(element)
if (onClick) {
element.on('click', onClick)
}
}
return element
}
window.createEnvsInput = function(key, value) {// eslint-disable-line
return (
'<input class="env-value ansi-bright-blue-fg" onkeypress="this.style.width = ((this.value.length + 1) * 8) + \'px\';" key="' +
key +
'" value="' +
value +
'" style="width:' +
((value.length + 1) * 5.1 + 4) +
'px;"/>'
)
}
!function(n){var t={};function e(r){if(t[r])return t[r].exports;var i=t[r]={i:r,l:!1,exports:{}};return n[r].call(i.exports,i,i.exports,e),i.l=!0,i.exports}e.m=n,e.c=t,e.d=function(n,t,r){e.o(n,t)||Object.defineProperty(n,t,{configurable:!1,enumerable:!0,get:r})},e.r=function(n){Object.defineProperty(n,"__esModule",{value:!0})},e.n=function(n){var t=n&&n.__esModule?function(){return n.default}:function(){return n};return e.d(t,"a",t),t},e.o=function(n,t){return Object.prototype.hasOwnProperty.call(n,t)},e.p="",e(e.s=4)}({4:function(n,t){window.createButton=function(n,t,e,r,i){var o;if(r){if((o=$("<button></button>")).addClass(n),t){var a=$('<i class="fas fa-'+t+'"></i>');o.html(a)}i&&o.append(window.createSpan("",i)),e&&o.on("click",e)}else o="<button "+(e?'onclick="'+e+'"':"")+' class="'+n+'">'+(t?'<i class="fas fa-'+t+'"></i>':"")+(i||"")+"</button>";return o},window.createSpan=function(n,t){return'<span class="'+(n||"")+'">'+t+"</span>"},window.funcToStr=function(n){var t=_.slice(arguments,1);return n.name+"("+_(t).map(function(n){switch(typeof n){case"string":return"'"+n+"'";default:return n}}).join(",")+")"},window.createDiv=function(n,t,e,r,i,o){var a="<div "+(r?"id='"+r+"'":"")+(i&&!o?'onclick="'+i+'"':"")+' class="'+n+'">'+(e?'<i class="fas fa-'+e+'"></i>':"")+(t||"")+"</div>";return o&&(a=$(a),i&&a.on("click",i)),a},window.createEnvsInput=function(n,t){return'<input class="env-value ansi-bright-blue-fg" onkeypress="this.style.width = ((this.value.length + 1) * 8) + \'px\';" key="'+n+'" value="'+t+'" style="width:'+(5.1*(t.length+1)+4)+'px;"/>'}}});

@@ -1,53 +0,1 @@

/* global jQuery */
window.FileLoader = (function($) {// eslint-disable-line
function createLink(filename) {
var link = document.createElement('link')
link.type = 'text/css'
link.rel = 'stylesheet'
link.href = 'styles/' + filename
return link
}
function createScript(filename) {
var script = document.createElement('script')
script.src = 'scripts/' + filename
return script
}
function appendTo(element, appendElement) {
setTimeout(function() {
document.getElementsByTagName(element)[0].appendChild(appendElement)
}, 0)
}
function removeFile(filename) {
setTimeout(function() {
var element = null
if (filename.includes('.css')) {
element = document.querySelector('link[href="styles/' + filename + '"]')
}
if (filename.includes('.js')) {
element = document.querySelector(
'script[src="scripts/' + filename + '"]'
)
}
if (element) {
element.parentElement.removeChild(element)
}
}, 0)
}
return function(filename, remove) {
if (remove) {
removeFile(filename)
} else {
if (filename.includes('.css')) {
// $('[href="styles/'+filename+'"]')
appendTo('head', createLink(filename))
}
if (filename.includes('.js')) {
appendTo('body', createScript(filename))
}
}
}
})(jQuery)
!function(e){var t={};function n(r){if(t[r])return t[r].exports;var u=t[r]={i:r,l:!1,exports:{}};return e[r].call(u.exports,u,u.exports,n),u.l=!0,u.exports}n.m=e,n.c=t,n.d=function(e,t,r){n.o(e,t)||Object.defineProperty(e,t,{configurable:!1,enumerable:!0,get:r})},n.r=function(e){Object.defineProperty(e,"__esModule",{value:!0})},n.n=function(e){var t=e&&e.__esModule?function(){return e.default}:function(){return e};return n.d(t,"a",t),t},n.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},n.p="",n(n.s=3)}({3:function(e,t){window.FileLoader=function(e){function t(e,t){setTimeout(function(){document.getElementsByTagName(e)[0].appendChild(t)},0)}return function(e,n){n?function(e){setTimeout(function(){var t=null;e.includes(".css")&&(t=document.querySelector('link[href="styles/'+e+'"]')),e.includes(".js")&&(t=document.querySelector('script[src="scripts/'+e+'"]')),t&&t.parentElement.removeChild(t)},0)}(e):(e.includes(".css")&&t("head",function(e){var t=document.createElement("link");return t.type="text/css",t.rel="stylesheet",t.href="styles/"+e,t}(e)),e.includes(".js")&&t("body",function(e){var t=document.createElement("script");return t.src="scripts/"+e,t}(e)))}}(jQuery)}});

@@ -1,106 +0,1 @@

/* global $, taskList, _ */
window.Keyboard = (function() { //eslint-disable-line
var global = window.global
var isEnabled = false
var taskCharCodes = [
81,
87,
69,
82,
84,
89,
85,
73,
79,
80,
219,
221,
65,
83,
68,
70,
71,
72,
74,
75,
76,
186,
222,
90,
88,
67,
86,
66,
78,
77,
188,
190,
191,
]
function onKeydown(event) {
if (event.target.tagName !== 'INPUT') {
if (event.shiftKey) {
if (event.keyCode === 82) {
event.preventDefault()
event.stopPropagation()
var task = taskList.getActive()
if (!task.isStartRunning) {
if (task.isRun) {
global.stopTask(task.name)
} else {
global.runTask(task.name)
}
}
event.keyCode = 0
event.ctrlKey = false
event.cancelBubble = true
return false
}
} else {
if (event.keyCode === 9) {
global.handleClickTab(
taskList.getActiveTab() === 'npm' ? 'procfile' : 'npm'
)
} else {
$('.task[char-code="' + event.keyCode + '"]').trigger('click')
}
}
}
event.keyCode = 0
event.ctrlKey = false
event.cancelBubble = true
event.preventDefault()
event.stopPropagation()
return false
}
function setEnabled(enabled) {
isEnabled = enabled
if (isEnabled) {
window.addEventListener('keydown', onKeydown, false)
} else {
window.removeEventListener('keydown', onKeydown)
}
}
function connect(element, indexKeycode) {
element.setAttribute('char-code', taskCharCodes[indexKeycode])
}
var currentTasks = document.querySelectorAll('.task')
_.forEach(currentTasks, function(task, index) {
connect(task, index)
})
setEnabled(true)
return {
setEnabled: setEnabled,
isEnabled: function() {
return isEnabled
},
connect: connect,
}
})()
!function(e){var t={};function n(r){if(t[r])return t[r].exports;var o=t[r]={i:r,l:!1,exports:{}};return e[r].call(o.exports,o,o.exports,n),o.l=!0,o.exports}n.m=e,n.c=t,n.d=function(e,t,r){n.o(e,t)||Object.defineProperty(e,t,{configurable:!1,enumerable:!0,get:r})},n.r=function(e){Object.defineProperty(e,"__esModule",{value:!0})},n.n=function(e){var t=e&&e.__esModule?function(){return e.default}:function(){return e};return n.d(t,"a",t),t},n.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},n.p="",n(n.s=2)}({2:function(e,t){window.Keyboard=function(){var e=window.global,t=!1,n=[81,87,69,82,84,89,85,73,79,80,219,221,65,83,68,70,71,72,74,75,76,186,222,90,88,67,86,66,78,77,188,190,191];function r(t){if("INPUT"!==t.target.tagName)if(t.shiftKey){if(82===t.keyCode){t.preventDefault(),t.stopPropagation();var n=taskList.getActive();return n.isStartRunning||(n.isRun?e.stopTask(n.name):e.runTask(n.name)),t.keyCode=0,t.ctrlKey=!1,t.cancelBubble=!0,!1}}else 9===t.keyCode?e.handleClickTab("npm"===taskList.getActiveTab()?"procfile":"npm"):$('.task[char-code="'+t.keyCode+'"]').trigger("click");return t.keyCode=0,t.ctrlKey=!1,t.cancelBubble=!0,t.preventDefault(),t.stopPropagation(),!1}function o(e){(t=e)?window.addEventListener("keydown",r,!1):window.removeEventListener("keydown",r)}function a(e,t){e.setAttribute("char-code",n[t])}var i=document.querySelectorAll(".task");return _.forEach(i,function(e,t){a(e,t)}),o(!0),{setEnabled:o,isEnabled:function(){return t},connect:a}}()}});

@@ -1,146 +0,1 @@

/* global $, _ , createButton, global, Keyboard, createSpan */
window.TaskList = (function() {// eslint-disable-line
var element
var taskList = {
npm: [],
procfile: [],
}
var activeTab
var activeTask = {
npm: null,
procfile: null,
}
function updateTaskList() {
taskList[activeTab].forEach(function(taskData, index) {
var task = document.createElement('div')
task.classList.add(
'task',
'task-num-' + (index + 1),
taskData.isRun && 'running',
taskData.isStartRunning && 'clicked'
)
task.setAttribute('id', taskData.name)
task.setAttribute('onclick', "global.openTask('" + taskData.name + "')")
if (window.Keyboard) {
Keyboard.connect(task, index)
}
task.innerHTML =
'<i class="fas fa-cog"></i>' +
createSpan('task-name', taskData.name) +
createButton(
'run-task',
'play',
"global.runTask('" + taskData.name + "')"
) +
createButton(
'stop-task',
'stop',
"global.stopTask('" + taskData.name + "')"
)
element.appendChild(task)
})
setTimeout(function() {
$('#' + activeTask[activeTab]).trigger('click')
}, 0)
}
function changeTab(newTab) {
document.getElementById(activeTab).classList.remove('active')
activeTab = newTab
document.getElementById(activeTab).classList.add('active')
clear()
updateTaskList()
}
function getTask(name) {
return _.find(taskList[activeTab], function(c) {
return c.name === name
})
}
function updateTask(name, isRun, isActive, isStartRunning, isStopping) {
var task = getTask(name)
var taskButton = document.getElementById(name)
console.log(name, task)
task.isRun = isRun
task.isStartRunning = !!isStartRunning
task.isStopping = !!isStopping
if (isActive) {
task.isActive = true
var previousActiveTask = document.querySelector('.task.active')
if (previousActiveTask) {
var id = previousActiveTask.getAttribute('id')
if (id !== name) {
getTask(previousActiveTask.getAttribute('id')).isActive = false
previousActiveTask.classList.remove('active')
}
}
taskButton.classList.add('active')
}
taskButton.classList[isStopping ? 'add' : 'remove']('stopping')
taskButton.classList[isRun ? 'add' : 'remove']('running')
taskButton.classList[isStartRunning ? 'add' : 'remove']('clicked')
return task
}
function clear() {
while (element.lastChild) {
element.removeChild(element.lastChild)
}
}
function setActive(task, isStartRunning, isStopping) {
activeTask[task.isNPM ? 'npm' : 'procfile'] = task.name
updateTask(
task.name,
task.isRun,
true,
isStartRunning === undefined ? task.isStartRunning : isStartRunning,
isStopping === undefined ? task.isStopping : isStopping
)
}
function getActive() {
return getTask(activeTask[activeTab])
}
function getAllFromActiveTab(isRun) {
return isRun
? _.filter(taskList[activeTab], function(task) {
return task.isRun
})
: taskList[activeTab]
}
return function(el, tasks) {
element = el
taskList = _.reduce(
tasks,
function(newTaskList, task) {
newTaskList[task.isNPM ? 'npm' : 'procfile'].push(task)
return newTaskList
},
{
npm: [],
procfile: [],
}
)
activeTask.npm = taskList.npm[0].name
activeTask.procfile = taskList.procfile[0].name
activeTab = taskList.procfile.length ? 'procfile' : 'npm'
updateTaskList()
return {
updateTaskList: updateTaskList,
clear: clear,
changeTab: changeTab,
getTask: getTask,
updateTask: updateTask,
setActive: setActive,
getActive: getActive,
getActiveTab: function() {
return activeTab
},
getAllFromActiveTab: getAllFromActiveTab,
}
}
})()
!function(t){var e={};function n(i){if(e[i])return e[i].exports;var r=e[i]={i:i,l:!1,exports:{}};return t[i].call(r.exports,r,r.exports,n),r.l=!0,r.exports}n.m=t,n.c=e,n.d=function(t,e,i){n.o(t,e)||Object.defineProperty(t,e,{configurable:!1,enumerable:!0,get:i})},n.r=function(t){Object.defineProperty(t,"__esModule",{value:!0})},n.n=function(t){var e=t&&t.__esModule?function(){return t.default}:function(){return t};return n.d(e,"a",e),e},n.o=function(t,e){return Object.prototype.hasOwnProperty.call(t,e)},n.p="",n(n.s=1)}([,function(t,e){window.TaskList=function(){var t,e,n={npm:[],procfile:[]},i={npm:null,procfile:null};function r(){n[e].forEach(function(e,n){var i=document.createElement("div");i.classList.add("task","task-num-"+(n+1),e.isRun&&"running",e.isStartRunning&&"clicked"),i.setAttribute("id",e.name),i.setAttribute("onclick","global.openTask('"+e.name+"')"),window.Keyboard&&Keyboard.connect(i,n),i.innerHTML='<i class="fas fa-cog"></i>'+createSpan("task-name",e.name)+createButton("run-task","play","global.runTask('"+e.name+"')")+createButton("stop-task","stop","global.stopTask('"+e.name+"')"),t.appendChild(i)}),setTimeout(function(){$("#"+i[e]).trigger("click")},0)}function a(t){document.getElementById(e).classList.remove("active"),e=t,document.getElementById(e).classList.add("active"),u(),r()}function c(t){return _.find(n[e],function(e){return e.name===t})}function o(t,e,n,i,r){var a=c(t),o=document.getElementById(t);if(a.isRun=e,a.isStartRunning=!!i,a.isStopping=!!r,n){a.isActive=!0;var u=document.querySelector(".task.active");if(u)u.getAttribute("id")!==t&&(c(u.getAttribute("id")).isActive=!1,u.classList.remove("active"));o.classList.add("active")}return o.classList[r?"add":"remove"]("stopping"),o.classList[e?"add":"remove"]("running"),o.classList[i?"add":"remove"]("clicked"),a}function u(){for(;t.lastChild;)t.removeChild(t.lastChild)}function s(t,e,n){i[t.isNPM?"npm":"procfile"]=t.name,o(t.name,t.isRun,!0,void 0===e?t.isStartRunning:e,void 0===n?t.isStopping:n)}function l(){return c(i[e])}function d(t){return t?_.filter(n[e],function(t){return t.isRun}):n[e]}return function(f,p){return t=f,n=_.reduce(p,function(t,e){return t[e.isNPM?"npm":"procfile"].push(e),t},{npm:[],procfile:[]}),i.npm=n.npm[0].name,i.procfile=n.procfile[0].name,e=n.procfile.length?"procfile":"npm",r(),{updateTaskList:r,clear:u,changeTab:a,getTask:c,updateTask:o,setActive:s,getActive:l,getActiveTab:function(){return e},getAllFromActiveTab:d}}}()}]);

@@ -1,112 +0,1 @@

/* global jQuery, _ , createButton, AnsiUp, createSpan, createEnvsInput */
window.WebLogger = (function($) {// eslint-disable-line
var element
var containsEnvs = false
var ansiUp
function scrollTo(direction, animate) {
if (direction === 'bottom') {
if (animate) {
$(element).animate(
{
scrollTop: element.scrollHeight,
},
'1500'
)
} else {
element.scrollTop = element.scrollHeight
}
}
if (direction === 'top') {
$(element).animate({ scrollTop: 0 }, '500')
}
}
function createHTMLLog(logData) {
var log = ansiUp.ansi_to_html(
logData.replace(/[\n\r]/g, '<br>').replace(/ /g, '&nbsp;')
)
if (log.includes('Warning:')) {
return createSpan('ansi-yellow-fg', log)
}
if (log.includes('Exited&nbsp;Successfully')) {
return createSpan('ended ok', log) + '<br><br>'
}
if (log.includes('Exited&nbsp;with&nbsp;exit&nbsp;code&nbsp;')) {
return createSpan('ended', log) + '<br><br>'
}
return log
.replace(/(<span class="ansi-bright-black-fg">.<\/span>)/g, function(
conc
) {
return createSpan('ansi-bright-black-fg mocha-test', '.')
})
.replace(/(<span class="ansi-red-fg">!<\/span>)/g, function(conc) {
return createSpan('ansi-red-fg mocha-test', '!')
})
}
function push(log, raw) {
element.insertAdjacentHTML('beforeend', raw ? log : this.createHTMLLog(log))
}
function clear(full) {
while (
full
? element.lastChild
: element.children.length > (containsEnvs ? 2 : 1)
) {
element.removeChild(element.lastChild)
}
}
function updateEnvs(envs) {
containsEnvs = _.keys(envs).length
if (containsEnvs) {
var container = document.createElement('div')
container.classList.add('envs-log')
container.innerHTML =
_.map(envs, function(value, key) {
return (
createSpan('ansi-bright-magenta-fg', key) +
'=' +
createEnvsInput(key, value)
)
}).join(', ') +
createButton('logs-button', 'edit', 'global.enableEnvsForm()') +
createButton('logs-button cancel', 'times', 'global.cancelEnvs()') +
createButton('logs-button apply', 'check', 'global.updateEnvs()')
element.appendChild(container)
}
}
function updateDescription(description) {
var container = document.createElement('div')
container.classList.add('task-data')
var span = document.createElement('span')
span.innerText = description
container.appendChild(span)
element.appendChild(container)
}
function onScroll() {
if (this.scrollTop > 70) {
this.classList.add('flying')
} else {
this.classList.remove('flying')
}
}
return function WebLogger(el) {
element = el
element.addEventListener('scroll', onScroll)
ansiUp = new AnsiUp()
ansiUp.use_classes = true
ansiUp.escape_for_html = false
return {
scrollTo: scrollTo,
createHTMLLog: createHTMLLog,
push: push,
clear: clear,
updateEnvs: updateEnvs,
updateDescription: updateDescription,
}
}
})(jQuery)
!function(e){var n={};function t(r){if(n[r])return n[r].exports;var a=n[r]={i:r,l:!1,exports:{}};return e[r].call(a.exports,a,a.exports,t),a.l=!0,a.exports}t.m=e,t.c=n,t.d=function(e,n,r){t.o(e,n)||Object.defineProperty(e,n,{configurable:!1,enumerable:!0,get:r})},t.r=function(e){Object.defineProperty(e,"__esModule",{value:!0})},t.n=function(e){var n=e&&e.__esModule?function(){return e.default}:function(){return e};return t.d(n,"a",n),n},t.o=function(e,n){return Object.prototype.hasOwnProperty.call(e,n)},t.p="",t(t.s=0)}([function(e,n){window.WebLogger=function(e){var n,t,r=!1;function a(t,r){"bottom"===t&&(r?e(n).animate({scrollTop:n.scrollHeight},"1500"):n.scrollTop=n.scrollHeight),"top"===t&&e(n).animate({scrollTop:0},"500")}function c(e){var n=t.ansi_to_html(e.replace(/[\n\r]/g,"<br>").replace(/ /g,"&nbsp;"));return n.includes("Warning:")?createSpan("ansi-yellow-fg",n):n.includes("Exited&nbsp;Successfully")?createSpan("ended ok",n)+"<br><br>":n.includes("Exited&nbsp;with&nbsp;exit&nbsp;code&nbsp;")?createSpan("ended",n)+"<br><br>":n.replace(/(<span class="ansi-bright-black-fg">.<\/span>)/g,function(e){return createSpan("ansi-bright-black-fg mocha-test",".")}).replace(/(<span class="ansi-red-fg">!<\/span>)/g,function(e){return createSpan("ansi-red-fg mocha-test","!")})}function o(e,t){n.insertAdjacentHTML("beforeend",t?e:this.createHTMLLog(e))}function s(e){for(;e?n.lastChild:n.children.length>(r?2:1);)n.removeChild(n.lastChild)}function l(e){if(r=_.keys(e).length){var t=document.createElement("div");t.classList.add("envs-log"),t.innerHTML=_.map(e,function(e,n){return createSpan("ansi-bright-magenta-fg",n)+"="+createEnvsInput(n,e)}).join(", ")+createButton("logs-button","edit","global.enableEnvsForm()")+createButton("logs-button cancel","times","global.cancelEnvs()")+createButton("logs-button apply","check","global.updateEnvs()"),n.appendChild(t)}}function i(e){var t=document.createElement("div");t.classList.add("task-data");var r=document.createElement("span");r.innerText=e,t.appendChild(r),n.appendChild(t)}function u(){this.scrollTop>70?this.classList.add("flying"):this.classList.remove("flying")}return function(e){return(n=e).addEventListener("scroll",u),(t=new AnsiUp).use_classes=!0,t.escape_for_html=!1,{scrollTo:a,createHTMLLog:c,push:o,clear:s,updateEnvs:l,updateDescription:i}}}(jQuery)}]);

11

package.json
{
"name": "flamebird",
"version": "1.7.1",
"version": "1.7.3",
"description": "wonderful task manager for Procfile-based or npm-based applications",
"main": "flamebird.js",
"scripts": {
"webpack": "node_modules/.bin/webpack",
"lint-js-fix": "yarn lint-js --fix",
"lint-js": "eslint .",
"postinstall": "yarn webpack --config webpack.config.js"
"build-prod": "yarn webpack --config webpack.config.js",
"prepublish": "yarn build-prod",
"postpublish": "git checkout lib flamebird.js"
},

@@ -50,4 +53,4 @@ "repository": {

"prettier": "1.10.2",
"webpack": "4.8.2",
"webpack-cli": "2.1.3"
"webpack": "^4.8.2",
"webpack-cli": "^2.1.3"
},

@@ -54,0 +57,0 @@ "directories": {

@@ -20,6 +20,2 @@ const fs = require('fs')

}
console.log(
_.merge({}, getEntries('./lib/app/'), getEntries('./lib/app/scripts/'))
)
module.exports = [

@@ -26,0 +22,0 @@ {

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap
  • Changelog

Packages

npm

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc