From 10f69a176ffd50c700781db5433577c002d450bd Mon Sep 17 00:00:00 2001 From: Chris P Date: Thu, 20 Sep 2018 17:21:22 -0400 Subject: [PATCH 1/3] :horse_racing: prevent excessive setProps on app-wide clicks --- src/dash-table/components/ControlledTable/index.tsx | 11 +++++++++-- 1 file changed, 9 insertions(+), 2 deletions(-) diff --git a/src/dash-table/components/ControlledTable/index.tsx b/src/dash-table/components/ControlledTable/index.tsx index 1abe3dd8f..8533ed100 100644 --- a/src/dash-table/components/ControlledTable/index.tsx +++ b/src/dash-table/components/ControlledTable/index.tsx @@ -103,7 +103,14 @@ export default class ControlledTable extends Component { handleClickOutside = (event: any) => { const $el = this.$el; - if ($el && !$el.contains(event.target as Node)) { + if ($el && + !$el.contains(event.target as Node) && + /* + * setProps is expensive, it causes excessive re-rendering in Dash. + * so, only call when the table isn't already focussed, otherwise + * the app will excessively re-render on _every click on the page_ + */ + this.props.is_focused) { this.props.setProps({ is_focused: false }); } } @@ -752,4 +759,4 @@ export default class ControlledTable extends Component { )} ); } -} \ No newline at end of file +} From 96b7f37748fdf58836db74045127e1f466c9c186 Mon Sep 17 00:00:00 2001 From: Chris P Date: Thu, 20 Sep 2018 17:21:35 -0400 Subject: [PATCH 2/3] :package: rc21 build --- dash_table/bundle.js | 2 +- dash_table/demo.js | 2 +- dash_table/package.json | 2 +- package.json | 2 +- 4 files changed, 4 insertions(+), 4 deletions(-) diff --git a/dash_table/bundle.js b/dash_table/bundle.js index 402bd7f32..b34e1c0d6 100644 --- a/dash_table/bundle.js +++ b/dash_table/bundle.js @@ -9,7 +9,7 @@ window.dash_table=function(e){var t={};function n(r){if(t[r])return t[r].exports Licensed under the MIT License (MIT), see http://jedwatson.github.io/classnames */ -!function(){"use strict";var n={}.hasOwnProperty;function o(){for(var e=[],t=0;t(0,r.isEqualArgs)(n,o)?t:(n=o)&&(t=e(...o))},t.memoizeAll=function(e){const t=[];return(...n)=>{let o=t.find(e=>(0,r.isEqualArgs)(e.args,n));return(o||t[t.push({args:n,result:e(...n)})-1]).result}};var r=n(12)},function(e,t){e.exports=window.ReactDOM},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.defaultIsNully=t.SortDirection=void 0;var r=function(e){if(e&&e.__esModule)return e;var t={};if(null!=e)for(var n in e)Object.prototype.hasOwnProperty.call(e,n)&&(t[n]=e[n]);return t.default=e,t}(n(2));var o=t.SortDirection=void 0;!function(e){e.Ascending="asc",e.Descending="desc",e.None="none"}(o||(t.SortDirection=o={}));const i=t.defaultIsNully=(e=>void 0===e||null===e);t.default=((e,t,n=i)=>t.length?r.sortWith(r.map(e=>e.direction===o.Descending?r.comparator((t,r)=>{const o=e.columnId,i=t[o],u=r[o];return!n(i)&&(!!n(u)||i>u)}):r.comparator((t,r)=>{const o=e.columnId,i=t[o],u=r[o];return!n(i)&&(!!n(u)||i=0&&a.splice(t,1)}function h(e){var t=document.createElement("style");return void 0===e.attrs.type&&(e.attrs.type="text/css"),v(t,e.attrs),d(e,t),t}function v(e,t){Object.keys(t).forEach(function(n){e.setAttribute(n,t[n])})}function g(e,t){var n,r,o,i;if(t.transform&&e.css){if(!(i=t.transform(e.css)))return function(){};e.css=i}if(t.singleton){var a=s++;n=u||(u=h(t)),r=b.bind(null,n,a,!1),o=b.bind(null,n,a,!0)}else e.sourceMap&&"function"==typeof URL&&"function"==typeof URL.createObjectURL&&"function"==typeof URL.revokeObjectURL&&"function"==typeof Blob&&"function"==typeof btoa?(n=function(e){var t=document.createElement("link");return void 0===e.attrs.type&&(e.attrs.type="text/css"),e.attrs.rel="stylesheet",v(t,e.attrs),d(e,t),t}(t),r=function(e,t,n){var r=n.css,o=n.sourceMap,i=void 0===t.convertToAbsoluteUrls&&o;(t.convertToAbsoluteUrls||i)&&(r=l(r));o&&(r+="\n/*# sourceMappingURL=data:application/json;base64,"+btoa(unescape(encodeURIComponent(JSON.stringify(o))))+" */");var u=new Blob([r],{type:"text/css"}),s=e.href;e.href=URL.createObjectURL(u),s&&URL.revokeObjectURL(s)}.bind(null,n,t),o=function(){f(n),n.href&&URL.revokeObjectURL(n.href)}):(n=h(t),r=function(e,t){var n=t.css,r=t.media;r&&e.setAttribute("media",r);if(e.styleSheet)e.styleSheet.cssText=n;else{for(;e.firstChild;)e.removeChild(e.firstChild);e.appendChild(document.createTextNode(n))}}.bind(null,n),o=function(){f(n)});return r(e),function(t){if(t){if(t.css===e.css&&t.media===e.media&&t.sourceMap===e.sourceMap)return;r(e=t)}else o()}}e.exports=function(e,t){if("undefined"!=typeof DEBUG&&DEBUG&&"object"!=typeof document)throw new Error("The style-loader cannot be used in a non-browser environment");(t=t||{}).attrs="object"==typeof t.attrs?t.attrs:{},t.singleton||"boolean"==typeof t.singleton||(t.singleton=o()),t.insertInto||(t.insertInto="head"),t.insertAt||(t.insertAt="bottom");var n=p(e,t);return c(n,t),function(e){for(var o=[],i=0;ie===this.dataframe[t])||(this.__dataframe=n,this.__indices=o,this.target.update({viewportDataframe:n,viewportIndices:o}))}}},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e){let t=null,n=[];for(;e.length;){e=e.replace(/^\s+/,"");let o=r.default.filter(e=>t&&e.when&&-1!==e.when.indexOf(t.name));if(o.length||(o=r.default),!(t=o.find(t=>t.regexp.test(e))||null))return{lexemes:n,valid:!1,error:e};const i=(e.match(t.regexp)||[])[0];n.push({lexeme:t,value:i}),e=e.substring(i.length)}return{lexemes:n,valid:!0}};var r=function(e){return e&&e.__esModule?e:{default:e}}(n(17))},function(e,t,n){"use strict";function r(e){return void 0!==e&&null!==e&&"object"==typeof e&&e.constructor===Object}function o(e,t,n=!1){return e===t||i(Object.values(e),Object.values(t),n)}function i(e,t,n=!1){return!!e&&e.length===t.length&&!!e.every((e,u)=>{const s=t[u];return e===s||n&&(Array.isArray(e)&&Array.isArray(s)&&i(e,s,n)||r(e)&&r(s)&&o(e,s,n))})}Object.defineProperty(t,"__esModule",{value:!0}),t.isEqual=o,t.isEqualArgs=i},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r=function(e){return e&&e.__esModule?e:{default:e}}(n(3));class o{constructor(e){this.name=e}get rules(){const e=this.sheet;return Array.from(e.rules||e.cssRules)}addRule(e,t){this.sheet.addRule?this.sheet.addRule(e,t):this.sheet.insertRule(`${e} { ${t} }`,0)}deleteRule(e){this.sheet.deleteRule(e)}findRule(e){const t=this.rules,n=t.findIndex(t=>t.selectorText===e);return-1===n?null:{rule:t[n],index:n}}get sheet(){return(this.__stylesheet=this.__stylesheet||(()=>{const e=document.createElement("style");return e.type="text/css",e.id=this.name,document.getElementsByTagName("head")[0].appendChild(e),e})()).sheet}}class i{constructor(e){this.prefix=e,this.stylesheet=new o(`${e}-dynamic-inline.css`)}static unit(e,t="px"){return i.hasUnit(e)?e:`${e}${t}`}static hasUnit(e){return"string"==typeof e&&/^\d+(\.\d+)?(px|em|rem)$/.test(e)}deleteRule(e){e=`${this.prefix} ${e}`;const t=this.stylesheet.findRule(e);t&&this.stylesheet.deleteRule(t.index)}setRule(e,t){e=`${this.prefix} ${e}`;const n=this.stylesheet.findRule(e);if(n){if(n.rule.cssText===t||n.rule.cssText===`${e} { ${t} }`)return;this.stylesheet.deleteRule(n.index)}this.stylesheet.addRule(e,t),r.default.trace("stylesheet",e,t)}}t.default=i},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.colIsEditable=function(e,t){return e&&(!r.has("editable",t)||t.editable)};var r=function(e){if(e&&e.__esModule)return e;var t={};if(null!=e)for(var n in e)Object.prototype.hasOwnProperty.call(e,n)&&(t[n]=e[n]);return t.default=e,t}(n(2))},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.isPrintableChar=function(e){return 32===e||e>=48&&e<=57||e>=96&&e<=111||e>=186&&e<=192||e>=219&&e<=222||e>=226||e>=65&&e<=90},t.isMetaKey=function(e){return-1!==o.indexOf(e)},t.isNavKey=function(e){return-1!==u.indexOf(e)},t.isArrowKey=function(e){return-1!==i.indexOf(e)},t.isCtrlKey=function(e){const t=[];window.navigator.platform.includes("Mac")?t.push(r.COMMAND_LEFT,r.COMMAND_RIGHT,r.COMMAND_FIREFOX):t.push(r.CONTROL);return t.includes(e)},t.isCtrlMetaKey=function(e){return[r.CONTROL,r.COMMAND_LEFT,r.COMMAND_RIGHT,r.COMMAND_FIREFOX].includes(e)};const r=t.KEY_CODES={MOUSE_LEFT:1,MOUSE_RIGHT:3,MOUSE_MIDDLE:2,BACKSPACE:8,COMMA:188,INSERT:45,DELETE:46,END:35,ENTER:13,ESCAPE:27,CONTROL:17,COMMAND_LEFT:91,COMMAND_RIGHT:93,COMMAND_FIREFOX:224,ALT:18,HOME:36,PAGE_DOWN:34,PAGE_UP:33,PERIOD:190,SPACE:32,SHIFT:16,CAPS_LOCK:20,TAB:9,ARROW_RIGHT:39,ARROW_LEFT:37,ARROW_UP:38,ARROW_DOWN:40,F1:112,F2:113,F3:114,F4:115,F5:116,F6:117,F7:118,F8:119,F9:120,F10:121,F11:122,F12:123,A:65,X:88,C:67,V:86},o=[r.ARROW_DOWN,r.ARROW_UP,r.ARROW_LEFT,r.ARROW_RIGHT,r.HOME,r.END,r.DELETE,r.BACKSPACE,r.F1,r.F2,r.F3,r.F4,r.F5,r.F6,r.F7,r.F8,r.F9,r.F10,r.F11,r.F12,r.TAB,r.PAGE_DOWN,r.PAGE_UP,r.ENTER,r.ESCAPE,r.SHIFT,r.CAPS_LOCK,r.ALT],i=[r.ARROW_DOWN,r.ARROW_UP,r.ARROW_LEFT,r.ARROW_RIGHT],u=[...i,r.TAB,r.ENTER];t.isCtrlDown=(e=>(e.ctrlKey||e.metaKey)&&!e.altKey)},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.deleteRow=function(e,t){const n=t.active_cell,o=t.dataframe,i=t.end_cell,u=t.selected_cell,s=t.selected_rows,a=t.start_cell,l={dataframe:r.remove(e,1,o)};r.is(Array,n)&&n[0]===e&&(l.active_cell=[]);r.is(Array,i)&&i[0]===e&&(l.end_cell=[]);r.is(Array,u)&&u[0]===e&&(l.selected_cell=[]);r.is(Array,a)&&a[0]===e&&(l.start_cell=[0,0]);r.is(Array,s)&&r.contains(e,s)&&(l.selected_rows=r.without([e],s));return l},t.deleteColumn=function(e,t,n){const i=n.columns,u=n.dataframe;var s=o(e,t,n);const a=s.groupIndexFirst,l=s.groupIndexLast,c=r.slice(a,l+1,r.pluck("id",i));return{columns:r.remove(a,1+l-a,i),dataframe:r.map(r.omit(c),u),active_cell:[],end_cell:[],selected_cell:[],start_cell:[0]}},t.editColumnName=function(e,t,n){const i=n.columns;var u=o(e,t,n);const s=u.groupIndexFirst,a=u.groupIndexLast,l=window.prompt("Enter a new column name");let c=r.clone(i);return r.range(s,a+1).map(e=>{let n;n="Array"===r.type(i[e].name)?[e,"name",t]:[e,"name"],c=r.set(r.lensPath(n),l,c)}),{columns:c}};var r=function(e){if(e&&e.__esModule)return e;var t={};if(null!=e)for(var n in e)Object.prototype.hasOwnProperty.call(e,n)&&(t[n]=e[n]);return t.default=e,t}(n(2));function o(e,t,n){const o=n.columns;let i,u;"Null"!==r.type(t)?(i=e.name[t],u=r.pluck(t,r.pluck("name",o))):(i=e.name,u=r.pluck("name",o));const s=r.findIndex(r.propEq("id",e.id),o);let a=s,l=s;for(;u[a-1]===i;)a--;for(;u[l+1]===i;)l++;return{groupIndexFirst:a,groupIndexLast:l}}},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.LexemeType=void 0;var r=function(){return function(e,t){if(Array.isArray(e))return e;if(Symbol.iterator in Object(e))return function(e,t){var n=[],r=!0,o=!1,i=void 0;try{for(var u,s=e[Symbol.iterator]();!(r=(u=s.next()).done)&&(n.push(u.value),!t||n.length!==t);r=!0);}catch(e){o=!0,i=e}finally{try{!r&&s.return&&s.return()}finally{if(o)throw i}}return n}(e,t);throw new TypeError("Invalid attempt to destructure non-iterable instance")}}(),o=function(e){return e&&e.__esModule?e:{default:e}}(n(3));var i=t.LexemeType=void 0;!function(e){e.And="and",e.BlockClose="close-block",e.BlockOpen="open-block",e.BinaryOperator="logical-binary-operator",e.Expression="expression",e.Or="or",e.Operand="operand",e.UnaryNot="unary-not",e.UnaryOperator="logical-unary-operator"}(i||(t.LexemeType=i={}));const u={resolve:(e,t)=>{if(o.default.trace("resolve -> exp",e,t),/^('.*')|(".*")$/.test(t.value))return t.value.slice(1,t.value.length-1);if(!/^\w+\(.*\)$/.test(t.value))return e[t.value];{const e=t.value.match(/^(\w+)\((.*)\)$/);if(!e)throw Error();{var n=r(e,3);const t=n[1],o=n[2];switch(t){case"num":return parseInt(o,10);case"str":default:return o}}}},regexp:/^(((num|str)\([^()]*\))|'([^()']|\\')+'|"([^()"]|\\")+"|\w+)/},s=[{evaluate:(e,t)=>{o.default.trace("evalute -> &&",e,t);const n=t,r=n.left.lexeme.evaluate(e,n.left),i=n.right.lexeme.evaluate(e,n.right);return r&&i},name:i.And,priority:2,regexp:/^(and\s|&&)/i,syntaxer:(e,t,n)=>Object.assign({left:e.slice(0,n),right:e.slice(n+1)},t)},{evaluate:(e,t)=>{o.default.trace("evalute -> ||",e,t);const n=t;return n.left.lexeme.evaluate(e,n.left)||n.right.lexeme.evaluate(e,n.right)},name:i.Or,priority:3,regexp:/^(or\s|\|\|)/i,syntaxer:(e,t,n)=>Object.assign({left:e.slice(0,n),right:e.slice(n+1)},t)},{name:i.BlockClose,nesting:-1,regexp:/^\)/},{evaluate:(e,t)=>{o.default.trace("evaluate -> ()",e,t);const n=t;return n.block.lexeme.evaluate(e,n.block)},name:i.BlockOpen,nesting:1,priority:1,regexp:/^\(/,syntaxer:e=>Object.assign({block:e.slice(1,e.length-1)},e[0]),when:[i.UnaryNot]},Object.assign({name:i.Operand},u),{evaluate:(e,t)=>{o.default.trace("evaluate -> binary",e,t);const n=t,r=n.left.lexeme.resolve(e,n.left),i=n.right.lexeme.resolve(e,n.right);switch(o.default.trace(`opValue: ${r}, expValue: ${i}`),t.value.toLowerCase()){case"eq":case"=":return r===i;case"gt":case">":return r>i;case"ge":case">=":return r>=i;case"lt":case"<":return r=|<=|>|<|!=|=|ge|le|gt|lt|eq|ne)/i,syntaxer:e=>{var t=r(e,3);let n=t[0],o=t[1],i=t[2];return Object.assign({left:n,right:i},o)},when:[i.Operand]},{evaluate:(e,t)=>{o.default.trace("evaluate -> unary",e,t);const n=t,r=n.block.lexeme.resolve(e,n.block);switch(t.value.toLowerCase()){case"is even":return"number"==typeof r&&r%2==0;case"is nil":return void 0===r||null===r;case"is bool":return"boolean"==typeof r;case"is odd":return"number"==typeof r&&r%2==1;case"is num":return"number"==typeof r;case"is object":return null!==r&&"object"==typeof r;case"is str":return"string"==typeof r;case"is prime":return"number"==typeof r&&(e=>{if(2===e)return!0;if(e<2||e%2==0)return!1;for(let t=3;t*t<=e;t+=2)if(e%t==0)return!1;return!0})(r);default:throw new Error}},name:i.UnaryOperator,priority:0,regexp:/^((is nil)|(is odd)|(is even)|(is bool)|(is num)|(is object)|(is str)|(is prime))/i,syntaxer:e=>{var t=r(e,2);let n=t[0],o=t[1];return Object.assign({block:n},o)},when:[i.Operand]},{evaluate:(e,t)=>{o.default.trace("evaluate -> unary not",e,t);const n=t;return!n.block.lexeme.evaluate(e,n.block)},name:i.UnaryNot,priority:1.5,regexp:/^!/,syntaxer:e=>Object.assign({block:e.slice(1,e.length)},e[0]),when:[i.UnaryNot]},Object.assign({name:i.Expression,when:[i.BinaryOperator]},u)];t.default=s},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r=u(n(3)),o=u(n(11)),i=u(n(19));function u(e){return e&&e.__esModule?e:{default:e}}t.default=class{constructor(e){this.query=e,this.evaluate=(e=>{if(!this.isValid||!this.tree){const e=`unable to evaluate target: syntax tree is invalid for query=${this.query}`;throw r.default.error(e),new Error(e)}const t=this.tree.lexeme.evaluate;return!!t&&t(e,this.tree)}),this.filter=(e=>e.filter(this.evaluate)),this.result=(0,i.default)((0,o.default)(this.query))}get isValid(){return this.result.valid}get tree(){return this.result.tree}}},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r=function(e){return e&&e.__esModule?e:{default:e}}(n(3));const o=e=>{let t=0;const n=e.map(e=>{const n=Object.assign({},e,{nesting:t});return t+=e.lexeme.nesting||0,n}),i=n.filter(e=>0===e.nesting&&"number"==typeof e.lexeme.priority).sort((e,t)=>(t.lexeme.priority||-1)-(e.lexeme.priority||-1))[0];r.default.trace("parser -> pivot",i,e);const u=n.indexOf(i);if(i.lexeme.syntaxer){let t=i.lexeme.syntaxer(e,i,u);return Array.isArray(t.left)&&(t.left=o(t.left)),Array.isArray(t.right)&&(t.right=o(t.right)),Array.isArray(t.block)&&(t.block=o(t.block)),t}throw new Error(i.lexeme.name)};t.default=(e=>{const t=e.lexemes;if(!e.valid)return{valid:!1,error:`lexer -- ${e.error}`};try{return{tree:o(t),valid:!0}}catch(e){return{valid:!1,error:e}}})},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=((e,t=null)=>{if(t=t||(()=>{for(t=e;t&&"td"!==t.nodeName.toLowerCase();)t=t.parentElement;return t})(),!e||!t)return;let n=e;for(;"relative"!==getComputedStyle(n).position&&"sticky"!==getComputedStyle(n).position&&n.parentElement;)n=n.parentElement;let r=e;for(;"relative"!==getComputedStyle(r).position&&r.parentElement;)r=r.parentElement;const o=n.getBoundingClientRect(),i=r.getBoundingClientRect(),u=t.getBoundingClientRect(),s=u.left-o.left+n.scrollLeft,a=u.top-o.top+n.scrollTop+u.height;e.style.width=`${u.width}px`,e.style.top=`${a}px`,e.style.left=`${s}px`,e.style.position="absolute",u.top+u.height/2>i.bottom||u.top-u.height/2i.left+i.width?e.style.display="none":e.style.display="block"})},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r=n(1),o=function(e){return e&&e.__esModule?e:{default:e}}(r);class i extends r.PureComponent{constructor(e){super(e),this.handleChange=(e=>this.setState({value:e.target.value})),this.submit=(()=>this.state.value!==this.props.value&&this.props.submit(this.state.value)),this.state={value:e.value}}get propsWithDefaults(){return this.props}render(){var e=this.propsWithDefaults;const t=e.stopPropagation,n=e.updateOnBlur,r=e.updateOnSubmit;let i={onBlur:n?this.submit:void 0,onKeyDown:t?e=>e.stopPropagation():void 0,onSubmit:r?this.submit:void 0};return o.default.createElement("input",Object.assign({ref:"input",type:"text",value:this.state.value||"",onChange:this.handleChange},i))}}t.default=i,i.defaultProps={stopPropagation:!1,updateOnBlur:!0,updateOnSubmit:!0}},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r=Object.assign||function(e){for(var t=1;t=0||Object.prototype.hasOwnProperty.call(e,r)&&(n[r]=e[r]);return n}(this.props,[]);return function(e){c.forEach(function(t){return delete e[t]})}(o),o.className=this.props.inputClassName,o.id=this.state.inputId,o.style=n,u.default.createElement("div",{className:this.props.className,style:t},this.renderStyles(),u.default.createElement("input",r({},o,{ref:this.inputRef})),u.default.createElement("div",{ref:this.sizerRef,style:l},e),this.props.placeholder?u.default.createElement("div",{ref:this.placeHolderSizerRef,style:l},this.props.placeholder):null)}}]),t}();h.propTypes={className:s.default.string,defaultValue:s.default.any,extraWidth:s.default.oneOfType([s.default.number,s.default.string]),id:s.default.string,injectStyles:s.default.bool,inputClassName:s.default.string,inputRef:s.default.func,inputStyle:s.default.object,minWidth:s.default.oneOfType([s.default.number,s.default.string]),onAutosize:s.default.func,onChange:s.default.func,placeholder:s.default.string,placeholderIsMinWidth:s.default.bool,style:s.default.object,value:s.default.any},h.defaultProps={minWidth:1,injectStyles:!0},t.default=h},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.Table=void 0;var r=u(n(24)),o=u(n(3)),i=u(n(26));function u(e){return e&&e.__esModule?e:{default:e}}o.default.setDebugLevel(r.default.debugLevel),o.default.setLogLevel(r.default.logLevel),t.Table=i.default},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r=n(3),o=function(e){return e&&e.__esModule?e:{default:e}}(n(25));const i="dash_debug",u="dash_log";t.default=class{static get searchParams(){return new URL(window.location.href).searchParams||{get:()=>null}}static get debugLevel(){const e=this.searchParams.get(i)||o.default.get(i);return e&&r.DebugLevel[e]||r.DebugLevel.NONE}static get logLevel(){const e=this.searchParams.get(u)||o.default.get(u);return e&&r.LogLevel[e]||r.LogLevel.ERROR}}},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const r=864e5,o=63072e7;class i{static delete(e,t="",n="/"){let o=new Date((new Date).getTime()-r).toUTCString();document.cookie=`${e}=;expires=${o};domain=${t};path=${n}`}static get(e){if(!e.length)return;return e=e.toLowerCase(),(document.cookie.split(";").map(e=>{let t=e.split("=");return{id:t[0].trim(),value:t[1]}}).find(t=>e===t.id.toLocaleLowerCase())||{}).value}static set(e,t,n="",r="/"){let u=`${e}=${t};expires=${new Date((new Date).getTime()+o).toUTCString()};domain=${n};path=${r}`;i.get(e)&&i.delete(e,n,r),document.cookie=u}}t.default=i},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.propTypes=t.defaultProps=void 0;var r=n(1),o=s(r),i=s(n(0)),u=s(n(29));function s(e){return e&&e.__esModule?e:{default:e}}n(58);class a extends r.Component{render(){return o.default.createElement(u.default,this.props)}}t.default=a;const l=t.defaultProps={virtualization:"fe",virtualization_settings:{displayed_pages:1,current_page:0,page_size:250},navigation:"page",filtering:!1,filtering_settings:"",filtering_type:"basic",filtering_types:["basic"],sorting:!1,sorting_type:"single",sorting_settings:[],virtual_dataframe:[],virtual_dataframe_indices:[],column_conditional_dropdowns:[],column_static_dropdown:[],column_conditional_styles:[],column_static_style:[],row_conditional_styles:[],row_static_style:{},changed_data:{},dataframe:[],columns:[],editable:!1,active_cell:[],index_name:"",types:{},merged_styles:{},selected_cell:[[]],selected_rows:[],row_selectable:!1,table_style:[],base_styles:{numeric:{"text-align":"right","font-family":"'Droid Sans Mono', Courier, monospace"},string:{"text-align":"left"},input:{padding:0,margin:0,width:"80px",border:"none","font-size":"1rem"},"input-active":{outline:"#7FDBFF auto 3px"},table:{},thead:{},th:{},td:{}}},c=t.propTypes={active_cell:i.default.array,columns:i.default.arrayOf(i.default.object),dataframe:i.default.arrayOf(i.default.object),dataframe_previous:i.default.arrayOf(i.default.object),dataframe_timestamp:i.default.any,editable:i.default.bool,end_cell:i.default.arrayOf(i.default.number),id:i.default.string.isRequired,is_focused:i.default.bool,merge_duplicate_headers:i.default.bool,n_fixed_columns:i.default.number,n_fixed_rows:i.default.number,row_deletable:i.default.bool,row_selectable:i.default.oneOf(["single","multi",!1]),selected_cell:i.default.arrayOf(i.default.arrayOf(i.default.number)),selected_rows:i.default.arrayOf(i.default.number),setProps:i.default.any,start_cell:i.default.arrayOf(i.default.number),style_as_list_view:i.default.bool,table_style:i.default.arrayOf(i.default.shape({selector:i.default.string,rule:i.default.string})),virtualization:i.default.oneOf(["fe","be",!0,!1]),virtualization_settings:i.default.shape({displayed_pages:i.default.number,current_page:i.default.number,page_size:i.default.number}),navigation:i.default.string,column_conditional_dropdowns:i.default.arrayOf(i.default.shape({id:i.default.string,dropdowns:i.default.arrayOf(i.default.shape({condition:i.default.string,dropdown:i.default.arrayOf(i.default.shape({label:i.default.string,value:i.default.any}))}))})),column_static_dropdown:i.default.arrayOf(i.default.shape({id:i.default.string,dropdown:i.default.arrayOf(i.default.shape({label:i.default.string,value:i.default.any}))})),column_conditional_style:i.default.arrayOf(i.default.shape({id:i.default.string,styles:i.default.arrayOf(i.default.shape({condition:i.default.string,style:i.default.object}))})),column_static_style:i.default.arrayOf(i.default.shape({id:i.default.string,style:i.default.object})),row_conditional_styles:i.default.arrayOf(i.default.shape({condition:i.default.string,style:i.default.object})),row_static_style:i.default.object,filtering:i.default.oneOf(["fe","be",!0,!1]),filtering_settings:i.default.string,filtering_type:i.default.oneOf(["basic"]),filtering_types:i.default.arrayOf(i.default.oneOf(["basic"])),sorting:i.default.oneOf(["fe","be",!0,!1]),sorting_type:i.default.oneOf(["single","multi"]),sorting_settings:i.default.arrayOf(i.default.shape({columnId:i.default.oneOfType([i.default.string,i.default.number]),direction:i.default.oneOf(["asc","desc"])})),sorting_treat_empty_string_as_none:i.default.bool,virtual_dataframe:i.default.arrayOf(i.default.object),virtual_dataframe_indices:i.default.arrayOf(i.default.number),dropdown_properties:i.default.any};a.defaultProps=l,a.propTypes=c},function(e,t,n){"use strict";var r=n(28);function o(){}e.exports=function(){function e(e,t,n,o,i,u){if(u!==r){var s=new Error("Calling PropTypes validators directly is not supported by the `prop-types` package. Use PropTypes.checkPropTypes() to call them. Read more at http://fb.me/use-check-prop-types");throw s.name="Invariant Violation",s}}function t(){return e}e.isRequired=e;var n={array:e,bool:e,func:e,number:e,object:e,string:e,symbol:e,any:e,arrayOf:t,element:e,instanceOf:t,node:e,objectOf:t,oneOf:t,oneOfType:t,shape:t,exact:t};return n.checkPropTypes=o,n.PropTypes=n,n}},function(e,t,n){"use strict";e.exports="SECRET_DO_NOT_PASS_THIS_OR_YOU_WILL_BE_FIRED"},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r=n(1),o=c(r),i=function(e){if(e&&e.__esModule)return e;var t={};if(null!=e)for(var n in e)Object.prototype.hasOwnProperty.call(e,n)&&(t[n]=e[n]);return t.default=e,t}(n(2)),u=n(5),s=c(n(30)),a=c(n(34)),l=c(n(50));function c(e){return e&&e.__esModule?e:{default:e}}n(51),n(54),n(56);t.default=class extends r.Component{constructor(e){super(e),this.__adapter=(0,u.memoizeOne)(()=>new l.default(this)),this.__setProps=(0,u.memoizeOne)(e=>e?t=>{if(i.has("dataframe",t)){const e=this.props.dataframe;t.dataframe_timestamp=Date.now(),t.dataframe_previous=e}e(t)}:e=>this.setState(e)),this.__virtualizer=(0,u.memoizeOne)((e,t)=>s.default.getVirtualizer(this.adapter))}get setProps(){return this.__setProps(this.props.setProps)}render(){const e=this.setProps,t=this.virtualizer;return t.refresh(),o.default.createElement(a.default,Object.assign({},i.mergeAll([this.props,this.state,{setProps:e,virtualizer:t}])))}get adapter(){return this.__adapter()}get virtualizer(){var e=this.props;const t=e.virtualization,n=e.virtualization_settings;return this.__virtualizer(t,n)}}},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r=u(n(31)),o=u(n(32)),i=u(n(33));function u(e){return e&&e.__esModule?e:{default:e}}t.default=class{static getVirtualizer(e){switch(e.virtualization){case!1:return new i.default(e);case!0:case"fe":return new o.default(e);case"be":return new r.default(e);default:throw new Error(`Unknown virtualization type: '${e.virtualization}'`)}}}},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r=function(e){return e&&e.__esModule?e:{default:e}}(n(10));t.default=class extends r.default{constructor(e){super(e)}getDataframe(){var e=this.target;return{dataframe:e.dataframe,indices:e.indices}}get offset(){return 0}loadNext(){let e=this.target.settings;e.current_page++,this.target.update({settings:e})}loadPrevious(){let e=this.target.settings;e.current_page<=0||(e.current_page--,this.target.update({settings:e}))}}},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r=function(e){return e&&e.__esModule?e:{default:e}}(n(10));t.default=class extends r.default{constructor(e){super(e)}getDataframe(){var e=this.target;let t=e.settings,n=e.dataframe,r=e.indices,o=Math.min(t.current_page,Math.floor(n.length/t.page_size));return this.firstIndex=t.page_size*o,this.lastIndex=Math.min(this.firstIndex+t.displayed_pages*t.page_size,n.length),{dataframe:n.slice(this.firstIndex,this.lastIndex),indices:r.slice(this.firstIndex,this.lastIndex)}}get offset(){return this.firstIndex}loadNext(){var e=this.target;let t=e.settings,n=e.dataframe,r=Math.floor(n.length/t.page_size);t.current_page>=r||(t.current_page++,this.target.update({settings:t}))}loadPrevious(){let e=this.target.settings;e.current_page<=0||(e.current_page--,this.target.update({settings:e}))}}},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r=function(e){if(e&&e.__esModule)return e;var t={};if(null!=e)for(var n in e)Object.prototype.hasOwnProperty.call(e,n)&&(t[n]=e[n]);return t.default=e,t}(n(2)),o=function(e){return e&&e.__esModule?e:{default:e}}(n(10));t.default=class extends o.default{constructor(e){super(e),this.refresh()}getDataframe(){let e=this.target.dataframe;return{dataframe:e,indices:r.range(0,e.length)}}get offset(){return 0}loadNext(){}loadPrevious(){}}},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r=n(1),o=m(r),i=function(e){if(e&&e.__esModule)return e;var t={};if(null!=e)for(var n in e)Object.prototype.hasOwnProperty.call(e,n)&&(t[n]=e[n]);return t.default=e,t}(n(2)),u=m(n(13)),s=n(14),a=n(15),l=n(35),c=n(36),p=m(c),d=m(n(3)),f=n(5),h=m(n(11)),v=m(n(39)),g=m(n(42)),y=m(n(20)),b=m(n(46));function m(e){return e&&e.__esModule?e:{default:e}}const x=i.sort((e,t)=>e-t);t.default=class extends r.Component{constructor(e){super(e),this.getLexerResult=(0,f.memoizeOne)(h.default),this.handleClickOutside=(e=>{const t=this.$el;t&&!t.contains(e.target)&&this.props.setProps({is_focused:!1})}),this.handlePaste=(e=>{const t=this.$el;t&&t.contains(document.activeElement)&&this.onPaste(e)}),this.handleResize=(()=>{var e=this.refs;const t=e.r0c0,n=e.r0c1,r=e.r1c0,o=e.r1c1;let i=n.querySelectorAll("tr");t.querySelectorAll("tr").forEach((e,t)=>{const n=i[t];e.style.height=getComputedStyle(n).height});let u=o.querySelectorAll("tr > th:first-of-type");r.querySelectorAll("tr > th:first-of-type").forEach((e,t)=>{const n=u[t].parentElement;e.parentElement.style.height=getComputedStyle(n).height});const s=o.querySelector("tr > td:first-of-type");if(s){const e=s.parentElement;this.stylesheet.setRule(".cell-1-0 tr",`height: ${getComputedStyle(e).height}`)}}),this.handleKeyDown=(e=>{var t=this.props;const n=t.active_cell,r=t.columns,o=t.setProps,i=t.is_focused,u=t.editable;if(d.default.trace(`handleKeyDown: ${e.key}`),(0,a.isCtrlMetaKey)(e.keyCode))return;const l=(0,a.isCtrlDown)(e);l&&e.keyCode===a.KEY_CODES.V||e.keyCode===a.KEY_CODES.C&&l&&!i||(e.keyCode!==a.KEY_CODES.ESCAPE?e.keyCode!==a.KEY_CODES.ENTER||i||!(0,s.colIsEditable)(u,r[n[1]])?i&&e.keyCode!==a.KEY_CODES.TAB&&e.keyCode!==a.KEY_CODES.ENTER||((0,a.isNavKey)(e.keyCode)?this.switchCell(e):e.keyCode===a.KEY_CODES.BACKSPACE||e.keyCode===a.KEY_CODES.DELETE?this.deleteCell(e):this.props.is_focused||!(0,s.colIsEditable)(u,r[n[1]])||(0,a.isMetaKey)(e.keyCode)||o({is_focused:!0})):o({is_focused:!0}):o({is_focused:!1}))}),this.switchCell=(e=>{const t=e;var n=this.props;const r=n.active_cell,o=n.columns,u=n.row_deletable,s=n.row_selectable,l=n.selected_cell,c=n.setProps,p=n.virtualizer.dataframe;e.preventDefault(),this.$el.focus();const d=l.length>1,f=t.keyCode===a.KEY_CODES.ENTER||t.keyCode===a.KEY_CODES.TAB;if(d&&f)return void c({is_focused:!1,active_cell:this.getNextCell(t,{currentCell:r,restrictToSelection:!0})});if(!t.shiftKey){const e=this.getNextCell(t,{currentCell:r,restrictToSelection:!1});return void c({is_focused:!1,selected_cell:[e],active_cell:e})}let h=[],v=[];const g=x(i.uniq(i.pluck(0,l))),y=x(i.uniq(i.pluck(1,l))),b=g[0],m=y[0],E=g[g.length-1],w=y[y.length-1],_=(u?1:0)+(s?1:0),O=[];o.forEach((e,t)=>{e.hidden||O.push(t+_)});const S=t.keyCode===a.KEY_CODES.ARROW_DOWN||t.keyCode===a.KEY_CODES.ENTER,C=t.keyCode===a.KEY_CODES.ARROW_UP,A=t.keyCode===a.KEY_CODES.ARROW_RIGHT||t.keyCode===a.KEY_CODES.TAB,k=t.keyCode===a.KEY_CODES.ARROW_LEFT;S&&r[0]>b?v=y.map(e=>[b,e]):S&&E!==p.length-1?h=y.map(e=>[E+1,e]):C&&r[0][E,e]):C&&b>0?h=y.map(e=>[b-1,e]):k&&r[1][e,w]):k&&m>0?h=g.map(e=>[e,m-1]):A&&r[1]>m?v=g.map(e=>[e,m]):A&&w+1<=i.last(O)&&(h=g.map(e=>[e,w+1])),c({is_focused:!1,selected_cell:i.without(v,i.uniq(i.concat(h,l)))})}),this.deleteCell=(e=>{var t=this.props;const n=t.columns,r=t.dataframe,o=t.editable,u=t.row_deletable,a=t.row_selectable,l=t.selected_cell,c=t.setProps,p=t.virtual_dataframe_indices;e.preventDefault();let d=r;const f=(u?1:0)+(a?1:0);i.map(e=>[p[e[0]],e[1]-f],l).forEach(e=>{(0,s.colIsEditable)(o,n[e[1]])&&(d=i.set(i.lensPath([e[0],n[e[1]].id]),"",d))}),c({dataframe:d})}),this.getNextCell=((e,{restrictToSelection:t,currentCell:n})=>{var r=this.props;const o=r.columns,u=r.row_deletable,s=r.row_selectable,c=r.selected_cell,p=r.virtualizer.dataframe,d=e,f=[],h=(u?1:0)+(s?1:0);switch(t||o.forEach((e,t)=>{e.hidden||f.push(t+h)}),d.keyCode){case a.KEY_CODES.ARROW_LEFT:return t?(0,l.selectionCycle)([n[0],n[1]-1],c):[n[0],i.max(f[0],f[i.indexOf(n[1],f)-1])];case a.KEY_CODES.ARROW_RIGHT:case a.KEY_CODES.TAB:return t?(0,l.selectionCycle)([n[0],n[1]+1],c):[n[0],i.min(i.last(f),f[i.indexOf(n[1],f)+1])];case a.KEY_CODES.ARROW_UP:return t?(0,l.selectionCycle)([n[0]-1,n[1]],c):[i.max(0,n[0]-1),n[1]];case a.KEY_CODES.ARROW_DOWN:case a.KEY_CODES.ENTER:return t?(0,l.selectionCycle)([n[0]+1,n[1]],c):[i.min(p.length-1,n[0]+1),n[1]];default:throw new Error(`Table.getNextCell: unknown navigation keycode ${d.keyCode}`)}}),this.onCopy=(e=>{var t=this.props;const n=t.columns,r=t.row_deletable,o=t.row_selectable,u=t.selected_cell,s=t.virtualizer.dataframe,a=(r?1:0)+(o?1:0),l=i.map(e=>[e[0],e[1]-a],u);v.default.toClipboard(e,l,n,s),this.$el.focus()}),this.onPaste=(e=>{var t=this.props;const n=t.active_cell,r=t.columns,o=t.dataframe,i=t.editable,u=t.filtering_settings,s=t.row_deletable,a=t.row_selectable,l=t.setProps,c=t.sorting_settings,p=t.virtual_dataframe_indices;if(!i)return;const d=(s?1:0)+(a?1:0),f=[n[0],n[1]-d],h=v.default.fromClipboard(e,f,p,r,o,!0,!c.length||!u.length);h&&l(h)}),this.loadNext=(()=>{this.props.virtualizer.loadNext()}),this.loadPrevious=(()=>{this.props.virtualizer.loadPrevious()}),this.onContainerScroll=(e=>{if(!this.props.n_fixed_columns)return;const t=this.refs.spreadsheet;e.target===t&&this.stylesheet.setRule(".frozen-left",`margin-top: ${-e.target.scrollTop}px;`)}),this.applyStyle=((e,t,n)=>{let r=0;t&&(this.stylesheet.setRule(`.dash-spreadsheet-inner td.column-${r}`,"width: 30px; max-width: 30px; min-width: 30px;"),this.stylesheet.setRule(`.dash-spreadsheet-inner th.column-${r}`,"width: 30px; max-width: 30px; min-width: 30px;"),++r),n&&(this.stylesheet.setRule(`.dash-spreadsheet-inner td.column-${r}`,"width: 30px; max-width: 30px; min-width: 30px;"),this.stylesheet.setRule(`.dash-spreadsheet-inner th.column-${r}`,"width: 30px; max-width: 30px; min-width: 30px;"),++r),i.forEach(e=>{const t=u.default.unit(e.width||c.DEFAULT_CELL_WIDTH,"px");this.stylesheet.setRule(`.dash-spreadsheet-inner td.column-${r}`,`width: ${t}; max-width: ${t}; min-width: ${t};`),this.stylesheet.setRule(`.dash-spreadsheet-inner th.column-${r}`,`width: ${t}; max-width: ${t}; min-width: ${t};`),++r},e)}),this.renderFragment=(e=>e?o.default.createElement("table",{tabIndex:-1},o.default.createElement("tbody",null,e.map((e,t)=>o.default.createElement("tr",{key:`row-${t}`},e)))):null),this.handleSetFilter=(e=>this.props.setProps({filtering_settings:e})),this.getCells=(()=>[...p.default.createHeaders(this.props),...this.filterFactory.createFilters(),...this.cellFactory.createCells()]),this.getFragments=((e,t,n)=>{const r=t?i.map(e=>e.splice(0,i.reduceWhile(e=>e.count(e.cells++,e.count+=t.props.colSpan||1,e),{cells:0,count:0},e).cells),e):null,o=n?e.splice(0,n):null,u=n&&r?r.splice(0,n):null;return[[this.renderFragment(u),this.renderFragment(o)],[this.renderFragment(r),this.renderFragment(e)]]}),this.handleDropdown=(()=>{const e=this.refs.r1c1;(0,y.default)(e.querySelector(".Select-menu-outer"))}),this.onScroll=(e=>{const t=this.refs.r0c1;d.default.trace(`ControlledTable fragment scrolled to (left,top)=(${e.target.scrollLeft},${e.target.scrollTop})`),t.style.marginLeft=`${-e.target.scrollLeft}px`,this.handleDropdown()}),this.cellFactory=new g.default(()=>this.props),this.filterFactory=new b.default(()=>{var e=this.props;const t=e.row_deletable,n=e.row_selectable,r=(t?1:0)+(n?1:0);return{columns:this.props.columns,filtering:this.props.filtering,filtering_settings:this.props.filtering_settings,filtering_type:this.props.filtering_type,id:this.props.id,offset:r,setFilter:this.handleSetFilter}}),this.stylesheet=new u.default(`#${e.id}`)}get lexerResult(){const e=this.props.filtering_settings;return this.getLexerResult(e)}componentDidMount(){this.props.selected_cell.length&&!i.contains(this.props.active_cell,this.props.selected_cell)&&this.props.setProps({active_cell:this.props.selected_cell[0]}),window.addEventListener("resize",this.handleResize),document.addEventListener("paste",this.handlePaste),document.addEventListener("mousedown",this.handleClickOutside)}componentWillUnmount(){window.removeEventListener("resize",this.handleResize),document.removeEventListener("mousedown",this.handleClickOutside),document.removeEventListener("paste",this.handlePaste)}componentWillUpdate(){const e=this.props.table_style;i.forEach(({selector:e,rule:t})=>{this.stylesheet.setRule(e,t)},e)}componentDidUpdate(){this.handleResize(),this.handleDropdown()}get $el(){return document.getElementById(this.props.id)}get displayPagination(){var e=this.props;const t=e.dataframe,n=e.navigation,r=e.virtualization,o=e.virtualization_settings;return"page"===n&&("fe"===r&&o.page_sizeo.default.createElement("div",{key:`r${t}`,ref:`r${t}`,className:`row row-${t}`,onScroll:this.onScroll},e.map((e,n)=>o.default.createElement("div",{key:n,ref:`r${t}c${n}`,className:`cell cell-${t}-${n}`},e)))))),this.displayPagination?o.default.createElement("div",null,o.default.createElement("button",{className:"previous-page",onClick:this.loadPrevious},"Previous"),o.default.createElement("button",{className:"next-page",onClick:this.loadNext},"Next")):null)}}},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r=function(){return function(e,t){if(Array.isArray(e))return e;if(Symbol.iterator in Object(e))return function(e,t){var n=[],r=!0,o=!1,i=void 0;try{for(var u,s=e[Symbol.iterator]();!(r=(u=s.next()).done)&&(n.push(u.value),!t||n.length!==t);r=!0);}catch(e){o=!0,i=e}finally{try{!r&&s.return&&s.return()}finally{if(o)throw i}}return n}(e,t);throw new TypeError("Invalid attempt to destructure non-iterable instance")}}();t.selectionCycle=function(e,t){const n=o.uniq(o.pluck(0,t)).sort((e,t)=>e-t),i=o.uniq(o.pluck(1,t)).sort((e,t)=>e-t),u=n[0],s=i[0],a=n[n.length-1],l=i[i.length-1];var c=r(e,2);const p=c[0],d=c[1],f=[p,d];p>a&&(f[0]=u,f[1]=d+1>l?s:d+1);pl&&(f[1]=s,f[0]=p+1>a?u:p+1);dArray.isArray(e.name)?e.name.length:1,h=(e,t)=>Array.isArray(e.name)?e.name[t]:"";class v{static getSorting(e,t){const n=o.find(t=>t.columnId===e,t);return n?n.direction:u.SortDirection.None}static doSort(e,t){return()=>{const n=t.sorting_settings,r=t.sorting_type;let o;switch(v.getSorting(e,n)){case u.SortDirection.Descending:o=u.SortDirection.Ascending;break;case u.SortDirection.Ascending:o=u.SortDirection.None;break;case u.SortDirection.None:default:o=u.SortDirection.Descending}const i="single"===r?a.default:s.default;t.setProps({sorting_settings:i(n,{columnId:e,direction:o})})}}static getSortingIcon(e,t){const n=t.sorting_settings;switch(v.getSorting(e,n)){case u.SortDirection.Descending:return"↑";case u.SortDirection.Ascending:return"↓";case u.SortDirection.None:default:return"↕"}}static createHeaderCells(e){const t=e.columns,n=e.columnRowIndex,u=e.labels,s=e.mergeCells,a=e.n_fixed_columns,c=e.offset,p=e.rowSorting,f=e.virtualization;let h=[];if(s){h=[0];let e=0;u.forEach((n,r)=>{t[r].hidden||n===u[e]||(h.push(r),e=r)})}else h=o.range(0,t.length);const g=t.filter(e=>!e.hidden);return o.filter(e=>!!e,h.map((y,b)=>{const m=t[y];if(m.hidden)return null;const x=g.indexOf(m)+c;let E;if(s){const e=o.slice(y,h[b+1]||1/0,t).filter(o.propEq("hidden",!0)).length;E=y===o.last(h)?u.length-y-e:h[b+1]-y-e}else E=1;const w=g.indexOf(m),_=`calc(${g.filter((e,t)=>!e.hidden&&t>=w&&ti.default.unit(e.width||d,"px")).join(" + ")})`;return r.default.createElement("th",{key:`header-cell-${y}`,colSpan:E,className:`column-${y+c} `+(y===t.length-1||y===o.last(h)?"cell--right-last ":""),style:x{(0,n.setProps)(l.editColumnName(e,t,n))}}(m,n,e)},"✎"):"",m.deletable&&"be"!==f&&"Boolean"===o.type(m.deletable)||"Number"===o.type(m.deletable)&&m.deletable===n?r.default.createElement("span",{className:"column-header--delete",onClick:function(e,t,n){return()=>{(0,n.setProps)(l.deleteColumn(e,t,n))}}(m,n,e)},"×"):"",r.default.createElement("span",null,u[y]))}))}static createDeletableHeader(e){return e.row_deletable?r.default.createElement("th",{key:"delete",className:"expanded-row--empty-cell",style:{width:"30px",maxWidth:"30px",minWidth:"30px"}}):null}static createSelectableHeader(e){return e.row_selectable?r.default.createElement("th",{key:"select",className:"expanded-row--empty-cell",style:{width:"30px",maxWidth:"30px",minWidth:"30px"}}):null}static createHeaders(e){let t=e.columns,n=e.dataframe,r=e.sorting,i=e.merge_duplicate_headers,u=e.n_fixed_columns,s=e.row_deletable,a=e.row_selectable,l=e.setProps,c=e.sorting_settings,p=e.sorting_type,d=e.virtualization;const g=(s?1:0)+(a?1:0),y=this.createDeletableHeader(e),b=this.createSelectableHeader(e),m=Math.max.apply(Math,t.map(f));let x;return x=1===m?[[...y?[y]:[],...b?[b]:[],...v.createHeaderCells({columns:t,columnRowIndex:0,dataframe:n,labels:o.pluck("name",t),n_fixed_columns:u,offset:g,rowSorting:r,setProps:l,sorting_settings:c,sorting_type:p,virtualization:d})]]:o.range(0,m).map(e=>[...y?[y]:[],...b?[b]:[],...v.createHeaderCells({columns:t,columnRowIndex:e,dataframe:n,labels:t.map(t=>o.isNil(t.name)&&e===m-1?t.id:h(t,e)),n_fixed_columns:u,offset:g,rowSorting:!!r&&e+1===m,mergeCells:i&&e+1!==m,setProps:l,sorting_settings:c,sorting_type:p,virtualization:d})])}}t.default=v},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r=function(e){if(e&&e.__esModule)return e;var t={};if(null!=e)for(var n in e)Object.prototype.hasOwnProperty.call(e,n)&&(t[n]=e[n]);return t.default=e,t}(n(2)),o=function(e){return e&&e.__esModule?e:{default:e}}(n(3)),i=n(7);t.default=((e,t)=>{if(o.default.trace("multi - updateSettings",e,t),e=r.clone(e),t.direction===i.SortDirection.None){const n=r.findIndex(e=>e.columnId===t.columnId,e);-1!==n&&e.splice(n,1)}else{const n=r.find(e=>e.columnId===t.columnId,e);n?n.direction=t.direction:e.push(t)}return e})},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r=function(e){return e&&e.__esModule?e:{default:e}}(n(3)),o=n(7);t.default=((e,t)=>(r.default.trace("single - updateSettings",e,t),t.direction===o.SortDirection.None?[]:[t]))},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r=function(e){if(e&&e.__esModule)return e;var t={};if(null!=e)for(var n in e)Object.prototype.hasOwnProperty.call(e,n)&&(t[n]=e[n]);return t.default=e,t}(n(2)),o=a(n(40)),i=a(n(41)),u=a(n(3)),s=n(14);function a(e){return e&&e.__esModule?e:{default:e}}t.default=class{static toClipboard(e,t,n,s){const a=r.uniq(r.pluck(0,t).sort((e,t)=>e-t)),l=r.uniq(r.pluck(1,t).sort((e,t)=>e-t)),c=r.slice(r.head(a),r.last(a)+1,s).map(e=>r.props(l,r.props(r.pluck("id",n),e))),p=o.default.prototype.stringify(c);u.default.trace("TableClipboard -- set clipboard data: ",p),i.default.set(e,p)}static fromClipboard(e,t,n,a,l,c=!0,p=!0){const d=i.default.get(e);if(u.default.trace("TableClipboard -- get clipboard data: ",d),!d)return;const f=o.default.prototype.parse(d);let h=l;const v=a;if(c&&f[0].length+t[1]>=a.length)for(let e=a.length;et[`Column ${e}`]="");p&&u.default.debug("Clipboard -- Sorting or filtering active, do not create new rows");const g=n[t[0]];if(p&&f.length+g>=l.length){const e={};a.forEach(t=>e[t.id]=""),h=r.concat(h,r.repeat(e,f.length+g-l.length))}return f.forEach((e,o)=>e.forEach((e,i)=>{const u=t[0]+o;if(n.length<=t[0]+o)return;const a=n[u],l=t[1]+i,c=v[l];c&&(0,s.colIsEditable)(!0,c)&&(h=r.set(r.lensPath([a,c.id]),e,h))})),{dataframe:h,columns:v}}}},function(e,t){!function(t){"use strict";function n(){}function r(e){return e.split('"').length-1}n.prototype=Object.create(Object.prototype,{parse:{value:function(e){var t,n,o,i,u,s,a,l=[],c=0;for((o=e.split("\n")).length>1&&""===o[o.length-1]&&o.pop(),t=0,n=o.length;t0&&(u+="\t"),"string"==typeof(i=e[t][r])?i.indexOf("\n")>-1?u+='"'+i.replace(/"/g,'""')+'"':u+=i:u+=null===i||void 0===i?"":i;u+="\n"}return u},enumerable:!0,configurable:!1,writable:!1}}),void 0!==e&&e.exports?e.exports=n:t.SheetClip=n}(this)},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});t.default=class{static set(e,t){e.clipboardData.setData("text/plain",t),e.preventDefault()}static get(e){let t;return t=e.clipboardData?e.clipboardData.getData("text/plain"):void 0}}},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r=a(n(2)),o=s(n(1)),i=s(n(43)),u=a(n(16));function s(e){return e&&e.__esModule?e:{default:e}}function a(e){if(e&&e.__esModule)return e;var t={};if(null!=e)for(var n in e)Object.prototype.hasOwnProperty.call(e,n)&&(t[n]=e[n]);return t.default=e,t}t.default=class{constructor(e){this.propsFn=e,this.handlers=new Map,this.isCellSelected=((e,t,n)=>e&&r.contains([t,n],e)),this.getEventHandler=((e,t,n)=>{const r=this.handlers.get(e)||this.handlers.set(e,new Map).get(e),o=r.get(t)||r.set(t,new Map).get(t);return o.get(n)||o.set(n,e.bind(this,t,n)).get(n)}),this.handleClick=((e,t,n)=>{var o=this.props;const i=o.columns,u=o.editable,s=o.is_focused,a=o.row_deletable,l=o.row_selectable,c=o.selected_cell,p=o.setProps,d=this.isCellSelected(c,e,t);if(!u)return;if(s||n.preventDefault(),d)return;const f=(a?1:0)+(l?1:0);n.preventDefault();const h=[e,t+f],v={is_focused:!1,active_cell:h},g=[];i.forEach((e,t)=>{e.hidden||g.push(t+f)});const y=r.uniq(r.pluck(0,c)).sort((e,t)=>e-t),b=r.uniq(r.pluck(1,c)).sort((e,t)=>e-t),m=y[0],x=b[0];n.shiftKey?v.selected_cell=r.xprod(r.range(r.min(m,h[0]),r.max(m,h[0])+1),r.range(r.min(x,h[1]),r.max(x,h[1])+1)).filter(e=>r.contains(e[1],g)):v.selected_cell=[h],p(v)}),this.handleDoubleClick=((e,t,n)=>{var r=this.props;const o=r.editable,i=r.is_focused,u=r.row_deletable,s=r.row_selectable,a=r.setProps;if(!o)return;const l=[e,t+((u?1:0)+(s?1:0))];i||(n.preventDefault(),a({selected_cell:[l],active_cell:l,is_focused:!0}))}),this.handleChange=((e,t,n)=>{var o=this.props;const i=o.columns,u=o.dataframe,s=o.editable,a=o.setProps,l=i[t];s&&a({dataframe:r.set(r.lensPath([e,l.id]),n,u)})}),this.handlePaste=(e=>{e.preventDefault()})}get props(){return this.propsFn()}rowSelectCell(e){var t=this.props;const n=t.setProps,i=t.selected_rows,u=t.row_selectable;return u?o.default.createElement("td",{key:"select",className:"select-cell",style:{width:"30px",maxWidth:"30px",minWidth:"30px"}},o.default.createElement("input",{type:"single"===u?"radio":"checkbox",name:"row-select",checked:r.contains(e,i),onChange:()=>n({selected_rows:"single"===u?[e]:r.ifElse(r.contains(e),r.without([e]),r.append(e))(i)})})):null}rowDeleteCell(e){var t=this.props;const n=t.setProps;return t.row_deletable?o.default.createElement("td",{key:"delete",className:"delete-cell",onClick:()=>n(u.deleteRow(e,this.props)),style:{width:"30px",maxWidth:"30px",minWidth:"30px"}},"×"):null}createCells(){var e=this.props;const t=e.active_cell,n=e.columns,u=e.column_conditional_dropdowns,s=e.column_conditional_styles,a=e.column_static_dropdown,l=e.column_static_style,c=e.dropdown_properties,p=e.editable,d=e.id,f=e.is_focused,h=e.row_deletable,v=e.row_selectable,g=e.selected_cell,y=e.virtualizer,b=y.dataframe,m=y.indices,x=n.filter(e=>!e.hidden),E=(h?1:0)+(v?1:0);return b.map((e,h)=>{const v=m[h],y=this.rowDeleteCell(v),b=this.rowSelectCell(v),w=x.map((y,b)=>{b+=E;let m=(c&&c[y.id]&&(c[y.id].length>v?c[y.id][v]:null)||y||{}).options;const x=n.indexOf(y),w=[`column-${x+E}`];let _=u.find(e=>e.id===y.id),O=a.find(e=>e.id===y.id);_=_&&_.dropdowns,O=m||O&&O.dropdown;let S=s.find(e=>e.id===y.id),C=l.find(e=>e.id===y.id);return S=S&&S.styles,C=C&&C.style,o.default.createElement(i.default,{key:`${y.id}-${b}`,active:t[0]===h&&t[1]===x+E,classes:w,clearable:y.clearable,conditionalDropdowns:_,conditionalStyles:S,datum:e,editable:p,focused:!!f,onClick:this.getEventHandler(this.handleClick,h,x),onDoubleClick:this.getEventHandler(this.handleDoubleClick,h,x),onPaste:this.handlePaste,onChange:this.getEventHandler(this.handleChange,v,x),property:y.id,selected:r.contains([h,x+E],g),staticDropdown:O,staticStyle:C,tableId:d,type:y.type,value:e[y.id]})});return b&&w.unshift(b),y&&w.unshift(y),w})}}},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var r=function(e){if(e&&e.__esModule)return e;var t={};if(null!=e)for(var n in e)Object.prototype.hasOwnProperty.call(e,n)&&(t[n]=e[n]);return t.default=e,t}(n(2)),o=n(1),i=f(o),u=f(n(44)),s=n(12),a=n(5),l=f(n(45)),c=f(n(18)),p=n(15),d=f(n(20));function f(e){return e&&e.__esModule?e:{default:e}}class h extends o.Component{constructor(e){super(e),this.getDropdown=(0,a.memoizeOne)((...e)=>e.length?e.slice(-1)[0]:void 0),this.getStyle=(0,a.memoizeOne)((...e)=>e.length?r.mergeAll(e):void 0),this.propagateChange=(()=>{if(this.state.value===this.props.value)return;(0,this.props.onChange)(this.state.value)}),this.handleChange=(e=>{this.setState({value:e.target.value})}),this.handleKeyDown=(e=>{e.keyCode===p.KEY_CODES.ENTER&&this.propagateChange()}),this.handleOpenDropdown=(()=>{var e=this.refs;const t=e.dropdown,n=e.td;(0,d.default)(t.wrapper.querySelector(".Select-menu-outer"),n)}),this.state={value:e.value}}get propsWithDefaults(){return this.props}get classes(){var e=this.propsWithDefaults;let t=e.active,n=e.classes,r=e.editable,o=e.selected,i=e.type;return[...t?["focused"]:[],...r?[]:["cell--uneditable"],...o?["cell--selected"]:[],..."dropdown"===i?["dropdown"]:[],...n]}renderDropdown(){var e=this.propsWithDefaults;const t=e.clearable,n=e.onChange,r=e.value,o=this.dropdown;return o?i.default.createElement(u.default,{ref:"dropdown",clearable:t,onChange:e=>{n(e?e.value:e)},onOpen:this.handleOpenDropdown,options:o,placeholder:"",value:r}):this.renderValue()}renderInput(){var e=this.propsWithDefaults;const t=e.active,n=e.focused,r=e.onClick,o=e.onDoubleClick,u=e.onPaste,s={className:[...t?["input-active"]:[],...n?["focused"]:["unfocused"],...["cell-value"]].join(" "),onClick:r,onDoubleClick:o};return t||this.state.value!==this.props.value?i.default.createElement("input",Object.assign({ref:"textInput",type:"text",value:this.state.value,onBlur:this.propagateChange,onChange:this.handleChange,onKeyDown:this.handleKeyDown,onPaste:u},s)):this.renderValue(s)}renderValue(e={}){const t=this.propsWithDefaults.value;return i.default.createElement("div",Object.assign({},e),t)}renderInner(){switch(this.props.type){case"text":case"numeric":return this.renderInput();case"dropdown":return this.renderDropdown();default:return this.renderValue()}}get dropdown(){var e=this.propsWithDefaults;let t=e.conditionalDropdowns,n=e.datum,o=e.property,i=e.staticDropdown,u=e.tableId;const s=[...i?[i]:[],...r.map(([e])=>e.dropdown,r.filter(([e,t])=>h.dropdownAstCache([u,o,t],[e.condition]).evaluate(n),r.addIndex(r.map)((e,t)=>[e,t],t)))];return this.getDropdown(...s)}get style(){var e=this.propsWithDefaults;let t=e.conditionalStyles,n=e.datum,o=e.property,i=e.staticStyle,u=e.tableId;const s=[i,...r.map(([e])=>e.style,r.filter(([e,t])=>h.styleAstCache([u,o,t],[e.condition]).evaluate(n),r.addIndex(r.map)((e,t)=>[e,t],t)))];return this.getStyle(...s)}render(){return i.default.createElement("td",{ref:"td",tabIndex:-1,className:this.classes.join(" "),style:this.style},this.renderInner())}componentWillReceiveProps(e){const t=e.value;this.state.value!==t&&this.setState({value:t})}componentDidUpdate(){const e=this.propsWithDefaults.active,t=this.refs.textInput;e&&t&&document.activeElement!==t&&(t.focus(),t.setSelectionRange(0,t.value?t.value.length:0)),e&&this.refs.dropdown&&this.refs.td.focus()}shouldComponentUpdate(e,t){const n=this.props,r=this.state;return!(0,s.isEqual)(n,e,!0)||!(0,s.isEqual)(r,t,!0)}}t.default=h,h.dropdownAstCache=(0,l.default)(e=>new c.default(e)),h.styleAstCache=(0,l.default)(e=>new c.default(e)),h.defaultProps={classes:[],conditionalDropdowns:[],conditionalStyles:[],staticStyle:{},type:"text"}},function(e,t,n){"use strict";n.r(t),n.d(t,"Async",function(){return V}),n.d(t,"AsyncCreatable",function(){return Y}),n.d(t,"Creatable",function(){return L}),n.d(t,"Value",function(){return F}),n.d(t,"Option",function(){return k}),n.d(t,"defaultMenuRenderer",function(){return b}),n.d(t,"defaultArrowRenderer",function(){return d}),n.d(t,"defaultClearRenderer",function(){return f}),n.d(t,"defaultFilterOptions",function(){return y});var r=n(22),o=n.n(r),i=n(4),u=n.n(i),s=n(0),a=n.n(s),l=n(1),c=n.n(l),p=n(6),d=function(e){var t=e.onMouseDown;return c.a.createElement("span",{className:"Select-arrow",onMouseDown:t})};d.propTypes={onMouseDown:a.a.func};var f=function(){return c.a.createElement("span",{className:"Select-clear",dangerouslySetInnerHTML:{__html:"×"}})},h=[{base:"A",letters:/[\u0041\u24B6\uFF21\u00C0\u00C1\u00C2\u1EA6\u1EA4\u1EAA\u1EA8\u00C3\u0100\u0102\u1EB0\u1EAE\u1EB4\u1EB2\u0226\u01E0\u00C4\u01DE\u1EA2\u00C5\u01FA\u01CD\u0200\u0202\u1EA0\u1EAC\u1EB6\u1E00\u0104\u023A\u2C6F]/g},{base:"AA",letters:/[\uA732]/g},{base:"AE",letters:/[\u00C6\u01FC\u01E2]/g},{base:"AO",letters:/[\uA734]/g},{base:"AU",letters:/[\uA736]/g},{base:"AV",letters:/[\uA738\uA73A]/g},{base:"AY",letters:/[\uA73C]/g},{base:"B",letters:/[\u0042\u24B7\uFF22\u1E02\u1E04\u1E06\u0243\u0182\u0181]/g},{base:"C",letters:/[\u0043\u24B8\uFF23\u0106\u0108\u010A\u010C\u00C7\u1E08\u0187\u023B\uA73E]/g},{base:"D",letters:/[\u0044\u24B9\uFF24\u1E0A\u010E\u1E0C\u1E10\u1E12\u1E0E\u0110\u018B\u018A\u0189\uA779]/g},{base:"DZ",letters:/[\u01F1\u01C4]/g},{base:"Dz",letters:/[\u01F2\u01C5]/g},{base:"E",letters:/[\u0045\u24BA\uFF25\u00C8\u00C9\u00CA\u1EC0\u1EBE\u1EC4\u1EC2\u1EBC\u0112\u1E14\u1E16\u0114\u0116\u00CB\u1EBA\u011A\u0204\u0206\u1EB8\u1EC6\u0228\u1E1C\u0118\u1E18\u1E1A\u0190\u018E]/g},{base:"F",letters:/[\u0046\u24BB\uFF26\u1E1E\u0191\uA77B]/g},{base:"G",letters:/[\u0047\u24BC\uFF27\u01F4\u011C\u1E20\u011E\u0120\u01E6\u0122\u01E4\u0193\uA7A0\uA77D\uA77E]/g},{base:"H",letters:/[\u0048\u24BD\uFF28\u0124\u1E22\u1E26\u021E\u1E24\u1E28\u1E2A\u0126\u2C67\u2C75\uA78D]/g},{base:"I",letters:/[\u0049\u24BE\uFF29\u00CC\u00CD\u00CE\u0128\u012A\u012C\u0130\u00CF\u1E2E\u1EC8\u01CF\u0208\u020A\u1ECA\u012E\u1E2C\u0197]/g},{base:"J",letters:/[\u004A\u24BF\uFF2A\u0134\u0248]/g},{base:"K",letters:/[\u004B\u24C0\uFF2B\u1E30\u01E8\u1E32\u0136\u1E34\u0198\u2C69\uA740\uA742\uA744\uA7A2]/g},{base:"L",letters:/[\u004C\u24C1\uFF2C\u013F\u0139\u013D\u1E36\u1E38\u013B\u1E3C\u1E3A\u0141\u023D\u2C62\u2C60\uA748\uA746\uA780]/g},{base:"LJ",letters:/[\u01C7]/g},{base:"Lj",letters:/[\u01C8]/g},{base:"M",letters:/[\u004D\u24C2\uFF2D\u1E3E\u1E40\u1E42\u2C6E\u019C]/g},{base:"N",letters:/[\u004E\u24C3\uFF2E\u01F8\u0143\u00D1\u1E44\u0147\u1E46\u0145\u1E4A\u1E48\u0220\u019D\uA790\uA7A4]/g},{base:"NJ",letters:/[\u01CA]/g},{base:"Nj",letters:/[\u01CB]/g},{base:"O",letters:/[\u004F\u24C4\uFF2F\u00D2\u00D3\u00D4\u1ED2\u1ED0\u1ED6\u1ED4\u00D5\u1E4C\u022C\u1E4E\u014C\u1E50\u1E52\u014E\u022E\u0230\u00D6\u022A\u1ECE\u0150\u01D1\u020C\u020E\u01A0\u1EDC\u1EDA\u1EE0\u1EDE\u1EE2\u1ECC\u1ED8\u01EA\u01EC\u00D8\u01FE\u0186\u019F\uA74A\uA74C]/g},{base:"OI",letters:/[\u01A2]/g},{base:"OO",letters:/[\uA74E]/g},{base:"OU",letters:/[\u0222]/g},{base:"P",letters:/[\u0050\u24C5\uFF30\u1E54\u1E56\u01A4\u2C63\uA750\uA752\uA754]/g},{base:"Q",letters:/[\u0051\u24C6\uFF31\uA756\uA758\u024A]/g},{base:"R",letters:/[\u0052\u24C7\uFF32\u0154\u1E58\u0158\u0210\u0212\u1E5A\u1E5C\u0156\u1E5E\u024C\u2C64\uA75A\uA7A6\uA782]/g},{base:"S",letters:/[\u0053\u24C8\uFF33\u1E9E\u015A\u1E64\u015C\u1E60\u0160\u1E66\u1E62\u1E68\u0218\u015E\u2C7E\uA7A8\uA784]/g},{base:"T",letters:/[\u0054\u24C9\uFF34\u1E6A\u0164\u1E6C\u021A\u0162\u1E70\u1E6E\u0166\u01AC\u01AE\u023E\uA786]/g},{base:"TZ",letters:/[\uA728]/g},{base:"U",letters:/[\u0055\u24CA\uFF35\u00D9\u00DA\u00DB\u0168\u1E78\u016A\u1E7A\u016C\u00DC\u01DB\u01D7\u01D5\u01D9\u1EE6\u016E\u0170\u01D3\u0214\u0216\u01AF\u1EEA\u1EE8\u1EEE\u1EEC\u1EF0\u1EE4\u1E72\u0172\u1E76\u1E74\u0244]/g},{base:"V",letters:/[\u0056\u24CB\uFF36\u1E7C\u1E7E\u01B2\uA75E\u0245]/g},{base:"VY",letters:/[\uA760]/g},{base:"W",letters:/[\u0057\u24CC\uFF37\u1E80\u1E82\u0174\u1E86\u1E84\u1E88\u2C72]/g},{base:"X",letters:/[\u0058\u24CD\uFF38\u1E8A\u1E8C]/g},{base:"Y",letters:/[\u0059\u24CE\uFF39\u1EF2\u00DD\u0176\u1EF8\u0232\u1E8E\u0178\u1EF6\u1EF4\u01B3\u024E\u1EFE]/g},{base:"Z",letters:/[\u005A\u24CF\uFF3A\u0179\u1E90\u017B\u017D\u1E92\u1E94\u01B5\u0224\u2C7F\u2C6B\uA762]/g},{base:"a",letters:/[\u0061\u24D0\uFF41\u1E9A\u00E0\u00E1\u00E2\u1EA7\u1EA5\u1EAB\u1EA9\u00E3\u0101\u0103\u1EB1\u1EAF\u1EB5\u1EB3\u0227\u01E1\u00E4\u01DF\u1EA3\u00E5\u01FB\u01CE\u0201\u0203\u1EA1\u1EAD\u1EB7\u1E01\u0105\u2C65\u0250]/g},{base:"aa",letters:/[\uA733]/g},{base:"ae",letters:/[\u00E6\u01FD\u01E3]/g},{base:"ao",letters:/[\uA735]/g},{base:"au",letters:/[\uA737]/g},{base:"av",letters:/[\uA739\uA73B]/g},{base:"ay",letters:/[\uA73D]/g},{base:"b",letters:/[\u0062\u24D1\uFF42\u1E03\u1E05\u1E07\u0180\u0183\u0253]/g},{base:"c",letters:/[\u0063\u24D2\uFF43\u0107\u0109\u010B\u010D\u00E7\u1E09\u0188\u023C\uA73F\u2184]/g},{base:"d",letters:/[\u0064\u24D3\uFF44\u1E0B\u010F\u1E0D\u1E11\u1E13\u1E0F\u0111\u018C\u0256\u0257\uA77A]/g},{base:"dz",letters:/[\u01F3\u01C6]/g},{base:"e",letters:/[\u0065\u24D4\uFF45\u00E8\u00E9\u00EA\u1EC1\u1EBF\u1EC5\u1EC3\u1EBD\u0113\u1E15\u1E17\u0115\u0117\u00EB\u1EBB\u011B\u0205\u0207\u1EB9\u1EC7\u0229\u1E1D\u0119\u1E19\u1E1B\u0247\u025B\u01DD]/g},{base:"f",letters:/[\u0066\u24D5\uFF46\u1E1F\u0192\uA77C]/g},{base:"g",letters:/[\u0067\u24D6\uFF47\u01F5\u011D\u1E21\u011F\u0121\u01E7\u0123\u01E5\u0260\uA7A1\u1D79\uA77F]/g},{base:"h",letters:/[\u0068\u24D7\uFF48\u0125\u1E23\u1E27\u021F\u1E25\u1E29\u1E2B\u1E96\u0127\u2C68\u2C76\u0265]/g},{base:"hv",letters:/[\u0195]/g},{base:"i",letters:/[\u0069\u24D8\uFF49\u00EC\u00ED\u00EE\u0129\u012B\u012D\u00EF\u1E2F\u1EC9\u01D0\u0209\u020B\u1ECB\u012F\u1E2D\u0268\u0131]/g},{base:"j",letters:/[\u006A\u24D9\uFF4A\u0135\u01F0\u0249]/g},{base:"k",letters:/[\u006B\u24DA\uFF4B\u1E31\u01E9\u1E33\u0137\u1E35\u0199\u2C6A\uA741\uA743\uA745\uA7A3]/g},{base:"l",letters:/[\u006C\u24DB\uFF4C\u0140\u013A\u013E\u1E37\u1E39\u013C\u1E3D\u1E3B\u017F\u0142\u019A\u026B\u2C61\uA749\uA781\uA747]/g},{base:"lj",letters:/[\u01C9]/g},{base:"m",letters:/[\u006D\u24DC\uFF4D\u1E3F\u1E41\u1E43\u0271\u026F]/g},{base:"n",letters:/[\u006E\u24DD\uFF4E\u01F9\u0144\u00F1\u1E45\u0148\u1E47\u0146\u1E4B\u1E49\u019E\u0272\u0149\uA791\uA7A5]/g},{base:"nj",letters:/[\u01CC]/g},{base:"o",letters:/[\u006F\u24DE\uFF4F\u00F2\u00F3\u00F4\u1ED3\u1ED1\u1ED7\u1ED5\u00F5\u1E4D\u022D\u1E4F\u014D\u1E51\u1E53\u014F\u022F\u0231\u00F6\u022B\u1ECF\u0151\u01D2\u020D\u020F\u01A1\u1EDD\u1EDB\u1EE1\u1EDF\u1EE3\u1ECD\u1ED9\u01EB\u01ED\u00F8\u01FF\u0254\uA74B\uA74D\u0275]/g},{base:"oi",letters:/[\u01A3]/g},{base:"ou",letters:/[\u0223]/g},{base:"oo",letters:/[\uA74F]/g},{base:"p",letters:/[\u0070\u24DF\uFF50\u1E55\u1E57\u01A5\u1D7D\uA751\uA753\uA755]/g},{base:"q",letters:/[\u0071\u24E0\uFF51\u024B\uA757\uA759]/g},{base:"r",letters:/[\u0072\u24E1\uFF52\u0155\u1E59\u0159\u0211\u0213\u1E5B\u1E5D\u0157\u1E5F\u024D\u027D\uA75B\uA7A7\uA783]/g},{base:"s",letters:/[\u0073\u24E2\uFF53\u00DF\u015B\u1E65\u015D\u1E61\u0161\u1E67\u1E63\u1E69\u0219\u015F\u023F\uA7A9\uA785\u1E9B]/g},{base:"t",letters:/[\u0074\u24E3\uFF54\u1E6B\u1E97\u0165\u1E6D\u021B\u0163\u1E71\u1E6F\u0167\u01AD\u0288\u2C66\uA787]/g},{base:"tz",letters:/[\uA729]/g},{base:"u",letters:/[\u0075\u24E4\uFF55\u00F9\u00FA\u00FB\u0169\u1E79\u016B\u1E7B\u016D\u00FC\u01DC\u01D8\u01D6\u01DA\u1EE7\u016F\u0171\u01D4\u0215\u0217\u01B0\u1EEB\u1EE9\u1EEF\u1EED\u1EF1\u1EE5\u1E73\u0173\u1E77\u1E75\u0289]/g},{base:"v",letters:/[\u0076\u24E5\uFF56\u1E7D\u1E7F\u028B\uA75F\u028C]/g},{base:"vy",letters:/[\uA761]/g},{base:"w",letters:/[\u0077\u24E6\uFF57\u1E81\u1E83\u0175\u1E87\u1E85\u1E98\u1E89\u2C73]/g},{base:"x",letters:/[\u0078\u24E7\uFF58\u1E8B\u1E8D]/g},{base:"y",letters:/[\u0079\u24E8\uFF59\u1EF3\u00FD\u0177\u1EF9\u0233\u1E8F\u00FF\u1EF7\u1E99\u1EF5\u01B4\u024F\u1EFF]/g},{base:"z",letters:/[\u007A\u24E9\uFF5A\u017A\u1E91\u017C\u017E\u1E93\u1E95\u01B6\u0225\u0240\u2C6C\uA763]/g}],v=function(e){for(var t=0;t-1)return!1;if(r.filterOption)return r.filterOption.call(void 0,e,t);if(!t)return!0;var o=e[r.valueKey],i=e[r.labelKey],u=g(o),s=g(i);if(!u&&!s)return!1;var a=u?String(o):null,l=s?String(i):null;return r.ignoreAccents&&(a&&"label"!==r.matchProp&&(a=v(a)),l&&"value"!==r.matchProp&&(l=v(l))),r.ignoreCase&&(a&&"label"!==r.matchProp&&(a=a.toLowerCase()),l&&"value"!==r.matchProp&&(l=l.toLowerCase())),"start"===r.matchPos?a&&"label"!==r.matchProp&&a.substr(0,t.length)===t||l&&"value"!==r.matchProp&&l.substr(0,t.length)===t:a&&"label"!==r.matchProp&&a.indexOf(t)>=0||l&&"value"!==r.matchProp&&l.indexOf(t)>=0})},b=function(e){var t=e.focusedOption,n=e.focusOption,r=e.inputValue,o=e.instancePrefix,i=e.onFocus,s=e.onOptionRef,a=e.onSelect,l=e.optionClassName,p=e.optionComponent,d=e.optionRenderer,f=e.options,h=e.removeValue,v=e.selectValue,g=e.valueArray,y=e.valueKey,b=p;return f.map(function(e,p){var f=g&&g.some(function(t){return t[y]===e[y]}),m=e===t,x=u()(l,{"Select-option":!0,"is-selected":f,"is-focused":m,"is-disabled":e.disabled});return c.a.createElement(b,{className:x,focusOption:n,inputValue:r,instancePrefix:o,isDisabled:e.disabled,isFocused:m,isSelected:f,key:"option-"+p+"-"+e[y],onFocus:i,onSelect:a,option:e,optionIndex:p,ref:function(e){s(e,m)},removeValue:h,selectValue:v},d(e,p,r))})};b.propTypes={focusOption:a.a.func,focusedOption:a.a.object,inputValue:a.a.string,instancePrefix:a.a.string,onFocus:a.a.func,onOptionRef:a.a.func,onSelect:a.a.func,optionClassName:a.a.string,optionComponent:a.a.func,optionRenderer:a.a.func,options:a.a.array,removeValue:a.a.func,selectValue:a.a.func,valueArray:a.a.array,valueKey:a.a.string};var m=function(e){e.preventDefault(),e.stopPropagation(),"A"===e.target.tagName&&"href"in e.target&&(e.target.target?window.open(e.target.href,e.target.target):window.location.href=e.target.href)},x="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},E=(function(){function e(e){this.value=e}function t(t){var n,r;function o(n,r){try{var u=t[n](r),s=u.value;s instanceof e?Promise.resolve(s.value).then(function(e){o("next",e)},function(e){o("throw",e)}):i(u.done?"return":"normal",u.value)}catch(e){i("throw",e)}}function i(e,t){switch(e){case"return":n.resolve({value:t,done:!0});break;case"throw":n.reject(t);break;default:n.resolve({value:t,done:!1})}(n=n.next)?o(n.key,n.arg):r=null}this._invoke=function(e,t){return new Promise(function(i,u){var s={key:e,arg:t,resolve:i,reject:u,next:null};r?r=r.next=s:(n=r=s,o(e,t))})},"function"!=typeof t.return&&(this.return=void 0)}"function"==typeof Symbol&&Symbol.asyncIterator&&(t.prototype[Symbol.asyncIterator]=function(){return this}),t.prototype.next=function(e){return this._invoke("next",e)},t.prototype.throw=function(e){return this._invoke("throw",e)},t.prototype.return=function(e){return this._invoke("return",e)}}(),function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}),w=function(){function e(e,t){for(var n=0;n=0||Object.prototype.hasOwnProperty.call(e,r)&&(n[r]=e[r]);return n},A=function(e,t){if(!e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return!t||"object"!=typeof t&&"function"!=typeof t?e:t},k=function(e){function t(e){E(this,t);var n=A(this,(t.__proto__||Object.getPrototypeOf(t)).call(this,e));return n.handleMouseDown=n.handleMouseDown.bind(n),n.handleMouseEnter=n.handleMouseEnter.bind(n),n.handleMouseMove=n.handleMouseMove.bind(n),n.handleTouchStart=n.handleTouchStart.bind(n),n.handleTouchEnd=n.handleTouchEnd.bind(n),n.handleTouchMove=n.handleTouchMove.bind(n),n.onFocus=n.onFocus.bind(n),n}return S(t,e),w(t,[{key:"handleMouseDown",value:function(e){e.preventDefault(),e.stopPropagation(),this.props.onSelect(this.props.option,e)}},{key:"handleMouseEnter",value:function(e){this.onFocus(e)}},{key:"handleMouseMove",value:function(e){this.onFocus(e)}},{key:"handleTouchEnd",value:function(e){this.dragging||this.handleMouseDown(e)}},{key:"handleTouchMove",value:function(){this.dragging=!0}},{key:"handleTouchStart",value:function(){this.dragging=!1}},{key:"onFocus",value:function(e){this.props.isFocused||this.props.onFocus(this.props.option,e)}},{key:"render",value:function(){var e=this.props,t=e.option,n=e.instancePrefix,r=e.optionIndex,o=u()(this.props.className,t.className);return t.disabled?c.a.createElement("div",{className:o,onMouseDown:m,onClick:m},this.props.children):c.a.createElement("div",{className:o,style:t.style,role:"option","aria-label":t.label,onMouseDown:this.handleMouseDown,onMouseEnter:this.handleMouseEnter,onMouseMove:this.handleMouseMove,onTouchStart:this.handleTouchStart,onTouchMove:this.handleTouchMove,onTouchEnd:this.handleTouchEnd,id:n+"-option-"+r,title:t.title},this.props.children)}}]),t}(c.a.Component);k.propTypes={children:a.a.node,className:a.a.string,instancePrefix:a.a.string.isRequired,isDisabled:a.a.bool,isFocused:a.a.bool,isSelected:a.a.bool,onFocus:a.a.func,onSelect:a.a.func,onUnfocus:a.a.func,option:a.a.object.isRequired,optionIndex:a.a.number};var F=function(e){function t(e){E(this,t);var n=A(this,(t.__proto__||Object.getPrototypeOf(t)).call(this,e));return n.handleMouseDown=n.handleMouseDown.bind(n),n.onRemove=n.onRemove.bind(n),n.handleTouchEndRemove=n.handleTouchEndRemove.bind(n),n.handleTouchMove=n.handleTouchMove.bind(n),n.handleTouchStart=n.handleTouchStart.bind(n),n}return S(t,e),w(t,[{key:"handleMouseDown",value:function(e){if("mousedown"!==e.type||0===e.button)return this.props.onClick?(e.stopPropagation(),void this.props.onClick(this.props.value,e)):void(this.props.value.href&&e.stopPropagation())}},{key:"onRemove",value:function(e){e.preventDefault(),e.stopPropagation(),this.props.onRemove(this.props.value)}},{key:"handleTouchEndRemove",value:function(e){this.dragging||this.onRemove(e)}},{key:"handleTouchMove",value:function(){this.dragging=!0}},{key:"handleTouchStart",value:function(){this.dragging=!1}},{key:"renderRemoveIcon",value:function(){if(!this.props.disabled&&this.props.onRemove)return c.a.createElement("span",{className:"Select-value-icon","aria-hidden":"true",onMouseDown:this.onRemove,onTouchEnd:this.handleTouchEndRemove,onTouchStart:this.handleTouchStart,onTouchMove:this.handleTouchMove},"×")}},{key:"renderLabel",value:function(){return this.props.onClick||this.props.value.href?c.a.createElement("a",{className:"Select-value-label",href:this.props.value.href,target:this.props.value.target,onMouseDown:this.handleMouseDown,onTouchEnd:this.handleMouseDown},this.props.children):c.a.createElement("span",{className:"Select-value-label",role:"option","aria-selected":"true",id:this.props.id},this.props.children)}},{key:"render",value:function(){return c.a.createElement("div",{className:u()("Select-value",this.props.value.className),style:this.props.value.style,title:this.props.value.title},this.renderRemoveIcon(),this.renderLabel())}}]),t}(c.a.Component);F.propTypes={children:a.a.node,disabled:a.a.bool,id:a.a.string,onClick:a.a.func,onRemove:a.a.func,value:a.a.object.isRequired}; +!function(){"use strict";var n={}.hasOwnProperty;function o(){for(var e=[],t=0;t(0,r.isEqualArgs)(n,o)?t:(n=o)&&(t=e(...o))},t.memoizeAll=function(e){const t=[];return(...n)=>{let o=t.find(e=>(0,r.isEqualArgs)(e.args,n));return(o||t[t.push({args:n,result:e(...n)})-1]).result}};var r=n(12)},function(e,t){e.exports=window.ReactDOM},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.defaultIsNully=t.SortDirection=void 0;var r=function(e){if(e&&e.__esModule)return e;var t={};if(null!=e)for(var n in e)Object.prototype.hasOwnProperty.call(e,n)&&(t[n]=e[n]);return t.default=e,t}(n(2));var o=t.SortDirection=void 0;!function(e){e.Ascending="asc",e.Descending="desc",e.None="none"}(o||(t.SortDirection=o={}));const i=t.defaultIsNully=(e=>void 0===e||null===e);t.default=((e,t,n=i)=>t.length?r.sortWith(r.map(e=>e.direction===o.Descending?r.comparator((t,r)=>{const o=e.columnId,i=t[o],u=r[o];return!n(i)&&(!!n(u)||i>u)}):r.comparator((t,r)=>{const o=e.columnId,i=t[o],u=r[o];return!n(i)&&(!!n(u)||i=0&&a.splice(t,1)}function h(e){var t=document.createElement("style");return void 0===e.attrs.type&&(e.attrs.type="text/css"),v(t,e.attrs),d(e,t),t}function v(e,t){Object.keys(t).forEach(function(n){e.setAttribute(n,t[n])})}function g(e,t){var n,r,o,i;if(t.transform&&e.css){if(!(i=t.transform(e.css)))return function(){};e.css=i}if(t.singleton){var a=s++;n=u||(u=h(t)),r=b.bind(null,n,a,!1),o=b.bind(null,n,a,!0)}else e.sourceMap&&"function"==typeof URL&&"function"==typeof URL.createObjectURL&&"function"==typeof URL.revokeObjectURL&&"function"==typeof Blob&&"function"==typeof btoa?(n=function(e){var t=document.createElement("link");return void 0===e.attrs.type&&(e.attrs.type="text/css"),e.attrs.rel="stylesheet",v(t,e.attrs),d(e,t),t}(t),r=function(e,t,n){var r=n.css,o=n.sourceMap,i=void 0===t.convertToAbsoluteUrls&&o;(t.convertToAbsoluteUrls||i)&&(r=l(r));o&&(r+="\n/*# sourceMappingURL=data:application/json;base64,"+btoa(unescape(encodeURIComponent(JSON.stringify(o))))+" */");var u=new Blob([r],{type:"text/css"}),s=e.href;e.href=URL.createObjectURL(u),s&&URL.revokeObjectURL(s)}.bind(null,n,t),o=function(){f(n),n.href&&URL.revokeObjectURL(n.href)}):(n=h(t),r=function(e,t){var n=t.css,r=t.media;r&&e.setAttribute("media",r);if(e.styleSheet)e.styleSheet.cssText=n;else{for(;e.firstChild;)e.removeChild(e.firstChild);e.appendChild(document.createTextNode(n))}}.bind(null,n),o=function(){f(n)});return r(e),function(t){if(t){if(t.css===e.css&&t.media===e.media&&t.sourceMap===e.sourceMap)return;r(e=t)}else o()}}e.exports=function(e,t){if("undefined"!=typeof DEBUG&&DEBUG&&"object"!=typeof document)throw new Error("The style-loader cannot be used in a non-browser environment");(t=t||{}).attrs="object"==typeof t.attrs?t.attrs:{},t.singleton||"boolean"==typeof t.singleton||(t.singleton=o()),t.insertInto||(t.insertInto="head"),t.insertAt||(t.insertAt="bottom");var n=p(e,t);return c(n,t),function(e){for(var o=[],i=0;ie===this.dataframe[t])||(this.__dataframe=n,this.__indices=o,this.target.update({viewportDataframe:n,viewportIndices:o}))}}},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e){let t=null,n=[];for(;e.length;){e=e.replace(/^\s+/,"");let o=r.default.filter(e=>t&&e.when&&-1!==e.when.indexOf(t.name));if(o.length||(o=r.default),!(t=o.find(t=>t.regexp.test(e))||null))return{lexemes:n,valid:!1,error:e};const i=(e.match(t.regexp)||[])[0];n.push({lexeme:t,value:i}),e=e.substring(i.length)}return{lexemes:n,valid:!0}};var r=function(e){return e&&e.__esModule?e:{default:e}}(n(17))},function(e,t,n){"use strict";function r(e){return void 0!==e&&null!==e&&"object"==typeof e&&e.constructor===Object}function o(e,t,n=!1){return e===t||i(Object.values(e),Object.values(t),n)}function i(e,t,n=!1){return!!e&&e.length===t.length&&!!e.every((e,u)=>{const s=t[u];return e===s||n&&(Array.isArray(e)&&Array.isArray(s)&&i(e,s,n)||r(e)&&r(s)&&o(e,s,n))})}Object.defineProperty(t,"__esModule",{value:!0}),t.isEqual=o,t.isEqualArgs=i},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r=function(e){return e&&e.__esModule?e:{default:e}}(n(3));class o{constructor(e){this.name=e}get rules(){const e=this.sheet;return Array.from(e.rules||e.cssRules)}addRule(e,t){this.sheet.addRule?this.sheet.addRule(e,t):this.sheet.insertRule(`${e} { ${t} }`,0)}deleteRule(e){this.sheet.deleteRule(e)}findRule(e){const t=this.rules,n=t.findIndex(t=>t.selectorText===e);return-1===n?null:{rule:t[n],index:n}}get sheet(){return(this.__stylesheet=this.__stylesheet||(()=>{const e=document.createElement("style");return e.type="text/css",e.id=this.name,document.getElementsByTagName("head")[0].appendChild(e),e})()).sheet}}class i{constructor(e){this.prefix=e,this.stylesheet=new o(`${e}-dynamic-inline.css`)}static unit(e,t="px"){return i.hasUnit(e)?e:`${e}${t}`}static hasUnit(e){return"string"==typeof e&&/^\d+(\.\d+)?(px|em|rem)$/.test(e)}deleteRule(e){e=`${this.prefix} ${e}`;const t=this.stylesheet.findRule(e);t&&this.stylesheet.deleteRule(t.index)}setRule(e,t){e=`${this.prefix} ${e}`;const n=this.stylesheet.findRule(e);if(n){if(n.rule.cssText===t||n.rule.cssText===`${e} { ${t} }`)return;this.stylesheet.deleteRule(n.index)}this.stylesheet.addRule(e,t),r.default.trace("stylesheet",e,t)}}t.default=i},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.colIsEditable=function(e,t){return e&&(!r.has("editable",t)||t.editable)};var r=function(e){if(e&&e.__esModule)return e;var t={};if(null!=e)for(var n in e)Object.prototype.hasOwnProperty.call(e,n)&&(t[n]=e[n]);return t.default=e,t}(n(2))},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.isPrintableChar=function(e){return 32===e||e>=48&&e<=57||e>=96&&e<=111||e>=186&&e<=192||e>=219&&e<=222||e>=226||e>=65&&e<=90},t.isMetaKey=function(e){return-1!==o.indexOf(e)},t.isNavKey=function(e){return-1!==u.indexOf(e)},t.isArrowKey=function(e){return-1!==i.indexOf(e)},t.isCtrlKey=function(e){const t=[];window.navigator.platform.includes("Mac")?t.push(r.COMMAND_LEFT,r.COMMAND_RIGHT,r.COMMAND_FIREFOX):t.push(r.CONTROL);return t.includes(e)},t.isCtrlMetaKey=function(e){return[r.CONTROL,r.COMMAND_LEFT,r.COMMAND_RIGHT,r.COMMAND_FIREFOX].includes(e)};const r=t.KEY_CODES={MOUSE_LEFT:1,MOUSE_RIGHT:3,MOUSE_MIDDLE:2,BACKSPACE:8,COMMA:188,INSERT:45,DELETE:46,END:35,ENTER:13,ESCAPE:27,CONTROL:17,COMMAND_LEFT:91,COMMAND_RIGHT:93,COMMAND_FIREFOX:224,ALT:18,HOME:36,PAGE_DOWN:34,PAGE_UP:33,PERIOD:190,SPACE:32,SHIFT:16,CAPS_LOCK:20,TAB:9,ARROW_RIGHT:39,ARROW_LEFT:37,ARROW_UP:38,ARROW_DOWN:40,F1:112,F2:113,F3:114,F4:115,F5:116,F6:117,F7:118,F8:119,F9:120,F10:121,F11:122,F12:123,A:65,X:88,C:67,V:86},o=[r.ARROW_DOWN,r.ARROW_UP,r.ARROW_LEFT,r.ARROW_RIGHT,r.HOME,r.END,r.DELETE,r.BACKSPACE,r.F1,r.F2,r.F3,r.F4,r.F5,r.F6,r.F7,r.F8,r.F9,r.F10,r.F11,r.F12,r.TAB,r.PAGE_DOWN,r.PAGE_UP,r.ENTER,r.ESCAPE,r.SHIFT,r.CAPS_LOCK,r.ALT],i=[r.ARROW_DOWN,r.ARROW_UP,r.ARROW_LEFT,r.ARROW_RIGHT],u=[...i,r.TAB,r.ENTER];t.isCtrlDown=(e=>(e.ctrlKey||e.metaKey)&&!e.altKey)},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.deleteRow=function(e,t){const n=t.active_cell,o=t.dataframe,i=t.end_cell,u=t.selected_cell,s=t.selected_rows,a=t.start_cell,l={dataframe:r.remove(e,1,o)};r.is(Array,n)&&n[0]===e&&(l.active_cell=[]);r.is(Array,i)&&i[0]===e&&(l.end_cell=[]);r.is(Array,u)&&u[0]===e&&(l.selected_cell=[]);r.is(Array,a)&&a[0]===e&&(l.start_cell=[0,0]);r.is(Array,s)&&r.contains(e,s)&&(l.selected_rows=r.without([e],s));return l},t.deleteColumn=function(e,t,n){const i=n.columns,u=n.dataframe;var s=o(e,t,n);const a=s.groupIndexFirst,l=s.groupIndexLast,c=r.slice(a,l+1,r.pluck("id",i));return{columns:r.remove(a,1+l-a,i),dataframe:r.map(r.omit(c),u),active_cell:[],end_cell:[],selected_cell:[],start_cell:[0]}},t.editColumnName=function(e,t,n){const i=n.columns;var u=o(e,t,n);const s=u.groupIndexFirst,a=u.groupIndexLast,l=window.prompt("Enter a new column name");let c=r.clone(i);return r.range(s,a+1).map(e=>{let n;n="Array"===r.type(i[e].name)?[e,"name",t]:[e,"name"],c=r.set(r.lensPath(n),l,c)}),{columns:c}};var r=function(e){if(e&&e.__esModule)return e;var t={};if(null!=e)for(var n in e)Object.prototype.hasOwnProperty.call(e,n)&&(t[n]=e[n]);return t.default=e,t}(n(2));function o(e,t,n){const o=n.columns;let i,u;"Null"!==r.type(t)?(i=e.name[t],u=r.pluck(t,r.pluck("name",o))):(i=e.name,u=r.pluck("name",o));const s=r.findIndex(r.propEq("id",e.id),o);let a=s,l=s;for(;u[a-1]===i;)a--;for(;u[l+1]===i;)l++;return{groupIndexFirst:a,groupIndexLast:l}}},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.LexemeType=void 0;var r=function(){return function(e,t){if(Array.isArray(e))return e;if(Symbol.iterator in Object(e))return function(e,t){var n=[],r=!0,o=!1,i=void 0;try{for(var u,s=e[Symbol.iterator]();!(r=(u=s.next()).done)&&(n.push(u.value),!t||n.length!==t);r=!0);}catch(e){o=!0,i=e}finally{try{!r&&s.return&&s.return()}finally{if(o)throw i}}return n}(e,t);throw new TypeError("Invalid attempt to destructure non-iterable instance")}}(),o=function(e){return e&&e.__esModule?e:{default:e}}(n(3));var i=t.LexemeType=void 0;!function(e){e.And="and",e.BlockClose="close-block",e.BlockOpen="open-block",e.BinaryOperator="logical-binary-operator",e.Expression="expression",e.Or="or",e.Operand="operand",e.UnaryNot="unary-not",e.UnaryOperator="logical-unary-operator"}(i||(t.LexemeType=i={}));const u={resolve:(e,t)=>{if(o.default.trace("resolve -> exp",e,t),/^('.*')|(".*")$/.test(t.value))return t.value.slice(1,t.value.length-1);if(!/^\w+\(.*\)$/.test(t.value))return e[t.value];{const e=t.value.match(/^(\w+)\((.*)\)$/);if(!e)throw Error();{var n=r(e,3);const t=n[1],o=n[2];switch(t){case"num":return parseInt(o,10);case"str":default:return o}}}},regexp:/^(((num|str)\([^()]*\))|'([^()']|\\')+'|"([^()"]|\\")+"|\w+)/},s=[{evaluate:(e,t)=>{o.default.trace("evalute -> &&",e,t);const n=t,r=n.left.lexeme.evaluate(e,n.left),i=n.right.lexeme.evaluate(e,n.right);return r&&i},name:i.And,priority:2,regexp:/^(and\s|&&)/i,syntaxer:(e,t,n)=>Object.assign({left:e.slice(0,n),right:e.slice(n+1)},t)},{evaluate:(e,t)=>{o.default.trace("evalute -> ||",e,t);const n=t;return n.left.lexeme.evaluate(e,n.left)||n.right.lexeme.evaluate(e,n.right)},name:i.Or,priority:3,regexp:/^(or\s|\|\|)/i,syntaxer:(e,t,n)=>Object.assign({left:e.slice(0,n),right:e.slice(n+1)},t)},{name:i.BlockClose,nesting:-1,regexp:/^\)/},{evaluate:(e,t)=>{o.default.trace("evaluate -> ()",e,t);const n=t;return n.block.lexeme.evaluate(e,n.block)},name:i.BlockOpen,nesting:1,priority:1,regexp:/^\(/,syntaxer:e=>Object.assign({block:e.slice(1,e.length-1)},e[0]),when:[i.UnaryNot]},Object.assign({name:i.Operand},u),{evaluate:(e,t)=>{o.default.trace("evaluate -> binary",e,t);const n=t,r=n.left.lexeme.resolve(e,n.left),i=n.right.lexeme.resolve(e,n.right);switch(o.default.trace(`opValue: ${r}, expValue: ${i}`),t.value.toLowerCase()){case"eq":case"=":return r===i;case"gt":case">":return r>i;case"ge":case">=":return r>=i;case"lt":case"<":return r=|<=|>|<|!=|=|ge|le|gt|lt|eq|ne)/i,syntaxer:e=>{var t=r(e,3);let n=t[0],o=t[1],i=t[2];return Object.assign({left:n,right:i},o)},when:[i.Operand]},{evaluate:(e,t)=>{o.default.trace("evaluate -> unary",e,t);const n=t,r=n.block.lexeme.resolve(e,n.block);switch(t.value.toLowerCase()){case"is even":return"number"==typeof r&&r%2==0;case"is nil":return void 0===r||null===r;case"is bool":return"boolean"==typeof r;case"is odd":return"number"==typeof r&&r%2==1;case"is num":return"number"==typeof r;case"is object":return null!==r&&"object"==typeof r;case"is str":return"string"==typeof r;case"is prime":return"number"==typeof r&&(e=>{if(2===e)return!0;if(e<2||e%2==0)return!1;for(let t=3;t*t<=e;t+=2)if(e%t==0)return!1;return!0})(r);default:throw new Error}},name:i.UnaryOperator,priority:0,regexp:/^((is nil)|(is odd)|(is even)|(is bool)|(is num)|(is object)|(is str)|(is prime))/i,syntaxer:e=>{var t=r(e,2);let n=t[0],o=t[1];return Object.assign({block:n},o)},when:[i.Operand]},{evaluate:(e,t)=>{o.default.trace("evaluate -> unary not",e,t);const n=t;return!n.block.lexeme.evaluate(e,n.block)},name:i.UnaryNot,priority:1.5,regexp:/^!/,syntaxer:e=>Object.assign({block:e.slice(1,e.length)},e[0]),when:[i.UnaryNot]},Object.assign({name:i.Expression,when:[i.BinaryOperator]},u)];t.default=s},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r=u(n(3)),o=u(n(11)),i=u(n(19));function u(e){return e&&e.__esModule?e:{default:e}}t.default=class{constructor(e){this.query=e,this.evaluate=(e=>{if(!this.isValid||!this.tree){const e=`unable to evaluate target: syntax tree is invalid for query=${this.query}`;throw r.default.error(e),new Error(e)}const t=this.tree.lexeme.evaluate;return!!t&&t(e,this.tree)}),this.filter=(e=>e.filter(this.evaluate)),this.result=(0,i.default)((0,o.default)(this.query))}get isValid(){return this.result.valid}get tree(){return this.result.tree}}},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r=function(e){return e&&e.__esModule?e:{default:e}}(n(3));const o=e=>{let t=0;const n=e.map(e=>{const n=Object.assign({},e,{nesting:t});return t+=e.lexeme.nesting||0,n}),i=n.filter(e=>0===e.nesting&&"number"==typeof e.lexeme.priority).sort((e,t)=>(t.lexeme.priority||-1)-(e.lexeme.priority||-1))[0];r.default.trace("parser -> pivot",i,e);const u=n.indexOf(i);if(i.lexeme.syntaxer){let t=i.lexeme.syntaxer(e,i,u);return Array.isArray(t.left)&&(t.left=o(t.left)),Array.isArray(t.right)&&(t.right=o(t.right)),Array.isArray(t.block)&&(t.block=o(t.block)),t}throw new Error(i.lexeme.name)};t.default=(e=>{const t=e.lexemes;if(!e.valid)return{valid:!1,error:`lexer -- ${e.error}`};try{return{tree:o(t),valid:!0}}catch(e){return{valid:!1,error:e}}})},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=((e,t=null)=>{if(t=t||(()=>{for(t=e;t&&"td"!==t.nodeName.toLowerCase();)t=t.parentElement;return t})(),!e||!t)return;let n=e;for(;"relative"!==getComputedStyle(n).position&&"sticky"!==getComputedStyle(n).position&&n.parentElement;)n=n.parentElement;let r=e;for(;"relative"!==getComputedStyle(r).position&&r.parentElement;)r=r.parentElement;const o=n.getBoundingClientRect(),i=r.getBoundingClientRect(),u=t.getBoundingClientRect(),s=u.left-o.left+n.scrollLeft,a=u.top-o.top+n.scrollTop+u.height;e.style.width=`${u.width}px`,e.style.top=`${a}px`,e.style.left=`${s}px`,e.style.position="absolute",u.top+u.height/2>i.bottom||u.top-u.height/2i.left+i.width?e.style.display="none":e.style.display="block"})},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r=n(1),o=function(e){return e&&e.__esModule?e:{default:e}}(r);class i extends r.PureComponent{constructor(e){super(e),this.handleChange=(e=>this.setState({value:e.target.value})),this.submit=(()=>this.state.value!==this.props.value&&this.props.submit(this.state.value)),this.state={value:e.value}}get propsWithDefaults(){return this.props}render(){var e=this.propsWithDefaults;const t=e.stopPropagation,n=e.updateOnBlur,r=e.updateOnSubmit;let i={onBlur:n?this.submit:void 0,onKeyDown:t?e=>e.stopPropagation():void 0,onSubmit:r?this.submit:void 0};return o.default.createElement("input",Object.assign({ref:"input",type:"text",value:this.state.value||"",onChange:this.handleChange},i))}}t.default=i,i.defaultProps={stopPropagation:!1,updateOnBlur:!0,updateOnSubmit:!0}},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r=Object.assign||function(e){for(var t=1;t=0||Object.prototype.hasOwnProperty.call(e,r)&&(n[r]=e[r]);return n}(this.props,[]);return function(e){c.forEach(function(t){return delete e[t]})}(o),o.className=this.props.inputClassName,o.id=this.state.inputId,o.style=n,u.default.createElement("div",{className:this.props.className,style:t},this.renderStyles(),u.default.createElement("input",r({},o,{ref:this.inputRef})),u.default.createElement("div",{ref:this.sizerRef,style:l},e),this.props.placeholder?u.default.createElement("div",{ref:this.placeHolderSizerRef,style:l},this.props.placeholder):null)}}]),t}();h.propTypes={className:s.default.string,defaultValue:s.default.any,extraWidth:s.default.oneOfType([s.default.number,s.default.string]),id:s.default.string,injectStyles:s.default.bool,inputClassName:s.default.string,inputRef:s.default.func,inputStyle:s.default.object,minWidth:s.default.oneOfType([s.default.number,s.default.string]),onAutosize:s.default.func,onChange:s.default.func,placeholder:s.default.string,placeholderIsMinWidth:s.default.bool,style:s.default.object,value:s.default.any},h.defaultProps={minWidth:1,injectStyles:!0},t.default=h},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.Table=void 0;var r=u(n(24)),o=u(n(3)),i=u(n(26));function u(e){return e&&e.__esModule?e:{default:e}}o.default.setDebugLevel(r.default.debugLevel),o.default.setLogLevel(r.default.logLevel),t.Table=i.default},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r=n(3),o=function(e){return e&&e.__esModule?e:{default:e}}(n(25));const i="dash_debug",u="dash_log";t.default=class{static get searchParams(){return new URL(window.location.href).searchParams||{get:()=>null}}static get debugLevel(){const e=this.searchParams.get(i)||o.default.get(i);return e&&r.DebugLevel[e]||r.DebugLevel.NONE}static get logLevel(){const e=this.searchParams.get(u)||o.default.get(u);return e&&r.LogLevel[e]||r.LogLevel.ERROR}}},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const r=864e5,o=63072e7;class i{static delete(e,t="",n="/"){let o=new Date((new Date).getTime()-r).toUTCString();document.cookie=`${e}=;expires=${o};domain=${t};path=${n}`}static get(e){if(!e.length)return;return e=e.toLowerCase(),(document.cookie.split(";").map(e=>{let t=e.split("=");return{id:t[0].trim(),value:t[1]}}).find(t=>e===t.id.toLocaleLowerCase())||{}).value}static set(e,t,n="",r="/"){let u=`${e}=${t};expires=${new Date((new Date).getTime()+o).toUTCString()};domain=${n};path=${r}`;i.get(e)&&i.delete(e,n,r),document.cookie=u}}t.default=i},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.propTypes=t.defaultProps=void 0;var r=n(1),o=s(r),i=s(n(0)),u=s(n(29));function s(e){return e&&e.__esModule?e:{default:e}}n(58);class a extends r.Component{render(){return o.default.createElement(u.default,this.props)}}t.default=a;const l=t.defaultProps={virtualization:"fe",virtualization_settings:{displayed_pages:1,current_page:0,page_size:250},navigation:"page",filtering:!1,filtering_settings:"",filtering_type:"basic",filtering_types:["basic"],sorting:!1,sorting_type:"single",sorting_settings:[],virtual_dataframe:[],virtual_dataframe_indices:[],column_conditional_dropdowns:[],column_static_dropdown:[],column_conditional_styles:[],column_static_style:[],row_conditional_styles:[],row_static_style:{},changed_data:{},dataframe:[],columns:[],editable:!1,active_cell:[],index_name:"",types:{},merged_styles:{},selected_cell:[[]],selected_rows:[],row_selectable:!1,table_style:[],base_styles:{numeric:{"text-align":"right","font-family":"'Droid Sans Mono', Courier, monospace"},string:{"text-align":"left"},input:{padding:0,margin:0,width:"80px",border:"none","font-size":"1rem"},"input-active":{outline:"#7FDBFF auto 3px"},table:{},thead:{},th:{},td:{}}},c=t.propTypes={active_cell:i.default.array,columns:i.default.arrayOf(i.default.object),dataframe:i.default.arrayOf(i.default.object),dataframe_previous:i.default.arrayOf(i.default.object),dataframe_timestamp:i.default.any,editable:i.default.bool,end_cell:i.default.arrayOf(i.default.number),id:i.default.string.isRequired,is_focused:i.default.bool,merge_duplicate_headers:i.default.bool,n_fixed_columns:i.default.number,n_fixed_rows:i.default.number,row_deletable:i.default.bool,row_selectable:i.default.oneOf(["single","multi",!1]),selected_cell:i.default.arrayOf(i.default.arrayOf(i.default.number)),selected_rows:i.default.arrayOf(i.default.number),setProps:i.default.any,start_cell:i.default.arrayOf(i.default.number),style_as_list_view:i.default.bool,table_style:i.default.arrayOf(i.default.shape({selector:i.default.string,rule:i.default.string})),virtualization:i.default.oneOf(["fe","be",!0,!1]),virtualization_settings:i.default.shape({displayed_pages:i.default.number,current_page:i.default.number,page_size:i.default.number}),navigation:i.default.string,column_conditional_dropdowns:i.default.arrayOf(i.default.shape({id:i.default.string,dropdowns:i.default.arrayOf(i.default.shape({condition:i.default.string,dropdown:i.default.arrayOf(i.default.shape({label:i.default.string,value:i.default.any}))}))})),column_static_dropdown:i.default.arrayOf(i.default.shape({id:i.default.string,dropdown:i.default.arrayOf(i.default.shape({label:i.default.string,value:i.default.any}))})),column_conditional_style:i.default.arrayOf(i.default.shape({id:i.default.string,styles:i.default.arrayOf(i.default.shape({condition:i.default.string,style:i.default.object}))})),column_static_style:i.default.arrayOf(i.default.shape({id:i.default.string,style:i.default.object})),row_conditional_styles:i.default.arrayOf(i.default.shape({condition:i.default.string,style:i.default.object})),row_static_style:i.default.object,filtering:i.default.oneOf(["fe","be",!0,!1]),filtering_settings:i.default.string,filtering_type:i.default.oneOf(["basic"]),filtering_types:i.default.arrayOf(i.default.oneOf(["basic"])),sorting:i.default.oneOf(["fe","be",!0,!1]),sorting_type:i.default.oneOf(["single","multi"]),sorting_settings:i.default.arrayOf(i.default.shape({columnId:i.default.oneOfType([i.default.string,i.default.number]),direction:i.default.oneOf(["asc","desc"])})),sorting_treat_empty_string_as_none:i.default.bool,virtual_dataframe:i.default.arrayOf(i.default.object),virtual_dataframe_indices:i.default.arrayOf(i.default.number),dropdown_properties:i.default.any};a.defaultProps=l,a.propTypes=c},function(e,t,n){"use strict";var r=n(28);function o(){}e.exports=function(){function e(e,t,n,o,i,u){if(u!==r){var s=new Error("Calling PropTypes validators directly is not supported by the `prop-types` package. Use PropTypes.checkPropTypes() to call them. Read more at http://fb.me/use-check-prop-types");throw s.name="Invariant Violation",s}}function t(){return e}e.isRequired=e;var n={array:e,bool:e,func:e,number:e,object:e,string:e,symbol:e,any:e,arrayOf:t,element:e,instanceOf:t,node:e,objectOf:t,oneOf:t,oneOfType:t,shape:t,exact:t};return n.checkPropTypes=o,n.PropTypes=n,n}},function(e,t,n){"use strict";e.exports="SECRET_DO_NOT_PASS_THIS_OR_YOU_WILL_BE_FIRED"},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r=n(1),o=c(r),i=function(e){if(e&&e.__esModule)return e;var t={};if(null!=e)for(var n in e)Object.prototype.hasOwnProperty.call(e,n)&&(t[n]=e[n]);return t.default=e,t}(n(2)),u=n(5),s=c(n(30)),a=c(n(34)),l=c(n(50));function c(e){return e&&e.__esModule?e:{default:e}}n(51),n(54),n(56);t.default=class extends r.Component{constructor(e){super(e),this.__adapter=(0,u.memoizeOne)(()=>new l.default(this)),this.__setProps=(0,u.memoizeOne)(e=>e?t=>{if(i.has("dataframe",t)){const e=this.props.dataframe;t.dataframe_timestamp=Date.now(),t.dataframe_previous=e}e(t)}:e=>this.setState(e)),this.__virtualizer=(0,u.memoizeOne)((e,t)=>s.default.getVirtualizer(this.adapter))}get setProps(){return this.__setProps(this.props.setProps)}render(){const e=this.setProps,t=this.virtualizer;return t.refresh(),o.default.createElement(a.default,Object.assign({},i.mergeAll([this.props,this.state,{setProps:e,virtualizer:t}])))}get adapter(){return this.__adapter()}get virtualizer(){var e=this.props;const t=e.virtualization,n=e.virtualization_settings;return this.__virtualizer(t,n)}}},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r=u(n(31)),o=u(n(32)),i=u(n(33));function u(e){return e&&e.__esModule?e:{default:e}}t.default=class{static getVirtualizer(e){switch(e.virtualization){case!1:return new i.default(e);case!0:case"fe":return new o.default(e);case"be":return new r.default(e);default:throw new Error(`Unknown virtualization type: '${e.virtualization}'`)}}}},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r=function(e){return e&&e.__esModule?e:{default:e}}(n(10));t.default=class extends r.default{constructor(e){super(e)}getDataframe(){var e=this.target;return{dataframe:e.dataframe,indices:e.indices}}get offset(){return 0}loadNext(){let e=this.target.settings;e.current_page++,this.target.update({settings:e})}loadPrevious(){let e=this.target.settings;e.current_page<=0||(e.current_page--,this.target.update({settings:e}))}}},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r=function(e){return e&&e.__esModule?e:{default:e}}(n(10));t.default=class extends r.default{constructor(e){super(e)}getDataframe(){var e=this.target;let t=e.settings,n=e.dataframe,r=e.indices,o=Math.min(t.current_page,Math.floor(n.length/t.page_size));return this.firstIndex=t.page_size*o,this.lastIndex=Math.min(this.firstIndex+t.displayed_pages*t.page_size,n.length),{dataframe:n.slice(this.firstIndex,this.lastIndex),indices:r.slice(this.firstIndex,this.lastIndex)}}get offset(){return this.firstIndex}loadNext(){var e=this.target;let t=e.settings,n=e.dataframe,r=Math.floor(n.length/t.page_size);t.current_page>=r||(t.current_page++,this.target.update({settings:t}))}loadPrevious(){let e=this.target.settings;e.current_page<=0||(e.current_page--,this.target.update({settings:e}))}}},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r=function(e){if(e&&e.__esModule)return e;var t={};if(null!=e)for(var n in e)Object.prototype.hasOwnProperty.call(e,n)&&(t[n]=e[n]);return t.default=e,t}(n(2)),o=function(e){return e&&e.__esModule?e:{default:e}}(n(10));t.default=class extends o.default{constructor(e){super(e),this.refresh()}getDataframe(){let e=this.target.dataframe;return{dataframe:e,indices:r.range(0,e.length)}}get offset(){return 0}loadNext(){}loadPrevious(){}}},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r=n(1),o=m(r),i=function(e){if(e&&e.__esModule)return e;var t={};if(null!=e)for(var n in e)Object.prototype.hasOwnProperty.call(e,n)&&(t[n]=e[n]);return t.default=e,t}(n(2)),u=m(n(13)),s=n(14),a=n(15),l=n(35),c=n(36),p=m(c),d=m(n(3)),f=n(5),h=m(n(11)),v=m(n(39)),g=m(n(42)),y=m(n(20)),b=m(n(46));function m(e){return e&&e.__esModule?e:{default:e}}const x=i.sort((e,t)=>e-t);t.default=class extends r.Component{constructor(e){super(e),this.getLexerResult=(0,f.memoizeOne)(h.default),this.handleClickOutside=(e=>{const t=this.$el;t&&!t.contains(e.target)&&this.props.is_focused&&this.props.setProps({is_focused:!1})}),this.handlePaste=(e=>{const t=this.$el;t&&t.contains(document.activeElement)&&this.onPaste(e)}),this.handleResize=(()=>{var e=this.refs;const t=e.r0c0,n=e.r0c1,r=e.r1c0,o=e.r1c1;let i=n.querySelectorAll("tr");t.querySelectorAll("tr").forEach((e,t)=>{const n=i[t];e.style.height=getComputedStyle(n).height});let u=o.querySelectorAll("tr > th:first-of-type");r.querySelectorAll("tr > th:first-of-type").forEach((e,t)=>{const n=u[t].parentElement;e.parentElement.style.height=getComputedStyle(n).height});const s=o.querySelector("tr > td:first-of-type");if(s){const e=s.parentElement;this.stylesheet.setRule(".cell-1-0 tr",`height: ${getComputedStyle(e).height}`)}}),this.handleKeyDown=(e=>{var t=this.props;const n=t.active_cell,r=t.columns,o=t.setProps,i=t.is_focused,u=t.editable;if(d.default.trace(`handleKeyDown: ${e.key}`),(0,a.isCtrlMetaKey)(e.keyCode))return;const l=(0,a.isCtrlDown)(e);l&&e.keyCode===a.KEY_CODES.V||e.keyCode===a.KEY_CODES.C&&l&&!i||(e.keyCode!==a.KEY_CODES.ESCAPE?e.keyCode!==a.KEY_CODES.ENTER||i||!(0,s.colIsEditable)(u,r[n[1]])?i&&e.keyCode!==a.KEY_CODES.TAB&&e.keyCode!==a.KEY_CODES.ENTER||((0,a.isNavKey)(e.keyCode)?this.switchCell(e):e.keyCode===a.KEY_CODES.BACKSPACE||e.keyCode===a.KEY_CODES.DELETE?this.deleteCell(e):this.props.is_focused||!(0,s.colIsEditable)(u,r[n[1]])||(0,a.isMetaKey)(e.keyCode)||o({is_focused:!0})):o({is_focused:!0}):o({is_focused:!1}))}),this.switchCell=(e=>{const t=e;var n=this.props;const r=n.active_cell,o=n.columns,u=n.row_deletable,s=n.row_selectable,l=n.selected_cell,c=n.setProps,p=n.virtualizer.dataframe;e.preventDefault(),this.$el.focus();const d=l.length>1,f=t.keyCode===a.KEY_CODES.ENTER||t.keyCode===a.KEY_CODES.TAB;if(d&&f)return void c({is_focused:!1,active_cell:this.getNextCell(t,{currentCell:r,restrictToSelection:!0})});if(!t.shiftKey){const e=this.getNextCell(t,{currentCell:r,restrictToSelection:!1});return void c({is_focused:!1,selected_cell:[e],active_cell:e})}let h=[],v=[];const g=x(i.uniq(i.pluck(0,l))),y=x(i.uniq(i.pluck(1,l))),b=g[0],m=y[0],E=g[g.length-1],w=y[y.length-1],_=(u?1:0)+(s?1:0),O=[];o.forEach((e,t)=>{e.hidden||O.push(t+_)});const S=t.keyCode===a.KEY_CODES.ARROW_DOWN||t.keyCode===a.KEY_CODES.ENTER,C=t.keyCode===a.KEY_CODES.ARROW_UP,A=t.keyCode===a.KEY_CODES.ARROW_RIGHT||t.keyCode===a.KEY_CODES.TAB,k=t.keyCode===a.KEY_CODES.ARROW_LEFT;S&&r[0]>b?v=y.map(e=>[b,e]):S&&E!==p.length-1?h=y.map(e=>[E+1,e]):C&&r[0][E,e]):C&&b>0?h=y.map(e=>[b-1,e]):k&&r[1][e,w]):k&&m>0?h=g.map(e=>[e,m-1]):A&&r[1]>m?v=g.map(e=>[e,m]):A&&w+1<=i.last(O)&&(h=g.map(e=>[e,w+1])),c({is_focused:!1,selected_cell:i.without(v,i.uniq(i.concat(h,l)))})}),this.deleteCell=(e=>{var t=this.props;const n=t.columns,r=t.dataframe,o=t.editable,u=t.row_deletable,a=t.row_selectable,l=t.selected_cell,c=t.setProps,p=t.virtual_dataframe_indices;e.preventDefault();let d=r;const f=(u?1:0)+(a?1:0);i.map(e=>[p[e[0]],e[1]-f],l).forEach(e=>{(0,s.colIsEditable)(o,n[e[1]])&&(d=i.set(i.lensPath([e[0],n[e[1]].id]),"",d))}),c({dataframe:d})}),this.getNextCell=((e,{restrictToSelection:t,currentCell:n})=>{var r=this.props;const o=r.columns,u=r.row_deletable,s=r.row_selectable,c=r.selected_cell,p=r.virtualizer.dataframe,d=e,f=[],h=(u?1:0)+(s?1:0);switch(t||o.forEach((e,t)=>{e.hidden||f.push(t+h)}),d.keyCode){case a.KEY_CODES.ARROW_LEFT:return t?(0,l.selectionCycle)([n[0],n[1]-1],c):[n[0],i.max(f[0],f[i.indexOf(n[1],f)-1])];case a.KEY_CODES.ARROW_RIGHT:case a.KEY_CODES.TAB:return t?(0,l.selectionCycle)([n[0],n[1]+1],c):[n[0],i.min(i.last(f),f[i.indexOf(n[1],f)+1])];case a.KEY_CODES.ARROW_UP:return t?(0,l.selectionCycle)([n[0]-1,n[1]],c):[i.max(0,n[0]-1),n[1]];case a.KEY_CODES.ARROW_DOWN:case a.KEY_CODES.ENTER:return t?(0,l.selectionCycle)([n[0]+1,n[1]],c):[i.min(p.length-1,n[0]+1),n[1]];default:throw new Error(`Table.getNextCell: unknown navigation keycode ${d.keyCode}`)}}),this.onCopy=(e=>{var t=this.props;const n=t.columns,r=t.row_deletable,o=t.row_selectable,u=t.selected_cell,s=t.virtualizer.dataframe,a=(r?1:0)+(o?1:0),l=i.map(e=>[e[0],e[1]-a],u);v.default.toClipboard(e,l,n,s),this.$el.focus()}),this.onPaste=(e=>{var t=this.props;const n=t.active_cell,r=t.columns,o=t.dataframe,i=t.editable,u=t.filtering_settings,s=t.row_deletable,a=t.row_selectable,l=t.setProps,c=t.sorting_settings,p=t.virtual_dataframe_indices;if(!i)return;const d=(s?1:0)+(a?1:0),f=[n[0],n[1]-d],h=v.default.fromClipboard(e,f,p,r,o,!0,!c.length||!u.length);h&&l(h)}),this.loadNext=(()=>{this.props.virtualizer.loadNext()}),this.loadPrevious=(()=>{this.props.virtualizer.loadPrevious()}),this.onContainerScroll=(e=>{if(!this.props.n_fixed_columns)return;const t=this.refs.spreadsheet;e.target===t&&this.stylesheet.setRule(".frozen-left",`margin-top: ${-e.target.scrollTop}px;`)}),this.applyStyle=((e,t,n)=>{let r=0;t&&(this.stylesheet.setRule(`.dash-spreadsheet-inner td.column-${r}`,"width: 30px; max-width: 30px; min-width: 30px;"),this.stylesheet.setRule(`.dash-spreadsheet-inner th.column-${r}`,"width: 30px; max-width: 30px; min-width: 30px;"),++r),n&&(this.stylesheet.setRule(`.dash-spreadsheet-inner td.column-${r}`,"width: 30px; max-width: 30px; min-width: 30px;"),this.stylesheet.setRule(`.dash-spreadsheet-inner th.column-${r}`,"width: 30px; max-width: 30px; min-width: 30px;"),++r),i.forEach(e=>{const t=u.default.unit(e.width||c.DEFAULT_CELL_WIDTH,"px");this.stylesheet.setRule(`.dash-spreadsheet-inner td.column-${r}`,`width: ${t}; max-width: ${t}; min-width: ${t};`),this.stylesheet.setRule(`.dash-spreadsheet-inner th.column-${r}`,`width: ${t}; max-width: ${t}; min-width: ${t};`),++r},e)}),this.renderFragment=(e=>e?o.default.createElement("table",{tabIndex:-1},o.default.createElement("tbody",null,e.map((e,t)=>o.default.createElement("tr",{key:`row-${t}`},e)))):null),this.handleSetFilter=(e=>this.props.setProps({filtering_settings:e})),this.getCells=(()=>[...p.default.createHeaders(this.props),...this.filterFactory.createFilters(),...this.cellFactory.createCells()]),this.getFragments=((e,t,n)=>{const r=t?i.map(e=>e.splice(0,i.reduceWhile(e=>e.count(e.cells++,e.count+=t.props.colSpan||1,e),{cells:0,count:0},e).cells),e):null,o=n?e.splice(0,n):null,u=n&&r?r.splice(0,n):null;return[[this.renderFragment(u),this.renderFragment(o)],[this.renderFragment(r),this.renderFragment(e)]]}),this.handleDropdown=(()=>{const e=this.refs.r1c1;(0,y.default)(e.querySelector(".Select-menu-outer"))}),this.onScroll=(e=>{const t=this.refs.r0c1;d.default.trace(`ControlledTable fragment scrolled to (left,top)=(${e.target.scrollLeft},${e.target.scrollTop})`),t.style.marginLeft=`${-e.target.scrollLeft}px`,this.handleDropdown()}),this.cellFactory=new g.default(()=>this.props),this.filterFactory=new b.default(()=>{var e=this.props;const t=e.row_deletable,n=e.row_selectable,r=(t?1:0)+(n?1:0);return{columns:this.props.columns,filtering:this.props.filtering,filtering_settings:this.props.filtering_settings,filtering_type:this.props.filtering_type,id:this.props.id,offset:r,setFilter:this.handleSetFilter}}),this.stylesheet=new u.default(`#${e.id}`)}get lexerResult(){const e=this.props.filtering_settings;return this.getLexerResult(e)}componentDidMount(){this.props.selected_cell.length&&!i.contains(this.props.active_cell,this.props.selected_cell)&&this.props.setProps({active_cell:this.props.selected_cell[0]}),window.addEventListener("resize",this.handleResize),document.addEventListener("paste",this.handlePaste),document.addEventListener("mousedown",this.handleClickOutside)}componentWillUnmount(){window.removeEventListener("resize",this.handleResize),document.removeEventListener("mousedown",this.handleClickOutside),document.removeEventListener("paste",this.handlePaste)}componentWillUpdate(){const e=this.props.table_style;i.forEach(({selector:e,rule:t})=>{this.stylesheet.setRule(e,t)},e)}componentDidUpdate(){this.handleResize(),this.handleDropdown()}get $el(){return document.getElementById(this.props.id)}get displayPagination(){var e=this.props;const t=e.dataframe,n=e.navigation,r=e.virtualization,o=e.virtualization_settings;return"page"===n&&("fe"===r&&o.page_sizeo.default.createElement("div",{key:`r${t}`,ref:`r${t}`,className:`row row-${t}`,onScroll:this.onScroll},e.map((e,n)=>o.default.createElement("div",{key:n,ref:`r${t}c${n}`,className:`cell cell-${t}-${n}`},e)))))),this.displayPagination?o.default.createElement("div",null,o.default.createElement("button",{className:"previous-page",onClick:this.loadPrevious},"Previous"),o.default.createElement("button",{className:"next-page",onClick:this.loadNext},"Next")):null)}}},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r=function(){return function(e,t){if(Array.isArray(e))return e;if(Symbol.iterator in Object(e))return function(e,t){var n=[],r=!0,o=!1,i=void 0;try{for(var u,s=e[Symbol.iterator]();!(r=(u=s.next()).done)&&(n.push(u.value),!t||n.length!==t);r=!0);}catch(e){o=!0,i=e}finally{try{!r&&s.return&&s.return()}finally{if(o)throw i}}return n}(e,t);throw new TypeError("Invalid attempt to destructure non-iterable instance")}}();t.selectionCycle=function(e,t){const n=o.uniq(o.pluck(0,t)).sort((e,t)=>e-t),i=o.uniq(o.pluck(1,t)).sort((e,t)=>e-t),u=n[0],s=i[0],a=n[n.length-1],l=i[i.length-1];var c=r(e,2);const p=c[0],d=c[1],f=[p,d];p>a&&(f[0]=u,f[1]=d+1>l?s:d+1);pl&&(f[1]=s,f[0]=p+1>a?u:p+1);dArray.isArray(e.name)?e.name.length:1,h=(e,t)=>Array.isArray(e.name)?e.name[t]:"";class v{static getSorting(e,t){const n=o.find(t=>t.columnId===e,t);return n?n.direction:u.SortDirection.None}static doSort(e,t){return()=>{const n=t.sorting_settings,r=t.sorting_type;let o;switch(v.getSorting(e,n)){case u.SortDirection.Descending:o=u.SortDirection.Ascending;break;case u.SortDirection.Ascending:o=u.SortDirection.None;break;case u.SortDirection.None:default:o=u.SortDirection.Descending}const i="single"===r?a.default:s.default;t.setProps({sorting_settings:i(n,{columnId:e,direction:o})})}}static getSortingIcon(e,t){const n=t.sorting_settings;switch(v.getSorting(e,n)){case u.SortDirection.Descending:return"↑";case u.SortDirection.Ascending:return"↓";case u.SortDirection.None:default:return"↕"}}static createHeaderCells(e){const t=e.columns,n=e.columnRowIndex,u=e.labels,s=e.mergeCells,a=e.n_fixed_columns,c=e.offset,p=e.rowSorting,f=e.virtualization;let h=[];if(s){h=[0];let e=0;u.forEach((n,r)=>{t[r].hidden||n===u[e]||(h.push(r),e=r)})}else h=o.range(0,t.length);const g=t.filter(e=>!e.hidden);return o.filter(e=>!!e,h.map((y,b)=>{const m=t[y];if(m.hidden)return null;const x=g.indexOf(m)+c;let E;if(s){const e=o.slice(y,h[b+1]||1/0,t).filter(o.propEq("hidden",!0)).length;E=y===o.last(h)?u.length-y-e:h[b+1]-y-e}else E=1;const w=g.indexOf(m),_=`calc(${g.filter((e,t)=>!e.hidden&&t>=w&&ti.default.unit(e.width||d,"px")).join(" + ")})`;return r.default.createElement("th",{key:`header-cell-${y}`,colSpan:E,className:`column-${y+c} `+(y===t.length-1||y===o.last(h)?"cell--right-last ":""),style:x{(0,n.setProps)(l.editColumnName(e,t,n))}}(m,n,e)},"✎"):"",m.deletable&&"be"!==f&&"Boolean"===o.type(m.deletable)||"Number"===o.type(m.deletable)&&m.deletable===n?r.default.createElement("span",{className:"column-header--delete",onClick:function(e,t,n){return()=>{(0,n.setProps)(l.deleteColumn(e,t,n))}}(m,n,e)},"×"):"",r.default.createElement("span",null,u[y]))}))}static createDeletableHeader(e){return e.row_deletable?r.default.createElement("th",{key:"delete",className:"expanded-row--empty-cell",style:{width:"30px",maxWidth:"30px",minWidth:"30px"}}):null}static createSelectableHeader(e){return e.row_selectable?r.default.createElement("th",{key:"select",className:"expanded-row--empty-cell",style:{width:"30px",maxWidth:"30px",minWidth:"30px"}}):null}static createHeaders(e){let t=e.columns,n=e.dataframe,r=e.sorting,i=e.merge_duplicate_headers,u=e.n_fixed_columns,s=e.row_deletable,a=e.row_selectable,l=e.setProps,c=e.sorting_settings,p=e.sorting_type,d=e.virtualization;const g=(s?1:0)+(a?1:0),y=this.createDeletableHeader(e),b=this.createSelectableHeader(e),m=Math.max.apply(Math,t.map(f));let x;return x=1===m?[[...y?[y]:[],...b?[b]:[],...v.createHeaderCells({columns:t,columnRowIndex:0,dataframe:n,labels:o.pluck("name",t),n_fixed_columns:u,offset:g,rowSorting:r,setProps:l,sorting_settings:c,sorting_type:p,virtualization:d})]]:o.range(0,m).map(e=>[...y?[y]:[],...b?[b]:[],...v.createHeaderCells({columns:t,columnRowIndex:e,dataframe:n,labels:t.map(t=>o.isNil(t.name)&&e===m-1?t.id:h(t,e)),n_fixed_columns:u,offset:g,rowSorting:!!r&&e+1===m,mergeCells:i&&e+1!==m,setProps:l,sorting_settings:c,sorting_type:p,virtualization:d})])}}t.default=v},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r=function(e){if(e&&e.__esModule)return e;var t={};if(null!=e)for(var n in e)Object.prototype.hasOwnProperty.call(e,n)&&(t[n]=e[n]);return t.default=e,t}(n(2)),o=function(e){return e&&e.__esModule?e:{default:e}}(n(3)),i=n(7);t.default=((e,t)=>{if(o.default.trace("multi - updateSettings",e,t),e=r.clone(e),t.direction===i.SortDirection.None){const n=r.findIndex(e=>e.columnId===t.columnId,e);-1!==n&&e.splice(n,1)}else{const n=r.find(e=>e.columnId===t.columnId,e);n?n.direction=t.direction:e.push(t)}return e})},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r=function(e){return e&&e.__esModule?e:{default:e}}(n(3)),o=n(7);t.default=((e,t)=>(r.default.trace("single - updateSettings",e,t),t.direction===o.SortDirection.None?[]:[t]))},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r=function(e){if(e&&e.__esModule)return e;var t={};if(null!=e)for(var n in e)Object.prototype.hasOwnProperty.call(e,n)&&(t[n]=e[n]);return t.default=e,t}(n(2)),o=a(n(40)),i=a(n(41)),u=a(n(3)),s=n(14);function a(e){return e&&e.__esModule?e:{default:e}}t.default=class{static toClipboard(e,t,n,s){const a=r.uniq(r.pluck(0,t).sort((e,t)=>e-t)),l=r.uniq(r.pluck(1,t).sort((e,t)=>e-t)),c=r.slice(r.head(a),r.last(a)+1,s).map(e=>r.props(l,r.props(r.pluck("id",n),e))),p=o.default.prototype.stringify(c);u.default.trace("TableClipboard -- set clipboard data: ",p),i.default.set(e,p)}static fromClipboard(e,t,n,a,l,c=!0,p=!0){const d=i.default.get(e);if(u.default.trace("TableClipboard -- get clipboard data: ",d),!d)return;const f=o.default.prototype.parse(d);let h=l;const v=a;if(c&&f[0].length+t[1]>=a.length)for(let e=a.length;et[`Column ${e}`]="");p&&u.default.debug("Clipboard -- Sorting or filtering active, do not create new rows");const g=n[t[0]];if(p&&f.length+g>=l.length){const e={};a.forEach(t=>e[t.id]=""),h=r.concat(h,r.repeat(e,f.length+g-l.length))}return f.forEach((e,o)=>e.forEach((e,i)=>{const u=t[0]+o;if(n.length<=t[0]+o)return;const a=n[u],l=t[1]+i,c=v[l];c&&(0,s.colIsEditable)(!0,c)&&(h=r.set(r.lensPath([a,c.id]),e,h))})),{dataframe:h,columns:v}}}},function(e,t){!function(t){"use strict";function n(){}function r(e){return e.split('"').length-1}n.prototype=Object.create(Object.prototype,{parse:{value:function(e){var t,n,o,i,u,s,a,l=[],c=0;for((o=e.split("\n")).length>1&&""===o[o.length-1]&&o.pop(),t=0,n=o.length;t0&&(u+="\t"),"string"==typeof(i=e[t][r])?i.indexOf("\n")>-1?u+='"'+i.replace(/"/g,'""')+'"':u+=i:u+=null===i||void 0===i?"":i;u+="\n"}return u},enumerable:!0,configurable:!1,writable:!1}}),void 0!==e&&e.exports?e.exports=n:t.SheetClip=n}(this)},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});t.default=class{static set(e,t){e.clipboardData.setData("text/plain",t),e.preventDefault()}static get(e){let t;return t=e.clipboardData?e.clipboardData.getData("text/plain"):void 0}}},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r=a(n(2)),o=s(n(1)),i=s(n(43)),u=a(n(16));function s(e){return e&&e.__esModule?e:{default:e}}function a(e){if(e&&e.__esModule)return e;var t={};if(null!=e)for(var n in e)Object.prototype.hasOwnProperty.call(e,n)&&(t[n]=e[n]);return t.default=e,t}t.default=class{constructor(e){this.propsFn=e,this.handlers=new Map,this.isCellSelected=((e,t,n)=>e&&r.contains([t,n],e)),this.getEventHandler=((e,t,n)=>{const r=this.handlers.get(e)||this.handlers.set(e,new Map).get(e),o=r.get(t)||r.set(t,new Map).get(t);return o.get(n)||o.set(n,e.bind(this,t,n)).get(n)}),this.handleClick=((e,t,n)=>{var o=this.props;const i=o.columns,u=o.editable,s=o.is_focused,a=o.row_deletable,l=o.row_selectable,c=o.selected_cell,p=o.setProps,d=this.isCellSelected(c,e,t);if(!u)return;if(s||n.preventDefault(),d)return;const f=(a?1:0)+(l?1:0);n.preventDefault();const h=[e,t+f],v={is_focused:!1,active_cell:h},g=[];i.forEach((e,t)=>{e.hidden||g.push(t+f)});const y=r.uniq(r.pluck(0,c)).sort((e,t)=>e-t),b=r.uniq(r.pluck(1,c)).sort((e,t)=>e-t),m=y[0],x=b[0];n.shiftKey?v.selected_cell=r.xprod(r.range(r.min(m,h[0]),r.max(m,h[0])+1),r.range(r.min(x,h[1]),r.max(x,h[1])+1)).filter(e=>r.contains(e[1],g)):v.selected_cell=[h],p(v)}),this.handleDoubleClick=((e,t,n)=>{var r=this.props;const o=r.editable,i=r.is_focused,u=r.row_deletable,s=r.row_selectable,a=r.setProps;if(!o)return;const l=[e,t+((u?1:0)+(s?1:0))];i||(n.preventDefault(),a({selected_cell:[l],active_cell:l,is_focused:!0}))}),this.handleChange=((e,t,n)=>{var o=this.props;const i=o.columns,u=o.dataframe,s=o.editable,a=o.setProps,l=i[t];s&&a({dataframe:r.set(r.lensPath([e,l.id]),n,u)})}),this.handlePaste=(e=>{e.preventDefault()})}get props(){return this.propsFn()}rowSelectCell(e){var t=this.props;const n=t.setProps,i=t.selected_rows,u=t.row_selectable;return u?o.default.createElement("td",{key:"select",className:"select-cell",style:{width:"30px",maxWidth:"30px",minWidth:"30px"}},o.default.createElement("input",{type:"single"===u?"radio":"checkbox",name:"row-select",checked:r.contains(e,i),onChange:()=>n({selected_rows:"single"===u?[e]:r.ifElse(r.contains(e),r.without([e]),r.append(e))(i)})})):null}rowDeleteCell(e){var t=this.props;const n=t.setProps;return t.row_deletable?o.default.createElement("td",{key:"delete",className:"delete-cell",onClick:()=>n(u.deleteRow(e,this.props)),style:{width:"30px",maxWidth:"30px",minWidth:"30px"}},"×"):null}createCells(){var e=this.props;const t=e.active_cell,n=e.columns,u=e.column_conditional_dropdowns,s=e.column_conditional_styles,a=e.column_static_dropdown,l=e.column_static_style,c=e.dropdown_properties,p=e.editable,d=e.id,f=e.is_focused,h=e.row_deletable,v=e.row_selectable,g=e.selected_cell,y=e.virtualizer,b=y.dataframe,m=y.indices,x=n.filter(e=>!e.hidden),E=(h?1:0)+(v?1:0);return b.map((e,h)=>{const v=m[h],y=this.rowDeleteCell(v),b=this.rowSelectCell(v),w=x.map((y,b)=>{b+=E;let m=(c&&c[y.id]&&(c[y.id].length>v?c[y.id][v]:null)||y||{}).options;const x=n.indexOf(y),w=[`column-${x+E}`];let _=u.find(e=>e.id===y.id),O=a.find(e=>e.id===y.id);_=_&&_.dropdowns,O=m||O&&O.dropdown;let S=s.find(e=>e.id===y.id),C=l.find(e=>e.id===y.id);return S=S&&S.styles,C=C&&C.style,o.default.createElement(i.default,{key:`${y.id}-${b}`,active:t[0]===h&&t[1]===x+E,classes:w,clearable:y.clearable,conditionalDropdowns:_,conditionalStyles:S,datum:e,editable:p,focused:!!f,onClick:this.getEventHandler(this.handleClick,h,x),onDoubleClick:this.getEventHandler(this.handleDoubleClick,h,x),onPaste:this.handlePaste,onChange:this.getEventHandler(this.handleChange,v,x),property:y.id,selected:r.contains([h,x+E],g),staticDropdown:O,staticStyle:C,tableId:d,type:y.type,value:e[y.id]})});return b&&w.unshift(b),y&&w.unshift(y),w})}}},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var r=function(e){if(e&&e.__esModule)return e;var t={};if(null!=e)for(var n in e)Object.prototype.hasOwnProperty.call(e,n)&&(t[n]=e[n]);return t.default=e,t}(n(2)),o=n(1),i=f(o),u=f(n(44)),s=n(12),a=n(5),l=f(n(45)),c=f(n(18)),p=n(15),d=f(n(20));function f(e){return e&&e.__esModule?e:{default:e}}class h extends o.Component{constructor(e){super(e),this.getDropdown=(0,a.memoizeOne)((...e)=>e.length?e.slice(-1)[0]:void 0),this.getStyle=(0,a.memoizeOne)((...e)=>e.length?r.mergeAll(e):void 0),this.propagateChange=(()=>{if(this.state.value===this.props.value)return;(0,this.props.onChange)(this.state.value)}),this.handleChange=(e=>{this.setState({value:e.target.value})}),this.handleKeyDown=(e=>{e.keyCode===p.KEY_CODES.ENTER&&this.propagateChange()}),this.handleOpenDropdown=(()=>{var e=this.refs;const t=e.dropdown,n=e.td;(0,d.default)(t.wrapper.querySelector(".Select-menu-outer"),n)}),this.state={value:e.value}}get propsWithDefaults(){return this.props}get classes(){var e=this.propsWithDefaults;let t=e.active,n=e.classes,r=e.editable,o=e.selected,i=e.type;return[...t?["focused"]:[],...r?[]:["cell--uneditable"],...o?["cell--selected"]:[],..."dropdown"===i?["dropdown"]:[],...n]}renderDropdown(){var e=this.propsWithDefaults;const t=e.clearable,n=e.onChange,r=e.value,o=this.dropdown;return o?i.default.createElement(u.default,{ref:"dropdown",clearable:t,onChange:e=>{n(e?e.value:e)},onOpen:this.handleOpenDropdown,options:o,placeholder:"",value:r}):this.renderValue()}renderInput(){var e=this.propsWithDefaults;const t=e.active,n=e.focused,r=e.onClick,o=e.onDoubleClick,u=e.onPaste,s={className:[...t?["input-active"]:[],...n?["focused"]:["unfocused"],...["cell-value"]].join(" "),onClick:r,onDoubleClick:o};return t||this.state.value!==this.props.value?i.default.createElement("input",Object.assign({ref:"textInput",type:"text",value:this.state.value,onBlur:this.propagateChange,onChange:this.handleChange,onKeyDown:this.handleKeyDown,onPaste:u},s)):this.renderValue(s)}renderValue(e={}){const t=this.propsWithDefaults.value;return i.default.createElement("div",Object.assign({},e),t)}renderInner(){switch(this.props.type){case"text":case"numeric":return this.renderInput();case"dropdown":return this.renderDropdown();default:return this.renderValue()}}get dropdown(){var e=this.propsWithDefaults;let t=e.conditionalDropdowns,n=e.datum,o=e.property,i=e.staticDropdown,u=e.tableId;const s=[...i?[i]:[],...r.map(([e])=>e.dropdown,r.filter(([e,t])=>h.dropdownAstCache([u,o,t],[e.condition]).evaluate(n),r.addIndex(r.map)((e,t)=>[e,t],t)))];return this.getDropdown(...s)}get style(){var e=this.propsWithDefaults;let t=e.conditionalStyles,n=e.datum,o=e.property,i=e.staticStyle,u=e.tableId;const s=[i,...r.map(([e])=>e.style,r.filter(([e,t])=>h.styleAstCache([u,o,t],[e.condition]).evaluate(n),r.addIndex(r.map)((e,t)=>[e,t],t)))];return this.getStyle(...s)}render(){return i.default.createElement("td",{ref:"td",tabIndex:-1,className:this.classes.join(" "),style:this.style},this.renderInner())}componentWillReceiveProps(e){const t=e.value;this.state.value!==t&&this.setState({value:t})}componentDidUpdate(){const e=this.propsWithDefaults.active,t=this.refs.textInput;e&&t&&document.activeElement!==t&&(t.focus(),t.setSelectionRange(0,t.value?t.value.length:0)),e&&this.refs.dropdown&&this.refs.td.focus()}shouldComponentUpdate(e,t){const n=this.props,r=this.state;return!(0,s.isEqual)(n,e,!0)||!(0,s.isEqual)(r,t,!0)}}t.default=h,h.dropdownAstCache=(0,l.default)(e=>new c.default(e)),h.styleAstCache=(0,l.default)(e=>new c.default(e)),h.defaultProps={classes:[],conditionalDropdowns:[],conditionalStyles:[],staticStyle:{},type:"text"}},function(e,t,n){"use strict";n.r(t),n.d(t,"Async",function(){return V}),n.d(t,"AsyncCreatable",function(){return Y}),n.d(t,"Creatable",function(){return L}),n.d(t,"Value",function(){return F}),n.d(t,"Option",function(){return k}),n.d(t,"defaultMenuRenderer",function(){return b}),n.d(t,"defaultArrowRenderer",function(){return d}),n.d(t,"defaultClearRenderer",function(){return f}),n.d(t,"defaultFilterOptions",function(){return y});var r=n(22),o=n.n(r),i=n(4),u=n.n(i),s=n(0),a=n.n(s),l=n(1),c=n.n(l),p=n(6),d=function(e){var t=e.onMouseDown;return c.a.createElement("span",{className:"Select-arrow",onMouseDown:t})};d.propTypes={onMouseDown:a.a.func};var f=function(){return c.a.createElement("span",{className:"Select-clear",dangerouslySetInnerHTML:{__html:"×"}})},h=[{base:"A",letters:/[\u0041\u24B6\uFF21\u00C0\u00C1\u00C2\u1EA6\u1EA4\u1EAA\u1EA8\u00C3\u0100\u0102\u1EB0\u1EAE\u1EB4\u1EB2\u0226\u01E0\u00C4\u01DE\u1EA2\u00C5\u01FA\u01CD\u0200\u0202\u1EA0\u1EAC\u1EB6\u1E00\u0104\u023A\u2C6F]/g},{base:"AA",letters:/[\uA732]/g},{base:"AE",letters:/[\u00C6\u01FC\u01E2]/g},{base:"AO",letters:/[\uA734]/g},{base:"AU",letters:/[\uA736]/g},{base:"AV",letters:/[\uA738\uA73A]/g},{base:"AY",letters:/[\uA73C]/g},{base:"B",letters:/[\u0042\u24B7\uFF22\u1E02\u1E04\u1E06\u0243\u0182\u0181]/g},{base:"C",letters:/[\u0043\u24B8\uFF23\u0106\u0108\u010A\u010C\u00C7\u1E08\u0187\u023B\uA73E]/g},{base:"D",letters:/[\u0044\u24B9\uFF24\u1E0A\u010E\u1E0C\u1E10\u1E12\u1E0E\u0110\u018B\u018A\u0189\uA779]/g},{base:"DZ",letters:/[\u01F1\u01C4]/g},{base:"Dz",letters:/[\u01F2\u01C5]/g},{base:"E",letters:/[\u0045\u24BA\uFF25\u00C8\u00C9\u00CA\u1EC0\u1EBE\u1EC4\u1EC2\u1EBC\u0112\u1E14\u1E16\u0114\u0116\u00CB\u1EBA\u011A\u0204\u0206\u1EB8\u1EC6\u0228\u1E1C\u0118\u1E18\u1E1A\u0190\u018E]/g},{base:"F",letters:/[\u0046\u24BB\uFF26\u1E1E\u0191\uA77B]/g},{base:"G",letters:/[\u0047\u24BC\uFF27\u01F4\u011C\u1E20\u011E\u0120\u01E6\u0122\u01E4\u0193\uA7A0\uA77D\uA77E]/g},{base:"H",letters:/[\u0048\u24BD\uFF28\u0124\u1E22\u1E26\u021E\u1E24\u1E28\u1E2A\u0126\u2C67\u2C75\uA78D]/g},{base:"I",letters:/[\u0049\u24BE\uFF29\u00CC\u00CD\u00CE\u0128\u012A\u012C\u0130\u00CF\u1E2E\u1EC8\u01CF\u0208\u020A\u1ECA\u012E\u1E2C\u0197]/g},{base:"J",letters:/[\u004A\u24BF\uFF2A\u0134\u0248]/g},{base:"K",letters:/[\u004B\u24C0\uFF2B\u1E30\u01E8\u1E32\u0136\u1E34\u0198\u2C69\uA740\uA742\uA744\uA7A2]/g},{base:"L",letters:/[\u004C\u24C1\uFF2C\u013F\u0139\u013D\u1E36\u1E38\u013B\u1E3C\u1E3A\u0141\u023D\u2C62\u2C60\uA748\uA746\uA780]/g},{base:"LJ",letters:/[\u01C7]/g},{base:"Lj",letters:/[\u01C8]/g},{base:"M",letters:/[\u004D\u24C2\uFF2D\u1E3E\u1E40\u1E42\u2C6E\u019C]/g},{base:"N",letters:/[\u004E\u24C3\uFF2E\u01F8\u0143\u00D1\u1E44\u0147\u1E46\u0145\u1E4A\u1E48\u0220\u019D\uA790\uA7A4]/g},{base:"NJ",letters:/[\u01CA]/g},{base:"Nj",letters:/[\u01CB]/g},{base:"O",letters:/[\u004F\u24C4\uFF2F\u00D2\u00D3\u00D4\u1ED2\u1ED0\u1ED6\u1ED4\u00D5\u1E4C\u022C\u1E4E\u014C\u1E50\u1E52\u014E\u022E\u0230\u00D6\u022A\u1ECE\u0150\u01D1\u020C\u020E\u01A0\u1EDC\u1EDA\u1EE0\u1EDE\u1EE2\u1ECC\u1ED8\u01EA\u01EC\u00D8\u01FE\u0186\u019F\uA74A\uA74C]/g},{base:"OI",letters:/[\u01A2]/g},{base:"OO",letters:/[\uA74E]/g},{base:"OU",letters:/[\u0222]/g},{base:"P",letters:/[\u0050\u24C5\uFF30\u1E54\u1E56\u01A4\u2C63\uA750\uA752\uA754]/g},{base:"Q",letters:/[\u0051\u24C6\uFF31\uA756\uA758\u024A]/g},{base:"R",letters:/[\u0052\u24C7\uFF32\u0154\u1E58\u0158\u0210\u0212\u1E5A\u1E5C\u0156\u1E5E\u024C\u2C64\uA75A\uA7A6\uA782]/g},{base:"S",letters:/[\u0053\u24C8\uFF33\u1E9E\u015A\u1E64\u015C\u1E60\u0160\u1E66\u1E62\u1E68\u0218\u015E\u2C7E\uA7A8\uA784]/g},{base:"T",letters:/[\u0054\u24C9\uFF34\u1E6A\u0164\u1E6C\u021A\u0162\u1E70\u1E6E\u0166\u01AC\u01AE\u023E\uA786]/g},{base:"TZ",letters:/[\uA728]/g},{base:"U",letters:/[\u0055\u24CA\uFF35\u00D9\u00DA\u00DB\u0168\u1E78\u016A\u1E7A\u016C\u00DC\u01DB\u01D7\u01D5\u01D9\u1EE6\u016E\u0170\u01D3\u0214\u0216\u01AF\u1EEA\u1EE8\u1EEE\u1EEC\u1EF0\u1EE4\u1E72\u0172\u1E76\u1E74\u0244]/g},{base:"V",letters:/[\u0056\u24CB\uFF36\u1E7C\u1E7E\u01B2\uA75E\u0245]/g},{base:"VY",letters:/[\uA760]/g},{base:"W",letters:/[\u0057\u24CC\uFF37\u1E80\u1E82\u0174\u1E86\u1E84\u1E88\u2C72]/g},{base:"X",letters:/[\u0058\u24CD\uFF38\u1E8A\u1E8C]/g},{base:"Y",letters:/[\u0059\u24CE\uFF39\u1EF2\u00DD\u0176\u1EF8\u0232\u1E8E\u0178\u1EF6\u1EF4\u01B3\u024E\u1EFE]/g},{base:"Z",letters:/[\u005A\u24CF\uFF3A\u0179\u1E90\u017B\u017D\u1E92\u1E94\u01B5\u0224\u2C7F\u2C6B\uA762]/g},{base:"a",letters:/[\u0061\u24D0\uFF41\u1E9A\u00E0\u00E1\u00E2\u1EA7\u1EA5\u1EAB\u1EA9\u00E3\u0101\u0103\u1EB1\u1EAF\u1EB5\u1EB3\u0227\u01E1\u00E4\u01DF\u1EA3\u00E5\u01FB\u01CE\u0201\u0203\u1EA1\u1EAD\u1EB7\u1E01\u0105\u2C65\u0250]/g},{base:"aa",letters:/[\uA733]/g},{base:"ae",letters:/[\u00E6\u01FD\u01E3]/g},{base:"ao",letters:/[\uA735]/g},{base:"au",letters:/[\uA737]/g},{base:"av",letters:/[\uA739\uA73B]/g},{base:"ay",letters:/[\uA73D]/g},{base:"b",letters:/[\u0062\u24D1\uFF42\u1E03\u1E05\u1E07\u0180\u0183\u0253]/g},{base:"c",letters:/[\u0063\u24D2\uFF43\u0107\u0109\u010B\u010D\u00E7\u1E09\u0188\u023C\uA73F\u2184]/g},{base:"d",letters:/[\u0064\u24D3\uFF44\u1E0B\u010F\u1E0D\u1E11\u1E13\u1E0F\u0111\u018C\u0256\u0257\uA77A]/g},{base:"dz",letters:/[\u01F3\u01C6]/g},{base:"e",letters:/[\u0065\u24D4\uFF45\u00E8\u00E9\u00EA\u1EC1\u1EBF\u1EC5\u1EC3\u1EBD\u0113\u1E15\u1E17\u0115\u0117\u00EB\u1EBB\u011B\u0205\u0207\u1EB9\u1EC7\u0229\u1E1D\u0119\u1E19\u1E1B\u0247\u025B\u01DD]/g},{base:"f",letters:/[\u0066\u24D5\uFF46\u1E1F\u0192\uA77C]/g},{base:"g",letters:/[\u0067\u24D6\uFF47\u01F5\u011D\u1E21\u011F\u0121\u01E7\u0123\u01E5\u0260\uA7A1\u1D79\uA77F]/g},{base:"h",letters:/[\u0068\u24D7\uFF48\u0125\u1E23\u1E27\u021F\u1E25\u1E29\u1E2B\u1E96\u0127\u2C68\u2C76\u0265]/g},{base:"hv",letters:/[\u0195]/g},{base:"i",letters:/[\u0069\u24D8\uFF49\u00EC\u00ED\u00EE\u0129\u012B\u012D\u00EF\u1E2F\u1EC9\u01D0\u0209\u020B\u1ECB\u012F\u1E2D\u0268\u0131]/g},{base:"j",letters:/[\u006A\u24D9\uFF4A\u0135\u01F0\u0249]/g},{base:"k",letters:/[\u006B\u24DA\uFF4B\u1E31\u01E9\u1E33\u0137\u1E35\u0199\u2C6A\uA741\uA743\uA745\uA7A3]/g},{base:"l",letters:/[\u006C\u24DB\uFF4C\u0140\u013A\u013E\u1E37\u1E39\u013C\u1E3D\u1E3B\u017F\u0142\u019A\u026B\u2C61\uA749\uA781\uA747]/g},{base:"lj",letters:/[\u01C9]/g},{base:"m",letters:/[\u006D\u24DC\uFF4D\u1E3F\u1E41\u1E43\u0271\u026F]/g},{base:"n",letters:/[\u006E\u24DD\uFF4E\u01F9\u0144\u00F1\u1E45\u0148\u1E47\u0146\u1E4B\u1E49\u019E\u0272\u0149\uA791\uA7A5]/g},{base:"nj",letters:/[\u01CC]/g},{base:"o",letters:/[\u006F\u24DE\uFF4F\u00F2\u00F3\u00F4\u1ED3\u1ED1\u1ED7\u1ED5\u00F5\u1E4D\u022D\u1E4F\u014D\u1E51\u1E53\u014F\u022F\u0231\u00F6\u022B\u1ECF\u0151\u01D2\u020D\u020F\u01A1\u1EDD\u1EDB\u1EE1\u1EDF\u1EE3\u1ECD\u1ED9\u01EB\u01ED\u00F8\u01FF\u0254\uA74B\uA74D\u0275]/g},{base:"oi",letters:/[\u01A3]/g},{base:"ou",letters:/[\u0223]/g},{base:"oo",letters:/[\uA74F]/g},{base:"p",letters:/[\u0070\u24DF\uFF50\u1E55\u1E57\u01A5\u1D7D\uA751\uA753\uA755]/g},{base:"q",letters:/[\u0071\u24E0\uFF51\u024B\uA757\uA759]/g},{base:"r",letters:/[\u0072\u24E1\uFF52\u0155\u1E59\u0159\u0211\u0213\u1E5B\u1E5D\u0157\u1E5F\u024D\u027D\uA75B\uA7A7\uA783]/g},{base:"s",letters:/[\u0073\u24E2\uFF53\u00DF\u015B\u1E65\u015D\u1E61\u0161\u1E67\u1E63\u1E69\u0219\u015F\u023F\uA7A9\uA785\u1E9B]/g},{base:"t",letters:/[\u0074\u24E3\uFF54\u1E6B\u1E97\u0165\u1E6D\u021B\u0163\u1E71\u1E6F\u0167\u01AD\u0288\u2C66\uA787]/g},{base:"tz",letters:/[\uA729]/g},{base:"u",letters:/[\u0075\u24E4\uFF55\u00F9\u00FA\u00FB\u0169\u1E79\u016B\u1E7B\u016D\u00FC\u01DC\u01D8\u01D6\u01DA\u1EE7\u016F\u0171\u01D4\u0215\u0217\u01B0\u1EEB\u1EE9\u1EEF\u1EED\u1EF1\u1EE5\u1E73\u0173\u1E77\u1E75\u0289]/g},{base:"v",letters:/[\u0076\u24E5\uFF56\u1E7D\u1E7F\u028B\uA75F\u028C]/g},{base:"vy",letters:/[\uA761]/g},{base:"w",letters:/[\u0077\u24E6\uFF57\u1E81\u1E83\u0175\u1E87\u1E85\u1E98\u1E89\u2C73]/g},{base:"x",letters:/[\u0078\u24E7\uFF58\u1E8B\u1E8D]/g},{base:"y",letters:/[\u0079\u24E8\uFF59\u1EF3\u00FD\u0177\u1EF9\u0233\u1E8F\u00FF\u1EF7\u1E99\u1EF5\u01B4\u024F\u1EFF]/g},{base:"z",letters:/[\u007A\u24E9\uFF5A\u017A\u1E91\u017C\u017E\u1E93\u1E95\u01B6\u0225\u0240\u2C6C\uA763]/g}],v=function(e){for(var t=0;t-1)return!1;if(r.filterOption)return r.filterOption.call(void 0,e,t);if(!t)return!0;var o=e[r.valueKey],i=e[r.labelKey],u=g(o),s=g(i);if(!u&&!s)return!1;var a=u?String(o):null,l=s?String(i):null;return r.ignoreAccents&&(a&&"label"!==r.matchProp&&(a=v(a)),l&&"value"!==r.matchProp&&(l=v(l))),r.ignoreCase&&(a&&"label"!==r.matchProp&&(a=a.toLowerCase()),l&&"value"!==r.matchProp&&(l=l.toLowerCase())),"start"===r.matchPos?a&&"label"!==r.matchProp&&a.substr(0,t.length)===t||l&&"value"!==r.matchProp&&l.substr(0,t.length)===t:a&&"label"!==r.matchProp&&a.indexOf(t)>=0||l&&"value"!==r.matchProp&&l.indexOf(t)>=0})},b=function(e){var t=e.focusedOption,n=e.focusOption,r=e.inputValue,o=e.instancePrefix,i=e.onFocus,s=e.onOptionRef,a=e.onSelect,l=e.optionClassName,p=e.optionComponent,d=e.optionRenderer,f=e.options,h=e.removeValue,v=e.selectValue,g=e.valueArray,y=e.valueKey,b=p;return f.map(function(e,p){var f=g&&g.some(function(t){return t[y]===e[y]}),m=e===t,x=u()(l,{"Select-option":!0,"is-selected":f,"is-focused":m,"is-disabled":e.disabled});return c.a.createElement(b,{className:x,focusOption:n,inputValue:r,instancePrefix:o,isDisabled:e.disabled,isFocused:m,isSelected:f,key:"option-"+p+"-"+e[y],onFocus:i,onSelect:a,option:e,optionIndex:p,ref:function(e){s(e,m)},removeValue:h,selectValue:v},d(e,p,r))})};b.propTypes={focusOption:a.a.func,focusedOption:a.a.object,inputValue:a.a.string,instancePrefix:a.a.string,onFocus:a.a.func,onOptionRef:a.a.func,onSelect:a.a.func,optionClassName:a.a.string,optionComponent:a.a.func,optionRenderer:a.a.func,options:a.a.array,removeValue:a.a.func,selectValue:a.a.func,valueArray:a.a.array,valueKey:a.a.string};var m=function(e){e.preventDefault(),e.stopPropagation(),"A"===e.target.tagName&&"href"in e.target&&(e.target.target?window.open(e.target.href,e.target.target):window.location.href=e.target.href)},x="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},E=(function(){function e(e){this.value=e}function t(t){var n,r;function o(n,r){try{var u=t[n](r),s=u.value;s instanceof e?Promise.resolve(s.value).then(function(e){o("next",e)},function(e){o("throw",e)}):i(u.done?"return":"normal",u.value)}catch(e){i("throw",e)}}function i(e,t){switch(e){case"return":n.resolve({value:t,done:!0});break;case"throw":n.reject(t);break;default:n.resolve({value:t,done:!1})}(n=n.next)?o(n.key,n.arg):r=null}this._invoke=function(e,t){return new Promise(function(i,u){var s={key:e,arg:t,resolve:i,reject:u,next:null};r?r=r.next=s:(n=r=s,o(e,t))})},"function"!=typeof t.return&&(this.return=void 0)}"function"==typeof Symbol&&Symbol.asyncIterator&&(t.prototype[Symbol.asyncIterator]=function(){return this}),t.prototype.next=function(e){return this._invoke("next",e)},t.prototype.throw=function(e){return this._invoke("throw",e)},t.prototype.return=function(e){return this._invoke("return",e)}}(),function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}),w=function(){function e(e,t){for(var n=0;n=0||Object.prototype.hasOwnProperty.call(e,r)&&(n[r]=e[r]);return n},A=function(e,t){if(!e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return!t||"object"!=typeof t&&"function"!=typeof t?e:t},k=function(e){function t(e){E(this,t);var n=A(this,(t.__proto__||Object.getPrototypeOf(t)).call(this,e));return n.handleMouseDown=n.handleMouseDown.bind(n),n.handleMouseEnter=n.handleMouseEnter.bind(n),n.handleMouseMove=n.handleMouseMove.bind(n),n.handleTouchStart=n.handleTouchStart.bind(n),n.handleTouchEnd=n.handleTouchEnd.bind(n),n.handleTouchMove=n.handleTouchMove.bind(n),n.onFocus=n.onFocus.bind(n),n}return S(t,e),w(t,[{key:"handleMouseDown",value:function(e){e.preventDefault(),e.stopPropagation(),this.props.onSelect(this.props.option,e)}},{key:"handleMouseEnter",value:function(e){this.onFocus(e)}},{key:"handleMouseMove",value:function(e){this.onFocus(e)}},{key:"handleTouchEnd",value:function(e){this.dragging||this.handleMouseDown(e)}},{key:"handleTouchMove",value:function(){this.dragging=!0}},{key:"handleTouchStart",value:function(){this.dragging=!1}},{key:"onFocus",value:function(e){this.props.isFocused||this.props.onFocus(this.props.option,e)}},{key:"render",value:function(){var e=this.props,t=e.option,n=e.instancePrefix,r=e.optionIndex,o=u()(this.props.className,t.className);return t.disabled?c.a.createElement("div",{className:o,onMouseDown:m,onClick:m},this.props.children):c.a.createElement("div",{className:o,style:t.style,role:"option","aria-label":t.label,onMouseDown:this.handleMouseDown,onMouseEnter:this.handleMouseEnter,onMouseMove:this.handleMouseMove,onTouchStart:this.handleTouchStart,onTouchMove:this.handleTouchMove,onTouchEnd:this.handleTouchEnd,id:n+"-option-"+r,title:t.title},this.props.children)}}]),t}(c.a.Component);k.propTypes={children:a.a.node,className:a.a.string,instancePrefix:a.a.string.isRequired,isDisabled:a.a.bool,isFocused:a.a.bool,isSelected:a.a.bool,onFocus:a.a.func,onSelect:a.a.func,onUnfocus:a.a.func,option:a.a.object.isRequired,optionIndex:a.a.number};var F=function(e){function t(e){E(this,t);var n=A(this,(t.__proto__||Object.getPrototypeOf(t)).call(this,e));return n.handleMouseDown=n.handleMouseDown.bind(n),n.onRemove=n.onRemove.bind(n),n.handleTouchEndRemove=n.handleTouchEndRemove.bind(n),n.handleTouchMove=n.handleTouchMove.bind(n),n.handleTouchStart=n.handleTouchStart.bind(n),n}return S(t,e),w(t,[{key:"handleMouseDown",value:function(e){if("mousedown"!==e.type||0===e.button)return this.props.onClick?(e.stopPropagation(),void this.props.onClick(this.props.value,e)):void(this.props.value.href&&e.stopPropagation())}},{key:"onRemove",value:function(e){e.preventDefault(),e.stopPropagation(),this.props.onRemove(this.props.value)}},{key:"handleTouchEndRemove",value:function(e){this.dragging||this.onRemove(e)}},{key:"handleTouchMove",value:function(){this.dragging=!0}},{key:"handleTouchStart",value:function(){this.dragging=!1}},{key:"renderRemoveIcon",value:function(){if(!this.props.disabled&&this.props.onRemove)return c.a.createElement("span",{className:"Select-value-icon","aria-hidden":"true",onMouseDown:this.onRemove,onTouchEnd:this.handleTouchEndRemove,onTouchStart:this.handleTouchStart,onTouchMove:this.handleTouchMove},"×")}},{key:"renderLabel",value:function(){return this.props.onClick||this.props.value.href?c.a.createElement("a",{className:"Select-value-label",href:this.props.value.href,target:this.props.value.target,onMouseDown:this.handleMouseDown,onTouchEnd:this.handleMouseDown},this.props.children):c.a.createElement("span",{className:"Select-value-label",role:"option","aria-selected":"true",id:this.props.id},this.props.children)}},{key:"render",value:function(){return c.a.createElement("div",{className:u()("Select-value",this.props.value.className),style:this.props.value.style,title:this.props.value.title},this.renderRemoveIcon(),this.renderLabel())}}]),t}(c.a.Component);F.propTypes={children:a.a.node,disabled:a.a.bool,id:a.a.string,onClick:a.a.func,onRemove:a.a.func,value:a.a.object.isRequired}; /*! Copyright (c) 2018 Jed Watson. Licensed under the MIT License (MIT), see diff --git a/dash_table/demo.js b/dash_table/demo.js index 70a8d72e3..e092d2660 100644 --- a/dash_table/demo.js +++ b/dash_table/demo.js @@ -9,7 +9,7 @@ window.dash_table=function(e){var t={};function n(r){if(t[r])return t[r].exports Licensed under the MIT License (MIT), see http://jedwatson.github.io/classnames */ -!function(){"use strict";var n={}.hasOwnProperty;function o(){for(var e=[],t=0;t(0,r.isEqualArgs)(n,o)?t:(n=o)&&(t=e(...o))},t.memoizeAll=function(e){const t=[];return(...n)=>{let o=t.find(e=>(0,r.isEqualArgs)(e.args,n));return(o||t[t.push({args:n,result:e(...n)})-1]).result}};var r=n(12)},function(e,t){e.exports=window.ReactDOM},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.defaultIsNully=t.SortDirection=void 0;var r=function(e){if(e&&e.__esModule)return e;var t={};if(null!=e)for(var n in e)Object.prototype.hasOwnProperty.call(e,n)&&(t[n]=e[n]);return t.default=e,t}(n(2));var o=t.SortDirection=void 0;!function(e){e.Ascending="asc",e.Descending="desc",e.None="none"}(o||(t.SortDirection=o={}));const i=t.defaultIsNully=(e=>void 0===e||null===e);t.default=((e,t,n=i)=>t.length?r.sortWith(r.map(e=>e.direction===o.Descending?r.comparator((t,r)=>{const o=e.columnId,i=t[o],u=r[o];return!n(i)&&(!!n(u)||i>u)}):r.comparator((t,r)=>{const o=e.columnId,i=t[o],u=r[o];return!n(i)&&(!!n(u)||i=0&&s.splice(t,1)}function h(e){var t=document.createElement("style");return void 0===e.attrs.type&&(e.attrs.type="text/css"),v(t,e.attrs),d(e,t),t}function v(e,t){Object.keys(t).forEach(function(n){e.setAttribute(n,t[n])})}function g(e,t){var n,r,o,i;if(t.transform&&e.css){if(!(i=t.transform(e.css)))return function(){};e.css=i}if(t.singleton){var s=a++;n=u||(u=h(t)),r=b.bind(null,n,s,!1),o=b.bind(null,n,s,!0)}else e.sourceMap&&"function"==typeof URL&&"function"==typeof URL.createObjectURL&&"function"==typeof URL.revokeObjectURL&&"function"==typeof Blob&&"function"==typeof btoa?(n=function(e){var t=document.createElement("link");return void 0===e.attrs.type&&(e.attrs.type="text/css"),e.attrs.rel="stylesheet",v(t,e.attrs),d(e,t),t}(t),r=function(e,t,n){var r=n.css,o=n.sourceMap,i=void 0===t.convertToAbsoluteUrls&&o;(t.convertToAbsoluteUrls||i)&&(r=l(r));o&&(r+="\n/*# sourceMappingURL=data:application/json;base64,"+btoa(unescape(encodeURIComponent(JSON.stringify(o))))+" */");var u=new Blob([r],{type:"text/css"}),a=e.href;e.href=URL.createObjectURL(u),a&&URL.revokeObjectURL(a)}.bind(null,n,t),o=function(){f(n),n.href&&URL.revokeObjectURL(n.href)}):(n=h(t),r=function(e,t){var n=t.css,r=t.media;r&&e.setAttribute("media",r);if(e.styleSheet)e.styleSheet.cssText=n;else{for(;e.firstChild;)e.removeChild(e.firstChild);e.appendChild(document.createTextNode(n))}}.bind(null,n),o=function(){f(n)});return r(e),function(t){if(t){if(t.css===e.css&&t.media===e.media&&t.sourceMap===e.sourceMap)return;r(e=t)}else o()}}e.exports=function(e,t){if("undefined"!=typeof DEBUG&&DEBUG&&"object"!=typeof document)throw new Error("The style-loader cannot be used in a non-browser environment");(t=t||{}).attrs="object"==typeof t.attrs?t.attrs:{},t.singleton||"boolean"==typeof t.singleton||(t.singleton=o()),t.insertInto||(t.insertInto="head"),t.insertAt||(t.insertAt="bottom");var n=p(e,t);return c(n,t),function(e){for(var o=[],i=0;ie===this.dataframe[t])||(this.__dataframe=n,this.__indices=o,this.target.update({viewportDataframe:n,viewportIndices:o}))}}},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e){let t=null,n=[];for(;e.length;){e=e.replace(/^\s+/,"");let o=r.default.filter(e=>t&&e.when&&-1!==e.when.indexOf(t.name));if(o.length||(o=r.default),!(t=o.find(t=>t.regexp.test(e))||null))return{lexemes:n,valid:!1,error:e};const i=(e.match(t.regexp)||[])[0];n.push({lexeme:t,value:i}),e=e.substring(i.length)}return{lexemes:n,valid:!0}};var r=function(e){return e&&e.__esModule?e:{default:e}}(n(17))},function(e,t,n){"use strict";function r(e){return void 0!==e&&null!==e&&"object"==typeof e&&e.constructor===Object}function o(e,t,n=!1){return e===t||i(Object.values(e),Object.values(t),n)}function i(e,t,n=!1){return!!e&&e.length===t.length&&!!e.every((e,u)=>{const a=t[u];return e===a||n&&(Array.isArray(e)&&Array.isArray(a)&&i(e,a,n)||r(e)&&r(a)&&o(e,a,n))})}Object.defineProperty(t,"__esModule",{value:!0}),t.isEqual=o,t.isEqualArgs=i},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r=function(e){return e&&e.__esModule?e:{default:e}}(n(3));class o{constructor(e){this.name=e}get rules(){const e=this.sheet;return Array.from(e.rules||e.cssRules)}addRule(e,t){this.sheet.addRule?this.sheet.addRule(e,t):this.sheet.insertRule(`${e} { ${t} }`,0)}deleteRule(e){this.sheet.deleteRule(e)}findRule(e){const t=this.rules,n=t.findIndex(t=>t.selectorText===e);return-1===n?null:{rule:t[n],index:n}}get sheet(){return(this.__stylesheet=this.__stylesheet||(()=>{const e=document.createElement("style");return e.type="text/css",e.id=this.name,document.getElementsByTagName("head")[0].appendChild(e),e})()).sheet}}class i{constructor(e){this.prefix=e,this.stylesheet=new o(`${e}-dynamic-inline.css`)}static unit(e,t="px"){return i.hasUnit(e)?e:`${e}${t}`}static hasUnit(e){return"string"==typeof e&&/^\d+(\.\d+)?(px|em|rem)$/.test(e)}deleteRule(e){e=`${this.prefix} ${e}`;const t=this.stylesheet.findRule(e);t&&this.stylesheet.deleteRule(t.index)}setRule(e,t){e=`${this.prefix} ${e}`;const n=this.stylesheet.findRule(e);if(n){if(n.rule.cssText===t||n.rule.cssText===`${e} { ${t} }`)return;this.stylesheet.deleteRule(n.index)}this.stylesheet.addRule(e,t),r.default.trace("stylesheet",e,t)}}t.default=i},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.colIsEditable=function(e,t){return e&&(!r.has("editable",t)||t.editable)};var r=function(e){if(e&&e.__esModule)return e;var t={};if(null!=e)for(var n in e)Object.prototype.hasOwnProperty.call(e,n)&&(t[n]=e[n]);return t.default=e,t}(n(2))},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.isPrintableChar=function(e){return 32===e||e>=48&&e<=57||e>=96&&e<=111||e>=186&&e<=192||e>=219&&e<=222||e>=226||e>=65&&e<=90},t.isMetaKey=function(e){return-1!==o.indexOf(e)},t.isNavKey=function(e){return-1!==u.indexOf(e)},t.isArrowKey=function(e){return-1!==i.indexOf(e)},t.isCtrlKey=function(e){const t=[];window.navigator.platform.includes("Mac")?t.push(r.COMMAND_LEFT,r.COMMAND_RIGHT,r.COMMAND_FIREFOX):t.push(r.CONTROL);return t.includes(e)},t.isCtrlMetaKey=function(e){return[r.CONTROL,r.COMMAND_LEFT,r.COMMAND_RIGHT,r.COMMAND_FIREFOX].includes(e)};const r=t.KEY_CODES={MOUSE_LEFT:1,MOUSE_RIGHT:3,MOUSE_MIDDLE:2,BACKSPACE:8,COMMA:188,INSERT:45,DELETE:46,END:35,ENTER:13,ESCAPE:27,CONTROL:17,COMMAND_LEFT:91,COMMAND_RIGHT:93,COMMAND_FIREFOX:224,ALT:18,HOME:36,PAGE_DOWN:34,PAGE_UP:33,PERIOD:190,SPACE:32,SHIFT:16,CAPS_LOCK:20,TAB:9,ARROW_RIGHT:39,ARROW_LEFT:37,ARROW_UP:38,ARROW_DOWN:40,F1:112,F2:113,F3:114,F4:115,F5:116,F6:117,F7:118,F8:119,F9:120,F10:121,F11:122,F12:123,A:65,X:88,C:67,V:86},o=[r.ARROW_DOWN,r.ARROW_UP,r.ARROW_LEFT,r.ARROW_RIGHT,r.HOME,r.END,r.DELETE,r.BACKSPACE,r.F1,r.F2,r.F3,r.F4,r.F5,r.F6,r.F7,r.F8,r.F9,r.F10,r.F11,r.F12,r.TAB,r.PAGE_DOWN,r.PAGE_UP,r.ENTER,r.ESCAPE,r.SHIFT,r.CAPS_LOCK,r.ALT],i=[r.ARROW_DOWN,r.ARROW_UP,r.ARROW_LEFT,r.ARROW_RIGHT],u=[...i,r.TAB,r.ENTER];t.isCtrlDown=(e=>(e.ctrlKey||e.metaKey)&&!e.altKey)},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.deleteRow=function(e,t){const n=t.active_cell,o=t.dataframe,i=t.end_cell,u=t.selected_cell,a=t.selected_rows,s=t.start_cell,l={dataframe:r.remove(e,1,o)};r.is(Array,n)&&n[0]===e&&(l.active_cell=[]);r.is(Array,i)&&i[0]===e&&(l.end_cell=[]);r.is(Array,u)&&u[0]===e&&(l.selected_cell=[]);r.is(Array,s)&&s[0]===e&&(l.start_cell=[0,0]);r.is(Array,a)&&r.contains(e,a)&&(l.selected_rows=r.without([e],a));return l},t.deleteColumn=function(e,t,n){const i=n.columns,u=n.dataframe;var a=o(e,t,n);const s=a.groupIndexFirst,l=a.groupIndexLast,c=r.slice(s,l+1,r.pluck("id",i));return{columns:r.remove(s,1+l-s,i),dataframe:r.map(r.omit(c),u),active_cell:[],end_cell:[],selected_cell:[],start_cell:[0]}},t.editColumnName=function(e,t,n){const i=n.columns;var u=o(e,t,n);const a=u.groupIndexFirst,s=u.groupIndexLast,l=window.prompt("Enter a new column name");let c=r.clone(i);return r.range(a,s+1).map(e=>{let n;n="Array"===r.type(i[e].name)?[e,"name",t]:[e,"name"],c=r.set(r.lensPath(n),l,c)}),{columns:c}};var r=function(e){if(e&&e.__esModule)return e;var t={};if(null!=e)for(var n in e)Object.prototype.hasOwnProperty.call(e,n)&&(t[n]=e[n]);return t.default=e,t}(n(2));function o(e,t,n){const o=n.columns;let i,u;"Null"!==r.type(t)?(i=e.name[t],u=r.pluck(t,r.pluck("name",o))):(i=e.name,u=r.pluck("name",o));const a=r.findIndex(r.propEq("id",e.id),o);let s=a,l=a;for(;u[s-1]===i;)s--;for(;u[l+1]===i;)l++;return{groupIndexFirst:s,groupIndexLast:l}}},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.LexemeType=void 0;var r=function(){return function(e,t){if(Array.isArray(e))return e;if(Symbol.iterator in Object(e))return function(e,t){var n=[],r=!0,o=!1,i=void 0;try{for(var u,a=e[Symbol.iterator]();!(r=(u=a.next()).done)&&(n.push(u.value),!t||n.length!==t);r=!0);}catch(e){o=!0,i=e}finally{try{!r&&a.return&&a.return()}finally{if(o)throw i}}return n}(e,t);throw new TypeError("Invalid attempt to destructure non-iterable instance")}}(),o=function(e){return e&&e.__esModule?e:{default:e}}(n(3));var i=t.LexemeType=void 0;!function(e){e.And="and",e.BlockClose="close-block",e.BlockOpen="open-block",e.BinaryOperator="logical-binary-operator",e.Expression="expression",e.Or="or",e.Operand="operand",e.UnaryNot="unary-not",e.UnaryOperator="logical-unary-operator"}(i||(t.LexemeType=i={}));const u={resolve:(e,t)=>{if(o.default.trace("resolve -> exp",e,t),/^('.*')|(".*")$/.test(t.value))return t.value.slice(1,t.value.length-1);if(!/^\w+\(.*\)$/.test(t.value))return e[t.value];{const e=t.value.match(/^(\w+)\((.*)\)$/);if(!e)throw Error();{var n=r(e,3);const t=n[1],o=n[2];switch(t){case"num":return parseInt(o,10);case"str":default:return o}}}},regexp:/^(((num|str)\([^()]*\))|'([^()']|\\')+'|"([^()"]|\\")+"|\w+)/},a=[{evaluate:(e,t)=>{o.default.trace("evalute -> &&",e,t);const n=t,r=n.left.lexeme.evaluate(e,n.left),i=n.right.lexeme.evaluate(e,n.right);return r&&i},name:i.And,priority:2,regexp:/^(and\s|&&)/i,syntaxer:(e,t,n)=>Object.assign({left:e.slice(0,n),right:e.slice(n+1)},t)},{evaluate:(e,t)=>{o.default.trace("evalute -> ||",e,t);const n=t;return n.left.lexeme.evaluate(e,n.left)||n.right.lexeme.evaluate(e,n.right)},name:i.Or,priority:3,regexp:/^(or\s|\|\|)/i,syntaxer:(e,t,n)=>Object.assign({left:e.slice(0,n),right:e.slice(n+1)},t)},{name:i.BlockClose,nesting:-1,regexp:/^\)/},{evaluate:(e,t)=>{o.default.trace("evaluate -> ()",e,t);const n=t;return n.block.lexeme.evaluate(e,n.block)},name:i.BlockOpen,nesting:1,priority:1,regexp:/^\(/,syntaxer:e=>Object.assign({block:e.slice(1,e.length-1)},e[0]),when:[i.UnaryNot]},Object.assign({name:i.Operand},u),{evaluate:(e,t)=>{o.default.trace("evaluate -> binary",e,t);const n=t,r=n.left.lexeme.resolve(e,n.left),i=n.right.lexeme.resolve(e,n.right);switch(o.default.trace(`opValue: ${r}, expValue: ${i}`),t.value.toLowerCase()){case"eq":case"=":return r===i;case"gt":case">":return r>i;case"ge":case">=":return r>=i;case"lt":case"<":return r=|<=|>|<|!=|=|ge|le|gt|lt|eq|ne)/i,syntaxer:e=>{var t=r(e,3);let n=t[0],o=t[1],i=t[2];return Object.assign({left:n,right:i},o)},when:[i.Operand]},{evaluate:(e,t)=>{o.default.trace("evaluate -> unary",e,t);const n=t,r=n.block.lexeme.resolve(e,n.block);switch(t.value.toLowerCase()){case"is even":return"number"==typeof r&&r%2==0;case"is nil":return void 0===r||null===r;case"is bool":return"boolean"==typeof r;case"is odd":return"number"==typeof r&&r%2==1;case"is num":return"number"==typeof r;case"is object":return null!==r&&"object"==typeof r;case"is str":return"string"==typeof r;case"is prime":return"number"==typeof r&&(e=>{if(2===e)return!0;if(e<2||e%2==0)return!1;for(let t=3;t*t<=e;t+=2)if(e%t==0)return!1;return!0})(r);default:throw new Error}},name:i.UnaryOperator,priority:0,regexp:/^((is nil)|(is odd)|(is even)|(is bool)|(is num)|(is object)|(is str)|(is prime))/i,syntaxer:e=>{var t=r(e,2);let n=t[0],o=t[1];return Object.assign({block:n},o)},when:[i.Operand]},{evaluate:(e,t)=>{o.default.trace("evaluate -> unary not",e,t);const n=t;return!n.block.lexeme.evaluate(e,n.block)},name:i.UnaryNot,priority:1.5,regexp:/^!/,syntaxer:e=>Object.assign({block:e.slice(1,e.length)},e[0]),when:[i.UnaryNot]},Object.assign({name:i.Expression,when:[i.BinaryOperator]},u)];t.default=a},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r=u(n(3)),o=u(n(11)),i=u(n(19));function u(e){return e&&e.__esModule?e:{default:e}}t.default=class{constructor(e){this.query=e,this.evaluate=(e=>{if(!this.isValid||!this.tree){const e=`unable to evaluate target: syntax tree is invalid for query=${this.query}`;throw r.default.error(e),new Error(e)}const t=this.tree.lexeme.evaluate;return!!t&&t(e,this.tree)}),this.filter=(e=>e.filter(this.evaluate)),this.result=(0,i.default)((0,o.default)(this.query))}get isValid(){return this.result.valid}get tree(){return this.result.tree}}},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r=function(e){return e&&e.__esModule?e:{default:e}}(n(3));const o=e=>{let t=0;const n=e.map(e=>{const n=Object.assign({},e,{nesting:t});return t+=e.lexeme.nesting||0,n}),i=n.filter(e=>0===e.nesting&&"number"==typeof e.lexeme.priority).sort((e,t)=>(t.lexeme.priority||-1)-(e.lexeme.priority||-1))[0];r.default.trace("parser -> pivot",i,e);const u=n.indexOf(i);if(i.lexeme.syntaxer){let t=i.lexeme.syntaxer(e,i,u);return Array.isArray(t.left)&&(t.left=o(t.left)),Array.isArray(t.right)&&(t.right=o(t.right)),Array.isArray(t.block)&&(t.block=o(t.block)),t}throw new Error(i.lexeme.name)};t.default=(e=>{const t=e.lexemes;if(!e.valid)return{valid:!1,error:`lexer -- ${e.error}`};try{return{tree:o(t),valid:!0}}catch(e){return{valid:!1,error:e}}})},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=((e,t=null)=>{if(t=t||(()=>{for(t=e;t&&"td"!==t.nodeName.toLowerCase();)t=t.parentElement;return t})(),!e||!t)return;let n=e;for(;"relative"!==getComputedStyle(n).position&&"sticky"!==getComputedStyle(n).position&&n.parentElement;)n=n.parentElement;let r=e;for(;"relative"!==getComputedStyle(r).position&&r.parentElement;)r=r.parentElement;const o=n.getBoundingClientRect(),i=r.getBoundingClientRect(),u=t.getBoundingClientRect(),a=u.left-o.left+n.scrollLeft,s=u.top-o.top+n.scrollTop+u.height;e.style.width=`${u.width}px`,e.style.top=`${s}px`,e.style.left=`${a}px`,e.style.position="absolute",u.top+u.height/2>i.bottom||u.top-u.height/2i.left+i.width?e.style.display="none":e.style.display="block"})},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r=n(1),o=function(e){return e&&e.__esModule?e:{default:e}}(r);class i extends r.PureComponent{constructor(e){super(e),this.handleChange=(e=>this.setState({value:e.target.value})),this.submit=(()=>this.state.value!==this.props.value&&this.props.submit(this.state.value)),this.state={value:e.value}}get propsWithDefaults(){return this.props}render(){var e=this.propsWithDefaults;const t=e.stopPropagation,n=e.updateOnBlur,r=e.updateOnSubmit;let i={onBlur:n?this.submit:void 0,onKeyDown:t?e=>e.stopPropagation():void 0,onSubmit:r?this.submit:void 0};return o.default.createElement("input",Object.assign({ref:"input",type:"text",value:this.state.value||"",onChange:this.handleChange},i))}}t.default=i,i.defaultProps={stopPropagation:!1,updateOnBlur:!0,updateOnSubmit:!0}},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r=Object.assign||function(e){for(var t=1;t=0||Object.prototype.hasOwnProperty.call(e,r)&&(n[r]=e[r]);return n}(this.props,[]);return function(e){c.forEach(function(t){return delete e[t]})}(o),o.className=this.props.inputClassName,o.id=this.state.inputId,o.style=n,u.default.createElement("div",{className:this.props.className,style:t},this.renderStyles(),u.default.createElement("input",r({},o,{ref:this.inputRef})),u.default.createElement("div",{ref:this.sizerRef,style:l},e),this.props.placeholder?u.default.createElement("div",{ref:this.placeHolderSizerRef,style:l},this.props.placeholder):null)}}]),t}();h.propTypes={className:a.default.string,defaultValue:a.default.any,extraWidth:a.default.oneOfType([a.default.number,a.default.string]),id:a.default.string,injectStyles:a.default.bool,inputClassName:a.default.string,inputRef:a.default.func,inputStyle:a.default.object,minWidth:a.default.oneOfType([a.default.number,a.default.string]),onAutosize:a.default.func,onChange:a.default.func,placeholder:a.default.string,placeholderIsMinWidth:a.default.bool,style:a.default.object,value:a.default.any},h.defaultProps={minWidth:1,injectStyles:!0},t.default=h},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.Table=void 0;var r=u(n(24)),o=u(n(3)),i=u(n(26));function u(e){return e&&e.__esModule?e:{default:e}}o.default.setDebugLevel(r.default.debugLevel),o.default.setLogLevel(r.default.logLevel),t.Table=i.default},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r=n(3),o=function(e){return e&&e.__esModule?e:{default:e}}(n(25));const i="dash_debug",u="dash_log";t.default=class{static get searchParams(){return new URL(window.location.href).searchParams||{get:()=>null}}static get debugLevel(){const e=this.searchParams.get(i)||o.default.get(i);return e&&r.DebugLevel[e]||r.DebugLevel.NONE}static get logLevel(){const e=this.searchParams.get(u)||o.default.get(u);return e&&r.LogLevel[e]||r.LogLevel.ERROR}}},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const r=864e5,o=63072e7;class i{static delete(e,t="",n="/"){let o=new Date((new Date).getTime()-r).toUTCString();document.cookie=`${e}=;expires=${o};domain=${t};path=${n}`}static get(e){if(!e.length)return;return e=e.toLowerCase(),(document.cookie.split(";").map(e=>{let t=e.split("=");return{id:t[0].trim(),value:t[1]}}).find(t=>e===t.id.toLocaleLowerCase())||{}).value}static set(e,t,n="",r="/"){let u=`${e}=${t};expires=${new Date((new Date).getTime()+o).toUTCString()};domain=${n};path=${r}`;i.get(e)&&i.delete(e,n,r),document.cookie=u}}t.default=i},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.propTypes=t.defaultProps=void 0;var r=n(1),o=a(r),i=a(n(0)),u=a(n(29));function a(e){return e&&e.__esModule?e:{default:e}}n(58);class s extends r.Component{render(){return o.default.createElement(u.default,this.props)}}t.default=s;const l=t.defaultProps={virtualization:"fe",virtualization_settings:{displayed_pages:1,current_page:0,page_size:250},navigation:"page",filtering:!1,filtering_settings:"",filtering_type:"basic",filtering_types:["basic"],sorting:!1,sorting_type:"single",sorting_settings:[],virtual_dataframe:[],virtual_dataframe_indices:[],column_conditional_dropdowns:[],column_static_dropdown:[],column_conditional_styles:[],column_static_style:[],row_conditional_styles:[],row_static_style:{},changed_data:{},dataframe:[],columns:[],editable:!1,active_cell:[],index_name:"",types:{},merged_styles:{},selected_cell:[[]],selected_rows:[],row_selectable:!1,table_style:[],base_styles:{numeric:{"text-align":"right","font-family":"'Droid Sans Mono', Courier, monospace"},string:{"text-align":"left"},input:{padding:0,margin:0,width:"80px",border:"none","font-size":"1rem"},"input-active":{outline:"#7FDBFF auto 3px"},table:{},thead:{},th:{},td:{}}},c=t.propTypes={active_cell:i.default.array,columns:i.default.arrayOf(i.default.object),dataframe:i.default.arrayOf(i.default.object),dataframe_previous:i.default.arrayOf(i.default.object),dataframe_timestamp:i.default.any,editable:i.default.bool,end_cell:i.default.arrayOf(i.default.number),id:i.default.string.isRequired,is_focused:i.default.bool,merge_duplicate_headers:i.default.bool,n_fixed_columns:i.default.number,n_fixed_rows:i.default.number,row_deletable:i.default.bool,row_selectable:i.default.oneOf(["single","multi",!1]),selected_cell:i.default.arrayOf(i.default.arrayOf(i.default.number)),selected_rows:i.default.arrayOf(i.default.number),setProps:i.default.any,start_cell:i.default.arrayOf(i.default.number),style_as_list_view:i.default.bool,table_style:i.default.arrayOf(i.default.shape({selector:i.default.string,rule:i.default.string})),virtualization:i.default.oneOf(["fe","be",!0,!1]),virtualization_settings:i.default.shape({displayed_pages:i.default.number,current_page:i.default.number,page_size:i.default.number}),navigation:i.default.string,column_conditional_dropdowns:i.default.arrayOf(i.default.shape({id:i.default.string,dropdowns:i.default.arrayOf(i.default.shape({condition:i.default.string,dropdown:i.default.arrayOf(i.default.shape({label:i.default.string,value:i.default.any}))}))})),column_static_dropdown:i.default.arrayOf(i.default.shape({id:i.default.string,dropdown:i.default.arrayOf(i.default.shape({label:i.default.string,value:i.default.any}))})),column_conditional_style:i.default.arrayOf(i.default.shape({id:i.default.string,styles:i.default.arrayOf(i.default.shape({condition:i.default.string,style:i.default.object}))})),column_static_style:i.default.arrayOf(i.default.shape({id:i.default.string,style:i.default.object})),row_conditional_styles:i.default.arrayOf(i.default.shape({condition:i.default.string,style:i.default.object})),row_static_style:i.default.object,filtering:i.default.oneOf(["fe","be",!0,!1]),filtering_settings:i.default.string,filtering_type:i.default.oneOf(["basic"]),filtering_types:i.default.arrayOf(i.default.oneOf(["basic"])),sorting:i.default.oneOf(["fe","be",!0,!1]),sorting_type:i.default.oneOf(["single","multi"]),sorting_settings:i.default.arrayOf(i.default.shape({columnId:i.default.oneOfType([i.default.string,i.default.number]),direction:i.default.oneOf(["asc","desc"])})),sorting_treat_empty_string_as_none:i.default.bool,virtual_dataframe:i.default.arrayOf(i.default.object),virtual_dataframe_indices:i.default.arrayOf(i.default.number),dropdown_properties:i.default.any};s.defaultProps=l,s.propTypes=c},function(e,t,n){"use strict";var r=n(28);function o(){}e.exports=function(){function e(e,t,n,o,i,u){if(u!==r){var a=new Error("Calling PropTypes validators directly is not supported by the `prop-types` package. Use PropTypes.checkPropTypes() to call them. Read more at http://fb.me/use-check-prop-types");throw a.name="Invariant Violation",a}}function t(){return e}e.isRequired=e;var n={array:e,bool:e,func:e,number:e,object:e,string:e,symbol:e,any:e,arrayOf:t,element:e,instanceOf:t,node:e,objectOf:t,oneOf:t,oneOfType:t,shape:t,exact:t};return n.checkPropTypes=o,n.PropTypes=n,n}},function(e,t,n){"use strict";e.exports="SECRET_DO_NOT_PASS_THIS_OR_YOU_WILL_BE_FIRED"},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r=n(1),o=c(r),i=function(e){if(e&&e.__esModule)return e;var t={};if(null!=e)for(var n in e)Object.prototype.hasOwnProperty.call(e,n)&&(t[n]=e[n]);return t.default=e,t}(n(2)),u=n(5),a=c(n(30)),s=c(n(34)),l=c(n(50));function c(e){return e&&e.__esModule?e:{default:e}}n(51),n(54),n(56);t.default=class extends r.Component{constructor(e){super(e),this.__adapter=(0,u.memoizeOne)(()=>new l.default(this)),this.__setProps=(0,u.memoizeOne)(e=>e?t=>{if(i.has("dataframe",t)){const e=this.props.dataframe;t.dataframe_timestamp=Date.now(),t.dataframe_previous=e}e(t)}:e=>this.setState(e)),this.__virtualizer=(0,u.memoizeOne)((e,t)=>a.default.getVirtualizer(this.adapter))}get setProps(){return this.__setProps(this.props.setProps)}render(){const e=this.setProps,t=this.virtualizer;return t.refresh(),o.default.createElement(s.default,Object.assign({},i.mergeAll([this.props,this.state,{setProps:e,virtualizer:t}])))}get adapter(){return this.__adapter()}get virtualizer(){var e=this.props;const t=e.virtualization,n=e.virtualization_settings;return this.__virtualizer(t,n)}}},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r=u(n(31)),o=u(n(32)),i=u(n(33));function u(e){return e&&e.__esModule?e:{default:e}}t.default=class{static getVirtualizer(e){switch(e.virtualization){case!1:return new i.default(e);case!0:case"fe":return new o.default(e);case"be":return new r.default(e);default:throw new Error(`Unknown virtualization type: '${e.virtualization}'`)}}}},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r=function(e){return e&&e.__esModule?e:{default:e}}(n(10));t.default=class extends r.default{constructor(e){super(e)}getDataframe(){var e=this.target;return{dataframe:e.dataframe,indices:e.indices}}get offset(){return 0}loadNext(){let e=this.target.settings;e.current_page++,this.target.update({settings:e})}loadPrevious(){let e=this.target.settings;e.current_page<=0||(e.current_page--,this.target.update({settings:e}))}}},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r=function(e){return e&&e.__esModule?e:{default:e}}(n(10));t.default=class extends r.default{constructor(e){super(e)}getDataframe(){var e=this.target;let t=e.settings,n=e.dataframe,r=e.indices,o=Math.min(t.current_page,Math.floor(n.length/t.page_size));return this.firstIndex=t.page_size*o,this.lastIndex=Math.min(this.firstIndex+t.displayed_pages*t.page_size,n.length),{dataframe:n.slice(this.firstIndex,this.lastIndex),indices:r.slice(this.firstIndex,this.lastIndex)}}get offset(){return this.firstIndex}loadNext(){var e=this.target;let t=e.settings,n=e.dataframe,r=Math.floor(n.length/t.page_size);t.current_page>=r||(t.current_page++,this.target.update({settings:t}))}loadPrevious(){let e=this.target.settings;e.current_page<=0||(e.current_page--,this.target.update({settings:e}))}}},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r=function(e){if(e&&e.__esModule)return e;var t={};if(null!=e)for(var n in e)Object.prototype.hasOwnProperty.call(e,n)&&(t[n]=e[n]);return t.default=e,t}(n(2)),o=function(e){return e&&e.__esModule?e:{default:e}}(n(10));t.default=class extends o.default{constructor(e){super(e),this.refresh()}getDataframe(){let e=this.target.dataframe;return{dataframe:e,indices:r.range(0,e.length)}}get offset(){return 0}loadNext(){}loadPrevious(){}}},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r=n(1),o=m(r),i=function(e){if(e&&e.__esModule)return e;var t={};if(null!=e)for(var n in e)Object.prototype.hasOwnProperty.call(e,n)&&(t[n]=e[n]);return t.default=e,t}(n(2)),u=m(n(13)),a=n(14),s=n(15),l=n(35),c=n(36),p=m(c),d=m(n(3)),f=n(5),h=m(n(11)),v=m(n(39)),g=m(n(42)),y=m(n(20)),b=m(n(46));function m(e){return e&&e.__esModule?e:{default:e}}const x=i.sort((e,t)=>e-t);t.default=class extends r.Component{constructor(e){super(e),this.getLexerResult=(0,f.memoizeOne)(h.default),this.handleClickOutside=(e=>{const t=this.$el;t&&!t.contains(e.target)&&this.props.setProps({is_focused:!1})}),this.handlePaste=(e=>{const t=this.$el;t&&t.contains(document.activeElement)&&this.onPaste(e)}),this.handleResize=(()=>{var e=this.refs;const t=e.r0c0,n=e.r0c1,r=e.r1c0,o=e.r1c1;let i=n.querySelectorAll("tr");t.querySelectorAll("tr").forEach((e,t)=>{const n=i[t];e.style.height=getComputedStyle(n).height});let u=o.querySelectorAll("tr > th:first-of-type");r.querySelectorAll("tr > th:first-of-type").forEach((e,t)=>{const n=u[t].parentElement;e.parentElement.style.height=getComputedStyle(n).height});const a=o.querySelector("tr > td:first-of-type");if(a){const e=a.parentElement;this.stylesheet.setRule(".cell-1-0 tr",`height: ${getComputedStyle(e).height}`)}}),this.handleKeyDown=(e=>{var t=this.props;const n=t.active_cell,r=t.columns,o=t.setProps,i=t.is_focused,u=t.editable;if(d.default.trace(`handleKeyDown: ${e.key}`),(0,s.isCtrlMetaKey)(e.keyCode))return;const l=(0,s.isCtrlDown)(e);l&&e.keyCode===s.KEY_CODES.V||e.keyCode===s.KEY_CODES.C&&l&&!i||(e.keyCode!==s.KEY_CODES.ESCAPE?e.keyCode!==s.KEY_CODES.ENTER||i||!(0,a.colIsEditable)(u,r[n[1]])?i&&e.keyCode!==s.KEY_CODES.TAB&&e.keyCode!==s.KEY_CODES.ENTER||((0,s.isNavKey)(e.keyCode)?this.switchCell(e):e.keyCode===s.KEY_CODES.BACKSPACE||e.keyCode===s.KEY_CODES.DELETE?this.deleteCell(e):this.props.is_focused||!(0,a.colIsEditable)(u,r[n[1]])||(0,s.isMetaKey)(e.keyCode)||o({is_focused:!0})):o({is_focused:!0}):o({is_focused:!1}))}),this.switchCell=(e=>{const t=e;var n=this.props;const r=n.active_cell,o=n.columns,u=n.row_deletable,a=n.row_selectable,l=n.selected_cell,c=n.setProps,p=n.virtualizer.dataframe;e.preventDefault(),this.$el.focus();const d=l.length>1,f=t.keyCode===s.KEY_CODES.ENTER||t.keyCode===s.KEY_CODES.TAB;if(d&&f)return void c({is_focused:!1,active_cell:this.getNextCell(t,{currentCell:r,restrictToSelection:!0})});if(!t.shiftKey){const e=this.getNextCell(t,{currentCell:r,restrictToSelection:!1});return void c({is_focused:!1,selected_cell:[e],active_cell:e})}let h=[],v=[];const g=x(i.uniq(i.pluck(0,l))),y=x(i.uniq(i.pluck(1,l))),b=g[0],m=y[0],w=g[g.length-1],E=y[y.length-1],_=(u?1:0)+(a?1:0),O=[];o.forEach((e,t)=>{e.hidden||O.push(t+_)});const S=t.keyCode===s.KEY_CODES.ARROW_DOWN||t.keyCode===s.KEY_CODES.ENTER,C=t.keyCode===s.KEY_CODES.ARROW_UP,A=t.keyCode===s.KEY_CODES.ARROW_RIGHT||t.keyCode===s.KEY_CODES.TAB,k=t.keyCode===s.KEY_CODES.ARROW_LEFT;S&&r[0]>b?v=y.map(e=>[b,e]):S&&w!==p.length-1?h=y.map(e=>[w+1,e]):C&&r[0][w,e]):C&&b>0?h=y.map(e=>[b-1,e]):k&&r[1][e,E]):k&&m>0?h=g.map(e=>[e,m-1]):A&&r[1]>m?v=g.map(e=>[e,m]):A&&E+1<=i.last(O)&&(h=g.map(e=>[e,E+1])),c({is_focused:!1,selected_cell:i.without(v,i.uniq(i.concat(h,l)))})}),this.deleteCell=(e=>{var t=this.props;const n=t.columns,r=t.dataframe,o=t.editable,u=t.row_deletable,s=t.row_selectable,l=t.selected_cell,c=t.setProps,p=t.virtual_dataframe_indices;e.preventDefault();let d=r;const f=(u?1:0)+(s?1:0);i.map(e=>[p[e[0]],e[1]-f],l).forEach(e=>{(0,a.colIsEditable)(o,n[e[1]])&&(d=i.set(i.lensPath([e[0],n[e[1]].id]),"",d))}),c({dataframe:d})}),this.getNextCell=((e,{restrictToSelection:t,currentCell:n})=>{var r=this.props;const o=r.columns,u=r.row_deletable,a=r.row_selectable,c=r.selected_cell,p=r.virtualizer.dataframe,d=e,f=[],h=(u?1:0)+(a?1:0);switch(t||o.forEach((e,t)=>{e.hidden||f.push(t+h)}),d.keyCode){case s.KEY_CODES.ARROW_LEFT:return t?(0,l.selectionCycle)([n[0],n[1]-1],c):[n[0],i.max(f[0],f[i.indexOf(n[1],f)-1])];case s.KEY_CODES.ARROW_RIGHT:case s.KEY_CODES.TAB:return t?(0,l.selectionCycle)([n[0],n[1]+1],c):[n[0],i.min(i.last(f),f[i.indexOf(n[1],f)+1])];case s.KEY_CODES.ARROW_UP:return t?(0,l.selectionCycle)([n[0]-1,n[1]],c):[i.max(0,n[0]-1),n[1]];case s.KEY_CODES.ARROW_DOWN:case s.KEY_CODES.ENTER:return t?(0,l.selectionCycle)([n[0]+1,n[1]],c):[i.min(p.length-1,n[0]+1),n[1]];default:throw new Error(`Table.getNextCell: unknown navigation keycode ${d.keyCode}`)}}),this.onCopy=(e=>{var t=this.props;const n=t.columns,r=t.row_deletable,o=t.row_selectable,u=t.selected_cell,a=t.virtualizer.dataframe,s=(r?1:0)+(o?1:0),l=i.map(e=>[e[0],e[1]-s],u);v.default.toClipboard(e,l,n,a),this.$el.focus()}),this.onPaste=(e=>{var t=this.props;const n=t.active_cell,r=t.columns,o=t.dataframe,i=t.editable,u=t.filtering_settings,a=t.row_deletable,s=t.row_selectable,l=t.setProps,c=t.sorting_settings,p=t.virtual_dataframe_indices;if(!i)return;const d=(a?1:0)+(s?1:0),f=[n[0],n[1]-d],h=v.default.fromClipboard(e,f,p,r,o,!0,!c.length||!u.length);h&&l(h)}),this.loadNext=(()=>{this.props.virtualizer.loadNext()}),this.loadPrevious=(()=>{this.props.virtualizer.loadPrevious()}),this.onContainerScroll=(e=>{if(!this.props.n_fixed_columns)return;const t=this.refs.spreadsheet;e.target===t&&this.stylesheet.setRule(".frozen-left",`margin-top: ${-e.target.scrollTop}px;`)}),this.applyStyle=((e,t,n)=>{let r=0;t&&(this.stylesheet.setRule(`.dash-spreadsheet-inner td.column-${r}`,"width: 30px; max-width: 30px; min-width: 30px;"),this.stylesheet.setRule(`.dash-spreadsheet-inner th.column-${r}`,"width: 30px; max-width: 30px; min-width: 30px;"),++r),n&&(this.stylesheet.setRule(`.dash-spreadsheet-inner td.column-${r}`,"width: 30px; max-width: 30px; min-width: 30px;"),this.stylesheet.setRule(`.dash-spreadsheet-inner th.column-${r}`,"width: 30px; max-width: 30px; min-width: 30px;"),++r),i.forEach(e=>{const t=u.default.unit(e.width||c.DEFAULT_CELL_WIDTH,"px");this.stylesheet.setRule(`.dash-spreadsheet-inner td.column-${r}`,`width: ${t}; max-width: ${t}; min-width: ${t};`),this.stylesheet.setRule(`.dash-spreadsheet-inner th.column-${r}`,`width: ${t}; max-width: ${t}; min-width: ${t};`),++r},e)}),this.renderFragment=(e=>e?o.default.createElement("table",{tabIndex:-1},o.default.createElement("tbody",null,e.map((e,t)=>o.default.createElement("tr",{key:`row-${t}`},e)))):null),this.handleSetFilter=(e=>this.props.setProps({filtering_settings:e})),this.getCells=(()=>[...p.default.createHeaders(this.props),...this.filterFactory.createFilters(),...this.cellFactory.createCells()]),this.getFragments=((e,t,n)=>{const r=t?i.map(e=>e.splice(0,i.reduceWhile(e=>e.count(e.cells++,e.count+=t.props.colSpan||1,e),{cells:0,count:0},e).cells),e):null,o=n?e.splice(0,n):null,u=n&&r?r.splice(0,n):null;return[[this.renderFragment(u),this.renderFragment(o)],[this.renderFragment(r),this.renderFragment(e)]]}),this.handleDropdown=(()=>{const e=this.refs.r1c1;(0,y.default)(e.querySelector(".Select-menu-outer"))}),this.onScroll=(e=>{const t=this.refs.r0c1;d.default.trace(`ControlledTable fragment scrolled to (left,top)=(${e.target.scrollLeft},${e.target.scrollTop})`),t.style.marginLeft=`${-e.target.scrollLeft}px`,this.handleDropdown()}),this.cellFactory=new g.default(()=>this.props),this.filterFactory=new b.default(()=>{var e=this.props;const t=e.row_deletable,n=e.row_selectable,r=(t?1:0)+(n?1:0);return{columns:this.props.columns,filtering:this.props.filtering,filtering_settings:this.props.filtering_settings,filtering_type:this.props.filtering_type,id:this.props.id,offset:r,setFilter:this.handleSetFilter}}),this.stylesheet=new u.default(`#${e.id}`)}get lexerResult(){const e=this.props.filtering_settings;return this.getLexerResult(e)}componentDidMount(){this.props.selected_cell.length&&!i.contains(this.props.active_cell,this.props.selected_cell)&&this.props.setProps({active_cell:this.props.selected_cell[0]}),window.addEventListener("resize",this.handleResize),document.addEventListener("paste",this.handlePaste),document.addEventListener("mousedown",this.handleClickOutside)}componentWillUnmount(){window.removeEventListener("resize",this.handleResize),document.removeEventListener("mousedown",this.handleClickOutside),document.removeEventListener("paste",this.handlePaste)}componentWillUpdate(){const e=this.props.table_style;i.forEach(({selector:e,rule:t})=>{this.stylesheet.setRule(e,t)},e)}componentDidUpdate(){this.handleResize(),this.handleDropdown()}get $el(){return document.getElementById(this.props.id)}get displayPagination(){var e=this.props;const t=e.dataframe,n=e.navigation,r=e.virtualization,o=e.virtualization_settings;return"page"===n&&("fe"===r&&o.page_sizeo.default.createElement("div",{key:`r${t}`,ref:`r${t}`,className:`row row-${t}`,onScroll:this.onScroll},e.map((e,n)=>o.default.createElement("div",{key:n,ref:`r${t}c${n}`,className:`cell cell-${t}-${n}`},e)))))),this.displayPagination?o.default.createElement("div",null,o.default.createElement("button",{className:"previous-page",onClick:this.loadPrevious},"Previous"),o.default.createElement("button",{className:"next-page",onClick:this.loadNext},"Next")):null)}}},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r=function(){return function(e,t){if(Array.isArray(e))return e;if(Symbol.iterator in Object(e))return function(e,t){var n=[],r=!0,o=!1,i=void 0;try{for(var u,a=e[Symbol.iterator]();!(r=(u=a.next()).done)&&(n.push(u.value),!t||n.length!==t);r=!0);}catch(e){o=!0,i=e}finally{try{!r&&a.return&&a.return()}finally{if(o)throw i}}return n}(e,t);throw new TypeError("Invalid attempt to destructure non-iterable instance")}}();t.selectionCycle=function(e,t){const n=o.uniq(o.pluck(0,t)).sort((e,t)=>e-t),i=o.uniq(o.pluck(1,t)).sort((e,t)=>e-t),u=n[0],a=i[0],s=n[n.length-1],l=i[i.length-1];var c=r(e,2);const p=c[0],d=c[1],f=[p,d];p>s&&(f[0]=u,f[1]=d+1>l?a:d+1);pl&&(f[1]=a,f[0]=p+1>s?u:p+1);dArray.isArray(e.name)?e.name.length:1,h=(e,t)=>Array.isArray(e.name)?e.name[t]:"";class v{static getSorting(e,t){const n=o.find(t=>t.columnId===e,t);return n?n.direction:u.SortDirection.None}static doSort(e,t){return()=>{const n=t.sorting_settings,r=t.sorting_type;let o;switch(v.getSorting(e,n)){case u.SortDirection.Descending:o=u.SortDirection.Ascending;break;case u.SortDirection.Ascending:o=u.SortDirection.None;break;case u.SortDirection.None:default:o=u.SortDirection.Descending}const i="single"===r?s.default:a.default;t.setProps({sorting_settings:i(n,{columnId:e,direction:o})})}}static getSortingIcon(e,t){const n=t.sorting_settings;switch(v.getSorting(e,n)){case u.SortDirection.Descending:return"↑";case u.SortDirection.Ascending:return"↓";case u.SortDirection.None:default:return"↕"}}static createHeaderCells(e){const t=e.columns,n=e.columnRowIndex,u=e.labels,a=e.mergeCells,s=e.n_fixed_columns,c=e.offset,p=e.rowSorting,f=e.virtualization;let h=[];if(a){h=[0];let e=0;u.forEach((n,r)=>{t[r].hidden||n===u[e]||(h.push(r),e=r)})}else h=o.range(0,t.length);const g=t.filter(e=>!e.hidden);return o.filter(e=>!!e,h.map((y,b)=>{const m=t[y];if(m.hidden)return null;const x=g.indexOf(m)+c;let w;if(a){const e=o.slice(y,h[b+1]||1/0,t).filter(o.propEq("hidden",!0)).length;w=y===o.last(h)?u.length-y-e:h[b+1]-y-e}else w=1;const E=g.indexOf(m),_=`calc(${g.filter((e,t)=>!e.hidden&&t>=E&&ti.default.unit(e.width||d,"px")).join(" + ")})`;return r.default.createElement("th",{key:`header-cell-${y}`,colSpan:w,className:`column-${y+c} `+(y===t.length-1||y===o.last(h)?"cell--right-last ":""),style:x{(0,n.setProps)(l.editColumnName(e,t,n))}}(m,n,e)},"✎"):"",m.deletable&&"be"!==f&&"Boolean"===o.type(m.deletable)||"Number"===o.type(m.deletable)&&m.deletable===n?r.default.createElement("span",{className:"column-header--delete",onClick:function(e,t,n){return()=>{(0,n.setProps)(l.deleteColumn(e,t,n))}}(m,n,e)},"×"):"",r.default.createElement("span",null,u[y]))}))}static createDeletableHeader(e){return e.row_deletable?r.default.createElement("th",{key:"delete",className:"expanded-row--empty-cell",style:{width:"30px",maxWidth:"30px",minWidth:"30px"}}):null}static createSelectableHeader(e){return e.row_selectable?r.default.createElement("th",{key:"select",className:"expanded-row--empty-cell",style:{width:"30px",maxWidth:"30px",minWidth:"30px"}}):null}static createHeaders(e){let t=e.columns,n=e.dataframe,r=e.sorting,i=e.merge_duplicate_headers,u=e.n_fixed_columns,a=e.row_deletable,s=e.row_selectable,l=e.setProps,c=e.sorting_settings,p=e.sorting_type,d=e.virtualization;const g=(a?1:0)+(s?1:0),y=this.createDeletableHeader(e),b=this.createSelectableHeader(e),m=Math.max.apply(Math,t.map(f));let x;return x=1===m?[[...y?[y]:[],...b?[b]:[],...v.createHeaderCells({columns:t,columnRowIndex:0,dataframe:n,labels:o.pluck("name",t),n_fixed_columns:u,offset:g,rowSorting:r,setProps:l,sorting_settings:c,sorting_type:p,virtualization:d})]]:o.range(0,m).map(e=>[...y?[y]:[],...b?[b]:[],...v.createHeaderCells({columns:t,columnRowIndex:e,dataframe:n,labels:t.map(t=>o.isNil(t.name)&&e===m-1?t.id:h(t,e)),n_fixed_columns:u,offset:g,rowSorting:!!r&&e+1===m,mergeCells:i&&e+1!==m,setProps:l,sorting_settings:c,sorting_type:p,virtualization:d})])}}t.default=v},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r=function(e){if(e&&e.__esModule)return e;var t={};if(null!=e)for(var n in e)Object.prototype.hasOwnProperty.call(e,n)&&(t[n]=e[n]);return t.default=e,t}(n(2)),o=function(e){return e&&e.__esModule?e:{default:e}}(n(3)),i=n(7);t.default=((e,t)=>{if(o.default.trace("multi - updateSettings",e,t),e=r.clone(e),t.direction===i.SortDirection.None){const n=r.findIndex(e=>e.columnId===t.columnId,e);-1!==n&&e.splice(n,1)}else{const n=r.find(e=>e.columnId===t.columnId,e);n?n.direction=t.direction:e.push(t)}return e})},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r=function(e){return e&&e.__esModule?e:{default:e}}(n(3)),o=n(7);t.default=((e,t)=>(r.default.trace("single - updateSettings",e,t),t.direction===o.SortDirection.None?[]:[t]))},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r=function(e){if(e&&e.__esModule)return e;var t={};if(null!=e)for(var n in e)Object.prototype.hasOwnProperty.call(e,n)&&(t[n]=e[n]);return t.default=e,t}(n(2)),o=s(n(40)),i=s(n(41)),u=s(n(3)),a=n(14);function s(e){return e&&e.__esModule?e:{default:e}}t.default=class{static toClipboard(e,t,n,a){const s=r.uniq(r.pluck(0,t).sort((e,t)=>e-t)),l=r.uniq(r.pluck(1,t).sort((e,t)=>e-t)),c=r.slice(r.head(s),r.last(s)+1,a).map(e=>r.props(l,r.props(r.pluck("id",n),e))),p=o.default.prototype.stringify(c);u.default.trace("TableClipboard -- set clipboard data: ",p),i.default.set(e,p)}static fromClipboard(e,t,n,s,l,c=!0,p=!0){const d=i.default.get(e);if(u.default.trace("TableClipboard -- get clipboard data: ",d),!d)return;const f=o.default.prototype.parse(d);let h=l;const v=s;if(c&&f[0].length+t[1]>=s.length)for(let e=s.length;et[`Column ${e}`]="");p&&u.default.debug("Clipboard -- Sorting or filtering active, do not create new rows");const g=n[t[0]];if(p&&f.length+g>=l.length){const e={};s.forEach(t=>e[t.id]=""),h=r.concat(h,r.repeat(e,f.length+g-l.length))}return f.forEach((e,o)=>e.forEach((e,i)=>{const u=t[0]+o;if(n.length<=t[0]+o)return;const s=n[u],l=t[1]+i,c=v[l];c&&(0,a.colIsEditable)(!0,c)&&(h=r.set(r.lensPath([s,c.id]),e,h))})),{dataframe:h,columns:v}}}},function(e,t){!function(t){"use strict";function n(){}function r(e){return e.split('"').length-1}n.prototype=Object.create(Object.prototype,{parse:{value:function(e){var t,n,o,i,u,a,s,l=[],c=0;for((o=e.split("\n")).length>1&&""===o[o.length-1]&&o.pop(),t=0,n=o.length;t0&&(u+="\t"),"string"==typeof(i=e[t][r])?i.indexOf("\n")>-1?u+='"'+i.replace(/"/g,'""')+'"':u+=i:u+=null===i||void 0===i?"":i;u+="\n"}return u},enumerable:!0,configurable:!1,writable:!1}}),void 0!==e&&e.exports?e.exports=n:t.SheetClip=n}(this)},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});t.default=class{static set(e,t){e.clipboardData.setData("text/plain",t),e.preventDefault()}static get(e){let t;return t=e.clipboardData?e.clipboardData.getData("text/plain"):void 0}}},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r=s(n(2)),o=a(n(1)),i=a(n(43)),u=s(n(16));function a(e){return e&&e.__esModule?e:{default:e}}function s(e){if(e&&e.__esModule)return e;var t={};if(null!=e)for(var n in e)Object.prototype.hasOwnProperty.call(e,n)&&(t[n]=e[n]);return t.default=e,t}t.default=class{constructor(e){this.propsFn=e,this.handlers=new Map,this.isCellSelected=((e,t,n)=>e&&r.contains([t,n],e)),this.getEventHandler=((e,t,n)=>{const r=this.handlers.get(e)||this.handlers.set(e,new Map).get(e),o=r.get(t)||r.set(t,new Map).get(t);return o.get(n)||o.set(n,e.bind(this,t,n)).get(n)}),this.handleClick=((e,t,n)=>{var o=this.props;const i=o.columns,u=o.editable,a=o.is_focused,s=o.row_deletable,l=o.row_selectable,c=o.selected_cell,p=o.setProps,d=this.isCellSelected(c,e,t);if(!u)return;if(a||n.preventDefault(),d)return;const f=(s?1:0)+(l?1:0);n.preventDefault();const h=[e,t+f],v={is_focused:!1,active_cell:h},g=[];i.forEach((e,t)=>{e.hidden||g.push(t+f)});const y=r.uniq(r.pluck(0,c)).sort((e,t)=>e-t),b=r.uniq(r.pluck(1,c)).sort((e,t)=>e-t),m=y[0],x=b[0];n.shiftKey?v.selected_cell=r.xprod(r.range(r.min(m,h[0]),r.max(m,h[0])+1),r.range(r.min(x,h[1]),r.max(x,h[1])+1)).filter(e=>r.contains(e[1],g)):v.selected_cell=[h],p(v)}),this.handleDoubleClick=((e,t,n)=>{var r=this.props;const o=r.editable,i=r.is_focused,u=r.row_deletable,a=r.row_selectable,s=r.setProps;if(!o)return;const l=[e,t+((u?1:0)+(a?1:0))];i||(n.preventDefault(),s({selected_cell:[l],active_cell:l,is_focused:!0}))}),this.handleChange=((e,t,n)=>{var o=this.props;const i=o.columns,u=o.dataframe,a=o.editable,s=o.setProps,l=i[t];a&&s({dataframe:r.set(r.lensPath([e,l.id]),n,u)})}),this.handlePaste=(e=>{e.preventDefault()})}get props(){return this.propsFn()}rowSelectCell(e){var t=this.props;const n=t.setProps,i=t.selected_rows,u=t.row_selectable;return u?o.default.createElement("td",{key:"select",className:"select-cell",style:{width:"30px",maxWidth:"30px",minWidth:"30px"}},o.default.createElement("input",{type:"single"===u?"radio":"checkbox",name:"row-select",checked:r.contains(e,i),onChange:()=>n({selected_rows:"single"===u?[e]:r.ifElse(r.contains(e),r.without([e]),r.append(e))(i)})})):null}rowDeleteCell(e){var t=this.props;const n=t.setProps;return t.row_deletable?o.default.createElement("td",{key:"delete",className:"delete-cell",onClick:()=>n(u.deleteRow(e,this.props)),style:{width:"30px",maxWidth:"30px",minWidth:"30px"}},"×"):null}createCells(){var e=this.props;const t=e.active_cell,n=e.columns,u=e.column_conditional_dropdowns,a=e.column_conditional_styles,s=e.column_static_dropdown,l=e.column_static_style,c=e.dropdown_properties,p=e.editable,d=e.id,f=e.is_focused,h=e.row_deletable,v=e.row_selectable,g=e.selected_cell,y=e.virtualizer,b=y.dataframe,m=y.indices,x=n.filter(e=>!e.hidden),w=(h?1:0)+(v?1:0);return b.map((e,h)=>{const v=m[h],y=this.rowDeleteCell(v),b=this.rowSelectCell(v),E=x.map((y,b)=>{b+=w;let m=(c&&c[y.id]&&(c[y.id].length>v?c[y.id][v]:null)||y||{}).options;const x=n.indexOf(y),E=[`column-${x+w}`];let _=u.find(e=>e.id===y.id),O=s.find(e=>e.id===y.id);_=_&&_.dropdowns,O=m||O&&O.dropdown;let S=a.find(e=>e.id===y.id),C=l.find(e=>e.id===y.id);return S=S&&S.styles,C=C&&C.style,o.default.createElement(i.default,{key:`${y.id}-${b}`,active:t[0]===h&&t[1]===x+w,classes:E,clearable:y.clearable,conditionalDropdowns:_,conditionalStyles:S,datum:e,editable:p,focused:!!f,onClick:this.getEventHandler(this.handleClick,h,x),onDoubleClick:this.getEventHandler(this.handleDoubleClick,h,x),onPaste:this.handlePaste,onChange:this.getEventHandler(this.handleChange,v,x),property:y.id,selected:r.contains([h,x+w],g),staticDropdown:O,staticStyle:C,tableId:d,type:y.type,value:e[y.id]})});return b&&E.unshift(b),y&&E.unshift(y),E})}}},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var r=function(e){if(e&&e.__esModule)return e;var t={};if(null!=e)for(var n in e)Object.prototype.hasOwnProperty.call(e,n)&&(t[n]=e[n]);return t.default=e,t}(n(2)),o=n(1),i=f(o),u=f(n(44)),a=n(12),s=n(5),l=f(n(45)),c=f(n(18)),p=n(15),d=f(n(20));function f(e){return e&&e.__esModule?e:{default:e}}class h extends o.Component{constructor(e){super(e),this.getDropdown=(0,s.memoizeOne)((...e)=>e.length?e.slice(-1)[0]:void 0),this.getStyle=(0,s.memoizeOne)((...e)=>e.length?r.mergeAll(e):void 0),this.propagateChange=(()=>{if(this.state.value===this.props.value)return;(0,this.props.onChange)(this.state.value)}),this.handleChange=(e=>{this.setState({value:e.target.value})}),this.handleKeyDown=(e=>{e.keyCode===p.KEY_CODES.ENTER&&this.propagateChange()}),this.handleOpenDropdown=(()=>{var e=this.refs;const t=e.dropdown,n=e.td;(0,d.default)(t.wrapper.querySelector(".Select-menu-outer"),n)}),this.state={value:e.value}}get propsWithDefaults(){return this.props}get classes(){var e=this.propsWithDefaults;let t=e.active,n=e.classes,r=e.editable,o=e.selected,i=e.type;return[...t?["focused"]:[],...r?[]:["cell--uneditable"],...o?["cell--selected"]:[],..."dropdown"===i?["dropdown"]:[],...n]}renderDropdown(){var e=this.propsWithDefaults;const t=e.clearable,n=e.onChange,r=e.value,o=this.dropdown;return o?i.default.createElement(u.default,{ref:"dropdown",clearable:t,onChange:e=>{n(e?e.value:e)},onOpen:this.handleOpenDropdown,options:o,placeholder:"",value:r}):this.renderValue()}renderInput(){var e=this.propsWithDefaults;const t=e.active,n=e.focused,r=e.onClick,o=e.onDoubleClick,u=e.onPaste,a={className:[...t?["input-active"]:[],...n?["focused"]:["unfocused"],...["cell-value"]].join(" "),onClick:r,onDoubleClick:o};return t||this.state.value!==this.props.value?i.default.createElement("input",Object.assign({ref:"textInput",type:"text",value:this.state.value,onBlur:this.propagateChange,onChange:this.handleChange,onKeyDown:this.handleKeyDown,onPaste:u},a)):this.renderValue(a)}renderValue(e={}){const t=this.propsWithDefaults.value;return i.default.createElement("div",Object.assign({},e),t)}renderInner(){switch(this.props.type){case"text":case"numeric":return this.renderInput();case"dropdown":return this.renderDropdown();default:return this.renderValue()}}get dropdown(){var e=this.propsWithDefaults;let t=e.conditionalDropdowns,n=e.datum,o=e.property,i=e.staticDropdown,u=e.tableId;const a=[...i?[i]:[],...r.map(([e])=>e.dropdown,r.filter(([e,t])=>h.dropdownAstCache([u,o,t],[e.condition]).evaluate(n),r.addIndex(r.map)((e,t)=>[e,t],t)))];return this.getDropdown(...a)}get style(){var e=this.propsWithDefaults;let t=e.conditionalStyles,n=e.datum,o=e.property,i=e.staticStyle,u=e.tableId;const a=[i,...r.map(([e])=>e.style,r.filter(([e,t])=>h.styleAstCache([u,o,t],[e.condition]).evaluate(n),r.addIndex(r.map)((e,t)=>[e,t],t)))];return this.getStyle(...a)}render(){return i.default.createElement("td",{ref:"td",tabIndex:-1,className:this.classes.join(" "),style:this.style},this.renderInner())}componentWillReceiveProps(e){const t=e.value;this.state.value!==t&&this.setState({value:t})}componentDidUpdate(){const e=this.propsWithDefaults.active,t=this.refs.textInput;e&&t&&document.activeElement!==t&&(t.focus(),t.setSelectionRange(0,t.value?t.value.length:0)),e&&this.refs.dropdown&&this.refs.td.focus()}shouldComponentUpdate(e,t){const n=this.props,r=this.state;return!(0,a.isEqual)(n,e,!0)||!(0,a.isEqual)(r,t,!0)}}t.default=h,h.dropdownAstCache=(0,l.default)(e=>new c.default(e)),h.styleAstCache=(0,l.default)(e=>new c.default(e)),h.defaultProps={classes:[],conditionalDropdowns:[],conditionalStyles:[],staticStyle:{},type:"text"}},function(e,t,n){"use strict";n.r(t),n.d(t,"Async",function(){return V}),n.d(t,"AsyncCreatable",function(){return Y}),n.d(t,"Creatable",function(){return L}),n.d(t,"Value",function(){return F}),n.d(t,"Option",function(){return k}),n.d(t,"defaultMenuRenderer",function(){return b}),n.d(t,"defaultArrowRenderer",function(){return d}),n.d(t,"defaultClearRenderer",function(){return f}),n.d(t,"defaultFilterOptions",function(){return y});var r=n(22),o=n.n(r),i=n(4),u=n.n(i),a=n(0),s=n.n(a),l=n(1),c=n.n(l),p=n(6),d=function(e){var t=e.onMouseDown;return c.a.createElement("span",{className:"Select-arrow",onMouseDown:t})};d.propTypes={onMouseDown:s.a.func};var f=function(){return c.a.createElement("span",{className:"Select-clear",dangerouslySetInnerHTML:{__html:"×"}})},h=[{base:"A",letters:/[\u0041\u24B6\uFF21\u00C0\u00C1\u00C2\u1EA6\u1EA4\u1EAA\u1EA8\u00C3\u0100\u0102\u1EB0\u1EAE\u1EB4\u1EB2\u0226\u01E0\u00C4\u01DE\u1EA2\u00C5\u01FA\u01CD\u0200\u0202\u1EA0\u1EAC\u1EB6\u1E00\u0104\u023A\u2C6F]/g},{base:"AA",letters:/[\uA732]/g},{base:"AE",letters:/[\u00C6\u01FC\u01E2]/g},{base:"AO",letters:/[\uA734]/g},{base:"AU",letters:/[\uA736]/g},{base:"AV",letters:/[\uA738\uA73A]/g},{base:"AY",letters:/[\uA73C]/g},{base:"B",letters:/[\u0042\u24B7\uFF22\u1E02\u1E04\u1E06\u0243\u0182\u0181]/g},{base:"C",letters:/[\u0043\u24B8\uFF23\u0106\u0108\u010A\u010C\u00C7\u1E08\u0187\u023B\uA73E]/g},{base:"D",letters:/[\u0044\u24B9\uFF24\u1E0A\u010E\u1E0C\u1E10\u1E12\u1E0E\u0110\u018B\u018A\u0189\uA779]/g},{base:"DZ",letters:/[\u01F1\u01C4]/g},{base:"Dz",letters:/[\u01F2\u01C5]/g},{base:"E",letters:/[\u0045\u24BA\uFF25\u00C8\u00C9\u00CA\u1EC0\u1EBE\u1EC4\u1EC2\u1EBC\u0112\u1E14\u1E16\u0114\u0116\u00CB\u1EBA\u011A\u0204\u0206\u1EB8\u1EC6\u0228\u1E1C\u0118\u1E18\u1E1A\u0190\u018E]/g},{base:"F",letters:/[\u0046\u24BB\uFF26\u1E1E\u0191\uA77B]/g},{base:"G",letters:/[\u0047\u24BC\uFF27\u01F4\u011C\u1E20\u011E\u0120\u01E6\u0122\u01E4\u0193\uA7A0\uA77D\uA77E]/g},{base:"H",letters:/[\u0048\u24BD\uFF28\u0124\u1E22\u1E26\u021E\u1E24\u1E28\u1E2A\u0126\u2C67\u2C75\uA78D]/g},{base:"I",letters:/[\u0049\u24BE\uFF29\u00CC\u00CD\u00CE\u0128\u012A\u012C\u0130\u00CF\u1E2E\u1EC8\u01CF\u0208\u020A\u1ECA\u012E\u1E2C\u0197]/g},{base:"J",letters:/[\u004A\u24BF\uFF2A\u0134\u0248]/g},{base:"K",letters:/[\u004B\u24C0\uFF2B\u1E30\u01E8\u1E32\u0136\u1E34\u0198\u2C69\uA740\uA742\uA744\uA7A2]/g},{base:"L",letters:/[\u004C\u24C1\uFF2C\u013F\u0139\u013D\u1E36\u1E38\u013B\u1E3C\u1E3A\u0141\u023D\u2C62\u2C60\uA748\uA746\uA780]/g},{base:"LJ",letters:/[\u01C7]/g},{base:"Lj",letters:/[\u01C8]/g},{base:"M",letters:/[\u004D\u24C2\uFF2D\u1E3E\u1E40\u1E42\u2C6E\u019C]/g},{base:"N",letters:/[\u004E\u24C3\uFF2E\u01F8\u0143\u00D1\u1E44\u0147\u1E46\u0145\u1E4A\u1E48\u0220\u019D\uA790\uA7A4]/g},{base:"NJ",letters:/[\u01CA]/g},{base:"Nj",letters:/[\u01CB]/g},{base:"O",letters:/[\u004F\u24C4\uFF2F\u00D2\u00D3\u00D4\u1ED2\u1ED0\u1ED6\u1ED4\u00D5\u1E4C\u022C\u1E4E\u014C\u1E50\u1E52\u014E\u022E\u0230\u00D6\u022A\u1ECE\u0150\u01D1\u020C\u020E\u01A0\u1EDC\u1EDA\u1EE0\u1EDE\u1EE2\u1ECC\u1ED8\u01EA\u01EC\u00D8\u01FE\u0186\u019F\uA74A\uA74C]/g},{base:"OI",letters:/[\u01A2]/g},{base:"OO",letters:/[\uA74E]/g},{base:"OU",letters:/[\u0222]/g},{base:"P",letters:/[\u0050\u24C5\uFF30\u1E54\u1E56\u01A4\u2C63\uA750\uA752\uA754]/g},{base:"Q",letters:/[\u0051\u24C6\uFF31\uA756\uA758\u024A]/g},{base:"R",letters:/[\u0052\u24C7\uFF32\u0154\u1E58\u0158\u0210\u0212\u1E5A\u1E5C\u0156\u1E5E\u024C\u2C64\uA75A\uA7A6\uA782]/g},{base:"S",letters:/[\u0053\u24C8\uFF33\u1E9E\u015A\u1E64\u015C\u1E60\u0160\u1E66\u1E62\u1E68\u0218\u015E\u2C7E\uA7A8\uA784]/g},{base:"T",letters:/[\u0054\u24C9\uFF34\u1E6A\u0164\u1E6C\u021A\u0162\u1E70\u1E6E\u0166\u01AC\u01AE\u023E\uA786]/g},{base:"TZ",letters:/[\uA728]/g},{base:"U",letters:/[\u0055\u24CA\uFF35\u00D9\u00DA\u00DB\u0168\u1E78\u016A\u1E7A\u016C\u00DC\u01DB\u01D7\u01D5\u01D9\u1EE6\u016E\u0170\u01D3\u0214\u0216\u01AF\u1EEA\u1EE8\u1EEE\u1EEC\u1EF0\u1EE4\u1E72\u0172\u1E76\u1E74\u0244]/g},{base:"V",letters:/[\u0056\u24CB\uFF36\u1E7C\u1E7E\u01B2\uA75E\u0245]/g},{base:"VY",letters:/[\uA760]/g},{base:"W",letters:/[\u0057\u24CC\uFF37\u1E80\u1E82\u0174\u1E86\u1E84\u1E88\u2C72]/g},{base:"X",letters:/[\u0058\u24CD\uFF38\u1E8A\u1E8C]/g},{base:"Y",letters:/[\u0059\u24CE\uFF39\u1EF2\u00DD\u0176\u1EF8\u0232\u1E8E\u0178\u1EF6\u1EF4\u01B3\u024E\u1EFE]/g},{base:"Z",letters:/[\u005A\u24CF\uFF3A\u0179\u1E90\u017B\u017D\u1E92\u1E94\u01B5\u0224\u2C7F\u2C6B\uA762]/g},{base:"a",letters:/[\u0061\u24D0\uFF41\u1E9A\u00E0\u00E1\u00E2\u1EA7\u1EA5\u1EAB\u1EA9\u00E3\u0101\u0103\u1EB1\u1EAF\u1EB5\u1EB3\u0227\u01E1\u00E4\u01DF\u1EA3\u00E5\u01FB\u01CE\u0201\u0203\u1EA1\u1EAD\u1EB7\u1E01\u0105\u2C65\u0250]/g},{base:"aa",letters:/[\uA733]/g},{base:"ae",letters:/[\u00E6\u01FD\u01E3]/g},{base:"ao",letters:/[\uA735]/g},{base:"au",letters:/[\uA737]/g},{base:"av",letters:/[\uA739\uA73B]/g},{base:"ay",letters:/[\uA73D]/g},{base:"b",letters:/[\u0062\u24D1\uFF42\u1E03\u1E05\u1E07\u0180\u0183\u0253]/g},{base:"c",letters:/[\u0063\u24D2\uFF43\u0107\u0109\u010B\u010D\u00E7\u1E09\u0188\u023C\uA73F\u2184]/g},{base:"d",letters:/[\u0064\u24D3\uFF44\u1E0B\u010F\u1E0D\u1E11\u1E13\u1E0F\u0111\u018C\u0256\u0257\uA77A]/g},{base:"dz",letters:/[\u01F3\u01C6]/g},{base:"e",letters:/[\u0065\u24D4\uFF45\u00E8\u00E9\u00EA\u1EC1\u1EBF\u1EC5\u1EC3\u1EBD\u0113\u1E15\u1E17\u0115\u0117\u00EB\u1EBB\u011B\u0205\u0207\u1EB9\u1EC7\u0229\u1E1D\u0119\u1E19\u1E1B\u0247\u025B\u01DD]/g},{base:"f",letters:/[\u0066\u24D5\uFF46\u1E1F\u0192\uA77C]/g},{base:"g",letters:/[\u0067\u24D6\uFF47\u01F5\u011D\u1E21\u011F\u0121\u01E7\u0123\u01E5\u0260\uA7A1\u1D79\uA77F]/g},{base:"h",letters:/[\u0068\u24D7\uFF48\u0125\u1E23\u1E27\u021F\u1E25\u1E29\u1E2B\u1E96\u0127\u2C68\u2C76\u0265]/g},{base:"hv",letters:/[\u0195]/g},{base:"i",letters:/[\u0069\u24D8\uFF49\u00EC\u00ED\u00EE\u0129\u012B\u012D\u00EF\u1E2F\u1EC9\u01D0\u0209\u020B\u1ECB\u012F\u1E2D\u0268\u0131]/g},{base:"j",letters:/[\u006A\u24D9\uFF4A\u0135\u01F0\u0249]/g},{base:"k",letters:/[\u006B\u24DA\uFF4B\u1E31\u01E9\u1E33\u0137\u1E35\u0199\u2C6A\uA741\uA743\uA745\uA7A3]/g},{base:"l",letters:/[\u006C\u24DB\uFF4C\u0140\u013A\u013E\u1E37\u1E39\u013C\u1E3D\u1E3B\u017F\u0142\u019A\u026B\u2C61\uA749\uA781\uA747]/g},{base:"lj",letters:/[\u01C9]/g},{base:"m",letters:/[\u006D\u24DC\uFF4D\u1E3F\u1E41\u1E43\u0271\u026F]/g},{base:"n",letters:/[\u006E\u24DD\uFF4E\u01F9\u0144\u00F1\u1E45\u0148\u1E47\u0146\u1E4B\u1E49\u019E\u0272\u0149\uA791\uA7A5]/g},{base:"nj",letters:/[\u01CC]/g},{base:"o",letters:/[\u006F\u24DE\uFF4F\u00F2\u00F3\u00F4\u1ED3\u1ED1\u1ED7\u1ED5\u00F5\u1E4D\u022D\u1E4F\u014D\u1E51\u1E53\u014F\u022F\u0231\u00F6\u022B\u1ECF\u0151\u01D2\u020D\u020F\u01A1\u1EDD\u1EDB\u1EE1\u1EDF\u1EE3\u1ECD\u1ED9\u01EB\u01ED\u00F8\u01FF\u0254\uA74B\uA74D\u0275]/g},{base:"oi",letters:/[\u01A3]/g},{base:"ou",letters:/[\u0223]/g},{base:"oo",letters:/[\uA74F]/g},{base:"p",letters:/[\u0070\u24DF\uFF50\u1E55\u1E57\u01A5\u1D7D\uA751\uA753\uA755]/g},{base:"q",letters:/[\u0071\u24E0\uFF51\u024B\uA757\uA759]/g},{base:"r",letters:/[\u0072\u24E1\uFF52\u0155\u1E59\u0159\u0211\u0213\u1E5B\u1E5D\u0157\u1E5F\u024D\u027D\uA75B\uA7A7\uA783]/g},{base:"s",letters:/[\u0073\u24E2\uFF53\u00DF\u015B\u1E65\u015D\u1E61\u0161\u1E67\u1E63\u1E69\u0219\u015F\u023F\uA7A9\uA785\u1E9B]/g},{base:"t",letters:/[\u0074\u24E3\uFF54\u1E6B\u1E97\u0165\u1E6D\u021B\u0163\u1E71\u1E6F\u0167\u01AD\u0288\u2C66\uA787]/g},{base:"tz",letters:/[\uA729]/g},{base:"u",letters:/[\u0075\u24E4\uFF55\u00F9\u00FA\u00FB\u0169\u1E79\u016B\u1E7B\u016D\u00FC\u01DC\u01D8\u01D6\u01DA\u1EE7\u016F\u0171\u01D4\u0215\u0217\u01B0\u1EEB\u1EE9\u1EEF\u1EED\u1EF1\u1EE5\u1E73\u0173\u1E77\u1E75\u0289]/g},{base:"v",letters:/[\u0076\u24E5\uFF56\u1E7D\u1E7F\u028B\uA75F\u028C]/g},{base:"vy",letters:/[\uA761]/g},{base:"w",letters:/[\u0077\u24E6\uFF57\u1E81\u1E83\u0175\u1E87\u1E85\u1E98\u1E89\u2C73]/g},{base:"x",letters:/[\u0078\u24E7\uFF58\u1E8B\u1E8D]/g},{base:"y",letters:/[\u0079\u24E8\uFF59\u1EF3\u00FD\u0177\u1EF9\u0233\u1E8F\u00FF\u1EF7\u1E99\u1EF5\u01B4\u024F\u1EFF]/g},{base:"z",letters:/[\u007A\u24E9\uFF5A\u017A\u1E91\u017C\u017E\u1E93\u1E95\u01B6\u0225\u0240\u2C6C\uA763]/g}],v=function(e){for(var t=0;t-1)return!1;if(r.filterOption)return r.filterOption.call(void 0,e,t);if(!t)return!0;var o=e[r.valueKey],i=e[r.labelKey],u=g(o),a=g(i);if(!u&&!a)return!1;var s=u?String(o):null,l=a?String(i):null;return r.ignoreAccents&&(s&&"label"!==r.matchProp&&(s=v(s)),l&&"value"!==r.matchProp&&(l=v(l))),r.ignoreCase&&(s&&"label"!==r.matchProp&&(s=s.toLowerCase()),l&&"value"!==r.matchProp&&(l=l.toLowerCase())),"start"===r.matchPos?s&&"label"!==r.matchProp&&s.substr(0,t.length)===t||l&&"value"!==r.matchProp&&l.substr(0,t.length)===t:s&&"label"!==r.matchProp&&s.indexOf(t)>=0||l&&"value"!==r.matchProp&&l.indexOf(t)>=0})},b=function(e){var t=e.focusedOption,n=e.focusOption,r=e.inputValue,o=e.instancePrefix,i=e.onFocus,a=e.onOptionRef,s=e.onSelect,l=e.optionClassName,p=e.optionComponent,d=e.optionRenderer,f=e.options,h=e.removeValue,v=e.selectValue,g=e.valueArray,y=e.valueKey,b=p;return f.map(function(e,p){var f=g&&g.some(function(t){return t[y]===e[y]}),m=e===t,x=u()(l,{"Select-option":!0,"is-selected":f,"is-focused":m,"is-disabled":e.disabled});return c.a.createElement(b,{className:x,focusOption:n,inputValue:r,instancePrefix:o,isDisabled:e.disabled,isFocused:m,isSelected:f,key:"option-"+p+"-"+e[y],onFocus:i,onSelect:s,option:e,optionIndex:p,ref:function(e){a(e,m)},removeValue:h,selectValue:v},d(e,p,r))})};b.propTypes={focusOption:s.a.func,focusedOption:s.a.object,inputValue:s.a.string,instancePrefix:s.a.string,onFocus:s.a.func,onOptionRef:s.a.func,onSelect:s.a.func,optionClassName:s.a.string,optionComponent:s.a.func,optionRenderer:s.a.func,options:s.a.array,removeValue:s.a.func,selectValue:s.a.func,valueArray:s.a.array,valueKey:s.a.string};var m=function(e){e.preventDefault(),e.stopPropagation(),"A"===e.target.tagName&&"href"in e.target&&(e.target.target?window.open(e.target.href,e.target.target):window.location.href=e.target.href)},x="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},w=(function(){function e(e){this.value=e}function t(t){var n,r;function o(n,r){try{var u=t[n](r),a=u.value;a instanceof e?Promise.resolve(a.value).then(function(e){o("next",e)},function(e){o("throw",e)}):i(u.done?"return":"normal",u.value)}catch(e){i("throw",e)}}function i(e,t){switch(e){case"return":n.resolve({value:t,done:!0});break;case"throw":n.reject(t);break;default:n.resolve({value:t,done:!1})}(n=n.next)?o(n.key,n.arg):r=null}this._invoke=function(e,t){return new Promise(function(i,u){var a={key:e,arg:t,resolve:i,reject:u,next:null};r?r=r.next=a:(n=r=a,o(e,t))})},"function"!=typeof t.return&&(this.return=void 0)}"function"==typeof Symbol&&Symbol.asyncIterator&&(t.prototype[Symbol.asyncIterator]=function(){return this}),t.prototype.next=function(e){return this._invoke("next",e)},t.prototype.throw=function(e){return this._invoke("throw",e)},t.prototype.return=function(e){return this._invoke("return",e)}}(),function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}),E=function(){function e(e,t){for(var n=0;n=0||Object.prototype.hasOwnProperty.call(e,r)&&(n[r]=e[r]);return n},A=function(e,t){if(!e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return!t||"object"!=typeof t&&"function"!=typeof t?e:t},k=function(e){function t(e){w(this,t);var n=A(this,(t.__proto__||Object.getPrototypeOf(t)).call(this,e));return n.handleMouseDown=n.handleMouseDown.bind(n),n.handleMouseEnter=n.handleMouseEnter.bind(n),n.handleMouseMove=n.handleMouseMove.bind(n),n.handleTouchStart=n.handleTouchStart.bind(n),n.handleTouchEnd=n.handleTouchEnd.bind(n),n.handleTouchMove=n.handleTouchMove.bind(n),n.onFocus=n.onFocus.bind(n),n}return S(t,e),E(t,[{key:"handleMouseDown",value:function(e){e.preventDefault(),e.stopPropagation(),this.props.onSelect(this.props.option,e)}},{key:"handleMouseEnter",value:function(e){this.onFocus(e)}},{key:"handleMouseMove",value:function(e){this.onFocus(e)}},{key:"handleTouchEnd",value:function(e){this.dragging||this.handleMouseDown(e)}},{key:"handleTouchMove",value:function(){this.dragging=!0}},{key:"handleTouchStart",value:function(){this.dragging=!1}},{key:"onFocus",value:function(e){this.props.isFocused||this.props.onFocus(this.props.option,e)}},{key:"render",value:function(){var e=this.props,t=e.option,n=e.instancePrefix,r=e.optionIndex,o=u()(this.props.className,t.className);return t.disabled?c.a.createElement("div",{className:o,onMouseDown:m,onClick:m},this.props.children):c.a.createElement("div",{className:o,style:t.style,role:"option","aria-label":t.label,onMouseDown:this.handleMouseDown,onMouseEnter:this.handleMouseEnter,onMouseMove:this.handleMouseMove,onTouchStart:this.handleTouchStart,onTouchMove:this.handleTouchMove,onTouchEnd:this.handleTouchEnd,id:n+"-option-"+r,title:t.title},this.props.children)}}]),t}(c.a.Component);k.propTypes={children:s.a.node,className:s.a.string,instancePrefix:s.a.string.isRequired,isDisabled:s.a.bool,isFocused:s.a.bool,isSelected:s.a.bool,onFocus:s.a.func,onSelect:s.a.func,onUnfocus:s.a.func,option:s.a.object.isRequired,optionIndex:s.a.number};var F=function(e){function t(e){w(this,t);var n=A(this,(t.__proto__||Object.getPrototypeOf(t)).call(this,e));return n.handleMouseDown=n.handleMouseDown.bind(n),n.onRemove=n.onRemove.bind(n),n.handleTouchEndRemove=n.handleTouchEndRemove.bind(n),n.handleTouchMove=n.handleTouchMove.bind(n),n.handleTouchStart=n.handleTouchStart.bind(n),n}return S(t,e),E(t,[{key:"handleMouseDown",value:function(e){if("mousedown"!==e.type||0===e.button)return this.props.onClick?(e.stopPropagation(),void this.props.onClick(this.props.value,e)):void(this.props.value.href&&e.stopPropagation())}},{key:"onRemove",value:function(e){e.preventDefault(),e.stopPropagation(),this.props.onRemove(this.props.value)}},{key:"handleTouchEndRemove",value:function(e){this.dragging||this.onRemove(e)}},{key:"handleTouchMove",value:function(){this.dragging=!0}},{key:"handleTouchStart",value:function(){this.dragging=!1}},{key:"renderRemoveIcon",value:function(){if(!this.props.disabled&&this.props.onRemove)return c.a.createElement("span",{className:"Select-value-icon","aria-hidden":"true",onMouseDown:this.onRemove,onTouchEnd:this.handleTouchEndRemove,onTouchStart:this.handleTouchStart,onTouchMove:this.handleTouchMove},"×")}},{key:"renderLabel",value:function(){return this.props.onClick||this.props.value.href?c.a.createElement("a",{className:"Select-value-label",href:this.props.value.href,target:this.props.value.target,onMouseDown:this.handleMouseDown,onTouchEnd:this.handleMouseDown},this.props.children):c.a.createElement("span",{className:"Select-value-label",role:"option","aria-selected":"true",id:this.props.id},this.props.children)}},{key:"render",value:function(){return c.a.createElement("div",{className:u()("Select-value",this.props.value.className),style:this.props.value.style,title:this.props.value.title},this.renderRemoveIcon(),this.renderLabel())}}]),t}(c.a.Component);F.propTypes={children:s.a.node,disabled:s.a.bool,id:s.a.string,onClick:s.a.func,onRemove:s.a.func,value:s.a.object.isRequired}; +!function(){"use strict";var n={}.hasOwnProperty;function o(){for(var e=[],t=0;t(0,r.isEqualArgs)(n,o)?t:(n=o)&&(t=e(...o))},t.memoizeAll=function(e){const t=[];return(...n)=>{let o=t.find(e=>(0,r.isEqualArgs)(e.args,n));return(o||t[t.push({args:n,result:e(...n)})-1]).result}};var r=n(12)},function(e,t){e.exports=window.ReactDOM},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.defaultIsNully=t.SortDirection=void 0;var r=function(e){if(e&&e.__esModule)return e;var t={};if(null!=e)for(var n in e)Object.prototype.hasOwnProperty.call(e,n)&&(t[n]=e[n]);return t.default=e,t}(n(2));var o=t.SortDirection=void 0;!function(e){e.Ascending="asc",e.Descending="desc",e.None="none"}(o||(t.SortDirection=o={}));const i=t.defaultIsNully=(e=>void 0===e||null===e);t.default=((e,t,n=i)=>t.length?r.sortWith(r.map(e=>e.direction===o.Descending?r.comparator((t,r)=>{const o=e.columnId,i=t[o],u=r[o];return!n(i)&&(!!n(u)||i>u)}):r.comparator((t,r)=>{const o=e.columnId,i=t[o],u=r[o];return!n(i)&&(!!n(u)||i=0&&s.splice(t,1)}function h(e){var t=document.createElement("style");return void 0===e.attrs.type&&(e.attrs.type="text/css"),v(t,e.attrs),d(e,t),t}function v(e,t){Object.keys(t).forEach(function(n){e.setAttribute(n,t[n])})}function g(e,t){var n,r,o,i;if(t.transform&&e.css){if(!(i=t.transform(e.css)))return function(){};e.css=i}if(t.singleton){var s=a++;n=u||(u=h(t)),r=b.bind(null,n,s,!1),o=b.bind(null,n,s,!0)}else e.sourceMap&&"function"==typeof URL&&"function"==typeof URL.createObjectURL&&"function"==typeof URL.revokeObjectURL&&"function"==typeof Blob&&"function"==typeof btoa?(n=function(e){var t=document.createElement("link");return void 0===e.attrs.type&&(e.attrs.type="text/css"),e.attrs.rel="stylesheet",v(t,e.attrs),d(e,t),t}(t),r=function(e,t,n){var r=n.css,o=n.sourceMap,i=void 0===t.convertToAbsoluteUrls&&o;(t.convertToAbsoluteUrls||i)&&(r=l(r));o&&(r+="\n/*# sourceMappingURL=data:application/json;base64,"+btoa(unescape(encodeURIComponent(JSON.stringify(o))))+" */");var u=new Blob([r],{type:"text/css"}),a=e.href;e.href=URL.createObjectURL(u),a&&URL.revokeObjectURL(a)}.bind(null,n,t),o=function(){f(n),n.href&&URL.revokeObjectURL(n.href)}):(n=h(t),r=function(e,t){var n=t.css,r=t.media;r&&e.setAttribute("media",r);if(e.styleSheet)e.styleSheet.cssText=n;else{for(;e.firstChild;)e.removeChild(e.firstChild);e.appendChild(document.createTextNode(n))}}.bind(null,n),o=function(){f(n)});return r(e),function(t){if(t){if(t.css===e.css&&t.media===e.media&&t.sourceMap===e.sourceMap)return;r(e=t)}else o()}}e.exports=function(e,t){if("undefined"!=typeof DEBUG&&DEBUG&&"object"!=typeof document)throw new Error("The style-loader cannot be used in a non-browser environment");(t=t||{}).attrs="object"==typeof t.attrs?t.attrs:{},t.singleton||"boolean"==typeof t.singleton||(t.singleton=o()),t.insertInto||(t.insertInto="head"),t.insertAt||(t.insertAt="bottom");var n=p(e,t);return c(n,t),function(e){for(var o=[],i=0;ie===this.dataframe[t])||(this.__dataframe=n,this.__indices=o,this.target.update({viewportDataframe:n,viewportIndices:o}))}}},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e){let t=null,n=[];for(;e.length;){e=e.replace(/^\s+/,"");let o=r.default.filter(e=>t&&e.when&&-1!==e.when.indexOf(t.name));if(o.length||(o=r.default),!(t=o.find(t=>t.regexp.test(e))||null))return{lexemes:n,valid:!1,error:e};const i=(e.match(t.regexp)||[])[0];n.push({lexeme:t,value:i}),e=e.substring(i.length)}return{lexemes:n,valid:!0}};var r=function(e){return e&&e.__esModule?e:{default:e}}(n(17))},function(e,t,n){"use strict";function r(e){return void 0!==e&&null!==e&&"object"==typeof e&&e.constructor===Object}function o(e,t,n=!1){return e===t||i(Object.values(e),Object.values(t),n)}function i(e,t,n=!1){return!!e&&e.length===t.length&&!!e.every((e,u)=>{const a=t[u];return e===a||n&&(Array.isArray(e)&&Array.isArray(a)&&i(e,a,n)||r(e)&&r(a)&&o(e,a,n))})}Object.defineProperty(t,"__esModule",{value:!0}),t.isEqual=o,t.isEqualArgs=i},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r=function(e){return e&&e.__esModule?e:{default:e}}(n(3));class o{constructor(e){this.name=e}get rules(){const e=this.sheet;return Array.from(e.rules||e.cssRules)}addRule(e,t){this.sheet.addRule?this.sheet.addRule(e,t):this.sheet.insertRule(`${e} { ${t} }`,0)}deleteRule(e){this.sheet.deleteRule(e)}findRule(e){const t=this.rules,n=t.findIndex(t=>t.selectorText===e);return-1===n?null:{rule:t[n],index:n}}get sheet(){return(this.__stylesheet=this.__stylesheet||(()=>{const e=document.createElement("style");return e.type="text/css",e.id=this.name,document.getElementsByTagName("head")[0].appendChild(e),e})()).sheet}}class i{constructor(e){this.prefix=e,this.stylesheet=new o(`${e}-dynamic-inline.css`)}static unit(e,t="px"){return i.hasUnit(e)?e:`${e}${t}`}static hasUnit(e){return"string"==typeof e&&/^\d+(\.\d+)?(px|em|rem)$/.test(e)}deleteRule(e){e=`${this.prefix} ${e}`;const t=this.stylesheet.findRule(e);t&&this.stylesheet.deleteRule(t.index)}setRule(e,t){e=`${this.prefix} ${e}`;const n=this.stylesheet.findRule(e);if(n){if(n.rule.cssText===t||n.rule.cssText===`${e} { ${t} }`)return;this.stylesheet.deleteRule(n.index)}this.stylesheet.addRule(e,t),r.default.trace("stylesheet",e,t)}}t.default=i},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.colIsEditable=function(e,t){return e&&(!r.has("editable",t)||t.editable)};var r=function(e){if(e&&e.__esModule)return e;var t={};if(null!=e)for(var n in e)Object.prototype.hasOwnProperty.call(e,n)&&(t[n]=e[n]);return t.default=e,t}(n(2))},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.isPrintableChar=function(e){return 32===e||e>=48&&e<=57||e>=96&&e<=111||e>=186&&e<=192||e>=219&&e<=222||e>=226||e>=65&&e<=90},t.isMetaKey=function(e){return-1!==o.indexOf(e)},t.isNavKey=function(e){return-1!==u.indexOf(e)},t.isArrowKey=function(e){return-1!==i.indexOf(e)},t.isCtrlKey=function(e){const t=[];window.navigator.platform.includes("Mac")?t.push(r.COMMAND_LEFT,r.COMMAND_RIGHT,r.COMMAND_FIREFOX):t.push(r.CONTROL);return t.includes(e)},t.isCtrlMetaKey=function(e){return[r.CONTROL,r.COMMAND_LEFT,r.COMMAND_RIGHT,r.COMMAND_FIREFOX].includes(e)};const r=t.KEY_CODES={MOUSE_LEFT:1,MOUSE_RIGHT:3,MOUSE_MIDDLE:2,BACKSPACE:8,COMMA:188,INSERT:45,DELETE:46,END:35,ENTER:13,ESCAPE:27,CONTROL:17,COMMAND_LEFT:91,COMMAND_RIGHT:93,COMMAND_FIREFOX:224,ALT:18,HOME:36,PAGE_DOWN:34,PAGE_UP:33,PERIOD:190,SPACE:32,SHIFT:16,CAPS_LOCK:20,TAB:9,ARROW_RIGHT:39,ARROW_LEFT:37,ARROW_UP:38,ARROW_DOWN:40,F1:112,F2:113,F3:114,F4:115,F5:116,F6:117,F7:118,F8:119,F9:120,F10:121,F11:122,F12:123,A:65,X:88,C:67,V:86},o=[r.ARROW_DOWN,r.ARROW_UP,r.ARROW_LEFT,r.ARROW_RIGHT,r.HOME,r.END,r.DELETE,r.BACKSPACE,r.F1,r.F2,r.F3,r.F4,r.F5,r.F6,r.F7,r.F8,r.F9,r.F10,r.F11,r.F12,r.TAB,r.PAGE_DOWN,r.PAGE_UP,r.ENTER,r.ESCAPE,r.SHIFT,r.CAPS_LOCK,r.ALT],i=[r.ARROW_DOWN,r.ARROW_UP,r.ARROW_LEFT,r.ARROW_RIGHT],u=[...i,r.TAB,r.ENTER];t.isCtrlDown=(e=>(e.ctrlKey||e.metaKey)&&!e.altKey)},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.deleteRow=function(e,t){const n=t.active_cell,o=t.dataframe,i=t.end_cell,u=t.selected_cell,a=t.selected_rows,s=t.start_cell,l={dataframe:r.remove(e,1,o)};r.is(Array,n)&&n[0]===e&&(l.active_cell=[]);r.is(Array,i)&&i[0]===e&&(l.end_cell=[]);r.is(Array,u)&&u[0]===e&&(l.selected_cell=[]);r.is(Array,s)&&s[0]===e&&(l.start_cell=[0,0]);r.is(Array,a)&&r.contains(e,a)&&(l.selected_rows=r.without([e],a));return l},t.deleteColumn=function(e,t,n){const i=n.columns,u=n.dataframe;var a=o(e,t,n);const s=a.groupIndexFirst,l=a.groupIndexLast,c=r.slice(s,l+1,r.pluck("id",i));return{columns:r.remove(s,1+l-s,i),dataframe:r.map(r.omit(c),u),active_cell:[],end_cell:[],selected_cell:[],start_cell:[0]}},t.editColumnName=function(e,t,n){const i=n.columns;var u=o(e,t,n);const a=u.groupIndexFirst,s=u.groupIndexLast,l=window.prompt("Enter a new column name");let c=r.clone(i);return r.range(a,s+1).map(e=>{let n;n="Array"===r.type(i[e].name)?[e,"name",t]:[e,"name"],c=r.set(r.lensPath(n),l,c)}),{columns:c}};var r=function(e){if(e&&e.__esModule)return e;var t={};if(null!=e)for(var n in e)Object.prototype.hasOwnProperty.call(e,n)&&(t[n]=e[n]);return t.default=e,t}(n(2));function o(e,t,n){const o=n.columns;let i,u;"Null"!==r.type(t)?(i=e.name[t],u=r.pluck(t,r.pluck("name",o))):(i=e.name,u=r.pluck("name",o));const a=r.findIndex(r.propEq("id",e.id),o);let s=a,l=a;for(;u[s-1]===i;)s--;for(;u[l+1]===i;)l++;return{groupIndexFirst:s,groupIndexLast:l}}},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.LexemeType=void 0;var r=function(){return function(e,t){if(Array.isArray(e))return e;if(Symbol.iterator in Object(e))return function(e,t){var n=[],r=!0,o=!1,i=void 0;try{for(var u,a=e[Symbol.iterator]();!(r=(u=a.next()).done)&&(n.push(u.value),!t||n.length!==t);r=!0);}catch(e){o=!0,i=e}finally{try{!r&&a.return&&a.return()}finally{if(o)throw i}}return n}(e,t);throw new TypeError("Invalid attempt to destructure non-iterable instance")}}(),o=function(e){return e&&e.__esModule?e:{default:e}}(n(3));var i=t.LexemeType=void 0;!function(e){e.And="and",e.BlockClose="close-block",e.BlockOpen="open-block",e.BinaryOperator="logical-binary-operator",e.Expression="expression",e.Or="or",e.Operand="operand",e.UnaryNot="unary-not",e.UnaryOperator="logical-unary-operator"}(i||(t.LexemeType=i={}));const u={resolve:(e,t)=>{if(o.default.trace("resolve -> exp",e,t),/^('.*')|(".*")$/.test(t.value))return t.value.slice(1,t.value.length-1);if(!/^\w+\(.*\)$/.test(t.value))return e[t.value];{const e=t.value.match(/^(\w+)\((.*)\)$/);if(!e)throw Error();{var n=r(e,3);const t=n[1],o=n[2];switch(t){case"num":return parseInt(o,10);case"str":default:return o}}}},regexp:/^(((num|str)\([^()]*\))|'([^()']|\\')+'|"([^()"]|\\")+"|\w+)/},a=[{evaluate:(e,t)=>{o.default.trace("evalute -> &&",e,t);const n=t,r=n.left.lexeme.evaluate(e,n.left),i=n.right.lexeme.evaluate(e,n.right);return r&&i},name:i.And,priority:2,regexp:/^(and\s|&&)/i,syntaxer:(e,t,n)=>Object.assign({left:e.slice(0,n),right:e.slice(n+1)},t)},{evaluate:(e,t)=>{o.default.trace("evalute -> ||",e,t);const n=t;return n.left.lexeme.evaluate(e,n.left)||n.right.lexeme.evaluate(e,n.right)},name:i.Or,priority:3,regexp:/^(or\s|\|\|)/i,syntaxer:(e,t,n)=>Object.assign({left:e.slice(0,n),right:e.slice(n+1)},t)},{name:i.BlockClose,nesting:-1,regexp:/^\)/},{evaluate:(e,t)=>{o.default.trace("evaluate -> ()",e,t);const n=t;return n.block.lexeme.evaluate(e,n.block)},name:i.BlockOpen,nesting:1,priority:1,regexp:/^\(/,syntaxer:e=>Object.assign({block:e.slice(1,e.length-1)},e[0]),when:[i.UnaryNot]},Object.assign({name:i.Operand},u),{evaluate:(e,t)=>{o.default.trace("evaluate -> binary",e,t);const n=t,r=n.left.lexeme.resolve(e,n.left),i=n.right.lexeme.resolve(e,n.right);switch(o.default.trace(`opValue: ${r}, expValue: ${i}`),t.value.toLowerCase()){case"eq":case"=":return r===i;case"gt":case">":return r>i;case"ge":case">=":return r>=i;case"lt":case"<":return r=|<=|>|<|!=|=|ge|le|gt|lt|eq|ne)/i,syntaxer:e=>{var t=r(e,3);let n=t[0],o=t[1],i=t[2];return Object.assign({left:n,right:i},o)},when:[i.Operand]},{evaluate:(e,t)=>{o.default.trace("evaluate -> unary",e,t);const n=t,r=n.block.lexeme.resolve(e,n.block);switch(t.value.toLowerCase()){case"is even":return"number"==typeof r&&r%2==0;case"is nil":return void 0===r||null===r;case"is bool":return"boolean"==typeof r;case"is odd":return"number"==typeof r&&r%2==1;case"is num":return"number"==typeof r;case"is object":return null!==r&&"object"==typeof r;case"is str":return"string"==typeof r;case"is prime":return"number"==typeof r&&(e=>{if(2===e)return!0;if(e<2||e%2==0)return!1;for(let t=3;t*t<=e;t+=2)if(e%t==0)return!1;return!0})(r);default:throw new Error}},name:i.UnaryOperator,priority:0,regexp:/^((is nil)|(is odd)|(is even)|(is bool)|(is num)|(is object)|(is str)|(is prime))/i,syntaxer:e=>{var t=r(e,2);let n=t[0],o=t[1];return Object.assign({block:n},o)},when:[i.Operand]},{evaluate:(e,t)=>{o.default.trace("evaluate -> unary not",e,t);const n=t;return!n.block.lexeme.evaluate(e,n.block)},name:i.UnaryNot,priority:1.5,regexp:/^!/,syntaxer:e=>Object.assign({block:e.slice(1,e.length)},e[0]),when:[i.UnaryNot]},Object.assign({name:i.Expression,when:[i.BinaryOperator]},u)];t.default=a},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r=u(n(3)),o=u(n(11)),i=u(n(19));function u(e){return e&&e.__esModule?e:{default:e}}t.default=class{constructor(e){this.query=e,this.evaluate=(e=>{if(!this.isValid||!this.tree){const e=`unable to evaluate target: syntax tree is invalid for query=${this.query}`;throw r.default.error(e),new Error(e)}const t=this.tree.lexeme.evaluate;return!!t&&t(e,this.tree)}),this.filter=(e=>e.filter(this.evaluate)),this.result=(0,i.default)((0,o.default)(this.query))}get isValid(){return this.result.valid}get tree(){return this.result.tree}}},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r=function(e){return e&&e.__esModule?e:{default:e}}(n(3));const o=e=>{let t=0;const n=e.map(e=>{const n=Object.assign({},e,{nesting:t});return t+=e.lexeme.nesting||0,n}),i=n.filter(e=>0===e.nesting&&"number"==typeof e.lexeme.priority).sort((e,t)=>(t.lexeme.priority||-1)-(e.lexeme.priority||-1))[0];r.default.trace("parser -> pivot",i,e);const u=n.indexOf(i);if(i.lexeme.syntaxer){let t=i.lexeme.syntaxer(e,i,u);return Array.isArray(t.left)&&(t.left=o(t.left)),Array.isArray(t.right)&&(t.right=o(t.right)),Array.isArray(t.block)&&(t.block=o(t.block)),t}throw new Error(i.lexeme.name)};t.default=(e=>{const t=e.lexemes;if(!e.valid)return{valid:!1,error:`lexer -- ${e.error}`};try{return{tree:o(t),valid:!0}}catch(e){return{valid:!1,error:e}}})},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=((e,t=null)=>{if(t=t||(()=>{for(t=e;t&&"td"!==t.nodeName.toLowerCase();)t=t.parentElement;return t})(),!e||!t)return;let n=e;for(;"relative"!==getComputedStyle(n).position&&"sticky"!==getComputedStyle(n).position&&n.parentElement;)n=n.parentElement;let r=e;for(;"relative"!==getComputedStyle(r).position&&r.parentElement;)r=r.parentElement;const o=n.getBoundingClientRect(),i=r.getBoundingClientRect(),u=t.getBoundingClientRect(),a=u.left-o.left+n.scrollLeft,s=u.top-o.top+n.scrollTop+u.height;e.style.width=`${u.width}px`,e.style.top=`${s}px`,e.style.left=`${a}px`,e.style.position="absolute",u.top+u.height/2>i.bottom||u.top-u.height/2i.left+i.width?e.style.display="none":e.style.display="block"})},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r=n(1),o=function(e){return e&&e.__esModule?e:{default:e}}(r);class i extends r.PureComponent{constructor(e){super(e),this.handleChange=(e=>this.setState({value:e.target.value})),this.submit=(()=>this.state.value!==this.props.value&&this.props.submit(this.state.value)),this.state={value:e.value}}get propsWithDefaults(){return this.props}render(){var e=this.propsWithDefaults;const t=e.stopPropagation,n=e.updateOnBlur,r=e.updateOnSubmit;let i={onBlur:n?this.submit:void 0,onKeyDown:t?e=>e.stopPropagation():void 0,onSubmit:r?this.submit:void 0};return o.default.createElement("input",Object.assign({ref:"input",type:"text",value:this.state.value||"",onChange:this.handleChange},i))}}t.default=i,i.defaultProps={stopPropagation:!1,updateOnBlur:!0,updateOnSubmit:!0}},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r=Object.assign||function(e){for(var t=1;t=0||Object.prototype.hasOwnProperty.call(e,r)&&(n[r]=e[r]);return n}(this.props,[]);return function(e){c.forEach(function(t){return delete e[t]})}(o),o.className=this.props.inputClassName,o.id=this.state.inputId,o.style=n,u.default.createElement("div",{className:this.props.className,style:t},this.renderStyles(),u.default.createElement("input",r({},o,{ref:this.inputRef})),u.default.createElement("div",{ref:this.sizerRef,style:l},e),this.props.placeholder?u.default.createElement("div",{ref:this.placeHolderSizerRef,style:l},this.props.placeholder):null)}}]),t}();h.propTypes={className:a.default.string,defaultValue:a.default.any,extraWidth:a.default.oneOfType([a.default.number,a.default.string]),id:a.default.string,injectStyles:a.default.bool,inputClassName:a.default.string,inputRef:a.default.func,inputStyle:a.default.object,minWidth:a.default.oneOfType([a.default.number,a.default.string]),onAutosize:a.default.func,onChange:a.default.func,placeholder:a.default.string,placeholderIsMinWidth:a.default.bool,style:a.default.object,value:a.default.any},h.defaultProps={minWidth:1,injectStyles:!0},t.default=h},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.Table=void 0;var r=u(n(24)),o=u(n(3)),i=u(n(26));function u(e){return e&&e.__esModule?e:{default:e}}o.default.setDebugLevel(r.default.debugLevel),o.default.setLogLevel(r.default.logLevel),t.Table=i.default},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r=n(3),o=function(e){return e&&e.__esModule?e:{default:e}}(n(25));const i="dash_debug",u="dash_log";t.default=class{static get searchParams(){return new URL(window.location.href).searchParams||{get:()=>null}}static get debugLevel(){const e=this.searchParams.get(i)||o.default.get(i);return e&&r.DebugLevel[e]||r.DebugLevel.NONE}static get logLevel(){const e=this.searchParams.get(u)||o.default.get(u);return e&&r.LogLevel[e]||r.LogLevel.ERROR}}},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const r=864e5,o=63072e7;class i{static delete(e,t="",n="/"){let o=new Date((new Date).getTime()-r).toUTCString();document.cookie=`${e}=;expires=${o};domain=${t};path=${n}`}static get(e){if(!e.length)return;return e=e.toLowerCase(),(document.cookie.split(";").map(e=>{let t=e.split("=");return{id:t[0].trim(),value:t[1]}}).find(t=>e===t.id.toLocaleLowerCase())||{}).value}static set(e,t,n="",r="/"){let u=`${e}=${t};expires=${new Date((new Date).getTime()+o).toUTCString()};domain=${n};path=${r}`;i.get(e)&&i.delete(e,n,r),document.cookie=u}}t.default=i},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.propTypes=t.defaultProps=void 0;var r=n(1),o=a(r),i=a(n(0)),u=a(n(29));function a(e){return e&&e.__esModule?e:{default:e}}n(58);class s extends r.Component{render(){return o.default.createElement(u.default,this.props)}}t.default=s;const l=t.defaultProps={virtualization:"fe",virtualization_settings:{displayed_pages:1,current_page:0,page_size:250},navigation:"page",filtering:!1,filtering_settings:"",filtering_type:"basic",filtering_types:["basic"],sorting:!1,sorting_type:"single",sorting_settings:[],virtual_dataframe:[],virtual_dataframe_indices:[],column_conditional_dropdowns:[],column_static_dropdown:[],column_conditional_styles:[],column_static_style:[],row_conditional_styles:[],row_static_style:{},changed_data:{},dataframe:[],columns:[],editable:!1,active_cell:[],index_name:"",types:{},merged_styles:{},selected_cell:[[]],selected_rows:[],row_selectable:!1,table_style:[],base_styles:{numeric:{"text-align":"right","font-family":"'Droid Sans Mono', Courier, monospace"},string:{"text-align":"left"},input:{padding:0,margin:0,width:"80px",border:"none","font-size":"1rem"},"input-active":{outline:"#7FDBFF auto 3px"},table:{},thead:{},th:{},td:{}}},c=t.propTypes={active_cell:i.default.array,columns:i.default.arrayOf(i.default.object),dataframe:i.default.arrayOf(i.default.object),dataframe_previous:i.default.arrayOf(i.default.object),dataframe_timestamp:i.default.any,editable:i.default.bool,end_cell:i.default.arrayOf(i.default.number),id:i.default.string.isRequired,is_focused:i.default.bool,merge_duplicate_headers:i.default.bool,n_fixed_columns:i.default.number,n_fixed_rows:i.default.number,row_deletable:i.default.bool,row_selectable:i.default.oneOf(["single","multi",!1]),selected_cell:i.default.arrayOf(i.default.arrayOf(i.default.number)),selected_rows:i.default.arrayOf(i.default.number),setProps:i.default.any,start_cell:i.default.arrayOf(i.default.number),style_as_list_view:i.default.bool,table_style:i.default.arrayOf(i.default.shape({selector:i.default.string,rule:i.default.string})),virtualization:i.default.oneOf(["fe","be",!0,!1]),virtualization_settings:i.default.shape({displayed_pages:i.default.number,current_page:i.default.number,page_size:i.default.number}),navigation:i.default.string,column_conditional_dropdowns:i.default.arrayOf(i.default.shape({id:i.default.string,dropdowns:i.default.arrayOf(i.default.shape({condition:i.default.string,dropdown:i.default.arrayOf(i.default.shape({label:i.default.string,value:i.default.any}))}))})),column_static_dropdown:i.default.arrayOf(i.default.shape({id:i.default.string,dropdown:i.default.arrayOf(i.default.shape({label:i.default.string,value:i.default.any}))})),column_conditional_style:i.default.arrayOf(i.default.shape({id:i.default.string,styles:i.default.arrayOf(i.default.shape({condition:i.default.string,style:i.default.object}))})),column_static_style:i.default.arrayOf(i.default.shape({id:i.default.string,style:i.default.object})),row_conditional_styles:i.default.arrayOf(i.default.shape({condition:i.default.string,style:i.default.object})),row_static_style:i.default.object,filtering:i.default.oneOf(["fe","be",!0,!1]),filtering_settings:i.default.string,filtering_type:i.default.oneOf(["basic"]),filtering_types:i.default.arrayOf(i.default.oneOf(["basic"])),sorting:i.default.oneOf(["fe","be",!0,!1]),sorting_type:i.default.oneOf(["single","multi"]),sorting_settings:i.default.arrayOf(i.default.shape({columnId:i.default.oneOfType([i.default.string,i.default.number]),direction:i.default.oneOf(["asc","desc"])})),sorting_treat_empty_string_as_none:i.default.bool,virtual_dataframe:i.default.arrayOf(i.default.object),virtual_dataframe_indices:i.default.arrayOf(i.default.number),dropdown_properties:i.default.any};s.defaultProps=l,s.propTypes=c},function(e,t,n){"use strict";var r=n(28);function o(){}e.exports=function(){function e(e,t,n,o,i,u){if(u!==r){var a=new Error("Calling PropTypes validators directly is not supported by the `prop-types` package. Use PropTypes.checkPropTypes() to call them. Read more at http://fb.me/use-check-prop-types");throw a.name="Invariant Violation",a}}function t(){return e}e.isRequired=e;var n={array:e,bool:e,func:e,number:e,object:e,string:e,symbol:e,any:e,arrayOf:t,element:e,instanceOf:t,node:e,objectOf:t,oneOf:t,oneOfType:t,shape:t,exact:t};return n.checkPropTypes=o,n.PropTypes=n,n}},function(e,t,n){"use strict";e.exports="SECRET_DO_NOT_PASS_THIS_OR_YOU_WILL_BE_FIRED"},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r=n(1),o=c(r),i=function(e){if(e&&e.__esModule)return e;var t={};if(null!=e)for(var n in e)Object.prototype.hasOwnProperty.call(e,n)&&(t[n]=e[n]);return t.default=e,t}(n(2)),u=n(5),a=c(n(30)),s=c(n(34)),l=c(n(50));function c(e){return e&&e.__esModule?e:{default:e}}n(51),n(54),n(56);t.default=class extends r.Component{constructor(e){super(e),this.__adapter=(0,u.memoizeOne)(()=>new l.default(this)),this.__setProps=(0,u.memoizeOne)(e=>e?t=>{if(i.has("dataframe",t)){const e=this.props.dataframe;t.dataframe_timestamp=Date.now(),t.dataframe_previous=e}e(t)}:e=>this.setState(e)),this.__virtualizer=(0,u.memoizeOne)((e,t)=>a.default.getVirtualizer(this.adapter))}get setProps(){return this.__setProps(this.props.setProps)}render(){const e=this.setProps,t=this.virtualizer;return t.refresh(),o.default.createElement(s.default,Object.assign({},i.mergeAll([this.props,this.state,{setProps:e,virtualizer:t}])))}get adapter(){return this.__adapter()}get virtualizer(){var e=this.props;const t=e.virtualization,n=e.virtualization_settings;return this.__virtualizer(t,n)}}},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r=u(n(31)),o=u(n(32)),i=u(n(33));function u(e){return e&&e.__esModule?e:{default:e}}t.default=class{static getVirtualizer(e){switch(e.virtualization){case!1:return new i.default(e);case!0:case"fe":return new o.default(e);case"be":return new r.default(e);default:throw new Error(`Unknown virtualization type: '${e.virtualization}'`)}}}},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r=function(e){return e&&e.__esModule?e:{default:e}}(n(10));t.default=class extends r.default{constructor(e){super(e)}getDataframe(){var e=this.target;return{dataframe:e.dataframe,indices:e.indices}}get offset(){return 0}loadNext(){let e=this.target.settings;e.current_page++,this.target.update({settings:e})}loadPrevious(){let e=this.target.settings;e.current_page<=0||(e.current_page--,this.target.update({settings:e}))}}},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r=function(e){return e&&e.__esModule?e:{default:e}}(n(10));t.default=class extends r.default{constructor(e){super(e)}getDataframe(){var e=this.target;let t=e.settings,n=e.dataframe,r=e.indices,o=Math.min(t.current_page,Math.floor(n.length/t.page_size));return this.firstIndex=t.page_size*o,this.lastIndex=Math.min(this.firstIndex+t.displayed_pages*t.page_size,n.length),{dataframe:n.slice(this.firstIndex,this.lastIndex),indices:r.slice(this.firstIndex,this.lastIndex)}}get offset(){return this.firstIndex}loadNext(){var e=this.target;let t=e.settings,n=e.dataframe,r=Math.floor(n.length/t.page_size);t.current_page>=r||(t.current_page++,this.target.update({settings:t}))}loadPrevious(){let e=this.target.settings;e.current_page<=0||(e.current_page--,this.target.update({settings:e}))}}},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r=function(e){if(e&&e.__esModule)return e;var t={};if(null!=e)for(var n in e)Object.prototype.hasOwnProperty.call(e,n)&&(t[n]=e[n]);return t.default=e,t}(n(2)),o=function(e){return e&&e.__esModule?e:{default:e}}(n(10));t.default=class extends o.default{constructor(e){super(e),this.refresh()}getDataframe(){let e=this.target.dataframe;return{dataframe:e,indices:r.range(0,e.length)}}get offset(){return 0}loadNext(){}loadPrevious(){}}},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r=n(1),o=m(r),i=function(e){if(e&&e.__esModule)return e;var t={};if(null!=e)for(var n in e)Object.prototype.hasOwnProperty.call(e,n)&&(t[n]=e[n]);return t.default=e,t}(n(2)),u=m(n(13)),a=n(14),s=n(15),l=n(35),c=n(36),p=m(c),d=m(n(3)),f=n(5),h=m(n(11)),v=m(n(39)),g=m(n(42)),y=m(n(20)),b=m(n(46));function m(e){return e&&e.__esModule?e:{default:e}}const x=i.sort((e,t)=>e-t);t.default=class extends r.Component{constructor(e){super(e),this.getLexerResult=(0,f.memoizeOne)(h.default),this.handleClickOutside=(e=>{const t=this.$el;t&&!t.contains(e.target)&&this.props.is_focused&&this.props.setProps({is_focused:!1})}),this.handlePaste=(e=>{const t=this.$el;t&&t.contains(document.activeElement)&&this.onPaste(e)}),this.handleResize=(()=>{var e=this.refs;const t=e.r0c0,n=e.r0c1,r=e.r1c0,o=e.r1c1;let i=n.querySelectorAll("tr");t.querySelectorAll("tr").forEach((e,t)=>{const n=i[t];e.style.height=getComputedStyle(n).height});let u=o.querySelectorAll("tr > th:first-of-type");r.querySelectorAll("tr > th:first-of-type").forEach((e,t)=>{const n=u[t].parentElement;e.parentElement.style.height=getComputedStyle(n).height});const a=o.querySelector("tr > td:first-of-type");if(a){const e=a.parentElement;this.stylesheet.setRule(".cell-1-0 tr",`height: ${getComputedStyle(e).height}`)}}),this.handleKeyDown=(e=>{var t=this.props;const n=t.active_cell,r=t.columns,o=t.setProps,i=t.is_focused,u=t.editable;if(d.default.trace(`handleKeyDown: ${e.key}`),(0,s.isCtrlMetaKey)(e.keyCode))return;const l=(0,s.isCtrlDown)(e);l&&e.keyCode===s.KEY_CODES.V||e.keyCode===s.KEY_CODES.C&&l&&!i||(e.keyCode!==s.KEY_CODES.ESCAPE?e.keyCode!==s.KEY_CODES.ENTER||i||!(0,a.colIsEditable)(u,r[n[1]])?i&&e.keyCode!==s.KEY_CODES.TAB&&e.keyCode!==s.KEY_CODES.ENTER||((0,s.isNavKey)(e.keyCode)?this.switchCell(e):e.keyCode===s.KEY_CODES.BACKSPACE||e.keyCode===s.KEY_CODES.DELETE?this.deleteCell(e):this.props.is_focused||!(0,a.colIsEditable)(u,r[n[1]])||(0,s.isMetaKey)(e.keyCode)||o({is_focused:!0})):o({is_focused:!0}):o({is_focused:!1}))}),this.switchCell=(e=>{const t=e;var n=this.props;const r=n.active_cell,o=n.columns,u=n.row_deletable,a=n.row_selectable,l=n.selected_cell,c=n.setProps,p=n.virtualizer.dataframe;e.preventDefault(),this.$el.focus();const d=l.length>1,f=t.keyCode===s.KEY_CODES.ENTER||t.keyCode===s.KEY_CODES.TAB;if(d&&f)return void c({is_focused:!1,active_cell:this.getNextCell(t,{currentCell:r,restrictToSelection:!0})});if(!t.shiftKey){const e=this.getNextCell(t,{currentCell:r,restrictToSelection:!1});return void c({is_focused:!1,selected_cell:[e],active_cell:e})}let h=[],v=[];const g=x(i.uniq(i.pluck(0,l))),y=x(i.uniq(i.pluck(1,l))),b=g[0],m=y[0],w=g[g.length-1],E=y[y.length-1],_=(u?1:0)+(a?1:0),O=[];o.forEach((e,t)=>{e.hidden||O.push(t+_)});const S=t.keyCode===s.KEY_CODES.ARROW_DOWN||t.keyCode===s.KEY_CODES.ENTER,C=t.keyCode===s.KEY_CODES.ARROW_UP,A=t.keyCode===s.KEY_CODES.ARROW_RIGHT||t.keyCode===s.KEY_CODES.TAB,k=t.keyCode===s.KEY_CODES.ARROW_LEFT;S&&r[0]>b?v=y.map(e=>[b,e]):S&&w!==p.length-1?h=y.map(e=>[w+1,e]):C&&r[0][w,e]):C&&b>0?h=y.map(e=>[b-1,e]):k&&r[1][e,E]):k&&m>0?h=g.map(e=>[e,m-1]):A&&r[1]>m?v=g.map(e=>[e,m]):A&&E+1<=i.last(O)&&(h=g.map(e=>[e,E+1])),c({is_focused:!1,selected_cell:i.without(v,i.uniq(i.concat(h,l)))})}),this.deleteCell=(e=>{var t=this.props;const n=t.columns,r=t.dataframe,o=t.editable,u=t.row_deletable,s=t.row_selectable,l=t.selected_cell,c=t.setProps,p=t.virtual_dataframe_indices;e.preventDefault();let d=r;const f=(u?1:0)+(s?1:0);i.map(e=>[p[e[0]],e[1]-f],l).forEach(e=>{(0,a.colIsEditable)(o,n[e[1]])&&(d=i.set(i.lensPath([e[0],n[e[1]].id]),"",d))}),c({dataframe:d})}),this.getNextCell=((e,{restrictToSelection:t,currentCell:n})=>{var r=this.props;const o=r.columns,u=r.row_deletable,a=r.row_selectable,c=r.selected_cell,p=r.virtualizer.dataframe,d=e,f=[],h=(u?1:0)+(a?1:0);switch(t||o.forEach((e,t)=>{e.hidden||f.push(t+h)}),d.keyCode){case s.KEY_CODES.ARROW_LEFT:return t?(0,l.selectionCycle)([n[0],n[1]-1],c):[n[0],i.max(f[0],f[i.indexOf(n[1],f)-1])];case s.KEY_CODES.ARROW_RIGHT:case s.KEY_CODES.TAB:return t?(0,l.selectionCycle)([n[0],n[1]+1],c):[n[0],i.min(i.last(f),f[i.indexOf(n[1],f)+1])];case s.KEY_CODES.ARROW_UP:return t?(0,l.selectionCycle)([n[0]-1,n[1]],c):[i.max(0,n[0]-1),n[1]];case s.KEY_CODES.ARROW_DOWN:case s.KEY_CODES.ENTER:return t?(0,l.selectionCycle)([n[0]+1,n[1]],c):[i.min(p.length-1,n[0]+1),n[1]];default:throw new Error(`Table.getNextCell: unknown navigation keycode ${d.keyCode}`)}}),this.onCopy=(e=>{var t=this.props;const n=t.columns,r=t.row_deletable,o=t.row_selectable,u=t.selected_cell,a=t.virtualizer.dataframe,s=(r?1:0)+(o?1:0),l=i.map(e=>[e[0],e[1]-s],u);v.default.toClipboard(e,l,n,a),this.$el.focus()}),this.onPaste=(e=>{var t=this.props;const n=t.active_cell,r=t.columns,o=t.dataframe,i=t.editable,u=t.filtering_settings,a=t.row_deletable,s=t.row_selectable,l=t.setProps,c=t.sorting_settings,p=t.virtual_dataframe_indices;if(!i)return;const d=(a?1:0)+(s?1:0),f=[n[0],n[1]-d],h=v.default.fromClipboard(e,f,p,r,o,!0,!c.length||!u.length);h&&l(h)}),this.loadNext=(()=>{this.props.virtualizer.loadNext()}),this.loadPrevious=(()=>{this.props.virtualizer.loadPrevious()}),this.onContainerScroll=(e=>{if(!this.props.n_fixed_columns)return;const t=this.refs.spreadsheet;e.target===t&&this.stylesheet.setRule(".frozen-left",`margin-top: ${-e.target.scrollTop}px;`)}),this.applyStyle=((e,t,n)=>{let r=0;t&&(this.stylesheet.setRule(`.dash-spreadsheet-inner td.column-${r}`,"width: 30px; max-width: 30px; min-width: 30px;"),this.stylesheet.setRule(`.dash-spreadsheet-inner th.column-${r}`,"width: 30px; max-width: 30px; min-width: 30px;"),++r),n&&(this.stylesheet.setRule(`.dash-spreadsheet-inner td.column-${r}`,"width: 30px; max-width: 30px; min-width: 30px;"),this.stylesheet.setRule(`.dash-spreadsheet-inner th.column-${r}`,"width: 30px; max-width: 30px; min-width: 30px;"),++r),i.forEach(e=>{const t=u.default.unit(e.width||c.DEFAULT_CELL_WIDTH,"px");this.stylesheet.setRule(`.dash-spreadsheet-inner td.column-${r}`,`width: ${t}; max-width: ${t}; min-width: ${t};`),this.stylesheet.setRule(`.dash-spreadsheet-inner th.column-${r}`,`width: ${t}; max-width: ${t}; min-width: ${t};`),++r},e)}),this.renderFragment=(e=>e?o.default.createElement("table",{tabIndex:-1},o.default.createElement("tbody",null,e.map((e,t)=>o.default.createElement("tr",{key:`row-${t}`},e)))):null),this.handleSetFilter=(e=>this.props.setProps({filtering_settings:e})),this.getCells=(()=>[...p.default.createHeaders(this.props),...this.filterFactory.createFilters(),...this.cellFactory.createCells()]),this.getFragments=((e,t,n)=>{const r=t?i.map(e=>e.splice(0,i.reduceWhile(e=>e.count(e.cells++,e.count+=t.props.colSpan||1,e),{cells:0,count:0},e).cells),e):null,o=n?e.splice(0,n):null,u=n&&r?r.splice(0,n):null;return[[this.renderFragment(u),this.renderFragment(o)],[this.renderFragment(r),this.renderFragment(e)]]}),this.handleDropdown=(()=>{const e=this.refs.r1c1;(0,y.default)(e.querySelector(".Select-menu-outer"))}),this.onScroll=(e=>{const t=this.refs.r0c1;d.default.trace(`ControlledTable fragment scrolled to (left,top)=(${e.target.scrollLeft},${e.target.scrollTop})`),t.style.marginLeft=`${-e.target.scrollLeft}px`,this.handleDropdown()}),this.cellFactory=new g.default(()=>this.props),this.filterFactory=new b.default(()=>{var e=this.props;const t=e.row_deletable,n=e.row_selectable,r=(t?1:0)+(n?1:0);return{columns:this.props.columns,filtering:this.props.filtering,filtering_settings:this.props.filtering_settings,filtering_type:this.props.filtering_type,id:this.props.id,offset:r,setFilter:this.handleSetFilter}}),this.stylesheet=new u.default(`#${e.id}`)}get lexerResult(){const e=this.props.filtering_settings;return this.getLexerResult(e)}componentDidMount(){this.props.selected_cell.length&&!i.contains(this.props.active_cell,this.props.selected_cell)&&this.props.setProps({active_cell:this.props.selected_cell[0]}),window.addEventListener("resize",this.handleResize),document.addEventListener("paste",this.handlePaste),document.addEventListener("mousedown",this.handleClickOutside)}componentWillUnmount(){window.removeEventListener("resize",this.handleResize),document.removeEventListener("mousedown",this.handleClickOutside),document.removeEventListener("paste",this.handlePaste)}componentWillUpdate(){const e=this.props.table_style;i.forEach(({selector:e,rule:t})=>{this.stylesheet.setRule(e,t)},e)}componentDidUpdate(){this.handleResize(),this.handleDropdown()}get $el(){return document.getElementById(this.props.id)}get displayPagination(){var e=this.props;const t=e.dataframe,n=e.navigation,r=e.virtualization,o=e.virtualization_settings;return"page"===n&&("fe"===r&&o.page_sizeo.default.createElement("div",{key:`r${t}`,ref:`r${t}`,className:`row row-${t}`,onScroll:this.onScroll},e.map((e,n)=>o.default.createElement("div",{key:n,ref:`r${t}c${n}`,className:`cell cell-${t}-${n}`},e)))))),this.displayPagination?o.default.createElement("div",null,o.default.createElement("button",{className:"previous-page",onClick:this.loadPrevious},"Previous"),o.default.createElement("button",{className:"next-page",onClick:this.loadNext},"Next")):null)}}},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r=function(){return function(e,t){if(Array.isArray(e))return e;if(Symbol.iterator in Object(e))return function(e,t){var n=[],r=!0,o=!1,i=void 0;try{for(var u,a=e[Symbol.iterator]();!(r=(u=a.next()).done)&&(n.push(u.value),!t||n.length!==t);r=!0);}catch(e){o=!0,i=e}finally{try{!r&&a.return&&a.return()}finally{if(o)throw i}}return n}(e,t);throw new TypeError("Invalid attempt to destructure non-iterable instance")}}();t.selectionCycle=function(e,t){const n=o.uniq(o.pluck(0,t)).sort((e,t)=>e-t),i=o.uniq(o.pluck(1,t)).sort((e,t)=>e-t),u=n[0],a=i[0],s=n[n.length-1],l=i[i.length-1];var c=r(e,2);const p=c[0],d=c[1],f=[p,d];p>s&&(f[0]=u,f[1]=d+1>l?a:d+1);pl&&(f[1]=a,f[0]=p+1>s?u:p+1);dArray.isArray(e.name)?e.name.length:1,h=(e,t)=>Array.isArray(e.name)?e.name[t]:"";class v{static getSorting(e,t){const n=o.find(t=>t.columnId===e,t);return n?n.direction:u.SortDirection.None}static doSort(e,t){return()=>{const n=t.sorting_settings,r=t.sorting_type;let o;switch(v.getSorting(e,n)){case u.SortDirection.Descending:o=u.SortDirection.Ascending;break;case u.SortDirection.Ascending:o=u.SortDirection.None;break;case u.SortDirection.None:default:o=u.SortDirection.Descending}const i="single"===r?s.default:a.default;t.setProps({sorting_settings:i(n,{columnId:e,direction:o})})}}static getSortingIcon(e,t){const n=t.sorting_settings;switch(v.getSorting(e,n)){case u.SortDirection.Descending:return"↑";case u.SortDirection.Ascending:return"↓";case u.SortDirection.None:default:return"↕"}}static createHeaderCells(e){const t=e.columns,n=e.columnRowIndex,u=e.labels,a=e.mergeCells,s=e.n_fixed_columns,c=e.offset,p=e.rowSorting,f=e.virtualization;let h=[];if(a){h=[0];let e=0;u.forEach((n,r)=>{t[r].hidden||n===u[e]||(h.push(r),e=r)})}else h=o.range(0,t.length);const g=t.filter(e=>!e.hidden);return o.filter(e=>!!e,h.map((y,b)=>{const m=t[y];if(m.hidden)return null;const x=g.indexOf(m)+c;let w;if(a){const e=o.slice(y,h[b+1]||1/0,t).filter(o.propEq("hidden",!0)).length;w=y===o.last(h)?u.length-y-e:h[b+1]-y-e}else w=1;const E=g.indexOf(m),_=`calc(${g.filter((e,t)=>!e.hidden&&t>=E&&ti.default.unit(e.width||d,"px")).join(" + ")})`;return r.default.createElement("th",{key:`header-cell-${y}`,colSpan:w,className:`column-${y+c} `+(y===t.length-1||y===o.last(h)?"cell--right-last ":""),style:x{(0,n.setProps)(l.editColumnName(e,t,n))}}(m,n,e)},"✎"):"",m.deletable&&"be"!==f&&"Boolean"===o.type(m.deletable)||"Number"===o.type(m.deletable)&&m.deletable===n?r.default.createElement("span",{className:"column-header--delete",onClick:function(e,t,n){return()=>{(0,n.setProps)(l.deleteColumn(e,t,n))}}(m,n,e)},"×"):"",r.default.createElement("span",null,u[y]))}))}static createDeletableHeader(e){return e.row_deletable?r.default.createElement("th",{key:"delete",className:"expanded-row--empty-cell",style:{width:"30px",maxWidth:"30px",minWidth:"30px"}}):null}static createSelectableHeader(e){return e.row_selectable?r.default.createElement("th",{key:"select",className:"expanded-row--empty-cell",style:{width:"30px",maxWidth:"30px",minWidth:"30px"}}):null}static createHeaders(e){let t=e.columns,n=e.dataframe,r=e.sorting,i=e.merge_duplicate_headers,u=e.n_fixed_columns,a=e.row_deletable,s=e.row_selectable,l=e.setProps,c=e.sorting_settings,p=e.sorting_type,d=e.virtualization;const g=(a?1:0)+(s?1:0),y=this.createDeletableHeader(e),b=this.createSelectableHeader(e),m=Math.max.apply(Math,t.map(f));let x;return x=1===m?[[...y?[y]:[],...b?[b]:[],...v.createHeaderCells({columns:t,columnRowIndex:0,dataframe:n,labels:o.pluck("name",t),n_fixed_columns:u,offset:g,rowSorting:r,setProps:l,sorting_settings:c,sorting_type:p,virtualization:d})]]:o.range(0,m).map(e=>[...y?[y]:[],...b?[b]:[],...v.createHeaderCells({columns:t,columnRowIndex:e,dataframe:n,labels:t.map(t=>o.isNil(t.name)&&e===m-1?t.id:h(t,e)),n_fixed_columns:u,offset:g,rowSorting:!!r&&e+1===m,mergeCells:i&&e+1!==m,setProps:l,sorting_settings:c,sorting_type:p,virtualization:d})])}}t.default=v},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r=function(e){if(e&&e.__esModule)return e;var t={};if(null!=e)for(var n in e)Object.prototype.hasOwnProperty.call(e,n)&&(t[n]=e[n]);return t.default=e,t}(n(2)),o=function(e){return e&&e.__esModule?e:{default:e}}(n(3)),i=n(7);t.default=((e,t)=>{if(o.default.trace("multi - updateSettings",e,t),e=r.clone(e),t.direction===i.SortDirection.None){const n=r.findIndex(e=>e.columnId===t.columnId,e);-1!==n&&e.splice(n,1)}else{const n=r.find(e=>e.columnId===t.columnId,e);n?n.direction=t.direction:e.push(t)}return e})},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r=function(e){return e&&e.__esModule?e:{default:e}}(n(3)),o=n(7);t.default=((e,t)=>(r.default.trace("single - updateSettings",e,t),t.direction===o.SortDirection.None?[]:[t]))},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r=function(e){if(e&&e.__esModule)return e;var t={};if(null!=e)for(var n in e)Object.prototype.hasOwnProperty.call(e,n)&&(t[n]=e[n]);return t.default=e,t}(n(2)),o=s(n(40)),i=s(n(41)),u=s(n(3)),a=n(14);function s(e){return e&&e.__esModule?e:{default:e}}t.default=class{static toClipboard(e,t,n,a){const s=r.uniq(r.pluck(0,t).sort((e,t)=>e-t)),l=r.uniq(r.pluck(1,t).sort((e,t)=>e-t)),c=r.slice(r.head(s),r.last(s)+1,a).map(e=>r.props(l,r.props(r.pluck("id",n),e))),p=o.default.prototype.stringify(c);u.default.trace("TableClipboard -- set clipboard data: ",p),i.default.set(e,p)}static fromClipboard(e,t,n,s,l,c=!0,p=!0){const d=i.default.get(e);if(u.default.trace("TableClipboard -- get clipboard data: ",d),!d)return;const f=o.default.prototype.parse(d);let h=l;const v=s;if(c&&f[0].length+t[1]>=s.length)for(let e=s.length;et[`Column ${e}`]="");p&&u.default.debug("Clipboard -- Sorting or filtering active, do not create new rows");const g=n[t[0]];if(p&&f.length+g>=l.length){const e={};s.forEach(t=>e[t.id]=""),h=r.concat(h,r.repeat(e,f.length+g-l.length))}return f.forEach((e,o)=>e.forEach((e,i)=>{const u=t[0]+o;if(n.length<=t[0]+o)return;const s=n[u],l=t[1]+i,c=v[l];c&&(0,a.colIsEditable)(!0,c)&&(h=r.set(r.lensPath([s,c.id]),e,h))})),{dataframe:h,columns:v}}}},function(e,t){!function(t){"use strict";function n(){}function r(e){return e.split('"').length-1}n.prototype=Object.create(Object.prototype,{parse:{value:function(e){var t,n,o,i,u,a,s,l=[],c=0;for((o=e.split("\n")).length>1&&""===o[o.length-1]&&o.pop(),t=0,n=o.length;t0&&(u+="\t"),"string"==typeof(i=e[t][r])?i.indexOf("\n")>-1?u+='"'+i.replace(/"/g,'""')+'"':u+=i:u+=null===i||void 0===i?"":i;u+="\n"}return u},enumerable:!0,configurable:!1,writable:!1}}),void 0!==e&&e.exports?e.exports=n:t.SheetClip=n}(this)},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});t.default=class{static set(e,t){e.clipboardData.setData("text/plain",t),e.preventDefault()}static get(e){let t;return t=e.clipboardData?e.clipboardData.getData("text/plain"):void 0}}},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r=s(n(2)),o=a(n(1)),i=a(n(43)),u=s(n(16));function a(e){return e&&e.__esModule?e:{default:e}}function s(e){if(e&&e.__esModule)return e;var t={};if(null!=e)for(var n in e)Object.prototype.hasOwnProperty.call(e,n)&&(t[n]=e[n]);return t.default=e,t}t.default=class{constructor(e){this.propsFn=e,this.handlers=new Map,this.isCellSelected=((e,t,n)=>e&&r.contains([t,n],e)),this.getEventHandler=((e,t,n)=>{const r=this.handlers.get(e)||this.handlers.set(e,new Map).get(e),o=r.get(t)||r.set(t,new Map).get(t);return o.get(n)||o.set(n,e.bind(this,t,n)).get(n)}),this.handleClick=((e,t,n)=>{var o=this.props;const i=o.columns,u=o.editable,a=o.is_focused,s=o.row_deletable,l=o.row_selectable,c=o.selected_cell,p=o.setProps,d=this.isCellSelected(c,e,t);if(!u)return;if(a||n.preventDefault(),d)return;const f=(s?1:0)+(l?1:0);n.preventDefault();const h=[e,t+f],v={is_focused:!1,active_cell:h},g=[];i.forEach((e,t)=>{e.hidden||g.push(t+f)});const y=r.uniq(r.pluck(0,c)).sort((e,t)=>e-t),b=r.uniq(r.pluck(1,c)).sort((e,t)=>e-t),m=y[0],x=b[0];n.shiftKey?v.selected_cell=r.xprod(r.range(r.min(m,h[0]),r.max(m,h[0])+1),r.range(r.min(x,h[1]),r.max(x,h[1])+1)).filter(e=>r.contains(e[1],g)):v.selected_cell=[h],p(v)}),this.handleDoubleClick=((e,t,n)=>{var r=this.props;const o=r.editable,i=r.is_focused,u=r.row_deletable,a=r.row_selectable,s=r.setProps;if(!o)return;const l=[e,t+((u?1:0)+(a?1:0))];i||(n.preventDefault(),s({selected_cell:[l],active_cell:l,is_focused:!0}))}),this.handleChange=((e,t,n)=>{var o=this.props;const i=o.columns,u=o.dataframe,a=o.editable,s=o.setProps,l=i[t];a&&s({dataframe:r.set(r.lensPath([e,l.id]),n,u)})}),this.handlePaste=(e=>{e.preventDefault()})}get props(){return this.propsFn()}rowSelectCell(e){var t=this.props;const n=t.setProps,i=t.selected_rows,u=t.row_selectable;return u?o.default.createElement("td",{key:"select",className:"select-cell",style:{width:"30px",maxWidth:"30px",minWidth:"30px"}},o.default.createElement("input",{type:"single"===u?"radio":"checkbox",name:"row-select",checked:r.contains(e,i),onChange:()=>n({selected_rows:"single"===u?[e]:r.ifElse(r.contains(e),r.without([e]),r.append(e))(i)})})):null}rowDeleteCell(e){var t=this.props;const n=t.setProps;return t.row_deletable?o.default.createElement("td",{key:"delete",className:"delete-cell",onClick:()=>n(u.deleteRow(e,this.props)),style:{width:"30px",maxWidth:"30px",minWidth:"30px"}},"×"):null}createCells(){var e=this.props;const t=e.active_cell,n=e.columns,u=e.column_conditional_dropdowns,a=e.column_conditional_styles,s=e.column_static_dropdown,l=e.column_static_style,c=e.dropdown_properties,p=e.editable,d=e.id,f=e.is_focused,h=e.row_deletable,v=e.row_selectable,g=e.selected_cell,y=e.virtualizer,b=y.dataframe,m=y.indices,x=n.filter(e=>!e.hidden),w=(h?1:0)+(v?1:0);return b.map((e,h)=>{const v=m[h],y=this.rowDeleteCell(v),b=this.rowSelectCell(v),E=x.map((y,b)=>{b+=w;let m=(c&&c[y.id]&&(c[y.id].length>v?c[y.id][v]:null)||y||{}).options;const x=n.indexOf(y),E=[`column-${x+w}`];let _=u.find(e=>e.id===y.id),O=s.find(e=>e.id===y.id);_=_&&_.dropdowns,O=m||O&&O.dropdown;let S=a.find(e=>e.id===y.id),C=l.find(e=>e.id===y.id);return S=S&&S.styles,C=C&&C.style,o.default.createElement(i.default,{key:`${y.id}-${b}`,active:t[0]===h&&t[1]===x+w,classes:E,clearable:y.clearable,conditionalDropdowns:_,conditionalStyles:S,datum:e,editable:p,focused:!!f,onClick:this.getEventHandler(this.handleClick,h,x),onDoubleClick:this.getEventHandler(this.handleDoubleClick,h,x),onPaste:this.handlePaste,onChange:this.getEventHandler(this.handleChange,v,x),property:y.id,selected:r.contains([h,x+w],g),staticDropdown:O,staticStyle:C,tableId:d,type:y.type,value:e[y.id]})});return b&&E.unshift(b),y&&E.unshift(y),E})}}},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var r=function(e){if(e&&e.__esModule)return e;var t={};if(null!=e)for(var n in e)Object.prototype.hasOwnProperty.call(e,n)&&(t[n]=e[n]);return t.default=e,t}(n(2)),o=n(1),i=f(o),u=f(n(44)),a=n(12),s=n(5),l=f(n(45)),c=f(n(18)),p=n(15),d=f(n(20));function f(e){return e&&e.__esModule?e:{default:e}}class h extends o.Component{constructor(e){super(e),this.getDropdown=(0,s.memoizeOne)((...e)=>e.length?e.slice(-1)[0]:void 0),this.getStyle=(0,s.memoizeOne)((...e)=>e.length?r.mergeAll(e):void 0),this.propagateChange=(()=>{if(this.state.value===this.props.value)return;(0,this.props.onChange)(this.state.value)}),this.handleChange=(e=>{this.setState({value:e.target.value})}),this.handleKeyDown=(e=>{e.keyCode===p.KEY_CODES.ENTER&&this.propagateChange()}),this.handleOpenDropdown=(()=>{var e=this.refs;const t=e.dropdown,n=e.td;(0,d.default)(t.wrapper.querySelector(".Select-menu-outer"),n)}),this.state={value:e.value}}get propsWithDefaults(){return this.props}get classes(){var e=this.propsWithDefaults;let t=e.active,n=e.classes,r=e.editable,o=e.selected,i=e.type;return[...t?["focused"]:[],...r?[]:["cell--uneditable"],...o?["cell--selected"]:[],..."dropdown"===i?["dropdown"]:[],...n]}renderDropdown(){var e=this.propsWithDefaults;const t=e.clearable,n=e.onChange,r=e.value,o=this.dropdown;return o?i.default.createElement(u.default,{ref:"dropdown",clearable:t,onChange:e=>{n(e?e.value:e)},onOpen:this.handleOpenDropdown,options:o,placeholder:"",value:r}):this.renderValue()}renderInput(){var e=this.propsWithDefaults;const t=e.active,n=e.focused,r=e.onClick,o=e.onDoubleClick,u=e.onPaste,a={className:[...t?["input-active"]:[],...n?["focused"]:["unfocused"],...["cell-value"]].join(" "),onClick:r,onDoubleClick:o};return t||this.state.value!==this.props.value?i.default.createElement("input",Object.assign({ref:"textInput",type:"text",value:this.state.value,onBlur:this.propagateChange,onChange:this.handleChange,onKeyDown:this.handleKeyDown,onPaste:u},a)):this.renderValue(a)}renderValue(e={}){const t=this.propsWithDefaults.value;return i.default.createElement("div",Object.assign({},e),t)}renderInner(){switch(this.props.type){case"text":case"numeric":return this.renderInput();case"dropdown":return this.renderDropdown();default:return this.renderValue()}}get dropdown(){var e=this.propsWithDefaults;let t=e.conditionalDropdowns,n=e.datum,o=e.property,i=e.staticDropdown,u=e.tableId;const a=[...i?[i]:[],...r.map(([e])=>e.dropdown,r.filter(([e,t])=>h.dropdownAstCache([u,o,t],[e.condition]).evaluate(n),r.addIndex(r.map)((e,t)=>[e,t],t)))];return this.getDropdown(...a)}get style(){var e=this.propsWithDefaults;let t=e.conditionalStyles,n=e.datum,o=e.property,i=e.staticStyle,u=e.tableId;const a=[i,...r.map(([e])=>e.style,r.filter(([e,t])=>h.styleAstCache([u,o,t],[e.condition]).evaluate(n),r.addIndex(r.map)((e,t)=>[e,t],t)))];return this.getStyle(...a)}render(){return i.default.createElement("td",{ref:"td",tabIndex:-1,className:this.classes.join(" "),style:this.style},this.renderInner())}componentWillReceiveProps(e){const t=e.value;this.state.value!==t&&this.setState({value:t})}componentDidUpdate(){const e=this.propsWithDefaults.active,t=this.refs.textInput;e&&t&&document.activeElement!==t&&(t.focus(),t.setSelectionRange(0,t.value?t.value.length:0)),e&&this.refs.dropdown&&this.refs.td.focus()}shouldComponentUpdate(e,t){const n=this.props,r=this.state;return!(0,a.isEqual)(n,e,!0)||!(0,a.isEqual)(r,t,!0)}}t.default=h,h.dropdownAstCache=(0,l.default)(e=>new c.default(e)),h.styleAstCache=(0,l.default)(e=>new c.default(e)),h.defaultProps={classes:[],conditionalDropdowns:[],conditionalStyles:[],staticStyle:{},type:"text"}},function(e,t,n){"use strict";n.r(t),n.d(t,"Async",function(){return V}),n.d(t,"AsyncCreatable",function(){return Y}),n.d(t,"Creatable",function(){return L}),n.d(t,"Value",function(){return F}),n.d(t,"Option",function(){return k}),n.d(t,"defaultMenuRenderer",function(){return b}),n.d(t,"defaultArrowRenderer",function(){return d}),n.d(t,"defaultClearRenderer",function(){return f}),n.d(t,"defaultFilterOptions",function(){return y});var r=n(22),o=n.n(r),i=n(4),u=n.n(i),a=n(0),s=n.n(a),l=n(1),c=n.n(l),p=n(6),d=function(e){var t=e.onMouseDown;return c.a.createElement("span",{className:"Select-arrow",onMouseDown:t})};d.propTypes={onMouseDown:s.a.func};var f=function(){return c.a.createElement("span",{className:"Select-clear",dangerouslySetInnerHTML:{__html:"×"}})},h=[{base:"A",letters:/[\u0041\u24B6\uFF21\u00C0\u00C1\u00C2\u1EA6\u1EA4\u1EAA\u1EA8\u00C3\u0100\u0102\u1EB0\u1EAE\u1EB4\u1EB2\u0226\u01E0\u00C4\u01DE\u1EA2\u00C5\u01FA\u01CD\u0200\u0202\u1EA0\u1EAC\u1EB6\u1E00\u0104\u023A\u2C6F]/g},{base:"AA",letters:/[\uA732]/g},{base:"AE",letters:/[\u00C6\u01FC\u01E2]/g},{base:"AO",letters:/[\uA734]/g},{base:"AU",letters:/[\uA736]/g},{base:"AV",letters:/[\uA738\uA73A]/g},{base:"AY",letters:/[\uA73C]/g},{base:"B",letters:/[\u0042\u24B7\uFF22\u1E02\u1E04\u1E06\u0243\u0182\u0181]/g},{base:"C",letters:/[\u0043\u24B8\uFF23\u0106\u0108\u010A\u010C\u00C7\u1E08\u0187\u023B\uA73E]/g},{base:"D",letters:/[\u0044\u24B9\uFF24\u1E0A\u010E\u1E0C\u1E10\u1E12\u1E0E\u0110\u018B\u018A\u0189\uA779]/g},{base:"DZ",letters:/[\u01F1\u01C4]/g},{base:"Dz",letters:/[\u01F2\u01C5]/g},{base:"E",letters:/[\u0045\u24BA\uFF25\u00C8\u00C9\u00CA\u1EC0\u1EBE\u1EC4\u1EC2\u1EBC\u0112\u1E14\u1E16\u0114\u0116\u00CB\u1EBA\u011A\u0204\u0206\u1EB8\u1EC6\u0228\u1E1C\u0118\u1E18\u1E1A\u0190\u018E]/g},{base:"F",letters:/[\u0046\u24BB\uFF26\u1E1E\u0191\uA77B]/g},{base:"G",letters:/[\u0047\u24BC\uFF27\u01F4\u011C\u1E20\u011E\u0120\u01E6\u0122\u01E4\u0193\uA7A0\uA77D\uA77E]/g},{base:"H",letters:/[\u0048\u24BD\uFF28\u0124\u1E22\u1E26\u021E\u1E24\u1E28\u1E2A\u0126\u2C67\u2C75\uA78D]/g},{base:"I",letters:/[\u0049\u24BE\uFF29\u00CC\u00CD\u00CE\u0128\u012A\u012C\u0130\u00CF\u1E2E\u1EC8\u01CF\u0208\u020A\u1ECA\u012E\u1E2C\u0197]/g},{base:"J",letters:/[\u004A\u24BF\uFF2A\u0134\u0248]/g},{base:"K",letters:/[\u004B\u24C0\uFF2B\u1E30\u01E8\u1E32\u0136\u1E34\u0198\u2C69\uA740\uA742\uA744\uA7A2]/g},{base:"L",letters:/[\u004C\u24C1\uFF2C\u013F\u0139\u013D\u1E36\u1E38\u013B\u1E3C\u1E3A\u0141\u023D\u2C62\u2C60\uA748\uA746\uA780]/g},{base:"LJ",letters:/[\u01C7]/g},{base:"Lj",letters:/[\u01C8]/g},{base:"M",letters:/[\u004D\u24C2\uFF2D\u1E3E\u1E40\u1E42\u2C6E\u019C]/g},{base:"N",letters:/[\u004E\u24C3\uFF2E\u01F8\u0143\u00D1\u1E44\u0147\u1E46\u0145\u1E4A\u1E48\u0220\u019D\uA790\uA7A4]/g},{base:"NJ",letters:/[\u01CA]/g},{base:"Nj",letters:/[\u01CB]/g},{base:"O",letters:/[\u004F\u24C4\uFF2F\u00D2\u00D3\u00D4\u1ED2\u1ED0\u1ED6\u1ED4\u00D5\u1E4C\u022C\u1E4E\u014C\u1E50\u1E52\u014E\u022E\u0230\u00D6\u022A\u1ECE\u0150\u01D1\u020C\u020E\u01A0\u1EDC\u1EDA\u1EE0\u1EDE\u1EE2\u1ECC\u1ED8\u01EA\u01EC\u00D8\u01FE\u0186\u019F\uA74A\uA74C]/g},{base:"OI",letters:/[\u01A2]/g},{base:"OO",letters:/[\uA74E]/g},{base:"OU",letters:/[\u0222]/g},{base:"P",letters:/[\u0050\u24C5\uFF30\u1E54\u1E56\u01A4\u2C63\uA750\uA752\uA754]/g},{base:"Q",letters:/[\u0051\u24C6\uFF31\uA756\uA758\u024A]/g},{base:"R",letters:/[\u0052\u24C7\uFF32\u0154\u1E58\u0158\u0210\u0212\u1E5A\u1E5C\u0156\u1E5E\u024C\u2C64\uA75A\uA7A6\uA782]/g},{base:"S",letters:/[\u0053\u24C8\uFF33\u1E9E\u015A\u1E64\u015C\u1E60\u0160\u1E66\u1E62\u1E68\u0218\u015E\u2C7E\uA7A8\uA784]/g},{base:"T",letters:/[\u0054\u24C9\uFF34\u1E6A\u0164\u1E6C\u021A\u0162\u1E70\u1E6E\u0166\u01AC\u01AE\u023E\uA786]/g},{base:"TZ",letters:/[\uA728]/g},{base:"U",letters:/[\u0055\u24CA\uFF35\u00D9\u00DA\u00DB\u0168\u1E78\u016A\u1E7A\u016C\u00DC\u01DB\u01D7\u01D5\u01D9\u1EE6\u016E\u0170\u01D3\u0214\u0216\u01AF\u1EEA\u1EE8\u1EEE\u1EEC\u1EF0\u1EE4\u1E72\u0172\u1E76\u1E74\u0244]/g},{base:"V",letters:/[\u0056\u24CB\uFF36\u1E7C\u1E7E\u01B2\uA75E\u0245]/g},{base:"VY",letters:/[\uA760]/g},{base:"W",letters:/[\u0057\u24CC\uFF37\u1E80\u1E82\u0174\u1E86\u1E84\u1E88\u2C72]/g},{base:"X",letters:/[\u0058\u24CD\uFF38\u1E8A\u1E8C]/g},{base:"Y",letters:/[\u0059\u24CE\uFF39\u1EF2\u00DD\u0176\u1EF8\u0232\u1E8E\u0178\u1EF6\u1EF4\u01B3\u024E\u1EFE]/g},{base:"Z",letters:/[\u005A\u24CF\uFF3A\u0179\u1E90\u017B\u017D\u1E92\u1E94\u01B5\u0224\u2C7F\u2C6B\uA762]/g},{base:"a",letters:/[\u0061\u24D0\uFF41\u1E9A\u00E0\u00E1\u00E2\u1EA7\u1EA5\u1EAB\u1EA9\u00E3\u0101\u0103\u1EB1\u1EAF\u1EB5\u1EB3\u0227\u01E1\u00E4\u01DF\u1EA3\u00E5\u01FB\u01CE\u0201\u0203\u1EA1\u1EAD\u1EB7\u1E01\u0105\u2C65\u0250]/g},{base:"aa",letters:/[\uA733]/g},{base:"ae",letters:/[\u00E6\u01FD\u01E3]/g},{base:"ao",letters:/[\uA735]/g},{base:"au",letters:/[\uA737]/g},{base:"av",letters:/[\uA739\uA73B]/g},{base:"ay",letters:/[\uA73D]/g},{base:"b",letters:/[\u0062\u24D1\uFF42\u1E03\u1E05\u1E07\u0180\u0183\u0253]/g},{base:"c",letters:/[\u0063\u24D2\uFF43\u0107\u0109\u010B\u010D\u00E7\u1E09\u0188\u023C\uA73F\u2184]/g},{base:"d",letters:/[\u0064\u24D3\uFF44\u1E0B\u010F\u1E0D\u1E11\u1E13\u1E0F\u0111\u018C\u0256\u0257\uA77A]/g},{base:"dz",letters:/[\u01F3\u01C6]/g},{base:"e",letters:/[\u0065\u24D4\uFF45\u00E8\u00E9\u00EA\u1EC1\u1EBF\u1EC5\u1EC3\u1EBD\u0113\u1E15\u1E17\u0115\u0117\u00EB\u1EBB\u011B\u0205\u0207\u1EB9\u1EC7\u0229\u1E1D\u0119\u1E19\u1E1B\u0247\u025B\u01DD]/g},{base:"f",letters:/[\u0066\u24D5\uFF46\u1E1F\u0192\uA77C]/g},{base:"g",letters:/[\u0067\u24D6\uFF47\u01F5\u011D\u1E21\u011F\u0121\u01E7\u0123\u01E5\u0260\uA7A1\u1D79\uA77F]/g},{base:"h",letters:/[\u0068\u24D7\uFF48\u0125\u1E23\u1E27\u021F\u1E25\u1E29\u1E2B\u1E96\u0127\u2C68\u2C76\u0265]/g},{base:"hv",letters:/[\u0195]/g},{base:"i",letters:/[\u0069\u24D8\uFF49\u00EC\u00ED\u00EE\u0129\u012B\u012D\u00EF\u1E2F\u1EC9\u01D0\u0209\u020B\u1ECB\u012F\u1E2D\u0268\u0131]/g},{base:"j",letters:/[\u006A\u24D9\uFF4A\u0135\u01F0\u0249]/g},{base:"k",letters:/[\u006B\u24DA\uFF4B\u1E31\u01E9\u1E33\u0137\u1E35\u0199\u2C6A\uA741\uA743\uA745\uA7A3]/g},{base:"l",letters:/[\u006C\u24DB\uFF4C\u0140\u013A\u013E\u1E37\u1E39\u013C\u1E3D\u1E3B\u017F\u0142\u019A\u026B\u2C61\uA749\uA781\uA747]/g},{base:"lj",letters:/[\u01C9]/g},{base:"m",letters:/[\u006D\u24DC\uFF4D\u1E3F\u1E41\u1E43\u0271\u026F]/g},{base:"n",letters:/[\u006E\u24DD\uFF4E\u01F9\u0144\u00F1\u1E45\u0148\u1E47\u0146\u1E4B\u1E49\u019E\u0272\u0149\uA791\uA7A5]/g},{base:"nj",letters:/[\u01CC]/g},{base:"o",letters:/[\u006F\u24DE\uFF4F\u00F2\u00F3\u00F4\u1ED3\u1ED1\u1ED7\u1ED5\u00F5\u1E4D\u022D\u1E4F\u014D\u1E51\u1E53\u014F\u022F\u0231\u00F6\u022B\u1ECF\u0151\u01D2\u020D\u020F\u01A1\u1EDD\u1EDB\u1EE1\u1EDF\u1EE3\u1ECD\u1ED9\u01EB\u01ED\u00F8\u01FF\u0254\uA74B\uA74D\u0275]/g},{base:"oi",letters:/[\u01A3]/g},{base:"ou",letters:/[\u0223]/g},{base:"oo",letters:/[\uA74F]/g},{base:"p",letters:/[\u0070\u24DF\uFF50\u1E55\u1E57\u01A5\u1D7D\uA751\uA753\uA755]/g},{base:"q",letters:/[\u0071\u24E0\uFF51\u024B\uA757\uA759]/g},{base:"r",letters:/[\u0072\u24E1\uFF52\u0155\u1E59\u0159\u0211\u0213\u1E5B\u1E5D\u0157\u1E5F\u024D\u027D\uA75B\uA7A7\uA783]/g},{base:"s",letters:/[\u0073\u24E2\uFF53\u00DF\u015B\u1E65\u015D\u1E61\u0161\u1E67\u1E63\u1E69\u0219\u015F\u023F\uA7A9\uA785\u1E9B]/g},{base:"t",letters:/[\u0074\u24E3\uFF54\u1E6B\u1E97\u0165\u1E6D\u021B\u0163\u1E71\u1E6F\u0167\u01AD\u0288\u2C66\uA787]/g},{base:"tz",letters:/[\uA729]/g},{base:"u",letters:/[\u0075\u24E4\uFF55\u00F9\u00FA\u00FB\u0169\u1E79\u016B\u1E7B\u016D\u00FC\u01DC\u01D8\u01D6\u01DA\u1EE7\u016F\u0171\u01D4\u0215\u0217\u01B0\u1EEB\u1EE9\u1EEF\u1EED\u1EF1\u1EE5\u1E73\u0173\u1E77\u1E75\u0289]/g},{base:"v",letters:/[\u0076\u24E5\uFF56\u1E7D\u1E7F\u028B\uA75F\u028C]/g},{base:"vy",letters:/[\uA761]/g},{base:"w",letters:/[\u0077\u24E6\uFF57\u1E81\u1E83\u0175\u1E87\u1E85\u1E98\u1E89\u2C73]/g},{base:"x",letters:/[\u0078\u24E7\uFF58\u1E8B\u1E8D]/g},{base:"y",letters:/[\u0079\u24E8\uFF59\u1EF3\u00FD\u0177\u1EF9\u0233\u1E8F\u00FF\u1EF7\u1E99\u1EF5\u01B4\u024F\u1EFF]/g},{base:"z",letters:/[\u007A\u24E9\uFF5A\u017A\u1E91\u017C\u017E\u1E93\u1E95\u01B6\u0225\u0240\u2C6C\uA763]/g}],v=function(e){for(var t=0;t-1)return!1;if(r.filterOption)return r.filterOption.call(void 0,e,t);if(!t)return!0;var o=e[r.valueKey],i=e[r.labelKey],u=g(o),a=g(i);if(!u&&!a)return!1;var s=u?String(o):null,l=a?String(i):null;return r.ignoreAccents&&(s&&"label"!==r.matchProp&&(s=v(s)),l&&"value"!==r.matchProp&&(l=v(l))),r.ignoreCase&&(s&&"label"!==r.matchProp&&(s=s.toLowerCase()),l&&"value"!==r.matchProp&&(l=l.toLowerCase())),"start"===r.matchPos?s&&"label"!==r.matchProp&&s.substr(0,t.length)===t||l&&"value"!==r.matchProp&&l.substr(0,t.length)===t:s&&"label"!==r.matchProp&&s.indexOf(t)>=0||l&&"value"!==r.matchProp&&l.indexOf(t)>=0})},b=function(e){var t=e.focusedOption,n=e.focusOption,r=e.inputValue,o=e.instancePrefix,i=e.onFocus,a=e.onOptionRef,s=e.onSelect,l=e.optionClassName,p=e.optionComponent,d=e.optionRenderer,f=e.options,h=e.removeValue,v=e.selectValue,g=e.valueArray,y=e.valueKey,b=p;return f.map(function(e,p){var f=g&&g.some(function(t){return t[y]===e[y]}),m=e===t,x=u()(l,{"Select-option":!0,"is-selected":f,"is-focused":m,"is-disabled":e.disabled});return c.a.createElement(b,{className:x,focusOption:n,inputValue:r,instancePrefix:o,isDisabled:e.disabled,isFocused:m,isSelected:f,key:"option-"+p+"-"+e[y],onFocus:i,onSelect:s,option:e,optionIndex:p,ref:function(e){a(e,m)},removeValue:h,selectValue:v},d(e,p,r))})};b.propTypes={focusOption:s.a.func,focusedOption:s.a.object,inputValue:s.a.string,instancePrefix:s.a.string,onFocus:s.a.func,onOptionRef:s.a.func,onSelect:s.a.func,optionClassName:s.a.string,optionComponent:s.a.func,optionRenderer:s.a.func,options:s.a.array,removeValue:s.a.func,selectValue:s.a.func,valueArray:s.a.array,valueKey:s.a.string};var m=function(e){e.preventDefault(),e.stopPropagation(),"A"===e.target.tagName&&"href"in e.target&&(e.target.target?window.open(e.target.href,e.target.target):window.location.href=e.target.href)},x="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},w=(function(){function e(e){this.value=e}function t(t){var n,r;function o(n,r){try{var u=t[n](r),a=u.value;a instanceof e?Promise.resolve(a.value).then(function(e){o("next",e)},function(e){o("throw",e)}):i(u.done?"return":"normal",u.value)}catch(e){i("throw",e)}}function i(e,t){switch(e){case"return":n.resolve({value:t,done:!0});break;case"throw":n.reject(t);break;default:n.resolve({value:t,done:!1})}(n=n.next)?o(n.key,n.arg):r=null}this._invoke=function(e,t){return new Promise(function(i,u){var a={key:e,arg:t,resolve:i,reject:u,next:null};r?r=r.next=a:(n=r=a,o(e,t))})},"function"!=typeof t.return&&(this.return=void 0)}"function"==typeof Symbol&&Symbol.asyncIterator&&(t.prototype[Symbol.asyncIterator]=function(){return this}),t.prototype.next=function(e){return this._invoke("next",e)},t.prototype.throw=function(e){return this._invoke("throw",e)},t.prototype.return=function(e){return this._invoke("return",e)}}(),function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}),E=function(){function e(e,t){for(var n=0;n=0||Object.prototype.hasOwnProperty.call(e,r)&&(n[r]=e[r]);return n},A=function(e,t){if(!e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return!t||"object"!=typeof t&&"function"!=typeof t?e:t},k=function(e){function t(e){w(this,t);var n=A(this,(t.__proto__||Object.getPrototypeOf(t)).call(this,e));return n.handleMouseDown=n.handleMouseDown.bind(n),n.handleMouseEnter=n.handleMouseEnter.bind(n),n.handleMouseMove=n.handleMouseMove.bind(n),n.handleTouchStart=n.handleTouchStart.bind(n),n.handleTouchEnd=n.handleTouchEnd.bind(n),n.handleTouchMove=n.handleTouchMove.bind(n),n.onFocus=n.onFocus.bind(n),n}return S(t,e),E(t,[{key:"handleMouseDown",value:function(e){e.preventDefault(),e.stopPropagation(),this.props.onSelect(this.props.option,e)}},{key:"handleMouseEnter",value:function(e){this.onFocus(e)}},{key:"handleMouseMove",value:function(e){this.onFocus(e)}},{key:"handleTouchEnd",value:function(e){this.dragging||this.handleMouseDown(e)}},{key:"handleTouchMove",value:function(){this.dragging=!0}},{key:"handleTouchStart",value:function(){this.dragging=!1}},{key:"onFocus",value:function(e){this.props.isFocused||this.props.onFocus(this.props.option,e)}},{key:"render",value:function(){var e=this.props,t=e.option,n=e.instancePrefix,r=e.optionIndex,o=u()(this.props.className,t.className);return t.disabled?c.a.createElement("div",{className:o,onMouseDown:m,onClick:m},this.props.children):c.a.createElement("div",{className:o,style:t.style,role:"option","aria-label":t.label,onMouseDown:this.handleMouseDown,onMouseEnter:this.handleMouseEnter,onMouseMove:this.handleMouseMove,onTouchStart:this.handleTouchStart,onTouchMove:this.handleTouchMove,onTouchEnd:this.handleTouchEnd,id:n+"-option-"+r,title:t.title},this.props.children)}}]),t}(c.a.Component);k.propTypes={children:s.a.node,className:s.a.string,instancePrefix:s.a.string.isRequired,isDisabled:s.a.bool,isFocused:s.a.bool,isSelected:s.a.bool,onFocus:s.a.func,onSelect:s.a.func,onUnfocus:s.a.func,option:s.a.object.isRequired,optionIndex:s.a.number};var F=function(e){function t(e){w(this,t);var n=A(this,(t.__proto__||Object.getPrototypeOf(t)).call(this,e));return n.handleMouseDown=n.handleMouseDown.bind(n),n.onRemove=n.onRemove.bind(n),n.handleTouchEndRemove=n.handleTouchEndRemove.bind(n),n.handleTouchMove=n.handleTouchMove.bind(n),n.handleTouchStart=n.handleTouchStart.bind(n),n}return S(t,e),E(t,[{key:"handleMouseDown",value:function(e){if("mousedown"!==e.type||0===e.button)return this.props.onClick?(e.stopPropagation(),void this.props.onClick(this.props.value,e)):void(this.props.value.href&&e.stopPropagation())}},{key:"onRemove",value:function(e){e.preventDefault(),e.stopPropagation(),this.props.onRemove(this.props.value)}},{key:"handleTouchEndRemove",value:function(e){this.dragging||this.onRemove(e)}},{key:"handleTouchMove",value:function(){this.dragging=!0}},{key:"handleTouchStart",value:function(){this.dragging=!1}},{key:"renderRemoveIcon",value:function(){if(!this.props.disabled&&this.props.onRemove)return c.a.createElement("span",{className:"Select-value-icon","aria-hidden":"true",onMouseDown:this.onRemove,onTouchEnd:this.handleTouchEndRemove,onTouchStart:this.handleTouchStart,onTouchMove:this.handleTouchMove},"×")}},{key:"renderLabel",value:function(){return this.props.onClick||this.props.value.href?c.a.createElement("a",{className:"Select-value-label",href:this.props.value.href,target:this.props.value.target,onMouseDown:this.handleMouseDown,onTouchEnd:this.handleMouseDown},this.props.children):c.a.createElement("span",{className:"Select-value-label",role:"option","aria-selected":"true",id:this.props.id},this.props.children)}},{key:"render",value:function(){return c.a.createElement("div",{className:u()("Select-value",this.props.value.className),style:this.props.value.style,title:this.props.value.title},this.renderRemoveIcon(),this.renderLabel())}}]),t}(c.a.Component);F.propTypes={children:s.a.node,disabled:s.a.bool,id:s.a.string,onClick:s.a.func,onRemove:s.a.func,value:s.a.object.isRequired}; /*! Copyright (c) 2018 Jed Watson. Licensed under the MIT License (MIT), see diff --git a/dash_table/package.json b/dash_table/package.json index 3ee8f640a..3aeca1629 100644 --- a/dash_table/package.json +++ b/dash_table/package.json @@ -1,6 +1,6 @@ { "name": "dash-table", - "version": "3.0.0rc20", + "version": "3.0.0rc21", "description": "Dash table", "main": "build/index.js", "scripts": { diff --git a/package.json b/package.json index 3ee8f640a..3aeca1629 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "dash-table", - "version": "3.0.0rc20", + "version": "3.0.0rc21", "description": "Dash table", "main": "build/index.js", "scripts": { From 1baf8cf0183788c7cff47676b345e42a3a1dfaed Mon Sep 17 00:00:00 2001 From: Chris P Date: Thu, 20 Sep 2018 18:05:50 -0400 Subject: [PATCH 3/3] :pencil: RC21 changelog entry --- CHANGELOG.md | 13 ++++++++++++- 1 file changed, 12 insertions(+), 1 deletion(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index f7d0a1e59..6653a5d9e 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -170,4 +170,15 @@ Table styling has been changed for frozen rows and columns. Default styling change from: - frozen rows: { height: 500px } to { height: fit-content, max-height: 500px } - - frozen columns: { width: 500px } to { width: fit-content, max-width: 500px } \ No newline at end of file + - frozen columns: { width: 500px } to { width: fit-content, max-width: 500px } + +## RC21 - Improve performance when the user clicks outside of the table + + Pull Request: https://github.com/plotly/dash-table/pull/104 + + Clicking outside of the table was setting the table's `is_focused` property. + Setting component properties in Dash can be expensive: it can cause the + entire app to re-render. + Now, clicking outside the table will update the component more efficiently, + prevent excessive application re-renders. +