to false
- for(k in _MODIFIERS) assignKey[k] = false;
-
- // set current scope (default 'all')
- function setScope(scope){ _scope = scope || 'all' };
- function getScope(){ return _scope || 'all' };
-
- // delete all handlers for a given scope
- function deleteScope(scope){
- var key, handlers, i;
-
- for (key in _handlers) {
- handlers = _handlers[key];
- for (i = 0; i < handlers.length; ) {
- if (handlers[i].scope === scope) handlers.splice(i, 1);
- else i++;
- }
- }
- };
-
- // abstract key logic for assign and unassign
- function getKeys(key) {
- var keys;
- key = key.replace(/\s/g, '');
- keys = key.split(',');
- if ((keys[keys.length - 1]) == '') {
- keys[keys.length - 2] += ',';
- }
- return keys;
- }
-
- // abstract mods logic for assign and unassign
- function getMods(key) {
- var mods = key.slice(0, key.length - 1);
- for (var mi = 0; mi < mods.length; mi++)
- mods[mi] = _MODIFIERS[mods[mi]];
- return mods;
- }
-
- // cross-browser events
- function addEvent(object, event, method) {
- if (object.addEventListener)
- object.addEventListener(event, method, false);
- else if(object.attachEvent)
- object.attachEvent('on'+event, function(){ method(window.event) });
- };
-
- // set the handlers globally on document
- addEvent(document, 'keydown', function(event) { dispatch(event) }); // Passing _scope to a callback to ensure it remains the same by execution. Fixes #48
- addEvent(document, 'keyup', clearModifier);
-
- // reset modifiers to false whenever the window is (re)focused.
- addEvent(window, 'focus', resetModifiers);
-
- // store previously defined key
- var previousKey = global.key;
-
- // restore previously defined key and return reference to our key object
- function noConflict() {
- var k = global.key;
- global.key = previousKey;
- return k;
- }
-
- // set window.key and window.key.set/get/deleteScope, and the default filter
- global.key = assignKey;
- global.key.setScope = setScope;
- global.key.getScope = getScope;
- global.key.deleteScope = deleteScope;
- global.key.filter = filter;
- global.key.isPressed = isPressed;
- global.key.isModifier = isModifierPressed;
- global.key.getPressedKeyCodes = getPressedKeyCodes;
- global.key.noConflict = noConflict;
- global.key.unbind = unbindKey;
-
- if(typeof module !== 'undefined') module.exports = assignKey;
-
-})(this);
diff --git a/html_orig/jssrc/lang.js b/html_orig/jssrc/lang.js
deleted file mode 100644
index 327dae9..0000000
--- a/html_orig/jssrc/lang.js
+++ /dev/null
@@ -1,8 +0,0 @@
-// Generated from PHP locale file
-var _tr = {
- "wifi.connected_ip_is": "Connected, IP is ",
- "wifi.not_conn": "Not connected.",
- "wifi.enter_passwd": "Enter password for \":ssid:\""
-};
-
-function tr(key) { return _tr[key] || '?'+key+'?'; }
diff --git a/html_orig/jssrc/modal.js b/html_orig/jssrc/modal.js
deleted file mode 100644
index ce623cd..0000000
--- a/html_orig/jssrc/modal.js
+++ /dev/null
@@ -1,44 +0,0 @@
-/** Module for toggling a modal overlay */
-(function () {
- var modal = {};
- var curCloseCb = null;
-
- modal.show = function (sel, closeCb) {
- var $m = $(sel);
- $m.removeClass('hidden visible');
- setTimeout(function () {
- $m.addClass('visible');
- }, 1);
- curCloseCb = closeCb;
- };
-
- modal.hide = function (sel) {
- var $m = $(sel);
- $m.removeClass('visible');
- setTimeout(function () {
- $m.addClass('hidden');
- if (curCloseCb) curCloseCb();
- }, 500); // transition time
- };
-
- modal.init = function () {
- // close modal by click outside the dialog
- $('.Modal').on('click', function () {
- if ($(this).hasClass('no-close')) return; // this is a no-close modal
- modal.hide(this);
- });
-
- $('.Dialog').on('click', function (e) {
- e.stopImmediatePropagation();
- });
-
- // Hide all modals on esc
- $(window).on('keydown', function (e) {
- if (e.which == 27) {
- modal.hide('.Modal');
- }
- });
- };
-
- window.Modal = modal;
-})();
diff --git a/html_orig/jssrc/notif.js b/html_orig/jssrc/notif.js
deleted file mode 100644
index ad08e51..0000000
--- a/html_orig/jssrc/notif.js
+++ /dev/null
@@ -1,32 +0,0 @@
-(function (nt) {
- var sel = '#notif';
-
- var hideTmeo1; // timeout to start hiding (transition)
- var hideTmeo2; // timeout to add the hidden class
-
- nt.show = function (message, timeout) {
- $(sel).html(message);
- Modal.show(sel);
-
- clearTimeout(hideTmeo1);
- clearTimeout(hideTmeo2);
-
- if (undef(timeout)) timeout = 2500;
-
- hideTmeo1 = setTimeout(nt.hide, timeout);
- };
-
- nt.hide = function () {
- var $m = $(sel);
- $m.removeClass('visible');
- hideTmeo2 = setTimeout(function () {
- $m.addClass('hidden');
- }, 250); // transition time
- };
-
- nt.init = function() {
- $(sel).on('click', function() {
- nt.hide(this);
- });
- };
-})(window.Notify = {});
diff --git a/html_orig/jssrc/soft_keyboard.js b/html_orig/jssrc/soft_keyboard.js
deleted file mode 100644
index 3bdcdc2..0000000
--- a/html_orig/jssrc/soft_keyboard.js
+++ /dev/null
@@ -1,85 +0,0 @@
-$.ready(() => {
- const input = qs('#softkb-input')
- let keyboardOpen = false
-
- let updateInputPosition = function () {
- if (!keyboardOpen) return
-
- let [x, y] = Screen.gridToScreen(Screen.cursor.x, Screen.cursor.y)
- input.style.transform = `translate(${x}px, ${y}px)`
- }
-
- input.addEventListener('focus', () => {
- keyboardOpen = true
- updateInputPosition()
- })
- input.addEventListener('blur', () => (keyboardOpen = false))
- Screen.on('cursor-moved', updateInputPosition)
-
- window.kbOpen = function openSoftKeyboard (open) {
- keyboardOpen = open
- updateInputPosition()
- if (open) input.focus()
- else input.blur()
- }
-
- let lastCompositionString = '';
- let compositing = false;
-
- let sendInputDelta = function (newValue) {
- let resend = false;
- if (newValue.length > lastCompositionString.length) {
- if (newValue.startsWith(lastCompositionString)) {
- // characters have been added at the end
- Input.sendString(newValue.substr(lastCompositionString.length))
- } else resend = true;
- } else if (newValue.length < lastCompositionString.length) {
- if (lastCompositionString.startsWith(newValue)) {
- // characters have been removed at the end
- Input.sendString('\b'.repeat(lastCompositionString.length -
- newValue.length))
- } else resend = true;
- } else if (newValue !== lastCompositionString) resend = true;
-
- if (resend) {
- // the entire string changed; resend everything
- Input.sendString('\b'.repeat(lastCompositionString.length) +
- newValue)
- }
- lastCompositionString = newValue;
- }
-
- input.addEventListener('keydown', e => {
- if (e.key === 'Unidentified') return;
-
- e.preventDefault();
- input.value = '';
-
- if (e.key === 'Backspace') Input.sendString('\b')
- else if (e.key === 'Enter') Input.sendString('\x0d')
- })
- input.addEventListener('input', e => {
- e.stopPropagation();
-
- if (e.isComposing) {
- sendInputDelta(e.data);
- } else {
- if (e.data) Input.sendString(e.data);
- else if (e.inputType === 'deleteContentBackward') {
- lastCompositionString
- sendInputDelta('');
- }
- }
- })
- input.addEventListener('compositionstart', e => {
- lastCompositionString = '';
- compositing = true;
- });
- input.addEventListener('compositionend', e => {
- lastCompositionString = '';
- compositing = false;
- input.value = '';
- });
-
- Screen.on('open-soft-keyboard', () => input.focus())
-})
diff --git a/html_orig/jssrc/term.js b/html_orig/jssrc/term.js
deleted file mode 100644
index 2211c60..0000000
--- a/html_orig/jssrc/term.js
+++ /dev/null
@@ -1,6 +0,0 @@
-/** Init the terminal sub-module - called from HTML */
-window.termInit = function () {
- Conn.init();
- Input.init();
- TermUpl.init();
-};
diff --git a/html_orig/jssrc/term_conn.js b/html_orig/jssrc/term_conn.js
deleted file mode 100644
index 7d32fa3..0000000
--- a/html_orig/jssrc/term_conn.js
+++ /dev/null
@@ -1,135 +0,0 @@
-/** Handle connections */
-var Conn = (function () {
- var ws;
- var heartbeatTout;
- var pingIv;
- var xoff = false;
- var autoXoffTout;
- var reconTout;
-
- var pageShown = false;
-
- function onOpen(evt) {
- console.log("CONNECTED");
- heartbeat();
- doSend("i");
- }
-
- function onClose(evt) {
- console.warn("SOCKET CLOSED, code " + evt.code + ". Reconnecting...");
- clearTimeout(reconTout);
- reconTout = setTimeout(function () {
- init();
- }, 2000);
- // this happens when the buffer gets fucked up via invalid unicode.
- // we basically use polling instead of socket then
- }
-
- function onMessage(evt) {
- try {
- // . = heartbeat
- switch (evt.data.charAt(0)) {
- case 'B':
- case 'T':
- case 'S':
- Screen.load(evt.data);
- if(!pageShown) {
- showPage();
- pageShown = true;
- }
- break;
-
- case '-':
- //console.log('xoff');
- xoff = true;
- autoXoffTout = setTimeout(function () {
- xoff = false;
- }, 250);
- break;
-
- case '+':
- //console.log('xon');
- xoff = false;
- clearTimeout(autoXoffTout);
- break;
- }
- heartbeat();
- } catch (e) {
- console.error(e);
- }
- }
-
- function canSend() {
- return !xoff;
- }
-
- function doSend(message) {
- if (_demo) {
- console.log("TX: ", message);
- return true; // Simulate success
- }
- if (xoff) {
- // TODO queue
- console.log("Can't send, flood control.");
- return false;
- }
-
- if (!ws) return false; // for dry testing
- if (ws.readyState != 1) {
- console.error("Socket not ready");
- return false;
- }
- if (typeof message != "string") {
- message = JSON.stringify(message);
- }
- ws.send(message);
- return true;
- }
-
- function init() {
- if (_demo) {
- console.log("Demo mode!");
- Screen.load(_demo_screen);
- showPage();
- return;
- }
-
- clearTimeout(reconTout);
- clearTimeout(heartbeatTout);
-
- ws = new WebSocket("ws://" + _root + "/term/update.ws");
- ws.onopen = onOpen;
- ws.onclose = onClose;
- ws.onmessage = onMessage;
- console.log("Opening socket.");
- heartbeat();
- }
-
- function heartbeat() {
- clearTimeout(heartbeatTout);
- heartbeatTout = setTimeout(heartbeatFail, 2000);
- }
-
- function heartbeatFail() {
- console.error("Heartbeat lost, probing server...");
- pingIv = setInterval(function () {
- console.log("> ping");
- $.get('http://' + _root + '/system/ping', function (resp, status) {
- if (status == 200) {
- clearInterval(pingIv);
- console.info("Server ready, reloading page...");
- location.reload();
- }
- }, {
- timeout: 100,
- });
- }, 1000);
- }
-
- return {
- ws: null,
- init: init,
- send: doSend,
- canSend: canSend, // check flood control
- };
-})();
diff --git a/html_orig/jssrc/term_input.js b/html_orig/jssrc/term_input.js
deleted file mode 100644
index 6df0535..0000000
--- a/html_orig/jssrc/term_input.js
+++ /dev/null
@@ -1,264 +0,0 @@
-/**
- * User input
- *
- * --- Rx messages: ---
- * S - screen content (binary encoding of the entire screen with simple compression)
- * T - text labels - Title and buttons, \0x01-separated
- * B - beep
- * . - heartbeat
- *
- * --- Tx messages ---
- * s - string
- * b - action button
- * p - mb press
- * r - mb release
- * m - mouse move
- */
-var Input = (function() {
- var opts = {
- np_alt: false,
- cu_alt: false,
- fn_alt: false,
- mt_click: false,
- mt_move: false,
- no_keys: false,
- };
-
- /** Send a literal message */
- function sendStrMsg(str) {
- return Conn.send("s"+str);
- }
-
- /** Send a button event */
- function sendBtnMsg(n) {
- Conn.send("b"+Chr(n));
- }
-
- /** Fn alt choice for key message */
- function fa(alt, normal) {
- return opts.fn_alt ? alt : normal;
- }
-
- /** Cursor alt choice for key message */
- function ca(alt, normal) {
- return opts.cu_alt ? alt : normal;
- }
-
- /** Numpad alt choice for key message */
- function na(alt, normal) {
- return opts.np_alt ? alt : normal;
- }
-
- function _bindFnKeys() {
- var keymap = {
- 'tab': '\x09',
- 'backspace': '\x08',
- 'enter': '\x0d',
- 'ctrl+enter': '\x0a',
- 'esc': '\x1b',
- 'up': ca('\x1bOA', '\x1b[A'),
- 'down': ca('\x1bOB', '\x1b[B'),
- 'right': ca('\x1bOC', '\x1b[C'),
- 'left': ca('\x1bOD', '\x1b[D'),
- 'home': ca('\x1bOH', fa('\x1b[H', '\x1b[1~')),
- 'insert': '\x1b[2~',
- 'delete': '\x1b[3~',
- 'end': ca('\x1bOF', fa('\x1b[F', '\x1b[4~')),
- 'pageup': '\x1b[5~',
- 'pagedown': '\x1b[6~',
- 'f1': fa('\x1bOP', '\x1b[11~'),
- 'f2': fa('\x1bOQ', '\x1b[12~'),
- 'f3': fa('\x1bOR', '\x1b[13~'),
- 'f4': fa('\x1bOS', '\x1b[14~'),
- 'f5': '\x1b[15~', // note the disconnect
- 'f6': '\x1b[17~',
- 'f7': '\x1b[18~',
- 'f8': '\x1b[19~',
- 'f9': '\x1b[20~',
- 'f10': '\x1b[21~', // note the disconnect
- 'f11': '\x1b[23~',
- 'f12': '\x1b[24~',
- 'shift+f1': fa('\x1bO1;2P', '\x1b[25~'),
- 'shift+f2': fa('\x1bO1;2Q', '\x1b[26~'), // note the disconnect
- 'shift+f3': fa('\x1bO1;2R', '\x1b[28~'),
- 'shift+f4': fa('\x1bO1;2S', '\x1b[29~'), // note the disconnect
- 'shift+f5': fa('\x1b[15;2~', '\x1b[31~'),
- 'shift+f6': fa('\x1b[17;2~', '\x1b[32~'),
- 'shift+f7': fa('\x1b[18;2~', '\x1b[33~'),
- 'shift+f8': fa('\x1b[19;2~', '\x1b[34~'),
- 'shift+f9': fa('\x1b[20;2~', '\x1b[35~'), // 35-38 are not standard - but what is?
- 'shift+f10': fa('\x1b[21;2~', '\x1b[36~'),
- 'shift+f11': fa('\x1b[22;2~', '\x1b[37~'),
- 'shift+f12': fa('\x1b[23;2~', '\x1b[38~'),
- 'np_0': na('\x1bOp', '0'),
- 'np_1': na('\x1bOq', '1'),
- 'np_2': na('\x1bOr', '2'),
- 'np_3': na('\x1bOs', '3'),
- 'np_4': na('\x1bOt', '4'),
- 'np_5': na('\x1bOu', '5'),
- 'np_6': na('\x1bOv', '6'),
- 'np_7': na('\x1bOw', '7'),
- 'np_8': na('\x1bOx', '8'),
- 'np_9': na('\x1bOy', '9'),
- 'np_mul': na('\x1bOR', '*'),
- 'np_add': na('\x1bOl', '+'),
- 'np_sub': na('\x1bOS', '-'),
- 'np_point': na('\x1bOn', '.'),
- 'np_div': na('\x1bOQ', '/'),
- // we don't implement numlock key (should change in numpad_alt mode, but it's even more useless than the rest)
- };
-
- for (var k in keymap) {
- if (keymap.hasOwnProperty(k)) {
- bind(k, keymap[k]);
- }
- }
- }
-
- /** Bind a keystroke to message */
- function bind(combo, str) {
- // mac fix - allow also cmd
- if (combo.indexOf('ctrl+') !== -1) {
- combo += ',' + combo.replace('ctrl', 'command');
- }
-
- // unbind possible old binding
- key.unbind(combo);
-
- key(combo, function (e) {
- if (opts.no_keys) return;
- e.preventDefault();
- sendStrMsg(str)
- });
- }
-
- /** Bind/rebind key messages */
- function _initKeys() {
- // This takes care of text characters typed
- window.addEventListener('keypress', function(evt) {
- if (opts.no_keys) return;
- var str = '';
- if (evt.key) str = evt.key;
- else if (evt.which) str = String.fromCodePoint(evt.which);
- if (str.length>0 && str.charCodeAt(0) >= 32) {
-// console.log("Typed ", str);
- // prevent space from scrolling
- if (e.which === 32) e.preventDefault();
- sendStrMsg(str);
- }
- });
-
- // ctrl-letter codes are sent as simple low ASCII codes
- for (var i = 1; i<=26;i++) {
- bind('ctrl+' + String.fromCharCode(96+i), String.fromCharCode(i));
- }
- bind('ctrl+]', '\x1b'); // alternate way to enter ESC
- bind('ctrl+\\', '\x1c');
- bind('ctrl+[', '\x1d');
- bind('ctrl+^', '\x1e');
- bind('ctrl+_', '\x1f');
-
- _bindFnKeys();
- }
-
- // mouse button states
- var mb1 = 0;
- var mb2 = 0;
- var mb3 = 0;
-
- /** Init the Input module */
- function init() {
- _initKeys();
-
- // Button presses
- $('#action-buttons button').forEach(function(s) {
- s.addEventListener('click', function() {
- sendBtnMsg(+this.dataset['n']);
- });
- });
-
- // global mouse state tracking - for motion reporting
- window.addEventListener('mousedown', function(evt) {
- if (evt.button == 0) mb1 = 1;
- if (evt.button == 1) mb2 = 1;
- if (evt.button == 2) mb3 = 1;
- });
-
- window.addEventListener('mouseup', function(evt) {
- if (evt.button == 0) mb1 = 0;
- if (evt.button == 1) mb2 = 0;
- if (evt.button == 2) mb3 = 0;
- });
- }
-
- /** Prepare modifiers byte for mouse message */
- function packModifiersForMouse() {
- return (key.isModifier('ctrl')?1:0) |
- (key.isModifier('shift')?2:0) |
- (key.isModifier('alt')?4:0) |
- (key.isModifier('meta')?8:0);
- }
-
- return {
- /** Init the Input module */
- init: init,
-
- /** Send a literal string message */
- sendString: sendStrMsg,
-
- /** Enable alternate key modes (cursors, numpad, fn) */
- setAlts: function(cu, np, fn) {
- if (opts.cu_alt != cu || opts.np_alt != np || opts.fn_alt != fn) {
- opts.cu_alt = cu;
- opts.np_alt = np;
- opts.fn_alt = fn;
-
- // rebind keys - codes have changed
- _bindFnKeys();
- }
- },
-
- setMouseMode: function(click, move) {
- opts.mt_click = click;
- opts.mt_move = move;
- },
-
- // Mouse events
- onMouseMove: function (x, y) {
- if (!opts.mt_move) return;
- var b = mb1 ? 1 : mb2 ? 2 : mb3 ? 3 : 0;
- var m = packModifiersForMouse();
- Conn.send("m" + encode2B(y) + encode2B(x) + encode2B(b) + encode2B(m));
- },
- onMouseDown: function (x, y, b) {
- if (!opts.mt_click) return;
- if (b > 3 || b < 1) return;
- var m = packModifiersForMouse();
- Conn.send("p" + encode2B(y) + encode2B(x) + encode2B(b) + encode2B(m));
- // console.log("B ",b," M ",m);
- },
- onMouseUp: function (x, y, b) {
- if (!opts.mt_click) return;
- if (b > 3 || b < 1) return;
- var m = packModifiersForMouse();
- Conn.send("r" + encode2B(y) + encode2B(x) + encode2B(b) + encode2B(m));
- // console.log("B ",b," M ",m);
- },
- onMouseWheel: function (x, y, dir) {
- if (!opts.mt_click) return;
- // -1 ... btn 4 (away from user)
- // +1 ... btn 5 (towards user)
- var m = packModifiersForMouse();
- var b = (dir < 0 ? 4 : 5);
- Conn.send("p" + encode2B(y) + encode2B(x) + encode2B(b) + encode2B(m));
- // console.log("B ",b," M ",m);
- },
- mouseTracksClicks: function() {
- return opts.mt_click;
- },
- blockKeys: function(yes) {
- opts.no_keys = yes;
- }
- };
-})();
-
diff --git a/html_orig/jssrc/term_screen.js b/html_orig/jssrc/term_screen.js
deleted file mode 100644
index 2bb56e1..0000000
--- a/html_orig/jssrc/term_screen.js
+++ /dev/null
@@ -1,954 +0,0 @@
-// Some non-bold Fraktur symbols are outside the contiguous block
-const frakturExceptions = {
- 'C': '\u212d',
- 'H': '\u210c',
- 'I': '\u2111',
- 'R': '\u211c',
- 'Z': '\u2128'
-};
-
-// constants for decoding the update blob
-const SEQ_SET_COLOR_ATTR = 1;
-const SEQ_REPEAT = 2;
-const SEQ_SET_COLOR = 3;
-const SEQ_SET_ATTR = 4;
-
-const SELECTION_BG = '#b2d7fe';
-const SELECTION_FG = '#333';
-
-const themes = [
- [ // Tango
- '#111213', '#CC0000', '#4E9A06', '#C4A000', '#3465A4', '#75507B', '#06989A', '#D3D7CF',
- '#555753', '#EF2929', '#8AE234', '#FCE94F', '#729FCF', '#AD7FA8', '#34E2E2', '#EEEEEC',
- ],
- [ // Linux
- '#000000', '#aa0000', '#00aa00', '#aa5500', '#0000aa', '#aa00aa', '#00aaaa', '#aaaaaa',
- '#555555', '#ff5555', '#55ff55', '#ffff55', '#5555ff', '#ff55ff', '#55ffff', '#ffffff',
- ],
- [ // xterm
- '#000000', '#cd0000', '#00cd00', '#cdcd00', '#0000ee', '#cd00cd', '#00cdcd', '#e5e5e5',
- '#7f7f7f', '#ff0000', '#00ff00', '#ffff00', '#5c5cff', '#ff00ff', '#00ffff', '#ffffff',
- ],
- [ // rxvt
- '#000000', '#cd0000', '#00cd00', '#cdcd00', '#0000cd', '#cd00cd', '#00cdcd', '#faebd7',
- '#404040', '#ff0000', '#00ff00', '#ffff00', '#0000ff', '#ff00ff', '#00ffff', '#ffffff',
- ],
- [ // Ambience
- '#2e3436', '#cc0000', '#4e9a06', '#c4a000', '#3465a4', '#75507b', '#06989a', '#d3d7cf',
- '#555753', '#ef2929', '#8ae234', '#fce94f', '#729fcf', '#ad7fa8', '#34e2e2', '#eeeeec',
- ],
- [ // Solarized
- '#073642', '#dc322f', '#859900', '#b58900', '#268bd2', '#d33682', '#2aa198', '#eee8d5',
- '#002b36', '#cb4b16', '#586e75', '#657b83', '#839496', '#6c71c4', '#93a1a1', '#fdf6e3',
- ]
-];
-
-class TermScreen {
- constructor () {
- this.canvas = document.createElement('canvas');
- this.ctx = this.canvas.getContext('2d');
-
- if ('AudioContext' in window || 'webkitAudioContext' in window) {
- this.audioCtx = new (window.AudioContext || window.webkitAudioContext)()
- } else {
- console.warn('No AudioContext!')
- }
-
- this.cursor = {
- x: 0,
- y: 0,
- fg: 7,
- bg: 0,
- attrs: 0,
- blinkOn: false,
- visible: true,
- hanging: false,
- style: 'block',
- blinkInterval: 0,
- };
-
- this._colors = themes[0];
-
- this._window = {
- width: 0,
- height: 0,
- devicePixelRatio: 1,
- fontFamily: '"DejaVu Sans Mono", "Liberation Mono", "Inconsolata", "Menlo", monospace',
- fontSize: 20,
- gridScaleX: 1.0,
- gridScaleY: 1.2,
- blinkStyleOn: true,
- blinkInterval: null,
- fitIntoWidth: 0,
- fitIntoHeight: 0,
- };
-
- // properties of this.window that require updating size and redrawing
- this.windowState = {
- width: 0,
- height: 0,
- devicePixelRatio: 0,
- gridScaleX: 0,
- gridScaleY: 0,
- fontFamily: '',
- fontSize: 0,
- fitIntoWidth: 0,
- fitIntoHeight: 0,
- };
-
- // current selection
- this.selection = {
- // when false, this will prevent selection in favor of mouse events,
- // though alt can be held to override it
- selectable: true,
-
- start: [0, 0],
- end: [0, 0],
- };
-
- this.mouseMode = { clicks: false, movement: false };
-
- // event listeners
- this._listeners = {};
-
- const self = this;
- this.window = new Proxy(this._window, {
- set (target, key, value, receiver) {
- target[key] = value;
- self.scheduleSizeUpdate();
- self.scheduleDraw();
- return true
- }
- });
-
- this.screen = [];
- this.screenFG = [];
- this.screenBG = [];
- this.screenAttrs = [];
-
- // used to determine if a cell should be redrawn
- this.drawnScreen = [];
- this.drawnScreenFG = [];
- this.drawnScreenBG = [];
- this.drawnScreenAttrs = [];
-
- this.resetBlink();
- this.resetCursorBlink();
-
- let selecting = false;
- let selectStart = (x, y) => {
- if (selecting) return;
- selecting = true;
- this.selection.start = this.selection.end = this.screenToGrid(x, y);
- this.scheduleDraw();
- };
- let selectMove = (x, y) => {
- if (!selecting) return;
- this.selection.end = this.screenToGrid(x, y);
- this.scheduleDraw();
- };
- let selectEnd = (x, y) => {
- if (!selecting) return;
- selecting = false;
- this.selection.end = this.screenToGrid(x, y);
- this.scheduleDraw();
- Object.assign(this.selection, this.getNormalizedSelection());
- };
-
- this.canvas.addEventListener('mousedown', e => {
- if (this.selection.selectable || e.altKey) {
- selectStart(e.offsetX, e.offsetY)
- } else {
- Input.onMouseDown(...this.screenToGrid(e.offsetX, e.offsetY),
- e.button + 1)
- }
- });
- window.addEventListener('mousemove', e => {
- selectMove(e.offsetX, e.offsetY)
- });
- window.addEventListener('mouseup', e => {
- selectEnd(e.offsetX, e.offsetY)
- });
-
- let touchPosition = null;
- let touchDownTime = 0;
- let touchSelectMinTime = 500;
- let touchDidMove = false;
- let getTouchPositionOffset = touch => {
- let rect = this.canvas.getBoundingClientRect();
- return [touch.clientX - rect.left, touch.clientY - rect.top];
- };
- this.canvas.addEventListener('touchstart', e => {
- touchPosition = getTouchPositionOffset(e.touches[0]);
- touchDidMove = false;
- touchDownTime = Date.now();
- });
- this.canvas.addEventListener('touchmove', e => {
- touchPosition = getTouchPositionOffset(e.touches[0]);
-
- if (!selecting && touchDidMove === false) {
- if (touchDownTime < Date.now() - touchSelectMinTime) {
- selectStart(...touchPosition);
- }
- } else if (selecting) {
- e.preventDefault();
- selectMove(...touchPosition);
- }
-
- touchDidMove = true;
- });
- this.canvas.addEventListener('touchend', e => {
- if (e.touches[0]) {
- touchPosition = getTouchPositionOffset(e.touches[0]);
- }
- if (selecting) {
- e.preventDefault();
- selectEnd(...touchPosition);
-
- let touchSelectMenu = qs('#touch-select-menu')
- touchSelectMenu.classList.add('open');
- let rect = touchSelectMenu.getBoundingClientRect()
-
- // use middle position for x and one line above for y
- let selectionPos = this.gridToScreen(
- (this.selection.start[0] + this.selection.end[0]) / 2,
- this.selection.start[1] - 1
- );
- selectionPos[0] -= rect.width / 2
- selectionPos[1] -= rect.height / 2
- touchSelectMenu.style.transform = `translate(${selectionPos[0]}px, ${
- selectionPos[1]}px)`
- }
-
- if (!touchDidMove) {
- this.emit('tap', Object.assign(e, {
- x: touchPosition[0],
- y: touchPosition[1],
- }))
- }
-
- touchPosition = null;
- });
-
- this.on('tap', e => {
- if (this.selection.start[0] !== this.selection.end[0] ||
- this.selection.start[1] !== this.selection.end[1]) {
- // selection is not empty
- // reset selection
- this.selection.start = this.selection.end = [0, 0];
- qs('#touch-select-menu').classList.remove('open');
- this.scheduleDraw();
- } else {
- e.preventDefault();
- this.emit('open-soft-keyboard');
- }
- })
-
- $.ready(() => {
- let copyButton = qs('#touch-select-copy-btn')
- copyButton.addEventListener('click', () => {
- this.copySelectionToClipboard();
- });
- });
-
- this.canvas.addEventListener('mousemove', e => {
- if (!selecting) {
- Input.onMouseMove(...this.screenToGrid(e.offsetX, e.offsetY))
- }
- });
- this.canvas.addEventListener('mouseup', e => {
- if (!selecting) {
- Input.onMouseUp(...this.screenToGrid(e.offsetX, e.offsetY),
- e.button + 1)
- }
- });
- this.canvas.addEventListener('wheel', e => {
- if (this.mouseMode.clicks) {
- Input.onMouseWheel(...this.screenToGrid(e.offsetX, e.offsetY),
- e.deltaY > 0 ? 1 : -1);
-
- // prevent page scrolling
- e.preventDefault();
- }
- });
- this.canvas.addEventListener('contextmenu', e => {
- // prevent mouse keys getting stuck
- e.preventDefault();
- })
-
- // bind ctrl+shift+c to copy
- key('⌃+⇧+c', e => {
- e.preventDefault();
- this.copySelectionToClipboard()
- });
- }
-
- on (event, listener) {
- if (!this._listeners[event]) this._listeners[event] = [];
- this._listeners[event].push({ listener });
- }
-
- once (event, listener) {
- if (!this._listeners[event]) this._listeners[event] = [];
- this._listeners[event].push({ listener, once: true });
- }
-
- off (event, listener) {
- let listeners = this._listeners[event];
- if (listeners) {
- for (let i in listeners) {
- if (listeners[i].listener === listener) {
- listeners.splice(i, 1);
- break;
- }
- }
- }
- }
-
- emit (event, ...args) {
- let listeners = this._listeners[event];
- if (listeners) {
- let remove = [];
- for (let listener of listeners) {
- try {
- listener.listener(...args);
- if (listener.once) remove.push(listener);
- } catch (err) {
- console.error(err);
- }
- }
-
- // this needs to be done in this roundabout way because for loops
- // do not like arrays with changing lengths
- for (let listener of remove) {
- listeners.splice(listeners.indexOf(listener), 1);
- }
- }
- }
-
- get colors () { return this._colors }
- set colors (theme) {
- this._colors = theme;
- this.scheduleDraw();
- }
-
- getColor (i) {
- if (i === -1) return SELECTION_FG
- if (i === -2) return SELECTION_BG
- return this.colors[i]
- }
-
- // schedule a size update in the next tick
- scheduleSizeUpdate () {
- clearTimeout(this._scheduledSizeUpdate);
- this._scheduledSizeUpdate = setTimeout(() => this.updateSize(), 1)
- }
-
- // schedule a draw in the next tick
- scheduleDraw (aggregateTime = 1) {
- clearTimeout(this._scheduledDraw);
- this._scheduledDraw = setTimeout(() => this.draw(), aggregateTime)
- }
-
- getFont (modifiers = {}) {
- let fontStyle = modifiers.style || 'normal';
- let fontWeight = modifiers.weight || 'normal';
- return `${fontStyle} normal ${fontWeight} ${this.window.fontSize}px ${this.window.fontFamily}`
- }
-
- getCharSize () {
- this.ctx.font = this.getFont();
-
- return {
- width: Math.floor(this.ctx.measureText(' ').width),
- height: this.window.fontSize
- }
- }
-
- getCellSize () {
- let charSize = this.getCharSize();
-
- return {
- width: Math.ceil(charSize.width * this.window.gridScaleX),
- height: Math.ceil(charSize.height * this.window.gridScaleY)
- }
- }
-
- updateSize () {
- this._window.devicePixelRatio = window.devicePixelRatio || 1;
-
- let didChange = false;
- for (let key in this.windowState) {
- if (this.windowState.hasOwnProperty(key) && this.windowState[key] !== this.window[key]) {
- didChange = true;
- this.windowState[key] = this.window[key];
- }
- }
-
- if (didChange) {
- const {
- width,
- height,
- devicePixelRatio,
- gridScaleX,
- gridScaleY,
- fitIntoWidth,
- fitIntoHeight
- } = this.window;
- const cellSize = this.getCellSize();
-
- // real height of the canvas element in pixels
- let realWidth = width * cellSize.width
- let realHeight = height * cellSize.height
-
- if (fitIntoWidth && fitIntoHeight) {
- if (realWidth > fitIntoWidth || realHeight > fitIntoHeight) {
- let terminalAspect = realWidth / realHeight
- let fitAspect = fitIntoWidth / fitIntoHeight
-
- if (terminalAspect < fitAspect) {
- // align heights
- realHeight = fitIntoHeight
- realWidth = realHeight * terminalAspect
- } else {
- // align widths
- realWidth = fitIntoWidth
- realHeight = realWidth / terminalAspect
- }
- }
- } else if (fitIntoWidth && realWidth > fitIntoWidth) {
- realHeight = fitIntoWidth / (realWidth / realHeight)
- realWidth = fitIntoWidth
- } else if (fitIntoHeight && realHeight > fitIntoHeight) {
- realWidth = fitIntoHeight * (realWidth / realHeight)
- realHeight = fitIntoHeight
- }
-
- this.canvas.width = width * devicePixelRatio * cellSize.width;
- this.canvas.style.width = `${realWidth}px`;
- this.canvas.height = height * devicePixelRatio * cellSize.height;
- this.canvas.style.height = `${realHeight}px`;
-
- // the screen has been cleared (by changing canvas width)
- this.drawnScreen = [];
- this.drawnScreenFG = [];
- this.drawnScreenBG = [];
- this.drawnScreenAttrs = [];
-
- // draw immediately; the canvas shouldn't flash
- this.draw();
- }
- }
-
- resetCursorBlink () {
- this.cursor.blinkOn = true;
- clearInterval(this.cursor.blinkInterval);
- this.cursor.blinkInterval = setInterval(() => {
- this.cursor.blinkOn = !this.cursor.blinkOn;
- this.scheduleDraw();
- }, 500);
- }
-
- resetBlink () {
- this.window.blinkStyleOn = true;
- clearInterval(this.window.blinkInterval);
- let intervals = 0;
- this.window.blinkInterval = setInterval(() => {
- intervals++;
- if (intervals >= 4 && this.window.blinkStyleOn) {
- this.window.blinkStyleOn = false;
- intervals = 0;
- } else if (intervals >= 1 && !this.window.blinkStyleOn) {
- this.window.blinkStyleOn = true;
- intervals = 0;
- }
- }, 200);
- }
-
- getNormalizedSelection () {
- let { start, end } = this.selection;
- // if the start line is after the end line, or if they're both on the same
- // line but the start column comes after the end column, swap
- if (start[1] > end[1] || (start[1] === end[1] && start[0] > end[0])) {
- [start, end] = [end, start];
- }
- return { start, end };
- }
-
- isInSelection (col, line) {
- let { start, end } = this.getNormalizedSelection();
- let colAfterStart = start[0] <= col;
- let colBeforeEnd = col < end[0];
- let onStartLine = line === start[1];
- let onEndLine = line === end[1];
-
- if (onStartLine && onEndLine) return colAfterStart && colBeforeEnd;
- else if (onStartLine) return colAfterStart;
- else if (onEndLine) return colBeforeEnd;
- else return start[1] < line && line < end[1];
- }
-
- getSelectedText () {
- const screenLength = this.window.width * this.window.height;
- let lines = [];
- let previousLineIndex = -1;
-
- for (let cell = 0; cell < screenLength; cell++) {
- let x = cell % this.window.width;
- let y = Math.floor(cell / this.window.width);
-
- if (this.isInSelection(x, y)) {
- if (previousLineIndex !== y) {
- previousLineIndex = y;
- lines.push('');
- }
- lines[lines.length - 1] += this.screen[cell];
- }
- }
-
- return lines.join('\n');
- }
-
- copySelectionToClipboard () {
- let selectedText = this.getSelectedText();
- // don't copy anything if nothing is selected
- if (!selectedText) return;
- let textarea = document.createElement('textarea');
- document.body.appendChild(textarea);
- textarea.value = selectedText;
- textarea.select();
- if (document.execCommand('copy')) {
- Notify.show('Copied to clipboard');
- } else {
- Notify.show('Failed to copy');
- // unsuccessful copy
- }
- document.body.removeChild(textarea);
- }
-
- screenToGrid (x, y) {
- let cellSize = this.getCellSize();
-
- return [
- Math.floor((x + cellSize.width / 2) / cellSize.width),
- Math.floor(y / cellSize.height),
- ];
- }
-
- gridToScreen (x, y) {
- let cellSize = this.getCellSize();
-
- return [ x * cellSize.width, y * cellSize.height ];
- }
-
- drawCell ({ x, y, charSize, cellWidth, cellHeight, text, fg, bg, attrs }) {
- const ctx = this.ctx;
- ctx.fillStyle = this.getColor(bg);
- ctx.fillRect(x * cellWidth, y * cellHeight,
- Math.ceil(cellWidth), Math.ceil(cellHeight));
-
- if (!text) return;
-
- let underline = false;
- let blink = false;
- let strike = false;
- if (attrs & 1 << 1) ctx.globalAlpha = 0.5;
- if (attrs & 1 << 3) underline = true;
- if (attrs & 1 << 4) blink = true;
- if (attrs & 1 << 5) text = TermScreen.alphaToFraktur(text);
- if (attrs & 1 << 6) strike = true;
-
- if (!blink || this.window.blinkStyleOn) {
- ctx.fillStyle = this.getColor(fg);
- ctx.fillText(text, (x + 0.5) * cellWidth, (y + 0.5) * cellHeight);
-
- if (underline || strike) {
- ctx.strokeStyle = this.getColor(fg);
- ctx.lineWidth = 1;
- ctx.lineCap = 'round';
- ctx.beginPath();
-
- if (underline) {
- let lineY = Math.round(y * cellHeight + charSize.height) + 0.5;
- ctx.moveTo(x * cellWidth, lineY);
- ctx.lineTo((x + 1) * cellWidth, lineY);
- }
-
- if (strike) {
- let lineY = Math.round((y + 0.5) * cellHeight) + 0.5;
- ctx.moveTo(x * cellWidth, lineY);
- ctx.lineTo((x + 1) * cellWidth, lineY);
- }
-
- ctx.stroke();
- }
- }
-
- ctx.globalAlpha = 1;
- }
-
- draw () {
- const ctx = this.ctx;
- const {
- width,
- height,
- devicePixelRatio,
- gridScaleX,
- gridScaleY
- } = this.window;
-
- const charSize = this.getCharSize();
- const { width: cellWidth, height: cellHeight } = this.getCellSize();
- const screenWidth = width * cellWidth;
- const screenHeight = height * cellHeight;
- const screenLength = width * height;
-
- ctx.setTransform(devicePixelRatio, 0, 0, devicePixelRatio, 0, 0);
-
- ctx.font = this.getFont();
- ctx.textAlign = 'center';
- ctx.textBaseline = 'middle';
-
- // bits in the attr value that affect the font
- const FONT_MASK = 0b101;
-
- // Map of (attrs & FONT_MASK) -> Array of cell indices
- const fontGroups = new Map();
-
- // Map of (cell index) -> boolean, whether or not a cell needs to be redrawn
- const updateMap = new Map();
-
- for (let cell = 0; cell < screenLength; cell++) {
- let x = cell % width;
- let y = Math.floor(cell / width);
- let isCursor = this.cursor.x === x && this.cursor.y === y &&
- !this.cursor.hanging;
- let invertForCursor = isCursor && this.cursor.blinkOn &&
- this.cursor.style === 'block';
- let inSelection = this.isInSelection(x, y)
-
- let text = this.screen[cell];
- let fg = invertForCursor ? this.screenBG[cell] : this.screenFG[cell];
- let bg = invertForCursor ? this.screenFG[cell] : this.screenBG[cell];
- let attrs = this.screenAttrs[cell];
-
- // HACK: ensure cursor is visible
- if (invertForCursor && fg === bg) bg = fg === 0 ? 7 : 0;
-
- if (inSelection) {
- fg = -1
- bg = -2
- }
-
- let cellDidChange = text !== this.drawnScreen[cell] ||
- fg !== this.drawnScreenFG[cell] ||
- bg !== this.drawnScreenBG[cell] ||
- attrs !== this.drawnScreenAttrs[cell];
-
- let font = attrs & FONT_MASK;
- if (!fontGroups.has(font)) fontGroups.set(font, []);
-
- fontGroups.get(font).push([cell, x, y, text, fg, bg, attrs, isCursor]);
- updateMap.set(cell, cellDidChange);
- }
-
- for (let font of fontGroups.keys()) {
- // set font once because in Firefox, this is a really slow action for some
- // reason
- let modifiers = {};
- if (font & 1) modifiers.weight = 'bold';
- if (font & 1 << 2) modifiers.style = 'italic';
- ctx.font = this.getFont(modifiers);
-
- for (let data of fontGroups.get(font)) {
- let [cell, x, y, text, fg, bg, attrs, isCursor] = data;
-
- // check if this cell or any adjacent cells updated
- let needsUpdate = false;
- let updateCells = [
- cell,
- cell - 1,
- cell + 1,
- cell - width,
- cell + width,
- // diagonal box drawing characters exist, too
- cell - width - 1,
- cell - width + 1,
- cell + width - 1,
- cell + width + 1
- ];
- for (let index of updateCells) {
- if (updateMap.has(index) && updateMap.get(index)) {
- needsUpdate = true;
- break;
- }
- }
-
- if (needsUpdate) {
- this.drawCell({
- x, y, charSize, cellWidth, cellHeight, text, fg, bg, attrs
- });
-
- this.drawnScreen[cell] = text;
- this.drawnScreenFG[cell] = fg;
- this.drawnScreenBG[cell] = bg;
- this.drawnScreenAttrs[cell] = attrs;
- }
-
- if (isCursor && this.cursor.blinkOn && this.cursor.style !== 'block') {
- ctx.save();
- ctx.beginPath();
- if (this.cursor.style === 'bar') {
- // vertical bar
- let barWidth = 2;
- ctx.rect(x * cellWidth, y * cellHeight, barWidth, cellHeight)
- } else if (this.cursor.style === 'line') {
- // underline
- let lineHeight = 2;
- ctx.rect(x * cellWidth, y * cellHeight + charSize.height,
- cellWidth, lineHeight)
- }
- ctx.clip();
-
- // swap foreground/background
- fg = this.screenBG[cell];
- bg = this.screenFG[cell];
- // HACK: ensure cursor is visible
- if (fg === bg) bg = fg === 0 ? 7 : 0;
-
- this.drawCell({
- x, y, charSize, cellWidth, cellHeight, text, fg, bg, attrs
- });
- ctx.restore();
- }
- }
- }
- }
-
- loadContent (str) {
- // current index
- let i = 0;
-
- // window size
- this.window.height = parse2B(str, i);
- this.window.width = parse2B(str, i + 2);
- this.updateSize();
- i += 4;
-
- // cursor position
- let [cursorY, cursorX] = [parse2B(str, i), parse2B(str, i + 2)];
- i += 4;
- let cursorMoved = (cursorX !== this.cursor.x || cursorY !== this.cursor.y);
- this.cursor.x = cursorX;
- this.cursor.y = cursorY;
-
- if (cursorMoved) {
- this.resetCursorBlink();
- this.emit('cursor-moved');
- }
-
- // attributes
- let attributes = parse2B(str, i);
- i += 2;
-
- this.cursor.visible = !!(attributes & 1);
- this.cursor.hanging = !!(attributes & 1 << 1);
-
- Input.setAlts(
- !!(attributes & 1 << 2), // cursors alt
- !!(attributes & 1 << 3), // numpad alt
- !!(attributes & 1 << 4) // fn keys alt
- );
-
- let trackMouseClicks = !!(attributes & 1 << 5);
- let trackMouseMovement = !!(attributes & 1 << 6);
-
- Input.setMouseMode(trackMouseClicks, trackMouseMovement);
- this.selection.selectable = !trackMouseMovement;
- $(this.canvas).toggleClass('selectable', !trackMouseMovement);
- this.mouseMode = {
- clicks: trackMouseClicks,
- movement: trackMouseMovement
- };
-
- let showButtons = !!(attributes & 1 << 7);
- let showConfigLinks = !!(attributes & 1 << 8);
-
- $('.x-term-conf-btn').toggleClass('hidden', !showConfigLinks);
- $('#action-buttons').toggleClass('hidden', !showButtons);
-
- // content
- let fg = 7;
- let bg = 0;
- let attrs = 0;
- let cell = 0; // cell index
- let lastChar = ' ';
- let screenLength = this.window.width * this.window.height;
-
- this.screen = new Array(screenLength).fill(' ');
- this.screenFG = new Array(screenLength).fill(' ');
- this.screenBG = new Array(screenLength).fill(' ');
- this.screenAttrs = new Array(screenLength).fill(' ');
-
- let strArray = typeof Array.from !== 'undefined'
- ? Array.from(str)
- : str.split('');
-
- while (i < strArray.length && cell < screenLength) {
- let character = strArray[i++];
- let charCode = character.codePointAt(0);
-
- let data;
- switch (charCode) {
- case SEQ_SET_COLOR_ATTR:
- data = parse3B(strArray[i] + strArray[i + 1] + strArray[i + 2]);
- i += 3;
- fg = data & 0xF;
- bg = data >> 4 & 0xF;
- attrs = data >> 8 & 0xFF;
- break;
-
- case SEQ_SET_COLOR:
- data = parse2B(strArray[i] + strArray[i + 1]);
- i += 2;
- fg = data & 0xF;
- bg = data >> 4 & 0xF;
- break;
-
- case SEQ_SET_ATTR:
- data = parse2B(strArray[i] + strArray[i + 1]);
- i += 2;
- attrs = data & 0xFF;
- break;
-
- case SEQ_REPEAT:
- let count = parse2B(strArray[i] + strArray[i + 1]);
- i += 2;
- for (let j = 0; j < count; j++) {
- this.screen[cell] = lastChar;
- this.screenFG[cell] = fg;
- this.screenBG[cell] = bg;
- this.screenAttrs[cell] = attrs;
-
- if (++cell > screenLength) break;
- }
- break;
-
- default:
- // safety replacement
- if (charCode < 32) character = '\ufffd';
- // unique cell character
- this.screen[cell] = lastChar = character;
- this.screenFG[cell] = fg;
- this.screenBG[cell] = bg;
- this.screenAttrs[cell] = attrs;
- cell++;
- }
- }
-
- this.scheduleDraw(16);
- this.emit('load');
- }
-
- /** Apply labels to buttons and screen title (leading T removed already) */
- loadLabels (str) {
- let pieces = str.split('\x01');
- qs('h1').textContent = pieces[0];
- $('#action-buttons button').forEach((button, i) => {
- let label = pieces[i + 1].trim();
- // if empty string, use the "dim" effect and put nbsp instead to
- // stretch the button vertically
- button.innerHTML = label ? e(label) : ' ';
- button.style.opacity = label ? 1 : 0.2;
- })
- }
-
- load (str) {
- const content = str.substr(1);
-
- switch (str[0]) {
- case 'S':
- this.loadContent(content);
- break;
- case 'T':
- this.loadLabels(content);
- break;
- case 'B':
- this.beep();
- break;
- default:
- console.warn(`Bad data message type; ignoring.\n${JSON.stringify(content)}`)
- }
- }
-
- beep () {
- const audioCtx = this.audioCtx;
- if (!audioCtx) return;
-
- let osc, gain;
-
- // main beep
- osc = audioCtx.createOscillator();
- gain = audioCtx.createGain();
- osc.connect(gain);
- gain.connect(audioCtx.destination);
- gain.gain.value = 0.5;
- osc.frequency.value = 750;
- osc.type = 'sine';
- osc.start();
- osc.stop(audioCtx.currentTime + 0.05);
-
- // surrogate beep (making it sound like 'oops')
- osc = audioCtx.createOscillator();
- gain = audioCtx.createGain();
- osc.connect(gain);
- gain.connect(audioCtx.destination);
- gain.gain.value = 0.2;
- osc.frequency.value = 400;
- osc.type = 'sine';
- osc.start(audioCtx.currentTime + 0.05);
- osc.stop(audioCtx.currentTime + 0.08);
- }
-
- static alphaToFraktur (character) {
- if ('a' <= character && character <= 'z') {
- character = String.fromCodePoint(0x1d51e - 0x61 + character.charCodeAt(0))
- } else if ('A' <= character && character <= 'Z') {
- character = frakturExceptions[character] || String.fromCodePoint(
- 0x1d504 - 0x41 + character.charCodeAt(0))
- }
- return character
- }
-}
-
-const Screen = new TermScreen();
-
-Screen.once('load', () => {
- qs('#screen').appendChild(Screen.canvas);
- for (let item of qs('#screen').classList) {
- if (item.startsWith('theme-')) {
- Screen.colors = themes[item.substr(6)]
- }
- }
-});
-
-let fitScreen = false
-function fitScreenIfNeeded () {
- Screen.window.fitIntoWidth = fitScreen ? window.innerWidth : 0
- Screen.window.fitIntoHeight = fitScreen ? window.innerHeight : 0
-}
-fitScreenIfNeeded();
-window.addEventListener('resize', fitScreenIfNeeded)
-
-window.toggleFitScreen = function () {
- fitScreen = !fitScreen;
- const resizeButtonIcon = qs('#resize-button-icon')
- if (fitScreen) {
- resizeButtonIcon.classList.remove('icn-resize-small')
- resizeButtonIcon.classList.add('icn-resize-full')
- } else {
- resizeButtonIcon.classList.remove('icn-resize-full')
- resizeButtonIcon.classList.add('icn-resize-small')
- }
- fitScreenIfNeeded();
-}
diff --git a/html_orig/jssrc/term_upload.js b/html_orig/jssrc/term_upload.js
deleted file mode 100644
index 2c92110..0000000
--- a/html_orig/jssrc/term_upload.js
+++ /dev/null
@@ -1,146 +0,0 @@
-/** File upload utility */
-var TermUpl = (function() {
- var lines, // array of lines without newlines
- line_i, // current line index
- fuTout, // timeout handle for line sending
- send_delay_ms, // delay between lines (ms)
- nl_str, // newline string to use
- curLine, // current line (when using fuOil)
- inline_pos; // Offset in line (for long lines)
-
- // lines longer than this are split to chunks
- // sending a super-ling string through the socket is not a good idea
- var MAX_LINE_LEN = 128;
-
- function fuOpen() {
- fuStatus("Ready...");
- Modal.show('#fu_modal', onClose);
- $('#fu_form').toggleClass('busy', false);
- Input.blockKeys(true);
- }
-
- function onClose() {
- console.log("Upload modal closed.");
- clearTimeout(fuTout);
- line_i = 0;
- Input.blockKeys(false);
- }
-
- function fuStatus(msg) {
- qs('#fu_prog').textContent = msg;
- }
-
- function fuSend() {
- var v = qs('#fu_text').value;
- if (!v.length) {
- fuClose();
- return;
- }
-
- lines = v.split('\n');
- line_i = 0;
- inline_pos = 0; // offset in line
- send_delay_ms = qs('#fu_delay').value;
-
- // sanitize - 0 causes overflows
- if (send_delay_ms < 0) {
- send_delay_ms = 0;
- qs('#fu_delay').value = send_delay_ms;
- }
-
- nl_str = {
- 'CR': '\r',
- 'LF': '\n',
- 'CRLF': '\r\n',
- }[qs('#fu_crlf').value];
-
- $('#fu_form').toggleClass('busy', true);
- fuStatus("Starting...");
- fuSendLine();
- }
-
- function fuSendLine() {
- if (!$('#fu_modal').hasClass('visible')) {
- // Modal is closed, cancel
- return;
- }
-
- if (!Conn.canSend()) {
- // postpone
- fuTout = setTimeout(fuSendLine, 1);
- return;
- }
-
- if (inline_pos == 0) {
- curLine = lines[line_i++] + nl_str;
- }
-
- var chunk;
- if ((curLine.length - inline_pos) <= MAX_LINE_LEN) {
- chunk = curLine.substr(inline_pos, MAX_LINE_LEN);
- inline_pos = 0;
- } else {
- chunk = curLine.substr(inline_pos, MAX_LINE_LEN);
- inline_pos += MAX_LINE_LEN;
- }
-
- if (!Input.sendString(chunk)) {
- fuStatus("FAILED!");
- return;
- }
-
- var all = lines.length;
-
- fuStatus(line_i+" / "+all+ " ("+(Math.round((line_i/all)*1000)/10)+"%)");
-
- if (lines.length > line_i || inline_pos > 0) {
- fuTout = setTimeout(fuSendLine, send_delay_ms);
- } else {
- closeWhenReady();
- }
- }
-
- function closeWhenReady() {
- if (!Conn.canSend()) {
- // stuck in XOFF still, wait to process...
- fuStatus("Waiting for Tx buffer...");
- setTimeout(closeWhenReady, 100);
- } else {
- fuStatus("Done.");
- // delay to show it
- setTimeout(function() {
- fuClose();
- }, 100);
- }
- }
-
- function fuClose() {
- Modal.hide('#fu_modal');
- }
-
- return {
- init: function() {
- qs('#fu_file').addEventListener('change', function (evt) {
- var reader = new FileReader();
- var file = evt.target.files[0];
- console.log("Selected file type: "+file.type);
- if (!file.type.match(/text\/.*|application\/(json|csv|.*xml.*|.*script.*)/)) {
- // Deny load of blobs like img - can crash browser and will get corrupted anyway
- if (!confirm("This does not look like a text file: "+file.type+"\nReally load?")) {
- qs('#fu_file').value = '';
- return;
- }
- }
- reader.onload = function(e) {
- var txt = e.target.result.replace(/[\r\n]+/,'\n');
- qs('#fu_text').value = txt;
- };
- console.log("Loading file...");
- reader.readAsText(file);
- }, false);
- },
- close: fuClose,
- start: fuSend,
- open: fuOpen,
- }
-})();
diff --git a/html_orig/jssrc/utils.js b/html_orig/jssrc/utils.js
deleted file mode 100755
index 3bb5574..0000000
--- a/html_orig/jssrc/utils.js
+++ /dev/null
@@ -1,161 +0,0 @@
-/** Make a node */
-function mk(e) {return document.createElement(e)}
-
-/** Find one by query */
-function qs(s) {return document.querySelector(s)}
-
-/** Find all by query */
-function qsa(s) {return document.querySelectorAll(s)}
-
-/** Convert any to bool safely */
-function bool(x) {
- return (x === 1 || x === '1' || x === true || x === 'true');
-}
-
-/**
- * Filter 'spacebar' and 'return' from keypress handler,
- * and when they're pressed, fire the callback.
- * use $(...).on('keypress', cr(handler))
- */
-function cr(hdl) {
- return function(e) {
- if (e.which == 10 || e.which == 13 || e.which == 32) {
- hdl();
- }
- };
-}
-
-/** Extend an objects with options */
-function extend(defaults, options) {
- var target = {};
-
- Object.keys(defaults).forEach(function(k){
- target[k] = defaults[k];
- });
-
- Object.keys(options).forEach(function(k){
- target[k] = options[k];
- });
-
- return target;
-}
-
-/** Escape string for use as literal in RegExp */
-function rgxe(str) {
- return str.replace(/[\-\[\]\/\{\}\(\)\*\+\?\.\\\^\$\|]/g, "\\$&");
-}
-
-/** Format number to N decimal places, output as string */
-function numfmt(x, places) {
- var pow = Math.pow(10, places);
- return Math.round(x*pow) / pow;
-}
-
-/** Get millisecond timestamp */
-function msNow() {
- return +(new Date);
-}
-
-/** Get ms elapsed since msNow() */
-function msElapsed(start) {
- return msNow() - start;
-}
-
-/** Shim for log base 10 */
-Math.log10 = Math.log10 || function(x) {
- return Math.log(x) / Math.LN10;
-};
-
-/**
- * Perform a substitution in the given string.
- *
- * Arguments - array or list of replacements.
- * Arguments numeric keys will replace {0}, {1} etc.
- * Named keys also work, ie. {foo: "bar"} -> replaces {foo} with bar.
- *
- * Braces are added to keys if missing.
- *
- * @returns {String} result
- */
-String.prototype.format = function () {
- var out = this;
- var repl = arguments;
-
- if (arguments.length == 1 && (Array.isArray(arguments[0]) || typeof arguments[0] == 'object')) {
- repl = arguments[0];
- }
-
- for (var ph in repl) {
- if (repl.hasOwnProperty(ph)) {
- var ph_orig = ph;
-
- if (!ph.match(/^\{.*\}$/)) {
- ph = '{' + ph + '}';
- }
-
- // replace all occurrences
- var pattern = new RegExp(rgxe(ph), "g");
- out = out.replace(pattern, repl[ph_orig]);
- }
- }
-
- return out;
-};
-
-/** HTML escape */
-function e(str) {
- return $.htmlEscape(str);
-}
-
-/** Check for undefined */
-function undef(x) {
- return typeof x == 'undefined';
-}
-
-/** Safe json parse */
-function jsp(str) {
- try {
- return JSON.parse(str);
- } catch(e) {
- console.error(e);
- return null;
- }
-}
-
-/** Create a character from ASCII code */
-function Chr(n) {
- return String.fromCharCode(n);
-}
-
-/** Decode number from 2B encoding */
-function parse2B(s, i=0) {
- return (s.charCodeAt(i++) - 1) + (s.charCodeAt(i) - 1) * 127;
-}
-
-/** Decode number from 3B encoding */
-function parse3B(s, i=0) {
- return (s.charCodeAt(i) - 1) + (s.charCodeAt(i+1) - 1) * 127 + (s.charCodeAt(i+2) - 1) * 127 * 127;
-}
-
-/** Encode using 2B encoding, returns string. */
-function encode2B(n) {
- var lsb, msb;
- lsb = (n % 127);
- n = ((n - lsb) / 127);
- lsb += 1;
- msb = (n + 1);
- return Chr(lsb) + Chr(msb);
-}
-
-/** Encode using 3B encoding, returns string. */
-function encode3B(n) {
- var lsb, msb, xsb;
- lsb = (n % 127);
- n = (n - lsb) / 127;
- lsb += 1;
- msb = (n % 127);
- n = (n - msb) / 127;
- msb += 1;
- xsb = (n + 1);
- return Chr(lsb) + Chr(msb) + Chr(xsb);
-}
diff --git a/html_orig/jssrc/wifi.js b/html_orig/jssrc/wifi.js
deleted file mode 100644
index ebed158..0000000
--- a/html_orig/jssrc/wifi.js
+++ /dev/null
@@ -1,163 +0,0 @@
-(function(w) {
- var authStr = ['Open', 'WEP', 'WPA', 'WPA2', 'WPA/WPA2'];
- var curSSID;
-
- // Get XX % for a slider input
- function rangePt(inp) {
- return Math.round(((inp.value / inp.max)*100)) + '%';
- }
-
- // Display selected STA SSID etc
- function selectSta(name, password, ip) {
- $('#sta_ssid').val(name);
- $('#sta_password').val(password);
-
- $('#sta-nw').toggleClass('hidden', name.length == 0);
- $('#sta-nw-nil').toggleClass('hidden', name.length > 0);
-
- $('#sta-nw .essid').html(e(name));
- var nopw = undef(password) || password.length == 0;
- $('#sta-nw .passwd').toggleClass('hidden', nopw);
- $('#sta-nw .nopasswd').toggleClass('hidden', !nopw);
- $('#sta-nw .ip').html(ip.length>0 ? tr('wifi.connected_ip_is')+ip : tr('wifi.not_conn'));
- }
-
- /** Update display for received response */
- function onScan(resp, status) {
- //var ap_json = {
- // "result": {
- // "inProgress": "0",
- // "APs": [
- // {"essid": "Chlivek", "bssid": "88:f7:c7:52:b3:99", "rssi": "204", "enc": "4", "channel": "1"},
- // {"essid": "TyNikdy", "bssid": "5c:f4:ab:0d:f1:1b", "rssi": "164", "enc": "3", "channel": "1"},
- // ]
- // }
- //};
-
- if (status != 200) {
- // bad response
- rescan(5000); // wait 5sm then retry
- return;
- }
-
- try {
- resp = JSON.parse(resp);
- } catch (e) {
- console.log(e);
- rescan(5000);
- return;
- }
-
- var done = !bool(resp.result.inProgress) && (resp.result.APs.length > 0);
- rescan(done ? 15000 : 1000);
- if (!done) return; // no redraw yet
-
- // clear the AP list
- var $list = $('#ap-list');
- // remove old APs
- $('#ap-list .AP').remove();
-
- $list.toggleClass('hidden', !done);
- $('#ap-loader').toggleClass('hidden', done);
-
- // scan done
- resp.result.APs.sort(function (a, b) {
- return b.rssi - a.rssi;
- }).forEach(function (ap) {
- ap.enc = parseInt(ap.enc);
-
- if (ap.enc > 4) return; // hide unsupported auths
-
- var item = mk('div');
-
- var $item = $(item)
- .data('ssid', ap.essid)
- .data('pwd', ap.enc)
- .attr('tabindex', 0)
- .addClass('AP');
-
- // mark current SSID
- if (ap.essid == curSSID) {
- $item.addClass('selected');
- }
-
- var inner = mk('div');
- $(inner).addClass('inner')
- .htmlAppend(''.format(ap.rssi_perc))
- .htmlAppend('{0}
'.format($.htmlEscape(ap.essid)))
- .htmlAppend('{0}
'.format(authStr[ap.enc]));
-
- $item.on('click', function () {
- var $th = $(this);
-
- var conn_ssid = $th.data('ssid');
- var conn_pass = '';
-
- if (+$th.data('pwd')) {
- // this AP needs a password
- conn_pass = prompt(tr("wifi.enter_passwd").replace(":ssid:", conn_ssid));
- if (!conn_pass) return;
- }
-
- $('#sta_password').val(conn_pass);
- $('#sta_ssid').val(conn_ssid);
- selectSta(conn_ssid, conn_pass, '');
- });
-
-
- item.appendChild(inner);
- $list[0].appendChild(item);
- });
- }
-
- function startScanning() {
- $('#ap-loader').removeClass('hidden');
- $('#ap-scan').addClass('hidden');
- $('#ap-loader .anim-dots').html('.');
-
- scanAPs();
- }
-
- /** Ask the CGI what APs are visible (async) */
- function scanAPs() {
- if (_demo) {
- onScan(_demo_aps, 200);
- } else {
- $.get('http://' + _root + '/cfg/wifi/scan', onScan);
- }
- }
-
- function rescan(time) {
- setTimeout(scanAPs, time);
- }
-
- /** Set up the WiFi page */
- function wifiInit(cfg) {
- // Update slider value displays
- $('.Row.range').forEach(function(x) {
- var inp = x.querySelector('input');
- var disp1 = x.querySelector('.x-disp1');
- var disp2 = x.querySelector('.x-disp2');
- var t = rangePt(inp);
- $(disp1).html(t);
- $(disp2).html(t);
- $(inp).on('input', function() {
- t = rangePt(inp);
- $(disp1).html(t);
- $(disp2).html(t);
- });
- });
-
- // Forget STA credentials
- $('#forget-sta').on('click', function() {
- selectSta('', '', '');
- return false;
- });
-
- selectSta(cfg.sta_ssid, cfg.sta_password, cfg.sta_active_ip);
- curSSID = cfg.sta_active_ssid;
- }
-
- w.init = wifiInit;
- w.startScanning = startScanning;
-})(window.WiFi = {});
diff --git a/html_orig/lang/en.php b/html_orig/lang/en.php
deleted file mode 100644
index 3e63611..0000000
--- a/html_orig/lang/en.php
+++ /dev/null
@@ -1,180 +0,0 @@
- 'ESPTerm',
- 'appname_demo' => 'ESPTerm DEMO ',
-
- 'menu.cfg_wifi' => 'WiFi Settings',
- 'menu.cfg_network' => 'Network Settings',
- 'menu.cfg_term' => 'Terminal Settings',
- 'menu.about' => 'About ESPTerm',
- 'menu.help' => 'Quick Reference',
- 'menu.term' => 'Back to Terminal',
- 'menu.cfg_system' => 'System Settings',
- 'menu.cfg_wifi_conn' => 'Connecting to Network',
-
- 'menu.settings' => 'Settings',
-
- 'title.term' => 'Terminal',
-
- 'term_nav.config' => 'Config',
- 'term_nav.wifi' => 'WiFi',
- 'term_nav.help' => 'Help',
- 'term_nav.about' => 'About',
- 'term_nav.paste' => 'Paste',
- 'term_nav.upload' => 'Upload',
- 'term_nav.keybd' => 'Keyboard',
- 'term_nav.paste_prompt' => 'Paste text to send:',
-
- 'net.ap' => 'DHCP Server (AP)',
- 'net.sta' => 'DHCP Client (Station)',
- 'net.sta_mac' => 'Station MAC',
- 'net.ap_mac' => 'AP MAC',
- 'net.details' => 'MAC addresses',
-
- 'term.defaults' => 'Initial Settings',
- 'term.expert' => 'Expert Options',
- 'term.explain_initials' => '
- Those are the initial settings used after ESPTerm powers on or when the screen
- reset command is received. Some options can be changed by the application via escape sequences,
- those changes won\'t be saved in Flash.
- ',
- 'term.explain_expert' => '
- Those are advanced config options that usually don\'t need to be changed.
- Edit them only if you know what you\'re doing.',
-
- 'term.example' => 'Default colors preview',
-
- 'term.reset_screen' => 'Reset screen & parser',
- 'term.term_title' => 'Header text',
- 'term.term_width' => 'Width / height',
- 'term.default_fg_bg' => 'Text / background',
- 'term.buttons' => 'Button labels',
- 'term.theme' => 'Color scheme',
- 'term.parser_tout_ms' => 'Parser timeout',
- 'term.display_tout_ms' => 'Redraw delay',
- 'term.display_cooldown_ms' => 'Redraw cooldown',
- 'term.fn_alt_mode' => 'SS3 Fn keys',
- 'term.show_config_links' => 'Show nav links',
- 'term.show_buttons' => 'Show buttons',
- 'term.loopback' => 'Local Echo',
- 'term.button_msgs' => 'Button codes (ASCII, dec, CSV)',
-
- // terminal color labels
- 'color.0' => 'Black',
- 'color.1' => 'Red',
- 'color.2' => 'Green',
- 'color.3' => 'Yellow',
- 'color.4' => 'Blue',
- 'color.5' => 'Purple',
- 'color.6' => 'Cyan',
- 'color.7' => 'Silver',
- 'color.8' => 'Gray',
- 'color.9' => 'Light Red',
- 'color.10' => 'Light Green',
- 'color.11' => 'Light Yellow',
- 'color.12' => 'Light Blue',
- 'color.13' => 'Light Purple',
- 'color.14' => 'Light Cyan',
- 'color.15' => 'White',
-
- 'net.explain_sta' => '
- Switch off Dynamic IP to configure the static IP address.',
-
- 'net.explain_ap' => '
- Those settings affect the built-in DHCP server in AP mode.',
-
- 'net.ap_dhcp_time' => 'Lease time',
- 'net.ap_dhcp_start' => 'Pool start IP',
- 'net.ap_dhcp_end' => 'Pool end IP',
- 'net.ap_addr_ip' => 'Own IP address',
- 'net.ap_addr_mask' => 'Subnet mask',
-
- 'net.sta_dhcp_enable' => 'Use dynamic IP',
- 'net.sta_addr_ip' => 'ESPTerm static IP',
- 'net.sta_addr_mask' => 'Subnet mask',
- 'net.sta_addr_gw' => 'Gateway IP',
-
- 'wifi.ap' => 'Built-in Access Point',
- 'wifi.sta' => 'Join Existing Network',
-
- 'wifi.enable' => 'Enabled',
- 'wifi.tpw' => 'Transmit power',
- 'wifi.ap_channel' => 'Channel',
- 'wifi.ap_ssid' => 'AP SSID',
- 'wifi.ap_password' => 'Password',
- 'wifi.ap_hidden' => 'Hide SSID',
- 'wifi.sta_info' => 'Selected',
-
- 'wifi.not_conn' => 'Not connected.',
- 'wifi.sta_none' => 'None',
- 'wifi.sta_active_pw' => '🔒 Password saved',
- 'wifi.sta_active_nopw' => '🔓 Open access',
- 'wifi.connected_ip_is' => 'Connected, IP is ',
- 'wifi.sta_password' => 'Password:',
-
- 'wifi.scanning' => 'Scanning',
- 'wifi.scan_now' => 'Click here to start scanning!',
- 'wifi.cant_scan_no_sta' => 'Click here to enable client mode and start scanning!',
- 'wifi.select_ssid' => 'Available networks:',
- 'wifi.enter_passwd' => 'Enter password for ":ssid:"',
- 'wifi.sta_explain' => 'After selecting a network, press Apply to connect.',
-
- 'wifi.conn.status' => 'Status:',
- 'wifi.conn.back_to_config' => 'Back to WiFi config',
- 'wifi.conn.telemetry_lost' => 'Telemetry lost; something went wrong, or your device disconnected.',
- 'wifi.conn.explain_android_sucks' => '
- If you\'re configuring ESPTerm via a smartphone, or were connected
- from another external network, your device may lose connection and this
- progress indicator won\'t work. Please wait a while (~ 15 seconds),
- then check if the connection succeeded.',
-
- 'wifi.conn.explain_reset' => '
- To force enable the built-in AP, hold the BOOT
- button until the blue LED starts flashing. Hold the button longer (until the LED
- flashes rapidly) for a "factory reset".',
-
- 'wifi.conn.disabled' =>"Station mode is disabled.",
- 'wifi.conn.idle' =>"Idle, not connected and has no IP.",
- 'wifi.conn.success' => "Connected! Received IP ",
- 'wifi.conn.working' => "Connecting to selected AP",
- 'wifi.conn.fail' => "Connection failed, check settings & try again. Cause: ",
-
- 'system.save_restore' => 'Save & Restore',
- 'system.confirm_restore' => 'Restore all settings to their default values?',
- 'system.confirm_restore_hard' =>
- 'Restore to firmware default settings? This will reset ' .
- 'all active settings and switch to AP mode with the default SSID.',
- 'system.confirm_store_defaults' =>
- 'Enter admin password to confirm you want to store the current settings as defaults.',
- 'system.password' => 'Admin password:',
- 'system.restore_defaults' => 'Reset active settings to defaults',
- 'system.write_defaults' => 'Save active settings as defaults',
- 'system.restore_hard' => 'Reset active settings to firmware defaults',
- 'system.explain_persist' => '
- ESPTerm contains two persistent memory banks, one for default and
- one for active settings. Active settings can be stored as defaults
- by the administrator (password required).
- ',
- 'system.uart' => 'Serial Port',
- 'system.explain_uart' => '
- This form controls the primary, communication UART. The debug UART is fixed at 115.200 baud, one stop-bit and no parity.
- ',
- 'uart.baud' => 'Baud rate',
- 'uart.parity' => 'Parity',
- 'uart.parity.none' => 'None',
- 'uart.parity.odd' => 'Odd',
- 'uart.parity.even' => 'Even',
- 'uart.stop_bits' => 'Stop-bits',
- 'uart.stop_bits.one' => 'One',
- 'uart.stop_bits.one_and_half' => 'One and half',
- 'uart.stop_bits.two' => 'Two',
-
- 'apply' => 'Apply!',
- 'enabled' => 'Enabled',
- 'disabled' => 'Disabled',
- 'yes' => 'Yes',
- 'no' => 'No',
- 'confirm' => 'OK',
- 'form_errors' => 'Validation errors for:',
-];
diff --git a/html_orig/package-lock.json b/html_orig/package-lock.json
deleted file mode 100644
index 67d3093..0000000
--- a/html_orig/package-lock.json
+++ /dev/null
@@ -1,2189 +0,0 @@
-{
- "name": "html_orig",
- "version": "1.0.0",
- "lockfileVersion": 1,
- "requires": true,
- "dependencies": {
- "abbrev": {
- "version": "1.1.0",
- "resolved": "https://registry.npmjs.org/abbrev/-/abbrev-1.1.0.tgz",
- "integrity": "sha1-0FVMIlZjbi9W58LlrRg/hZQo2B8=",
- "dev": true
- },
- "ajv": {
- "version": "4.11.8",
- "resolved": "https://registry.npmjs.org/ajv/-/ajv-4.11.8.tgz",
- "integrity": "sha1-gv+wKynmYq5TvcIK8VlHcGc5xTY=",
- "dev": true,
- "requires": {
- "co": "4.6.0",
- "json-stable-stringify": "1.0.1"
- }
- },
- "amdefine": {
- "version": "1.0.1",
- "resolved": "https://registry.npmjs.org/amdefine/-/amdefine-1.0.1.tgz",
- "integrity": "sha1-SlKCrBZHKek2Gbz9OtFR+BfOkfU=",
- "dev": true
- },
- "ansi-regex": {
- "version": "2.1.1",
- "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-2.1.1.tgz",
- "integrity": "sha1-w7M6te42DYbg5ijwRorn7yfWVN8=",
- "dev": true
- },
- "ansi-styles": {
- "version": "2.2.1",
- "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-2.2.1.tgz",
- "integrity": "sha1-tDLdM1i2NM914eRmQ2gkBTPB3b4=",
- "dev": true
- },
- "aproba": {
- "version": "1.1.2",
- "resolved": "https://registry.npmjs.org/aproba/-/aproba-1.1.2.tgz",
- "integrity": "sha512-ZpYajIfO0j2cOFTO955KUMIKNmj6zhX8kVztMAxFsDaMwz+9Z9SV0uou2pC9HJqcfpffOsjnbrDMvkNy+9RXPw==",
- "dev": true
- },
- "are-we-there-yet": {
- "version": "1.1.4",
- "resolved": "https://registry.npmjs.org/are-we-there-yet/-/are-we-there-yet-1.1.4.tgz",
- "integrity": "sha1-u13KOCu5TwXhUZQ3PRb9O6HKEQ0=",
- "dev": true,
- "requires": {
- "delegates": "1.0.0",
- "readable-stream": "2.3.3"
- }
- },
- "array-find-index": {
- "version": "1.0.2",
- "resolved": "https://registry.npmjs.org/array-find-index/-/array-find-index-1.0.2.tgz",
- "integrity": "sha1-3wEKoSh+Fku9pvlyOwqWoexBh6E=",
- "dev": true
- },
- "asn1": {
- "version": "0.2.3",
- "resolved": "https://registry.npmjs.org/asn1/-/asn1-0.2.3.tgz",
- "integrity": "sha1-2sh4dxPJlmhJ/IGAd36+nB3fO4Y=",
- "dev": true
- },
- "assert-plus": {
- "version": "0.2.0",
- "resolved": "https://registry.npmjs.org/assert-plus/-/assert-plus-0.2.0.tgz",
- "integrity": "sha1-104bh+ev/A24qttwIfP+SBAasjQ=",
- "dev": true
- },
- "async-foreach": {
- "version": "0.1.3",
- "resolved": "https://registry.npmjs.org/async-foreach/-/async-foreach-0.1.3.tgz",
- "integrity": "sha1-NhIfhFwFeBct5Bmpfb6x0W7DRUI=",
- "dev": true
- },
- "asynckit": {
- "version": "0.4.0",
- "resolved": "https://registry.npmjs.org/asynckit/-/asynckit-0.4.0.tgz",
- "integrity": "sha1-x57Zf380y48robyXkLzDZkdLS3k=",
- "dev": true
- },
- "aws-sign2": {
- "version": "0.6.0",
- "resolved": "https://registry.npmjs.org/aws-sign2/-/aws-sign2-0.6.0.tgz",
- "integrity": "sha1-FDQt0428yU0OW4fXY81jYSwOeU8=",
- "dev": true
- },
- "aws4": {
- "version": "1.6.0",
- "resolved": "https://registry.npmjs.org/aws4/-/aws4-1.6.0.tgz",
- "integrity": "sha1-g+9cqGCysy5KDe7e6MdxudtXRx4=",
- "dev": true
- },
- "babel-code-frame": {
- "version": "6.26.0",
- "resolved": "https://registry.npmjs.org/babel-code-frame/-/babel-code-frame-6.26.0.tgz",
- "integrity": "sha1-Y/1D99weO7fONZR9uP42mj9Yx0s=",
- "dev": true,
- "requires": {
- "chalk": "1.1.3",
- "esutils": "2.0.2",
- "js-tokens": "3.0.2"
- }
- },
- "babel-core": {
- "version": "6.26.0",
- "resolved": "https://registry.npmjs.org/babel-core/-/babel-core-6.26.0.tgz",
- "integrity": "sha1-rzL3izGm/O8RnIew/Y2XU/A6C7g=",
- "dev": true,
- "requires": {
- "babel-code-frame": "6.26.0",
- "babel-generator": "6.26.0",
- "babel-helpers": "6.24.1",
- "babel-messages": "6.23.0",
- "babel-register": "6.26.0",
- "babel-runtime": "6.26.0",
- "babel-template": "6.26.0",
- "babel-traverse": "6.26.0",
- "babel-types": "6.26.0",
- "babylon": "6.18.0",
- "convert-source-map": "1.5.0",
- "debug": "2.6.8",
- "json5": "0.5.1",
- "lodash": "4.17.4",
- "minimatch": "3.0.4",
- "path-is-absolute": "1.0.1",
- "private": "0.1.7",
- "slash": "1.0.0",
- "source-map": "0.5.7"
- }
- },
- "babel-generator": {
- "version": "6.26.0",
- "resolved": "https://registry.npmjs.org/babel-generator/-/babel-generator-6.26.0.tgz",
- "integrity": "sha1-rBriAHC3n248odMmlhMFN3TyDcU=",
- "dev": true,
- "requires": {
- "babel-messages": "6.23.0",
- "babel-runtime": "6.26.0",
- "babel-types": "6.26.0",
- "detect-indent": "4.0.0",
- "jsesc": "1.3.0",
- "lodash": "4.17.4",
- "source-map": "0.5.7",
- "trim-right": "1.0.1"
- }
- },
- "babel-helper-evaluate-path": {
- "version": "0.2.0",
- "resolved": "https://registry.npmjs.org/babel-helper-evaluate-path/-/babel-helper-evaluate-path-0.2.0.tgz",
- "integrity": "sha512-0EK9TUKMxHL549hWDPkQoS7R0Ozg1CDLheVBHYds2B2qoAvmr9ejY3zOXFsrICK73TN7bPhU14PBeKc8jcBTwg==",
- "dev": true
- },
- "babel-helper-flip-expressions": {
- "version": "0.2.0",
- "resolved": "https://registry.npmjs.org/babel-helper-flip-expressions/-/babel-helper-flip-expressions-0.2.0.tgz",
- "integrity": "sha512-rAsPA1pWBc7e2E6HepkP2e1sXugT+Oq/VCqhyuHJ8aJ2d/ifwnJfd4Qxjm21qlW43AN8tqaeByagKK6wECFMSw==",
- "dev": true
- },
- "babel-helper-is-nodes-equiv": {
- "version": "0.0.1",
- "resolved": "https://registry.npmjs.org/babel-helper-is-nodes-equiv/-/babel-helper-is-nodes-equiv-0.0.1.tgz",
- "integrity": "sha1-NOmzALFHnd2Y7HfqC76TQt/jloQ=",
- "dev": true
- },
- "babel-helper-is-void-0": {
- "version": "0.2.0",
- "resolved": "https://registry.npmjs.org/babel-helper-is-void-0/-/babel-helper-is-void-0-0.2.0.tgz",
- "integrity": "sha512-Axj1AYuD0E3Dl7nT3KxROP7VekEofz3XtEljzURf3fABalLpr8PamtgLFt+zuxtaCxRf9iuZmbAMMYWri5Bazw==",
- "dev": true
- },
- "babel-helper-mark-eval-scopes": {
- "version": "0.2.0",
- "resolved": "https://registry.npmjs.org/babel-helper-mark-eval-scopes/-/babel-helper-mark-eval-scopes-0.2.0.tgz",
- "integrity": "sha512-KJuwrOUcHbvbh6he4xRXZFLaivK9DF9o3CrvpWnK1Wp0B+1ANYABXBMgwrnNFIDK/AvicxQ9CNr8wsgivlp4Aw==",
- "dev": true
- },
- "babel-helper-remove-or-void": {
- "version": "0.2.0",
- "resolved": "https://registry.npmjs.org/babel-helper-remove-or-void/-/babel-helper-remove-or-void-0.2.0.tgz",
- "integrity": "sha512-1Z41upf/XR+PwY7Nd+F15Jo5BiQi5205ZXUuKed3yoyQgDkMyoM7vAdjEJS/T+M6jy32sXjskMUgms4zeiVtRA==",
- "dev": true
- },
- "babel-helper-to-multiple-sequence-expressions": {
- "version": "0.2.0",
- "resolved": "https://registry.npmjs.org/babel-helper-to-multiple-sequence-expressions/-/babel-helper-to-multiple-sequence-expressions-0.2.0.tgz",
- "integrity": "sha512-ij9lpfdP3+Zc/7kNwa+NXbTrUlsYEWPwt/ugmQO0qflzLrveTIkbfOqQztvitk81aG5NblYDQXDlRohzu3oa8Q==",
- "dev": true
- },
- "babel-helpers": {
- "version": "6.24.1",
- "resolved": "https://registry.npmjs.org/babel-helpers/-/babel-helpers-6.24.1.tgz",
- "integrity": "sha1-NHHenK7DiOXIUOWX5Yom3fN2ArI=",
- "dev": true,
- "requires": {
- "babel-runtime": "6.26.0",
- "babel-template": "6.26.0"
- }
- },
- "babel-messages": {
- "version": "6.23.0",
- "resolved": "https://registry.npmjs.org/babel-messages/-/babel-messages-6.23.0.tgz",
- "integrity": "sha1-8830cDhYA1sqKVHG7F7fbGLyYw4=",
- "dev": true,
- "requires": {
- "babel-runtime": "6.26.0"
- }
- },
- "babel-minify": {
- "version": "0.2.0",
- "resolved": "https://registry.npmjs.org/babel-minify/-/babel-minify-0.2.0.tgz",
- "integrity": "sha512-4IrZciOMJ3Vj/EHb1hSqEFj03alx0HbwkQUu0LXf6dEP9bx0AcwPL2eSi1L1I2FDhvpDuo/7lbJPvK73M2VdJw==",
- "dev": true,
- "requires": {
- "babel-core": "6.26.0",
- "babel-preset-minify": "0.2.0",
- "fs-readdir-recursive": "1.0.0",
- "mkdirp": "0.5.1",
- "util.promisify": "1.0.0",
- "yargs-parser": "5.0.0"
- }
- },
- "babel-plugin-minify-builtins": {
- "version": "0.2.0",
- "resolved": "https://registry.npmjs.org/babel-plugin-minify-builtins/-/babel-plugin-minify-builtins-0.2.0.tgz",
- "integrity": "sha512-4i+8ntaS8gwVUcOz5y+zE+55OVOl2nTbmHV51D4wAIiKcRI8U5K//ip1GHfhsgk/NJrrHK7h97Oy5jpqt0Iixg==",
- "dev": true,
- "requires": {
- "babel-helper-evaluate-path": "0.2.0"
- }
- },
- "babel-plugin-minify-constant-folding": {
- "version": "0.2.0",
- "resolved": "https://registry.npmjs.org/babel-plugin-minify-constant-folding/-/babel-plugin-minify-constant-folding-0.2.0.tgz",
- "integrity": "sha512-B3ffQBEUQ8ydlIkYv2MkZtTCbV7FAkWAV7NkyhcXlGpD10PaCxNGQ/B9oguXGowR1m16Q5nGhvNn8Pkn1MO6Hw==",
- "dev": true,
- "requires": {
- "babel-helper-evaluate-path": "0.2.0"
- }
- },
- "babel-plugin-minify-dead-code-elimination": {
- "version": "0.2.0",
- "resolved": "https://registry.npmjs.org/babel-plugin-minify-dead-code-elimination/-/babel-plugin-minify-dead-code-elimination-0.2.0.tgz",
- "integrity": "sha512-zE7y3pRyzA4zK5nBou0kTcwUTSQ/AiFrynt1cIEYN7vcO2gS9ZFZoI0aO9JYLUdct5fsC1vfB35408yrzTyVfg==",
- "dev": true,
- "requires": {
- "babel-helper-evaluate-path": "0.2.0",
- "babel-helper-mark-eval-scopes": "0.2.0",
- "babel-helper-remove-or-void": "0.2.0",
- "lodash.some": "4.6.0"
- }
- },
- "babel-plugin-minify-flip-comparisons": {
- "version": "0.2.0",
- "resolved": "https://registry.npmjs.org/babel-plugin-minify-flip-comparisons/-/babel-plugin-minify-flip-comparisons-0.2.0.tgz",
- "integrity": "sha512-QOqXSEmD/LhT3LpM1WCyzAGcQZYYKJF7oOHvS6QbpomHenydrV53DMdPX2mK01icBExKZcJAHF209wvDBa+CSg==",
- "dev": true,
- "requires": {
- "babel-helper-is-void-0": "0.2.0"
- }
- },
- "babel-plugin-minify-guarded-expressions": {
- "version": "0.2.0",
- "resolved": "https://registry.npmjs.org/babel-plugin-minify-guarded-expressions/-/babel-plugin-minify-guarded-expressions-0.2.0.tgz",
- "integrity": "sha512-5+NSPdRQ9mnrHaA+zFj+D5OzmSiv90EX5zGH6cWQgR/OUqmCHSDqgTRPFvOctgpo8MJyO7Rt7ajs2UfLnlAwYg==",
- "dev": true,
- "requires": {
- "babel-helper-flip-expressions": "0.2.0"
- }
- },
- "babel-plugin-minify-infinity": {
- "version": "0.2.0",
- "resolved": "https://registry.npmjs.org/babel-plugin-minify-infinity/-/babel-plugin-minify-infinity-0.2.0.tgz",
- "integrity": "sha512-U694vrla1lN6vDHWGrR832t3a/A2eh+kyl019LxEE2+sS4VTydyOPRsAOIYAdJegWRA4cMX1lm9azAN0cLIr8g==",
- "dev": true
- },
- "babel-plugin-minify-mangle-names": {
- "version": "0.2.0",
- "resolved": "https://registry.npmjs.org/babel-plugin-minify-mangle-names/-/babel-plugin-minify-mangle-names-0.2.0.tgz",
- "integrity": "sha512-Gixuak1/CO7VCdjn15/8Bxe/QsAtDG4zPbnsNoe1mIJGCIH/kcmSjFhMlGJtXDQZd6EKzeMfA5WmX9+jvGRefw==",
- "dev": true,
- "requires": {
- "babel-helper-mark-eval-scopes": "0.2.0"
- }
- },
- "babel-plugin-minify-numeric-literals": {
- "version": "0.2.0",
- "resolved": "https://registry.npmjs.org/babel-plugin-minify-numeric-literals/-/babel-plugin-minify-numeric-literals-0.2.0.tgz",
- "integrity": "sha512-VcLpb+r1YS7+RIOXdRsFVLLqoh22177USpHf+JM/g1nZbzdqENmfd5v534MLAbRErhbz6SyK+NQViVzVtBxu8g==",
- "dev": true
- },
- "babel-plugin-minify-replace": {
- "version": "0.2.0",
- "resolved": "https://registry.npmjs.org/babel-plugin-minify-replace/-/babel-plugin-minify-replace-0.2.0.tgz",
- "integrity": "sha512-SEW6zoSVxh3OH6E1LCgyhhTWMnCv+JIRu5h5IlJDA11tU4ZeSF7uPQcO4vN/o52+FssRB26dmzJ/8D+z0QPg5Q==",
- "dev": true
- },
- "babel-plugin-minify-simplify": {
- "version": "0.2.0",
- "resolved": "https://registry.npmjs.org/babel-plugin-minify-simplify/-/babel-plugin-minify-simplify-0.2.0.tgz",
- "integrity": "sha512-Mj3Mwy2zVosMfXDWXZrQH5/uMAyfJdmDQ1NVqit+ArbHC3LlXVzptuyC1JxTyai/wgFvjLaichm/7vSUshkWqw==",
- "dev": true,
- "requires": {
- "babel-helper-flip-expressions": "0.2.0",
- "babel-helper-is-nodes-equiv": "0.0.1",
- "babel-helper-to-multiple-sequence-expressions": "0.2.0"
- }
- },
- "babel-plugin-minify-type-constructors": {
- "version": "0.2.0",
- "resolved": "https://registry.npmjs.org/babel-plugin-minify-type-constructors/-/babel-plugin-minify-type-constructors-0.2.0.tgz",
- "integrity": "sha512-NiOvvA9Pq6bki6nP4BayXwT5GZadw7DJFDDzHmkpnOQpENWe8RtHtKZM44MG1R6EQ5XxgbLdsdhswIzTkFlO5g==",
- "dev": true,
- "requires": {
- "babel-helper-is-void-0": "0.2.0"
- }
- },
- "babel-plugin-transform-inline-consecutive-adds": {
- "version": "0.2.0",
- "resolved": "https://registry.npmjs.org/babel-plugin-transform-inline-consecutive-adds/-/babel-plugin-transform-inline-consecutive-adds-0.2.0.tgz",
- "integrity": "sha512-GlhOuLOQ28ua9prg0hT33HslCrEmz9xWXy9ZNZSACppCyRxxRW+haYtRgm7uYXCcd0q8ggCWD2pfWEJp5iiZfQ==",
- "dev": true
- },
- "babel-plugin-transform-member-expression-literals": {
- "version": "6.8.5",
- "resolved": "https://registry.npmjs.org/babel-plugin-transform-member-expression-literals/-/babel-plugin-transform-member-expression-literals-6.8.5.tgz",
- "integrity": "sha512-Ux3ligf+ukzWaCbBYOstDuFBhRgMiJHlpJBKV4P47qtzVkd0lg1ddPj9fqIJqAM0n+CvxipyrZrnNnw3CdtQCg==",
- "dev": true
- },
- "babel-plugin-transform-merge-sibling-variables": {
- "version": "6.8.6",
- "resolved": "https://registry.npmjs.org/babel-plugin-transform-merge-sibling-variables/-/babel-plugin-transform-merge-sibling-variables-6.8.6.tgz",
- "integrity": "sha512-o5Jioq553HtEAUN5uty7ELJMenXIxHI3PIs1yLqYWYQwP6mg6IPVAJ+U7i4zr9XGF/kb2RGsdehglGTV+vngqA==",
- "dev": true
- },
- "babel-plugin-transform-minify-booleans": {
- "version": "6.8.3",
- "resolved": "https://registry.npmjs.org/babel-plugin-transform-minify-booleans/-/babel-plugin-transform-minify-booleans-6.8.3.tgz",
- "integrity": "sha512-bPbUhkeN2Nc0KH0/A19GwQGj8w+CvdJzyu8t59VoEDgsNMQ9Bopzi5DrVkrSsVjbYUaZpzq/DYLrH+wD5K2Tig==",
- "dev": true
- },
- "babel-plugin-transform-property-literals": {
- "version": "6.8.5",
- "resolved": "https://registry.npmjs.org/babel-plugin-transform-property-literals/-/babel-plugin-transform-property-literals-6.8.5.tgz",
- "integrity": "sha512-MmiQsQ5AcIaRZMJD0zY5C4H3xuHm06/nWgtOsz7AXV44VEIXIlPiJ39IFYJ4Qx67/fEm8zJAedzR8t+B7d10Bg==",
- "dev": true,
- "requires": {
- "esutils": "2.0.2"
- }
- },
- "babel-plugin-transform-regexp-constructors": {
- "version": "0.2.0",
- "resolved": "https://registry.npmjs.org/babel-plugin-transform-regexp-constructors/-/babel-plugin-transform-regexp-constructors-0.2.0.tgz",
- "integrity": "sha512-7IsQ6aQx6LAaOqy97/PthTf+5Nx9grZww3r6E62IdWe76Yr8KsuwVjxzqSPQvESJqTE3EMADQ9S0RtwWDGNG9Q==",
- "dev": true
- },
- "babel-plugin-transform-remove-console": {
- "version": "6.8.5",
- "resolved": "https://registry.npmjs.org/babel-plugin-transform-remove-console/-/babel-plugin-transform-remove-console-6.8.5.tgz",
- "integrity": "sha512-uuCKvtweCyIvvC8fi92EcWRtO2Kt5KMNMRK6BhpDXdeb3sxvGM7453RSmgeu4DlKns3OlvY9Ep5Q9m5a7RQAgg==",
- "dev": true
- },
- "babel-plugin-transform-remove-debugger": {
- "version": "6.8.5",
- "resolved": "https://registry.npmjs.org/babel-plugin-transform-remove-debugger/-/babel-plugin-transform-remove-debugger-6.8.5.tgz",
- "integrity": "sha512-InDQDdHPOLJKM+G6oXrEesf+P29QFBmcTXID+TAvZziVz+38xe2VO/Bn3FcRcRtnOOycbgsJkUNp9jIK+ist6g==",
- "dev": true
- },
- "babel-plugin-transform-remove-undefined": {
- "version": "0.2.0",
- "resolved": "https://registry.npmjs.org/babel-plugin-transform-remove-undefined/-/babel-plugin-transform-remove-undefined-0.2.0.tgz",
- "integrity": "sha512-O8v57tPMHkp89kA4ZfQEYds/pzgvz/QYerBJjIuL5/Jc7RnvMVRA5gJY9zFKP7WayW8WOSBV4vh8Y8FJRio+ow==",
- "dev": true,
- "requires": {
- "babel-helper-evaluate-path": "0.2.0"
- }
- },
- "babel-plugin-transform-simplify-comparison-operators": {
- "version": "6.8.5",
- "resolved": "https://registry.npmjs.org/babel-plugin-transform-simplify-comparison-operators/-/babel-plugin-transform-simplify-comparison-operators-6.8.5.tgz",
- "integrity": "sha512-B3HlBZb+Uq86nRj5yNPO6pJ3noEdqHvzYkEYoUWtrsWTv48ZIRatYlumoOiif/v8llF13YjYjx9zhyznDx+N9g==",
- "dev": true
- },
- "babel-plugin-transform-undefined-to-void": {
- "version": "6.8.3",
- "resolved": "https://registry.npmjs.org/babel-plugin-transform-undefined-to-void/-/babel-plugin-transform-undefined-to-void-6.8.3.tgz",
- "integrity": "sha512-goYwp8dMrzHD6x9GjZ2M85Mk2vxf1h85CnUgAjfftUnlJvzF4uj5MrbReHBTbjQ96C8CuRzvhYZ3tv8H3Sc1ZA==",
- "dev": true
- },
- "babel-preset-minify": {
- "version": "0.2.0",
- "resolved": "https://registry.npmjs.org/babel-preset-minify/-/babel-preset-minify-0.2.0.tgz",
- "integrity": "sha512-mR8Q44RmMzm18bM2Lqd9uiPopzk5GDCtVuquNbLFmX6lOKnqWoenaNBxnWW0UhBFC75lEHTIgNGCbnsRI0pJVw==",
- "dev": true,
- "requires": {
- "babel-plugin-minify-builtins": "0.2.0",
- "babel-plugin-minify-constant-folding": "0.2.0",
- "babel-plugin-minify-dead-code-elimination": "0.2.0",
- "babel-plugin-minify-flip-comparisons": "0.2.0",
- "babel-plugin-minify-guarded-expressions": "0.2.0",
- "babel-plugin-minify-infinity": "0.2.0",
- "babel-plugin-minify-mangle-names": "0.2.0",
- "babel-plugin-minify-numeric-literals": "0.2.0",
- "babel-plugin-minify-replace": "0.2.0",
- "babel-plugin-minify-simplify": "0.2.0",
- "babel-plugin-minify-type-constructors": "0.2.0",
- "babel-plugin-transform-inline-consecutive-adds": "0.2.0",
- "babel-plugin-transform-member-expression-literals": "6.8.5",
- "babel-plugin-transform-merge-sibling-variables": "6.8.6",
- "babel-plugin-transform-minify-booleans": "6.8.3",
- "babel-plugin-transform-property-literals": "6.8.5",
- "babel-plugin-transform-regexp-constructors": "0.2.0",
- "babel-plugin-transform-remove-console": "6.8.5",
- "babel-plugin-transform-remove-debugger": "6.8.5",
- "babel-plugin-transform-remove-undefined": "0.2.0",
- "babel-plugin-transform-simplify-comparison-operators": "6.8.5",
- "babel-plugin-transform-undefined-to-void": "6.8.3",
- "lodash.isplainobject": "4.0.6"
- }
- },
- "babel-register": {
- "version": "6.26.0",
- "resolved": "https://registry.npmjs.org/babel-register/-/babel-register-6.26.0.tgz",
- "integrity": "sha1-btAhFz4vy0htestFxgCahW9kcHE=",
- "dev": true,
- "requires": {
- "babel-core": "6.26.0",
- "babel-runtime": "6.26.0",
- "core-js": "2.5.1",
- "home-or-tmp": "2.0.0",
- "lodash": "4.17.4",
- "mkdirp": "0.5.1",
- "source-map-support": "0.4.17"
- }
- },
- "babel-runtime": {
- "version": "6.26.0",
- "resolved": "https://registry.npmjs.org/babel-runtime/-/babel-runtime-6.26.0.tgz",
- "integrity": "sha1-llxwWGaOgrVde/4E/yM3vItWR/4=",
- "dev": true,
- "requires": {
- "core-js": "2.5.1",
- "regenerator-runtime": "0.11.0"
- }
- },
- "babel-template": {
- "version": "6.26.0",
- "resolved": "https://registry.npmjs.org/babel-template/-/babel-template-6.26.0.tgz",
- "integrity": "sha1-3gPi0WOWsGn0bdn/+FIfsaDjXgI=",
- "dev": true,
- "requires": {
- "babel-runtime": "6.26.0",
- "babel-traverse": "6.26.0",
- "babel-types": "6.26.0",
- "babylon": "6.18.0",
- "lodash": "4.17.4"
- }
- },
- "babel-traverse": {
- "version": "6.26.0",
- "resolved": "https://registry.npmjs.org/babel-traverse/-/babel-traverse-6.26.0.tgz",
- "integrity": "sha1-RqnL1+3MYsjlwGTi0tjQ9ANXZu4=",
- "dev": true,
- "requires": {
- "babel-code-frame": "6.26.0",
- "babel-messages": "6.23.0",
- "babel-runtime": "6.26.0",
- "babel-types": "6.26.0",
- "babylon": "6.18.0",
- "debug": "2.6.8",
- "globals": "9.18.0",
- "invariant": "2.2.2",
- "lodash": "4.17.4"
- }
- },
- "babel-types": {
- "version": "6.26.0",
- "resolved": "https://registry.npmjs.org/babel-types/-/babel-types-6.26.0.tgz",
- "integrity": "sha1-o7Bz+Uq0nrb6Vc1lInozQ4BjJJc=",
- "dev": true,
- "requires": {
- "babel-runtime": "6.26.0",
- "esutils": "2.0.2",
- "lodash": "4.17.4",
- "to-fast-properties": "1.0.3"
- }
- },
- "babylon": {
- "version": "6.18.0",
- "resolved": "https://registry.npmjs.org/babylon/-/babylon-6.18.0.tgz",
- "integrity": "sha512-q/UEjfGJ2Cm3oKV71DJz9d25TPnq5rhBVL2Q4fA5wcC3jcrdn7+SssEybFIxwAvvP+YCsCYNKughoF33GxgycQ==",
- "dev": true
- },
- "balanced-match": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.0.tgz",
- "integrity": "sha1-ibTRmasr7kneFk6gK4nORi1xt2c=",
- "dev": true
- },
- "bcrypt-pbkdf": {
- "version": "1.0.1",
- "resolved": "https://registry.npmjs.org/bcrypt-pbkdf/-/bcrypt-pbkdf-1.0.1.tgz",
- "integrity": "sha1-Y7xdy2EzG5K8Bf1SiVPDNGKgb40=",
- "dev": true,
- "optional": true,
- "requires": {
- "tweetnacl": "0.14.5"
- }
- },
- "block-stream": {
- "version": "0.0.9",
- "resolved": "https://registry.npmjs.org/block-stream/-/block-stream-0.0.9.tgz",
- "integrity": "sha1-E+v+d4oDIFz+A3UUgeu0szAMEmo=",
- "dev": true,
- "requires": {
- "inherits": "2.0.3"
- }
- },
- "boom": {
- "version": "2.10.1",
- "resolved": "https://registry.npmjs.org/boom/-/boom-2.10.1.tgz",
- "integrity": "sha1-OciRjO/1eZ+D+UkqhI9iWt0Mdm8=",
- "dev": true,
- "requires": {
- "hoek": "2.16.3"
- }
- },
- "brace-expansion": {
- "version": "1.1.8",
- "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.8.tgz",
- "integrity": "sha1-wHshHHyVLsH479Uad+8NHTmQopI=",
- "dev": true,
- "requires": {
- "balanced-match": "1.0.0",
- "concat-map": "0.0.1"
- }
- },
- "builtin-modules": {
- "version": "1.1.1",
- "resolved": "https://registry.npmjs.org/builtin-modules/-/builtin-modules-1.1.1.tgz",
- "integrity": "sha1-Jw8HbFpywC9bZaR9+Uxf46J4iS8=",
- "dev": true
- },
- "camelcase": {
- "version": "3.0.0",
- "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-3.0.0.tgz",
- "integrity": "sha1-MvxLn82vhF/N9+c7uXysImHwqwo=",
- "dev": true
- },
- "camelcase-keys": {
- "version": "2.1.0",
- "resolved": "https://registry.npmjs.org/camelcase-keys/-/camelcase-keys-2.1.0.tgz",
- "integrity": "sha1-MIvur/3ygRkFHvodkyITyRuPkuc=",
- "dev": true,
- "requires": {
- "camelcase": "2.1.1",
- "map-obj": "1.0.1"
- },
- "dependencies": {
- "camelcase": {
- "version": "2.1.1",
- "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-2.1.1.tgz",
- "integrity": "sha1-fB0W1nmhu+WcoCys7PsBHiAfWh8=",
- "dev": true
- }
- }
- },
- "caseless": {
- "version": "0.12.0",
- "resolved": "https://registry.npmjs.org/caseless/-/caseless-0.12.0.tgz",
- "integrity": "sha1-G2gcIf+EAzyCZUMJBolCDRhxUdw=",
- "dev": true
- },
- "chalk": {
- "version": "1.1.3",
- "resolved": "https://registry.npmjs.org/chalk/-/chalk-1.1.3.tgz",
- "integrity": "sha1-qBFcVeSnAv5NFQq9OHKCKn4J/Jg=",
- "dev": true,
- "requires": {
- "ansi-styles": "2.2.1",
- "escape-string-regexp": "1.0.5",
- "has-ansi": "2.0.0",
- "strip-ansi": "3.0.1",
- "supports-color": "2.0.0"
- }
- },
- "cliui": {
- "version": "3.2.0",
- "resolved": "https://registry.npmjs.org/cliui/-/cliui-3.2.0.tgz",
- "integrity": "sha1-EgYBU3qRbSmUD5NNo7SNWFo5IT0=",
- "dev": true,
- "requires": {
- "string-width": "1.0.2",
- "strip-ansi": "3.0.1",
- "wrap-ansi": "2.1.0"
- }
- },
- "co": {
- "version": "4.6.0",
- "resolved": "https://registry.npmjs.org/co/-/co-4.6.0.tgz",
- "integrity": "sha1-bqa989hTrlTMuOR7+gvz+QMfsYQ=",
- "dev": true
- },
- "code-point-at": {
- "version": "1.1.0",
- "resolved": "https://registry.npmjs.org/code-point-at/-/code-point-at-1.1.0.tgz",
- "integrity": "sha1-DQcLTQQ6W+ozovGkDi7bPZpMz3c=",
- "dev": true
- },
- "combined-stream": {
- "version": "1.0.5",
- "resolved": "https://registry.npmjs.org/combined-stream/-/combined-stream-1.0.5.tgz",
- "integrity": "sha1-k4NwpXtKUd6ix3wV1cX9+JUWQAk=",
- "dev": true,
- "requires": {
- "delayed-stream": "1.0.0"
- }
- },
- "concat-map": {
- "version": "0.0.1",
- "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz",
- "integrity": "sha1-2Klr13/Wjfd5OnMDajug1UBdR3s=",
- "dev": true
- },
- "console-control-strings": {
- "version": "1.1.0",
- "resolved": "https://registry.npmjs.org/console-control-strings/-/console-control-strings-1.1.0.tgz",
- "integrity": "sha1-PXz0Rk22RG6mRL9LOVB/mFEAjo4=",
- "dev": true
- },
- "convert-source-map": {
- "version": "1.5.0",
- "resolved": "https://registry.npmjs.org/convert-source-map/-/convert-source-map-1.5.0.tgz",
- "integrity": "sha1-ms1whRxtXf3ZPZKC5e35SgP/RrU=",
- "dev": true
- },
- "core-js": {
- "version": "2.5.1",
- "resolved": "https://registry.npmjs.org/core-js/-/core-js-2.5.1.tgz",
- "integrity": "sha1-rmh03GaTd4m4B1T/VCjfZoGcpQs=",
- "dev": true
- },
- "core-util-is": {
- "version": "1.0.2",
- "resolved": "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.2.tgz",
- "integrity": "sha1-tf1UIgqivFq1eqtxQMlAdUUDwac=",
- "dev": true
- },
- "cross-spawn": {
- "version": "3.0.1",
- "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-3.0.1.tgz",
- "integrity": "sha1-ElYDfsufDF9549bvE14wdwGEuYI=",
- "dev": true,
- "requires": {
- "lru-cache": "4.1.1",
- "which": "1.3.0"
- }
- },
- "cryptiles": {
- "version": "2.0.5",
- "resolved": "https://registry.npmjs.org/cryptiles/-/cryptiles-2.0.5.tgz",
- "integrity": "sha1-O9/s3GCBR8HGcgL6KR59ylnqo7g=",
- "dev": true,
- "requires": {
- "boom": "2.10.1"
- }
- },
- "currently-unhandled": {
- "version": "0.4.1",
- "resolved": "https://registry.npmjs.org/currently-unhandled/-/currently-unhandled-0.4.1.tgz",
- "integrity": "sha1-mI3zP+qxke95mmE2nddsF635V+o=",
- "dev": true,
- "requires": {
- "array-find-index": "1.0.2"
- }
- },
- "dashdash": {
- "version": "1.14.1",
- "resolved": "https://registry.npmjs.org/dashdash/-/dashdash-1.14.1.tgz",
- "integrity": "sha1-hTz6D3y+L+1d4gMmuN1YEDX24vA=",
- "dev": true,
- "requires": {
- "assert-plus": "1.0.0"
- },
- "dependencies": {
- "assert-plus": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/assert-plus/-/assert-plus-1.0.0.tgz",
- "integrity": "sha1-8S4PPF13sLHN2RRpQuTpbB5N1SU=",
- "dev": true
- }
- }
- },
- "debug": {
- "version": "2.6.8",
- "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.8.tgz",
- "integrity": "sha1-5zFTHKLt4n0YgiJCfaF4IdaP9Pw=",
- "dev": true,
- "requires": {
- "ms": "2.0.0"
- }
- },
- "decamelize": {
- "version": "1.2.0",
- "resolved": "https://registry.npmjs.org/decamelize/-/decamelize-1.2.0.tgz",
- "integrity": "sha1-9lNNFRSCabIDUue+4m9QH5oZEpA=",
- "dev": true
- },
- "define-properties": {
- "version": "1.1.2",
- "resolved": "https://registry.npmjs.org/define-properties/-/define-properties-1.1.2.tgz",
- "integrity": "sha1-g6c/L+pWmJj7c3GTyPhzyvbUXJQ=",
- "dev": true,
- "requires": {
- "foreach": "2.0.5",
- "object-keys": "1.0.11"
- }
- },
- "delayed-stream": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/delayed-stream/-/delayed-stream-1.0.0.tgz",
- "integrity": "sha1-3zrhmayt+31ECqrgsp4icrJOxhk=",
- "dev": true
- },
- "delegates": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/delegates/-/delegates-1.0.0.tgz",
- "integrity": "sha1-hMbhWbgZBP3KWaDvRM2HDTElD5o=",
- "dev": true
- },
- "detect-indent": {
- "version": "4.0.0",
- "resolved": "https://registry.npmjs.org/detect-indent/-/detect-indent-4.0.0.tgz",
- "integrity": "sha1-920GQ1LN9Docts5hnE7jqUdd4gg=",
- "dev": true,
- "requires": {
- "repeating": "2.0.1"
- }
- },
- "ecc-jsbn": {
- "version": "0.1.1",
- "resolved": "https://registry.npmjs.org/ecc-jsbn/-/ecc-jsbn-0.1.1.tgz",
- "integrity": "sha1-D8c6ntXw1Tw4GTOYUj735UN3dQU=",
- "dev": true,
- "optional": true,
- "requires": {
- "jsbn": "0.1.1"
- }
- },
- "error-ex": {
- "version": "1.3.1",
- "resolved": "https://registry.npmjs.org/error-ex/-/error-ex-1.3.1.tgz",
- "integrity": "sha1-+FWobOYa3E6GIcPNoh56dhLDqNw=",
- "dev": true,
- "requires": {
- "is-arrayish": "0.2.1"
- }
- },
- "es-abstract": {
- "version": "1.8.2",
- "resolved": "https://registry.npmjs.org/es-abstract/-/es-abstract-1.8.2.tgz",
- "integrity": "sha512-dvhwFL3yjQxNNsOWx6exMlaDrRHCRGMQlnx5lsXDCZ/J7G/frgIIl94zhZSp/galVAYp7VzPi1OrAHta89/yGQ==",
- "dev": true,
- "requires": {
- "es-to-primitive": "1.1.1",
- "function-bind": "1.1.1",
- "has": "1.0.1",
- "is-callable": "1.1.3",
- "is-regex": "1.0.4"
- }
- },
- "es-to-primitive": {
- "version": "1.1.1",
- "resolved": "https://registry.npmjs.org/es-to-primitive/-/es-to-primitive-1.1.1.tgz",
- "integrity": "sha1-RTVSSKiJeQNLZ5Lhm7gfK3l13Q0=",
- "dev": true,
- "requires": {
- "is-callable": "1.1.3",
- "is-date-object": "1.0.1",
- "is-symbol": "1.0.1"
- }
- },
- "escape-string-regexp": {
- "version": "1.0.5",
- "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz",
- "integrity": "sha1-G2HAViGQqN/2rjuyzwIAyhMLhtQ=",
- "dev": true
- },
- "esutils": {
- "version": "2.0.2",
- "resolved": "https://registry.npmjs.org/esutils/-/esutils-2.0.2.tgz",
- "integrity": "sha1-Cr9PHKpbyx96nYrMbepPqqBLrJs=",
- "dev": true
- },
- "extend": {
- "version": "3.0.1",
- "resolved": "https://registry.npmjs.org/extend/-/extend-3.0.1.tgz",
- "integrity": "sha1-p1Xqe8Gt/MWjHOfnYtuq3F5jZEQ=",
- "dev": true
- },
- "extsprintf": {
- "version": "1.3.0",
- "resolved": "https://registry.npmjs.org/extsprintf/-/extsprintf-1.3.0.tgz",
- "integrity": "sha1-lpGEQOMEGnpBT4xS48V06zw+HgU=",
- "dev": true
- },
- "find-up": {
- "version": "1.1.2",
- "resolved": "https://registry.npmjs.org/find-up/-/find-up-1.1.2.tgz",
- "integrity": "sha1-ay6YIrGizgpgq2TWEOzK1TyyTQ8=",
- "dev": true,
- "requires": {
- "path-exists": "2.1.0",
- "pinkie-promise": "2.0.1"
- }
- },
- "foreach": {
- "version": "2.0.5",
- "resolved": "https://registry.npmjs.org/foreach/-/foreach-2.0.5.tgz",
- "integrity": "sha1-C+4AUBiusmDQo6865ljdATbsG5k=",
- "dev": true
- },
- "forever-agent": {
- "version": "0.6.1",
- "resolved": "https://registry.npmjs.org/forever-agent/-/forever-agent-0.6.1.tgz",
- "integrity": "sha1-+8cfDEGt6zf5bFd60e1C2P2sypE=",
- "dev": true
- },
- "form-data": {
- "version": "2.1.4",
- "resolved": "https://registry.npmjs.org/form-data/-/form-data-2.1.4.tgz",
- "integrity": "sha1-M8GDrPGTJ27KqYFDpp6Uv+4XUNE=",
- "dev": true,
- "requires": {
- "asynckit": "0.4.0",
- "combined-stream": "1.0.5",
- "mime-types": "2.1.17"
- }
- },
- "fs-readdir-recursive": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/fs-readdir-recursive/-/fs-readdir-recursive-1.0.0.tgz",
- "integrity": "sha1-jNF0XItPiinIyuw5JHaSG6GV9WA=",
- "dev": true
- },
- "fs.realpath": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz",
- "integrity": "sha1-FQStJSMVjKpA20onh8sBQRmU6k8=",
- "dev": true
- },
- "fstream": {
- "version": "1.0.11",
- "resolved": "https://registry.npmjs.org/fstream/-/fstream-1.0.11.tgz",
- "integrity": "sha1-XB+x8RdHcRTwYyoOtLcbPLD9MXE=",
- "dev": true,
- "requires": {
- "graceful-fs": "4.1.11",
- "inherits": "2.0.3",
- "mkdirp": "0.5.1",
- "rimraf": "2.6.1"
- }
- },
- "function-bind": {
- "version": "1.1.1",
- "resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.1.tgz",
- "integrity": "sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A==",
- "dev": true
- },
- "gauge": {
- "version": "2.7.4",
- "resolved": "https://registry.npmjs.org/gauge/-/gauge-2.7.4.tgz",
- "integrity": "sha1-LANAXHU4w51+s3sxcCLjJfsBi/c=",
- "dev": true,
- "requires": {
- "aproba": "1.1.2",
- "console-control-strings": "1.1.0",
- "has-unicode": "2.0.1",
- "object-assign": "4.1.1",
- "signal-exit": "3.0.2",
- "string-width": "1.0.2",
- "strip-ansi": "3.0.1",
- "wide-align": "1.1.2"
- }
- },
- "gaze": {
- "version": "1.1.2",
- "resolved": "https://registry.npmjs.org/gaze/-/gaze-1.1.2.tgz",
- "integrity": "sha1-hHIkZ3rbiHDWeSV+0ziP22HkAQU=",
- "dev": true,
- "requires": {
- "globule": "1.2.0"
- }
- },
- "get-caller-file": {
- "version": "1.0.2",
- "resolved": "https://registry.npmjs.org/get-caller-file/-/get-caller-file-1.0.2.tgz",
- "integrity": "sha1-9wLmMSfn4jHBYKgMFVSstw1QR+U=",
- "dev": true
- },
- "get-stdin": {
- "version": "4.0.1",
- "resolved": "https://registry.npmjs.org/get-stdin/-/get-stdin-4.0.1.tgz",
- "integrity": "sha1-uWjGsKBDhDJJAui/Gl3zJXmkUP4=",
- "dev": true
- },
- "getpass": {
- "version": "0.1.7",
- "resolved": "https://registry.npmjs.org/getpass/-/getpass-0.1.7.tgz",
- "integrity": "sha1-Xv+OPmhNVprkyysSgmBOi6YhSfo=",
- "dev": true,
- "requires": {
- "assert-plus": "1.0.0"
- },
- "dependencies": {
- "assert-plus": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/assert-plus/-/assert-plus-1.0.0.tgz",
- "integrity": "sha1-8S4PPF13sLHN2RRpQuTpbB5N1SU=",
- "dev": true
- }
- }
- },
- "glob": {
- "version": "7.1.2",
- "resolved": "https://registry.npmjs.org/glob/-/glob-7.1.2.tgz",
- "integrity": "sha512-MJTUg1kjuLeQCJ+ccE4Vpa6kKVXkPYJ2mOCQyUuKLcLQsdrMCpBPUi8qVE6+YuaJkozeA9NusTAw3hLr8Xe5EQ==",
- "dev": true,
- "requires": {
- "fs.realpath": "1.0.0",
- "inflight": "1.0.6",
- "inherits": "2.0.3",
- "minimatch": "3.0.4",
- "once": "1.4.0",
- "path-is-absolute": "1.0.1"
- }
- },
- "globals": {
- "version": "9.18.0",
- "resolved": "https://registry.npmjs.org/globals/-/globals-9.18.0.tgz",
- "integrity": "sha512-S0nG3CLEQiY/ILxqtztTWH/3iRRdyBLw6KMDxnKMchrtbj2OFmehVh0WUCfW3DUrIgx/qFrJPICrq4Z4sTR9UQ==",
- "dev": true
- },
- "globule": {
- "version": "1.2.0",
- "resolved": "https://registry.npmjs.org/globule/-/globule-1.2.0.tgz",
- "integrity": "sha1-HcScaCLdnoovoAuiopUAboZkvQk=",
- "dev": true,
- "requires": {
- "glob": "7.1.2",
- "lodash": "4.17.4",
- "minimatch": "3.0.4"
- }
- },
- "graceful-fs": {
- "version": "4.1.11",
- "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.1.11.tgz",
- "integrity": "sha1-Dovf5NHduIVNZOBOp8AOKgJuVlg=",
- "dev": true
- },
- "har-schema": {
- "version": "1.0.5",
- "resolved": "https://registry.npmjs.org/har-schema/-/har-schema-1.0.5.tgz",
- "integrity": "sha1-0mMTX0MwfALGAq/I/pWXDAFRNp4=",
- "dev": true
- },
- "har-validator": {
- "version": "4.2.1",
- "resolved": "https://registry.npmjs.org/har-validator/-/har-validator-4.2.1.tgz",
- "integrity": "sha1-M0gdDxu/9gDdID11gSpqX7oALio=",
- "dev": true,
- "requires": {
- "ajv": "4.11.8",
- "har-schema": "1.0.5"
- }
- },
- "has": {
- "version": "1.0.1",
- "resolved": "https://registry.npmjs.org/has/-/has-1.0.1.tgz",
- "integrity": "sha1-hGFzP1OLCDfJNh45qauelwTcLyg=",
- "dev": true,
- "requires": {
- "function-bind": "1.1.1"
- }
- },
- "has-ansi": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/has-ansi/-/has-ansi-2.0.0.tgz",
- "integrity": "sha1-NPUEnOHs3ysGSa8+8k5F7TVBbZE=",
- "dev": true,
- "requires": {
- "ansi-regex": "2.1.1"
- }
- },
- "has-unicode": {
- "version": "2.0.1",
- "resolved": "https://registry.npmjs.org/has-unicode/-/has-unicode-2.0.1.tgz",
- "integrity": "sha1-4Ob+aijPUROIVeCG0Wkedx3iqLk=",
- "dev": true
- },
- "hawk": {
- "version": "3.1.3",
- "resolved": "https://registry.npmjs.org/hawk/-/hawk-3.1.3.tgz",
- "integrity": "sha1-B4REvXwWQLD+VA0sm3PVlnjo4cQ=",
- "dev": true,
- "requires": {
- "boom": "2.10.1",
- "cryptiles": "2.0.5",
- "hoek": "2.16.3",
- "sntp": "1.0.9"
- }
- },
- "hoek": {
- "version": "2.16.3",
- "resolved": "https://registry.npmjs.org/hoek/-/hoek-2.16.3.tgz",
- "integrity": "sha1-ILt0A9POo5jpHcRxCo/xuCdKJe0=",
- "dev": true
- },
- "home-or-tmp": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/home-or-tmp/-/home-or-tmp-2.0.0.tgz",
- "integrity": "sha1-42w/LSyufXRqhX440Y1fMqeILbg=",
- "dev": true,
- "requires": {
- "os-homedir": "1.0.2",
- "os-tmpdir": "1.0.2"
- }
- },
- "hosted-git-info": {
- "version": "2.5.0",
- "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-2.5.0.tgz",
- "integrity": "sha512-pNgbURSuab90KbTqvRPsseaTxOJCZBD0a7t+haSN33piP9cCM4l0CqdzAif2hUqm716UovKB2ROmiabGAKVXyg==",
- "dev": true
- },
- "http-signature": {
- "version": "1.1.1",
- "resolved": "https://registry.npmjs.org/http-signature/-/http-signature-1.1.1.tgz",
- "integrity": "sha1-33LiZwZs0Kxn+3at+OE0qPvPkb8=",
- "dev": true,
- "requires": {
- "assert-plus": "0.2.0",
- "jsprim": "1.4.1",
- "sshpk": "1.13.1"
- }
- },
- "in-publish": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/in-publish/-/in-publish-2.0.0.tgz",
- "integrity": "sha1-4g/146KvwmkDILbcVSaCqcf631E=",
- "dev": true
- },
- "indent-string": {
- "version": "2.1.0",
- "resolved": "https://registry.npmjs.org/indent-string/-/indent-string-2.1.0.tgz",
- "integrity": "sha1-ji1INIdCEhtKghi3oTfppSBJ3IA=",
- "dev": true,
- "requires": {
- "repeating": "2.0.1"
- }
- },
- "inflight": {
- "version": "1.0.6",
- "resolved": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz",
- "integrity": "sha1-Sb1jMdfQLQwJvJEKEHW6gWW1bfk=",
- "dev": true,
- "requires": {
- "once": "1.4.0",
- "wrappy": "1.0.2"
- }
- },
- "inherits": {
- "version": "2.0.3",
- "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.3.tgz",
- "integrity": "sha1-Yzwsg+PaQqUC9SRmAiSA9CCCYd4=",
- "dev": true
- },
- "invariant": {
- "version": "2.2.2",
- "resolved": "https://registry.npmjs.org/invariant/-/invariant-2.2.2.tgz",
- "integrity": "sha1-nh9WrArNtr8wMwbzOL47IErmA2A=",
- "dev": true,
- "requires": {
- "loose-envify": "1.3.1"
- }
- },
- "invert-kv": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/invert-kv/-/invert-kv-1.0.0.tgz",
- "integrity": "sha1-EEqOSqym09jNFXqO+L+rLXo//bY=",
- "dev": true
- },
- "is-arrayish": {
- "version": "0.2.1",
- "resolved": "https://registry.npmjs.org/is-arrayish/-/is-arrayish-0.2.1.tgz",
- "integrity": "sha1-d8mYQFJ6qOyxqLppe4BkWnqSap0=",
- "dev": true
- },
- "is-builtin-module": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/is-builtin-module/-/is-builtin-module-1.0.0.tgz",
- "integrity": "sha1-VAVy0096wxGfj3bDDLwbHgN6/74=",
- "dev": true,
- "requires": {
- "builtin-modules": "1.1.1"
- }
- },
- "is-callable": {
- "version": "1.1.3",
- "resolved": "https://registry.npmjs.org/is-callable/-/is-callable-1.1.3.tgz",
- "integrity": "sha1-hut1OSgF3cM69xySoO7fdO52BLI=",
- "dev": true
- },
- "is-date-object": {
- "version": "1.0.1",
- "resolved": "https://registry.npmjs.org/is-date-object/-/is-date-object-1.0.1.tgz",
- "integrity": "sha1-mqIOtq7rv/d/vTPnTKAbM1gdOhY=",
- "dev": true
- },
- "is-finite": {
- "version": "1.0.2",
- "resolved": "https://registry.npmjs.org/is-finite/-/is-finite-1.0.2.tgz",
- "integrity": "sha1-zGZ3aVYCvlUO8R6LSqYwU0K20Ko=",
- "dev": true,
- "requires": {
- "number-is-nan": "1.0.1"
- }
- },
- "is-fullwidth-code-point": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-1.0.0.tgz",
- "integrity": "sha1-754xOG8DGn8NZDr4L95QxFfvAMs=",
- "dev": true,
- "requires": {
- "number-is-nan": "1.0.1"
- }
- },
- "is-regex": {
- "version": "1.0.4",
- "resolved": "https://registry.npmjs.org/is-regex/-/is-regex-1.0.4.tgz",
- "integrity": "sha1-VRdIm1RwkbCTDglWVM7SXul+lJE=",
- "dev": true,
- "requires": {
- "has": "1.0.1"
- }
- },
- "is-symbol": {
- "version": "1.0.1",
- "resolved": "https://registry.npmjs.org/is-symbol/-/is-symbol-1.0.1.tgz",
- "integrity": "sha1-PMWfAAJRlLarLjjbrmaJJWtmBXI=",
- "dev": true
- },
- "is-typedarray": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/is-typedarray/-/is-typedarray-1.0.0.tgz",
- "integrity": "sha1-5HnICFjfDBsR3dppQPlgEfzaSpo=",
- "dev": true
- },
- "is-utf8": {
- "version": "0.2.1",
- "resolved": "https://registry.npmjs.org/is-utf8/-/is-utf8-0.2.1.tgz",
- "integrity": "sha1-Sw2hRCEE0bM2NA6AeX6GXPOffXI=",
- "dev": true
- },
- "isarray": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz",
- "integrity": "sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE=",
- "dev": true
- },
- "isexe": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz",
- "integrity": "sha1-6PvzdNxVb/iUehDcsFctYz8s+hA=",
- "dev": true
- },
- "isstream": {
- "version": "0.1.2",
- "resolved": "https://registry.npmjs.org/isstream/-/isstream-0.1.2.tgz",
- "integrity": "sha1-R+Y/evVa+m+S4VAOaQ64uFKcCZo=",
- "dev": true
- },
- "js-base64": {
- "version": "2.1.9",
- "resolved": "https://registry.npmjs.org/js-base64/-/js-base64-2.1.9.tgz",
- "integrity": "sha1-8OgK4DmkvWVLXygfyT8EqRSn/M4=",
- "dev": true
- },
- "js-tokens": {
- "version": "3.0.2",
- "resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-3.0.2.tgz",
- "integrity": "sha1-mGbfOVECEw449/mWvOtlRDIJwls=",
- "dev": true
- },
- "jsbn": {
- "version": "0.1.1",
- "resolved": "https://registry.npmjs.org/jsbn/-/jsbn-0.1.1.tgz",
- "integrity": "sha1-peZUwuWi3rXyAdls77yoDA7y9RM=",
- "dev": true,
- "optional": true
- },
- "jsesc": {
- "version": "1.3.0",
- "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-1.3.0.tgz",
- "integrity": "sha1-RsP+yMGJKxKwgz25vHYiF226s0s=",
- "dev": true
- },
- "json-schema": {
- "version": "0.2.3",
- "resolved": "https://registry.npmjs.org/json-schema/-/json-schema-0.2.3.tgz",
- "integrity": "sha1-tIDIkuWaLwWVTOcnvT8qTogvnhM=",
- "dev": true
- },
- "json-stable-stringify": {
- "version": "1.0.1",
- "resolved": "https://registry.npmjs.org/json-stable-stringify/-/json-stable-stringify-1.0.1.tgz",
- "integrity": "sha1-mnWdOcXy/1A/1TAGRu1EX4jE+a8=",
- "dev": true,
- "requires": {
- "jsonify": "0.0.0"
- }
- },
- "json-stringify-safe": {
- "version": "5.0.1",
- "resolved": "https://registry.npmjs.org/json-stringify-safe/-/json-stringify-safe-5.0.1.tgz",
- "integrity": "sha1-Epai1Y/UXxmg9s4B1lcB4sc1tus=",
- "dev": true
- },
- "json5": {
- "version": "0.5.1",
- "resolved": "https://registry.npmjs.org/json5/-/json5-0.5.1.tgz",
- "integrity": "sha1-Hq3nrMASA0rYTiOWdn6tn6VJWCE=",
- "dev": true
- },
- "jsonify": {
- "version": "0.0.0",
- "resolved": "https://registry.npmjs.org/jsonify/-/jsonify-0.0.0.tgz",
- "integrity": "sha1-LHS27kHZPKUbe1qu6PUDYx0lKnM=",
- "dev": true
- },
- "jsprim": {
- "version": "1.4.1",
- "resolved": "https://registry.npmjs.org/jsprim/-/jsprim-1.4.1.tgz",
- "integrity": "sha1-MT5mvB5cwG5Di8G3SZwuXFastqI=",
- "dev": true,
- "requires": {
- "assert-plus": "1.0.0",
- "extsprintf": "1.3.0",
- "json-schema": "0.2.3",
- "verror": "1.10.0"
- },
- "dependencies": {
- "assert-plus": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/assert-plus/-/assert-plus-1.0.0.tgz",
- "integrity": "sha1-8S4PPF13sLHN2RRpQuTpbB5N1SU=",
- "dev": true
- }
- }
- },
- "lcid": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/lcid/-/lcid-1.0.0.tgz",
- "integrity": "sha1-MIrMr6C8SDo4Z7S28rlQYlHRuDU=",
- "dev": true,
- "requires": {
- "invert-kv": "1.0.0"
- }
- },
- "load-json-file": {
- "version": "1.1.0",
- "resolved": "https://registry.npmjs.org/load-json-file/-/load-json-file-1.1.0.tgz",
- "integrity": "sha1-lWkFcI1YtLq0wiYbBPWfMcmTdMA=",
- "dev": true,
- "requires": {
- "graceful-fs": "4.1.11",
- "parse-json": "2.2.0",
- "pify": "2.3.0",
- "pinkie-promise": "2.0.1",
- "strip-bom": "2.0.0"
- }
- },
- "lodash": {
- "version": "4.17.4",
- "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.4.tgz",
- "integrity": "sha1-eCA6TRwyiuHYbcpkYONptX9AVa4=",
- "dev": true
- },
- "lodash.assign": {
- "version": "4.2.0",
- "resolved": "https://registry.npmjs.org/lodash.assign/-/lodash.assign-4.2.0.tgz",
- "integrity": "sha1-DZnzzNem0mHRm9rrkkUAXShYCOc=",
- "dev": true
- },
- "lodash.clonedeep": {
- "version": "4.5.0",
- "resolved": "https://registry.npmjs.org/lodash.clonedeep/-/lodash.clonedeep-4.5.0.tgz",
- "integrity": "sha1-4j8/nE+Pvd6HJSnBBxhXoIblzO8=",
- "dev": true
- },
- "lodash.isplainobject": {
- "version": "4.0.6",
- "resolved": "https://registry.npmjs.org/lodash.isplainobject/-/lodash.isplainobject-4.0.6.tgz",
- "integrity": "sha1-fFJqUtibRcRcxpC4gWO+BJf1UMs=",
- "dev": true
- },
- "lodash.mergewith": {
- "version": "4.6.0",
- "resolved": "https://registry.npmjs.org/lodash.mergewith/-/lodash.mergewith-4.6.0.tgz",
- "integrity": "sha1-FQzwoWeR9ZA7iJHqsVRgknS96lU=",
- "dev": true
- },
- "lodash.some": {
- "version": "4.6.0",
- "resolved": "https://registry.npmjs.org/lodash.some/-/lodash.some-4.6.0.tgz",
- "integrity": "sha1-G7nzFO9ri63tE7VJFpsqlF62jk0=",
- "dev": true
- },
- "loose-envify": {
- "version": "1.3.1",
- "resolved": "https://registry.npmjs.org/loose-envify/-/loose-envify-1.3.1.tgz",
- "integrity": "sha1-0aitM/qc4OcT1l/dCsi3SNR4yEg=",
- "dev": true,
- "requires": {
- "js-tokens": "3.0.2"
- }
- },
- "loud-rejection": {
- "version": "1.6.0",
- "resolved": "https://registry.npmjs.org/loud-rejection/-/loud-rejection-1.6.0.tgz",
- "integrity": "sha1-W0b4AUft7leIcPCG0Eghz5mOVR8=",
- "dev": true,
- "requires": {
- "currently-unhandled": "0.4.1",
- "signal-exit": "3.0.2"
- }
- },
- "lru-cache": {
- "version": "4.1.1",
- "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-4.1.1.tgz",
- "integrity": "sha512-q4spe4KTfsAS1SUHLO0wz8Qiyf1+vMIAgpRYioFYDMNqKfHQbg+AVDH3i4fvpl71/P1L0dBl+fQi+P37UYf0ew==",
- "dev": true,
- "requires": {
- "pseudomap": "1.0.2",
- "yallist": "2.1.2"
- }
- },
- "map-obj": {
- "version": "1.0.1",
- "resolved": "https://registry.npmjs.org/map-obj/-/map-obj-1.0.1.tgz",
- "integrity": "sha1-2TPOuSBdgr3PSIb2dCvcK03qFG0=",
- "dev": true
- },
- "meow": {
- "version": "3.7.0",
- "resolved": "https://registry.npmjs.org/meow/-/meow-3.7.0.tgz",
- "integrity": "sha1-cstmi0JSKCkKu/qFaJJYcwioAfs=",
- "dev": true,
- "requires": {
- "camelcase-keys": "2.1.0",
- "decamelize": "1.2.0",
- "loud-rejection": "1.6.0",
- "map-obj": "1.0.1",
- "minimist": "1.2.0",
- "normalize-package-data": "2.4.0",
- "object-assign": "4.1.1",
- "read-pkg-up": "1.0.1",
- "redent": "1.0.0",
- "trim-newlines": "1.0.0"
- },
- "dependencies": {
- "minimist": {
- "version": "1.2.0",
- "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.0.tgz",
- "integrity": "sha1-o1AIsg9BOD7sH7kU9M1d95omQoQ=",
- "dev": true
- }
- }
- },
- "mime-db": {
- "version": "1.30.0",
- "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.30.0.tgz",
- "integrity": "sha1-dMZD2i3Z1qRTmZY0ZbJtXKfXHwE=",
- "dev": true
- },
- "mime-types": {
- "version": "2.1.17",
- "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.17.tgz",
- "integrity": "sha1-Cdejk/A+mVp5+K+Fe3Cp4KsWVXo=",
- "dev": true,
- "requires": {
- "mime-db": "1.30.0"
- }
- },
- "minimatch": {
- "version": "3.0.4",
- "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.0.4.tgz",
- "integrity": "sha512-yJHVQEhyqPLUTgt9B83PXu6W3rx4MvvHvSUvToogpwoGDOUQ+yDrR0HRot+yOCdCO7u4hX3pWft6kWBBcqh0UA==",
- "dev": true,
- "requires": {
- "brace-expansion": "1.1.8"
- }
- },
- "minimist": {
- "version": "0.0.8",
- "resolved": "https://registry.npmjs.org/minimist/-/minimist-0.0.8.tgz",
- "integrity": "sha1-hX/Kv8M5fSYluCKCYuhqp6ARsF0=",
- "dev": true
- },
- "mkdirp": {
- "version": "0.5.1",
- "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.1.tgz",
- "integrity": "sha1-MAV0OOrGz3+MR2fzhkjWaX11yQM=",
- "dev": true,
- "requires": {
- "minimist": "0.0.8"
- }
- },
- "ms": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz",
- "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=",
- "dev": true
- },
- "nan": {
- "version": "2.7.0",
- "resolved": "https://registry.npmjs.org/nan/-/nan-2.7.0.tgz",
- "integrity": "sha1-2Vv3IeyHfgjbJ27T/G63j5CDrUY=",
- "dev": true
- },
- "node-gyp": {
- "version": "3.6.2",
- "resolved": "https://registry.npmjs.org/node-gyp/-/node-gyp-3.6.2.tgz",
- "integrity": "sha1-m/vlRWIoYoSDjnUOrAUpWFP6HGA=",
- "dev": true,
- "requires": {
- "fstream": "1.0.11",
- "glob": "7.1.2",
- "graceful-fs": "4.1.11",
- "minimatch": "3.0.4",
- "mkdirp": "0.5.1",
- "nopt": "3.0.6",
- "npmlog": "4.1.2",
- "osenv": "0.1.4",
- "request": "2.81.0",
- "rimraf": "2.6.1",
- "semver": "5.3.0",
- "tar": "2.2.1",
- "which": "1.3.0"
- },
- "dependencies": {
- "semver": {
- "version": "5.3.0",
- "resolved": "https://registry.npmjs.org/semver/-/semver-5.3.0.tgz",
- "integrity": "sha1-myzl094C0XxgEq0yaqa00M9U+U8=",
- "dev": true
- }
- }
- },
- "node-sass": {
- "version": "4.5.3",
- "resolved": "https://registry.npmjs.org/node-sass/-/node-sass-4.5.3.tgz",
- "integrity": "sha1-0JydEXlkEjnRuX/8YjH9zsU+FWg=",
- "dev": true,
- "requires": {
- "async-foreach": "0.1.3",
- "chalk": "1.1.3",
- "cross-spawn": "3.0.1",
- "gaze": "1.1.2",
- "get-stdin": "4.0.1",
- "glob": "7.1.2",
- "in-publish": "2.0.0",
- "lodash.assign": "4.2.0",
- "lodash.clonedeep": "4.5.0",
- "lodash.mergewith": "4.6.0",
- "meow": "3.7.0",
- "mkdirp": "0.5.1",
- "nan": "2.7.0",
- "node-gyp": "3.6.2",
- "npmlog": "4.1.2",
- "request": "2.81.0",
- "sass-graph": "2.2.4",
- "stdout-stream": "1.4.0"
- }
- },
- "nopt": {
- "version": "3.0.6",
- "resolved": "https://registry.npmjs.org/nopt/-/nopt-3.0.6.tgz",
- "integrity": "sha1-xkZdvwirzU2zWTF/eaxopkayj/k=",
- "dev": true,
- "requires": {
- "abbrev": "1.1.0"
- }
- },
- "normalize-package-data": {
- "version": "2.4.0",
- "resolved": "https://registry.npmjs.org/normalize-package-data/-/normalize-package-data-2.4.0.tgz",
- "integrity": "sha512-9jjUFbTPfEy3R/ad/2oNbKtW9Hgovl5O1FvFWKkKblNXoN/Oou6+9+KKohPK13Yc3/TyunyWhJp6gvRNR/PPAw==",
- "dev": true,
- "requires": {
- "hosted-git-info": "2.5.0",
- "is-builtin-module": "1.0.0",
- "semver": "5.4.1",
- "validate-npm-package-license": "3.0.1"
- }
- },
- "npmlog": {
- "version": "4.1.2",
- "resolved": "https://registry.npmjs.org/npmlog/-/npmlog-4.1.2.tgz",
- "integrity": "sha512-2uUqazuKlTaSI/dC8AzicUck7+IrEaOnN/e0jd3Xtt1KcGpwx30v50mL7oPyr/h9bL3E4aZccVwpwP+5W9Vjkg==",
- "dev": true,
- "requires": {
- "are-we-there-yet": "1.1.4",
- "console-control-strings": "1.1.0",
- "gauge": "2.7.4",
- "set-blocking": "2.0.0"
- }
- },
- "number-is-nan": {
- "version": "1.0.1",
- "resolved": "https://registry.npmjs.org/number-is-nan/-/number-is-nan-1.0.1.tgz",
- "integrity": "sha1-CXtgK1NCKlIsGvuHkDGDNpQaAR0=",
- "dev": true
- },
- "oauth-sign": {
- "version": "0.8.2",
- "resolved": "https://registry.npmjs.org/oauth-sign/-/oauth-sign-0.8.2.tgz",
- "integrity": "sha1-Rqarfwrq2N6unsBWV4C31O/rnUM=",
- "dev": true
- },
- "object-assign": {
- "version": "4.1.1",
- "resolved": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz",
- "integrity": "sha1-IQmtx5ZYh8/AXLvUQsrIv7s2CGM=",
- "dev": true
- },
- "object-keys": {
- "version": "1.0.11",
- "resolved": "https://registry.npmjs.org/object-keys/-/object-keys-1.0.11.tgz",
- "integrity": "sha1-xUYBd4rVYPEULODgG8yotW0TQm0=",
- "dev": true
- },
- "object.getownpropertydescriptors": {
- "version": "2.0.3",
- "resolved": "https://registry.npmjs.org/object.getownpropertydescriptors/-/object.getownpropertydescriptors-2.0.3.tgz",
- "integrity": "sha1-h1jIRvW0B62rDyNuCYbxSwUcqhY=",
- "dev": true,
- "requires": {
- "define-properties": "1.1.2",
- "es-abstract": "1.8.2"
- }
- },
- "once": {
- "version": "1.4.0",
- "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz",
- "integrity": "sha1-WDsap3WWHUsROsF9nFC6753Xa9E=",
- "dev": true,
- "requires": {
- "wrappy": "1.0.2"
- }
- },
- "os-homedir": {
- "version": "1.0.2",
- "resolved": "https://registry.npmjs.org/os-homedir/-/os-homedir-1.0.2.tgz",
- "integrity": "sha1-/7xJiDNuDoM94MFox+8VISGqf7M=",
- "dev": true
- },
- "os-locale": {
- "version": "1.4.0",
- "resolved": "https://registry.npmjs.org/os-locale/-/os-locale-1.4.0.tgz",
- "integrity": "sha1-IPnxeuKe00XoveWDsT0gCYA8FNk=",
- "dev": true,
- "requires": {
- "lcid": "1.0.0"
- }
- },
- "os-tmpdir": {
- "version": "1.0.2",
- "resolved": "https://registry.npmjs.org/os-tmpdir/-/os-tmpdir-1.0.2.tgz",
- "integrity": "sha1-u+Z0BseaqFxc/sdm/lc0VV36EnQ=",
- "dev": true
- },
- "osenv": {
- "version": "0.1.4",
- "resolved": "https://registry.npmjs.org/osenv/-/osenv-0.1.4.tgz",
- "integrity": "sha1-Qv5tWVPfBsgGS+bxdsPQWqqjRkQ=",
- "dev": true,
- "requires": {
- "os-homedir": "1.0.2",
- "os-tmpdir": "1.0.2"
- }
- },
- "parse-json": {
- "version": "2.2.0",
- "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-2.2.0.tgz",
- "integrity": "sha1-9ID0BDTvgHQfhGkJn43qGPVaTck=",
- "dev": true,
- "requires": {
- "error-ex": "1.3.1"
- }
- },
- "path-exists": {
- "version": "2.1.0",
- "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-2.1.0.tgz",
- "integrity": "sha1-D+tsZPD8UY2adU3V77YscCJ2H0s=",
- "dev": true,
- "requires": {
- "pinkie-promise": "2.0.1"
- }
- },
- "path-is-absolute": {
- "version": "1.0.1",
- "resolved": "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz",
- "integrity": "sha1-F0uSaHNVNP+8es5r9TpanhtcX18=",
- "dev": true
- },
- "path-type": {
- "version": "1.1.0",
- "resolved": "https://registry.npmjs.org/path-type/-/path-type-1.1.0.tgz",
- "integrity": "sha1-WcRPfuSR2nBNpBXaWkBwuk+P5EE=",
- "dev": true,
- "requires": {
- "graceful-fs": "4.1.11",
- "pify": "2.3.0",
- "pinkie-promise": "2.0.1"
- }
- },
- "performance-now": {
- "version": "0.2.0",
- "resolved": "https://registry.npmjs.org/performance-now/-/performance-now-0.2.0.tgz",
- "integrity": "sha1-M+8wxcd9TqIcWlOGnZG1bY8lVeU=",
- "dev": true
- },
- "pify": {
- "version": "2.3.0",
- "resolved": "https://registry.npmjs.org/pify/-/pify-2.3.0.tgz",
- "integrity": "sha1-7RQaasBDqEnqWISY59yosVMw6Qw=",
- "dev": true
- },
- "pinkie": {
- "version": "2.0.4",
- "resolved": "https://registry.npmjs.org/pinkie/-/pinkie-2.0.4.tgz",
- "integrity": "sha1-clVrgM+g1IqXToDnckjoDtT3+HA=",
- "dev": true
- },
- "pinkie-promise": {
- "version": "2.0.1",
- "resolved": "https://registry.npmjs.org/pinkie-promise/-/pinkie-promise-2.0.1.tgz",
- "integrity": "sha1-ITXW36ejWMBprJsXh3YogihFD/o=",
- "dev": true,
- "requires": {
- "pinkie": "2.0.4"
- }
- },
- "private": {
- "version": "0.1.7",
- "resolved": "https://registry.npmjs.org/private/-/private-0.1.7.tgz",
- "integrity": "sha1-aM5eih7woju1cMwoU3tTMqumPvE=",
- "dev": true
- },
- "process-nextick-args": {
- "version": "1.0.7",
- "resolved": "https://registry.npmjs.org/process-nextick-args/-/process-nextick-args-1.0.7.tgz",
- "integrity": "sha1-FQ4gt1ZZCtP5EJPyWk8q2L/zC6M=",
- "dev": true
- },
- "pseudomap": {
- "version": "1.0.2",
- "resolved": "https://registry.npmjs.org/pseudomap/-/pseudomap-1.0.2.tgz",
- "integrity": "sha1-8FKijacOYYkX7wqKw0wa5aaChrM=",
- "dev": true
- },
- "punycode": {
- "version": "1.4.1",
- "resolved": "https://registry.npmjs.org/punycode/-/punycode-1.4.1.tgz",
- "integrity": "sha1-wNWmOycYgArY4esPpSachN1BhF4=",
- "dev": true
- },
- "qs": {
- "version": "6.4.0",
- "resolved": "https://registry.npmjs.org/qs/-/qs-6.4.0.tgz",
- "integrity": "sha1-E+JtKK1rD/qpExLNO/cI7TUecjM=",
- "dev": true
- },
- "read-pkg": {
- "version": "1.1.0",
- "resolved": "https://registry.npmjs.org/read-pkg/-/read-pkg-1.1.0.tgz",
- "integrity": "sha1-9f+qXs0pyzHAR0vKfXVra7KePyg=",
- "dev": true,
- "requires": {
- "load-json-file": "1.1.0",
- "normalize-package-data": "2.4.0",
- "path-type": "1.1.0"
- }
- },
- "read-pkg-up": {
- "version": "1.0.1",
- "resolved": "https://registry.npmjs.org/read-pkg-up/-/read-pkg-up-1.0.1.tgz",
- "integrity": "sha1-nWPBMnbAZZGNV/ACpX9AobZD+wI=",
- "dev": true,
- "requires": {
- "find-up": "1.1.2",
- "read-pkg": "1.1.0"
- }
- },
- "readable-stream": {
- "version": "2.3.3",
- "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.3.tgz",
- "integrity": "sha512-m+qzzcn7KUxEmd1gMbchF+Y2eIUbieUaxkWtptyHywrX0rE8QEYqPC07Vuy4Wm32/xE16NcdBctb8S0Xe/5IeQ==",
- "dev": true,
- "requires": {
- "core-util-is": "1.0.2",
- "inherits": "2.0.3",
- "isarray": "1.0.0",
- "process-nextick-args": "1.0.7",
- "safe-buffer": "5.1.1",
- "string_decoder": "1.0.3",
- "util-deprecate": "1.0.2"
- }
- },
- "redent": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/redent/-/redent-1.0.0.tgz",
- "integrity": "sha1-z5Fqsf1fHxbfsggi3W7H9zDCr94=",
- "dev": true,
- "requires": {
- "indent-string": "2.1.0",
- "strip-indent": "1.0.1"
- }
- },
- "regenerator-runtime": {
- "version": "0.11.0",
- "resolved": "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.11.0.tgz",
- "integrity": "sha512-/aA0kLeRb5N9K0d4fw7ooEbI+xDe+DKD499EQqygGqeS8N3xto15p09uY2xj7ixP81sNPXvRLnAQIqdVStgb1A==",
- "dev": true
- },
- "repeating": {
- "version": "2.0.1",
- "resolved": "https://registry.npmjs.org/repeating/-/repeating-2.0.1.tgz",
- "integrity": "sha1-UhTFOpJtNVJwdSf7q0FdvAjQbdo=",
- "dev": true,
- "requires": {
- "is-finite": "1.0.2"
- }
- },
- "request": {
- "version": "2.81.0",
- "resolved": "https://registry.npmjs.org/request/-/request-2.81.0.tgz",
- "integrity": "sha1-xpKJRqDgbF+Nb4qTM0af/aRimKA=",
- "dev": true,
- "requires": {
- "aws-sign2": "0.6.0",
- "aws4": "1.6.0",
- "caseless": "0.12.0",
- "combined-stream": "1.0.5",
- "extend": "3.0.1",
- "forever-agent": "0.6.1",
- "form-data": "2.1.4",
- "har-validator": "4.2.1",
- "hawk": "3.1.3",
- "http-signature": "1.1.1",
- "is-typedarray": "1.0.0",
- "isstream": "0.1.2",
- "json-stringify-safe": "5.0.1",
- "mime-types": "2.1.17",
- "oauth-sign": "0.8.2",
- "performance-now": "0.2.0",
- "qs": "6.4.0",
- "safe-buffer": "5.1.1",
- "stringstream": "0.0.5",
- "tough-cookie": "2.3.2",
- "tunnel-agent": "0.6.0",
- "uuid": "3.1.0"
- }
- },
- "require-directory": {
- "version": "2.1.1",
- "resolved": "https://registry.npmjs.org/require-directory/-/require-directory-2.1.1.tgz",
- "integrity": "sha1-jGStX9MNqxyXbiNE/+f3kqam30I=",
- "dev": true
- },
- "require-main-filename": {
- "version": "1.0.1",
- "resolved": "https://registry.npmjs.org/require-main-filename/-/require-main-filename-1.0.1.tgz",
- "integrity": "sha1-l/cXtp1IeE9fUmpsWqj/3aBVpNE=",
- "dev": true
- },
- "rimraf": {
- "version": "2.6.1",
- "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-2.6.1.tgz",
- "integrity": "sha1-wjOOxkPfeht/5cVPqG9XQopV8z0=",
- "dev": true,
- "requires": {
- "glob": "7.1.2"
- }
- },
- "safe-buffer": {
- "version": "5.1.1",
- "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.1.tgz",
- "integrity": "sha512-kKvNJn6Mm93gAczWVJg7wH+wGYWNrDHdWvpUmHyEsgCtIwwo3bqPtV4tR5tuPaUhTOo/kvhVwd8XwwOllGYkbg==",
- "dev": true
- },
- "sass-graph": {
- "version": "2.2.4",
- "resolved": "https://registry.npmjs.org/sass-graph/-/sass-graph-2.2.4.tgz",
- "integrity": "sha1-E/vWPNHK8JCLn9k0dq1DpR0eC0k=",
- "dev": true,
- "requires": {
- "glob": "7.1.2",
- "lodash": "4.17.4",
- "scss-tokenizer": "0.2.3",
- "yargs": "7.1.0"
- }
- },
- "scss-tokenizer": {
- "version": "0.2.3",
- "resolved": "https://registry.npmjs.org/scss-tokenizer/-/scss-tokenizer-0.2.3.tgz",
- "integrity": "sha1-jrBtualyMzOCTT9VMGQRSYR85dE=",
- "dev": true,
- "requires": {
- "js-base64": "2.1.9",
- "source-map": "0.4.4"
- },
- "dependencies": {
- "source-map": {
- "version": "0.4.4",
- "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.4.4.tgz",
- "integrity": "sha1-66T12pwNyZneaAMti092FzZSA2s=",
- "dev": true,
- "requires": {
- "amdefine": "1.0.1"
- }
- }
- }
- },
- "semver": {
- "version": "5.4.1",
- "resolved": "https://registry.npmjs.org/semver/-/semver-5.4.1.tgz",
- "integrity": "sha512-WfG/X9+oATh81XtllIo/I8gOiY9EXRdv1cQdyykeXK17YcUW3EXUAi2To4pcH6nZtJPr7ZOpM5OMyWJZm+8Rsg==",
- "dev": true
- },
- "set-blocking": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/set-blocking/-/set-blocking-2.0.0.tgz",
- "integrity": "sha1-BF+XgtARrppoA93TgrJDkrPYkPc=",
- "dev": true
- },
- "signal-exit": {
- "version": "3.0.2",
- "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.2.tgz",
- "integrity": "sha1-tf3AjxKH6hF4Yo5BXiUTK3NkbG0=",
- "dev": true
- },
- "slash": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/slash/-/slash-1.0.0.tgz",
- "integrity": "sha1-xB8vbDn8FtHNF61LXYlhFK5HDVU=",
- "dev": true
- },
- "sntp": {
- "version": "1.0.9",
- "resolved": "https://registry.npmjs.org/sntp/-/sntp-1.0.9.tgz",
- "integrity": "sha1-ZUEYTMkK7qbG57NeJlkIJEPGYZg=",
- "dev": true,
- "requires": {
- "hoek": "2.16.3"
- }
- },
- "source-map": {
- "version": "0.5.7",
- "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.5.7.tgz",
- "integrity": "sha1-igOdLRAh0i0eoUyA2OpGi6LvP8w=",
- "dev": true
- },
- "source-map-support": {
- "version": "0.4.17",
- "resolved": "https://registry.npmjs.org/source-map-support/-/source-map-support-0.4.17.tgz",
- "integrity": "sha512-30c1Ch8FSjV0FwC253iftbbj0dU/OXoSg1LAEGZJUlGgjTNj6cu+DVqJWWIZJY5RXLWV4eFtR+4ouo0VIOYOTg==",
- "dev": true,
- "requires": {
- "source-map": "0.5.7"
- }
- },
- "spdx-correct": {
- "version": "1.0.2",
- "resolved": "https://registry.npmjs.org/spdx-correct/-/spdx-correct-1.0.2.tgz",
- "integrity": "sha1-SzBz2TP/UfORLwOsVRlJikFQ20A=",
- "dev": true,
- "requires": {
- "spdx-license-ids": "1.2.2"
- }
- },
- "spdx-expression-parse": {
- "version": "1.0.4",
- "resolved": "https://registry.npmjs.org/spdx-expression-parse/-/spdx-expression-parse-1.0.4.tgz",
- "integrity": "sha1-m98vIOH0DtRH++JzJmGR/O1RYmw=",
- "dev": true
- },
- "spdx-license-ids": {
- "version": "1.2.2",
- "resolved": "https://registry.npmjs.org/spdx-license-ids/-/spdx-license-ids-1.2.2.tgz",
- "integrity": "sha1-yd96NCRZSt5r0RkA1ZZpbcBrrFc=",
- "dev": true
- },
- "sshpk": {
- "version": "1.13.1",
- "resolved": "https://registry.npmjs.org/sshpk/-/sshpk-1.13.1.tgz",
- "integrity": "sha1-US322mKHFEMW3EwY/hzx2UBzm+M=",
- "dev": true,
- "requires": {
- "asn1": "0.2.3",
- "assert-plus": "1.0.0",
- "bcrypt-pbkdf": "1.0.1",
- "dashdash": "1.14.1",
- "ecc-jsbn": "0.1.1",
- "getpass": "0.1.7",
- "jsbn": "0.1.1",
- "tweetnacl": "0.14.5"
- },
- "dependencies": {
- "assert-plus": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/assert-plus/-/assert-plus-1.0.0.tgz",
- "integrity": "sha1-8S4PPF13sLHN2RRpQuTpbB5N1SU=",
- "dev": true
- }
- }
- },
- "stdout-stream": {
- "version": "1.4.0",
- "resolved": "https://registry.npmjs.org/stdout-stream/-/stdout-stream-1.4.0.tgz",
- "integrity": "sha1-osfIWH5U2UJ+qe2zrD8s1SLfN4s=",
- "dev": true,
- "requires": {
- "readable-stream": "2.3.3"
- }
- },
- "string-width": {
- "version": "1.0.2",
- "resolved": "https://registry.npmjs.org/string-width/-/string-width-1.0.2.tgz",
- "integrity": "sha1-EYvfW4zcUaKn5w0hHgfisLmxB9M=",
- "dev": true,
- "requires": {
- "code-point-at": "1.1.0",
- "is-fullwidth-code-point": "1.0.0",
- "strip-ansi": "3.0.1"
- }
- },
- "string_decoder": {
- "version": "1.0.3",
- "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.0.3.tgz",
- "integrity": "sha512-4AH6Z5fzNNBcH+6XDMfA/BTt87skxqJlO0lAh3Dker5zThcAxG6mKz+iGu308UKoPPQ8Dcqx/4JhujzltRa+hQ==",
- "dev": true,
- "requires": {
- "safe-buffer": "5.1.1"
- }
- },
- "stringstream": {
- "version": "0.0.5",
- "resolved": "https://registry.npmjs.org/stringstream/-/stringstream-0.0.5.tgz",
- "integrity": "sha1-TkhM1N5aC7vuGORjB3EKioFiGHg=",
- "dev": true
- },
- "strip-ansi": {
- "version": "3.0.1",
- "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-3.0.1.tgz",
- "integrity": "sha1-ajhfuIU9lS1f8F0Oiq+UJ43GPc8=",
- "dev": true,
- "requires": {
- "ansi-regex": "2.1.1"
- }
- },
- "strip-bom": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/strip-bom/-/strip-bom-2.0.0.tgz",
- "integrity": "sha1-YhmoVhZSBJHzV4i9vxRHqZx+aw4=",
- "dev": true,
- "requires": {
- "is-utf8": "0.2.1"
- }
- },
- "strip-indent": {
- "version": "1.0.1",
- "resolved": "https://registry.npmjs.org/strip-indent/-/strip-indent-1.0.1.tgz",
- "integrity": "sha1-DHlipq3vp7vUrDZkYKY4VSrhoKI=",
- "dev": true,
- "requires": {
- "get-stdin": "4.0.1"
- }
- },
- "supports-color": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-2.0.0.tgz",
- "integrity": "sha1-U10EXOa2Nj+kARcIRimZXp3zJMc=",
- "dev": true
- },
- "tar": {
- "version": "2.2.1",
- "resolved": "https://registry.npmjs.org/tar/-/tar-2.2.1.tgz",
- "integrity": "sha1-jk0qJWwOIYXGsYrWlK7JaLg8sdE=",
- "dev": true,
- "requires": {
- "block-stream": "0.0.9",
- "fstream": "1.0.11",
- "inherits": "2.0.3"
- }
- },
- "to-fast-properties": {
- "version": "1.0.3",
- "resolved": "https://registry.npmjs.org/to-fast-properties/-/to-fast-properties-1.0.3.tgz",
- "integrity": "sha1-uDVx+k2MJbguIxsG46MFXeTKGkc=",
- "dev": true
- },
- "tough-cookie": {
- "version": "2.3.2",
- "resolved": "https://registry.npmjs.org/tough-cookie/-/tough-cookie-2.3.2.tgz",
- "integrity": "sha1-8IH3bkyFcg5sN6X6ztc3FQ2EByo=",
- "dev": true,
- "requires": {
- "punycode": "1.4.1"
- }
- },
- "trim-newlines": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/trim-newlines/-/trim-newlines-1.0.0.tgz",
- "integrity": "sha1-WIeWa7WCpFA6QetST301ARgVphM=",
- "dev": true
- },
- "trim-right": {
- "version": "1.0.1",
- "resolved": "https://registry.npmjs.org/trim-right/-/trim-right-1.0.1.tgz",
- "integrity": "sha1-yy4SAwZ+DI3h9hQJS5/kVwTqYAM=",
- "dev": true
- },
- "tunnel-agent": {
- "version": "0.6.0",
- "resolved": "https://registry.npmjs.org/tunnel-agent/-/tunnel-agent-0.6.0.tgz",
- "integrity": "sha1-J6XeoGs2sEoKmWZ3SykIaPD8QP0=",
- "dev": true,
- "requires": {
- "safe-buffer": "5.1.1"
- }
- },
- "tweetnacl": {
- "version": "0.14.5",
- "resolved": "https://registry.npmjs.org/tweetnacl/-/tweetnacl-0.14.5.tgz",
- "integrity": "sha1-WuaBd/GS1EViadEIr6k/+HQ/T2Q=",
- "dev": true,
- "optional": true
- },
- "util-deprecate": {
- "version": "1.0.2",
- "resolved": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz",
- "integrity": "sha1-RQ1Nyfpw3nMnYvvS1KKJgUGaDM8=",
- "dev": true
- },
- "util.promisify": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/util.promisify/-/util.promisify-1.0.0.tgz",
- "integrity": "sha512-i+6qA2MPhvoKLuxnJNpXAGhg7HphQOSUq2LKMZD0m15EiskXUkMvKdF4Uui0WYeCUGea+o2cw/ZuwehtfsrNkA==",
- "dev": true,
- "requires": {
- "define-properties": "1.1.2",
- "object.getownpropertydescriptors": "2.0.3"
- }
- },
- "uuid": {
- "version": "3.1.0",
- "resolved": "https://registry.npmjs.org/uuid/-/uuid-3.1.0.tgz",
- "integrity": "sha512-DIWtzUkw04M4k3bf1IcpS2tngXEL26YUD2M0tMDUpnUrz2hgzUBlD55a4FjdLGPvfHxS6uluGWvaVEqgBcVa+g==",
- "dev": true
- },
- "validate-npm-package-license": {
- "version": "3.0.1",
- "resolved": "https://registry.npmjs.org/validate-npm-package-license/-/validate-npm-package-license-3.0.1.tgz",
- "integrity": "sha1-KAS6vnEq0zeUWaz74kdGqywwP7w=",
- "dev": true,
- "requires": {
- "spdx-correct": "1.0.2",
- "spdx-expression-parse": "1.0.4"
- }
- },
- "verror": {
- "version": "1.10.0",
- "resolved": "https://registry.npmjs.org/verror/-/verror-1.10.0.tgz",
- "integrity": "sha1-OhBcoXBTr1XW4nDB+CiGguGNpAA=",
- "dev": true,
- "requires": {
- "assert-plus": "1.0.0",
- "core-util-is": "1.0.2",
- "extsprintf": "1.3.0"
- },
- "dependencies": {
- "assert-plus": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/assert-plus/-/assert-plus-1.0.0.tgz",
- "integrity": "sha1-8S4PPF13sLHN2RRpQuTpbB5N1SU=",
- "dev": true
- }
- }
- },
- "which": {
- "version": "1.3.0",
- "resolved": "https://registry.npmjs.org/which/-/which-1.3.0.tgz",
- "integrity": "sha512-xcJpopdamTuY5duC/KnTTNBraPK54YwpenP4lzxU8H91GudWpFv38u0CKjclE1Wi2EH2EDz5LRcHcKbCIzqGyg==",
- "dev": true,
- "requires": {
- "isexe": "2.0.0"
- }
- },
- "which-module": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/which-module/-/which-module-1.0.0.tgz",
- "integrity": "sha1-u6Y8qGGUiZT/MHc2CJ47lgJsKk8=",
- "dev": true
- },
- "wide-align": {
- "version": "1.1.2",
- "resolved": "https://registry.npmjs.org/wide-align/-/wide-align-1.1.2.tgz",
- "integrity": "sha512-ijDLlyQ7s6x1JgCLur53osjm/UXUYD9+0PbYKrBsYisYXzCxN+HC3mYDNy/dWdmf3AwqwU3CXwDCvsNgGK1S0w==",
- "dev": true,
- "requires": {
- "string-width": "1.0.2"
- }
- },
- "wrap-ansi": {
- "version": "2.1.0",
- "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-2.1.0.tgz",
- "integrity": "sha1-2Pw9KE3QV5T+hJc8rs3Rz4JP3YU=",
- "dev": true,
- "requires": {
- "string-width": "1.0.2",
- "strip-ansi": "3.0.1"
- }
- },
- "wrappy": {
- "version": "1.0.2",
- "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz",
- "integrity": "sha1-tSQ9jz7BqjXxNkYFvA0QNuMKtp8=",
- "dev": true
- },
- "y18n": {
- "version": "3.2.1",
- "resolved": "https://registry.npmjs.org/y18n/-/y18n-3.2.1.tgz",
- "integrity": "sha1-bRX7qITAhnnA136I53WegR4H+kE=",
- "dev": true
- },
- "yallist": {
- "version": "2.1.2",
- "resolved": "https://registry.npmjs.org/yallist/-/yallist-2.1.2.tgz",
- "integrity": "sha1-HBH5IY8HYImkfdUS+TxmmaaoHVI=",
- "dev": true
- },
- "yargs": {
- "version": "7.1.0",
- "resolved": "https://registry.npmjs.org/yargs/-/yargs-7.1.0.tgz",
- "integrity": "sha1-a6MY6xaWFyf10oT46gA+jWFU0Mg=",
- "dev": true,
- "requires": {
- "camelcase": "3.0.0",
- "cliui": "3.2.0",
- "decamelize": "1.2.0",
- "get-caller-file": "1.0.2",
- "os-locale": "1.4.0",
- "read-pkg-up": "1.0.1",
- "require-directory": "2.1.1",
- "require-main-filename": "1.0.1",
- "set-blocking": "2.0.0",
- "string-width": "1.0.2",
- "which-module": "1.0.0",
- "y18n": "3.2.1",
- "yargs-parser": "5.0.0"
- }
- },
- "yargs-parser": {
- "version": "5.0.0",
- "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-5.0.0.tgz",
- "integrity": "sha1-J17PDX/+Bcd+ZOfIbkzZS/DhIoo=",
- "dev": true,
- "requires": {
- "camelcase": "3.0.0"
- }
- }
- }
-}
diff --git a/html_orig/package.json b/html_orig/package.json
deleted file mode 100644
index 0d2916a..0000000
--- a/html_orig/package.json
+++ /dev/null
@@ -1,14 +0,0 @@
-{
- "name": "html_orig",
- "version": "1.0.0",
- "description": "ESPTerm HTML",
- "license": "UNLICENSED",
- "devDependencies": {
- "babel-minify": "^0.2.0",
- "node-sass": "^4.5.3"
- },
- "scripts": {
- "minify": "babel-minify $@",
- "sass": "node-sass $@"
- }
-}
diff --git a/html_orig/packcss.sh b/html_orig/packcss.sh
deleted file mode 100755
index c166465..0000000
--- a/html_orig/packcss.sh
+++ /dev/null
@@ -1,5 +0,0 @@
-#!/bin/bash
-
-echo "Building css..."
-
-npm run sass -- --output-style compressed sass/app.scss > css/app.css
diff --git a/html_orig/packjs.sh b/html_orig/packjs.sh
deleted file mode 100755
index 737eb63..0000000
--- a/html_orig/packjs.sh
+++ /dev/null
@@ -1,15 +0,0 @@
-#!/bin/bash
-
-echo "Packing js..."
-
-cat jssrc/chibi.js \
- jssrc/keymaster.js \
- jssrc/utils.js \
- jssrc/modal.js \
- jssrc/notif.js \
- jssrc/appcommon.js \
- jssrc/lang.js \
- jssrc/wifi.js \
- jssrc/term_* \
- jssrc/term.js \
- jssrc/soft_keyboard.js | npm run --silent minify > js/app.js
diff --git a/html_orig/pages/_cfg_menu.php b/html_orig/pages/_cfg_menu.php
deleted file mode 100644
index db01711..0000000
--- a/html_orig/pages/_cfg_menu.php
+++ /dev/null
@@ -1,20 +0,0 @@
-
-
-
diff --git a/html_orig/pages/_head.php b/html_orig/pages/_head.php
deleted file mode 100644
index 37e5862..0000000
--- a/html_orig/pages/_head.php
+++ /dev/null
@@ -1,36 +0,0 @@
-
-
-
-
-
-
- = $_GET['PAGE_TITLE'] ?>
-
-
-
-
-
-
-
-
-
-
-
-
= tr('menu.' . $_GET['page']) ?>
-
-
- = tr('form_errors') ?>
-
-
-
diff --git a/html_orig/pages/_tail.php b/html_orig/pages/_tail.php
deleted file mode 100644
index a450375..0000000
--- a/html_orig/pages/_tail.php
+++ /dev/null
@@ -1,13 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/html_orig/pages/about.php b/html_orig/pages/about.php
deleted file mode 100644
index a40f181..0000000
--- a/html_orig/pages/about.php
+++ /dev/null
@@ -1,69 +0,0 @@
-
-
-
-
Version
-
-
- ESPTerm
- v%vers_fw%, built %date% at %time%
-
-
- libesphttpd
- v%vers_httpd%
-
-
- ESP IoT SDK
- v%vers_sdk%
-
-
-
-
-
-
Issues
-
- Please report any issues to the bugtracker or send them by e-mail (see above).
-
-
- Firmware updates can be downloaded from the releases page and flashed
- with esptool.py .
-
-
-
-
-
Contributing
-
- You're welcome to submit your improvements and ideas to our GitHub repository !
-
-
-
- If you'd like to donate, please try PayPal or
- LiberaPay .
-
-
-
-
-
Thanks
-
- The webserver is based on a fork of the
- esphttpd library by Jeroen Domburg (Sprite_tm).
-
-
- Using (modified) JS library chibi.js by
- Kyle Barrow as a lightweight jQuery alternative.
-
-
diff --git a/html_orig/pages/cfg_network.php b/html_orig/pages/cfg_network.php
deleted file mode 100644
index 21fefc1..0000000
--- a/html_orig/pages/cfg_network.php
+++ /dev/null
@@ -1,98 +0,0 @@
-
-
-
-
-
-
-
-
= tr('net.details') ?>
-
-
- = tr('net.sta_mac') ?>
-
-
- = tr('net.ap_mac') ?>
-
-
-
-
diff --git a/html_orig/pages/cfg_system.php b/html_orig/pages/cfg_system.php
deleted file mode 100644
index d0287a3..0000000
--- a/html_orig/pages/cfg_system.php
+++ /dev/null
@@ -1,90 +0,0 @@
-
-
= tr('system.save_restore') ?>
-
-
- = tr('system.explain_persist') ?>
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/html_orig/pages/cfg_term.php b/html_orig/pages/cfg_term.php
deleted file mode 100644
index 5f38f25..0000000
--- a/html_orig/pages/cfg_term.php
+++ /dev/null
@@ -1,203 +0,0 @@
-
-
-
-
-
-
-
diff --git a/html_orig/pages/cfg_wifi.php b/html_orig/pages/cfg_wifi.php
deleted file mode 100644
index 804f383..0000000
--- a/html_orig/pages/cfg_wifi.php
+++ /dev/null
@@ -1,123 +0,0 @@
-
-
-
-
-
diff --git a/html_orig/pages/cfg_wifi_conn.php b/html_orig/pages/cfg_wifi_conn.php
deleted file mode 100755
index 6474b4a..0000000
--- a/html_orig/pages/cfg_wifi_conn.php
+++ /dev/null
@@ -1,89 +0,0 @@
-= tr('menu.cfg_wifi_conn') ?>
-
-
-
-
-
= tr('wifi.conn.explain_android_sucks') ?>
-
= tr('wifi.conn.explain_reset') ?>
-
-
-
diff --git a/html_orig/pages/help.php b/html_orig/pages/help.php
deleted file mode 100644
index 575d4d5..0000000
--- a/html_orig/pages/help.php
+++ /dev/null
@@ -1,20 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/html_orig/pages/help/charsets.php b/html_orig/pages/help/charsets.php
deleted file mode 100644
index c21b1dc..0000000
--- a/html_orig/pages/help/charsets.php
+++ /dev/null
@@ -1,80 +0,0 @@
-
-
Alternate Character Sets
-
-
-
- ESPTerm implements Alternate Character Sets as a way to print box drawing characters
- and special symbols. A character set can change what each received ASCII character
- is printed as on the screen (eg. "{" is "π" in codepage `0`). The implementation is based
- on the original VT devices.
-
-
-
- Since ESPTerm also supports UTF-8, this feature is the most useful for applications
- which can't print UTF-8 or already use alternate character sets for historical reasons.
-
-
-
Supported codepages
-
-
- `B` - US ASCII (default)
- `A` - UK ASCII: # replaced with £
- `0` - Symbols and basic line drawing (standard DEC alternate character set)
- `1` - Symbols and advanced line drawing (based on DOS codepage 437, ESPTerm specific)
-
-
-
- All codepages use codes 32-127, 32 being space. A character with no entry in the active codepage
- stays unchanged.
-
-
- $cp) {
- echo "
Codepage `$name` \n";
- echo '
';
- foreach($cp as $point) {
- $dis = $point[1]==$point[2]?' class="none"' : '';
- echo "
$point[0] $point[1] $point[2]
";
- }
- echo '
';
- }
- ?>
-
-
Switching commands
-
-
- There are two character set slots, G0 and G1.
- Those slots are selected as active using ASCII codes Shift In and Shift Out (those originally served for shifting
- a red-black typewriter tape). Often only G0 is used for simplicity.
-
-
-
- Each slot (G0 and G1) can have a different codepage assigned. G0 and G1 and the active slot number are
- saved and restored with the cursor and cleared with a screen reset (\ec
).
-
-
-
The following commands are used:
-
-
- Code Meaning
-
-
- `\e(x `
- Set G0 = codepage x
-
-
- `\e)x `
- Set G1 = codepage x
-
-
- _SO_ (14)
- Activate G0
-
-
- _SI_ (15)
- Activate G1
-
-
-
-
diff --git a/html_orig/pages/help/cmd_cursor.php b/html_orig/pages/help/cmd_cursor.php
deleted file mode 100644
index 4dd0d13..0000000
--- a/html_orig/pages/help/cmd_cursor.php
+++ /dev/null
@@ -1,199 +0,0 @@
-
-
Commands: Cursor Functions
-
-
-
- The coordinates are 1-based, origin is top left. The cursor can move within the entire screen,
- or in the active Scrolling Region if Origin Mode is enabled.
-
-
-
After writing a character, the cursor advances to the right. If it has reached the end of the row,
- it stays on the same line, but writing the next character makes it jump to the start of the next
- line first, scrolling up if needed. If Auto-wrap mode is disabled, the cursor never wraps or scrolls
- the screen.
-
-
-
- *Legend:*
- Italic letters such as _n_ are ASCII numbers that serve as arguments, separated with a semicolon.
- If an argument is left out, it's treated as 0 or 1, depending on what makes sense for the command.
-
-
-
Movement
-
-
- Code Meaning
-
-
-
-
- \e[n A \\
- \e[n B \\
- \e[n C \\
- \e[n D
-
-
- Move cursor up (`A`), down (`B`), right (`C`), left (`D`)
-
-
-
-
- \e[n F \\
- \e[n E
-
-
- Go _n_ lines up (`F`) or down (`E`), start of line
-
-
-
-
- \e[r d \\
- \e[c G \\
- \e[r ;c H
-
-
-
- Go to absolute position - row (`d`), column (`G`), or both (`H`). Use `\e[H` to go to 1,1.
-
-
-
-
- `\e[6n`
-
-
- Query cursor position. Sent back as `\e[r ;c R`.
-
-
-
-
-
-
Save / restore
-
-
- Code Meaning
-
-
-
-
- \e[s \\
- \e[u
-
-
- Save (`s`) or restore (`u`) cursor position
-
-
-
-
- \e7 \\
- \e8
-
-
- Save (`7`) or restore (`8`) cursor position and attributes
-
-
-
-
-
Scrolling Region
-
-
- Code Meaning
-
-
-
- `\e[a ;b r`
-
-
- Set scrolling region to rows _a_ through _b_ and go to 1,1. By default, the
- scrolling region spans the entire screen height. The cursor can leave the region using
- absolute position commands, unless Origin Mode (see below) is active.
-
-
-
-
-
- \e[?6h \\
- \e[?6l
-
-
-
- Enable (`h`) or disable (`l`) Origin Mode and go to 1,1. In Origin Mode, all coordinates
- are relative to the Scrolling Region and the cursor can't leave the region.
-
-
-
-
-
- \e[n S \\
- \e[n T
-
-
-
- Move contents of the Scrolling Region up (`S`) or down (`T`), pad with empty
- lines of the current background color. This is similar to what happens when AutoWrap
- is enabled and some text is printed at the very end of the screen.
-
-
-
-
-
-
Tab stops
-
-
- Code Meaning
-
-
-
- `\eH`
-
-
- Set tab stop at the current column. There are, by default, tabs every 8 columns.
-
-
-
-
-
- \e[n I \\
- \e[n Z
-
-
- Advance (`I`) or go back (`Z`) _n_ tab stops or end/start of line. ASCII _TAB_ (9) is equivalent to \e[1I
-
-
-
-
- \e[0g \\
- \e[3g \\
-
-
- Clear tab stop at the current column (`0`), or all columns (`3`).
-
-
-
-
-
Other options
-
-
- Code Meaning
-
-
-
-
- \e[?7h \\
- \e[?7l
-
-
- Enable (`h`) or disable (`l`) cursor auto-wrap and screen auto-scroll
-
-
-
-
- \e[?25h \\
- \e[?25l
-
-
- Show (`h`) or hide (`l`) the cursor
-
-
-
-
-
diff --git a/html_orig/pages/help/cmd_screen.php b/html_orig/pages/help/cmd_screen.php
deleted file mode 100644
index 948b8a8..0000000
--- a/html_orig/pages/help/cmd_screen.php
+++ /dev/null
@@ -1,63 +0,0 @@
-
-
Commands: Screen Functions
-
-
-
- Legend:
- Italic letters such as _n_ are ASCII numbers that serve as arguments, separated with a semicolon.
- If an argument is left out, it's treated as 0 or 1, depending on what makes sense for the command.
-
-
-
- Code Meaning
-
-
-
- `\e[m J`
-
-
- Clear part of screen. _m_: 0 - from cursor, 1 - to cursor, 2 - all
-
-
-
-
- `\e[m K`
-
-
- Erase part of line. _m_: 0 - from cursor, 1 - to cursor, 2 - all
-
-
-
-
- `\e[n X`
-
- Erase _n_ characters in line.
-
-
-
-
-
- \e[n L \\
- \e[n M
-
-
-
- Insert (`L`) or delete (`M`) _n_ lines. Following lines are pulled up or pushed down.
-
-
-
-
-
- \e[n @ \\
- \e[n P
-
-
-
- Insert (`@`) or delete (`P`) _n_ characters. The rest of the line is pulled left or pushed right.
- Characters going past the end of line are lost.
-
-
-
-
-
-
diff --git a/html_orig/pages/help/cmd_system.php b/html_orig/pages/help/cmd_system.php
deleted file mode 100644
index d8956fc..0000000
--- a/html_orig/pages/help/cmd_system.php
+++ /dev/null
@@ -1,103 +0,0 @@
-
-
Commands: System Functions
-
-
-
- It's possible to dynamically change the screen title text and action button labels.
- Setting an empty label to a button makes it look disabled. The buttons send ASCII 1-5 when clicked.
- Those changes are not retained after restart.
-
-
-
- Code Meaning
-
-
- `\ec`
-
- Clear screen, reset attributes and cursor.
- The screen size, title and button labels remain unchanged.
-
-
-
- `\e[5n`
-
- Query device status, ESPTerm replies with `\e[0n` "device is OK".
- Can be used to check if the terminal has booted up and is ready to receive commands.
-
-
-
- _CAN_ (24)
-
- This ASCII code is not a command, but is sent by ESPTerm when it becomes ready to receive commands.
- When this code is received on the UART, it means ESPTerm has restarted and is ready. Use this to detect
- spontaneous restarts which require a full screen repaint.
-
-
-
- `\e]0;t \a`
- Set screen title to _t_ (this is a standard OSC command)
-
-
-
-
- \e]80+n ;t \a
-
-
-
- Set label for button _n_ = 1-5 (code 81-85) to _t_ - e.g.`\e]81;Yes\a`
- sets the first button text to "Yes".
-
-
-
-
-
- \e]90+n ;m \a
-
-
-
- Set message for button _n_ = 1-5 (code 81-85) to _m_ - e.g.`\e]94;iv\a`
- sets the 3rd button to send string "iv" when pressed.
-
-
-
-
-
- \e[?800h \\
- \e[?800l
-
-
-
- Show (`h`) or hide (`l`) action buttons (the blue buttons under the screen).
-
-
-
-
-
- \e[?801h \\
- \e[?801l
-
-
-
- Show (`h`) or hide (`l`) menu/help links under the screen.
-
-
-
-
-
- \e[12h \\
- \e[12l
-
-
-
- Enable (`h`) or disable (`l`) Send-Receive Mode (SRM).
- SRM is the opposite of Local Echo, meaning `\e[12h` disables and `\e[12l` enables Local Echo.
-
-
-
- `\e[8;r ;c t`
- Set screen size to _r_ rows and _c_ columns (this is a command borrowed from Xterm)
-
-
-
-
-
diff --git a/html_orig/pages/help/input.php b/html_orig/pages/help/input.php
deleted file mode 100644
index d4fcdd4..0000000
--- a/html_orig/pages/help/input.php
+++ /dev/null
@@ -1,254 +0,0 @@
-
-
-
User Input: Keyboard, Mouse
-
-
-
Keyboard
-
-
- The user can input text using their keyboard, or on Android, using the on-screen keyboard which is open using
- a button beneath the screen. Supported are all printable characters, as well as many control keys, such as arrows, _Ctrl+letters_
- and function keys. Sequences sent by function keys are based on VT102 and Xterm.
-
-
-
- The codes sent by _Home_, _End_, _F1-F4_ and cursor keys are affected by various keyboard modes (_Application Cursor Keys_,
- _Application Numpad Mode_, _SS3 Fn Keys Mode_). Some can be set in the Terminal Settings ,
- others via commands.
-
-
-
- Here are some examples of control key codes:
-
-
-
- Key Code Key Code
-
- Up
- `\e[A`,~`\eOA`
- F1
- `\eOP`,~`\e[11\~`
-
-
- Down
- `\e[B`,~`\eOB`
- F2
- `\eOQ`,~`\e[12\~`
-
-
- Right
- `\e[C`,~`\eOC`
- F3
- `\eOR`,~`\e[13\~`
-
-
- Left
- `\e[D`,~`\eOD`
- F4
- `\eOS`,~`\e[14\~`
-
-
- Home
- `\eOH`,~`\e[H`,~`\e[1\~`
- F5
- `\e[15~`
-
-
- End
- `\eOF`,~`\e[F`,~`\e[4\~`
- F6
- `\e[17\~`
-
-
- Insert
- `\e[2\~`
- F7
- `\e[18\~`
-
-
- Delete
- `\e[3\~`
- F8
- `\e[19\~`
-
-
- Page Up
- `\e[5\~`
- F9
- `\e[20\~`
-
-
- Page Down
- `\e[6\~`
- F10
- `\e[21\~`
-
-
- Enter
- `\r` (13)
- F11
- `\e[23\~`
-
-
- Ctrl+Enter
- `\n` (10)
- F12
- `\e[24\~`
-
-
- Tab
- `\t` (9)
- ESC
- `\e` (27)
-
-
- Backspace
- `\b` (8)
- Ctrl+A..Z
- ASCII 1-26
-
-
-
-
Action buttons
-
-
- The blue buttons under the screen send ASCII codes 1, 2, 3, 4, 5, which incidentally
- correspond to _Ctrl+A,B,C,D,E_. This choice was made to make button press parsing as simple as possible.
-
-
-
Mouse
-
-
- ESPTerm implements standard mouse tracking modes based on Xterm. Mouse tracking can be used to implement
- powerful user interactions such as on-screen buttons, draggable sliders or dials, menus etc. ESPTerm's
- mouse tracking was tested using VTTest and should be compatible with all terminal applications
- that request mouse tracking.
-
-
-
- Mouse can be tracked in different ways; some are easier to parse, others more powerful. The coordinates
- can also be encoded in different ways. All mouse tracking options are set using option commands:
- `CSI ? _n_ h` to enable, `CSI ? _n_ l` to disable option _n_.
-
-
-
Mouse Tracking Modes
-
-
- All tracking modes produce three numbers which are then encoded and send to the application.
- First is the _event number_ N, then the _X and Y coordinates_, 1-based.
-
-
-
- Mouse buttons are numbered: 1=left, 2=middle, 3=right.
- Wheel works as two buttons (4 and 5) which generate only press events (no release).
-
-
-
-
-
Mouse Report Encoding
-
-
- The following encoding schemes can be used with any of the tracking modes (except Focus tracking, which is not affected).
-
-
-
-
-
diff --git a/html_orig/pages/help/nomenclature.php b/html_orig/pages/help/nomenclature.php
deleted file mode 100644
index d5020a0..0000000
--- a/html_orig/pages/help/nomenclature.php
+++ /dev/null
@@ -1,84 +0,0 @@
-
-
Basic Intro & Nomenclature
-
-
-
-
-
- ESPTerm emulates VT102 (pictured) with some additions from later VT models and Xterm.
- All commonly used attributes and commands are supported.
- ESPTerm is capable of displaying ncurses applications such as _Midnight Commander_ using _agetty_.
-
-
-
- ESPTerm accepts UTF-8 characters received on the communication UART and displays them on the screen,
- interpreting some codes as Control Characters. Those are e.g. _Carriage Return_ (13), _Line Feed_ (10),
- _Tab_ (9), _Backspace_ (8) and _Bell_ (7).
-
-
-
- Escape sequences start with the control character _ESC_ (27),
- followed by any number of ASCII characters forming the body of the command.
-
-
-
Nomenclature & Command Types
-
-
- Examples on this help page use the following symbols for special characters and command types:\\
- (spaces are for clarity only, _DO NOT_ include them in the commands!)
-
-
-
-
-
There are also some other commands that don't follow the CSI, SGR or OSC pattern, such as `\e7` or
- `\e#8`. A list of the most important escape sequences is presented in the following sections.
-
-
diff --git a/html_orig/pages/help/screen_behavior.php b/html_orig/pages/help/screen_behavior.php
deleted file mode 100644
index 68e3641..0000000
--- a/html_orig/pages/help/screen_behavior.php
+++ /dev/null
@@ -1,17 +0,0 @@
-
-
Screen Behavior & Refreshing
-
-
-
- The initial screen size, title text and button labels can be configured in Terminal Settings .
-
-
-
- Screen updates are sent to the browser through a WebSocket after some time of inactivity on the communication UART
- (called "Redraw Delay"). After an update is sent, at least a time of "Redraw Cooldown" must elapse before the next
- update can be sent. Those delays are used is to avoid burdening the server with tiny updates during a large screen
- repaint. If you experience issues (broken image due to dropped bytes), try adjusting those config options. It may also
- be useful to try different baud rates.
-
-
-
diff --git a/html_orig/pages/help/sgr_colors.php b/html_orig/pages/help/sgr_colors.php
deleted file mode 100644
index 85a1047..0000000
--- a/html_orig/pages/help/sgr_colors.php
+++ /dev/null
@@ -1,65 +0,0 @@
-
-
-
Commands: Color SGR
-
-
-
- Colors are set using SGR commands (like `\e[10;20;30m`). The following tables list the SGR codes to use.
- Selected colors are used for any new text entered, as well as for empty space when using line and screen clearing commands.
- The configured default colors can be restored using SGR 39 for foreground and SGR 49 for background.
-
-
-
- The actual color representation depends on a color theme which
- can be selected in Terminal Settings .
-
-
-
Foreground colors
-
-
- 30
- 31
- 32
- 33
- 34
- 35
- 36
- 37
-
-
-
- 90
- 91
- 92
- 93
- 94
- 95
- 96
- 97
-
-
-
Background colors
-
-
- 40
- 41
- 42
- 43
- 44
- 45
- 46
- 47
-
-
-
- 100
- 101
- 102
- 103
- 104
- 105
- 106
- 107
-
-
-
diff --git a/html_orig/pages/help/sgr_styles.php b/html_orig/pages/help/sgr_styles.php
deleted file mode 100644
index a1e5237..0000000
--- a/html_orig/pages/help/sgr_styles.php
+++ /dev/null
@@ -1,26 +0,0 @@
-
-
Commands: Style SGR
-
-
-
- All text attributes are set using SGR commands like `\e[10;20;30m`, with up to 10 numbers separated by semicolons.
- To restore all attributes to their default states, use SGR 0: `\e[0m` or `\e[m`.
-
-
-
Those are the supported text attributes SGR codes:
-
-
- Style Enable Disable
-
- Bold 1 21, 22
- Faint 2 22
- Italic 3 23
- Underlined 4 24
- Blink 5 25
- Inverse 7 27
- Striked 9 29
- 𝔉𝔯𝔞𝔨𝔱𝔲𝔯 20 23
-
-
-
-
diff --git a/html_orig/pages/help/troubleshooting.php b/html_orig/pages/help/troubleshooting.php
deleted file mode 100644
index 49173d5..0000000
--- a/html_orig/pages/help/troubleshooting.php
+++ /dev/null
@@ -1,33 +0,0 @@
-
-
Tips & Troubleshooting
-
-
-
- *Communication UART (Rx, Tx)* can be configured in the System Settings .
-
- *Boot log and debug messages* are available on pin *GPIO2* (P2) at 115200\,baud, 1 stop bit, no parity.
- Those messages may be disabled through compile flags.
-
- *Loopback test*: Connect the Rx and Tx pins with a piece of wire. Anything you type in the browser should
- appear on the screen. Set _Parser Timeout = 0_ in Terminal Settings
- to be able to manually enter escape sequences.
-
- There is very little RAM available to the webserver, and it can support at most 4 connections at the same time.
- Each terminal session (open window with the terminal screen) uses one persistent connection for screen updates.
- *Avoid leaving unused windows open*, or either the RAM or connections may be exhausted.
-
- *For best performance*, use the module in Client mode (connected to external network) and minimize the number
- of simultaneous connections. Enabling AP consumes extra RAM because the DHCP server and Captive Portal
- DNS server are started.
-
- In AP mode, *check that the WiFi channel used is clear*; interference may cause flaky connection.
- A good mobile app to use for this is
- WiFi Analyzer (Google Play) .
- Adjust the hotspot strength and range using the _Tx Power setting_.
-
- Hold the BOOT button (GPIO0 to GND) for ~1 second to force enable AP. Hold it for ~6 seconds to restore default settings.
- (This is indicated by the blue LED rapidly flashing). Default settings can be overwritten in the
- System Settings .
-
-
-
diff --git a/html_orig/pages/term.php b/html_orig/pages/term.php
deleted file mode 100644
index d2baca1..0000000
--- a/html_orig/pages/term.php
+++ /dev/null
@@ -1,82 +0,0 @@
-
-
-
-
-
-
-
-
-
- = tr('term_nav.keybd') ?> = tr('term_nav.upload') ?> = tr('term_nav.config') ?> = tr('term_nav.wifi') ?> = tr('term_nav.help') ?> = tr('term_nav.about') ?>
-
-
-
diff --git a/html_orig/sass/_fontello.scss b/html_orig/sass/_fontello.scss
deleted file mode 100644
index 1586853..0000000
--- a/html_orig/sass/_fontello.scss
+++ /dev/null
@@ -1,112 +0,0 @@
-@charset "UTF-8";
-
-/* Fontello data, processed by the unpack script. */
-
-@font-face {
- font-family: 'fontello';
- src: url('data:application/octet-stream;base64,d09GRgABAAAAAB1IAA8AAAAALzgAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAABHU1VCAAABWAAAADsAAABUIIslek9TLzIAAAGUAAAAQwAAAFZ5SGGeY21hcAAAAdgAAADcAAACmkrYBwZjdnQgAAACtAAAABQAAAAgBzn/aGZwZ20AAALIAAAFkAAAC3CKkZBZZ2FzcAAACFgAAAAIAAAACAAAABBnbHlmAAAIYAAAEYIAABpAwgwZhmhlYWQAABnkAAAAMgAAADYPKXCxaGhlYQAAGhgAAAAgAAAAJAfeBCBobXR4AAAaOAAAADIAAABMRb//8WxvY2EAABpsAAAAKAAAACg4wD2+bWF4cAAAGpQAAAAgAAAAIAGDDbpuYW1lAAAatAAAAXcAAALNzJ0dH3Bvc3QAABwsAAAAnQAAANQsTQapcHJlcAAAHMwAAAB6AAAAhuVBK7x4nGNgZGBg4GIwYLBjYHJx8wlh4MtJLMljkGJgYYAAkDwymzEnMz2RgQPGA8qxgGkOIGaDiAIAJjsFSAB4nGNgZF7DOIGBlYGBqYppDwMDQw+EZnzAYMjIBBRlYGVmwAoC0lxTGByUNf7/Z275P4chirmFIQUozAiSAwAEsAy2AHic5ZI7bgJBEETf7M/mD9bKAamlGQdOfBauQMwJCLgGdyAyuW9jaUWEZHAKNd1ENjdwr962plaanq0aoAZK8SYqCB8Ecu2kBtNL+qZXbLR+ZiqleXmNdVzHbWrTIi3TqiuOh8sF/ui4fqeC9vr9zE0vNKHSyRoeeKSn+QOG+tDc3ed/1dDe3W31lB13clqxduQgce3kdOPWyQmn1snJp4Ujp0lLR56TVo7ct1E2rqcenHwjusJRNsrY0enC98gA9dO7AWP1TwMm6l8Gukvh9GPAjHDeG/qvK2X7Og94nGNgQAMSEMjc8n8OCAMAFYwEpXicrVZpd9NGFB15SZyELCULLWphxMRpsEYmbMGACUGyYyBdnK2VoIsUO+m+8Ynf4F/zZNpz6Dd+Wu8bLySQtOdwmpOjd+fN1czbZRJaktgL65GUmy/F1NYmjew8CemGTctRfCg7eyFlisnfBVEQrZbatx2HREQiULWusEQQ+x5ZmmR86FFGy7akV03KLT3pLlvjQb1V334aOsqxO6GkZjN0aD2yJVUYVaJIpj1S0qZlqPorSSu8v8LMV81QwohOImm8GcbQSN4bZ7TKaDW24yiKbLLcKFIkmuFBFHmU1RLn5IoJDMoHzZDyyqcR5cP8iKzYo5xWsEu20/y+L3mndzk/sV9vUbbkQB/Ijuzg7HQlX4RbW2HctJPtKFQRdtd3QmzZ7FT/Zo/ymkYDtysyvdCMYKl8hRArP6HM/iFZLZxP+ZJHo1qykRNB62VO7Es+gdbjiClxzRhZ0N3RCRHU/ZIzDPaYPh788d4plgsTAngcy3pHJZwIEylhczRJ2jByYCVliyqp9a6YOOV1WsRbwn7t2tGXzmjjUHdiPFsPHVs5UcnxaFKnmUyd2knNoykNopR0JnjMrwMoP6JJXm1jNYmVR9M4ZsaERCICLdxLU0EsO7GkKQTNoxm9uRumuXYtWqTJA/Xco/f05la4udNT2g70s0Z/VqdiOtgL0+lp5C/xadrlIkXp+ukZfkziQdYCMpEtNsOUgwdv/Q7Sy9eWHIXXBtju7fMrqH3WRPCkAfsb0B5P1SkJTIWYVYhWQGKta1mWydWsFqnI1HdDmla+rNMEinIcF8e+jHH9XzMzlpgSvt+J07MjLj1z7UsI0xx8m3U9mtepxXIBcWZ5TqdZlu/rNMfyA53mWZ7X6QhLW6ejLD/UaYHlRzodY3lBC5p038GQizDkAg6QMISlA0NYXoIhLBUMYbkIQ1gWYQjLJRjC8mMYwnIZhrC8rGXV1FNJ49qZWAZsQmBijh65zEXlaiq5VEK7aFRqQ54SbpVUFM+qf2WgXjzyhjmwFkiXyJpfMc6Vj0bl+NYVLW8aO1fAsepvH472OfFS1ouFPwX/1dZUJb1izcOTq/Abhp5sJ6o2qXh0TZfPVT26/l9UVFgL9BtIhVgoyrJscGcihI86nYZqoJVDzGzMPLTrdcuan8P9NzFCFlD9+DcUGgvcg05ZSVnt4KzV19uy3DuDcjgTLEkxN/P6VvgiI7PSfpFZyp6PfB5wBYxKZdhqA60VvNknMQ+Z3iTPBHFbUTZI2tjOBIkNHPOAefOdBCZh6qoN5E7hhg34BWFuwXknXKJ6oyyH7kXs8yik/Fun4kT2qGiMwLPZG2Gv70LKb3EMJDT5pX4MVBWhqRg1FdA0Um6oBl/G2bptQsYO9CMqdsOyrOLDxxb3lZJtGYR8pIjVo6Of1l6iTqrcfmYUl++dvgXBIDUxf3vfdHGQyrtayTJHbQNTtxqVU9eaQ+NVh+rmUfW94+wTOWuabronHnpf06rbwcVcLLD2bQ7SUiYX1PVhhQ2iy8WlUOplNEnvuAcYFhjQ71CKjf+r+th8nitVhdFxJN9O1LfR52AM/A/Yf0f1A9D3Y+hyDS7P95oTn2704WyZrqIX66foNzBrrblZugbc0HQD4iFHrY64yg18pwZxeqS5HOkh4GPdFeIBwCaAxeAT3bWM5lMAo/mMOT7A58xh0GQOgy3mMNhmzhrADnMY7DKHwR5zGHzBnHWAL5nDIGQOg4g5DJ4wJwB4yhwGXzGHwdfMYfANc+4DfMscBjFzGCTMYbCv6dYwzC1e0F2gtkFVoANTT1jcw+JQU2XI/o4Xhv29Qcz+wSCm/qjp9pD6Ey8M9WeDmPqLQUz9VdOdIfU3Xhjq7wYx9Q+DmPpMvxjLZQa/jHyXCgeUXWw+5++J9w/bxUC5AAEAAf//AA94nMVYe4yc1XW/5z6/13zz+uab8e7M7O7M7sx6dz1rz87D7Nrrwa9d7LG7Xq/NrgX2llccjL3UNVglcoqMFUFAOIkUQikxdrBLhQolBJqYJqh/AIkSVYU2Mk5ppBanqkkrpFaOiqg97rnfLAZKH1H/aOdxv/s493znnnvuOb9zSZjghy+nzxObJEmeDJMxMkG2kz1kHzlMHiDHyVPkafId8kjjoUmgDCZIlnSKbOfujmQibAvhe67FORN8fkk0ZHKWijgGp8Dob8YVhZikJA1kvgvSmUx6Gh/pzCzJpDPNkydf/ONnnzn59Mmnv3XqqSefePzrXzv+yENfeuD+I/cdPvRbB/btvf2WPTfN7Zye2rJpYv3142MrRxY/5W6RGawnvEHIrYbKGJQ/WS9+og4JL9+j6yM95b7/gib5a/QnP83zf6Kp6nY82hOFqCdRgEI1WqmhCP45s2rib9I8YuJvst2iq8xW1jThXbP1+2bNxN/iwDlDt4yJxVb78XabpPVu+3n8owdyHMfKxOU97GJ/1+U9mYGBDDuVHfggmPWldtme+rPPdD3+mXq7hETQtfh7LSAyW9vhUsvRf/0OuJQdGEDzAUKuXman2EHSRaoNKxa20CAIhYnNL6SnZhsOAKHkbkKpQ2/obFjYoAvYR+6YeznjJZlIDoIXhnjCc2EYlESdVerxoi776rVyFwifnQr/eLmTcP7tQ8d3YPlP3C5IfdHudo5Aqpt2OuHXW+85dgTUsWMqZnEDkq+HnYTobyWTrX4RyHeBzbHVZAUZb4wNABN9GcoZnSCcAeOwn2jTpvuIIIwLNo8SEjqDApNZrJDm0moyn+yVogMFdanKFYqFyhqo+cksjJTHWYnmpEr6Em2gUKxWal0wjv1ZyubWHzy5c/75VVw0ZZQvvXfd6N6pAVpq3rVwW/+WaDz5YdiDoejkqiembzxxaC18RZd0+gbp8i0CZHW01Lzz0J3NUn/flsgy3/0wFY9NXje+/tAJ1LnENZ3mw+wLxCAx0knuI39C/pk82fi9939GuXvnzVQYb37/bkbEq3908p7p5oZ8xgTynRMNRmF0GZX06/dTm6mJf3iHuhuOgr3eAsMUpiH2E0kVlWo/cQk3XT5PTIOYM0SEgIAgqBoJdEZvqWKg5gmzbTZDGLNnic3s5t9f+OEbz/7hw1/ef9dtt+yaq5QHB+Ke58VjYa27SiEnPb9cE5WCC0ldY7orC+WaSngyDFL5Sd9TLuSGsY5frdFqsVBEowjsYRzqhWEoAR61Gm5AXW9EXSu7Cxv4xbPnd4GfRLNJ+gkv4NgFWcCDi+x8XeY171zRBdVmiSyQG07GBrIcKePsJDIPGGh5op+cWygGc3/NqXBp5t4Z/MFzQyuHYGB0CBaf5w1+o3TiXZw76yOikfCl4qG90grFk2t5SE5x0WuE1A5hGGKnstt0lpSNeEoqpgkBKa8XIbGNp6JGSO6QEu7YLq00XQ8ikbEdWw0xWM8yltq+XVkZVokAHzCi0XSS03U0bWL3IvWAEVDz/5YYvjKm1zFzITNE+7vw7NM5LMYGBv78cyiLG0929kmHR9fysi1XdYYMFMgpc745LIQx5KT8EBhqr7hGKSJIaRmrOgJKe4Wm5DKbCHXGHWq0/mKraYTdNS6l/Z19AHYF+inFdtgwt5pmJKRHsmYFjbA/CUU9FIqYdATH2rOKesipFNuTTJxkXJtkAxSvTTIC30UIO0N/TBIk0+gIo5VjjKNAF3AIFnDwDi/ptX2U0oYDwdFHgwsKn52JtLojQ5HWL8PhJj5PwwEsmxE66eNAOAx+0IycgYVIpBkm7OoV9EV70BeFSZ2sJ5ONDUtBMBMoOkn0R5ShY9pPmKBM7COKUK7oPPql9uED3OcZlFDOEgmymcgOxv1CIW+I9GBftVLA4yIz4Pl4DGrxSgnyOSVRxpEynpEy2qTEo4WxKhjXB2icJdHn5koUh/GQXLKMfYYVFMfHb1rx4IQZ2sSlKbJ9Kwf8zvwqCIZSsbSV9Zy3D75x8UcH5H3fv/TKF499NM2C310xUzocsutcFTqzsUSHE17b5+FALGdHZEe6f/qe1w4deu2Xulj0yxfZOEmTnkY2GuiegtY70+EBSDIRshFApLnwBgXqvlhi6F/r6FuTKHvZ11sCl1y7dTpsDeQ6Hj2Smxwvxb2hxsb8kUfvb52xMhZMha1abarvC1+G1EAu4fX2d8Ajv7q/9W0reP+/0MfZvcQjy16G4PWbX+jFkGVrw7gb2w5gxDKvmcLcS8kkFf6gSX3tXAJrqLcNwaOPtt6GpZZ1s522W7fYNpywstbNFv2b1vnW20HVgqfwCSds+2YrS3RkIVf/kU2zKiKv5WR5Y9lAbyejLIygCYLYxBcIthf+gzkmrhtNCbFkEJ2aLAQBczgwSvSFgQPUwRTdaOA866gu9IBBGPXhOT9tbzsrIrwh5dkpG0OK68OZj6te1tp2VrpyjYS7sE3Nba8I0cAOpEj7PnxeiVeCmhuMTp3FUbF4huhP6fdIL8k2OnNLIorr8I8h9aNI76U9j4vUYF+gtk8L3T5ObRED0elP20fpdPvo4DPycTscPn06/C1fV86cCX+WMFzSBIFuL7BdeM5SqNsVjVJ/1xI8WjGHsbZyKSoXDxtqGNjHyh31kh31QLmLSlT5IKaPwzUlXoMpH2u9jq4fzoizU5YX1jEd1Tz1inBlQ8BLXjfqSeq6eGVbMO5DXcmz2/AQASoy7FEHCbTO37nWaODkRQoNz3EtT+I5OYaxPoWxvk42NyZjFjqKMlDeCegrJojCJSiyH4mp4HQ3ugxQAjBAM2OWGIYzqUEDug0ZkjdU89V4sjfeEzERTIueaLDGPNpKodiTk9pD1HvQg4wUBYJY1aNHdYFIFvt9lWjH1Ofg0nt+Fs49aqnWYeWgd4CHlHX8mWcg2+1feQ/BUestLLp9usfvBsf4RcTPwB3Z5MVTvcoCR/bqOa2vPvN+66GAbK47Qd8Pat9Vxi/CtUVfqXGbAz+Af6WHN79gTs1ev4r8gPwp+R4mJo+RBxEIMVzZcaIxJiN/Tf4KdTBHtpG1ZJyMkG6yhFjajcIJeBweg0fgYbgP7oHb4VZg5O/I3xIHOSjYDlugH+cb6FcvwTvwFvwE/gxehZUwgn2g+8lE5+YXLHz/usW3P4i6RutHaQBniv8DGRSmZo9hTUPajZ3/f4qYmwt2olHFE6QYRbCoJFNyH5EGk8Y+YgAzYB+6zwMIOvHAzeCDsFm0S0ZYs63GxihHHE4Fu51QJajCYCdFm4do8xAf8xCizUPsxLWLTZ3/yzfPzV2/RHsrOA/n4Cx8F26EneSH5HXyMnmJfJs8T36H3Is6QmyN2gD8W/g6TO0wOH4UJwGBY3kcqohEa8mCBqFrQBaqnqoUZLXEtU/QzsEbAC8nc6pWLORrheJIiRZLuhsdCOJdpbGuhroyhxWEkcWC0v9yQY1DXjMt+hre1sr+iF8plgMCmdTE+IIiskWuxYJuZzXaVPgq6asSFP1iPqexcr2SLEpV1qwQkxY0gFUoAU6VKku9uq9wGk4sFqQ/ovl0oUB12cUwskrNr4pUfr1WLNGqRtcyS0dQ7nKWdzG/HOQ+fj2n3UAiC8laFblgoVdfqCXLNVwuLsuTiXxNu3fsVznlsgKKoNtFLReGqgquw68hJxTYr2cpaqdW11nVOCDsr5ZQBQHOL5aRIofSINT3dVn3a4VxSNRreS2jVnC5igphCMXRLdcwKupfGHBlCdRXCXctDIVaQeu9JhMuJEpQR8F9nWQkPYmh8dAbBz9CNBCnBsYuzqKJODoqakhMdSTnlpAcDERqjHH8IAKjmDRxiZRgOCDSmFJSJHCBKhNJAK0OFPppEWLMc+PcwNwJqDApxE3JqZAWMzgaP5MmchMm5p4MvTe4yg7zCEOumMsa+oGMGYasmGCOg6+nzpJOJoWIC2bzkI0vktzgJt9W5oJKwSBloQyCaznxlQDUUirGlcnxhdTFNnUppzRsMGTNBHAEJ8hBOIoyg5nKlxKTjwj3kA8yZy5myZYwohbFDwYcbFHmMIraQPnwINr4Hmp4zMAJet1C3wEBA55iJkMBWIi6Wh0cRyTKgHriXBlCORwbmFSKQBCH0xhOp8I1KbUMVJWUSpiO9fnfnkIwFsL5Ce02tKKFg2ceP6Alt3CHKKoaiVAQboeBmhaw1YtYE4vWz8FAbkjMhI1kyALjjwr0ChSTEol65aA3Fx9Yp4ZWq74fwL1WzFCW4kIKR5sGLs0xUSkCl8CilLmG7mcmbiuT4HILWQpclsWVUmAKQxmoJKZ1ieZgMebqYYHgHsNmmDLtzFxUAJf4RSGW/QbXu85l2EIZBEd9eDYF2UEhiRbHhMdYBHXMDWFwsFMh4eCquWO43AXL9hS6T1Q57kWMWZybQlJmBQqmESOm7RflsDAd0FuJ+o6IsPbF1MZFY5OnXNMVJqBVoqpR6XhMBA2jjQQXJcwQmBoaqEiXWpbADm6bQpsG7gGumeOBQBVIwOXhRL3vWLRCiR16zZKGQZ8DVDW1mMQu1K4rqabR9qT5iLQRNV3ToTyiAvxzgZ2iv0KPvARj2S6Nf+amt04gfUhHOzphgjLUAjGosaBF1LCOMA09BVkgAo15BmOIhj9CNnfM5DOb67nYYDpuIf7pQ9deYuM0C+JaLVkp6NwJHSm6U+VlWV3f89Q95XKVK/F29o9/zPgx7U9qh6QzfrjdzZV6UcXd5WwMbv1EY3br9cmd/fPFHam1TeitTW8q7S5tml6Z+2LO3zRz587y4ORNW5uj8XwznF69a/X0ru2bRm8ay4SbP/dL/bS33F/J8YGh1Kca63Y7Ujq7162YHPLRR3X0N792aMPgeM7DDbVSuZW9Gw4dm1tWblw3NOzFSgNwXWPFsrlFXWpMxUgPWUE2kG2NrYMD+RyeIZgI6R036EZiKTQti89jvMe4yuYxJgIigt24ycQ0ybR+EnOWmMRsNlavrCYLI9H4WDQasfX1bE+1R4xEK8FVjb7ZyQcQMh8dqbbvQhVbTFYDqDlSronFy9Li4mWpDizn4Dl93TjpiG+iNWSTrVcRbE5OdifgLYST5zDfDDCnLm/LJq/E2lBTJGvhJyP+4LlzcMnoUE9KBy763d3+xSu14AnZF3Wu+qKea135UHfR9/3ulPtNBJw6jbn6wdWL7J/YKOakeXL45ay2U8wKbUQsSxFsqAUTvQjIBaFtODA2Rm/V0ItNa8AxhxWypbPR/5/TBob5KdK5RjSTyeQz+Wg8motH/Zqlk/ksxisXtEowjq2BEaWDcI++4CoiKu8biY5E2Y9iMZnmvf7lN/1enrYGTtzy7IsG74ehfoO/+Owty1uXW5f/4NUPrKHYE15Hh/fE8tRdR40DB4yj5y5dAnI1yCuw0HcRFuLDUTJNHm48OAG2MYxmkMAAglk48IloiNqGNGy5P2JSxfWNxP6wdsHaF+zXKMlwLG0pGIPkvE5A0IPOBzhL31WQWRfZkObYWE8PZsVkbHpsurl5w7rGmp7RntHKyLLBYp/dbXd3LInHwq4UxAIrhvl+H5oD5l2+8mQdI3gOY3dwMzxOfX2/hp0aUuVclm93g47ni/1Uti/rKvVabzcPuumYPQUbhyZh+hEYmJzc6PvWjBg6evTYoJh5VMrm0R3D8xtXdlNzRm568/xf3iCxV916vnXuNiXNGZB7oRuGIPc5MVOetmMpmo7Y099Ip9OuO2MpObicVpZKZc08LkZXQirXm8JesWmabm0K7P2GmJ2lN+0UmnTvwYN7NaW2tatXL/BhzOvCZFjn/8EtULeOTBM68b+bLPrbedwnMYsezCE3VBHGFLzgLjraztdU1PNHdL4WJGseqmHxMKH2dN5WXzxU7KJlXH4gSL3YEeVsrPS13opFMNFtvYs5ayzWerO3BpU+dqSvArvgrYCwNawQGZy/cgr7vBJiOMz9jdxQotZL9/RVKuTfARBwvMoAAHicY2BkYGAA4kTBOMl4fpuvDNzML4AiDFdvTguD0f9//J/DEs/cAuRyMDCBRAFTrQ07AAB4nGNgZGBgbvk/h4GBpez/j/+/WOIZgCIoQBgArDwHBXicY37BwMCiz8DAvACII6HsFyD2/78gmukURJxZEErD5BbA+P9/sJSB9P3/DwAx8xHmAAAAAAAAASIBcgHcA4ADuAQ+BH4EvgUiBWwF0gZOClIK+AuIC/4Mvg0gAAEAAAATAfgADwAAAAAAAgBAAFAAcwAAAK0LcAAAAAB4nHWQ3WrCMBiG38yfbQrb2GCny9FQxuoPDEEQBIeebCcyPB211rZSG0mj4G3sHnYxu4ldy17bOIayljTP9+TLl68BcI1vCOTPE0fOAmeMcj7BKXqWC/TPlovkF8slVPFmuUz/brmCBwSWq7jBByuI4jmjBT4tC1yJS8snuBB3lgv0j5aL5J7lEm7Fq+UyvWe5golILVdxL74GarXVURAaWRvUZbvZ6sjpViqqKHFj6a5NqHQq+3KuEuPHsXI8tdzz2A/Wsav34X6e+DqNVCJbTnOvRn7ia9f4s131dBO0jZnLuVZLObQZcqXVwveMExqz6jYaf8/DAAorbKER8apCGEjUaOuc22iihQ5pygzJzDwrQgIXMY2LNXeE2UrKuM8xZ5TQ+syIyQ48fpdHfkwKuD9mFX20ehhPSLszosxL9uWwu8OsESnJMt3Mzn57T7HhaW1aw127LnXWlcTwoIbkfezWFjQevZPdiqHtosH3n//7AeZuhFEAeJxtylsOgjAQRuH+yB284jZc1AADNJQOaUuIrl4TffR7PDkqUl+l+q9BhANiJEiRIUeBEhVqHHHCGRdccUODu8pnfrZCrk+olS1kjn0Qx0UndtDj5jiSOZ7YrGkvlgLHLXVz/bn0ix9+IWPSjmzHpvq1YTMmWckHziyHXdycjjpMW5ut7Lz2Ie9lt0aoj3c96DywW7Qlo9QbVzAzAwAAAHicY/DewXAiKGIjI2Nf5AbGnRwMHAzJBRsZWJ02MTAyaIEYm7mYGDkgLD4GMIvNaRfTAaA0J5DN7rSLwQHCZmZw2ajC2BEYscGhI2Ijc4rLRjUQbxdHAwMji0NHckgESEkkEGzmYWLk0drB+L91A0vvRiYGFwAMdiP0AAA=') format('woff');
-}
-
-
-%fontello-icon-base {
-&::before {
- font-family: "fontello";
- font-style: normal;
- font-weight: normal;
- speak: none;
-
- display: inline-block;
- text-decoration: inherit;
- width: 1em;
- margin-right: .2em;
- text-align: center;
- /* opacity: .8; */
-
- /* For safety - reset parent styles, that can break glyph codes*/
- font-variant: normal;
- text-transform: none;
-
- /* fix buttons height, for twitter bootstrap */
- line-height: 1em;
-
- /* Animation center compensation - margins should be symmetric */
- /* remove if not needed */
- margin-left: .2em;
-
- /* you can be more comfortable with increased icons size */
- /* font-size: 120%; */
-
- /* Font smoothing. That was taken from TWBS */
- -webkit-font-smoothing: antialiased;
- -moz-osx-font-smoothing: grayscale;
-
- /* Uncomment for 3D effect */
- /* text-shadow: 1px 1px 1px rgba(127, 127, 127, 0.3); */
-}
-}
-
-
-/* Fontello icon codes */
-$icon-codes: (
-
-
- keyboard: '\2328',
- about: '\2605',
- restore: '\267c',
- configure: '\2699',
- ok: '\2714',
- help: '\2753',
- donate: '\2764',
- back: '\276e',
- resize-small: '\e800',
- cancel: '\e801',
- resize-full: '\e802',
- paste: '\f0ea',
- network: '🌍',
- github: '🐱',
- persist: '💾',
- download: '📥',
- wifi: '📶',
- terminal: '🖳',
-);
-
-/* Fontello classes */
-
-
-.icn-keyboard::before { content: '\2328'; }
-.icn-about::before { content: '\2605'; }
-.icn-restore::before { content: '\267c'; }
-.icn-configure::before { content: '\2699'; }
-.icn-ok::before { content: '\2714'; }
-.icn-help::before { content: '\2753'; }
-.icn-donate::before { content: '\2764'; }
-.icn-back::before { content: '\276e'; }
-.icn-resize-small::before { content: '\e800'; }
-.icn-cancel::before { content: '\e801'; }
-.icn-resize-full::before { content: '\e802'; }
-.icn-paste::before { content: '\f0ea'; }
-.icn-network::before { content: '🌍'; }
-.icn-github::before { content: '🐱'; }
-.icn-persist::before { content: '💾'; }
-.icn-download::before { content: '📥'; }
-.icn-wifi::before { content: '📶'; }
-.icn-terminal::before { content: '🖳'; }
-
-[class^="icn-"], [class*=" icn-"] {
- @extend %fontello-icon-base;
-}
-
-@mixin icon-base() {
- @extend %fontello-icon-base;
-}
-
-@mixin icon-content($icon-name) {
- &::before {
- content: map-get($icon-codes, $icon-name);
- }
-}
-
-@mixin icon($icon-name) {
- @include icon-base();
- @include icon-content(\icon-name);
-}
diff --git a/html_orig/sass/_grid-settings.scss b/html_orig/sass/_grid-settings.scss
deleted file mode 100755
index c0e6506..0000000
--- a/html_orig/sass/_grid-settings.scss
+++ /dev/null
@@ -1,17 +0,0 @@
-
-// Customize Neat grid
-
-@import "lib/neat/neat-helpers";
-
-// optionally change gri settings
-
-// Define breakpoints
-$phone: new-breakpoint(max-width 544px);
-$tablet: new-breakpoint(min-width 545px max-width 1000px);
-$normal: new-breakpoint(min-width 1001px max-width 1376px);
-$large: new-breakpoint(min-width 1377px);
-
-$tablet-max: new-breakpoint(max-width 1000px);
-$normal-max: new-breakpoint(max-width 1376px);
-$tablet-min: new-breakpoint(min-width 545px);
-$normal-min: new-breakpoint(min-width 1001px);
diff --git a/html_orig/sass/_normalize.scss b/html_orig/sass/_normalize.scss
deleted file mode 100755
index 0b1750f..0000000
--- a/html_orig/sass/_normalize.scss
+++ /dev/null
@@ -1,439 +0,0 @@
-/* normalize.css v3.0.3 | MIT License | github.com/necolas/normalize.css */
-
-/**
- * 1. Set default font family to sans-serif.
- * 2. Prevent iOS and IE text size adjust after device orientation change,
- * without disabling user zoom.
- */
-
-*, *:before, *:after {
- box-sizing: border-box;
-}
-
-
-html {
- font-family: sans-serif; /* 1 */
- -ms-text-size-adjust: 100%; /* 2 */
- -webkit-text-size-adjust: 100%; /* 2 */
-}
-
-/**
- * Remove default margin.
- */
-
-body {
- margin: 0;
-}
-
-/* HTML5 display definitions
- ========================================================================== */
-
-/**
- * Correct `block` display not defined for any HTML5 element in IE 8/9.
- * Correct `block` display not defined for `details` or `summary` in IE 10/11
- * and Firefox.
- * Correct `block` display not defined for `main` in IE 11.
- */
-
-//article,
-//aside,
-//details,
-//figcaption,
-figure,
-//footer,
-//header,
-//hgroup,
-//main,
-//menu,
-nav
-//section,
-//summary
-{
- display: block;
-}
-
-/**
- * 1. Correct `inline-block` display not defined in IE 8/9.
- * 2. Normalize vertical alignment of `progress` in Chrome, Firefox, and Opera.
- */
-
-//audio,
-canvas,
-progress
-//video
-{
- display: inline-block; /* 1 */
- vertical-align: baseline; /* 2 */
-}
-
-/**
- * Prevent modern browsers from displaying `audio` without controls.
- * Remove excess height in iOS 5 devices.
- */
-//
-//audio:not([controls]) {
-// display: none;
-// height: 0;
-//}
-
-/**
- * Address `[hidden]` styling not present in IE 8/9/10.
- * Hide the `template` element in IE 8/9/10/11, Safari, and Firefox < 22.
- */
-
-[hidden]
-//template
-{
- display: none;
-}
-
-/* Links
- ========================================================================== */
-
-/**
- * Remove the gray background color from active links in IE 10.
- */
-
-a {
- background-color: transparent;
-}
-
-/**
- * Improve readability of focused elements when they are also in an
- * active/hover state.
- */
-
-a:active,
-a:hover {
- outline: 0;
-}
-
-/* Text-level semantics
- ========================================================================== */
-
-/**
- * Address styling not present in IE 8/9/10/11, Safari, and Chrome.
- */
-
-//abbr[title] {
-// border-bottom: 1px dotted;
-//}
-
-/**
- * Address style set to `bolder` in Firefox 4+, Safari, and Chrome.
- */
-
-b
-//strong
-{
- font-weight: bold;
-}
-
-/**
- * Address styling not present in Safari and Chrome.
- */
-//
-//dfn {
-// font-style: italic;
-//}
-
-/**
- * Address variable `h1` font-size and margin within `section` and `article`
- * contexts in Firefox 4+, Safari, and Chrome.
- */
-
-h1 {
- font-size: 2em;
- margin: 0.67em 0;
-}
-
-h2 {
- font-size: 2em;
- margin: 0.67em 0;
-}
-
-/**
- * Address styling not present in IE 8/9.
- */
-//
-//mark {
-// background: #ff0;
-// color: #000;
-//}
-
-/**
- * Address inconsistent and variable font size in all browsers.
- */
-
-small {
- font-size: 80%;
-}
-
-/**
- * Prevent `sub` and `sup` affecting `line-height` in all browsers.
- */
-
-sub,
-sup {
- font-size: 75%;
- line-height: 0;
- position: relative;
- vertical-align: baseline;
-}
-
-sup {
- top: -0.5em;
-}
-
-sub {
- bottom: -0.25em;
-}
-
-/* Embedded content
- ========================================================================== */
-
-/**
- * Remove border when inside `a` element in IE 8/9/10.
- */
-
-img {
- border: 0;
-}
-
-/**
- * Correct overflow not hidden in IE 9/10/11.
- */
-
-svg:not(:root) {
- overflow: hidden;
-}
-
-/* Grouping content
- ========================================================================== */
-
-/**
- * Address margin not present in IE 8/9 and Safari.
- */
-
-//figure {
-// margin: 1em 40px;
-//}
-
-/**
- * Address differences between Firefox and other browsers.
- */
-
-hr {
- box-sizing: content-box;
- height: 0;
-}
-
-/**
- * Contain overflow in all browsers.
- */
-
-pre {
- overflow: auto;
-}
-
-/**
- * Address odd `em`-unit font size rendering in all browsers.
- */
-
-code,
-//kbd,
-pre
-//samp
-{
- font-family: "DejaVu Sans Mono", "Inconsolata", monospace;
- font-size: 1em;
-}
-
-/* Forms
- ========================================================================== */
-
-/**
- * Known limitation: by default, Chrome and Safari on OS X allow very limited
- * styling of `select`, unless a `border` property is set.
- */
-
-/**
- * 1. Correct color not being inherited.
- * Known issue: affects color of disabled elements.
- * 2. Correct font properties not being inherited.
- * 3. Address margins set differently in Firefox 4+, Safari, and Chrome.
- */
-
-button,
-input,
-//optgroup,
-select,
-textarea {
- color: inherit; /* 1 */
- font: inherit; /* 2 */
- margin: 0; /* 3 */
-}
-
-/**
- * Address `overflow` set to `hidden` in IE 8/9/10/11.
- */
-
-button {
- overflow: visible;
-}
-
-/**
- * Address inconsistent `text-transform` inheritance for `button` and `select`.
- * All other form control elements do not inherit `text-transform` values.
- * Correct `button` style inheritance in Firefox, IE 8/9/10/11, and Opera.
- * Correct `select` style inheritance in Firefox.
- */
-
-button,
-select {
- text-transform: none;
-}
-
-/**
- * 1. Avoid the WebKit bug in Android 4.0.* where (2) destroys native `audio`
- * and `video` controls.
- * 2. Correct inability to style clickable `input` types in iOS.
- * 3. Improve usability and consistency of cursor style between image-type
- * `input` and others.
- */
-
-button,
-//html input[type="button"], /* 1 */
-input[type="reset"],
-input[type="submit"] {
- -webkit-appearance: button; /* 2 */
- cursor: pointer; /* 3 */
-}
-
-/**
- * Re-set default cursor for disabled elements.
- */
-
-button[disabled],
-html input[disabled] {
- cursor: default;
-}
-
-/**
- * Remove inner padding and border in Firefox 4+.
- */
-
-button::-moz-focus-inner,
-input::-moz-focus-inner {
- border: 0;
- padding: 0;
-}
-
-/**
- * Address Firefox 4+ setting `line-height` on `input` using `!important` in
- * the UA stylesheet.
- */
-
-input {
- line-height: normal;
-}
-
-/**
- * It's recommended that you don't attempt to style these elements.
- * Firefox's implementation doesn't respect box-sizing, padding, or width.
- *
- * 1. Address box sizing set to `content-box` in IE 8/9/10.
- * 2. Remove excess padding in IE 8/9/10.
- */
-
-input[type="checkbox"],
-input[type="radio"] {
- box-sizing: border-box; /* 1 */
- padding: 0; /* 2 */
-}
-
-/**
- * Fix the cursor style for Chrome's increment/decrement buttons. For certain
- * `font-size` values of the `input`, it causes the cursor style of the
- * decrement button to change from `default` to `text`.
- */
-
-//input[type="number"]::-webkit-inner-spin-button,
-//input[type="number"]::-webkit-outer-spin-button {
-// height: auto;
-//}
-
-/**
- * 1. Address `appearance` set to `searchfield` in Safari and Chrome.
- * 2. Address `box-sizing` set to `border-box` in Safari and Chrome.
- */
-//
-//input[type="search"] {
-// -webkit-appearance: textfield; /* 1 */
-// box-sizing: content-box; /* 2 */
-//}
-
-/**
- * Remove inner padding and search cancel button in Safari and Chrome on OS X.
- * Safari (but not Chrome) clips the cancel button when the search input has
- * padding (and `textfield` appearance).
- */
-//
-//input[type="search"]::-webkit-search-cancel-button,
-//input[type="search"]::-webkit-search-decoration {
-// -webkit-appearance: none;
-//}
-
-/**
- * Define consistent border, margin, and padding.
- */
-//
-//fieldset {
-// border: 1px solid #c0c0c0;
-// margin: 0 2px;
-// padding: 0.35em 0.625em 0.75em;
-//}
-
-/**
- * 1. Correct `color` not being inherited in IE 8/9/10/11.
- * 2. Remove padding so people aren't caught out if they zero out fieldsets.
- */
-
-legend {
- border: 0; /* 1 */
- padding: 0; /* 2 */
-}
-
-/**
- * Remove default vertical scrollbar in IE 8/9/10/11.
- */
-
-textarea {
- overflow: auto;
-}
-
-/**
- * Don't inherit the `font-weight` (applied by a rule above).
- * NOTE: the default cannot safely be changed in Chrome and Safari on OS X.
- */
-//
-//optgroup {
-// font-weight: bold;
-//}
-
-/* Tables
- ========================================================================== */
-
-/**
- * Remove most spacing between table cells.
- */
-
-table {
- border-collapse: collapse;
- border-spacing: 0;
-}
-
-td,
-th {
- padding: 0;
-}
diff --git a/html_orig/sass/_utils.scss b/html_orig/sass/_utils.scss
deleted file mode 100755
index 7c7301a..0000000
--- a/html_orig/sass/_utils.scss
+++ /dev/null
@@ -1,55 +0,0 @@
-// Add a highlight for debugging
-@mixin highlight($color) {
- outline: 1px solid $color;
- background: rgba($color, .05);
- box-shadow: 0 0 2px 2px rgba($color, .2), inset 0 0 2px 2px rgba($color, .2);
-}
-
-// Ellipsis, but for block elements
-@mixin block-ellipsis($width: 100%) {
- display: block;
- max-width: $width;
- overflow: hidden;
- text-overflow: ellipsis;
- white-space: nowrap;
- word-wrap: normal;
-}
-
-// No margins, padding, borders
-@mixin naked() {
- border: 0 none;
- margin: 0;
- padding: 0;
- text-decoration: none;
-}
-
-@mixin translate($x, $y) {
- @include transform(translate($x, $y));
-}
-
-// Disallow wrapping
-@mixin nowrap() {
- white-space: nowrap;
- word-wrap: normal;
-}
-
-@mixin click-through() {
- pointer-events: none;
-}
-
-// Disallow text selection
-@mixin noselect() {
- -webkit-user-select: none;
- -moz-user-select: none;
- -ms-user-select: none;
- user-select: none;
-}
-
-// Allow text selection
-@mixin can-select() {
- -webkit-user-select: text;
- -moz-user-select: text;
- -ms-user-select: text;
- user-select: text;
- cursor: text;
-}
diff --git a/html_orig/sass/app.scss b/html_orig/sass/app.scss
deleted file mode 100755
index 6177e38..0000000
--- a/html_orig/sass/app.scss
+++ /dev/null
@@ -1,57 +0,0 @@
-@import "normalize";
-@import "fontello";
-@import "lib/bourbon/bourbon";
-
-@import "grid-settings";
-@import "lib/neat/neat";
-
-@import "utils";
-
-$form-label-w: 160px;
-$form-label-gap: 8px;
-$form-field-w: 250px;
-
-$c-red-outline: #ff0099;
-$c-form-label-fg: white;
-$c-form-field-bg: #3c3c3c;
-$c-form-field-fg: white;
-$c-form-highlight: #2972ba;
-$c-form-highlight-a: #2ea1f9;
-
-$c-modal-bg: #242426;
-
-$screen-stack: "DejaVu Sans Mono", "Liberation Mono", "Inconsolata", "Menlo", monospace;
-
-@function dist($x) {
- @return modular-scale($x, 1rem, $golden);
-}
-
-@function fsize($x) {
- @return modular-scale($x, 1em, $major-second);
-}
-
-@import "layout/index";
-@import "form/index";
-
-// import all our pages
-@import "pages/wifi";
-@import "pages/term";
-@import "pages/about";
-
-// media queries
-
-@include media($tablet-min) {
- .mq-phone { display: none!important; }
-}
-
-@include media($phone) {
- .mq-tablet-min, .mq-no-phone { display: none !important; }
-}
-
-@include media($normal-min) {
- .mq-tablet-max { display: none !important; }
-}
-
-@include media($tablet-max) {
- .mq-normal-min { display: none !important; }
-}
diff --git a/html_orig/sass/form/_buttons.scss b/html_orig/sass/form/_buttons.scss
deleted file mode 100755
index 5f36222..0000000
--- a/html_orig/sass/form/_buttons.scss
+++ /dev/null
@@ -1,58 +0,0 @@
-@import "fancy_button_mixins";
-
-$btn-gray-f: #DDDDDD;
-$btn-gray-b: #505050;
-$btn-gray-l: #343434; // line
-
-$btn-green-f: #FEFEFE;
-$btn-green-b: #2ca94b;
-$btn-green-fa: #FEFEFE;
-$btn-green-ba: #28ba5c;
-
-$btn-red-f: #FEFEFE;
-$btn-red-b: #D04E51;
-$btn-red-fa: #FEFEFE;
-$btn-red-ba: #d4403f;
-
-$btn-blue-f: #FEFEFE;
-$btn-blue-b: #3983cd;
-$btn-blue-fa: #FEFEFE;
-$btn-blue-ba: #2076C6;
-
-$btn-orange-f: #FEFEFE;
-$btn-orange-b: #dd8751;
-$btn-orange-fa: #FEFEFE;
-$btn-orange-ba: #C6733F;
-
-button, input[type=submit], .button {
- @include fancy-btn-base();
-
- &.narrow {
- min-width: initial;
- }
-
- &::before {
- vertical-align: -1px;
- margin-left: 0;
- }
-
- text-shadow: 1.5px 1.5px 2px rgba(black, 0.4);
-
- @include fancy-btn-colors($btn-blue-f, $btn-blue-b, $btn-blue-fa, $btn-blue-ba);
-
- &:focus {
- outline-color: $c-red-outline;
- }
-}
-
-//input[type="submit"], .btn-green {
-// @include fancy-btn-colors($btn-green-f, $btn-green-b, $btn-green-fa, $btn-green-ba);
-//}
-
-//.btn-red {
-// @include fancy-btn-colors($btn-red-f, $btn-red-b, $btn-red-fa, $btn-red-ba);
-//}
-
-//.btn-blue {
-// @include fancy-btn-colors($btn-blue-f, $btn-blue-b, $btn-blue-fa, $btn-blue-ba);
-//}
diff --git a/html_orig/sass/form/_fancy_button_mixins.scss b/html_orig/sass/form/_fancy_button_mixins.scss
deleted file mode 100755
index c7d2a4f..0000000
--- a/html_orig/sass/form/_fancy_button_mixins.scss
+++ /dev/null
@@ -1,58 +0,0 @@
-
-// Button styling
-@mixin fancy-btn-base() {
- text-align: center;
- cursor: pointer;
- display: inline-block;
- border-radius: 2px;
- padding: 0 0.6em;
- border: 0 none;
- //outline: 0 none !important;
- line-height: 1.8em;
- font-size: 1.1em;
- margin-bottom: 3px;
- min-width: 5em;
-
- @include noselect();
-
- //&[class^="icon-"]::before, &[class*=" icon-"]::before {
- // margin-left:0;
- //}
-
- &:active {
- position: relative;
- top: 2px;
- }
-
- //&, &:active, &:hover, &:visited {
- // text-decoration: none;
- //}
-}
-
-@mixin fancy-btn-colors-full($text_p, $back_p, $side_p, $text_a, $back_a, $side_a) {
- background-color: $back_p;
- box-shadow: 0 3px 0 $side_p;
- text-decoration: none !important;
-
- &, &:link, &:visited {
- color: $text_p;
- }
-
- &:hover, &:active, &.active, &.selected {
- background-color: $back_a;
- color: $text_a;
- }
-
- &:hover, &.selected, &.active {
- box-shadow: 0 3px 0 $side_a;
- }
-
- // thinner shadow
- &:active {
- box-shadow: 0 1px 0 $side_a;
- }
-}
-
-@mixin fancy-btn-colors($text_p, $back_p, $text_a, $back_a) {
- @include fancy-btn-colors-full($text_p, $back_p, darken($back_p, 14), $text_a, $back_a, darken($back_a, 16));
-}
diff --git a/html_orig/sass/form/_form_elements.scss b/html_orig/sass/form/_form_elements.scss
deleted file mode 100755
index d66e94c..0000000
--- a/html_orig/sass/form/_form_elements.scss
+++ /dev/null
@@ -1,82 +0,0 @@
-@import "buttons";
-
-#{$all-text-inputs}, select, label.select-wrap {
- width: $form-field-w;
-}
-
-input[type="number"], input.short, select.short {
- width: $form-field-w/2;
-}
-
-#{$all-text-inputs}, select {
- border: 0 none;
- border-bottom: 2px solid $c-form-highlight;
- background-color: $c-form-field-bg;
- color: $c-form-field-fg;
- padding: 6px;
- line-height: 1em;
- //outline: 0 none !important;
- //-moz-outline: 0 none !important;
- font-weight: normal;
-
- &:focus, &:hover {
- border-bottom-color: $c-form-highlight-a;
- }
-}
-
-.Row.checkbox {
- $h: 27px;
- line-height: $h;
-
- .box {
- overflow: hidden;
- width: $h;
- height: $h;
- border: 1px solid #808080;
- border-radius: 3px;
- background: $c-form-field-bg;
- display: inline-block;
- position: relative;
- cursor: pointer;
- color: $c-form-highlight-a;
-
- &::before {
- font-family: "fontello";
- position: absolute;
- //content: '×';
- //content: '✓';
- left: 0; top: 0; right: 0; bottom: 0;
- line-height: 25px;
- text-align: center;
- font-size: 20px;
- vertical-align: middle;
- display: none;
- }
-
- @include icon-content('ok');
-
- &.checked::before {
- display: block;
- }
- }
-}
-
-.Row.range {
- .display {
- margin-left: 1ex;
- }
-
- label .display { font-weight: normal; }
-}
-
-//#{$all-text-inputs} {
-// @include can-select();
-//}
-
-//textarea {
-// font-family: monospace;
-// line-height: 1.2em;
-// display: block; // fixes weird bottom margin
-//}
-
-//@import "select";
diff --git a/html_orig/sass/form/_form_layout.scss b/html_orig/sass/form/_form_layout.scss
deleted file mode 100755
index 9afe4d7..0000000
--- a/html_orig/sass/form/_form_layout.scss
+++ /dev/null
@@ -1,204 +0,0 @@
-// Unified Form wrapper
-form { @include naked(); }
-
-.Box.errors {
- .list {
- color: crimson;
- font-weight: bold;
- }
-
- .lead {
- color: white;
- }
-}
-
-.Row {
- vertical-align: middle;
- margin: 12px auto;
- text-align: left;
- line-height: 1.35em;
-
- display: flex;
- flex-direction: row;
- align-items: center;
-
- &:first-child {
- margin-top: 0;
- }
-
- &:last-child {
- margin-bottom: 0;
- }
-
- &.v {
- display: block;
- }
-
- .aside {
- float: right;
- margin-left: 5px;
- margin-bottom: 5px;
-
- @include media($phone) {
- margin: 0; float: none;
- }
- }
-
- .spacer {
- width: $form-label-w;
-
- @include media($phone) {
- display: none;
- }
- }
-
- // buttons2 is the same style, but different selector for use in the admin page
- &.buttons, &.buttons2 {
- margin: 16px auto;
- input, .button {
- margin-right: dist(-1);
- }
- }
-
- &.centered {
- justify-content: center;
- }
-
- &.message {
- font-size: 1em;
- //margin-left: $label-gap + $w-labels;
- text-shadow: 1px 1px 3px black;
- text-align: center;
-
- &.error {
- color: crimson;
- }
-
- &.ok {
- color: #0fe851;
- }
- }
-
- &.separator {
- padding-top: 14px;
- border-top: 2px solid rgba(255, 255, 255, 0.1);
- }
-
- textarea {
- display: inline-block;
- vertical-align: top;
- min-height: 10rem;
- flex-grow: 1;
-
- resize: vertical;
- }
-
- label {
- font-weight: bold;
- color: $c-form-label-fg;
- display: inline-block;
- width: $form-label-w;
- text-align: right;
- text-shadow: 1px 1px 3px black;
-
- padding: $form-label-gap;
- align-self: flex-start;
-
- @include noselect;
- @include nowrap;
- }
-
- label.error {
- color: crimson;
- }
-
- //.checkbox-wrap {
- // display: inline-block;
- // width: $form-label-w;
- // padding: $form-label-gap;
- // text-align: right;
- // align-self: flex-start;
- //
- // input[type=checkbox] {
- // margin: auto;
- // width: auto;
- // height: auto;
- // }
- //
- // & + label {
- // width: $form-field-w;
- // padding-left: 0;
- // text-align: left;
- // cursor: pointer;
- // }
- //}
-
- input[type="range"] {
- width: 200px;
- }
-
- // special phone style
- @include media($phone) {
- flex-direction: column;
- margin: 6px auto;
-
- &.buttons, &.centered, &.checkbox {
- flex-direction: row;
- }
-
- &.buttons {
- justify-content: center;
-
- // remove margin on lats button
- :last-child {
- margin-right:0;
- }
- }
-
- label {
- padding-left: 0;
- text-align: left;
- width: auto;
- }
-
- .checkbox-wrap {
- order: 1;
- text-align: left;
- padding-bottom: 0;
-
- border-radius: .4px;
- width: auto;
-
- & + label {
- width: auto;
- }
- }
-
- #{$all-text-inputs}, input[type="range"], textarea, select {
- width: 100%;
- }
- }
-}
-
-// red asterisk
-form span.required {
- color: red;
-}
-
-.RadioGroup {
- display: inline-block;
- line-height: 1.5em;
- vertical-align: middle;
-
- label {
- width: auto;
- text-align: left;
- cursor: pointer;
- font-weight: normal;
- }
-
- input[type="radio"] {
- vertical-align: middle;
- margin: 0 0 0 5px;
- }
-}
diff --git a/html_orig/sass/form/_index.scss b/html_orig/sass/form/_index.scss
deleted file mode 100755
index f2e9a7a..0000000
--- a/html_orig/sass/form/_index.scss
+++ /dev/null
@@ -1,13 +0,0 @@
-@import 'fancy_button_mixins';
-@import 'buttons';
-@import 'form_elements';
-
-%form-row-spacing {
- & > * {
- margin-right: dist(-2);
- &:last-child { margin-right: 0 }
- }
-}
-
-@import 'form_layout';
-//@import 'select';
diff --git a/html_orig/sass/form/_select.scss b/html_orig/sass/form/_select.scss
deleted file mode 100755
index 52bc498..0000000
--- a/html_orig/sass/form/_select.scss
+++ /dev/null
@@ -1,52 +0,0 @@
-
-// target chrome only
-@media screen and (-webkit-min-device-pixel-ratio: 0) {
- select { padding-right: 18px }
-}
-
-select {
- -webkit-appearance: none;
- -moz-appearance: none;
- appearance: none;
-
- cursor: pointer;
- line-height: 1.2em;
- //padding: 3.5px;
-
- padding-right: 1em;
-
- // hack for firefox to disable dotted outline
- &:-moz-focusring {
- color: transparent;
- text-shadow: 0 0 0 $c-form-field-fg;
- }
-
- option {
- background: $c-form-field-bg;
- }
-}
-
-label.select-wrap {
- position: relative;
- display: inline !important;
- margin: 0 !important;
- padding: 0 !important;
- width: auto !important;
-
- &:after {
- content: '<>'; /* will be rotated */
- font-family: "Consolas", monospace;
- font-weight: bold;
- color: $c-form-highlight-a;
-
- top: 50%;
- @include transform(translate(0, -50%) rotate(90deg));
-
- right: 2px;
-
- position:absolute;
- z-index: 100;
-
- pointer-events: none;
- }
-}
diff --git a/html_orig/sass/layout/_base.scss b/html_orig/sass/layout/_base.scss
deleted file mode 100755
index bac9829..0000000
--- a/html_orig/sass/layout/_base.scss
+++ /dev/null
@@ -1,41 +0,0 @@
-html {
- font-family: Arial, sans-serif;
- color: #D0D0D0;
- background: #131315;
-}
-
-html, body {
- @include naked();
- width: 100%;
- height: 100%;
- overflow: hidden;
-}
-
-a, a:visited, a:link {
- cursor: pointer;
- color: #5abfff;
- text-decoration: none;
-}
-
-a:hover {
- color: #5abfff;
- text-decoration: underline;
-}
-
-.hidden {
- display: none !important;
-}
-
-[onclick] {
- cursor: pointer;
-}
-
-ul > * {
- padding-top: .3em;
- padding-bottom: .3em;
-}
-
-ul {
- margin-top: 0;
- margin-bottom: 0;
-}
diff --git a/html_orig/sass/layout/_box.scss b/html_orig/sass/layout/_box.scss
deleted file mode 100755
index 219757f..0000000
--- a/html_orig/sass/layout/_box.scss
+++ /dev/null
@@ -1,179 +0,0 @@
-.botpad {
- display:block;
- height: 5em;
-}
-
-.Box {
- display: block;
- max-width: 900px;
-
- margin-top: dist(0);
- padding: dist(-1) dist(0);
-
- // clear floats
- &::after {
- content: '';
- display: block;
- clear: both
- }
-
- @include media($phone) {
- margin-top: dist(-1);
- }
-
- h1, h2 {
- overflow: hidden;
- }
-
- h1 + & {
- margin-top: 0;
- }
-
- h2 {
- margin-top: 0;
- margin-bottom: 0 !important;
- }
-
- p:last-child {
- margin-bottom: 0.5em;
- }
-
- border-radius: 3px;
- background-color: rgba(white, .07);
- box-shadow: 0 0 4px black;
- border: 1px solid #4f4f4f;
-
- &.wide {
- width: initial;
- max-width: initial;
- }
-
- &.medium {
- max-width: 1200px;
- }
-
- //.Valfield {
- // display: inline-block;
- // min-width: 10em;
- //}
-
- // Submit Top Right
- &.str {
- position: relative;
- .Row.buttons {
- position: absolute;
-
- @include media($phone) {
- right: dist(0);
- top: 1.8em;
- margin: 1rem auto;
- }
-
- @include media($tablet-min) {
- right: 0;
- top: 0;
- margin-top: dist(-1);
- }
- }
- }
-
- &.str.mobopen .Row.buttons {
- top: 0;
- margin-top: dist(-1);
- }
-
- .Row.explain {
- display: block; // this stops flex messing up text with inline tags
- max-width: 600px; margin-left: 0;
- line-height: 1.2;
-
- @include media($phone) {
- margin-top: 60px;
- }
-
- &.nomargintop {
- margin-top: 12px !important;
- }
-
- &.padleft {
-
- }
- }
- &.mobopen .Row.explain {
- margin-top: 12px; // default from .Row
-
- @include media($phone) {
- margin-top: 18px;
- }
- }
-}
-
-@mixin mobcol-base {
- h2 {
- position: relative;
- cursor: pointer;
- padding: 2px 1.3rem 2px 5px;
- margin: 0 -5px 0 -5px;
-
- &::after {
- position: absolute;
- right: 4px;
- content: '▸';
-
- top:50%;
- font-size: 120%;
- font-weight: bold;
- transform: translate(0,-50%) rotate(90deg);
- }
- }
-
- &.expanded h2::after {
- transform: translate(-25%,-50%) rotate(-90deg);
- margin-bottom: dist(0);
- }
-
- .Row {
- display: none;
- }
-
- &.expanded {
- .Row {
- display: flex;
-
- &.v {
- display: block;
- }
- }
- }
-}
-
-.Box.fold {
- @include mobcol-base;
-}
-
-@include media($phone) {
- .Box.fold, .Box.mobcol {
- h2 {
- padding: 2px 1.3rem 2px 5px;
- margin: 0 -5px 0 -5px;
- }
-
- &.expanded h2::after {
- margin-bottom: dist(0);
- }
- }
-
- .Box.mobcol {
- @include mobcol-base;
-
- #ap-box {
- display: none;
- }
-
- &.expanded {
- #ap-box {
- display: block;
- }
- }
- }
-}
diff --git a/html_orig/sass/layout/_content.scss b/html_orig/sass/layout/_content.scss
deleted file mode 100755
index 731c937..0000000
--- a/html_orig/sass/layout/_content.scss
+++ /dev/null
@@ -1,60 +0,0 @@
-#content {
- flex-grow: 1;
- position: relative;
-
- padding: dist(0);
- @include media($phone) {
- padding: dist(-1);
- }
-
- overflow-y: auto;
-
- & > * {
- margin-left: auto;
- margin-right: auto;
- }
-
- h1 {
- text-align: center;
- font-size: fsize(7);
- margin-top: 0;
- margin-bottom: dist(0);
- }
-
- h2 {
- font-size: fsize(3);
- margin-bottom: dist(-1);
- }
-
- @include media($phone) {
- h1 {
- font-size: fsize(5);
- margin-bottom: dist(-1);
- }
-
- h2 {
- font-size: fsize(2);
- margin-bottom: dist(-1);
- }
- }
-
- td, th {
- padding: dist(-2);
- }
-
- tbody th {
- text-align: right;
- width: $form-label-w;
- color: $c-form-label-fg;
- }
-}
-
-#content {
- // fade in effect
- opacity: 0;
- transition: opacity 0.15s ease-in;
-}
-
-#content.load {
- opacity: 1;
-}
diff --git a/html_orig/sass/layout/_index.scss b/html_orig/sass/layout/_index.scss
deleted file mode 100755
index f37ef8d..0000000
--- a/html_orig/sass/layout/_index.scss
+++ /dev/null
@@ -1,9 +0,0 @@
-@import "base";
-
-@import "outer-wrap";
-@import "menu";
-@import "content";
-@import "loader";
-
-@import "box";
-@import "modal";
diff --git a/html_orig/sass/layout/_loader.scss b/html_orig/sass/layout/_loader.scss
deleted file mode 100644
index 62af4cc..0000000
--- a/html_orig/sass/layout/_loader.scss
+++ /dev/null
@@ -1,18 +0,0 @@
-// Loader wheel in top right corner
-#loader {
- position: absolute;
- right: dist(1);
- top: dist(1);
-
- transition: opacity .2s;
- opacity: 0;
-
- @include media($phone) {
- top: dist(0);
- right: dist(0);
- }
-
- &.show {
- opacity:1;
- }
-}
diff --git a/html_orig/sass/layout/_menu.scss b/html_orig/sass/layout/_menu.scss
deleted file mode 100755
index 4f78728..0000000
--- a/html_orig/sass/layout/_menu.scss
+++ /dev/null
@@ -1,111 +0,0 @@
-#menu {
- $menu-bg: #3983CD;
- $menu-hl: #5badff; //#1bd886;
- $menu-fg: white;
-
- flex: 0 0 15rem;
- background: $menu-bg;
-
- & > * {
- display: block;
- text-decoration: none;
- padding: dist(-1) dist(0);
-
- @include nowrap;
- @include noselect;
- }
-
- #brand {
- cursor: pointer;
- color: $menu-fg;
- background: darken($menu-bg, 10%);
- font-size: 120%;
- text-align: center;
- position:relative;
- transition: none;
- font-weight: bold;
-
- margin-bottom: dist(0);
-
- @include media($phone) {
- background: $menu-bg;
- cursor: pointer;
- margin-bottom: dist(-2);
-
- &::after {
- position: absolute;
- color: rgba(black, .4);
- right: dist(0);
- content: '▸';
-
- top:50%;
- font-size: 120%;
- font-weight: bold;
- transform: translate(0,-50%) rotate(90deg);
- }
- }
- }
- &.expanded #brand {
- background: darken($menu-bg, 10%);
-
- @include media($phone) {
- &:after { transform: translate(-25%,-50%) rotate(-90deg) }
- }
- }
-
- a {
- font-size: 130%;
- color: $menu-fg;
-
- transition: background-color 0.2s;
- text-shadow: 0 0 5px rgba(black, .4);
-
- &:hover, &.selected {
- background: $menu-hl;
- text-shadow: 0 0 5px rgba(black, .6);
- }
-
- &.selected {
- position: relative;
- box-shadow: 0 0 5px rgba(black, .5);
- }
-
- &:focus {
- outline-color: $c-red-outline;
- }
-
- //&::before {
- // content: "▸";
- // padding-right: .5rem;
- // position: relative;
- // top: -0.1rem;
- //}
-
- // Fontello
- &::before {
- vertical-align: -2px;
- margin-left: 0;
- margin-right: 15px;
- }
-
- @include media($phone) {
- display: none;
- &::before {margin-left: 10px;}
- }
- }
-
- &.expanded a { display:block }
-
- @include media($tablet) {
- #brand {
- font-size: 95%;
- margin-bottom: dist(-1);
- }
-
- a { font-size: 105%; }
-
- flex-basis: 10rem;
-
- & > * { padding: dist(-2) dist(-1); }
- }
-}
diff --git a/html_orig/sass/layout/_modal.scss b/html_orig/sass/layout/_modal.scss
deleted file mode 100755
index 708379d..0000000
--- a/html_orig/sass/layout/_modal.scss
+++ /dev/null
@@ -1,95 +0,0 @@
-.Modal {
- z-index: 100;
- position: fixed;
- width: 100%; height: 100%;
- left: 0; top: 0; right: 0; bottom: 0;
-
- display: flex;
- justify-content: center;
- align-items: center;
-
- transition: opacity .5s;
- background: rgba(black, .65);
- opacity: 0;
- &.visible { opacity: 1 }
- &.hidden { display: none }
-
- &.light {
- background: rgba(black, .25);
- }
-
- @include media($phone) {
- flex-direction: column;
- justify-content: flex-start;
- overflow-y: auto;
- .Dialog {
- margin-top: dist(-1) !important;
- flex-basis: unset;
- flex-shrink: 0;
- }
- }
-}
-
-.Dialog {
- margin: dist(-1);
- padding: dist(0);
- overflow: hidden;
-
- //max-width: 100%;
- //max-height: 100%;
- flex-basis: 35rem;
- //min-height: 15rem;
-
- background: $c-modal-bg;//#1c1c1e;
- border-left: 6px solid $c-form-highlight;
- border-right: 6px solid $c-form-highlight;
- //border-top: 1px solid $c-form-highlight;
- //border-bottom: 1px solid $c-form-highlight;
- box-shadow: 0 0 6px 0 black;
-
- border-radius: 6px;
-
- h1,h2 {
- margin-top:0;
- }
-
- p:last-child {
- margin-bottom: 0;
- }
-}
-
-// "toast"
-.NotifyMsg {
- position: fixed;
- top: dist(1);
- right: dist(2);
- padding: dist(-1) dist(0);
-
- // center horizontally
- //left: 50%;
- //@include translate(-50%,0);
- // hack to remove blur in chrome
- -webkit-font-smoothing: subpixel-antialiased;
- -webkit-transform: translateZ(0) scale(1.0, 1.0);
-
- background: #3887d0;
- &.error {
- background: #d03e42;
- }
-
- color: white;
- text-shadow: 0 0 2px black;
- box-shadow: 0 0 6px 0 rgba(black, .6);
- border-radius: 5px;
-
- max-width: 80%;
-
- @include media($phone) {
- width: calc(100% - #{dist(0)});
- }
-
- transition: opacity .5s;
- opacity: 0;
- &.visible { opacity: 1 }
- &.hidden { display: none }
-}
diff --git a/html_orig/sass/layout/_outer-wrap.scss b/html_orig/sass/layout/_outer-wrap.scss
deleted file mode 100755
index c32d3a8..0000000
--- a/html_orig/sass/layout/_outer-wrap.scss
+++ /dev/null
@@ -1,22 +0,0 @@
-/* Main outer container */
-#outer {
- display: flex;
-
- position: absolute;
- width: 100%;
- height: 100%;
- left: 0;
- right: 0;
- top: 0;
- bottom: 0;
- overflow: hidden;
-
- flex-direction: row;
-}
-
-@include media($phone) {
- #outer {
- display: block;
- overflow-y: scroll;
- }
-}
diff --git a/html_orig/sass/lib/bourbon/_bourbon-deprecated-upcoming.scss b/html_orig/sass/lib/bourbon/_bourbon-deprecated-upcoming.scss
deleted file mode 100755
index e6d1b8c..0000000
--- a/html_orig/sass/lib/bourbon/_bourbon-deprecated-upcoming.scss
+++ /dev/null
@@ -1,411 +0,0 @@
-// The following features have been deprecated and will be removed in the next MAJOR version release
-
-@mixin inline-block {
- display: inline-block;
-
- @warn "The inline-block mixin is deprecated and will be removed in the next major version release";
-}
-
-@mixin button ($style: simple, $base-color: #4294f0, $text-size: inherit, $padding: 7px 18px) {
-
- @if type-of($style) == string and type-of($base-color) == color {
- @include buttonstyle($style, $base-color, $text-size, $padding);
- }
-
- @if type-of($style) == string and type-of($base-color) == number {
- $padding: $text-size;
- $text-size: $base-color;
- $base-color: #4294f0;
-
- @if $padding == inherit {
- $padding: 7px 18px;
- }
-
- @include buttonstyle($style, $base-color, $text-size, $padding);
- }
-
- @if type-of($style) == color and type-of($base-color) == color {
- $base-color: $style;
- $style: simple;
- @include buttonstyle($style, $base-color, $text-size, $padding);
- }
-
- @if type-of($style) == color and type-of($base-color) == number {
- $padding: $text-size;
- $text-size: $base-color;
- $base-color: $style;
- $style: simple;
-
- @if $padding == inherit {
- $padding: 7px 18px;
- }
-
- @include buttonstyle($style, $base-color, $text-size, $padding);
- }
-
- @if type-of($style) == number {
- $padding: $base-color;
- $text-size: $style;
- $base-color: #4294f0;
- $style: simple;
-
- @if $padding == #4294f0 {
- $padding: 7px 18px;
- }
-
- @include buttonstyle($style, $base-color, $text-size, $padding);
- }
-
- &:disabled {
- cursor: not-allowed;
- opacity: 0.5;
- }
-
- @warn "The button mixin is deprecated and will be removed in the next major version release";
-}
-
-// Selector Style Button
-@mixin buttonstyle($type, $b-color, $t-size, $pad) {
- // Grayscale button
- @if $type == simple and $b-color == grayscale($b-color) {
- @include simple($b-color, true, $t-size, $pad);
- }
-
- @if $type == shiny and $b-color == grayscale($b-color) {
- @include shiny($b-color, true, $t-size, $pad);
- }
-
- @if $type == pill and $b-color == grayscale($b-color) {
- @include pill($b-color, true, $t-size, $pad);
- }
-
- @if $type == flat and $b-color == grayscale($b-color) {
- @include flat($b-color, true, $t-size, $pad);
- }
-
- // Colored button
- @if $type == simple {
- @include simple($b-color, false, $t-size, $pad);
- }
-
- @else if $type == shiny {
- @include shiny($b-color, false, $t-size, $pad);
- }
-
- @else if $type == pill {
- @include pill($b-color, false, $t-size, $pad);
- }
-
- @else if $type == flat {
- @include flat($b-color, false, $t-size, $pad);
- }
-}
-
-// Simple Button
-@mixin simple($base-color, $grayscale: false, $textsize: inherit, $padding: 7px 18px) {
- $color: hsl(0, 0, 100%);
- $border: adjust-color($base-color, $saturation: 9%, $lightness: -14%);
- $inset-shadow: adjust-color($base-color, $saturation: -8%, $lightness: 15%);
- $stop-gradient: adjust-color($base-color, $saturation: 9%, $lightness: -11%);
- $text-shadow: adjust-color($base-color, $saturation: 15%, $lightness: -18%);
-
- @if is-light($base-color) {
- $color: hsl(0, 0, 20%);
- $text-shadow: adjust-color($base-color, $saturation: 10%, $lightness: 4%);
- }
-
- @if $grayscale == true {
- $border: grayscale($border);
- $inset-shadow: grayscale($inset-shadow);
- $stop-gradient: grayscale($stop-gradient);
- $text-shadow: grayscale($text-shadow);
- }
-
- border: 1px solid $border;
- border-radius: 3px;
- box-shadow: inset 0 1px 0 0 $inset-shadow;
- color: $color;
- display: inline-block;
- font-size: $textsize;
- font-weight: bold;
- @include linear-gradient ($base-color, $stop-gradient);
- padding: $padding;
- text-decoration: none;
- text-shadow: 0 1px 0 $text-shadow;
- background-clip: padding-box;
-
- &:hover:not(:disabled) {
- $base-color-hover: adjust-color($base-color, $saturation: -4%, $lightness: -5%);
- $inset-shadow-hover: adjust-color($base-color, $saturation: -7%, $lightness: 5%);
- $stop-gradient-hover: adjust-color($base-color, $saturation: 8%, $lightness: -14%);
-
- @if $grayscale == true {
- $base-color-hover: grayscale($base-color-hover);
- $inset-shadow-hover: grayscale($inset-shadow-hover);
- $stop-gradient-hover: grayscale($stop-gradient-hover);
- }
-
- @include linear-gradient ($base-color-hover, $stop-gradient-hover);
-
- box-shadow: inset 0 1px 0 0 $inset-shadow-hover;
- cursor: pointer;
- }
-
- &:active:not(:disabled),
- &:focus:not(:disabled) {
- $border-active: adjust-color($base-color, $saturation: 9%, $lightness: -14%);
- $inset-shadow-active: adjust-color($base-color, $saturation: 7%, $lightness: -17%);
-
- @if $grayscale == true {
- $border-active: grayscale($border-active);
- $inset-shadow-active: grayscale($inset-shadow-active);
- }
-
- border: 1px solid $border-active;
- box-shadow: inset 0 0 8px 4px $inset-shadow-active, inset 0 0 8px 4px $inset-shadow-active;
- }
-}
-
-// Shiny Button
-@mixin shiny($base-color, $grayscale: false, $textsize: inherit, $padding: 7px 18px) {
- $color: hsl(0, 0, 100%);
- $border: adjust-color($base-color, $red: -117, $green: -111, $blue: -81);
- $border-bottom: adjust-color($base-color, $red: -126, $green: -127, $blue: -122);
- $fourth-stop: adjust-color($base-color, $red: -79, $green: -70, $blue: -46);
- $inset-shadow: adjust-color($base-color, $red: 37, $green: 29, $blue: 12);
- $second-stop: adjust-color($base-color, $red: -56, $green: -50, $blue: -33);
- $text-shadow: adjust-color($base-color, $red: -140, $green: -141, $blue: -114);
- $third-stop: adjust-color($base-color, $red: -86, $green: -75, $blue: -48);
-
- @if is-light($base-color) {
- $color: hsl(0, 0, 20%);
- $text-shadow: adjust-color($base-color, $saturation: 10%, $lightness: 4%);
- }
-
- @if $grayscale == true {
- $border: grayscale($border);
- $border-bottom: grayscale($border-bottom);
- $fourth-stop: grayscale($fourth-stop);
- $inset-shadow: grayscale($inset-shadow);
- $second-stop: grayscale($second-stop);
- $text-shadow: grayscale($text-shadow);
- $third-stop: grayscale($third-stop);
- }
-
- @include linear-gradient(top, $base-color 0%, $second-stop 50%, $third-stop 50%, $fourth-stop 100%);
-
- border: 1px solid $border;
- border-bottom: 1px solid $border-bottom;
- border-radius: 5px;
- box-shadow: inset 0 1px 0 0 $inset-shadow;
- color: $color;
- display: inline-block;
- font-size: $textsize;
- font-weight: bold;
- padding: $padding;
- text-align: center;
- text-decoration: none;
- text-shadow: 0 -1px 1px $text-shadow;
-
- &:hover:not(:disabled) {
- $first-stop-hover: adjust-color($base-color, $red: -13, $green: -15, $blue: -18);
- $second-stop-hover: adjust-color($base-color, $red: -66, $green: -62, $blue: -51);
- $third-stop-hover: adjust-color($base-color, $red: -93, $green: -85, $blue: -66);
- $fourth-stop-hover: adjust-color($base-color, $red: -86, $green: -80, $blue: -63);
-
- @if $grayscale == true {
- $first-stop-hover: grayscale($first-stop-hover);
- $second-stop-hover: grayscale($second-stop-hover);
- $third-stop-hover: grayscale($third-stop-hover);
- $fourth-stop-hover: grayscale($fourth-stop-hover);
- }
-
- @include linear-gradient(top, $first-stop-hover 0%,
- $second-stop-hover 50%,
- $third-stop-hover 50%,
- $fourth-stop-hover 100%);
- cursor: pointer;
- }
-
- &:active:not(:disabled),
- &:focus:not(:disabled) {
- $inset-shadow-active: adjust-color($base-color, $red: -111, $green: -116, $blue: -122);
-
- @if $grayscale == true {
- $inset-shadow-active: grayscale($inset-shadow-active);
- }
-
- box-shadow: inset 0 0 20px 0 $inset-shadow-active;
- }
-}
-
-// Pill Button
-@mixin pill($base-color, $grayscale: false, $textsize: inherit, $padding: 7px 18px) {
- $color: hsl(0, 0, 100%);
- $border-bottom: adjust-color($base-color, $hue: 8, $saturation: -11%, $lightness: -26%);
- $border-sides: adjust-color($base-color, $hue: 4, $saturation: -21%, $lightness: -21%);
- $border-top: adjust-color($base-color, $hue: -1, $saturation: -30%, $lightness: -15%);
- $inset-shadow: adjust-color($base-color, $hue: -1, $saturation: -1%, $lightness: 7%);
- $stop-gradient: adjust-color($base-color, $hue: 8, $saturation: 14%, $lightness: -10%);
- $text-shadow: adjust-color($base-color, $hue: 5, $saturation: -19%, $lightness: -15%);
-
- @if is-light($base-color) {
- $color: hsl(0, 0, 20%);
- $text-shadow: adjust-color($base-color, $saturation: 10%, $lightness: 4%);
- }
-
- @if $grayscale == true {
- $border-bottom: grayscale($border-bottom);
- $border-sides: grayscale($border-sides);
- $border-top: grayscale($border-top);
- $inset-shadow: grayscale($inset-shadow);
- $stop-gradient: grayscale($stop-gradient);
- $text-shadow: grayscale($text-shadow);
- }
-
- border: 1px solid $border-top;
- border-color: $border-top $border-sides $border-bottom;
- border-radius: 16px;
- box-shadow: inset 0 1px 0 0 $inset-shadow;
- color: $color;
- display: inline-block;
- font-size: $textsize;
- font-weight: normal;
- line-height: 1;
- @include linear-gradient ($base-color, $stop-gradient);
- padding: $padding;
- text-align: center;
- text-decoration: none;
- text-shadow: 0 -1px 1px $text-shadow;
- background-clip: padding-box;
-
- &:hover:not(:disabled) {
- $base-color-hover: adjust-color($base-color, $lightness: -4.5%);
- $border-bottom: adjust-color($base-color, $hue: 8, $saturation: 13.5%, $lightness: -32%);
- $border-sides: adjust-color($base-color, $hue: 4, $saturation: -2%, $lightness: -27%);
- $border-top: adjust-color($base-color, $hue: -1, $saturation: -17%, $lightness: -21%);
- $inset-shadow-hover: adjust-color($base-color, $saturation: -1%, $lightness: 3%);
- $stop-gradient-hover: adjust-color($base-color, $hue: 8, $saturation: -4%, $lightness: -15.5%);
- $text-shadow-hover: adjust-color($base-color, $hue: 5, $saturation: -5%, $lightness: -22%);
-
- @if $grayscale == true {
- $base-color-hover: grayscale($base-color-hover);
- $border-bottom: grayscale($border-bottom);
- $border-sides: grayscale($border-sides);
- $border-top: grayscale($border-top);
- $inset-shadow-hover: grayscale($inset-shadow-hover);
- $stop-gradient-hover: grayscale($stop-gradient-hover);
- $text-shadow-hover: grayscale($text-shadow-hover);
- }
-
- @include linear-gradient ($base-color-hover, $stop-gradient-hover);
-
- background-clip: padding-box;
- border: 1px solid $border-top;
- border-color: $border-top $border-sides $border-bottom;
- box-shadow: inset 0 1px 0 0 $inset-shadow-hover;
- cursor: pointer;
- text-shadow: 0 -1px 1px $text-shadow-hover;
- }
-
- &:active:not(:disabled),
- &:focus:not(:disabled) {
- $active-color: adjust-color($base-color, $hue: 4, $saturation: -12%, $lightness: -10%);
- $border-active: adjust-color($base-color, $hue: 6, $saturation: -2.5%, $lightness: -30%);
- $border-bottom-active: adjust-color($base-color, $hue: 11, $saturation: 6%, $lightness: -31%);
- $inset-shadow-active: adjust-color($base-color, $hue: 9, $saturation: 2%, $lightness: -21.5%);
- $text-shadow-active: adjust-color($base-color, $hue: 5, $saturation: -12%, $lightness: -21.5%);
-
- @if $grayscale == true {
- $active-color: grayscale($active-color);
- $border-active: grayscale($border-active);
- $border-bottom-active: grayscale($border-bottom-active);
- $inset-shadow-active: grayscale($inset-shadow-active);
- $text-shadow-active: grayscale($text-shadow-active);
- }
-
- background: $active-color;
- border: 1px solid $border-active;
- border-bottom: 1px solid $border-bottom-active;
- box-shadow: inset 0 0 6px 3px $inset-shadow-active;
- text-shadow: 0 -1px 1px $text-shadow-active;
- }
-}
-
-// Flat Button
-@mixin flat($base-color, $grayscale: false, $textsize: inherit, $padding: 7px 18px) {
- $color: hsl(0, 0, 100%);
-
- @if is-light($base-color) {
- $color: hsl(0, 0, 20%);
- }
-
- background-color: $base-color;
- border-radius: 3px;
- border: 0;
- color: $color;
- display: inline-block;
- font-size: $textsize;
- font-weight: bold;
- padding: $padding;
- text-decoration: none;
- background-clip: padding-box;
-
- &:hover:not(:disabled){
- $base-color-hover: adjust-color($base-color, $saturation: 4%, $lightness: 5%);
-
- @if $grayscale == true {
- $base-color-hover: grayscale($base-color-hover);
- }
-
- background-color: $base-color-hover;
- cursor: pointer;
- }
-
- &:active:not(:disabled),
- &:focus:not(:disabled) {
- $base-color-active: adjust-color($base-color, $saturation: -4%, $lightness: -5%);
-
- @if $grayscale == true {
- $base-color-active: grayscale($base-color-active);
- }
-
- background-color: $base-color-active;
- cursor: pointer;
- }
-}
-
-// Flexible grid
-@function flex-grid($columns, $container-columns: $fg-max-columns) {
- $width: $columns * $fg-column + ($columns - 1) * $fg-gutter;
- $container-width: $container-columns * $fg-column + ($container-columns - 1) * $fg-gutter;
- @return percentage($width / $container-width);
-
- @warn "The flex-grid function is deprecated and will be removed in the next major version release";
-}
-
-// Flexible gutter
-@function flex-gutter($container-columns: $fg-max-columns, $gutter: $fg-gutter) {
- $container-width: $container-columns * $fg-column + ($container-columns - 1) * $fg-gutter;
- @return percentage($gutter / $container-width);
-
- @warn "The flex-gutter function is deprecated and will be removed in the next major version release";
-}
-
-@function grid-width($n) {
- @return $n * $gw-column + ($n - 1) * $gw-gutter;
-
- @warn "The grid-width function is deprecated and will be removed in the next major version release";
-}
-
-@function golden-ratio($value, $increment) {
- @return modular-scale($increment, $value, $ratio: $golden);
-
- @warn "The golden-ratio function is deprecated and will be removed in the next major version release. Please use the modular-scale function, instead.";
-}
-
-@mixin box-sizing($box) {
- @include prefixer(box-sizing, $box, webkit moz spec);
-
- @warn "The box-sizing mixin is deprecated and will be removed in the next major version release. This property can now be used un-prefixed.";
-}
diff --git a/html_orig/sass/lib/bourbon/_bourbon.scss b/html_orig/sass/lib/bourbon/_bourbon.scss
deleted file mode 100755
index 509fcc1..0000000
--- a/html_orig/sass/lib/bourbon/_bourbon.scss
+++ /dev/null
@@ -1,87 +0,0 @@
-// Bourbon 4.2.6
-// http://bourbon.io
-// Copyright 2011-2015 thoughtbot, inc.
-// MIT License
-
-@import "settings/prefixer";
-@import "settings/px-to-em";
-@import "settings/asset-pipeline";
-
-@import "functions/assign-inputs";
-@import "functions/contains";
-@import "functions/contains-falsy";
-@import "functions/is-length";
-@import "functions/is-light";
-@import "functions/is-number";
-@import "functions/is-size";
-@import "functions/px-to-em";
-@import "functions/px-to-rem";
-@import "functions/shade";
-@import "functions/strip-units";
-@import "functions/tint";
-@import "functions/transition-property-name";
-@import "functions/unpack";
-@import "functions/modular-scale";
-
-@import "helpers/convert-units";
-@import "helpers/directional-values";
-@import "helpers/font-source-declaration";
-@import "helpers/gradient-positions-parser";
-@import "helpers/linear-angle-parser";
-@import "helpers/linear-gradient-parser";
-@import "helpers/linear-positions-parser";
-@import "helpers/linear-side-corner-parser";
-@import "helpers/radial-arg-parser";
-@import "helpers/radial-positions-parser";
-@import "helpers/radial-gradient-parser";
-@import "helpers/render-gradients";
-@import "helpers/shape-size-stripper";
-@import "helpers/str-to-num";
-
-@import "css3/animation";
-@import "css3/appearance";
-@import "css3/backface-visibility";
-@import "css3/background";
-@import "css3/background-image";
-@import "css3/border-image";
-@import "css3/calc";
-@import "css3/columns";
-@import "css3/filter";
-@import "css3/flex-box";
-@import "css3/font-face";
-@import "css3/font-feature-settings";
-@import "css3/hidpi-media-query";
-@import "css3/hyphens";
-@import "css3/image-rendering";
-@import "css3/keyframes";
-@import "css3/linear-gradient";
-@import "css3/perspective";
-@import "css3/placeholder";
-@import "css3/radial-gradient";
-@import "css3/selection";
-@import "css3/text-decoration";
-@import "css3/transform";
-@import "css3/transition";
-@import "css3/user-select";
-
-@import "addons/border-color";
-@import "addons/border-radius";
-@import "addons/border-style";
-@import "addons/border-width";
-@import "addons/buttons";
-@import "addons/clearfix";
-@import "addons/ellipsis";
-@import "addons/font-stacks";
-@import "addons/hide-text";
-@import "addons/margin";
-@import "addons/padding";
-@import "addons/position";
-@import "addons/prefixer";
-@import "addons/retina-image";
-@import "addons/size";
-@import "addons/text-inputs";
-@import "addons/timing-functions";
-@import "addons/triangle";
-@import "addons/word-wrap";
-
-@import "bourbon-deprecated-upcoming";
diff --git a/html_orig/sass/lib/bourbon/addons/_border-color.scss b/html_orig/sass/lib/bourbon/addons/_border-color.scss
deleted file mode 100755
index 6f6ab36..0000000
--- a/html_orig/sass/lib/bourbon/addons/_border-color.scss
+++ /dev/null
@@ -1,26 +0,0 @@
-@charset "UTF-8";
-
-/// Provides a quick method for targeting `border-color` on specific sides of a box. Use a `null` value to “skip” a side.
-///
-/// @param {Arglist} $vals
-/// List of arguments
-///
-/// @example scss - Usage
-/// .element {
-/// @include border-color(#a60b55 #76cd9c null #e8ae1a);
-/// }
-///
-/// @example css - CSS Output
-/// .element {
-/// border-left-color: #e8ae1a;
-/// border-right-color: #76cd9c;
-/// border-top-color: #a60b55;
-/// }
-///
-/// @require {mixin} directional-property
-///
-/// @output `border-color`
-
-@mixin border-color($vals...) {
- @include directional-property(border, color, $vals...);
-}
diff --git a/html_orig/sass/lib/bourbon/addons/_border-radius.scss b/html_orig/sass/lib/bourbon/addons/_border-radius.scss
deleted file mode 100755
index 1f65863..0000000
--- a/html_orig/sass/lib/bourbon/addons/_border-radius.scss
+++ /dev/null
@@ -1,48 +0,0 @@
-@charset "UTF-8";
-
-/// Provides a quick method for targeting `border-radius` on both corners on the side of a box.
-///
-/// @param {Number} $radii
-/// List of arguments
-///
-/// @example scss - Usage
-/// .element-one {
-/// @include border-top-radius(5px);
-/// }
-///
-/// .element-two {
-/// @include border-left-radius(3px);
-/// }
-///
-/// @example css - CSS Output
-/// .element-one {
-/// border-top-left-radius: 5px;
-/// border-top-right-radius: 5px;
-/// }
-///
-/// .element-two {
-/// border-bottom-left-radius: 3px;
-/// border-top-left-radius: 3px;
-/// }
-///
-/// @output `border-radius`
-
-@mixin border-top-radius($radii) {
- border-top-left-radius: $radii;
- border-top-right-radius: $radii;
-}
-
-@mixin border-right-radius($radii) {
- border-bottom-right-radius: $radii;
- border-top-right-radius: $radii;
-}
-
-@mixin border-bottom-radius($radii) {
- border-bottom-left-radius: $radii;
- border-bottom-right-radius: $radii;
-}
-
-@mixin border-left-radius($radii) {
- border-bottom-left-radius: $radii;
- border-top-left-radius: $radii;
-}
diff --git a/html_orig/sass/lib/bourbon/addons/_border-style.scss b/html_orig/sass/lib/bourbon/addons/_border-style.scss
deleted file mode 100755
index d86ee79..0000000
--- a/html_orig/sass/lib/bourbon/addons/_border-style.scss
+++ /dev/null
@@ -1,25 +0,0 @@
-@charset "UTF-8";
-
-/// Provides a quick method for targeting `border-style` on specific sides of a box. Use a `null` value to “skip” a side.
-///
-/// @param {Arglist} $vals
-/// List of arguments
-///
-/// @example scss - Usage
-/// .element {
-/// @include border-style(dashed null solid);
-/// }
-///
-/// @example css - CSS Output
-/// .element {
-/// border-bottom-style: solid;
-/// border-top-style: dashed;
-/// }
-///
-/// @require {mixin} directional-property
-///
-/// @output `border-style`
-
-@mixin border-style($vals...) {
- @include directional-property(border, style, $vals...);
-}
diff --git a/html_orig/sass/lib/bourbon/addons/_border-width.scss b/html_orig/sass/lib/bourbon/addons/_border-width.scss
deleted file mode 100755
index 0ea2d4b..0000000
--- a/html_orig/sass/lib/bourbon/addons/_border-width.scss
+++ /dev/null
@@ -1,25 +0,0 @@
-@charset "UTF-8";
-
-/// Provides a quick method for targeting `border-width` on specific sides of a box. Use a `null` value to “skip” a side.
-///
-/// @param {Arglist} $vals
-/// List of arguments
-///
-/// @example scss - Usage
-/// .element {
-/// @include border-width(1em null 20px);
-/// }
-///
-/// @example css - CSS Output
-/// .element {
-/// border-bottom-width: 20px;
-/// border-top-width: 1em;
-/// }
-///
-/// @require {mixin} directional-property
-///
-/// @output `border-width`
-
-@mixin border-width($vals...) {
- @include directional-property(border, width, $vals...);
-}
diff --git a/html_orig/sass/lib/bourbon/addons/_buttons.scss b/html_orig/sass/lib/bourbon/addons/_buttons.scss
deleted file mode 100755
index debeabc..0000000
--- a/html_orig/sass/lib/bourbon/addons/_buttons.scss
+++ /dev/null
@@ -1,64 +0,0 @@
-@charset "UTF-8";
-
-/// Generates variables for all buttons. Please note that you must use interpolation on the variable: `#{$all-buttons}`.
-///
-/// @example scss - Usage
-/// #{$all-buttons} {
-/// background-color: #f00;
-/// }
-///
-/// #{$all-buttons-focus},
-/// #{$all-buttons-hover} {
-/// background-color: #0f0;
-/// }
-///
-/// #{$all-buttons-active} {
-/// background-color: #00f;
-/// }
-///
-/// @example css - CSS Output
-/// button,
-/// input[type="button"],
-/// input[type="reset"],
-/// input[type="submit"] {
-/// background-color: #f00;
-/// }
-///
-/// button:focus,
-/// input[type="button"]:focus,
-/// input[type="reset"]:focus,
-/// input[type="submit"]:focus,
-/// button:hover,
-/// input[type="button"]:hover,
-/// input[type="reset"]:hover,
-/// input[type="submit"]:hover {
-/// background-color: #0f0;
-/// }
-///
-/// button:active,
-/// input[type="button"]:active,
-/// input[type="reset"]:active,
-/// input[type="submit"]:active {
-/// background-color: #00f;
-/// }
-///
-/// @require assign-inputs
-///
-/// @type List
-///
-/// @todo Remove double assigned variables (Lines 59–62) in v5.0.0
-
-$buttons-list: 'button',
- 'input[type="button"]',
- 'input[type="reset"]',
- 'input[type="submit"]';
-
-$all-buttons: assign-inputs($buttons-list);
-$all-buttons-active: assign-inputs($buttons-list, active);
-$all-buttons-focus: assign-inputs($buttons-list, focus);
-$all-buttons-hover: assign-inputs($buttons-list, hover);
-
-$all-button-inputs: $all-buttons;
-$all-button-inputs-active: $all-buttons-active;
-$all-button-inputs-focus: $all-buttons-focus;
-$all-button-inputs-hover: $all-buttons-hover;
diff --git a/html_orig/sass/lib/bourbon/addons/_clearfix.scss b/html_orig/sass/lib/bourbon/addons/_clearfix.scss
deleted file mode 100755
index 11313d6..0000000
--- a/html_orig/sass/lib/bourbon/addons/_clearfix.scss
+++ /dev/null
@@ -1,25 +0,0 @@
-@charset "UTF-8";
-
-/// Provides an easy way to include a clearfix for containing floats.
-///
-/// @link http://cssmojo.com/latest_new_clearfix_so_far/
-///
-/// @example scss - Usage
-/// .element {
-/// @include clearfix;
-/// }
-///
-/// @example css - CSS Output
-/// .element::after {
-/// clear: both;
-/// content: "";
-/// display: table;
-/// }
-
-@mixin clearfix {
- &::after {
- clear: both;
- content: "";
- display: table;
- }
-}
diff --git a/html_orig/sass/lib/bourbon/addons/_ellipsis.scss b/html_orig/sass/lib/bourbon/addons/_ellipsis.scss
deleted file mode 100755
index a367f65..0000000
--- a/html_orig/sass/lib/bourbon/addons/_ellipsis.scss
+++ /dev/null
@@ -1,30 +0,0 @@
-@charset "UTF-8";
-
-/// Truncates text and adds an ellipsis to represent overflow.
-///
-/// @param {Number} $width [100%]
-/// Max-width for the string to respect before being truncated
-///
-/// @example scss - Usage
-/// .element {
-/// @include ellipsis;
-/// }
-///
-/// @example css - CSS Output
-/// .element {
-/// display: inline-block;
-/// max-width: 100%;
-/// overflow: hidden;
-/// text-overflow: ellipsis;
-/// white-space: nowrap;
-/// word-wrap: normal;
-/// }
-
-@mixin ellipsis($width: 100%) {
- display: inline-block;
- max-width: $width;
- overflow: hidden;
- text-overflow: ellipsis;
- white-space: nowrap;
- word-wrap: normal;
-}
diff --git a/html_orig/sass/lib/bourbon/addons/_font-stacks.scss b/html_orig/sass/lib/bourbon/addons/_font-stacks.scss
deleted file mode 100755
index 57128f4..0000000
--- a/html_orig/sass/lib/bourbon/addons/_font-stacks.scss
+++ /dev/null
@@ -1,31 +0,0 @@
-@charset "UTF-8";
-
-/// Georgia font stack.
-///
-/// @type List
-
-$georgia: "Georgia", "Cambria", "Times New Roman", "Times", serif;
-
-/// Helvetica font stack.
-///
-/// @type List
-
-$helvetica: "Helvetica Neue", "Helvetica", "Roboto", "Arial", sans-serif;
-
-/// Lucida Grande font stack.
-///
-/// @type List
-
-$lucida-grande: "Lucida Grande", "Tahoma", "Verdana", "Arial", sans-serif;
-
-/// Monospace font stack.
-///
-/// @type List
-
-$monospace: "Bitstream Vera Sans Mono", "Consolas", "Courier", monospace;
-
-/// Verdana font stack.
-///
-/// @type List
-
-$verdana: "Verdana", "Geneva", sans-serif;
diff --git a/html_orig/sass/lib/bourbon/addons/_hide-text.scss b/html_orig/sass/lib/bourbon/addons/_hide-text.scss
deleted file mode 100755
index 4caf20e..0000000
--- a/html_orig/sass/lib/bourbon/addons/_hide-text.scss
+++ /dev/null
@@ -1,27 +0,0 @@
-/// Hides the text in an element, commonly used to show an image. Some elements will need block-level styles applied.
-///
-/// @link http://zeldman.com/2012/03/01/replacing-the-9999px-hack-new-image-replacement
-///
-/// @example scss - Usage
-/// .element {
-/// @include hide-text;
-/// }
-///
-/// @example css - CSS Output
-/// .element {
-/// overflow: hidden;
-/// text-indent: 101%;
-/// white-space: nowrap;
-/// }
-///
-/// @todo Remove height argument in v5.0.0
-
-@mixin hide-text($height: null) {
- overflow: hidden;
- text-indent: 101%;
- white-space: nowrap;
-
- @if $height {
- @warn "The `hide-text` mixin has changed and no longer requires a height. The height argument will no longer be accepted in v5.0.0";
- }
-}
diff --git a/html_orig/sass/lib/bourbon/addons/_margin.scss b/html_orig/sass/lib/bourbon/addons/_margin.scss
deleted file mode 100755
index 674f4e5..0000000
--- a/html_orig/sass/lib/bourbon/addons/_margin.scss
+++ /dev/null
@@ -1,26 +0,0 @@
-@charset "UTF-8";
-
-/// Provides a quick method for targeting `margin` on specific sides of a box. Use a `null` value to “skip” a side.
-///
-/// @param {Arglist} $vals
-/// List of arguments
-///
-/// @example scss - Usage
-/// .element {
-/// @include margin(null 10px 3em 20vh);
-/// }
-///
-/// @example css - CSS Output
-/// .element {
-/// margin-bottom: 3em;
-/// margin-left: 20vh;
-/// margin-right: 10px;
-/// }
-///
-/// @require {mixin} directional-property
-///
-/// @output `margin`
-
-@mixin margin($vals...) {
- @include directional-property(margin, false, $vals...);
-}
diff --git a/html_orig/sass/lib/bourbon/addons/_padding.scss b/html_orig/sass/lib/bourbon/addons/_padding.scss
deleted file mode 100755
index 40a5f00..0000000
--- a/html_orig/sass/lib/bourbon/addons/_padding.scss
+++ /dev/null
@@ -1,26 +0,0 @@
-@charset "UTF-8";
-
-/// Provides a quick method for targeting `padding` on specific sides of a box. Use a `null` value to “skip” a side.
-///
-/// @param {Arglist} $vals
-/// List of arguments
-///
-/// @example scss - Usage
-/// .element {
-/// @include padding(12vh null 10px 5%);
-/// }
-///
-/// @example css - CSS Output
-/// .element {
-/// padding-bottom: 10px;
-/// padding-left: 5%;
-/// padding-top: 12vh;
-/// }
-///
-/// @require {mixin} directional-property
-///
-/// @output `padding`
-
-@mixin padding($vals...) {
- @include directional-property(padding, false, $vals...);
-}
diff --git a/html_orig/sass/lib/bourbon/addons/_position.scss b/html_orig/sass/lib/bourbon/addons/_position.scss
deleted file mode 100755
index e460f3f..0000000
--- a/html_orig/sass/lib/bourbon/addons/_position.scss
+++ /dev/null
@@ -1,48 +0,0 @@
-@charset "UTF-8";
-
-/// Provides a quick method for setting an element’s position. Use a `null` value to “skip” a side.
-///
-/// @param {Position} $position [relative]
-/// A CSS position value
-///
-/// @param {Arglist} $coordinates [null null null null]
-/// List of values that correspond to the 4-value syntax for the edges of a box
-///
-/// @example scss - Usage
-/// .element {
-/// @include position(absolute, 0 null null 10em);
-/// }
-///
-/// @example css - CSS Output
-/// .element {
-/// left: 10em;
-/// position: absolute;
-/// top: 0;
-/// }
-///
-/// @require {function} is-length
-/// @require {function} unpack
-
-@mixin position($position: relative, $coordinates: null null null null) {
- @if type-of($position) == list {
- $coordinates: $position;
- $position: relative;
- }
-
- $coordinates: unpack($coordinates);
-
- $offsets: (
- top: nth($coordinates, 1),
- right: nth($coordinates, 2),
- bottom: nth($coordinates, 3),
- left: nth($coordinates, 4)
- );
-
- position: $position;
-
- @each $offset, $value in $offsets {
- @if is-length($value) {
- #{$offset}: $value;
- }
- }
-}
diff --git a/html_orig/sass/lib/bourbon/addons/_prefixer.scss b/html_orig/sass/lib/bourbon/addons/_prefixer.scss
deleted file mode 100755
index 2b6f731..0000000
--- a/html_orig/sass/lib/bourbon/addons/_prefixer.scss
+++ /dev/null
@@ -1,66 +0,0 @@
-@charset "UTF-8";
-
-/// A mixin for generating vendor prefixes on non-standardized properties.
-///
-/// @param {String} $property
-/// Property to prefix
-///
-/// @param {*} $value
-/// Value to use
-///
-/// @param {List} $prefixes
-/// Prefixes to define
-///
-/// @example scss - Usage
-/// .element {
-/// @include prefixer(border-radius, 10px, webkit ms spec);
-/// }
-///
-/// @example css - CSS Output
-/// .element {
-/// -webkit-border-radius: 10px;
-/// -moz-border-radius: 10px;
-/// border-radius: 10px;
-/// }
-///
-/// @require {variable} $prefix-for-webkit
-/// @require {variable} $prefix-for-mozilla
-/// @require {variable} $prefix-for-microsoft
-/// @require {variable} $prefix-for-opera
-/// @require {variable} $prefix-for-spec
-
-@mixin prefixer($property, $value, $prefixes) {
- @each $prefix in $prefixes {
- @if $prefix == webkit {
- @if $prefix-for-webkit {
- -webkit-#{$property}: $value;
- }
- } @else if $prefix == moz {
- @if $prefix-for-mozilla {
- -moz-#{$property}: $value;
- }
- } @else if $prefix == ms {
- @if $prefix-for-microsoft {
- -ms-#{$property}: $value;
- }
- } @else if $prefix == o {
- @if $prefix-for-opera {
- -o-#{$property}: $value;
- }
- } @else if $prefix == spec {
- @if $prefix-for-spec {
- #{$property}: $value;
- }
- } @else {
- @warn "Unrecognized prefix: #{$prefix}";
- }
- }
-}
-
-@mixin disable-prefix-for-all() {
- $prefix-for-webkit: false !global;
- $prefix-for-mozilla: false !global;
- $prefix-for-microsoft: false !global;
- $prefix-for-opera: false !global;
- $prefix-for-spec: false !global;
-}
diff --git a/html_orig/sass/lib/bourbon/addons/_retina-image.scss b/html_orig/sass/lib/bourbon/addons/_retina-image.scss
deleted file mode 100755
index 7febbd7..0000000
--- a/html_orig/sass/lib/bourbon/addons/_retina-image.scss
+++ /dev/null
@@ -1,25 +0,0 @@
-@mixin retina-image($filename, $background-size, $extension: png, $retina-filename: null, $retina-suffix: _2x, $asset-pipeline: $asset-pipeline) {
- @if $asset-pipeline {
- background-image: image-url("#{$filename}.#{$extension}");
- } @else {
- background-image: url("#{$filename}.#{$extension}");
- }
-
- @include hidpi {
- @if $asset-pipeline {
- @if $retina-filename {
- background-image: image-url("#{$retina-filename}.#{$extension}");
- } @else {
- background-image: image-url("#{$filename}#{$retina-suffix}.#{$extension}");
- }
- } @else {
- @if $retina-filename {
- background-image: url("#{$retina-filename}.#{$extension}");
- } @else {
- background-image: url("#{$filename}#{$retina-suffix}.#{$extension}");
- }
- }
-
- background-size: $background-size;
- }
-}
diff --git a/html_orig/sass/lib/bourbon/addons/_size.scss b/html_orig/sass/lib/bourbon/addons/_size.scss
deleted file mode 100755
index a2992a3..0000000
--- a/html_orig/sass/lib/bourbon/addons/_size.scss
+++ /dev/null
@@ -1,51 +0,0 @@
-@charset "UTF-8";
-
-/// Sets the `width` and `height` of the element.
-///
-/// @param {List} $size
-/// A list of at most 2 size values.
-///
-/// If there is only a single value in `$size` it is used for both width and height. All units are supported.
-///
-/// @example scss - Usage
-/// .first-element {
-/// @include size(2em);
-/// }
-///
-/// .second-element {
-/// @include size(auto 10em);
-/// }
-///
-/// @example css - CSS Output
-/// .first-element {
-/// width: 2em;
-/// height: 2em;
-/// }
-///
-/// .second-element {
-/// width: auto;
-/// height: 10em;
-/// }
-///
-/// @todo Refactor in 5.0.0 to use a comma-separated argument
-
-@mixin size($value) {
- $width: nth($value, 1);
- $height: $width;
-
- @if length($value) > 1 {
- $height: nth($value, 2);
- }
-
- @if is-size($height) {
- height: $height;
- } @else {
- @warn "`#{$height}` is not a valid length for the `$height` parameter in the `size` mixin.";
- }
-
- @if is-size($width) {
- width: $width;
- } @else {
- @warn "`#{$width}` is not a valid length for the `$width` parameter in the `size` mixin.";
- }
-}
diff --git a/html_orig/sass/lib/bourbon/addons/_text-inputs.scss b/html_orig/sass/lib/bourbon/addons/_text-inputs.scss
deleted file mode 100755
index df0967f..0000000
--- a/html_orig/sass/lib/bourbon/addons/_text-inputs.scss
+++ /dev/null
@@ -1,113 +0,0 @@
-@charset "UTF-8";
-
-/// Generates variables for all text-based inputs. Please note that you must use interpolation on the variable: `#{$all-text-inputs}`.
-///
-/// @example scss - Usage
-/// #{$all-text-inputs} {
-/// border: 1px solid #f00;
-/// }
-///
-/// #{$all-text-inputs-focus},
-/// #{$all-text-inputs-hover} {
-/// border: 1px solid #0f0;
-/// }
-///
-/// #{$all-text-inputs-active} {
-/// border: 1px solid #00f;
-/// }
-///
-/// @example css - CSS Output
-/// input[type="color"],
-/// input[type="date"],
-/// input[type="datetime"],
-/// input[type="datetime-local"],
-/// input[type="email"],
-/// input[type="month"],
-/// input[type="number"],
-/// input[type="password"],
-/// input[type="search"],
-/// input[type="tel"],
-/// input[type="text"],
-/// input[type="time"],
-/// input[type="url"],
-/// input[type="week"],
-/// textarea {
-/// border: 1px solid #f00;
-/// }
-///
-/// input[type="color"]:focus,
-/// input[type="date"]:focus,
-/// input[type="datetime"]:focus,
-/// input[type="datetime-local"]:focus,
-/// input[type="email"]:focus,
-/// input[type="month"]:focus,
-/// input[type="number"]:focus,
-/// input[type="password"]:focus,
-/// input[type="search"]:focus,
-/// input[type="tel"]:focus,
-/// input[type="text"]:focus,
-/// input[type="time"]:focus,
-/// input[type="url"]:focus,
-/// input[type="week"]:focus,
-/// textarea:focus,
-/// input[type="color"]:hover,
-/// input[type="date"]:hover,
-/// input[type="datetime"]:hover,
-/// input[type="datetime-local"]:hover,
-/// input[type="email"]:hover,
-/// input[type="month"]:hover,
-/// input[type="number"]:hover,
-/// input[type="password"]:hover,
-/// input[type="search"]:hover,
-/// input[type="tel"]:hover,
-/// input[type="text"]:hover,
-/// input[type="time"]:hover,
-/// input[type="url"]:hover,
-/// input[type="week"]:hover,
-/// textarea:hover {
-/// border: 1px solid #0f0;
-/// }
-///
-/// input[type="color"]:active,
-/// input[type="date"]:active,
-/// input[type="datetime"]:active,
-/// input[type="datetime-local"]:active,
-/// input[type="email"]:active,
-/// input[type="month"]:active,
-/// input[type="number"]:active,
-/// input[type="password"]:active,
-/// input[type="search"]:active,
-/// input[type="tel"]:active,
-/// input[type="text"]:active,
-/// input[type="time"]:active,
-/// input[type="url"]:active,
-/// input[type="week"]:active,
-/// textarea:active {
-/// border: 1px solid #00f;
-/// }
-///
-/// @require assign-inputs
-///
-/// @type List
-
-$text-inputs-list: //'input[type="color"]',
- //'input[type="date"]',
- //'input[type="datetime"]',
- //'input[type="datetime-local"]',
- //'input[type="email"]',
- //'input[type="month"]',
- 'input[type="number"]',
- 'input[type="password"]',
- //'input[type="search"]',
- //'input[type="tel"]',
- 'input[type="text"]',
- //'input[type="time"]',
- //'input[type="url"]',
- //'input[type="week"]',
- //'input:not([type])',
- 'textarea';
-
-$all-text-inputs: assign-inputs($text-inputs-list);
-$all-text-inputs-active: assign-inputs($text-inputs-list, active);
-$all-text-inputs-focus: assign-inputs($text-inputs-list, focus);
-$all-text-inputs-hover: assign-inputs($text-inputs-list, hover);
diff --git a/html_orig/sass/lib/bourbon/addons/_timing-functions.scss b/html_orig/sass/lib/bourbon/addons/_timing-functions.scss
deleted file mode 100755
index 20e5f1d..0000000
--- a/html_orig/sass/lib/bourbon/addons/_timing-functions.scss
+++ /dev/null
@@ -1,34 +0,0 @@
-@charset "UTF-8";
-
-/// CSS cubic-bezier timing functions. Timing functions courtesy of jquery.easie (github.com/jaukia/easie)
-///
-/// Timing functions are the same as demoed here: http://jqueryui.com/resources/demos/effect/easing.html
-///
-/// @type cubic-bezier
-
-$ease-in-quad: cubic-bezier(0.550, 0.085, 0.680, 0.530);
-$ease-in-cubic: cubic-bezier(0.550, 0.055, 0.675, 0.190);
-$ease-in-quart: cubic-bezier(0.895, 0.030, 0.685, 0.220);
-$ease-in-quint: cubic-bezier(0.755, 0.050, 0.855, 0.060);
-$ease-in-sine: cubic-bezier(0.470, 0.000, 0.745, 0.715);
-$ease-in-expo: cubic-bezier(0.950, 0.050, 0.795, 0.035);
-$ease-in-circ: cubic-bezier(0.600, 0.040, 0.980, 0.335);
-$ease-in-back: cubic-bezier(0.600, -0.280, 0.735, 0.045);
-
-$ease-out-quad: cubic-bezier(0.250, 0.460, 0.450, 0.940);
-$ease-out-cubic: cubic-bezier(0.215, 0.610, 0.355, 1.000);
-$ease-out-quart: cubic-bezier(0.165, 0.840, 0.440, 1.000);
-$ease-out-quint: cubic-bezier(0.230, 1.000, 0.320, 1.000);
-$ease-out-sine: cubic-bezier(0.390, 0.575, 0.565, 1.000);
-$ease-out-expo: cubic-bezier(0.190, 1.000, 0.220, 1.000);
-$ease-out-circ: cubic-bezier(0.075, 0.820, 0.165, 1.000);
-$ease-out-back: cubic-bezier(0.175, 0.885, 0.320, 1.275);
-
-$ease-in-out-quad: cubic-bezier(0.455, 0.030, 0.515, 0.955);
-$ease-in-out-cubic: cubic-bezier(0.645, 0.045, 0.355, 1.000);
-$ease-in-out-quart: cubic-bezier(0.770, 0.000, 0.175, 1.000);
-$ease-in-out-quint: cubic-bezier(0.860, 0.000, 0.070, 1.000);
-$ease-in-out-sine: cubic-bezier(0.445, 0.050, 0.550, 0.950);
-$ease-in-out-expo: cubic-bezier(1.000, 0.000, 0.000, 1.000);
-$ease-in-out-circ: cubic-bezier(0.785, 0.135, 0.150, 0.860);
-$ease-in-out-back: cubic-bezier(0.680, -0.550, 0.265, 1.550);
diff --git a/html_orig/sass/lib/bourbon/addons/_triangle.scss b/html_orig/sass/lib/bourbon/addons/_triangle.scss
deleted file mode 100755
index 8a1ed9c..0000000
--- a/html_orig/sass/lib/bourbon/addons/_triangle.scss
+++ /dev/null
@@ -1,63 +0,0 @@
-@mixin triangle($size, $color, $direction) {
- $width: nth($size, 1);
- $height: nth($size, length($size));
- $foreground-color: nth($color, 1);
- $background-color: if(length($color) == 2, nth($color, 2), transparent);
- height: 0;
- width: 0;
-
- @if ($direction == up) or ($direction == down) or ($direction == right) or ($direction == left) {
- $width: $width / 2;
- $height: if(length($size) > 1, $height, $height/2);
-
- @if $direction == up {
- border-bottom: $height solid $foreground-color;
- border-left: $width solid $background-color;
- border-right: $width solid $background-color;
- } @else if $direction == right {
- border-bottom: $width solid $background-color;
- border-left: $height solid $foreground-color;
- border-top: $width solid $background-color;
- } @else if $direction == down {
- border-left: $width solid $background-color;
- border-right: $width solid $background-color;
- border-top: $height solid $foreground-color;
- } @else if $direction == left {
- border-bottom: $width solid $background-color;
- border-right: $height solid $foreground-color;
- border-top: $width solid $background-color;
- }
- } @else if ($direction == up-right) or ($direction == up-left) {
- border-top: $height solid $foreground-color;
-
- @if $direction == up-right {
- border-left: $width solid $background-color;
- } @else if $direction == up-left {
- border-right: $width solid $background-color;
- }
- } @else if ($direction == down-right) or ($direction == down-left) {
- border-bottom: $height solid $foreground-color;
-
- @if $direction == down-right {
- border-left: $width solid $background-color;
- } @else if $direction == down-left {
- border-right: $width solid $background-color;
- }
- } @else if ($direction == inset-up) {
- border-color: $background-color $background-color $foreground-color;
- border-style: solid;
- border-width: $height $width;
- } @else if ($direction == inset-down) {
- border-color: $foreground-color $background-color $background-color;
- border-style: solid;
- border-width: $height $width;
- } @else if ($direction == inset-right) {
- border-color: $background-color $background-color $background-color $foreground-color;
- border-style: solid;
- border-width: $width $height;
- } @else if ($direction == inset-left) {
- border-color: $background-color $foreground-color $background-color $background-color;
- border-style: solid;
- border-width: $width $height;
- }
-}
diff --git a/html_orig/sass/lib/bourbon/addons/_word-wrap.scss b/html_orig/sass/lib/bourbon/addons/_word-wrap.scss
deleted file mode 100755
index 64856a9..0000000
--- a/html_orig/sass/lib/bourbon/addons/_word-wrap.scss
+++ /dev/null
@@ -1,29 +0,0 @@
-@charset "UTF-8";
-
-/// Provides an easy way to change the `word-wrap` property.
-///
-/// @param {String} $wrap [break-word]
-/// Value for the `word-break` property.
-///
-/// @example scss - Usage
-/// .wrapper {
-/// @include word-wrap(break-word);
-/// }
-///
-/// @example css - CSS Output
-/// .wrapper {
-/// overflow-wrap: break-word;
-/// word-break: break-all;
-/// word-wrap: break-word;
-/// }
-
-@mixin word-wrap($wrap: break-word) {
- overflow-wrap: $wrap;
- word-wrap: $wrap;
-
- @if $wrap == break-word {
- word-break: break-all;
- } @else {
- word-break: $wrap;
- }
-}
diff --git a/html_orig/sass/lib/bourbon/css3/_animation.scss b/html_orig/sass/lib/bourbon/css3/_animation.scss
deleted file mode 100755
index aac675f..0000000
--- a/html_orig/sass/lib/bourbon/css3/_animation.scss
+++ /dev/null
@@ -1,43 +0,0 @@
-// http://www.w3.org/TR/css3-animations/#the-animation-name-property-
-// Each of these mixins support comma separated lists of values, which allows different transitions for individual properties to be described in a single style rule. Each value in the list corresponds to the value at that same position in the other properties.
-
-@mixin animation($animations...) {
- @include prefixer(animation, $animations, webkit moz spec);
-}
-
-@mixin animation-name($names...) {
- @include prefixer(animation-name, $names, webkit moz spec);
-}
-
-@mixin animation-duration($times...) {
- @include prefixer(animation-duration, $times, webkit moz spec);
-}
-
-@mixin animation-timing-function($motions...) {
- // ease | linear | ease-in | ease-out | ease-in-out
- @include prefixer(animation-timing-function, $motions, webkit moz spec);
-}
-
-@mixin animation-iteration-count($values...) {
- // infinite |
- @include prefixer(animation-iteration-count, $values, webkit moz spec);
-}
-
-@mixin animation-direction($directions...) {
- // normal | alternate
- @include prefixer(animation-direction, $directions, webkit moz spec);
-}
-
-@mixin animation-play-state($states...) {
- // running | paused
- @include prefixer(animation-play-state, $states, webkit moz spec);
-}
-
-@mixin animation-delay($times...) {
- @include prefixer(animation-delay, $times, webkit moz spec);
-}
-
-@mixin animation-fill-mode($modes...) {
- // none | forwards | backwards | both
- @include prefixer(animation-fill-mode, $modes, webkit moz spec);
-}
diff --git a/html_orig/sass/lib/bourbon/css3/_appearance.scss b/html_orig/sass/lib/bourbon/css3/_appearance.scss
deleted file mode 100755
index abddc02..0000000
--- a/html_orig/sass/lib/bourbon/css3/_appearance.scss
+++ /dev/null
@@ -1,3 +0,0 @@
-@mixin appearance($value) {
- @include prefixer(appearance, $value, webkit moz ms o spec);
-}
diff --git a/html_orig/sass/lib/bourbon/css3/_backface-visibility.scss b/html_orig/sass/lib/bourbon/css3/_backface-visibility.scss
deleted file mode 100755
index fc68e2d..0000000
--- a/html_orig/sass/lib/bourbon/css3/_backface-visibility.scss
+++ /dev/null
@@ -1,3 +0,0 @@
-@mixin backface-visibility($visibility) {
- @include prefixer(backface-visibility, $visibility, webkit spec);
-}
diff --git a/html_orig/sass/lib/bourbon/css3/_background-image.scss b/html_orig/sass/lib/bourbon/css3/_background-image.scss
deleted file mode 100755
index 6ed19ab..0000000
--- a/html_orig/sass/lib/bourbon/css3/_background-image.scss
+++ /dev/null
@@ -1,42 +0,0 @@
-//************************************************************************//
-// Background-image property for adding multiple background images with
-// gradients, or for stringing multiple gradients together.
-//************************************************************************//
-
-@mixin background-image($images...) {
- $webkit-images: ();
- $spec-images: ();
-
- @each $image in $images {
- $webkit-image: ();
- $spec-image: ();
-
- @if (type-of($image) == string) {
- $url-str: str-slice($image, 1, 3);
- $gradient-type: str-slice($image, 1, 6);
-
- @if $url-str == "url" {
- $webkit-image: $image;
- $spec-image: $image;
- }
-
- @else if $gradient-type == "linear" {
- $gradients: _linear-gradient-parser($image);
- $webkit-image: map-get($gradients, webkit-image);
- $spec-image: map-get($gradients, spec-image);
- }
-
- @else if $gradient-type == "radial" {
- $gradients: _radial-gradient-parser($image);
- $webkit-image: map-get($gradients, webkit-image);
- $spec-image: map-get($gradients, spec-image);
- }
- }
-
- $webkit-images: append($webkit-images, $webkit-image, comma);
- $spec-images: append($spec-images, $spec-image, comma);
- }
-
- background-image: $webkit-images;
- background-image: $spec-images;
-}
diff --git a/html_orig/sass/lib/bourbon/css3/_background.scss b/html_orig/sass/lib/bourbon/css3/_background.scss
deleted file mode 100755
index 019db0e..0000000
--- a/html_orig/sass/lib/bourbon/css3/_background.scss
+++ /dev/null
@@ -1,55 +0,0 @@
-//************************************************************************//
-// Background property for adding multiple backgrounds using shorthand
-// notation.
-//************************************************************************//
-
-@mixin background($backgrounds...) {
- $webkit-backgrounds: ();
- $spec-backgrounds: ();
-
- @each $background in $backgrounds {
- $webkit-background: ();
- $spec-background: ();
- $background-type: type-of($background);
-
- @if $background-type == string or $background-type == list {
- $background-str: if($background-type == list, nth($background, 1), $background);
-
- $url-str: str-slice($background-str, 1, 3);
- $gradient-type: str-slice($background-str, 1, 6);
-
- @if $url-str == "url" {
- $webkit-background: $background;
- $spec-background: $background;
- }
-
- @else if $gradient-type == "linear" {
- $gradients: _linear-gradient-parser("#{$background}");
- $webkit-background: map-get($gradients, webkit-image);
- $spec-background: map-get($gradients, spec-image);
- }
-
- @else if $gradient-type == "radial" {
- $gradients: _radial-gradient-parser("#{$background}");
- $webkit-background: map-get($gradients, webkit-image);
- $spec-background: map-get($gradients, spec-image);
- }
-
- @else {
- $webkit-background: $background;
- $spec-background: $background;
- }
- }
-
- @else {
- $webkit-background: $background;
- $spec-background: $background;
- }
-
- $webkit-backgrounds: append($webkit-backgrounds, $webkit-background, comma);
- $spec-backgrounds: append($spec-backgrounds, $spec-background, comma);
- }
-
- background: $webkit-backgrounds;
- background: $spec-backgrounds;
-}
diff --git a/html_orig/sass/lib/bourbon/css3/_border-image.scss b/html_orig/sass/lib/bourbon/css3/_border-image.scss
deleted file mode 100755
index cf568ce..0000000
--- a/html_orig/sass/lib/bourbon/css3/_border-image.scss
+++ /dev/null
@@ -1,59 +0,0 @@
-@mixin border-image($borders...) {
- $webkit-borders: ();
- $spec-borders: ();
-
- @each $border in $borders {
- $webkit-border: ();
- $spec-border: ();
- $border-type: type-of($border);
-
- @if $border-type == string or list {
- $border-str: if($border-type == list, nth($border, 1), $border);
-
- $url-str: str-slice($border-str, 1, 3);
- $gradient-type: str-slice($border-str, 1, 6);
-
- @if $url-str == "url" {
- $webkit-border: $border;
- $spec-border: $border;
- }
-
- @else if $gradient-type == "linear" {
- $gradients: _linear-gradient-parser("#{$border}");
- $webkit-border: map-get($gradients, webkit-image);
- $spec-border: map-get($gradients, spec-image);
- }
-
- @else if $gradient-type == "radial" {
- $gradients: _radial-gradient-parser("#{$border}");
- $webkit-border: map-get($gradients, webkit-image);
- $spec-border: map-get($gradients, spec-image);
- }
-
- @else {
- $webkit-border: $border;
- $spec-border: $border;
- }
- }
-
- @else {
- $webkit-border: $border;
- $spec-border: $border;
- }
-
- $webkit-borders: append($webkit-borders, $webkit-border, comma);
- $spec-borders: append($spec-borders, $spec-border, comma);
- }
-
- -webkit-border-image: $webkit-borders;
- border-image: $spec-borders;
- border-style: solid;
-}
-
-//Examples:
-// @include border-image(url("image.png"));
-// @include border-image(url("image.png") 20 stretch);
-// @include border-image(linear-gradient(45deg, orange, yellow));
-// @include border-image(linear-gradient(45deg, orange, yellow) stretch);
-// @include border-image(linear-gradient(45deg, orange, yellow) 20 30 40 50 stretch round);
-// @include border-image(radial-gradient(top, cover, orange, yellow, orange));
diff --git a/html_orig/sass/lib/bourbon/css3/_calc.scss b/html_orig/sass/lib/bourbon/css3/_calc.scss
deleted file mode 100755
index 0bfc738..0000000
--- a/html_orig/sass/lib/bourbon/css3/_calc.scss
+++ /dev/null
@@ -1,4 +0,0 @@
-@mixin calc($property, $value) {
- #{$property}: -webkit-calc(#{$value});
- #{$property}: calc(#{$value});
-}
diff --git a/html_orig/sass/lib/bourbon/css3/_columns.scss b/html_orig/sass/lib/bourbon/css3/_columns.scss
deleted file mode 100755
index 9611767..0000000
--- a/html_orig/sass/lib/bourbon/css3/_columns.scss
+++ /dev/null
@@ -1,47 +0,0 @@
-@mixin columns($arg: auto) {
- // ||
- @include prefixer(columns, $arg, webkit moz spec);
-}
-
-@mixin column-count($int: auto) {
- // auto || integer
- @include prefixer(column-count, $int, webkit moz spec);
-}
-
-@mixin column-gap($length: normal) {
- // normal || length
- @include prefixer(column-gap, $length, webkit moz spec);
-}
-
-@mixin column-fill($arg: auto) {
- // auto || length
- @include prefixer(column-fill, $arg, webkit moz spec);
-}
-
-@mixin column-rule($arg) {
- // || ||
- @include prefixer(column-rule, $arg, webkit moz spec);
-}
-
-@mixin column-rule-color($color) {
- @include prefixer(column-rule-color, $color, webkit moz spec);
-}
-
-@mixin column-rule-style($style: none) {
- // none | hidden | dashed | dotted | double | groove | inset | inset | outset | ridge | solid
- @include prefixer(column-rule-style, $style, webkit moz spec);
-}
-
-@mixin column-rule-width ($width: none) {
- @include prefixer(column-rule-width, $width, webkit moz spec);
-}
-
-@mixin column-span($arg: none) {
- // none || all
- @include prefixer(column-span, $arg, webkit moz spec);
-}
-
-@mixin column-width($length: auto) {
- // auto || length
- @include prefixer(column-width, $length, webkit moz spec);
-}
diff --git a/html_orig/sass/lib/bourbon/css3/_filter.scss b/html_orig/sass/lib/bourbon/css3/_filter.scss
deleted file mode 100755
index b8f8ffb..0000000
--- a/html_orig/sass/lib/bourbon/css3/_filter.scss
+++ /dev/null
@@ -1,4 +0,0 @@
-@mixin filter($function: none) {
- // [
- @include prefixer(perspective, $depth, webkit moz spec);
-}
-
-@mixin perspective-origin($value: 50% 50%) {
- @include prefixer(perspective-origin, $value, webkit moz spec);
-}
diff --git a/html_orig/sass/lib/bourbon/css3/_placeholder.scss b/html_orig/sass/lib/bourbon/css3/_placeholder.scss
deleted file mode 100755
index 5682fd0..0000000
--- a/html_orig/sass/lib/bourbon/css3/_placeholder.scss
+++ /dev/null
@@ -1,8 +0,0 @@
-@mixin placeholder {
- $placeholders: ":-webkit-input" ":-moz" "-moz" "-ms-input";
- @each $placeholder in $placeholders {
- &:#{$placeholder}-placeholder {
- @content;
- }
- }
-}
diff --git a/html_orig/sass/lib/bourbon/css3/_radial-gradient.scss b/html_orig/sass/lib/bourbon/css3/_radial-gradient.scss
deleted file mode 100755
index 8da076e..0000000
--- a/html_orig/sass/lib/bourbon/css3/_radial-gradient.scss
+++ /dev/null
@@ -1,39 +0,0 @@
-// Requires Sass 3.1+
-@mixin radial-gradient($g1, $g2,
- $g3: null, $g4: null,
- $g5: null, $g6: null,
- $g7: null, $g8: null,
- $g9: null, $g10: null,
- $pos: null,
- $shape-size: null,
- $fallback: null) {
-
- $data: _radial-arg-parser($g1, $g2, $pos, $shape-size);
- $g1: nth($data, 1);
- $g2: nth($data, 2);
- $pos: nth($data, 3);
- $shape-size: nth($data, 4);
-
- $full: $g1, $g2, $g3, $g4, $g5, $g6, $g7, $g8, $g9, $g10;
-
- // Strip deprecated cover/contain for spec
- $shape-size-spec: _shape-size-stripper($shape-size);
-
- // Set $g1 as the default fallback color
- $first-color: nth($full, 1);
- $fallback-color: nth($first-color, 1);
-
- @if (type-of($fallback) == color) or ($fallback == "transparent") {
- $fallback-color: $fallback;
- }
-
- // Add Commas and spaces
- $shape-size: if($shape-size, "#{$shape-size}, ", null);
- $pos: if($pos, "#{$pos}, ", null);
- $pos-spec: if($pos, "at #{$pos}", null);
- $shape-size-spec: if(($shape-size-spec != " ") and ($pos == null), "#{$shape-size-spec}, ", "#{$shape-size-spec} ");
-
- background-color: $fallback-color;
- background-image: -webkit-radial-gradient(unquote(#{$pos}#{$shape-size}#{$full}));
- background-image: unquote("radial-gradient(#{$shape-size-spec}#{$pos-spec}#{$full})");
-}
diff --git a/html_orig/sass/lib/bourbon/css3/_selection.scss b/html_orig/sass/lib/bourbon/css3/_selection.scss
deleted file mode 100755
index 23303ab..0000000
--- a/html_orig/sass/lib/bourbon/css3/_selection.scss
+++ /dev/null
@@ -1,42 +0,0 @@
-@charset "UTF-8";
-
-/// Outputs the spec and prefixed versions of the `::selection` pseudo-element.
-///
-/// @param {Bool} $current-selector [false]
-/// If set to `true`, it takes the current element into consideration.
-///
-/// @example scss - Usage
-/// .element {
-/// @include selection(true) {
-/// background-color: #ffbb52;
-/// }
-/// }
-///
-/// @example css - CSS Output
-/// .element::-moz-selection {
-/// background-color: #ffbb52;
-/// }
-///
-/// .element::selection {
-/// background-color: #ffbb52;
-/// }
-
-@mixin selection($current-selector: false) {
- @if $current-selector {
- &::-moz-selection {
- @content;
- }
-
- &::selection {
- @content;
- }
- } @else {
- ::-moz-selection {
- @content;
- }
-
- ::selection {
- @content;
- }
- }
-}
diff --git a/html_orig/sass/lib/bourbon/css3/_text-decoration.scss b/html_orig/sass/lib/bourbon/css3/_text-decoration.scss
deleted file mode 100755
index 9222746..0000000
--- a/html_orig/sass/lib/bourbon/css3/_text-decoration.scss
+++ /dev/null
@@ -1,19 +0,0 @@
-@mixin text-decoration($value) {
-// || ||
- @include prefixer(text-decoration, $value, moz);
-}
-
-@mixin text-decoration-line($line: none) {
-// none || underline || overline || line-through
- @include prefixer(text-decoration-line, $line, moz);
-}
-
-@mixin text-decoration-style($style: solid) {
-// solid || double || dotted || dashed || wavy
- @include prefixer(text-decoration-style, $style, moz webkit);
-}
-
-@mixin text-decoration-color($color: currentColor) {
-// currentColor ||
- @include prefixer(text-decoration-color, $color, moz);
-}
diff --git a/html_orig/sass/lib/bourbon/css3/_transform.scss b/html_orig/sass/lib/bourbon/css3/_transform.scss
deleted file mode 100755
index 8ee6509..0000000
--- a/html_orig/sass/lib/bourbon/css3/_transform.scss
+++ /dev/null
@@ -1,15 +0,0 @@
-@mixin transform($property: none) {
- // none |
- @include prefixer(transform, $property, webkit moz ms o spec);
-}
-
-@mixin transform-origin($axes: 50%) {
- // x-axis - left | center | right | length | %
- // y-axis - top | center | bottom | length | %
- // z-axis - length
- @include prefixer(transform-origin, $axes, webkit moz ms o spec);
-}
-
-@mixin transform-style($style: flat) {
- @include prefixer(transform-style, $style, webkit moz ms o spec);
-}
diff --git a/html_orig/sass/lib/bourbon/css3/_transition.scss b/html_orig/sass/lib/bourbon/css3/_transition.scss
deleted file mode 100755
index 3c785ed..0000000
--- a/html_orig/sass/lib/bourbon/css3/_transition.scss
+++ /dev/null
@@ -1,71 +0,0 @@
-// Shorthand mixin. Supports multiple parentheses-deliminated values for each variable.
-// Example: @include transition (all 2s ease-in-out);
-// @include transition (opacity 1s ease-in 2s, width 2s ease-out);
-// @include transition-property (transform, opacity);
-
-@mixin transition($properties...) {
- // Fix for vendor-prefix transform property
- $needs-prefixes: false;
- $webkit: ();
- $moz: ();
- $spec: ();
-
- // Create lists for vendor-prefixed transform
- @each $list in $properties {
- @if nth($list, 1) == "transform" {
- $needs-prefixes: true;
- $list1: -webkit-transform;
- $list2: -moz-transform;
- $list3: ();
-
- @each $var in $list {
- $list3: join($list3, $var);
-
- @if $var != "transform" {
- $list1: join($list1, $var);
- $list2: join($list2, $var);
- }
- }
-
- $webkit: append($webkit, $list1);
- $moz: append($moz, $list2);
- $spec: append($spec, $list3);
- } @else {
- $webkit: append($webkit, $list, comma);
- $moz: append($moz, $list, comma);
- $spec: append($spec, $list, comma);
- }
- }
-
- @if $needs-prefixes {
- -webkit-transition: $webkit;
- -moz-transition: $moz;
- transition: $spec;
- } @else {
- @if length($properties) >= 1 {
- @include prefixer(transition, $properties, webkit moz spec);
- } @else {
- $properties: all 0.15s ease-out 0s;
- @include prefixer(transition, $properties, webkit moz spec);
- }
- }
-}
-
-@mixin transition-property($properties...) {
- -webkit-transition-property: transition-property-names($properties, "webkit");
- -moz-transition-property: transition-property-names($properties, "moz");
- transition-property: transition-property-names($properties, false);
-}
-
-@mixin transition-duration($times...) {
- @include prefixer(transition-duration, $times, webkit moz spec);
-}
-
-@mixin transition-timing-function($motions...) {
- // ease | linear | ease-in | ease-out | ease-in-out | cubic-bezier()
- @include prefixer(transition-timing-function, $motions, webkit moz spec);
-}
-
-@mixin transition-delay($times...) {
- @include prefixer(transition-delay, $times, webkit moz spec);
-}
diff --git a/html_orig/sass/lib/bourbon/css3/_user-select.scss b/html_orig/sass/lib/bourbon/css3/_user-select.scss
deleted file mode 100755
index d4e5551..0000000
--- a/html_orig/sass/lib/bourbon/css3/_user-select.scss
+++ /dev/null
@@ -1,3 +0,0 @@
-@mixin user-select($value: none) {
- @include prefixer(user-select, $value, webkit moz ms spec);
-}
diff --git a/html_orig/sass/lib/bourbon/functions/_assign-inputs.scss b/html_orig/sass/lib/bourbon/functions/_assign-inputs.scss
deleted file mode 100755
index f8aba96..0000000
--- a/html_orig/sass/lib/bourbon/functions/_assign-inputs.scss
+++ /dev/null
@@ -1,11 +0,0 @@
-@function assign-inputs($inputs, $pseudo: null) {
- $list: ();
-
- @each $input in $inputs {
- $input: unquote($input);
- $input: if($pseudo, $input + ":" + $pseudo, $input);
- $list: append($list, $input, comma);
- }
-
- @return $list;
-}
diff --git a/html_orig/sass/lib/bourbon/functions/_contains-falsy.scss b/html_orig/sass/lib/bourbon/functions/_contains-falsy.scss
deleted file mode 100755
index c096fdb..0000000
--- a/html_orig/sass/lib/bourbon/functions/_contains-falsy.scss
+++ /dev/null
@@ -1,20 +0,0 @@
-@charset "UTF-8";
-
-/// Checks if a list does not contains a value.
-///
-/// @access private
-///
-/// @param {List} $list
-/// The list to check against.
-///
-/// @return {Bool}
-
-@function contains-falsy($list) {
- @each $item in $list {
- @if not $item {
- @return true;
- }
- }
-
- @return false;
-}
diff --git a/html_orig/sass/lib/bourbon/functions/_contains.scss b/html_orig/sass/lib/bourbon/functions/_contains.scss
deleted file mode 100755
index 3dec27d..0000000
--- a/html_orig/sass/lib/bourbon/functions/_contains.scss
+++ /dev/null
@@ -1,26 +0,0 @@
-@charset "UTF-8";
-
-/// Checks if a list contains a value(s).
-///
-/// @access private
-///
-/// @param {List} $list
-/// The list to check against.
-///
-/// @param {List} $values
-/// A single value or list of values to check for.
-///
-/// @example scss - Usage
-/// contains($list, $value)
-///
-/// @return {Bool}
-
-@function contains($list, $values...) {
- @each $value in $values {
- @if type-of(index($list, $value)) != "number" {
- @return false;
- }
- }
-
- @return true;
-}
diff --git a/html_orig/sass/lib/bourbon/functions/_is-length.scss b/html_orig/sass/lib/bourbon/functions/_is-length.scss
deleted file mode 100755
index 5826e78..0000000
--- a/html_orig/sass/lib/bourbon/functions/_is-length.scss
+++ /dev/null
@@ -1,11 +0,0 @@
-@charset "UTF-8";
-
-/// Checks for a valid CSS length.
-///
-/// @param {String} $value
-
-@function is-length($value) {
- @return type-of($value) != "null" and (str-slice($value + "", 1, 4) == "calc"
- or index(auto inherit initial 0, $value)
- or (type-of($value) == "number" and not(unitless($value))));
-}
diff --git a/html_orig/sass/lib/bourbon/functions/_is-light.scss b/html_orig/sass/lib/bourbon/functions/_is-light.scss
deleted file mode 100755
index 92d90ac..0000000
--- a/html_orig/sass/lib/bourbon/functions/_is-light.scss
+++ /dev/null
@@ -1,21 +0,0 @@
-@charset "UTF-8";
-
-/// Programatically determines whether a color is light or dark.
-///
-/// @link http://robots.thoughtbot.com/closer-look-color-lightness
-///
-/// @param {Color (Hex)} $color
-///
-/// @example scss - Usage
-/// is-light($color)
-///
-/// @return {Bool}
-
-@function is-light($hex-color) {
- $-local-red: red(rgba($hex-color, 1));
- $-local-green: green(rgba($hex-color, 1));
- $-local-blue: blue(rgba($hex-color, 1));
- $-local-lightness: ($-local-red * 0.2126 + $-local-green * 0.7152 + $-local-blue * 0.0722) / 255;
-
- @return $-local-lightness > 0.6;
-}
diff --git a/html_orig/sass/lib/bourbon/functions/_is-number.scss b/html_orig/sass/lib/bourbon/functions/_is-number.scss
deleted file mode 100755
index a64e0bf..0000000
--- a/html_orig/sass/lib/bourbon/functions/_is-number.scss
+++ /dev/null
@@ -1,11 +0,0 @@
-@charset "UTF-8";
-
-/// Checks for a valid number.
-///
-/// @param {Number} $value
-///
-/// @require {function} contains
-
-@function is-number($value) {
- @return contains("0" "1" "2" "3" "4" "5" "6" "7" "8" "9" 0 1 2 3 4 5 6 7 8 9, $value);
-}
diff --git a/html_orig/sass/lib/bourbon/functions/_is-size.scss b/html_orig/sass/lib/bourbon/functions/_is-size.scss
deleted file mode 100755
index 661789a..0000000
--- a/html_orig/sass/lib/bourbon/functions/_is-size.scss
+++ /dev/null
@@ -1,13 +0,0 @@
-@charset "UTF-8";
-
-/// Checks for a valid CSS size.
-///
-/// @param {String} $value
-///
-/// @require {function} contains
-/// @require {function} is-length
-
-@function is-size($value) {
- @return is-length($value)
- or contains("fill" "fit-content" "min-content" "max-content", $value);
-}
diff --git a/html_orig/sass/lib/bourbon/functions/_modular-scale.scss b/html_orig/sass/lib/bourbon/functions/_modular-scale.scss
deleted file mode 100755
index 20fa388..0000000
--- a/html_orig/sass/lib/bourbon/functions/_modular-scale.scss
+++ /dev/null
@@ -1,69 +0,0 @@
-// Scaling Variables
-$golden: 1.618;
-$minor-second: 1.067;
-$major-second: 1.125;
-$minor-third: 1.2;
-$major-third: 1.25;
-$perfect-fourth: 1.333;
-$augmented-fourth: 1.414;
-$perfect-fifth: 1.5;
-$minor-sixth: 1.6;
-$major-sixth: 1.667;
-$minor-seventh: 1.778;
-$major-seventh: 1.875;
-$octave: 2;
-$major-tenth: 2.5;
-$major-eleventh: 2.667;
-$major-twelfth: 3;
-$double-octave: 4;
-
-$modular-scale-ratio: $perfect-fourth !default;
-$modular-scale-base: em($em-base) !default;
-
-@function modular-scale($increment, $value: $modular-scale-base, $ratio: $modular-scale-ratio) {
- $v1: nth($value, 1);
- $v2: nth($value, length($value));
- $value: $v1;
-
- // scale $v2 to just above $v1
- @while $v2 > $v1 {
- $v2: ($v2 / $ratio); // will be off-by-1
- }
- @while $v2 < $v1 {
- $v2: ($v2 * $ratio); // will fix off-by-1
- }
-
- // check AFTER scaling $v2 to prevent double-counting corner-case
- $double-stranded: $v2 > $v1;
-
- @if $increment > 0 {
- @for $i from 1 through $increment {
- @if $double-stranded and ($v1 * $ratio) > $v2 {
- $value: $v2;
- $v2: ($v2 * $ratio);
- } @else {
- $v1: ($v1 * $ratio);
- $value: $v1;
- }
- }
- }
-
- @if $increment < 0 {
- // adjust $v2 to just below $v1
- @if $double-stranded {
- $v2: ($v2 / $ratio);
- }
-
- @for $i from $increment through -1 {
- @if $double-stranded and ($v1 / $ratio) < $v2 {
- $value: $v2;
- $v2: ($v2 / $ratio);
- } @else {
- $v1: ($v1 / $ratio);
- $value: $v1;
- }
- }
- }
-
- @return $value;
-}
diff --git a/html_orig/sass/lib/bourbon/functions/_px-to-em.scss b/html_orig/sass/lib/bourbon/functions/_px-to-em.scss
deleted file mode 100755
index ae81a44..0000000
--- a/html_orig/sass/lib/bourbon/functions/_px-to-em.scss
+++ /dev/null
@@ -1,13 +0,0 @@
-// Convert pixels to ems
-// eg. for a relational value of 12px write em(12) when the parent is 16px
-// if the parent is another value say 24px write em(12, 24)
-
-@function em($pxval, $base: $em-base) {
- @if not unitless($pxval) {
- $pxval: strip-units($pxval);
- }
- @if not unitless($base) {
- $base: strip-units($base);
- }
- @return ($pxval / $base) * 1em;
-}
diff --git a/html_orig/sass/lib/bourbon/functions/_px-to-rem.scss b/html_orig/sass/lib/bourbon/functions/_px-to-rem.scss
deleted file mode 100755
index 0ac941e..0000000
--- a/html_orig/sass/lib/bourbon/functions/_px-to-rem.scss
+++ /dev/null
@@ -1,15 +0,0 @@
-// Convert pixels to rems
-// eg. for a relational value of 12px write rem(12)
-// Assumes $em-base is the font-size of
-
-@function rem($pxval) {
- @if not unitless($pxval) {
- $pxval: strip-units($pxval);
- }
-
- $base: $em-base;
- @if not unitless($base) {
- $base: strip-units($base);
- }
- @return ($pxval / $base) * 1rem;
-}
diff --git a/html_orig/sass/lib/bourbon/functions/_shade.scss b/html_orig/sass/lib/bourbon/functions/_shade.scss
deleted file mode 100755
index 8aaf2c6..0000000
--- a/html_orig/sass/lib/bourbon/functions/_shade.scss
+++ /dev/null
@@ -1,24 +0,0 @@
-@charset "UTF-8";
-
-/// Mixes a color with black.
-///
-/// @param {Color} $color
-///
-/// @param {Number (Percentage)} $percent
-/// The amount of black to be mixed in.
-///
-/// @example scss - Usage
-/// .element {
-/// background-color: shade(#ffbb52, 60%);
-/// }
-///
-/// @example css - CSS Output
-/// .element {
-/// background-color: #664a20;
-/// }
-///
-/// @return {Color}
-
-@function shade($color, $percent) {
- @return mix(#000, $color, $percent);
-}
diff --git a/html_orig/sass/lib/bourbon/functions/_strip-units.scss b/html_orig/sass/lib/bourbon/functions/_strip-units.scss
deleted file mode 100755
index 6c5f3e8..0000000
--- a/html_orig/sass/lib/bourbon/functions/_strip-units.scss
+++ /dev/null
@@ -1,17 +0,0 @@
-@charset "UTF-8";
-
-/// Strips the unit from a number.
-///
-/// @param {Number (With Unit)} $value
-///
-/// @example scss - Usage
-/// $dimension: strip-units(10em);
-///
-/// @example css - CSS Output
-/// $dimension: 10;
-///
-/// @return {Number (Unitless)}
-
-@function strip-units($value) {
- @return ($value / ($value * 0 + 1));
-}
diff --git a/html_orig/sass/lib/bourbon/functions/_tint.scss b/html_orig/sass/lib/bourbon/functions/_tint.scss
deleted file mode 100755
index 2e33814..0000000
--- a/html_orig/sass/lib/bourbon/functions/_tint.scss
+++ /dev/null
@@ -1,24 +0,0 @@
-@charset "UTF-8";
-
-/// Mixes a color with white.
-///
-/// @param {Color} $color
-///
-/// @param {Number (Percentage)} $percent
-/// The amount of white to be mixed in.
-///
-/// @example scss - Usage
-/// .element {
-/// background-color: tint(#6ecaa6, 40%);
-/// }
-///
-/// @example css - CSS Output
-/// .element {
-/// background-color: #a8dfc9;
-/// }
-///
-/// @return {Color}
-
-@function tint($color, $percent) {
- @return mix(#fff, $color, $percent);
-}
diff --git a/html_orig/sass/lib/bourbon/functions/_transition-property-name.scss b/html_orig/sass/lib/bourbon/functions/_transition-property-name.scss
deleted file mode 100755
index 18348b9..0000000
--- a/html_orig/sass/lib/bourbon/functions/_transition-property-name.scss
+++ /dev/null
@@ -1,22 +0,0 @@
-// Return vendor-prefixed property names if appropriate
-// Example: transition-property-names((transform, color, background), moz) -> -moz-transform, color, background
-//************************************************************************//
-@function transition-property-names($props, $vendor: false) {
- $new-props: ();
-
- @each $prop in $props {
- $new-props: append($new-props, transition-property-name($prop, $vendor), comma);
- }
-
- @return $new-props;
-}
-
-@function transition-property-name($prop, $vendor: false) {
- // put other properties that need to be prefixed here aswell
- @if $vendor and $prop == transform {
- @return unquote('-'+$vendor+'-'+$prop);
- }
- @else {
- @return $prop;
- }
-}
diff --git a/html_orig/sass/lib/bourbon/functions/_unpack.scss b/html_orig/sass/lib/bourbon/functions/_unpack.scss
deleted file mode 100755
index 4367935..0000000
--- a/html_orig/sass/lib/bourbon/functions/_unpack.scss
+++ /dev/null
@@ -1,27 +0,0 @@
-@charset "UTF-8";
-
-/// Converts shorthand to the 4-value syntax.
-///
-/// @param {List} $shorthand
-///
-/// @example scss - Usage
-/// .element {
-/// margin: unpack(1em 2em);
-/// }
-///
-/// @example css - CSS Output
-/// .element {
-/// margin: 1em 2em 1em 2em;
-/// }
-
-@function unpack($shorthand) {
- @if length($shorthand) == 1 {
- @return nth($shorthand, 1) nth($shorthand, 1) nth($shorthand, 1) nth($shorthand, 1);
- } @else if length($shorthand) == 2 {
- @return nth($shorthand, 1) nth($shorthand, 2) nth($shorthand, 1) nth($shorthand, 2);
- } @else if length($shorthand) == 3 {
- @return nth($shorthand, 1) nth($shorthand, 2) nth($shorthand, 3) nth($shorthand, 2);
- } @else {
- @return $shorthand;
- }
-}
diff --git a/html_orig/sass/lib/bourbon/helpers/_convert-units.scss b/html_orig/sass/lib/bourbon/helpers/_convert-units.scss
deleted file mode 100755
index e0a65a0..0000000
--- a/html_orig/sass/lib/bourbon/helpers/_convert-units.scss
+++ /dev/null
@@ -1,21 +0,0 @@
-//************************************************************************//
-// Helper function for str-to-num fn.
-// Source: http://sassmeister.com/gist/9647408
-//************************************************************************//
-@function _convert-units($number, $unit) {
- $strings: "px", "cm", "mm", "%", "ch", "pica", "in", "em", "rem", "pt", "pc", "ex", "vw", "vh", "vmin", "vmax", "deg", "rad", "grad", "turn";
- $units: 1px, 1cm, 1mm, 1%, 1ch, 1pica, 1in, 1em, 1rem, 1pt, 1pc, 1ex, 1vw, 1vh, 1vmin, 1vmax, 1deg, 1rad, 1grad, 1turn;
- $index: index($strings, $unit);
-
- @if not $index {
- @warn "Unknown unit `#{$unit}`.";
- @return false;
- }
-
- @if type-of($number) != "number" {
- @warn "`#{$number} is not a number`";
- @return false;
- }
-
- @return $number * nth($units, $index);
-}
diff --git a/html_orig/sass/lib/bourbon/helpers/_directional-values.scss b/html_orig/sass/lib/bourbon/helpers/_directional-values.scss
deleted file mode 100755
index 6ee538d..0000000
--- a/html_orig/sass/lib/bourbon/helpers/_directional-values.scss
+++ /dev/null
@@ -1,96 +0,0 @@
-@charset "UTF-8";
-
-/// Directional-property mixins are shorthands for writing properties like the following
-///
-/// @ignore You can also use `false` instead of `null`.
-///
-/// @param {List} $vals
-/// List of directional values
-///
-/// @example scss - Usage
-/// .element {
-/// @include border-style(dotted null);
-/// @include margin(null 0 10px);
-/// }
-///
-/// @example css - CSS Output
-/// .element {
-/// border-bottom-style: dotted;
-/// border-top-style: dotted;
-/// margin-bottom: 10px;
-/// margin-left: 0;
-/// margin-right: 0;
-/// }
-///
-/// @require {function} contains-falsy
-///
-/// @return {List}
-
-@function collapse-directionals($vals) {
- $output: null;
-
- $a: nth($vals, 1);
- $b: if(length($vals) < 2, $a, nth($vals, 2));
- $c: if(length($vals) < 3, $a, nth($vals, 3));
- $d: if(length($vals) < 2, $a, nth($vals, if(length($vals) < 4, 2, 4)));
-
- @if $a == 0 { $a: 0; }
- @if $b == 0 { $b: 0; }
- @if $c == 0 { $c: 0; }
- @if $d == 0 { $d: 0; }
-
- @if $a == $b and $a == $c and $a == $d { $output: $a; }
- @else if $a == $c and $b == $d { $output: $a $b; }
- @else if $b == $d { $output: $a $b $c; }
- @else { $output: $a $b $c $d; }
-
- @return $output;
-}
-
-/// Output directional properties, for instance `margin`.
-///
-/// @access private
-///
-/// @param {String} $pre
-/// Prefix to use
-/// @param {String} $suf
-/// Suffix to use
-/// @param {List} $vals
-/// List of values
-///
-/// @require {function} collapse-directionals
-/// @require {function} contains-falsy
-
-@mixin directional-property($pre, $suf, $vals) {
- // Property Names
- $top: $pre + "-top" + if($suf, "-#{$suf}", "");
- $bottom: $pre + "-bottom" + if($suf, "-#{$suf}", "");
- $left: $pre + "-left" + if($suf, "-#{$suf}", "");
- $right: $pre + "-right" + if($suf, "-#{$suf}", "");
- $all: $pre + if($suf, "-#{$suf}", "");
-
- $vals: collapse-directionals($vals);
-
- @if contains-falsy($vals) {
- @if nth($vals, 1) { #{$top}: nth($vals, 1); }
-
- @if length($vals) == 1 {
- @if nth($vals, 1) { #{$right}: nth($vals, 1); }
- } @else {
- @if nth($vals, 2) { #{$right}: nth($vals, 2); }
- }
-
- @if length($vals) == 2 {
- @if nth($vals, 1) { #{$bottom}: nth($vals, 1); }
- @if nth($vals, 2) { #{$left}: nth($vals, 2); }
- } @else if length($vals) == 3 {
- @if nth($vals, 3) { #{$bottom}: nth($vals, 3); }
- @if nth($vals, 2) { #{$left}: nth($vals, 2); }
- } @else if length($vals) == 4 {
- @if nth($vals, 3) { #{$bottom}: nth($vals, 3); }
- @if nth($vals, 4) { #{$left}: nth($vals, 4); }
- }
- } @else {
- #{$all}: $vals;
- }
-}
diff --git a/html_orig/sass/lib/bourbon/helpers/_font-source-declaration.scss b/html_orig/sass/lib/bourbon/helpers/_font-source-declaration.scss
deleted file mode 100755
index 7f17586..0000000
--- a/html_orig/sass/lib/bourbon/helpers/_font-source-declaration.scss
+++ /dev/null
@@ -1,43 +0,0 @@
-// Used for creating the source string for fonts using @font-face
-// Reference: http://goo.gl/Ru1bKP
-
-@function font-url-prefixer($asset-pipeline) {
- @if $asset-pipeline == true {
- @return font-url;
- } @else {
- @return url;
- }
-}
-
-@function font-source-declaration(
- $font-family,
- $file-path,
- $asset-pipeline,
- $file-formats,
- $font-url) {
-
- $src: ();
-
- $formats-map: (
- eot: "#{$file-path}.eot?#iefix" format("embedded-opentype"),
- woff2: "#{$file-path}.woff2" format("woff2"),
- woff: "#{$file-path}.woff" format("woff"),
- ttf: "#{$file-path}.ttf" format("truetype"),
- svg: "#{$file-path}.svg##{$font-family}" format("svg")
- );
-
- @each $key, $values in $formats-map {
- @if contains($file-formats, $key) {
- $file-path: nth($values, 1);
- $font-format: nth($values, 2);
-
- @if $asset-pipeline == true {
- $src: append($src, font-url($file-path) $font-format, comma);
- } @else {
- $src: append($src, url($file-path) $font-format, comma);
- }
- }
- }
-
- @return $src;
-}
diff --git a/html_orig/sass/lib/bourbon/helpers/_gradient-positions-parser.scss b/html_orig/sass/lib/bourbon/helpers/_gradient-positions-parser.scss
deleted file mode 100755
index 07d30b6..0000000
--- a/html_orig/sass/lib/bourbon/helpers/_gradient-positions-parser.scss
+++ /dev/null
@@ -1,13 +0,0 @@
-@function _gradient-positions-parser($gradient-type, $gradient-positions) {
- @if $gradient-positions
- and ($gradient-type == linear)
- and (type-of($gradient-positions) != color) {
- $gradient-positions: _linear-positions-parser($gradient-positions);
- }
- @else if $gradient-positions
- and ($gradient-type == radial)
- and (type-of($gradient-positions) != color) {
- $gradient-positions: _radial-positions-parser($gradient-positions);
- }
- @return $gradient-positions;
-}
diff --git a/html_orig/sass/lib/bourbon/helpers/_linear-angle-parser.scss b/html_orig/sass/lib/bourbon/helpers/_linear-angle-parser.scss
deleted file mode 100755
index e0401ed..0000000
--- a/html_orig/sass/lib/bourbon/helpers/_linear-angle-parser.scss
+++ /dev/null
@@ -1,25 +0,0 @@
-// Private function for linear-gradient-parser
-@function _linear-angle-parser($image, $first-val, $prefix, $suffix) {
- $offset: null;
- $unit-short: str-slice($first-val, str-length($first-val) - 2, str-length($first-val));
- $unit-long: str-slice($first-val, str-length($first-val) - 3, str-length($first-val));
-
- @if ($unit-long == "grad") or
- ($unit-long == "turn") {
- $offset: if($unit-long == "grad", -100grad * 3, -0.75turn);
- }
-
- @else if ($unit-short == "deg") or
- ($unit-short == "rad") {
- $offset: if($unit-short == "deg", -90 * 3, 1.6rad);
- }
-
- @if $offset {
- $num: _str-to-num($first-val);
-
- @return (
- webkit-image: -webkit- + $prefix + ($offset - $num) + $suffix,
- spec-image: $image
- );
- }
-}
diff --git a/html_orig/sass/lib/bourbon/helpers/_linear-gradient-parser.scss b/html_orig/sass/lib/bourbon/helpers/_linear-gradient-parser.scss
deleted file mode 100755
index 48a8f77..0000000
--- a/html_orig/sass/lib/bourbon/helpers/_linear-gradient-parser.scss
+++ /dev/null
@@ -1,41 +0,0 @@
-@function _linear-gradient-parser($image) {
- $image: unquote($image);
- $gradients: ();
- $start: str-index($image, "(");
- $end: str-index($image, ",");
- $first-val: str-slice($image, $start + 1, $end - 1);
-
- $prefix: str-slice($image, 1, $start);
- $suffix: str-slice($image, $end, str-length($image));
-
- $has-multiple-vals: str-index($first-val, " ");
- $has-single-position: unquote(_position-flipper($first-val) + "");
- $has-angle: is-number(str-slice($first-val, 1, 1));
-
- @if $has-multiple-vals {
- $gradients: _linear-side-corner-parser($image, $first-val, $prefix, $suffix, $has-multiple-vals);
- }
-
- @else if $has-single-position != "" {
- $pos: unquote($has-single-position + "");
-
- $gradients: (
- webkit-image: -webkit- + $image,
- spec-image: $prefix + "to " + $pos + $suffix
- );
- }
-
- @else if $has-angle {
- // Rotate degree for webkit
- $gradients: _linear-angle-parser($image, $first-val, $prefix, $suffix);
- }
-
- @else {
- $gradients: (
- webkit-image: -webkit- + $image,
- spec-image: $image
- );
- }
-
- @return $gradients;
-}
diff --git a/html_orig/sass/lib/bourbon/helpers/_linear-positions-parser.scss b/html_orig/sass/lib/bourbon/helpers/_linear-positions-parser.scss
deleted file mode 100755
index 96d6a6d..0000000
--- a/html_orig/sass/lib/bourbon/helpers/_linear-positions-parser.scss
+++ /dev/null
@@ -1,61 +0,0 @@
-@function _linear-positions-parser($pos) {
- $type: type-of(nth($pos, 1));
- $spec: null;
- $degree: null;
- $side: null;
- $corner: null;
- $length: length($pos);
- // Parse Side and corner positions
- @if ($length > 1) {
- @if nth($pos, 1) == "to" { // Newer syntax
- $side: nth($pos, 2);
-
- @if $length == 2 { // eg. to top
- // Swap for backwards compatibility
- $degree: _position-flipper(nth($pos, 2));
- }
- @else if $length == 3 { // eg. to top left
- $corner: nth($pos, 3);
- }
- }
- @else if $length == 2 { // Older syntax ("top left")
- $side: _position-flipper(nth($pos, 1));
- $corner: _position-flipper(nth($pos, 2));
- }
-
- @if ("#{$side} #{$corner}" == "left top") or ("#{$side} #{$corner}" == "top left") {
- $degree: _position-flipper(#{$side}) _position-flipper(#{$corner});
- }
- @else if ("#{$side} #{$corner}" == "right top") or ("#{$side} #{$corner}" == "top right") {
- $degree: _position-flipper(#{$side}) _position-flipper(#{$corner});
- }
- @else if ("#{$side} #{$corner}" == "right bottom") or ("#{$side} #{$corner}" == "bottom right") {
- $degree: _position-flipper(#{$side}) _position-flipper(#{$corner});
- }
- @else if ("#{$side} #{$corner}" == "left bottom") or ("#{$side} #{$corner}" == "bottom left") {
- $degree: _position-flipper(#{$side}) _position-flipper(#{$corner});
- }
- $spec: to $side $corner;
- }
- @else if $length == 1 {
- // Swap for backwards compatibility
- @if $type == string {
- $degree: $pos;
- $spec: to _position-flipper($pos);
- }
- @else {
- $degree: -270 - $pos; //rotate the gradient opposite from spec
- $spec: $pos;
- }
- }
- $degree: unquote($degree + ",");
- $spec: unquote($spec + ",");
- @return $degree $spec;
-}
-
-@function _position-flipper($pos) {
- @return if($pos == left, right, null)
- if($pos == right, left, null)
- if($pos == top, bottom, null)
- if($pos == bottom, top, null);
-}
diff --git a/html_orig/sass/lib/bourbon/helpers/_linear-side-corner-parser.scss b/html_orig/sass/lib/bourbon/helpers/_linear-side-corner-parser.scss
deleted file mode 100755
index 7a69125..0000000
--- a/html_orig/sass/lib/bourbon/helpers/_linear-side-corner-parser.scss
+++ /dev/null
@@ -1,31 +0,0 @@
-// Private function for linear-gradient-parser
-@function _linear-side-corner-parser($image, $first-val, $prefix, $suffix, $has-multiple-vals) {
- $val-1: str-slice($first-val, 1, $has-multiple-vals - 1);
- $val-2: str-slice($first-val, $has-multiple-vals + 1, str-length($first-val));
- $val-3: null;
- $has-val-3: str-index($val-2, " ");
-
- @if $has-val-3 {
- $val-3: str-slice($val-2, $has-val-3 + 1, str-length($val-2));
- $val-2: str-slice($val-2, 1, $has-val-3 - 1);
- }
-
- $pos: _position-flipper($val-1) _position-flipper($val-2) _position-flipper($val-3);
- $pos: unquote($pos + "");
-
- // Use old spec for webkit
- @if $val-1 == "to" {
- @return (
- webkit-image: -webkit- + $prefix + $pos + $suffix,
- spec-image: $image
- );
- }
-
- // Bring the code up to spec
- @else {
- @return (
- webkit-image: -webkit- + $image,
- spec-image: $prefix + "to " + $pos + $suffix
- );
- }
-}
diff --git a/html_orig/sass/lib/bourbon/helpers/_radial-arg-parser.scss b/html_orig/sass/lib/bourbon/helpers/_radial-arg-parser.scss
deleted file mode 100755
index 56c6030..0000000
--- a/html_orig/sass/lib/bourbon/helpers/_radial-arg-parser.scss
+++ /dev/null
@@ -1,69 +0,0 @@
-@function _radial-arg-parser($g1, $g2, $pos, $shape-size) {
- @each $value in $g1, $g2 {
- $first-val: nth($value, 1);
- $pos-type: type-of($first-val);
- $spec-at-index: null;
-
- // Determine if spec was passed to mixin
- @if type-of($value) == list {
- $spec-at-index: if(index($value, at), index($value, at), false);
- }
- @if $spec-at-index {
- @if $spec-at-index > 1 {
- @for $i from 1 through ($spec-at-index - 1) {
- $shape-size: $shape-size nth($value, $i);
- }
- @for $i from ($spec-at-index + 1) through length($value) {
- $pos: $pos nth($value, $i);
- }
- }
- @else if $spec-at-index == 1 {
- @for $i from ($spec-at-index + 1) through length($value) {
- $pos: $pos nth($value, $i);
- }
- }
- $g1: null;
- }
-
- // If not spec calculate correct values
- @else {
- @if ($pos-type != color) or ($first-val != "transparent") {
- @if ($pos-type == number)
- or ($first-val == "center")
- or ($first-val == "top")
- or ($first-val == "right")
- or ($first-val == "bottom")
- or ($first-val == "left") {
-
- $pos: $value;
-
- @if $pos == $g1 {
- $g1: null;
- }
- }
-
- @else if
- ($first-val == "ellipse")
- or ($first-val == "circle")
- or ($first-val == "closest-side")
- or ($first-val == "closest-corner")
- or ($first-val == "farthest-side")
- or ($first-val == "farthest-corner")
- or ($first-val == "contain")
- or ($first-val == "cover") {
-
- $shape-size: $value;
-
- @if $value == $g1 {
- $g1: null;
- }
-
- @else if $value == $g2 {
- $g2: null;
- }
- }
- }
- }
- }
- @return $g1, $g2, $pos, $shape-size;
-}
diff --git a/html_orig/sass/lib/bourbon/helpers/_radial-gradient-parser.scss b/html_orig/sass/lib/bourbon/helpers/_radial-gradient-parser.scss
deleted file mode 100755
index 5444d80..0000000
--- a/html_orig/sass/lib/bourbon/helpers/_radial-gradient-parser.scss
+++ /dev/null
@@ -1,50 +0,0 @@
-@function _radial-gradient-parser($image) {
- $image: unquote($image);
- $gradients: ();
- $start: str-index($image, "(");
- $end: str-index($image, ",");
- $first-val: str-slice($image, $start + 1, $end - 1);
-
- $prefix: str-slice($image, 1, $start);
- $suffix: str-slice($image, $end, str-length($image));
-
- $is-spec-syntax: str-index($first-val, "at");
-
- @if $is-spec-syntax and $is-spec-syntax > 1 {
- $keyword: str-slice($first-val, 1, $is-spec-syntax - 2);
- $pos: str-slice($first-val, $is-spec-syntax + 3, str-length($first-val));
- $pos: append($pos, $keyword, comma);
-
- $gradients: (
- webkit-image: -webkit- + $prefix + $pos + $suffix,
- spec-image: $image
- );
- }
-
- @else if $is-spec-syntax == 1 {
- $pos: str-slice($first-val, $is-spec-syntax + 3, str-length($first-val));
-
- $gradients: (
- webkit-image: -webkit- + $prefix + $pos + $suffix,
- spec-image: $image
- );
- }
-
- @else if str-index($image, "cover") or str-index($image, "contain") {
- @warn "Radial-gradient needs to be updated to conform to latest spec.";
-
- $gradients: (
- webkit-image: null,
- spec-image: $image
- );
- }
-
- @else {
- $gradients: (
- webkit-image: -webkit- + $image,
- spec-image: $image
- );
- }
-
- @return $gradients;
-}
diff --git a/html_orig/sass/lib/bourbon/helpers/_radial-positions-parser.scss b/html_orig/sass/lib/bourbon/helpers/_radial-positions-parser.scss
deleted file mode 100755
index 3c552ad..0000000
--- a/html_orig/sass/lib/bourbon/helpers/_radial-positions-parser.scss
+++ /dev/null
@@ -1,18 +0,0 @@
-@function _radial-positions-parser($gradient-pos) {
- $shape-size: nth($gradient-pos, 1);
- $pos: nth($gradient-pos, 2);
- $shape-size-spec: _shape-size-stripper($shape-size);
-
- $pre-spec: unquote(if($pos, "#{$pos}, ", null))
- unquote(if($shape-size, "#{$shape-size},", null));
- $pos-spec: if($pos, "at #{$pos}", null);
-
- $spec: "#{$shape-size-spec} #{$pos-spec}";
-
- // Add comma
- @if ($spec != " ") {
- $spec: "#{$spec},";
- }
-
- @return $pre-spec $spec;
-}
diff --git a/html_orig/sass/lib/bourbon/helpers/_render-gradients.scss b/html_orig/sass/lib/bourbon/helpers/_render-gradients.scss
deleted file mode 100755
index 5765676..0000000
--- a/html_orig/sass/lib/bourbon/helpers/_render-gradients.scss
+++ /dev/null
@@ -1,26 +0,0 @@
-// User for linear and radial gradients within background-image or border-image properties
-
-@function _render-gradients($gradient-positions, $gradients, $gradient-type, $vendor: false) {
- $pre-spec: null;
- $spec: null;
- $vendor-gradients: null;
- @if $gradient-type == linear {
- @if $gradient-positions {
- $pre-spec: nth($gradient-positions, 1);
- $spec: nth($gradient-positions, 2);
- }
- }
- @else if $gradient-type == radial {
- $pre-spec: nth($gradient-positions, 1);
- $spec: nth($gradient-positions, 2);
- }
-
- @if $vendor {
- $vendor-gradients: -#{$vendor}-#{$gradient-type}-gradient(#{$pre-spec} $gradients);
- }
- @else if $vendor == false {
- $vendor-gradients: "#{$gradient-type}-gradient(#{$spec} #{$gradients})";
- $vendor-gradients: unquote($vendor-gradients);
- }
- @return $vendor-gradients;
-}
diff --git a/html_orig/sass/lib/bourbon/helpers/_shape-size-stripper.scss b/html_orig/sass/lib/bourbon/helpers/_shape-size-stripper.scss
deleted file mode 100755
index ee5eda4..0000000
--- a/html_orig/sass/lib/bourbon/helpers/_shape-size-stripper.scss
+++ /dev/null
@@ -1,10 +0,0 @@
-@function _shape-size-stripper($shape-size) {
- $shape-size-spec: null;
- @each $value in $shape-size {
- @if ($value == "cover") or ($value == "contain") {
- $value: null;
- }
- $shape-size-spec: "#{$shape-size-spec} #{$value}";
- }
- @return $shape-size-spec;
-}
diff --git a/html_orig/sass/lib/bourbon/helpers/_str-to-num.scss b/html_orig/sass/lib/bourbon/helpers/_str-to-num.scss
deleted file mode 100755
index 3ef1d87..0000000
--- a/html_orig/sass/lib/bourbon/helpers/_str-to-num.scss
+++ /dev/null
@@ -1,50 +0,0 @@
-//************************************************************************//
-// Helper function for linear/radial-gradient-parsers.
-// Source: http://sassmeister.com/gist/9647408
-//************************************************************************//
-@function _str-to-num($string) {
- // Matrices
- $strings: "0" "1" "2" "3" "4" "5" "6" "7" "8" "9";
- $numbers: 0 1 2 3 4 5 6 7 8 9;
-
- // Result
- $result: 0;
- $divider: 0;
- $minus: false;
-
- // Looping through all characters
- @for $i from 1 through str-length($string) {
- $character: str-slice($string, $i, $i);
- $index: index($strings, $character);
-
- @if $character == "-" {
- $minus: true;
- }
-
- @else if $character == "." {
- $divider: 1;
- }
-
- @else {
- @if not $index {
- $result: if($minus, $result * -1, $result);
- @return _convert-units($result, str-slice($string, $i));
- }
-
- $number: nth($numbers, $index);
-
- @if $divider == 0 {
- $result: $result * 10;
- }
-
- @else {
- // Move the decimal dot to the left
- $divider: $divider * 10;
- $number: $number / $divider;
- }
-
- $result: $result + $number;
- }
- }
- @return if($minus, $result * -1, $result);
-}
diff --git a/html_orig/sass/lib/bourbon/settings/_asset-pipeline.scss b/html_orig/sass/lib/bourbon/settings/_asset-pipeline.scss
deleted file mode 100755
index 4c6afc5..0000000
--- a/html_orig/sass/lib/bourbon/settings/_asset-pipeline.scss
+++ /dev/null
@@ -1,7 +0,0 @@
-@charset "UTF-8";
-
-/// A global setting to enable or disable the `$asset-pipeline` variable for all functions that accept it.
-///
-/// @type Bool
-
-$asset-pipeline: false !default;
diff --git a/html_orig/sass/lib/bourbon/settings/_prefixer.scss b/html_orig/sass/lib/bourbon/settings/_prefixer.scss
deleted file mode 100755
index 8c39051..0000000
--- a/html_orig/sass/lib/bourbon/settings/_prefixer.scss
+++ /dev/null
@@ -1,9 +0,0 @@
-@charset "UTF-8";
-
-/// Global variables to enable or disable vendor prefixes
-
-$prefix-for-webkit: true !default;
-$prefix-for-mozilla: true !default;
-$prefix-for-microsoft: true !default;
-$prefix-for-opera: true !default;
-$prefix-for-spec: true !default;
diff --git a/html_orig/sass/lib/bourbon/settings/_px-to-em.scss b/html_orig/sass/lib/bourbon/settings/_px-to-em.scss
deleted file mode 100755
index f2f9a3e..0000000
--- a/html_orig/sass/lib/bourbon/settings/_px-to-em.scss
+++ /dev/null
@@ -1 +0,0 @@
-$em-base: 16px !default;
diff --git a/html_orig/sass/lib/neat/_neat-helpers.scss b/html_orig/sass/lib/neat/_neat-helpers.scss
deleted file mode 100755
index 9c182d2..0000000
--- a/html_orig/sass/lib/neat/_neat-helpers.scss
+++ /dev/null
@@ -1,8 +0,0 @@
-// Functions
-@import "functions/private";
-@import "functions/new-breakpoint";
-
-// Settings
-@import "settings/grid";
-@import "settings/visual-grid";
-@import "settings/disable-warnings";
diff --git a/html_orig/sass/lib/neat/_neat.scss b/html_orig/sass/lib/neat/_neat.scss
deleted file mode 100755
index e46e169..0000000
--- a/html_orig/sass/lib/neat/_neat.scss
+++ /dev/null
@@ -1,23 +0,0 @@
-// Neat 1.7.2
-// http://neat.bourbon.io
-// Copyright 2012-2015 thoughtbot, inc.
-// MIT License
-
-// Helpers
-@import "neat-helpers";
-
-// Grid
-@import "grid/private";
-@import "grid/box-sizing";
-@import "grid/omega";
-@import "grid/outer-container";
-@import "grid/span-columns";
-@import "grid/row";
-@import "grid/shift";
-@import "grid/pad";
-@import "grid/fill-parent";
-@import "grid/media";
-@import "grid/to-deprecate";
-@import "grid/visual-grid";
-@import "grid/display-context";
-@import "grid/direction-context";
diff --git a/html_orig/sass/lib/neat/functions/_new-breakpoint.scss b/html_orig/sass/lib/neat/functions/_new-breakpoint.scss
deleted file mode 100755
index 41ab955..0000000
--- a/html_orig/sass/lib/neat/functions/_new-breakpoint.scss
+++ /dev/null
@@ -1,49 +0,0 @@
-@charset "UTF-8";
-
-/// Returns a media context (media query / grid context) that can be stored in a variable and passed to `media()` as a single-keyword argument. Media contexts defined using `new-breakpoint` are used by the visual grid, as long as they are defined before importing Neat.
-///
-/// @param {List} $query
-/// A list of media query features and values. Each `$feature` should have a corresponding `$value`.
-///
-/// If there is only a single `$value` in `$query`, `$default-feature` is going to be used.
-///
-/// The number of total columns in the grid can be set by passing `$columns` at the end of the list (overrides `$total-columns`). For a list of valid values for `$feature`, click [here](http://www.w3.org/TR/css3-mediaqueries/#media1).
-///
-/// @param {Number (unitless)} $total-columns [$grid-columns]
-/// - Number of columns to use in the new grid context. Can be set as a shorthand in the first parameter.
-///
-/// @example scss - Usage
-/// $mobile: new-breakpoint(max-width 480px 4);
-///
-/// .element {
-/// @include media($mobile) {
-/// @include span-columns(4);
-/// }
-/// }
-///
-/// @example css - CSS Output
-/// @media screen and (max-width: 480px) {
-/// .element {
-/// display: block;
-/// float: left;
-/// margin-right: 7.42297%;
-/// width: 100%;
-/// }
-/// .element:last-child {
-/// margin-right: 0;
-/// }
-/// }
-
-@function new-breakpoint($query: $feature $value $columns, $total-columns: $grid-columns) {
- @if length($query) == 1 {
- $query: $default-feature nth($query, 1) $total-columns;
- } @else if is-even(length($query)) {
- $query: append($query, $total-columns);
- }
-
- @if is-not(belongs-to($query, $visual-grid-breakpoints)) {
- $visual-grid-breakpoints: append($visual-grid-breakpoints, $query, comma) !global;
- }
-
- @return $query;
-}
diff --git a/html_orig/sass/lib/neat/functions/_private.scss b/html_orig/sass/lib/neat/functions/_private.scss
deleted file mode 100755
index 872d4dc..0000000
--- a/html_orig/sass/lib/neat/functions/_private.scss
+++ /dev/null
@@ -1,114 +0,0 @@
-// Not function for Libsass compatibility
-// https://github.com/sass/libsass/issues/368
-@function is-not($value) {
- @return if($value, false, true);
-}
-
-// Checks if a number is even
-@function is-even($int) {
- @return $int % 2 == 0;
-}
-
-// Checks if an element belongs to a list or not
-@function belongs-to($tested-item, $list) {
- @return is-not(not-belongs-to($tested-item, $list));
-}
-
-@function not-belongs-to($tested-item, $list) {
- @return is-not(index($list, $tested-item));
-}
-
-// Contains display value
-@function contains-display-value($query) {
- @return belongs-to(table, $query)
- or belongs-to(block, $query)
- or belongs-to(inline-block, $query)
- or belongs-to(inline, $query);
-}
-
-// Parses the first argument of span-columns()
-@function container-span($span: $span) {
- @if length($span) == 3 {
- $container-columns: nth($span, 3);
- @return $container-columns;
- } @else if length($span) == 2 {
- $container-columns: nth($span, 2);
- @return $container-columns;
- }
-
- @return $grid-columns;
-}
-
-@function container-shift($shift: $shift) {
- $parent-columns: $grid-columns !default !global;
-
- @if length($shift) == 3 {
- $container-columns: nth($shift, 3);
- @return $container-columns;
- } @else if length($shift) == 2 {
- $container-columns: nth($shift, 2);
- @return $container-columns;
- }
-
- @return $parent-columns;
-}
-
-// Generates a striped background
-@function gradient-stops($grid-columns, $color: $visual-grid-color) {
- $transparent: transparent;
-
- $column-width: flex-grid(1, $grid-columns);
- $gutter-width: flex-gutter($grid-columns);
- $column-offset: $column-width;
-
- $values: ($transparent 0, $color 0);
-
- @for $i from 1 to $grid-columns*2 {
- @if is-even($i) {
- $values: append($values, $transparent $column-offset, comma);
- $values: append($values, $color $column-offset, comma);
- $column-offset: $column-offset + $column-width;
- } @else {
- $values: append($values, $color $column-offset, comma);
- $values: append($values, $transparent $column-offset, comma);
- $column-offset: $column-offset + $gutter-width;
- }
- }
-
- @return $values;
-}
-
-// Layout direction
-@function get-direction($layout, $default) {
- $direction: null;
-
- @if to-upper-case($layout) == "LTR" or to-upper-case($layout) == "RTL" {
- $direction: direction-from-layout($layout);
- } @else {
- $direction: direction-from-layout($default);
- }
-
- @return $direction;
-}
-
-@function direction-from-layout($layout) {
- $direction: null;
-
- @if to-upper-case($layout) == "LTR" {
- $direction: right;
- } @else {
- $direction: left;
- }
-
- @return $direction;
-}
-
-@function get-opposite-direction($direction) {
- $opposite-direction: left;
-
- @if $direction == "left" {
- $opposite-direction: right;
- }
-
- @return $opposite-direction;
-}
diff --git a/html_orig/sass/lib/neat/grid/_box-sizing.scss b/html_orig/sass/lib/neat/grid/_box-sizing.scss
deleted file mode 100755
index b6d3fec..0000000
--- a/html_orig/sass/lib/neat/grid/_box-sizing.scss
+++ /dev/null
@@ -1,15 +0,0 @@
-@charset "UTF-8";
-
-@if $border-box-sizing == true {
- html { // http://bit.ly/1qk2tVR
- box-sizing: border-box;
- }
-
- * {
- &,
- &::after,
- &::before {
- box-sizing: inherit;
- }
- }
-}
diff --git a/html_orig/sass/lib/neat/grid/_direction-context.scss b/html_orig/sass/lib/neat/grid/_direction-context.scss
deleted file mode 100755
index 7b0d46e..0000000
--- a/html_orig/sass/lib/neat/grid/_direction-context.scss
+++ /dev/null
@@ -1,33 +0,0 @@
-@charset "UTF-8";
-
-/// Changes the direction property used by other mixins called in the code block argument.
-///
-/// @param {String} $direction [left-to-right]
-/// Layout direction to be used within the block. Can be `left-to-right` or `right-to-left`.
-///
-/// @example scss - Usage
-/// @include direction-context(right-to-left) {
-/// .right-to-left-block {
-/// @include span-columns(6);
-/// }
-/// }
-///
-/// @example css - CSS Output
-/// .right-to-left-block {
-/// float: right;
-/// ...
-/// }
-
-@mixin direction-context($direction: left-to-right) {
- $scope-direction: $layout-direction;
-
- @if to-lower-case($direction) == "left-to-right" {
- $layout-direction: LTR !global;
- } @else if to-lower-case($direction) == "right-to-left" {
- $layout-direction: RTL !global;
- }
-
- @content;
-
- $layout-direction: $scope-direction !global;
-}
diff --git a/html_orig/sass/lib/neat/grid/_display-context.scss b/html_orig/sass/lib/neat/grid/_display-context.scss
deleted file mode 100755
index ed9b063..0000000
--- a/html_orig/sass/lib/neat/grid/_display-context.scss
+++ /dev/null
@@ -1,28 +0,0 @@
-@charset "UTF-8";
-
-/// Changes the display property used by other mixins called in the code block argument.
-///
-/// @param {String} $display [block]
-/// Display value to be used within the block. Can be `table` or `block`.
-///
-/// @example scss
-/// @include display-context(table) {
-/// .display-table {
-/// @include span-columns(6);
-/// }
-/// }
-///
-/// @example css
-/// .display-table {
-/// display: table-cell;
-/// ...
-/// }
-
-@mixin display-context($display: block) {
- $scope-display: $container-display-table;
- $container-display-table: $display == table !global;
-
- @content;
-
- $container-display-table: $scope-display !global;
-}
diff --git a/html_orig/sass/lib/neat/grid/_fill-parent.scss b/html_orig/sass/lib/neat/grid/_fill-parent.scss
deleted file mode 100755
index 415f0b1..0000000
--- a/html_orig/sass/lib/neat/grid/_fill-parent.scss
+++ /dev/null
@@ -1,22 +0,0 @@
-@charset "UTF-8";
-
-/// Forces the element to fill its parent container.
-///
-/// @example scss - Usage
-/// .element {
-/// @include fill-parent;
-/// }
-///
-/// @example css - CSS Output
-/// .element {
-/// width: 100%;
-/// box-sizing: border-box;
-/// }
-
-@mixin fill-parent() {
- width: 100%;
-
- @if $border-box-sizing == false {
- box-sizing: border-box;
- }
-}
diff --git a/html_orig/sass/lib/neat/grid/_media.scss b/html_orig/sass/lib/neat/grid/_media.scss
deleted file mode 100755
index bd516e9..0000000
--- a/html_orig/sass/lib/neat/grid/_media.scss
+++ /dev/null
@@ -1,92 +0,0 @@
-@charset "UTF-8";
-
-/// Outputs a media-query block with an optional grid context (the total number of columns used in the grid).
-///
-/// @param {List} $query
-/// A list of media query features and values, where each `$feature` should have a corresponding `$value`.
-/// For a list of valid values for `$feature`, click [here](http://www.w3.org/TR/css3-mediaqueries/#media1).
-///
-/// If there is only a single `$value` in `$query`, `$default-feature` is going to be used.
-///
-/// The number of total columns in the grid can be set by passing `$columns` at the end of the list (overrides `$total-columns`).
-///
-///
-/// @param {Number (unitless)} $total-columns [$grid-columns]
-/// - Number of columns to use in the new grid context. Can be set as a shorthand in the first parameter.
-///
-/// @example scss - Usage
-/// .responsive-element {
-/// @include media(769px) {
-/// @include span-columns(6);
-/// }
-/// }
-///
-/// .new-context-element {
-/// @include media(min-width 320px max-width 480px, 6) {
-/// @include span-columns(6);
-/// }
-/// }
-///
-/// @example css - CSS Output
-/// @media screen and (min-width: 769px) {
-/// .responsive-element {
-/// display: block;
-/// float: left;
-/// margin-right: 2.35765%;
-/// width: 48.82117%;
-/// }
-///
-/// .responsive-element:last-child {
-/// margin-right: 0;
-/// }
-/// }
-///
-/// @media screen and (min-width: 320px) and (max-width: 480px) {
-/// .new-context-element {
-/// display: block;
-/// float: left;
-/// margin-right: 4.82916%;
-/// width: 100%;
-/// }
-///
-/// .new-context-element:last-child {
-/// margin-right: 0;
-/// }
-/// }
-
-@mixin media($query: $feature $value $columns, $total-columns: $grid-columns) {
- @if length($query) == 1 {
- @media screen and ($default-feature: nth($query, 1)) {
- $default-grid-columns: $grid-columns;
- $grid-columns: $total-columns !global;
- @content;
- $grid-columns: $default-grid-columns !global;
- }
- } @else {
- $loop-to: length($query);
- $media-query: "screen and ";
- $default-grid-columns: $grid-columns;
- $grid-columns: $total-columns !global;
-
- @if is-not(is-even(length($query))) {
- $grid-columns: nth($query, $loop-to) !global;
- $loop-to: $loop-to - 1;
- }
-
- $i: 1;
- @while $i <= $loop-to {
- $media-query: $media-query + "(" + nth($query, $i) + ": " + nth($query, $i + 1) + ") ";
-
- @if ($i + 1) != $loop-to {
- $media-query: $media-query + "and ";
- }
-
- $i: $i + 2;
- }
-
- @media #{$media-query} {
- @content;
- $grid-columns: $default-grid-columns !global;
- }
- }
-}
diff --git a/html_orig/sass/lib/neat/grid/_omega.scss b/html_orig/sass/lib/neat/grid/_omega.scss
deleted file mode 100755
index 80f918a..0000000
--- a/html_orig/sass/lib/neat/grid/_omega.scss
+++ /dev/null
@@ -1,87 +0,0 @@
-@charset "UTF-8";
-
-/// Removes the element's gutter margin, regardless of its position in the grid hierarchy or display property. It can target a specific element, or every `nth-child` occurrence. Works only with `block` layouts.
-///
-/// @param {List} $query [block]
-/// List of arguments. Supported arguments are `nth-child` selectors (targets a specific pseudo element) and `auto` (targets `last-child`).
-///
-/// When passed an `nth-child` argument of type `*n` with `block` display, the omega mixin automatically adds a clear to the `*n+1` th element. Note that composite arguments such as `2n+1` do not support this feature.
-///
-/// **Deprecation warning**: The omega mixin will no longer take a `$direction` argument. To change the layout direction, use `row($direction)` or set `$default-layout-direction` instead.
-///
-/// @example scss - Usage
-/// .element {
-/// @include omega;
-/// }
-///
-/// .nth-element {
-/// @include omega(4n);
-/// }
-///
-/// @example css - CSS Output
-/// .element {
-/// margin-right: 0;
-/// }
-///
-/// .nth-element:nth-child(4n) {
-/// margin-right: 0;
-/// }
-///
-/// .nth-element:nth-child(4n+1) {
-/// clear: left;
-/// }
-
-@mixin omega($query: block, $direction: default) {
- $table: belongs-to(table, $query);
- $auto: belongs-to(auto, $query);
-
- @if $direction != default {
- @include -neat-warn("The omega mixin will no longer take a $direction argument. To change the layout direction, use the direction(){...} mixin.");
- } @else {
- $direction: get-direction($layout-direction, $default-layout-direction);
- }
-
- @if $table {
- @include -neat-warn("The omega mixin no longer removes padding in table layouts.");
- }
-
- @if length($query) == 1 {
- @if $auto {
- &:last-child {
- margin-#{$direction}: 0;
- }
- }
-
- @else if contains-display-value($query) and $table == false {
- margin-#{$direction}: 0;
- }
-
- @else {
- @include nth-child($query, $direction);
- }
- } @else if length($query) == 2 {
- @if $auto {
- &:last-child {
- margin-#{$direction}: 0;
- }
- } @else {
- @include nth-child(nth($query, 1), $direction);
- }
- } @else {
- @include -neat-warn("Too many arguments passed to the omega() mixin.");
- }
-}
-
-@mixin nth-child($query, $direction) {
- $opposite-direction: get-opposite-direction($direction);
-
- &:nth-child(#{$query}) {
- margin-#{$direction}: 0;
- }
-
- @if type-of($query) == number and unit($query) == "n" {
- &:nth-child(#{$query}+1) {
- clear: $opposite-direction;
- }
- }
-}
diff --git a/html_orig/sass/lib/neat/grid/_outer-container.scss b/html_orig/sass/lib/neat/grid/_outer-container.scss
deleted file mode 100755
index 5a375bb..0000000
--- a/html_orig/sass/lib/neat/grid/_outer-container.scss
+++ /dev/null
@@ -1,38 +0,0 @@
-@charset "UTF-8";
-
-/// Makes an element a outer container by centring it in the viewport, clearing its floats, and setting its `max-width`.
-/// Although optional, using `outer-container` is recommended. The mixin can be called on more than one element per page, as long as they are not nested.
-///
-/// @param {Number [unit]} $local-max-width [$max-width]
-/// Max width to be applied to the element. Can be a percentage or a measure.
-///
-/// @example scss - Usage
-/// .element {
-/// @include outer-container(100%);
-/// }
-///
-/// @example css - CSS Output
-/// .element {
-/// *zoom: 1;
-/// max-width: 100%;
-/// margin-left: auto;
-/// margin-right: auto;
-/// }
-///
-/// .element:before, .element:after {
-/// content: " ";
-/// display: table;
-/// }
-///
-/// .element:after {
-/// clear: both;
-/// }
-
-@mixin outer-container($local-max-width: $max-width) {
- @include clearfix;
- max-width: $local-max-width;
- margin: {
- left: auto;
- right: auto;
- }
-}
diff --git a/html_orig/sass/lib/neat/grid/_pad.scss b/html_orig/sass/lib/neat/grid/_pad.scss
deleted file mode 100755
index d697e1b..0000000
--- a/html_orig/sass/lib/neat/grid/_pad.scss
+++ /dev/null
@@ -1,25 +0,0 @@
-@charset "UTF-8";
-
-/// Adds padding to the element.
-///
-/// @param {List} $padding [flex-gutter()]
-/// A list of padding value(s) to use. Passing `default` in the list will result in using the gutter width as a padding value.
-///
-/// @example scss - Usage
-/// .element {
-/// @include pad(30px -20px 10px default);
-/// }
-///
-/// @example css - CSS Output
-/// .element {
-/// padding: 30px -20px 10px 2.35765%;
-/// }
-
-@mixin pad($padding: flex-gutter()) {
- $padding-list: null;
- @each $value in $padding {
- $value: if($value == 'default', flex-gutter(), $value);
- $padding-list: join($padding-list, $value);
- }
- padding: $padding-list;
-}
diff --git a/html_orig/sass/lib/neat/grid/_private.scss b/html_orig/sass/lib/neat/grid/_private.scss
deleted file mode 100755
index 4c4e18c..0000000
--- a/html_orig/sass/lib/neat/grid/_private.scss
+++ /dev/null
@@ -1,35 +0,0 @@
-$parent-columns: $grid-columns !default;
-$fg-column: $column;
-$fg-gutter: $gutter;
-$fg-max-columns: $grid-columns;
-$container-display-table: false !default;
-$layout-direction: LTR !default;
-
-@function flex-grid($columns, $container-columns: $fg-max-columns) {
- $width: $columns * $fg-column + ($columns - 1) * $fg-gutter;
- $container-width: $container-columns * $fg-column + ($container-columns - 1) * $fg-gutter;
- @return percentage($width / $container-width);
-}
-
-@function flex-gutter($container-columns: $fg-max-columns, $gutter: $fg-gutter) {
- $container-width: $container-columns * $fg-column + ($container-columns - 1) * $fg-gutter;
- @return percentage($gutter / $container-width);
-}
-
-@function grid-width($n) {
- @return $n * $gw-column + ($n - 1) * $gw-gutter;
-}
-
-@function get-parent-columns($columns) {
- @if $columns != $grid-columns {
- $parent-columns: $columns !global;
- } @else {
- $parent-columns: $grid-columns !global;
- }
-
- @return $parent-columns;
-}
-
-@function is-display-table($container-is-display-table, $display) {
- @return $container-is-display-table == true or $display == table;
-}
diff --git a/html_orig/sass/lib/neat/grid/_row.scss b/html_orig/sass/lib/neat/grid/_row.scss
deleted file mode 100755
index 4d913a9..0000000
--- a/html_orig/sass/lib/neat/grid/_row.scss
+++ /dev/null
@@ -1,52 +0,0 @@
-@charset "UTF-8";
-
-/// Designates the element as a row of columns in the grid layout. It clears the floats on the element and sets its display property. Rows can't be nested, but there can be more than one row element—with different display properties—per layout.
-///
-/// @param {String} $display [default]
-/// Sets the display property of the element and the display context that will be used by its children. Can be `block` or `table`.
-///
-/// @param {String} $direction [$default-layout-direction]
-/// Sets the layout direction. Can be `LTR` (left-to-right) or `RTL` (right-to-left).
-///
-/// @example scss - Usage
-/// .element {
-/// @include row();
-/// }
-///
-/// @example css - CSS Output
-/// .element {
-/// *zoom: 1;
-/// display: block;
-/// }
-///
-/// .element:before, .element:after {
-/// content: " ";
-/// display: table;
-/// }
-///
-/// .element:after {
-/// clear: both;
-/// }
-
-@mixin row($display: default, $direction: $default-layout-direction) {
- @if $direction != $default-layout-direction {
- @include -neat-warn("The $direction argument will be deprecated in future versions in favor of the direction(){...} mixin.");
- }
-
- $layout-direction: $direction !global;
-
- @if $display != default {
- @include -neat-warn("The $display argument will be deprecated in future versions in favor of the display(){...} mixin.");
- }
-
- @if $display == table {
- display: table;
- @include fill-parent;
- table-layout: fixed;
- $container-display-table: true !global;
- } @else {
- @include clearfix;
- display: block;
- $container-display-table: false !global;
- }
-}
diff --git a/html_orig/sass/lib/neat/grid/_shift.scss b/html_orig/sass/lib/neat/grid/_shift.scss
deleted file mode 100755
index c0f24cd..0000000
--- a/html_orig/sass/lib/neat/grid/_shift.scss
+++ /dev/null
@@ -1,50 +0,0 @@
-@charset "UTF-8";
-
-/// Translates an element horizontally by a number of columns. Positive arguments shift the element to the active layout direction, while negative ones shift it to the opposite direction.
-///
-/// @param {Number (unitless)} $n-columns [1]
-/// Number of columns by which the element shifts.
-///
-/// @example scss - Usage
-/// .element {
-/// @include shift(-3);
-/// }
-///
-/// @example css - CSS output
-/// .element {
-/// margin-left: -25.58941%;
-/// }
-
-@mixin shift($n-columns: 1) {
- @include shift-in-context($n-columns);
-}
-
-/// Translates an element horizontally by a number of columns, in a specific nesting context.
-///
-/// @param {List} $shift
-/// A list containing the number of columns to shift (`$columns`) and the number of columns of the parent element (`$container-columns`).
-///
-/// The two values can be separated with any string such as `of`, `/`, etc.
-///
-/// @example scss - Usage
-/// .element {
-/// @include shift(-3 of 6);
-/// }
-///
-/// @example css - CSS output
-/// .element {
-/// margin-left: -52.41458%;
-/// }
-
-@mixin shift-in-context($shift: $columns of $container-columns) {
- $n-columns: nth($shift, 1);
- $parent-columns: container-shift($shift) !global;
-
- $direction: get-direction($layout-direction, $default-layout-direction);
- $opposite-direction: get-opposite-direction($direction);
-
- margin-#{$opposite-direction}: $n-columns * flex-grid(1, $parent-columns) + $n-columns * flex-gutter($parent-columns);
-
- // Reset nesting context
- $parent-columns: $grid-columns !global;
-}
diff --git a/html_orig/sass/lib/neat/grid/_span-columns.scss b/html_orig/sass/lib/neat/grid/_span-columns.scss
deleted file mode 100755
index f128399..0000000
--- a/html_orig/sass/lib/neat/grid/_span-columns.scss
+++ /dev/null
@@ -1,94 +0,0 @@
-@charset "UTF-8";
-
-/// Specifies the number of columns an element should span. If the selector is nested the number of columns of its parent element should be passed as an argument as well.
-///
-/// @param {List} $span
-/// A list containing `$columns`, the unitless number of columns the element spans (required), and `$container-columns`, the number of columns the parent element spans (optional).
-///
-/// If only one value is passed, it is assumed that it's `$columns` and that that `$container-columns` is equal to `$grid-columns`, the total number of columns in the grid.
-///
-/// The values can be separated with any string such as `of`, `/`, etc.
-///
-/// `$columns` also accepts decimals for when it's necessary to break out of the standard grid. E.g. Passing `2.4` in a standard 12 column grid will divide the row into 5 columns.
-///
-/// @param {String} $display [block]
-/// Sets the display property of the element. By default it sets the display propert of the element to `block`.
-///
-/// If passed `block-collapse`, it also removes the margin gutter by adding it to the element width.
-///
-/// If passed `table`, it sets the display property to `table-cell` and calculates the width of the element without taking gutters into consideration. The result does not align with the block-based grid.
-///
-/// @example scss - Usage
-/// .element {
-/// @include span-columns(6);
-///
-/// .nested-element {
-/// @include span-columns(2 of 6);
-/// }
-/// }
-///
-/// @example css - CSS Output
-/// .element {
-/// display: block;
-/// float: left;
-/// margin-right: 2.35765%;
-/// width: 48.82117%;
-/// }
-///
-/// .element:last-child {
-/// margin-right: 0;
-/// }
-///
-/// .element .nested-element {
-/// display: block;
-/// float: left;
-/// margin-right: 4.82916%;
-/// width: 30.11389%;
-/// }
-///
-/// .element .nested-element:last-child {
-/// margin-right: 0;
-/// }
-
-@mixin span-columns($span: $columns of $container-columns, $display: block) {
- $columns: nth($span, 1);
- $container-columns: container-span($span);
-
- $parent-columns: get-parent-columns($container-columns) !global;
-
- $direction: get-direction($layout-direction, $default-layout-direction);
- $opposite-direction: get-opposite-direction($direction);
-
- $display-table: is-display-table($container-display-table, $display);
-
- @if $display-table {
- display: table-cell;
- width: percentage($columns / $container-columns);
- } @else {
- float: #{$opposite-direction};
-
- @if $display != no-display {
- display: block;
- }
-
- @if $display == collapse {
- @include -neat-warn("The 'collapse' argument will be deprecated. Use 'block-collapse' instead.");
- }
-
- @if $display == collapse or $display == block-collapse {
- width: flex-grid($columns, $container-columns) + flex-gutter($container-columns);
-
- &:last-child {
- width: flex-grid($columns, $container-columns);
- }
-
- } @else {
- margin-#{$direction}: flex-gutter($container-columns);
- width: flex-grid($columns, $container-columns);
-
- &:last-child {
- margin-#{$direction}: 0;
- }
- }
- }
-}
diff --git a/html_orig/sass/lib/neat/grid/_to-deprecate.scss b/html_orig/sass/lib/neat/grid/_to-deprecate.scss
deleted file mode 100755
index aeea079..0000000
--- a/html_orig/sass/lib/neat/grid/_to-deprecate.scss
+++ /dev/null
@@ -1,97 +0,0 @@
-@charset "UTF-8";
-
-@mixin breakpoint($query:$feature $value $columns, $total-columns: $grid-columns) {
- @include -neat-warn("The breakpoint() mixin was renamed to media() in Neat 1.0. Please update your project with the new syntax before the next version bump.");
-
- @if length($query) == 1 {
- @media screen and ($default-feature: nth($query, 1)) {
- $default-grid-columns: $grid-columns;
- $grid-columns: $total-columns;
- @content;
- $grid-columns: $default-grid-columns;
- }
- } @else if length($query) == 2 {
- @media screen and (nth($query, 1): nth($query, 2)) {
- $default-grid-columns: $grid-columns;
- $grid-columns: $total-columns;
- @content;
- $grid-columns: $default-grid-columns;
- }
- } @else if length($query) == 3 {
- @media screen and (nth($query, 1): nth($query, 2)) {
- $default-grid-columns: $grid-columns;
- $grid-columns: nth($query, 3);
- @content;
- $grid-columns: $default-grid-columns;
- }
- } @else if length($query) == 4 {
- @media screen and (nth($query, 1): nth($query, 2)) and (nth($query, 3): nth($query, 4)) {
- $default-grid-columns: $grid-columns;
- $grid-columns: $total-columns;
- @content;
- $grid-columns: $default-grid-columns;
- }
- } @else if length($query) == 5 {
- @media screen and (nth($query, 1): nth($query, 2)) and (nth($query, 3): nth($query, 4)) {
- $default-grid-columns: $grid-columns;
- $grid-columns: nth($query, 5);
- @content;
- $grid-columns: $default-grid-columns;
- }
- } @else {
- @include -neat-warn("Wrong number of arguments for breakpoint(). Read the documentation for more details.");
- }
-}
-
-@mixin nth-omega($nth, $display: block, $direction: default) {
- @include -neat-warn("The nth-omega() mixin is deprecated. Please use omega() instead.");
- @include omega($nth $display, $direction);
-}
-
-/// Resets the active display property to `block`. Particularly useful when changing the display property in a single row.
-///
-/// @example scss - Usage
-/// .element {
-/// @include row(table);
-/// // Context changed to table display
-/// }
-///
-/// @include reset-display;
-/// // Context is reset to block display
-
-@mixin reset-display {
- $container-display-table: false !global;
- @include -neat-warn("Resetting $display will be deprecated in future versions in favor of the display(){...} mixin.");
-}
-
-/// Resets the active layout direction to the default value set in `$default-layout-direction`. Particularly useful when changing the layout direction in a single row.
-///
-/// @example scss - Usage
-/// .element {
-/// @include row($direction: RTL);
-/// // Context changed to right-to-left
-/// }
-///
-/// @include reset-layout-direction;
-/// // Context is reset to left-to-right
-
-@mixin reset-layout-direction {
- $layout-direction: $default-layout-direction !global;
- @include -neat-warn("Resetting $direction will be deprecated in future versions in favor of the direction(){...} mixin.");
-}
-
-/// Resets both the active layout direction and the active display property.
-///
-/// @example scss - Usage
-/// .element {
-/// @include row(table, RTL);
-/// // Context changed to table table and right-to-left
-/// }
-///
-/// @include reset-all;
-/// // Context is reset to block display and left-to-right
-
-@mixin reset-all {
- @include reset-display;
- @include reset-layout-direction;
-}
diff --git a/html_orig/sass/lib/neat/grid/_visual-grid.scss b/html_orig/sass/lib/neat/grid/_visual-grid.scss
deleted file mode 100755
index 1192d82..0000000
--- a/html_orig/sass/lib/neat/grid/_visual-grid.scss
+++ /dev/null
@@ -1,42 +0,0 @@
-@charset "UTF-8";
-
-@mixin grid-column-gradient($values...) {
- background-image: -webkit-linear-gradient(left, $values);
- background-image: -moz-linear-gradient(left, $values);
- background-image: -ms-linear-gradient(left, $values);
- background-image: -o-linear-gradient(left, $values);
- background-image: unquote("linear-gradient(to left, #{$values})");
-}
-
-@if $visual-grid == true or $visual-grid == yes {
- body:before {
- @include grid-column-gradient(gradient-stops($grid-columns));
- content: "";
- display: inline-block;
- height: 100%;
- left: 0;
- margin: 0 auto;
- max-width: $max-width;
- opacity: $visual-grid-opacity;
- pointer-events: none;
- position: fixed;
- right: 0;
- width: 100%;
-
- @if $visual-grid-index == back {
- z-index: -1;
- }
-
- @else if $visual-grid-index == front {
- z-index: 9999;
- }
-
- @each $breakpoint in $visual-grid-breakpoints {
- @if $breakpoint {
- @include media($breakpoint) {
- @include grid-column-gradient(gradient-stops($grid-columns));
- }
- }
- }
- }
-}
diff --git a/html_orig/sass/lib/neat/settings/_disable-warnings.scss b/html_orig/sass/lib/neat/settings/_disable-warnings.scss
deleted file mode 100755
index 3f9b92a..0000000
--- a/html_orig/sass/lib/neat/settings/_disable-warnings.scss
+++ /dev/null
@@ -1,13 +0,0 @@
-@charset "UTF-8";
-
-/// Disable all deprecation warnings. Defaults to `false`. Set with a `!global` flag.
-///
-/// @type Bool
-
-$disable-warnings: false !default;
-
-@mixin -neat-warn($message) {
- @if $disable-warnings == false {
- @warn "#{$message}";
- }
-}
diff --git a/html_orig/sass/lib/neat/settings/_grid.scss b/html_orig/sass/lib/neat/settings/_grid.scss
deleted file mode 100755
index c4e55dc..0000000
--- a/html_orig/sass/lib/neat/settings/_grid.scss
+++ /dev/null
@@ -1,51 +0,0 @@
-@charset "UTF-8";
-
-/// Sets the relative width of a single grid column. The unit used should be the same one used to define `$gutter`. To learn more about modular-scale() see [Bourbon docs](http://bourbon.io/docs/#modular-scale). Set with a `!global` flag.
-///
-/// @type Number (Unit)
-
-$column: modular-scale(3, 1em, $golden) !default;
-
-/// Sets the relative width of a single grid gutter. The unit used should be the same one used to define `$column`. To learn more about modular-scale() see [Bourbon docs](http://bourbon.io/docs/#modular-scale). Set with the `!global` flag.
-///
-/// @type Number (Unit)
-
-$gutter: modular-scale(1, 1em, $golden) !default;
-
-/// Sets the total number of columns in the grid. Its value can be overridden inside a media query using the `media()` mixin. Set with the `!global` flag.
-///
-/// @type Number (Unitless)
-
-$grid-columns: 12 !default;
-
-/// Sets the max-width property of the element that includes `outer-container()`. To learn more about `em()` see [Bourbon docs](http://bourbon.io/docs/#px-to-em). Set with the `!global` flag.
-///
-/// @type Number (Unit)
-///
-$max-width: em(1088) !default;
-
-/// When set to true, it sets the box-sizing property of all elements to `border-box`. Set with a `!global` flag.
-///
-/// @type Bool
-///
-/// @example css - CSS Output
-/// html {
-/// box-sizing: border-box; }
-///
-/// *, *::after, *::before {
-/// box-sizing: inherit;
-/// }
-
-$border-box-sizing: true !default;
-
-/// Sets the default [media feature](http://www.w3.org/TR/css3-mediaqueries/#media) that `media()` and `new-breakpoint()` revert to when only a breakpoint value is passed. Set with a `!global` flag.
-///
-/// @type String
-
-$default-feature: min-width; // Default @media feature for the breakpoint() mixin
-
-///Sets the default layout direction of the grid. Can be `LTR` or `RTL`. Set with a `!global` flag.
-///
-///@type String
-
-$default-layout-direction: LTR !default;
diff --git a/html_orig/sass/lib/neat/settings/_visual-grid.scss b/html_orig/sass/lib/neat/settings/_visual-grid.scss
deleted file mode 100755
index 9cd1815..0000000
--- a/html_orig/sass/lib/neat/settings/_visual-grid.scss
+++ /dev/null
@@ -1,27 +0,0 @@
-@charset "UTF-8";
-
-/// Displays the visual grid when set to true. The overlaid grid may be few pixels off depending on the browser's rendering engine and pixel rounding algorithm. Set with the `!global` flag.
-///
-/// @type Bool
-
-$visual-grid: false !default;
-
-/// Sets the visual grid color. Set with `!global` flag.
-///
-/// @type Color
-
-$visual-grid-color: #eee !default;
-
-/// Sets the `z-index` property of the visual grid. Can be `back` (behind content) or `front` (in front of content). Set with `!global` flag.
-///
-/// @type String
-
-$visual-grid-index: back !default;
-
-/// Sets the opacity property of the visual grid. Set with `!global` flag.
-///
-/// @type Number (unitless)
-
-$visual-grid-opacity: 0.4 !default;
-
-$visual-grid-breakpoints: () !default;
diff --git a/html_orig/sass/pages/_about.scss b/html_orig/sass/pages/_about.scss
deleted file mode 100644
index 072d2f5..0000000
--- a/html_orig/sass/pages/_about.scss
+++ /dev/null
@@ -1,128 +0,0 @@
-.page-about {
- .Box {
- padding-left:dist(0);
- padding-right:dist(0);
-
- a {font-weight: bold;}
- }
-
- #logo {
- float:right;
- height: 130px;
- }
-
- // mobile friendly
- #logo2 {
- max-width: 100%;
- margin: 1rem;
- }
-
- td {
- white-space: normal;
- }
-}
-
-.page-help {
- code {
- background: rgba(33, 97, 109, 0.31);
- border-radius: 1px;
- padding: 0 2px;
- }
-}
-
-.colorprev {
- margin-top: dist(-2);
- margin-bottom: dist(-2);
- span {
- display: inline-block;
- width: 2em;
- padding: dist(-2) 0;
- text-align: center;
- }
-}
-
-.Row table {
- &,td,th{
- border: 1px solid #666;
- }
-
- th,td {
- white-space: normal;
- }
-
- th {
- background-color: rgba(255,255,255,.1);
- }
-}
-
-.ansiref {
- &.w100 {
- width: 100%;
-
- td:nth-child(1) {
- width: 8em;
- }
- }
-}
-
-.nomen {
- width: 100%;
-
- code {
- white-space: nowrap;
- }
-
- td:last-child {
- min-width: 15em;
- }
-}
-
-.tscroll {
- overflow-x: auto;
-}
-
-.charset {
- line-height: 1;
-
- div {
- display: inline-block;
- width: 2.7em;
- border: 1px solid #666;
- height: 3em;
- margin: 1px;
- position: relative;
-
- span {
- display: block;
- position: absolute;
- }
-
- span:nth-child(1) {
- left: .2em;
- top: .2em;
- height: 1em;
- font-size: 85%;
- color: #999;
- }
-
- span:nth-child(2) {
- right: .2em;
- top: .2em;
- height: 1em;
- font-size: 85%;
- color: #999;
- }
-
- span:nth-child(3) {
- width: 100%;
- font-size: 105%;
- text-align: center;
- bottom: .4em;
- font-family: $screen-stack;
- }
-
- &.none {
- opacity: .4;
- }
- }
-}
diff --git a/html_orig/sass/pages/_term.scss b/html_orig/sass/pages/_term.scss
deleted file mode 100755
index c53298f..0000000
--- a/html_orig/sass/pages/_term.scss
+++ /dev/null
@@ -1,324 +0,0 @@
-body.term {
- #content {
- padding-left: 0;
- padding-right: 0;
-
- h1 {
- font-size: fsize(5);
- @include media($phone) {
- font-size: fsize(3);
- }
- }
-
- // longer duration to load everything in background nicely
- transition: opacity 0.25s ease-in;
- }
-}
-
-#screen {
- white-space: nowrap;
- background: #111213;
- padding: 6px;
- display: inline-block;
- border: 2px solid #3983CD;
- position: relative;
-
- font-size: 20px; // some font heights cause visual glitches with some font renderers. This should be configurable.
- font-family: $screen-stack;
-
- canvas.selectable {
- cursor: text;
- }
-
- @include noselect();
-
- // Dummy input field used to open soft keyboard
- #softkb-input {
- position: absolute;
- // compensate for padding
- top: 6px;
- left: 6px;
- width: 1em;
- height: 1em;
- background: none;
- border: none;
- resize: none;
- overflow: hidden;
- opacity: 0;
- outline: 0 none !important;
- caret-color: transparent;
- color: transparent;
- @include click-through;
- }
-
- #touch-select-menu {
- display: none;
- position: absolute;
- // compensate for padding
- top: 6px;
- left: 6px;
-
- &.open {
- display: block;
- }
- }
-}
-
-#action-buttons {
- margin-top: 10px;
- white-space: nowrap;
-
- button {
- margin: 0 3px;
- padding: 8px 5px;
- min-width: 62px;
- cursor: pointer;
- font-weight: bold;
-
- &:focus {
- outline: 0 none !important;
- }
- }
-}
-
-#term-nav {
- padding-top: 1.5em;
- text-align: center;
-
- a {
- text-decoration: none;
- padding: 5px 5px;
- border-radius: 2px;
- position: relative;
-
- &, &:visited, &:link {
- color: #336085;
- }
-
- &:hover {
- color: #5abfff;
- background: #1b273c;
- }
-
- &:active {
- top: 1px;
- }
-
- i::before {
- display: inline;
- }
-
- span {
- margin-left: .2em;
- }
-
- @include media($phone) {
- span {
- display: none;
- }
-
- font-size: 130%;
- padding: 6px;
- }
- }
-
- .icn-keyboard {
- text-decoration: none;
- font-size: 130%; // make it bigger - icon is too small to be recognizable
- vertical-align: middle;
- }
-}
-
-#term-wrap {
- text-align: center;
-}
-
-#fu_modal {
- align-items: flex-start;
-}
-
-#fu_form {
- //border: 1px solid #3983CD;
- //border-radius: 2px;
- //padding: 0 dist(0);
- //background: #333e58;
- padding: dist(0);
- margin-top: 100px; // offset
-
- z-index: 1000;
-
- label {
- width: 8em;
- display: inline-block;
- }
-
- input[type="number"], select {
- width: 10em;
- }
-
- textarea {
- width: 100%;
- min-height: 8em;
- margin-top: dist(-1);
- resize: vertical;
- }
-
- .fu-buttons {
- text-align: center;
- padding: dist(-2);
- margin-top: dist(-2);
- border-radius: 3px;
- }
-
- .fu-prog-box {
- display: none;
- }
-
- &.busy {
- background: rgba($c-modal-bg, .3);
- border-left-color: rgba($c-form-highlight, .3);
- border-right-color: rgba($c-form-highlight, .3);
-
- .fu-content {
- @include click-through;
- opacity: .3;
- }
-
- .fu-buttons {
- text-align: left;
- background: $c-modal-bg;
- border: 1px solid $c-form-highlight;
- }
-
- .fu-prog-box {
- display: inline-block;
- }
- }
-}
-
-// Tango
-.theme-0 {
- $term-colors:
- #111213, #CC0000, #4E9A06, #C4A000, #3465A4, #75507B, #06989A, #D3D7CF,
- #555753, #EF2929, #8AE234, #FCE94F, #729FCF, #AD7FA8, #34E2E2, #EEEEEC;
- @for $i from 1 through length($term-colors) {
- $c: nth($term-colors, $i);
- .fg#{$i - 1} { color: $c; }
- .bg#{$i - 1} { background-color: $c; }
- }
-}
-
-// Linux
-.theme-1 {
- $term-colors:
- #000000, #aa0000, #00aa00, #aa5500, #0000aa, #aa00aa, #00aaaa, #aaaaaa,
- #555555, #ff5555, #55ff55, #ffff55, #5555ff, #ff55ff, #55ffff, #ffffff;
- @for $i from 1 through length($term-colors) {
- $c: nth($term-colors, $i);
- .fg#{$i - 1} { color: $c; }
- .bg#{$i - 1} { background-color: $c; }
- }
-}
-
-// xterm
-.theme-2 {
- $term-colors:
- #000000, #cd0000, #00cd00, #cdcd00, #0000ee, #cd00cd, #00cdcd, #e5e5e5,
- #7f7f7f, #ff0000, #00ff00, #ffff00, #5c5cff, #ff00ff, #00ffff, #ffffff;
- @for $i from 1 through length($term-colors) {
- $c: nth($term-colors, $i);
- .fg#{$i - 1} { color: $c; }
- .bg#{$i - 1} { background-color: $c; }
- }
-}
-
-// rxvt
-.theme-3 {
- $term-colors:
- #000000, #cd0000, #00cd00, #cdcd00, #0000cd, #cd00cd, #00cdcd, #faebd7,
- #404040, #ff0000, #00ff00, #ffff00, #0000ff, #ff00ff, #00ffff, #ffffff;
- @for $i from 1 through length($term-colors) {
- $c: nth($term-colors, $i);
- .fg#{$i - 1} { color: $c; }
- .bg#{$i - 1} { background-color: $c; }
- }
-}
-
-// Ambience
-.theme-4 {
- $term-colors:
- #2e3436, #cc0000, #4e9a06, #c4a000, #3465a4, #75507b, #06989a, #d3d7cf,
- #555753, #ef2929, #8ae234, #fce94f, #729fcf, #ad7fa8, #34e2e2, #eeeeec;
- @for $i from 1 through length($term-colors) {
- $c: nth($term-colors, $i);
- .fg#{$i - 1} { color: $c; }
- .bg#{$i - 1} { background-color: $c; }
- }
-}
-
-// Solarized
-.theme-5 {
- $term-colors:
- #073642, #dc322f, #859900, #b58900, #268bd2, #d33682, #2aa198, #eee8d5,
- #002b36, #cb4b16, #586e75, #657b83, #839496, #6c71c4, #93a1a1, #fdf6e3;
- @for $i from 1 through length($term-colors) {
- $c: nth($term-colors, $i);
- .fg#{$i - 1} { color: $c; }
- .bg#{$i - 1} { background-color: $c; }
- }
-}
-
-// Attributes
-.bold {
- font-weight: bold !important;
-}
-
-.faint span { // content of faint is wrapped in span
- opacity: 0.6;
-}
-
-.italic {
- font-style: italic;
-}
-
-.under {
- text-decoration: underline;
-}
-
-.strike {
- text-decoration: line-through;
-}
-
-.underline.strike {
- text-decoration: underline line-through;
-}
-
-.blink-hide .blink {
- color: transparent;
-}
-//
-
-.Row.color-preview {
- font-family: monospace;
- font-size: 16pt;
- display: block;
- margin-bottom: 0;
-
- padding-left: $form-label-w;
-
- @include media($phone) {
- padding-left: 0;
- font-size: 14pt;
- }
-
- .colorprev {
- display:block;
- margin: 0;
- cursor: pointer;
- }
-}
-
-#color-example {
- display: inline-block;
- padding: 5px;
-}
diff --git a/html_orig/sass/pages/_wifi.scss b/html_orig/sass/pages/_wifi.scss
deleted file mode 100755
index b71f8dc..0000000
--- a/html_orig/sass/pages/_wifi.scss
+++ /dev/null
@@ -1,186 +0,0 @@
-#ap-list {
- column-count: 3;
- column-gap: 0;
-
- @include media($tablet) {
- column-count: 2;
- }
-
- @include media($phone) {
- column-count: 1;
- }
-
- margin: 0 (- dist(-3));
-}
-
-#ap-loader, #ap-noscan, #ap-scan {
- background: rgba(white, .1);
- border-radius: 5px;
- padding: dist(-2);
- margin-bottom: dist(-2);
- margin-top: dist(-2);
- font-size: 110%;
-}
-
-#ap-noscan {
- font-weight: bold;
-}
-
-#ap-box {
- padding-top: dist(-2);
-
- label {
- display: block;
- color: white;
- font-weight: bold;
- margin-bottom: dist(-3);
- }
-}
-
-#psk-modal form {
- @extend %form-row-spacing;
- display: flex;
- align-items: center;
- margin: dist(-2);
-
- input[type=password] {
- min-width: 5rem;
- }
-}
-
-#wificonfbox form {
- @extend %form-row-spacing;
-}
-
-%ap-inner {
- cursor: pointer;
- @include noselect;
-
- position: relative;
- &:active {
- left: 0;
- top: 1px;
- }
-
- border-radius: 3px;
- color: #222;
-
- background: #afafaf;
- transition: background-color 0.5s;
- &:hover { background: white }
-
- display: flex;
-
- .rssi {
- min-width: 2.5rem;
- flex: 0 0 15%;
- text-align: right;
-
- &:after {
- padding-left: dist(-5);
- content: '%';
- font-size: fsize(-1);
- }
- }
-
- .essid {
- flex: 1 1 70%;
- min-width: 0;
- text-overflow: ellipsis;
- overflow: hidden;
- font-weight: bold;
- }
-
- .auth {
- flex: 0 0 15%;
- }
-}
-
-.AP {
- // can't use margins inside a column
-
- break-inside: avoid-column;
- max-width: 500px;
- padding: dist(-3);
-
- &.selected .inner {//#70dfa3
- background: #42a6f9 !important; // override the hover effect #43de81
- cursor: default;
- top: 0 !important; // no click effect
- }
-
- .inner {
- @extend %ap-inner;
-
- & > * {
- padding: dist(-1);
- @include nowrap;
- }
- }
-}
-
-.AP-preview-nil {
- padding: 8px;
- border-radius: 5px;
- border: 1px dashed #ddd;
- width: 250px;
- height: 94px;
-}
-
-.AP-preview {
- .wrap {
- @extend %ap-inner;
-
- flex-direction: row;
- background: #ddd !important; // override the hover effect #43de81
- cursor: default;
- top: 0 !important; // no click effect
- overflow: hidden;
-
- .inner {
- display: flex;
- flex-direction: column;
-
- & > * {
- padding: dist(-1);
- @include nowrap;
- }
- }
- .forget {
- align-self: stretch;
- line-height: 100%;
- padding: dist(-1);
- border-left: 1px solid #bbb;
- display: flex;
- align-items: center;
-
- &, &:hover {
- color: black;
- text-decoration: none;
- }
-
- font-size: 28px;
-
- &:hover {
- background: #dc4a6a;
- color: white;
- border-left: 1px solid #666;
- border-bottom-right-radius: 3px;
- border-top-right-radius: 3px;
- }
-
- &:active {
- position: relative;
- padding-top: calc(#{dist(-1)} + 1px);
- }
- }
-
- .essid, .passwd, .nopasswd {
- padding-bottom: 0;
- }
-
- .x-passwd {
- font-family: monospace;
- }
- }
-}
diff --git a/html_orig/sass/utils/_background-tiling.scss b/html_orig/sass/utils/_background-tiling.scss
deleted file mode 100755
index c1c5916..0000000
--- a/html_orig/sass/utils/_background-tiling.scss
+++ /dev/null
@@ -1,68 +0,0 @@
-
-// Utilities for background tiling
-
-// Use a tile as background (w, h - size of time)
-@mixin tile_xy($w, $h, $x, $y) {
- background-position: (-$x*$w) (-$y*$h);
-}
-
-
-// Use a square tile as background (size - w & h of time)
-@mixin tile($size, $x, $y) {
- @include tile_xy($size, $size, $x, $y);
-}
-
-
-// Button with sprite-sheet
-// A B
-// B:hover B:hover
-@mixin tile_btn_h($w, $h, $x) {
- @include tile_xy($w, $h, $x, 0);
- &:hover {
- @include tile_xy($w, $h, $x, 1);
- }
-}
-
-// active the same as hover
-@mixin tile_btn_h_act($w, $h, $x) {
- @include tile_xy($w, $h, $x, 0);
- &:hover, &.active {
- @include tile_xy($w, $h, $x, 1);
- }
-}
-
-
-
-// Button with sprite-sheet
-// A A:hover
-// B B:hover
-@mixin tile_btn_v($w, $h, $y) {
- @include tile_xy($w, $h, 0, $y);
- &:hover {
- @include tile_xy($w, $h, 1, $y);
- }
-}
-
-// active the same as hover
-@mixin tile_btn_v_act($w, $h, $y) {
- @include tile_xy($w, $h, 0, $y);
- &:hover, &.active {
- @include tile_xy($w, $h, 1, $y);
- }
-}
-
-@mixin inset-shadow-top($w, $c) {
- box-shadow: inset 0 $w ($w*2) (-$w) $c;
-}
-
-@mixin inset-shadow-bottom($w, $c) {
- box-shadow: inset 0 (-$w) ($w*2) (-$w) $c;
-}
-
-@mixin inset-shadow-left($w, $c) {
- box-shadow: inset $w 0 ($w*2) (-$w) $c;
-}
-
-@mixin inset-shadow-right($w, $c) {
- box-shadow: inset (-$w) 0 ($w*2) (-$w) $c;
-}
diff --git a/html_orig/sass/utils/_index.scss b/html_orig/sass/utils/_index.scss
deleted file mode 100755
index 4e98733..0000000
--- a/html_orig/sass/utils/_index.scss
+++ /dev/null
@@ -1,3 +0,0 @@
-@import "background-tiling";
-@import "pointer";
-@import "misc";
diff --git a/html_orig/sass/utils/_misc.scss b/html_orig/sass/utils/_misc.scss
deleted file mode 100755
index 91c0d77..0000000
--- a/html_orig/sass/utils/_misc.scss
+++ /dev/null
@@ -1,34 +0,0 @@
-// Add a highlight for debugging
-@mixin highlight($color) {
- outline: 1px solid $color;
- background: rgba($color, .05);
- box-shadow: 0 0 2px 2px rgba($color, .2), inset 0 0 2px 2px rgba($color, .2);
-}
-
-// Ellipsis, but for block elements
-@mixin block-ellipsis($width: 100%) {
- display: block;
- max-width: $width;
- overflow: hidden;
- text-overflow: ellipsis;
- white-space: nowrap;
- word-wrap: normal;
-}
-
-// No margins, padding, borders
-@mixin naked() {
- border: 0 none;
- margin: 0;
- padding: 0;
- text-decoration: none;
-}
-
-@mixin translate($x, $y) {
- @include transform(translate($x, $y));
-}
-
-// Disallow wrapping
-@mixin nowrap() {
- white-space: nowrap;
- word-wrap: normal;
-}
diff --git a/html_orig/sass/utils/_pointer.scss b/html_orig/sass/utils/_pointer.scss
deleted file mode 100755
index c6a9179..0000000
--- a/html_orig/sass/utils/_pointer.scss
+++ /dev/null
@@ -1,26 +0,0 @@
-
-@mixin click-through() {
- pointer-events: none;
-}
-
-
-// Disallow text selection
-@mixin noselect() {
- -webkit-user-select: none;
- -khtml-user-select: none;
- -moz-user-select: none;
- -ms-user-select: none;
- user-select: none;
-}
-
-
-// Allow text selection
-@mixin can-select() {
- -webkit-user-select: text;
- -khtml-user-select: text;
- -moz-user-select: text;
- -ms-user-select: text;
- user-select: text;
-
- cursor: text;
-}
diff --git a/html_orig/server.sh b/html_orig/server.sh
deleted file mode 100755
index 467ae0b..0000000
--- a/html_orig/server.sh
+++ /dev/null
@@ -1,3 +0,0 @@
-#!/bin/bash
-
-xterm -e "php -S 0.0.0.0:2000"
diff --git a/html_orig/yarn.lock b/html_orig/yarn.lock
deleted file mode 100644
index 4ab5894..0000000
--- a/html_orig/yarn.lock
+++ /dev/null
@@ -1,1510 +0,0 @@
-# THIS IS AN AUTOGENERATED FILE. DO NOT EDIT THIS FILE DIRECTLY.
-# yarn lockfile v1
-
-
-abbrev@1:
- version "1.1.0"
- resolved "https://registry.yarnpkg.com/abbrev/-/abbrev-1.1.0.tgz#d0554c2256636e2f56e7c2e5ad183f859428d81f"
-
-ajv@^4.9.1:
- version "4.11.8"
- resolved "https://registry.yarnpkg.com/ajv/-/ajv-4.11.8.tgz#82ffb02b29e662ae53bdc20af15947706739c536"
- dependencies:
- co "^4.6.0"
- json-stable-stringify "^1.0.1"
-
-amdefine@>=0.0.4:
- version "1.0.1"
- resolved "https://registry.yarnpkg.com/amdefine/-/amdefine-1.0.1.tgz#4a5282ac164729e93619bcfd3ad151f817ce91f5"
-
-ansi-regex@^2.0.0:
- version "2.1.1"
- resolved "https://registry.yarnpkg.com/ansi-regex/-/ansi-regex-2.1.1.tgz#c3b33ab5ee360d86e0e628f0468ae7ef27d654df"
-
-ansi-styles@^2.2.1:
- version "2.2.1"
- resolved "https://registry.yarnpkg.com/ansi-styles/-/ansi-styles-2.2.1.tgz#b432dd3358b634cf75e1e4664368240533c1ddbe"
-
-aproba@^1.0.3:
- version "1.1.2"
- resolved "https://registry.yarnpkg.com/aproba/-/aproba-1.1.2.tgz#45c6629094de4e96f693ef7eab74ae079c240fc1"
-
-are-we-there-yet@~1.1.2:
- version "1.1.4"
- resolved "https://registry.yarnpkg.com/are-we-there-yet/-/are-we-there-yet-1.1.4.tgz#bb5dca382bb94f05e15194373d16fd3ba1ca110d"
- dependencies:
- delegates "^1.0.0"
- readable-stream "^2.0.6"
-
-array-find-index@^1.0.1:
- version "1.0.2"
- resolved "https://registry.yarnpkg.com/array-find-index/-/array-find-index-1.0.2.tgz#df010aa1287e164bbda6f9723b0a96a1ec4187a1"
-
-asn1@~0.2.3:
- version "0.2.3"
- resolved "https://registry.yarnpkg.com/asn1/-/asn1-0.2.3.tgz#dac8787713c9966849fc8180777ebe9c1ddf3b86"
-
-assert-plus@1.0.0, assert-plus@^1.0.0:
- version "1.0.0"
- resolved "https://registry.yarnpkg.com/assert-plus/-/assert-plus-1.0.0.tgz#f12e0f3c5d77b0b1cdd9146942e4e96c1e4dd525"
-
-assert-plus@^0.2.0:
- version "0.2.0"
- resolved "https://registry.yarnpkg.com/assert-plus/-/assert-plus-0.2.0.tgz#d74e1b87e7affc0db8aadb7021f3fe48101ab234"
-
-async-foreach@^0.1.3:
- version "0.1.3"
- resolved "https://registry.yarnpkg.com/async-foreach/-/async-foreach-0.1.3.tgz#36121f845c0578172de419a97dbeb1d16ec34542"
-
-asynckit@^0.4.0:
- version "0.4.0"
- resolved "https://registry.yarnpkg.com/asynckit/-/asynckit-0.4.0.tgz#c79ed97f7f34cb8f2ba1bc9790bcc366474b4b79"
-
-aws-sign2@~0.6.0:
- version "0.6.0"
- resolved "https://registry.yarnpkg.com/aws-sign2/-/aws-sign2-0.6.0.tgz#14342dd38dbcc94d0e5b87d763cd63612c0e794f"
-
-aws4@^1.2.1:
- version "1.6.0"
- resolved "https://registry.yarnpkg.com/aws4/-/aws4-1.6.0.tgz#83ef5ca860b2b32e4a0deedee8c771b9db57471e"
-
-babel-code-frame@^6.26.0:
- version "6.26.0"
- resolved "https://registry.yarnpkg.com/babel-code-frame/-/babel-code-frame-6.26.0.tgz#63fd43f7dc1e3bb7ce35947db8fe369a3f58c74b"
- dependencies:
- chalk "^1.1.3"
- esutils "^2.0.2"
- js-tokens "^3.0.2"
-
-babel-core@^6.24.1, babel-core@^6.26.0:
- version "6.26.0"
- resolved "https://registry.yarnpkg.com/babel-core/-/babel-core-6.26.0.tgz#af32f78b31a6fcef119c87b0fd8d9753f03a0bb8"
- dependencies:
- babel-code-frame "^6.26.0"
- babel-generator "^6.26.0"
- babel-helpers "^6.24.1"
- babel-messages "^6.23.0"
- babel-register "^6.26.0"
- babel-runtime "^6.26.0"
- babel-template "^6.26.0"
- babel-traverse "^6.26.0"
- babel-types "^6.26.0"
- babylon "^6.18.0"
- convert-source-map "^1.5.0"
- debug "^2.6.8"
- json5 "^0.5.1"
- lodash "^4.17.4"
- minimatch "^3.0.4"
- path-is-absolute "^1.0.1"
- private "^0.1.7"
- slash "^1.0.0"
- source-map "^0.5.6"
-
-babel-generator@^6.26.0:
- version "6.26.0"
- resolved "https://registry.yarnpkg.com/babel-generator/-/babel-generator-6.26.0.tgz#ac1ae20070b79f6e3ca1d3269613053774f20dc5"
- dependencies:
- babel-messages "^6.23.0"
- babel-runtime "^6.26.0"
- babel-types "^6.26.0"
- detect-indent "^4.0.0"
- jsesc "^1.3.0"
- lodash "^4.17.4"
- source-map "^0.5.6"
- trim-right "^1.0.1"
-
-babel-helper-evaluate-path@^0.2.0:
- version "0.2.0"
- resolved "https://registry.yarnpkg.com/babel-helper-evaluate-path/-/babel-helper-evaluate-path-0.2.0.tgz#0bb2eb01996c0cef53c5e8405e999fe4a0244c08"
-
-babel-helper-flip-expressions@^0.2.0:
- version "0.2.0"
- resolved "https://registry.yarnpkg.com/babel-helper-flip-expressions/-/babel-helper-flip-expressions-0.2.0.tgz#160d2090a3d9f9c64a750905321a0bc218f884ec"
-
-babel-helper-is-nodes-equiv@^0.0.1:
- version "0.0.1"
- resolved "https://registry.yarnpkg.com/babel-helper-is-nodes-equiv/-/babel-helper-is-nodes-equiv-0.0.1.tgz#34e9b300b1479ddd98ec77ea0bbe9342dfe39684"
-
-babel-helper-is-void-0@^0.2.0:
- version "0.2.0"
- resolved "https://registry.yarnpkg.com/babel-helper-is-void-0/-/babel-helper-is-void-0-0.2.0.tgz#6ed0ada8a9b1c5b6e88af6b47c1b3b5c080860eb"
-
-babel-helper-mark-eval-scopes@^0.2.0:
- version "0.2.0"
- resolved "https://registry.yarnpkg.com/babel-helper-mark-eval-scopes/-/babel-helper-mark-eval-scopes-0.2.0.tgz#7648aaf2ec92aae9b09a20ad91e8df5e1fcc94b2"
-
-babel-helper-remove-or-void@^0.2.0:
- version "0.2.0"
- resolved "https://registry.yarnpkg.com/babel-helper-remove-or-void/-/babel-helper-remove-or-void-0.2.0.tgz#8e46ad5b30560d57d7510b3fd93f332ee7c67386"
-
-babel-helper-to-multiple-sequence-expressions@^0.2.0:
- version "0.2.0"
- resolved "https://registry.yarnpkg.com/babel-helper-to-multiple-sequence-expressions/-/babel-helper-to-multiple-sequence-expressions-0.2.0.tgz#d1a419634c6cb301f27858c659167cfee0a9d318"
-
-babel-helpers@^6.24.1:
- version "6.24.1"
- resolved "https://registry.yarnpkg.com/babel-helpers/-/babel-helpers-6.24.1.tgz#3471de9caec388e5c850e597e58a26ddf37602b2"
- dependencies:
- babel-runtime "^6.22.0"
- babel-template "^6.24.1"
-
-babel-messages@^6.23.0:
- version "6.23.0"
- resolved "https://registry.yarnpkg.com/babel-messages/-/babel-messages-6.23.0.tgz#f3cdf4703858035b2a2951c6ec5edf6c62f2630e"
- dependencies:
- babel-runtime "^6.22.0"
-
-babel-minify@^0.2.0:
- version "0.2.0"
- resolved "https://registry.yarnpkg.com/babel-minify/-/babel-minify-0.2.0.tgz#36d381fee4002d7949dd5d796e74800336057d67"
- dependencies:
- babel-core "^6.24.1"
- babel-preset-minify "^0.2.0"
- fs-readdir-recursive "^1.0.0"
- mkdirp "^0.5.1"
- util.promisify "^1.0.0"
- yargs-parser "^5.0.0"
-
-babel-plugin-minify-builtins@^0.2.0:
- version "0.2.0"
- resolved "https://registry.yarnpkg.com/babel-plugin-minify-builtins/-/babel-plugin-minify-builtins-0.2.0.tgz#317f824b0907210b6348671bb040ca072e2e0c82"
- dependencies:
- babel-helper-evaluate-path "^0.2.0"
-
-babel-plugin-minify-constant-folding@^0.2.0:
- version "0.2.0"
- resolved "https://registry.yarnpkg.com/babel-plugin-minify-constant-folding/-/babel-plugin-minify-constant-folding-0.2.0.tgz#8c70b528b2eb7c13e94d95c8789077d4cdbc3970"
- dependencies:
- babel-helper-evaluate-path "^0.2.0"
-
-babel-plugin-minify-dead-code-elimination@^0.2.0:
- version "0.2.0"
- resolved "https://registry.yarnpkg.com/babel-plugin-minify-dead-code-elimination/-/babel-plugin-minify-dead-code-elimination-0.2.0.tgz#e8025ee10a1e5e4f202633a6928ce892c33747e3"
- dependencies:
- babel-helper-evaluate-path "^0.2.0"
- babel-helper-mark-eval-scopes "^0.2.0"
- babel-helper-remove-or-void "^0.2.0"
- lodash.some "^4.6.0"
-
-babel-plugin-minify-flip-comparisons@^0.2.0:
- version "0.2.0"
- resolved "https://registry.yarnpkg.com/babel-plugin-minify-flip-comparisons/-/babel-plugin-minify-flip-comparisons-0.2.0.tgz#0c9c8e93155c8f09dedad8118b634c259f709ef5"
- dependencies:
- babel-helper-is-void-0 "^0.2.0"
-
-babel-plugin-minify-guarded-expressions@^0.2.0:
- version "0.2.0"
- resolved "https://registry.yarnpkg.com/babel-plugin-minify-guarded-expressions/-/babel-plugin-minify-guarded-expressions-0.2.0.tgz#8a8c950040fce3e258a12e6eb21eab94ad7235ab"
- dependencies:
- babel-helper-flip-expressions "^0.2.0"
-
-babel-plugin-minify-infinity@^0.2.0:
- version "0.2.0"
- resolved "https://registry.yarnpkg.com/babel-plugin-minify-infinity/-/babel-plugin-minify-infinity-0.2.0.tgz#30960c615ddbc657c045bb00a1d8eb4af257cf03"
-
-babel-plugin-minify-mangle-names@^0.2.0:
- version "0.2.0"
- resolved "https://registry.yarnpkg.com/babel-plugin-minify-mangle-names/-/babel-plugin-minify-mangle-names-0.2.0.tgz#719892297ff0106a6ec1a4b0fc062f1f8b6a8529"
- dependencies:
- babel-helper-mark-eval-scopes "^0.2.0"
-
-babel-plugin-minify-numeric-literals@^0.2.0:
- version "0.2.0"
- resolved "https://registry.yarnpkg.com/babel-plugin-minify-numeric-literals/-/babel-plugin-minify-numeric-literals-0.2.0.tgz#5746e851700167a380c05e93f289a7070459a0d1"
-
-babel-plugin-minify-replace@^0.2.0:
- version "0.2.0"
- resolved "https://registry.yarnpkg.com/babel-plugin-minify-replace/-/babel-plugin-minify-replace-0.2.0.tgz#3c1f06bc4e6d3e301eacb763edc1be611efc39b0"
-
-babel-plugin-minify-simplify@^0.2.0:
- version "0.2.0"
- resolved "https://registry.yarnpkg.com/babel-plugin-minify-simplify/-/babel-plugin-minify-simplify-0.2.0.tgz#21ceec4857100c5476d7cef121f351156e5c9bc0"
- dependencies:
- babel-helper-flip-expressions "^0.2.0"
- babel-helper-is-nodes-equiv "^0.0.1"
- babel-helper-to-multiple-sequence-expressions "^0.2.0"
-
-babel-plugin-minify-type-constructors@^0.2.0:
- version "0.2.0"
- resolved "https://registry.yarnpkg.com/babel-plugin-minify-type-constructors/-/babel-plugin-minify-type-constructors-0.2.0.tgz#7f3b6458be0863cfd59e9985bed6d134aa7a2e17"
- dependencies:
- babel-helper-is-void-0 "^0.2.0"
-
-babel-plugin-transform-inline-consecutive-adds@^0.2.0:
- version "0.2.0"
- resolved "https://registry.yarnpkg.com/babel-plugin-transform-inline-consecutive-adds/-/babel-plugin-transform-inline-consecutive-adds-0.2.0.tgz#15dae78921057f4004f8eafd79e15ddc5f12f426"
-
-babel-plugin-transform-member-expression-literals@^6.8.5:
- version "6.8.5"
- resolved "https://registry.yarnpkg.com/babel-plugin-transform-member-expression-literals/-/babel-plugin-transform-member-expression-literals-6.8.5.tgz#e06ae305cf48d819822e93a70d79269f04d89eec"
-
-babel-plugin-transform-merge-sibling-variables@^6.8.6:
- version "6.8.6"
- resolved "https://registry.yarnpkg.com/babel-plugin-transform-merge-sibling-variables/-/babel-plugin-transform-merge-sibling-variables-6.8.6.tgz#6d21efa5ee4981f71657fae716f9594bb2622aef"
-
-babel-plugin-transform-minify-booleans@^6.8.3:
- version "6.8.3"
- resolved "https://registry.yarnpkg.com/babel-plugin-transform-minify-booleans/-/babel-plugin-transform-minify-booleans-6.8.3.tgz#5906ed776d3718250519abf1bace44b0b613ddf9"
-
-babel-plugin-transform-property-literals@^6.8.5:
- version "6.8.5"
- resolved "https://registry.yarnpkg.com/babel-plugin-transform-property-literals/-/babel-plugin-transform-property-literals-6.8.5.tgz#67ed5930b34805443452c8b9690c7ebe1e206c40"
- dependencies:
- esutils "^2.0.2"
-
-babel-plugin-transform-regexp-constructors@^0.2.0:
- version "0.2.0"
- resolved "https://registry.yarnpkg.com/babel-plugin-transform-regexp-constructors/-/babel-plugin-transform-regexp-constructors-0.2.0.tgz#6aa5dd0acc515db4be929bbcec4ed4c946c534a3"
-
-babel-plugin-transform-remove-console@^6.8.5:
- version "6.8.5"
- resolved "https://registry.yarnpkg.com/babel-plugin-transform-remove-console/-/babel-plugin-transform-remove-console-6.8.5.tgz#fde9d2d3d725530b0fadd8d31078402410386810"
-
-babel-plugin-transform-remove-debugger@^6.8.5:
- version "6.8.5"
- resolved "https://registry.yarnpkg.com/babel-plugin-transform-remove-debugger/-/babel-plugin-transform-remove-debugger-6.8.5.tgz#809584d412bf918f071fdf41e1fdb15ea89cdcd5"
-
-babel-plugin-transform-remove-undefined@^0.2.0:
- version "0.2.0"
- resolved "https://registry.yarnpkg.com/babel-plugin-transform-remove-undefined/-/babel-plugin-transform-remove-undefined-0.2.0.tgz#94f052062054c707e8d094acefe79416b63452b1"
- dependencies:
- babel-helper-evaluate-path "^0.2.0"
-
-babel-plugin-transform-simplify-comparison-operators@^6.8.5:
- version "6.8.5"
- resolved "https://registry.yarnpkg.com/babel-plugin-transform-simplify-comparison-operators/-/babel-plugin-transform-simplify-comparison-operators-6.8.5.tgz#a838786baf40cc33a93b95ae09e05591227e43bf"
-
-babel-plugin-transform-undefined-to-void@^6.8.3:
- version "6.8.3"
- resolved "https://registry.yarnpkg.com/babel-plugin-transform-undefined-to-void/-/babel-plugin-transform-undefined-to-void-6.8.3.tgz#fc52707f6ee1ddc71bb91b0d314fbefdeef9beb4"
-
-babel-preset-minify@^0.2.0:
- version "0.2.0"
- resolved "https://registry.yarnpkg.com/babel-preset-minify/-/babel-preset-minify-0.2.0.tgz#006566552d9b83834472273f306c0131062a0acc"
- dependencies:
- babel-plugin-minify-builtins "^0.2.0"
- babel-plugin-minify-constant-folding "^0.2.0"
- babel-plugin-minify-dead-code-elimination "^0.2.0"
- babel-plugin-minify-flip-comparisons "^0.2.0"
- babel-plugin-minify-guarded-expressions "^0.2.0"
- babel-plugin-minify-infinity "^0.2.0"
- babel-plugin-minify-mangle-names "^0.2.0"
- babel-plugin-minify-numeric-literals "^0.2.0"
- babel-plugin-minify-replace "^0.2.0"
- babel-plugin-minify-simplify "^0.2.0"
- babel-plugin-minify-type-constructors "^0.2.0"
- babel-plugin-transform-inline-consecutive-adds "^0.2.0"
- babel-plugin-transform-member-expression-literals "^6.8.5"
- babel-plugin-transform-merge-sibling-variables "^6.8.6"
- babel-plugin-transform-minify-booleans "^6.8.3"
- babel-plugin-transform-property-literals "^6.8.5"
- babel-plugin-transform-regexp-constructors "^0.2.0"
- babel-plugin-transform-remove-console "^6.8.5"
- babel-plugin-transform-remove-debugger "^6.8.5"
- babel-plugin-transform-remove-undefined "^0.2.0"
- babel-plugin-transform-simplify-comparison-operators "^6.8.5"
- babel-plugin-transform-undefined-to-void "^6.8.3"
- lodash.isplainobject "^4.0.6"
-
-babel-register@^6.26.0:
- version "6.26.0"
- resolved "https://registry.yarnpkg.com/babel-register/-/babel-register-6.26.0.tgz#6ed021173e2fcb486d7acb45c6009a856f647071"
- dependencies:
- babel-core "^6.26.0"
- babel-runtime "^6.26.0"
- core-js "^2.5.0"
- home-or-tmp "^2.0.0"
- lodash "^4.17.4"
- mkdirp "^0.5.1"
- source-map-support "^0.4.15"
-
-babel-runtime@^6.22.0, babel-runtime@^6.26.0:
- version "6.26.0"
- resolved "https://registry.yarnpkg.com/babel-runtime/-/babel-runtime-6.26.0.tgz#965c7058668e82b55d7bfe04ff2337bc8b5647fe"
- dependencies:
- core-js "^2.4.0"
- regenerator-runtime "^0.11.0"
-
-babel-template@^6.24.1, babel-template@^6.26.0:
- version "6.26.0"
- resolved "https://registry.yarnpkg.com/babel-template/-/babel-template-6.26.0.tgz#de03e2d16396b069f46dd9fff8521fb1a0e35e02"
- dependencies:
- babel-runtime "^6.26.0"
- babel-traverse "^6.26.0"
- babel-types "^6.26.0"
- babylon "^6.18.0"
- lodash "^4.17.4"
-
-babel-traverse@^6.26.0:
- version "6.26.0"
- resolved "https://registry.yarnpkg.com/babel-traverse/-/babel-traverse-6.26.0.tgz#46a9cbd7edcc62c8e5c064e2d2d8d0f4035766ee"
- dependencies:
- babel-code-frame "^6.26.0"
- babel-messages "^6.23.0"
- babel-runtime "^6.26.0"
- babel-types "^6.26.0"
- babylon "^6.18.0"
- debug "^2.6.8"
- globals "^9.18.0"
- invariant "^2.2.2"
- lodash "^4.17.4"
-
-babel-types@^6.26.0:
- version "6.26.0"
- resolved "https://registry.yarnpkg.com/babel-types/-/babel-types-6.26.0.tgz#a3b073f94ab49eb6fa55cd65227a334380632497"
- dependencies:
- babel-runtime "^6.26.0"
- esutils "^2.0.2"
- lodash "^4.17.4"
- to-fast-properties "^1.0.3"
-
-babylon@^6.18.0:
- version "6.18.0"
- resolved "https://registry.yarnpkg.com/babylon/-/babylon-6.18.0.tgz#af2f3b88fa6f5c1e4c634d1a0f8eac4f55b395e3"
-
-balanced-match@^1.0.0:
- version "1.0.0"
- resolved "https://registry.yarnpkg.com/balanced-match/-/balanced-match-1.0.0.tgz#89b4d199ab2bee49de164ea02b89ce462d71b767"
-
-bcrypt-pbkdf@^1.0.0:
- version "1.0.1"
- resolved "https://registry.yarnpkg.com/bcrypt-pbkdf/-/bcrypt-pbkdf-1.0.1.tgz#63bc5dcb61331b92bc05fd528953c33462a06f8d"
- dependencies:
- tweetnacl "^0.14.3"
-
-block-stream@*:
- version "0.0.9"
- resolved "https://registry.yarnpkg.com/block-stream/-/block-stream-0.0.9.tgz#13ebfe778a03205cfe03751481ebb4b3300c126a"
- dependencies:
- inherits "~2.0.0"
-
-boom@2.x.x:
- version "2.10.1"
- resolved "https://registry.yarnpkg.com/boom/-/boom-2.10.1.tgz#39c8918ceff5799f83f9492a848f625add0c766f"
- dependencies:
- hoek "2.x.x"
-
-brace-expansion@^1.1.7:
- version "1.1.8"
- resolved "https://registry.yarnpkg.com/brace-expansion/-/brace-expansion-1.1.8.tgz#c07b211c7c952ec1f8efd51a77ef0d1d3990a292"
- dependencies:
- balanced-match "^1.0.0"
- concat-map "0.0.1"
-
-builtin-modules@^1.0.0:
- version "1.1.1"
- resolved "https://registry.yarnpkg.com/builtin-modules/-/builtin-modules-1.1.1.tgz#270f076c5a72c02f5b65a47df94c5fe3a278892f"
-
-camelcase-keys@^2.0.0:
- version "2.1.0"
- resolved "https://registry.yarnpkg.com/camelcase-keys/-/camelcase-keys-2.1.0.tgz#308beeaffdf28119051efa1d932213c91b8f92e7"
- dependencies:
- camelcase "^2.0.0"
- map-obj "^1.0.0"
-
-camelcase@^2.0.0:
- version "2.1.1"
- resolved "https://registry.yarnpkg.com/camelcase/-/camelcase-2.1.1.tgz#7c1d16d679a1bbe59ca02cacecfb011e201f5a1f"
-
-camelcase@^3.0.0:
- version "3.0.0"
- resolved "https://registry.yarnpkg.com/camelcase/-/camelcase-3.0.0.tgz#32fc4b9fcdaf845fcdf7e73bb97cac2261f0ab0a"
-
-caseless@~0.12.0:
- version "0.12.0"
- resolved "https://registry.yarnpkg.com/caseless/-/caseless-0.12.0.tgz#1b681c21ff84033c826543090689420d187151dc"
-
-chalk@^1.1.1, chalk@^1.1.3:
- version "1.1.3"
- resolved "https://registry.yarnpkg.com/chalk/-/chalk-1.1.3.tgz#a8115c55e4a702fe4d150abd3872822a7e09fc98"
- dependencies:
- ansi-styles "^2.2.1"
- escape-string-regexp "^1.0.2"
- has-ansi "^2.0.0"
- strip-ansi "^3.0.0"
- supports-color "^2.0.0"
-
-cliui@^3.2.0:
- version "3.2.0"
- resolved "https://registry.yarnpkg.com/cliui/-/cliui-3.2.0.tgz#120601537a916d29940f934da3b48d585a39213d"
- dependencies:
- string-width "^1.0.1"
- strip-ansi "^3.0.1"
- wrap-ansi "^2.0.0"
-
-co@^4.6.0:
- version "4.6.0"
- resolved "https://registry.yarnpkg.com/co/-/co-4.6.0.tgz#6ea6bdf3d853ae54ccb8e47bfa0bf3f9031fb184"
-
-code-point-at@^1.0.0:
- version "1.1.0"
- resolved "https://registry.yarnpkg.com/code-point-at/-/code-point-at-1.1.0.tgz#0d070b4d043a5bea33a2f1a40e2edb3d9a4ccf77"
-
-combined-stream@^1.0.5, combined-stream@~1.0.5:
- version "1.0.5"
- resolved "https://registry.yarnpkg.com/combined-stream/-/combined-stream-1.0.5.tgz#938370a57b4a51dea2c77c15d5c5fdf895164009"
- dependencies:
- delayed-stream "~1.0.0"
-
-concat-map@0.0.1:
- version "0.0.1"
- resolved "https://registry.yarnpkg.com/concat-map/-/concat-map-0.0.1.tgz#d8a96bd77fd68df7793a73036a3ba0d5405d477b"
-
-console-control-strings@^1.0.0, console-control-strings@~1.1.0:
- version "1.1.0"
- resolved "https://registry.yarnpkg.com/console-control-strings/-/console-control-strings-1.1.0.tgz#3d7cf4464db6446ea644bf4b39507f9851008e8e"
-
-convert-source-map@^1.5.0:
- version "1.5.0"
- resolved "https://registry.yarnpkg.com/convert-source-map/-/convert-source-map-1.5.0.tgz#9acd70851c6d5dfdd93d9282e5edf94a03ff46b5"
-
-core-js@^2.4.0, core-js@^2.5.0:
- version "2.5.1"
- resolved "https://registry.yarnpkg.com/core-js/-/core-js-2.5.1.tgz#ae6874dc66937789b80754ff5428df66819ca50b"
-
-core-util-is@1.0.2, core-util-is@~1.0.0:
- version "1.0.2"
- resolved "https://registry.yarnpkg.com/core-util-is/-/core-util-is-1.0.2.tgz#b5fd54220aa2bc5ab57aab7140c940754503c1a7"
-
-cross-spawn@^3.0.0:
- version "3.0.1"
- resolved "https://registry.yarnpkg.com/cross-spawn/-/cross-spawn-3.0.1.tgz#1256037ecb9f0c5f79e3d6ef135e30770184b982"
- dependencies:
- lru-cache "^4.0.1"
- which "^1.2.9"
-
-cryptiles@2.x.x:
- version "2.0.5"
- resolved "https://registry.yarnpkg.com/cryptiles/-/cryptiles-2.0.5.tgz#3bdfecdc608147c1c67202fa291e7dca59eaa3b8"
- dependencies:
- boom "2.x.x"
-
-currently-unhandled@^0.4.1:
- version "0.4.1"
- resolved "https://registry.yarnpkg.com/currently-unhandled/-/currently-unhandled-0.4.1.tgz#988df33feab191ef799a61369dd76c17adf957ea"
- dependencies:
- array-find-index "^1.0.1"
-
-dashdash@^1.12.0:
- version "1.14.1"
- resolved "https://registry.yarnpkg.com/dashdash/-/dashdash-1.14.1.tgz#853cfa0f7cbe2fed5de20326b8dd581035f6e2f0"
- dependencies:
- assert-plus "^1.0.0"
-
-debug@^2.6.8:
- version "2.6.8"
- resolved "https://registry.yarnpkg.com/debug/-/debug-2.6.8.tgz#e731531ca2ede27d188222427da17821d68ff4fc"
- dependencies:
- ms "2.0.0"
-
-decamelize@^1.1.1, decamelize@^1.1.2:
- version "1.2.0"
- resolved "https://registry.yarnpkg.com/decamelize/-/decamelize-1.2.0.tgz#f6534d15148269b20352e7bee26f501f9a191290"
-
-define-properties@^1.1.2:
- version "1.1.2"
- resolved "https://registry.yarnpkg.com/define-properties/-/define-properties-1.1.2.tgz#83a73f2fea569898fb737193c8f873caf6d45c94"
- dependencies:
- foreach "^2.0.5"
- object-keys "^1.0.8"
-
-delayed-stream@~1.0.0:
- version "1.0.0"
- resolved "https://registry.yarnpkg.com/delayed-stream/-/delayed-stream-1.0.0.tgz#df3ae199acadfb7d440aaae0b29e2272b24ec619"
-
-delegates@^1.0.0:
- version "1.0.0"
- resolved "https://registry.yarnpkg.com/delegates/-/delegates-1.0.0.tgz#84c6e159b81904fdca59a0ef44cd870d31250f9a"
-
-detect-indent@^4.0.0:
- version "4.0.0"
- resolved "https://registry.yarnpkg.com/detect-indent/-/detect-indent-4.0.0.tgz#f76d064352cdf43a1cb6ce619c4ee3a9475de208"
- dependencies:
- repeating "^2.0.0"
-
-ecc-jsbn@~0.1.1:
- version "0.1.1"
- resolved "https://registry.yarnpkg.com/ecc-jsbn/-/ecc-jsbn-0.1.1.tgz#0fc73a9ed5f0d53c38193398523ef7e543777505"
- dependencies:
- jsbn "~0.1.0"
-
-error-ex@^1.2.0:
- version "1.3.1"
- resolved "https://registry.yarnpkg.com/error-ex/-/error-ex-1.3.1.tgz#f855a86ce61adc4e8621c3cda21e7a7612c3a8dc"
- dependencies:
- is-arrayish "^0.2.1"
-
-es-abstract@^1.5.1:
- version "1.8.2"
- resolved "https://registry.yarnpkg.com/es-abstract/-/es-abstract-1.8.2.tgz#25103263dc4decbda60e0c737ca32313518027ee"
- dependencies:
- es-to-primitive "^1.1.1"
- function-bind "^1.1.1"
- has "^1.0.1"
- is-callable "^1.1.3"
- is-regex "^1.0.4"
-
-es-to-primitive@^1.1.1:
- version "1.1.1"
- resolved "https://registry.yarnpkg.com/es-to-primitive/-/es-to-primitive-1.1.1.tgz#45355248a88979034b6792e19bb81f2b7975dd0d"
- dependencies:
- is-callable "^1.1.1"
- is-date-object "^1.0.1"
- is-symbol "^1.0.1"
-
-escape-string-regexp@^1.0.2:
- version "1.0.5"
- resolved "https://registry.yarnpkg.com/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz#1b61c0562190a8dff6ae3bb2cf0200ca130b86d4"
-
-esutils@^2.0.2:
- version "2.0.2"
- resolved "https://registry.yarnpkg.com/esutils/-/esutils-2.0.2.tgz#0abf4f1caa5bcb1f7a9d8acc6dea4faaa04bac9b"
-
-extend@~3.0.0:
- version "3.0.1"
- resolved "https://registry.yarnpkg.com/extend/-/extend-3.0.1.tgz#a755ea7bc1adfcc5a31ce7e762dbaadc5e636444"
-
-extsprintf@1.3.0, extsprintf@^1.2.0:
- version "1.3.0"
- resolved "https://registry.yarnpkg.com/extsprintf/-/extsprintf-1.3.0.tgz#96918440e3041a7a414f8c52e3c574eb3c3e1e05"
-
-find-up@^1.0.0:
- version "1.1.2"
- resolved "https://registry.yarnpkg.com/find-up/-/find-up-1.1.2.tgz#6b2e9822b1a2ce0a60ab64d610eccad53cb24d0f"
- dependencies:
- path-exists "^2.0.0"
- pinkie-promise "^2.0.0"
-
-foreach@^2.0.5:
- version "2.0.5"
- resolved "https://registry.yarnpkg.com/foreach/-/foreach-2.0.5.tgz#0bee005018aeb260d0a3af3ae658dd0136ec1b99"
-
-forever-agent@~0.6.1:
- version "0.6.1"
- resolved "https://registry.yarnpkg.com/forever-agent/-/forever-agent-0.6.1.tgz#fbc71f0c41adeb37f96c577ad1ed42d8fdacca91"
-
-form-data@~2.1.1:
- version "2.1.4"
- resolved "https://registry.yarnpkg.com/form-data/-/form-data-2.1.4.tgz#33c183acf193276ecaa98143a69e94bfee1750d1"
- dependencies:
- asynckit "^0.4.0"
- combined-stream "^1.0.5"
- mime-types "^2.1.12"
-
-fs-readdir-recursive@^1.0.0:
- version "1.0.0"
- resolved "https://registry.yarnpkg.com/fs-readdir-recursive/-/fs-readdir-recursive-1.0.0.tgz#8cd1745c8b4f8a29c8caec392476921ba195f560"
-
-fs.realpath@^1.0.0:
- version "1.0.0"
- resolved "https://registry.yarnpkg.com/fs.realpath/-/fs.realpath-1.0.0.tgz#1504ad2523158caa40db4a2787cb01411994ea4f"
-
-fstream@^1.0.0, fstream@^1.0.2:
- version "1.0.11"
- resolved "https://registry.yarnpkg.com/fstream/-/fstream-1.0.11.tgz#5c1fb1f117477114f0632a0eb4b71b3cb0fd3171"
- dependencies:
- graceful-fs "^4.1.2"
- inherits "~2.0.0"
- mkdirp ">=0.5 0"
- rimraf "2"
-
-function-bind@^1.0.2, function-bind@^1.1.1:
- version "1.1.1"
- resolved "https://registry.yarnpkg.com/function-bind/-/function-bind-1.1.1.tgz#a56899d3ea3c9bab874bb9773b7c5ede92f4895d"
-
-gauge@~2.7.3:
- version "2.7.4"
- resolved "https://registry.yarnpkg.com/gauge/-/gauge-2.7.4.tgz#2c03405c7538c39d7eb37b317022e325fb018bf7"
- dependencies:
- aproba "^1.0.3"
- console-control-strings "^1.0.0"
- has-unicode "^2.0.0"
- object-assign "^4.1.0"
- signal-exit "^3.0.0"
- string-width "^1.0.1"
- strip-ansi "^3.0.1"
- wide-align "^1.1.0"
-
-gaze@^1.0.0:
- version "1.1.2"
- resolved "https://registry.yarnpkg.com/gaze/-/gaze-1.1.2.tgz#847224677adb8870d679257ed3388fdb61e40105"
- dependencies:
- globule "^1.0.0"
-
-get-caller-file@^1.0.1:
- version "1.0.2"
- resolved "https://registry.yarnpkg.com/get-caller-file/-/get-caller-file-1.0.2.tgz#f702e63127e7e231c160a80c1554acb70d5047e5"
-
-get-stdin@^4.0.1:
- version "4.0.1"
- resolved "https://registry.yarnpkg.com/get-stdin/-/get-stdin-4.0.1.tgz#b968c6b0a04384324902e8bf1a5df32579a450fe"
-
-getpass@^0.1.1:
- version "0.1.7"
- resolved "https://registry.yarnpkg.com/getpass/-/getpass-0.1.7.tgz#5eff8e3e684d569ae4cb2b1282604e8ba62149fa"
- dependencies:
- assert-plus "^1.0.0"
-
-glob@^7.0.0, glob@^7.0.3, glob@^7.0.5, glob@~7.1.1:
- version "7.1.2"
- resolved "https://registry.yarnpkg.com/glob/-/glob-7.1.2.tgz#c19c9df9a028702d678612384a6552404c636d15"
- dependencies:
- fs.realpath "^1.0.0"
- inflight "^1.0.4"
- inherits "2"
- minimatch "^3.0.4"
- once "^1.3.0"
- path-is-absolute "^1.0.0"
-
-globals@^9.18.0:
- version "9.18.0"
- resolved "https://registry.yarnpkg.com/globals/-/globals-9.18.0.tgz#aa3896b3e69b487f17e31ed2143d69a8e30c2d8a"
-
-globule@^1.0.0:
- version "1.2.0"
- resolved "https://registry.yarnpkg.com/globule/-/globule-1.2.0.tgz#1dc49c6822dd9e8a2fa00ba2a295006e8664bd09"
- dependencies:
- glob "~7.1.1"
- lodash "~4.17.4"
- minimatch "~3.0.2"
-
-graceful-fs@^4.1.2:
- version "4.1.11"
- resolved "https://registry.yarnpkg.com/graceful-fs/-/graceful-fs-4.1.11.tgz#0e8bdfe4d1ddb8854d64e04ea7c00e2a026e5658"
-
-har-schema@^1.0.5:
- version "1.0.5"
- resolved "https://registry.yarnpkg.com/har-schema/-/har-schema-1.0.5.tgz#d263135f43307c02c602afc8fe95970c0151369e"
-
-har-validator@~4.2.1:
- version "4.2.1"
- resolved "https://registry.yarnpkg.com/har-validator/-/har-validator-4.2.1.tgz#33481d0f1bbff600dd203d75812a6a5fba002e2a"
- dependencies:
- ajv "^4.9.1"
- har-schema "^1.0.5"
-
-has-ansi@^2.0.0:
- version "2.0.0"
- resolved "https://registry.yarnpkg.com/has-ansi/-/has-ansi-2.0.0.tgz#34f5049ce1ecdf2b0649af3ef24e45ed35416d91"
- dependencies:
- ansi-regex "^2.0.0"
-
-has-unicode@^2.0.0:
- version "2.0.1"
- resolved "https://registry.yarnpkg.com/has-unicode/-/has-unicode-2.0.1.tgz#e0e6fe6a28cf51138855e086d1691e771de2a8b9"
-
-has@^1.0.1:
- version "1.0.1"
- resolved "https://registry.yarnpkg.com/has/-/has-1.0.1.tgz#8461733f538b0837c9361e39a9ab9e9704dc2f28"
- dependencies:
- function-bind "^1.0.2"
-
-hawk@~3.1.3:
- version "3.1.3"
- resolved "https://registry.yarnpkg.com/hawk/-/hawk-3.1.3.tgz#078444bd7c1640b0fe540d2c9b73d59678e8e1c4"
- dependencies:
- boom "2.x.x"
- cryptiles "2.x.x"
- hoek "2.x.x"
- sntp "1.x.x"
-
-hoek@2.x.x:
- version "2.16.3"
- resolved "https://registry.yarnpkg.com/hoek/-/hoek-2.16.3.tgz#20bb7403d3cea398e91dc4710a8ff1b8274a25ed"
-
-home-or-tmp@^2.0.0:
- version "2.0.0"
- resolved "https://registry.yarnpkg.com/home-or-tmp/-/home-or-tmp-2.0.0.tgz#e36c3f2d2cae7d746a857e38d18d5f32a7882db8"
- dependencies:
- os-homedir "^1.0.0"
- os-tmpdir "^1.0.1"
-
-hosted-git-info@^2.1.4:
- version "2.5.0"
- resolved "https://registry.yarnpkg.com/hosted-git-info/-/hosted-git-info-2.5.0.tgz#6d60e34b3abbc8313062c3b798ef8d901a07af3c"
-
-http-signature@~1.1.0:
- version "1.1.1"
- resolved "https://registry.yarnpkg.com/http-signature/-/http-signature-1.1.1.tgz#df72e267066cd0ac67fb76adf8e134a8fbcf91bf"
- dependencies:
- assert-plus "^0.2.0"
- jsprim "^1.2.2"
- sshpk "^1.7.0"
-
-in-publish@^2.0.0:
- version "2.0.0"
- resolved "https://registry.yarnpkg.com/in-publish/-/in-publish-2.0.0.tgz#e20ff5e3a2afc2690320b6dc552682a9c7fadf51"
-
-indent-string@^2.1.0:
- version "2.1.0"
- resolved "https://registry.yarnpkg.com/indent-string/-/indent-string-2.1.0.tgz#8e2d48348742121b4a8218b7a137e9a52049dc80"
- dependencies:
- repeating "^2.0.0"
-
-inflight@^1.0.4:
- version "1.0.6"
- resolved "https://registry.yarnpkg.com/inflight/-/inflight-1.0.6.tgz#49bd6331d7d02d0c09bc910a1075ba8165b56df9"
- dependencies:
- once "^1.3.0"
- wrappy "1"
-
-inherits@2, inherits@~2.0.0, inherits@~2.0.3:
- version "2.0.3"
- resolved "https://registry.yarnpkg.com/inherits/-/inherits-2.0.3.tgz#633c2c83e3da42a502f52466022480f4208261de"
-
-invariant@^2.2.2:
- version "2.2.2"
- resolved "https://registry.yarnpkg.com/invariant/-/invariant-2.2.2.tgz#9e1f56ac0acdb6bf303306f338be3b204ae60360"
- dependencies:
- loose-envify "^1.0.0"
-
-invert-kv@^1.0.0:
- version "1.0.0"
- resolved "https://registry.yarnpkg.com/invert-kv/-/invert-kv-1.0.0.tgz#104a8e4aaca6d3d8cd157a8ef8bfab2d7a3ffdb6"
-
-is-arrayish@^0.2.1:
- version "0.2.1"
- resolved "https://registry.yarnpkg.com/is-arrayish/-/is-arrayish-0.2.1.tgz#77c99840527aa8ecb1a8ba697b80645a7a926a9d"
-
-is-builtin-module@^1.0.0:
- version "1.0.0"
- resolved "https://registry.yarnpkg.com/is-builtin-module/-/is-builtin-module-1.0.0.tgz#540572d34f7ac3119f8f76c30cbc1b1e037affbe"
- dependencies:
- builtin-modules "^1.0.0"
-
-is-callable@^1.1.1, is-callable@^1.1.3:
- version "1.1.3"
- resolved "https://registry.yarnpkg.com/is-callable/-/is-callable-1.1.3.tgz#86eb75392805ddc33af71c92a0eedf74ee7604b2"
-
-is-date-object@^1.0.1:
- version "1.0.1"
- resolved "https://registry.yarnpkg.com/is-date-object/-/is-date-object-1.0.1.tgz#9aa20eb6aeebbff77fbd33e74ca01b33581d3a16"
-
-is-finite@^1.0.0:
- version "1.0.2"
- resolved "https://registry.yarnpkg.com/is-finite/-/is-finite-1.0.2.tgz#cc6677695602be550ef11e8b4aa6305342b6d0aa"
- dependencies:
- number-is-nan "^1.0.0"
-
-is-fullwidth-code-point@^1.0.0:
- version "1.0.0"
- resolved "https://registry.yarnpkg.com/is-fullwidth-code-point/-/is-fullwidth-code-point-1.0.0.tgz#ef9e31386f031a7f0d643af82fde50c457ef00cb"
- dependencies:
- number-is-nan "^1.0.0"
-
-is-regex@^1.0.4:
- version "1.0.4"
- resolved "https://registry.yarnpkg.com/is-regex/-/is-regex-1.0.4.tgz#5517489b547091b0930e095654ced25ee97e9491"
- dependencies:
- has "^1.0.1"
-
-is-symbol@^1.0.1:
- version "1.0.1"
- resolved "https://registry.yarnpkg.com/is-symbol/-/is-symbol-1.0.1.tgz#3cc59f00025194b6ab2e38dbae6689256b660572"
-
-is-typedarray@~1.0.0:
- version "1.0.0"
- resolved "https://registry.yarnpkg.com/is-typedarray/-/is-typedarray-1.0.0.tgz#e479c80858df0c1b11ddda6940f96011fcda4a9a"
-
-is-utf8@^0.2.0:
- version "0.2.1"
- resolved "https://registry.yarnpkg.com/is-utf8/-/is-utf8-0.2.1.tgz#4b0da1442104d1b336340e80797e865cf39f7d72"
-
-isarray@~1.0.0:
- version "1.0.0"
- resolved "https://registry.yarnpkg.com/isarray/-/isarray-1.0.0.tgz#bb935d48582cba168c06834957a54a3e07124f11"
-
-isexe@^2.0.0:
- version "2.0.0"
- resolved "https://registry.yarnpkg.com/isexe/-/isexe-2.0.0.tgz#e8fbf374dc556ff8947a10dcb0572d633f2cfa10"
-
-isstream@~0.1.2:
- version "0.1.2"
- resolved "https://registry.yarnpkg.com/isstream/-/isstream-0.1.2.tgz#47e63f7af55afa6f92e1500e690eb8b8529c099a"
-
-js-base64@^2.1.8:
- version "2.1.9"
- resolved "https://registry.yarnpkg.com/js-base64/-/js-base64-2.1.9.tgz#f0e80ae039a4bd654b5f281fc93f04a914a7fcce"
-
-js-tokens@^3.0.0, js-tokens@^3.0.2:
- version "3.0.2"
- resolved "https://registry.yarnpkg.com/js-tokens/-/js-tokens-3.0.2.tgz#9866df395102130e38f7f996bceb65443209c25b"
-
-jsbn@~0.1.0:
- version "0.1.1"
- resolved "https://registry.yarnpkg.com/jsbn/-/jsbn-0.1.1.tgz#a5e654c2e5a2deb5f201d96cefbca80c0ef2f513"
-
-jsesc@^1.3.0:
- version "1.3.0"
- resolved "https://registry.yarnpkg.com/jsesc/-/jsesc-1.3.0.tgz#46c3fec8c1892b12b0833db9bc7622176dbab34b"
-
-json-schema@0.2.3:
- version "0.2.3"
- resolved "https://registry.yarnpkg.com/json-schema/-/json-schema-0.2.3.tgz#b480c892e59a2f05954ce727bd3f2a4e882f9e13"
-
-json-stable-stringify@^1.0.1:
- version "1.0.1"
- resolved "https://registry.yarnpkg.com/json-stable-stringify/-/json-stable-stringify-1.0.1.tgz#9a759d39c5f2ff503fd5300646ed445f88c4f9af"
- dependencies:
- jsonify "~0.0.0"
-
-json-stringify-safe@~5.0.1:
- version "5.0.1"
- resolved "https://registry.yarnpkg.com/json-stringify-safe/-/json-stringify-safe-5.0.1.tgz#1296a2d58fd45f19a0f6ce01d65701e2c735b6eb"
-
-json5@^0.5.1:
- version "0.5.1"
- resolved "https://registry.yarnpkg.com/json5/-/json5-0.5.1.tgz#1eade7acc012034ad84e2396767ead9fa5495821"
-
-jsonify@~0.0.0:
- version "0.0.0"
- resolved "https://registry.yarnpkg.com/jsonify/-/jsonify-0.0.0.tgz#2c74b6ee41d93ca51b7b5aaee8f503631d252a73"
-
-jsprim@^1.2.2:
- version "1.4.1"
- resolved "https://registry.yarnpkg.com/jsprim/-/jsprim-1.4.1.tgz#313e66bc1e5cc06e438bc1b7499c2e5c56acb6a2"
- dependencies:
- assert-plus "1.0.0"
- extsprintf "1.3.0"
- json-schema "0.2.3"
- verror "1.10.0"
-
-lcid@^1.0.0:
- version "1.0.0"
- resolved "https://registry.yarnpkg.com/lcid/-/lcid-1.0.0.tgz#308accafa0bc483a3867b4b6f2b9506251d1b835"
- dependencies:
- invert-kv "^1.0.0"
-
-load-json-file@^1.0.0:
- version "1.1.0"
- resolved "https://registry.yarnpkg.com/load-json-file/-/load-json-file-1.1.0.tgz#956905708d58b4bab4c2261b04f59f31c99374c0"
- dependencies:
- graceful-fs "^4.1.2"
- parse-json "^2.2.0"
- pify "^2.0.0"
- pinkie-promise "^2.0.0"
- strip-bom "^2.0.0"
-
-lodash.assign@^4.2.0:
- version "4.2.0"
- resolved "https://registry.yarnpkg.com/lodash.assign/-/lodash.assign-4.2.0.tgz#0d99f3ccd7a6d261d19bdaeb9245005d285808e7"
-
-lodash.clonedeep@^4.3.2:
- version "4.5.0"
- resolved "https://registry.yarnpkg.com/lodash.clonedeep/-/lodash.clonedeep-4.5.0.tgz#e23f3f9c4f8fbdde872529c1071857a086e5ccef"
-
-lodash.isplainobject@^4.0.6:
- version "4.0.6"
- resolved "https://registry.yarnpkg.com/lodash.isplainobject/-/lodash.isplainobject-4.0.6.tgz#7c526a52d89b45c45cc690b88163be0497f550cb"
-
-lodash.mergewith@^4.6.0:
- version "4.6.0"
- resolved "https://registry.yarnpkg.com/lodash.mergewith/-/lodash.mergewith-4.6.0.tgz#150cf0a16791f5903b8891eab154609274bdea55"
-
-lodash.some@^4.6.0:
- version "4.6.0"
- resolved "https://registry.yarnpkg.com/lodash.some/-/lodash.some-4.6.0.tgz#1bb9f314ef6b8baded13b549169b2a945eb68e4d"
-
-lodash@^4.0.0, lodash@^4.17.4, lodash@~4.17.4:
- version "4.17.4"
- resolved "https://registry.yarnpkg.com/lodash/-/lodash-4.17.4.tgz#78203a4d1c328ae1d86dca6460e369b57f4055ae"
-
-loose-envify@^1.0.0:
- version "1.3.1"
- resolved "https://registry.yarnpkg.com/loose-envify/-/loose-envify-1.3.1.tgz#d1a8ad33fa9ce0e713d65fdd0ac8b748d478c848"
- dependencies:
- js-tokens "^3.0.0"
-
-loud-rejection@^1.0.0:
- version "1.6.0"
- resolved "https://registry.yarnpkg.com/loud-rejection/-/loud-rejection-1.6.0.tgz#5b46f80147edee578870f086d04821cf998e551f"
- dependencies:
- currently-unhandled "^0.4.1"
- signal-exit "^3.0.0"
-
-lru-cache@^4.0.1:
- version "4.1.1"
- resolved "https://registry.yarnpkg.com/lru-cache/-/lru-cache-4.1.1.tgz#622e32e82488b49279114a4f9ecf45e7cd6bba55"
- dependencies:
- pseudomap "^1.0.2"
- yallist "^2.1.2"
-
-map-obj@^1.0.0, map-obj@^1.0.1:
- version "1.0.1"
- resolved "https://registry.yarnpkg.com/map-obj/-/map-obj-1.0.1.tgz#d933ceb9205d82bdcf4886f6742bdc2b4dea146d"
-
-meow@^3.7.0:
- version "3.7.0"
- resolved "https://registry.yarnpkg.com/meow/-/meow-3.7.0.tgz#72cb668b425228290abbfa856892587308a801fb"
- dependencies:
- camelcase-keys "^2.0.0"
- decamelize "^1.1.2"
- loud-rejection "^1.0.0"
- map-obj "^1.0.1"
- minimist "^1.1.3"
- normalize-package-data "^2.3.4"
- object-assign "^4.0.1"
- read-pkg-up "^1.0.1"
- redent "^1.0.0"
- trim-newlines "^1.0.0"
-
-mime-db@~1.30.0:
- version "1.30.0"
- resolved "https://registry.yarnpkg.com/mime-db/-/mime-db-1.30.0.tgz#74c643da2dd9d6a45399963465b26d5ca7d71f01"
-
-mime-types@^2.1.12, mime-types@~2.1.7:
- version "2.1.17"
- resolved "https://registry.yarnpkg.com/mime-types/-/mime-types-2.1.17.tgz#09d7a393f03e995a79f8af857b70a9e0ab16557a"
- dependencies:
- mime-db "~1.30.0"
-
-minimatch@^3.0.2, minimatch@^3.0.4, minimatch@~3.0.2:
- version "3.0.4"
- resolved "https://registry.yarnpkg.com/minimatch/-/minimatch-3.0.4.tgz#5166e286457f03306064be5497e8dbb0c3d32083"
- dependencies:
- brace-expansion "^1.1.7"
-
-minimist@0.0.8:
- version "0.0.8"
- resolved "https://registry.yarnpkg.com/minimist/-/minimist-0.0.8.tgz#857fcabfc3397d2625b8228262e86aa7a011b05d"
-
-minimist@^1.1.3:
- version "1.2.0"
- resolved "https://registry.yarnpkg.com/minimist/-/minimist-1.2.0.tgz#a35008b20f41383eec1fb914f4cd5df79a264284"
-
-"mkdirp@>=0.5 0", mkdirp@^0.5.0, mkdirp@^0.5.1:
- version "0.5.1"
- resolved "https://registry.yarnpkg.com/mkdirp/-/mkdirp-0.5.1.tgz#30057438eac6cf7f8c4767f38648d6697d75c903"
- dependencies:
- minimist "0.0.8"
-
-ms@2.0.0:
- version "2.0.0"
- resolved "https://registry.yarnpkg.com/ms/-/ms-2.0.0.tgz#5608aeadfc00be6c2901df5f9861788de0d597c8"
-
-nan@^2.3.2:
- version "2.7.0"
- resolved "https://registry.yarnpkg.com/nan/-/nan-2.7.0.tgz#d95bf721ec877e08db276ed3fc6eb78f9083ad46"
-
-node-gyp@^3.3.1:
- version "3.6.2"
- resolved "https://registry.yarnpkg.com/node-gyp/-/node-gyp-3.6.2.tgz#9bfbe54562286284838e750eac05295853fa1c60"
- dependencies:
- fstream "^1.0.0"
- glob "^7.0.3"
- graceful-fs "^4.1.2"
- minimatch "^3.0.2"
- mkdirp "^0.5.0"
- nopt "2 || 3"
- npmlog "0 || 1 || 2 || 3 || 4"
- osenv "0"
- request "2"
- rimraf "2"
- semver "~5.3.0"
- tar "^2.0.0"
- which "1"
-
-node-sass@^4.5.3:
- version "4.5.3"
- resolved "https://registry.yarnpkg.com/node-sass/-/node-sass-4.5.3.tgz#d09c9d1179641239d1b97ffc6231fdcec53e1568"
- dependencies:
- async-foreach "^0.1.3"
- chalk "^1.1.1"
- cross-spawn "^3.0.0"
- gaze "^1.0.0"
- get-stdin "^4.0.1"
- glob "^7.0.3"
- in-publish "^2.0.0"
- lodash.assign "^4.2.0"
- lodash.clonedeep "^4.3.2"
- lodash.mergewith "^4.6.0"
- meow "^3.7.0"
- mkdirp "^0.5.1"
- nan "^2.3.2"
- node-gyp "^3.3.1"
- npmlog "^4.0.0"
- request "^2.79.0"
- sass-graph "^2.1.1"
- stdout-stream "^1.4.0"
-
-"nopt@2 || 3":
- version "3.0.6"
- resolved "https://registry.yarnpkg.com/nopt/-/nopt-3.0.6.tgz#c6465dbf08abcd4db359317f79ac68a646b28ff9"
- dependencies:
- abbrev "1"
-
-normalize-package-data@^2.3.2, normalize-package-data@^2.3.4:
- version "2.4.0"
- resolved "https://registry.yarnpkg.com/normalize-package-data/-/normalize-package-data-2.4.0.tgz#12f95a307d58352075a04907b84ac8be98ac012f"
- dependencies:
- hosted-git-info "^2.1.4"
- is-builtin-module "^1.0.0"
- semver "2 || 3 || 4 || 5"
- validate-npm-package-license "^3.0.1"
-
-"npmlog@0 || 1 || 2 || 3 || 4", npmlog@^4.0.0:
- version "4.1.2"
- resolved "https://registry.yarnpkg.com/npmlog/-/npmlog-4.1.2.tgz#08a7f2a8bf734604779a9efa4ad5cc717abb954b"
- dependencies:
- are-we-there-yet "~1.1.2"
- console-control-strings "~1.1.0"
- gauge "~2.7.3"
- set-blocking "~2.0.0"
-
-number-is-nan@^1.0.0:
- version "1.0.1"
- resolved "https://registry.yarnpkg.com/number-is-nan/-/number-is-nan-1.0.1.tgz#097b602b53422a522c1afb8790318336941a011d"
-
-oauth-sign@~0.8.1:
- version "0.8.2"
- resolved "https://registry.yarnpkg.com/oauth-sign/-/oauth-sign-0.8.2.tgz#46a6ab7f0aead8deae9ec0565780b7d4efeb9d43"
-
-object-assign@^4.0.1, object-assign@^4.1.0:
- version "4.1.1"
- resolved "https://registry.yarnpkg.com/object-assign/-/object-assign-4.1.1.tgz#2109adc7965887cfc05cbbd442cac8bfbb360863"
-
-object-keys@^1.0.8:
- version "1.0.11"
- resolved "https://registry.yarnpkg.com/object-keys/-/object-keys-1.0.11.tgz#c54601778ad560f1142ce0e01bcca8b56d13426d"
-
-object.getownpropertydescriptors@^2.0.3:
- version "2.0.3"
- resolved "https://registry.yarnpkg.com/object.getownpropertydescriptors/-/object.getownpropertydescriptors-2.0.3.tgz#8758c846f5b407adab0f236e0986f14b051caa16"
- dependencies:
- define-properties "^1.1.2"
- es-abstract "^1.5.1"
-
-once@^1.3.0:
- version "1.4.0"
- resolved "https://registry.yarnpkg.com/once/-/once-1.4.0.tgz#583b1aa775961d4b113ac17d9c50baef9dd76bd1"
- dependencies:
- wrappy "1"
-
-os-homedir@^1.0.0:
- version "1.0.2"
- resolved "https://registry.yarnpkg.com/os-homedir/-/os-homedir-1.0.2.tgz#ffbc4988336e0e833de0c168c7ef152121aa7fb3"
-
-os-locale@^1.4.0:
- version "1.4.0"
- resolved "https://registry.yarnpkg.com/os-locale/-/os-locale-1.4.0.tgz#20f9f17ae29ed345e8bde583b13d2009803c14d9"
- dependencies:
- lcid "^1.0.0"
-
-os-tmpdir@^1.0.0, os-tmpdir@^1.0.1:
- version "1.0.2"
- resolved "https://registry.yarnpkg.com/os-tmpdir/-/os-tmpdir-1.0.2.tgz#bbe67406c79aa85c5cfec766fe5734555dfa1274"
-
-osenv@0:
- version "0.1.4"
- resolved "https://registry.yarnpkg.com/osenv/-/osenv-0.1.4.tgz#42fe6d5953df06c8064be6f176c3d05aaaa34644"
- dependencies:
- os-homedir "^1.0.0"
- os-tmpdir "^1.0.0"
-
-parse-json@^2.2.0:
- version "2.2.0"
- resolved "https://registry.yarnpkg.com/parse-json/-/parse-json-2.2.0.tgz#f480f40434ef80741f8469099f8dea18f55a4dc9"
- dependencies:
- error-ex "^1.2.0"
-
-path-exists@^2.0.0:
- version "2.1.0"
- resolved "https://registry.yarnpkg.com/path-exists/-/path-exists-2.1.0.tgz#0feb6c64f0fc518d9a754dd5efb62c7022761f4b"
- dependencies:
- pinkie-promise "^2.0.0"
-
-path-is-absolute@^1.0.0, path-is-absolute@^1.0.1:
- version "1.0.1"
- resolved "https://registry.yarnpkg.com/path-is-absolute/-/path-is-absolute-1.0.1.tgz#174b9268735534ffbc7ace6bf53a5a9e1b5c5f5f"
-
-path-type@^1.0.0:
- version "1.1.0"
- resolved "https://registry.yarnpkg.com/path-type/-/path-type-1.1.0.tgz#59c44f7ee491da704da415da5a4070ba4f8fe441"
- dependencies:
- graceful-fs "^4.1.2"
- pify "^2.0.0"
- pinkie-promise "^2.0.0"
-
-performance-now@^0.2.0:
- version "0.2.0"
- resolved "https://registry.yarnpkg.com/performance-now/-/performance-now-0.2.0.tgz#33ef30c5c77d4ea21c5a53869d91b56d8f2555e5"
-
-pify@^2.0.0:
- version "2.3.0"
- resolved "https://registry.yarnpkg.com/pify/-/pify-2.3.0.tgz#ed141a6ac043a849ea588498e7dca8b15330e90c"
-
-pinkie-promise@^2.0.0:
- version "2.0.1"
- resolved "https://registry.yarnpkg.com/pinkie-promise/-/pinkie-promise-2.0.1.tgz#2135d6dfa7a358c069ac9b178776288228450ffa"
- dependencies:
- pinkie "^2.0.0"
-
-pinkie@^2.0.0:
- version "2.0.4"
- resolved "https://registry.yarnpkg.com/pinkie/-/pinkie-2.0.4.tgz#72556b80cfa0d48a974e80e77248e80ed4f7f870"
-
-private@^0.1.7:
- version "0.1.7"
- resolved "https://registry.yarnpkg.com/private/-/private-0.1.7.tgz#68ce5e8a1ef0a23bb570cc28537b5332aba63ef1"
-
-process-nextick-args@~1.0.6:
- version "1.0.7"
- resolved "https://registry.yarnpkg.com/process-nextick-args/-/process-nextick-args-1.0.7.tgz#150e20b756590ad3f91093f25a4f2ad8bff30ba3"
-
-pseudomap@^1.0.2:
- version "1.0.2"
- resolved "https://registry.yarnpkg.com/pseudomap/-/pseudomap-1.0.2.tgz#f052a28da70e618917ef0a8ac34c1ae5a68286b3"
-
-punycode@^1.4.1:
- version "1.4.1"
- resolved "https://registry.yarnpkg.com/punycode/-/punycode-1.4.1.tgz#c0d5a63b2718800ad8e1eb0fa5269c84dd41845e"
-
-qs@~6.4.0:
- version "6.4.0"
- resolved "https://registry.yarnpkg.com/qs/-/qs-6.4.0.tgz#13e26d28ad6b0ffaa91312cd3bf708ed351e7233"
-
-read-pkg-up@^1.0.1:
- version "1.0.1"
- resolved "https://registry.yarnpkg.com/read-pkg-up/-/read-pkg-up-1.0.1.tgz#9d63c13276c065918d57f002a57f40a1b643fb02"
- dependencies:
- find-up "^1.0.0"
- read-pkg "^1.0.0"
-
-read-pkg@^1.0.0:
- version "1.1.0"
- resolved "https://registry.yarnpkg.com/read-pkg/-/read-pkg-1.1.0.tgz#f5ffaa5ecd29cb31c0474bca7d756b6bb29e3f28"
- dependencies:
- load-json-file "^1.0.0"
- normalize-package-data "^2.3.2"
- path-type "^1.0.0"
-
-readable-stream@^2.0.1, readable-stream@^2.0.6:
- version "2.3.3"
- resolved "https://registry.yarnpkg.com/readable-stream/-/readable-stream-2.3.3.tgz#368f2512d79f9d46fdfc71349ae7878bbc1eb95c"
- dependencies:
- core-util-is "~1.0.0"
- inherits "~2.0.3"
- isarray "~1.0.0"
- process-nextick-args "~1.0.6"
- safe-buffer "~5.1.1"
- string_decoder "~1.0.3"
- util-deprecate "~1.0.1"
-
-redent@^1.0.0:
- version "1.0.0"
- resolved "https://registry.yarnpkg.com/redent/-/redent-1.0.0.tgz#cf916ab1fd5f1f16dfb20822dd6ec7f730c2afde"
- dependencies:
- indent-string "^2.1.0"
- strip-indent "^1.0.1"
-
-regenerator-runtime@^0.11.0:
- version "0.11.0"
- resolved "https://registry.yarnpkg.com/regenerator-runtime/-/regenerator-runtime-0.11.0.tgz#7e54fe5b5ccd5d6624ea6255c3473be090b802e1"
-
-repeating@^2.0.0:
- version "2.0.1"
- resolved "https://registry.yarnpkg.com/repeating/-/repeating-2.0.1.tgz#5214c53a926d3552707527fbab415dbc08d06dda"
- dependencies:
- is-finite "^1.0.0"
-
-request@2, request@^2.79.0:
- version "2.81.0"
- resolved "https://registry.yarnpkg.com/request/-/request-2.81.0.tgz#c6928946a0e06c5f8d6f8a9333469ffda46298a0"
- dependencies:
- aws-sign2 "~0.6.0"
- aws4 "^1.2.1"
- caseless "~0.12.0"
- combined-stream "~1.0.5"
- extend "~3.0.0"
- forever-agent "~0.6.1"
- form-data "~2.1.1"
- har-validator "~4.2.1"
- hawk "~3.1.3"
- http-signature "~1.1.0"
- is-typedarray "~1.0.0"
- isstream "~0.1.2"
- json-stringify-safe "~5.0.1"
- mime-types "~2.1.7"
- oauth-sign "~0.8.1"
- performance-now "^0.2.0"
- qs "~6.4.0"
- safe-buffer "^5.0.1"
- stringstream "~0.0.4"
- tough-cookie "~2.3.0"
- tunnel-agent "^0.6.0"
- uuid "^3.0.0"
-
-require-directory@^2.1.1:
- version "2.1.1"
- resolved "https://registry.yarnpkg.com/require-directory/-/require-directory-2.1.1.tgz#8c64ad5fd30dab1c976e2344ffe7f792a6a6df42"
-
-require-main-filename@^1.0.1:
- version "1.0.1"
- resolved "https://registry.yarnpkg.com/require-main-filename/-/require-main-filename-1.0.1.tgz#97f717b69d48784f5f526a6c5aa8ffdda055a4d1"
-
-rimraf@2:
- version "2.6.1"
- resolved "https://registry.yarnpkg.com/rimraf/-/rimraf-2.6.1.tgz#c2338ec643df7a1b7fe5c54fa86f57428a55f33d"
- dependencies:
- glob "^7.0.5"
-
-safe-buffer@^5.0.1, safe-buffer@~5.1.0, safe-buffer@~5.1.1:
- version "5.1.1"
- resolved "https://registry.yarnpkg.com/safe-buffer/-/safe-buffer-5.1.1.tgz#893312af69b2123def71f57889001671eeb2c853"
-
-sass-graph@^2.1.1:
- version "2.2.4"
- resolved "https://registry.yarnpkg.com/sass-graph/-/sass-graph-2.2.4.tgz#13fbd63cd1caf0908b9fd93476ad43a51d1e0b49"
- dependencies:
- glob "^7.0.0"
- lodash "^4.0.0"
- scss-tokenizer "^0.2.3"
- yargs "^7.0.0"
-
-scss-tokenizer@^0.2.3:
- version "0.2.3"
- resolved "https://registry.yarnpkg.com/scss-tokenizer/-/scss-tokenizer-0.2.3.tgz#8eb06db9a9723333824d3f5530641149847ce5d1"
- dependencies:
- js-base64 "^2.1.8"
- source-map "^0.4.2"
-
-"semver@2 || 3 || 4 || 5":
- version "5.4.1"
- resolved "https://registry.yarnpkg.com/semver/-/semver-5.4.1.tgz#e059c09d8571f0540823733433505d3a2f00b18e"
-
-semver@~5.3.0:
- version "5.3.0"
- resolved "https://registry.yarnpkg.com/semver/-/semver-5.3.0.tgz#9b2ce5d3de02d17c6012ad326aa6b4d0cf54f94f"
-
-set-blocking@^2.0.0, set-blocking@~2.0.0:
- version "2.0.0"
- resolved "https://registry.yarnpkg.com/set-blocking/-/set-blocking-2.0.0.tgz#045f9782d011ae9a6803ddd382b24392b3d890f7"
-
-signal-exit@^3.0.0:
- version "3.0.2"
- resolved "https://registry.yarnpkg.com/signal-exit/-/signal-exit-3.0.2.tgz#b5fdc08f1287ea1178628e415e25132b73646c6d"
-
-slash@^1.0.0:
- version "1.0.0"
- resolved "https://registry.yarnpkg.com/slash/-/slash-1.0.0.tgz#c41f2f6c39fc16d1cd17ad4b5d896114ae470d55"
-
-sntp@1.x.x:
- version "1.0.9"
- resolved "https://registry.yarnpkg.com/sntp/-/sntp-1.0.9.tgz#6541184cc90aeea6c6e7b35e2659082443c66198"
- dependencies:
- hoek "2.x.x"
-
-source-map-support@^0.4.15:
- version "0.4.17"
- resolved "https://registry.yarnpkg.com/source-map-support/-/source-map-support-0.4.17.tgz#6f2150553e6375375d0ccb3180502b78c18ba430"
- dependencies:
- source-map "^0.5.6"
-
-source-map@^0.4.2:
- version "0.4.4"
- resolved "https://registry.yarnpkg.com/source-map/-/source-map-0.4.4.tgz#eba4f5da9c0dc999de68032d8b4f76173652036b"
- dependencies:
- amdefine ">=0.0.4"
-
-source-map@^0.5.6:
- version "0.5.7"
- resolved "https://registry.yarnpkg.com/source-map/-/source-map-0.5.7.tgz#8a039d2d1021d22d1ea14c80d8ea468ba2ef3fcc"
-
-spdx-correct@~1.0.0:
- version "1.0.2"
- resolved "https://registry.yarnpkg.com/spdx-correct/-/spdx-correct-1.0.2.tgz#4b3073d933ff51f3912f03ac5519498a4150db40"
- dependencies:
- spdx-license-ids "^1.0.2"
-
-spdx-expression-parse@~1.0.0:
- version "1.0.4"
- resolved "https://registry.yarnpkg.com/spdx-expression-parse/-/spdx-expression-parse-1.0.4.tgz#9bdf2f20e1f40ed447fbe273266191fced51626c"
-
-spdx-license-ids@^1.0.2:
- version "1.2.2"
- resolved "https://registry.yarnpkg.com/spdx-license-ids/-/spdx-license-ids-1.2.2.tgz#c9df7a3424594ade6bd11900d596696dc06bac57"
-
-sshpk@^1.7.0:
- version "1.13.1"
- resolved "https://registry.yarnpkg.com/sshpk/-/sshpk-1.13.1.tgz#512df6da6287144316dc4c18fe1cf1d940739be3"
- dependencies:
- asn1 "~0.2.3"
- assert-plus "^1.0.0"
- dashdash "^1.12.0"
- getpass "^0.1.1"
- optionalDependencies:
- bcrypt-pbkdf "^1.0.0"
- ecc-jsbn "~0.1.1"
- jsbn "~0.1.0"
- tweetnacl "~0.14.0"
-
-stdout-stream@^1.4.0:
- version "1.4.0"
- resolved "https://registry.yarnpkg.com/stdout-stream/-/stdout-stream-1.4.0.tgz#a2c7c8587e54d9427ea9edb3ac3f2cd522df378b"
- dependencies:
- readable-stream "^2.0.1"
-
-string-width@^1.0.1, string-width@^1.0.2:
- version "1.0.2"
- resolved "https://registry.yarnpkg.com/string-width/-/string-width-1.0.2.tgz#118bdf5b8cdc51a2a7e70d211e07e2b0b9b107d3"
- dependencies:
- code-point-at "^1.0.0"
- is-fullwidth-code-point "^1.0.0"
- strip-ansi "^3.0.0"
-
-string_decoder@~1.0.3:
- version "1.0.3"
- resolved "https://registry.yarnpkg.com/string_decoder/-/string_decoder-1.0.3.tgz#0fc67d7c141825de94282dd536bec6b9bce860ab"
- dependencies:
- safe-buffer "~5.1.0"
-
-stringstream@~0.0.4:
- version "0.0.5"
- resolved "https://registry.yarnpkg.com/stringstream/-/stringstream-0.0.5.tgz#4e484cd4de5a0bbbee18e46307710a8a81621878"
-
-strip-ansi@^3.0.0, strip-ansi@^3.0.1:
- version "3.0.1"
- resolved "https://registry.yarnpkg.com/strip-ansi/-/strip-ansi-3.0.1.tgz#6a385fb8853d952d5ff05d0e8aaf94278dc63dcf"
- dependencies:
- ansi-regex "^2.0.0"
-
-strip-bom@^2.0.0:
- version "2.0.0"
- resolved "https://registry.yarnpkg.com/strip-bom/-/strip-bom-2.0.0.tgz#6219a85616520491f35788bdbf1447a99c7e6b0e"
- dependencies:
- is-utf8 "^0.2.0"
-
-strip-indent@^1.0.1:
- version "1.0.1"
- resolved "https://registry.yarnpkg.com/strip-indent/-/strip-indent-1.0.1.tgz#0c7962a6adefa7bbd4ac366460a638552ae1a0a2"
- dependencies:
- get-stdin "^4.0.1"
-
-supports-color@^2.0.0:
- version "2.0.0"
- resolved "https://registry.yarnpkg.com/supports-color/-/supports-color-2.0.0.tgz#535d045ce6b6363fa40117084629995e9df324c7"
-
-tar@^2.0.0:
- version "2.2.1"
- resolved "https://registry.yarnpkg.com/tar/-/tar-2.2.1.tgz#8e4d2a256c0e2185c6b18ad694aec968b83cb1d1"
- dependencies:
- block-stream "*"
- fstream "^1.0.2"
- inherits "2"
-
-to-fast-properties@^1.0.3:
- version "1.0.3"
- resolved "https://registry.yarnpkg.com/to-fast-properties/-/to-fast-properties-1.0.3.tgz#b83571fa4d8c25b82e231b06e3a3055de4ca1a47"
-
-tough-cookie@~2.3.0:
- version "2.3.2"
- resolved "https://registry.yarnpkg.com/tough-cookie/-/tough-cookie-2.3.2.tgz#f081f76e4c85720e6c37a5faced737150d84072a"
- dependencies:
- punycode "^1.4.1"
-
-trim-newlines@^1.0.0:
- version "1.0.0"
- resolved "https://registry.yarnpkg.com/trim-newlines/-/trim-newlines-1.0.0.tgz#5887966bb582a4503a41eb524f7d35011815a613"
-
-trim-right@^1.0.1:
- version "1.0.1"
- resolved "https://registry.yarnpkg.com/trim-right/-/trim-right-1.0.1.tgz#cb2e1203067e0c8de1f614094b9fe45704ea6003"
-
-tunnel-agent@^0.6.0:
- version "0.6.0"
- resolved "https://registry.yarnpkg.com/tunnel-agent/-/tunnel-agent-0.6.0.tgz#27a5dea06b36b04a0a9966774b290868f0fc40fd"
- dependencies:
- safe-buffer "^5.0.1"
-
-tweetnacl@^0.14.3, tweetnacl@~0.14.0:
- version "0.14.5"
- resolved "https://registry.yarnpkg.com/tweetnacl/-/tweetnacl-0.14.5.tgz#5ae68177f192d4456269d108afa93ff8743f4f64"
-
-util-deprecate@~1.0.1:
- version "1.0.2"
- resolved "https://registry.yarnpkg.com/util-deprecate/-/util-deprecate-1.0.2.tgz#450d4dc9fa70de732762fbd2d4a28981419a0ccf"
-
-util.promisify@^1.0.0:
- version "1.0.0"
- resolved "https://registry.yarnpkg.com/util.promisify/-/util.promisify-1.0.0.tgz#440f7165a459c9a16dc145eb8e72f35687097030"
- dependencies:
- define-properties "^1.1.2"
- object.getownpropertydescriptors "^2.0.3"
-
-uuid@^3.0.0:
- version "3.1.0"
- resolved "https://registry.yarnpkg.com/uuid/-/uuid-3.1.0.tgz#3dd3d3e790abc24d7b0d3a034ffababe28ebbc04"
-
-validate-npm-package-license@^3.0.1:
- version "3.0.1"
- resolved "https://registry.yarnpkg.com/validate-npm-package-license/-/validate-npm-package-license-3.0.1.tgz#2804babe712ad3379459acfbe24746ab2c303fbc"
- dependencies:
- spdx-correct "~1.0.0"
- spdx-expression-parse "~1.0.0"
-
-verror@1.10.0:
- version "1.10.0"
- resolved "https://registry.yarnpkg.com/verror/-/verror-1.10.0.tgz#3a105ca17053af55d6e270c1f8288682e18da400"
- dependencies:
- assert-plus "^1.0.0"
- core-util-is "1.0.2"
- extsprintf "^1.2.0"
-
-which-module@^1.0.0:
- version "1.0.0"
- resolved "https://registry.yarnpkg.com/which-module/-/which-module-1.0.0.tgz#bba63ca861948994ff307736089e3b96026c2a4f"
-
-which@1, which@^1.2.9:
- version "1.3.0"
- resolved "https://registry.yarnpkg.com/which/-/which-1.3.0.tgz#ff04bdfc010ee547d780bec38e1ac1c2777d253a"
- dependencies:
- isexe "^2.0.0"
-
-wide-align@^1.1.0:
- version "1.1.2"
- resolved "https://registry.yarnpkg.com/wide-align/-/wide-align-1.1.2.tgz#571e0f1b0604636ebc0dfc21b0339bbe31341710"
- dependencies:
- string-width "^1.0.2"
-
-wrap-ansi@^2.0.0:
- version "2.1.0"
- resolved "https://registry.yarnpkg.com/wrap-ansi/-/wrap-ansi-2.1.0.tgz#d8fc3d284dd05794fe84973caecdd1cf824fdd85"
- dependencies:
- string-width "^1.0.1"
- strip-ansi "^3.0.1"
-
-wrappy@1:
- version "1.0.2"
- resolved "https://registry.yarnpkg.com/wrappy/-/wrappy-1.0.2.tgz#b5243d8f3ec1aa35f1364605bc0d1036e30ab69f"
-
-y18n@^3.2.1:
- version "3.2.1"
- resolved "https://registry.yarnpkg.com/y18n/-/y18n-3.2.1.tgz#6d15fba884c08679c0d77e88e7759e811e07fa41"
-
-yallist@^2.1.2:
- version "2.1.2"
- resolved "https://registry.yarnpkg.com/yallist/-/yallist-2.1.2.tgz#1c11f9218f076089a47dd512f93c6699a6a81d52"
-
-yargs-parser@^5.0.0:
- version "5.0.0"
- resolved "https://registry.yarnpkg.com/yargs-parser/-/yargs-parser-5.0.0.tgz#275ecf0d7ffe05c77e64e7c86e4cd94bf0e1228a"
- dependencies:
- camelcase "^3.0.0"
-
-yargs@^7.0.0:
- version "7.1.0"
- resolved "https://registry.yarnpkg.com/yargs/-/yargs-7.1.0.tgz#6ba318eb16961727f5d284f8ea003e8d6154d0c8"
- dependencies:
- camelcase "^3.0.0"
- cliui "^3.2.0"
- decamelize "^1.1.1"
- get-caller-file "^1.0.1"
- os-locale "^1.4.0"
- read-pkg-up "^1.0.1"
- require-directory "^2.1.1"
- require-main-filename "^1.0.1"
- set-blocking "^2.0.0"
- string-width "^1.0.2"
- which-module "^1.0.0"
- y18n "^3.2.1"
- yargs-parser "^5.0.0"