{"version":3,"sources":["webpack:///../node_modules/grommet-controls/index.es.js"],"names":[],"mappings":"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mC,oBAAoB,EAAE;AAC3L;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,YAAY,4CAAK,eAAe,mDAAG,YAAY,4GAA4G;AAC3J;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,YAAY,4CAAK,eAAe,mDAAG,YAAY,oFAAoF,oDAAoD,4CAAK,eAAe,uDAAO,GAAG,+GAA+G,WAAW,4CAAK;AACpV;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,YAAY,4CAAK,eAAe,mDAAG,YAAY,mCAAmC;AAClF;AACA;AACA;;AAEA,iBAAiB,yDAAM,yFAAyF,wBAAwB;AACxI;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;;AAEA,kBAAkB,4CAAK;AACvB;AACA;AACA;AACA;AACA;AACA,CAAC;AACD;AACA;AACA;AACA;AACA,UAAU,OAAO,yBAAyB;AAC1C,kBAAkB,IAAI;AACtB;AACA;AACA;AACA;AACA;AACA;AACA,6BAA6B,4CAAK;AAClC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,iCAAiC;AACjC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,mCAAmC,kBAAkB;AACrD;AACA;AACA;AACA,aAAa;AACb;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,gCAAgC,kCAAkC;AAClE;AACA;AACA;AACA;AACA;AACA,+CAA+C,2BAA2B;AAC1E;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,wBAAwB;AACxB,aAAa;AACb;AACA;AACA;AACA,+CAA+C,yBAAyB;AACxE;AACA;AACA;AACA;AACA,+CAA+C,iCAAiC;AAChF,gDAAgD,+DAA+D;AAC/G;AACA,2EAA2E;AAC3E;AACA;AACA;AACA;AACA;AACA;AACA,sBAAsB,sEAAS;AAC/B;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,iBAAiB;AACjB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,gBAAgB,4CAAK,iCAAiC,yEAAyE;AAC/H,YAAY,4CAAK,eAAe,mDAAG,GAAG,mBAAmB;AACzD,gBAAgB,4CAAK,eAAe,mDAAG,aAAa;AACpD,oBAAoB,4CAAK,uBAAuB,yBAAyB;AACzE,wBAAwB,4CAAK,sCAAsC;AACnE;AACA;AACA;AACA;AACA;AACA,6BAA6B,EAAE;AAC/B;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,yBAAyB;AACzB,kBAAkB;AAClB;AACA;AACA;AACA;AACA,CAAC,CAAC,+CAAS;;AAEX;AACA;AACA,eAAe,wDAAU;AACzB;AACA,IAAI,uDAAS;AACb,iCAAiC,iEAAiE;AAClG;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,mCAAmC,qGAAqG;AACxI;AACA;AACA;AACA,YAAY,4CAAK,eAAe,yDAAS,GAAG,+EAA+E;AAC3H;AACA;AACA;AACA;AACA;AACA;AACA;AACA,aAAa,4CAAK;AAClB;;AAEA,sCAAsC,SAAS,4CAAK,yCAAyC;AAC7F;AACA,YAAY,4CAAK,eAAe,mDAAG,GAAG,OAAO,oBAAoB,EAAE;AACnE,QAAQ,4CAAK,eAAe,wDAAQ,YAAY,iDAAiD,kBAAkB,UAAU,gBAAgB,EAAE,EAAE,EAAE,EAAE;AACrJ,CAAC,GAAG;;AAEJ,sBAAsB,iEAAM,CAAC,yDAAS,+FAA+F;AACrI,QAAQ;AACR;AACA,qBAAqB,8EAAgB;AACrC;AACA,yBAAyB,8EAAgB;AACzC,UAAU,8EAAgB;AAC1B,CAAC;AACD,+BAA+B,yDAAM,2FAA2F,gBAAgB,oBAAoB,+BAA+B,gBAAgB,oBAAoB;AACvO,6BAA6B,iEAAM,CAAC,mDAAG,wFAAwF,aAAa,WAAW,+BAA+B,aAAa,WAAW;AAC9M;;AAEA;AACA;AACA,UAAU,YAAY,yBAAyB;AAC/C;AACA,OAAO,MAAM,cAAc;AAC3B,OAAO,MAAM,MAAM,MAAM;AACzB,OAAO,MAAM,GAAG;AAChB;AACA;AACA;AACA;AACA;AACA;AACA,uBAAuB;AACvB,yBAAyB,4CAAK;AAC9B;AACA;AACA,wBAAwB,6DAAW;AACnC;AACA,4BAA4B,4BAA4B;AACxD;AACA,0BAA0B,gBAAgB;AAC1C;AACA;AACA;AACA;AACA,4BAA4B,aAAa;AACzC;AACA;AACA;AACA;AACA;AACA;AACA,4BAA4B,cAAc;AAC1C;AACA;AACA;AACA;AACA;AACA;AACA,4BAA4B,aAAa;AACzC;AACA;AACA;AACA;AACA;AACA;AACA,4BAA4B,cAAc;AAC1C;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,wBAAwB,4CAAK,eAAe,0DAAU,GAAG,oOAAoO;AAC7R;AACA,2BAA2B,4CAAK,wCAAwC,oCAAoC;AAC5G,sDAAsD,SAAS,4CAAK,eAAe,sDAAM,YAAY,2DAA2D,YAAY,EAAE;AAC9K;AACA;AACA,gBAAgB,4CAAK,eAAe,wDAAQ,GAAG,6CAA6C;AAC5F,YAAY,4CAAK;AACjB,gBAAgB,4CAAK,eAAe,8DAAY,mCAAmC,SAAS,4CAAK,0CAA0C,2KAA2K,UAAU,EAAE;AAClU;AACA;AACA;AACA,oBAAoB,+BAA+B;AACnD,mBAAmB,4CAAK,eAAe,qEAAQ;AAC/C;AACA;AACA;AACA;AACA,CAAC,CAAC,+CAAS;;AAEX;AACA;AACA;AACA,oFAAoF;AACpF;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,2DAA2D,WAAW,aAAa;AACnF;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,oBAAoB,oEAAa;AACjC;AACA;AACA;AACA;AACA,yDAAyD,sBAAsB;AAC/E;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,8DAA8D,WAAW,wBAAwB;AACjG;AACA;AACA;AACA;AACA;AACA;AACA,4BAA4B;AAC5B;AACA;AACA;AACA;AACA;AACA;AACA,4BAA4B;AAC5B;AACA;AACA;AACA,gBAAgB;AAChB,KAAK;AACL;;AAEA;AACA,WAAW,aAAa,yBAAyB;AACjD,qBAAqB,IAAI;AACzB;AACA;AACA;AACA;AACA;AACA;AACA,gCAAgC,4CAAK;AACrC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,wCAAwC,iFAA0B,WAAW,eAAe,6DAAW,iEAAiE;AACxK;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,gBAAgB,4CAAK,oCAAoC,iIAAiI;AAC1L;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,8CAA8C,4EAA2B;AACzE,4BAA4B,0DAAS;AACrC,mCAAmC,iEAAgB;AACnD;AACA;AACA;AACA,CAAC,CAAC,+CAAS;;AAEX;AACA;AACA,WAAW,6DAAG,0FAA0F,wBAAwB,gCAAgC,wBAAwB;AACxL;AACA,mBAAmB,y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AAW;;AAEpJ;AACA;AACA;AACA,wCAAwC,SAAS,4CAAK,yCAAyC,iCAAiC,QAAQ,4CAAK,sCAAsC,eAAe,EAAE,GAAG;;AAEvM,mBAAmB,iEAAM,CAAC,mDAAG,wFAAwF,mCAAmC;AACxJ,+BAA+B,uBAAuB,EAAE;AACxD;AACA,iCAAiC,qBAAqB,mBAAmB,0CAA0C;AACnH;AACA;AACA,CAAC;AACD;;AAEA;AACA;AACA;AACA,WAAW,SAAS;AACpB;AACA;AACA;AACA;AACA;AACA;AACA;AACA,YAAY,4CAAK,uCAAuC,gBAAgB;AACxE;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA,uBAAuB,iEAAM,CAAC,sDAAM,4FAA4F,+BAA+B;AAC/J;;AAEA;AACA,YAAY,aAAa,yBAAyB;AAClD;AACA;AACA,mCAAmC,SAAS,4CAAK,4CAA4C,UAAU;AACvG;AACA;AACA,KAAK,EAAE,IAAI;;AAEX;AACA;AACA;AACA,yCAAyC,SAAS,4CAAK,yCAAyC,iCAAiC,QAAQ,4CAAK,uCAAuC,eAAe,EAAE,GAAG;;AAEzM;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA,QAAQ,0EAAU;AAClB,aAAa,gFAAa;AAC1B,WAAW,kFAAc;AACzB,aAAa,gFAAa;AAC1B,cAAc,kFAAc;AAC5B,UAAU,0EAAU;AACpB;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA,YAAY,eAAe,yBAAyB;AACpD,2BAA2B,IAAI,UAAU,IAAI;AAC7C;AACA;AACA;AACA;AACA;AACA;AACA,kCAAkC,4CAAK,eAAe,gEAAK,GAAG,uBAAuB;AACrF,oBAAoB,4CAAK,eAAe,mDAAG,GAAG,WAAW;AACzD,YAAY,4CAAK,eAAe,sDAAM,GAAG,yCAAyC;AAClF;AACA;AACA;AACA,kBAAkB,4CAAK;AACvB;AACA;AACA;AACA;AACA,sBAAsB,4CAAK,+BAA+B,4CAAK,4BAA4B,uBAAuB;AAClH;AACA;AACA;AACA,oBAAoB,4CAAK,eAAe,mDAAG,GAAG,2DAA2D,uBAAuB,EAAE;AAClI,YAAY,4CAAK,eAAe,qDAAK,GAAG;AACxC;AACA;AACA;AACA,qBAAqB,GAAG;AACxB,YAAY,4CAAK,eAAe,oDAAI,GAAG,gBAAgB;AACvD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,mBAAmB,4CAAK,eAAe,mDAAG,GAAG,yBAAyB;AACtE,QAAQ,4CAAK,eAAe,uDAAO,GAAG,iDAAiD,mBAAmB,EAAE;AAC5G,YAAY,4CAAK,eAAe,mDAAG,GAAG,kDAAkD;AACxF;AACA;AACA,QAAQ,4CAAK,eAAe,oDAAI,GAAG,uBAAuB;AAC1D,QAAQ,4CAAK,eAAe,oDAAI,GAAG,uBAAuB;AAC1D;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,YAAY,4CAAK,eAAe,mDAAG,YAAY,qLAAqL;AACpO;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,YAAY,cAAc,yBAAyB;AACnD,wBAAwB,IAAI;AAC5B;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,aAAa;AACb;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,8BAA8B,iCAAiC;AAC/D;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,8BAA8B,iCAAiC;AAC/D;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,iDAAiD,OAAO,6BAA6B,cAAc,eAAe,GAAG;AACrH;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT,2EAA2E,mJAAmJ;AAC9N,gBAAgB,4CAAK,sCAAsC,4BAA4B,4BAA4B,EAAE;AACrH;AACA;AACA;AACA;AACA,iBAAiB;AACjB;AACA;AACA;AACA;AACA,iBAAiB;AACjB,eAAe;AACf;AACA;AACA;AACA;AACA,iBAAiB,4CAAK,eAAe,4DAAG;AACxC,sBAAsB,4CAAK,eAAe,sEAAQ;AAClD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,CAAC,CAAC,+CAAS;;AAEX;AACA;AACA;AACA,yCAAyC,SAAS,4CAAK,yCAAyC,iCAAiC,QAAQ,4CAAK,uCAAuC,eAAe,EAAE,GAAG;;AAEzM;AACA;AACA;AACA,UAAU,gBAAgB,yBAAyB;AACnD,wBAAwB,IAAI;AAC5B;AACA;AACA;AACA;AACA;AACA,uBAAuB;AACvB;AACA;AACA;AACA,4BAA4B,8BAA8B;AAC1D;AACA;AACA;AACA;AACA;AACA;AACA,gBAAgB,4CAAK,oCAAoC;AACzD;AACA;AACA;AACA;AACA,iBAAiB;AACjB,eAAe;AACf;AACA;AACA,kBAAkB,4CAAK,eAAe,sEAAQ;AAC9C,kBAAkB,4CAAK,eAAe,8DAAI;AAC1C;AACA;AACA;AACA;AACA,CAAC,CAAC,+CAAS;;AAEX;AACA;AACA;AACA,2CAA2C,SAAS,4CAAK,yCAAyC,iCAAiC,QAAQ,4CAAK,yCAAyC,eAAe,EAAE,GAAG;;AAE7M;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,4BAA4B,aAAa;AACzC;AACA;AACA;AACA;AACA,uBAAuB,gBAAgB;AACvC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,2DAA2D,0BAA0B,EAAE;AACvF;AACA;AACA;AACA;AACA;AACA;AACA;AACA,yBAAyB,UAAU;AACnC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,mBAAmB,OAAO;AAC1B;AACA;AACA;AACA;AACA;AACA;AACA,uBAAuB,kBAAkB;AACzC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA,oBAAoB,uBAAuB;AAC3C;AACA;AACA,mBAAmB,iBAAiB;AACpC;AACA;AACA;AACA;AACA;AACA;AACA;AACA,uCAAuC,gBAAgB,EAAE;AACzD;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK,IAAI;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA,4BAA4B,aAAa;AACzC,8BAA8B,iBAAiB;AAC/C;AACA;AACA,cAAc,4CAAK,gCAAgC;AACnD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA,2BAA2B,iEAAM,CAAC,mDAAG,8FAA8F,gBAAgB,8BAA8B,mDAAmD,gBAAgB,8BAA8B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A;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,mBAAmB,sBAAsB;AACzC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,mBAAmB,sBAAsB;AACzC;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,yDAAyD,wDAAwD;AACjH;AACA;AACA;AACA;AACA,gBAAgB,4CAAK,eAAe,wDAAQ,GAAG;AAC/C;AACA;AACA;AACA;AACA;AACA;AACA;AACA,aAAa;AACb;AACA;AACA;AACA;AACA,aAAa;AACb;AACA;AACA;AACA;AACA,aAAa;AACb;AACA;AACA;AACA;AACA,aAAa;AACb;AACA;AACA;AACA;AACA,aAAa,EAAE;AACf,YAAY,4CAAK,4CAA4C,oDAAoD,mBAAmB,6DAAW,KAAK,EAAE,EAAE;AACxJ;AACA;AACA,CAAC,CAAC,+CAAS;;AAEX,4BAA4B,WAAW,EAAE;AACzC;AACA;AACA;AACA;AACA;AACA,gBAAgB,gDAAgD;AAChE;AACA;AACA;AACA,0BAA0B;AAC1B,8BAA8B,OAAO,qBAAqB;AAC1D,0BAA0B;AAC1B,+BAA+B;AAC/B;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,uBAAuB;AACvB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;AACA;AACA,mBAAmB;AACnB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,8BAA8B,aAAa,EAAE;AAC7C;AACA;AACA;AACA,iBAAiB,uBAAuB;AACxC,KAAK;AACL;AACA;AACA;AACA,KAAK;AACL;AACA;AACA,sFAAsF;AACtF,KAAK;AACL;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA,4DAA4D;AAC5D,KAAK;AACL;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA,mCAAmC;AACnC;AACA,4CAA4C;AAC5C;AACA;AACA,4CAA4C;AAC5C;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA,uDAAuD;AACvD,KAAK;AACL;AACA;AACA,2DAA2D;AAC3D,KAAK;AACL;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA,6DAA6D,0EAA0E,EAAE,EAAE;AAC3I,6DAA6D,0EAA0E,EAAE,EAAE;AAC3I;AACA,6DAA6D,0EAA0E,EAAE,EAAE;AAC3I;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,kCAAkC,4CAA4C,EAAE;AAChF,oCAAoC;AACpC;AACA,QAAQ,4CAAK,wBAAwB,SAAS;AAC9C;AACA,iDAAiD,EAAE;AACnD,gBAAgB,4CAAK;AACrB,KAAK;AACL;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,kCAAkC,QAAQ,4CAAK,uCAAuC,EAAE;AACxF;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,0DAA0D,+CAA+C,kHAAkH;AAC3N;AACA;AACA;AACA,+CAA+C,8DAA8D;AAC7G,wCAAwC,iFAAiF;AACzH;AACA;AACA;AACA,4BAA4B;AAC5B;AACA;AACA;AACA,oFAAoF,6CAA6C,EAAE;AACnI;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,aAAa,yCAAyC,qEAAqE,EAAE;AAC7H;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,iBAAiB;AACjB;AACA;AACA;AACA;AACA;AACA;AACA,aAAa;AACb;AACA;AACA,sEAAsE,2BAA2B,EAAE;AACnG;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,qBAAqB;AACrB;AACA;AACA;AACA;AACA;AACA;AACA,yBAAyB;AACzB;AACA;AACA;AACA;AACA;AACA,wEAAwE,8BAA8B,EAAE;AACxG;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,6BAA6B;AAC7B;AACA;AACA;AACA;AACA;AACA,yBAAyB;AACzB;AACA;AACA;AACA;AACA;AACA;AACA;AACA,0EAA0E;AAC1E;AACA;AACA,qBAAqB,EAAE,EAAE;AACzB;AACA;AACA,yDAAyD;AACzD;AACA;AACA,qBAAqB,EAAE,EAAE;AACzB;AACA;AACA;AACA;AACA;AACA;AACA;AACA,aAAa,yCAAyC,wEAAwE,EAAE;AAChI;AACA;AACA;AACA;AACA;AACA,qEAAqE,6BAA6B,EAAE;AACpG;AACA;AACA;AACA;AACA,iBAAiB;AACjB;AACA;AACA;AACA,aAAa,yCAAyC,4EAA4E,EAAE;AACpI;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,iBAAiB;AACjB,aAAa;AACb;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,aAAa;AACb;AACA;AACA;AACA;AACA;AACA;AACA,0DAA0D,sCAAsC,EAAE;AAClG;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,aAAa;AACb;AACA;AACA,aAAa,yCAAyC,gEAAgE,EAAE;AACxH;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,iBAAiB;AACjB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,2CAA2C;AAC3C;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,4DAA4D;AAC5D;AACA;AACA;AACA;AACA;AACA;AACA;AACA,2BAA2B,iBAAiB;AAC5C;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,mEAAmE,iBAAiB,EAAE;AACtF,4EAA4E,qBAAqB,EAAE;AACnG;AACA,kCAAkC,WAAW;AAC7C,mCAAmC,YAAY;AAC/C;AACA;AACA;AACA;AACA,+DAA+D,SAAS,mBAAmB;AAC3F;AACA;AACA;AACA;AACA;AACA,iBAAiB;AACjB;AACA;AACA;AACA;AACA;AACA;AACA;AACA,2DAA2D,sBAAsB,EAAE;AACnF,oBAAoB;AACpB;AACA,SAAS;AACT;AACA,6CAA6C,mBAAmB;AAChE;AACA;AACA;AACA;AACA;AACA;AACA;AACA,sCAAsC;AACtC;AACA;AACA;AACA;AACA;AACA;AACA;AACA,+CAA+C,oCAAoC,wBAAwB,EAAE;AAC7G,oBAAoB,kCAAkC,QAAQ;AAC9D,gEAAgE,4DAA4D,EAAE;AAC9H,iEAAiE,sEAAsE,EAAE;AACzI,oEAAoE,sEAAsE,EAAE;AAC5I;AACA;AACA,oDAAoD,2CAA2C,uCAAuC;AACtI;AACA;AACA;AACA;AACA;AACA,oBAAoB,4CAAK,sCAAsC,8CAA8C;AAC7G;AACA;AACA,aAAa;AACb;AACA,0CAA0C;AAC1C;AACA,+BAA+B,iBAAiB;AAChD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,UAAU;AACV;AACA;AACA;AACA,oBAAoB,4CAAK,yCAAyC,SAAS,+BAA+B,EAAE;AAC5G,gBAAgB,4CAAK,sCAAsC,qBAAqB,4BAA4B,EAAE,uCAAuC;AACrJ;AACA;AACA,wDAAwD,2BAA2B,EAAE;AACrF,oBAAoB;AACpB,iDAAiD,2BAA2B,EAAE;AAC9E;AACA;AACA;AACA;AACA;AACA,oDAAoD,sCAAsC,uCAAuC;AACjI;AACA;AACA,mBAAmB,4CAAK,2CAA2C,4BAA4B,kDAAkD,EAAE,8BAA8B,iDAAiD,EAAE,EAAE;AACtO;AACA;AACA,oBAAoB,4CAAK,sCAAsC;AAC/D;AACA;AACA;AACA,iBAAiB;AACjB;AACA;AACA,iBAAiB,EAAE;AACnB;AACA;AACA;AACA,iBAAiB;AACjB;AACA;AACA;AACA;AACA;AACA,oBAAoB,4CAAK,yCAAyC;AAClE;AACA,iBAAiB,EAAE;AACnB,gBAAgB,4CAAK,sCAAsC,qBAAqB,sBAAsB,EAAE,kCAAkC;AAC1I;AACA;AACA,wDAAwD,2BAA2B,EAAE;AACrF,oBAAoB;AACpB;AACA;AACA;AACA;AACA;AACA,oDAAoD,4CAA4C,uCAAuC;AACvI,0DAA0D,gCAAgC,EAAE;AAC5F;AACA;AACA,oBAAoB,4CAAK,sCAAsC;AAC/D;AACA;AACA;AACA,iBAAiB,EAAE;AACnB,oFAAoF,sBAAsB;AAC1G,gEAAgE,0CAA0C,EAAE,EAAE;AAC9G;AACA;AACA;AACA;AACA;AACA,oBAAoB,4CAAK,yCAAyC;AAClE;AACA,iBAAiB,EAAE;AACnB,gBAAgB,4CAAK,sCAAsC,qBAAqB,sBAAsB,EAAE,kCAAkC;AAC1I;AACA;AACA,kCAAkC,WAAW;AAC7C;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,oBAAoB,4CAAK,2CAA2C,qCAAqC;AACzG,gBAAgB,4CAAK,sCAAsC,8CAA8C,sBAAsB,EAAE,2BAA2B;AAC5J;AACA,gEAAgE,2BAA2B,EAAE;AAC7F,4BAA4B;AAC5B;AACA;AACA;AACA;AACA;AACA,yEAAyE,aAAa,4CAA4C;AAClI;AACA;AACA,4CAA4C;AAC5C;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,qFAAqF;AACrF;AACA;AACA;AACA,yBAAyB,yCAAyC;AAClE,uFAAuF,EAAE;AACzF;AACA;AACA;AACA;AACA;AACA,wDAAwD;AACxD,uCAAuC,4CAAK,4CAA4C,eAAe;AACvG;AACA;AACA;AACA;AACA;AACA;AACA,8CAA8C,SAAS,4CAAK,eAAe,4CAAK;AAChF,4BAA4B,4CAAK,qDAAqD,sBAAsB,WAAW,+BAA+B;AACtJ,4BAA4B,4CAAK,uDAAuD,YAAY,EAAE;AACtG;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,4GAA4G,cAAc,0BAA0B;AACpJ;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,2GAA2G,cAAc,+BAA+B;AACxJ;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,uCAAuC;AACvC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,4DAA4D,mCAAmC,EAAE;AACjG;AACA;AACA;AACA;AACA,gEAAgE,mCAAmC,EAAE;AACrG;AACA;AACA;AACA,4BAA4B,4CAAK;AACjC;AACA,gC;AACA;AACA;AACA;AACA;AACA;AACA,yBAAyB,EAAE;AAC3B,iBAAiB;AACjB;AACA;AACA,4DAA4D,+CAA+C,EAAE;AAC7G;AACA;AACA;AACA;AACA;AACA;AACA,wDAAwD,2BAA2B,EAAE;AACrF,oBAAoB;AACpB;AACA;AACA;AACA;AACA;AACA,oBAAoB,4CAAK,sCAAsC;AAC/D;AACA;AACA;AACA,iBAAiB,EAAE;AACnB;AACA;AACA;AACA;AACA,oBAAoB,4CAAK,2CAA2C,SAAS;AAC7E,gBAAgB,4CAAK,sCAAsC,gDAAgD;AAC3G;AACA;AACA,wDAAwD,2BAA2B,EAAE;AACrF,oBAAoB;AACpB;AACA;AACA;AACA;AACA;AACA;AACA,oBAAoB,4CAAK,sCAAsC;AAC/D;AACA;AACA;AACA,iBAAiB,EAAE;AACnB;AACA;AACA,aAAa;AACb;AACA;AACA;AACA;AACA,oBAAoB,4CAAK,yCAAyC;AAClE;AACA,iBAAiB,EAAE;AACnB,gBAAgB,4CAAK,sCAAsC,qBAAqB,sBAAsB,EAAE,kCAAkC;AAC1I;AACA;AACA;AACA,oBAAoB,4CAAK,+CAA+C,kBAAkB,uIAAuI;AACjO;AACA;AACA;AACA,oBAAoB,4CAAK,iCAAiC;AAC1D,uDAAuD,4CAAK;AAC5D;AACA,gBAAgB,4CAAK,0CAA0C;AAC/D;AACA;AACA;AACA,oBAAoB,4CAAK,yCAAyC;AAClE;AACA,yBAAyB,EAAE;AAC3B,wBAAwB,4CAAK,2CAA2C,6CAA6C;AACrH,sDAAsD,0BAA0B,EAAE;AAClF;AACA;AACA,0DAA0D,4CAAK;AAC/D;AACA;AACA,wBAAwB,4CAAK,2CAA2C;AACxE;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA,0DAA0D;AAC1D,iEAAiE,sBAAsB,EAAE,GAAG,EAAE;AAC9F;AACA;AACA,yEAAyE,qBAAqB,EAAE;AAChG;AACA;AACA;AACA,8BAA8B;AAC9B;AACA;AACA;AACA;AACA;AACA,oDAAoD;AACpD;AACA;AACA,2CAA2C;AAC3C;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,gDAAgD,qCAAqC;AACrF;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,6CAA6C,kBAAkB;AAC/D;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,2CAA2C,YAAY,2CAA2C,uCAAuC,EAAE,GAAG;AAC9I;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA,4EAA4E;AAC5E;AACA,uDAAuD,EAAE;AACzD,2CAA2C,YAAY,6BAA6B;AACpF;AACA;AACA,SAAS;AACT,kEAAkE;AAClE;AACA;AACA;AACA,wDAAwD,EAAE;AAC1D;AACA,kEAAkE,kBAAkB,EAAE;AACtF;AACA;AACA;AACA;AACA;AACA,mEAAmE,yBAAyB,EAAE;AAC9F;AACA;AACA;AACA,aAAa;AACb,oFAAoF,sEAAsE,EAAE;AAC5J;AACA;AACA;AACA;AACA,4DAA4D,sCAAsC,+BAA+B,gBAAgB,GAAG,EAAE;AACtJ;AACA;AACA;AACA,uDAAuD;AACvD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,2DAA2D,2BAA2B,mBAAmB;AACzG;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA,mCAAmC,WAAW;AAC9C,8BAA8B;AAC9B;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,aAAa;AACb;AACA,uEAAuE,mCAAmC,EAAE;AAC5G;AACA;AACA;AACA,qDAAqD,wBAAwB,EAAE;AAC/E,wEAAwE,mCAAmC,EAAE;AAC7G;AACA;AACA;AACA;AACA,oDAAoD,qBAAqB,EAAE;AAC3E;AACA,aAAa;AACb;AACA;AACA;AACA;AACA,mCAAmC,OAAO;AAC1C;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,mCAAmC;AACnC;AACA;AACA;AACA;AACA;AACA;AACA;AACA,iBAAiB;AACjB;AACA;AACA;AACA;AACA,wDAAwD,qBAAqB;AAC7E,iBAAiB;AACjB;AACA;AACA;AACA;AACA,mCAAmC,cAAc;AACjD;AACA;AACA;AACA,8CAA8C;AAC9C;AACA;AACA;AACA;AACA,mDAAmD,uBAAuB,EAAE;AAC5E;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,kEAAkE,+BAA+B,EAAE;AACnG;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,4DAA4D,gDAAgD,EAAE;AAC9G,aAAa;AACb;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,2CAA2C,gBAAgB;AAC3D,aAAa;AACb;AACA;AACA;AACA;AACA;AACA,aAAa;AACb;AACA;AACA;AACA;AACA,+CAA+C,4BAA4B;AAC3E;AACA;AACA;AACA;AACA;AACA;AACA,wCAAwC,4EAA4E;AACpH;AACA,oCAAoC,qEAAqE;AACzG,SAAS,4BAA4B,gBAAgB,EAAE;AACvD;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA,CAAC,CAAC,+CAAS;;AAEX,wBAAwB,iEAAM,oGAAoG,gBAAgB,qBAAqB,4BAA4B,gBAAgB,qBAAqB;AACxO;;AAEA,kDAAkD;AAClD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,mCAAmC,YAAY,aAAa;AAC5D,KAAK,aAAa;AAClB;AACA;AACA;AACA,YAAY,cAAc,yBAAyB;AACnD,0BAA0B,IAAI,OAAO,IAAI;AACzC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,uCAAuC;AACvC,YAAY,4CAAK,eAAe,iEAAiB,kCAAkC,SAAS,4CAAK,eAAe,8DAAY,mCAAmC,SAAS,4CAAK,4CAA4C,4EAA4E,cAAc,EAAE,GAAG,EAAE;AAC1T;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,oCAAoC,SAAS,4CAAK,yCAAyC;AAC3F;AACA,YAAY,4CAAK,eAAe,sDAAM,YAAY,mBAAmB;AACrE,CAAC,GAAG;;AAEJ;AACA;AACA,WAAW,UAAU;AACrB;AACA;AACA;AACA;AACA;AACA;AACA;AACA,aAAa,4CAAK;AAClB;AACA;AACA,8BAA8B,4CAAK,eAAe,sDAAM,GAAG,OAAO,4CAAK,eAAe,8DAAI,+BAA+B,2CAA2C,EAAE,EAAE;AACxK;AACA,YAAY,4CAAK,eAAe,iEAAiB,kCAAkC,+FAA+F,4CAAK,eAAe,mDAAG,GAAG,iBAAiB;AAC7N,QAAQ,4CAAK,2BAA2B,oBAAoB,OAAO,4CAAK,eAAe,mDAAG,YAAY,eAAe;AACrH,QAAQ,4CAAK,eAAe,mDAAG,GAAG,OAAO,kBAAkB,mDAAmD;AAC9G,YAAY,4CAAK,2BAA2B,mBAAmB;AAC/D,sBAAsB,4CAAK,eAAe,mDAAG,GAAG,6BAA6B;AAC7E,mBAAmB,4CAAK,eAAe,uDAAO,GAAG,2BAA2B;AAC5E;AACA,oBAAoB,EAAE;AACtB;AACA;AACA;AACA;AACA;AACA;;AAEA,sCAAsC,oBAAoB;AAC1D,iBAAiB,yDAAM,mGAAmG,SAAS,6BAA6B,KAAK,0CAA0C,SAAS,6BAA6B,KAAK,kCAAkC,4CAA4C,EAAE,EAAE;AAC5U,gBAAgB,iEAAM,CAAC,mDAAG,2GAA2G,sDAAsD,kCAAkC,QAAQ,iFAAe,2CAA2C,EAAE,oBAAoB,0CAA0C,EAAE,EAAE,oBAAoB,wCAAwC,EAAE;AACja;;AAEA;AACA;AACA,YAAY,MAAM,yBAAyB;AAC3C,gBAAgB,IAAI,OAAO,IAAI;AAC/B;AACA,UAAU,4CAAK;AACf;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,YAAY,4CAAK,eAAe,wDAAQ,GAAG,wCAAwC;AACnF,QAAQ,4CAAK,eAAe,8DAAY;AACxC;AACA;AACA,6BAA6B,4CAAK,4BAA4B,sDAAsD,UAAU,4CAAK,eAAe,wEAAS,GAAG,eAAe;AAC7K;AACA,oBAAoB,4CAAK,oCAAoC,uSAAuS;AACpW;AACA,gBAAgB,4CAAK,kCAAkC,4CAAK,eAAe,oDAAI,GAAG,+CAA+C;AACjI;AACA,SAAS;AACT,CAAC;AACD;AACA;AACA,UAAU,uBAAuB;AACjC;AACA;;AAEA;AACA,uBAAuB,aAAa,EAAE;AACtC;AACA;AACA,gBAAgB,4CAAK,+BAA+B,6GAA6G,cAAc,wBAAwB,4BAA4B,EAAE,EAAE,GAAG;AAC1O;AACA;AACA;AACA;AACA,YAAY,OAAO,yBAAyB;AAC5C;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,2BAA2B,4CAAK;AAChC;AACA;AACA;AACA;AACA;AACA;AACA;AACA,6DAA6D,0BAA0B,EAAE;AACzF;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,0BAA0B,SAAS,6DAAW,2DAA2D;AACzG;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,uCAAuC;AACvC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,6BAA6B,6DAAW;AACxC;AACA;AACA;AACA,2BAA2B,0BAA0B;AACrD;AACA;AACA;AACA;AACA;AACA;AACA;AACA,uBAAuB,4CAAK;AAC5B;AACA,YAAY,4CAAK,eAAe,oDAAI,GAAG,+BAA+B,oBAAoB,EAAE;AAC5F;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,gBAAgB,4CAAK,eAAe,wDAAQ,GAAG,4GAA4G;AAC3J,YAAY,4CAAK,eAAe,mDAAG,YAAY,4GAA4G,mBAAmB,EAAE;AAChL;AACA;AACA;AACA;AACA,2CAA2C,4CAAK;AAChD;AACA,wBAAwB,4CAAK,8BAA8B,qNAAqN,wBAAwB,EAAE,iDAAiD,mCAAmC,EAAE,0BAA0B,iDAAiD;AAC3c,aAAa;AACb;AACA;AACA;AACA;AACA,iBAAiB,0CAA0C;AAC3D;AACA;AACA;AACA,cAAc,4CAAK,eAAe,wEAAS;AAC3C;AACA;AACA,CAAC,CAAC,+CAAS;;AAEX;AACA;AACA;AACA,sCAAsC,SAAS,4CAAK,yCAAyC,iCAAiC,QAAQ,4CAAK,eAAe,wDAAQ,aAAa,eAAe,EAAE,GAAG;;AAEnM;AACA;AACA;AACA,uCAAuC,SAAS,4CAAK,yCAAyC,iCAAiC,QAAQ,4CAAK,eAAe,yDAAS,aAAa,eAAe,EAAE,GAAG;;AAErM;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA,iCAAiC,gDAAgD;AACjF,gCAAgC,uBAAuB;AACvD,wDAAwD,8CAA8C;AACtG,0CAA0C,6CAA6C;AACvF,qDAAqD,mEAAmE;AACxH,gDAAgD,0BAA0B;AAC1E,wCAAwC,wEAAwE,IAAI,MAAM;A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CA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,gBAAgB,4CAAK,eAAe,4CAAK,qEAAqE,kCAAkC,EAAE;AAClJ;AACA;AACA,CAAC,CAAC,+CAAS;;AAEX;AACA;AACA;AACA;AACA,2CAA2C,0CAA0C;;AAErF;AACA;AACA;AACA,KAAK;AACL;AACA;AACA,KAAK;AACL;AACA;AACA,KAAK;AACL;;AAEA;AACA,yDAAyD;AACzD;AACA,CAAC,EAAE,EAAE;;AAEL;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA,cAAc,iEAAU,CAAC,gEAAW;AACpC;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA,aAAa;AACb;AACA;AACA;AACA,aAAa;AACb,SAAS;AACT;AACA;AACA;AACA,aAAa;AACb,SAAS;AACT,KAAK;AACL;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA,SAAS;AACT,KAAK;AACL;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA,aAAa;AACb,SAAS;AACT,KAAK;AACL;AACA;AACA;AACA,SAAS;AACT;AACA;AACA,SAAS;AACT,KAAK;AACL;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;AACA,aAAa;AACb,SAAS;AACT,KAAK;AACL,CAAC;;AAED;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,YAAY,iEAAU,CAAC,gEAAW;AAClC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,iBAAiB;AACjB,aAAa;AACb,SAAS;AACT;AACA;AACA,8CAA8C;AAC9C;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA,aAAa;AACb;AACA;AACA;AACA,aAAa;AACb,SAAS;AACT;AACA;AACA;AACA,SAAS;AACT,KAAK;AACL;AACA,iBAAiB,4BAA4B;AAC7C,gBAAgB,6BAA6B;AAC7C,iBAAiB,8BAA8B;AAC/C,gBAAgB,8BAA8B;AAC9C,iBAAiB,+BAA+B;AAChD,kBAAkB,8BAA8B;AAChD,KAAK;AACL;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA,SAAS;AACT,KAAK;AACL;AACA;AACA;AACA;AACA;AACA;AACA,aAAa;AACb,SAAS;AACT,mBAAmB;AACnB;AACA;AACA;AACA;AACA,aAAa;AACb,SAAS;AACT,KAAK;AACL;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT,KAAK;AACL;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA,SAAS;AACT,KAAK;AACL;AACA;AACA;AACA;AACA;AACA,aAAa;AACb,SAAS;AACT,KAAK;AACL,CAAC;;AAED;AACA;AACA;AACA;AACA,KAAK;AACL,CAAC;;AAED;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA,oBAAoB,iEAAU,CAAC,gEAAW;AAC1C;AACA;AACA;AACA;AACA;AACA;AACA;AACA,aAAa;AACb,SAAS;AACT;AACA;AACA;AACA;AACA,aAAa;AACb;AACA;AACA;AACA,aAAa;AACb,SAAS;AACT;AACA;AACA;AACA,aAAa;AACb,SAAS;AACT;AACA;AACA,SAAS;AACT;AACA;AACA;AACA,aAAa;AACb,SAAS;AACT,KAAK;AACL;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA,aAAa;AACb,SAAS;AACT,KAAK;AACL;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA,aAAa;AACb,SAAS;AACT,KAAK;AACL;AACA;AACA;AACA;AACA;AACA,aAAa;AACb,SAAS;AACT,KAAK;AACL;AACA;AACA;AACA;AACA,SAAS;AACT,KAAK;AACL,CAAC;;AAED;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA,mBAAmB,iEAAU,CAAC,gEAAW;AACzC;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA,aAAa;AACb;AACA;AACA;AACA,aAAa;AACb,SAAS;AACT;AACA;AACA;AACA,aAAa;AACb,SAAS;AACT;AACA;AACA,SAAS;AACT;AACA;AACA;AACA,aAAa;AACb,SAAS;AACT,KAAK;AACL;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA,aAAa;AACb,SAAS;AACT,KAAK;AACL;AACA;AACA;AACA,SAAS;AACT,KAAK;AACL;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA,SAAS;AACT,KAAK;AACL,CAAC;;AAED;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA,YAAY,iEAAU,CAAC,gEAAW;AAClC;AACA;AACA;AACA;AACA;AACA;AACA;AACA,aAAa;AACb,SAAS;AACT;AACA;AACA;AACA;AACA,aAAa;AACb;AACA;AACA;AACA,aAAa;AACb,SAAS;AACT;AACA;AACA;AACA;AACA;AACA,iBAAiB;AACjB,aAAa;AACb,SAAS;AACT;AACA;AACA,SAAS;AACT;AACA;AACA;AACA,aAAa;AACb,SAAS;AACT,KAAK;AACL;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA,aAAa;AACb,SAAS;AACT,KAAK;AACL;AACA;AACA;AACA;AACA,SAAS;AACT,KAAK;AACL;AACA;AACA;AACA;AACA;AACA,aAAa;AACb,SAAS;AACT;AACA;AACA,SAAS;AACT;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA,aAAa;AACb;AACA,SAAS;AACT,KAAK;AACL;AACA;AACA;AACA;AACA,SAAS;AACT,KAAK;AACL;AACA;AACA;AACA;AACA;AACA,aAAa;AACb,SAAS;AACT,KAAK;AACL,CAAC;;AAEsqB","file":"vendor.grommet-controls.50721e56b2b256110583.js","sourcesContent":["import React, { Component, useContext, useEffect } from 'react';\nimport { Box, Text, Heading, FormField, CheckBox, TextInput, DropButton, Button, Keyboard, Calendar, Meter, Select, ResponsiveContext, TextArea } from 'grommet';\nimport styled, { ThemeContext, css, keyframes } from 'styled-components';\nimport { controlBorderStyle, edgeStyle } from 'grommet/utils/styles';\nimport { deepMerge } from 'grommet/utils/object';\nimport { StopFill } from 'grommet-icons/icons/StopFill';\nimport { findDOMNode } from 'react-dom';\nimport { conformToMask, createTextMaskInputElement } from 'text-mask-core';\nimport { createAutoCorrectedDatePipe, emailMask, createNumberMask } from 'text-mask-addons';\nimport { FormDown } from 'grommet-icons/icons/FormDown';\nimport { parseMetricToNum } from 'grommet/utils/mixins';\nimport { normalizeColor } from 'grommet/utils/colors';\nimport { Calendar as Calendar$1 } from 'grommet-icons/icons/Calendar';\nimport { Close } from 'grommet-icons/icons/Close';\nimport { StatusGood } from 'grommet-icons/icons/StatusGood';\nimport { StatusWarning } from 'grommet-icons/icons/StatusWarning';\nimport { StatusCritical } from 'grommet-icons/icons/StatusCritical';\nimport { StatusUnknown } from 'grommet-icons/icons/StatusUnknown';\nimport { StatusInfo } from 'grommet-icons/icons/StatusInfo';\nimport { StatusDisabled } from 'grommet-icons/icons/StatusDisabled';\nimport { Add } from 'grommet-icons/icons/Add';\nimport { Subtract } from 'grommet-icons/icons/Subtract';\nimport { FormView } from 'grommet-icons/icons/FormView';\nimport { Hide } from 'grommet-icons/icons/Hide';\nimport { Previous } from 'grommet-icons/icons/Previous';\nimport { Next } from 'grommet-icons/icons/Next';\nimport { Blank } from 'grommet-icons/icons/Blank';\nimport { LinkDown } from 'grommet-icons/icons/LinkDown';\nimport { LinkUp } from 'grommet-icons/icons/LinkUp';\nimport { Menu } from 'grommet-icons/icons/Menu';\nimport { FormClose } from 'grommet-icons/icons/FormClose';\nimport { backgroundStyle } from 'grommet/utils/background';\nimport { FormNext } from 'grommet-icons/icons/FormNext';\nimport { deepFreeze, deepMerge as deepMerge$1 } from 'grommet/utils';\n\n/*! *****************************************************************************\r\nCopyright (c) Microsoft Corporation. All rights reserved.\r\nLicensed under the Apache License, Version 2.0 (the \"License\"); you may not use\r\nthis file except in compliance with the License. You may obtain a copy of the\r\nLicense at http://www.apache.org/licenses/LICENSE-2.0\r\n\r\nTHIS CODE IS PROVIDED ON AN *AS IS* BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY\r\nKIND, EITHER EXPRESS OR IMPLIED, INCLUDING WITHOUT LIMITATION ANY IMPLIED\r\nWARRANTIES OR CONDITIONS OF TITLE, FITNESS FOR A PARTICULAR PURPOSE,\r\nMERCHANTABLITY OR NON-INFRINGEMENT.\r\n\r\nSee the Apache Version 2.0 License for specific language governing permissions\r\nand limitations under the License.\r\n***************************************************************************** */\r\n/* global Reflect, Promise */\r\n\r\nvar extendStatics = function(d, b) {\r\n extendStatics = Object.setPrototypeOf ||\r\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\r\n function (d, b) { for (var p in b) if (b.hasOwnProperty(p)) d[p] = b[p]; };\r\n return extendStatics(d, b);\r\n};\r\n\r\nfunction __extends(d, b) {\r\n extendStatics(d, b);\r\n function __() { this.constructor = d; }\r\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\r\n}\r\n\r\nvar __assign = function() {\r\n __assign = Object.assign || function __assign(t) {\r\n for (var s, i = 1, n = arguments.length; i < n; i++) {\r\n s = arguments[i];\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p];\r\n }\r\n return t;\r\n };\r\n return __assign.apply(this, arguments);\r\n};\r\n\r\nfunction __rest(s, e) {\r\n var t = {};\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)\r\n t[p] = s[p];\r\n if (s != null && typeof Object.getOwnPropertySymbols === \"function\")\r\n for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {\r\n if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))\r\n t[p[i]] = s[p[i]];\r\n }\r\n return t;\r\n}\r\n\r\nfunction __spreadArrays() {\r\n for (var s = 0, i = 0, il = arguments.length; i < il; i++) s += arguments[i].length;\r\n for (var r = Array(s), k = 0, i = 0; i < il; i++)\r\n for (var a = arguments[i], j = 0, jl = a.length; j < jl; j++, k++)\r\n r[k] = a[j];\r\n return r;\r\n}\r\nfunction __makeTemplateObject(cooked, raw) {\r\n if (Object.defineProperty) { Object.defineProperty(cooked, \"raw\", { value: raw }); } else { cooked.raw = raw; }\r\n return cooked;\r\n}\n\nvar ROUND_MAP = {\r\n 'full': '100%',\r\n};\r\nvar StyledImageStamp = styled.img(templateObject_1 || (templateObject_1 = __makeTemplateObject([\"\\n \", \";\\n \", \"\\n \", \"\\n overflow: hidden; \\n object-fit: cover;\\n border-radius: \", \";\\n -webkit-border-radius: \", \";\\n -moz-border-radius: \", \";\\n\"], [\"\\n \", \";\\n \", \"\\n \", \"\\n overflow: hidden; \\n object-fit: cover;\\n border-radius: \", \";\\n -webkit-border-radius: \", \";\\n -moz-border-radius: \", \";\\n\"])), function (props) { return !props.plain && controlBorderStyle; }, function (props) { return ((!props.contain || props.contain === 'width') && props.size && edgeStyle('width', props.size, false, undefined, props.theme)); }, function (props) { return ((!props.contain || props.contain === 'height') && props.size && edgeStyle('height', props.size, false, undefined, props.theme)); }, function (props) { return ROUND_MAP[props.round] || props.theme.global.edgeSize[props.round]; }, function (props) { return ROUND_MAP[props.round] || props.theme.global.edgeSize[props.round]; }, function (props) { return ROUND_MAP[props.round] || props.theme.global.edgeSize[props.round]; });\r\nvar templateObject_1;\n\nvar SIZE_MAP = {\r\n small: 'medium',\r\n medium: 'large',\r\n large: 'xlarge',\r\n xlarge: 'xxlarge',\r\n};\r\n/**\r\n* A small image stamp used for avatars or image thumbnails\r\n*/\r\nvar ImageStamp = function (_a) {\r\n var size = _a.size, src = _a.src, rest = __rest(_a, [\"size\", \"src\"]);\r\n return (src ? React.createElement(StyledImageStamp, __assign({ src: src, size: SIZE_MAP[size] }, rest)) : null);\r\n};\r\nImageStamp.defaultProps = {\r\n contain: null,\r\n size: 'medium',\r\n plain: false,\r\n};\n\n/**\r\n* An image with some text, can be used as a user Avatar image
\r\n* `import { Avatar } from 'grommet-controls;'`
\r\n* ``
\r\n*/\r\nvar Avatar = function (_a) {\r\n var image = _a.image, title = _a.title, subTitle = _a.subTitle, rest = __rest(_a, [\"image\", \"title\", \"subTitle\"]);\r\n return (React.createElement(Box, { direction: 'row', align: 'center', gap: 'small' },\r\n React.createElement(ImageStamp, __assign({ src: image, round: 'full' }, rest)),\r\n React.createElement(Box, { justify: 'between' },\r\n React.createElement(Text, { weight: 'bold', truncate: true }, title),\r\n React.createElement(Text, { size: 'small', truncate: true }, subTitle))));\r\n};\n\nvar white = '#ffffff';\r\nvar silver = '#c0c0c0';\r\nvar gray = '#808080';\r\nvar black = '#000000';\r\nvar red = '#ff0000';\r\nvar maroon = '#800000';\r\nvar yellow = '#ffff00';\r\nvar olive = '#808000';\r\nvar lime = '#00ff00';\r\nvar green = '#008000';\r\nvar aqua = '#00ffff';\r\nvar teal = '#008080';\r\nvar blue = '#0000ff';\r\nvar navy = '#000080';\r\nvar fuchsia = '#ff00ff';\r\nvar purple = '#800080';\r\nvar basicColors = {\r\n white: white,\r\n silver: silver,\r\n gray: gray,\r\n black: black,\r\n red: red,\r\n maroon: maroon,\r\n yellow: yellow,\r\n olive: olive,\r\n lime: lime,\r\n green: green,\r\n aqua: aqua,\r\n teal: teal,\r\n blue: blue,\r\n navy: navy,\r\n fuchsia: fuchsia,\r\n purple: purple,\r\n};\n\n// eslint-disable-next-line import/prefer-default-export\r\nvar StyledCard = styled(Box)(templateObject_1$1 || (templateObject_1$1 = __makeTemplateObject([\"\\n @media (max-width: \", \"px) {\\n flex-basis: 100%;\\n }\\n\"], [\"\\n @media (max-width: \", \"px) {\\n flex-basis: 100%;\\n }\\n\"])), function (props) { return props.theme.global.breakpoints.small; });\r\nvar templateObject_1$1;\n\n/**\r\n* A Card-type container, all props of Box apply
\r\n* `import { Card } from 'grommet-controls';`
\r\n* ``
\r\n*   ``
\r\n*     `Title`
\r\n*   `
`
\r\n*   ``
\r\n*     `card content goes here`
\r\n*   `
`
\r\n* `
`
\r\n*/\r\nvar Card = function (_a) {\r\n var children = _a.children, rest = __rest(_a, [\"children\"]);\r\n return (React.createElement(ThemeContext.Consumer, null, function (theme) { return (React.createElement(StyledCard, __assign({ theme: theme, overflow: 'hidden' }, rest), children)); }));\r\n};\r\nCard.displayName = 'Card';\r\nCard.defaultProps = {\r\n align: 'center',\r\n border: 'all',\r\n elevation: 'small',\r\n round: 'xsmall',\r\n flex: false,\r\n gap: 'small',\r\n fill: 'horizontal',\r\n background: 'white',\r\n};\r\n/**\r\n* Card Actions to be placed at the bottom of the Card\r\n*/\r\nvar CardActions = function (_a) {\r\n var children = _a.children, _b = _a.pad, pad = _b === void 0 ? 'small' : _b, rest = __rest(_a, [\"children\", \"pad\"]);\r\n return (React.createElement(Box, __assign({ align: 'center', pad: pad, gap: 'small', border: 'top', flex: false, fill: 'horizontal', direction: 'row' }, rest), children));\r\n};\r\nCardActions.displayName = 'CardActions';\r\nCard.CardActions = CardActions;\r\n/**\r\n* Card Title display the card title\r\n*/\r\nvar CardTitle = function (_a) {\r\n var children = _a.children, color = _a.color, textAlign = _a.textAlign, truncate = _a.truncate, _b = _a.level, level = _b === void 0 ? 4 : _b, _c = _a.strong, strong = _c === void 0 ? false : _c, responsive = _a.responsive, rest = __rest(_a, [\"children\", \"color\", \"textAlign\", \"truncate\", \"level\", \"strong\", \"responsive\"]);\r\n return (React.createElement(Box, __assign({ direction: 'row', fill: 'horizontal', border: 'bottom', gap: 'small', flex: false }, rest), typeof children !== 'string' ? children : (React.createElement(Heading, { level: level, margin: 'none', color: color, textAlign: textAlign, truncate: truncate, responsive: responsive }, strong ? React.createElement(\"strong\", null, children) : children))));\r\n};\r\nCardTitle.displayName = 'CardTitle';\r\nCard.CardTitle = CardTitle;\r\n/**\r\n* Card Content\r\n*/\r\nvar CardContent = function (_a) {\r\n var children = _a.children, _b = _a.pad, pad = _b === void 0 ? 'small' : _b, rest = __rest(_a, [\"children\", \"pad\"]);\r\n return (React.createElement(Box, __assign({ pad: pad, fill: true, flex: true }, rest), children));\r\n};\r\nCardContent.displayName = 'CardContent';\r\nCard.CardContent = CardContent;\n\nvar StyledForm = styled.form(templateObject_1$2 || (templateObject_1$2 = __makeTemplateObject([\"\\n width: 100%;\\n\"], [\"\\n width: 100%;\\n\"])));\r\nvar templateObject_1$2;\n\nvar filterByFocusable = function (elements) {\r\n return Array.prototype.filter.call(elements || [], function (element) {\r\n var currentTag = element.tagName.toLowerCase();\r\n var validTags = /(svg|a|area|input|select|textarea|button|iframe|div)$/;\r\n var isValidTag = currentTag.match(validTags) && element.focus;\r\n if (currentTag === \"a\") {\r\n return (isValidTag &&\r\n element.childNodes.length > 0 &&\r\n element.getAttribute(\"href\"));\r\n }\r\n if (currentTag === \"svg\" || currentTag === \"div\") {\r\n return (isValidTag &&\r\n element.hasAttribute(\"tabindex\") &&\r\n element.getAttribute(\"tabindex\") !== \"-1\");\r\n }\r\n return isValidTag;\r\n });\r\n};\n\nvar FormContext = React.createContext({\r\n attachToForm: null,\r\n detachFromForm: null,\r\n getFieldValue: null,\r\n getFieldErrors: null,\r\n onFieldChange: null,\r\n});\r\nvar styledComponents = {\r\n form: StyledForm,\r\n};\r\n/** A Form with built-in validation
\r\n*`import { Form } from 'grommet-controls';`
\r\n*`
`
\r\n*/\r\nvar Form = /** @class */ (function (_super) {\r\n __extends(Form, _super);\r\n function Form(props) {\r\n var _this = _super.call(this, props) || this;\r\n _this.fields = {};\r\n _this.containerRef = React.createRef();\r\n _this.validate = function (data) {\r\n var errors = {};\r\n var addError = function (key, field, message) {\r\n if (!errors[key]) {\r\n errors[key] = [];\r\n }\r\n var msg;\r\n if (typeof message === 'function') {\r\n msg = message(field.description || field.label || key);\r\n }\r\n else {\r\n msg = message;\r\n }\r\n errors[key].push(msg);\r\n };\r\n Object.keys(_this.fields).forEach(function (key) {\r\n var field = _this.fields[key];\r\n var rules = field.validation;\r\n if (rules) {\r\n if (!Array.isArray(rules)) {\r\n rules = [rules];\r\n }\r\n var _loop_1 = function (i) {\r\n var rule = rules[i];\r\n if (typeof rule === 'function') {\r\n var value = data[key];\r\n if (Array.isArray(value)) {\r\n var arrayErrors_1 = [];\r\n value.forEach(function (_v, index) {\r\n var message = rule(data, data[key], index);\r\n if (message) {\r\n arrayErrors_1[index] = message;\r\n }\r\n });\r\n if (arrayErrors_1.length) {\r\n addError(key, field, arrayErrors_1);\r\n }\r\n }\r\n else {\r\n var message = rule(data, data[key]);\r\n if (message) {\r\n addError(key, field, message);\r\n }\r\n }\r\n }\r\n else if (rule !== null && typeof rule === 'object') {\r\n if (rule.rule && typeof rule.rule === 'function') {\r\n var isValid = rule.rule(data, data[key]);\r\n if (!isValid) {\r\n if (typeof rule.message === 'function') {\r\n addError(key, field, rule.message(typeof field.label === 'string' ? field.label : key));\r\n }\r\n else {\r\n addError(key, field, rule.message);\r\n }\r\n }\r\n }\r\n }\r\n };\r\n for (var i = 0; i < rules.length; i += 1) {\r\n _loop_1(i);\r\n }\r\n }\r\n });\r\n if (Object.keys(errors).length === 0) {\r\n return undefined;\r\n }\r\n return errors;\r\n };\r\n _this.onSubmit = function (event) {\r\n var _a = _this.props, onSubmit = _a.onSubmit, onSubmitError = _a.onSubmitError;\r\n var data = _this.state.data;\r\n event.preventDefault();\r\n var errors = _this.validate(data);\r\n if (!errors) {\r\n if (onSubmit) {\r\n onSubmit(data);\r\n }\r\n }\r\n else {\r\n if (onSubmitError) {\r\n onSubmitError(errors);\r\n }\r\n _this.setState({ errors: errors, submitted: true });\r\n }\r\n };\r\n _this.updateObject = function (name, value, e) {\r\n _this.setState(function (prevState) {\r\n var _a;\r\n var data = __assign(__assign({}, prevState.data), (_a = {}, _a[name] = value, _a));\r\n var submitted = _this.state.submitted;\r\n var errors = _this.validate(data);\r\n if (_this.props.onChange) {\r\n _this.props.onChange(name, value, e);\r\n }\r\n if (errors) {\r\n if (_this.props.onInvalidForm) {\r\n _this.props.onInvalidForm(data);\r\n }\r\n }\r\n else if (_this.props.onValidForm) {\r\n _this.props.onValidForm(data);\r\n }\r\n return { data: data, errors: submitted ? errors : prevState.errors };\r\n });\r\n };\r\n _this.attachToForm = function (name, props) {\r\n var _a;\r\n _this.fields = __assign(__assign({}, _this.fields), (_a = {}, _a[name] = props, _a));\r\n };\r\n _this.detachFromForm = function (name) {\r\n delete _this.fields[name];\r\n };\r\n _this.getFieldValue = function (name) { return (_this.state.data[name]); };\r\n _this.getFieldErrors = function (name) { return (_this.state.errors ? _this.state.errors[name] : null); };\r\n _this.state = {\r\n errors: undefined, submitted: false, data: __assign(__assign({}, props.initialValues), props.object),\r\n };\r\n return _this;\r\n }\r\n Form.getDerivedStateFromProps = function (nextProps, prevState) {\r\n if (JSON.stringify(nextProps.object) !== JSON.stringify(prevState.data)) {\r\n return {\r\n data: deepMerge(prevState.data, nextProps.object),\r\n };\r\n }\r\n return null;\r\n };\r\n Form.prototype.componentDidMount = function () {\r\n var focusFirstChild = this.props.focusFirstChild;\r\n if (focusFirstChild) {\r\n var items_1 = this.containerRef.current.getElementsByTagName('*');\r\n items_1 = filterByFocusable(items_1);\r\n if (items_1.length > 0) {\r\n setTimeout(function () {\r\n // @ts-ignore\r\n items_1[0].focus();\r\n }, 0);\r\n }\r\n }\r\n };\r\n Form.prototype.render = function () {\r\n var _a = this.props, \r\n // eslint-disable-next-line @typescript-eslint/no-unused-vars\r\n onSubmitError = _a.onSubmitError, onValidForm = _a.onValidForm, onInvalidForm = _a.onInvalidForm, onSubmit = _a.onSubmit, onChange = _a.onChange, className = _a.className, children = _a.children, a11yTitle = _a.a11yTitle, tag = _a.tag, rest = __rest(_a, [\"onSubmitError\", \"onValidForm\", \"onInvalidForm\", \"onSubmit\", \"onChange\", \"className\", \"children\", \"a11yTitle\", \"tag\"]);\r\n var StyledComponent = styledComponents[tag];\r\n if (!StyledComponent) {\r\n StyledComponent = StyledForm.withComponent(tag);\r\n styledComponents[tag] = StyledComponent;\r\n }\r\n return (React.createElement(StyledComponent, { className: className, onSubmit: this.onSubmit, \"aria-label\": a11yTitle },\r\n React.createElement(Box, { direction: 'row' },\r\n React.createElement(Box, __assign({}, rest),\r\n React.createElement(\"div\", { ref: this.containerRef },\r\n React.createElement(FormContext.Provider, { value: {\r\n attachToForm: this.attachToForm,\r\n detachFromForm: this.detachFromForm,\r\n getFieldValue: this.getFieldValue,\r\n getFieldErrors: this.getFieldErrors,\r\n onFieldChange: this.updateObject,\r\n } }, children))))));\r\n };\r\n Form.defaultProps = {\r\n focusFirstChild: true,\r\n onChange: undefined,\r\n onSubmit: undefined,\r\n onSubmitError: undefined,\r\n onInvalidForm: undefined,\r\n onValidForm: undefined,\r\n initialValues: {},\r\n object: {},\r\n tag: 'form',\r\n basis: 'medium',\r\n };\r\n return Form;\r\n}(Component));\n\nvar WithFormField = function (_a) {\r\n var validation = _a.validation, label = _a.label, description = _a.description, name = _a.name, controlLabel = _a.controlLabel, inField = _a.inField, children = _a.children, other = __rest(_a, [\"validation\", \"label\", \"description\", \"name\", \"controlLabel\", \"inField\", \"children\"]);\r\n var form = useContext(FormContext);\r\n var onFieldChange = form.onFieldChange, getFieldValue = form.getFieldValue, getFieldErrors = form.getFieldErrors;\r\n useEffect(function () {\r\n form.attachToForm(name, { label: label, description: description, validation: validation });\r\n return function () {\r\n form.detachFromForm(name);\r\n };\r\n });\r\n var onChange = function (e) {\r\n var value = e.value, target = e.target;\r\n var targetValue = target ? target.value : undefined;\r\n onFieldChange(name, value || targetValue, e);\r\n };\r\n var getValue = function () {\r\n var value = getFieldValue(name);\r\n return value === undefined ? '' : value;\r\n };\r\n var errors = getFieldErrors(name);\r\n var error = Array.isArray(errors) ? errors[0] : errors;\r\n if (typeof error === 'function') {\r\n error = error(typeof label === 'string' ? label : name);\r\n }\r\n var field = children(__assign({ id: name, name: name, label: inField ? controlLabel : label, value: getValue(), onChange: onChange }, other));\r\n if (!inField) {\r\n return field;\r\n }\r\n return (React.createElement(FormField, { htmlFor: name, label: label || (controlLabel === true && name), error: error }, field));\r\n};\r\nWithFormField.defaultProps = {\r\n validation: undefined,\r\n inField: true,\r\n controlLabel: undefined,\r\n label: undefined,\r\n description: undefined,\r\n Control: React.Component,\r\n};\n\nvar CheckBoxField = function (props) { return (React.createElement(WithFormField, __assign({}, props), function (_a) {\r\n var value = _a.value, onChange = _a.onChange, rest = __rest(_a, [\"value\", \"onChange\"]);\r\n return (React.createElement(Box, { pad: { vertical: 'small' } },\r\n React.createElement(CheckBox, __assign({ checked: value === true, onChange: function () { return onChange({ target: { value: !value } }); } }, rest))));\r\n})); };\n\nvar StyledDropInput = styled(TextInput)(templateObject_1$3 || (templateObject_1$3 = __makeTemplateObject([\"\\n padding-right: \", \"px;\\n\"], [\"\\n padding-right: \",\r\n \"px;\\n\"])), function (props) {\r\n var widgetsBox = props.numWidgets\r\n * (24 + (2 * parseMetricToNum(props.theme.global.edgeSize.small)));\r\n // eslint-disable-next-line no-mixed-operators\r\n return widgetsBox + (parseMetricToNum(props.theme.global.spacing) / 2)\r\n - parseMetricToNum(props.theme.global.control.border.width);\r\n});\r\nvar StyledDropInputContainer = styled.div(templateObject_2 || (templateObject_2 = __makeTemplateObject([\"\\n position: relative;\\n width: 100%;\\n cursor: pointer;\\n\"], [\"\\n position: relative;\\n width: 100%;\\n cursor: pointer;\\n\"])));\r\nvar StyledWidgetsContainer = styled(Box)(templateObject_3 || (templateObject_3 = __makeTemplateObject([\"\\n position: absolute;\\n right: 0;\\n top: 0;\\n\"], [\"\\n position: absolute;\\n right: 0;\\n top: 0;\\n\"])));\r\nvar templateObject_1$3, templateObject_2, templateObject_3;\n\n/**\r\n* An Input control with an optional drop button with the specified 'dropContent' or widgets
\r\n*`import { DropInput } from 'grommet-controls';`
\r\n*`\r\n*  `dropContent={(`
\r\n*    `...`
\r\n*  `]}`
\r\n*`/>`
\r\n*/\r\nvar DropInput = /** @class */ (function (_super) {\r\n __extends(DropInput, _super);\r\n function DropInput() {\r\n var _this = _super !== null && _super.apply(this, arguments) || this;\r\n _this.state = { open: false };\r\n _this.inputRef = React.createRef();\r\n _this.onUpdateValue = function (value) {\r\n var onChange = _this.props.onChange;\r\n var input = findDOMNode(_this.inputRef.current);\r\n input.value = value;\r\n _this.setState({ open: false, value: value });\r\n if (onChange) {\r\n onChange({ target: input });\r\n }\r\n };\r\n _this.onOpen = function (e) {\r\n var _a = _this.props, onOpen = _a.onOpen, disabled = _a.disabled;\r\n _this.setState({ open: true });\r\n if (onOpen && !disabled) {\r\n onOpen(e);\r\n }\r\n };\r\n _this.onClose = function (e) {\r\n var _a = _this.props, onClose = _a.onClose, disabled = _a.disabled;\r\n _this.setState({ open: false });\r\n if (onClose && !disabled) {\r\n onClose(e);\r\n }\r\n };\r\n _this.onKeyDown = function (e) {\r\n var onKeyDown = _this.props.onKeyDown;\r\n _this.setState({ open: true });\r\n if (onKeyDown) {\r\n onKeyDown(e);\r\n }\r\n };\r\n _this.onKeyUp = function (e) {\r\n var onKeyUp = _this.props.onKeyUp;\r\n _this.setState({ open: false });\r\n if (onKeyUp) {\r\n onKeyUp(e);\r\n }\r\n };\r\n return _this;\r\n }\r\n DropInput.getDerivedStateFromProps = function (newProps, oldState) {\r\n if (newProps.value !== oldState.value || newProps.defaultValue !== oldState.defaultValue) {\r\n return {\r\n value: newProps.value,\r\n defaultValue: newProps.defaultValue,\r\n open: false,\r\n };\r\n }\r\n return null;\r\n };\r\n DropInput.prototype.render = function () {\r\n var _this = this;\r\n var _a = this.props, a11yTitle = _a.a11yTitle, a11yDropTitle = _a.a11yDropTitle, dropAlign = _a.dropAlign, dropTarget = _a.dropTarget, update = _a.update, widgets = _a.widgets, \r\n // eslint-disable-next-line @typescript-eslint/no-unused-vars\r\n onOpen = _a.onOpen, onClose = _a.onClose, onKeyDown = _a.onKeyDown, onKeyUp = _a.onKeyUp, defaultValue = _a.defaultValue, dropContent = _a.dropContent, dropIcon = _a.dropIcon, disabled = _a.disabled, rest = __rest(_a, [\"a11yTitle\", \"a11yDropTitle\", \"dropAlign\", \"dropTarget\", \"update\", \"widgets\", \"onOpen\", \"onClose\", \"onKeyDown\", \"onKeyUp\", \"defaultValue\", \"dropContent\", \"dropIcon\", \"disabled\"]);\r\n var open = this.state.open;\r\n if (typeof update === 'function') {\r\n update(this.onUpdateValue);\r\n }\r\n var numWidgets = (dropContent ? 1 : 0) + (widgets ? widgets.length : 0);\r\n var decorations;\r\n if (numWidgets > 0) {\r\n var drop = void 0;\r\n if (dropContent) {\r\n drop = (React.createElement(DropButton, { a11yTitle: a11yDropTitle, disabled: disabled, dropAlign: dropAlign, dropTarget: dropTarget, open: open, tabIndex: -1, focusIndicator: false, onOpen: this.onOpen, onClose: this.onClose, dropContent: dropContent, icon: dropIcon }));\r\n }\r\n decorations = (React.createElement(StyledWidgetsContainer, { align: 'center', direction: 'row' },\r\n widgets.map(function (widget, index) { return (React.createElement(Button, __assign({ disabled: disabled, tabIndex: -1, key: \"widget_\" + index }, widget))); }),\r\n drop));\r\n }\r\n return (React.createElement(Keyboard, { onDown: this.onKeyDown, onUp: this.onKeyUp },\r\n React.createElement(StyledDropInputContainer, null,\r\n React.createElement(ThemeContext.Consumer, null, function (theme) { return (React.createElement(StyledDropInput, __assign({ ref: _this.inputRef, theme: theme, disabled: disabled, numWidgets: numWidgets, \"aria-label\": a11yTitle, defaultValue: defaultValue ? defaultValue.toString() : undefined }, rest))); }),\r\n decorations)));\r\n };\r\n DropInput.defaultProps = {\r\n dropAlign: { top: 'bottom', right: 'left' },\r\n dropIcon: (React.createElement(FormDown, null)),\r\n type: 'text',\r\n widgets: [],\r\n };\r\n return DropInput;\r\n}(Component));\n\nvar strCaretTrap = '[]';\r\nvar processCaretTraps = function (mask) {\r\n var indexOfCaretTrap;\r\n while (indexOfCaretTrap = mask.indexOf(strCaretTrap), indexOfCaretTrap !== -1) { // eslint-disable-line\r\n mask.splice(indexOfCaretTrap, 1);\r\n }\r\n return mask;\r\n};\r\n// eslint-disable-next-line import/prefer-default-export\r\nvar transformMaskedValue = function (value, providedMask, props) {\r\n if (!providedMask) {\r\n return value.toString();\r\n }\r\n var pipe = props.pipe;\r\n var safeValue;\r\n if (value === undefined || value === null) {\r\n safeValue = '';\r\n }\r\n else {\r\n safeValue = value.toString();\r\n }\r\n var mask;\r\n if (typeof providedMask === 'object' && providedMask.pipe !== undefined && providedMask.mask !== undefined) {\r\n // eslint-disable-next-line no-param-reassign\r\n providedMask = providedMask.mask;\r\n (pipe = providedMask.pipe);\r\n }\r\n if (typeof providedMask === 'function') {\r\n mask = providedMask(safeValue, __assign(__assign({}, props), { pipe: pipe }));\r\n // disable masking if `mask` is `false`\r\n if (mask === false) {\r\n return safeValue;\r\n }\r\n // The processed mask is what we're interested in\r\n mask = processCaretTraps(mask);\r\n // If the `providedMask` is not a function, we just use it as-is.\r\n }\r\n else {\r\n mask = providedMask;\r\n }\r\n var conformedValue = safeValue;\r\n var guide = props.guide, placeholderChar = props.placeholderChar, placeholder = props.placeholder, currentCaretPosition = props.currentCaretPosition, showMask = props.showMask, keepCharPositions = props.keepCharPositions;\r\n var conformToMaskConfig = {\r\n previousPlaceholder: placeholder,\r\n guide: guide,\r\n placeholderChar: placeholderChar,\r\n pipe: pipe,\r\n currentCaretPosition: currentCaretPosition,\r\n keepCharPositions: keepCharPositions,\r\n };\r\n var conformed = conformToMask(safeValue, mask, conformToMaskConfig);\r\n if (conformed) {\r\n (conformedValue = conformed.conformedValue);\r\n }\r\n if (typeof pipe === 'function') {\r\n var pipeResults = pipe(conformedValue, __assign({ rawValue: safeValue }, conformToMaskConfig));\r\n if (typeof pipeResults === 'string') {\r\n conformedValue = pipeResults;\r\n }\r\n }\r\n if (conformedValue === placeholder) {\r\n conformedValue = showMask ? placeholder : '';\r\n }\r\n return conformedValue;\r\n};\n\nvar maskedNumberValue = function (_a) {\r\n var value = _a.value, prefix = _a.prefix, suffix = _a.suffix, thousandsSeparatorSymbol = _a.thousandsSeparatorSymbol;\r\n var val;\r\n if (typeof value === 'string') {\r\n val = value.replace(new RegExp(\"[\" + prefix + suffix + thousandsSeparatorSymbol + \"]\", 'g'), '');\r\n val = parseFloat(val);\r\n if (Number.isNaN(val)) {\r\n val = undefined;\r\n }\r\n }\r\n else {\r\n val = value;\r\n }\r\n return val;\r\n};\r\nvar createMinMaxInputPipe = function (_a) {\r\n var min = _a.min, max = _a.max, mask = _a.mask, props = __rest(_a, [\"min\", \"max\", \"mask\"]);\r\n return (function (conformedValue) {\r\n if (typeof min === 'number' || typeof max === 'number') {\r\n var value = maskedNumberValue(__assign(__assign({}, props), { value: conformedValue }));\r\n if (typeof value === 'number') {\r\n if (typeof min === 'number' && value < min) {\r\n var resolved = transformMaskedValue(min, mask, props);\r\n if (resolved === undefined) {\r\n return undefined;\r\n }\r\n return { value: resolved };\r\n }\r\n if (typeof max === 'number' && value > max) {\r\n var resolved = transformMaskedValue(max, mask, props);\r\n if (resolved === undefined) {\r\n return undefined;\r\n }\r\n return { value: resolved };\r\n }\r\n }\r\n }\r\n return { value: conformedValue.toString() };\r\n });\r\n};\n\n/** A masked Input control with an optional drop button with the specified dropContent
\r\n* `import { MakedInput } from 'grommet-controls';`
\r\n* ``
\r\n*/\r\nvar MaskedInput = /** @class */ (function (_super) {\r\n __extends(MaskedInput, _super);\r\n function MaskedInput() {\r\n var _this = _super !== null && _super.apply(this, arguments) || this;\r\n _this.textMaskInputElement = null;\r\n _this.inputControlRef = React.createRef();\r\n _this.onInput = function (event) {\r\n var onInput = _this.props.onInput;\r\n if (_this.textMaskInputElement) {\r\n _this.textMaskInputElement.update(event.target.value);\r\n }\r\n if (onInput) {\r\n onInput(event);\r\n }\r\n };\r\n return _this;\r\n }\r\n MaskedInput.prototype.initTextMask = function () {\r\n var _a = this, props = _a.props, value = _a.props.value;\r\n if (props.mask && this.inputControlRef) {\r\n this.textMaskInputElement = createTextMaskInputElement(__assign({ inputElement: findDOMNode(this.inputControlRef.current).getElementsByTagName('input')[0] }, props));\r\n this.textMaskInputElement.update(value);\r\n }\r\n };\r\n MaskedInput.prototype.componentDidMount = function () {\r\n this.initTextMask();\r\n };\r\n MaskedInput.prototype.componentDidUpdate = function () {\r\n this.initTextMask();\r\n };\r\n MaskedInput.prototype.maskedValue = function (value) {\r\n if (value === undefined) {\r\n return undefined;\r\n }\r\n var mask = this.props.mask;\r\n if (value) {\r\n var conformed = transformMaskedValue(value, mask, this.props);\r\n return conformed;\r\n }\r\n return value;\r\n };\r\n MaskedInput.prototype.render = function () {\r\n var _a = this.props, defaultValue = _a.defaultValue, \r\n // eslint-disable-next-line @typescript-eslint/no-unused-vars\r\n value = _a.value, mask = _a.mask, guide = _a.guide, showMask = _a.showMask, pipe = _a.pipe, placeholderChar = _a.placeholderChar, keepCharPositions = _a.keepCharPositions, rest = __rest(_a, [\"defaultValue\", \"value\", \"mask\", \"guide\", \"showMask\", \"pipe\", \"placeholderChar\", \"keepCharPositions\"]);\r\n return (React.createElement(DropInput, __assign({ ref: this.inputControlRef, value: this.maskedValue(value), defaultValue: this.maskedValue(defaultValue), onInput: this.onInput }, rest)));\r\n };\r\n MaskedInput.defaultProps = {\r\n type: 'text',\r\n guide: true,\r\n showMask: false,\r\n placeholderChar: '\\u2000',\r\n };\r\n MaskedInput.alphabetic = /[A-Z]/i;\r\n MaskedInput.placeholderChars = {\r\n whitespace: '\\u2000',\r\n underscore: '_',\r\n };\r\n MaskedInput.digit = /\\d/;\r\n MaskedInput.createAutoCorrectedDatePipe = createAutoCorrectedDatePipe;\r\n MaskedInput.emailMask = emailMask;\r\n MaskedInput.createNumberMask = createNumberMask;\r\n MaskedInput.createMinMaxInputPipe = createMinMaxInputPipe;\r\n MaskedInput.maskedNumberValue = maskedNumberValue;\r\n return MaskedInput;\r\n}(Component));\n\nvar sizeStyle = function (props) {\r\n var data = props.theme.calendar[props.size];\r\n return css(templateObject_1$4 || (templateObject_1$4 = __makeTemplateObject([\"\\n font-size: \", \";\\n line-height: \", \";\\n \"], [\"\\n font-size: \", \";\\n line-height: \", \";\\n \"])), data.fontSize, data.lineHeight);\r\n};\r\nvar StyledColors = styled.div(templateObject_2$1 || (templateObject_2$1 = __makeTemplateObject([\"\\n \", \"\\n\"], [\"\\n \", \"\\n\"])), function (props) { return sizeStyle(props); });\r\nvar StyledRows = styled.div(templateObject_3$1 || (templateObject_3$1 = __makeTemplateObject([\"\\n position: relative;\\n\"], [\"\\n position: relative;\\n\"])));\r\nvar StyledRow = styled.div(templateObject_4 || (templateObject_4 = __makeTemplateObject([\"\\n position: relative;\\n display: flex;\\n flex-direction: row;\\n flex-justify: between;\\n\"], [\"\\n position: relative;\\n display: flex;\\n flex-direction: row;\\n flex-justify: between;\\n\"])));\r\nvar StyledColorContainer = styled.div(templateObject_5 || (templateObject_5 = __makeTemplateObject([\"\\n flex: 0 0;\\n\"], [\"\\n flex: 0 0;\\n\"])));\r\nvar colorSizeStyle = function (props) {\r\n var data = props.theme.calendar[props.size];\r\n return css(templateObject_6 || (templateObject_6 = __makeTemplateObject([\"\\n width: \", \";\\n height: \", \";\\n \"], [\"\\n width: \", \";\\n height: \", \";\\n \"])), data.daySize, data.daySize);\r\n};\r\nvar StyledColor = styled(Button)(templateObject_7 || (templateObject_7 = __makeTemplateObject([\"\\n top: 0;\\n position: absolute;\\n display: flex;\\n justify-content: center;\\n align-items: center;\\n \", \"\\n span {\\n visibility: hidden;\\n }; \\n transition: transform .2s;\\n &:hover {\\n z-index: 10;\\n width: auto;\\n -webkit-transform:scale(2);\\n -moz-transform:scale(2);\\n transform:scale(2);\\n span {\\n visibility: visible;\\n };\\n );\\n\"], [\"\\n top: 0;\\n position: absolute;\\n display: flex;\\n justify-content: center;\\n align-items: center;\\n \", \"\\n span {\\n visibility: hidden;\\n }; \\n transition: transform .2s;\\n &:hover {\\n z-index: 10;\\n width: auto;\\n -webkit-transform:scale(2);\\n -moz-transform:scale(2);\\n transform:scale(2);\\n span {\\n visibility: visible;\\n };\\n );\\n\"])), function (props) { return colorSizeStyle(props); });\r\nvar templateObject_1$4, templateObject_2$1, templateObject_3$1, templateObject_4, templateObject_5, templateObject_6, templateObject_7;\n\nvar buildState = function (props) {\r\n var colors = props.colors, color = props.color, columns = props.columns, wrap = props.wrap;\r\n var colorRows = [];\r\n var lastRow = null;\r\n if (colors) {\r\n Object.keys(colors).forEach(function (item) {\r\n if (typeof colors[item] === 'object') {\r\n var row_1 = { name: item, colors: [], buttonRef: React.createRef() };\r\n Object.keys(colors[item]).forEach(function (colorName) {\r\n var colorsColor = colors[item][colorName];\r\n row_1.colors.push({ name: colorName, color: colorsColor });\r\n });\r\n colorRows.push(row_1);\r\n }\r\n else {\r\n if (!lastRow) {\r\n lastRow = { name: undefined, colors: [] };\r\n colorRows.push(lastRow);\r\n }\r\n lastRow.colors.push({ name: item, color: colors[item], buttonRef: React.createRef() });\r\n }\r\n });\r\n }\r\n var colorsPerRow = columns\r\n || (colorRows.length === 1 ? Math.sqrt(colorRows[0].colors.length)\r\n : colorRows.reduce(function (res, row) { return (Math.min(res, row.colors.length)); }, Number.MAX_SAFE_INTEGER));\r\n var wrapColors = wrap;\r\n if (wrapColors === undefined) {\r\n wrapColors = columns === undefined && colorRows.length === 1;\r\n }\r\n if (wrapColors) {\r\n var finalRows_1 = [];\r\n colorRows.forEach(function (row) {\r\n while (row.colors.length > 0) {\r\n finalRows_1.push({ name: row.name, colors: row.colors.splice(0, colorsPerRow) });\r\n }\r\n });\r\n colorRows = finalRows_1;\r\n }\r\n else {\r\n colorRows = colorRows.map(function (row) { return (__assign(__assign({}, row), { colors: row.colors.filter(function (_, index) { return (index < colorsPerRow); }) })); });\r\n }\r\n var activeRow = 0;\r\n var activeColor = 0;\r\n colorRows.find(function (row, rowIndex) { return row.colors.find(function (item, colorIndex) {\r\n var found = item.color === color;\r\n if (found) {\r\n activeRow = rowIndex;\r\n activeColor = colorIndex;\r\n }\r\n return found;\r\n }); });\r\n return { colorRows: colorRows, activeRow: activeRow, activeColor: activeColor };\r\n};\r\n/** A color selection element, with custom color palettes.
\r\n*`import { Colors } from 'grommet-controls';`
\r\n*``
\r\n*/\r\nvar Colors = /** @class */ (function (_super) {\r\n __extends(Colors, _super);\r\n function Colors(props) {\r\n var _this = _super.call(this, props) || this;\r\n _this.setFocus = false;\r\n _this.timer = 0;\r\n _this.setActive = function (_a) {\r\n var rowIndex = _a.rowIndex, colorIndex = _a.colorIndex;\r\n var colorRows = _this.state.colorRows;\r\n _this.setFocus = true;\r\n var activeRow = Math.min(Math.max(0, rowIndex), colorRows.length - 1);\r\n var color = Math.max(0, colorIndex);\r\n var activeColor = Math.min(color, colorRows[activeRow].colors.length - 1);\r\n _this.setState({\r\n activeRow: activeRow,\r\n activeColor: activeColor,\r\n });\r\n };\r\n _this.onClickColor = function (_a) {\r\n var color = _a.color, rowIndex = _a.rowIndex, colorIndex = _a.colorIndex, rowName = _a.rowName, colorName = _a.colorName;\r\n return function () {\r\n var onSelect = _this.props.onSelect;\r\n _this.setActive({ rowIndex: rowIndex, colorIndex: colorIndex });\r\n if (onSelect) {\r\n onSelect({ color: color, rowName: rowName, colorName: colorName });\r\n }\r\n };\r\n };\r\n _this.state = buildState(props);\r\n return _this;\r\n }\r\n Colors.getDerivedStateFromProps = function (nextProps) {\r\n return buildState(nextProps);\r\n };\r\n Colors.prototype.componentDidUpdate = function () {\r\n if (this.setFocus) {\r\n var _a = this.state, activeRow = _a.activeRow, activeColor = _a.activeColor, colorRows = _a.colorRows;\r\n this.setFocus = false;\r\n if (colorRows[activeRow]\r\n && colorRows[activeRow].colors[activeColor]\r\n && colorRows[activeRow].colors[activeColor].buttonRef) {\r\n var buttonNode = findDOMNode(colorRows[activeRow].colors[activeColor].buttonRef.current);\r\n if (buttonNode) {\r\n buttonNode.scrollIntoView();\r\n buttonNode.focus();\r\n }\r\n }\r\n }\r\n };\r\n Colors.prototype.componentWillUnmount = function () {\r\n clearTimeout(this.timer);\r\n };\r\n Colors.prototype.render = function () {\r\n var _this = this;\r\n var _a = this.props, \r\n // eslint-disable-next-line @typescript-eslint/no-unused-vars\r\n wrap = _a.wrap, onSelect = _a.onSelect, columns = _a.columns, size = _a.size, rest = __rest(_a, [\"wrap\", \"onSelect\", \"columns\", \"size\"]);\r\n var _b = this.state, colorRows = _b.colorRows, activeRow = _b.activeRow, activeColor = _b.activeColor;\r\n var colors = function (theme, cellSize) { return (colorRows.map(function (row, rowIndex) { return (React.createElement(StyledRow, { key: \"row_\" + rowIndex, theme: theme, style: { width: cellSize * row.colors.length + \"px\", height: cellSize + \"px\" } }, row.colors.map(function (color, colorIndex) {\r\n var isActive = activeRow === rowIndex && activeColor === colorIndex;\r\n var colorStyle = {\r\n backgroundColor: color.color,\r\n color: normalizeColor('text', theme),\r\n left: cellSize * colorIndex + \"px\",\r\n };\r\n return (React.createElement(StyledColorContainer, { key: \"color_\" + colorIndex, theme: theme },\r\n React.createElement(StyledColor\r\n // eslint-disable-next-line no-param-reassign\r\n , { \r\n // eslint-disable-next-line no-param-reassign\r\n ref: color.buttonRef, style: colorStyle, size: size, theme: theme, tabIndex: isActive ? 0 : -1, a11yTitle: (row.name !== undefined ? row.name : '') + \" \" + color.name, plain: true, active: isActive, hoverIndicator: 'background', onClick: _this.onClickColor({\r\n color: color.color,\r\n rowIndex: rowIndex,\r\n colorIndex: colorIndex,\r\n colorName: color.name,\r\n rowName: row.name,\r\n }) },\r\n React.createElement(\"span\", null, color.color))));\r\n }))); })); };\r\n return (React.createElement(ThemeContext.Consumer, null, function (theme) {\r\n var cellSize = parseMetricToNum(theme.calendar[size].daySize);\r\n return (React.createElement(StyledColors, __assign({ size: size, theme: theme }, rest),\r\n React.createElement(Keyboard, { onUp: function (event) {\r\n event.preventDefault();\r\n _this.setActive({ rowIndex: activeRow - 1, colorIndex: activeColor });\r\n }, onDown: function (event) {\r\n event.preventDefault();\r\n _this.setActive({ rowIndex: activeRow + 1, colorIndex: activeColor });\r\n }, onLeft: function () { return _this.setActive({ rowIndex: activeRow, colorIndex: activeColor - 1 }); }, onRight: function () { return _this.setActive({ rowIndex: activeRow, colorIndex: activeColor + 1 }); } },\r\n React.createElement(Box, null,\r\n React.createElement(StyledRows, { style: { height: cellSize * colorRows.length + \"px\" } }, colors(theme, cellSize))))));\r\n }));\r\n };\r\n Colors.defaultProps = {\r\n size: 'medium',\r\n };\r\n return Colors;\r\n}(Component));\n\nvar StyledColorButton = styled.span(templateObject_1$5 || (templateObject_1$5 = __makeTemplateObject([\"\\n display: inline-flex;\\n svg {\\n border: \", \";\\n fill: \", \";\\n stroke: \", \";\\n transition: none;\\n }\\n\"], [\"\\n display: inline-flex;\\n svg {\\n border: \", \";\\n fill: \", \";\\n stroke: \", \";\\n transition: none;\\n }\\n\"])), function (props) { return props.theme.button.border.width + \" solid \" + props.theme.global.colors.border; }, function (props) { return props.selectedColor; }, function (props) { return props.selectedColor; });\r\n/** A masked color entry field, with a drop button to select a color
\r\n* All properties of MaskedInput apply
\r\n* `import { ColorInput } from 'grommet-controls';`
\r\n* ``
\r\n*/\r\nvar ColorInput = /** @class */ (function (_super) {\r\n __extends(ColorInput, _super);\r\n function ColorInput(props) {\r\n var _this = _super.call(this, props) || this;\r\n _this.upDateValue = null;\r\n _this.onChange = function (e) {\r\n var onChange = _this.props.onChange;\r\n _this.setState({ selectedColor: e.target.value });\r\n if (onChange) {\r\n onChange(e);\r\n }\r\n };\r\n _this.onSelect = function (_a) {\r\n var color = _a.color;\r\n _this.setState({ selectedColor: color });\r\n _this.upDateValue(color);\r\n };\r\n _this.state = { selectedColor: props.value || props.defaultValue };\r\n return _this;\r\n }\r\n ColorInput.getDerivedStateFromProps = function (nextProps) {\r\n return {\r\n selectedColor: nextProps.value,\r\n };\r\n };\r\n ColorInput.prototype.render = function () {\r\n var _this = this;\r\n var _a = this.props, columns = _a.columns, wrap = _a.wrap, colors = _a.colors, size = _a.size, rest = __rest(_a, [\"columns\", \"wrap\", \"colors\", \"size\"]);\r\n var selectedColor = this.state.selectedColor;\r\n return (React.createElement(ThemeContext.Consumer, null, function (theme) { return (React.createElement(MaskedInput, __assign({ update: function (update) { _this.upDateValue = update; }, dropIcon: (React.createElement(StyledColorButton, { theme: theme, selectedColor: selectedColor },\r\n React.createElement(StopFill, null))), dropContent: (React.createElement(Colors, { color: selectedColor, colors: colors, onSelect: _this.onSelect, columns: columns, wrap: wrap, size: size })), onChange: _this.onChange }, rest))); }));\r\n };\r\n ColorInput.defaultProps = {\r\n size: 'small',\r\n mask: ['#', /[0-9a-fA-F]/, /[0-9a-fA-F]/, /[0-9a-fA-F]/, /[0-9a-fA-F]/, /[0-9a-fA-F]/, /[0-9a-fA-F]/],\r\n };\r\n return ColorInput;\r\n}(Component));\r\nvar templateObject_1$5;\n\n/**\r\n * A Color selection field with form validation
\r\n */\r\nvar ColorInputField = function (props) { return (React.createElement(WithFormField, __assign({}, props), function (childProps) { return React.createElement(ColorInput, __assign({}, childProps)); })); };\n\nvar smallDate = function (date, locale) {\r\n if (locale === void 0) { locale = 'en-us'; }\r\n return ((new Date(date)).toLocaleDateString(locale, {\r\n year: 'numeric',\r\n month: '2-digit',\r\n day: '2-digit',\r\n }));\r\n};\r\nvar shortDate = function (date, locale) {\r\n if (locale === void 0) { locale = 'en-us'; }\r\n return ((new Date(date)).toLocaleDateString(locale, {\r\n year: 'numeric',\r\n month: 'long',\r\n day: 'numeric',\r\n }));\r\n};\r\nvar longDate = function (date, locale) {\r\n if (locale === void 0) { locale = 'en-us'; }\r\n return ((new Date(date)).toLocaleDateString(locale, {\r\n weekday: 'short',\r\n year: 'numeric',\r\n month: 'short',\r\n day: 'numeric',\r\n hour: '2-digit',\r\n minute: '2-digit',\r\n }));\r\n};\n\n/**\r\n* A masked date entry field with a drop down calendar
\r\n* All properties of MaskedInput apply
\r\n* `import { DateInput } from 'grommet-controls';`
\r\n* ``
\r\n*/\r\nvar DateInput = /** @class */ (function (_super) {\r\n __extends(DateInput, _super);\r\n function DateInput() {\r\n var _this = _super !== null && _super.apply(this, arguments) || this;\r\n _this.upDateValue = null;\r\n _this.onSelect = function (isoDate) {\r\n var date = new Date(isoDate);\r\n _this.upDateValue(smallDate(date));\r\n };\r\n return _this;\r\n }\r\n DateInput.prototype.render = function () {\r\n var _this = this;\r\n var _a = this.props, value = _a.value, bounds = _a.bounds, dates = _a.dates, disabledDates = _a.disabledDates, autocorrect = _a.autocorrect, firstDayOfWeek = _a.firstDayOfWeek, locale = _a.locale, size = _a.size, userMask = _a.mask, maskFormat = _a.maskFormat, rest = __rest(_a, [\"value\", \"bounds\", \"dates\", \"disabledDates\", \"autocorrect\", \"firstDayOfWeek\", \"locale\", \"size\", \"mask\", \"maskFormat\"]);\r\n var mask;\r\n if (userMask) {\r\n mask = { mask: userMask };\r\n }\r\n else if (autocorrect) {\r\n mask = {\r\n mask: [/\\d/, /\\d/, '/', /\\d/, /\\d/, '/', /\\d/, /\\d/, /\\d/, /\\d/],\r\n pipe: MaskedInput.createAutoCorrectedDatePipe(maskFormat),\r\n keepCharPositions: true,\r\n };\r\n }\r\n else {\r\n mask = { mask: [/\\d/, /\\d/, '/', /\\d/, /\\d/, '/', /\\d/, /\\d/, /\\d/, /\\d/] };\r\n }\r\n var controlledValue = value === undefined ? '' : value;\r\n return (React.createElement(MaskedInput, __assign({ update: function (update) { _this.upDateValue = update; }, value: controlledValue, dropContent: (React.createElement(Box, { pad: 'small' },\r\n React.createElement(Calendar, { date: controlledValue.toString(), onSelect: this.onSelect, bounds: bounds, dates: dates, disabled: disabledDates, firstDayOfWeek: firstDayOfWeek, locale: locale, size: size }))) }, __assign(__assign({}, rest), mask))));\r\n };\r\n DateInput.defaultProps = {\r\n dropIcon: React.createElement(Calendar$1, null),\r\n size: 'small',\r\n a11yDropTitle: 'Open calendar',\r\n };\r\n return DateInput;\r\n}(Component));\n\n/**\r\n * A Date input field with form validation
\r\n */\r\nvar DateInputField = function (props) { return (React.createElement(WithFormField, __assign({}, props), function (childProps) { return React.createElement(DateInput, __assign({}, childProps)); })); };\n\n/**\r\n * A masked input with a default mask for handling email addresses
\r\n * All properties of MaskedInput apply
\r\n * `import { EmailInput } from 'grommet-controls';`
\r\n * ``
\r\n */\r\nvar EmailInput = function (props) { return (React.createElement(MaskedInput, __assign({ mask: MaskedInput.emailMask, inputMode: 'email' }, props))); };\n\n/**\r\n * An email input field with form validation
\r\n */\r\nvar EmailInputField = function (props) { return (React.createElement(WithFormField, __assign({}, props), function (childProps) { return React.createElement(EmailInput, __assign({}, childProps)); })); };\n\nvar StyledHeader = styled(Box)(templateObject_1$6 || (templateObject_1$6 = __makeTemplateObject([\"\\n position: \", \";\\n \", \"\\n\"], [\"\\n position: \", \";\\n \",\r\n \"\\n\"])), function (props) { return props.position; }, function (props) {\r\n if (props.position === 'fixed' || props.position === 'absolute' || props.position === 'sticky') {\r\n return \"\\n top: 0;\\n left: auto;\\n right: 0; \\n z-index: \" + props.zIndex + \";\\n \";\r\n }\r\n return undefined;\r\n});\r\nvar templateObject_1$6;\n\n/**\r\n * A page header component\r\n * ```$ npm install grommet-controls\r\n * import { Header } from 'grommet-controls';\r\n *
\r\n * ...\r\n *
\r\n * ```\r\n */\r\nvar Header = function (_a) {\r\n var children = _a.children, rest = __rest(_a, [\"children\"]);\r\n return (React.createElement(StyledHeader, __assign({ tag: 'header' }, rest), children));\r\n};\r\nHeader.defaultProps = {\r\n position: 'relative',\r\n zIndex: 10,\r\n direction: 'row',\r\n background: 'brand',\r\n fill: 'horizontal',\r\n justify: 'between',\r\n align: 'center',\r\n elevation: 'medium',\r\n pad: 'medium',\r\n};\n\nvar StyledIconButton = styled(Button)(templateObject_1$7 || (templateObject_1$7 = __makeTemplateObject([\"\\n border-radius: 50%;\\n\"], [\"\\n border-radius: 50%;\\n\"])));\r\nvar templateObject_1$7;\n\n/** A Button with a hover effect, all properties of Button apply
\r\n * `import { IconButton } from 'grommet-controls';`
\r\n * ``
\r\n */\r\nvar IconButton = function (props) { return (React.createElement(StyledIconButton, __assign({}, props, { hoverIndicator: {\r\n dark: 'dark-2',\r\n light: 'light-2',\r\n } }))); };\n\n/**\r\n * A masked input field with form validation
\r\n */\r\nvar MaskedInputField = function (props) { return (React.createElement(WithFormField, __assign({}, props), function (childProps) { return React.createElement(MaskedInput, __assign({}, childProps)); })); };\n\nvar pink = {\r\n '50': '#fce4ec', '100': '#f8bbd0', '200': '#f48fb1', '300': '#f06292', '400': '#ec407a', '500': '#e91e63', '600': '#d81b60', '700': '#c2185b', '800': '#ad1457', '900': '#880e4f', 'a100': '#ff80ab', 'a200': '#ff4081', 'a400': '#f50057', 'a700': '#c51162',\r\n};\r\nvar purple$1 = {\r\n '50': '#f3e5f5', '100': '#e1bee7', '200': '#ce93d8', '300': '#ba68c8', '400': '#ab47bc', '500': '#9c27b0', '600': '#8e24aa', '700': '#7b1fa2', '800': '#6a1b9a', '900': '#4a148c', 'a100': '#ea80fc', 'a200': '#e040fb', 'a400': '#d500f9', 'a700': '#aa00ff',\r\n};\r\nvar deepPurple = {\r\n '50': '#ede7f6', '100': '#d1c4e9', '200': '#b39ddb', '300': '#9575cd', '400': '#7e57c2', '500': '#673ab7', '600': '#5e35b1', '700': '#512da8', '800': '#4527a0', '900': '#311b92', 'a100': '#b388ff', 'a200': '#7c4dff', 'a400': '#651fff', 'a700': '#6200ea',\r\n};\r\nvar indigo = {\r\n '50': '#e8eaf6', '100': '#c5cae9', '200': '#9fa8da', '300': '#7986cb', '400': '#5c6bc0', '500': '#3f51b5', '600': '#3949ab', '700': '#303f9f', '800': '#283593', '900': '#1a237e', 'a100': '#8c9eff', 'a200': '#536dfe', 'a400': '#3d5afe', 'a700': '#304ffe',\r\n};\r\nvar blue$1 = {\r\n '50': '#e3f2fd', '100': '#bbdefb', '200': '#90caf9', '300': '#64b5f6', '400': '#42a5f5', '500': '#2196f3', '600': '#1e88e5', '700': '#1976d2', '800': '#1565c0', '900': '#0d47a1', 'a100': '#82b1ff', 'a200': '#448aff', 'a400': '#2979ff', 'a700': '#2962ff',\r\n};\r\nvar lightBlue = {\r\n '50': '#e1f5fe', '100': '#b3e5fc', '200': '#81d4fa', '300': '#4fc3f7', '400': '#29b6f6', '500': '#03a9f4', '600': '#039be5', '700': '#0288d1', '800': '#0277bd', '900': '#01579b', 'a100': '#80d8ff', 'a200': '#40c4ff', 'a400': '#00b0ff', 'a700': '#0091ea',\r\n};\r\nvar cyan = {\r\n '50': '#e0f7fa', '100': '#b2ebf2', '200': '#80deea', '300': '#4dd0e1', '400': '#26c6da', '500': '#00bcd4', '600': '#00acc1', '700': '#0097a7', '800': '#00838f', '900': '#006064', 'a100': '#84ffff', 'a200': '#18ffff', 'a400': '#00e5ff', 'a700': '#00b8d4',\r\n};\r\nvar teal$1 = {\r\n '50': '#e0f2f1', '100': '#b2dfdb', '200': '#80cbc4', '300': '#4db6ac', '400': '#26a69a', '500': '#009688', '600': '#00897b', '700': '#00796b', '800': '#00695c', '900': '#004d40', 'a100': '#a7ffeb', 'a200': '#64ffda', 'a400': '#1de9b6', 'a700': '#00bfa5',\r\n};\r\nvar green$1 = {\r\n '50': '#e8f5e9', '100': '#c8e6c9', '200': '#a5d6a7', '300': '#81c784', '400': '#66bb6a', '500': '#4caf50', '600': '#43a047', '700': '#388e3c', '800': '#2e7d32', '900': '#1b5e20', 'a100': '#b9f6ca', 'a200': '#69f0ae', 'a400': '#00e676', 'a700': '#00c853',\r\n};\r\nvar lightGreen = {\r\n '50': '#f1f8e9', '100': '#dcedc8', '200': '#c5e1a5', '300': '#aed581', '400': '#9ccc65', '500': '#8bc34a', '600': '#7cb342', '700': '#689f38', '800': '#558b2f', '900': '#33691e', 'a100': '#ccff90', 'a200': '#b2ff59', 'a400': '#76ff03', 'a700': '#64dd17',\r\n};\r\nvar lime$1 = {\r\n '50': '#f9fbe7', '100': '#f0f4c3', '200': '#e6ee9c', '300': '#dce775', '400': '#d4e157', '500': '#cddc39', '600': '#c0ca33', '700': '#afb42b', '800': '#9e9d24', '900': '#827717', 'a100': '#f4ff81', 'a200': '#eeff41', 'a400': '#c6ff00', 'a700': '#aeea00',\r\n};\r\nvar yellow$1 = {\r\n '50': '#fffde7', '100': '#fff9c4', '200': '#fff59d', '300': '#fff176', '400': '#ffee58', '500': '#ffeb3b', '600': '#fdd835', '700': '#fbc02d', '800': '#f9a825', '900': '#f57f17', 'a100': '#ffff8d', 'a200': '#ffff00', 'a400': '#ffea00', 'a700': '#ffd600',\r\n};\r\nvar amber = {\r\n '50': '#fff8e1', '100': '#ffecb3', '200': '#ffe082', '300': '#ffd54f', '400': '#ffca28', '500': '#ffc107', '600': '#ffb300', '700': '#ffa000', '800': '#ff8f00', '900': '#ff6f00', 'a100': '#ffe57f', 'a200': '#ffd740', 'a400': '#ffc400', 'a700': '#ffab00',\r\n};\r\nvar orange = {\r\n '50': '#fff3e0', '100': '#ffe0b2', '200': '#ffcc80', '300': '#ffb74d', '400': '#ffa726', '500': '#ff9800', '600': '#fb8c00', '700': '#f57c00', '800': '#ef6c00', '900': '#e65100', 'a100': '#ffd180', 'a200': '#ffab40', 'a400': '#ff9100', 'a700': '#ff6d00',\r\n};\r\nvar deepOrange = {\r\n '50': '#fbe9e7', '100': '#ffccbc', '200': '#ffab91', '300': '#ff8a65', '400': '#ff7043', '500': '#ff5722', '600': '#f4511e', '700': '#e64a19', '800': '#d84315', '900': '#bf360c', 'a100': '#ff9e80', 'a200': '#ff6e40', 'a400': '#ff3d00', 'a700': '#dd2c00',\r\n};\r\nvar brown = {\r\n '50': '#efebe9', '100': '#d7ccc8', '200': '#bcaaa4', '300': '#a1887f', '400': '#8d6e63', '500': '#795548', '600': '#6d4c41', '700': '#5d4037', '800': '#4e342e', '900': '#3e2723',\r\n};\r\nvar grey = {\r\n '50': '#fafafa', '100': '#f5f5f5', '200': '#eeeeee', '300': '#e0e0e0', '400': '#bdbdbd', '500': '#9e9e9e', '600': '#757575', '700': '#616161', '800': '#424242', '900': '#212121',\r\n};\r\nvar blueGrey = {\r\n '50': '#eceff1', '100': '#cfd8dc', '200': '#b0bec5', '300': '#90a4ae', '400': '#78909c', '500': '#607d8b', '600': '#546e7a', '700': '#455a64', '800': '#37474f', '900': '#263238',\r\n};\r\nvar materialColors = {\r\n amber: amber,\r\n blue: blue$1,\r\n blueGrey: blueGrey,\r\n brown: brown,\r\n cyan: cyan,\r\n deepOrange: deepOrange,\r\n deepPurple: deepPurple,\r\n green: green$1,\r\n grey: grey,\r\n indigo: indigo,\r\n lightBlue: lightBlue,\r\n lightGreen: lightGreen,\r\n lime: lime$1,\r\n orange: orange,\r\n pink: pink,\r\n purple: purple$1,\r\n teal: teal$1,\r\n yellow: yellow$1,\r\n};\n\nvar StatusIcons = {\r\n ok: StatusGood,\r\n warning: StatusWarning,\r\n error: StatusCritical,\r\n unknown: StatusUnknown,\r\n disabled: StatusDisabled,\r\n info: StatusInfo,\r\n};\r\nvar SIZE_LEVELS = {\r\n small: {\r\n level: 4,\r\n size: 'xsmall',\r\n meterSize: 'xsmall',\r\n },\r\n medium: {\r\n level: 3,\r\n size: 'small',\r\n meterSize: 'small',\r\n },\r\n large: {\r\n level: 1,\r\n size: 'medium',\r\n meterSize: 'large',\r\n },\r\n};\r\n/**\r\n * A Box to display notification messages
\r\n * `import { Notification } from 'grommet-controls';`
\r\n * ``
\r\n */\r\nvar Notification = function (_a) {\r\n var status = _a.status, message = _a.message, locale = _a.locale, closer = _a.closer, margin = _a.margin, reverse = _a.reverse, a11yTitle = _a.a11yTitle, background = _a.background, border = _a.border, timestamp = _a.timestamp, icon = _a.icon, strong = _a.strong, round = _a.round, pad = _a.pad, size = _a.size, state = _a.state, onClose = _a.onClose, percentComplete = _a.percentComplete, rest = __rest(_a, [\"status\", \"message\", \"locale\", \"closer\", \"margin\", \"reverse\", \"a11yTitle\", \"background\", \"border\", \"timestamp\", \"icon\", \"strong\", \"round\", \"pad\", \"size\", \"state\", \"onClose\", \"percentComplete\"]);\r\n var sizeLevel = SIZE_LEVELS[size];\r\n var closeBtn;\r\n if (onClose) {\r\n var closeIcon = closer || React.createElement(Close, { size: sizeLevel.size });\r\n closeBtn = (React.createElement(Box, { pad: pad },\r\n React.createElement(Button, { a11yTitle: a11yTitle, onClick: onClose }, closeIcon)));\r\n }\r\n var heading = message;\r\n if (strong) {\r\n heading = React.createElement(\"strong\", null, heading);\r\n }\r\n var statusIcon;\r\n if (icon) {\r\n var StatusIcon = StatusIcons[status];\r\n statusIcon = (React.isValidElement(icon) ? icon : React.createElement(StatusIcon, { size: sizeLevel.size }));\r\n }\r\n var progress;\r\n if (percentComplete || percentComplete === 0) {\r\n progress = (React.createElement(Box, { direction: 'row', align: 'center', gap: 'medium', style: { whiteSpace: 'nowrap' } },\r\n React.createElement(Meter, { size: sizeLevel.meterSize, thickness: 'small', values: [{\r\n label: percentComplete.toFixed(0),\r\n value: percentComplete,\r\n color: 'accent-1',\r\n }] }),\r\n React.createElement(Text, { size: 'small' }, \" \" + percentComplete + \" %\")));\r\n }\r\n var timeStamp;\r\n if (timestamp) {\r\n timeStamp = longDate(timestamp, locale);\r\n }\r\n var first;\r\n var second;\r\n if (reverse) {\r\n first = heading;\r\n second = statusIcon;\r\n }\r\n else {\r\n first = statusIcon;\r\n second = heading;\r\n }\r\n var content = (React.createElement(Box, { flex: 'grow', pad: pad },\r\n React.createElement(Heading, { level: sizeLevel.level, margin: margin, style: { maxWidth: '100%' } },\r\n React.createElement(Box, { direction: 'row', align: 'center', gap: 'small' },\r\n first,\r\n second)),\r\n React.createElement(Text, { size: sizeLevel.size }, state),\r\n React.createElement(Text, { size: sizeLevel.size }, timeStamp),\r\n progress));\r\n if (reverse) {\r\n first = closeBtn;\r\n second = content;\r\n }\r\n else {\r\n first = content;\r\n second = closeBtn;\r\n }\r\n return (React.createElement(Box, __assign({ direction: reverse ? 'row-reverse' : 'row', fill: 'horizontal', border: border, round: round, role: 'checkbox', \"aria-checked\": true, background: background || \"status-\" + status }, rest),\r\n first,\r\n second));\r\n};\r\nNotification.defaultProps = {\r\n status: 'info',\r\n size: 'medium',\r\n message: 'Notification...',\r\n icon: true,\r\n animation: 'fadeIn',\r\n closer: undefined,\r\n pad: 'small',\r\n margin: 'small',\r\n locale: 'en-us',\r\n};\n\nvar precision = function (n) {\r\n // eslint-disable-next-line no-restricted-globals\r\n if (!isFinite(n))\r\n return 0;\r\n var e = 1;\r\n var p = 0;\r\n while (Math.round(n * e) / e !== n) {\r\n e *= 10;\r\n p += 1;\r\n }\r\n return p;\r\n};\r\nvar minMax = function (_a) {\r\n var value = _a.value, min = _a.min, max = _a.max;\r\n var val = value;\r\n if (min !== undefined) {\r\n val = Math.max(val, min);\r\n }\r\n if (max !== undefined) {\r\n val = Math.min(val, max);\r\n }\r\n return val;\r\n};\r\n/** A masked number input, with widgets to increment/decrement the value
\r\n* Additionally, all properties of MaskedInput apply
\r\n* `import { NumberInput } from 'grommet-controls';`
\r\n* ``
\r\n*/\r\nvar NumberInput = /** @class */ (function (_super) {\r\n __extends(NumberInput, _super);\r\n function NumberInput() {\r\n var _this = _super !== null && _super.apply(this, arguments) || this;\r\n _this.upDateValue = null;\r\n _this.value = undefined;\r\n _this.valueToNumber = function (value) {\r\n var _a = _this.props, prefix = _a.prefix, suffix = _a.suffix, thousandsSeparatorSymbol = _a.thousandsSeparatorSymbol, decimalSymbol = _a.decimalSymbol;\r\n return MaskedInput.maskedNumberValue({\r\n value: value, prefix: prefix, suffix: suffix, thousandsSeparatorSymbol: thousandsSeparatorSymbol, decimalSymbol: decimalSymbol,\r\n });\r\n };\r\n _this.isFloat = function (val) {\r\n var floatRegex = /^-?\\d+(?:[.,]\\d*?)?$/;\r\n if (!floatRegex.test(val.toString())) {\r\n return false;\r\n }\r\n // eslint-disable-next-line no-restricted-globals\r\n if (isNaN(parseFloat(val.toString()))) {\r\n return false;\r\n }\r\n return true;\r\n };\r\n _this.addStep = function () {\r\n var _a = _this.props, max = _a.max, min = _a.min, step = _a.step, value = _a.value;\r\n var val = _this.isFloat(value)\r\n ? (_this.valueToNumber(value) + step).toFixed(precision(step)) : (min || 0);\r\n if (typeof val === 'number' && Number.isNaN(val)) {\r\n if (min !== undefined) {\r\n val = min;\r\n }\r\n else {\r\n val = undefined;\r\n }\r\n }\r\n else {\r\n val = minMax({ value: val, min: min, max: max });\r\n }\r\n _this.upDateValue(val.toString());\r\n };\r\n _this.subtractStep = function () {\r\n var _a = _this.props, max = _a.max, min = _a.min, step = _a.step, value = _a.value;\r\n var val = _this.isFloat(value)\r\n ? (_this.valueToNumber(value) - step).toFixed(precision(step)) : (max || 0);\r\n if (typeof val === 'number' && Number.isNaN(val)) {\r\n if (max !== undefined) {\r\n val = max;\r\n }\r\n else {\r\n val = undefined;\r\n }\r\n }\r\n else {\r\n val = minMax({ value: val, min: min, max: max });\r\n }\r\n _this.upDateValue(val.toString());\r\n };\r\n _this.onChange = function (e) {\r\n var _a = _this.props, onChange = _a.onChange, emptyValue = _a.emptyValue;\r\n if (onChange) {\r\n var value = e.target.value;\r\n if (_this.value !== value) {\r\n if (value === undefined) {\r\n value = emptyValue;\r\n }\r\n _this.value = value;\r\n onChange(__assign(__assign({}, e), { target: __assign(__assign({}, e.target), { value: value }) }));\r\n }\r\n }\r\n };\r\n return _this;\r\n }\r\n NumberInput.prototype.render = function () {\r\n var _this = this;\r\n var _a = this.props, \r\n // eslint-disable-next-line @typescript-eslint/no-unused-vars\r\n onChange = _a.onChange, min = _a.min, max = _a.max, step = _a.step, userPipe = _a.pipe, prefix = _a.prefix, suffix = _a.suffix, thousandsSeparatorSymbol = _a.thousandsSeparatorSymbol, decimalSymbol = _a.decimalSymbol, decimals = _a.decimals, integers = _a.integers, a11yIncrement = _a.a11yIncrement, a11yDecrement = _a.a11yDecrement, userMask = _a.mask, addIcon = _a.addIcon, subtractIcon = _a.subtractIcon, disabled = _a.disabled, rest = __rest(_a, [\"onChange\", \"min\", \"max\", \"step\", \"pipe\", \"prefix\", \"suffix\", \"thousandsSeparatorSymbol\", \"decimalSymbol\", \"decimals\", \"integers\", \"a11yIncrement\", \"a11yDecrement\", \"mask\", \"addIcon\", \"subtractIcon\", \"disabled\"]);\r\n var allowNegative = typeof min !== 'number' || min < 0;\r\n var includeThousandsSeparator = !!thousandsSeparatorSymbol;\r\n var allowDecimal = (decimals === null) || (typeof decimals === 'number' && decimals > 0);\r\n var mask = userMask || MaskedInput.createNumberMask({\r\n prefix: prefix,\r\n suffix: suffix,\r\n includeThousandsSeparator: includeThousandsSeparator,\r\n thousandsSeparatorSymbol: thousandsSeparatorSymbol,\r\n allowDecimal: allowDecimal,\r\n decimalSymbol: decimalSymbol,\r\n decimalLimit: decimals,\r\n integerLimit: integers,\r\n allowNegative: allowNegative,\r\n });\r\n var pipe = userPipe || MaskedInput.createMinMaxInputPipe(__assign({ mask: mask, prefix: prefix, suffix: suffix, thousandsSeparatorSymbol: thousandsSeparatorSymbol, decimalSymbol: decimalSymbol, min: min, max: max }, rest));\r\n return (React.createElement(MaskedInput, __assign({ update: function (update) { _this.upDateValue = update; }, pattern: '[0-9]*', inputMode: 'numeric', onKeyDown: this.subtractStep, onKeyUp: this.addStep, disabled: disabled, onChange: this.onChange, pipe: pipe, mask: mask, widgets: [\r\n {\r\n 'icon': addIcon,\r\n 'onClick': disabled ? undefined : this.addStep,\r\n 'aria-label': a11yIncrement + \" \" + step,\r\n },\r\n {\r\n 'icon': subtractIcon,\r\n 'onClick': disabled ? undefined : this.subtractStep,\r\n 'aria-label': a11yDecrement + \" \" + step,\r\n },\r\n ] }, rest)));\r\n };\r\n NumberInput.defaultProps = {\r\n emptyValue: '',\r\n step: 1,\r\n addIcon: React.createElement(Add, null),\r\n subtractIcon: React.createElement(Subtract, null),\r\n prefix: '',\r\n suffix: '',\r\n thousandsSeparatorSymbol: '',\r\n decimalSymbol: '.',\r\n decimals: null,\r\n integers: null,\r\n a11yIncrement: 'Increment by',\r\n a11yDecrement: 'Decrement by',\r\n };\r\n return NumberInput;\r\n}(Component));\n\n/**\r\n * A numeric input field with form validation
\r\n */\r\nvar NumberInputField = function (props) { return (React.createElement(WithFormField, __assign({}, props), function (childProps) { return React.createElement(NumberInput, __assign({}, childProps)); })); };\n\n/**\r\n*A password field with show/hide password toggle
\r\n*All properties of DropInput apply
\r\n*`import { PasswordInput } from 'grommet-controls';`
\r\n*``
\r\n*/\r\nvar PasswordInput = /** @class */ (function (_super) {\r\n __extends(PasswordInput, _super);\r\n function PasswordInput() {\r\n var _this = _super !== null && _super.apply(this, arguments) || this;\r\n _this.state = { showPassword: false };\r\n _this.toggleView = function (e) {\r\n var showPassword = _this.state.showPassword;\r\n e.stopPropagation();\r\n _this.setState({ showPassword: !showPassword });\r\n };\r\n return _this;\r\n }\r\n PasswordInput.prototype.render = function () {\r\n var _a = this.props, viewIcon = _a.viewIcon, hideIcon = _a.hideIcon, a11yViewPassword = _a.a11yViewPassword, a11yHidePassword = _a.a11yHidePassword, rest = __rest(_a, [\"viewIcon\", \"hideIcon\", \"a11yViewPassword\", \"a11yHidePassword\"]);\r\n var showPassword = this.state.showPassword;\r\n return (React.createElement(DropInput, __assign({ type: showPassword ? 'text' : 'password', widgets: [\r\n {\r\n 'icon': showPassword ? hideIcon : viewIcon,\r\n 'aria-label': showPassword ? a11yHidePassword : a11yViewPassword,\r\n 'onClick': this.toggleView,\r\n },\r\n ] }, rest)));\r\n };\r\n PasswordInput.defaultProps = {\r\n viewIcon: React.createElement(FormView, null),\r\n hideIcon: React.createElement(Hide, null),\r\n a11yViewPassword: 'View password',\r\n a11yHidePassword: 'Hide password',\r\n };\r\n return PasswordInput;\r\n}(Component));\n\n/**\r\n * A password input field with form validation
\r\n */\r\nvar PasswordInputField = function (props) { return (React.createElement(WithFormField, __assign({}, props), function (childProps) { return React.createElement(PasswordInput, __assign({}, childProps)); })); };\n\n//\r\n// ########################################################################\r\n// Non-exported Helpers\r\n// ########################################################################\r\nfunction isArray(a) {\r\n return Array.isArray(a);\r\n}\r\nfunction flattenDeep(arr, newArr) {\r\n if (newArr === void 0) { newArr = []; }\r\n if (!isArray(arr)) {\r\n newArr.push(arr);\r\n }\r\n else {\r\n for (var i = 0; i < arr.length; i += 1) {\r\n flattenDeep(arr[i], newArr);\r\n }\r\n }\r\n return newArr;\r\n}\r\nfunction makePathArray(obj) {\r\n return flattenDeep(obj)\r\n .join('.')\r\n .replace(/\\[/g, '.')\r\n .replace(/]/g, '')\r\n .split('.');\r\n}\r\nfunction get(obj, path, def) {\r\n if (!path) {\r\n return obj;\r\n }\r\n var pathObj = makePathArray(path);\r\n var val;\r\n try {\r\n val = pathObj.reduce(function (current, pathPart) { return current[pathPart]; }, obj);\r\n }\r\n catch (e) {\r\n // continue regardless of error\r\n }\r\n return typeof val !== 'undefined' ? val : def;\r\n}\r\nfunction set(obj, path, value) {\r\n if (obj === void 0) { obj = {}; }\r\n var keys = makePathArray(path);\r\n var keyPart;\r\n var cursor = obj;\r\n // eslint-disable-next-line no-cond-assign\r\n while ((keyPart = keys.shift()) && keys.length) {\r\n if (!cursor[keyPart]) {\r\n cursor[keyPart] = {};\r\n }\r\n cursor = cursor[keyPart];\r\n }\r\n cursor[keyPart] = value;\r\n return obj;\r\n}\r\nfunction range(n) {\r\n var arr = [];\r\n for (var i = 0; i < n; i += 1) {\r\n arr.push(n);\r\n }\r\n return arr;\r\n}\r\nfunction orderBy(arr, funcs, dirs, indexKey) {\r\n return arr.sort(function (rowA, rowB) {\r\n for (var i = 0; i < funcs.length; i += 1) {\r\n var comp = funcs[i];\r\n var desc = dirs[i] === false || dirs[i] === 'desc';\r\n var sortInt = comp(rowA, rowB);\r\n if (sortInt) {\r\n return desc ? -sortInt : sortInt;\r\n }\r\n }\r\n // Use the row index for tie breakers\r\n return dirs[0]\r\n ? rowA[indexKey] - rowB[indexKey]\r\n : rowB[indexKey] - rowA[indexKey];\r\n });\r\n}\r\nfunction remove(a, b) {\r\n return a.filter(function (o, i) {\r\n var r = b(o);\r\n if (r) {\r\n a.splice(i, 1);\r\n return true;\r\n }\r\n return false;\r\n });\r\n}\r\nfunction clone(a) {\r\n try {\r\n return JSON.parse(JSON.stringify(a, function (_, value) {\r\n if (typeof value === 'function') {\r\n return value.toString();\r\n }\r\n return value;\r\n }));\r\n }\r\n catch (e) {\r\n return a;\r\n }\r\n}\r\nfunction getFirstDefined() {\r\n var args = [];\r\n for (var _i = 0; _i < arguments.length; _i++) {\r\n args[_i] = arguments[_i];\r\n }\r\n for (var i = 0; i < args.length; i += 1) {\r\n if (typeof args[i] !== 'undefined') {\r\n return args[i];\r\n }\r\n }\r\n return undefined;\r\n}\r\nfunction sum(arr) {\r\n return arr.reduce(function (a, b) { return (a + b); }, 0);\r\n}\r\nfunction groupBy(xs, key) {\r\n return xs.reduce(function (rv, x, i) {\r\n var resKey = typeof key === 'function' ? key(x, i) : x[key];\r\n rv[resKey] = isArray(rv[resKey]) ? rv[resKey] : [];\r\n rv[resKey].push(x);\r\n return rv;\r\n }, {});\r\n}\r\nfunction asPx(value) {\r\n value = Number(value);\r\n return Number.isNaN(value) ? null : value + \"px\";\r\n}\r\nfunction compactObject(obj) {\r\n var newObj = {};\r\n if (obj) {\r\n Object.keys(obj).map(function (key) {\r\n if (Object.prototype.hasOwnProperty.call(obj, key)\r\n && obj[key] !== undefined\r\n && typeof obj[key] !== 'undefined') {\r\n newObj[key] = obj[key];\r\n }\r\n return true;\r\n });\r\n }\r\n return newObj;\r\n}\r\nfunction isSortingDesc(d) {\r\n return !!(d.sort === 'desc' || d.desc === true || d.asc === false);\r\n}\r\nfunction normalizeComponent(Comp, params, fallback) {\r\n if (params === void 0) { params = {}; }\r\n if (fallback === void 0) { fallback = Comp; }\r\n return typeof Comp === 'function'\r\n ? Object.getPrototypeOf(Comp).isReactComponent\r\n ? React.createElement(Comp, __assign({}, params))\r\n : Comp(params)\r\n : fallback;\r\n}\r\nvar _ = {\r\n get: get,\r\n set: set,\r\n orderBy: orderBy,\r\n range: range,\r\n remove: remove,\r\n clone: clone,\r\n getFirstDefined: getFirstDefined,\r\n sum: sum,\r\n groupBy: groupBy,\r\n isArray: isArray,\r\n compactObject: compactObject,\r\n isSortingDesc: isSortingDesc,\r\n normalizeComponent: normalizeComponent,\r\n asPx: asPx,\r\n};\n\nvar StyledTableComponent = styled(Box)(templateObject_1$8 || (templateObject_1$8 = __makeTemplateObject([\"\\n align-items: stretch;\\n width: 100%;\\n border-collapse: collapse;\\n overflow: auto\\n\"], [\"\\n align-items: stretch;\\n width: 100%;\\n border-collapse: collapse;\\n overflow: auto\\n\"])));\r\nvar StyledTableBodyComponent = styled(Box)(templateObject_2$2 || (templateObject_2$2 = __makeTemplateObject([\"\\n\"], [\"\\n\"])));\r\nvar StyledTHeadComponent = styled(Box)(templateObject_3$2 || (templateObject_3$2 = __makeTemplateObject([\"\\n -webkit-user-select: none;\\n -moz-user-select: none;\\n -ms-user-select: none;\\n user-select: none;\\n\"], [\"\\n -webkit-user-select: none;\\n -moz-user-select: none;\\n -ms-user-select: none;\\n user-select: none;\\n\"])));\r\nvar StyledResizerComponent = styled(Box)(templateObject_4$1 || (templateObject_4$1 = __makeTemplateObject([\"\\n display: inline-block;\\n position: absolute;\\n width: 36px;\\n top: 0;\\n bottom: 0;\\n right: -18px;\\n cursor: col-resize;\\n z-index: 10;\\n\"], [\"\\n display: inline-block;\\n position: absolute;\\n width: 36px;\\n top: 0;\\n bottom: 0;\\n right: -18px;\\n cursor: col-resize;\\n z-index: 10;\\n\"])));\r\nvar StyledThComponent = styled(Box)(templateObject_5$1 || (templateObject_5$1 = __makeTemplateObject([\"\\n position: relative;\\n \", \" \\n \", \"\\n \", \" \\n \", \" \\n\"], [\"\\n position: relative;\\n \",\r\n \" \\n \",\r\n \"\\n \",\r\n \" \\n \",\r\n \" \\n\"])), function (props) { return props.sortable && \"\\n cursor: pointer;\\n \"; }, function (props) { return props.hidden && \"\\n width: 0 !important;\\n min-width: 0 !important;\\n padding: 0 !important;\\n border: 0 !important;\\n opacity: 0 !important;\\n \"; }, function (props) { return props.pivot && \"\\n &:after,:before {\\n left: 100%;\\n top: 50%;\\n border: solid transparent;\\n content: \\\" \\\";\\n height: 0;\\n width: 0;\\n position: absolute;\\n pointer-events: none\\n }\\n \\n &:after {\\n border-color: rgba(255, 255, 255, 0);\\n border-left-color: #fff;\\n border-width: 8px;\\n margin-top: -8px\\n }\\n \\n &:before {\\n border-color: rgba(102, 102, 102, 0);\\n border-left-color: #f7f7f7;\\n border-width: 10px;\\n margin-top: -10px\\n }\\n\\n \"; }, function (props) { return props.resizable && \"\\n overflow: visible;\\n\\n &:last-child {\\n overflow: hidden\\n }\\n \"; });\r\nvar StyledTrGroupComponent = styled(Box)(templateObject_6$1 || (templateObject_6$1 = __makeTemplateObject([\"\\n align-items: stretch;\\n\"], [\"\\n align-items: stretch;\\n\"])));\r\nvar StyledTrComponent = styled(Box)(templateObject_7$1 || (templateObject_7$1 = __makeTemplateObject([\"\\n \", \"\\n\"], [\"\\n \",\r\n \"\\n\"])), function (props) { return props.hover && \"\\n &:hover {\\n background-color: \" + normalizeColor(props.hover.background || props.theme.global.hover.background, props.theme) + \";\\n color: \" + normalizeColor(props.hover.color || props.theme.global.hover.color, props.theme) + \";\\n } \\n \"; });\r\nvar StyledTdComponent = styled(Box)(templateObject_8 || (templateObject_8 = __makeTemplateObject([\"\\n text-overflow: ellipsis;\\n overflow: hidden;\\n display: block;\\n white-space: nowrap;\\n \", \"\\n\"], [\"\\n text-overflow: ellipsis;\\n overflow: hidden;\\n display: block;\\n white-space: nowrap;\\n \",\r\n \"\\n\"])), function (props) { return props.hidden && \"\\n width: 0 !important;\\n min-width: 0 !important;\\n padding: 0 !important;\\n border: 0 !important;\\n opacity: 0 !important\\n \"; });\r\nvar StyledExpander = styled(Button)(templateObject_9 || (templateObject_9 = __makeTemplateObject([\"\\n position: relative;\\n margin: 0;\\n padding: 0;\\n left: -5px;\\n color: transparent;\\n cursor: pointer;\\n\"], [\"\\n position: relative;\\n margin: 0;\\n padding: 0;\\n left: -5px;\\n color: transparent;\\n cursor: pointer;\\n\"])));\r\nvar StyledTfootComponent = styled(Box)(templateObject_10 || (templateObject_10 = __makeTemplateObject([\"\\n\"], [\"\\n\"])));\r\nvar templateObject_1$8, templateObject_2$2, templateObject_3$2, templateObject_4$1, templateObject_5$1, templateObject_6$1, templateObject_7$1, templateObject_8, templateObject_9, templateObject_10;\n\nvar TableComponent = /** @class */ (function (_super) {\r\n __extends(TableComponent, _super);\r\n function TableComponent() {\r\n return _super !== null && _super.apply(this, arguments) || this;\r\n }\r\n TableComponent.prototype.render = function () {\r\n return (React.createElement(StyledTableComponent, __assign({ role: 'grid' }, this.props)));\r\n };\r\n return TableComponent;\r\n}(Component));\n\nvar defaultButton = function (_a) {\r\n var disabled = _a.disabled, Icon = _a.Icon, onClick = _a.onClick, label = _a.label, other = __rest(_a, [\"disabled\", \"Icon\", \"onClick\", \"label\"]);\r\n return (React.createElement(Button, __assign({ icon: React.createElement(Icon, null), disabled: disabled, onClick: onClick, label: label, plain: true }, other)));\r\n};\r\nvar StyledButton = styled(defaultButton)(templateObject_1$9 || (templateObject_1$9 = __makeTemplateObject([\"\\n width: 150px;\\n padding: 10px 0;\\n\"], [\"\\n width: 150px;\\n padding: 10px 0;\\n\"])));\r\nvar StyledPageInput = styled(NumberInput)(templateObject_2$3 || (templateObject_2$3 = __makeTemplateObject([\"\\n max-width: 180px;\\n\"], [\"\\n max-width: 180px;\\n\"])));\r\nvar StyledSelect = styled(Select)(templateObject_3$3 || (templateObject_3$3 = __makeTemplateObject([\"\\n max-width: 150px;\\n\"], [\"\\n max-width: 150px;\\n\"])));\r\nvar ReactTablePagination = /** @class */ (function (_super) {\r\n __extends(ReactTablePagination, _super);\r\n function ReactTablePagination(props, context) {\r\n var _this = _super.call(this, props, context) || this;\r\n _this.getSafePage = function (page) {\r\n var pg = Number.isNaN(page) ? _this.props.page : page;\r\n return Math.min(Math.max(pg, 0), _this.props.pages - 1);\r\n };\r\n _this.changePage = function (page) {\r\n var pg = _this.getSafePage(page);\r\n _this.setState({ page: pg });\r\n if (_this.props.page !== pg) {\r\n _this.props.onPageChange(pg);\r\n }\r\n };\r\n _this.applyPage = function (e) {\r\n if (e) {\r\n e.preventDefault();\r\n }\r\n var page = _this.state.page;\r\n _this.changePage(page === '' ? _this.props.page : page);\r\n };\r\n _this.state = { page: props.page };\r\n return _this;\r\n }\r\n ReactTablePagination.getDerivedStateFromProps = function (nextProps) {\r\n return {\r\n page: nextProps.page,\r\n };\r\n };\r\n ReactTablePagination.prototype.renderPaging = function () {\r\n var _this = this;\r\n var _a = this.props, page = _a.page, showPageJump = _a.showPageJump, pageText = _a.pageText, ofText = _a.ofText, pages = _a.pages;\r\n var pageJump;\r\n if (showPageJump) {\r\n pageJump = (\r\n //@ts-ignore\r\n React.createElement(StyledPageInput, { \"aria-label\": 'Select page to jump to', onChange: function (e) {\r\n var val = e.target.value;\r\n if (val === '') {\r\n return _this.setState({ page: val });\r\n }\r\n var pg = parseInt(val, 10) - 1;\r\n _this.setState({ page: _this.getSafePage(pg) });\r\n return false;\r\n }, value: typeof this.state.page === 'string' ? '' : this.state.page + 1, onBlur: this.applyPage, onKeyPress: function (e) {\r\n if (e.which === 13 || e.keyCode === 13) {\r\n _this.applyPage(null);\r\n }\r\n } }));\r\n }\r\n else {\r\n pageJump = React.createElement(Text, null, page + 1);\r\n }\r\n return (React.createElement(Box, { direction: 'row', align: 'center', gap: 'small' },\r\n React.createElement(Text, null, pageText + \" \"),\r\n pageJump,\r\n React.createElement(\"span\", { style: { whiteSpace: 'nowrap' } }, ofText + \" \" + (pages || 1))));\r\n };\r\n ReactTablePagination.prototype.renderPageSize = function () {\r\n var _this = this;\r\n var _a = this.props, showPageSizeOptions = _a.showPageSizeOptions, onPageSizeChange = _a.onPageSizeChange, pageSizeOptions = _a.pageSizeOptions, pageSize = _a.pageSize;\r\n if (showPageSizeOptions) {\r\n return (React.createElement(Box, { direction: 'row' },\r\n React.createElement(StyledSelect, { \"aria-label\": 'Select rows per page', onChange: function (e) { return onPageSizeChange(Number(e.option.split(' ')[0])); }, value: pageSize + \" \" + this.props.rowsText, options: pageSizeOptions.map(function (option) { return (option + \" \" + _this.props.rowsText); }) })));\r\n }\r\n return null;\r\n };\r\n ReactTablePagination.prototype.renderPrevious = function () {\r\n var _this = this;\r\n var _a = this.props, _b = _a.PreviousComponent, PreviousComponent = _b === void 0 ? StyledButton : _b, canPrevious = _a.canPrevious, page = _a.page;\r\n return (React.createElement(Box, { direction: 'row' },\r\n React.createElement(PreviousComponent, { \"aria-label\": 'Move to previous page', Icon: Previous, label: this.props.previousText, onClick: canPrevious ? function () { return _this.changePage(page - 1); } : null, disabled: !canPrevious })));\r\n };\r\n ReactTablePagination.prototype.renderNext = function () {\r\n var _this = this;\r\n var _a = this.props, page = _a.page, canNext = _a.canNext, _b = _a.NextComponent, NextComponent = _b === void 0 ? StyledButton : _b;\r\n return (React.createElement(Box, { direction: 'row' },\r\n React.createElement(NextComponent, { \"aria-label\": 'Move to next page', reverse: true, Icon: Next, label: this.props.nextText, onClick: canNext ? function () { return _this.changePage(page + 1); } : null, disabled: !canNext })));\r\n };\r\n ReactTablePagination.prototype.render = function () {\r\n var props = this.props.getPaginationProps(this.props);\r\n return (React.createElement(Box, __assign({}, __assign({\r\n direction: 'row', align: 'center', justify: 'between', fill: 'horizontal',\r\n }, props)),\r\n this.renderPrevious(),\r\n this.renderPaging(),\r\n this.renderPageSize(),\r\n this.renderNext()));\r\n };\r\n return ReactTablePagination;\r\n}(Component));\r\nvar templateObject_1$9, templateObject_2$3, templateObject_3$3;\n\nvar PivotValueComponent = (function (_a) {\r\n var subRows = _a.subRows, value = _a.value;\r\n return (React.createElement(\"span\", null,\r\n value,\r\n ' ',\r\n subRows && \"(\" + subRows.length + \")\"));\r\n});\n\nvar TheadComponent = (function (props) { return (React.createElement(StyledTHeadComponent, __assign({}, props))); });\n\nvar TbodyComponent = (function (props) { return (React.createElement(StyledTableBodyComponent, __assign({}, props))); });\n\nvar TfootComponent = (function (props) { return React.createElement(StyledTfootComponent, __assign({}, props)); });\n\nvar NoDataComponent = (function (_a) {\r\n var children = _a.children, rest = __rest(_a, [\"children\"]);\r\n return (React.createElement(Box, __assign({}, rest, { align: 'center', pad: 'small' }), children));\r\n});\n\nvar ResizerComponent = function (props) { return React.createElement(StyledResizerComponent, __assign({}, props)); };\n\nvar ThComponent = (function (_a) {\r\n var toggleSort = _a.toggleSort, sort = _a.sort, resizable = _a.resizable, children = _a.children, pivot = _a.pivot, hidden = _a.hidden, sortable = _a.sortable, expander = _a.expander, CellTextComponent = _a.CellTextComponent, props = __rest(_a, [\"toggleSort\", \"sort\", \"resizable\", \"children\", \"pivot\", \"hidden\", \"sortable\", \"expander\", \"CellTextComponent\"]);\r\n if (!expander && Array.isArray(children) && children.length > 1 && !children[0] && !children[1]) {\r\n return null;\r\n }\r\n var style = props.style, rest = __rest(props, [\"style\"]);\r\n var childRendered = React.createElement(CellTextComponent, __assign({}, rest, { value: children }));\r\n var content;\r\n if (sortable) {\r\n var sortAsc = sort === '-sort-asc';\r\n var sortDesc = sort === '-sort-desc';\r\n var SortIcon = Blank;\r\n if (sortAsc || sortDesc) {\r\n SortIcon = sortAsc ? LinkUp : LinkDown;\r\n }\r\n content = (React.createElement(Box, { direction: 'row', gap: 'xsmall', align: 'center' },\r\n childRendered,\r\n React.createElement(Button, { onClick: function (e) { return (toggleSort && toggleSort(e)); } },\r\n React.createElement(SortIcon, null))));\r\n }\r\n else {\r\n content = childRendered;\r\n }\r\n var boxProps = __assign({ pad: 'xsmall' }, rest);\r\n return (\r\n // eslint-disable-next-line jsx-a11y/interactive-supports-focus\r\n React.createElement(StyledThComponent, { role: 'columnheader', onClick: function (e) { return (toggleSort && toggleSort(e)); }, direction: 'row', pivot: pivot, hidden: hidden, sortable: sortable, style: style, resizable: resizable },\r\n React.createElement(Box, __assign({}, boxProps, { fill: true }), content)));\r\n});\n\nvar extractTextProps = function (_a) {\r\n var \r\n // eslint-disable-next-line @typescript-eslint/no-unused-vars\r\n value = _a.value, color = _a.color, size = _a.size, truncate = _a.truncate, weight = _a.weight, textAlign = _a.textAlign, rest = __rest(_a, [\"value\", \"color\", \"size\", \"truncate\", \"weight\", \"textAlign\"]);\r\n return (rest);\r\n};\r\nvar collectTextProps = function (_a) {\r\n var color = _a.color, size = _a.size, truncate = _a.truncate, weight = _a.weight, textAlign = _a.textAlign;\r\n return ({\r\n color: color, size: size, truncate: truncate, weight: weight, textAlign: textAlign,\r\n });\r\n};\r\nvar CellTextComponent = (function (_a) {\r\n var value = _a.value, rest = __rest(_a, [\"value\"]);\r\n return (React.createElement(Text, __assign({}, collectTextProps(rest)), value));\r\n});\n\nvar TdComponent = (function (_a) {\r\n var children = _a.children, props = __rest(_a, [\"children\"]);\r\n var style = props.style, rest = __rest(props, [\"style\"]);\r\n var boxProps = __assign({ pad: 'small' }, extractTextProps(rest));\r\n return (React.createElement(StyledTdComponent, { style: style, role: 'gridcell' },\r\n React.createElement(Box, __assign({ fill: true, align: 'center', direction: 'row' }, boxProps), children)));\r\n});\n\nvar FilterComponent = (function (_a) {\r\n var filter = _a.filter, onChange = _a.onChange, column = _a.column, rest = __rest(_a, [\"filter\", \"onChange\", \"column\"]);\r\n var props = __assign({ size: 'medium' }, rest);\r\n return (React.createElement(TextInput, __assign({ \"aria-label\": \"Filter data by \" + (typeof column.Header === 'string' ? column.Header : column.id), value: filter ? filter.value : '', onChange: function (event) { return onChange(event.target.value); } }, props)));\r\n});\n\nvar ExpanderComponent = (function (_a) {\r\n var isExpanded = _a.isExpanded, children = _a.children, expanderProps = _a.expanderProps;\r\n var props = __assign({\r\n CloseIcon: React.createElement(Subtract, null),\r\n OpenIcon: React.createElement(Add, null),\r\n tabIndex: 0,\r\n onClick: function () { },\r\n }, expanderProps);\r\n var OpenIcon = props.OpenIcon, CloseIcon = props.CloseIcon, rest = __rest(props, [\"OpenIcon\", \"CloseIcon\"]);\r\n return (React.createElement(StyledExpander, __assign({ a11yTitle: 'Press Enter to expand this row for more information', icon: isExpanded ? CloseIcon : OpenIcon }, rest), children));\r\n});\n\nvar spinkitSpinners = {\r\n 'circle': { divCount: 12 },\r\n 'cube-grid': { divCount: 9 },\r\n 'wave': { divCount: 5 },\r\n 'folding-cube': { divCount: 4 },\r\n 'three-bounce': { divCount: 3 },\r\n 'double-bounce': { divCount: 2 },\r\n 'wandering-cubes': { divCount: 2 },\r\n 'chasing-dots': { divCount: 2 },\r\n 'rotating-plane': { divCount: 1 },\r\n 'pulse': { divCount: 1 },\r\n 'wordpress': { divCount: 1 },\r\n};\r\nvar loadersCssSpinners = {\r\n 'ball-grid-beat': { divCount: 9 },\r\n 'ball-grid-pulse': { divCount: 9 },\r\n 'line-spin-fade-loader': { divCount: 8 },\r\n 'ball-spin-fade-loader': { divCount: 8 },\r\n 'ball-pulse-rise': { divCount: 5 },\r\n 'line-scale': { divCount: 5 },\r\n 'line-scale-pulse-out': { divCount: 5 },\r\n 'line-scale-pulse-out-rapid': { divCount: 5 },\r\n 'pacman': { divCount: 5 },\r\n 'line-scale-party': { divCount: 4 },\r\n 'ball-triangle-path': { divCount: 3 },\r\n 'ball-scale-multiple': { divCount: 3 },\r\n 'ball-scale-ripple-multiple': { divCount: 3 },\r\n 'ball-pulse-sync': { divCount: 3 },\r\n 'ball-beat': { divCount: 3 },\r\n 'ball-zig-zag': { divCount: 2 },\r\n 'ball-zig-zag-deflect': { divCount: 2 },\r\n 'ball-clip-rotate-pulse': { divCount: 2 },\r\n 'ball-clip-rotate-multiple': { divCount: 2 },\r\n 'ball-clip-rotate': { divCount: 1 },\r\n 'ball-scale-ripple': { divCount: 1 },\r\n 'triangle-skew-spin': { divCount: 1 },\r\n};\r\nvar allSpinners = __assign(__assign({}, spinkitSpinners), loadersCssSpinners);\n\nvar animationFadeIn = keyframes(templateObject_1$a || (templateObject_1$a = __makeTemplateObject([\"\\n 0% { opacity: 0;}\\n 50% { opacity: 0;}\\n 100% { opacity: 1;}\\n\"], [\"\\n 0% { opacity: 0;}\\n 50% { opacity: 0;}\\n 100% { opacity: 1;}\\n\"])));\r\nvar animationBounceDelay = keyframes(templateObject_2$4 || (templateObject_2$4 = __makeTemplateObject([\"\\n 0%, 80%, 100% { -webkit-transform: scale(0.0) }\\n 40% { -webkit-transform: scale(1.0) }\\n\"], [\"\\n 0%, 80%, 100% { -webkit-transform: scale(0.0) }\\n 40% { -webkit-transform: scale(1.0) }\\n\"])));\r\nvar animationScaleDelay = keyframes(templateObject_3$4 || (templateObject_3$4 = __makeTemplateObject([\"\\n 0%, 70%, 100% { -webkit-transform:scale3D(1.0, 1.0, 1.0) }\\n 35% { -webkit-transform:scale3D(0.0, 0.0, 1.0) }\\n\"], [\"\\n 0%, 70%, 100% { -webkit-transform:scale3D(1.0, 1.0, 1.0) }\\n 35% { -webkit-transform:scale3D(0.0, 0.0, 1.0) }\\n\"])));\r\nvar animationStretchDelay = keyframes(templateObject_4$2 || (templateObject_4$2 = __makeTemplateObject([\"\\n 0%, 40%, 100% { -webkit-transform: scaleY(0.4) }\\n 20% { -webkit-transform: scaleY(1.0) }\\n\"], [\"\\n 0%, 40%, 100% { -webkit-transform: scaleY(0.4) }\\n 20% { -webkit-transform: scaleY(1.0) }\\n\"])));\r\nvar animationFoldCubeAngle = keyframes(templateObject_5$2 || (templateObject_5$2 = __makeTemplateObject([\"\\n 0%, 10% {\\n -webkit-transform: perspective(140px) rotateX(-180deg);\\n opacity: 0;\\n } \\n 25%, 75% {\\n -webkit-transform: perspective(140px) rotateX(0deg);\\n opacity: 1;\\n } \\n 90%, 100% {\\n -webkit-transform: perspective(140px) rotateY(180deg);\\n opacity: 0;\\n }\\n\"], [\"\\n 0%, 10% {\\n -webkit-transform: perspective(140px) rotateX(-180deg);\\n opacity: 0;\\n } \\n 25%, 75% {\\n -webkit-transform: perspective(140px) rotateX(0deg);\\n opacity: 1;\\n } \\n 90%, 100% {\\n -webkit-transform: perspective(140px) rotateY(180deg);\\n opacity: 0;\\n }\\n\"])));\r\nvar animationBounce = keyframes(templateObject_6$2 || (templateObject_6$2 = __makeTemplateObject([\"\\n 0%, 100% {\\n -webkit-transform: scale(0.0);\\n } \\n 50% {\\n -webkit-transform: scale(1.0);\\n }\\n\"], [\"\\n 0%, 100% {\\n -webkit-transform: scale(0.0);\\n } \\n 50% {\\n -webkit-transform: scale(1.0);\\n }\\n\"])));\r\nvar animationCubeMove = keyframes(templateObject_7$2 || (templateObject_7$2 = __makeTemplateObject([\"\\n 25% {\\n -webkit-transform: translateX(42px) rotate(-90deg) scale(0.5);\\n } \\n 50% {\\n /* Hack to make FF rotate in the right direction */\\n -webkit-transform: translateX(42px) translateY(42px) rotate(-179deg);\\n } \\n 50.1% {\\n -webkit-transform: translateX(42px) translateY(42px) rotate(-180deg);\\n } \\n 75% {\\n -webkit-transform: translateX(0px) translateY(42px) rotate(-270deg) scale(0.5);\\n } \\n 100% {\\n -webkit-transform: rotate(-360deg);\\n }\\n\"], [\"\\n 25% {\\n -webkit-transform: translateX(42px) rotate(-90deg) scale(0.5);\\n } \\n 50% {\\n /* Hack to make FF rotate in the right direction */\\n -webkit-transform: translateX(42px) translateY(42px) rotate(-179deg);\\n } \\n 50.1% {\\n -webkit-transform: translateX(42px) translateY(42px) rotate(-180deg);\\n } \\n 75% {\\n -webkit-transform: translateX(0px) translateY(42px) rotate(-270deg) scale(0.5);\\n } \\n 100% {\\n -webkit-transform: rotate(-360deg);\\n }\\n\"])));\r\nvar animationRotate = keyframes(templateObject_8$1 || (templateObject_8$1 = __makeTemplateObject([\"\\n 100% { -webkit-transform: rotate(360deg) }\\n\"], [\"\\n 100% { -webkit-transform: rotate(360deg) }\\n\"])));\r\nvar animationRotatePlane = keyframes(templateObject_9$1 || (templateObject_9$1 = __makeTemplateObject([\"\\n 0% {\\n -webkit-transform: perspective(120px) rotateX(0deg) rotateY(0deg);\\n } \\n 50% {\\n -webkit-transform: perspective(120px) rotateX(-180.1deg) rotateY(0deg);\\n } \\n 100% {\\n -webkit-transform: perspective(120px) rotateX(-180deg) rotateY(-179.9deg);\\n }\\n\"], [\"\\n 0% {\\n -webkit-transform: perspective(120px) rotateX(0deg) rotateY(0deg);\\n } \\n 50% {\\n -webkit-transform: perspective(120px) rotateX(-180.1deg) rotateY(0deg);\\n } \\n 100% {\\n -webkit-transform: perspective(120px) rotateX(-180deg) rotateY(-179.9deg);\\n }\\n\"])));\r\nvar animationScaleOut = keyframes(templateObject_10$1 || (templateObject_10$1 = __makeTemplateObject([\"\\n 0% { -webkit-transform: scale(0.0) }\\n 100% {\\n -webkit-transform: scale(1.0);\\n opacity: 0;\\n }\\n\"], [\"\\n 0% { -webkit-transform: scale(0.0) }\\n 100% {\\n -webkit-transform: scale(1.0);\\n opacity: 0;\\n }\\n\"])));\r\nvar animationInnerCircle = keyframes(templateObject_11 || (templateObject_11 = __makeTemplateObject([\"\\n 0% { -webkit-transform: rotate(0); }\\n 100% { -webkit-transform: rotate(360deg); }\\n\"], [\"\\n 0% { -webkit-transform: rotate(0); }\\n 100% { -webkit-transform: rotate(360deg); }\\n\"])));\r\nvar ThreeBounceSpinner = styled.div(templateObject_12 || (templateObject_12 = __makeTemplateObject([\"\\n \", \"\\n & >div {\\n background-color: \", \";\\n }\\n height: \", \";\\n & >div {\\n width: \", \";\\n height: \", \";\\n background-color: \", \";\\n border-radius: 100%;\\n display: inline-block;\\n animation: \", \" 1.4s infinite ease-in-out;\\n /* Prevent first frame from flickering when animation starts */\\n animation-fill-mode: both;\\n };\\n & >div:first-child {\\n animation-delay: -0.32s;\\n }; \\n & >div:nth-child(2) {\\n animation-delay: -0.16s;\\n };\\n animation: \", \" 2s; \\n\"], [\"\\n \", \"\\n & >div {\\n background-color: \", \";\\n }\\n height: \", \";\\n & >div {\\n width: \", \";\\n height: \", \";\\n background-color: \", \";\\n border-radius: 100%;\\n display: inline-block;\\n animation: \", \" 1.4s infinite ease-in-out;\\n /* Prevent first frame from flickering when animation starts */\\n animation-fill-mode: both;\\n };\\n & >div:first-child {\\n animation-delay: -0.32s;\\n }; \\n & >div:nth-child(2) {\\n animation-delay: -0.16s;\\n };\\n animation: \", \" 2s; \\n\"])), function (props) { return normalizeColor(props.color, props.theme); }, function (props) { return normalizeColor(props.color, props.theme); }, function (props) { return props.theme.global.edgeSize[props.size]; }, function (props) { return props.theme.global.edgeSize[props.size]; }, function (props) { return props.theme.global.edgeSize[props.size]; }, function (props) { return normalizeColor(props.color, props.theme); }, animationBounceDelay, animationFadeIn);\r\nvar CircleSpinner = styled.div(templateObject_13 || (templateObject_13 = __makeTemplateObject([\"\\n width: \", \";\\n height: \", \";\\n position: relative;\\n\\n & > div {\\n background-color: initial;\\n width: 100%;\\n height: 100%;\\n position: absolute;\\n left: 0;\\n top: 0;\\n }\\n\\n & > div::before {\\n content: '';\\n display: block;\\n margin: 0 auto;\\n width: 20%;\\n height: 20%;\\n background-color: \", \";\\n border-radius: 100%;\\n animation: \", \" 1.2s infinite ease-in-out;\\n /* Prevent first frame from flickering when animation starts */\\n animation-fill-mode: both;\\n }\\n\\n & > div:nth-child(2) { -webkit-transform: rotate(30deg); transform: rotate(30deg) }\\n & > div:nth-child(3) { -webkit-transform: rotate(60deg); transform: rotate(60deg) }\\n & > div:nth-child(4) { -webkit-transform: rotate(90deg); transform: rotate(90deg) }\\n & > div:nth-child(5) { -webkit-transform: rotate(120deg); transform: rotate(120deg) }\\n & > div:nth-child(6) { -webkit-transform: rotate(150deg); transform: rotate(150deg) }\\n & > div:nth-child(7) { -webkit-transform: rotate(180deg); transform: rotate(180deg) }\\n & > div:nth-child(8) { -webkit-transform: rotate(210deg); transform: rotate(210deg) }\\n & > div:nth-child(9) { -webkit-transform: rotate(240deg); transform: rotate(240deg) }\\n & > div:nth-child(10) { -webkit-transform: rotate(270deg); transform: rotate(270deg) }\\n & > div:nth-child(11) { -webkit-transform: rotate(300deg); transform: rotate(300deg) }\\n & > div:nth-child(12) { -webkit-transform: rotate(330deg); transform: rotate(330deg) }\\n\\n & > div:nth-child(2)::before { -webkit-animation-delay: -1.1s; animation-delay: -1.1s }\\n & > div:nth-child(3)::before { -webkit-animation-delay: -1.0s; animation-delay: -1.0s }\\n & > div:nth-child(4)::before { -webkit-animation-delay: -0.9s; animation-delay: -0.9s }\\n & > div:nth-child(5)::before { -webkit-animation-delay: -0.8s; animation-delay: -0.8s }\\n & > div:nth-child(6)::before { -webkit-animation-delay: -0.7s; animation-delay: -0.7s }\\n & > div:nth-child(7)::before { -webkit-animation-delay: -0.6s; animation-delay: -0.6s }\\n & > div:nth-child(8)::before { -webkit-animation-delay: -0.5s; animation-delay: -0.5s }\\n & > div:nth-child(9)::before { -webkit-animation-delay: -0.4s; animation-delay: -0.4s }\\n & > div:nth-child(10)::before { -webkit-animation-delay: -0.3s; animation-delay: -0.3s }\\n & > div:nth-child(11)::before { -webkit-animation-delay: -0.2s; animation-delay: -0.2s }\\n & > div:nth-child(12)::before { -webkit-animation-delay: -0.1s; animation-delay: -0.1s }\\n\"], [\"\\n width: \", \";\\n height: \", \";\\n position: relative;\\n\\n & > div {\\n background-color: initial;\\n width: 100%;\\n height: 100%;\\n position: absolute;\\n left: 0;\\n top: 0;\\n }\\n\\n & > div::before {\\n content: '';\\n display: block;\\n margin: 0 auto;\\n width: 20%;\\n height: 20%;\\n background-color: \", \";\\n border-radius: 100%;\\n animation: \", \" 1.2s infinite ease-in-out;\\n /* Prevent first frame from flickering when animation starts */\\n animation-fill-mode: both;\\n }\\n\\n & > div:nth-child(2) { -webkit-transform: rotate(30deg); transform: rotate(30deg) }\\n & > div:nth-child(3) { -webkit-transform: rotate(60deg); transform: rotate(60deg) }\\n & > div:nth-child(4) { -webkit-transform: rotate(90deg); transform: rotate(90deg) }\\n & > div:nth-child(5) { -webkit-transform: rotate(120deg); transform: rotate(120deg) }\\n & > div:nth-child(6) { -webkit-transform: rotate(150deg); transform: rotate(150deg) }\\n & > div:nth-child(7) { -webkit-transform: rotate(180deg); transform: rotate(180deg) }\\n & > div:nth-child(8) { -webkit-transform: rotate(210deg); transform: rotate(210deg) }\\n & > div:nth-child(9) { -webkit-transform: rotate(240deg); transform: rotate(240deg) }\\n & > div:nth-child(10) { -webkit-transform: rotate(270deg); transform: rotate(270deg) }\\n & > div:nth-child(11) { -webkit-transform: rotate(300deg); transform: rotate(300deg) }\\n & > div:nth-child(12) { -webkit-transform: rotate(330deg); transform: rotate(330deg) }\\n\\n & > div:nth-child(2)::before { -webkit-animation-delay: -1.1s; animation-delay: -1.1s }\\n & > div:nth-child(3)::before { -webkit-animation-delay: -1.0s; animation-delay: -1.0s }\\n & > div:nth-child(4)::before { -webkit-animation-delay: -0.9s; animation-delay: -0.9s }\\n & > div:nth-child(5)::before { -webkit-animation-delay: -0.8s; animation-delay: -0.8s }\\n & > div:nth-child(6)::before { -webkit-animation-delay: -0.7s; animation-delay: -0.7s }\\n & > div:nth-child(7)::before { -webkit-animation-delay: -0.6s; animation-delay: -0.6s }\\n & > div:nth-child(8)::before { -webkit-animation-delay: -0.5s; animation-delay: -0.5s }\\n & > div:nth-child(9)::before { -webkit-animation-delay: -0.4s; animation-delay: -0.4s }\\n & > div:nth-child(10)::before { -webkit-animation-delay: -0.3s; animation-delay: -0.3s }\\n & > div:nth-child(11)::before { -webkit-animation-delay: -0.2s; animation-delay: -0.2s }\\n & > div:nth-child(12)::before { -webkit-animation-delay: -0.1s; animation-delay: -0.1s }\\n\"])), function (props) { return props.theme.global.edgeSize[props.size]; }, function (props) { return props.theme.global.edgeSize[props.size]; }, function (props) { return normalizeColor(props.color, props.theme); }, animationBounceDelay);\r\nvar CubeGridSpinner = styled.div(templateObject_14 || (templateObject_14 = __makeTemplateObject([\"\\n width: \", \";\\n height: \", \";\\n\\n & > div {\\n width: 33%;\\n height: 33%;\\n background-color: \", \";\\n float: left;\\n animation: \", \" 1.3s infinite ease-in-out;\\n }\\n\\n /*\\n * Spinner positions\\n * 1 2 3\\n * 4 5 6\\n * 7 8 9\\n */\\n\\n & > div:nth-child(1) { -webkit-animation-delay: 0.2s; animation-delay: 0.2s }\\n & > div:nth-child(2) { -webkit-animation-delay: 0.3s; animation-delay: 0.3s }\\n & > div:nth-child(3) { -webkit-animation-delay: 0.4s; animation-delay: 0.4s }\\n & > div:nth-child(4) { -webkit-animation-delay: 0.1s; animation-delay: 0.1s }\\n & > div:nth-child(5) { -webkit-animation-delay: 0.2s; animation-delay: 0.2s }\\n & > div:nth-child(6) { -webkit-animation-delay: 0.3s; animation-delay: 0.3s }\\n & > div:nth-child(7) { -webkit-animation-delay: 0.0s; animation-delay: 0.0s }\\n & > div:nth-child(8) { -webkit-animation-delay: 0.1s; animation-delay: 0.1s }\\n & > div:nth-child(9) { -webkit-animation-delay: 0.2s; animation-delay: 0.2s }\\n\"], [\"\\n width: \", \";\\n height: \", \";\\n\\n & > div {\\n width: 33%;\\n height: 33%;\\n background-color: \", \";\\n float: left;\\n animation: \", \" 1.3s infinite ease-in-out;\\n }\\n\\n /*\\n * Spinner positions\\n * 1 2 3\\n * 4 5 6\\n * 7 8 9\\n */\\n\\n & > div:nth-child(1) { -webkit-animation-delay: 0.2s; animation-delay: 0.2s }\\n & > div:nth-child(2) { -webkit-animation-delay: 0.3s; animation-delay: 0.3s }\\n & > div:nth-child(3) { -webkit-animation-delay: 0.4s; animation-delay: 0.4s }\\n & > div:nth-child(4) { -webkit-animation-delay: 0.1s; animation-delay: 0.1s }\\n & > div:nth-child(5) { -webkit-animation-delay: 0.2s; animation-delay: 0.2s }\\n & > div:nth-child(6) { -webkit-animation-delay: 0.3s; animation-delay: 0.3s }\\n & > div:nth-child(7) { -webkit-animation-delay: 0.0s; animation-delay: 0.0s }\\n & > div:nth-child(8) { -webkit-animation-delay: 0.1s; animation-delay: 0.1s }\\n & > div:nth-child(9) { -webkit-animation-delay: 0.2s; animation-delay: 0.2s }\\n\"])), function (props) { return props.theme.global.edgeSize[props.size]; }, function (props) { return props.theme.global.edgeSize[props.size]; }, function (props) { return normalizeColor(props.color, props.theme); }, animationScaleDelay);\r\nvar WaveSpinner = styled.div(templateObject_15 || (templateObject_15 = __makeTemplateObject([\"\\n width: 30px;\\n height: 27px;\\n\\n & > div {\\n background-color: \", \";\\n height: 100%;\\n width: 6px;\\n display: inline-block;\\n animation: \", \" 1.2s infinite ease-in-out;\\n }\\n\\n $ > div:nth-child(2) {\\n animation-delay: -1.1s;\\n }\\n\\n & > div:nth-child(3) {\\n animation-delay: -1.0s;\\n }\\n\\n & > div:nth-child(4) {\\n animation-delay: -0.9s;\\n }\\n\\n & > div:nth-child(5) {\\n animation-delay: -0.8s;\\n }\\n\\n\"], [\"\\n width: 30px;\\n height: 27px;\\n\\n & > div {\\n background-color: \", \";\\n height: 100%;\\n width: 6px;\\n display: inline-block;\\n animation: \", \" 1.2s infinite ease-in-out;\\n }\\n\\n $ > div:nth-child(2) {\\n animation-delay: -1.1s;\\n }\\n\\n & > div:nth-child(3) {\\n animation-delay: -1.0s;\\n }\\n\\n & > div:nth-child(4) {\\n animation-delay: -0.9s;\\n }\\n\\n & > div:nth-child(5) {\\n animation-delay: -0.8s;\\n }\\n\\n\"])), function (props) { return normalizeColor(props.color, props.theme); }, animationStretchDelay);\r\nvar FoldingCubeSpinner = styled.div(templateObject_16 || (templateObject_16 = __makeTemplateObject([\"\\n width: \", \";\\n height: \", \";\\n position: relative;\\n transform: rotateZ(45deg);\\n\\n & > div {\\n background-color: initial;\\n float: left;\\n width: 50%;\\n height: 50%;\\n position: relative;\\n\\n -webkit-transform: scale(1.1);\\n -ms-transform: scale(1.1);\\n transform: scale(1.1);\\n }\\n & > div::before {\\n content: '';\\n position: absolute;\\n top: 0;\\n left: 0;\\n width: 100%;\\n height: 100%;\\n background-color: \", \";\\n animation: \", \" 2.4s infinite linear both;\\n transform-origin: 100% 100%;\\n }\\n & > div:nth-child(2) {\\n transform: scale(1.1) rotateZ(90deg);\\n }\\n & > div:nth-child(4) {\\n transform: scale(1.1) rotateZ(180deg);\\n }\\n & > div:nth-child(3) {\\n transform: scale(1.1) rotateZ(270deg);\\n }\\n & > div:nth-child(2)::before {\\n animation-delay: 0.3s;\\n }\\n & > div:nth-child(4)::before {\\n animation-delay: 0.6s;\\n }\\n & > div:nth-child(3)::before {\\n animation-delay: 0.9s;\\n }\\n\"], [\"\\n width: \", \";\\n height: \", \";\\n position: relative;\\n transform: rotateZ(45deg);\\n\\n & > div {\\n background-color: initial;\\n float: left;\\n width: 50%;\\n height: 50%;\\n position: relative;\\n\\n -webkit-transform: scale(1.1);\\n -ms-transform: scale(1.1);\\n transform: scale(1.1);\\n }\\n & > div::before {\\n content: '';\\n position: absolute;\\n top: 0;\\n left: 0;\\n width: 100%;\\n height: 100%;\\n background-color: \", \";\\n animation: \", \" 2.4s infinite linear both;\\n transform-origin: 100% 100%;\\n }\\n & > div:nth-child(2) {\\n transform: scale(1.1) rotateZ(90deg);\\n }\\n & > div:nth-child(4) {\\n transform: scale(1.1) rotateZ(180deg);\\n }\\n & > div:nth-child(3) {\\n transform: scale(1.1) rotateZ(270deg);\\n }\\n & > div:nth-child(2)::before {\\n animation-delay: 0.3s;\\n }\\n & > div:nth-child(4)::before {\\n animation-delay: 0.6s;\\n }\\n & > div:nth-child(3)::before {\\n animation-delay: 0.9s;\\n }\\n\"])), function (props) { return props.theme.global.edgeSize[props.size]; }, function (props) { return props.theme.global.edgeSize[props.size]; }, function (props) { return normalizeColor(props.color, props.theme); }, animationFoldCubeAngle);\r\nvar DoubleBounceSpinner = styled.div(templateObject_17 || (templateObject_17 = __makeTemplateObject([\"\\n width: \", \";\\n height: \", \";\\n position: relative;\\n\\n & > div {\\n width: 100%;\\n height: 100%;\\n border-radius: 50%;\\n background-color: \", \";\\n opacity: 0.6;\\n position: absolute;\\n top: 0;\\n left: 0;\\n\\n animation: \", \" 2.0s infinite ease-in-out;\\n }\\n\\n & > div:last-child {\\n -webkit-animation-delay: -1.0s;\\n animation-delay: -1.0s;\\n }\\n\"], [\"\\n width: \", \";\\n height: \", \";\\n position: relative;\\n\\n & > div {\\n width: 100%;\\n height: 100%;\\n border-radius: 50%;\\n background-color: \", \";\\n opacity: 0.6;\\n position: absolute;\\n top: 0;\\n left: 0;\\n\\n animation: \", \" 2.0s infinite ease-in-out;\\n }\\n\\n & > div:last-child {\\n -webkit-animation-delay: -1.0s;\\n animation-delay: -1.0s;\\n }\\n\"])), function (props) { return props.theme.global.edgeSize[props.size]; }, function (props) { return props.theme.global.edgeSize[props.size]; }, function (props) { return normalizeColor(props.color, props.theme); }, animationBounce);\r\nvar WanderingCubesSpinner = styled.div(templateObject_18 || (templateObject_18 = __makeTemplateObject([\"\\n width: 52px;\\n height: 52px;\\n position: relative;\\n\\n & > div {\\n background-color: \", \";\\n width: 10px;\\n height: 10px;\\n position: absolute;\\n top: 0;\\n left: 0;\\n\\n animation: \", \" 1.8s infinite ease-in-out;\\n }\\n\\n & > div:last-child {\\n -webkit-animation-delay: -0.9s;\\n animation-delay: -0.9s;\\n }\\n\"], [\"\\n width: 52px;\\n height: 52px;\\n position: relative;\\n\\n & > div {\\n background-color: \", \";\\n width: 10px;\\n height: 10px;\\n position: absolute;\\n top: 0;\\n left: 0;\\n\\n animation: \", \" 1.8s infinite ease-in-out;\\n }\\n\\n & > div:last-child {\\n -webkit-animation-delay: -0.9s;\\n animation-delay: -0.9s;\\n }\\n\"])), function (props) { return normalizeColor(props.color, props.theme); }, animationCubeMove);\r\nvar ChasingDotsSpinner = styled.div(templateObject_19 || (templateObject_19 = __makeTemplateObject([\"\\n width: \", \";\\n height: \", \";\\n position: relative;\\n animation: \", \" 2.0s infinite linear;\\n\\n & > div {\\n width: 60%;\\n height: 60%;\\n display: inline-block;\\n position: absolute;\\n top: 0;\\n background-color: \", \";\\n border-radius: 100%;\\n animation: \", \" 2.0s infinite ease-in-out;\\n }\\n\\n & > div:last-child {\\n top: auto;\\n bottom: 0;\\n\\n -webkit-animation-delay: -1.0s;\\n animation-delay: -1.0s;\\n }\\n\"], [\"\\n width: \", \";\\n height: \", \";\\n position: relative;\\n animation: \", \" 2.0s infinite linear;\\n\\n & > div {\\n width: 60%;\\n height: 60%;\\n display: inline-block;\\n position: absolute;\\n top: 0;\\n background-color: \", \";\\n border-radius: 100%;\\n animation: \", \" 2.0s infinite ease-in-out;\\n }\\n\\n & > div:last-child {\\n top: auto;\\n bottom: 0;\\n\\n -webkit-animation-delay: -1.0s;\\n animation-delay: -1.0s;\\n }\\n\"])), function (props) { return props.theme.global.edgeSize[props.size]; }, function (props) { return props.theme.global.edgeSize[props.size]; }, animationRotate, function (props) { return normalizeColor(props.color, props.theme); }, animationBounce);\r\nvar RotatingPlaneSpinner = styled.div(templateObject_20 || (templateObject_20 = __makeTemplateObject([\"\\n width: \", \";\\n height: \", \";\\n background-color: \", \";\\n\\n animation: \", \" 1.2s infinite ease-in-out;\\n\"], [\"\\n width: \", \";\\n height: \", \";\\n background-color: \", \";\\n\\n animation: \", \" 1.2s infinite ease-in-out;\\n\"])), function (props) { return props.theme.global.edgeSize[props.size]; }, function (props) { return props.theme.global.edgeSize[props.size]; }, function (props) { return normalizeColor(props.color, props.theme); }, animationRotatePlane);\r\nvar PulseSpinner = styled.div(templateObject_21 || (templateObject_21 = __makeTemplateObject([\"\\n width: \", \";\\n height: \", \";\\n background-color: \", \";\\n border-radius: 100%;\\n animation: \", \" 1.0s infinite ease-in-out;\\n\"], [\"\\n width: \", \";\\n height: \", \";\\n background-color: \", \";\\n border-radius: 100%;\\n animation: \", \" 1.0s infinite ease-in-out;\\n\"])), function (props) { return props.theme.global.edgeSize[props.size]; }, function (props) { return props.theme.global.edgeSize[props.size]; }, function (props) { return normalizeColor(props.color, props.theme); }, animationScaleOut);\r\nvar WordPressSpinner = styled.div(templateObject_22 || (templateObject_22 = __makeTemplateObject([\"\\n& > div {\\n width:\", \";\\n height: \", \";\\n background-color: \", \";\\n display: inline-block;\\n border-radius: \", \";\\n position: relative;\\n animation: \", \" 1s linear infinite;\\n}\\n\\n& > div::after {\\n content: '';\\n display: block;\\n background-color: #fff;\\n width: 8px;\\n height: 8px;\\n position: absolute;\\n border-radius: 8px;\\n top: 5px;\\n left: 5px;\\n}\\n\"], [\"\\n& > div {\\n width:\", \";\\n height: \", \";\\n background-color: \", \";\\n display: inline-block;\\n border-radius: \", \";\\n position: relative;\\n animation: \", \" 1s linear infinite;\\n}\\n\\n& > div::after {\\n content: '';\\n display: block;\\n background-color: #fff;\\n width: 8px;\\n height: 8px;\\n position: absolute;\\n border-radius: 8px;\\n top: 5px;\\n left: 5px;\\n}\\n\"])), function (props) { return props.theme.global.edgeSize[props.size]; }, function (props) { return props.theme.global.edgeSize[props.size]; }, function (props) { return normalizeColor(props.color, props.theme); }, function (props) { return props.theme.global.edgeSize[props.size]; }, animationInnerCircle);\r\nvar templateObject_1$a, templateObject_2$4, templateObject_3$4, templateObject_4$2, templateObject_5$2, templateObject_6$2, templateObject_7$2, templateObject_8$1, templateObject_9$1, templateObject_10$1, templateObject_11, templateObject_12, templateObject_13, templateObject_14, templateObject_15, templateObject_16, templateObject_17, templateObject_18, templateObject_19, templateObject_20, templateObject_21, templateObject_22;\n\n// ported to styled-componnets from\r\nvar styledComponents$1 = {\r\n 'circle': CircleSpinner,\r\n 'three-bounce': ThreeBounceSpinner,\r\n 'cube-grid': CubeGridSpinner,\r\n 'wave': WaveSpinner,\r\n 'folding-cube': FoldingCubeSpinner,\r\n 'double-bounce': DoubleBounceSpinner,\r\n 'wandering-cubes': WanderingCubesSpinner,\r\n 'chasing-dots': ChasingDotsSpinner,\r\n 'rotating-plane': RotatingPlaneSpinner,\r\n 'pulse': PulseSpinner,\r\n 'wordpress': WordPressSpinner,\r\n};\r\n/** A spinning process indicator
\r\n * `import { Spinning } from 'grommet-controls';`
\r\n * ``
\r\n*/\r\nvar Spinning = function (_a) {\r\n var kind = _a.kind, fadeIn = _a.fadeIn, color = _a.color, size = _a.size;\r\n var spinnerInfo = allSpinners[kind] || allSpinners['three-bounce'];\r\n var StyledSpinning = styledComponents$1[kind];\r\n return (React.createElement(ThemeContext.Consumer, null, function (theme) { return (React.createElement(StyledSpinning, { color: (color || (theme.dark ? 'light-1' : 'dark-1')), fadeIn: fadeIn, theme: theme, size: size }, Array.from(Array(spinnerInfo.divCount).keys()).map(function (_, idx) { return React.createElement(\"div\", { key: idx }); }))); }));\r\n};\r\nSpinning.defaultProps = {\r\n kind: 'circle',\r\n fadeIn: 'full',\r\n color: undefined,\r\n size: 'medium',\r\n};\n\nvar LoadingComponent = (function (_a) {\r\n var loading = _a.loading;\r\n return (React.createElement(\"div\", null, loading && (React.createElement(Box, { align: 'center', fill: 'horizontal', pad: { vertical: 'large' } },\r\n React.createElement(Spinning, null)))));\r\n});\n\nvar TrGroupComponent = (function (props) { return React.createElement(StyledTrGroupComponent, __assign({ role: 'rowgroup' }, props)); });\n\nvar focusableChildren = function (parent) {\r\n var list = [];\r\n if (parent && parent.childNodes) {\r\n parent.childNodes.forEach(function (node) {\r\n if (node.tagName) {\r\n list.push(node);\r\n if (filterByFocusable([node]).length !== 1) {\r\n list = list.concat(focusableChildren(node));\r\n }\r\n }\r\n });\r\n }\r\n return filterByFocusable(list);\r\n};\r\nvar focusedChildIndex = function (parent) {\r\n var focusable = focusableChildren(parent);\r\n var focused = document.activeElement;\r\n for (var i = 0; i < focusable.length; i += 1) {\r\n if (focusable[i] === focused) {\r\n return i;\r\n }\r\n }\r\n return 0;\r\n};\r\nvar focusChildByIndex = function (parent, index) {\r\n var focusable = focusableChildren(parent);\r\n var focusIndex = Math.min(index, focusable.length - 1);\r\n if (focusIndex >= 0) {\r\n focusable[focusIndex].focus();\r\n return true;\r\n }\r\n return false;\r\n};\r\nvar focusNextElement = function (parent) {\r\n var focusable = focusableChildren(parent);\r\n var focused = document.activeElement;\r\n var nextFocus;\r\n for (var i = 0; i < focusable.length; i += 1) {\r\n if (focusable[i] === focused) {\r\n if (i < focusable.length - 1) {\r\n nextFocus = focusable[i + 1];\r\n }\r\n break;\r\n }\r\n }\r\n if (nextFocus) {\r\n nextFocus.focus();\r\n return true;\r\n }\r\n return false;\r\n};\r\nvar focusPrevElement = function (parent) {\r\n var focusable = focusableChildren(parent);\r\n var focused = document.activeElement;\r\n var prevFocus;\r\n for (var i = 0; i < focusable.length; i += 1) {\r\n if (focusable[i] === focused) {\r\n if (i > 0) {\r\n prevFocus = focusable[i - 1];\r\n }\r\n break;\r\n }\r\n }\r\n if (prevFocus) {\r\n prevFocus.focus();\r\n return true;\r\n }\r\n return false;\r\n};\r\nvar hasKeyboardChildren = function (element) {\r\n var currentTag = element.tagName.toLowerCase();\r\n var validTags = /(input|select|textarea)$/;\r\n if (currentTag.match(validTags)) {\r\n return true;\r\n }\r\n var focusable = focusableChildren(element);\r\n for (var i = 0; i < focusable.length; i += 1) {\r\n if (focusable[i].tagName && focusable[i].tagName.toLowerCase().match(validTags)) {\r\n return true;\r\n }\r\n }\r\n return false;\r\n};\n\nvar TrComponent = /** @class */ (function (_super) {\r\n __extends(TrComponent, _super);\r\n function TrComponent() {\r\n var _this = _super !== null && _super.apply(this, arguments) || this;\r\n _this.selectNextRow = function () {\r\n var selectRow = _this.props.selectRow;\r\n var activeChild = focusedChildIndex(_this.container);\r\n return selectRow(true, activeChild);\r\n };\r\n _this.selectPrevRow = function () {\r\n var selectRow = _this.props.selectRow;\r\n var activeChild = focusedChildIndex(_this.container);\r\n return selectRow(false, activeChild);\r\n };\r\n _this.selectNextChild = function () {\r\n if (focusNextElement(_this.container)) {\r\n return true;\r\n }\r\n return _this.selectNextRow();\r\n };\r\n _this.selectPrevChild = function () {\r\n if (focusPrevElement(_this.container)) {\r\n return true;\r\n }\r\n return _this.selectPrevRow();\r\n };\r\n _this.selectFirstChild = function (activeIndex) { return focusChildByIndex(_this.container, activeIndex); };\r\n return _this;\r\n }\r\n TrComponent.prototype.render = function () {\r\n var _this = this;\r\n return (React.createElement(Keyboard, { onTab: function (e) {\r\n e.preventDefault();\r\n if (e.shiftKey) {\r\n _this.selectPrevChild();\r\n }\r\n else {\r\n _this.selectNextChild();\r\n }\r\n }, onLeft: function (e) {\r\n if (!hasKeyboardChildren(document.activeElement)) {\r\n e.preventDefault();\r\n _this.selectPrevChild();\r\n }\r\n }, onRight: function (e) {\r\n if (!hasKeyboardChildren(document.activeElement)) {\r\n e.preventDefault();\r\n _this.selectNextChild();\r\n }\r\n }, onUp: function (e) {\r\n if (!hasKeyboardChildren(document.activeElement)) {\r\n e.preventDefault();\r\n _this.selectPrevRow();\r\n }\r\n }, onDown: function (e) {\r\n if (!hasKeyboardChildren(document.activeElement)) {\r\n e.preventDefault();\r\n _this.selectNextRow();\r\n }\r\n } },\r\n React.createElement(StyledTrComponent, __assign({ direction: 'row', role: 'row', ref: function (el) { _this.container = findDOMNode(el); } }, this.props))));\r\n };\r\n return TrComponent;\r\n}(Component));\n\nvar emptyObj = function () { return ({}); };\r\nvar defaultTableProps = {};\r\nvar defaultHeaderProps = {\r\n background: 'brand', border: 'all', align: 'center',\r\n};\r\nvar defaultBodyProps = {\r\n animation: { type: 'fadeIn', duration: 2000, size: 'large' },\r\n};\r\nvar defaultRowOddProps = {};\r\nvar defaultRowEvenProps = {};\r\nvar defaultFooterProps = { background: 'light-1' };\r\nvar defaultPaginationProps = { pad: { vertical: 'medium' } };\r\nvar defaultFilterProps = { border: 'bottom' };\r\nvar defaultFilterInputProps = { size: 'small', placeholder: 'Filter...' };\r\nvar defaultProps = {\r\n // General\r\n data: [],\r\n loading: false,\r\n showPagination: true,\r\n showPaginationTop: false,\r\n showPaginationBottom: true,\r\n showPageSizeOptions: true,\r\n pageSizeOptions: [5, 10, 20, 25, 50, 100],\r\n defaultPageSize: 20,\r\n showPageJump: true,\r\n collapseOnSortingChange: true,\r\n collapseOnPageChange: true,\r\n collapseOnDataChange: true,\r\n freezeWhenExpanded: false,\r\n sortable: true,\r\n multiSort: true,\r\n resizable: true,\r\n filterable: false,\r\n defaultSortDesc: false,\r\n defaultSorted: [],\r\n defaultFiltered: [],\r\n defaultResized: [],\r\n defaultExpanded: {},\r\n // eslint-disable-next-line @typescript-eslint/no-unused-vars\r\n defaultFilterMethod: function (filter, row, _column) {\r\n var id = filter.pivotId || filter.id;\r\n if (row[id] !== undefined && filter.value !== undefined) {\r\n return String(row[id])\r\n .toUpperCase()\r\n .startsWith(filter.value.toUpperCase());\r\n }\r\n return true;\r\n },\r\n // eslint-disable-next-line @typescript-eslint/no-unused-vars\r\n defaultSortMethod: function (a, b, _desc) {\r\n // force null and undefined to the bottom\r\n a = a === null || a === undefined ? '' : a;\r\n b = b === null || b === undefined ? '' : b;\r\n // force any string values to lowercase\r\n a = typeof a === 'string' ? a.toLowerCase() : a;\r\n b = typeof b === 'string' ? b.toLowerCase() : b;\r\n // Return either 1 or -1 to indicate a sort priority\r\n if (a > b) {\r\n return 1;\r\n }\r\n if (a < b) {\r\n return -1;\r\n }\r\n // returning 0, undefined or any falsey value will use subsequent sorts or\r\n // the index as a tiebreaker\r\n return 0;\r\n },\r\n // Controlled State Props\r\n // page: undefined,\r\n // pageSize: undefined,\r\n // sorted: [],\r\n // filtered: [],\r\n // resized: [],\r\n // expanded: {},\r\n // Controlled State Callbacks\r\n onPageChange: undefined,\r\n onPageSizeChange: undefined,\r\n onSortedChange: undefined,\r\n onFilteredChange: undefined,\r\n onResizedChange: undefined,\r\n onExpandedChange: undefined,\r\n // Pivoting\r\n pivotBy: undefined,\r\n // Key Constants\r\n pivotValKey: '_pivotVal',\r\n pivotIDKey: '_pivotID',\r\n subRowsKey: '_subRows',\r\n aggregatedKey: '_aggregated',\r\n nestingLevelKey: '_nestingLevel',\r\n originalKey: '_original',\r\n indexKey: '_index',\r\n groupedByPivotKey: '_groupedByPivot',\r\n // Server-side Callbacks\r\n onFetchData: function () { return null; },\r\n // Component decorators\r\n getProps: function (_a) {\r\n var className = _a.className;\r\n return ({ className: className });\r\n },\r\n getTableProps: function (_a) {\r\n var decorations = _a.decorations;\r\n return ((decorations && decorations.table) || defaultTableProps);\r\n },\r\n getTheadGroupProps: function (_a) {\r\n var decorations = _a.decorations;\r\n return ((decorations && (decorations.headerGroup || decorations.header)) || {});\r\n },\r\n getTheadGroupTrProps: emptyObj,\r\n getTheadProps: emptyObj,\r\n getTheadTrProps: emptyObj,\r\n getTheadThProps: function (_a) {\r\n var decorations = _a.decorations;\r\n return ((decorations && decorations.header) || defaultHeaderProps);\r\n },\r\n getTheadFilterProps: emptyObj,\r\n getTheadFilterTrProps: function (_a) {\r\n var decorations = _a.decorations;\r\n return ((decorations && decorations.filterRow) || {});\r\n },\r\n getFilterInputProps: function (_a) {\r\n var decorations = _a.decorations;\r\n return ((decorations && decorations.filterInput) || defaultFilterInputProps);\r\n },\r\n getTheadFilterThProps: function (_a) {\r\n var decorations = _a.decorations;\r\n return ((decorations && decorations.filter) || defaultFilterProps);\r\n },\r\n getTbodyProps: function (_a) {\r\n var decorations = _a.decorations;\r\n return ((decorations && decorations.body) || defaultBodyProps);\r\n },\r\n getTrGroupProps: emptyObj,\r\n getTrProps: function (even, _a) {\r\n var decorations = _a.decorations;\r\n if (decorations) {\r\n var props = __assign({}, decorations.row);\r\n if (even) {\r\n props = __assign(__assign({}, props), (decorations.rowEven || defaultRowEvenProps));\r\n }\r\n else {\r\n props = __assign(__assign({}, props), (decorations.rowOdd || defaultRowOddProps));\r\n }\r\n return props;\r\n }\r\n return even ? defaultRowEvenProps : defaultRowOddProps;\r\n },\r\n getTdProps: function (_a) {\r\n var decorations = _a.decorations;\r\n return ((decorations && decorations.cell) || {});\r\n },\r\n getExpanderProps: function (_a) {\r\n var decorations = _a.decorations;\r\n return ((decorations && decorations.expander) || {});\r\n },\r\n getTfootProps: emptyObj,\r\n getTfootTrProps: emptyObj,\r\n getTfootTdProps: function (_a) {\r\n var decorations = _a.decorations;\r\n return ((decorations && decorations.footer) || defaultFooterProps);\r\n },\r\n getPaginationProps: function (_a) {\r\n var decorations = _a.decorations;\r\n return ((decorations && decorations.pagination) || defaultPaginationProps);\r\n },\r\n getLoadingProps: emptyObj,\r\n getNoDataProps: emptyObj,\r\n getResizerProps: emptyObj,\r\n // Global Column Defaults\r\n column: {\r\n // Renderers\r\n Cell: undefined,\r\n Header: undefined,\r\n Footer: undefined,\r\n Aggregated: undefined,\r\n Pivot: undefined,\r\n PivotValue: undefined,\r\n Expander: undefined,\r\n Filter: undefined,\r\n // All Columns\r\n sortable: undefined,\r\n resizable: undefined,\r\n filterable: undefined,\r\n show: true,\r\n minWidth: 100,\r\n // Cells only\r\n getProps: function (_state, _rowInfo, column) {\r\n if (column && column.decorations) {\r\n return column.decorations.cell || {};\r\n }\r\n return {};\r\n },\r\n // Pivot only\r\n aggregate: undefined,\r\n // Headers only\r\n getHeaderProps: function (_state, _rowInfo, column) { return ((column && column.decorations && column.decorations.header) || {}); },\r\n getFilterProps: function (_state, _rowInfo, column) { return ((column && column.decorations && column.decorations.filter) || {}); },\r\n // Footers only\r\n getFooterProps: function (_state, _rowInfo, column) { return ((column && column.decorations && column.decorations.footer) || {}); },\r\n filterMethod: undefined,\r\n filterAll: false,\r\n sortMethod: undefined,\r\n },\r\n // Global Expander Column Defaults\r\n expanderDefaults: {\r\n sortable: false,\r\n resizable: false,\r\n filterable: false,\r\n width: 46,\r\n },\r\n pivotDefaults: {\r\n // extend the defaults for pivoted columns here\r\n },\r\n // Text\r\n previousText: 'Previous',\r\n nextText: 'Next',\r\n loadingText: 'Loading...',\r\n noDataText: 'No rows found',\r\n pageText: 'Page',\r\n ofText: 'of',\r\n rowsText: 'rows',\r\n // Components\r\n TableComponent: TableComponent,\r\n TheadComponent: TheadComponent,\r\n TbodyComponent: TbodyComponent,\r\n TrGroupComponent: TrGroupComponent,\r\n TrComponent: TrComponent,\r\n ThComponent: ThComponent,\r\n TdComponent: TdComponent,\r\n CellTextComponent: CellTextComponent,\r\n TfootComponent: TfootComponent,\r\n FilterComponent: FilterComponent,\r\n ExpanderComponent: ExpanderComponent,\r\n PivotValueComponent: PivotValueComponent,\r\n AggregatedComponent: function (_a) {\r\n var subRows = _a.subRows, column = _a.column;\r\n var previewValues = subRows\r\n .filter(function (d) { return typeof d[column.id] !== 'undefined'; })\r\n .map(function (row, i) { return (\r\n // eslint-disable-next-line react/no-array-index-key\r\n React.createElement(\"span\", { key: i },\r\n row[column.id],\r\n i < subRows.length - 1 ? ', ' : '')); });\r\n return (React.createElement(\"span\", null, previewValues));\r\n },\r\n PivotComponent: undefined,\r\n // the ExpanderComponent and PivotValueComponent at run-time in methods.js\r\n PaginationComponent: ReactTablePagination,\r\n PreviousComponent: undefined,\r\n NextComponent: undefined,\r\n LoadingComponent: LoadingComponent,\r\n NoDataComponent: NoDataComponent,\r\n ResizerComponent: ResizerComponent,\r\n PadRowComponent: function () { return React.createElement(\"span\", null, \"\\u00A0\"); },\r\n};\n\nvar ReactTable = /** @class */ (function (_super) {\r\n __extends(ReactTable, _super);\r\n function ReactTable(props) {\r\n var _this = _super.call(this, props) || this;\r\n _this.rowRef = [];\r\n _this.footerRef = null;\r\n _this.filterRef = null;\r\n _this.headerRef = null;\r\n _this.headerGroupsRef = null;\r\n _this.getResolvedState = function (props, state) { return (__assign(__assign(__assign(__assign({}, _.compactObject(_this.state)), _.compactObject(_this.props)), _.compactObject(state)), _.compactObject(props))); };\r\n _this.fireFetchData = function () {\r\n _this.props.onFetchData(_this.getResolvedState(), _this);\r\n };\r\n _this.getStateOrProp = function (key) { return _.getFirstDefined(_this.state[key], _this.props[key]); };\r\n _this.getMinRows = function () { return _.getFirstDefined(_this.props.minRows, _this.getStateOrProp('pageSize')); };\r\n // User actions\r\n _this.onPageChange = function (page) {\r\n var _a = _this.props, onPageChange = _a.onPageChange, collapseOnPageChange = _a.collapseOnPageChange;\r\n var newState = { page: page };\r\n if (collapseOnPageChange) {\r\n newState.expanded = {};\r\n }\r\n _this.setStateWithData(newState, _this.state, _this.props, function () { return (onPageChange && onPageChange(page)); });\r\n };\r\n _this.onPageSizeChange = function (newPageSize) {\r\n var onPageSizeChange = _this.props.onPageSizeChange;\r\n var _a = _this.getResolvedState(), pageSize = _a.pageSize, page = _a.page;\r\n // Normalize the page to display\r\n var currentRow = pageSize * page;\r\n var newPage = Math.floor(currentRow / newPageSize);\r\n _this.setStateWithData({\r\n pageSize: newPageSize,\r\n page: newPage,\r\n }, _this.state, _this.props, function () { return (onPageSizeChange && onPageSizeChange(newPageSize, newPage)); });\r\n };\r\n _this.sortColumn = function (column, additive) {\r\n var _a = _this.getResolvedState(), sorted = _a.sorted, skipNextSort = _a.skipNextSort, defaultSortDesc = _a.defaultSortDesc;\r\n var firstSortDirection = Object.prototype.hasOwnProperty.call(column, 'defaultSortDesc')\r\n ? column.defaultSortDesc\r\n : defaultSortDesc;\r\n var secondSortDirection = !firstSortDirection;\r\n // we can't stop event propagation from the column resize move handlers\r\n // attached to the document because of react's synthetic events\r\n // so we have to prevent the sort function from actually sorting\r\n // if we click on the column resize element within a header.\r\n if (skipNextSort) {\r\n _this.setStateWithData({\r\n skipNextSort: false,\r\n }, _this.state, _this.props);\r\n return;\r\n }\r\n var onSortedChange = _this.props.onSortedChange;\r\n var newSorted = _.clone(sorted || []).map(function (d) {\r\n d.desc = _.isSortingDesc(d);\r\n return d;\r\n });\r\n if (!_.isArray(column)) {\r\n // Single-Sort\r\n var existingIndex = newSorted.findIndex(function (d) { return d.id === column.id; });\r\n if (existingIndex > -1) {\r\n var existing = newSorted[existingIndex];\r\n if (existing.desc === secondSortDirection) {\r\n if (additive) {\r\n newSorted.splice(existingIndex, 1);\r\n }\r\n else {\r\n existing.desc = firstSortDirection;\r\n newSorted = [existing];\r\n }\r\n }\r\n else {\r\n existing.desc = secondSortDirection;\r\n if (!additive) {\r\n newSorted = [existing];\r\n }\r\n }\r\n }\r\n else if (additive) {\r\n newSorted.push({\r\n id: column.id,\r\n desc: firstSortDirection,\r\n });\r\n }\r\n else {\r\n newSorted = [\r\n {\r\n id: column.id,\r\n desc: firstSortDirection,\r\n },\r\n ];\r\n }\r\n }\r\n else {\r\n // Multi-Sort\r\n var existingIndex_1 = newSorted.findIndex(function (d) { return d.id === column[0].id; });\r\n // Existing Sorted Column\r\n if (existingIndex_1 > -1) {\r\n var existing = newSorted[existingIndex_1];\r\n if (existing.desc === secondSortDirection) {\r\n if (additive) {\r\n newSorted.splice(existingIndex_1, column.length);\r\n }\r\n else {\r\n column.forEach(function (_d, i) {\r\n newSorted[existingIndex_1 + i].desc = firstSortDirection;\r\n });\r\n }\r\n }\r\n else {\r\n column.forEach(function (_d, i) {\r\n newSorted[existingIndex_1 + i].desc = secondSortDirection;\r\n });\r\n }\r\n if (!additive) {\r\n newSorted = newSorted.slice(existingIndex_1, column.length);\r\n }\r\n // New Sort Column\r\n }\r\n else if (additive) {\r\n newSorted = newSorted.concat(column.map(function (d) { return ({\r\n id: d.id,\r\n desc: firstSortDirection,\r\n }); }));\r\n }\r\n else {\r\n newSorted = column.map(function (d) { return ({\r\n id: d.id,\r\n desc: firstSortDirection,\r\n }); });\r\n }\r\n }\r\n _this.setStateWithData({\r\n page: (!sorted.length && newSorted.length) || !additive\r\n ? 0\r\n : _this.state.page,\r\n sorted: newSorted,\r\n }, _this.state, _this.props, function () { return (onSortedChange && onSortedChange(newSorted, column, additive)); });\r\n };\r\n _this.filterColumn = function (column, value) {\r\n var filtered = _this.getResolvedState().filtered;\r\n var onFilteredChange = _this.props.onFilteredChange;\r\n // Remove old filter first if it exists\r\n var newFiltering = (filtered || []).filter(function (x) { return (x.id !== column.id); });\r\n if (value !== '') {\r\n newFiltering.push({\r\n id: column.id,\r\n value: value,\r\n });\r\n }\r\n _this.setStateWithData({\r\n filtered: newFiltering,\r\n }, _this.state, _this.props, function () { return (onFilteredChange && onFilteredChange(newFiltering, column, value)); });\r\n };\r\n _this.resizeColumnStart = function (event, column, isTouch) {\r\n event.stopPropagation();\r\n var parentWidth = event.target.parentElement.getBoundingClientRect()\r\n .width;\r\n var pageX;\r\n if (isTouch) {\r\n pageX = event.changedTouches[0].pageX;\r\n }\r\n else {\r\n pageX = event.pageX;\r\n }\r\n _this.setStateWithData({\r\n currentlyResizing: {\r\n id: column.id,\r\n startX: pageX,\r\n parentWidth: parentWidth,\r\n },\r\n }, _this.state, _this.props, function () {\r\n if (isTouch) {\r\n document.addEventListener('touchmove', _this.resizeColumnMoving);\r\n document.addEventListener('touchcancel', _this.resizeColumnEnd);\r\n document.addEventListener('touchend', _this.resizeColumnEnd);\r\n }\r\n else {\r\n document.addEventListener('mousemove', _this.resizeColumnMoving);\r\n document.addEventListener('mouseup', _this.resizeColumnEnd);\r\n document.addEventListener('mouseleave', _this.resizeColumnEnd);\r\n }\r\n });\r\n };\r\n _this.resizeColumnMoving = function (event) {\r\n event.stopPropagation();\r\n var onResizedChange = _this.props.onResizedChange;\r\n var _a = _this.getResolvedState(), resized = _a.resized, currentlyResizing = _a.currentlyResizing;\r\n // Delete old value\r\n var newResized = resized.filter(function (x) { return x.id !== currentlyResizing.id; });\r\n var pageX;\r\n if (event.type === 'touchmove') {\r\n pageX = event.changedTouches[0].pageX;\r\n }\r\n else if (event.type === 'mousemove') {\r\n pageX = event.pageX;\r\n }\r\n // Set the min size to 10 to account for margin and border or else the\r\n // group headers don't line up correctly\r\n var newWidth = Math.max(currentlyResizing.parentWidth + pageX - currentlyResizing.startX, 11);\r\n newResized.push({\r\n id: currentlyResizing.id,\r\n value: newWidth,\r\n });\r\n _this.setStateWithData({\r\n resized: newResized,\r\n }, _this.state, _this.props, function () { return (onResizedChange && onResizedChange(newResized, event)); });\r\n };\r\n _this.resizeColumnEnd = function (event) {\r\n event.stopPropagation();\r\n var isTouch = event.type === 'touchend' || event.type === 'touchcancel';\r\n if (isTouch) {\r\n document.removeEventListener('touchmove', _this.resizeColumnMoving);\r\n document.removeEventListener('touchcancel', _this.resizeColumnEnd);\r\n document.removeEventListener('touchend', _this.resizeColumnEnd);\r\n }\r\n // If its a touch event clear the mouse one's as well because sometimes\r\n // the mouseDown event gets called as well, but the mouseUp event doesn't\r\n document.removeEventListener('mousemove', _this.resizeColumnMoving);\r\n document.removeEventListener('mouseup', _this.resizeColumnEnd);\r\n document.removeEventListener('mouseleave', _this.resizeColumnEnd);\r\n // The touch events don't propagate up to the sorting's onMouseDown event so\r\n // no need to prevent it from happening or else the first click after a touch\r\n // event resize will not sort the column.\r\n if (!isTouch) {\r\n _this.setStateWithData({\r\n skipNextSort: true,\r\n currentlyResizing: undefined,\r\n }, _this.state, _this.props);\r\n }\r\n };\r\n _this.rowRef = [];\r\n _this.state = {\r\n page: 0,\r\n pageSize: props.defaultPageSize,\r\n sorted: props.defaultSorted,\r\n expanded: props.defaultExpanded,\r\n filtered: props.defaultFiltered,\r\n resized: props.defaultResized,\r\n currentlyResizing: undefined,\r\n skipNextSort: false,\r\n };\r\n return _this;\r\n }\r\n ReactTable.prototype.componentDidMount = function () {\r\n this.fireFetchData();\r\n };\r\n ReactTable.getDerivedStateFromProps = function (nextProps, oldState) {\r\n var newState = __assign(__assign({}, oldState), nextProps);\r\n // Do a deep compare of new and old `defaultOption` and\r\n // if they are different reset `option = defaultOption`\r\n var defaultableOptions = ['sorted', 'filtered', 'resized', 'expanded'];\r\n defaultableOptions.forEach(function (x) {\r\n var defaultName = \"default\" + (x.charAt(0).toUpperCase() + x.slice(1));\r\n if (JSON.stringify(oldState[defaultName])\r\n !== JSON.stringify(newState[defaultName])) {\r\n newState[x] = newState[defaultName];\r\n }\r\n });\r\n // If they change these table options, we need to reset defaults\r\n // or else we could get into a state where the user has changed the UI\r\n // and then disabled the ability to change it back.\r\n // e.g. If `filterable` has changed, set `filtered = defaultFiltered`\r\n var resettableOptions = ['sortable', 'filterable', 'resizable'];\r\n resettableOptions.forEach(function (x) {\r\n if (oldState[x] !== newState[x]) {\r\n var baseName = x.replace('able', '');\r\n var optionName = baseName + \"ed\";\r\n var defaultName = \"default\" + (optionName.charAt(0).toUpperCase()\r\n + optionName.slice(1));\r\n newState[optionName] = newState[defaultName];\r\n }\r\n });\r\n // Props that trigger a data update\r\n if (oldState.data !== newState.data\r\n || JSON.stringify(oldState.columns) !== JSON.stringify(newState.columns)\r\n || oldState.pivotBy !== newState.pivotBy\r\n || oldState.sorted !== newState.sorted\r\n || oldState.filtered !== newState.filtered) {\r\n return ReactTable.getStateWithData(ReactTable.getDataModel(newState, nextProps), oldState, nextProps);\r\n }\r\n return null;\r\n };\r\n ReactTable.getStateWithData = function (newState, oldState, props) {\r\n var newResolvedState = __assign(__assign(__assign({}, oldState), newState), props);\r\n var freezeWhenExpanded = newResolvedState.freezeWhenExpanded;\r\n // Default to unfrozen state\r\n newResolvedState.frozen = false;\r\n // If freezeWhenExpanded is set, check for frozen conditions\r\n if (freezeWhenExpanded) {\r\n // if any rows are expanded, freeze the existing data and sorting\r\n var keys = Object.keys(newResolvedState.expanded);\r\n for (var i = 0; i < keys.length; i += 1) {\r\n if (newResolvedState.expanded[keys[i]]) {\r\n newResolvedState.frozen = true;\r\n break;\r\n }\r\n }\r\n }\r\n // If the data isn't frozen and either the data or\r\n // sorting model has changed, update the data\r\n if ((oldState.frozen && !newResolvedState.frozen)\r\n || oldState.sorted !== newResolvedState.sorted\r\n || oldState.filtered !== newResolvedState.filtered\r\n || oldState.showFilters !== newResolvedState.showFilters\r\n || (!newResolvedState.frozen\r\n && oldState.resolvedData !== newResolvedState.resolvedData)) {\r\n // Handle collapseOnsortedChange & collapseOnDataChange\r\n if ((oldState.sorted !== newResolvedState.sorted\r\n && props.collapseOnSortingChange)\r\n || oldState.filtered !== newResolvedState.filtered\r\n || oldState.showFilters !== newResolvedState.showFilters\r\n || (oldState.sortedData\r\n && !newResolvedState.frozen\r\n && oldState.resolvedData !== newResolvedState.resolvedData\r\n && props.collapseOnDataChange)) {\r\n newResolvedState.expanded = {};\r\n }\r\n Object.assign(newResolvedState, ReactTable.getSortedData(newResolvedState, props));\r\n }\r\n // Set page to 0 if filters change\r\n if (oldState.filtered !== newResolvedState.filtered) {\r\n newResolvedState.page = 0;\r\n }\r\n // Calculate pageSize all the time\r\n if (newResolvedState.sortedData) {\r\n newResolvedState.pages = newResolvedState.manual\r\n ? newResolvedState.pages\r\n : Math.ceil(newResolvedState.sortedData.length / newResolvedState.pageSize);\r\n newResolvedState.page = Math.max(newResolvedState.page >= newResolvedState.pages\r\n ? newResolvedState.pages - 1\r\n : newResolvedState.page, 0);\r\n }\r\n return newResolvedState;\r\n };\r\n ReactTable.prototype.setStateWithData = function (newState, oldState, props, cb) {\r\n var _this = this;\r\n var newResolvedState = ReactTable.getStateWithData(newState, oldState, props);\r\n return this.setState(newResolvedState, function () {\r\n if (cb) {\r\n cb();\r\n }\r\n if (oldState.page !== newResolvedState.page\r\n || oldState.pageSize !== newResolvedState.pageSize\r\n || oldState.sorted !== newResolvedState.sorted\r\n || oldState.filtered !== newResolvedState.filtered) {\r\n _this.fireFetchData();\r\n }\r\n });\r\n };\r\n ReactTable.prototype.render = function () {\r\n var _this = this;\r\n var resolvedState = this.getResolvedState();\r\n var getProps = resolvedState.getProps, getTableProps = resolvedState.getTableProps, getTheadGroupProps = resolvedState.getTheadGroupProps, getTheadGroupTrProps = resolvedState.getTheadGroupTrProps, getTheadProps = resolvedState.getTheadProps, getTheadTrProps = resolvedState.getTheadTrProps, getTheadThProps = resolvedState.getTheadThProps, getTheadFilterProps = resolvedState.getTheadFilterProps, getTheadFilterTrProps = resolvedState.getTheadFilterTrProps, getTheadFilterThProps = resolvedState.getTheadFilterThProps, getFilterInputProps = resolvedState.getFilterInputProps, getTbodyProps = resolvedState.getTbodyProps, getTrGroupProps = resolvedState.getTrGroupProps, getTrProps = resolvedState.getTrProps, getTdProps = resolvedState.getTdProps, getExpanderProps = resolvedState.getExpanderProps, getTfootProps = resolvedState.getTfootProps, getTfootTrProps = resolvedState.getTfootTrProps, getTfootTdProps = resolvedState.getTfootTdProps, getPaginationProps = resolvedState.getPaginationProps, getLoadingProps = resolvedState.getLoadingProps, getNoDataProps = resolvedState.getNoDataProps, getResizerProps = resolvedState.getResizerProps, showPagination = resolvedState.showPagination, showPaginationTop = resolvedState.showPaginationTop, showPaginationBottom = resolvedState.showPaginationBottom, manual = resolvedState.manual, loadingText = resolvedState.loadingText, noDataText = resolvedState.noDataText, sortable = resolvedState.sortable, multiSort = resolvedState.multiSort, resizable = resolvedState.resizable, filterable = resolvedState.filterable, \r\n // Pivoting State\r\n pivotIDKey = resolvedState.pivotIDKey, pivotValKey = resolvedState.pivotValKey, pivotBy = resolvedState.pivotBy, subRowsKey = resolvedState.subRowsKey, aggregatedKey = resolvedState.aggregatedKey, originalKey = resolvedState.originalKey, indexKey = resolvedState.indexKey, groupedByPivotKey = resolvedState.groupedByPivotKey, expanderTdDefaultProps = resolvedState.expanderTdDefaultProps, \r\n // State\r\n loading = resolvedState.loading, pageSize = resolvedState.pageSize, page = resolvedState.page, sorted = resolvedState.sorted, filtered = resolvedState.filtered, resized = resolvedState.resized, expanded = resolvedState.expanded, pages = resolvedState.pages, onExpandedChange = resolvedState.onExpandedChange, \r\n // Components\r\n TableComponent = resolvedState.TableComponent, TheadComponent = resolvedState.TheadComponent, TbodyComponent = resolvedState.TbodyComponent, TrGroupComponent = resolvedState.TrGroupComponent, TrComponent = resolvedState.TrComponent, ThComponent = resolvedState.ThComponent, TdComponent = resolvedState.TdComponent, CellTextComponent = resolvedState.CellTextComponent, TfootComponent = resolvedState.TfootComponent, PaginationComponent = resolvedState.PaginationComponent, LoadingComponent = resolvedState.LoadingComponent, SubComponent = resolvedState.SubComponent, NoDataComponent = resolvedState.NoDataComponent, ResizerComponent = resolvedState.ResizerComponent, ExpanderComponent = resolvedState.ExpanderComponent, PivotValueComponent = resolvedState.PivotValueComponent, PivotComponent = resolvedState.PivotComponent, AggregatedComponent = resolvedState.AggregatedComponent, FilterComponent = resolvedState.FilterComponent, PadRowComponent = resolvedState.PadRowComponent, \r\n // Data model\r\n resolvedData = resolvedState.resolvedData, allVisibleColumns = resolvedState.allVisibleColumns, headerGroups = resolvedState.headerGroups, hasHeaderGroups = resolvedState.hasHeaderGroups, \r\n // Sorted Data\r\n sortedData = resolvedState.sortedData;\r\n // Pagination\r\n var startRow = pageSize * page;\r\n var endRow = startRow + pageSize;\r\n var pageRows = manual ? resolvedData : sortedData.slice(startRow, endRow);\r\n var minRows = this.getMinRows();\r\n var padRows = _.range(Math.max(minRows - pageRows.length, 0));\r\n var hasColumnFooter = allVisibleColumns.some(function (d) { return d.Footer; });\r\n var hasFilters = filterable || allVisibleColumns.some(function (d) { return d.filterable; });\r\n var recurseRowsViewIndex = function (rows, path, index) {\r\n if (path === void 0) { path = []; }\r\n if (index === void 0) { index = -1; }\r\n return ([\r\n rows.map(function (row, i) {\r\n var _a;\r\n index += 1;\r\n var rowWithViewIndex = __assign(__assign({}, row), { viewIndex: index });\r\n var newPath = path.concat([i]);\r\n if (rowWithViewIndex[subRowsKey] && _.get(expanded, newPath)) {\r\n _a = recurseRowsViewIndex(rowWithViewIndex[subRowsKey], newPath, index), rowWithViewIndex[subRowsKey] = _a[0], index = _a[1];\r\n }\r\n return rowWithViewIndex;\r\n }),\r\n index,\r\n ]);\r\n };\r\n pageRows = recurseRowsViewIndex(pageRows)[0];\r\n var canPrevious = page > 0;\r\n var canNext = page + 1 < pages;\r\n var rowMinWidth = _.sum(allVisibleColumns.map(function (d) {\r\n var resizedColumn = resized.find(function (x) { return x.id === d.id; })\r\n || { id: undefined, value: undefined };\r\n return _.getFirstDefined(resizedColumn.value, d.width, d.minWidth);\r\n }));\r\n var rowIndex = -1;\r\n var finalState = __assign(__assign({}, resolvedState), { startRow: startRow,\r\n endRow: endRow,\r\n pageRows: pageRows,\r\n minRows: minRows,\r\n padRows: padRows,\r\n hasColumnFooter: hasColumnFooter,\r\n canPrevious: canPrevious,\r\n canNext: canNext,\r\n rowMinWidth: rowMinWidth });\r\n var rootProps = getProps(finalState, undefined, undefined, this);\r\n var tableProps = getTableProps(finalState, undefined, undefined, this);\r\n var tBodyProps = getTbodyProps(finalState, undefined, undefined, this);\r\n var loadingProps = getLoadingProps(finalState, undefined, undefined, this);\r\n var noDataProps = getNoDataProps(finalState, undefined, undefined, this);\r\n // Visual Components\r\n var makeHeaderGroup = function (column, i) {\r\n var resizedValue = function (col) { return (resized.find(function (x) { return x.id === col.id; })\r\n || { id: undefined, value: undefined }).value; };\r\n var flex = _.sum(column.columns.map(function (col) { return (col.width || resizedValue(col) ? 0 : col.minWidth); }));\r\n var width = _.sum(column.columns.map(function (col) { return _.getFirstDefined(resizedValue(col), col.width, col.minWidth); }));\r\n var maxWidth = _.sum(column.columns.map(function (col) { return _.getFirstDefined(resizedValue(col), col.width, col.maxWidth); }));\r\n var theadGroupThProps = getTheadGroupProps(finalState, undefined, column, _this);\r\n var columnHeaderProps = column.getHeaderProps(finalState, undefined, column, _this);\r\n var rest = __assign(__assign(__assign({}, theadGroupThProps), columnHeaderProps), { CellTextComponent: CellTextComponent });\r\n var flexStyles = {\r\n flex: flex + \" 0 auto\",\r\n width: _.asPx(width),\r\n maxWidth: _.asPx(maxWidth),\r\n };\r\n return (React.createElement(ThComponent, __assign({ key: i + \"-\" + column.id, style: flexStyles }, rest), _.normalizeComponent(column.Header, {\r\n data: sortedData,\r\n column: column,\r\n })));\r\n };\r\n var selectRow = function (index) { return function (nextRow, childIndex) {\r\n var selectFirstAvailable = function (rows) {\r\n for (var i = 0; i < rows.length; i += 1) {\r\n if (rows[i]) {\r\n return rows[i].selectFirstChild(childIndex);\r\n }\r\n }\r\n return false;\r\n };\r\n var found;\r\n if (typeof index === 'number') {\r\n var _a = _this.state, page_1 = _a.page, pages_1 = _a.pages;\r\n if (nextRow) {\r\n if (pageRows.length > index + 1) {\r\n found = _this.rowRef[index + 1].selectFirstChild(childIndex);\r\n }\r\n else if (page_1 < pages_1 - 1) {\r\n _this.onPageChange(page_1 + 1);\r\n found = true;\r\n }\r\n else {\r\n found = selectFirstAvailable([_this.footerRef]);\r\n }\r\n }\r\n else if (index > 0) {\r\n found = _this.rowRef[index - 1].selectFirstChild(childIndex);\r\n }\r\n else if (page_1 > 0) {\r\n _this.onPageChange(page_1 - 1);\r\n found = true;\r\n }\r\n else {\r\n found = selectFirstAvailable([_this.filterRef, _this.headerRef, _this.headerGroupsRef]);\r\n }\r\n }\r\n if (!found) {\r\n if (nextRow) {\r\n focusNextElement(document);\r\n }\r\n else {\r\n focusPrevElement(document);\r\n }\r\n }\r\n }; };\r\n var makeHeaderGroups = function () {\r\n var theadGroupProps = getTheadGroupProps(finalState, undefined, undefined, _this);\r\n var theadGroupTrProps = getTheadGroupTrProps(finalState, undefined, undefined, _this);\r\n return (React.createElement(TheadComponent, __assign({ style: { minWidth: rowMinWidth + \"px\" } }, theadGroupProps),\r\n React.createElement(TrComponent, __assign({ ref: function (el) { _this.headerGroupsRef = el; }, selectRow: selectRow('headerGroup') }, theadGroupTrProps), headerGroups.map(makeHeaderGroup))));\r\n };\r\n var makeHeader = function (column, i) {\r\n var resizedCol = resized.find(function (x) { return x.id === column.id; })\r\n || { id: undefined, value: undefined };\r\n var sort = sorted.find(function (d) { return d.id === column.id; });\r\n var show = typeof column.show === 'function' ? column.show() : column.show;\r\n var width = _.getFirstDefined(resizedCol.value, column.width, column.minWidth);\r\n var maxWidth = _.getFirstDefined(resizedCol.value, column.width, column.maxWidth);\r\n var theadThProps = getTheadThProps(finalState, undefined, column, _this);\r\n var columnHeaderProps = column.getHeaderProps(finalState, undefined, column, _this);\r\n var rest = __assign(__assign(__assign({}, theadThProps), columnHeaderProps), { CellTextComponent: CellTextComponent });\r\n var isResizable = _.getFirstDefined(column.resizable, resizable, false);\r\n var resizer = isResizable\r\n ? (React.createElement(ResizerComponent, __assign({ onMouseDown: function (e) { return _this.resizeColumnStart(e, column, false); }, onTouchStart: function (e) { return _this.resizeColumnStart(e, column, true); } }, getResizerProps(finalState, undefined, column, _this))))\r\n : null;\r\n var isSortable = _.getFirstDefined(column.sortable, sortable, false);\r\n return (React.createElement(ThComponent, __assign({ key: i + \"-\" + column.id, sort: sort && (sort.desc ? '-sort-desc' : '-sort-asc'), resizable: isResizable, sortable: isSortable, hidden: !show, expander: column.expander, pivot: pivotBy && pivotBy.slice(0, -1).includes(column.id), style: {\r\n flex: width + \" 0 auto\",\r\n width: _.asPx(width),\r\n maxWidth: _.asPx(maxWidth),\r\n }, toggleSort: function (e) {\r\n if (isSortable)\r\n _this.sortColumn(column, multiSort ? e.shiftKey : false);\r\n } }, rest),\r\n _.normalizeComponent(column.Header, {\r\n data: sortedData,\r\n column: column,\r\n }),\r\n resizer));\r\n };\r\n var makeHeaders = function () {\r\n var theadProps = getTheadProps(finalState, undefined, undefined, _this);\r\n var theadTrProps = getTheadTrProps(finalState, undefined, undefined, _this);\r\n return (React.createElement(TheadComponent, __assign({ header: true, style: {\r\n minWidth: rowMinWidth + \"px\",\r\n } }, theadProps),\r\n React.createElement(TrComponent, __assign({ ref: function (el) { _this.headerRef = el; }, selectRow: selectRow('header') }, theadTrProps), allVisibleColumns.map(makeHeader))));\r\n };\r\n var makeFilter = function (column, i) {\r\n var resizedCol = resized.find(function (x) { return x.id === column.id; })\r\n || { id: undefined, value: undefined };\r\n var width = _.getFirstDefined(resizedCol.value, column.width, column.minWidth);\r\n var maxWidth = _.getFirstDefined(resizedCol.value, column.width, column.maxWidth);\r\n var theadFilterThProps = getTheadFilterThProps(finalState, undefined, column, _this);\r\n var filterInputProps = getFilterInputProps(finalState, undefined, column, _this);\r\n var columnHeaderProps = column.getFilterProps(finalState, undefined, column, _this);\r\n var rest = __assign(__assign(__assign({}, theadFilterThProps), columnHeaderProps), { CellTextComponent: CellTextComponent });\r\n var filter = filtered.find(function (filter) { return filter.id === column.id; });\r\n var ResolvedFilterComponent = column.Filter || FilterComponent;\r\n var isFilterable = _.getFirstDefined(column.filterable, filterable, false);\r\n return (React.createElement(ThComponent, __assign({ key: i + \"-\" + column.id, style: {\r\n flex: width + \" 0 auto\",\r\n width: _.asPx(width),\r\n maxWidth: _.asPx(maxWidth),\r\n } }, rest), isFilterable\r\n ? _.normalizeComponent(ResolvedFilterComponent, __assign(__assign({}, filterInputProps), { column: column,\r\n filter: filter, onChange: function (value) { return _this.filterColumn(column, value); } }), undefined)\r\n : null));\r\n };\r\n var makeFilters = function () {\r\n var theadFilterProps = getTheadFilterProps(finalState, undefined, undefined, _this);\r\n var theadFilterTrProps = getTheadFilterTrProps(finalState, undefined, undefined, _this);\r\n return (React.createElement(TheadComponent, __assign({ filters: true, style: {\r\n minWidth: rowMinWidth + \"px\",\r\n } }, theadFilterProps),\r\n React.createElement(TrComponent, __assign({ ref: function (el) { _this.filterRef = el; }, selectRow: selectRow('filter') }, theadFilterTrProps), allVisibleColumns.map(makeFilter))));\r\n };\r\n var makePageRow = function (row, i, path) {\r\n if (path === void 0) { path = []; }\r\n var rowInfo = {\r\n original: row[originalKey],\r\n row: row,\r\n index: row[indexKey],\r\n viewIndex: rowIndex += 1,\r\n pageSize: pageSize,\r\n page: page,\r\n level: path.length,\r\n nestingPath: path.concat([i]),\r\n aggregated: row[aggregatedKey],\r\n groupedByPivot: row[groupedByPivotKey],\r\n subRows: row[subRowsKey],\r\n };\r\n var isExpanded = _.get(expanded, rowInfo.nestingPath);\r\n var trGroupProps = getTrGroupProps(finalState, rowInfo, undefined, _this);\r\n var expanderProps = getExpanderProps(finalState, rowInfo, undefined, _this);\r\n var trProps = getTrProps(row.viewIndex % 2, finalState, rowInfo, undefined, _this);\r\n return (React.createElement(TrGroupComponent, __assign({ key: rowInfo.nestingPath.join('_') }, trGroupProps),\r\n React.createElement(TrComponent, __assign({ selectRow: selectRow(i), ref: function (el) { _this.rowRef[i] = el; }, rowIndex: row.viewIndex }, trProps), allVisibleColumns.map(function (column, i2) {\r\n var defaultTdProps = {};\r\n var resizedCol = resized.find(function (x) { return x.id === column.id; })\r\n || { id: undefined, value: undefined };\r\n var show = typeof column.show === 'function' ? column.show() : column.show;\r\n var width = _.getFirstDefined(resizedCol.value, column.width, column.minWidth);\r\n var maxWidth = _.getFirstDefined(resizedCol.value, column.width, column.maxWidth);\r\n var tdProps = getTdProps(finalState, rowInfo, column, _this);\r\n var columnProps = column.getProps(finalState, rowInfo, column);\r\n var cellInfo = __assign(__assign(__assign(__assign({}, rowInfo), { isExpanded: isExpanded, column: __assign({}, column), value: rowInfo.row[column.id], pivoted: column.pivoted, expander: column.expander, expandable: undefined, resized: resized,\r\n show: show,\r\n width: width,\r\n maxWidth: maxWidth }), tdProps), columnProps);\r\n var value = cellInfo.value;\r\n var useOnExpanderClick;\r\n var isBranch;\r\n var isPreview;\r\n var onExpanderClick = function (e) {\r\n var newExpanded = _.clone(expanded);\r\n if (isExpanded) {\r\n newExpanded = _.set(newExpanded, cellInfo.nestingPath, false);\r\n }\r\n else {\r\n newExpanded = _.set(newExpanded, cellInfo.nestingPath, {});\r\n }\r\n return _this.setStateWithData({\r\n expanded: newExpanded,\r\n }, _this.state, _this.props, function () { return (onExpandedChange\r\n && onExpandedChange(newExpanded, cellInfo.nestingPath, e)); });\r\n };\r\n // Default to a standard cell\r\n if (column.Cell) {\r\n value = _.normalizeComponent(column.Cell, cellInfo, value);\r\n }\r\n var cellProps = __assign(__assign({}, tdProps), columnProps);\r\n var resolvedCell = React.createElement(CellTextComponent, __assign({ value: value }, cellProps));\r\n // Resolve Renderers\r\n var ResolvedAggregatedComponent = column.Aggregated\r\n || (!column.aggregate ? AggregatedComponent : column.Cell);\r\n var ResolvedExpanderComponent = column.Expander || ExpanderComponent;\r\n var ResolvedPivotValueComponent = column.PivotValue || PivotValueComponent;\r\n var DefaultResolvedPivotComponent = PivotComponent\r\n || (function (props) { return (React.createElement(React.Fragment, null,\r\n React.createElement(ResolvedExpanderComponent, __assign({}, __assign(__assign({}, props), { expanderProps: expanderProps }))),\r\n React.createElement(ResolvedPivotValueComponent, __assign({}, props)))); });\r\n var ResolvedPivotComponent = column.Pivot || DefaultResolvedPivotComponent;\r\n // Is this cell expandable?\r\n if (cellInfo.pivoted || cellInfo.expander) {\r\n // Make it expandable by defualt\r\n cellInfo.expandable = true;\r\n useOnExpanderClick = true;\r\n // If pivoted, has no subRows, and does not have a subComponent,\r\n // do not make expandable\r\n if (cellInfo.pivoted && !cellInfo.subRows && !SubComponent) {\r\n cellInfo.expandable = false;\r\n }\r\n }\r\n if (cellInfo.pivoted) {\r\n // Is this column a branch?\r\n isBranch = rowInfo.row[pivotIDKey] === column.id && cellInfo.subRows;\r\n // Should this column be blank?\r\n isPreview = pivotBy.indexOf(column.id)\r\n > pivotBy.indexOf(rowInfo.row[pivotIDKey]) && cellInfo.subRows;\r\n // Pivot Cell Render Override\r\n if (isBranch) {\r\n // isPivot\r\n resolvedCell = _.normalizeComponent(ResolvedPivotComponent, __assign(__assign({}, cellInfo), { value: row[pivotValKey] }), row[pivotValKey]);\r\n }\r\n else if (isPreview) {\r\n // Show the pivot preview\r\n resolvedCell = _.normalizeComponent(ResolvedAggregatedComponent, cellInfo, value);\r\n }\r\n else {\r\n resolvedCell = null;\r\n }\r\n }\r\n else if (cellInfo.aggregated) {\r\n resolvedCell = _.normalizeComponent(ResolvedAggregatedComponent, cellInfo, value);\r\n }\r\n if (cellInfo.expander) {\r\n defaultTdProps = expanderTdDefaultProps;\r\n resolvedCell = _.normalizeComponent(ResolvedExpanderComponent, __assign(__assign({}, cellInfo), { expanderProps: expanderProps }), row[pivotValKey]);\r\n if (pivotBy) {\r\n if (cellInfo.groupedByPivot) {\r\n resolvedCell = null;\r\n }\r\n if (!cellInfo.subRows && !SubComponent) {\r\n resolvedCell = null;\r\n }\r\n }\r\n }\r\n var resolvedOnExpanderClick = useOnExpanderClick\r\n ? onExpanderClick\r\n : function () { };\r\n // If there are multiple onClick events, make sure they don't\r\n // override eachother. This should maybe be expanded to handle all\r\n // function attributes\r\n var interactionProps = {\r\n onClick: resolvedOnExpanderClick,\r\n };\r\n if (tdProps.onClick) {\r\n interactionProps.onClick = function (e) {\r\n tdProps.onClick(e, function () { return resolvedOnExpanderClick(e); });\r\n };\r\n }\r\n if (columnProps.onClick) {\r\n interactionProps.onClick = function (e) {\r\n columnProps.onClick(e, function () { return resolvedOnExpanderClick(e); });\r\n };\r\n }\r\n // Return the cell\r\n return (React.createElement(TdComponent\r\n // eslint-disable-next-line react/no-array-index-key\r\n , __assign({ \r\n // eslint-disable-next-line react/no-array-index-key\r\n key: i2 + \"-\" + column.id, hidden: !show, style: {\r\n flex: width + \" 0 auto\",\r\n width: _.asPx(width),\r\n maxWidth: _.asPx(maxWidth),\r\n } }, tdProps, columnProps, interactionProps, defaultTdProps), resolvedCell));\r\n })),\r\n rowInfo.subRows\r\n && isExpanded\r\n && rowInfo.subRows.map(function (d, i) { return makePageRow(d, i, rowInfo.nestingPath); }),\r\n SubComponent\r\n && !rowInfo.subRows\r\n && isExpanded\r\n && SubComponent(rowInfo)));\r\n };\r\n var makePadColumn = function (column, i) {\r\n var resizedCol = resized.find(function (x) { return x.id === column.id; })\r\n || { id: undefined, value: undefined };\r\n var show = typeof column.show === 'function' ? column.show() : column.show;\r\n var width = _.getFirstDefined(resizedCol.value, column.width, column.minWidth);\r\n var flex = width;\r\n var maxWidth = _.getFirstDefined(resizedCol.value, column.width, column.maxWidth);\r\n var tdProps = getTdProps(finalState, undefined, column, _this);\r\n return (React.createElement(TdComponent, __assign({ key: i + \"-\" + column.id, hidden: !show, style: {\r\n flex: flex + \" 0 auto\",\r\n width: _.asPx(width),\r\n maxWidth: _.asPx(maxWidth),\r\n } }, tdProps), _.normalizeComponent(PadRowComponent)));\r\n };\r\n var makePadRow = function (row, i) {\r\n var trGroupProps = getTrGroupProps(finalState, undefined, undefined, _this);\r\n var trProps = getTrProps(row.viewIndex % 2, finalState, undefined, undefined, _this);\r\n return (React.createElement(TrGroupComponent, __assign({ key: i }, trGroupProps),\r\n React.createElement(TrComponent, __assign({ padrow: true, even: (pageRows.length + i) % 2 }, trProps), allVisibleColumns.map(makePadColumn))));\r\n };\r\n var makeColumnFooter = function (column, i) {\r\n var resizedCol = resized.find(function (x) { return x.id === column.id; })\r\n || { id: undefined, value: undefined };\r\n var show = typeof column.show === 'function' ? column.show() : column.show;\r\n var width = _.getFirstDefined(resizedCol.value, column.width, column.minWidth);\r\n var maxWidth = _.getFirstDefined(resizedCol.value, column.width, column.maxWidth);\r\n var tFootTdProps = getTfootTdProps(finalState, undefined, undefined, _this);\r\n var columnProps = column.getProps(finalState, undefined, column, _this);\r\n var columnFooterProps = column.getFooterProps(finalState, undefined, column, _this);\r\n return (React.createElement(TdComponent, __assign({ key: i + \"-\" + column.id, hidden: !show, style: {\r\n flex: width + \" 0 auto\",\r\n width: _.asPx(width),\r\n maxWidth: _.asPx(maxWidth),\r\n } }, columnProps, tFootTdProps, columnFooterProps), _.normalizeComponent(column.Footer, {\r\n data: sortedData,\r\n column: column,\r\n })));\r\n };\r\n var makeColumnFooters = function () {\r\n var tFootProps = getTfootProps(finalState, undefined, undefined, _this);\r\n var tFootTrProps = getTfootTrProps(finalState, undefined, undefined, _this);\r\n return (React.createElement(TfootComponent, __assign({ style: {\r\n minWidth: rowMinWidth + \"px\",\r\n } }, tFootProps),\r\n React.createElement(TrComponent, __assign({ ref: function (el) { _this.footerRef = el; }, selectRow: selectRow('footer') }, tFootTrProps), allVisibleColumns.map(makeColumnFooter))));\r\n };\r\n var makePagination = function () {\r\n var paginationProps = getPaginationProps(finalState, undefined, undefined, _this);\r\n return (React.createElement(PaginationComponent, __assign({}, resolvedState, { pages: pages, canPrevious: canPrevious, canNext: canNext, onPageChange: _this.onPageChange, onPageSizeChange: _this.onPageSizeChange }, paginationProps)));\r\n };\r\n var makeTable = function () {\r\n var pagination = makePagination();\r\n return (React.createElement(\"div\", __assign({}, rootProps),\r\n showPagination && showPaginationTop ? (React.createElement(\"div\", null, pagination))\r\n : null,\r\n React.createElement(TableComponent, __assign({}, tableProps),\r\n hasHeaderGroups ? makeHeaderGroups() : null,\r\n makeHeaders(),\r\n hasFilters ? makeFilters() : null,\r\n React.createElement(TbodyComponent, __assign({ style: {\r\n minWidth: rowMinWidth + \"px\",\r\n } }, tBodyProps),\r\n React.createElement(LoadingComponent, __assign({ loading: loading, loadingText: loadingText }, loadingProps)),\r\n pageRows.map(function (d, i) { return makePageRow(d, i); }),\r\n padRows.map(makePadRow)),\r\n hasColumnFooter ? makeColumnFooters() : null),\r\n showPagination && showPaginationBottom ? (React.createElement(\"div\", null, pagination))\r\n : null,\r\n !pageRows.length && !loading\r\n && (React.createElement(NoDataComponent, __assign({}, noDataProps), _.normalizeComponent(noDataText)))));\r\n };\r\n // childProps are optionally passed to a function-as-a-child\r\n return makeTable();\r\n };\r\n ReactTable.defaultProps = defaultProps;\r\n ReactTable.getDataModel = function (newState, props) {\r\n var columns = newState.columns, _a = newState.pivotBy, pivotBy = _a === void 0 ? [] : _a, data = newState.data, pivotIDKey = newState.pivotIDKey, pivotValKey = newState.pivotValKey, subRowsKey = newState.subRowsKey, aggregatedKey = newState.aggregatedKey, nestingLevelKey = newState.nestingLevelKey, originalKey = newState.originalKey, indexKey = newState.indexKey, groupedByPivotKey = newState.groupedByPivotKey, SubComponent = newState.SubComponent;\r\n // Determine Header Groups\r\n var hasHeaderGroups = false;\r\n columns.forEach(function (column) {\r\n if (column.columns) {\r\n hasHeaderGroups = true;\r\n }\r\n });\r\n var columnsWithExpander = __spreadArrays(columns);\r\n var expanderColumn = columns.find(function (col) { return col.expander\r\n || (col.columns && col.columns.some(function (col2) { return col2.expander; })); });\r\n // The actual expander might be in the columns field of a group column\r\n if (expanderColumn && !expanderColumn.expander) {\r\n expanderColumn = expanderColumn.columns.find(function (col) { return col.expander; });\r\n }\r\n // If we have SubComponent's we need to make sure we have an expander column\r\n if (SubComponent && !expanderColumn) {\r\n expanderColumn = { expander: true };\r\n columnsWithExpander = __spreadArrays([expanderColumn], columnsWithExpander);\r\n }\r\n var makeDecoratedColumn = function (column, parentColumn) {\r\n var dcol;\r\n if (column.expander) {\r\n dcol = __assign(__assign(__assign({}, props.column), props.expanderDefaults), column);\r\n }\r\n else {\r\n dcol = __assign(__assign({}, props.column), column);\r\n }\r\n // Ensure minWidth is not greater than maxWidth if set\r\n if (dcol.maxWidth < dcol.minWidth) {\r\n dcol.minWidth = dcol.maxWidth;\r\n }\r\n if (parentColumn) {\r\n dcol.parentColumn = parentColumn;\r\n }\r\n // First check for string accessor\r\n if (typeof dcol.accessor === 'string') {\r\n dcol.id = dcol.id || dcol.accessor;\r\n var accessorString_1 = dcol.accessor;\r\n dcol.accessor = function (row) { return _.get(row, accessorString_1); };\r\n return dcol;\r\n }\r\n // Fall back to functional accessor (but require an ID)\r\n if (dcol.accessor && !dcol.id) {\r\n console.warn(dcol);\r\n throw new Error('A column id is required if using a non-string accessor for column above.');\r\n }\r\n // Fall back to an undefined accessor\r\n if (!dcol.accessor) {\r\n dcol.accessor = function () { return undefined; };\r\n }\r\n return dcol;\r\n };\r\n var allDecoratedColumns = [];\r\n // Decorate the columns\r\n var decorateAndAddToAll = function (column, parentColumn) {\r\n var decoratedColumn = makeDecoratedColumn(column, parentColumn);\r\n allDecoratedColumns.push(decoratedColumn);\r\n return decoratedColumn;\r\n };\r\n var decoratedColumns = columnsWithExpander.map(function (column) {\r\n if (column.columns) {\r\n return __assign(__assign({}, column), { columns: column.columns.map(function (d) { return decorateAndAddToAll(d, column); }) });\r\n }\r\n return decorateAndAddToAll(column);\r\n });\r\n // Build the visible columns, headers and flat column list\r\n var visibleColumns = decoratedColumns.slice();\r\n var allVisibleColumns = [];\r\n visibleColumns = visibleColumns.map(function (column) {\r\n if (column.columns) {\r\n var visibleSubColumns = column.columns.filter(function (d) { return (pivotBy.indexOf(d.id) > -1\r\n ? false\r\n : _.getFirstDefined(d.show, true)); });\r\n return __assign(__assign({}, column), { columns: visibleSubColumns });\r\n }\r\n return column;\r\n });\r\n visibleColumns = visibleColumns.filter(function (column) { return (column.columns\r\n ? column.columns.length\r\n : pivotBy.indexOf(column.id) > -1\r\n ? false\r\n : _.getFirstDefined(column.show, true)); });\r\n // Find any custom pivot location\r\n var pivotIndex = visibleColumns.findIndex(function (col) { return col.pivot; });\r\n // Handle Pivot Columns\r\n if (pivotBy.length) {\r\n // Retrieve the pivot columns in the correct pivot order\r\n var pivotColumns_1 = [];\r\n pivotBy.forEach(function (pivotID) {\r\n var found = allDecoratedColumns.find(function (d) { return d.id === pivotID; });\r\n if (found) {\r\n pivotColumns_1.push(found);\r\n }\r\n });\r\n var PivotParentColumn = pivotColumns_1.reduce(function (prev, current) { return prev && prev === current.parentColumn && current.parentColumn; }, pivotColumns_1[0].parentColumn);\r\n var PivotGroupHeader = hasHeaderGroups && (PivotParentColumn ? PivotParentColumn.Header\r\n : (pivotColumns_1[0].PivotHeader || pivotColumns_1[0].Header));\r\n var pivotColumnGroup = {\r\n Header: PivotGroupHeader,\r\n columns: pivotColumns_1.map(function (col) { return (__assign(__assign(__assign({}, props.pivotDefaults), col), { pivoted: true })); }),\r\n };\r\n // Place the pivotColumns back into the visibleColumns\r\n if (pivotIndex >= 0) {\r\n pivotColumnGroup = __assign(__assign({}, visibleColumns[pivotIndex]), pivotColumnGroup);\r\n visibleColumns.splice(pivotIndex, 1, pivotColumnGroup);\r\n }\r\n else {\r\n visibleColumns.unshift(pivotColumnGroup);\r\n }\r\n }\r\n // Build Header Groups\r\n var headerGroups = [];\r\n var currentSpan = [];\r\n // A convenience function to add a header and reset the currentSpan\r\n var addHeader = function (columns, column) {\r\n headerGroups.push(__assign(__assign(__assign({}, props.column), column), { columns: columns }));\r\n currentSpan = [];\r\n };\r\n // Build flast list of allVisibleColumns and HeaderGroups\r\n visibleColumns.forEach(function (column) {\r\n if (column.columns) {\r\n allVisibleColumns = allVisibleColumns.concat(column.columns);\r\n if (currentSpan.length > 0) {\r\n addHeader(currentSpan);\r\n }\r\n addHeader(column.columns, column);\r\n return;\r\n }\r\n allVisibleColumns.push(column);\r\n currentSpan.push(column);\r\n });\r\n if (hasHeaderGroups && currentSpan.length > 0) {\r\n addHeader(currentSpan);\r\n }\r\n // Access the data\r\n var accessRow = function (d, i, level) {\r\n var _a;\r\n if (level === void 0) { level = 0; }\r\n var row = (_a = {},\r\n _a[originalKey] = d,\r\n _a[indexKey] = i,\r\n _a[subRowsKey] = d[subRowsKey],\r\n _a[nestingLevelKey] = level,\r\n _a);\r\n allDecoratedColumns.forEach(function (column) {\r\n if (column.expander)\r\n return;\r\n row[column.id] = column.accessor(d);\r\n });\r\n if (row[subRowsKey]) {\r\n row[subRowsKey] = row[subRowsKey].map(function (d, i) { return accessRow(d, i, level + 1); });\r\n }\r\n return row;\r\n };\r\n var resolvedData = data.map(function (d, i) { return accessRow(d, i); });\r\n var aggregatingColumns = allVisibleColumns.filter(function (d) { return !d.expander && d.aggregate; });\r\n // If pivoting, recursively group the data\r\n var aggregate = function (rows) {\r\n var aggregationValues = {};\r\n aggregatingColumns.forEach(function (column) {\r\n var values = rows.map(function (d) { return d[column.id]; });\r\n aggregationValues[column.id] = column.aggregate(values, rows);\r\n });\r\n return aggregationValues;\r\n };\r\n if (pivotBy.length) {\r\n var groupRecursively_1 = function (rows, keys, i) {\r\n if (i === void 0) { i = 0; }\r\n // This is the last level, just return the rows\r\n if (i === keys.length) {\r\n return rows;\r\n }\r\n // Group the rows together for this level\r\n var groupedRows = Object.entries(_.groupBy(rows, keys[i])).map(function (_a) {\r\n var _b;\r\n var key = _a[0], value = _a[1];\r\n return (_b = {},\r\n _b[pivotIDKey] = keys[i],\r\n _b[pivotValKey] = key,\r\n _b[keys[i]] = key,\r\n _b[subRowsKey] = value,\r\n _b[nestingLevelKey] = i,\r\n _b[groupedByPivotKey] = true,\r\n _b);\r\n });\r\n // Recurse into the subRows\r\n groupedRows = groupedRows.map(function (rowGroup) {\r\n var _a;\r\n var subRows = groupRecursively_1(rowGroup[subRowsKey], keys, i + 1);\r\n return __assign(__assign(__assign({}, rowGroup), (_a = {}, _a[subRowsKey] = subRows, _a[aggregatedKey] = true, _a)), aggregate(subRows));\r\n });\r\n return groupedRows;\r\n };\r\n resolvedData = groupRecursively_1(resolvedData, pivotBy);\r\n }\r\n return __assign(__assign({}, newState), { resolvedData: resolvedData,\r\n allVisibleColumns: allVisibleColumns,\r\n headerGroups: headerGroups,\r\n allDecoratedColumns: allDecoratedColumns,\r\n hasHeaderGroups: hasHeaderGroups });\r\n };\r\n ReactTable.getSortedData = function (resolvedState, props) {\r\n var manual = resolvedState.manual, sorted = resolvedState.sorted, filtered = resolvedState.filtered, defaultFilterMethod = resolvedState.defaultFilterMethod, resolvedData = resolvedState.resolvedData, allVisibleColumns = resolvedState.allVisibleColumns, allDecoratedColumns = resolvedState.allDecoratedColumns;\r\n var sortMethodsByColumnID = {};\r\n allDecoratedColumns.filter(function (col) { return col.sortMethod; }).forEach(function (col) {\r\n sortMethodsByColumnID[col.id] = col.sortMethod;\r\n });\r\n // Resolve the data from either manual data or sorted data\r\n return {\r\n sortedData: manual\r\n ? resolvedData\r\n : ReactTable.sortData(ReactTable.filterData(resolvedData, filtered, defaultFilterMethod, allVisibleColumns, props), sorted, sortMethodsByColumnID, props),\r\n };\r\n };\r\n ReactTable.filterData = function (data, filtered, defaultFilterMethod, allVisibleColumns, props) {\r\n var filteredData = data;\r\n if (filtered.length) {\r\n filteredData = filtered.reduce(function (filteredSoFar, nextFilter) {\r\n var column = allVisibleColumns.find(function (x) { return x.id === nextFilter.id; });\r\n // Don't filter hidden columns or columns that have had their filters disabled\r\n if (!column || column.filterable === false) {\r\n return filteredSoFar;\r\n }\r\n var filterMethod = column.filterMethod || defaultFilterMethod;\r\n // If 'filterAll' is set to true, pass the entire dataset to the filter method\r\n if (column.filterAll) {\r\n return filterMethod(nextFilter, filteredSoFar, column);\r\n }\r\n return filteredSoFar.filter(function (row) { return (filterMethod(nextFilter, row, column)); });\r\n }, filteredData);\r\n // Apply the filter to the subrows if we are pivoting, and then\r\n // filter any rows without subcolumns because it would be strange to show\r\n filteredData = filteredData\r\n .map(function (row) {\r\n var _a;\r\n if (!row[props.subRowsKey]) {\r\n return row;\r\n }\r\n return __assign(__assign({}, row), (_a = {}, _a[props.subRowsKey] = ReactTable.filterData(row[props.subRowsKey], filtered, defaultFilterMethod, allVisibleColumns, props), _a));\r\n })\r\n .filter(function (row) {\r\n if (!row[props.subRowsKey]) {\r\n return true;\r\n }\r\n return row[props.subRowsKey].length > 0;\r\n });\r\n }\r\n return filteredData;\r\n };\r\n ReactTable.sortData = function (data, sorted, sortMethodsByColumnID, props) {\r\n if (sortMethodsByColumnID === void 0) { sortMethodsByColumnID = {}; }\r\n if (!sorted.length) {\r\n return data;\r\n }\r\n var sortedData = _.orderBy(data, sorted.map(function (sort) {\r\n // Support custom sorting methods for each column\r\n if (sortMethodsByColumnID[sort.id]) {\r\n return function (a, b) { return (sortMethodsByColumnID[sort.id](a[sort.id], b[sort.id], sort.desc)); };\r\n }\r\n return function (a, b) { return (props.defaultSortMethod(a[sort.id], b[sort.id], sort.desc)); };\r\n }), sorted.map(function (d) { return !d.desc; }), props.indexKey);\r\n sortedData.forEach(function (row) {\r\n if (!row[props.subRowsKey]) {\r\n return;\r\n }\r\n row[props.subRowsKey] = ReactTable.sortData(row[props.subRowsKey], sorted, sortMethodsByColumnID, props);\r\n });\r\n return sortedData;\r\n };\r\n return ReactTable;\r\n}(Component));\n\nvar StyledPagingTable = styled(ReactTable)(templateObject_1$b || (templateObject_1$b = __makeTemplateObject([\"\\n max-width: 100%;\\n width: 100%;\\n overflow: hidden;\\n\"], [\"\\n max-width: 100%;\\n width: 100%;\\n overflow: hidden;\\n\"])));\r\nvar templateObject_1$b;\n\nvar responsiveColumns = function (size, columns) { return (Array.isArray(columns)\r\n ? columns.map(function (column) {\r\n if (size === undefined) {\r\n return column;\r\n }\r\n var show = column.show;\r\n if (column.responsiveShow) {\r\n var sizes = Array.isArray(column.responsiveShow)\r\n ? column.responsiveShow : [column.responsiveShow];\r\n if (sizes.indexOf(size) !== -1) {\r\n show = true;\r\n }\r\n }\r\n if (column.responsiveHide) {\r\n var sizes = Array.isArray(column.responsiveHide)\r\n ? column.responsiveHide : [column.responsiveHide];\r\n if (sizes.indexOf(size) !== -1) {\r\n show = false;\r\n }\r\n }\r\n if (show === undefined) {\r\n return column;\r\n }\r\n return __assign(__assign({}, column), { show: show });\r\n }) : columns); };\r\n/**\r\n * Table component with pagination, filtering, footer, child rows and grouping
\r\n * Derived from https://github.com/react-tools/react-table
\r\n * `import { PagingTable } from 'grommet-controls';`
\r\n * ``
\r\n */\r\nvar PagingTable = function (_a) {\r\n var data = _a.data, columns = _a.columns, rest = __rest(_a, [\"data\", \"columns\"]);\r\n var defaults = {\r\n showPagination: (rest.onFetchData !== undefined)\r\n || (data && data.length > (rest.defaultPageSize || 20)),\r\n minRows: data && data.length < (rest.defaultPageSize || 20) ? 0 : undefined,\r\n };\r\n var newProps = __assign(__assign({}, defaults), rest);\r\n return (React.createElement(ResponsiveContext.Consumer, null, function (size) { return (React.createElement(ThemeContext.Consumer, null, function (theme) { return (React.createElement(StyledPagingTable, __assign({ data: data || [], columns: responsiveColumns(size, columns), theme: theme }, newProps))); })); }));\r\n};\r\nPagingTable.defaultProps = {\r\n defaultPageSize: 20,\r\n filterable: false,\r\n loading: false,\r\n manual: false,\r\n resizable: true,\r\n showPagination: true,\r\n sortable: true,\r\n};\n\n/**\r\n * A Select field with form validation
\r\n */\r\nvar SelectField = function (props) { return (React.createElement(WithFormField, __assign({}, props), function (_a) {\r\n var options = _a.options, rest = __rest(_a, [\"options\"]);\r\n return (React.createElement(Select, __assign({ options: options }, rest)));\r\n})); };\n\n/** Collapsible side bar component\r\n * ```$ npm install grommet-controls\r\n * import { Sidebar } from 'grommet-controls';\r\n * \r\n ...\r\n * \r\n * ```\r\n */\r\nvar Sidebar = function (_a) {\r\n var title = _a.title, width = _a.width, children = _a.children, collapsible = _a.collapsible, rest = __rest(_a, [\"title\", \"width\", \"children\", \"collapsible\"]);\r\n var _b = React.useState(undefined), collapsed = _b[0], setCollapsed = _b[1];\r\n var BtnToggle = function (_a) {\r\n var view = _a.view;\r\n return (collapsible ? React.createElement(Button, { icon: React.createElement(Menu, null), onClick: function () { return setCollapsed(view !== 'collapsed'); } }) : null);\r\n };\r\n return (React.createElement(ResponsiveContext.Consumer, null, function (size) { return ((collapsible && size === 'small' && collapsed === undefined) || collapsed === true ? (React.createElement(Box, { align: 'start' },\r\n React.createElement(BtnToggle, { view: 'collapsed' }))) : (React.createElement(Box, __assign({ width: width }, rest),\r\n React.createElement(Box, { pad: { bottom: 'small' }, gap: 'small', direction: 'row', align: 'center' },\r\n React.createElement(BtnToggle, { view: 'expanded' }),\r\n title && (React.createElement(Box, { flex: false, tag: 'header' }, typeof title === 'string'\r\n ? (React.createElement(Heading, { margin: 'none', level: 3 }, title))\r\n : title))),\r\n children))); }));\r\n};\r\nSidebar.defaultProps = {\r\n title: undefined,\r\n width: 'medium',\r\n collapsible: true,\r\n};\n\nvar disabledStyle = \"\\n opacity: 0.4;\\n cursor: default;\\n\";\r\nvar StyledIcon = styled.span(templateObject_1$c || (templateObject_1$c = __makeTemplateObject([\"\\n display: inline-block;\\n > * {\\n vertical-align: bottom;\\n }\\n \", \"\\n\"], [\"\\n display: inline-block;\\n > * {\\n vertical-align: bottom;\\n }\\n \", \"\\n\"])), function (props) { return !props.disabled && 'cursor: pointer;'; });\r\nvar StyledTag = styled(Box)(templateObject_2$5 || (templateObject_2$5 = __makeTemplateObject([\"\\n \", \"\\n \", \"\\n user-select: none;\\n \", \"\\n\"], [\"\\n \", \"\\n \", \"\\n user-select: none;\\n \", \"\\n\"])), function (props) { return backgroundStyle(props.background || 'brand', props.theme); }, function (props) { return props.onClick && 'cursor: pointer;'; }, function (props) { return props.disabled && disabledStyle; });\r\nvar templateObject_1$c, templateObject_2$5;\n\n/**\r\n * A tag control with a label and icon
\r\n * `import { Tag } from 'grommet-controls';`
\r\n * ``
\r\n */\r\nvar Tag = React.forwardRef(function (_a, ref) {\r\n var disabled = _a.disabled, label = _a.label, a11yTitle = _a.a11yTitle, reverse = _a.reverse, background = _a.background, onClick = _a.onClick, onChange = _a.onChange, icon = _a.icon, color = _a.color, focusable = _a.focusable, round = _a.round, size = _a.size, truncate = _a.truncate, rest = __rest(_a, [\"disabled\", \"label\", \"a11yTitle\", \"reverse\", \"background\", \"onClick\", \"onChange\", \"icon\", \"color\", \"focusable\", \"round\", \"size\", \"truncate\"]);\r\n var clickTag = function (e) {\r\n if (!disabled && onClick) {\r\n onClick(e);\r\n }\r\n e.preventDefault();\r\n e.stopPropagation();\r\n };\r\n var toggleTag = function (e) {\r\n if (!disabled && onChange) {\r\n e.preventDefault();\r\n e.stopPropagation();\r\n onChange(e);\r\n }\r\n };\r\n var tagRound = round;\r\n var canFocus = focusable && !disabled && !!(onClick || onChange);\r\n return (React.createElement(Keyboard, { onEnter: clickTag, onSpace: toggleTag },\r\n React.createElement(ThemeContext.Consumer, null, function (theme) {\r\n var closeIcon;\r\n if (icon || onChange) {\r\n closeIcon = (React.createElement(StyledIcon, { theme: theme, disabled: disabled, onClick: onChange }, icon || React.createElement(FormClose, { theme: theme })));\r\n }\r\n return (React.createElement(StyledTag, __assign({ ref: ref, direction: reverse ? 'row-reverse' : 'row', justify: 'between', align: 'center', a11yTitle: a11yTitle, round: tagRound, onClick: onClick && clickTag, role: 'checkbox', \"aria-checked\": true, tabIndex: canFocus ? 0 : undefined, background: background, disabled: disabled, theme: theme }, rest),\r\n reverse && closeIcon,\r\n React.isValidElement(label) ? label : (React.createElement(Text, { color: color, size: size, truncate: truncate }, label && label.toString())),\r\n !reverse && closeIcon));\r\n })));\r\n});\r\nTag.defaultProps = {\r\n label: 'Text',\r\n pad: { horizontal: 'xsmall' },\r\n focusable: true,\r\n};\n\nvar TagsSelect = function (props) {\r\n var _a = props || { tagProps: {} }, tagProps = _a.tagProps, rest = __rest(_a, [\"tagProps\"]);\r\n return function (_a) {\r\n var placeholder = _a.placeholder, value = _a.value, onChange = _a.onChange;\r\n return (React.createElement(Tags, __assign({ focusable: false, placeholder: placeholder, value: value, onChange: onChange, tagProps: __assign(__assign({}, tagProps), { onClick: function (e) { return e.stopPropagation(); } }) }, rest)));\r\n };\r\n};\r\n/**\r\n * A list of tags that can be removed\r\n * `import { Tags } from 'grommet-controls';`\r\n * ``\r\n */\r\nvar Tags = /** @class */ (function (_super) {\r\n __extends(Tags, _super);\r\n function Tags() {\r\n var _this = _super !== null && _super.apply(this, arguments) || this;\r\n _this.state = {\r\n selectedTagIndex: -1,\r\n };\r\n _this.tagRefs = [];\r\n _this.elementRef = React.createRef();\r\n _this.selectTag = function (selected) {\r\n var _a = _this.props, onChange = _a.onChange, value = _a.value;\r\n if (onChange) {\r\n var tags = selected;\r\n if (Array.isArray(value)) {\r\n var index = value.indexOf(tags);\r\n if (index !== -1) {\r\n tags = value.filter(function (item) { return item !== selected; });\r\n }\r\n else {\r\n tags = __spreadArrays(value, [tags]);\r\n }\r\n }\r\n else {\r\n tags = [tags];\r\n }\r\n onChange({ target: findDOMNode(_this.elementRef.current), option: selected, value: tags });\r\n }\r\n };\r\n _this.onNextTag = function (event) {\r\n var value = _this.props.value;\r\n var selectedTagIndex = _this.state.selectedTagIndex;\r\n event.preventDefault();\r\n var index = selectedTagIndex + 1;\r\n if (index >= value.length) {\r\n index = 0;\r\n }\r\n _this.focusTag(index);\r\n };\r\n _this.onPreviousTag = function (event) {\r\n var selectedTagIndex = _this.state.selectedTagIndex;\r\n var value = _this.props.value;\r\n event.preventDefault();\r\n var index = selectedTagIndex - 1;\r\n if (index < 0) {\r\n index = value.length - 1;\r\n }\r\n _this.focusTag(index);\r\n };\r\n _this.onSelectTag = function (event) {\r\n var value = _this.props.value;\r\n var selectedTagIndex = _this.state.selectedTagIndex;\r\n if (selectedTagIndex >= 0 && selectedTagIndex < value.length) {\r\n event.preventDefault(); // prevent submitting forms\r\n event.stopPropagation();\r\n _this.selectTag(value[selectedTagIndex]);\r\n }\r\n };\r\n _this.onCloseClick = function (e, tag) {\r\n e.stopPropagation();\r\n _this.selectTag(tag);\r\n };\r\n return _this;\r\n }\r\n Tags.prototype.focusTag = function (index) {\r\n if (index >= 0 && index < this.tagRefs.length) {\r\n var tagElement = findDOMNode(this.tagRefs[index].current);\r\n if (tagElement && typeof tagElement.focus === 'function') {\r\n tagElement.focus();\r\n }\r\n this.setState({ selectedTagIndex: index });\r\n }\r\n };\r\n Tags.prototype.render = function () {\r\n var _this = this;\r\n var _a = this.props, placeholder = _a.placeholder, children = _a.children, value = _a.value, onChange = _a.onChange, focusable = _a.focusable, onClick = _a.onClick, direction = _a.direction, icon = _a.icon, tagProps = _a.tagProps, rest = __rest(_a, [\"placeholder\", \"children\", \"value\", \"onChange\", \"focusable\", \"onClick\", \"direction\", \"icon\", \"tagProps\"]);\r\n var noValues;\r\n if ((!value || (Array.isArray(value) && value.length === 0))) {\r\n noValues = React.isValidElement(placeholder) ? placeholder : (\r\n // placeholder. minimum height of icon to keep size\r\n React.createElement(Text, { color: 'placeholder', style: { minHeight: '24px' } }, placeholder || 'No selection'));\r\n }\r\n var values;\r\n if (Array.isArray(value)) {\r\n values = value;\r\n }\r\n else {\r\n values = value ? [value] : [];\r\n }\r\n return (React.createElement(Keyboard, { onEnter: this.onSelectTag, onSpace: this.onSelectTag, onLeft: this.onPreviousTag, onRight: this.onNextTag },\r\n React.createElement(Box, __assign({ tabIndex: focusable ? 0 : undefined, ref: this.elementRef, direction: direction, overflow: 'auto', style: { minWidth: 'auto' } }, rest), noValues || values.map(function (tag, index) {\r\n if (children) {\r\n return children(tag, index, value);\r\n }\r\n if (!_this.tagRefs[index]) {\r\n _this.tagRefs[index] = React.createRef();\r\n }\r\n return (React.createElement(Tag, __assign({ key: \"tag_\" + tag + \"_\" + index, ariaChecked: true, a11yTitle: \"Remove \" + tag.toString(), label: typeof tag !== 'object' ? tag.toString() : undefined, ref: _this.tagRefs[index], onClick: onClick ? function (e) { return onClick(e, tag); } : undefined, onChange: onChange ? function (e) { return _this.onCloseClick(e, tag); } : undefined, icon: icon }, (typeof tag === 'object' ? __assign(__assign({}, tagProps), tag) : tagProps))));\r\n }))));\r\n };\r\n Tags.defaultProps = {\r\n pad: 'small',\r\n focusable: true,\r\n margin: { horizontal: 'xsmall', vertical: 'small' },\r\n value: [],\r\n gap: 'xsmall',\r\n direction: 'row-responsive',\r\n icon: React.createElement(FormClose, null),\r\n };\r\n return Tags;\r\n}(Component));\n\n/**\r\n * A TextArea field with form validation
\r\n */\r\nvar TextAreaField = function (props) { return (React.createElement(WithFormField, __assign({}, props), function (childProps) { return React.createElement(TextArea, __assign({}, childProps)); })); };\n\n/**\r\n * A TextInput field with form validation
\r\n */\r\nvar TextInputField = function (props) { return (React.createElement(WithFormField, __assign({}, props), function (childProps) { return React.createElement(TextInput, __assign({}, childProps)); })); };\n\nvar aqua$1 = '#00ffff';\r\nvar azure = '#f0ffff';\r\nvar beige = '#f5f5dc';\r\nvar black$1 = '#000000';\r\nvar blue$2 = '#0000ff';\r\nvar brown$1 = '#a52a2a';\r\nvar cyan$1 = '#00ffff';\r\nvar darkblue = '#00008b';\r\nvar darkcyan = '#008b8b';\r\nvar darkgrey = '#a9a9a9';\r\nvar darkgreen = '#006400';\r\nvar darkkhaki = '#bdb76b';\r\nvar darkmagenta = '#8b008b';\r\nvar darkolivegreen = '#556b2f';\r\nvar darkorange = '#ff8c00';\r\nvar darkorchid = '#9932cc';\r\nvar darkred = '#8b0000';\r\nvar darksalmon = '#e9967a';\r\nvar darkviolet = '#9400d3';\r\nvar fuchsia$1 = '#ff00ff';\r\nvar gold = '#ffd700';\r\nvar green$2 = '#008000';\r\nvar indigo$1 = '#4b0082';\r\nvar khaki = '#f0e68c';\r\nvar lightblue = '#add8e6';\r\nvar lightcyan = '#e0ffff';\r\nvar lightgreen = '#90ee90';\r\nvar lightgrey = '#d3d3d3';\r\nvar lightpink = '#ffb6c1';\r\nvar lightyellow = '#ffffe0';\r\nvar lime$2 = '#00ff00';\r\nvar magenta = '#ff00ff';\r\nvar maroon$1 = '#800000';\r\nvar navy$1 = '#000080';\r\nvar olive$1 = '#808000';\r\nvar orange$1 = '#ffa500';\r\nvar pink$1 = '#ffc0cb';\r\nvar purple$2 = '#800080';\r\nvar violet = '#800080';\r\nvar red$1 = '#ff0000';\r\nvar silver$1 = '#c0c0c0';\r\nvar white$1 = '#ffffff';\r\nvar yellow$2 = '#ffff00';\r\nvar uiColors = {\r\n aqua: aqua$1,\r\n azure: azure,\r\n beige: beige,\r\n black: black$1,\r\n blue: blue$2,\r\n brown: brown$1,\r\n cyan: cyan$1,\r\n darkblue: darkblue,\r\n darkcyan: darkcyan,\r\n darkgrey: darkgrey,\r\n darkgreen: darkgreen,\r\n darkkhaki: darkkhaki,\r\n darkmagenta: darkmagenta,\r\n darkolivegreen: darkolivegreen,\r\n darkorange: darkorange,\r\n darkorchid: darkorchid,\r\n darkred: darkred,\r\n darksalmon: darksalmon,\r\n darkviolet: darkviolet,\r\n fuchsia: fuchsia$1,\r\n gold: gold,\r\n green: green$2,\r\n indigo: indigo$1,\r\n khaki: khaki,\r\n lightblue: lightblue,\r\n lightcyan: lightcyan,\r\n lightgreen: lightgreen,\r\n lightgrey: lightgrey,\r\n lightpink: lightpink,\r\n lightyellow: lightyellow,\r\n lime: lime$2,\r\n magenta: magenta,\r\n maroon: maroon$1,\r\n navy: navy$1,\r\n olive: olive$1,\r\n orange: orange$1,\r\n pink: pink$1,\r\n purple: purple$2,\r\n violet: violet,\r\n red: red$1,\r\n silver: silver$1,\r\n white: white$1,\r\n yellow: yellow$2,\r\n};\n\nvar isExisty = function (value) { return (value !== null && value !== undefined); };\r\nvar isEmpty = function (value) { return (value === ''); };\r\nvar isDefaultRequiredValue = function (_values, value) { return (value === undefined || value === ''); };\r\nvar required = function (_values, value) { return (isExisty(value) && !isEmpty(value)); };\r\nvar matchRegexp = function (_values, value, regexp) { return (!isExisty(value) || isEmpty(value) || regexp.test(value)); };\r\nvar notEmptyString = function (_values, value) { return (!isEmpty(value)); };\r\nvar isEmail = function (values, value) { return (matchRegexp(values, value, /^[A-Z0-9._%+-]+@[A-Z0-9.-]+\\.[A-Z]{2,4}$/i)); };\r\nvar isUrl = function (values, value) { return (matchRegexp(values, value, /^(https?|s?ftp):\\/\\/(((([a-z]|\\d|-|\\.|_|~|[\\u00A0-\\uD7FF\\uF900-\\uFDCF\\uFDF0-\\uFFEF])|(%[\\da-f]{2})|[!&',;=]|:)*@)?(((\\d|[1-9]\\d|1\\d\\d|2[0-4]\\d|25[0-5])\\.(\\d|[1-9]\\d|1\\d\\d|2[0-4]\\d|25[0-5])\\.(\\d|[1-9]\\d|1\\d\\d|2[0-4]\\d|25[0-5])\\.(\\d|[1-9]\\d|1\\d\\d|2[0-4]\\d|25[0-5]))|((([a-z]|\\d|[\\u00A0-\\uD7FF\\uF900-\\uFDCF\\uFDF0-\\uFFEF])|(([a-z]|\\d|[\\u00A0-\\uD7FF\\uF900-\\uFDCF\\uFDF0-\\uFFEF])([a-z]|\\d|-|\\.|_|~|[\\u00A0-\\uD7FF\\uF900-\\uFDCF\\uFDF0-\\uFFEF])*([a-z]|\\d|[\\u00A0-\\uD7FF\\uF900-\\uFDCF\\uFDF0-\\uFFEF])))\\.)+(([a-z]|[\\u00A0-\\uD7FF\\uF900-\\uFDCF\\uFDF0-\\uFFEF])|(([a-z]|[\\u00A0-\\uD7FF\\uF900-\\uFDCF\\uFDF0-\\uFFEF])([a-z]|\\d|-|\\.|_|~|[\\u00A0-\\uD7FF\\uF900-\\uFDCF\\uFDF0-\\uFFEF])*([a-z]|[\\u00A0-\\uD7FF\\uF900-\\uFDCF\\uFDF0-\\uFFEF])))\\.?)(:\\d*)?)(\\/((([a-z]|\\d|-|\\.|_|~|[\\u00A0-\\uD7FF\\uF900-\\uFDCF\\uFDF0-\\uFFEF])|(%[\\da-f]{2})|[!&',;=]|:|@)+(\\/(([a-z]|\\d|-|\\.|_|~|[\\u00A0-\\uD7FF\\uF900-\\uFDCF\\uFDF0-\\uFFEF])|(%[\\da-f]{2})|[!&',;=]|:|@)*)*)?)?(\\?((([a-z]|\\d|-|\\.|_|~|[\\u00A0-\\uD7FF\\uF900-\\uFDCF\\uFDF0-\\uFFEF])|(%[\\da-f]{2})|[!&',;=]|:|@)|[\\uE000-\\uF8FF]|\\/|\\?)*)?(#((([a-z]|\\d|-|\\.|_|~|[\\u00A0-\\uD7FF\\uF900-\\uFDCF\\uFDF0-\\uFFEF])|(%[\\da-f]{2})|[!&',;=]|:|@)|\\/|\\?)*)?$/i)); };\r\nvar isTrue = function (_values, value) { return (value === true); };\r\nvar isFalse = function (_values, value) { return (value === false); };\r\nvar isNumeric = function (values, value) { return (typeof value === 'number' ? true : matchRegexp(values, value, /^[-+]?(?:\\d*[.])?\\d+$/)); };\r\nvar isAlpha = function (values, value) { return (matchRegexp(values, value, /^[A-Z]+$/i)); };\r\nvar isAlphanumeric = function (values, value) { return (matchRegexp(values, value, /^[0-9A-Z]+$/i)); };\r\nvar isInt = function (values, value) { return (matchRegexp(values, value, /^(?:[-+]?(?:0|[1-9]\\d*))$/)); };\r\nvar isFloat = function (values, value) { return (matchRegexp(values, value, /^(?:[-+]?(?:\\d+))?(?:\\.\\d*)?(?:[eE]?(?:\\d+))?$/)); };\r\nvar isWords = function (values, value) { return (matchRegexp(values, value, /^[A-Z\\s]+$/i)); };\r\nvar startsWith = function (str) { return function (_values, value) { return (!isEmpty(value) && value.startsWith(str)); }; };\r\nvar isLength = function (length) { return (function (_values, value) { return !isExisty(value) || isEmpty(value) || value.length === length; }); };\r\nvar equals = function (eql) { return (function (_values, value) { return !isExisty(value) || isEmpty(value) || value === eql; }); };\r\nvar equalsField = function (field) { return (function (values, value) { return value === values[field]; }); };\r\nvar maxLength = function (length) { return (function (_values, value) { return !isExisty(value) || value.length <= length; }); };\r\nvar minLength = function (length) { return (function (_values, value) { return !isExisty(value) || isEmpty(value) || value.length >= length; }); };\r\nvar isBigger = function (number) { return (function (_values, value) { return !isExisty(value) || value > number; }); };\r\nvar isSmaller = function (number) { return (function (_values, value) { return !isExisty(value) || value < number; }); };\r\nvar isBiggerOrEqual = function (number) { return (function (_values, value) { return !isExisty(value) || value >= number; }); };\r\nvar isSmallerOrEqual = function (number) { return (function (_values, value) { return !isExisty(value) || value <= number; }); };\r\nvar invalidFieldMessage = function (label) { return (label + \" is not valid\"); };\r\nvar requiredFieldMessage = function (label) { return (label + \" is required\"); };\r\nvar canNotBeEmptyFieldMessage = function (label) { return (label + \" can not be empty\"); };\r\nvar ruleWrapper = function (rule, customMessage, defaultMessage) { return function (dataRow, value, index) {\r\n if (rule(dataRow, value, index)) {\r\n return undefined;\r\n }\r\n return customMessage || defaultMessage;\r\n}; };\r\nvar validators = {\r\n required: function (message) { return ruleWrapper(required, message, requiredFieldMessage); },\r\n email: function (message) { return ruleWrapper(isEmail, message, invalidFieldMessage); },\r\n url: function (message) { return ruleWrapper(isUrl, message, invalidFieldMessage); },\r\n defaultRequired: function (message) { return (ruleWrapper(isDefaultRequiredValue, message, requiredFieldMessage)); },\r\n notEmptyString: function (message) { return (ruleWrapper(notEmptyString, message, canNotBeEmptyFieldMessage)); },\r\n numeric: function (message) { return (ruleWrapper(isNumeric, message, function (label) { return label + \" must be a numeric value\"; })); },\r\n alpha: function (message) { return (ruleWrapper(isAlpha, message, function (label) { return label + \" must be alphabetic\"; })); },\r\n alphaNumeric: function (message) { return (ruleWrapper(isAlphanumeric, message, function (label) { return label + \" must be alphanumeric\"; })); },\r\n int: function (message) { return (ruleWrapper(isInt, message, function (label) { return label + \" must be an integer\"; })); },\r\n float: function (message) { return (ruleWrapper(isFloat, message, function (label) { return label + \" must be a number\"; })); },\r\n words: function (message) { return (ruleWrapper(isWords, message, function (label) { return label + \" must be a collection of words\"; })); },\r\n length: function (length, message) { return (ruleWrapper(isLength(length), message, function (label) { return label + \" must be \" + length + \" characters long\"; })); },\r\n minLength: function (length, message) { return (ruleWrapper(minLength(length), message, function (label) { return label + \" must be at least \" + length + \" characters long\"; })); },\r\n maxLength: function (length, message) { return (ruleWrapper(maxLength(length), message, function (label) { return label + \" must be up to \" + length + \" characters long\"; })); },\r\n equals: function (value, message) { return (ruleWrapper(equals(value), message, function (label) { return label + \" must be equal to \" + value; })); },\r\n equalsField: function (field, fieldLabel, message) { return (ruleWrapper(equalsField(field), message, function (label) { return label + \" does not match \" + (fieldLabel || field); })); },\r\n True: function (message) { return (ruleWrapper(isTrue, message, function (label) { return label + \" must be True\"; })); },\r\n False: function (message) { return (ruleWrapper(isFalse, message, function (label) { return label + \" must be False\"; })); },\r\n bigger: function (value, message) { return (ruleWrapper(isBigger(value), message, function (label) { return label + \" must be bigger than \" + value; })); },\r\n biggerOrEqual: function (value, message) { return (ruleWrapper(isBiggerOrEqual(value), message, function (label) { return label + \" must be bigger or eqial to \" + value; })); },\r\n smaller: function (value, message) { return (ruleWrapper(isSmaller(value), message, function (label) { return label + \" must be smaller than \" + value; })); },\r\n smallerOrEqual: function (value, message) { return (ruleWrapper(isSmallerOrEqual(value), message, function (label) { return label + \" must be smaller or equal to \" + value; })); },\r\n startsWith: function (value, message) { return (ruleWrapper(startsWith(value), message, function (label) { return label + \" must start with \" + value; })); },\r\n};\n\nvar LABEL_SIZE_MAP = {\r\n xsmall: 'xsmall',\r\n small: 'xsmall',\r\n medium: 'xsmall',\r\n large: 'small',\r\n xlarge: 'medium',\r\n xxlarge: 'large',\r\n};\r\n/**\r\n * A single value visualization with a label
\r\n * `import { Value } from 'grommet-controls';`
\r\n * ``
\r\n */\r\nvar Value = function (_a) {\r\n var label = _a.label, value = _a.value, size = _a.size, weight = _a.weight, gap = _a.gap, units = _a.units, color = _a.color;\r\n return (React.createElement(Box, { gap: gap },\r\n React.isValidElement(value) ? value : (React.createElement(Text, { size: size, weight: weight, color: color }, \"\" + (value !== undefined ? value : '-') + (units ? \" \" + units : ''))),\r\n React.createElement(Box, { alignSelf: 'end' },\r\n React.createElement(Text, { size: LABEL_SIZE_MAP[size], color: color }, label))));\r\n};\r\nValue.defaultProps = {\r\n label: undefined,\r\n value: undefined,\r\n weight: 'bold',\r\n gap: 'small',\r\n size: 'large',\r\n color: undefined,\r\n};\n\nvar isActive = function (active, item) { return (item.id === active.id || item.label === active.label); };\r\nvar hasActiveChidlren = function (active, item) {\r\n if (isActive(active, item)) {\r\n if (item.items && item.items.find(function (t) { return hasActiveChidlren(active, t); })) {\r\n return true;\r\n }\r\n }\r\n return false;\r\n};\r\nvar getExpandedItems = function (children, active) { return children\r\n .reduce(function (expandedItems, item) {\r\n var items = item.items, expanded = item.expanded, id = item.id, label = item.label;\r\n if (expanded || (active && hasActiveChidlren(active, item))) {\r\n expandedItems.push(id || label);\r\n }\r\n var childrenExpandedItems = [];\r\n if (items) {\r\n childrenExpandedItems = getExpandedItems(items, active);\r\n }\r\n return expandedItems.concat(childrenExpandedItems);\r\n}, []); };\r\nvar getCollapsibleItems = function (children) { return children\r\n .reduce(function (collapsibleItems, _a) {\r\n var items = _a.items, id = _a.id, label = _a.label;\r\n var childrenCollapsibleItems = [];\r\n if (items) {\r\n collapsibleItems.push(id || label);\r\n childrenCollapsibleItems = getCollapsibleItems(items);\r\n }\r\n return collapsibleItems.concat(childrenCollapsibleItems);\r\n}, []); };\r\nvar getFlatChildrenIds = function (children) { return children\r\n .reduce(function (flatChildren, item) {\r\n flatChildren.push(item.id || item.label);\r\n if (item.items) {\r\n // eslint-disable-next-line no-param-reassign\r\n flatChildren = flatChildren.concat(getFlatChildrenIds(item.items));\r\n }\r\n return flatChildren;\r\n}, []); };\r\nvar getChildrenById = function (children, id) {\r\n var items;\r\n children.some(function (item) {\r\n if (item.id === id || item.label === id) {\r\n (items = item.items);\r\n return true;\r\n }\r\n if (item.items) {\r\n items = getChildrenById(item.items, id);\r\n if (items) {\r\n return true;\r\n }\r\n }\r\n return false;\r\n });\r\n return items;\r\n};\r\nvar filterItems = function (items, search) {\r\n if (search && search.length) {\r\n var searchLC_1 = search.toLowerCase();\r\n return items.map(function (item) { return Object.assign({}, item); }).filter(function (item) {\r\n var children = item.items, label = item.label;\r\n if (typeof label === 'string' && label.toLowerCase().indexOf(searchLC_1) >= 0) {\r\n return true;\r\n }\r\n if (children) {\r\n var childItems = filterItems(children, search);\r\n // eslint-disable-next-line no-param-reassign\r\n item.items = childItems;\r\n if (childItems.length) {\r\n return true;\r\n }\r\n }\r\n return false;\r\n });\r\n }\r\n return items;\r\n};\r\nvar compareItems = function (items, nextItems) {\r\n if (!items && !nextItems) {\r\n return true;\r\n }\r\n if (!items && nextItems || items && !nextItems) {\r\n return false;\r\n }\r\n if (items.length !== nextItems.length) {\r\n return false;\r\n }\r\n for (var i = 0; i < items.length; i += 1) {\r\n if (items[i].expanded !== nextItems[i].expanded\r\n || items[i].href !== nextItems[i].href\r\n || items[i].icon !== nextItems[i].icon\r\n || items[i].label !== nextItems[i].label\r\n || items[i].onClick !== nextItems[i].onClick\r\n || items[i].widget !== nextItems[i].widget\r\n || !compareItems(items[i].items, nextItems[i].items)) {\r\n return false;\r\n }\r\n }\r\n return true;\r\n};\r\n/** Hierarchical collapsible menu\r\n* ```$ npm install grommet-controls\\n\r\n* import { VerticalMenu } from 'grommet-controls';\\n\r\n* \r\n*```\r\n*/\r\nvar VerticalMenu = /** @class */ (function (_super) {\r\n __extends(VerticalMenu, _super);\r\n function VerticalMenu() {\r\n var _this = _super !== null && _super.apply(this, arguments) || this;\r\n _this.state = { expandedItems: [] };\r\n _this.onMenuChange = function (id, expanded) {\r\n var _a = _this.state, expandedItems = _a.expandedItems, filteredItems = _a.filteredItems;\r\n var newExpandedItems = __spreadArrays(expandedItems);\r\n if (expanded) {\r\n var toBeCollapsed_1 = __spreadArrays([\r\n id\r\n ], getFlatChildrenIds(getChildrenById(filteredItems, id)));\r\n newExpandedItems = newExpandedItems.filter(function (item) { return toBeCollapsed_1.indexOf(item) < 0; });\r\n }\r\n else {\r\n newExpandedItems.push(id);\r\n }\r\n _this.setState({\r\n expandedItems: newExpandedItems,\r\n });\r\n };\r\n _this.renderItem = function (item, level) {\r\n if (level === void 0) { level = 1; }\r\n var _a = _this.props, activeItem = _a.activeItem, onSelect = _a.onSelect, buttonClass = _a.buttonClass;\r\n var expandedItems = _this.state.expandedItems;\r\n var items = item.items, id = item.id, label = item.label, widget = item.widget, icon = item.icon, rest = __rest(item, [\"items\", \"id\", \"label\", \"widget\", \"icon\"]);\r\n var itemId = id || label;\r\n var isExpanded = expandedItems.includes(itemId);\r\n var ButtonClass = (items ? Button : buttonClass) || Button;\r\n var itemKey = \"item_\" + itemId + \"_\" + level;\r\n var background;\r\n if (activeItem && activeItem.id === id) {\r\n background = {\r\n color: 'active',\r\n opacity: 'strong',\r\n };\r\n }\r\n var content = (React.createElement(Box, { background: background },\r\n React.createElement(ButtonClass, __assign({ onClick: (!rest.route && !rest.path) ? function () { return (items ? _this.onMenuChange(itemId, isExpanded) : (onSelect && onSelect(item))); } : undefined, hoverIndicator: { color: 'active' } }, rest),\r\n React.createElement(Box, { direction: 'row', align: 'center', pad: 'small', style: {\r\n marginLeft: items ? 12 * level + \"px\" : 16 * level + \"px\",\r\n } },\r\n items\r\n && (isExpanded ? React.createElement(FormDown, null) : React.createElement(FormNext, null)),\r\n React.createElement(Box, { direction: 'row', justify: 'between', fill: 'horizontal', align: 'center' },\r\n React.createElement(Box, { direction: 'row', align: 'center', gap: 'small' },\r\n icon,\r\n typeof label === 'string' ? (React.createElement(Text, null, items ? React.createElement(\"strong\", null, label) : label)) : label),\r\n widget)))));\r\n return (React.createElement(Box, { key: itemKey },\r\n items ? (React.createElement(Keyboard, { onDown: function () { return _this.onMenuChange(itemId, false); }, onRight: function () { return _this.onMenuChange(itemId, false); }, onUp: function () { return _this.onMenuChange(itemId, true); }, onLeft: function () { return _this.onMenuChange(itemId, true); } }, content)) : (content),\r\n items\r\n && (isExpanded && items.map(function (child) { return _this.renderItem(child, level + 1); }))));\r\n };\r\n return _this;\r\n }\r\n VerticalMenu.getDerivedStateFromProps = function (nextProps, prevState) {\r\n if (prevState === void 0) { prevState = {}; }\r\n var items = nextProps.items, expandAll = nextProps.expandAll, activeItem = nextProps.activeItem, search = nextProps.search;\r\n var originalExpandAll = prevState.originalExpandAll, stateSearch = prevState.search, _a = prevState.items, stateItems = _a === void 0 ? [] : _a;\r\n if (items !== stateItems // when instance are not the same we do not need to do a full compare.\r\n || !compareItems(items, stateItems)\r\n || expandAll !== originalExpandAll\r\n || search !== stateSearch) {\r\n var filteredItems = filterItems(items, search);\r\n var collapsibleItems = getCollapsibleItems(filteredItems);\r\n var expandedItems = void 0;\r\n if (expandAll || (search && search.length)) {\r\n expandedItems = collapsibleItems;\r\n }\r\n else {\r\n expandedItems = getExpandedItems(filteredItems, activeItem);\r\n }\r\n var allExpanded = typeof expandAll !== 'undefined'\r\n ? expandAll\r\n : collapsibleItems.length === expandedItems.length;\r\n return {\r\n expandedItems: expandedItems,\r\n items: items,\r\n filteredItems: filteredItems,\r\n search: search,\r\n collapsibleItems: collapsibleItems,\r\n allExpanded: allExpanded,\r\n expandAll: expandAll,\r\n originalExpandAll: expandAll,\r\n };\r\n }\r\n return null;\r\n };\r\n VerticalMenu.prototype.render = function () {\r\n var _this = this;\r\n var filteredItems = this.state.filteredItems;\r\n return (React.createElement(React.Fragment, null, filteredItems && filteredItems.map(function (item) { return _this.renderItem(item, 1); })));\r\n };\r\n return VerticalMenu;\r\n}(Component));\n\nvar colorFromIndex = function (index) {\r\n var idx = ((index) % 9) + 1;\r\n return idx <= 4 ? \"accent-\" + idx : \"neutral-\" + (idx - 4);\r\n};\r\nvar colorForName = function (name, theme) { return theme.global.colors[name] || name; };\n\nvar base = {\r\n box: {\r\n responsiveBreakpoint: 'small',\r\n },\r\n heading: {\r\n responsiveBreakpoint: 'small',\r\n },\r\n layer: {\r\n responsiveBreakpoint: 'small',\r\n },\r\n};\n\n/* eslint-disable no-param-reassign */\r\nvar colorsFromArray = (function (colors, array, prefix) { return array.forEach(function (color, index) {\r\n colors[prefix + \"-\" + (index + 1)] = color;\r\n}); });\n\nvar brandColor = '#000000';\r\nvar accentColors = ['#FF4081', '#4eadeb', '#56cf98', '#765bba'];\r\nvar neutralColors = ['#a4c400', '#006766', '#f3741c', '#8F6C53', '#e82121'];\r\nvar backgroundColor = '#5e5e5e';\r\nvar colors = {\r\n 'active': {\r\n light: '#3a82b1',\r\n dark: '#52b7f9',\r\n },\r\n 'background': '#444444',\r\n 'brand': brandColor,\r\n 'focus': accentColors[0],\r\n 'control': {\r\n 'dark': '#f8f8f8',\r\n 'light': '#444444',\r\n },\r\n};\r\ncolorsFromArray(colors, accentColors, 'accent');\r\ncolorsFromArray(colors, neutralColors, 'neutral');\r\nvar black$2 = deepFreeze(deepMerge$1(base, {\r\n global: {\r\n colors: colors,\r\n drop: {\r\n background: '#444444',\r\n },\r\n font: {\r\n family: \"'Inconsolata', monospace\",\r\n size: '16px',\r\n },\r\n hover: {\r\n background: {\r\n light: '#dddddd',\r\n dark: '#222222',\r\n },\r\n color: {\r\n light: '#333333',\r\n dark: '#ffffff',\r\n },\r\n },\r\n control: {\r\n border: {\r\n radius: '0px',\r\n },\r\n },\r\n },\r\n icon: {\r\n colors: colors,\r\n },\r\n anchor: {\r\n color: {\r\n light: '#0a466e',\r\n dark: '#4eadeb',\r\n },\r\n },\r\n button: {\r\n border: {\r\n radius: '0px',\r\n },\r\n primary: {\r\n color: {\r\n light: '#0a466e',\r\n dark: '#4eadeb',\r\n },\r\n },\r\n },\r\n checkBox: {\r\n check: {\r\n radius: '0px',\r\n },\r\n toggle: {\r\n radius: '0px',\r\n },\r\n },\r\n layer: {\r\n background: backgroundColor,\r\n },\r\n rangeInput: {\r\n track: {\r\n color: {\r\n 'dark': '#3a82b1',\r\n 'light': '#52b7f9',\r\n },\r\n },\r\n },\r\n}));\n\nvar colors$1 = {\r\n 'background': '#ffffff',\r\n 'brand': '#ffffff',\r\n 'active': {\r\n light: '#57b457',\r\n dark: '#52b7f9',\r\n },\r\n 'control': {\r\n dark: '#52b7f9',\r\n light: '#4a984a',\r\n },\r\n 'focus': '#5ec660',\r\n 'accent-1': '#367bd5',\r\n 'accent-2': '#5ec660',\r\n 'accent-3': '#d4293d',\r\n 'accent-4': '#9C27B0',\r\n 'neutral-1': '#795548',\r\n 'neutral-2': '#CDDC39',\r\n 'neutral-3': '#607D8B',\r\n 'neutral-4': '#9cb6d7',\r\n 'neutral-5': '#FF9800',\r\n};\r\nvar baseSpacing = 16;\r\nvar light = deepFreeze(deepMerge$1(base, {\r\n global: {\r\n breakpoints: {\r\n small: {\r\n size: {\r\n none: '0',\r\n hair: '1px',\r\n xxsmall: '2px',\r\n xsmall: baseSpacing / 8 + \"px\",\r\n small: baseSpacing / 4 + \"px\",\r\n medium: baseSpacing / 2 + \"px\",\r\n large: baseSpacing + \"px\",\r\n xlarge: baseSpacing * 2 + \"px\",\r\n },\r\n },\r\n },\r\n colors: colors$1,\r\n font: {\r\n family: \"'Montserrat', sans-serif;\",\r\n size: '14px',\r\n },\r\n edgeSize: {\r\n none: '0',\r\n hair: '1px',\r\n xxsmall: baseSpacing / 8 + \"px\",\r\n xsmall: baseSpacing / 4 + \"px\",\r\n small: baseSpacing / 2 + \"px\",\r\n medium: baseSpacing + \"px\",\r\n large: baseSpacing * 2 + \"px\",\r\n xlarge: baseSpacing * 4 + \"px\",\r\n },\r\n hover: {\r\n background: {\r\n light: '#c8c8c8',\r\n dark: '#333333',\r\n },\r\n color: {\r\n light: '#333333',\r\n dark: '#f8f8f8',\r\n },\r\n },\r\n selected: {\r\n background: '#635d60',\r\n color: '#f8f8f8',\r\n },\r\n },\r\n text: {\r\n xsmall: { size: '10px', height: 1.5 },\r\n small: { size: '12px', height: 1.43 },\r\n medium: { size: '14px', height: 1.375 },\r\n large: { size: '20px', height: 1.167 },\r\n xlarge: { size: '28px', height: 1.1875 },\r\n xxlarge: { size: '26px', height: 1.125 },\r\n },\r\n heading: {\r\n font: false,\r\n weight: 500,\r\n },\r\n icon: {\r\n size: {\r\n xsmall: '14px',\r\n },\r\n },\r\n button: {\r\n border: {\r\n radius: '1px',\r\n color: {\r\n dark: '#fbf9ff',\r\n light: '#28599e',\r\n },\r\n },\r\n // color: { dark: undefined, light: undefined }\r\n primary: {\r\n color: {\r\n dark: '#0093ff',\r\n light: '#316cbe',\r\n },\r\n },\r\n },\r\n anchor: {\r\n textDecoration: 'none',\r\n fontWeight: 600,\r\n color: {\r\n dark: '#f7efff',\r\n light: '#275596',\r\n },\r\n },\r\n checkBox: {\r\n border: {\r\n width: '2px',\r\n },\r\n check: {\r\n radius: '4px',\r\n thickness: '4px',\r\n },\r\n },\r\n rangeInput: {\r\n track: {\r\n color: {\r\n 'dark': '#3a82b1',\r\n 'light': '#52b7f9',\r\n },\r\n },\r\n },\r\n}));\n\n/* eslint-disable no-param-reassign */\r\nvar colorsFromObject = (function (colors, obj, prefix) {\r\n return Object.keys(obj).forEach(function (color) {\r\n colors[prefix + \"-\" + color] = obj[color];\r\n });\r\n});\n\nvar brandColor$1 = '#00ABD4';\r\nvar accentColors$1 = ['#2AD2C9', '#FFC107', '#9C27B0', '#673AB7'];\r\nvar neutralColors$1 = ['#795548', '#009688', '#8BC34A', '#CDDC39', '#FF9800'];\r\nvar statusColors = {\r\n critical: '#FF4081',\r\n error: '#F44336',\r\n warning: '#FFEB3B',\r\n ok: '#4CAF50',\r\n unknown: '#9E9E9E',\r\n disabled: '#9E9E9E',\r\n};\r\nvar focusColor = accentColors$1[0];\r\nvar colors$2 = {\r\n active: {\r\n light: '#f50057',\r\n dark: '#ff4081',\r\n },\r\n background: '#ffffff',\r\n brand: brandColor$1,\r\n focus: focusColor,\r\n control: {\r\n dark: '#ffffff',\r\n light: '#00ABD4',\r\n },\r\n};\r\ncolorsFromArray(colors$2, accentColors$1, 'accent');\r\ncolorsFromArray(colors$2, neutralColors$1, 'neutral');\r\ncolorsFromObject(colors$2, statusColors, 'status');\r\nvar materiallight = deepFreeze(deepMerge$1(base, {\r\n global: {\r\n colors: colors$2,\r\n drop: {\r\n background: '#f8f8f8',\r\n border: {\r\n width: '0px',\r\n radius: '0px',\r\n },\r\n },\r\n hover: {\r\n background: {\r\n light: '#d5f3ff',\r\n dark: '#5a5a5a',\r\n },\r\n text: {\r\n light: '#000000',\r\n dark: '#f8f8f8',\r\n },\r\n },\r\n focus: {\r\n border: {\r\n color: '#f50057',\r\n },\r\n },\r\n font: {\r\n family: '\"Roboto\", \"Helvetica\", \"Arial\", sans-serif',\r\n },\r\n control: {\r\n border: {\r\n radius: '0px',\r\n },\r\n },\r\n },\r\n button: {\r\n border: {\r\n radius: '0px',\r\n },\r\n primary: {\r\n color: {\r\n light: '#3f51b5',\r\n dark: '#7986cb',\r\n },\r\n },\r\n },\r\n checkBox: {\r\n check: {\r\n radius: '0px',\r\n },\r\n color: {\r\n light: brandColor$1,\r\n dark: '#a7ecff',\r\n },\r\n toggle: {\r\n color: {\r\n dark: '#bdbdbd',\r\n light: brandColor$1,\r\n },\r\n },\r\n },\r\n radioButton: {\r\n border: {\r\n color: {\r\n light: 'rgba(0, 98, 186, 0.5)',\r\n dark: 'rgba(255, 255, 255, 0.5)',\r\n },\r\n },\r\n },\r\n anchor: {\r\n color: {\r\n light: '#3f51b5',\r\n dark: '#7986cb',\r\n },\r\n },\r\n}));\n\nvar brandColor$2 = '#000000';\r\nvar backgroundColor$1 = '#444444';\r\nvar accentColors$2 = ['#2AD2C9', '#FFC107', '#9C27B0', '#673AB7'];\r\nvar neutralColors$2 = ['#795548', '#009688', '#8BC34A', '#CDDC39', '#FF9800'];\r\nvar statusColors$1 = {\r\n critical: '#FF4081',\r\n error: '#F44336',\r\n warning: '#FFEB3B',\r\n ok: '#4CAF50',\r\n unknown: '#9E9E9E',\r\n disabled: '#9E9E9E',\r\n};\r\nvar focusColor$1 = accentColors$2[0];\r\nvar colors$3 = {\r\n active: {\r\n light: '#f50057',\r\n dark: '#ff4081',\r\n },\r\n brand: brandColor$2,\r\n background: backgroundColor$1,\r\n focus: focusColor$1,\r\n control: {\r\n 'dark': '#f8f8f8',\r\n 'light': '#444444',\r\n },\r\n};\r\ncolorsFromArray(colors$3, accentColors$2, 'accent');\r\ncolorsFromArray(colors$3, neutralColors$2, 'neutral');\r\ncolorsFromObject(colors$3, statusColors$1, 'status');\r\nvar materialdark = deepFreeze(deepMerge$1(base, {\r\n global: {\r\n colors: colors$3,\r\n drop: {\r\n background: '#2a2a2a',\r\n },\r\n hover: {\r\n background: {\r\n light: '#dddddd',\r\n dark: '#222222',\r\n },\r\n text: {\r\n light: '#000000',\r\n dark: '#f8f8f8',\r\n },\r\n },\r\n focus: {\r\n border: {\r\n color: '#f50057',\r\n },\r\n },\r\n font: {\r\n family: '\"Roboto\", \"Helvetica\", \"Arial\", sans-serif',\r\n },\r\n control: {\r\n border: {\r\n radius: '0px',\r\n },\r\n },\r\n },\r\n button: {\r\n border: {\r\n radius: '0px',\r\n },\r\n primary: {\r\n color: {\r\n light: '#f50057',\r\n dark: '#ff4081',\r\n },\r\n },\r\n },\r\n checkBox: {\r\n check: {\r\n radius: '0px',\r\n },\r\n },\r\n layer: {\r\n background: backgroundColor$1,\r\n },\r\n anchor: {\r\n color: {\r\n light: '#f50057',\r\n dark: '#ff4081',\r\n },\r\n },\r\n}));\n\nvar brandColor$3 = '#0072c6';\r\nvar accentColors$3 = ['#fa6800', '#128023', '#0050ef', '#d80073'];\r\nvar neutralColors$3 = ['#a4c400', '#00aba9', '#BF5A15', '#8F6C53', '#9A1616'];\r\nvar colors$4 = {\r\n 'background': '#ffffff',\r\n 'brand': brandColor$3,\r\n 'control': {\r\n 'dark': '#f8f8f8',\r\n 'light': '#444444',\r\n },\r\n};\r\ncolorsFromArray(colors$4, accentColors$3, 'accent');\r\ncolorsFromArray(colors$4, neutralColors$3, 'neutral');\r\nvar metro = deepFreeze(deepMerge$1(base, {\r\n global: {\r\n colors: colors$4,\r\n drop: {\r\n background: '#005696',\r\n border: {\r\n width: '0px',\r\n radius: '0px',\r\n },\r\n },\r\n hover: {\r\n background: {\r\n light: '#a5cdff',\r\n dark: '#405063',\r\n },\r\n color: {\r\n light: '#333333',\r\n dark: '#cccccc',\r\n },\r\n },\r\n focus: {\r\n border: {\r\n color: {\r\n light: brandColor$3,\r\n dark: '#003967',\r\n },\r\n },\r\n },\r\n font: {\r\n family: '-apple-system, system-ui, BlinkMacSystemFont, \"Segoe UI\", \"Roboto\", \"Ubuntu\", \"Helvetica Neue\", sans-serif',\r\n },\r\n control: {\r\n border: {\r\n radius: '0px',\r\n },\r\n },\r\n },\r\n button: {\r\n border: {\r\n radius: '0px',\r\n },\r\n primary: {\r\n color: {\r\n light: brandColor$3,\r\n dark: 'accent-1',\r\n },\r\n },\r\n },\r\n anchor: {\r\n color: {\r\n light: '#0078D4',\r\n dark: '#ffffff',\r\n },\r\n },\r\n checkBox: {\r\n border: {\r\n color: {\r\n light: 'rgba(0, 98, 186, 0.5)',\r\n dark: 'rgba(255, 255, 255, 0.5)',\r\n },\r\n },\r\n check: {\r\n radius: '0px',\r\n },\r\n color: {\r\n light: brandColor$3,\r\n dark: '#a6cfff',\r\n },\r\n toggle: {\r\n color: {\r\n dark: '#bdbdbd',\r\n light: brandColor$3,\r\n },\r\n radius: '0px',\r\n },\r\n },\r\n layer: {\r\n backgroundColor: '#eef3fc',\r\n border: {\r\n radius: '0px',\r\n },\r\n },\r\n radioButton: {\r\n border: {\r\n color: {\r\n light: 'rgba(0, 98, 186, 0.5)',\r\n dark: 'rgba(255, 255, 255, 0.5)',\r\n },\r\n },\r\n },\r\n}));\n\nexport { Avatar, Card, CardActions, CardContent, CardTitle, CheckBoxField, ColorInput, ColorInputField, Colors, DateInput, DateInputField, DropInput, EmailInput, EmailInputField, Form, Header, IconButton, ImageStamp, MaskedInput, MaskedInputField, Notification, NumberInput, NumberInputField, PagingTable, PasswordInput, PasswordInputField, SelectField, Sidebar, Spinning, Tag, Tags, TagsSelect, TextAreaField, TextInputField, Value, VerticalMenu, WithFormField, base, basicColors, black$2 as black, colorForName, colorFromIndex, colorsFromArray, colorsFromObject, light, longDate, materialColors, materialdark, materiallight, metro, shortDate, smallDate, uiColors, validators };\n"],"sourceRoot":""}