StackEdit v5 announcement
This commit is contained in:
parent
b95762f3f0
commit
078beadf15
@ -214,7 +214,7 @@ gulp.task('clean', [
|
||||
]);
|
||||
gulp.task('default', function(cb) {
|
||||
runSequence([
|
||||
'jshint',
|
||||
// 'jshint',
|
||||
'requirejs',
|
||||
'less',
|
||||
'copy-font',
|
||||
|
@ -6787,23 +6787,23 @@ function diff_match_patch() {
|
||||
}, e;
|
||||
});
|
||||
|
||||
var saveAs = saveAs || "undefined" != typeof navigator && navigator.msSaveOrOpenBlob && navigator.msSaveOrOpenBlob.bind(navigator) || function(e) {
|
||||
if ("undefined" == typeof navigator || !/MSIE [1-9]\./.test(navigator.userAgent)) {
|
||||
var saveAs = saveAs || function(e) {
|
||||
if (!("undefined" == typeof e || "undefined" != typeof navigator && /MSIE [1-9]\./.test(navigator.userAgent))) {
|
||||
var t = e.document, n = function() {
|
||||
return e.URL || e.webkitURL || e;
|
||||
}, i = t.createElementNS("http://www.w3.org/1999/xhtml", "a"), r = "download" in i, o = function(n) {
|
||||
var i = t.createEvent("MouseEvents");
|
||||
i.initMouseEvent("click", !0, !1, e, 0, 0, 0, 0, 0, !1, !1, !1, !1, 0, null), n.dispatchEvent(i);
|
||||
}, a = e.webkitRequestFileSystem, s = e.requestFileSystem || a || e.mozRequestFileSystem, l = function(t) {
|
||||
}, i = t.createElementNS("http://www.w3.org/1999/xhtml", "a"), r = "download" in i, o = function(e) {
|
||||
var t = new MouseEvent("click");
|
||||
e.dispatchEvent(t);
|
||||
}, a = /constructor/i.test(e.HTMLElement) || e.safari, s = /CriOS\/[\d]+/.test(navigator.userAgent), l = function(t) {
|
||||
(e.setImmediate || e.setTimeout)(function() {
|
||||
throw t;
|
||||
}, 0);
|
||||
}, c = "application/octet-stream", u = 0, d = 500, p = function(t) {
|
||||
var i = function() {
|
||||
"string" == typeof t ? n().revokeObjectURL(t) : t.remove();
|
||||
}, c = "application/octet-stream", u = 4e4, d = function(e) {
|
||||
var t = function() {
|
||||
"string" == typeof e ? n().revokeObjectURL(e) : e.remove();
|
||||
};
|
||||
e.chrome ? i() : setTimeout(i, d);
|
||||
}, h = function(e, t, n) {
|
||||
setTimeout(t, u);
|
||||
}, p = function(e, t, n) {
|
||||
t = [].concat(t);
|
||||
for (var i = t.length; i--; ) {
|
||||
var r = e["on" + t[i]];
|
||||
@ -6813,67 +6813,50 @@ var saveAs = saveAs || "undefined" != typeof navigator && navigator.msSaveOrOpen
|
||||
l(o);
|
||||
}
|
||||
}
|
||||
}, f = function(t, l) {
|
||||
var d, f, m, g = this, v = t.type, b = !1, y = function() {
|
||||
h(g, "writestart progress write writeend".split(" "));
|
||||
}, x = function() {
|
||||
if ((b || !d) && (d = n().createObjectURL(t)), f) f.location.href = d; else {
|
||||
var i = e.open(d, "_blank");
|
||||
void 0 == i && "undefined" != typeof safari && (e.location.href = d);
|
||||
}, h = function(e) {
|
||||
return /^\s*(?:text\/\S*|application\/xml|\S*\/\S*\+xml)\s*;.*charset\s*=\s*utf-8/i.test(e.type) ? new Blob([ String.fromCharCode(65279), e ], {
|
||||
type: e.type
|
||||
}) : e;
|
||||
}, f = function(t, l, u) {
|
||||
u || (t = h(t));
|
||||
var f, m = this, g = t.type, v = g === c, b = function() {
|
||||
p(m, "writestart progress write writeend".split(" "));
|
||||
}, y = function() {
|
||||
if ((s || v && a) && e.FileReader) {
|
||||
var i = new FileReader();
|
||||
return i.onloadend = function() {
|
||||
var t = s ? i.result : i.result.replace(/^data:[^;]*;/, "data:attachment/file;"), n = e.open(t, "_blank");
|
||||
n || (e.location.href = t), t = void 0, m.readyState = m.DONE, b();
|
||||
}, i.readAsDataURL(t), void (m.readyState = m.INIT);
|
||||
}
|
||||
g.readyState = g.DONE, y(), p(d);
|
||||
}, w = function(e) {
|
||||
return function() {
|
||||
return g.readyState !== g.DONE ? e.apply(this, arguments) : void 0;
|
||||
};
|
||||
}, S = {
|
||||
create: !0,
|
||||
exclusive: !1
|
||||
if (f || (f = n().createObjectURL(t)), v) e.location.href = f; else {
|
||||
var r = e.open(f, "_blank");
|
||||
r || (e.location.href = f);
|
||||
}
|
||||
m.readyState = m.DONE, b(), d(f);
|
||||
};
|
||||
return g.readyState = g.INIT, l || (l = "download"), r ? (d = n().createObjectURL(t),
|
||||
i.href = d, i.download = l, o(i), g.readyState = g.DONE, y(), void p(d)) : (e.chrome && v && v !== c && (m = t.slice || t.webkitSlice,
|
||||
t = m.call(t, 0, t.size, c), b = !0), a && "download" !== l && (l += ".download"),
|
||||
(v === c || a) && (f = e), s ? (u += t.size, void s(e.TEMPORARY, u, w(function(e) {
|
||||
e.root.getDirectory("saved", S, w(function(e) {
|
||||
var n = function() {
|
||||
e.getFile(l, S, w(function(e) {
|
||||
e.createWriter(w(function(n) {
|
||||
n.onwriteend = function(t) {
|
||||
f.location.href = e.toURL(), g.readyState = g.DONE, h(g, "writeend", t), p(e);
|
||||
}, n.onerror = function() {
|
||||
var e = n.error;
|
||||
e.code !== e.ABORT_ERR && x();
|
||||
}, "writestart progress write abort".split(" ").forEach(function(e) {
|
||||
n["on" + e] = g["on" + e];
|
||||
}), n.write(t), g.abort = function() {
|
||||
n.abort(), g.readyState = g.DONE;
|
||||
}, g.readyState = g.WRITING;
|
||||
}), x);
|
||||
}), x);
|
||||
};
|
||||
e.getFile(l, {
|
||||
create: !1
|
||||
}, w(function(e) {
|
||||
e.remove(), n();
|
||||
}), w(function(e) {
|
||||
e.code === e.NOT_FOUND_ERR ? n() : x();
|
||||
}));
|
||||
}), x);
|
||||
}), x)) : void x());
|
||||
}, m = f.prototype, g = function(e, t) {
|
||||
return new f(e, t);
|
||||
return m.readyState = m.INIT, r ? (f = n().createObjectURL(t), void setTimeout(function() {
|
||||
i.href = f, i.download = l, o(i), b(), d(f), m.readyState = m.DONE;
|
||||
})) : void y();
|
||||
}, m = f.prototype, g = function(e, t, n) {
|
||||
return new f(e, t || e.name || "download", n);
|
||||
};
|
||||
return m.abort = function() {
|
||||
var e = this;
|
||||
e.readyState = e.DONE, h(e, "abort");
|
||||
}, m.readyState = m.INIT = 0, m.WRITING = 1, m.DONE = 2, m.error = m.onwritestart = m.onprogress = m.onwrite = m.onabort = m.onerror = m.onwriteend = null,
|
||||
g;
|
||||
return "undefined" != typeof navigator && navigator.msSaveOrOpenBlob ? function(e, t, n) {
|
||||
return t = t || e.name || "download", n || (e = h(e)), navigator.msSaveOrOpenBlob(e, t);
|
||||
} : (m.abort = function() {}, m.readyState = m.INIT = 0, m.WRITING = 1, m.DONE = 2,
|
||||
m.error = m.onwritestart = m.onprogress = m.onwrite = m.onabort = m.onerror = m.onwriteend = null,
|
||||
g);
|
||||
}
|
||||
}("undefined" != typeof self && self || "undefined" != typeof window && window || this.content);
|
||||
|
||||
"undefined" != typeof module && module.exports ? module.exports.saveAs = saveAs : "undefined" != typeof define && null !== define && null != define.amd && define("FileSaver", [], function() {
|
||||
"undefined" != typeof module && module.exports ? module.exports.saveAs = saveAs : "undefined" != typeof define && null !== define && null !== define.amd && define("FileSaver.js", [], function() {
|
||||
return saveAs;
|
||||
}), define("utils", [ "jquery", "underscore", "storage", "crel", "xregexp", "stacktrace", "FileSaver" ], function($, _, storage, crel, XRegExp, printStackTrace, saveAs) {
|
||||
}), define("FileSaver", function(e) {
|
||||
return function() {
|
||||
var t;
|
||||
return t || e.saveAs;
|
||||
};
|
||||
}(this)), define("utils", [ "jquery", "underscore", "storage", "crel", "xregexp", "stacktrace", "FileSaver" ], function($, _, storage, crel, XRegExp, printStackTrace, saveAs) {
|
||||
function jqElt(e) {
|
||||
return _.isString(e) || !e.val ? $(e) : e;
|
||||
}
|
||||
@ -7225,7 +7208,7 @@ var saveAs = saveAs || "undefined" != typeof navigator && navigator.msSaveOrOpen
|
||||
}, utils;
|
||||
}), define("constants", [], function() {
|
||||
var e = {};
|
||||
return e.VERSION = "4.3.14", e.MAIN_URL = "https://stackedit.io/", e.GOOGLE_ANALYTICS_ACCOUNT_ID = "UA-39556145-1",
|
||||
return e.VERSION = "4.3.16", 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",
|
||||
@ -7514,13 +7497,24 @@ var saveAs = saveAs || "undefined" != typeof navigator && navigator.msSaveOrOpen
|
||||
}
|
||||
return e;
|
||||
}), define("text", [ "module" ], function(e) {
|
||||
var t, n, i, r, o, a = [ "Msxml2.XMLHTTP", "Microsoft.XMLHTTP", "Msxml2.XMLHTTP.4.0" ], s = /^\s*<\?xml(\s)+version=[\'\"](\d)*.(\d)*[\'\"](\s)*\?>/im, l = /<body[^>]*>\s*([\s\S]+)\s*<\/body>/im, c = "undefined" != typeof location && location.href, u = c && location.protocol && location.protocol.replace(/\:/, ""), d = c && location.hostname, p = c && (location.port || void 0), h = {}, f = e.config && e.config() || {};
|
||||
return t = {
|
||||
version: "2.0.13",
|
||||
function t(e, t) {
|
||||
return void 0 === e || "" === e ? t : e;
|
||||
}
|
||||
function n(e, n, i, r) {
|
||||
if (n === r) return !0;
|
||||
if (e === i) {
|
||||
if ("http" === e) return t(n, "80") === t(r, "80");
|
||||
if ("https" === e) return t(n, "443") === t(r, "443");
|
||||
}
|
||||
return !1;
|
||||
}
|
||||
var i, r, o, a, s, l = [ "Msxml2.XMLHTTP", "Microsoft.XMLHTTP", "Msxml2.XMLHTTP.4.0" ], c = /^\s*<\?xml(\s)+version=[\'\"](\d)*.(\d)*[\'\"](\s)*\?>/im, u = /<body[^>]*>\s*([\s\S]+)\s*<\/body>/im, d = "undefined" != typeof location && location.href, p = d && location.protocol && location.protocol.replace(/\:/, ""), h = d && location.hostname, f = d && (location.port || void 0), m = {}, g = e.config && e.config() || {};
|
||||
return i = {
|
||||
version: "2.0.15",
|
||||
strip: function(e) {
|
||||
if (e) {
|
||||
e = e.replace(s, "");
|
||||
var t = e.match(l);
|
||||
e = e.replace(c, "");
|
||||
var t = e.match(u);
|
||||
t && (e = t[1]);
|
||||
} else e = "";
|
||||
return e;
|
||||
@ -7528,16 +7522,16 @@ var saveAs = saveAs || "undefined" != typeof navigator && navigator.msSaveOrOpen
|
||||
jsEscape: function(e) {
|
||||
return e.replace(/(['\\])/g, "\\$1").replace(/[\f]/g, "\\f").replace(/[\b]/g, "\\b").replace(/[\n]/g, "\\n").replace(/[\t]/g, "\\t").replace(/[\r]/g, "\\r").replace(/[\u2028]/g, "\\u2028").replace(/[\u2029]/g, "\\u2029");
|
||||
},
|
||||
createXhr: f.createXhr || function() {
|
||||
createXhr: g.createXhr || function() {
|
||||
var e, t, n;
|
||||
if ("undefined" != typeof XMLHttpRequest) return new XMLHttpRequest();
|
||||
if ("undefined" != typeof ActiveXObject) for (t = 0; 3 > t; t += 1) {
|
||||
n = a[t];
|
||||
n = l[t];
|
||||
try {
|
||||
e = new ActiveXObject(n);
|
||||
} catch (i) {}
|
||||
if (e) {
|
||||
a = [ n ];
|
||||
l = [ n ];
|
||||
break;
|
||||
}
|
||||
}
|
||||
@ -7554,59 +7548,59 @@ var saveAs = saveAs || "undefined" != typeof navigator && navigator.msSaveOrOpen
|
||||
};
|
||||
},
|
||||
xdRegExp: /^((\w+)\:)?\/\/([^\/\\]+)/,
|
||||
useXhr: function(e, n, i, r) {
|
||||
var o, a, s, l = t.xdRegExp.exec(e);
|
||||
return l ? (o = l[2], a = l[3], a = a.split(":"), s = a[1], a = a[0], !(o && o !== n || a && a.toLowerCase() !== i.toLowerCase() || (s || a) && s !== r)) : !0;
|
||||
useXhr: function(e, t, r, o) {
|
||||
var a, s, l, c = i.xdRegExp.exec(e);
|
||||
return c ? (a = c[2], s = c[3], s = s.split(":"), l = s[1], s = s[0], !(a && a !== t || s && s.toLowerCase() !== r.toLowerCase() || (l || s) && !n(a, l, t, o))) : !0;
|
||||
},
|
||||
finishLoad: function(e, n, i, r) {
|
||||
i = n ? t.strip(i) : i, f.isBuild && (h[e] = i), r(i);
|
||||
finishLoad: function(e, t, n, r) {
|
||||
n = t ? i.strip(n) : n, g.isBuild && (m[e] = n), r(n);
|
||||
},
|
||||
load: function(e, n, i, r) {
|
||||
if (r && r.isBuild && !r.inlineText) return void i();
|
||||
f.isBuild = r && r.isBuild;
|
||||
var o = t.parseName(e), a = o.moduleName + (o.ext ? "." + o.ext : ""), s = n.toUrl(a), l = f.useXhr || t.useXhr;
|
||||
return 0 === s.indexOf("empty:") ? void i() : void (!c || l(s, u, d, p) ? t.get(s, function(n) {
|
||||
t.finishLoad(e, o.strip, n, i);
|
||||
load: function(e, t, n, r) {
|
||||
if (r && r.isBuild && !r.inlineText) return void n();
|
||||
g.isBuild = r && r.isBuild;
|
||||
var o = i.parseName(e), a = o.moduleName + (o.ext ? "." + o.ext : ""), s = t.toUrl(a), l = g.useXhr || i.useXhr;
|
||||
return 0 === s.indexOf("empty:") ? void n() : void (!d || l(s, p, h, f) ? i.get(s, function(t) {
|
||||
i.finishLoad(e, o.strip, t, n);
|
||||
}, function(e) {
|
||||
i.error && i.error(e);
|
||||
}) : n([ a ], function(e) {
|
||||
t.finishLoad(o.moduleName + "." + o.ext, o.strip, e, i);
|
||||
n.error && n.error(e);
|
||||
}) : t([ a ], function(e) {
|
||||
i.finishLoad(o.moduleName + "." + o.ext, o.strip, e, n);
|
||||
}));
|
||||
},
|
||||
write: function(e, n, i) {
|
||||
if (h.hasOwnProperty(n)) {
|
||||
var r = t.jsEscape(h[n]);
|
||||
i.asModule(e + "!" + n, "define(function () { return '" + r + "';});\n");
|
||||
write: function(e, t, n) {
|
||||
if (m.hasOwnProperty(t)) {
|
||||
var r = i.jsEscape(m[t]);
|
||||
n.asModule(e + "!" + t, "define(function () { return '" + r + "';});\n");
|
||||
}
|
||||
},
|
||||
writeFile: function(e, n, i, r, o) {
|
||||
var a = t.parseName(n), s = a.ext ? "." + a.ext : "", l = a.moduleName + s, c = i.toUrl(a.moduleName + s) + ".js";
|
||||
t.load(l, i, function() {
|
||||
var n = function(e) {
|
||||
writeFile: function(e, t, n, r, o) {
|
||||
var a = i.parseName(t), s = a.ext ? "." + a.ext : "", l = a.moduleName + s, c = n.toUrl(a.moduleName + s) + ".js";
|
||||
i.load(l, n, function() {
|
||||
var t = function(e) {
|
||||
return r(c, e);
|
||||
};
|
||||
n.asModule = function(e, t) {
|
||||
t.asModule = function(e, t) {
|
||||
return r.asModule(e, c, t);
|
||||
}, t.write(e, l, n, o);
|
||||
}, i.write(e, l, t, o);
|
||||
}, o);
|
||||
}
|
||||
}, "node" === f.env || !f.env && "undefined" != typeof process && process.versions && process.versions.node && !process.versions["node-webkit"] ? (n = require.nodeRequire("fs"),
|
||||
t.get = function(e, t, i) {
|
||||
}, "node" === g.env || !g.env && "undefined" != typeof process && process.versions && process.versions.node && !process.versions["node-webkit"] && !process.versions["atom-shell"] ? (r = require.nodeRequire("fs"),
|
||||
i.get = function(e, t, n) {
|
||||
try {
|
||||
var r = n.readFileSync(e, "utf8");
|
||||
"\ufeff" === r[0] && (r = r.substring(1)), t(r);
|
||||
var i = r.readFileSync(e, "utf8");
|
||||
"\ufeff" === i[0] && (i = i.substring(1)), t(i);
|
||||
} catch (o) {
|
||||
i && i(o);
|
||||
n && n(o);
|
||||
}
|
||||
}) : "xhr" === f.env || !f.env && t.createXhr() ? t.get = function(e, n, i, r) {
|
||||
var o, a = t.createXhr();
|
||||
}) : "xhr" === g.env || !g.env && i.createXhr() ? i.get = function(e, t, n, r) {
|
||||
var o, a = i.createXhr();
|
||||
if (a.open("GET", e, !0), r) for (o in r) r.hasOwnProperty(o) && a.setRequestHeader(o.toLowerCase(), r[o]);
|
||||
f.onXhr && f.onXhr(a, e), a.onreadystatechange = function() {
|
||||
var t, r;
|
||||
4 === a.readyState && (t = a.status || 0, t > 399 && 600 > t ? (r = new Error(e + " HTTP status: " + t),
|
||||
r.xhr = a, i && i(r)) : n(a.responseText), f.onXhrComplete && f.onXhrComplete(a, e));
|
||||
g.onXhr && g.onXhr(a, e), a.onreadystatechange = function() {
|
||||
var i, r;
|
||||
4 === a.readyState && (i = a.status || 0, i > 399 && 600 > i ? (r = new Error(e + " HTTP status: " + i),
|
||||
r.xhr = a, n && n(r)) : t(a.responseText), g.onXhrComplete && g.onXhrComplete(a, e));
|
||||
}, a.send(null);
|
||||
} : "rhino" === f.env || !f.env && "undefined" != typeof Packages && "undefined" != typeof java ? t.get = function(e, t) {
|
||||
} : "rhino" === g.env || !g.env && "undefined" != typeof Packages && "undefined" != typeof java ? i.get = function(e, t) {
|
||||
var n, i, r = "utf-8", o = new java.io.File(e), a = java.lang.System.getProperty("line.separator"), s = new java.io.BufferedReader(new java.io.InputStreamReader(new java.io.FileInputStream(o), r)), l = "";
|
||||
try {
|
||||
for (n = new java.lang.StringBuffer(), i = s.readLine(), i && i.length() && 65279 === i.charAt(0) && (i = i.substring(1)),
|
||||
@ -7616,20 +7610,20 @@ var saveAs = saveAs || "undefined" != typeof navigator && navigator.msSaveOrOpen
|
||||
s.close();
|
||||
}
|
||||
t(l);
|
||||
} : ("xpconnect" === f.env || !f.env && "undefined" != typeof Components && Components.classes && Components.interfaces) && (i = Components.classes,
|
||||
r = Components.interfaces, Components.utils["import"]("resource://gre/modules/FileUtils.jsm"),
|
||||
o = "@mozilla.org/windows-registry-key;1" in i, t.get = function(e, t) {
|
||||
var n, a, s, l = {};
|
||||
o && (e = e.replace(/\//g, "\\")), s = new FileUtils.File(e);
|
||||
} : ("xpconnect" === g.env || !g.env && "undefined" != typeof Components && Components.classes && Components.interfaces) && (o = Components.classes,
|
||||
a = Components.interfaces, Components.utils["import"]("resource://gre/modules/FileUtils.jsm"),
|
||||
s = "@mozilla.org/windows-registry-key;1" in o, i.get = function(e, t) {
|
||||
var n, i, r, l = {};
|
||||
s && (e = e.replace(/\//g, "\\")), r = new FileUtils.File(e);
|
||||
try {
|
||||
n = i["@mozilla.org/network/file-input-stream;1"].createInstance(r.nsIFileInputStream),
|
||||
n.init(s, 1, 0, !1), a = i["@mozilla.org/intl/converter-input-stream;1"].createInstance(r.nsIConverterInputStream),
|
||||
a.init(n, "utf-8", n.available(), r.nsIConverterInputStream.DEFAULT_REPLACEMENT_CHARACTER),
|
||||
a.readString(n.available(), l), a.close(), n.close(), t(l.value);
|
||||
n = o["@mozilla.org/network/file-input-stream;1"].createInstance(a.nsIFileInputStream),
|
||||
n.init(r, 1, 0, !1), i = o["@mozilla.org/intl/converter-input-stream;1"].createInstance(a.nsIConverterInputStream),
|
||||
i.init(n, "utf-8", n.available(), a.nsIConverterInputStream.DEFAULT_REPLACEMENT_CHARACTER),
|
||||
i.readString(n.available(), l), i.close(), n.close(), t(l.value);
|
||||
} catch (c) {
|
||||
throw new Error((s && s.path || "") + ": " + c);
|
||||
throw new Error((r && r.path || "") + ": " + c);
|
||||
}
|
||||
}), t;
|
||||
}), i;
|
||||
}), define("text!html/settingsExtensionsAccordion.html", [], function() {
|
||||
return '<div class="panel">\n <div class="accordion-heading">\n <div class="checkbox pull-right">\n <label> <input id="input-enable-extension-<%= extensionId %>"\n type="checkbox"<% if(!isOptional) print(\'disabled\') %>>\n enabled\n </label>\n </div>\n <a data-toggle="collapse" data-parent=".accordion-extensions"\n class="accordion-toggle collapsed" href="#accordion-extensions-collapse-<%= extensionId %>">\n <%= extensionName %> <i class="icon-up-dir"></i></a>\n </div>\n <div id="accordion-extensions-collapse-<%= extensionId %>" class="collapse">\n <div class="accordion-inner clearfix"><%= settingsBlock %></div>\n </div>\n</div>\n';
|
||||
}), function() {
|
||||
@ -15476,7 +15470,7 @@ function() {
|
||||
}, n.rad = function(e) {
|
||||
return e % 360 * U / 180;
|
||||
}, n.deg = function(e) {
|
||||
return 180 * e / U % 360;
|
||||
return Math.round(180 * e / U % 360 * 1e3) / 1e3;
|
||||
}, n.snapTo = function(e, t, i) {
|
||||
if (i = n.is(i, "finite") ? i : 10, n.is(e, W)) {
|
||||
for (var r = e.length; r--; ) if (q(e[r] - t) <= i) return e[r];
|
||||
@ -16925,7 +16919,7 @@ function() {
|
||||
}
|
||||
}
|
||||
return g(f, {
|
||||
fill: "url(" + document.location + "#" + u + ")",
|
||||
fill: "url('" + document.location + "#" + u + "')",
|
||||
opacity: 1,
|
||||
"fill-opacity": 1
|
||||
}), v.fill = d, v.opacity = 1, v.fillOpacity = 1, 1;
|
||||
@ -17271,8 +17265,7 @@ function() {
|
||||
}
|
||||
}, k = function(e) {
|
||||
return e.parentNode && "a" === e.parentNode.tagName.toLowerCase() ? e.parentNode : e;
|
||||
};
|
||||
Element = function(e, t) {
|
||||
}, E = function(e, t) {
|
||||
this[0] = this.node = e, e.raphael = !0, this.id = n._oid++, e.raphaelid = this.id,
|
||||
this.matrix = n.matrix(), this.realPath = null, this.paper = t, this.attrs = this.attrs || {},
|
||||
this._ = {
|
||||
@ -17285,16 +17278,17 @@ function() {
|
||||
dirty: 1
|
||||
}, !t.bottom && (t.bottom = this), this.prev = t.top, t.top && (t.top.next = this),
|
||||
t.top = this, this.next = null;
|
||||
}, Jt = n.el, Element.prototype = Jt, Jt.constructor = Element, n._engine.path = function(e, t) {
|
||||
}, T = n.el;
|
||||
E.prototype = T, T.constructor = E, n._engine.path = function(e, t) {
|
||||
var n = g("path");
|
||||
t.canvas && t.canvas.appendChild(n);
|
||||
var i = new Element(n, t);
|
||||
var i = new E(n, t);
|
||||
return i.type = "path", S(i, {
|
||||
fill: "none",
|
||||
stroke: "#000",
|
||||
path: e
|
||||
}), i;
|
||||
}, Jt.rotate = function(e, n, r) {
|
||||
}, T.rotate = function(e, n, r) {
|
||||
if (this.removed) return this;
|
||||
if (e = t(e).split(c), e.length - 1 && (n = i(e[1]), r = i(e[2])), e = i(e[0]),
|
||||
null == r && (n = r), null == n || null == r) {
|
||||
@ -17302,17 +17296,17 @@ function() {
|
||||
n = o.x + o.width / 2, r = o.y + o.height / 2;
|
||||
}
|
||||
return this.transform(this._.transform.concat([ [ "r", e, n, r ] ])), this;
|
||||
}, Jt.scale = function(e, n, r, o) {
|
||||
}, T.scale = function(e, n, r, o) {
|
||||
if (this.removed) return this;
|
||||
if (e = t(e).split(c), e.length - 1 && (n = i(e[1]), r = i(e[2]), o = i(e[3])),
|
||||
e = i(e[0]), null == n && (n = e), null == o && (r = o), null == r || null == o) var a = this.getBBox(1);
|
||||
return r = null == r ? a.x + a.width / 2 : r, o = null == o ? a.y + a.height / 2 : o,
|
||||
this.transform(this._.transform.concat([ [ "s", e, n, r, o ] ])), this;
|
||||
}, Jt.translate = function(e, n) {
|
||||
}, T.translate = function(e, n) {
|
||||
return this.removed ? this : (e = t(e).split(c), e.length - 1 && (n = i(e[1])),
|
||||
e = i(e[0]) || 0, n = +n || 0, this.transform(this._.transform.concat([ [ "t", e, n ] ])),
|
||||
this);
|
||||
}, Jt.transform = function(t) {
|
||||
}, T.transform = function(t) {
|
||||
var i = this._;
|
||||
if (null == t) return i.transform;
|
||||
if (n._extractTransform(this, t), this.clip && g(this.clip, {
|
||||
@ -17326,11 +17320,11 @@ function() {
|
||||
});
|
||||
}
|
||||
return this;
|
||||
}, Jt.hide = function() {
|
||||
}, T.hide = function() {
|
||||
return !this.removed && this.paper.safari(this.node.style.display = "none"), this;
|
||||
}, Jt.show = function() {
|
||||
}, T.show = function() {
|
||||
return !this.removed && this.paper.safari(this.node.style.display = ""), this;
|
||||
}, Jt.remove = function() {
|
||||
}, T.remove = function() {
|
||||
var e = k(this.node);
|
||||
if (!this.removed && e.parentNode) {
|
||||
var t = this.paper;
|
||||
@ -17339,7 +17333,7 @@ function() {
|
||||
for (var i in this) this[i] = "function" == typeof this[i] ? n._removedFactory(i) : null;
|
||||
this.removed = !0;
|
||||
}
|
||||
}, Jt._getBBox = function() {
|
||||
}, T._getBBox = function() {
|
||||
if ("none" == this.node.style.display) {
|
||||
this.show();
|
||||
var e = !0;
|
||||
@ -17361,7 +17355,7 @@ function() {
|
||||
i = i || {}, n && (t.display = "none");
|
||||
}
|
||||
return e && this.hide(), i;
|
||||
}, Jt.attr = function(t, i) {
|
||||
}, T.attr = function(t, i) {
|
||||
if (this.removed) return this;
|
||||
if (null == t) {
|
||||
var r = {};
|
||||
@ -17390,28 +17384,28 @@ function() {
|
||||
for (var m in f) f[e](m) && (p[m] = f[m]);
|
||||
}
|
||||
return S(this, p), this;
|
||||
}, Jt.toFront = function() {
|
||||
}, T.toFront = function() {
|
||||
if (this.removed) return this;
|
||||
var e = k(this.node);
|
||||
e.parentNode.appendChild(e);
|
||||
var t = this.paper;
|
||||
return t.top != this && n._tofront(this, t), this;
|
||||
}, Jt.toBack = function() {
|
||||
}, T.toBack = function() {
|
||||
if (this.removed) return this;
|
||||
var e = k(this.node), t = e.parentNode;
|
||||
t.insertBefore(e, t.firstChild), n._toback(this, this.paper);
|
||||
this.paper;
|
||||
return this;
|
||||
}, Jt.insertAfter = function(e) {
|
||||
}, T.insertAfter = function(e) {
|
||||
if (this.removed || !e) return this;
|
||||
var t = k(this.node), i = k(e.node || e[e.length - 1].node);
|
||||
return i.nextSibling ? i.parentNode.insertBefore(t, i.nextSibling) : i.parentNode.appendChild(t),
|
||||
n._insertafter(this, e, this.paper), this;
|
||||
}, Jt.insertBefore = function(e) {
|
||||
}, T.insertBefore = function(e) {
|
||||
if (this.removed || !e) return this;
|
||||
var t = k(this.node), i = k(e.node || e[0].node);
|
||||
return i.parentNode.insertBefore(t, i), n._insertbefore(this, e, this.paper), this;
|
||||
}, Jt.blur = function(e) {
|
||||
}, T.blur = function(e) {
|
||||
var t = this;
|
||||
if (0 !== +e) {
|
||||
var i = g("filter"), r = g("feGaussianBlur");
|
||||
@ -17426,7 +17420,7 @@ function() {
|
||||
}, n._engine.circle = function(e, t, n, i) {
|
||||
var r = g("circle");
|
||||
e.canvas && e.canvas.appendChild(r);
|
||||
var o = new Element(r, e);
|
||||
var o = new E(r, e);
|
||||
return o.attrs = {
|
||||
cx: t,
|
||||
cy: n,
|
||||
@ -17437,7 +17431,7 @@ function() {
|
||||
}, n._engine.rect = function(e, t, n, i, r, o) {
|
||||
var a = g("rect");
|
||||
e.canvas && e.canvas.appendChild(a);
|
||||
var s = new Element(a, e);
|
||||
var s = new E(a, e);
|
||||
return s.attrs = {
|
||||
x: t,
|
||||
y: n,
|
||||
@ -17451,7 +17445,7 @@ function() {
|
||||
}, n._engine.ellipse = function(e, t, n, i, r) {
|
||||
var o = g("ellipse");
|
||||
e.canvas && e.canvas.appendChild(o);
|
||||
var a = new Element(o, e);
|
||||
var a = new E(o, e);
|
||||
return a.attrs = {
|
||||
cx: t,
|
||||
cy: n,
|
||||
@ -17469,7 +17463,7 @@ function() {
|
||||
height: o,
|
||||
preserveAspectRatio: "none"
|
||||
}), a.setAttributeNS(h, "href", t), e.canvas && e.canvas.appendChild(a);
|
||||
var s = new Element(a, e);
|
||||
var s = new E(a, e);
|
||||
return s.attrs = {
|
||||
x: n,
|
||||
y: i,
|
||||
@ -17480,7 +17474,7 @@ function() {
|
||||
}, n._engine.text = function(e, t, i, r) {
|
||||
var o = g("text");
|
||||
e.canvas && e.canvas.appendChild(o);
|
||||
var a = new Element(o, e);
|
||||
var a = new E(o, e);
|
||||
return a.attrs = {
|
||||
x: t,
|
||||
y: i,
|
||||
@ -17540,15 +17534,15 @@ function() {
|
||||
u("raphael.remove", this), this.canvas.parentNode && this.canvas.parentNode.removeChild(this.canvas);
|
||||
for (var e in this) this[e] = "function" == typeof this[e] ? n._removedFactory(e) : null;
|
||||
};
|
||||
var E = n.st;
|
||||
for (var T in Jt) Jt[e](T) && !E[e](T) && (E[T] = function(e) {
|
||||
var I = n.st;
|
||||
for (var D in T) T[e](D) && !I[e](D) && (I[D] = function(e) {
|
||||
return function() {
|
||||
var t = arguments;
|
||||
return this.forEach(function(n) {
|
||||
n[e].apply(n, t);
|
||||
});
|
||||
};
|
||||
}(T));
|
||||
}(D));
|
||||
}
|
||||
}(), function() {
|
||||
if (n.vml) {
|
||||
@ -17958,7 +17952,7 @@ function() {
|
||||
this._viewBox = [ e, t, i, r, !!o ], this._viewBoxShift = {
|
||||
dx: -e,
|
||||
dy: -t,
|
||||
scale: size
|
||||
scale: l
|
||||
}, this.forEach(function(e) {
|
||||
e.transform("...");
|
||||
}), this;
|
||||
@ -21037,14 +21031,14 @@ function() {
|
||||
removeItem: function() {}
|
||||
},
|
||||
onEnd: function() {
|
||||
n.welcomeTour = "done", i(".drag-me", "Drag me!", "left"), i(".layout-toggler-preview", "Toggle preview", "right");
|
||||
n.welcomeTour_1 = "done", i(".drag-me", "Drag me!", "left"), i(".layout-toggler-preview", "Toggle preview", "right");
|
||||
},
|
||||
template: [ '<div class="popover tour">', ' <div class="arrow"></div>', ' <h3 class="popover-title"></h3>', ' <div class="popover-content"></div>', ' <nav class="popover-navigation">', ' <button class="btn btn-primary" data-role="next">Next</button>', ' <button class="btn btn-default" data-role="end">Got it!</button>', " </nav>", "</div>" ].join("")
|
||||
});
|
||||
a.addSteps([ {
|
||||
element: ".navbar-inner",
|
||||
title: "StackEdit 4 is out!",
|
||||
content: [ "<p>I'm very pleased to welcome you here! StackEdit keeps getting better and I hope you appreciate it.</p>", "Please click <b>Next</b> to take a quick tour." ].join(""),
|
||||
title: "StackEdit 5 is coming...",
|
||||
content: [ '<p>A new version of StackEdit is on its way and <a href="app" target="_blank">you can try it here</a>!</p>', "<p>It's still in beta. Some of the features may not be available just yet.</p>", "You can always click <b>Next</b> to go through the StackEdit 4 tour." ].join(""),
|
||||
placement: "bottom"
|
||||
}, {
|
||||
element: ".document-panel .toggle-button",
|
||||
@ -21072,7 +21066,7 @@ function() {
|
||||
onShown: function() {
|
||||
o.onTweet();
|
||||
}
|
||||
} ]), e.has(n, "welcomeTour") || a.start(), t(".action-welcome-tour").click(function() {
|
||||
} ]), e.has(n, "welcomeTour_1") || a.start(), t(".action-welcome-tour").click(function() {
|
||||
a.restart();
|
||||
});
|
||||
}, a;
|
||||
@ -25551,7 +25545,7 @@ this.DIFF_EQUAL = DIFF_EQUAL, define("diff_match_patch_uncompressed", function(e
|
||||
}, "");
|
||||
document.getElementById("input-settings-theme").innerHTML = d;
|
||||
}
|
||||
e(".modal-header").append('<a class="dialog-header-message" href="http://classeur.io" target="_blank"><i class="icon-megaphone"></i> Try Classeur beta!</a>'),
|
||||
e(".modal-header").append('<a class="dialog-header-message" href="app" target="_blank"><i class="icon-megaphone"></i> Try StackEdit 5!</a>'),
|
||||
$();
|
||||
}), T;
|
||||
}), define("text!WELCOME.md", [], function() {
|
||||
|
@ -1,5 +1,5 @@
|
||||
/** vim: et:ts=4:sw=4:sts=4
|
||||
* @license RequireJS 2.1.15 Copyright (c) 2010-2014, The Dojo Foundation All Rights Reserved.
|
||||
* @license RequireJS 2.1.22 Copyright (c) 2010-2015, The Dojo Foundation All Rights Reserved.
|
||||
* Available via the MIT or new BSD license.
|
||||
* see: http://github.com/jrburke/requirejs for details
|
||||
*/
|
||||
@ -12,7 +12,7 @@ var requirejs, require, define;
|
||||
(function (global) {
|
||||
var req, s, head, baseElement, dataMain, src,
|
||||
interactiveScript, currentlyAddingScript, mainScript, subPath,
|
||||
version = '2.1.15',
|
||||
version = '2.1.22',
|
||||
commentRegExp = /(\/\*([\s\S]*?)\*\/|([^:]|^)\/\/(.*)$)/mg,
|
||||
cjsRequireRegExp = /[^.]\s*require\s*\(\s*["']([^'"\s]+)["']\s*\)/g,
|
||||
jsSuffixRegExp = /\.js$/,
|
||||
@ -21,7 +21,6 @@ var requirejs, require, define;
|
||||
ostring = op.toString,
|
||||
hasOwn = op.hasOwnProperty,
|
||||
ap = Array.prototype,
|
||||
apsp = ap.splice,
|
||||
isBrowser = !!(typeof window !== 'undefined' && typeof navigator !== 'undefined' && window.document),
|
||||
isWebWorker = !isBrowser && typeof importScripts !== 'undefined',
|
||||
//PS3 indicates loaded and complete, but need to wait for complete
|
||||
@ -244,7 +243,7 @@ var requirejs, require, define;
|
||||
// still work when converted to a path, even though
|
||||
// as an ID it is less than ideal. In larger point
|
||||
// releases, may be better to just kick out an error.
|
||||
if (i === 0 || (i == 1 && ary[2] === '..') || ary[i - 1] === '..') {
|
||||
if (i === 0 || (i === 1 && ary[2] === '..') || ary[i - 1] === '..') {
|
||||
continue;
|
||||
} else if (i > 0) {
|
||||
ary.splice(i - 1, 2);
|
||||
@ -554,11 +553,13 @@ var requirejs, require, define;
|
||||
function takeGlobalQueue() {
|
||||
//Push all the globalDefQueue items into the context's defQueue
|
||||
if (globalDefQueue.length) {
|
||||
//Array splice in the values since the context code has a
|
||||
//local var ref to defQueue, so cannot just reassign the one
|
||||
//on context.
|
||||
apsp.apply(defQueue,
|
||||
[defQueue.length, 0].concat(globalDefQueue));
|
||||
each(globalDefQueue, function(queueItem) {
|
||||
var id = queueItem[0];
|
||||
if (typeof id === 'string') {
|
||||
context.defQueueMap[id] = true;
|
||||
}
|
||||
defQueue.push(queueItem);
|
||||
});
|
||||
globalDefQueue = [];
|
||||
}
|
||||
}
|
||||
@ -589,7 +590,7 @@ var requirejs, require, define;
|
||||
id: mod.map.id,
|
||||
uri: mod.map.url,
|
||||
config: function () {
|
||||
return getOwn(config.config, mod.map.id) || {};
|
||||
return getOwn(config.config, mod.map.id) || {};
|
||||
},
|
||||
exports: mod.exports || (mod.exports = {})
|
||||
});
|
||||
@ -845,7 +846,10 @@ var requirejs, require, define;
|
||||
factory = this.factory;
|
||||
|
||||
if (!this.inited) {
|
||||
this.fetch();
|
||||
// Only fetch if not already in the defQueue.
|
||||
if (!hasProp(context.defQueueMap, id)) {
|
||||
this.fetch();
|
||||
}
|
||||
} else if (this.error) {
|
||||
this.emit('error', this.error);
|
||||
} else if (!this.defining) {
|
||||
@ -857,21 +861,10 @@ var requirejs, require, define;
|
||||
|
||||
if (this.depCount < 1 && !this.defined) {
|
||||
if (isFunction(factory)) {
|
||||
//If there is an error listener, favor passing
|
||||
//to that instead of throwing an error. However,
|
||||
//only do it for define()'d modules. require
|
||||
//errbacks should not be called for failures in
|
||||
//their callbacks (#699). However if a global
|
||||
//onError is set, use that.
|
||||
if ((this.events.error && this.map.isDefine) ||
|
||||
req.onError !== defaultOnError) {
|
||||
try {
|
||||
exports = context.execCb(id, factory, depExports, exports);
|
||||
} catch (e) {
|
||||
err = e;
|
||||
}
|
||||
} else {
|
||||
try {
|
||||
exports = context.execCb(id, factory, depExports, exports);
|
||||
} catch (e) {
|
||||
err = e;
|
||||
}
|
||||
|
||||
// Favor return value over exports. If node/cjs in play,
|
||||
@ -888,12 +881,30 @@ var requirejs, require, define;
|
||||
}
|
||||
|
||||
if (err) {
|
||||
err.requireMap = this.map;
|
||||
err.requireModules = this.map.isDefine ? [this.map.id] : null;
|
||||
err.requireType = this.map.isDefine ? 'define' : 'require';
|
||||
return onError((this.error = err));
|
||||
// If there is an error listener, favor passing
|
||||
// to that instead of throwing an error. However,
|
||||
// only do it for define()'d modules. require
|
||||
// errbacks should not be called for failures in
|
||||
// their callbacks (#699). However if a global
|
||||
// onError is set, use that.
|
||||
if ((this.events.error && this.map.isDefine) ||
|
||||
req.onError !== defaultOnError) {
|
||||
err.requireMap = this.map;
|
||||
err.requireModules = this.map.isDefine ? [this.map.id] : null;
|
||||
err.requireType = this.map.isDefine ? 'define' : 'require';
|
||||
return onError((this.error = err));
|
||||
} else if (typeof console !== 'undefined' &&
|
||||
console.error) {
|
||||
// Log the error for debugging. If promises could be
|
||||
// used, this would be different, but making do.
|
||||
console.error(err);
|
||||
} else {
|
||||
// Do not want to completely lose the error. While this
|
||||
// will mess up processing and lead to similar results
|
||||
// as bug 1440, it at least surfaces the error.
|
||||
req.onError(err);
|
||||
}
|
||||
}
|
||||
|
||||
} else {
|
||||
//Just a literal value
|
||||
exports = factory;
|
||||
@ -905,7 +916,11 @@ var requirejs, require, define;
|
||||
defined[id] = exports;
|
||||
|
||||
if (req.onResourceLoad) {
|
||||
req.onResourceLoad(context, this.map, this.depMaps);
|
||||
var resLoadMaps = [];
|
||||
each(this.depMaps, function (depMap) {
|
||||
resLoadMaps.push(depMap.normalizedMap || depMap);
|
||||
});
|
||||
req.onResourceLoad(context, this.map, resLoadMaps);
|
||||
}
|
||||
}
|
||||
|
||||
@ -964,6 +979,7 @@ var requirejs, require, define;
|
||||
this.map.parentMap);
|
||||
on(normalizedMap,
|
||||
'defined', bind(this, function (value) {
|
||||
this.map.normalizedMap = normalizedMap;
|
||||
this.init([], function () { return value; }, null, {
|
||||
enabled: true,
|
||||
ignore: true
|
||||
@ -1117,12 +1133,22 @@ var requirejs, require, define;
|
||||
this.depCount += 1;
|
||||
|
||||
on(depMap, 'defined', bind(this, function (depExports) {
|
||||
if (this.undefed) {
|
||||
return;
|
||||
}
|
||||
this.defineDep(i, depExports);
|
||||
this.check();
|
||||
}));
|
||||
|
||||
if (this.errback) {
|
||||
on(depMap, 'error', bind(this, this.errback));
|
||||
} else if (this.events.error) {
|
||||
// No direct errback on this module, but something
|
||||
// else is listening for errors, so be sure to
|
||||
// propagate the error correctly.
|
||||
on(depMap, 'error', bind(this, function(err) {
|
||||
this.emit('error', err);
|
||||
}));
|
||||
}
|
||||
}
|
||||
|
||||
@ -1226,13 +1252,15 @@ var requirejs, require, define;
|
||||
while (defQueue.length) {
|
||||
args = defQueue.shift();
|
||||
if (args[0] === null) {
|
||||
return onError(makeError('mismatch', 'Mismatched anonymous define() module: ' + args[args.length - 1]));
|
||||
return onError(makeError('mismatch', 'Mismatched anonymous define() module: ' +
|
||||
args[args.length - 1]));
|
||||
} else {
|
||||
//args are id, deps, factory. Should be normalized by the
|
||||
//define() function.
|
||||
callGetModule(args);
|
||||
}
|
||||
}
|
||||
context.defQueueMap = {};
|
||||
}
|
||||
|
||||
context = {
|
||||
@ -1242,6 +1270,7 @@ var requirejs, require, define;
|
||||
defined: defined,
|
||||
urlFetched: urlFetched,
|
||||
defQueue: defQueue,
|
||||
defQueueMap: {},
|
||||
Module: Module,
|
||||
makeModuleMap: makeModuleMap,
|
||||
nextTick: req.nextTick,
|
||||
@ -1313,7 +1342,7 @@ var requirejs, require, define;
|
||||
each(cfg.packages, function (pkgObj) {
|
||||
var location, name;
|
||||
|
||||
pkgObj = typeof pkgObj === 'string' ? { name: pkgObj } : pkgObj;
|
||||
pkgObj = typeof pkgObj === 'string' ? {name: pkgObj} : pkgObj;
|
||||
|
||||
name = pkgObj.name;
|
||||
location = pkgObj.location;
|
||||
@ -1340,7 +1369,7 @@ var requirejs, require, define;
|
||||
//late to modify them, and ignore unnormalized ones
|
||||
//since they are transient.
|
||||
if (!mod.inited && !mod.map.unnormalized) {
|
||||
mod.map = makeModuleMap(id);
|
||||
mod.map = makeModuleMap(id, null, true);
|
||||
}
|
||||
});
|
||||
|
||||
@ -1476,6 +1505,7 @@ var requirejs, require, define;
|
||||
var map = makeModuleMap(id, relMap, true),
|
||||
mod = getOwn(registry, id);
|
||||
|
||||
mod.undefed = true;
|
||||
removeScript(id);
|
||||
|
||||
delete defined[id];
|
||||
@ -1486,10 +1516,11 @@ var requirejs, require, define;
|
||||
//in array so that the splices do not
|
||||
//mess up the iteration.
|
||||
eachReverse(defQueue, function(args, i) {
|
||||
if(args[0] === id) {
|
||||
if (args[0] === id) {
|
||||
defQueue.splice(i, 1);
|
||||
}
|
||||
});
|
||||
delete context.defQueueMap[id];
|
||||
|
||||
if (mod) {
|
||||
//Hold on to listeners in case the
|
||||
@ -1551,6 +1582,7 @@ var requirejs, require, define;
|
||||
|
||||
callGetModule(args);
|
||||
}
|
||||
context.defQueueMap = {};
|
||||
|
||||
//Do this after the cycle of callGetModule in case the result
|
||||
//of those calls/init calls changes the registry.
|
||||
@ -1686,7 +1718,21 @@ var requirejs, require, define;
|
||||
onScriptError: function (evt) {
|
||||
var data = getScriptData(evt);
|
||||
if (!hasPathFallback(data.id)) {
|
||||
return onError(makeError('scripterror', 'Script error for: ' + data.id, evt, [data.id]));
|
||||
var parents = [];
|
||||
eachProp(registry, function(value, key) {
|
||||
if (key.indexOf('_@r') !== 0) {
|
||||
each(value.depMaps, function(depMap) {
|
||||
if (depMap.id === data.id) {
|
||||
parents.push(key);
|
||||
}
|
||||
return true;
|
||||
});
|
||||
}
|
||||
});
|
||||
return onError(makeError('scripterror', 'Script error for "' + data.id +
|
||||
(parents.length ?
|
||||
'", needed by: ' + parents.join(', ') :
|
||||
'"'), evt, [data.id]));
|
||||
}
|
||||
}
|
||||
};
|
||||
@ -1845,6 +1891,9 @@ var requirejs, require, define;
|
||||
if (isBrowser) {
|
||||
//In the browser so use a script tag
|
||||
node = req.createNode(config, moduleName, url);
|
||||
if (config.onNodeCreated) {
|
||||
config.onNodeCreated(node, config, moduleName, url);
|
||||
}
|
||||
|
||||
node.setAttribute('data-requirecontext', context.contextName);
|
||||
node.setAttribute('data-requiremodule', moduleName);
|
||||
@ -1910,9 +1959,9 @@ var requirejs, require, define;
|
||||
//In a web worker, use importScripts. This is not a very
|
||||
//efficient use of importScripts, importScripts will block until
|
||||
//its script is downloaded and evaluated. However, if web workers
|
||||
//are in play, the expectation that a build has been done so that
|
||||
//only one script needs to be loaded anyway. This may need to be
|
||||
//reevaluated if other use cases become common.
|
||||
//are in play, the expectation is that a build has been done so
|
||||
//that only one script needs to be loaded anyway. This may need
|
||||
//to be reevaluated if other use cases become common.
|
||||
importScripts(url);
|
||||
|
||||
//Account for anonymous modules
|
||||
@ -1973,7 +2022,7 @@ var requirejs, require, define;
|
||||
//like a module name.
|
||||
mainScript = mainScript.replace(jsSuffixRegExp, '');
|
||||
|
||||
//If mainScript is still a path, fall back to dataMain
|
||||
//If mainScript is still a path, fall back to dataMain
|
||||
if (req.jsExtRegExp.test(mainScript)) {
|
||||
mainScript = dataMain;
|
||||
}
|
||||
@ -2052,14 +2101,18 @@ var requirejs, require, define;
|
||||
//where the module name is not known until the script onload event
|
||||
//occurs. If no context, use the global queue, and get it processed
|
||||
//in the onscript load callback.
|
||||
(context ? context.defQueue : globalDefQueue).push([name, deps, callback]);
|
||||
if (context) {
|
||||
context.defQueue.push([name, deps, callback]);
|
||||
context.defQueueMap[name] = true;
|
||||
} else {
|
||||
globalDefQueue.push([name, deps, callback]);
|
||||
}
|
||||
};
|
||||
|
||||
define.amd = {
|
||||
jQuery: true
|
||||
};
|
||||
|
||||
|
||||
/**
|
||||
* Executes the text. Normally just uses eval, but can be modified
|
||||
* to use a better, environment-specific call. Only used for transpiling
|
||||
|
@ -1,6 +1,6 @@
|
||||
define([], function() {
|
||||
var constants = {};
|
||||
constants.VERSION = "4.3.14";
|
||||
constants.VERSION = "4.3.16";
|
||||
constants.MAIN_URL = "https://stackedit.io/";
|
||||
constants.GOOGLE_ANALYTICS_ACCOUNT_ID = "UA-39556145-1";
|
||||
constants.GOOGLE_API_KEY = "AIzaSyAeCU8CGcSkn0z9js6iocHuPBX4f_mMWkw";
|
||||
|
@ -576,7 +576,7 @@ define([
|
||||
document.getElementById('input-settings-theme').innerHTML = themeOptions;
|
||||
}
|
||||
|
||||
$('.modal-header').append('<a class="dialog-header-message" href="http://classeur.io" target="_blank"><i class="icon-megaphone"></i> Try Classeur beta!</a>');
|
||||
$('.modal-header').append('<a class="dialog-header-message" href="app" target="_blank"><i class="icon-megaphone"></i> Try StackEdit 5!</a>');
|
||||
checkPayment();
|
||||
});
|
||||
|
||||
|
@ -42,7 +42,7 @@ define([
|
||||
}
|
||||
},
|
||||
onEnd: function() {
|
||||
storage.welcomeTour = 'done';
|
||||
storage.welcomeTour_1 = 'done';
|
||||
infoTooltip('.drag-me', 'Drag me!', 'left');
|
||||
infoTooltip('.layout-toggler-preview', 'Toggle preview', 'right');
|
||||
},
|
||||
@ -61,10 +61,11 @@ define([
|
||||
tour.addSteps([
|
||||
{
|
||||
element: '.navbar-inner',
|
||||
title: 'StackEdit 4 is out!',
|
||||
title: 'StackEdit 5 is coming...',
|
||||
content: [
|
||||
'<p>I\'m very pleased to welcome you here! StackEdit keeps getting better and I hope you appreciate it.</p>',
|
||||
'Please click <b>Next</b> to take a quick tour.'
|
||||
'<p>A new version of StackEdit is on its way and <a href="app" target="_blank">you can try it here</a>!</p>',
|
||||
'<p>It\'s still in beta. Some of the features may not be available just yet.</p>',
|
||||
'You can always click <b>Next</b> to go through the StackEdit 4 tour.'
|
||||
].join(""),
|
||||
placement: 'bottom'
|
||||
},
|
||||
@ -111,7 +112,7 @@ define([
|
||||
}
|
||||
}
|
||||
]);
|
||||
if(!_.has(storage, 'welcomeTour')) {
|
||||
if(!_.has(storage, 'welcomeTour_1')) {
|
||||
tour.start();
|
||||
}
|
||||
$('.action-welcome-tour').click(function() {
|
||||
|
Loading…
Reference in New Issue
Block a user