From ca34415d2227c1b35ad8eb404b0f175c4a06df6c Mon Sep 17 00:00:00 2001 From: benweet Date: Sat, 14 Sep 2013 17:59:40 +0100 Subject: [PATCH] Switch to ACE editor --- Gruntfile.js | 1 + bower.json | 2 +- cache.manifest | 2 +- package.json | 2 +- res-min/font/fontello.eot | Bin 96572 -> 96472 bytes res-min/font/fontello.svg | 4 +- res-min/font/fontello.ttf | Bin 96404 -> 96304 bytes res-min/font/fontello.woff | Bin 52160 -> 52216 bytes res-min/main.js | 14706 ++++++++++++---- res-min/themes/blue-gray.css | 277 +- res-min/themes/default.css | 161 +- res-min/themes/night.css | 163 +- res/config.js | 2 +- res/core.js | 79 +- res/extensions/documentSelector.js | 3 + res/fileMgr.js | 8 +- res/libs/Markdown.Editor.js | 10 +- res/libs/ace_commands.js | 410 + res/libs/{acemode.js => ace_mode.js} | 2 +- ...t_rules.js => ace_mode_highlight_rules.js} | 0 res/libs/ace_text.js | 11 + res/main.js | 8 +- res/providers/gdriveProvider.js | 111 +- res/styles/main.less | 8 + 24 files changed, 12111 insertions(+), 3859 deletions(-) create mode 100644 res/libs/ace_commands.js rename res/libs/{acemode.js => ace_mode.js} (96%) rename res/libs/{acemode_highlight_rules.js => ace_mode_highlight_rules.js} (100%) create mode 100644 res/libs/ace_text.js diff --git a/Gruntfile.js b/Gruntfile.js index ab1c4f2c..dc194a6a 100644 --- a/Gruntfile.js +++ b/Gruntfile.js @@ -21,6 +21,7 @@ module.exports = function(grunt) { out: "res-min/main.js", mainConfigFile: 'res/main.js', optimize: "uglify2", + inlineText: true, uglify2: { output: { beautify: true, diff --git a/bower.json b/bower.json index a390fe4c..a62b8539 100644 --- a/bower.json +++ b/bower.json @@ -1,6 +1,6 @@ { "name": "stackedit", - "version": "2.0.3", + "version": "2.1.0", "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": "3.0.0", diff --git a/cache.manifest b/cache.manifest index 95a23d0c..f37dc56f 100644 --- a/cache.manifest +++ b/cache.manifest @@ -1,5 +1,5 @@ CACHE MANIFEST -#Date Sat Sep 07 2013 23:38:12 +#Date Sat Sep 14 2013 17:58:48 CACHE: index.html diff --git a/package.json b/package.json index 990f0559..ccae1c78 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "stackedit", - "version": "2.0.3", + "version": "2.1.0", "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", "directories": { diff --git a/res-min/font/fontello.eot b/res-min/font/fontello.eot index 8e34d4840368227d5a37267cab8580ebd050419f..833234c0361816bcde6d0fd7d6c5ca824820d125 100644 GIT binary patch delta 935 zcmXAlT}+c_6oB9J^@mcJEzrNPrfG@^s8K71N=xGy*^g|v3ze=G1ZwRM{ry@xsMW0< zDDwxfElfT>p{*6r-57#|GQx#fh}p#?%d%|PvBh|?(1mo4YzbKm-CK9@o^zh(ocCOu zm2KAgUo6&o0FW}uI>uBl)htFEuZ3pc&GjJ!@8D-Q_4?)PU-AS3cMU>FY9Xzz8{9wx zX5251T8%v<_I%88oHUdYL2DTIRW>Y&Z?e6ZmoV?O zx%`3JN?bwf213kNPLHYCC`!3W1cr6IBG7MbZ@Lk5oj~Y~pGlvYjNPU42>RAXBXGTnmo3k}pEYEy`8@uQHW6lZwmI8gU9-nIvI$ogh%&45u@rj94iwZg6g9cuPv^i;Dopd zue~e;VkpekVNDckb^KI{uhV)9p#WYgBlMQj-MbgP6&c!2mxGYbRA6I=L9Z}Fbz?K0 z;_Dm820b4HIP7i}5Uv*H9aQ=57PW!rDMw+$289g>CJGxU2R;i6JvuO1d2{^j58!3G zxf*s9>4P7FwM4pDv!w3iY5zebjLpLR)^xu*|IafA({nm_MnE!s<1ElXFb|I_+F&HT z&;|n#Qnfrjx&LJ9)E}qqr&rFDo(Zv=_{yi)H&Z_ZcmTkg5+*Z6avgnJdC-guv)?|I;HP#&}dBf;fMhD-lm{_WG%&w`<$ z@Hd|a`Z@g%2bcr>16x;;SDOYkgD=16x;{3f8Cn}YKm2?oK9akoytNf+ifl*i(bbqH z=8x@+21mEYbYrVu_THw)4U}R+GC|YF?{wVBO{ym6rc_hQ@o;=G{vyFm9NwR3NrV&g zi5E#xvg7VgsrOQg_nPi4P4AhG&4^~`S=p>__S^f)`@cWvc<}dEw)BM#*vBhkJB_5@ QL#BsaAcypV8?JHx10v2#&;S4c delta 1024 zcmccdk#)}}R#uxzMusU9StHK({U%|k@IWax4xBw_F0OYp-X^!-q%Ct2XO`RARm^Lsl2AgE0CZ;fY z@2O{C41EHWH_HGDaCWm5GBAe80Qo8zxg`~bmw_zCFb4((mOnZ9$)1U-ziK}*Fh<(| z4Qa?ttSDen;C|1*7`q3kOd&5ZH}%Y12`M1|4p9DVL4I+`jrG~742%hD7#Mi37Zjxy zOjEjn4-Bk znVA_m*jShuSQ#0j8CcobS^XJUS=oab*jd@#<6^=>e0|i^rPRgL)WsBdB(xcomDJQt zP0Y-V^%&JfMcCNEd_G2YW21U8aj<|Kqc~WB5s+`kXbu(wDu62nYJ?jCl!vPY>N7SH zW13^jFTyCsXDbwCBgW?rWZOguVG5lW;|maNih`(!Y7!0L7fAr>LKkBc$72S<*ySL5 zAf{k51ZwW)!?WeOx1UvK{G&Aep&H|d?Pt9hleuM@zRYEg=ePOFz|H&u6hY^7Bl;n< zg8z1(FvgoqjFH>bA{l2fPCpXG*t6Xynz5a+KEvmeZ;bDiV42`K!S6!sLe_-Vg+2+( z3TFxLh_H*e79|zU5d9{mD^@G^RJ>mTTf)1cR8mb+x22h+O-gUbu*!In zc_8ygRzkK(c3t+8>}NS%IgfJfa!=$jbDGI7qtZ<7orZJBH~dEFGDDGgJNriD!x zn|^P`m6>5Pf6bPfy=wNSIXQDa%`KZ}Gp}ggym`mwJ)5u3G2do>-u!v&nydAwq)6_ - + @@ -286,7 +286,7 @@ - + diff --git a/res-min/font/fontello.ttf b/res-min/font/fontello.ttf index 5a8e1716cfe7d39551665895b700527896546d7b..285230a7d74e686f93a2549b6604393f1bd31fbe 100644 GIT binary patch delta 919 zcmXAlYfO`86oB9J^+G9~Eznz7(==d)x=ay6M+>>;9hf1xLTkU$G*RQ23wYs&V z!sY}lwUdtzX-frke+26`p&m(2o$jiJ#pR@T<5#7YPLJ0|+67g|xap;|H5C<9_Lw)!0X3FT$+C znP+ugvLqgdze0$ZM{xQ(o7wn2Bp+!Jv`27XZNsAUI@gPN3G;rN%O9+-!WFcyBgB60 z^q5+W(u|u#V0eO;L|n!o$ySy9iJ()D$5d{k%lz$>yb5y=_aBpuIkpcWE!s6AHs!r}@TC&5j4;gw;K0W;fxHBs8E z6J;_YU9*=740x%W#9Kl4?p^X$=4d-z0TMb_iH#kGypkN%i_LgOq;Ddd^db=Bu(!n^ z3^MZ$s$y@8TF3L0gW0f7VFTg`W&`EGXW^g+(aEao;}fm0ot=IKcB`|4?}D{Vv3Ouf z(=BZN2bHllnftBjesTVvXJ5htX){{(0A;1Qr(K~A9_}dk&DfyM$>?4$4r>7 zS_n&z^*tNUw$MA;`^bLSK{(nRKF60%xpUqnaNTmPxlg)to`B~$nei&T_q_#Qqi?zI zieKw5d=Lp#hXcv}>i%cJhapwS5{iYEFB>lZd*#;;S3e4cha+Eq930>c+>f%O1JSLk z>A{vE?a=loJ=YS$+Tpd4izClQlcR+jbvL$REwP<3``Bt+8~4X|Z-#E}By@?@&jYvU zaRXI7A)lb>R{G=DxXGclY;uUHAU}!j@g>goDBouG2{RJ!JMbC#WDRaKoqk{{UFX BNE-kE delta 1009 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 AlmGw# delta 29042 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 diff --git a/res-min/main.js b/res-min/main.js index cb566e3b..73a0c035 100644 --- a/res-min/main.js +++ b/res-min/main.js @@ -34,6 +34,184 @@ //The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. +/* + * Based on code from: + * + * XRegExp 1.5.0 + * (c) 2007-2010 Steven Levithan + * MIT License + * + * Provides an augmented, extensible, cross-browser implementation of regular expressions, + * including support for additional syntax, flags, and methods + */ + +// https://github.com/kriskowal/es5-shim +// Copyright 2009-2012 by contributors, MIT License + +// vim:set ts=4 sts=4 sw=4 st: +// -- kriskowal Kris Kowal Copyright (C) 2009-2010 MIT License +// -- tlrobinson Tom Robinson Copyright (C) 2009-2010 MIT License (Narwhal Project) +// -- dantman Daniel Friesen Copyright(C) 2010 XXX No License Specified +// -- fschaefer Florian Schäfer Copyright (C) 2010 MIT License +// -- Irakli Gozalishvili Copyright (C) 2010 MIT License + +/*! + Copyright (c) 2009, 280 North Inc. http://280north.com/ + MIT License. http://github.com/280north/narwhal/blob/master/README.md +*/ + +/* ***** BEGIN LICENSE BLOCK ***** + * Distributed under the BSD license: + * + * Copyright (c) 2010, Ajax.org B.V. + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are met: + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * * Neither the name of Ajax.org B.V. nor the + * names of its contributors may be used to endorse or promote products + * derived from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND + * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED + * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + * DISCLAIMED. IN NO EVENT SHALL AJAX.ORG B.V. BE LIABLE FOR ANY + * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES + * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND + * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + * + * ***** END LICENSE BLOCK ***** */ + +/*! @license +========================================================================== +SproutCore -- JavaScript Application Framework +copyright 2006-2009, Sprout Systems Inc., Apple Inc. and contributors. + +Permission is hereby granted, free of charge, to any person obtaining a +copy of this software and associated documentation files (the "Software"), +to deal in the Software without restriction, including without limitation +the rights to use, copy, modify, merge, publish, distribute, sublicense, +and/or sell copies of the Software, and to permit persons to whom the +Software is furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in +all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING +FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER +DEALINGS IN THE SOFTWARE. + +SproutCore and the SproutCore logo are trademarks of Sprout Systems, Inc. + +For more information about SproutCore, visit http://www.sproutcore.com + + +========================================================================== +@license */ + +/* ***** BEGIN LICENSE BLOCK ***** + * Distributed under the BSD license: + * + * Copyright (c) 2010, Ajax.org B.V. + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are met: + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * * Neither the name of Ajax.org B.V. nor the + * names of its contributors may be used to endorse or promote products + * derived from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND + * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED + * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + * DISCLAIMED. IN NO EVENT SHALL AJAX.ORG B.V. BE LIABLE FOR ANY + * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES + * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND + * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + * + * ***** END LICENSE BLOCK ***** */ + +/* + * based on code from: + * + * @license RequireJS text 0.25.0 Copyright (c) 2010-2011, The Dojo Foundation All Rights Reserved. + * Available via the MIT or new BSD license. + * see: http://github.com/jrburke/requirejs for details + */ + +/* +XRegExp Unicode plugin pack: Categories 1.0 +(c) 2010 Steven Levithan +MIT License + +Uses the Unicode 5.2 character database + +This package for the XRegExp Unicode plugin enables the following Unicode categories (aka properties): + +L - Letter (the top-level Letter category is included in the Unicode plugin base script) + Ll - Lowercase letter + Lu - Uppercase letter + Lt - Titlecase letter + Lm - Modifier letter + Lo - Letter without case +M - Mark + Mn - Non-spacing mark + Mc - Spacing combining mark + Me - Enclosing mark +N - Number + Nd - Decimal digit + Nl - Letter number + No - Other number +P - Punctuation + Pd - Dash punctuation + Ps - Open punctuation + Pe - Close punctuation + Pi - Initial punctuation + Pf - Final punctuation + Pc - Connector punctuation + Po - Other punctuation +S - Symbol + Sm - Math symbol + Sc - Currency symbol + Sk - Modifier symbol + So - Other symbol +Z - Separator + Zs - Space separator + Zl - Line separator + Zp - Paragraph separator +C - Other + Cc - Control + Cf - Format + Co - Private use + Cs - Surrogate + Cn - Unassigned + +Example usage: + + \p{N} + \p{Cn} +*/ + /*! @source http://purl.eligrey.com/github/FileSaver.js/blob/master/FileSaver.js */ /** @@ -204,45 +382,6 @@ // See the License for the specific language governing permissions and // limitations under the License. -/* -CSS Browser Selector v0.4.0 (Nov 02, 2010) -Rafael Lima (http://rafael.adm.br) -http://rafael.adm.br/css_browser_selector -License: http://creativecommons.org/licenses/by/2.5/ -Contributors: http://rafael.adm.br/css_browser_selector#contributors - -v0.5.0 2011-08-24 -andrew relkin - -modified, now detects: -any version of Firefox -more versions of Windows (Win8, Win7, Vista, XP, Win2k) -more versions of IE under unique conditions -more detailed support for Opera -if "no-js" in HTML class: removes and replaces with "js" () - -identifies - browsers: Firefox; IE; Opera; Safari; Chrome, Konqueror, Iron - browser versions: (most importantly: ie6, ie7, ie8, ie9) - rendering engines: Webkit; Mozilla; Gecko - platforms/OSes: Mac; Win: Win7, Vista, XP, Win2k; FreeBSD; Linux/x11 - devices: Ipod; Ipad; Iphone; WebTV; Blackberry; Android; J2me; mobile(generic) - enabled technology: JS - -*/ - -/*! Copyright (c) 2013 Brandon Aaron (http://brandonaaron.net) - * Licensed under the MIT License (LICENSE.txt). - * - * Thanks to: http://adomas.org/javascript-mouse-wheel/ for some pointers. - * Thanks to: Mathias Bank(http://www.mathias-bank.de) for a scope bug fix. - * Thanks to: Seamus Leahy for adding deltaX and deltaY - * - * Version: 3.1.3 - * - * Requires: 1.2.2+ - */ - /** * bootstrap.js v3.0.0 by @fat and @mdo * Copyright 2013 Twitter Inc. @@ -680,22 +819,14 @@ function runDelayedFunction() { void 0 !== delayedFunction && delayedFunction(); } -function css_browser_selector(e) { - var t = e.toLowerCase(), n = function(e) { - return t.indexOf(e) > -1; - }, i = "gecko", o = "webkit", r = "safari", a = "opera", s = "mobile", l = "firefox", c = document.documentElement, u = [ !/opera|webtv/i.test(t) && /msie\s(\d)/.test(t) ? "ie ie" + (/trident\/4\.0/.test(t) ? "8" : RegExp.$1) : n("firefox/") ? i + " " + l + (/firefox\/(\d+(\.?\d+)*)/.test(t) ? " " + l + RegExp.$1.replace(/\./g, "").substr(0, 2) : "") : n("gecko/") ? i : n("opera") ? a + (/version\/((\d+)(\.\d+)*)/.test(t) ? " " + a + RegExp.$2 + " " + a + RegExp.$2 + RegExp.$3.replace(".", "_").substr(0, 2) : /opera(\s|\/)(\d+)/.test(t) ? " " + a + RegExp.$2 : "") : n("konqueror") ? "konqueror" : n("blackberry") ? s + " blackberry" : n("android") ? s + " android" : n("chrome") ? o + " chrome" : n("iron") ? o + " iron" : n("applewebkit/") ? o + " " + r + (/version\/(\d+)/.test(t) ? " " + r + RegExp.$1 : "") : n("mozilla/") ? i : "", n("j2me") ? s + " j2me" : n("iphone") ? s + " iphone" : n("ipod") ? s + " ipod" : n("ipad") ? s + " ipad" : n("mac") ? "mac" : n("darwin") ? "mac" : n("webtv") ? "webtv" : n("win") ? "win" + (n("windows nt 6.2") ? " win8" : n("windows nt 6.1") ? " win7" : n("windows nt 6.0") ? " vista" : n("windows nt 5.2") || n("windows nt 5.1") ? " xp" : n("windows nt 5.0") ? " win2k" : "") : n("freebsd") ? "freebsd" : n("x11") || n("linux") ? "linux" : "", "js" ], d = u.join(" "); - return c.className = (c.className.replace(/no-?js/g, "") + " " + d).replace(/^ /, ""), - d; -} - (function(e, t) { function n(e) { var t = e.length, n = rt.type(e); return rt.isWindow(e) ? !1 : 1 === e.nodeType && t ? !0 : "array" === n || "function" !== n && (0 === t || "number" == typeof t && t > 0 && t - 1 in e); } function i(e) { - var t = ht[e] = {}; - return rt.each(e.match(st) || [], function(e, n) { + var t = ft[e] = {}; + return rt.each(e.match(at) || [], function(e, n) { t[n] = !0; }), t; } @@ -713,19 +844,19 @@ function css_browser_selector(e) { try { i = "true" === i ? !0 : "false" === i ? !1 : "null" === i ? null : +i + "" === i ? +i : vt.test(i) ? JSON.parse(i) : i; } catch (r) {} - mt.set(e, n, i); + gt.set(e, n, i); } else i = t; return i; } - function a() { + function s() { return !0; } - function s() { + function a() { return !1; } function l() { try { - return G.activeElement; + return U.activeElement; } catch (e) {} } function c(e, t) { @@ -740,7 +871,7 @@ function css_browser_selector(e) { return e === t !== n; }); if ("string" == typeof t) { - if (Nt.test(t)) return rt.filter(t, e, n); + if (_t.test(t)) return rt.filter(t, e, n); t = rt.filter(t, e); } return rt.grep(e, function(e) { @@ -750,33 +881,33 @@ function css_browser_selector(e) { function d(e, t) { return rt.nodeName(e, "table") && rt.nodeName(1 === t.nodeType ? t : t.firstChild, "tr") ? e.getElementsByTagName("tbody")[0] || e.appendChild(e.ownerDocument.createElement("tbody")) : e; } - function p(e) { + function h(e) { return e.type = (null !== e.getAttribute("type")) + "/" + e.type, e; } - function f(e) { - var t = Ot.exec(e.type); + function p(e) { + var t = zt.exec(e.type); return t ? e.type = t[1] : e.removeAttribute("type"), e; } - function h(e, t) { - for (var n = e.length, i = 0; n > i; i++) gt.set(e[i], "globalEval", !t || gt.get(t[i], "globalEval")); + function f(e, t) { + for (var n = e.length, i = 0; n > i; i++) mt.set(e[i], "globalEval", !t || mt.get(t[i], "globalEval")); } - function m(e, t) { - var n, i, o, r, a, s, l, c; + function g(e, t) { + var n, i, o, r, s, a, l, c; if (1 === t.nodeType) { - if (gt.hasData(e) && (r = gt.access(e), a = gt.set(t, r), c = r.events)) { - delete a.handle, a.events = {}; + if (mt.hasData(e) && (r = mt.access(e), s = mt.set(t, r), c = r.events)) { + delete s.handle, s.events = {}; for (o in c) for (n = 0, i = c[o].length; i > n; n++) rt.event.add(t, o, c[o][n]); } - mt.hasData(e) && (s = mt.access(e), l = rt.extend({}, s), mt.set(t, l)); + gt.hasData(e) && (a = gt.access(e), l = rt.extend({}, a), gt.set(t, l)); } } - function g(e, n) { + function m(e, n) { var i = e.getElementsByTagName ? e.getElementsByTagName(n || "*") : e.querySelectorAll ? e.querySelectorAll(n || "*") : []; return n === t || n && rt.nodeName(e, n) ? rt.merge([ e ], i) : i; } function v(e, t) { var n = t.nodeName.toLowerCase(); - "input" === n && Rt.test(e.type) ? t.checked = e.checked : ("input" === n || "textarea" === n) && (t.defaultValue = e.defaultValue); + "input" === n && It.test(e.type) ? t.checked = e.checked : ("input" === n || "textarea" === n) && (t.defaultValue = e.defaultValue); } function b(e, t) { if (t in e) return t; @@ -787,109 +918,109 @@ function css_browser_selector(e) { function y(e, t) { return e = t || e, "none" === rt.css(e, "display") || !rt.contains(e.ownerDocument, e); } - function x(t) { + function w(t) { return e.getComputedStyle(t, null); } - function w(e, t) { - for (var n, i, o, r = [], a = 0, s = e.length; s > a; a++) i = e[a], i.style && (r[a] = gt.get(i, "olddisplay"), - n = i.style.display, t ? (r[a] || "none" !== n || (i.style.display = ""), "" === i.style.display && y(i) && (r[a] = gt.access(i, "olddisplay", _(i.nodeName)))) : r[a] || (o = y(i), - (n && "none" !== n || !o) && gt.set(i, "olddisplay", o ? n : rt.css(i, "display")))); - for (a = 0; s > a; a++) i = e[a], i.style && (t && "none" !== i.style.display && "" !== i.style.display || (i.style.display = t ? r[a] || "" : "none")); + function C(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", 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; } - function C(e, t, n) { - var i = Wt.exec(t); + function x(e, t, n) { + var i = Gt.exec(t); return i ? Math.max(0, i[1] - (n || 0)) + (i[2] || "px") : t; } - function k(e, t, n, i, o) { - for (var r = n === (i ? "border" : "content") ? 4 : "width" === t ? 1 : 0, a = 0; 4 > r; r += 2) "margin" === n && (a += rt.css(e, n + Jt[r], !0, o)), - i ? ("content" === n && (a -= rt.css(e, "padding" + Jt[r], !0, o)), "margin" !== n && (a -= rt.css(e, "border" + Jt[r] + "Width", !0, o))) : (a += rt.css(e, "padding" + Jt[r], !0, o), - "padding" !== n && (a += rt.css(e, "border" + Jt[r] + "Width", !0, o))); - return a; + function E(e, t, n, i, o) { + for (var r = n === (i ? "border" : "content") ? 4 : "width" === t ? 1 : 0, s = 0; 4 > r; r += 2) "margin" === n && (s += rt.css(e, n + Jt[r], !0, o)), + i ? ("content" === n && (s -= rt.css(e, "padding" + Jt[r], !0, o)), "margin" !== n && (s -= rt.css(e, "border" + Jt[r] + "Width", !0, o))) : (s += rt.css(e, "padding" + Jt[r], !0, o), + "padding" !== n && (s += rt.css(e, "border" + Jt[r] + "Width", !0, o))); + return s; } - function S(e, t, n) { - var i = !0, o = "width" === t ? e.offsetWidth : e.offsetHeight, r = x(e), a = rt.support.boxSizing && "border-box" === rt.css(e, "boxSizing", !1, r); + function A(e, t, n) { + var i = !0, o = "width" === t ? e.offsetWidth : e.offsetHeight, r = w(e), s = rt.support.boxSizing && "border-box" === rt.css(e, "boxSizing", !1, r); if (0 >= o || null == o) { if (o = Ht(e, t, r), (0 > o || null == o) && (o = e.style[t]), Vt.test(o)) return o; - i = a && (rt.support.boxSizingReliable || o === e.style[t]), o = parseFloat(o) || 0; + i = s && (rt.support.boxSizingReliable || o === e.style[t]), o = parseFloat(o) || 0; } - return o + k(e, t, n || (a ? "border" : "content"), i, r) + "px"; + return o + E(e, t, n || (s ? "border" : "content"), i, r) + "px"; } - function _(e) { - var t = G, n = Kt[e]; - return n || (n = T(e, t), "none" !== n && n || (Bt = (Bt || rt("