Repository navigation
Expand file tree
/
Copy pathgraphscape.min.js
More file actions
2 lines (2 loc) · 63 KB
/
Copy pathgraphscape.min.js
File metadata and controls
2 lines (2 loc) · 63 KB
1
2
!function(e,u){"object"==typeof exports&&"undefined"!=typeof module?module.exports=u(require("d3"),require("vega"),require("vega-lite")):"function"==typeof define&&define.amd?define(["d3","vega","vega-lite"],u):(e="undefined"!=typeof globalThis?globalThis:e||self).graphscape=u(e.d3,e.vega,e.vl)}(this,(function(e,u,n){"use strict";function t(e){return e&&"object"==typeof e&&"default"in e?e:{default:e}}var r=t(e),a=t(u),i=t(n);function o(e,u,n){return e.fields=u||[],e.fname=n,e}function c(e){return 1===e.length?s(e[0]):l(e)}const s=e=>function(u){return u[e]},l=e=>{const u=e.length;return function(n){for(let t=0;t<u;++t)n=n[e[t]];return n}};function d(e){throw Error(e)}function E(e){return"function"==typeof e}!function(e,u,n){const t=function(e){const u=[],n=e.length;let t,r,a,i=null,o=0,c="";function s(){u.push(c+e.substring(t,r)),c="",t=r+1}for(e+="",t=r=0;r<n;++r)if(a=e[r],"\\"===a)c+=e.substring(t,r),c+=e.substring(++r,++r),t=r;else if(a===i)s(),i=null,o=-1;else{if(i)continue;t===o&&'"'===a||t===o&&"'"===a?(t=r+1,i=a):"."!==a||o?"["===a?(r>t&&s(),o=t=r+1):"]"===a&&(o||d("Access path missing open bracket: "+e),o>0&&s(),o=0,t=r+1):r>t?s():t=r+1}return o&&d("Access path missing closing bracket: "+e),i&&d("Access path missing closing quote: "+e),r>t&&(r++,s()),u}(e);e=1===t.length?t[0]:e,o((n&&n.get||c)(t),[e],u||e)}("id"),o((e=>e),[],"identity"),o((()=>0),[],"zero"),o((()=>1),[],"one"),o((()=>!0),[],"true"),o((()=>!1),[],"false");const f=Object.prototype.hasOwnProperty;function A(e,u){return f.call(e,u)}function p(e){const u={},n=e.length;for(let t=0;t<n;++t)u[e[t]]=!0;return u}const O="RawCode",C="Literal",D="Property",F="Identifier",_="ArrayExpression",h="BinaryExpression",m="CallExpression",g="ConditionalExpression",B="LogicalExpression",M="MemberExpression",T="ObjectExpression",y="UnaryExpression";function v(e){this.type=e}var R,I,N,V,L;v.prototype.visit=function(e){let u,n,t;if(e(this))return 1;for(u=function(e){switch(e.type){case _:return e.elements;case h:case B:return[e.left,e.right];case m:return[e.callee].concat(e.arguments);case g:return[e.test,e.consequent,e.alternate];case M:return[e.object,e.property];case T:return e.properties;case D:return[e.key,e.value];case y:return[e.argument];case F:case C:case O:default:return[]}}(this),n=0,t=u.length;n<t;++n)if(u[n].visit(e))return 1};(R={})[1]="Boolean",R[2]="<end>",R[3]="Identifier",R[4]="Keyword",R[5]="Null",R[6]="Numeric",R[7]="Punctuator",R[8]="String",R[9]="RegularExpression";var S="Identifier",w="Unexpected token %0",U="Invalid regular expression",x="Invalid regular expression: missing /",b="Octal literals are not allowed in strict mode.",Y="ILLEGAL",P="Disabled.",X=new RegExp("[\\xAA\\xB5\\xBA\\xC0-\\xD6\\xD8-\\xF6\\xF8-\\u02C1\\u02C6-\\u02D1\\u02E0-\\u02E4\\u02EC\\u02EE\\u0370-\\u0374\\u0376\\u0377\\u037A-\\u037D\\u037F\\u0386\\u0388-\\u038A\\u038C\\u038E-\\u03A1\\u03A3-\\u03F5\\u03F7-\\u0481\\u048A-\\u052F\\u0531-\\u0556\\u0559\\u0561-\\u0587\\u05D0-\\u05EA\\u05F0-\\u05F2\\u0620-\\u064A\\u066E\\u066F\\u0671-\\u06D3\\u06D5\\u06E5\\u06E6\\u06EE\\u06EF\\u06FA-\\u06FC\\u06FF\\u0710\\u0712-\\u072F\\u074D-\\u07A5\\u07B1\\u07CA-\\u07EA\\u07F4\\u07F5\\u07FA\\u0800-\\u0815\\u081A\\u0824\\u0828\\u0840-\\u0858\\u08A0-\\u08B2\\u0904-\\u0939\\u093D\\u0950\\u0958-\\u0961\\u0971-\\u0980\\u0985-\\u098C\\u098F\\u0990\\u0993-\\u09A8\\u09AA-\\u09B0\\u09B2\\u09B6-\\u09B9\\u09BD\\u09CE\\u09DC\\u09DD\\u09DF-\\u09E1\\u09F0\\u09F1\\u0A05-\\u0A0A\\u0A0F\\u0A10\\u0A13-\\u0A28\\u0A2A-\\u0A30\\u0A32\\u0A33\\u0A35\\u0A36\\u0A38\\u0A39\\u0A59-\\u0A5C\\u0A5E\\u0A72-\\u0A74\\u0A85-\\u0A8D\\u0A8F-\\u0A91\\u0A93-\\u0AA8\\u0AAA-\\u0AB0\\u0AB2\\u0AB3\\u0AB5-\\u0AB9\\u0ABD\\u0AD0\\u0AE0\\u0AE1\\u0B05-\\u0B0C\\u0B0F\\u0B10\\u0B13-\\u0B28\\u0B2A-\\u0B30\\u0B32\\u0B33\\u0B35-\\u0B39\\u0B3D\\u0B5C\\u0B5D\\u0B5F-\\u0B61\\u0B71\\u0B83\\u0B85-\\u0B8A\\u0B8E-\\u0B90\\u0B92-\\u0B95\\u0B99\\u0B9A\\u0B9C\\u0B9E\\u0B9F\\u0BA3\\u0BA4\\u0BA8-\\u0BAA\\u0BAE-\\u0BB9\\u0BD0\\u0C05-\\u0C0C\\u0C0E-\\u0C10\\u0C12-\\u0C28\\u0C2A-\\u0C39\\u0C3D\\u0C58\\u0C59\\u0C60\\u0C61\\u0C85-\\u0C8C\\u0C8E-\\u0C90\\u0C92-\\u0CA8\\u0CAA-\\u0CB3\\u0CB5-\\u0CB9\\u0CBD\\u0CDE\\u0CE0\\u0CE1\\u0CF1\\u0CF2\\u0D05-\\u0D0C\\u0D0E-\\u0D10\\u0D12-\\u0D3A\\u0D3D\\u0D4E\\u0D60\\u0D61\\u0D7A-\\u0D7F\\u0D85-\\u0D96\\u0D9A-\\u0DB1\\u0DB3-\\u0DBB\\u0DBD\\u0DC0-\\u0DC6\\u0E01-\\u0E30\\u0E32\\u0E33\\u0E40-\\u0E46\\u0E81\\u0E82\\u0E84\\u0E87\\u0E88\\u0E8A\\u0E8D\\u0E94-\\u0E97\\u0E99-\\u0E9F\\u0EA1-\\u0EA3\\u0EA5\\u0EA7\\u0EAA\\u0EAB\\u0EAD-\\u0EB0\\u0EB2\\u0EB3\\u0EBD\\u0EC0-\\u0EC4\\u0EC6\\u0EDC-\\u0EDF\\u0F00\\u0F40-\\u0F47\\u0F49-\\u0F6C\\u0F88-\\u0F8C\\u1000-\\u102A\\u103F\\u1050-\\u1055\\u105A-\\u105D\\u1061\\u1065\\u1066\\u106E-\\u1070\\u1075-\\u1081\\u108E\\u10A0-\\u10C5\\u10C7\\u10CD\\u10D0-\\u10FA\\u10FC-\\u1248\\u124A-\\u124D\\u1250-\\u1256\\u1258\\u125A-\\u125D\\u1260-\\u1288\\u128A-\\u128D\\u1290-\\u12B0\\u12B2-\\u12B5\\u12B8-\\u12BE\\u12C0\\u12C2-\\u12C5\\u12C8-\\u12D6\\u12D8-\\u1310\\u1312-\\u1315\\u1318-\\u135A\\u1380-\\u138F\\u13A0-\\u13F4\\u1401-\\u166C\\u166F-\\u167F\\u1681-\\u169A\\u16A0-\\u16EA\\u16EE-\\u16F8\\u1700-\\u170C\\u170E-\\u1711\\u1720-\\u1731\\u1740-\\u1751\\u1760-\\u176C\\u176E-\\u1770\\u1780-\\u17B3\\u17D7\\u17DC\\u1820-\\u1877\\u1880-\\u18A8\\u18AA\\u18B0-\\u18F5\\u1900-\\u191E\\u1950-\\u196D\\u1970-\\u1974\\u1980-\\u19AB\\u19C1-\\u19C7\\u1A00-\\u1A16\\u1A20-\\u1A54\\u1AA7\\u1B05-\\u1B33\\u1B45-\\u1B4B\\u1B83-\\u1BA0\\u1BAE\\u1BAF\\u1BBA-\\u1BE5\\u1C00-\\u1C23\\u1C4D-\\u1C4F\\u1C5A-\\u1C7D\\u1CE9-\\u1CEC\\u1CEE-\\u1CF1\\u1CF5\\u1CF6\\u1D00-\\u1DBF\\u1E00-\\u1F15\\u1F18-\\u1F1D\\u1F20-\\u1F45\\u1F48-\\u1F4D\\u1F50-\\u1F57\\u1F59\\u1F5B\\u1F5D\\u1F5F-\\u1F7D\\u1F80-\\u1FB4\\u1FB6-\\u1FBC\\u1FBE\\u1FC2-\\u1FC4\\u1FC6-\\u1FCC\\u1FD0-\\u1FD3\\u1FD6-\\u1FDB\\u1FE0-\\u1FEC\\u1FF2-\\u1FF4\\u1FF6-\\u1FFC\\u2071\\u207F\\u2090-\\u209C\\u2102\\u2107\\u210A-\\u2113\\u2115\\u2119-\\u211D\\u2124\\u2126\\u2128\\u212A-\\u212D\\u212F-\\u2139\\u213C-\\u213F\\u2145-\\u2149\\u214E\\u2160-\\u2188\\u2C00-\\u2C2E\\u2C30-\\u2C5E\\u2C60-\\u2CE4\\u2CEB-\\u2CEE\\u2CF2\\u2CF3\\u2D00-\\u2D25\\u2D27\\u2D2D\\u2D30-\\u2D67\\u2D6F\\u2D80-\\u2D96\\u2DA0-\\u2DA6\\u2DA8-\\u2DAE\\u2DB0-\\u2DB6\\u2DB8-\\u2DBE\\u2DC0-\\u2DC6\\u2DC8-\\u2DCE\\u2DD0-\\u2DD6\\u2DD8-\\u2DDE\\u2E2F\\u3005-\\u3007\\u3021-\\u3029\\u3031-\\u3035\\u3038-\\u303C\\u3041-\\u3096\\u309D-\\u309F\\u30A1-\\u30FA\\u30FC-\\u30FF\\u3105-\\u312D\\u3131-\\u318E\\u31A0-\\u31BA\\u31F0-\\u31FF\\u3400-\\u4DB5\\u4E00-\\u9FCC\\uA000-\\uA48C\\uA4D0-\\uA4FD\\uA500-\\uA60C\\uA610-\\uA61F\\uA62A\\uA62B\\uA640-\\uA66E\\uA67F-\\uA69D\\uA6A0-\\uA6EF\\uA717-\\uA71F\\uA722-\\uA788\\uA78B-\\uA78E\\uA790-\\uA7AD\\uA7B0\\uA7B1\\uA7F7-\\uA801\\uA803-\\uA805\\uA807-\\uA80A\\uA80C-\\uA822\\uA840-\\uA873\\uA882-\\uA8B3\\uA8F2-\\uA8F7\\uA8FB\\uA90A-\\uA925\\uA930-\\uA946\\uA960-\\uA97C\\uA984-\\uA9B2\\uA9CF\\uA9E0-\\uA9E4\\uA9E6-\\uA9EF\\uA9FA-\\uA9FE\\uAA00-\\uAA28\\uAA40-\\uAA42\\uAA44-\\uAA4B\\uAA60-\\uAA76\\uAA7A\\uAA7E-\\uAAAF\\uAAB1\\uAAB5\\uAAB6\\uAAB9-\\uAABD\\uAAC0\\uAAC2\\uAADB-\\uAADD\\uAAE0-\\uAAEA\\uAAF2-\\uAAF4\\uAB01-\\uAB06\\uAB09-\\uAB0E\\uAB11-\\uAB16\\uAB20-\\uAB26\\uAB28-\\uAB2E\\uAB30-\\uAB5A\\uAB5C-\\uAB5F\\uAB64\\uAB65\\uABC0-\\uABE2\\uAC00-\\uD7A3\\uD7B0-\\uD7C6\\uD7CB-\\uD7FB\\uF900-\\uFA6D\\uFA70-\\uFAD9\\uFB00-\\uFB06\\uFB13-\\uFB17\\uFB1D\\uFB1F-\\uFB28\\uFB2A-\\uFB36\\uFB38-\\uFB3C\\uFB3E\\uFB40\\uFB41\\uFB43\\uFB44\\uFB46-\\uFBB1\\uFBD3-\\uFD3D\\uFD50-\\uFD8F\\uFD92-\\uFDC7\\uFDF0-\\uFDFB\\uFE70-\\uFE74\\uFE76-\\uFEFC\\uFF21-\\uFF3A\\uFF41-\\uFF5A\\uFF66-\\uFFBE\\uFFC2-\\uFFC7\\uFFCA-\\uFFCF\\uFFD2-\\uFFD7\\uFFDA-\\uFFDC]"),k=new RegExp("[\\xAA\\xB5\\xBA\\xC0-\\xD6\\xD8-\\xF6\\xF8-\\u02C1\\u02C6-\\u02D1\\u02E0-\\u02E4\\u02EC\\u02EE\\u0300-\\u0374\\u0376\\u0377\\u037A-\\u037D\\u037F\\u0386\\u0388-\\u038A\\u038C\\u038E-\\u03A1\\u03A3-\\u03F5\\u03F7-\\u0481\\u0483-\\u0487\\u048A-\\u052F\\u0531-\\u0556\\u0559\\u0561-\\u0587\\u0591-\\u05BD\\u05BF\\u05C1\\u05C2\\u05C4\\u05C5\\u05C7\\u05D0-\\u05EA\\u05F0-\\u05F2\\u0610-\\u061A\\u0620-\\u0669\\u066E-\\u06D3\\u06D5-\\u06DC\\u06DF-\\u06E8\\u06EA-\\u06FC\\u06FF\\u0710-\\u074A\\u074D-\\u07B1\\u07C0-\\u07F5\\u07FA\\u0800-\\u082D\\u0840-\\u085B\\u08A0-\\u08B2\\u08E4-\\u0963\\u0966-\\u096F\\u0971-\\u0983\\u0985-\\u098C\\u098F\\u0990\\u0993-\\u09A8\\u09AA-\\u09B0\\u09B2\\u09B6-\\u09B9\\u09BC-\\u09C4\\u09C7\\u09C8\\u09CB-\\u09CE\\u09D7\\u09DC\\u09DD\\u09DF-\\u09E3\\u09E6-\\u09F1\\u0A01-\\u0A03\\u0A05-\\u0A0A\\u0A0F\\u0A10\\u0A13-\\u0A28\\u0A2A-\\u0A30\\u0A32\\u0A33\\u0A35\\u0A36\\u0A38\\u0A39\\u0A3C\\u0A3E-\\u0A42\\u0A47\\u0A48\\u0A4B-\\u0A4D\\u0A51\\u0A59-\\u0A5C\\u0A5E\\u0A66-\\u0A75\\u0A81-\\u0A83\\u0A85-\\u0A8D\\u0A8F-\\u0A91\\u0A93-\\u0AA8\\u0AAA-\\u0AB0\\u0AB2\\u0AB3\\u0AB5-\\u0AB9\\u0ABC-\\u0AC5\\u0AC7-\\u0AC9\\u0ACB-\\u0ACD\\u0AD0\\u0AE0-\\u0AE3\\u0AE6-\\u0AEF\\u0B01-\\u0B03\\u0B05-\\u0B0C\\u0B0F\\u0B10\\u0B13-\\u0B28\\u0B2A-\\u0B30\\u0B32\\u0B33\\u0B35-\\u0B39\\u0B3C-\\u0B44\\u0B47\\u0B48\\u0B4B-\\u0B4D\\u0B56\\u0B57\\u0B5C\\u0B5D\\u0B5F-\\u0B63\\u0B66-\\u0B6F\\u0B71\\u0B82\\u0B83\\u0B85-\\u0B8A\\u0B8E-\\u0B90\\u0B92-\\u0B95\\u0B99\\u0B9A\\u0B9C\\u0B9E\\u0B9F\\u0BA3\\u0BA4\\u0BA8-\\u0BAA\\u0BAE-\\u0BB9\\u0BBE-\\u0BC2\\u0BC6-\\u0BC8\\u0BCA-\\u0BCD\\u0BD0\\u0BD7\\u0BE6-\\u0BEF\\u0C00-\\u0C03\\u0C05-\\u0C0C\\u0C0E-\\u0C10\\u0C12-\\u0C28\\u0C2A-\\u0C39\\u0C3D-\\u0C44\\u0C46-\\u0C48\\u0C4A-\\u0C4D\\u0C55\\u0C56\\u0C58\\u0C59\\u0C60-\\u0C63\\u0C66-\\u0C6F\\u0C81-\\u0C83\\u0C85-\\u0C8C\\u0C8E-\\u0C90\\u0C92-\\u0CA8\\u0CAA-\\u0CB3\\u0CB5-\\u0CB9\\u0CBC-\\u0CC4\\u0CC6-\\u0CC8\\u0CCA-\\u0CCD\\u0CD5\\u0CD6\\u0CDE\\u0CE0-\\u0CE3\\u0CE6-\\u0CEF\\u0CF1\\u0CF2\\u0D01-\\u0D03\\u0D05-\\u0D0C\\u0D0E-\\u0D10\\u0D12-\\u0D3A\\u0D3D-\\u0D44\\u0D46-\\u0D48\\u0D4A-\\u0D4E\\u0D57\\u0D60-\\u0D63\\u0D66-\\u0D6F\\u0D7A-\\u0D7F\\u0D82\\u0D83\\u0D85-\\u0D96\\u0D9A-\\u0DB1\\u0DB3-\\u0DBB\\u0DBD\\u0DC0-\\u0DC6\\u0DCA\\u0DCF-\\u0DD4\\u0DD6\\u0DD8-\\u0DDF\\u0DE6-\\u0DEF\\u0DF2\\u0DF3\\u0E01-\\u0E3A\\u0E40-\\u0E4E\\u0E50-\\u0E59\\u0E81\\u0E82\\u0E84\\u0E87\\u0E88\\u0E8A\\u0E8D\\u0E94-\\u0E97\\u0E99-\\u0E9F\\u0EA1-\\u0EA3\\u0EA5\\u0EA7\\u0EAA\\u0EAB\\u0EAD-\\u0EB9\\u0EBB-\\u0EBD\\u0EC0-\\u0EC4\\u0EC6\\u0EC8-\\u0ECD\\u0ED0-\\u0ED9\\u0EDC-\\u0EDF\\u0F00\\u0F18\\u0F19\\u0F20-\\u0F29\\u0F35\\u0F37\\u0F39\\u0F3E-\\u0F47\\u0F49-\\u0F6C\\u0F71-\\u0F84\\u0F86-\\u0F97\\u0F99-\\u0FBC\\u0FC6\\u1000-\\u1049\\u1050-\\u109D\\u10A0-\\u10C5\\u10C7\\u10CD\\u10D0-\\u10FA\\u10FC-\\u1248\\u124A-\\u124D\\u1250-\\u1256\\u1258\\u125A-\\u125D\\u1260-\\u1288\\u128A-\\u128D\\u1290-\\u12B0\\u12B2-\\u12B5\\u12B8-\\u12BE\\u12C0\\u12C2-\\u12C5\\u12C8-\\u12D6\\u12D8-\\u1310\\u1312-\\u1315\\u1318-\\u135A\\u135D-\\u135F\\u1380-\\u138F\\u13A0-\\u13F4\\u1401-\\u166C\\u166F-\\u167F\\u1681-\\u169A\\u16A0-\\u16EA\\u16EE-\\u16F8\\u1700-\\u170C\\u170E-\\u1714\\u1720-\\u1734\\u1740-\\u1753\\u1760-\\u176C\\u176E-\\u1770\\u1772\\u1773\\u1780-\\u17D3\\u17D7\\u17DC\\u17DD\\u17E0-\\u17E9\\u180B-\\u180D\\u1810-\\u1819\\u1820-\\u1877\\u1880-\\u18AA\\u18B0-\\u18F5\\u1900-\\u191E\\u1920-\\u192B\\u1930-\\u193B\\u1946-\\u196D\\u1970-\\u1974\\u1980-\\u19AB\\u19B0-\\u19C9\\u19D0-\\u19D9\\u1A00-\\u1A1B\\u1A20-\\u1A5E\\u1A60-\\u1A7C\\u1A7F-\\u1A89\\u1A90-\\u1A99\\u1AA7\\u1AB0-\\u1ABD\\u1B00-\\u1B4B\\u1B50-\\u1B59\\u1B6B-\\u1B73\\u1B80-\\u1BF3\\u1C00-\\u1C37\\u1C40-\\u1C49\\u1C4D-\\u1C7D\\u1CD0-\\u1CD2\\u1CD4-\\u1CF6\\u1CF8\\u1CF9\\u1D00-\\u1DF5\\u1DFC-\\u1F15\\u1F18-\\u1F1D\\u1F20-\\u1F45\\u1F48-\\u1F4D\\u1F50-\\u1F57\\u1F59\\u1F5B\\u1F5D\\u1F5F-\\u1F7D\\u1F80-\\u1FB4\\u1FB6-\\u1FBC\\u1FBE\\u1FC2-\\u1FC4\\u1FC6-\\u1FCC\\u1FD0-\\u1FD3\\u1FD6-\\u1FDB\\u1FE0-\\u1FEC\\u1FF2-\\u1FF4\\u1FF6-\\u1FFC\\u200C\\u200D\\u203F\\u2040\\u2054\\u2071\\u207F\\u2090-\\u209C\\u20D0-\\u20DC\\u20E1\\u20E5-\\u20F0\\u2102\\u2107\\u210A-\\u2113\\u2115\\u2119-\\u211D\\u2124\\u2126\\u2128\\u212A-\\u212D\\u212F-\\u2139\\u213C-\\u213F\\u2145-\\u2149\\u214E\\u2160-\\u2188\\u2C00-\\u2C2E\\u2C30-\\u2C5E\\u2C60-\\u2CE4\\u2CEB-\\u2CF3\\u2D00-\\u2D25\\u2D27\\u2D2D\\u2D30-\\u2D67\\u2D6F\\u2D7F-\\u2D96\\u2DA0-\\u2DA6\\u2DA8-\\u2DAE\\u2DB0-\\u2DB6\\u2DB8-\\u2DBE\\u2DC0-\\u2DC6\\u2DC8-\\u2DCE\\u2DD0-\\u2DD6\\u2DD8-\\u2DDE\\u2DE0-\\u2DFF\\u2E2F\\u3005-\\u3007\\u3021-\\u302F\\u3031-\\u3035\\u3038-\\u303C\\u3041-\\u3096\\u3099\\u309A\\u309D-\\u309F\\u30A1-\\u30FA\\u30FC-\\u30FF\\u3105-\\u312D\\u3131-\\u318E\\u31A0-\\u31BA\\u31F0-\\u31FF\\u3400-\\u4DB5\\u4E00-\\u9FCC\\uA000-\\uA48C\\uA4D0-\\uA4FD\\uA500-\\uA60C\\uA610-\\uA62B\\uA640-\\uA66F\\uA674-\\uA67D\\uA67F-\\uA69D\\uA69F-\\uA6F1\\uA717-\\uA71F\\uA722-\\uA788\\uA78B-\\uA78E\\uA790-\\uA7AD\\uA7B0\\uA7B1\\uA7F7-\\uA827\\uA840-\\uA873\\uA880-\\uA8C4\\uA8D0-\\uA8D9\\uA8E0-\\uA8F7\\uA8FB\\uA900-\\uA92D\\uA930-\\uA953\\uA960-\\uA97C\\uA980-\\uA9C0\\uA9CF-\\uA9D9\\uA9E0-\\uA9FE\\uAA00-\\uAA36\\uAA40-\\uAA4D\\uAA50-\\uAA59\\uAA60-\\uAA76\\uAA7A-\\uAAC2\\uAADB-\\uAADD\\uAAE0-\\uAAEF\\uAAF2-\\uAAF6\\uAB01-\\uAB06\\uAB09-\\uAB0E\\uAB11-\\uAB16\\uAB20-\\uAB26\\uAB28-\\uAB2E\\uAB30-\\uAB5A\\uAB5C-\\uAB5F\\uAB64\\uAB65\\uABC0-\\uABEA\\uABEC\\uABED\\uABF0-\\uABF9\\uAC00-\\uD7A3\\uD7B0-\\uD7C6\\uD7CB-\\uD7FB\\uF900-\\uFA6D\\uFA70-\\uFAD9\\uFB00-\\uFB06\\uFB13-\\uFB17\\uFB1D-\\uFB28\\uFB2A-\\uFB36\\uFB38-\\uFB3C\\uFB3E\\uFB40\\uFB41\\uFB43\\uFB44\\uFB46-\\uFBB1\\uFBD3-\\uFD3D\\uFD50-\\uFD8F\\uFD92-\\uFDC7\\uFDF0-\\uFDFB\\uFE00-\\uFE0F\\uFE20-\\uFE2D\\uFE33\\uFE34\\uFE4D-\\uFE4F\\uFE70-\\uFE74\\uFE76-\\uFEFC\\uFF10-\\uFF19\\uFF21-\\uFF3A\\uFF3F\\uFF41-\\uFF5A\\uFF66-\\uFFBE\\uFFC2-\\uFFC7\\uFFCA-\\uFFCF\\uFFD2-\\uFFD7\\uFFDA-\\uFFDC]");function G(e,u){if(!e)throw new Error("ASSERT: "+u)}function q(e){return e>=48&&e<=57}function W(e){return"0123456789abcdefABCDEF".indexOf(e)>=0}function j(e){return"01234567".indexOf(e)>=0}function H(e){return 32===e||9===e||11===e||12===e||160===e||e>=5760&&[5760,6158,8192,8193,8194,8195,8196,8197,8198,8199,8200,8201,8202,8239,8287,12288,65279].indexOf(e)>=0}function Z(e){return 10===e||13===e||8232===e||8233===e}function K(e){return 36===e||95===e||e>=65&&e<=90||e>=97&&e<=122||92===e||e>=128&&X.test(String.fromCharCode(e))}function J(e){return 36===e||95===e||e>=65&&e<=90||e>=97&&e<=122||e>=48&&e<=57||92===e||e>=128&&k.test(String.fromCharCode(e))}const z={if:1,in:1,do:1,var:1,for:1,new:1,try:1,let:1,this:1,else:1,case:1,void:1,with:1,enum:1,while:1,break:1,catch:1,throw:1,const:1,yield:1,class:1,super:1,return:1,typeof:1,delete:1,switch:1,export:1,import:1,public:1,static:1,default:1,finally:1,extends:1,package:1,private:1,function:1,continue:1,debugger:1,interface:1,protected:1,instanceof:1,implements:1};function Q(){for(;N<V;){const e=I.charCodeAt(N);if(!H(e)&&!Z(e))break;++N}}function $(e){var u,n,t,r=0;for(n="u"===e?4:2,u=0;u<n;++u)N<V&&W(I[N])?(t=I[N++],r=16*r+"0123456789abcdef".indexOf(t.toLowerCase())):pe({},w,Y);return String.fromCharCode(r)}function ee(){var e,u,n,t;for(u=0,"}"===(e=I[N])&&pe({},w,Y);N<V&&W(e=I[N++]);)u=16*u+"0123456789abcdef".indexOf(e.toLowerCase());return(u>1114111||"}"!==e)&&pe({},w,Y),u<=65535?String.fromCharCode(u):(n=55296+(u-65536>>10),t=56320+(u-65536&1023),String.fromCharCode(n,t))}function ue(){var e,u;for(e=I.charCodeAt(N++),u=String.fromCharCode(e),92===e&&(117!==I.charCodeAt(N)&&pe({},w,Y),++N,(e=$("u"))&&"\\"!==e&&K(e.charCodeAt(0))||pe({},w,Y),u=e);N<V&&J(e=I.charCodeAt(N));)++N,u+=String.fromCharCode(e),92===e&&(u=u.substr(0,u.length-1),117!==I.charCodeAt(N)&&pe({},w,Y),++N,(e=$("u"))&&"\\"!==e&&J(e.charCodeAt(0))||pe({},w,Y),u+=e);return u}function ne(){var e,u;return e=N,{type:1===(u=92===I.charCodeAt(N)?ue():function(){var e,u;for(e=N++;N<V;){if(92===(u=I.charCodeAt(N)))return N=e,ue();if(!J(u))break;++N}return I.slice(e,N)}()).length?3:z.hasOwnProperty(u)?4:"null"===u?5:"true"===u||"false"===u?1:3,value:u,start:e,end:N}}function te(){var e,u,n,t,r=N,a=I.charCodeAt(N),i=I[N];switch(a){case 46:case 40:case 41:case 59:case 44:case 123:case 125:case 91:case 93:case 58:case 63:case 126:return++N,{type:7,value:String.fromCharCode(a),start:r,end:N};default:if(61===(e=I.charCodeAt(N+1)))switch(a){case 43:case 45:case 47:case 60:case 62:case 94:case 124:case 37:case 38:case 42:return N+=2,{type:7,value:String.fromCharCode(a)+String.fromCharCode(e),start:r,end:N};case 33:case 61:return N+=2,61===I.charCodeAt(N)&&++N,{type:7,value:I.slice(r,N),start:r,end:N}}}return">>>="===(t=I.substr(N,4))?{type:7,value:t,start:r,end:N+=4}:">>>"===(n=t.substr(0,3))||"<<="===n||">>="===n?{type:7,value:n,start:r,end:N+=3}:i===(u=n.substr(0,2))[1]&&"+-<>&|".indexOf(i)>=0||"=>"===u?{type:7,value:u,start:r,end:N+=2}:("//"===u&&pe({},w,Y),"<>=!+-*%&|^/".indexOf(i)>=0?{type:7,value:i,start:r,end:++N}:void pe({},w,Y))}function re(){var e,u,n;if(G(q((n=I[N]).charCodeAt(0))||"."===n,"Numeric literal must start with a decimal digit or a decimal point"),u=N,e="","."!==n){if(e=I[N++],n=I[N],"0"===e){if("x"===n||"X"===n)return++N,function(e){let u="";for(;N<V&&W(I[N]);)u+=I[N++];return 0===u.length&&pe({},w,Y),K(I.charCodeAt(N))&&pe({},w,Y),{type:6,value:parseInt("0x"+u,16),start:e,end:N}}(u);if(j(n))return function(e){let u="0"+I[N++];for(;N<V&&j(I[N]);)u+=I[N++];return(K(I.charCodeAt(N))||q(I.charCodeAt(N)))&&pe({},w,Y),{type:6,value:parseInt(u,8),octal:!0,start:e,end:N}}(u);n&&q(n.charCodeAt(0))&&pe({},w,Y)}for(;q(I.charCodeAt(N));)e+=I[N++];n=I[N]}if("."===n){for(e+=I[N++];q(I.charCodeAt(N));)e+=I[N++];n=I[N]}if("e"===n||"E"===n)if(e+=I[N++],"+"!==(n=I[N])&&"-"!==n||(e+=I[N++]),q(I.charCodeAt(N)))for(;q(I.charCodeAt(N));)e+=I[N++];else pe({},w,Y);return K(I.charCodeAt(N))&&pe({},w,Y),{type:6,value:parseFloat(e),start:u,end:N}}function ae(){var e,u,n,t;return L=null,Q(),e=N,u=function(){var e,u,n,t;for(G("/"===(e=I[N]),"Regular expression literal must start with a slash"),u=I[N++],n=!1,t=!1;N<V;)if(u+=e=I[N++],"\\"===e)Z((e=I[N++]).charCodeAt(0))&&pe({},x),u+=e;else if(Z(e.charCodeAt(0)))pe({},x);else if(n)"]"===e&&(n=!1);else{if("/"===e){t=!0;break}"["===e&&(n=!0)}return t||pe({},x),{value:u.substr(1,u.length-2),literal:u}}(),n=function(){var e,u,n;for(u="",n="";N<V&&J((e=I[N]).charCodeAt(0));)++N,"\\"===e&&N<V?pe({},w,Y):(n+=e,u+=e);return n.search(/[^gimuy]/g)>=0&&pe({},U,n),{value:n,literal:u}}(),t=function(e,u){let n=e;u.indexOf("u")>=0&&(n=n.replace(/\\u\{([0-9a-fA-F]+)\}/g,((e,u)=>{if(parseInt(u,16)<=1114111)return"x";pe({},U)})).replace(/[\uD800-\uDBFF][\uDC00-\uDFFF]/g,"x"));try{new RegExp(n)}catch(e){pe({},U)}try{return new RegExp(e,u)}catch(e){return null}}(u.value,n.value),{literal:u.literal+n.literal,value:t,regex:{pattern:u.value,flags:n.value},start:e,end:N}}function ie(){if(Q(),N>=V)return{type:2,start:N,end:N};const e=I.charCodeAt(N);return K(e)?ne():40===e||41===e||59===e?te():39===e||34===e?function(){var e,u,n,t,r="",a=!1;for(G("'"===(e=I[N])||'"'===e,"String literal must starts with a quote"),u=N,++N;N<V;){if((n=I[N++])===e){e="";break}if("\\"===n)if((n=I[N++])&&Z(n.charCodeAt(0)))"\r"===n&&"\n"===I[N]&&++N;else switch(n){case"u":case"x":"{"===I[N]?(++N,r+=ee()):r+=$(n);break;case"n":r+="\n";break;case"r":r+="\r";break;case"t":r+="\t";break;case"b":r+="\b";break;case"f":r+="\f";break;case"v":r+="\v";break;default:j(n)?(0!==(t="01234567".indexOf(n))&&(a=!0),N<V&&j(I[N])&&(a=!0,t=8*t+"01234567".indexOf(I[N++]),"0123".indexOf(n)>=0&&N<V&&j(I[N])&&(t=8*t+"01234567".indexOf(I[N++]))),r+=String.fromCharCode(t)):r+=n}else{if(Z(n.charCodeAt(0)))break;r+=n}}return""!==e&&pe({},w,Y),{type:8,value:r,octal:a,start:u,end:N}}():46===e?q(I.charCodeAt(N+1))?re():te():q(e)?re():te()}function oe(){const e=L;return N=e.end,L=ie(),N=e.end,e}function ce(){const e=N;L=ie(),N=e}function se(e,u,n){const t=new v("||"===e||"&&"===e?"LogicalExpression":"BinaryExpression");return t.operator=e,t.left=u,t.right=n,t}function le(e,u){const n=new v("CallExpression");return n.callee=e,n.arguments=u,n}function de(e){const u=new v(S);return u.name=e,u}function Ee(e){const u=new v("Literal");return u.value=e.value,u.raw=I.slice(e.start,e.end),e.regex&&("//"===u.raw&&(u.raw="/(?:)/"),u.regex=e.regex),u}function fe(e,u,n){const t=new v("MemberExpression");return t.computed="["===e,t.object=u,t.property=n,t.computed||(n.member=!0),t}function Ae(e,u,n){const t=new v("Property");return t.key=u,t.value=n,t.kind=e,t}function pe(e,u){var n,t=Array.prototype.slice.call(arguments,2),r=u.replace(/%(\d)/g,((e,u)=>(G(u<t.length,"Message reference must be in range"),t[u])));throw(n=new Error(r)).index=N,n.description=r,n}function Oe(e){2===e.type&&pe(e,"Unexpected end of input"),6===e.type&&pe(e,"Unexpected number"),8===e.type&&pe(e,"Unexpected string"),3===e.type&&pe(e,"Unexpected identifier"),4===e.type&&pe(e,"Unexpected reserved word"),pe(e,w,e.value)}function Ce(e){const u=oe();7===u.type&&u.value===e||Oe(u)}function De(e){return 7===L.type&&L.value===e}function Fe(e){return 4===L.type&&L.value===e}function _e(){const e=[];for(N=L.start,Ce("[");!De("]");)De(",")?(oe(),e.push(null)):(e.push(Ve()),De("]")||Ce(","));return oe(),function(e){const u=new v("ArrayExpression");return u.elements=e,u}(e)}function he(){N=L.start;const e=oe();return 8===e.type||6===e.type?(e.octal&&pe(e,b),Ee(e)):de(e.value)}function me(){var e,u,n;return N=L.start,3===(e=L).type?(n=he(),Ce(":"),Ae("init",n,Ve())):2!==e.type&&7!==e.type?(u=he(),Ce(":"),Ae("init",u,Ve())):void Oe(e)}function ge(){var e,u,n=[],t={},r=String;for(N=L.start,Ce("{");!De("}");)u="$"+((e=me()).key.type===S?e.key.name:r(e.key.value)),Object.prototype.hasOwnProperty.call(t,u)?pe({},"Duplicate data property in object literal not allowed in strict mode"):t[u]=!0,n.push(e),De("}")||Ce(",");return Ce("}"),function(e){const u=new v("ObjectExpression");return u.properties=e,u}(n)}const Be={if:1};function Me(){var e,u,n;if(De("("))return function(){Ce("(");const e=Le();return Ce(")"),e}();if(De("["))return _e();if(De("{"))return ge();if(e=L.type,N=L.start,3===e||Be[L.value])n=de(oe().value);else if(8===e||6===e)L.octal&&pe(L,b),n=Ee(oe());else{if(4===e)throw new Error(P);1===e?((u=oe()).value="true"===u.value,n=Ee(u)):5===e?((u=oe()).value=null,n=Ee(u)):De("/")||De("/=")?(n=Ee(ae()),ce()):Oe(oe())}return n}function Te(){const e=[];if(Ce("("),!De(")"))for(;N<V&&(e.push(Ve()),!De(")"));)Ce(",");return Ce(")"),e}function ye(){return Ce("."),function(){N=L.start;const e=oe();return function(e){return 3===e.type||4===e.type||1===e.type||5===e.type}(e)||Oe(e),de(e.value)}()}function ve(){Ce("[");const e=Le();return Ce("]"),e}function Re(){const e=function(){var e;for(e=Me();;)if(De("."))e=fe(".",e,ye());else if(De("("))e=le(e,Te());else{if(!De("["))break;e=fe("[",e,ve())}return e}();if(7===L.type&&(De("++")||De("--")))throw new Error(P);return e}function Ie(){var e,u;if(7!==L.type&&4!==L.type)u=Re();else{if(De("++")||De("--"))throw new Error(P);if(De("+")||De("-")||De("~")||De("!"))e=oe(),u=Ie(),u=function(e,u){const n=new v("UnaryExpression");return n.operator=e,n.argument=u,n.prefix=!0,n}(e.value,u);else{if(Fe("delete")||Fe("void")||Fe("typeof"))throw new Error(P);u=Re()}}return u}function Ne(e){let u=0;if(7!==e.type&&4!==e.type)return 0;switch(e.value){case"||":u=1;break;case"&&":u=2;break;case"|":u=3;break;case"^":u=4;break;case"&":u=5;break;case"==":case"!=":case"===":case"!==":u=6;break;case"<":case">":case"<=":case">=":case"instanceof":case"in":u=7;break;case"<<":case">>":case">>>":u=8;break;case"+":case"-":u=9;break;case"*":case"/":case"%":u=11}return u}function Ve(){var e,u;return e=function(){var e,u,n,t,r,a,i,o,c,s;if(e=L,c=Ie(),0===(r=Ne(t=L)))return c;for(t.prec=r,oe(),u=[e,L],a=[c,t,i=Ie()];(r=Ne(L))>0;){for(;a.length>2&&r<=a[a.length-2].prec;)i=a.pop(),o=a.pop().value,c=a.pop(),u.pop(),n=se(o,c,i),a.push(n);(t=oe()).prec=r,a.push(t),u.push(L),n=Ie(),a.push(n)}for(n=a[s=a.length-1],u.pop();s>1;)u.pop(),n=se(a[s-1].value,a[s-2],n),s-=2;return n}(),De("?")&&(oe(),u=Ve(),Ce(":"),e=function(e,u,n){const t=new v("ConditionalExpression");return t.test=e,t.consequent=u,t.alternate=n,t}(e,u,Ve())),e}function Le(){const e=Ve();if(De(","))throw new Error(P);return e}var Se={NaN:"NaN",E:"Math.E",LN2:"Math.LN2",LN10:"Math.LN10",LOG2E:"Math.LOG2E",LOG10E:"Math.LOG10E",PI:"Math.PI",SQRT1_2:"Math.SQRT1_2",SQRT2:"Math.SQRT2",MIN_VALUE:"Number.MIN_VALUE",MAX_VALUE:"Number.MAX_VALUE"};function we(e){function u(u,n,t){return r=>function(u,n,t,r){let a=e(n[0]);return t&&(a=t+"("+a+")",0===t.lastIndexOf("new ",0)&&(a="("+a+")")),a+"."+u+(r<0?"":0===r?"()":"("+n.slice(1).map(e).join(",")+")")}(u,r,n,t)}const n="new Date",t="String",r="RegExp";return{isNaN:"Number.isNaN",isFinite:"Number.isFinite",abs:"Math.abs",acos:"Math.acos",asin:"Math.asin",atan:"Math.atan",atan2:"Math.atan2",ceil:"Math.ceil",cos:"Math.cos",exp:"Math.exp",floor:"Math.floor",log:"Math.log",max:"Math.max",min:"Math.min",pow:"Math.pow",random:"Math.random",round:"Math.round",sin:"Math.sin",sqrt:"Math.sqrt",tan:"Math.tan",clamp:function(u){u.length<3&&d("Missing arguments to clamp function."),u.length>3&&d("Too many arguments to clamp function.");const n=u.map(e);return"Math.max("+n[1]+", Math.min("+n[2]+","+n[0]+"))"},now:"Date.now",utc:"Date.UTC",datetime:n,date:u("getDate",n,0),day:u("getDay",n,0),year:u("getFullYear",n,0),month:u("getMonth",n,0),hours:u("getHours",n,0),minutes:u("getMinutes",n,0),seconds:u("getSeconds",n,0),milliseconds:u("getMilliseconds",n,0),time:u("getTime",n,0),timezoneoffset:u("getTimezoneOffset",n,0),utcdate:u("getUTCDate",n,0),utcday:u("getUTCDay",n,0),utcyear:u("getUTCFullYear",n,0),utcmonth:u("getUTCMonth",n,0),utchours:u("getUTCHours",n,0),utcminutes:u("getUTCMinutes",n,0),utcseconds:u("getUTCSeconds",n,0),utcmilliseconds:u("getUTCMilliseconds",n,0),length:u("length",null,-1),join:u("join",null),indexof:u("indexOf",null),lastindexof:u("lastIndexOf",null),slice:u("slice",null),reverse:function(u){return"("+e(u[0])+").slice().reverse()"},parseFloat:"parseFloat",parseInt:"parseInt",upper:u("toUpperCase",t,0),lower:u("toLowerCase",t,0),substring:u("substring",t),split:u("split",t),replace:u("replace",t),trim:u("trim",t,0),regexp:r,test:u("test",r),if:function(u){u.length<3&&d("Missing arguments to if function."),u.length>3&&d("Too many arguments to if function.");const n=u.map(e);return"("+n[0]+"?"+n[1]+":"+n[2]+")"}}}var Ue=Object.freeze({__proto__:null,ASTNode:v,ArrayExpression:_,BinaryExpression:h,CallExpression:m,ConditionalExpression:g,Identifier:F,Literal:C,LogicalExpression:B,MemberExpression:M,ObjectExpression:T,Property:D,RawCode:O,UnaryExpression:y,codegen:function(e){const u=(e=e||{}).allowed?p(e.allowed):{},n=e.forbidden?p(e.forbidden):{},t=e.constants||Se,r=(e.functions||we)(f),a=e.globalvar,i=e.fieldvar,o=E(a)?a:e=>"".concat(a,'["').concat(e,'"]');let c={},s={},l=0;function f(e){if("string"==typeof e)return e;const u=O[e.type];return null==u&&d("Unsupported type: "+e.type),u(e)}const O={Literal:e=>e.raw,Identifier:e=>{const r=e.name;return l>0?r:A(n,r)?d("Illegal identifier: "+r):A(t,r)?t[r]:A(u,r)?r:(c[r]=1,o(r))},MemberExpression:e=>{const u=!e.computed,n=f(e.object);u&&(l+=1);const t=f(e.property);return n===i&&(s[function(e){const u=e&&e.length-1;return u&&('"'===e[0]&&'"'===e[u]||"'"===e[0]&&"'"===e[u])?e.slice(1,-1):e}(t)]=1),u&&(l-=1),n+(u?"."+t:"["+t+"]")},CallExpression:e=>{"Identifier"!==e.callee.type&&d("Illegal callee type: "+e.callee.type);const u=e.callee.name,n=e.arguments,t=A(r,u)&&r[u];return t||d("Unrecognized function: "+u),E(t)?t(n):t+"("+n.map(f).join(",")+")"},ArrayExpression:e=>"["+e.elements.map(f).join(",")+"]",BinaryExpression:e=>"("+f(e.left)+" "+e.operator+" "+f(e.right)+")",UnaryExpression:e=>"("+e.operator+f(e.argument)+")",ConditionalExpression:e=>"("+f(e.test)+"?"+f(e.consequent)+":"+f(e.alternate)+")",LogicalExpression:e=>"("+f(e.left)+e.operator+f(e.right)+")",ObjectExpression:e=>"{"+e.properties.map(f).join(",")+"}",Property:e=>{l+=1;const u=f(e.key);return l-=1,u+":"+f(e.value)}};function C(e){const u={code:f(e),globals:Object.keys(c),fields:Object.keys(s)};return c={},s={},u}return C.functions=r,C.constants=t,C},constants:Se,functions:we,parse:function(e){N=0,V=(I=e).length,L=null,ce();const u=Le();if(2!==L.type)throw new Error("Unexpect token after expression.");return u}}),xe={TYPES:{QUANTITATIVE:"quantitative",ORDINAL:"ordinal",TEMPORAL:"temporal",NOMINAL:"nominal",GEOJSON:"geojson"},CHANNELS:["x","y","color","shape","size","text","row","column"],OPS:["equal","lt","lte","gt","gte","range","oneOf","valid"],LOGIC_OPS:["and","or","not"]};function be(e){if(e.__esModule)return e;var u=Object.defineProperty({},"__esModule",{value:!0});return Object.keys(e).forEach((function(n){var t=Object.getOwnPropertyDescriptor(e,n);Object.defineProperty(u,n,t.get?t:{enumerable:!0,get:function(){return e[n]}})})),u}var Ye=function(e,u,n){return e(n={path:u,exports:{},require:function(e,u){return function(){throw new Error("Dynamic requires are not currently supported by @rollup/plugin-commonjs")}(null==u&&n.path)}},n.exports),n.exports}((function(e,u){function n(e){var u,n=[];for(u in e)n.push(u);return n}function t(e){if(void 0!==e)return JSON.parse(JSON.stringify(e))}function r(e){return!u.isArray(e)||e.length>0}function a(e,u,n){for(var t=0;t<e.length;t+=1)if(u(n)===u(e[t]))return t;return-1}function i(e,u,n){return e.filter((function(e){return n?a(u,n,e)<0:u.findIndex((u=>o(e,u)))<0}))}function o(e,u){if(e===u)return!0;if(c(e)&&c(u))return Number(e)===Number(u);if("object"==typeof e&&void 0!==e&&"object"==typeof u&&void 0!==u){const n=Object.keys(e),t=Object.keys(u);if(n.length!==t.length)return!1;for(let t=0;t<n.length;t++){const r=n[t];if(!Object.prototype.hasOwnProperty.call(u,r)||!o(e[r],u[r]))return!1}return!0}return!1}function c(e){return void 0!==e&&"function"==typeof e.getMonth}u.isArray=Array.isArray||function(e){return"[object Array]"==={}.toString.call(e)},u.isString=function(e){return"string"==typeof e||e instanceof String},u.isin=function(e,u){return-1!==u.indexOf(e)},u.json=function(e,u){return JSON.stringify(e,null,u)},u.keys=n,u.duplicate=t,u.copy=t,u.forEach=function(e,u,n){if(e.forEach)e.forEach.call(n,u);else for(var t in e)u.call(n,e[t],t,e)},u.any=function(e,u){var n,t=0;for(n in e)if(u(e[n],n,t++))return!0;return!1},u.nestedMap=function e(u,n,t,a){return 0===t?u.map(n):u.map((function(u){var i=e(u,n,t-1);return a?i.filter(r):i}))},u.nestedReduce=function e(u,n,t,a){return 0===t?u.reduce(n,[]):u.map((function(u){var i=e(u,n,t-1);return a?i.filter(r):i}))},u.nonEmpty=r,u.traverse=function e(u,n){return void 0!==u.value?n.push(u.value):(u.left&&e(u.left,n),u.right&&e(u.right,n)),n},u.extend=function(e,u){for(var n=[],t=2;t<arguments.length;t++)n[t-2]=arguments[t];for(var r,a,i=1,o=arguments.length;i<o;++i)for(a in r=arguments[i])e[a]=r[a];return e},u.union=function(e,u,n=(e=>e)){return[...e].concat(u.filter((u=>!e.find((e=>n(u)===n(e))))))},(u.gen||(u.gen={})).getOpt=function(e){return(e?n(e):[]).reduce((function(u,n){return u[n]=e[n],u}),Object.create({}))},u.powerset=function(e){for(var u=[[]],n=0;n<e.length;n++)for(var t=0,r=u.length;t<r;t++)u.push(u[t].concat(e[n]));return u},u.chooseKorLess=function(e,u){for(var n=[[]],t=0;t<e.length;t++)for(var r=0,a=n.length;r<a;r++){var i=n[r].concat(e[t]);i.length<=u&&n.push(i)}return n},u.chooseK=function(e,u){for(var n=[[]],t=[],r=0;r<e.length;r++)for(var a=0,i=n.length;a<i;a++){var o=n[a].concat(e[r]);o.length<u?n.push(o):o.length===u&&t.push(o)}return t},u.cross=function(e,u){for(var n=[],t=0;t<e.length;t++)for(var r=0;r<u.length;r++)n.push(e[t].concat(u[r]));return n},u.find=a,u.rawEqual=function(e,u){return JSON.stringify(e)===JSON.stringify(u)},u.arrayDiff=i,u.unionObjectArray=function(e,u,n){return i(e,u,n).concat(u)},u.deepEqual=o,u.partition=function e(u,n){if(u.length===n)return[u.map((e=>[e]))];if(1===n)return[[u]];if(n>u.length)throw new Error("Cannot partition the array of ".concat(u.length," into ").concat(n,"."));if(0===u.length)return;let r=[u[0]],a=u.slice(1),i=e(a,n-1).map((e=>{let u=t(e);return u.push(r),u}));return e(a,n).reduce(((e,u)=>e.concat(u.map(((e,u,n)=>{let a=t(n),i=t(e);return i.push(r[0]),a[u]=i,a})))),i)},u.permutate=function e(u){return 1===u.length?[u]:2===u.length?[u,[u[1],u[0]]]:u.reduce(((n,r,a)=>{const i=t(u);return i.splice(a,1),n=n.concat(e(i).map((e=>[r].concat(e))))}),[])},u.intersection=function(e,u,n=(e=>e)){return u.filter((u=>e.filter((e=>n(u)===n(e))).length>0))},u.unique=function(e,u=(e=>e)){let n=e.map(u).reduce(((e,u)=>(e[u]=!0,e)),{});return Object.keys(n)}})),Pe={DEFAULT_EDIT_OPS:{markEditOps:{AREA_BAR:{name:"AREA_BAR",cost:.03},AREA_LINE:{name:"AREA_LINE",cost:.02},AREA_POINT:{name:"AREA_POINT",cost:.04},AREA_TEXT:{name:"AREA_TEXT",cost:.08},AREA_TICK:{name:"AREA_TICK",cost:.04},BAR_LINE:{name:"BAR_LINE",cost:.04},BAR_POINT:{name:"BAR_POINT",cost:.02},BAR_TEXT:{name:"BAR_TEXT",cost:.06},BAR_TICK:{name:"BAR_TICK",cost:.02},LINE_POINT:{name:"LINE_POINT",cost:.03},LINE_TEXT:{name:"LINE_TEXT",cost:.07},LINE_TICK:{name:"LINE_TICK",cost:.03},POINT_TEXT:{name:"POINT_TEXT",cost:.05},POINT_TICK:{name:"POINT_TICK",cost:.01},TEXT_TICK:{name:"TEXT_TICK",cost:.05}},transformEditOps:{SCALE:{name:"SCALE",cost:.6},SORT:{name:"SORT",cost:.61},BIN:{name:"BIN",cost:.62},AGGREGATE:{name:"AGGREGATE",cost:.63},ADD_FILTER:{name:"ADD_FILTER",cost:.65},REMOVE_FILTER:{name:"REMOVE_FILTER",cost:.65},MODIFY_FILTER:{name:"MODIFY_FILTER",cost:.64}},encodingEditOps:{ADD_X:{name:"ADD_X",cost:4.59},ADD_Y:{name:"ADD_Y",cost:4.59},ADD_COLOR:{name:"ADD_COLOR",cost:4.55},ADD_SHAPE:{name:"ADD_SHAPE",cost:4.51},ADD_SIZE:{name:"ADD_SIZE",cost:4.53},ADD_ROW:{name:"ADD_ROW",cost:4.57},ADD_COLUMN:{name:"ADD_COLUMN",cost:4.57},ADD_TEXT:{name:"ADD_TEXT",cost:4.49},ADD_X_COUNT:{name:"ADD_X_COUNT",cost:4.58},ADD_Y_COUNT:{name:"ADD_Y_COUNT",cost:4.58},ADD_COLOR_COUNT:{name:"ADD_COLOR_COUNT",cost:4.54},ADD_SHAPE_COUNT:{name:"ADD_SHAPE_COUNT",cost:4.5},ADD_SIZE_COUNT:{name:"ADD_SIZE_COUNT",cost:4.52},ADD_ROW_COUNT:{name:"ADD_ROW_COUNT",cost:4.56},ADD_COLUMN_COUNT:{name:"ADD_COLUMN_COUNT",cost:4.56},ADD_TEXT_COUNT:{name:"ADD_TEXT_COUNT",cost:4.48},REMOVE_X_COUNT:{name:"REMOVE_X_COUNT",cost:4.58},REMOVE_Y_COUNT:{name:"REMOVE_Y_COUNT",cost:4.58},REMOVE_COLOR_COUNT:{name:"REMOVE_COLOR_COUNT",cost:4.54},REMOVE_SHAPE_COUNT:{name:"REMOVE_SHAPE_COUNT",cost:4.5},REMOVE_SIZE_COUNT:{name:"REMOVE_SIZE_COUNT",cost:4.52},REMOVE_ROW_COUNT:{name:"REMOVE_ROW_COUNT",cost:4.56},REMOVE_COLUMN_COUNT:{name:"REMOVE_COLUMN_COUNT",cost:4.56},REMOVE_TEXT_COUNT:{name:"REMOVE_TEXT_COUNT",cost:4.48},REMOVE_X:{name:"REMOVE_X",cost:4.59},REMOVE_Y:{name:"REMOVE_Y",cost:4.59},REMOVE_COLOR:{name:"REMOVE_COLOR",cost:4.55},REMOVE_SHAPE:{name:"REMOVE_SHAPE",cost:4.51},REMOVE_SIZE:{name:"REMOVE_SIZE",cost:4.53},REMOVE_ROW:{name:"REMOVE_ROW",cost:4.57},REMOVE_COLUMN:{name:"REMOVE_COLUMN",cost:4.57},REMOVE_TEXT:{name:"REMOVE_TEXT",cost:4.49},MODIFY_X:{name:"MODIFY_X",cost:4.71},MODIFY_Y:{name:"MODIFY_Y",cost:4.71},MODIFY_COLOR:{name:"MODIFY_COLOR",cost:4.67},MODIFY_SHAPE:{name:"MODIFY_SHAPE",cost:4.63},MODIFY_SIZE:{name:"MODIFY_SIZE",cost:4.65},MODIFY_ROW:{name:"MODIFY_ROW",cost:4.69},MODIFY_COLUMN:{name:"MODIFY_COLUMN",cost:4.69},MODIFY_TEXT:{name:"MODIFY_TEXT",cost:4.61},MODIFY_X_ADD_COUNT:{name:"MODIFY_X_ADD_COUNT",cost:4.7},MODIFY_Y_ADD_COUNT:{name:"MODIFY_Y_ADD_COUNT",cost:4.7},MODIFY_COLOR_ADD_COUNT:{name:"MODIFY_COLOR_ADD_COUNT",cost:4.66},MODIFY_SHAPE_ADD_COUNT:{name:"MODIFY_SHAPE_ADD_COUNT",cost:4.62},MODIFY_SIZE_ADD_COUNT:{name:"MODIFY_SIZE_ADD_COUNT",cost:4.64},MODIFY_ROW_ADD_COUNT:{name:"MODIFY_ROW_ADD_COUNT",cost:4.68},MODIFY_COLUMN_ADD_COUNT:{name:"MODIFY_COLUMN_ADD_COUNT",cost:4.68},MODIFY_TEXT_ADD_COUNT:{name:"MODIFY_TEXT_ADD_COUNT",cost:4.6},MODIFY_X_REMOVE_COUNT:{name:"MODIFY_X_REMOVE_COUNT",cost:4.7},MODIFY_Y_REMOVE_COUNT:{name:"MODIFY_Y_REMOVE_COUNT",cost:4.7},MODIFY_COLOR_REMOVE_COUNT:{name:"MODIFY_COLOR_REMOVE_COUNT",cost:4.66},MODIFY_SHAPE_REMOVE_COUNT:{name:"MODIFY_SHAPE_REMOVE_COUNT",cost:4.62},MODIFY_SIZE_REMOVE_COUNT:{name:"MODIFY_SIZE_REMOVE_COUNT",cost:4.64},MODIFY_ROW_REMOVE_COUNT:{name:"MODIFY_ROW_REMOVE_COUNT",cost:4.68},MODIFY_COLUMN_REMOVE_COUNT:{name:"MODIFY_COLUMN_REMOVE_COUNT",cost:4.68},MODIFY_TEXT_REMOVE_COUNT:{name:"MODIFY_TEXT_REMOVE_COUNT",cost:4.6},MOVE_X_ROW:{name:"MOVE_X_ROW",cost:4.45},MOVE_X_COLUMN:{name:"MOVE_X_COLUMN",cost:4.43},MOVE_X_SIZE:{name:"MOVE_X_SIZE",cost:4.46},MOVE_X_SHAPE:{name:"MOVE_X_SHAPE",cost:4.46},MOVE_X_COLOR:{name:"MOVE_X_COLOR",cost:4.46},MOVE_X_Y:{name:"MOVE_X_Y",cost:4.44},MOVE_X_TEXT:{name:"MOVE_X_TEXT",cost:4.46},MOVE_Y_ROW:{name:"MOVE_Y_ROW",cost:4.43},MOVE_Y_COLUMN:{name:"MOVE_Y_COLUMN",cost:4.45},MOVE_Y_SIZE:{name:"MOVE_Y_SIZE",cost:4.46},MOVE_Y_SHAPE:{name:"MOVE_Y_SHAPE",cost:4.46},MOVE_Y_COLOR:{name:"MOVE_Y_COLOR",cost:4.46},MOVE_Y_X:{name:"MOVE_Y_X",cost:4.44},MOVE_Y_TEXT:{name:"MOVE_Y_TEXT",cost:4.46},MOVE_COLOR_ROW:{name:"MOVE_COLOR_ROW",cost:4.47},MOVE_COLOR_COLUMN:{name:"MOVE_COLOR_COLUMN",cost:4.47},MOVE_COLOR_SIZE:{name:"MOVE_COLOR_SIZE",cost:4.43},MOVE_COLOR_SHAPE:{name:"MOVE_COLOR_SHAPE",cost:4.43},MOVE_COLOR_Y:{name:"MOVE_COLOR_Y",cost:4.46},MOVE_COLOR_X:{name:"MOVE_COLOR_X",cost:4.46},MOVE_COLOR_TEXT:{name:"MOVE_COLOR_TEXT",cost:4.43},MOVE_SHAPE_ROW:{name:"MOVE_SHAPE_ROW",cost:4.47},MOVE_SHAPE_COLUMN:{name:"MOVE_SHAPE_COLUMN",cost:4.47},MOVE_SHAPE_SIZE:{name:"MOVE_SHAPE_SIZE",cost:4.43},MOVE_SHAPE_COLOR:{name:"MOVE_SHAPE_COLOR",cost:4.43},MOVE_SHAPE_Y:{name:"MOVE_SHAPE_Y",cost:4.46},MOVE_SHAPE_X:{name:"MOVE_SHAPE_X",cost:4.46},MOVE_SHAPE_TEXT:{name:"MOVE_SHAPE_TEXT",cost:4.43},MOVE_SIZE_ROW:{name:"MOVE_SIZE_ROW",cost:4.47},MOVE_SIZE_COLUMN:{name:"MOVE_SIZE_COLUMN",cost:4.47},MOVE_SIZE_SHAPE:{name:"MOVE_SIZE_SHAPE",cost:4.43},MOVE_SIZE_COLOR:{name:"MOVE_SIZE_COLOR",cost:4.43},MOVE_SIZE_Y:{name:"MOVE_SIZE_Y",cost:4.46},MOVE_SIZE_X:{name:"MOVE_SIZE_X",cost:4.46},MOVE_SIZE_TEXT:{name:"MOVE_SIZE_TEXT",cost:4.43},MOVE_TEXT_ROW:{name:"MOVE_TEXT_ROW",cost:4.47},MOVE_TEXT_COLUMN:{name:"MOVE_TEXT_COLUMN",cost:4.47},MOVE_TEXT_SHAPE:{name:"MOVE_TEXT_SHAPE",cost:4.43},MOVE_TEXT_COLOR:{name:"MOVE_TEXT_COLOR",cost:4.43},MOVE_TEXT_Y:{name:"MOVE_TEXT_Y",cost:4.46},MOVE_TEXT_X:{name:"MOVE_TEXT_X",cost:4.46},MOVE_TEXT_SIZE:{name:"MOVE_TEXT_SIZE",cost:4.43},MOVE_COLUMN_ROW:{name:"MOVE_COLUMN_ROW",cost:4.44},MOVE_COLUMN_SIZE:{name:"MOVE_COLUMN_SIZE",cost:4.47},MOVE_COLUMN_SHAPE:{name:"MOVE_COLUMN_SHAPE",cost:4.47},MOVE_COLUMN_COLOR:{name:"MOVE_COLUMN_COLOR",cost:4.47},MOVE_COLUMN_Y:{name:"MOVE_COLUMN_Y",cost:4.45},MOVE_COLUMN_X:{name:"MOVE_COLUMN_X",cost:4.43},MOVE_COLUMN_TEXT:{name:"MOVE_COLUMN_TEXT",cost:4.47},MOVE_ROW_COLUMN:{name:"MOVE_ROW_COLUMN",cost:4.44},MOVE_ROW_SIZE:{name:"MOVE_ROW_SIZE",cost:4.47},MOVE_ROW_SHAPE:{name:"MOVE_ROW_SHAPE",cost:4.47},MOVE_ROW_COLOR:{name:"MOVE_ROW_COLOR",cost:4.47},MOVE_ROW_Y:{name:"MOVE_ROW_Y",cost:4.43},MOVE_ROW_X:{name:"MOVE_ROW_X",cost:4.45},MOVE_ROW_TEXT:{name:"MOVE_ROW_TEXT",cost:4.47},SWAP_X_Y:{name:"SWAP_X_Y",cost:4.42},SWAP_ROW_COLUMN:{name:"SWAP_ROW_COLUMN",cost:4.41},ceiling:{cost:47.1,alternatingCost:51.81}}}};function Xe(e,u){var n=Ye.keys(e),t=Ye.keys(u);if(n.length!==t.length)return!1;for(var r=Ye.union(n,t),a=0;a<r.length;a+=1){var i=r[a];if(!e[i]||!u[i])return!1;if(e[i].field!==u[i].field||e[i].type!==u[i].type)return!1}return!0}var ke={neighbors:function(e,u,n,t){var r=[],a=t||Pe.DEFAULT_ENCODING_EDIT_OPS,i=Ye.keys(e.encoding),o=n;i.forEach((function(t){var c=Ye.duplicate(e),s="REMOVE_"+t.toUpperCase();s+="*"===e.encoding[t].field?"_COUNT":"";var l=Ye.duplicate(a[s]),d=Ye.duplicate(u);-1===Ye.find(d,Ye.rawEqual,c.encoding[t])&&d.push(c.encoding[t]);var E=Ye.duplicate(n);l.detail={before:{field:c.encoding[t].field,channel:t},after:void 0},E.push(t),delete c.encoding[t],c.editOp=l,c.additionalFields=d,c.additionalChannels=E,r.push(c),u.forEach((function(i,o){i.field===e.encoding[t].field&&i.type===e.encoding[t].type||(c=Ye.duplicate(e),s="MODIFY_"+t.toUpperCase(),"*"===e.encoding[t].field&&"*"!==i.field?s+="_REMOVE_COUNT":"*"!==e.encoding[t].field&&"*"===i.field&&(s+="_ADD_COUNT"),l=Ye.duplicate(a[s]),(d=Ye.duplicate(u)).splice(o,1),-1===Ye.find(d,Ye.rawEqual,c.encoding[t])&&d.push(c.encoding[t]),E=Ye.duplicate(n),c.encoding[t]=i,l.detail={before:{...e.encoding[t],channel:t},after:{...i,channel:t}},c.editOp=l,c.additionalFields=d,c.additionalChannels=E,r.push(c))})),i.forEach((function(i){if(!(i===t||["x","y"].indexOf(t)<0||["x","y"].indexOf(i)<0)){c=Ye.duplicate(e),l=Ye.duplicate(a.SWAP_X_Y),d=Ye.duplicate(u),E=Ye.duplicate(n);var o=Ye.duplicate(c.encoding[t]);c.encoding[t]=c.encoding[i],c.encoding[i]=o,l.detail={before:{field:e.encoding.x.field,channel:"x"},after:{field:e.encoding.y.field,channel:"y"}},c.editOp=l,c.additionalFields=d,c.additionalChannels=E,r.push(c)}})),o.forEach((function(i,o){c=Ye.duplicate(e);var s=(t+"_"+i).toUpperCase();l=Ye.duplicate(a["MOVE_"+s]),d=Ye.duplicate(u),(E=Ye.duplicate(n)).splice(o,1),E.push(t),c.encoding[i]=Ye.duplicate(c.encoding[t]),delete c.encoding[t],l.detail={before:{channel:t},after:{channel:i}},c.editOp=l,c.additionalFields=d,c.additionalChannels=E,r.push(c)}))})),o.forEach((function(t,i){u.forEach((function(o,c){var s=Ye.duplicate(e),l="ADD_"+t.toUpperCase();l+="*"===o.field?"_COUNT":"";var d=Ye.duplicate(a[l]),E=Ye.duplicate(u),f=Ye.duplicate(n);E.splice(c,1),s.encoding[t]=o,f.splice(i,1),d.detail={before:void 0,after:{field:o.field,channel:t}},s.editOp=d,s.additionalFields=E,s.additionalChannels=f,r.push(s)}))}));for(var c=0;c<r.length;c+=1)for(var s=c+1;s<r.length;s+=1)Xe(r[c].encoding,r[s].encoding)&&(r.splice(s,1),s-=1);return r},sameEncoding:Xe},Ge=be(Ue);const{TYPES:qe,CHANNELS:We,OPS:je,LOGIC_OPS:He}=xe,Ze=Pe.DEFAULT_EDIT_OPS;function Ke(e,u,n){var t,r=[],a=n||Ze.markEditOps;const i="object"==typeof e.mark?e.mark.type:e.mark,o="object"==typeof u.mark?u.mark.type:u.mark;if(!i||!o||i===o||"null"===i||"null"===o)return r;var c=[i.toUpperCase(),o.toUpperCase()].sort().join("_");return a[c]?((t=Ye.duplicate(a[c])).detail={before:i,after:o},r.push(t)):console.error("Cannot find ".concat(c," marktype change edit op.")),r}async function Je(e,u,n,t){const r=["SCALE","SORT","AGGREGATE","BIN","SETTYPE"];var a=n||Ze.transformEditOps,i=[];for(let n=0;n<We.length;n++){const o=We[n];for(let n=0;n<r.length;n++){const c=r[n];let s;if("SETTYPE"===c&&a[c]?s=tu(e,u,o,a):"SCALE"===c&&a[c]?s=await Qe(e,u,o,a[c],t):a[c]&&(s=ze(e,u,o,c,a)),s){let e=i.find((e=>e.name===s.name));e?e.detail.push(s.detail):(s.detail=[s.detail],i.push(s))}}}var o={MODIFY_FILTER:a.MODIFY_FILTER,ADD_FILTER:a.ADD_FILTER,REMOVE_FILTER:a.REMOVE_FILTER};return i=i.concat(eu(e,u,o))}function ze(e,u,n,t,r){var a,i,o,c=!1,s=!1;return e.encoding[n]&&e.encoding[n][t.toLowerCase()]&&(c=!0,i=e.encoding[n][t.toLowerCase()]),u.encoding[n]&&u.encoding[n][t.toLowerCase()]&&(s=!0,o=u.encoding[n][t.toLowerCase()]),c&&s&&!Ye.rawEqual(i,o)?((a=Ye.duplicate(r[t])).detail={how:"modified",channel:n},a):c&&!s?((a=Ye.duplicate(r[t])).detail={how:"removed",channel:n},a):!c&&s?((a=Ye.duplicate(r[t])).detail={how:"added",channel:n},a):void 0}async function Qe(e,u,n,t,r){var a,i,o,c=!1,s=!1,l=!1,d=!1;if(e.encoding[n]&&e.encoding[n].scale&&(c=!0,i={...e.encoding[n].scale},Object.keys(i).find((e=>["domain","zero"].indexOf(e)<0))||(s=!0)),u.encoding[n]&&u.encoding[n].scale&&(l=!0,o={...u.encoding[n].scale},Object.keys(o).find((e=>["domain","zero"].indexOf(e)<0))||(d=!0)),r&&r.omitIncludeRawDomain&&(i&&i.domain&&"unaggregated"===o.domain&&(delete i.domain,0===Object.keys(i).length&&(s=!1,c=!1)),o&&o.domain&&"unaggregated"===o.domain&&(delete o.domain,0===Object.keys(o).length&&(d=!1,l=!1))),c&&l&&!Ye.rawEqual(i,o)){if(s&&d&&await $e(e,u,n))return;return(a=Ye.duplicate(t)).detail={how:"modified",channel:n,fieldType:{from:e.encoding[n].type,to:u.encoding[n].type}},a}if(c&&!l){if(s&&await $e(e,u,n))return;return(a=Ye.duplicate(t)).detail={how:"removed",channel:n,fieldType:e.encoding[n].type},a}if(!c&&l){if(d&&await $e(e,u,n))return;return(a=Ye.duplicate(t)).detail={how:"added",channel:n,fieldType:u.encoding[n].type},a}}async function $e(e,u,n){let t,r;try{t=await new a.default.View(a.default.parse(i.default.compile(Ye.duplicate(u)).spec),{renderer:"svg"}).runAsync(),r=await new a.default.View(a.default.parse(i.default.compile(Ye.duplicate(e)).spec),{renderer:"svg"}).runAsync()}catch(e){return!1}const o=r._runtime.scales[n].value,c=t._runtime.scales[n].value;return Ye.deepEqual(o.domain(),c.domain())}function eu(e,u,n){var t=[],r=[],a=[];if(e.transform&&(t=uu(e.transform.filter((e=>e.filter)).map((e=>e.filter)))),u.transform&&(r=uu(u.transform.filter((e=>e.filter)).map((e=>e.filter)))),0===t.length&&0===r.length)return a;for(var i=Ye.arrayDiff(r,t),o=Ye.arrayDiff(t,r),c=!1,s=0;s<i.length;s++){for(var l=0;l<o.length;l++)if(i[s].id===o[l].id){(d=Ye.duplicate(n.MODIFY_FILTER)).detail={what:[],id:o[l].id,before:[],after:[],sFilter:o[l],eFilter:i[s]},Ye.deepEqual(o[l].op,i[s].op)||(d.detail.what.push("op"),d.detail.before.push(o[l].op),d.detail.after.push(i[s].op)),Ye.deepEqual(o[l].value,i[s].value)||(d.detail.what.push("value"),d.detail.before.push(o[l].value),d.detail.after.push(i[s].value)),a.push(d),i.splice(s,1),o.splice(l,1),c=!0;break}c&&(c=!1,s--)}for(s=0;s<i.length;s++){(d=Ye.duplicate(n.ADD_FILTER)).detail=d.detail={id:i[s].id,what:["field","op","value"],before:[void 0,void 0,void 0],after:[i[s].field,i[s].op,i[s].value],eFilter:i[s],sFilter:void 0},a.push(d)}for(s=0;s<o.length;s++){var d;(d=Ye.duplicate(n.REMOVE_FILTER)).detail=d.detail={id:o[s].id,what:["field","op","value"],before:[o[s].field,o[s].op,o[s].value],after:[void 0,void 0,void 0],sFilter:o[s],eFilter:void 0},a.push(d)}return a}function uu(e){let u;return u=Ye.isArray(e)?e.reduce(((e,u)=>e.concat(nu(u))),[]):nu(e),u=r.default.groups(u,(e=>e.id)).map((e=>({id:e[0],field:e[1].map((e=>e.field)),op:e[1].map((e=>e.op)),value:e[1].map((e=>e.value))}))),u}function nu(e){let u=[];return Ye.isString(e)?u=u.concat(function(e){return u((0,Ge.parse)(e),[],0).map((function(e){return{id:e.left.property.name,field:e.left.property.name,op:e.operator,value:e.right.raw}}));function u(e,n,t){return"||"===e.operator||"&&"===e.operator?(n=u(e.left,n,t+1),n=u(e.right,n,t+1)):["==","===","!==","!=","<","<=",">",">="].indexOf(e.operator)>=0&&(e.depth=t,n.push(e)),n}}(e)):(He.filter((u=>e.hasOwnProperty(u))).forEach((n=>{let t;t=Ye.isArray(e[n])?e[n].reduce(((e,u)=>e.concat(nu(u))),[]):nu(e[n]);let r=t.map((e=>e.id)).join("_");u.push({id:"".concat(n,">[").concat(r,"]"),op:n,value:t})})),je.filter((u=>e.hasOwnProperty(u))).forEach((n=>{u.push({id:e.field,field:e.field,op:n,value:JSON.stringify(e[n])})}))),0===u.length&&console.log("WARN: cannot parse filters."),u}function tu(e,u,n,t){var r;if(e.encoding[n]&&u.encoding[n]&&u.encoding[n].field===e.encoding[n].field&&u.encoding[n].type!==e.encoding[n].type)return(r=Ye.duplicate(t.SETTYPE)).detail={before:e.encoding[n].type,after:u.encoding[n].type,channel:n},r}function ru(e,u,n){if(ke.sameEncoding(e.encoding,u.encoding))return[];var t,r=Ye.keys(e.encoding),a=r.map((function(u){return e.encoding[u]})),i=Ye.keys(u.encoding),o=i.map((function(e){return u.encoding[e]})),c=Ye.union(o,a,(function(e){return e.field+"_"+e.type})),s=Ye.arrayDiff(i,r);function l(e){var u=1/0,n=-1;return e.forEach((function(e,t){e.distance<u&&(u=e.distance,n=t)})),e.splice(n,1)[0]}var d=ke.neighbors(e,c,s,n).map((function(u){return u.distance=u.editOp.cost,u.prev=[e],u}));e.distance=0,e.prev=[];for(var E=[e];d.length>0&&(t=l(d),!ke.sameEncoding(t.encoding,u.encoding));){if(t.distance>=n.ceiling.cost)return[{name:"OVER_THE_CEILING",cost:n.ceiling.alternatingCost}];ke.neighbors(t,c,t.additionalChannels,n).forEach((function(e){for(var u,n=0;n<E.length;n+=1)if(ke.sameEncoding(E[n].encoding,e.encoding))return;for(n=0;n<d.length;n+=1)if(ke.sameEncoding(d[n].encoding,e.encoding)){u=d[n];break}u?u.distance>t.distance+e.editOp.cost&&(u.distance=t.distance+e.editOp.cost,u.editOp=e.editOp,u.prev=t.prev.concat([t])):(e.distance=t.distance+e.editOp.cost,e.prev=t.prev.concat([t]),d.push(e))})),E.push(t)}if(!ke.sameEncoding(t.encoding,u.encoding)&&0===d.length)return[{name:"UNREACHABLE",cost:999}];var f=[].concat(t.prev.map((function(e){return e.editOp})).filter((function(e){return e})));return f.push(t.editOp),f}var au={transition:async function(e,u,n,t){var r=n?n.markEditOps:Ze.markEditOps,a=n?n.transformEditOps:Ze.transformEditOps,i=n?n.encodingEditOps:Ze.encodingEditOps;let o=await Je(e,u,a,t);var c={mark:Ke(e,u,r).map((e=>({...e,type:"mark"}))),transform:o.map((e=>({...e,type:"transform"}))),encoding:ru(e,u,i).map((e=>({...e,type:"encoding"})))};const s=new RegExp("^MOVE_");c.transform=c.transform.filter((e=>{if(e.name.indexOf("FILTER")>=0)return!0;let u=c.encoding.filter((e=>s.test(e.name)));return 0===u.length||(u.forEach((u=>{let n=u.detail.before.channel,t=u.detail.after.channel,r=e.detail.findIndex((e=>"removed"===e.how&&e.channel===n)),a=e.detail.findIndex((e=>"added"===e.how&&e.channel===t));r>=0&&a>=0&&(e.detail=e.detail.filter(((e,u)=>[r,a].indexOf(u)<0)))})),e.detail.length>0)}));var l=0;return l=c.encoding.reduce((function(n,t){if(t.name.indexOf("_COUNT")>=0){var r=t.name.replace(/COUNT/g,"").replace(/ADD/g,"").replace(/REMOVE/g,"").replace(/MODIFY/g,"").replace(/_/g,"").toLowerCase(),a=c.transform.filter((function(e){return"AGGREGATE"===e.name}))[0];a&&1===a.detail.length&&a.detail.filter((function(e){return e.channel.toLowerCase()===r})).length&&(a.cost=0);var i=c.transform.filter((function(e){return"BIN"===e.name}))[0];i&&i.detail.filter((function(n){return"added"===n.how?u.encoding[n.channel].type===qe.QUANTITATIVE:e.encoding[n.channel].type===qe.QUANTITATIVE})).length>0&&(i.cost=0)}return n+=t.cost}),l),l=c.mark.reduce((function(e,u){return e+=u.cost}),l),l=c.transform.reduce((function(e,u){return e+=u.cost}),l),{...c,cost:l}},markEditOps:Ke,transformEditOps:Je,transformBasic:ze,scaleEditOps:Qe,sameDomain:$e,filterEditOps:eu,getFilters:uu,parsePredicateFilter:nu,transformSettype:tu,encodingEditOps:ru};var iu={TSP:function(e,u,n){var t,r;function a(e){var u=[];if(1===e.length)return u.push(e),u;for(var n=0;n<e.length;n++){var t=JSON.parse(JSON.stringify(e)),r=t.splice(n,1);a(t).map((function(e){u.push(r.concat(e))}))}return u}var i=e[0].map((function(e,u){return u}));isNaN(n)?r=a(i):(t=i.splice(n,1),r=a(i).map((function(e){return t.concat(e)})));for(var o=1/0,c=0,s=[],l=[],d=0;d<r.length;d++){r.length;for(var E=0;E<r[d].length-1;E++)c+=e[r[d][E]][r[d][E+1]][u];c=Math.round(1e4*c)/1e4,l.push({sequence:r[d],distance:c}),c<=o&&(c===o?s.push({sequence:r[d],distance:o}):(s=[]).push({sequence:r[d],distance:c}),o=c),c=0}return{out:s,all:l}}};function ou(e,u,n){return(1*e+u/n*0)/1}function cu(e,u,n){for(var t,r=0,a=0;a<n.length-1;a++){for(t=a;n[a]+u>n[a+1];)a++;r+=n[a]+u-n[t]}return a===n.length-1&&(r+=u),r/e.length}function su(e,u,n,t,r){for(var a=0;a<n-u+1;a++)if(e[u+a]!==e[t+a])return!1;return!0}function lu(e){return JSON.stringify(e)}var du={PatternOptimizer:function(e,u){for(var n,t=[],r=0,a=1;a<=e.length;a++)for(var i=0;i<e.length-a+1;i++){for(var o=[i],c=0;c<e.length-a+1;c++)i!==c&&su(e,i,i+(a-1),c)&&o.push(c);for(var s=!1,l=0;l<o.length-1;l++)if(o[l+1]-o[l]<a){s=!0;break}if(o.length>1&&!s){var d=(n=e,JSON.parse(lu(n))).splice(i,a),E=cu(e,a,o);t.find((function(e){return lu(e.pattern)===lu(d)}))||((d={pattern:d,appear:o,coverage:E}).patternScore=ou(d.coverage,a,e.length),d.patternScore>r?(r=d.patternScore,t=[d]):d.patternScore===r&&t.push(d))}}return t}};var Eu={TieBreaker:function(e,u){for(var n={},t=[],r=0,a=0;a<e.charts.length;a++){let u=e.charts[a];if(u.transform){let e=u.transform.filter((e=>e.filter)).map((e=>e.filter));for(var i=0;i<e.length;i++){let u=e[i];u.hasOwnProperty("field")&&u.hasOwnProperty("equal")&&(n[u.field]?n[u.field].push(u.equal):(n[u.field]=[u.equal],t.push({field:u.field,score:0})))}}}for(a=0;a<t.length;a++){for(i=1;i<n[t[a].field].length;i++)n[t[a].field][i-1]<n[t[a].field][i]?t[a].score+=1:n[t[a].field][i-1]>n[t[a].field][i]&&(t[a].score-=1);r+=Math.abs(t[a].score+.1)/(n[t[a].field].length-1+.1)}return{tiebreakCost:r=t.length>0?1-r/t.length:0,reasons:t}}};function fu(e){return e.mark.concat(e.transform).concat(e.encoding).map((function(e){return e.detail?"MODIFY_FILTER"===e.name?e.name+"("+JSON.stringify(e.detail.id)+")":e.name+"("+JSON.stringify(e.detail)+")":e.name})).sort().join("|")}var Au={sequence:async function(e,u,n,t){n||(n=Pe.DEFAULT_EDIT_OPS);var a=await async function(e,u,n){for(var t=[],r=0;r<u.length;r++)t.push(await au.transition(u[r],e,n,{omitIncludeRawDomin:!0}));return t}({mark:"null",encoding:{}},e,n);if(!u.fixFirst){e=[{mark:"null",encoding:{}}].concat(e)}var i=await async function(e,u){for(var n=[],t=0;t<e.length;t++){n.push([]);for(var r=0;r<e.length;r++)n[t].push(await au.transition(e[t],e[r],u,{omitIncludeRawDomin:!0}))}return n}(e,n);i=function(e){for(var u=[],n=e.reduce((function(e,n){for(var t=0;t<n.length;t++){e.push(n[t].cost);var r=fu(n[t]),a=u.map((function(e){return e.shorthand})).indexOf(r);n[t].id=-1===a?u.push({tr:n[t],shorthand:r})-1:a}return e}),[]),t=[...new Set(n)].map((function(e){return Number(e)})).sort((function(e,u){return e-u})),a=r.default.scaleOrdinal().domain(t).range([0,t.length]),i=0;i<e.length;i++)for(var o=0;o<e[i].length;o++)e[i][o].start=i,e[i][o].destination=o,e[i][o].rank=Math.floor(a(e[i][o].cost));return e.uniq=u,e}(i);for(var o=iu.TSP(i,"cost",!0===u.fixFirst?0:void 0).all.filter((function(e){return 0===e.sequence[0]})).map((function(u){for(var n=u.sequence,t=[],r=0;r<n.length-1;r++)t.push(i[n[r]][n[r+1]]);var o,c,s,l=t.map((function(e){return e.id})),d=du.PatternOptimizer(l,i.uniq),E={sequence:n,transitions:t,sumOfTransitionCosts:u.distance,patterns:d,globalWeightingTerm:d[0]?1-d[0].patternScore:1,charts:n.map((function(u){return e[u]}))},f=Eu.TieBreaker(E,a);return E.filterSequenceCost=f.tiebreakCost,E.filterSequenceCostReasons=f.reasons,E.sequenceCost=(o=E.sumOfTransitionCosts,c=E.globalWeightingTerm,s=f.tiebreakCost,(o+s/1e3)*c),E})).sort((function(e,u){return e.sequenceCost>u.sequenceCost?1:e.sequenceCost<u.sequenceCost?-1:e.sequence.join(",")>u.sequence.join(",")?1:-1})),c=o[0].sequenceCost,s=0;s<o.length&&o[s].sequenceCost===c;s++)o[s].isOptimum=!0;var l=o;return t&&t(l),l}};const{parsePredicateFilter:pu}=au;var Ou=function(e,u,n){!function(e){if(e.find((e=>e.name.indexOf("_COUNT")>=0))&&!e.find((e=>"AGGREGATE"===e.name)))throw new Mu("_COUNT encoding edit operations cannot be applied without AGGREGATE.")}(n);let t=n.reduce(((e,n)=>("mark"===n.type?e=Cu(e,u):"transform"===n.type?e=Fu(e,u,n):"encoding"===n.type&&(e=hu(e,u,n)),e)),Ye.duplicate(e));return function(e){let u=a.default.logger();const n=[],t=[];u.warn=e=>{n.push(e)},u.error=e=>{t.push(e)},i.default.compile(e,{logger:u});let r=!1;for(const u in e.encoding)if(e.encoding.hasOwnProperty(u)){const t=e.encoding[u];t.aggregate&&(r=!0),"*"!==t.field||t.aggregate||n.push("'*' field should innclude aggregate.")}if(r){Object.keys(e.encoding).filter((u=>"quantitative"===e.encoding[u].type&&!e.encoding[u].aggregate)).length>0&&n.push("Aggregate should be applied on all quantitative fields.")}if(n.length>0||t.length>0)throw new Bu("The resulted spec is not valid Vega-Lite Spec.",{warnings:n,errors:t})}(t),t};function Cu(e,u,n){let t=Ye.duplicate(e);return t.mark=u.mark,t}var Du=Cu;function Fu(e,u,n){let t=Ye.duplicate(e);const r=n.name.toLowerCase(),a=Ye.isArray(n.detail)?n.detail:[n.detail];return r.indexOf("filter")>=0?("REMOVE_FILTER"!==n.name&&"MODIFY_FILTER"!==n.name||t.transform.filter((e=>e.filter&&pu(e.filter)[0].id===n.detail.id)).forEach((e=>{if(t.transform){let u=t.transform.findIndex((u=>Ye.deepEqual(u,e)));t.transform.splice(u,1)}})),"ADD_FILTER"!==n.name&&"MODIFY_FILTER"!==n.name||u.transform.filter((e=>e.filter&&pu(e.filter)[0].id===n.detail.id)).forEach((e=>{t.transform?t.transform.find((u=>Ye.deepEqual(e,u)))||t.transform.push(e):t.transform=[e]}))):a.forEach((e=>{let a=t.encoding[e.channel];if(!a)throw new gu("Cannot apply ".concat(n.name,' since there is no "').concat(e.channel,'" channel.'));if("removed"===e.how)delete a[r];else{if("scale"===r&&a.type!==e.fieldType)throw new gu("Cannot apply ".concat(n.name,' since it requires "').concat(e.fieldType,'" field instead of "').concat(a.type,'".'));a[r]=u.encoding[e.channel][r]}})),t}var _u=Fu;function hu(e,u,n){let t=Ye.duplicate(e);if(0===n.name.indexOf("REMOVE")){let e=n.detail.before.channel;if(!t.encoding[e])throw new gu("Cannot apply ".concat(n.name,' since there is no "').concat(e,'" channel.'));delete t.encoding[e]}else if(0===n.name.indexOf("ADD")){let e=n.detail.after.channel;if(t.encoding[e])throw new gu("Cannot apply ".concat(n.name,' since "').concat(e,'" already exists.'));t.encoding[e]=Ye.duplicate(u.encoding[e])}else if(0===n.name.indexOf("MOVE")){let e=n.detail.before.channel,u=n.detail.after.channel;if(!t.encoding[e])throw new gu("Cannot apply ".concat(n.name,' since there is no "').concat(e,'" channel.'));if(t.encoding[u])throw new gu("Cannot apply ".concat(n.name,' since "').concat(u,'" already exists.'));t.encoding[u]=Ye.duplicate(t.encoding[e]),delete t.encoding[e]}else if(0===n.name.indexOf("MODIFY")){let e=n.detail.before.channel,u=n.detail.after.field,r=n.detail.after.type;if(!t.encoding[e])throw new gu("Cannot apply ".concat(n.name,' since there is no "').concat(e,'" channel.'));t.encoding[e].field=u,t.encoding[e].type=r}else if(0===n.name.indexOf("SWAP_X_Y")){if(!t.encoding.x||!t.encoding.y)throw new gu("Cannot apply ".concat(n.name,' since there is no "x" and "y" channels.'));{let e=Ye.duplicate(t.encoding.y);t.encoding.y=Ye.duplicate(t.encoding.x),t.encoding.x=e}}return t}var mu=hu;class gu extends Error{constructor(e){super(e),this.name="UnapplicableEditOPError"}}class Bu extends Error{constructor(e,u){super(e),this.name="InvalidVLSpecError",this.info=u}}class Mu extends Error{constructor(e){super(e),this.name="UnapplicableEditOpsError"}}var Tu={apply:Ou,applyMarkEditOp:Du,applyTransformEditOp:_u,applyEncodingEditOp:mu};const{copy:yu,deepEqual:vu,partition:Ru,permutate:Iu,union:Nu,intersection:Vu}=Ye,Lu=Tu.apply;var Su=async function(e,u,n,t,r=!1){if(n.length<t)throw new Pu(n.length,t);const a=Ru(n,t).reduce(((e,u)=>e.concat(Iu(u))),[]),i=[];let o=[];for(const n of a){let t=[yu(e)],r=yu(e),a=!0;for(let e=0;e<n.length;e++){const i=n[e];if(e===n.length-1){t.push(u);break}try{r=Lu(yu(r),u,i)}catch(e){if(["UnapplicableEditOPError","InvalidVLSpecError","UnapplicableEditOpsError"].indexOf(e.name)<0)throw e;a=!1,o.push({info:e,editOpPartition:n,invalidSpec:r});break}t.push(yu(r))}const c=await Uu(t);t=t.map(((e,u)=>0===u||u===t.length-1?e:wu(e,c,n[u-1]))),a&&bu(t)&&i.push({sequence:t,editOpPartition:n})}return r?{sequences:i,excludedPaths:o}:i};function wu(e,u,n){let t=yu(e),r=n.find((e=>"SORT"===e.name));for(const e in u)r&&r.detail.find((u=>u.channel===e))||u.hasOwnProperty(e)&&t.encoding[e]&&(t.encoding[e].scale||(t.encoding[e].scale={}),t.encoding[e].scale.domain=u[e],void 0!==t.encoding[e].scale.zero&&delete t.encoding[e].scale.zero);return t}async function Uu(e){const u=await Promise.all(e.map((e=>new a.default.View(a.default.parse(i.default.compile(e).spec),{renderer:"svg"}).runAsync())));let n=e.reduce(((e,n,t)=>{let r=Object.keys(n.encoding).map((e=>({channel:e,...n.encoding[e],runtimeScale:u[t]._runtime.scales[e]})));return 0===t?r:Vu(r,e,(e=>[e.channel,e.field||"",e.type||"",e.runtimeScale?e.runtimeScale.type:""].join("_")))}),[]).map((e=>({...e,domains:u.map((u=>u._runtime.scales[e.channel]?u._runtime.scales[e.channel].value.domain():void 0))})));return n=n.filter((e=>!e.domains.filter((e=>e)).reduce(((e,u)=>{if(vu(u,e))return u}),e.domains[0]))),n.reduce(((e,u)=>{if(!u.runtimeScale)return e;const n=u.type,t=u.domains;return"quantitative"===n?e[u.channel]=[Math.min(...t.map((e=>e[0]))),Math.max(...t.map((e=>e[1])))]:"nominal"===n||"ordinal"===n?e[u.channel]=t.reduce(((e,u)=>Nu(e,u)),[]):"temporal"===n&&(e[u.channel]=[Math.min(...t.map((e=>e[0]))),Math.max(...t.map((e=>e[1])))]),e}),{})}var xu=Uu;function bu(e){let u=e[0];for(let n=1;n<e.length;n++){const t=e[n];if(vu(u,t))return!1;u=e[n]}return!0}var Yu=bu;class Pu extends Error{constructor(e,u){super("Cannot enumerate ".concat(u," transitions for ").concat(e," edit operations. The number of transitions should lesser than the number of possible edit operations.")),this.name="CannotEnumStagesMoreThanTransitions"}}var Xu={enumerate:Su,getMergedScale:xu,validate:Yu};const{unique:ku}=Ye;const Gu={HEURISTIC_RULES:[{name:"filter-then-aggregate",type:"A-Then-B",editOps:["FILTER","AGGREGATE"],condition:(e,u)=>u.detail&&u.detail.find((e=>"added"===e.how)),score:1},{name:"disaggregate-then-filter",type:"A-Then-B",editOps:["AGGREGATE","FILTER"],condition:(e,u)=>e.detail&&e.detail.find((e=>"removed"===e.how)),score:1},{name:"filter-then-bin",type:"A-Then-B",editOps:["FILTER","BIN"],condition:(e,u)=>u.detail&&u.detail.find((e=>"added"===e.how)),score:1},{name:"unbin-then-filter",type:"A-Then-B",editOps:["BIN","FILTER"],condition:(e,u)=>e.detail&&e.detail.find((e=>"removed"===e.how)),score:1},{name:"no-aggregate-then-bin",type:"A-Then-B",editOps:["AGGREGATE","BIN"],condition:(e,u)=>e.detail&&e.detail.find((e=>"added"===e.how)),score:-1},{name:"no-unbin-then-disaggregate",type:"A-Then-B",editOps:["BIN","AGGREGATE"],condition:(e,u)=>u.detail&&u.detail.find((e=>"removed"===e.how)),score:-1},{name:"encoding(MODIFY)-then-aggregate",type:"A-Then-B",editOps:["ENCODING","AGGREGATE"],condition:(e,u)=>e.name.indexOf("MODIFY")>=0&&u.detail&&u.detail.find((e=>"added"===e.how)),score:1},{name:"disaggregate-then-encoding(MODIFY)",type:"A-Then-B",editOps:["AGGREGATE","ENCODING"],condition:(e,u)=>u.name.indexOf("MODIFY")>=0&&e.detail&&e.detail.find((e=>"removed"===e.how)),score:1},{name:"encoding(add)-then-aggregate",type:"A-Then-B",editOps:["ENCODING","AGGREGATE"],condition:(e,u)=>e.name.indexOf("ADD")>=0&&u.detail&&u.detail.find((e=>"added"===e.how)),score:1},{name:"disaggregate-then-encoding(remove)",type:"A-Then-B",editOps:["AGGREGATE","ENCODING"],condition:(e,u)=>u.name.indexOf("REMOVE")>=0&&e.detail&&e.detail.find((e=>"removed"===e.how)),score:1},{name:"no-mark-then-aggregate",type:"A-Then-B",editOps:["MARK","AGGREGATE"],condition:(e,u)=>u.detail&&u.detail.find((e=>"added"===e.how)),score:-1},{name:"no-disaggregate-then-mark",type:"A-Then-B",editOps:["AGGREGATE","MARK"],condition:(e,u)=>e.detail&&e.detail.find((e=>"removed"===e.how)),score:-1},{name:"modifying-with-scale",type:"A-With-B",editOps:["ENCODING.MODIFY","SCALE"],score:1},{name:"no-filtering-with-filtering",type:"A-With-B",editOps:["FILTER"],condition:e=>ku(e.FILTER,(e=>e.position)).length<e.FILTER.length,score:-1},{name:"bin-with-aggregate",type:"A-With-B",editOps:["AGGREGATE","BIN"],score:1}]}.HEURISTIC_RULES,{copy:qu,intersection:Wu}=Ye;function ju(e,u=Gu){return u.filter((u=>{let n=qu(u);for(let u=0;u<n.editOps.length;u++){const t=n.editOps[u];n[t]=[];for(let u=0;u<e.length;u++){let r=Hu(e[u],t);r.length>0&&(n[t]=[...n[t],...r.map((e=>({...e,position:u})))])}if(0===n[t].length)return!1}if("A-With-B"===n.type){if(0!==n.editOps.map((e=>n[e])).filter((e=>!e)).length)return!1;if(0===n.editOps.reduce(((e,u,t)=>{let r=n[u].map((e=>e.position));return 0===t?r:Wu(e,r)}),[]).length)return!1;if(u.condition){let e=n.editOps.reduce(((e,u)=>(e[u]=n[u],e)),{});return u.condition(e)}return!0}for(let e=0;e<n[n.editOps[0]].length;e++){const t=n[n.editOps[0]][e];for(let e=0;e<n[n.editOps[1]].length;e++){const r=n[n.editOps[1]][e];if(t.position>=r.position)return!1;if(u.condition&&!u.condition(t,r))return!1}}return!0}))}function Hu(e,u){return e.filter((e=>"TRANSFORM"===u?"transform"===e.type:"ENCODING"===u?"encoding"===e.type:"MARK"===u?"mark"===e.type:"ENCODING.MODIFY"===u?"encoding"===e.type&&e.name.indexOf("MODIFY")>=0:e.name.indexOf(u)>=0))}var Zu={evaluate:function(e){let u=ju(e,Gu);return{score:u.reduce(((e,u)=>e+u.score),0),satisfiedRules:u}},findRules:ju};const{copy:Ku}=Ye,{enumerate:Ju}=Xu,{evaluate:zu}=Zu,Qu=au.transition;async function $u(e,u,n,t){return(await Ju(e,u,n,t)).map((e=>({...e,eval:zu(e.editOpPartition)}))).sort(((e,u)=>u.eval.score-e.eval.score))}function en(e,u){if(!un(e)||!un(u))return{error:"Gemini++ cannot recommend keyframes for the given Vega-Lite charts."}}function un(e){return!(e.layer||e.hconcat||e.vconcat||e.concat||e.spec)&&!!(e.$schema&&e.$schema.indexOf("https://vega.github.io/schema/vega-lite")>=0)}var nn={path:async function(e,u,n){en(e,u);const t=await Qu(Ku(e),Ku(u)),r=[...t.mark,...t.transform,...t.encoding];let a={};if(void 0===n){for(let n=1;n<=r.length;n++)a[n]=await $u(e,u,r,n);return a}return await $u(e,u,r,n)},validateInput:en,isValidVLSpec:un};return{sequence:Au.sequence,transition:au.transition,apply:Tu.apply,path:nn.path}}));
//# sourceMappingURL=graphscape.min.js.map