diff --git a/bower.json b/bower.json
index 64666aac..6b597fa0 100644
--- a/bower.json
+++ b/bower.json
@@ -1,6 +1,6 @@
{
"name": "stackedit",
- "version": "3.1.7",
+ "version": "3.1.8",
"description": "StackEdit is a free, open-source Markdown editor based on PageDown, the Markdown library used by Stack Overflow and the other Stack Exchange sites.",
"dependencies": {
"bootstrap": "v3.0.0",
diff --git a/package.json b/package.json
index 372bb741..6b5831a1 100644
--- a/package.json
+++ b/package.json
@@ -1,6 +1,6 @@
{
"name": "stackedit",
- "version": "3.1.7",
+ "version": "3.1.8",
"private": true,
"description": "StackEdit is a free, open-source Markdown editor based on PageDown, the Markdown library used by Stack Overflow and the other Stack Exchange sites.",
"main": "res/main.js",
diff --git a/public/cache.manifest b/public/cache.manifest
index 5ee7bd0e..8f6dc4d3 100644
--- a/public/cache.manifest
+++ b/public/cache.manifest
@@ -1,5 +1,5 @@
CACHE MANIFEST
-#Date Sun Feb 09 2014 13:28:14
+#Date Sun Feb 09 2014 18:59:27
CACHE:
res/worker.js
diff --git a/public/res-min/main.js b/public/res-min/main.js
index 4c63d5ba..9a7cf485 100644
--- a/public/res-min/main.js
+++ b/public/res-min/main.js
@@ -1006,7 +1006,7 @@ function printStackTrace(e) {
}
function x(e, t) {
for (var n, i, o, r = [], s = 0, a = e.length; a > s; s++) i = e[s], i.style && (r[s] = mt.get(i, "olddisplay"),
- n = i.style.display, t ? (r[s] || "none" !== n || (i.style.display = ""), "" === i.style.display && y(i) && (r[s] = mt.access(i, "olddisplay", A(i.nodeName)))) : r[s] || (o = y(i),
+ n = i.style.display, t ? (r[s] || "none" !== n || (i.style.display = ""), "" === i.style.display && y(i) && (r[s] = mt.access(i, "olddisplay", S(i.nodeName)))) : r[s] || (o = y(i),
(n && "none" !== n || !o) && mt.set(i, "olddisplay", o ? n : rt.css(i, "display"))));
for (s = 0; a > s; s++) i = e[s], i.style && (t && "none" !== i.style.display && "" !== i.style.display || (i.style.display = t ? r[s] || "" : "none"));
return e;
@@ -1029,13 +1029,13 @@ function printStackTrace(e) {
}
return o + E(e, t, n || (s ? "border" : "content"), i, r) + "px";
}
- function A(e) {
+ function S(e) {
var t = q, n = Xt[e];
- return n || (n = S(e, t), "none" !== n && n || (Ut = (Ut || rt("").css("cssText", "display:block !important")).appendTo(t.documentElement),
+ return n || (n = A(e, t), "none" !== n && n || (Ut = (Ut || rt("").css("cssText", "display:block !important")).appendTo(t.documentElement),
t = (Ut[0].contentWindow || Ut[0].contentDocument).document, t.write("
"),
- t.close(), n = S(e, t), Ut.detach()), Xt[e] = n), n;
+ t.close(), n = A(e, t), Ut.detach()), Xt[e] = n), n;
}
- function S(e, t) {
+ function A(e, t) {
var n = rt(t.createElement(e)).appendTo(t.body), i = rt.css(n[0], "display");
return n.remove(), i;
}
@@ -1467,7 +1467,7 @@ function printStackTrace(e) {
}
function i() {
function e(n, i) {
- return t.push(n += " ") > A.cacheLength && delete e[t.shift()], e[n] = i;
+ return t.push(n += " ") > S.cacheLength && delete e[t.shift()], e[n] = i;
}
var t = [];
return e;
@@ -1486,7 +1486,7 @@ function printStackTrace(e) {
}
}
function s(e, t) {
- for (var n = e.split("|"), i = e.length; i--; ) A.attrHandle[n[i]] = t;
+ for (var n = e.split("|"), i = e.length; i--; ) S.attrHandle[n[i]] = t;
}
function a(e, t) {
var n = t && e, i = n && 1 === e.nodeType && 1 === t.nodeType && (~t.sourceIndex || X) - (~e.sourceIndex || X);
@@ -1517,13 +1517,13 @@ function printStackTrace(e) {
function h(e, t) {
var i, o, r, s, a, l, c, u = W[e + " "];
if (u) return t ? 0 : u.slice(0);
- for (a = e, l = [], c = A.preFilter; a; ) {
+ for (a = e, l = [], c = S.preFilter; a; ) {
(!i || (o = dt.exec(a))) && (o && (a = a.slice(o[0].length) || a), l.push(r = [])),
i = !1, (o = ht.exec(a)) && (i = o.shift(), r.push({
value: i,
type: o[0].replace(ut, " ")
}), a = a.slice(i.length));
- for (s in A.filter) !(o = vt[s].exec(a)) || c[s] && !(o = c[s](o)) || (i = o.shift(),
+ for (s in S.filter) !(o = vt[s].exec(a)) || c[s] && !(o = c[s](o)) || (i = o.shift(),
r.push({
value: i,
type: s,
@@ -1578,15 +1578,15 @@ function printStackTrace(e) {
});
}
function b(e) {
- for (var t, n, i, o = e.length, r = A.relative[e[0].type], s = r || A.relative[" "], a = r ? 1 : 0, l = f(function(e) {
+ for (var t, n, i, o = e.length, r = S.relative[e[0].type], s = r || S.relative[" "], a = r ? 1 : 0, l = f(function(e) {
return e === t;
}, s, !0), c = f(function(e) {
return nt.call(t, e) > -1;
}, s, !0), u = [ function(e, n, i) {
return !r && (i || n !== T) || ((t = n).nodeType ? l(e, n, i) : c(e, n, i));
- } ]; o > a; a++) if (n = A.relative[e[a].type]) u = [ f(g(u), n) ]; else {
- if (n = A.filter[e[a].type].apply(null, e[a].matches), n[O]) {
- for (i = ++a; o > i && !A.relative[e[i].type]; i++) ;
+ } ]; o > a; a++) if (n = S.relative[e[a].type]) u = [ f(g(u), n) ]; else {
+ if (n = S.filter[e[a].type].apply(null, e[a].matches), n[O]) {
+ for (i = ++a; o > i && !S.relative[e[i].type]; i++) ;
return v(a > 1 && g(u), a > 1 && p(e.slice(0, a - 1).concat({
value: " " === e[a - 2].type ? "*" : ""
})).replace(ut, "$1"), n, i > a && b(e.slice(a, i)), o > i && b(e = e.slice(i)), o > i && p(e));
@@ -1597,7 +1597,7 @@ function printStackTrace(e) {
}
function y(e, t) {
var i = 0, r = t.length > 0, s = e.length > 0, a = function(o, a, l, c, u) {
- var d, h, p, f = [], g = 0, v = "0", b = o && [], y = null != u, w = T, x = o || s && A.find.TAG("*", u && a.parentNode || a), C = j += null == w ? 1 : Math.random() || .1;
+ var d, h, p, f = [], g = 0, v = "0", b = o && [], y = null != u, w = T, x = o || s && S.find.TAG("*", u && a.parentNode || a), C = j += null == w ? 1 : Math.random() || .1;
for (y && (T = a !== $ && a, k = i); null != (d = x[v]); v++) {
if (s && d) {
for (h = 0; p = e[h++]; ) if (p(d, a, l)) {
@@ -1627,18 +1627,18 @@ function printStackTrace(e) {
function x(e, t, n, i) {
var o, r, s, a, l, c = h(e);
if (!i && 1 === c.length) {
- if (r = c[0] = c[0].slice(0), r.length > 2 && "ID" === (s = r[0]).type && E.getById && 9 === t.nodeType && R && A.relative[r[1].type]) {
- if (t = (A.find.ID(s.matches[0].replace(Et, kt), t) || [])[0], !t) return n;
+ if (r = c[0] = c[0].slice(0), r.length > 2 && "ID" === (s = r[0]).type && E.getById && 9 === t.nodeType && R && S.relative[r[1].type]) {
+ if (t = (S.find.ID(s.matches[0].replace(Et, kt), t) || [])[0], !t) return n;
e = e.slice(r.shift().value.length);
}
- for (o = vt.needsContext.test(e) ? 0 : r.length; o-- && (s = r[o], !A.relative[a = s.type]); ) if ((l = A.find[a]) && (i = l(s.matches[0].replace(Et, kt), pt.test(r[0].type) && t.parentNode || t))) {
+ for (o = vt.needsContext.test(e) ? 0 : r.length; o-- && (s = r[o], !S.relative[a = s.type]); ) if ((l = S.find[a]) && (i = l(s.matches[0].replace(Et, kt), pt.test(r[0].type) && t.parentNode || t))) {
if (r.splice(o, 1), e = i.length && p(r), !e) return et.apply(n, i), n;
break;
}
}
return F(e, c)(i, t, !R, n, pt.test(e)), n;
}
- var C, E, k, A, S, _, F, T, D, L, $, I, R, M, N, B, P, O = "sizzle" + -new Date(), z = e.document, j = 0, H = 0, U = i(), W = i(), q = i(), G = !1, V = function(e, t) {
+ var C, E, k, S, A, _, F, T, D, L, $, I, R, M, N, B, P, O = "sizzle" + -new Date(), z = e.document, j = 0, H = 0, U = i(), W = i(), q = i(), G = !1, V = function(e, t) {
return e === t ? (G = !0, 0) : 0;
}, K = typeof t, X = 1 << 31, Y = {}.hasOwnProperty, Z = [], J = Z.pop, Q = Z.push, et = Z.push, tt = Z.slice, nt = Z.indexOf || function(e) {
for (var t = 0, n = this.length; n > t; t++) if (this[t] === e) return t;
@@ -1658,7 +1658,7 @@ function printStackTrace(e) {
};
try {
et.apply(Z = tt.call(z.childNodes), z.childNodes), Z[z.childNodes.length].nodeType;
- } catch (At) {
+ } catch (St) {
et = {
apply: Z.length ? function(e, t) {
Q.apply(e, tt.call(t));
@@ -1685,23 +1685,23 @@ function printStackTrace(e) {
2 === e.getElementsByClassName("i").length;
}), E.getById = r(function(e) {
return I.appendChild(e).id = O, !t.getElementsByName || !t.getElementsByName(O).length;
- }), E.getById ? (A.find.ID = function(e, t) {
+ }), E.getById ? (S.find.ID = function(e, t) {
if (typeof t.getElementById !== K && R) {
var n = t.getElementById(e);
return n && n.parentNode ? [ n ] : [];
}
- }, A.filter.ID = function(e) {
+ }, S.filter.ID = function(e) {
var t = e.replace(Et, kt);
return function(e) {
return e.getAttribute("id") === t;
};
- }) : (delete A.find.ID, A.filter.ID = function(e) {
+ }) : (delete S.find.ID, S.filter.ID = function(e) {
var t = e.replace(Et, kt);
return function(e) {
var n = typeof e.getAttributeNode !== K && e.getAttributeNode("id");
return n && n.value === t;
};
- }), A.find.TAG = E.getElementsByTagName ? function(e, t) {
+ }), S.find.TAG = E.getElementsByTagName ? function(e, t) {
return typeof t.getElementsByTagName !== K ? t.getElementsByTagName(e) : void 0;
} : function(e, t) {
var n, i = [], o = 0, r = t.getElementsByTagName(e);
@@ -1710,7 +1710,7 @@ function printStackTrace(e) {
return i;
}
return r;
- }, A.find.CLASS = E.getElementsByClassName && function(e, t) {
+ }, S.find.CLASS = E.getElementsByClassName && function(e, t) {
return typeof t.getElementsByClassName !== K && R ? t.getElementsByClassName(e) : void 0;
}, N = [], M = [], (E.qsa = bt.test(t.querySelectorAll)) && (r(function(e) {
e.innerHTML = "", e.querySelectorAll("[selected]").length || M.push("\\[" + ot + "*(?:value|" + it + ")"),
@@ -1755,7 +1755,7 @@ function printStackTrace(e) {
return (e.ownerDocument || e) !== $ && L(e), P(e, t);
}, n.attr = function(e, n) {
(e.ownerDocument || e) !== $ && L(e);
- var i = A.attrHandle[n.toLowerCase()], o = i && Y.call(A.attrHandle, n.toLowerCase()) ? i(e, n, !R) : t;
+ var i = S.attrHandle[n.toLowerCase()], o = i && Y.call(S.attrHandle, n.toLowerCase()) ? i(e, n, !R) : t;
return o === t ? E.attributes || !R ? e.getAttribute(n) : (o = e.getAttributeNode(n)) && o.specified ? o.value : null : o;
}, n.error = function(e) {
throw new Error("Syntax error, unrecognized expression: " + e);
@@ -1766,16 +1766,16 @@ function printStackTrace(e) {
for (;i--; ) e.splice(n[i], 1);
}
return e;
- }, S = n.getText = function(e) {
+ }, A = n.getText = function(e) {
var t, n = "", i = 0, o = e.nodeType;
if (o) {
if (1 === o || 9 === o || 11 === o) {
if ("string" == typeof e.textContent) return e.textContent;
- for (e = e.firstChild; e; e = e.nextSibling) n += S(e);
+ for (e = e.firstChild; e; e = e.nextSibling) n += A(e);
} else if (3 === o || 4 === o) return e.nodeValue;
- } else for (;t = e[i]; i++) n += S(t);
+ } else for (;t = e[i]; i++) n += A(t);
return n;
- }, A = n.selectors = {
+ }, S = n.selectors = {
cacheLength: 50,
createPseudo: o,
match: vt,
@@ -1861,8 +1861,8 @@ function printStackTrace(e) {
};
},
PSEUDO: function(e, t) {
- var i, r = A.pseudos[e] || A.setFilters[e.toLowerCase()] || n.error("unsupported pseudo: " + e);
- return r[O] ? r(t) : r.length > 1 ? (i = [ e, e, "", t ], A.setFilters.hasOwnProperty(e.toLowerCase()) ? o(function(e, n) {
+ var i, r = S.pseudos[e] || S.setFilters[e.toLowerCase()] || n.error("unsupported pseudo: " + e);
+ return r[O] ? r(t) : r.length > 1 ? (i = [ e, e, "", t ], S.setFilters.hasOwnProperty(e.toLowerCase()) ? o(function(e, n) {
for (var i, o = r(e, t), s = o.length; s--; ) i = nt.call(e, o[s]), e[i] = !(n[i] = o[s]);
}) : function(e) {
return r(e, 0, i);
@@ -1885,7 +1885,7 @@ function printStackTrace(e) {
}),
contains: o(function(e) {
return function(t) {
- return (t.textContent || t.innerText || S(t)).indexOf(e) > -1;
+ return (t.textContent || t.innerText || A(t)).indexOf(e) > -1;
};
}),
lang: o(function(e) {
@@ -1925,7 +1925,7 @@ function printStackTrace(e) {
return !0;
},
parent: function(e) {
- return !A.pseudos.empty(e);
+ return !S.pseudos.empty(e);
},
header: function(e) {
return xt.test(e.nodeName);
@@ -1967,19 +1967,19 @@ function printStackTrace(e) {
return e;
})
}
- }, A.pseudos.nth = A.pseudos.eq;
+ }, S.pseudos.nth = S.pseudos.eq;
for (C in {
radio: !0,
checkbox: !0,
file: !0,
password: !0,
image: !0
- }) A.pseudos[C] = l(C);
+ }) S.pseudos[C] = l(C);
for (C in {
submit: !0,
reset: !0
- }) A.pseudos[C] = c(C);
- d.prototype = A.filters = A.pseudos, A.setFilters = new d(), F = n.compile = function(e, t) {
+ }) S.pseudos[C] = c(C);
+ d.prototype = S.filters = S.pseudos, S.setFilters = new d(), F = n.compile = function(e, t) {
var n, i = [], o = [], r = q[e + " "];
if (!r) {
for (t || (t = h(e)), n = t.length; n--; ) r = b(t[n]), r[O] ? i.push(r) : o.push(r);
@@ -2433,7 +2433,7 @@ function printStackTrace(e) {
return null === e.getAttribute("value") ? "on" : e.value;
});
});
- var kt = /^key/, At = /^(?:mouse|contextmenu)|click/, St = /^(?:focusinfocus|focusoutblur)$/, _t = /^([^.]*)(?:\.(.+)|)$/;
+ var kt = /^key/, St = /^(?:mouse|contextmenu)|click/, At = /^(?:focusinfocus|focusoutblur)$/, _t = /^([^.]*)(?:\.(.+)|)$/;
rt.event = {
global: {},
add: function(e, n, i, o, r) {
@@ -2476,13 +2476,13 @@ function printStackTrace(e) {
},
trigger: function(n, i, o, r) {
var s, a, l, c, u, d, h, p = [ o || q ], f = it.call(n, "type") ? n.type : n, g = it.call(n, "namespace") ? n.namespace.split(".") : [];
- if (a = l = o = o || q, 3 !== o.nodeType && 8 !== o.nodeType && !St.test(f + rt.event.triggered) && (f.indexOf(".") >= 0 && (g = f.split("."),
+ if (a = l = o = o || q, 3 !== o.nodeType && 8 !== o.nodeType && !At.test(f + rt.event.triggered) && (f.indexOf(".") >= 0 && (g = f.split("."),
f = g.shift(), g.sort()), u = f.indexOf(":") < 0 && "on" + f, n = n[rt.expando] ? n : new rt.Event(f, "object" == typeof n && n),
n.isTrigger = r ? 2 : 3, n.namespace = g.join("."), n.namespace_re = n.namespace ? new RegExp("(^|\\.)" + g.join("\\.(?:.*\\.|)") + "(\\.|$)") : null,
n.result = t, n.target || (n.target = o), i = null == i ? [ n ] : rt.makeArray(i, [ n ]),
h = rt.event.special[f] || {}, r || !h.trigger || h.trigger.apply(o, i) !== !1)) {
if (!r && !h.noBubble && !rt.isWindow(o)) {
- for (c = h.delegateType || f, St.test(c + f) || (a = a.parentNode); a; a = a.parentNode) p.push(a),
+ for (c = h.delegateType || f, At.test(c + f) || (a = a.parentNode); a; a = a.parentNode) p.push(a),
l = a;
l === (o.ownerDocument || q) && p.push(l.defaultView || l.parentWindow || e);
}
@@ -2542,7 +2542,7 @@ function printStackTrace(e) {
fix: function(e) {
if (e[rt.expando]) return e;
var t, n, i, o = e.type, r = e, s = this.fixHooks[o];
- for (s || (this.fixHooks[o] = s = At.test(o) ? this.mouseHooks : kt.test(o) ? this.keyHooks : {}),
+ for (s || (this.fixHooks[o] = s = St.test(o) ? this.mouseHooks : kt.test(o) ? this.keyHooks : {}),
i = s.props ? this.props.concat(s.props) : this.props, e = new rt.Event(r), t = i.length; t--; ) n = i[t],
e[n] = r[n];
return e.target || (e.target = q), 3 === e.target.nodeType && (e.target = e.target.parentNode),
@@ -3364,10 +3364,10 @@ function printStackTrace(e) {
return new XMLHttpRequest();
} catch (e) {}
};
- var kn = rt.ajaxSettings.xhr(), An = {
+ var kn = rt.ajaxSettings.xhr(), Sn = {
0: 200,
1223: 204
- }, Sn = 0, _n = {};
+ }, An = 0, _n = {};
e.ActiveXObject && rt(e).on("unload", function() {
for (var e in _n) _n[e]();
_n = t;
@@ -3382,11 +3382,11 @@ function printStackTrace(e) {
for (r in i) a.setRequestHeader(r, i[r]);
n = function(e) {
return function() {
- n && (delete _n[s], n = a.onload = a.onerror = null, "abort" === e ? a.abort() : "error" === e ? o(a.status || 404, a.statusText) : o(An[a.status] || a.status, a.statusText, "string" == typeof a.responseText ? {
+ n && (delete _n[s], n = a.onload = a.onerror = null, "abort" === e ? a.abort() : "error" === e ? o(a.status || 404, a.statusText) : o(Sn[a.status] || a.status, a.statusText, "string" == typeof a.responseText ? {
text: a.responseText
} : t, a.getAllResponseHeaders()));
};
- }, a.onload = n(), a.onerror = n("error"), n = _n[s = Sn++] = n("abort"), a.send(e.hasContent && e.data || null);
+ }, a.onload = n(), a.onerror = n("error"), n = _n[s = An++] = n("abort"), a.send(e.hasContent && e.data || null);
},
abort: function() {
n && n();
@@ -3632,14 +3632,14 @@ function printStackTrace(e) {
i.push(t.call(n, e, o, r));
}), i);
};
- var A = "Reduce of empty array with no initial value";
+ var S = "Reduce of empty array with no initial value";
E.reduce = E.foldl = E.inject = function(e, t, n, i) {
var o = arguments.length > 2;
if (null == e && (e = []), p && e.reduce === p) return i && (t = E.bind(t, i)),
o ? e.reduce(t, n) : e.reduce(t);
if (k(e, function(e, r, s) {
o ? n = t.call(i, n, e, r, s) : (n = e, o = !0);
- }), !o) throw new TypeError(A);
+ }), !o) throw new TypeError(S);
return n;
}, E.reduceRight = E.foldr = function(e, t, n, i) {
var o = arguments.length > 2;
@@ -3652,11 +3652,11 @@ function printStackTrace(e) {
}
if (k(e, function(a, l, c) {
l = s ? s[--r] : --r, o ? n = t.call(i, n, e[l], l, c) : (n = e[l], o = !0);
- }), !o) throw new TypeError(A);
+ }), !o) throw new TypeError(S);
return n;
}, E.find = E.detect = function(e, t, n) {
var i;
- return S(e, function(e, o, r) {
+ return A(e, function(e, o, r) {
return t.call(n, e, o, r) ? (i = e, !0) : void 0;
}), i;
}, E.filter = E.select = function(e, t, n) {
@@ -3675,7 +3675,7 @@ function printStackTrace(e) {
return (o = o && t.call(i, e, r, s)) ? void 0 : n;
}), !!o);
};
- var S = E.some = E.any = function(e, t, i) {
+ var A = E.some = E.any = function(e, t, i) {
t || (t = E.identity);
var o = !1;
return null == e ? o : v && e.some === v ? e.some(t, i) : (k(e, function(e, r, s) {
@@ -3683,7 +3683,7 @@ function printStackTrace(e) {
}), !!o);
};
E.contains = E.include = function(e, t) {
- return null == e ? !1 : b && e.indexOf === b ? -1 != e.indexOf(t) : S(e, function(e) {
+ return null == e ? !1 : b && e.indexOf === b ? -1 != e.indexOf(t) : A(e, function(e) {
return e === t;
});
}, E.invoke = function(e, t) {
@@ -4408,7 +4408,7 @@ function printStackTrace(e) {
});
try {
Object.freeze(function() {});
- } catch (A) {
+ } catch (S) {
Object.freeze = function(e) {
return function(t) {
return "function" == typeof t ? t : e(t);
@@ -4428,15 +4428,15 @@ function printStackTrace(e) {
var n = p(e, t);
return delete e[t], n;
}), !Object.keys) {
- var S = !0, _ = [ "toString", "toLocaleString", "valueOf", "hasOwnProperty", "isPrototypeOf", "propertyIsEnumerable", "constructor" ], F = _.length;
+ var A = !0, _ = [ "toString", "toLocaleString", "valueOf", "hasOwnProperty", "isPrototypeOf", "propertyIsEnumerable", "constructor" ], F = _.length;
for (var T in {
toString: null
- }) S = !1;
+ }) A = !1;
Object.keys = function R(e) {
if ("object" != typeof e && "function" != typeof e || null === e) throw new TypeError("Object.keys called on a non-object");
var R = [];
for (var t in e) p(e, t) && R.push(t);
- if (S) for (var n = 0, i = F; i > n; n++) {
+ if (A) for (var n = 0, i = F; i > n; n++) {
var o = _[n];
p(e, o) && R.push(o);
}
@@ -4974,21 +4974,21 @@ function printStackTrace(e) {
if (!E) {
var t = u.value;
if (!g && t && t != d) {
- if (e && t == d[0]) return A.schedule();
+ if (e && t == d[0]) return S.schedule();
D(t), E = !0, l(), E = !1;
}
}
- }, A = r.delayedCall(k);
+ }, S = r.delayedCall(k);
n.addListener(u, "propertychange", k);
- var S = {
+ var A = {
13: 1,
27: 1
};
n.addListener(u, "keyup", function(e) {
- return !g || u.value && !S[e.keyCode] || setTimeout(B, 0), (u.value.charCodeAt(0) || 0) < 129 ? A.call() : (g ? N() : M(),
+ return !g || u.value && !A[e.keyCode] || setTimeout(B, 0), (u.value.charCodeAt(0) || 0) < 129 ? S.call() : (g ? N() : M(),
void 0);
}), n.addListener(u, "keydown", function() {
- A.schedule(50);
+ S.schedule(50);
});
}
var _ = function() {
@@ -5323,7 +5323,7 @@ function printStackTrace(e) {
};
2 >= l / o && (u.column += s.x.left < s.x.right ? -3 : 2), 1 >= c / i && (u.row += s.y.top < s.y.bottom ? -1 : 1);
var d = e.row != u.row, h = e.column != u.column, p = !t || e.row != t.row;
- d || h && !p ? S ? n - S >= a && m.renderer.scrollCursorIntoView(u) : S = n : S = null;
+ d || h && !p ? A ? n - A >= a && m.renderer.scrollCursorIntoView(u) : A = n : A = null;
}
function u() {
var e = k;
@@ -5335,7 +5335,7 @@ function printStackTrace(e) {
}
function h() {
clearInterval(C), m.session.removeMarker(y), y = null, m.$blockScrolling += 1, m.selection.fromOrientedRange(E),
- m.$blockScrolling -= 1, E = null, D = 0, S = null, _ = null, r.removeListener(document, "mousemove", p);
+ m.$blockScrolling -= 1, E = null, D = 0, A = null, _ = null, r.removeListener(document, "mousemove", p);
}
function p() {
null == L && (L = setTimeout(function() {
@@ -5365,7 +5365,7 @@ function printStackTrace(e) {
b.forEach(function(t) {
e[t] = this[t];
}, this), m.addEventListener("mousedown", this.onMouseDown.bind(e));
- var y, w, x, C, E, k, A, S, _, F, T = m.container, D = 0;
+ var y, w, x, C, E, k, S, A, _, F, T = m.container, D = 0;
this.onDragStart = function(e) {
if (this.cancelDrag || !T.draggable) {
var t = this;
@@ -5382,21 +5382,21 @@ function printStackTrace(e) {
}, this.onDragEnd = function(e) {
if (T.draggable = !1, this.setState(null), !m.getReadOnly()) {
var t = e.dataTransfer.dropEffect;
- A || "move" != t || m.session.remove(m.getSelectionRange()), m.renderer.$cursorLayer.setBlinking(!0);
+ S || "move" != t || m.session.remove(m.getSelectionRange()), m.renderer.$cursorLayer.setBlinking(!0);
}
this.editor.unsetStyle("ace_dragging");
}, this.onDragEnter = function(e) {
- return !m.getReadOnly() && f(e.dataTransfer) ? (y || d(), D++, e.dataTransfer.dropEffect = A = g(e),
+ return !m.getReadOnly() && f(e.dataTransfer) ? (y || d(), D++, e.dataTransfer.dropEffect = S = g(e),
r.preventDefault(e)) : void 0;
}, this.onDragOver = function(e) {
return !m.getReadOnly() && f(e.dataTransfer) ? (y || (d(), D++), null !== L && (L = null),
- w = e.clientX, x = e.clientY, e.dataTransfer.dropEffect = A = g(e), r.preventDefault(e)) : void 0;
+ w = e.clientX, x = e.clientY, e.dataTransfer.dropEffect = S = g(e), r.preventDefault(e)) : void 0;
}, this.onDragLeave = function(e) {
- return D--, 0 >= D && y ? (h(), A = null, r.preventDefault(e)) : void 0;
+ return D--, 0 >= D && y ? (h(), S = null, r.preventDefault(e)) : void 0;
}, this.onDrop = function(e) {
if (y) {
var t = e.dataTransfer, n = "drag" == this.state;
- if (n) switch (A) {
+ if (n) switch (S) {
case "move":
E = E.contains(k.row, k.column) ? {
start: k,
@@ -5411,7 +5411,7 @@ function printStackTrace(e) {
E = {
start: k,
end: m.session.insert(k, i)
- }, m.focus(), A = null;
+ }, m.focus(), S = null;
}
return h(), r.preventDefault(e);
}
@@ -10782,14 +10782,14 @@ function printStackTrace(e) {
} else {
if (!u && p) return;
if (!u) {
- var A = c.toOrientedRange();
- l.addSelectionMarker(A);
+ var S = c.toOrientedRange();
+ l.addSelectionMarker(S);
}
- var S = c.rangeList.rangeAtPoint(d);
+ var A = c.rangeList.rangeAtPoint(d);
l.once("mouseup", function() {
var e = c.toOrientedRange();
- S && e.isEmpty() && n(S.cursor, e.cursor) ? c.substractPoint(e.cursor) : (A && (l.removeSelectionMarker(A),
- c.addRange(A)), c.addRange(e));
+ A && e.isEmpty() && n(A.cursor, e.cursor) ? c.substractPoint(e.cursor) : (S && (l.removeSelectionMarker(S),
+ c.addRange(S)), c.addRange(e));
});
}
}
@@ -11520,7 +11520,7 @@ function printStackTrace(e) {
return e;
}), define("constants", [], function() {
var e = {};
- return e.VERSION = "3.1.7", e.MAIN_URL = "https://stackedit.io/", e.GOOGLE_ANALYTICS_ACCOUNT_ID = "UA-39556145-1",
+ return e.VERSION = "3.1.8", e.MAIN_URL = "https://stackedit.io/", e.GOOGLE_ANALYTICS_ACCOUNT_ID = "UA-39556145-1",
e.GOOGLE_API_KEY = "AIzaSyAeCU8CGcSkn0z9js6iocHuPBX4f_mMWkw", e.GOOGLE_DRIVE_APP_ID = "241271498917",
e.DROPBOX_APP_KEY = "lq6mwopab8wskas", e.DROPBOX_APP_SECRET = "851fgnucpezy84t",
e.DROPBOX_RESTRICTED_APP_KEY = "sw0hlixhr8q1xk0", e.DROPBOX_RESTRICTED_APP_SECRET = "1r808p2xygs6lbg",
@@ -11727,7 +11727,7 @@ function printStackTrace(e) {
match: String.prototype.match,
replace: String.prototype.replace,
split: String.prototype.split
- }, x = {}, C = {}, E = {}, k = [], A = "default", S = "class", _ = {
+ }, x = {}, C = {}, E = {}, k = [], S = "default", A = "class", _ = {
"default": /\\(?:0(?:[0-3][0-7]{0,2}|[4-7][0-7]?)?|[1-9]\d*|x[\dA-Fa-f]{2}|u[\dA-Fa-f]{4}|c[A-Za-z]|[\s\S])|\(\?[:=!]|[?*+]\?|{\d+(?:,\d*)?}\??|[\s\S]/,
"class": /\\(?:[0-3][0-7]{0,2}|[4-7][0-7]?|x[\dA-Fa-f]{2}|u[\dA-Fa-f]{4}|c[A-Za-z]|[\s\S])|[\s\S]/
}, F = /\$(?:{([\w$]+)}|(\d\d?|[\s\S]))/g, T = w.exec.call(/()??/, "")[1] === e, D = RegExp.prototype.sticky !== e, L = {
@@ -11740,7 +11740,7 @@ function printStackTrace(e) {
var r, s, a, l = {
hasNamedCapture: !1,
captureNames: []
- }, u = A, d = "", p = 0;
+ }, u = S, d = "", p = 0;
if (m.isRegExp(n)) {
if (o !== e) throw new TypeError("Cannot supply flags when copying a RegExp");
return i(n, {
@@ -11752,7 +11752,7 @@ function printStackTrace(e) {
for (r = c(n, o), n = r.pattern, o = r.flags; p < n.length; ) {
do r = h(n, o, p, u, l), r && r.reparse && (n = n.slice(0, p) + r.output + n.slice(p + r.matchLength)); while (r && r.reparse);
r ? (d += r.output, p += r.matchLength || 1) : (s = m.exec(n, _[u], p, "sticky")[0],
- d += s, p += s.length, "[" === s && u === A ? u = S : "]" === s && u === S && (u = A));
+ d += s, p += s.length, "[" === s && u === S ? u = A : "]" === s && u === A && (u = S));
}
E[a] = {
pattern: w.replace.call(d, /\(\?:\)(?=\(\?:\))|^\(\?:\)|\(\?:\)$/g, ""),
@@ -11770,7 +11770,7 @@ function printStackTrace(e) {
add: "g" + (D ? "y" : "")
}),
handler: t,
- scope: n.scope || A,
+ scope: n.scope || S,
flag: n.flag,
reparse: n.reparse
}), m.cache.flush("patterns");
@@ -11907,7 +11907,7 @@ function printStackTrace(e) {
}), a === o.length ? (!w.test.call(t, "") || i) && r.push("") : r.push(o.slice(a)),
t.lastIndex = s, r.length > n ? r.slice(0, n) : r;
}, v = m.addToken, v(/\\([ABCE-RTUVXYZaeg-mopqyz]|c(?![A-Za-z])|u(?![\dA-Fa-f]{4})|x(?![\dA-Fa-f]{2}))/, function(e, t) {
- if ("B" === e[1] && t === A) return e[0];
+ if ("B" === e[1] && t === S) return e[0];
throw new SyntaxError("Invalid escape " + e[0]);
}, {
scope: "all"
@@ -11928,7 +11928,7 @@ function printStackTrace(e) {
if (!t || t > this.captureNames.length) throw new SyntaxError("Backreference to undefined group " + e[0]);
return "\\" + t + (n === e.input.length || isNaN(e.input.charAt(n)) ? "" : "(?:)");
}), v(/\\(\d+)/, function(e, t) {
- if (!(t === A && /^[1-9]/.test(e[1]) && +e[1] <= this.captureNames.length) && "0" !== e[1]) throw new SyntaxError("Cannot use octal escape or backreference to undefined group " + e[0]);
+ if (!(t === S && /^[1-9]/.test(e[1]) && +e[1] <= this.captureNames.length) && "0" !== e[1]) throw new SyntaxError("Cannot use octal escape or backreference to undefined group " + e[0]);
return e[0];
}, {
scope: "all"
@@ -14863,10 +14863,10 @@ var prettyPrintOne, prettyPrint;
}
var C = d;
if (d += v.length, m) {
- var E = y[1], k = v.indexOf(E), A = k + E.length;
- y[2] && (A = v.length - y[2].length, k = A - E.length);
- var S = b.substring(5);
- n(l + C, v.substring(0, k), a, u), n(l + C + k, E, c(S, E), u), n(l + C + A, v.substring(A), a, u);
+ var E = y[1], k = v.indexOf(E), S = k + E.length;
+ y[2] && (S = v.length - y[2].length, k = S - E.length);
+ var A = b.substring(5);
+ n(l + C, v.substring(0, k), a, u), n(l + C + k, E, c(A, E), u), n(l + C + S, v.substring(S), a, u);
} else u.push(l + C, b);
}
e.decorations = u;
@@ -14965,9 +14965,9 @@ var prettyPrintOne, prettyPrint;
t && (y = y.replace(n, "\r")), C.nodeValue = y;
var E = C.ownerDocument, k = E.createElement("span");
k.className = c[d + 1];
- var A = C.parentNode;
- A.replaceChild(k, C), k.appendChild(C), w > r && (s[l + 1] = C = E.createTextNode(i.substring(m, w)),
- A.insertBefore(C, k.nextSibling));
+ var S = C.parentNode;
+ S.replaceChild(k, C), k.appendChild(C), w > r && (s[l + 1] = C = E.createTextNode(i.substring(m, w)),
+ S.insertBefore(C, k.nextSibling));
}
r = m, r >= w && (l += 2), r >= x && (d += 2);
}
@@ -15026,8 +15026,8 @@ var prettyPrintOne, prettyPrint;
!E && (C = i(o)) && y.test(C.tagName) && (E = C.className.match(g)), E && (E = E[1]);
var k;
if (b.test(o.tagName)) k = 1; else {
- var A = o.currentStyle, S = A ? A.whiteSpace : document.defaultView && document.defaultView.getComputedStyle ? document.defaultView.getComputedStyle(o, null).getPropertyValue("white-space") : 0;
- k = S && "pre" === S.substring(0, 3);
+ var S = o.currentStyle, A = S ? S.whiteSpace : document.defaultView && document.defaultView.getComputedStyle ? document.defaultView.getComputedStyle(o, null).getPropertyValue("white-space") : 0;
+ k = A && "pre" === A.substring(0, 3);
}
var _ = o.className.match(/\blinenums\b(?::(\d+))?/);
_ = _ ? _[1] && _[1].length ? +_[1] : !0 : !1, _ && s(o, _, k), h = {
@@ -15052,8 +15052,8 @@ var prettyPrintOne, prettyPrint;
var h, f = 0, g = /\blang(?:uage)?-([\w.]+)(?!\S)/, m = /\bprettyprint\b/, v = /\bprettyprinted\b/, b = /pre|xmp/i, y = /^code$/i, w = /^(?:pre|code|xmp)$/i;
n();
}
- var p = window, f = [ "break,continue,do,else,for,if,return,while" ], g = [ f, "auto,case,char,const,default,double,enum,extern,float,goto,int,long,register,short,signed,sizeof,static,struct,switch,typedef,union,unsigned,void,volatile" ], m = [ g, "catch,class,delete,false,import,new,operator,private,protected,public,this,throw,true,try,typeof" ], v = [ m, "alignof,align_union,asm,axiom,bool,concept,concept_map,const_cast,constexpr,decltype,dynamic_cast,explicit,export,friend,inline,late_check,mutable,namespace,nullptr,reinterpret_cast,static_assert,static_cast,template,typeid,typename,using,virtual,where" ], b = [ m, "abstract,boolean,byte,extends,final,finally,implements,import,instanceof,null,native,package,strictfp,super,synchronized,throws,transient" ], y = [ b, "as,base,by,checked,decimal,delegate,descending,dynamic,event,fixed,foreach,from,group,implicit,in,interface,internal,into,is,let,lock,object,out,override,orderby,params,partial,readonly,ref,sbyte,sealed,stackalloc,string,select,uint,ulong,unchecked,unsafe,ushort,var,virtual,where" ], w = "all,and,by,catch,class,else,extends,false,finally,for,if,in,is,isnt,loop,new,no,not,null,of,off,on,or,return,super,then,throw,true,try,unless,until,when,while,yes", x = [ m, "debugger,eval,export,function,get,null,set,undefined,var,with,Infinity,NaN" ], C = "caller,delete,die,do,dump,elsif,eval,exit,foreach,for,goto,if,import,last,local,my,next,no,our,print,package,redo,require,sub,undef,unless,until,use,wantarray,while,BEGIN,END", E = [ f, "and,as,assert,class,def,del,elif,except,exec,finally,from,global,import,in,is,lambda,nonlocal,not,or,pass,print,raise,try,with,yield,False,True,None" ], k = [ f, "alias,and,begin,case,class,def,defined,elsif,end,ensure,false,in,module,next,nil,not,or,redo,rescue,retry,self,super,then,true,undef,unless,until,when,yield,BEGIN,END" ], A = [ f, "case,done,elif,esac,eval,fi,function,in,local,set,then,until" ], S = [ v, y, x, C + E, k, A ], _ = /^(DIR|FILE|vector|(de|priority_)?queue|list|stack|(const_)?iterator|(multi)?(set|map)|bitset|u?(int|float)\d*)\b/, F = "str", T = "kwd", D = "com", L = "typ", $ = "lit", I = "pun", R = "pln", M = "tag", N = "dec", B = "src", P = "atn", O = "atv", z = "nocode", j = "(?:^^\\.?|[+-]|[!=]=?=?|\\#|%=?|&&?=?|\\(|\\*=?|[+\\-]=|->|\\/=?|::?|<=?|>>?>?=?|,|;|\\?|@|\\[|~|{|\\^\\^?=?|\\|\\|?=?|break|case|continue|delete|do|else|finally|instanceof|return|throw|try|typeof)\\s*", H = /\S/, U = r({
- keywords: S,
+ var p = window, f = [ "break,continue,do,else,for,if,return,while" ], g = [ f, "auto,case,char,const,default,double,enum,extern,float,goto,int,long,register,short,signed,sizeof,static,struct,switch,typedef,union,unsigned,void,volatile" ], m = [ g, "catch,class,delete,false,import,new,operator,private,protected,public,this,throw,true,try,typeof" ], v = [ m, "alignof,align_union,asm,axiom,bool,concept,concept_map,const_cast,constexpr,decltype,dynamic_cast,explicit,export,friend,inline,late_check,mutable,namespace,nullptr,reinterpret_cast,static_assert,static_cast,template,typeid,typename,using,virtual,where" ], b = [ m, "abstract,boolean,byte,extends,final,finally,implements,import,instanceof,null,native,package,strictfp,super,synchronized,throws,transient" ], y = [ b, "as,base,by,checked,decimal,delegate,descending,dynamic,event,fixed,foreach,from,group,implicit,in,interface,internal,into,is,let,lock,object,out,override,orderby,params,partial,readonly,ref,sbyte,sealed,stackalloc,string,select,uint,ulong,unchecked,unsafe,ushort,var,virtual,where" ], w = "all,and,by,catch,class,else,extends,false,finally,for,if,in,is,isnt,loop,new,no,not,null,of,off,on,or,return,super,then,throw,true,try,unless,until,when,while,yes", x = [ m, "debugger,eval,export,function,get,null,set,undefined,var,with,Infinity,NaN" ], C = "caller,delete,die,do,dump,elsif,eval,exit,foreach,for,goto,if,import,last,local,my,next,no,our,print,package,redo,require,sub,undef,unless,until,use,wantarray,while,BEGIN,END", E = [ f, "and,as,assert,class,def,del,elif,except,exec,finally,from,global,import,in,is,lambda,nonlocal,not,or,pass,print,raise,try,with,yield,False,True,None" ], k = [ f, "alias,and,begin,case,class,def,defined,elsif,end,ensure,false,in,module,next,nil,not,or,redo,rescue,retry,self,super,then,true,undef,unless,until,when,yield,BEGIN,END" ], S = [ f, "case,done,elif,esac,eval,fi,function,in,local,set,then,until" ], A = [ v, y, x, C + E, k, S ], _ = /^(DIR|FILE|vector|(de|priority_)?queue|list|stack|(const_)?iterator|(multi)?(set|map)|bitset|u?(int|float)\d*)\b/, F = "str", T = "kwd", D = "com", L = "typ", $ = "lit", I = "pun", R = "pln", M = "tag", N = "dec", B = "src", P = "atn", O = "atv", z = "nocode", j = "(?:^^\\.?|[+-]|[!=]=?=?|\\#|%=?|&&?=?|\\(|\\*=?|[+\\-]=|->|\\/=?|::?|<=?|>>?>?=?|,|;|\\?|@|\\[|~|{|\\^\\^?=?|\\|\\|?=?|break|case|continue|delete|do|else|finally|instanceof|return|throw|try|typeof)\\s*", H = /\S/, U = r({
+ keywords: A,
hashComments: !0,
cStyleComments: !0,
multiLineStrings: !0,
@@ -15078,7 +15078,7 @@ var prettyPrintOne, prettyPrint;
keywords: b,
cStyleComments: !0
}), [ "java" ]), l(r({
- keywords: A,
+ keywords: S,
hashComments: !0,
multiLineStrings: !0
}), [ "bsh", "csh", "sh" ]), l(r({
@@ -15299,9 +15299,9 @@ var hljs = new function() {
for (var y = o || b, w = "", x = y; x != b; x = x.parent) x.cN && (w = '' + w);
var C = "", E = 0, k = 0;
try {
- for (var A, S, _ = 0; ;) {
- if (y.t.lastIndex = _, A = y.t.exec(n), !A) break;
- S = v(n.substr(_, A.index - _), A[0]), _ = A.index + S;
+ for (var S, A, _ = 0; ;) {
+ if (y.t.lastIndex = _, S = y.t.exec(n), !S) break;
+ A = v(n.substr(_, S.index - _), S[0]), _ = S.index + A;
}
v(n.substr(_));
for (var x = y; x.parent; x = x.parent) x.cN && (w += "");
@@ -17318,7 +17318,7 @@ hljs.LANGUAGES.bash = function(e) {
}, k = {
cN: "keyword",
b: "@[a-zA-Z_][a-zA-Z_\\d]*"
- }, A = {
+ }, S = {
cN: "comment",
b: "\\/\\+",
c: [ "self" ],
@@ -17328,7 +17328,7 @@ hljs.LANGUAGES.bash = function(e) {
return {
l: e.UIR,
k: t,
- c: [ e.CLCM, e.CBLCLM, A, w, v, b, y, x, f, p, g, C, E, k ]
+ c: [ e.CLCM, e.CBLCLM, S, w, v, b, y, x, f, p, g, C, E, k ]
};
}(hljs), hljs.LANGUAGES.vbnet = function(e) {
return {
@@ -18965,7 +18965,7 @@ function() {
}
function s(e) {
return e = R.preSpanGamut(e), e = b(e), e = a(e), e = k(e), e = u(e), e = l(e),
- e = S(e), e = e.replace(/~P/g, "://"), e = E(e), e = I._DoItalicsAndBold ? I._DoItalicsAndBold(e) : w(e),
+ e = A(e), e = e.replace(/~P/g, "://"), e = E(e), e = I._DoItalicsAndBold ? I._DoItalicsAndBold(e) : w(e),
e = e.replace(/ +\n/g, " \n"), e = R.postSpanGamut(e);
}
function a(e) {
@@ -19095,7 +19095,7 @@ function() {
function k(e) {
return e = e.replace(/\\(\\)/g, $), e = e.replace(/\\([`*_{}\[\]()>#+-.!])/g, $);
}
- function A(e, t, n, i) {
+ function S(e, t, n, i) {
if (t) return e;
if (")" !== i.charAt(i.length - 1)) return "<" + n + i + ">";
for (var o = i.match(/[()]/g), r = 0, s = 0; s < o.length; s++) "(" === o[s] ? 0 >= r ? r = 1 : r++ : r--;
@@ -19112,8 +19112,8 @@ function() {
}
return "<" + n + i + ">" + a;
}
- function S(e) {
- e = e.replace(U, A);
+ function A(e) {
+ e = e.replace(U, S);
var t = function(e, t) {
return '' + R.plainLinkText(t) + "";
};
@@ -19888,7 +19888,7 @@ function() {
return e = e.replace(/^.+[ \t]*\n=+[ \t]*\n+/gm, t), e = e.replace(/^.+[ \t]*\n-+[ \t]*\n+/gm, t),
e = e.replace(/^\#{1,6}[ \t]*.+?[ \t]*\#*\n+/gm, t);
};
- var m = "\\{[ \\t]*((?:[#.][-_:a-zA-Z0-9]+[ \\t]*)+)\\}", v = new RegExp("^(#{1,6}.*#{0,6})[ \\t]+" + m + "[ \\t]*(?:\\n|0x03)", "gm"), b = new RegExp("^(.*)[ \\t]+" + m + "[ \\t]*\\n" + "(?=[\\-|=]+\\s*(?:\\n|0x03))", "gm"), y = new RegExp("^(```[^{\\n]*)[ \\t]+" + m + "[ \\t]*\\n" + "(?=([\\s\\S]*?)\\n```\\s*(\\n|0x03))", "gm");
+ var m = "\\{[ \\t]*((?:[#.][-_:a-zA-Z0-9]+[ \\t]*)+)\\}", v = new RegExp("^(#{1,6}.*#{0,6})[ \\t]+" + m + "[ \\t]*(?:\\n|0x03)", "gm"), b = new RegExp("^(.*)[ \\t]+" + m + "[ \\t]*\\n" + "(?=[\\-|=]+\\s*(?:\\n|0x03))", "gm"), y = new RegExp("^(```[ \\t]*[^{\\s]*)[ \\t]+" + m + "[ \\t]*\\n" + "(?=([\\s\\S]*?)\\n```[ \\t]*(\\n|0x03))", "gm");
Markdown.Extra.prototype.hashHeaderAttributeBlocks = function(e) {
function t(e, t, i) {
return "
~XX" + (n.hashBlocks.push(i) - 1) + "XX
\n" + t + "\n";
@@ -19972,7 +19972,7 @@ function() {
e = e.replace(/~D/g, "$$"), e = e.replace(/~T/g, "~");
}
var n = this;
- return e = e.replace(/(?:^|\n)```(.*)\n([\s\S]*?)\n```/g, function(e, i, o) {
+ return e = e.replace(/(?:^|\n)```[ \t]*(\S*)[ \t]*\n([\s\S]*?)\n```[ \t]*(?=\n)/g, function(e, i, o) {
var r = i, s = o, a = n.googleCodePrettify ? ' class="prettyprint"' : "", l = "";
r && (l = n.googleCodePrettify || n.highlightJs ? ' class="language-' + r + '"' : ' class="' + r + '"');
var c = [ "
", t(s), "
" ].join("");
@@ -20801,7 +20801,7 @@ function() {
var t = String.fromCharCode(e.which);
return e.shiftKey || (t = t.toLowerCase()), t;
}
- return k[e.which] ? k[e.which] : A[e.which] ? A[e.which] : String.fromCharCode(e.which).toLowerCase();
+ return k[e.which] ? k[e.which] : S[e.which] ? S[e.which] : String.fromCharCode(e.which).toLowerCase();
}
function o(e, t) {
return e.sort().join(",") === t.sort().join(",");
@@ -20890,7 +20890,7 @@ function() {
}
function y(e, t) {
var n, i, o, r = [];
- for (n = b(e), o = 0; o < n.length; ++o) i = n[o], _[i] && (i = _[i]), t && "keypress" != t && S[i] && (i = S[i],
+ for (n = b(e), o = 0; o < n.length; ++o) i = n[o], _[i] && (i = _[i]), t && "keypress" != t && A[i] && (i = A[i],
r.push("shift")), p(i) && r.push(i);
return t = m(i, r, t), {
key: i,
@@ -20939,7 +20939,7 @@ function() {
91: "meta",
93: "meta",
224: "meta"
- }, A = {
+ }, S = {
106: "*",
107: "+",
109: "-",
@@ -20956,7 +20956,7 @@ function() {
220: "\\",
221: "]",
222: "'"
- }, S = {
+ }, A = {
"~": "`",
"!": "1",
"@": "2",
@@ -21330,7 +21330,7 @@ function() {
f.onEventMgrCreated = function(e) {
g = e;
};
- var m, v, b, y, w, x, C, E, k, A = [ '', '', '', '', '
Tip: You can use a\n YAML front matter to specify the title of your page.
\n
Interpreted variables:title.
\n
\n
\n
About URL: For newly created page , Blogger API will append a generated number to the url like about-me-1234.html, if you deeply care about your URL naming, you should first create the page on Blogger and then update them with StackEdit specifying the pageId when publishing.\n
\n
About page visibility: Blogger API does not respect published status for pages.When publishing the page to Blogger, the page will be live but not added to the page listing. You should arrange the page listing from Blogger dashboard.\n
\n
\n
\n \n
\n
\n
\n\n\n
\n
\n
\n\n
\n \n
Publication
\n
\n
\n
\n "" is published on the following\n location(s):\n
\n \n
\n NOTE: Removing a publish location will not delete the actual publication.\n
\n
\n "" is not published yet.\n
\n
\n Tip: You can add publications using the Publish on sub-menu.\n
\n
\n \n
\n
\n
\n\n\n
\n
\n
\n\n
\n \n
Sharing
\n
\n
\n
\n "" can be shared using the following link(s):\n
\n \n
To share this document within StackEdit you need first to publish it as a Gist in\n Markdown format.\n
\n
\n Tip: You can open any URL within StackEdit using viewer#!url=.\n
Tip: You can use a\n YAML front matter to specify the title of your page.
\n
Interpreted variables:title.
\n
\n
\n
About URL: For newly created page , Blogger API will append a generated number to the url like about-me-1234.html, if you deeply care about your URL naming, you should first create the page on Blogger and then update them with StackEdit specifying the pageId when publishing.\n
\n
About page visibility: Blogger API does not respect published status for pages.When publishing the page to Blogger, the page will be live but not added to the page listing. You should arrange the page listing from Blogger dashboard.\n
\n
\n
\n \n
\n
\n
\n\n\n
\n
\n
\n\n
\n \n
Publication
\n
\n
\n
\n "" is published on the following\n location(s):\n
\n \n
\n NOTE: Removing a publish location will not delete the actual publication.\n
\n
\n "" is not published yet.\n
\n
\n Tip: You can add publications using the Publish on sub-menu.\n
\n
\n \n
\n
\n
\n\n\n
\n
\n
\n\n
\n \n
Sharing
\n
\n
\n
\n "" can be shared using the following link(s):\n
\n \n
To share this document within StackEdit you need first to publish it as a Gist in\n Markdown format.\n
\n
\n Tip: You can open any URL within StackEdit using viewer#!url=.\n
StackEdit has stopped because another instance was running in\n the same browser.
\n
If you want to reopen StackEdit, click on\n "Reload".
\n
\n \n
\n
\n
\n';
}), define("text!html/settingsTemplateTooltip.html", [], function() {
@@ -27155,10 +27155,10 @@ function() {
g.isIE ? setTimeout(function() {
window.scrollBy(0, o - i);
}, 0) : window.scrollBy(0, o - i);
- }, A = function() {
+ }, S = function() {
h(t.input, m), t.preview && (t.preview.scrollTop = 0);
};
- A();
+ S();
}
function r(e, t, n, o, r, s, a) {
function c(e) {
@@ -28895,7 +28895,7 @@ function() {
};
}(j.session.bgTokenizer), c.configureAce(j), l.onAceCreated(j);
}
- function A() {
+ function S() {
var t = {
closable: !0,
resizable: !1,
@@ -28959,7 +28959,7 @@ function() {
e(".ui-layout-resizer-east").append(i).append(n).append(H)) : e(".ui-layout-resizer-south").append(i).append(z).append(H).append(n),
C(), E(), l.onLayoutCreated(B);
}
- function S() {
+ function A() {
if (!window.viewerMode) {
var e = U.width() - 5;
J + Q + et + tt > e ? (V.show().find(".dropdown-menu").append(q), J + Q + et + nt > e ? G.show().find(".dropdown-menu").append(W) : G.hide().after(W)) : (G.hide().after(W),
@@ -29048,7 +29048,7 @@ function() {
return T.onReady = function() {
document.body.innerHTML = window.viewerMode === !0 ? h : d, U = e(".navbar"), W = U.find(".left-buttons"),
q = U.find(".right-buttons"), G = U.find(".left-buttons-dropdown"), V = U.find(".right-buttons-dropdown"),
- e(window).bind("resize", S), r.init(), c.addSettingEntries(), window.lightMode && e(".tab-settings-shortcuts").hide(),
+ e(window).bind("resize", A), r.init(), c.addSettingEntries(), window.lightMode && e(".tab-settings-shortcuts").hide(),
e(window).on("offline", T.setOffline), e(window).on("online", b), navigator.onLine === !1 && T.setOffline(),
e(document).mousemove(g).keypress(g), e(".dropdown-submenu > a").click(function(e) {
e.stopPropagation();
@@ -29088,10 +29088,10 @@ function() {
"line-height": Math.round(a.editorFontSize * (20 / 12)) + "px"
}), window.lightMode || (k(), X.find(".ace_content").css({
"background-size": "64px " + Math.round(a.editorFontSize * (20 / 12)) + "px"
- })), A(), _ = window.setInterval(function() {
+ })), S(), _ = window.setInterval(function() {
r.updateCurrentTime(), v(), (m() === !0 || window.viewerMode === !0) && (l.onPeriodicRun(),
y());
- }, 1e3), l.onReady(), S();
+ }, 1e3), l.onReady(), A();
}, l.addListener("onReady", function() {
function n(e) {
if (e = e || "default", d != e) {
@@ -29209,7 +29209,7 @@ function() {
}
}), T;
}), define("text!WELCOME.md", [], function() {
- return 'Welcome to StackEdit! {#welcome}\n=====================\n\n\nHello, I am your first Markdown document within **StackEdit**[^stackedit]. Don\'t delete me, I can be helpful. I can be recovered anyway in the `Utils` tab of the `Settings` dialog.\n\n----------\n\n\nDocuments\n---------\n\n**StackEdit** stores your documents in your browser, which means all your documents are automatically saved locally and are accessible **offline!**\n\n> **NOTE:**\n> \n> - StackEdit is accessible offline after the application has been loaded for the first time.\n> - Your local documents are not shared between different browsers or computers.\n> - Clearing your browser\'s data may **delete all your local documents!** Make sure your documents are backed up using **Google Drive** or **Dropbox** synchronization (see [ Synchronization](#synchronization) section).\n\n#### Create a document\n\nYou can create a new document by clicking the button in the navigation bar. It will switch from the current document to the new one.\n\n#### Switch to another document\n\nYou can list all your local documents and switch from one to another by clicking the button in the navigation bar.\n\n#### Rename a document\n\nYou can rename the current document by clicking the document title in the navigation bar.\n\n#### Delete a document\n\nYou can delete the current document by clicking the button in the navigation bar.\n\n#### Save a document\n\nYou can save the current document to a file using the `Save as...` sub-menu from the menu.\n\n> **Tip:** See [ Publish a document](#publish-a-document) section for a description of the different output formats.\n\n\n----------\n\n\nSynchronization\n---------------\n\n**StackEdit** can be combined with **Google Drive** and **Dropbox** to have your documents centralized in the *Cloud*. The synchronization mechanism will take care of uploading your modifications or downloading the latest version of your documents.\n\n> **NOTE:**\n> \n> - Full access to **Google Drive** or **Dropbox** is required to be able to import any document in StackEdit.\n> - Imported documents are downloaded in your browser and are not transmitted to a server.\n> - If you experience problems exporting documents to Google Drive, check and optionally disable browser extensions, such as Disconnect.\n\n#### Import a document\n\nYou can import a document from the *Cloud* by going to the `Google Drive` or the `Dropbox` sub-menu and by clicking `Import from...`. Once imported, your document will be automatically synchronized with the **Google Drive** / **Dropbox** file.\n\n#### Export a document\n\nYou can export any document by going to the `Google Drive` or the `Dropbox` sub-menu and by clicking `Export to...`. Even if your document is already synchronized with **Google Drive** or **Dropbox**, you can export it to a another location. **StackEdit** can synchronize one document with multiple locations.\n\n> **Tip:** Using **Google Drive**, you can create collaborative documents to work in real time with other users. Just check the box `Create a real time collaborative document` in the dialog options when exporting to Google Drive.\n\n#### Synchronize a document\n\nOnce your document is linked to a **Google Drive** or a **Dropbox** file, **StackEdit** will periodically (every 3 minutes) synchronize it by downloading/uploading any modification. Any conflict will be detected, and a local copy of your document will be created as a backup if necessary.\n\nIf you just have modified your document and you want to force the synchronization, click the button in the navigation bar.\n\n> **NOTE:** The button is disabled when you have no document to synchronize.\n\n#### Manage document synchronization\n\nSince one document can be synchronized with multiple locations, you can list and manage synchronized locations by clicking `Manage synchronization` in the menu. This will open a dialog box allowing you to add or remove synchronization links that are associated to your document.\n\n> **NOTE:** If you delete the file from **Google Drive** or from **Dropbox**, the document will no longer be synchronized with that location.\n\n----------\n\n\nPublication\n-----------\n\nOnce you are happy with your document, you can publish it on different websites directly from **StackEdit**. As for now, **StackEdit** can publish on **Blogger**, **Dropbox**, **Gist**, **GitHub**, **Google Drive**, **Tumblr**, **WordPress** and on any SSH server.\n\n#### Publish a document\n\nYou can publish your document by going to the `Publish on` sub-menu and by choosing a website. In the dialog box, you can choose the publication format:\n\n- Markdown, to publish the Markdown text on a website that can interpret it (**GitHub** for instance),\n- HTML, to publish the document converted into HTML (on a blog for instance),\n- Template, to have a full control of the output.\n\n> **NOTE:** The default template is a simple webpage wrapping your document in HTML format. You can customize it in the `Services` tab of the `Settings` dialog.\n\n#### Update a publication\n\nAfter publishing, **StackEdit** will keep your document linked to that publish location so that you can update it easily. Once you have modified your document and you want to update your publication, click on the button in the navigation bar.\n\n> **NOTE:** The button is disabled when the document has not been published yet.\n\n#### Manage document publication\n\nSince one document can be published on multiple locations, you can list and manage publish locations by clicking `Manage publication` in the menu. This will open a dialog box allowing you to remove publication links that are associated to your document.\n\n> **NOTE:** In some cases, if the file has been removed from the website or the blog, the document will no longer be published on that location.\n\n----------\n\n\nMarkdown Extra\n--------------\n\n**StackEdit** supports **Markdown Extra**, which extends **Markdown** syntax with some nice features.\n\n> **Tip:** You can disable any **Markdown Extra** feature in the `Extensions` tab of the `Settings` dialog.\n\n\n### Tables\n\n**Markdown Extra** has a special syntax for tables:\n\nItem | Value\n--------- | -----\nComputer | \\$1600\nPhone | \\$12\nPipe | \\$1\n\nYou can specify column alignment with one or two colons:\n\n| Item | Value | Qty |\n| :-------- | ------:| :--: |\n| Computer | \\$1600 | 5 |\n| Phone | \\$12 | 12 |\n| Pipe | \\$1 | 234 |\n\n\n### Definition Lists\n\n**Markdown Extra** has a special syntax for definition lists too:\n\nTerm 1\nTerm 2\n: Definition A\n: Definition B\n\nTerm 3\n\n: Definition C\n\n: Definition D\n\n > part of definition D\n\n\n### Fenced code blocks\n\nGitHub\'s fenced code blocks[^gfm] are also supported with **Prettify** syntax highlighting:\n\n```\n// Foo\nvar bar = 0;\n```\n\n> **Tip:** To use **Highlight.js** instead of **Prettify**, just configure the `Markdown Extra` extension in the `Settings` dialog.\n\n\n### Footnotes\n\nYou can create footnotes like this[^footnote].\n\n [^footnote]: Here is the *text* of the **footnote**.\n\n\n### SmartyPants\n\nSmartyPants converts ASCII punctuation characters into "smart" typographic punctuation HTML entities. For example:\n\n| | ASCII | HTML |\n ------------------|------------------------------------------|-------------------------------------\n| Single backticks | `\'Isn\'t this fun?\'` | ‘Isn’t this fun?’ |\n| Quotes | `"Isn\'t this fun?"` | “Isn’t this fun?” |\n| Dashes | `-- is an en-dash and --- is an em-dash` | – is an en-dash and — is an em-dash |\n\n\n### Table of contents\n\nYou can insert a table of contents using the marker `[TOC]`:\n\n[TOC]\n\n\n### Comments\n\nUsually, comments in Markdown are just standard HTML comments. \n**StackEdit** extends HTML comments in order to produce useful, highlighted comments in the preview but not in your exported documents. \n\n\n### MathJax\n \nYou can render *LaTeX* mathematical expressions using **MathJax**, as on [math.stackexchange.com][1]:\n\nThe *Gamma function* satisfying $\\Gamma(n) = (n-1)!\\quad\\forall\nn\\in\\mathbb N$ is via the Euler integral\n\n$$\n\\Gamma(z) = \\int_0^\\infty t^{z-1}e^{-t}dt\\,.\n$$\n\n> **Tip:** Make sure you include MathJax into your publications to render mathematical expression correctly. Your page/template should include something like: \n\n```\n\n```\n\n> **NOTE:** You can find more information:\n>\n> - about **Markdown** syntax [here][2],\n> - about **Markdown Extra** extension [here][3],\n> - about **LaTeX** mathematical expressions [here][4],\n> - about **Prettify** syntax highlighting [here][5],\n> - about **Highlight.js** syntax highlighting [here][6].\n\n [^stackedit]: [StackEdit](https://stackedit.io/) is a full-featured, open-source Markdown editor based on PageDown, the Markdown library used by Stack Overflow and the other Stack Exchange sites.\n\n [^gfm]: **GitHub Flavored Markdown** (GFM) is supported by StackEdit.\n\n\n [1]: http://math.stackexchange.com/\n [2]: http://daringfireball.net/projects/markdown/syntax "Markdown"\n [3]: https://github.com/jmcmanus/pagedown-extra "Pagedown Extra"\n [4]: http://meta.math.stackexchange.com/questions/5020/mathjax-basic-tutorial-and-quick-reference\n [5]: https://code.google.com/p/google-code-prettify/\n [6]: http://highlightjs.org/';
+ return 'Welcome to StackEdit! {#welcome}\n=====================\n\n\nHello, I am your first Markdown document within **StackEdit**[^stackedit]. Don\'t delete me, I can be helpful. I can be recovered anyway in the `Utils` tab of the `Settings` dialog.\n\n----------\n\n\nDocuments\n---------\n\n**StackEdit** stores your documents in your browser, which means all your documents are automatically saved locally and are accessible **offline!**\n\n> **NOTE:**\n> \n> - StackEdit is accessible offline after the application has been loaded for the first time.\n> - Your local documents are not shared between different browsers or computers.\n> - Clearing your browser\'s data may **delete all your local documents!** Make sure your documents are backed up using **Google Drive** or **Dropbox** synchronization (see [ Synchronization](#synchronization) section).\n\n#### Create a document\n\nYou can create a new document by clicking the button in the navigation bar. It will switch from the current document to the new one.\n\n#### Switch to another document\n\nYou can list all your local documents and switch from one to another by clicking the button in the navigation bar.\n\n#### Rename a document\n\nYou can rename the current document by clicking the document title in the navigation bar.\n\n#### Delete a document\n\nYou can delete the current document by clicking the button in the navigation bar.\n\n#### Save a document\n\nYou can save the current document to a file using the `Save as...` sub-menu from the menu.\n\n> **Tip:** See [ Publish a document](#publish-a-document) section for a description of the different output formats.\n\n\n----------\n\n\nSynchronization\n---------------\n\n**StackEdit** can be combined with **Google Drive** and **Dropbox** to have your documents centralized in the *Cloud*. The synchronization mechanism will take care of uploading your modifications or downloading the latest version of your documents.\n\n> **NOTE:**\n> \n> - Full access to **Google Drive** or **Dropbox** is required to be able to import any document in StackEdit.\n> - Imported documents are downloaded in your browser and are not transmitted to a server.\n> - If you experience problems exporting documents to Google Drive, check and optionally disable browser extensions, such as Disconnect.\n\n#### Import a document\n\nYou can import a document from the *Cloud* by going to the `Google Drive` or the `Dropbox` sub-menu and by clicking `Import from...`. Once imported, your document will be automatically synchronized with the **Google Drive** / **Dropbox** file.\n\n#### Export a document\n\nYou can export any document by going to the `Google Drive` or the `Dropbox` sub-menu and by clicking `Export to...`. Even if your document is already synchronized with **Google Drive** or **Dropbox**, you can export it to a another location. **StackEdit** can synchronize one document with multiple locations.\n\n> **Tip:** Using **Google Drive**, you can create collaborative documents to work in real time with other users. Just check the box `Create a real time collaborative document` in the dialog options when exporting to Google Drive.\n\n#### Synchronize a document\n\nOnce your document is linked to a **Google Drive** or a **Dropbox** file, **StackEdit** will periodically (every 3 minutes) synchronize it by downloading/uploading any modification. Any conflict will be detected, and a local copy of your document will be created as a backup if necessary.\n\nIf you just have modified your document and you want to force the synchronization, click the button in the navigation bar.\n\n> **NOTE:** The button is disabled when you have no document to synchronize.\n\n#### Manage document synchronization\n\nSince one document can be synchronized with multiple locations, you can list and manage synchronized locations by clicking `Manage synchronization` in the menu. This will open a dialog box allowing you to add or remove synchronization links that are associated to your document.\n\n> **NOTE:** If you delete the file from **Google Drive** or from **Dropbox**, the document will no longer be synchronized with that location.\n\n----------\n\n\nPublication\n-----------\n\nOnce you are happy with your document, you can publish it on different websites directly from **StackEdit**. As for now, **StackEdit** can publish on **Blogger**, **Dropbox**, **Gist**, **GitHub**, **Google Drive**, **Tumblr**, **WordPress** and on any SSH server.\n\n#### Publish a document\n\nYou can publish your document by going to the `Publish on` sub-menu and by choosing a website. In the dialog box, you can choose the publication format:\n\n- Markdown, to publish the Markdown text on a website that can interpret it (**GitHub** for instance),\n- HTML, to publish the document converted into HTML (on a blog for instance),\n- Template, to have a full control of the output.\n\n> **NOTE:** The default template is a simple webpage wrapping your document in HTML format. You can customize it in the `Services` tab of the `Settings` dialog.\n\n#### Update a publication\n\nAfter publishing, **StackEdit** will keep your document linked to that publish location so that you can update it easily. Once you have modified your document and you want to update your publication, click on the button in the navigation bar.\n\n> **NOTE:** The button is disabled when the document has not been published yet.\n\n#### Manage document publication\n\nSince one document can be published on multiple locations, you can list and manage publish locations by clicking `Manage publication` in the menu. This will open a dialog box allowing you to remove publication links that are associated to your document.\n\n> **NOTE:** In some cases, if the file has been removed from the website or the blog, the document will no longer be published on that location.\n\n----------\n\n\nMarkdown Extra\n--------------\n\n**StackEdit** supports **Markdown Extra**, which extends **Markdown** syntax with some nice features.\n\n> **Tip:** You can disable any **Markdown Extra** feature in the `Extensions` tab of the `Settings` dialog.\n\n\n### Tables\n\n**Markdown Extra** has a special syntax for tables:\n\nItem | Value\n--------- | -----\nComputer | 1600 USD\nPhone | 12 USD\nPipe | 1 USD\n\nYou can specify column alignment with one or two colons:\n\n| Item | Value | Qty |\n| :-------- | --------:| :--: |\n| Computer | 1600 USD | 5 |\n| Phone | 12 USD | 12 |\n| Pipe | 1 USD | 234 |\n\n\n### Definition Lists\n\n**Markdown Extra** has a special syntax for definition lists too:\n\nTerm 1\nTerm 2\n: Definition A\n: Definition B\n\nTerm 3\n\n: Definition C\n\n: Definition D\n\n > part of definition D\n\n\n### Fenced code blocks\n\nGitHub\'s fenced code blocks[^gfm] are also supported with **Prettify** syntax highlighting:\n\n```\n// Foo\nvar bar = 0;\n```\n\n> **Tip:** To use **Highlight.js** instead of **Prettify**, just configure the `Markdown Extra` extension in the `Settings` dialog.\n\n\n### Footnotes\n\nYou can create footnotes like this[^footnote].\n\n [^footnote]: Here is the *text* of the **footnote**.\n\n\n### SmartyPants\n\nSmartyPants converts ASCII punctuation characters into "smart" typographic punctuation HTML entities. For example:\n\n| | ASCII | HTML |\n ------------------|------------------------------------------|-------------------------------------\n| Single backticks | `\'Isn\'t this fun?\'` | ‘Isn’t this fun?’ |\n| Quotes | `"Isn\'t this fun?"` | “Isn’t this fun?” |\n| Dashes | `-- is an en-dash and --- is an em-dash` | – is an en-dash and — is an em-dash |\n\n\n### Table of contents\n\nYou can insert a table of contents using the marker `[TOC]`:\n\n[TOC]\n\n\n### Comments\n\nUsually, comments in Markdown are just standard HTML comments. \n**StackEdit** extends HTML comments in order to produce useful, highlighted comments in the preview but not in your exported documents. \n\n\n### MathJax\n \nYou can render *LaTeX* mathematical expressions using **MathJax**, as on [math.stackexchange.com][1]:\n\nThe *Gamma function* satisfying $\\Gamma(n) = (n-1)!\\quad\\forall\nn\\in\\mathbb N$ is via the Euler integral\n\n$$\n\\Gamma(z) = \\int_0^\\infty t^{z-1}e^{-t}dt\\,.\n$$\n\n> **Tip:** Make sure you include MathJax into your publications to render mathematical expression correctly. Your page/template should include something like: \n\n```\n\n```\n\n> **NOTE:** You can find more information:\n>\n> - about **Markdown** syntax [here][2],\n> - about **Markdown Extra** extension [here][3],\n> - about **LaTeX** mathematical expressions [here][4],\n> - about **Prettify** syntax highlighting [here][5],\n> - about **Highlight.js** syntax highlighting [here][6].\n\n [^stackedit]: [StackEdit](https://stackedit.io/) is a full-featured, open-source Markdown editor based on PageDown, the Markdown library used by Stack Overflow and the other Stack Exchange sites.\n\n [^gfm]: **GitHub Flavored Markdown** (GFM) is supported by StackEdit.\n\n\n [1]: http://math.stackexchange.com/\n [2]: http://daringfireball.net/projects/markdown/syntax "Markdown"\n [3]: https://github.com/jmcmanus/pagedown-extra "Pagedown Extra"\n [4]: http://meta.math.stackexchange.com/questions/5020/mathjax-basic-tutorial-and-quick-reference\n [5]: https://code.google.com/p/google-code-prettify/\n [6]: http://highlightjs.org/';
}), define("fileMgr", [ "jquery", "underscore", "constants", "core", "utils", "storage", "settings", "eventMgr", "fileSystem", "classes/FileDescriptor", "text!WELCOME.md" ], function(e, t, n, i, o, r, s, a, l, c, u) {
var d = {};
d.currentFile = void 0, d.selectFile = function(o) {
@@ -29500,24 +29500,25 @@ function() {
}), i.onError(function(e) {
t(e);
}), i.enqueue();
- }, m.downloadContent = function(e, t) {
- var n = [], i = new c();
- u(i), d(i), i.onRun(function() {
- function t() {
- if (0 === e.length) return i.chain(), void 0;
- var o = e[0];
- n.push(o);
- var r;
- return o.isFile === !0 ? r = o : void 0 !== o.wasRemoved && (r = o.stat), r ? (f.readFile(r.path, function(n, o) {
- return o ? (r.content = o, e.shift(), i.chain(t), void 0) : (h(n, i), void 0);
- }), void 0) : (e.shift(), i.chain(t), void 0);
+ }, m.downloadContent = function(e, n) {
+ var i = [], o = new c();
+ u(o), d(o), o.onRun(function() {
+ function n() {
+ if (0 === e.length) return o.chain(), void 0;
+ var r = e[0];
+ i.push(r);
+ var s;
+ return r.isFile === !0 ? s = r : void 0 !== r.wasRemoved && (s = r.stat), s ? (f.readFile(s.path, function(i, r) {
+ return t.isString(r) ? (s.content = r, e.shift(), o.chain(n), void 0) : (h(i, o),
+ void 0);
+ }), void 0) : (e.shift(), o.chain(n), void 0);
}
- i.chain(t);
- }), i.onSuccess(function() {
- t(void 0, n);
- }), i.onError(function(e) {
- t(e);
- }), i.enqueue();
+ o.chain(n);
+ }), o.onSuccess(function() {
+ n(void 0, i);
+ }), o.onError(function(e) {
+ n(e);
+ }), o.enqueue();
};
var b = !1;
return m.picker = function(e) {
@@ -30181,147 +30182,149 @@ function() {
void 0 !== window.delayedFunction && window.delayedFunction();
}, b;
}), define("text!html/dialogExportGdrive.html", [], function() {
- return '
\n
\n\n
\n \n
Export to <%= providerName %>
\n
\n
\n
\n This will save "" to your \n <%= providerName %>\n account and keep it synchronized.\n
\n
\n
\n \n
\n
\n \n
\n \n
\n
\n If no folder ID is supplied, the\n file will be created in your root folder. \n
\n
\n
\n \n
\n \n Collaborative documents cannot be open outside\n StackEdit nor have multiple synchronized locations. \n
\n
\n
\n \n
\n This will overwrite the existing file\n on the server. \n